# Russian translation of the Godot Engine class reference.
# Copyright (c) 2014-present Godot Engine contributors.
# Copyright (c) 2007-2014 Juan Linietsky, Ariel Manzur.
# This file is distributed under the same license as the Godot source code.
#
# Alex <Alex.Gorichev@protonmail.com>, 2020.
# Nikita <Kulacnikita@ya.ru>, 2020.
# Алексей Смирнов <tir74@mail.ru>, 2020, 2021, 2022, 2025.
# Chaosus89 <chaosus89@gmail.com>, 2020.
# John Smith <19georginos97@gmail.com>, 2020.
# NeoLan Qu <it.bulla@mail.ru>, 2020.
# Danil Alexeev <danil@alexeev.xyz>, 2020, 2021, 2023.
# Mazhar Gören <mazhargoren3@gmail.com>, 2020.
# Valentine <hehboe@gmail.com>, 2020.
# GreyCat <grey_cat0@mail.ru>, 2020.
# Pierre Stempin <pierre.stempin@gmail.com>, 2020.
# Ilya Brin <wim-norder@yandex.com>, 2020.
# Artroms <artromskiy.git@gmail.com>, 2021.
# narrnika <narr13niki@gmail.com>, 2021.
# TB Designes <tb.designes@gmail.com>, 2021.
# Alex Ty <drowerer@gmail.com>, 2021.
# Anna Malinovskaia <tacitcoast@gmail.com>, 2021.
# Poq Xert <poqxert@poqxert.ru>, 2021.
# Чтабс <chtabs2k19@gmail.com>, 2021.
# Nikita Blizniuk <BliznyukNM@gmail.com>, 2021.
# Сергей Волков <zerosar4@gmail.com>, 2021.
# Alexander Sinitsyn <almoig747@gmail.com>, 2021, 2022.
# Толя Богомолов <tolya.bogomolov2004@gmail.com>, 2021.
# Rustam Alieskerov <rustam.aleskerov7@gmail.com>, 2021, 2022.
# Vladimir Svity <development.openworld@gmail.com>, 2021.
# SuperProCoolName <minzatov.2004@mail.ru>, 2021.
# GameOverCode <thefguyplayeriwbt@gmail.com>, 2021.
# trolley813 <trolleybus.1329@gmail.com>, 2021.
# artem <artem999.r@protonmail.com>, 2021.
# Werryx <artoops@mail.ru>, 2022.
# Eugene <oukey311@gmail.com>, 2022.
# 140bpmdubstep <maksim.afonin.1927@bk.ru>, 2022.
# Алексей Зотов <ancrad@yandex.ru>, 2022.
# Russkikh Michail <summersay415@gmail.com>, 2022.
# Kirill Slesarenok <s.k.s.10.09.2001@gmail.com>, 2022.
# Иван Гай <yfrde615@gmail.com>, 2022.
# Bebihindra <denisk.chebotarev@mail.ru>, 2022.
# Alex_Faction <creeponedead@gmail.com>, 2022, 2024.
# Turok Chukchin <chukchinturok@gmail.com>, 2022.
# Rish Alternative <ii4526668@gmail.com>, 2022.
# Andrey <stre10k@mail.ru>, 2022.
# Smadjavul <o1985af@gmail.com>, 2022.
# Bozhko Artyom Dmitrievich <jek_sun@mail.ru>, 2022.
# FuzzMix <fmwolfiechad@gmail.com>, 2022.
# МАН69К <weblate@mah69k.net>, 2022.
# Vadim Mitroshkin <Vadim7540@yandex.ru>, 2022.
# SonicStalker Games <dmitriyusolsev1971@gmail.com>, 2022.
# Kedr <lava20121991@gmail.com>, 2022.
# Lost Net <pc.mirkn@gmail.com>, 2022, 2023.
# Vladimir Kirillovskiy <vladimir.kirillovskiy@gmail.com>, 2022.
# motismob <evt.mixail@ya.ru>, 2022.
# Handsless coder <yfintktajy1@gmail.com>, 2022.
# Evgeniy Khramov <thejenjagamertjg@gmail.com>, 2022, 2023.
# Григорий <bolon667@gmail.com>, 2022.
# Artur Leonov (Depish) <depish.eskry@yandex.ru>, 2022.
# Patrik <avdmur@gmail.com>, 2022, 2023.
# Alexander Alexeev <dergluck@gmail.com>, 2023.
# Playmore Dev <playmoredevelop@gmail.com>, 2023.
# Alexandr Lis <WhiteTailledFox@ya.ru>, 2023.
# Yunis Nabiyev <yunisnabiyev2@gmail.com>, 2023.
# Vladislav Pesterev <vlad171vlad@gmail.com>, 2023.
# Кордис Ди <psevdoejik@gmail.com>, 2023.
# Eugene One <elevencupoftea@gmail.com>, 2023.
# Animaliss <Zernon001@mail.ru>, 2023.
# W Red <elyeen777greating@gmail.com>, 2023.
# Nikita <svinuhov.nikita@gmail.com>, 2023.
# Огненный рыцарь <demon776854@gmail.com>, 2023.
# ZIP2020 <folstagking@gmail.com>, 2023.
# Plizik <channelofplizik@gmail.com>, 2023.
# Kulagin Daniel <ksda989@gmail.com>, 2023.
# MaksKraft <makskraft35@gmail.com>, 2023.
# Jester1337 <gaymer56channel@gmail.com>, 2023.
# Maxim Raklo <raklovus@yandex.ru>, 2023.
# Daniil Zimchuk <danrus228zk@gmail.com>, 2023.
# Hunter342 <www.Hunter342@yandex.ru>, 2023.
# Rodion Furtov <rodionfurtov@yandex.ru>, 2023.
# Ilia Brykin <brykin.ilia@gmail.com>, 2023.
# Mikhail Sychev <m.w.s@bk.ru>, 2023.
# Ruslan <vovavalenkov15@gmail.com>, 2023, 2024.
# DLushin <dmiyashyt@gmail.com>, 2023.
# Maxi fox <oleksijyerukh@gmail.com>, 2023.
# Blezz Rot <markus.jenya04@yandex.ru>, 2023.
# a-d-polevoi <a.d.polevoi@gmail.com>, 2023.
# Affir Vega <feskow.ilya@ya.ru>, 2023.
# Atom-FG <PochemuchkaSP@yandex.ru>, 2023.
# Kirill <kiriiri@bk.ru>, 2023.
# suprohub <suprohub@gmail.com>, 2024.
# Saveliy <jitropolit@gmail.com>, 2024.
# Ivan Oranchuk <oranchukivan@gmail.com>, 2024.
# Danil Fadeev <fadeev-da26@yandex.ru>, 2024.
# ShaniZ <dmitry.prihodko2007@mail.ru>, 2024.
# vvv331 <vvv331vvv@gmail.com>, 2024.
# Val Zay <valervalerkin@gmail.com>, 2024.
# viktordino <truehorrorwebsite@gmail.com>, 2024.
# Evgeniy Khramov <65224669+thejenja@users.noreply.github.com>, 2024.
# qvapelsin <ya.yaroshko@gmail.com>, 2024.
# Ipwnik ЗАКРЫТО <mineconhoogy@gmail.com>, 2024.
# Error <72194218+DARK-coder-create@users.noreply.github.com>, 2024.
# Dauren <xizet7@gmail.com>, 2024.
# Wertyfire <sw405@yandex.ru>, 2024.
# EVOR <evormen@gmail.com>, 2024.
# Vyber <vyber777@gmail.com>, 2024.
# Даниил Магомедов <magomedov.daniil.72@gmail.com>, 2024.
# Vladimir Chistov <wchistow@yandex.ru>, 2024.
# Александр Лис <a.shinakov@it366.ru>, 2024.
# UltraTaber <ultra_taber@mail.ru>, 2024.
# Nick Sabinin <sabnk.optictelecom@gmail.com>, 2024.
# Kira Young <kirayoung1007@gmail.com>, 2024.
# qwojj <budakovnikita2006@gmail.com>, 2024, 2025.
# Dainis K <bonanzaaa.mad@gmail.com>, 2024.
# name <marsapo4ta@yandex.ru>, 2024.
# VladnotVlad <vladislavfarulin567@gmail.com>, 2024.
# Dimas007 <dima.shturmavik@gmail.com>, 2024.
# EdwardBrok <edikbrok@yandex.ru>, 2024.
# СТАРЫЙ ХЛЕБ <ctapiuxleb1@gmail.com>, 2024.
# Kiril Yakymchuk <stbestich@gmail.com>, 2025.
# Arseniy <arseniy-selin-2004@yandex.ru>, 2025.
# arkology <arkology11@gmail.com>, 2025.
# Unkwealth <unkwealth@users.noreply.hosted.weblate.org>, 2025.
# Kirill Sergeev <thepunkoff@gmail.com>, 2025.
# ghKoty <kirabovkun09@gmail.com>, 2025.
# Mister Ky <afanasievsergiy3524@gmail.com>, 2025.
# Belonogov Nikolay <nikolai.belonogov@vk.team>, 2025.
# Andrey Razin <AndreyRazinWork@yandex.ru>, 2025.
# Deniil <danpko@ya.ru>, 2025.
# spantamano <i.m.promo@bk.ru>, 2025.
# JekSun97 <jeksun2022@gmail.com>, 2025.
# Deniil <bug@users.noreply.hosted.weblate.org>, 2025.
# Steve Fly <tgenadich.94@gmail.com>, 2025.
# kentaurus <grrr7230@gmail.com>, 2025.
# SpectreMP <mikhail.poboinya@yandex.ru>, 2025.
# Arthur <notcoder12@gmail.com>, 2025.
# Marat Ismailov <klippygames@gmail.com>, 2025.
msgid ""
msgstr ""
"Project-Id-Version: Godot Engine class reference\n"
"Report-Msgid-Bugs-To: https://github.com/godotengine/godot\n"
"PO-Revision-Date: 2025-09-25 19:02+0000\n"
"Last-Translator: Алексей Смирнов <tir74@mail.ru>\n"
"Language-Team: Russian <https://hosted.weblate.org/projects/godot-engine/"
"godot-class-reference/ru/>\n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
"X-Generator: Weblate 5.14-dev\n"

msgid "All classes"
msgstr "Все классы"

msgid "Globals"
msgstr "Глобальные"

msgid "Nodes"
msgstr "Узлы"

msgid "Resources"
msgstr "Ресурсы"

msgid "Editor-only"
msgstr "Только для редактора"

msgid "Other objects"
msgstr "Другие объекты"

msgid "Variant types"
msgstr "Вариативные типы"

msgid "Description"
msgstr "Описание"

msgid "Tutorials"
msgstr "Обучающие материалы"

msgid "Properties"
msgstr "Свойства"

msgid "Constructors"
msgstr "Конструкторы"

msgid "Methods"
msgstr "Методы"

msgid "Operators"
msgstr "Операторы"

msgid "Theme Properties"
msgstr "Свойства темы"

msgid "Signals"
msgstr "Сигналы"

msgid "Enumerations"
msgstr "Перечисления"

msgid "Constants"
msgstr "Константы"

msgid "Annotations"
msgstr "Аннотации"

msgid "Property Descriptions"
msgstr "Описания свойств"

msgid "Constructor Descriptions"
msgstr "Описания конструктора"

msgid "Method Descriptions"
msgstr "Описания метода"

msgid "Operator Descriptions"
msgstr "Описания оператора"

msgid "Theme Property Descriptions"
msgstr "Описания свойств темы"

msgid "Inherits:"
msgstr "Наследует:"

msgid "Inherited By:"
msgstr "Наследуется от:"

msgid "(overrides %s)"
msgstr "(переопределяет %s)"

msgid "Default"
msgstr "По умолчанию"

msgid "Setter"
msgstr "Сеттер"

msgid "value"
msgstr "значение"

msgid "Getter"
msgstr "Геттер"

msgid ""
"This method should typically be overridden by the user to have any effect."
msgstr ""
"Этот метод обычно должен быть переопределен пользователем, чтобы иметь какой-"
"либо эффект."

msgid ""
"This method has no side effects. It doesn't modify any of the instance's "
"member variables."
msgstr ""
"Этот метод не имеет побочных эффектов. Он не изменяет ни одну из переменных-"
"членов экземпляра."

msgid ""
"This method accepts any number of arguments after the ones described here."
msgstr "Этот метод принимает любое количество аргументов после описанных здесь."

msgid "This method is used to construct a type."
msgstr "Этот метод используется для создания типа."

msgid ""
"This method doesn't need an instance to be called, so it can be called "
"directly using the class name."
msgstr ""
"Этот метод не нуждается в вызове экземпляра, поэтому его можно вызвать "
"напрямую, используя имя класса."

msgid ""
"This method describes a valid operator to use with this type as left-hand "
"operand."
msgstr ""
"Этот метод описывает допустимый оператор для использования с этим типом в "
"качестве левого операнда."

msgid "This value is an integer composed as a bitmask of the following flags."
msgstr ""
"Это значение является целым числом, составленным как битовая маска следующих "
"флагов."

msgid "No return value."
msgstr "Нет возвращаемого значения."

msgid ""
"There is currently no description for this class. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"На данный момент описания класса нет. Пожалуйста помогите нам :ref:`предложив "
"таковой <doc_updating_the_class_reference>`!"

msgid ""
"There is currently no description for this signal. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"На данный момент описания этого сигнала нет. Пожалуйста помогите "
"нам :ref:`предложив таковое <doc_updating_the_class_reference>`!"

msgid ""
"There is currently no description for this enum. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"На данный момент описания этого сигнала нет. Пожалуйста помогите "
"нам :ref:`предложив <doc_updating_the_class_reference>`!"

msgid ""
"There is currently no description for this constant. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"На данный момент описания этой константы нет. Пожалуйста помогите "
"нам :ref:`предложив таковое <doc_updating_the_class_reference>`!"

msgid ""
"There is currently no description for this annotation. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"На данный момент описания этой аннотации нет. Пожалуйста помогите "
"нам :ref:`предложив таковое <doc_updating_the_class_reference>`!"

msgid ""
"There is currently no description for this property. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"На данный момент описания этого свойства нет. Пожалуйста помогите "
"нам :ref:`предложив таковое <doc_updating_the_class_reference>`!"

msgid ""
"There is currently no description for this constructor. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"На данный момент описания этого конструктора нет. Пожалуйста помогите "
"нам :ref:`предложив таковое <doc_updating_the_class_reference>`!"

msgid ""
"There is currently no description for this method. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"На данный момент описания этого метода нет. Пожалуйста помогите "
"нам :ref:`предложив таковое <doc_updating_the_class_reference>`!"

msgid ""
"There is currently no description for this operator. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"На данный момент описания этого оператора нет. Пожалуйста помогите "
"нам :ref:`предложив таковое <doc_updating_the_class_reference>`!"

msgid ""
"There is currently no description for this theme property. Please help us "
"by :ref:`contributing one <doc_updating_the_class_reference>`!"
msgstr ""
"На данный момент описания этого параметра темы нет. Пожалуйста помогите "
"нам :ref:`предложив таковое <doc_updating_the_class_reference>`!"

msgid ""
"There are notable differences when using this API with C#. "
"See :ref:`doc_c_sharp_differences` for more information."
msgstr ""
"Существуют заметные различия при использовании данного API с C#. Подробнее "
"см. :ref:`doc_c_sharp_differences`."

msgid "Deprecated:"
msgstr "Устарело:"

msgid "Experimental:"
msgstr "Экспериментальное:"

msgid "This signal may be changed or removed in future versions."
msgstr "Этот сигнал может быть изменён или удалён в будущих версиях."

msgid "This constant may be changed or removed in future versions."
msgstr "Эта постоянная может быть изменена или удалена в будущих версиях."

msgid "This property may be changed or removed in future versions."
msgstr "Это свойство может быть изменено или удалено в будущих версиях."

msgid "This constructor may be changed or removed in future versions."
msgstr "Этот конструктор может быть изменён или удалён в будущих версиях."

msgid "This method may be changed or removed in future versions."
msgstr "Этот метод может быть изменён или удалён в будущих версиях."

msgid "This operator may be changed or removed in future versions."
msgstr "Этот оператор может быть изменён или удалён в будущих версиях."

msgid "This theme property may be changed or removed in future versions."
msgstr "Это свойство темы может быть изменено или удалено в будущих версиях."

msgid "Built-in GDScript constants, functions, and annotations."
msgstr "Встроенные в GDScript константы, функции и аннотации."

msgid ""
"A list of utility functions and annotations accessible from any script "
"written in GDScript.\n"
"For the list of global functions and constants that can be accessed in any "
"scripting language, see [@GlobalScope]."
msgstr ""
"Список служебных функций и аннотаций, доступных из любого скрипта, "
"написанного на GDScript.\n"
"Список глобальных функций и констант, к которым можно обращаться в любом "
"скриптовом языке, см. в [@GlobalScope]."

msgid "GDScript exports"
msgstr "Экспорт GDScript"

msgid "Use [method Color.from_rgba8] instead."
msgstr "Вместо этого используйте [method Color.from_rgba8]."

msgid ""
"Returns a [Color] constructed from red ([param r8]), green ([param g8]), blue "
"([param b8]), and optionally alpha ([param a8]) integer channels, each "
"divided by [code]255.0[/code] for their final value. Using [method Color8] "
"instead of the standard [Color] constructor is useful when you need to match "
"exact color values in an [Image].\n"
"[codeblock]\n"
"var red = Color8(255, 0, 0)             # Same as Color(1, 0, 0).\n"
"var dark_blue = Color8(0, 0, 51)        # Same as Color(0, 0, 0.2).\n"
"var my_color = Color8(306, 255, 0, 102) # Same as Color(1.2, 1, 0, 0.4).\n"
"[/codeblock]\n"
"[b]Note:[/b] Due to the lower precision of [method Color8] compared to the "
"standard [Color] constructor, a color created with [method Color8] will "
"generally not be equal to the same color created with the standard [Color] "
"constructor. Use [method Color.is_equal_approx] for comparisons to avoid "
"issues with floating-point precision error."
msgstr ""
"Возвращает [Color], построенный из красного ([param r8]), зеленого ([param "
"g8]), синего ([param b8]) и, по желанию, альфа ([param a8]) целочисленных "
"каналов, каждый делится на [code]255.0[/code] для получения конечного "
"значения. Использование [method Color8] вместо стандартного конструктора "
"[Color] полезно когда нужно точно соответствовать значения цвета в [Image].\n"
"[codeblock].\n"
"var red = Color8(255, 0, 0)                            # То же самое, что "
"Color(1, 0, 0).\n"
"var dark_blue = Color8(0, 0, 51)                # То же, что Color(0, 0, "
"0.2).\n"
"var my_color = Color8(306, 255, 0, 102) # То же, что Color(1.2, 1, 0, 0.4).\n"
"[/codeblock].\n"
"[b]Примечание:[/b] Из-за меньшей точности [method Color8] по сравнению со "
"стандартным конструктором [Color], цвет созданный с [method Color8] обычно не "
"будет равен тому же цвету созданному с помощью стандартного конструктора "
"[Color]. Используйте [method Color.is_equal_approx] для сравнений чтобы "
"избежать проблем с ошибкой точности плавающей точки."

msgid ""
"Asserts that the [param condition] is [code]true[/code]. If the [param "
"condition] is [code]false[/code], an error is generated. When running from "
"the editor, the running project will also be paused until you resume it. This "
"can be used as a stronger form of [method @GlobalScope.push_error] for "
"reporting errors to project developers or add-on users.\n"
"An optional [param message] can be shown in addition to the generic "
"\"Assertion failed\" message. You can use this to provide additional details "
"about why the assertion failed.\n"
"[b]Warning:[/b] For performance reasons, the code inside [method assert] is "
"only executed in debug builds or when running the project from the editor. "
"Don't include code that has side effects in an [method assert] call. "
"Otherwise, the project will behave differently when exported in release "
"mode.\n"
"[codeblock]\n"
"# Imagine we always want speed to be between 0 and 20.\n"
"var speed = -10\n"
"assert(speed < 20) # True, the program will continue.\n"
"assert(speed >= 0) # False, the program will stop.\n"
"assert(speed >= 0 and speed < 20) # You can also combine the two conditional "
"statements in one check.\n"
"assert(speed < 20, \"the speed limit is 20\") # Show a message.\n"
"[/codeblock]\n"
"[b]Note:[/b] [method assert] is a keyword, not a function. So you cannot "
"access it as a [Callable] or use it inside expressions."
msgstr ""
"Проверяет, что [param condition] равно [code]true[/code]. Если [param "
"condition] равно [code]false[/code], будет сгенерирована ошибка. Если "
"запущено из редактора, запущенный проект также будет приостановлен, пока вы "
"не возобновите его. Это может быть использовано как более сильная форма "
"[method @GlobalScope.push_error] для сообщения об ошибках разработчикам "
"проекта или пользователям дополнений.\n"
"Необязательное [param message] может быть показано в добавление к "
"универсальному сообщению \"Assertion failed\". Вы можете предоставить "
"дополнительные детали о том, почему ваше утверждение не удалось.\n"
"[b]Примечание:[/b] В целях оптимизации, код внутри [method assert] "
"исполняется только в отладочных сборках, или когда вы запускаете проект из "
"редактора . Не добавляйте дополнительный код, у которого есть побочные "
"эффекты в вызове [method assert]. В противном случае, проект будет вести себя "
"по-другому при экспорте в режиме релиза.\n"
"[codeblock]\n"
"# Предположим, вы хотите, чтобы скорость (speed) была между 0 и 20.\n"
"var speed = -10\n"
"assert(speed < 20) # True, программа продолжит выполнение.\n"
"assert(speed >= 0) # False, программа будет остановлена.\n"
"assert(speed >= 0 and speed < 20) # Вы также можете комбинировать два "
"условных выражения в одной проверке.\n"
"assert(speed < 20, \"лимит скорости равен 20\") # Показывает сообщение.\n"
"[/codeblock]\n"
"[b]Примечание:[/b] [method assert] это ключевое слово, а не функция. Поэтому "
"вы не можете обращаться к нему как к [Callable] или использовать внутри "
"выражений."

msgid ""
"Returns a single character (as a [String] of length 1) of the given Unicode "
"code point [param code].\n"
"[codeblock]\n"
"print(char(65))     # Prints \"A\"\n"
"print(char(129302)) # Prints \"🤖\" (robot face emoji)\n"
"[/codeblock]\n"
"This is the inverse of [method ord]. See also [method String.chr] and [method "
"String.unicode_at]."
msgstr ""
"Возвращает один символ (в виде [String] длиной 1) заданной кодовой точки "
"Unicode [param code].\n"
"[codeblock]\n"
"print(char(65))     # Выводит \"A\"\n"
"print(char(129302)) # Выводит \"🤖\" (эмодзи с лицом робота)\n"
"[/codeblock]\n"
"Это метод, обратный методу [method ord]. См. также [method String.chr] и "
"[method String.unicode_at]."

msgid "Use [method @GlobalScope.type_convert] instead."
msgstr "Вместо этого используйте [method @GlobalScope.type_convert]."

msgid ""
"Converts [param what] to [param type] in the best way possible. The [param "
"type] uses the [enum Variant.Type] values.\n"
"[codeblock]\n"
"var a = [4, 2.5, 1.2]\n"
"print(a is Array) # Prints true\n"
"\n"
"var b = convert(a, TYPE_PACKED_BYTE_ARRAY)\n"
"print(b)          # Prints [4, 2, 1]\n"
"print(b is Array) # Prints false\n"
"[/codeblock]"
msgstr ""
"Преобразует [param what] в [param type] наилучшим образом. Тип [param type] "
"использует значения [enum Variant.Type].\n"
"[codeblock].\n"
"var a = [4, 2.5, 1.2]\n"
"print(a is Array) # Выводит true\n"
"\n"
"var b = convert(a, TYPE_PACKED_BYTE_ARRAY)\n"
"print(b)                 # Prints [4, 2, 1]\n"
"print(b is Array) # Prints false\n"
"[/codeblock]"

msgid ""
"Consider using [method JSON.to_native] or [method Object.get_property_list] "
"instead."
msgstr ""
"Вместо этого используйте [method JSON.to_native] или [method "
"Object.get_property_list]."

msgid ""
"Converts a [param dictionary] (created with [method inst_to_dict]) back to an "
"Object instance. Can be useful for deserializing."
msgstr ""
"Преобразует словарь [param dictionary] (ранее созданный с помощью [method "
"inst_to_dict]) обратно в экземпляр объекта. Полезно для десериализации."

msgid ""
"Returns an array of dictionaries representing the current call stack.\n"
"[codeblock]\n"
"func _ready():\n"
"\tfoo()\n"
"\n"
"func foo():\n"
"\tbar()\n"
"\n"
"func bar():\n"
"\tprint(get_stack())\n"
"[/codeblock]\n"
"Starting from [code]_ready()[/code], [code]bar()[/code] would print:\n"
"[codeblock lang=text]\n"
"[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, "
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]\n"
"See also [method print_debug], [method print_stack], and [method "
"Engine.capture_script_backtraces].\n"
"[b]Note:[/b] By default, backtraces are only available in editor builds and "
"debug builds. To enable them for release builds as well, you need to enable "
"[member ProjectSettings.debug/settings/gdscript/always_track_call_stacks]."
msgstr ""
"Возвращает массив словарей, представляющих текущий стек вызовов.\n"
"[codeblock]\n"
"func _ready():\n"
"\tfoo()\n"
"\n"
"func foo():\n"
"\tbar()\n"
"\n"
"func bar():\n"
"\tprint(get_stack())\n"
"[/codeblock]\n"
"Начиная с [code]_ready()[/code], [code]bar()[/code] выведет:\n"
"[codeblock lang=text]\n"
"[{function:bar, line:12, source:res://script.gd}, {function:foo, line:9, "
"source:res://script.gd}, {function:_ready, line:6, source:res://script.gd}]\n"
"[/codeblock]\n"
"См. также [method print_debug], [method print_stack] и [method "
"Engine.capture_script_backtraces].\n"
"[b]Примечание:[/b] По умолчанию обратные трассировки доступны только в "
"редакторских и отладочных сборках. Чтобы включить их и в релизных сборках, "
"необходимо включить [member ProjectSettings.debug/settings/gdscript/"
"always_track_call_stacks]."

msgid ""
"Consider using [method JSON.from_native] or [method Object.get_property_list] "
"instead."
msgstr ""
"Вместо этого используйте [method JSON.from_native] или [method "
"Object.get_property_list]."

msgid ""
"Returns the passed [param instance] converted to a [Dictionary]. Can be "
"useful for serializing.\n"
"[codeblock]\n"
"var foo = \"bar\"\n"
"func _ready():\n"
"\tvar d = inst_to_dict(self)\n"
"\tprint(d.keys())\n"
"\tprint(d.values())\n"
"[/codeblock]\n"
"Prints out:\n"
"[codeblock lang=text]\n"
"[@subpath, @path, foo]\n"
"[, res://test.gd, bar]\n"
"[/codeblock]\n"
"[b]Note:[/b] This function can only be used to serialize objects with an "
"attached [GDScript] stored in a separate file. Objects without an attached "
"script, with a script written in another language, or with a built-in script "
"are not supported.\n"
"[b]Note:[/b] This function is not recursive, which means that nested objects "
"will not be represented as dictionaries. Also, properties passed by reference "
"([Object], [Dictionary], [Array], and packed arrays) are copied by reference, "
"not duplicated."
msgstr ""
"Возвращает переданный [param instance], преобразованный в словарь. Может быть "
"полезен для сериализации.\n"
"[codeblock].\n"
"var foo = «bar»\n"
"func _ready():\n"
"\tvar d = inst_to_dict(self)\n"
"\tprint(d.keys())\n"
"\tprint(d.values())\n"
"[/codeblock].\n"
"Выводит:\n"
"[codeblock lang=text]\n"
"[@subpath, @path, foo]\n"
"[, res://test.gd, bar]\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Эта функция может быть использована только для "
"сериализации объектов с вложенным [GDScript], хранящимся в отдельном файле. "
"Объекты без пользовательского скрипта, со скриптом на другом языке, или со "
"встроенным скриптом не поддерживаются.\n"
"[b]Примечание:[/b] Эта функция не является рекурсивной, что означает, что "
"вложенные объекты не будут представлены в виде словарей. Кроме того, "
"свойства, передаваемые по ссылке ([Object], [Dictionary], [Array] и "
"упакованные массивы) копируются по ссылке, а не дублируются."

msgid ""
"Returns [code]true[/code] if [param value] is an instance of [param type]. "
"The [param type] value must be one of the following:\n"
"- A constant from the [enum Variant.Type] enumeration, for example [constant "
"TYPE_INT].\n"
"- An [Object]-derived class which exists in [ClassDB], for example [Node].\n"
"- A [Script] (you can use any class, including inner one).\n"
"Unlike the right operand of the [code]is[/code] operator, [param type] can be "
"a non-constant value. The [code]is[/code] operator supports more features "
"(such as typed arrays). Use the operator instead of this method if you do not "
"need to check the type dynamically.\n"
"[b]Examples:[/b]\n"
"[codeblock]\n"
"print(is_instance_of(a, TYPE_INT))\n"
"print(is_instance_of(a, Node))\n"
"print(is_instance_of(a, MyClass))\n"
"print(is_instance_of(a, MyClass.InnerClass))\n"
"[/codeblock]\n"
"[b]Note:[/b] If [param value] and/or [param type] are freed objects (see "
"[method @GlobalScope.is_instance_valid]), or [param type] is not one of the "
"above options, this method will raise a runtime error.\n"
"See also [method @GlobalScope.typeof], [method type_exists], [method "
"Array.is_same_typed] (and other [Array] methods)."
msgstr ""
"Возвращает [code]true[/code] если [param value] является экземпляром [param "
"type]. Значение [param type] должно быть одним из следующих:\n"
"- Константа из [enum Variant.Type] перечисляемого, например [constant "
"TYPE_INT].\n"
"- [Object]-производный класс, который существует в [ClassDB], например "
"[Node].\n"
"- [Script] (Вы можете использовать любой класс, включая внутренний).\n"
"В отличии от правильного операнда оператора [code]is[/code], [param type] "
"может быть изменяемым значением. Оператор [code]is[/code] поддерживает больше "
"функций (такие как типизированные массивы). Используйте оператор вместо этого "
"метода если Вам не нужна динамическая проверка типов.\n"
"[b]Примеры:[/b]\n"
"[codeblock]\n"
"print(is_instance_of(a, TYPE_INT))\n"
"print(is_instance_of(a, Node))\n"
"print(is_instance_of(a, MyClass))\n"
"print(is_instance_of(a, MyClass.InnerClass))\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Если [param value] и/или [param type] освобожденные "
"объекты (смотри [method @GlobalScope.is_instance_valid]), или [param type] не "
"из опций сверху, этот метод вызовет ошибку во время исполнения.\n"
"Смотрите также [method @GlobalScope.typeof], [method type_exists], [method "
"Array.is_same_typed] (И другие методы [Array])."

msgid ""
"Returns the length of the given Variant [param var]. The length can be the "
"character count of a [String] or [StringName], the element count of any array "
"type, or the size of a [Dictionary]. For every other Variant type, a run-time "
"error is generated and execution is stopped.\n"
"[codeblock]\n"
"var a = [1, 2, 3, 4]\n"
"len(a) # Returns 4\n"
"\n"
"var b = \"Hello!\"\n"
"len(b) # Returns 6\n"
"[/codeblock]"
msgstr ""
"Возвращает длину указанного Variant [param var]. Длина может быть количеством "
"символов [String] или [StringName], количеством элементов любого типа массива "
"или размером [Dictionary]. Для любого другого типа Variant генерируется "
"ошибка времени выполнения и выполнение останавливается.\n"
"[codeblock]\n"
"a = [1, 2, 3, 4]\n"
"len(a) # Вернёт 4\n"
"\n"
"b = \"Hello!\"\n"
"len(b) # Вернёт 6\n"
"[/codeblock]"

msgid ""
"Returns a [Resource] from the filesystem located at the absolute [param "
"path]. Unless it's already referenced elsewhere (such as in another script or "
"in the scene), the resource is loaded from disk on function call, which might "
"cause a slight delay, especially when loading large scenes. To avoid "
"unnecessary delays when loading something multiple times, either store the "
"resource in a variable or use [method preload]. This method is equivalent of "
"using [method ResourceLoader.load] with [constant "
"ResourceLoader.CACHE_MODE_REUSE].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
"in the FileSystem dock and choosing \"Copy Path\", or by dragging the file "
"from the FileSystem dock into the current script.\n"
"[codeblock]\n"
"# Load a scene called \"main\" located in the root of the project directory "
"and cache it in a variable.\n"
"var main = load(\"res://main.tscn\") # main will contain a PackedScene "
"resource.\n"
"[/codeblock]\n"
"[b]Important:[/b] Relative paths are [i]not[/i] relative to the script "
"calling this method, instead it is prefixed with [code]\"res://\"[/code]. "
"Loading from relative paths might not work as expected.\n"
"This function is a simplified version of [method ResourceLoader.load], which "
"can be used for more advanced scenarios.\n"
"[b]Note:[/b] Files have to be imported into the engine first to load them "
"using this function. If you want to load [Image]s at run-time, you may use "
"[method Image.load]. If you want to import audio files, you can use the "
"snippet described in [member AudioStreamMP3.data].\n"
"[b]Note:[/b] If [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] is [code]true[/code], [method "
"@GDScript.load] will not be able to read converted files in an exported "
"project. If you rely on run-time loading of files present within the PCK, set "
"[member ProjectSettings.editor/export/convert_text_resources_to_binary] to "
"[code]false[/code]."
msgstr ""
"Возвращает данные вида [Resource] из файловой системы, расположенный по "
"абсолютному адресу [param path]. Если на ресурс уже присутствуют ссылки в "
"другом месте (например, в другом скрипте или сцене), он загружается с диска "
"при вызове функции, что может вызвать небольшую задержку, особенно при "
"загрузке больших сцен. Чтобы избежать ненужных задержек при многократной "
"загрузке, храните ресурс в переменной, либо используйте [method preload]. "
"Этот способ является эквивалентом [method ResourceLoader.load] с параметром "
"[constant ResourceLoader.CACHE_MODE_REUSE].\n"
"[b]Примечание:[/b] Пути к ресурсам можно получить, щелкнув правой кнопкой "
"мыши на нужном ресурсе в окне файлов проекта и выбрав опцию \"Скопировать "
"путь\", или перетащив файл из окна файлов проекта в текущий сценарий.\n"
"[codeblock]\n"
"# Загрузите сцену с наименованием \"main\", расположенную в корне каталога "
"проекта, и кэшируйте ее в переменную.\n"
"var main = load(\"res://main.tscn\") # main будет содержать ресурс типа "
"\"Сжатая сцена\".\n"
"[/codeblock]\n"
"[b]Важно:[/b] Относительные пути [i] не [/i] относятся к скрипту, вызывающему "
"этот метод, вместо этого он имеет префикс [code]\"res://\"[/code]. Загрузка "
"из относительных путей может работать не так, как ожидалось.\n"
"Данная функция является упрощенной версией [method ResourceLoader.load], "
"которую можно использовать для более сложных сценариев.\n"
"[b]Примечание:[/b] Для загрузки файлов с помощью этой функции, их необходимо "
"предварительно импортировать в движок. Если требуется загрузить [Image] во "
"время выполнения, можно использовать [method Image.load]. Если вам необходимо "
"импортировать аудиофайлы, вы можете воспользоваться фрагментом, описанным в "
"[member AudioStreamMP3.data].\n"
"[b]Примечание:[/b] Если параметр [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] имеет значение [code]true[/code], то "
"[method @GDScript.load] не сможет прочитать преобразованные файлы в "
"экспортируемом проекте. Если вы полагаетесь на подгрузку по ходу работы "
"проекта файлов, присутствующих в пакете \"PCK\", во время выполнения проекта, "
"установите параметр [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] как [code]false[/code]."

msgid ""
"Returns an integer representing the Unicode code point of the given character "
"[param char], which should be a string of length 1.\n"
"[codeblock]\n"
"print(ord(\"A\")) # Prints 65\n"
"print(ord(\"🤖\")) # Prints 129302\n"
"[/codeblock]\n"
"This is the inverse of [method char]. See also [method String.chr] and "
"[method String.unicode_at]."
msgstr ""
"Возвращает целое число, представляющее кодовую точку Unicode заданного "
"символа [param char], которая должна быть строкой длиной 1.\n"
"[codeblock]\n"
"print(ord(\"A\")) # Выводит 65\n"
"print(ord(\"🤖\")) # Выводит 129302\n"
"[/codeblock]\n"
"Это метод, обратный методу [method char]. См. также [method String.chr] и "
"[method String.unicode_at]."

msgid ""
"Returns a [Resource] from the filesystem located at [param path]. During run-"
"time, the resource is loaded when the script is being parsed. This function "
"effectively acts as a reference to that resource. Note that this function "
"requires [param path] to be a constant [String]. If you want to load a "
"resource from a dynamic/variable path, use [method load].\n"
"[b]Note:[/b] Resource paths can be obtained by right-clicking on a resource "
"in the Assets Panel and choosing \"Copy Path\", or by dragging the file from "
"the FileSystem dock into the current script.\n"
"[codeblock]\n"
"# Create instance of a scene.\n"
"var diamond = preload(\"res://diamond.tscn\").instantiate()\n"
"[/codeblock]\n"
"[b]Note:[/b] [method preload] is a keyword, not a function. So you cannot "
"access it as a [Callable]."
msgstr ""
"Возвращает ресурс [Resource] из файловой системы, расположенной по адресу "
"[param path]. Во время выполнения скрипта ресурс загружается при разборе "
"скрипта. Эта функция фактически выступает в качестве ссылки на этот ресурс. "
"Обратите внимание, что данная функция требует, чтобы [param path] был "
"константой [String]. Если необходимо загрузить ресурс из динамического/"
"переменного пути, используйте [method load].\n"
"[b]Примечание:[/b] Пути к ресурсам можно получить, щелкнув правой кнопкой "
"мыши на ресурсе в панели активов и выбрав \"Copy Path\", или перетащив файл "
"из дока FileSystem в текущий скрипт.\n"
"[codeblock]\n"
"# Создаем экземпляр сцены.\n"
"var diamond = preload(\"res://diamond.tscn\").instantiate()\n"
"[/codeblock]\n"
"[b]Примечание:[/b] [method preload] - это ключевое слово, а не функция. "
"Поэтому вы не можете получить к нему доступ как к [Callable]."

msgid ""
"Like [method @GlobalScope.print], but includes the current stack frame when "
"running with the debugger turned on.\n"
"The output in the console may look like the following:\n"
"[codeblock lang=text]\n"
"Test print\n"
"At: res://test.gd:15:_process()\n"
"[/codeblock]\n"
"See also [method print_stack], [method get_stack], and [method "
"Engine.capture_script_backtraces].\n"
"[b]Note:[/b] By default, backtraces are only available in editor builds and "
"debug builds. To enable them for release builds as well, you need to enable "
"[member ProjectSettings.debug/settings/gdscript/always_track_call_stacks]."
msgstr ""
"Аналогично [method @GlobalScope.print], но при запуске с включённым "
"отладчиком включает текущий кадр стека.\n"
"Вывод в консоли может выглядеть следующим образом:\n"
"[codeblock lang=text]\n"
"Test print\n"
"At: res://test.gd:15:_process()\n"
"[/codeblock]\n"
"См. также [method print_stack], [method get_stack] и [method "
"Engine.capture_script_backtraces].\n"
"[b]Примечание:[/b] По умолчанию обратные трассировки доступны только в "
"редакторских и отладочных сборках. Чтобы включить их и в релизных сборках, "
"необходимо включить [member ProjectSettings.debug/settings/gdscript/"
"always_track_call_stacks]."

msgid ""
"Prints a stack trace at the current code location.\n"
"The output in the console may look like the following:\n"
"[codeblock lang=text]\n"
"Frame 0 - res://test.gd:16 in function '_process'\n"
"[/codeblock]\n"
"See also [method print_debug], [method get_stack], and [method "
"Engine.capture_script_backtraces].\n"
"[b]Note:[/b] By default, backtraces are only available in editor builds and "
"debug builds. To enable them for release builds as well, you need to enable "
"[member ProjectSettings.debug/settings/gdscript/always_track_call_stacks]."
msgstr ""
"Выводит трассировку стека в текущем месте кода.\n"
"Вывод в консоли может выглядеть следующим образом:\n"
"[codeblock lang=text]\n"
"Frame 0 - res://test.gd:16 in function '_process'\n"
"[/codeblock]\n"
"См. также [method print_debug], [method get_stack] и [method "
"Engine.capture_script_backtraces].\n"
"[b]Примечание:[/b] По умолчанию обратные трассировки доступны только в "
"редакторских и отладочных сборках. Чтобы включить их и в релизных сборках, "
"необходимо включить [member ProjectSettings.debug/settings/gdscript/"
"always_track_call_stacks]."

msgid ""
"Returns an array with the given range. [method range] can be called in three "
"ways:\n"
"[code]range(n: int)[/code]: Starts from 0, increases by steps of 1, and stops "
"[i]before[/i] [code]n[/code]. The argument [code]n[/code] is [b]exclusive[/"
"b].\n"
"[code]range(b: int, n: int)[/code]: Starts from [code]b[/code], increases by "
"steps of 1, and stops [i]before[/i] [code]n[/code]. The arguments [code]b[/"
"code] and [code]n[/code] are [b]inclusive[/b] and [b]exclusive[/b], "
"respectively.\n"
"[code]range(b: int, n: int, s: int)[/code]: Starts from [code]b[/code], "
"increases/decreases by steps of [code]s[/code], and stops [i]before[/i] "
"[code]n[/code]. The arguments [code]b[/code] and [code]n[/code] are "
"[b]inclusive[/b] and [b]exclusive[/b], respectively. The argument [code]s[/"
"code] [b]can[/b] be negative, but not [code]0[/code]. If [code]s[/code] is "
"[code]0[/code], an error message is printed.\n"
"[method range] converts all arguments to [int] before processing.\n"
"[b]Note:[/b] Returns an empty array if no value meets the value constraint "
"(e.g. [code]range(2, 5, -1)[/code] or [code]range(5, 5, 1)[/code]).\n"
"[b]Examples:[/b]\n"
"[codeblock]\n"
"print(range(4))        # Prints [0, 1, 2, 3]\n"
"print(range(2, 5))     # Prints [2, 3, 4]\n"
"print(range(0, 6, 2))  # Prints [0, 2, 4]\n"
"print(range(4, 1, -1)) # Prints [4, 3, 2]\n"
"[/codeblock]\n"
"To iterate over an [Array] backwards, use:\n"
"[codeblock]\n"
"var array = [3, 6, 9]\n"
"for i in range(array.size() - 1, -1, -1):\n"
"\tprint(array[i])\n"
"[/codeblock]\n"
"Output:\n"
"[codeblock lang=text]\n"
"9\n"
"6\n"
"3\n"
"[/codeblock]\n"
"To iterate over [float], convert them in the loop.\n"
"[codeblock]\n"
"for i in range (3, 0, -1):\n"
"\tprint(i / 10.0)\n"
"[/codeblock]\n"
"Output:\n"
"[codeblock lang=text]\n"
"0.3\n"
"0.2\n"
"0.1\n"
"[/codeblock]"
msgstr ""
"Возвращает массив с указанным диапазоном. [method range] можно вызвать тремя "
"способами:\n"
"[code]range(n: int)[/code]: Начинается с 0, увеличивается с шагом 1 и "
"останавливается [i]перед[/i] [code]n[/code]. Аргумент [code]n[/code] является "
"[b]исключающим[/b].\n"
"[code]range(b: int, n: int)[/code]: начинается с [code]b[/code], "
"увеличивается с шагом 1 и останавливается [i]перед[/i] [code]n[/code]. "
"Аргументы [code]b[/code] и [code]n[/code] являются [b]включающими[/b] и "
"[b]исключающими[/b] соответственно.\n"
"[code]range(b: int, n: int, s: int)[/code]: Начинается с [code]b[/code], "
"увеличивается/уменьшается с шагом [code]s[/code] и останавливается [i]перед[/"
"i] [code]n[/code]. Аргументы [code]b[/code] и [code]n[/code] являются "
"[b]включающими[/b] и [b]исключающими[/b] соответственно. Аргумент [code]s[/"
"code] [b]может[/b] быть отрицательным, но не [code]0[/code]. Если [code]s[/"
"code] равен [code]0[/code], выводится сообщение об ошибке.\n"
"[method range] преобразует все аргументы в [int] перед обработкой.\n"
"[b]Примечание:[/b] Возвращает пустой массив, если ни одно значение не "
"соответствует ограничению значения (например, [code]range(2, 5, -1)[/code] "
"или [code]range(5, 5, 1)[/code]).\n"
"[b]Примеры:[/b]\n"
"[codeblock]\n"
"print(range(4))        # Prints [0, 1, 2, 3]\n"
"print(range(2, 5))     # Prints [2, 3, 4]\n"
"print(range(0, 6, 2))  # Prints [0, 2, 4]\n"
"print(range(4, 1, -1)) # Prints [4, 3, 2]\n"
"[/codeblock]\n"
"Чтобы выполнить итерацию по [Array] в обратном направлении, используйте:\n"
"[codeblock]\n"
"var array = [3, 6, 9]\n"
"for i in range(array.size() - 1, -1, -1):\n"
"\tprint(array[i])\n"
"[/codeblock]\n"
"Получаем на выходе:\n"
"[codeblock lang=text]\n"
"9\n"
"6\n"
"3\n"
"[/codeblock]\n"
"Чтобы выполнить итерацию по [float], преобразуйте их в цикле.\n"
"[codeblock]\n"
"for i in range (3, 0, -1):\n"
"\tprint(i / 10.0)\n"
"[/codeblock]\n"
"Получаем на выходе:\n"
"[codeblock lang=text]\n"
"0.3\n"
"0.2\n"
"0.1\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if the given [Object]-derived class exists in "
"[ClassDB]. Note that [Variant] data types are not registered in [ClassDB].\n"
"[codeblock]\n"
"type_exists(\"Sprite2D\") # Returns true\n"
"type_exists(\"NonExistentClass\") # Returns false\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]true[/code], если данный [Object]-производный класс "
"существует в [ClassDB]. Учитывайте, что [Variant] типы данных не "
"зарегестрированны в [ClassDB].\n"
"[codeblock]\n"
"type_exists(\"Sprite2D\") # Возвращает true\n"
"type_exists(\"NonExistentClass\") # Возвращает false\n"
"[/codeblock]"

msgid ""
"Constant that represents how many times the diameter of a circle fits around "
"its perimeter. This is equivalent to [code]TAU / 2[/code], or 180 degrees in "
"rotations."
msgstr ""
"Константа, которая показывает, сколько раз диаметр окружности укладывается "
"вокруг её периметра. Это эквивалентно [code]TAU / 2[/code], или повороту на "
"180 градусов."

msgid ""
"The circle constant, the circumference of the unit circle in radians. This is "
"equivalent to [code]PI * 2[/code], or 360 degrees in rotations."
msgstr ""
"Константа окружности, длина окружности круга в радианах. Это эквивалентно "
"числу [code]PI * 2[/code], или повороту в 360 градусов."

msgid ""
"Positive floating-point infinity. This is the result of floating-point "
"division when the divisor is [code]0.0[/code]. For negative infinity, use "
"[code]-INF[/code]. Dividing by [code]-0.0[/code] will result in negative "
"infinity if the numerator is positive, so dividing by [code]0.0[/code] is not "
"the same as dividing by [code]-0.0[/code] (despite [code]0.0 == -0.0[/code] "
"returning [code]true[/code]).\n"
"[b]Warning:[/b] Numeric infinity is only a concept with floating-point "
"numbers, and has no equivalent for integers. Dividing an integer number by "
"[code]0[/code] will not result in [constant INF] and will result in a run-"
"time error instead."
msgstr ""
"Положительная бесконечность с плавающей точкой. Это результат деления с "
"плавающей точкой, когда делитель равен [code]0.0[/code]. Для отрицательной "
"бесконечности, используйте [code]-INF[/code]. Деление на [code]-0.0[/code] "
"приведет к отрицательной бесконечности, если числитель положительный, поэтому "
"деление на [code]0.0[/code] не то же самое, что деление на [code]-0.0[/code] "
"(несмотря на то, что [code]0.0 == -0.0[/code] возвращает [code]true[/code]).\n"
"[b]Внимание:[/b] Числовая бесконечность является понятием только для чисел с "
"плавающей точкой и не имеет эквивалента для целых чисел. Деление целого числа "
"на [code]0[/code] не приведет к [constant INF] и вместо этого приведет к "
"ошибке времени выполнения."

msgid ""
"\"Not a Number\", an invalid floating-point value. It is returned by some "
"invalid operations, such as dividing floating-point [code]0.0[/code] by "
"[code]0.0[/code].\n"
"[constant NAN] has special properties, including that [code]!=[/code] always "
"returns [code]true[/code], while other comparison operators always return "
"[code]false[/code]. This is true even when comparing with itself ([code]NAN "
"== NAN[/code] returns [code]false[/code] and [code]NAN != NAN[/code] returns "
"[code]true[/code]). Due to this, you must use [method @GlobalScope.is_nan] to "
"check whether a number is equal to [constant NAN].\n"
"[b]Warning:[/b] \"Not a Number\" is only a concept with floating-point "
"numbers, and has no equivalent for integers. Dividing an integer [code]0[/"
"code] by [code]0[/code] will not result in [constant NAN] and will result in "
"a run-time error instead."
msgstr ""
"\"Не число\" (или NaN), недопустимое значение с плавающей точкой. Его "
"возвращают некоторые некорректные операции, такие как деление числа с "
"плавающей точкой [code]0.0[/code] на [code]0.0[/code].\n"
"[constant NAN] обладает особыми свойствами, включая то, что [code]!=[/code] "
"всегда возвращает [code]true[/code], пока другие операторы сравнения всегда "
"возвращают [code]false[/code]. Это справедливо даже при сравнении самой "
"константы с собой ([code]NAN == NAN[/code] возвращает [code]false[/code] и "
"[code]NAN != NAN[/code] возвращает [code]true[/code]). Из-за этой особенности "
"необходимо использовать [method @GlobalScope.is_nan], чтобы проверить, что "
"число равно [constant NAN].\n"
"[b]Внимание:[/b] \"Не число\" (или NaN) является понятием только для чисел с "
"плавающей точкой и не имеет эквивалента для целых чисел. Деление целого числа "
"[code]0[/code] на [code]0[/code] не приведет к [constant NAN] и вместо этого "
"приведет к ошибке времени выполнения."

msgid ""
"Marks a class or a method as abstract.\n"
"An abstract class is a class that cannot be instantiated directly. Instead, "
"it is meant to be inherited by other classes. Attempting to instantiate an "
"abstract class will result in an error.\n"
"An abstract method is a method that has no implementation. Therefore, a "
"newline or a semicolon is expected after the function header. This defines a "
"contract that inheriting classes must conform to, because the method "
"signature must be compatible when overriding.\n"
"Inheriting classes must either provide implementations for all abstract "
"methods, or the inheriting class must be marked as abstract. If a class has "
"at least one abstract method (either its own or an unimplemented inherited "
"one), then it must also be marked as abstract. However, the reverse is not "
"true: an abstract class is allowed to have no abstract methods.\n"
"[codeblock]\n"
"@abstract class Shape:\n"
"\t@abstract func draw()\n"
"\n"
"class Circle extends Shape:\n"
"\tfunc draw():\n"
"\t\tprint(\"Drawing a circle.\")\n"
"\n"
"class Square extends Shape:\n"
"\tfunc draw():\n"
"\t\tprint(\"Drawing a square.\")\n"
"[/codeblock]"
msgstr ""
"Помечает класс или метод как абстрактный.\n"
"Абстрактный класс — это класс, экземпляр которого невозможно создать "
"напрямую. Вместо этого он предназначен для наследования другими классами. "
"Попытка создать экземпляр абстрактного класса приведёт к ошибке.\n"
"Абстрактный метод — это метод, не имеющий реализации. Поэтому после заголовка "
"функции ожидается символ новой строки или точка с запятой. Это определяет "
"соглашение, которому должны соответствовать наследующие классы, поскольку "
"сигнатура метода должна быть совместима при переопределении.\n"
"Наследующие классы должны либо предоставлять реализации для всех абстрактных "
"методов, либо наследующий класс должен быть помечен как абстрактный. Если у "
"класса есть хотя бы один абстрактный метод (собственный или нереализованный "
"унаследованный), то он также должен быть помечен как абстрактный. Однако "
"обратное неверно: абстрактный класс может не иметь абстрактных методов.\n"
"[codeblock]\n"
"@abstract class Shape:\n"
"\t@abstract func draw()\n"
"\n"
"class Circle extends Shape:\n"
"\tfunc draw():\n"
"\t\tprint(\"Рисование круга.\")\n"
"\n"
"class Square extends Shape:\n"
"\tfunc draw():\n"
"\t\tprint(\"Рисование квадрата.\")\n"
"[/codeblock]"

msgid ""
"Mark the following property as exported (editable in the Inspector dock and "
"saved to disk). To control the type of the exported property, use the type "
"hint notation.\n"
"[codeblock]\n"
"extends Node\n"
"\n"
"enum Direction {LEFT, RIGHT, UP, DOWN}\n"
"\n"
"# Built-in types.\n"
"@export var string = \"\"\n"
"@export var int_number = 5\n"
"@export var float_number: float = 5\n"
"\n"
"# Enums.\n"
"@export var type: Variant.Type\n"
"@export var format: Image.Format\n"
"@export var direction: Direction\n"
"\n"
"# Resources.\n"
"@export var image: Image\n"
"@export var custom_resource: CustomResource\n"
"\n"
"# Nodes.\n"
"@export var node: Node\n"
"@export var custom_node: CustomNode\n"
"\n"
"# Typed arrays.\n"
"@export var int_array: Array[int]\n"
"@export var direction_array: Array[Direction]\n"
"@export var image_array: Array[Image]\n"
"@export var node_array: Array[Node]\n"
"[/codeblock]\n"
"[b]Note:[/b] Custom resources and nodes should be registered as global "
"classes using [code]class_name[/code], since the Inspector currently only "
"supports global classes. Otherwise, a less specific type will be exported "
"instead.\n"
"[b]Note:[/b] Node export is only supported in [Node]-derived classes and has "
"a number of other limitations."
msgstr ""
"Отметьте следующее свойство как экспортированное (его можно редактировать в "
"панели инспектора и сохранить на диске). Для управления типом экспортируемого "
"свойства используйте нотацию подсказки типа.\n"
"[codeblock]\n"
"extends Node\n"
"\n"
"enum Direction {LEFT, RIGHT, UP, DOWN}\n"
"\n"
"# встроенные типы.\n"
"@export var string = \"\"\n"
"@export var int_number = 5\n"
"@export var float_number: float = 5\n"
"\n"
"# Перечисления\n"
"@export var type: Variant.Type\n"
"@export var format: Image.Format\n"
"@export var direction: Direction\n"
"\n"
"# Ресурсы.\n"
"@export var image: Image\n"
"@export var custom_resource: CustomResource\n"
"\n"
"# Узлы.\n"
"@export var node: Node\n"
"@export var custom_node: CustomNode\n"
"\n"
"# Типизированные массивы.\n"
"@export var int_array: Array[int]\n"
"@export var direction_array: Array[Direction]\n"
"@export var image_array: Array[Image]\n"
"@export var node_array: Array[Node]\n"
"[/codeblock]\n"
"[b]Примечание.[/b] Пользовательские ресурсы и узлы должны быть "
"зарегистрированы как глобальные классы с использованием [code]class_name[/"
"code].\n"
"[b]Примечание:[/b] Экспорт узлов поддерживается только в классах, производных "
"от [Node], и имеет ряд других ограничений."

msgid ""
"Define a new category for the following exported properties. This helps to "
"organize properties in the Inspector dock.\n"
"See also [constant PROPERTY_USAGE_CATEGORY].\n"
"[codeblock]\n"
"@export_category(\"Statistics\")\n"
"@export var hp = 30\n"
"@export var speed = 1.25\n"
"[/codeblock]\n"
"[b]Note:[/b] Categories in the Inspector dock's list usually divide "
"properties coming from different classes (Node, Node2D, Sprite, etc.). For "
"better clarity, it's recommended to use [annotation @export_group] and "
"[annotation @export_subgroup], instead."
msgstr ""
"Определяет новую категорию для следующих экспортируемых свойств. Помогает "
"организовать свойства в Инспекторском доке.\n"
"Также просмотрите [constant PROPERTY_USAGE_CATEGORY].\n"
"[codeblock]\n"
"@export_category(\"Statistics\")\n"
"@export var hp = 30\n"
"@export var speed = 1.25\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Категории в листе Инспекторского дока обычно разделяют "
"свойства с других классов (Node, Node2D, Sprite, и др.). Для лучшего "
"понимания, вместо этого рекомендуется использовать [annotation @export_group] "
"и [annotation @export_subgroup]."

msgid ""
"Export a [Color], [Array][lb][Color][rb], or [PackedColorArray] property "
"without allowing its transparency ([member Color.a]) to be edited.\n"
"See also [constant PROPERTY_HINT_COLOR_NO_ALPHA].\n"
"[codeblock]\n"
"@export_color_no_alpha var dye_color: Color\n"
"@export_color_no_alpha var dye_colors: Array[Color]\n"
"[/codeblock]"
msgstr ""
"Экспорт свойства [Color] без разрешения редактирования его прозрачности "
"([member Color.a])\n"
"См. также [constant PROPERTY_HINT_COLOR_NO_ALPHA].\n"
"[codeblock]\n"
"@export_color_no_alpha var dye_color: Color\n"
"@export_color_no_alpha var dye_colors: Array[Color]\n"
"[/codeblock]"

msgid ""
"Allows you to set a custom hint, hint string, and usage flags for the "
"exported property. Note that there's no validation done in GDScript, it will "
"just pass the parameters to the editor.\n"
"[codeblock]\n"
"@export_custom(PROPERTY_HINT_NONE, \"suffix:m\") var suffix: Vector3\n"
"[/codeblock]\n"
"[b]Note:[/b] Regardless of the [param usage] value, the [constant "
"PROPERTY_USAGE_SCRIPT_VARIABLE] flag is always added, as with any explicitly "
"declared script variable."
msgstr ""
"Позволяет устанавливать пользовательскую подсказку, строку подсказки и флаги "
"использования для экспортируемого свойства. Обратите внимание, что в GDScript "
"нет проверки, он просто передает параметры в редактор.\n"
"[codeblock]\n"
"@export_custom(PROPERTY_HINT_NODE, \"suffix:m\") var suffix: Vector3\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Независимо от значения [param usage] флаг [constant "
"PROPERTY_USAGE_SCRIPT_VARIABLE] всегда добавляется, как и в случае с любой, "
"явно объявленной переменной скрипта."

msgid ""
"Export a [String], [Array][lb][String][rb], or [PackedStringArray] property "
"as a path to a directory. The path will be limited to the project folder and "
"its subfolders. See [annotation @export_global_dir] to allow picking from the "
"entire filesystem.\n"
"See also [constant PROPERTY_HINT_DIR].\n"
"[codeblock]\n"
"@export_dir var sprite_folder_path: String\n"
"@export_dir var sprite_folder_paths: Array[String]\n"
"[/codeblock]"
msgstr ""
"Экспортируйте свойство [String], [Array][lb][String][rb] или "
"[PackedStringArray] как путь к каталогу. Путь будет ограничен папкой проекта "
"и ее подпапками. См. [annotation @export_global_dir], чтобы разрешить выбор "
"из всей файловой системы.\n"
"См. также [constant PROPERTY_HINT_DIR]\n"
"[codeblock]\n"
"@export_dir var sprite_folder_path: String\n"
"@export_dir var sprite_folder_paths: Array[String]\n"
"[/codeblock]"

msgid ""
"Export an [int], [String], [Array][lb][int][rb], [Array][lb][String][rb], "
"[PackedByteArray], [PackedInt32Array], [PackedInt64Array], or "
"[PackedStringArray] property as an enumerated list of options (or an array of "
"options). If the property is an [int], then the index of the value is stored, "
"in the same order the values are provided. You can add explicit values using "
"a colon. If the property is a [String], then the value is stored.\n"
"See also [constant PROPERTY_HINT_ENUM].\n"
"[codeblock]\n"
"@export_enum(\"Warrior\", \"Magician\", \"Thief\") var character_class: int\n"
"@export_enum(\"Slow:30\", \"Average:60\", \"Very Fast:200\") var "
"character_speed: int\n"
"@export_enum(\"Rebecca\", \"Mary\", \"Leah\") var character_name: String\n"
"\n"
"@export_enum(\"Sword\", \"Spear\", \"Mace\") var character_items: Array[int]\n"
"@export_enum(\"double_jump\", \"climb\", \"dash\") var character_skills: "
"Array[String]\n"
"[/codeblock]\n"
"If you want to set an initial value, you must specify it explicitly:\n"
"[codeblock]\n"
"@export_enum(\"Rebecca\", \"Mary\", \"Leah\") var character_name: String = "
"\"Rebecca\"\n"
"[/codeblock]\n"
"If you want to use named GDScript enums, then use [annotation @export] "
"instead:\n"
"[codeblock]\n"
"enum CharacterName {REBECCA, MARY, LEAH}\n"
"@export var character_name: CharacterName\n"
"\n"
"enum CharacterItem {SWORD, SPEAR, MACE}\n"
"@export var character_items: Array[CharacterItem]\n"
"[/codeblock]"
msgstr ""
"Экспортируйте свойство [int], [String], [Array][lb][int][rb], [Array][lb]"
"[String][rb], [PackedByteArray], [PackedInt32Array], [PackedInt64Array] или "
"[PackedStringArray] как перечисленный список параметров (или массив "
"параметров). Если свойство имеет тип [int], то индекс значения сохраняется в "
"том же порядке, в котором указаны значения. Вы можете добавлять явные "
"значения с помощью двоеточия. Если свойство имеет тип [String], то значение "
"сохраняется.\n"
"См. также [constant PROPERTY_HINT_ENUM].\n"
"[codeblock]\n"
"@export_enum(\"Warrior\", \"Magician\", \"Thief\") var character_class: int\n"
"@export_enum(\"Slow:30\", \"Average:60\", \"Very Fast:200\") var "
"character_speed: int\n"
"@export_enum(\"Rebecca\", \"Mary\", \"Leah\") var character_name: String\n"
"\n"
"@export_enum(\"Sword\", \"Spear\", \"Mace\") var character_items: Array[int]\n"
"@export_enum(\"double_jump\", \"climb\", \"dash\") var character_skills: "
"Array[String]\n"
"[/codeblock]\n"
"Если вы хотите задать начальное значение, вы должны указать его явно:\n"
"[codeblock]\n"
"@export_enum(\"Rebecca\", \"Mary\", \"Leah\") var character_name: String = "
"\"Rebecca\"\n"
"[/codeblock]\n"
"Если вы хотите использовать именованные перечисления GDScript, то вместо "
"этого используйте [annotation @export]:\n"
"[codeblock]\n"
"enum CharacterName {REBECCA, MARY, LEAH}\n"
"@export var character_name: CharacterName\n"
"\n"
"enum CharacterItem {SWORD, SPEAR, MACE}\n"
"@export var character_items: Array[CharacterItem]\n"
"[/codeblock]"

msgid ""
"Export a floating-point property with an easing editor widget. Additional "
"hints can be provided to adjust the behavior of the widget. [code]"
"\"attenuation\"[/code] flips the curve, which makes it more intuitive for "
"editing attenuation properties. [code]\"positive_only\"[/code] limits values "
"to only be greater than or equal to zero.\n"
"See also [constant PROPERTY_HINT_EXP_EASING].\n"
"[codeblock]\n"
"@export_exp_easing var transition_speed\n"
"@export_exp_easing(\"attenuation\") var fading_attenuation\n"
"@export_exp_easing(\"positive_only\") var effect_power\n"
"@export_exp_easing var speeds: Array[float]\n"
"[/codeblock]"
msgstr ""
"Экспортирует свойство с плавающей точкой с помощью виджета редактора "
"плавности. Дополнительные подсказки могут быть предоставлены, чтобы "
"подкорректировать действия виджета. [code]\"attenuation\"[/code] "
"(\"затухание\") переворачивает ломаную, что делает её более интуитивной для "
"редактирования свойств затухания. [code]\"positive_only\"[/code] "
"(\"только_положительные\") ограничивает диапазон значений до 0, тем самым "
"оставляя только 0 и числа больше 0.\n"
"Также просмотрите [constant PROPERTY_HINT_EXP_EASING].\n"
"[codeblock]\n"
"@export_exp_easing var transition_speed\n"
"@export_exp_easing(\"attenuation\") var fading_attenuation\n"
"@export_exp_easing(\"positive_only\") var effect_power\n"
"@export_exp_easing var speeds: Array[float]\n"
"[/codeblock]"

msgid ""
"Export a [String], [Array][lb][String][rb], or [PackedStringArray] property "
"as a path to a file. The path will be limited to the project folder and its "
"subfolders. See [annotation @export_global_file] to allow picking from the "
"entire filesystem.\n"
"If [param filter] is provided, only matching files will be available for "
"picking.\n"
"See also [constant PROPERTY_HINT_FILE].\n"
"[codeblock]\n"
"@export_file var sound_effect_path: String\n"
"@export_file(\"*.txt\") var notes_path: String\n"
"@export_file var level_paths: Array[String]\n"
"[/codeblock]\n"
"[b]Note:[/b] The file will be stored and referenced as UID, if available. "
"This ensures that the reference is valid even when the file is moved. You can "
"use [ResourceUID] methods to convert it to path."
msgstr ""
"Экспортируйте свойство [String], [Array][lb][String][rb] или "
"[PackedStringArray] как путь к файлу. Путь будет ограничен папкой проекта и "
"её подпапками. См. [annotation @export_global_file], чтобы разрешить выбор из "
"всей файловой системы.\n"
"Если указан [param filter], для выбора будут доступны только соответствующие "
"файлы.\n"
"См. также [constant PROPERTY_HINT_FILE].\n"
"[codeblock]\n"
"@export_file var sound_effect_path: String\n"
"@export_file(\"*.txt\") var notes_path: String\n"
"@export_file var level_paths: Array[String]\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Файл будет сохранён и будет указан как UID, если он "
"доступен. Это гарантирует корректность ссылки даже при перемещении файла. Вы "
"можете преобразовать её в путь, используя методы [ResourceUID]."

msgid ""
"Same as [annotation @export_file], except the file will be stored as a raw "
"path. This means that it may become invalid when the file is moved. If you "
"are exporting a [Resource] path, consider using [annotation @export_file] "
"instead."
msgstr ""
"То же, что и [annotation @export_file], но файл будет сохранён как "
"необработанный путь. Это означает, что он может стать недействительным при "
"перемещении файла. Если вы экспортируете путь [Resource], рассмотрите "
"возможность использования [annotation @export_file]."

msgid ""
"Export an integer property as a bit flag field. This allows to store several "
"\"checked\" or [code]true[/code] values with one property, and comfortably "
"select them from the Inspector dock.\n"
"See also [constant PROPERTY_HINT_FLAGS].\n"
"[codeblock]\n"
"@export_flags(\"Fire\", \"Water\", \"Earth\", \"Wind\") var spell_elements = "
"0\n"
"[/codeblock]\n"
"You can add explicit values using a colon:\n"
"[codeblock]\n"
"@export_flags(\"Self:4\", \"Allies:8\", \"Foes:16\") var spell_targets = 0\n"
"[/codeblock]\n"
"You can also combine several flags:\n"
"[codeblock]\n"
"@export_flags(\"Self:4\", \"Allies:8\", \"Self and Allies:12\", \"Foes:16\")\n"
"var spell_targets = 0\n"
"[/codeblock]\n"
"[b]Note:[/b] A flag value must be at least [code]1[/code] and at most [code]2 "
"** 32 - 1[/code].\n"
"[b]Note:[/b] Unlike [annotation @export_enum], the previous explicit value is "
"not taken into account. In the following example, A is 16, B is 2, C is 4.\n"
"[codeblock]\n"
"@export_flags(\"A:16\", \"B\", \"C\") var x\n"
"[/codeblock]\n"
"You can also use the annotation on [Array][lb][int][rb], [PackedByteArray], "
"[PackedInt32Array], and [PackedInt64Array]\n"
"[codeblock]\n"
"@export_flags(\"Fire\", \"Water\", \"Earth\", \"Wind\") var phase_elements: "
"Array[int]\n"
"[/codeblock]"
msgstr ""
"Экспортировать целочисленное свойство как поле битового флага. Это позволяет "
"хранить несколько значений \"checked\" или [code]true[/code] с одним "
"свойством и удобно выбирать их из панели инспектора.\n"
"См. также [constant PROPERTY_HINT_FLAGS].\n"
"[codeblock]\n"
"@export_flags(\"Fire\", \"Water\", \"Earth\", \"Wind\") var spell_elements = "
"0\n"
"[/codeblock]\n"
"Вы можете добавлять явные значения, используя двоеточие:\n"
"[codeblock]\n"
"@export_flags(\"Self:4\", \"Allies:8\", \"Foes:16\") var spell_targets = 0\n"
"[/codeblock]\n"
"Вы также можете объединить несколько флагов:\n"
"[codeblock]\n"
"@export_flags(\"Self:4\", \"Allies:8\", \"Self and Allies:12\", \"Foes:16\")\n"
"var spell_targets = 0\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Значение флага должно быть не менее [code]1[/code] и не "
"более [code]2 ** 32 - 1[/code].\n"
"[b]Примечание:[/b] В отличие от [annotation @export_enum], предыдущее явное "
"значение не учитывается. В следующем примере A равно 16, B равно 2, C равно "
"4.\n"
"[codeblock]\n"
"@export_flags(\"A:16\", \"B\", \"C\") var x\n"
"[/codeblock]\n"
"Вы также можете использовать аннотацию на [Array][lb][int][rb], "
"[PackedByteArray], [PackedInt32Array], и [PackedInt64Array]\n"
"[codeblock]\n"
"@export_flags(\"Fire\", \"Water\", \"Earth\", \"Wind\") var phase_elements: "
"Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 2D navigation layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/2d_navigation/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_2D_NAVIGATION].\n"
"[codeblock]\n"
"@export_flags_2d_navigation var navigation_layers: int\n"
"@export_flags_2d_navigation var navigation_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Экспортирует свойство целого числа как поле битового флага для 2D слоев "
"навигации. Виджет в вкладке инспектора будет использовать имена слоев, "
"определённых в [member ProjectSettings.layer_names/2d_navigation/layer_1].\n"
"Также просмотрите [constant PROPERTY_HINT_LAYERS_2D_NAVIGATION].\n"
"[codeblock]\n"
"@export_flags_2d_navigation var navigation_layers: int\n"
"@export_flags_2d_navigation var navigation_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 2D physics layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/2d_physics/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_2D_PHYSICS].\n"
"[codeblock]\n"
"@export_flags_2d_physics var physics_layers: int\n"
"@export_flags_2d_physics var physics_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Экспортирует свойство целого числа как поле битового флага для 2D физики "
"слоев. Виджет в окне Инспектора будет использовать имена слоев, определённых "
"в [member ProjectSettings.layer_names/2d_physics/layer_1].\n"
"Также просмотрите [constant PROPERTY_HINT_LAYERS_2D_PHYSICS].\n"
"[codeblock]\n"
"@export_flags_2d_physics var physics_layers: int\n"
"@export_flags_2d_physics var physics_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 2D render layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/2d_render/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_2D_RENDER].\n"
"[codeblock]\n"
"@export_flags_2d_render var render_layers: int\n"
"@export_flags_2d_render var render_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Экспортирует свойство целого числа как поле битового флага для рендеринга 2D "
"слоев. Виджет в окне Инспектора будет использовать имена слоев, указанных в "
"[member ProjectSettings.layer_names/2d_render/layer_1].\n"
"Также просмотрите [constant PROPERTY_HINT_LAYERS_2D_RENDER].\n"
"[codeblock]\n"
"@export_flags_2d_render var render_layers: int\n"
"@export_flags_2d_render var render_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 3D navigation layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/3d_navigation/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_3D_NAVIGATION].\n"
"[codeblock]\n"
"@export_flags_3d_navigation var navigation_layers: int\n"
"@export_flags_3d_navigation var navigation_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Экспортирует свойство целого числа как поле битового флага для 3D слоёв "
"навигации. Виджет в Инспекторском доке будет использовать имена слоёв, "
"указанных в [member ProjectSettings.layer_names/3d_navigation/layer_1].\n"
"Также просмотрите [constant PROPERTY_HINT_LAYERS_3D_NAVIGATION].\n"
"[codeblock]\n"
"@export_flags_3d_navigation var navigation_layers: int\n"
"@export_flags_3d_navigation var navigation_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 3D physics layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/3d_physics/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_3D_PHYSICS].\n"
"[codeblock]\n"
"@export_flags_3d_physics var physics_layers: int\n"
"@export_flags_3d_physics var physics_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Экспортирует свойство целого числа как поле битового флага для 3D физических "
"слоев. Виджет в Инспекторском доке будет использовать имена слоёв, указанных "
"в [member ProjectSettings.layer_names/3d_physics/layer_1].\n"
"Также посмотрите [constant PROPERTY_HINT_LAYERS_3D_PHYSICS].\n"
"[codeblock]\n"
"@export_flags_3d_physics var physics_layers: int\n"
"@export_flags_3d_physics var physics_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for 3D render layers. The "
"widget in the Inspector dock will use the layer names defined in [member "
"ProjectSettings.layer_names/3d_render/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_3D_RENDER].\n"
"[codeblock]\n"
"@export_flags_3d_render var render_layers: int\n"
"@export_flags_3d_render var render_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Экспортирует свойство целого числа как поле битового флага для рендеринга 3D "
"слоев. Виджет в Инспекторском доке будет использовать имена слоёв, указанных "
"в [member ProjectSettings.layer_names/3d_render/layer_1].\n"
"Также посмотрите [constant PROPERTY_HINT_LAYERS_3D_RENDER].\n"
"[codeblock]\n"
"@export_flags_3d_render var render_layers: int\n"
"@export_flags_3d_render var render_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export an integer property as a bit flag field for navigation avoidance "
"layers. The widget in the Inspector dock will use the layer names defined in "
"[member ProjectSettings.layer_names/avoidance/layer_1].\n"
"See also [constant PROPERTY_HINT_LAYERS_AVOIDANCE].\n"
"[codeblock]\n"
"@export_flags_avoidance var avoidance_layers: int\n"
"@export_flags_avoidance var avoidance_layers_array: Array[int]\n"
"[/codeblock]"
msgstr ""
"Экспортирует целочисленное свойство как поле битового флага для слоев "
"избегания навигации. Виджет в Инспекторском доке будет использовать имена "
"слоёв, объявленных в [member ProjectSettings.layer_names/avoidance/layer_1].\n"
"Также посмотрите [constant PROPERTY_HINT_LAYERS_AVOIDANCE].\n"
"[codeblock]\n"
"@export_flags_avoidance var avoidance_layers: int\n"
"@export_flags_avoidance var avoidance_layers_array: Array[int]\n"
"[/codeblock]"

msgid ""
"Export a [String], [Array][lb][String][rb], or [PackedStringArray] property "
"as an absolute path to a directory. The path can be picked from the entire "
"filesystem. See [annotation @export_dir] to limit it to the project folder "
"and its subfolders.\n"
"See also [constant PROPERTY_HINT_GLOBAL_DIR].\n"
"[codeblock]\n"
"@export_global_dir var sprite_folder_path: String\n"
"@export_global_dir var sprite_folder_paths: Array[String]\n"
"[/codeblock]"
msgstr ""
"Экспортирует свойство [String], [Array][lb][String][rb] или "
"[PackedStringArray] как абсолютный путь к каталогу. Путь может быть взят из "
"всей файловой системы. Чтобы ограничиться папкой проекта и ее вложенными "
"папками, смотрите [annotation @export_dir].\n"
"Также просмотрите [constant PROPERTY_HINT_GLOBAL_DIR].\n"
"[codeblock]\n"
"@export_global_dir var sprite_folder_path: String\n"
"@export_global_dir var sprite_folder_paths: Array[String]\n"
"[/codeblock]"

msgid ""
"Export a [String], [Array][lb][String][rb], or [PackedStringArray] property "
"as an absolute path to a file. The path can be picked from the entire "
"filesystem. See [annotation @export_file] to limit it to the project folder "
"and its subfolders.\n"
"If [param filter] is provided, only matching files will be available for "
"picking.\n"
"See also [constant PROPERTY_HINT_GLOBAL_FILE].\n"
"[codeblock]\n"
"@export_global_file var sound_effect_path: String\n"
"@export_global_file(\"*.txt\") var notes_path: String\n"
"@export_global_file var multiple_paths: Array[String]\n"
"[/codeblock]"
msgstr ""
"Экспортируйте свойство [String], [Array][lb][String][rb] или "
"[PackedStringArray] как абсолютный путь к файлу. Путь может быть взят из всей "
"файловой системы. Используйте [annotation @export_file], чтобы ограничить его "
"до папок проекта или его подпапок.\n"
"Если указан [param filter], то для выборки будут доступны только совпадающие "
"файлы.\n"
"Также просмотрите [constant PROPERTY_HINT_GLOBAL_FILE].\n"
"[codeblock]\n"
"@export_global_file var sound_effect_path: String\n"
"@export_global_file(\"*.txt\") var notes_path: String\n"
"@export_global_file var multiple_paths: Array[String]\n"
"[/codeblock]"

msgid ""
"Define a new group for the following exported properties. This helps to "
"organize properties in the Inspector dock. Groups can be added with an "
"optional [param prefix], which would make group to only consider properties "
"that have this prefix. The grouping will break on the first property that "
"doesn't have a prefix. The prefix is also removed from the property's name in "
"the Inspector dock.\n"
"If no [param prefix] is provided, then every following property will be added "
"to the group. The group ends when then next group or category is defined. You "
"can also force end a group by using this annotation with empty strings for "
"parameters, [code]@export_group(\"\", \"\")[/code].\n"
"Groups cannot be nested, use [annotation @export_subgroup] to add subgroups "
"within groups.\n"
"See also [constant PROPERTY_USAGE_GROUP].\n"
"[codeblock]\n"
"@export_group(\"Racer Properties\")\n"
"@export var nickname = \"Nick\"\n"
"@export var age = 26\n"
"\n"
"@export_group(\"Car Properties\", \"car_\")\n"
"@export var car_label = \"Speedy\"\n"
"@export var car_number = 3\n"
"\n"
"@export_group(\"\", \"\")\n"
"@export var ungrouped_number = 3\n"
"[/codeblock]"
msgstr ""
"Определите новую группу для следующих экспортированных свойств. Это поможет "
"упорядочить свойства в доке Инспектора. Группы могут быть добавлены с "
"необязательным префиксом [param prefix], который заставит группу учитывать "
"только те свойства, которые имеют этот префикс. Группировка прервется на "
"первом свойстве, не имеющем префикса. Префикс также будет удален из имени "
"свойства в доке Инспектора.\n"
"Если префикс [param prefix] не указан, то каждое следующее свойство будет "
"добавлено в группу. Группа заканчивается, когда определяется следующая группа "
"или категория. Вы также можете принудительно завершить группу, используя эту "
"аннотацию с пустыми строками в качестве параметров, [code]@export_group(\"\", "
"\"\")[/code].\n"
"Группы не могут быть вложенными, используйте [annotation @export_subgroup] "
"для добавления подгрупп внутри групп.\n"
"См. также [constant PROPERTY_USAGE_GROUP].\n"
"[codeblock]\n"
"@export_group(\"Racer Properties\")\n"
"@export var nickname = \"Nick\"\n"
"@export var age = 26\n"
"\n"
"@export_group(\"Car Properties\", \"car_\")\n"
"@export var car_label = \"Speedy\"\n"
"@export var car_number = 3\n"
"\n"
"@export_group(\"\", \"\")\n"
"@export var ungrouped_number = 3\n"
"[/codeblock]"

msgid ""
"Export a [String], [Array][lb][String][rb], [PackedStringArray], [Dictionary] "
"or [Array][lb][Dictionary][rb] property with a large [TextEdit] widget "
"instead of a [LineEdit]. This adds support for multiline content and makes it "
"easier to edit large amount of text stored in the property.\n"
"See also [constant PROPERTY_HINT_MULTILINE_TEXT].\n"
"[codeblock]\n"
"@export_multiline var character_biography\n"
"@export_multiline var npc_dialogs: Array[String]\n"
"[/codeblock]"
msgstr ""
"Экспортирует свойство [String], [Array][lb][String][rb], [PackedStringArray], "
"[Dictionary] или [Array][lb][Dictionary][rb] с большим виджетом [TextEdit] "
"вместо [LineEdit]. Это добавляет поддержку многострочного содержимого и "
"упрощает редактирование большого объема текста, хранящегося в свойстве.\n"
"См. также [constant PROPERTY_HINT_MULTILINE_TEXT].\n"
"[codeblock]\n"
"@export_multiline var character_biography\n"
"@export_multiline var npc_dialogs: Array[String]\n"
"[/codeblock]"

msgid ""
"Export a [NodePath] or [Array][lb][NodePath][rb] property with a filter for "
"allowed node types.\n"
"See also [constant PROPERTY_HINT_NODE_PATH_VALID_TYPES].\n"
"[codeblock]\n"
"@export_node_path(\"Button\", \"TouchScreenButton\") var some_button\n"
"@export_node_path(\"Button\", \"TouchScreenButton\") var many_buttons: "
"Array[NodePath]\n"
"[/codeblock]\n"
"[b]Note:[/b] The type must be a native class or a globally registered script "
"(using the [code]class_name[/code] keyword) that inherits [Node]."
msgstr ""
"Экспортирует свойство [NodePath] или [Array][lb][NodePath][rb] с фильтром для "
"разрешенных типов узлов.\n"
"См. также [constant PROPERTY_HINT_NODE_PATH_VALID_TYPES].\n"
"[codeblock]\n"
"@export_node_path(\"Button\", \"TouchScreenButton\") var some_button\n"
"@export_node_path(\"Button\", \"TouchScreenButton\") var many_buttons: "
"Array[NodePath]\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Тип должен быть собственным классом или глобально "
"зарегистрированным скриптом (с помощью ключевого слова [code]class_name[/"
"code]), который наследует [Node]."

msgid ""
"Export a [String], [Array][lb][String][rb], or [PackedStringArray] property "
"with a placeholder text displayed in the editor widget when no value is "
"present.\n"
"See also [constant PROPERTY_HINT_PLACEHOLDER_TEXT].\n"
"[codeblock]\n"
"@export_placeholder(\"Name in lowercase\") var character_id: String\n"
"@export_placeholder(\"Name in lowercase\") var friend_ids: Array[String]\n"
"[/codeblock]"
msgstr ""
"Экспортируйте свойство [String], [Array][lb][String][rb] или "
"[PackedStringArray] с текстом-заполнителем, отображаемым в виджете редактора, "
"если значение отсутствует.\n"
"См. также [constant PROPERTY_HINT_PLACEHOLDER_TEXT].\n"
"[codeblock]\n"
"@export_placeholder(\"Name in lowercase\") var character_id: String\n"
"@export_placeholder(\"Name in lowercase\") var friend_ids: Array[String]\n"
"[/codeblock]"

msgid ""
"Export an [int], [float], [Array][lb][int][rb], [Array][lb][float][rb], "
"[PackedByteArray], [PackedInt32Array], [PackedInt64Array], "
"[PackedFloat32Array], or [PackedFloat64Array] property as a range value. The "
"range must be defined by [param min] and [param max], as well as an optional "
"[param step] and a variety of extra hints. The [param step] defaults to "
"[code]1[/code] for integer properties. For floating-point numbers this value "
"depends on your [member EditorSettings.interface/inspector/"
"default_float_step] setting.\n"
"If hints [code]\"or_greater\"[/code] and [code]\"or_less\"[/code] are "
"provided, the editor widget will not cap the value at range boundaries. The "
"[code]\"exp\"[/code] hint will make the edited values on range to change "
"exponentially. The [code]\"hide_slider\"[/code] hint will hide the slider "
"element of the editor widget.\n"
"Hints also allow to indicate the units for the edited value. Using [code]"
"\"radians_as_degrees\"[/code] you can specify that the actual value is in "
"radians, but should be displayed in degrees in the Inspector dock (the range "
"values are also in degrees). [code]\"degrees\"[/code] allows to add a degree "
"sign as a unit suffix (the value is unchanged). Finally, a custom suffix can "
"be provided using [code]\"suffix:unit\"[/code], where \"unit\" can be any "
"string.\n"
"See also [constant PROPERTY_HINT_RANGE].\n"
"[codeblock]\n"
"@export_range(0, 20) var number\n"
"@export_range(-10, 20) var number\n"
"@export_range(-10, 20, 0.2) var number: float\n"
"@export_range(0, 20) var numbers: Array[float]\n"
"\n"
"@export_range(0, 100, 1, \"or_greater\") var power_percent\n"
"@export_range(0, 100, 1, \"or_greater\", \"or_less\") var health_delta\n"
"\n"
"@export_range(-180, 180, 0.001, \"radians_as_degrees\") var angle_radians\n"
"@export_range(0, 360, 1, \"degrees\") var angle_degrees\n"
"@export_range(-8, 8, 2, \"suffix:px\") var target_offset\n"
"[/codeblock]"
msgstr ""
"Экспортирует свойство [int], [float], [Array][lb][int][rb], [Array][lb][float]"
"[rb], [PackedByteArray], [PackedInt32Array], [PackedInt64Array], "
"[PackedFloat32Array] или [PackedFloat64Array] как значение диапазона. "
"Диапазон должен быть определен [param min] и [param max], а также "
"необязательным [param step] и различными дополнительными подсказками. [param "
"step] по умолчанию равен [code]1[/code] для целочисленных свойств. Для чисел "
"с плавающей точкой это значение зависит от настройки [member "
"EditorSettings.interface/inspector/default_float_step].\n"
"Если указаны подсказки [code]\"or_greater\"[/code] и [code]\"or_less\"[/"
"code], виджет редактора не будет ограничивать значение на границах диапазона. "
"Подсказка [code]\"exp\"[/code] заставит редактируемые значения в диапазоне "
"изменяться экспоненциально. Подсказка [code]\"hide_slider\"[/code] скроет "
"элемент ползунка виджета редактора.\n"
"Подсказки также позволяют указать единицы измерения для редактируемого "
"значения. С помощью [code]\"radians_as_degrees\"[/code] вы можете указать, "
"что фактическое значение находится в радианах, но должно отображаться в "
"градусах в доке инспектора (значения диапазона также должны быть в градусах). "
"[code]\"degrees\"[/code] позволяет добавить знак градуса в качестве суффикса "
"единицы измерения (значение при этом не изменяется). Наконец, "
"пользовательский суффикс может быть задан с помощью [code]\"suffix:unit\"[/"
"code], где \"unit\" может быть любой строкой.\n"
"См. также [constant PROPERTY_HINT_RANGE].\n"
"[codeblock]\n"
"@export_range(0, 20) var number\n"
"@export_range(-10, 20) var number\n"
"@export_range(-10, 20, 0.2) var number: float\n"
"@export_range(0, 20) var numbers: Array[float]\n"
"\n"
"@export_range(0, 100, 1, \"or_greater\") var power_percent\n"
"@export_range(0, 100, 1, \"or_greater\", \"or_less\") var health_delta\n"
"\n"
"@export_range(-180, 180, 0.001, \"radians_as_degrees\") var angle_radians\n"
"@export_range(0, 360, 1, \"degrees\") var angle_degrees\n"
"@export_range(-8, 8, 2, \"suffix:px\") var target_offset\n"
"[/codeblock]"

msgid ""
"Export a property with [constant PROPERTY_USAGE_STORAGE] flag. The property "
"is not displayed in the editor, but it is serialized and stored in the scene "
"or resource file. This can be useful for [annotation @tool] scripts. Also the "
"property value is copied when [method Resource.duplicate] or [method "
"Node.duplicate] is called, unlike non-exported variables.\n"
"[codeblock]\n"
"var a # Not stored in the file, not displayed in the editor.\n"
"@export_storage var b # Stored in the file, not displayed in the editor.\n"
"@export var c: int # Stored in the file, displayed in the editor.\n"
"[/codeblock]"
msgstr ""
"Экспорт свойства с [constant PROPERTY_USAGE_STORAGE] флажком. Свойство не "
"отображается в редакторе, но оно сериализуется и сохраняется в сцене или "
"файле ресурсов. Это может быть полезно для [annotation @tool] скриптов. Так "
"же значение свойства копируется, когда [method Resource.duplicate] или "
"[method Node.duplicate] вызывается, в отличии от не экспортируемых "
"переменных\n"
"[codeblock]\n"
"var a # Не хранится в файле, не отображается в редакторе .\n"
"@export_storage var b # Хранится в файле, не отображается в редакторе.\n"
"@export var c: int # Хранится в файле, отображается в редакторе.\n"
"[/codeblock]"

msgid ""
"Define a new subgroup for the following exported properties. This helps to "
"organize properties in the Inspector dock. Subgroups work exactly like "
"groups, except they need a parent group to exist. See [annotation "
"@export_group].\n"
"See also [constant PROPERTY_USAGE_SUBGROUP].\n"
"[codeblock]\n"
"@export_group(\"Racer Properties\")\n"
"@export var nickname = \"Nick\"\n"
"@export var age = 26\n"
"\n"
"@export_subgroup(\"Car Properties\", \"car_\")\n"
"@export var car_label = \"Speedy\"\n"
"@export var car_number = 3\n"
"[/codeblock]\n"
"[b]Note:[/b] Subgroups cannot be nested, but you can use the slash separator "
"([code]/[/code]) to achieve the desired effect:\n"
"[codeblock]\n"
"@export_group(\"Car Properties\")\n"
"@export_subgroup(\"Wheels\", \"wheel_\")\n"
"@export_subgroup(\"Wheels/Front\", \"front_wheel_\")\n"
"@export var front_wheel_strength = 10\n"
"@export var front_wheel_mobility = 5\n"
"@export_subgroup(\"Wheels/Rear\", \"rear_wheel_\")\n"
"@export var rear_wheel_strength = 8\n"
"@export var rear_wheel_mobility = 3\n"
"@export_subgroup(\"Wheels\", \"wheel_\")\n"
"@export var wheel_material: PhysicsMaterial\n"
"[/codeblock]"
msgstr ""
"Определите новую подгруппу для следующих экспортируемых свойств. Это помогает "
"организовать свойства в доке инспектора. Подгруппы работают точно так же, как "
"группы, за исключением того, что для них нужна родительская группа. См. "
"[annotation @export_group].\n"
"См. также [constant PROPERTY_USAGE_SUBGROUP].\n"
"[codeblock]\n"
"@export_group(\"Racer Properties\")\n"
"@export var nickname = \"Nick\"\n"
"@export var age = 26\n"
"\n"
"@export_subgroup(\"Car Properties\", \"car_\")\n"
"@export var car_label = \"Speedy\"\n"
"@export var car_number = 3\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Подгруппы не могут быть вложенными, но вы можете "
"использовать разделитель слеш ([code]/[/code]) для достижения желаемого "
"эффекта:\n"
"[codeblock]\n"
"@export_group(\"Car Properties\")\n"
"@export_subgroup(\"Wheels\", \"wheel_\")\n"
"@export_subgroup(\"Wheels/Front\", \"front_wheel_\")\n"
"@export var front_wheel_strength = 10\n"
"@export var front_wheel_mobility = 5\n"
"@export_subgroup(\"Wheels/Rear\", \"rear_wheel_\")\n"
"@export var rear_wheel_strength = 8\n"
"@export var rear_wheel_mobility = 3\n"
"@export_subgroup(\"Wheels\", \"wheel_\")\n"
"@export var wheel_material: PhysicsMaterial\n"
"[/codeblock]"

msgid ""
"Export a [Callable] property as a clickable button with the label [param "
"text]. When the button is pressed, the callable is called.\n"
"If [param icon] is specified, it is used to fetch an icon for the button via "
"[method Control.get_theme_icon], from the [code]\"EditorIcons\"[/code] theme "
"type. If [param icon] is omitted, the default [code]\"Callable\"[/code] icon "
"is used instead.\n"
"Consider using the [EditorUndoRedoManager] to allow the action to be reverted "
"safely.\n"
"See also [constant PROPERTY_HINT_TOOL_BUTTON].\n"
"[codeblock]\n"
"@tool\n"
"extends Sprite2D\n"
"\n"
"@export_tool_button(\"Hello\") var hello_action = hello\n"
"@export_tool_button(\"Randomize the color!\", \"ColorRect\")\n"
"var randomize_color_action = randomize_color\n"
"\n"
"func hello():\n"
"\tprint(\"Hello world!\")\n"
"\n"
"func randomize_color():\n"
"\tvar undo_redo = EditorInterface.get_editor_undo_redo()\n"
"\tundo_redo.create_action(\"Randomized Sprite2D Color\")\n"
"\tundo_redo.add_do_property(self, &\"self_modulate\", Color(randf(), randf(), "
"randf()))\n"
"\tundo_redo.add_undo_property(self, &\"self_modulate\", self_modulate)\n"
"\tundo_redo.commit_action()\n"
"[/codeblock]\n"
"[b]Note:[/b] The property is exported without the [constant "
"PROPERTY_USAGE_STORAGE] flag because a [Callable] cannot be properly "
"serialized and stored in a file.\n"
"[b]Note:[/b] In an exported project neither [EditorInterface] nor "
"[EditorUndoRedoManager] exist, which may cause some scripts to break. To "
"prevent this, you can use [method Engine.get_singleton] and omit the static "
"type from the variable declaration:\n"
"[codeblock]\n"
"var undo_redo = "
"Engine.get_singleton(&\"EditorInterface\").get_editor_undo_redo()\n"
"[/codeblock]\n"
"[b]Note:[/b] Avoid storing lambda callables in member variables of "
"[RefCounted]-based classes (e.g. resources), as this can lead to memory "
"leaks. Use only method callables and optionally [method Callable.bind] or "
"[method Callable.unbind]."
msgstr ""
"Экспортируйте свойство [Callable] как нажимаемую кнопку с меткой [param "
"text]. При нажатии кнопки вызывается вызываемое свойство.\n"
"Если указан [param icon], он используется для получения значка для кнопки "
"через [method Control.get_theme_icon] из типа темы [code]\"EditorIcons\"[/"
"code]. Если [param icon] опущен, вместо него используется значок по умолчанию "
"[code]\"Callable\"[/code].\n"
"Рассмотрите возможность использования [EditorUndoRedoManager], чтобы "
"обеспечить безопасную отмену действия.\n"
"Смотрите также [constant PROPERTY_HINT_TOOL_BUTTON].\n"
"[codeblock]\n"
"@tool\n"
"extends Sprite2D\n"
"\n"
"@export_tool_button(\"Hello\") var hello_action = hello\n"
"@export_tool_button(\"Randomize the color!\", \"ColorRect\")\n"
"var randomize_color_action = randomize_color\n"
"\n"
"func hello():\n"
"\tprint(\"Hello world!\")\n"
"\n"
"func randomize_color():\n"
"\tvar undo_redo = EditorInterface.get_editor_undo_redo()\n"
"\tundo_redo.create_action(\"Randomized Sprite2D Color\")\n"
"\tundo_redo.add_do_property(self, &\"self_modulate\", Color(randf(), randf(), "
"randf()))\n"
"\tundo_redo.add_undo_property(self, &\"self_modulate\", self_modulate)\n"
"\tundo_redo.commit_action()\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Свойство экспортируется без флага [constant "
"PROPERTY_USAGE_STORAGE], поскольку [Callable] не может быть правильно "
"сериализован и сохранен в файле.\n"
"[b]Примечание:[/b] В экспортированном проекте нет ни [EditorInterface], ни "
"[EditorUndoRedoManager], что может привести к поломке некоторых скриптов. "
"Чтобы предотвратить это, можно использовать [method Engine.get_singleton] и "
"опустить статический тип из объявления переменной:\n"
"[codeblock]\n"
"var undo_redo = "
"Engine.get_singleton(&\"EditorInterface\").get_editor_undo_redo()\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Избегайте хранения вызываемых лямбда-функций в переменных-"
"членах классов на основе [RefCounted] (например, ресурсов), так как это может "
"привести к утечкам памяти. Используйте только вызываемые методы и, по "
"желанию, [method Callable.bind] или [method Callable.unbind]."

msgid ""
"Add a custom icon to the current script. The icon specified at [param "
"icon_path] is displayed in the Scene dock for every node of that class, as "
"well as in various editor dialogs.\n"
"[codeblock]\n"
"@icon(\"res://path/to/class/icon.svg\")\n"
"[/codeblock]\n"
"[b]Note:[/b] Only the script can have a custom icon. Inner classes are not "
"supported.\n"
"[b]Note:[/b] As annotations describe their subject, the [annotation @icon] "
"annotation must be placed before the class definition and inheritance.\n"
"[b]Note:[/b] Unlike most other annotations, the argument of the [annotation "
"@icon] annotation must be a string literal (constant expressions are not "
"supported)."
msgstr ""
"Добавить пользовательский значок в текущий скрипт. Значок, указанный в [param "
"icon_path], отображается в доке сцены для каждого узла этого класса, а также "
"в различных диалоговых окнах редактора.\n"
"[codeblock]\n"
"@icon(\"res://path/to/class/icon.svg\")\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Только скрипт может иметь свой значок. Внутренние классы "
"не поддерживаются.\n"
"[b]Примечание:[/b] Поскольку аннотации описывают свой предмет, аннотация "
"[annotation @icon] должна быть размещена перед определением класса и "
"наследованием.\n"
"[b]Примечание:[/b] В отличие от большинства других аннотаций, аргумент "
"аннотации [annotation @icon] должен быть строковым литералом (константные "
"выражения не поддерживаются)."

msgid ""
"Mark the following property as assigned when the [Node] is ready. Values for "
"these properties are not assigned immediately when the node is initialized "
"([method Object._init]), and instead are computed and stored right before "
"[method Node._ready].\n"
"[codeblock]\n"
"@onready var character_name = $Label\n"
"[/codeblock]"
msgstr ""
"Отметьте следующее свойство как назначенное, когда [Node] готов. Значения для "
"этих свойств не назначаются немедленно при инициализации узла ([method "
"Object._init]), а вместо этого вычисляются и сохраняются непосредственно "
"перед [method Node._ready].\n"
"[codeblock]\n"
"@onready var character_name: Label = $Label\n"
"[/codeblock]"

msgid ""
"Mark the following method for remote procedure calls. See [url=$DOCS_URL/"
"tutorials/networking/high_level_multiplayer.html]High-level multiplayer[/"
"url].\n"
"If [param mode] is set as [code]\"any_peer\"[/code], allows any peer to call "
"this RPC function. Otherwise, only the authority peer is allowed to call it "
"and [param mode] should be kept as [code]\"authority\"[/code]. When "
"configuring functions as RPCs with [method Node.rpc_config], each of these "
"modes respectively corresponds to the [constant "
"MultiplayerAPI.RPC_MODE_AUTHORITY] and [constant "
"MultiplayerAPI.RPC_MODE_ANY_PEER] RPC modes. See [enum "
"MultiplayerAPI.RPCMode]. If a peer that is not the authority tries to call a "
"function that is only allowed for the authority, the function will not be "
"executed. If the error can be detected locally (when the RPC configuration is "
"consistent between the local and the remote peer), an error message will be "
"displayed on the sender peer. Otherwise, the remote peer will detect the "
"error and print an error there.\n"
"If [param sync] is set as [code]\"call_remote\"[/code], the function will "
"only be executed on the remote peer, but not locally. To run this function "
"locally too, set [param sync] to [code]\"call_local\"[/code]. When "
"configuring functions as RPCs with [method Node.rpc_config], this is "
"equivalent to setting [code]call_local[/code] to [code]true[/code].\n"
"The [param transfer_mode] accepted values are [code]\"unreliable\"[/code], "
"[code]\"unreliable_ordered\"[/code], or [code]\"reliable\"[/code]. It sets "
"the transfer mode of the underlying [MultiplayerPeer]. See [member "
"MultiplayerPeer.transfer_mode].\n"
"The [param transfer_channel] defines the channel of the underlying "
"[MultiplayerPeer]. See [member MultiplayerPeer.transfer_channel].\n"
"The order of [param mode], [param sync] and [param transfer_mode] does not "
"matter, but values related to the same argument must not be used more than "
"once. [param transfer_channel] always has to be the 4th argument (you must "
"specify 3 preceding arguments).\n"
"[codeblock]\n"
"@rpc\n"
"func fn(): pass\n"
"\n"
"@rpc(\"any_peer\", \"unreliable_ordered\")\n"
"func fn_update_pos(): pass\n"
"\n"
"@rpc(\"authority\", \"call_remote\", \"unreliable\", 0) # Equivalent to @rpc\n"
"func fn_default(): pass\n"
"[/codeblock]\n"
"[b]Note:[/b] Methods annotated with [annotation @rpc] cannot receive objects "
"which define required parameters in [method Object._init]. See [method "
"Object._init] for more details."
msgstr ""
"Отметьте следующий метод для удалённого вызова процедур. См. [url=$DOCS_URL/"
"tutorials/networking/high_level_multiplayer.html]High-level multiplayer[/"
"url].\n"
"Если [param mode] задан как [code]\"any_peer\"[/code], любой пир может "
"вызывать эту RPC-функцию. В противном случае, только авторизованный пир может "
"её вызывать, и [param mode] следует оставить как [code]\"authority\"[/code]. "
"При настройке функций как RPC с помощью [method Node.rpc_config] каждый из "
"этих режимов соответственно соответствует режимам RPC [constant "
"MultiplayerAPI.RPC_MODE_AUTHORITY] и [constant "
"MultiplayerAPI.RPC_MODE_ANY_PEER]. См. [enum MultiplayerAPI.RPCMode]. Если "
"одноранговый узел, не имеющий полномочий, попытается вызвать функцию, "
"разрешенную только для этого полномочия, функция не будет выполнена. Если "
"ошибка может быть обнаружена локально (при согласованности конфигурации RPC "
"на локальном и удалённом узлах), на отправителе будет отображено сообщение об "
"ошибке. В противном случае удалённый узел обнаружит ошибку и выведет "
"сообщение об ошибке на свой сервер.\n"
"Если [param sync] задан как [code]\"call_remote\"[/code], функция будет "
"выполнена только на удалённом пире, но не локально. Чтобы запустить эту "
"функцию локально, задайте [param sync] как [code]\"call_local\"[/code]. При "
"настройке функций как RPC с помощью [method Node.rpc_config] это эквивалентно "
"заданию [code]call_local[/code] как [code]true[/code].\n"
"Допустимые значения [param transfer_mode]: [code]\"unreliable\"[/code], [code]"
"\"unreliable_ordered\"[/code] или [code]\"reliable\"[/code]. Он задаёт режим "
"передачи для базового [MultiplayerPeer]. См. [member "
"MultiplayerPeer.transfer_mode].\n"
"Параметр [param transfer_channel] определяет канал базового "
"[MultiplayerPeer]. См. [member MultiplayerPeer.transfer_channel].\n"
"Порядок [param mode], [param sync] и [param transfer_mode] не имеет значения, "
"но значения, относящиеся к одному и тому же аргументу, не должны "
"использоваться более одного раза. [param transfer_channel] всегда должен быть "
"4-м аргументом (необходимо указать 3 предыдущих аргумента).\n"
"[codeblock]\n"
"@rpc\n"
"func fn(): pass\n"
"\n"
"@rpc(\"any_peer\", \"unreliable_ordered\")\n"
"func fn_update_pos(): pass\n"
"\n"
"@rpc(\"authority\", \"call_remote\", \"unreliable\", 0) # Эквивалентно @rpc\n"
"func fn_default(): pass\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Методы, аннотированные [annotation @rpc], не могут "
"принимать объекты, в которых определены обязательные параметры в [method "
"Object._init]. Подробнее см. в [method Object._init]."

msgid ""
"Make a script with static variables to not persist after all references are "
"lost. If the script is loaded again the static variables will revert to their "
"default values.\n"
"[b]Note:[/b] As annotations describe their subject, the [annotation "
"@static_unload] annotation must be placed before the class definition and "
"inheritance.\n"
"[b]Warning:[/b] Currently, due to a bug, scripts are never freed, even if "
"[annotation @static_unload] annotation is used."
msgstr ""
"Делает так, чтобы скрипт со статическими переменными не сохранялся после "
"потери всех ссылок. При повторной загрузке скрипта статическим переменным "
"будут установлены значения по умолчанию.\n"
"[b]Примечание: [/b] Поскольку аннотации описывают собственный предмет, "
"аннотация [annotation @static_unload] должна быть помещена перед объявлением "
"класса и наследованием.\n"
"[b]Предупреждение:[/b] В настоящее время, из-за ошибки скрипты никогда не "
"освобождаются, даже если используется аннотация [annotation @static_unload]."

msgid ""
"Mark the current script as a tool script, allowing it to be loaded and "
"executed by the editor. See [url=$DOCS_URL/tutorials/plugins/"
"running_code_in_the_editor.html]Running code in the editor[/url].\n"
"[codeblock]\n"
"@tool\n"
"extends Node\n"
"[/codeblock]\n"
"[b]Note:[/b] As annotations describe their subject, the [annotation @tool] "
"annotation must be placed before the class definition and inheritance."
msgstr ""
"Отметьте текущий скрипт как скрипт-инструмент, позволяя редактору загружать и "
"выполнять его. См. [url=$DOCS_URL/tutorials/plugins/"
"running_code_in_the_editor.html]Запуск кода в редакторе[/url]\n"
"[codeblock]\n"
"@tool\n"
"extends Node\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Поскольку аннотации описывают свой предмет, аннотация "
"[annotation @tool] должна быть помещена перед определением и наследованием "
"класса."

msgid ""
"Mark the following statement to ignore the specified [param warning]. See "
"[url=$DOCS_URL/tutorials/scripting/gdscript/warning_system.html]GDScript "
"warning system[/url].\n"
"[codeblock]\n"
"func test():\n"
"\tprint(\"hello\")\n"
"\treturn\n"
"\t@warning_ignore(\"unreachable_code\")\n"
"\tprint(\"unreachable\")\n"
"[/codeblock]\n"
"See also [annotation @warning_ignore_start] and [annotation "
"@warning_ignore_restore]."
msgstr ""
"Отметьте следующее утверждение, чтобы игнорировать указанное [param warning]. "
"См. [url=$DOCS_URL/tutorials/scripting/gdscript/warning_system.html]Система "
"предупреждений GDScript[/url].\n"
"[codeblock]\n"
"func test():\n"
"\tprint(\"hello\")\n"
"\treturn\n"
"\t@warning_ignore(\"unreachable_code\")\n"
"\tprint(\"unreachable\")\n"
"[/codeblock]\n"
"См. также [annotation @warning_ignore_start] и [annotation "
"@warning_ignore_restore]."

msgid ""
"Stops ignoring the listed warning types after [annotation "
"@warning_ignore_start]. Ignoring the specified warning types will be reset to "
"Project Settings. This annotation can be omitted to ignore the warning types "
"until the end of the file.\n"
"[b]Note:[/b] Unlike most other annotations, arguments of the [annotation "
"@warning_ignore_restore] annotation must be string literals (constant "
"expressions are not supported)."
msgstr ""
"Прекращает игнорировать перечисленные типы предупреждений после [annotation "
"@warning_ignore_start]. Игнорирование указанных типов предупреждений будет "
"сброшено до настроек проекта. Эту аннотацию можно опустить, чтобы "
"игнорировать типы предупреждений до конца файла.\n"
"[b]Примечание:[/b] В отличие от большинства других аннотаций, аргументы "
"аннотации [annotation @warning_ignore_restore] должны быть строковыми "
"литералами (константные выражения не поддерживаются)."

msgid ""
"Starts ignoring the listed warning types until the end of the file or the "
"[annotation @warning_ignore_restore] annotation with the given warning type.\n"
"[codeblock]\n"
"func test():\n"
"\tvar a = 1 # Warning (if enabled in the Project Settings).\n"
"\t@warning_ignore_start(\"unused_variable\")\n"
"\tvar b = 2 # No warning.\n"
"\tvar c = 3 # No warning.\n"
"\t@warning_ignore_restore(\"unused_variable\")\n"
"\tvar d = 4 # Warning (if enabled in the Project Settings).\n"
"[/codeblock]\n"
"[b]Note:[/b] To suppress a single warning, use [annotation @warning_ignore] "
"instead.\n"
"[b]Note:[/b] Unlike most other annotations, arguments of the [annotation "
"@warning_ignore_start] annotation must be string literals (constant "
"expressions are not supported)."
msgstr ""
"Начинает игнорировать перечисленные типы предупреждений до конца файла или "
"аннотации [annotation @warning_ignore_restore] с указанным типом "
"предупреждения.\n"
"[codeblock]\n"
"func test():\n"
"\tvar a = 1 # Warning (if enabled in the Project Settings).\n"
"\t@warning_ignore_start(\"unused_variable\")\n"
"\tvar b = 2 # No warning.\n"
"\tvar c = 3 # No warning.\n"
"\t@warning_ignore_restore(\"unused_variable\")\n"
"\tvar d = 4 # Warning (if enabled in the Project Settings).\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Чтобы подавить одно предупреждение, используйте вместо "
"этого [annotation @warning_ignore].\n"
"[b]Примечание:[/b] В отличие от большинства других аннотаций, аргументы "
"аннотации [annotation @warning_ignore_start] должны быть строковыми "
"литералами (константные выражения не поддерживаются)."

msgid "Global scope constants and functions."
msgstr "Константы и функции глобальной области видимости."

msgid ""
"A list of global scope enumerated constants and built-in functions. This is "
"all that resides in the globals, constants regarding error codes, keycodes, "
"property hints, etc.\n"
"Singletons are also documented here, since they can be accessed from "
"anywhere.\n"
"For the entries that can only be accessed from scripts written in GDScript, "
"see [@GDScript]."
msgstr ""
"Список глобальных областей видимости, перечисленных констант и встроенных "
"функций. Это все, что находится в глобальных, константах, касающихся кодов "
"ошибок, кодов клавиш, подсказок свойств и т. д.\n"
"Здесь также документируются синглтоны, поскольку к ним можно получить доступ "
"из любой точки мира.\n"
"Информацию о записях, доступ к которым возможен только из скриптов, "
"написанных на GDScript, см. в [@GDScript]."

msgid "Random number generation"
msgstr "Генерация случайных чисел"

msgid ""
"Returns the absolute value of a [Variant] parameter [param x] (i.e. non-"
"negative value). Supported types: [int], [float], [Vector2], [Vector2i], "
"[Vector3], [Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"var a = abs(-1)\n"
"# a is 1\n"
"\n"
"var b = abs(-1.2)\n"
"# b is 1.2\n"
"\n"
"var c = abs(Vector2(-3.5, -4))\n"
"# c is (3.5, 4)\n"
"\n"
"var d = abs(Vector2i(-5, -6))\n"
"# d is (5, 6)\n"
"\n"
"var e = abs(Vector3(-7, 8.5, -3.8))\n"
"# e is (7, 8.5, 3.8)\n"
"\n"
"var f = abs(Vector3i(-7, -8, -9))\n"
"# f is (7, 8, 9)\n"
"[/codeblock]\n"
"[b]Note:[/b] For better type safety, use [method absf], [method absi], "
"[method Vector2.abs], [method Vector2i.abs], [method Vector3.abs], [method "
"Vector3i.abs], [method Vector4.abs], or [method Vector4i.abs]."
msgstr ""
"Возвращает абсолютное значение [Variant] параметра [param x] (т.е "
"положительное значение). Поддерживаемые типы данных: [int], [float], "
"[Vector2], [Vector2i], [Vector3], [Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"var a = abs(-1)\n"
"# a это 1\n"
"\n"
"var b = abs(-1.2)\n"
"# b это 1.2\n"
"\n"
"var c = abs(Vector2(-3.5, -4))\n"
"# c это (3.5, 4)\n"
"\n"
"var d = abs(Vector2i(-5, -6))\n"
"# d это (5, 6)\n"
"\n"
"var e = abs(Vector3(-7, 8.5, -3.8))\n"
"# e это (7, 8.5, 3.8)\n"
"\n"
"var f = abs(Vector3i(-7, -8, -9))\n"
"# f это (7, 8, 9)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Для лучшей безопасности типов, используйте методы [method "
"absf], [method absi], [method Vector2.abs], [method Vector2i.abs], [method "
"Vector3.abs], [method Vector3i.abs], [method Vector4.abs], или [method "
"Vector4i.abs]."

msgid ""
"Returns the absolute value of float parameter [param x] (i.e. positive "
"value).\n"
"[codeblock]\n"
"# a is 1.2\n"
"var a = absf(-1.2)\n"
"[/codeblock]"
msgstr ""
"Возвращает абсолютное значение параметра float [param x] (т.е. положительное "
"значение).\n"
"[codeblock]\n"
"# a is 1.2\n"
"var a = absf(-1.2)\n"
"[/codeblock]"

msgid ""
"Returns the absolute value of int parameter [param x] (i.e. positive value).\n"
"[codeblock]\n"
"# a is 1\n"
"var a = absi(-1)\n"
"[/codeblock]"
msgstr ""
"Возвращает абсолютное значение параметра int [param x] (т.е. положительное "
"значение).\n"
"[codeblock]\n"
"# a is 1\n"
"var a = absi(-1)\n"
"[/codeblock]"

msgid ""
"Returns the arc cosine of [param x] in radians. Use to get the angle of "
"cosine [param x]. [param x] will be clamped between [code]-1.0[/code] and "
"[code]1.0[/code] (inclusive), in order to prevent [method acos] from "
"returning [constant @GDScript.NAN].\n"
"[codeblock]\n"
"# c is 0.523599 or 30 degrees if converted with rad_to_deg(c)\n"
"var c = acos(0.866025)\n"
"[/codeblock]"
msgstr ""
"Возвращает арккосинус [param x] в радианах. Используйте для получения угла "
"косинуса [param x]. [param x] будет ограничено между [code]-1.0[/code] и "
"[code]1.0[/code] (включительно), чтобы предотвратить возврат [method acos] "
"[constant @GDScript.NAN].\n"
"[codeblock]\n"
"# c равен 0,523599 или 30 градусов, если преобразовано с помощью "
"rad_to_deg(c)\n"
"var c = acos(0.866025)\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic arc (also called inverse) cosine of [param x], "
"returning a value in radians. Use it to get the angle from an angle's cosine "
"in hyperbolic space if [param x] is larger or equal to 1. For values of "
"[param x] lower than 1, it will return 0, in order to prevent [method acosh] "
"from returning [constant @GDScript.NAN].\n"
"[codeblock]\n"
"var a = acosh(2) # Returns 1.31695789692482\n"
"cosh(a) # Returns 2\n"
"\n"
"var b = acosh(-1) # Returns 0\n"
"[/codeblock]"
msgstr ""
"Возвращает гиперболический дуговой (также называемый обратным) косинус [param "
"x], возвращая значение в радианах. Используйте его для получения угла из "
"косинуса угла в гиперболическом пространстве, если [param x] больше или равен "
"1. Для значений [param x] меньше 1 он вернет 0, чтобы предотвратить возврат "
"[method acosh] [constant @GDScript.NAN].\n"
"[codeblock]\n"
"var a = acosh(2) # Returns 1.31695789692482\n"
"cosh(a) # Returns 2\n"
"\n"
"var b = acosh(-1) # Returns 0\n"
"[/codeblock]"

msgid ""
"Returns the difference between the two angles (in radians), in the range of "
"[code][-PI, +PI][/code]. When [param from] and [param to] are opposite, "
"returns [code]-PI[/code] if [param from] is smaller than [param to], or "
"[code]PI[/code] otherwise."
msgstr ""
"Возвращает разницу между двумя углами (в радианах) в диапазоне [code][-PI, "
"+PI[/code]. Когда [param from] и [param to] противоположны, возвращает [code]-"
"PI[/code], если [param from] меньше, чем [param to], или [code]PI[/code] в "
"противном случае."

msgid ""
"Returns the arc sine of [param x] in radians. Use to get the angle of sine "
"[param x]. [param x] will be clamped between [code]-1.0[/code] and [code]1.0[/"
"code] (inclusive), in order to prevent [method asin] from returning [constant "
"@GDScript.NAN].\n"
"[codeblock]\n"
"# s is 0.523599 or 30 degrees if converted with rad_to_deg(s)\n"
"var s = asin(0.5)\n"
"[/codeblock]"
msgstr ""
"Возвращает арксинус [param x] в радианах. Используйте для получения угла "
"синуса [param x]. [param x] будет ограничено между [code]-1.0[/code] и "
"[code]1.0[/code] (включительно), чтобы предотвратить возврат [method asin] "
"[constant @GDScript.NAN].\n"
"[codeblock]\n"
"# s равен 0,523599 или 30 градусам, если преобразовано с помощью "
"rad_to_deg(s)\n"
"var s = asin(0.5)\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic arc (also called inverse) sine of [param x], returning "
"a value in radians. Use it to get the angle from an angle's sine in "
"hyperbolic space.\n"
"[codeblock]\n"
"var a = asinh(0.9) # Returns 0.8088669356527824\n"
"sinh(a) # Returns 0.9\n"
"[/codeblock]"
msgstr ""
"Возвращает гиперболический дуговой (также называемый обратным) синус [param "
"x], возвращая значение в радианах. Используйте его, чтобы получить угол из "
"синуса угла в гиперболическом пространстве.\n"
"[codeblock]\n"
"var a = asinh(0.9) # Returns 0.8088669356527824\n"
"sinh(a) # Returns 0.9\n"
"[/codeblock]"

msgid ""
"Returns the arc tangent of [param x] in radians. Use it to get the angle from "
"an angle's tangent in trigonometry.\n"
"The method cannot know in which quadrant the angle should fall. See [method "
"atan2] if you have both [code]y[/code] and [code skip-lint]x[/code].\n"
"[codeblock]\n"
"var a = atan(0.5) # a is 0.463648\n"
"[/codeblock]\n"
"If [param x] is between [code]-PI / 2[/code] and [code]PI / 2[/code] "
"(inclusive), [code]atan(tan(x))[/code] is equal to [param x]."
msgstr ""
"Возвращает арктангенс [param x] в радианах. Используйте его для получения "
"угла из тангенса угла в тригонометрии.\n"
"Метод не может знать, в какой квадрант должен попасть угол. Смотрите [method "
"atan2], если у вас есть и [code]y[/code], и [code skip-lint]x[/code].\n"
"[codeblock]\n"
"var a = atan(0.5) # a is 0.463648\n"
"[/codeblock]\n"
"Если [param x] находится между [code]-PI / 2[/code] и [code]PI / 2[/code] "
"(включительно), [code]atan(tan(x))[/code] равен [param x]."

msgid ""
"Returns the arc tangent of [code]y/x[/code] in radians. Use to get the angle "
"of tangent [code]y/x[/code]. To compute the value, the method takes into "
"account the sign of both arguments in order to determine the quadrant.\n"
"Important note: The Y coordinate comes first, by convention.\n"
"[codeblock]\n"
"var a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"
msgstr ""
"Возвращает арктангенс [code]y/x[/code] в радианах. Используйте для получения "
"угла тангенса [code]y/x[/code]. Для вычисления значения метод учитывает знак "
"обоих аргументов, чтобы определить квадрант.\n"
"Важное примечание: по соглашению координата Y идет первой.\n"
"[codeblock]\n"
"var a = atan2(0, -1) # a is 3.141593\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic arc (also called inverse) tangent of [param x], "
"returning a value in radians. Use it to get the angle from an angle's tangent "
"in hyperbolic space if [param x] is between -1 and 1 (non-inclusive).\n"
"In mathematics, the inverse hyperbolic tangent is only defined for -1 < "
"[param x] < 1 in the real set, so values equal or lower to -1 for [param x] "
"return negative [constant @GDScript.INF] and values equal or higher than 1 "
"return positive [constant @GDScript.INF] in order to prevent [method atanh] "
"from returning [constant @GDScript.NAN].\n"
"[codeblock]\n"
"var a = atanh(0.9) # Returns 1.47221948958322\n"
"tanh(a) # Returns 0.9\n"
"\n"
"var b = atanh(-2) # Returns -inf\n"
"tanh(b) # Returns -1\n"
"[/codeblock]"
msgstr ""
"Возвращает тангенс гиперболической дуги (также называемой обратной) к [param "
"x], возвращая значение в радианах. Используется для получения угла из "
"тангенса угла в гиперболическом пространстве, если [param x] находится в "
"диапазоне от -1 до 1 (не включительно).\n"
"В математике обратный гиперболический тангенс определен только для -1 < "
"[param x] < 1 в вещественном множестве, поэтому значения, равные или меньшие "
"-1 для [param x], возвращают отрицательные [constant @GDScript.INF], а "
"значения, равные или большие 1, возвращают положительные [method "
"@GDScript.INF], чтобы [method atanh] не возвращал [constant @GDScript.NAN].\n"
"[codeblock].\n"
"var a = atanh(0.9) # Возвращает 1.47221948958322\n"
"tanh(a) # Возвращает 0.9\n"
"\n"
"var b = atanh(-2) # Возвращает -inf\n"
"tanh(b) # Возвращает -1\n"
"[/codeblock]"

msgid ""
"Returns the derivative at the given [param t] on a one-dimensional "
"[url=https://en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] "
"defined by the given [param control_1], [param control_2], and [param end] "
"points."
msgstr ""
"Возвращает производную при заданной [param t] на одномерной [url=https://"
"ru.wikipedia.org/wiki/Кривая_Безье]кривой Безье[/url], заданной точками "
"[param control_1], [param control_2] и [param end]."

msgid ""
"Returns the point at the given [param t] on a one-dimensional [url=https://"
"en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by the "
"given [param control_1], [param control_2], and [param end] points."
msgstr ""
"Возвращает точку в заданной точке [param t] на одномерной [url=https://"
"ru.wikipedia.org/wiki/Кривая_Безье]кривой Безье[/url], определяемой заданными "
"точками [param control_1], [param control_2] и [param end]."

msgid ""
"Decodes a byte array back to a [Variant] value, without decoding objects.\n"
"[b]Note:[/b] If you need object deserialization, see [method "
"bytes_to_var_with_objects]."
msgstr ""
"Декодирует байтовый массив обратно в значение [Variant], без декодирования "
"объектов.\n"
"[b]Примечание:[/b] Если вам нужна десериализация объектов, смотрите [method "
"bytes_to_var_with_objects]."

msgid ""
"Decodes a byte array back to a [Variant] value. Decoding objects is allowed.\n"
"[b]Warning:[/b] Deserialized object can contain code which gets executed. Do "
"not use this option if the serialized object comes from untrusted sources to "
"avoid potential security threats (remote code execution)."
msgstr ""
"Декодирует массив байтов обратно в значение [Variant]. Декодирование объектов "
"разрешено.\n"
"[b]Предупреждение:[/b] Десериализованный объект может содержать код, который "
"будет выполнен. Не используйте эту опцию, если сериализованный объект получен "
"из ненадежных источников, чтобы избежать потенциальных угроз безопасности "
"(удаленное выполнение кода)."

msgid ""
"Rounds [param x] upward (towards positive infinity), returning the smallest "
"whole number that is not less than [param x]. Supported types: [int], "
"[float], [Vector2], [Vector2i], [Vector3], [Vector3i], [Vector4], "
"[Vector4i].\n"
"[codeblock]\n"
"var i = ceil(1.45) # i is 2.0\n"
"i = ceil(1.001)    # i is 2.0\n"
"[/codeblock]\n"
"See also [method floor], [method round], and [method snapped].\n"
"[b]Note:[/b] For better type safety, use [method ceilf], [method ceili], "
"[method Vector2.ceil], [method Vector3.ceil], or [method Vector4.ceil]."
msgstr ""
"Округляет [param x] в большую сторону (в сторону положительной "
"бесконечности), возвращая наименьшее целое число, которое не меньше [param "
"x]. Поддерживаемые типы: [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"var i = ceil(1.45) # i is 2.0\n"
"i = ceil(1.001)    # i is 2.0\n"
"[/codeblock]\n"
"См. также [method floor], [method round], и [method snapped].\n"
"[b]Примечание:[/b] Для лучшей безопасности типов используйте [method ceilf], "
"[method ceili], [method Vector2.ceil], [method Vector3.ceil], или [method "
"Vector4.ceil]."

msgid ""
"Rounds [param x] upward (towards positive infinity), returning the smallest "
"whole number that is not less than [param x].\n"
"A type-safe version of [method ceil], returning a [float]."
msgstr ""
"Округляет [param x] в большую сторону (в сторону положительной "
"бесконечности), возвращая наименьшее целое число, которое не меньше [param "
"x].\n"
"Типобезопасная версия [method ceil], возвращающая [float]."

msgid ""
"Rounds [param x] upward (towards positive infinity), returning the smallest "
"whole number that is not less than [param x].\n"
"A type-safe version of [method ceil], returning an [int]."
msgstr ""
"Округляет [param x] в большую сторону (в сторону положительной "
"бесконечности), возвращая наименьшее целое число, которое не меньше [param "
"x].\n"
"Типобезопасная версия [method ceil], возвращающая [int]."

msgid ""
"Clamps the [param value], returning a [Variant] not less than [param min] and "
"not more than [param max]. Any values that can be compared with the less than "
"and greater than operators will work.\n"
"[codeblock]\n"
"var a = clamp(-10, -1, 5)\n"
"# a is -1\n"
"\n"
"var b = clamp(8.1, 0.9, 5.5)\n"
"# b is 5.5\n"
"[/codeblock]\n"
"[b]Note:[/b] For better type safety, use [method clampf], [method clampi], "
"[method Vector2.clamp], [method Vector2i.clamp], [method Vector3.clamp], "
"[method Vector3i.clamp], [method Vector4.clamp], [method Vector4i.clamp], or "
"[method Color.clamp] (not currently supported by this method).\n"
"[b]Note:[/b] When using this on vectors it will [i]not[/i] perform component-"
"wise clamping, and will pick [param min] if [code]value < min[/code] or "
"[param max] if [code]value > max[/code]. To perform component-wise clamping "
"use the methods listed above."
msgstr ""
"Фиксирует [param value], возвращая [Variant] не меньше [param min] и не "
"больше [param max]. Будут работать любые значения, которые можно сравнить с "
"операторами «меньше» и «больше».\n"
"[codeblock]\n"
"var a = clamp(-10, -1, 5)\n"
"# a is -1\n"
"\n"
"var b = clamp(8.1, 0.9, 5.5)\n"
"# b is 5.5\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Для лучшей безопасности типов используйте [method clampf], "
"[method clampi], [method Vector2.clamp], [method Vector2i.clamp], [method "
"Vector3.clamp], [method Vector3i.clamp], [method Vector4.clamp], [method "
"Vector4i.clamp] или [method Color.clamp] (в настоящее время не поддерживается "
"этим методом).\n"
"[b]Примечание:[/b] При использовании этого на векторах он [i]не[/i] будет "
"выполнять покомпонентное ограничение, а выберет [param min], если [code]value "
"< min[/code] или [param max], если [code]value > max[/code]. Для выполнения "
"покомпонентного ограничения используйте методы, перечисленные выше."

msgid ""
"Clamps the [param value], returning a [float] not less than [param min] and "
"not more than [param max].\n"
"[codeblock]\n"
"var speed = 42.1\n"
"var a = clampf(speed, 1.0, 20.5) # a is 20.5\n"
"\n"
"speed = -10.0\n"
"var b = clampf(speed, -1.0, 1.0) # b is -1.0\n"
"[/codeblock]"
msgstr ""
"Ограничивает [param value], возвращая [float] не меньше [param min] и не "
"больше [param max].\n"
"[codeblock].\n"
"var speed = 42.1\n"
"var a = clampf(speed, 1.0, 20.5) # a равен 20.5\n"
"\n"
"speed = -10.0\n"
"var b = clampf(speed, -1.0, 1.0) # b равен -1.0\n"
"[/codeblock]"

msgid ""
"Clamps the [param value], returning an [int] not less than [param min] and "
"not more than [param max].\n"
"[codeblock]\n"
"var speed = 42\n"
"var a = clampi(speed, 1, 20) # a is 20\n"
"\n"
"speed = -10\n"
"var b = clampi(speed, -1, 1) # b is -1\n"
"[/codeblock]"
msgstr ""
"Зажимает [param value], возвращая [int] не меньше [param min] и не больше "
"[param max].\n"
"[codeblock].\n"
"var speed = 42\n"
"var a = clampi(speed, 1, 20) # a равно 20\n"
"\n"
"speed = -10\n"
"var b = clampi(speed, -1, 1) # b равно -1\n"
"[/codeblock]"

msgid ""
"Returns the cosine of angle [param angle_rad] in radians.\n"
"[codeblock]\n"
"cos(PI * 2)         # Returns 1.0\n"
"cos(PI)             # Returns -1.0\n"
"cos(deg_to_rad(90)) # Returns 0.0\n"
"[/codeblock]"
msgstr ""
"Возвращает косинус угла [param angle_rad] в радианах.\n"
"[codeblock].\n"
"cos(PI * 2)         # Возвращает 1.0\n"
"cos(PI)             # Возвращает -1.0\n"
"cos(deg_to_rad(90)) # Возвращает 0.0\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic cosine of [param x] in radians.\n"
"[codeblock]\n"
"print(cosh(1)) # Prints 1.543081\n"
"[/codeblock]"
msgstr ""
"Возвращает гиперболический косинус [param x] в радианах.\n"
"[codeblock]\n"
"print(cosh(1)) # Prints 1.543081\n"
"[/codeblock]"

msgid ""
"Cubic interpolates between two values by the factor defined in [param weight] "
"with [param pre] and [param post] values."
msgstr ""
"Кубическая интерполяция между двумя значениями по коэффициенту, определенному "
"в [param weight], и значениями [param pre] и [param post]."

msgid ""
"Cubic interpolates between two rotation values with shortest path by the "
"factor defined in [param weight] with [param pre] and [param post] values. "
"See also [method lerp_angle]."
msgstr ""
"Кубическая интерполяция между двумя значениями вращения с кратчайшим путем по "
"коэффициенту, определенному в [param weight] со значениями [param pre] и "
"[param post]. См. также [method lerp_angle]."

msgid ""
"Cubic interpolates between two rotation values with shortest path by the "
"factor defined in [param weight] with [param pre] and [param post] values. "
"See also [method lerp_angle].\n"
"It can perform smoother interpolation than [method cubic_interpolate] by the "
"time values."
msgstr ""
"Кубическая интерполяция между двумя значениями вращения с кратчайшим путем по "
"коэффициенту, определенному в [param weight] со значениями [param pre] и "
"[param post]. См. также [method lerp_angle].\n"
"Он может выполнять более плавную интерполяцию, чем [method cubic_interpolate] "
"по значениям времени."

msgid ""
"Cubic interpolates between two values by the factor defined in [param weight] "
"with [param pre] and [param post] values.\n"
"It can perform smoother interpolation than [method cubic_interpolate] by the "
"time values."
msgstr ""
"Кубическая интерполяция между двумя значениями с помощью коэффициента, "
"определенного в [param weight] со значениями [param pre] и [param post].\n"
"Он может выполнять более плавную интерполяцию, чем [method cubic_interpolate] "
"по значениям времени."

msgid "Converts from decibels to linear energy (audio)."
msgstr "Преобразует децибелы в линейную энергию (аудио)."

msgid ""
"Converts an angle expressed in degrees to radians.\n"
"[codeblock]\n"
"var r = deg_to_rad(180) # r is 3.141593\n"
"[/codeblock]"
msgstr ""
"Преобразует угол, выраженный в градусах, в радианы.\n"
"[codeblock]\n"
"r = deg2rad(180) # r = 3.141593\n"
"[/codeblock]"

msgid ""
"Returns an \"eased\" value of [param x] based on an easing function defined "
"with [param curve]. This easing function is based on an exponent. The [param "
"curve] can be any floating-point number, with specific values leading to the "
"following behaviors:\n"
"[codeblock lang=text]\n"
"- Lower than -1.0 (exclusive): Ease in-out\n"
"- -1.0: Linear\n"
"- Between -1.0 and 0.0 (exclusive): Ease out-in\n"
"- 0.0: Constant\n"
"- Between 0.0 to 1.0 (exclusive): Ease out\n"
"- 1.0: Linear\n"
"- Greater than 1.0 (exclusive): Ease in\n"
"[/codeblock]\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"ease_cheatsheet.png]ease() curve values cheatsheet[/url]\n"
"See also [method smoothstep]. If you need to perform more advanced "
"transitions, use [method Tween.interpolate_value]."
msgstr ""
"Возвращает \"облегченное\" значение [param x] на основе функции облегчения, "
"определенной с помощью [param curve]. Эта функция облегчения основана на "
"экспоненте. [param curve] может быть любым числом с плавающей точкой, с "
"определенными значениями, приводящими к следующим поведениям:\n"
"[codeblock lang=text]\n"
"- Lower than -1.0 (exclusive): Ease in-out\n"
"- -1.0: Linear\n"
"- Between -1.0 and 0.0 (exclusive): Ease out-in\n"
"- 0.0: Constant\n"
"- Between 0.0 to 1.0 (exclusive): Ease out\n"
"- 1.0: Linear\n"
"- Greater than 1.0 (exclusive): Ease in\n"
"[/codeblock]\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"ease_cheatsheet.png]ease() шпаргалка по значениям кривых[/url]\n"
"См. также [method smoothstep]. Если вам нужно выполнить более сложные "
"переходы, используйте [method Tween.interpolate_value]."

msgid ""
"Returns a human-readable name for the given [enum Error] code.\n"
"[codeblock]\n"
"print(OK)                              # Prints 0\n"
"print(error_string(OK))                # Prints \"OK\"\n"
"print(error_string(ERR_BUSY))          # Prints \"Busy\"\n"
"print(error_string(ERR_OUT_OF_MEMORY)) # Prints \"Out of memory\"\n"
"[/codeblock]"
msgstr ""
"Возвращает понятное человеку имя для указанного кода [enum Error].\n"
"[codeblock]\n"
"print(OK)                              # Prints 0\n"
"print(error_string(OK))                # Prints \"OK\"\n"
"print(error_string(ERR_BUSY))          # Prints \"Busy\"\n"
"print(error_string(ERR_OUT_OF_MEMORY)) # Prints \"Out of memory\"\n"
"[/codeblock]"

msgid ""
"The natural exponential function. It raises the mathematical constant [i]e[/"
"i] to the power of [param x] and returns it.\n"
"[i]e[/i] has an approximate value of 2.71828, and can be obtained with "
"[code]exp(1)[/code].\n"
"For exponents to other bases use the method [method pow].\n"
"[codeblock]\n"
"var a = exp(2) # Approximately 7.39\n"
"[/codeblock]"
msgstr ""
"Естественная показательная функция. Возводит математическую константу [i]e[/"
"i] в степень [param x] и возвращает ее.\n"
"[i]e[/i] имеет приблизительное значение 2,71828 и может быть получено с "
"помощью [code]exp(1)[/code].\n"
"Для возведения в степень с другими основаниями используйте method [method "
"pow].\n"
"[codeblock]\n"
"var a = exp(2) # Примерно 7.39\n"
"[/codeblock]"

msgid ""
"Rounds [param x] downward (towards negative infinity), returning the largest "
"whole number that is not more than [param x]. Supported types: [int], "
"[float], [Vector2], [Vector2i], [Vector3], [Vector3i], [Vector4], "
"[Vector4i].\n"
"[codeblock]\n"
"var a = floor(2.99) # a is 2.0\n"
"a = floor(-2.99)    # a is -3.0\n"
"[/codeblock]\n"
"See also [method ceil], [method round], and [method snapped].\n"
"[b]Note:[/b] For better type safety, use [method floorf], [method floori], "
"[method Vector2.floor], [method Vector3.floor], or [method Vector4.floor]."
msgstr ""
"Округляет [param x] в меньшую сторону (в сторону отрицательной "
"бесконечности), возвращая наибольшее целое число, которое не больше [param "
"x]. Поддерживаемые типы: [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"var a = floor(2.99) # a is 2.0\n"
"a = floor(-2.99)    # a is -3.0\n"
"[/codeblock]\n"
"См. также [method ceil], [method round] и [method snapped].\n"
"[b]Примечание:[/b] Для лучшей безопасности типов используйте [method floorf], "
"[method floori], [method Vector2.floor], [method Vector3.floor] или [method "
"Vector4.floor]."

msgid ""
"Rounds [param x] downward (towards negative infinity), returning the largest "
"whole number that is not more than [param x].\n"
"A type-safe version of [method floor], returning a [float]."
msgstr ""
"Округляет [param x] в сторону уменьшения (к отрицательной бесконечности), "
"возвращая наибольшее целое число, которое не больше, чем [param x].\n"
"Безопасная для типов версия [method floor], возвращающая [float]."

msgid ""
"Rounds [param x] downward (towards negative infinity), returning the largest "
"whole number that is not more than [param x].\n"
"A type-safe version of [method floor], returning an [int].\n"
"[b]Note:[/b] This function is [i]not[/i] the same as [code]int(x)[/code], "
"which rounds towards 0."
msgstr ""
"Округляет [param x] вниз (в сторону отрицательной бесконечности), возвращая "
"наибольшее целое число, которое не больше, чем [param x].\n"
"Типобезопасная версия [method floor], возвращающая [int].\n"
"[b]Примечание:[/b] Эта функция [i]не[/i] то же самое, что [code]int(x)[/"
"code], которая округляет до 0."

msgid ""
"Returns the floating-point remainder of [param x] divided by [param y], "
"keeping the sign of [param x].\n"
"[codeblock]\n"
"var remainder = fmod(7, 5.5) # remainder is 1.5\n"
"[/codeblock]\n"
"For the integer remainder operation, use the [code]%[/code] operator."
msgstr ""
"Возвращает остаток с плавающей точкой от деления [param x] на [param y], "
"сохраняя знак [param x].\n"
"[codeblock]\n"
"var remainder = fmod(7, 5.5) # остаток равен 1.5\n"
"[/codeblock]\n"
"Для операции целочисленного остатка используйте оператор [code]%[/code]."

msgid ""
"Returns the floating-point modulus of [param x] divided by [param y], "
"wrapping equally in positive and negative.\n"
"[codeblock]\n"
"print(\" (x)  (fmod(x, 1.5))   (fposmod(x, 1.5))\")\n"
"for i in 7:\n"
"\tvar x = i * 0.5 - 1.5\n"
"\tprint(\"%4.1f           %4.1f  | %4.1f\" % [x, fmod(x, 1.5), fposmod(x, "
"1.5)])\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
" (x)  (fmod(x, 1.5))   (fposmod(x, 1.5))\n"
"-1.5           -0.0  |  0.0\n"
"-1.0           -1.0  |  0.5\n"
"-0.5           -0.5  |  1.0\n"
" 0.0            0.0  |  0.0\n"
" 0.5            0.5  |  0.5\n"
" 1.0            1.0  |  1.0\n"
" 1.5            0.0  |  0.0\n"
"[/codeblock]"
msgstr ""
"Возвращает модуль с плавающей точкой [param x], деленный на [param y], с "
"одинаковой оберткой в положительных и отрицательных значениях.\n"
"[codeblock]\n"
"print(\" (x)  (fmod(x, 1.5))   (fposmod(x, 1.5))\")\n"
"for i in 7:\n"
"\tvar x = i * 0.5 - 1.5\n"
"\tprint(\"%4.1f           %4.1f  | %4.1f\" % [x, fmod(x, 1.5), fposmod(x, "
"1.5)])\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
" (x)  (fmod(x, 1.5))   (fposmod(x, 1.5))\n"
"-1.5           -0.0  |  0.0\n"
"-1.0           -1.0  |  0.5\n"
"-0.5           -0.5  |  1.0\n"
" 0.0            0.0  |  0.0\n"
" 0.5            0.5  |  0.5\n"
" 1.0            1.0  |  1.0\n"
" 1.5            0.0  |  0.0\n"
"[/codeblock]"

msgid ""
"Returns the integer hash of the passed [param variable].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(hash(\"a\")) # Prints 177670\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(GD.Hash(\"a\")); // Prints 177670\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает целочисленный хэш переданной [param variable].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(hash(\"a\")) # Prints 177670\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(GD.Hash(\"a\")); // Prints 177670\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the [Object] that corresponds to [param instance_id]. All Objects "
"have a unique instance ID. See also [method Object.get_instance_id].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var drink = \"water\"\n"
"\n"
"func _ready():\n"
"\tvar id = get_instance_id()\n"
"\tvar instance = instance_from_id(id)\n"
"\tprint(instance.foo) # Prints \"water\"\n"
"[/gdscript]\n"
"[csharp]\n"
"public partial class MyNode : Node\n"
"{\n"
"\tpublic string Drink { get; set; } = \"water\";\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tulong id = GetInstanceId();\n"
"\t\tvar instance = (MyNode)InstanceFromId(Id);\n"
"\t\tGD.Print(instance.Drink); // Prints \"water\"\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [Object], который соответствует [param instance_id]. Все объекты "
"имеют уникальный идентификатор экземпляра. См. также [method "
"Object.get_instance_id].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var drink = \"water\"\n"
"\n"
"func _ready():\n"
"\tvar id = get_instance_id()\n"
"\tvar instance = instance_from_id(id)\n"
"\tprint(instance.foo) # Prints \"water\"\n"
"[/gdscript]\n"
"[csharp]\n"
"public partial class MyNode : Node\n"
"{\n"
"\tpublic string Drink { get; set; } = \"water\";\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tulong id = GetInstanceId();\n"
"\t\tvar instance = (MyNode)InstanceFromId(Id);\n"
"\t\tGD.Print(instance.Drink); // Prints \"water\"\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns an interpolation or extrapolation factor considering the range "
"specified in [param from] and [param to], and the interpolated value "
"specified in [param weight]. The returned value will be between [code]0.0[/"
"code] and [code]1.0[/code] if [param weight] is between [param from] and "
"[param to] (inclusive). If [param weight] is located outside this range, then "
"an extrapolation factor will be returned (return value lower than [code]0.0[/"
"code] or greater than [code]1.0[/code]). Use [method clamp] on the result of "
"[method inverse_lerp] if this is not desired.\n"
"[codeblock]\n"
"# The interpolation ratio in the `lerp()` call below is 0.75.\n"
"var middle = lerp(20, 30, 0.75)\n"
"# middle is now 27.5.\n"
"\n"
"# Now, we pretend to have forgotten the original ratio and want to get it "
"back.\n"
"var ratio = inverse_lerp(20, 30, 27.5)\n"
"# ratio is now 0.75.\n"
"[/codeblock]\n"
"See also [method lerp], which performs the reverse of this operation, and "
"[method remap] to map a continuous series of values to another."
msgstr ""
"Возвращает коэффициент интерполяции или экстраполяции с учетом диапазона, "
"указанного в [param from] и [param to], и интерполированного значения, "
"указанного в [param weight]. Возвращаемое значение будет находиться между "
"[code]0.0[/code] и [code]1.0[/code], если [param weight] находится между "
"[param from] и [param to] (включительно). Если [param weight] находится за "
"пределами этого диапазона, то будет возвращен коэффициент экстраполяции "
"(возвращаемое значение меньше [code]0.0[/code] или больше [code]1.0[/code]). "
"Используйте [method clamp] для результата [method inverse_lerp], если это "
"нежелательно.\n"
"[codeblock]\n"
"# Коэффициент интерполяции в вызове `lerp()` ниже составляет 0,75.\n"
"var middle = lerp(20, 30, 0.75)\n"
"# средний показатель сейчас составляет 27,5.\n"
"\n"
"# Теперь мы делаем вид, что забыли исходное соотношение и хотим его "
"восстановить.\n"
"var ratio = inverse_lerp(20, 30, 27.5)\n"
"# Сейчас коэффициент составляет 0,75.\n"
"[/codeblock]\n"
"См. также [method lerp], который выполняет обратную операцию, и [method "
"remap] для преобразования одной непрерывной серии значений в другую."

msgid ""
"Returns [code]true[/code] if [param a] and [param b] are approximately equal "
"to each other.\n"
"Here, \"approximately equal\" means that [param a] and [param b] are within a "
"small internal epsilon of each other, which scales with the magnitude of the "
"numbers.\n"
"Infinity values of the same sign are considered equal."
msgstr ""
"Возвращает [code]true[/code], если [param a] и [param b] приблизительно равны "
"друг другу.\n"
"Здесь «приблизительно равны» означает, что [param a] и [param b] находятся в "
"пределах небольшого внутреннего эпсилона друг от друга, который "
"масштабируется с величиной чисел.\n"
"Значения бесконечности одного знака считаются равными."

msgid ""
"Returns whether [param x] is a finite value, i.e. it is not [constant "
"@GDScript.NAN], positive infinity, or negative infinity. See also [method "
"is_inf] and [method is_nan]."
msgstr ""
"Проверяет, является ли [param x] конечным значением, т. е. не является ли он "
"[constant @GDScript.NAN], положительной бесконечностью или отрицательной "
"бесконечностью."

msgid ""
"Returns [code]true[/code] if [param x] is either positive infinity or "
"negative infinity. See also [method is_finite] and [method is_nan]."
msgstr ""
"Возвращает [code]true[/code], если [param x] равен либо положительной "
"бесконечности, либо отрицательной бесконечности. См. также [method is_finite] "
"и [method is_nan]."

msgid ""
"Returns [code]true[/code] if the Object that corresponds to [param id] is a "
"valid object (e.g. has not been deleted from memory). All Objects have a "
"unique instance ID."
msgstr ""
"Возвращает [code]true[/code], если объект, соответствующий [param id], "
"является допустимым объектом (например, не был удален из памяти). Все объекты "
"имеют уникальный идентификатор экземпляра."

msgid ""
"Returns [code]true[/code] if [param instance] is a valid Object (e.g. has not "
"been deleted from memory)."
msgstr ""
"Возвращает [code]true[/code], если [param instance] является допустимым "
"объектом (например, не был удален из памяти)."

msgid ""
"Returns [code]true[/code] if [param x] is a NaN (\"Not a Number\" or invalid) "
"value. This method is needed as [constant @GDScript.NAN] is not equal to "
"itself, which means [code]x == NAN[/code] can't be used to check whether a "
"value is a NaN."
msgstr ""
"Возвращает [code]true[/code], если [param x] является NaN (\"Not a Number\") "
"или является некорректным значением. Этот метод необходим, поскольку "
"[constant @GDScript.NAN] не равен самому себе, что означает, что [code]x == "
"NAN[/code] нельзя использовать для проверки на NaN."

msgid ""
"Returns [code]true[/code], for value types, if [param a] and [param b] share "
"the same value. Returns [code]true[/code], for reference types, if the "
"references of [param a] and [param b] are the same.\n"
"[codeblock]\n"
"# Vector2 is a value type\n"
"var vec2_a = Vector2(0, 0)\n"
"var vec2_b = Vector2(0, 0)\n"
"var vec2_c = Vector2(1, 1)\n"
"is_same(vec2_a, vec2_a)  # true\n"
"is_same(vec2_a, vec2_b)  # true\n"
"is_same(vec2_a, vec2_c)  # false\n"
"\n"
"# Array is a reference type\n"
"var arr_a = []\n"
"var arr_b = []\n"
"is_same(arr_a, arr_a)  # true\n"
"is_same(arr_a, arr_b)  # false\n"
"[/codeblock]\n"
"These are [Variant] value types: [code]null[/code], [bool], [int], [float], "
"[String], [StringName], [Vector2], [Vector2i], [Vector3], [Vector3i], "
"[Vector4], [Vector4i], [Rect2], [Rect2i], [Transform2D], [Transform3D], "
"[Plane], [Quaternion], [AABB], [Basis], [Projection], [Color], [NodePath], "
"[RID], [Callable] and [Signal].\n"
"These are [Variant] reference types: [Object], [Dictionary], [Array], "
"[PackedByteArray], [PackedInt32Array], [PackedInt64Array], "
"[PackedFloat32Array], [PackedFloat64Array], [PackedStringArray], "
"[PackedVector2Array], [PackedVector3Array], [PackedVector4Array], and "
"[PackedColorArray]."
msgstr ""
"Возвращает [code]true[/code] для типов значений, если [param a] и [param b] "
"имеют одно и то же значение. Возвращает [code]true[/code] для ссылочных "
"типов, если ссылки [param a] и [param b] совпадают.\n"
"[codeblock]\n"
"# Vector2  это тип значения\n"
"var vec2_a = Vector2(0, 0)\n"
"var vec2_b = Vector2(0, 0)\n"
"var vec2_c = Vector2(1, 1)\n"
"is_same(vec2_a, vec2_a)  # true\n"
"is_same(vec2_a, vec2_b)  # true\n"
"is_same(vec2_a, vec2_c)  # false\n"
"\n"
"# Array это ссылочный тип\n"
"var arr_a = []\n"
"var arr_b = []\n"
"is_same(arr_a, arr_a)  # true\n"
"is_same(arr_a, arr_b)  # false\n"
"[/codeblock]\n"
"Это [Variant] типы значений: [code]null[/code], [bool], [int], [float], "
"[String], [StringName], [Vector2], [Vector2i], [Vector3], [Vector3i], "
"[Vector4], [Vector4i], [Rect2], [Rect2i], [Transform2D], [Transform3D], "
"[Plane], [Quaternion], [AABB], [Basis], [Projection], [Color], [NodePath], "
"[RID], [Callable] и [Signal].\n"
"Это [Variant] ссылочный тип: [Object], [Dictionary], [Array], "
"[PackedByteArray], [PackedInt32Array], [PackedInt64Array], "
"[PackedFloat32Array], [PackedFloat64Array], [PackedStringArray], "
"[PackedVector2Array], [PackedVector3Array] и [PackedColorArray]."

msgid ""
"Returns [code]true[/code] if [param x] is zero or almost zero. The comparison "
"is done using a tolerance calculation with a small internal epsilon.\n"
"This function is faster than using [method is_equal_approx] with one value as "
"zero."
msgstr ""
"Возвращает [code]true[/code], если [param x] равен или приблизительно равен "
"нулю. Сравнивается используя расчет допуска с небольшим внутренним эпсилон.\n"
"Эта функция работает быстрее, чем использование [method is_equal_approx] с "
"одним значением, равным нулю."

msgid ""
"Linearly interpolates between two values by the factor defined in [param "
"weight]. To perform interpolation, [param weight] should be between "
"[code]0.0[/code] and [code]1.0[/code] (inclusive). However, values outside "
"this range are allowed and can be used to perform [i]extrapolation[/i]. If "
"this is not desired, use [method clampf] to limit [param weight].\n"
"Both [param from] and [param to] must be the same type. Supported types: "
"[int], [float], [Vector2], [Vector3], [Vector4], [Color], [Quaternion], "
"[Basis], [Transform2D], [Transform3D].\n"
"[codeblock]\n"
"lerp(0, 4, 0.75) # Returns 3.0\n"
"[/codeblock]\n"
"See also [method inverse_lerp] which performs the reverse of this operation. "
"To perform eased interpolation with [method lerp], combine it with [method "
"ease] or [method smoothstep]. See also [method remap] to map a continuous "
"series of values to another.\n"
"[b]Note:[/b] For better type safety, use [method lerpf], [method "
"Vector2.lerp], [method Vector3.lerp], [method Vector4.lerp], [method "
"Color.lerp], [method Quaternion.slerp], [method Basis.slerp], [method "
"Transform2D.interpolate_with], or [method Transform3D.interpolate_with]."
msgstr ""
"Линейно интерполирует между двумя значениями с коэффициентом, определенным в "
"[param weight]. Для выполнения интерполяции [param weight] должен быть между "
"[code]0.0[/code] и [code]1.0[/code] (включительно). Однако значения за "
"пределами этого диапазона допускаются и могут использоваться для выполнения "
"[i]экстраполяции[/i]. Если это нежелательно, используйте [method clampf] для "
"ограничения [param weight].\n"
"Оба [param from] и [param to] должны быть одного типа. Поддерживаемые типы: "
"[int], [float], [Vector2], [Vector3], [Vector4], [Color], [Quaternion], "
"[Basis], [Transform2D], [Transform3D].\n"
"[codeblock]\n"
"lerp(0, 4, 0.75) # Returns 3.0\n"
"[/codeblock]\n"
"См. также [method inverse_lerp], который выполняет обратную операцию. Чтобы "
"выполнить упрощенную интерполяцию с помощью [method lerp], объедините его с "
"[method ease] или [method smoothstep]. См. также [method remap], чтобы "
"сопоставить непрерывный ряд значений с другим.\n"
"[b]Примечание:[/b] Для лучшей безопасности типов используйте [method lerpf], "
"[method Vector2.lerp], [method Vector3.lerp], [method Vector4.lerp], [method "
"Color.lerp], [method Quaternion.slerp], [method Basis.slerp], [method "
"Transform2D.interpolate_with] или [method Transform3D.interpolate_with]."

msgid ""
"Linearly interpolates between two angles (in radians) by a [param weight] "
"value between 0.0 and 1.0.\n"
"Similar to [method lerp], but interpolates correctly when the angles wrap "
"around [constant @GDScript.TAU]. To perform eased interpolation with [method "
"lerp_angle], combine it with [method ease] or [method smoothstep].\n"
"[codeblock]\n"
"extends Sprite\n"
"var elapsed = 0.0\n"
"func _process(delta):\n"
"\tvar min_angle = deg_to_rad(0.0)\n"
"\tvar max_angle = deg_to_rad(90.0)\n"
"\trotation = lerp_angle(min_angle, max_angle, elapsed)\n"
"\telapsed += delta\n"
"[/codeblock]\n"
"[b]Note:[/b] This function lerps through the shortest path between [param "
"from] and [param to]. However, when these two angles are approximately "
"[code]PI + k * TAU[/code] apart for any integer [code]k[/code], it's not "
"obvious which way they lerp due to floating-point precision errors. For "
"example, [code]lerp_angle(0, PI, weight)[/code] lerps counter-clockwise, "
"while [code]lerp_angle(0, PI + 5 * TAU, weight)[/code] lerps clockwise."
msgstr ""
"Линейно интерполирует между двумя углами (в радианах) по значению [param "
"weight] между 0,0 и 1,0.\n"
"Аналогично [method lerp], но интерполирует правильно, когда углы огибают "
"[constant @GDScript.TAU]. Чтобы выполнить упрощенную интерполяцию с [method "
"lerp_angle], объедините его с [method ease] или [method smoothstep].\n"
"[codeblock]\n"
"extends Sprite\n"
"var elapsed = 0.0\n"
"func _process(delta):\n"
"\tvar min_angle = deg_to_rad(0.0)\n"
"\tvar max_angle = deg_to_rad(90.0)\n"
"\trotation = lerp_angle(min_angle, max_angle, elapsed)\n"
"\telapsed += delta\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Эта функция выполняет линейную интерполяцию по кратчайшему "
"пути между [param from] и [param to]. Однако, когда эти два угла "
"приблизительно [code]PI + k * TAU[/code] друг от друга для любого целого "
"числа [code]k[/code], неочевидно, в какую сторону они выполняют линейную "
"интерполяцию из-за ошибок точности с плавающей точкой. Например, "
"[code]lerp_angle(0, PI, weight)[/code] выполняет линейную интерполяцию против "
"часовой стрелки, тогда как [code]lerp_angle(0, PI + 5 * TAU, weight)[/code] "
"выполняет линейную интерполяцию по часовой стрелке."

msgid ""
"Linearly interpolates between two values by the factor defined in [param "
"weight]. To perform interpolation, [param weight] should be between "
"[code]0.0[/code] and [code]1.0[/code] (inclusive). However, values outside "
"this range are allowed and can be used to perform [i]extrapolation[/i]. If "
"this is not desired, use [method clampf] on the result of this function.\n"
"[codeblock]\n"
"lerpf(0, 4, 0.75) # Returns 3.0\n"
"[/codeblock]\n"
"See also [method inverse_lerp] which performs the reverse of this operation. "
"To perform eased interpolation with [method lerp], combine it with [method "
"ease] or [method smoothstep]."
msgstr ""
"Линейно интерполирует между двумя значениями с коэффициентом, определенным в "
"[param weight]. Для выполнения интерполяции [param weight] должен быть между "
"[code]0.0[/code] и [code]1.0[/code] (включительно). Однако значения за "
"пределами этого диапазона допускаются и могут использоваться для выполнения "
"[i]экстраполяции[/i]. Если это нежелательно, используйте [method clampf] для "
"результата этой функции.\n"
"[codeblock]\n"
"lerpf(0, 4, 0.75) # Returns 3.0\n"
"[/codeblock]\n"
"См. также [method inverse_lerp], который выполняет обратную операцию. Чтобы "
"выполнить облегченную интерполяцию с помощью [method lerp], объедините его с "
"[method ease] или [method smoothstep]."

msgid ""
"Converts from linear energy to decibels (audio). Since volume is not normally "
"linear, this can be used to implement volume sliders that behave as "
"expected.\n"
"[b]Example:[/b] Change the Master bus's volume through a [Slider] node, which "
"ranges from [code]0.0[/code] to [code]1.0[/code]:\n"
"[codeblock]\n"
"AudioServer.set_bus_volume_db(AudioServer.get_bus_index(\"Master\"), "
"linear_to_db($Slider.value))\n"
"[/codeblock]"
msgstr ""
"Преобразует линейную энергию в децибелы (аудио). Поскольку громкость обычно "
"нелинейна, это можно использовать для реализации ползунков громкости, которые "
"ведут себя ожидаемым образом.\n"
"[b]Пример:[/b] Измените громкость главной шины с помощью узла [Slider], "
"который находится в диапазоне от [code]0.0[/code] до [code]1.0[/code]:\n"
"[codeblock]\n"
"AudioServer.set_bus_volume_db(AudioServer.get_bus_index(\"Master\"), "
"linear_to_db($Slider.value))\n"
"[/codeblock]"

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Natural_logarithm]natural "
"logarithm[/url] of [param x] (base [url=https://en.wikipedia.org/wiki/"
"E_(mathematical_constant)][i]e[/i][/url], with [i]e[/i] being approximately "
"2.71828). This is the amount of time needed to reach a certain level of "
"continuous growth.\n"
"[b]Note:[/b] This is not the same as the \"log\" function on most "
"calculators, which uses a base 10 logarithm. To use base 10 logarithm, use "
"[code]log(x) / log(10)[/code].\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
"[/codeblock]\n"
"[b]Note:[/b] The logarithm of [code]0[/code] returns [code]-inf[/code], while "
"negative values return [code]-nan[/code]."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/Natural_logarithm]натуральный "
"логарифм[/url] [param x] (основание [url=https://en.wikipedia.org/wiki/"
"E_(mathematical_constant)][i]e[/i][/url], где [i]e[/i] приблизительно равно "
"2,71828). Это количество времени, необходимое для достижения определенного "
"уровня непрерывного роста.\n"
"[b]Примечание:[/b] Это не то же самое, что функция \"log\" на большинстве "
"калькуляторов, которая использует логарифм по основанию 10. Чтобы "
"использовать логарифм по основанию 10, используйте [code]log(x) / log(10)[/"
"code].\n"
"[codeblock]\n"
"log(10) # Returns 2.302585\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Логарифм [code]0[/code] возвращает [code]-inf[/code], "
"тогда как отрицательные значения возвращают [code]-nan[/code]."

msgid ""
"Returns the maximum of the given numeric values. This function can take any "
"number of arguments.\n"
"[codeblock]\n"
"max(1, 7, 3, -6, 5) # Returns 7\n"
"[/codeblock]\n"
"[b]Note:[/b] When using this on vectors it will [i]not[/i] perform component-"
"wise maximum, and will pick the largest value when compared using [code]x < "
"y[/code]. To perform component-wise maximum, use [method Vector2.max], "
"[method Vector2i.max], [method Vector3.max], [method Vector3i.max], [method "
"Vector4.max], and [method Vector4i.max]."
msgstr ""
"Возвращает наибольшее из указанных числовых значений. Эта функция может "
"принимать любое количество аргументов.\n"
"[codeblock]\n"
"max(1, 7, 3, -6, 5) # Возвращает 7\n"
"[/codeblock]\n"
"[b]Примечание:[/b] При использовании этой функции для векторов она [i]не[/i] "
"вернет максимальный из компонентов, а выберет наибольшее значение, путем "
"сравнения [code]x < y [/code]. Чтобы найти максимальный из компонентов "
"используйте [method Vector2.max], [method Vector2i.max], [method "
"Vector3.max], [method Vector3i.max], [method Vector4.max], and [method "
"Vector4i.max]."

msgid ""
"Returns the maximum of two [float] values.\n"
"[codeblock]\n"
"maxf(3.6, 24)   # Returns 24.0\n"
"maxf(-3.99, -4) # Returns -3.99\n"
"[/codeblock]"
msgstr ""
"Возвращает максимальное из двух значений [float].\n"
"[codeblock]\n"
"maxf(3.6, 24) # Возвращает 24.0\n"
"maxf(-3.99, -4) # Возвращает -3.99\n"
"[/codeblock]"

msgid ""
"Returns the maximum of two [int] values.\n"
"[codeblock]\n"
"maxi(1, 2)   # Returns 2\n"
"maxi(-3, -4) # Returns -3\n"
"[/codeblock]"
msgstr ""
"Возвращает максимальное из двух значений [int].\n"
"[codeblock]\n"
"maxi(1, 2) # Возвращает 2\n"
"maxi(-3, -4) # Возвращает -3\n"
"[/codeblock]"

msgid ""
"Returns the minimum of the given numeric values. This function can take any "
"number of arguments.\n"
"[codeblock]\n"
"min(1, 7, 3, -6, 5) # Returns -6\n"
"[/codeblock]\n"
"[b]Note:[/b] When using this on vectors it will [i]not[/i] perform component-"
"wise minimum, and will pick the smallest value when compared using [code]x < "
"y[/code]. To perform component-wise minimum, use [method Vector2.min], "
"[method Vector2i.min], [method Vector3.min], [method Vector3i.min], [method "
"Vector4.min], and [method Vector4i.min]."
msgstr ""
"Возвращает наименьшее из указанных числовых значений. Эта функция может "
"принимать любое количество аргументов.\n"
"[codeblock]\n"
"min(1, 7, 3, -6, 5) # Возвращает -6\n"
"[/codeblock]\n"
"[b]Примечание:[/b] При использовании этой функции для векторов она [i]не[/i] "
"вернет минимальный из компонентов, а выберет наименьшее значение, путем "
"сравнения [code]x < y [/code]. Чтобы найти минимальный из компонентов "
"используйте [method Vector2.min], [method Vector2i.min], [method "
"Vector3.min], [method Vector3i.min], [method Vector4.min], and [method "
"Vector4i.min]."

msgid ""
"Returns the minimum of two [float] values.\n"
"[codeblock]\n"
"minf(3.6, 24)   # Returns 3.6\n"
"minf(-3.99, -4) # Returns -4.0\n"
"[/codeblock]"
msgstr ""
"Возвращает минимум из двух значений [float].\n"
"[codeblock]\n"
"minf(3.6, 24) # Возвращает 3.6\n"
"minf(-3.99, -4) # Возвращает -4.0\n"
"[/codeblock]"

msgid ""
"Returns the minimum of two [int] values.\n"
"[codeblock]\n"
"mini(1, 2)   # Returns 1\n"
"mini(-3, -4) # Returns -4\n"
"[/codeblock]"
msgstr ""
"Возвращает минимальное из двух значений [int].\n"
"[codeblock]\n"
"mini(1, 2) # Возвращает 1\n"
"mini(-3, -4) # Возвращает -4\n"
"[/codeblock]"

msgid ""
"Moves [param from] toward [param to] by the [param delta] amount. Will not go "
"past [param to].\n"
"Use a negative [param delta] value to move away.\n"
"[codeblock]\n"
"move_toward(5, 10, 4)    # Returns 9\n"
"move_toward(10, 5, 4)    # Returns 6\n"
"move_toward(5, 10, 9)    # Returns 10\n"
"move_toward(10, 5, -1.5) # Returns 11.5\n"
"[/codeblock]"
msgstr ""
"Перемещает [param from] в направлении [param to] на величину [param delta]. "
"Не выйдет за пределы [param to].\n"
"Используйте отрицательное значение [param delta], чтобы переместиться.\n"
"[codeblock]\n"
"move_toward(5, 10, 4) # Возвращает 9\n"
"move_toward(10, 5, 4) # Возвращает 6\n"
"move_toward(5, 10, 9) # Возвращает 10\n"
"move_toward(10, 5, -1.5) # Возвращает 11.5\n"
"[/codeblock]"

msgid ""
"Returns the smallest integer power of 2 that is greater than or equal to "
"[param value].\n"
"[codeblock]\n"
"nearest_po2(3) # Returns 4\n"
"nearest_po2(4) # Returns 4\n"
"nearest_po2(5) # Returns 8\n"
"\n"
"nearest_po2(0)  # Returns 0 (this may not be expected)\n"
"nearest_po2(-1) # Returns 0 (this may not be expected)\n"
"[/codeblock]\n"
"[b]Warning:[/b] Due to its implementation, this method returns [code]0[/code] "
"rather than [code]1[/code] for values less than or equal to [code]0[/code], "
"with an exception for [param value] being the smallest negative 64-bit "
"integer ([code]-9223372036854775808[/code]) in which case the [param value] "
"is returned unchanged."
msgstr ""
"Возвращает наименьшую целую степень числа 2, которая больше или равна [param "
"value].\n"
"[codeblock]\n"
"nearest_po2(3) # Возвращает 4\n"
"nearest_po2(4) # Возвращает 4\n"
"nearest_po2(5) # Возвращает 8\n"
"\n"
"nearest_po2(0) # Возвращает 0 (может быть неожиданным)\n"
"nearest_po2(-1) # Возвращает 0 (может быть неожиданным)\n"
"[/codeblock]\n"
"[b]Предупреждение:[/b] Из-за своей реализации этот метод возвращает [code]0[/"
"code] вместо [code]1[/code] для значений, меньших или равных [code]0[/code], "
"за исключением [param value], являющегося наименьшим отрицательным 64-битным "
"целым числом ([code]-9223372036854775808[/code]), в этом случае [param value] "
"возвращается без изменений."

msgid ""
"Wraps [param value] between [code]0[/code] and the [param length]. If the "
"limit is reached, the next value the function returns is decreased to the "
"[code]0[/code] side or increased to the [param length] side (like a triangle "
"wave). If [param length] is less than zero, it becomes positive.\n"
"[codeblock]\n"
"pingpong(-3.0, 3.0) # Returns 3.0\n"
"pingpong(-2.0, 3.0) # Returns 2.0\n"
"pingpong(-1.0, 3.0) # Returns 1.0\n"
"pingpong(0.0, 3.0)  # Returns 0.0\n"
"pingpong(1.0, 3.0)  # Returns 1.0\n"
"pingpong(2.0, 3.0)  # Returns 2.0\n"
"pingpong(3.0, 3.0)  # Returns 3.0\n"
"pingpong(4.0, 3.0)  # Returns 2.0\n"
"pingpong(5.0, 3.0)  # Returns 1.0\n"
"pingpong(6.0, 3.0)  # Returns 0.0\n"
"[/codeblock]"
msgstr ""
"Оборачивает [param value] между [code]0[/code] и [param length]. Если предел "
"достигнут, следующее возвращаемое функцией значение уменьшается до стороны "
"[code]0[/code] или увеличивается до стороны [param length] (как треугольная "
"волна). Если [param length] меньше нуля, оно становится положительным.\n"
"[codeblock]\n"
"pingpong(-3.0, 3.0) # Возвращает 3.0\n"
"pingpong(-2.0, 3.0) # Возвращает 2.0\n"
"pingpong(-1.0, 3.0) # Возвращает 1.0\n"
"pingpong(0.0, 3.0) # Возвращает 0.0\n"
"pingpong(1.0, 3.0) # Возвращает 1.0\n"
"pingpong(2.0, 3.0) # Возвращает 2.0\n"
"pingpong(3.0, 3.0) # Возвращает 3.0\n"
"pingpong(4.0, 3.0) # Возвращает 2.0\n"
"pingpong(5.0, 3.0) # Возвращает 1.0\n"
"pingpong(6.0, 3.0) # Возвращает 0.0\n"
"[/codeblock]"

msgid ""
"Returns the integer modulus of [param x] divided by [param y] that wraps "
"equally in positive and negative.\n"
"[codeblock]\n"
"print(\"#(i)  (i % 3)   (posmod(i, 3))\")\n"
"for i in range(-3, 4):\n"
"\tprint(\"%2d       %2d  | %2d\" % [i, i % 3, posmod(i, 3)])\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"(i)  (i % 3)   (posmod(i, 3))\n"
"-3        0  |  0\n"
"-2       -2  |  1\n"
"-1       -1  |  2\n"
" 0        0  |  0\n"
" 1        1  |  1\n"
" 2        2  |  2\n"
" 3        0  |  0\n"
"[/codeblock]"
msgstr ""
"Возвращает целочисленный модуль [param x], деленный на [param y], который "
"одинаково охватывает положительные и отрицательные числа.\n"
"[codeblock]\n"
"print(\"#(i)  (i % 3)   (posmod(i, 3))\")\n"
"for i in range(-3, 4):\n"
"\tprint(\"%2d       %2d  | %2d\" % [i, i % 3, posmod(i, 3)])\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"(i)  (i % 3)   (posmod(i, 3))\n"
"-3        0  |  0\n"
"-2       -2  |  1\n"
"-1       -1  |  2\n"
" 0        0  |  0\n"
" 1        1  |  1\n"
" 2        2  |  2\n"
" 3        0  |  0\n"
"[/codeblock]"

msgid ""
"Returns the result of [param base] raised to the power of [param exp].\n"
"In GDScript, this is the equivalent of the [code]**[/code] operator.\n"
"[codeblock]\n"
"pow(2, 5)   # Returns 32.0\n"
"pow(4, 1.5) # Returns 8.0\n"
"[/codeblock]"
msgstr ""
"Возвращает результат [param base], возведенный в степень [param exp].\n"
"В GDScript это эквивалент оператора [code]**[/code].\n"
"[codeblock]\n"
"pow(2, 5) # Возвращает 32.0\n"
"pow(4, 1.5) # Возвращает 8.0\n"
"[/codeblock]"

msgid ""
"Converts one or more arguments of any type to string in the best way possible "
"and prints them to the console.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = [1, 2, 3]\n"
"print(\"a\", \"b\", a) # Prints \"ab[1, 2, 3]\"\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array a = [1, 2, 3];\n"
"GD.Print(\"a\", \"b\", a); // Prints \"ab[1, 2, 3]\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Consider using [method push_error] and [method push_warning] to "
"print error and warning messages instead of [method print] or [method "
"print_rich]. This distinguishes them from print messages used for debugging "
"purposes, while also displaying a stack trace when an error or warning is "
"printed. See also [member Engine.print_to_stdout] and [member "
"ProjectSettings.application/run/disable_stdout]."
msgstr ""
"Преобразует один или несколько аргументов любого типа в строку наилучшим "
"возможным способом и выводит их на консоль.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = [1, 2, 3]\n"
"print(\"a\", \"b\", a) # Выводит \"ab[1, 2, 3]\"\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array a = [1, 2, 3];\n"
"GD.Print(\"a\", \"b\", a); // Выводит \"ab[1, 2, 3]\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Рассмотрите возможность использования [method push_error] "
"и [method push_warning] для вывода сообщений об ошибках и предупреждений "
"вместо [method print] или [method print_rich]. Это отличает их от сообщений "
"печати, используемых для отладки, а также отображает трассировку стека при "
"выводе ошибки или предупреждения. См. также [member Engine.print_to_stdout] и "
"[member ProjectSettings.application/run/disable_stdout]."

msgid ""
"Converts one or more arguments of any type to string in the best way possible "
"and prints them to the console.\n"
"The following BBCode tags are supported: [code]b[/code], [code]i[/code], "
"[code]u[/code], [code]s[/code], [code]indent[/code], [code]code[/code], "
"[code]url[/code], [code]center[/code], [code]right[/code], [code]color[/"
"code], [code]bgcolor[/code], [code]fgcolor[/code].\n"
"URL tags only support URLs wrapped by a URL tag, not URLs with a different "
"title.\n"
"When printing to standard output, the supported subset of BBCode is converted "
"to ANSI escape codes for the terminal emulator to display. Support for ANSI "
"escape codes varies across terminal emulators, especially for italic and "
"strikethrough. In standard output, [code]code[/code] is represented with "
"faint text but without any font change. Unsupported tags are left as-is in "
"standard output.\n"
"[codeblocks]\n"
"[gdscript skip-lint]\n"
"print_rich(\"[color=green][b]Hello world![/b][/color]\") # Prints \"Hello "
"world!\", in green with a bold font.\n"
"[/gdscript]\n"
"[csharp skip-lint]\n"
"GD.PrintRich(\"[color=green][b]Hello world![/b][/color]\"); // Prints \"Hello "
"world!\", in green with a bold font.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Consider using [method push_error] and [method push_warning] to "
"print error and warning messages instead of [method print] or [method "
"print_rich]. This distinguishes them from print messages used for debugging "
"purposes, while also displaying a stack trace when an error or warning is "
"printed.\n"
"[b]Note:[/b] Output displayed in the editor supports clickable [code skip-"
"lint][url=address]text[/url][/code] tags. The [code skip-lint][url][/code] "
"tag's [code]address[/code] value is handled by [method OS.shell_open] when "
"clicked."
msgstr ""
"Преобразует один или несколько аргументов любого типа в строку наилучшим "
"возможным способом и выводит их в консоль.\n"
"Поддерживаются следующие теги BBCode: [code]b[/code], [code]i[/code], "
"[code]u[/code], [code]s[/code], [code]indent[/code], [code]code[/code], "
"[code]url[/code], [code]center[/code], [code]right[/code], [code]color[/"
"code], [code]bgcolor[/code], [code]fgcolor[/code].\n"
"Теги URL поддерживают только URL, заключенные в тег URL, а не URL с другим "
"заголовком.\n"
"При печати в стандартный вывод поддерживаемое подмножество BBCode "
"преобразуется в escape-коды ANSI для отображения эмулятором терминала. "
"Поддержка escape-кодов ANSI различается в разных эмуляторах терминала, "
"особенно для курсива и зачеркивания. В стандартном выводе [code]code[/code] "
"представлен тусклым текстом, но без изменения шрифта. Неподдерживаемые теги "
"остаются как есть в стандартном выводе.\n"
"[codeblocks]\n"
"[gdscript skip-lint]\n"
"print_rich(\"[color=green][b]Hello world![/b][/color]\") # Выводит \"Hello "
"world!\", зеленым цветом жирным шрифтом.\n"
"[/gdscript]\n"
"[csharp skip-lint]\n"
"GD.PrintRich(\"[color=green][b]Hello world![/b][/color]\"); // Выводит "
"\"Hello world!\", зеленым цветом жирным шрифтом.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Рассмотрите возможность использования [method push_error] "
"и [method push_warning] для печати сообщений об ошибках и предупреждений "
"вместо [method print] или [method print_rich]. Это отличает их от сообщений "
"печати, используемых в целях отладки, а также отображает трассировку стека "
"при печати ошибки или предупреждения.\n"
"[b]Примечание:[/b] Вывод, отображаемый в редакторе, поддерживает кликабельные "
"теги [code skip-lint][url=address]text[/url][/code]. Значение [code]address[/"
"code] тега [code skip-lint][url][/code] обрабатывается [method OS.shell_open] "
"при клике."

msgid ""
"If verbose mode is enabled ([method OS.is_stdout_verbose] returning "
"[code]true[/code]), converts one or more arguments of any type to string in "
"the best way possible and prints them to the console."
msgstr ""
"Если включен подробный режим ([method OS.is_stdout_verbose], возвращающий "
"[code]true[/code]), преобразует один или несколько аргументов любого типа в "
"строку наилучшим возможным способом и выводит их на консоль."

msgid ""
"Prints one or more arguments to strings in the best way possible to standard "
"error line.\n"
"[codeblocks]\n"
"[gdscript]\n"
"printerr(\"prints to stderr\")\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintErr(\"prints to stderr\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Выводит один или несколько аргументов в строки наилучшим образом в "
"стандартную строку ошибок.\n"
"[codeblocks]\n"
"[gdscript]\n"
"printerr(\"выводит на stderr\")\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintErr(\"выводит на stderr\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Prints one or more arguments to strings in the best way possible to the OS "
"terminal. Unlike [method print], no newline is automatically added at the "
"end.\n"
"[b]Note:[/b] The OS terminal is [i]not[/i] the same as the editor's Output "
"dock. The output sent to the OS terminal can be seen when running Godot from "
"a terminal. On Windows, this requires using the [code]console.exe[/code] "
"executable.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Prints \"ABC\" to terminal.\n"
"printraw(\"A\")\n"
"printraw(\"B\")\n"
"printraw(\"C\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Prints \"ABC\" to terminal.\n"
"GD.PrintRaw(\"A\");\n"
"GD.PrintRaw(\"B\");\n"
"GD.PrintRaw(\"C\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Выводит один или несколько аргументов строк наилучшим образом на терминал ОС. "
"В отличие от [method print], в конце автоматически не добавляется новая "
"строка.\n"
"[b]Примечание:[/b] Терминал ОС [i]не[/i] то же самое, что и док-станция "
"вывода редактора. Вывод, отправленный на терминал ОС, можно увидеть при "
"запуске Godot из терминала. В Windows для этого требуется использовать "
"исполняемый файл [code]console.exe[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Prints \"ABC\" to terminal.\n"
"printraw(\"A\")\n"
"printraw(\"B\")\n"
"printraw(\"C\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Выводит на терминал «ABC».\n"
"GD.PrintRaw(\"A\");\n"
"GD.PrintRaw(\"B\");\n"
"GD.PrintRaw(\"C\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Prints one or more arguments to the console with a space between each "
"argument.\n"
"[codeblocks]\n"
"[gdscript]\n"
"prints(\"A\", \"B\", \"C\") # Prints \"A B C\"\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintS(\"A\", \"B\", \"C\"); // Prints \"A B C\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Выводит один или несколько аргументов на консоль с пробелом между каждым "
"аргументом.\n"
"[codeblocks]\n"
"[gdscript]\n"
"prints(\"A\", \"B\", \"C\") # Выводит \"A B C\"\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintS(\"A\", \"B\", \"C\"); // Выводит \"A B C\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Prints one or more arguments to the console with a tab between each "
"argument.\n"
"[codeblocks]\n"
"[gdscript]\n"
"printt(\"A\", \"B\", \"C\") # Prints \"A       B       C\"\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintT(\"A\", \"B\", \"C\"); // Prints \"A       B       C\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Выводит на консоль один или несколько аргументов с табуляцией между каждым "
"аргументом.\n"
"[codeblocks]\n"
"[gdscript]\n"
"printt(\"A\", \"B\", \"C\") # Prints \"A       B       C\"\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PrintT(\"A\", \"B\", \"C\"); // Prints \"A       B       C\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Pushes an error message to Godot's built-in debugger and to the OS terminal.\n"
"[codeblocks]\n"
"[gdscript]\n"
"push_error(\"test error\") # Prints \"test error\" to debugger and terminal "
"as an error.\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PushError(\"test error\"); // Prints \"test error\" to debugger and "
"terminal as an error.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This function does not pause project execution. To print an "
"error message and pause project execution in debug builds, use "
"[code]assert(false, \"test error\")[/code] instead."
msgstr ""
"Отправляет сообщение об ошибке во встроенный отладчик Godot и на терминал "
"ОС.\n"
"[codeblocks]\n"
"[gdscript]\n"
"push_error(\"test error\") # Выводит \"test error\" в отладчик и терминал как "
"ошибку.\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PushError(\"test error\"); // Выводит \"test error\" в отладчик и терминал "
"как ошибку.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Эта функция не приостанавливает выполнение проекта. Чтобы "
"вывести сообщение об ошибке и приостановить выполнение проекта в отладочных "
"сборках, используйте вместо этого [code]assert(false, \"test error\")[/code]."

msgid ""
"Pushes a warning message to Godot's built-in debugger and to the OS "
"terminal.\n"
"[codeblocks]\n"
"[gdscript]\n"
"push_warning(\"test warning\") # Prints \"test warning\" to debugger and "
"terminal as a warning.\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PushWarning(\"test warning\"); // Prints \"test warning\" to debugger and "
"terminal as a warning.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Отправляет предупреждающее сообщение встроенному отладчику Godot и на "
"терминал ОС.\n"
"[codeblocks]\n"
"[gdscript]\n"
"push_warning(\"test warning\") # Выводит \"test warning\" на отладчик и "
"терминал как предупреждение.\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.PushWarning(\"test warning\"); // Выводит \"test warning\" на отладчик и "
"терминал как предупреждение.\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Converts an angle expressed in radians to degrees.\n"
"[codeblock]\n"
"rad_to_deg(0.523599) # Returns 30\n"
"rad_to_deg(PI)       # Returns 180\n"
"rad_to_deg(PI * 2)   # Returns 360\n"
"[/codeblock]"
msgstr ""
"Преобразует угол, выраженный в радианах, в градусы.\n"
"[codeblock]\n"
"rad_to_deg(0.523599) # Возвращает 30\n"
"rad_to_deg(PI)       # Возвращает 180\n"
"rad_to_deg(PI * 2)   # Возвращает 360\n"
"[/codeblock]"

msgid ""
"Given a [param seed], returns a [PackedInt64Array] of size [code]2[/code], "
"where its first element is the randomized [int] value, and the second element "
"is the same as [param seed]. Passing the same [param seed] consistently "
"returns the same array.\n"
"[b]Note:[/b] \"Seed\" here refers to the internal state of the pseudo random "
"number generator, currently implemented as a 64 bit integer.\n"
"[codeblock]\n"
"var a = rand_from_seed(4)\n"
"\n"
"print(a[0]) # Prints 2879024997\n"
"print(a[1]) # Prints 4\n"
"[/codeblock]"
msgstr ""
"При наличии [param seed] возвращает [PackedInt64Array] размером [code]2[/"
"code], где его первый элемент — это рандомизированное значение [int], а "
"второй элемент совпадает с [param seed]. Передача одного и того же [param "
"seed] последовательно возвращает один и тот же массив.\n"
"[b]Примечание:[/b] «Seed» здесь относится к внутреннему состоянию генератора "
"псевдослучайных чисел, в настоящее время реализованного как 64-битное целое "
"число.\n"
"[codeblock]\n"
"var a = rand_from_seed(4)\n"
"\n"
"print(a[0]) # Prints 2879024997\n"
"print(a[1]) # Prints 4\n"
"[/codeblock]"

msgid ""
"Returns a random floating-point value between [code]0.0[/code] and [code]1.0[/"
"code] (inclusive).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randf() # Returns e.g. 0.375671\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Randf(); // Returns e.g. 0.375671\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает случайное значение с плавающей точкой между [code]0.0[/code] и "
"[code]1.0[/code] (включительно).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randf() # Возвращает, например, 0.375671\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Randf(); // Возвращает, например, 0.375671\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a random floating-point value between [param from] and [param to] "
"(inclusive).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randf_range(0, 20.5) # Returns e.g. 7.45315\n"
"randf_range(-10, 10) # Returns e.g. -3.844535\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.RandRange(0.0, 20.5);   // Returns e.g. 7.45315\n"
"GD.RandRange(-10.0, 10.0); // Returns e.g. -3.844535\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает случайное значение с плавающей точкой между [param from] и [param "
"to] (включительно).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randf_range(0, 20.5) # Возвращает, например, 7.45315\n"
"randf_range(-10, 10) # Возвращает, например, -3.844535\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.RandRange(0.0, 20.5); // Возвращает, например, 7.45315\n"
"GD.RandRange(-10.0, 10.0); // Возвращает, например, -3.844535\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a [url=https://en.wikipedia.org/wiki/Normal_distribution]normally-"
"distributed[/url], pseudo-random floating-point value from the specified "
"[param mean] and a standard [param deviation]. This is also known as a "
"Gaussian distribution.\n"
"[b]Note:[/b] This method uses the [url=https://en.wikipedia.org/wiki/"
"Box%E2%80%93Muller_transform]Box-Muller transform[/url] algorithm."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/Normal_distribution]нормально "
"распределенное[/url], псевдослучайное значение с плавающей точкой из "
"указанного [param mean] и стандартного [param offset]. Это также известно как "
"распределение Гаусса.\n"
"[b]Примечание:[/b] Этот метод использует алгоритм [url=https://"
"en.wikipedia.org/wiki/Box%E2%80%93Muller_transform]преобразование Box-Muller[/"
"url]."

msgid ""
"Returns a random unsigned 32-bit integer. Use remainder to obtain a random "
"value in the interval [code][0, N - 1][/code] (where N is smaller than "
"2^32).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randi()           # Returns random integer between 0 and 2^32 - 1\n"
"randi() % 20      # Returns random integer between 0 and 19\n"
"randi() % 100     # Returns random integer between 0 and 99\n"
"randi() % 100 + 1 # Returns random integer between 1 and 100\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Randi();           // Returns random integer between 0 and 2^32 - 1\n"
"GD.Randi() % 20;      // Returns random integer between 0 and 19\n"
"GD.Randi() % 100;     // Returns random integer between 0 and 99\n"
"GD.Randi() % 100 + 1; // Returns random integer between 1 and 100\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает случайное беззнаковое 32-битное целое число. Используйте остаток "
"для получения случайного значения в интервале [code][0, N - 1][/code] (где N "
"меньше 2^32).\n"
"[codeblocks]\n"
"[gdscript]\n"
"randi()           #Возвращает случайное целое число от 0 до 2^32 - 1\n"
"randi() % 20      # Возвращает случайное целое число от 0 до 19\n"
"randi() % 100     # Возвращает случайное целое число от 0 до 99\n"
"randi() % 100 + 1 # Возвращает случайное целое число от 1 до 100\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Randi();           // Возвращает случайное целое число от 0 до 2^32 - 1\n"
"GD.Randi() % 20;      // Возвращает случайное целое число от 0 до 19\n"
"GD.Randi() % 100;     // Возвращает случайное целое число от 0 до 99\n"
"GD.Randi() % 100 + 1; // Возвращает случайное целое число от 1 до 100\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a random signed 32-bit integer between [param from] and [param to] "
"(inclusive). If [param to] is lesser than [param from], they are swapped.\n"
"[codeblocks]\n"
"[gdscript]\n"
"randi_range(0, 1)      # Returns either 0 or 1\n"
"randi_range(-10, 1000) # Returns random integer between -10 and 1000\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.RandRange(0, 1);      // Returns either 0 or 1\n"
"GD.RandRange(-10, 1000); // Returns random integer between -10 and 1000\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает случайное 32-битное целое число со знаком между [param from] и "
"[param to] (включительно). Если [param to] меньше [param from], они меняются "
"местами.\n"
"[codeblocks]\n"
"[gdscript]\n"
"randi_range(0, 1)      # Возвращает 0 или 1\n"
"randi_range(-10, 1000) # Возвращает случайное целое число от -10 до 1000\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.RandRange(0, 1);      // Возвращает 0 или 1\n"
"GD.RandRange(-10, 1000); // Возвращает случайное целое число от -10 до 1000\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Randomizes the seed (or the internal state) of the random number generator. "
"The current implementation uses a number based on the device's time.\n"
"[b]Note:[/b] This function is called automatically when the project is run. "
"If you need to fix the seed to have consistent, reproducible results, use "
"[method seed] to initialize the random number generator."
msgstr ""
"Рандомизирует начальное число (или внутреннее состояние) генератора случайных "
"чисел. Текущая реализация использует число, основанное на времени "
"устройства.\n"
"[b]Примечание:[/b] Эта функция вызывается автоматически при запуске проекта. "
"Если вам нужно исправить начальное число, чтобы получить последовательные и "
"воспроизводимые результаты, используйте [method seed] для инициализации "
"генератора случайных чисел."

msgid ""
"Maps a [param value] from range [code][istart, istop][/code] to [code]"
"[ostart, ostop][/code]. See also [method lerp] and [method inverse_lerp]. If "
"[param value] is outside [code][istart, istop][/code], then the resulting "
"value will also be outside [code][ostart, ostop][/code]. If this is not "
"desired, use [method clamp] on the result of this function.\n"
"[codeblock]\n"
"remap(75, 0, 100, -1, 1) # Returns 0.5\n"
"[/codeblock]\n"
"For complex use cases where multiple ranges are needed, consider using "
"[Curve] or [Gradient] instead.\n"
"[b]Note:[/b] If [code]istart == istop[/code], the return value is undefined "
"(most likely NaN, INF, or -INF)."
msgstr ""
"Отображает [param value] из диапазона [code][istart, istop][/code] в [code]"
"[ostart, ostop][/code]. См. также [method lerp] и [method inverse_lerp]. Если "
"[param value] находится вне [code][istart, istop][/code], то результирующее "
"значение также будет вне [code][ostart, ostop][/code]. Если это нежелательно, "
"используйте [method clamp] для результата этой функции.\n"
"[codeblock]\n"
"remap(75, 0, 100, -1, 1) # Returns 0.5\n"
"[/codeblock]\n"
"Для сложных случаев использования, когда требуется несколько диапазонов, "
"рассмотрите возможность использования [Curve] или [Gradient].\n"
"[b]Примечание:[/b] Если [code]istart == istop[/code], возвращаемое значение "
"не определено (скорее всего, NaN, INF или -INF)."

msgid ""
"Allocates a unique ID which can be used by the implementation to construct an "
"RID. This is used mainly from native extensions to implement servers."
msgstr ""
"Выделяет уникальный идентификатор, который может использоваться реализацией "
"для построения RID. Это используется в основном из собственных расширений для "
"реализации серверов."

msgid ""
"Creates an RID from a [param base]. This is used mainly from native "
"extensions to build servers."
msgstr ""
"Создает RID из [param base]. Используется в основном из собственных "
"расширений для сборки серверов."

msgid ""
"Rotates [param from] toward [param to] by the [param delta] amount. Will not "
"go past [param to].\n"
"Similar to [method move_toward], but interpolates correctly when the angles "
"wrap around [constant @GDScript.TAU].\n"
"If [param delta] is negative, this function will rotate away from [param to], "
"toward the opposite angle, and will not go past the opposite angle."
msgstr ""
"Поворачивает [param from] в сторону [param to] на величину [param delta]. Не "
"пройдет мимо [param to].\n"
"Похож на [method move_toward], но интерполирует правильно, когда углы "
"оборачиваются вокруг [constant @GDScript.TAU].\n"
"Если [param delta] отрицательное значение, эта функция будет поворачиваться "
"от [param to] к противоположному углу и не будет выходить за пределы "
"противоположного угла."

msgid ""
"Rounds [param x] to the nearest whole number, with halfway cases rounded away "
"from 0. Supported types: [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"round(2.4) # Returns 2\n"
"round(2.5) # Returns 3\n"
"round(2.6) # Returns 3\n"
"[/codeblock]\n"
"See also [method floor], [method ceil], and [method snapped].\n"
"[b]Note:[/b] For better type safety, use [method roundf], [method roundi], "
"[method Vector2.round], [method Vector3.round], or [method Vector4.round]."
msgstr ""
"Округляет [param x] до ближайшего целого числа, при этом половинные значения "
"округляются от 0. Поддерживаемые типы: [int], [float], [Vector2], [Vector2i], "
"[Vector3], [Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"round(2.4) # Возвращает 2\n"
"round(2.5) # Возвращает 3\n"
"round(2.6) # Возвращает 3\n"
"[/codeblock]\n"
"См. также [method floor], [method ceil] и [method snapped].\n"
"[b]Примечание:[/b] Для лучшей безопасности типов используйте [method roundf], "
"[method roundi], [method Vector2.round], [method Vector3.round] или [method "
"Vector4.round]."

msgid ""
"Rounds [param x] to the nearest whole number, with halfway cases rounded away "
"from 0.\n"
"A type-safe version of [method round], returning a [float]."
msgstr ""
"Округляет [param x] до ближайшего целого числа, при этом средние значения "
"округляются от 0.\n"
"Типо-безопасная версия [method round], возвращающая [float]."

msgid ""
"Rounds [param x] to the nearest whole number, with halfway cases rounded away "
"from 0.\n"
"A type-safe version of [method round], returning an [int]."
msgstr ""
"Округляет [param x] до ближайшего целого числа, при этом промежуточные "
"значения округляются от 0.\n"
"Безопасная версия для типов [method round], возвращающая [int]."

msgid ""
"Sets the seed for the random number generator to [param base]. Setting the "
"seed manually can ensure consistent, repeatable results for most random "
"functions.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_seed = \"Godot Rocks\".hash()\n"
"seed(my_seed)\n"
"var a = randf() + randi()\n"
"seed(my_seed)\n"
"var b = randf() + randi()\n"
"# a and b are now identical\n"
"[/gdscript]\n"
"[csharp]\n"
"ulong mySeed = (ulong)GD.Hash(\"Godot Rocks\");\n"
"GD.Seed(mySeed);\n"
"var a = GD.Randf() + GD.Randi();\n"
"GD.Seed(mySeed);\n"
"var b = GD.Randf() + GD.Randi();\n"
"// a and b are now identical\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Устанавливает начальное значение для генератора случайных чисел в [param "
"base]. Установка начального числа вручную может обеспечить согласованные и "
"повторяемые результаты для большинства случайных функций.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_seed = \"Godot Rocks\".hash()\n"
"seed(my_seed)\n"
"var a = randf() + randi()\n"
"seed(my_seed)\n"
"var b = randf() + randi()\n"
"# a и b теперь идентичны\n"
"[/gdscript]\n"
"[csharp]\n"
"ulong mySeed = (ulong)GD.Hash(\"Godot Rocks\");\n"
"GD.Seed(mySeed);\n"
"var a = GD.Randf() + GD.Randi();\n"
"GD.Seed(mySeed);\n"
"var b = GD.Randf() + GD.Randi();\n"
"// a и b теперь идентичны\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the same type of [Variant] as [param x], with [code]-1[/code] for "
"negative values, [code]1[/code] for positive values, and [code]0[/code] for "
"zeros. For [code]nan[/code] values it returns 0.\n"
"Supported types: [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"sign(-6.0) # Returns -1\n"
"sign(0.0)  # Returns 0\n"
"sign(6.0)  # Returns 1\n"
"sign(NAN)  # Returns 0\n"
"\n"
"sign(Vector3(-6.0, 0.0, 6.0)) # Returns (-1, 0, 1)\n"
"[/codeblock]\n"
"[b]Note:[/b] For better type safety, use [method signf], [method signi], "
"[method Vector2.sign], [method Vector2i.sign], [method Vector3.sign], [method "
"Vector3i.sign], [method Vector4.sign], or [method Vector4i.sign]."
msgstr ""
"Возвращает тот же тип [Variant], что и [param x], с [code]-1[/code] для "
"отрицательных значений, [code]1[/code] для положительных значений и [code]0[/"
"code] для нулей. Для значений [code]nan[/code] возвращает 0.\n"
"Поддерживаемые типы: [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"sign(-6.0) # Возвращает -1\n"
"sign(0.0)  # Возвращает 0\n"
"sign(6.0)  # Возвращает 1\n"
"sign(NAN)  # Возвращает 0\n"
"\n"
"sign(Vector3(-6.0, 0.0, 6.0)) # Возвращает (-1, 0, 1)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Для лучшей безопасности типов используйте [method signf], "
"[method signi], [method Vector2.sign], [method Vector2i.sign], [method "
"Vector3.sign], [method Vector3i.sign], [method Vector4.sign] или [method "
"Vector4i.sign]."

msgid ""
"Returns [code]-1.0[/code] if [param x] is negative, [code]1.0[/code] if "
"[param x] is positive, and [code]0.0[/code] if [param x] is zero. For "
"[code]nan[/code] values of [param x] it returns 0.0.\n"
"[codeblock]\n"
"signf(-6.5) # Returns -1.0\n"
"signf(0.0)  # Returns 0.0\n"
"signf(6.5)  # Returns 1.0\n"
"signf(NAN)  # Returns 0.0\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]-1.0[/code], если [param x] отрицательный, [code]1.0[/code], "
"если [param x] положительный, и [code]0.0[/code], если [param x] равен нулю. "
"Для [code]nan[/code] значений [param x] он возвращает 0.0.\n"
"[codeblock]\n"
"signf(-6.5) # Возвращает -1.0\n"
"signf(0.0)  # Возвращает 0.0\n"
"signf(6.5)  # Возвращает 1.0\n"
"signf(NAN)  # Возвращает 0.0\n"
"[/codeblock]"

msgid ""
"Returns [code]-1[/code] if [param x] is negative, [code]1[/code] if [param x] "
"is positive, and [code]0[/code] if [param x] is zero.\n"
"[codeblock]\n"
"signi(-6) # Returns -1\n"
"signi(0)  # Returns 0\n"
"signi(6)  # Returns 1\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]-1[/code], если [param x] отрицательный, [code]1[/code], "
"если [param x] положительный, и [code]0[/code], если [param x] равен нулю.\n"
"[codeblock]\n"
"signi(-6) # Возвращает -1\n"
"signi(0)  # Возвращает 0\n"
"signi(6)  # Возвращает 1\n"
"[/codeblock]"

msgid ""
"Returns the sine of angle [param angle_rad] in radians.\n"
"[codeblock]\n"
"sin(0.523599)       # Returns 0.5\n"
"sin(deg_to_rad(90)) # Returns 1.0\n"
"[/codeblock]"
msgstr ""
"Возвращает синус угла [param angle_rad] в радианах.\n"
"[codeblock]\n"
"sin(0.523599)       # Возвращает 0.5\n"
"sin(deg_to_rad(90)) # Возвращает 1.0\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic sine of [param x].\n"
"[codeblock]\n"
"var a = log(2.0) # Returns 0.693147\n"
"sinh(a) # Returns 0.75\n"
"[/codeblock]"
msgstr ""
"Возвращает гиперболический синус [param x].\n"
"[codeblock]\n"
"var a = log(2.0) # Возвращает 0.693147\n"
"sinh(a) # Возвращает 0.75\n"
"[/codeblock]"

msgid ""
"Returns a smooth cubic Hermite interpolation between [code]0[/code] and "
"[code]1[/code].\n"
"For positive ranges (when [code]from <= to[/code]) the return value is "
"[code]0[/code] when [code]x <= from[/code], and [code]1[/code] when [code]x "
">= to[/code]. If [param x] lies between [param from] and [param to], the "
"return value follows an S-shaped curve that smoothly transitions from "
"[code]0[/code] to [code]1[/code].\n"
"For negative ranges (when [code]from > to[/code]) the function is mirrored "
"and returns [code]1[/code] when [code]x <= to[/code] and [code]0[/code] when "
"[code]x >= from[/code].\n"
"This S-shaped curve is the cubic Hermite interpolator, given by [code]f(y) = "
"3*y^2 - 2*y^3[/code] where [code]y = (x-from) / (to-from)[/code].\n"
"[codeblock]\n"
"smoothstep(0, 2, -5.0) # Returns 0.0\n"
"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]\n"
"Compared to [method ease] with a curve value of [code]-1.6521[/code], [method "
"smoothstep] returns the smoothest possible curve with no sudden changes in "
"the derivative. If you need to perform more advanced transitions, use [Tween] "
"or [AnimationPlayer].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"smoothstep_ease_comparison.png]Comparison between smoothstep() and ease(x, "
"-1.6521) return values[/url]\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"smoothstep_range.webp]Smoothstep() return values with positive, zero, and "
"negative ranges[/url]"
msgstr ""
"Возвращает гладкую кубическую интерполяцию Эрмита между [code]0[/code] и "
"[code]1[/code].\n"
"Для положительных диапазонов (когда [code]from <= to[/code]) возвращаемое "
"значение равно [code]0[/code], когда [code]x <= from[/code], и [code]1[/"
"code], когда [code]x >= to[/code]. Если [param x] лежит между [param from] и "
"[param to], возвращаемое значение следует S-образной кривой, которая плавно "
"переходит от [code]0[/code] к [code]1[/code].\n"
"Для отрицательных диапазонов (когда [code]from > to[/code]) функция зеркально "
"отражается и возвращает [code]1[/code], когда [code]x <= to[/code] и [code]0[/"
"code], когда [code]x >= from[/code].\n"
"Эта S-образная кривая представляет собой кубический интерполятор Эрмита, "
"заданный как [code]f(y) = 3*y^2 - 2*y^3[/code], где [code]y = (x-from) / (to-"
"from)[/code].\n"
"[codeblock]\n"
"smoothstep(0, 2, -5.0) # Returns 0.0\n"
"smoothstep(0, 2, 0.5) # Returns 0.15625\n"
"smoothstep(0, 2, 1.0) # Returns 0.5\n"
"smoothstep(0, 2, 2.0) # Returns 1.0\n"
"[/codeblock]\n"
"По сравнению с [method ease] со значением кривой [code]-1.6521[/code], "
"[method smoothstep] возвращает максимально гладкую кривую без резких "
"изменений в производной. Если вам нужно выполнить более сложные переходы, "
"используйте [Tween] или [AnimationPlayer].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"smoothstep_ease_comparison.png]Сравнение возвращаемых значений smoothstep() и "
"ease(x, -1.6521)[/url]\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"smoothstep_range.webp]Smoothstep() возвращает значения с положительным, "
"нулевым и отрицательным диапазонами[/url]"

msgid ""
"Returns the multiple of [param step] that is the closest to [param x]. This "
"can also be used to round a floating-point number to an arbitrary number of "
"decimals.\n"
"The returned value is the same type of [Variant] as [param step]. Supported "
"types: [int], [float], [Vector2], [Vector2i], [Vector3], [Vector3i], "
"[Vector4], [Vector4i].\n"
"[codeblock]\n"
"snapped(100, 32)  # Returns 96\n"
"snapped(3.14159, 0.01)  # Returns 3.14\n"
"\n"
"snapped(Vector2(34, 70), Vector2(8, 8))  # Returns (32, 72)\n"
"[/codeblock]\n"
"See also [method ceil], [method floor], and [method round].\n"
"[b]Note:[/b] For better type safety, use [method snappedf], [method "
"snappedi], [method Vector2.snapped], [method Vector2i.snapped], [method "
"Vector3.snapped], [method Vector3i.snapped], [method Vector4.snapped], or "
"[method Vector4i.snapped]."
msgstr ""
"Возвращает кратное [param step], которое ближе всего к [param x]. Это также "
"можно использовать для округления числа с плавающей точкой до произвольного "
"количества десятичных знаков.\n"
"Возвращаемое значение имеет тот же тип [Variant], что и [param step]. "
"Поддерживаемые типы: [int], [float], [Vector2], [Vector2i], [Vector3], "
"[Vector3i], [Vector4], [Vector4i].\n"
"[codeblock]\n"
"snapped(100, 32)  # Returns 96\n"
"snapped(3.14159, 0.01)  # Returns 3.14\n"
"\n"
"snapped(Vector2(34, 70), Vector2(8, 8))  # Returns (32, 72)\n"
"[/codeblock]\n"
"См. также [method ceil], [method floor] и [method round].\n"
"[b]Примечание:[/b] Для лучшей безопасности типов используйте [method "
"snappedf], [method snappedi], [method Vector2.snapped], [method "
"Vector2i.snapped], [method Vector3.snapped], [method Vector3i.snapped], "
"[method Vector4.snapped], или [method Vector4i.snapped]."

msgid ""
"Returns the multiple of [param step] that is the closest to [param x]. This "
"can also be used to round a floating-point number to an arbitrary number of "
"decimals.\n"
"A type-safe version of [method snapped], returning a [float].\n"
"[codeblock]\n"
"snappedf(32.0, 2.5)  # Returns 32.5\n"
"snappedf(3.14159, 0.01)  # Returns 3.14\n"
"[/codeblock]"
msgstr ""
"Возвращает кратное [param step], которое ближе всего к [param x]. Это также "
"можно использовать для округления числа с плавающей точкой до произвольного "
"количества десятичных знаков.\n"
"Типобезопасная (type-safe) версия [method snapped], возвращающая [float].\n"
"[codeblock]\n"
"snappedf(32.0, 2.5)  # Returns 32.5\n"
"snappedf(3.14159, 0.01)  # Returns 3.14\n"
"[/codeblock]"

msgid ""
"Returns the multiple of [param step] that is the closest to [param x].\n"
"A type-safe version of [method snapped], returning an [int].\n"
"[codeblock]\n"
"snappedi(53, 16)  # Returns 48\n"
"snappedi(4096, 100)  # Returns 4100\n"
"[/codeblock]"
msgstr ""
"Возвращает кратное [param step], которое ближе всего к [param x].\n"
"Типобезопасная версия [method snapped], возвращающая [int].\n"
"[codeblock]\n"
"snappedi(53, 16)  # Returns 48\n"
"snappedi(4096, 100)  # Returns 4100\n"
"[/codeblock]"

msgid ""
"Returns the square root of [param x], where [param x] is a non-negative "
"number.\n"
"[codeblock]\n"
"sqrt(9)     # Returns 3\n"
"sqrt(10.24) # Returns 3.2\n"
"sqrt(-1)    # Returns NaN\n"
"[/codeblock]\n"
"[b]Note:[/b] Negative values of [param x] return NaN (\"Not a Number\"). In "
"C#, if you need negative inputs, use [code]System.Numerics.Complex[/code]."
msgstr ""
"Возвращает квадратный корень из [param x], где [param x] — неотрицательное "
"число.\n"
"[codeblock]\n"
"sqrt(9)     # Returns 3\n"
"sqrt(10.24) # Returns 3.2\n"
"sqrt(-1)    # Returns NaN\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Отрицательные значения [param x] возвращают NaN («Not a "
"Number»). В C#, если вам нужны отрицательные входные данные, используйте "
"[code]System.Numerics.Complex[/code]."

msgid ""
"Returns the position of the first non-zero digit, after the decimal point. "
"Note that the maximum return value is 10, which is a design decision in the "
"implementation.\n"
"[codeblock]\n"
"var n = step_decimals(5)       # n is 0\n"
"n = step_decimals(1.0005)      # n is 4\n"
"n = step_decimals(0.000000005) # n is 9\n"
"[/codeblock]"
msgstr ""
"Возвращает позицию первой ненулевой цифры после десятичной точки. Обратите "
"внимание, что максимальное возвращаемое значение равно 10, что является "
"проектным решением в реализации.\n"
"[codeblock]\n"
"var n = step_decimals(5)       # n равен 0\n"
"n = step_decimals(1.0005)      # n равен 4\n"
"n = step_decimals(0.000000005) # n равен 9\n"
"[/codeblock]"

msgid ""
"Converts one or more arguments of any [Variant] type to a [String] in the "
"best way possible.\n"
"[codeblock]\n"
"var a = [10, 20, 30]\n"
"var b = str(a)\n"
"print(len(a)) # Prints 3 (the number of elements in the array).\n"
"print(len(b)) # Prints 12 (the length of the string \"[10, 20, 30]\").\n"
"[/codeblock]"
msgstr ""
"Преобразует один или несколько аргументов любого типа [Variant] в [String] "
"наилучшим возможным способом.\n"
"[codeblock]\n"
"var a = [10, 20, 30]\n"
"var b = str(a)\n"
"print(len(a)) # Prints 3 (количество элементов в массиве).\n"
"print(len(b)) # Prints 12 (длина строки \"[10, 20, 30]\").\n"
"[/codeblock]"

msgid ""
"Converts a formatted [param string] that was returned by [method var_to_str] "
"to the original [Variant].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var data = '{ \"a\": 1, \"b\": 2 }' # data is a String\n"
"var dict = str_to_var(data)     # dict is a Dictionary\n"
"print(dict[\"a\"])                # Prints 1\n"
"[/gdscript]\n"
"[csharp]\n"
"string data = \"{ \\\"a\\\": 1, \\\"b\\\": 2 }\";           // data is a "
"string\n"
"var dict = GD.StrToVar(data).AsGodotDictionary(); // dict is a Dictionary\n"
"GD.Print(dict[\"a\"]);                              // Prints 1\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Преобразует отформатированную [param string], возвращенную [method "
"var_to_str], в исходный [Variant].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var data = '{ \"a\": 1, \"b\": 2 }' # data — это String (строка)\n"
"var dict = str_to_var(data)     # dict — это Dictionary (словарь)\n"
"print(dict[\"a\"])                # Prints 1\n"
"[/gdscript]\n"
"[csharp]\n"
"string data = \"{ \\\"a\\\": 1, \\\"b\\\": 2 }\";           // data — это "
"string\n"
"var dict = GD.StrToVar(data).AsGodotDictionary(); // dict — это Dictionary\n"
"GD.Print(dict[\"a\"]);                              // Prints 1\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the tangent of angle [param angle_rad] in radians.\n"
"[codeblock]\n"
"tan(deg_to_rad(45)) # Returns 1\n"
"[/codeblock]"
msgstr ""
"Возвращает тангенс угла [param angle_rad] в радианах.\n"
"[codeblock]\n"
"tan(deg_to_rad(45)) # Returns 1\n"
"[/codeblock]"

msgid ""
"Returns the hyperbolic tangent of [param x].\n"
"[codeblock]\n"
"var a = log(2.0) # Returns 0.693147\n"
"tanh(a)          # Returns 0.6\n"
"[/codeblock]"
msgstr ""
"Возвращает гиперболический тангенс [param x].\n"
"[codeblock]\n"
"var a = log(2.0) # Returns 0.693147\n"
"tanh(a)          # Returns 0.6\n"
"[/codeblock]"

msgid ""
"Converts the given [param variant] to the given [param type], using the [enum "
"Variant.Type] values. This method is generous with how it handles types, it "
"can automatically convert between array types, convert numeric [String]s to "
"[int], and converting most things to [String].\n"
"If the type conversion cannot be done, this method will return the default "
"value for that type, for example converting [Rect2] to [Vector2] will always "
"return [constant Vector2.ZERO]. This method will never show error messages as "
"long as [param type] is a valid Variant type.\n"
"The returned value is a [Variant], but the data inside and its type will be "
"the same as the requested type.\n"
"[codeblock]\n"
"type_convert(\"Hi!\", TYPE_INT) # Returns 0\n"
"type_convert(\"123\", TYPE_INT) # Returns 123\n"
"type_convert(123.4, TYPE_INT) # Returns 123\n"
"type_convert(5, TYPE_VECTOR2) # Returns (0, 0)\n"
"type_convert(\"Hi!\", TYPE_NIL) # Returns null\n"
"[/codeblock]"
msgstr ""
"Преобразует заданный [param variant] в заданный [param type], используя "
"значения [enum Variant.Type]. Этот метод щедро обрабатывает типы: он может "
"автоматически преобразовывать типы массивов, преобразовывать числовые "
"значения [String] в [int] и преобразовывать большинство объектов в [String].\n"
"Если преобразование типа невозможно выполнить, этот метод вернет значение по "
"умолчанию для этого типа, например, преобразование [Rect2] в [Vector2] всегда "
"будет возвращать [constant Vector2.ZERO]. Этот метод никогда не будет "
"отображать сообщения об ошибках, пока [param type] является допустимым типом "
"варианта.\n"
"Возвращаемое значение — [Variant], но данные внутри и их тип будут такими же, "
"как запрошенный тип.\n"
"[codeblock]\n"
"type_convert(\"Hi!\", TYPE_INT) # Возвращает 0\n"
"type_convert(\"123\", TYPE_INT) # Возвращает 123\n"
"type_convert(123.4, TYPE_INT) # Возвращает 123\n"
"type_convert(5, TYPE_VECTOR2) # Returns (0, 0)\n"
"type_convert(\"Hi!\", TYPE_NIL) # Возвращает null\n"
"[/codeblock]"

msgid ""
"Returns a human-readable name of the given [param type], using the [enum "
"Variant.Type] values.\n"
"[codeblock]\n"
"print(TYPE_INT) # Prints 2\n"
"print(type_string(TYPE_INT)) # Prints \"int\"\n"
"print(type_string(TYPE_STRING)) # Prints \"String\"\n"
"[/codeblock]\n"
"See also [method typeof]."
msgstr ""
"Возвращает понятное человеку имя указанного [param type], используя значения "
"[enum Variant.Type].\n"
"[codeblock]\n"
"print(TYPE_INT) # Prints 2\n"
"print(type_string(TYPE_INT)) # Prints \"int\"\n"
"print(type_string(TYPE_STRING)) # Prints \"String\"\n"
"[/codeblock]\n"
"Смотрите также [method typeof]."

msgid ""
"Returns the internal type of the given [param variable], using the [enum "
"Variant.Type] values.\n"
"[codeblock]\n"
"var json = JSON.new()\n"
"json.parse('[\"a\", \"b\", \"c\"]')\n"
"var result = json.get_data()\n"
"if result is Array:\n"
"\tprint(result[0]) # Prints \"a\"\n"
"else:\n"
"\tprint(\"Unexpected result!\")\n"
"[/codeblock]\n"
"See also [method type_string]."
msgstr ""
"Возвращает внутренний тип заданной [param variable], используя значения [enum "
"Variant.Type].\n"
"[codeblock]\n"
"var json = JSON.new()\n"
"json.parse('[\"a\", \"b\", \"c\"]')\n"
"var result = json.get_data()\n"
"if result is Array:\n"
"\tprint(result[0]) # Prints \"a\"\n"
"else:\n"
"\tprint(\"Unexpected result!\")\n"
"[/codeblock]\n"
"См. также [method type_string]."

msgid ""
"Encodes a [Variant] value to a byte array, without encoding objects. "
"Deserialization can be done with [method bytes_to_var].\n"
"[b]Note:[/b] If you need object serialization, see [method "
"var_to_bytes_with_objects].\n"
"[b]Note:[/b] Encoding [Callable] is not supported and will result in an empty "
"value, regardless of the data."
msgstr ""
"Кодирует значение [Variant] в массив байтов без кодирования объектов. "
"Десериализацию можно выполнить с помощью [method bytes_to_var].\n"
"[b]Примечание:[/b] Если вам нужна сериализация объектов, см. [method "
"var_to_bytes_with_objects].\n"
"[b]Примечание:[/b] Кодировка [Callable] не поддерживается и приведет к "
"пустому значению независимо от данных."

msgid ""
"Encodes a [Variant] value to a byte array. Encoding objects is allowed (and "
"can potentially include executable code). Deserialization can be done with "
"[method bytes_to_var_with_objects].\n"
"[b]Note:[/b] Encoding [Callable] is not supported and will result in an empty "
"value, regardless of the data."
msgstr ""
"Кодирует значение [Variant] в массив байтов. Кодирование объектов разрешено "
"(и может потенциально включать исполняемый код). Десериализацию можно "
"выполнить с помощью [method bytes_to_var_with_objects].\n"
"[b]Примечание:[/b] Кодирование [Callable] не поддерживается и приведет к "
"пустому значению независимо от данных."

msgid ""
"Converts a [Variant] [param variable] to a formatted [String] that can then "
"be parsed using [method str_to_var].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = { \"a\": 1, \"b\": 2 }\n"
"print(var_to_str(a))\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Godot.Collections.Dictionary { [\"a\"] = 1, [\"b\"] = 2 };\n"
"GD.Print(GD.VarToStr(a));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"{\n"
"\t\"a\": 1,\n"
"\t\"b\": 2\n"
"}\n"
"[/codeblock]\n"
"[b]Note:[/b] Converting [Signal] or [Callable] is not supported and will "
"result in an empty value for these types, regardless of their data."
msgstr ""
"Преобразует [Variant] [param variable] в форматированную [String], которую "
"затем можно проанализировать с помощью [method str_to_var].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = { \"a\": 1, \"b\": 2 }\n"
"print(var_to_str(a))\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Godot.Collections.Dictionary { [\"a\"] = 1, [\"b\"] = 2 };\n"
"GD.Print(GD.VarToStr(a));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"{\n"
"\t\"a\": 1,\n"
"\t\"b\": 2\n"
"}\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Преобразование [Signal] или [Callable] не поддерживается и "
"приведет к пустому значению для этих типов, независимо от их данных."

msgid ""
"Returns a [WeakRef] instance holding a weak reference to [param obj]. Returns "
"an empty [WeakRef] instance if [param obj] is [code]null[/code]. Prints an "
"error and returns [code]null[/code] if [param obj] is neither [Object]-"
"derived nor [code]null[/code].\n"
"A weak reference to an object is not enough to keep the object alive: when "
"the only remaining references to a referent are weak references, garbage "
"collection is free to destroy the referent and reuse its memory for something "
"else. However, until the object is actually destroyed the weak reference may "
"return the object even if there are no strong references to it."
msgstr ""
"Возвращает экземпляр [WeakRef], содержащий слабую ссылку на [param obj]. "
"Возвращает пустой экземпляр [WeakRef], если [param obj] равен [code]null[/"
"code]. Выводит ошибку и возвращает [code]null[/code], если [param obj] не "
"является ни [Object]-производным, ни [code]null[/code].\n"
"Слабой ссылки на объект недостаточно, чтобы сохранить объект живым: когда "
"единственные оставшиеся ссылки на референт являются слабыми ссылками, сборка "
"мусора может свободно уничтожить референт и повторно использовать его память "
"для чего-то другого. Однако, пока объект фактически не уничтожен, слабая "
"ссылка может вернуть объект, даже если на него нет сильных ссылок."

msgid ""
"Wraps the [Variant] [param value] between [param min] and [param max]. [param "
"min] is [i]inclusive[/i] while [param max] is [i]exclusive[/i]. This can be "
"used for creating loop-like behavior or infinite surfaces.\n"
"Variant types [int] and [float] are supported. If any of the arguments is "
"[float], this function returns a [float], otherwise it returns an [int].\n"
"[codeblock]\n"
"var a = wrap(4, 5, 10)\n"
"# a is 9 (int)\n"
"\n"
"var a = wrap(7, 5, 10)\n"
"# a is 7 (int)\n"
"\n"
"var a = wrap(10.5, 5, 10)\n"
"# a is 5.5 (float)\n"
"[/codeblock]"
msgstr ""
"Заключает [Variant] [param value] между [param min] и [param max]. [param "
"min] — [i]включительно[/i], а [param max] — [i]исключительно[/i]. Это можно "
"использовать для создания циклов или бесконечных поверхностей.\n"
"Поддерживаются типы вариантов [int] и [float]. Если какой-либо из аргументов "
"— [float], функция возвращает [float], в противном случае — [int].\n"
"[codeblock]\n"
"var a = wrap(4, 5, 10)\n"
"# a это 9 (int)\n"
"\n"
"var a = wrap(7, 5, 10)\n"
"# a это 7 (int)\n"
"\n"
"var a = wrap(10.5, 5, 10)\n"
"# a это 5.5 (float)\n"
"[/codeblock]"

msgid ""
"Wraps the float [param value] between [param min] and [param max]. [param "
"min] is [i]inclusive[/i] while [param max] is [i]exclusive[/i]. This can be "
"used for creating loop-like behavior or infinite surfaces.\n"
"[codeblock]\n"
"# Infinite loop between 5.0 and 9.9\n"
"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Infinite rotation (in radians)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
"[/codeblock]\n"
"[b]Note:[/b] If [param min] is [code]0[/code], this is equivalent to [method "
"fposmod], so prefer using that instead. [method wrapf] is more flexible than "
"using the [method fposmod] approach by giving the user control over the "
"minimum value."
msgstr ""
"Заключает число с плавающей точкой [param value] между [param min] и [param "
"max]. Значение [param min] [i]включительно[/i], а значение [param max] "
"[i]исключительно[/i]. Это можно использовать для создания циклов или "
"бесконечных поверхностей.\n"
"[codeblock]\n"
"# Бесконечный цикл между 5.0 и 9.9\n"
"value = wrapf(value + 0.1, 5.0, 10.0)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Бесконечное вращение (в радианах)\n"
"angle = wrapf(angle + 0.1, 0.0, TAU)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# Бесконечное вращение (в радианах)\n"
"angle = wrapf(angle + 0.1, -PI, PI)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Если [param min] равен [code]0[/code], это эквивалентно "
"[method fposmod], поэтому предпочтительнее использовать его. [method wrapf] "
"более гибок, чем подход с [method fposmod], поскольку предоставляет "
"пользователю контроль над минимальным значением."

msgid ""
"Wraps the integer [param value] between [param min] and [param max]. [param "
"min] is [i]inclusive[/i] while [param max] is [i]exclusive[/i]. This can be "
"used for creating loop-like behavior or infinite surfaces.\n"
"[codeblock]\n"
"# Infinite loop between 5 and 9\n"
"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# result is -2\n"
"var result = wrapi(-6, -5, -1)\n"
"[/codeblock]"
msgstr ""
"Заключает целое число [param value] между [param min] и [param max]. Значение "
"[param min] [i]включительно[/i], а значение [param max] [i]исключительно[/i]. "
"Это можно использовать для создания циклов или бесконечных поверхностей.\n"
"[codeblock]\n"
"# Бесконечный цикл между 5 и 9\n"
"frame = wrapi(frame + 1, 5, 10)\n"
"[/codeblock]\n"
"[codeblock]\n"
"# result это -2\n"
"var result = wrapi(-6, -5, -1)\n"
"[/codeblock]"

msgid "The [AudioServer] singleton."
msgstr "Синглтон [AudioServer]."

msgid "The [CameraServer] singleton."
msgstr "Синглтон [CameraServer]."

msgid "The [ClassDB] singleton."
msgstr "Синглтон [ClassDB]."

msgid "The [DisplayServer] singleton."
msgstr "Синглтон [DisplayServer]."

msgid ""
"The [EditorInterface] singleton.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"Синглтон [EditorInterface].\n"
"[b]Примечание:[/b] Доступно только в сборках редактора."

msgid "The [Engine] singleton."
msgstr "Синглтон [Engine]."

msgid "The [EngineDebugger] singleton."
msgstr "Синглтон [EngineDebugger]."

msgid "The [GDExtensionManager] singleton."
msgstr "Синглтон [GDExtensionManager]."

msgid "The [Geometry2D] singleton."
msgstr "Синглтон [Geometry2D]."

msgid "The [Geometry3D] singleton."
msgstr "Синглтон [Geometry3D]."

msgid "The [IP] singleton."
msgstr "Синглтон [IP]."

msgid "The [Input] singleton."
msgstr "Синглтон [Input]."

msgid "The [InputMap] singleton."
msgstr "Синглтон [InputMap]."

msgid ""
"The [JavaClassWrapper] singleton.\n"
"[b]Note:[/b] Only implemented on Android."
msgstr ""
"Синглтон [JavaClassWrapper].\n"
"[b]Примечание:[/b] Реализовано только на Android."

msgid ""
"The [JavaScriptBridge] singleton.\n"
"[b]Note:[/b] Only implemented on the Web platform."
msgstr ""
"Синглтон [JavaScriptBridge].\n"
"[b]Примечание:[/b] Реализовано только на веб-платформе."

msgid "The [Marshalls] singleton."
msgstr "Синглтон [Marshalls]."

msgid ""
"The [NativeMenu] singleton.\n"
"[b]Note:[/b] Only implemented on macOS."
msgstr ""
"Синглтон [NativeMenu].\n"
"[b]Примечание:[/b] Реализовано только на macOS."

msgid "The [NavigationMeshGenerator] singleton."
msgstr "Синглтон [NavigationMeshGenerator]."

msgid "The [NavigationServer2D] singleton."
msgstr "Синглтон [NavigationServer2D]."

msgid "The [NavigationServer3D] singleton."
msgstr "Синглтон [NavigationServer3D]."

msgid "The [OS] singleton."
msgstr "Синглтон [OS]."

msgid "The [Performance] singleton."
msgstr "Синглтон [Performance]."

msgid "The [PhysicsServer2D] singleton."
msgstr "Синглтон [PhysicsServer2D]."

msgid "The [PhysicsServer2DManager] singleton."
msgstr "Синглтон [PhysicsServer2DManager]."

msgid "The [PhysicsServer3D] singleton."
msgstr "Синглтон [PhysicsServer3D]."

msgid "The [PhysicsServer3DManager] singleton."
msgstr "Синглтон [PhysicsServer3DManager]."

msgid "The [ProjectSettings] singleton."
msgstr "Синглтон [ProjectSettings]."

msgid "The [RenderingServer] singleton."
msgstr "Синглтон [RenderingServer]."

msgid "The [ResourceLoader] singleton."
msgstr "Синглтон [ResourceLoader]."

msgid "The [ResourceSaver] singleton."
msgstr "Синглтон [ResourceSaver]."

msgid "The [ResourceUID] singleton."
msgstr "Синглтон [ResourceUID]."

msgid "The [TextServerManager] singleton."
msgstr "Синглтон [TextServerManager]."

msgid "The [ThemeDB] singleton."
msgstr "Синглтон [ThemeDB]."

msgid "The [Time] singleton."
msgstr "Синглтон [Time]."

msgid "The [TranslationServer] singleton."
msgstr "Синглтон [TranslationServer]."

msgid "The [WorkerThreadPool] singleton."
msgstr "Синглтон [WorkerThreadPool]."

msgid "The [XRServer] singleton."
msgstr "Синглтон [XRServer]."

msgid "Left side, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
"Левая сторона, обычно используется для классов, производных от [Control] или "
"[StyleBox]."

msgid "Top side, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
"Верхняя сторона, обычно используется для классов, производных от [Control] "
"или [StyleBox]."

msgid "Right side, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
"Правая сторона, обычно используется для классов, производных от [Control] или "
"[StyleBox]."

msgid "Bottom side, usually used for [Control] or [StyleBox]-derived classes."
msgstr ""
"Нижняя сторона, обычно используется для классов, производных от [Control] или "
"[StyleBox]."

msgid "Top-left corner."
msgstr "Верхний левый угол."

msgid "Top-right corner."
msgstr "Верхний правый угол."

msgid "Bottom-right corner."
msgstr "Нижний правый угол."

msgid "Bottom-left corner."
msgstr "Нижний левый угол."

msgid ""
"General vertical alignment, usually used for [Separator], [ScrollBar], "
"[Slider], etc."
msgstr ""
"Общее вертикальное выравнивание, обычно используется для [Separator], "
"[ScrollBar], [Slider] и т.д."

msgid ""
"General horizontal alignment, usually used for [Separator], [ScrollBar], "
"[Slider], etc."
msgstr ""
"Общее горизонтальное выравнивание, обычно используется для [Separator], "
"[ScrollBar], [Slider] и т.д."

msgid ""
"Clockwise rotation. Used by some methods (e.g. [method Image.rotate_90])."
msgstr ""
"Вращение по часовой стрелке. Используется некоторыми методами (например "
"[method Image.rotate_90])."

msgid ""
"Counter-clockwise rotation. Used by some methods (e.g. [method "
"Image.rotate_90])."
msgstr ""
"Вращение против часовой стрелки. Используется некоторыми методами (например, "
"[method Image.rotate_90])."

msgid "Horizontal left alignment, usually for text-derived classes."
msgstr ""
"Горизонтальное выравнивание по левому краю, обычно для классов, содержащих "
"текст."

msgid "Horizontal center alignment, usually for text-derived classes."
msgstr ""
"Горизонтальное выравнивание по центру, обычно для классов, содержащих текст."

msgid "Horizontal right alignment, usually for text-derived classes."
msgstr ""
"Горизонтальное выравнивание по правому краю, обычно для классов, содержащих "
"текст."

msgid "Expand row to fit width, usually for text-derived classes."
msgstr "Расширить строку по ширине, обычно для текстовых классов."

msgid "Vertical top alignment, usually for text-derived classes."
msgstr "Вертикальное выравнивание сверху, обычно для классов, содержащих текст."

msgid "Vertical center alignment, usually for text-derived classes."
msgstr ""
"Вертикальное выравнивание по центру, обычно для классов, содержащих текст."

msgid "Vertical bottom alignment, usually for text-derived classes."
msgstr "Вертикальное выравнивание снизу, обычно для классов, содержащих текст."

msgid "Expand rows to fit height, usually for text-derived classes."
msgstr "Расширить строки по высоте, обычно для текстовых классов."

msgid ""
"Aligns the top of the inline object (e.g. image, table) to the position of "
"the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] constant."
msgstr ""
"Выравнивает верх встроенного объекта (например, изображения, таблицы) к "
"позиции текста, определённой константой [code]INLINE_ALIGNMENT_TO_*[/code]."

msgid ""
"Aligns the center of the inline object (e.g. image, table) to the position of "
"the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] constant."
msgstr ""
"Выравнивает центр встроенного объекта (например, изображения, таблицы) к "
"позиции текста, определённой константой [code]INLINE_ALIGNMENT_TO_*[/code]."

msgid ""
"Aligns the baseline (user defined) of the inline object (e.g. image, table) "
"to the position of the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] "
"constant."
msgstr ""
"Выравнивает базовую линию (определенную пользователем) встроенного объекта "
"(например, изображение, таблица), относительно положения текста, указанного "
"константой [code]INLINE_ALIGNMENT_TO_*[/code] ."

msgid ""
"Aligns the bottom of the inline object (e.g. image, table) to the position of "
"the text specified by [code]INLINE_ALIGNMENT_TO_*[/code] constant."
msgstr ""
"Выравнивает низ встроенного объекта (например, изображения, таблицы) к "
"позиции текста, определённой константой [code]INLINE_ALIGNMENT_TO_*[/code]."

msgid ""
"Aligns the position of the inline object (e.g. image, table) specified by "
"[code]INLINE_ALIGNMENT_*_TO[/code] constant to the top of the text."
msgstr ""
"Выравнивает позицию встроенного объекта (например, изображения, таблицы), "
"определённой константой [code]INLINE_ALIGNMENT_*_TO[/code] к верху текста."

msgid ""
"Aligns the position of the inline object (e.g. image, table) specified by "
"[code]INLINE_ALIGNMENT_*_TO[/code] constant to the center of the text."
msgstr ""
"Выравнивает позицию встроенного объекта (например, изображения, таблицы), "
"определённой константой [code]INLINE_ALIGNMENT_*_TO[/code] к центру текста."

msgid ""
"Aligns the position of the inline object (e.g. image, table) specified by "
"[code]INLINE_ALIGNMENT_*_TO[/code] constant to the baseline of the text."
msgstr ""
"Выравнивает положение встроенного объекта (например, изображение, таблица) "
"указанного константой [code]INLINE_ALIGNMENT_*_TO[/code], относительно "
"базовой линии текста."

msgid "Aligns inline object (e.g. image, table) to the bottom of the text."
msgstr ""
"Выравнивает встроенный объект (например, изображение, таблица) по нижней "
"части текста."

msgid ""
"Aligns top of the inline object (e.g. image, table) to the top of the text. "
"Equivalent to [code]INLINE_ALIGNMENT_TOP_TO | INLINE_ALIGNMENT_TO_TOP[/code]."
msgstr ""
"Выравнивает верхнюю часть встроенного объекта (например, изображение, "
"таблица) относительно верхней части текста. Аналогично "
"[code]INLINE_ALIGNMENT_TOP_TO | INLINE_ALIGNMENT_TO_TOP[/code]."

msgid ""
"Aligns center of the inline object (e.g. image, table) to the center of the "
"text. Equivalent to [code]INLINE_ALIGNMENT_CENTER_TO | "
"INLINE_ALIGNMENT_TO_CENTER[/code]."
msgstr ""
"Выравнивает центр встроенного объекта (например, изображение, таблица) по "
"центру текста. Аналогично [code]INLINE_ALIGNMENT_CENTER_TO | "
"INLINE_ALIGNMENT_TO_CENTER[/code]."

msgid ""
"Aligns bottom of the inline object (e.g. image, table) to the bottom of the "
"text. Equivalent to [code]INLINE_ALIGNMENT_BOTTOM_TO | "
"INLINE_ALIGNMENT_TO_BOTTOM[/code]."
msgstr ""
"Выравнивает нижнюю часть встроенного объекта (например, изображение, таблица) "
"по нижней части текста. Аналогично [code]INLINE_ALIGNMENT_BOTTOM_TO | "
"INLINE_ALIGNMENT_TO_BOTTOM[/code]."

msgid "A bit mask for [code]INLINE_ALIGNMENT_*_TO[/code] alignment constants."
msgstr ""
"Битовая маска для констант выравнивания [code]INLINE_ALIGNMENT_*_TO[/code]."

msgid "A bit mask for [code]INLINE_ALIGNMENT_TO_*[/code] alignment constants."
msgstr ""
"Битовая маска для констант выравнивания [code]INLINE_ALIGNMENT_*_TO[/code]."

msgid ""
"Specifies that Euler angles should be in XYZ order. When composing, the order "
"is X, Y, Z. When decomposing, the order is reversed, first Z, then Y, and X "
"last."
msgstr ""
"Указывает что углы Эйлера должны быть в порядке XYZ. При составлении порядок "
"X, Y, Z. А при разложении порядок меняется на противоположный, сначала Z, "
"потом Y, а в конце X."

msgid ""
"Specifies that Euler angles should be in XZY order. When composing, the order "
"is X, Z, Y. When decomposing, the order is reversed, first Y, then Z, and X "
"last."
msgstr ""
"Указывает что углы Эйлера должны быть в порядке XZY. При составлении порядок "
"X, Z, Y. А при разложении порядок меняется на противоположный, сначала Y, "
"потом Z, а в конце X."

msgid ""
"Specifies that Euler angles should be in YXZ order. When composing, the order "
"is Y, X, Z. When decomposing, the order is reversed, first Z, then X, and Y "
"last."
msgstr ""
"Указывает что углы Эйлера должны быть в порядке YXZ. При составлении порядок "
"Y,X,Z. А при разложении порядок меняется на противоположный, сначала Z, потом "
"X, а в конце Y."

msgid ""
"Specifies that Euler angles should be in YZX order. When composing, the order "
"is Y, Z, X. When decomposing, the order is reversed, first X, then Z, and Y "
"last."
msgstr ""
"Указывает что углы Эйлера должны быть в порядке YZX. При составлении порядок "
"Y, Z, X. А при разложении порядок меняется на противоположный, сначала X, "
"потом Z, а в конце X."

msgid ""
"Specifies that Euler angles should be in ZXY order. When composing, the order "
"is Z, X, Y. When decomposing, the order is reversed, first Y, then X, and Z "
"last."
msgstr ""
"Указывает что углы Эйлера должны быть в порядке ZXY. При составлении порядок "
"Z, X, Y. А при разложении порядок меняется на противоположный, сначала Y, "
"потом X, а в конце Z."

msgid ""
"Specifies that Euler angles should be in ZYX order. When composing, the order "
"is Z, Y, X. When decomposing, the order is reversed, first X, then Y, and Z "
"last."
msgstr ""
"Указывает что углы Эйлера должны быть в порядке ZYX. При составлении порядок "
"Z, Y, X. А при разложении порядок меняется на противоположный, сначала X, "
"потом Y, а в конце Z."

msgid ""
"Enum value which doesn't correspond to any key. This is used to initialize "
"[enum Key] properties with a generic state."
msgstr ""
"Значение перечисления, которые не соответствует ни одному ключу. Это "
"используется для инициализации свойств [enum Key] с общим состоянием."

msgid "Keycodes with this bit applied are non-printable."
msgstr "Коды клавиш с этим битом не подлежат печати."

msgid "Escape key."
msgstr "Клавиша Escape."

msgid "Tab key."
msgstr "Клавиша Tab."

msgid "Shift + Tab key."
msgstr "Клавиша Shift + Tab."

msgid "Backspace key."
msgstr "Клавиша Backspace."

msgid "Return key (on the main keyboard)."
msgstr "Клавиша возврата (на основной клавиатуре)."

msgid "Enter key on the numeric keypad."
msgstr "Клавиша ввода на цифровой клавиатуре."

msgid "Insert key."
msgstr "Клавиша Insert."

msgid "Delete key."
msgstr "Клавиша Delete."

msgid "Pause key."
msgstr "Клавиша Pause."

msgid "Print Screen key."
msgstr "Клавиша Print Screen."

msgid "System Request key."
msgstr "Клавиша System Request."

msgid "Clear key."
msgstr "Клавиша очистки."

msgid "Home key."
msgstr "Клавиша Home."

msgid "End key."
msgstr "Клавиша End."

msgid "Left arrow key."
msgstr "Клавиша со стрелкой влево."

msgid "Up arrow key."
msgstr "Клавиша со стрелкой вверх."

msgid "Right arrow key."
msgstr "Клавиша со стрелкой вправо."

msgid "Down arrow key."
msgstr "Клавиша со стрелкой вниз."

msgid "Page Up key."
msgstr "Клавиша Page Up."

msgid "Page Down key."
msgstr "Клавиша Page Down."

msgid "Shift key."
msgstr "Клавиша Shift."

msgid "Control key."
msgstr "Клавиша Control."

msgid "Meta key."
msgstr "Клавиша Meta."

msgid "Alt key."
msgstr "Клавиша Alt."

msgid "Caps Lock key."
msgstr "Клавиша Caps Lock."

msgid "Num Lock key."
msgstr "Клавиша Num Lock."

msgid "Scroll Lock key."
msgstr "Клавиша Scroll Lock."

msgid "F1 key."
msgstr "Клавиша F1."

msgid "F2 key."
msgstr "Клавиша F2."

msgid "F3 key."
msgstr "Клавиша F3."

msgid "F4 key."
msgstr "Клавиша F4."

msgid "F5 key."
msgstr "Клавиша F5."

msgid "F6 key."
msgstr "Клавиша F6."

msgid "F7 key."
msgstr "Клавиша F7."

msgid "F8 key."
msgstr "Клавиша F8."

msgid "F9 key."
msgstr "Клавиша F9."

msgid "F10 key."
msgstr "Клавиша F10."

msgid "F11 key."
msgstr "Клавиша F11."

msgid "F12 key."
msgstr "Клавиша F12."

msgid "F13 key."
msgstr "Клавиша F13."

msgid "F14 key."
msgstr "Клавиша F14."

msgid "F15 key."
msgstr "Клавиша F15."

msgid "F16 key."
msgstr "Клавиша F16."

msgid "F17 key."
msgstr "Клавиша F17."

msgid "F18 key."
msgstr "Клавиша F18."

msgid "F19 key."
msgstr "Клавиша F19."

msgid "F20 key."
msgstr "Клавиша F20."

msgid "F21 key."
msgstr "Клавиша F21."

msgid "F22 key."
msgstr "Клавиша F22."

msgid "F23 key."
msgstr "Клавиша F23."

msgid "F24 key."
msgstr "Клавиша F24."

msgid "F25 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F25. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "F26 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F26. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "F27 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F27. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "F28 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F28. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "F29 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F29. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "F30 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F30. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "F31 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F31. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "F32 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F32. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "F33 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F33. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "F34 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F34. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "F35 key. Only supported on macOS and Linux due to a Windows limitation."
msgstr ""
"Клавиша F35. Поддерживается только в macOS и Linux, из-за ограничений Windows."

msgid "Multiply (*) key on the numeric keypad."
msgstr "Клавиша умножения (*) на цифровой клавиатуре."

msgid "Divide (/) key on the numeric keypad."
msgstr "Клавиша деления (/) на цифровой клавиатуре."

msgid "Subtract (-) key on the numeric keypad."
msgstr "Клавиша вычитания (-) на цифровой клавиатуре."

msgid "Period (.) key on the numeric keypad."
msgstr "Клавиша точки (.) на цифровой клавиатуре."

msgid "Add (+) key on the numeric keypad."
msgstr "Клавиша сложения (+) на цифровой клавиатуре."

msgid "Number 0 on the numeric keypad."
msgstr "Цифра 0 на цифровой клавиатуре."

msgid "Number 1 on the numeric keypad."
msgstr "Цифра 1 на цифровой клавиатуре."

msgid "Number 2 on the numeric keypad."
msgstr "Цифра 2 на цифровой клавиатуре."

msgid "Number 3 on the numeric keypad."
msgstr "Цифра 3 на цифровой клавиатуре."

msgid "Number 4 on the numeric keypad."
msgstr "Цифра 4 на цифровой клавиатуре."

msgid "Number 5 on the numeric keypad."
msgstr "Цифра 5 на цифровой клавиатуре."

msgid "Number 6 on the numeric keypad."
msgstr "Цифра 6 на цифровой клавиатуре."

msgid "Number 7 on the numeric keypad."
msgstr "Цифра 7 на цифровой клавиатуре."

msgid "Number 8 on the numeric keypad."
msgstr "Цифра 8 на цифровой клавиатуре."

msgid "Number 9 on the numeric keypad."
msgstr "Цифра 9 на цифровой клавиатуре."

msgid "Context menu key."
msgstr "Клавиша контекстного меню."

msgid "Hyper key. (On Linux/X11 only)."
msgstr "Гипер ключ. (Только в Linux/X11)."

msgid "Help key."
msgstr "Клавиша помощи."

msgid "Back key."
msgstr "Клавиша «Назад»."

msgid "Forward key."
msgstr "Клавиша «Вперед»."

msgid "Media stop key."
msgstr "Клавиша остановки мультимедиа."

msgid "Refresh key."
msgstr "Клавиша «Обновить»."

msgid "Volume down key."
msgstr "Клавиша уменьшения громкости."

msgid "Mute volume key."
msgstr "Клавиша отключения звука."

msgid "Volume up key."
msgstr "Клавиша увеличения громкости."

msgid "Media play key."
msgstr "Клавиша воспроизведения мультимедиа."

msgid "Previous song key."
msgstr "Клавиша «Предыдущая песня»."

msgid "Next song key."
msgstr "Клавиша «Следующая песня»."

msgid "Media record key."
msgstr "Клавиша «Медиа-запись»."

msgid "Home page key."
msgstr "Клавиша «Домашняя страница»."

msgid "Favorites key."
msgstr "Клавиша \"Избранное\"."

msgid "Search key."
msgstr "Клавиша поиска."

msgid "Standby key."
msgstr "Клавиша выключения."

msgid "Open URL / Launch Browser key."
msgstr "Клавиша «Открыть URL / Запустить браузер»."

msgid "Launch Mail key."
msgstr "Клавиша «Запустить почту»."

msgid "Launch Media key."
msgstr "Клавиша «Запуск Медиа»."

msgid "Launch Shortcut 0 key."
msgstr "Клавиша запуска 0."

msgid "Launch Shortcut 1 key."
msgstr "Клавиша запуска 1."

msgid "Launch Shortcut 2 key."
msgstr "Клавиша запуска 2."

msgid "Launch Shortcut 3 key."
msgstr "Клавиша запуска 3."

msgid "Launch Shortcut 4 key."
msgstr "Клавиша запуска 4."

msgid "Launch Shortcut 5 key."
msgstr "Клавиша запуска 5."

msgid "Launch Shortcut 6 key."
msgstr "Клавиша запуска 6."

msgid "Launch Shortcut 7 key."
msgstr "Клавиша запуска 7."

msgid "Launch Shortcut 8 key."
msgstr "Клавиша запуска 8."

msgid "Launch Shortcut 9 key."
msgstr "Клавиша запуска 9."

msgid "Launch Shortcut A key."
msgstr "Клавиша запуска A."

msgid "Launch Shortcut B key."
msgstr "Клавиша запуска B."

msgid "Launch Shortcut C key."
msgstr "Клавиша запуска C."

msgid "Launch Shortcut D key."
msgstr "Клавиша запуска D."

msgid "Launch Shortcut E key."
msgstr "Клавиша запуска E."

msgid "Launch Shortcut F key."
msgstr "Клавиша запуска F."

msgid "\"Globe\" key on Mac / iPad keyboard."
msgstr "Клавиша «Глобус» на клавиатуре Mac/iPad."

msgid "\"On-screen keyboard\" key on iPad keyboard."
msgstr "Клавиша «Экранная клавиатура» на клавиатуре iPad."

msgid "英数 key on Mac keyboard."
msgstr "Клавиша 英数 (Буквенно-цифровая) на клавиатуре Mac."

msgid "かな key on Mac keyboard."
msgstr "Клавиша かな (Кана) на клавиатуре Mac."

msgid "Unknown key."
msgstr "Неизвестная клавиша."

msgid "Space key."
msgstr "Клавиша пробела."

msgid "Exclamation mark ([code]![/code]) key."
msgstr "Клавиша восклицательного знака ([code]![/code])."

msgid "Double quotation mark ([code]\"[/code]) key."
msgstr "Двойная кавычка ([code]\"[/code])."

msgid "Number sign or [i]hash[/i] ([code]#[/code]) key."
msgstr "Знак числа или клавиша [i]решетки[/i] ([code]#[/code])."

msgid "Dollar sign ([code]$[/code]) key."
msgstr "Клавиша со знаком доллара ([code]$[/code])."

msgid "Percent sign ([code]%[/code]) key."
msgstr "Клавиша знака процента ([code]%[/code])."

msgid "Ampersand ([code]&[/code]) key."
msgstr "Клавиша амперсанда ([code]&[/code])."

msgid "Apostrophe ([code]'[/code]) key."
msgstr "Клавиша апострофа ([code]'[/code])."

msgid "Left parenthesis ([code]([/code]) key."
msgstr "Клавиша левой скобки ([code]([/code])."

msgid "Right parenthesis ([code])[/code]) key."
msgstr "Клавиша правой скобки ([code]([/code])."

msgid "Asterisk ([code]*[/code]) key."
msgstr "Клавиша звездочки (знак сноски, умножения) ([code]*[/code])."

msgid "Plus ([code]+[/code]) key."
msgstr "Клавиша плюс ([code]+[/code])."

msgid "Comma ([code],[/code]) key."
msgstr "Клавиша запятая ([code],[/code])."

msgid "Minus ([code]-[/code]) key."
msgstr "Клавиша минус ([code]-[/code])."

msgid "Period ([code].[/code]) key."
msgstr "Клавиша точки ([code].[/code])."

msgid "Slash ([code]/[/code]) key."
msgstr "Клавиша слэш (деления) ([code]/[/code])."

msgid "Number 0 key."
msgstr "Клавиша 0."

msgid "Number 1 key."
msgstr "Клавиша 1."

msgid "Number 2 key."
msgstr "Клавиша 2."

msgid "Number 3 key."
msgstr "Клавиша 3."

msgid "Number 4 key."
msgstr "Клавиша 4."

msgid "Number 5 key."
msgstr "Клавиша 5."

msgid "Number 6 key."
msgstr "Клавиша 6."

msgid "Number 7 key."
msgstr "Клавиша 7."

msgid "Number 8 key."
msgstr "Клавиша 8."

msgid "Number 9 key."
msgstr "Клавиша 9."

msgid "Colon ([code]:[/code]) key."
msgstr "Клавиша двоеточия ([code]:[/code])."

msgid "Semicolon ([code];[/code]) key."
msgstr "Клавиша точки с запятой ([code];[/code])."

msgid "Less-than sign ([code]<[/code]) key."
msgstr "Клавиша знака «меньше» ([code]<[/code])."

msgid "Equal sign ([code]=[/code]) key."
msgstr "Клавиша знака равенства ([code]=[/code])."

msgid "Greater-than sign ([code]>[/code]) key."
msgstr "Клавиша знака «больше» ([code]>[/code])."

msgid "Question mark ([code]?[/code]) key."
msgstr "Клавиша со знаком вопроса ([code]?[/code])."

msgid "At sign ([code]@[/code]) key."
msgstr "Клавиша at ([code]@[/code])."

msgid "A key."
msgstr "Клавиша A."

msgid "B key."
msgstr "Клавиша B."

msgid "C key."
msgstr "Клавиша C."

msgid "D key."
msgstr "Клавиша D."

msgid "E key."
msgstr "Клавиша E."

msgid "F key."
msgstr "Клавиша F."

msgid "G key."
msgstr "Клавиша G."

msgid "H key."
msgstr "Клавиша H."

msgid "I key."
msgstr "Клавиша I."

msgid "J key."
msgstr "Клавиша J."

msgid "K key."
msgstr "Клавиша K."

msgid "L key."
msgstr "Клавиша L."

msgid "M key."
msgstr "Клавиша M."

msgid "N key."
msgstr "Клавиша N."

msgid "O key."
msgstr "Клавиша O."

msgid "P key."
msgstr "Клавиша P."

msgid "Q key."
msgstr "Клавиша Q."

msgid "R key."
msgstr "Клавиша R."

msgid "S key."
msgstr "Клавиша S."

msgid "T key."
msgstr "Клавиша T."

msgid "U key."
msgstr "Клавиша U."

msgid "V key."
msgstr "Клавиша V."

msgid "W key."
msgstr "Клавиша W."

msgid "X key."
msgstr "Клавиша X."

msgid "Y key."
msgstr "Клавиша Y."

msgid "Z key."
msgstr "Клавиша Z."

msgid "Left bracket ([code][lb][/code]) key."
msgstr "Клавиша левой скобки ([code][lb][/code])."

msgid "Backslash ([code]\\[/code]) key."
msgstr "Клавиша обратной косой черты (Backslash key) ([code]\\[/code])."

msgid "Right bracket ([code][rb][/code]) key."
msgstr "Клавиша правой скобки ([code][rb][/code])."

msgid "Caret ([code]^[/code]) key."
msgstr "Клавиша курсора ([code]^[/code])."

msgid "Underscore ([code]_[/code]) key."
msgstr "Клавиша подчеркивания ([code]_[/code])."

msgid "Backtick ([code]`[/code]) key."
msgstr "Клавиша обратного апострофа ([code]`[/code])."

msgid "Left brace ([code]{[/code]) key."
msgstr "Клавиша левой фигурной скобки ([code]{[/code])."

msgid "Vertical bar or [i]pipe[/i] ([code]|[/code]) key."
msgstr "Вертикальная черта или [i]pipe[/i] ([code]|[/code])."

msgid "Right brace ([code]}[/code]) key."
msgstr "Клавиша правой фигурной скобки ([code]}[/code])."

msgid "Tilde ([code]~[/code]) key."
msgstr "Клавиша тильда ([code]~[/code])."

msgid "Yen symbol ([code]¥[/code]) key."
msgstr "Клавиша символа йены ([code]¥[/code])."

msgid "Section sign ([code]§[/code]) key."
msgstr "Клавиша знака раздела ([code]§[/code])."

msgid "Key Code mask."
msgstr "Клавиша Маска Кода."

msgid "Modifier key mask."
msgstr "Маска клавиши-модификатора."

msgid ""
"Automatically remapped to [constant KEY_META] on macOS and [constant "
"KEY_CTRL] on other platforms, this mask is never set in the actual events, "
"and should be used for key mapping only."
msgstr ""
"Автоматически переназначается на [constant KEY_META] на macOS и на [constant "
"KEY_CTRL] на других платформах, эта маска никогда не устанавливается в "
"реальных событиях и должна использоваться только для сопоставления ключей."

msgid "Shift key mask."
msgstr "Маска клавиши Shift."

msgid "Alt or Option (on macOS) key mask."
msgstr "Маска клавиш Alr или Option (на macOS)."

msgid "Command (on macOS) or Meta/Windows key mask."
msgstr "Маска клавиш Command (на macOS) или Meta/Windows."

msgid "Control key mask."
msgstr "Маска управляющей клавиши."

msgid "Keypad key mask."
msgstr "Маска клавиш цифровой клавиатуры."

msgid "Group Switch key mask."
msgstr "Маска клавиш группового переключатель."

msgid ""
"Used for keys which only appear once, or when a comparison doesn't need to "
"differentiate the [code]LEFT[/code] and [code]RIGHT[/code] versions.\n"
"For example, when using [method InputEvent.is_match], an event which has "
"[constant KEY_LOCATION_UNSPECIFIED] will match any [enum KeyLocation] on the "
"passed event."
msgstr ""
"Используется для клавиш, которые появляются только один раз, или когда при "
"сравнении не требуется различать [code] LEFT[/code] и [code]RIGHT [/code] "
"версий.\n"
"Например, при использовании [method InputEvent.is_match], событие которые, "
"имеет [constant KEY_LOCATION_UNSPECIFIED] будет соответствовать любому [enum "
"KeyLocation] в переданном событии."

msgid "A key which is to the left of its twin."
msgstr "Клавиша, которая находится слева от своего двойника."

msgid "A key which is to the right of its twin."
msgstr "Клавиша, которая находится справа от своего двойника."

msgid ""
"Enum value which doesn't correspond to any mouse button. This is used to "
"initialize [enum MouseButton] properties with a generic state."
msgstr ""
"Значение перечисления, которое не соответствует ни одной кнопке мыши. Это "
"используется для инициализации свойств [enum MouseButton] с помощью общего "
"состояния."

msgid "Primary mouse button, usually assigned to the left button."
msgstr "Основная кнопка мыши, обычно назначаемая левой кнопке."

msgid "Secondary mouse button, usually assigned to the right button."
msgstr "Дополнительная кнопка мыши, обычно назначаемая правой."

msgid "Middle mouse button."
msgstr "Средняя кнопка мыши."

msgid "Mouse wheel scrolling up."
msgstr "Прокрутка колеса мыши вверх."

msgid "Mouse wheel scrolling down."
msgstr "Прокрутка колесика мыши вниз."

msgid "Mouse wheel left button (only present on some mice)."
msgstr "Левая кнопка колесика мыши (имеется только на некоторых мышах)."

msgid "Mouse wheel right button (only present on some mice)."
msgstr "Правая кнопка колесика мыши (есть только на некоторых мышах)."

msgid ""
"Extra mouse button 1. This is sometimes present, usually to the sides of the "
"mouse."
msgstr ""
"Дополнительная кнопка мыши 1. Иногда присутствует, обычно по бокам мыши."

msgid ""
"Extra mouse button 2. This is sometimes present, usually to the sides of the "
"mouse."
msgstr ""
"Дополнительная кнопка мыши 2. Иногда присутствует, обычно по бокам мыши."

msgid "Primary mouse button mask, usually for the left button."
msgstr "Маска основной кнопки мыши, обычно для левой кнопки."

msgid "Secondary mouse button mask, usually for the right button."
msgstr "Маска дополнительной кнопки мыши, обычно для правой кнопки."

msgid "Middle mouse button mask."
msgstr "Маска средней кнопки мыши."

msgid "Extra mouse button 1 mask."
msgstr "Маска дополнительной кнопки мыши 1."

msgid "Extra mouse button 2 mask."
msgstr "Маска дополнительной кнопки мыши 2."

msgid "An invalid game controller button."
msgstr "Недопустимая кнопка игрового контроллера."

msgid ""
"Game controller SDL button A. Corresponds to the bottom action button: Sony "
"Cross, Xbox A, Nintendo B."
msgstr ""
"Кнопка А игрового контроллера SDL. Соответствует нижней кнопке действия: "
"Крестик на контроллерах Sony, А на контроллерах Xbox, B на контроллерах "
"Nintendo."

msgid ""
"Game controller SDL button B. Corresponds to the right action button: Sony "
"Circle, Xbox B, Nintendo A."
msgstr ""
"Кнопка B игрового контроллера SDL. Соответствует правой кнопке действия: "
"Кружок на контроллерах Sony, B на контроллерах Xbox, A на контроллерах "
"Nintendo."

msgid ""
"Game controller SDL button X. Corresponds to the left action button: Sony "
"Square, Xbox X, Nintendo Y."
msgstr ""
"Кнопка X игрового контроллера SDL. Соответствует левой кнопке действия: "
"Квадрат на контроллерах Sony, X на контроллерах Xbox, Y на контроллерах "
"Nintendo."

msgid ""
"Game controller SDL button Y. Corresponds to the top action button: Sony "
"Triangle, Xbox Y, Nintendo X."
msgstr ""
"Кнопка Y игрового контроллера SDL. Соответствует верхней кнопке действия: "
"Треугольник на контроллерах Sony, Y на контроллерах Xbox, X на контроллерах "
"Nintendo."

msgid ""
"Game controller SDL back button. Corresponds to the Sony Select, Xbox Back, "
"Nintendo - button."
msgstr ""
"Кнопка возврата игрового контроллера SDL. Соответствует кнопкам: Выбор на "
"контроллерах Sony, Возврат на Xbox, \"-\" на контроллерах Nintendo."

msgid ""
"Game controller SDL guide button. Corresponds to the Sony PS, Xbox Home "
"button."
msgstr ""
"Кнопка управления игрового контроллера SDL. Соответствует кнопкам Sony PS и "
"Xbox Home."

msgid ""
"Game controller SDL start button. Corresponds to the Sony Options, Xbox Menu, "
"Nintendo + button."
msgstr ""
"Кнопка запуска игрового контроллера SDL. Соответствует кнопкам: Настройки на "
"контроллерах Sony, Меню на контроллерах Xbox, \"+\" на контроллерах Nintendo."

msgid ""
"Game controller SDL left stick button. Corresponds to the Sony L3, Xbox L/LS "
"button."
msgstr ""
"Левый стик игрового контроллера SDL. Соответствует кнопкам: L3 на Sony, L/LS "
"на Xbox."

msgid ""
"Game controller SDL right stick button. Corresponds to the Sony R3, Xbox R/RS "
"button."
msgstr ""
"Правый стик игрового контроллера SDL. Соответствует кнопкам: R3 на Sony, R/RS "
"на Xbox."

msgid ""
"Game controller SDL left shoulder button. Corresponds to the Sony L1, Xbox LB "
"button."
msgstr ""
"Левая плечевая кнопка игрового контроллера SDL. Соответствует кнопкам: L1 на "
"Sony и LB на Xbox."

msgid ""
"Game controller SDL right shoulder button. Corresponds to the Sony R1, Xbox "
"RB button."
msgstr ""
"Правая плечевая кнопка игрового контроллера SDL. Соответствует кнопкам: R1 на "
"Sony и RB на Xbox."

msgid "Game controller D-pad up button."
msgstr "Кнопка вверх на крестовине игрового контроллера."

msgid "Game controller D-pad down button."
msgstr "Кнопка вниз на крестовине игрового контроллера."

msgid "Game controller D-pad left button."
msgstr "Кнопка влево на крестовине игрового контроллера."

msgid "Game controller D-pad right button."
msgstr "Кнопка вправо на крестовине игрового контроллера."

msgid ""
"Game controller SDL miscellaneous button. Corresponds to Xbox share button, "
"PS5 microphone button, Nintendo Switch capture button."
msgstr ""
"Кнопка разное на игровом контроллере SDL. Соответствует кнопкам: поделиться "
"на Xbox, микрофон на PS5, захват на Nintendo Switch."

msgid "Game controller SDL paddle 1 button."
msgstr "Игровой контроллер SDL paddle кнопка 1."

msgid "Game controller SDL paddle 2 button."
msgstr "Игровой контроллер SDL paddle кнопка 2."

msgid "Game controller SDL paddle 3 button."
msgstr "Игровой контроллер SDL paddle кнопка 3."

msgid "Game controller SDL paddle 4 button."
msgstr "Игровой контроллер SDL paddle кнопка 4."

msgid "Game controller SDL touchpad button."
msgstr "Кнопка сенсорной панели игрового контроллера SDL."

msgid "The number of SDL game controller buttons."
msgstr "Количество кнопок игрового контроллера SDL."

msgid ""
"The maximum number of game controller buttons supported by the engine. The "
"actual limit may be lower on specific platforms:\n"
"- [b]Android:[/b] Up to 36 buttons.\n"
"- [b]Linux:[/b] Up to 80 buttons.\n"
"- [b]Windows[/b] and [b]macOS:[/b] Up to 128 buttons."
msgstr ""
"Максимальное количество кнопок игрового контроллера, поддерживаемое движком. "
"Фактический предел может быть ниже на определенных платформах:\n"
"- [b]Android:[/b] До 36 кнопок.\n"
"- [b]Linux:[/b] До 80 кнопок.\n"
"- [b]Windows[/b] и [b]macOS:[/b] До 128 кнопок."

msgid "An invalid game controller axis."
msgstr "Недопустимая ось игрового контроллера."

msgid "Game controller left joystick x-axis."
msgstr "Игровой контроллер, левый джойстик, ось X."

msgid "Game controller left joystick y-axis."
msgstr "Игровой контроллер, левый джойстик, ось Y."

msgid "Game controller right joystick x-axis."
msgstr "Игровой контроллер, правый джойстик, ось X."

msgid "Game controller right joystick y-axis."
msgstr "Игровой контроллер, правый джойстик, ось Y."

msgid "Game controller left trigger axis."
msgstr "Левая ось триггера игрового контроллера."

msgid "Game controller right trigger axis."
msgstr "Правая ось триггера игрового контроллера."

msgid "The number of SDL game controller axes."
msgstr "Количество осей игрового контроллера SDL."

msgid ""
"The maximum number of game controller axes: OpenVR supports up to 5 Joysticks "
"making a total of 10 axes."
msgstr ""
"Максимальное количество игрового котроллера: OpenVR поддерживает до 5 "
"Джойстиков, что в итоге дает 10 осей."

msgid ""
"Does not correspond to any MIDI message. This is the default value of [member "
"InputEventMIDI.message]."
msgstr ""
"Не соответствует ни одному MIDI-сообщению. Это значение по умолчанию для "
"[member InputEventMIDI.message]."

msgid ""
"MIDI message sent when a note is released.\n"
"[b]Note:[/b] Not all MIDI devices send this message; some may send [constant "
"MIDI_MESSAGE_NOTE_ON] with [member InputEventMIDI.velocity] set to [code]0[/"
"code]."
msgstr ""
"MIDI-сообщение отправляется при отпускании ноты.\n"
"[b]Примечание:[/b] Не все MIDI-устройства отправляют это сообщение; некоторые "
"могут отправлять [constant MIDI_MESSAGE_NOTE_ON] с [member "
"InputEventMIDI.velocity], установленным на [code]0[/code]."

msgid "MIDI message sent when a note is pressed."
msgstr "MIDI-сообщение, отправляемое при нажатии на ноту."

msgid ""
"MIDI message sent to indicate a change in pressure while a note is being "
"pressed down, also called aftertouch."
msgstr ""
"MIDI-сообщение, отправляемое для указания изменения давления при нажатии "
"ноты, также называемое aftertouch."

msgid ""
"MIDI message sent when a controller value changes. In a MIDI device, a "
"controller is any input that doesn't play notes. These may include sliders "
"for volume, balance, and panning, as well as switches and pedals. See the "
"[url=https://en.wikipedia.org/wiki/General_MIDI#Controller_events]General "
"MIDI specification[/url] for a small list."
msgstr ""
"MIDI-сообщение, отправляемое после изменения значения контроллера. В MIDI "
"устройстве, контроллер — любое устройство, которое не проигрывает ноты. К ним "
"могут относиться ползунки для регулировки громкости звука, регулировки "
"баланса и панорамирования, а также переключатели и педали. Подробнее о них "
"смотрите по ссылке: [url=https://en.wikipedia.org/wiki/"
"General_MIDI#Controller_events]General MIDI specification[/url]."

msgid ""
"MIDI message sent when the MIDI device changes its current instrument (also "
"called [i]program[/i] or [i]preset[/i])."
msgstr ""
"MIDI-сообщение, отправляемое после изменения MIDI-устройством своего "
"инструмента (также называется [i]программой[/i] или [i]предустановкой[/i])."

msgid ""
"MIDI message sent to indicate a change in pressure for the whole channel. "
"Some MIDI devices may send this instead of [constant MIDI_MESSAGE_AFTERTOUCH]."
msgstr ""
"MIDI-сообщение, отправляемое для указания изменения давления для всего "
"канала. Некоторые MIDI-устройства могут отправлять его вместо [constant "
"MIDI_MESSAGE_AFTERTOUCH]."

msgid ""
"MIDI message sent when the value of the pitch bender changes, usually a wheel "
"on the MIDI device."
msgstr ""
"MIDI-сообщение, отправляемое после изменения значения питч-бендера, обычно "
"колесиком, расположенным на MIDI-устройстве."

msgid ""
"MIDI system exclusive (SysEx) message. This type of message is not "
"standardized and it's highly dependent on the MIDI device sending it.\n"
"[b]Note:[/b] Getting this message's data from [InputEventMIDI] is not "
"implemented."
msgstr ""
"Системное эксклюзивное сообщение MIDI (SysEx). Этот тип сообщения не является "
"стандартным и во многом зависит от отправляющего его MIDI-устройства.\n"
"[b]Примечание:[/b] Получение данных этого сообщения через [InputEventMIDI] не "
"реализовано."

msgid ""
"MIDI message sent every quarter frame to keep connected MIDI devices "
"synchronized. Related to [constant MIDI_MESSAGE_TIMING_CLOCK].\n"
"[b]Note:[/b] Getting this message's data from [InputEventMIDI] is not "
"implemented."
msgstr ""
"MIDI-сообщение, отправляемое каждую четверть кадра для синхронизации "
"подключенных MIDI-устройств. Связано с [constant MIDI_MESSAGE_TIMING_CLOCK].\n"
"[b]Примечание:[/b] Получение данных этого сообщения через [InputEventMIDI] не "
"реализовано."

msgid ""
"MIDI message sent to jump onto a new position in the current sequence or "
"song.\n"
"[b]Note:[/b] Getting this message's data from [InputEventMIDI] is not "
"implemented."
msgstr ""
"MIDI-сообщение, отправляемое для перехода на новую позицию в текущей "
"секвенции или песне.\n"
"[b]Примечание:[/b] Получение данных этого сообщения через [InputEventMIDI] не "
"реализовано."

msgid ""
"MIDI message sent to select a sequence or song to play.\n"
"[b]Note:[/b] Getting this message's data from [InputEventMIDI] is not "
"implemented."
msgstr ""
"MIDI-сообщение отправлено для выбора последовательности или песни для "
"воспроизведения.\n"
"[b]Примечание:[/b] Получение данных этого сообщения из [InputEventMIDI] не "
"реализовано."

msgid ""
"MIDI message sent to request a tuning calibration. Used on analog "
"synthesizers. Most modern MIDI devices do not need this message."
msgstr ""
"MIDI-сообщение, отправляемое для запроса калибровки настройки. Используется в "
"аналоговых синтезаторах. Большинству современных MIDI-устройств это сообщение "
"не требуется."

msgid ""
"MIDI message sent 24 times after [constant MIDI_MESSAGE_QUARTER_FRAME], to "
"keep connected MIDI devices synchronized."
msgstr ""
"MIDI-сообщение, отправляемое 24 раза после [constant "
"MIDI_MESSAGE_QUARTER_FRAME], для синхронизации подключенных MIDI-устройств."

msgid ""
"MIDI message sent to start the current sequence or song from the beginning."
msgstr ""
"MIDI сообщение, отправляемое для запуска текущей последовательности или песни "
"с начала."

msgid ""
"MIDI message sent to resume from the point the current sequence or song was "
"paused."
msgstr ""
"MIDI-сообщение, отправляемое для возобновления воспроизведения с того "
"момента, когда текущая секвенция или песня была приостановлена."

msgid "MIDI message sent to pause the current sequence or song."
msgstr ""
"MIDI-сообщение отправляется для приостановки текущей последовательности или "
"песни."

msgid ""
"MIDI message sent repeatedly while the MIDI device is idle, to tell the "
"receiver that the connection is alive. Most MIDI devices do not send this "
"message."
msgstr ""
"MIDI-сообщение, многократно отправляемое во время бездействия MIDI-устройства "
"для того, чтобы сообщить приемнику, что связь поддерживается. Большинство "
"MIDI-устройств это сообщение не отправляется."

msgid ""
"MIDI message sent to reset a MIDI device to its default state, as if it was "
"just turned on. It should not be sent when the MIDI device is being turned on."
msgstr ""
"MIDI-сообщение, отправляемое для возврата MIDI-устройства в состояние по "
"умолчанию, как если бы оно было только что включено. Его нельзя отправлять, "
"когда MIDI-устройство включено."

msgid ""
"Methods that return [enum Error] return [constant OK] when no error "
"occurred.\n"
"Since [constant OK] has value [code]0[/code], and all other error constants "
"are positive integers, it can also be used in boolean checks.\n"
"[codeblock]\n"
"var error = method_that_returns_error()\n"
"if error != OK:\n"
"\tprinterr(\"Failure!\")\n"
"\n"
"# Or, alternatively:\n"
"if error:\n"
"\tprinterr(\"Still failing!\")\n"
"[/codeblock]\n"
"[b]Note:[/b] Many functions do not return an error code, but will print error "
"messages to standard output."
msgstr ""
"Методы, возвращающие [enum Error], возвращают [constant OK], когда ошибок не "
"произошло.\n"
"Поскольку [constant OK] имеет значение [code]0[/code], а все остальные "
"константы ошибок являются положительными целыми числами, его также можно "
"использовать в булевых проверках.\n"
"[codeblock]\n"
"var error = method_that_returns_error()\n"
"if error != OK:\n"
"\tprinterr(\"Failure!\")\n"
"\n"
"#Или, в качестве альтернативы:\n"
"if error:\n"
"\tprinterr(\"Still failing!\")\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Многие функции не возвращают код ошибки, но выводят "
"сообщения об ошибках на стандартный вывод."

msgid "Generic error."
msgstr "Общая ошибка."

msgid "Unavailable error."
msgstr "Ошибка \"Недоступно\"."

msgid "Unconfigured error."
msgstr "Ошибка \"Не настроено\"."

msgid "Unauthorized error."
msgstr "Ошибка \"Не авторизовано\"."

msgid "Parameter range error."
msgstr "Ошибка диапазона параметров."

msgid "Out of memory (OOM) error."
msgstr "Ошибка нехватки памяти (OOM)."

msgid "File: Not found error."
msgstr "Ошибка \"Файл: Не найден\"."

msgid "File: Bad drive error."
msgstr "Ошибка \"Файл: Недопустимый диск\"."

msgid "File: Bad path error."
msgstr "Ошибка \"Файл: Неверный путь\"."

msgid "File: No permission error."
msgstr "Ошибка \"Файл: Нет разрешения\"."

msgid "File: Already in use error."
msgstr "Ошибка \"Файл: Уже используется\"."

msgid "File: Can't open error."
msgstr "Ошибка \"Файл: Невозможно открыть\"."

msgid "File: Can't write error."
msgstr "Ошибка \"Файл: Невозможно записать\"."

msgid "File: Can't read error."
msgstr "Ошибка \"Файл: Невозможно прочитать\"."

msgid "File: Unrecognized error."
msgstr "Ошибка \"Файл: Не распознан\"."

msgid "File: Corrupt error."
msgstr "Ошибка \"Файл: Повреждён\"."

msgid "File: Missing dependencies error."
msgstr "Ошибка \"Файл: Отсутствуют зависимости\"."

msgid "File: End of file (EOF) error."
msgstr "Ошибка \"Файл: Конец файла (EOF)\"."

msgid "Can't open error."
msgstr "Ошибка \"Невозможно открыть\"."

msgid "Can't create error."
msgstr "Ошибка \"Невозможно создать\"."

msgid "Query failed error."
msgstr "Ошибка \"Не удалось выполнить запрос\"."

msgid "Already in use error."
msgstr "Ошибка \"Уже используется\"."

msgid "Locked error."
msgstr "Ошибка \"Заблокировано\"."

msgid "Timeout error."
msgstr "Ошибка \"Время ожидания истекло\"."

msgid "Can't connect error."
msgstr "Ошибка \"Невозможно подключиться\"."

msgid "Can't resolve error."
msgstr "Ошибка \"Невозможно разрешить\"."

msgid "Connection error."
msgstr "Ошибка подключения."

msgid "Can't acquire resource error."
msgstr "Ошибка \"Невозможно получить ресурс\"."

msgid "Can't fork process error."
msgstr "Ошибка «Невозможно разветвить процесс»."

msgid "Invalid data error."
msgstr "Ошибка неверных данных."

msgid "Invalid parameter error."
msgstr "Ошибка неверного параметра."

msgid "Already exists error."
msgstr "Ошибка \"Уже существует\"."

msgid "Does not exist error."
msgstr "Ошибка \"Не существует\"."

msgid "Database: Read error."
msgstr "База данных: Ошибка чтения."

msgid "Database: Write error."
msgstr "База данных: Ошибка записи."

msgid "Compilation failed error."
msgstr "Ошибка компиляции."

msgid "Method not found error."
msgstr "Ошибка \"Метод не найден\"."

msgid "Linking failed error."
msgstr "Ошибка линковки."

msgid "Script failed error."
msgstr "Ошибка при выполнении скрипта."

msgid "Cycling link (import cycle) error."
msgstr "Ошибка циклической ссылки (цикл импорта)."

msgid "Invalid declaration error."
msgstr "Ошибка \"Недопустимое определение\"."

msgid "Duplicate symbol error."
msgstr "Ошибка \"Повторяющийся символ\"."

msgid "Parse error."
msgstr "Ошибка синтаксического разбора."

msgid "Busy error."
msgstr "Ошибка \"Занято\"."

msgid "Skip error."
msgstr "Ошибка \"Пропущено\"."

msgid ""
"Help error. Used internally when passing [code]--version[/code] or [code]--"
"help[/code] as executable options."
msgstr ""
"Ошибка при получении справки. Служит для внутреннего использования при "
"передаче [code]--version[/code] или [code]--help[/code] в качестве опций "
"исполняемого файла."

msgid ""
"Bug error, caused by an implementation issue in the method.\n"
"[b]Note:[/b] If a built-in method returns this code, please open an issue on "
"[url=https://github.com/godotengine/godot/issues]the GitHub Issue Tracker[/"
"url]."
msgstr ""
"Ошибка, вызванная проблемой реализации метода.\n"
"[b]Примечание:[/b] Если встроенный метод возвращает этот код, пожалуйста, "
"откройте проблему на [url=https://github.com/godotengine/godot/issues]трекере "
"проблем GitHub[/url]."

msgid ""
"Printer on fire error (This is an easter egg, no built-in methods return this "
"error code)."
msgstr ""
"Ошибка «Принтер в огне» (это пасхальное яйцо, ни один встроенный метод не "
"возвращает этот код ошибки)."

msgid "The property has no hint for the editor."
msgstr "Свойство не имеет подсказку в редакторе."

msgid ""
"Hints that an [int] or [float] property should be within a range specified "
"via the hint string [code]\"min,max\"[/code] or [code]\"min,max,step\"[/"
"code]. The hint string can optionally include [code]\"or_greater\"[/code] and/"
"or [code]\"or_less\"[/code] to allow manual input going respectively above "
"the max or below the min values.\n"
"[b]Example:[/b] [code]\"-360,360,1,or_greater,or_less\"[/code].\n"
"Additionally, other keywords can be included: [code]\"exp\"[/code] for "
"exponential range editing, [code]\"radians_as_degrees\"[/code] for editing "
"radian angles in degrees (the range values are also in degrees), [code]"
"\"degrees\"[/code] to hint at an angle and [code]\"hide_slider\"[/code] to "
"hide the slider."
msgstr ""
"Подсказки, что свойство [int] или [float] должно быть в диапазоне, указанном "
"с помощью строки подсказки [code]\"min,max\"[/code] или [code]"
"\"min,max,step\"[/code]. Строка подсказки может опционально включать [code]"
"\"or_greater\"[/code] и/или [code]\"or_less\"[/code], чтобы разрешить ручной "
"ввод значений, выходящих соответственно за пределы максимальных или за "
"пределы минимальных значений.\n"
"[b]Пример:[/b] [code]\"-360,360,1,or_greater,or_less\"[/code].\n"
"Кроме того, можно включить другие ключевые слова: [code]\"exp\"[/code] для "
"редактирования экспоненциального диапазона, [code]\"radians_as_degrees\"[/"
"code] для редактирования радианных углов в градусах (значения диапазона также "
"указываются в градусах), [code]\"degrees\"[/code] для указания угла и [code]"
"\"hide_slider\"[/code] для скрытия ползунка."

msgid ""
"Hints that an [int] or [String] property is an enumerated value to pick in a "
"list specified via a hint string.\n"
"The hint string is a comma separated list of names such as [code]"
"\"Hello,Something,Else\"[/code]. Whitespaces are [b]not[/b] removed from "
"either end of a name. For integer properties, the first name in the list has "
"value 0, the next 1, and so on. Explicit values can also be specified by "
"appending [code]:integer[/code] to the name, e.g. [code]"
"\"Zero,One,Three:3,Four,Six:6\"[/code]."
msgstr ""
"Указывает, что свойство [int] или [String] является перечисляемым значением, "
"которое нужно выбрать из списка, заданного в строке подсказки.\n"
"Строка подсказки представляет собой список имен, разделенных запятыми, "
"например [code]«Hello,Something,Else»[/code]. С обоих концов имени пробелы "
"[b]не удаляются[/b]. Для целых значений первое имя в списке имеет значение 0, "
"следующее - 1 и так далее. Выраженные значения также можно указать, добавив к "
"имени [code]:integer[/code], например, [code]«Zero,One,Three:3,Four,Six:6»[/"
"code]."

msgid ""
"Hints that a [String] property can be an enumerated value to pick in a list "
"specified via a hint string such as [code]\"Hello,Something,Else\"[/code].\n"
"Unlike [constant PROPERTY_HINT_ENUM], a property with this hint still accepts "
"arbitrary values and can be empty. The list of values serves to suggest "
"possible values."
msgstr ""
"Указывает, что свойство [String] может быть перечисляемым значением, которое "
"нужно выбрать из списка, заданного в строке подсказки, например, [code]"
"\"Hello,Something,Else\"[/code].\n"
"В отличие от [constant PROPERTY_HINT_ENUM], свойство с этой подсказкой по-"
"прежнему принимает произвольные значения и может быть пустым. Список значений "
"служит для предложения возможных значений."

msgid ""
"Hints that a [float] property should be edited via an exponential easing "
"function. The hint string can include [code]\"attenuation\"[/code] to flip "
"the curve horizontally and/or [code]\"positive_only\"[/code] to exclude in/"
"out easing and limit values to be greater than or equal to zero."
msgstr ""
"Подсказки, что свойство [float] должно быть отредактировано с помощью функции "
"экспоненциального смягчения. Строка подсказки может включать [code]"
"\"attenuation\"[/code] для переворота кривой по горизонтали и/или [code]"
"\"positive_only\"[/code] для исключения смягчения внутрь/наружу и ограничения "
"значений до значений, которые должны быть больше или равны нулю."

msgid ""
"Hints that a vector property should allow its components to be linked. For "
"example, this allows [member Vector2.x] and [member Vector2.y] to be edited "
"together."
msgstr ""
"Указывает, что векторное свойство позволяет связать его компоненты. Например, "
"это позволяет редактировать [member Vector2.x] и [member Vector2.y] вместе."

msgid ""
"Hints that an [int] property is a bitmask with named bit flags.\n"
"The hint string is a comma separated list of names such as [code]"
"\"Bit0,Bit1,Bit2,Bit3\"[/code]. Whitespaces are [b]not[/b] removed from "
"either end of a name. The first name in the list has value 1, the next 2, "
"then 4, 8, 16 and so on. Explicit values can also be specified by appending "
"[code]:integer[/code] to the name, e.g. [code]\"A:4,B:8,C:16\"[/code]. You "
"can also combine several flags ([code]\"A:4,B:8,AB:12,C:16\"[/code]).\n"
"[b]Note:[/b] A flag value must be at least [code]1[/code] and at most [code]2 "
"** 32 - 1[/code].\n"
"[b]Note:[/b] Unlike [constant PROPERTY_HINT_ENUM], the previous explicit "
"value is not taken into account. For the hint [code]\"A:16,B,C\"[/code], A is "
"16, B is 2, C is 4."
msgstr ""
"Указывает, что свойство типа [int] - это битовая маска с именованными "
"битовыми флагами.\n"
"Текст подсказки - это разделенный запятыми список идентификаторов, таких как "
"[code]\"Bit0,Bit1,Bit2,Bit3\"[/code]. Пробелы [b]не[/b] удаляются ни с одной "
"из сторон идентификатора. У первого идентификатора в списке - значение 1, у "
"следующего - 2, дальше - 4, 8, 16, и так далее. Также можно указать явные "
"значения, добавив [code]:integer[/code] к идентификатору, например, [code]"
"\"A:4,B:8,C:16\"[/code]. Также можно сочетать несколько флагов ([code]"
"\"A:4,B:8,AB:12,C:16\"[/code]).\n"
"[b]Примечание:[/b] Значение флага должно быть как минимум [code]1[/code] и "
"как максимум [code]2 ** 32 - 1[/code].\n"
"[b]Примечание:[/b] В отличие от [constant PROPERTY_HINT_ENUM], предыдущее "
"явное значение не переносится на идентификатор, стоящий следом. Для подсказки "
"с текстом [code]\"A:16,B,C\"[/code], A будет 16, B - 2, C - 4."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 2D "
"render layers."
msgstr ""
"Указывает, что свойство [int] является битовой маской, использующей "
"необязательно именованные слои 2D-рендеринга."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 2D "
"physics layers."
msgstr ""
"Указывает, что свойство [int] является битовой маской, использующей "
"необязательно именованные 2D-физические слои."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 2D "
"navigation layers."
msgstr ""
"Указывает, что свойство [int] является битовой маской, использующей "
"необязательно именованные слои 2D-навигации."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 3D "
"render layers."
msgstr ""
"Указывает, что свойство [int] является битовой маской, использующей "
"необязательно именованные слои 3D-рендеринга."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 3D "
"physics layers."
msgstr ""
"Указывает, что свойство [int] является битовой маской, использующей "
"необязательно именованные слои 3D-физики."

msgid ""
"Hints that an [int] property is a bitmask using the optionally named 3D "
"navigation layers."
msgstr ""
"Указывает, что свойство [int] является битовой маской, использующей "
"необязательно именованные слои 3D-навигации."

msgid ""
"Hints that an integer property is a bitmask using the optionally named "
"avoidance layers."
msgstr ""
"Указывает, что целочисленное свойство является битовой маской, используя "
"необязательно именованные слои избегания в навигации."

msgid ""
"Hints that a [String] property is a path to a file. Editing it will show a "
"file dialog for picking the path. The hint string can be a set of filters "
"with wildcards like [code]\"*.png,*.jpg\"[/code]. By default the file will be "
"stored as UID whenever available. You can use [ResourceUID] methods to "
"convert it back to path. For storing a raw path, use [constant "
"PROPERTY_HINT_FILE_PATH]."
msgstr ""
"Подсказка, что свойство [String] представляет собой путь к файлу. При его "
"редактировании откроется диалоговое окно для выбора пути. Строка подсказки "
"может представлять собой набор фильтров с подстановочными знаками, например, "
"[code]\"*.png,*.jpg\"[/code]. По умолчанию файл будет сохранён как UID (если "
"он доступен). Вы можете использовать методы [ResourceUID], чтобы "
"преобразовать его обратно в путь. Для сохранения необработанного пути "
"используйте [constant PROPERTY_HINT_FILE_PATH]."

msgid ""
"Hints that a [String] property is a path to a directory. Editing it will show "
"a file dialog for picking the path."
msgstr ""
"Указывает, что свойство [String] — это путь к каталогу. При его "
"редактировании откроется диалоговое окно файла для выбора пути."

msgid ""
"Hints that a [String] property is an absolute path to a file outside the "
"project folder. Editing it will show a file dialog for picking the path. The "
"hint string can be a set of filters with wildcards, like [code]"
"\"*.png,*.jpg\"[/code]."
msgstr ""
"Указывает, что свойство [String] является абсолютным путем к файлу вне папки "
"проекта. При его редактировании откроется диалоговое окно для выбора пути. "
"Подсказка может быть набором фильтров с подстановочными знаками, например "
"[code]\"*.png,*.jpg\"[/code]."

msgid ""
"Hints that a [String] property is an absolute path to a directory outside the "
"project folder. Editing it will show a file dialog for picking the path."
msgstr ""
"Указывает, что свойство [String] — это абсолютный путь к каталогу вне папки "
"проекта. При его редактировании откроется диалоговое окно файла для выбора "
"пути."

msgid ""
"Hints that a property is an instance of a [Resource]-derived type, optionally "
"specified via the hint string (e.g. [code]\"Texture2D\"[/code]). Editing it "
"will show a popup menu of valid resource types to instantiate."
msgstr ""
"Указывает, что свойство является экземпляром типа, производного от "
"[Resource], опционально указываемого через строку подсказки (например, [code]"
"\"Texture2D\"[/code]). При его редактировании отобразится всплывающее меню "
"допустимых типов ресурсов для создания экземпляра."

msgid ""
"Hints that a [String] property is text with line breaks. Editing it will show "
"a text input field where line breaks can be typed."
msgstr ""
"Указывает, что свойство [String] — это текст с переносами строк. При его "
"редактировании появится поле ввода текста, в котором можно вводить переносы "
"строк."

msgid "Hints that a [String] property is an [Expression]."
msgstr "Указывает, что свойство [String] является [Expression]."

msgid ""
"Hints that a [String] property should show a placeholder text on its input "
"field, if empty. The hint string is the placeholder text to use."
msgstr ""
"Указывает, что свойство [String] должно отображать текст-заполнитель в своем "
"поле ввода, если оно пустое. Строка подсказки — это текст-заполнитель для "
"использования."

msgid ""
"Hints that a [Color] property should be edited without affecting its "
"transparency ([member Color.a] is not editable)."
msgstr ""
"Подсказка о том, что свойство [Color] следует редактировать, не влияя на его "
"прозрачность ([member Color.a] не подлежит редактированию)."

msgid ""
"Hints that the property's value is an object encoded as object ID, with its "
"type specified in the hint string. Used by the debugger."
msgstr ""
"Указывает, что значение свойства - это объект, представленный как ID объекта, "
"тип которого указан в строке подсказки. Используется отладчиком."

msgid ""
"If a property is [String], hints that the property represents a particular "
"type (class). This allows to select a type from the create dialog. The "
"property will store the selected type as a string.\n"
"If a property is [Array], hints the editor how to show elements. The "
"[code]hint_string[/code] must encode nested types using [code]\":\"[/code] "
"and [code]\"/\"[/code].\n"
"If a property is [Dictionary], hints the editor how to show elements. The "
"[code]hint_string[/code] is the same as [Array], with a [code]\";\"[/code] "
"separating the key and value.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Array of elem_type.\n"
"hint_string = \"%d:\" % [elem_type]\n"
"hint_string = \"%d/%d:%s\" % [elem_type, elem_hint, elem_hint_string]\n"
"# Two-dimensional array of elem_type (array of arrays of elem_type).\n"
"hint_string = \"%d:%d:\" % [TYPE_ARRAY, elem_type]\n"
"hint_string = \"%d:%d/%d:%s\" % [TYPE_ARRAY, elem_type, elem_hint, "
"elem_hint_string]\n"
"# Three-dimensional array of elem_type (array of arrays of arrays of "
"elem_type).\n"
"hint_string = \"%d:%d:%d:\" % [TYPE_ARRAY, TYPE_ARRAY, elem_type]\n"
"hint_string = \"%d:%d:%d/%d:%s\" % [TYPE_ARRAY, TYPE_ARRAY, elem_type, "
"elem_hint, elem_hint_string]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Array of elemType.\n"
"hintString = $\"{elemType:D}:\";\n"
"hintString = $\"{elemType:}/{elemHint:D}:{elemHintString}\";\n"
"// Two-dimensional array of elemType (array of arrays of elemType).\n"
"hintString = $\"{Variant.Type.Array:D}:{elemType:D}:\";\n"
"hintString = $\"{Variant.Type.Array:D}:{elemType:D}/{elemHint:D}:"
"{elemHintString}\";\n"
"// Three-dimensional array of elemType (array of arrays of arrays of "
"elemType).\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Array:D}:{elemType:D}:"
"\";\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Array:D}:{elemType:D}/"
"{elemHint:D}:{elemHintString}\";\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Examples:[/b]\n"
"[codeblocks]\n"
"[gdscript]\n"
"hint_string = \"%d:\" % [TYPE_INT] # Array of integers.\n"
"hint_string = \"%d/%d:1,10,1\" % [TYPE_INT, PROPERTY_HINT_RANGE] # Array of "
"integers (in range from 1 to 10).\n"
"hint_string = \"%d/%d:Zero,One,Two\" % [TYPE_INT, PROPERTY_HINT_ENUM] # Array "
"of integers (an enum).\n"
"hint_string = \"%d/%d:Zero,One,Three:3,Six:6\" % [TYPE_INT, "
"PROPERTY_HINT_ENUM] # Array of integers (an enum).\n"
"hint_string = \"%d/%d:*.png\" % [TYPE_STRING, PROPERTY_HINT_FILE] # Array of "
"strings (file paths).\n"
"hint_string = \"%d/%d:Texture2D\" % [TYPE_OBJECT, "
"PROPERTY_HINT_RESOURCE_TYPE] # Array of textures.\n"
"\n"
"hint_string = \"%d:%d:\" % [TYPE_ARRAY, TYPE_FLOAT] # Two-dimensional array "
"of floats.\n"
"hint_string = \"%d:%d/%d:\" % [TYPE_ARRAY, TYPE_STRING, "
"PROPERTY_HINT_MULTILINE_TEXT] # Two-dimensional array of multiline strings.\n"
"hint_string = \"%d:%d/%d:-1,1,0.1\" % [TYPE_ARRAY, TYPE_FLOAT, "
"PROPERTY_HINT_RANGE] # Two-dimensional array of floats (in range from -1 to "
"1).\n"
"hint_string = \"%d:%d/%d:Texture2D\" % [TYPE_ARRAY, TYPE_OBJECT, "
"PROPERTY_HINT_RESOURCE_TYPE] # Two-dimensional array of textures.\n"
"[/gdscript]\n"
"[csharp]\n"
"hintString = $\"{Variant.Type.Int:D}/{PropertyHint.Range:D}:1,10,1\"; // "
"Array of integers (in range from 1 to 10).\n"
"hintString = $\"{Variant.Type.Int:D}/{PropertyHint.Enum:D}:Zero,One,Two\"; // "
"Array of integers (an enum).\n"
"hintString = $\"{Variant.Type.Int:D}/"
"{PropertyHint.Enum:D}:Zero,One,Three:3,Six:6\"; // Array of integers (an "
"enum).\n"
"hintString = $\"{Variant.Type.String:D}/{PropertyHint.File:D}:*.png\"; // "
"Array of strings (file paths).\n"
"hintString = $\"{Variant.Type.Object:D}/"
"{PropertyHint.ResourceType:D}:Texture2D\"; // Array of textures.\n"
"\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Float:D}:\"; // Two-"
"dimensional array of floats.\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.String:D}/"
"{PropertyHint.MultilineText:D}:\"; // Two-dimensional array of multiline "
"strings.\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Float:D}/"
"{PropertyHint.Range:D}:-1,1,0.1\"; // Two-dimensional array of floats (in "
"range from -1 to 1).\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Object:D}/"
"{PropertyHint.ResourceType:D}:Texture2D\"; // Two-dimensional array of "
"textures.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] The trailing colon is required for properly detecting built-in "
"types."
msgstr ""
"Если свойство - [String], то это намекает, что свойство представляет "
"определенный тип (класс). Это позволяет выбрать тип из диалогового окна "
"создания. Свойство сохранит выбранный тип как строку.\n"
"Если свойство - [Array], то оно подсказывает редактору, как отображать "
"элементы. [code]hint_string[/code] должен кодировать вложенные типы с помощью "
"[code]\":\"[/code] и [code]\"/\"[/code].\n"
"Если свойство - [Dictionary], то оно подсказывает редактору, как отображать "
"элементы. [code]hint_string[/code] работает также, как и с [Array], с [code]"
"\";\"[/code], разделяющий ключ и значение.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Массив с elem_type.\n"
"hint_string = \"%d:\" % [elem_type]\n"
"hint_string = \"%d/%d:%s\" % [elem_type, elem_hint, elem_hint_string]\n"
"# Двумерный массив с elem_type (массив массивов с elem_type).\n"
"hint_string = \"%d:%d:\" % [TYPE_ARRAY, elem_type]\n"
"hint_string = \"%d:%d/%d:%s\" % [TYPE_ARRAY, elem_type, elem_hint, "
"elem_hint_string]\n"
"#Трехмерный массив с elem_type (массив массивов внутри массивов с "
"elem_type).\n"
"hint_string = \"%d:%d:%d:\" % [TYPE_ARRAY, TYPE_ARRAY, elem_type]\n"
"hint_string = \"%d:%d:%d/%d:%s\" % [TYPE_ARRAY, TYPE_ARRAY, elem_type, "
"elem_hint, elem_hint_string]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Массив с elemType.\n"
"hintString = $\"{elemType:D}:\";\n"
"hintString = $\"{elemType:}/{elemHint:D}:{elemHintString}\";\n"
"// Двумерный массив с elemType (массив массивов с elemType).\n"
"hintString = $\"{Variant.Type.Array:D}:{elemType:D}:\";\n"
"hintString = $\"{Variant.Type.Array:D}:{elemType:D}/{elemHint:D}:"
"{elemHintString}\";\n"
"// Трехмерный массив elemType (массив массивов внутри массивов с elemType).\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Array:D}:{elemType:D}:"
"\";\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Array:D}:{elemType:D}/"
"{elemHint:D}:{elemHintString}\";\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примеры:[/b]\n"
"[codeblocks]\n"
"[gdscript]\n"
"hint_string = \"%d:\" % [TYPE_INT] # Массив с целыми числами.\n"
"hint_string = \"%d/%d:1,10,1\" % [TYPE_INT, PROPERTY_HINT_RANGE] # Массив с "
"целыми числами (в диапазоне от 1 до 10).\n"
"hint_string = \"%d/%d:Zero,One,Two\" % [TYPE_INT, PROPERTY_HINT_ENUM] # "
"Массив с целыми числами (enum).\n"
"hint_string = \"%d/%d:Zero,One,Three:3,Six:6\" % [TYPE_INT, "
"PROPERTY_HINT_ENUM] # Массив с целыми числами (enum).\n"
"hint_string = \"%d/%d:*.png\" % [TYPE_STRING, PROPERTY_HINT_FILE] # Массив со "
"строками (пути к файлам).\n"
"hint_string = \"%d/%d:Texture2D\" % [TYPE_OBJECT, "
"PROPERTY_HINT_RESOURCE_TYPE] # Массив с текстурами.\n"
"\n"
"hint_string = \"%d:%d:\" % [TYPE_ARRAY, TYPE_FLOAT] # Двумерный массив чисел "
"с плавающей точкой (тип float)\n"
"hint_string = \"%d:%d/%d:\" % [TYPE_ARRAY, TYPE_STRING, "
"PROPERTY_HINT_MULTILINE_TEXT] # Двумерный массив с многострочными строками.\n"
"hint_string = \"%d:%d/%d:-1,1,0.1\" % [TYPE_ARRAY, TYPE_FLOAT, "
"PROPERTY_HINT_RANGE] # Двумерный массив чисел с плавающей точкой (в диапазоне "
"от -1 до 1).\n"
"hint_string = \"%d:%d/%d:Texture2D\" % [TYPE_ARRAY, TYPE_OBJECT, "
"PROPERTY_HINT_RESOURCE_TYPE] # Двумерный масив с текстурами.\n"
"[/gdscript]\n"
"[csharp]\n"
"hintString = $\"{Variant.Type.Int:D}/{PropertyHint.Range:D}:1,10,1\"; // "
"Массив с целыми числами (в диапазоне от 1 до 10).\n"
"hintString = $\"{Variant.Type.Int:D}/{PropertyHint.Enum:D}:Zero,One,Two\"; // "
"Массив с целыми числами (enum).\n"
"hintString = $\"{Variant.Type.Int:D}/"
"{PropertyHint.Enum:D}:Zero,One,Three:3,Six:6\"; // Массив с целыми числами "
"(enum).\n"
"hintString = $\"{Variant.Type.String:D}/{PropertyHint.File:D}:*.png\"; // "
"Массив со строками (пути к файлам).\n"
"hintString = $\"{Variant.Type.Object:D}/"
"{PropertyHint.ResourceType:D}:Texture2D\"; // Массив с текстурами.\n"
"\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Float:D}:\"; // "
"Двумерный массив чисел с плавающей точкой .\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.String:D}/"
"{PropertyHint.MultilineText:D}:\"; // Двумерный массив с многострочными "
"строками.\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Float:D}/"
"{PropertyHint.Range:D}:-1,1,0.1\"; // Двумерный массив чисел с плавающей "
"точкой (в диапазоне от -1 до 1).\n"
"hintString = $\"{Variant.Type.Array:D}:{Variant.Type.Object:D}/"
"{PropertyHint.ResourceType:D}:Texture2D\"; // Двумерный масив с текстурами.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Завершающее двоеточие необходимо для правильного "
"определения встроенных типов."

msgid "This hint is not used by the engine."
msgstr "Эта подсказка не используется движком."

msgid "Hints that an object is too big to be sent via the debugger."
msgstr "Указывает, что обьект слишком большой для отправки через отладчик."

msgid ""
"Hints that the hint string specifies valid node types for property of type "
"[NodePath]."
msgstr ""
"Подсказка о том, что строка подсказки указывает допустимые типы узлов для "
"свойства типа [NodePath]."

msgid ""
"Hints that a [String] property is a path to a file. Editing it will show a "
"file dialog for picking the path for the file to be saved at. The dialog has "
"access to the project's directory. The hint string can be a set of filters "
"with wildcards like [code]\"*.png,*.jpg\"[/code]. See also [member "
"FileDialog.filters]."
msgstr ""
"Подсказка, что свойство [String] является путем к файлу. При его "
"редактировании откроется диалоговое окно для выбора пути сохранения файла. "
"Диалоговое окно имеет доступ к каталогу проекта. Строка подсказки может быть "
"набором фильтров с подстановочными знаками, например [code]\"*.png,*.jpg\"[/"
"code]. См. также [member FileDialog.filters]."

msgid ""
"Hints that a [String] property is a path to a file. Editing it will show a "
"file dialog for picking the path for the file to be saved at. The dialog has "
"access to the entire filesystem. The hint string can be a set of filters with "
"wildcards like [code]\"*.png,*.jpg\"[/code]. See also [member "
"FileDialog.filters]."
msgstr ""
"Подсказка, что свойство [String] является путем к файлу. При его "
"редактировании откроется диалоговое окно для выбора пути сохранения файла. "
"Диалоговое окно имеет доступ ко всей файловой системе. Строка подсказки может "
"быть набором фильтров с подстановочными знаками, например [code]"
"\"*.png,*.jpg\"[/code]. См. также [member FileDialog.filters]."

msgid "Hints that an [int] property is a pointer. Used by GDExtension."
msgstr ""
"Подсказывает, что свойство [int] является указателем. Используется "
"GDExtension."

msgid ""
"Hints that a property is an [Array] with the stored type specified in the "
"hint string. The hint string contains the type of the array (e.g. [code]"
"\"String\"[/code]).\n"
"Use the hint string format from [constant PROPERTY_HINT_TYPE_STRING] for more "
"control over the stored type."
msgstr ""
"Указывает, что свойство представляет собой [Array] с сохраненным типом, "
"указанным в строке подсказки. Строка подсказки содержит тип массива "
"(например, [code]\"String\"[/code]).\n"
"Используйте формат строки подсказки из [constant PROPERTY_HINT_TYPE_STRING] "
"для большего контроля над сохраненным типом."

msgid ""
"Hints that a property is a [Dictionary] with the stored types specified in "
"the hint string. The hint string contains the key and value types separated "
"by a semicolon (e.g. [code]\"int;String\"[/code]).\n"
"Use the hint string format from [constant PROPERTY_HINT_TYPE_STRING] for more "
"control over the stored types."
msgstr ""
"Указывает, что свойство представляет собой [Dictionary] с сохраненными "
"типами, указанными в строке подсказки. Строка подсказки содержит типы ключа и "
"значения, разделенные точкой с запятой (например, [code]\"int;String\"[/"
"code]).\n"
"Используйте формат строки подсказки из [constant PROPERTY_HINT_TYPE_STRING] "
"для большего контроля над сохраненными типами."

msgid ""
"Hints that a string property is a locale code. Editing it will show a locale "
"dialog for picking language and country."
msgstr ""
"Подсказки, что строковое свойство — это код локали. При его редактировании "
"откроется диалоговое окно локали для выбора языка и страны."

msgid ""
"Hints that a dictionary property is string translation map. Dictionary keys "
"are locale codes and, values are translated strings."
msgstr ""
"Подсказки, что свойство словаря — это карта перевода строк. Ключи словаря — "
"это коды локалей, а значения — это переведенные строки."

msgid ""
"Hints that a property is an instance of a [Node]-derived type, optionally "
"specified via the hint string (e.g. [code]\"Node2D\"[/code]). Editing it will "
"show a dialog for picking a node from the scene."
msgstr ""
"Подсказки, что свойство является экземпляром типа, производного от [Node], "
"опционально указываемого через строку подсказки (например, [code]\"Node2D\"[/"
"code]). При его редактировании отобразится диалоговое окно для выбора узла из "
"сцены."

msgid ""
"Hints that a quaternion property should disable the temporary euler editor."
msgstr ""
"Подсказка о том, что свойство кватерниона должно отключать временный редактор "
"Эйлера."

msgid ""
"Hints that a string property is a password, and every character is replaced "
"with the secret character."
msgstr ""
"Указывает, что строковое свойство является паролем и каждый символ заменяется "
"секретным символом."

msgid ""
"Hints that a [Callable] property should be displayed as a clickable button. "
"When the button is pressed, the callable is called. The hint string specifies "
"the button text and optionally an icon from the [code]\"EditorIcons\"[/code] "
"theme type.\n"
"[codeblock lang=text]\n"
"\"Click me!\" - A button with the text \"Click me!\" and the default "
"\"Callable\" icon.\n"
"\"Click me!,ColorRect\" - A button with the text \"Click me!\" and the "
"\"ColorRect\" icon.\n"
"[/codeblock]\n"
"[b]Note:[/b] A [Callable] cannot be properly serialized and stored in a file, "
"so it is recommended to use [constant PROPERTY_USAGE_EDITOR] instead of "
"[constant PROPERTY_USAGE_DEFAULT]."
msgstr ""
"Подсказки, что свойство [Callable] должно отображаться как кнопка, на которую "
"можно нажать. При нажатии кнопки вызывается вызываемый объект. Строка "
"подсказки указывает текст кнопки и, при необходимости, значок из типа темы "
"[code]\"EditorIcons\"[/code].\n"
"[codeblock lang=text]\n"
"\"Click me!\" - A button with the text \"Click me!\" and the default "
"\"Callable\" icon.\n"
"\"Click me!,ColorRect\" - A button with the text \"Click me!\" and the "
"\"ColorRect\" icon.\n"
"[/codeblock]\n"
"[b]Примечание:[/b] [Callable] не может быть правильно сериализован "
"(serialized) и сохранен в файле, поэтому рекомендуется использовать [constant "
"PROPERTY_USAGE_EDITOR] вместо [constant PROPERTY_USAGE_DEFAULT]."

msgid ""
"Hints that a property will be changed on its own after setting, such as "
"[member AudioStreamPlayer.playing] or [member GPUParticles3D.emitting]."
msgstr ""
"Подсказки о том, что свойство будет изменено само по себе после настройки, "
"например [member AudioStreamPlayer.playing] или [member "
"GPUParticles3D.emitting]."

msgid ""
"Hints that a boolean property will enable the feature associated with the "
"group that it occurs in. The property will be displayed as a checkbox on the "
"group header. Only works within a group or subgroup.\n"
"By default, disabling the property hides all properties in the group. Use the "
"optional hint string [code]\"checkbox_only\"[/code] to disable this behavior."
msgstr ""
"Указывает, что логическое свойство включит функцию, связанную с группой, в "
"которой оно встречается. Свойство будет отображаться в виде флажка в "
"заголовке группы. Работает только внутри группы или подгруппы.\n"
"По умолчанию отключение свойства скрывает все свойства в группе. Используйте "
"необязательную строку подсказки [code]\"checkbox_only\"[/code], чтобы "
"отключить это поведение."

msgid ""
"Hints that a [String] or [StringName] property is the name of an input "
"action. This allows the selection of any action name from the Input Map in "
"the Project Settings. The hint string may contain two options separated by "
"commas:\n"
"- If it contains [code]\"show_builtin\"[/code], built-in input actions are "
"included in the selection.\n"
"- If it contains [code]\"loose_mode\"[/code], loose mode is enabled. This "
"allows inserting any action name even if it's not present in the input map."
msgstr ""
"Указывает, что свойство [String] или [StringName] является названием "
"действия. Это позволяет выбрать любое название действия из списка действий в "
"настройках проекта. Подсказка может содержать два варианта, разделённых "
"запятой:\n"
"- Если они содержат [code]\"show_builtin\"[/code], в выборку включаются "
"встроенные действия.\n"
"- Если они содержат [code]\"loose_mode\"[/code], включается свободный режим. "
"Это позволяет выбрать название любого действия, даже если оно не представлено "
"в списке действий."

msgid ""
"Like [constant PROPERTY_HINT_FILE], but the property is stored as a raw path, "
"not UID. That means the reference will be broken if you move the file. "
"Consider using [constant PROPERTY_HINT_FILE] when possible."
msgstr ""
"Аналогично [constant PROPERTY_HINT_FILE], но свойство хранится как "
"необработанный путь, а не UID. Это означает, что ссылка будет повреждена при "
"перемещении файла. По возможности используйте [constant PROPERTY_HINT_FILE]."

msgid "Represents the size of the [enum PropertyHint] enum."
msgstr "Представляет размер перечисления [enum PropertyHint]."

msgid ""
"The property is not stored, and does not display in the editor. This is the "
"default for non-exported properties."
msgstr ""
"Свойство не сохраняется и не отображается в редакторе. Это значение по "
"умолчанию для неэкспортируемых свойств."

msgid ""
"The property is serialized and saved in the scene file (default for exported "
"properties)."
msgstr ""
"Свойство сериализуется и сохраняется в файле сцены (по умолчанию для "
"экспортируемых свойств)."

msgid ""
"The property is shown in the [EditorInspector] (default for exported "
"properties)."
msgstr ""
"Свойство отображается в [EditorInspector] (по умолчанию для экспортированных "
"свойств)."

msgid "The property is excluded from the class reference."
msgstr "Свойство исключено из ссылки на класс."

msgid "The property can be checked in the [EditorInspector]."
msgstr "Свойство можно проверить в [EditorInspector]."

msgid "The property is checked in the [EditorInspector]."
msgstr "Свойство проверяется в [EditorInspector]."

msgid "Used to group properties together in the editor. See [EditorInspector]."
msgstr ""
"Используется для группировки свойств в редакторе. См. [EditorInspector]."

msgid "Used to categorize properties together in the editor."
msgstr "Используется для категоризации свойств в редакторе."

msgid ""
"Used to group properties together in the editor in a subgroup (under a "
"group). See [EditorInspector]."
msgstr ""
"Используется для группировки свойств в редакторе в подгруппу (в группе). См. "
"[EditorInspector]."

msgid ""
"The property is a bitfield, i.e. it contains multiple flags represented as "
"bits."
msgstr ""
"Свойство является битовым полем, т.е. оно содержит несколько флагов, "
"представленных в виде битов."

msgid "The property does not save its state in [PackedScene]."
msgstr "Свойство не сохраняет свое состояние в [PackedScene]."

msgid "Editing the property prompts the user for restarting the editor."
msgstr ""
"При редактировании свойства пользователю предлагается перезапустить редактор."

msgid ""
"The property is a script variable. [constant PROPERTY_USAGE_SCRIPT_VARIABLE] "
"can be used to distinguish between exported script variables from built-in "
"variables (which don't have this usage flag). By default, [constant "
"PROPERTY_USAGE_SCRIPT_VARIABLE] is [b]not[/b] applied to variables that are "
"created by overriding [method Object._get_property_list] in a script."
msgstr ""
"Свойство является переменной скрипта. [constant "
"PROPERTY_USAGE_SCRIPT_VARIABLE] может использоваться для различения "
"экспортированных переменных скрипта от встроенных переменных (которые не "
"имеют этого флага использования). По умолчанию [constant "
"PROPERTY_USAGE_SCRIPT_VARIABLE] [b]не[/b] применяется к переменным, которые "
"создаются путем переопределения [method Object._get_property_list] в скрипте."

msgid ""
"The property value of type [Object] will be stored even if its value is "
"[code]null[/code]."
msgstr ""
"Значение свойства типа [Object] будет сохранено, даже если его значение равно "
"[code]null[/code]."

msgid "If this property is modified, all inspector fields will be refreshed."
msgstr "Если это свойство изменено, все поля инспектора будут обновлены."

msgid "This flag is not used by the engine."
msgstr "Этот флаг не используется движком."

msgid ""
"The property is a variable of enum type, i.e. it only takes named integer "
"constants from its associated enumeration."
msgstr ""
"Свойство является переменной типа enum, т.е. оно принимает только именованные "
"целочисленные константы из соответствующего перечисления."

msgid ""
"If property has [code]nil[/code] as default value, its type will be [Variant]."
msgstr ""
"Если свойство имеет значение по умолчанию [code]nil[/code], его тип будет "
"[Variant]."

msgid "The property is an array."
msgstr "Свойство представляет собой массив."

msgid ""
"When duplicating a resource with [method Resource.duplicate], and this flag "
"is set on a property of that resource, the property should always be "
"duplicated, regardless of the [code]subresources[/code] bool parameter."
msgstr ""
"При дублировании ресурса с помощью [method Resource.duplicate] и установке "
"этого флага для свойства этого ресурса свойство всегда должно дублироваться, "
"независимо от параметра [code]subresources[/code] bool."

msgid ""
"When duplicating a resource with [method Resource.duplicate], and this flag "
"is set on a property of that resource, the property should never be "
"duplicated, regardless of the [code]subresources[/code] bool parameter."
msgstr ""
"При дублировании ресурса с помощью [method Resource.duplicate] и установке "
"этого флага для свойства этого ресурса свойство никогда не должно "
"дублироваться, независимо от параметра [code]subresources[/code] bool."

msgid ""
"The property is only shown in the editor if modern renderers are supported "
"(the Compatibility rendering method is excluded)."
msgstr ""
"Свойство отображается в редакторе только если поддерживаются современные "
"методы отрисовки (метод отрисовки Совместимость исключен)."

msgid ""
"The [NodePath] property will always be relative to the scene's root. Mostly "
"useful for local resources."
msgstr ""
"Свойство [NodePath] всегда будет относительным к корню сцены. В основном "
"полезно для локальных ресурсов."

msgid ""
"Use when a resource is created on the fly, i.e. the getter will always return "
"a different instance. [ResourceSaver] needs this information to properly save "
"such resources."
msgstr ""
"Используйте, когда ресурс создается «на лету», т. е. геттер всегда будет "
"возвращать другой экземпляр. [ResourceSaver] нуждается в этой информации для "
"правильного сохранения таких ресурсов."

msgid ""
"Inserting an animation key frame of this property will automatically "
"increment the value, allowing to easily keyframe multiple values in a row."
msgstr ""
"Вставка ключевого кадра анимации этого свойства автоматически увеличит "
"значение, что позволит легко создавать ключевые кадры для нескольких значений "
"подряд."

msgid ""
"When this property is a [Resource] and base object is a [Node], a resource "
"instance will be automatically created whenever the node is created in the "
"editor."
msgstr ""
"Если это свойство — [Resource], а базовый объект — [Node], экземпляр ресурса "
"будет автоматически создаваться всякий раз, когда узел создается в редакторе."

msgid ""
"The property is considered a basic setting and will appear even when advanced "
"mode is disabled. Used for project settings."
msgstr ""
"Свойство считается базовой настройкой и будет отображаться даже при "
"отключенном расширенном режиме. Используется для настроек проекта."

msgid "The property is read-only in the [EditorInspector]."
msgstr "Свойство доступно только для чтения в инспекторе редактора."

msgid ""
"An export preset property with this flag contains confidential information "
"and is stored separately from the rest of the export preset configuration."
msgstr ""
"Свойство предустановки экспорта с этим флагом содержит конфиденциальную "
"информацию и хранится отдельно от остальной конфигурации предустановки "
"экспорта."

msgid "Default usage (storage and editor)."
msgstr "Использование по умолчанию (хранение и редактор)."

msgid "Default usage but without showing the property in the editor (storage)."
msgstr ""
"Использование по умолчанию, но без отображения свойства в редакторе "
"(хранение)."

msgid "Flag for a normal method."
msgstr "Флаг для обычного метода."

msgid "Flag for an editor method."
msgstr "Флаг для метода редактора."

msgid "Flag for a constant method."
msgstr "Флаг для константного метода."

msgid "Flag for a virtual method."
msgstr "Флаг для виртуального метода."

msgid "Flag for a method with a variable number of arguments."
msgstr "Флаг для метода с переменным числом аргументов."

msgid "Flag for a static method."
msgstr "Флаг для статического метода."

msgid ""
"Used internally. Allows to not dump core virtual methods (such as [method "
"Object._notification]) to the JSON API."
msgstr ""
"Используется внутри. Позволяет не выгружать основные виртуальные методы "
"(такие как [method Object._notification]) в JSON API."

msgid ""
"Flag for a virtual method that is required. In GDScript, this flag is set for "
"abstract functions."
msgstr ""
"Флаг обязательного виртуального метода. В GDScript этот флаг устанавливается "
"для абстрактных функций."

msgid "Default method flags (normal)."
msgstr "Флаги метода по умолчанию (нормальные)."

msgid "Variable is [code]null[/code]."
msgstr "Переменная равна [code]null[/code]."

msgid "Variable is of type [bool]."
msgstr "Переменная типа [bool]."

msgid "Variable is of type [int]."
msgstr "Переменная типа [int]."

msgid "Variable is of type [float]."
msgstr "Переменная имеет тип [float]."

msgid "Variable is of type [String]."
msgstr "Переменная типа [String]."

msgid "Variable is of type [Vector2]."
msgstr "Переменная типа [Vector2]."

msgid "Variable is of type [Vector2i]."
msgstr "Переменная имеет тип [Vector2i]."

msgid "Variable is of type [Rect2]."
msgstr "Переменная типа [Rect2]."

msgid "Variable is of type [Rect2i]."
msgstr "Переменная имеет тип [Rect2i]."

msgid "Variable is of type [Vector3]."
msgstr "Переменная типа [Vector3]."

msgid "Variable is of type [Vector3i]."
msgstr "Переменная имеет тип [Vector3i]."

msgid "Variable is of type [Transform2D]."
msgstr "Переменная типа [Transform2D]."

msgid "Variable is of type [Vector4]."
msgstr "Переменная имеет тип [Vector4]."

msgid "Variable is of type [Vector4i]."
msgstr "Переменная имеет тип [Vector4i]."

msgid "Variable is of type [Plane]."
msgstr "Переменная типа [Plane]."

msgid "Variable is of type [Quaternion]."
msgstr "Переменная имеет тип [Quaternion]."

msgid "Variable is of type [AABB]."
msgstr "Переменная типа [AABB]."

msgid "Variable is of type [Basis]."
msgstr "Переменная типа [Basis]."

msgid "Variable is of type [Transform3D]."
msgstr "Переменная имеет тип [Transform3D]."

msgid "Variable is of type [Projection]."
msgstr "Переменная имеет тип [Проекция]."

msgid "Variable is of type [Color]."
msgstr "Переменная типа [Color]."

msgid "Variable is of type [StringName]."
msgstr "Переменная имеет тип [StringName]."

msgid "Variable is of type [NodePath]."
msgstr "Переменная типа [NodePath]."

msgid "Variable is of type [RID]."
msgstr "Переменная типа [RID]."

msgid "Variable is of type [Object]."
msgstr "Переменная типа [Object]."

msgid "Variable is of type [Callable]."
msgstr "Переменная имеет тип [Callable]."

msgid "Variable is of type [Signal]."
msgstr "Переменная имеет тип [Signal]."

msgid "Variable is of type [Dictionary]."
msgstr "Переменная типа [Dictionary]."

msgid "Variable is of type [Array]."
msgstr "Переменная типа [Array]."

msgid "Variable is of type [PackedByteArray]."
msgstr "Переменная имеет тип [PackedByteArray]."

msgid "Variable is of type [PackedInt32Array]."
msgstr "Переменная имеет тип [PackedInt32Array]."

msgid "Variable is of type [PackedInt64Array]."
msgstr "Переменная имеет тип [PackedInt64Array]."

msgid "Variable is of type [PackedFloat32Array]."
msgstr "Переменная имеет тип [PackedFloat32Array]."

msgid "Variable is of type [PackedFloat64Array]."
msgstr "Переменная имеет тип [PackedFloat64Array]."

msgid "Variable is of type [PackedStringArray]."
msgstr "Переменная имеет тип [PackedStringArray]."

msgid "Variable is of type [PackedVector2Array]."
msgstr "Переменная имеет тип [PackedVector2Array]."

msgid "Variable is of type [PackedVector3Array]."
msgstr "Переменная имеет тип [PackedVector3Array]."

msgid "Variable is of type [PackedColorArray]."
msgstr "Переменная имеет тип [PackedColorArray]."

msgid "Variable is of type [PackedVector4Array]."
msgstr "Переменная имеет тип [PackedVector4Array]."

msgid "Represents the size of the [enum Variant.Type] enum."
msgstr "Представляет размер перечисления [enum Variant.Type]."

msgid "Equality operator ([code]==[/code])."
msgstr "Оператор \"Равно\" ([code]==[/code])."

msgid "Inequality operator ([code]!=[/code])."
msgstr "Оператор \"Не равно\" ([code]!=[/code])."

msgid "Less than operator ([code]<[/code])."
msgstr "Оператор \"Меньше чем\" ([code]<[/code])."

msgid "Less than or equal operator ([code]<=[/code])."
msgstr "Оператор \"Меньше чем или равно\" ([code]<=[/code])."

msgid "Greater than operator ([code]>[/code])."
msgstr "Оператор \"Больше чем\" ([code]>[/code])."

msgid "Greater than or equal operator ([code]>=[/code])."
msgstr "Оператор \"Больше чем или равно\" ([code]>=[/code])."

msgid "Addition operator ([code]+[/code])."
msgstr "Оператор сложения ([code]+[/code])."

msgid "Subtraction operator ([code]-[/code])."
msgstr "Оператор вычитания ([code]-[/code])."

msgid "Multiplication operator ([code]*[/code])."
msgstr "Оператор умножения ([code]*[/code])."

msgid "Division operator ([code]/[/code])."
msgstr "Оператор деления ([code]/[/code])."

msgid "Unary negation operator ([code]-[/code])."
msgstr "Унарный оператор отрицания ([code]-[/code])."

msgid "Unary plus operator ([code]+[/code])."
msgstr "Унарный оператор \"Плюс\" ([code]+[/code])."

msgid "Remainder/modulo operator ([code]%[/code])."
msgstr "Оператор остатка/модуля ([code]%[/code])."

msgid "Power operator ([code]**[/code])."
msgstr "Оператор power ([code]**[/code])."

msgid "Left shift operator ([code]<<[/code])."
msgstr "Оператор сдвига влево ([code]<<[/code])."

msgid "Right shift operator ([code]>>[/code])."
msgstr "Оператор сдвига вправо ([code]>>[/code])."

msgid "Bitwise AND operator ([code]&[/code])."
msgstr "Побитовый оператор И ([code]&[/code])."

msgid "Bitwise OR operator ([code]|[/code])."
msgstr "Побитовый оператор ИЛИ ([code]|[/code])."

msgid "Bitwise XOR operator ([code]^[/code])."
msgstr "Побитовый оператор Исключающее ИЛИ ([code]^[/code])."

msgid "Bitwise NOT operator ([code]~[/code])."
msgstr "Побитовый оператор НЕ ([code]~[/code])."

msgid "Logical AND operator ([code]and[/code] or [code]&&[/code])."
msgstr "Оператор \"Логическое И\" ([code]and[/code] или [code]&&[/code])."

msgid "Logical OR operator ([code]or[/code] or [code]||[/code])."
msgstr "Логический оператор ИЛИ ([code]or[/code] или [code]||[/code])."

msgid "Logical XOR operator (not implemented in GDScript)."
msgstr "Логический оператор Исключающее ИЛИ (не реализован в GDScript)."

msgid "Logical NOT operator ([code]not[/code] or [code]![/code])."
msgstr "Логический оператор НЕ ([code]not[/code] или [code]![/code])."

msgid "Logical IN operator ([code]in[/code])."
msgstr "Логический оператор В ([code]in[/code])."

msgid "Represents the size of the [enum Variant.Operator] enum."
msgstr "Представляет размер перечисления [enum Variant.Operator]."

msgid "A 3D axis-aligned bounding box."
msgstr "Ограничивающая рамка, выровненная по трехмерным осям."

msgid ""
"The [AABB] built-in [Variant] type represents an axis-aligned bounding box in "
"a 3D space. It is defined by its [member position] and [member size], which "
"are [Vector3]. It is frequently used for fast overlap tests (see [method "
"intersects]). Although [AABB] itself is axis-aligned, it can be combined with "
"[Transform3D] to represent a rotated or skewed bounding box.\n"
"It uses floating-point coordinates. The 2D counterpart to [AABB] is [Rect2]. "
"There is no version of [AABB] that uses integer coordinates.\n"
"[b]Note:[/b] Negative values for [member size] are not supported. With "
"negative size, most [AABB] methods do not work correctly. Use [method abs] to "
"get an equivalent [AABB] with a non-negative size.\n"
"[b]Note:[/b] In a boolean context, an [AABB] evaluates to [code]false[/code] "
"if both [member position] and [member size] are zero (equal to [constant "
"Vector3.ZERO]). Otherwise, it always evaluates to [code]true[/code]."
msgstr ""
"Встроенный тип [Variant] [AABB] представляет собой ограничивающий "
"прямоугольник, выровненный по осям, в трёхмерном пространстве. Он "
"определяется параметрами [member position] и [member size], которые равны "
"[Vector3]. Он часто используется для быстрых тестов на перекрытие (см. "
"[method intersects]). Хотя сам [AABB] выровнен по осям, его можно "
"комбинировать с [Transform3D] для представления повёрнутого или наклонённого "
"ограничивающего прямоугольника.\n"
"Он использует координаты с плавающей точкой. 2D аналогом [AABB] является "
"[Rect2]. Версии [AABB] с целочисленными координатами не существует.\n"
"[b]Примечание:[/b] Отрицательные значения [member size] не поддерживаются. "
"При отрицательном размере большинство методов [AABB] работают некорректно. "
"Используйте [method abs] для получения эквивалентного [AABB] с "
"неотрицательным размером.\n"
"[b]Примечание:[/b] В булевом контексте [AABB] вычисляется как [code]false[/"
"code], если и [member position], и [member size] равны нулю (равны [constant "
"Vector3.ZERO]). В противном случае он всегда вычисляется как [code]true[/"
"code]."

msgid "Math documentation index"
msgstr "Каталог математической документации"

msgid "Vector math"
msgstr "Векторная математика"

msgid "Advanced vector math"
msgstr "Расширенная векторная математика"

msgid ""
"Constructs an [AABB] with its [member position] and [member size] set to "
"[constant Vector3.ZERO]."
msgstr ""
"Создает [AABB] с его [member position] и [member size], установленными на "
"[constant Vector3.ZERO]."

msgid "Constructs an [AABB] as a copy of the given [AABB]."
msgstr "Создает [AABB] как копию заданного [AABB]."

msgid "Constructs an [AABB] by [param position] and [param size]."
msgstr "Создает [AABB] по [param position] и [param size]."

msgid ""
"Returns an [AABB] equivalent to this bounding box, with its width, height, "
"and depth modified to be non-negative values.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(5, 0, 5), Vector3(-20, -10, -5))\n"
"var absolute = box.abs()\n"
"print(absolute.position) # Prints (-15.0, -10.0, 0.0)\n"
"print(absolute.size)     # Prints (20.0, 10.0, 5.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(5, 0, 5), new Vector3(-20, -10, -5));\n"
"var absolute = box.Abs();\n"
"GD.Print(absolute.Position); // Prints (-15, -10, 0)\n"
"GD.Print(absolute.Size);     // Prints (20, 10, 5)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] It's recommended to use this method when [member size] is "
"negative, as most other methods in Godot assume that the [member size]'s "
"components are greater than [code]0[/code]."
msgstr ""
"Возвращает эквивалент [AABB] для данного ограничивающего прямоугольника, "
"ширина, высота и глубина которого изменены так, чтобы они были "
"неотрицательными значениями.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(5, 0, 5), Vector3(-20, -10, -5))\n"
"var absolute = box.abs()\n"
"print(absolute.position) # Prints (-15.0, -10.0, 0.0)\n"
"print(absolute.size)     # Prints (20.0, 10.0, 5.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(5, 0, 5), new Vector3(-20, -10, -5));\n"
"var absolute = box.Abs();\n"
"GD.Print(absolute.Position); // Prints (-15, -10, 0)\n"
"GD.Print(absolute.Size);     // Prints (20, 10, 5)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Рекомендуется использовать этот метод, когда [member size] "
"отрицательный, так как большинство других методов в Godot предполагают, что "
"компоненты [member size] больше, чем [code]0[/code]."

msgid ""
"Returns [code]true[/code] if this bounding box [i]completely[/i] encloses the "
"[param with] box. The edges of both boxes are included.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = AABB(Vector3(0, 0, 0), Vector3(4, 4, 4))\n"
"var b = AABB(Vector3(1, 1, 1), Vector3(3, 3, 3))\n"
"var c = AABB(Vector3(2, 2, 2), Vector3(8, 8, 8))\n"
"\n"
"print(a.encloses(a)) # Prints true\n"
"print(a.encloses(b)) # Prints true\n"
"print(a.encloses(c)) # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Aabb(new Vector3(0, 0, 0), new Vector3(4, 4, 4));\n"
"var b = new Aabb(new Vector3(1, 1, 1), new Vector3(3, 3, 3));\n"
"var c = new Aabb(new Vector3(2, 2, 2), new Vector3(8, 8, 8));\n"
"\n"
"GD.Print(a.Encloses(a)); // Prints True\n"
"GD.Print(a.Encloses(b)); // Prints True\n"
"GD.Print(a.Encloses(c)); // Prints False\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [code]true[/code], если этот ограничивающий прямоугольник "
"[i]полностью[/i] охватывает прямоугольник [param with]. Края обоих "
"прямоугольников включены.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = AABB(Vector3(0, 0, 0), Vector3(4, 4, 4))\n"
"var b = AABB(Vector3(1, 1, 1), Vector3(3, 3, 3))\n"
"var c = AABB(Vector3(2, 2, 2), Vector3(8, 8, 8))\n"
"\n"
"print(a.encloses(a)) # Prints true\n"
"print(a.encloses(b)) # Prints true\n"
"print(a.encloses(c)) # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Aabb(new Vector3(0, 0, 0), new Vector3(4, 4, 4));\n"
"var b = new Aabb(new Vector3(1, 1, 1), new Vector3(3, 3, 3));\n"
"var c = new Aabb(new Vector3(2, 2, 2), new Vector3(8, 8, 8));\n"
"\n"
"GD.Print(a.Encloses(a)); // Prints True\n"
"GD.Print(a.Encloses(b)); // Prints True\n"
"GD.Print(a.Encloses(c)); // Prints False\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a copy of this bounding box expanded to align the edges with the "
"given [param to_point], if necessary.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(0, 0, 0), Vector3(5, 2, 5))\n"
"\n"
"box = box.expand(Vector3(10, 0, 0))\n"
"print(box.position) # Prints (0.0, 0.0, 0.0)\n"
"print(box.size)     # Prints (10.0, 2.0, 5.0)\n"
"\n"
"box = box.expand(Vector3(-5, 0, 5))\n"
"print(box.position) # Prints (-5.0, 0.0, 0.0)\n"
"print(box.size)     # Prints (15.0, 2.0, 5.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(5, 2, 5));\n"
"\n"
"box = box.Expand(new Vector3(10, 0, 0));\n"
"GD.Print(box.Position); // Prints (0, 0, 0)\n"
"GD.Print(box.Size);     // Prints (10, 2, 5)\n"
"\n"
"box = box.Expand(new Vector3(-5, 0, 5));\n"
"GD.Print(box.Position); // Prints (-5, 0, 0)\n"
"GD.Print(box.Size);     // Prints (15, 2, 5)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает копию этого ограничивающего прямоугольника, расширенного для "
"выравнивания краев с заданным [param to_point], если это необходимо.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(0, 0, 0), Vector3(5, 2, 5))\n"
"\n"
"box = box.expand(Vector3(10, 0, 0))\n"
"print(box.position) # Prints (0.0, 0.0, 0.0)\n"
"print(box.size)     # Prints (10.0, 2.0, 5.0)\n"
"\n"
"box = box.expand(Vector3(-5, 0, 5))\n"
"print(box.position) # Prints (-5.0, 0.0, 0.0)\n"
"print(box.size)     # Prints (15.0, 2.0, 5.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(5, 2, 5));\n"
"\n"
"box = box.Expand(new Vector3(10, 0, 0));\n"
"GD.Print(box.Position); // Prints (0, 0, 0)\n"
"GD.Print(box.Size);     // Prints (10, 2, 5)\n"
"\n"
"box = box.Expand(new Vector3(-5, 0, 5));\n"
"GD.Print(box.Position); // Prints (-5, 0, 0)\n"
"GD.Print(box.Size);     // Prints (15, 2, 5)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the center point of the bounding box. This is the same as "
"[code]position + (size / 2.0)[/code]."
msgstr ""
"Возвращает центральную точку ограничивающего прямоугольника. Это то же самое, "
"что и [code]position + (size / 2.0)[/code]."

msgid ""
"Returns the position of one of the 8 vertices that compose this bounding box. "
"With an [param idx] of [code]0[/code] this is the same as [member position], "
"and an [param idx] of [code]7[/code] is the same as [member end]."
msgstr ""
"Возвращает положение одной из 8 вершин, составляющих этот ограничивающий "
"параллелепипед. Если [param idx] равен [code]0[/code], это то же самое, что и "
"[member position], а если [param idx] равен [code]7[/code], это то же самое, "
"что и [member end]."

msgid ""
"Returns the longest normalized axis of this bounding box's [member size], as "
"a [Vector3] ([constant Vector3.RIGHT], [constant Vector3.UP], or [constant "
"Vector3.BACK]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(0, 0, 0), Vector3(2, 4, 8))\n"
"\n"
"print(box.get_longest_axis())       # Prints (0.0, 0.0, 1.0)\n"
"print(box.get_longest_axis_index()) # Prints 2\n"
"print(box.get_longest_axis_size())  # Prints 8.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(2, 4, 8));\n"
"\n"
"GD.Print(box.GetLongestAxis());      // Prints (0, 0, 1)\n"
"GD.Print(box.GetLongestAxisIndex()); // Prints Z\n"
"GD.Print(box.GetLongestAxisSize());  // Prints 8\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method get_longest_axis_index] and [method get_longest_axis_size]."
msgstr ""
"Возвращает самую длинную нормализованную ось [member size] этого "
"ограничивающего прямоугольника в виде [Vector3] ([constant Vector3.RIGHT], "
"[constant Vector3.UP] или [constant Vector3.BACK]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(0, 0, 0), Vector3(2, 4, 8))\n"
"\n"
"print(box.get_longest_axis())       # Prints (0.0, 0.0, 1.0)\n"
"print(box.get_longest_axis_index()) # Prints 2\n"
"print(box.get_longest_axis_size())  # Prints 8.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(2, 4, 8));\n"
"\n"
"GD.Print(box.GetLongestAxis());      // Prints (0, 0, 1)\n"
"GD.Print(box.GetLongestAxisIndex()); // Prints Z\n"
"GD.Print(box.GetLongestAxisSize());  // Prints 8\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. также [method get_longest_axis_index] и [method get_longest_axis_size]."

msgid ""
"Returns the index to the longest axis of this bounding box's [member size] "
"(see [constant Vector3.AXIS_X], [constant Vector3.AXIS_Y], and [constant "
"Vector3.AXIS_Z]).\n"
"For an example, see [method get_longest_axis]."
msgstr ""
"Возвращает индекс самой длинной оси [member size] этого ограничивающего "
"прямоугольника (см. [constant Vector3.AXIS_X], [constant Vector3.AXIS_Y] и "
"[constant Vector3.AXIS_Z]).\n"
"Пример см. в [method get_longest_axis]."

msgid ""
"Returns the longest dimension of this bounding box's [member size].\n"
"For an example, see [method get_longest_axis]."
msgstr ""
"Возвращает самое длинное измерение [member size] этого ограничивающего "
"прямоугольника.\n"
"Пример см. в [method get_longest_axis]."

msgid ""
"Returns the shortest normalized axis of this bounding box's [member size], as "
"a [Vector3] ([constant Vector3.RIGHT], [constant Vector3.UP], or [constant "
"Vector3.BACK]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(0, 0, 0), Vector3(2, 4, 8))\n"
"\n"
"print(box.get_shortest_axis())       # Prints (1.0, 0.0, 0.0)\n"
"print(box.get_shortest_axis_index()) # Prints 0\n"
"print(box.get_shortest_axis_size())  # Prints 2.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(2, 4, 8));\n"
"\n"
"GD.Print(box.GetShortestAxis());      // Prints (1, 0, 0)\n"
"GD.Print(box.GetShortestAxisIndex()); // Prints X\n"
"GD.Print(box.GetShortestAxisSize());  // Prints 2\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method get_shortest_axis_index] and [method get_shortest_axis_size]."
msgstr ""
"Возвращает самую короткую нормализованную ось [member size] этого "
"ограничивающего прямоугольника в виде [Vector3] ([constant Vector3.RIGHT], "
"[constant Vector3.UP] или [constant Vector3.BACK]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box = AABB(Vector3(0, 0, 0), Vector3(2, 4, 8))\n"
"\n"
"print(box.get_shortest_axis())       # Prints (1.0, 0.0, 0.0)\n"
"print(box.get_shortest_axis_index()) # Prints 0\n"
"print(box.get_shortest_axis_size())  # Prints 2.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var box = new Aabb(new Vector3(0, 0, 0), new Vector3(2, 4, 8));\n"
"\n"
"GD.Print(box.GetShortestAxis());      // Prints (1, 0, 0)\n"
"GD.Print(box.GetShortestAxisIndex()); // Prints X\n"
"GD.Print(box.GetShortestAxisSize());  // Prints 2\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. также [method get_shortest_axis_index] и [method get_shortest_axis_size]."

msgid ""
"Returns the index to the shortest axis of this bounding box's [member size] "
"(see [constant Vector3.AXIS_X], [constant Vector3.AXIS_Y], and [constant "
"Vector3.AXIS_Z]).\n"
"For an example, see [method get_shortest_axis]."
msgstr ""
"Возвращает индекс самой короткой оси [member size] этого ограничивающего "
"прямоугольника (см. [constant Vector3.AXIS_X], [constant Vector3.AXIS_Y] и "
"[constant Vector3.AXIS_Z]).\n"
"Пример см. в [method get_shortest_axis]."

msgid ""
"Returns the shortest dimension of this bounding box's [member size].\n"
"For an example, see [method get_shortest_axis]."
msgstr ""
"Возвращает наименьшее измерение [member size] этого ограничивающего "
"прямоугольника.\n"
"Пример см. в [method get_shortest_axis]."

msgid ""
"Returns the vertex's position of this bounding box that's the farthest in the "
"given direction. This point is commonly known as the support point in "
"collision detection algorithms."
msgstr ""
"Возвращает позицию вершины этого ограничивающего прямоугольника, которая "
"находится дальше всего в заданном направлении. Эта точка обычно известна как "
"опорная точка в алгоритмах обнаружения столкновений."

msgid ""
"Returns the bounding box's volume. This is equivalent to [code]size.x * "
"size.y * size.z[/code]. See also [method has_volume]."
msgstr ""
"Возвращает объем ограничивающего прямоугольника. Это эквивалентно "
"[code]size.x * size.y * size.z[/code]. См. также [method has_volume]."

msgid ""
"Returns a copy of this bounding box extended on all sides by the given amount "
"[param by]. A negative amount shrinks the box instead.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = AABB(Vector3(4, 4, 4), Vector3(8, 8, 8)).grow(4)\n"
"print(a.position) # Prints (0.0, 0.0, 0.0)\n"
"print(a.size)     # Prints (16.0, 16.0, 16.0)\n"
"\n"
"var b = AABB(Vector3(0, 0, 0), Vector3(8, 4, 2)).grow(2)\n"
"print(b.position) # Prints (-2.0, -2.0, -2.0)\n"
"print(b.size)     # Prints (12.0, 8.0, 6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Aabb(new Vector3(4, 4, 4), new Vector3(8, 8, 8)).Grow(4);\n"
"GD.Print(a.Position); // Prints (0, 0, 0)\n"
"GD.Print(a.Size);     // Prints (16, 16, 16)\n"
"\n"
"var b = new Aabb(new Vector3(0, 0, 0), new Vector3(8, 4, 2)).Grow(2);\n"
"GD.Print(b.Position); // Prints (-2, -2, -2)\n"
"GD.Print(b.Size);     // Prints (12, 8, 6)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает копию этого ограничивающего прямоугольника, расширенного со всех "
"сторон на указанное значение [param by]. Отрицательное значение вместо этого "
"сжимает прямоугольник.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = AABB(Vector3(4, 4, 4), Vector3(8, 8, 8)).grow(4)\n"
"print(a.position) # Prints (0.0, 0.0, 0.0)\n"
"print(a.size)     # Prints (16.0, 16.0, 16.0)\n"
"\n"
"var b = AABB(Vector3(0, 0, 0), Vector3(8, 4, 2)).grow(2)\n"
"print(b.position) # Prints (-2.0, -2.0, -2.0)\n"
"print(b.size)     # Prints (12.0, 8.0, 6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Aabb(new Vector3(4, 4, 4), new Vector3(8, 8, 8)).Grow(4);\n"
"GD.Print(a.Position); // Prints (0, 0, 0)\n"
"GD.Print(a.Size);     // Prints (16, 16, 16)\n"
"\n"
"var b = new Aabb(new Vector3(0, 0, 0), new Vector3(8, 4, 2)).Grow(2);\n"
"GD.Print(b.Position); // Prints (-2, -2, -2)\n"
"GD.Print(b.Size);     // Prints (12, 8, 6)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if the bounding box contains the given [param "
"point]. By convention, points exactly on the right, top, and front sides are "
"[b]not[/b] included.\n"
"[b]Note:[/b] This method is not reliable for [AABB] with a [i]negative[/i] "
"[member size]. Use [method abs] first to get a valid bounding box."
msgstr ""
"Возвращает [code]true[/code], если ограничивающий прямоугольник содержит "
"заданный [param point]. По соглашению, точки точно на правой, верхней и "
"передней сторонах [b]не[/b] включены.\n"
"[b]Примечание:[/b] Этот метод ненадежен для [AABB] с [i]отрицательным[/i] "
"[member size]. Сначала используйте [method abs], чтобы получить допустимый "
"ограничивающий прямоугольник."

msgid ""
"Returns [code]true[/code] if this bounding box has a surface or a length, "
"that is, at least one component of [member size] is greater than [code]0[/"
"code]. Otherwise, returns [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если этот ограничивающий прямоугольник имеет "
"поверхность или длину, то есть хотя бы один компонент [member size] больше, "
"чем [code]0[/code]. В противном случае возвращает [code]false[/code]."

msgid ""
"Returns [code]true[/code] if this bounding box's width, height, and depth are "
"all positive. See also [method get_volume]."
msgstr ""
"Возвращает [code]true[/code], если ширина, высота и глубина этого "
"ограничивающего прямоугольника положительны. См. также [method get_volume]."

msgid ""
"Returns the intersection between this bounding box and [param with]. If the "
"boxes do not intersect, returns an empty [AABB]. If the boxes intersect at "
"the edge, returns a flat [AABB] with no volume (see [method has_surface] and "
"[method has_volume]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box1 = AABB(Vector3(0, 0, 0), Vector3(5, 2, 8))\n"
"var box2 = AABB(Vector3(2, 0, 2), Vector3(8, 4, 4))\n"
"\n"
"var intersection = box1.intersection(box2)\n"
"print(intersection.position) # Prints (2.0, 0.0, 2.0)\n"
"print(intersection.size)     # Prints (3.0, 2.0, 4.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var box1 = new Aabb(new Vector3(0, 0, 0), new Vector3(5, 2, 8));\n"
"var box2 = new Aabb(new Vector3(2, 0, 2), new Vector3(8, 4, 4));\n"
"\n"
"var intersection = box1.Intersection(box2);\n"
"GD.Print(intersection.Position); // Prints (2, 0, 2)\n"
"GD.Print(intersection.Size);     // Prints (3, 2, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you only need to know whether two bounding boxes are "
"intersecting, use [method intersects], instead."
msgstr ""
"Возвращает пересечение между этим ограничивающим прямоугольником и [param "
"with]. Если прямоугольники не пересекаются, возвращает пустой [AABB]. Если "
"прямоугольники пересекаются по краю, возвращает плоский [AABB] без объема "
"(см. [method has_surface] и [method has_volume]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var box1 = AABB(Vector3(0, 0, 0), Vector3(5, 2, 8))\n"
"var box2 = AABB(Vector3(2, 0, 2), Vector3(8, 4, 4))\n"
"\n"
"var intersection = box1.intersection(box2)\n"
"print(intersection.position) # Prints (2.0, 0.0, 2.0)\n"
"print(intersection.size)     # Prints (3.0, 2.0, 4.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var box1 = new Aabb(new Vector3(0, 0, 0), new Vector3(5, 2, 8));\n"
"var box2 = new Aabb(new Vector3(2, 0, 2), new Vector3(8, 4, 4));\n"
"\n"
"var intersection = box1.Intersection(box2);\n"
"GD.Print(intersection.Position); // Prints (2, 0, 2)\n"
"GD.Print(intersection.Size);     // Prints (3, 2, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Если вам нужно только узнать, пересекаются ли два "
"ограничивающих прямоугольника, используйте вместо этого [method intersects]."

msgid ""
"Returns [code]true[/code] if this bounding box overlaps with the box [param "
"with]. The edges of both boxes are [i]always[/i] excluded."
msgstr ""
"Возвращает [code]true[/code], если этот ограничивающий прямоугольник "
"перекрывается с прямоугольником [param with]. Края обоих прямоугольников "
"[i]всегда[/i] исключаются."

msgid ""
"Returns [code]true[/code] if this bounding box is on both sides of the given "
"[param plane]."
msgstr ""
"Возвращает [code]true[/code], если этот ограничивающий прямоугольник "
"находится по обе стороны заданной [param plane]."

msgid ""
"Returns the first point where this bounding box and the given ray intersect, "
"as a [Vector3]. If no intersection occurs, returns [code]null[/code].\n"
"The ray begin at [param from], faces [param dir] and extends towards infinity."
msgstr ""
"Возвращает первую точку пересечения этого ограничивающего прямоугольника и "
"заданного луча в виде [Vector3]. Если пересечения не происходит, возвращает "
"[code]null[/code].\n"
"Луч начинается в [param from], смотрит в [param dir] и простирается в "
"бесконечность."

msgid ""
"Returns the first point where this bounding box and the given segment "
"intersect, as a [Vector3]. If no intersection occurs, returns [code]null[/"
"code].\n"
"The segment begins at [param from] and ends at [param to]."
msgstr ""
"Возвращает первую точку пересечения этого ограничивающего прямоугольника и "
"заданного сегмента в виде [Vector3]. Если пересечения не происходит, "
"возвращает [code]null[/code].\n"
"Сегмент начинается в [param from] и заканчивается в [param to]."

msgid ""
"Returns [code]true[/code] if this bounding box and [param aabb] are "
"approximately equal, by calling [method Vector3.is_equal_approx] on the "
"[member position] and the [member size]."
msgstr ""
"Возвращает [code]true[/code], если этот ограничивающий прямоугольник и [param "
"aabb] приблизительно равны, вызывая [method Vector3.is_equal_approx] для "
"[member position] и [member size]."

msgid ""
"Returns [code]true[/code] if this bounding box's values are finite, by "
"calling [method Vector3.is_finite] on the [member position] and the [member "
"size]."
msgstr ""
"Возвращает [code]true[/code], если значения этого ограничивающего "
"прямоугольника конечны, вызывая [method Vector3.is_finite] для [member "
"position] и [member size]."

msgid ""
"Returns an [AABB] that encloses both this bounding box and [param with] "
"around the edges. See also [method encloses]."
msgstr ""
"Возвращает [AABB], который охватывает как этот ограничивающий прямоугольник, "
"так и [param with] по краям. См. также [method encludes]."

msgid ""
"The ending point. This is usually the corner on the top-right and back of the "
"bounding box, and is equivalent to [code]position + size[/code]. Setting this "
"point affects the [member size]."
msgstr ""
"Конечная точка. Обычно это угол сверху справа и сзади ограничивающего "
"прямоугольника, и эквивалентно [code]position + size[/code]. Установка этой "
"точки влияет на [member size]."

msgid ""
"The origin point. This is usually the corner on the bottom-left and forward "
"of the bounding box."
msgstr ""
"Начальная точка. Обычно это нижний левый угол спереди ограничивающей рамки."

msgid ""
"The bounding box's width, height, and depth starting from [member position]. "
"Setting this value also affects the [member end] point.\n"
"[b]Note:[/b] It's recommended setting the width, height, and depth to non-"
"negative values. This is because most methods in Godot assume that the "
"[member position] is the bottom-left-forward corner, and the [member end] is "
"the top-right-back corner. To get an equivalent bounding box with non-"
"negative size, use [method abs]."
msgstr ""
"Ширина, высота и глубина ограничивающего прямоугольника, начиная с [member "
"position]. Установка этого значения также влияет на точку [member end].\n"
"[b]Примечание:[/b] Рекомендуется устанавливать ширину, высоту и глубину на "
"неотрицательные значения. Это связано с тем, что большинство методов в Godot "
"предполагают, что [member position] — это нижний левый передний угол, а "
"[member end] — это верхний правый задний угол. Чтобы получить эквивалентный "
"ограничивающий прямоугольник с неотрицательным размером, используйте [method "
"abs]."

msgid ""
"Returns [code]true[/code] if the [member position] or [member size] of both "
"bounding boxes are not equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если [member position] или [member size] обоих "
"ограничивающих рамок не равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx], который более надежен."

msgid ""
"Inversely transforms (multiplies) the [AABB] by the given [Transform3D] "
"transformation matrix, under the assumption that the transformation basis is "
"orthonormal (i.e. rotation/reflection is fine, scaling/skew is not).\n"
"[code]aabb * transform[/code] is equivalent to [code]transform.inverse() * "
"aabb[/code]. See [method Transform3D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * aabb[/code] can be used instead. See "
"[method Transform3D.affine_inverse]."
msgstr ""
"Обратно преобразует (умножает) [AABB] на заданную матрицу преобразования "
"[Transform3D], при условии, что базис преобразования ортонормален (т. е. "
"поворот/отражение хороши, масштабирование/перекос — нет).\n"
"[code]aabb * transform[/code] эквивалентно [code]transform.inverse() * aabb[/"
"code]. См. [method Transform3D.inverse].\n"
"Для преобразования с помощью обратного аффинного преобразования (например, с "
"масштабированием) вместо этого можно использовать "
"[code]transform.affine_inverse() * aabb[/code]. См. [method "
"Transform3D.affine_inverse]."

msgid ""
"Returns [code]true[/code] if both [member position] and [member size] of the "
"bounding boxes are exactly equal, respectively.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если и [member position] и [member size] "
"ограничивающих рамок в точности равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx], который более надежен."

msgid "A base dialog used for user notification."
msgstr "Базовый диалог, используемый для уведомления пользователя."

msgid ""
"The default use of [AcceptDialog] is to allow it to only be accepted or "
"closed, with the same result. However, the [signal confirmed] and [signal "
"canceled] signals allow to make the two actions different, and the [method "
"add_button] method allows to add custom buttons and actions."
msgstr ""
"Использование [AcceptDialog] по умолчанию — разрешить только принять или "
"закрыть его, с тем же результатом. Однако сигналы [signal confirmed] и "
"[signal canceled] позволяют сделать эти два действия разными, а метод [method "
"add_button] позволяет добавлять пользовательские кнопки и действия."

msgid ""
"Adds a button with label [param text] and a custom [param action] to the "
"dialog and returns the created button.\n"
"If [param action] is not empty, pressing the button will emit the [signal "
"custom_action] signal with the specified action string.\n"
"If [code]true[/code], [param right] will place the button to the right of any "
"sibling buttons.\n"
"You can use [method remove_button] method to remove a button created with "
"this method from the dialog."
msgstr ""
"Добавляет кнопку с меткой [param text] и настраиваемым параметром [param "
"action] в диалоговое окно и возвращает созданную кнопку.\n"
"Если [param action] не пуст, нажатие кнопки сгенерирует сигнал [signal "
"custom_action] с указанной строкой действия.\n"
"Если [code]true[/code], [param right] разместит кнопку справа от всех "
"родственных кнопок.\n"
"Вы можете использовать метод [method remove_button] для удаления кнопки, "
"созданной с помощью этого метода, из диалогового окна."

msgid ""
"Adds a button with label [param name] and a cancel action to the dialog and "
"returns the created button.\n"
"You can use [method remove_button] method to remove a button created with "
"this method from the dialog."
msgstr ""
"Добавляет кнопку с меткой [param name] и действие отмены в диалоговое окно и "
"возвращает созданную кнопку.\n"
"Вы можете использовать метод [method remove_button], чтобы удалить кнопку, "
"созданную с помощью этого метода, из диалогового окна."

msgid ""
"Returns the label used for built-in text.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Возвращает метку, используемую для встроенного текста.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member CanvasItem.visible]."

msgid ""
"Returns the OK [Button] instance.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Возвращает экземпляр кнопки OK [Button].\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member CanvasItem.visible]."

msgid ""
"Registers a [LineEdit] in the dialog. When the enter key is pressed, the "
"dialog will be accepted."
msgstr ""
"Регистрирует [LineEdit] в диалоге. При нажатии клавиши ввода диалог будет "
"принят."

msgid ""
"Removes the [param button] from the dialog. Does NOT free the [param button]. "
"The [param button] must be a [Button] added with [method add_button] or "
"[method add_cancel_button] method. After removal, pressing the [param button] "
"will no longer emit this dialog's [signal custom_action] or [signal canceled] "
"signals."
msgstr ""
"Удаляет кнопку [param button] из диалогового окна. НЕ освобождает [param "
"button]. [param button] должна быть [Button], добавленной с помощью метода "
"[method add_button] или [method add_cancel_button]. После удаления нажатие "
"[param button] больше не будет выдавать сигналы [signal custom_action] или "
"[signal canceled] этого диалогового окна."

msgid "Sets autowrapping for the text in the dialog."
msgstr "Устанавливает автоматический перенос текста в диалоге."

msgid ""
"If [code]true[/code], the dialog will be hidden when the [code]ui_cancel[/"
"code] action is pressed (by default, this action is bound to [constant "
"KEY_ESCAPE])."
msgstr ""
"Если [code]true[/code], диалоговое окно будет скрыто при нажатии действия "
"[code]ui_cancel[/code] (по умолчанию это действие привязано к [constant "
"KEY_ESCAPE])."

msgid ""
"If [code]true[/code], the dialog is hidden when the OK button is pressed. You "
"can set it to [code]false[/code] if you want to do e.g. input validation when "
"receiving the [signal confirmed] signal, and handle hiding the dialog in your "
"own logic.\n"
"[b]Note:[/b] Some nodes derived from this class can have a different default "
"value, and potentially their own built-in logic overriding this setting. For "
"example [FileDialog] defaults to [code]false[/code], and has its own input "
"validation code that is called when you press OK, which eventually hides the "
"dialog if the input is valid. As such, this property can't be used in "
"[FileDialog] to disable hiding the dialog when pressing OK."
msgstr ""
"Если [code]true[/code], диалоговое окно будет скрыто при нажатии кнопки OK. "
"Вы можете установить значение в [code]false[/code] если хотите, например, "
"сделать проверку ввода при получении сигнала [signal confirmed], и обработать "
"сокрытие диалога в своей собственной логике.\n"
"[b]Примечание:[/b] Некоторые узлы, производные от этого класса, могут иметь "
"другое значение по умолчанию, и потенциально их собственная встроенная логика "
"переопределяет этот параметр. Например, [FileDialog] имеет значение по "
"умолчанию [code]false[/code] и собственный код проверки ввода, который "
"вызывается при нажатии кнопки OK, который в конечном итоге скрывает диалог, "
"если ввод является допустимым. Как таковое, это свойство не может быть "
"использовано в [FileDialog] для отключения скрытия диалога при нажатии OK."

msgid "The text displayed by the dialog."
msgstr "Текст, отображаемый в диалоговом окне."

msgid ""
"The text displayed by the OK button (see [method get_ok_button]). If empty, a "
"default text will be used."
msgstr ""
"Текст, отображаемый кнопкой OK (см. [method get_ok_button]). Если пусто, "
"будет использован текст по умолчанию."

msgid ""
"Emitted when the dialog is closed or the button created with [method "
"add_cancel_button] is pressed."
msgstr ""
"Вызывается при закрытии диалогового окна или нажатии кнопки, созданной с "
"помощью [method add_cancel_button]."

msgid "Emitted when the dialog is accepted, i.e. the OK button is pressed."
msgstr "Излучается при принятии диалога, т.е. когда нажата кнопка OK."

msgid ""
"Emitted when a custom button with an action is pressed. See [method "
"add_button]."
msgstr ""
"Генерируется при нажатии пользовательской кнопки с действием. См. [method "
"add_button]."

msgid ""
"The minimum height of each button in the bottom row (such as OK/Cancel) in "
"pixels. This can be increased to make buttons with short texts easier to "
"click/tap."
msgstr ""
"Минимальная высота каждой кнопки в нижнем ряду (например, OK/Отмена) в "
"пикселях. Ее можно увеличить, чтобы кнопки с коротким текстом было легче "
"нажимать/касать."

msgid ""
"The minimum width of each button in the bottom row (such as OK/Cancel) in "
"pixels. This can be increased to make buttons with short texts easier to "
"click/tap."
msgstr ""
"Минимальная ширина каждой кнопки в нижнем ряду (например, OK/Отмена) в "
"пикселях. Ее можно увеличить, чтобы кнопки с коротким текстом было легче "
"нажимать/касать."

msgid ""
"The size of the vertical space between the dialog's content and the button "
"row."
msgstr ""
"Размер вертикального пространства между содержимым диалогового окна и рядом "
"кнопок."

msgid "The panel that fills the background of the window."
msgstr "Панель которая заполняет задний план окна."

msgid "Provides access to AES encryption/decryption of raw data."
msgstr ""
"Предоставляет доступ к шифрованию/дешифрованию необработанных данных по "
"алгоритму AES."

msgid ""
"This class holds the context information required for encryption and "
"decryption operations with AES (Advanced Encryption Standard). Both AES-ECB "
"and AES-CBC modes are supported.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"\n"
"var aes = AESContext.new()\n"
"\n"
"func _ready():\n"
"\tvar key = \"My secret key!!!\" # Key must be either 16 or 32 bytes.\n"
"\tvar data = \"My secret text!!\" # Data size must be multiple of 16 bytes, "
"apply padding if needed.\n"
"\t# Encrypt ECB\n"
"\taes.start(AESContext.MODE_ECB_ENCRYPT, key.to_utf8_buffer())\n"
"\tvar encrypted = aes.update(data.to_utf8_buffer())\n"
"\taes.finish()\n"
"\t# Decrypt ECB\n"
"\taes.start(AESContext.MODE_ECB_DECRYPT, key.to_utf8_buffer())\n"
"\tvar decrypted = aes.update(encrypted)\n"
"\taes.finish()\n"
"\t# Check ECB\n"
"\tassert(decrypted == data.to_utf8_buffer())\n"
"\n"
"\tvar iv = \"My secret iv!!!!\" # IV must be of exactly 16 bytes.\n"
"\t# Encrypt CBC\n"
"\taes.start(AESContext.MODE_CBC_ENCRYPT, key.to_utf8_buffer(), "
"iv.to_utf8_buffer())\n"
"\tencrypted = aes.update(data.to_utf8_buffer())\n"
"\taes.finish()\n"
"\t# Decrypt CBC\n"
"\taes.start(AESContext.MODE_CBC_DECRYPT, key.to_utf8_buffer(), "
"iv.to_utf8_buffer())\n"
"\tdecrypted = aes.update(encrypted)\n"
"\taes.finish()\n"
"\t# Check CBC\n"
"\tassert(decrypted == data.to_utf8_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate AesContext _aes = new AesContext();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tstring key = \"My secret key!!!\"; // Key must be either 16 or 32 bytes.\n"
"\t\tstring data = \"My secret text!!\"; // Data size must be multiple of 16 "
"bytes, apply padding if needed.\n"
"\t\t// Encrypt ECB\n"
"\t\t_aes.Start(AesContext.Mode.EcbEncrypt, key.ToUtf8Buffer());\n"
"\t\tbyte[] encrypted = _aes.Update(data.ToUtf8Buffer());\n"
"\t\t_aes.Finish();\n"
"\t\t// Decrypt ECB\n"
"\t\t_aes.Start(AesContext.Mode.EcbDecrypt, key.ToUtf8Buffer());\n"
"\t\tbyte[] decrypted = _aes.Update(encrypted);\n"
"\t\t_aes.Finish();\n"
"\t\t// Check ECB\n"
"\t\tDebug.Assert(decrypted == data.ToUtf8Buffer());\n"
"\n"
"\t\tstring iv = \"My secret iv!!!!\"; // IV must be of exactly 16 bytes.\n"
"\t\t// Encrypt CBC\n"
"\t\t_aes.Start(AesContext.Mode.EcbEncrypt, key.ToUtf8Buffer(), "
"iv.ToUtf8Buffer());\n"
"\t\tencrypted = _aes.Update(data.ToUtf8Buffer());\n"
"\t\t_aes.Finish();\n"
"\t\t// Decrypt CBC\n"
"\t\t_aes.Start(AesContext.Mode.EcbDecrypt, key.ToUtf8Buffer(), "
"iv.ToUtf8Buffer());\n"
"\t\tdecrypted = _aes.Update(encrypted);\n"
"\t\t_aes.Finish();\n"
"\t\t// Check CBC\n"
"\t\tDebug.Assert(decrypted == data.ToUtf8Buffer());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Этот класс содержит контекстную информацию, необходимую для операций "
"шифрования и дешифрования с помощью AES (Advanced Encryption Standard). "
"Поддерживаются режимы AES-ECB и AES-CBC.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"\n"
"var aes = AESContext.new()\n"
"\n"
"func _ready():\n"
"\tvar key = \"My secret key!!!\" # Ключ должен быть длиной 16 или 32 байта.\n"
"\tvar data = \"My secret text!!\" # Размер данных должен быть кратен 16 "
"байтам, при необходимости используйте заполнение.\n"
"\t# Зашифровать ECB\n"
"\taes.start(AESContext.MODE_ECB_ENCRYPT, key.to_utf8_buffer())\n"
"\tvar encrypted = aes.update(data.to_utf8_buffer())\n"
"\taes.finish()\n"
"\t# Расшифровать ECB\n"
"\taes.start(AESContext.MODE_ECB_DECRYPT, key.to_utf8_buffer())\n"
"\tvar decrypted = aes.update(encrypted)\n"
"\taes.finish()\n"
"\t# Проверить ECB\n"
"\tassert(decrypted == data.to_utf8_buffer())\n"
"\n"
"\tvar iv = \"My secret iv!!!!\" # IV должен состоять ровно из 16 байт.\n"
"\t# Зашифровать CBC\n"
"\taes.start(AESContext.MODE_CBC_ENCRYPT, key.to_utf8_buffer(), "
"iv.to_utf8_buffer())\n"
"\tencrypted = aes.update(data.to_utf8_buffer())\n"
"\taes.finish()\n"
"\t# Расшифровать CBC\n"
"\taes.start(AESContext.MODE_CBC_DECRYPT, key.to_utf8_buffer(), "
"iv.to_utf8_buffer())\n"
"\tdecrypted = aes.update(encrypted)\n"
"\taes.finish()\n"
"\t# Проверить CBC\n"
"\tassert(decrypted == data.to_utf8_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate AesContext _aes = new AesContext();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tstring key = \"My secret key!!!\"; // Ключ должен быть длиной 16 или 32 "
"байта.\n"
"\t\tstring data = \"My secret text!!\"; // Размер данных должен быть кратен "
"16 байтам, при необходимости используйте заполнение.\n"
"\t\t// Зашифровать ECB\n"
"\t\t_aes.Start(AesContext.Mode.EcbEncrypt, key.ToUtf8Buffer());\n"
"\t\tbyte[] encrypted = _aes.Update(data.ToUtf8Buffer());\n"
"\t\t_aes.Finish();\n"
"\t\t// Расшифровать ECB\n"
"\t\t_aes.Start(AesContext.Mode.EcbDecrypt, key.ToUtf8Buffer());\n"
"\t\tbyte[] decrypted = _aes.Update(encrypted);\n"
"\t\t_aes.Finish();\n"
"\t\t// Проверить ECB\n"
"\t\tDebug.Assert(decrypted == data.ToUtf8Buffer());\n"
"\n"
"\t\tstring iv = \"My secret iv!!!!\"; // IV должен состоять ровно из 16 "
"байт.\n"
"\t\t// Зашифровать CBC\n"
"\t\t_aes.Start(AesContext.Mode.EcbEncrypt, key.ToUtf8Buffer(), "
"iv.ToUtf8Buffer());\n"
"\t\tencrypted = _aes.Update(data.ToUtf8Buffer());\n"
"\t\t_aes.Finish();\n"
"\t\t// Расшифровать CBC\n"
"\t\t_aes.Start(AesContext.Mode.EcbDecrypt, key.ToUtf8Buffer(), "
"iv.ToUtf8Buffer());\n"
"\t\tdecrypted = _aes.Update(encrypted);\n"
"\t\t_aes.Finish();\n"
"\t\t// Проверить CBC\n"
"\t\tDebug.Assert(decrypted == data.ToUtf8Buffer());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Close this AES context so it can be started again. See [method start]."
msgstr ""
"Закрыть данный AES-контекст, чтобы его можно было запустить заново. См. "
"раздел [method start]."

msgid ""
"Get the current IV state for this context (IV gets updated when calling "
"[method update]). You normally don't need this function.\n"
"[b]Note:[/b] This function only makes sense when the context is started with "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
"Получить текущее IV состояние для данного контекста (IV обновляется при "
"вызове [method update]). Обычно эта функция вам не нужна.\n"
"[b]Примечание:[/b] Эта функция имеет смысл только тогда, когда контекст "
"запущен с [constant MODE_CBC_ENCRYPT] или [constant MODE_CBC_DECRYPT]."

msgid ""
"Start the AES context in the given [param mode]. A [param key] of either 16 "
"or 32 bytes must always be provided, while an [param iv] (initialization "
"vector) of exactly 16 bytes, is only needed when [param mode] is either "
"[constant MODE_CBC_ENCRYPT] or [constant MODE_CBC_DECRYPT]."
msgstr ""
"Запустите контекст AES в заданном [param mode]. Всегда должен быть указан "
"[param key] из 16 или 32 байт, тогда как [param iv] (вектор инициализации) из "
"ровно 16 байт требуется только тогда, когда [param mode] равен [constant "
"MODE_CBC_ENCRYPT] или [constant MODE_CBC_DECRYPT]."

msgid ""
"Run the desired operation for this AES context. Will return a "
"[PackedByteArray] containing the result of encrypting (or decrypting) the "
"given [param src]. See [method start] for mode of operation.\n"
"[b]Note:[/b] The size of [param src] must be a multiple of 16. Apply some "
"padding if needed."
msgstr ""
"Выполнить нужную операцию для этого контекста AES. Вернет [PackedByteArray], "
"содержащий результат шифрования (или расшифровки) указанного [param src]. См. "
"[method start] для режима работы.\n"
"[b]Примечание:[/b] Размер [param src] должен быть кратен 16. При "
"необходимости примените некоторое заполнение."

msgid "AES electronic codebook encryption mode."
msgstr "AES режим шифрования электронной кодовой книги."

msgid "AES electronic codebook decryption mode."
msgstr "AES режим дешифрования электронной кодовой книги."

msgid "AES cipher blocker chaining encryption mode."
msgstr ""
"AES шифрование режимом сцепления блоков шифротекста Cipher Block Chaining "
"(CBC)."

msgid "AES cipher blocker chaining decryption mode."
msgstr ""
"AES дешифрование режимом сцепления блоков шифротекста Cipher Block Chaining "
"(CBC)."

msgid "Maximum value for the mode enum."
msgstr "Максимальное значение для режима перечисления."

msgid "The [AimModifier3D] rotates a bone to look at a reference bone."
msgstr "[AimModifier3D] вращает кость, чтобы она смотрела на опорную кость."

msgid ""
"This is a simple version of [LookAtModifier3D] that only allows bone to the "
"reference without advanced options such as angle limitation or time-based "
"interpolation.\n"
"The feature is simplified, but instead it is implemented with smooth tracking "
"without euler, see [method set_use_euler]."
msgstr ""
"Это упрощённая версия [LookAtModifier3D], которая допускает только кость к "
"референсу без дополнительных настроек, таких как ограничение угла или "
"заданной по времени интерполяции.\n"
"Эта функция упрощена, но взамен она имплементирована с сглаженным трекингом "
"без euler, смотреть [method set_use_euler]."

msgid "Returns the forward axis of the bone."
msgstr "Возвращает переднюю ось кости."

msgid ""
"Returns the axis of the first rotation. It is enabled only if [method "
"is_using_euler] is [code]true[/code]."
msgstr ""
"Возвращает ось первого вращения. Включено только если [method is_using_euler] "
"равен [code]true[/code]."

msgid "Returns [code]true[/code] if it provides rotation with using euler."
msgstr ""
"Возвращает [code]true[/code], если обеспечивает вращение с использованием "
"Эйлера."

msgid ""
"Returns [code]true[/code] if it provides rotation by two axes. It is enabled "
"only if [method is_using_euler] is [code]true[/code]."
msgstr ""
"Возвращает [code]true[/code], если обеспечивает вращение по двум осям. Это "
"работает только если [method is_using_euler] равен [code]true[/code]."

msgid "Sets the forward axis of the bone."
msgstr "Устанавливает переднюю ось кости."

msgid ""
"Sets the axis of the first rotation. It is enabled only if [method "
"is_using_euler] is [code]true[/code]."
msgstr ""
"Устанавливает ось первого вращения. Работает только если [method "
"is_using_euler] равен [code]true[/code]."

msgid ""
"If sets [param enabled] to [code]true[/code], it provides rotation with using "
"euler.\n"
"If sets [param enabled] to [code]false[/code], it provides rotation with "
"using rotation by arc generated from the forward axis vector and the vector "
"toward the reference."
msgstr ""
"Если задан [param enabled] к [code]true[/code], то предоставляется вращение "
"без использования euler.\n"
"Если задан [param enabled] к [code]false[/code], то предоставляется вращение "
"с использованием пути, заданного передним осевым вектором и вектором, "
"направленным к референсу."

msgid ""
"If sets [param enabled] to [code]true[/code], it provides rotation by two "
"axes. It is enabled only if [method is_using_euler] is [code]true[/code]."
msgstr ""
"Если задан [param enabled] к [code]true[/code], то предоставляется вращение "
"по двум осям. Включено только если [method is_using_euler] задан [code]true[/"
"code]."

msgid "The number of settings in the modifier."
msgstr "Количество настроек в модификаторе."

msgid ""
"A 2D physics body that can't be moved by external forces. When moved "
"manually, it affects other bodies in its path."
msgstr ""
"Двумерное физическое тело, которое не перемещается под действием внешних сил. "
"При перемещении вручную оно влияет на другие тела на своем пути."

msgid ""
"An animatable 2D physics body. It can't be moved by external forces or "
"contacts, but can be moved manually by other means such as code, "
"[AnimationMixer]s (with [member AnimationMixer.callback_mode_process] set to "
"[constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), and "
"[RemoteTransform2D].\n"
"When [AnimatableBody2D] is moved, its linear and angular velocity are "
"estimated and used to affect other physics bodies in its path. This makes it "
"useful for moving platforms, doors, and other moving objects."
msgstr ""
"Анимируемое 2D физическое тело. Его нельзя перемещать внешними силами или "
"контактами, но можно перемещать вручную другими способами, такими как код, "
"[AnimationMixer]s (с [member AnimationMixer.callback_mode_process] "
"установленным на [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]) и "
"[RemoteTransform2D].\n"
"Когда [AnimatableBody2D] перемещается, его линейная и угловая скорости "
"оцениваются и используются для воздействия на другие физические тела на его "
"пути. Это делает его полезным для перемещения платформ, дверей и других "
"движущихся объектов."

msgid "Physics introduction"
msgstr "Введение в физику"

msgid "Troubleshooting physics issues"
msgstr "Устранение неполадок в физике"

msgid ""
"If [code]true[/code], the body's movement will be synchronized to the physics "
"frame. This is useful when animating movement via [AnimationPlayer], for "
"example on moving platforms. Do [b]not[/b] use together with [method "
"PhysicsBody2D.move_and_collide]."
msgstr ""
"Если [code]true[/code], движение тела будет синхронизировано с физическим "
"кадром. Это полезно при анимации движения через [AnimationPlayer], например, "
"на движущихся платформах. [b]Не[/b] используйте вместе с [method "
"PhysicsBody2D.move_and_collide]."

msgid ""
"A 3D physics body that can't be moved by external forces. When moved "
"manually, it affects other bodies in its path."
msgstr ""
"Физическое тело 3D, которое не может быть перемещено внешними силами. При "
"перемещении вручную оно влияет на другие тела на своем пути."

msgid ""
"An animatable 3D physics body. It can't be moved by external forces or "
"contacts, but can be moved manually by other means such as code, "
"[AnimationMixer]s (with [member AnimationMixer.callback_mode_process] set to "
"[constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), and "
"[RemoteTransform3D].\n"
"When [AnimatableBody3D] is moved, its linear and angular velocity are "
"estimated and used to affect other physics bodies in its path. This makes it "
"useful for moving platforms, doors, and other moving objects."
msgstr ""
"Анимируемое физическое тело 3D. Его нельзя перемещать внешними силами или "
"контактами, но можно перемещать вручную другими способами, такими как код, "
"[AnimationMixer]s (с [member AnimationMixer.callback_mode_process] "
"установленным на [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]) и "
"[RemoteTransform3D].\n"
"При перемещении [AnimatableBody3D] его линейная и угловая скорости "
"оцениваются и используются для воздействия на другие физические тела на его "
"пути. Это делает его полезным для перемещения платформ, дверей и других "
"движущихся объектов."

msgid "3D Physics Tests Demo"
msgstr "Демонстрация 3D-физических тестов"

msgid "Third Person Shooter (TPS) Demo"
msgstr "Демонстрация шутера от третьего лица (TPS)"

msgid "3D Voxel Demo"
msgstr "Демоверсия 3D вокселей"

msgid ""
"If [code]true[/code], the body's movement will be synchronized to the physics "
"frame. This is useful when animating movement via [AnimationPlayer], for "
"example on moving platforms. Do [b]not[/b] use together with [method "
"PhysicsBody3D.move_and_collide]."
msgstr ""
"Если [code]true[/code], движение тела будет синхронизировано с физическим "
"кадром. Это полезно при анимации движения через [AnimationPlayer], например, "
"на движущихся платформах. Не [b][/b] используйте вместе с [method "
"PhysicsBody3D.move_and_collide]."

msgid ""
"Sprite node that contains multiple textures as frames to play for animation."
msgstr ""
"Узел спрайта, содержащий несколько текстур в качестве кадров для анимации."

msgid ""
"[AnimatedSprite2D] is similar to the [Sprite2D] node, except it carries "
"multiple textures as animation frames. Animations are created using a "
"[SpriteFrames] resource, which allows you to import image files (or a folder "
"containing said files) to provide the animation frames for the sprite. The "
"[SpriteFrames] resource can be configured in the editor via the SpriteFrames "
"bottom panel."
msgstr ""
"[AnimatedSprite2D] похож на узел [Sprite2D], за исключением того, что он "
"содержит несколько текстур в качестве кадров анимации. Анимации создаются с "
"использованием ресурса [SpriteFrames], который позволяет импортировать файлы "
"изображений (или папку, содержащую указанные файлы) для предоставления кадров "
"анимации для спрайта. Ресурс [SpriteFrames] можно настроить в редакторе через "
"нижнюю панель SpriteFrames."

msgid "2D Sprite animation"
msgstr "Анимация 2D спрайтов"

msgid "2D Dodge The Creeps Demo"
msgstr "2D Dodge The Creeps Демо"

msgid ""
"Returns the actual playing speed of current animation or [code]0[/code] if "
"not playing. This speed is the [member speed_scale] property multiplied by "
"[code]custom_speed[/code] argument specified when calling the [method play] "
"method.\n"
"Returns a negative value if the current animation is playing backwards."
msgstr ""
"Возвращает фактическую скорость воспроизведения текущей анимации или [code]0[/"
"code], если не воспроизводится. Эта скорость — свойство [member speed_scale], "
"умноженное на аргумент [code]custom_speed[/code], указанный при вызове метода "
"[method play].\n"
"Возвращает отрицательное значение, если текущая анимация воспроизводится в "
"обратном направлении."

msgid ""
"Returns [code]true[/code] if an animation is currently playing (even if "
"[member speed_scale] and/or [code]custom_speed[/code] are [code]0[/code])."
msgstr ""
"Возвращает [code]true[/code], если в данный момент воспроизводится анимация "
"(даже если [member speed_scale] и/или [code]custom_speed[/code] равны "
"[code]0[/code])."

msgid ""
"Pauses the currently playing animation. The [member frame] and [member "
"frame_progress] will be kept and calling [method play] or [method "
"play_backwards] without arguments will resume the animation from the current "
"playback position.\n"
"See also [method stop]."
msgstr ""
"Приостанавливает текущую воспроизводимую анимацию. [Member frame] и [member "
"frame_progress] будут сохранены, а вызов [method play] или [method "
"play_backwards] без аргументов возобновит анимацию с текущей позиции "
"воспроизведения.\n"
"См. также [method stop]."

msgid ""
"Plays the animation with key [param name]. If [param custom_speed] is "
"negative and [param from_end] is [code]true[/code], the animation will play "
"backwards (which is equivalent to calling [method play_backwards]).\n"
"If this method is called with that same animation [param name], or with no "
"[param name] parameter, the assigned animation will resume playing if it was "
"paused."
msgstr ""
"Воспроизводит анимацию с ключом [param name]. Если [param custom_speed] "
"отрицательный, а [param from_end] равен [code]true[/code], анимация будет "
"воспроизводиться в обратном направлении (что эквивалентно вызову [method "
"play_backwards]). \n"
"Если этот метод вызывается с той же анимацией [param name] или без параметра "
"[param name], назначенная анимация возобновит воспроизведение, если она была "
"приостановлена."

msgid ""
"Plays the animation with key [param name] in reverse.\n"
"This method is a shorthand for [method play] with [code]custom_speed = -1.0[/"
"code] and [code]from_end = true[/code], so see its description for more "
"information."
msgstr ""
"Воспроизводит анимацию с ключом [param name] в обратном порядке.\n"
"Этот метод является сокращением для [method play] с [code]custom_speed = "
"-1.0[/code] и [code]from_end = true[/code], поэтому см. его описание для "
"получения дополнительной информации."

msgid ""
"Sets [member frame] and [member frame_progress] to the given values. Unlike "
"setting [member frame], this method does not reset the [member "
"frame_progress] to [code]0.0[/code] implicitly.\n"
"[b]Example:[/b] Change the animation while keeping the same [member frame] "
"and [member frame_progress]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var current_frame = animated_sprite.get_frame()\n"
"var current_progress = animated_sprite.get_frame_progress()\n"
"animated_sprite.play(\"walk_another_skin\")\n"
"animated_sprite.set_frame_and_progress(current_frame, current_progress)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Устанавливает [member frame] и [member frame_progress] на заданные значения. "
"В отличие от установки [member frame], этот метод не сбрасывает [member "
"frame_progress] на [code]0.0[/code] неявно.\n"
"[b]Пример:[/b] Измените анимацию, сохранив те же [member frame] и [member "
"frame_progress]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var current_frame = animated_sprite.get_frame()\n"
"var current_progress = animated_sprite.get_frame_progress()\n"
"animated_sprite.play(\"walk_another_skin\")\n"
"animated_sprite.set_frame_and_progress(current_frame, current_progress)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Stops the currently playing animation. The animation position is reset to "
"[code]0[/code] and the [code]custom_speed[/code] is reset to [code]1.0[/"
"code]. See also [method pause]."
msgstr ""
"Останавливает текущую воспроизводимую анимацию. Позиция анимации сбрасывается "
"на [code]0[/code], а [code]custom_speed[/code] сбрасывается на [code]1.0[/"
"code]. См. также [method pause]."

msgid ""
"The current animation from the [member sprite_frames] resource. If this value "
"is changed, the [member frame] counter and the [member frame_progress] are "
"reset."
msgstr ""
"Текущая анимация из ресурса [member sprite_frames]. Если это значение "
"изменяется, то сбрасываются счетчик [member frame] и [member frame_progress]."

msgid "The key of the animation to play when the scene loads."
msgstr "Ключ анимации, воспроизводимой при загрузке сцены."

msgid ""
"If [code]true[/code], texture will be centered.\n"
"[b]Note:[/b] For games with a pixel art aesthetic, textures may appear "
"deformed when centered. This is caused by their position being between "
"pixels. To prevent this, set this property to [code]false[/code], or consider "
"enabling [member ProjectSettings.rendering/2d/snap/snap_2d_vertices_to_pixel] "
"and [member ProjectSettings.rendering/2d/snap/snap_2d_transforms_to_pixel]."
msgstr ""
"Если [code]true[/code], текстура будет центрирована.\n"
"[b]Примечание:[/b] В играх с пиксельной эстетикой текстуры могут выглядеть "
"деформированными при центрировании. Это вызвано их положением между "
"пикселями. Чтобы предотвратить это, установите это свойство на [code]false[/"
"code] или рассмотрите возможность включения [member ProjectSettings.rendering/"
"2d/snap/snap_2d_vertices_to_pixel] и [member ProjectSettings.rendering/2d/"
"snap/snap_2d_transforms_to_pixel]."

msgid "If [code]true[/code], texture is flipped horizontally."
msgstr "Если [code]true[/code], текстура отражена по горизонтали."

msgid "If [code]true[/code], texture is flipped vertically."
msgstr "Если [code]true[/code], текстура отражена по вертикали."

msgid ""
"The displayed animation frame's index. Setting this property also resets "
"[member frame_progress]. If this is not desired, use [method "
"set_frame_and_progress]."
msgstr ""
"Индекс отображаемого кадра анимации. Установка этого свойства также "
"сбрасывает [member frame_progress]. Если это нежелательно, используйте "
"[method set_frame_and_progress]."

msgid ""
"The progress value between [code]0.0[/code] and [code]1.0[/code] until the "
"current frame transitions to the next frame. If the animation is playing "
"backwards, the value transitions from [code]1.0[/code] to [code]0.0[/code]."
msgstr ""
"Значение прогресса между [code]0.0[/code] и [code]1.0[/code] до тех пор, пока "
"текущий кадр не перейдет к следующему кадру. Если анимация воспроизводится в "
"обратном направлении, значение переходит от [code]1.0[/code] к [code]0.0[/"
"code]."

msgid "The texture's drawing offset."
msgstr "Смещение текстуры."

msgid ""
"The speed scaling ratio. For example, if this value is [code]1[/code], then "
"the animation plays at normal speed. If it's [code]0.5[/code], then it plays "
"at half speed. If it's [code]2[/code], then it plays at double speed.\n"
"If set to a negative value, the animation is played in reverse. If set to "
"[code]0[/code], the animation will not advance."
msgstr ""
"Коэффициент масштабирования скорости. Например, если это значение равно "
"[code]1[/code], то анимация воспроизводится с нормальной скоростью. Если это "
"[code]0.5[/code], то она воспроизводится с половинной скоростью. Если это "
"[code]2[/code], то она воспроизводится с двойной скоростью.\n"
"Если установлено отрицательное значение, анимация воспроизводится в обратном "
"направлении. Если установлено значение [code]0[/code], анимация не будет "
"продвигаться."

msgid ""
"The [SpriteFrames] resource containing the animation(s). Allows you the "
"option to load, edit, clear, make unique and save the states of the "
"[SpriteFrames] resource."
msgstr ""
"Ресурс [SpriteFrames], содержащий анимацию(и). Позволяет загружать, "
"редактировать, очищать, делать уникальными и сохранять состояния ресурса "
"[SpriteFrames]."

msgid "Emitted when [member animation] changes."
msgstr "Вызывается при изменении [member animation]."

msgid ""
"Emitted when the animation reaches the end, or the start if it is played in "
"reverse. When the animation finishes, it pauses the playback.\n"
"[b]Note:[/b] This signal is not emitted if an animation is looping."
msgstr ""
"Выдается, когда анимация достигает конца или начала, если она воспроизводится "
"в обратном порядке. Когда анимация заканчивается, воспроизведение "
"приостанавливается.\n"
"[b]Примечание:[/b] Этот сигнал не выдается, если анимация зациклена."

msgid "Emitted when the animation loops."
msgstr "Вызывается при зацикливании анимации."

msgid "Emitted when [member frame] changes."
msgstr "Выдается при изменении [member frame]."

msgid "Emitted when [member sprite_frames] changes."
msgstr "Вызывается при изменении [member sprite_frames]."

msgid ""
"2D sprite node in 3D world, that can use multiple 2D textures for animation."
msgstr ""
"Узел 2D спрайта в 3D мире, который может использовать несколько 2D текстур "
"для анимации."

msgid ""
"[AnimatedSprite3D] is similar to the [Sprite3D] node, except it carries "
"multiple textures as animation [member sprite_frames]. Animations are created "
"using a [SpriteFrames] resource, which allows you to import image files (or a "
"folder containing said files) to provide the animation frames for the sprite. "
"The [SpriteFrames] resource can be configured in the editor via the "
"SpriteFrames bottom panel."
msgstr ""
"[AnimatedSprite3D] похож на узел [Sprite3D], за исключением того, что он "
"содержит несколько текстур в качестве анимации [member sprite_frames]. "
"Анимации создаются с использованием ресурса [SpriteFrames], который позволяет "
"импортировать файлы изображений (или папку, содержащую указанные файлы) для "
"предоставления кадров анимации для спрайта. Ресурс [SpriteFrames] можно "
"настроить в редакторе через нижнюю панель SpriteFrames."

msgid "2D Sprite animation (also applies to 3D)"
msgstr "Анимация 2D-спрайта (также применимо к 3D)"

msgid ""
"This class does not work properly in current versions and may be removed in "
"the future. There is currently no equivalent workaround."
msgstr ""
"Этот класс не работает должным образом в текущих версиях и может быть удален "
"в будущем. В настоящее время нет эквивалентного обходного пути."

msgid "Proxy texture for simple frame-based animations."
msgstr "Прокси-текстура для простых покадровых анимаций."

msgid ""
"[AnimatedTexture] is a resource format for frame-based animations, where "
"multiple textures can be chained automatically with a predefined delay for "
"each frame. Unlike [AnimationPlayer] or [AnimatedSprite2D], it isn't a "
"[Node], but has the advantage of being usable anywhere a [Texture2D] resource "
"can be used, e.g. in a [TileSet].\n"
"The playback of the animation is controlled by the [member speed_scale] "
"property, as well as each frame's duration (see [method set_frame_duration]). "
"The animation loops, i.e. it will restart at frame 0 automatically after "
"playing the last frame.\n"
"[AnimatedTexture] currently requires all frame textures to have the same "
"size, otherwise the bigger ones will be cropped to match the smallest one.\n"
"[b]Note:[/b] AnimatedTexture doesn't support using [AtlasTexture]s. Each "
"frame needs to be a separate [Texture2D].\n"
"[b]Warning:[/b] The current implementation is not efficient for the modern "
"renderers."
msgstr ""
"[AnimatedTexture] — это формат ресурса для покадровых анимаций, где несколько "
"текстур могут быть автоматически сцеплены с предопределенной задержкой для "
"каждого кадра. В отличие от [AnimationPlayer] или [AnimatedSprite2D], не "
"является [Node], и имеет преимущество в том, что может быть использован "
"везде, где может быть использован ресурс [Texture2D], например в [TileSet].\n"
"Воспроизведение анимации контролируется свойством [member speed_scale], а "
"также опциональной задержкой каждого кадра (см. [method set_frame_duration]). "
"Анимация зациклена, т.е. после проигрывания последнего кадра она "
"автоматически перезапускается на 0 кадр.\n"
"В настоящее время [AnimatedTexture] требует, чтобы все текстуры кадров имели "
"одинаковый размер, в противном случае более крупные будут обрезаны в "
"соответствии с наименьшим кадром.\n"
"[b]Примечание:[/b] [AnimatedTexture] не поддерживает [AtlasTexture]. Каждый "
"кадр должен быть отдельным [Texture2D].\n"
"[b]Предупреждение:[/b] Текущая реализация для современных методов отрисовки "
"неэффективна."

msgid "Returns the given [param frame]'s duration, in seconds."
msgstr "Возвращает длительность указанного [param frame] в секундах."

msgid "Returns the given frame's [Texture2D]."
msgstr "Возвращает [Texture2D] указанного кадра."

msgid ""
"Sets the duration of any given [param frame]. The final duration is affected "
"by the [member speed_scale]. If set to [code]0[/code], the frame is skipped "
"during playback."
msgstr ""
"Устанавливает длительность любого заданного [param frame]. Окончательная "
"длительность зависит от [member speed_scale]. Если установлено значение "
"[code]0[/code], кадр пропускается во время воспроизведения."

msgid ""
"Assigns a [Texture2D] to the given frame. Frame IDs start at 0, so the first "
"frame has ID 0, and the last frame of the animation has ID [member frames] - "
"1.\n"
"You can define any number of textures up to [constant MAX_FRAMES], but keep "
"in mind that only frames from 0 to [member frames] - 1 will be part of the "
"animation."
msgstr ""
"Назначает [Texture2D] данному кадру. Идентификаторы кадров начинаются с 0, "
"поэтому первый кадр имеет идентификатор 0, а последний кадр анимации имеет "
"идентификатор [member frames] - 1.\n"
"Вы можете определить любое количество текстур вплоть до [constant "
"MAX_FRAMES], но имейте в виду, что только кадры от 0 до [member frames] - 1 "
"будут частью анимации."

msgid ""
"Sets the currently visible frame of the texture. Setting this frame while "
"playing resets the current frame time, so the newly selected frame plays for "
"its whole configured frame duration."
msgstr ""
"Устанавливает текущий видимый кадр текстуры. Установка этого кадра во время "
"воспроизведения сбрасывает текущее время кадра, поэтому вновь выбранный кадр "
"воспроизводится в течение всей настроенной длительности кадра."

msgid ""
"Number of frames to use in the animation. While you can create the frames "
"independently with [method set_frame_texture], you need to set this value for "
"the animation to take new frames into account. The maximum number of frames "
"is [constant MAX_FRAMES]."
msgstr ""
"Количество кадров, используемых в анимации. Хотя кадры можно создавать "
"самостоятельно с помощью [method set_frame_texture], необходимо установить "
"это значение, чтобы анимация учитывала новые кадры. Максимальное количество "
"кадров - [constant MAX_FRAMES]."

msgid ""
"If [code]true[/code], the animation will only play once and will not loop "
"back to the first frame after reaching the end. Note that reaching the end "
"will not set [member pause] to [code]true[/code]."
msgstr ""
"Если [code]true[/code], анимация будет воспроизводиться только один раз и не "
"будет возвращаться к первому кадру после достижения конца. Обратите внимание, "
"что достижение конца не установит [member pause] в [code]true[/code]."

msgid ""
"If [code]true[/code], the animation will pause where it currently is (i.e. at "
"[member current_frame]). The animation will continue from where it was paused "
"when changing this property to [code]false[/code]."
msgstr ""
"Если [code]true[/code], анимация приостанавливается там, где она находится в "
"данный момент (т.е. на [member current_frame]). При изменении этого свойства "
"на [code]false[/code] анимация продолжится с того места, где она была "
"приостановлена."

msgid ""
"The animation speed is multiplied by this value. If set to a negative value, "
"the animation is played in reverse."
msgstr ""
"Скорость анимации умножается на это значение. Если задано отрицательное "
"значение, анимация воспроизводится в обратном порядке."

msgid ""
"The maximum number of frames supported by [AnimatedTexture]. If you need more "
"frames in your animation, use [AnimationPlayer] or [AnimatedSprite2D]."
msgstr ""
"Максимальное количество кадров, поддерживаемое [AnimatedTexture]. Если вам "
"нужно больше кадров в анимации, используйте [AnimationPlayer] или "
"[AnimatedSprite2D]."

msgid "Holds data that can be used to animate anything in the engine."
msgstr ""
"Содержит данные, которые можно использовать для анимации чего угодно в движке."

msgid ""
"This resource holds data that can be used to animate anything in the engine. "
"Animations are divided into tracks and each track must be linked to a node. "
"The state of that node can be changed through time, by adding timed keys "
"(events) to the track.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
"# 100 pixels in 2.0 seconds.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 2.0, 100)\n"
"animation.length = 2.0\n"
"[/gdscript]\n"
"[csharp]\n"
"// This creates an animation that makes the node \"Enemy\" move to the right "
"by\n"
"// 100 pixels in 2.0 seconds.\n"
"var animation = new Animation();\n"
"int trackIndex = animation.AddTrack(Animation.TrackType.Value);\n"
"animation.TrackSetPath(trackIndex, \"Enemy:position:x\");\n"
"animation.TrackInsertKey(trackIndex, 0.0f, 0);\n"
"animation.TrackInsertKey(trackIndex, 2.0f, 100);\n"
"animation.Length = 2.0f;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Animations are just data containers, and must be added to nodes such as an "
"[AnimationPlayer] to be played back. Animation tracks have different types, "
"each with its own set of dedicated methods. Check [enum TrackType] to see "
"available types.\n"
"[b]Note:[/b] For 3D position/rotation/scale, using the dedicated [constant "
"TYPE_POSITION_3D], [constant TYPE_ROTATION_3D] and [constant TYPE_SCALE_3D] "
"track types instead of [constant TYPE_VALUE] is recommended for performance "
"reasons."
msgstr ""
"Этот ресурс содержит данные, которые можно использовать для анимации чего "
"угодно в движке. Анимации делятся на треки, и каждый трек должен быть связан "
"с узлом. Состояние этого узла можно изменять с течением времени, добавляя к "
"треку временные ключи (события).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Это создает анимацию, которая заставляет узел «Enemy» двигаться вправо\n"
"# 100 пикселей за 2,0 секунды.\n"
"var animation = Animation.new()\n"
"var track_index = animation.add_track(Animation.TYPE_VALUE)\n"
"animation.track_set_path(track_index, \"Enemy:position:x\")\n"
"animation.track_insert_key(track_index, 0.0, 0)\n"
"animation.track_insert_key(track_index, 2.0, 100)\n"
"animation.length = 2.0\n"
"[/gdscript]\n"
"[csharp]\n"
"// Это создает анимацию, которая заставляет узел «Enemy» двигаться вправо\n"
"// 100 пикселей за 2,0 секунды.\n"
"var animation = new Animation();\n"
"int trackIndex = animation.AddTrack(Animation.TrackType.Value);\n"
"animation.TrackSetPath(trackIndex, \"Enemy:position:x\");\n"
"animation.TrackInsertKey(trackIndex, 0.0f, 0);\n"
"animation.TrackInsertKey(trackIndex, 2.0f, 100);\n"
"animation.Length = 2.0f;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Анимации — это всего лишь контейнеры данных, и их необходимо добавлять к "
"узлам, таким как [AnimationPlayer], чтобы воспроизводить их. Треки анимации "
"имеют разные типы, каждый со своим собственным набором выделенных методов. "
"Проверьте [enum TrackType], чтобы увидеть доступные типы.\n"
"[b]Примечание:[/b] Для 3D-положения/вращения/масштаба рекомендуется "
"использовать выделенные типы дорожек [constant TYPE_POSITION_3D], [constant "
"TYPE_ROTATION_3D] и [constant TYPE_SCALE_3D] вместо [constant TYPE_VALUE] из "
"соображений производительности."

msgid "Animation documentation index"
msgstr "Индекс документации по анимации"

msgid "Adds a marker to this Animation."
msgstr "Добавляет маркер к этой анимации."

msgid "Adds a track to the Animation."
msgstr "Добавляет дорожку в анимацию."

msgid ""
"Returns the animation name at the key identified by [param key_idx]. The "
"[param track_idx] must be the index of an Animation Track."
msgstr ""
"Возвращает имя анимации по ключу, идентифицированному [param key_idx]. [param "
"track_idx] должен быть индексом дорожки анимации."

msgid ""
"Inserts a key with value [param animation] at the given [param time] (in "
"seconds). The [param track_idx] must be the index of an Animation Track."
msgstr ""
"Вставляет ключ со значением [param animation] в указанное [param time] (в "
"секундах). [param track_idx] должен быть индексом анимационной дорожки."

msgid ""
"Sets the key identified by [param key_idx] to value [param animation]. The "
"[param track_idx] must be the index of an Animation Track."
msgstr ""
"Устанавливает ключ, идентифицированный [param key_idx], в значение [param "
"animation]. [param track_idx] должен быть индексом анимационной дорожки."

msgid ""
"Returns the end offset of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of an Audio Track.\n"
"End offset is the number of seconds cut off at the ending of the audio stream."
msgstr ""
"Возвращает конечное смещение ключа, идентифицированного [param key_idx]. "
"[param track_idx] должен быть индексом аудиодорожки.\n"
"Конечное смещение — это количество секунд, обрезанных в конце аудиопотока."

msgid ""
"Returns the start offset of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of an Audio Track.\n"
"Start offset is the number of seconds cut off at the beginning of the audio "
"stream."
msgstr ""
"Возвращает начальное смещение ключа, идентифицированного [param key_idx]. "
"[param track_idx] должен быть индексом аудиодорожки.\n"
"Начальное смещение — это количество секунд, отрезанных в начале аудиопотока."

msgid ""
"Returns the audio stream of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of an Audio Track."
msgstr ""
"Возвращает аудиопоток ключа, идентифицированного [param key_idx]. [param "
"track_idx] должен быть индексом аудиодорожки."

msgid ""
"Inserts an Audio Track key at the given [param time] in seconds. The [param "
"track_idx] must be the index of an Audio Track.\n"
"[param stream] is the [AudioStream] resource to play. [param start_offset] is "
"the number of seconds cut off at the beginning of the audio stream, while "
"[param end_offset] is at the ending."
msgstr ""
"Вставляет ключ аудиодорожки в указанное [param time] в секундах. [param "
"track_idx] должен быть индексом аудиодорожки.\n"
"[param stream] — ресурс [AudioStream] для воспроизведения. [param "
"start_offset] — количество секунд, обрезанных в начале аудиопотока, а [param "
"end_offset] — в конце."

msgid ""
"Returns [code]true[/code] if the track at [param track_idx] will be blended "
"with other animations."
msgstr ""
"Возвращает [code]true[/code], если трек в [param track_idx] будет смешан с "
"другими анимациями."

msgid ""
"Sets the end offset of the key identified by [param key_idx] to value [param "
"offset]. The [param track_idx] must be the index of an Audio Track."
msgstr ""
"Устанавливает конечное смещение ключа, идентифицированного [param key_idx], "
"на значение [param offset]. [param track_idx] должен быть индексом "
"аудиодорожки."

msgid ""
"Sets the start offset of the key identified by [param key_idx] to value "
"[param offset]. The [param track_idx] must be the index of an Audio Track."
msgstr ""
"Устанавливает начальное смещение ключа, идентифицированного [param key_idx], "
"на значение [param offset]. [param track_idx] должен быть индексом "
"аудиодорожки."

msgid ""
"Sets the stream of the key identified by [param key_idx] to value [param "
"stream]. The [param track_idx] must be the index of an Audio Track."
msgstr ""
"Устанавливает поток ключа, идентифицированного [param key_idx], на значение "
"[param stream]. [param track_idx] должен быть индексом аудиодорожки."

msgid ""
"Sets whether the track will be blended with other animations. If [code]true[/"
"code], the audio playback volume changes depending on the blend value."
msgstr ""
"Устанавливает, будет ли трек смешиваться с другими анимациями. Если "
"[code]true[/code], громкость воспроизведения звука меняется в зависимости от "
"значения смешивания."

msgid ""
"Returns the in handle of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of a Bezier Track."
msgstr ""
"Возвращает дескриптор ключа, идентифицированного [param key_idx]. [param "
"track_idx] должен быть индексом дорожки Безье."

msgid ""
"Returns the out handle of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of a Bezier Track."
msgstr ""
"Возвращает выходной дескриптор ключа, идентифицированного [param key_idx]. "
"[param track_idx] должен быть индексом дорожки Безье."

msgid ""
"Returns the value of the key identified by [param key_idx]. The [param "
"track_idx] must be the index of a Bezier Track."
msgstr ""
"Возвращает значение ключа, идентифицированного [param key_idx]. [param "
"track_idx] должен быть индексом дорожки Безье."

msgid ""
"Inserts a Bezier Track key at the given [param time] in seconds. The [param "
"track_idx] must be the index of a Bezier Track.\n"
"[param in_handle] is the left-side weight of the added Bezier curve point, "
"[param out_handle] is the right-side one, while [param value] is the actual "
"value at this point."
msgstr ""
"Вставляет ключ дорожки Безье в указанное [param time] в секундах. [param "
"track_idx] должен быть индексом дорожки Безье.\n"
"[param in_handle] — вес левой стороны добавленной точки кривой Безье, [param "
"out_handle] — вес правой стороны, а [param value] — фактическое значение в "
"этой точке."

msgid ""
"Returns the interpolated value at the given [param time] (in seconds). The "
"[param track_idx] must be the index of a Bezier Track."
msgstr ""
"Возвращает интерполированное значение в указанном [param time] (в секундах). "
"[param track_idx] должен быть индексом дорожки Безье."

msgid ""
"Sets the in handle of the key identified by [param key_idx] to value [param "
"in_handle]. The [param track_idx] must be the index of a Bezier Track."
msgstr ""
"Устанавливает входной дескриптор ключа, идентифицированного [param key_idx], "
"на значение [param in_handle]. [param track_idx] должен быть индексом дорожки "
"Безье."

msgid ""
"Sets the out handle of the key identified by [param key_idx] to value [param "
"out_handle]. The [param track_idx] must be the index of a Bezier Track."
msgstr ""
"Устанавливает выходной дескриптор ключа, идентифицированного [param key_idx], "
"на значение [param out_handle]. [param track_idx] должен быть индексом "
"дорожки Безье."

msgid ""
"Sets the value of the key identified by [param key_idx] to the given value. "
"The [param track_idx] must be the index of a Bezier Track."
msgstr ""
"Устанавливает значение ключа, идентифицированного [param key_idx], на "
"заданное значение. [param track_idx] должен быть индексом дорожки Безье."

msgid "Inserts a key in a given blend shape track. Returns the key index."
msgstr "Вставляет ключ в заданную дорожку blend shape. Возвращает индекс ключа."

msgid ""
"Returns the interpolated blend shape value at the given time (in seconds). "
"The [param track_idx] must be the index of a blend shape track."
msgstr ""
"Возвращает интерполированное значение формы смешивания в указанное время (в "
"секундах). [param track_idx] должен быть индексом трека формы смешивания."

msgid "Clear the animation (clear all tracks and reset all)."
msgstr "Очистить анимацию (удалить все дорожки и сбросить всё)."

msgid ""
"Compress the animation and all its tracks in-place. This will make [method "
"track_is_compressed] return [code]true[/code] once called on this "
"[Animation]. Compressed tracks require less memory to be played, and are "
"designed to be used for complex 3D animations (such as cutscenes) imported "
"from external 3D software. Compression is lossy, but the difference is "
"usually not noticeable in real world conditions.\n"
"[b]Note:[/b] Compressed tracks have various limitations (such as not being "
"editable from the editor), so only use compressed animations if you actually "
"need them."
msgstr ""
"Сжать анимацию и все ее дорожки на месте. Это заставит [method "
"track_is_compressed] возвращать [code]true[/code] после вызова этой "
"[Animation]. Сжатые дорожки требуют меньше памяти для воспроизведения и "
"предназначены для использования в сложных 3D-анимациях (например, катсценах), "
"импортированных из внешнего 3D-программного обеспечения. Сжатие происходит с "
"потерями, но разница обычно не заметна в реальных условиях.\n"
"[b]Примечание:[/b] Сжатые дорожки имеют различные ограничения (например, "
"невозможность редактирования в редакторе), поэтому используйте сжатые "
"анимации только в том случае, если они вам действительно нужны."

msgid ""
"Adds a new track to [param to_animation] that is a copy of the given track "
"from this animation."
msgstr ""
"Добавляет новый трек в [param to_animation], который является копией "
"указанного трека из этой анимации."

msgid ""
"Returns the index of the specified track. If the track is not found, return "
"-1."
msgstr ""
"Возвращает индекс указанной дорожки. Если дорожка не найдена, возвращает -1."

msgid "Returns the name of the marker located at the given time."
msgstr "Возвращает имя маркера, расположенного в указанное время."

msgid "Returns the given marker's color."
msgstr "Возвращает цвет указанного маркера."

msgid "Returns every marker in this Animation, sorted ascending by time."
msgstr ""
"Возвращает все маркеры в этой анимации, отсортированные по возрастанию "
"времени."

msgid "Returns the given marker's time."
msgstr "Возвращает время указанного маркера."

msgid ""
"Returns the closest marker that comes after the given time. If no such marker "
"exists, an empty string is returned."
msgstr ""
"Возвращает ближайший маркер, который следует после указанного времени. Если "
"такого маркера не существует, возвращается пустая строка."

msgid ""
"Returns the closest marker that comes before the given time. If no such "
"marker exists, an empty string is returned."
msgstr ""
"Возвращает ближайший маркер, который предшествует указанному времени. Если "
"такого маркера не существует, возвращается пустая строка."

msgid "Returns the amount of tracks in the animation."
msgstr "Возвращает количество дорожек в анимации."

msgid ""
"Returns [code]true[/code] if this Animation contains a marker with the given "
"name."
msgstr ""
"Возвращает [code]true[/code], если эта анимация содержит маркер с указанным "
"именем."

msgid "Returns the method name of a method track."
msgstr "Возвращает имя метода для дорожки методов."

msgid ""
"Returns the arguments values to be called on a method track for a given key "
"in a given track."
msgstr ""
"Возвращает значения аргументов, которые необходимо вызвать в дорожке метода "
"для заданного ключа в заданной дорожке."

msgid ""
"Optimize the animation and all its tracks in-place. This will preserve only "
"as many keys as are necessary to keep the animation within the specified "
"bounds."
msgstr ""
"Оптимизируйте анимацию и все ее дорожки на месте. Это сохранит только столько "
"ключей, сколько необходимо для удержания анимации в указанных границах."

msgid "Inserts a key in a given 3D position track. Returns the key index."
msgstr "Вставляет ключ в заданную 3D-трек позиции. Возвращает индекс ключа."

msgid ""
"Returns the interpolated position value at the given time (in seconds). The "
"[param track_idx] must be the index of a 3D position track."
msgstr ""
"Возвращает интерполированное значение позиции в указанное время (в секундах). "
"[param track_idx] должен быть индексом 3D-трека позиции."

msgid "Removes the marker with the given name from this Animation."
msgstr "Удаляет маркер с указанным именем из этой анимации."

msgid "Removes a track by specifying the track index."
msgstr "Удаляет дорожку, указав индекс дорожки."

msgid "Inserts a key in a given 3D rotation track. Returns the key index."
msgstr "Вставляет ключ в заданную 3D-дорожку вращения. Возвращает индекс ключа."

msgid ""
"Returns the interpolated rotation value at the given time (in seconds). The "
"[param track_idx] must be the index of a 3D rotation track."
msgstr ""
"Возвращает интерполированное значение вращения в указанное время (в "
"секундах). [param track_idx] должен быть индексом 3D-трека вращения."

msgid "Inserts a key in a given 3D scale track. Returns the key index."
msgstr "Вставляет ключ в заданную 3D-шкалу трека. Возвращает индекс ключа."

msgid ""
"Returns the interpolated scale value at the given time (in seconds). The "
"[param track_idx] must be the index of a 3D scale track."
msgstr ""
"Возвращает интерполированное значение масштаба в указанное время (в "
"секундах). [param track_idx] должен быть индексом 3D-масштабной дорожки."

msgid "Sets the given marker's color."
msgstr "Устанавливает цвет указанного маркера."

msgid ""
"Finds the key index by time in a given track. Optionally, only find it if the "
"approx/exact time is given.\n"
"If [param limit] is [code]true[/code], it does not return keys outside the "
"animation range.\n"
"If [param backward] is [code]true[/code], the direction is reversed in "
"methods that rely on one directional processing.\n"
"For example, in case [param find_mode] is [constant FIND_MODE_NEAREST], if "
"there is no key in the current position just after seeked, the first key "
"found is retrieved by searching before the position, but if [param backward] "
"is [code]true[/code], the first key found is retrieved after the position."
msgstr ""
"Находит индекс ключа по времени в заданном треке. При желании находит его "
"только в том случае, если указано приблизительное/точное время.\n"
"Если [param limit] равно [code]true[/code], он не возвращает ключи за "
"пределами диапазона анимации.\n"
"Если [param backward] равно [code]true[/code], направление меняется на "
"противоположное в методах, которые полагаются на однонаправленную обработку.\n"
"Например, в случае, если [param find_mode] равно [constant "
"FIND_MODE_NEAREST], если в текущей позиции сразу после искомого нет ключа, "
"первый найденный ключ извлекается путем поиска перед позицией, но если [param "
"backward] равно [code]true[/code], первый найденный ключ извлекается после "
"позиции."

msgid ""
"Returns [code]true[/code] if the track at [param track_idx] wraps the "
"interpolation loop. New tracks wrap the interpolation loop by default."
msgstr ""
"Возвращает [code]true[/code], если дорожка в [param track_idx] оборачивает "
"цикл интерполяции. Новые дорожки оборачивают цикл интерполяции по умолчанию."

msgid "Returns the interpolation type of a given track."
msgstr "Возвращает тип интерполяции данной дорожки."

msgid "Returns the number of keys in a given track."
msgstr "Возвращает количество ключей в заданной дорожке."

msgid "Returns the time at which the key is located."
msgstr "Возвращает время, в котором расположен ключ."

msgid ""
"Returns the transition curve (easing) for a specific key (see the built-in "
"math function [method @GlobalScope.ease])."
msgstr ""
"Возвращает кривую перехода (плавность) для определенной клавиши (см. "
"встроенную математическую функцию [method @GlobalScope.ease])."

msgid "Returns the value of a given key in a given track."
msgstr "Возвращает значение заданной клавиши в заданной дорожке."

msgid ""
"Gets the path of a track. For more information on the path format, see "
"[method track_set_path]."
msgstr ""
"Получает путь к дорожке. Для получения дополнительной информации о формате "
"пути см. [ метод track_set_path]."

msgid "Gets the type of a track."
msgstr "Получает тип дорожки."

msgid "Inserts a generic key in a given track. Returns the key index."
msgstr "Вставляет общий ключ в указанный трек. Возвращает индекс ключа."

msgid ""
"Returns [code]true[/code] if the track is compressed, [code]false[/code] "
"otherwise. See also [method compress]."
msgstr ""
"Возвращает [code]true[/code], если трек сжат, [code]false[/code] в противном "
"случае. См. также [method compress]."

msgid ""
"Returns [code]true[/code] if the track at index [param track_idx] is enabled."
msgstr ""
"Возвращает [code]true[/code], если трек с индексом [param track_idx] включен."

msgid ""
"Returns [code]true[/code] if the given track is imported. Else, return "
"[code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если указанная дорожка импортирована. В "
"противном случае возвращает [code]false[/code]."

msgid "Moves a track down."
msgstr "Перемещает дорожку вниз."

msgid ""
"Changes the index position of track [param track_idx] to the one defined in "
"[param to_idx]."
msgstr ""
"Изменяет индексную позицию дорожки [param track_idx] на ту, которая "
"определена в [param to_idx]."

msgid "Moves a track up."
msgstr "Перемещает дорожку вверх."

msgid "Removes a key by index in a given track."
msgstr "Удаляет ключ по индексу из данной дорожки."

msgid "Removes a key at [param time] in a given track."
msgstr "Удаляет ключ в [param time] в указанном треке."

msgid "Enables/disables the given track. Tracks are enabled by default."
msgstr "Включает/отключает данную дорожку. По умолчанию дорожки включены."

msgid "Sets the given track as imported or not."
msgstr "Устанавливает, импортирован ли данная дорожка."

msgid ""
"If [code]true[/code], the track at [param track_idx] wraps the interpolation "
"loop."
msgstr ""
"Если [code]true[/code], дорожка с [param track_idx] завершает цикл "
"интерполяции."

msgid "Sets the interpolation type of a given track."
msgstr "Устанавливает тип интерполяции заданного трека."

msgid "Sets the time of an existing key."
msgstr "Устанавливает время существующего ключа."

msgid ""
"Sets the transition curve (easing) for a specific key (see the built-in math "
"function [method @GlobalScope.ease])."
msgstr ""
"Устанавливает кривую перехода (плавность) для определенной клавиши (см. "
"встроенную математическую функцию [method @GlobalScope.ease])."

msgid "Sets the value of an existing key."
msgstr "Устанавливает значение существующего ключа."

msgid ""
"Sets the path of a track. Paths must be valid scene-tree paths to a node and "
"must be specified starting from the [member AnimationMixer.root_node] that "
"will reproduce the animation. Tracks that control properties or bones must "
"append their name after the path, separated by [code]\":\"[/code].\n"
"For example, [code]\"character/skeleton:ankle\"[/code] or [code]\"character/"
"mesh:transform/local\"[/code]."
msgstr ""
"Устанавливает путь дорожки. Пути должны быть допустимыми путями дерева сцены "
"к узлу и должны быть указаны, начиная с [member AnimationMixer.root_node], "
"который будет воспроизводить анимацию. Дорожки, которые управляют свойствами "
"или костями, должны добавлять свое имя после пути, разделенного [code]\":\"[/"
"code]. \n"
"Например, [code]\"character/skeleton:ankle\"[/code] или [code]\"character/"
"mesh:transform/local\"[/code]."

msgid ""
"Swaps the track [param track_idx]'s index position with the track [param "
"with_idx]."
msgstr ""
"Меняет индексную позицию дорожки [param track_idx] на дорожку [param "
"with_idx]."

msgid "Returns the update mode of a value track."
msgstr "Возвращает режим обновления дорожки значений."

msgid ""
"Returns the interpolated value at the given time (in seconds). The [param "
"track_idx] must be the index of a value track.\n"
"A [param backward] mainly affects the direction of key retrieval of the track "
"with [constant UPDATE_DISCRETE] converted by [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_DISCRETE_FORCE_CONTINUOUS] to match "
"the result with [method track_find_key]."
msgstr ""
"Возвращает интерполированное значение в указанное время (в секундах). [param "
"track_idx] должен быть индексом значения track.\n"
"[param backward] в основном влияет на направление извлечения ключа track с "
"[constant UPDATE_DISCRETE], преобразованным [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_DISCRETE_FORCE_CONTINUOUS] для "
"соответствия результату с [method track_find_key]."

msgid "Sets the update mode of a value track."
msgstr "Устанавливает режим обновления дорожки значений."

msgid ""
"Returns [code]true[/code] if the capture track is included. This is a cached "
"readonly value for performance."
msgstr ""
"Возвращает [code]true[/code], если трек захвата включен. Это кэшированное "
"значение только для чтения для производительности."

msgid ""
"The total length of the animation (in seconds).\n"
"[b]Note:[/b] Length is not delimited by the last key, as this one may be "
"before or after the end to ensure correct interpolation and looping."
msgstr ""
"Общая длина анимации (в секундах).\n"
"[b]Замечание:[/b] Длина не ограничена последним ключом, так как он может "
"находиться до или после конца для обеспечения корректной интерполяции и "
"зацикливания."

msgid ""
"Determines the behavior of both ends of the animation timeline during "
"animation playback. This indicates whether and how the animation should be "
"restarted, and is also used to correctly interpolate animation cycles."
msgstr ""
"Определяет поведение обоих концов временной шкалы анимации во время её "
"воспроизведения. Это указывает, следует ли перезапускать анимацию и как это "
"сделать, а также используется для корректной интерполяции циклов анимации."

msgid "The animation step value."
msgstr "Значение шага анимации."

msgid ""
"Value tracks set values in node properties, but only those which can be "
"interpolated. For 3D position/rotation/scale, using the dedicated [constant "
"TYPE_POSITION_3D], [constant TYPE_ROTATION_3D] and [constant TYPE_SCALE_3D] "
"track types instead of [constant TYPE_VALUE] is recommended for performance "
"reasons."
msgstr ""
"Значение отслеживает заданные значения в свойствах узла, но только те, "
"которые можно интерполировать. Для 3D-позиции/вращения/масштаба рекомендуется "
"использовать выделенных дорожек треков [constant TYPE_POSITION_3D], [constant "
"TYPE_ROTATION_3D] и [constant TYPE_SCALE_3D] вместо [constant TYPE_VALUE] по "
"соображениям производительности."

msgid "3D position track (values are stored in [Vector3]s)."
msgstr "Трехмерная дорожка положения (значения хранятся в [Vector3])."

msgid "3D rotation track (values are stored in [Quaternion]s)."
msgstr "Трехмерная дорожка вращения (значения хранятся в [Quaternion]s)."

msgid "3D scale track (values are stored in [Vector3]s)."
msgstr "Дорожка 3D-масштаба (значения хранятся в [Vector3])."

msgid "Blend shape track."
msgstr "Орбита смешанной формы."

msgid "Method tracks call functions with given arguments per key."
msgstr ""
"Метод отслеживает вызовы функций с заданными аргументами для каждого ключа."

msgid ""
"Bezier tracks are used to interpolate a value using custom curves. They can "
"also be used to animate sub-properties of vectors and colors (e.g. alpha "
"value of a [Color])."
msgstr ""
"Дорожки Безье используются для интерполяции значения с использованием "
"пользовательских кривых. Их также можно использовать для анимации подсвойств "
"векторов и цветов (например, альфа-значение [Color])."

msgid ""
"Audio tracks are used to play an audio stream with either type of "
"[AudioStreamPlayer]. The stream can be trimmed and previewed in the animation."
msgstr ""
"Аудиодорожки используются для воспроизведения аудиопотока с любым типом "
"[AudioStreamPlayer]. Поток можно обрезать и предварительно просмотреть в "
"анимации."

msgid "Animation tracks play animations in other [AnimationPlayer] nodes."
msgstr ""
"Анимационные дорожки воспроизводят анимацию в других узлах [AnimationPlayer]."

msgid "No interpolation (nearest value)."
msgstr "Без интерполяции (ближайшее значение)."

msgid "Linear interpolation."
msgstr "Линейная интерполяция."

msgid ""
"Cubic interpolation. This looks smoother than linear interpolation, but is "
"more expensive to interpolate. Stick to [constant INTERPOLATION_LINEAR] for "
"complex 3D animations imported from external software, even if it requires "
"using a higher animation framerate in return."
msgstr ""
"Кубическая интерполяция. Выглядит более гладко, чем линейная интерполяция, но "
"интерполяция более затратна. Придерживайтесь [constant INTERPOLATION_LINEAR] "
"для сложных 3D-анимаций, импортированных из внешнего программного "
"обеспечения, даже если это требует использования более высокой частоты кадров "
"анимации взамен."

msgid ""
"Linear interpolation with shortest path rotation.\n"
"[b]Note:[/b] The result value is always normalized and may not match the key "
"value."
msgstr ""
"Линейная интерполяция с вращением по кратчайшему пути.\n"
"[b]Примечание:[/b] Значение результата всегда нормализовано и может не "
"совпадать со значением ключа."

msgid ""
"Cubic interpolation with shortest path rotation.\n"
"[b]Note:[/b] The result value is always normalized and may not match the key "
"value."
msgstr ""
"Кубическая интерполяция с вращением по кратчайшему пути.\n"
"[b]Примечание:[/b] Значение результата всегда нормализовано и может не "
"совпадать со значением ключа."

msgid "Update between keyframes and hold the value."
msgstr "Обновляйте между ключевыми кадрами и сохраняйте значение."

msgid "Update at the keyframes."
msgstr "Обновление на ключевых кадрах."

msgid ""
"Same as [constant UPDATE_CONTINUOUS] but works as a flag to capture the value "
"of the current object and perform interpolation in some methods. See also "
"[method AnimationMixer.capture], [member "
"AnimationPlayer.playback_auto_capture], and [method "
"AnimationPlayer.play_with_capture]."
msgstr ""
"То же, что и [constant UPDATE_CONTINUOUS], но работает как флаг для захвата "
"значения текущего объекта и выполнения интерполяции в некоторых методах. См. "
"также [method AnimationMixer.capture], [member "
"AnimationPlayer.playback_auto_capture] и [method "
"AnimationPlayer.play_with_capture]."

msgid "At both ends of the animation, the animation will stop playing."
msgstr "В обоих случаях воспроизведение анимации остановится."

msgid ""
"At both ends of the animation, the animation will be repeated without "
"changing the playback direction."
msgstr ""
"В обоих концах анимации она будет повторяться без изменения направления "
"воспроизведения."

msgid "Repeats playback and reverse playback at both ends of the animation."
msgstr ""
"Повторяет воспроизведение и обратное воспроизведение в обоих концах анимации."

msgid "This flag indicates that the animation proceeds without any looping."
msgstr "Этот флаг указывает, что анимация выполняется без зацикливания."

msgid ""
"This flag indicates that the animation has reached the end of the animation "
"and just after loop processed."
msgstr ""
"Этот флаг указывает на то, что анимация достигла конца и сразу после "
"обработки цикла."

msgid ""
"This flag indicates that the animation has reached the start of the animation "
"and just after loop processed."
msgstr ""
"Этот флаг указывает на то, что анимация достигла начала анимации и сразу "
"после обработки цикла."

msgid "Finds the nearest time key."
msgstr "Находит ближайший временной ключ."

msgid "Finds only the key with approximating the time."
msgstr "Находит только ключ с приблизительным временем."

msgid "Finds only the key with matching the time."
msgstr "Находит только ключ с соответствующим временем."

msgid "Container for [Animation] resources."
msgstr "Контейнер для ресурсов [Анимации]."

msgid ""
"An animation library stores a set of animations accessible through "
"[StringName] keys, for use with [AnimationPlayer] nodes."
msgstr ""
"Библиотека анимации хранит набор анимаций, доступных через ключи "
"[StringName], для использования с узлами [AnimationPlayer]."

msgid "Animation tutorial index"
msgstr "Каталог уроков по анимации"

msgid ""
"Adds the [param animation] to the library, accessible by the key [param name]."
msgstr ""
"Добавляет [param animation] в библиотеку, доступную по ключу [param name]."

msgid ""
"Returns the [Animation] with the key [param name]. If the animation does not "
"exist, [code]null[/code] is returned and an error is logged."
msgstr ""
"Возвращает [Animation] с ключом [param name]. Если анимация не существует, "
"возвращается [code]null[/code] и регистрируется ошибка."

msgid "Returns the keys for the [Animation]s stored in the library."
msgstr "Возвращает ключи для [Animation], хранящихся в библиотеке."

msgid "Returns the key count for the [Animation]s stored in the library."
msgstr "Возвращает количество ключей для [Animation], хранящихся в библиотеке."

msgid ""
"Returns [code]true[/code] if the library stores an [Animation] with [param "
"name] as the key."
msgstr ""
"Возвращает [code]true[/code], если библиотека хранит [Animation] с [param "
"name] в качестве ключа."

msgid "Removes the [Animation] with the key [param name]."
msgstr "Удаляет [Animation] с ключом [param name]."

msgid ""
"Changes the key of the [Animation] associated with the key [param name] to "
"[param newname]."
msgstr ""
"Изменяет ключ [Animation], связанный с ключом [param name], на [param "
"newname]."

msgid "Emitted when an [Animation] is added, under the key [param name]."
msgstr "Выдается при добавлении [Animation] под ключом [param name]."

msgid ""
"Emitted when there's a change in one of the animations, e.g. tracks are "
"added, moved or have changed paths. [param name] is the key of the animation "
"that was changed.\n"
"See also [signal Resource.changed], which this acts as a relay for."
msgstr ""
"Выдается при изменении одной из анимаций, например, при добавлении, "
"перемещении или изменении путей треков. [param name] — это ключ анимации, "
"которая была изменена.\n"
"См. также [signal Resource.changed], для которого он действует как реле."

msgid "Emitted when an [Animation] stored with the key [param name] is removed."
msgstr "Вызывается при удалении [Animation], сохраненной с ключом [param name]."

msgid ""
"Emitted when the key for an [Animation] is changed, from [param name] to "
"[param to_name]."
msgstr ""
"Вызывается при изменении ключа для [Animation] с [param name] на [param "
"to_name]."

msgid "Base class for [AnimationPlayer] and [AnimationTree]."
msgstr "Базовый класс для [AnimationPlayer] и [AnimationTree]."

msgid ""
"Base class for [AnimationPlayer] and [AnimationTree] to manage animation "
"lists. It also has general properties and methods for playback and blending.\n"
"After instantiating the playback information data within the extended class, "
"the blending is processed by the [AnimationMixer]."
msgstr ""
"Базовый класс для [AnimationPlayer] и [AnimationTree] для управления списками "
"анимации. Он также имеет общие свойства и методы для воспроизведения и "
"смешивания.\n"
"После создания экземпляра данных информации о воспроизведении в расширенном "
"классе, смешивание и обработка происходит в [AnimationMixer]."

msgid "Migrating Animations from Godot 4.0 to 4.3"
msgstr "Перенос анимации из Godot 4.0 в 4.3"

msgid "A virtual function for processing after getting a key during playback."
msgstr ""
"Виртуальная функция для обработки после получения ключа во время "
"воспроизведения."

msgid ""
"Adds [param library] to the animation player, under the key [param name].\n"
"AnimationMixer has a global library by default with an empty string as key. "
"For adding an animation to the global library:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var global_library = mixer.get_animation_library(\"\")\n"
"global_library.add_animation(\"animation_name\", animation_resource)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Добавляет [param library] в проигрыватель анимации под ключом [param name].\n"
"AnimationMixer имеет глобальную библиотеку по умолчанию с пустой строкой в "
"качестве ключа. Для добавления анимации в глобальную библиотеку:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var global_library = mixer.get_animation_library(\"\")\n"
"global_library.add_animation(\"animation_name\", animation_resource)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid "Manually advance the animations by the specified time (in seconds)."
msgstr "Вручную продвиньте анимацию на указанное время (в секундах)."

msgid ""
"If the animation track specified by [param name] has an option [constant "
"Animation.UPDATE_CAPTURE], stores current values of the objects indicated by "
"the track path as a cache. If there is already a captured cache, the old "
"cache is discarded.\n"
"After this it will interpolate with current animation blending result during "
"the playback process for the time specified by [param duration], working like "
"a crossfade.\n"
"You can specify [param trans_type] as the curve for the interpolation. For "
"better results, it may be appropriate to specify [constant "
"Tween.TRANS_LINEAR] for cases where the first key of the track begins with a "
"non-zero value or where the key value does not change, and [constant "
"Tween.TRANS_QUAD] for cases where the key value changes linearly."
msgstr ""
"Если анимационная дорожка, указанная [param name], имеет опцию [constant "
"Animation.UPDATE_CAPTURE], сохраняет текущие значения объектов, указанных "
"путем дорожки, как кэш. Если уже есть захваченный кэш, старый кэш "
"отбрасывается.\n"
"После этого он будет интерполироваться с текущим результатом смешивания "
"анимации во время процесса воспроизведения в течение времени, указанного "
"[param duration], работая как кроссфейд.\n"
"Вы можете указать [param trans_type] в качестве кривой для интерполяции. Для "
"лучших результатов может быть целесообразно указать [constant "
"Tween.TRANS_LINEAR] для случаев, когда первый ключ дорожки начинается с "
"ненулевого значения или когда значение ключа не меняется, и [constant "
"Tween.TRANS_QUAD] для случаев, когда значение ключа изменяется линейно."

msgid ""
"[AnimationMixer] caches animated nodes. It may not notice if a node "
"disappears; [method clear_caches] forces it to update the cache again."
msgstr ""
"[AnimationMixer] кэширует анимированные узлы. Он может не заметить, если узел "
"исчезнет; [method clear_caches] заставляет его обновить кэш снова."

msgid ""
"Returns the key of [param animation] or an empty [StringName] if not found."
msgstr ""
"Возвращает ключ [param animation] или пустой [StringName], если он не найден."

msgid ""
"Returns the key for the [AnimationLibrary] that contains [param animation] or "
"an empty [StringName] if not found."
msgstr ""
"Возвращает ключ для [AnimationLibrary], содержащий [param animation], или "
"пустой [StringName], если он не найден."

msgid ""
"Returns the first [AnimationLibrary] with key [param name] or [code]null[/"
"code] if not found.\n"
"To get the [AnimationMixer]'s global animation library, use "
"[code]get_animation_library(\"\")[/code]."
msgstr ""
"Возвращает первую [AnimationLibrary] с ключом [param name] или [code]null[/"
"code], если не найдена.\n"
"Чтобы получить глобальную библиотеку анимации [AnimationMixer], используйте "
"[code]get_animation_library(\"\")[/code]."

msgid "Returns the list of stored library keys."
msgstr "Возвращает список сохраненных ключей библиотеки."

msgid "Returns the list of stored animation keys."
msgstr "Возвращает список сохраненных ключей анимации."

msgid ""
"Retrieve the motion delta of position with the [member root_motion_track] as "
"a [Vector3] that can be used elsewhere.\n"
"If [member root_motion_track] is not a path to a track of type [constant "
"Animation.TYPE_POSITION_3D], returns [code]Vector3(0, 0, 0)[/code].\n"
"See also [member root_motion_track] and [RootMotionView].\n"
"The most basic example is applying position to [CharacterBody3D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var current_rotation\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tcurrent_rotation = get_quaternion()\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar velocity = current_rotation * "
"animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(velocity)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"By using this in combination with [method "
"get_root_motion_rotation_accumulator], you can apply the root motion position "
"more correctly to account for the rotation of the node.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"\tvar velocity = "
"(animation_tree.get_root_motion_rotation_accumulator().inverse() * "
"get_quaternion()) * animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(velocity)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"If [member root_motion_local] is [code]true[/code], returns the pre-"
"multiplied translation value with the inverted rotation.\n"
"In this case, the code can be written as follows:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"\tvar velocity = get_quaternion() * "
"animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(velocity)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Извлеките дельту движения позиции с [member root_motion_track] как [Vector3], "
"который можно использовать в другом месте.\n"
"Если [member root_motion_track] не является путем к треку типа [constant "
"Animation.TYPE_POSITION_3D], возвращает [code]Vector3(0, 0, 0)[/code].\n"
"См. также [member root_motion_track] и [RootMotionView].\n"
"Самый простой пример — применение позиции к [CharacterBody3D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var current_rotation\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tcurrent_rotation = get_quaternion()\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar velocity = current_rotation * "
"animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(velocity)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Используя это в сочетании с [method get_root_motion_rotation_accumulator], вы "
"можете более правильно применить положение движения корня для учета вращения "
"узла.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"\tvar velocity = "
"(animation_tree.get_root_motion_rotation_accumulator().inverse() * "
"get_quaternion()) * animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(velocity)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Если [member root_motion_local] равен [code]true[/code], возвращает "
"предварительно умноженное значение смещения с инвертированным вращением.\n"
"В этом случае код можно записать следующим образом:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"\tvar velocity = get_quaternion() * "
"animation_tree.get_root_motion_position() / delta\n"
"\tset_velocity(velocity)\n"
"\tmove_and_slide()\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Retrieve the blended value of the position tracks with the [member "
"root_motion_track] as a [Vector3] that can be used elsewhere.\n"
"This is useful in cases where you want to respect the initial key values of "
"the animation.\n"
"For example, if an animation with only one key [code]Vector3(0, 0, 0)[/code] "
"is played in the previous frame and then an animation with only one key "
"[code]Vector3(1, 0, 1)[/code] is played in the next frame, the difference can "
"be calculated as follows:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prev_root_motion_position_accumulator\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar current_root_motion_position_accumulator = "
"animation_tree.get_root_motion_position_accumulator()\n"
"\tvar difference = current_root_motion_position_accumulator - "
"prev_root_motion_position_accumulator\n"
"\tprev_root_motion_position_accumulator = "
"current_root_motion_position_accumulator\n"
"\ttransform.origin += difference\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"However, if the animation loops, an unintended discrete change may occur, so "
"this is only useful for some simple use cases."
msgstr ""
"Получите смешанное значение треков положения с [member root_motion_track] как "
"[Vector3], которое можно использовать в другом месте.\n"
"Это полезно в случаях, когда вы хотите соблюдать начальные ключевые значения "
"анимации.\n"
"Например, если анимация только с одним ключом [code]Vector3(0, 0, 0)[/code] "
"воспроизводится в предыдущем кадре, а затем анимация только с одним ключом "
"[code]Vector3(1, 0, 1)[/code] воспроизводится в следующем кадре, разницу "
"можно вычислить следующим образом:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prev_root_motion_position_accumulator\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar current_root_motion_position_accumulator = "
"animation_tree.get_root_motion_position_accumulator()\n"
"\tvar difference = current_root_motion_position_accumulator - "
"prev_root_motion_position_accumulator\n"
"\tprev_root_motion_position_accumulator = "
"current_root_motion_position_accumulator\n"
"\ttransform.origin += difference\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Однако если анимация зацикливается, может произойти непреднамеренное "
"дискретное изменение, поэтому это полезно только для некоторых простых "
"случаев использования."

msgid ""
"Retrieve the motion delta of rotation with the [member root_motion_track] as "
"a [Quaternion] that can be used elsewhere.\n"
"If [member root_motion_track] is not a path to a track of type [constant "
"Animation.TYPE_ROTATION_3D], returns [code]Quaternion(0, 0, 0, 1)[/code].\n"
"See also [member root_motion_track] and [RootMotionView].\n"
"The most basic example is applying rotation to [CharacterBody3D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Извлеките дельту движения вращения с [member root_motion_track] как "
"[Quaternion], который можно использовать в другом месте.\n"
"Если [member root_motion_track] не является путем к треку типа [constant "
"Animation.TYPE_ROTATION_3D], возвращает [code]Quaternion(0, 0, 0, 1)[/code].\n"
"См. также [member root_motion_track] и [RootMotionView].\n"
"Самый простой пример — применение вращения к [CharacterBody3D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tset_quaternion(get_quaternion() * "
"animation_tree.get_root_motion_rotation())\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Retrieve the blended value of the rotation tracks with the [member "
"root_motion_track] as a [Quaternion] that can be used elsewhere.\n"
"This is necessary to apply the root motion position correctly, taking "
"rotation into account. See also [method get_root_motion_position].\n"
"Also, this is useful in cases where you want to respect the initial key "
"values of the animation.\n"
"For example, if an animation with only one key [code]Quaternion(0, 0, 0, 1)[/"
"code] is played in the previous frame and then an animation with only one key "
"[code]Quaternion(0, 0.707, 0, 0.707)[/code] is played in the next frame, the "
"difference can be calculated as follows:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prev_root_motion_rotation_accumulator\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar current_root_motion_rotation_accumulator = "
"animation_tree.get_root_motion_rotation_accumulator()\n"
"\tvar difference = prev_root_motion_rotation_accumulator.inverse() * "
"current_root_motion_rotation_accumulator\n"
"\tprev_root_motion_rotation_accumulator = "
"current_root_motion_rotation_accumulator\n"
"\ttransform.basis *=  Basis(difference)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"However, if the animation loops, an unintended discrete change may occur, so "
"this is only useful for some simple use cases."
msgstr ""
"Извлеките смешанное значение треков вращения с [memberroot_motion_track] как "
"[Quaternion], которое можно использовать в другом месте.\n"
"Это необходимо для правильного применения корневой позиции движения с учетом "
"вращения. См. также [method get_root_motion_position].\n"
"Кроме того, это полезно в случаях, когда вы хотите соблюдать начальные "
"ключевые значения анимации.\n"
"Например, если анимация только с одним ключом [code]Quaternion(0, 0, 0, 1)[/"
"code] воспроизводится в предыдущем кадре, а затем анимация только с одним "
"ключом [code]Quaternion(0, 0.707, 0, 0.707)[/code] воспроизводится в "
"следующем кадре, разницу можно вычислить следующим образом:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prev_root_motion_rotation_accumulator\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar current_root_motion_rotation_accumulator = "
"animation_tree.get_root_motion_rotation_accumulator()\n"
"\tvar difference = prev_root_motion_rotation_accumulator.inverse() * "
"current_root_motion_rotation_accumulator\n"
"\tprev_root_motion_rotation_accumulator = "
"current_root_motion_rotation_accumulator\n"
"\ttransform.basis *=  Basis(difference)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Однако если анимация зацикливается, может произойти непреднамеренное "
"дискретное изменение, поэтому это полезно только для некоторых простых "
"случаев использования."

msgid ""
"Retrieve the motion delta of scale with the [member root_motion_track] as a "
"[Vector3] that can be used elsewhere.\n"
"If [member root_motion_track] is not a path to a track of type [constant "
"Animation.TYPE_SCALE_3D], returns [code]Vector3(0, 0, 0)[/code].\n"
"See also [member root_motion_track] and [RootMotionView].\n"
"The most basic example is applying scale to [CharacterBody3D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var current_scale = Vector3(1, 1, 1)\n"
"var scale_accum = Vector3(1, 1, 1)\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tcurrent_scale = get_scale()\n"
"\t\tscale_accum = Vector3(1, 1, 1)\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tscale_accum += animation_tree.get_root_motion_scale()\n"
"\tset_scale(current_scale * scale_accum)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Извлеките дельту движения масштаба с [member root_motion_track] как "
"[Vector3], который можно использовать в другом месте.\n"
"Если [member root_motion_track] не является путем к треку типа [constant "
"Animation.TYPE_SCALE_3D], возвращает [code]Vector3(0, 0, 0)[/code].\n"
"См. также [member root_motion_track] и [RootMotionView].\n"
"Самый простой пример — применение масштаба к [CharacterBody3D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var current_scale = Vector3(1, 1, 1)\n"
"var scale_accum = Vector3(1, 1, 1)\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tcurrent_scale = get_scale()\n"
"\t\tscale_accum = Vector3(1, 1, 1)\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tscale_accum += animation_tree.get_root_motion_scale()\n"
"\tset_scale(current_scale * scale_accum)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Retrieve the blended value of the scale tracks with the [member "
"root_motion_track] as a [Vector3] that can be used elsewhere.\n"
"For example, if an animation with only one key [code]Vector3(1, 1, 1)[/code] "
"is played in the previous frame and then an animation with only one key "
"[code]Vector3(2, 2, 2)[/code] is played in the next frame, the difference can "
"be calculated as follows:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prev_root_motion_scale_accumulator\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar current_root_motion_scale_accumulator = "
"animation_tree.get_root_motion_scale_accumulator()\n"
"\tvar difference = current_root_motion_scale_accumulator - "
"prev_root_motion_scale_accumulator\n"
"\tprev_root_motion_scale_accumulator = current_root_motion_scale_accumulator\n"
"\ttransform.basis = transform.basis.scaled(difference)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"However, if the animation loops, an unintended discrete change may occur, so "
"this is only useful for some simple use cases."
msgstr ""
"Получите смешанное значение треков масштабирования с [member "
"root_motion_track] как [Vector3], которое можно использовать в другом месте.\n"
"Например, если анимация только с одним ключом [code]Vector3(1, 1, 1)[/code] "
"воспроизводится в предыдущем кадре, а затем анимация только с одним ключом "
"[code]Vector3(2, 2, 2)[/code] воспроизводится в следующем кадре, разницу "
"можно рассчитать следующим образом:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prev_root_motion_scale_accumulator\n"
"\n"
"func _process(delta):\n"
"\tif Input.is_action_just_pressed(\"animate\"):\n"
"\t\tstate_machine.travel(\"Animate\")\n"
"\tvar current_root_motion_scale_accumulator = "
"animation_tree.get_root_motion_scale_accumulator()\n"
"\tvar difference = current_root_motion_scale_accumulator - "
"prev_root_motion_scale_accumulator\n"
"\tprev_root_motion_scale_accumulator = current_root_motion_scale_accumulator\n"
"\ttransform.basis = transform.basis.scaled(difference)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Однако если анимация зацикливается, может произойти непреднамеренное "
"дискретное изменение, поэтому это полезно только для некоторых простых "
"случаев использования."

msgid ""
"Returns [code]true[/code] if the [AnimationMixer] stores an [Animation] with "
"key [param name]."
msgstr ""
"Возвращает [code]true[/code], если [AnimationMixer] хранит [Animation] с "
"ключом [param name]."

msgid ""
"Returns [code]true[/code] if the [AnimationMixer] stores an "
"[AnimationLibrary] with key [param name]."
msgstr ""
"Возвращает [code]true[/code], если [AnimationMixer] хранит [AnimationLibrary] "
"с ключом [param name]."

msgid "Removes the [AnimationLibrary] associated with the key [param name]."
msgstr "Удаляет [AnimationLibrary], связанный с ключом [param name]."

msgid ""
"Moves the [AnimationLibrary] associated with the key [param name] to the key "
"[param newname]."
msgstr ""
"Перемещает [AnimationLibrary], связанный с ключом [param name], в ключ [param "
"newname]."

msgid "If [code]true[/code], the [AnimationMixer] will be processing."
msgstr "Если [code]true[/code], [AnimationMixer] будет выполнять обработку."

msgid ""
"The number of possible simultaneous sounds for each of the assigned "
"AudioStreamPlayers.\n"
"For example, if this value is [code]32[/code] and the animation has two audio "
"tracks, the two [AudioStreamPlayer]s assigned can play simultaneously up to "
"[code]32[/code] voices each."
msgstr ""
"Количество возможных одновременных звуков для каждого из назначенных "
"AudioStreamPlayers.\n"
"Например, если это значение равно [code]32[/code] и анимация имеет две "
"аудиодорожки, два назначенных [AudioStreamPlayer] могут одновременно "
"воспроизводить до [code]32[/code] голосов каждый."

msgid ""
"Ordinarily, tracks can be set to [constant Animation.UPDATE_DISCRETE] to "
"update infrequently, usually when using nearest interpolation.\n"
"However, when blending with [constant Animation.UPDATE_CONTINUOUS] several "
"results are considered. The [member callback_mode_discrete] specify it "
"explicitly. See also [enum AnimationCallbackModeDiscrete].\n"
"To make the blended results look good, it is recommended to set this to "
"[constant ANIMATION_CALLBACK_MODE_DISCRETE_FORCE_CONTINUOUS] to update every "
"frame during blending. Other values exist for compatibility and they are fine "
"if there is no blending, but not so, may produce artifacts."
msgstr ""
"Обычно дорожки можно установить на [constant Animation.UPDATE_DISCRETE] для "
"редкого обновления, обычно при использовании ближайшей интерполяции.\n"
"Однако при смешивании с [constant Animation.UPDATE_CONTINUOUS] "
"рассматриваются несколько результатов. [member callback_mode_discrete] "
"указывает это явно. См. также [enum AnimationCallbackModeDiscrete].\n"
"Чтобы смешанные результаты выглядели хорошо, рекомендуется установить это на "
"[constant ANIMATION_CALLBACK_MODE_DISCRETE_FORCE_CONTINUOUS] для обновления "
"каждого кадра во время смешивания. Существуют другие значения для "
"совместимости, и они хороши, если смешивания нет, но не так, могут создавать "
"артефакты."

msgid "The call mode used for \"Call Method\" tracks."
msgstr "Режим вызова, используемый для треков «Вызов Метода»."

msgid "The process notification in which to update animations."
msgstr "Уведомление о процессе, в котором необходимо обновить анимацию."

msgid ""
"If [code]true[/code], the blending uses the deterministic algorithm. The "
"total weight is not normalized and the result is accumulated with an initial "
"value ([code]0[/code] or a [code]\"RESET\"[/code] animation if present).\n"
"This means that if the total amount of blending is [code]0.0[/code], the "
"result is equal to the [code]\"RESET\"[/code] animation.\n"
"If the number of tracks between the blended animations is different, the "
"animation with the missing track is treated as if it had the initial value.\n"
"If [code]false[/code], The blend does not use the deterministic algorithm. "
"The total weight is normalized and always [code]1.0[/code]. If the number of "
"tracks between the blended animations is different, nothing is done about the "
"animation that is missing a track.\n"
"[b]Note:[/b] In [AnimationTree], the blending with [AnimationNodeAdd2], "
"[AnimationNodeAdd3], [AnimationNodeSub2] or the weight greater than "
"[code]1.0[/code] may produce unexpected results.\n"
"For example, if [AnimationNodeAdd2] blends two nodes with the amount "
"[code]1.0[/code], then total weight is [code]2.0[/code] but it will be "
"normalized to make the total amount [code]1.0[/code] and the result will be "
"equal to [AnimationNodeBlend2] with the amount [code]0.5[/code]."
msgstr ""
"Если [code]true[/code], смешивание использует детерминированный алгоритм. "
"Общий вес не нормализуется, а результат накапливается с начальным значением "
"([code]0[/code] или анимацией [code]\"RESET\"[/code], если она "
"присутствует).\n"
"Это означает, что если общий объем смешивания равен [code]0.0[/code], "
"результат равен анимации [code]\"RESET\"[/code]. \n"
"Если количество дорожек между смешанными анимациями отличается, анимация с "
"отсутствующей дорожкой обрабатывается так, как если бы она имела начальное "
"значение.\n"
"Если [code]false[/code], смешивание не использует детерминированный алгоритм. "
"Общий вес нормализуется и всегда [code]1.0[/code]. Если количество дорожек "
"между смешанными анимациями отличается, ничего не делается для анимации, в "
"которой отсутствует дорожка.\n"
"[b]Примечание:[/b] В [AnimationTree] смешивание с [AnimationNodeAdd2], "
"[AnimationNodeAdd3], [AnimationNodeSub2] или весом больше [code]1.0[/code] "
"может привести к неожиданным результатам.\n"
"Например, если [AnimationNodeAdd2] смешивает два узла с количеством "
"[code]1.0[/code], то общий вес составит [code]2.0[/code], но он будет "
"нормализован, чтобы сделать общее количество [code]1.0[/code], а результат "
"будет равен [AnimationNodeBlend2] с количеством [code]0.5[/code]."

msgid ""
"This is used by the editor. If set to [code]true[/code], the scene will be "
"saved with the effects of the reset animation (the animation with the key "
"[code]\"RESET\"[/code]) applied as if it had been seeked to time 0, with the "
"editor keeping the values that the scene had before saving.\n"
"This makes it more convenient to preview and edit animations in the editor, "
"as changes to the scene will not be saved as long as they are set in the "
"reset animation."
msgstr ""
"Это используется редактором. Если установлено значение [code]true[/code], "
"сцена будет сохранена с эффектами анимации сброса (анимация с ключом [code]"
"\"RESET\"[/code]), примененными так, как если бы она была перенесена на время "
"0, при этом редактор сохраняет значения, которые сцена имела до сохранения. \n"
"Это делает более удобным предварительный просмотр и редактирование анимаций в "
"редакторе, поскольку изменения в сцене не будут сохранены, пока они "
"установлены в анимации сброса."

msgid ""
"If [code]true[/code], [method get_root_motion_position] value is extracted as "
"a local translation value before blending. In other words, it is treated like "
"the translation is done after the rotation."
msgstr ""
"Если [code]true[/code], значение [method get_root_motion_position] "
"извлекается как локальное значение перевода перед смешиванием. Другими "
"словами, оно обрабатывается так, как будто перевод выполняется после поворота."

msgid ""
"The path to the Animation track used for root motion. Paths must be valid "
"scene-tree paths to a node, and must be specified starting from the parent "
"node of the node that will reproduce the animation. The [member "
"root_motion_track] uses the same format as [method Animation.track_set_path], "
"but note that a bone must be specified.\n"
"If the track has type [constant Animation.TYPE_POSITION_3D], [constant "
"Animation.TYPE_ROTATION_3D], or [constant Animation.TYPE_SCALE_3D] the "
"transformation will be canceled visually, and the animation will appear to "
"stay in place. See also [method get_root_motion_position], [method "
"get_root_motion_rotation], [method get_root_motion_scale], and "
"[RootMotionView]."
msgstr ""
"Путь к дорожке анимации, используемой для корневого движения. Пути должны "
"быть допустимыми путями дерева сцены к узлу и должны быть указаны, начиная с "
"родительского узла узла, который будет воспроизводить анимацию. [Member "
"root_motion_track] использует тот же формат, что и [method "
"Animation.track_set_path], но обратите внимание, что должна быть указана "
"кость.\n"
"Если дорожка имеет тип [constant Animation.TYPE_POSITION_3D], [constant "
"Animation.TYPE_ROTATION_3D] или [constant Animation.TYPE_SCALE_3D], "
"преобразование будет визуально отменено, и анимация будет казаться оставшейся "
"на месте. См. также [method get_root_motion_position], [method "
"get_root_motion_rotation], [method get_root_motion_scale] и [RootMotionView]."

msgid "The node which node path references will travel from."
msgstr "Узел, на который ссылается путь узла, будет отправлен."

msgid ""
"Notifies when an animation finished playing.\n"
"[b]Note:[/b] This signal is not emitted if an animation is looping."
msgstr ""
"Уведомляет об окончании воспроизведения анимации.\n"
"[b]Примечание:[/b] Этот сигнал не выдается, если анимация зацикливается."

msgid "Notifies when the animation libraries have changed."
msgstr "Уведомляет об изменении библиотек анимации."

msgid "Notifies when an animation list is changed."
msgstr "Уведомляет об изменении списка анимаций."

msgid ""
"Notifies when an animation starts playing.\n"
"[b]Note:[/b] This signal is not emitted if an animation is looping."
msgstr ""
"Уведомляет о начале воспроизведения анимации.\n"
"[b]Примечание:[/b] Этот сигнал не выдаётся, если анимация повторяется."

msgid ""
"Notifies when the caches have been cleared, either automatically, or manually "
"via [method clear_caches]."
msgstr ""
"Уведомляет об очистке кэшей автоматически или вручную с помощью [method "
"clear_caches]."

msgid ""
"Notifies when the blending result related have been applied to the target "
"objects."
msgstr ""
"Уведомляет, когда соответствующий результат смешивания был применен к целевым "
"объектам."

msgid "Notifies when the property related process have been updated."
msgstr "Уведомляет об обновлении процесса, связанного с свойством."

msgid ""
"Process animation during physics frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS]). This is especially useful when "
"animating physics bodies."
msgstr ""
"Анимация процесса во время физических кадров (см. [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS]). Это особенно полезно при "
"анимации физических тел."

msgid ""
"Process animation during process frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Анимация процесса во время кадров процесса (см. [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid ""
"Do not process animation. Use [method advance] to process the animation "
"manually."
msgstr ""
"Не обрабатывать анимацию. Используйте [method advance] для ручной обработки "
"анимации."

msgid ""
"Batch method calls during the animation process, then do the calls after "
"events are processed. This avoids bugs involving deleting nodes or modifying "
"the AnimationPlayer while playing."
msgstr ""
"Пакетные вызовы методов во время процесса анимации, затем вызовы после "
"обработки событий. Это позволяет избежать ошибок, связанных с удалением узлов "
"или изменением AnimationPlayer во время воспроизведения."

msgid "Make method calls immediately when reached in the animation."
msgstr "Вызывайте методы немедленно при достижении их в анимации."

msgid ""
"An [constant Animation.UPDATE_DISCRETE] track value takes precedence when "
"blending [constant Animation.UPDATE_CONTINUOUS] or [constant "
"Animation.UPDATE_CAPTURE] track values and [constant "
"Animation.UPDATE_DISCRETE] track values."
msgstr ""
"Значение дорожки [constant Animation.UPDATE_DISCRETE] имеет приоритет при "
"смешивании значений дорожки [constant Animation.UPDATE_CONTINUOUS] или "
"[constant Animation.UPDATE_CAPTURE] и значений дорожки [constant "
"Animation.UPDATE_DISCRETE]."

msgid ""
"An [constant Animation.UPDATE_CONTINUOUS] or [constant "
"Animation.UPDATE_CAPTURE] track value takes precedence when blending the "
"[constant Animation.UPDATE_CONTINUOUS] or [constant Animation.UPDATE_CAPTURE] "
"track values and the [constant Animation.UPDATE_DISCRETE] track values. This "
"is the default behavior for [AnimationPlayer]."
msgstr ""
"Значение дорожки [constant Animation.UPDATE_CONTINUOUS] или [constant "
"Animation.UPDATE_CAPTURE] имеет приоритет при смешивании значений дорожки "
"[constant Animation.UPDATE_CONTINUOUS] или [constant "
"Animation.UPDATE_CAPTURE] и значений дорожки [constant "
"Animation.UPDATE_DISCRETE]. Это поведение по умолчанию для [AnimationPlayer]."

msgid ""
"Always treat the [constant Animation.UPDATE_DISCRETE] track value as "
"[constant Animation.UPDATE_CONTINUOUS] with [constant "
"Animation.INTERPOLATION_NEAREST]. This is the default behavior for "
"[AnimationTree].\n"
"If a value track has un-interpolatable type key values, it is internally "
"converted to use [constant ANIMATION_CALLBACK_MODE_DISCRETE_RECESSIVE] with "
"[constant Animation.UPDATE_DISCRETE].\n"
"Un-interpolatable type list:\n"
"- [constant @GlobalScope.TYPE_NIL]\n"
"- [constant @GlobalScope.TYPE_NODE_PATH]\n"
"- [constant @GlobalScope.TYPE_RID]\n"
"- [constant @GlobalScope.TYPE_OBJECT]\n"
"- [constant @GlobalScope.TYPE_CALLABLE]\n"
"- [constant @GlobalScope.TYPE_SIGNAL]\n"
"- [constant @GlobalScope.TYPE_DICTIONARY]\n"
"- [constant @GlobalScope.TYPE_PACKED_BYTE_ARRAY]\n"
"[constant @GlobalScope.TYPE_BOOL] and [constant @GlobalScope.TYPE_INT] are "
"treated as [constant @GlobalScope.TYPE_FLOAT] during blending and rounded "
"when the result is retrieved.\n"
"It is same for arrays and vectors with them such as [constant "
"@GlobalScope.TYPE_PACKED_INT32_ARRAY] or [constant "
"@GlobalScope.TYPE_VECTOR2I], they are treated as [constant "
"@GlobalScope.TYPE_PACKED_FLOAT32_ARRAY] or [constant "
"@GlobalScope.TYPE_VECTOR2]. Also note that for arrays, the size is also "
"interpolated.\n"
"[constant @GlobalScope.TYPE_STRING] and [constant "
"@GlobalScope.TYPE_STRING_NAME] are interpolated between character codes and "
"lengths, but note that there is a difference in algorithm between "
"interpolation between keys and interpolation by blending."
msgstr ""
"Всегда обрабатывайте значение дорожки [constant Animation.UPDATE_DISCRETE] "
"как [constant Animation.UPDATE_CONTINUOUS] с [constant "
"Animation.INTERPOLATION_NEAREST]. Это поведение по умолчанию для "
"[AnimationTree].\n"
"Если дорожка значений имеет неинтерполируемые значения типа ключа, она "
"внутренне преобразуется для использования [constant "
"ANIMATION_CALLBACK_MODE_DISCRETE_RECESSIVE] с [constant "
"Animation.UPDATE_DISCRETE].\n"
"Список неинтерполируемых типов:\n"
"- [constant @GlobalScope.TYPE_NIL]\n"
"- [constant @GlobalScope.TYPE_NODE_PATH]\n"
"- [constant @GlobalScope.TYPE_RID]\n"
"- [constant @GlobalScope.TYPE_OBJECT]\n"
"- [constant @GlobalScope.TYPE_CALLABLE]\n"
"- [constant @GlobalScope.TYPE_SIGNAL]\n"
"- [constant @GlobalScope.TYPE_DICTIONARY]\n"
"- [constant @GlobalScope.TYPE_PACKED_BYTE_ARRAY]\n"
"[constant @GlobalScope.TYPE_BOOL] и [constant @GlobalScope.TYPE_INT] "
"обрабатываются как [constant @GlobalScope.TYPE_FLOAT] во время смешивания и "
"округляются при получении результата.\n"
"То же самое касается массивов и векторов, например, [constant "
"@GlobalScope.TYPE_PACKED_INT32_ARRAY] или [constant "
"@GlobalScope.TYPE_VECTOR2I], они обрабатываются как [constant "
"@GlobalScope.TYPE_PACKED_FLOAT32_ARRAY] или [constant "
"@GlobalScope.TYPE_VECTOR2]. Также обратите внимание, что для массивов размер "
"также интерполируется.\n"
"[constant @GlobalScope.TYPE_STRING] и [constant "
"@GlobalScope.TYPE_STRING_NAME] интерполируются между кодами символов и "
"длинами, но обратите внимание, что есть разница в алгоритме между "
"интерполяцией между ключами и интерполяцией путем смешивания."

msgid "Base class for [AnimationTree] nodes. Not related to scene nodes."
msgstr "Базовый класс для узлов [AnimationTree]. Не относится к узлам сцены."

msgid ""
"Base resource for [AnimationTree] nodes. In general, it's not used directly, "
"but you can create custom ones with custom blending formulas.\n"
"Inherit this when creating animation nodes mainly for use in "
"[AnimationNodeBlendTree], otherwise [AnimationRootNode] should be used "
"instead.\n"
"You can access the time information as read-only parameter which is processed "
"and stored in the previous frame for all nodes except [AnimationNodeOutput].\n"
"[b]Note:[/b] If multiple inputs exist in the [AnimationNode], which time "
"information takes precedence depends on the type of [AnimationNode].\n"
"[codeblock]\n"
"var current_length = $AnimationTree[\"parameters/AnimationNodeName/"
"current_length\"]\n"
"var current_position = $AnimationTree[\"parameters/AnimationNodeName/"
"current_position\"]\n"
"var current_delta = $AnimationTree[\"parameters/AnimationNodeName/"
"current_delta\"]\n"
"[/codeblock]"
msgstr ""
"Базовый ресурс для узлов [AnimationTree]. Обычно он не используется напрямую, "
"но вы можете создавать собственные узлы с помощью собственных формул "
"смешивания.\n"
"Наследуйте его при создании узлов анимации, в основном для использования в "
"[AnimationNodeBlendTree], в противном случае вместо него следует использовать "
"[AnimationRootNode].\n"
"Вы можете получить доступ к информации о времени как к параметру только для "
"чтения, который обрабатывается и сохраняется в предыдущем кадре для всех "
"узлов, кроме [AnimationNodeOutput].\n"
"[b]Примечание:[/b] Если в [AnimationNode] существует несколько входов, то "
"приоритет информации о времени зависит от типа [AnimationNode].\n"
"[codeblock]\n"
"var current_length = $AnimationTree[\"parameters/AnimationNodeName/"
"current_length\"]\n"
"var current_position = $AnimationTree[\"parameters/AnimationNodeName/"
"current_position\"]\n"
"var current_delta = $AnimationTree[\"parameters/AnimationNodeName/"
"current_delta\"]\n"
"[/codeblock]"

msgid "Using AnimationTree"
msgstr "Использование дерева анимации"

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"override the text caption for this animation node."
msgstr ""
"При наследовании от [AnimationRootNode] реализуйте этот виртуальный метод, "
"чтобы переопределить текстовую подпись для этого узла анимации."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return a child animation node by its [param name]."
msgstr ""
"При наследовании от [AnimationRootNode] реализуйте этот виртуальный метод для "
"возврата дочернего узла анимации по его [param name]."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return all child animation nodes in order as a [code]name: node[/code] "
"dictionary."
msgstr ""
"При наследовании от [AnimationRootNode] реализуйте этот виртуальный метод для "
"возврата всех дочерних узлов анимации в порядке словаря [code]name: node[/"
"code]."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return the default value of a [param parameter]. Parameters are custom local "
"memory used for your animation nodes, given a resource can be reused in "
"multiple trees."
msgstr ""
"При наследовании от [AnimationRootNode] реализуйте этот виртуальный метод для "
"возврата значения по умолчанию параметра [param parameter]. Параметры — это "
"настраиваемая локальная память, используемая для ваших узлов анимации, "
"учитывая, что ресурс может быть повторно использован в нескольких деревьях."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return a list of the properties on this animation node. Parameters are custom "
"local memory used for your animation nodes, given a resource can be reused in "
"multiple trees. Format is similar to [method Object.get_property_list]."
msgstr ""
"При наследовании от [AnimationRootNode] реализуйте этот виртуальный метод для "
"возврата списка свойств этого узла анимации. Параметры — это настраиваемая "
"локальная память, используемая для ваших узлов анимации, учитывая, что ресурс "
"может быть повторно использован в нескольких деревьях. Формат аналогичен "
"[method Object.get_property_list]."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return whether the blend tree editor should display filter editing on this "
"animation node."
msgstr ""
"При наследовании от [AnimationRootNode] реализуйте этот виртуальный метод, "
"чтобы узнать, должен ли редактор смешанного дерева отображать редактирование "
"фильтра на этом узле анимации."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"return whether the [param parameter] is read-only. Parameters are custom "
"local memory used for your animation nodes, given a resource can be reused in "
"multiple trees."
msgstr ""
"При наследовании от [AnimationRootNode] реализуйте этот виртуальный метод, "
"чтобы вернуть, является ли параметр [param parameter] доступным только для "
"чтения. Параметры — это настраиваемая локальная память, используемая для "
"ваших узлов анимации, учитывая, что ресурс может быть повторно использован в "
"нескольких деревьях."

msgid ""
"Currently this is mostly useless as there is a lack of many APIs to extend "
"AnimationNode by GDScript. It is planned that a more flexible API using "
"structures will be provided in the future."
msgstr ""
"В настоящее время это в основном бесполезно, поскольку не хватает многих API "
"для расширения AnimationNode с помощью GDScript. Планируется, что в будущем "
"будет предоставлен более гибкий API с использованием структур."

msgid ""
"When inheriting from [AnimationRootNode], implement this virtual method to "
"run some code when this animation node is processed. The [param time] "
"parameter is a relative delta, unless [param seek] is [code]true[/code], in "
"which case it is absolute.\n"
"Here, call the [method blend_input], [method blend_node] or [method "
"blend_animation] functions. You can also use [method get_parameter] and "
"[method set_parameter] to modify local memory.\n"
"This function should return the delta."
msgstr ""
"При наследовании от [AnimationRootNode] реализуйте этот виртуальный метод для "
"запуска некоторого кода при обработке этого узла анимации. Параметр [param "
"time] является относительной дельтой, если только [param seek] не является "
"[code]true[/code], в этом случае он является абсолютным.\n"
"Здесь вызовите функции [method blend_input], [method blend_node] или [method "
"blend_animation]. Вы также можете использовать [method get_parameter] и "
"[method set_parameter] для изменения локальной памяти.\n"
"Эта функция должна возвращать дельту."

msgid ""
"Adds an input to the animation node. This is only useful for animation nodes "
"created for use in an [AnimationNodeBlendTree]. If the addition fails, "
"returns [code]false[/code]."
msgstr ""
"Добавляет вход в узел анимации. Это полезно только для узлов анимации, "
"созданных для использования в [AnimationNodeBlendTree]. Если добавление не "
"удается, возвращает [code]false[/code]."

msgid ""
"Blends an animation by [param blend] amount (name must be valid in the linked "
"[AnimationPlayer]). A [param time] and [param delta] may be passed, as well "
"as whether [param seeked] happened.\n"
"A [param looped_flag] is used by internal processing immediately after the "
"loop."
msgstr ""
"Смешивает анимацию по величине [param blend] (имя должно быть допустимым в "
"связанном [AnimationPlayer]). Могут быть переданы [param time] и [param "
"delta], а также произошло ли [param seeked].\n"
"[param looped_flag] используется внутренней обработкой сразу после цикла."

msgid ""
"Blends an input. This is only useful for animation nodes created for an "
"[AnimationNodeBlendTree]. The [param time] parameter is a relative delta, "
"unless [param seek] is [code]true[/code], in which case it is absolute. A "
"filter mode may be optionally passed."
msgstr ""
"Смешивает входные данные. Это полезно только для узлов анимации, созданных "
"для [AnimationNodeBlendTree]. Параметр [param time] является относительной "
"дельтой, если только [param seek] не является [code]true[/code], в этом "
"случае он является абсолютным. Режим фильтра может быть передан опционально."

msgid ""
"Blend another animation node (in case this animation node contains child "
"animation nodes). This function is only useful if you inherit from "
"[AnimationRootNode] instead, otherwise editors will not display your "
"animation node for addition."
msgstr ""
"Смешайте другой узел анимации (в случае, если этот узел анимации содержит "
"дочерние узлы анимации). Эта функция полезна только если вы наследуете от "
"[AnimationRootNode], в противном случае редакторы не будут отображать ваш "
"узел анимации для добавления."

msgid ""
"Returns the input index which corresponds to [param name]. If not found, "
"returns [code]-1[/code]."
msgstr ""
"Возвращает входной индекс, который соответствует [param name]. Если не "
"найден, возвращает [code]-1[/code]."

msgid ""
"Amount of inputs in this animation node, only useful for animation nodes that "
"go into [AnimationNodeBlendTree]."
msgstr ""
"Количество входов в этом узле анимации, полезно только для узлов анимации, "
"которые входят в [AnimationNodeBlendTree]."

msgid "Gets the name of an input by index."
msgstr "Получает имя ввода по индексу."

msgid ""
"Gets the value of a parameter. Parameters are custom local memory used for "
"your animation nodes, given a resource can be reused in multiple trees."
msgstr ""
"Получает значение параметра. Параметры — это настраиваемая локальная память, "
"используемая для ваших узлов анимации, учитывая, что ресурс может быть "
"повторно использован в нескольких деревьях."

msgid ""
"Returns the object id of the [AnimationTree] that owns this node.\n"
"[b]Note:[/b] This method should only be called from within the [method "
"AnimationNodeExtension._process_animation_node] method, and will return an "
"invalid id otherwise."
msgstr ""
"Возвращает идентификатор объекта [AnimationTree], которому принадлежит этот "
"узел.\n"
"[b]Примечание:[/b] Этот метод следует вызывать только из метода [method "
"AnimationNodeExtension._process_animation_node], в противном случае он вернет "
"недействительный идентификатор."

msgid "Returns [code]true[/code] if the given path is filtered."
msgstr "Возвращает [code]true[/code], если указанный путь отфильтрован."

msgid ""
"Returns [code]true[/code] if this animation node is being processed in test-"
"only mode."
msgstr ""
"Возвращает [code]true[/code], если этот узел анимации обрабатывается в "
"тестовом режиме."

msgid "Removes an input, call this only when inactive."
msgstr "Удаляет вход, вызывать только когда неактивен."

msgid "Adds or removes a path for the filter."
msgstr "Добавляет или удаляет путь для фильтра."

msgid ""
"Sets the name of the input at the given [param input] index. If the setting "
"fails, returns [code]false[/code]."
msgstr ""
"Устанавливает имя входа по указанному индексу [param input]. Если настройка "
"не удалась, возвращает [code]false[/code]."

msgid ""
"Sets a custom parameter. These are used as local memory, because resources "
"can be reused across the tree or scenes."
msgstr ""
"Устанавливает пользовательский параметр. Они используются как локальная "
"память, поскольку ресурсы могут повторно использоваться по всему дереву или "
"сценам."

msgid "If [code]true[/code], filtering is enabled."
msgstr "Если [code]true[/code], фильтрация включена."

msgid ""
"Emitted by nodes that inherit from this class and that have an internal tree "
"when one of their animation nodes removes. The animation nodes that emit this "
"signal are [AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
"[AnimationNodeStateMachine], and [AnimationNodeBlendTree]."
msgstr ""
"Выдается узлами, которые наследуют этот класс и имеют внутреннее дерево, "
"когда один из их узлов анимации удаляется. Узлы анимации, которые выдают этот "
"сигнал – [AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
"[AnimationNodeStateMachine] и [AnimationNodeBlendTree]."

msgid ""
"Emitted by nodes that inherit from this class and that have an internal tree "
"when one of their animation node names changes. The animation nodes that emit "
"this signal are [AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
"[AnimationNodeStateMachine], and [AnimationNodeBlendTree]."
msgstr ""
"Выпускается узлами, которые наследуют этот класс и имеют внутреннее дерево, "
"когда изменяется одно из имен их узлов анимации. Узлы анимации, которые "
"выдают этот сигнал – [AnimationNodeBlendSpace1D], "
"[AnimationNodeBlendSpace2D], [AnimationNodeStateMachine] и "
"[AnimationNodeBlendTree]."

msgid ""
"Emitted by nodes that inherit from this class and that have an internal tree "
"when one of their animation nodes changes. The animation nodes that emit this "
"signal are [AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
"[AnimationNodeStateMachine], [AnimationNodeBlendTree] and "
"[AnimationNodeTransition]."
msgstr ""
"Выпускается узлами, которые наследуют этот класс и имеют внутреннее дерево, "
"когда один из их узлов анимации изменяется. Узлы анимации, которые выдают "
"этот сигнал – [AnimationNodeBlendSpace1D], [AnimationNodeBlendSpace2D], "
"[AnimationNodeStateMachine], [AnimationNodeBlendTree] и "
"[AnimationNodeTransition]."

msgid "Do not use filtering."
msgstr "Не использовать фильтрацию."

msgid "Paths matching the filter will be allowed to pass."
msgstr "Пути, соответствующие фильтру, будут пропущены."

msgid "Paths matching the filter will be discarded."
msgstr "Пути, соответствующие фильтру, будут отброшены."

msgid "Paths matching the filter will be blended (by the blend value)."
msgstr "Пути, соответствующие фильтру, будут смешаны (по значению смешивания)."

msgid "Blends two animations additively inside of an [AnimationNodeBlendTree]."
msgstr "Смешивает две анимации аддитивно внутри [AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
"additively based on the amount value.\n"
"If the amount is greater than [code]1.0[/code], the animation connected to "
"\"in\" port is blended with the amplified animation connected to \"add\" "
"port.\n"
"If the amount is less than [code]0.0[/code], the animation connected to "
"\"in\" port is blended with the inverted animation connected to \"add\" port."
msgstr ""
"Ресурс для добавления в [AnimationNodeBlendTree]. Смешивает две анимации "
"аддитивно на основе значения количества.\n"
"Если количество больше [code]1.0[/code], анимация, подключенная к порту "
"\"in\", смешивается с усиленной анимацией, подключенной к порту \"add\".\n"
"Если количество меньше [code]0.0[/code], анимация, подключенная к порту "
"\"in\", смешивается с инвертированной анимацией, подключенной к порту \"add\"."

msgid ""
"Blends two of three animations additively inside of an "
"[AnimationNodeBlendTree]."
msgstr ""
"Смешивает две из трех анимаций аддитивно внутри [AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations out "
"of three additively out of three based on the amount value.\n"
"This animation node has three inputs:\n"
"- The base animation to add to\n"
"- A \"-add\" animation to blend with when the blend amount is negative\n"
"- A \"+add\" animation to blend with when the blend amount is positive\n"
"If the absolute value of the amount is greater than [code]1.0[/code], the "
"animation connected to \"in\" port is blended with the amplified animation "
"connected to \"-add\"/\"+add\" port."
msgstr ""
"Ресурс для добавления в [AnimationNodeBlendTree]. Смешивает две анимации из "
"трех аддитивно из трех на основе значения количества.\n"
"Этот узел анимации имеет три входа:\n"
"- Базовая анимация для добавления\n"
"- Анимация \"-add\" для смешивания, когда количество смешивания отрицательно\n"
"- Анимация \"+add\" для смешивания, когда количество смешивания положительно\n"
"Если абсолютное значение количества больше [code]1.0[/code], анимация, "
"подключенная к порту \"in\", смешивается с усиленной анимацией, подключенной "
"к порту \"-add\"/\"+add\"."

msgid "An input animation for an [AnimationNodeBlendTree]."
msgstr "Входная анимация для [AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Only has one output port "
"using the [member animation] property. Used as an input for [AnimationNode]s "
"that blend animations together."
msgstr ""
"Ресурс для добавления в [AnimationNodeBlendTree]. Имеет только один выходной "
"порт, использующий свойство [member animation]. Используется как вход для "
"[AnimationNode], которые смешивают анимации."

msgid "3D Platformer Demo"
msgstr "Демо-версия 3D-платформера"

msgid ""
"If [code]true[/code], on receiving a request to play an animation from the "
"start, the first frame is not drawn, but only processed, and playback starts "
"from the next frame.\n"
"See also the notes of [method AnimationPlayer.play]."
msgstr ""
"Если [code]true[/code], при получении запроса на воспроизведение анимации с "
"начала первый кадр не отрисовывается, а только обрабатывается, и "
"воспроизведение начинается со следующего кадра.\n"
"См. также примечания к [method AnimationPlayer.play]."

msgid ""
"Animation to use as an output. It is one of the animations provided by "
"[member AnimationTree.anim_player]."
msgstr ""
"Анимация для использования в качестве вывода. Это одна из анимаций, "
"предоставленных [member AnimationTree.anim_player]."

msgid ""
"If [member use_custom_timeline] is [code]true[/code], override the loop "
"settings of the original [Animation] resource with the value.\n"
"[b]Note:[/b] If the [member Animation.loop_mode] isn't set to looping, the "
"[method Animation.track_set_interpolation_loop_wrap] option will not be "
"respected. If you cannot get the expected behavior, consider duplicating the "
"[Animation] resource and changing the loop settings."
msgstr ""
"Если [member use_custom_timeline] равен [code]true[/code], переопределите "
"настройки цикла исходного ресурса [Animation] на значение.\n"
"[b]Примечание:[/b] Если [member Animation.loop_mode] не установлен на цикл, "
"параметр [method Animation.track_set_interpolation_loop_wrap] не будет "
"учитываться. Если вы не можете получить ожидаемое поведение, рассмотрите "
"возможность дублирования ресурса [Animation] и изменения настроек цикла."

msgid "Determines the playback direction of the animation."
msgstr "Определяет направление воспроизведения анимации."

msgid ""
"If [member use_custom_timeline] is [code]true[/code], offset the start "
"position of the animation.\n"
"This is useful for adjusting which foot steps first in 3D walking animations."
msgstr ""
"Если [member use_custom_timeline] равно [code]true[/code], сместите начальную "
"позицию анимации. \n"
"Это полезно для настройки того, какая нога ступает первой в 3D-анимации "
"ходьбы."

msgid ""
"If [code]true[/code], scales the time so that the length specified in [member "
"timeline_length] is one cycle.\n"
"This is useful for matching the periods of walking and running animations.\n"
"If [code]false[/code], the original animation length is respected. If you set "
"the loop to [member loop_mode], the animation will loop in [member "
"timeline_length]."
msgstr ""
"Если [code]true[/code], масштабирует время так, чтобы длина, указанная в "
"[member timeline_length], была одним циклом.\n"
"Это полезно для сопоставления периодов анимации ходьбы и бега.\n"
"Если [code]false[/code], исходная длина анимации соблюдается. Если установить "
"цикл на [member loop_mode], анимация будет циклично повторяться в [member "
"timeline_length]."

msgid ""
"If [member use_custom_timeline] is [code]true[/code], offset the start "
"position of the animation."
msgstr ""
"Если [member use_custom_timeline] равно [code]true[/code], сместите начальную "
"позицию анимации."

msgid ""
"If [code]true[/code], [AnimationNode] provides an animation based on the "
"[Animation] resource with some parameters adjusted."
msgstr ""
"Если [code]true[/code], [AnimationNode] предоставляет анимацию на основе "
"ресурса [Animation] с некоторыми скорректированными параметрами."

msgid "Plays animation in forward direction."
msgstr "Воспроизводит анимацию в прямом направлении."

msgid "Plays animation in backward direction."
msgstr "Воспроизводит анимацию в обратном направлении."

msgid "Blends two animations linearly inside of an [AnimationNodeBlendTree]."
msgstr "Смешивает две анимации линейно внутри [AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
"linearly based on the amount value.\n"
"In general, the blend value should be in the [code][0.0, 1.0][/code] range. "
"Values outside of this range can blend amplified or inverted animations, "
"however, [AnimationNodeAdd2] works better for this purpose."
msgstr ""
"Ресурс для добавления в [AnimationNodeBlendTree]. Смешивает две анимации "
"линейно на основе значения количества.\n"
"В общем случае значение смешивания должно быть в диапазоне [code][0.0, 1.0][/"
"code]. Значения за пределами этого диапазона могут смешивать усиленные или "
"инвертированные анимации, однако [AnimationNodeAdd2] подходит для этой цели "
"лучше."

msgid ""
"Blends two of three animations linearly inside of an [AnimationNodeBlendTree]."
msgstr "Смешивает две из трех анимаций линейно внутри [AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations out "
"of three linearly out of three based on the amount value.\n"
"This animation node has three inputs:\n"
"- The base animation to blend with\n"
"- A \"-blend\" animation to blend with when the blend amount is negative "
"value\n"
"- A \"+blend\" animation to blend with when the blend amount is positive "
"value\n"
"In general, the blend value should be in the [code][-1.0, 1.0][/code] range. "
"Values outside of this range can blend amplified animations, however, "
"[AnimationNodeAdd3] works better for this purpose."
msgstr ""
"Ресурс для добавления в [AnimationNodeBlendTree]. Смешивает две анимации из "
"трех линейно из трех на основе значения количества.\n"
"Этот узел анимации имеет три входа:\n"
"- Базовая анимация для смешивания\n"
"- Анимация \"-blend\" для смешивания, когда количество смешивания "
"отрицательное\n"
"- Анимация \"+blend\" для смешивания, когда количество смешивания "
"положительное\n"
"В общем, значение смешивания должно быть в диапазоне [code][-1.0, 1.0][/"
"code]. Значения за пределами этого диапазона могут смешивать усиленные "
"анимации, однако [AnimationNodeAdd3] подходит для этой цели лучше."

msgid ""
"A set of [AnimationRootNode]s placed on a virtual axis, crossfading between "
"the two adjacent ones. Used by [AnimationTree]."
msgstr ""
"Набор [AnimationRootNode], размещенных на виртуальной оси, плавно переходящих "
"между двумя соседними. Используется [AnimationTree]."

msgid ""
"A resource used by [AnimationNodeBlendTree].\n"
"[AnimationNodeBlendSpace1D] represents a virtual axis on which any type of "
"[AnimationRootNode]s can be added using [method add_blend_point]. Outputs the "
"linear blend of the two [AnimationRootNode]s adjacent to the current value.\n"
"You can set the extents of the axis with [member min_space] and [member "
"max_space]."
msgstr ""
"Ресурс, используемый [AnimationNodeBlendTree].\n"
"[AnimationNodeBlendSpace1D] представляет собой виртуальную ось, на которую "
"можно добавить любой тип [AnimationRootNode] с помощью [method "
"add_blend_point]. Выводит линейную смесь двух [AnimationRootNode], смежных с "
"текущим значением.\n"
"Вы можете задать пределы оси с помощью [member min_space] и [member "
"max_space]."

msgid ""
"Adds a new point that represents a [param node] on the virtual axis at a "
"given position set by [param pos]. You can insert it at a specific index "
"using the [param at_index] argument. If you use the default value for [param "
"at_index], the point is inserted at the end of the blend points array."
msgstr ""
"Добавляет новую точку, которая представляет [param node] на виртуальной оси в "
"заданной позиции, заданной [param pos]. Вы можете вставить ее в определенный "
"индекс, используя аргумент [param at_index]. Если вы используете значение по "
"умолчанию для [param at_index], точка вставляется в конец массива точек "
"смешивания."

msgid "Returns the number of points on the blend axis."
msgstr "Возвращает количество точек на оси смешивания."

msgid ""
"Returns the [AnimationNode] referenced by the point at index [param point]."
msgstr ""
"Возвращает [AnimationNode], на который ссылается точка с индексом [param "
"point]."

msgid "Returns the position of the point at index [param point]."
msgstr "Возвращает положение точки с индексом [param point]."

msgid "Removes the point at index [param point] from the blend axis."
msgstr "Удаляет точку с индексом [param point] из оси смешивания."

msgid ""
"Changes the [AnimationNode] referenced by the point at index [param point]."
msgstr ""
"Изменяет [AnimationNode], на который ссылается точка с индексом [param point]."

msgid ""
"Updates the position of the point at index [param point] on the blend axis."
msgstr "Обновляет положение точки с индексом [param point] на оси смешивания."

msgid "Controls the interpolation between animations."
msgstr "Управляет интерполяцией между анимациями."

msgid ""
"The blend space's axis's upper limit for the points' position. See [method "
"add_blend_point]."
msgstr ""
"Верхний предел оси пространства смешивания для положения точек. См. [method "
"add_blend_point]."

msgid ""
"The blend space's axis's lower limit for the points' position. See [method "
"add_blend_point]."
msgstr ""
"Нижний предел оси пространства смешивания для положения точек. См. [method "
"add_blend_point]."

msgid "Position increment to snap to when moving a point on the axis."
msgstr "Приращение позиции для привязки при перемещении точки по оси."

msgid ""
"If [code]false[/code], the blended animations' frame are stopped when the "
"blend value is [code]0[/code].\n"
"If [code]true[/code], forcing the blended animations to advance frame."
msgstr ""
"Если [code]false[/code], кадр смешанной анимации останавливается, когда "
"значение смешивания равно [code]0[/code]. \n"
"Если [code]true[/code], смешанная анимация принудительно переходит на "
"следующий кадр."

msgid "Label of the virtual axis of the blend space."
msgstr "Метка виртуальной оси пространства смешивания."

msgid "The interpolation between animations is linear."
msgstr "Интерполяция между анимациями линейная."

msgid ""
"The blend space plays the animation of the animation node which blending "
"position is closest to. Useful for frame-by-frame 2D animations."
msgstr ""
"Пространство смешивания воспроизводит анимацию узла анимации, к которому "
"ближе всего позиция смешивания. Полезно для покадровой 2D-анимации."

msgid ""
"Similar to [constant BLEND_MODE_DISCRETE], but starts the new animation at "
"the last animation's playback position."
msgstr ""
"Аналогично [constant BLEND_MODE_DISCRETE], но запускает новую анимацию с "
"позиции воспроизведения последней анимации."

msgid ""
"A set of [AnimationRootNode]s placed on 2D coordinates, crossfading between "
"the three adjacent ones. Used by [AnimationTree]."
msgstr ""
"Набор [AnimationRootNode], размещенных в 2D-координатах, плавно переходящих "
"между тремя соседними. Используется [AnimationTree]."

msgid ""
"A resource used by [AnimationNodeBlendTree].\n"
"[AnimationNodeBlendSpace2D] represents a virtual 2D space on which "
"[AnimationRootNode]s are placed. Outputs the linear blend of the three "
"adjacent animations using a [Vector2] weight. Adjacent in this context means "
"the three [AnimationRootNode]s making up the triangle that contains the "
"current value.\n"
"You can add vertices to the blend space with [method add_blend_point] and "
"automatically triangulate it by setting [member auto_triangles] to "
"[code]true[/code]. Otherwise, use [method add_triangle] and [method "
"remove_triangle] to triangulate the blend space by hand."
msgstr ""
"Ресурс, используемый [AnimationNodeBlendTree].\n"
"[AnimationNodeBlendSpace2D] представляет собой виртуальное 2D-пространство, "
"на котором размещены [AnimationRootNode]. Выводит линейное смешивание трех "
"смежных анимаций с использованием веса [Vector2]. Смежный в этом контексте "
"означает три [AnimationRootNode], составляющие треугольник, содержащий "
"текущее значение.\n"
"Вы можете добавить вершины в пространство смешивания с помощью [method "
"add_blend_point] и автоматически триангулировать его, установив [member "
"auto_triangles] на [code]true[/code]. В противном случае используйте [method "
"add_triangle] и [method remove_triangle] для триангуляции пространства "
"смешивания вручную."

msgid ""
"Adds a new point that represents a [param node] at the position set by [param "
"pos]. You can insert it at a specific index using the [param at_index] "
"argument. If you use the default value for [param at_index], the point is "
"inserted at the end of the blend points array."
msgstr ""
"Добавляет новую точку, которая представляет [param node] в позиции, заданной "
"[param pos]. Вы можете вставить ее в определенный индекс, используя аргумент "
"[param at_index]. Если вы используете значение по умолчанию для [param "
"at_index], точка вставляется в конец массива точек смешивания."

msgid ""
"Creates a new triangle using three points [param x], [param y], and [param "
"z]. Triangles can overlap. You can insert the triangle at a specific index "
"using the [param at_index] argument. If you use the default value for [param "
"at_index], the point is inserted at the end of the blend points array."
msgstr ""
"Создает новый треугольник, используя три точки [param x], [param y] и [param "
"z]. Треугольники могут перекрываться. Вы можете вставить треугольник в "
"определенный индекс, используя аргумент [param at_index]. Если вы используете "
"значение по умолчанию для [param at_index], точка вставляется в конец массива "
"точек смешивания."

msgid "Returns the number of points in the blend space."
msgstr "Возвращает количество точек в пространстве смешивания."

msgid ""
"Returns the [AnimationRootNode] referenced by the point at index [param "
"point]."
msgstr ""
"Возвращает [AnimationRootNode], на который ссылается точка с индексом [param "
"point]."

msgid "Returns the number of triangles in the blend space."
msgstr "Возвращает количество треугольников в пространстве смешивания."

msgid ""
"Returns the position of the point at index [param point] in the triangle of "
"index [param triangle]."
msgstr ""
"Возвращает положение точки с индексом [param point] в треугольнике с индексом "
"[param triangle]."

msgid "Removes the point at index [param point] from the blend space."
msgstr "Удаляет точку с индексом [param point] из пространства смешивания."

msgid "Removes the triangle at index [param triangle] from the blend space."
msgstr ""
"Удаляет треугольник с индексом [param triangle] из пространства смешивания."

msgid ""
"Updates the position of the point at index [param point] in the blend space."
msgstr ""
"Обновляет положение точки с индексом [param point] в пространстве смешивания."

msgid ""
"If [code]true[/code], the blend space is triangulated automatically. The mesh "
"updates every time you add or remove points with [method add_blend_point] and "
"[method remove_blend_point]."
msgstr ""
"Если [code]true[/code], пространство смешивания триангулируется "
"автоматически. Сетка обновляется каждый раз, когда вы добавляете или удаляете "
"точки с помощью [method add_blend_point] и [method remove_blend_point]."

msgid ""
"The blend space's X and Y axes' upper limit for the points' position. See "
"[method add_blend_point]."
msgstr ""
"Верхний предел осей X и Y пространства смешивания для положения точек. См. "
"[method add_blend_point]."

msgid ""
"The blend space's X and Y axes' lower limit for the points' position. See "
"[method add_blend_point]."
msgstr ""
"Нижний предел осей X и Y пространства смешивания для положения точек. См. "
"[method add_blend_point]."

msgid "Position increment to snap to when moving a point."
msgstr "Приращение позиции для привязки при перемещении точки."

msgid "Name of the blend space's X axis."
msgstr "Имя оси X пространства смешивания."

msgid "Name of the blend space's Y axis."
msgstr "Имя оси Y пространства смешивания."

msgid ""
"Emitted every time the blend space's triangles are created, removed, or when "
"one of their vertices changes position."
msgstr ""
"Вызывается каждый раз, когда создаются, удаляются треугольники пространства "
"смешивания или когда одна из их вершин меняет положение."

msgid ""
"A sub-tree of many type [AnimationNode]s used for complex animations. Used by "
"[AnimationTree]."
msgstr ""
"Поддерево многих типов [AnimationNode], используемых для сложных анимаций. "
"Используется [AnimationTree]."

msgid ""
"This animation node may contain a sub-tree of any other type animation nodes, "
"such as [AnimationNodeTransition], [AnimationNodeBlend2], "
"[AnimationNodeBlend3], [AnimationNodeOneShot], etc. This is one of the most "
"commonly used animation node roots.\n"
"An [AnimationNodeOutput] node named [code]output[/code] is created by default."
msgstr ""
"Этот узел анимации может содержать поддерево любых других узлов анимации, "
"таких как [AnimationNodeTransition], [AnimationNodeBlend2], "
"[AnimationNodeBlend3], [AnimationNodeOneShot] и т. д. Это один из наиболее "
"часто используемых корней узлов анимации.\n"
"Узел [AnimationNodeOutput] с именем [code]output[/code] создается по "
"умолчанию."

msgid ""
"Adds an [AnimationNode] at the given [param position]. The [param name] is "
"used to identify the created sub animation node later."
msgstr ""
"Добавляет [AnimationNode] в указанную [param position]. [param name] "
"используется для идентификации созданного подузла анимации в дальнейшем."

msgid ""
"Connects the output of an [AnimationNode] as input for another "
"[AnimationNode], at the input port specified by [param input_index]."
msgstr ""
"Подключает выход [AnimationNode] в качестве входа для другого [AnimationNode] "
"к порту входа, указанному [param input_index]."

msgid "Disconnects the animation node connected to the specified input."
msgstr "Отключает узел анимации, подключенный к указанному входу."

msgid "Returns the sub animation node with the specified [param name]."
msgstr "Возвращает узел поданимации с указанным [param name]."

msgid ""
"Returns a list containing the names of all sub animation nodes in this blend "
"tree."
msgstr ""
"Возвращает список, содержащий имена всех узлов поданимации в этом дереве "
"смешивания."

msgid ""
"Returns the position of the sub animation node with the specified [param "
"name]."
msgstr "Возвращает позицию узла поданимации с указанным [param name]."

msgid ""
"Returns [code]true[/code] if a sub animation node with specified [param name] "
"exists."
msgstr ""
"Возвращает [code]true[/code], если существует узел поданимации с указанным "
"[param name]."

msgid "Removes a sub animation node."
msgstr "Удаляет подузел анимации."

msgid "Changes the name of a sub animation node."
msgstr "Изменяет имя подузла анимации."

msgid "Modifies the position of a sub animation node."
msgstr "Изменяет положение узла поданимации."

msgid "The global offset of all sub animation nodes."
msgstr "Глобальное смещение всех узлов поданимации."

msgid "Emitted when the input port information is changed."
msgstr "Выдается при изменении информации входного порта."

msgid "The connection was successful."
msgstr "Соединение было успешно установлено."

msgid "The input node is [code]null[/code]."
msgstr "Входной узел — [code]null[/code]."

msgid "The specified input port is out of range."
msgstr "Указанный входной порт находится вне диапазона."

msgid "The output node is [code]null[/code]."
msgstr "Выходной узел — [code]null[/code]."

msgid "Input and output nodes are the same."
msgstr "Входные и выходные узлы одинаковы."

msgid "The specified connection already exists."
msgstr "Указанное соединение уже существует."

msgid "Base class for extending [AnimationRootNode]s from GDScript, C#, or C++."
msgstr ""
"Базовый класс для расширения [AnimationRootNode] из GDScript, C# или C++."

msgid ""
"[AnimationNodeExtension] exposes the APIs of [AnimationRootNode] to allow "
"users to extend it from GDScript, C#, or C++. This class is not meant to be "
"used directly, but to be extended by other classes. It is used to create "
"custom nodes for the [AnimationTree] system."
msgstr ""
"[AnimationNodeExtension] раскрывает API [AnimationRootNode], позволяя "
"пользователям расширять его из GDScript, C# или C++. Этот класс не "
"предназначен для прямого использования, а для расширения другими классами. Он "
"используется для создания пользовательских узлов для системы [AnimationTree]."

msgid ""
"A version of the [method AnimationNode._process] method that is meant to be "
"overridden by custom nodes. It returns a [PackedFloat32Array] with the "
"processed animation data.\n"
"The [PackedFloat64Array] parameter contains the playback information, "
"containing the following values encoded as floating point numbers (in order): "
"playback time and delta, start and end times, whether a seek was requested "
"(encoded as a float greater than [code]0[/code]), whether the seek request "
"was externally requested (encoded as a float greater than [code]0[/code]), "
"the current [enum Animation.LoopedFlag] (encoded as a float), and the current "
"blend weight.\n"
"The function must return a [PackedFloat32Array] of the node's time info, "
"containing the following values (in order): animation length, time position, "
"delta, [enum Animation.LoopMode] (encoded as a float), whether the animation "
"is about to end (encoded as a float greater than [code]0[/code]) and whether "
"the animation is infinite (encoded as a float greater than [code]0[/code]). "
"All values must be included in the returned array."
msgstr ""
"Версия метода [method AnimationNode._process], которая должна быть "
"переопределена пользовательскими узлами. Возвращает [PackedFloat32Array] с "
"обработанными данными анимации.\n"
"Параметр [PackedFloat64Array] содержит информацию о воспроизведении, "
"включающую следующие значения, закодированные как числа с плавающей точкой "
"(по порядку): время воспроизведения и дельта, время начала и окончания, был "
"ли запрошен поиск (закодирован как число с плавающей точкой больше [code]0[/"
"code]), был ли запрос поиска запрошен извне (закодирован как число с "
"плавающей точкой больше [code]0[/code]), текущий [enum Animation.LoopedFlag] "
"(закодирован как число с плавающей точкой) и текущий вес смешивания.\n"
"Функция должна возвращать [PackedFloat32Array] временной информации узла, "
"содержащей следующие значения (по порядку): длина анимации, временная "
"позиция, дельта, [enum Animation.LoopMode] (закодировано как float), "
"заканчивается ли анимация (закодировано как float больше [code]0[/code]) и "
"бесконечна ли анимация (закодировано как float больше [code]0[/code]). Все "
"значения должны быть включены в возвращаемый массив."

msgid ""
"Returns the animation's remaining time for the given node info. For looping "
"animations, it will only return the remaining time if [param break_loop] is "
"[code]true[/code], a large integer value will be returned otherwise."
msgstr ""
"Возвращает оставшееся время анимации для заданной информации узла. Для "
"циклических анимаций оставшееся время будет возвращено только если [param "
"break_loop] равен [code]true[/code], в противном случае будет возвращено "
"большое целочисленное значение."

msgid ""
"Returns [code]true[/code] if the animation for the given [param node_info] is "
"looping."
msgstr ""
"Возвращает [code]true[/code], если анимация для заданного [param node_info] "
"является циклической."

msgid "Plays an animation once in an [AnimationNodeBlendTree]."
msgstr "Воспроизводит анимацию один раз в [AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. This animation node will "
"execute a sub-animation and return once it finishes. Blend times for fading "
"in and out can be customized, as well as filters.\n"
"After setting the request and changing the animation playback, the one-shot "
"node automatically clears the request on the next process frame by setting "
"its [code]request[/code] value to [constant ONE_SHOT_REQUEST_NONE].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Play child animation connected to \"shot\" port.\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE)\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE\n"
"\n"
"# Abort child animation connected to \"shot\" port.\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT)\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT\n"
"\n"
"# Abort child animation with fading out connected to \"shot\" port.\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FADE_OUT)\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FADE_OUT\n"
"\n"
"# Get current state (read-only).\n"
"animation_tree.get(\"parameters/OneShot/active\")\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/OneShot/active\"]\n"
"\n"
"# Get current internal state (read-only).\n"
"animation_tree.get(\"parameters/OneShot/internal_active\")\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/OneShot/internal_active\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Play child animation connected to \"shot\" port.\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.Fire);\n"
"\n"
"// Abort child animation connected to \"shot\" port.\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.Abort);\n"
"\n"
"// Abort child animation with fading out connected to \"shot\" port.\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.FadeOut);\n"
"\n"
"// Get current state (read-only).\n"
"animationTree.Get(\"parameters/OneShot/active\");\n"
"\n"
"// Get current internal state (read-only).\n"
"animationTree.Get(\"parameters/OneShot/internal_active\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Ресурс для добавления в [AnimationNodeBlendTree]. Этот узел анимации выполнит "
"поданимацию и вернется после ее завершения. Можно настроить время смешивания "
"для появления и исчезновения, а также фильтры.\n"
"После установки запроса и изменения воспроизведения анимации узел one-shot "
"автоматически очищает запрос на следующем кадре процесса, устанавливая его "
"значение [code]request[/code] на [constant ONE_SHOT_REQUEST_NONE].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Воспроизвести дочернюю анимацию, подключенную к порту \"shot\".\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE)\n"
"Альтернативный синтаксис (тот же результат, что и выше).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FIRE\n"
"\n"
"# Прервать дочернюю анимацию, подключенную к порту «выстрел».\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT)\n"
"# Альтернативный синтаксис (тот же результат, что и выше).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_ABORT\n"
"\n"
"# Отменить дочернюю анимацию с затуханием, подключенным к порту «выстрел».\n"
"animation_tree.set(\"parameters/OneShot/request\", "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FADE_OUT)\n"
"# Альтернативный синтаксис (тот же результат, что и выше).\n"
"animation_tree[\"parameters/OneShot/request\"] = "
"AnimationNodeOneShot.ONE_SHOT_REQUEST_FADE_OUT\n"
"\n"
"# Получить текущее состояние (только чтение).\n"
"animation_tree.get(\"parameters/OneShot/active\")\n"
"# Альтернативный синтаксис (тот же результат, что и выше).\n"
"animation_tree[\"parameters/OneShot/active\"]\n"
"\n"
"# Получить текущее внутреннее состояние (только для чтения).\n"
"animation_tree.get(\"parameters/OneShot/internal_active\")\n"
"# Альтернативный синтаксис (тот же результат, что и выше).\n"
"animation_tree[\"parameters/OneShot/internal_active\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Воспроизвести дочернюю анимацию, подключенную к порту «выстрел».\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.Fire);\n"
"\n"
"//Прервать дочернюю анимацию, подключенную к порту «shot».\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.Abort);\n"
"\n"
"// Прервать дочернюю анимацию с затуханием, подключенную к порту «shot».\n"
"animationTree.Set(\"parameters/OneShot/request\", "
"(int)AnimationNodeOneShot.OneShotRequest.FadeOut);\n"
"\n"
"// Получить текущее состояние (только чтение).\n"
"animationTree.Get(\"parameters/OneShot/active\");\n"
"\n"
"// Получить текущее внутреннее состояние (только для чтения).\n"
"animationTree.Get(\"parameters/OneShot/internal_active\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"If [code]true[/code], the sub-animation will restart automatically after "
"finishing.\n"
"In other words, to start auto restarting, the animation must be played once "
"with the [constant ONE_SHOT_REQUEST_FIRE] request. The [constant "
"ONE_SHOT_REQUEST_ABORT] request stops the auto restarting, but it does not "
"disable the [member autorestart] itself. So, the [constant "
"ONE_SHOT_REQUEST_FIRE] request will start auto restarting again."
msgstr ""
"Если [code]true[/code], суб-анимация автоматически перезапустится после "
"завершения.\n"
"Другими словами, чтобы начать автоматический перезапуск, анимация должна быть "
"воспроизведена один раз с запросом [constant ONE_SHOT_REQUEST_FIRE]. Запрос "
"[constant ONE_SHOT_REQUEST_ABORT] останавливает автоматический перезапуск, но "
"он не отключает сам [member autorestart]. Таким образом, запрос [constant "
"ONE_SHOT_REQUEST_FIRE] снова запустит автоматический перезапуск."

msgid "The delay after which the automatic restart is triggered, in seconds."
msgstr ""
"Задержка, после которой срабатывает автоматический перезапуск, в секундах."

msgid ""
"If [member autorestart] is [code]true[/code], a random additional delay (in "
"seconds) between 0 and this value will be added to [member autorestart_delay]."
msgstr ""
"Если [member autorestart] имеет значение [code]true[/code], к [member "
"autorestart_delay] будет добавлена случайная дополнительная задержка (в "
"секундах) между 0 и этим значением."

msgid ""
"If [code]true[/code], breaks the loop at the end of the loop cycle for "
"transition, even if the animation is looping."
msgstr ""
"Если [code]true[/code], прерывает цикл в конце цикла перехода, даже если "
"анимация зациклена."

msgid ""
"Determines how cross-fading between animations is eased. If empty, the "
"transition will be linear. Should be a unit [Curve]."
msgstr ""
"Определяет, как плавно смягчается перекрестное затухание между анимациями. "
"Если пусто, переход будет линейным. Должен быть единицей [Curve]."

msgid ""
"The fade-in duration. For example, setting this to [code]1.0[/code] for a 5 "
"second length animation will produce a cross-fade that starts at 0 second and "
"ends at 1 second during the animation.\n"
"[b]Note:[/b] [AnimationNodeOneShot] transitions the current state after the "
"fading has finished."
msgstr ""
"Длительность начального затухания. Например, если задать значение [code]1.0[/"
"code] для анимации длиной 5 секунд, то будет создано перекрестное затухание, "
"которое начинается с 0 секунды и заканчивается на 1 секунде во время "
"анимации.\n"
"[b]Примечание:[/b] [AnimationNodeOneShot] переводит текущее состояние после "
"завершения затухания."

msgid ""
"The fade-out duration. For example, setting this to [code]1.0[/code] for a 5 "
"second length animation will produce a cross-fade that starts at 4 second and "
"ends at 5 second during the animation.\n"
"[b]Note:[/b] [AnimationNodeOneShot] transitions the current state after the "
"fading has finished."
msgstr ""
"Длительность конечного затухания. Например, если задать значение [code]1.0[/"
"code] для анимации длиной 5 секунд, то будет создано перекрестное затухание, "
"которое начинается на 4 секунде и заканчивается на 5 секунде во время "
"анимации.\n"
"[b]Примечание:[/b] [AnimationNodeOneShot] переводит текущее состояние после "
"завершения затухания."

msgid "The blend type."
msgstr "Тип смешивания."

msgid "The default state of the request. Nothing is done."
msgstr "Состояние запроса по умолчанию. Ничего не сделано."

msgid "The request to play the animation connected to \"shot\" port."
msgstr "Запрос на воспроизведение анимации подключен к порту \"shot\"."

msgid "The request to stop the animation connected to \"shot\" port."
msgstr "Запрос на остановку анимации подключен к порту \"shot\"."

msgid "The request to fade out the animation connected to \"shot\" port."
msgstr "Запрос на затухание анимации, подключенной к порту \"shot\"."

msgid "Blends two animations. See also [AnimationNodeBlend2]."
msgstr "Смешивает две анимации. См. также [AnimationNodeBlend2]."

msgid "Blends two animations additively. See also [AnimationNodeAdd2]."
msgstr "Смешивает две анимации аддитивно. См. также [AnimationNodeAdd2]."

msgid "The animation output node of an [AnimationNodeBlendTree]."
msgstr "Узел вывода анимации [AnimationNodeBlendTree]."

msgid ""
"A node created automatically in an [AnimationNodeBlendTree] that outputs the "
"final animation."
msgstr ""
"Узел, автоматически созданный в [AnimationNodeBlendTree], который выводит "
"окончательную анимацию."

msgid ""
"A state machine with multiple [AnimationRootNode]s, used by [AnimationTree]."
msgstr ""
"Конечный автомат с несколькими [AnimationRootNode], используемый "
"[AnimationTree]."

msgid ""
"Contains multiple [AnimationRootNode]s representing animation states, "
"connected in a graph. State transitions can be configured to happen "
"automatically or via code, using a shortest-path algorithm. Retrieve the "
"[AnimationNodeStateMachinePlayback] object from the [AnimationTree] node to "
"control it programmatically.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
"state_machine.travel(\"some_state\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var stateMachine = GetNode<AnimationTree>(\"AnimationTree\").Get(\"parameters/"
"playback\") as AnimationNodeStateMachinePlayback;\n"
"stateMachine.Travel(\"some_state\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Содержит несколько [AnimationRootNode], представляющих состояния анимации, "
"соединенные в граф. Переходы состояний можно настроить так, чтобы они "
"происходили автоматически или через код, используя алгоритм кратчайшего пути. "
"Извлеките объект [AnimationNodeStateMachinePlayback] из узла [AnimationTree], "
"чтобы управлять им программно.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
"state_machine.travel(\"some_state\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var stateMachine = GetNode<AnimationTree>(\"AnimationTree\").Get(\"parameters/"
"playback\") as AnimationNodeStateMachinePlayback;\n"
"stateMachine.Travel(\"some_state\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Adds a new animation node to the graph. The [param position] is used for "
"display in the editor."
msgstr ""
"Добавляет новый узел анимации в график. [Позиция параметра] используется для "
"отображения в редакторе."

msgid "Adds a transition between the given animation nodes."
msgstr "Добавляет переход между заданными узлами анимации."

msgid "Returns the draw offset of the graph. Used for display in the editor."
msgstr ""
"Возвращает смещение отрисовки графика. Используется для отображения в "
"редакторе."

msgid "Returns the animation node with the given name."
msgstr "Возвращает узел анимации с заданным именем."

msgid ""
"Returns a list containing the names of all animation nodes in this state "
"machine."
msgstr ""
"Возвращает список, содержащий имена всех узлов анимации в этом конечном "
"автомате."

msgid "Returns the given animation node's name."
msgstr "Возвращает имя указанного узла анимации."

msgid ""
"Returns the given animation node's coordinates. Used for display in the "
"editor."
msgstr ""
"Возвращает координаты указанного узла анимации. Используется для отображения "
"в редакторе."

msgid "Returns the given transition."
msgstr "Возвращает указанный переход."

msgid "Returns the number of connections in the graph."
msgstr "Возвращает количество соединений в графике."

msgid "Returns the given transition's start node."
msgstr "Возвращает начальный узел указанного перехода."

msgid "Returns the given transition's end node."
msgstr "Возвращает конечный узел указанного перехода."

msgid ""
"Returns [code]true[/code] if the graph contains the given animation node."
msgstr ""
"Возвращает [code]true[/code], если граф содержит заданный узел анимации."

msgid ""
"Returns [code]true[/code] if there is a transition between the given "
"animation nodes."
msgstr ""
"Возвращает [code]true[/code], если между заданными узлами анимации существует "
"переход."

msgid "Deletes the given animation node from the graph."
msgstr "Удаляет указанный узел анимации из графика."

msgid "Deletes the transition between the two specified animation nodes."
msgstr "Удаляет переход между двумя указанными узлами анимации."

msgid "Deletes the given transition by index."
msgstr "Удаляет указанный переход по индексу."

msgid "Renames the given animation node."
msgstr "Переименовывает указанный узел анимации."

msgid "Replaces the given animation node with a new animation node."
msgstr "Заменяет заданный узел анимации новым узлом анимации."

msgid "Sets the draw offset of the graph. Used for display in the editor."
msgstr ""
"Устанавливает смещение отрисовки графика. Используется для отображения в "
"редакторе."

msgid "Sets the animation node's coordinates. Used for display in the editor."
msgstr ""
"Задает координаты узла анимации. Используется для отображения в редакторе."

msgid ""
"If [code]true[/code], allows teleport to the self state with [method "
"AnimationNodeStateMachinePlayback.travel]. When the reset option is enabled "
"in [method AnimationNodeStateMachinePlayback.travel], the animation is "
"restarted. If [code]false[/code], nothing happens on the teleportation to the "
"self state."
msgstr ""
"Если [code]true[/code], разрешает телепортацию в собственное состояние с "
"помощью [method AnimationNodeStateMachinePlayback.travel]. Когда опция сброса "
"включена в [method AnimationNodeStateMachinePlayback.travel], анимация "
"перезапускается. Если [code]false[/code], при телепортации в собственное "
"состояние ничего не происходит."

msgid ""
"If [code]true[/code], treat the cross-fade to the start and end nodes as a "
"blend with the RESET animation.\n"
"In most cases, when additional cross-fades are performed in the parent "
"[AnimationNode] of the state machine, setting this property to [code]false[/"
"code] and matching the cross-fade time of the parent [AnimationNode] and the "
"state machine's start node and end node gives good results."
msgstr ""
"Если [code]true[/code], обрабатывайте кроссфейд (cross-fade) к начальному и "
"конечному узлам как смешение с анимацией RESET.\n"
"В большинстве случаев, когда дополнительные кроссфейды выполняются в "
"родительском [AnimationNode] конечного автомата, установка этого свойства в "
"[code]false[/code] и сопоставление времени кроссфейда родительского "
"[AnimationNode] и начального и конечного узлов конечного автомата дает "
"хорошие результаты."

msgid ""
"This property can define the process of transitions for different use cases. "
"See also [enum AnimationNodeStateMachine.StateMachineType]."
msgstr ""
"Это свойство может определять процесс переходов для различных вариантов "
"использования. См. также [enum AnimationNodeStateMachine.StateMachineType]."

msgid ""
"Seeking to the beginning is treated as playing from the start state. "
"Transition to the end state is treated as exiting the state machine."
msgstr ""
"Переход к началу рассматривается как воспроизведение с начального состояния. "
"Переход к конечному состоянию рассматривается как выход из конечного автомата."

msgid ""
"Seeking to the beginning is treated as seeking to the beginning of the "
"animation in the current state. Transition to the end state, or the absence "
"of transitions in each state, is treated as exiting the state machine."
msgstr ""
"Поиск начала рассматривается как поиск начала анимации в текущем состоянии. "
"Переход в конечное состояние или отсутствие переходов в каждом состоянии "
"рассматривается как выход из конечного автомата."

msgid ""
"This is a grouped state machine that can be controlled from a parent state "
"machine. It does not work independently. There must be a state machine with "
"[member state_machine_type] of [constant STATE_MACHINE_TYPE_ROOT] or "
"[constant STATE_MACHINE_TYPE_NESTED] in the parent or ancestor."
msgstr ""
"Это сгруппированный конечный автомат, которым можно управлять из "
"родительского конечного автомата. Он не работает независимо. Должен быть "
"конечный автомат с [member state_machine_type] [constant "
"STATE_MACHINE_TYPE_ROOT] или [constant STATE_MACHINE_TYPE_NESTED] в "
"родительском или предковом объекте."

msgid "Provides playback control for an [AnimationNodeStateMachine]."
msgstr ""
"Обеспечивает управление воспроизведением для [AnimationNodeStateMachine]."

msgid ""
"Allows control of [AnimationTree] state machines created with "
"[AnimationNodeStateMachine]. Retrieve with [code]"
"$AnimationTree.get(\"parameters/playback\")[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
"state_machine.travel(\"some_state\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var stateMachine = GetNode<AnimationTree>(\"AnimationTree\").Get(\"parameters/"
"playback\").As<AnimationNodeStateMachinePlayback>();\n"
"stateMachine.Travel(\"some_state\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Позволяет управлять конечными автоматами [AnimationTree], созданными с "
"помощью [AnimationNodeStateMachine]. Извлечь с помощью [code]"
"$AnimationTree.get(\"parameters/playback\")[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var state_machine = $AnimationTree.get(\"parameters/playback\")\n"
"state_machine.travel(\"some_state\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var stateMachine = GetNode<AnimationTree>(\"AnimationTree\").Get(\"parameters/"
"playback\").As<AnimationNodeStateMachinePlayback>();\n"
"stateMachine.Travel(\"some_state\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the current state length.\n"
"[b]Note:[/b] It is possible that any [AnimationRootNode] can be nodes as well "
"as animations. This means that there can be multiple animations within a "
"single state. Which animation length has priority depends on the nodes "
"connected inside it. Also, if a transition does not reset, the remaining "
"length at that point will be returned."
msgstr ""
"Возвращает текущую длину состояния.\n"
"[b]Примечание:[/b] Возможно, что любой [AnimationRootNode] может быть как "
"узлами, так и анимациями. Это означает, что в одном состоянии может быть "
"несколько анимаций. Какая длина анимации имеет приоритет, зависит от узлов, "
"подключенных внутри него. Кроме того, если переход не сбрасывается, будет "
"возвращена оставшаяся длина в этой точке."

msgid ""
"Returns the currently playing animation state.\n"
"[b]Note:[/b] When using a cross-fade, the current state changes to the next "
"state immediately after the cross-fade begins."
msgstr ""
"Возвращает текущее состояние воспроизводимой анимации.\n"
"[b]Примечание:[/b] При использовании кроссфейда текущее состояние меняется на "
"следующее состояние сразу после начала кроссфейда."

msgid "Returns the playback position within the current animation state."
msgstr "Возвращает позицию воспроизведения в текущем состоянии анимации."

msgid "Returns the starting state of currently fading animation."
msgstr "Возвращает начальное состояние текущей затухающей анимации."

msgid ""
"Returns the current travel path as computed internally by the A* algorithm."
msgstr ""
"Возвращает текущий путь перемещения, рассчитанный внутренним алгоритмом A*."

msgid "Returns [code]true[/code] if an animation is playing."
msgstr "Возвращает [code]true[/code], если анимация воспроизводится."

msgid ""
"If there is a next path by travel or auto advance, immediately transitions "
"from the current state to the next state."
msgstr ""
"Если есть следующий путь посредством перемещения или автоматического "
"продвижения, немедленно переходит из текущего состояния в следующее состояние."

msgid ""
"Starts playing the given animation.\n"
"If [param reset] is [code]true[/code], the animation is played from the "
"beginning."
msgstr ""
"Начинает воспроизведение заданной анимации.\n"
"Если [param reset] равен [code]true[/code], анимация воспроизводится с начала."

msgid "Stops the currently playing animation."
msgstr "Останавливает текущую анимацию."

msgid ""
"Transitions from the current state to another one, following the shortest "
"path.\n"
"If the path does not connect from the current state, the animation will play "
"after the state teleports.\n"
"If [param reset_on_teleport] is [code]true[/code], the animation is played "
"from the beginning when the travel cause a teleportation."
msgstr ""
"Переход из текущего состояния в другое по кратчайшему пути.\n"
"Если путь не соединяется с текущим состоянием, анимация будет "
"воспроизводиться после телепортации состояния.\n"
"Если [param reset_on_teleport] равен [code]true[/code], анимация "
"воспроизводится с начала, когда путешествие вызывает телепортацию."

msgid ""
"Emitted when the [param state] finishes playback. If [param state] is a state "
"machine set to grouped mode, its signals are passed through with its name "
"prefixed.\n"
"If there is a crossfade, this will be fired when the influence of the [method "
"get_fading_from_node] animation is no longer present."
msgstr ""
"Генерируется, когда [param state] завершает воспроизведение. Если [param "
"state] — это конечный автомат, установленный в групповой режим, его сигналы "
"передаются с префиксом его имени.\n"
"Если используется плавный переход, он срабатывает, когда влияние анимации "
"[method get_fading_from_node] прекращается."

msgid ""
"Emitted when the [param state] starts playback. If [param state] is a state "
"machine set to grouped mode, its signals are passed through with its name "
"prefixed."
msgstr ""
"Генерируется, когда [param state] начинает воспроизведение. Если [param "
"state] — это конечный автомат, установленный в групповой режим, его сигналы "
"передаются с префиксом его имени."

msgid ""
"A transition within an [AnimationNodeStateMachine] connecting two "
"[AnimationRootNode]s."
msgstr ""
"Переход внутри [AnimationNodeStateMachine], соединяющий два "
"[AnimationRootNode]-ов."

msgid ""
"The path generated when using [method "
"AnimationNodeStateMachinePlayback.travel] is limited to the nodes connected "
"by [AnimationNodeStateMachineTransition].\n"
"You can set the timing and conditions of the transition in detail."
msgstr ""
"Путь, сгенерированный при использовании [method "
"AnimationNodeStateMachinePlayback.travel], ограничен узлами, соединенными "
"[AnimationNodeStateMachineTransition].\n"
"Вы можете подробно задать время и условия перехода."

msgid ""
"Turn on auto advance when this condition is set. The provided name will "
"become a boolean parameter on the [AnimationTree] that can be controlled from "
"code (see [url=$DOCS_URL/tutorials/animation/animation_tree.html#controlling-"
"from-code]Using AnimationTree[/url]). For example, if [member "
"AnimationTree.tree_root] is an [AnimationNodeStateMachine] and [member "
"advance_condition] is set to [code]\"idle\"[/code]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"$animation_tree.set(\"parameters/conditions/idle\", is_on_floor and "
"(linear_velocity.x == 0))\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode<AnimationTree>(\"animation_tree\").Set(\"parameters/conditions/"
"idle\", IsOnFloor && (LinearVelocity.X == 0));\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Включите автоматическое продвижение, когда задано это условие. "
"Предоставленное имя станет булевым параметром в [AnimationTree], которым "
"можно управлять из кода (см. [url=$DOCS_URL/tutorials/animation/"
"animation_tree.html#controlling-from-code]Использование AnimationTree[/url]). "
"Например, если [member AnimationTree.tree_root] является "
"[AnimationNodeStateMachine], а [member advance_condition] установлен в [code]"
"\"idle\"[/code]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"$animation_tree.set(\"parameters/conditions/idle\", is_on_floor and "
"(linear_velocity.x == 0))\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode<AnimationTree>(\"animation_tree\").Set(\"parameters/conditions/"
"idle\", IsOnFloor && (LinearVelocity.X == 0));\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Use an expression as a condition for state machine transitions. It is "
"possible to create complex animation advance conditions for switching between "
"states and gives much greater flexibility for creating complex state machines "
"by directly interfacing with the script code."
msgstr ""
"Используйте выражение как условие для переходов между состояниями машины. "
"Можно создавать сложные условия продвижения анимации для переключения между "
"состояниями и обеспечивает гораздо большую гибкость для создания сложных "
"машин состояний путем прямого взаимодействия с кодом скрипта."

msgid ""
"Determines whether the transition should be disabled, enabled when using "
"[method AnimationNodeStateMachinePlayback.travel], or traversed automatically "
"if the [member advance_condition] and [member advance_expression] checks are "
"[code]true[/code] (if assigned)."
msgstr ""
"Определяет, следует ли отключить переход, включить его при использовании "
"[method AnimationNodeStateMachinePlayback.travel] или выполнить переход "
"автоматически, если проверки [member advance_condition] и [member "
"advance_expression] равны [code]true[/code] (если назначено)."

msgid ""
"Lower priority transitions are preferred when travelling through the tree via "
"[method AnimationNodeStateMachinePlayback.travel] or [member advance_mode] is "
"set to [constant ADVANCE_MODE_AUTO]."
msgstr ""
"Переходы с более низким приоритетом предпочтительны при перемещении по дереву "
"с помощью [method AnimationNodeStateMachinePlayback.travel] или [member "
"advance_mode] установлен в [constant ADVANCE_MODE_AUTO]."

msgid ""
"If [code]true[/code], the destination animation is played back from the "
"beginning when switched."
msgstr ""
"Если [code]true[/code], то при переключении анимация назначения "
"воспроизводится с начала."

msgid "The transition type."
msgstr "Тип перехода."

msgid ""
"Ease curve for better control over cross-fade between this state and the "
"next. Should be a unit [Curve]."
msgstr ""
"Кривая плавности для лучшего контроля над кроссфейдом (cross-fade) между этим "
"состоянием и следующим. Должна быть единицей [Кривая]."

msgid ""
"The time to cross-fade between this state and the next.\n"
"[b]Note:[/b] [AnimationNodeStateMachine] transitions the current state "
"immediately after the start of the fading. The precise remaining time can "
"only be inferred from the main animation. When [AnimationNodeOutput] is "
"considered as the most upstream, so the [member xfade_time] is not scaled "
"depending on the downstream delta. See also [member "
"AnimationNodeOneShot.fadeout_time]."
msgstr ""
"Время для перехода между этим состоянием и следующим.\n"
"[b]Примечание:[/b] [AnimationNodeStateMachine] переходит в текущее состояние "
"сразу после начала перехода. Точное оставшееся время можно вывести только из "
"основной анимации. Когда [AnimationNodeOutput] считается самым верхним по "
"потоку, то [member xfade_time] не масштабируется в зависимости от дельты "
"нижнего потока. См. также [member AnimationNodeOneShot.fadeout_time]."

msgid "Emitted when [member advance_condition] is changed."
msgstr "Вызывается при изменении [member advance_condition]."

msgid ""
"Switch to the next state immediately. The current state will end and blend "
"into the beginning of the new one."
msgstr ""
"Немедленно переключиться на следующее состояние. Текущее состояние закончится "
"и сольется с началом нового."

msgid ""
"Switch to the next state immediately, but will seek the new state to the "
"playback position of the old state."
msgstr ""
"Немедленно переключиться на следующее состояние, но новое состояние будет "
"искаться в позиции воспроизведения старого состояния."

msgid ""
"Wait for the current state playback to end, then switch to the beginning of "
"the next state animation."
msgstr ""
"Дождитесь окончания воспроизведения текущего состояния, затем переключитесь "
"на начало анимации следующего состояния."

msgid "Don't use this transition."
msgstr "Не используйте этот переход."

msgid ""
"Only use this transition during [method "
"AnimationNodeStateMachinePlayback.travel]."
msgstr ""
"Используйте этот переход только во время [method "
"AnimationNodeStateMachinePlayback.travel]."

msgid ""
"Automatically use this transition if the [member advance_condition] and "
"[member advance_expression] checks are [code]true[/code] (if assigned)."
msgstr ""
"Автоматически использовать этот переход, если проверки [member "
"advance_condition] и [member advance_expression] равны [code]true[/code] "
"(если назначено)."

msgid ""
"Blends two animations subtractively inside of an [AnimationNodeBlendTree]."
msgstr ""
"Смешивает две анимации методом вычитания внутри [AnimationNodeBlendTree]."

msgid ""
"A resource to add to an [AnimationNodeBlendTree]. Blends two animations "
"subtractively based on the amount value.\n"
"This animation node is usually used for pre-calculation to cancel out any "
"extra poses from the animation for the \"add\" animation source in "
"[AnimationNodeAdd2] or [AnimationNodeAdd3].\n"
"In general, the blend value should be in the [code][0.0, 1.0][/code] range, "
"but values outside of this range can be used for amplified or inverted "
"animations.\n"
"[b]Note:[/b] This calculation is different from using a negative value in "
"[AnimationNodeAdd2], since the transformation matrices do not satisfy the "
"commutative law. [AnimationNodeSub2] multiplies the transformation matrix of "
"the inverted animation from the left side, while negative [AnimationNodeAdd2] "
"multiplies it from the right side."
msgstr ""
"Ресурс для добавления в [AnimationNodeBlendTree]. Смешивает две анимации "
"вычитающим образом на основе значения количества.\n"
"Этот узел анимации обычно используется для предварительного расчета, чтобы "
"отменить любые дополнительные позы из анимации для источника анимации «add» в "
"[AnimationNodeAdd2] или [AnimationNodeAdd3].\n"
"В общем случае значение смешивания должно находиться в диапазоне [code][0.0, "
"1.0][/code], но значения за пределами этого диапазона могут использоваться "
"для усиленных или инвертированных анимаций.\n"
"[b]Примечание:[/b] Это вычисление отличается от использования отрицательного "
"значения в [AnimationNodeAdd2], поскольку матрицы преобразования не "
"удовлетворяют коммутативному закону. [AnimationNodeSub2] умножает матрицу "
"преобразования инвертированной анимации с левой стороны, тогда как "
"отрицательное [AnimationNodeAdd2] умножает ее с правой стороны."

msgid "AnimationTree"
msgstr "Дерево анимации"

msgid ""
"Base class for [AnimationNode]s with multiple input ports that must be "
"synchronized."
msgstr ""
"Базовый класс для [AnimationNode] с несколькими входными портами, которые "
"необходимо синхронизировать."

msgid ""
"An animation node used to combine, mix, or blend two or more animations "
"together while keeping them synchronized within an [AnimationTree]."
msgstr ""
"Узел анимации, используемый для объединения, смешивания или комбинирования "
"двух или более анимаций, сохраняя их синхронизированными в [AnimationTree]."

msgid "A time-scaling animation node used in [AnimationTree]."
msgstr "Узел анимации масштабирования времени, используемый в [AnimationTree]."

msgid ""
"Allows to scale the speed of the animation (or reverse it) in any child "
"[AnimationNode]s. Setting it to [code]0.0[/code] will pause the animation."
msgstr ""
"Позволяет масштабировать скорость анимации (или обратить ее вспять) в любом "
"дочернем [AnimationNode]. Установка его в [code]0.0[/code] приостановит "
"анимацию."

msgid "A time-seeking animation node used in [AnimationTree]."
msgstr "Узел анимации поиска по времени, используемый в [AnimationTree]."

msgid ""
"This animation node can be used to cause a seek command to happen to any sub-"
"children of the animation graph. Use to play an [Animation] from the start or "
"a certain playback position inside the [AnimationNodeBlendTree].\n"
"After setting the time and changing the animation playback, the time seek "
"node automatically goes into sleep mode on the next process frame by setting "
"its [code]seek_request[/code] value to [code]-1.0[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Play child animation from the start.\n"
"animation_tree.set(\"parameters/TimeSeek/seek_request\", 0.0)\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/TimeSeek/seek_request\"] = 0.0\n"
"\n"
"# Play child animation from 12 second timestamp.\n"
"animation_tree.set(\"parameters/TimeSeek/seek_request\", 12.0)\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/TimeSeek/seek_request\"] = 12.0\n"
"[/gdscript]\n"
"[csharp]\n"
"// Play child animation from the start.\n"
"animationTree.Set(\"parameters/TimeSeek/seek_request\", 0.0);\n"
"\n"
"// Play child animation from 12 second timestamp.\n"
"animationTree.Set(\"parameters/TimeSeek/seek_request\", 12.0);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Этот узел анимации может использоваться для того, чтобы команда seek "
"выполнялась для любых дочерних элементов графика анимации. Используйте для "
"воспроизведения [Animation] с начала или с определенной позиции "
"воспроизведения внутри [AnimationNodeBlendTree].\n"
"После установки времени и изменения воспроизведения анимации узел поиска "
"времени автоматически переходит в спящий режим на следующем кадре процесса, "
"устанавливая его значение [code]seek_request[/code] на [code]-1.0[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Включайте детскую анимацию с самого начала.\n"
"animation_tree.set(\"parameters/TimeSeek/seek_request\", 0.0)\n"
"# Альтернативный синтаксис (тот же результат, что и выше).\n"
"animation_tree[\"parameters/TimeSeek/seek_request\"] = 0.0\n"
"\n"
"# Воспроизвести детскую анимацию с 12-секундной отметки времени.\n"
"animation_tree.set(\"parameters/TimeSeek/seek_request\", 12.0)\n"
"# Альтернативный синтаксис (тот же результат, что и выше).\n"
"animation_tree[\"parameters/TimeSeek/seek_request\"] = 12.0\n"
"[/gdscript]\n"
"[csharp]\n"
"//Включайте детскую анимацию с самого начала.\n"
"animationTree.Set(\"parameters/TimeSeek/seek_request\", 0.0);\n"
"\n"
"// Воспроизвести детскую анимацию с 12-секундной отметки времени.\n"
"animationTree.Set(\"parameters/TimeSeek/seek_request\", 12.0);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"If [code]true[/code], some processes are executed to handle keys between "
"seeks, such as calculating root motion and finding the nearest discrete key."
msgstr ""
"Если [code]true[/code], выполняются некоторые процессы для обработки ключей "
"между поисками, такие как вычисление корневого движения и поиск ближайшего "
"дискретного ключа."

msgid "A transition within an [AnimationTree] connecting two [AnimationNode]s."
msgstr "Переход внутри [AnimationTree], соединяющий две [AnimationNode]-ы."

msgid ""
"Simple state machine for cases which don't require a more advanced "
"[AnimationNodeStateMachine]. Animations can be connected to the inputs and "
"transition times can be specified.\n"
"After setting the request and changing the animation playback, the transition "
"node automatically clears the request on the next process frame by setting "
"its [code]transition_request[/code] value to empty.\n"
"[b]Note:[/b] When using a cross-fade, [code]current_state[/code] and "
"[code]current_index[/code] change to the next state immediately after the "
"cross-fade begins.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Play child animation connected to \"state_2\" port.\n"
"animation_tree.set(\"parameters/Transition/transition_request\", "
"\"state_2\")\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/Transition/transition_request\"] = \"state_2\"\n"
"\n"
"# Get current state name (read-only).\n"
"animation_tree.get(\"parameters/Transition/current_state\")\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/Transition/current_state\"]\n"
"\n"
"# Get current state index (read-only).\n"
"animation_tree.get(\"parameters/Transition/current_index\")\n"
"# Alternative syntax (same result as above).\n"
"animation_tree[\"parameters/Transition/current_index\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Play child animation connected to \"state_2\" port.\n"
"animationTree.Set(\"parameters/Transition/transition_request\", "
"\"state_2\");\n"
"\n"
"// Get current state name (read-only).\n"
"animationTree.Get(\"parameters/Transition/current_state\");\n"
"\n"
"// Get current state index (read-only).\n"
"animationTree.Get(\"parameters/Transition/current_index\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Простой конечный автомат для случаев, не требующих более продвинутого "
"[AnimationNodeStateMachine]. Анимации можно подключать к входам и можно "
"указывать время перехода.\n"
"После установки запроса и изменения воспроизведения анимации узел перехода "
"автоматически очищает запрос на следующем кадре процесса, устанавливая его "
"значение [code]transition_request[/code] пустым.\n"
"[b]Примечание:[/b] При использовании кросс-фейда [code]current_state[/code] и "
"[code]current_index[/code] изменяются на следующее состояние сразу после "
"начала кросс-фейда.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Воспроизвести дочернюю анимацию, подключенную к порту «state_2».\n"
"animation_tree.set(\"parameters/Transition/transition_request\", "
"\"state_2\")\n"
"# Альтернативный синтаксис (тот же результат, что и выше).\n"
"animation_tree[\"parameters/Transition/transition_request\"] = \"state_2\"\n"
"\n"
"# Получить название текущего состояния (только для чтения).\n"
"animation_tree.get(\"parameters/Transition/current_state\")\n"
"# Альтернативный синтаксис (тот же результат, что и выше).\n"
"animation_tree[\"parameters/Transition/current_state\"]\n"
"\n"
"# Получить текущий индекс состояния (только для чтения).\n"
"animation_tree.get(\"parameters/Transition/current_index\")\n"
"# Альтернативный синтаксис (тот же результат, что и выше).\n"
"animation_tree[\"parameters/Transition/current_index\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Воспроизвести дочернюю анимацию, подключенную к порту «state_2».\n"
"animationTree.Set(\"parameters/Transition/transition_request\", "
"\"state_2\");\n"
"\n"
"// Получить название текущего состояния (только для чтения).\n"
"animationTree.Get(\"parameters/Transition/current_state\");\n"
"\n"
"// Получить текущий индекс состояния (только для чтения).\n"
"animationTree.Get(\"parameters/Transition/current_index\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns whether the animation breaks the loop at the end of the loop cycle "
"for transition."
msgstr "Возвращает, прерывает ли анимация цикл в конце цикла для перехода."

msgid ""
"Returns whether the animation restarts when the animation transitions from "
"the other animation."
msgstr ""
"Возвращает, перезапускается ли анимация при переходе от одной анимации к "
"другой."

msgid ""
"Returns [code]true[/code] if auto-advance is enabled for the given [param "
"input] index."
msgstr ""
"Возвращает [code]true[/code], если для указанного индекса [param input] "
"включен авто-переход."

msgid ""
"Enables or disables auto-advance for the given [param input] index. If "
"enabled, state changes to the next input after playing the animation once. If "
"enabled for the last input state, it loops to the first."
msgstr ""
"Включает или отключает автоматическое продвижение для заданного индекса "
"[param input]. Если включено, состояние изменяется на следующий ввод после "
"однократного воспроизведения анимации. Если включено для последнего состояния "
"ввода, оно циклически возвращается к первому."

msgid ""
"If [code]true[/code], the destination animation is restarted when the "
"animation transitions."
msgstr ""
"Если [code]true[/code], анимация назначения перезапускается при переходе "
"анимации."

msgid ""
"If [code]true[/code], allows transition to the self state. When the reset "
"option is enabled in input, the animation is restarted. If [code]false[/"
"code], nothing happens on the transition to the self state."
msgstr ""
"Если [code]true[/code], разрешает переход в состояние self. Когда опция "
"сброса включена во входных данных, анимация перезапускается. Если "
"[code]false[/code], при переходе в состояние self ничего не происходит."

msgid "The number of enabled input ports for this animation node."
msgstr "Количество включенных входных портов для этого узла анимации."

msgid ""
"Cross-fading time (in seconds) between each animation connected to the "
"inputs.\n"
"[b]Note:[/b] [AnimationNodeTransition] transitions the current state "
"immediately after the start of the fading. The precise remaining time can "
"only be inferred from the main animation. When [AnimationNodeOutput] is "
"considered as the most upstream, so the [member xfade_time] is not scaled "
"depending on the downstream delta. See also [member "
"AnimationNodeOneShot.fadeout_time]."
msgstr ""
"Время кросс-фейдинга (в секундах) между каждой анимацией, подключенной к "
"входам.\n"
"[b]Примечание:[/b] [AnimationNodeTransition] переходит в текущее состояние "
"сразу после начала затухания. Точное оставшееся время можно вывести только из "
"основной анимации. Когда [AnimationNodeOutput] считается самым верхним по "
"потоку, то [member xfade_time] не масштабируется в зависимости от дельты "
"нижнего потока. См. также [member AnimationNodeOneShot.fadeout_time]."

msgid "A node used for animation playback."
msgstr "Узел, используемый для воспроизведения анимации."

msgid ""
"An animation player is used for general-purpose playback of animations. It "
"contains a dictionary of [AnimationLibrary] resources and custom blend times "
"between animation transitions.\n"
"Some methods and properties use a single key to reference an animation "
"directly. These keys are formatted as the key for the library, followed by a "
"forward slash, then the key for the animation within the library, for example "
"[code]\"movement/run\"[/code]. If the library's key is an empty string (known "
"as the default library), the forward slash is omitted, being the same key "
"used by the library.\n"
"[AnimationPlayer] is better-suited than [Tween] for more complex animations, "
"for example ones with non-trivial timings. It can also be used over [Tween] "
"if the animation track editor is more convenient than doing it in code.\n"
"Updating the target properties of animations occurs at the process frame."
msgstr ""
"Анимационный проигрыватель используется для воспроизведения анимаций общего "
"назначения. Он содержит словарь ресурсов [AnimationLibrary] и настраиваемые "
"времена смешивания между анимационными переходами.\n"
"Некоторые методы и свойства используют один ключ для прямой ссылки на "
"анимацию. Эти ключи форматируются как ключ для библиотеки, за которым следует "
"косая черта, затем ключ для анимации в библиотеке, например [code]\"movement/"
"run\"[/code]. Если ключ библиотеки представляет собой пустую строку "
"(известную как библиотека по умолчанию), косая черта опускается, являясь тем "
"же ключом, который используется библиотекой.\n"
"[AnimationPlayer] лучше подходит, чем [Tween], для более сложных анимаций, "
"например, с нетривиальными временными интервалами. Его также можно "
"использовать вместо [Tween], если редактор трека анимации удобнее, чем делать "
"это в коде.\n"
"Обновление целевых свойств анимаций происходит в кадре процесса (process)."

msgid ""
"Returns the key of the animation which is queued to play after the [param "
"animation_from] animation."
msgstr ""
"Возвращает ключ анимации, которая ставится в очередь на воспроизведение после "
"анимации [param animation_from]."

msgid ""
"Triggers the [param animation_to] animation when the [param animation_from] "
"animation completes."
msgstr ""
"Запускает анимацию [param animation_to] после завершения анимации [param "
"animation_from]."

msgid "Clears all queued, unplayed animations."
msgstr "Очищает все поставленные в очередь невоспроизведенные анимации."

msgid ""
"Returns the blend time (in seconds) between two animations, referenced by "
"their keys."
msgstr ""
"Возвращает время смешивания (в секундах) между двумя анимациями, на которые "
"ссылаются их ключи."

msgid "Use [member AnimationMixer.callback_mode_method] instead."
msgstr "Вместо этого используйте [member AnimationMixer.callback_mode_method]."

msgid "Returns the call mode used for \"Call Method\" tracks."
msgstr "Возвращает режим вызова, используемый для треков \"Call Method\"."

msgid "Use [member AnimationMixer.callback_mode_process] instead."
msgstr "Вместо этого используйте [member AnimationMixer.callback_mode_process]."

msgid "Returns the process notification in which to update animations."
msgstr ""
"Возвращает уведомление о процессе, в котором необходимо обновить анимацию."

msgid "Returns a list of the animation keys that are currently queued to play."
msgstr ""
"Возвращает список ключей анимации, которые в данный момент находятся в "
"очереди на воспроизведение."

msgid "Use [member AnimationMixer.root_node] instead."
msgstr "Вместо этого используйте [member AnimationMixer.root_node]."

msgid "Returns the node which node path references will travel from."
msgstr "Возвращает узел, из которого будут перемещаться ссылки на пути узлов."

msgid "Returns the end time of the section currently being played."
msgstr "Возвращает время окончания воспроизводимого в данный момент раздела."

msgid "Returns the start time of the section currently being played."
msgstr "Возвращает время начала раздела, воспроизводимого в данный момент."

msgid ""
"Returns [code]true[/code] if an animation is currently playing with a section."
msgstr ""
"Возвращает [code]true[/code], если в данный момент воспроизводится анимация с "
"секцией."

msgid ""
"Pauses the currently playing animation. The [member "
"current_animation_position] will be kept and calling [method play] or [method "
"play_backwards] without arguments or with the same animation name as [member "
"assigned_animation] will resume the animation.\n"
"See also [method stop]."
msgstr ""
"Приостанавливает текущую воспроизводимую анимацию. [member "
"current_animation_position] будет сохранен, а вызов [method play] или [method "
"play_backwards] без аргументов или с тем же именем анимации, что и [member "
"assignment_animation], возобновит анимацию.\n"
"См. также [method stop]."

msgid ""
"Plays the animation with key [param name]. Custom blend times and speed can "
"be set.\n"
"The [param from_end] option only affects when switching to a new animation "
"track, or if the same track but at the start or end. It does not affect "
"resuming playback that was paused in the middle of an animation. If [param "
"custom_speed] is negative and [param from_end] is [code]true[/code], the "
"animation will play backwards (which is equivalent to calling [method "
"play_backwards]).\n"
"The [AnimationPlayer] keeps track of its current or last played animation "
"with [member assigned_animation]. If this method is called with that same "
"animation [param name], or with no [param name] parameter, the assigned "
"animation will resume playing if it was paused.\n"
"[b]Note:[/b] The animation will be updated the next time the "
"[AnimationPlayer] is processed. If other variables are updated at the same "
"time this is called, they may be updated too early. To perform the update "
"immediately, call [code]advance(0)[/code]."
msgstr ""
"Воспроизводит анимацию с ключом [param name]. Можно задать пользовательское "
"время смешивания и скорость.\n"
"Параметр [param from_end] влияет только при переключении на новый трек "
"анимации или на тот же трек, но в начале или конце. Он не влияет на "
"возобновление воспроизведения, которое было приостановлено в середине "
"анимации. Если [param custom_speed] отрицательный, а [param from_end] равен "
"[code]true[/code], анимация будет воспроизводиться в обратном направлении "
"(что эквивалентно вызову [method play_backwards]).\n"
"[AnimationPlayer] отслеживает свою текущую или последнюю воспроизведенную "
"анимацию с помощью [member assigned_animation]. Если этот метод вызывается с "
"той же анимацией [param name] или без параметра [param name], назначенная "
"анимация возобновит воспроизведение, если она была приостановлена.\n"
"[b]Примечание:[/b] Анимация будет обновлена при следующей обработке "
"[AnimationPlayer]. Если другие переменные обновляются одновременно с этим "
"вызовом, они могут обновиться слишком рано. Чтобы выполнить обновление "
"немедленно, вызовите [code]advance(0)[/code]."

msgid ""
"Plays the animation with key [param name] and the section starting from "
"[param start_time] and ending on [param end_time]. See also [method play].\n"
"Setting [param start_time] to a value outside the range of the animation "
"means the start of the animation will be used instead, and setting [param "
"end_time] to a value outside the range of the animation means the end of the "
"animation will be used instead. [param start_time] cannot be equal to [param "
"end_time]."
msgstr ""
"Воспроизводит анимацию с ключом [param name] и разделом, начинающимся с "
"[param start_time] и заканчивающимся на [param end_time]. См. также [method "
"play].\n"
"Установка [param start_time] на значение вне диапазона анимации означает, что "
"вместо этого будет использоваться начало анимации, а установка [param "
"end_time] на значение вне диапазона анимации означает, что вместо этого будет "
"использоваться конец анимации. [param start_time] не может быть равен [param "
"end_time]."

msgid ""
"Plays the animation with key [param name] and the section starting from "
"[param start_time] and ending on [param end_time] in reverse.\n"
"This method is a shorthand for [method play_section] with [code]custom_speed "
"= -1.0[/code] and [code]from_end = true[/code], see its description for more "
"information."
msgstr ""
"Воспроизводит анимацию с ключом [param name] и разделом, начинающимся с "
"[param start_time] и заканчивающимся на [param end_time] в обратном порядке.\n"
"Этот метод является сокращением для [method play_section] с "
"[code]custom_speed = -1.0[/code] и [code]from_end = true[/code], см. его "
"описание для получения дополнительной информации."

msgid ""
"Plays the animation with key [param name] and the section starting from "
"[param start_marker] and ending on [param end_marker].\n"
"If the start marker is empty, the section starts from the beginning of the "
"animation. If the end marker is empty, the section ends on the end of the "
"animation. See also [method play]."
msgstr ""
"Воспроизводит анимацию с ключом [param name] и разделом, начинающимся с "
"[param start_marker] и заканчивающимся на [param end_marker].\n"
"Если начальный маркер пуст, раздел начинается с начала анимации. Если "
"конечный маркер пуст, раздел заканчивается в конце анимации. См. также "
"[method play]."

msgid ""
"Plays the animation with key [param name] and the section starting from "
"[param start_marker] and ending on [param end_marker] in reverse.\n"
"This method is a shorthand for [method play_section_with_markers] with "
"[code]custom_speed = -1.0[/code] and [code]from_end = true[/code], see its "
"description for more information."
msgstr ""
"Воспроизводит анимацию с ключом [param name] и разделом, начинающимся с "
"[param start_marker] и заканчивающимся на [param end_marker] в обратном "
"порядке.\n"
"Этот метод является сокращением для [method play_section_with_markers] с "
"[code]custom_speed = -1.0[/code] и [code]from_end = true[/code], см. его "
"описание для получения дополнительной информации."

msgid ""
"See also [method AnimationMixer.capture].\n"
"You can use this method to use more detailed options for capture than those "
"performed by [member playback_auto_capture]. When [member "
"playback_auto_capture] is [code]false[/code], this method is almost the same "
"as the following:\n"
"[codeblock]\n"
"capture(name, duration, trans_type, ease_type)\n"
"play(name, custom_blend, custom_speed, from_end)\n"
"[/codeblock]\n"
"If [param name] is blank, it specifies [member assigned_animation].\n"
"If [param duration] is a negative value, the duration is set to the interval "
"between the current position and the first key, when [param from_end] is "
"[code]true[/code], uses the interval between the current position and the "
"last key instead.\n"
"[b]Note:[/b] The [param duration] takes [member speed_scale] into account, "
"but [param custom_speed] does not, because the capture cache is interpolated "
"with the blend result and the result may contain multiple animations."
msgstr ""
"См. также [method AnimationMixer.capture].\n"
"Вы можете использовать этот метод для использования более подробных "
"параметров захвата, чем те, которые выполняются [member "
"playback_auto_capture]. Когда [member playback_auto_capture] имеет значение "
"[code]false[/code], этот метод почти такой же, как следующий:\n"
"[codeblock]\n"
"capture(name, duration, trans_type, ease_type)\n"
"play(name, custom_blend, custom_speed, from_end)\n"
"[/codeblock]\n"
"Если [param name] пусто, он указывает [member assignment_animation].\n"
"Если [param duration] отрицательное значение, длительность устанавливается на "
"интервал между текущей позицией и первым ключом, когда [param from_end] равен "
"[code]true[/code], вместо этого используется интервал между текущей позицией "
"и последним ключом.\n"
"[b]Примечание:[/b] [param duration] учитывает [member speed_scale], но [param "
"custom_speed] — нет, поскольку кэш захвата интерполируется с результатом "
"смешивания, и результат может содержать несколько анимаций."

msgid ""
"Queues an animation for playback once the current animation and all "
"previously queued animations are done.\n"
"[b]Note:[/b] If a looped animation is currently playing, the queued animation "
"will never play unless the looped animation is stopped somehow."
msgstr ""
"Ставит анимацию в очередь на воспроизведение после завершения текущей "
"анимации и всех ранее поставленных в очередь анимаций.\n"
"[b]Примечание:[/b] Если в данный момент воспроизводится зацикленная анимация, "
"поставленная в очередь анимация никогда не будет воспроизведена, если только "
"зацикленная анимация не будет каким-либо образом остановлена."

msgid "Resets the current section. Does nothing if a section has not been set."
msgstr ""
"Сбрасывает текущую секцию. Ничего не делает, если раздел не был установлен."

msgid ""
"Seeks the animation to the [param seconds] point in time (in seconds). If "
"[param update] is [code]true[/code], the animation updates too, otherwise it "
"updates at process time. Events between the current frame and [param seconds] "
"are skipped.\n"
"If [param update_only] is [code]true[/code], the method / audio / animation "
"playback tracks will not be processed.\n"
"[b]Note:[/b] Seeking to the end of the animation doesn't emit [signal "
"AnimationMixer.animation_finished]. If you want to skip animation and emit "
"the signal, use [method AnimationMixer.advance]."
msgstr ""
"Ищет анимацию до момента времени [param seconds] (в секундах). Если [param "
"update] равен [code]true[/code], анимация также обновляется, в противном "
"случае она обновляется во время процесса. События между текущим кадром и "
"[param seconds] пропускаются.\n"
"Если [param update_only] равен [code]true[/code], метод / аудио / дорожки "
"воспроизведения анимации не будут обработаны.\n"
"[b]Примечание:[/b] Поиск до конца анимации не выдает [signal "
"AnimationMixer.animation_finished]. Если вы хотите пропустить анимацию и "
"выдать сигнал, используйте [method AnimationMixer.advance]."

msgid ""
"Specifies a blend time (in seconds) between two animations, referenced by "
"their keys."
msgstr ""
"Указывает время смешивания (в секундах) между двумя анимациями, на которые "
"ссылаются их ключи."

msgid "Sets the call mode used for \"Call Method\" tracks."
msgstr "Устанавливает режим вызова, используемый для треков \"Call Method\"."

msgid "Sets the process notification in which to update animations."
msgstr ""
"Устанавливает уведомление о процессе, в котором необходимо обновить анимацию."

msgid "Sets the node which node path references will travel from."
msgstr ""
"Устанавливает узел, из которого будут перемещаться ссылки на пути узлов."

msgid ""
"Changes the start and end times of the section being played. The current "
"playback position will be clamped within the new section. See also [method "
"play_section]."
msgstr ""
"Изменяет время начала и окончания воспроизводимого раздела. Текущая позиция "
"воспроизведения будет зафиксирована в новом разделе. См. также [method "
"play_section]."

msgid ""
"Changes the start and end markers of the section being played. The current "
"playback position will be clamped within the new section. See also [method "
"play_section_with_markers].\n"
"If the argument is empty, the section uses the beginning or end of the "
"animation. If both are empty, it means that the section is not set."
msgstr ""
"Изменяет начальный и конечный маркеры воспроизводимого раздела. Текущая "
"позиция воспроизведения будет зафиксирована в новом разделе. См. также "
"[method play_section_with_markers].\n"
"Если аргумент пустой, раздел использует начало или конец анимации. Если оба "
"пусты, это означает, что раздел не установлен."

msgid ""
"Stops the currently playing animation. The animation position is reset to "
"[code]0[/code] and the [code]custom_speed[/code] is reset to [code]1.0[/"
"code]. See also [method pause].\n"
"If [param keep_state] is [code]true[/code], the animation state is not "
"updated visually.\n"
"[b]Note:[/b] The method / audio / animation playback tracks will not be "
"processed by this method."
msgstr ""
"Останавливает текущую воспроизводимую анимацию. Позиция анимации сбрасывается "
"на [code]0[/code], а [code]custom_speed[/code] сбрасывается на [code]1.0[/"
"code]. См. также [method pause].\n"
"Если [param keep_state] равен [code]true[/code], состояние анимации визуально "
"не обновляется.\n"
"[b]Примечание:[/b] Метод / аудио / дорожки воспроизведения анимации не будут "
"обрабатываться этим методом."

msgid ""
"If playing, the current animation's key, otherwise, the animation last "
"played. When set, this changes the animation, but will not play it unless "
"already playing. See also [member current_animation]."
msgstr ""
"Если воспроизводится, ключ текущей анимации, в противном случае — последняя "
"воспроизведенная анимация. Если установлено, это изменяет анимацию, но не "
"воспроизводит ее, если она уже не воспроизводится. См. также [member "
"current_animation]."

msgid ""
"The key of the currently playing animation. If no animation is playing, the "
"property's value is an empty string. Changing this value does not restart the "
"animation. See [method play] for more information on playing animations.\n"
"[b]Note:[/b] While this property appears in the Inspector, it's not meant to "
"be edited, and it's not saved in the scene. This property is mainly used to "
"get the currently playing animation, and internally for animation playback "
"tracks. For more information, see [Animation]."
msgstr ""
"Ключ текущей воспроизводимой анимации. Если анимация не воспроизводится, "
"значением свойства является пустая строка. Изменение этого значения не "
"перезапускает анимацию. См. [method play] для получения дополнительной "
"информации о воспроизведении анимаций.\n"
"[b]Примечание:[/b] Хотя это свойство отображается в Инспекторе, оно не "
"предназначено для редактирования и не сохраняется в сцене. Это свойство в "
"основном используется для получения текущей воспроизводимой анимации и "
"внутренне для дорожек воспроизведения анимации. Для получения дополнительной "
"информации см. [Animation]."

msgid "The length (in seconds) of the currently playing animation."
msgstr "Продолжительность (в секундах) текущей воспроизводимой анимации."

msgid "The position (in seconds) of the currently playing animation."
msgstr "Позиция (в секундах) текущей воспроизводимой анимации."

msgid ""
"If [code]true[/code] and the engine is running in Movie Maker mode (see "
"[MovieWriter]), exits the engine with [method SceneTree.quit] as soon as an "
"animation is done playing in this [AnimationPlayer]. A message is printed "
"when the engine quits for this reason.\n"
"[b]Note:[/b] This obeys the same logic as the [signal "
"AnimationMixer.animation_finished] signal, so it will not quit the engine if "
"the animation is set to be looping."
msgstr ""
"Если [code]true[/code] и движок работает в режиме Movie Maker (см. "
"[MovieWriter]), выходит из движка с помощью [method SceneTree.quit], как "
"только анимация завершит воспроизведение в этом [AnimationPlayer]. Сообщение "
"выводится, когда движок завершает работу по этой причине.\n"
"[b]Примечание:[/b] Это подчиняется той же логике, что и сигнал [signal "
"AnimationMixer.animation_finished], поэтому он не выйдет из движка, если "
"анимация установлена как циклическая."

msgid ""
"If [code]true[/code], performs [method AnimationMixer.capture] before "
"playback automatically. This means just [method play_with_capture] is "
"executed with default arguments instead of [method play].\n"
"[b]Note:[/b] Capture interpolation is only performed if the animation "
"contains a capture track. See also [constant Animation.UPDATE_CAPTURE]."
msgstr ""
"Если [code]true[/code], выполняет [method AnimationMixer.capture] перед "
"воспроизведением автоматически. Это означает, что выполняется только [method "
"play_with_capture] с аргументами по умолчанию вместо [method play].\n"
"[b]Примечание:[/b] Интерполяция захвата выполняется только в том случае, если "
"анимация содержит трек захвата. См. также [constant Animation.UPDATE_CAPTURE]."

msgid ""
"See also [method play_with_capture] and [method AnimationMixer.capture].\n"
"If [member playback_auto_capture_duration] is negative value, the duration is "
"set to the interval between the current position and the first key."
msgstr ""
"См. также [method play_with_capture] и [method AnimationMixer.capture].\n"
"Если [member playback_auto_capture_duration] имеет отрицательное значение, "
"длительность устанавливается на интервал между текущей позицией и первым "
"ключом."

msgid ""
"The ease type of the capture interpolation. See also [enum Tween.EaseType]."
msgstr "Тип легкости интерполяции захвата. См. также [enum Tween.EaseType]."

msgid ""
"The transition type of the capture interpolation. See also [enum "
"Tween.TransitionType]."
msgstr ""
"Тип перехода интерполяции захвата. См. также [enum Tween.TransitionType]."

msgid ""
"The default time in which to blend animations. Ranges from 0 to 4096 with "
"0.01 precision."
msgstr ""
"Время по умолчанию для смешивания анимаций. Диапазон от 0 до 4096 с точностью "
"0,01."

msgid ""
"Emitted when a queued animation plays after the previous animation finished. "
"See also [method AnimationPlayer.queue].\n"
"[b]Note:[/b] The signal is not emitted when the animation is changed via "
"[method AnimationPlayer.play] or by an [AnimationTree]."
msgstr ""
"Вызывается, когда анимация в очереди воспроизводится после завершения "
"предыдущей анимации. См. также [method AnimationPlayer.queue].\n"
"[b]Примечание:[/b] Сигнал не вызывается, когда анимация изменяется через "
"[method AnimationPlayer.play] или [AnimationTree]."

msgid "Emitted when [member current_animation] changes."
msgstr "Вызывается при изменении [member current_animation]."

msgid "See [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]."
msgstr "См. [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]."

msgid "See [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_IDLE]."
msgstr "См. [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_IDLE]."

msgid "See [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_MANUAL]."
msgstr "См. [constant AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_MANUAL]."

msgid "See [constant AnimationMixer.ANIMATION_CALLBACK_MODE_METHOD_DEFERRED]."
msgstr "См. [constant AnimationMixer.ANIMATION_CALLBACK_MODE_METHOD_DEFERRED]."

msgid "See [constant AnimationMixer.ANIMATION_CALLBACK_MODE_METHOD_IMMEDIATE]."
msgstr "См. [constant AnimationMixer.ANIMATION_CALLBACK_MODE_METHOD_IMMEDIATE]."

msgid ""
"Base class for [AnimationNode]s that hold one or multiple composite "
"animations. Usually used for [member AnimationTree.tree_root]."
msgstr ""
"Базовый класс для [AnimationNode], которые содержат одну или несколько "
"составных анимаций. Обычно используется для [member AnimationTree.tree_root]."

msgid ""
"[AnimationRootNode] is a base class for [AnimationNode]s that hold a complete "
"animation. A complete animation refers to the output of an "
"[AnimationNodeOutput] in an [AnimationNodeBlendTree] or the output of another "
"[AnimationRootNode]. Used for [member AnimationTree.tree_root] or in other "
"[AnimationRootNode]s.\n"
"Examples of built-in root nodes include [AnimationNodeBlendTree] (allows "
"blending nodes between each other using various modes), "
"[AnimationNodeStateMachine] (allows to configure blending and transitions "
"between nodes using a state machine pattern), [AnimationNodeBlendSpace2D] "
"(allows linear blending between [b]three[/b] [AnimationNode]s), "
"[AnimationNodeBlendSpace1D] (allows linear blending only between [b]two[/b] "
"[AnimationNode]s)."
msgstr ""
"[AnimationRootNode] — это базовый класс для [AnimationNode], которые содержат "
"полную анимацию. Полная анимация относится к выходу [AnimationNodeOutput] в "
"[AnimationNodeBlendTree] или выходу другого [AnimationRootNode]. Используется "
"для [member AnimationTree.tree_root] или в других [AnimationRootNode].\n"
"Примерами встроенных корневых узлов являются [AnimationNodeBlendTree] "
"(позволяет смешивать узлы между собой с использованием различных режимов), "
"[AnimationNodeStateMachine] (позволяет настраивать смешивание и переходы "
"между узлами с использованием шаблона конечного автомата), "
"[AnimationNodeBlendSpace2D] (позволяет линейное смешивание между [b]тремя[/b] "
"[AnimationNode]-ми), [AnimationNodeBlendSpace1D] (позволяет линейное "
"смешивание только между [b]двумя[/b] [AnimationNode]-ми)."

msgid "A node used for advanced animation transitions in an [AnimationPlayer]."
msgstr ""
"Узел, используемый для расширенных анимационных переходов в [AnimationPlayer]."

msgid ""
"A node used for advanced animation transitions in an [AnimationPlayer].\n"
"[b]Note:[/b] When linked with an [AnimationPlayer], several properties and "
"methods of the corresponding [AnimationPlayer] will not function as expected. "
"Playback and transitions should be handled using only the [AnimationTree] and "
"its constituent [AnimationNode](s). The [AnimationPlayer] node should be used "
"solely for adding, deleting, and editing animations."
msgstr ""
"Узел, используемый для расширенных анимационных переходов в "
"[AnimationPlayer].\n"
"[b]Примечание:[/b] При связывании с [AnimationPlayer] несколько свойств и "
"методов соответствующего [AnimationPlayer] не будут работать так, как "
"ожидается. Воспроизведение и переходы должны обрабатываться только с "
"использованием [AnimationTree] и его составляющих [AnimationNode]. Узел "
"[AnimationPlayer] должен использоваться исключительно для добавления, "
"удаления и редактирования анимаций."

msgid ""
"The path to the [Node] used to evaluate the [AnimationNode] [Expression] if "
"one is not explicitly specified internally."
msgstr ""
"Путь к [Node], используемый для оценки [AnimationNode] [Expression], если он "
"явно не указан внутри."

msgid "The path to the [AnimationPlayer] used for animating."
msgstr "Путь к [AnimationPlayer], используемому для анимации."

msgid ""
"The root animation node of this [AnimationTree]. See [AnimationRootNode]."
msgstr "Корневой узел анимации этого [AnimationTree]. См. [AnimationRootNode]."

msgid "Emitted when the [member anim_player] is changed."
msgstr "Вызывается при изменении [member anim_player]."

msgid ""
"A region of 2D space that detects other [CollisionObject2D]s entering or "
"exiting it."
msgstr ""
"Область 2D пространства, которая обнаруживает другие [CollisionObject2D], "
"входящие в нее или выходящие из нее."

msgid ""
"[Area2D] is a region of 2D space defined by one or multiple "
"[CollisionShape2D] or [CollisionPolygon2D] child nodes. It detects when other "
"[CollisionObject2D]s enter or exit it, and it also keeps track of which "
"collision objects haven't exited it yet (i.e. which one are overlapping it).\n"
"This node can also locally alter or override physics parameters (gravity, "
"damping) and route audio to custom audio buses.\n"
"[b]Note:[/b] Areas and bodies created with [PhysicsServer2D] might not "
"interact as expected with [Area2D]s, and might not emit signals or track "
"objects correctly."
msgstr ""
"[Area2D] — это область двумерного пространства, определяемая одним или "
"несколькими дочерними узлами [CollisionShape2D] или [CollisionPolygon2D]. Он "
"определяет, когда другие [CollisionObject2D] входят в него или выходят из "
"него, а также отслеживает, какие объекты столкновения еще не вышли из него "
"(т. е. какие из них перекрывают его).\n"
"Этот узел также может локально изменять или переопределять физические "
"параметры (гравитация, затухание) и направлять звук на пользовательские "
"аудиошины.\n"
"[b]Примечание:[/b] Области и тела, созданные с помощью [PhysicsServer2D], "
"могут не взаимодействовать с [Area2D]-ми так, как ожидается, и могут не "
"испускать сигналы или не отслеживать объекты правильно."

msgid "Using Area2D"
msgstr "Использование Area2D"

msgid "2D Pong Demo"
msgstr "Демоверсия 2D-понга"

msgid "2D Platformer Demo"
msgstr "Демоверсия 2D-платформера"

msgid ""
"Returns a list of intersecting [Area2D]s. The overlapping area's [member "
"CollisionObject2D.collision_layer] must be part of this area's [member "
"CollisionObject2D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) this "
"list is modified once during the physics step, not immediately after objects "
"are moved. Consider using signals instead."
msgstr ""
"Возвращает список пересекающихся [Area2D]. [Member "
"CollisionObject2D.collision_layer] перекрывающейся области должен быть частью "
"[member CollisionObject2D.collision_mask] этой области, чтобы быть "
"обнаруженным.\n"
"Из соображений производительности (все столкновения обрабатываются "
"одновременно) этот список изменяется один раз во время шага физики, а не "
"сразу после перемещения объектов. Рассмотрите возможность использования "
"сигналов вместо этого."

msgid ""
"Returns a list of intersecting [PhysicsBody2D]s and [TileMap]s. The "
"overlapping body's [member CollisionObject2D.collision_layer] must be part of "
"this area's [member CollisionObject2D.collision_mask] in order to be "
"detected.\n"
"For performance reasons (collisions are all processed at the same time) this "
"list is modified once during the physics step, not immediately after objects "
"are moved. Consider using signals instead."
msgstr ""
"Возвращает список пересекающихся [PhysicsBody2D] и [TileMap]. [Member "
"CollisionObject2D.collision_layer] перекрывающегося тела должен быть частью "
"[member CollisionObject2D.collision_mask] этой области, чтобы быть "
"обнаруженным.\n"
"Из соображений производительности (все столкновения обрабатываются "
"одновременно) этот список изменяется один раз во время шага физики, а не "
"сразу после перемещения объектов. Рассмотрите возможность использования "
"сигналов вместо этого."

msgid ""
"Returns [code]true[/code] if intersecting any [Area2D]s, otherwise returns "
"[code]false[/code]. The overlapping area's [member "
"CollisionObject2D.collision_layer] must be part of this area's [member "
"CollisionObject2D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) the "
"list of overlapping areas is modified once during the physics step, not "
"immediately after objects are moved. Consider using signals instead."
msgstr ""
"Возвращает [code]true[/code], если пересекает какие-либо [Area2D]-ы, в "
"противном случае возвращает [code]false[/code]. [Member "
"CollisionObject2D.collision_layer] перекрывающейся области должен быть частью "
"[member CollisionObject2D.collision_mask] этой области, чтобы быть "
"обнаруженным.\n"
"Из соображений производительности (все столкновения обрабатываются "
"одновременно) список перекрывающихся областей изменяется один раз во время "
"шага физики, а не сразу после перемещения объектов. Рассмотрите возможность "
"использования сигналов вместо этого."

msgid ""
"Returns [code]true[/code] if intersecting any [PhysicsBody2D]s or [TileMap]s, "
"otherwise returns [code]false[/code]. The overlapping body's [member "
"CollisionObject2D.collision_layer] must be part of this area's [member "
"CollisionObject2D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) the "
"list of overlapping bodies is modified once during the physics step, not "
"immediately after objects are moved. Consider using signals instead."
msgstr ""
"Возвращает [code]true[/code], если пересекает любые [PhysicsBody2D]-ы или "
"[TileMap]-ми, в противном случае возвращает [code]false[/code]. [Member "
"CollisionObject2D.collision_layer] перекрывающего тела должен быть частью "
"[member CollisionObject2D.collision_mask] этой области, чтобы быть "
"обнаруженным.\n"
"Из соображений производительности (все столкновения обрабатываются "
"одновременно) список перекрывающихся тел изменяется один раз во время шага "
"физики, а не сразу после перемещения объектов. Рассмотрите возможность "
"использования сигналов вместо этого."

msgid ""
"Returns [code]true[/code] if the given [Area2D] intersects or overlaps this "
"[Area2D], [code]false[/code] otherwise.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, the list of overlaps is updated once per frame and before "
"the physics step. Consider using signals instead."
msgstr ""
"Возвращает [code]true[/code], если заданная [Area2D] пересекает или "
"перекрывает эту [Area2D], [code]false[/code] в противном случае.\n"
"[b]Примечание:[/b] Результат этого теста не появляется сразу после "
"перемещения объектов. Для производительности список перекрытий обновляется "
"один раз за кадр и перед шагом физики. Рассмотрите возможность использования "
"сигналов вместо этого."

msgid ""
"Returns [code]true[/code] if the given physics body intersects or overlaps "
"this [Area2D], [code]false[/code] otherwise.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of overlaps is updated once per frame and before the "
"physics step. Consider using signals instead.\n"
"The [param body] argument can either be a [PhysicsBody2D] or a [TileMap] "
"instance. While TileMaps are not physics bodies themselves, they register "
"their tiles with collision shapes as a virtual physics body."
msgstr ""
"Возвращает [code]true[/code], если указанное физическое тело пересекается или "
"перекрывается с этой областью ([Area2D]), иначе [code]false[/code]. \n"
"[b]Примечание:[/b] Результат этого теста не обновляется мгновенно после "
"перемещения объектов. Для производительности список перекрытий обновляется "
"один раз за кадр и перед шагом физики. Рекомендуется использовать сигналы. \n"
"Аргумент [param body] может быть либо [PhysicsBody2D], либо экземпляром "
"[TileMap]. Хотя TileMap сам по себе не является физическим телом, он "
"регистрирует свои тайлы с коллизиями как виртуальное физическое тело."

msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
"See [member ProjectSettings.physics/2d/default_angular_damp] for more details "
"about damping."
msgstr ""
"Скорость, с которой объекты прекращают вращаться в этой области. Представляет "
"угловую скорость, потерянную в секунду.\n"
"Подробнее о затухании см. [member ProjectSettings.physics/2d/"
"default_angular_damp]."

msgid "Override mode for angular damping calculations within this area."
msgstr ""
"Режим переопределения для расчетов углового демпфирования в этой области."

msgid "The name of the area's audio bus."
msgstr "Название аудио-шины этой области."

msgid ""
"If [code]true[/code], the area's audio bus overrides the default audio bus."
msgstr ""
"Если [code]true[/code], аудиошина области переопределяет аудиошину по "
"умолчанию."

msgid ""
"The area's gravity intensity (in pixels per second squared). This value "
"multiplies the gravity direction. This is useful to alter the force of "
"gravity without altering its direction."
msgstr ""
"Интенсивность гравитации области (в пикселях в секунду в квадрате). Это "
"значение умножает направление гравитации. Это полезно для изменения силы "
"гравитации без изменения ее направления."

msgid "The area's gravity vector (not normalized)."
msgstr "Вектор силы тяжести области (не нормализован)."

msgid ""
"If [code]true[/code], gravity is calculated from a point (set via [member "
"gravity_point_center]). See also [member gravity_space_override]."
msgstr ""
"Если [code]true[/code], гравитация рассчитывается из точки (задается через "
"[member gravity_point_center]). См. также [member gravity_space_override]."

msgid ""
"If gravity is a point (see [member gravity_point]), this will be the point of "
"attraction."
msgstr ""
"Если гравитация — это точка (см. [membergravity_point]), то это будет точка "
"притяжения."

msgid ""
"The distance at which the gravity strength is equal to [member gravity]. For "
"example, on a planet 100 pixels in radius with a surface gravity of 4.0 px/"
"s², set the [member gravity] to 4.0 and the unit distance to 100.0. The "
"gravity will have falloff according to the inverse square law, so in the "
"example, at 200 pixels from the center the gravity will be 1.0 px/s² (twice "
"the distance, 1/4th the gravity), at 50 pixels it will be 16.0 px/s² (half "
"the distance, 4x the gravity), and so on.\n"
"The above is true only when the unit distance is a positive number. When this "
"is set to 0.0, the gravity will be constant regardless of distance."
msgstr ""
"Расстояние, на котором сила гравитации равна [member gravity]. Например, на "
"планете радиусом 100 пикселей с поверхностной силой гравитации 4,0 px/s² "
"установите [member gravity] на 4,0, а единичное расстояние на 100,0. Сила "
"гравитации будет уменьшаться в соответствии с законом обратных квадратов, "
"поэтому в этом примере на расстоянии 200 пикселей от центра сила гравитации "
"будет равна 1,0 px/s² (в два раза больше расстояния, 1/4 силы гравитации), на "
"расстоянии 50 пикселей она будет равна 16,0 px/s² (в два раза больше "
"расстояния, 4x силы гравитации) и т. д. \n"
"Вышесказанное верно только в том случае, если единичное расстояние является "
"положительным числом. Если установлено значение 0,0, сила гравитации будет "
"постоянной независимо от расстояния."

msgid "Override mode for gravity calculations within this area."
msgstr "Режим переопределения для расчетов гравитации в этой области."

msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
"See [member ProjectSettings.physics/2d/default_linear_damp] for more details "
"about damping."
msgstr ""
"Скорость, с которой объекты прекращают движение в этой области. Представляет "
"собой потерю линейной скорости в секунду.\n"
"Подробнее о затухании см. [member ProjectSettings.physics/2d/"
"default_linear_damp]."

msgid "Override mode for linear damping calculations within this area."
msgstr "Режим переопределения для расчетов линейного затухания в этой области."

msgid "If [code]true[/code], other monitoring areas can detect this area."
msgstr ""
"Если [code]true[/code], другие области мониторинга могут обнаружить эту "
"область."

msgid ""
"If [code]true[/code], the area detects bodies or areas entering and exiting "
"it."
msgstr ""
"Если [code]true[/code], область обнаруживает входящие и выходящие из нее тела "
"или области."

msgid ""
"The area's priority. Higher priority areas are processed first. The "
"[World2D]'s physics is always processed last, after all areas."
msgstr ""
"Приоритет области. Области с более высоким приоритетом обрабатываются в "
"первую очередь. Физика [World2D] всегда обрабатывается в последнюю очередь, "
"после всех областей."

msgid ""
"Emitted when the received [param area] enters this area. Requires [member "
"monitoring] to be set to [code]true[/code]."
msgstr ""
"Выдается, когда полученный [param area] входит в эту область. Требуется, "
"чтобы [member monitoring] был установлен в [code]true[/code]."

msgid ""
"Emitted when the received [param area] exits this area. Requires [member "
"monitoring] to be set to [code]true[/code]."
msgstr ""
"Выдается, когда полученная [param area] выходит из этой области. Требует, "
"чтобы [member monitoring] был установлен на [code]true[/code]."

msgid ""
"Emitted when a [Shape2D] of the received [param area] enters a shape of this "
"area. Requires [member monitoring] to be set to [code]true[/code].\n"
"[param local_shape_index] and [param area_shape_index] contain indices of the "
"interacting shapes from this area and the other area, respectively. [param "
"area_rid] contains the [RID] of the other area. These values can be used with "
"the [PhysicsServer2D].\n"
"[b]Example:[/b] Get the [CollisionShape2D] node from the shape index:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var other_shape_owner = area.shape_find_owner(area_shape_index)\n"
"var other_shape_node = area.shape_owner_get_owner(other_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Выдается, когда [Shape2D] полученного [param area] входит в форму этой "
"области. Требует, чтобы [member monitoring] был установлен в [code]true[/"
"code].\n"
"[param local_shape_index] и [param area_shape_index] содержат индексы "
"взаимодействующих фигур из этой области и другой области соответственно. "
"[param area_rid] содержит [RID] другой области. Эти значения можно "
"использовать с [PhysicsServer2D].\n"
"[b]Пример:[/b] Получить узел [CollisionShape2D] из индекса формы:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var other_shape_owner = area.shape_find_owner(area_shape_index)\n"
"var other_shape_node = area.shape_owner_get_owner(other_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Emitted when a [Shape2D] of the received [param area] exits a shape of this "
"area. Requires [member monitoring] to be set to [code]true[/code].\n"
"See also [signal area_shape_entered]."
msgstr ""
"Выдается, когда [Shape2D] полученной [param area] выходит из формы этой "
"области. Требует, чтобы [member monitoring] был установлен на [code]true[/"
"code].\n"
"См. также [signal area_shape_entered]."

msgid ""
"Emitted when the received [param body] enters this area. [param body] can be "
"a [PhysicsBody2D] or a [TileMap]. [TileMap]s are detected if their [TileSet] "
"has collision shapes configured. Requires [member monitoring] to be set to "
"[code]true[/code]."
msgstr ""
"Вызывается, когда полученное [param body] попадает в эту область. [param "
"body] может быть [PhysicsBody2D] или [TileMap]. [TileMap] обнаруживаются, "
"если их [TileSet] имеет настроенные формы столкновений. Требует, чтобы "
"[member monitoring] был установлен на [code]true[/code]."

msgid ""
"Emitted when the received [param body] exits this area. [param body] can be a "
"[PhysicsBody2D] or a [TileMap]. [TileMap]s are detected if their [TileSet] "
"has collision shapes configured. Requires [member monitoring] to be set to "
"[code]true[/code]."
msgstr ""
"Вызывается, когда полученное [param body] покидает эту область. [param body] "
"может быть [PhysicsBody2D] или [TileMap]. [TileMap] обнаруживаются, если их "
"[TileSet] имеет настроенные формы столкновений. Требует, чтобы [member "
"monitoring] был установлен на [code]true[/code]."

msgid ""
"Emitted when a [Shape2D] of the received [param body] enters a shape of this "
"area. [param body] can be a [PhysicsBody2D] or a [TileMap]. [TileMap]s are "
"detected if their [TileSet] has collision shapes configured. Requires [member "
"monitoring] to be set to [code]true[/code].\n"
"[param local_shape_index] and [param body_shape_index] contain indices of the "
"interacting shapes from this area and the interacting body, respectively. "
"[param body_rid] contains the [RID] of the body. These values can be used "
"with the [PhysicsServer2D].\n"
"[b]Example:[/b] Get the [CollisionShape2D] node from the shape index:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var body_shape_owner = body.shape_find_owner(body_shape_index)\n"
"var body_shape_node = body.shape_owner_get_owner(body_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Вызывается, когда [Shape2D] полученного [param body] входит в форму этой "
"области. [param body] может быть [PhysicsBody2D] или [TileMap]. [TileMap] "
"обнаруживаются, если их [TileSet] имеет настроенные формы столкновений. "
"Требует, чтобы [member monitoring] был установлен на [code]true[/code].\n"
"[param local_shape_index] и [param body_shape_index] содержат индексы "
"взаимодействующих фигур из этой области и взаимодействующего тела "
"соответственно. [param body_rid] содержит [RID] тела. Эти значения можно "
"использовать с [PhysicsServer2D].\n"
"[b]Пример:[/b] Получить узел [CollisionShape2D] из индекса формы:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var body_shape_owner = body.shape_find_owner(body_shape_index)\n"
"var body_shape_node = body.shape_owner_get_owner(body_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Emitted when a [Shape2D] of the received [param body] exits a shape of this "
"area. [param body] can be a [PhysicsBody2D] or a [TileMap]. [TileMap]s are "
"detected if their [TileSet] has collision shapes configured. Requires [member "
"monitoring] to be set to [code]true[/code].\n"
"See also [signal body_shape_entered]."
msgstr ""
"Выдается, когда [Shape2D] полученного [param body] выходит из формы этой "
"области. [param body] может быть [PhysicsBody2D] или [TileMap]. [TileMap] "
"обнаруживаются, если их [TileSet] имеет настроенные формы столкновений. "
"Требует, чтобы [member monitoring] был установлен на [code]true[/code].\n"
"См. также [signal body_shape_entered]."

msgid "This area does not affect gravity/damping."
msgstr "Эта область не влияет на гравитацию/демпфирование."

msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order)."
msgstr ""
"Эта область добавляет свои значения гравитации/затухания ко всему, что было "
"рассчитано до сих пор (в порядке [member priority])."

msgid ""
"This area adds its gravity/damping values to whatever has been calculated so "
"far (in [member priority] order), ignoring any lower priority areas."
msgstr ""
"Эта область добавляет свои значения гравитации/демпфирования ко всему, что "
"было рассчитано до сих пор (в порядке [member priority]), игнорируя любые "
"области с более низким приоритетом."

msgid ""
"This area replaces any gravity/damping, even the defaults, ignoring any lower "
"priority areas."
msgstr ""
"Эта область заменяет любую гравитацию/демпфирование, даже значения по "
"умолчанию, игнорируя любые области с более низким приоритетом."

msgid ""
"This area replaces any gravity/damping calculated so far (in [member "
"priority] order), but keeps calculating the rest of the areas."
msgstr ""
"Эта область заменяет все рассчитанные до сих пор значения гравитации/"
"демпфирования (в порядке [member priority]), но продолжает рассчитывать "
"остальные области."

msgid ""
"A region of 3D space that detects other [CollisionObject3D]s entering or "
"exiting it."
msgstr ""
"Область трехмерного пространства, которая обнаруживает другие "
"[CollisionObject3D], входящие в нее или выходящие из нее."

msgid ""
"[Area3D] is a region of 3D space defined by one or multiple "
"[CollisionShape3D] or [CollisionPolygon3D] child nodes. It detects when other "
"[CollisionObject3D]s enter or exit it, and it also keeps track of which "
"collision objects haven't exited it yet (i.e. which one are overlapping it).\n"
"This node can also locally alter or override physics parameters (gravity, "
"damping) and route audio to custom audio buses.\n"
"[b]Note:[/b] Areas and bodies created with [PhysicsServer3D] might not "
"interact as expected with [Area3D]s, and might not emit signals or track "
"objects correctly.\n"
"[b]Warning:[/b] Using a [ConcavePolygonShape3D] inside a [CollisionShape3D] "
"child of this node (created e.g. by using the [b]Create Trimesh Collision "
"Sibling[/b] option in the [b]Mesh[/b] menu that appears when selecting a "
"[MeshInstance3D] node) may give unexpected results, since this collision "
"shape is hollow. If this is not desired, it has to be split into multiple "
"[ConvexPolygonShape3D]s or primitive shapes like [BoxShape3D], or in some "
"cases it may be replaceable by a [CollisionPolygon3D]."
msgstr ""
"[Area3D] — это область трехмерного пространства, определяемая одним или "
"несколькими дочерними узлами [CollisionShape3D] или [CollisionPolygon3D]. Он "
"определяет, когда другие [CollisionObject3D] входят в него или выходят из "
"него, а также отслеживает, какие объекты столкновения еще не вышли из него "
"(т. е. какие из них перекрывают его).\n"
"Этот узел также может локально изменять или переопределять физические "
"параметры (гравитация, затухание) и направлять звук на пользовательские "
"аудиошины.\n"
"[b]Примечание:[/b] Области и тела, созданные с помощью [PhysicsServer3D], "
"могут не взаимодействовать с [Area3D] так, как ожидается, и могут не "
"испускать сигналы или не отслеживать объекты правильно.\n"
"[b]Предупреждение:[/b] Использование [ConcavePolygonShape3D] внутри дочернего "
"узла [CollisionShape3D] этого узла (созданного, например, с помощью параметра "
"[b]Create Trimesh Collision Sibling[/b] в меню [b]Mesh[/b], которое "
"появляется при выборе узла [MeshInstance3D]) может дать неожиданные "
"результаты, поскольку эта форма столкновения полая. Если это нежелательно, ее "
"следует разделить на несколько [ConvexPolygonShape3D] или примитивных форм, "
"таких как [BoxShape3D], или в некоторых случаях ее можно заменить на "
"[CollisionPolygon3D]."

msgid "GUI in 3D Viewport Demo"
msgstr "Демонстрация графического интерфейса пользователя в 3D-окне просмотра"

msgid ""
"Returns a list of intersecting [Area3D]s. The overlapping area's [member "
"CollisionObject3D.collision_layer] must be part of this area's [member "
"CollisionObject3D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) this "
"list is modified once during the physics step, not immediately after objects "
"are moved. Consider using signals instead."
msgstr ""
"Возвращает список пересекающихся [Area3D]-ов. [Member "
"CollisionObject3D.collision_layer] перекрывающейся области должен быть частью "
"[member CollisionObject3D.collision_mask] этой области, чтобы быть "
"обнаруженным.\n"
"Из соображений производительности (все столкновения обрабатываются "
"одновременно) этот список изменяется один раз во время шага физики, а не "
"сразу после перемещения объектов. Рассмотрите возможность использования "
"сигналов вместо этого."

msgid ""
"Returns a list of intersecting [PhysicsBody3D]s and [GridMap]s. The "
"overlapping body's [member CollisionObject3D.collision_layer] must be part of "
"this area's [member CollisionObject3D.collision_mask] in order to be "
"detected.\n"
"For performance reasons (collisions are all processed at the same time) this "
"list is modified once during the physics step, not immediately after objects "
"are moved. Consider using signals instead."
msgstr ""
"Возвращает список пересекающихся [PhysicsBody3D]-ов и [GridMap]-ов. [Member "
"CollisionObject3D.collision_layer] перекрывающегося тела должен быть частью "
"[member CollisionObject3D.collision_mask] этой области, чтобы его можно было "
"обнаружить.\n"
"Из соображений производительности (все столкновения обрабатываются "
"одновременно) этот список изменяется один раз во время шага физики, а не "
"сразу после перемещения объектов. Рассмотрите возможность использования "
"сигналов вместо этого."

msgid ""
"Returns [code]true[/code] if intersecting any [Area3D]s, otherwise returns "
"[code]false[/code]. The overlapping area's [member "
"CollisionObject3D.collision_layer] must be part of this area's [member "
"CollisionObject3D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) the "
"list of overlapping areas is modified once during the physics step, not "
"immediately after objects are moved. Consider using signals instead."
msgstr ""
"Возвращает [code]true[/code], если пересекает какие-либо [Area3D], в "
"противном случае возвращает [code]false[/code]. [Member "
"CollisionObject3D.collision_layer] перекрывающейся области должен быть частью "
"[member CollisionObject3D.collision_mask] этой области, чтобы быть "
"обнаруженным.\n"
"Из соображений производительности (все столкновения обрабатываются "
"одновременно) список перекрывающихся областей изменяется один раз во время "
"шага физики, а не сразу после перемещения объектов. Рассмотрите возможность "
"использования сигналов вместо этого."

msgid ""
"Returns [code]true[/code] if intersecting any [PhysicsBody3D]s or [GridMap]s, "
"otherwise returns [code]false[/code]. The overlapping body's [member "
"CollisionObject3D.collision_layer] must be part of this area's [member "
"CollisionObject3D.collision_mask] in order to be detected.\n"
"For performance reasons (collisions are all processed at the same time) the "
"list of overlapping bodies is modified once during the physics step, not "
"immediately after objects are moved. Consider using signals instead."
msgstr ""
"Возвращает [code]true[/code], если пересекает любые [PhysicsBody3D] или "
"[GridMap], в противном случае возвращает [code]false[/code]. [Member "
"CollisionObject3D.collision_layer] перекрывающегося тела должен быть частью "
"[member CollisionObject3D.collision_mask] этой области, чтобы быть "
"обнаруженным.\n"
"Из соображений производительности (все столкновения обрабатываются "
"одновременно) список перекрывающихся тел изменяется один раз во время шага "
"физики, а не сразу после перемещения объектов. Рассмотрите возможность "
"использования сигналов вместо этого."

msgid ""
"Returns [code]true[/code] if the given [Area3D] intersects or overlaps this "
"[Area3D], [code]false[/code] otherwise.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of overlaps is updated once per frame and before the "
"physics step. Consider using signals instead."
msgstr ""
"Возвращает [code]true[/code], если заданная [Area3D] пересекает или "
"перекрывает эту [Area3D], [code]false[/code] в противном случае.\n"
"[b]Примечание:[/b] Результат этого теста не появляется сразу после "
"перемещения объектов. Для производительности список перекрытий обновляется "
"один раз за кадр и перед шагом физики. Рассмотрите возможность использования "
"сигналов вместо этого."

msgid ""
"Returns [code]true[/code] if the given physics body intersects or overlaps "
"this [Area3D], [code]false[/code] otherwise.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of overlaps is updated once per frame and before the "
"physics step. Consider using signals instead.\n"
"The [param body] argument can either be a [PhysicsBody3D] or a [GridMap] "
"instance. While GridMaps are not physics body themselves, they register their "
"tiles with collision shapes as a virtual physics body."
msgstr ""
"Возвращает [code]true[/code], если указанное физическое тело пересекается или "
"перекрывается с этой областью ([Area3D]), иначе [code]false[/code]. \n"
"[b]Примечание:[/b] Результат этого теста не обновляется мгновенно после "
"перемещения объектов. Для производительности список перекрытий обновляется "
"один раз за кадр и перед шагом физики. Рекомендуется использовать сигналы.\n"
"Аргумент [param body] может быть либо [PhysicsBody3D], либо экземпляром "
"[GridMap]. Хотя GridMap сам по себе не является физическим телом, он "
"регистрирует свои тайлы с коллизиями как виртуальное физическое тело."

msgid ""
"The rate at which objects stop spinning in this area. Represents the angular "
"velocity lost per second.\n"
"See [member ProjectSettings.physics/3d/default_angular_damp] for more details "
"about damping."
msgstr ""
"Скорость, с которой объекты прекращают вращаться в этой области. Представляет "
"угловую скорость, потерянную в секунду.\n"
"Подробнее о затухании см. [member ProjectSettings.physics/3d/"
"default_angular_damp]."

msgid ""
"The area's gravity intensity (in meters per second squared). This value "
"multiplies the gravity direction. This is useful to alter the force of "
"gravity without altering its direction."
msgstr ""
"Интенсивность гравитации области (в метрах в секунду в квадрате). Это "
"значение умножает направление гравитации. Это полезно для изменения силы "
"гравитации без изменения ее направления."

msgid ""
"The distance at which the gravity strength is equal to [member gravity]. For "
"example, on a planet 100 meters in radius with a surface gravity of 4.0 m/s², "
"set the [member gravity] to 4.0 and the unit distance to 100.0. The gravity "
"will have falloff according to the inverse square law, so in the example, at "
"200 meters from the center the gravity will be 1.0 m/s² (twice the distance, "
"1/4th the gravity), at 50 meters it will be 16.0 m/s² (half the distance, 4x "
"the gravity), and so on.\n"
"The above is true only when the unit distance is a positive number. When this "
"is set to 0.0, the gravity will be constant regardless of distance."
msgstr ""
"Расстояние, на котором сила гравитации равна [member gravity]. Например, на "
"планете радиусом 100 метров с поверхностной силой гравитации 4,0 м/с² "
"установите [member gravity] на 4,0, а единичное расстояние на 100,0. Сила "
"гравитации будет падать в соответствии с законом обратных квадратов, поэтому "
"в этом примере на расстоянии 200 метров от центра сила гравитации составит "
"1,0 м/с² (в два раза больше расстояния, 1/4 силы гравитации), на расстоянии "
"50 метров она составит 16,0 м/с² (в два раза больше расстояния, 4x силы "
"гравитации) и т. д. \n"
"Вышесказанное верно только тогда, когда единичное расстояние является "
"положительным числом. Если оно установлено на 0,0, сила гравитации будет "
"постоянной независимо от расстояния."

msgid ""
"The rate at which objects stop moving in this area. Represents the linear "
"velocity lost per second.\n"
"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
"about damping."
msgstr ""
"Скорость, с которой объекты прекращают движение в этой области. Представляет "
"собой потерю линейной скорости в секунду.\n"
"Подробнее о затухании см. [member ProjectSettings.physics/3d/"
"default_linear_damp]."

msgid ""
"The area's priority. Higher priority areas are processed first. The "
"[World3D]'s physics is always processed last, after all areas."
msgstr ""
"Приоритет области. Области с более высоким приоритетом обрабатываются в "
"первую очередь. Физика [World3D] всегда обрабатывается в последнюю очередь, "
"после всех областей."

msgid ""
"The degree to which this area applies reverb to its associated audio. Ranges "
"from [code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
msgstr ""
"Степень, в которой эта область применяет реверберацию к связанному с ней "
"аудио. Диапазон от [code]0[/code] до [code]1[/code] с точностью [code]0.1[/"
"code]."

msgid "If [code]true[/code], the area applies reverb to its associated audio."
msgstr ""
"Если [code]true[/code], область применяет реверберацию (reverb) к связанному "
"с ней звуку."

msgid "The name of the reverb bus to use for this area's associated audio."
msgstr ""
"Имя шины реверберации, используемой для звука, связанного с этой областью."

msgid ""
"The degree to which this area's reverb is a uniform effect. Ranges from "
"[code]0[/code] to [code]1[/code] with [code]0.1[/code] precision."
msgstr ""
"Степень, в которой реверберация этой области является равномерным эффектом. "
"Диапазон от [code]0[/code] до [code]1[/code] с точностью [code]0.1[/code]."

msgid ""
"The exponential rate at which wind force decreases with distance from its "
"origin.\n"
"[b]Note:[/b] This wind force only applies to [SoftBody3D] nodes. Other "
"physics bodies are currently not affected by wind."
msgstr ""
"Экспоненциальная скорость, с которой сила ветра уменьшается с расстоянием от "
"ее источника.\n"
"[b]Примечание:[/b] Эта сила ветра применяется только к узлам [SoftBody3D]. "
"Другие физические тела в настоящее время не подвержены влиянию ветра."

msgid ""
"The magnitude of area-specific wind force.\n"
"[b]Note:[/b] This wind force only applies to [SoftBody3D] nodes. Other "
"physics bodies are currently not affected by wind."
msgstr ""
"Величина силы ветра, специфичной для данной области.\n"
"[b]Примечание:[/b] Эта сила ветра применяется только к узлам [SoftBody3D]. "
"Другие физические тела в настоящее время не подвержены влиянию ветра."

msgid ""
"The [Node3D] which is used to specify the direction and origin of an area-"
"specific wind force. The direction is opposite to the z-axis of the "
"[Node3D]'s local transform, and its origin is the origin of the [Node3D]'s "
"local transform.\n"
"[b]Note:[/b] This wind force only applies to [SoftBody3D] nodes. Other "
"physics bodies are currently not affected by wind."
msgstr ""
"[Node3D], который используется для указания направления и источника силы "
"ветра, специфичной для области. Направление противоположно оси z локального "
"преобразования [Node3D], а его источник является источником локального "
"преобразования [Node3D].\n"
"[b]Примечание:[/b] Эта сила ветра применяется только к узлам [SoftBody3D]. "
"Другие физические тела в настоящее время не подвержены влиянию ветра."

msgid ""
"Emitted when a [Shape3D] of the received [param area] enters a shape of this "
"area. Requires [member monitoring] to be set to [code]true[/code].\n"
"[param local_shape_index] and [param area_shape_index] contain indices of the "
"interacting shapes from this area and the other area, respectively. [param "
"area_rid] contains the [RID] of the other area. These values can be used with "
"the [PhysicsServer3D].\n"
"[b]Example:[/b] Get the [CollisionShape3D] node from the shape index:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var other_shape_owner = area.shape_find_owner(area_shape_index)\n"
"var other_shape_node = area.shape_owner_get_owner(other_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Выдается, когда [Shape3D] полученного [param area] входит в форму этой "
"области. Требует, чтобы [member monitoring] был установлен в [code]true[/"
"code].\n"
"[param local_shape_index] и [param area_shape_index] содержат индексы "
"взаимодействующих фигур из этой области и другой области соответственно. "
"[param area_rid] содержит [RID] другой области. Эти значения можно "
"использовать с [PhysicsServer3D].\n"
"[b]Пример:[/b] Получить узел [CollisionShape3D] из индекса формы:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var other_shape_owner = area.shape_find_owner(area_shape_index)\n"
"var other_shape_node = area.shape_owner_get_owner(other_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Emitted when a [Shape3D] of the received [param area] exits a shape of this "
"area. Requires [member monitoring] to be set to [code]true[/code].\n"
"See also [signal area_shape_entered]."
msgstr ""
"Выдается, когда [Shape3D] полученной [param area] выходит из формы этой "
"области. Требует, чтобы [member monitoring] был установлен на [code]true[/"
"code].\n"
"См. также [signal area_shape_entered]."

msgid ""
"Emitted when the received [param body] enters this area. [param body] can be "
"a [PhysicsBody3D] or a [GridMap]. [GridMap]s are detected if their "
"[MeshLibrary] has collision shapes configured. Requires [member monitoring] "
"to be set to [code]true[/code]."
msgstr ""
"Вызывается, когда полученное [param body] попадает в эту область. [param "
"body] может быть [PhysicsBody3D] или [GridMap]. [GridMap] обнаруживаются, "
"если в их [MeshLibrary] настроены формы столкновений. Требуется, чтобы "
"[member monitoring] был установлен на [code]true[/code]."

msgid ""
"Emitted when the received [param body] exits this area. [param body] can be a "
"[PhysicsBody3D] or a [GridMap]. [GridMap]s are detected if their "
"[MeshLibrary] has collision shapes configured. Requires [member monitoring] "
"to be set to [code]true[/code]."
msgstr ""
"Вызывается, когда полученное [param body] покидает эту область. [param body] "
"может быть [PhysicsBody3D] или [GridMap]. [GridMap] обнаруживаются, если в их "
"[MeshLibrary] настроены формы столкновений. Требуется, чтобы [member "
"monitoring] был установлен на [code]true[/code]."

msgid ""
"Emitted when a [Shape3D] of the received [param body] enters a shape of this "
"area. [param body] can be a [PhysicsBody3D] or a [GridMap]. [GridMap]s are "
"detected if their [MeshLibrary] has collision shapes configured. Requires "
"[member monitoring] to be set to [code]true[/code].\n"
"[param local_shape_index] and [param body_shape_index] contain indices of the "
"interacting shapes from this area and the interacting body, respectively. "
"[param body_rid] contains the [RID] of the body. These values can be used "
"with the [PhysicsServer3D].\n"
"[b]Example:[/b] Get the [CollisionShape3D] node from the shape index:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var body_shape_owner = body.shape_find_owner(body_shape_index)\n"
"var body_shape_node = body.shape_owner_get_owner(body_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Выдается, когда [Shape3D] полученного [param body] входит в форму этой "
"области. [param body] может быть [PhysicsBody3D] или [GridMap]. [GridMap] "
"обнаруживаются, если в их [MeshLibrary] настроены формы столкновений. "
"Требует, чтобы [member monitoring] был установлен на [code]true[/code].\n"
"[param local_shape_index] и [param body_shape_index] содержат индексы "
"взаимодействующих форм из этой области и взаимодействующего тела "
"соответственно. [param body_rid] содержит [RID] тела. Эти значения можно "
"использовать с [PhysicsServer3D].\n"
"[b]Пример:[/b] Получите узел [CollisionShape3D] из индекса формы:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var body_shape_owner = body.shape_find_owner(body_shape_index)\n"
"var body_shape_node = body.shape_owner_get_owner(body_shape_owner)\n"
"\n"
"var local_shape_owner = shape_find_owner(local_shape_index)\n"
"var local_shape_node = shape_owner_get_owner(local_shape_owner)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Emitted when a [Shape3D] of the received [param body] exits a shape of this "
"area. [param body] can be a [PhysicsBody3D] or a [GridMap]. [GridMap]s are "
"detected if their [MeshLibrary] has collision shapes configured. Requires "
"[member monitoring] to be set to [code]true[/code].\n"
"See also [signal body_shape_entered]."
msgstr ""
"Выдается, когда [Shape3D] полученного [param body] выходит из формы этой "
"области. [param body] может быть [PhysicsBody3D] или [GridMap]. [GridMap] "
"обнаруживаются, если в их [MeshLibrary] настроены формы столкновений. "
"Требуется, чтобы [member monitoring] был установлен на [code]true[/code].\n"
"См. также [signal body_shape_entered]."

msgid "A built-in data structure that holds a sequence of elements."
msgstr "Встроенная структура данных, содержащая последовательность элементов."

msgid "Constructs an empty [Array]."
msgstr "Создает пустой [Array]."

msgid ""
"Creates a typed array from the [param base] array. A typed array can only "
"contain elements of the given type, or that inherit from the given class, as "
"described by this constructor's parameters:\n"
"- [param type] is the built-in [Variant] type, as one the [enum Variant.Type] "
"constants.\n"
"- [param class_name] is the built-in class name (see [method "
"Object.get_class]).\n"
"- [param script] is the associated script. It must be a [Script] instance or "
"[code]null[/code].\n"
"If [param type] is not [constant TYPE_OBJECT], [param class_name] must be an "
"empty [StringName] and [param script] must be [code]null[/code].\n"
"[codeblock]\n"
"class_name Sword\n"
"extends Node\n"
"\n"
"class Stats:\n"
"\tpass\n"
"\n"
"func _ready():\n"
"\tvar a = Array([], TYPE_INT, \"\", null)               # Array[int]\n"
"\tvar b = Array([], TYPE_OBJECT, \"Node\", null)        # Array[Node]\n"
"\tvar c = Array([], TYPE_OBJECT, \"Node\", Sword)       # Array[Sword]\n"
"\tvar d = Array([], TYPE_OBJECT, \"RefCounted\", Stats) # Array[Stats]\n"
"[/codeblock]\n"
"The [param base] array's elements are converted when necessary. If this is "
"not possible or [param base] is already typed, this constructor fails and "
"returns an empty [Array].\n"
"In GDScript, this constructor is usually not necessary, as it is possible to "
"create a typed array through static typing:\n"
"[codeblock]\n"
"var numbers: Array[float] = []\n"
"var children: Array[Node] = [$Node, $Sprite2D, $RigidBody3D]\n"
"\n"
"var integers: Array[int] = [0.2, 4.5, -2.0]\n"
"print(integers) # Prints [0, 4, -2]\n"
"[/codeblock]"
msgstr ""
"Создает типизированный массив из массива [param base]. Типизированный массив "
"может содержать только элементы заданного типа или те, которые наследуются от "
"заданного класса, как описано в параметрах этого конструктора:\n"
"- [param type] — встроенный тип [Variant], как одна из констант [enum "
"Variant.Type].\n"
"- [param class_name] — имя встроенного класса (см. [method "
"Object.get_class]).\n"
"- [param script] — связанный скрипт. Он должен быть экземпляром [Script] или "
"[code]null[/code].\n"
"Если [param type] не является [constant TYPE_OBJECT], [param class_name] "
"должен быть пустым [StringName], а [param script] должен быть [code]null[/"
"code].\n"
"[codeblock]\n"
"class_name Sword\n"
"extends Node\n"
"\n"
"class Stats:\n"
"\tpass\n"
"\n"
"func _ready():\n"
"\tvar a = Array([], TYPE_INT, \"\", null)               # Array[int]\n"
"\tvar b = Array([], TYPE_OBJECT, \"Node\", null)        # Array[Node]\n"
"\tvar c = Array([], TYPE_OBJECT, \"Node\", Sword)       # Array[Sword]\n"
"\tvar d = Array([], TYPE_OBJECT, \"RefCounted\", Stats) # Array[Stats]\n"
"[/codeblock]\n"
"Элементы массива [param base] преобразуются при необходимости. Если это "
"невозможно или [param base] уже типизирован, этот конструктор завершается "
"ошибкой и возвращает пустой [Array].\n"
"В GDScript этот конструктор обычно не нужен, так как можно создать "
"типизированный массив посредством статической типизации:\n"
"[codeblock]\n"
"var numbers: Array[float] = []\n"
"var children: Array[Node] = [$Node, $Sprite2D, $RigidBody3D]\n"
"\n"
"var integers: Array[int] = [0.2, 4.5, -2.0]\n"
"print(integers) # Prints [0, 4, -2]\n"
"[/codeblock]"

msgid ""
"Returns the same array as [param from]. If you need a copy of the array, use "
"[method duplicate]."
msgstr ""
"Возвращает тот же массив, что и [param from]. Если вам нужна копия массива, "
"используйте [method duplicate]."

msgid "Constructs an array from a [PackedByteArray]."
msgstr "Создает массив из [PackedByteArray]."

msgid "Constructs an array from a [PackedColorArray]."
msgstr "Создает массив из [PackedColorArray]."

msgid "Constructs an array from a [PackedFloat32Array]."
msgstr "Создает массив из [Packed Float32Array]."

msgid "Constructs an array from a [PackedFloat64Array]."
msgstr "Создает массив из [PackedFloat64Array]."

msgid "Constructs an array from a [PackedInt32Array]."
msgstr "Создает массив из [PackedInt32Array]."

msgid "Constructs an array from a [PackedInt64Array]."
msgstr "Создает массив из [PackedInt64Array]."

msgid "Constructs an array from a [PackedStringArray]."
msgstr "Создает массив из [PackedStringArray]."

msgid "Constructs an array from a [PackedVector2Array]."
msgstr "Создает массив из [PackedVector2Array]."

msgid "Constructs an array from a [PackedVector3Array]."
msgstr "Создает массив из [PackedVector3Array]."

msgid "Constructs an array from a [PackedVector4Array]."
msgstr "Создает массив из [PackedVector4Array]."

msgid ""
"Calls the given [Callable] on each element in the array and returns "
"[code]true[/code] if the [Callable] returns [code]true[/code] for [i]all[/i] "
"elements in the array. If the [Callable] returns [code]false[/code] for one "
"array element or more, this method returns [code]false[/code].\n"
"The [param method] should take one [Variant] parameter (the current array "
"element) and return a [bool].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func greater_than_5(number):\n"
"\treturn number > 5\n"
"\n"
"func _ready():\n"
"\tprint([6, 10, 6].all(greater_than_5)) # Prints true (3/3 elements evaluate "
"to true).\n"
"\tprint([4, 10, 4].all(greater_than_5)) # Prints false (1/3 elements evaluate "
"to true).\n"
"\tprint([4, 4, 4].all(greater_than_5))  # Prints false (0/3 elements evaluate "
"to true).\n"
"\tprint([].all(greater_than_5))         # Prints true (0/0 elements evaluate "
"to true).\n"
"\n"
"\t# Same as the first line above, but using a lambda function.\n"
"\tprint([6, 10, 6].all(func(element): return element > 5)) # Prints true\n"
"[/gdscript]\n"
"[csharp]\n"
"private static bool GreaterThan5(int number)\n"
"{\n"
"\treturn number > 5;\n"
"}\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t// Prints True (3/3 elements evaluate to true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 6, 10, 6 }.All(GreaterThan5));\n"
"\t// Prints False (1/3 elements evaluate to true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 4, 10, 4 }.All(GreaterThan5));\n"
"\t// Prints False (0/3 elements evaluate to true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 4, 4, 4 }.All(GreaterThan5));\n"
"\t// Prints True (0/0 elements evaluate to true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { }.All(GreaterThan5));\n"
"\n"
"\t// Same as the first line above, but using a lambda function.\n"
"\tGD.Print(new Godot.Collections.Array>int< { 6, 10, 6 }.All(element => "
"element > 5)); // Prints True\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method any], [method filter], [method map] and [method reduce].\n"
"[b]Note:[/b] Unlike relying on the size of an array returned by [method "
"filter], this method will return as early as possible to improve performance "
"(especially with large arrays).\n"
"[b]Note:[/b] For an empty array, this method [url=https://en.wikipedia.org/"
"wiki/Vacuous_truth]always[/url] returns [code]true[/code]."
msgstr ""
"Вызывает заданный [Callable] для каждого элемента массива и возвращает "
"[code]true[/code], если [Callable] возвращает [code]true[/code] для [i]всех[/"
"i] элементов массива. Если [Callable] возвращает [code]false[/code] для "
"одного элемента массива или более, этот метод возвращает [code]false[/code].\n"
"Метод [param method] должен принимать один параметр [Variant] (текущий "
"элемент массива) и возвращать [bool].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func greater_than_5(number):\n"
"\treturn number > 5\n"
"\n"
"func _ready():\n"
"\tprint([6, 10, 6].all(greater_than_5)) # Выводит true (3/3 элементы "
"оцениваются как true).\n"
"\tprint([4, 10, 4].all(greater_than_5)) # Выводит false (1/3 элементы "
"оцениваются как true).\n"
"\tprint([4, 4, 4].all(greater_than_5))  # Выводит false (0/3 элементы "
"оцениваются как true).\n"
"\tprint([].all(greater_than_5))         # Выводит true (0/0 элементы "
"оцениваются как true).\n"
"\n"
"\t# То же, что и в первой строке выше, но с использованием лямбда-функции.\n"
"\tprint([6, 10, 6].all(func(element): return element > 5)) # Выводит true\n"
"[/gdscript]\n"
"[csharp]\n"
"private static bool GreaterThan5(int number)\n"
"{\n"
"\treturn number > 5;\n"
"}\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t// Выводит True (3/3 элементы оцениваются как true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 6, 10, 6 }.All(GreaterThan5));\n"
"\t// Выводит False (1/3 элементы оцениваются как true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 4, 10, 4 }.All(GreaterThan5));\n"
"\t// Выводит False (0/3 элементы оцениваются как true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { 4, 4, 4 }.All(GreaterThan5));\n"
"\t// Выводит True (0/0 элементы оцениваются как true).\n"
"\tGD.Print(new Godot.Collections.Array>int< { }.All(GreaterThan5));\n"
"\n"
"\t// То же, что и в первой строке выше, но с использованием лямбда-функции.\n"
"\tGD.Print(new Godot.Collections.Array>int< { 6, 10, 6 }.All(element => "
"element > 5)); // Выводит True\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. также [method any], [method filter], [method map] и [method reduce].\n"
"[b]Примечание:[/b] В отличие от использования размера массива, возвращаемого "
"[method filter], этот метод вернет управление как можно раньше, чтобы "
"повысить производительность (особенно с большими массивами).\n"
"[b]Примечание:[/b] Для пустого массива этот метод [url=https://"
"en.wikipedia.org/wiki/Vacuous_truth]всегда[/url] возвращает [code]true[/code]."

msgid ""
"Calls the given [Callable] on each element in the array and returns "
"[code]true[/code] if the [Callable] returns [code]true[/code] for [i]one or "
"more[/i] elements in the array. If the [Callable] returns [code]false[/code] "
"for all elements in the array, this method returns [code]false[/code].\n"
"The [param method] should take one [Variant] parameter (the current array "
"element) and return a [bool].\n"
"[codeblock]\n"
"func greater_than_5(number):\n"
"\treturn number > 5\n"
"\n"
"func _ready():\n"
"\tprint([6, 10, 6].any(greater_than_5)) # Prints true (3 elements evaluate to "
"true).\n"
"\tprint([4, 10, 4].any(greater_than_5)) # Prints true (1 elements evaluate to "
"true).\n"
"\tprint([4, 4, 4].any(greater_than_5))  # Prints false (0 elements evaluate "
"to true).\n"
"\tprint([].any(greater_than_5))         # Prints false (0 elements evaluate "
"to true).\n"
"\n"
"\t# Same as the first line above, but using a lambda function.\n"
"\tprint([6, 10, 6].any(func(number): return number > 5)) # Prints true\n"
"[/codeblock]\n"
"See also [method all], [method filter], [method map] and [method reduce].\n"
"[b]Note:[/b] Unlike relying on the size of an array returned by [method "
"filter], this method will return as early as possible to improve performance "
"(especially with large arrays).\n"
"[b]Note:[/b] For an empty array, this method always returns [code]false[/"
"code]."
msgstr ""
"Вызывает заданный [Callable] для каждого элемента в массиве и возвращает "
"[code]true[/code], если [Callable] возвращает [code]true[/code] для [i]одного "
"или более[/i] элементов в массиве. Если [Callable] возвращает [code]false[/"
"code] для всех элементов в массиве, этот метод возвращает [code]false[/"
"code].\n"
"Метод [param method] должен принимать один параметр [Variant] (текущий "
"элемент массива) и возвращать [bool].\n"
"[codeblock]\n"
"func greater_than_5(number):\n"
"\treturn number > 5\n"
"\n"
"func _ready():\n"
"\tprint([6, 10, 6].any(greater_than_5)) # Выводит true (3 элементы "
"оцениваются как true).\n"
"\tprint([4, 10, 4].any(greater_than_5)) # Выводит true (1 элементы "
"оцениваются как true).\n"
"\tprint([4, 4, 4].any(greater_than_5))  # Выводит false (0 элементы "
"оцениваются как true).\n"
"\tprint([].any(greater_than_5))         # Выводит false (0 элементы "
"оцениваются как true).\n"
"\n"
"\t# То же, что и в первой строке выше, но с использованием лямбда-функции.\n"
"\tprint([6, 10, 6].any(func(number): return number > 5)) # Выводит true\n"
"[/codeblock]\n"
"См. также [method all], [method filter], [method map] и [method reduce].\n"
"[b]Примечание:[/b] В отличие от использования размера массива, возвращаемого "
"[method filter], этот метод вернет управление как можно раньше, чтобы "
"повысить производительность (особенно с большими массивами).\n"
"[b]Примечание:[/b] Для пустого массива этот метод всегда возвращает "
"[code]false[/code]."

msgid ""
"Appends [param value] at the end of the array (alias of [method push_back])."
msgstr "Добавляет [param value] в конец массива (аналог [method push_back])."

msgid ""
"Appends another [param array] at the end of this array.\n"
"[codeblock]\n"
"var numbers = [1, 2, 3]\n"
"var extra = [4, 5, 6]\n"
"numbers.append_array(extra)\n"
"print(numbers) # Prints [1, 2, 3, 4, 5, 6]\n"
"[/codeblock]"
msgstr ""
"Добавляет еще один [param array] в конец этого массива.\n"
"[codeblock]\n"
"var numbers = [1, 2, 3]\n"
"var extra = [4, 5, 6]\n"
"numbers.append_array(extra)\n"
"print(numbers) # Prints [1, 2, 3, 4, 5, 6]\n"
"[/codeblock]"

msgid ""
"Assigns elements of another [param array] into the array. Resizes the array "
"to match [param array]. Performs type conversions if the array is typed."
msgstr ""
"Назначает элементы другого [param array] в массив. Изменяет размер массива "
"для соответствия [param array]. Выполняет преобразования типов, если массив "
"типизирован."

msgid ""
"Returns the last element of the array. If the array is empty, fails and "
"returns [code]null[/code]. See also [method front].\n"
"[b]Note:[/b] Unlike with the [code][][/code] operator ([code]array[-1][/"
"code]), an error is generated without stopping project execution."
msgstr ""
"Возвращает последний элемент массива. Если массив пуст, происходит сбой и "
"возвращается [code]null[/code]. См. также [method front].\n"
"[b]Примечание:[/b] В отличие от оператора [code][][/code] ([code]array[-1][/"
"code]), ошибка генерируется без остановки выполнения проекта."

msgid ""
"Returns the index of [param value] in the sorted array. If it cannot be "
"found, returns where [param value] should be inserted to keep the array "
"sorted. The algorithm used is [url=https://en.wikipedia.org/wiki/"
"Binary_search_algorithm]binary search[/url].\n"
"If [param before] is [code]true[/code] (as by default), the returned index "
"comes before all existing elements equal to [param value] in the array.\n"
"[codeblock]\n"
"var numbers = [2, 4, 8, 10]\n"
"var idx = numbers.bsearch(7)\n"
"\n"
"numbers.insert(idx, 7)\n"
"print(numbers) # Prints [2, 4, 7, 8, 10]\n"
"\n"
"var fruits = [\"Apple\", \"Lemon\", \"Lemon\", \"Orange\"]\n"
"print(fruits.bsearch(\"Lemon\", true))  # Prints 1, points at the first "
"\"Lemon\".\n"
"print(fruits.bsearch(\"Lemon\", false)) # Prints 3, points at \"Orange\".\n"
"[/codeblock]\n"
"[b]Note:[/b] Calling [method bsearch] on an [i]unsorted[/i] array will result "
"in unexpected behavior. Use [method sort] before calling this method."
msgstr ""
"Возвращает индекс [param value] в отсортированном массиве. Если его не "
"удается найти, возвращает место, где следует вставить [param value], чтобы "
"сохранить массив отсортированным. Используемый алгоритм — [url=https://"
"en.wikipedia.org/wiki/Binary_search_algorithm]бинарный поиск[/url].\n"
"Если [param before] равен [code]true[/code] (как по умолчанию), возвращаемый "
"индекс предшествует всем существующим элементам, равным [param value] в "
"массиве.\n"
"[codeblock]\n"
"var numbers = [2, 4, 8, 10]\n"
"var idx = numbers.bsearch(7)\n"
"\n"
"numbers.insert(idx, 7)\n"
"print(numbers) # Prints [2, 4, 7, 8, 10]\n"
"\n"
"var fruits = [\"Apple\", \"Lemon\", \"Lemon\", \"Orange\"]\n"
"print(fruits.bsearch(\"Lemon\", true))  # Печатает 1, указывает на первый "
"\"Lemon\".\n"
"print(fruits.bsearch(\"Lemon\", false)) # Печатает 3, указывают на "
"\"Lemon\".\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Вызов [method bsearch] для [i]unsorted (несортированного)[/"
"i] массива приведет к неожиданному поведению. Используйте [method sort] перед "
"вызовом этого метода."

msgid ""
"Returns the index of [param value] in the sorted array. If it cannot be "
"found, returns where [param value] should be inserted to keep the array "
"sorted (using [param func] for the comparisons). The algorithm used is "
"[url=https://en.wikipedia.org/wiki/Binary_search_algorithm]binary search[/"
"url].\n"
"Similar to [method sort_custom], [param func] is called as many times as "
"necessary, receiving one array element and [param value] as arguments. The "
"function should return [code]true[/code] if the array element should be "
"[i]behind[/i] [param value], otherwise it should return [code]false[/code].\n"
"If [param before] is [code]true[/code] (as by default), the returned index "
"comes before all existing elements equal to [param value] in the array.\n"
"[codeblock]\n"
"func sort_by_amount(a, b):\n"
"\tif a[1] < b[1]:\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _ready():\n"
"\tvar my_items = [[\"Tomato\", 2], [\"Kiwi\", 5], [\"Rice\", 9]]\n"
"\n"
"\tvar apple = [\"Apple\", 5]\n"
"\t# \"Apple\" is inserted before \"Kiwi\".\n"
"\tmy_items.insert(my_items.bsearch_custom(apple, sort_by_amount, true), "
"apple)\n"
"\n"
"\tvar banana = [\"Banana\", 5]\n"
"\t# \"Banana\" is inserted after \"Kiwi\".\n"
"\tmy_items.insert(my_items.bsearch_custom(banana, sort_by_amount, false), "
"banana)\n"
"\n"
"\t# Prints [[\"Tomato\", 2], [\"Apple\", 5], [\"Kiwi\", 5], [\"Banana\", 5], "
"[\"Rice\", 9]]\n"
"\tprint(my_items)\n"
"[/codeblock]\n"
"[b]Note:[/b] Calling [method bsearch_custom] on an [i]unsorted[/i] array will "
"result in unexpected behavior. Use [method sort_custom] with [param func] "
"before calling this method."
msgstr ""
"Возвращает индекс [param value] в отсортированном массиве. Если его не "
"удается найти, возвращает, куда следует вставить [param value], чтобы "
"сохранить массив отсортированным (используя [param func] для сравнений). "
"Используемый алгоритм — [url=https://en.wikipedia.org/wiki/"
"Binary_search_algorithm]бинарный поиск[/url].\n"
"Подобно [method sort_custom], [param func] вызывается столько раз, сколько "
"необходимо, получая один элемент массива и [param value] в качестве "
"аргументов. Функция должна возвращать [code]true[/code], если элемент массива "
"должен быть [i]behind (позади)[/i] [param value], в противном случае она "
"должна возвращать [code]false[/code].\n"
"Если [param before] равен [code]true[/code] (как по умолчанию), возвращаемый "
"индекс предшествует всем существующим элементам, равным [param value] в "
"массиве.\n"
"[codeblock]\n"
"func sort_by_amount(a, b):\n"
"\tif a[1] < b[1]:\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _ready():\n"
"\tvar my_items = [[\"Tomato\", 2], [\"Kiwi\", 5], [\"Rice\", 9]]\n"
"\n"
"\tvar apple = [\"Apple\", 5]\n"
"\t# \"Apple\" вставляется перед \"Kiwi\".\n"
"\tmy_items.insert(my_items.bsearch_custom(apple, sort_by_amount, true), "
"apple)\n"
"\n"
"\tvar banana = [\"Banana\", 5]\n"
"\t# \"Banana\" вставляется после \"Kiwi\".\n"
"\tmy_items.insert(my_items.bsearch_custom(banana, sort_by_amount, false), "
"banana)\n"
"\n"
"\t# Выводит [[\"Tomato\", 2], [\"Apple\", 5], [\"Kiwi\", 5], [\"Banana\", 5], "
"[\"Rice\", 9]]\n"
"\tprint(my_items)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Вызов [method bsearch_custom] для [i]несортированного[/i] "
"массива приведет к неожиданному поведению. Используйте [method sort_custom] с "
"[param func] перед вызовом этого метода."

msgid ""
"Removes all elements from the array. This is equivalent to using [method "
"resize] with a size of [code]0[/code]."
msgstr ""
"Удаляет все элементы из массива. Это эквивалентно использованию [method "
"resize] с размером [code]0[/code]."

msgid ""
"Returns the number of times an element is in the array.\n"
"To count how many elements in an array satisfy a condition, see [method "
"reduce]."
msgstr ""
"Возвращает количество раз, когда элемент встречается в массиве.\n"
"Чтобы подсчитать, сколько элементов в массиве удовлетворяют условию, см. "
"[method reduce]."

msgid ""
"Returns a new copy of the array.\n"
"By default, a [b]shallow[/b] copy is returned: all nested [Array], "
"[Dictionary], and [Resource] elements are shared with the original array. "
"Modifying any of those in one array will also affect them in the other.\n"
"If [param deep] is [code]true[/code], a [b]deep[/b] copy is returned: all "
"nested arrays and dictionaries are also duplicated (recursively). Any "
"[Resource] is still shared with the original array, though."
msgstr ""
"Возвращает новую копию массива.\n"
"По умолчанию возвращается [b]неглубокая[/b] копия: все вложенные элементы "
"[Array], [Dictionary] и [Resource] используются совместно с исходным "
"массивом. Изменение любого из них в одном массиве также повлияет на них в "
"другом.\n"
"Если [param deep] равен [code]true[/code], возвращается [b]глубокая[/b] "
"копия: все вложенные массивы и словари также дублируются (рекурсивно). Однако "
"любой [Resource] по-прежнему используется совместно с исходным массивом."

msgid ""
"Duplicates this array, deeply, like [method duplicate][code](true)[/code], "
"with extra control over how subresources are handled.\n"
"[param deep_subresources_mode] must be one of the values from [enum "
"Resource.DeepDuplicateMode]. By default, only internal resources will be "
"duplicated (recursively)."
msgstr ""
"Глубоко дублирует этот массив, подобно [method duplicate][code](true)[/code], "
"с дополнительным контролем над обработкой подресурсов.\n"
"[param deep_subresources_mode] должен быть одним из значений [enum "
"Resource.DeepDuplicateMode]. По умолчанию рекурсивно дублируются только "
"внутренние ресурсы."

msgid ""
"Finds and removes the first occurrence of [param value] from the array. If "
"[param value] does not exist in the array, nothing happens. To remove an "
"element by index, use [method remove_at] instead.\n"
"[b]Note:[/b] This method shifts every element's index after the removed "
"[param value] back, which may have a noticeable performance cost, especially "
"on larger arrays.\n"
"[b]Note:[/b] Erasing elements while iterating over arrays is [b]not[/b] "
"supported and will result in unpredictable behavior."
msgstr ""
"Находит и удаляет первое вхождение [param value] из массива. Если [param "
"value] отсутствует в массиве, ничего не происходит. Чтобы удалить элемент по "
"индексу, используйте [method remove_at].\n"
"[b]Примечание:[/b] Этот метод сдвигает индекс каждого элемента после "
"удаленного [param value] назад, что может иметь заметные издержки "
"производительности, особенно для больших массивов.\n"
"[b]Примечание:[/b] Удаление элементов при итерации по массивам [b]не[/b] "
"поддерживается и приведет к непредсказуемому поведению."

msgid ""
"Assigns the given [param value] to all elements in the array.\n"
"This method can often be combined with [method resize] to create an array "
"with a given size and initialized elements:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array = []\n"
"array.resize(5)\n"
"array.fill(2)\n"
"print(array) # Prints [2, 2, 2, 2, 2]\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array array = [];\n"
"array.Resize(5);\n"
"array.Fill(2);\n"
"GD.Print(array); // Prints [2, 2, 2, 2, 2]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If [param value] is a [Variant] passed by reference ([Object]-"
"derived, [Array], [Dictionary], etc.), the array will be filled with "
"references to the same [param value], which are not duplicates."
msgstr ""
"Назначает заданное [param value] всем элементам массива. \n"
"Этот метод часто можно комбинировать с [method resize] для создания массива с "
"заданным размером и инициализированными элементами:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array = []\n"
"array.resize(5)\n"
"array.fill(2)\n"
"print(array) # Prints [2, 2, 2, 2, 2]\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array array = [];\n"
"array.Resize(5);\n"
"array.Fill(2);\n"
"GD.Print(array); // Prints [2, 2, 2, 2, 2]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Если [param value] является [Variant], переданным по "
"ссылке (производным от [Object], [Array], [Dictionary] и т. д.), массив будет "
"заполнен ссылками на одно и то же [param value], которые не являются "
"дубликатами."

msgid ""
"Calls the given [Callable] on each element in the array and returns a new, "
"filtered [Array].\n"
"The [param method] receives one of the array elements as an argument, and "
"should return [code]true[/code] to add the element to the filtered array, or "
"[code]false[/code] to exclude it.\n"
"[codeblock]\n"
"func is_even(number):\n"
"\treturn number % 2 == 0\n"
"\n"
"func _ready():\n"
"\tprint([1, 4, 5, 8].filter(is_even)) # Prints [4, 8]\n"
"\n"
"\t# Same as above, but using a lambda function.\n"
"\tprint([1, 4, 5, 8].filter(func(number): return number % 2 == 0))\n"
"[/codeblock]\n"
"See also [method any], [method all], [method map] and [method reduce]."
msgstr ""
"Вызывает заданный [Callable] для каждого элемента в массиве и возвращает "
"новый, отфильтрованный [Array].\n"
"Метод [param method] получает один из элементов массива в качестве аргумента "
"и должен возвращать [code]true[/code] для добавления элемента в "
"отфильтрованный массив или [code]false[/code] для его исключения.\n"
"[codeblock]\n"
"func is_even(number):\n"
"\treturn number % 2 == 0\n"
"\n"
"func _ready():\n"
"\tprint([1, 4, 5, 8].filter(is_even)) # Выводит [4, 8]\n"
"\n"
"\t# То же, что и выше, но с использованием лямбда-функции.\n"
"\tprint([1, 4, 5, 8].filter(func(number): return number % 2 == 0))\n"
"[/codeblock]\n"
"См. также [method any], [method all], [method map] и [method reduce]."

msgid ""
"Returns the index of the [b]first[/b] occurrence of [param what] in this "
"array, or [code]-1[/code] if there are none. The search's start can be "
"specified with [param from], continuing to the end of the array.\n"
"[b]Note:[/b] If you just want to know whether the array contains [param "
"what], use [method has] ([code]Contains[/code] in C#). In GDScript, you may "
"also use the [code]in[/code] operator.\n"
"[b]Note:[/b] For performance reasons, the search is affected by [param "
"what]'s [enum Variant.Type]. For example, [code]7[/code] ([int]) and "
"[code]7.0[/code] ([float]) are not considered equal for this method."
msgstr ""
"Возвращает индекс [b]first (первого)[/b] вхождения [param what] в этом "
"массиве или [code]-1[/code], если их нет. Начало поиска можно указать с "
"помощью [param from], продолжая до конца массива.\n"
"[b]Примечание:[/b] Если вы просто хотите узнать, содержит ли массив [param "
"what], используйте [method has] ([code]Contains[/code] в C#). В GDScript вы "
"также можете использовать оператор [code]in[/code].\n"
"[b]Примечание:[/b] Из соображений производительности на поиск влияет [enum "
"Variant.Type] [param what]. Например, [code]7[/code] ([int]) и [code]7.0[/"
"code] ([float]) не считаются равными для этого метода."

msgid ""
"Returns the index of the [b]first[/b] element in the array that causes [param "
"method] to return [code]true[/code], or [code]-1[/code] if there are none. "
"The search's start can be specified with [param from], continuing to the end "
"of the array.\n"
"[param method] is a callable that takes an element of the array, and returns "
"a [bool].\n"
"[b]Note:[/b] If you just want to know whether the array contains [i]anything[/"
"i] that satisfies [param method], use [method any].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func is_even(number):\n"
"\treturn number % 2 == 0\n"
"\n"
"func _ready():\n"
"\tprint([1, 3, 4, 7].find_custom(is_even.bind())) # Prints 2\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Возвращает индекс [b]первого[/b] элемента в массиве, который заставляет "
"[param method] вернуть [code]true[/code] или [code]-1[/code], если их нет. "
"Начало поиска можно указать с помощью [param from], продолжая до конца "
"массива.\n"
"[param method] — это вызываемый объект, который принимает элемент массива и "
"возвращает [bool].\n"
"[b]Примечание:[/b] Если вы просто хотите узнать, содержит ли массив [i]что-"
"либо[/i], удовлетворяющее [param method], используйте [method any].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func is_even(number):\n"
"\treturn number % 2 == 0\n"
"\n"
"func _ready():\n"
"\tprint([1, 3, 4, 7].find_custom(is_even.bind())) # Prints 2\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Returns the first element of the array. If the array is empty, fails and "
"returns [code]null[/code]. See also [method back].\n"
"[b]Note:[/b] Unlike with the [code][][/code] operator ([code]array[0][/"
"code]), an error is generated without stopping project execution."
msgstr ""
"Возвращает первый элемент массива. Если массив пуст, происходит сбой и "
"возвращается [code]null[/code]. См. также [method back].\n"
"[b]Примечание:[/b] В отличие от оператора [code][][/code] ([code]array[0][/"
"code]), ошибка генерируется без остановки выполнения проекта."

msgid ""
"Returns the element at the given [param index] in the array. If [param index] "
"out-of-bounds or negative, this method fails and returns [code]null[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Возвращает элемент по указанному [param index] в массиве. Если [param index] "
"выходит за границы или отрицателен, этот метод завершается ошибкой и "
"возвращает [code]null[/code].\n"
"Этот метод похож (но не идентичен) оператору [code][][/code]. В частности, "
"когда этот метод завершается ошибкой, он не приостанавливает выполнение "
"проекта, если запущен из редактора."

msgid ""
"Returns the built-in [Variant] type of the typed array as a [enum "
"Variant.Type] constant. If the array is not typed, returns [constant "
"TYPE_NIL]. See also [method is_typed]."
msgstr ""
"Возвращает встроенный тип [Variant] типизированного массива как константу "
"[enum Variant.Type]. Если массив не типизирован, возвращает [constant "
"TYPE_NIL]. См. также [method is_typed]."

msgid ""
"Returns the [b]built-in[/b] class name of the typed array, if the built-in "
"[Variant] type [constant TYPE_OBJECT]. Otherwise, returns an empty "
"[StringName]. See also [method is_typed] and [method Object.get_class]."
msgstr ""
"Возвращает [b]встроенное[/b] имя класса типизированного массива, если "
"встроенный [Variant] тип [constant TYPE_OBJECT]. В противном случае "
"возвращает пустой [StringName]. См. также [method is_typed] и [method "
"Object.get_class]."

msgid ""
"Returns the [Script] instance associated with this typed array, or "
"[code]null[/code] if it does not exist. See also [method is_typed]."
msgstr ""
"Возвращает экземпляр [Script], связанный с этим типизированным массивом, или "
"[code]null[/code], если он не существует. См. также [method is_typed]."

msgid ""
"Returns [code]true[/code] if the array contains the given [param value].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print([\"inside\", 7].has(\"inside\"))  # Prints true\n"
"print([\"inside\", 7].has(\"outside\")) # Prints false\n"
"print([\"inside\", 7].has(7))         # Prints true\n"
"print([\"inside\", 7].has(\"7\"))       # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array arr = [\"inside\", 7];\n"
"// By C# convention, this method is renamed to `Contains`.\n"
"GD.Print(arr.Contains(\"inside\"));  // Prints True\n"
"GD.Print(arr.Contains(\"outside\")); // Prints False\n"
"GD.Print(arr.Contains(7));         // Prints True\n"
"GD.Print(arr.Contains(\"7\"));       // Prints False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In GDScript, this is equivalent to the [code]in[/code] operator:\n"
"[codeblock]\n"
"if 4 in [2, 4, 6, 8]:\n"
"\tprint(\"4 is here!\") # Will be printed.\n"
"[/codeblock]\n"
"[b]Note:[/b] For performance reasons, the search is affected by the [param "
"value]'s [enum Variant.Type]. For example, [code]7[/code] ([int]) and "
"[code]7.0[/code] ([float]) are not considered equal for this method."
msgstr ""
"Возвращает [code]true[/code], если массив содержит указанное [param value].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print([\"inside\", 7].has(\"inside\"))  # Выводит true\n"
"print([\"inside\", 7].has(\"outside\")) # Выводит false\n"
"print([\"inside\", 7].has(7))         # Выводит true\n"
"print([\"inside\", 7].has(\"7\"))       # Выводит false\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array arr = [\"inside\", 7];\n"
"// По соглашению C# этот метод переименован в `Contains`.\n"
"GD.Print(arr.Contains(\"inside\"));  // Выводит True\n"
"GD.Print(arr.Contains(\"outside\")); // Выводит False\n"
"GD.Print(arr.Contains(7));         // Выводит True\n"
"GD.Print(arr.Contains(\"7\"));       // Выводит False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"В GDScript это эквивалентно оператору [code]in[/code]:\n"
"[codeblock]\n"
"if 4 in [2, 4, 6, 8]:\n"
"\tprint(\"4 уже здесь!\") # Будет напечатано.\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Из соображений производительности на поиск влияет [param "
"value] [enum Variant.Type]. Например, [code]7[/code] ([int]) и [code]7.0[/"
"code] ([float]) не считаются равными для этого метода."

msgid ""
"Returns a hashed 32-bit integer value representing the array and its "
"contents.\n"
"[b]Note:[/b] Arrays with equal hash values are [i]not[/i] guaranteed to be "
"the same, as a result of hash collisions. On the countrary, arrays with "
"different hash values are guaranteed to be different."
msgstr ""
"Возвращает хешированное 32-битное целое значение, представляющее массив и его "
"содержимое.\n"
"[b]Примечание:[/b] Массивы с одинаковыми значениями хэша [i]не[/i] "
"гарантированно будут одинаковыми из-за коллизий хэшей. В стране массивы с "
"разными значениями хэшей гарантированно будут разными."

msgid ""
"Inserts a new element ([param value]) at a given index ([param position]) in "
"the array. [param position] should be between [code]0[/code] and the array's "
"[method size]. If negative, [param position] is considered relative to the "
"end of the array.\n"
"Returns [constant OK] on success, or one of the other [enum Error] constants "
"if this method fails.\n"
"[b]Note:[/b] Every element's index after [param position] needs to be shifted "
"forward, which may have a noticeable performance cost, especially on larger "
"arrays."
msgstr ""
"Вставляет новый элемент ([param value]) по указанному индексу ([param "
"position]) в массиве. [param position] должен быть между [code]0[/code] и "
"[method size] массива. Если отрицательно, [param position] считается "
"относительно конца массива.\n"
"Возвращает [constant OK] в случае успеха или одну из других констант [enum "
"Error], если этот метод не выполняется.\n"
"[b]Примечание:[/b] Индекс каждого элемента после [param position] необходимо "
"сместить вперед, что может иметь заметные потери производительности, особенно "
"в больших массивах."

msgid ""
"Returns [code]true[/code] if the array is empty ([code][][/code]). See also "
"[method size]."
msgstr ""
"Возвращает [code]true[/code], если массив пуст ([code][][/code]). См. также "
"[method size]."

msgid ""
"Returns [code]true[/code] if the array is read-only. See [method "
"make_read_only].\n"
"In GDScript, arrays are automatically read-only if declared with the "
"[code]const[/code] keyword."
msgstr ""
"Возвращает [code]true[/code], если массив доступен только для чтения. См. "
"[method make_read_only].\n"
"В GDScript массивы автоматически доступны только для чтения, если объявлены с "
"ключевым словом [code]const[/code]."

msgid ""
"Returns [code]true[/code] if this array is typed the same as the given [param "
"array]. See also [method is_typed]."
msgstr ""
"Возвращает [code]true[/code], если этот массив типизирован так же, как "
"заданный [param array]. См. также [method is_typed]."

msgid ""
"Returns [code]true[/code] if the array is typed. Typed arrays can only "
"contain elements of a specific type, as defined by the typed array "
"constructor. The methods of a typed array are still expected to return a "
"generic [Variant].\n"
"In GDScript, it is possible to define a typed array with static typing:\n"
"[codeblock]\n"
"var numbers: Array[float] = [0.2, 4.2, -2.0]\n"
"print(numbers.is_typed()) # Prints true\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]true[/code], если массив типизирован. Типизированные массивы "
"могут содержать только элементы определенного типа, как определено "
"конструктором типизированного массива. Методы типизированного массива по-"
"прежнему должны возвращать обобщенный [Variant].\n"
"В GDScript можно определить типизированный массив со статической типизацией:\n"
"[codeblock]\n"
"var numbers: Array[float] = [0.2, 4.2, -2.0]\n"
"print(numbers.is_typed()) # Prints true\n"
"[/codeblock]"

msgid ""
"Makes the array read-only. The array's elements cannot be overridden with "
"different values, and their order cannot change. Does not apply to nested "
"elements, such as dictionaries.\n"
"In GDScript, arrays are automatically read-only if declared with the "
"[code]const[/code] keyword."
msgstr ""
"Делает массив доступным только для чтения. Элементы массива не могут быть "
"переопределены другими значениями, и их порядок не может быть изменен. Не "
"применяется к вложенным элементам, таким как словари.\n"
"В GDScript массивы автоматически доступны только для чтения, если объявлены с "
"ключевым словом [code]const[/code]."

msgid ""
"Calls the given [Callable] for each element in the array and returns a new "
"array filled with values returned by the [param method].\n"
"The [param method] should take one [Variant] parameter (the current array "
"element) and can return any [Variant].\n"
"[codeblock]\n"
"func double(number):\n"
"\treturn number * 2\n"
"\n"
"func _ready():\n"
"\tprint([1, 2, 3].map(double)) # Prints [2, 4, 6]\n"
"\n"
"\t# Same as above, but using a lambda function.\n"
"\tprint([1, 2, 3].map(func(element): return element * 2))\n"
"[/codeblock]\n"
"See also [method filter], [method reduce], [method any] and [method all]."
msgstr ""
"Вызывает заданный [Callable] для каждого элемента в массиве и возвращает "
"новый массив, заполненный значениями, возвращаемыми [param method]. \n"
"[param method] должен принимать один параметр [Variant] (текущий элемент "
"массива) и может возвращать любой [Variant].\n"
"[codeblock]\n"
"func double(number):\n"
"\treturn number * 2\n"
"\n"
"func _ready():\n"
"\tprint([1, 2, 3].map(double)) # Prints [2, 4, 6]\n"
"\n"
"\t# То же, что и выше, но с использованием лямбда-функции.\n"
"\tprint([1, 2, 3].map(func(element): return element * 2))\n"
"[/codeblock]\n"
"См. также [method filter], [method reduce], [method any] и [method all]."

msgid ""
"Returns the maximum value contained in the array, if all elements can be "
"compared. Otherwise, returns [code]null[/code]. See also [method min].\n"
"To find the maximum value using a custom comparator, you can use [method "
"reduce]."
msgstr ""
"Возвращает максимальное значение, содержащееся в массиве, если все элементы "
"можно сравнить. В противном случае возвращает [code]null[/code]. См. также "
"[method min].\n"
"Чтобы найти максимальное значение с помощью пользовательского компаратора, "
"можно использовать [method reduce]."

msgid ""
"Returns the minimum value contained in the array, if all elements can be "
"compared. Otherwise, returns [code]null[/code]. See also [method max]."
msgstr ""
"Возвращает минимальное значение, содержащееся в массиве, если все элементы "
"можно сравнить. В противном случае возвращает [code]null[/code]. См. также "
"[method max]."

msgid ""
"Returns a random element from the array. Generates an error and returns "
"[code]null[/code] if the array is empty.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# May print 1, 2, 3.25, or \"Hi\".\n"
"print([1, 2, 3.25, \"Hi\"].pick_random())\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array array = [1, 2, 3.25f, \"Hi\"];\n"
"GD.Print(array.PickRandom()); // May print 1, 2, 3.25, or \"Hi\".\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Like many similar functions in the engine (such as [method "
"@GlobalScope.randi] or [method shuffle]), this method uses a common, global "
"random seed. To get a predictable outcome from this method, see [method "
"@GlobalScope.seed]."
msgstr ""
"Возвращает случайный элемент из массива. Генерирует ошибку и возвращает "
"[code]null[/code], если массив пуст.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Может печатать 1, 2, 3.25 или \"Привет\".\n"
"print([1, 2, 3.25, \"Привет\"].pick_random())\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array array = [1, 2, 3.25f, \"Привет\"];\n"
"GD.Print(array.PickRandom()); // Может печатать 1, 2, 3.25 или \"Привет\".\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Как и многие подобные функции в движке (например, [method "
"@GlobalScope.randi] или [method shuffle]), этот метод использует общее "
"глобальное случайное начальное число. Чтобы получить предсказуемый результат "
"от этого метода, см. [method @GlobalScope.seed]."

msgid ""
"Removes and returns the element of the array at index [param position]. If "
"negative, [param position] is considered relative to the end of the array. "
"Returns [code]null[/code] if the array is empty. If [param position] is out "
"of bounds, an error message is also generated.\n"
"[b]Note:[/b] This method shifts every element's index after [param position] "
"back, which may have a noticeable performance cost, especially on larger "
"arrays."
msgstr ""
"Удаляет и возвращает элемент массива с индексом [param position]. Если "
"отрицательно, [param position] считается относительно конца массива. "
"Возвращает [code]null[/code], если массив пуст. Если [param position] выходит "
"за пределы, также генерируется сообщение об ошибке.\n"
"[b]Примечание:[/b] Этот метод сдвигает индекс каждого элемента после [param "
"position] назад, что может иметь заметные потери производительности, особенно "
"в больших массивах."

msgid ""
"Removes and returns the last element of the array. Returns [code]null[/code] "
"if the array is empty, without generating an error. See also [method "
"pop_front]."
msgstr ""
"Удаляет и возвращает последний элемент массива. Возвращает [code]null[/code], "
"если массив пуст, без генерации ошибки. См. также [method pop_front]."

msgid ""
"Removes and returns the first element of the array. Returns [code]null[/code] "
"if the array is empty, without generating an error. See also [method "
"pop_back].\n"
"[b]Note:[/b] This method shifts every other element's index back, which may "
"have a noticeable performance cost, especially on larger arrays."
msgstr ""
"Удаляет и возвращает первый элемент массива. Возвращает [code]null[/code], "
"если массив пуст, без генерации ошибки. См. также [method pop_back].\n"
"[b]Примечание:[/b] Этот метод сдвигает индекс каждого другого элемента назад, "
"что может иметь заметные издержки производительности, особенно в больших "
"массивах."

msgid ""
"Appends an element at the end of the array. See also [method push_front]."
msgstr "Добавляет элемент в конец массива. См. также [method push_front]."

msgid ""
"Adds an element at the beginning of the array. See also [method push_back].\n"
"[b]Note:[/b] This method shifts every other element's index forward, which "
"may have a noticeable performance cost, especially on larger arrays."
msgstr ""
"Добавляет элемент в начало массива. См. также [method push_back].\n"
"[b]Примечание:[/b] Этот метод сдвигает индекс каждого другого элемента "
"вперед, что может иметь заметные издержки производительности, особенно в "
"больших массивах."

msgid ""
"Calls the given [Callable] for each element in array, accumulates the result "
"in [param accum], then returns it.\n"
"The [param method] takes two arguments: the current value of [param accum] "
"and the current array element. If [param accum] is [code]null[/code] (as by "
"default), the iteration will start from the second element, with the first "
"one used as initial value of [param accum].\n"
"[codeblock]\n"
"func sum(accum, number):\n"
"\treturn accum + number\n"
"\n"
"func _ready():\n"
"\tprint([1, 2, 3].reduce(sum, 0))  # Prints 6\n"
"\tprint([1, 2, 3].reduce(sum, 10)) # Prints 16\n"
"\n"
"\t# Same as above, but using a lambda function.\n"
"\tprint([1, 2, 3].reduce(func(accum, number): return accum + number, 10))\n"
"[/codeblock]\n"
"If [method max] is not desirable, this method may also be used to implement a "
"custom comparator:\n"
"[codeblock]\n"
"func _ready():\n"
"\tvar arr = [Vector2i(5, 0), Vector2i(3, 4), Vector2i(1, 2)]\n"
"\n"
"\tvar longest_vec = arr.reduce(func(max, vec): return vec if "
"is_length_greater(vec, max) else max)\n"
"\tprint(longest_vec) # Prints (3, 4)\n"
"\n"
"func is_length_greater(a, b):\n"
"\treturn a.length() > b.length()\n"
"[/codeblock]\n"
"This method can also be used to count how many elements in an array satisfy a "
"certain condition, similar to [method count]:\n"
"[codeblock]\n"
"func is_even(number):\n"
"\treturn number % 2 == 0\n"
"\n"
"func _ready():\n"
"\tvar arr = [1, 2, 3, 4, 5]\n"
"\t# If the current element is even, increment count, otherwise leave count "
"the same.\n"
"\tvar even_count = arr.reduce(func(count, next): return count + 1 if "
"is_even(next) else count, 0)\n"
"\tprint(even_count) # Prints 2\n"
"[/codeblock]\n"
"See also [method map], [method filter], [method any], and [method all]."
msgstr ""
"Вызывает заданный [Callable] для каждого элемента в массиве, накапливает "
"результат в [param accum], затем возвращает его.\n"
"Метод [param method] принимает два аргумента: текущее значение [param accum] "
"и текущий элемент массива. Если [param accum] равен [code]null[/code] (как по "
"умолчанию), итерация начнется со второго элемента, а первый будет "
"использоваться как начальное значение [param accum].\n"
"[codeblock]\n"
"func sum(accum, number):\n"
"\treturn accum + number\n"
"\n"
"func _ready():\n"
"\tprint([1, 2, 3].reduce(sum, 0))  # Выводит 6\n"
"\tprint([1, 2, 3].reduce(sum, 10)) # Выводит 16\n"
"\n"
"\t# То же, что и выше, но с использованием лямбда-функции.\n"
"\tprint([1, 2, 3].reduce(func(accum, number): return accum + number, 10))\n"
"[/codeblock]\n"
"Если [method max] нежелателен, этот метод также можно использовать для "
"реализации пользовательского компаратора:\n"
"[codeblock]\n"
"func _ready():\n"
"\tvar arr = [Vector2i(5, 0), Vector2i(3, 4), Vector2i(1, 2)]\n"
"\n"
"\tvar longest_vec = arr.reduce(func(max, vec): return vec if "
"is_length_greater(vec, max) else max)\n"
"\tprint(longest_vec) # Выводит (3, 4)\n"
"\n"
"func is_length_greater(a, b):\n"
"\treturn a.length() > b.length()\n"
"[/codeblock]\n"
"Этот метод также можно использовать для подсчета количества элементов в "
"массиве, удовлетворяющих определенному условию, аналогично [method count]:\n"
"[codeblock]\n"
"func is_even(number):\n"
"\treturn number % 2 == 0\n"
"\n"
"func _ready():\n"
"\tvar arr = [1, 2, 3, 4, 5]\n"
"\t# Если текущий элемент четный, увеличиваем count, в противном случае "
"оставляем count прежним.\n"
"\tvar even_count = arr.reduce(func(count, next): return count + 1 if "
"is_even(next) else count, 0)\n"
"\tprint(even_count) # Выводит 2\n"
"[/codeblock]\n"
"См. также [method map], [method filter], [method any] и [method all]."

msgid ""
"Removes the element from the array at the given index ([param position]). If "
"the index is out of bounds, this method fails. If the index is negative, "
"[param position] is considered relative to the end of the array.\n"
"If you need to return the removed element, use [method pop_at]. To remove an "
"element by value, use [method erase] instead.\n"
"[b]Note:[/b] This method shifts every element's index after [param position] "
"back, which may have a noticeable performance cost, especially on larger "
"arrays.\n"
"[b]Note:[/b] The [param position] cannot be negative. To remove an element "
"relative to the end of the array, use [code]arr.remove_at(arr.size() - (i + "
"1))[/code]. To remove the last element from the array, use "
"[code]arr.resize(arr.size() - 1)[/code]."
msgstr ""
"Удаляет элемент из массива по указанному индексу ([param position]). Если "
"индекс выходит за пределы, этот метод завершается ошибкой. Если индекс "
"отрицательный, [param position] считается относительно конца массива.\n"
"Если вам нужно вернуть удаленный элемент, используйте [method pop_at]. Чтобы "
"удалить элемент по значению, используйте [method erasure].\n"
"[b]Примечание:[/b] Этот метод сдвигает индекс каждого элемента после [param "
"position] назад, что может иметь заметные издержки производительности, "
"особенно для больших массивов.\n"
"[b]Примечание:[/b] [param position] не может быть отрицательным. Чтобы "
"удалить элемент относительно конца массива, используйте "
"[code]arr.remove_at(arr.size() - (i + 1))[/code]. Чтобы удалить последний "
"элемент из массива, используйте [code]arr.resize(arr.size() - 1)[/code]."

msgid ""
"Sets the array's number of elements to [param size]. If [param size] is "
"smaller than the array's current size, the elements at the end are removed. "
"If [param size] is greater, new default elements (usually [code]null[/code]) "
"are added, depending on the array's type.\n"
"Returns [constant OK] on success, or one of the following [enum Error] "
"constants if this method fails: [constant ERR_LOCKED] if the array is read-"
"only, [constant ERR_INVALID_PARAMETER] if the size is negative, or [constant "
"ERR_OUT_OF_MEMORY] if allocations fail. Use [method size] to find the actual "
"size of the array after resize.\n"
"[b]Note:[/b] Calling this method once and assigning the new values is faster "
"than calling [method append] for every new element."
msgstr ""
"Устанавливает количество элементов массива равным [param size]. Если [param "
"size] меньше текущего размера массива, элементы в конце удаляются. Если "
"[param size] больше, добавляются новые элементы по умолчанию (обычно "
"[code]null[/code]) в зависимости от типа массива.\n"
"Возвращает [constant OK] в случае успеха или одну из следующих констант [enum "
"Error], если этот метод не срабатывает: [constant ERR_LOCKED], если массив "
"доступен только для чтения, [constant ERR_INVALID_PARAMETER], если размер "
"отрицательный, или [constant ERR_OUT_OF_MEMORY], если выделение памяти не "
"удается. Используйте [method size], чтобы узнать фактический размер массива "
"после изменения размера.\n"
"[b]Примечание:[/b] Вызов этого метода один раз и назначение новых значений "
"выполняется быстрее, чем вызов [method append] для каждого нового элемента."

msgid "Reverses the order of all elements in the array."
msgstr "Меняет порядок всех элементов в массиве на обратный."

msgid ""
"Returns the index of the [b]last[/b] occurrence of [param what] in this "
"array, or [code]-1[/code] if there are none. The search's start can be "
"specified with [param from], continuing to the beginning of the array. This "
"method is the reverse of [method find]."
msgstr ""
"Возвращает индекс [b]последнего[/b] вхождения [param what] в этом массиве или "
"[code]-1[/code], если их нет. Начало поиска можно указать с помощью [param "
"from], продолжая до начала массива. Этот метод является обратным [method "
"find]."

msgid ""
"Returns the index of the [b]last[/b] element of the array that causes [param "
"method] to return [code]true[/code], or [code]-1[/code] if there are none. "
"The search's start can be specified with [param from], continuing to the "
"beginning of the array. This method is the reverse of [method find_custom]."
msgstr ""
"Возвращает индекс [b]последнего[/b] элемента массива, который заставляет "
"[param method] возвращать [code]true[/code] или [code]-1[/code], если их нет. "
"Начало поиска можно указать с помощью [param from], продолжая до начала "
"массива. Этот метод является обратным [method find_custom]."

msgid ""
"Sets the value of the element at the given [param index] to the given [param "
"value]. This will not change the size of the array, it only changes the value "
"at an index already in the array. This is the same as using the [code][][/"
"code] operator ([code]array[index] = value[/code])."
msgstr ""
"Устанавливает значение элемента с указанным [param index] на указанное [param "
"value]. Это не изменит размер массива, а только изменит значение с индексом, "
"уже имеющимся в массиве. Это то же самое, что использовать оператор [code][][/"
"code] ([code]array[index] = value[/code])."

msgid ""
"Shuffles all elements of the array in a random order.\n"
"[b]Note:[/b] Like many similar functions in the engine (such as [method "
"@GlobalScope.randi] or [method pick_random]), this method uses a common, "
"global random seed. To get a predictable outcome from this method, see "
"[method @GlobalScope.seed]."
msgstr ""
"Перемешивает все элементы массива в случайном порядке.\n"
"[b]Примечание:[/b] Как и многие подобные функции в движке (например, [method "
"@GlobalScope.randi] или [method pick_random]), этот метод использует общее "
"глобальное случайное начальное число. Чтобы получить предсказуемый результат "
"от этого метода, см. [method @GlobalScope.seed]."

msgid ""
"Returns the number of elements in the array. Empty arrays ([code][][/code]) "
"always return [code]0[/code]. See also [method is_empty]."
msgstr ""
"Возвращает количество элементов в массиве. Пустые массивы ([code][][/code]) "
"всегда возвращают [code]0[/code]. См. также [method is_empty]."

msgid ""
"Returns a new [Array] containing this array's elements, from index [param "
"begin] (inclusive) to [param end] (exclusive), every [param step] elements.\n"
"If either [param begin] or [param end] are negative, their value is relative "
"to the end of the array.\n"
"If [param step] is negative, this method iterates through the array in "
"reverse, returning a slice ordered backwards. For this to work, [param begin] "
"must be greater than [param end].\n"
"If [param deep] is [code]true[/code], all nested [Array] and [Dictionary] "
"elements in the slice are duplicated from the original, recursively. See also "
"[method duplicate].\n"
"[codeblock]\n"
"var letters = [\"A\", \"B\", \"C\", \"D\", \"E\", \"F\"]\n"
"\n"
"print(letters.slice(0, 2))  # Prints [\"A\", \"B\"]\n"
"print(letters.slice(2, -2)) # Prints [\"C\", \"D\"]\n"
"print(letters.slice(-2, 6)) # Prints [\"E\", \"F\"]\n"
"\n"
"print(letters.slice(0, 6, 2))  # Prints [\"A\", \"C\", \"E\"]\n"
"print(letters.slice(4, 1, -1)) # Prints [\"E\", \"D\", \"C\"]\n"
"[/codeblock]"
msgstr ""
"Возвращает новый [Array], содержащий элементы этого массива, от индекса "
"[param begin] (включительно) до [param end] (исключительно), каждые [param "
"step] элементов.\n"
"Если [param begin] или [param end] отрицательны, их значение относительно "
"конца массива.\n"
"Если [param step] отрицателен, этот метод выполняет итерацию по массиву в "
"обратном порядке, возвращая срез, упорядоченный в обратном порядке. Чтобы это "
"работало, [param begin] должен быть больше [param end].\n"
"Если [param deep] равен [code]true[/code], все вложенные элементы [Array] и "
"[Dictionary] в срезе дублируются из оригинала, рекурсивно. См. также [method "
"duplicate].\n"
"[codeblock]\n"
"var letters = [\"A\", \"B\", \"C\", \"D\", \"E\", \"F\"]\n"
"\n"
"print(letters.slice(0, 2))  # Выводит [\"A\", \"B\"]\n"
"print(letters.slice(2, -2)) # Выводит [\"C\", \"D\"]\n"
"print(letters.slice(-2, 6)) # Выводит [\"E\", \"F\"]\n"
"\n"
"print(letters.slice(0, 6, 2))  # Выводит [\"A\", \"C\", \"E\"]\n"
"print(letters.slice(4, 1, -1)) # Выводит [\"E\", \"D\", \"C\"]\n"
"[/codeblock]"

msgid ""
"Sorts the array in ascending order. The final order is dependent on the "
"\"less than\" ([code]<[/code]) comparison between elements.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var numbers = [10, 5, 2.5, 8]\n"
"numbers.sort()\n"
"print(numbers) # Prints [2.5, 5, 8, 10]\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array numbers = [10, 5, 2.5, 8];\n"
"numbers.Sort();\n"
"GD.Print(numbers); // Prints [2.5, 5, 8, 10]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/"
"wiki/Sorting_algorithm#Stability]stable[/url]. This means that equivalent "
"elements (such as [code]2[/code] and [code]2.0[/code]) may have their order "
"changed when calling [method sort]."
msgstr ""
"Сортирует массив в порядке возрастания. Окончательный порядок зависит от "
"сравнения \"меньше\" ([code]<[/code]) между элементами.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var numbers = [10, 5, 2.5, 8]\n"
"numbers.sort()\n"
"print(numbers) # Prints [2.5, 5, 8, 10]\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array numbers = [10, 5, 2.5, 8];\n"
"numbers.Sort();\n"
"GD.Print(numbers); // Prints [2.5, 5, 8, 10]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Используемый алгоритм сортировки не является [url=https://"
"en.wikipedia.org/wiki/Sorting_algorithm#Stability]стабильным[/url]. Это "
"означает, что эквивалентные элементы (такие как [code]2[/code] и [code]2.0[/"
"code]) могут иметь измененный порядок при вызове [method sort]."

msgid ""
"Sorts the array using a custom [Callable].\n"
"[param func] is called as many times as necessary, receiving two array "
"elements as arguments. The function should return [code]true[/code] if the "
"first element should be moved [i]before[/i] the second one, otherwise it "
"should return [code]false[/code].\n"
"[codeblock]\n"
"func sort_ascending(a, b):\n"
"\tif a[1] < b[1]:\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _ready():\n"
"\tvar my_items = [[\"Tomato\", 5], [\"Apple\", 9], [\"Rice\", 4]]\n"
"\tmy_items.sort_custom(sort_ascending)\n"
"\tprint(my_items) # Prints [[\"Rice\", 4], [\"Tomato\", 5], [\"Apple\", 9]]\n"
"\n"
"\t# Sort descending, using a lambda function.\n"
"\tmy_items.sort_custom(func(a, b): return a[1] > b[1])\n"
"\tprint(my_items) # Prints [[\"Apple\", 9], [\"Tomato\", 5], [\"Rice\", 4]]\n"
"[/codeblock]\n"
"It may also be necessary to use this method to sort strings by natural order, "
"with [method String.naturalnocasecmp_to], as in the following example:\n"
"[codeblock]\n"
"var files = [\"newfile1\", \"newfile2\", \"newfile10\", \"newfile11\"]\n"
"files.sort_custom(func(a, b): return a.naturalnocasecmp_to(b) < 0)\n"
"print(files) # Prints [\"newfile1\", \"newfile2\", \"newfile10\", "
"\"newfile11\"]\n"
"[/codeblock]\n"
"[b]Note:[/b] In C#, this method is not supported.\n"
"[b]Note:[/b] The sorting algorithm used is not [url=https://en.wikipedia.org/"
"wiki/Sorting_algorithm#Stability]stable[/url]. This means that values "
"considered equal may have their order changed when calling this method.\n"
"[b]Note:[/b] You should not randomize the return value of [param func], as "
"the heapsort algorithm expects a consistent result. Randomizing the return "
"value will result in unexpected behavior."
msgstr ""
"Сортирует массив с использованием пользовательского [Callable].\n"
"[param func] вызывается столько раз, сколько необходимо, получая два элемента "
"массива в качестве аргументов. Функция должна возвращать [code]true[/code], "
"если первый элемент должен быть перемещен [i]перед[/i] вторым, в противном "
"случае она должна возвращать [code]false[/code].\n"
"[codeblock]\n"
"func sort_ascending(a, b):\n"
"\tif a[1] < b[1]:\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _ready():\n"
"\tvar my_items = [[\"Tomato\", 5], [\"Apple\", 9], [\"Rice\", 4]]\n"
"\tmy_items.sort_custom(sort_ascending)\n"
"\tprint(my_items) # Prints [[\"Rice\", 4], [\"Tomato\", 5], [\"Apple\", 9]]\n"
"\n"
"\t#Сортировка по убыванию с использованием лямбда-функции.\n"
"\tmy_items.sort_custom(func(a, b): return a[1] > b[1])\n"
"\tprint(my_items) # Prints [[\"Apple\", 9], [\"Tomato\", 5], [\"Rice\", 4]]\n"
"[/codeblock]\n"
"Также может потребоваться использовать этот метод для сортировки строк в "
"естественном порядке с помощью [method String.naturalnocasecmp_to], как в "
"следующем примере:\n"
"[codeblock]\n"
"var files = [\"newfile1\", \"newfile2\", \"newfile10\", \"newfile11\"]\n"
"files.sort_custom(func(a, b): return a.naturalnocasecmp_to(b) < 0)\n"
"print(files) # Prints [\"newfile1\", \"newfile2\", \"newfile10\", "
"\"newfile11\"]\n"
"[/codeblock]\n"
"[b]Примечание:[/b] В C# этот метод не поддерживается.\n"
"[b]Примечание:[/b] Используемый алгоритм сортировки не является [url=https://"
"en.wikipedia.org/wiki/Sorting_algorithm#Stability]стабильным[/url]. Это "
"означает, что значения, считающиеся равными, могут иметь измененный порядок "
"при вызове этого метода.\n"
"[b]Примечание:[/b] Не следует рандомизировать возвращаемое значение [param "
"func], так как алгоритм пирамидальной сортировки ожидает согласованного "
"результата. Рандомизация возвращаемого значения приведет к неожиданному "
"поведению."

msgid ""
"Returns [code]true[/code] if the array's size or its elements are different "
"than [param right]'s."
msgstr ""
"Возвращает [code]true[/code], если размер массива или его элементов "
"отличается от [param right]."

msgid ""
"Appends the [param right] array to the left operand, creating a new [Array]. "
"This is also known as an array concatenation.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array1 = [\"One\", 2]\n"
"var array2 = [3, \"Four\"]\n"
"print(array1 + array2) # Prints [\"One\", 2, 3, \"Four\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Note that concatenation is not possible with C#'s native Array type.\n"
"Godot.Collections.Array array1 = [\"One\", 2];\n"
"Godot.Collections.Array array2 = [3, \"Four\"];\n"
"GD.Print(array1 + array2); // Prints [\"One\", 2, 3, \"Four\"]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] For existing arrays, [method append_array] is much more "
"efficient than concatenation and assignment with the [code]+=[/code] operator."
msgstr ""
"Добавляет массив [param right] к левому операнду, создавая новый [Array]. Это "
"также известно как конкатенация массивов.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array1 = [\"One\", 2]\n"
"var array2 = [3, \"Four\"]\n"
"print(array1 + array2) # Prints [\"One\", 2, 3, \"Four\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"// Обратите внимание, что конкатенация невозможна с собственным типом массива "
"C#.\n"
"Godot.Collections.Array array1 = [\"One\", 2];\n"
"Godot.Collections.Array array2 = [3, \"Four\"];\n"
"GD.Print(array1 + array2); // Prints [\"One\", 2, 3, \"Four\"]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Для существующих массивов [method append_array] гораздо "
"эффективнее, чем конкатенация и присваивание с помощью оператора [code]+=[/"
"code]."

msgid ""
"Compares the elements of both arrays in order, starting from index [code]0[/"
"code] and ending on the last index in common between both arrays. For each "
"pair of elements, returns [code]true[/code] if this array's element is less "
"than [param right]'s, [code]false[/code] if this element is greater. "
"Otherwise, continues to the next pair.\n"
"If all searched elements are equal, returns [code]true[/code] if this array's "
"size is less than [param right]'s, otherwise returns [code]false[/code]."
msgstr ""
"Сравнивает элементы обоих массивов по порядку, начиная с индекса [code]0[/"
"code] и заканчивая последним общим индексом для обоих массивов. Для каждой "
"пары элементов возвращает [code]true[/code], если элемент этого массива "
"меньше, чем [param right], [code]false[/code], если этот элемент больше. В "
"противном случае переходит к следующей паре.\n"
"Если все искомые элементы равны, возвращает [code]true[/code], если размер "
"этого массива меньше, чем [param right], в противном случае возвращает "
"[code]false[/code]."

msgid ""
"Compares the elements of both arrays in order, starting from index [code]0[/"
"code] and ending on the last index in common between both arrays. For each "
"pair of elements, returns [code]true[/code] if this array's element is less "
"than [param right]'s, [code]false[/code] if this element is greater. "
"Otherwise, continues to the next pair.\n"
"If all searched elements are equal, returns [code]true[/code] if this array's "
"size is less or equal to [param right]'s, otherwise returns [code]false[/"
"code]."
msgstr ""
"Сравнивает элементы обоих массивов по порядку, начиная с индекса [code]0[/"
"code] и заканчивая последним общим индексом для обоих массивов. Для каждой "
"пары элементов возвращает [code]true[/code], если элемент этого массива "
"меньше, чем [param right], [code]false[/code], если этот элемент больше. В "
"противном случае переходит к следующей паре.\n"
"Если все искомые элементы равны, возвращает [code]true[/code], если размер "
"этого массива меньше или равен [param right], в противном случае возвращает "
"[code]false[/code]."

msgid ""
"Compares the left operand [Array] against the [param right] [Array]. Returns "
"[code]true[/code] if the sizes and contents of the arrays are equal, "
"[code]false[/code] otherwise."
msgstr ""
"Сравнивает левый операнд [Array] с [param right] [Array]. Возвращает "
"[code]true[/code], если размеры и содержимое массивов равны, в противном "
"случае [code]false[/code] ."

msgid ""
"Compares the elements of both arrays in order, starting from index [code]0[/"
"code] and ending on the last index in common between both arrays. For each "
"pair of elements, returns [code]true[/code] if this array's element is "
"greater than [param right]'s, [code]false[/code] if this element is less. "
"Otherwise, continues to the next pair.\n"
"If all searched elements are equal, returns [code]true[/code] if this array's "
"size is greater than [param right]'s, otherwise returns [code]false[/code]."
msgstr ""
"Сравнивает элементы обоих массивов по порядку, начиная с индекса [code]0[/"
"code] и заканчивая последним общим индексом для обоих массивов. Для каждой "
"пары элементов возвращает [code]true[/code], если элемент этого массива "
"больше, чем [param right], [code]false[/code], если этот элемент меньше. В "
"противном случае переходит к следующей паре.\n"
"Если все искомые элементы равны, возвращает [code]true[/code], если размер "
"этого массива больше, чем [param right], в противном случае возвращает "
"[code]false[/code]."

msgid ""
"Compares the elements of both arrays in order, starting from index [code]0[/"
"code] and ending on the last index in common between both arrays. For each "
"pair of elements, returns [code]true[/code] if this array's element is "
"greater than [param right]'s, [code]false[/code] if this element is less. "
"Otherwise, continues to the next pair.\n"
"If all searched elements are equal, returns [code]true[/code] if this array's "
"size is greater or equal to [param right]'s, otherwise returns [code]false[/"
"code]."
msgstr ""
"Сравнивает элементы обоих массивов по порядку, начиная с индекса [code]0[/"
"code] и заканчивая последним общим индексом для обоих массивов. Для каждой "
"пары элементов возвращает [code]true[/code], если элемент этого массива "
"больше, чем [param right], [code]false[/code], если этот элемент меньше. В "
"противном случае переходит к следующей паре.\n"
"Если все искомые элементы равны, возвращает [code]true[/code], если размер "
"этого массива больше или равен [param right], в противном случае возвращает "
"[code]false[/code]."

msgid ""
"Returns the [Variant] element at the specified [param index]. Arrays start at "
"index 0. If [param index] is greater or equal to [code]0[/code], the element "
"is fetched starting from the beginning of the array. If [param index] is a "
"negative value, the element is fetched starting from the end. Accessing an "
"array out-of-bounds will cause a run-time error, pausing the project "
"execution if run from the editor."
msgstr ""
"Возвращает элемент [Variant] по указанному [param index]. Массивы начинаются "
"с индекса 0. Если [param index] больше или равен [code]0[/code], элемент "
"извлекается, начиная с начала массива. Если [param index] — отрицательное "
"значение, элемент извлекается, начиная с конца. Доступ к массиву за пределами "
"границ вызовет ошибку времени выполнения, приостанавливая выполнение проекта, "
"если он запущен из редактора."

msgid ""
"[Mesh] type that provides utility for constructing a surface from arrays."
msgstr ""
"Тип [Mesh], предоставляющий утилиту для построения поверхности из массивов."

msgid ""
"The [ArrayMesh] is used to construct a [Mesh] by specifying the attributes as "
"arrays.\n"
"The most basic example is the creation of a single triangle:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var vertices = PackedVector3Array()\n"
"vertices.push_back(Vector3(0, 1, 0))\n"
"vertices.push_back(Vector3(1, 0, 0))\n"
"vertices.push_back(Vector3(0, 0, 1))\n"
"\n"
"# Initialize the ArrayMesh.\n"
"var arr_mesh = ArrayMesh.new()\n"
"var arrays = []\n"
"arrays.resize(Mesh.ARRAY_MAX)\n"
"arrays[Mesh.ARRAY_VERTEX] = vertices\n"
"\n"
"# Create the Mesh.\n"
"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays)\n"
"var m = MeshInstance3D.new()\n"
"m.mesh = arr_mesh\n"
"[/gdscript]\n"
"[csharp]\n"
"Vector3[] vertices =\n"
"[\n"
"\tnew Vector3(0, 1, 0),\n"
"\tnew Vector3(1, 0, 0),\n"
"\tnew Vector3(0, 0, 1),\n"
"];\n"
"\n"
"// Initialize the ArrayMesh.\n"
"var arrMesh = new ArrayMesh();\n"
"Godot.Collections.Array arrays = [];\n"
"arrays.Resize((int)Mesh.ArrayType.Max);\n"
"arrays[(int)Mesh.ArrayType.Vertex] = vertices;\n"
"\n"
"// Create the Mesh.\n"
"arrMesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, arrays);\n"
"var m = new MeshInstance3D();\n"
"m.Mesh = arrMesh;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The [MeshInstance3D] is ready to be added to the [SceneTree] to be shown.\n"
"See also [ImmediateMesh], [MeshDataTool] and [SurfaceTool] for procedural "
"geometry generation.\n"
"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
"OpenGL/Face-culling]winding order[/url] for front faces of triangle primitive "
"modes."
msgstr ""
"[ArrayMesh] используется для построения [Mesh] путем указания атрибутов как "
"массивов.\n"
"Самый простой пример — создание одного треугольника:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var vertices = PackedVector3Array()\n"
"vertices.push_back(Vector3(0, 1, 0))\n"
"vertices.push_back(Vector3(1, 0, 0))\n"
"vertices.push_back(Vector3(0, 0, 1))\n"
"\n"
"#Инициализируйте ArrayMesh.\n"
"var arr_mesh = ArrayMesh.new()\n"
"var arrays = []\n"
"arrays.resize(Mesh.ARRAY_MAX)\n"
"arrays[Mesh.ARRAY_VERTEX] = vertices\n"
"\n"
"# Создать сетку.\n"
"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, arrays)\n"
"var m = MeshInstance3D.new()\n"
"m.mesh = arr_mesh\n"
"[/gdscript]\n"
"[csharp]\n"
"Vector3[] vertices =\n"
"[\n"
"\tnew Vector3(0, 1, 0),\n"
"\tnew Vector3(1, 0, 0),\n"
"\tnew Vector3(0, 0, 1),\n"
"];\n"
"\n"
"// Инициализируйте ArrayMesh.\n"
"var arrMesh = new ArrayMesh();\n"
"Godot.Collections.Array arrays = [];\n"
"arrays.Resize((int)Mesh.ArrayType.Max);\n"
"arrays[(int)Mesh.ArrayType.Vertex] = vertices;\n"
"\n"
"// Создать сетку.\n"
"arrMesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, arrays);\n"
"var m = new MeshInstance3D();\n"
"m.Mesh = arrMesh;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[MeshInstance3D] готов к добавлению в [SceneTree] для отображения.\n"
"См. также [ImmediateMesh], [MeshDataTool] и [SurfaceTool] для создания "
"процедурной геометрии.\n"
"[b]Примечание:[/b] Годо использует [url=https://learnopengl.com/Advanced-"
"OpenGL/Face-culling]порядок намотки[/url] по часовой стрелке для передних "
"граней примитивных режимов треугольника."

msgid "Procedural geometry using the ArrayMesh"
msgstr "Процедурная геометрия с использованием ArrayMesh"

msgid ""
"Adds name for a blend shape that will be added with [method "
"add_surface_from_arrays]. Must be called before surface is added."
msgstr ""
"Добавляет имя для формы смешивания, которая будет добавлена с помощью [method "
"add_surface_from_arrays]. Необходимо вызвать перед добавлением поверхности."

msgid ""
"Creates a new surface. [method Mesh.get_surface_count] will become the "
"[code]surf_idx[/code] for this new surface.\n"
"Surfaces are created to be rendered using a [param primitive], which may be "
"any of the values defined in [enum Mesh.PrimitiveType].\n"
"The [param arrays] argument is an array of arrays. Each of the [constant "
"Mesh.ARRAY_MAX] elements contains an array with some of the mesh data for "
"this surface as described by the corresponding member of [enum "
"Mesh.ArrayType] or [code]null[/code] if it is not used by the surface. For "
"example, [code]arrays[0][/code] is the array of vertices. That first vertex "
"sub-array is always required; the others are optional. Adding an index array "
"puts this surface into \"index mode\" where the vertex and other arrays "
"become the sources of data and the index array defines the vertex order. All "
"sub-arrays must have the same length as the vertex array (or be an exact "
"multiple of the vertex array's length, when multiple elements of a sub-array "
"correspond to a single vertex) or be empty, except for [constant "
"Mesh.ARRAY_INDEX] if it is used.\n"
"The [param blend_shapes] argument is an array of vertex data for each blend "
"shape. Each element is an array of the same structure as [param arrays], but "
"[constant Mesh.ARRAY_VERTEX], [constant Mesh.ARRAY_NORMAL], and [constant "
"Mesh.ARRAY_TANGENT] are set if and only if they are set in [param arrays] and "
"all other entries are [code]null[/code].\n"
"The [param lods] argument is a dictionary with [float] keys and "
"[PackedInt32Array] values. Each entry in the dictionary represents an LOD "
"level of the surface, where the value is the [constant Mesh.ARRAY_INDEX] "
"array to use for the LOD level and the key is roughly proportional to the "
"distance at which the LOD stats being used. I.e., increasing the key of an "
"LOD also increases the distance that the objects has to be from the camera "
"before the LOD is used.\n"
"The [param flags] argument is the bitwise OR of, as required: One value of "
"[enum Mesh.ArrayCustomFormat] left shifted by "
"[code]ARRAY_FORMAT_CUSTOMn_SHIFT[/code] for each custom channel in use, "
"[constant Mesh.ARRAY_FLAG_USE_DYNAMIC_UPDATE], [constant "
"Mesh.ARRAY_FLAG_USE_8_BONE_WEIGHTS], or [constant "
"Mesh.ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY].\n"
"[b]Note:[/b] When using indices, it is recommended to only use points, lines, "
"or triangles."
msgstr ""
"Создает новую поверхность. [method Mesh.get_surface_count] станет "
"[code]surf_idx[/code] для этой новой поверхности.\n"
"Поверхности создаются для визуализации с использованием [param primitive], "
"который может быть любым из значений, определенных в [enum "
"Mesh.PrimitiveType].\n"
"Аргумент [param arrays] — это массив массивов. Каждый из элементов [constant "
"Mesh.ARRAY_MAX] содержит массив с некоторыми данными сетки для этой "
"поверхности, как описано соответствующим членом [enum Mesh.ArrayType] или "
"[code]null[/code], если он не используется поверхностью. Например, "
"[code]arrays[0][/code] — это массив вершин. Этот первый подмассив вершин "
"всегда обязателен; остальные необязательны. Добавление индексного массива "
"переводит эту поверхность в «индексный режим», где вершины и другие массивы "
"становятся источниками данных, а индексный массив определяет порядок вершин. "
"Все подмассивы должны иметь ту же длину, что и массив вершин (или быть "
"кратными длине массива вершин, когда несколько элементов подмассива "
"соответствуют одной вершине) или быть пустыми, за исключением [constant "
"Mesh.ARRAY_INDEX], если он используется.\n"
"Аргумент [param blend_shapes] — это массив данных вершин для каждой формы "
"смешивания. Каждый элемент — это массив той же структуры, что и [param "
"arrays], но [constant Mesh.ARRAY_VERTEX], [constant Mesh.ARRAY_NORMAL] и "
"[constant Mesh.ARRAY_TANGENT] устанавливаются тогда и только тогда, когда они "
"установлены в [param arrays], а все остальные записи — [code]null[/code].\n"
"Аргумент [param lods] — это словарь с ключами [float] и значениями "
"[PackedInt32Array]. Каждая запись в словаре представляет уровень детализации "
"поверхности, где значение — это массив [constant Mesh.ARRAY_INDEX], "
"используемый для уровня детализации, а ключ примерно пропорционален "
"расстоянию, на котором используются характеристики детализации. То есть, "
"увеличение ключа детализации также увеличивает расстояние, на котором объекты "
"должны находиться от камеры, прежде чем будет использован детализация.\n"
"Аргумент [param flags] представляет собой побитовое ИЛИ, при необходимости: "
"одного значения [enum Mesh.ArrayCustomFormat], сдвинутого влево на "
"[code]ARRAY_FORMAT_CUSTOMn_SHIFT[/code] для каждого используемого "
"пользовательского канала, [constant Mesh.ARRAY_FLAG_USE_DYNAMIC_UPDATE], "
"[constant Mesh.ARRAY_FLAG_USE_8_BONE_WEIGHTS] или [constant "
"Mesh.ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY].\n"
"[b]Примечание:[/b] При использовании индексов рекомендуется использовать "
"только точки, линии или треугольники."

msgid "Removes all blend shapes from this [ArrayMesh]."
msgstr "Удаляет все смешанные фигуры из этого [ArrayMesh]."

msgid "Removes all surfaces from this [ArrayMesh]."
msgstr "Удаляет все поверхности из этого [ArrayMesh]."

msgid "Returns the number of blend shapes that the [ArrayMesh] holds."
msgstr "Возвращает количество смешанных фигур, хранящихся в [ArrayMesh]."

msgid "Returns the name of the blend shape at this index."
msgstr "Возвращает имя формы смешивания по данному индексу."

msgid ""
"Performs a UV unwrap on the [ArrayMesh] to prepare the mesh for lightmapping."
msgstr ""
"Выполняет UV-развертку на [ArrayMesh], чтобы подготовить сетку для светового "
"отображения."

msgid "Regenerates tangents for each of the [ArrayMesh]'s surfaces."
msgstr "Регенерирует касательные для каждой из поверхностей [ArrayMesh]."

msgid "Sets the name of the blend shape at this index."
msgstr "Задает имя формы смешивания по данному индексу."

msgid ""
"Returns the index of the first surface with this name held within this "
"[ArrayMesh]. If none are found, -1 is returned."
msgstr ""
"Возвращает индекс первой поверхности с этим именем, хранящейся в этом "
"[ArrayMesh]. Если ничего не найдено, возвращается -1."

msgid ""
"Returns the length in indices of the index array in the requested surface "
"(see [method add_surface_from_arrays])."
msgstr ""
"Возвращает длину в индексах массива индексов в запрошенной поверхности (см. "
"[method add_surface_from_arrays])."

msgid ""
"Returns the length in vertices of the vertex array in the requested surface "
"(see [method add_surface_from_arrays])."
msgstr ""
"Возвращает длину в вершинах массива вершин в запрошенной поверхности (см. "
"[method add_surface_from_arrays])."

msgid ""
"Returns the format mask of the requested surface (see [method "
"add_surface_from_arrays])."
msgstr ""
"Возвращает маску формата запрошенной поверхности (см. [method "
"add_surface_from_arrays])."

msgid "Gets the name assigned to this surface."
msgstr "Получает имя, назначенное этой поверхности."

msgid ""
"Returns the primitive type of the requested surface (see [method "
"add_surface_from_arrays])."
msgstr ""
"Возвращает примитивный тип запрошенной поверхности (см. [method "
"add_surface_from_arrays])."

msgid ""
"Removes the surface at the given index from the Mesh, shifting surfaces with "
"higher index down by one."
msgstr ""
"Удаляет поверхность с указанным индексом из сетки, сдвигая поверхности с "
"более высоким индексом на одну единицу вниз."

msgid "Sets a name for a given surface."
msgstr "Задает имя для данной поверхности."

msgid "The blend shape mode."
msgstr "Режим смешивания форм."

msgid ""
"Overrides the [AABB] with one defined by user for use with frustum culling. "
"Especially useful to avoid unexpected culling when using a shader to offset "
"vertices."
msgstr ""
"Переопределяет [AABB] на определенный пользователем для использования с "
"отсечением по усеченной пирамиде. Особенно полезно для избежания неожиданного "
"отсечения при использовании шейдера для смещения вершин."

msgid ""
"An optional mesh which can be used for rendering shadows and the depth "
"prepass. Can be used to increase performance by supplying a mesh with fused "
"vertices and only vertex position data (without normals, UVs, colors, etc.).\n"
"[b]Note:[/b] This mesh must have exactly the same vertex positions as the "
"source mesh (including the source mesh's LODs, if present). If vertex "
"positions differ, then the mesh will not draw correctly."
msgstr ""
"Необязательная сетка, которая может использоваться для рендеринга теней и "
"предварительного прохода глубины. Может использоваться для повышения "
"производительности путем предоставления сетки с объединенными вершинами и "
"только данными о положении вершин (без нормалей, UV, цветов и т. д.).\n"
"[b]Примечание:[/b] Эта сетка должна иметь точно такие же положения вершин, "
"как и исходная сетка (включая LOD исходной сетки, если они есть). Если "
"положения вершин отличаются, то сетка не будет отрисовываться правильно."

msgid "3D polygon shape for use with occlusion culling in [OccluderInstance3D]."
msgstr ""
"Трехмерная многоугольная форма для использования с отбраковкой окклюзии в "
"[OccluderInstance3D]."

msgid ""
"[ArrayOccluder3D] stores an arbitrary 3D polygon shape that can be used by "
"the engine's occlusion culling system. This is analogous to [ArrayMesh], but "
"for occluders.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[ArrayOccluder3D] хранит произвольную форму 3D-полигона, которая может "
"использоваться системой отсечения окклюзии движка. Это аналогично "
"[ArrayMesh], но для окклюдеров.\n"
"Инструкции по настройке отсечения окклюзии см. в документации "
"[OccluderInstance3D]."

msgid "Occlusion culling"
msgstr "Отбраковка окклюзии"

msgid ""
"Sets [member indices] and [member vertices], while updating the final "
"occluder only once after both values are set."
msgstr ""
"Устанавливает [member indices] и [member vertices], при этом обновляя "
"окончательный окклюдер только один раз после установки обоих значений."

msgid ""
"The occluder's index position. Indices determine which points from the "
"[member vertices] array should be drawn, and in which order.\n"
"[b]Note:[/b] The occluder is always updated after setting this value. If "
"creating occluders procedurally, consider using [method set_arrays] instead "
"to avoid updating the occluder twice when it's created."
msgstr ""
"Положение индекса окклюдера. Индексы определяют, какие точки из массива "
"[member vertices] должны быть нарисованы и в каком порядке.\n"
"[b]Примечание:[/b] Окклюдер всегда обновляется после установки этого "
"значения. Если вы создаете окклюдеры процедурно, рассмотрите возможность "
"использования [method set_arrays] вместо этого, чтобы избежать обновления "
"окклюдера дважды при его создании."

msgid ""
"The occluder's vertex positions in local 3D coordinates.\n"
"[b]Note:[/b] The occluder is always updated after setting this value. If "
"creating occluders procedurally, consider using [method set_arrays] instead "
"to avoid updating the occluder twice when it's created."
msgstr ""
"Положения вершин окклюдера в локальных 3D-координатах.\n"
"[b]Примечание:[/b] Окклюдер всегда обновляется после установки этого "
"значения. Если вы создаете окклюдеры процедурно, рассмотрите возможность "
"использования [method set_arrays] вместо этого, чтобы избежать обновления "
"окклюдера дважды при его создании."

msgid "A container that preserves the proportions of its child controls."
msgstr "Контейнер, сохраняющий пропорции своих дочерних элементов управления."

msgid ""
"A container type that arranges its child controls in a way that preserves "
"their proportions automatically when the container is resized. Useful when a "
"container has a dynamic size and the child nodes must adjust their sizes "
"accordingly without losing their aspect ratios."
msgstr ""
"Тип контейнера, который размещает свои дочерние элементы управления таким "
"образом, чтобы автоматически сохранять их пропорции при изменении размера "
"контейнера. Полезно, когда контейнер имеет динамический размер, а дочерние "
"узлы должны соответствующим образом корректировать свои размеры, не теряя "
"пропорций."

msgid "Using Containers"
msgstr "Использование контейнеров"

msgid "Specifies the horizontal relative position of child controls."
msgstr ""
"Задает горизонтальное относительное положение дочерних элементов управления."

msgid "Specifies the vertical relative position of child controls."
msgstr ""
"Задает вертикальное относительное положение дочерних элементов управления."

msgid ""
"The aspect ratio to enforce on child controls. This is the width divided by "
"the height. The ratio depends on the [member stretch_mode]."
msgstr ""
"Соотношение сторон, применяемое к дочерним элементам управления. Это ширина, "
"деленная на высоту. Соотношение зависит от [member stretch_mode]."

msgid "The stretch mode used to align child controls."
msgstr ""
"Режим растяжения, используемый для выравнивания дочерних элементов управления."

msgid ""
"The height of child controls is automatically adjusted based on the width of "
"the container."
msgstr ""
"Высота дочерних элементов управления автоматически регулируется в зависимости "
"от ширины контейнера."

msgid ""
"The width of child controls is automatically adjusted based on the height of "
"the container."
msgstr ""
"Ширина дочерних элементов управления автоматически регулируется в зависимости "
"от высоты контейнера."

msgid ""
"The bounding rectangle of child controls is automatically adjusted to fit "
"inside the container while keeping the aspect ratio."
msgstr ""
"Ограничивающий прямоугольник дочерних элементов управления автоматически "
"подстраивается под размер контейнера, сохраняя при этом соотношение сторон."

msgid ""
"The width and height of child controls is automatically adjusted to make "
"their bounding rectangle cover the entire area of the container while keeping "
"the aspect ratio.\n"
"When the bounding rectangle of child controls exceed the container's size and "
"[member Control.clip_contents] is enabled, this allows to show only the "
"container's area restricted by its own bounding rectangle."
msgstr ""
"Ширина и высота дочерних элементов управления автоматически настраивается "
"так, чтобы их ограничивающий прямоугольник покрывал всю область контейнера, "
"сохраняя при этом соотношение сторон.\n"
"Когда ограничивающий прямоугольник дочерних элементов управления превышает "
"размер контейнера и включен [member Control.clip_contents], это позволяет "
"отображать только область контейнера, ограниченную его собственным "
"ограничивающим прямоугольником."

msgid "Aligns child controls with the beginning (left or top) of the container."
msgstr ""
"Выравнивает дочерние элементы управления по началу (слева или сверху) "
"контейнера."

msgid "Aligns child controls with the center of the container."
msgstr "Выравнивает дочерние элементы управления по центру контейнера."

msgid "Aligns child controls with the end (right or bottom) of the container."
msgstr ""
"Выравнивает дочерние элементы управления по краю (справа или снизу) "
"контейнера."

msgid ""
"An implementation of A* for finding the shortest path between two vertices on "
"a connected graph in 2D space."
msgstr ""
"Реализация A* для поиска кратчайшего пути между двумя вершинами связного "
"графа в двумерном пространстве."

msgid ""
"An implementation of the A* algorithm, used to find the shortest path between "
"two vertices on a connected graph in 2D space.\n"
"See [AStar3D] for a more thorough explanation on how to use this class. "
"[AStar2D] is a wrapper for [AStar3D] that enforces 2D coordinates."
msgstr ""
"Реализация алгоритма A*, используемого для поиска кратчайшего пути между "
"двумя вершинами на связном графе в двумерном пространстве.\n"
"Более подробное объяснение использования этого класса см. в [AStar3D]. "
"[AStar2D] — это оболочка для [AStar3D], которая обеспечивает двумерные "
"координаты."

msgid "Grid-based Navigation with AStarGrid2D Demo"
msgstr "Демонстрация AStarGrid2D с навигацией на основе сетки"

msgid ""
"Called when computing the cost between two connected points.\n"
"Note that this function is hidden in the default [AStar2D] class."
msgstr ""
"Вызывается при вычислении стоимости между двумя соединенными точками.\n"
"Обратите внимание, что эта функция скрыта в классе по умолчанию [AStar2D]."

msgid ""
"Called when estimating the cost between a point and the path's ending point.\n"
"Note that this function is hidden in the default [AStar2D] class."
msgstr ""
"Вызывается при оценке стоимости между точкой и конечной точкой пути.\n"
"Обратите внимание, что эта функция скрыта в классе по умолчанию [AStar2D]."

msgid ""
"Called when neighboring enters processing and if [member "
"neighbor_filter_enabled] is [code]true[/code]. If [code]true[/code] is "
"returned the point will not be processed.\n"
"Note that this function is hidden in the default [AStar2D] class."
msgstr ""
"Вызывается, когда соседний элемент начинает обработку, и если [member "
"neighbor_filter_enabled] имеет значение [code]true[/code]. Если возвращается "
"значение [code]true[/code], точка не будет обработана.\n"
"Обратите внимание, что эта функция скрыта в классе [AStar2D] по умолчанию."

msgid ""
"Adds a new point at the given position with the given identifier. The [param "
"id] must be 0 or larger, and the [param weight_scale] must be 0.0 or "
"greater.\n"
"The [param weight_scale] is multiplied by the result of [method "
"_compute_cost] when determining the overall cost of traveling across a "
"segment from a neighboring point to this point. Thus, all else being equal, "
"the algorithm prefers points with lower [param weight_scale]s to form a "
"path.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(1, 0), 4) # Adds the point (1, 0) with "
"weight_scale 4 and id 1\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(1, 0), 4); // Adds the point (1, 0) with "
"weight_scale 4 and id 1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If there already exists a point for the given [param id], its position and "
"weight scale are updated to the given values."
msgstr ""
"Добавляет новую точку в указанной позиции с указанным идентификатором. [param "
"id] должен быть 0 или больше, а [param weight_scale] должен быть 0.0 или "
"больше.\n"
"[param weight_scale] умножается на результат [method _compute_cost] при "
"определении общей стоимости перемещения по сегменту от соседней точки до этой "
"точки. Таким образом, при прочих равных условиях алгоритм предпочитает точки "
"с меньшими [param weight_scale] для формирования пути.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(1, 0), 4) # Adds the point (1, 0) with "
"weight_scale 4 and id 1\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(1, 0), 4); // Adds the point (1, 0) with "
"weight_scale 4 and id 1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Если точка для указанного [param id] уже существует, ее положение и шкала "
"веса обновляются до указанных значений."

msgid ""
"Returns whether there is a connection/segment between the given points. If "
"[param bidirectional] is [code]false[/code], returns whether movement from "
"[param id] to [param to_id] is possible through this segment."
msgstr ""
"Возвращает, есть ли соединение/сегмент между заданными точками. Если [param "
"bidirectional] равен [code]false[/code], возвращает, возможно ли движение от "
"[param id] до [param to_id] через этот сегмент."

msgid "Clears all the points and segments."
msgstr "Очищает все точки и сегменты."

msgid ""
"Creates a segment between the given points. If [param bidirectional] is "
"[code]false[/code], only movement from [param id] to [param to_id] is "
"allowed, not the reverse direction.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(1, 1))\n"
"astar.add_point(2, Vector2(0, 5))\n"
"astar.connect_points(1, 2, false)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(1, 1));\n"
"astar.AddPoint(2, new Vector2(0, 5));\n"
"astar.ConnectPoints(1, 2, false);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает сегмент между заданными точками. Если [param bidirectional] равен "
"[code]false[/code], разрешено только движение от [param id] до [param to_id], "
"но не в обратном направлении.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(1, 1))\n"
"astar.add_point(2, Vector2(0, 5))\n"
"astar.connect_points(1, 2, false)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(1, 1));\n"
"astar.AddPoint(2, new Vector2(0, 5));\n"
"astar.ConnectPoints(1, 2, false);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Deletes the segment between the given points. If [param bidirectional] is "
"[code]false[/code], only movement from [param id] to [param to_id] is "
"prevented, and a unidirectional segment possibly remains."
msgstr ""
"Удаляет сегмент между заданными точками. Если [param bidirectional] равен "
"[code]false[/code], предотвращается только движение от [param id] до [param "
"to_id], и возможно остается однонаправленный сегмент."

msgid "Returns the next available point ID with no point associated to it."
msgstr ""
"Возвращает следующий доступный идентификатор точки без связанной с ним точки."

msgid ""
"Returns the ID of the closest point to [param to_position], optionally taking "
"disabled points into account. Returns [code]-1[/code] if there are no points "
"in the points pool.\n"
"[b]Note:[/b] If several points are the closest to [param to_position], the "
"one with the smallest ID will be returned, ensuring a deterministic result."
msgstr ""
"Возвращает идентификатор ближайшей точки к [param to_position], при "
"необходимости принимая во внимание отключенные точки. Возвращает [code]-1[/"
"code], если в пуле точек нет точек.\n"
"[b]Примечание:[/b] Если несколько точек являются ближайшими к [param "
"to_position], будет возвращена точка с наименьшим идентификатором, что "
"гарантирует детерминированный результат."

msgid ""
"Returns the closest position to [param to_position] that resides inside a "
"segment between two connected points.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 5))\n"
"astar.connect_points(1, 2)\n"
"var res = astar.get_closest_position_in_segment(Vector2(3, 3)) # Returns (0, "
"3)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 5));\n"
"astar.ConnectPoints(1, 2);\n"
"Vector2 res = astar.GetClosestPositionInSegment(new Vector2(3, 3)); // "
"Returns (0, 3)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The result is in the segment that goes from [code]y = 0[/code] to [code]y = "
"5[/code]. It's the closest position in the segment to the given point."
msgstr ""
"Возвращает ближайшую позицию к [param to_position], которая находится внутри "
"сегмента между двумя соединенными точками.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 5))\n"
"astar.connect_points(1, 2)\n"
"var res = astar.get_closest_position_in_segment(Vector2(3, 3)) # Returns (0, "
"3)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 5));\n"
"astar.ConnectPoints(1, 2);\n"
"Vector2 res = astar.GetClosestPositionInSegment(new Vector2(3, 3)); // "
"Returns (0, 3)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Результат находится в сегменте, который идет от [code]y = 0[/code] до [code]y "
"= 5[/code]. Это ближайшая позиция в сегменте к заданной точке."

msgid ""
"Returns an array with the IDs of the points that form the path found by "
"AStar2D between the given points. The array is ordered from the starting "
"point to the ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] When [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is disabled the search may take an unusually long time to finish.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 1), 1) # Default weight is 1\n"
"astar.add_point(3, Vector2(1, 1))\n"
"astar.add_point(4, Vector2(2, 0))\n"
"\n"
"astar.connect_points(1, 2, false)\n"
"astar.connect_points(2, 3, false)\n"
"astar.connect_points(4, 3, false)\n"
"astar.connect_points(1, 4, false)\n"
"\n"
"var res = astar.get_id_path(1, 3) # Returns [1, 2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 1), 1); // Default weight is 1\n"
"astar.AddPoint(3, new Vector2(1, 1));\n"
"astar.AddPoint(4, new Vector2(2, 0));\n"
"\n"
"astar.ConnectPoints(1, 2, false);\n"
"astar.ConnectPoints(2, 3, false);\n"
"astar.ConnectPoints(4, 3, false);\n"
"astar.ConnectPoints(1, 4, false);\n"
"long[] res = astar.GetIdPath(1, 3); // Returns [1, 2, 3]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you change the 2nd point's weight to 3, then the result will be [code][1, "
"4, 3][/code] instead, because now even though the distance is longer, it's "
"\"easier\" to get through point 4 than through point 2."
msgstr ""
"Возвращает массив с идентификаторами точек, которые формируют путь, найденный "
"AStar2D между заданными точками. Массив упорядочен от начальной точки до "
"конечной точки пути.\n"
"Если нет допустимого пути к цели, а [param allow_partial_path] равен "
"[code]true[/code], возвращает путь к ближайшей к цели точке, до которой можно "
"добраться.\n"
"[b]Примечание:[/b] Когда [param allow_partial_path] равен [code]true[/code], "
"а [param to_id] отключен, поиск может занять необычно много времени для "
"завершения.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 1), 1) # Вес по умолчанию: 1\n"
"astar.add_point(3, Vector2(1, 1))\n"
"astar.add_point(4, Vector2(2, 0))\n"
"\n"
"astar.connect_points(1, 2, false)\n"
"astar.connect_points(2, 3, false)\n"
"astar.connect_points(4, 3, false)\n"
"astar.connect_points(1, 4, false)\n"
"\n"
"var res = astar.get_id_path(1, 3) # Returns [1, 2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 1), 1); // Вес по умолчанию: 1\n"
"astar.AddPoint(3, new Vector2(1, 1));\n"
"astar.AddPoint(4, new Vector2(2, 0));\n"
"\n"
"astar.ConnectPoints(1, 2, false);\n"
"astar.ConnectPoints(2, 3, false);\n"
"astar.ConnectPoints(4, 3, false);\n"
"astar.ConnectPoints(1, 4, false);\n"
"long[] res = astar.GetIdPath(1, 3); // Returns [1, 2, 3]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Если изменить вес 2-й точки на 3, то результатом будет [code][1, 4, 3][/"
"code], потому что теперь, несмотря на то, что расстояние больше, пройти через "
"точку 4 «легче», чем через точку 2."

msgid ""
"Returns the capacity of the structure backing the points, useful in "
"conjunction with [method reserve_space]."
msgstr ""
"Возвращает емкость структуры, поддерживающей точки, полезно в сочетании с "
"[method reserve_space]."

msgid ""
"Returns an array with the IDs of the points that form the connection with the "
"given point.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 1))\n"
"astar.add_point(3, Vector2(1, 1))\n"
"astar.add_point(4, Vector2(2, 0))\n"
"\n"
"astar.connect_points(1, 2, true)\n"
"astar.connect_points(1, 3, true)\n"
"\n"
"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 1));\n"
"astar.AddPoint(3, new Vector2(1, 1));\n"
"astar.AddPoint(4, new Vector2(2, 0));\n"
"\n"
"astar.ConnectPoints(1, 2, true);\n"
"astar.ConnectPoints(1, 3, true);\n"
"\n"
"long[] neighbors = astar.GetPointConnections(1); // Returns [2, 3]\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает массив с идентификаторами точек, образующих соединение с заданной "
"точкой.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar2D.new()\n"
"astar.add_point(1, Vector2(0, 0))\n"
"astar.add_point(2, Vector2(0, 1))\n"
"astar.add_point(3, Vector2(1, 1))\n"
"astar.add_point(4, Vector2(2, 0))\n"
"\n"
"astar.connect_points(1, 2, true)\n"
"astar.connect_points(1, 3, true)\n"
"\n"
"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar2D();\n"
"astar.AddPoint(1, new Vector2(0, 0));\n"
"astar.AddPoint(2, new Vector2(0, 1));\n"
"astar.AddPoint(3, new Vector2(1, 1));\n"
"astar.AddPoint(4, new Vector2(2, 0));\n"
"\n"
"astar.ConnectPoints(1, 2, true);\n"
"astar.ConnectPoints(1, 3, true);\n"
"\n"
"long[] neighbors = astar.GetPointConnections(1); // Returns [2, 3]\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns the number of points currently in the points pool."
msgstr "Возвращает текущее количество баллов в пуле баллов."

msgid "Returns an array of all point IDs."
msgstr "Возвращает массив всех идентификаторов точек."

msgid ""
"Returns an array with the points that are in the path found by AStar2D "
"between the given points. The array is ordered from the starting point to the "
"ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] This method is not thread-safe; it can only be used from a "
"single [Thread] at a given time. Consider using [Mutex] to ensure exclusive "
"access to one thread to avoid race conditions.\n"
"Additionally, when [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is disabled the search may take an unusually long time to finish."
msgstr ""
"Возвращает массив точек, находящихся на пути, найденном AStar2D между "
"заданными точками. Массив упорядочен от начальной до конечной точки пути.\n"
"Если допустимого пути к цели нет, а [param allow_partial_path] равен "
"[code]true[/code], возвращает путь ближайшей к цели точке, до которой можно "
"дойти.\n"
"[b]Примечание:[/b] Этот метод не является потокобезопасным; его можно "
"использовать только из одного [Thread] в данный момент времени. Рассмотрите "
"возможность использования [Mutex] для обеспечения исключительного доступа к "
"одному потоку и предотвращения состояния гонки.\n"
"Кроме того, если [param allow_partial_path] равен [code]true[/code], а [param "
"to_id] отключен, поиск может занять необычно много времени."

msgid "Returns the position of the point associated with the given [param id]."
msgstr "Возвращает положение точки, связанной с указанным [param id]."

msgid ""
"Returns the weight scale of the point associated with the given [param id]."
msgstr "Возвращает весовую шкалу точки, связанной с указанным [param id]."

msgid "Returns whether a point associated with the given [param id] exists."
msgstr "Возвращает, существует ли точка, связанная с указанным [param id]."

msgid ""
"Returns whether a point is disabled or not for pathfinding. By default, all "
"points are enabled."
msgstr ""
"Возвращает, отключена ли точка для поиска пути. По умолчанию все точки "
"включены."

msgid ""
"Removes the point associated with the given [param id] from the points pool."
msgstr "Удаляет точку, связанную с указанным [param id], из пула точек."

msgid ""
"Reserves space internally for [param num_nodes] points. Useful if you're "
"adding a known large number of points at once, such as points on a grid."
msgstr ""
"Резервирует внутреннее пространство для точек [param num_nodes]. Полезно, "
"если вы добавляете известное большое количество точек одновременно, например, "
"точек на сетке."

msgid ""
"Disables or enables the specified point for pathfinding. Useful for making a "
"temporary obstacle."
msgstr ""
"Отключает или включает указанную точку для поиска пути. Полезно для создания "
"временного препятствия."

msgid "Sets the [param position] for the point with the given [param id]."
msgstr "Устанавливает [param position] для точки с указанным [param id]."

msgid ""
"Sets the [param weight_scale] for the point with the given [param id]. The "
"[param weight_scale] is multiplied by the result of [method _compute_cost] "
"when determining the overall cost of traveling across a segment from a "
"neighboring point to this point."
msgstr ""
"Устанавливает [param weight_scale] для точки с заданным [param id]. [param "
"weight_scale] умножается на результат [method _compute_cost] при определении "
"общей стоимости перемещения по сегменту от соседней точки до этой точки."

msgid ""
"If [code]true[/code] enables the filtering of neighbors via [method "
"_filter_neighbor]."
msgstr ""
"Если [code]true[/code], то включается фильтрация соседей через [method "
"_filter_neighbor]."

msgid ""
"An implementation of A* for finding the shortest path between two vertices on "
"a connected graph in 3D space."
msgstr ""
"Реализация A* для поиска кратчайшего пути между двумя вершинами связного "
"графа в трехмерном пространстве."

msgid ""
"A* (A star) is a computer algorithm used in pathfinding and graph traversal, "
"the process of plotting short paths among vertices (points), passing through "
"a given set of edges (segments). It enjoys widespread use due to its "
"performance and accuracy. Godot's A* implementation uses points in 3D space "
"and Euclidean distances by default.\n"
"You must add points manually with [method add_point] and create segments "
"manually with [method connect_points]. Once done, you can test if there is a "
"path between two points with the [method are_points_connected] function, get "
"a path containing indices by [method get_id_path], or one containing actual "
"coordinates with [method get_point_path].\n"
"It is also possible to use non-Euclidean distances. To do so, create a script "
"that extends [AStar3D] and override the methods [method _compute_cost] and "
"[method _estimate_cost]. Both should take two point IDs and return the "
"distance between the corresponding points.\n"
"[b]Example:[/b] Use Manhattan distance instead of Euclidean distance:\n"
"[codeblocks]\n"
"[gdscript]\n"
"class_name MyAStar3D\n"
"extends AStar3D\n"
"\n"
"func _compute_cost(u, v):\n"
"\tvar u_pos = get_point_position(u)\n"
"\tvar v_pos = get_point_position(v)\n"
"\treturn abs(u_pos.x - v_pos.x) + abs(u_pos.y - v_pos.y) + abs(u_pos.z - "
"v_pos.z)\n"
"\n"
"func _estimate_cost(u, v):\n"
"\tvar u_pos = get_point_position(u)\n"
"\tvar v_pos = get_point_position(v)\n"
"\treturn abs(u_pos.x - v_pos.x) + abs(u_pos.y - v_pos.y) + abs(u_pos.z - "
"v_pos.z)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[GlobalClass]\n"
"public partial class MyAStar3D : AStar3D\n"
"{\n"
"\tpublic override float _ComputeCost(long fromId, long toId)\n"
"\t{\n"
"\t\tVector3 fromPoint = GetPointPosition(fromId);\n"
"\t\tVector3 toPoint = GetPointPosition(toId);\n"
"\n"
"\t\treturn Mathf.Abs(fromPoint.X - toPoint.X) + Mathf.Abs(fromPoint.Y - "
"toPoint.Y) + Mathf.Abs(fromPoint.Z - toPoint.Z);\n"
"\t}\n"
"\n"
"\tpublic override float _EstimateCost(long fromId, long toId)\n"
"\t{\n"
"\t\tVector3 fromPoint = GetPointPosition(fromId);\n"
"\t\tVector3 toPoint = GetPointPosition(toId);\n"
"\t\treturn Mathf.Abs(fromPoint.X - toPoint.X) + Mathf.Abs(fromPoint.Y - "
"toPoint.Y) + Mathf.Abs(fromPoint.Z - toPoint.Z);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[method _estimate_cost] should return a lower bound of the distance, i.e. "
"[code]_estimate_cost(u, v) <= _compute_cost(u, v)[/code]. This serves as a "
"hint to the algorithm because the custom [method _compute_cost] might be "
"computation-heavy. If this is not the case, make [method _estimate_cost] "
"return the same value as [method _compute_cost] to provide the algorithm with "
"the most accurate information.\n"
"If the default [method _estimate_cost] and [method _compute_cost] methods are "
"used, or if the supplied [method _estimate_cost] method returns a lower bound "
"of the cost, then the paths returned by A* will be the lowest-cost paths. "
"Here, the cost of a path equals the sum of the [method _compute_cost] results "
"of all segments in the path multiplied by the [code]weight_scale[/code]s of "
"the endpoints of the respective segments. If the default methods are used and "
"the [code]weight_scale[/code]s of all points are set to [code]1.0[/code], "
"then this equals the sum of Euclidean distances of all segments in the path."
msgstr ""
"A* (звезда) — это компьютерный алгоритм, используемый в поиске пути и обходе "
"графа, процессе построения коротких путей между вершинами (точками), "
"проходящих через заданный набор ребер (сегментов). Он широко используется "
"благодаря своей производительности и точности. Реализация Godot's A* по "
"умолчанию использует точки в трехмерном пространстве и евклидовы расстояния.\n"
"Вы должны вручную добавлять точки с помощью [method add_point] и вручную "
"создавать сегменты с помощью [method connect_points]. После этого вы можете "
"проверить, есть ли путь между двумя точками, с помощью функции [method "
"are_points_connected], получить путь, содержащий индексы, с помощью [method "
"get_id_path] или путь, содержащий фактические координаты, с помощью [method "
"get_point_path].\n"
"Также возможно использовать неевклидовы расстояния. Для этого создайте "
"скрипт, который расширяет [AStar3D] и переопределяет методы [method "
"_compute_cost] и [method _estimate_cost]. Оба должны принимать два "
"идентификатора точек и возвращать расстояние между соответствующими точками.\n"
"[b]Пример:[/b] Используйте Манхэттенское (Manhattan) расстояние вместо "
"евклидова расстояния:\n"
"[codeblocks]\n"
"[gdscript]\n"
"class_name MyAStar3D\n"
"extends AStar3D\n"
"\n"
"func _compute_cost(u, v):\n"
"\tvar u_pos = get_point_position(u)\n"
"\tvar v_pos = get_point_position(v)\n"
"\treturn abs(u_pos.x - v_pos.x) + abs(u_pos.y - v_pos.y) + abs(u_pos.z - "
"v_pos.z)\n"
"\n"
"func _estimate_cost(u, v):\n"
"\tvar u_pos = get_point_position(u)\n"
"\tvar v_pos = get_point_position(v)\n"
"\treturn abs(u_pos.x - v_pos.x) + abs(u_pos.y - v_pos.y) + abs(u_pos.z - "
"v_pos.z)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[GlobalClass]\n"
"public partial class MyAStar3D : AStar3D\n"
"{\n"
"\tpublic override float _ComputeCost(long fromId, long toId)\n"
"\t{\n"
"\t\tVector3 fromPoint = GetPointPosition(fromId);\n"
"\t\tVector3 toPoint = GetPointPosition(toId);\n"
"\n"
"\t\treturn Mathf.Abs(fromPoint.X - toPoint.X) + Mathf.Abs(fromPoint.Y - "
"toPoint.Y) + Mathf.Abs(fromPoint.Z - toPoint.Z);\n"
"\t}\n"
"\n"
"\tpublic override float _EstimateCost(long fromId, long toId)\n"
"\t{\n"
"\t\tVector3 fromPoint = GetPointPosition(fromId);\n"
"\t\tVector3 toPoint = GetPointPosition(toId);\n"
"\t\treturn Mathf.Abs(fromPoint.X - toPoint.X) + Mathf.Abs(fromPoint.Y - "
"toPoint.Y) + Mathf.Abs(fromPoint.Z - toPoint.Z);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[method _estimate_cost] должен возвращать нижнюю границу расстояния, т. е. "
"[code]_estimate_cost(u, v) <= _compute_cost(u, v)[/code]. Это служит "
"подсказкой для алгоритма, поскольку пользовательский [method _compute_cost] "
"может быть вычислительно интенсивным. Если это не так, заставьте [method "
"_estimate_cost] возвращать то же значение, что и [method _compute_cost], "
"чтобы предоставить алгоритму наиболее точную информацию.\n"
"Если используются методы по умолчанию [method _estimate_cost] и [method "
"_compute_cost] или если предоставленный метод [method _estimate_cost] "
"возвращает нижнюю границу стоимости, то пути, возвращаемые A*, будут путями с "
"наименьшей стоимостью. Здесь стоимость пути равна сумме результатов [method "
"_compute_cost] всех сегментов в пути, умноженных на [code]weight_scale[/"
"code]s конечных точек соответствующих сегментов. Если используются методы по "
"умолчанию и [code]weight_scale[/code]s всех точек установлены на [code]1.0[/"
"code], то это равно сумме евклидовых расстояний всех сегментов в пути."

msgid ""
"Called when computing the cost between two connected points.\n"
"Note that this function is hidden in the default [AStar3D] class."
msgstr ""
"Вызывается при вычислении стоимости между двумя соединенными точками.\n"
"Обратите внимание, что эта функция скрыта в классе по умолчанию [AStar3D]."

msgid ""
"Called when estimating the cost between a point and the path's ending point.\n"
"Note that this function is hidden in the default [AStar3D] class."
msgstr ""
"Вызывается при оценке стоимости между точкой и конечной точкой пути.\n"
"Обратите внимание, что эта функция скрыта в классе по умолчанию [AStar3D]."

msgid ""
"Called when neighboring point enters processing and if [member "
"neighbor_filter_enabled] is [code]true[/code]. If [code]true[/code] is "
"returned the point will not be processed.\n"
"Note that this function is hidden in the default [AStar3D] class."
msgstr ""
"Вызывается, когда соседняя точка входит в обработку и если [member "
"neighbor_filter_enabled] имеет значение [code]true[/code]. Если возвращается "
"значение [code]true[/code], точка не будет обработана.\n"
"Обратите внимание, что эта функция скрыта в классе [AStar3D] по умолчанию."

msgid ""
"Adds a new point at the given position with the given identifier. The [param "
"id] must be 0 or larger, and the [param weight_scale] must be 0.0 or "
"greater.\n"
"The [param weight_scale] is multiplied by the result of [method "
"_compute_cost] when determining the overall cost of traveling across a "
"segment from a neighboring point to this point. Thus, all else being equal, "
"the algorithm prefers points with lower [param weight_scale]s to form a "
"path.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(1, 0, 0), 4) # Adds the point (1, 0, 0) with "
"weight_scale 4 and id 1\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(1, 0, 0), 4); // Adds the point (1, 0, 0) with "
"weight_scale 4 and id 1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If there already exists a point for the given [param id], its position and "
"weight scale are updated to the given values."
msgstr ""
"Добавляет новую точку в указанной позиции с указанным идентификатором. [param "
"id] должен быть 0 или больше, а [param weight_scale] должен быть 0.0 или "
"больше.\n"
"[param weight_scale] умножается на результат [method _compute_cost] при "
"определении общей стоимости перемещения по сегменту от соседней точки до этой "
"точки. Таким образом, при прочих равных условиях алгоритм предпочитает точки "
"с меньшими [param weight_scale] для формирования пути.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(1, 0, 0), 4) # Adds the point (1, 0, 0) with "
"weight_scale 4 and id 1\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(1, 0, 0), 4); // Adds the point (1, 0, 0) with "
"weight_scale 4 and id 1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Если точка для указанного [param id] уже существует, ее положение и шкала "
"веса обновляются до указанных значений."

msgid ""
"Returns whether the two given points are directly connected by a segment. If "
"[param bidirectional] is [code]false[/code], returns whether movement from "
"[param id] to [param to_id] is possible through this segment."
msgstr ""
"Возвращает, соединены ли две заданные точки напрямую сегментом. Если [param "
"bidirectional] равен [code]false[/code], возвращает, возможно ли движение из "
"[param id] в [param to_id] через этот сегмент."

msgid ""
"Creates a segment between the given points. If [param bidirectional] is "
"[code]false[/code], only movement from [param id] to [param to_id] is "
"allowed, not the reverse direction.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(1, 1, 0))\n"
"astar.add_point(2, Vector3(0, 5, 0))\n"
"astar.connect_points(1, 2, false)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(1, 1, 0));\n"
"astar.AddPoint(2, new Vector3(0, 5, 0));\n"
"astar.ConnectPoints(1, 2, false);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает сегмент между заданными точками. Если [param bidirectional] равен "
"[code]false[/code], разрешено только движение от [param id] до [param to_id], "
"но не в обратном направлении.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(1, 1, 0))\n"
"astar.add_point(2, Vector3(0, 5, 0))\n"
"astar.connect_points(1, 2, false)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(1, 1, 0));\n"
"astar.AddPoint(2, new Vector3(0, 5, 0));\n"
"astar.ConnectPoints(1, 2, false);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the closest position to [param to_position] that resides inside a "
"segment between two connected points.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 5, 0))\n"
"astar.connect_points(1, 2)\n"
"var res = astar.get_closest_position_in_segment(Vector3(3, 3, 0)) # Returns "
"(0, 3, 0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 5, 0));\n"
"astar.ConnectPoints(1, 2);\n"
"Vector3 res = astar.GetClosestPositionInSegment(new Vector3(3, 3, 0)); // "
"Returns (0, 3, 0)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The result is in the segment that goes from [code]y = 0[/code] to [code]y = "
"5[/code]. It's the closest position in the segment to the given point."
msgstr ""
"Возвращает ближайшую позицию к [param to_position], которая находится внутри "
"сегмента между двумя соединенными точками.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 5, 0))\n"
"astar.connect_points(1, 2)\n"
"var res = astar.get_closest_position_in_segment(Vector3(3, 3, 0)) # Returns "
"(0, 3, 0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 5, 0));\n"
"astar.ConnectPoints(1, 2);\n"
"Vector3 res = astar.GetClosestPositionInSegment(new Vector3(3, 3, 0)); // "
"Returns (0, 3, 0)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Результат находится в сегменте, который идет от [code]y = 0[/code] до [code]y "
"= 5[/code]. Это ближайшая позиция в сегменте к заданной точке."

msgid ""
"Returns an array with the IDs of the points that form the path found by "
"AStar3D between the given points. The array is ordered from the starting "
"point to the ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] When [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is disabled the search may take an unusually long time to finish.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 1, 0), 1) # Default weight is 1\n"
"astar.add_point(3, Vector3(1, 1, 0))\n"
"astar.add_point(4, Vector3(2, 0, 0))\n"
"\n"
"astar.connect_points(1, 2, false)\n"
"astar.connect_points(2, 3, false)\n"
"astar.connect_points(4, 3, false)\n"
"astar.connect_points(1, 4, false)\n"
"\n"
"var res = astar.get_id_path(1, 3) # Returns [1, 2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 1, 0), 1); // Default weight is 1\n"
"astar.AddPoint(3, new Vector3(1, 1, 0));\n"
"astar.AddPoint(4, new Vector3(2, 0, 0));\n"
"astar.ConnectPoints(1, 2, false);\n"
"astar.ConnectPoints(2, 3, false);\n"
"astar.ConnectPoints(4, 3, false);\n"
"astar.ConnectPoints(1, 4, false);\n"
"long[] res = astar.GetIdPath(1, 3); // Returns [1, 2, 3]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you change the 2nd point's weight to 3, then the result will be [code][1, "
"4, 3][/code] instead, because now even though the distance is longer, it's "
"\"easier\" to get through point 4 than through point 2."
msgstr ""
"Возвращает массив с идентификаторами точек, которые формируют путь, найденный "
"AStar3D между заданными точками. Массив упорядочен от начальной точки до "
"конечной точки пути.\n"
"Если допустимого пути к цели нет, а [param allow_partial_path] равен "
"[code]true[/code], возвращает путь к ближайшей к цели точке, до которой можно "
"добраться.\n"
"[b]Примечание:[/b] Когда [param allow_partial_path] равен [code]true[/code], "
"а [param to_id] отключен, поиск может занять необычно много времени для "
"завершения.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 1, 0), 1) # Вес по умолчанию: 1\n"
"astar.add_point(3, Vector3(1, 1, 0))\n"
"astar.add_point(4, Vector3(2, 0, 0))\n"
"\n"
"astar.connect_points(1, 2, false)\n"
"astar.connect_points(2, 3, false)\n"
"astar.connect_points(4, 3, false)\n"
"astar.connect_points(1, 4, false)\n"
"\n"
"var res = astar.get_id_path(1, 3) # Returns [1, 2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 1, 0), 1); // Вес по умолчанию: 1\n"
"astar.AddPoint(3, new Vector3(1, 1, 0));\n"
"astar.AddPoint(4, new Vector3(2, 0, 0));\n"
"astar.ConnectPoints(1, 2, false);\n"
"astar.ConnectPoints(2, 3, false);\n"
"astar.ConnectPoints(4, 3, false);\n"
"astar.ConnectPoints(1, 4, false);\n"
"long[] res = astar.GetIdPath(1, 3); // Returns [1, 2, 3]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Если изменить вес 2-й точки на 3, то результатом будет [code][1, 4, 3][/"
"code], потому что теперь, несмотря на то, что расстояние больше, пройти через "
"точку 4 «легче», чем через точку 2."

msgid ""
"Returns an array with the IDs of the points that form the connection with the "
"given point.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 1, 0))\n"
"astar.add_point(3, Vector3(1, 1, 0))\n"
"astar.add_point(4, Vector3(2, 0, 0))\n"
"\n"
"astar.connect_points(1, 2, true)\n"
"astar.connect_points(1, 3, true)\n"
"\n"
"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 1, 0));\n"
"astar.AddPoint(3, new Vector3(1, 1, 0));\n"
"astar.AddPoint(4, new Vector3(2, 0, 0));\n"
"astar.ConnectPoints(1, 2, true);\n"
"astar.ConnectPoints(1, 3, true);\n"
"\n"
"long[] neighbors = astar.GetPointConnections(1); // Returns [2, 3]\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает массив с идентификаторами точек, образующих соединение с заданной "
"точкой.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar = AStar3D.new()\n"
"astar.add_point(1, Vector3(0, 0, 0))\n"
"astar.add_point(2, Vector3(0, 1, 0))\n"
"astar.add_point(3, Vector3(1, 1, 0))\n"
"astar.add_point(4, Vector3(2, 0, 0))\n"
"\n"
"astar.connect_points(1, 2, true)\n"
"astar.connect_points(1, 3, true)\n"
"\n"
"var neighbors = astar.get_point_connections(1) # Returns [2, 3]\n"
"[/gdscript]\n"
"[csharp]\n"
"var astar = new AStar3D();\n"
"astar.AddPoint(1, new Vector3(0, 0, 0));\n"
"astar.AddPoint(2, new Vector3(0, 1, 0));\n"
"astar.AddPoint(3, new Vector3(1, 1, 0));\n"
"astar.AddPoint(4, new Vector3(2, 0, 0));\n"
"astar.ConnectPoints(1, 2, true);\n"
"astar.ConnectPoints(1, 3, true);\n"
"\n"
"long[] neighbors = astar.GetPointConnections(1); // Returns [2, 3]\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns an array with the points that are in the path found by AStar3D "
"between the given points. The array is ordered from the starting point to the "
"ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] This method is not thread-safe; it can only be used from a "
"single [Thread] at a given time. Consider using [Mutex] to ensure exclusive "
"access to one thread to avoid race conditions.\n"
"Additionally, when [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is disabled the search may take an unusually long time to finish."
msgstr ""
"Возвращает массив точек, находящихся на пути, найденном AStar3D между "
"заданными точками. Массив упорядочен от начальной до конечной точки пути.\n"
"Если допустимого пути к цели нет, а [param allow_partial_path] равен "
"[code]true[/code], возвращает путь к ближайшей к цели точке, до которой можно "
"дойти.\n"
"[b]Примечание:[/b] Этот метод не является потокобезопасным; его можно "
"использовать только из одного [Thread] в данный момент времени. Рассмотрите "
"возможность использования [Mutex] для обеспечения исключительного доступа к "
"одному потоку и предотвращения состояния гонки.\n"
"Кроме того, если [param allow_partial_path] равен [code]true[/code], а [param "
"to_id] отключен, поиск может занять необычно много времени."

msgid ""
"An implementation of A* for finding the shortest path between two points on a "
"partial 2D grid."
msgstr ""
"Реализация A* для поиска кратчайшего пути между двумя точками на частичной "
"двумерной сетке."

msgid ""
"[AStarGrid2D] is a variant of [AStar2D] that is specialized for partial 2D "
"grids. It is simpler to use because it doesn't require you to manually create "
"points and connect them together. This class also supports multiple types of "
"heuristics, modes for diagonal movement, and a jumping mode to speed up "
"calculations.\n"
"To use [AStarGrid2D], you only need to set the [member region] of the grid, "
"optionally set the [member cell_size], and then call the [method update] "
"method:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar_grid = AStarGrid2D.new()\n"
"astar_grid.region = Rect2i(0, 0, 32, 32)\n"
"astar_grid.cell_size = Vector2(16, 16)\n"
"astar_grid.update()\n"
"print(astar_grid.get_id_path(Vector2i(0, 0), Vector2i(3, 4))) # Prints [(0, "
"0), (1, 1), (2, 2), (3, 3), (3, 4)]\n"
"print(astar_grid.get_point_path(Vector2i(0, 0), Vector2i(3, 4))) # Prints "
"[(0, 0), (16, 16), (32, 32), (48, 48), (48, 64)]\n"
"[/gdscript]\n"
"[csharp]\n"
"AStarGrid2D astarGrid = new AStarGrid2D();\n"
"astarGrid.Region = new Rect2I(0, 0, 32, 32);\n"
"astarGrid.CellSize = new Vector2I(16, 16);\n"
"astarGrid.Update();\n"
"GD.Print(astarGrid.GetIdPath(Vector2I.Zero, new Vector2I(3, 4))); // Prints "
"[(0, 0), (1, 1), (2, 2), (3, 3), (3, 4)]\n"
"GD.Print(astarGrid.GetPointPath(Vector2I.Zero, new Vector2I(3, 4))); // "
"Prints [(0, 0), (16, 16), (32, 32), (48, 48), (48, 64)]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To remove a point from the pathfinding grid, it must be set as \"solid\" with "
"[method set_point_solid]."
msgstr ""
"[AStarGrid2D] — это вариант [AStar2D], который специализирован для частичных "
"2D-сеток. Он проще в использовании, поскольку не требует ручного создания "
"точек и их соединения. Этот класс также поддерживает несколько типов "
"эвристик, режимы для диагонального перемещения и режим прыжка для ускорения "
"вычислений.\n"
"Чтобы использовать [AStarGrid2D], вам нужно только задать [member region] "
"сетки, опционально задать [member cell_size], а затем вызвать метод [method "
"update]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var astar_grid = AStarGrid2D.new()\n"
"astar_grid.region = Rect2i(0, 0, 32, 32)\n"
"astar_grid.cell_size = Vector2(16, 16)\n"
"astar_grid.update()\n"
"print(astar_grid.get_id_path(Vector2i(0, 0), Vector2i(3, 4))) # Prints [(0, "
"0), (1, 1), (2, 2), (3, 3), (3, 4)]\n"
"print(astar_grid.get_point_path(Vector2i(0, 0), Vector2i(3, 4))) # Prints "
"[(0, 0), (16, 16), (32, 32), (48, 48), (48, 64)]\n"
"[/gdscript]\n"
"[csharp]\n"
"AStarGrid2D astarGrid = new AStarGrid2D();\n"
"astarGrid.Region = new Rect2I(0, 0, 32, 32);\n"
"astarGrid.CellSize = new Vector2I(16, 16);\n"
"astarGrid.Update();\n"
"GD.Print(astarGrid.GetIdPath(Vector2I.Zero, new Vector2I(3, 4))); // Prints "
"[(0, 0), (1, 1), (2, 2), (3, 3), (3, 4)]\n"
"GD.Print(astarGrid.GetPointPath(Vector2I.Zero, new Vector2I(3, 4))); // "
"Prints [(0, 0), (16, 16), (32, 32), (48, 48), (48, 64)]\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Чтобы удалить точку из сетки поиска пути, ее необходимо сделать «сплошной» с "
"помощью [method set_point_solid]."

msgid ""
"Called when computing the cost between two connected points.\n"
"Note that this function is hidden in the default [AStarGrid2D] class."
msgstr ""
"Вызывается при вычислении стоимости между двумя соединенными точками.\n"
"Обратите внимание, что эта функция скрыта по умолчанию в классе [AStarGrid2D]."

msgid ""
"Called when estimating the cost between a point and the path's ending point.\n"
"Note that this function is hidden in the default [AStarGrid2D] class."
msgstr ""
"Вызывается при оценке стоимости между точкой и конечной точкой пути.\n"
"Обратите внимание, что эта функция скрыта по умолчанию в классе [AStarGrid2D]."

msgid ""
"Clears the grid and sets the [member region] to [code]Rect2i(0, 0, 0, 0)[/"
"code]."
msgstr ""
"Очищает сетку и устанавливает [member region] на [code]Rect2i(0, 0, 0, 0)[/"
"code]."

msgid ""
"Fills the given [param region] on the grid with the specified value for the "
"solid flag.\n"
"[b]Note:[/b] Calling [method update] is not needed after the call of this "
"function."
msgstr ""
"Заполняет указанную [param region] на сетке указанным значением для флага "
"сплошной заливки.\n"
"[b]Примечание:[/b] Вызов [method update] не требуется после вызова этой "
"функции."

msgid ""
"Fills the given [param region] on the grid with the specified value for the "
"weight scale.\n"
"[b]Note:[/b] Calling [method update] is not needed after the call of this "
"function."
msgstr ""
"Заполняет указанную [param region] на сетке указанным значением для весовой "
"шкалы.\n"
"[b]Примечание:[/b] Вызов [method update] не требуется после вызова этой "
"функции."

msgid ""
"Returns an array with the IDs of the points that form the path found by "
"AStar2D between the given points. The array is ordered from the starting "
"point to the ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] When [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is solid the search may take an unusually long time to finish."
msgstr ""
"Возвращает массив с идентификаторами точек, которые формируют путь, найденный "
"AStar2D между заданными точками. Массив упорядочен от начальной точки до "
"конечной точки пути.\n"
"Если нет допустимого пути к цели, а [param allow_partial_path] равен "
"[code]true[/code], возвращает путь к ближайшей к цели точке, до которой можно "
"добраться.\n"
"[b]Примечание:[/b] Когда [param allow_partial_path] равен [code]true[/code], "
"а [param to_id] — сплошной, поиск может занять необычно много времени."

msgid ""
"Returns an array of dictionaries with point data ([code]id[/code]: "
"[Vector2i], [code]position[/code]: [Vector2], [code]solid[/code]: [bool], "
"[code]weight_scale[/code]: [float]) within a [param region]."
msgstr ""
"Возвращает массив словарей с данными точек ([code]id[/code]: [Vector2i], "
"[code]position[/code]: [Vector2], [code]solid[/code]: [bool], "
"[code]weight_scale[/code]: [float]) в области [param]."

msgid ""
"Returns an array with the points that are in the path found by [AStarGrid2D] "
"between the given points. The array is ordered from the starting point to the "
"ending point of the path.\n"
"If there is no valid path to the target, and [param allow_partial_path] is "
"[code]true[/code], returns a path to the point closest to the target that can "
"be reached.\n"
"[b]Note:[/b] This method is not thread-safe; it can only be used from a "
"single [Thread] at a given time. Consider using [Mutex] to ensure exclusive "
"access to one thread to avoid race conditions.\n"
"Additionally, when [param allow_partial_path] is [code]true[/code] and [param "
"to_id] is solid the search may take an unusually long time to finish."
msgstr ""
"Возвращает массив с точками, которые находятся на пути, найденном "
"[AStarGrid2D] между заданными точками. Массив упорядочен от начальной точки "
"до конечной точки пути.\n"
"Если нет допустимого пути к цели, а [param allow_partial_path] равен "
"[code]true[/code], возвращает путь к ближайшей к цели точке, до которой можно "
"добраться.\n"
"[b]Примечание:[/b] Этот метод не является потокобезопасным. При вызове из "
"[Thread] он вернет пустой массив и выведет сообщение об ошибке.\n"
"Кроме того, когда [param allow_partial_path] равен [code]true[/code], а "
"[param to_id] является сплошным, поиск может занять необычно много времени "
"для завершения."

msgid ""
"Indicates that the grid parameters were changed and [method update] needs to "
"be called."
msgstr ""
"Указывает, что параметры сетки были изменены и необходимо вызвать [method "
"update]."

msgid ""
"Returns [code]true[/code] if the [param x] and [param y] is a valid grid "
"coordinate (id), i.e. if it is inside [member region]. Equivalent to "
"[code]region.has_point(Vector2i(x, y))[/code]."
msgstr ""
"Возвращает [code]true[/code], если [param x] и [param y] являются допустимой "
"координатой сетки (id), т. е. если она находится внутри [member region]. "
"Эквивалентно [code]region.has_point(Vector2i(x, y))[/code]."

msgid ""
"Returns [code]true[/code] if the [param id] vector is a valid grid "
"coordinate, i.e. if it is inside [member region]. Equivalent to "
"[code]region.has_point(id)[/code]."
msgstr ""
"Возвращает [code]true[/code], если вектор [param id] является допустимой "
"координатой сетки, т. е. если он находится внутри [member region]. "
"Эквивалентно [code]region.has_point(id)[/code]."

msgid ""
"Returns [code]true[/code] if a point is disabled for pathfinding. By default, "
"all points are enabled."
msgstr ""
"Возвращает [code]true[/code], если точка отключена для поиска пути. По "
"умолчанию все точки включены."

msgid ""
"Disables or enables the specified point for pathfinding. Useful for making an "
"obstacle. By default, all points are enabled.\n"
"[b]Note:[/b] Calling [method update] is not needed after the call of this "
"function."
msgstr ""
"Отключает или включает указанную точку для поиска пути. Полезно для создания "
"препятствия. По умолчанию включены все точки.\n"
"[b]Примечание:[/b] Вызов [method update] не требуется после вызова этой "
"функции."

msgid ""
"Sets the [param weight_scale] for the point with the given [param id]. The "
"[param weight_scale] is multiplied by the result of [method _compute_cost] "
"when determining the overall cost of traveling across a segment from a "
"neighboring point to this point.\n"
"[b]Note:[/b] Calling [method update] is not needed after the call of this "
"function."
msgstr ""
"Устанавливает [param weight_scale] для точки с заданным [param id]. [param "
"weight_scale] умножается на результат [method _compute_cost] при определении "
"общей стоимости перемещения по сегменту от соседней точки до этой точки.\n"
"[b]Примечание:[/b] Вызов [method update] не требуется после вызова этой "
"функции."

msgid ""
"Updates the internal state of the grid according to the parameters to prepare "
"it to search the path. Needs to be called if parameters like [member region], "
"[member cell_size] or [member offset] are changed. [method is_dirty] will "
"return [code]true[/code] if this is the case and this needs to be called.\n"
"[b]Note:[/b] All point data (solidity and weight scale) will be cleared."
msgstr ""
"Обновляет внутреннее состояние сетки в соответствии с параметрами, чтобы "
"подготовить ее к поиску пути. Необходимо вызывать, если параметры, такие как "
"[member region], [member cell_size] или [member offset], изменены. [method "
"is_dirty] вернет [code]true[/code], если это так и это необходимо вызвать.\n"
"[b]Примечание:[/b] Все данные точек (твердость и шкала веса) будут очищены."

msgid ""
"The cell shape. Affects how the positions are placed in the grid. If changed, "
"[method update] needs to be called before finding the next path."
msgstr ""
"Форма ячейки. Влияет на то, как позиции размещаются в сетке. Если изменено, "
"необходимо вызвать [method update] перед поиском следующего пути."

msgid ""
"The size of the point cell which will be applied to calculate the resulting "
"point position returned by [method get_point_path]. If changed, [method "
"update] needs to be called before finding the next path."
msgstr ""
"Размер ячейки точки, который будет применен для расчета результирующей "
"позиции точки, возвращаемой [method get_point_path]. Если изменено, [method "
"update] необходимо вызвать перед поиском следующего пути."

msgid ""
"The default [enum Heuristic] which will be used to calculate the cost between "
"two points if [method _compute_cost] was not overridden."
msgstr ""
"Значение по умолчанию [enum Heuristic], которое будет использоваться для "
"расчета стоимости между двумя точками, если [method _compute_cost] не был "
"переопределен."

msgid ""
"The default [enum Heuristic] which will be used to calculate the cost between "
"the point and the end point if [method _estimate_cost] was not overridden."
msgstr ""
"Значение по умолчанию [enum Heuristic], которое будет использоваться для "
"расчета стоимости между точкой и конечной точкой, если [method "
"_estimate_cost] не был переопределен."

msgid ""
"A specific [enum DiagonalMode] mode which will force the path to avoid or "
"accept the specified diagonals."
msgstr ""
"Конкретный режим [enum DiagonalMode], который заставит путь избегать или "
"принимать указанные диагонали."

msgid ""
"Enables or disables jumping to skip up the intermediate points and speeds up "
"the searching algorithm.\n"
"[b]Note:[/b] Currently, toggling it on disables the consideration of weight "
"scaling in pathfinding."
msgstr ""
"Включает или отключает возможность перехода через промежуточные точки и "
"ускоряет алгоритм поиска.\n"
"[b]Примечание:[/b] В настоящее время включение отключает учет масштабирования "
"веса при поиске пути."

msgid ""
"The offset of the grid which will be applied to calculate the resulting point "
"position returned by [method get_point_path]. If changed, [method update] "
"needs to be called before finding the next path."
msgstr ""
"Смещение сетки, которое будет применено для расчета результирующего положения "
"точки, возвращаемого [method get_point_path]. Если изменено, [method update] "
"необходимо вызвать перед поиском следующего пути."

msgid ""
"The region of grid cells available for pathfinding. If changed, [method "
"update] needs to be called before finding the next path."
msgstr ""
"Область ячеек сетки, доступная для поиска пути. Если изменено, необходимо "
"вызвать [method update] перед поиском следующего пути."

msgid "Use [member region] instead."
msgstr "Вместо этого используйте [member region]."

msgid ""
"The size of the grid (number of cells of size [member cell_size] on each "
"axis). If changed, [method update] needs to be called before finding the next "
"path."
msgstr ""
"Размер сетки (количество ячеек размером [member cell_size] на каждой оси). "
"Если изменено, необходимо вызвать [method update] перед поиском следующего "
"пути."

msgid ""
"The [url=https://en.wikipedia.org/wiki/Euclidean_distance]Euclidean "
"heuristic[/url] to be used for the pathfinding using the following formula:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"result = sqrt(dx * dx + dy * dy)\n"
"[/codeblock]\n"
"[b]Note:[/b] This is also the internal heuristic used in [AStar3D] and "
"[AStar2D] by default (with the inclusion of possible z-axis coordinate)."
msgstr ""
"[url=https://en.wikipedia.org/wiki/Euclidean_distance]Евклидова эвристика "
"(Euclidean heuristic) [/url], используемая для поиска пути, по следующей "
"формуле:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"result = sqrt(dx * dx + dy * dy)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Это также внутренняя эвристика, используемая в [AStar3D] и "
"[AStar2D] по умолчанию (с включением возможной координаты оси z)."

msgid ""
"The [url=https://en.wikipedia.org/wiki/Taxicab_geometry]Manhattan heuristic[/"
"url] to be used for the pathfinding using the following formula:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"result = dx + dy\n"
"[/codeblock]\n"
"[b]Note:[/b] This heuristic is intended to be used with 4-side orthogonal "
"movements, provided by setting the [member diagonal_mode] to [constant "
"DIAGONAL_MODE_NEVER]."
msgstr ""
"[url=https://en.wikipedia.org/wiki/Taxicab_geometry]Manhattan heuristic[/url] "
"для использования при поиске пути с использованием следующей формулы:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"result = dx + dy\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Эта эвристика предназначена для использования с 4-"
"сторонними ортогональными движениями, обеспечиваемыми установкой [member "
"dialog_mode] на [constant DIAGONAL_MODE_NEVER]."

msgid ""
"The Octile heuristic to be used for the pathfinding using the following "
"formula:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"f = sqrt(2) - 1\n"
"result = (dx < dy) ? f * dx + dy : f * dy + dx;\n"
"[/codeblock]"
msgstr ""
"Эвристика Octile, используемая для поиска пути, использует следующую "
"формулу:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"f = sqrt(2) - 1\n"
"result = (dx < dy) ? f * dx + dy : f * dy + dx;\n"
"[/codeblock]"

msgid ""
"The [url=https://en.wikipedia.org/wiki/Chebyshev_distance]Chebyshev "
"heuristic[/url] to be used for the pathfinding using the following formula:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"result = max(dx, dy)\n"
"[/codeblock]"
msgstr ""
"[url=https://en.wikipedia.org/wiki/Chebyshev_distance]Chebyshev heuristic[/"
"url] для использования при поиске пути с использованием следующей формулы:\n"
"[codeblock]\n"
"dx = abs(to_id.x - from_id.x)\n"
"dy = abs(to_id.y - from_id.y)\n"
"result = max(dx, dy)\n"
"[/codeblock]"

msgid "Represents the size of the [enum Heuristic] enum."
msgstr "Представляет размер перечисления [enum Heuristic]."

msgid ""
"The pathfinding algorithm will ignore solid neighbors around the target cell "
"and allow passing using diagonals."
msgstr ""
"Алгоритм поиска пути будет игнорировать сплошных соседей вокруг целевой "
"ячейки и разрешать проход по диагоналям."

msgid ""
"The pathfinding algorithm will ignore all diagonals and the way will be "
"always orthogonal."
msgstr ""
"Алгоритм поиска пути будет игнорировать все диагонали, и путь всегда будет "
"ортогональным."

msgid ""
"The pathfinding algorithm will avoid using diagonals if at least two "
"obstacles have been placed around the neighboring cells of the specific path "
"segment."
msgstr ""
"Алгоритм поиска пути избегает использования диагоналей, если вокруг соседних "
"ячеек определенного сегмента пути размещено не менее двух препятствий."

msgid ""
"The pathfinding algorithm will avoid using diagonals if any obstacle has been "
"placed around the neighboring cells of the specific path segment."
msgstr ""
"Алгоритм поиска пути избегает использования диагоналей, если вокруг соседних "
"ячеек определенного сегмента пути размещено какое-либо препятствие."

msgid "Represents the size of the [enum DiagonalMode] enum."
msgstr "Представляет размер перечисления [enum DiagonalMode]."

msgid "Rectangular cell shape."
msgstr "Прямоугольная форма ячеек."

msgid ""
"Diamond cell shape (for isometric look). Cell coordinates layout where the "
"horizontal axis goes up-right, and the vertical one goes down-right."
msgstr ""
"Форма ячейки ромба (для изометрического вида). Координаты ячейки, где "
"горизонтальная ось идет вверх-вправо, а вертикальная — вниз-вправо."

msgid ""
"Diamond cell shape (for isometric look). Cell coordinates layout where the "
"horizontal axis goes down-right, and the vertical one goes down-left."
msgstr ""
"Форма ячейки ромба (для изометрического вида). Координаты ячейки, где "
"горизонтальная ось идет вниз-вправо, а вертикальная — вниз-влево."

msgid "Represents the size of the [enum CellShape] enum."
msgstr "Представляет размер перечисления [enum CellShape]."

msgid "A texture that crops out part of another Texture2D."
msgstr "Текстура, которая вырезает часть другой Texture2D."

msgid ""
"[Texture2D] resource that draws only part of its [member atlas] texture, as "
"defined by the [member region]. An additional [member margin] can also be "
"set, which is useful for small adjustments.\n"
"Multiple [AtlasTexture] resources can be cropped from the same [member "
"atlas]. Packing many smaller textures into a singular large texture helps to "
"optimize video memory costs and render calls.\n"
"[b]Note:[/b] [AtlasTexture] cannot be used in an [AnimatedTexture], and will "
"not tile properly in nodes such as [TextureRect] or [Sprite2D]. To tile an "
"[AtlasTexture], modify its [member region] instead."
msgstr ""
"Ресурс [Texture2D], который рисует только часть своей текстуры [member "
"atlas], как определено [member region]. Также можно задать дополнительное "
"[member margin], что полезно для небольших корректировок.\n"
"Множественные ресурсы [AtlasTexture] можно обрезать из одного [member atlas]. "
"Упаковка множества меньших текстур в одну большую текстуру помогает "
"оптимизировать затраты видеопамяти и вызовы рендеринга.\n"
"[b]Примечание:[/b] [AtlasTexture] нельзя использовать в [AnimatedTexture], и "
"он не будет правильно размещаться в таких узлах, как [TextureRect] или "
"[Sprite2D]. Чтобы разместить [AtlasTexture], измените его [member region]."

msgid ""
"The texture that contains the atlas. Can be any type inheriting from "
"[Texture2D], including another [AtlasTexture]."
msgstr ""
"Текстура, содержащая атлас. Может быть любого типа, наследуемого от "
"[Texture2D], включая другой [AtlasTexture]."

msgid ""
"If [code]true[/code], the area outside of the [member region] is clipped to "
"avoid bleeding of the surrounding texture pixels."
msgstr ""
"Если [code]true[/code], область за пределами [member region] обрезается, "
"чтобы избежать утечки окружающих пикселей текстуры."

msgid ""
"The margin around the [member region]. Useful for small adjustments. If the "
"[member Rect2.size] of this property (\"w\" and \"h\" in the editor) is set, "
"the drawn texture is resized to fit within the margin."
msgstr ""
"Поле вокруг [member region]. Полезно для небольших корректировок. Если задано "
"[member Rect2.size] этого свойства (\"w\" и \"h\" в редакторе), нарисованная "
"текстура изменяет размер, чтобы вписаться в поле."

msgid ""
"The region used to draw the [member atlas]. If either dimension of the "
"region's size is [code]0[/code], the value from [member atlas] size will be "
"used for that axis instead."
msgstr ""
"Регион, используемый для рисования [member atlas]. Если какое-либо измерение "
"размера региона равно [code]0[/code], вместо этого для этой оси будет "
"использоваться значение из [member atlas]."

msgid "Stores information about the audio buses."
msgstr "Сохраняет информацию об аудио шинах."

msgid ""
"Stores position, muting, solo, bypass, effects, effect position, volume, and "
"the connections between buses. See [AudioServer] for usage."
msgstr ""
"Сохраняет позицию, отключение звука, соло, обход, эффекты, позицию эффекта, "
"громкость и соединения между шинами. См. [AudioServer] для использования."

msgid "Base class for audio effect resources."
msgstr "Базовый класс для ресурсов аудиоэффектов."

msgid ""
"The base [Resource] for every audio effect. In the editor, an audio effect "
"can be added to the current bus layout through the Audio panel. At run-time, "
"it is also possible to manipulate audio effects through [method "
"AudioServer.add_bus_effect], [method AudioServer.remove_bus_effect], and "
"[method AudioServer.get_bus_effect].\n"
"When applied on a bus, an audio effect creates a corresponding "
"[AudioEffectInstance]. The instance is directly responsible for manipulating "
"the sound, based on the original audio effect's properties."
msgstr ""
"Базовый [Resource] для каждого аудио-эффекта. В редакторе аудио-эффект можно "
"добавить к текущему макету шины через панель Аудио. Во время выполнения также "
"можно управлять аудио-эффектами через [method AudioServer.add_bus_effect], "
"[method AudioServer.remove_bus_effect] и [method "
"AudioServer.get_bus_effect].\n"
"При применении к шине аудио-эффект создает соответствующий "
"[AudioEffectInstance]. Экземпляр напрямую отвечает за управление звуком на "
"основе свойств исходного аудио-эффекта."

msgid "Audio buses"
msgstr "Аудиошины"

msgid "Audio Microphone Record Demo"
msgstr "Демонстрация записи аудио с микрофона"

msgid ""
"Override this method to customize the [AudioEffectInstance] created when this "
"effect is applied on a bus in the editor's Audio panel, or through [method "
"AudioServer.add_bus_effect].\n"
"[codeblock]\n"
"extends AudioEffect\n"
"\n"
"@export var strength = 4.0\n"
"\n"
"func _instantiate():\n"
"\tvar effect = CustomAudioEffectInstance.new()\n"
"\teffect.base = self\n"
"\n"
"\treturn effect\n"
"[/codeblock]\n"
"[b]Note:[/b] It is recommended to keep a reference to the original "
"[AudioEffect] in the new instance. Depending on the implementation this "
"allows the effect instance to listen for changes at run-time and be modified "
"accordingly."
msgstr ""
"Переопределите этот метод, чтобы настроить [AudioEffectInstance], создаваемый "
"при применении этого эффекта к шине на панели «Аудио» редактора или через "
"[method AudioServer.add_bus_effect].\n"
"[codeblock]\n"
"extends AudioEffect\n"
"\n"
"@export var strength = 4.0\n"
"\n"
"func _instantiate():\n"
"\tvar effect = CustomAudioEffectInstance.new()\n"
"\teffect.base = self\n"
"\n"
"\treturn effect\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Рекомендуется сохранить ссылку на оригинальный "
"[AudioEffect] в новом экземпляре. В зависимости от реализации это позволяет "
"экземпляру эффекта прослушивать изменения во время выполнения и изменяться "
"соответствующим образом."

msgid "Adds an amplifying audio effect to an audio bus."
msgstr "Добавляет эффект усиления звука к аудио-шине."

msgid "Increases or decreases the volume being routed through the audio bus."
msgstr "Увеличивает или уменьшает громкость, передаваемую через аудио-шину."

msgid ""
"Amount of amplification in decibels. Positive values make the sound louder, "
"negative values make it quieter. Value can range from -80 to 24."
msgstr ""
"Величина усиления в децибелах. Положительные значения делают звук громче, "
"отрицательные — тише. Значение может быть в диапазоне от -80 до 24."

msgid ""
"Amount of amplification as a linear value.\n"
"[b]Note:[/b] This member modifies [member volume_db] for convenience. The "
"returned value is equivalent to the result of [method "
"@GlobalScope.db_to_linear] on [member volume_db]. Setting this member is "
"equivalent to setting [member volume_db] to the result of [method "
"@GlobalScope.linear_to_db] on a value."
msgstr ""
"Величина усиления как линейное значение.\n"
"[b]Примечание:[/b] Этот член изменяет [member volume_db] для удобства. "
"Возвращаемое значение эквивалентно результату [method "
"@GlobalScope.db_to_linear] для [member volume_db]. Установка этого члена "
"эквивалентна установке [member volume_db] на результат [method "
"@GlobalScope.linear_to_db] для значения."

msgid "Adds a band limit filter to the audio bus."
msgstr "Добавляет фильтр ограничения полосы пропускания к аудио-шине."

msgid ""
"Limits the frequencies in a range around the [member "
"AudioEffectFilter.cutoff_hz] and allows frequencies outside of this range to "
"pass."
msgstr ""
"Ограничивает частоты в диапазоне вокруг [member AudioEffectFilter.cutoff_hz] "
"и пропускает частоты за пределами этого диапазона."

msgid "Adds a band pass filter to the audio bus."
msgstr "Добавляет полосовой фильтр к аудио-шине."

msgid ""
"Attenuates the frequencies inside of a range around the [member "
"AudioEffectFilter.cutoff_hz] and cuts frequencies outside of this band."
msgstr ""
"Ослабляет частоты внутри диапазона вокруг [member "
"AudioEffectFilter.cutoff_hz] и обрезает частоты за пределами этой полосы."

msgid "Captures audio from an audio bus in real-time."
msgstr "Захватывает звук с аудио-шины в режиме реального времени."

msgid ""
"AudioEffectCapture is an AudioEffect which copies all audio frames from the "
"attached audio effect bus into its internal ring buffer.\n"
"Application code should consume these audio frames from this ring buffer "
"using [method get_buffer] and process it as needed, for example to capture "
"data from an [AudioStreamMicrophone], implement application-defined effects, "
"or to transmit audio over the network. When capturing audio data from a "
"microphone, the format of the samples will be stereo 32-bit floating-point "
"PCM.\n"
"Unlike [AudioEffectRecord], this effect only returns the raw audio samples "
"instead of encoding them into an [AudioStream]."
msgstr ""
"AudioEffectCapture — это AudioEffect, который копирует все аудио-кадры из "
"подключенной шины аудио-эффектов в свой внутренний кольцевой буфер.\n"
"Код приложения должен потреблять эти аудио-кадры из этого кольцевого буфера с "
"помощью [method get_buffer] и обрабатывать их по мере необходимости, "
"например, для захвата данных из [AudioStreamMicrophone], реализации эффектов, "
"определяемых приложением, или для передачи звука по сети. При захвате "
"аудиоданных с микрофона формат сэмплов будет стерео PCM 32-бит с плавающей "
"точкой.\n"
"В отличие от [AudioEffectRecord], этот эффект возвращает только "
"необработанные аудио-сэмплы, а не кодирует их в [AudioStream]."

msgid ""
"Returns [code]true[/code] if at least [param frames] audio frames are "
"available to read in the internal ring buffer."
msgstr ""
"Возвращает [code]true[/code], если по крайней мере [param frames] аудиокадров "
"доступны для чтения во внутреннем кольцевом буфере."

msgid ""
"Clears the internal ring buffer.\n"
"[b]Note:[/b] Calling this during a capture can cause the loss of samples "
"which causes popping in the playback."
msgstr ""
"Очищает внутренний кольцевой буфер.\n"
"[b]Примечание:[/b] Вызов этого во время захвата может привести к потере "
"сэмплов, что приведет к хлопкам при воспроизведении."

msgid ""
"Gets the next [param frames] audio samples from the internal ring buffer.\n"
"Returns a [PackedVector2Array] containing exactly [param frames] audio "
"samples if available, or an empty [PackedVector2Array] if insufficient data "
"was available.\n"
"The samples are signed floating-point PCM between [code]-1[/code] and "
"[code]1[/code]. You will have to scale them if you want to use them as 8 or "
"16-bit integer samples. ([code]v = 0x7fff * samples[0].x[/code])"
msgstr ""
"Получает следующие [param frames] аудиосэмплов из внутреннего кольцевого "
"буфера.\n"
"Возвращает [PackedVector2Array], содержащий ровно [param frames] "
"аудиосэмплов, если они доступны, или пустой [PackedVector2Array], если данных "
"было недостаточно.\n"
"Сэмплы представляют собой PCM с плавающей точкой со знаком между [code]-1[/"
"code] и [code]1[/code]. Вам придется масштабировать их, если вы хотите "
"использовать их как 8- или 16-битные целочисленные сэмплы. ([code]v = 0x7fff "
"* samples[0].x[/code])"

msgid "Returns the total size of the internal ring buffer in frames."
msgstr "Возвращает общий размер внутреннего кольцевого буфера в кадрах."

msgid ""
"Returns the number of audio frames discarded from the audio bus due to full "
"buffer."
msgstr ""
"Возвращает количество аудио-кадров, отброшенных из аудио-шины из-за "
"заполнения буфера."

msgid ""
"Returns the number of frames available to read using [method get_buffer]."
msgstr ""
"Возвращает количество кадров, доступных для чтения, с помощью [method "
"get_buffer]."

msgid "Returns the number of audio frames inserted from the audio bus."
msgstr "Возвращает количество аудиокадров, вставленных из аудиошины."

msgid ""
"Length of the internal ring buffer, in seconds. Setting the buffer length "
"will have no effect if already initialized."
msgstr ""
"Длина внутреннего кольцевого буфера в секундах. Установка длины буфера не "
"даст никакого эффекта, если она уже инициализирована."

msgid "Adds a chorus audio effect."
msgstr "Добавляет звуковой эффект хора."

msgid ""
"Adds a chorus audio effect. The effect applies a filter with voices to "
"duplicate the audio source and manipulate it through the filter."
msgstr ""
"Добавляет эффект хора. Эффект применяет фильтр с голосами для дублирования "
"источника звука и манипулирования им через фильтр."

msgid "The effect's raw signal."
msgstr "Исходный сигнал эффекта."

msgid "The voice's cutoff frequency."
msgstr "Частота среза голоса."

msgid "The voice's signal delay."
msgstr "Задержка голосового сигнала."

msgid "The voice filter's depth."
msgstr "Глубина голосового фильтра."

msgid "The voice's volume."
msgstr "Громкость голоса."

msgid "The voice's pan level."
msgstr "Уровень панорамирования голоса."

msgid "The voice's filter rate."
msgstr "Скорость фильтрации голоса."

msgid "The number of voices in the effect."
msgstr "Количество голосов в эффекте."

msgid "The effect's processed signal."
msgstr "Обработанный сигнал эффекта."

msgid ""
"Adds a compressor audio effect to an audio bus.\n"
"Reduces sounds that exceed a certain threshold level, smooths out the "
"dynamics and increases the overall volume."
msgstr ""
"Добавляет эффект компрессора звука к аудиошине.\n"
"Уменьшает звуки, превышающие определенный пороговый уровень, сглаживает "
"динамику и увеличивает общую громкость."

msgid ""
"Dynamic range compressor reduces the level of the sound when the amplitude "
"goes over a certain threshold in Decibels. One of the main uses of a "
"compressor is to increase the dynamic range by clipping as little as possible "
"(when sound goes over 0dB).\n"
"Compressor has many uses in the mix:\n"
"- In the Master bus to compress the whole output (although an "
"[AudioEffectHardLimiter] is probably better).\n"
"- In voice channels to ensure they sound as balanced as possible.\n"
"- Sidechained. This can reduce the sound level sidechained with another audio "
"bus for threshold detection. This technique is common in video game mixing to "
"the level of music and SFX while voices are being heard.\n"
"- Accentuates transients by using a wider attack, making effects sound more "
"punchy."
msgstr ""
"Компрессор динамического диапазона снижает уровень звука, когда амплитуда "
"превышает определённый порог в децибелах. Одно из основных применений "
"компрессора — расширение динамического диапазона путём минимального "
"ограничения (когда звук превышает 0 дБ).\n"
"Компрессор используется в миксе по-разному:\n"
"- На мастер-шине для компрессии всего выходного сигнала (хотя "
"[AudioEffectHardLimiter], вероятно, будет предпочтительнее).\n"
"- В голосовых каналах для обеспечения максимально сбалансированного "
"звучания.\n"
"- В режиме сайдчейна. Это позволяет снизить уровень звука, подключенного к "
"другой аудиошине для определения порога. Этот приём распространён в "
"микшировании видеоигр до уровня музыки и звуковых эффектов, когда слышны "
"голоса.\n"
"- Подчёркивает транзиенты за счёт более широкой атаки, делая звучание "
"эффектов более резким."

msgid ""
"Compressor's reaction time when the signal exceeds the threshold, in "
"microseconds. Value can range from 20 to 2000."
msgstr ""
"Время реакции компрессора при превышении сигналом порогового значения, в "
"микросекундах. Значение может быть от 20 до 2000."

msgid "Gain applied to the output signal."
msgstr "Усиление, применяемое к выходному сигналу."

msgid ""
"Balance between original signal and effect signal. Value can range from 0 "
"(totally dry) to 1 (totally wet)."
msgstr ""
"Баланс между исходным сигналом и сигналом эффекта. Значение может "
"варьироваться от 0 (полностью сухой) до 1 (полностью влажный)."

msgid ""
"Amount of compression applied to the audio once it passes the threshold "
"level. The higher the ratio, the more the loud parts of the audio will be "
"compressed. Value can range from 1 to 48."
msgstr ""
"Степень сжатия, применяемая к аудио, как только оно проходит пороговый "
"уровень. Чем выше отношение, тем сильнее будут сжаты громкие части аудио. "
"Значение может быть в диапазоне от 1 до 48."

msgid ""
"Compressor's delay time to stop reducing the signal after the signal level "
"falls below the threshold, in milliseconds. Value can range from 20 to 2000."
msgstr ""
"Время задержки компрессора для остановки снижения сигнала после того, как "
"уровень сигнала падает ниже порогового значения, в миллисекундах. Значение "
"может быть в диапазоне от 20 до 2000."

msgid "Reduce the sound level using another audio bus for threshold detection."
msgstr ""
"Уменьшите уровень звука, используя другую аудиошину для обнаружения порога."

msgid ""
"The level above which compression is applied to the audio. Value can range "
"from -60 to 0."
msgstr ""
"Уровень, выше которого к аудио применяется сжатие. Значение может быть в "
"диапазоне от -60 до 0."

msgid ""
"Adds a delay audio effect to an audio bus. Plays input signal back after a "
"period of time.\n"
"Two tap delay and feedback options."
msgstr ""
"Добавляет эффект задержки звука к аудиошине. Воспроизводит входной сигнал "
"через определенный промежуток времени.\n"
"Два варианта задержки и обратной связи."

msgid ""
"Plays input signal back after a period of time. The delayed signal may be "
"played back multiple times to create the sound of a repeating, decaying echo. "
"Delay effects range from a subtle echo effect to a pronounced blending of "
"previous sounds with new sounds."
msgstr ""
"Воспроизводит входной сигнал обратно через определенный промежуток времени. "
"Задержанный сигнал может воспроизводиться несколько раз, чтобы создать звук "
"повторяющегося, затухающего эха. Эффекты задержки варьируются от едва "
"заметного эффекта эха до выраженного смешивания предыдущих звуков с новыми "
"звуками."

msgid ""
"Output percent of original sound. At 0, only delayed sounds are output. Value "
"can range from 0 to 1."
msgstr ""
"Процент выходного сигнала от исходного звука. При значении 0 выводятся только "
"задержанные звуки. Значение может быть от 0 до 1."

msgid "If [code]true[/code], feedback is enabled."
msgstr "Если [code]true[/code], обратная связь включена."

msgid "Feedback delay time in milliseconds."
msgstr "Время задержки обратной связи в миллисекундах."

msgid "Sound level for feedback."
msgstr "Уровень звука для обратной связи."

msgid ""
"Low-pass filter for feedback, in Hz. Frequencies below this value are "
"filtered out of the source signal."
msgstr ""
"Фильтр нижних частот для обратной связи, в Гц. Частоты ниже этого значения "
"отфильтровываются из исходного сигнала."

msgid "If [code]true[/code], the first tap will be enabled."
msgstr "Если [code]true[/code], первое касание будет включено."

msgid "First tap delay time in milliseconds."
msgstr "Время задержки первого нажатия в миллисекундах."

msgid "Sound level for the first tap."
msgstr "Уровень звука при первом нажатии."

msgid ""
"Pan position for the first tap. Value can range from -1 (fully left) to 1 "
"(fully right)."
msgstr ""
"Положение панорамирования для первого нажатия. Значение может быть в "
"диапазоне от -1 (полностью левое) до 1 (полностью правое)."

msgid "If [code]true[/code], the second tap will be enabled."
msgstr "Если [code]true[/code], второе нажатие будет включено."

msgid "Second tap delay time in milliseconds."
msgstr "Время задержки второго нажатия в миллисекундах."

msgid "Sound level for the second tap."
msgstr "Уровень звука для второго нажатия."

msgid ""
"Pan position for the second tap. Value can range from -1 (fully left) to 1 "
"(fully right)."
msgstr ""
"Положение панорамы для второго нажатия. Значение может быть в диапазоне от -1 "
"(полностью влево) до 1 (полностью вправо)."

msgid ""
"Adds a distortion audio effect to an Audio bus.\n"
"Modifies the sound to make it distorted."
msgstr ""
"Добавляет эффект искажения звука к аудио-шине.\n"
"Изменяет звук, делая его искаженным."

msgid ""
"Different types are available: clip, tan, lo-fi (bit crushing), overdrive, or "
"waveshape.\n"
"By distorting the waveform the frequency content changes, which will often "
"make the sound \"crunchy\" or \"abrasive\". For games, it can simulate sound "
"coming from some saturated device or speaker very efficiently."
msgstr ""
"Доступны различные типы: clip, tan, lo-fi (bit crushing), overdrive, или "
"waveshape.\n"
"При искажении формы волны изменяется частотный состав, что часто делает звук "
"«хрустящим» или «абразивным». Для игр он может очень эффективно имитировать "
"звук, исходящий от какого-то насыщенного устройства или динамика."

msgid "Distortion power. Value can range from 0 to 1."
msgstr "Сила искажения. Значение может варьироваться от 0 до 1."

msgid ""
"High-pass filter, in Hz. Frequencies higher than this value will not be "
"affected by the distortion. Value can range from 1 to 20000."
msgstr ""
"Фильтр высоких частот, в Гц. Частоты выше этого значения не будут подвержены "
"искажением. Значение может варьироваться от 1 до 20000."

msgid "Distortion type."
msgstr "Тип искажения."

msgid ""
"Increases or decreases the volume after the effect, in decibels. Value can "
"range from -80 to 24."
msgstr ""
"Увеличивает или уменьшает громкость после эффекта, в децибелах. Значение "
"может быть в диапазоне от -80 до 24."

msgid ""
"Increases or decreases the volume before the effect, in decibels. Value can "
"range from -60 to 60."
msgstr ""
"Увеличивает или уменьшает громкость перед эффектом в децибелах. Значение "
"может быть в диапазоне от -60 до 60."

msgid ""
"Digital distortion effect which cuts off peaks at the top and bottom of the "
"waveform."
msgstr ""
"Эффект цифрового искажения, который обрезает пики в верхней и нижней части "
"формы волны."

msgid ""
"Low-resolution digital distortion effect (bit depth reduction). You can use "
"it to emulate the sound of early digital audio devices."
msgstr ""
"Эффект цифрового искажения низкого разрешения (уменьшение битовой глубины). "
"Вы можете использовать его для эмуляции звука ранних цифровых аудиоустройств."

msgid ""
"Emulates the warm distortion produced by a field effect transistor, which is "
"commonly used in solid-state musical instrument amplifiers. The [member "
"drive] property has no effect in this mode."
msgstr ""
"Эмулирует теплое искажение, создаваемое полевым транзистором, который обычно "
"используется в твердотельных усилителях музыкальных инструментов. Свойство "
"[member drive] не имеет эффекта в этом режиме."

msgid ""
"Waveshaper distortions are used mainly by electronic musicians to achieve an "
"extra-abrasive sound."
msgstr ""
"Искажения Waveshaper используются в основном электронными музыкантами для "
"достижения сверхрезкого звука."

msgid ""
"Base class for audio equalizers. Gives you control over frequencies.\n"
"Use it to create a custom equalizer if [AudioEffectEQ6], [AudioEffectEQ10] or "
"[AudioEffectEQ21] don't fit your needs."
msgstr ""
"Базовый класс для аудиоэквалайзеров. Дает вам контроль над частотами.\n"
"Используйте его для создания собственного эквалайзера, если [AudioEffectEQ6], "
"[AudioEffectEQ10] или [AudioEffectEQ21] не соответствуют вашим потребностям."

msgid ""
"AudioEffectEQ gives you control over frequencies. Use it to compensate for "
"existing deficiencies in audio. AudioEffectEQs are useful on the Master bus "
"to completely master a mix and give it more character. They are also useful "
"when a game is run on a mobile device, to adjust the mix to that kind of "
"speakers (it can be added but disabled when headphones are plugged)."
msgstr ""
"AudioEffectEQ дает вам контроль над частотами. Используйте его для "
"компенсации существующих недостатков звука. AudioEffectEQ полезны на шине "
"Master для полного мастеринга микса и придания ему большего характера. Они "
"также полезны, когда игра запущена на мобильном устройстве, для настройки "
"микса под этот тип динамиков (его можно добавить, но отключить, если "
"подключены наушники)."

msgid "Returns the number of bands of the equalizer."
msgstr "Возвращает количество полос эквалайзера."

msgid "Returns the band's gain at the specified index, in dB."
msgstr "Возвращает усиление полосы по указанному индексу в дБ."

msgid "Sets band's gain at the specified index, in dB."
msgstr "Устанавливает усиление полосы по указанному индексу в дБ."

msgid ""
"Adds a 10-band equalizer audio effect to an Audio bus. Gives you control over "
"frequencies from 31 Hz to 16000 Hz.\n"
"Each frequency can be modulated between -60/+24 dB."
msgstr ""
"Добавляет 10-полосный эквалайзер аудиоэффекта к аудиошине. Дает вам контроль "
"над частотами от 31 Гц до 16000 Гц.\n"
"Каждая частота может быть модулирована в диапазоне от -60/+24 дБ."

msgid ""
"Frequency bands:\n"
"Band 1: 31 Hz\n"
"Band 2: 62 Hz\n"
"Band 3: 125 Hz\n"
"Band 4: 250 Hz\n"
"Band 5: 500 Hz\n"
"Band 6: 1000 Hz\n"
"Band 7: 2000 Hz\n"
"Band 8: 4000 Hz\n"
"Band 9: 8000 Hz\n"
"Band 10: 16000 Hz\n"
"See also [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ21]."
msgstr ""
"Частотные диапазоны:\n"
"Полоса 1: 31 Гц\n"
"Полоса 2: 62 Гц\n"
"Полоса 3: 125 Гц\n"
"Полоса 4: 250 Гц\n"
"Полоса 5: 500 Гц\n"
"Полоса 6: 1000 Гц\n"
"Полоса 7: 2000 Гц\n"
"Полоса 8: 4000 Гц\n"
"Полоса 9: 8000 Гц\n"
"Полоса 10: 16000 Гц\n"
"См. также [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ21]."

msgid ""
"Adds a 21-band equalizer audio effect to an Audio bus. Gives you control over "
"frequencies from 22 Hz to 22000 Hz.\n"
"Each frequency can be modulated between -60/+24 dB."
msgstr ""
"Добавляет аудиоэффект 21-полосного эквалайзера к аудиошине. Дает вам контроль "
"над частотами от 22 Гц до 22000 Гц.\n"
"Каждая частота может быть модулирована в диапазоне -60/+24 дБ."

msgid ""
"Frequency bands:\n"
"Band 1: 22 Hz\n"
"Band 2: 32 Hz\n"
"Band 3: 44 Hz\n"
"Band 4: 63 Hz\n"
"Band 5: 90 Hz\n"
"Band 6: 125 Hz\n"
"Band 7: 175 Hz\n"
"Band 8: 250 Hz\n"
"Band 9: 350 Hz\n"
"Band 10: 500 Hz\n"
"Band 11: 700 Hz\n"
"Band 12: 1000 Hz\n"
"Band 13: 1400 Hz\n"
"Band 14: 2000 Hz\n"
"Band 15: 2800 Hz\n"
"Band 16: 4000 Hz\n"
"Band 17: 5600 Hz\n"
"Band 18: 8000 Hz\n"
"Band 19: 11000 Hz\n"
"Band 20: 16000 Hz\n"
"Band 21: 22000 Hz\n"
"See also [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ10]."
msgstr ""
"Частотные диапазоны:\n"
"Полоса 1: 22 Гц\n"
"Полоса 2: 32 Гц\n"
"Полоса 3: 44 Гц\n"
"Полоса 4: 63 Гц\n"
"Полоса 5: 90 Гц\n"
"Полоса 6: 125 Гц\n"
"Полоса 7: 175 Гц\n"
"Полоса 8: 250 Гц\n"
"Полоса 9: 350 Гц\n"
"Полоса 10: 500 Гц\n"
"Полоса 11: 700 Гц\n"
"Полоса 12: 1000 Гц\n"
"Полоса 13: 1400 Гц\n"
"Полоса 14: 2000 Гц\n"
"Полоса 15: 2800 Гц\n"
"Полоса 16: 4000 Гц\n"
"Полоса 17: 5600 Гц\n"
"Полоса 18: 8000 Гц\n"
"Полоса 19: 11000 Гц\n"
"Полоса 20: 16000 Гц\n"
"Полоса 21: 22000 Гц\n"
"См. также [AudioEffectEQ], [AudioEffectEQ6], [AudioEffectEQ10]."

msgid ""
"Adds a 6-band equalizer audio effect to an audio bus. Gives you control over "
"frequencies from 32 Hz to 10000 Hz.\n"
"Each frequency can be modulated between -60/+24 dB."
msgstr ""
"Добавляет аудиоэффект 6-полосного эквалайзера к аудиошине. Дает вам контроль "
"над частотами от 32 Гц до 10000 Гц.\n"
"Каждую частоту можно модулировать в диапазоне -60/+24 дБ."

msgid ""
"Frequency bands:\n"
"Band 1: 32 Hz\n"
"Band 2: 100 Hz\n"
"Band 3: 320 Hz\n"
"Band 4: 1000 Hz\n"
"Band 5: 3200 Hz\n"
"Band 6: 10000 Hz\n"
"See also [AudioEffectEQ], [AudioEffectEQ10], [AudioEffectEQ21]."
msgstr ""
"Частотные диапазоны:\n"
"Полоса 1: 32 Гц\n"
"Полоса 2: 100 Гц\n"
"Полоса 3: 320 Гц\n"
"Полоса 4: 1000 Гц\n"
"Полоса 5: 3200 Гц\n"
"Полоса 6: 10000 Гц\n"
"См. также [AudioEffectEQ], [AudioEffectEQ10], [AudioEffectEQ21]."

msgid "Adds a filter to the audio bus."
msgstr "Добавляет фильтр к аудиошине."

msgid "Allows frequencies other than the [member cutoff_hz] to pass."
msgstr "Позволяет пропускать частоты, отличные от [member cutoff_hz]."

msgid "Threshold frequency for the filter, in Hz."
msgstr "Пороговая частота фильтра, в Гц."

msgid ""
"Steepness of the cutoff curve in dB per octave, also known as the order of "
"the filter. Higher orders have a more aggressive cutoff."
msgstr ""
"Крутизна кривой среза в дБ на октаву, также известная как порядок фильтра. "
"Более высокие порядки имеют более агрессивный срез."

msgid "Gain amount of the frequencies after the filter."
msgstr "Усиление частот после фильтра."

msgid "Amount of boost in the frequency range near the cutoff frequency."
msgstr "Величина усиления в диапазоне частот вблизи частоты среза."

msgid "Cutting off at 6dB per octave."
msgstr "Срез 6 дБ на октаву."

msgid "Cutting off at 12dB per octave."
msgstr "Срез 12 дБ на октаву."

msgid "Cutting off at 18dB per octave."
msgstr "Срез 18 дБ на октаву."

msgid "Cutting off at 24dB per octave."
msgstr "Срез 24 дБ на октаву."

msgid "Adds a hard limiter audio effect to an Audio bus."
msgstr "Добавляет эффект жесткого ограничителя звука к аудиошине."

msgid ""
"A limiter is an effect designed to disallow sound from going over a given dB "
"threshold. Hard limiters predict volume peaks, and will smoothly apply gain "
"reduction when a peak crosses the ceiling threshold to prevent clipping and "
"distortion. It preserves the waveform and prevents it from crossing the "
"ceiling threshold. Adding one in the Master bus is recommended as a safety "
"measure to prevent sudden volume peaks from occurring, and to prevent "
"distortion caused by clipping."
msgstr ""
"Ограничитель — это эффект, предназначенный для того, чтобы не допустить "
"превышения звуком заданного порога дБ. Жесткие ограничители предсказывают "
"пики громкости и плавно применяют снижение усиления, когда пик пересекает "
"порог потолка, чтобы предотвратить ограничение и искажение. Он сохраняет "
"форму волны и не дает ей пересекать порог потолка. Добавление его в Master "
"bus рекомендуется в качестве меры безопасности для предотвращения внезапных "
"пиков громкости и искажений, вызванных ограничением."

msgid ""
"The waveform's maximum allowed value, in decibels. This value can range from "
"[code]-24.0[/code] to [code]0.0[/code].\n"
"The default value of [code]-0.3[/code] prevents potential inter-sample peaks "
"(ISP) from crossing over 0 dB, which can cause slight distortion on some "
"older hardware."
msgstr ""
"Максимально допустимое значение формы сигнала в децибелах. Это значение может "
"находиться в диапазоне от [code]-24,0[/code] до [code]0,0[/code].\n"
"Значение по умолчанию [code]-0,3[/code] предотвращает пересечение 0 дБ "
"потенциальными межвыборочными пиками (ISP), что может вызвать небольшие "
"искажения на некотором старом оборудовании."

msgid "Gain to apply before limiting, in decibels."
msgstr "Усиление, применяемое перед ограничением, в децибелах."

msgid "Time it takes in seconds for the gain reduction to fully release."
msgstr "Время в секундах, необходимое для полного снятия снижения усиления."

msgid "Adds a high-pass filter to the audio bus."
msgstr "Добавляет фильтр верхних частот к аудиошине."

msgid ""
"Cuts frequencies lower than the [member AudioEffectFilter.cutoff_hz] and "
"allows higher frequencies to pass."
msgstr ""
"Обрезает частоты ниже [member AudioEffectFilter.cutoff_hz] и пропускает более "
"высокие частоты."

msgid "Adds a high-shelf filter to the audio bus."
msgstr "Добавляет высокочастотный фильтр к аудиошине."

msgid "Reduces all frequencies above the [member AudioEffectFilter.cutoff_hz]."
msgstr "Уменьшает все частоты выше [member AudioEffectFilter.cutoff_hz]."

msgid "Manipulates the audio it receives for a given effect."
msgstr "Манипулирует получаемым звуком для достижения заданного эффекта."

msgid ""
"An audio effect instance manipulates the audio it receives for a given "
"effect. This instance is automatically created by an [AudioEffect] when it is "
"added to a bus, and should usually not be created directly. If necessary, it "
"can be fetched at run-time with [method AudioServer.get_bus_effect_instance]."
msgstr ""
"Экземпляр аудиоэффекта управляет аудио, которое он получает для данного "
"эффекта. Этот экземпляр автоматически создается [AudioEffect] при добавлении "
"его в шину и обычно не должен создаваться напрямую. При необходимости его "
"можно получить во время выполнения с помощью [method "
"AudioServer.get_bus_effect_instance]."

msgid ""
"Called by the [AudioServer] to process this effect. When [method "
"_process_silence] is not overridden or it returns [code]false[/code], this "
"method is called only when the bus is active.\n"
"[b]Note:[/b] It is not useful to override this method in GDScript or C#. Only "
"GDExtension can take advantage of it."
msgstr ""
"Вызывается [AudioServer] для обработки этого эффекта. Когда [method "
"_process_silence] не переопределен или возвращает [code]false[/code], этот "
"метод вызывается только тогда, когда шина активна.\n"
"[b]Примечание:[/b] Не имеет смысла переопределять этот метод в GDScript или "
"C#. Только GDExtension может воспользоваться им."

msgid ""
"Override this method to customize the processing behavior of this effect "
"instance.\n"
"Should return [code]true[/code] to force the [AudioServer] to always call "
"[method _process], even if the bus has been muted or cannot otherwise be "
"heard."
msgstr ""
"Переопределить этот метод, чтобы настроить поведение обработки этого "
"экземпляра эффекта.\n"
"Следует вернуть [code]true[/code], чтобы заставить [AudioServer] всегда "
"вызывать [method _process], даже если шина была отключена или не может быть "
"услышана иным образом."

msgid "Use [AudioEffectHardLimiter] instead."
msgstr "Вместо этого используйте [AudioEffectHardLimiter]."

msgid "Adds a soft-clip limiter audio effect to an Audio bus."
msgstr ""
"Добавляет звуковой эффект ограничителя с мягким ограничением к аудиошине."

msgid ""
"A limiter is similar to a compressor, but it's less flexible and designed to "
"disallow sound going over a given dB threshold. Adding one in the Master bus "
"is always recommended to reduce the effects of clipping.\n"
"Soft clipping starts to reduce the peaks a little below the threshold level "
"and progressively increases its effect as the input level increases such that "
"the threshold is never exceeded."
msgstr ""
"Ограничитель похож на компрессор, но он менее гибкий и предназначен для того, "
"чтобы не допустить превышения звуком заданного порога дБ. Добавление его в "
"Master шину всегда рекомендуется для уменьшения эффектов ограничения.\n"
"Мягкое ограничение начинает уменьшать пики немного ниже порогового уровня и "
"постепенно увеличивает свой эффект по мере увеличения входного уровня, так "
"что порог никогда не будет превышен."

msgid ""
"The waveform's maximum allowed value, in decibels. Value can range from -20 "
"to -0.1."
msgstr ""
"Максимально допустимое значение формы волны в децибелах. Значение может быть "
"в диапазоне от -20 до -0,1."

msgid ""
"Applies a gain to the limited waves, in decibels. Value can range from 0 to 6."
msgstr ""
"Применяет усиление к ограниченным волнам в децибелах. Значение может быть от "
"0 до 6."

msgid ""
"Threshold from which the limiter begins to be active, in decibels. Value can "
"range from -30 to 0."
msgstr ""
"Порог, с которого начинает действовать ограничитель, в децибелах. Значение "
"может быть в диапазоне от -30 до 0."

msgid "Adds a low-pass filter to the audio bus."
msgstr "Добавляет фильтр нижних частот к аудиошине."

msgid ""
"Cuts frequencies higher than the [member AudioEffectFilter.cutoff_hz] and "
"allows lower frequencies to pass."
msgstr ""
"Обрезает частоты выше [member AudioEffectFilter.cutoff_hz] и пропускает более "
"низкие частоты."

msgid "Adds a low-shelf filter to the audio bus."
msgstr "Добавляет фильтр нижних частот к аудиошине."

msgid "Reduces all frequencies below the [member AudioEffectFilter.cutoff_hz]."
msgstr "Уменьшает все частоты ниже [member AudioEffectFilter.cutoff_hz]."

msgid "Adds a notch filter to the Audio bus."
msgstr "Добавляет режекторный (полосно-заграждающий) фильтр к аудиошине."

msgid ""
"Attenuates frequencies in a narrow band around the [member "
"AudioEffectFilter.cutoff_hz] and cuts frequencies outside of this range."
msgstr ""
"Ослабляет частоты в узкой полосе вокруг [member AudioEffectFilter.cutoff_hz] "
"и обрезает частоты за пределами этого диапазона."

msgid "Adds a panner audio effect to an audio bus. Pans sound left or right."
msgstr ""
"Добавляет эффект панорамирования звука к аудиошине. Панорамирует звук влево "
"или вправо."

msgid ""
"Determines how much of an audio signal is sent to the left and right buses."
msgstr ""
"Определяет, какая часть аудиосигнала отправляется на левую и правую шины."

msgid "Pan position. Value can range from -1 (fully left) to 1 (fully right)."
msgstr ""
"Положение панорамы. Значение может быть в диапазоне от -1 (полностью левое) "
"до 1 (полностью правое)."

msgid ""
"Adds a phaser audio effect to an audio bus.\n"
"Combines the original signal with a copy that is slightly out of phase with "
"the original."
msgstr ""
"Добавляет эффект фазера к аудиошине.\n"
"Объединяет исходный сигнал с копией, которая немного не совпадает по фазе с "
"оригиналом."

msgid ""
"Combines phase-shifted signals with the original signal. The movement of the "
"phase-shifted signals is controlled using a low-frequency oscillator."
msgstr ""
"Объединяет сдвинутые по фазе сигналы с исходным сигналом. Движение сдвинутых "
"по фазе сигналов управляется с помощью низкочастотного генератора."

msgid ""
"Determines how high the filter frequencies sweep. Low value will primarily "
"affect bass frequencies. High value can sweep high into the treble. Value can "
"range from [code]0.1[/code] to [code]4.0[/code]."
msgstr ""
"Определяет, насколько высоко будут проходить частоты фильтра. Низкое значение "
"в первую очередь повлияет на низкие частоты. Высокое значение может перейти в "
"высокие частоты. Значение может находиться в диапазоне от [code]0.1[/code] до "
"[code]4.0[/code]."

msgid "Output percent of modified sound. Value can range from 0.1 to 0.9."
msgstr ""
"Процент выходного измененного звука. Значение может быть в диапазоне от 0,1 "
"до 0,9."

msgid ""
"Determines the maximum frequency affected by the LFO modulations, in Hz. "
"Value can range from 10 to 10000."
msgstr ""
"Определяет максимальную частоту, на которую влияют модуляции LFO, в Гц. "
"Значение может быть в диапазоне от 10 до 10000."

msgid ""
"Determines the minimum frequency affected by the LFO modulations, in Hz. "
"Value can range from 10 to 10000."
msgstr ""
"Определяет минимальную частоту, на которую влияют модуляции LFO, в Гц. "
"Значение может быть в диапазоне от 10 до 10000."

msgid ""
"Adjusts the rate in Hz at which the effect sweeps up and down across the "
"frequency range."
msgstr ""
"Регулирует скорость в Гц, с которой эффект распространяется вверх и вниз по "
"диапазону частот."

msgid ""
"Adds a pitch-shifting audio effect to an audio bus.\n"
"Raises or lowers the pitch of original sound."
msgstr ""
"Добавляет звуковой эффект изменения высоты тона к звуковой шине.\n"
"Повышает или понижает высоту исходного звука."

msgid ""
"Allows modulation of pitch independently of tempo. All frequencies can be "
"increased/decreased with minimal effect on transients."
msgstr ""
"Позволяет модулировать высоту тона независимо от темпа. Все частоты могут "
"быть увеличены/уменьшены с минимальным влиянием на переходные процессы."

msgid ""
"The size of the [url=https://en.wikipedia.org/wiki/"
"Fast_Fourier_transform]Fast Fourier transform[/url] buffer. Higher values "
"smooth out the effect over time, but have greater latency. The effects of "
"this higher latency are especially noticeable on sounds that have sudden "
"amplitude changes."
msgstr ""
"Размер буфера [url=https://en.wikipedia.org/wiki/"
"Fast_Fourier_transform]Быстрого преобразования Фурье (Fourier)[/url]. Более "
"высокие значения сглаживают эффект с течением времени, но имеют большую "
"задержку. Эффект этой большей задержки особенно заметен на звуках с резкими "
"изменениями амплитуды."

msgid ""
"The oversampling factor to use. Higher values result in better quality, but "
"are more demanding on the CPU and may cause audio cracking if the CPU can't "
"keep up."
msgstr ""
"Коэффициент передискретизации (oversampling), который следует использовать. "
"Более высокие значения обеспечивают лучшее качество, но более требовательны к "
"ЦП и могут вызвать потрескивание звука, если ЦП не справляется."

msgid ""
"The pitch scale to use. [code]1.0[/code] is the default pitch and plays "
"sounds unaffected. [member pitch_scale] can range from [code]0.0[/code] "
"(infinitely low pitch, inaudible) to [code]16[/code] (16 times higher than "
"the initial pitch)."
msgstr ""
"Используемая шкала высоты тона. [code]1.0[/code] — это высота тона по "
"умолчанию, которая воспроизводит звуки без изменений. [member pitch_scale] "
"может находиться в диапазоне от [code]0.0[/code] (бесконечно низкая высота "
"тона, неслышимая) до [code]16[/code] (в 16 раз выше начальной высоты тона)."

msgid ""
"Use a buffer of 256 samples for the Fast Fourier transform. Lowest latency, "
"but least stable over time."
msgstr ""
"Используйте буфер из 256 выборок для быстрого преобразования Фурье. Самая "
"низкая задержка, но наименее стабильная во времени."

msgid ""
"Use a buffer of 512 samples for the Fast Fourier transform. Low latency, but "
"less stable over time."
msgstr ""
"Используйте буфер из 512 выборок для быстрого преобразования Фурье. Низкая "
"задержка, но менее стабильная с течением времени."

msgid ""
"Use a buffer of 1024 samples for the Fast Fourier transform. This is a "
"compromise between latency and stability over time."
msgstr ""
"Используйте буфер из 1024 выборок для быстрого преобразования Фурье. Это "
"компромисс между задержкой и стабильностью во времени."

msgid ""
"Use a buffer of 2048 samples for the Fast Fourier transform. High latency, "
"but stable over time."
msgstr ""
"Используйте буфер из 2048 выборок для быстрого преобразования Фурье. Высокая "
"задержка, но стабильная во времени."

msgid ""
"Use a buffer of 4096 samples for the Fast Fourier transform. Highest latency, "
"but most stable over time."
msgstr ""
"Используйте буфер из 4096 выборок для быстрого преобразования Фурье. Самая "
"высокая задержка, но самая стабильная во времени."

msgid "Represents the size of the [enum FFTSize] enum."
msgstr "Представляет размер перечисления [enum FFTSize]."

msgid "Audio effect used for recording the sound from an audio bus."
msgstr "Аудиоэффект, используемый для записи звука с аудиошины."

msgid ""
"Allows the user to record the sound from an audio bus into an "
"[AudioStreamWAV]. When used on the \"Master\" audio bus, this includes all "
"audio output by Godot.\n"
"Unlike [AudioEffectCapture], this effect encodes the recording with the given "
"format (8-bit, 16-bit, or compressed) instead of giving access to the raw "
"audio samples.\n"
"Can be used (with an [AudioStreamMicrophone]) to record from a microphone.\n"
"[b]Note:[/b] [member ProjectSettings.audio/driver/enable_input] must be "
"[code]true[/code] for audio input to work. See also that setting's "
"description for caveats related to permissions and operating system privacy "
"settings."
msgstr ""
"Позволяет пользователю записывать звук с аудиошины в [AudioStreamWAV]. При "
"использовании на аудиошине «Master» это включает весь аудиовыход Godot.\n"
"В отличие от [AudioEffectCapture], этот эффект кодирует запись в заданном "
"формате (8-битный, 16-битный или сжатый) вместо предоставления доступа к "
"необработанным аудиосэмплам.\n"
"Может использоваться (с [AudioStreamMicrophone]) для записи с микрофона.\n"
"[b]Примечание:[/b] [member ProjectSettings.audio/driver/enable_input] должен "
"быть [code]true[/code] для работы аудиовхода. См. также описание этого "
"параметра для предостережений, связанных с разрешениями и настройками "
"конфиденциальности операционной системы."

msgid "Recording with microphone"
msgstr "Запись с микрофона"

msgid "Returns the recorded sample."
msgstr "Возвращает записанный образец."

msgid "Returns whether the recording is active or not."
msgstr "Возвращает, активна ли запись или нет."

msgid ""
"If [code]true[/code], the sound will be recorded. Note that restarting the "
"recording will remove the previously recorded sample."
msgstr ""
"Если [code]true[/code], звук будет записан. Обратите внимание, что перезапуск "
"записи удалит ранее записанный сэмпл."

msgid "Specifies the format in which the sample will be recorded."
msgstr "Указывает формат, в котором будет записан сэмпл."

msgid "Adds a reverberation audio effect to an Audio bus."
msgstr "Добавляет эффект реверберации к аудиошине."

msgid ""
"Simulates the sound of acoustic environments such as rooms, concert halls, "
"caverns, or an open spaces."
msgstr ""
"Имитирует звук акустических сред, таких как комнаты, концертные залы, пещеры "
"или открытые пространства."

msgid ""
"Defines how reflective the imaginary room's walls are. Value can range from 0 "
"to 1."
msgstr ""
"Определяет, насколько отражающими являются стены воображаемой комнаты. "
"Значение может быть от 0 до 1."

msgid ""
"Output percent of original sound. At 0, only modified sound is outputted. "
"Value can range from 0 to 1."
msgstr ""
"Вывод процентов исходного звука. При 0 выводится только измененный звук. "
"Значение может быть от 0 до 1."

msgid ""
"High-pass filter passes signals with a frequency higher than a certain cutoff "
"frequency and attenuates signals with frequencies lower than the cutoff "
"frequency. Value can range from 0 to 1."
msgstr ""
"Фильтр верхних частот пропускает сигналы с частотой выше определенной частоты "
"среза и ослабляет сигналы с частотой ниже частоты среза. Значение может быть "
"в диапазоне от 0 до 1."

msgid "Output percent of predelay. Value can range from 0 to 1."
msgstr ""
"Процент выходного сигнала предварительной задержки. Значение может быть от 0 "
"до 1."

msgid ""
"Time between the original signal and the early reflections of the reverb "
"signal, in milliseconds."
msgstr ""
"Время между исходным сигналом и ранними отражениями сигнала реверберации в "
"миллисекундах."

msgid ""
"Dimensions of simulated room. Bigger means more echoes. Value can range from "
"0 to 1."
msgstr ""
"Размеры имитируемой комнаты. Больше — больше эхо. Значение может быть от 0 до "
"1."

msgid ""
"Widens or narrows the stereo image of the reverb tail. 1 means fully widens. "
"Value can range from 0 to 1."
msgstr ""
"Расширяет или сужает стереоизображение хвоста реверберации. 1 означает полное "
"расширение. Значение может быть от 0 до 1."

msgid ""
"Output percent of modified sound. At 0, only original sound is outputted. "
"Value can range from 0 to 1."
msgstr ""
"Вывести процент измененного звука. При 0 выводится только оригинальный звук. "
"Значение может быть от 0 до 1."

msgid "Audio effect that can be used for real-time audio visualizations."
msgstr ""
"Аудиоэффект, который можно использовать для аудиовизуализации в реальном "
"времени."

msgid ""
"This audio effect does not affect sound output, but can be used for real-time "
"audio visualizations.\n"
"This resource configures an [AudioEffectSpectrumAnalyzerInstance], which "
"performs the actual analysis at runtime. An instance can be obtained with "
"[method AudioServer.get_bus_effect_instance].\n"
"See also [AudioStreamGenerator] for procedurally generating sounds."
msgstr ""
"Этот звуковой эффект не влияет на вывод звука, но может использоваться для "
"визуализации звука в реальном времени.\n"
"Этот ресурс настраивает [AudioEffectSpectrumAnalyzerInstance], который "
"выполняет фактический анализ во время выполнения. Экземпляр можно получить с "
"помощью [method AudioServer.get_bus_effect_instance].\n"
"См. также [AudioStreamGenerator] для процедурной генерации звуков."

msgid "Audio Spectrum Visualizer Demo"
msgstr "Демонстрация визуализатора аудиоспектра"

msgid ""
"The length of the buffer to keep (in seconds). Higher values keep data around "
"for longer, but require more memory."
msgstr ""
"Длина буфера для хранения (в секундах). Более высокие значения сохраняют "
"данные дольше, но требуют больше памяти."

msgid ""
"The size of the [url=https://en.wikipedia.org/wiki/"
"Fast_Fourier_transform]Fast Fourier transform[/url] buffer. Higher values "
"smooth out the spectrum analysis over time, but have greater latency. The "
"effects of this higher latency are especially noticeable with sudden "
"amplitude changes."
msgstr ""
"Размер буфера [url=https://en.wikipedia.org/wiki/"
"Fast_Fourier_transform]Быстрого преобразования Фурье (Fast Fourier transform)"
"[/url]. Более высокие значения сглаживают спектральный анализ с течением "
"времени, но имеют большую задержку. Эффект этой большей задержки особенно "
"заметен при резких изменениях амплитуды."

msgid "Queryable instance of an [AudioEffectSpectrumAnalyzer]."
msgstr "Запрашиваемый экземпляр [AudioEffectSpectrumAnalyzer]."

msgid ""
"The runtime part of an [AudioEffectSpectrumAnalyzer], which can be used to "
"query the magnitude of a frequency range on its host bus.\n"
"An instance of this class can be obtained with [method "
"AudioServer.get_bus_effect_instance]."
msgstr ""
"Часть времени выполнения [AudioEffectSpectrumAnalyzer], которую можно "
"использовать для запроса величины частотного диапазона на его хост-шине. \n"
"Экземпляр этого класса можно получить с помощью [method "
"AudioServer.get_bus_effect_instance]."

msgid ""
"Returns the magnitude of the frequencies from [param from_hz] to [param "
"to_hz] in linear energy as a Vector2. The [code]x[/code] component of the "
"return value represents the left stereo channel, and [code]y[/code] "
"represents the right channel.\n"
"[param mode] determines how the frequency range will be processed."
msgstr ""
"Возвращает величину частот от [param from_hz] до [param to_hz] в линейной "
"энергии как Vector2. Компонент [code]x[/code] возвращаемого значения "
"представляет левый стереоканал, а [code]y[/code] представляет правый канал.\n"
"[param mode] определяет, как будет обрабатываться диапазон частот."

msgid "Use the average value across the frequency range as magnitude."
msgstr ""
"В качестве величины используйте среднее значение по всему диапазону частот."

msgid "Use the maximum value of the frequency range as magnitude."
msgstr ""
"В качестве величины используйте максимальное значение частотного диапазона."

msgid ""
"An audio effect that can be used to adjust the intensity of stereo panning."
msgstr ""
"Аудиоэффект, который можно использовать для регулировки интенсивности "
"стереопанорамирования."

msgid ""
"Amplifies the difference between stereo channels, increasing or decreasing "
"existing panning. A value of 0.0 will downmix stereo to mono. Does not affect "
"a mono signal."
msgstr ""
"Усиливает разницу между стереоканалами, увеличивая или уменьшая существующее "
"панорамирование. Значение 0,0 понижает стерео до моно. Не влияет на "
"моносигнал."

msgid ""
"Widens sound stage through phase shifting in conjunction with [member "
"time_pullout_ms]. Just pans sound to the left channel if [member "
"time_pullout_ms] is 0."
msgstr ""
"Расширяет звуковую сцену посредством сдвига фаз в сочетании с [member "
"time_pullout_ms]. Просто панорамирует звук в левый канал, если [member "
"time_pullout_ms] равен 0."

msgid ""
"Widens sound stage through phase shifting in conjunction with [member "
"surround]. Just delays the right channel if [member surround] is 0."
msgstr ""
"Расширяет звуковую сцену посредством сдвига фаз в сочетании с [member "
"surround]. Просто задерживает правый канал, если [member surround] равен 0."

msgid "Overrides the location sounds are heard from."
msgstr "Переопределяет местоположение, откуда слышны звуки."

msgid ""
"Once added to the scene tree and enabled using [method make_current], this "
"node will override the location sounds are heard from. Only one "
"[AudioListener2D] can be current. Using [method make_current] will disable "
"the previous [AudioListener2D].\n"
"If there is no active [AudioListener2D] in the current [Viewport], center of "
"the screen will be used as a hearing point for the audio. [AudioListener2D] "
"needs to be inside [SceneTree] to function."
msgstr ""
"После добавления в дерево сцены и включения с помощью [method make_current] "
"этот узел переопределит местоположение, из которого слышны звуки. Текущим "
"может быть только один [AudioListener2D]. Использование [method make_current] "
"отключит предыдущий [AudioListener2D].\n"
"Если в текущем [Viewport] нет активного [AudioListener2D], центр экрана будет "
"использоваться в качестве точки прослушивания звука. [AudioListener2D] должен "
"находиться внутри [SceneTree] для работы."

msgid ""
"Disables the [AudioListener2D]. If it's not set as current, this method will "
"have no effect."
msgstr ""
"Отключает [AudioListener2D]. Если он не установлен как текущий, этот метод не "
"будет иметь никакого эффекта."

msgid "Returns [code]true[/code] if this [AudioListener2D] is currently active."
msgstr ""
"Возвращает [code]true[/code], если этот [AudioListener2D] в данный момент "
"активен."

msgid ""
"Makes the [AudioListener2D] active, setting it as the hearing point for the "
"sounds. If there is already another active [AudioListener2D], it will be "
"disabled.\n"
"This method will have no effect if the [AudioListener2D] is not added to "
"[SceneTree]."
msgstr ""
"Делает [AudioListener2D] активным, устанавливая его в качестве точки "
"прослушивания звуков. Если уже есть другой активный [AudioListener2D], он "
"будет отключен.\n"
"Этот метод не будет иметь эффекта, если [AudioListener2D] не добавлен в "
"[SceneTree]."

msgid ""
"Once added to the scene tree and enabled using [method make_current], this "
"node will override the location sounds are heard from. This can be used to "
"listen from a location different from the [Camera3D]."
msgstr ""
"После добавления в дерево сцены и включения с помощью [method make_current] "
"этот узел переопределит местоположение, из которого слышны звуки. Это можно "
"использовать для прослушивания из местоположения, отличного от [Camera3D]."

msgid "Disables the listener to use the current camera's listener instead."
msgstr ""
"Отключает прослушиватель, чтобы вместо него использовать прослушиватель "
"текущей камеры."

msgid "Returns the listener's global orthonormalized [Transform3D]."
msgstr "Возвращает глобальный ортонормализованный [Transform3D] слушателя."

msgid ""
"Returns [code]true[/code] if the listener was made current using [method "
"make_current], [code]false[/code] otherwise.\n"
"[b]Note:[/b] There may be more than one AudioListener3D marked as \"current\" "
"in the scene tree, but only the one that was made current last will be used."
msgstr ""
"Возвращает [code]true[/code], если прослушиватель был сделан текущим с "
"помощью [method make_current], [code]false[/code] в противном случае.\n"
"[b]Примечание:[/b] В дереве сцены может быть несколько AudioListener3D, "
"помеченных как «текущий», но будет использоваться только тот, который был "
"сделан текущим последним."

msgid "Enables the listener. This will override the current camera's listener."
msgstr ""
"Включает прослушиватель. Это переопределит прослушиватель текущей камеры."

msgid ""
"If not [constant DOPPLER_TRACKING_DISABLED], this listener will simulate the "
"[url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/url] for "
"objects changed in particular [code]_process[/code] methods.\n"
"[b]Note:[/b] The Doppler effect will only be heard on [AudioStreamPlayer3D]s "
"if [member AudioStreamPlayer3D.doppler_tracking] is not set to [constant "
"AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED]."
msgstr ""
"Если не задано [constant DOPPLER_TRACKING_DISABLED], этот прослушиватель "
"будет имитировать [url=https://en.wikipedia.org/wiki/Doppler_effect]эффект "
"Доплера[/url] для объектов, изменённых в определённых методах [code]_process[/"
"code].\n"
"[b]Примечание:[/b] Эффект Доплера будет слышен на [AudioStreamPlayer3D] "
"только в том случае, если [member AudioStreamPlayer3D.doppler_tracking] не "
"задано как [constant AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED]."

msgid ""
"Disables [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] simulation (default)."
msgstr ""
"Отключает имитацию [url=https://en.wikipedia.org/wiki/Doppler_effect]эффекта "
"Доплера[/url] (по умолчанию)."

msgid ""
"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] by tracking positions of objects that are changed in [code]_process[/"
"code]. Changes in the relative velocity of this listener compared to those "
"objects affect how audio is perceived (changing the audio's [member "
"AudioStreamPlayer3D.pitch_scale])."
msgstr ""
"Имитируйте [url=https://en.wikipedia.org/wiki/Doppler_effect]эффект Доплера[/"
"url], отслеживая положение объектов, изменяющееся в процессе [code]_process[/"
"code]. Изменения относительной скорости слушателя по отношению к этим "
"объектам влияют на восприятие звука (изменяя [member "
"AudioStreamPlayer3D.pitch_scale] аудио)."

msgid ""
"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] by tracking positions of objects that are changed in "
"[code]_physics_process[/code]. Changes in the relative velocity of this "
"listener compared to those objects affect how audio is perceived (changing "
"the audio's [member AudioStreamPlayer3D.pitch_scale])."
msgstr ""
"Симулируйте [url=https://en.wikipedia.org/wiki/Doppler_effect]эффект Доплера[/"
"url], отслеживая положение объектов, изменяющееся в процессе "
"[code]_physics_process[/code]. Изменения относительной скорости слушателя по "
"отношению к этим объектам влияют на восприятие звука (изменяя [member "
"AudioStreamPlayer3D.pitch_scale] аудио)."

msgid "Base class for audio samples."
msgstr "Базовый класс для аудиосэмплов."

msgid "Meta class for playing back audio samples."
msgstr "Метакласс для воспроизведения аудиосэмплов."

msgid "Server interface for low-level audio access."
msgstr "Серверный интерфейс для низкоуровневого доступа к звуку."

msgid ""
"[AudioServer] is a low-level server interface for audio access. It is in "
"charge of creating sample data (playable audio) as well as its playback via a "
"voice interface."
msgstr ""
"[AudioServer] — это низкоуровневый серверный интерфейс для доступа к аудио. "
"Он отвечает за создание сэмплов данных (воспроизводимого аудио), а также за "
"их воспроизведение через голосовой интерфейс."

msgid "Audio Device Changer Demo"
msgstr "Демонстрация Audio Device Changer"

msgid "Adds a bus at [param at_position]."
msgstr "Добавляет шину в [param at_position]."

msgid ""
"Adds an [AudioEffect] effect to the bus [param bus_idx] at [param "
"at_position]."
msgstr ""
"Добавляет эффект [AudioEffect] к шине [param bus_idx] в [param at_position]."

msgid "Generates an [AudioBusLayout] using the available buses and effects."
msgstr "Генерирует [AudioBusLayout] с использованием доступных шин и эффектов."

msgid "Returns the number of channels of the bus at index [param bus_idx]."
msgstr "Возвращает количество каналов шины по индексу [param bus_idx]."

msgid ""
"Returns the [AudioEffect] at position [param effect_idx] in bus [param "
"bus_idx]."
msgstr ""
"Возвращает [AudioEffect] в позиции [param effect_idx] на шине [param bus_idx]."

msgid "Returns the number of effects on the bus at [param bus_idx]."
msgstr "Возвращает количество эффектов на шине в [param bus_idx]."

msgid ""
"Returns the [AudioEffectInstance] assigned to the given bus and effect "
"indices (and optionally channel)."
msgstr ""
"Возвращает [AudioEffectInstance], назначенный заданным индексам шины и "
"эффекта (и, возможно, канала)."

msgid ""
"Returns the index of the bus with the name [param bus_name]. Returns "
"[code]-1[/code] if no bus with the specified name exist."
msgstr ""
"Возвращает индекс шины с именем [param bus_name]. Возвращает [code]-1[/code], "
"если шины с указанным именем не существует."

msgid "Returns the name of the bus with the index [param bus_idx]."
msgstr "Возвращает имя шины с индексом [param bus_idx]."

msgid ""
"Returns the peak volume of the left speaker at bus index [param bus_idx] and "
"channel index [param channel]."
msgstr ""
"Возвращает пиковую громкость левого динамика с индексом шины [param bus_idx] "
"и индексом канала [param channel]."

msgid ""
"Returns the peak volume of the right speaker at bus index [param bus_idx] and "
"channel index [param channel]."
msgstr ""
"Возвращает пиковую громкость правого динамика с индексом шины [param bus_idx] "
"и индексом канала [param channel]."

msgid ""
"Returns the name of the bus that the bus at index [param bus_idx] sends to."
msgstr ""
"Возвращает имя шины, на которую отправляет данные шина с индексом [param "
"bus_idx]."

msgid "Returns the volume of the bus at index [param bus_idx] in dB."
msgstr "Возвращает громкость шины по индексу [param bus_idx] в дБ."

msgid ""
"Returns the volume of the bus at index [param bus_idx] as a linear value.\n"
"[b]Note:[/b] The returned value is equivalent to the result of [method "
"@GlobalScope.db_to_linear] on the result of [method get_bus_volume_db]."
msgstr ""
"Возвращает громкость шины по индексу [param bus_idx] как линейное значение.\n"
"[b]Примечание:[/b] Возвращаемое значение эквивалентно результату [method "
"@GlobalScope.db_to_linear] на результате [method get_bus_volume_db]."

msgid ""
"Returns the name of the current audio driver. The default usually depends on "
"the operating system, but may be overridden via the [code]--audio-driver[/"
"code] [url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command line "
"argument[/url]. [code]--headless[/code] also automatically sets the audio "
"driver to [code]Dummy[/code]. See also [member ProjectSettings.audio/driver/"
"driver]."
msgstr ""
"Возвращает имя текущего аудиодрайвера. Значение по умолчанию обычно зависит "
"от операционной системы, но может быть переопределено с помощью [code]--audio-"
"driver[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]аргумента командной строки[/url]. [code]--"
"headless[/code] также автоматически устанавливает аудиодрайвер в [code]Dummy[/"
"code]. См. также [member ProjectSettings.audio/driver/driver]."

msgid ""
"Returns the names of all audio input devices detected on the system.\n"
"[b]Note:[/b] [member ProjectSettings.audio/driver/enable_input] must be "
"[code]true[/code] for audio input to work. See also that setting's "
"description for caveats related to permissions and operating system privacy "
"settings."
msgstr ""
"Возвращает имена всех аудиовходных устройств, обнаруженных в системе.\n"
"[b]Примечание:[/b] [member ProjectSettings.audio/driver/enable_input] должен "
"быть [code]true[/code] для работы аудиовхода. См. также описание этого "
"параметра для предупреждений, связанных с разрешениями и настройками "
"конфиденциальности операционной системы."

msgid "Returns the sample rate at the input of the [AudioServer]."
msgstr "Возвращает частоту дискретизации на входе [AudioServer]."

msgid "Returns the sample rate at the output of the [AudioServer]."
msgstr "Возвращает частоту дискретизации на выходе [AudioServer]."

msgid "Returns the names of all audio output devices detected on the system."
msgstr "Возвращает имена всех устройств вывода звука, обнаруженных в системе."

msgid ""
"Returns the audio driver's effective output latency. This is based on [member "
"ProjectSettings.audio/driver/output_latency], but the exact returned value "
"will differ depending on the operating system and audio driver.\n"
"[b]Note:[/b] This can be expensive; it is not recommended to call [method "
"get_output_latency] every frame."
msgstr ""
"Возвращает эффективную задержку вывода аудиодрайвера. Она основана на [member "
"ProjectSettings.audio/driver/output_latency], но точное возвращаемое значение "
"будет отличаться в зависимости от операционной системы и аудиодрайвера.\n"
"[b]Примечание:[/b] Это может быть затратно; не рекомендуется вызывать [method "
"get_output_latency] каждый кадр."

msgid "Returns the speaker configuration."
msgstr "Возвращает конфигурацию динамиков."

msgid "Returns the relative time since the last mix occurred."
msgstr "Возвращает относительное время с момента последнего смешивания."

msgid "Returns the relative time until the next mix occurs."
msgstr "Возвращает относительное время до следующего микширования."

msgid ""
"If [code]true[/code], the bus at index [param bus_idx] is bypassing effects."
msgstr ""
"Если [code]true[/code], шина с индексом [param bus_idx] обходит эффекты."

msgid ""
"If [code]true[/code], the effect at index [param effect_idx] on the bus at "
"index [param bus_idx] is enabled."
msgstr ""
"Если [code]true[/code], эффект с индексом [param effect_idx] на шине с "
"индексом [param bus_idx] включен."

msgid "If [code]true[/code], the bus at index [param bus_idx] is muted."
msgstr "Если [code]true[/code], шина с индексом [param bus_idx] отключается."

msgid "If [code]true[/code], the bus at index [param bus_idx] is in solo mode."
msgstr ""
"Если [code]true[/code], шина с индексом [param bus_idx] находится в одиночном "
"режиме."

msgid ""
"If [code]true[/code], the stream is registered as a sample. The engine will "
"not have to register it before playing the sample.\n"
"If [code]false[/code], the stream will have to be registered before playing "
"it. To prevent lag spikes, register the stream as sample with [method "
"register_stream_as_sample]."
msgstr ""
"Если [code]true[/code], поток регистрируется как образец. Движку не придется "
"регистрировать его перед воспроизведением образца.\n"
"Если [code]false[/code], поток придется регистрировать перед его "
"воспроизведением. Чтобы предотвратить скачки задержек, зарегистрируйте поток "
"как образец с помощью [method register_stream_as_sample]."

msgid ""
"Locks the audio driver's main loop.\n"
"[b]Note:[/b] Remember to unlock it afterwards."
msgstr ""
"Блокирует основной цикл аудиодрайвера.\n"
"[b]Примечание:[/b] Не забудьте разблокировать его после этого."

msgid "Moves the bus from index [param index] to index [param to_index]."
msgstr "Перемещает шину с индекса [param index] на индекс [param to_index]."

msgid ""
"Forces the registration of a stream as a sample.\n"
"[b]Note:[/b] Lag spikes may occur when calling this method, especially on "
"single-threaded builds. It is suggested to call this method while loading "
"assets, where the lag spike could be masked, instead of registering the "
"sample right before it needs to be played."
msgstr ""
"Принудительно регистрирует поток как образец.\n"
"[b]Примечание:[/b] При вызове этого метода могут возникать скачки задержки, "
"особенно в однопоточных сборках. Рекомендуется вызывать этот метод во время "
"загрузки ресурсов, где скачок задержки может быть замаскирован, вместо "
"регистрации образца непосредственно перед его воспроизведением."

msgid "Removes the bus at index [param index]."
msgstr "Удаляет шину с индексом [param index]."

msgid ""
"Removes the effect at index [param effect_idx] from the bus at index [param "
"bus_idx]."
msgstr ""
"Удаляет эффект с индексом [param effect_idx] из шины с индексом [param "
"bus_idx]."

msgid "Overwrites the currently used [AudioBusLayout]."
msgstr "Перезаписывает текущий используемый [AudioBusLayout]."

msgid "Sets the name of the bus at index [param bus_idx] to [param name]."
msgstr "Устанавливает имя шины с индексом [param bus_idx] на [param name]."

msgid ""
"Connects the output of the bus at [param bus_idx] to the bus named [param "
"send]."
msgstr "Подключает выход шины [param bus_idx] к шине с именем [param send]."

msgid ""
"Sets the volume in decibels of the bus at index [param bus_idx] to [param "
"volume_db]."
msgstr ""
"Устанавливает громкость в децибелах шины с индексом [param bus_idx] на [param "
"volume_db]."

msgid ""
"Sets the volume as a linear value of the bus at index [param bus_idx] to "
"[param volume_linear].\n"
"[b]Note:[/b] Using this method is equivalent to calling [method "
"set_bus_volume_db] with the result of [method @GlobalScope.linear_to_db] on a "
"value."
msgstr ""
"Устанавливает громкость как линейное значение шины с индексом [param bus_idx] "
"по [param volume_linear].\n"
"[b]Примечание:[/b] Использование этого метода эквивалентно вызову [method "
"set_bus_volume_db] с результатом [method @GlobalScope.linear_to_db] для "
"значения."

msgid ""
"If set to [code]true[/code], all instances of [AudioStreamPlayback] will call "
"[method AudioStreamPlayback._tag_used_streams] every mix step.\n"
"[b]Note:[/b] This is enabled by default in the editor, as it is used by "
"editor plugins for the audio stream previews."
msgstr ""
"Если установлено значение [code]true[/code], все экземпляры "
"[AudioStreamPlayback] будут вызывать [method "
"AudioStreamPlayback._tag_used_streams] на каждом шаге микширования.\n"
"[b]Примечание:[/b] Это включено по умолчанию в редакторе, так как "
"используется плагинами редактора для предпросмотра аудиопотока."

msgid "Swaps the position of two effects in bus [param bus_idx]."
msgstr "Меняет местами два эффекта в шине [param bus_idx]."

msgid ""
"Unlocks the audio driver's main loop. (After locking it, you should always "
"unlock it.)"
msgstr ""
"Разблокирует основной цикл аудиодрайвера. (После блокировки его всегда "
"следует разблокировать.)"

msgid "Number of available audio buses."
msgstr "Количество доступных аудиошин."

msgid ""
"Name of the current device for audio input (see [method "
"get_input_device_list]). On systems with multiple audio inputs (such as "
"analog, USB and HDMI audio), this can be used to select the audio input "
"device. The value [code]\"Default\"[/code] will record audio on the system-"
"wide default audio input. If an invalid device name is set, the value will be "
"reverted back to [code]\"Default\"[/code].\n"
"[b]Note:[/b] [member ProjectSettings.audio/driver/enable_input] must be "
"[code]true[/code] for audio input to work. See also that setting's "
"description for caveats related to permissions and operating system privacy "
"settings."
msgstr ""
"Имя текущего устройства для аудиовхода (см. [method get_input_device_list]). "
"В системах с несколькими аудиовходами (например, аналоговыми, USB и HDMI "
"аудио) это можно использовать для выбора устройства аудиовхода. Значение "
"[code]\"Default\"[/code] будет записывать звук на общесистемном аудиовходе по "
"умолчанию. Если задано недопустимое имя устройства, значение будет возвращено "
"к [code]\"Default\"[/code].\n"
"[b]Примечание:[/b] [member ProjectSettings.audio/driver/enable_input] должно "
"быть [code]true[/code] для работы аудиовхода. См. также описание этого "
"параметра для предостережений, связанных с разрешениями и настройками "
"конфиденциальности операционной системы."

msgid ""
"Name of the current device for audio output (see [method "
"get_output_device_list]). On systems with multiple audio outputs (such as "
"analog, USB and HDMI audio), this can be used to select the audio output "
"device. The value [code]\"Default\"[/code] will play audio on the system-wide "
"default audio output. If an invalid device name is set, the value will be "
"reverted back to [code]\"Default\"[/code]."
msgstr ""
"Имя текущего устройства для аудиовыхода (см. [method "
"get_output_device_list]). В системах с несколькими аудиовыходами (например, "
"аналоговым, USB и HDMI аудио) это можно использовать для выбора устройства "
"аудиовыхода. Значение [code]\"Default\"[/code] будет воспроизводить звук на "
"общесистемном аудиовыходе по умолчанию. Если задано недопустимое имя "
"устройства, значение будет возвращено к [code]\"Default\"[/code]."

msgid ""
"Scales the rate at which audio is played (i.e. setting it to [code]0.5[/code] "
"will make the audio be played at half its speed). See also [member "
"Engine.time_scale] to affect the general simulation speed, which is "
"independent from [member AudioServer.playback_speed_scale]."
msgstr ""
"Масштабирует скорость воспроизведения звука (например, если установить его на "
"[code]0.5[/code], звук будет воспроизводиться с половинной скоростью). См. "
"также [member Engine.time_scale], чтобы повлиять на общую скорость симуляции, "
"которая не зависит от [member AudioServer.playback_speed_scale]."

msgid "Emitted when an audio bus is added, deleted, or moved."
msgstr "Издается при добавлении, удалении или перемещении аудиошины."

msgid ""
"Emitted when the audio bus at [param bus_index] is renamed from [param "
"old_name] to [param new_name]."
msgstr ""
"Вызывается, когда аудиошина в [param bus_index] переименовывается из [param "
"old_name] в [param new_name]."

msgid "Two or fewer speakers were detected."
msgstr "Обнаруживает двух или менее говорящих."

msgid "A 3.1 channel surround setup was detected."
msgstr "Обнаружена конфигурация объемного звучания 3.1."

msgid "A 5.1 channel surround setup was detected."
msgstr "Обнаружена 5.1-канальная система объемного звучания."

msgid "A 7.1 channel surround setup was detected."
msgstr "Обнаружена конфигурация объемного звучания 7.1 каналов."

msgid ""
"The playback will be considered of the type declared at [member "
"ProjectSettings.audio/general/default_playback_type]."
msgstr ""
"Воспроизведение будет считаться воспроизведением типа, объявленного в [member "
"ProjectSettings.audio/general/default_playback_type]."

msgid "Force the playback to be considered as a stream."
msgstr "Принудительно рассматривать воспроизведение как поток."

msgid ""
"Force the playback to be considered as a sample. This can provide lower "
"latency and more stable playback (with less risk of audio crackling), at the "
"cost of having less flexibility.\n"
"[b]Note:[/b] Only currently supported on the web platform.\n"
"[b]Note:[/b] [AudioEffect]s are not supported when playback is considered as "
"a sample."
msgstr ""
"Принудительно считать воспроизведение образцом. Это может обеспечить меньшую "
"задержку и более стабильное воспроизведение (с меньшим риском потрескивания "
"звука) за счет меньшей гибкости.\n"
"[b]Примечание:[/b] В настоящее время поддерживается только на веб-платформе.\n"
"[b]Примечание:[/b] [AudioEffect]-ы не поддерживаются, когда воспроизведение "
"рассматривается как образец."

msgid "Represents the size of the [enum PlaybackType] enum."
msgstr "Представляет размер перечисления [enum PlaybackType]."

msgid "Base class for audio streams."
msgstr "Базовый класс для аудиопотоков."

msgid ""
"Base class for audio streams. Audio streams are used for sound effects and "
"music playback, and support WAV (via [AudioStreamWAV]) and Ogg (via "
"[AudioStreamOggVorbis]) file formats."
msgstr ""
"Базовый класс для аудиопотоков. Аудиопотоки используются для звуковых "
"эффектов и воспроизведения музыки и поддерживают форматы файлов WAV (через "
"[AudioStreamWAV]) и Ogg (через [AudioStreamOggVorbis])."

msgid "Audio streams"
msgstr "Аудиопотоки"

msgid "Audio Generator Demo"
msgstr "Демонстрация звукового генератора"

msgid "Override this method to return the bar beats of this stream."
msgstr "Переопределите этот метод, чтобы вернуть тактовые доли этого потока."

msgid ""
"Overridable method. Should return the total number of beats of this audio "
"stream. Used by the engine to determine the position of every beat.\n"
"Ideally, the returned value should be based off the stream's sample rate "
"([member AudioStreamWAV.mix_rate], for example)."
msgstr ""
"Переопределяемый метод. Должен возвращать общее количество тактов этого "
"аудиопотока. Используется движком для определения позиции каждого такта.\n"
"В идеале возвращаемое значение должно основываться на частоте дискретизации "
"потока (например, [member AudioStreamWAV.mix_rate])."

msgid ""
"Overridable method. Should return the tempo of this audio stream, in beats "
"per minute (BPM). Used by the engine to determine the position of every "
"beat.\n"
"Ideally, the returned value should be based off the stream's sample rate "
"([member AudioStreamWAV.mix_rate], for example)."
msgstr ""
"Переопределяемый метод. Должен возвращать темп этого аудиопотока в ударах в "
"минуту (BPM). Используется движком для определения позиции каждого удара.\n"
"В идеале возвращаемое значение должно основываться на частоте дискретизации "
"потока (например, [member AudioStreamWAV.mix_rate])."

msgid ""
"Override this method to customize the returned value of [method get_length]. "
"Should return the length of this audio stream, in seconds."
msgstr ""
"Переопределите этот метод, чтобы настроить возвращаемое значение [method "
"get_length]. Должен возвращать длину этого аудиопотока в секундах."

msgid ""
"Return the controllable parameters of this stream. This array contains "
"dictionaries with a property info description format (see [method "
"Object.get_property_list]). Additionally, the default value for this "
"parameter must be added tho each dictionary in \"default_value\" field."
msgstr ""
"Верните контролируемые параметры этого потока. Этот массив содержит словари с "
"форматом описания информации о свойствах (см. [method "
"Object.get_property_list]). Кроме того, значение по умолчанию для этого "
"параметра должно быть добавлено в каждый словарь в поле \"default_value\"."

msgid ""
"Override this method to customize the name assigned to this audio stream. "
"Unused by the engine."
msgstr ""
"Переопределите этот метод, чтобы настроить имя, назначенное этому "
"аудиопотоку. Не используется движком."

msgid ""
"Override this method to customize the tags for this audio stream. Should "
"return a [Dictionary] of strings with the tag as the key and its content as "
"the value.\n"
"Commonly used tags include [code]title[/code], [code]artist[/code], "
"[code]album[/code], [code]tracknumber[/code], and [code]date[/code]."
msgstr ""
"Переопределите этот метод, чтобы настроить теги для этого аудиопотока. Должен "
"возвращать [Dictionary] строк с тегом в качестве ключа и его содержимым в "
"качестве значения.\n"
"Обычно используемые теги включают [code]title[/code], [code]artist[/code], "
"[code]album[/code], [code]tracknumber[/code] и [code]date[/code]."

msgid ""
"Override this method to return [code]true[/code] if this stream has a loop."
msgstr ""
"Переопределите этот метод, чтобы он возвращал [code]true[/code], если этот "
"поток имеет зацикленность."

msgid ""
"Override this method to customize the returned value of [method "
"instantiate_playback]. Should return a new [AudioStreamPlayback] created when "
"the stream is played (such as by an [AudioStreamPlayer])."
msgstr ""
"Переопределите этот метод, чтобы настроить возвращаемое значение [method "
"instantiate_playback]. Должен возвращать новый [AudioStreamPlayback], "
"созданный при воспроизведении потока (например, [AudioStreamPlayer])."

msgid ""
"Override this method to customize the returned value of [method "
"is_monophonic]. Should return [code]true[/code] if this audio stream only "
"supports one channel."
msgstr ""
"Переопределите этот метод, чтобы настроить возвращаемое значение [method "
"is_monophonic]. Должен возвращать [code]true[/code], если этот аудиопоток "
"поддерживает только один канал."

msgid ""
"Returns if the current [AudioStream] can be used as a sample. Only static "
"streams can be sampled."
msgstr ""
"Возвращает, если текущий [AudioStream] может быть использован в качестве "
"образца. Только статические потоки могут быть сэмплированы."

msgid "Generates an [AudioSample] based on the current stream."
msgstr "Генерирует [AudioSample] на основе текущего потока."

msgid ""
"Returns the length of the audio stream in seconds. If this stream is an "
"[AudioStreamRandomizer], returns the length of the last played stream. If "
"this stream has an indefinite length (such as for [AudioStreamGenerator] and "
"[AudioStreamMicrophone]), returns [code]0.0[/code]."
msgstr ""
"Возвращает длительность аудиопотока в секундах. Если этот поток является "
"[AudioStreamRandomizer], возвращает длительность последнего воспроизведенного "
"потока. Если длительность потока не определена (например, для "
"[AudioStreamGenerator] и [AudioStreamMicrophone]), возвращает [code]0.0[/"
"code]."

msgid ""
"Returns a newly created [AudioStreamPlayback] intended to play this audio "
"stream. Useful for when you want to extend [method _instantiate_playback] but "
"call [method instantiate_playback] from an internally held AudioStream "
"subresource. An example of this can be found in the source code for "
"[code]AudioStreamRandomPitch::instantiate_playback[/code]."
msgstr ""
"Возвращает недавно созданный [AudioStreamPlayback], предназначенный для "
"воспроизведения этого аудиопотока. Полезно, когда вы хотите расширить [method "
"_instantiate_playback], но вызвать [method instantiate_playback] из "
"внутреннего подресурса AudioStream. Пример этого можно найти в исходном коде "
"для [code]AudioStreamRandomPitch::instantiate_playback[/code]."

msgid ""
"Returns [code]true[/code] if the stream is a collection of other streams, "
"[code]false[/code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если поток является набором других потоков, и "
"[code]false[/code] в противном случае."

msgid ""
"Returns [code]true[/code] if this audio stream only supports one channel "
"([i]monophony[/i]), or [code]false[/code] if the audio stream supports two or "
"more channels ([i]polyphony[/i])."
msgstr ""
"Возвращает [code]true[/code], если этот аудиопоток поддерживает только один "
"канал ([i]монофония (monophony)[/i]), или [code]false[/code], если аудиопоток "
"поддерживает два или более каналов ([i]полифония (polyphony)[/i])."

msgid "Signal to be emitted to notify when the parameter list changed."
msgstr ""
"Сигнал, который будет подаваться для уведомления об изменении списка "
"параметров."

msgid "An audio stream with utilities for procedural sound generation."
msgstr "Аудиопоток с утилитами для процедурной генерации звука."

msgid ""
"[AudioStreamGenerator] is a type of audio stream that does not play back "
"sounds on its own; instead, it expects a script to generate audio data for "
"it. See also [AudioStreamGeneratorPlayback].\n"
"Here's a sample on how to use it to generate a sine wave:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var playback # Will hold the AudioStreamGeneratorPlayback.\n"
"@onready var sample_hz = $AudioStreamPlayer.stream.mix_rate\n"
"var pulse_hz = 440.0 # The frequency of the sound wave.\n"
"var phase = 0.0\n"
"\n"
"func _ready():\n"
"\t$AudioStreamPlayer.play()\n"
"\tplayback = $AudioStreamPlayer.get_stream_playback()\n"
"\tfill_buffer()\n"
"\n"
"func fill_buffer():\n"
"\tvar increment = pulse_hz / sample_hz\n"
"\tvar frames_available = playback.get_frames_available()\n"
"\n"
"\tfor i in range(frames_available):\n"
"\t\tplayback.push_frame(Vector2.ONE * sin(phase * TAU))\n"
"\t\tphase = fmod(phase + increment, 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export] public AudioStreamPlayer Player { get; set; }\n"
"\n"
"private AudioStreamGeneratorPlayback _playback; // Will hold the "
"AudioStreamGeneratorPlayback.\n"
"private float _sampleHz;\n"
"private float _pulseHz = 440.0f; // The frequency of the sound wave.\n"
"private double phase = 0.0;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tif (Player.Stream is AudioStreamGenerator generator) // Type as a generator "
"to access MixRate.\n"
"\t{\n"
"\t\t_sampleHz = generator.MixRate;\n"
"\t\tPlayer.Play();\n"
"\t\t_playback = (AudioStreamGeneratorPlayback)Player.GetStreamPlayback();\n"
"\t\tFillBuffer();\n"
"\t}\n"
"}\n"
"\n"
"public void FillBuffer()\n"
"{\n"
"\tfloat increment = _pulseHz / _sampleHz;\n"
"\tint framesAvailable = _playback.GetFramesAvailable();\n"
"\n"
"\tfor (int i = 0; i < framesAvailable; i++)\n"
"\t{\n"
"\t\t_playback.PushFrame(Vector2.One * (float)Mathf.Sin(phase * Mathf.Tau));\n"
"\t\tphase = Mathf.PosMod(phase + increment, 1.0);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In the example above, the \"AudioStreamPlayer\" node must use an "
"[AudioStreamGenerator] as its stream. The [code]fill_buffer[/code] function "
"provides audio data for approximating a sine wave.\n"
"See also [AudioEffectSpectrumAnalyzer] for performing real-time audio "
"spectrum analysis.\n"
"[b]Note:[/b] Due to performance constraints, this class is best used from C# "
"or from a compiled language via GDExtension. If you still want to use this "
"class from GDScript, consider using a lower [member mix_rate] such as 11,025 "
"Hz or 22,050 Hz."
msgstr ""
"[AudioStreamGenerator] — это тип аудиопотока, который не воспроизводит звуки "
"сам по себе; вместо этого он ожидает, что скрипт сгенерирует для него "
"аудиоданные. См. также [AudioStreamGeneratorPlayback].\n"
"Вот пример того, как использовать его для генерации синусоидальной волны:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var playback # Будет содержать AudioStreamGeneratorPlayback.\n"
"@onready var sample_hz = $AudioStreamPlayer.stream.mix_rate\n"
"var pulse_hz = 440.0 # Частота звуковой волны.\n"
"var phase = 0.0\n"
"\n"
"func _ready():\n"
"\t$AudioStreamPlayer.play()\n"
"\tplayback = $AudioStreamPlayer.get_stream_playback()\n"
"\tfill_buffer()\n"
"\n"
"func fill_buffer():\n"
"\tvar increment = pulse_hz / sample_hz\n"
"\tvar frames_available = playback.get_frames_available()\n"
"\n"
"\tfor i in range(frames_available):\n"
"\t\tplayback.push_frame(Vector2.ONE * sin(phase * TAU))\n"
"\t\tphase = fmod(phase + increment, 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export] public AudioStreamPlayer Player { get; set; }\n"
"\n"
"private AudioStreamGeneratorPlayback _playback; // Будет содержать "
"AudioStreamGeneratorPlayback.\n"
"private float _sampleHz;\n"
"private float _pulseHz = 440.0f; // Частота звуковой волны.\n"
"private double phase = 0.0;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tif (Player.Stream is AudioStreamGenerator generator) // Введите в качестве "
"генератора для доступа к MixRate.\n"
"\t{\n"
"\t\t_sampleHz = generator.MixRate;\n"
"\t\tPlayer.Play();\n"
"\t\t_playback = (AudioStreamGeneratorPlayback)Player.GetStreamPlayback();\n"
"\t\tFillBuffer();\n"
"\t}\n"
"}\n"
"\n"
"public void FillBuffer()\n"
"{\n"
"\tfloat increment = _pulseHz / _sampleHz;\n"
"\tint framesAvailable = _playback.GetFramesAvailable();\n"
"\n"
"\tfor (int i = 0; i < framesAvailable; i++)\n"
"\t{\n"
"\t\t_playback.PushFrame(Vector2.One * (float)Mathf.Sin(phase * Mathf.Tau));\n"
"\t\tphase = Mathf.PosMod(phase + increment, 1.0);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"В приведенном выше примере узел \"AudioStreamPlayer\" должен использовать "
"[AudioStreamGenerator] в качестве своего потока. Функция [code]fill_buffer[/"
"code] предоставляет аудиоданные для аппроксимации синусоидальной волны.\n"
"См. также [AudioEffectSpectrumAnalyzer] для выполнения анализа аудиоспектра в "
"реальном времени.\n"
"[b]Примечание:[/b] Из-за ограничений производительности этот класс лучше "
"всего использовать из C# или из скомпилированного языка через GDExtension. "
"Если вы все еще хотите использовать этот класс из GDScript, рассмотрите "
"возможность использования более низкого [member mix_rate], например 11 025 Гц "
"или 22 050 Гц."

msgid ""
"The length of the buffer to generate (in seconds). Lower values result in "
"less latency, but require the script to generate audio data faster, resulting "
"in increased CPU usage and more risk for audio cracking if the CPU can't keep "
"up."
msgstr ""
"Длина буфера для генерации (в секундах). Более низкие значения приводят к "
"меньшей задержке, но требуют, чтобы скрипт генерировал аудиоданные быстрее, "
"что приводит к увеличению использования ЦП и большему риску взлома звука, "
"если ЦП не справляется."

msgid ""
"The sample rate to use (in Hz). Higher values are more demanding for the CPU "
"to generate, but result in better quality.\n"
"In games, common sample rates in use are [code]11025[/code], [code]16000[/"
"code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and "
"[code]48000[/code].\n"
"According to the [url=https://en.wikipedia.org/wiki/"
"Nyquist%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/"
"url], there is no quality difference to human hearing when going past 40,000 "
"Hz (since most humans can only hear up to ~20,000 Hz, often less). If you are "
"generating lower-pitched sounds such as voices, lower sample rates such as "
"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
"quality.\n"
"[b]Note:[/b] [AudioStreamGenerator] is not automatically resampling input "
"data, to produce expected result [member mix_rate_mode] should match the "
"sampling rate of input data.\n"
"[b]Note:[/b] If you are using [AudioEffectCapture] as the source of your "
"data, set [member mix_rate_mode] to [constant MIX_RATE_INPUT] or [constant "
"MIX_RATE_OUTPUT] to automatically match current [AudioServer] mixing rate."
msgstr ""
"Частота дискретизации для использования (в Гц). Более высокие значения более "
"требовательны к ЦП для генерации, но приводят к лучшему качеству.\n"
"В играх обычно используются частоты дискретизации [code]11025[/code], "
"[code]16000[/code], [code]22050[/code], [code]32000[/code], [code]44100[/"
"code] и [code]48000[/code].\n"
"Согласно [url=https://en.wikipedia.org/wiki/"
"Nyquist%E2%80%93Shannon_sampling_theorem]теореме дискретизации Найквиста-"
"Шеннона[/url], для человеческого слуха нет никакой разницы в качестве при "
"выходе за пределы 40 000 Гц (поскольку большинство людей могут слышать только "
"до ~20 000 Гц, часто меньше). Если вы генерируете более низкие звуки, такие "
"как голоса, можно использовать более низкие частоты дискретизации, такие как "
"[code]32000[/code] или [code]22050[/code] без потери качества.\n"
"[b]Примечание:[/b] [AudioStreamGenerator] не выполняет автоматическую "
"передискретизацию (resampling) входных данных, для получения ожидаемого "
"результата [member mix_rate_mode] должен соответствовать частоте "
"дискретизации входных данных.\n"
"[b]Примечание:[/b] Если вы используете [AudioEffectCapture] в качестве "
"источника данных, установите [member mix_rate_mode] на [constant "
"MIX_RATE_INPUT] или [constant MIX_RATE_OUTPUT], чтобы автоматически "
"соответствовать текущей частоте микширования [AudioServer]."

msgid ""
"Mixing rate mode. If set to [constant MIX_RATE_CUSTOM], [member mix_rate] is "
"used, otherwise current [AudioServer] mixing rate is used."
msgstr ""
"Режим скорости смешивания. Если установлено значение [constant "
"MIX_RATE_CUSTOM], используется [member mix_rate], в противном случае "
"используется текущая скорость смешивания [AudioServer]."

msgid "Current [AudioServer] output mixing rate."
msgstr "Текущая скорость микширования выходного сигнала [AudioServer]."

msgid "Current [AudioServer] input mixing rate."
msgstr "Текущая скорость микширования входного сигнала [AudioServer]."

msgid "Custom mixing rate, specified by [member mix_rate]."
msgstr "Пользовательская скорость смешивания, указанная [member mix_rate]."

msgid "Maximum value for the mixing rate mode enum."
msgstr "Максимальное значение для перечисления режима скорости смешивания."

msgid "Plays back audio generated using [AudioStreamGenerator]."
msgstr "Воспроизводит звук, созданный с помощью [AudioStreamGenerator]."

msgid ""
"This class is meant to be used with [AudioStreamGenerator] to play back the "
"generated audio in real-time."
msgstr ""
"Этот класс предназначен для использования с [AudioStreamGenerator] для "
"воспроизведения сгенерированного звука в реальном времени."

msgid "Godot 3.2 will get new audio features"
msgstr "Godot 3.2 получит новые аудиофункции"

msgid ""
"Returns [code]true[/code] if a buffer of the size [param amount] can be "
"pushed to the audio sample data buffer without overflowing it, [code]false[/"
"code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если буфер размером [param amount] можно "
"поместить в буфер данных аудиосэмпла без его переполнения, в противном случае "
"— [code]false[/code]."

msgid "Clears the audio sample data buffer."
msgstr "Очищает буфер данных аудиосэмпла."

msgid ""
"Returns the number of frames that can be pushed to the audio sample data "
"buffer without overflowing it. If the result is [code]0[/code], the buffer is "
"full."
msgstr ""
"Возвращает количество кадров, которые можно поместить в буфер данных "
"аудиосэмпла без его переполнения. Если результат [code]0[/code], буфер "
"заполнен."

msgid ""
"Returns the number of times the playback skipped due to a buffer underrun in "
"the audio sample data. This value is reset at the start of the playback."
msgstr ""
"Возвращает количество пропусков воспроизведения из-за опустошения буфера в "
"данных аудиосэмпла. Это значение сбрасывается в начале воспроизведения."

msgid ""
"Pushes several audio data frames to the buffer. This is usually more "
"efficient than [method push_frame] in C# and compiled languages via "
"GDExtension, but [method push_buffer] may be [i]less[/i] efficient in "
"GDScript."
msgstr ""
"Помещает несколько аудиокадров данных в буфер. Обычно это эффективнее, чем "
"[method push_frame] в C# и компилируемых языках через GDExtension, но [method "
"push_buffer] может быть [i]менее[/i] эффективным в GDScript."

msgid ""
"Pushes a single audio data frame to the buffer. This is usually less "
"efficient than [method push_buffer] in C# and compiled languages via "
"GDExtension, but [method push_frame] may be [i]more[/i] efficient in GDScript."
msgstr ""
"Помещает один аудио-фрейм данных в буфер. Обычно это менее эффективно, чем "
"[method push_buffer] в C# и компилируемых языках через GDExtension, но "
"[method push_frame] может быть [i]более[/i] эффективным в GDScript."

msgid ""
"Audio stream that can playback music interactively, combining clips and a "
"transition table."
msgstr ""
"Аудиопоток, который может воспроизводить музыку в интерактивном режиме, "
"объединяя клипы и таблицу переходов."

msgid ""
"This is an audio stream that can playback music interactively, combining "
"clips and a transition table. Clips must be added first, and then the "
"transition rules via the [method add_transition]. Additionally, this stream "
"exports a property parameter to control the playback via [AudioStreamPlayer], "
"[AudioStreamPlayer2D], or [AudioStreamPlayer3D].\n"
"The way this is used is by filling a number of clips, then configuring the "
"transition table. From there, clips are selected for playback and the music "
"will smoothly go from the current to the new one while using the "
"corresponding transition rule defined in the transition table."
msgstr ""
"Это аудиопоток, который может воспроизводить музыку интерактивно, объединяя "
"клипы и таблицу переходов. Сначала необходимо добавить клипы, а затем правила "
"перехода через [method add_transition]. Кроме того, этот поток экспортирует "
"параметр свойства для управления воспроизведением через [AudioStreamPlayer], "
"[AudioStreamPlayer2D] или [AudioStreamPlayer3D].\n"
"Это используется путем заполнения ряда клипов, а затем настройки таблицы "
"переходов. Оттуда клипы выбираются для воспроизведения, и музыка будет плавно "
"переходить от текущего к новому, используя соответствующее правило перехода, "
"определенное в таблице переходов."

msgid ""
"Add a transition between two clips. Provide the indices of the source and "
"destination clips, or use the [constant CLIP_ANY] constant to indicate that "
"transition happens to/from any clip to this one.\n"
"* [param from_time] indicates the moment in the current clip the transition "
"will begin after triggered.\n"
"* [param to_time] indicates the time in the next clip that the playback will "
"start from.\n"
"* [param fade_mode] indicates how the fade will happen between clips. If "
"unsure, just use [constant FADE_AUTOMATIC] which uses the most common type of "
"fade for each situation.\n"
"* [param fade_beats] indicates how many beats the fade will take. Using "
"decimals is allowed.\n"
"* [param use_filler_clip] indicates that there will be a filler clip used "
"between the source and destination clips.\n"
"* [param filler_clip] the index of the filler clip.\n"
"* If [param hold_previous] is used, then this clip will be remembered. This "
"can be used together with [constant AUTO_ADVANCE_RETURN_TO_HOLD] to return to "
"this clip after another is done playing."
msgstr ""
"Добавьте переход между двумя клипами. Укажите индексы исходного и конечного "
"клипов или используйте константу [constant CLIP_ANY], чтобы указать, что "
"переход происходит из/в любой клип к этому.\n"
"* [param from_time] указывает момент в текущем клипе, после срабатывания "
"которого начнется переход.\n"
"* [param to_time] указывает время в следующем клипе, с которого начнется "
"воспроизведение.\n"
"* [param fade_mode] указывает, как будет происходить затухание между клипами. "
"Если вы не уверены, просто используйте [constant FADE_AUTOMATIC], который "
"использует наиболее распространенный тип затухания для каждой ситуации.\n"
"*[param fade_beats] указывает, сколько ударов займет затухание. Разрешено "
"использование десятичных дробей.\n"
"* [param use_filler_clip] указывает, что между исходным и конечным клипами "
"будет использоваться клип-заполнитель.\n"
"* [param filler_clip] индекс клипа-заполнителя.\n"
"* Если используется [param hold_previous], то этот клип будет запомнен. Это "
"можно использовать вместе с [constant AUTO_ADVANCE_RETURN_TO_HOLD], чтобы "
"вернуться к этому клипу после завершения воспроизведения другого."

msgid ""
"Erase a transition by providing [param from_clip] and [param to_clip] clip "
"indices. [constant CLIP_ANY] can be used for either argument or both."
msgstr ""
"Удалите переход, указав индексы клипов [param from_clip] и [param to_clip]. "
"[constant CLIP_ANY] можно использовать для любого из аргументов или для обоих."

msgid ""
"Return whether a clip has auto-advance enabled. See [method "
"set_clip_auto_advance]."
msgstr ""
"Возвращает, включено ли для клипа автоматическое продвижение. См. [method "
"set_clip_auto_advance]."

msgid ""
"Return the clip towards which the clip referenced by [param clip_index] will "
"auto-advance to."
msgstr ""
"Возвращает клип, к которому будет автоматически переходить клип, указанный в "
"[param clip_index]."

msgid "Return the name of a clip."
msgstr "Возвращает название клипа."

msgid "Return the [AudioStream] associated with a clip."
msgstr "Возвращает [AudioStream], связанный с клипом."

msgid ""
"Return the time (in beats) for a transition (see [method add_transition])."
msgstr "Возвращает время (в тактах) перехода (см. [method add_transition])."

msgid "Return the mode for a transition (see [method add_transition])."
msgstr "Возвращает режим перехода (см. [method add_transition])."

msgid "Return the filler clip for a transition (see [method add_transition])."
msgstr "Возвращает заполняющий клип для перехода (см. [method add_transition])."

msgid ""
"Return the source time position for a transition (see [method "
"add_transition])."
msgstr ""
"Верните исходную временную позицию для перехода (см. [method add_transition])."

msgid "Return the list of transitions (from, to interleaved)."
msgstr "Вернуть список переходов (от, до чередующихся)."

msgid ""
"Return the destination time position for a transition (see [method "
"add_transition])."
msgstr ""
"Возвращает конечную временную позицию для перехода (см. [method "
"add_transition])."

msgid ""
"Returns [code]true[/code] if a given transition exists (was added via [method "
"add_transition])."
msgstr ""
"Возвращает [code]true[/code], если указанный переход существует (был добавлен "
"с помощью [method add_transition])."

msgid ""
"Return whether a transition uses the [i]hold previous[/i] functionality (see "
"[method add_transition])."
msgstr ""
"Возвращает, использует ли переход функциональность [i]удержания предыдущего "
"(hold previous)[/i] (см. [method add_transition])."

msgid ""
"Return whether a transition uses the [i]filler clip[/i] functionality (see "
"[method add_transition])."
msgstr ""
"Возвращает, использует ли переход функциональность [i]заполнителя (filler "
"clip)[/i] (см. [method add_transition])."

msgid "Set whether a clip will auto-advance by changing the auto-advance mode."
msgstr ""
"Укажите, будет ли клип автоматически перематываться, изменив режим "
"автоматического перематывания."

msgid ""
"Set the index of the next clip towards which this clip will auto advance to "
"when finished. If the clip being played loops, then auto-advance will be "
"ignored."
msgstr ""
"Установите индекс следующего клипа, к которому этот клип будет автоматически "
"переходить по завершении. Если воспроизводимый клип зацикливается, то "
"автоматическое перемещение будет игнорироваться."

msgid "Set the name of the current clip (for easier identification)."
msgstr "Задайте название текущего клипа (для более легкой идентификации)."

msgid "Set the [AudioStream] associated with the current clip."
msgstr "Установите [AudioStream], связанный с текущим клипом."

msgid "Amount of clips contained in this interactive player."
msgstr "Количество клипов, содержащихся в этом интерактивном плеере."

msgid ""
"Index of the initial clip, which will be played first when this stream is "
"played."
msgstr ""
"Индекс начального клипа, который будет воспроизведен первым при "
"воспроизведении данного потока."

msgid ""
"Start transition as soon as possible, don't wait for any specific time "
"position."
msgstr ""
"Начните переход как можно скорее, не ждите какого-то определенного времени."

msgid "Transition when the clip playback position reaches the next beat."
msgstr ""
"Переход, когда позиция воспроизведения клипа достигает следующего такта."

msgid "Transition when the clip playback position reaches the next bar."
msgstr ""
"Переход, когда позиция воспроизведения клипа достигает следующего такта."

msgid "Transition when the current clip finished playing."
msgstr "Переход после завершения воспроизведения текущего клипа."

msgid ""
"Transition to the same position in the destination clip. This is useful when "
"both clips have exactly the same length and the music should fade between "
"them."
msgstr ""
"Переход к той же позиции в клипе назначения. Это полезно, когда оба клипа "
"имеют одинаковую длину и музыка должна плавно переходить между ними."

msgid "Transition to the start of the destination clip."
msgstr "Переход к началу целевого клипа."

msgid ""
"Do not use fade for the transition. This is useful when transitioning from a "
"clip-end to clip-beginning, and each clip has their begin/end."
msgstr ""
"Не используйте затухание для перехода. Это полезно при переходе от конца "
"клипа к началу клипа, и у каждого клипа есть свое начало/конец."

msgid "Use a fade-in in the next clip, let the current clip finish."
msgstr ""
"Используйте плавное появление следующего клипа, дайте текущему клипу "
"закончиться."

msgid "Use a fade-out in the current clip, the next clip will start by itself."
msgstr ""
"Используйте затухание в текущем клипе, следующий клип начнется сам собой."

msgid "Use a cross-fade between clips."
msgstr "Используйте плавный переход между клипами."

msgid ""
"Use automatic fade logic depending on the transition from/to. It is "
"recommended to use this by default."
msgstr ""
"Использовать автоматическую логику затухания в зависимости от перехода от/к. "
"Рекомендуется использовать это по умолчанию."

msgid "Disable auto-advance (default)."
msgstr "Отключить автопереход (по умолчанию)."

msgid "Enable auto-advance, a clip must be specified."
msgstr "Для включения автоматического перехода необходимо указать клип."

msgid ""
"Enable auto-advance, but instead of specifying a clip, the playback will "
"return to hold (see [method add_transition])."
msgstr ""
"Включить авто-переход, но вместо указания клипа воспроизведение вернется в "
"режим паузы (см. [method add_transition])."

msgid ""
"This constant describes that any clip is valid for a specific transition as "
"either source or destination."
msgstr ""
"Эта константа описывает, что любой клип действителен для определенного "
"перехода как источник или как место назначения."

msgid "Plays real-time audio input data."
msgstr "Воспроизводит входные аудиоданные в реальном времени."

msgid ""
"When used directly in an [AudioStreamPlayer] node, [AudioStreamMicrophone] "
"plays back microphone input in real-time. This can be used in conjunction "
"with [AudioEffectCapture] to process the data or save it.\n"
"[b]Note:[/b] [member ProjectSettings.audio/driver/enable_input] must be "
"[code]true[/code] for audio input to work. See also that setting's "
"description for caveats related to permissions and operating system privacy "
"settings."
msgstr ""
"При использовании непосредственно в узле [AudioStreamPlayer] "
"[AudioStreamMicrophone] воспроизводит вход микрофона в реальном времени. Это "
"можно использовать вместе с [AudioEffectCapture] для обработки данных или их "
"сохранения.\n"
"[b]Примечание:[/b] [member ProjectSettings.audio/driver/enable_input] должен "
"быть [code]true[/code] для работы аудиовхода. См. также описание этого "
"параметра для предостережений, связанных с разрешениями и настройками "
"конфиденциальности операционной системы."

msgid "Audio Mic Record Demo"
msgstr "Audio Mic Record Демо"

msgid "MP3 audio stream driver."
msgstr "MP3 audio stream драйвер."

msgid ""
"MP3 audio stream driver. See [member data] if you want to load an MP3 file at "
"run-time.\n"
"[b]Note:[/b] This class can optionally support legacy MP1 and MP2 formats, "
"provided that the engine is compiled with the "
"[code]minimp3_extra_formats=yes[/code] SCons option. These extra formats are "
"not enabled by default."
msgstr ""
"Драйвер аудиопотока MP3. См. [member data], если вы хотите загрузить файл MP3 "
"во время выполнения.\n"
"[b]Примечание:[/b] Этот класс может опционально поддерживать устаревшие "
"форматы MP1 и MP2, при условии, что движок скомпилирован с опцией "
"[code]minimp3_extra_formats=yes[/code] SCons. Эти дополнительные форматы не "
"включены по умолчанию."

msgid ""
"Creates a new [AudioStreamMP3] instance from the given buffer. The buffer "
"must contain MP3 data."
msgstr ""
"Создает новый экземпляр [AudioStreamMP3] из указанного буфера. Буфер должен "
"содержать данные MP3."

msgid ""
"Creates a new [AudioStreamMP3] instance from the given file path. The file "
"must be in MP3 format."
msgstr ""
"Создает новый экземпляр [AudioStreamMP3] из указанного пути к файлу. Файл "
"должен быть в формате MP3."

msgid ""
"Contains the audio data in bytes.\n"
"You can load a file without having to import it beforehand using the code "
"snippet below. Keep in mind that this snippet loads the whole file into "
"memory and may not be ideal for huge files (hundreds of megabytes or more).\n"
"[codeblocks]\n"
"[gdscript]\n"
"func load_mp3(path):\n"
"\tvar file = FileAccess.open(path, FileAccess.READ)\n"
"\tvar sound = AudioStreamMP3.new()\n"
"\tsound.data = file.get_buffer(file.get_length())\n"
"\treturn sound\n"
"[/gdscript]\n"
"[csharp]\n"
"public AudioStreamMP3 LoadMP3(string path)\n"
"{\n"
"\tusing var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);\n"
"\tvar sound = new AudioStreamMP3();\n"
"\tsound.Data = file.GetBuffer(file.GetLength());\n"
"\treturn sound;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Содержит аудиоданные в байтах.\n"
"Вы можете загрузить файл без необходимости его предварительного импорта, "
"используя фрагмент кода ниже. Имейте в виду, что этот фрагмент загружает весь "
"файл в память и может быть неидеальным для огромных файлов (сотни мегабайт и "
"более).\n"
"[codeblocks]\n"
"[gdscript]\n"
"func load_mp3(path):\n"
"\tvar file = FileAccess.open(path, FileAccess.READ)\n"
"\tvar sound = AudioStreamMP3.new()\n"
"\tsound.data = file.get_buffer(file.get_length())\n"
"\treturn sound\n"
"[/gdscript]\n"
"[csharp]\n"
"public AudioStreamMP3 LoadMP3(string path)\n"
"{\n"
"\tusing var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);\n"
"\tvar sound = new AudioStreamMP3();\n"
"\tsound.Data = file.GetBuffer(file.GetLength());\n"
"\treturn sound;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"If [code]true[/code], the stream will automatically loop when it reaches the "
"end."
msgstr ""
"Если [code]true[/code], поток автоматически зациклится, когда достигнет конца."

msgid "Time in seconds at which the stream starts after being looped."
msgstr ""
"Время в секундах, через которое начинается трансляция после зацикливания."

msgid "A class representing an Ogg Vorbis audio stream."
msgstr "Класс, представляющий аудиопоток Ogg Vorbis."

msgid ""
"The AudioStreamOggVorbis class is a specialized [AudioStream] for handling "
"Ogg Vorbis file formats. It offers functionality for loading and playing back "
"Ogg Vorbis files, as well as managing looping and other playback properties. "
"This class is part of the audio stream system, which also supports WAV files "
"through the [AudioStreamWAV] class."
msgstr ""
"Класс AudioStreamOggVorbis — это специализированный [AudioStream] для "
"обработки форматов файлов Ogg Vorbis. Он предлагает функциональность для "
"загрузки и воспроизведения файлов Ogg Vorbis, а также управления циклами и "
"другими свойствами воспроизведения. Этот класс является частью системы "
"аудиопотока, которая также поддерживает файлы WAV через класс "
"[AudioStreamWAV]."

msgid "Runtime file loading and saving"
msgstr "Загрузка и сохранение файла времени выполнения"

msgid ""
"Creates a new [AudioStreamOggVorbis] instance from the given buffer. The "
"buffer must contain Ogg Vorbis data."
msgstr ""
"Создает новый экземпляр [AudioStreamOggVorbis] из указанного буфера. Буфер "
"должен содержать данные Ogg Vorbis."

msgid ""
"Creates a new [AudioStreamOggVorbis] instance from the given file path. The "
"file must be in Ogg Vorbis format."
msgstr ""
"Создает новый экземпляр [AudioStreamOggVorbis] из указанного пути к файлу. "
"Файл должен быть в формате Ogg Vorbis."

msgid ""
"If [code]true[/code], the audio will play again from the specified [member "
"loop_offset] once it is done playing. Useful for ambient sounds and "
"background music."
msgstr ""
"Если [code]true[/code], аудио будет воспроизводиться снова с указанного "
"[member loop_offset] после завершения воспроизведения. Полезно для окружающих "
"звуков и фоновой музыки."

msgid "Contains the raw Ogg data for this stream."
msgstr "Содержит необработанные данные Ogg для этого потока."

msgid ""
"Contains user-defined tags if found in the Ogg Vorbis data.\n"
"Commonly used tags include [code]title[/code], [code]artist[/code], "
"[code]album[/code], [code]tracknumber[/code], and [code]date[/code] "
"([code]date[/code] does not have a standard date format).\n"
"[b]Note:[/b] No tag is [i]guaranteed[/i] to be present in every file, so make "
"sure to account for the keys not always existing."
msgstr ""
"Содержит пользовательские теги, если они найдены в данных Ogg Vorbis.\n"
"Обычно используемые теги включают [code]title[/code], [code]artist[/code], "
"[code]album[/code], [code]tracknumber[/code] и [code]date[/code], "
"([code]date[/code] не имеет стандартного формата даты).\n"
"[b]Примечание:[/b] Не все теги [i]гарантированно[/i] присутствует в каждом "
"файле, поэтому обязательно учитывайте ключи, которые не всегда существуют."

msgid "Meta class for playing back audio."
msgstr "Метакласс для воспроизведения звука."

msgid ""
"Can play, loop, pause a scroll through audio. See [AudioStream] and "
"[AudioStreamOggVorbis] for usage."
msgstr ""
"Может воспроизводить, зацикливать, приостанавливать прокрутку аудио. См. "
"[AudioStream] и [AudioStreamOggVorbis] для использования."

msgid ""
"Overridable method. Should return how many times this audio stream has "
"looped. Most built-in playbacks always return [code]0[/code]."
msgstr ""
"Переопределяемый метод. Должен возвращать, сколько раз этот аудиопоток был "
"зациклен. Большинство встроенных воспроизведений всегда возвращают [code]0[/"
"code]."

msgid ""
"Return the current value of a playback parameter by name (see [method "
"AudioStream._get_parameter_list])."
msgstr ""
"Возврат текущего значения параметра воспроизведения по имени (см. [method "
"AudioStream._get_parameter_list])."

msgid ""
"Overridable method. Should return the current progress along the audio "
"stream, in seconds."
msgstr ""
"Переопределяемый метод. Должен возвращать текущий прогресс по аудиопотоку в "
"секундах."

msgid ""
"Overridable method. Should return [code]true[/code] if this playback is "
"active and playing its audio stream."
msgstr ""
"Переопределяемый метод. Должен возвращать [code]true[/code], если это "
"воспроизведение активно и воспроизводит свой аудиопоток."

msgid ""
"Override this method to customize how the audio stream is mixed. This method "
"is called even if the playback is not active.\n"
"[b]Note:[/b] It is not useful to override this method in GDScript or C#. Only "
"GDExtension can take advantage of it."
msgstr ""
"Переопределите этот метод, чтобы настроить способ микширования аудиопотока. "
"Этот метод вызывается, даже если воспроизведение не активно.\n"
"[b]Примечание:[/b] Не имеет смысла переопределять этот метод в GDScript или "
"C#. Только GDExtension может воспользоваться им."

msgid ""
"Override this method to customize what happens when seeking this audio stream "
"at the given [param position], such as by calling [method "
"AudioStreamPlayer.seek]."
msgstr ""
"Переопределите этот метод, чтобы настроить действия при поиске аудиопотока в "
"указанной [param position], например, вызвав [method AudioStreamPlayer.seek]."

msgid ""
"Set the current value of a playback parameter by name (see [method "
"AudioStream._get_parameter_list])."
msgstr ""
"Установить текущее значение параметра воспроизведения по имени (см. [method "
"AudioStream._get_parameter_list])."

msgid ""
"Override this method to customize what happens when the playback starts at "
"the given position, such as by calling [method AudioStreamPlayer.play]."
msgstr ""
"Переопределите этот метод, чтобы настроить то, что происходит при запуске "
"воспроизведения в заданной позиции, например, вызвав [method "
"AudioStreamPlayer.play]."

msgid ""
"Override this method to customize what happens when the playback is stopped, "
"such as by calling [method AudioStreamPlayer.stop]."
msgstr ""
"Переопределите этот метод, чтобы настроить действия, которые будут "
"происходить при остановке воспроизведения, например, вызвав [method "
"AudioStreamPlayer.stop]."

msgid ""
"Overridable method. Called whenever the audio stream is mixed if the playback "
"is active and [method AudioServer.set_enable_tagging_used_audio_streams] has "
"been set to [code]true[/code]. Editor plugins may use this method to \"tag\" "
"the current position along the audio stream and display it in a preview."
msgstr ""
"Переопределяемый метод. Вызывается всякий раз, когда аудиопоток микшируется, "
"если воспроизведение активно и [method "
"AudioServer.set_enable_tagging_used_audio_streams] установлен в [code]true[/"
"code]. Плагины редактора могут использовать этот метод для «тегирования» "
"текущей позиции вдоль аудиопотока и отображения ее в предварительном "
"просмотре."

msgid "Returns the number of times the stream has looped."
msgstr "Возвращает количество зацикливаний потока."

msgid "Returns the current position in the stream, in seconds."
msgstr "Возвращает текущую позицию в потоке в секундах."

msgid ""
"Returns the [AudioSamplePlayback] associated with this [AudioStreamPlayback] "
"for playing back the audio sample of this stream."
msgstr ""
"Возвращает [AudioSamplePlayback], связанный с этим [AudioStreamPlayback], для "
"воспроизведения аудиосэмпла этого потока."

msgid "Returns [code]true[/code] if the stream is playing."
msgstr "Возвращает [code]true[/code], если поток воспроизводится."

msgid ""
"Mixes up to [param frames] of audio from the stream from the current "
"position, at a rate of [param rate_scale], advancing the stream.\n"
"Returns a [PackedVector2Array] where each element holds the left and right "
"channel volume levels of each frame.\n"
"[b]Note:[/b] Can return fewer frames than requested, make sure to use the "
"size of the return value."
msgstr ""
"Смешивает до [param frames] аудио из потока из текущей позиции со скоростью "
"[param rate_scale], продвигая поток.\n"
"Возвращает [PackedVector2Array], где каждый элемент содержит уровни громкости "
"левого и правого каналов каждого кадра.\n"
"[b]Примечание:[/b] Может возвращать меньше кадров, чем запрошено, обязательно "
"используйте размер возвращаемого значения."

msgid "Seeks the stream at the given [param time], in seconds."
msgstr "Ищет поток в указанное [param time] в секундах."

msgid ""
"Associates [AudioSamplePlayback] to this [AudioStreamPlayback] for playing "
"back the audio sample of this stream."
msgstr ""
"Связывает [AudioSamplePlayback] с этим [AudioStreamPlayback] для "
"воспроизведения аудиосэмпла этого потока."

msgid "Starts the stream from the given [param from_pos], in seconds."
msgstr "Запускает поток с указанного [param from_pos] в секундах."

msgid "Stops the stream."
msgstr "Останавливает поток."

msgid "Playback component of [AudioStreamInteractive]."
msgstr "Компонент воспроизведения [AudioStreamInteractive]."

msgid ""
"Playback component of [AudioStreamInteractive]. Contains functions to change "
"the currently played clip."
msgstr ""
"Компонент воспроизведения [AudioStreamInteractive]. Содержит функции для "
"изменения текущего воспроизводимого клипа."

msgid ""
"Return the index of the currently playing clip. You can use this to get the "
"name of the currently playing clip with [method "
"AudioStreamInteractive.get_clip_name].\n"
"[b]Example:[/b] Get the currently playing clip name from inside an "
"[AudioStreamPlayer] node.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var playing_clip_name = "
"stream.get_clip_name(get_stream_playback().get_current_clip_index())\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Верните индекс текущего воспроизводимого клипа. Вы можете использовать это, "
"чтобы получить имя текущего воспроизводимого клипа с помощью [method "
"AudioStreamInteractive.get_clip_name].\n"
"[b]Пример:[/b] Получите имя текущего воспроизводимого клипа из узла "
"[AudioStreamPlayer].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var playing_clip_name = "
"stream.get_clip_name(get_stream_playback().get_current_clip_index())\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid "Switch to a clip (by index)."
msgstr "Переключиться на клип (по индексу)."

msgid "Switch to a clip (by name)."
msgstr "Переключиться на клип (по названию)."

msgid "Playback class used for [AudioStreamPlaylist]."
msgstr "Класс воспроизведения, используемый для [AudioStreamPlaylist]."

msgid "Playback instance for [AudioStreamPolyphonic]."
msgstr "Экземпляр воспроизведения для [AudioStreamPolyphonic]."

msgid ""
"Playback instance for [AudioStreamPolyphonic]. After setting the "
"[code]stream[/code] property of [AudioStreamPlayer], [AudioStreamPlayer2D], "
"or [AudioStreamPlayer3D], the playback instance can be obtained by calling "
"[method AudioStreamPlayer.get_stream_playback], [method "
"AudioStreamPlayer2D.get_stream_playback] or [method "
"AudioStreamPlayer3D.get_stream_playback] methods."
msgstr ""
"Экземпляр воспроизведения для [AudioStreamPolyphonic]. После установки "
"свойства [code]stream[/code] для [AudioStreamPlayer], [AudioStreamPlayer2D] "
"или [AudioStreamPlayer3D] экземпляр воспроизведения можно получить, вызвав "
"методы [method AudioStreamPlayer.get_stream_playback], [method "
"AudioStreamPlayer2D.get_stream_playback] или [method "
"AudioStreamPlayer3D.get_stream_playback]."

msgid ""
"Returns [code]true[/code] if the stream associated with the given integer ID "
"is still playing. Check [method play_stream] for information on when this ID "
"becomes invalid."
msgstr ""
"Возвращает [code]true[/code], если поток, связанный с данным целочисленным "
"идентификатором, все еще воспроизводится. Проверьте [method play_stream] для "
"получения информации о том, когда этот идентификатор становится "
"недействительным."

msgid ""
"Play an [AudioStream] at a given offset, volume, pitch scale, playback type, "
"and bus. Playback starts immediately.\n"
"The return value is a unique integer ID that is associated to this playback "
"stream and which can be used to control it.\n"
"This ID becomes invalid when the stream ends (if it does not loop), when the "
"[AudioStreamPlaybackPolyphonic] is stopped, or when [method stop_stream] is "
"called.\n"
"This function returns [constant INVALID_ID] if the amount of streams "
"currently playing equals [member AudioStreamPolyphonic.polyphony]. If you "
"need a higher amount of maximum polyphony, raise this value."
msgstr ""
"Воспроизвести [AudioStream] с заданным смещением, громкостью, высотой тона, "
"типом воспроизведения и шиной. Воспроизведение начинается немедленно.\n"
"Возвращаемое значение — уникальный целочисленный идентификатор, связанный с "
"этим потоком воспроизведения и который можно использовать для управления им.\n"
"Этот идентификатор становится недействительным, когда поток заканчивается "
"(если он не зацикливается), когда останавливается "
"[AudioStreamPlaybackPolyphonic] или когда вызывается [method stop_stream].\n"
"Эта функция возвращает [constant INVALID_ID], если количество потоков, "
"воспроизводимых в данный момент, равно [member "
"AudioStreamPolyphonic.polyphony]. Если вам требуется большее количество "
"максимальной полифонии, увеличьте это значение."

msgid ""
"Change the stream pitch scale. The [param stream] argument is an integer ID "
"returned by [method play_stream]."
msgstr ""
"Изменить масштаб тона потока. Аргумент [param stream] — это целочисленный "
"идентификатор, возвращаемый [method play_stream]."

msgid ""
"Change the stream volume (in db). The [param stream] argument is an integer "
"ID returned by [method play_stream]."
msgstr ""
"Изменить громкость потока (в БД). Аргумент [param stream] — это целочисленный "
"идентификатор, возвращаемый [method play_stream]."

msgid ""
"Stop a stream. The [param stream] argument is an integer ID returned by "
"[method play_stream], which becomes invalid after calling this function."
msgstr ""
"Остановить поток. Аргумент [param stream] — это целочисленный идентификатор, "
"возвращаемый [method play_stream], который становится недействительным после "
"вызова этой функции."

msgid ""
"Returned by [method play_stream] in case it could not allocate a stream for "
"playback."
msgstr ""
"Возвращается [method play_stream] в случае, если не удалось выделить поток "
"для воспроизведения."

msgid "A node for audio playback."
msgstr "Узел для воспроизведения звука."

msgid ""
"The [AudioStreamPlayer] node plays an audio stream non-positionally. It is "
"ideal for user interfaces, menus, or background music.\n"
"To use this node, [member stream] needs to be set to a valid [AudioStream] "
"resource. Playing more than one sound at the same time is also supported, see "
"[member max_polyphony].\n"
"If you need to play audio at a specific position, use [AudioStreamPlayer2D] "
"or [AudioStreamPlayer3D] instead."
msgstr ""
"Узел [AudioStreamPlayer] воспроизводит аудиопоток непозиционно. Он идеально "
"подходит для пользовательских интерфейсов, меню или фоновой музыки.\n"
"Чтобы использовать этот узел, [member stream] необходимо установить на "
"допустимый ресурс [AudioStream]. Также поддерживается воспроизведение более "
"одного звука одновременно, см. [member max_polyphony].\n"
"Если вам нужно воспроизвести звук в определенной позиции, используйте вместо "
"этого [AudioStreamPlayer2D] или [AudioStreamPlayer3D]."

msgid ""
"Returns the position in the [AudioStream] of the latest sound, in seconds. "
"Returns [code]0.0[/code] if no sounds are playing.\n"
"[b]Note:[/b] The position is not always accurate, as the [AudioServer] does "
"not mix audio every processed frame. To get more accurate results, add "
"[method AudioServer.get_time_since_last_mix] to the returned position.\n"
"[b]Note:[/b] This method always returns [code]0.0[/code] if the [member "
"stream] is an [AudioStreamInteractive], since it can have multiple clips "
"playing at once."
msgstr ""
"Возвращает позицию в [AudioStream] последнего звука в секундах. Возвращает "
"[code]0.0[/code], если звуки не воспроизводятся.\n"
"[b]Примечание:[/b] Позиция не всегда точна, так как [AudioServer] не "
"микширует звук в каждом обработанном кадре. Чтобы получить более точные "
"результаты, добавьте [method AudioServer.get_time_since_last_mix] к "
"возвращаемой позиции.\n"
"[b]Примечание:[/b] Этот метод всегда возвращает [code]0.0[/code], если "
"[member stream] является [AudioStreamInteractive], так как он может "
"воспроизводить несколько клипов одновременно."

msgid ""
"Returns the latest [AudioStreamPlayback] of this node, usually the most "
"recently created by [method play]. If no sounds are playing, this method "
"fails and returns an empty playback."
msgstr ""
"Возвращает последний [AudioStreamPlayback] этого узла, обычно последний "
"созданный [method play]. Если звуки не воспроизводятся, этот метод "
"завершается ошибкой и возвращает пустое воспроизведение."

msgid ""
"Returns [code]true[/code] if any sound is active, even if [member "
"stream_paused] is set to [code]true[/code]. See also [member playing] and "
"[method get_stream_playback]."
msgstr ""
"Возвращает [code]true[/code], если какой-либо звук активен, даже если [member "
"stream_paused] установлен в [code]true[/code]. См. также [member playing] и "
"[method get_stream_playback]."

msgid ""
"Plays a sound from the beginning, or the given [param from_position] in "
"seconds."
msgstr ""
"Воспроизводит звук с начала или с указанного [param from_position] в секундах."

msgid ""
"Restarts all sounds to be played from the given [param to_position], in "
"seconds. Does nothing if no sounds are playing."
msgstr ""
"Перезапускает все звуки, которые должны быть воспроизведены с указанного "
"[param to_position], в секундах. Ничего не делает, если звуки не "
"воспроизводятся."

msgid "Stops all sounds from this node."
msgstr "Останавливает все звуки из этого узла."

msgid ""
"If [code]true[/code], this node calls [method play] when entering the tree."
msgstr ""
"Если [code]true[/code], этот узел вызывает [method play] при входе в дерево."

msgid ""
"The target bus name. All sounds from this node will be playing on this bus.\n"
"[b]Note:[/b] At runtime, if no bus with the given name exists, all sounds "
"will fall back on [code]\"Master\"[/code]. See also [method "
"AudioServer.get_bus_name]."
msgstr ""
"Имя целевой шины. Все звуки из этого узла будут воспроизводиться на этой "
"шине.\n"
"[b]Примечание:[/b] Во время выполнения, если шины с указанным именем не "
"существует, все звуки будут возвращаться на [code]\"Master\"[/code]. См. "
"также [method AudioServer.get_bus_name]."

msgid ""
"The maximum number of sounds this node can play at the same time. Calling "
"[method play] after this value is reached will cut off the oldest sounds."
msgstr ""
"Максимальное количество звуков, которые этот узел может воспроизводить "
"одновременно. Вызов [method play] после достижения этого значения отсечет "
"самые старые звуки."

msgid ""
"The mix target channels. Has no effect when two speakers or less are detected "
"(see [enum AudioServer.SpeakerMode])."
msgstr ""
"Каналы микширования. Не оказывает никакого эффекта, если обнаружено два "
"динамика или меньше (см. [enum AudioServer.SpeakerMode])."

msgid ""
"The audio's pitch and tempo, as a multiplier of the [member stream]'s sample "
"rate. A value of [code]2.0[/code] doubles the audio's pitch, while a value of "
"[code]0.5[/code] halves the pitch."
msgstr ""
"Высота и темп аудио, как множитель частоты дискретизации [member stream]. "
"Значение [code]2.0[/code] удваивает высоту аудио, а значение [code]0.5[/code] "
"уменьшает высоту вдвое."

msgid ""
"The playback type of the stream player. If set other than to the default "
"value, it will force that playback type."
msgstr ""
"Тип воспроизведения потокового проигрывателя. Если установлено значение, "
"отличное от значения по умолчанию, будет принудительно выбран этот тип "
"воспроизведения."

msgid ""
"If [code]true[/code], this node is playing sounds. Setting this property has "
"the same effect as [method play] and [method stop]."
msgstr ""
"Если [code]true[/code], этот узел воспроизводит звуки. Установка этого "
"свойства имеет тот же эффект, что и [method play] и [method stop]."

msgid ""
"The [AudioStream] resource to be played. Setting this property stops all "
"currently playing sounds. If left empty, the [AudioStreamPlayer] does not "
"work."
msgstr ""
"Ресурс [AudioStream] для воспроизведения. Установка этого свойства "
"останавливает все воспроизводимые в данный момент звуки. Если оставить "
"пустым, [AudioStreamPlayer] не будет работать."

msgid ""
"If [code]true[/code], the sounds are paused. Setting [member stream_paused] "
"to [code]false[/code] resumes all sounds.\n"
"[b]Note:[/b] This property is automatically changed when exiting or entering "
"the tree, or this node is paused (see [member Node.process_mode])."
msgstr ""
"Если [code]true[/code], звуки приостанавливаются. Установка [member "
"stream_paused] в [code]false[/code] возобновляет все звуки.\n"
"[b]Примечание:[/b] Это свойство автоматически изменяется при выходе или входе "
"в дерево, или этот узел приостанавливается (см. [member Node.process_mode])."

msgid ""
"Volume of sound, in decibels. This is an offset of the [member stream]'s "
"volume.\n"
"[b]Note:[/b] To convert between decibel and linear energy (like most volume "
"sliders do), use [member volume_linear], or [method "
"@GlobalScope.db_to_linear] and [method @GlobalScope.linear_to_db]."
msgstr ""
"Громкость звука в децибелах. Это смещение громкости [member stream].\n"
"[b]Примечание:[/b] Для преобразования между децибелами и линейной энергией "
"(как это делают большинство ползунков громкости) используйте [member "
"volume_linear] или [method @GlobalScope.db_to_linear] и [method "
"@GlobalScope.linear_to_db]."

msgid ""
"Volume of sound, as a linear value.\n"
"[b]Note:[/b] This member modifies [member volume_db] for convenience. The "
"returned value is equivalent to the result of [method "
"@GlobalScope.db_to_linear] on [member volume_db]. Setting this member is "
"equivalent to setting [member volume_db] to the result of [method "
"@GlobalScope.linear_to_db] on a value."
msgstr ""
"Громкость звука, как линейное значение.\n"
"[b]Примечание:[/b] Этот член изменяет [member volume_db] для удобства. "
"Возвращаемое значение эквивалентно результату [method "
"@GlobalScope.db_to_linear] для [member volume_db]. Установка этого члена "
"эквивалентна установке [member volume_db] на результат [method "
"@GlobalScope.linear_to_db] для значения."

msgid ""
"Emitted when a sound finishes playing without interruptions. This signal is "
"[i]not[/i] emitted when calling [method stop], or when exiting the tree while "
"sounds are playing."
msgstr ""
"Выдается, когда звук заканчивается без прерываний. Этот сигнал [i]не[/i] "
"выдается при вызове [method stop] или при выходе из дерева во время "
"воспроизведения звуков."

msgid "The audio will be played only on the first channel. This is the default."
msgstr ""
"Звук будет воспроизводиться только на первом канале. Это значение по "
"умолчанию."

msgid "The audio will be played on all surround channels."
msgstr "Звук будет воспроизводиться на всех каналах объемного звучания."

msgid ""
"The audio will be played on the second channel, which is usually the center."
msgstr ""
"Звук будет воспроизводиться на втором канале, который обычно является "
"центральным."

msgid "Plays positional sound in 2D space."
msgstr "Воспроизводит позиционный звук в 2D-пространстве."

msgid ""
"Plays audio that is attenuated with distance to the listener.\n"
"By default, audio is heard from the screen center. This can be changed by "
"adding an [AudioListener2D] node to the scene and enabling it by calling "
"[method AudioListener2D.make_current] on it.\n"
"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
"[b]Note:[/b] Hiding an [AudioStreamPlayer2D] node does not disable its audio "
"output. To temporarily disable an [AudioStreamPlayer2D]'s audio output, set "
"[member volume_db] to a very low value like [code]-100[/code] (which isn't "
"audible to human hearing)."
msgstr ""
"Воспроизводит звук, который ослабевает с расстоянием до слушателя.\n"
"По умолчанию звук слышен из центра экрана. Это можно изменить, добавив узел "
"[AudioListener2D] к сцене и включив его, вызвав [method "
"AudioListener2D.make_current] для него.\n"
"См. также [AudioStreamPlayer], чтобы воспроизвести звук непозиционно.\n"
"[b]Примечание:[/b] Скрытие узла [AudioStreamPlayer2D] не отключает его "
"аудиовыход. Чтобы временно отключить аудиовыход [AudioStreamPlayer2D], "
"установите [member volume_db] на очень низкое значение, например [code]-100[/"
"code] (которое не слышно человеческому слуху)."

msgid "Returns the position in the [AudioStream]."
msgstr "Возвращает позицию в [AudioStream]."

msgid ""
"Returns the [AudioStreamPlayback] object associated with this "
"[AudioStreamPlayer2D]."
msgstr ""
"Возвращает объект [AudioStreamPlayback], связанный с этим "
"[AudioStreamPlayer2D]."

msgid ""
"Returns whether the [AudioStreamPlayer] can return the [AudioStreamPlayback] "
"object or not."
msgstr ""
"Возвращает, может ли [AudioStreamPlayer] вернуть объект [AudioStreamPlayback] "
"или нет."

msgid ""
"Queues the audio to play on the next physics frame, from the given position "
"[param from_position], in seconds."
msgstr ""
"Ставит звук в очередь для воспроизведения в следующем физическом кадре, "
"начиная с указанной позиции [param from_position] в секундах."

msgid "Sets the position from which audio will be played, in seconds."
msgstr ""
"Устанавливает позицию, с которой будет воспроизводиться звук, в секундах."

msgid "Stops the audio."
msgstr "Остановка звука."

msgid ""
"Determines which [Area2D] layers affect the sound for reverb and audio bus "
"effects. Areas can be used to redirect [AudioStream]s so that they play in a "
"certain audio bus. An example of how you might use this is making a \"water\" "
"area so that sounds played in the water are redirected through an audio bus "
"to make them sound like they are being played underwater."
msgstr ""
"Определяет, какие слои [Area2D] влияют на звук для эффектов реверберации и "
"аудиошины. Области можно использовать для перенаправления [AudioStream]s так, "
"чтобы они воспроизводились на определенной аудиошине. Примером того, как это "
"можно использовать, является создание области «воды», чтобы звуки, "
"воспроизводимые в воде, перенаправлялись через аудиошину, чтобы они звучали "
"так, как будто они воспроизводятся под водой."

msgid "The volume is attenuated over distance with this as an exponent."
msgstr ""
"Громкость звука уменьшается с расстоянием, причем показатель степени равен "
"этому показателю."

msgid "If [code]true[/code], audio plays when added to scene tree."
msgstr ""
"Если [code]true[/code], звук воспроизводится при добавлении в дерево сцен."

msgid ""
"Bus on which this audio is playing.\n"
"[b]Note:[/b] When setting this property, keep in mind that no validation is "
"performed to see if the given name matches an existing bus. This is because "
"audio bus layouts might be loaded after this property is set. If this given "
"name can't be resolved at runtime, it will fall back to [code]\"Master\"[/"
"code]."
msgstr ""
"Шина, на которой воспроизводится этот звук.\n"
"[b]Примечание:[/b] При установке этого свойства имейте в виду, что проверка "
"соответствия данного имени существующей шине не выполняется. Это связано с "
"тем, что макеты аудиошин могут быть загружены после установки этого свойства. "
"Если данное имя не может быть разрешено во время выполнения, оно вернется к "
"[code]\"Master\"[/code]."

msgid "Maximum distance from which audio is still hearable."
msgstr "Максимальное расстояние при котором можно услышать аудио."

msgid ""
"The maximum number of sounds this node can play at the same time. Playing "
"additional sounds after this value is reached will cut off the oldest sounds."
msgstr ""
"Максимальное количество звуков, которые этот узел может воспроизводить "
"одновременно. Воспроизведение дополнительных звуков после достижения этого "
"значения приведет к отключению самых старых звуков."

msgid ""
"Scales the panning strength for this node by multiplying the base [member "
"ProjectSettings.audio/general/2d_panning_strength] with this factor. Higher "
"values will pan audio from left to right more dramatically than lower values."
msgstr ""
"Масштабирует силу панорамирования для этого узла, умножая базу [member "
"ProjectSettings.audio/general/2d_panning_strength] на этот коэффициент. Более "
"высокие значения будут панорамировать аудио слева направо более драматично, "
"чем более низкие значения."

msgid ""
"The pitch and the tempo of the audio, as a multiplier of the audio sample's "
"sample rate."
msgstr ""
"Высота тона и темп звука как множитель частоты дискретизации аудиосэмпла."

msgid ""
"If [code]true[/code], audio is playing or is queued to be played (see [method "
"play])."
msgstr ""
"Если [code]true[/code], звук воспроизводится или поставлен в очередь на "
"воспроизведение (см. [method play])."

msgid "The [AudioStream] object to be played."
msgstr "Объект [AudioStream] для воспроизведения."

msgid ""
"If [code]true[/code], the playback is paused. You can resume it by setting "
"[member stream_paused] to [code]false[/code]."
msgstr ""
"Если [code]true[/code], воспроизведение приостанавливается. Вы можете "
"возобновить его, установив [member stream_paused] на [code]false[/code]."

msgid "Base volume before attenuation, in decibels."
msgstr "Базовая громкость до затухания, в децибелах."

msgid ""
"Base volume before attenuation, as a linear value.\n"
"[b]Note:[/b] This member modifies [member volume_db] for convenience. The "
"returned value is equivalent to the result of [method "
"@GlobalScope.db_to_linear] on [member volume_db]. Setting this member is "
"equivalent to setting [member volume_db] to the result of [method "
"@GlobalScope.linear_to_db] on a value."
msgstr ""
"Базовый объем до затухания, как линейное значение.\n"
"[b]Примечание:[/b] Этот член изменяет [member volume_db] для удобства. "
"Возвращаемое значение эквивалентно результату [method "
"@GlobalScope.db_to_linear] для [member volume_db]. Установка этого члена "
"эквивалентна установке [member volume_db] на результат [method "
"@GlobalScope.linear_to_db] для значения."

msgid "Emitted when the audio stops playing."
msgstr "Издается, когда прекращается воспроизведение звука."

msgid "Plays positional sound in 3D space."
msgstr "Воспроизводит позиционный звук в трехмерном пространстве."

msgid ""
"Plays audio with positional sound effects, based on the relative position of "
"the audio listener. Positional effects include distance attenuation, "
"directionality, and the Doppler effect. For greater realism, a low-pass "
"filter is applied to distant sounds. This can be disabled by setting [member "
"attenuation_filter_cutoff_hz] to [code]20500[/code].\n"
"By default, audio is heard from the camera position. This can be changed by "
"adding an [AudioListener3D] node to the scene and enabling it by calling "
"[method AudioListener3D.make_current] on it.\n"
"See also [AudioStreamPlayer] to play a sound non-positionally.\n"
"[b]Note:[/b] Hiding an [AudioStreamPlayer3D] node does not disable its audio "
"output. To temporarily disable an [AudioStreamPlayer3D]'s audio output, set "
"[member volume_db] to a very low value like [code]-100[/code] (which isn't "
"audible to human hearing)."
msgstr ""
"Воспроизводит аудио с позиционными звуковыми эффектами, основанными на "
"относительном положении слушателя аудио. Позиционные эффекты включают "
"затухание на расстоянии, направленность и эффект Доплера. Для большей "
"реалистичности к удаленным звукам применяется фильтр нижних частот. Это можно "
"отключить, установив [member attenuation_filter_cutoff_hz] на [code]20500[/"
"code].\n"
"По умолчанию звук слышен из положения камеры. Это можно изменить, добавив "
"узел [AudioListener3D] в сцену и включив его, вызвав [method "
"AudioListener3D.make_current] для него.\n"
"См. также [AudioStreamPlayer], чтобы воспроизвести звук непозиционно.\n"
"[b]Примечание:[/b] Скрытие узла [AudioStreamPlayer3D] не отключает его "
"аудиовыход. Чтобы временно отключить аудиовыход [AudioStreamPlayer3D], "
"установите для [member volume_db] очень низкое значение, например [code]-100[/"
"code] (которое не слышно человеческому уху)."

msgid ""
"Returns the [AudioStreamPlayback] object associated with this "
"[AudioStreamPlayer3D]."
msgstr ""
"Возвращает объект [AudioStreamPlayback], связанный с этим "
"[AudioStreamPlayer3D]."

msgid ""
"Determines which [Area3D] layers affect the sound for reverb and audio bus "
"effects. Areas can be used to redirect [AudioStream]s so that they play in a "
"certain audio bus. An example of how you might use this is making a \"water\" "
"area so that sounds played in the water are redirected through an audio bus "
"to make them sound like they are being played underwater."
msgstr ""
"Определяет, какие слои [Area3D] влияют на звук для эффектов реверберации и "
"аудиошины. Области можно использовать для перенаправления [AudioStream]s так, "
"чтобы они воспроизводились на определенной аудиошине. Примером того, как это "
"можно использовать, является создание области «воды», чтобы звуки, "
"воспроизводимые в воде, перенаправлялись через аудиошину, чтобы они звучали "
"так, как будто они воспроизводятся под водой."

msgid ""
"The cutoff frequency of the attenuation low-pass filter, in Hz. A sound above "
"this frequency is attenuated more than a sound below this frequency. To "
"disable this effect, set this to [code]20500[/code] as this frequency is "
"above the human hearing limit."
msgstr ""
"Частота среза фильтра нижних частот ослабления в Гц. Звук выше этой частоты "
"ослабляется сильнее, чем звук ниже этой частоты. Чтобы отключить этот эффект, "
"установите его на [code]20500[/code], так как эта частота выше предела "
"человеческого слуха."

msgid "Amount how much the filter affects the loudness, in decibels."
msgstr "Величина, в которой фильтр влияет на громкость, в децибелах."

msgid ""
"Decides if audio should get quieter with distance linearly, quadratically, "
"logarithmically, or not be affected by distance, effectively disabling "
"attenuation."
msgstr ""
"Решает, должен ли звук становиться тише с расстоянием линейно, квадратично, "
"логарифмически или не зависеть от расстояния, эффективно отключая затухание."

msgid ""
"If [code]true[/code], audio plays when the AudioStreamPlayer3D node is added "
"to scene tree."
msgstr ""
"Если [code]true[/code], звук воспроизводится при добавлении узла "
"AudioStreamPlayer3D в дерево сцены."

msgid ""
"The bus on which this audio is playing.\n"
"[b]Note:[/b] When setting this property, keep in mind that no validation is "
"performed to see if the given name matches an existing bus. This is because "
"audio bus layouts might be loaded after this property is set. If this given "
"name can't be resolved at runtime, it will fall back to [code]\"Master\"[/"
"code]."
msgstr ""
"Шина, на которой воспроизводится этот звук.\n"
"[b]Примечание:[/b] При установке этого свойства имейте в виду, что проверка "
"соответствия данного имени существующей шине не выполняется. Это связано с "
"тем, что макеты аудиошин могут быть загружены после установки этого свойства. "
"Если данное имя не может быть разрешено во время выполнения, оно вернется к "
"[code]\"Master\"[/code]."

msgid ""
"Decides in which step the Doppler effect should be calculated.\n"
"[b]Note:[/b] If [member doppler_tracking] is not [constant "
"DOPPLER_TRACKING_DISABLED] but the current [Camera3D]/[AudioListener3D] has "
"doppler tracking disabled, the Doppler effect will be heard but will not take "
"the movement of the current listener into account. If accurate Doppler effect "
"is desired, doppler tracking should be enabled on both the "
"[AudioStreamPlayer3D] and the current [Camera3D]/[AudioListener3D]."
msgstr ""
"Решает, на каком этапе следует рассчитывать эффект Доплера.\n"
"[b]Примечание:[/b] Если [member doppler_tracking] не является [constant "
"DOPPLER_TRACKING_DISABLED], но в текущем [Camera3D]/[AudioListener3D] "
"отключён доплеровский трекинг, эффект Доплера будет слышен, но не будет "
"учитывать движение текущего слушателя. Для получения точного доплеровского "
"трекинга доплеровский трекинг следует включить как в [AudioStreamPlayer3D], "
"так и в текущем [Camera3D]/[AudioListener3D]."

msgid "The angle in which the audio reaches a listener unattenuated."
msgstr "Угол, под которым звук достигает слушателя без ослабления."

msgid ""
"If [code]true[/code], the audio should be attenuated according to the "
"direction of the sound."
msgstr ""
"Если [code]true[/code], звук должен быть ослаблен в соответствии с "
"направлением звука."

msgid ""
"Attenuation factor used if listener is outside of [member "
"emission_angle_degrees] and [member emission_angle_enabled] is set, in "
"decibels."
msgstr ""
"Коэффициент затухания, используемый, если слушатель находится за пределами "
"[member emission_angle_degrees] и задан [member emission_angle_enabled], в "
"децибелах."

msgid "Sets the absolute maximum of the sound level, in decibels."
msgstr "Устанавливает абсолютный максимум уровня звука в децибелах."

msgid ""
"The distance past which the sound can no longer be heard at all. Only has an "
"effect if set to a value greater than [code]0.0[/code]. [member max_distance] "
"works in tandem with [member unit_size]. However, unlike [member unit_size] "
"whose behavior depends on the [member attenuation_model], [member "
"max_distance] always works in a linear fashion. This can be used to prevent "
"the [AudioStreamPlayer3D] from requiring audio mixing when the listener is "
"far away, which saves CPU resources."
msgstr ""
"Расстояние, за пределами которого звук больше не слышен. Действует только "
"если установлено значение больше [code]0.0[/code]. [member max_distance] "
"работает в паре с [member unit_size]. Однако, в отличие от [member "
"unit_size], поведение которого зависит от [member attenuation_model], [member "
"max_distance] всегда работает линейно. Это можно использовать для "
"предотвращения необходимости микширования звука [AudioStreamPlayer3D], когда "
"слушатель находится далеко, что экономит ресурсы ЦП."

msgid ""
"Scales the panning strength for this node by multiplying the base [member "
"ProjectSettings.audio/general/3d_panning_strength] by this factor. If the "
"product is [code]0.0[/code] then stereo panning is disabled and the volume is "
"the same for all channels. If the product is [code]1.0[/code] then one of the "
"channels will be muted when the sound is located exactly to the left (or "
"right) of the listener.\n"
"Two speaker stereo arrangements implement the [url=https://webaudio.github.io/"
"web-audio-api/#stereopanner-algorithm]WebAudio standard for StereoPannerNode "
"Panning[/url] where the volume is cosine of half the azimuth angle to the "
"ear.\n"
"For other speaker arrangements such as the 5.1 and 7.1 the SPCAP (Speaker-"
"Placement Correction Amplitude) algorithm is implemented."
msgstr ""
"Масштабирует силу панорамирования для этого узла, умножая базовый [member "
"ProjectSettings.audio/general/3d_panning_strength] на этот коэффициент. Если "
"произведение равно [code]0.0[/code], то стереопанорамирование отключено, а "
"громкость одинакова для всех каналов. Если произведение равно [code]1.0[/"
"code], то один из каналов будет отключен, когда звук расположен точно слева "
"(или справа) от слушателя.\n"
"Двухканальные стереосистемы реализуют [url=https://webaudio.github.io/web-"
"audio-api/#stereopanner-algorithm]стандарт WebAudio для панорамирования "
"StereoPannerNode[/url], где громкость равна косинусу половины угла азимута к "
"уху.\n"
"Для других схем расположения динамиков, таких как 5.1 и 7.1, реализован "
"алгоритм SPCAP (Speaker-Placement Correction Amplitude)."

msgid "The [AudioStream] resource to be played."
msgstr "Ресурс [AudioStream] для воспроизведения."

msgid ""
"The factor for the attenuation effect. Higher values make the sound audible "
"over a larger distance."
msgstr ""
"Фактор эффекта затухания. Более высокие значения делают звук слышимым на "
"большем расстоянии."

msgid "The base sound level before attenuation, in decibels."
msgstr "Базовый уровень звука до затухания, в децибелах."

msgid ""
"The base sound level before attenuation, as a linear value.\n"
"[b]Note:[/b] This member modifies [member volume_db] for convenience. The "
"returned value is equivalent to the result of [method "
"@GlobalScope.db_to_linear] on [member volume_db]. Setting this member is "
"equivalent to setting [member volume_db] to the result of [method "
"@GlobalScope.linear_to_db] on a value."
msgstr ""
"Базовый уровень звука до затухания, как линейное значение.\n"
"[b]Примечание:[/b] Этот член изменяет [member volume_db] для удобства. "
"Возвращаемое значение эквивалентно результату [method "
"@GlobalScope.db_to_linear] для [member volume_db]. Установка этого члена "
"эквивалентна установке [member volume_db] на результат [method "
"@GlobalScope.linear_to_db] для значения."

msgid "Attenuation of loudness according to linear distance."
msgstr "Ослабление громкости в зависимости от линейного расстояния."

msgid "Attenuation of loudness according to squared distance."
msgstr "Ослабление громкости пропорционально квадрату расстояния."

msgid "Attenuation of loudness according to logarithmic distance."
msgstr "Ослабление громкости в зависимости от логарифмического расстояния."

msgid ""
"No attenuation of loudness according to distance. The sound will still be "
"heard positionally, unlike an [AudioStreamPlayer]. [constant "
"ATTENUATION_DISABLED] can be combined with a [member max_distance] value "
"greater than [code]0.0[/code] to achieve linear attenuation clamped to a "
"sphere of a defined size."
msgstr ""
"Нет ослабления громкости в зависимости от расстояния. Звук все равно будет "
"слышен позиционно, в отличие от [AudioStreamPlayer]. [constant "
"ATTENUATION_DISABLED] можно объединить со значением [member max_distance], "
"большим, чем [code]0.0[/code], чтобы добиться линейного затухания, "
"привязанного к сфере определенного размера."

msgid "Disables doppler tracking."
msgstr "Откл. доплеровского слежения."

msgid ""
"Executes doppler tracking during process frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Выполняет доплеровское отслеживание во время кадров процесса (см. [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid ""
"Executes doppler tracking during physics frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."
msgstr ""
"Выполняет доплеровское отслеживание во время физических кадров (см. [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."

msgid ""
"[AudioStream] that includes sub-streams and plays them back like a playlist."
msgstr ""
"[AudioStream], который включает в себя подпотоки и воспроизводит их как "
"плейлист."

msgid ""
"Returns the BPM of the playlist, which can vary depending on the clip being "
"played."
msgstr ""
"Возвращает BPM плейлиста, который может меняться в зависимости от "
"воспроизводимого клипа."

msgid "Returns the stream at playback position index."
msgstr "Возвращает поток в позиции воспроизведения index."

msgid "Sets the stream at playback position index."
msgstr "Устанавливает поток в индексе позиции воспроизведения."

msgid ""
"Fade time used when a stream ends, when going to the next one. Streams are "
"expected to have an extra bit of audio after the end to help with fading."
msgstr ""
"Время затухания, используемое при завершении потока, при переходе к "
"следующему. Ожидается, что потоки будут иметь дополнительный бит аудио после "
"окончания, чтобы помочь с затуханием."

msgid ""
"If [code]true[/code], the playlist will loop, otherwise the playlist will end "
"when the last stream is finished."
msgstr ""
"Если [code]true[/code], плейлист будет зациклен, в противном случае плейлист "
"закончится по завершении последнего потока."

msgid ""
"If [code]true[/code], the playlist will shuffle each time playback starts and "
"each time it loops."
msgstr ""
"Если [code]true[/code], плейлист будет перемешиваться каждый раз при начале "
"воспроизведения и при каждом его зацикливании."

msgid "Amount of streams in the playlist."
msgstr "Количество потоков в плейлисте."

msgid "Maximum amount of streams supported in the playlist."
msgstr "Максимальное количество потоков, поддерживаемых в плейлисте."

msgid ""
"AudioStream that lets the user play custom streams at any time from code, "
"simultaneously using a single player."
msgstr ""
"AudioStream, который позволяет пользователю воспроизводить пользовательские "
"потоки в любое время из кода, одновременно используя один проигрыватель."

msgid ""
"AudioStream that lets the user play custom streams at any time from code, "
"simultaneously using a single player.\n"
"Playback control is done via the [AudioStreamPlaybackPolyphonic] instance set "
"inside the player, which can be obtained via [method "
"AudioStreamPlayer.get_stream_playback], [method "
"AudioStreamPlayer2D.get_stream_playback] or [method "
"AudioStreamPlayer3D.get_stream_playback] methods. Obtaining the playback "
"instance is only valid after the [code]stream[/code] property is set as an "
"[AudioStreamPolyphonic] in those players."
msgstr ""
"AudioStream, который позволяет пользователю воспроизводить пользовательские "
"потоки в любое время из кода, одновременно используя один проигрыватель.\n"
"Управление воспроизведением осуществляется через экземпляр "
"[AudioStreamPlaybackPolyphonic], установленный внутри проигрывателя, который "
"можно получить с помощью методов [method "
"AudioStreamPlayer.get_stream_playback], [method "
"AudioStreamPlayer2D.get_stream_playback] или [method "
"AudioStreamPlayer3D.get_stream_playback]. Получение экземпляра "
"воспроизведения допустимо только после того, как свойство [code]stream[/code] "
"установлено как [AudioStreamPolyphonic] в этих проигрывателях."

msgid "Maximum amount of simultaneous streams that can be played."
msgstr ""
"Максимальное количество одновременных потоков, которые можно воспроизводить."

msgid "Wraps a pool of audio streams with pitch and volume shifting."
msgstr "Объединяет пул аудиопотоков с изменением высоты тона и громкости."

msgid ""
"Picks a random AudioStream from the pool, depending on the playback mode, and "
"applies random pitch shifting and volume shifting during playback."
msgstr ""
"Выбирает случайный аудиопоток из пула в зависимости от режима воспроизведения "
"и применяет случайное смещение высоты тона и громкости во время "
"воспроизведения."

msgid ""
"Insert a stream at the specified index. If the index is less than zero, the "
"insertion occurs at the end of the underlying pool."
msgstr ""
"Вставить поток по указанному индексу. Если индекс меньше нуля, вставка "
"происходит в конец базового пула."

msgid "Returns the stream at the specified index."
msgstr "Возвращает поток по указанному индексу."

msgid ""
"Returns the probability weight associated with the stream at the given index."
msgstr "Возвращает вес вероятности, связанный с потоком по указанному индексу."

msgid "Move a stream from one index to another."
msgstr "Переместить поток из одного индекса в другой."

msgid "Remove the stream at the specified index."
msgstr "Удалить поток по указанному индексу."

msgid "Set the AudioStream at the specified index."
msgstr "Установите AudioStream по указанному индексу."

msgid ""
"Set the probability weight of the stream at the specified index. The higher "
"this value, the more likely that the randomizer will choose this stream "
"during random playback modes."
msgstr ""
"Установить вес вероятности потока по указанному индексу. Чем выше это "
"значение, тем больше вероятность, что рандомизатор выберет этот поток во "
"время случайных режимов воспроизведения."

msgid ""
"Controls how this AudioStreamRandomizer picks which AudioStream to play next."
msgstr ""
"Управляет тем, как AudioStream Randomizer выбирает, какой AudioStream "
"воспроизводить следующим."

msgid ""
"The intensity of random pitch variation. A value of 1 means no variation."
msgstr ""
"Интенсивность случайного изменения высоты тона. Значение 1 означает "
"отсутствие изменения."

msgid ""
"The intensity of random volume variation. A value of 0 means no variation."
msgstr ""
"Интенсивность случайного изменения объема. Значение 0 означает отсутствие "
"изменения."

msgid "The number of streams in the stream pool."
msgstr "Количество потоков в пуле потоков."

msgid ""
"Pick a stream at random according to the probability weights chosen for each "
"stream, but avoid playing the same stream twice in a row whenever possible. "
"If only 1 sound is present in the pool, the same sound will always play, "
"effectively allowing repeats to occur."
msgstr ""
"Выбирайте поток случайным образом в соответствии с весами вероятности, "
"выбранными для каждого потока, но избегайте воспроизведения одного и того же "
"потока дважды подряд, когда это возможно. Если в пуле присутствует только 1 "
"звук, всегда будет воспроизводиться один и тот же звук, что фактически "
"позволяет происходить повторам."

msgid ""
"Pick a stream at random according to the probability weights chosen for each "
"stream. If only 1 sound is present in the pool, the same sound will always "
"play."
msgstr ""
"Выберите поток случайным образом в соответствии с весами вероятности, "
"выбранными для каждого потока. Если в пуле присутствует только 1 звук, всегда "
"будет воспроизводиться один и тот же звук."

msgid ""
"Play streams in the order they appear in the stream pool. If only 1 sound is "
"present in the pool, the same sound will always play."
msgstr ""
"Воспроизведение потоков в том порядке, в котором они появляются в пуле "
"потоков. Если в пуле присутствует только 1 звук, всегда будет "
"воспроизводиться один и тот же звук."

msgid ""
"Stream that can be fitted with sub-streams, which will be played in-sync."
msgstr ""
"Поток, который может быть дополнен подпотоками, которые будут "
"воспроизводиться синхронно."

msgid ""
"This is a stream that can be fitted with sub-streams, which will be played in-"
"sync. The streams begin at exactly the same time when play is pressed, and "
"will end when the last of them ends. If one of the sub-streams loops, then "
"playback will continue."
msgstr ""
"Это поток, который может быть оснащен подпотоками, которые будут "
"воспроизводиться синхронно. Потоки начинаются в одно и то же время при "
"нажатии кнопки воспроизведения и заканчиваются, когда заканчивается последний "
"из них. Если один из подпотоков зацикливается, воспроизведение продолжается."

msgid "Get one of the synchronized streams, by index."
msgstr "Получить один из синхронизированных потоков по индексу."

msgid "Get the volume of one of the synchronized streams, by index."
msgstr "Получить громкость одного из синхронизированных потоков по индексу."

msgid "Set one of the synchronized streams, by index."
msgstr "Установите один из синхронизированных потоков по индексу."

msgid "Set the volume of one of the synchronized streams, by index."
msgstr "Установите громкость одного из синхронизированных потоков по индексу."

msgid "Set the total amount of streams that will be played back synchronized."
msgstr ""
"Установите общее количество потоков, которые будут воспроизводиться синхронно."

msgid "Maximum amount of streams that can be synchronized."
msgstr "Максимальное количество потоков, которые можно синхронизировать."

msgid "Stores audio data loaded from WAV files."
msgstr "Сохраняет аудиоданные, загруженные из WAV-файлов."

msgid ""
"AudioStreamWAV stores sound samples loaded from WAV files. To play the stored "
"sound, use an [AudioStreamPlayer] (for non-positional audio) or "
"[AudioStreamPlayer2D]/[AudioStreamPlayer3D] (for positional audio). The sound "
"can be looped.\n"
"This class can also be used to store dynamically-generated PCM audio data. "
"See also [AudioStreamGenerator] for procedural audio generation."
msgstr ""
"AudioStreamWAV хранит звуковые образцы, загруженные из файлов WAV. Для "
"воспроизведения сохраненного звука используйте [AudioStreamPlayer] (для "
"непозиционного звука) или [AudioStreamPlayer2D]/[AudioStreamPlayer3D] (для "
"позиционного звука). Звук может быть зациклен.\n"
"Этот класс также можно использовать для хранения динамически сгенерированных "
"аудиоданных PCM. См. также [AudioStreamGenerator] для процедурной генерации "
"звука."

msgid ""
"Creates a new [AudioStreamWAV] instance from the given buffer. The buffer "
"must contain WAV data.\n"
"The keys and values of [param options] match the properties of "
"[ResourceImporterWAV]. The usage of [param options] is identical to [method "
"AudioStreamWAV.load_from_file]."
msgstr ""
"Создает новый экземпляр [AudioStreamWAV] из указанного буфера. Буфер должен "
"содержать данные WAV.\n"
"Ключи и значения [param options] соответствуют свойствам "
"[ResourceImporterWAV]. Использование [param options] идентично [method "
"AudioStreamWAV.load_from_file]."

msgid ""
"Creates a new [AudioStreamWAV] instance from the given file path. The file "
"must be in WAV format.\n"
"The keys and values of [param options] match the properties of "
"[ResourceImporterWAV].\n"
"[b]Example:[/b] Load the first file dropped as a WAV and play it:\n"
"[codeblock]\n"
"@onready var audio_player = $AudioStreamPlayer\n"
"\n"
"func _ready():\n"
"\tget_window().files_dropped.connect(_on_files_dropped)\n"
"\n"
"func _on_files_dropped(files):\n"
"\tif files[0].get_extension() == \"wav\":\n"
"\t\taudio_player.stream = AudioStreamWAV.load_from_file(files[0], {\n"
"\t\t\t\t\"force/max_rate\": true,\n"
"\t\t\t\t\"force/max_rate_hz\": 11025\n"
"\t\t\t})\n"
"\t\taudio_player.play()\n"
"[/codeblock]"
msgstr ""
"Создает новый экземпляр [AudioStreamWAV] из указанного пути к файлу. Файл "
"должен быть в формате WAV.\n"
"Ключи и значения [param options] соответствуют свойствам "
"[ResourceImporterWAV].\n"
"[b]Пример:[/b] Загрузите первый перетащенный файл как WAV и воспроизведите "
"его:\n"
"[codeblock]\n"
"@onready var audio_player = $AudioStreamPlayer\n"
"\n"
"func _ready():\n"
"\tget_window().files_dropped.connect(_on_files_dropped)\n"
"\n"
"func _on_files_dropped(files):\n"
"\tif files[0].get_extension() == \"wav\":\n"
"\t\taudio_player.stream = AudioStreamWAV.load_from_file(files[0], {\n"
"\t\t\t\t\"force/max_rate\": true,\n"
"\t\t\t\t\"force/max_rate_hz\": 11025\n"
"\t\t\t})\n"
"\t\taudio_player.play()\n"
"[/codeblock]"

msgid ""
"Saves the AudioStreamWAV as a WAV file to [param path]. Samples with IMA "
"ADPCM or Quite OK Audio formats can't be saved.\n"
"[b]Note:[/b] A [code].wav[/code] extension is automatically appended to "
"[param path] if it is missing."
msgstr ""
"Сохраняет AudioStreamWAV как файл WAV в [param path]. Сэмплы с форматами IMA "
"ADPCM или Quite OK Audio не могут быть сохранены.\n"
"[b]Примечание:[/b] Расширение [code].wav[/code] автоматически добавляется к "
"[param path], если оно отсутствует."

msgid ""
"Contains the audio data in bytes.\n"
"[b]Note:[/b] If [member format] is set to [constant FORMAT_8_BITS], this "
"property expects signed 8-bit PCM data. To convert from unsigned 8-bit PCM, "
"subtract 128 from each byte.\n"
"[b]Note:[/b] If [member format] is set to [constant FORMAT_QOA], this "
"property expects data from a full QOA file."
msgstr ""
"Содержит аудиоданные в байтах.\n"
"[b]Примечание:[/b] Если [member format] установлен на [constant "
"FORMAT_8_BITS], это свойство ожидает данные PCM со знаком 8 бит. Для "
"преобразования из беззнаковых 8 бит PCM вычтите 128 из каждого байта.\n"
"[b]Примечание:[/b] Если [member format] установлен на [constant FORMAT_QOA], "
"это свойство ожидает данные из полного файла QOA."

msgid "Audio format."
msgstr "Аудиоформат."

msgid ""
"The loop start point (in number of samples, relative to the beginning of the "
"stream)."
msgstr ""
"Начальная точка цикла (в количестве сэмплов относительно начала потока)."

msgid ""
"The loop end point (in number of samples, relative to the beginning of the "
"stream)."
msgstr "Конечная точка цикла (в количестве сэмплов относительно начала потока)."

msgid "The loop mode."
msgstr "Режим цикла."

msgid ""
"The sample rate for mixing this audio. Higher values require more storage "
"space, but result in better quality.\n"
"In games, common sample rates in use are [code]11025[/code], [code]16000[/"
"code], [code]22050[/code], [code]32000[/code], [code]44100[/code], and "
"[code]48000[/code].\n"
"According to the [url=https://en.wikipedia.org/wiki/"
"Nyquist%E2%80%93Shannon_sampling_theorem]Nyquist-Shannon sampling theorem[/"
"url], there is no quality difference to human hearing when going past 40,000 "
"Hz (since most humans can only hear up to ~20,000 Hz, often less). If you are "
"using lower-pitched sounds such as voices, lower sample rates such as "
"[code]32000[/code] or [code]22050[/code] may be usable with no loss in "
"quality."
msgstr ""
"Частота дискретизации для микширования этого звука. Более высокие значения "
"требуют больше места для хранения, но приводят к лучшему качеству.\n"
"В играх обычно используются следующие частоты дискретизации: [code]11025[/"
"code], [code]16000[/code], [code]22050[/code], [code]32000[/code], "
"[code]44100[/code] и [code]48000[/code].\n"
"Согласно [url=https://en.wikipedia.org/wiki/"
"Nyquist%E2%80%93Shannon_sampling_theorem]теореме дискретизации Найквиста-"
"Шеннона[/url], для человеческого слуха нет никакой разницы в качестве при "
"выходе за пределы 40 000 Гц (поскольку большинство людей могут слышать только "
"до ~20 000 Гц, часто меньше). Если вы используете более низкие звуки, такие "
"как голоса, можно использовать более низкие частоты дискретизации, такие как "
"[code]32000[/code] или [code]22050[/code], без потери качества."

msgid "If [code]true[/code], audio is stereo."
msgstr "Если [code]true[/code], звук стерео."

msgid ""
"Contains user-defined tags if found in the WAV data.\n"
"Commonly used tags include [code]title[/code], [code]artist[/code], "
"[code]album[/code], [code]tracknumber[/code], and [code]date[/code] "
"([code]date[/code] does not have a standard date format).\n"
"[b]Note:[/b] No tag is [i]guaranteed[/i] to be present in every file, so make "
"sure to account for the keys not always existing.\n"
"[b]Note:[/b] Only WAV files using a [code]LIST[/code] chunk with an "
"identifier of [code]INFO[/code] to encode the tags are currently supported."
msgstr ""
"Содержит пользовательские теги, если они найдены в данных WAV.\n"
"Обычно используемые теги включают [code]title[/code], [code]artist[/code], "
"[code]album[/code], [code]tracknumber[/code] и [code]date[/code], "
"([code]date[/code] не имеет стандартного формата даты).\n"
"[b]Примечание:[/b] Не все теги [i]гарантированно[/i] присутствует в каждом "
"файле, поэтому обязательно учитывайте ключи, которые не всегда существуют.\n"
"[b]Примечание:[/b] В настоящее время поддерживаются только файлы WAV, "
"использующие фрагмент [code]LIST[/code] с идентификатором [code]INFO[/code] "
"для кодирования тегов."

msgid "8-bit PCM audio codec."
msgstr "8-битный аудиокодек PCM."

msgid "16-bit PCM audio codec."
msgstr "16-битный аудиокодек PCM."

msgid "Audio is lossily compressed as IMA ADPCM."
msgstr "Аудио сжимается с потерями по методу IMA ADPCM."

msgid ""
"Audio is lossily compressed as [url=https://qoaformat.org/]Quite OK Audio[/"
"url]."
msgstr ""
"Аудио сжато с потерями как [url=https://qoaformat.org/]Quite OK Audio[/url]."

msgid "Audio does not loop."
msgstr "Звук не зацикливается."

msgid ""
"Audio loops the data between [member loop_begin] and [member loop_end], "
"playing forward only."
msgstr ""
"Аудио зацикливает данные между [member loop_begin] и [member loop_end], "
"воспроизводя только вперед."

msgid ""
"Audio loops the data between [member loop_begin] and [member loop_end], "
"playing back and forth."
msgstr ""
"Аудио циклически воспроизводит данные между [member loop_begin] и [member "
"loop_end], воспроизводя их вперед и назад."

msgid ""
"Audio loops the data between [member loop_begin] and [member loop_end], "
"playing backward only."
msgstr ""
"Аудио зацикливает данные между [member loop_begin] и [member loop_end], "
"воспроизводя их только в обратном порядке."

msgid ""
"A node that copies a region of the screen to a buffer for access in shader "
"code."
msgstr ""
"Узел, который копирует область экрана в буфер для доступа в коде шейдера."

msgid ""
"Node for back-buffering the currently-displayed screen. The region defined in "
"the [BackBufferCopy] node is buffered with the content of the screen it "
"covers, or the entire screen according to the [member copy_mode]. It can be "
"accessed in shader scripts using the screen texture (i.e. a uniform sampler "
"with [code]hint_screen_texture[/code]).\n"
"[b]Note:[/b] Since this node inherits from [Node2D] (and not [Control]), "
"anchors and margins won't apply to child [Control]-derived nodes. This can be "
"problematic when resizing the window. To avoid this, add [Control]-derived "
"nodes as [i]siblings[/i] to the [BackBufferCopy] node instead of adding them "
"as children."
msgstr ""
"Узел для буферизации текущего отображаемого экрана. Регион, определенный в "
"узле [BackBufferCopy], буферизуется содержимым экрана, который он покрывает, "
"или всем экраном в соответствии с [member copy_mode]. К нему можно получить "
"доступ в скриптах шейдера с помощью текстуры экрана (т. е. однородного "
"сэмплера с [code]hint_screen_texture[/code]).\n"
"[b]Примечание:[/b] Поскольку этот узел наследуется от [Node2D] (а не от "
"[Control]), якоря и поля не будут применяться к дочерним узлам, производным "
"от [Control]. Это может быть проблематично при изменении размера окна. Чтобы "
"избежать этого, добавьте узлы, производные от [Control], как [i]родственные[/"
"i] узлы в узел [BackBufferCopy] вместо того, чтобы добавлять их как дочерние."

msgid "Screen-reading shaders"
msgstr "Шейдеры чтения экрана"

msgid "Buffer mode."
msgstr "Режим буфера."

msgid ""
"The area covered by the [BackBufferCopy]. Only used if [member copy_mode] is "
"[constant COPY_MODE_RECT]."
msgstr ""
"Область, охватываемая [BackBufferCopy]. Используется только если [member "
"copy_mode] равен [constant COPY_MODE_RECT]."

msgid ""
"Disables the buffering mode. This means the [BackBufferCopy] node will "
"directly use the portion of screen it covers."
msgstr ""
"Отключает режим буферизации. Это означает, что узел [BackBufferCopy] будет "
"напрямую использовать часть экрана, которую он покрывает."

msgid "[BackBufferCopy] buffers a rectangular region."
msgstr "[BackBufferCopy] буферизует прямоугольную область."

msgid "[BackBufferCopy] buffers the entire screen."
msgstr "[BackBufferCopy] буферизует весь экран."

msgid "Abstract base class for GUI buttons."
msgstr "Абстрактный базовый класс для кнопок графического интерфейса."

msgid ""
"[BaseButton] is an abstract base class for GUI buttons. It doesn't display "
"anything by itself."
msgstr ""
"[BaseButton] — абстрактный базовый класс для кнопок GUI. Сам по себе он "
"ничего не отображает."

msgid ""
"Called when the button is pressed. If you need to know the button's pressed "
"state (and [member toggle_mode] is active), use [method _toggled] instead."
msgstr ""
"Вызывается при нажатии кнопки. Если вам нужно узнать нажатое состояние кнопки "
"(и [member toggle_mode] активен), используйте вместо этого [method _toggled]."

msgid ""
"Called when the button is toggled (only if [member toggle_mode] is active)."
msgstr ""
"Вызывается при переключении кнопки (только если активен [member toggle_mode])."

msgid ""
"Returns the visual state used to draw the button. This is useful mainly when "
"implementing your own draw code by either overriding _draw() or connecting to "
"\"draw\" signal. The visual state of the button is defined by the [enum "
"DrawMode] enum."
msgstr ""
"Возвращает визуальное состояние, используемое для отрисовки кнопки. Это "
"полезно в основном при реализации собственного кода отрисовки путем "
"переопределения _draw() или подключения к сигналу \"draw\". Визуальное "
"состояние кнопки определяется перечислением [enum DrawMode]."

msgid ""
"Returns [code]true[/code] if the mouse has entered the button and has not "
"left it yet."
msgstr ""
"Возвращает [code]true[/code], если мышь вошла в кнопку и еще не покинула ее."

msgid ""
"Changes the [member button_pressed] state of the button, without emitting "
"[signal toggled]. Use when you just want to change the state of the button "
"without sending the pressed event (e.g. when initializing scene). Only works "
"if [member toggle_mode] is [code]true[/code].\n"
"[b]Note:[/b] This method doesn't unpress other buttons in [member "
"button_group]."
msgstr ""
"Изменяет состояние [member button_pressed] кнопки, не выдавая [signal "
"toggled]. Используйте, когда вы просто хотите изменить состояние кнопки, не "
"отправляя событие нажатия (например, при инициализации сцены). Работает "
"только если [member toggle_mode] равно [code]true[/code].\n"
"[b]Примечание:[/b] Этот метод не отжимает другие кнопки в [member "
"button_group]."

msgid "Determines when the button is considered clicked."
msgstr "Определяет, когда кнопка считается нажатой."

msgid ""
"The [ButtonGroup] associated with the button. Not to be confused with node "
"groups.\n"
"[b]Note:[/b] The button will be configured as a radio button if a "
"[ButtonGroup] is assigned to it."
msgstr ""
"[ButtonGroup], связанная с кнопкой. Не путать с группами узлов.\n"
"[b]Примечание:[/b] Кнопка будет настроена как радиокнопка, если ей назначена "
"[ButtonGroup]."

msgid ""
"Binary mask to choose which mouse buttons this button will respond to.\n"
"To allow both left-click and right-click, use [code]MOUSE_BUTTON_MASK_LEFT | "
"MOUSE_BUTTON_MASK_RIGHT[/code]."
msgstr ""
"Двоичная маска для выбора кнопок мыши, на которые будет реагировать эта "
"кнопка.\n"
"Чтобы разрешить как левый, так и правый щелчок, используйте "
"[code]MOUSE_BUTTON_MASK_LEFT | MOUSE_BUTTON_MASK_RIGHT[/code]."

msgid ""
"If [code]true[/code], the button's state is pressed. Means the button is "
"pressed down or toggled (if [member toggle_mode] is active). Only works if "
"[member toggle_mode] is [code]true[/code].\n"
"[b]Note:[/b] Changing the value of [member button_pressed] will result in "
"[signal toggled] to be emitted. If you want to change the pressed state "
"without emitting that signal, use [method set_pressed_no_signal]."
msgstr ""
"Если [code]true[/code], состояние кнопки нажато. Означает, что кнопка нажата "
"или переключена (если [member toggle_mode] активен). Работает только если "
"[member toggle_mode] равен [code]true[/code].\n"
"[b]Примечание:[/b] Изменение значения [member button_pressed] приведет к "
"отправке [signal toggled]. Если вы хотите изменить состояние нажатия без "
"отправки этого сигнала, используйте [method set_pressed_no_signal]."

msgid ""
"If [code]true[/code], the button is in disabled state and can't be clicked or "
"toggled.\n"
"[b]Note:[/b] If the button is disabled while held down, [signal button_up] "
"will be emitted."
msgstr ""
"Если [code]true[/code], кнопка находится в неактивном состоянии и не может "
"быть нажата или переключена.\n"
"[b]Примечание:[/b] Если кнопка неактивна при нажатии, будет подан сигнал "
"[signal button_up]."

msgid ""
"If [code]true[/code], the button stays pressed when moving the cursor outside "
"the button while pressing it.\n"
"[b]Note:[/b] This property only affects the button's visual appearance. "
"Signals will be emitted at the same moment regardless of this property's "
"value."
msgstr ""
"Если [code]true[/code], кнопка остается нажатой при перемещении курсора за "
"пределы кнопки во время нажатия на нее.\n"
"[b]Примечание:[/b] Это свойство влияет только на внешний вид кнопки. Сигналы "
"будут выдаваться в тот же момент, независимо от значения этого свойства."

msgid "[Shortcut] associated to the button."
msgstr "[Ярлык (Shortcut)], связанный с кнопкой."

msgid ""
"If [code]true[/code], the button will highlight for a short amount of time "
"when its shortcut is activated. If [code]false[/code] and [member "
"toggle_mode] is [code]false[/code], the shortcut will activate without any "
"visual feedback."
msgstr ""
"Если [code]true[/code], кнопка будет подсвечена на короткое время, когда ее "
"ярлык активирован. Если [code]false[/code] и [member toggle_mode] равен "
"[code]false[/code], ярлык активируется без какой-либо визуальной обратной "
"связи."

msgid ""
"If [code]true[/code], the button will add information about its shortcut in "
"the tooltip.\n"
"[b]Note:[/b] This property does nothing when the tooltip control is "
"customized using [method Control._make_custom_tooltip]."
msgstr ""
"Если [code]true[/code], кнопка добавит информацию о своем сочетании клавиш в "
"подсказку.\n"
"[b]Примечание:[/b] Это свойство ничего не делает, когда элемент управления "
"подсказкой настраивается с помощью [method Control._make_custom_tooltip]."

msgid ""
"If [code]true[/code], the button is in toggle mode. Makes the button flip "
"state between pressed and unpressed each time its area is clicked."
msgstr ""
"Если [code]true[/code], кнопка находится в режиме переключения. Заставляет "
"кнопку переключать состояние между нажатым и ненажатым каждый раз, когда "
"нажимается ее область."

msgid "Emitted when the button starts being held down."
msgstr "Издается при нажатии кнопки."

msgid "Emitted when the button stops being held down."
msgstr "Издается, когда кнопка перестает удерживаться."

msgid ""
"Emitted when the button is toggled or pressed. This is on [signal "
"button_down] if [member action_mode] is [constant ACTION_MODE_BUTTON_PRESS] "
"and on [signal button_up] otherwise.\n"
"If you need to know the button's pressed state (and [member toggle_mode] is "
"active), use [signal toggled] instead."
msgstr ""
"Выдается, когда кнопка переключается или нажимается. Это происходит при "
"[signal button_down], если [member action_mode] равно [constant "
"ACTION_MODE_BUTTON_PRESS], и при [signal button_up] в противном случае.\n"
"Если вам нужно узнать нажатое состояние кнопки (и [member toggle_mode] "
"активен), используйте вместо этого [signal toggled]."

msgid ""
"Emitted when the button was just toggled between pressed and normal states "
"(only if [member toggle_mode] is active). The new state is contained in the "
"[param toggled_on] argument."
msgstr ""
"Выдается, когда кнопка была просто переключена между нажатым и нормальным "
"состояниями (только если [member toggle_mode] активен). Новое состояние "
"содержится в аргументе [param toggled_on]."

msgid ""
"The normal state (i.e. not pressed, not hovered, not toggled and enabled) of "
"buttons."
msgstr ""
"Нормальное состояние кнопок (т. е. не нажато, не наведено, не переключено и "
"не включено)."

msgid "The state of buttons are pressed."
msgstr "Состояние кнопок нажато."

msgid "The state of buttons are hovered."
msgstr "Состояние кнопок наведено."

msgid "The state of buttons are disabled."
msgstr "Состояние кнопок — отключено."

msgid "The state of buttons are both hovered and pressed."
msgstr "Состояние кнопок — наведенное и нажатое."

msgid "Require just a press to consider the button clicked."
msgstr "Для того, чтобы кнопка считалась нажатой, достаточно одного нажатия."

msgid ""
"Require a press and a subsequent release before considering the button "
"clicked."
msgstr ""
"Требуйте нажатия и последующего отпускания кнопки, прежде чем считать нажатие "
"на нее выполненным."

msgid "Abstract base class for defining the 3D rendering properties of meshes."
msgstr "Абстрактный базовый класс для определения свойств 3D-рендеринга сеток."

msgid ""
"This class serves as a default material with a wide variety of rendering "
"features and properties without the need to write shader code. See the "
"tutorial below for details."
msgstr ""
"Этот класс служит материалом по умолчанию с широким спектром функций и "
"свойств рендеринга без необходимости писать код шейдера. Подробности смотрите "
"в руководстве ниже."

msgid "Standard Material 3D and ORM Material 3D"
msgstr "Стандартный материал 3D и материал ORM 3D"

msgid "Returns [code]true[/code], if the specified [enum Feature] is enabled."
msgstr "Возвращает [code]true[/code], если указанная [enum Feature] включена."

msgid "Returns [code]true[/code] if the specified flag is enabled."
msgstr "Возвращает [code]true[/code], если указанный флаг включен."

msgid ""
"Returns the [Texture2D] associated with the specified [enum TextureParam]."
msgstr "Возвращает [Texture2D], связанный с указанным [enum TextureParam]."

msgid ""
"If [code]true[/code], enables the specified [enum Feature]. Many features "
"that are available in [BaseMaterial3D]s need to be enabled before use. This "
"way the cost for using the feature is only incurred when specified. Features "
"can also be enabled by setting the corresponding member to [code]true[/code]."
msgstr ""
"Если [code]true[/code], включает указанный [enum Feature]. Многие функции, "
"доступные в [BaseMaterial3D], необходимо включить перед использованием. Таким "
"образом, стоимость использования функции взимается только при ее указании. "
"Функции также можно включить, установив соответствующий член в [code]true[/"
"code]."

msgid ""
"If [code]true[/code], enables the specified flag. Flags are optional behavior "
"that can be turned on and off. Only one flag can be enabled at a time with "
"this function, the flag enumerators cannot be bit-masked together to enable "
"or disable multiple flags at once. Flags can also be enabled by setting the "
"corresponding member to [code]true[/code]."
msgstr ""
"Если [code]true[/code], включает указанный флаг. Флаги — это необязательное "
"поведение, которое можно включать и выключать. С помощью этой функции можно "
"включить только один флаг за раз, перечислители флагов не могут быть "
"маскированы битами вместе для включения или отключения нескольких флагов "
"одновременно. Флаги также можно включить, установив соответствующий член в "
"[code]true[/code]."

msgid "Sets the texture for the slot specified by [param param]."
msgstr "Устанавливает текстуру для слота, указанного [param param]."

msgid ""
"The material's base color.\n"
"[b]Note:[/b] If [member detail_enabled] is [code]true[/code] and a [member "
"detail_albedo] texture is specified, [member albedo_color] will [i]not[/i] "
"modulate the detail texture. This can be used to color partial areas of a "
"material by not specifying an albedo texture and using a transparent [member "
"detail_albedo] texture instead."
msgstr ""
"Базовый цвет материала.\n"
"[b]Примечание:[/b] Если [member detail_enabled] имеет значение [code]true[/"
"code] и указана текстура [member detail_albedo], [member albedo_color] будет "
"[i]не[/i] модулировать текстуру детализации. Это можно использовать для "
"окрашивания частичных областей материала, не указывая текстуру альбедо и "
"используя вместо нее прозрачную текстуру [member detail_albedo]."

msgid ""
"Texture to multiply by [member albedo_color]. Used for basic texturing of "
"objects.\n"
"If the texture appears unexpectedly too dark or too bright, check [member "
"albedo_texture_force_srgb]."
msgstr ""
"Текстура для умножения на [member albedo_color]. Используется для базового "
"текстурирования объектов.\n"
"Если текстура неожиданно выглядит слишком темной или слишком яркой, проверьте "
"[member albedo_texture_force_srgb]."

msgid ""
"If [code]true[/code], forces a conversion of the [member albedo_texture] from "
"sRGB color space to linear color space. See also [member "
"vertex_color_is_srgb].\n"
"This should only be enabled when needed (typically when using a "
"[ViewportTexture] as [member albedo_texture]). If [member "
"albedo_texture_force_srgb] is [code]true[/code] when it shouldn't be, the "
"texture will appear to be too dark. If [member albedo_texture_force_srgb] is "
"[code]false[/code] when it shouldn't be, the texture will appear to be too "
"bright."
msgstr ""
"Если [code]true[/code], принудительно преобразует [member albedo_texture] из "
"цветового пространства sRGB в линейное цветовое пространство. См. также "
"[member vertex_color_is_srgb]. \n"
"Это следует включать только при необходимости (обычно при использовании "
"[ViewportTexture] в качестве [member albedo_texture]). Если [member "
"albedo_texture_force_srgb] равно [code]true[/code], когда это не должно быть, "
"текстура будет казаться слишком темной. Если [member "
"albedo_texture_force_srgb] равно [code]false[/code], когда это не должно "
"быть, текстура будет казаться слишком яркой."

msgid ""
"Enables multichannel signed distance field rendering shader. Use [member "
"msdf_pixel_range] and [member msdf_outline_size] to configure MSDF parameters."
msgstr ""
"Включает многоканальный шейдер рендеринга поля со знаком. Используйте [member "
"msdf_pixel_range] и [member msdf_outline_size] для настройки параметров MSDF."

msgid "Threshold at which antialiasing will be applied on the alpha channel."
msgstr "Порог, при котором к альфа-каналу будет применено сглаживание."

msgid "The type of alpha antialiasing to apply."
msgstr "Тип применяемого альфа-сглаживания."

msgid ""
"The hashing scale for Alpha Hash. Recommended values between [code]0[/code] "
"and [code]2[/code]."
msgstr ""
"Масштаб хеширования для Alpha Hash. Рекомендуемые значения между [code]0[/"
"code] и [code]2[/code]."

msgid ""
"Threshold at which the alpha scissor will discard values. Higher values will "
"result in more pixels being discarded. If the material becomes too opaque at "
"a distance, try increasing [member alpha_scissor_threshold]. If the material "
"disappears at a distance, try decreasing [member alpha_scissor_threshold]."
msgstr ""
"Порог, при котором альфа-ножницы будут отбрасывать значения. Более высокие "
"значения приведут к отбрасыванию большего количества пикселей. Если материал "
"становится слишком непрозрачным на расстоянии, попробуйте увеличить [member "
"alpha_scissor_threshold]. Если материал исчезает на расстоянии, попробуйте "
"уменьшить [member alpha_scissor_threshold]."

msgid ""
"The strength of the anisotropy effect. This is multiplied by [member "
"anisotropy_flowmap]'s alpha channel if a texture is defined there and the "
"texture contains an alpha channel."
msgstr ""
"Сила эффекта анизотропии. Она умножается на альфа-канал [member "
"anisotropy_flowmap], если там определена текстура и текстура содержит альфа-"
"канал."

msgid ""
"If [code]true[/code], anisotropy is enabled. Anisotropy changes the shape of "
"the specular blob and aligns it to tangent space. This is useful for brushed "
"aluminum and hair reflections.\n"
"[b]Note:[/b] Mesh tangents are needed for anisotropy to work. If the mesh "
"does not contain tangents, the anisotropy effect will appear broken.\n"
"[b]Note:[/b] Material anisotropy should not to be confused with anisotropic "
"texture filtering, which can be enabled by setting [member texture_filter] to "
"[constant TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC]."
msgstr ""
"Если [code]true[/code], анизотропия включена. Анизотропия изменяет форму "
"зеркального пятна и выравнивает его по касательному пространству. Это полезно "
"для матового алюминия и отражений волос.\n"
"[b]Примечание:[/b] Для работы анизотропии необходимы касательные сетки. Если "
"сетка не содержит касательных, эффект анизотропии будет выглядеть сломанным.\n"
"[b]Примечание:[/b] Анизотропию материала не следует путать с анизотропной "
"фильтрацией текстур, которую можно включить, установив [member "
"texture_filter] на [constant TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC]."

msgid ""
"Texture that offsets the tangent map for anisotropy calculations and "
"optionally controls the anisotropy effect (if an alpha channel is present). "
"The flowmap texture is expected to be a derivative map, with the red channel "
"representing distortion on the X axis and green channel representing "
"distortion on the Y axis. Values below 0.5 will result in negative "
"distortion, whereas values above 0.5 will result in positive distortion.\n"
"If present, the texture's alpha channel will be used to multiply the strength "
"of the [member anisotropy] effect. Fully opaque pixels will keep the "
"anisotropy effect's original strength while fully transparent pixels will "
"disable the anisotropy effect entirely. The flowmap texture's blue channel is "
"ignored."
msgstr ""
"Текстура, которая смещает карту касательных для расчетов анизотропии и "
"опционально управляет эффектом анизотропии (если присутствует альфа-канал). "
"Ожидается, что текстура flowmap будет производной картой, где красный канал "
"представляет искажение по оси X, а зеленый канал представляет искажение по "
"оси Y. Значения ниже 0,5 приведут к отрицательному искажению, тогда как "
"значения выше 0,5 приведут к положительному искажению.\n"
"Если присутствует, альфа-канал текстуры будет использоваться для умножения "
"силы эффекта [member anisotropy]. Полностью непрозрачные пиксели сохранят "
"исходную силу эффекта анизотропии, в то время как полностью прозрачные "
"пиксели полностью отключат эффект анизотропии. Синий канал текстуры flowmap "
"игнорируется."

msgid ""
"If [code]true[/code], ambient occlusion is enabled. Ambient occlusion darkens "
"areas based on the [member ao_texture]."
msgstr ""
"Если [code]true[/code], включено фоновое затенение. Фоновое затенение "
"затемняет области на основе [member ao_texture]."

msgid ""
"Amount that ambient occlusion affects lighting from lights. If [code]0[/"
"code], ambient occlusion only affects ambient light. If [code]1[/code], "
"ambient occlusion affects lights just as much as it affects ambient light. "
"This can be used to impact the strength of the ambient occlusion effect, but "
"typically looks unrealistic."
msgstr ""
"Степень влияния окклюзии окружающего света на освещение от источников света. "
"Если [code]0[/code], окклюзия окружающего света влияет только на окружающее "
"освещение. Если [code]1[/code], окклюзия окружающего света влияет на "
"освещение так же, как и на окружающее освещение. Это можно использовать для "
"воздействия на силу эффекта окклюзии окружающего света, но обычно выглядит "
"нереалистично."

msgid ""
"If [code]true[/code], use [code]UV2[/code] coordinates to look up from the "
"[member ao_texture]."
msgstr ""
"Если [code]true[/code], используйте координаты [code]UV2[/code] для поиска от "
"[member ao_texture]."

msgid ""
"Texture that defines the amount of ambient occlusion for a given point on the "
"object."
msgstr ""
"Текстура, определяющая степень окклюзии окружающего света для заданной точки "
"объекта."

msgid ""
"Specifies the channel of the [member ao_texture] in which the ambient "
"occlusion information is stored. This is useful when you store the "
"information for multiple effects in a single texture. For example if you "
"stored metallic in the red channel, roughness in the blue, and ambient "
"occlusion in the green you could reduce the number of textures you use."
msgstr ""
"Указывает канал [member ao_texture], в котором хранится информация об "
"окружающем преграждении. Это полезно, когда вы храните информацию для "
"нескольких эффектов в одной текстуре. Например, если вы сохранили металлик в "
"красном канале, шероховатость в синем и окружающее преграждение в зеленом, вы "
"можете сократить количество используемых текстур."

msgid ""
"The color used by the backlight effect. Represents the light passing through "
"an object."
msgstr ""
"Цвет, используемый эффектом подсветки. Представляет свет, проходящий через "
"объект."

msgid ""
"If [code]true[/code], the backlight effect is enabled. See also [member "
"subsurf_scatter_transmittance_enabled]."
msgstr ""
"Если [code]true[/code], эффект подсветки включен. См. также [member "
"subsurf_scatter_transmittance_enabled]."

msgid ""
"Texture used to control the backlight effect per-pixel. Added to [member "
"backlight]."
msgstr ""
"Текстура, используемая для управления эффектом подсветки по пикселям. "
"Добавлено в [member backlight]."

msgid ""
"If [code]true[/code], the bent normal map is enabled. This allows for more "
"accurate indirect lighting and specular occlusion."
msgstr ""
"Если [code]true[/code], то включается карта изогнутых нормалей. Это позволяет "
"добиться более точного непрямого освещения и зеркальной окклюзии."

msgid ""
"Texture that specifies the average direction of incoming ambient light at a "
"given pixel. The [member bent_normal_texture] only uses the red and green "
"channels; the blue and alpha channels are ignored. The normal read from "
"[member bent_normal_texture] is oriented around the surface normal provided "
"by the [Mesh].\n"
"[b]Note:[/b] A bent normal map is different from a regular normal map. When "
"baking a bent normal map make sure to use [b]a cosine distribution[/b] for "
"the bent normal map to work correctly.\n"
"[b]Note:[/b] The mesh must have both normals and tangents defined in its "
"vertex data. Otherwise, the shading produced by the bent normal map will not "
"look correct. If creating geometry with [SurfaceTool], you can use [method "
"SurfaceTool.generate_normals] and [method SurfaceTool.generate_tangents] to "
"automatically generate normals and tangents respectively.\n"
"[b]Note:[/b] Godot expects the bent normal map to use X+, Y+, and Z+ "
"coordinates. See [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a "
"comparison of normal map coordinates expected by popular engines."
msgstr ""
"Текстура, которая определяет среднее направление входящего окружающего света "
"в заданном пикселе. [member bent_normal_texture] использует только красный и "
"зеленый каналы; синий и альфа-каналы игнорируются. Нормаль, считанная из "
"[member bent_normal_texture], ориентирована вокруг нормали поверхности, "
"предоставленной [Mesh].\n"
"[b]Примечание:[/b] Изогнутая карта нормалей отличается от обычной карты "
"нормалей. При запекании изогнутой карты нормалей обязательно используйте "
"[b]косинусное распределение[/b], чтобы изогнутая карта нормалей работала "
"правильно.\n"
"[b]Примечание:[/b] Сетка должна иметь как нормали, так и касательные, "
"определенные в ее данных вершин. В противном случае затенение, создаваемое "
"изогнутой картой нормалей, будет выглядеть неправильно. При создании "
"геометрии с помощью [SurfaceTool], вы можете использовать [method "
"SurfaceTool.generate_normals] и [method SurfaceTool.generate_tangents] для "
"автоматической генерации нормалей и касательных соответственно. \n"
"[b]Примечание:[/b] Godot ожидает, что изогнутая карта нормалей будет "
"использовать координаты X+, Y+ и Z+. См. [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]эту страницу[/url] "
"для сравнения координат карты нормалей, ожидаемых популярными движками."

msgid ""
"If [code]true[/code], the shader will keep the scale set for the mesh. "
"Otherwise, the scale is lost when billboarding. Only applies when [member "
"billboard_mode] is not [constant BILLBOARD_DISABLED]."
msgstr ""
"Если [code]true[/code], шейдер сохранит масштаб, установленный для сетки. В "
"противном случае масштаб теряется при билбординге. Применяется только когда "
"[member billboard_mode] не является [constant BILLBOARD_DISABLED]."

msgid ""
"Controls how the object faces the camera.\n"
"[b]Note:[/b] Billboard mode is not suitable for VR because the left-right "
"vector of the camera is not horizontal when the screen is attached to your "
"head instead of on the table. See [url=https://github.com/godotengine/godot/"
"issues/41567]GitHub issue #41567[/url] for details."
msgstr ""
"Управляет тем, как объект смотрит на камеру.\n"
"[b]Примечание:[/b] Режим Billboard не подходит для VR, поскольку вектор "
"камеры влево-вправо не горизонтален, когда экран прикреплен к голове, а не к "
"столу. Подробности см. в [url=https://github.com/godotengine/godot/issues/"
"41567]GitHub issue #41567[/url]."

msgid ""
"The material's blend mode.\n"
"[b]Note:[/b] Values other than [code]Mix[/code] force the object into the "
"transparent pipeline."
msgstr ""
"Режим смешивания материала.\n"
"[b]Примечание:[/b] Значения, отличные от [code]Mix[/code], принудительно "
"помещают объект в прозрачный трубопровод (pipeline)."

msgid ""
"Sets the strength of the clearcoat effect. Setting to [code]0[/code] looks "
"the same as disabling the clearcoat effect."
msgstr ""
"Устанавливает силу эффекта прозрачного покрытия. Установка на [code]0[/code] "
"выглядит так же, как отключение эффекта прозрачного покрытия."

msgid ""
"If [code]true[/code], clearcoat rendering is enabled. Adds a secondary "
"transparent pass to the lighting calculation resulting in an added specular "
"blob. This makes materials appear as if they have a clear layer on them that "
"can be either glossy or rough.\n"
"[b]Note:[/b] Clearcoat rendering is not visible if the material's [member "
"shading_mode] is [constant SHADING_MODE_UNSHADED]."
msgstr ""
"Если [code]true[/code], включен рендеринг прозрачного покрытия. Добавляет "
"вторичный прозрачный проход к расчету освещения, что приводит к добавлению "
"зеркального пятна. Это заставляет материалы выглядеть так, как будто на них "
"есть прозрачный слой, который может быть как глянцевым, так и шероховатым.\n"
"[b]Примечание:[/b] Рендеринг прозрачного покрытия не виден, если [member "
"shading_mode] материала равен [constant SHADING_MODE_UNSHADED]."

msgid ""
"Sets the roughness of the clearcoat pass. A higher value results in a rougher "
"clearcoat while a lower value results in a smoother clearcoat."
msgstr ""
"Устанавливает шероховатость прохода лака. Более высокое значение приводит к "
"более грубому лаку, а более низкое значение — к более гладкому лаку."

msgid ""
"Texture that defines the strength of the clearcoat effect and the glossiness "
"of the clearcoat. Strength is specified in the red channel while glossiness "
"is specified in the green channel."
msgstr ""
"Текстура, которая определяет силу эффекта прозрачного лака и его "
"глянцевитость. Прочность указывается в красном канале, а глянцевитость — в "
"зеленом канале."

msgid ""
"Determines which side of the triangle to cull depending on whether the "
"triangle faces towards or away from the camera."
msgstr ""
"Определяет, какую сторону треугольника следует отбрасывать, в зависимости от "
"того, обращен ли треугольник к камере или от нее."

msgid ""
"Determines when depth rendering takes place. See also [member transparency]."
msgstr ""
"Определяет, когда происходит рендеринг глубины. См. также [member "
"transparency]."

msgid "May be affected by future rendering pipeline changes."
msgstr "Могут быть затронуты будущими изменениями в конвейере рендеринга."

msgid ""
"Determines which comparison operator is used when testing depth. See [enum "
"DepthTest].\n"
"[b]Note:[/b] Changing [member depth_test] to a non-default value only has a "
"visible effect when used on a transparent material, or a material that has "
"[member depth_draw_mode] set to [constant DEPTH_DRAW_DISABLED]."
msgstr ""
"Определяет, какой оператор сравнения используется при проверке глубины. См. "
"[enum DepthTest].\n"
"[b]Примечание:[/b] Изменение [member deep_test] на значение, отличное от "
"значения по умолчанию, имеет видимый эффект только при использовании с "
"прозрачным материалом или материалом, у которого [member deep_draw_mode] "
"установлено в [constant DEPTH_DRAW_DISABLED]."

msgid ""
"Texture that specifies the color of the detail overlay. [member "
"detail_albedo]'s alpha channel is used as a mask, even when the material is "
"opaque. To use a dedicated texture as a mask, see [member detail_mask].\n"
"[b]Note:[/b] [member detail_albedo] is [i]not[/i] modulated by [member "
"albedo_color]."
msgstr ""
"Текстура, которая определяет цвет наложения деталей. Альфа-канал [member "
"detail_albedo] используется как маска, даже если материал непрозрачен. Чтобы "
"использовать выделенную текстуру в качестве маски, см. [member detail_mask].\n"
"[b]Примечание:[/b] [member detail_albedo] [i]не[/i] модулируется [member "
"albedo_color]."

msgid ""
"Specifies how the [member detail_albedo] should blend with the current "
"[code]ALBEDO[/code]."
msgstr ""
"Указывает, как [member detail_albedo] должен сочетаться с текущим "
"[code]ALBEDO[/code]."

msgid ""
"If [code]true[/code], enables the detail overlay. Detail is a second texture "
"that gets mixed over the surface of the object based on [member detail_mask] "
"and [member detail_albedo]'s alpha channel. This can be used to add variation "
"to objects, or to blend between two different albedo/normal textures."
msgstr ""
"Если [code]true[/code], включается наложение деталей. Деталь — это вторая "
"текстура, которая смешивается с поверхностью объекта на основе [member "
"detail_mask] и альфа-канала [member detail_albedo]. Это можно использовать "
"для добавления вариаций к объектам или для смешивания двух разных текстур "
"альбедо/нормалей."

msgid ""
"Texture used to specify how the detail textures get blended with the base "
"textures. [member detail_mask] can be used together with [member "
"detail_albedo]'s alpha channel (if any)."
msgstr ""
"Текстура используется для указания того, как текстуры деталей смешиваются с "
"базовыми текстурами. [member detail_mask] можно использовать вместе с альфа-"
"каналом [member detail_albedo] (если есть)."

msgid ""
"Texture that specifies the per-pixel normal of the detail overlay. The "
"[member detail_normal] texture only uses the red and green channels; the blue "
"and alpha channels are ignored. The normal read from [member detail_normal] "
"is oriented around the surface normal provided by the [Mesh].\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. "
"See [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a "
"comparison of normal map coordinates expected by popular engines."
msgstr ""
"Текстура, которая определяет попиксельную нормаль наложения деталей. Текстура "
"[member detail_normal] использует только красный и зеленый каналы; синий и "
"альфа-каналы игнорируются. Нормаль, считанная из [member detail_normal], "
"ориентирована вокруг нормали поверхности, предоставленной [Mesh].\n"
"[b]Примечание:[/b] Godot ожидает, что карта нормалей будет использовать "
"координаты X+, Y+ и Z+. См. [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates] эту страницу [/url] "
"для сравнения координат карты нормалей, ожидаемых популярными движками."

msgid ""
"Specifies whether to use [code]UV[/code] or [code]UV2[/code] for the detail "
"layer."
msgstr ""
"Указывает, следует ли использовать [code]UV[/code] или [code]UV2[/code] для "
"слоя детализации."

msgid "The algorithm used for diffuse light scattering."
msgstr "Алгоритм, используемый для диффузного рассеяния света."

msgid "If [code]true[/code], the object receives no ambient light."
msgstr "Если [code]true[/code], объект не получает окружающего света."

msgid ""
"If [code]true[/code], the object will not be affected by fog (neither "
"volumetric nor depth fog). This is useful for unshaded or transparent "
"materials (e.g. particles), which without this setting will be affected even "
"if fully transparent."
msgstr ""
"Если [code]true[/code], объект не будет затронут туманом (ни объемным, ни "
"глубинным). Это полезно для незатененных или прозрачных материалов (например, "
"частиц), которые без этой настройки будут затронуты даже если полностью "
"прозрачны."

msgid ""
"If [code]true[/code], the object receives no shadow that would otherwise be "
"cast onto it."
msgstr ""
"Если [code]true[/code], объект не получает тени, которая в противном случае "
"отбрасывалась бы на него."

msgid ""
"If [code]true[/code], disables specular occlusion even if [member "
"ProjectSettings.rendering/reflections/specular_occlusion/enabled] is "
"[code]false[/code]."
msgstr ""
"Если [code]true[/code], отключает зеркальную окклюзию, даже если [member "
"ProjectSettings.rendering/reflections/specular_occlusion/enabled] имеет "
"значение [code]false[/code]."

msgid ""
"Distance at which the object appears fully opaque.\n"
"[b]Note:[/b] If [member distance_fade_max_distance] is less than [member "
"distance_fade_min_distance], the behavior will be reversed. The object will "
"start to fade away at [member distance_fade_max_distance] and will fully "
"disappear once it reaches [member distance_fade_min_distance]."
msgstr ""
"Расстояние, на котором объект кажется полностью непрозрачным.\n"
"[b]Примечание:[/b] Если [member distance_fade_max_distance] меньше, чем "
"[member distance_fade_min_distance], поведение будет обратным. Объект начнет "
"исчезать на [member distance_fade_max_distance] и полностью исчезнет, как "
"только достигнет [member distance_fade_min_distance]."

msgid ""
"Distance at which the object starts to become visible. If the object is less "
"than this distance away, it will be invisible.\n"
"[b]Note:[/b] If [member distance_fade_min_distance] is greater than [member "
"distance_fade_max_distance], the behavior will be reversed. The object will "
"start to fade away at [member distance_fade_max_distance] and will fully "
"disappear once it reaches [member distance_fade_min_distance]."
msgstr ""
"Расстояние, на котором объект начинает становиться видимым. Если объект "
"находится меньше этого расстояния, он будет невидимым.\n"
"[b]Примечание:[/b] Если [member distance_fade_min_distance] больше, чем "
"[member distance_fade_max_distance], поведение будет обратным. Объект начнет "
"исчезать на [member distance_fade_max_distance] и полностью исчезнет, как "
"только достигнет [member distance_fade_min_distance]."

msgid ""
"Specifies which type of fade to use. Can be any of the [enum "
"DistanceFadeMode]s."
msgstr ""
"Указывает, какой тип затухания использовать. Может быть любым из [enum "
"DistanceFadeMode]."

msgid "The emitted light's color. See [member emission_enabled]."
msgstr "Цвет излучаемого света. См. [member emission_enabled]."

msgid ""
"If [code]true[/code], the body emits light. Emitting light makes the object "
"appear brighter. The object can also cast light on other objects if a "
"[VoxelGI], SDFGI, or [LightmapGI] is used and this object is used in baked "
"lighting."
msgstr ""
"Если [code]true[/code], тело излучает свет. Излучение света делает объект "
"ярче. Объект также может излучать свет на другие объекты, если используется "
"[VoxelGI], SDFGI или [LightmapGI] и этот объект используется в запеченном "
"освещении."

msgid "Multiplier for emitted light. See [member emission_enabled]."
msgstr "Множитель для испускаемого света. См. [member emission_enabled]."

msgid ""
"Luminance of emitted light, measured in nits (candela per square meter). Only "
"available when [member ProjectSettings.rendering/lights_and_shadows/"
"use_physical_light_units] is enabled. The default is roughly equivalent to an "
"indoor lightbulb."
msgstr ""
"Яркость излучаемого света, измеряемая в нитах (nits) (кандела на квадратный "
"метр). Доступно только при включенном [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units]. Значение по умолчанию примерно "
"эквивалентно лампочке в помещении."

msgid "Use [code]UV2[/code] to read from the [member emission_texture]."
msgstr "Используйте [code]UV2[/code] для чтения из [member emission_texture]."

msgid ""
"Sets how [member emission] interacts with [member emission_texture]. Can "
"either add or multiply."
msgstr ""
"Устанавливает, как [member emission] взаимодействует с [member "
"emission_texture]. Может либо складывать, либо умножать."

msgid "Texture that specifies how much surface emits light at a given point."
msgstr ""
"Текстура, определяющая, какая часть поверхности излучает свет в данной точке."

msgid ""
"If [code]true[/code], the object is rendered at the same size regardless of "
"distance. The object's size on screen is the same as if the camera was "
"[code]1.0[/code] units away from the object's origin, regardless of the "
"actual distance from the camera. The [Camera3D]'s field of view (or [member "
"Camera3D.size] when in orthogonal/frustum mode) still affects the size the "
"object is drawn at."
msgstr ""
"Если [code]true[/code], объект отображается с тем же размером независимо от "
"расстояния. Размер объекта на экране такой же, как если бы камера находилась "
"на расстоянии [code]1.0[/code] единиц от начала координат объекта, независимо "
"от фактического расстояния от камеры. Поле зрения [Camera3D] (или [member "
"Camera3D.size] в ортогональном/усеченном режиме) по-прежнему влияет на размер "
"отрисовываемого объекта."

msgid ""
"Overrides the [Camera3D]'s field of view angle (in degrees).\n"
"[b]Note:[/b] This behaves as if the field of view is set on a [Camera3D] with "
"[member Camera3D.keep_aspect] set to [constant Camera3D.KEEP_HEIGHT]. "
"Additionally, it may not look correct on a non-perspective camera where the "
"field of view setting is ignored."
msgstr ""
"Переопределяет угол поля зрения [Camera3D] (в градусах).\n"
"[b]Примечание:[/b] Это ведет себя так, как будто поле зрения установлено на "
"[Camera3D] с [member Camera3D.keep_aspect], установленным на [constant "
"Camera3D.KEEP_HEIGHT]. Кроме того, это может выглядеть некорректно на "
"неперспективной камере, где настройка поля зрения игнорируется."

msgid ""
"If [code]true[/code], enables the vertex grow setting. This can be used to "
"create mesh-based outlines using a second material pass and its [member "
"cull_mode] set to [constant CULL_FRONT]. See also [member grow_amount].\n"
"[b]Note:[/b] Vertex growth cannot create new vertices, which means that "
"visible gaps may occur in sharp corners. This can be alleviated by designing "
"the mesh to use smooth normals exclusively using [url=http://"
"wiki.polycount.com/wiki/Face_weighted_normals]face weighted normals[/url] in "
"the 3D authoring software. In this case, grow will be able to join every "
"outline together, just like in the original mesh."
msgstr ""
"Если [code]true[/code], включает настройку роста вершин. Это можно "
"использовать для создания контуров на основе сетки с использованием второго "
"прохода материала и его [member cull_mode], установленного на [constant "
"CULL_FRONT]. См. также [member grow_amount].\n"
"[b]Примечание:[/b] Рост вершин не может создавать новые вершины, что "
"означает, что в острых углах могут возникать видимые зазоры. Это можно "
"устранить, спроектировав сетку для использования исключительно сглаженных "
"нормалей с использованием [url=http://wiki.polycount.com/wiki/"
"Face_weighted_normals]нормалей взвешенных граней[/url] в программном "
"обеспечении для 3D-дизайна. В этом случае рост сможет объединить все контуры "
"вместе, как в исходной сетке."

msgid ""
"Grows object vertices in the direction of their normals. Only effective if "
"[member grow] is [code]true[/code]."
msgstr ""
"Растет вершины объекта в направлении их нормалей. Эффективно только если "
"[member grow] равен [code]true[/code]."

msgid ""
"If [code]true[/code], uses parallax occlusion mapping to represent depth in "
"the material instead of simple offset mapping (see [member "
"heightmap_enabled]). This results in a more convincing depth effect, but is "
"much more expensive on the GPU. Only enable this on materials where it makes "
"a significant visual difference."
msgstr ""
"Если [code]true[/code], то для представления глубины в материале используется "
"отображение параллакса окклюзии вместо простого отображения смещения (см. "
"[member heightmap_enabled]). Это приводит к более убедительному эффекту "
"глубины, но намного более затратно для графического процессора. Включайте это "
"только для материалов, где это создает существенную визуальную разницу."

msgid ""
"If [code]true[/code], height mapping is enabled (also called \"parallax "
"mapping\" or \"depth mapping\"). See also [member normal_enabled]. Height "
"mapping is a demanding feature on the GPU, so it should only be used on "
"materials where it makes a significant visual difference.\n"
"[b]Note:[/b] Height mapping is not supported if triplanar mapping is used on "
"the same material. The value of [member heightmap_enabled] will be ignored if "
"[member uv1_triplanar] is enabled."
msgstr ""
"Если [code]true[/code], отображение высоты включено (также называется "
"«отображением параллакса» или «отображением глубины»). См. также [member "
"normal_enabled]. Отображение высоты — это требовательная функция графического "
"процессора, поэтому ее следует использовать только для материалов, где она "
"создает существенную визуальную разницу.\n"
"[b]Примечание:[/b] Отображение высоты не поддерживается, если для того же "
"материала используется трипланарное отображение. Значение [member "
"heightmap_enabled] будет игнорироваться, если включен [member uv1_triplanar]."

msgid ""
"If [code]true[/code], flips the mesh's binormal vectors when interpreting the "
"height map. If the heightmap effect looks strange when the camera moves (even "
"with a reasonable [member heightmap_scale]), try setting this to [code]true[/"
"code]."
msgstr ""
"Если [code]true[/code], переворачивает бинормальные векторы сетки при "
"интерпретации карты высот. Если эффект карты высот выглядит странно при "
"движении камеры (даже с разумным [member heightmap_scale]), попробуйте "
"установить это в [code]true[/code]."

msgid ""
"If [code]true[/code], flips the mesh's tangent vectors when interpreting the "
"height map. If the heightmap effect looks strange when the camera moves (even "
"with a reasonable [member heightmap_scale]), try setting this to [code]true[/"
"code]."
msgstr ""
"Если [code]true[/code], переворачивает касательные векторы сетки при "
"интерпретации карты высот. Если эффект карты высот выглядит странно при "
"движении камеры (даже с разумным [member heightmap_scale]), попробуйте "
"установить это в [code]true[/code]."

msgid ""
"If [code]true[/code], interprets the height map texture as a depth map, with "
"brighter values appearing to be \"lower\" in altitude compared to darker "
"values.\n"
"This can be enabled for compatibility with some materials authored for Godot "
"3.x. This is not necessary if the Invert import option was used to invert the "
"depth map in Godot 3.x, in which case [member heightmap_flip_texture] should "
"remain [code]false[/code]."
msgstr ""
"Если [code]true[/code], то текстура карты высот интерпретируется как карта "
"глубины, при этом более яркие значения кажутся «ниже» по высоте по сравнению "
"с более темными значениями. \n"
"Это можно включить для совместимости с некоторыми материалами, созданными для "
"Godot 3.x. Это не обязательно, если опция импорта Invert использовалась для "
"инвертирования карты глубины в Godot 3.x, в этом случае [member "
"heightmap_flip_texture] должен оставаться [code]false[/code]."

msgid ""
"The number of layers to use for parallax occlusion mapping when the camera is "
"up close to the material. Higher values result in a more convincing depth "
"effect, especially in materials that have steep height changes. Higher values "
"have a significant cost on the GPU, so it should only be increased on "
"materials where it makes a significant visual difference.\n"
"[b]Note:[/b] Only effective if [member heightmap_deep_parallax] is "
"[code]true[/code]."
msgstr ""
"Количество слоев, используемых для отображения параллаксной окклюзии, когда "
"камера находится близко к материалу. Более высокие значения приводят к более "
"убедительному эффекту глубины, особенно в материалах с резкими перепадами "
"высоты. Более высокие значения оказывают значительное влияние на графический "
"процессор, поэтому их следует увеличивать только для материалов, где они "
"создают значительную визуальную разницу.\n"
"[b]Примечание:[/b] Эффективно только если [member heightmap_deep_parallax] "
"равно [code]true[/code]."

msgid ""
"The number of layers to use for parallax occlusion mapping when the camera is "
"far away from the material. Higher values result in a more convincing depth "
"effect, especially in materials that have steep height changes. Higher values "
"have a significant cost on the GPU, so it should only be increased on "
"materials where it makes a significant visual difference.\n"
"[b]Note:[/b] Only effective if [member heightmap_deep_parallax] is "
"[code]true[/code]."
msgstr ""
"Количество слоев, используемых для отображения параллаксной окклюзии, когда "
"камера находится далеко от материала. Более высокие значения приводят к более "
"убедительному эффекту глубины, особенно в материалах с резкими перепадами "
"высоты. Более высокие значения оказывают значительное влияние на графический "
"процессор, поэтому их следует увеличивать только для материалов, где они "
"создают значительную визуальную разницу.\n"
"[b]Примечание:[/b] Эффективно только если [member heightmap_deep_parallax] "
"равно [code]true[/code]."

msgid ""
"The heightmap scale to use for the parallax effect (see [member "
"heightmap_enabled]). The default value is tuned so that the highest point "
"(value = 255) appears to be 5 cm higher than the lowest point (value = 0). "
"Higher values result in a deeper appearance, but may result in artifacts "
"appearing when looking at the material from oblique angles, especially when "
"the camera moves. Negative values can be used to invert the parallax effect, "
"but this is different from inverting the texture using [member "
"heightmap_flip_texture] as the material will also appear to be \"closer\" to "
"the camera. In most cases, [member heightmap_scale] should be kept to a "
"positive value.\n"
"[b]Note:[/b] If the height map effect looks strange regardless of this value, "
"try adjusting [member heightmap_flip_binormal] and [member "
"heightmap_flip_tangent]. See also [member heightmap_texture] for "
"recommendations on authoring heightmap textures, as the way the heightmap "
"texture is authored affects how [member heightmap_scale] behaves."
msgstr ""
"Масштаб карты высот для использования в эффекте параллакса (см. [member "
"heightmap_enabled]). Значение по умолчанию настроено таким образом, что самая "
"высокая точка (значение = 255) кажется на 5 см выше самой низкой точки "
"(значение = 0). Более высокие значения дают более глубокий вид, но могут "
"привести к появлению артефактов при взгляде на материал под косыми углами, "
"особенно при движении камеры. Отрицательные значения можно использовать для "
"инвертирования эффекта параллакса, но это отличается от инвертирования "
"текстуры с помощью [member heightmap_flip_texture], поскольку материал также "
"будет казаться «ближе» к камере. В большинстве случаев [member "
"heightmap_scale] следует сохранять положительным значением.\n"
"[b]Примечание:[/b] Если эффект карты высот выглядит странно независимо от "
"этого значения, попробуйте настроить [member heightmap_flip_binormal] и "
"[member heightmap_flip_tangent]. См. также [member heightmap_texture] для "
"рекомендаций по созданию текстур карты высот, поскольку способ создания "
"текстуры карты высот влияет на поведение [member heightmap_scale]."

msgid ""
"The texture to use as a height map. See also [member heightmap_enabled].\n"
"For best results, the texture should be normalized (with [member "
"heightmap_scale] reduced to compensate). In [url=https://gimp.org]GIMP[/url], "
"this can be done using [b]Colors > Auto > Equalize[/b]. If the texture only "
"uses a small part of its available range, the parallax effect may look "
"strange, especially when the camera moves.\n"
"[b]Note:[/b] To reduce memory usage and improve loading times, you may be "
"able to use a lower-resolution heightmap texture as most heightmaps are only "
"comprised of low-frequency data."
msgstr ""
"Текстура, используемая в качестве карты высот. См. также [member "
"heightmap_enabled].\n"
"Для достижения наилучших результатов текстуру следует нормализовать (с "
"уменьшением [member heightmap_scale] для компенсации). В [url=https://"
"gimp.org]GIMP[/url] это можно сделать с помощью [b]Цвета > Авто > Выровнять[/"
"b]. Если текстура использует только небольшую часть своего доступного "
"диапазона, эффект параллакса может выглядеть странно, особенно при движении "
"камеры.\n"
"[b]Примечание:[/b] Чтобы уменьшить использование памяти и улучшить время "
"загрузки, вы можете использовать текстуру карты высот с более низким "
"разрешением, поскольку большинство карт высот состоят только из "
"низкочастотных данных."

msgid ""
"A high value makes the material appear more like a metal. Non-metals use "
"their albedo as the diffuse color and add diffuse to the specular reflection. "
"With non-metals, the reflection appears on top of the albedo color. Metals "
"use their albedo as a multiplier to the specular reflection and set the "
"diffuse color to black resulting in a tinted reflection. Materials work "
"better when fully metal or fully non-metal, values between [code]0[/code] and "
"[code]1[/code] should only be used for blending between metal and non-metal "
"sections. To alter the amount of reflection use [member roughness]."
msgstr ""
"Высокое значение делает материал более похожим на металл. Неметаллы "
"используют свое альбедо в качестве диффузного цвета и добавляют диффузное к "
"зеркальному отражению. У неметаллов отражение появляется поверх цвета "
"альбедо. Металлы используют свое альбедо в качестве множителя для зеркального "
"отражения и устанавливают диффузный цвет на черный, что приводит к "
"тонированному отражению. Материалы работают лучше, когда полностью "
"металлические или полностью неметаллические, значения между [code]0[/code] и "
"[code]1[/code] следует использовать только для смешивания между "
"металлическими и неметаллическими секциями. Чтобы изменить величину "
"отражения, используйте [member roughness]."

msgid ""
"Adjusts the strength of specular reflections. Specular reflections are "
"composed of scene reflections and the specular lobe which is the bright spot "
"that is reflected from light sources. When set to [code]0.0[/code], no "
"specular reflections will be visible. This differs from the [constant "
"SPECULAR_DISABLED] [enum SpecularMode] as [constant SPECULAR_DISABLED] only "
"applies to the specular lobe from the light source.\n"
"[b]Note:[/b] Unlike [member metallic], this is not energy-conserving, so it "
"should be left at [code]0.5[/code] in most cases. See also [member roughness]."
msgstr ""
"Регулирует силу зеркальных отражений. Зеркальные отражения состоят из "
"отражений сцены и зеркального лепестка, который является ярким пятном, "
"отраженным от источников света. Если установлено значение [code]0.0[/code], "
"зеркальные отражения не будут видны. Это отличается от [constant "
"SPECULAR_DISABLED] [enum SpecularMode], поскольку [constant "
"SPECULAR_DISABLED] применяется только к зеркальному лепестку от источника "
"света.\n"
"[b]Примечание:[/b] В отличие от [member metallic], это не энергосберегающее, "
"поэтому в большинстве случаев его следует оставить на [code]0.5[/code]. См. "
"также [member roughness]."

msgid ""
"Texture used to specify metallic for an object. This is multiplied by [member "
"metallic]."
msgstr ""
"Текстура, используемая для указания металличности объекта. Она умножается на "
"[member metallic]."

msgid ""
"Specifies the channel of the [member metallic_texture] in which the metallic "
"information is stored. This is useful when you store the information for "
"multiple effects in a single texture. For example if you stored metallic in "
"the red channel, roughness in the blue, and ambient occlusion in the green "
"you could reduce the number of textures you use."
msgstr ""
"Указывает канал [member metallic_texture], в котором хранится информация о "
"металле. Это полезно, когда вы храните информацию для нескольких эффектов в "
"одной текстуре. Например, если вы сохранили металл в красном канале, "
"шероховатость в синем и окклюзию окружения в зеленом, вы можете сократить "
"количество используемых текстур."

msgid "The width of the shape outline."
msgstr "Ширина контура фигуры."

msgid ""
"The width of the range around the shape between the minimum and maximum "
"representable signed distance."
msgstr ""
"Ширина диапазона вокруг фигуры между минимальным и максимальным представимым "
"знакомым расстоянием."

msgid ""
"If [code]true[/code], depth testing is disabled and the object will be drawn "
"in render order."
msgstr ""
"Если [code]true[/code], проверка глубины отключена, и объект будет отрисован "
"в порядке рендеринга."

msgid ""
"If [code]true[/code], normal mapping is enabled. This has a slight "
"performance cost, especially on mobile GPUs."
msgstr ""
"Если [code]true[/code], нормальное отображение включено. Это немного снижает "
"производительность, особенно на мобильных GPU."

msgid "The strength of the normal map's effect."
msgstr "Сила эффекта карты нормалей."

msgid ""
"Texture used to specify the normal at a given pixel. The [member "
"normal_texture] only uses the red and green channels; the blue and alpha "
"channels are ignored. The normal read from [member normal_texture] is "
"oriented around the surface normal provided by the [Mesh].\n"
"[b]Note:[/b] The mesh must have both normals and tangents defined in its "
"vertex data. Otherwise, the normal map won't render correctly and will only "
"appear to darken the whole surface. If creating geometry with [SurfaceTool], "
"you can use [method SurfaceTool.generate_normals] and [method "
"SurfaceTool.generate_tangents] to automatically generate normals and tangents "
"respectively.\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. "
"See [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a "
"comparison of normal map coordinates expected by popular engines.\n"
"[b]Note:[/b] If [member detail_enabled] is [code]true[/code], the [member "
"detail_albedo] texture is drawn [i]below[/i] the [member normal_texture]. To "
"display a normal map [i]above[/i] the [member detail_albedo] texture, use "
"[member detail_normal] instead."
msgstr ""
"Текстура используется для указания нормали в заданном пикселе. [Member "
"normal_texture] использует только красный и зеленый каналы; синий и альфа-"
"каналы игнорируются. Нормаль, считанная из [member normal_texture], "
"ориентирована вокруг нормали поверхности, предоставленной [Mesh].\n"
"[b]Примечание:[/b] Сетка должна иметь как нормали, так и касательные, "
"определенные в ее данных вершин. В противном случае карта нормалей не будет "
"отображаться правильно и будет только затемнять всю поверхность. При создании "
"геометрии с помощью [SurfaceTool] можно использовать [method "
"SurfaceTool.generate_normals] и [method SurfaceTool.generate_tangents] для "
"автоматической генерации нормалей и касательных соответственно.\n"
"[b]Примечание:[/b] Godot ожидает, что карта нормалей будет использовать "
"координаты X+, Y+ и Z+. См. [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]эту страницу[/url] "
"для сравнения координат карты нормалей, ожидаемых популярными движками.\n"
"[b]Примечание:[/b] Если [member detail_enabled] равно [code]true[/code], "
"текстура [member detail_albedo] отрисовывается [i]ниже[/i] [member "
"normal_texture]. Чтобы отобразить карту нормалей [i]выше[/i] текстуры [member "
"detail_albedo], используйте вместо нее [member detail_normal]."

msgid ""
"The Occlusion/Roughness/Metallic texture to use. This is a more efficient "
"replacement of [member ao_texture], [member roughness_texture] and [member "
"metallic_texture] in [ORMMaterial3D]. Ambient occlusion is stored in the red "
"channel. Roughness map is stored in the green channel. Metallic map is stored "
"in the blue channel. The alpha channel is ignored."
msgstr ""
"Текстура Occlusion/Roughness/Metallic для использования. Это более "
"эффективная замена [member ao_texture], [member roughness_texture] и [member "
"metallic_texture] в [ORMMaterial3D]. Окружающая окклюзия хранится в красном "
"канале. Карта шероховатости хранится в зеленом канале. Карта Metallic "
"хранится в синем канале. Альфа-канал игнорируется."

msgid ""
"The number of horizontal frames in the particle sprite sheet. Only enabled "
"when using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
msgstr ""
"Количество горизонтальных кадров в листе спрайтов частиц. Включено только при "
"использовании [constant BILLBOARD_PARTICLES]. См. [member billboard_mode]."

msgid ""
"If [code]true[/code], particle animations are looped. Only enabled when using "
"[constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
msgstr ""
"Если [code]true[/code], анимация частиц зацикливается. Включено только при "
"использовании [constant BILLBOARD_PARTICLES]. См. [member billboard_mode]."

msgid ""
"The number of vertical frames in the particle sprite sheet. Only enabled when "
"using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]."
msgstr ""
"Количество вертикальных кадров в листе спрайтов частиц. Включено только при "
"использовании [constant BILLBOARD_PARTICLES]. См. [member billboard_mode]."

msgid "The point size in pixels. See [member use_point_size]."
msgstr "Размер точки в пикселях. См. [member use_point_size]."

msgid ""
"Distance over which the fade effect takes place. The larger the distance the "
"longer it takes for an object to fade."
msgstr ""
"Расстояние, на котором происходит эффект затухания. Чем больше расстояние, "
"тем больше времени требуется для затухания объекта."

msgid ""
"If [code]true[/code], the proximity fade effect is enabled. The proximity "
"fade effect fades out each pixel based on its distance to another object."
msgstr ""
"Если [code]true[/code], эффект затухания близости включен. Эффект затухания "
"близости затухает каждый пиксель в зависимости от его расстояния до другого "
"объекта."

msgid ""
"If [code]true[/code], the refraction effect is enabled. Distorts transparency "
"based on light from behind the object.\n"
"[b]Note:[/b] Refraction is implemented using the screen texture. Only opaque "
"materials will appear in the refraction, since transparent materials do not "
"appear in the screen texture."
msgstr ""
"Если [code]true[/code], эффект преломления включен. Искажает прозрачность на "
"основе света из-за объекта.\n"
"[b]Примечание:[/b] Преломление реализовано с использованием текстуры экрана. "
"В преломлении будут отображаться только непрозрачные материалы, поскольку "
"прозрачные материалы не отображаются в текстуре экрана."

msgid "The strength of the refraction effect."
msgstr "Сила эффекта преломления."

msgid ""
"Texture that controls the strength of the refraction per-pixel. Multiplied by "
"[member refraction_scale]."
msgstr ""
"Текстура, которая контролирует силу преломления на пиксель. Умножается на "
"[member Refraction_scale]."

msgid ""
"Specifies the channel of the [member refraction_texture] in which the "
"refraction information is stored. This is useful when you store the "
"information for multiple effects in a single texture. For example if you "
"stored refraction in the red channel, roughness in the blue, and ambient "
"occlusion in the green you could reduce the number of textures you use."
msgstr ""
"Указывает канал [member Refraction_texture], в котором хранится информация о "
"преломлении. Это полезно, когда вы храните информацию для нескольких эффектов "
"в одной текстуре. Например, если вы сохранили преломление в красном канале, "
"шероховатость в синем и окклюзию окружающего пространства в зеленом, вы "
"можете сократить количество используемых текстур."

msgid "Sets the strength of the rim lighting effect."
msgstr "Устанавливает интенсивность эффекта подсветки кромки."

msgid ""
"If [code]true[/code], rim effect is enabled. Rim lighting increases the "
"brightness at glancing angles on an object.\n"
"[b]Note:[/b] Rim lighting is not visible if the material's [member "
"shading_mode] is [constant SHADING_MODE_UNSHADED]."
msgstr ""
"Если [code]true[/code], эффект обода включен. Освещение обода увеличивает "
"яркость при скользящих углах на объекте.\n"
"[b]Примечание:[/b] Освещение обода не видно, если [member shading_mode] "
"материала — [constant SHADING_MODE_UNSHADED]."

msgid ""
"Texture used to set the strength of the rim lighting effect per-pixel. "
"Multiplied by [member rim]."
msgstr ""
"Текстура, используемая для установки силы эффекта освещения обода на пиксель. "
"Умножается на [member rim]."

msgid ""
"The amount of to blend light and albedo color when rendering rim effect. If "
"[code]0[/code] the light color is used, while [code]1[/code] means albedo "
"color is used. An intermediate value generally works best."
msgstr ""
"Количество для смешивания света и цвета альбедо при визуализации эффекта "
"обода. Если [code]0[/code], то используется цвет света, а [code]1[/code] "
"означает, что используется цвет альбедо. Промежуточное значение обычно "
"работает лучше всего."

msgid ""
"Surface reflection. A value of [code]0[/code] represents a perfect mirror "
"while a value of [code]1[/code] completely blurs the reflection. See also "
"[member metallic]."
msgstr ""
"Поверхностное отражение. Значение [code]0[/code] представляет идеальное "
"зеркало, а значение [code]1[/code] полностью размывает отражение. См. также "
"[member metallic]."

msgid ""
"Texture used to control the roughness per-pixel. Multiplied by [member "
"roughness]."
msgstr ""
"Текстура, используемая для управления шероховатостью на пиксель. Умножается "
"на [member roughness]."

msgid ""
"Specifies the channel of the [member roughness_texture] in which the "
"roughness information is stored. This is useful when you store the "
"information for multiple effects in a single texture. For example if you "
"stored metallic in the red channel, roughness in the blue, and ambient "
"occlusion in the green you could reduce the number of textures you use."
msgstr ""
"Указывает канал [member roughness_texture], в котором хранится информация о "
"шероховатости. Это полезно, когда вы храните информацию для нескольких "
"эффектов в одной текстуре. Например, если вы сохранили металлик в красном "
"канале, шероховатость в синем и окружающее затенение в зеленом, вы можете "
"сократить количество используемых текстур."

msgid ""
"Sets whether the shading takes place, per-pixel, per-vertex or unshaded. Per-"
"vertex lighting is faster, making it the best choice for mobile applications, "
"however it looks considerably worse than per-pixel. Unshaded rendering is the "
"fastest, but disables all interactions with lights."
msgstr ""
"Устанавливает, будет ли затенение попиксельным, повершинным или незатененным. "
"Освещение повершинным быстрее, что делает его лучшим выбором для мобильных "
"приложений, однако выглядит значительно хуже, чем попиксельное. Рендеринг без "
"затенения самый быстрый, но отключает все взаимодействия с источниками света."

msgid ""
"If [code]true[/code], enables the \"shadow to opacity\" render mode where "
"lighting modifies the alpha so shadowed areas are opaque and non-shadowed "
"areas are transparent. Useful for overlaying shadows onto a camera feed in AR."
msgstr ""
"Если [code]true[/code], включает режим рендеринга \"от тени к "
"непрозрачности\", где освещение изменяет альфу, так что затененные области "
"становятся непрозрачными, а незатененные области — прозрачными. Полезно для "
"наложения теней на поток камеры в AR."

msgid ""
"The method for rendering the specular blob.\n"
"[b]Note:[/b] [member specular_mode] only applies to the specular blob. It "
"does not affect specular reflections from the sky, screen-space reflections, "
"[VoxelGI], SDFGI or [ReflectionProbe]s. To disable reflections from these "
"sources as well, set [member metallic_specular] to [code]0.0[/code] instead."
msgstr ""
"Метод рендеринга зеркального пятна.\n"
"[b]Примечание:[/b] [member specular_mode] применяется только к зеркальному "
"пятну. Он не влияет на зеркальные отражения от неба, отражения в пространстве "
"экрана, [VoxelGI], SDFGI или [ReflectionProbe]. Чтобы отключить отражения и "
"от этих источников, установите [member metallic_specular] на [code]0.0[/code]."

msgid "The primary color of the stencil effect."
msgstr "Основной цвет трафаретного эффекта."

msgid ""
"The comparison operator to use for stencil masking operations. See [enum "
"StencilCompare]."
msgstr ""
"Оператор сравнения, используемый для операций маскирования трафарета. См. "
"[enum StencilCompare]."

msgid ""
"The flags dictating how the stencil operation behaves. See [enum "
"StencilFlags]."
msgstr ""
"Флаги, определяющие поведение трафаретной операции. См. [enum StencilFlags]."

msgid "The stencil effect mode. See [enum StencilMode]."
msgstr "Режим эффекта трафарета. См. [enum StencilMode]."

msgid "The outline thickness for [constant STENCIL_MODE_OUTLINE]."
msgstr "Толщина контура для [constant STENCIL_MODE_OUTLINE]."

msgid "The stencil reference value (0-255). Typically a power of 2."
msgstr ""
"Опорное значение трафарета (0–255). Обычно представляет собой степень числа 2."

msgid ""
"If [code]true[/code], subsurface scattering is enabled. Emulates light that "
"penetrates an object's surface, is scattered, and then emerges. Subsurface "
"scattering quality is controlled by [member ProjectSettings.rendering/"
"environment/subsurface_scattering/subsurface_scattering_quality]."
msgstr ""
"Если [code]true[/code], включено подповерхностное рассеивание. Эмулирует "
"свет, который проникает сквозь поверхность объекта, рассеивается и затем "
"выходит наружу. Качество подповерхностного рассеивания контролируется [member "
"ProjectSettings.rendering/environment/subsurface_scattering/"
"subsurface_scattering_quality]."

msgid ""
"If [code]true[/code], subsurface scattering will use a special mode optimized "
"for the color and density of human skin, such as boosting the intensity of "
"the red channel in subsurface scattering."
msgstr ""
"Если [code]true[/code], подповерхностное рассеяние будет использовать "
"специальный режим, оптимизированный для цвета и плотности человеческой кожи, "
"например, усиление интенсивности красного канала при подповерхностном "
"рассеянии."

msgid ""
"The strength of the subsurface scattering effect. The depth of the effect is "
"also controlled by [member ProjectSettings.rendering/environment/"
"subsurface_scattering/subsurface_scattering_scale], which is set globally."
msgstr ""
"Сила эффекта подповерхностного рассеивания. Глубина эффекта также "
"контролируется [member ProjectSettings.rendering/environment/"
"subsurface_scattering/subsurface_scattering_scale], который задается "
"глобально."

msgid ""
"Texture used to control the subsurface scattering strength. Stored in the red "
"texture channel. Multiplied by [member subsurf_scatter_strength]."
msgstr ""
"Текстура, используемая для управления силой подповерхностного рассеивания. "
"Хранится в красном канале текстуры. Умножается на [member "
"subsurf_scatter_strength]."

msgid "The intensity of the subsurface scattering transmittance effect."
msgstr "Интенсивность эффекта пропускания подповерхностного рассеяния."

msgid ""
"The color to multiply the subsurface scattering transmittance effect with. "
"Ignored if [member subsurf_scatter_skin_mode] is [code]true[/code]."
msgstr ""
"Цвет, на который умножается эффект пропускания подповерхностного рассеивания. "
"Игнорируется, если [member subsurf_scatter_skin_mode] равен [code]true[/code]."

msgid "The depth of the subsurface scattering transmittance effect."
msgstr "Глубина эффекта пропускания подповерхностного рассеяния."

msgid ""
"If [code]true[/code], enables subsurface scattering transmittance. Only "
"effective if [member subsurf_scatter_enabled] is [code]true[/code]. See also "
"[member backlight_enabled]."
msgstr ""
"Если [code]true[/code], включает пропускание подповерхностного рассеяния. "
"Действует только если [member subsurf_scatter_enabled] равно [code]true[/"
"code]. См. также [member backlight_enabled]."

msgid ""
"The texture to use for multiplying the intensity of the subsurface scattering "
"transmittance intensity. See also [member subsurf_scatter_texture]. Ignored "
"if [member subsurf_scatter_skin_mode] is [code]true[/code]."
msgstr ""
"Текстура, используемая для умножения интенсивности пропускания "
"подповерхностного рассеивания. См. также [member subsurf_scatter_texture]. "
"Игнорируется, если [member subsurf_scatter_skin_mode] равен [code]true[/code]."

msgid ""
"Filter flags for the texture.\n"
"[b]Note:[/b] [member heightmap_texture] is always sampled with linear "
"filtering, even if nearest-neighbor filtering is selected here. This is to "
"ensure the heightmap effect looks as intended. If you need sharper height "
"transitions between pixels, resize the heightmap texture in an image editor "
"with nearest-neighbor filtering."
msgstr ""
"Флаги фильтра для текстуры.\n"
"[b]Примечание:[/b] [member heightmap_texture] всегда сэмплируется с линейной "
"фильтрацией, даже если здесь выбрана фильтрация по ближайшему соседу. Это "
"необходимо для того, чтобы эффект карты высот выглядел так, как задумано. "
"Если вам нужны более резкие переходы высоты между пикселями, измените размер "
"текстуры карты высот в редакторе изображений с фильтрацией по ближайшему "
"соседу."

msgid ""
"If [code]true[/code], the texture repeats when exceeding the texture's size. "
"See [constant FLAG_USE_TEXTURE_REPEAT]."
msgstr ""
"Если [code]true[/code], текстура повторяется при превышении размера текстуры. "
"См. [constant FLAG_USE_TEXTURE_REPEAT]."

msgid ""
"The material's transparency mode. Some transparency modes will disable shadow "
"casting. Any transparency mode other than [constant TRANSPARENCY_DISABLED] "
"has a greater performance impact compared to opaque rendering. See also "
"[member blend_mode]."
msgstr ""
"Режим прозрачности материала. Некоторые режимы прозрачности отключают "
"отбрасывание теней. Любой режим прозрачности, кроме [constant "
"TRANSPARENCY_DISABLED], оказывает большее влияние на производительность по "
"сравнению с непрозрачным рендерингом. См. также [member blend_mode]."

msgid ""
"If [code]true[/code] use [member fov_override] to override the [Camera3D]'s "
"field of view angle."
msgstr ""
"Если [code]true[/code], используйте [member fov_override], чтобы "
"переопределить угол поля зрения [Camera3D]."

msgid ""
"If [code]true[/code], enables parts of the shader required for "
"[GPUParticles3D] trails to function. This also requires using a mesh with "
"appropriate skinning, such as [RibbonTrailMesh] or [TubeTrailMesh]. Enabling "
"this feature outside of materials used in [GPUParticles3D] meshes will break "
"material rendering."
msgstr ""
"Если [code]true[/code], то включается часть шейдера, необходимая для работы "
"следов [GPUParticles3D]. Это также требует использования сетки с "
"соответствующим скиннингом (skinning), например [RibbonTrailMesh] или "
"[TubeTrailMesh]. Включение этой функции вне материалов, используемых в сетках "
"[GPUParticles3D], нарушит рендеринг материалов."

msgid ""
"If [code]true[/code], render point size can be changed.\n"
"[b]Note:[/b] This is only effective for objects whose geometry is point-based "
"rather than triangle-based. See also [member point_size]."
msgstr ""
"Если [code]true[/code], размер точки рендеринга можно изменить.\n"
"[b]Примечание:[/b] Это эффективно только для объектов, геометрия которых "
"основана на точках, а не на треугольниках. См. также [member point_size]."

msgid ""
"If [code]true[/code] use [member z_clip_scale] to scale the object being "
"rendered towards the camera to avoid clipping into things like walls."
msgstr ""
"Если [code]true[/code], используйте [member z_clip_scale] для масштабирования "
"объекта, отображаемого в направлении камеры, чтобы избежать застревания в "
"таких объектах, как стены."

msgid ""
"How much to offset the [code]UV[/code] coordinates. This amount will be added "
"to [code]UV[/code] in the vertex function. This can be used to offset a "
"texture. The Z component is used when [member uv1_triplanar] is enabled, but "
"it is not used anywhere else."
msgstr ""
"Насколько смещать координаты [code]UV[/code]. Эта величина будет добавлена к "
"[code]UV[/code] в функции вершины. Это можно использовать для смещения "
"текстуры. Компонент Z используется, когда включен [member uv1_triplanar], но "
"больше нигде не используется."

msgid ""
"How much to scale the [code]UV[/code] coordinates. This is multiplied by "
"[code]UV[/code] in the vertex function. The Z component is used when [member "
"uv1_triplanar] is enabled, but it is not used anywhere else."
msgstr ""
"Насколько масштабировать координаты [code]UV[/code]. Это умножается на "
"[code]UV[/code] в функции вершины. Компонент Z используется, когда включен "
"[member uv1_triplanar], но больше нигде не используется."

msgid ""
"If [code]true[/code], instead of using [code]UV[/code] textures will use a "
"triplanar texture lookup to determine how to apply textures. Triplanar uses "
"the orientation of the object's surface to blend between texture coordinates. "
"It reads from the source texture 3 times, once for each axis and then blends "
"between the results based on how closely the pixel aligns with each axis. "
"This is often used for natural features to get a realistic blend of "
"materials. Because triplanar texturing requires many more texture reads per-"
"pixel it is much slower than normal UV texturing. Additionally, because it is "
"blending the texture between the three axes, it is unsuitable when you are "
"trying to achieve crisp texturing."
msgstr ""
"Если [code]true[/code], вместо использования текстур [code]UV[/code] будет "
"использоваться поиск трипланарной текстуры для определения способа применения "
"текстур. Трипланарность использует ориентацию поверхности объекта для "
"смешивания между координатами текстуры. Он считывает исходную текстуру 3 "
"раза, по одному разу для каждой оси, а затем смешивает результаты на основе "
"того, насколько близко пиксель совпадает с каждой осью. Это часто "
"используется для естественных особенностей, чтобы получить реалистичное "
"смешивание материалов. Поскольку трипланарное текстурирование требует гораздо "
"большего количества считываний текстуры на пиксель, оно намного медленнее "
"обычного UV-текстурирования. Кроме того, поскольку оно смешивает текстуру "
"между тремя осями, оно не подходит, когда вы пытаетесь добиться четкого "
"текстурирования."

msgid ""
"A lower number blends the texture more softly while a higher number blends "
"the texture more sharply.\n"
"[b]Note:[/b] [member uv1_triplanar_sharpness] is clamped between [code]0.0[/"
"code] and [code]150.0[/code] (inclusive) as values outside that range can "
"look broken depending on the mesh."
msgstr ""
"Меньшее число смешивает текстуру более мягко, а большее число смешивает "
"текстуру более резко.\n"
"[b]Примечание:[/b] [member uv1_triplanar_sharpness] ограничено между "
"[code]0.0[/code] и [code]150.0[/code] (включительно), так как значения за "
"пределами этого диапазона могут выглядеть сломанными в зависимости от сетки."

msgid ""
"If [code]true[/code], triplanar mapping for [code]UV[/code] is calculated in "
"world space rather than object local space. See also [member uv1_triplanar]."
msgstr ""
"Если [code]true[/code], трипланарное (triplanar) отображение для [code]UV[/"
"code] вычисляется в мировом пространстве, а не в локальном пространстве "
"объекта. См. также [member uv1_triplanar]."

msgid ""
"How much to offset the [code]UV2[/code] coordinates. This amount will be "
"added to [code]UV2[/code] in the vertex function. This can be used to offset "
"a texture. The Z component is used when [member uv2_triplanar] is enabled, "
"but it is not used anywhere else."
msgstr ""
"Насколько смещать координаты [code]UV2[/code]. Эта величина будет добавлена к "
"[code]UV2[/code] в функции вершины. Это можно использовать для смещения "
"текстуры. Компонент Z используется, когда включен [member uv2_triplanar], но "
"больше нигде не используется."

msgid ""
"How much to scale the [code]UV2[/code] coordinates. This is multiplied by "
"[code]UV2[/code] in the vertex function. The Z component is used when [member "
"uv2_triplanar] is enabled, but it is not used anywhere else."
msgstr ""
"Насколько масштабировать координаты [code]UV2[/code]. Это умножается на "
"[code]UV2[/code] в функции вершины. Компонент Z используется, когда включен "
"[member uv2_triplanar], но больше нигде не используется."

msgid ""
"If [code]true[/code], instead of using [code]UV2[/code] textures will use a "
"triplanar texture lookup to determine how to apply textures. Triplanar uses "
"the orientation of the object's surface to blend between texture coordinates. "
"It reads from the source texture 3 times, once for each axis and then blends "
"between the results based on how closely the pixel aligns with each axis. "
"This is often used for natural features to get a realistic blend of "
"materials. Because triplanar texturing requires many more texture reads per-"
"pixel it is much slower than normal UV texturing. Additionally, because it is "
"blending the texture between the three axes, it is unsuitable when you are "
"trying to achieve crisp texturing."
msgstr ""
"Если [code]true[/code], вместо использования текстур [code]UV2[/code] будет "
"использоваться поиск трипланарной текстуры для определения способа применения "
"текстур. Трипланарность использует ориентацию поверхности объекта для "
"смешивания между координатами текстуры. Он считывает исходную текстуру 3 "
"раза, по одному разу для каждой оси, а затем смешивает результаты на основе "
"того, насколько близко пиксель совпадает с каждой осью. Это часто "
"используется для естественных особенностей, чтобы получить реалистичное "
"смешивание материалов. Поскольку трипланарное текстурирование требует гораздо "
"большего количества считываний текстуры на пиксель, оно намного медленнее "
"обычного UV-текстурирования. Кроме того, поскольку оно смешивает текстуру "
"между тремя осями, оно не подходит, когда вы пытаетесь добиться четкого "
"текстурирования."

msgid ""
"A lower number blends the texture more softly while a higher number blends "
"the texture more sharply.\n"
"[b]Note:[/b] [member uv2_triplanar_sharpness] is clamped between [code]0.0[/"
"code] and [code]150.0[/code] (inclusive) as values outside that range can "
"look broken depending on the mesh."
msgstr ""
"Меньшее число смешивает текстуру более мягко, а большее число смешивает "
"текстуру более резко.\n"
"[b]Примечание:[/b] [member uv2_triplanar_sharpness] ограничено между "
"[code]0.0[/code] и [code]150.0[/code] (включительно), так как значения за "
"пределами этого диапазона могут выглядеть сломанными в зависимости от сетки."

msgid ""
"If [code]true[/code], triplanar mapping for [code]UV2[/code] is calculated in "
"world space rather than object local space. See also [member uv2_triplanar]."
msgstr ""
"Если [code]true[/code], трипланарное отображение для [code]UV2[/code] "
"вычисляется в мировом пространстве, а не в локальном пространстве объекта. "
"См. также [member uv2_triplanar]."

msgid ""
"If [code]true[/code], vertex colors are considered to be stored in sRGB color "
"space and are converted to linear color space during rendering. If "
"[code]false[/code], vertex colors are considered to be stored in linear color "
"space and are rendered as-is. See also [member albedo_texture_force_srgb].\n"
"[b]Note:[/b] Only effective when using the Forward+ and Mobile rendering "
"methods, not Compatibility."
msgstr ""
"Если [code]true[/code], цвета вершин считаются сохраненными в цветовом "
"пространстве sRGB и преобразуются в линейное цветовое пространство во время "
"рендеринга. Если [code]false[/code], цвета вершин считаются сохраненными в "
"линейном цветовом пространстве и преобразуются как есть. См. также [member "
"albedo_texture_force_srgb].\n"
"[b]Примечание:[/b] Действует только при использовании методов рендеринга "
"Forward+ и Mobile, а не Compatibility."

msgid "If [code]true[/code], the vertex color is used as albedo color."
msgstr "Если [code]true[/code], цвет вершины используется как цвет альбедо."

msgid ""
"Scales the object being rendered towards the camera to avoid clipping into "
"things like walls. This is intended to be used for objects that are fixed "
"with respect to the camera like player arms, tools, etc. Lighting and shadows "
"will continue to work correctly when this setting is adjusted, but screen-"
"space effects like SSAO and SSR may break with lower scales. Therefore, try "
"to keep this setting as close to [code]1.0[/code] as possible."
msgstr ""
"Масштабирует объект, отображаемый в направлении камеры, чтобы избежать "
"застревания в таких вещах, как стены. Это предназначено для использования с "
"объектами, которые зафиксированы относительно камеры, такими как руки игрока, "
"инструменты и т. д. Освещение и тени будут работать правильно, если этот "
"параметр настроен, но эффекты экранного пространства, такие как SSAO и SSR, "
"могут нарушаться при более низких масштабах. Поэтому постарайтесь "
"поддерживать этот параметр как можно ближе к [code]1.0[/code]."

msgid "Texture specifying per-pixel color."
msgstr "Текстура, определяющая цвет каждого пикселя."

msgid "Texture specifying per-pixel metallic value."
msgstr "Текстура, определяющая попиксельное значение металличности."

msgid "Texture specifying per-pixel roughness value."
msgstr "Текстура, задающая значение шероховатости на пиксель."

msgid "Texture specifying per-pixel emission color."
msgstr "Текстура, задающая цвет излучения попиксельно."

msgid "Texture specifying per-pixel normal vector."
msgstr "Текстура, задающая попиксельный вектор нормали."

msgid "Texture specifying per-pixel bent normal vector."
msgstr "Текстура, задающая попиксельный изогнутый вектор нормали."

msgid "Texture specifying per-pixel rim value."
msgstr "Текстура, задающая попиксельное значение обода."

msgid "Texture specifying per-pixel clearcoat value."
msgstr "Текстура, определяющая значение прозрачного слоя на пиксель."

msgid ""
"Texture specifying per-pixel flowmap direction for use with [member "
"anisotropy]."
msgstr ""
"Текстура, задающая направление карты потоков по пикселям для использования с "
"[member anisotropy]."

msgid "Texture specifying per-pixel ambient occlusion value."
msgstr ""
"Текстура, задающая значение окклюзии окружающего света для каждого пикселя."

msgid "Texture specifying per-pixel height."
msgstr "Текстура, определяющая высоту каждого пикселя."

msgid "Texture specifying per-pixel subsurface scattering."
msgstr "Текстура, задающая попиксельное подповерхностное рассеивание."

msgid "Texture specifying per-pixel transmittance for subsurface scattering."
msgstr ""
"Текстура, определяющая попиксельную пропускаемость для подповерхностного "
"рассеяния."

msgid "Texture specifying per-pixel backlight color."
msgstr "Текстура, определяющая цвет подсветки каждого пикселя."

msgid "Texture specifying per-pixel refraction strength."
msgstr "Текстура, определяющая силу преломления для каждого пикселя."

msgid "Texture specifying per-pixel detail mask blending value."
msgstr "Текстура, задающая значение смешивания маски детализации попиксельно."

msgid "Texture specifying per-pixel detail color."
msgstr "Текстура, определяющая цвет пиксельной детализации."

msgid "Texture specifying per-pixel detail normal."
msgstr "Текстура, задающая попиксельную детализацию нормально."

msgid "Texture holding ambient occlusion, roughness, and metallic."
msgstr ""
"Текстура, содержащая окклюзию окружающего пространства, шероховатость и "
"металличность."

msgid "Represents the size of the [enum TextureParam] enum."
msgstr "Представляет размер перечисления [enum TextureParam]."

msgid ""
"The texture filter reads from the nearest pixel only. This makes the texture "
"look pixelated from up close, and grainy from a distance (due to mipmaps not "
"being sampled)."
msgstr ""
"Фильтр текстуры считывает только ближайший пиксель. Это делает текстуру "
"пикселизированной вблизи и зернистой на расстоянии (из-за того, что mip-карты "
"не сэмплируются)."

msgid ""
"The texture filter blends between the nearest 4 pixels. This makes the "
"texture look smooth from up close, and grainy from a distance (due to mipmaps "
"not being sampled)."
msgstr ""
"Фильтр текстуры смешивает ближайшие 4 пикселя. Это делает текстуру гладкой "
"вблизи и зернистой на расстоянии (из-за того, что mip-карты не сэмплируются)."

msgid ""
"The texture filter reads from the nearest pixel and blends between the "
"nearest 2 mipmaps (or uses the nearest mipmap if [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"is [code]true[/code]). This makes the texture look pixelated from up close, "
"and smooth from a distance."
msgstr ""
"Фильтр текстуры считывает данные с ближайшего пикселя и смешивает их между "
"двумя ближайшими mip-картами (или использует ближайшую mip-карту, если "
"[member ProjectSettings.rendering/textures/default_filters/"
"use_nearest_mipmap_filter] имеет значение [code]true[/code]). Это делает "
"текстуру пикселизированной вблизи и гладкой на расстоянии."

msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps (or uses the nearest mipmap if [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"is [code]true[/code]). This makes the texture look smooth from up close, and "
"smooth from a distance."
msgstr ""
"Фильтр текстуры смешивает ближайшие 4 пикселя и ближайшие 2 mip-карты (или "
"использует ближайшую mip-карту, если [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] имеет значение "
"[code]true[/code]). Это делает текстуру гладкой вблизи и гладкой на "
"расстоянии."

msgid ""
"The texture filter reads from the nearest pixel and blends between 2 mipmaps "
"(or uses the nearest mipmap if [member ProjectSettings.rendering/textures/"
"default_filters/use_nearest_mipmap_filter] is [code]true[/code]) based on the "
"angle between the surface and the camera view. This makes the texture look "
"pixelated from up close, and smooth from a distance. Anisotropic filtering "
"improves texture quality on surfaces that are almost in line with the camera, "
"but is slightly slower. The anisotropic filtering level can be changed by "
"adjusting [member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level]."
msgstr ""
"Фильтр текстуры считывает данные с ближайшего пикселя и смешивает два mip-"
"текстурных отображения (или использует ближайшее mip-текстурное отображение, "
"если [member ProjectSettings.rendering/textures/default_filters/"
"use_nearest_mipmap_filter] имеет значение [code]true[/code]) на основе угла "
"между поверхностью и видом камеры. Это делает текстуру пикселизированной "
"вблизи и гладкой на расстоянии. Анизотропная фильтрация улучшает качество "
"текстуры на поверхностях, которые почти совпадают с камерой, но работает "
"немного медленнее. Уровень анизотропной фильтрации можно изменить, "
"отрегулировав [member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level]."

msgid ""
"The texture filter blends between the nearest 4 pixels and blends between 2 "
"mipmaps (or uses the nearest mipmap if [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] is [code]true[/code]) "
"based on the angle between the surface and the camera view. This makes the "
"texture look smooth from up close, and smooth from a distance. Anisotropic "
"filtering improves texture quality on surfaces that are almost in line with "
"the camera, but is slightly slower. The anisotropic filtering level can be "
"changed by adjusting [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level]."
msgstr ""
"Фильтр текстуры смешивает ближайшие 4 пикселя и смешивает 2 mip-карты (или "
"использует ближайшую mip-карту, если [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] имеет значение "
"[code]true[/code]) на основе угла между поверхностью и видом камеры. Это "
"делает текстуру гладкой вблизи и гладкой на расстоянии. Анизотропная "
"фильтрация улучшает качество текстуры на поверхностях, которые почти "
"совпадают с камерой, но немного медленнее. Уровень анизотропной фильтрации "
"можно изменить, настроив [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level]."

msgid "Represents the size of the [enum TextureFilter] enum."
msgstr "Представляет размер перечисления [enum TextureFilter]."

msgid "Use [code]UV[/code] with the detail texture."
msgstr "Используйте [code]UV[/code] с детализированной текстурой."

msgid "Use [code]UV2[/code] with the detail texture."
msgstr "Используйте [code]UV2[/code] с детальной текстурой."

msgid "The material will not use transparency. This is the fastest to render."
msgstr ""
"Материал не будет использовать прозрачность. Это самый быстрый рендеринг."

msgid ""
"The material will use the texture's alpha values for transparency. This is "
"the slowest to render, and disables shadow casting."
msgstr ""
"Материал будет использовать альфа-значения текстуры для прозрачности. Это "
"самый медленный рендеринг и отключает отбрасывание теней."

msgid ""
"The material will cut off all values below a threshold, the rest will remain "
"opaque. The opaque portions will be rendered in the depth prepass. This is "
"faster to render than alpha blending, but slower than opaque rendering. This "
"also supports casting shadows."
msgstr ""
"Материал отсечет все значения ниже порогового значения, остальные останутся "
"непрозрачными. Непрозрачные части будут визуализированы в предварительном "
"проходе глубины. Это быстрее для визуализации, чем альфа-смешивание, но "
"медленнее, чем непрозрачный рендеринг. Это также поддерживает отбрасывание "
"теней."

msgid ""
"The material will cut off all values below a spatially-deterministic "
"threshold, the rest will remain opaque. This is faster to render than alpha "
"blending, but slower than opaque rendering. This also supports casting "
"shadows. Alpha hashing is suited for hair rendering."
msgstr ""
"Материал отсекает все значения ниже пространственно-детерминированного "
"порога, остальные остаются непрозрачными. Это быстрее для рендеринга, чем "
"альфа-смешивание, но медленнее, чем непрозрачный рендеринг. Это также "
"поддерживает отбрасывание теней. Альфа-хеширование подходит для рендеринга "
"волос."

msgid ""
"The material will use the texture's alpha value for transparency, but will "
"discard fragments with an alpha of less than 0.99 during the depth prepass "
"and fragments with an alpha less than 0.1 during the shadow pass. This also "
"supports casting shadows."
msgstr ""
"Материал будет использовать альфа-значение текстуры для прозрачности, но "
"отбросит фрагменты с альфа-значением менее 0,99 во время предварительного "
"прохода глубины и фрагменты с альфа-значением менее 0,1 во время прохода "
"тени. Это также поддерживает отбрасывание теней."

msgid "Represents the size of the [enum Transparency] enum."
msgstr "Представляет размер перечисления [enum Transparency]."

msgid ""
"The object will not receive shadows. This is the fastest to render, but it "
"disables all interactions with lights."
msgstr ""
"Объект не получит тени. Это самый быстрый рендеринг, но он отключает все "
"взаимодействия с источниками света."

msgid ""
"The object will be shaded per pixel. Useful for realistic shading effects."
msgstr ""
"Объект будет затенен попиксельно. Полезно для реалистичных эффектов затенения."

msgid ""
"The object will be shaded per vertex. Useful when you want cheaper shaders "
"and do not care about visual quality."
msgstr ""
"Объект будет затенен по вершинам. Полезно, когда вам нужны более дешевые "
"шейдеры и вас не волнует визуальное качество."

msgid "Represents the size of the [enum ShadingMode] enum."
msgstr "Представляет размер перечисления [enum ShadingMode]."

msgid "Constant for setting [member emission_enabled]."
msgstr "Константа для настройки [member emission_enabled]."

msgid "Constant for setting [member normal_enabled]."
msgstr "Константа для настройки [member normal_enabled]."

msgid "Constant for setting [member rim_enabled]."
msgstr "Константа для настройки [member rim_enabled]."

msgid "Constant for setting [member clearcoat_enabled]."
msgstr "Константа для настройки [member clearcoat_enabled]."

msgid "Constant for setting [member anisotropy_enabled]."
msgstr "Константа для настройки [member anisotropy_enabled]."

msgid "Constant for setting [member ao_enabled]."
msgstr "Константа для настройки [member ao_enabled]."

msgid "Constant for setting [member heightmap_enabled]."
msgstr "Константа для настройки [member heightmap_enabled]."

msgid "Constant for setting [member subsurf_scatter_enabled]."
msgstr "Константа для настройки [member subsurf_scatter_enabled]."

msgid "Constant for setting [member subsurf_scatter_transmittance_enabled]."
msgstr "Константа для настройки [member subsurf_scatter_transmittance_enabled]."

msgid "Constant for setting [member backlight_enabled]."
msgstr "Константа для настройки [member backlight_enabled]."

msgid "Constant for setting [member refraction_enabled]."
msgstr "Константа для настройки [member refraction_enabled]."

msgid "Constant for setting [member detail_enabled]."
msgstr "Константа для настройки [member detail_enabled]."

msgid "Constant for setting [member bent_normal_enabled]."
msgstr "Константа для настройки [member bent_normal_enabled]."

msgid "Represents the size of the [enum Feature] enum."
msgstr "Представляет размер перечисления [enum Feature]."

msgid ""
"Default blend mode. The color of the object is blended over the background "
"based on the object's alpha value."
msgstr ""
"Режим смешивания по умолчанию. Цвет объекта смешивается с фоном на основе "
"альфа-значения объекта."

msgid "The color of the object is added to the background."
msgstr "Цвет объекта добавляется к фону."

msgid "The color of the object is subtracted from the background."
msgstr "Цвет объекта вычитается из фона."

msgid "The color of the object is multiplied by the background."
msgstr "Цвет объекта умножается на фон."

msgid ""
"The color of the object is added to the background and the alpha channel is "
"used to mask out the background. This is effectively a hybrid of the blend "
"mix and add modes, useful for effects like fire where you want the flame to "
"add but the smoke to mix. By default, this works with unshaded materials "
"using premultiplied textures. For shaded materials, use the "
"[code]PREMUL_ALPHA_FACTOR[/code] built-in so that lighting can be modulated "
"as well."
msgstr ""
"Цвет объекта добавляется к фону, а альфа-канал используется для маскировки "
"фона. Это фактически гибрид режимов смешивания и добавления, полезный для "
"таких эффектов, как огонь, где вы хотите, чтобы пламя добавлялось, а дым "
"смешивался. По умолчанию это работает с незатененными материалами, "
"использующими предварительно умноженные текстуры. Для затененных материалов "
"используйте встроенный [code]PREMUL_ALPHA_FACTOR[/code], чтобы можно было "
"также модулировать освещение."

msgid "Disables Alpha AntiAliasing for the material."
msgstr "Отключает альфа-сглаживание для материала."

msgid ""
"Enables AlphaToCoverage. Alpha values in the material are passed to the "
"AntiAliasing sample mask."
msgstr ""
"Включает AlphaToCoverage. Значения альфа в материале передаются в маску "
"выборки AntiAliasing."

msgid ""
"Enables AlphaToCoverage and forces all non-zero alpha values to [code]1[/"
"code]. Alpha values in the material are passed to the AntiAliasing sample "
"mask."
msgstr ""
"Включает AlphaToCoverage и принудительно устанавливает все ненулевые значения "
"альфа на [code]1[/code]. Значения альфа в материале передаются в маску "
"выборки AntiAliasing."

msgid ""
"Default depth draw mode. Depth is drawn only for opaque objects during the "
"opaque prepass (if any) and during the opaque pass."
msgstr ""
"Режим рисования глубины по умолчанию. Глубина рисуется только для "
"непрозрачных объектов во время непрозрачного предварительного прохода (если "
"таковой имеется) и во время непрозрачного прохода."

msgid ""
"Objects will write to depth during the opaque and the transparent passes. "
"Transparent objects that are close to the camera may obscure other "
"transparent objects behind them.\n"
"[b]Note:[/b] This does not influence whether transparent objects are included "
"in the depth prepass or not. For that, see [enum Transparency]."
msgstr ""
"Объекты будут записывать в глубину во время непрозрачных и прозрачных "
"проходов. Прозрачные объекты, которые находятся близко к камере, могут "
"затенять другие прозрачные объекты позади них.\n"
"[b]Примечание:[/b] Это не влияет на то, включены ли прозрачные объекты в "
"предварительный проход глубины или нет. Для этого см. [enum Transparency]."

msgid ""
"Objects will not write their depth to the depth buffer, even during the depth "
"prepass (if enabled)."
msgstr ""
"Объекты не будут записывать свою глубину в буфер глубины даже во время "
"предварительного прохода глубины (если он включен)."

msgid "Depth test will discard the pixel if it is behind other pixels."
msgstr "Тест глубины отбросит пиксель, если он находится за другими пикселями."

msgid ""
"Depth test will discard the pixel if it is in front of other pixels. Useful "
"for stencil effects."
msgstr ""
"Тест глубины отбрасывает пиксель, если он находится поверх других пикселей. "
"Полезно для создания трафаретных эффектов."

msgid ""
"Default cull mode. The back of the object is culled when not visible. Back "
"face triangles will be culled when facing the camera. This results in only "
"the front side of triangles being drawn. For closed-surface meshes, this "
"means that only the exterior of the mesh will be visible."
msgstr ""
"Режим отбраковки по умолчанию. Задняя часть объекта отбраковывается, когда "
"она не видна. Треугольники задней стороны будут отбраковываться, когда они "
"обращены к камере. Это приводит к тому, что отрисовывается только передняя "
"сторона треугольников. Для сеток с замкнутой поверхностью это означает, что "
"будет видна только внешняя часть сетки."

msgid ""
"Front face triangles will be culled when facing the camera. This results in "
"only the back side of triangles being drawn. For closed-surface meshes, this "
"means that the interior of the mesh will be drawn instead of the exterior."
msgstr ""
"Треугольники передней грани будут отбракованы при взгляде на камеру. Это "
"приведет к тому, что будет отрисована только задняя сторона треугольников. "
"Для сеток с замкнутой поверхностью это означает, что внутренняя часть сетки "
"будет отрисована вместо внешней."

msgid ""
"No face culling is performed; both the front face and back face will be "
"visible."
msgstr ""
"Отбраковка граней не производится; будут видны как передняя, так и задняя "
"грань."

msgid ""
"Disables the depth test, so this object is drawn on top of all others drawn "
"before it. This puts the object in the transparent draw pass where it is "
"sorted based on distance to camera. Objects drawn after it in the draw order "
"may cover it. This also disables writing to depth."
msgstr ""
"Отключает тест глубины, поэтому этот объект рисуется поверх всех остальных, "
"нарисованных до него. Это помещает объект в прозрачный проход рисования, где "
"он сортируется на основе расстояния до камеры. Объекты, нарисованные после "
"него в порядке рисования, могут его перекрывать. Это также отключает запись в "
"глубину."

msgid "Set [code]ALBEDO[/code] to the per-vertex color specified in the mesh."
msgstr "Установите [code]ALBEDO[/code] на цвет вершины, указанный в сетке."

msgid ""
"Vertex colors are considered to be stored in sRGB color space and are "
"converted to linear color space during rendering. See also [member "
"vertex_color_is_srgb].\n"
"[b]Note:[/b] Only effective when using the Forward+ and Mobile rendering "
"methods."
msgstr ""
"Цвета вершин считаются сохраненными в цветовом пространстве sRGB и "
"преобразуются в линейное цветовое пространство во время рендеринга. См. также "
"[member vertex_color_is_srgb].\n"
"[b]Примечание:[/b] Эффективно только при использовании методов рендеринга "
"Forward+ и Mobile."

msgid ""
"Uses point size to alter the size of primitive points. Also changes the "
"albedo texture lookup to use [code]POINT_COORD[/code] instead of [code]UV[/"
"code]."
msgstr ""
"Использует размер точки для изменения размера примитивных точек. Также "
"изменяет поиск текстуры альбедо для использования [code]POINT_COORD[/code] "
"вместо [code]UV[/code]."

msgid ""
"Object is scaled by depth so that it always appears the same size on screen."
msgstr ""
"Объект масштабируется по глубине, чтобы он всегда отображался на экране "
"одного и того же размера."

msgid ""
"Shader will keep the scale set for the mesh. Otherwise the scale is lost when "
"billboarding. Only applies when [member billboard_mode] is [constant "
"BILLBOARD_ENABLED]."
msgstr ""
"Шейдер сохранит масштаб, установленный для сетки. В противном случае масштаб "
"теряется при билбординге. Применяется только когда [member billboard_mode] "
"равен [constant BILLBOARD_ENABLED]."

msgid ""
"Use triplanar texture lookup for all texture lookups that would normally use "
"[code]UV[/code]."
msgstr ""
"Используйте поиск трехплоскостной текстуры для всех поисков текстуры, которые "
"обычно используют [code]UV[/code]."

msgid ""
"Use triplanar texture lookup for all texture lookups that would normally use "
"[code]UV2[/code]."
msgstr ""
"Используйте поиск трехмерной текстуры для всех поисков текстуры, которые "
"обычно используют [code]UV2[/code]."

msgid ""
"Use [code]UV2[/code] coordinates to look up from the [member ao_texture]."
msgstr ""
"Используйте координаты [code]UV2[/code] для поиска от [member ao_texture]."

msgid ""
"Use [code]UV2[/code] coordinates to look up from the [member "
"emission_texture]."
msgstr ""
"Используйте координаты [code]UV2[/code] для поиска от [member "
"emission_texture]."

msgid ""
"Forces the shader to convert albedo from sRGB space to linear space. See also "
"[member albedo_texture_force_srgb]."
msgstr ""
"Заставляет шейдер преобразовывать альбедо из пространства sRGB в линейное "
"пространство. См. также [member albedo_texture_force_srgb]."

msgid "Disables receiving shadows from other objects."
msgstr "Отключает получение теней от других объектов."

msgid "Disables receiving ambient light."
msgstr "Отключает прием окружающего света."

msgid "Enables the shadow to opacity feature."
msgstr "Включает функцию непрозрачности тени."

msgid ""
"Enables the texture to repeat when UV coordinates are outside the 0-1 range. "
"If using one of the linear filtering modes, this can result in artifacts at "
"the edges of a texture when the sampler filters across the edges of the "
"texture."
msgstr ""
"Позволяет текстуре повторяться, когда координаты UV выходят за пределы "
"диапазона 0-1. При использовании одного из режимов линейной фильтрации это "
"может привести к появлению артефактов на краях текстуры, когда сэмплер "
"фильтрует края текстуры."

msgid ""
"Invert values read from a depth texture to convert them to height values "
"(heightmap)."
msgstr ""
"Инвертировать значения, считанные из текстуры глубины, чтобы преобразовать их "
"в значения высоты (карту высот)."

msgid ""
"Enables the skin mode for subsurface scattering which is used to improve the "
"look of subsurface scattering when used for human skin."
msgstr ""
"Включает режим кожи для подповерхностного рассеивания, который используется "
"для улучшения внешнего вида подповерхностного рассеивания при использовании "
"для кожи человека."

msgid ""
"Enables parts of the shader required for [GPUParticles3D] trails to function. "
"This also requires using a mesh with appropriate skinning, such as "
"[RibbonTrailMesh] or [TubeTrailMesh]. Enabling this feature outside of "
"materials used in [GPUParticles3D] meshes will break material rendering."
msgstr ""
"Включает части шейдера, необходимые для функционирования следов "
"[GPUParticles3D]. Это также требует использования сетки с соответствующим "
"скиннингом, например [RibbonTrailMesh] или [TubeTrailMesh]. Включение этой "
"функции вне материалов, используемых в сетках [GPUParticles3D], нарушит "
"рендеринг материалов."

msgid "Enables multichannel signed distance field rendering shader."
msgstr "Включает многоканальный шейдер рендеринга поля расстояний со знаком."

msgid "Disables receiving depth-based or volumetric fog."
msgstr "Отключает прием глубинного или объемного тумана."

msgid "Disables specular occlusion."
msgstr "Отключает зеркальную окклюзию."

msgid "Enables using [member z_clip_scale]."
msgstr "Включает использование [member z_clip_scale]."

msgid "Enables using [member fov_override]."
msgstr "Включает использование [member fov_override]."

msgid "Represents the size of the [enum Flags] enum."
msgstr "Представляет размер перечисления [enum Flags]."

msgid "Default diffuse scattering algorithm."
msgstr "Алгоритм диффузного рассеяния по умолчанию."

msgid "Diffuse scattering ignores roughness."
msgstr "Диффузное рассеяние игнорирует шероховатость."

msgid "Extends Lambert to cover more than 90 degrees when roughness increases."
msgstr ""
"Расширяет диапазон Ламберта до более чем 90 градусов при увеличении "
"неровностей."

msgid "Uses a hard cut for lighting, with smoothing affected by roughness."
msgstr "Для освещения используется жесткий срез, сглаживающий неровности."

msgid ""
"Default specular blob.\n"
"[b]Note:[/b] Forward+ uses multiscattering for more accurate reflections, "
"although the impact of multiscattering is more noticeable on rough metallic "
"surfaces than on smooth, non-metallic surfaces.\n"
"[b]Note:[/b] Mobile and Compatibility don't perform multiscattering for "
"performance reasons. Instead, they perform single scattering, which means "
"rough metallic surfaces may look slightly darker than intended."
msgstr ""
"Зеркальный блоб (пятно) по умолчанию.\n"
"[b]Примечание:[/b] Forward+ использует множественное рассеяние для более "
"точных отражений, хотя влияние множественного рассеяния более заметно на "
"грубых металлических поверхностях, чем на гладких, неметаллических "
"поверхностях.\n"
"[b]Примечание:[/b] Mobile и Compatibility не выполняют множественное "
"рассеяние из соображений производительности. Вместо этого они выполняют "
"однократное рассеяние, что означает, что грубые металлические поверхности "
"могут выглядеть немного темнее, чем предполагалось."

msgid "Toon blob which changes size based on roughness."
msgstr "Мультяшная капля, которая меняет размер в зависимости от неровности."

msgid ""
"No specular blob. This is slightly faster to render than other specular modes."
msgstr ""
"Нет блика. Это немного быстрее для рендеринга, чем другие бликовые режимы."

msgid "Billboard mode is disabled."
msgstr "Режим рекламного щита отключен."

msgid "The object's Z axis will always face the camera."
msgstr "Ось Z объекта всегда будет направлена в сторону камеры."

msgid "The object's X axis will always face the camera."
msgstr "Ось X объекта всегда будет направлена в сторону камеры."

msgid ""
"Used for particle systems when assigned to [GPUParticles3D] and "
"[CPUParticles3D] nodes (flipbook animation). Enables [code]particles_anim_*[/"
"code] properties.\n"
"The [member ParticleProcessMaterial.anim_speed_min] or [member "
"CPUParticles3D.anim_speed_min] should also be set to a value bigger than zero "
"for the animation to play."
msgstr ""
"Используется для систем частиц при назначении узлам [GPUParticles3D] и "
"[CPUParticles3D] (анимация перелистывания). Включает свойства "
"[code]particles_anim_*[/code]. \n"
"Для воспроизведения анимации [member ParticleProcessMaterial.anim_speed_min] "
"или [member CPUParticles3D.anim_speed_min] также следует задать значение "
"больше нуля."

msgid "Used to read from the red channel of a texture."
msgstr "Используется для считывания красного канала текстуры."

msgid "Used to read from the green channel of a texture."
msgstr "Используется для считывания зеленого канала текстуры."

msgid "Used to read from the blue channel of a texture."
msgstr "Используется для чтения из синего канала текстуры."

msgid "Used to read from the alpha channel of a texture."
msgstr "Используется для чтения из альфа-канала текстуры."

msgid ""
"Used to read from the linear (non-perceptual) average of the red, green and "
"blue channels of a texture."
msgstr ""
"Используется для считывания линейного (невоспринимаемого) среднего значения "
"красного, зеленого и синего каналов текстуры."

msgid "Adds the emission color to the color from the emission texture."
msgstr "Добавляет цвет излучения к цвету из текстуры излучения."

msgid "Multiplies the emission color by the color from the emission texture."
msgstr "Умножает цвет излучения на цвет из текстуры излучения."

msgid "Do not use distance fade."
msgstr "Не используйте затухание на расстоянии."

msgid ""
"Smoothly fades the object out based on each pixel's distance from the camera "
"using the alpha channel."
msgstr ""
"Плавно затухает объект в зависимости от расстояния каждого пикселя от камеры "
"с использованием альфа-канала."

msgid ""
"Smoothly fades the object out based on each pixel's distance from the camera "
"using a dithering approach. Dithering discards pixels based on a set pattern "
"to smoothly fade without enabling transparency. On certain hardware, this can "
"be faster than [constant DISTANCE_FADE_PIXEL_ALPHA]."
msgstr ""
"Плавно затухает объект на основе расстояния каждого пикселя от камеры с "
"использованием подхода сглаживания. Сглаживание отбрасывает пиксели на основе "
"заданного шаблона для плавного затухания без включения прозрачности. На "
"определенном оборудовании это может быть быстрее, чем [constant "
"DISTANCE_FADE_PIXEL_ALPHA]."

msgid ""
"Smoothly fades the object out based on the object's distance from the camera "
"using a dithering approach. Dithering discards pixels based on a set pattern "
"to smoothly fade without enabling transparency. On certain hardware, this can "
"be faster than [constant DISTANCE_FADE_PIXEL_ALPHA] and [constant "
"DISTANCE_FADE_PIXEL_DITHER]."
msgstr ""
"Плавно затухает объект на основе расстояния объекта от камеры с "
"использованием подхода сглаживания. Сглаживание отбрасывает пиксели на основе "
"установленного шаблона для плавного затухания без включения прозрачности. На "
"определенном оборудовании это может быть быстрее, чем [constant "
"DISTANCE_FADE_PIXEL_ALPHA] и [constant DISTANCE_FADE_PIXEL_DITHER]."

msgid "Disables stencil operations."
msgstr "Отключает операции с трафаретами."

msgid ""
"Stencil preset which applies an outline to the object.\n"
"[b]Note:[/b] Requires a [member Material.next_pass] material which will be "
"automatically applied. Any manual changes made to [member Material.next_pass] "
"will be lost when the stencil properties are modified or the scene is "
"reloaded. To safely apply a [member Material.next_pass] material on a "
"material that uses stencil presets, use [member "
"GeometryInstance3D.material_overlay] instead."
msgstr ""
"Шаблон трафарета, который применяет контур к объекту.\n"
"[b]Примечание:[/b] Требуется материал [member Material.next_pass], который "
"будет применен автоматически. Любые изменения, внесенные вручную в [member "
"Material.next_pass], будут потеряны при изменении свойств трафарета или "
"перезагрузке сцены. Чтобы безопасно применить материал [member "
"Material.next_pass] к материалу, использующему шаблоны трафарета, используйте "
"[member GeometryInstance3D.material_overlay]."

msgid ""
"Stencil preset which shows a silhouette of the object behind walls.\n"
"[b]Note:[/b] Requires a [member Material.next_pass] material which will be "
"automatically applied. Any manual changes made to [member Material.next_pass] "
"will be lost when the stencil properties are modified or the scene is "
"reloaded. To safely apply a [member Material.next_pass] material on a "
"material that uses stencil presets, use [member "
"GeometryInstance3D.material_overlay] instead."
msgstr ""
"Шаблон трафарета, отображающий силуэт объекта за стенами.\n"
"[b]Примечание:[/b] Требуется материал [member Material.next_pass], который "
"будет применен автоматически. Любые изменения, внесенные вручную в [member "
"Material.next_pass], будут потеряны при изменении свойств трафарета или "
"перезагрузке сцены. Чтобы безопасно применить материал [member "
"Material.next_pass] к материалу, использующему шаблоны трафарета, используйте "
"[member GeometryInstance3D.material_overlay]."

msgid "Enables stencil operations without a preset."
msgstr ""
"Позволяет выполнять операции с трафаретами без предварительной настройки "
"пресета."

msgid ""
"The material will only be rendered where it passes a stencil comparison with "
"existing stencil buffer values. See [enum StencilCompare]."
msgstr ""
"Материал будет визуализирован только в том случае, если он пройдёт сравнение "
"трафарета с существующими значениями буфера трафарета. См. [enum "
"StencilCompare]."

msgid ""
"The material will write the reference value to the stencil buffer where it "
"passes the depth test."
msgstr ""
"Материал запишет эталонное значение в буфер трафарета, где он пройдет тест "
"глубины."

msgid ""
"The material will write the reference value to the stencil buffer where it "
"fails the depth test."
msgstr ""
"Материал запишет эталонное значение в буфер трафарета, если тест глубины не "
"пройден."

msgid "Always passes the stencil test."
msgstr "Всегда проходит тест трафарета."

msgid ""
"Passes the stencil test when the reference value is less than the existing "
"stencil value."
msgstr ""
"Проходит тест трафарета, если контрольное значение меньше существующего "
"значения трафарета."

msgid ""
"Passes the stencil test when the reference value is equal to the existing "
"stencil value."
msgstr ""
"Проходит тест трафарета, если контрольное значение равно существующему "
"значению трафарета."

msgid ""
"Passes the stencil test when the reference value is less than or equal to the "
"existing stencil value."
msgstr ""
"Проходит тест трафарета, если контрольное значение меньше или равно "
"существующему значению трафарета."

msgid ""
"Passes the stencil test when the reference value is greater than the existing "
"stencil value."
msgstr ""
"Проходит тест трафарета, если контрольное значение больше существующего "
"значения трафарета."

msgid ""
"Passes the stencil test when the reference value is not equal to the existing "
"stencil value."
msgstr ""
"Проходит тест трафарета, если эталонное значение не равно существующему "
"значению трафарета."

msgid ""
"Passes the stencil test when the reference value is greater than or equal to "
"the existing stencil value."
msgstr ""
"Проходит тест трафарета, если контрольное значение больше или равно "
"существующему значению трафарета."

msgid "A 3×3 matrix for representing 3D rotation and scale."
msgstr "Матрица 3×3 для представления трехмерного вращения и масштаба."

msgid ""
"The [Basis] built-in [Variant] type is a 3×3 [url=https://en.wikipedia.org/"
"wiki/Matrix_(mathematics)]matrix[/url] used to represent 3D rotation, scale, "
"and shear. It is frequently used within a [Transform3D].\n"
"A [Basis] is composed by 3 axis vectors, each representing a column of the "
"matrix: [member x], [member y], and [member z]. The length of each axis "
"([method Vector3.length]) influences the basis's scale, while the direction "
"of all axes influence the rotation. Usually, these axes are perpendicular to "
"one another. However, when you rotate any axis individually, the basis "
"becomes sheared. Applying a sheared basis to a 3D model will make the model "
"appear distorted.\n"
"A [Basis] is:\n"
"- [b]Orthogonal[/b] if its axes are perpendicular to each other.\n"
"- [b]Normalized[/b] if the length of every axis is [code]1.0[/code].\n"
"- [b]Uniform[/b] if all axes share the same length (see [method get_scale]).\n"
"- [b]Orthonormal[/b] if it is both orthogonal and normalized, which allows it "
"to only represent rotations (see [method orthonormalized]).\n"
"- [b]Conformal[/b] if it is both orthogonal and uniform, which ensures it is "
"not distorted.\n"
"For a general introduction, see the [url=$DOCS_URL/tutorials/math/"
"matrices_and_transforms.html]Matrices and transforms[/url] tutorial.\n"
"[b]Note:[/b] Godot uses a [url=https://en.wikipedia.org/wiki/Right-"
"hand_rule]right-handed coordinate system[/url], which is a common standard. "
"For directions, the convention for built-in types like [Camera3D] is for -Z "
"to point forward (+X is right, +Y is up, and +Z is back). Other objects may "
"use different direction conventions. For more information, see the "
"[url=$DOCS_URL/tutorials/assets_pipeline/importing_3d_scenes/"
"model_export_considerations.html#d-asset-direction-conventions]3D asset "
"direction conventions[/url] tutorial.\n"
"[b]Note:[/b] The basis matrices are exposed as [url=https://"
"www.mindcontrol.org/~hplus/graphics/matrix-layout.html]column-major[/url] "
"order, which is the same as OpenGL. However, they are stored internally in "
"row-major order, which is the same as DirectX."
msgstr ""
"Встроенный тип [Variant] [Basis] — это [url=https://en.wikipedia.org/wiki/"
"Matrix_(mathematics)]матрица[/url] размером 3×3, используемая для "
"представления вращения, масштаба и сдвига в 3D. Она часто используется в "
"[Transform3D].\n"
"[Basis] состоит из 3 векторов осей, каждый из которых представляет столбец "
"матрицы: [member x], [member y] и [member z]. Длина каждой оси ([method "
"Vector3.length]) влияет на масштаб базиса, а направление всех осей влияет на "
"вращение. Обычно эти оси перпендикулярны друг другу. Однако при повороте "
"любой оси по отдельности базис становится сдвинутым. Применение сдвинутого "
"базиса к 3D-модели приведет к тому, что модель будет выглядеть искаженной.\n"
"[Basis]— это:\n"
"- [b]Ортогональный[/b], если его оси перпендикулярны друг другу.\n"
"- [b]Нормализовано[/b], если длина каждой оси равна [code]1.0[/code].\n"
"- [b]Равномерно[/b], если все оси имеют одинаковую длину (см. [method "
"get_scale]).\n"
"- [b]Ортонормальный[/b], если он одновременно ортогонален и нормализован, что "
"позволяет ему представлять только вращения (см. [method orthonormalized]).\n"
"- [b]Конформный[/b], если он одновременно ортогонален и однороден, что "
"гарантирует отсутствие искажений.\n"
"Для общего введения см. учебник [url=$DOCS_URL/tutorials/math/"
"matrices_and_transforms.html]Матрицы и преобразования[/url].\n"
"[b]Примечание:[/b] Godot использует [url=https://en.wikipedia.org/wiki/Right-"
"hand_rule]правостороннюю систему координат[/url], что является общепринятым "
"стандартом. Для направлений соглашение для встроенных типов, таких как "
"[Camera3D], заключается в том, что -Z указывает вперед (+X — направо, +Y — "
"вверх, а +Z — назад). Другие объекты могут использовать другие соглашения о "
"направлении. Для получения дополнительной информации см. [url=$DOCS_URL/"
"tutorials/assets_pipeline/importing_3d_scenes/"
"model_export_considerations.html#d-asset-direction-conventions]Соглашения о "
"направлении 3D-активов[/url] учебник.\n"
"[b]Примечание:[/b] Базисные матрицы представлены в порядке [url=https://"
"www.mindcontrol.org/~hplus/graphics/matrix-layout.html]column-major[/url], "
"что совпадает с порядком OpenGL. Однако внутри они хранятся в порядке row-"
"major, что совпадает с порядком DirectX."

msgid "Matrices and transforms"
msgstr "Матрицы и преобразования"

msgid "Using 3D transforms"
msgstr "Использование 3D-преобразований"

msgid "Matrix Transform Demo"
msgstr "Демонстрация матричных преобразований"

msgid "2.5D Game Demo"
msgstr "Демонстрация игры 2.5D"

msgid ""
"Constructs a [Basis] identical to [constant IDENTITY].\n"
"[b]Note:[/b] In C#, this constructs a [Basis] with all of its components set "
"to [constant Vector3.ZERO]."
msgstr ""
"Создает [Basis], идентичный [constant IDENTITY].\n"
"[b]Примечание:[/b] В C# это создает [Basis], все компоненты которого "
"установлены в [constant Vector3.ZERO]."

msgid "Constructs a [Basis] as a copy of the given [Basis]."
msgstr "Создает [Basis] как копию заданного [Basis]."

msgid ""
"Constructs a [Basis] that only represents rotation, rotated around the [param "
"axis] by the given [param angle], in radians. The axis must be a normalized "
"vector.\n"
"[b]Note:[/b] This is the same as using [method rotated] on the [constant "
"IDENTITY] basis. With more than one angle consider using [method from_euler], "
"instead."
msgstr ""
"Создает [Basis], который представляет только вращение, повернутое вокруг "
"[param axis] на заданный [param angle] в радианах. Ось должна быть "
"нормализованным вектором.\n"
"[b]Примечание:[/b] Это то же самое, что использовать [method rotated] на "
"[constant IDENTITY] основе. При наличии более одного угла рассмотрите "
"возможность использования [method from_euler] вместо этого."

msgid ""
"Constructs a [Basis] that only represents rotation from the given "
"[Quaternion].\n"
"[b]Note:[/b] Quaternions [i]only[/i] store rotation, not scale. Because of "
"this, conversions from [Basis] to [Quaternion] cannot always be reversed."
msgstr ""
"Создает [Basis], который представляет только вращение из заданного "
"[Quaternion].\n"
"[b]Примечание:[/b] Кватернионы [i]только[/i] хранят вращение, а не масштаб. "
"Из-за этого преобразования из [Basis] в [Quaternion] не всегда могут быть "
"обратными."

msgid ""
"Constructs a [Basis] from 3 axis vectors. These are the columns of the basis "
"matrix."
msgstr "Создает [Basis] из 3-х векторов осей. Это столбцы матрицы базиса."

msgid ""
"Constructs a new [Basis] that only represents rotation from the given "
"[Vector3] of [url=https://en.wikipedia.org/wiki/Euler_angles]Euler angles[/"
"url], in radians.\n"
"- The [member Vector3.x] should contain the angle around the [member x] axis "
"(pitch);\n"
"- The [member Vector3.y] should contain the angle around the [member y] axis "
"(yaw);\n"
"- The [member Vector3.z] should contain the angle around the [member z] axis "
"(roll).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Creates a Basis whose z axis points down.\n"
"var my_basis = Basis.from_euler(Vector3(TAU / 4, 0, 0))\n"
"\n"
"print(my_basis.z) # Prints (0.0, -1.0, 0.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Creates a Basis whose z axis points down.\n"
"var myBasis = Basis.FromEuler(new Vector3(Mathf.Tau / 4.0f, 0.0f, 0.0f));\n"
"\n"
"GD.Print(myBasis.Z); // Prints (0, -1, 0)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The order of each consecutive rotation can be changed with [param order] (see "
"[enum EulerOrder] constants). By default, the YXZ convention is used "
"([constant EULER_ORDER_YXZ]): the basis rotates first around the Y axis "
"(yaw), then X (pitch), and lastly Z (roll). When using the opposite method "
"[method get_euler], this order is reversed."
msgstr ""
"Создает новый [Basis], который представляет только вращение из заданного "
"[Vector3] [url=https://en.wikipedia.org/wiki/Euler_angles]углов Эйлера[/url] "
"в радианах.\n"
"- [member Vector3.x] должен содержать угол вокруг оси [member x] (тангаж);\n"
"- [member Vector3.y] должен содержать угол вокруг оси [member y] (рыскание);\n"
"- [member Vector3.z] должен содержать угол вокруг оси [member z] (крен).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Создает базис, ось z которого направлена вниз.\n"
"var my_basis = Basis.from_euler(Vector3(TAU / 4, 0, 0))\n"
"\n"
"print(my_basis.z) # Prints (0.0, -1.0, 0.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Создает базис, ось z которого направлена вниз.\n"
"var myBasis = Basis.FromEuler(new Vector3(Mathf.Tau / 4.0f, 0.0f, 0.0f));\n"
"\n"
"GD.Print(myBasis.Z); // Prints (0, -1, 0)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Порядок каждого последовательного вращения можно изменить с помощью [param "
"order] (см. константы [enum EulerOrder]). По умолчанию используется "
"соглашение YXZ ([constant EULER_ORDER_YXZ]): базис сначала вращается вокруг "
"оси Y (рыскание), затем вокруг оси X (тангаж) и, наконец, вокруг оси Z "
"(крен). При использовании противоположного метода [method get_euler] этот "
"порядок меняется на обратный."

msgid ""
"Constructs a new [Basis] that only represents scale, with no rotation or "
"shear, from the given [param scale] vector.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis.from_scale(Vector3(2, 4, 8))\n"
"\n"
"print(my_basis.x) # Prints (2.0, 0.0, 0.0)\n"
"print(my_basis.y) # Prints (0.0, 4.0, 0.0)\n"
"print(my_basis.z) # Prints (0.0, 0.0, 8.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = Basis.FromScale(new Vector3(2.0f, 4.0f, 8.0f));\n"
"\n"
"GD.Print(myBasis.X); // Prints (2, 0, 0)\n"
"GD.Print(myBasis.Y); // Prints (0, 4, 0)\n"
"GD.Print(myBasis.Z); // Prints (0, 0, 8)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In linear algebra, the matrix of this basis is also known as a "
"[url=https://en.wikipedia.org/wiki/Diagonal_matrix]diagonal matrix[/url]."
msgstr ""
"Создает новый [Basis], который представляет только масштаб, без вращения или "
"сдвига, из заданного вектора [param scale].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis.from_scale(Vector3(2, 4, 8))\n"
"\n"
"print(my_basis.x) # Prints (2.0, 0.0, 0.0)\n"
"print(my_basis.y) # Prints (0.0, 4.0, 0.0)\n"
"print(my_basis.z) # Prints (0.0, 0.0, 8.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = Basis.FromScale(new Vector3(2.0f, 4.0f, 8.0f));\n"
"\n"
"GD.Print(myBasis.X); // Prints (2, 0, 0)\n"
"GD.Print(myBasis.Y); // Prints (0, 4, 0)\n"
"GD.Print(myBasis.Z); // Prints (0, 0, 8)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В линейной алгебре матрица этого базиса также известна как "
"[url=https://en.wikipedia.org/wiki/Diagonal_matrix]диагональная матрица[/url]."

msgid ""
"Returns this basis's rotation as a [Vector3] of [url=https://en.wikipedia.org/"
"wiki/Euler_angles]Euler angles[/url], in radians. For the returned value:\n"
"- The [member Vector3.x] contains the angle around the [member x] axis "
"(pitch);\n"
"- The [member Vector3.y] contains the angle around the [member y] axis "
"(yaw);\n"
"- The [member Vector3.z] contains the angle around the [member z] axis "
"(roll).\n"
"The order of each consecutive rotation can be changed with [param order] (see "
"[enum EulerOrder] constants). By default, the YXZ convention is used "
"([constant EULER_ORDER_YXZ]): Z (roll) is calculated first, then X (pitch), "
"and lastly Y (yaw). When using the opposite method [method from_euler], this "
"order is reversed.\n"
"[b]Note:[/b] For this method to return correctly, the basis needs to be "
"[i]orthonormal[/i] (see [method orthonormalized]).\n"
"[b]Note:[/b] Euler angles are much more intuitive but are not suitable for 3D "
"math. Because of this, consider using the [method get_rotation_quaternion] "
"method instead, which returns a [Quaternion].\n"
"[b]Note:[/b] In the Inspector dock, a basis's rotation is often displayed in "
"Euler angles (in degrees), as is the case with the [member Node3D.rotation] "
"property."
msgstr ""
"Возвращает вращение этого базиса как [Vector3] [url=https://en.wikipedia.org/"
"wiki/Euler_angles]углов Эйлера[/url] в радианах. Для возвращаемого значения:\n"
"- [member Vector3.x] содержит угол вокруг оси [member x] (тангаж);\n"
"- [member Vector3.y] содержит угол вокруг оси [member y] (рыскание);\n"
"- [member Vector3.z] содержит угол вокруг оси [member z] (крен).\n"
"Порядок каждого последовательного вращения можно изменить с помощью [param "
"order] (см. константы [enum EulerOrder]). По умолчанию используется "
"соглашение YXZ ([constant EULER_ORDER_YXZ]): сначала вычисляется Z (крен), "
"затем X (тангаж) и, наконец, Y (рыскание). При использовании противоположного "
"метода [method from_euler] этот порядок меняется на обратный.\n"
"[b]Примечание:[/b] Чтобы этот метод возвращал правильный результат, базис "
"должен быть [i]ортонормальным[/i] (см. [method orthonormalized]).\n"
"[b]Примечание:[/b] Углы Эйлера гораздо более интуитивны, но не подходят для "
"3D-математики. Из-за этого рассмотрите возможность использования метода "
"[method get_rotation_quaternion], который возвращает [Quaternion].\n"
"[b]Примечание:[/b] В доке Inspector вращение базиса часто отображается в "
"углах Эйлера (в градусах), как в случае со свойством [member Node3D.rotation]."

msgid ""
"Returns this basis's rotation as a [Quaternion].\n"
"[b]Note:[/b] Quaternions are much more suitable for 3D math but are less "
"intuitive. For user interfaces, consider using the [method get_euler] method, "
"which returns Euler angles."
msgstr ""
"Возвращает вращение этого базиса как [Quaternion].\n"
"[b]Примечание:[/b] Кватернионы гораздо больше подходят для 3D-математики, но "
"менее интуитивно понятны. Для пользовательских интерфейсов рассмотрите "
"возможность использования метода [method get_euler], который возвращает углы "
"Эйлера."

msgid ""
"Returns the length of each axis of this basis, as a [Vector3]. If the basis "
"is not sheared, this value is the scaling factor. It is not affected by "
"rotation.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"\tVector3(2, 0, 0),\n"
"\tVector3(0, 4, 0),\n"
"\tVector3(0, 0, 8)\n"
")\n"
"# Rotating the Basis in any way preserves its scale.\n"
"my_basis = my_basis.rotated(Vector3.UP, TAU / 2)\n"
"my_basis = my_basis.rotated(Vector3.RIGHT, TAU / 4)\n"
"\n"
"print(my_basis.get_scale()) # Prints (2.0, 4.0, 8.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"\tVector3(2.0f, 0.0f, 0.0f),\n"
"\tVector3(0.0f, 4.0f, 0.0f),\n"
"\tVector3(0.0f, 0.0f, 8.0f)\n"
");\n"
"// Rotating the Basis in any way preserves its scale.\n"
"myBasis = myBasis.Rotated(Vector3.Up, Mathf.Tau / 2.0f);\n"
"myBasis = myBasis.Rotated(Vector3.Right, Mathf.Tau / 4.0f);\n"
"\n"
"GD.Print(myBasis.Scale); // Prints (2, 4, 8)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If the value returned by [method determinant] is negative, the "
"scale is also negative."
msgstr ""
"Возвращает длину каждой оси этого базиса как [Vector3]. Если базис не "
"сдвинут, это значение является коэффициентом масштабирования. Оно не зависит "
"от вращения.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"\tVector3(2, 0, 0),\n"
"\tVector3(0, 4, 0),\n"
"\tVector3(0, 0, 8)\n"
")\n"
"#При любом повороте Базиса его масштаб сохраняется.\n"
"my_basis = my_basis.rotated(Vector3.UP, TAU / 2)\n"
"my_basis = my_basis.rotated(Vector3.RIGHT, TAU / 4)\n"
"\n"
"print(my_basis.get_scale()) # Prints (2.0, 4.0, 8.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"\tVector3(2.0f, 0.0f, 0.0f),\n"
"\tVector3(0.0f, 4.0f, 0.0f),\n"
"\tVector3(0.0f, 0.0f, 8.0f)\n"
");\n"
"// При любом повороте Базиса его масштаб сохраняется.\n"
"myBasis = myBasis.Rotated(Vector3.Up, Mathf.Tau / 2.0f);\n"
"myBasis = myBasis.Rotated(Vector3.Right, Mathf.Tau / 4.0f);\n"
"\n"
"GD.Print(myBasis.Scale); // Prints (2, 4, 8)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Если значение, возвращаемое [method determinant], "
"отрицательное, масштаб также будет отрицательным."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Invertible_matrix]inverse of "
"this basis's matrix[/url]."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/Invertible_matrix]обратную "
"матрицу данного базиса[/url]."

msgid ""
"Returns [code]true[/code] if this basis is conformal. A conformal basis is "
"both [i]orthogonal[/i] (the axes are perpendicular to each other) and "
"[i]uniform[/i] (the axes share the same length). This method can be "
"especially useful during physics calculations."
msgstr ""
"Возвращает [code]true[/code], если этот базис конформный. Конформный базис "
"является как [i]ортогональным[/i] (оси перпендикулярны друг другу), так и "
"[i]равномерным[/i] (оси имеют одинаковую длину). Этот метод может быть "
"особенно полезен при физических расчетах."

msgid ""
"Returns [code]true[/code] if this basis and [param b] are approximately "
"equal, by calling [method @GlobalScope.is_equal_approx] on all vector "
"components."
msgstr ""
"Возвращает [code]true[/code], если этот базис и [param b] приблизительно "
"равны, вызывая [method @GlobalScope.is_equal_approx] для всех компонентов "
"вектора."

msgid ""
"Returns [code]true[/code] if this basis is finite, by calling [method "
"@GlobalScope.is_finite] on all vector components."
msgstr ""
"Возвращает [code]true[/code], если этот базис конечен, вызывая [method "
"@GlobalScope.is_finite] для всех компонентов вектора."

msgid ""
"Creates a new [Basis] with a rotation such that the forward axis (-Z) points "
"towards the [param target] position.\n"
"By default, the -Z axis (camera forward) is treated as forward (implies +X is "
"right). If [param use_model_front] is [code]true[/code], the +Z axis (asset "
"front) is treated as forward (implies +X is left) and points toward the "
"[param target] position.\n"
"The up axis (+Y) points as close to the [param up] vector as possible while "
"staying perpendicular to the forward axis. The returned basis is "
"orthonormalized (see [method orthonormalized]).\n"
"The [param target] and the [param up] cannot be [constant Vector3.ZERO], and "
"shouldn't be colinear to avoid unintended rotation around local Z axis."
msgstr ""
"Создает новый [Basis] с поворотом таким образом, что прямая ось (-Z) "
"указывает на позицию [param target].\n"
"По умолчанию ось -Z (камера вперед) рассматривается как прямая "
"(подразумевается, что +X находится справа). Если [param use_model_front] "
"равно [code]true[/code], ось +Z (ассет спереди) рассматривается как прямая "
"(подразумевается, что +X находится слева) и указывает на позицию [param "
"target].\n"
"Верхняя ось (+Y) указывает как можно ближе к вектору [param up], оставаясь "
"перпендикулярной прямой оси. Возвращаемый базис ортонормализован (см. [method "
"orthonormalized]).\n"
"[param target] и [param up] не могут быть [constant Vector3.ZERO] и не должны "
"быть коллинеарными, чтобы избежать непреднамеренного поворота вокруг "
"локальной оси Z."

msgid ""
"Returns the orthonormalized version of this basis. An orthonormal basis is "
"both [i]orthogonal[/i] (the axes are perpendicular to each other) and "
"[i]normalized[/i] (the axes have a length of [code]1.0[/code]), which also "
"means it can only represent a rotation.\n"
"It is often useful to call this method to avoid rounding errors on a rotating "
"basis:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Rotate this Node3D every frame.\n"
"func _process(delta):\n"
"\tbasis = basis.rotated(Vector3.UP, TAU * delta)\n"
"\tbasis = basis.rotated(Vector3.RIGHT, TAU * delta)\n"
"\tbasis = basis.orthonormalized()\n"
"[/gdscript]\n"
"[csharp]\n"
"// Rotate this Node3D every frame.\n"
"public override void _Process(double delta)\n"
"{\n"
"\tBasis = Basis.Rotated(Vector3.Up, Mathf.Tau * (float)delta)\n"
"\t\t\t.Rotated(Vector3.Right, Mathf.Tau * (float)delta)\n"
"\t\t\t.Orthonormalized();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает ортонормированную версию этого базиса. Ортонормированный базис "
"является как [i]ортогональным[/i] (оси перпендикулярны друг другу), так и "
"[i]нормализованным[/i] (оси имеют длину [code]1.0[/code]), что также "
"означает, что он может представлять только поворот.\n"
"Часто бывает полезно вызывать этот метод, чтобы избежать ошибок округления на "
"основе поворота:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Вращайте этот Node3D каждый кадр.\n"
"func _process(delta):\n"
"\tbasis = basis.rotated(Vector3.UP, TAU * delta)\n"
"\tbasis = basis.rotated(Vector3.RIGHT, TAU * delta)\n"
"\tbasis = basis.orthonormalized()\n"
"[/gdscript]\n"
"[csharp]\n"
"// Вращайте этот Node3D каждый кадр.\n"
"public override void _Process(double delta)\n"
"{\n"
"\tBasis = Basis.Rotated(Vector3.Up, Mathf.Tau * (float)delta)\n"
"\t\t\t.Rotated(Vector3.Right, Mathf.Tau * (float)delta)\n"
"\t\t\t.Orthonormalized();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a copy of this basis rotated around the given [param axis] by the "
"given [param angle] (in radians).\n"
"The [param axis] must be a normalized vector (see [method "
"Vector3.normalized]). If [param angle] is positive, the basis is rotated "
"counter-clockwise around the axis.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis.IDENTITY\n"
"var angle = TAU / 2\n"
"\n"
"my_basis = my_basis.rotated(Vector3.UP, angle)    # Rotate around the up axis "
"(yaw).\n"
"my_basis = my_basis.rotated(Vector3.RIGHT, angle) # Rotate around the right "
"axis (pitch).\n"
"my_basis = my_basis.rotated(Vector3.BACK, angle)  # Rotate around the back "
"axis (roll).\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = Basis.Identity;\n"
"var angle = Mathf.Tau / 2.0f;\n"
"\n"
"myBasis = myBasis.Rotated(Vector3.Up, angle);    // Rotate around the up axis "
"(yaw).\n"
"myBasis = myBasis.Rotated(Vector3.Right, angle); // Rotate around the right "
"axis (pitch).\n"
"myBasis = myBasis.Rotated(Vector3.Back, angle);  // Rotate around the back "
"axis (roll).\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает копию этого базиса, повернутую вокруг заданной [param axis] на "
"заданный [param angle] (в радианах). \n"
"[param axis] должен быть нормализованным вектором (см. [method "
"Vector3.normalized]). Если [param angle] положительный, базис поворачивается "
"против часовой стрелки вокруг оси.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis.IDENTITY\n"
"var angle = TAU / 2\n"
"\n"
"my_basis = my_basis.rotated(Vector3.UP, angle)    # Вращение вокруг "
"вертикальной оси (рыскание).\n"
"my_basis = my_basis.rotated(Vector3.RIGHT, angle) # Вращение вокруг правой "
"оси (тангаж).\n"
"my_basis = my_basis.rotated(Vector3.BACK, angle)  # Вращение вокруг задней "
"оси (крен).\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = Basis.Identity;\n"
"var angle = Mathf.Tau / 2.0f;\n"
"\n"
"myBasis = myBasis.Rotated(Vector3.Up, angle);    // Вращение вокруг "
"вертикальной оси (рыскание).\n"
"myBasis = myBasis.Rotated(Vector3.Right, angle); // Вращение вокруг правой "
"оси (тангаж).\n"
"myBasis = myBasis.Rotated(Vector3.Back, angle);  // Вращение вокруг задней "
"оси (крен).\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns this basis with each axis's components scaled by the given [param "
"scale]'s components.\n"
"The basis matrix's rows are multiplied by [param scale]'s components. This "
"operation is a global scale (relative to the parent).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"\tVector3(1, 1, 1),\n"
"\tVector3(2, 2, 2),\n"
"\tVector3(3, 3, 3)\n"
")\n"
"my_basis = my_basis.scaled(Vector3(0, 2, -2))\n"
"\n"
"print(my_basis.x) # Prints (0.0, 2.0, -2.0)\n"
"print(my_basis.y) # Prints (0.0, 4.0, -4.0)\n"
"print(my_basis.z) # Prints (0.0, 6.0, -6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"\tnew Vector3(1.0f, 1.0f, 1.0f),\n"
"\tnew Vector3(2.0f, 2.0f, 2.0f),\n"
"\tnew Vector3(3.0f, 3.0f, 3.0f)\n"
");\n"
"myBasis = myBasis.Scaled(new Vector3(0.0f, 2.0f, -2.0f));\n"
"\n"
"GD.Print(myBasis.X); // Prints (0, 2, -2)\n"
"GD.Print(myBasis.Y); // Prints (0, 4, -4)\n"
"GD.Print(myBasis.Z); // Prints (0, 6, -6)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает этот базис с компонентами каждой оси, масштабированными по "
"заданным компонентам [param scale].\n"
"Строки матрицы базиса умножаются на компоненты [param scale]. Эта операция "
"является глобальной шкалой (относительно родителя).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"\tVector3(1, 1, 1),\n"
"\tVector3(2, 2, 2),\n"
"\tVector3(3, 3, 3)\n"
")\n"
"my_basis = my_basis.scaled(Vector3(0, 2, -2))\n"
"\n"
"print(my_basis.x) # Prints (0.0, 2.0, -2.0)\n"
"print(my_basis.y) # Prints (0.0, 4.0, -4.0)\n"
"print(my_basis.z) # Prints (0.0, 6.0, -6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"\tnew Vector3(1.0f, 1.0f, 1.0f),\n"
"\tnew Vector3(2.0f, 2.0f, 2.0f),\n"
"\tnew Vector3(3.0f, 3.0f, 3.0f)\n"
");\n"
"myBasis = myBasis.Scaled(new Vector3(0.0f, 2.0f, -2.0f));\n"
"\n"
"GD.Print(myBasis.X); // Prints (0, 2, -2)\n"
"GD.Print(myBasis.Y); // Prints (0, 4, -4)\n"
"GD.Print(myBasis.Z); // Prints (0, 6, -6)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns this basis with each axis scaled by the corresponding component in "
"the given [param scale].\n"
"The basis matrix's columns are multiplied by [param scale]'s components. This "
"operation is a local scale (relative to self).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"    Vector3(1, 1, 1),\n"
"    Vector3(2, 2, 2),\n"
"    Vector3(3, 3, 3)\n"
")\n"
"my_basis = my_basis.scaled_local(Vector3(0, 2, -2))\n"
"\n"
"print(my_basis.x) # Prints (0.0, 0.0, 0.0)\n"
"print(my_basis.y) # Prints (4.0, 4.0, 4.0)\n"
"print(my_basis.z) # Prints (-6.0, -6.0, -6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"    new Vector3(1.0f, 1.0f, 1.0f),\n"
"    new Vector3(2.0f, 2.0f, 2.0f),\n"
"    new Vector3(3.0f, 3.0f, 3.0f)\n"
");\n"
"myBasis = myBasis.ScaledLocal(new Vector3(0.0f, 2.0f, -2.0f));\n"
"\n"
"GD.Print(myBasis.X); // Prints (0, 0, 0)\n"
"GD.Print(myBasis.Y); // Prints (4, 4, 4)\n"
"GD.Print(myBasis.Z); // Prints (-6, -6, -6)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает этот базис, где каждая ось масштабирована по соответствующему "
"компоненту в заданном [param scale].\n"
"Столбцы базисной матрицы умножаются на компоненты [param scale]. Эта операция "
"является локальной (относительной) шкалой.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"    Vector3(1, 1, 1),\n"
"    Vector3(2, 2, 2),\n"
"    Vector3(3, 3, 3)\n"
")\n"
"my_basis = my_basis.scaled_local(Vector3(0, 2, -2))\n"
"\n"
"print(my_basis.x) # Выводит (0.0, 0.0, 0.0)\n"
"print(my_basis.y) # Выводит (4.0, 4.0, 4.0)\n"
"print(my_basis.z) # Выводит (-6.0, -6.0, -6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"    new Vector3(1.0f, 1.0f, 1.0f),\n"
"    new Vector3(2.0f, 2.0f, 2.0f),\n"
"    new Vector3(3.0f, 3.0f, 3.0f)\n"
");\n"
"myBasis = myBasis.ScaledLocal(new Vector3(0.0f, 2.0f, -2.0f));\n"
"\n"
"GD.Print(myBasis.X); // Выводит (0, 0, 0)\n"
"GD.Print(myBasis.Y); // Выводит (4, 4, 4)\n"
"GD.Print(myBasis.Z); // Выводит (-6, -6, -6)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Performs a spherical-linear interpolation with the [param to] basis, given a "
"[param weight]. Both this basis and [param to] should represent a rotation.\n"
"[b]Example:[/b] Smoothly rotate a [Node3D] to the target basis over time, "
"with a [Tween]:\n"
"[codeblock]\n"
"var start_basis = Basis.IDENTITY\n"
"var target_basis = Basis.IDENTITY.rotated(Vector3.UP, TAU / 2)\n"
"\n"
"func _ready():\n"
"\tcreate_tween().tween_method(interpolate, 0.0, 1.0, "
"5.0).set_trans(Tween.TRANS_EXPO)\n"
"\n"
"func interpolate(weight):\n"
"\tbasis = start_basis.slerp(target_basis, weight)\n"
"[/codeblock]"
msgstr ""
"Выполняет сферически-линейную интерполяцию с базисом [param to], заданным "
"[param weight]. И этот базис, и [param to] должны представлять поворот.\n"
"[b]Пример:[/b] Плавно повернуть [Node3D] к целевому базису с течением времени "
"с [Tween]:\n"
"[codeblock]\n"
"var start_basis = Basis.IDENTITY\n"
"var target_basis = Basis.IDENTITY.rotated(Vector3.UP, TAU / 2)\n"
"\n"
"func _ready():\n"
"\tcreate_tween().tween_method(interpolate, 0.0, 1.0, "
"5.0).set_trans(Tween.TRANS_EXPO)\n"
"\n"
"func interpolate(weight):\n"
"\tbasis = start_basis.slerp(target_basis, weight)\n"
"[/codeblock]"

msgid ""
"Returns the transposed dot product between [param with] and the [member x] "
"axis (see [method transposed]).\n"
"This is equivalent to [code]basis.x.dot(vector)[/code]."
msgstr ""
"Возвращает транспонированное скалярное произведение между [param with] и осью "
"[member x] (см. [method transposed]). \n"
"Это эквивалентно [code]basis.x.dot(vector)[/code]."

msgid ""
"Returns the transposed dot product between [param with] and the [member y] "
"axis (see [method transposed]).\n"
"This is equivalent to [code]basis.y.dot(vector)[/code]."
msgstr ""
"Возвращает транспонированное скалярное произведение между [param with] и осью "
"[member y] (см. [method transposed]).\n"
"Это эквивалентно [code]basis.y.dot(vector)[/code]."

msgid ""
"Returns the transposed dot product between [param with] and the [member z] "
"axis (see [method transposed]).\n"
"This is equivalent to [code]basis.z.dot(vector)[/code]."
msgstr ""
"Возвращает транспонированное скалярное произведение между [param with] и осью "
"[member z] (см. [method transposed]). \n"
"Это эквивалентно [code]basis.z.dot(vector)[/code]."

msgid ""
"Returns the transposed version of this basis. This turns the basis matrix's "
"columns into rows, and its rows into columns.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"\tVector3(1, 2, 3),\n"
"\tVector3(4, 5, 6),\n"
"\tVector3(7, 8, 9)\n"
")\n"
"my_basis = my_basis.transposed()\n"
"\n"
"print(my_basis.x) # Prints (1.0, 4.0, 7.0)\n"
"print(my_basis.y) # Prints (2.0, 5.0, 8.0)\n"
"print(my_basis.z) # Prints (3.0, 6.0, 9.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"\tnew Vector3(1.0f, 2.0f, 3.0f),\n"
"\tnew Vector3(4.0f, 5.0f, 6.0f),\n"
"\tnew Vector3(7.0f, 8.0f, 9.0f)\n"
");\n"
"myBasis = myBasis.Transposed();\n"
"\n"
"GD.Print(myBasis.X); // Prints (1, 4, 7)\n"
"GD.Print(myBasis.Y); // Prints (2, 5, 8)\n"
"GD.Print(myBasis.Z); // Prints (3, 6, 9)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает транспонированную версию этого базиса. Это превращает столбцы "
"матрицы базиса в строки, а ее строки в столбцы.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_basis = Basis(\n"
"\tVector3(1, 2, 3),\n"
"\tVector3(4, 5, 6),\n"
"\tVector3(7, 8, 9)\n"
")\n"
"my_basis = my_basis.transposed()\n"
"\n"
"print(my_basis.x) # Prints (1.0, 4.0, 7.0)\n"
"print(my_basis.y) # Prints (2.0, 5.0, 8.0)\n"
"print(my_basis.z) # Prints (3.0, 6.0, 9.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myBasis = new Basis(\n"
"\tnew Vector3(1.0f, 2.0f, 3.0f),\n"
"\tnew Vector3(4.0f, 5.0f, 6.0f),\n"
"\tnew Vector3(7.0f, 8.0f, 9.0f)\n"
");\n"
"myBasis = myBasis.Transposed();\n"
"\n"
"GD.Print(myBasis.X); // Prints (1, 4, 7)\n"
"GD.Print(myBasis.Y); // Prints (2, 5, 8)\n"
"GD.Print(myBasis.Z); // Prints (3, 6, 9)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The basis's X axis, and the column [code]0[/code] of the matrix.\n"
"On the identity basis, this vector points right ([constant Vector3.RIGHT])."
msgstr ""
"Ось X базиса и столбец [code]0[/code] матрицы.\n"
"На основе тождества этот вектор указывает вправо ([constant Vector3.RIGHT])."

msgid ""
"The basis's Y axis, and the column [code]1[/code] of the matrix.\n"
"On the identity basis, this vector points up ([constant Vector3.UP])."
msgstr ""
"Ось Y базиса и столбец [code]1[/code] матрицы.\n"
"На основе тождества этот вектор направлен вверх ([constant Vector3.UP])."

msgid ""
"The basis's Z axis, and the column [code]2[/code] of the matrix.\n"
"On the identity basis, this vector points back ([constant Vector3.BACK])."
msgstr ""
"Ось Z базиса и столбец [code]2[/code] матрицы.\n"
"На основе тождества этот вектор указывает назад ([constant Vector3.BACK])."

msgid ""
"The identity [Basis]. This is an orthonormal basis with no rotation, no "
"shear, and a scale of [constant Vector3.ONE]. This also means that:\n"
"- The [member x] points right ([constant Vector3.RIGHT]);\n"
"- The [member y] points up ([constant Vector3.UP]);\n"
"- The [member z] points back ([constant Vector3.BACK]).\n"
"[codeblock]\n"
"var basis = Basis.IDENTITY\n"
"print(\"| X | Y | Z\")\n"
"print(\"| %.f | %.f | %.f\" % [basis.x.x, basis.y.x, basis.z.x])\n"
"print(\"| %.f | %.f | %.f\" % [basis.x.y, basis.y.y, basis.z.y])\n"
"print(\"| %.f | %.f | %.f\" % [basis.x.z, basis.y.z, basis.z.z])\n"
"# Prints:\n"
"# | X | Y | Z\n"
"# | 1 | 0 | 0\n"
"# | 0 | 1 | 0\n"
"# | 0 | 0 | 1\n"
"[/codeblock]\n"
"If a [Vector3] or another [Basis] is transformed (multiplied) by this "
"constant, no transformation occurs.\n"
"[b]Note:[/b] In GDScript, this constant is equivalent to creating a "
"[constructor Basis] without any arguments. It can be used to make your code "
"clearer, and for consistency with C#."
msgstr ""
"Тождество [Basis]. Это ортонормальный базис без вращения, без сдвига и "
"масштабом [constant Vector3.ONE]. Это также означает, что:\n"
"- [member x] указывает вправо ([constant Vector3.RIGHT]);\n"
"- [member y] указывает вверх ([constant Vector3.UP]);\n"
"- [member z] указывает назад ([constant Vector3.BACK]).\n"
"[codeblock]\n"
"var basis = Basis.IDENTITY\n"
"print(\"| X | Y | Z\")\n"
"print(\"| %.f | %.f | %.f\" % [basis.x.x, basis.y.x, basis.z.x])\n"
"print(\"| %.f | %.f | %.f\" % [basis.x.y, basis.y.y, basis.z.y])\n"
"print(\"| %.f | %.f | %.f\" % [basis.x.z, basis.y.z, basis.z.z])\n"
"# Prints:\n"
"# | X | Y | Z\n"
"# | 1 | 0 | 0\n"
"# | 0 | 1 | 0\n"
"# | 0 | 0 | 1\n"
"[/codeblock]\n"
"Если [Vector3] или другой [Basis] преобразуется (умножается) на эту "
"константу, то преобразование не происходит.\n"
"[b]Примечание:[/b] В GDScript эта константа эквивалентна созданию "
"[constructor Basis] без каких-либо аргументов. Ее можно использовать для "
"того, чтобы сделать ваш код более понятным и для согласованности с C#."

msgid ""
"When any basis is multiplied by [constant FLIP_X], it negates all components "
"of the [member x] axis (the X column).\n"
"When [constant FLIP_X] is multiplied by any basis, it negates the [member "
"Vector3.x] component of all axes (the X row)."
msgstr ""
"Когда любой базис умножается на [constant FLIP_X], он инвертирует все "
"компоненты оси [member x] (столбец X).\n"
"Когда [constant FLIP_X] умножается на любой базис, он инвертирует компонент "
"[member Vector3.x] всех осей (строка X)."

msgid ""
"When any basis is multiplied by [constant FLIP_Y], it negates all components "
"of the [member y] axis (the Y column).\n"
"When [constant FLIP_Y] is multiplied by any basis, it negates the [member "
"Vector3.y] component of all axes (the Y row)."
msgstr ""
"Когда любой базис умножается на [constant FLIP_Y], он инвертирует все "
"компоненты оси [member y] (столбец Y).\n"
"Когда [constant FLIP_Y] умножается на любой базис, он инвертирует компонент "
"[member Vector3.y] всех осей (строка Y)."

msgid ""
"When any basis is multiplied by [constant FLIP_Z], it negates all components "
"of the [member z] axis (the Z column).\n"
"When [constant FLIP_Z] is multiplied by any basis, it negates the [member "
"Vector3.z] component of all axes (the Z row)."
msgstr ""
"Когда любой базис умножается на [constant FLIP_Z], он инвертирует все "
"компоненты оси [member z] (столбец Z).\n"
"Когда [constant FLIP_Z] умножается на любой базис, он инвертирует компонент "
"[member Vector3.z] всех осей (строка Z)."

msgid ""
"Returns [code]true[/code] if the components of both [Basis] matrices are not "
"equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если компоненты обеих матриц [Basis] не равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx], который более надежен."

msgid ""
"Transforms (multiplies) the [param right] basis by this basis.\n"
"This is the operation performed between parent and child [Node3D]s."
msgstr ""
"Преобразует (умножает) базис [param right] на этот базис. \n"
"Это операция, выполняемая между родительским и дочерним [Node3D]."

msgid ""
"Transforms (multiplies) the [param right] vector by this basis, returning a "
"[Vector3].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Basis that swaps the X/Z axes and doubles the scale.\n"
"var my_basis = Basis(Vector3(0, 2, 0), Vector3(2, 0, 0), Vector3(0, 0, 2))\n"
"print(my_basis * Vector3(1, 2, 3)) # Prints (4.0, 2.0, 6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Basis that swaps the X/Z axes and doubles the scale.\n"
"var myBasis = new Basis(new Vector3(0, 2, 0), new Vector3(2, 0, 0), new "
"Vector3(0, 0, 2));\n"
"GD.Print(myBasis * new Vector3(1, 2, 3)); // Prints (4, 2, 6)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Преобразует (умножает) вектор [param right] на этот базис, возвращая "
"[Vector3].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Базис, который меняет местами оси X/Z и удваивает масштаб.\n"
"var my_basis = Basis(Vector3(0, 2, 0), Vector3(2, 0, 0), Vector3(0, 0, 2))\n"
"print(my_basis * Vector3(1, 2, 3)) # Prints (4.0, 2.0, 6.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Базис, который меняет местами оси X/Z и удваивает масштаб.\n"
"var myBasis = new Basis(new Vector3(0, 2, 0), new Vector3(2, 0, 0), new "
"Vector3(0, 0, 2));\n"
"GD.Print(myBasis * new Vector3(1, 2, 3)); // Prints (4, 2, 6)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Multiplies all components of the [Basis] by the given [float]. This affects "
"the basis's scale uniformly, resizing all 3 axes by the [param right] value."
msgstr ""
"Умножает все компоненты [Basis] на заданный [float]. Это влияет на масштаб "
"базиса равномерно, изменяя размер всех 3 осей на значение [param right]."

msgid ""
"Multiplies all components of the [Basis] by the given [int]. This affects the "
"basis's scale uniformly, resizing all 3 axes by the [param right] value."
msgstr ""
"Умножает все компоненты [Basis] на заданное [int]. Это влияет на масштаб "
"базиса равномерно, изменяя размер всех 3 осей на значение [param right]."

msgid ""
"Divides all components of the [Basis] by the given [float]. This affects the "
"basis's scale uniformly, resizing all 3 axes by the [param right] value."
msgstr ""
"Делит все компоненты [Basis] на заданный [float]. Это влияет на масштаб "
"базиса равномерно, изменяя размер всех 3 осей на значение [param right]."

msgid ""
"Divides all components of the [Basis] by the given [int]. This affects the "
"basis's scale uniformly, resizing all 3 axes by the [param right] value."
msgstr ""
"Делит все компоненты [Basis] на заданное [int]. Это влияет на масштаб базиса "
"равномерно, изменяя размер всех 3 осей на значение [param right]."

msgid ""
"Returns [code]true[/code] if the components of both [Basis] matrices are "
"exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если компоненты обеих матриц [Basis] в точности "
"равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx], который более надежен."

msgid ""
"Accesses each axis (column) of this basis by their index. Index [code]0[/"
"code] is the same as [member x], index [code]1[/code] is the same as [member "
"y], and index [code]2[/code] is the same as [member z].\n"
"[b]Note:[/b] In C++, this operator accesses the rows of the basis matrix, "
"[i]not[/i] the columns. For the same behavior as scripting languages, use the "
"[code]set_column[/code] and [code]get_column[/code] methods."
msgstr ""
"Доступ к каждой оси (столбцу) этого базиса по их индексу. Индекс [code]0[/"
"code] такой же, как [member x], индекс [code]1[/code] такой же, как [member "
"y], а индекс [code]2[/code] такой же, как [member z].\n"
"[b]Примечание:[/b] В C++ этот оператор обращается к строкам матрицы базиса, "
"[i]не[/i] к столбцам. Для того же поведения, что и в языках сценариев, "
"используйте методы [code]set_column[/code] и [code]get_column[/code] ."

msgid "Boolean matrix."
msgstr "Логическая матрица."

msgid ""
"A two-dimensional array of boolean values, can be used to efficiently store a "
"binary matrix (every matrix element takes only one bit) and query the values "
"using natural cartesian coordinates."
msgstr ""
"Двумерный массив логических значений можно использовать для эффективного "
"хранения двоичной матрицы (каждый элемент матрицы занимает только один бит) и "
"запроса значений с использованием естественных декартовых координат."

msgid ""
"Returns an image of the same size as the bitmap and with an [enum "
"Image.Format] of type [constant Image.FORMAT_L8]. [code]true[/code] bits of "
"the bitmap are being converted into white pixels, and [code]false[/code] bits "
"into black."
msgstr ""
"Возвращает изображение того же размера, что и растровое изображение, и с "
"[enum Image.Format] типа [constant Image.FORMAT_L8]. [code]true[/code] битов "
"растрового изображения преобразуются в белые пиксели, а [code]false[/code] "
"битов — в черные."

msgid ""
"Creates a bitmap with the specified size, filled with [code]false[/code]."
msgstr ""
"Создает растровое изображение указанного размера, заполненное [code]false[/"
"code]."

msgid ""
"Creates a bitmap that matches the given image dimensions, every element of "
"the bitmap is set to [code]false[/code] if the alpha value of the image at "
"that position is equal to [param threshold] or less, and [code]true[/code] in "
"other case."
msgstr ""
"Создает растровое изображение, которое соответствует заданным размерам "
"изображения. Каждому элементу растрового изображения присваивается значение "
"[code]false[/code], если альфа-значение изображения в этой позиции равно "
"[param threshold] или меньше, и [code]true[/code] в противном случае."

msgid "Returns bitmap's value at the specified position."
msgstr "Возвращает значение растрового изображения в указанной позиции."

msgid "Returns bitmap's dimensions."
msgstr "Возвращает размеры изображения."

msgid "Returns the number of bitmap elements that are set to [code]true[/code]."
msgstr ""
"Возвращает количество элементов растрового изображения, для которых "
"установлено значение [code]true[/code]."

msgid ""
"Applies morphological dilation or erosion to the bitmap. If [param pixels] is "
"positive, dilation is applied to the bitmap. If [param pixels] is negative, "
"erosion is applied to the bitmap. [param rect] defines the area where the "
"morphological operation is applied. Pixels located outside the [param rect] "
"are unaffected by [method grow_mask]."
msgstr ""
"Применяет морфологическое расширение или эрозию к битовой карте. Если [param "
"pixels] положительный, к битовой карте применяется расширение. Если [param "
"pixels] отрицательный, к битовой карте применяется эрозия. [param rect] "
"определяет область, к которой применяется морфологическая операция. Пиксели, "
"расположенные за пределами [param rect], не затрагиваются [method grow_mask]."

msgid ""
"Creates an [Array] of polygons covering a rectangular portion of the bitmap. "
"It uses a marching squares algorithm, followed by Ramer-Douglas-Peucker (RDP) "
"reduction of the number of vertices. Each polygon is described as a "
"[PackedVector2Array] of its vertices.\n"
"To get polygons covering the whole bitmap, pass:\n"
"[codeblock]\n"
"Rect2(Vector2(), get_size())\n"
"[/codeblock]\n"
"[param epsilon] is passed to RDP to control how accurately the polygons cover "
"the bitmap: a lower [param epsilon] corresponds to more points in the "
"polygons."
msgstr ""
"Создает [Array] полигонов, покрывающих прямоугольную часть битовой карты. Он "
"использует алгоритм марширующих квадратов, за которым следует сокращение "
"числа вершин по Рамеру-Дугласу-Пейкеру (RDP). Каждый полигон описывается как "
"[PackedVector2Array] его вершин.\n"
"Чтобы получить полигоны, покрывающие всю битовую карту, передайте:\n"
"[codeblock]\n"
"Rect2(Vector2(), get_size())\n"
"[/codeblock]\n"
"[param epsilon] передается в RDP для управления точностью покрытия битовой "
"карты полигонами: более низкий [param epsilon] соответствует большему "
"количеству точек в полигонах."

msgid "Resizes the image to [param new_size]."
msgstr "Изменяет размер изображения до [param new_size]."

msgid ""
"Sets the bitmap's element at the specified position, to the specified value."
msgstr ""
"Устанавливает элемент растрового изображения в указанной позиции в указанное "
"значение."

msgid "Sets a rectangular portion of the bitmap to the specified value."
msgstr ""
"Устанавливает прямоугольную часть растрового изображения на указанное "
"значение."

msgid "A joint used with [Skeleton2D] to control and animate other nodes."
msgstr ""
"Соединение, используемое совместно с [Skeleton2D] для управления и анимации "
"других узлов."

msgid ""
"A hierarchy of [Bone2D]s can be bound to a [Skeleton2D] to control and "
"animate other [Node2D] nodes.\n"
"You can use [Bone2D] and [Skeleton2D] nodes to animate 2D meshes created with "
"the [Polygon2D] UV editor.\n"
"Each bone has a [member rest] transform that you can reset to with [method "
"apply_rest]. These rest poses are relative to the bone's parent.\n"
"If in the editor, you can set the rest pose of an entire skeleton using a "
"menu option, from the code, you need to iterate over the bones to set their "
"individual rest poses."
msgstr ""
"Иерархию [Bone2D] можно привязать к [Skeleton2D] для управления и анимации "
"других узлов [Node2D].\n"
"Вы можете использовать узлы [Bone2D] и [Skeleton2D] для анимации 2D-сеток, "
"созданных с помощью UV-редактора [Polygon2D].\n"
"У каждой кости есть преобразование [member rest], которое можно сбросить с "
"помощью [method apply_rest]. Эти позы покоя относятся к родительской кости.\n"
"Если в редакторе вы можете задать позу покоя всего скелета с помощью пункта "
"меню, из кода вам нужно будет перебрать кости, чтобы задать их индивидуальные "
"позы покоя."

msgid ""
"Resets the bone to the rest pose. This is equivalent to setting [member "
"Node2D.transform] to [member rest]."
msgstr ""
"Сбрасывает кость в позу покоя. Это эквивалентно установке [member "
"Node2D.transform] в [member rest]."

msgid ""
"Returns whether this [Bone2D] is going to autocalculate its length and bone "
"angle using its first [Bone2D] child node, if one exists. If there are no "
"[Bone2D] children, then it cannot autocalculate these values and will print a "
"warning."
msgstr ""
"Возвращает, будет ли этот [Bone2D] автоматически вычислять свою длину и угол "
"кости, используя свой первый дочерний узел [Bone2D], если таковой существует. "
"Если дочерних узлов [Bone2D] нет, то он не может автоматически вычислить эти "
"значения и выведет предупреждение."

msgid ""
"Returns the angle of the bone in the [Bone2D].\n"
"[b]Note:[/b] This is different from the [Bone2D]'s rotation. The bone's angle "
"is the rotation of the bone shown by the gizmo, which is unaffected by the "
"[Bone2D]'s [member Node2D.transform]."
msgstr ""
"Возвращает угол кости в [Bone2D].\n"
"[b]Примечание:[/b] Это отличается от поворота [Bone2D]. Угол кости — это "
"поворот кости, показанный гизмо (gizmo), на который не влияет [member "
"Node2D.transform] [Bone2D]."

msgid ""
"Returns the node's index as part of the entire skeleton. See [Skeleton2D]."
msgstr "Возвращает индекс узла как часть всего скелета. См. [Skeleton2D]."

msgid "Returns the length of the bone in the [Bone2D] node."
msgstr "Возвращает длину кости в узле [Bone2D]."

msgid ""
"Returns the node's [member rest] [Transform2D] if it doesn't have a parent, "
"or its rest pose relative to its parent."
msgstr ""
"Возвращает [member rest] [Transform2D] узла, если у него нет родителя, или "
"его позу покоя относительно родителя."

msgid ""
"When set to [code]true[/code], the [Bone2D] node will attempt to "
"automatically calculate the bone angle and length using the first child "
"[Bone2D] node, if one exists. If none exist, the [Bone2D] cannot "
"automatically calculate these values and will print a warning."
msgstr ""
"Если установлено значение [code]true[/code], узел [Bone2D] попытается "
"автоматически рассчитать угол и длину кости, используя первый дочерний узел "
"[Bone2D], если таковой существует. Если таковых нет, [Bone2D] не сможет "
"автоматически рассчитать эти значения и выведет предупреждение."

msgid ""
"Sets the bone angle for the [Bone2D]. This is typically set to the rotation "
"from the [Bone2D] to a child [Bone2D] node.\n"
"[b]Note:[/b] This is different from the [Bone2D]'s rotation. The bone's angle "
"is the rotation of the bone shown by the gizmo, which is unaffected by the "
"[Bone2D]'s [member Node2D.transform]."
msgstr ""
"Устанавливает угол кости для [Bone2D]. Обычно устанавливается на поворот от "
"[Bone2D] к дочернему узлу [Bone2D].\n"
"[b]Примечание:[/b] Это отличается от поворота [Bone2D]. Угол кости — это "
"поворот кости, показанный гизмо (gizmo), на который не влияет [member "
"Node2D.transform] [Bone2D]."

msgid "Sets the length of the bone in the [Bone2D]."
msgstr "Устанавливает длину кости в [Bone2D]."

msgid ""
"Rest transform of the bone. You can reset the node's transforms to this value "
"using [method apply_rest]."
msgstr ""
"Остаточное преобразование кости. Вы можете сбросить преобразования узла на "
"это значение, используя [method apply_rest]."

msgid ""
"А node that dynamically copies or overrides the 3D transform of a bone in its "
"parent [Skeleton3D]."
msgstr ""
"Узел, который динамически копирует или переопределяет 3D-преобразование кости "
"в ее родителе [Skeleton3D]."

msgid ""
"This node selects a bone in a [Skeleton3D] and attaches to it. This means "
"that the [BoneAttachment3D] node will either dynamically copy or override the "
"3D transform of the selected bone."
msgstr ""
"Этот узел выбирает кость в [Skeleton3D] и присоединяется к ней. Это означает, "
"что узел [BoneAttachment3D] будет либо динамически копировать, либо "
"переопределять 3D-преобразование выбранной кости."

msgid ""
"Returns the parent or external [Skeleton3D] node if it exists, otherwise "
"returns [code]null[/code]."
msgstr ""
"Возвращает родительский или внешний узел [Skeleton3D], если он существует, в "
"противном случае возвращает [code]null[/code]."

msgid ""
"A function that is called automatically when the [Skeleton3D] is updated. "
"This function is where the [BoneAttachment3D] node updates its position so it "
"is correctly bound when it is [i]not[/i] set to override the bone pose."
msgstr ""
"Функция, которая вызывается автоматически при обновлении [Skeleton3D]. Эта "
"функция — то, где узел [BoneAttachment3D] обновляет свое положение, чтобы оно "
"было правильно привязано, когда он [i]не[/i] настроен на переопределение позы "
"кости."

msgid "The index of the attached bone."
msgstr "Индекс прикрепленной кости."

msgid "The name of the attached bone."
msgstr "Название прикрепленной кости."

msgid "The [NodePath] to the external [Skeleton3D] node."
msgstr "[NodePath] к внешнему узлу [Skeleton3D]."

msgid ""
"Whether the [BoneAttachment3D] node will override the bone pose of the bone "
"it is attached to. When set to [code]true[/code], the [BoneAttachment3D] node "
"can change the pose of the bone. When set to [code]false[/code], the "
"[BoneAttachment3D] will always be set to the bone's transform.\n"
"[b]Note:[/b] This override performs interruptively in the skeleton update "
"process using signals due to the old design. It may cause unintended behavior "
"when used at the same time with [SkeletonModifier3D]."
msgstr ""
"Будет ли узел [BoneAttachment3D] переопределять позу кости, к которой он "
"прикреплен. Если установлено значение [code]true[/code], узел "
"[BoneAttachment3D] может изменять позу кости. Если установлено значение "
"[code]false[/code], [BoneAttachment3D] всегда будет устанавливаться на "
"преобразование кости.\n"
"[b]Примечание:[/b] Это переопределение выполняется прерывающимся образом в "
"процессе обновления скелета с использованием сигналов из-за старого дизайна. "
"Это может вызвать непреднамеренное поведение при одновременном использовании "
"с [SkeletonModifier3D]."

msgid ""
"Whether the [BoneAttachment3D] node will use an external [Skeleton3D] node "
"rather than attempting to use its parent node as the [Skeleton3D]. When set "
"to [code]true[/code], the [BoneAttachment3D] node will use the external "
"[Skeleton3D] node set in [member external_skeleton]."
msgstr ""
"Будет ли узел [BoneAttachment3D] использовать внешний узел [Skeleton3D] "
"вместо того, чтобы пытаться использовать свой родительский узел как "
"[Skeleton3D]. Если установлено значение [code]true[/code], узел "
"[BoneAttachment3D] будет использовать внешний узел [Skeleton3D], "
"установленный в [member external_skeleton]."

msgid "A node that may modify Skeleton3D's bone with associating the two bones."
msgstr ""
"Узел, который может модифицировать кость Skeleton3D, связывая две кости."

msgid ""
"Base class of [SkeletonModifier3D] that modifies the bone set in [method "
"set_apply_bone] based on the transform of the bone retrieved by [method "
"get_reference_bone]."
msgstr ""
"Базовый класс [SkeletonModifier3D], который изменяет набор костей в [method "
"set_apply_bone] на основе преобразования кости, полученного с помощью [method "
"get_reference_bone]."

msgid "Clear all settings."
msgstr "Очистить все настройки."

msgid "Returns the apply amount of the setting at [param index]."
msgstr "Возвращает примененную величину настройки в [param index]."

msgid ""
"Returns the apply bone of the setting at [param index]. This bone will be "
"modified."
msgstr ""
"Возвращает применённую настройку кости в [param index]. Эта кость будет "
"изменена."

msgid ""
"Returns the apply bone name of the setting at [param index]. This bone will "
"be modified."
msgstr ""
"Возвращает имя применяемой кости настройки в [param index]. Эта кость будет "
"изменена."

msgid ""
"Returns the reference bone of the setting at [param index].\n"
"This bone will be only referenced and not modified by this modifier."
msgstr ""
"Возвращает опорную кость настройки в [param index].\n"
"Эта кость будет только ссылаться на нее, но не будет изменена этим "
"модификатором."

msgid ""
"Returns the reference bone name of the setting at [param index].\n"
"This bone will be only referenced and not modified by this modifier."
msgstr ""
"Возвращает имя опорной кости настройки в [param index].\n"
"Эта кость будет только ссылаться на нее, но не будет изменена этим "
"модификатором."

msgid "Returns the number of settings in the modifier."
msgstr "Возвращает количество настроек в модификаторе."

msgid "Sets the apply amount of the setting at [param index] to [param amount]."
msgstr ""
"Устанавливает применяемое значение параметра [param index] на [param amount]."

msgid ""
"Sets the apply bone of the setting at [param index] to [param bone]. This "
"bone will be modified."
msgstr ""
"Устанавливает применяемую кость настройки в [param index] на [param bone]. "
"Эта кость будет изменена."

msgid ""
"Sets the apply bone of the setting at [param index] to [param bone_name]. "
"This bone will be modified."
msgstr ""
"Устанавливает применяемую кость настройки в [param index] на [param "
"bone_name]. Эта кость будет изменена."

msgid ""
"Sets the reference bone of the setting at [param index] to [param bone].\n"
"This bone will be only referenced and not modified by this modifier."
msgstr ""
"Устанавливает опорную кость настройки в [param index] на [param bone].\n"
"Эта кость будет только ссылаться на нее, но не будет изменена этим "
"модификатором."

msgid ""
"Sets the reference bone of the setting at [param index] to [param "
"bone_name].\n"
"This bone will be only referenced and not modified by this modifier."
msgstr ""
"Устанавливает опорную кость настройки в [param index] на [param bone_name].\n"
"Эта кость будет только ссылаться на нее, но не будет изменена этим "
"модификатором."

msgid "Sets the number of settings in the modifier."
msgstr "Задает количество настроек в модификаторе."

msgid ""
"Describes a mapping of bone names for retargeting [Skeleton3D] into common "
"names defined by a [SkeletonProfile]."
msgstr ""
"Описывает сопоставление названий костей для перенацеливания [Skeleton3D] на "
"общие названия, определяемые [SkeletonProfile]."

msgid ""
"This class contains a dictionary that uses a list of bone names in "
"[SkeletonProfile] as key names.\n"
"By assigning the actual [Skeleton3D] bone name as the key value, it maps the "
"[Skeleton3D] to the [SkeletonProfile]."
msgstr ""
"Этот класс содержит словарь, который использует список имен костей в "
"[SkeletonProfile] в качестве имен ключей.\n"
"Назначая фактическое имя кости [Skeleton3D] в качестве значения ключа, он "
"сопоставляет [Skeleton3D] с [SkeletonProfile]."

msgid "Retargeting 3D Skeletons"
msgstr "Ретаргетинг 3D-скелетов"

msgid ""
"Returns a profile bone name having [param skeleton_bone_name]. If not found, "
"an empty [StringName] will be returned.\n"
"In the retargeting process, the returned bone name is the bone name of the "
"target skeleton."
msgstr ""
"Возвращает имя кости профиля, имеющее [param skeleton_bone_name]. Если не "
"найдено, будет возвращено пустое [StringName].\n"
"В процессе перенацеливания возвращаемое имя кости — это имя кости целевого "
"скелета."

msgid ""
"Returns a skeleton bone name is mapped to [param profile_bone_name].\n"
"In the retargeting process, the returned bone name is the bone name of the "
"source skeleton."
msgstr ""
"Возвращает имя кости скелета, сопоставленное с [param profile_bone_name].\n"
"В процессе перенацеливания возвращаемое имя кости является именем кости "
"исходного скелета."

msgid ""
"Maps a skeleton bone name to [param profile_bone_name].\n"
"In the retargeting process, the setting bone name is the bone name of the "
"source skeleton."
msgstr ""
"Сопоставляет имя кости скелета с [param profile_bone_name].\n"
"В процессе перенацеливания имя кости настройки — это имя кости исходного "
"скелета."

msgid ""
"A [SkeletonProfile] of the mapping target. Key names in the [BoneMap] are "
"synchronized with it."
msgstr ""
"[SkeletonProfile] цели отображения. Ключевые имена в [BoneMap] "
"синхронизированы с ним."

msgid ""
"This signal is emitted when change the key value in the [BoneMap]. This is "
"used to validate mapping and to update [BoneMap] editor."
msgstr ""
"Этот сигнал выдается при изменении значения ключа в [BoneMap]. Он "
"используется для проверки сопоставления и обновления редактора [BoneMap]."

msgid ""
"This signal is emitted when change the value in profile or change the "
"reference of profile. This is used to update key names in the [BoneMap] and "
"to redraw the [BoneMap] editor."
msgstr ""
"Этот сигнал выдается при изменении значения в профиле или изменении ссылки на "
"профиль. Он используется для обновления имен ключей в [BoneMap] и для "
"перерисовки редактора [BoneMap]."

msgid "A built-in boolean type."
msgstr "Встроенный логический тип."

msgid ""
"The [bool] is a built-in [Variant] type that may only store one of two "
"values: [code]true[/code] or [code]false[/code]. You can imagine it as a "
"switch that can be either turned on or off, or as a binary digit that can "
"either be 1 or 0.\n"
"Booleans can be directly used in [code]if[/code], and other conditional "
"statements:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var can_shoot = true\n"
"if can_shoot:\n"
"\tlaunch_bullet()\n"
"[/gdscript]\n"
"[csharp]\n"
"bool canShoot = true;\n"
"if (canShoot)\n"
"{\n"
"\tLaunchBullet();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"All comparison operators return booleans ([code]==[/code], [code]>[/code], "
"[code]<=[/code], etc.). As such, it is not necessary to compare booleans "
"themselves. You do not need to add [code]== true[/code] or [code]== false[/"
"code].\n"
"Booleans can be combined with the logical operators [code]and[/code], "
"[code]or[/code], [code]not[/code] to create complex conditions:\n"
"[codeblocks]\n"
"[gdscript]\n"
"if bullets > 0 and not is_reloading():\n"
"\tlaunch_bullet()\n"
"\n"
"if bullets == 0 or is_reloading():\n"
"\tplay_clack_sound()\n"
"[/gdscript]\n"
"[csharp]\n"
"if (bullets > 0 && !IsReloading())\n"
"{\n"
"\tLaunchBullet();\n"
"}\n"
"\n"
"if (bullets == 0 || IsReloading())\n"
"{\n"
"\tPlayClackSound();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In modern programming languages, logical operators are evaluated "
"in order. All remaining conditions are skipped if their result would have no "
"effect on the final value. This concept is known as [url=https://"
"en.wikipedia.org/wiki/Short-circuit_evaluation]short-circuit evaluation[/url] "
"and can be useful to avoid evaluating expensive conditions in some "
"performance-critical cases.\n"
"[b]Note:[/b] By convention, built-in methods and properties that return "
"booleans are usually defined as yes-no questions, single adjectives, or "
"similar ([method String.is_empty], [method Node.can_process], [member "
"Camera2D.enabled], etc.)."
msgstr ""
"[bool] — это встроенный тип [Variant], который может хранить только одно из "
"двух значений: [code]true[/code] или [code]false[/code]. Вы можете "
"представить его как переключатель, который может быть включен или выключен, "
"или как двоичную цифру, которая может быть 1 или 0.\n"
"Булевы значения можно напрямую использовать в [code]if[/code] и других "
"условных операторах:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var can_shoot = true\n"
"if can_shoot:\n"
"\tlaunch_bullet()\n"
"[/gdscript]\n"
"[csharp]\n"
"bool canShoot = true;\n"
"if (canShoot)\n"
"{\n"
"\tLaunchBullet();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Все операторы сравнения возвращают логические значения ([code]==[/code], "
"[code]>[/code], [code]<=[/code] и т. д.). Таким образом, нет необходимости "
"сравнивать сами логические значения. Вам не нужно добавлять [code]== true[/"
"code] или [code]== false[/code].\n"
"Логические значения можно комбинировать с логическими операторами [code]and[/"
"code], [code]or[/code], [code]not[/code] для создания сложных условий:\n"
"[codeblocks]\n"
"[gdscript]\n"
"if bullets > 0 and not is_reloading():\n"
"\tlaunch_bullet()\n"
"\n"
"if bullets == 0 or is_reloading():\n"
"\tplay_clack_sound()\n"
"[/gdscript]\n"
"[csharp]\n"
"if (bullets > 0 && !IsReloading())\n"
"{\n"
"\tLaunchBullet();\n"
"}\n"
"\n"
"if (bullets == 0 || IsReloading())\n"
"{\n"
"\tPlayClackSound();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В современных языках программирования логические операторы "
"оцениваются по порядку. Все оставшиеся условия пропускаются, если их "
"результат не повлияет на конечное значение. Эта концепция известна как "
"[url=https://en.wikipedia.org/wiki/Short-circuit_evaluation]оценка короткого "
"замыкания[/url] и может быть полезна для избежания оценки дорогостоящих "
"условий в некоторых критических для производительности случаях.\n"
"[b]Примечание:[/b] По соглашению встроенные методы и свойства, возвращающие "
"логические значения, обычно определяются как вопросы типа «да-нет», отдельные "
"прилагательные или тому подобное ([method String.is_empty], [method "
"Node.can_process], [member Camera2D.enabled] и т. д.)."

msgid "Constructs a [bool] set to [code]false[/code]."
msgstr "Создает [bool] со значением [code]false[/code]."

msgid "Constructs a [bool] as a copy of the given [bool]."
msgstr "Создает [bool] как копию заданного [bool]."

msgid ""
"Cast a [float] value to a boolean value. Returns [code]false[/code] if [param "
"from] is equal to [code]0.0[/code] (including [code]-0.0[/code]), and "
"[code]true[/code] for all other values (including [constant @GDScript.INF] "
"and [constant @GDScript.NAN])."
msgstr ""
"Привести значение [float] к логическому значению. Возвращает [code]false[/"
"code], если [param from] равен [code]0.0[/code] (включая [code]-0.0[/code]), "
"и [code]true[/code] для всех других значений (включая [constant "
"@GDScript.INF] и [constant @GDScript.NAN])."

msgid ""
"Cast an [int] value to a boolean value. Returns [code]false[/code] if [param "
"from] is equal to [code]0[/code], and [code]true[/code] for all other values."
msgstr ""
"Привести значение [int] к логическому значению. Возвращает [code]false[/"
"code], если [param from] равен [code]0[/code], и [code]true[/code] для всех "
"остальных значений."

msgid ""
"Returns [code]true[/code] if the two booleans are not equal. That is, one is "
"[code]true[/code] and the other is [code]false[/code]. This operation can be "
"seen as a logical XOR."
msgstr ""
"Возвращает [code]true[/code], если два булевых значения не равны. То есть "
"одно из них [code]true[/code], а другое [code]false[/code]. Эту операцию "
"можно рассматривать как логическое XOR."

msgid ""
"Returns [code]true[/code] if the left operand is [code]false[/code] and the "
"right operand is [code]true[/code]."
msgstr ""
"Возвращает [code]true[/code] , если левый операнд равен [code]false[/code], а "
"правый операнд равен [code]true[/code]."

msgid ""
"Returns [code]true[/code] if the two booleans are equal. That is, both are "
"[code]true[/code] or both are [code]false[/code]. This operation can be seen "
"as a logical EQ or XNOR."
msgstr ""
"Возвращает [code]true[/code], если два булевых значения равны. То есть оба "
"[code]true[/code] или оба [code]false[/code]. Эту операцию можно "
"рассматривать как логическое EQ или XNOR."

msgid ""
"Returns [code]true[/code] if the left operand is [code]true[/code] and the "
"right operand is [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если левый операнд равен [code]true[/code], а "
"правый операнд равен [code]false[/code]."

msgid "A container that arranges its child controls horizontally or vertically."
msgstr ""
"Контейнер, который располагает свои дочерние элементы управления "
"горизонтально или вертикально."

msgid ""
"A container that arranges its child controls horizontally or vertically, "
"rearranging them automatically when their minimum size changes."
msgstr ""
"Контейнер, который располагает свои дочерние элементы управления "
"горизонтально или вертикально, автоматически перестраивая их при изменении их "
"минимального размера."

msgid ""
"Adds a [Control] node to the box as a spacer. If [param begin] is [code]true[/"
"code], it will insert the [Control] node in front of all other children."
msgstr ""
"Добавляет узел [Control] в поле в качестве разделителя. Если [param begin] "
"равен [code]true[/code], он вставит узел [Control] перед всеми остальными "
"дочерними элементами."

msgid ""
"The alignment of the container's children (must be one of [constant "
"ALIGNMENT_BEGIN], [constant ALIGNMENT_CENTER], or [constant ALIGNMENT_END])."
msgstr ""
"Выравнивание дочерних элементов контейнера (должно быть одним из [constant "
"ALIGNMENT_BEGIN], [constant ALIGNMENT_CENTER] или [constant ALIGNMENT_END])."

msgid ""
"If [code]true[/code], the [BoxContainer] will arrange its children "
"vertically, rather than horizontally.\n"
"Can't be changed when using [HBoxContainer] and [VBoxContainer]."
msgstr ""
"Если [code]true[/code], [BoxContainer] расположит свои дочерние элементы "
"вертикально, а не горизонтально.\n"
"Нельзя изменить при использовании [HBoxContainer] и [VBoxContainer]."

msgid ""
"The child controls will be arranged at the beginning of the container, i.e. "
"top if orientation is vertical, left if orientation is horizontal (right for "
"RTL layout)."
msgstr ""
"Дочерние элементы управления будут расположены в начале контейнера, т. е. "
"сверху, если ориентация вертикальная, слева, если ориентация горизонтальная "
"(справа для макета RTL)."

msgid "The child controls will be centered in the container."
msgstr "Дочерние элементы управления будут размещены в центре контейнера."

msgid ""
"The child controls will be arranged at the end of the container, i.e. bottom "
"if orientation is vertical, right if orientation is horizontal (left for RTL "
"layout)."
msgstr ""
"Дочерние элементы управления будут располагаться в конце контейнера, т. е. "
"внизу, если ориентация вертикальная, справа, если ориентация горизонтальная "
"(слева для макета RTL)."

msgid "The space between the [BoxContainer]'s elements, in pixels."
msgstr "Расстояние между элементами [BoxContainer] в пикселях."

msgid "Generate an axis-aligned box [PrimitiveMesh]."
msgstr "Создаёт выровненный по осям куб [PrimitiveMesh]."

msgid ""
"Generate an axis-aligned box [PrimitiveMesh].\n"
"The box's UV layout is arranged in a 3×2 layout that allows texturing each "
"face individually. To apply the same texture on all faces, change the "
"material's UV property to [code]Vector3(3, 2, 1)[/code]. This is equivalent "
"to adding [code]UV *= vec2(3.0, 2.0)[/code] in a vertex shader.\n"
"[b]Note:[/b] When using a large textured [BoxMesh] (e.g. as a floor), you may "
"stumble upon UV jittering issues depending on the camera angle. To solve "
"this, increase [member subdivide_depth], [member subdivide_height] and "
"[member subdivide_width] until you no longer notice UV jittering."
msgstr ""
"Создайте выровненный по осям ящик [PrimitiveMesh].\n"
"UV-макет ящика организован в макете 3×2, что позволяет текстурировать каждую "
"грань по отдельности. Чтобы применить одну и ту же текстуру ко всем граням, "
"измените свойство UV материала на [code]Vector3(3, 2, 1)[/code]. Это "
"эквивалентно добавлению [code]UV *= vec2(3.0, 2.0)[/code] в вершинный "
"шейдер.\n"
"[b]Примечание:[/b] При использовании большого текстурированного [BoxMesh] "
"(например, в качестве пола) вы можете столкнуться с проблемами дрожания UV в "
"зависимости от угла камеры. Чтобы решить эту проблему, увеличивайте [member "
"subdivide_depth], [member subdivide_height] и [member subdivide_width] до тех "
"пор, пока вы не перестанете замечать дрожание UV."

msgid "The box's width, height and depth."
msgstr "Ширина, высота и глубина коробки."

msgid "Number of extra edge loops inserted along the Z axis."
msgstr "Количество дополнительных краевых петель, вставленных вдоль оси Z."

msgid "Number of extra edge loops inserted along the Y axis."
msgstr "Количество дополнительных краевых петель, вставленных вдоль оси Y."

msgid "Number of extra edge loops inserted along the X axis."
msgstr "Количество дополнительных краевых петель, вставленных вдоль оси X."

msgid "Cuboid shape for use with occlusion culling in [OccluderInstance3D]."
msgstr ""
"Кубовидная форма для использования с отбраковкой окклюзии в "
"[OccluderInstance3D]."

msgid ""
"[BoxOccluder3D] stores a cuboid shape that can be used by the engine's "
"occlusion culling system.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[BoxOccluder3D] хранит кубоидную форму, которую может использовать система "
"отсечения окклюзии движка.\n"
"Инструкции по настройке отсечения окклюзии см. в документации "
"[OccluderInstance3D]."

msgid "The box's size in 3D units."
msgstr "Размер коробки в 3D-единицах."

msgid "A 3D box shape used for physics collision."
msgstr "Трехмерная форма куба, используемая для физического столкновения."

msgid ""
"A 3D box shape, intended for use in physics. Usually used to provide a shape "
"for a [CollisionShape3D].\n"
"[b]Performance:[/b] [BoxShape3D] is fast to check collisions against. It is "
"faster than [CapsuleShape3D] and [CylinderShape3D], but slower than "
"[SphereShape3D]."
msgstr ""
"Форма 3D-коробки, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape3D].\n"
"[b]Производительность:[/b] [BoxShape3D] быстро проверяет столкновения. Он "
"быстрее, чем [CapsuleShape3D] и [CylinderShape3D], но медленнее, чем "
"[SphereShape3D]."

msgid "3D Kinematic Character Demo"
msgstr "Демонстрация 3D-кинематического персонажа"

msgid "A themed button that can contain text and an icon."
msgstr "Тематическая кнопка, которая может содержать текст и значок."

msgid ""
"[Button] is the standard themed button. It can contain text and an icon, and "
"it will display them according to the current [Theme].\n"
"[b]Example:[/b] Create a button and connect a method that will be called when "
"the button is pressed:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar button = Button.new()\n"
"\tbutton.text = \"Click me\"\n"
"\tbutton.pressed.connect(_button_pressed)\n"
"\tadd_child(button)\n"
"\n"
"func _button_pressed():\n"
"\tprint(\"Hello world!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar button = new Button();\n"
"\tbutton.Text = \"Click me\";\n"
"\tbutton.Pressed += ButtonPressed;\n"
"\tAddChild(button);\n"
"}\n"
"\n"
"private void ButtonPressed()\n"
"{\n"
"\tGD.Print(\"Hello world!\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node.\n"
"[b]Note:[/b] Buttons do not detect touch input and therefore don't support "
"multitouch, since mouse emulation can only press one button at a given time. "
"Use [TouchScreenButton] for buttons that trigger gameplay movement or actions."
msgstr ""
"[Button] — это стандартная тематическая кнопка. Она может содержать текст и "
"значок, и она будет отображать их в соответствии с текущей [Theme].\n"
"[b]Пример:[/b] Создайте кнопку и подключите метод, который будет вызываться "
"при нажатии кнопки:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar button = Button.new()\n"
"\tbutton.text = \"Click me\"\n"
"\tbutton.pressed.connect(_button_pressed)\n"
"\tadd_child(button)\n"
"\n"
"func _button_pressed():\n"
"\tprint(\"Hello world!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar button = new Button();\n"
"\tbutton.Text = \"Click me\";\n"
"\tbutton.Pressed += ButtonPressed;\n"
"\tAddChild(button);\n"
"}\n"
"\n"
"private void ButtonPressed()\n"
"{\n"
"\tGD.Print(\"Hello world!\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. также [BaseButton], который содержит общие свойства и методы, связанные с "
"этим узлом.\n"
"[b]Примечание:[/b] Кнопки не обнаруживают сенсорный ввод и, следовательно, не "
"поддерживают мультитач, поскольку эмуляция мыши может нажимать только одну "
"кнопку в определенный момент времени. Используйте [TouchScreenButton] для "
"кнопок, которые запускают игровое движение или действия."

msgid "Operating System Testing Demo"
msgstr "Демонстрация тестирования операционной системы"

msgid "Text alignment policy for the button's text."
msgstr "Правила выравнивания текста кнопки."

msgid ""
"If set to something other than [constant TextServer.AUTOWRAP_OFF], the text "
"gets wrapped inside the node's bounding rectangle."
msgstr ""
"Если задано значение, отличное от [constant TextServer.AUTOWRAP_OFF], текст "
"будет заключен внутри ограничивающего прямоугольника узла."

msgid ""
"Autowrap space trimming flags. See [constant "
"TextServer.BREAK_TRIM_START_EDGE_SPACES] and [constant "
"TextServer.BREAK_TRIM_END_EDGE_SPACES] for more info."
msgstr ""
"Флаги обрезки пространства автопереноса. См. [constant "
"TextServer.BREAK_TRIM_START_EDGE_SPACES] и [constant "
"TextServer.BREAK_TRIM_END_EDGE_SPACES] для получения дополнительной "
"информации."

msgid ""
"If [code]true[/code], text that is too large to fit the button is clipped "
"horizontally. If [code]false[/code], the button will always be wide enough to "
"hold the text. The text is not vertically clipped, and the button's height is "
"not affected by this property."
msgstr ""
"Если [code]true[/code], текст, который слишком велик для кнопки, обрезается "
"по горизонтали. Если [code]false[/code], кнопка всегда будет достаточно "
"широкой, чтобы вместить текст. Текст не обрезается по вертикали, и высота "
"кнопки не зависит от этого свойства."

msgid ""
"When enabled, the button's icon will expand/shrink to fit the button's size "
"while keeping its aspect. See also [theme_item icon_max_width]."
msgstr ""
"При включении значок кнопки будет расширяться/уменьшаться, чтобы "
"соответствовать размеру кнопки, сохраняя при этом ее аспект. См. также "
"[theme_item icon_max_width]."

msgid "Flat buttons don't display decoration."
msgstr "На плоских кнопках не отображается оформление."

msgid ""
"Button's icon, if text is present the icon will be placed before the text.\n"
"To edit margin and spacing of the icon, use [theme_item h_separation] theme "
"property and [code]content_margin_*[/code] properties of the used "
"[StyleBox]es."
msgstr ""
"Значок кнопки, если текст присутствует, значок будет помещен перед текстом.\n"
"Чтобы изменить поле и интервал значка, используйте свойство темы [theme_item "
"h_separation] и свойства [code]content_margin_*[/code] используемых "
"[StyleBox]es."

msgid ""
"Specifies if the icon should be aligned horizontally to the left, right, or "
"center of a button. Uses the same [enum HorizontalAlignment] constants as the "
"text alignment. If centered horizontally and vertically, text will draw on "
"top of the icon."
msgstr ""
"Указывает, должен ли значок быть выровнен горизонтально по левому, правому "
"или центру кнопки. Использует те же константы [enum HorizontalAlignment], что "
"и выравнивание текста. Если центрировать по горизонтали и вертикали, текст "
"будет отрисован поверх значка."

msgid ""
"Language code used for line-breaking and text shaping algorithms, if left "
"empty current locale is used instead."
msgstr ""
"Код языка, используемый для алгоритмов переноса строк и формирования текста. "
"Если оставить его пустым, вместо него будет использоваться текущая локаль "
"(место действия)."

msgid "The button's text that will be displayed inside the button's area."
msgstr "Текст кнопки, который будет отображаться внутри области кнопки."

msgid "Base text writing direction."
msgstr "Направление написания базового текста."

msgid ""
"Sets the clipping behavior when the text exceeds the node's bounding "
"rectangle."
msgstr ""
"Устанавливает поведение обрезки, когда текст выходит за пределы "
"ограничивающего прямоугольника узла."

msgid ""
"Specifies if the icon should be aligned vertically to the top, bottom, or "
"center of a button. Uses the same [enum VerticalAlignment] constants as the "
"text alignment. If centered horizontally and vertically, text will draw on "
"top of the icon."
msgstr ""
"Указывает, должен ли значок быть выровнен вертикально по верху, низу или "
"центру кнопки. Использует те же константы [enum VerticalAlignment], что и "
"выравнивание текста. Если центрировать по горизонтали и вертикали, текст "
"будет отрисован поверх значка."

msgid "Default text [Color] of the [Button]."
msgstr "Текст по умолчанию [Color] [Button]."

msgid "Text [Color] used when the [Button] is disabled."
msgstr "Текст [Color] используется, когда [Button] отключена."

msgid ""
"Text [Color] used when the [Button] is focused. Only replaces the normal text "
"color of the button. Disabled, hovered, and pressed states take precedence "
"over this color."
msgstr ""
"Текст [Color], используемый, когда [Button] находится в фокусе. Заменяет "
"только обычный цвет текста кнопки. Отключенные, наведенные и нажатые "
"состояния имеют приоритет над этим цветом."

msgid "Text [Color] used when the [Button] is being hovered."
msgstr "Текст [Color], используемый при наведении курсора на [Button]."

msgid "Text [Color] used when the [Button] is being hovered and pressed."
msgstr "[Color] текста, используемый при наведении и нажатии [Button]."

msgid "The tint of text outline of the [Button]."
msgstr "Оттенок контура текста [Button]."

msgid "Text [Color] used when the [Button] is being pressed."
msgstr "Текст [Цвет], используемый при нажатии [Кнопки]."

msgid "Icon modulate [Color] used when the [Button] is disabled."
msgstr "Значок модуляции [Цвета] используется, когда [Кнопка] отключена."

msgid ""
"Icon modulate [Color] used when the [Button] is focused. Only replaces the "
"normal modulate color of the button. Disabled, hovered, and pressed states "
"take precedence over this color."
msgstr ""
"Значок modulate [Color] используется, когда [Button] находится в фокусе. "
"Заменяет только обычный цвет modulate кнопки. Отключенные, наведенные и "
"нажатые состояния имеют приоритет над этим цветом."

msgid "Icon modulate [Color] used when the [Button] is being hovered."
msgstr ""
"Значок модуляции [Color], используемый при наведении курсора на [Button]."

msgid ""
"Icon modulate [Color] used when the [Button] is being hovered and pressed."
msgstr ""
"Значок модуляции [Color], используемый при наведении и нажатии [Button]."

msgid "Default icon modulate [Color] of the [Button]."
msgstr "Значок по умолчанию модулирует [Color] [Button]."

msgid "Icon modulate [Color] used when the [Button] is being pressed."
msgstr "Модуляция иконки [Color], используемый при нажатии [Button]."

msgid ""
"This constant acts as a boolean. If [code]true[/code], the minimum size of "
"the button and text/icon alignment is always based on the largest stylebox "
"margins, otherwise it's based on the current button state stylebox margins."
msgstr ""
"Эта константа действует как логическое значение. Если [code]true[/code], "
"минимальный размер кнопки и выравнивание текста/значка всегда основаны на "
"самых больших полях stylebox, в противном случае они основаны на полях "
"stylebox текущего состояния кнопки."

msgid ""
"The horizontal space between [Button]'s icon and text. Negative values will "
"be treated as [code]0[/code] when used."
msgstr ""
"Горизонтальное пространство между значком [Button] и текстом. Отрицательные "
"значения будут рассматриваться как [code]0[/code] при использовании."

msgid ""
"The maximum allowed width of the [Button]'s icon. This limit is applied on "
"top of the default size of the icon, or its expanded size if [member "
"expand_icon] is [code]true[/code]. The height is adjusted according to the "
"icon's ratio. If the button has additional icons (e.g. [CheckBox]), they will "
"also be limited."
msgstr ""
"Максимально допустимая ширина значка [Button]. Это ограничение применяется "
"поверх размера значка по умолчанию или его расширенного размера, если [member "
"expand_icon] равно [code]true[/code]. Высота регулируется в соответствии с "
"соотношением значка. Если у кнопки есть дополнительные значки (например, "
"[CheckBox]), они также будут ограничены."

msgid ""
"Additional vertical spacing between lines (in pixels), spacing is added to "
"line descent. This value can be negative."
msgstr ""
"Дополнительный вертикальный интервал между строками (в пикселях), интервал "
"добавляется к спуску строки. Это значение может быть отрицательным."

msgid ""
"The size of the text outline.\n"
"[b]Note:[/b] If using a font with [member "
"FontFile.multichannel_signed_distance_field] enabled, its [member "
"FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of "
"[theme_item outline_size] for outline rendering to look correct. Otherwise, "
"the outline may appear to be cut off earlier than intended."
msgstr ""
"Размер контура текста.\n"
"[b]Примечание:[/b] При использовании шрифта с включенным [member "
"FontFile.multichannel_signed_distance_field] его [member "
"FontFile.msdf_pixel_range] должен быть установлен как минимум в [i]дважды[/i] "
"значения [theme_item outline_size], чтобы контур выглядел правильно. В "
"противном случае контур может оказаться обрезанным раньше, чем предполагалось."

msgid "[Font] of the [Button]'s text."
msgstr "[Font] текста [Button]."

msgid "Font size of the [Button]'s text."
msgstr "Размер шрифта текста [Button]."

msgid ""
"Default icon for the [Button]. Appears only if [member icon] is not assigned."
msgstr ""
"Значок по умолчанию для [Button]. Появляется только если [member icon] не "
"назначен."

msgid "[StyleBox] used when the [Button] is disabled."
msgstr "[StyleBox] используется, когда [Button] отключена."

msgid ""
"[StyleBox] used when the [Button] is disabled (for right-to-left layouts)."
msgstr ""
"[StyleBox] используется, когда [Button] отключена (для макетов текста справа "
"налево)."

msgid ""
"[StyleBox] used when the [Button] is focused. The [theme_item focus] "
"[StyleBox] is displayed [i]over[/i] the base [StyleBox], so a partially "
"transparent [StyleBox] should be used to ensure the base [StyleBox] remains "
"visible. A [StyleBox] that represents an outline or an underline works well "
"for this purpose. To disable the focus visual effect, assign a "
"[StyleBoxEmpty] resource. Note that disabling the focus visual effect will "
"harm keyboard/controller navigation usability, so this is not recommended for "
"accessibility reasons."
msgstr ""
"[StyleBox] используется, когда [Button] находится в фокусе. [Theme_item "
"focus] [StyleBox] отображается [i]над[/i] базовым [StyleBox], поэтому следует "
"использовать частично прозрачный [StyleBox], чтобы базовый [StyleBox] "
"оставался видимым. [StyleBox], представляющий контур или подчеркивание, "
"хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, "
"назначьте ресурс [StyleBoxEmpty]. Обратите внимание, что отключение "
"визуального эффекта фокуса навредит удобству использования навигации с "
"помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям "
"доступности."

msgid "[StyleBox] used when the [Button] is being hovered."
msgstr "[StyleBox] используется при наведении курсора на [Button]."

msgid ""
"[StyleBox] used when the [Button] is being hovered (for right-to-left "
"layouts)."
msgstr ""
"[StyleBox] используется при наведении курсора на [Button] (для макетов с "
"направлением справа налево)."

msgid ""
"[StyleBox] used when the [Button] is being pressed and hovered at the same "
"time."
msgstr ""
"[StyleBox] используется, когда [Button] нажата и одновременно находится под "
"курсором."

msgid ""
"[StyleBox] used when the [Button] is being pressed and hovered at the same "
"time (for right-to-left layouts)."
msgstr ""
"[StyleBox] используется при одновременном нажатии и наведении курсора на "
"[Кнопка] (для макетов с направлением справа налево)."

msgid "Default [StyleBox] for the [Button]."
msgstr "[StyleBox] по умолчанию для [Кнопки]."

msgid "Default [StyleBox] for the [Button] (for right-to-left layouts)."
msgstr "[StyleBox] по умолчанию для [Button] (для макетов справа налево)."

msgid "[StyleBox] used when the [Button] is being pressed."
msgstr "[StyleBox] используется при нажатии [Button]."

msgid ""
"[StyleBox] used when the [Button] is being pressed (for right-to-left "
"layouts)."
msgstr ""
"[StyleBox] используется при нажатии [Button] (для макетов с направлением "
"справа налево)."

msgid ""
"A group of buttons that doesn't allow more than one button to be pressed at a "
"time."
msgstr "Группа кнопок, не позволяющая нажимать более одной кнопки одновременно."

msgid ""
"A group of [BaseButton]-derived buttons. The buttons in a [ButtonGroup] are "
"treated like radio buttons: No more than one button can be pressed at a time. "
"Some types of buttons (such as [CheckBox]) may have a special appearance in "
"this state.\n"
"Every member of a [ButtonGroup] should have [member BaseButton.toggle_mode] "
"set to [code]true[/code]."
msgstr ""
"Группа кнопок, производных от [BaseButton]. Кнопки в [ButtonGroup] "
"рассматриваются как радиокнопки: одновременно можно нажать не более одной "
"кнопки. Некоторые типы кнопок (например, [CheckBox]) могут иметь особый вид в "
"этом состоянии.\n"
"Каждый член [ButtonGroup] должен иметь [member BaseButton.toggle_mode], "
"установленный на [code]true[/code]."

msgid ""
"Returns an [Array] of [Button]s who have this as their [ButtonGroup] (see "
"[member BaseButton.button_group])."
msgstr ""
"Возвращает [Array] [Button]-ок, у которых это значение равно [ButtonGroup] "
"(см. [member BaseButton.button_group])."

msgid "Returns the current pressed button."
msgstr "Возвращает текущую нажатую кнопку."

msgid ""
"If [code]true[/code], it is possible to unpress all buttons in this "
"[ButtonGroup]."
msgstr "Если [code]true[/code], можно отжать все кнопки в этой [ButtonGroup]."

msgid "Emitted when one of the buttons of the group is pressed."
msgstr "Издается при нажатии одной из кнопок группы."

msgid "A built-in type representing a method or a standalone function."
msgstr "Встроенный тип, представляющий метод или отдельную функцию."

msgid ""
"[Callable] is a built-in [Variant] type that represents a function. It can "
"either be a method within an [Object] instance, or a custom callable used for "
"different purposes (see [method is_custom]). Like all [Variant] types, it can "
"be stored in variables and passed to other functions. It is most commonly "
"used for signal callbacks.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func print_args(arg1, arg2, arg3 = \"\"):\n"
"\tprints(arg1, arg2, arg3)\n"
"\n"
"func test():\n"
"\tvar callable = Callable(self, \"print_args\")\n"
"\tcallable.call(\"hello\", \"world\")  # Prints \"hello world \".\n"
"\tcallable.call(Vector2.UP, 42, callable)  # Prints \"(0.0, -1.0) 42 "
"Node(node.gd)::print_args\"\n"
"\tcallable.call(\"invalid\")  # Invalid call, should have at least 2 "
"arguments.\n"
"[/gdscript]\n"
"[csharp]\n"
"// Default parameter values are not supported.\n"
"public void PrintArgs(Variant arg1, Variant arg2, Variant arg3 = default)\n"
"{\n"
"\tGD.PrintS(arg1, arg2, arg3);\n"
"}\n"
"\n"
"public void Test()\n"
"{\n"
"\t// Invalid calls fail silently.\n"
"\tCallable callable = new Callable(this, MethodName.PrintArgs);\n"
"\tcallable.Call(\"hello\", \"world\"); // Default parameter values are not "
"supported, should have 3 arguments.\n"
"\tcallable.Call(Vector2.Up, 42, callable); // Prints \"(0, -1) 42 "
"Node(Node.cs)::PrintArgs\"\n"
"\tcallable.Call(\"invalid\"); // Invalid call, should have 3 arguments.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In GDScript, it's possible to create lambda functions within a method. Lambda "
"functions are custom callables that are not associated with an [Object] "
"instance. Optionally, lambda functions can also be named. The name will be "
"displayed in the debugger, or when calling [method get_method].\n"
"[codeblock]\n"
"func _init():\n"
"\tvar my_lambda = func (message):\n"
"\t\tprint(message)\n"
"\n"
"\t# Prints \"Hello everyone!\"\n"
"\tmy_lambda.call(\"Hello everyone!\")\n"
"\n"
"\t# Prints \"Attack!\", when the button_pressed signal is emitted.\n"
"\tbutton_pressed.connect(func(): print(\"Attack!\"))\n"
"[/codeblock]\n"
"In GDScript, you can access methods and global functions as [Callable]s:\n"
"[codeblock]\n"
"tween.tween_callback(node.queue_free)  # Object methods.\n"
"tween.tween_callback(array.clear)  # Methods of built-in types.\n"
"tween.tween_callback(print.bind(\"Test\"))  # Global functions.\n"
"[/codeblock]\n"
"[b]Note:[/b] [Dictionary] does not support the above due to ambiguity with "
"keys.\n"
"[codeblock]\n"
"var dictionary = { \"hello\": \"world\" }\n"
"\n"
"# This will not work, `clear` is treated as a key.\n"
"tween.tween_callback(dictionary.clear)\n"
"\n"
"# This will work.\n"
"tween.tween_callback(Callable.create(dictionary, \"clear\"))\n"
"[/codeblock]"
msgstr ""
"[Callable] — это встроенный тип [Variant], представляющий функцию. Он может "
"быть методом внутри экземпляра [Object] или пользовательским вызываемым "
"объектом, используемым для различных целей (см. [method is_custom]). Как и "
"все типы [Variant], он может храниться в переменных и передаваться другим "
"функциям. Чаще всего он используется для обратных вызовов сигналов.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func print_args(arg1, arg2, arg3 = \"\"):\n"
"\tprints(arg1, arg2, arg3)\n"
"\n"
"func test():\n"
"\tvar callable = Callable(self, \"print_args\")\n"
"\tcallable.call(\"hello\", \"world\")  # Выводит \"hello world \".\n"
"\tcallable.call(Vector2.UP, 42, callable)  # Выводит \"(0.0, -1.0) 42 "
"Node(node.gd)::print_args\"\n"
"\tcallable.call(\"invalid\")  # Неверный вызов, должно быть не менее 2 "
"аргументов.\n"
"[/gdscript]\n"
"[csharp]\n"
"// Значения параметров по умолчанию не поддерживаются.\n"
"public void PrintArgs(Variant arg1, Variant arg2, Variant arg3 = default)\n"
"{\n"
"\tGD.PrintS(arg1, arg2, arg3);\n"
"}\n"
"\n"
"public void Test()\n"
"{\n"
"\t// Недействительные вызовы молча завершаются ошибкой.\n"
"\tCallable callable = new Callable(this, MethodName.PrintArgs);\n"
"\tcallable.Call(\"hello\", \"world\"); // Значения параметров по умолчанию не "
"поддерживаются, должно быть 3 аргумента.\n"
"\tcallable.Call(Vector2.Up, 42, callable); // Выводит \"(0, -1) 42 "
"Node(Node.cs)::PrintArgs\"\n"
"\tcallable.Call(\"invalid\"); // Неверный вызов, должно быть 3 аргумента.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"В GDScript можно создавать лямбда-функции внутри метода. Лямбда-функции — это "
"вызываемые пользователем объекты, не связанные с экземпляром [Object]. При "
"желании лямбда-функциям можно присваивать имена. Имя будет отображаться в "
"отладчике или при вызове [method get_method].\n"
"[codeblock]\n"
"func _init():\n"
"\tvar my_lambda = func (message):\n"
"\t\tprint(message)\n"
"\n"
"\t# Выводит \"Всем привет!\"\n"
"\tmy_lambda.call(\"Всем привет!\")\n"
"\n"
"\t# Выводит сообщение «Атака!» при выдаче сигнала button_pressed.\n"
"\tbutton_pressed.connect(func(): print(\"Атака!\"))\n"
"[/codeblock]\n"
"В GDScript вы можете получить доступ к методам и глобальным функциям как к "
"[Callable]:\n"
"[codeblock]\n"
"tween.tween_callback(node.queue_free)  # Методы объекта.\n"
"tween.tween_callback(array.clear)  # Методы встроенных типов.\n"
"tween.tween_callback(print.bind(\"Test\"))  # Глобальные функции.\n"
"[/codeblock]\n"
"[b]Примечание:[/b] [Dictionary] не поддерживает вышеизложенное из-за "
"неоднозначности ключей.\n"
"[codeblock]\n"
"var dictionary = { \"hello\": \"world\" }\n"
"\n"
"# Это не сработает, `clear` рассматривается как ключ.\n"
"tween.tween_callback(dictionary.clear)\n"
"\n"
"# Это сработает.\n"
"tween.tween_callback(Callable.create(dictionary, \"clear\"))\n"
"[/codeblock]"

msgid "Constructs an empty [Callable], with no object nor method bound."
msgstr "Создает пустой [Callable] без привязанных объектов и методов."

msgid "Constructs a [Callable] as a copy of the given [Callable]."
msgstr "Создает [Callable] как копию заданного [Callable]."

msgid ""
"Creates a new [Callable] for the method named [param method] in the specified "
"[param object].\n"
"[b]Note:[/b] For methods of built-in [Variant] types, use [method create] "
"instead."
msgstr ""
"Создает новый [Callable] для метода с именем [param method] в указанном "
"[param object].\n"
"[b]Примечание:[/b] Для методов встроенных типов [Variant] используйте вместо "
"этого [method create]."

msgid ""
"Returns a copy of this [Callable] with one or more arguments bound. When "
"called, the bound arguments are passed [i]after[/i] the arguments supplied by "
"[method call]. See also [method unbind].\n"
"[b]Note:[/b] When this method is chained with other similar methods, the "
"order in which the argument list is modified is read from right to left."
msgstr ""
"Возвращает копию этого [Callable] с одним или несколькими связанными "
"аргументами. При вызове связанные аргументы передаются [i]после[/i] "
"аргументов, предоставленных [method call]. См. также [method unbind].\n"
"[b]Примечание:[/b] Когда этот метод связан с другими похожими методами, "
"порядок изменения списка аргументов считывается справа налево."

msgid ""
"Returns a copy of this [Callable] with one or more arguments bound, reading "
"them from an array. When called, the bound arguments are passed [i]after[/i] "
"the arguments supplied by [method call]. See also [method unbind].\n"
"[b]Note:[/b] When this method is chained with other similar methods, the "
"order in which the argument list is modified is read from right to left."
msgstr ""
"Возвращает копию этого [Callable] с одним или несколькими связанными "
"аргументами, считывая их из массива. При вызове связанные аргументы "
"передаются [i]после[/i] аргументов, предоставленных [method call]. См. также "
"[method unbind].\n"
"[b]Примечание:[/b] Когда этот метод связан с другими похожими методами, "
"порядок изменения списка аргументов считывается справа налево."

msgid ""
"Calls the method represented by this [Callable]. Arguments can be passed and "
"should match the method's signature."
msgstr ""
"Вызывает метод, представленный этим [Callable]. Аргументы могут быть переданы "
"и должны соответствовать сигнатуре метода."

msgid ""
"Calls the method represented by this [Callable] in deferred mode, i.e. at the "
"end of the current frame. Arguments can be passed and should match the "
"method's signature.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tgrab_focus.call_deferred()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tCallable.From(GrabFocus).CallDeferred();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Deferred calls are processed at idle time. Idle time happens "
"mainly at the end of process and physics frames. In it, deferred calls will "
"be run until there are none left, which means you can defer calls from other "
"deferred calls and they'll still be run in the current idle time cycle. This "
"means you should not call a method deferred from itself (or from a method "
"called by it), as this causes infinite recursion the same way as if you had "
"called the method directly.\n"
"See also [method Object.call_deferred]."
msgstr ""
"Вызывает метод, представленный этим [Callable], в отложенном режиме, т. е. в "
"конце текущего кадра. Аргументы могут быть переданы и должны соответствовать "
"сигнатуре метода.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tgrab_focus.call_deferred()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tCallable.From(GrabFocus).CallDeferred();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Отложенные вызовы обрабатываются во время простоя. Время "
"простоя в основном происходит в конце кадров процесса и физики. В нем "
"отложенные вызовы будут выполняться до тех пор, пока не останется ни одного, "
"что означает, что вы можете отложить вызовы из других отложенных вызовов, и "
"они все равно будут выполняться в текущем цикле времени простоя. Это "
"означает, что вы не должны вызывать метод, отложенный из самого себя (или из "
"метода, вызванного им), так как это вызывает бесконечную рекурсию так же, как "
"если бы вы вызвали метод напрямую.\n"
"См. также [method Object.call_deferred]."

msgid ""
"Calls the method represented by this [Callable]. Unlike [method call], this "
"method expects all arguments to be contained inside the [param arguments] "
"[Array]."
msgstr ""
"Вызывает метод, представленный этим [Callable]. В отличие от [method call], "
"этот метод ожидает, что все аргументы будут содержаться внутри [param "
"arguments] [Array]."

msgid ""
"Creates a new [Callable] for the method named [param method] in the specified "
"[param variant]. To represent a method of a built-in [Variant] type, a custom "
"callable is used (see [method is_custom]). If [param variant] is [Object], "
"then a standard callable will be created instead.\n"
"[b]Note:[/b] This method is always necessary for the [Dictionary] type, as "
"property syntax is used to access its entries. You may also use this method "
"when [param variant]'s type is not known in advance (for polymorphism)."
msgstr ""
"Создает новый [Callable] для метода с именем [param method] в указанном "
"[param variation]. Для представления метода встроенного типа [Variant] "
"используется пользовательский вызываемый объект (см. [method is_custom]). "
"Если [param variation] — это [Object], то вместо него будет создан "
"стандартный вызываемый объект.\n"
"[b]Примечание:[/b] Этот метод всегда необходим для типа [Dictionary], так как "
"для доступа к его записям используется синтаксис свойств. Вы также можете "
"использовать этот метод, когда тип [param variation] заранее неизвестен (для "
"полиморфизма)."

msgid ""
"Returns the total number of arguments this [Callable] should take, including "
"optional arguments. This means that any arguments bound with [method bind] "
"are [i]subtracted[/i] from the result, and any arguments unbound with [method "
"unbind] are [i]added[/i] to the result."
msgstr ""
"Возвращает общее количество аргументов, которые должен принимать этот "
"[Callable], включая необязательные аргументы. Это означает, что любые "
"аргументы, связанные с [method bind], [i]вычитаются[/i] из результата, а "
"любые аргументы, несвязанные с [method unbind], [i]добавляются[/i] к "
"результату."

msgid ""
"Returns the array of arguments bound via successive [method bind] or [method "
"unbind] calls. These arguments will be added [i]after[/i] the arguments "
"passed to the call, from which [method get_unbound_arguments_count] arguments "
"on the right have been previously excluded.\n"
"[codeblock]\n"
"func get_effective_arguments(callable, call_args):\n"
"\tassert(call_args.size() - callable.get_unbound_arguments_count() >= 0)\n"
"\tvar result = call_args.slice(0, call_args.size() - "
"callable.get_unbound_arguments_count())\n"
"\tresult.append_array(callable.get_bound_arguments())\n"
"\treturn result\n"
"[/codeblock]"
msgstr ""
"Возвращает массив аргументов, связанных через последовательные вызовы [method "
"bind] или [method unbind]. Эти аргументы будут добавлены [i]после[/i] "
"аргументов, переданных вызову, из которого [method "
"get_unbound_arguments_count] аргументов справа были ранее исключены.\n"
"[codeblock]\n"
"func get_effective_arguments(callable, call_args):\n"
"\tassert(call_args.size() - callable.get_unbound_arguments_count() >= 0)\n"
"\tvar result = call_args.slice(0, call_args.size() - "
"callable.get_unbound_arguments_count())\n"
"\tresult.append_array(callable.get_bound_arguments())\n"
"\treturn result\n"
"[/codeblock]"

msgid ""
"Returns the total amount of arguments bound via successive [method bind] or "
"[method unbind] calls. This is the same as the size of the array returned by "
"[method get_bound_arguments]. See [method get_bound_arguments] for details.\n"
"[b]Note:[/b] The [method get_bound_arguments_count] and [method "
"get_unbound_arguments_count] methods can both return positive values."
msgstr ""
"Возвращает общее количество аргументов, связанных через последовательные "
"вызовы [method bind] или [method unbind]. Это то же самое, что и размер "
"массива, возвращаемого [method get_bound_arguments]. Подробности см. в "
"[method get_bound_arguments].\n"
"[b]Примечание:[/b] Методы [method get_bound_arguments_count] и [method "
"get_unbound_arguments_count] могут возвращать положительные значения."

msgid ""
"Returns the name of the method represented by this [Callable]. If the "
"callable is a GDScript lambda function, returns the function's name or [code]"
"\"<anonymous lambda>\"[/code]."
msgstr ""
"Возвращает имя метода, представленного этим [Callable]. Если вызываемый "
"объект является лямбда-функцией GDScript, возвращает имя функции или [code]"
"\"<anonymous lambda>\"[/code]."

msgid "Returns the object on which this [Callable] is called."
msgstr "Возвращает объект, для которого вызывается этот [Callable]."

msgid ""
"Returns the ID of this [Callable]'s object (see [method "
"Object.get_instance_id])."
msgstr ""
"Возвращает идентификатор этого объекта [Callable] (см. [method "
"Object.get_instance_id])."

msgid ""
"Returns the total amount of arguments unbound via successive [method bind] or "
"[method unbind] calls. See [method get_bound_arguments] for details.\n"
"[b]Note:[/b] The [method get_bound_arguments_count] and [method "
"get_unbound_arguments_count] methods can both return positive values."
msgstr ""
"Возвращает общее количество аргументов, освобожденных с помощью "
"последовательных вызовов [method bind] или [method unbind]. Подробности см. в "
"[method get_bound_arguments].\n"
"[b]Примечание:[/b] Методы [method get_bound_arguments_count] и [method "
"get_unbound_arguments_count] могут возвращать положительные значения."

msgid ""
"Returns the 32-bit hash value of this [Callable]'s object.\n"
"[b]Note:[/b] [Callable]s with equal content will always produce identical "
"hash values. However, the reverse is not true. Returning identical hash "
"values does [i]not[/i] imply the callables are equal, because different "
"callables can have identical hash values due to hash collisions. The engine "
"uses a 32-bit hash algorithm for [method hash]."
msgstr ""
"Возвращает 32-битное хэш-значение этого объекта [Callable].\n"
"[b]Примечание:[/b] [Callable] с одинаковым содержимым всегда будут выдавать "
"идентичные хэш-значения. Однако обратное неверно. Возврат идентичных хэш-"
"значений не [i][/i] означает, что вызываемые объекты равны, поскольку разные "
"вызываемые объекты могут иметь идентичные хэш-значения из-за коллизий хэшей. "
"Движок использует 32-битный хэш-алгоритм для [method hash]."

msgid ""
"Returns [code]true[/code] if this [Callable] is a custom callable. Custom "
"callables are used:\n"
"- for binding/unbinding arguments (see [method bind] and [method unbind]);\n"
"- for representing methods of built-in [Variant] types (see [method "
"create]);\n"
"- for representing global, lambda, and RPC functions in GDScript;\n"
"- for other purposes in the core, GDExtension, and C#."
msgstr ""
"Возвращает [code]true[/code], если этот [Callable] является пользовательским "
"вызываемым. Пользовательские вызываемые используются:\n"
"- для привязки/отмены привязки аргументов (см. [method bind] и [method "
"unbind]);\n"
"- для представления методов встроенных типов [Variant] (см. [method "
"create]);\n"
"- для представления глобальных, лямбда-функций и функций RPC в GDScript;\n"
"- для других целей в ядре, GDExtension и C#."

msgid ""
"Returns [code]true[/code] if this [Callable] has no target to call the method "
"on. Equivalent to [code]callable == Callable()[/code].\n"
"[b]Note:[/b] This is [i]not[/i] the same as [code]not is_valid()[/code] and "
"using [code]not is_null()[/code] will [i]not[/i] guarantee that this callable "
"can be called. Use [method is_valid] instead."
msgstr ""
"Возвращает [code]true[/code], если у этого [Callable] нет цели для вызова "
"метода. Эквивалентно [code]callable == Callable()[/code].\n"
"[b]Примечание:[/b] Это [i]не[/i] то же самое, что [code]not is_valid()[/"
"code], и использование [code]not is_null()[/code] [i]не[/i] гарантирует, что "
"этот вызываемый может быть вызван. Вместо этого используйте [method is_valid]."

msgid ""
"Returns [code]true[/code] if this [Callable] is a standard callable. This "
"method is the opposite of [method is_custom]. Returns [code]false[/code] if "
"this callable is a lambda function."
msgstr ""
"Возвращает [code]true[/code], если этот [Callable] является стандартным "
"вызываемым. Этот метод противоположен [method is_custom]. Возвращает "
"[code]false[/code], если этот вызываемый является лямбда-функцией."

msgid ""
"Returns [code]true[/code] if the callable's object exists and has a valid "
"method name assigned, or is a custom callable."
msgstr ""
"Возвращает [code]true[/code], если вызываемый объект существует и имеет "
"назначенное допустимое имя метода или является пользовательским вызываемым "
"объектом."

msgid ""
"Perform an RPC (Remote Procedure Call) on all connected peers. This is used "
"for multiplayer and is normally not available, unless the function being "
"called has been marked as [i]RPC[/i] (using [annotation @GDScript.@rpc] or "
"[method Node.rpc_config]). Calling this method on unsupported functions will "
"result in an error. See [method Node.rpc]."
msgstr ""
"Выполнить RPC (удаленный вызов процедуры) на всех подключенных пирах. Это "
"используется для многопользовательской игры и обычно недоступно, если только "
"вызываемая функция не помечена как [i]RPC[/i] (используя [annotation "
"@GDScript.@rpc] или [method Node.rpc_config]). Вызов этого метода для "
"неподдерживаемых функций приведет к ошибке. См. [method Node.rpc]."

msgid ""
"Perform an RPC (Remote Procedure Call) on a specific peer ID (see multiplayer "
"documentation for reference). This is used for multiplayer and is normally "
"not available unless the function being called has been marked as [i]RPC[/i] "
"(using [annotation @GDScript.@rpc] or [method Node.rpc_config]). Calling this "
"method on unsupported functions will result in an error. See [method "
"Node.rpc_id]."
msgstr ""
"Выполнить RPC (удаленный вызов процедуры) для определенного идентификатора "
"однорангового сервера (см. документацию по многопользовательской игре для "
"справки). Это используется для многопользовательской игры и обычно "
"недоступно, если вызываемая функция не помечена как [i]RPC[/i] (используя "
"[annotation @GDScript.@rpc] или [method Node.rpc_config]). Вызов этого метода "
"для неподдерживаемых функций приведет к ошибке. См. [method Node.rpc_id]."

msgid ""
"Returns a copy of this [Callable] with a number of arguments unbound. In "
"other words, when the new callable is called the last few arguments supplied "
"by the user are ignored, according to [param argcount]. The remaining "
"arguments are passed to the callable. This allows to use the original "
"callable in a context that attempts to pass more arguments than this callable "
"can handle, e.g. a signal with a fixed number of arguments. See also [method "
"bind].\n"
"[b]Note:[/b] When this method is chained with other similar methods, the "
"order in which the argument list is modified is read from right to left.\n"
"[codeblock]\n"
"func _ready():\n"
"\tfoo.unbind(1).call(1, 2) # Calls foo(1).\n"
"\tfoo.bind(3, 4).unbind(1).call(1, 2) # Calls foo(1, 3, 4), note that it does "
"not change the arguments from bind.\n"
"[/codeblock]"
msgstr ""
"Возвращает копию этого [Callable] с несколькими несвязанными аргументами. "
"Другими словами, когда вызывается новый вызываемый, последние несколько "
"аргументов, предоставленных пользователем, игнорируются в соответствии с "
"[param argcount]. Оставшиеся аргументы передаются вызываемому. Это позволяет "
"использовать исходный вызываемый в контексте, который пытается передать "
"больше аргументов, чем этот вызываемый может обработать, например, сигнал с "
"фиксированным количеством аргументов. См. также [method bind].\n"
"[b]Примечание:[/b] Когда этот метод связан с другими похожими методами, "
"порядок, в котором изменяется список аргументов, считывается справа налево.\n"
"[codeblock]\n"
"func _ready():\n"
"\tfoo.unbind(1).call(1, 2) # Вызывает foo(1).\n"
"\tfoo.bind(3, 4).unbind(1).call(1, 2) # Вызывает foo(1, 3, 4), обратите "
"внимание, что он не изменяет аргументы из bind.\n"
"[/codeblock]"

msgid "Returns [code]true[/code] if both [Callable]s invoke different targets."
msgstr "Возвращает [code]true[/code], если оба [Callable] вызывают разные цели."

msgid ""
"Returns [code]true[/code] if both [Callable]s invoke the same custom target."
msgstr ""
"Возвращает [code]true[/code], если оба [Callable] вызывают одну и ту же "
"пользовательскую цель."

msgid "Calls the specified method after optional delay."
msgstr "Вызывает указанный метод после необязательной задержки."

msgid ""
"[CallbackTweener] is used to call a method in a tweening sequence. See "
"[method Tween.tween_callback] for more usage information.\n"
"The tweener will finish automatically if the callback's target object is "
"freed.\n"
"[b]Note:[/b] [method Tween.tween_callback] is the only correct way to create "
"[CallbackTweener]. Any [CallbackTweener] created manually will not function "
"correctly."
msgstr ""
"[CallbackTweener] используется для вызова метода в последовательности "
"tweening. См. [method Tween.tween_callback] для получения дополнительной "
"информации об использовании.\n"
"Tweener завершится автоматически, если целевой объект обратного вызова будет "
"освобожден.\n"
"[b]Примечание:[/b] [method Tween.tween_callback] — единственный правильный "
"способ создания [CallbackTweener]. Любой [CallbackTweener], созданный "
"вручную, не будет работать правильно."

msgid ""
"Makes the callback call delayed by given time in seconds.\n"
"[b]Example:[/b] Call [method Node.queue_free] after 2 seconds:\n"
"[codeblock]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_callback(queue_free).set_delay(2)\n"
"[/codeblock]"
msgstr ""
"Делает вызов обратного вызова задержанным на указанное время в секундах.\n"
"[b]Пример:[/b] Вызов [method Node.queue_free] через 2 секунды:\n"
"[codeblock]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_callback(queue_free).set_delay(2)\n"
"[/codeblock]"

msgid "Camera node for 2D scenes."
msgstr "Узел камеры для двумерных сцен."

msgid ""
"Camera node for 2D scenes. It forces the screen (current layer) to scroll "
"following this node. This makes it easier (and faster) to program scrollable "
"scenes than manually changing the position of [CanvasItem]-based nodes.\n"
"Cameras register themselves in the nearest [Viewport] node (when ascending "
"the tree). Only one camera can be active per viewport. If no viewport is "
"available ascending the tree, the camera will register in the global "
"viewport.\n"
"This node is intended to be a simple helper to get things going quickly, but "
"more functionality may be desired to change how the camera works. To make "
"your own custom camera node, inherit it from [Node2D] and change the "
"transform of the canvas by setting [member Viewport.canvas_transform] in "
"[Viewport] (you can obtain the current [Viewport] by using [method "
"Node.get_viewport]).\n"
"Note that the [Camera2D] node's [member Node2D.global_position] doesn't "
"represent the actual position of the screen, which may differ due to applied "
"smoothing or limits. You can use [method get_screen_center_position] to get "
"the real position. Same for the node's [member Node2D.global_rotation] which "
"may be different due to applied rotation smoothing. You can use [method "
"get_screen_rotation] to get the current rotation of the screen."
msgstr ""
"Узел камеры для 2D-сцен. Он заставляет экран (текущий слой) прокручиваться "
"вслед за этим узлом. Это упрощает (и ускоряет) программирование "
"прокручиваемых сцен, чем ручное изменение положения узлов на основе "
"[CanvasItem].\n"
"Камеры регистрируются в ближайшем узле [Viewport] (при подъеме по дереву). "
"Для каждого окна просмотра может быть активна только одна камера. Если при "
"подъеме по дереву нет доступного окна просмотра, камера зарегистрируется в "
"глобальном окне просмотра.\n"
"Этот узел предназначен для простого помощника, чтобы все работало быстро, но "
"может потребоваться больше функциональности для изменения того, как работает "
"камера. Чтобы создать свой собственный узел камеры, унаследуйте его от "
"[Node2D] и измените преобразование холста, установив [member "
"Viewport.canvas_transform] в [Viewport] (вы можете получить текущий "
"[Viewport] с помощью [method Node.get_viewport]). \n"
"Обратите внимание, что [member Node2D.global_position] узла [Camera2D] не "
"отображает фактическое положение экрана, которое может отличаться из-за "
"примененного сглаживания или ограничений по перемещению. Вы можете "
"использовать [method get_screen_center_position] для получения реального "
"положения. То же самое касается [member Node2D.global_rotation] узла, которое "
"может отличаться из-за примененного сглаживания вращения. Вы можете "
"использовать [method get_screen_rotation] для получения текущего поворота "
"экрана."

msgid "2D Isometric Demo"
msgstr "Изометрическая 2D-демо"

msgid "Aligns the camera to the tracked node."
msgstr "Выравнивает камеру по отслеживаемому узлу."

msgid "Forces the camera to update scroll immediately."
msgstr "Заставляет камеру немедленно обновить прокрутку."

msgid ""
"Returns the specified [enum Side]'s margin. See also [member "
"drag_bottom_margin], [member drag_top_margin], [member drag_left_margin], and "
"[member drag_right_margin]."
msgstr ""
"Возвращает указанное поле [enum Side]. См. также [member drag_bottom_margin], "
"[member drag_top_margin], [member drag_left_margin] и [member "
"drag_right_margin]."

msgid ""
"Returns the camera limit for the specified [enum Side]. See also [member "
"limit_bottom], [member limit_top], [member limit_left], and [member "
"limit_right]."
msgstr ""
"Возвращает лимит камеры для указанного [enum Side]. См. также [member "
"limit_bottom], [member limit_top], [member limit_left] и [member limit_right]."

msgid ""
"Returns the center of the screen from this camera's point of view, in global "
"coordinates.\n"
"[b]Note:[/b] The exact targeted position of the camera may be different. See "
"[method get_target_position]."
msgstr ""
"Возвращает центр экрана с точки зрения этой камеры в глобальных координатах.\n"
"[b]Примечание:[/b] Точное целевое положение камеры может отличаться. См. "
"[method get_target_position]."

msgid ""
"Returns the current screen rotation from this camera's point of view.\n"
"[b]Note:[/b] The screen rotation can be different from [member "
"Node2D.global_rotation] if the camera is rotating smoothly due to [member "
"rotation_smoothing_enabled]."
msgstr ""
"Возвращает текущий поворот экрана с точки зрения этой камеры.\n"
"[b]Примечание:[/b] Поворот экрана может отличаться от [member "
"Node2D.global_rotation], если камера вращается плавно из-за [member "
"rotation_smoothing_enabled]."

msgid ""
"Returns this camera's target position, in global coordinates.\n"
"[b]Note:[/b] The returned value is not the same as [member "
"Node2D.global_position], as it is affected by the drag properties. It is also "
"not the same as the current position if [member position_smoothing_enabled] "
"is [code]true[/code] (see [method get_screen_center_position])."
msgstr ""
"Возвращает целевое положение этой камеры в глобальных координатах.\n"
"[b]Примечание:[/b] Возвращаемое значение не совпадает с [member "
"Node2D.global_position], так как на него влияют свойства перетаскивания. Оно "
"также не совпадает с текущим положением, если [member "
"position_smoothing_enabled] равно [code]true[/code] (см. [method "
"get_screen_center_position])."

msgid ""
"Returns [code]true[/code] if this [Camera2D] is the active camera (see "
"[method Viewport.get_camera_2d])."
msgstr ""
"Возвращает [code]true[/code], если эта [Camera2D] является активной камерой "
"(см. [method Viewport.get_camera_2d])."

msgid ""
"Forces this [Camera2D] to become the current active one. [member enabled] "
"must be [code]true[/code]."
msgstr ""
"Делает [Camera2D] текущей активной камерой. [member enabled] должно быть "
"[code]true[/code]."

msgid ""
"Sets the camera's position immediately to its current smoothing destination.\n"
"This method has no effect if [member position_smoothing_enabled] is "
"[code]false[/code]."
msgstr ""
"Устанавливает положение камеры немедленно в текущее место назначения "
"сглаживания.\n"
"Этот метод не имеет эффекта, если [member position_smoothing_enabled] имеет "
"значение [code]false[/code]."

msgid ""
"Sets the specified [enum Side]'s margin. See also [member "
"drag_bottom_margin], [member drag_top_margin], [member drag_left_margin], and "
"[member drag_right_margin]."
msgstr ""
"Устанавливает указанное поле [enum Side]. См. также [member "
"drag_bottom_margin], [member drag_top_margin], [member drag_left_margin] и "
"[member drag_right_margin]."

msgid ""
"Sets the camera limit for the specified [enum Side]. See also [member "
"limit_bottom], [member limit_top], [member limit_left], and [member "
"limit_right]."
msgstr ""
"Устанавливает ограничение камеры для указанного [enum Side]. См. также "
"[member limit_bottom], [member limit_top], [member limit_left] и [member "
"limit_right]."

msgid "The Camera2D's anchor point."
msgstr "Точка привязки Camera2D."

msgid ""
"The custom [Viewport] node attached to the [Camera2D]. If [code]null[/code] "
"or not a [Viewport], uses the default viewport instead."
msgstr ""
"Пользовательский узел [Viewport], прикрепленный к [Camera2D]. Если "
"[code]null[/code] или не является [Viewport], вместо этого используется "
"viewport по умолчанию."

msgid ""
"Bottom margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the bottom edge of the screen."
msgstr ""
"Нижнее поле, необходимое для перетаскивания камеры. Значение [code]1[/code] "
"заставляет камеру двигаться только при достижении нижнего края экрана."

msgid ""
"If [code]true[/code], the camera only moves when reaching the horizontal "
"(left and right) drag margins. If [code]false[/code], the camera moves "
"horizontally regardless of margins."
msgstr ""
"Если [code]true[/code], камера движется только при достижении горизонтальных "
"(левых и правых) границ перетаскивания. Если [code]false[/code], камера "
"движется горизонтально независимо от границ."

msgid ""
"The relative horizontal drag offset of the camera between the right "
"([code]-1[/code]) and left ([code]1[/code]) drag margins.\n"
"[b]Note:[/b] Used to set the initial horizontal drag offset; determine the "
"current offset; or force the current offset. It's not automatically updated "
"when [member drag_horizontal_enabled] is [code]true[/code] or the drag "
"margins are changed."
msgstr ""
"Относительное горизонтальное смещение перетаскивания камеры между правым "
"([code]-1[/code]) и левым ([code]1[/code]) полями перетаскивания.\n"
"[b]Примечание:[/b] Используется для установки начального горизонтального "
"смещения перетаскивания; определения текущего смещения; или принудительного "
"задания текущего смещения. Оно не обновляется автоматически, когда [member "
"drag_horizontal_enabled] имеет значение [code]true[/code] или поля "
"перетаскивания изменяются."

msgid ""
"Left margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the left edge of the screen."
msgstr ""
"Левое поле, необходимое для перетаскивания камеры. Значение [code]1[/code] "
"заставляет камеру двигаться только при достижении левого края экрана."

msgid ""
"Right margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the right edge of the screen."
msgstr ""
"Правое поле, необходимое для перетаскивания камеры. Значение [code]1[/code] "
"заставляет камеру двигаться только при достижении правого края экрана."

msgid ""
"Top margin needed to drag the camera. A value of [code]1[/code] makes the "
"camera move only when reaching the top edge of the screen."
msgstr ""
"Верхнее поле, необходимое для перемещения камеры. Значение [code]1[/code] "
"заставляет камеру двигаться только при достижении верхнего края экрана."

msgid ""
"If [code]true[/code], the camera only moves when reaching the vertical (top "
"and bottom) drag margins. If [code]false[/code], the camera moves vertically "
"regardless of the drag margins."
msgstr ""
"Если [code]true[/code], камера движется только при достижении вертикальных "
"(верхних и нижних) границ перетаскивания. Если [code]false[/code], камера "
"движется вертикально независимо от границ перетаскивания."

msgid ""
"The relative vertical drag offset of the camera between the bottom ([code]-1[/"
"code]) and top ([code]1[/code]) drag margins.\n"
"[b]Note:[/b] Used to set the initial vertical drag offset; determine the "
"current offset; or force the current offset. It's not automatically updated "
"when [member drag_vertical_enabled] is [code]true[/code] or the drag margins "
"are changed."
msgstr ""
"Относительное вертикальное смещение перетаскивания камеры между нижним "
"([code]-1[/code]) и верхним ([code]1[/code]) полями перетаскивания.\n"
"[b]Примечание:[/b] Используется для установки начального вертикального "
"смещения перетаскивания; определения текущего смещения; или принудительного "
"задания текущего смещения. Оно не обновляется автоматически, когда [member "
"drag_vertical_enabled] имеет значение [code]true[/code] или поля "
"перетаскивания изменяются."

msgid ""
"If [code]true[/code], draws the camera's drag margin rectangle in the editor."
msgstr ""
"Если [code]true[/code], рисует прямоугольник перетаскиваемого поля камеры в "
"редакторе."

msgid "If [code]true[/code], draws the camera's limits rectangle in the editor."
msgstr "Если [code]true[/code], рисует прямоугольник границ камеры в редакторе."

msgid "If [code]true[/code], draws the camera's screen rectangle in the editor."
msgstr "Если [code]true[/code], рисует прямоугольник экрана камеры в редакторе."

msgid ""
"Controls whether the camera can be active or not. If [code]true[/code], the "
"[Camera2D] will become the main camera when it enters the scene tree and "
"there is no active camera currently (see [method Viewport.get_camera_2d]).\n"
"When the camera is currently active and [member enabled] is set to "
"[code]false[/code], the next enabled [Camera2D] in the scene tree will become "
"active."
msgstr ""
"Управляет тем, может ли камера быть активной или нет. Если [code]true[/code], "
"[Camera2D] станет основной камерой, когда она войдет в дерево сцены и в "
"данный момент нет активной камеры (см. [method Viewport.get_camera_2d]).\n"
"Когда камера в данный момент активна и [member enabled] установлен на "
"[code]false[/code], следующая включенная [Camera2D] в дереве сцены станет "
"активной."

msgid ""
"If [code]true[/code], the camera's rendered view is not affected by its "
"[member Node2D.rotation] and [member Node2D.global_rotation]."
msgstr ""
"Если [code]true[/code], на визуализируемый вид камеры не влияют ее [member "
"Node2D.rotation] и [member Node2D.global_rotation]."

msgid ""
"Bottom scroll limit in pixels. The camera stops moving when reaching this "
"value, but [member offset] can push the view past the limit."
msgstr ""
"Нижний предел прокрутки в пикселях. Камера останавливается при достижении "
"этого значения, но [member offset] может вывести вид за пределы предела."

msgid ""
"If [code]true[/code], the limits will be enabled. Disabling this will allow "
"the camera to focus anywhere, when the four [code]limit_*[/code] properties "
"will not work."
msgstr ""
"Если [code]true[/code], ограничения будут включены. Отключение этого позволит "
"камере фокусироваться в любом месте, когда четыре свойства [code]limit_*[/"
"code] работать не будут."

msgid ""
"Left scroll limit in pixels. The camera stops moving when reaching this "
"value, but [member offset] can push the view past the limit."
msgstr ""
"Предел прокрутки слева в пикселях. Камера останавливается при достижении "
"этого значения, но [member offset] может вывести вид за пределы предела."

msgid ""
"Right scroll limit in pixels. The camera stops moving when reaching this "
"value, but [member offset] can push the view past the limit."
msgstr ""
"Предел прокрутки вправо в пикселях. Камера останавливается при достижении "
"этого значения, но [member offset] может вывести вид за пределы предела."

msgid ""
"If [code]true[/code], the camera smoothly stops when reaches its limits.\n"
"This property has no effect if [member position_smoothing_enabled] is "
"[code]false[/code].\n"
"[b]Note:[/b] To immediately update the camera's position to be within limits "
"without smoothing, even with this setting enabled, invoke [method "
"reset_smoothing]."
msgstr ""
"Если [code]true[/code], камера плавно останавливается при достижении своих "
"пределов.\n"
"Это свойство не имеет эффекта, если [member position_smoothing_enabled] равно "
"[code]false[/code].\n"
"[b]Примечание:[/b] Чтобы немедленно обновить положение камеры, чтобы оно "
"находилось в пределах ограничений без сглаживания, даже если эта настройка "
"включена, вызовите [method reset_smoothing]."

msgid ""
"Top scroll limit in pixels. The camera stops moving when reaching this value, "
"but [member offset] can push the view past the limit."
msgstr ""
"Верхний предел прокрутки в пикселях. Камера останавливается при достижении "
"этого значения, но [member offset] может вывести вид за пределы предела."

msgid ""
"The camera's relative offset. Useful for looking around or camera shake "
"animations. The offsetted camera can go past the limits defined in [member "
"limit_top], [member limit_bottom], [member limit_left] and [member "
"limit_right]."
msgstr ""
"Относительное смещение камеры. Полезно для осмотра или анимации дрожания "
"камеры. Смещенная камера может выходить за пределы, определенные в [member "
"limit_top], [member limit_bottom], [member limit_left] и [member limit_right]."

msgid ""
"If [code]true[/code], the camera's view smoothly moves towards its target "
"position at [member position_smoothing_speed]."
msgstr ""
"Если [code]true[/code], вид камеры плавно перемещается к целевой позиции со "
"скоростью [member position_smoothing_speed]."

msgid ""
"Speed in pixels per second of the camera's smoothing effect when [member "
"position_smoothing_enabled] is [code]true[/code]."
msgstr ""
"Скорость эффекта сглаживания камеры в пикселях в секунду, когда [member "
"position_smoothing_enabled] имеет значение [code]true[/code]."

msgid "The camera's process callback."
msgstr "Обратный вызов процесса камеры."

msgid ""
"If [code]true[/code], the camera's view smoothly rotates, via asymptotic "
"smoothing, to align with its target rotation at [member "
"rotation_smoothing_speed].\n"
"[b]Note:[/b] This property has no effect if [member ignore_rotation] is "
"[code]true[/code]."
msgstr ""
"Если [code]true[/code], вид камеры плавно вращается с помощью "
"асимптотического сглаживания, чтобы совпасть с целевым вращением на [member "
"rotation_smoothing_speed].\n"
"[b]Примечание:[/b] Это свойство не имеет эффекта, если [member "
"ignore_rotation] равно [code]true[/code]."

msgid ""
"The angular, asymptotic speed of the camera's rotation smoothing effect when "
"[member rotation_smoothing_enabled] is [code]true[/code]."
msgstr ""
"Угловая асимптотическая скорость эффекта сглаживания вращения камеры, когда "
"[member rotation_smoothing_enabled] имеет значение [code]true[/code]."

msgid ""
"The camera's zoom. Higher values are more zoomed in. For example, a zoom of "
"[code]Vector2(2.0, 2.0)[/code] will be twice as zoomed in on each axis (the "
"view covers an area four times smaller). In contrast, a zoom of "
"[code]Vector2(0.5, 0.5)[/code] will be twice as zoomed out on each axis (the "
"view covers an area four times larger). The X and Y components should "
"generally always be set to the same value, unless you wish to stretch the "
"camera view.\n"
"[b]Note:[/b] [member FontFile.oversampling] does [i]not[/i] take [Camera2D] "
"zoom into account. This means that zooming in/out will cause bitmap fonts and "
"rasterized (non-MSDF) dynamic fonts to appear blurry or pixelated unless the "
"font is part of a [CanvasLayer] that makes it ignore camera zoom. To ensure "
"text remains crisp regardless of zoom, you can enable MSDF font rendering by "
"enabling [member ProjectSettings.gui/theme/"
"default_font_multichannel_signed_distance_field] (applies to the default "
"project font only), or enabling [b]Multichannel Signed Distance Field[/b] in "
"the import options of a DynamicFont for custom fonts. On system fonts, "
"[member SystemFont.multichannel_signed_distance_field] can be enabled in the "
"inspector."
msgstr ""
"Масштаб камеры. Более высокие значения соответствуют большему масштабу. "
"Например, масштаб [code]Vector2(2.0, 2.0)[/code] будет вдвое больше по каждой "
"оси (область обзора в четыре раза меньше). Напротив, масштаб "
"[code]Vector2(0.5, 0.5)[/code] будет вдвое меньше по каждой оси (область "
"обзора в четыре раза больше). Компоненты X и Y, как правило, всегда должны "
"иметь одинаковое значение, если только вы не хотите растянуть поле обзора "
"камеры.\n"
"[b]Примечание:[/b] [member FontFile.oversampling] [i]не[/i] учитывает масштаб "
"[Camera2D]. Это означает, что увеличение/уменьшение масштаба приведёт к "
"размытию или пикселизации растровых и растровых (не MSDF) динамических "
"шрифтов, если только шрифт не является частью [CanvasLayer], который "
"игнорирует масштаб камеры. Чтобы текст оставался чётким независимо от "
"масштаба, можно включить отображение шрифтов MSDF, включив [member "
"ProjectSettings.gui/theme/default_font_multichannel_signed_distance_field] "
"(применяется только к шрифту проекта по умолчанию) или включив "
"[b]Multichannel Signed Distance Field[/b] в параметрах импорта DynamicFont "
"для пользовательских шрифтов. Для системных шрифтов [member "
"SystemFont.multichannel_signed_distance_field] можно включить в инспекторе."

msgid ""
"The camera's position is fixed so that the top-left corner is always at the "
"origin."
msgstr ""
"Положение камеры фиксировано таким образом, что верхний левый угол всегда "
"находится в начале координат."

msgid ""
"The camera's position takes into account vertical/horizontal offsets and the "
"screen size."
msgstr ""
"Положение камеры учитывает вертикальное/горизонтальное смещение и размер "
"экрана."

msgid ""
"The camera updates during physics frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."
msgstr ""
"Камера обновляется во время физических кадров (см. [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."

msgid ""
"The camera updates during process frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Камера обновляется во время обработки кадров (см. [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid "Camera node, displays from a point of view."
msgstr "Узел камеры, отображает точку обзора."

msgid ""
"[Camera3D] is a special node that displays what is visible from its current "
"location. Cameras register themselves in the nearest [Viewport] node (when "
"ascending the tree). Only one camera can be active per viewport. If no "
"viewport is available ascending the tree, the camera will register in the "
"global viewport. In other words, a camera just provides 3D display "
"capabilities to a [Viewport], and, without one, a scene registered in that "
"[Viewport] (or higher viewports) can't be displayed."
msgstr ""
"[Camera3D] — это специальный узел, который отображает то, что видно из его "
"текущего местоположения. Камеры регистрируются в ближайшем узле [Viewport] "
"(при подъеме по дереву). Только одна камера может быть активна для каждого "
"viewport. Если viewport не доступен при подъеме по дереву, камера "
"зарегистрируется в глобальном viewport. Другими словами, камера просто "
"предоставляет возможности 3D-отображения для [Viewport], и без него сцена, "
"зарегистрированная в этом [Viewport] (или в более высоких viewport), не может "
"быть отображена."

msgid ""
"If this is the current camera, remove it from being current. If [param "
"enable_next] is [code]true[/code], request to make the next camera current, "
"if any."
msgstr ""
"Если это текущая камера, удалить ее из списка текущих. Если [param "
"enable_next] равен [code]true[/code], запросить сделать текущей следующую "
"камеру, если таковая имеется."

msgid ""
"Returns the projection matrix that this camera uses to render to its "
"associated viewport. The camera must be part of the scene tree to function."
msgstr ""
"Возвращает проекционную матрицу, которую эта камера использует для рендеринга "
"в связанном с ней окне просмотра. Для работы камера должна быть частью дерева "
"сцены."

msgid "Returns the camera's RID from the [RenderingServer]."
msgstr "Возвращает RID камеры из [RenderingServer]."

msgid ""
"Returns the transform of the camera plus the vertical ([member v_offset]) and "
"horizontal ([member h_offset]) offsets; and any other adjustments made to the "
"position and orientation of the camera by subclassed cameras such as "
"[XRCamera3D]."
msgstr ""
"Возвращает преобразование камеры плюс вертикальное ([member v_offset]) и "
"горизонтальное ([member h_offset]) смещения; и любые другие корректировки, "
"внесенные в положение и ориентацию камеры подклассами камер, такими как "
"[XRCamera3D]."

msgid ""
"Returns whether or not the specified layer of the [member cull_mask] is "
"enabled, given a [param layer_number] between 1 and 20."
msgstr ""
"Возвращает, включен ли указанный слой [member cull_mask], учитывая [param "
"layer_number] от 1 до 20."

msgid ""
"Returns the camera's frustum planes in world space units as an array of "
"[Plane]s in the following order: near, far, left, top, right, bottom. Not to "
"be confused with [member frustum_offset]."
msgstr ""
"Возвращает плоскости усеченной пирамиды камеры в единицах мирового "
"пространства как массив [Plane] в следующем порядке: ближний, дальний, левый, "
"верхний, правый, нижний. Не путать с [member frustum_offset]."

msgid ""
"Returns the RID of a pyramid shape encompassing the camera's view frustum, "
"ignoring the camera's near plane. The tip of the pyramid represents the "
"position of the camera."
msgstr ""
"Возвращает RID пирамидальной формы, охватывающей усеченную пирамиду обзора "
"камеры, игнорируя ближнюю плоскость камеры. Верхушка пирамиды представляет "
"положение камеры."

msgid ""
"Returns [code]true[/code] if the given position is behind the camera (the "
"blue part of the linked diagram). [url=https://raw.githubusercontent.com/"
"godotengine/godot-docs/master/img/camera3d_position_frustum.png]See this "
"diagram[/url] for an overview of position query methods.\n"
"[b]Note:[/b] A position which returns [code]false[/code] may still be outside "
"the camera's field of view."
msgstr ""
"Возвращает [code]true[/code], если заданная позиция находится за камерой "
"(синяя часть связанной диаграммы). [url=https://raw.githubusercontent.com/"
"godotengine/godot-docs/master/img/camera3d_position_frustum.png]См. эту "
"диаграмму[/url] для обзора методов запроса позиции.\n"
"[b]Примечание:[/b] Позиция, которая возвращает [code]false[/code], может все "
"еще находиться за пределами поля зрения камеры."

msgid ""
"Returns [code]true[/code] if the given position is inside the camera's "
"frustum (the green part of the linked diagram). [url=https://"
"raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"camera3d_position_frustum.png]See this diagram[/url] for an overview of "
"position query methods."
msgstr ""
"Возвращает [code]true[/code], если заданная позиция находится внутри пирамиды "
"видимости камеры (зеленая часть связанной диаграммы). [url=https://"
"raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"camera3d_position_frustum.png]См. эту диаграмму[/url] для обзора методов "
"запроса позиции."

msgid ""
"Makes this camera the current camera for the [Viewport] (see class "
"description). If the camera node is outside the scene tree, it will attempt "
"to become current once it's added."
msgstr ""
"Делает эту камеру текущей камерой для [Viewport] (см. описание класса). Если "
"узел камеры находится вне дерева сцены, он попытается стать текущим после "
"добавления."

msgid ""
"Returns a normal vector from the screen point location directed along the "
"camera. Orthogonal cameras are normalized. Perspective cameras account for "
"perspective, screen width/height, etc."
msgstr ""
"Возвращает нормальный вектор из точки экрана, направленный вдоль камеры. "
"Ортогональные камеры нормализуются. Перспективные камеры учитывают "
"перспективу, ширину/высоту экрана и т. д."

msgid ""
"Returns the 3D point in world space that maps to the given 2D coordinate in "
"the [Viewport] rectangle on a plane that is the given [param z_depth] "
"distance into the scene away from the camera."
msgstr ""
"Возвращает трехмерную точку в мировом пространстве, которая сопоставляется с "
"заданной двухмерной координатой в прямоугольнике [Viewport] на плоскости, "
"которая находится на заданном расстоянии [param z_depth] от камеры вглубь "
"сцены."

msgid ""
"Returns a normal vector in world space, that is the result of projecting a "
"point on the [Viewport] rectangle by the inverse camera projection. This is "
"useful for casting rays in the form of (origin, normal) for object "
"intersection or picking."
msgstr ""
"Возвращает вектор нормали в мировом пространстве, который является "
"результатом проецирования точки на прямоугольник [Viewport] обратной "
"проекцией камеры. Это полезно для отбрасывания лучей в форме (origin, normal) "
"для пересечения или выбора объектов."

msgid ""
"Returns a 3D position in world space, that is the result of projecting a "
"point on the [Viewport] rectangle by the inverse camera projection. This is "
"useful for casting rays in the form of (origin, normal) for object "
"intersection or picking."
msgstr ""
"Возвращает 3D-позицию в мировом пространстве, которая является результатом "
"проецирования точки на прямоугольник [Viewport] обратной проекцией камеры. "
"Это полезно для отбрасывания лучей в форме (origin, normal) для пересечения "
"или выбора объектов."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member cull_mask], given a [param layer_number] between 1 and 20."
msgstr ""
"На основе [param value] включает или отключает указанный слой в [member "
"cull_mask] при заданном [param layer_number] от 1 до 20."

msgid ""
"Sets the camera projection to frustum mode (see [constant "
"PROJECTION_FRUSTUM]), by specifying a [param size], an [param offset], and "
"the [param z_near] and [param z_far] clip planes in world space units. See "
"also [member frustum_offset]."
msgstr ""
"Устанавливает проекцию камеры в режим усеченной пирамиды (см. [constant "
"PROJECTION_FRUSTUM]), указывая [param size], [param offset] и плоскости "
"отсечения [param z_near] и [param z_far] в единицах мирового пространства. "
"См. также [member frustum_offset]."

msgid ""
"Sets the camera projection to orthogonal mode (see [constant "
"PROJECTION_ORTHOGONAL]), by specifying a [param size], and the [param z_near] "
"and [param z_far] clip planes in world space units.\n"
"As a hint, 3D games that look 2D often use this projection, with [param size] "
"specified in pixels."
msgstr ""
"Устанавливает проекцию камеры в ортогональный режим (см. [constant "
"PROJECTION_ORTHOGONAL]), указывая [param size] и плоскости отсечения [param "
"z_near] и [param z_far] в единицах мирового пространства.\n"
"Кстати, в 3D-играх, которые выглядят как 2D, часто используется эта проекция, "
"где [param size] указывается в пикселях."

msgid ""
"Sets the camera projection to perspective mode (see [constant "
"PROJECTION_PERSPECTIVE]), by specifying a [param fov] (field of view) angle "
"in degrees, and the [param z_near] and [param z_far] clip planes in world "
"space units."
msgstr ""
"Устанавливает проекцию камеры в режим перспективы (см. [constant "
"PROJECTION_PERSPECTIVE]), указывая угол [param fov] (поле зрения) в градусах, "
"а также плоскости отсечения [param z_near] и [param z_far] в единицах "
"мирового пространства."

msgid ""
"Returns the 2D coordinate in the [Viewport] rectangle that maps to the given "
"3D point in world space.\n"
"[b]Note:[/b] When using this to position GUI elements over a 3D viewport, use "
"[method is_position_behind] to prevent them from appearing if the 3D point is "
"behind the camera:\n"
"[codeblock]\n"
"# This code block is part of a script that inherits from Node3D.\n"
"# `control` is a reference to a node inheriting from Control.\n"
"control.visible = not "
"get_viewport().get_camera_3d().is_position_behind(global_transform.origin)\n"
"control.position = "
"get_viewport().get_camera_3d().unproject_position(global_transform.origin)\n"
"[/codeblock]"
msgstr ""
"Возвращает 2D-координату в прямоугольнике [Viewport], которая сопоставляется "
"с заданной 3D-точкой в мировом пространстве.\n"
"[b]Примечание:[/b] При использовании этого для позиционирования элементов GUI "
"в 3D-окне просмотра используйте [method is_position_behind], чтобы "
"предотвратить их появление, если 3D-точка находится за камерой:\n"
"[codeblock]\n"
"# Этот блок кода является частью скрипта, наследуемого от Node3D.\n"
"# `control` — это ссылка на узел, наследуемый от Control.\n"
"control.visible = not "
"get_viewport().get_camera_3d().is_position_behind(global_transform.origin)\n"
"control.position = "
"get_viewport().get_camera_3d().unproject_position(global_transform.origin)\n"
"[/codeblock]"

msgid "The [CameraAttributes] to use for this camera."
msgstr "[CameraAttributes] для использования с этой камерой."

msgid "The [Compositor] to use for this camera."
msgstr "[Compositor], который будет использоваться для этой камеры."

msgid ""
"The culling mask that describes which [member VisualInstance3D.layers] are "
"rendered by this camera. By default, all 20 user-visible layers are "
"rendered.\n"
"[b]Note:[/b] Since the [member cull_mask] allows for 32 layers to be stored "
"in total, there are an additional 12 layers that are only used internally by "
"the engine and aren't exposed in the editor. Setting [member cull_mask] using "
"a script allows you to toggle those reserved layers, which can be useful for "
"editor plugins.\n"
"To adjust [member cull_mask] more easily using a script, use [method "
"get_cull_mask_value] and [method set_cull_mask_value].\n"
"[b]Note:[/b] [VoxelGI], SDFGI and [LightmapGI] will always take all layers "
"into account to determine what contributes to global illumination. If this is "
"an issue, set [member GeometryInstance3D.gi_mode] to [constant "
"GeometryInstance3D.GI_MODE_DISABLED] for meshes and [member "
"Light3D.light_bake_mode] to [constant Light3D.BAKE_DISABLED] for lights to "
"exclude them from global illumination."
msgstr ""
"Маска отбраковки, описывающая, какие [member VisualInstance3D.layers] "
"визуализируются этой камерой. По умолчанию визуализируются все 20 видимых "
"пользователю слоев.\n"
"[b]Примечание:[/b] Поскольку [member cull_mask] позволяет хранить в общей "
"сложности 32 слоя, есть еще 12 слоев, которые используются только внутренне "
"движком и не отображаются в редакторе. Установка [member cull_mask] с помощью "
"скрипта позволяет переключать эти зарезервированные слои, что может быть "
"полезно для плагинов редактора.\n"
"Чтобы упростить настройку [member cull_mask] с помощью скрипта, используйте "
"[method get_cull_mask_value] и [method set_cull_mask_value].\n"
"[b]Примечание:[/b] [VoxelGI], SDFGI и [LightmapGI] всегда будут учитывать все "
"слои, чтобы определить, что влияет на глобальное освещение. Если это "
"проблема, установите [member GeometryInstance3D.gi_mode] на [constant "
"GeometryInstance3D.GI_MODE_DISABLED] для сеток и [member "
"Light3D.light_bake_mode] на [constant Light3D.BAKE_DISABLED] для источников "
"света, чтобы исключить их из глобального освещения."

msgid ""
"If [code]true[/code], the ancestor [Viewport] is currently using this "
"camera.\n"
"If multiple cameras are in the scene, one will always be made current. For "
"example, if two [Camera3D] nodes are present in the scene and only one is "
"current, setting one camera's [member current] to [code]false[/code] will "
"cause the other camera to be made current."
msgstr ""
"Если [code]true[/code], предок [Viewport] в данный момент использует эту "
"камеру.\n"
"Если в сцене несколько камер, одна из них всегда будет текущей. Например, "
"если в сцене присутствуют два узла [Camera3D] и только один из них является "
"текущим, установка [member current] одной камеры на [code]false[/code] "
"приведет к тому, что другая камера станет текущей."

msgid ""
"If not [constant DOPPLER_TRACKING_DISABLED], this camera will simulate the "
"[url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/url] for "
"objects changed in particular [code]_process[/code] methods.\n"
"[b]Note:[/b] The Doppler effect will only be heard on [AudioStreamPlayer3D]s "
"if [member AudioStreamPlayer3D.doppler_tracking] is not set to [constant "
"AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED]."
msgstr ""
"Если не задано [constant DOPPLER_TRACKING_DISABLED], эта камера будет "
"имитировать [url=https://en.wikipedia.org/wiki/Doppler_effect]эффект Доплера[/"
"url] для объектов, изменённых с помощью определённых методов [code]_process[/"
"code].\n"
"[b]Примечание:[/b] Эффект Доплера будет слышен на [AudioStreamPlayer3D] "
"только в том случае, если [member AudioStreamPlayer3D.doppler_tracking] не "
"задано как [constant AudioStreamPlayer3D.DOPPLER_TRACKING_DISABLED]."

msgid "The [Environment] to use for this camera."
msgstr "[Окружение], используемое для этой камеры."

msgid ""
"The distance to the far culling boundary for this camera relative to its "
"local Z axis. Higher values allow the camera to see further away, while "
"decreasing [member far] can improve performance if it results in objects "
"being partially or fully culled."
msgstr ""
"Расстояние до дальней границы отбраковки для этой камеры относительно ее "
"локальной оси Z. Более высокие значения позволяют камере видеть дальше, в то "
"время как уменьшение [member far] может улучшить производительность, если это "
"приводит к частичной или полной отбраковке объектов."

msgid ""
"The camera's field of view angle (in degrees). Only applicable in perspective "
"mode. Since [member keep_aspect] locks one axis, [member fov] sets the other "
"axis' field of view angle.\n"
"For reference, the default vertical field of view value ([code]75.0[/code]) "
"is equivalent to a horizontal FOV of:\n"
"- ~91.31 degrees in a 4:3 viewport\n"
"- ~101.67 degrees in a 16:10 viewport\n"
"- ~107.51 degrees in a 16:9 viewport\n"
"- ~121.63 degrees in a 21:9 viewport"
msgstr ""
"Угол поля зрения камеры (в градусах). Применимо только в режиме перспективы. "
"Поскольку [member keep_aspect] блокирует одну ось, [member fov] задает угол "
"поля зрения другой оси.\n"
"Для справки, значение вертикального поля зрения по умолчанию ([code]75.0[/"
"code]) эквивалентно горизонтальному FOV:\n"
"- ~91,31 градуса в окне просмотра 4:3\n"
"- ~101,67 градуса в окне просмотра 16:10\n"
"- ~107,51 градуса в окне просмотра 16:9\n"
"- ~121,63 градуса в окне просмотра 21:9"

msgid ""
"The camera's frustum offset. This can be changed from the default to create "
"\"tilted frustum\" effects such as [url=https://zdoom.org/wiki/Y-shearing]Y-"
"shearing[/url].\n"
"[b]Note:[/b] Only effective if [member projection] is [constant "
"PROJECTION_FRUSTUM]."
msgstr ""
"Смещение фрустума (frustum) камеры. Его можно изменить со значения по "
"умолчанию, чтобы создать эффекты «наклонного фрустума», такие как "
"[url=https://zdoom.org/wiki/Y-shearing]Y-shearing[/url].\n"
"[b]Примечание:[/b] Действует только если [member projection] равна [constant "
"PROJECTION_FRUSTUM]."

msgid "The horizontal (X) offset of the camera viewport."
msgstr "Горизонтальное (X) смещение области просмотра камеры."

msgid ""
"The axis to lock during [member fov]/[member size] adjustments. Can be either "
"[constant KEEP_WIDTH] or [constant KEEP_HEIGHT]."
msgstr ""
"Ось для блокировки во время настроек [member fov]/[member size]. Может быть "
"либо [constant KEEP_WIDTH], либо [constant KEEP_HEIGHT]."

msgid ""
"The distance to the near culling boundary for this camera relative to its "
"local Z axis. Lower values allow the camera to see objects more up close to "
"its origin, at the cost of lower precision across the [i]entire[/i] range. "
"Values lower than the default can lead to increased Z-fighting."
msgstr ""
"Расстояние до ближайшей границы отбраковки для этой камеры относительно ее "
"локальной оси Z. Более низкие значения позволяют камере видеть объекты ближе "
"к ее началу координат, за счет более низкой точности по всему [i]всему[/i] "
"диапазону. Значения ниже значения по умолчанию могут привести к увеличению Z-"
"борьбы."

msgid ""
"The camera's projection mode. In [constant PROJECTION_PERSPECTIVE] mode, "
"objects' Z distance from the camera's local space scales their perceived size."
msgstr ""
"Режим проекции камеры. В режиме [constant PROJECTION_PERSPECTIVE] расстояние "
"Z объектов от локального пространства камеры масштабирует их воспринимаемый "
"размер."

msgid ""
"The camera's size in meters measured as the diameter of the width or height, "
"depending on [member keep_aspect]. Only applicable in orthogonal and frustum "
"modes."
msgstr ""
"Размер камеры в метрах, измеряемый как диаметр ширины или высоты, в "
"зависимости от [member keep_aspect]. Применимо только в ортогональном и "
"усеченном режимах."

msgid "The vertical (Y) offset of the camera viewport."
msgstr "Вертикальное (Y) смещение области просмотра камеры."

msgid ""
"Perspective projection. Objects on the screen becomes smaller when they are "
"far away."
msgstr ""
"Перспективная проекция. Объекты на экране становятся меньше по мере их "
"удаления."

msgid ""
"Orthogonal projection, also known as orthographic projection. Objects remain "
"the same size on the screen no matter how far away they are."
msgstr ""
"Ортогональная проекция, также известная как ортографическая проекция. Объекты "
"остаются того же размера на экране, независимо от того, как далеко они "
"находятся."

msgid ""
"Frustum projection. This mode allows adjusting [member frustum_offset] to "
"create \"tilted frustum\" effects."
msgstr ""
"Усеченная проекция. Этот режим позволяет настраивать [member frustum_offset] "
"для создания эффектов «наклонной усеченной пирамиды»."

msgid ""
"Preserves the horizontal aspect ratio; also known as Vert- scaling. This is "
"usually the best option for projects running in portrait mode, as taller "
"aspect ratios will benefit from a wider vertical FOV."
msgstr ""
"Сохраняет горизонтальное соотношение сторон; также известно как Vert-"
"масштабирование. Обычно это лучший вариант для проектов, работающих в "
"портретном режиме, так как более высокие соотношения сторон выиграют от более "
"широкого вертикального FOV."

msgid ""
"Preserves the vertical aspect ratio; also known as Hor+ scaling. This is "
"usually the best option for projects running in landscape mode, as wider "
"aspect ratios will automatically benefit from a wider horizontal FOV."
msgstr ""
"Сохраняет вертикальное соотношение сторон; также известно как масштабирование "
"Hor+. Обычно это лучший вариант для проектов, работающих в ландшафтном "
"режиме, поскольку более широкие соотношения сторон автоматически выигрывают "
"от более широкого горизонтального поля зрения (FOV)."

msgid ""
"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] by tracking positions of objects that are changed in [code]_process[/"
"code]. Changes in the relative velocity of this camera compared to those "
"objects affect how audio is perceived (changing the audio's [member "
"AudioStreamPlayer3D.pitch_scale])."
msgstr ""
"Имитация [url=https://en.wikipedia.org/wiki/Doppler_effect]эффекта Доплера[/"
"url] путем отслеживания положений объектов, которые изменяются в "
"[code]_process[/code]. Изменения относительной скорости этой камеры по "
"сравнению с этими объектами влияют на восприятие звука (изменяя [member "
"AudioStreamPlayer3D.pitch_scale] звука)."

msgid ""
"Simulate [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/"
"url] by tracking positions of objects that are changed in "
"[code]_physics_process[/code]. Changes in the relative velocity of this "
"camera compared to those objects affect how audio is perceived (changing the "
"audio's [member AudioStreamPlayer3D.pitch_scale])."
msgstr ""
"Имитация [url=https://en.wikipedia.org/wiki/Doppler_effect]эффекта Доплера[/"
"url] путем отслеживания положений объектов, которые изменяются в "
"[code]_physics_process[/code]. Изменения относительной скорости этой камеры "
"по сравнению с этими объектами влияют на восприятие звука (изменяя [member "
"AudioStreamPlayer3D.pitch_scale] звука)."

msgid "Parent class for camera settings."
msgstr "Родительский класс для настроек камеры."

msgid ""
"Controls camera-specific attributes such as depth of field and exposure "
"override.\n"
"When used in a [WorldEnvironment] it provides default settings for exposure, "
"auto-exposure, and depth of field that will be used by all cameras without "
"their own [CameraAttributes], including the editor camera. When used in a "
"[Camera3D] it will override any [CameraAttributes] set in the "
"[WorldEnvironment]. When used in [VoxelGI] or [LightmapGI], only the exposure "
"settings will be used.\n"
"See also [Environment] for general 3D environment settings.\n"
"This is a pure virtual class that is inherited by [CameraAttributesPhysical] "
"and [CameraAttributesPractical]."
msgstr ""
"Управляет атрибутами камеры, такими как глубина резкости и переопределение "
"экспозиции.\n"
"При использовании в [WorldEnvironment] он предоставляет настройки по "
"умолчанию для экспозиции, автоэкспозиции и глубины резкости, которые будут "
"использоваться всеми камерами без их собственных [CameraAttributes], включая "
"камеру редактора. При использовании в [Camera3D] он переопределяет любые "
"[CameraAttributes], установленные в [WorldEnvironment]. При использовании в "
"[VoxelGI] или [LightmapGI] будут использоваться только настройки экспозиции.\n"
"См. также [Environment] для общих настроек 3D-среды.\n"
"Это чисто виртуальный класс, который наследуется [CameraAttributesPhysical] и "
"[CameraAttributesPractical]."

msgid ""
"If [code]true[/code], enables the tonemapping auto exposure mode of the scene "
"renderer. If [code]true[/code], the renderer will automatically determine the "
"exposure setting to adapt to the scene's illumination and the observed light."
msgstr ""
"Если [code]true[/code], включает режим автоэкспозиции тональной компрессии "
"рендерера сцены. Если [code]true[/code], рендерер автоматически определит "
"настройку экспозиции для адаптации к освещению сцены и наблюдаемому свету."

msgid ""
"The scale of the auto exposure effect. Affects the intensity of auto exposure."
msgstr "Масштаб эффекта автоэкспозиции. Влияет на интенсивность автоэкспозиции."

msgid ""
"The speed of the auto exposure effect. Affects the time needed for the camera "
"to perform auto exposure."
msgstr ""
"Скорость эффекта автоэкспозиции. Влияет на время, необходимое камере для "
"выполнения автоэкспозиции."

msgid ""
"Multiplier for the exposure amount. A higher value results in a brighter "
"image."
msgstr ""
"Множитель для величины экспозиции. Более высокое значение дает более яркое "
"изображение."

msgid ""
"Sensitivity of camera sensors, measured in ISO. A higher sensitivity results "
"in a brighter image.\n"
"If [member auto_exposure_enabled] is [code]true[/code], this can be used as a "
"method of exposure compensation, doubling the value will increase the "
"exposure value (measured in EV100) by 1 stop.\n"
"[b]Note:[/b] Only available when [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] is enabled."
msgstr ""
"Чувствительность сенсоров камеры, измеряемая в ISO. Более высокая "
"чувствительность приводит к более яркому изображению.\n"
"Если [member auto_exposure_enabled] имеет значение [code]true[/code], это "
"можно использовать как метод компенсации экспозиции, удвоение значения "
"увеличит значение экспозиции (измеряемое в EV100) на 1 ступень.\n"
"[b]Примечание:[/b] Доступно только при включенном [member "
"ProjectSettings.rendering/lights_and_shadows/use_physical_light_units]."

msgid "Physically-based camera settings."
msgstr "Настройки камеры на основе физики."

msgid ""
"[CameraAttributesPhysical] is used to set rendering settings based on a "
"physically-based camera's settings. It is responsible for exposure, auto-"
"exposure, and depth of field.\n"
"When used in a [WorldEnvironment] it provides default settings for exposure, "
"auto-exposure, and depth of field that will be used by all cameras without "
"their own [CameraAttributes], including the editor camera. When used in a "
"[Camera3D] it will override any [CameraAttributes] set in the "
"[WorldEnvironment] and will override the [Camera3D]s [member Camera3D.far], "
"[member Camera3D.near], [member Camera3D.fov], and [member "
"Camera3D.keep_aspect] properties. When used in [VoxelGI] or [LightmapGI], "
"only the exposure settings will be used.\n"
"The default settings are intended for use in an outdoor environment, tips for "
"settings for use in an indoor environment can be found in each setting's "
"documentation.\n"
"[b]Note:[/b] Depth of field blur is only supported in the Forward+ and Mobile "
"rendering methods, not Compatibility."
msgstr ""
"[CameraAttributesPhysical] используется для установки параметров рендеринга "
"на основе физических настроек камеры. Он отвечает за экспозицию, "
"автоэкспозицию и глубину резкости.\n"
"При использовании в [WorldEnvironment] он предоставляет настройки по "
"умолчанию для экспозиции, автоэкспозиции и глубины резкости, которые будут "
"использоваться всеми камерами без их собственных [CameraAttributes], включая "
"камеру редактора. При использовании в [Camera3D] он переопределит любые "
"[CameraAttributes], установленные в [WorldEnvironment], и переопределит "
"свойства [Camera3D] [member Camera3D.far], [member Camera3D.near], [member "
"Camera3D.fov] и [member Camera3D.keep_aspect]. При использовании в [VoxelGI] "
"или [LightmapGI] будут использоваться только настройки экспозиции.\n"
"Настройки по умолчанию предназначены для использования на открытом воздухе, "
"советы по настройкам для использования в помещении можно найти в документации "
"к каждому параметру.\n"
"[b]Примечание:[/b] Размытие глубины резкости поддерживается только в методах "
"рендеринга Forward+ и Mobile, а не Compatibility."

msgid "Physical light and camera units"
msgstr "Физические световые и камерные блоки"

msgid ""
"Returns the vertical field of view that corresponds to the [member "
"frustum_focal_length]. This value is calculated internally whenever [member "
"frustum_focal_length] is changed."
msgstr ""
"Возвращает вертикальное поле зрения, которое соответствует [member "
"frustum_focal_length]. Это значение вычисляется внутренне всякий раз, когда "
"изменяется [member frustum_focal_length]."

msgid ""
"The maximum luminance (in EV100) used when calculating auto exposure. When "
"calculating scene average luminance, color values will be clamped to at least "
"this value. This limits the auto-exposure from exposing below a certain "
"brightness, resulting in a cut off point where the scene will remain bright."
msgstr ""
"Максимальная яркость (в EV100), используемая при расчете автоэкспозиции. При "
"расчете средней яркости сцены цветовые значения будут ограничены по крайней "
"мере этим значением. Это ограничивает автоэкспозицию от экспонирования ниже "
"определенной яркости, что приводит к точке отсечения, в которой сцена "
"останется яркой."

msgid ""
"The minimum luminance (in EV100) used when calculating auto exposure. When "
"calculating scene average luminance, color values will be clamped to at least "
"this value. This limits the auto-exposure from exposing above a certain "
"brightness, resulting in a cut off point where the scene will remain dark."
msgstr ""
"Минимальная яркость (в EV100), используемая при расчете автоэкспозиции. При "
"расчете средней яркости сцены цветовые значения будут ограничены по крайней "
"мере этим значением. Это ограничивает автоэкспозицию от экспонирования выше "
"определенной яркости, что приводит к точке отсечения, в которой сцена "
"останется темной."

msgid ""
"Size of the aperture of the camera, measured in f-stops. An f-stop is a "
"unitless ratio between the focal length of the camera and the diameter of the "
"aperture. A high aperture setting will result in a smaller aperture which "
"leads to a dimmer image and sharper focus. A low aperture results in a wide "
"aperture which lets in more light resulting in a brighter, less-focused "
"image. Default is appropriate for outdoors at daytime (i.e. for use with a "
"default [DirectionalLight3D]), for indoor lighting, a value between 2 and 4 "
"is more appropriate.\n"
"Only available when [member ProjectSettings.rendering/lights_and_shadows/"
"use_physical_light_units] is enabled."
msgstr ""
"Размер апертуры камеры, измеряемый в f-ступенях. F-ступень — это безразмерное "
"отношение фокусного расстояния камеры к диаметру апертуры. Высокая настройка "
"апертуры приведет к меньшей апертуре, что приведет к более тусклому "
"изображению и более четкому фокусу. Низкая настройка апертуры приведет к "
"широкой апертуре, которая пропускает больше света, что приведет к более "
"яркому, менее сфокусированному изображению. Значение по умолчанию подходит "
"для наружного освещения в дневное время (т. е. для использования с "
"[DirectionalLight3D] по умолчанию), для внутреннего освещения более "
"подходящим является значение от 2 до 4.\n"
"Доступно только при включенном [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units]."

msgid ""
"Time for shutter to open and close, evaluated as [code]1 / shutter_speed[/"
"code] seconds. A higher value will allow less light (leading to a darker "
"image), while a lower value will allow more light (leading to a brighter "
"image).\n"
"Only available when [member ProjectSettings.rendering/lights_and_shadows/"
"use_physical_light_units] is enabled."
msgstr ""
"Время открытия и закрытия затвора, оцениваемое как [code]1 / shutter_speed[/"
"code] секунд. Более высокое значение допускает меньше света (что приводит к "
"более темному изображению), а более низкое значение допускает больше света "
"(что приводит к более яркому изображению).\n"
"Доступно только при включенном [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units]."

msgid ""
"Override value for [member Camera3D.far]. Used internally when calculating "
"depth of field. When attached to a [Camera3D] as its [member "
"Camera3D.attributes], it will override the [member Camera3D.far] property."
msgstr ""
"Переопределить значение для [member Camera3D.far]. Используется внутренне при "
"расчете глубины резкости. При присоединении к [Camera3D] в качестве его "
"[member Camera3D.attributes] переопределит свойство [member Camera3D.far]."

msgid ""
"Distance between camera lens and camera aperture, measured in millimeters. "
"Controls field of view and depth of field. A larger focal length will result "
"in a smaller field of view and a narrower depth of field meaning fewer "
"objects will be in focus. A smaller focal length will result in a wider field "
"of view and a larger depth of field meaning more objects will be in focus. "
"When attached to a [Camera3D] as its [member Camera3D.attributes], it will "
"override the [member Camera3D.fov] property and the [member "
"Camera3D.keep_aspect] property."
msgstr ""
"Расстояние между объективом камеры и апертурой камеры, измеряется в "
"миллиметрах. Управляет полем зрения и глубиной резкости. Большее фокусное "
"расстояние приведет к меньшему полю зрения и меньшей глубине резкости, что "
"означает, что меньше объектов будет в фокусе. Меньшее фокусное расстояние "
"приведет к более широкому полю зрения и большей глубине резкости, что "
"означает, что больше объектов будет в фокусе. При присоединении к [Camera3D] "
"в качестве его [member Camera3D.attributes] он переопределит свойство [member "
"Camera3D.fov] и свойство [member Camera3D.keep_aspect]."

msgid ""
"Distance from camera of object that will be in focus, measured in meters. "
"Internally this will be clamped to be at least 1 millimeter larger than "
"[member frustum_focal_length]."
msgstr ""
"Расстояние от камеры до объекта, который будет в фокусе, измеряется в метрах. "
"Внутренне это будет ограничено как минимум на 1 миллиметр больше, чем [member "
"frustum_focal_length]."

msgid ""
"Override value for [member Camera3D.near]. Used internally when calculating "
"depth of field. When attached to a [Camera3D] as its [member "
"Camera3D.attributes], it will override the [member Camera3D.near] property."
msgstr ""
"Переопределяет значение для [member Camera3D.near]. Используется внутренне "
"при расчете глубины резкости. При присоединении к [Camera3D] в качестве его "
"[member Camera3D.attributes] переопределяет свойство [member Camera3D.near]."

msgid "Camera settings in an easy to use format."
msgstr "Настройки камеры в удобном формате."

msgid ""
"Controls camera-specific attributes such as auto-exposure, depth of field, "
"and exposure override.\n"
"When used in a [WorldEnvironment] it provides default settings for exposure, "
"auto-exposure, and depth of field that will be used by all cameras without "
"their own [CameraAttributes], including the editor camera. When used in a "
"[Camera3D] it will override any [CameraAttributes] set in the "
"[WorldEnvironment]. When used in [VoxelGI] or [LightmapGI], only the exposure "
"settings will be used."
msgstr ""
"Управляет атрибутами камеры, такими как автоэкспозиция, глубина резкости и "
"переопределение экспозиции.\n"
"При использовании в [WorldEnvironment] он предоставляет настройки по "
"умолчанию для экспозиции, автоэкспозиции и глубины резкости, которые будут "
"использоваться всеми камерами без их собственных [CameraAttributes], включая "
"камеру редактора. При использовании в [Camera3D] он переопределяет любые "
"[CameraAttributes], установленные в [WorldEnvironment]. При использовании в "
"[VoxelGI] или [LightmapGI] будут использоваться только настройки экспозиции."

msgid ""
"The maximum sensitivity (in ISO) used when calculating auto exposure. When "
"calculating scene average luminance, color values will be clamped to at least "
"this value. This limits the auto-exposure from exposing below a certain "
"brightness, resulting in a cut off point where the scene will remain bright."
msgstr ""
"Максимальная чувствительность (в ISO), используемая при расчете "
"автоэкспозиции. При расчете средней яркости сцены цветовые значения будут "
"ограничены по крайней мере этим значением. Это ограничивает автоэкспозицию от "
"экспонирования ниже определенной яркости, что приводит к точке отсечения, в "
"которой сцена останется яркой."

msgid ""
"The minimum sensitivity (in ISO) used when calculating auto exposure. When "
"calculating scene average luminance, color values will be clamped to at least "
"this value. This limits the auto-exposure from exposing above a certain "
"brightness, resulting in a cut off point where the scene will remain dark."
msgstr ""
"Минимальная чувствительность (в ISO), используемая при расчете "
"автоэкспозиции. При расчете средней яркости сцены цветовые значения будут "
"ограничены по крайней мере этим значением. Это ограничивает автоэкспозицию от "
"экспонирования выше определенной яркости, что приводит к точке отсечения, в "
"которой сцена останется темной."

msgid ""
"Sets the maximum amount of blur. When using physically-based blur amounts, "
"will instead act as a multiplier. High values lead to an increased amount of "
"blurriness, but can be much more expensive to calculate. It is best to keep "
"this as low as possible for a given art style."
msgstr ""
"Устанавливает максимальное количество размытия. При использовании физически "
"обоснованных значений размытия будет действовать как множитель. Высокие "
"значения приводят к увеличению количества размытия, но могут быть намного "
"более затратными для расчета. Лучше всего поддерживать это значение как можно "
"ниже для данного стиля искусства."

msgid ""
"Objects further from the [Camera3D] by this amount will be blurred by the "
"depth of field effect. Measured in meters."
msgstr ""
"Объекты, находящиеся дальше от [Camera3D] на эту величину, будут размыты "
"эффектом глубины резкости. Измеряется в метрах."

msgid ""
"Enables depth of field blur for objects further than [member "
"dof_blur_far_distance]. Strength of blur is controlled by [member "
"dof_blur_amount] and modulated by [member dof_blur_far_transition].\n"
"[b]Note:[/b] Depth of field blur is only supported in the Forward+ and Mobile "
"rendering methods, not Compatibility."
msgstr ""
"Включает размытие глубины резкости для объектов, находящихся дальше, чем "
"[member dof_blur_far_distance]. Сила размытия контролируется [member "
"dof_blur_amount] и модулируется [member dof_blur_far_transition].\n"
"[b]Примечание:[/b] Размытие глубины резкости поддерживается только в методах "
"рендеринга Forward+ и Mobile, но не Compatibility."

msgid ""
"When positive, distance over which (starting from [member "
"dof_blur_far_distance]) blur effect will scale from 0 to [member "
"dof_blur_amount]. When negative, uses physically-based scaling so depth of "
"field effect will scale from 0 at [member dof_blur_far_distance] and will "
"increase in a physically accurate way as objects get further from the "
"[Camera3D]."
msgstr ""
"При положительном значении расстояние, на котором (начиная с [member "
"dof_blur_far_distance]) эффект размытия будет масштабироваться от 0 до "
"[member dof_blur_amount]. При отрицательном значении используется физически "
"обоснованное масштабирование, поэтому эффект глубины резкости будет "
"масштабироваться от 0 при [member dof_blur_far_distance] и будет "
"увеличиваться физически точным образом по мере удаления объектов от "
"[Camera3D]."

msgid ""
"Objects closer from the [Camera3D] by this amount will be blurred by the "
"depth of field effect. Measured in meters."
msgstr ""
"Объекты, расположенные ближе к [Camera3D] на эту величину, будут размыты "
"эффектом глубины резкости. Измеряется в метрах."

msgid ""
"Enables depth of field blur for objects closer than [member "
"dof_blur_near_distance]. Strength of blur is controlled by [member "
"dof_blur_amount] and modulated by [member dof_blur_near_transition].\n"
"[b]Note:[/b] Depth of field blur is only supported in the Forward+ and Mobile "
"rendering methods, not Compatibility."
msgstr ""
"Включает размытие глубины резкости для объектов ближе, чем [member "
"dof_blur_near_distance]. Сила размытия контролируется [member "
"dof_blur_amount] и модулируется [member dof_blur_near_transition].\n"
"[b]Примечание:[/b] Размытие глубины резкости поддерживается только в методах "
"рендеринга Forward+ и Mobile, но не Compatibility."

msgid ""
"When positive, distance over which blur effect will scale from 0 to [member "
"dof_blur_amount], ending at [member dof_blur_near_distance]. When negative, "
"uses physically-based scaling so depth of field effect will scale from 0 at "
"[member dof_blur_near_distance] and will increase in a physically accurate "
"way as objects get closer to the [Camera3D]."
msgstr ""
"При положительном значении расстояние, на котором эффект размытия будет "
"масштабироваться от 0 до [member dof_blur_amount], заканчиваясь на [member "
"dof_blur_near_distance]. При отрицательном значении используется физически "
"обоснованное масштабирование, поэтому эффект глубины резкости будет "
"масштабироваться от 0 до [member dof_blur_near_distance] и будет "
"увеличиваться физически точным образом по мере приближения объектов к "
"[Camera3D]."

msgid ""
"A camera feed gives you access to a single physical camera attached to your "
"device."
msgstr ""
"Видеопоток с камеры обеспечивает вам доступ к одной физической камере, "
"подключенной к вашему устройству."

msgid ""
"A camera feed gives you access to a single physical camera attached to your "
"device. When enabled, Godot will start capturing frames from the camera which "
"can then be used. See also [CameraServer].\n"
"[b]Note:[/b] Many cameras will return YCbCr images which are split into two "
"textures and need to be combined in a shader. Godot does this automatically "
"for you if you set the environment to show the camera image in the "
"background.\n"
"[b]Note:[/b] This class is currently only implemented on Linux, Android, "
"macOS, and iOS. On other platforms no [CameraFeed]s will be available. To get "
"a [CameraFeed] on iOS, the camera plugin from [url=https://github.com/"
"godotengine/godot-ios-plugins]godot-ios-plugins[/url] is required."
msgstr ""
"Канал камеры дает вам доступ к одной физической камере, подключенной к вашему "
"устройству. При включении Godot начнет захватывать кадры с камеры, которые "
"затем можно использовать. См. также [CameraServer].\n"
"[b]Примечание:[/b] Многие камеры возвращают изображения YCbCr, которые "
"разделены на две текстуры и должны быть объединены в шейдере. Godot делает "
"это автоматически, если вы настроите среду для показа изображения камеры в "
"фоновом режиме.\n"
"[b]Примечание:[/b] Этот класс в настоящее время реализован только в Linux, "
"Android, macOS и iOS. На других платформах [CameraFeed] будет недоступен. "
"Чтобы получить [CameraFeed] на iOS, требуется плагин камеры из [url=https://"
"github.com/godotengine/godot-ios-plugins]godot-ios-plugins[/url]."

msgid "Called when the camera feed is activated."
msgstr "Вызывается при активации камеры."

msgid "Called when the camera feed is deactivated."
msgstr "Вызывается при отключении камеры."

msgid "Returns feed image data type."
msgstr "Возвращает тип данных изображения канала."

msgid "Returns the unique ID for this feed."
msgstr "Возвращает уникальный идентификатор для этого канала."

msgid "Returns the camera's name."
msgstr "Возвращает имя камеры."

msgid "Returns the position of camera on the device."
msgstr "Возвращает положение камеры на устройстве."

msgid ""
"Returns the texture backend ID (usable by some external libraries that need a "
"handle to a texture to write data)."
msgstr ""
"Возвращает идентификатор бэкэнда текстуры (может использоваться некоторыми "
"внешними библиотеками, которым требуется дескриптор текстуры для записи "
"данных)."

msgid "Sets the feed as external feed provided by another library."
msgstr ""
"Устанавливает канал как внешний канал, предоставляемый другой библиотекой."

msgid ""
"Sets the feed format parameters for the given [param index] in the [member "
"formats] array. Returns [code]true[/code] on success. By default, the YUYV "
"encoded stream is transformed to [constant FEED_RGB]. The YUYV encoded stream "
"output format can be changed by setting [param parameters]'s [code]output[/"
"code] entry to one of the following:\n"
"- [code]\"separate\"[/code] will result in [constant FEED_YCBCR_SEP];\n"
"- [code]\"grayscale\"[/code] will result in desaturated [constant FEED_RGB];\n"
"- [code]\"copy\"[/code] will result in [constant FEED_YCBCR]."
msgstr ""
"Устанавливает параметры формата потока для указанного [param index] в массиве "
"[member formats]. Возвращает [code]true[/code] в случае успешного выполнения. "
"По умолчанию поток, закодированный в формате YUYV, преобразуется в [constant "
"FEED_RGB]. Формат выходного потока, закодированного в формате YUYV, можно "
"изменить, установив для записи [code]output[/code] в [param parameters[code]] "
"одно из следующих значений:\n"
"- [code]\"separate\"[/code] приведёт к [constant FEED_YCBCR_SEP];\n"
"- [code]\"grayscale\"[/code] приведёт к обесцвечиванию [constant FEED_RGB];\n"
"- [code]\"copy\"[/code] приведёт к [constant FEED_YCBCR]."

msgid "Sets the camera's name."
msgstr "Задает имя камеры."

msgid "Sets the position of this camera."
msgstr "Устанавливает положение этой камеры."

msgid "Sets RGB image for this feed."
msgstr "Устанавливает RGB-изображение для этого канала."

msgid "Sets YCbCr image for this feed."
msgstr "Устанавливает изображение YCbCr для этого канала."

msgid "If [code]true[/code], the feed is active."
msgstr "Если [code]true[/code], канал активен."

msgid "The transform applied to the camera's image."
msgstr "Преобразование, примененное к изображению с камеры."

msgid ""
"Formats supported by the feed. Each entry is a [Dictionary] describing format "
"parameters."
msgstr ""
"Форматы, поддерживаемые каналом. Каждая запись — это [Словарь (Dictionary)], "
"описывающий параметры формата."

msgid "Emitted when the format has changed."
msgstr "Выдается при изменении формата."

msgid "Emitted when a new frame is available."
msgstr "Выдается, когда доступен новый кадр."

msgid "No image set for the feed."
msgstr "Изображение для ленты не установлено."

msgid "Feed supplies RGB images."
msgstr "Канал поставляет изображения RGB."

msgid "Feed supplies YCbCr images that need to be converted to RGB."
msgstr ""
"Канал поставляет изображения YCbCr, которые необходимо преобразовать в RGB."

msgid ""
"Feed supplies separate Y and CbCr images that need to be combined and "
"converted to RGB."
msgstr ""
"Канал поставляет отдельные изображения Y и CbCr, которые необходимо "
"объединить и преобразовать в RGB."

msgid "Feed supplies external image."
msgstr "Канал поставляет внешнее изображение."

msgid "Unspecified position."
msgstr "Неуказанная должность."

msgid "Camera is mounted at the front of the device."
msgstr "Камера установлена на передней части устройства."

msgid "Camera is mounted at the back of the device."
msgstr "Камера установлена на задней панели устройства."

msgid "Server keeping track of different cameras accessible in Godot."
msgstr "Сервер отслеживает различные камеры, доступные в Godot."

msgid ""
"The [CameraServer] keeps track of different cameras accessible in Godot. "
"These are external cameras such as webcams or the cameras on your phone.\n"
"It is notably used to provide AR modules with a video feed from the camera.\n"
"[b]Note:[/b] This class is currently only implemented on Linux, Android, "
"macOS, and iOS. On other platforms no [CameraFeed]s will be available. To get "
"a [CameraFeed] on iOS, the camera plugin from [url=https://github.com/"
"godotengine/godot-ios-plugins]godot-ios-plugins[/url] is required."
msgstr ""
"[CameraServer] отслеживает различные камеры, доступные в Godot. Это внешние "
"камеры, такие как веб-камеры или камеры на вашем телефоне.\n"
"Он в частности используется для предоставления AR-модулям видеопотока с "
"камеры.\n"
"[b]Примечание:[/b] Этот класс в настоящее время реализован только в Linux, "
"Android, macOS и iOS. На других платформах [CameraFeed] будет недоступен. "
"Чтобы получить [CameraFeed] на iOS, требуется плагин камеры из [url=https://"
"github.com/godotengine/godot-ios-plugins]godot-ios-plugins[/url]."

msgid "Adds the camera [param feed] to the camera server."
msgstr "Добавляет камеру [param feed] на сервер камер."

msgid "Returns an array of [CameraFeed]s."
msgstr "Возвращает массив [CameraFeed]-ов."

msgid ""
"Returns the [CameraFeed] corresponding to the camera with the given [param "
"index]."
msgstr ""
"Возвращает [CameraFeed], соответствующий камере с указанным [param index]."

msgid "Returns the number of [CameraFeed]s registered."
msgstr "Возвращает количество зарегистрированных [CameraFeed]-ов."

msgid "Removes the specified camera [param feed]."
msgstr "Удаляет указанную камеру [param feed]."

msgid ""
"If [code]true[/code], the server is actively monitoring available camera "
"feeds.\n"
"This has a performance cost, so only set it to [code]true[/code] when you're "
"actively accessing the camera.\n"
"[b]Note:[/b] After setting it to [code]true[/code], you can receive updated "
"camera feeds through the [signal camera_feeds_updated] signal.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tCameraServer.camera_feeds_updated.connect(_on_camera_feeds_updated)\n"
"\tCameraServer.monitoring_feeds = true\n"
"\n"
"func _on_camera_feeds_updated():\n"
"\tvar feeds = CameraServer.feeds()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tCameraServer.CameraFeedsUpdated += OnCameraFeedsUpdated;\n"
"\tCameraServer.MonitoringFeeds = true;\n"
"}\n"
"\n"
"void OnCameraFeedsUpdated()\n"
"{\n"
"\tvar feeds = CameraServer.Feeds();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Если [code]true[/code], сервер активно отслеживает доступные видео с камер.\n"
"Это влияет на производительность, поэтому устанавливайте значение [code]true[/"
"code] только при активном доступе к камере.\n"
"[b]Примечание:[/b] После установки значения [code]true[/code] вы сможете "
"получать обновлённые видео с камер через сигнал [signal "
"camera_feeds_updated].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tCameraServer.camera_feeds_updated.connect(_on_camera_feeds_updated)\n"
"\tCameraServer.monitoring_feeds = true\n"
"\n"
"func _on_camera_feeds_updated():\n"
"\tvar feeds = CameraServer.feeds()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tCameraServer.CameraFeedsUpdated += OnCameraFeedsUpdated;\n"
"\tCameraServer.MonitoringFeeds = true;\n"
"}\n"
"\n"
"void OnCameraFeedsUpdated()\n"
"{\n"
"\tvar feeds = CameraServer.Feeds();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Emitted when a [CameraFeed] is added (e.g. a webcam is plugged in)."
msgstr ""
"Выдается при добавлении [CameraFeed] (например, при подключении веб-камеры)."

msgid "Emitted when a [CameraFeed] is removed (e.g. a webcam is unplugged)."
msgstr ""
"Выдается при отключении [CameraFeed] (например, при отключении веб-камеры)."

msgid "Emitted when camera feeds are updated."
msgstr "Выдается при обновлении данных с камер."

msgid "The RGBA camera image."
msgstr "Изображение с камеры RGBA."

msgid "The [url=https://en.wikipedia.org/wiki/YCbCr]YCbCr[/url] camera image."
msgstr ""
"Изображение с камеры [url=https://en.wikipedia.org/wiki/YCbCr]YCbCr[/url]."

msgid "The Y component camera image."
msgstr "Изображение камеры Y-компоненты."

msgid "The CbCr component camera image."
msgstr "Изображение с камеры компонента CbCr."

msgid "Texture provided by a [CameraFeed]."
msgstr "Текстура предоставлена [CameraFeed]."

msgid ""
"This texture gives access to the camera texture provided by a [CameraFeed].\n"
"[b]Note:[/b] Many cameras supply YCbCr images which need to be converted in a "
"shader."
msgstr ""
"Эта текстура дает доступ к текстуре камеры, предоставленной [CameraFeed].\n"
"[b]Примечание:[/b] Многие камеры предоставляют изображения YCbCr, которые "
"необходимо преобразовать в шейдере."

msgid "The ID of the [CameraFeed] for which we want to display the image."
msgstr ""
"Идентификатор [CameraFeed], для которого мы хотим отобразить изображение."

msgid ""
"Convenience property that gives access to the active property of the "
"[CameraFeed]."
msgstr ""
"Удобное свойство, которое предоставляет доступ к активному свойству "
"[CameraFeed]."

msgid ""
"Which image within the [CameraFeed] we want access to, important if the "
"camera image is split in a Y and CbCr component."
msgstr ""
"К какому изображению в [CameraFeed] мы хотим получить доступ, важно, если "
"изображение с камеры разделено на компоненты Y и CbCr."

msgid "Merges several 2D nodes into a single draw operation."
msgstr "Объединяет несколько 2D-узлов в одну операцию рисования."

msgid ""
"Child [CanvasItem] nodes of a [CanvasGroup] are drawn as a single object. It "
"allows to e.g. draw overlapping translucent 2D nodes without blending (set "
"[member CanvasItem.self_modulate] property of [CanvasGroup] to achieve this "
"effect).\n"
"[b]Note:[/b] The [CanvasGroup] uses a custom shader to read from the "
"backbuffer to draw its children. Assigning a [Material] to the [CanvasGroup] "
"overrides the builtin shader. To duplicate the behavior of the builtin shader "
"in a custom [Shader] use the following:\n"
"[codeblock]\n"
"shader_type canvas_item;\n"
"render_mode unshaded;\n"
"\n"
"uniform sampler2D screen_texture : hint_screen_texture, repeat_disable, "
"filter_nearest;\n"
"\n"
"void fragment() {\n"
"\tvec4 c = textureLod(screen_texture, SCREEN_UV, 0.0);\n"
"\n"
"\tif (c.a > 0.0001) {\n"
"\t\tc.rgb /= c.a;\n"
"\t}\n"
"\n"
"\tCOLOR *= c;\n"
"}\n"
"[/codeblock]\n"
"[b]Note:[/b] Since [CanvasGroup] and [member CanvasItem.clip_children] both "
"utilize the backbuffer, children of a [CanvasGroup] who have their [member "
"CanvasItem.clip_children] set to anything other than [constant "
"CanvasItem.CLIP_CHILDREN_DISABLED] will not function correctly."
msgstr ""
"Дочерние узлы [CanvasItem] [CanvasGroup] рисуются как один объект. Это "
"позволяет, например, рисовать перекрывающиеся полупрозрачные 2D-узлы без "
"смешивания (задайте свойство [member CanvasItem.self_modulate] [CanvasGroup], "
"чтобы добиться этого эффекта).\n"
"[b]Примечание:[/b] [CanvasGroup] использует пользовательский шейдер для "
"чтения из буфера заднего плана для рисования своих дочерних элементов. "
"Назначение [Material] [CanvasGroup] переопределяет встроенный шейдер. Чтобы "
"дублировать поведение встроенного шейдера в пользовательском [Shader], "
"используйте следующее:\n"
"[codeblock]\n"
"shader_type canvas_item;\n"
"render_mode unshaded;\n"
"\n"
"uniform sampler2D screen_texture : hint_screen_texture, repeat_disable, "
"filter_nearest;\n"
"\n"
"void fragment() {\n"
"\tvec4 c = textureLod(screen_texture, SCREEN_UV, 0.0);\n"
"\n"
"\tif (c.a > 0.0001) {\n"
"\t\tc.rgb /= c.a;\n"
"\t}\n"
"\n"
"\tCOLOR *= c;\n"
"}\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Поскольку [CanvasGroup] и [member "
"CanvasItem.clip_children] используют фоновый буфер, дочерние элементы "
"[CanvasGroup], у которых [member CanvasItem.clip_children] установлен на что-"
"либо, кроме [constant CanvasItem.CLIP_CHILDREN_DISABLED], не будут работать "
"правильно."

msgid ""
"Sets the size of the margin used to expand the clearing rect of this "
"[CanvasGroup]. This expands the area of the backbuffer that will be used by "
"the [CanvasGroup]. A smaller margin will reduce the area of the backbuffer "
"used which can increase performance, however if [member use_mipmaps] is "
"enabled, a small margin may result in mipmap errors at the edge of the "
"[CanvasGroup]. Accordingly, this should be left as small as possible, but "
"should be increased if artifacts appear along the edges of the canvas group."
msgstr ""
"Устанавливает размер поля, используемого для расширения очищаемого "
"прямоугольника этого [CanvasGroup]. Это расширяет область заднего буфера, "
"которая будет использоваться [CanvasGroup]. Меньшее поле уменьшит область "
"используемого заднего буфера, что может повысить производительность, однако, "
"если включен [member use_mipmaps], небольшое поле может привести к ошибкам "
"mipmap на краю [CanvasGroup]. Соответственно, его следует оставить как можно "
"меньше, но следует увеличить, если по краям группы холстов появляются "
"артефакты."

msgid ""
"Sets the size of a margin used to expand the drawable rect of this "
"[CanvasGroup]. The size of the [CanvasGroup] is determined by fitting a rect "
"around its children then expanding that rect by [member fit_margin]. This "
"increases both the backbuffer area used and the area covered by the "
"[CanvasGroup] both of which can reduce performance. This should be kept as "
"small as possible and should only be expanded when an increased size is "
"needed (e.g. for custom shader effects)."
msgstr ""
"Устанавливает размер поля, используемого для расширения отрисовываемого "
"прямоугольника этого [CanvasGroup]. Размер [CanvasGroup] определяется путем "
"подгонки прямоугольника вокруг его дочерних элементов, а затем расширения "
"этого прямоугольника на [member fit_margin]. Это увеличивает как используемую "
"область заднего буфера, так и область, охватываемую [CanvasGroup], что может "
"снизить производительность. Это должно быть как можно меньше и должно "
"расширяться только тогда, когда требуется увеличенный размер (например, для "
"пользовательских эффектов шейдера)."

msgid ""
"If [code]true[/code], calculates mipmaps for the backbuffer before drawing "
"the [CanvasGroup] so that mipmaps can be used in a custom [ShaderMaterial] "
"attached to the [CanvasGroup]. Generating mipmaps has a performance cost so "
"this should not be enabled unless required."
msgstr ""
"Если [code]true[/code], вычисляет mip-карты для заднего буфера перед "
"рисованием [CanvasGroup], чтобы mip-карты можно было использовать в "
"пользовательском [ShaderMaterial], прикрепленном к [CanvasGroup]. Генерация "
"mip-карт снижает производительность, поэтому ее не следует включать, если это "
"не требуется."

msgid "Abstract base class for everything in 2D space."
msgstr ""
"Абстрактный базовый класс для всего, что находится в двумерном пространстве."

msgid ""
"Abstract base class for everything in 2D space. Canvas items are laid out in "
"a tree; children inherit and extend their parent's transform. [CanvasItem] is "
"extended by [Control] for GUI-related nodes, and by [Node2D] for 2D game "
"objects.\n"
"Any [CanvasItem] can draw. For this, [method queue_redraw] is called by the "
"engine, then [constant NOTIFICATION_DRAW] will be received on idle time to "
"request a redraw. Because of this, canvas items don't need to be redrawn on "
"every frame, improving the performance significantly. Several functions for "
"drawing on the [CanvasItem] are provided (see [code]draw_*[/code] functions). "
"However, they can only be used inside [method _draw], its corresponding "
"[method Object._notification] or methods connected to the [signal draw] "
"signal.\n"
"Canvas items are drawn in tree order on their canvas layer. By default, "
"children are on top of their parents, so a root [CanvasItem] will be drawn "
"behind everything. This behavior can be changed on a per-item basis.\n"
"A [CanvasItem] can be hidden, which will also hide its children. By adjusting "
"various other properties of a [CanvasItem], you can also modulate its color "
"(via [member modulate] or [member self_modulate]), change its Z-index, blend "
"mode, and more.\n"
"Note that properties like transform, modulation, and visibility are only "
"propagated to [i]direct[/i] [CanvasItem] child nodes. If there is a non-"
"[CanvasItem] node in between, like [Node] or [AnimationPlayer], the "
"[CanvasItem] nodes below will have an independent position and [member "
"modulate] chain. See also [member top_level]."
msgstr ""
"Абстрактный базовый класс для всего в 2D-пространстве. Элементы холста "
"располагаются в дереве; дочерние элементы наследуют и расширяют "
"преобразование своего родителя. [CanvasItem] расширяется [Control] для узлов, "
"связанных с GUI, и [Node2D] для 2D-игровых объектов.\n"
"Любой [CanvasItem] может рисовать. Для этого движок вызывает [method "
"queue_redraw], затем во время простоя будет получена [constant "
"NOTIFICATION_DRAW] для запроса перерисовки. Благодаря этому элементы холста "
"не нужно перерисовывать в каждом кадре, что значительно повышает "
"производительность. Предоставляется несколько функций для рисования на "
"[CanvasItem] (см. функции [code]draw_*[/code]). Однако их можно использовать "
"только внутри [method _draw], соответствующего ему [method "
"Object._notification] или методов, связанных с сигналом [signal draw].\n"
"Элементы холста рисуются в древовидном порядке на своем слое холста. По "
"умолчанию дочерние элементы находятся поверх своих родителей, поэтому "
"корневой [CanvasItem] будет отрисован позади всего. Это поведение можно "
"изменить для каждого элемента.\n"
"[CanvasItem] может быть скрыт, что также скроет его дочерние элементы. "
"Изменяя различные другие свойства [CanvasItem], вы также можете модулировать "
"его цвет (через [member modulate] или [member self_modulate]), изменять его Z-"
"индекс, режим смешивания и многое другое.\n"
"Обратите внимание, что такие свойства, как преобразование, модуляция и "
"видимость, распространяются только на [i]direct[/i] дочерние узлы "
"[CanvasItem]. Если между ними есть узел, не являющийся [CanvasItem], например "
"[Node] или [AnimationPlayer], то узлы [CanvasItem] ниже будут иметь "
"независимую позицию и цепочку [member modulate]. См. также [member top_level]."

msgid "Viewport and canvas transforms"
msgstr "Преобразования области просмотра и холста"

msgid "Custom drawing in 2D"
msgstr "Индивидуальный рисунок в 2D"

msgid ""
"Called when [CanvasItem] has been requested to redraw (after [method "
"queue_redraw] is called, either manually or by the engine).\n"
"Corresponds to the [constant NOTIFICATION_DRAW] notification in [method "
"Object._notification]."
msgstr ""
"Вызывается, когда [CanvasItem] был запрошен для перерисовки (после вызова "
"[method queue_redraw], вручную или движком).\n"
"Соответствует уведомлению [constant NOTIFICATION_DRAW] в [method "
"Object._notification]."

msgid ""
"Subsequent drawing commands will be ignored unless they fall within the "
"specified animation slice. This is a faster way to implement animations that "
"loop on background rather than redrawing constantly."
msgstr ""
"Последующие команды рисования будут игнорироваться, если они не попадают в "
"указанный фрагмент анимации. Это более быстрый способ реализовать анимацию, "
"которая зацикливается на фоне, а не перерисовывается постоянно."

msgid ""
"Draws an unfilled arc between the given angles with a uniform [param color] "
"and [param width] and optional antialiasing (supported only for positive "
"[param width]). The larger the value of [param point_count], the smoother the "
"curve. [param center] is defined in local space. See also [method "
"draw_circle].\n"
"If [param width] is negative, it will be ignored and the arc will be drawn "
"using [constant RenderingServer.PRIMITIVE_LINE_STRIP]. This means that when "
"the CanvasItem is scaled, the arc will remain thin. If this behavior is not "
"desired, then pass a positive [param width] like [code]1.0[/code].\n"
"The arc is drawn from [param start_angle] towards the value of [param "
"end_angle] so in clockwise direction if [code]start_angle < end_angle[/code] "
"and counter-clockwise otherwise. Passing the same angles but in reversed "
"order will produce the same arc. If absolute difference of [param "
"start_angle] and [param end_angle] is greater than [constant @GDScript.TAU] "
"radians, then a full circle arc is drawn (i.e. arc will not overlap itself)."
msgstr ""
"Рисует незаполненную дугу между заданными углами с равномерным [param color] "
"и [param width] и опциональным сглаживанием (поддерживается только для "
"положительных значений [param width]). Чем больше значение [param "
"point_count], тем более плавной будет кривая. [param center] определяется в "
"локальном пространстве. См. также [method draw_circle].\n"
"Если [param width] отрицательный, он будет проигнорирован, и дуга будет "
"нарисована с использованием [constant RenderingServer.PRIMITIVE_LINE_STRIP]. "
"Это означает, что при масштабировании CanvasItem дуга останется тонкой. Если "
"такое поведение нежелательно, передайте положительное значение [param width], "
"например, [code]1.0[/code].\n"
"Дуга рисуется от [param start_angle] к значению [param end_angle], то есть по "
"часовой стрелке, если [code]start_angle < end_angle[/code], и против часовой "
"стрелки в противном случае. Передача тех же углов, но в обратном порядке, "
"даст ту же дугу. Если абсолютная разница [param start_angle] и [param "
"end_angle] больше, чем [constant @GDScript.TAU] радиан, то рисуется полная "
"дуга окружности (т.е. дуга не будет перекрывать сама себя)."

msgid ""
"Draws a string first character using a custom font. If [param oversampling] "
"is greater than zero, it is used as font oversampling factor, otherwise "
"viewport oversampling settings are used. [param pos] is defined in local "
"space."
msgstr ""
"Рисует первый символ строки, используя пользовательский шрифт. Если [param "
"oversampling] больше нуля, он используется как коэффициент передискретизации "
"шрифта, в противном случае используются настройки передискретизации области "
"просмотра. [param pos] определяется в локальном пространстве."

msgid ""
"Draws a string first character outline using a custom font. If [param "
"oversampling] is greater than zero, it is used as font oversampling factor, "
"otherwise viewport oversampling settings are used. [param pos] is defined in "
"local space."
msgstr ""
"Рисует контур первого символа строки, используя заданный шрифт. Если [param "
"oversampling] больше нуля, он используется как коэффициент передискретизации "
"шрифта, в противном случае используются настройки передискретизации области "
"просмотра. [param pos] определяется в локальном пространстве."

msgid ""
"Draws a circle, with [param position] defined in local space. See also "
"[method draw_arc], [method draw_polyline], and [method draw_polygon].\n"
"If [param filled] is [code]true[/code], the circle will be filled with the "
"[param color] specified. If [param filled] is [code]false[/code], the circle "
"will be drawn as a stroke with the [param color] and [param width] "
"specified.\n"
"If [param width] is negative, then two-point primitives will be drawn instead "
"of a four-point ones. This means that when the CanvasItem is scaled, the "
"lines will remain thin. If this behavior is not desired, then pass a positive "
"[param width] like [code]1.0[/code].\n"
"If [param antialiased] is [code]true[/code], half transparent \"feathers\" "
"will be attached to the boundary, making outlines smooth.\n"
"[b]Note:[/b] [param width] is only effective if [param filled] is "
"[code]false[/code]."
msgstr ""
"Рисует окружность с параметром [param position], заданным в локальном "
"пространстве. См. также [method draw_arc], [method draw_polyline] и [method "
"draw_polygon].\n"
"Если [param filled] равен [code]true[/code], окружность будет заполнена "
"указанным параметром [param color]. Если [param filled] равен [code]false[/"
"code], окружность будет нарисована обводкой с указанными параметрами [param "
"color] и [param width].\n"
"Если [param width] отрицателен, то будут отрисовываться двухточечные "
"примитивы вместо четырёхточечных. Это означает, что при масштабировании "
"CanvasItem линии останутся тонкими. Если такое поведение нежелательно, "
"передайте положительное значение [param width], например, [code]1.0[/code].\n"
"Если [param antialiased] равен [code]true[/code], к границе будут добавлены "
"полупрозрачные «перья», что сделает контуры плавными.\n"
"[b]Примечание:[/b] [param width] эффективна только в том случае, если [param "
"filled] равен [code]false[/code]."

msgid ""
"Draws a colored polygon of any number of points, convex or concave. The "
"points in the [param points] array are defined in local space. Unlike [method "
"draw_polygon], a single color must be specified for the whole polygon.\n"
"[b]Note:[/b] If you frequently redraw the same polygon with a large number of "
"vertices, consider pre-calculating the triangulation with [method "
"Geometry2D.triangulate_polygon] and using [method draw_mesh], [method "
"draw_multimesh], or [method RenderingServer.canvas_item_add_triangle_array]."
msgstr ""
"Рисует цветной многоугольник из любого количества точек, выпуклых или "
"вогнутых. Точки в массиве [param points] определены в локальном пространстве. "
"В отличие от [method draw_polygon], для всего многоугольника должен быть "
"указан один цвет.\n"
"[b]Примечание:[/b] Если вы часто перерисовываете один и тот же многоугольник "
"с большим количеством вершин, рассмотрите возможность предварительного "
"расчёта триангуляции с помощью [method Geometry2D.triangulate_polygon] и "
"[method draw_mesh], [method draw_multimesh] или [method "
"RenderingServer.canvas_item_add_triangle_array]."

msgid ""
"Draws a dashed line from a 2D point to another, with a given color and width. "
"The [param from] and [param to] positions are defined in local space. See "
"also [method draw_line], [method draw_multiline], and [method "
"draw_polyline].\n"
"If [param width] is negative, then a two-point primitives will be drawn "
"instead of a four-point ones. This means that when the CanvasItem is scaled, "
"the line parts will remain thin. If this behavior is not desired, then pass a "
"positive [param width] like [code]1.0[/code].\n"
"[param dash] is the length of each dash in pixels, with the gap between each "
"dash being the same length. If [param aligned] is [code]true[/code], the "
"length of the first and last dashes may be shortened or lengthened to allow "
"the line to begin and end at the precise points defined by [param from] and "
"[param to]. Both ends are always symmetrical when [param aligned] is "
"[code]true[/code]. If [param aligned] is [code]false[/code], all dashes will "
"have the same length, but the line may appear incomplete at the end due to "
"the dash length not dividing evenly into the line length. Only full dashes "
"are drawn when [param aligned] is [code]false[/code].\n"
"If [param antialiased] is [code]true[/code], half transparent \"feathers\" "
"will be attached to the boundary, making outlines smooth.\n"
"[b]Note:[/b] [param antialiased] is only effective if [param width] is "
"greater than [code]0.0[/code]."
msgstr ""
"Рисует пунктирную линию от одной двухмерной точки к другой заданного цвета и "
"ширины. Позиции [param from] и [param to] определяются в локальном "
"пространстве. См. также [method draw_line], [method draw_multiline] и [method "
"draw_polyline].\n"
"Если [param width] отрицательный, то будет отрисован двухточечный примитив "
"вместо четырёхточечного. Это означает, что при масштабировании CanvasItem "
"части линии останутся тонкими. Если такое поведение нежелательно, передайте "
"положительное значение [param width], например, [code]1.0[/code].\n"
"[param dash] — это длина каждого штриха в пикселях, при этом зазор между "
"штрихами будет такой же длины. Если [param aligned] равен [code]true[/code], "
"длину первого и последнего штрихов можно укоротить или удлинить, чтобы линия "
"начиналась и заканчивалась точно в точках, заданных [param from] и [param "
"to]. Оба конца всегда симметричны, если [param aligned] равно [code]true[/"
"code]. Если [param aligned] равно [code]false[/code], все штрихи будут иметь "
"одинаковую длину, но линия может выглядеть неполной на конце из-за того, что "
"длина штриха не делится нацело на длину линии. Если [param aligned] равно "
"[code]false[/code], штрихи отображаются полностью.\n"
"Если [param antialiased] равно [code]true[/code], к границе будут добавлены "
"полупрозрачные «перья», что сделает контуры плавными.\n"
"[b]Примечание:[/b] [param antialiased] эффективен только в том случае, если "
"[param width] больше [code]0.0[/code]."

msgid ""
"After submitting all animations slices via [method draw_animation_slice], "
"this function can be used to revert drawing to its default state (all "
"subsequent drawing commands will be visible). If you don't care about this "
"particular use case, usage of this function after submitting the slices is "
"not required."
msgstr ""
"После отправки всех фрагментов анимации через [method draw_animation_slice] "
"эта функция может быть использована для возврата рисования в состояние по "
"умолчанию (все последующие команды рисования будут видны). Если вас не "
"интересует этот конкретный вариант использования, использование этой функции "
"после отправки фрагментов не требуется."

msgid ""
"Draws a textured rectangle region of the font texture with LCD subpixel anti-"
"aliasing at a given position, optionally modulated by a color. The [param "
"rect] is defined in local space.\n"
"Texture is drawn using the following blend operation, blend mode of the "
"[CanvasItemMaterial] is ignored:\n"
"[codeblock]\n"
"dst.r = texture.r * modulate.r * modulate.a + dst.r * (1.0 - texture.r * "
"modulate.a);\n"
"dst.g = texture.g * modulate.g * modulate.a + dst.g * (1.0 - texture.g * "
"modulate.a);\n"
"dst.b = texture.b * modulate.b * modulate.a + dst.b * (1.0 - texture.b * "
"modulate.a);\n"
"dst.a = modulate.a + dst.a * (1.0 - modulate.a);\n"
"[/codeblock]"
msgstr ""
"Рисует текстурированную прямоугольную область текстуры шрифта с субпиксельным "
"сглаживанием ЖК-дисплея в заданной позиции, при необходимости модулируемую "
"цветом. Параметр [param rect] определяется в локальном пространстве.\n"
"Текстура рисуется с помощью следующей операции смешивания, режим смешивания "
"[CanvasItemMaterial] игнорируется:\n"
"[codeblock]\n"
"dst.r = texture.r * modulate.r * modulate.a + dst.r * (1.0 - texture.r * "
"modulate.a);\n"
"dst.g = texture.g * modulate.g * modulate.a + dst.g * (1.0 - texture.g * "
"modulate.a);\n"
"dst.b = texture.b * modulate.b * modulate.a + dst.b * (1.0 - texture.b * "
"modulate.a);\n"
"dst.a = modulate.a + dst.a * (1.0 - modulate.a);\n"
"[/codeblock]"

msgid ""
"Draws a line from a 2D point to another, with a given color and width. It can "
"be optionally antialiased. The [param from] and [param to] positions are "
"defined in local space. See also [method draw_dashed_line], [method "
"draw_multiline], and [method draw_polyline].\n"
"If [param width] is negative, then a two-point primitive will be drawn "
"instead of a four-point one. This means that when the CanvasItem is scaled, "
"the line will remain thin. If this behavior is not desired, then pass a "
"positive [param width] like [code]1.0[/code]."
msgstr ""
"Рисует линию от одной 2D точки к другой заданного цвета и ширины. При "
"необходимости можно использовать сглаживание. Позиции [param from] и [param "
"to] определяются в локальном пространстве. См. также [method "
"draw_dashed_line], [method draw_multiline] и [method draw_polyline].\n"
"Если [param width] отрицательный, то будет нарисован двухточечный примитив "
"вместо четырёхточечного. Это означает, что при масштабировании CanvasItem "
"линия останется тонкой. Если такое поведение нежелательно, передайте "
"положительное значение [param width], например, [code]1.0[/code]."

msgid ""
"Draws a [Mesh] in 2D, using the provided texture. See [MeshInstance2D] for "
"related documentation. The [param transform] is defined in local space."
msgstr ""
"Рисует [Mesh] в 2D, используя предоставленную текстуру. См. [MeshInstance2D] "
"для получения соответствующей документации. Параметр [param transform] "
"определяется в локальном пространстве."

msgid ""
"Draws a textured rectangle region of the multichannel signed distance field "
"texture at a given position, optionally modulated by a color. The [param "
"rect] is defined in local space. See [member "
"FontFile.multichannel_signed_distance_field] for more information and caveats "
"about MSDF font rendering.\n"
"If [param outline] is positive, each alpha channel value of pixel in region "
"is set to maximum value of true distance in the [param outline] radius.\n"
"Value of the [param pixel_range] should the same that was used during "
"distance field texture generation."
msgstr ""
"Рисует текстурированную прямоугольную область многоканальной текстуры поля "
"расстояний со знаком в заданной позиции, при необходимости модулируемую "
"цветом. Параметр [param rect] определяется в локальном пространстве. См. "
"[member FontFile.multichannel_signed_distance_field] для получения "
"дополнительной информации и пояснений по рендерингу шрифтов MSDF.\n"
"Если [param outline] положительный, каждое значение альфа-канала пикселя в "
"области устанавливается равным максимальному значению истинного расстояния в "
"радиусе [param outline].\n"
"Значение [param pixel_range] должно совпадать с значением, использованным при "
"генерации текстуры поля расстояний."

msgid ""
"Draws multiple disconnected lines with a uniform [param width] and [param "
"color]. Each line is defined by two consecutive points from [param points] "
"array in local space, i.e. i-th segment consists of [code]points[2 * i][/"
"code], [code]points[2 * i + 1][/code] endpoints. When drawing large amounts "
"of lines, this is faster than using individual [method draw_line] calls. To "
"draw interconnected lines, use [method draw_polyline] instead.\n"
"If [param width] is negative, then two-point primitives will be drawn instead "
"of a four-point ones. This means that when the CanvasItem is scaled, the "
"lines will remain thin. If this behavior is not desired, then pass a positive "
"[param width] like [code]1.0[/code].\n"
"[b]Note:[/b] [param antialiased] is only effective if [param width] is "
"greater than [code]0.0[/code]."
msgstr ""
"Рисует несколько разрозненных линий с одинаковыми параметрами [param width] и "
"[param color]. Каждая линия определяется двумя последовательными точками из "
"массива [param points] в локальном пространстве, т.е. i-й сегмент состоит из "
"[code]points[2 * i][/code], [code]points[2 * i + 1][/code] конечных точек. "
"При рисовании большого количества линий это быстрее, чем использование "
"отдельных вызовов [method draw_line]. Для рисования взаимосвязанных линий "
"используйте [method draw_polyline].\n"
"Если [param width] отрицательный, то будут отрисовываться двухточечные "
"примитивы вместо четырёхточечных. Это означает, что при масштабировании "
"CanvasItem линии останутся тонкими. Если такое поведение нежелательно, "
"передайте положительное значение [param width], например, [code]1.0[/code].\n"
"[b]Примечание:[/b] [param antialiased] эффективен только в том случае, если "
"[param width] больше [code]0.0[/code]."

msgid ""
"Draws multiple disconnected lines with a uniform [param width] and segment-by-"
"segment coloring. Each segment is defined by two consecutive points from "
"[param points] array in local space and a corresponding color from [param "
"colors] array, i.e. i-th segment consists of [code]points[2 * i][/code], "
"[code]points[2 * i + 1][/code] endpoints and has [code]colors[i][/code] "
"color. When drawing large amounts of lines, this is faster than using "
"individual [method draw_line] calls. To draw interconnected lines, use "
"[method draw_polyline_colors] instead.\n"
"If [param width] is negative, then two-point primitives will be drawn instead "
"of a four-point ones. This means that when the CanvasItem is scaled, the "
"lines will remain thin. If this behavior is not desired, then pass a positive "
"[param width] like [code]1.0[/code].\n"
"[b]Note:[/b] [param antialiased] is only effective if [param width] is "
"greater than [code]0.0[/code]."
msgstr ""
"Рисует несколько разрозненных линий с равномерной [param width] и "
"посегментной раскраской. Каждый сегмент определяется двумя последовательными "
"точками из массива [param points] в локальном пространстве и соответствующим "
"цветом из массива [param colors], т.е. i-й сегмент состоит из [code]points[2 "
"* i][/code], [code]points[2 * i + 1][/code] конечных точек и имеет цвет "
"[code]colors[i][/code]. При рисовании большого количества линий это быстрее, "
"чем использование отдельных вызовов [method draw_line]. Для рисования "
"взаимосвязанных линий используйте [method draw_polyline_colors].\n"
"Если [param width] отрицательный, то будут отрисовываться двухточечные "
"примитивы вместо четырёхточечных. Это означает, что при масштабировании "
"CanvasItem линии останутся тонкими. Если такое поведение нежелательно, "
"передайте положительное значение [param width], например, [code]1.0[/code].\n"
"[b]Примечание:[/b] [param antialiased] эффективен только в том случае, если "
"[param width] больше, чем [code]0.0[/code]."

msgid ""
"Breaks [param text] into lines and draws it using the specified [param font] "
"at the [param pos] in local space (top-left corner). The text will have its "
"color multiplied by [param modulate]. If [param width] is greater than or "
"equal to 0, the text will be clipped if it exceeds the specified width. If "
"[param oversampling] is greater than zero, it is used as font oversampling "
"factor, otherwise viewport oversampling settings are used."
msgstr ""
"Разбивает [param text] на строки и рисует их с указанным [param font] в точке "
"[param pos] в локальном пространстве (в верхнем левом углу). Цвет текста "
"будет умножен на [param modulate]. Если [param width] больше или равен 0, "
"текст будет обрезан, если превысит указанную ширину. Если [param "
"oversampling] больше нуля, он используется как коэффициент передискретизации "
"шрифта, в противном случае используются настройки передискретизации области "
"просмотра."

msgid ""
"Breaks [param text] to the lines and draws text outline using the specified "
"[param font] at the [param pos] in local space (top-left corner). The text "
"will have its color multiplied by [param modulate]. If [param width] is "
"greater than or equal to 0, the text will be clipped if it exceeds the "
"specified width. If [param oversampling] is greater than zero, it is used as "
"font oversampling factor, otherwise viewport oversampling settings are used."
msgstr ""
"Разбивает [param text] на строки и рисует контур текста, используя указанный "
"[param font] в точке [param pos] в локальном пространстве (в левом верхнем "
"углу). Цвет текста будет умножен на [param modulate]. Если [param width] "
"больше или равен 0, текст будет обрезан, если превысит указанную ширину. Если "
"[param oversampling] больше нуля, он используется как коэффициент "
"передискретизации шрифта, в противном случае используются настройки "
"передискретизации области просмотра."

msgid ""
"Draws a [MultiMesh] in 2D with the provided texture. See "
"[MultiMeshInstance2D] for related documentation."
msgstr ""
"Рисует [MultiMesh] в 2D с предоставленной текстурой. См. "
"[MultiMeshInstance2D] для соответствующей документации."

msgid ""
"Draws a solid polygon of any number of points, convex or concave. Unlike "
"[method draw_colored_polygon], each point's color can be changed "
"individually. The [param points] array is defined in local space. See also "
"[method draw_polyline] and [method draw_polyline_colors]. If you need more "
"flexibility (such as being able to use bones), use [method "
"RenderingServer.canvas_item_add_triangle_array] instead.\n"
"[b]Note:[/b] If you frequently redraw the same polygon with a large number of "
"vertices, consider pre-calculating the triangulation with [method "
"Geometry2D.triangulate_polygon] and using [method draw_mesh], [method "
"draw_multimesh], or [method RenderingServer.canvas_item_add_triangle_array]."
msgstr ""
"Рисует сплошной многоугольник из любого количества точек, выпуклый или "
"вогнутый. В отличие от метода [method draw_colored_polygon], цвет каждой "
"точки можно менять индивидуально. Массив [param points] определён в локальном "
"пространстве. См. также методы [method draw_polyline] и [method "
"draw_polyline_colors]. Если вам нужна большая гибкость (например, возможность "
"использовать кости), используйте метод [method "
"RenderingServer.canvas_item_add_triangle_array].\n"
"[b]Примечание:[/b] Если вы часто перерисовываете один и тот же многоугольник "
"с большим количеством вершин, рассмотрите возможность предварительного "
"расчёта триангуляции с помощью метода [method Geometry2D.triangulate_polygon] "
"и метода [method draw_mesh], метода [method draw_multimesh] или метода "
"[method RenderingServer.canvas_item_add_triangle_array]."

msgid ""
"Draws interconnected line segments with a uniform [param color] and [param "
"width] and optional antialiasing (supported only for positive [param width]). "
"The [param points] array is defined in local space. When drawing large "
"amounts of lines, this is faster than using individual [method draw_line] "
"calls. To draw disconnected lines, use [method draw_multiline] instead. See "
"also [method draw_polygon].\n"
"If [param width] is negative, it will be ignored and the polyline will be "
"drawn using [constant RenderingServer.PRIMITIVE_LINE_STRIP]. This means that "
"when the CanvasItem is scaled, the polyline will remain thin. If this "
"behavior is not desired, then pass a positive [param width] like [code]1.0[/"
"code]."
msgstr ""
"Рисует соединённые отрезки линий с одинаковыми [param color] и [param width] "
"и опциональным сглаживанием (поддерживается только для положительных значений "
"[param width]). Массив [param points] определён в локальном пространстве. При "
"рисовании большого количества линий это быстрее, чем использование отдельных "
"вызовов [method draw_line]. Для рисования несвязанных линий используйте "
"[method draw_multiline]. См. также [method draw_polygon].\n"
"Если [param width] отрицательный, он будет проигнорирован, и ломаная линия "
"будет отрисована с помощью [constant RenderingServer.PRIMITIVE_LINE_STRIP]. "
"Это означает, что при масштабировании CanvasItem ломаная линия останется "
"тонкой. Если такое поведение нежелательно, передайте положительное значение "
"[param width], например, [code]1.0[/code]."

msgid ""
"Draws interconnected line segments with a uniform [param width], point-by-"
"point coloring, and optional antialiasing (supported only for positive [param "
"width]). Colors assigned to line points match by index between [param points] "
"and [param colors], i.e. each line segment is filled with a gradient between "
"the colors of the endpoints. The [param points] array is defined in local "
"space. When drawing large amounts of lines, this is faster than using "
"individual [method draw_line] calls. To draw disconnected lines, use [method "
"draw_multiline_colors] instead. See also [method draw_polygon].\n"
"If [param width] is negative, it will be ignored and the polyline will be "
"drawn using [constant RenderingServer.PRIMITIVE_LINE_STRIP]. This means that "
"when the CanvasItem is scaled, the polyline will remain thin. If this "
"behavior is not desired, then pass a positive [param width] like [code]1.0[/"
"code]."
msgstr ""
"Рисует соединённые отрезки линий с равномерной шириной [param width], "
"поточечной раскраской и опциональным сглаживанием (поддерживается только для "
"положительных значений [param width]). Цвета, назначенные точкам линии, "
"соответствуют индексам между [param points] и [param colors], т.е. каждый "
"отрезок линии заполняется градиентом между цветами конечных точек. Массив "
"[param points] определён в локальном пространстве. При рисовании большого "
"количества линий это быстрее, чем использование отдельных вызовов [method "
"draw_line]. Для рисования несвязанных линий используйте [method "
"draw_multiline_colors]. См. также [method draw_polygon].\n"
"Если [param width] отрицательный, он будет проигнорирован, и ломаная линия "
"будет отрисована с помощью [constant RenderingServer.PRIMITIVE_LINE_STRIP]. "
"Это означает, что при масштабировании CanvasItem ломаная линия останется "
"тонкой. Если такое поведение нежелательно, передайте положительное значение "
"[param width], например, [code]1.0[/code]."

msgid ""
"Draws a custom primitive. 1 point for a point, 2 points for a line, 3 points "
"for a triangle, and 4 points for a quad. If 0 points or more than 4 points "
"are specified, nothing will be drawn and an error message will be printed. "
"The [param points] array is defined in local space. See also [method "
"draw_line], [method draw_polyline], [method draw_polygon], and [method "
"draw_rect]."
msgstr ""
"Рисует пользовательский примитив. 1 точка для точки, 2 точки для линии, 3 "
"точки для треугольника и 4 точки для четырёхугольника. Если указано 0 точек "
"или более 4 точек, ничего не будет отрисовано и будет выведено сообщение об "
"ошибке. Массив [param points] определён в локальном пространстве. См. также "
"[method draw_line], [method draw_polyline], [method draw_polygon] и [method "
"draw_rect]."

msgid ""
"Draws a rectangle. If [param filled] is [code]true[/code], the rectangle will "
"be filled with the [param color] specified. If [param filled] is [code]false[/"
"code], the rectangle will be drawn as a stroke with the [param color] and "
"[param width] specified. The [param rect] is specified in local space. See "
"also [method draw_texture_rect].\n"
"If [param width] is negative, then two-point primitives will be drawn instead "
"of a four-point ones. This means that when the CanvasItem is scaled, the "
"lines will remain thin. If this behavior is not desired, then pass a positive "
"[param width] like [code]1.0[/code].\n"
"If [param antialiased] is [code]true[/code], half transparent \"feathers\" "
"will be attached to the boundary, making outlines smooth.\n"
"[b]Note:[/b] [param width] is only effective if [param filled] is "
"[code]false[/code].\n"
"[b]Note:[/b] Unfilled rectangles drawn with a negative [param width] may not "
"display perfectly. For example, corners may be missing or brighter due to "
"overlapping lines (for a translucent [param color])."
msgstr ""
"Рисует прямоугольник. Если [param filled] равен [code]true[/code], "
"прямоугольник будет залит указанным цветом [param color]. Если [param filled] "
"равен [code]false[/code], прямоугольник будет нарисован обводкой с указанными "
"[param color] и [param width]. Параметр [param rect] задаётся в локальном "
"пространстве. См. также [method draw_texture_rect].\n"
"Если [param width] отрицательный, то будут отрисовываться двухточечные "
"примитивы вместо четырёхточечных. Это означает, что при масштабировании "
"CanvasItem линии останутся тонкими. Если такое поведение нежелательно, "
"передайте положительное значение [param width], например, [code]1.0[/code].\n"
"Если [param antialiased] равен [code]true[/code], к границе будут добавлены "
"полупрозрачные «перья», что сделает контуры плавными.\n"
"[b]Примечание:[/b] [param width] эффективен только в том случае, если [param "
"filled] имеет значение [code]false[/code].\n"
"[b]Примечание:[/b] Незаполненные прямоугольники, нарисованные с отрицательным "
"значением [param width], могут отображаться некорректно. Например, углы могут "
"отсутствовать или быть ярче из-за перекрывающихся линий (для полупрозрачного "
"[param color])."

msgid ""
"Sets a custom local transform for drawing via components. Anything drawn "
"afterwards will be transformed by this.\n"
"[b]Note:[/b] [member FontFile.oversampling] does [i]not[/i] take [param "
"scale] into account. This means that scaling up/down will cause bitmap fonts "
"and rasterized (non-MSDF) dynamic fonts to appear blurry or pixelated. To "
"ensure text remains crisp regardless of scale, you can enable MSDF font "
"rendering by enabling [member ProjectSettings.gui/theme/"
"default_font_multichannel_signed_distance_field] (applies to the default "
"project font only), or enabling [b]Multichannel Signed Distance Field[/b] in "
"the import options of a DynamicFont for custom fonts. On system fonts, "
"[member SystemFont.multichannel_signed_distance_field] can be enabled in the "
"inspector."
msgstr ""
"Задаёт пользовательское локальное преобразование для отрисовки через "
"компоненты. Всё, что будет отрисовано после этого, будет преобразовано этим "
"преобразованием.\n"
"[b]Примечание:[/b] [member FontFile.oversampling] [i]не[/i] учитывает [param "
"scale]. Это означает, что масштабирование приведёт к размытию или "
"пикселизации растровых (не MSDF) динамических шрифтов. Чтобы текст оставался "
"чётким независимо от масштаба, можно включить рендеринг шрифтов MSDF, включив "
"[member ProjectSettings.gui/theme/"
"default_font_multichannel_signed_distance_field] (применяется только к шрифту "
"проекта по умолчанию) или [b]Multichannel Signed Distance Field[/b] в "
"параметрах импорта DynamicFont для пользовательских шрифтов. Для системных "
"шрифтов [member SystemFont.multichannel_signed_distance_field] можно включить "
"в инспекторе."

msgid ""
"Sets a custom local transform for drawing via matrix. Anything drawn "
"afterwards will be transformed by this."
msgstr ""
"Задаёт локальное преобразование для рисования через матрицу. Всё, что будет "
"отрисовано после этого, будет преобразовано этим преобразованием."

msgid ""
"Draws [param text] using the specified [param font] at the [param pos] in "
"local space (bottom-left corner using the baseline of the font). The text "
"will have its color multiplied by [param modulate]. If [param width] is "
"greater than or equal to 0, the text will be clipped if it exceeds the "
"specified width. If [param oversampling] is greater than zero, it is used as "
"font oversampling factor, otherwise viewport oversampling settings are used.\n"
"[b]Example:[/b] Draw \"Hello world\", using the project's default font:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# If using this method in a script that redraws constantly, move the\n"
"# `default_font` declaration to a member variable assigned in `_ready()`\n"
"# so the Control is only created once.\n"
"var default_font = ThemeDB.fallback_font\n"
"var default_font_size = ThemeDB.fallback_font_size\n"
"draw_string(default_font, Vector2(64, 64), \"Hello world\", "
"HORIZONTAL_ALIGNMENT_LEFT, -1, default_font_size)\n"
"[/gdscript]\n"
"[csharp]\n"
"// If using this method in a script that redraws constantly, move the\n"
"// `default_font` declaration to a member variable assigned in `_Ready()`\n"
"// so the Control is only created once.\n"
"Font defaultFont = ThemeDB.FallbackFont;\n"
"int defaultFontSize = ThemeDB.FallbackFontSize;\n"
"DrawString(defaultFont, new Vector2(64, 64), \"Hello world\", "
"HORIZONTAL_ALIGNMENT_LEFT, -1, defaultFontSize);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method Font.draw_string]."
msgstr ""
"Рисует [param text] с заданным [param font] в точке [param pos] в локальном "
"пространстве (в левом нижнем углу, используя базовую линию шрифта). Цвет "
"текста будет умножен на [param modulate]. Если [param width] больше или равен "
"0, текст будет обрезан при превышении заданной ширины. Если [param "
"oversampling] больше нуля, он используется как коэффициент передискретизации "
"шрифта, в противном случае используются настройки передискретизации области "
"просмотра.\n"
"[b]Пример:[/b] Нарисовать надпись «Hello world» шрифтом проекта по "
"умолчанию:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# При использовании этого метода в скрипте, который постоянно "
"перерисовывается, переместите\n"
"# объявление `default_font` в переменную-член, назначенную в `_ready()`,\n"
"# чтобы элемент управления создавался только один раз.\n"
"var default_font = ThemeDB.fallback_font\n"
"var default_font_size = ThemeDB.fallback_font_size\n"
"draw_string(default_font, Vector2(64, 64), \"Hello world\", "
"HORIZONTAL_ALIGNMENT_LEFT, -1, default_font_size)\n"
"[/gdscript]\n"
"[csharp]\n"
"# При использовании этого метода в скрипте, который постоянно "
"перерисовывается, переместите\n"
"# объявление `default_font` в переменную-член, назначенную в `_Ready()`,\n"
"# чтобы элемент управления создавался только один раз.\n"
"Font defaultFont = ThemeDB.FallbackFont;\n"
"int defaultFontSize = ThemeDB.FallbackFontSize;\n"
"DrawString(defaultFont, new Vector2(64, 64), \"Hello world\", "
"HORIZONTAL_ALIGNMENT_LEFT, -1, defaultFontSize);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. также [method Font.draw_string]."

msgid ""
"Draws [param text] outline using the specified [param font] at the [param "
"pos] in local space (bottom-left corner using the baseline of the font). The "
"text will have its color multiplied by [param modulate]. If [param width] is "
"greater than or equal to 0, the text will be clipped if it exceeds the "
"specified width. If [param oversampling] is greater than zero, it is used as "
"font oversampling factor, otherwise viewport oversampling settings are used."
msgstr ""
"Рисует контур [param text] с заданным [param font] в точке [param pos] в "
"локальном пространстве (в левом нижнем углу, используя базовую линию шрифта). "
"Цвет текста будет умножен на [param modulate]. Если [param width] больше или "
"равен 0, текст будет обрезан при превышении заданной ширины. Если [param "
"oversampling] больше нуля, он используется как коэффициент передискретизации "
"шрифта, в противном случае используются настройки передискретизации области "
"просмотра."

msgid "Draws a styled rectangle. The [param rect] is defined in local space."
msgstr ""
"Рисует стилизованный прямоугольник. Параметр [param rect] определяется в "
"локальном пространстве."

msgid ""
"Draws a texture at a given position. The [param position] is defined in local "
"space."
msgstr ""
"Рисует текстуру в заданной позиции. Параметр [param position] определяется в "
"локальном пространстве."

msgid ""
"Draws a textured rectangle at a given position, optionally modulated by a "
"color. The [param rect] is defined in local space. If [param transpose] is "
"[code]true[/code], the texture will have its X and Y coordinates swapped. See "
"also [method draw_rect] and [method draw_texture_rect_region]."
msgstr ""
"Рисует текстурированный прямоугольник в заданной позиции, возможно, "
"модулируемый цветом. Параметр [param rect] определяется в локальном "
"пространстве. Если [param transpose] равен [code]true[/code], координаты X и "
"Y текстуры поменяются местами. См. также [method draw_rect] и [method "
"draw_texture_rect_region]."

msgid ""
"Draws a textured rectangle from a texture's region (specified by [param "
"src_rect]) at a given position in local space, optionally modulated by a "
"color. If [param transpose] is [code]true[/code], the texture will have its X "
"and Y coordinates swapped. See also [method draw_texture_rect]."
msgstr ""
"Рисует текстурированный прямоугольник из области текстуры (указанной "
"параметром [param src_rect]) в заданной точке локального пространства, при "
"необходимости модулируя его цветом. Если параметр [param transpose] равен "
"[code]true[/code], координаты X и Y текстуры поменяются местами. См. также "
"[method draw_texture_rect]."

msgid ""
"Forces the node's transform to update. Fails if the node is not inside the "
"tree. See also [method get_transform].\n"
"[b]Note:[/b] For performance reasons, transform changes are usually "
"accumulated and applied [i]once[/i] at the end of the frame. The update "
"propagates through [CanvasItem] children, as well. Therefore, use this method "
"only when you need an up-to-date transform (such as during physics "
"operations)."
msgstr ""
"Заставляет обновить преобразование узла. Не удается, если узел не находится "
"внутри дерева. См. также [method get_transform].\n"
"[b]Примечание:[/b] Из соображений производительности изменения преобразования "
"обычно накапливаются и применяются [i]один раз[/i] в конце кадра. Обновление "
"также распространяется на дочерние элементы [CanvasItem]. Поэтому используйте "
"этот метод только тогда, когда вам нужно актуальное преобразование (например, "
"во время физических операций)."

msgid ""
"Returns the [RID] of the [World2D] canvas where this node is registered to, "
"used by the [RenderingServer]."
msgstr ""
"Возвращает [RID] холста [World2D], на котором зарегистрирован этот узел, "
"используемый в [RenderingServer]."

msgid ""
"Returns the internal canvas item [RID] used by the [RenderingServer] for this "
"node."
msgstr ""
"Возвращает внутренний элемент холста [RID], используемый в [RenderingServer] "
"для этого узла."

msgid ""
"Returns the [CanvasLayer] that contains this node, or [code]null[/code] if "
"the node is not in any [CanvasLayer]."
msgstr ""
"Возвращает [CanvasLayer], содержащий этот узел, или [code]null[/code], если "
"узел не находится ни в одном [CanvasLayer]."

msgid ""
"Returns the transform of this node, converted from its registered canvas's "
"coordinate system to its viewport's coordinate system. See also [method "
"Node.get_viewport]."
msgstr ""
"Возвращает преобразование этого узла, преобразованное из зарегистрированной "
"системы координат холста в систему координат его области просмотра. См. также "
"[method Node.get_viewport]."

msgid ""
"Returns mouse cursor's global position relative to the [CanvasLayer] that "
"contains this node.\n"
"[b]Note:[/b] For screen-space coordinates (e.g. when using a non-embedded "
"[Popup]), you can use [method DisplayServer.mouse_get_position]."
msgstr ""
"Возвращает глобальную позицию курсора мыши относительно [CanvasLayer], "
"содержащего этот узел.\n"
"[b]Примечание:[/b] Для координат экранного пространства (например, при "
"использовании невстроенного [Popup]) можно использовать [method "
"DisplayServer.mouse_get_position]."

msgid ""
"Returns the global transform matrix of this item, i.e. the combined transform "
"up to the topmost [CanvasItem] node. The topmost item is a [CanvasItem] that "
"either has no parent, has non-[CanvasItem] parent or it has [member "
"top_level] enabled."
msgstr ""
"Возвращает глобальную матрицу преобразования этого элемента, т. е. "
"объединенное преобразование до самого верхнего узла [CanvasItem]. Самый "
"верхний элемент — это [CanvasItem], у которого либо нет родителя, либо есть "
"родитель, отличный от [CanvasItem], либо включен [member top_level]."

msgid ""
"Returns the transform from the local coordinate system of this [CanvasItem] "
"to the [Viewport]s coordinate system."
msgstr ""
"Возвращает преобразование из локальной системы координат этого [CanvasItem] в "
"систему координат [Viewport]-ов."

msgid "Get the value of a shader parameter as set on this instance."
msgstr ""
"Получить значение параметра шейдера, установленное для данного экземпляра."

msgid ""
"Returns the mouse's position in this [CanvasItem] using the local coordinate "
"system of this [CanvasItem]."
msgstr ""
"Возвращает положение мыши в этом [CanvasItem], используя локальную систему "
"координат этого [CanvasItem]."

msgid ""
"Returns the transform of this [CanvasItem] in global screen coordinates (i.e. "
"taking window position into account). Mostly useful for editor plugins.\n"
"Equals to [method get_global_transform] if the window is embedded (see "
"[member Viewport.gui_embed_subwindows])."
msgstr ""
"Возвращает преобразование этого [CanvasItem] в глобальных координатах экрана "
"(т. е. с учетом положения окна). В основном полезно для плагинов редактора.\n"
"Равно [method get_global_transform], если окно встроено (см. [member "
"Viewport.gui_embed_subwindows])."

msgid "Returns the transform matrix of this [CanvasItem]."
msgstr "Возвращает матрицу преобразования этого [CanvasItem]."

msgid ""
"Returns this node's viewport boundaries as a [Rect2]. See also [method "
"Node.get_viewport]."
msgstr ""
"Возвращает границы области просмотра этого узла как [Rect2]. См. также "
"[method Node.get_viewport]."

msgid ""
"Returns the transform of this node, converted from its registered canvas's "
"coordinate system to its viewport embedder's coordinate system. See also "
"[method Viewport.get_final_transform] and [method Node.get_viewport]."
msgstr ""
"Возвращает преобразование этого узла, преобразованное из зарегистрированной "
"системы координат холста в систему координат его вьюпорта-эмбеддера. См. "
"также [method Viewport.get_final_transform] и [method Node.get_viewport]."

msgid ""
"Returns [code]true[/code] if the layer at the given index is set in [member "
"visibility_layer]."
msgstr ""
"Возвращает [code]true[/code], если слой с указанным индексом установлен в "
"[member visible_layer]."

msgid ""
"Returns the [World2D] this node is registered to.\n"
"Usually, this is the same as this node's viewport (see [method "
"Node.get_viewport] and [method Viewport.find_world_2d])."
msgstr ""
"Возвращает [World2D], в котором зарегистрирован этот узел.\n"
"Обычно это то же самое, что и область просмотра этого узла (см. [method "
"Node.get_viewport] и [method Viewport.find_world_2d])."

msgid ""
"Hide the [CanvasItem] if it's currently visible. This is equivalent to "
"setting [member visible] to [code]false[/code]."
msgstr ""
"Скрыть [CanvasItem], если он в данный момент виден. Это эквивалентно "
"установке [member visible] на [code]false[/code]."

msgid ""
"Returns [code]true[/code] if the node receives [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] whenever its local transform changes. "
"This is enabled with [method set_notify_local_transform]."
msgstr ""
"Возвращает [code]true[/code], если узел получает [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] всякий раз, когда изменяется его "
"локальное преобразование. Это включается с помощью [method "
"set_notify_local_transform]."

msgid ""
"Returns [code]true[/code] if the node receives [constant "
"NOTIFICATION_TRANSFORM_CHANGED] whenever its global transform changes. This "
"is enabled with [method set_notify_transform]."
msgstr ""
"Возвращает [code]true[/code], если узел получает [constant "
"NOTIFICATION_TRANSFORM_CHANGED] всякий раз, когда изменяется его глобальное "
"преобразование. Это включается с помощью [method set_notify_transform]."

msgid ""
"Returns [code]true[/code] if the node is present in the [SceneTree], its "
"[member visible] property is [code]true[/code] and all its ancestors are also "
"visible. If any ancestor is hidden, this node will not be visible in the "
"scene tree, and is therefore not drawn (see [method _draw]).\n"
"Visibility is checked only in parent nodes that inherit from [CanvasItem], "
"[CanvasLayer], and [Window]. If the parent is of any other type (such as "
"[Node], [AnimationPlayer], or [Node3D]), it is assumed to be visible.\n"
"[b]Note:[/b] This method does not take [member visibility_layer] into "
"account, so even if this method returns [code]true[/code], the node might end "
"up not being rendered."
msgstr ""
"Возвращает [code]true[/code], если узел присутствует в [SceneTree], его "
"свойство [member visible] равно [code]true[/code] и все его предки также "
"видны. Если какой-либо предок скрыт, этот узел не будет виден в дереве сцены "
"и, следовательно, не будет отрисован (см. [method _draw]).\n"
"Видимость проверяется только в родительских узлах, которые наследуются от "
"[CanvasItem], [CanvasLayer] и [Window]. Если родительский узел имеет любой "
"другой тип (например, [Node], [AnimationPlayer] или [Node3D]), он считается "
"видимым.\n"
"[b]Примечание:[/b] Этот метод не учитывает [member visible_layer], поэтому "
"даже если этот метод возвращает [code]true[/code], узел может оказаться "
"неотрисованным."

msgid ""
"Transforms [param viewport_point] from the viewport's coordinates to this "
"node's local coordinates.\n"
"For the opposite operation, use [method get_global_transform_with_canvas].\n"
"[codeblock]\n"
"var viewport_point = get_global_transform_with_canvas() * local_point\n"
"[/codeblock]"
msgstr ""
"Преобразует [param viewport_point] из координат области просмотра в локальные "
"координаты этого узла.\n"
"Для противоположной операции используйте [method "
"get_global_transform_with_canvas].\n"
"[codeblock]\n"
"var viewport_point = get_global_transform_with_canvas() * local_point\n"
"[/codeblock]"

msgid ""
"Returns a copy of the given [param event] with its coordinates converted from "
"global space to this [CanvasItem]'s local space. If not possible, returns the "
"same [InputEvent] unchanged."
msgstr ""
"Возвращает копию заданного [param event] с его координатами, преобразованными "
"из глобального пространства в локальное пространство этого [CanvasItem]. Если "
"это невозможно, возвращает тот же [InputEvent] без изменений."

msgid ""
"Moves this node below its siblings, usually causing the node to draw on top "
"of its siblings. Does nothing if this node does not have a parent. See also "
"[method Node.move_child]."
msgstr ""
"Перемещает этот узел ниже его братьев и сестер, обычно заставляя узел "
"рисоваться поверх своих братьев и сестер. Ничего не делает, если у этого узла "
"нет родителя. См. также [method Node.move_child]."

msgid ""
"Queues the [CanvasItem] to redraw. During idle time, if [CanvasItem] is "
"visible, [constant NOTIFICATION_DRAW] is sent and [method _draw] is called. "
"This only occurs [b]once[/b] per frame, even if this method has been called "
"multiple times."
msgstr ""
"Ставит в очередь [CanvasItem] для перерисовки. Во время простоя, если "
"[CanvasItem] виден, отправляется [constant NOTIFICATION_DRAW] и вызывается "
"[method _draw]. Это происходит только [b]один раз[/b] за кадр, даже если этот "
"метод вызывался несколько раз."

msgid ""
"Set the value of a shader uniform for this instance only ([url=$DOCS_URL/"
"tutorials/shaders/shader_reference/shading_language.html#per-instance-"
"uniforms]per-instance uniform[/url]). See also [method "
"ShaderMaterial.set_shader_parameter] to assign a uniform on all instances "
"using the same [ShaderMaterial].\n"
"[b]Note:[/b] For a shader uniform to be assignable on a per-instance basis, "
"it [i]must[/i] be defined with [code]instance uniform ...[/code] rather than "
"[code]uniform ...[/code] in the shader code.\n"
"[b]Note:[/b] [param name] is case-sensitive and must match the name of the "
"uniform in the code exactly (not the capitalized name in the inspector)."
msgstr ""
"Установите значение шейдерной униформы только для этого экземпляра "
"([url=$DOCS_URL/tutorials/shaders/shader_reference/shading_language.html#per-"
"instance-uniforms]per-instance uniform[/url]). См. также [method "
"ShaderMaterial.set_shader_parameter], чтобы назначить униформу для всех "
"экземпляров, использующих один и тот же [ShaderMaterial].\n"
"[b]Примечание:[/b] Чтобы шейдерную униформу можно было назначать для каждого "
"экземпляра, она [i]должна[/i] быть определена с помощью [code]instance "
"uniform ...[/code], а не [code]uniform ...[/code] в коде шейдера.\n"
"[b]Примечание:[/b] [param name] чувствительна к регистру и должна точно "
"соответствовать имени униформы в коде (а не заглавному имени в инспекторе)."

msgid ""
"If [code]true[/code], the node will receive [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] whenever its local transform changes.\n"
"[b]Note:[/b] Many canvas items such as [Bone2D] or [CollisionShape2D] "
"automatically enable this in order to function correctly."
msgstr ""
"Если [code]true[/code], узел будет получать [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] всякий раз, когда его локальное "
"преобразование изменяется.\n"
"[b]Примечание:[/b] Многие элементы холста, такие как [Bone2D] или "
"[CollisionShape2D], автоматически включают это для правильной работы."

msgid ""
"If [code]true[/code], the node will receive [constant "
"NOTIFICATION_TRANSFORM_CHANGED] whenever global transform changes.\n"
"[b]Note:[/b] Many canvas items such as [Camera2D] or [Light2D] automatically "
"enable this in order to function correctly."
msgstr ""
"Если [code]true[/code], узел будет получать [constant "
"NOTIFICATION_TRANSFORM_CHANGED] всякий раз, когда изменяется глобальное "
"преобразование.\n"
"[b]Примечание:[/b] Многие элементы холста, такие как [Camera2D] или "
"[Light2D], автоматически включают это для корректной работы."

msgid ""
"Set/clear individual bits on the rendering visibility layer. This simplifies "
"editing this [CanvasItem]'s visibility layer."
msgstr ""
"Установить/сбросить отдельные биты на слое видимости рендеринга. Это упрощает "
"редактирование слоя видимости этого [CanvasItem]."

msgid ""
"Show the [CanvasItem] if it's currently hidden. This is equivalent to setting "
"[member visible] to [code]true[/code].\n"
"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
"visible is to call one of the multiple [code]popup*()[/code] functions "
"instead."
msgstr ""
"Показывать [CanvasItem], если он в данный момент скрыт. Это эквивалентно "
"установке [member visible] на [code]true[/code].\n"
"[b]Примечание:[/b] Для элементов управления, которые наследуют [Popup], "
"правильный способ сделать их видимыми — вызвать одну из нескольких функций "
"[code]popup*()[/code]."

msgid ""
"The mode in which this node clips its children, acting as a mask.\n"
"[b]Note:[/b] Clipping nodes cannot be nested or placed within a "
"[CanvasGroup]. If an ancestor of this node clips its children or is a "
"[CanvasGroup], then this node's clip mode should be set to [constant "
"CLIP_CHILDREN_DISABLED] to avoid unexpected behavior."
msgstr ""
"Режим, в котором этот узел обрезает свои дочерние элементы, действуя как "
"маска.\n"
"[b]Примечание:[/b] Узлы обрезания не могут быть вложенными или помещены в "
"[CanvasGroup]. Если предок этого узла обрезает свои дочерние элементы или "
"является [CanvasGroup], то режим обрезания этого узла должен быть установлен "
"на [constant CLIP_CHILDREN_DISABLED], чтобы избежать непредвиденного "
"поведения."

msgid ""
"The rendering layers in which this [CanvasItem] responds to [Light2D] nodes."
msgstr ""
"Слои рендеринга, в которых этот [CanvasItem] реагирует на узлы [Light2D]."

msgid "The material applied to this [CanvasItem]."
msgstr "Материал, примененный к этому [CanvasItem]."

msgid ""
"The color applied to this [CanvasItem]. This property does affect child "
"[CanvasItem]s, unlike [member self_modulate] which only affects the node "
"itself."
msgstr ""
"Цвет, примененный к этому [CanvasItem]. Это свойство влияет на дочерние "
"[CanvasItem], в отличие от [member self_modulate], которое влияет только на "
"сам узел."

msgid ""
"The color applied to this [CanvasItem]. This property does [b]not[/b] affect "
"child [CanvasItem]s, unlike [member modulate] which affects both the node "
"itself and its children.\n"
"[b]Note:[/b] Internal children are also not affected by this property (see "
"the [code]include_internal[/code] parameter in [method Node.add_child]). For "
"built-in nodes this includes sliders in [ColorPicker], and the tab bar in "
"[TabContainer]."
msgstr ""
"Цвет, примененный к этому [CanvasItem]. Это свойство [b]не[/b] влияет на "
"дочерние [CanvasItem], в отличие от [member modulate], которое влияет как на "
"сам узел, так и на его дочерние элементы.\n"
"[b]Примечание:[/b] Внутренние дочерние элементы также не затрагиваются этим "
"свойством (см. параметр [code]include_internal[/code] в [method "
"Node.add_child]). Для встроенных узлов это включает ползунки в [ColorPicker] "
"и панель вкладок в [TabContainer]."

msgid "If [code]true[/code], this node draws behind its parent."
msgstr ""
"Если [code]true[/code], этот узел отрисовывается позади своего родителя."

msgid "The filtering mode used to render this [CanvasItem]'s texture(s)."
msgstr ""
"Режим фильтрации, используемый для рендеринга текстур этого [CanvasItem]."

msgid ""
"The repeating mode used to render this [CanvasItem]'s texture(s). It affects "
"what happens when the texture is sampled outside its extents, for example by "
"setting a [member Sprite2D.region_rect] that is larger than the texture or "
"assigning [Polygon2D] UV points outside the texture.\n"
"[b]Note:[/b] [TextureRect] is not affected by [member texture_repeat], as it "
"uses its own texture repeating implementation."
msgstr ""
"Режим повторения, используемый для отрисовки текстур этого [CanvasItem]. Он "
"влияет на то, что происходит при выборке текстуры за пределами её границ, "
"например, путём установки [member Sprite2D.region_rect] большего размера, чем "
"текстура, или назначения UV-точек [Polygon2D] за пределами текстуры.\n"
"[b]Примечание:[/b] [TextureRect] не подвержен влиянию [member "
"texture_repeat], поскольку использует собственную реализацию повторения "
"текстуры."

msgid ""
"If [code]true[/code], this [CanvasItem] will [i]not[/i] inherit its transform "
"from parent [CanvasItem]s. Its draw order will also be changed to make it "
"draw on top of other [CanvasItem]s that do not have [member top_level] set to "
"[code]true[/code]. The [CanvasItem] will effectively act as if it was placed "
"as a child of a bare [Node]."
msgstr ""
"Если [code]true[/code], этот [CanvasItem] [i]не[/i] унаследует свое "
"преобразование от родительских [CanvasItem]. Его порядок отрисовки также "
"будет изменен, чтобы он отрисовывался поверх других [CanvasItem], у которых "
"[member top_level] не установлен на [code]true[/code]. [CanvasItem] будет "
"фактически действовать так, как если бы он был помещен в качестве дочернего "
"элемента пустого [Node]."

msgid ""
"If [code]true[/code], the parent [CanvasItem]'s [member material] is used as "
"this node's material."
msgstr ""
"Если [code]true[/code], то в качестве материала этого узла используется "
"[member material] родительского [CanvasItem]."

msgid ""
"The rendering layer in which this [CanvasItem] is rendered by [Viewport] "
"nodes. A [Viewport] will render a [CanvasItem] if it and all its parents "
"share a layer with the [Viewport]'s canvas cull mask."
msgstr ""
"Слой рендеринга, в котором этот [CanvasItem] рендерится узлами [Viewport]. "
"[Viewport] будет рендерить [CanvasItem], если он и все его родители разделяют "
"слой с маской отбраковки холста [Viewport]."

msgid ""
"If [code]true[/code], this [CanvasItem] may be drawn. Whether this "
"[CanvasItem] is actually drawn depends on the visibility of all of its "
"[CanvasItem] ancestors. In other words: this [CanvasItem] will be drawn when "
"[method is_visible_in_tree] returns [code]true[/code] and all [CanvasItem] "
"ancestors share at least one [member visibility_layer] with this "
"[CanvasItem].\n"
"[b]Note:[/b] For controls that inherit [Popup], the correct way to make them "
"visible is to call one of the multiple [code]popup*()[/code] functions "
"instead."
msgstr ""
"Если [code]true[/code], этот [CanvasItem] может быть нарисован. Будет ли этот "
"[CanvasItem] нарисован на самом деле, зависит от видимости всех его предков "
"[CanvasItem]. Другими словами: этот [CanvasItem] будет нарисован, когда "
"[method is_visible_in_tree] вернет [code]true[/code] и все предки "
"[CanvasItem] разделят по крайней мере один [member vision_layer] с этим "
"[CanvasItem].\n"
"[b]Примечание:[/b] Для элементов управления, которые наследуют [Popup], "
"правильный способ сделать их видимыми — вызвать вместо этого одну из "
"нескольких функций [code]popup*()[/code]."

msgid ""
"If [code]true[/code], this and child [CanvasItem] nodes with a higher Y "
"position are rendered in front of nodes with a lower Y position. If "
"[code]false[/code], this and child [CanvasItem] nodes are rendered normally "
"in scene tree order.\n"
"With Y-sorting enabled on a parent node ('A') but disabled on a child node "
"('B'), the child node ('B') is sorted but its children ('C1', 'C2', etc.) "
"render together on the same Y position as the child node ('B'). This allows "
"you to organize the render order of a scene without changing the scene tree.\n"
"Nodes sort relative to each other only if they are on the same [member "
"z_index]."
msgstr ""
"Если [code]true[/code], этот и дочерние узлы [CanvasItem] с более высокой "
"позицией Y отображаются перед узлами с более низкой позицией Y. Если "
"[code]false[/code], этот и дочерние узлы [CanvasItem] отображаются нормально "
"в порядке дерева сцены.\n"
"При включенной сортировке Y на родительском узле ('A'), но отключенной на "
"дочернем узле ('B'), дочерний узел ('B') сортируется, но его дочерние узлы "
"('C1', 'C2' и т. д.) отображаются вместе на той же позиции Y, что и дочерний "
"узел ('B'). Это позволяет организовать порядок рендеринга сцены, не изменяя "
"дерево сцены.\n"
"Узлы сортируются относительно друг друга, только если они находятся на одном "
"и том же [member z_index]."

msgid ""
"If [code]true[/code], this node's final Z index is relative to its parent's Z "
"index.\n"
"For example, if [member z_index] is [code]2[/code] and its parent's final Z "
"index is [code]3[/code], then this node's final Z index will be [code]5[/"
"code] ([code]2 + 3[/code])."
msgstr ""
"Если [code]true[/code], конечный Z-индекс этого узла относится к Z-индексу "
"его родителя.\n"
"Например, если [member z_index] равен [code]2[/code], а конечный Z-индекс его "
"родителя равен [code]3[/code], то конечный Z-индекс этого узла будет равен "
"[code]5[/code] ([code]2 + 3[/code])."

msgid ""
"The order in which this node is drawn. A node with a higher Z index will "
"display in front of others. Must be between [constant "
"RenderingServer.CANVAS_ITEM_Z_MIN] and [constant "
"RenderingServer.CANVAS_ITEM_Z_MAX] (inclusive).\n"
"[b]Note:[/b] The Z index does [b]not[/b] affect the order in which "
"[CanvasItem] nodes are processed or the way input events are handled. This is "
"especially important to keep in mind for [Control] nodes."
msgstr ""
"Порядок, в котором отрисовывается этот узел. Узел с более высоким индексом Z "
"будет отображаться поверх других. Должен быть между [constant "
"RenderingServer.CANVAS_ITEM_Z_MIN] и [constant "
"RenderingServer.CANVAS_ITEM_Z_MAX] (включительно).\n"
"[b]Примечание:[/b] Индекс Z [b]не[/b] влияет на порядок обработки узлов "
"[CanvasItem] или способ обработки событий ввода. Это особенно важно иметь в "
"виду для узлов [Control]."

msgid ""
"Emitted when the [CanvasItem] must redraw, [i]after[/i] the related [constant "
"NOTIFICATION_DRAW] notification, and [i]before[/i] [method _draw] is called.\n"
"[b]Note:[/b] Deferred connections do not allow drawing through the "
"[code]draw_*[/code] methods."
msgstr ""
"Вызывается, когда [CanvasItem] должен перерисоваться, [i]после[/i] "
"соответствующего уведомления [constant NOTIFICATION_DRAW] и [i]до[/i] вызова "
"[method _draw].\n"
"[b]Примечание:[/b] Отложенные соединения не позволяют рисовать через методы "
"[code]draw_*[/code]."

msgid ""
"Emitted when this node becomes hidden, i.e. it's no longer visible in the "
"tree (see [method is_visible_in_tree])."
msgstr ""
"Выдается, когда этот узел становится скрытым, т.е. он больше не виден в "
"дереве (см. [method is_visible_in_tree])."

msgid ""
"Emitted when the [CanvasItem]'s boundaries (position or size) change, or when "
"an action took place that may have affected these boundaries (e.g. changing "
"[member Sprite2D.texture])."
msgstr ""
"Вызывается при изменении границ [CanvasItem] (положения или размера) или при "
"выполнении действия, которое могло повлиять на эти границы (например, "
"изменение [member Sprite2D.texture])."

msgid ""
"Emitted when the [CanvasItem]'s visibility changes, either because its own "
"[member visible] property changed or because its visibility in the tree "
"changed (see [method is_visible_in_tree]).\n"
"This signal is emitted [i]after[/i] the related [constant "
"NOTIFICATION_VISIBILITY_CHANGED] notification."
msgstr ""
"Выдается при изменении видимости [CanvasItem], либо из-за изменения его "
"собственного свойства [member visible], либо из-за изменения его видимости в "
"дереве (см. [method is_visible_in_tree]). \n"
"Этот сигнал выдается [i]после[/i] связанного уведомления [constant "
"NOTIFICATION_VISIBILITY_CHANGED]."

msgid ""
"Notification received when this node's global transform changes, if [method "
"is_transform_notification_enabled] is [code]true[/code]. See also [method "
"set_notify_transform] and [method get_transform].\n"
"[b]Note:[/b] Many canvas items such as [Camera2D] or [CollisionObject2D] "
"automatically enable this in order to function correctly."
msgstr ""
"Уведомление получено, когда изменяется глобальное преобразование этого узла, "
"если [method is_transform_notification_enabled] равно [code]true[/code]. См. "
"также [method set_notify_transform] и [method get_transform].\n"
"[b]Примечание:[/b] Многие элементы холста, такие как [Camera2D] или "
"[CollisionObject2D], автоматически включают это для корректной работы."

msgid ""
"Notification received when this node's transform changes, if [method "
"is_local_transform_notification_enabled] is [code]true[/code]. This is not "
"received when a parent [Node2D]'s transform changes. See also [method "
"set_notify_local_transform].\n"
"[b]Note:[/b] Many canvas items such as [Camera2D] or [CollisionShape2D] "
"automatically enable this in order to function correctly."
msgstr ""
"Уведомление получено, когда изменяется преобразование этого узла, если "
"[method is_local_transform_notification_enabled] равно [code]true[/code]. Это "
"не получено, когда изменяется преобразование родительского [Node2D]. См. "
"также [method set_notify_local_transform].\n"
"[b]Примечание:[/b] Многие элементы холста, такие как [Camera2D] или "
"[CollisionShape2D], автоматически включают это для корректной работы."

msgid "The [CanvasItem] is requested to draw (see [method _draw])."
msgstr "[CanvasItem] запрашивается для рисования (см. [method _draw])."

msgid ""
"Notification received when this node's visibility changes (see [member "
"visible] and [method is_visible_in_tree]).\n"
"This notification is received [i]before[/i] the related [signal "
"visibility_changed] signal."
msgstr ""
"Уведомление получено, когда видимость этого узла изменяется (см. [member "
"visible] и [method is_visible_in_tree]).\n"
"Это уведомление получено [i]до[/i] связанного сигнала [signal "
"visibility_changed]."

msgid "The [CanvasItem] has entered the canvas."
msgstr "[CanvasItem] вошел в холст."

msgid "The [CanvasItem] has exited the canvas."
msgstr "[CanvasItem] вышел за пределы холста."

msgid ""
"Notification received when this [CanvasItem] is registered to a new [World2D] "
"(see [method get_world_2d])."
msgstr ""
"Уведомление получено, когда этот [CanvasItem] зарегистрирован в новом "
"[World2D] (см. [method get_world_2d])."

msgid "The [CanvasItem] will inherit the filter from its parent."
msgstr "[CanvasItem] унаследует фильтр от своего родителя."

msgid ""
"The texture filter reads from the nearest pixel and blends between the "
"nearest 2 mipmaps (or uses the nearest mipmap if [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"is [code]true[/code]). This makes the texture look pixelated from up close, "
"and smooth from a distance.\n"
"Use this for non-pixel art textures that may be viewed at a low scale (e.g. "
"due to [Camera2D] zoom or sprite scaling), as mipmaps are important to smooth "
"out pixels that are smaller than on-screen pixels."
msgstr ""
"Фильтр текстуры считывает данные с ближайшего пикселя и смешивает данные "
"между двумя ближайшими mip-картами (или использует ближайшую mip-карту, если "
"[member ProjectSettings.rendering/textures/default_filters/"
"use_nearest_mipmap_filter] имеет значение [code]true[/code]). Это делает "
"текстуру пикселизированной вблизи и гладкой на расстоянии. \n"
"Используйте это для текстур, не являющихся пиксельным искусством, которые "
"можно просматривать в низком масштабе (например, из-за масштабирования "
"[Camera2D] или масштабирования спрайтов), поскольку mip-карты важны для "
"сглаживания пикселей, которые меньше пикселей на экране."

msgid ""
"The texture filter blends between the nearest 4 pixels and between the "
"nearest 2 mipmaps (or uses the nearest mipmap if [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"is [code]true[/code]). This makes the texture look smooth from up close, and "
"smooth from a distance.\n"
"Use this for non-pixel art textures that may be viewed at a low scale (e.g. "
"due to [Camera2D] zoom or sprite scaling), as mipmaps are important to smooth "
"out pixels that are smaller than on-screen pixels."
msgstr ""
"Фильтр текстуры смешивает ближайшие 4 пикселя и ближайшие 2 mip-карты (или "
"использует ближайшую mip-карту, если [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] имеет значение "
"[code]true[/code]). Это делает текстуру гладкой вблизи и гладкой на "
"расстоянии. \n"
"Используйте это для текстур непиксельной графики, которые можно просматривать "
"в низком масштабе (например, из-за масштабирования [Camera2D] или "
"масштабирования спрайтов), поскольку mip-карты важны для сглаживания "
"пикселей, которые меньше пикселей на экране."

msgid ""
"The texture filter reads from the nearest pixel and blends between 2 mipmaps "
"(or uses the nearest mipmap if [member ProjectSettings.rendering/textures/"
"default_filters/use_nearest_mipmap_filter] is [code]true[/code]) based on the "
"angle between the surface and the camera view. This makes the texture look "
"pixelated from up close, and smooth from a distance. Anisotropic filtering "
"improves texture quality on surfaces that are almost in line with the camera, "
"but is slightly slower. The anisotropic filtering level can be changed by "
"adjusting [member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level].\n"
"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
"TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate in this case."
msgstr ""
"Текстурный фильтр считывает данные с ближайшего пикселя и смешивает два mip-"
"текстурных отображения (или использует ближайшее mip-текстурное отображение, "
"если [member ProjectSettings.rendering/textures/default_filters/"
"use_nearest_mipmap_filter] имеет значение [code]true[/code]) на основе угла "
"между поверхностью и видом камеры. Это делает текстуру пикселизированной "
"вблизи и гладкой на расстоянии. Анизотропная фильтрация улучшает качество "
"текстуры на поверхностях, которые почти совпадают с камерой, но работает "
"немного медленнее. Уровень анизотропной фильтрации можно изменить, настроив "
"[member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level].\n"
"[b]Примечание:[/b] Этот текстурный фильтр редко бывает полезен в 2D-проектах. "
"[constant TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] обычно более подходит в этом "
"случае."

msgid ""
"The texture filter blends between the nearest 4 pixels and blends between 2 "
"mipmaps (or uses the nearest mipmap if [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] is [code]true[/code]) "
"based on the angle between the surface and the camera view. This makes the "
"texture look smooth from up close, and smooth from a distance. Anisotropic "
"filtering improves texture quality on surfaces that are almost in line with "
"the camera, but is slightly slower. The anisotropic filtering level can be "
"changed by adjusting [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level].\n"
"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
"TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate in this case."
msgstr ""
"Фильтр текстуры смешивает ближайшие 4 пикселя и смешивает 2 mip-карты (или "
"использует ближайшую mip-карту, если [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] имеет значение "
"[code]true[/code]) на основе угла между поверхностью и видом камеры. Это "
"делает текстуру гладкой вблизи и гладкой на расстоянии. Анизотропная "
"фильтрация улучшает качество текстуры на поверхностях, которые почти "
"совпадают с камерой, но немного медленнее. Уровень анизотропной фильтрации "
"можно изменить, настроив [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level].\n"
"[b]Примечание:[/b] Этот фильтр текстуры редко полезен в 2D-проектах. "
"[constant TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] обычно более подходит в этом "
"случае."

msgid ""
"The texture does not repeat. Sampling the texture outside its extents will "
"result in \"stretching\" of the edge pixels. You can avoid this by ensuring a "
"1-pixel fully transparent border on each side of the texture."
msgstr ""
"Текстура не повторяется. Выборка текстуры за пределами её границ приведёт к "
"\"растяжению\" граничных пикселей. Этого можно избежать, обеспечив полностью "
"прозрачную границу шириной в 1 пиксель с каждой стороны текстуры."

msgid "The texture repeats when exceeding the texture's size."
msgstr "Текстура повторяется при превышении размера текстуры."

msgid ""
"The texture repeats when the exceeding the texture's size in a \"2×2 tiled "
"mode\". Repeated textures at even positions are mirrored."
msgstr ""
"Текстура повторяется при превышении размера текстуры в \"плиточном режиме "
"2×2\". Повторяющиеся текстуры в четных позициях зеркально отражаются."

msgid "Represents the size of the [enum TextureRepeat] enum."
msgstr "Представляет размер перечисления [enum TextureRepeat]."

msgid "Children are drawn over this node and are not clipped."
msgstr "Дочерние элементы рисуются поверх этого узла и не обрезаются."

msgid ""
"This node is used as a mask and is [b]not[/b] drawn. The mask is based on "
"this node's alpha channel: Opaque pixels are kept, transparent pixels are "
"discarded, and semi-transparent pixels are blended in according to their "
"opacity. Children are clipped to this node's drawn area."
msgstr ""
"Этот узел используется как маска и [b]не[/b] рисуется. Маска основана на "
"альфа-канале этого узла: непрозрачные пиксели сохраняются, прозрачные пиксели "
"отбрасываются, а полупрозрачные пиксели смешиваются в соответствии с их "
"непрозрачностью. Потомки обрезаются по рисуемой области этого узла."

msgid ""
"This node is used as a mask and is also drawn. The mask is based on this "
"node's alpha channel: Opaque pixels are kept, transparent pixels are "
"discarded, and semi-transparent pixels are blended in according to their "
"opacity. Children are clipped to the parent's drawn area."
msgstr ""
"Этот узел используется как маска и также рисуется. Маска основана на альфа-"
"канале этого узла: непрозрачные пиксели сохраняются, прозрачные пиксели "
"отбрасываются, а полупрозрачные пиксели смешиваются в соответствии с их "
"непрозрачностью. Дочерние элементы обрезаются по рисуемой области родителя."

msgid "Represents the size of the [enum ClipChildrenMode] enum."
msgstr "Представляет размер перечисления [enum ClipChildrenMode]."

msgid "A material for [CanvasItem]s."
msgstr "Материал для [CanvasItem]-ов."

msgid ""
"[CanvasItemMaterial]s provide a means of modifying the textures associated "
"with a CanvasItem. They specialize in describing blend and lighting behaviors "
"for textures. Use a [ShaderMaterial] to more fully customize a material's "
"interactions with a [CanvasItem]."
msgstr ""
"[CanvasItemMaterial]-ы предоставляют средства изменения текстур, связанных с "
"CanvasItem. Они специализируются на описании поведения смешивания и освещения "
"для текстур. Используйте [ShaderMaterial] для более полной настройки "
"взаимодействия материала с [CanvasItem]."

msgid ""
"The manner in which a material's rendering is applied to underlying textures."
msgstr "Способ, которым рендеринг материала применяется к базовым текстурам."

msgid "The manner in which material reacts to lighting."
msgstr "Способ, которым материал реагирует на освещение."

msgid ""
"The number of columns in the spritesheet assigned as [Texture2D] for a "
"[GPUParticles2D] or [CPUParticles2D].\n"
"[b]Note:[/b] This property is only used and visible in the editor if [member "
"particles_animation] is [code]true[/code]."
msgstr ""
"Количество столбцов в таблице спрайтов, назначенных как [Texture2D] для "
"[GPUParticles2D] или [CPUParticles2D].\n"
"[b]Примечание:[/b] Это свойство используется и отображается в редакторе "
"только в том случае, если [member parts_animation] имеет значение [code]true[/"
"code]."

msgid ""
"If [code]true[/code], the particles animation will loop.\n"
"[b]Note:[/b] This property is only used and visible in the editor if [member "
"particles_animation] is [code]true[/code]."
msgstr ""
"Если [code]true[/code], анимация частиц будет зациклена.\n"
"[b]Примечание:[/b] Это свойство используется и отображается в редакторе "
"только в том случае, если [member parts_animation] имеет значение [code]true[/"
"code]."

msgid ""
"The number of rows in the spritesheet assigned as [Texture2D] for a "
"[GPUParticles2D] or [CPUParticles2D].\n"
"[b]Note:[/b] This property is only used and visible in the editor if [member "
"particles_animation] is [code]true[/code]."
msgstr ""
"Количество строк в таблице спрайтов, назначенных как [Texture2D] для "
"[GPUParticles2D] или [CPUParticles2D].\n"
"[b]Примечание:[/b] Это свойство используется и отображается в редакторе "
"только в том случае, если [member parts_animation] имеет значение [code]true[/"
"code]."

msgid ""
"If [code]true[/code], enable spritesheet-based animation features when "
"assigned to [GPUParticles2D] and [CPUParticles2D] nodes. The [member "
"ParticleProcessMaterial.anim_speed_max] or [member "
"CPUParticles2D.anim_speed_max] should also be set to a positive value for the "
"animation to play.\n"
"This property (and other [code]particles_anim_*[/code] properties that depend "
"on it) has no effect on other types of nodes."
msgstr ""
"Если [code]true[/code], включите функции анимации на основе спрайт-листа при "
"назначении узлам [GPUParticles2D] и [CPUParticles2D]. [member "
"ParticleProcessMaterial.anim_speed_max] или [member "
"CPUParticles2D.anim_speed_max] также должны быть установлены на положительное "
"значение для воспроизведения анимации. \n"
"Это свойство (и другие свойства [code]particles_anim_*[/code], которые "
"зависят от него) не влияет на другие типы узлов."

msgid ""
"Mix blending mode. Colors are assumed to be independent of the alpha "
"(opacity) value."
msgstr ""
"Режим смешивания. Предполагается, что цвета не зависят от значения альфа "
"(непрозрачности)."

msgid "Additive blending mode."
msgstr "Аддитивный режим смешивания."

msgid "Subtractive blending mode."
msgstr "Режим вычитающего смешивания."

msgid "Multiplicative blending mode."
msgstr "Многократное смешивание."

msgid ""
"Mix blending mode. Colors are assumed to be premultiplied by the alpha "
"(opacity) value."
msgstr ""
"Режим смешивания. Предполагается, что цвета предварительно умножаются на "
"значение альфа (непрозрачности)."

msgid ""
"Render the material using both light and non-light sensitive material "
"properties."
msgstr ""
"Визуализируйте материал, используя как светочувствительные, так и "
"несветочувствительные свойства материала."

msgid "Render the material as if there were no light."
msgstr "Визуализируйте материал так, как будто бы света нет."

msgid "Render the material as if there were only light."
msgstr "Визуализируйте материал так, как будто есть только свет."

msgid "A node used for independent rendering of objects within a 2D scene."
msgstr "Узел, используемый для независимой визуализации объектов в 2D-сцене."

msgid ""
"[CanvasItem]-derived nodes that are direct or indirect children of a "
"[CanvasLayer] will be drawn in that layer. The layer is a numeric index that "
"defines the draw order. The default 2D scene renders with index [code]0[/"
"code], so a [CanvasLayer] with index [code]-1[/code] will be drawn below, and "
"a [CanvasLayer] with index [code]1[/code] will be drawn above. This order "
"will hold regardless of the [member CanvasItem.z_index] of the nodes within "
"each layer.\n"
"[CanvasLayer]s can be hidden and they can also optionally follow the "
"viewport. This makes them useful for HUDs like health bar overlays (on layers "
"[code]1[/code] and higher) or backgrounds (on layers [code]-1[/code] and "
"lower).\n"
"[b]Note:[/b] Embedded [Window]s are placed on layer [code]1024[/code]. "
"[CanvasItem]s on layers [code]1025[/code] and higher appear in front of "
"embedded windows.\n"
"[b]Note:[/b] Each [CanvasLayer] is drawn on one specific [Viewport] and "
"cannot be shared between multiple [Viewport]s, see [member custom_viewport]. "
"When using multiple [Viewport]s, for example in a split-screen game, you need "
"to create an individual [CanvasLayer] for each [Viewport] you want it to be "
"drawn on."
msgstr ""
"Узлы, производные от [CanvasItem], которые являются прямыми или косвенными "
"потомками [CanvasLayer], будут отрисованы в этом слое. Слой — это числовой "
"индекс, который определяет порядок отрисовки. 2D-сцена по умолчанию "
"визуализируется с индексом [code]0[/code], поэтому [CanvasLayer] с индексом "
"[code]-1[/code] будет отрисован ниже, а [CanvasLayer] с индексом [code]1[/"
"code] будет отрисован выше. Этот порядок будет сохраняться независимо от "
"[member CanvasItem.z_index] узлов в каждом слое.\n"
"[CanvasLayer] могут быть скрыты, и они также могут опционально следовать за "
"областью просмотра. Это делает их полезными для HUD, таких как наложения "
"полос здоровья (на слоях [code]1[/code] и выше) или фонов (на слоях [code]-1[/"
"code] и ниже).\n"
"[b]Примечание:[/b] Встроенные [Window] размещаются на слое [code]1024[/code]. "
"[CanvasItem] на слоях [code]1025[/code] и выше отображаются поверх встроенных "
"окон.\n"
"[b]Примечание:[/b] Каждый [CanvasLayer] рисуется на одном определенном "
"[Viewport] и не может совместно использоваться несколькими [Viewport], см. "
"[member custom_viewport]. При использовании нескольких [Viewport], например, "
"в игре с разделенным экраном, вам необходимо создать отдельный [CanvasLayer] "
"для каждого [Viewport], на котором вы хотите его нарисовать."

msgid "Canvas layers"
msgstr "Слои холста"

msgid "Returns the RID of the canvas used by this layer."
msgstr "Возвращает RID холста, используемого этим слоем."

msgid ""
"Returns the transform from the [CanvasLayer]s coordinate system to the "
"[Viewport]s coordinate system."
msgstr ""
"Возвращает преобразование из системы координат [CanvasLayer]-ов в систему "
"координат [Viewport]-ов."

msgid ""
"Hides any [CanvasItem] under this [CanvasLayer]. This is equivalent to "
"setting [member visible] to [code]false[/code]."
msgstr ""
"Скрывает любой [CanvasItem] под этим [CanvasLayer]. Это эквивалентно "
"установке [member visible] на [code]false[/code]."

msgid ""
"Shows any [CanvasItem] under this [CanvasLayer]. This is equivalent to "
"setting [member visible] to [code]true[/code]."
msgstr ""
"Показывает любой [CanvasItem] под этим [CanvasLayer]. Это эквивалентно "
"установке [member visible] на [code]true[/code]."

msgid ""
"The custom [Viewport] node assigned to the [CanvasLayer]. If [code]null[/"
"code], uses the default viewport instead."
msgstr ""
"Пользовательский узел [Viewport], назначенный [CanvasLayer]. Если [code]null[/"
"code], вместо этого используется viewport по умолчанию."

msgid ""
"If enabled, the [CanvasLayer] maintains its position in world space. If "
"disabled, the [CanvasLayer] stays in a fixed position on the screen.\n"
"Together with [member follow_viewport_scale], this can be used for a "
"pseudo-3D effect."
msgstr ""
"Если включено, [CanvasLayer] сохраняет свое положение в мировом пространстве. "
"Если отключено, [CanvasLayer] остается в фиксированном положении на экране.\n"
"Вместе с [member follow_viewport_scale] это можно использовать для псевдо-3D-"
"эффекта."

msgid ""
"Scales the layer when using [member follow_viewport_enabled]. Layers moving "
"into the foreground should have increasing scales, while layers moving into "
"the background should have decreasing scales."
msgstr ""
"Масштабирует слой при использовании [member follow_viewport_enabled]. Слои, "
"перемещающиеся на передний план, должны иметь увеличивающиеся масштабы, а "
"слои, перемещающиеся на задний план, должны иметь уменьшающиеся масштабы."

msgid ""
"Layer index for draw order. Lower values are drawn behind higher values.\n"
"[b]Note:[/b] If multiple CanvasLayers have the same layer index, [CanvasItem] "
"children of one CanvasLayer are drawn behind the [CanvasItem] children of the "
"other CanvasLayer. Which CanvasLayer is drawn in front is non-deterministic.\n"
"[b]Note:[/b] The layer index should be between [constant "
"RenderingServer.CANVAS_LAYER_MIN] and [constant "
"RenderingServer.CANVAS_LAYER_MAX] (inclusive). Any other value will wrap "
"around."
msgstr ""
"Индекс слоя для порядка отрисовки. Меньшие значения рисуются позади больших "
"значений.\n"
"[b]Примечание:[/b] Если несколько CanvasLayers имеют одинаковый индекс слоя, "
"то дочерние элементы [CanvasItem] одного CanvasLayer рисуются позади дочерних "
"элементов [CanvasItem] другого CanvasLayer. Какой CanvasLayer рисуется "
"впереди, не определено.\n"
"[b]Примечание:[/b] Индекс слоя должен быть между [constant "
"RenderingServer.CANVAS_LAYER_MIN] и [constant "
"RenderingServer.CANVAS_LAYER_MAX] (включительно). Любое другое значение будет "
"переноситься."

msgid "The layer's base offset."
msgstr "Смещение базы слоя."

msgid "The layer's rotation in radians."
msgstr "Вращение слоя в радианах."

msgid "The layer's scale."
msgstr "Масштаб слоя."

msgid "The layer's transform."
msgstr "Трансформация слоя."

msgid ""
"If [code]false[/code], any [CanvasItem] under this [CanvasLayer] will be "
"hidden.\n"
"Unlike [member CanvasItem.visible], visibility of a [CanvasLayer] isn't "
"propagated to underlying layers."
msgstr ""
"Если [code]false[/code], любой [CanvasItem] под этим [CanvasLayer] будет "
"скрыт.\n"
"В отличие от [member CanvasItem.visible], видимость [CanvasLayer] не "
"распространяется на нижележащие слои."

msgid "Emitted when visibility of the layer is changed. See [member visible]."
msgstr "Выдается при изменении видимости слоя. См. [member visible]."

msgid "A node that applies a color tint to a canvas."
msgstr "Узел, который применяет цветовой оттенок к холсту."

msgid ""
"[CanvasModulate] applies a color tint to all nodes on a canvas. Only one can "
"be used to tint a canvas, but [CanvasLayer]s can be used to render things "
"independently."
msgstr ""
"[CanvasModulate] применяет цветовой оттенок ко всем узлам на холсте. Только "
"один может быть использован для тонирования холста, но [CanvasLayer]s могут "
"использоваться для независимого рендеринга вещей."

msgid "2D lights and shadows"
msgstr "2D свет и тени"

msgid "The tint color to apply."
msgstr "Цвет оттенка, который следует применить."

msgid "Texture with optional normal and specular maps for use in 2D rendering."
msgstr ""
"Текстура с дополнительными картами нормалей и отражений для использования в "
"2D-рендеринге."

msgid ""
"[CanvasTexture] is an alternative to [ImageTexture] for 2D rendering. It "
"allows using normal maps and specular maps in any node that inherits from "
"[CanvasItem]. [CanvasTexture] also allows overriding the texture's filter and "
"repeat mode independently of the node's properties (or the project "
"settings).\n"
"[b]Note:[/b] [CanvasTexture] cannot be used in 3D. It will not display "
"correctly when applied to any [VisualInstance3D], such as [Sprite3D] or "
"[Decal]. For physically-based materials in 3D, use [BaseMaterial3D] instead."
msgstr ""
"[CanvasTexture] — это альтернатива [ImageTexture] для 2D-рендеринга. Она "
"позволяет использовать карты нормалей и карты отражений в любом узле, который "
"наследует от [CanvasItem]. [CanvasTexture] также позволяет переопределять "
"фильтр текстуры и режим повторения независимо от свойств узла (или настроек "
"проекта).\n"
"[b]Примечание:[/b] [CanvasTexture] нельзя использовать в 3D. Она не будет "
"отображаться правильно при применении к любому [VisualInstance3D], например "
"[Sprite3D] или [Decal]. Для физически обоснованных материалов в 3D "
"используйте вместо этого [BaseMaterial3D]."

msgid "2D Lights and Shadows"
msgstr "2D Свет и Тени"

msgid ""
"The diffuse (color) texture to use. This is the main texture you want to set "
"in most cases."
msgstr ""
"Диффузная (цветная) текстура для использования. Это основная текстура, "
"которую вы хотите установить в большинстве случаев."

msgid ""
"The normal map texture to use. Only has a visible effect if [Light2D]s are "
"affecting this [CanvasTexture].\n"
"[b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. "
"See [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a "
"comparison of normal map coordinates expected by popular engines."
msgstr ""
"Текстура карты нормалей для использования. Имеет видимый эффект, только если "
"[Light2D]s влияют на эту [CanvasTexture].\n"
"[b]Примечание:[/b] Godot ожидает, что карта нормалей будет использовать "
"координаты X+, Y+ и Z+. См. [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details#Common_Swizzle_Coordinates]эту страницу[/url] "
"для сравнения координат карты нормалей, ожидаемых популярными движками."

msgid ""
"The multiplier for specular reflection colors. The [Light2D]'s color is also "
"taken into account when determining the reflection color. Only has a visible "
"effect if [Light2D]s are affecting this [CanvasTexture]."
msgstr ""
"Множитель для цветов зеркального отражения. Цвет [Light2D] также учитывается "
"при определении цвета отражения. Имеет видимый эффект только в том случае, "
"если [Light2D] влияют на эту [CanvasTexture]."

msgid ""
"The specular exponent for [Light2D] specular reflections. Higher values "
"result in a more glossy/\"wet\" look, with reflections becoming more "
"localized and less visible overall. The default value of [code]1.0[/code] "
"disables specular reflections entirely. Only has a visible effect if "
"[Light2D]s are affecting this [CanvasTexture]."
msgstr ""
"Зеркальный показатель для зеркальных отражений [Light2D]. Более высокие "
"значения приводят к более глянцевому/\"мокрому\" виду, при этом отражения "
"становятся более локализованными и менее заметными в целом. Значение по "
"умолчанию [code]1.0[/code] полностью отключает зеркальные отражения. "
"Оказывает видимый эффект, только если [Light2D] влияют на эту [CanvasTexture]."

msgid ""
"The specular map to use for [Light2D] specular reflections. This should be a "
"grayscale or colored texture, with brighter areas resulting in a higher "
"[member specular_shininess] value. Using a colored [member specular_texture] "
"allows controlling specular shininess on a per-channel basis. Only has a "
"visible effect if [Light2D]s are affecting this [CanvasTexture]."
msgstr ""
"Карта отражений, используемая для зеркальных отражений [Light2D]. Это должна "
"быть текстура в оттенках серого или цветная, с более яркими областями, "
"дающими более высокое значение [member specular_shininess]. Использование "
"цветной [member specular_texture] позволяет управлять зеркальным блеском на "
"основе каждого канала. Имеет видимый эффект, только если [Light2D] влияют на "
"эту [CanvasTexture]."

msgid "The texture filtering mode to use when drawing this [CanvasTexture]."
msgstr "Режим фильтрации текстуры, используемый при рисовании [CanvasTexture]."

msgid "The texture repeat mode to use when drawing this [CanvasTexture]."
msgstr "Режим повторения текстуры, используемый при рисовании [CanvasTexture]."

msgid "Class representing a capsule-shaped [PrimitiveMesh]."
msgstr "Класс, представляющий собой капсулообразную [PrimitiveMesh]."

msgid ""
"Total height of the capsule mesh (including the hemispherical ends).\n"
"[b]Note:[/b] The [member height] of a capsule must be at least twice its "
"[member radius]. Otherwise, the capsule becomes a circle. If the [member "
"height] is less than twice the [member radius], the properties adjust to a "
"valid value."
msgstr ""
"Общая высота сетки капсулы (включая полусферические концы).\n"
"[b]Примечание:[/b] [member height] капсулы должна быть как минимум вдвое "
"больше [member radius]. В противном случае капсула становится круглой. Если "
"[member height] меньше удвоенного [member radius], свойства корректируются до "
"допустимого значения."

msgid "Number of radial segments on the capsule mesh."
msgstr "Число радиальных сегментов на сетке капсулы."

msgid ""
"Radius of the capsule mesh.\n"
"[b]Note:[/b] The [member radius] of a capsule cannot be greater than half of "
"its [member height]. Otherwise, the capsule becomes a circle. If the [member "
"radius] is greater than half of the [member height], the properties adjust to "
"a valid value."
msgstr ""
"Радиус сетки капсулы.\n"
"[b]Примечание:[/b] [member radius] капсулы не может быть больше половины её "
"[member height]. В противном случае капсула становится кругом. Если [member "
"radius] больше половины [member height], свойства корректируются до "
"допустимого значения."

msgid "Number of rings along the height of the capsule."
msgstr "Количество колец по высоте капсулы."

msgid "A 2D capsule shape used for physics collision."
msgstr "Форма 2D-капсулы, используемая для физического столкновения."

msgid ""
"A 2D capsule shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape2D].\n"
"[b]Performance:[/b] [CapsuleShape2D] is fast to check collisions against, but "
"it is slower than [RectangleShape2D] and [CircleShape2D]."
msgstr ""
"Форма капсулы 2D, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape2D].\n"
"[b]Производительность:[/b] [CapsuleShape2D] быстро проверяет столкновения, но "
"медленнее, чем [RectangleShape2D] и [CircleShape2D]."

msgid ""
"The capsule's full height, including the semicircles.\n"
"[b]Note:[/b] The [member height] of a capsule must be at least twice its "
"[member radius]. Otherwise, the capsule becomes a circle. If the [member "
"height] is less than twice the [member radius], the properties adjust to a "
"valid value."
msgstr ""
"Полная высота капсулы, включая полукруги.\n"
"[b]Примечание:[/b] [member height] капсулы должна быть как минимум вдвое "
"больше [member radius]. В противном случае капсула становится круглой. Если "
"[member height] меньше удвоенного [member radius], свойства корректируются до "
"допустимого значения."

msgid ""
"The capsule's height, excluding the semicircles. This is the height of the "
"central rectangular part in the middle of the capsule, and is the distance "
"between the centers of the two semicircles. This is a wrapper for [member "
"height]."
msgstr ""
"Высота капсулы, исключая полукруги. Это высота центральной прямоугольной "
"части в середине капсулы, и это расстояние между центрами двух полукругов. "
"Это оболочка для [member height]."

msgid ""
"The capsule's radius.\n"
"[b]Note:[/b] The [member radius] of a capsule cannot be greater than half of "
"its [member height]. Otherwise, the capsule becomes a circle. If the [member "
"radius] is greater than half of the [member height], the properties adjust to "
"a valid value."
msgstr ""
"Радиус капсулы.\n"
"[b]Примечание:[/b] [member radius] капсулы не может быть больше половины её "
"[member height]. В противном случае капсула становится круглой. Если [member "
"radius] больше половины [member height], свойства корректируются до "
"допустимого значения."

msgid "A 3D capsule shape used for physics collision."
msgstr "Форма 3D-капсулы, используемая для физического столкновения."

msgid ""
"A 3D capsule shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape3D].\n"
"[b]Performance:[/b] [CapsuleShape3D] is fast to check collisions against. It "
"is faster than [CylinderShape3D], but slower than [SphereShape3D] and "
"[BoxShape3D]."
msgstr ""
"Форма капсулы 3D, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape3D].\n"
"[b]Производительность:[/b] [CapsuleShape3D] быстро проверяет столкновения. Он "
"быстрее, чем [CylinderShape3D], но медленнее, чем [SphereShape3D] и "
"[BoxShape3D]."

msgid ""
"The capsule's full height, including the hemispheres.\n"
"[b]Note:[/b] The [member height] of a capsule must be at least twice its "
"[member radius]. Otherwise, the capsule becomes a sphere. If the [member "
"height] is less than twice the [member radius], the properties adjust to a "
"valid value."
msgstr ""
"Полная высота капсулы, включая полусферы.\n"
"[b]Примечание:[/b] [member height] капсулы должна быть как минимум вдвое "
"больше [member radius]. В противном случае капсула станет сферической. Если "
"[member height] меньше удвоенного [member radius], свойства корректируются до "
"допустимого значения."

msgid ""
"The capsule's height, excluding the hemispheres. This is the height of the "
"central cylindrical part in the middle of the capsule, and is the distance "
"between the centers of the two hemispheres. This is a wrapper for [member "
"height]."
msgstr ""
"Высота капсулы, исключая полусферы. Это высота центральной цилиндрической "
"части в середине капсулы, и это расстояние между центрами двух полусфер. Это "
"оболочка для [member height]."

msgid ""
"The capsule's radius.\n"
"[b]Note:[/b] The [member radius] of a capsule cannot be greater than half of "
"its [member height]. Otherwise, the capsule becomes a sphere. If the [member "
"radius] is greater than half of the [member height], the properties adjust to "
"a valid value."
msgstr ""
"Радиус капсулы.\n"
"[b]Примечание:[/b] [member radius] капсулы не может быть больше половины её "
"[member height]. В противном случае капсула становится сферической. Если "
"[member radius] больше половины [member height], свойства корректируются до "
"допустимого значения."

msgid "A container that keeps child controls in its center."
msgstr "Контейнер, в центре которого находятся дочерние элементы управления."

msgid ""
"[CenterContainer] is a container that keeps all of its child controls in its "
"center at their minimum size."
msgstr ""
"[CenterContainer] — это контейнер, который сохраняет все дочерние элементы "
"управления в центре при их минимальном размере."

msgid ""
"If [code]true[/code], centers children relative to the [CenterContainer]'s "
"top left corner."
msgstr ""
"Если [code]true[/code], то дочерние элементы центрируются относительно "
"верхнего левого угла [CenterContainer]."

msgid "A 2D physics body specialized for characters moved by script."
msgstr ""
"Двухмерное физическое тело, специально предназначенное для персонажей, "
"перемещаемых по сценарию."

msgid ""
"[CharacterBody2D] is a specialized class for physics bodies that are meant to "
"be user-controlled. They are not affected by physics at all, but they affect "
"other physics bodies in their path. They are mainly used to provide high-"
"level API to move objects with wall and slope detection ([method "
"move_and_slide] method) in addition to the general collision detection "
"provided by [method PhysicsBody2D.move_and_collide]. This makes it useful for "
"highly configurable physics bodies that must move in specific ways and "
"collide with the world, as is often the case with user-controlled "
"characters.\n"
"For game objects that don't require complex movement or collision detection, "
"such as moving platforms, [AnimatableBody2D] is simpler to configure."
msgstr ""
"[CharacterBody2D] — это специализированный класс для физических тел, которые "
"должны контролироваться пользователем. Они вообще не подвержены влиянию "
"физики, но влияют на другие физические тела на своем пути. Они в основном "
"используются для предоставления высокоуровневого API для перемещения объектов "
"с обнаружением стен и наклонов (метод [method move_and_slide]) в дополнение к "
"общему обнаружению столкновений, предоставляемому [method "
"PhysicsBody2D.move_and_collide]. Это делает его полезным для "
"высоконастраиваемых физических тел, которые должны двигаться определенным "
"образом и сталкиваться с миром, как это часто бывает с персонажами, "
"контролируемыми пользователем.\n"
"Для игровых объектов, которые не требуют сложного движения или обнаружения "
"столкновений, таких как движущиеся платформы, [AnimatableBody2D] проще в "
"настройке."

msgid "Kinematic character (2D)"
msgstr "Кинематический персонаж (2D)"

msgid "Using CharacterBody2D"
msgstr "Использование CharacterBody2D"

msgid "2D Kinematic Character Demo"
msgstr "2D Kinematic Character Дэмо"

msgid ""
"Allows to manually apply a snap to the floor regardless of the body's "
"velocity. This function does nothing when [method is_on_floor] returns "
"[code]true[/code]."
msgstr ""
"Позволяет вручную применить привязку к полу независимо от скорости тела. Эта "
"функция ничего не делает, когда [method is_on_floor] возвращает [code]true[/"
"code]."

msgid ""
"Returns the floor's collision angle at the last collision point according to "
"[param up_direction], which is [constant Vector2.UP] by default. This value "
"is always positive and only valid after calling [method move_and_slide] and "
"when [method is_on_floor] returns [code]true[/code]."
msgstr ""
"Возвращает угол столкновения пола в последней точке столкновения в "
"соответствии с [param up_direction], который по умолчанию равен [constant "
"Vector2.UP]. Это значение всегда положительно и действительно только после "
"вызова [method move_and_slide] и когда [method is_on_floor] возвращает "
"[code]true[/code]."

msgid ""
"Returns the collision normal of the floor at the last collision point. Only "
"valid after calling [method move_and_slide] and when [method is_on_floor] "
"returns [code]true[/code].\n"
"[b]Warning:[/b] The collision normal is not always the same as the surface "
"normal."
msgstr ""
"Возвращает нормаль столкновения пола в последней точке столкновения. "
"Действительно только после вызова [method move_and_slide] и когда [method "
"is_on_floor] возвращает [code]true[/code].\n"
"[b]Предупреждение:[/b] Нормаль столкновения не всегда совпадает с нормалью "
"поверхности."

msgid ""
"Returns the last motion applied to the [CharacterBody2D] during the last call "
"to [method move_and_slide]. The movement can be split into multiple motions "
"when sliding occurs, and this method return the last one, which is useful to "
"retrieve the current direction of the movement."
msgstr ""
"Возвращает последнее движение, примененное к [CharacterBody2D] во время "
"последнего вызова [method move_and_slide]. Движение может быть разделено на "
"несколько движений, когда происходит скольжение, и этот метод возвращает "
"последнее, что полезно для получения текущего направления движения."

msgid ""
"Returns a [KinematicCollision2D], which contains information about the latest "
"collision that occurred during the last call to [method move_and_slide]."
msgstr ""
"Возвращает [KinematicCollision2D], содержащий информацию о последнем "
"столкновении, произошедшем во время последнего вызова [method move_and_slide]."

msgid ""
"Returns the linear velocity of the platform at the last collision point. Only "
"valid after calling [method move_and_slide]."
msgstr ""
"Возвращает линейную скорость платформы в последней точке столкновения. "
"Действительно только после вызова [method move_and_slide]."

msgid ""
"Returns the travel (position delta) that occurred during the last call to "
"[method move_and_slide]."
msgstr ""
"Возвращает перемещение (дельту положения), произошедшее во время последнего "
"вызова [method move_and_slide]."

msgid ""
"Returns the current real velocity since the last call to [method "
"move_and_slide]. For example, when you climb a slope, you will move "
"diagonally even though the velocity is horizontal. This method returns the "
"diagonal movement, as opposed to [member velocity] which returns the "
"requested velocity."
msgstr ""
"Возвращает текущую реальную скорость с момента последнего вызова [method "
"move_and_slide]. Например, когда вы поднимаетесь по склону, вы будете "
"двигаться по диагонали, даже если скорость горизонтальная. Этот метод "
"возвращает диагональное движение, в отличие от [member velocity], который "
"возвращает запрошенную скорость."

msgid ""
"Returns a [KinematicCollision2D], which contains information about a "
"collision that occurred during the last call to [method move_and_slide]. "
"Since the body can collide several times in a single call to [method "
"move_and_slide], you must specify the index of the collision in the range 0 "
"to ([method get_slide_collision_count] - 1).\n"
"[b]Example:[/b] Iterate through the collisions with a [code]for[/code] loop:\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in get_slide_collision_count():\n"
"\tvar collision = get_slide_collision(i)\n"
"\tprint(\"Collided with: \", collision.get_collider().name)\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < GetSlideCollisionCount(); i++)\n"
"{\n"
"\tKinematicCollision2D collision = GetSlideCollision(i);\n"
"\tGD.Print(\"Collided with: \", (collision.GetCollider() as Node).Name);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [KinematicCollision2D], который содержит информацию о "
"столкновении, произошедшем во время последнего вызова [method "
"move_and_slide]. Поскольку тело может столкнуться несколько раз за один вызов "
"[method move_and_slide], необходимо указать индекс столкновения в диапазоне "
"от 0 до ([method get_slide_collision_count] - 1).\n"
"[b]Пример:[/b] Перебрать столкновения с помощью цикла [code]for[/code]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in get_slide_collision_count():\n"
"\tvar collision = get_slide_collision(i)\n"
"\tprint(\"Collided with: \", collision.get_collider().name)\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < GetSlideCollisionCount(); i++)\n"
"{\n"
"\tKinematicCollision2D collision = GetSlideCollision(i);\n"
"\tGD.Print(\"Collided with: \", (collision.GetCollider() as Node).Name);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the number of times the body collided and changed direction during "
"the last call to [method move_and_slide]."
msgstr ""
"Возвращает количество столкновений тела и изменение его направления во время "
"последнего вызова [method move_and_slide]."

msgid ""
"Returns the collision normal of the wall at the last collision point. Only "
"valid after calling [method move_and_slide] and when [method is_on_wall] "
"returns [code]true[/code].\n"
"[b]Warning:[/b] The collision normal is not always the same as the surface "
"normal."
msgstr ""
"Возвращает нормаль столкновения стены в последней точке столкновения. "
"Действительно только после вызова [method move_and_slide] и когда [method "
"is_on_wall] возвращает [code]true[/code].\n"
"[b]Предупреждение:[/b] Нормаль столкновения не всегда совпадает с нормалью "
"поверхности."

msgid ""
"Returns [code]true[/code] if the body collided with the ceiling on the last "
"call of [method move_and_slide]. Otherwise, returns [code]false[/code]. The "
"[member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"ceiling\" or not."
msgstr ""
"Возвращает [code]true[/code], если тело столкнулось с потолком при последнем "
"вызове [method move_and_slide]. В противном случае возвращает [code]false[/"
"code]. [Member up_direction] и [member floor_max_angle] используются для "
"определения того, является ли поверхность «потолком» или нет."

msgid ""
"Returns [code]true[/code] if the body collided only with the ceiling on the "
"last call of [method move_and_slide]. Otherwise, returns [code]false[/code]. "
"The [member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"ceiling\" or not."
msgstr ""
"Возвращает [code]true[/code], если тело столкнулось только с потолком при "
"последнем вызове [method move_and_slide]. В противном случае возвращает "
"[code]false[/code]. [Member up_direction] и [member floor_max_angle] "
"используются для определения того, является ли поверхность «потолком» или нет."

msgid ""
"Returns [code]true[/code] if the body collided with the floor on the last "
"call of [method move_and_slide]. Otherwise, returns [code]false[/code]. The "
"[member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"floor\" or not."
msgstr ""
"Возвращает [code]true[/code], если тело столкнулось с полом при последнем "
"вызове [method move_and_slide]. В противном случае возвращает [code]false[/"
"code]. [Member up_direction] и [member floor_max_angle] используются для "
"определения того, является ли поверхность «полом» или нет."

msgid ""
"Returns [code]true[/code] if the body collided only with the floor on the "
"last call of [method move_and_slide]. Otherwise, returns [code]false[/code]. "
"The [member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"floor\" or not."
msgstr ""
"Возвращает [code]true[/code], если тело столкнулось только с полом при "
"последнем вызове [method move_and_slide]. В противном случае возвращает "
"[code]false[/code]. [Member up_direction] и [member floor_max_angle] "
"используются для определения того, является ли поверхность «полом» или нет."

msgid ""
"Returns [code]true[/code] if the body collided with a wall on the last call "
"of [method move_and_slide]. Otherwise, returns [code]false[/code]. The "
"[member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"wall\" or not."
msgstr ""
"Возвращает [code]true[/code], если тело столкнулось со стеной при последнем "
"вызове [method move_and_slide]. В противном случае возвращает [code]false[/"
"code]. [Member up_direction] и [member floor_max_angle] используются для "
"определения того, является ли поверхность «стеной» или нет."

msgid ""
"Returns [code]true[/code] if the body collided only with a wall on the last "
"call of [method move_and_slide]. Otherwise, returns [code]false[/code]. The "
"[member up_direction] and [member floor_max_angle] are used to determine "
"whether a surface is \"wall\" or not."
msgstr ""
"Возвращает [code]true[/code], если тело столкнулось только со стеной при "
"последнем вызове [method move_and_slide]. В противном случае возвращает "
"[code]false[/code]. [Member up_direction] и [member floor_max_angle] "
"используются для определения того, является ли поверхность «стеной» или нет."

msgid ""
"If [code]true[/code], the body will be able to move on the floor only. This "
"option avoids to be able to walk on walls, it will however allow to slide "
"down along them."
msgstr ""
"Если [code]true[/code], тело сможет двигаться только по полу. Эта опция "
"исключает возможность ходить по стенам, однако позволяет скользить по ним."

msgid ""
"If [code]false[/code] (by default), the body will move faster on downward "
"slopes and slower on upward slopes.\n"
"If [code]true[/code], the body will always move at the same speed on the "
"ground no matter the slope. Note that you need to use [member "
"floor_snap_length] to stick along a downward slope at constant speed."
msgstr ""
"Если [code]false[/code] (по умолчанию), тело будет двигаться быстрее на "
"спусках и медленнее на подъемах.\n"
"Если [code]true[/code], тело всегда будет двигаться с одинаковой скоростью на "
"земле, независимо от уклона. Обратите внимание, что вам нужно использовать "
"[member floor_snap_length], чтобы придерживаться спуска с постоянной "
"скоростью."

msgid ""
"Maximum angle (in radians) where a slope is still considered a floor (or a "
"ceiling), rather than a wall, when calling [method move_and_slide]. The "
"default value equals 45 degrees."
msgstr ""
"Максимальный угол (в радианах), при котором наклон все еще считается полом "
"(или потолком), а не стеной, при вызове [method move_and_slide]. Значение по "
"умолчанию равно 45 градусам."

msgid ""
"Sets a snapping distance. When set to a value different from [code]0.0[/"
"code], the body is kept attached to slopes when calling [method "
"move_and_slide]. The snapping vector is determined by the given distance "
"along the opposite direction of the [member up_direction].\n"
"As long as the snapping vector is in contact with the ground and the body "
"moves against [member up_direction], the body will remain attached to the "
"surface. Snapping is not applied if the body moves along [member "
"up_direction], meaning it contains vertical rising velocity, so it will be "
"able to detach from the ground when jumping or when the body is pushed up by "
"something. If you want to apply a snap without taking into account the "
"velocity, use [method apply_floor_snap]."
msgstr ""
"Устанавливает расстояние привязки. Если установлено значение, отличное от "
"[code]0.0[/code], тело остается прикрепленным к склонам при вызове [method "
"move_and_slide]. Вектор привязки определяется заданным расстоянием вдоль "
"противоположного направления [member up_direction].\n"
"Пока вектор привязки находится в контакте с землей и тело движется против "
"[member up_direction], тело будет оставаться прикрепленным к поверхности. "
"Привязка не применяется, если тело движется вдоль [member up_direction], то "
"есть оно содержит вертикальную скорость подъема, поэтому оно сможет "
"оторваться от земли при прыжке или когда тело что-то толкает вверх. Если вы "
"хотите применить привязку без учета скорости, используйте [method "
"apply_floor_snap]."

msgid ""
"If [code]true[/code], the body will not slide on slopes when calling [method "
"move_and_slide] when the body is standing still.\n"
"If [code]false[/code], the body will slide on floor's slopes when [member "
"velocity] applies a downward force."
msgstr ""
"Если [code]true[/code], тело не будет скользить по склонам при вызове [method "
"move_and_slide], когда тело стоит на месте.\n"
"Если [code]false[/code], тело будет скользить по склонам пола, когда [member "
"velocity] прикладывает направленную вниз силу."

msgid ""
"Maximum number of times the body can change direction before it stops when "
"calling [method move_and_slide]. Must be greater than zero."
msgstr ""
"Максимальное количество раз, которое тело может изменить направление, прежде "
"чем оно остановится при вызове [method move_and_slide]. Должно быть больше "
"нуля."

msgid ""
"Sets the motion mode which defines the behavior of [method move_and_slide]."
msgstr ""
"Устанавливает режим движения, который определяет поведение [method "
"move_and_slide]."

msgid ""
"Collision layers that will be included for detecting floor bodies that will "
"act as moving platforms to be followed by the [CharacterBody2D]. By default, "
"all floor bodies are detected and propagate their velocity."
msgstr ""
"Слои столкновений, которые будут включены для обнаружения напольных тел, "
"которые будут действовать как движущиеся платформы, за которыми будет "
"следовать [CharacterBody2D]. По умолчанию все напольные тела обнаруживаются и "
"распространяют свою скорость."

msgid ""
"Sets the behavior to apply when you leave a moving platform. By default, to "
"be physically accurate, when you leave the last platform velocity is applied."
msgstr ""
"Устанавливает поведение, применяемое при покидании движущейся платформы. По "
"умолчанию, для физической точности, при покидании применяется последняя "
"скорость платформы."

msgid ""
"Collision layers that will be included for detecting wall bodies that will "
"act as moving platforms to be followed by the [CharacterBody2D]. By default, "
"all wall bodies are ignored."
msgstr ""
"Слои столкновений, которые будут включены для обнаружения тел стен, которые "
"будут действовать как движущиеся платформы, за которыми будет следовать "
"[CharacterBody2D]. По умолчанию все тела стен игнорируются."

msgid ""
"Extra margin used for collision recovery when calling [method "
"move_and_slide].\n"
"If the body is at least this close to another body, it will consider them to "
"be colliding and will be pushed away before performing the actual motion.\n"
"A higher value means it's more flexible for detecting collision, which helps "
"with consistently detecting walls and floors.\n"
"A lower value forces the collision algorithm to use more exact detection, so "
"it can be used in cases that specifically require precision, e.g at very low "
"scale to avoid visible jittering, or for stability with a stack of character "
"bodies."
msgstr ""
"Дополнительный запас используется для восстановления столкновений при вызове "
"[method move_and_slide].\n"
"Если тело находится как минимум на таком расстоянии от другого тела, оно "
"будет считать их сталкивающимися и будет оттолкнуто перед выполнением "
"фактического движения.\n"
"Более высокое значение означает большую гибкость для обнаружения "
"столкновений, что помогает последовательно обнаруживать стены и полы.\n"
"Более низкое значение заставляет алгоритм столкновений использовать более "
"точное обнаружение, поэтому его можно использовать в случаях, когда требуется "
"особая точность, например, в очень низком масштабе, чтобы избежать видимого "
"дрожания, или для стабильности со стопкой тел персонажей."

msgid ""
"If [code]true[/code], during a jump against the ceiling, the body will slide, "
"if [code]false[/code] it will be stopped and will fall vertically."
msgstr ""
"Если [code]true[/code], то при прыжке у потолка тело будет скользить, если "
"[code]false[/code] — остановится и упадет вертикально."

msgid ""
"Vector pointing upwards, used to determine what is a wall and what is a floor "
"(or a ceiling) when calling [method move_and_slide]. Defaults to [constant "
"Vector2.UP]. As the vector will be normalized it can't be equal to [constant "
"Vector2.ZERO], if you want all collisions to be reported as walls, consider "
"using [constant MOTION_MODE_FLOATING] as [member motion_mode]."
msgstr ""
"Вектор, направленный вверх, используется для определения того, что является "
"стеной, а что полом (или потолком) при вызове [method move_and_slide]. По "
"умолчанию [constant Vector2.UP]. Поскольку вектор будет нормализован, он не "
"может быть равен [constant Vector2.ZERO], если вы хотите, чтобы все "
"столкновения были зарегистрированы как стены, рассмотрите возможность "
"использования [constant MOTION_MODE_FLOATING] в качестве [member motion_mode]."

msgid ""
"Minimum angle (in radians) where the body is allowed to slide when it "
"encounters a wall. The default value equals 15 degrees. This property only "
"affects movement when [member motion_mode] is [constant MOTION_MODE_FLOATING]."
msgstr ""
"Минимальный угол (в радианах), под которым тело может скользить при "
"столкновении со стеной. Значение по умолчанию равно 15 градусам. Это свойство "
"влияет на движение только тогда, когда [member motion_mode] равно [constant "
"MOTION_MODE_FLOATING]."

msgid ""
"Apply when notions of walls, ceiling and floor are relevant. In this mode the "
"body motion will react to slopes (acceleration/slowdown). This mode is "
"suitable for sided games like platformers."
msgstr ""
"Применять, когда важны понятия стен, потолка и пола. В этом режиме движение "
"тела будет реагировать на наклоны (ускорение/замедление). Этот режим подходит "
"для односторонних игр, таких как платформеры."

msgid ""
"Apply when there is no notion of floor or ceiling. All collisions will be "
"reported as [code]on_wall[/code]. In this mode, when you slide, the speed "
"will always be constant. This mode is suitable for top-down games."
msgstr ""
"Применять, когда нет понятия пола или потолка. Все столкновения будут "
"сообщаться как [code]on_wall[/code]. В этом режиме при скольжении скорость "
"всегда будет постоянной. Этот режим подходит для игр сверху вниз."

msgid ""
"Add the last platform velocity to the [member velocity] when you leave a "
"moving platform."
msgstr ""
"Добавьте последнюю скорость платформы к [member velocity], когда вы покидаете "
"движущуюся платформу."

msgid ""
"Add the last platform velocity to the [member velocity] when you leave a "
"moving platform, but any downward motion is ignored. It's useful to keep full "
"jump height even when the platform is moving down."
msgstr ""
"Добавьте последнюю скорость платформы к [member velocity], когда вы покидаете "
"движущуюся платформу, но любое движение вниз игнорируется. Полезно сохранять "
"полную высоту прыжка, даже когда платформа движется вниз."

msgid "Do nothing when leaving a platform."
msgstr "Покидая платформу, не предпринимайте никаких действий."

msgid "A 3D physics body specialized for characters moved by script."
msgstr ""
"Трехмерное физическое тело, специально разработанное для персонажей, "
"перемещаемых по сценарию."

msgid ""
"[CharacterBody3D] is a specialized class for physics bodies that are meant to "
"be user-controlled. They are not affected by physics at all, but they affect "
"other physics bodies in their path. They are mainly used to provide high-"
"level API to move objects with wall and slope detection ([method "
"move_and_slide] method) in addition to the general collision detection "
"provided by [method PhysicsBody3D.move_and_collide]. This makes it useful for "
"highly configurable physics bodies that must move in specific ways and "
"collide with the world, as is often the case with user-controlled "
"characters.\n"
"For game objects that don't require complex movement or collision detection, "
"such as moving platforms, [AnimatableBody3D] is simpler to configure."
msgstr ""
"[CharacterBody3D] — это специализированный класс для физических тел, которые "
"должны контролироваться пользователем. Они вообще не подвержены влиянию "
"физики, но влияют на другие физические тела на своем пути. Они в основном "
"используются для предоставления высокоуровневого API для перемещения объектов "
"с обнаружением стен и склонов (метод [method move_and_slide]) в дополнение к "
"общему обнаружению столкновений, предоставляемому [method "
"PhysicsBody3D.move_and_collide]. Это делает его полезным для "
"высоконастраиваемых физических тел, которые должны двигаться определенным "
"образом и сталкиваться с миром, как это часто бывает с персонажами, "
"контролируемыми пользователем.\n"
"Для игровых объектов, которые не требуют сложного движения или обнаружения "
"столкновений, таких как движущиеся платформы, [AnimatableBody3D] проще в "
"настройке."

msgid ""
"Returns the floor's collision angle at the last collision point according to "
"[param up_direction], which is [constant Vector3.UP] by default. This value "
"is always positive and only valid after calling [method move_and_slide] and "
"when [method is_on_floor] returns [code]true[/code]."
msgstr ""
"Возвращает угол столкновения пола в последней точке столкновения в "
"соответствии с [param up_direction], который по умолчанию равен [constant "
"Vector3.UP]. Это значение всегда положительно и действительно только после "
"вызова [method move_and_slide] и когда [method is_on_floor] возвращает "
"[code]true[/code]."

msgid ""
"Returns the last motion applied to the [CharacterBody3D] during the last call "
"to [method move_and_slide]. The movement can be split into multiple motions "
"when sliding occurs, and this method return the last one, which is useful to "
"retrieve the current direction of the movement."
msgstr ""
"Возвращает последнее движение, примененное к [CharacterBody3D] во время "
"последнего вызова [method move_and_slide]. Движение может быть разделено на "
"несколько движений, когда происходит скольжение, и этот метод возвращает "
"последнее, что полезно для получения текущего направления движения."

msgid ""
"Returns a [KinematicCollision3D], which contains information about the latest "
"collision that occurred during the last call to [method move_and_slide]."
msgstr ""
"Возвращает [KinematicCollision3D], содержащий информацию о последнем "
"столкновении, произошедшем во время последнего вызова [method move_and_slide]."

msgid ""
"Returns the angular velocity of the platform at the last collision point. "
"Only valid after calling [method move_and_slide]."
msgstr ""
"Возвращает угловую скорость платформы в последней точке столкновения. "
"Действует только после вызова [method move_and_slide]."

msgid ""
"Returns a [KinematicCollision3D], which contains information about a "
"collision that occurred during the last call to [method move_and_slide]. "
"Since the body can collide several times in a single call to [method "
"move_and_slide], you must specify the index of the collision in the range 0 "
"to ([method get_slide_collision_count] - 1)."
msgstr ""
"Возвращает [KinematicCollision3D], содержащий информацию о столкновении, "
"произошедшем во время последнего вызова [method move_and_slide]. Поскольку "
"тело может столкнуться несколько раз за один вызов [method move_and_slide], "
"необходимо указать индекс столкновения в диапазоне от 0 до ([method "
"get_slide_collision_count] - 1)."

msgid ""
"Collision layers that will be included for detecting floor bodies that will "
"act as moving platforms to be followed by the [CharacterBody3D]. By default, "
"all floor bodies are detected and propagate their velocity."
msgstr ""
"Слои столкновений, которые будут включены для обнаружения тел пола, которые "
"будут действовать как движущиеся платформы, за которыми будет следовать "
"[CharacterBody3D]. По умолчанию все тела пола обнаруживаются и распространяют "
"свою скорость."

msgid ""
"Collision layers that will be included for detecting wall bodies that will "
"act as moving platforms to be followed by the [CharacterBody3D]. By default, "
"all wall bodies are ignored."
msgstr ""
"Слои столкновений, которые будут включены для обнаружения тел стен, которые "
"будут действовать как движущиеся платформы, за которыми будет следовать "
"[CharacterBody3D]. По умолчанию все тела стен игнорируются."

msgid ""
"Vector pointing upwards, used to determine what is a wall and what is a floor "
"(or a ceiling) when calling [method move_and_slide]. Defaults to [constant "
"Vector3.UP]. As the vector will be normalized it can't be equal to [constant "
"Vector3.ZERO], if you want all collisions to be reported as walls, consider "
"using [constant MOTION_MODE_FLOATING] as [member motion_mode]."
msgstr ""
"Вектор, направленный вверх, используется для определения того, что является "
"стеной, а что полом (или потолком) при вызове [method move_and_slide]. По "
"умолчанию [constant Vector3.UP]. Поскольку вектор будет нормализован, он не "
"может быть равен [constant Vector3.ZERO], если вы хотите, чтобы все "
"столкновения были зарегистрированы как стены, рассмотрите возможность "
"использования [constant MOTION_MODE_FLOATING] в качестве [member motion_mode]."

msgid ""
"Minimum angle (in radians) where the body is allowed to slide when it "
"encounters a wall. The default value equals 15 degrees. When [member "
"motion_mode] is [constant MOTION_MODE_GROUNDED], it only affects movement if "
"[member floor_block_on_wall] is [code]true[/code]."
msgstr ""
"Минимальный угол (в радианах), под которым тело может скользить при "
"столкновении со стеной. Значение по умолчанию равно 15 градусам. Когда "
"[member motion_mode] равно [constant MOTION_MODE_GROUNDED], это влияет на "
"движение только в том случае, если [member floor_block_on_wall] равно "
"[code]true[/code]."

msgid ""
"Apply when notions of walls, ceiling and floor are relevant. In this mode the "
"body motion will react to slopes (acceleration/slowdown). This mode is "
"suitable for grounded games like platformers."
msgstr ""
"Применять, когда важны понятия стен, потолка и пола. В этом режиме движение "
"тела будет реагировать на наклоны (ускорение/замедление). Этот режим подходит "
"для игр с приземлением, таких как платформеры."

msgid ""
"Apply when there is no notion of floor or ceiling. All collisions will be "
"reported as [code]on_wall[/code]. In this mode, when you slide, the speed "
"will always be constant. This mode is suitable for games without ground like "
"space games."
msgstr ""
"Применять, когда нет понятия пола или потолка. Все столкновения будут "
"сообщаться как [code]on_wall[/code]. В этом режиме при скольжении скорость "
"всегда будет постоянной. Этот режим подходит для игр без земли, например, "
"космических игр."

msgid ""
"Controls how an individual character will be displayed in a [RichTextEffect]."
msgstr ""
"Управляет тем, как будет отображаться отдельный символ в [RichTextEffect]."

msgid ""
"By setting various properties on this object, you can control how individual "
"characters will be displayed in a [RichTextEffect]."
msgstr ""
"Задавая различные свойства этого объекта, вы можете управлять тем, как будут "
"отображаться отдельные символы в [RichTextEffect]."

msgid "BBCode in RichTextLabel"
msgstr "BBCode в RichTextLabel"

msgid "The color the character will be drawn with."
msgstr "Цвет, которым будет нарисован персонаж."

msgid ""
"The time elapsed since the [RichTextLabel] was added to the scene tree (in "
"seconds). Time stops when the [RichTextLabel] is paused (see [member "
"Node.process_mode]). Resets when the text in the [RichTextLabel] is changed.\n"
"[b]Note:[/b] Time still passes while the [RichTextLabel] is hidden."
msgstr ""
"Время, прошедшее с момента добавления [RichTextLabel] в дерево сцены (в "
"секундах). Время останавливается, когда [RichTextLabel] приостанавливается "
"(см. [member Node.process_mode]). Сбрасывается, когда текст в [RichTextLabel] "
"изменяется.\n"
"[b]Примечание:[/b] Время все еще идет, пока [RichTextLabel] скрыт."

msgid ""
"Contains the arguments passed in the opening BBCode tag. By default, "
"arguments are strings; if their contents match a type such as [bool], [int] "
"or [float], they will be converted automatically. Color codes in the form "
"[code]#rrggbb[/code] or [code]#rgb[/code] will be converted to an opaque "
"[Color]. String arguments may not contain spaces, even if they're quoted. If "
"present, quotes will also be present in the final string.\n"
"For example, the opening BBCode tag [code][example foo=hello bar=true baz=42 "
"color=#ffffff][/code] will map to the following [Dictionary]:\n"
"[codeblock]\n"
"{\"foo\": \"hello\", \"bar\": true, \"baz\": 42, \"color\": Color(1, 1, 1, "
"1)}\n"
"[/codeblock]"
msgstr ""
"Содержит аргументы, переданные в открывающем теге BBCode. По умолчанию "
"аргументы являются строками; если их содержимое соответствует типу, например "
"[bool], [int] или [float], они будут преобразованы автоматически. Цветовые "
"коды в форме [code]#rrggbb[/code] или [code]#rgb[/code] будут преобразованы в "
"непрозрачный [Color]. Строковые аргументы не могут содержать пробелы, даже "
"если они заключены в кавычки. \n"
"Если они присутствуют, кавычки также будут присутствовать в конечной строке. "
"Например, открывающий тег BBCode [code][example foo=hello bar=true baz=42 "
"color=#ffffff][/code] будет сопоставлен со следующим [Dictionary]:\n"
"[codeblock]\n"
"{\"foo\": \"hello\", \"bar\": true, \"baz\": 42, \"color\": Color(1, 1, 1, "
"1)}\n"
"[/codeblock]"

msgid ""
"[TextServer] RID of the font used to render glyph, this value can be used "
"with [code]TextServer.font_*[/code] methods to retrieve font information.\n"
"[b]Note:[/b] Read-only. Setting this property won't affect drawing."
msgstr ""
"[TextServer] RID шрифта, используемого для отображения глифа, это значение "
"можно использовать с методами [code]TextServer.font_*[/code] для получения "
"информации о шрифте.\n"
"[b]Примечание:[/b] Только для чтения. Установка этого свойства не повлияет на "
"рисование."

msgid ""
"Number of glyphs in the grapheme cluster. This value is set in the first "
"glyph of a cluster.\n"
"[b]Note:[/b] Read-only. Setting this property won't affect drawing."
msgstr ""
"Количество глифов в кластере графем. Это значение задается в первом глифе "
"кластера.\n"
"[b]Примечание:[/b] Только для чтения. Установка этого свойства не повлияет на "
"рисование."

msgid ""
"Glyph flags. See [enum TextServer.GraphemeFlag] for more info.\n"
"[b]Note:[/b] Read-only. Setting this property won't affect drawing."
msgstr ""
"Флаги глифов. См. [enum TextServer.GraphemeFlag] для получения дополнительной "
"информации.\n"
"[b]Примечание:[/b] Только для чтения. Установка этого свойства не повлияет на "
"рисование."

msgid ""
"Glyph index specific to the [member font]. If you want to replace this glyph, "
"use [method TextServer.font_get_glyph_index] with [member font] to get a new "
"glyph index for a single character."
msgstr ""
"Индекс глифа, специфичный для [member font]. Если вы хотите заменить этот "
"глиф, используйте [method TextServer.font_get_glyph_index] с [member font], "
"чтобы получить новый индекс глифа для одного символа."

msgid "The position offset the character will be drawn with (in pixels)."
msgstr "Смещение позиции, с которой будет нарисован символ (в пикселях)."

msgid ""
"If [code]true[/code], FX transform is called for outline drawing.\n"
"[b]Note:[/b] Read-only. Setting this property won't affect drawing."
msgstr ""
"Если [code]true[/code], FX-преобразование вызывается для контурного "
"рисования.\n"
"[b]Примечание:[/b] Только для чтения. Установка этого свойства не повлияет на "
"рисование."

msgid ""
"Absolute character range in the string, corresponding to the glyph.\n"
"[b]Note:[/b] Read-only. Setting this property won't affect drawing."
msgstr ""
"Абсолютный диапазон символов в строке, соответствующий глифу.\n"
"[b]Примечание:[/b] Только для чтения. Установка этого свойства не повлияет на "
"рисование."

msgid ""
"The character offset of the glyph, relative to the current [RichTextEffect] "
"custom block.\n"
"[b]Note:[/b] Read-only. Setting this property won't affect drawing."
msgstr ""
"Смещение символа глифа относительно текущего пользовательского блока "
"[RichTextEffect].\n"
"[b]Примечание:[/b] Только для чтения. Установка этого свойства не повлияет на "
"рисование."

msgid ""
"The current transform of the current glyph. It can be overridden (for "
"example, by driving the position and rotation from a curve). You can also "
"alter the existing value to apply transforms on top of other effects."
msgstr ""
"Текущее преобразование текущего глифа. Его можно переопределить (например, "
"управляя положением и вращением из кривой). Вы также можете изменить "
"существующее значение, чтобы применить преобразования поверх других эффектов."

msgid ""
"If [code]true[/code], the character will be drawn. If [code]false[/code], the "
"character will be hidden. Characters around hidden characters will reflow to "
"take the space of hidden characters. If this is not desired, set their "
"[member color] to [code]Color(1, 1, 1, 0)[/code] instead."
msgstr ""
"Если [code]true[/code], символ будет нарисован. Если [code]false[/code], "
"символ будет скрыт. Символы вокруг скрытых символов будут переформатированы, "
"чтобы занять пространство скрытых символов. Если это нежелательно, вместо "
"этого установите их [member color] на [code]Color(1, 1, 1, 0)[/code]."

msgid "A button that represents a binary choice."
msgstr "Кнопка, представляющая бинарный выбор."

msgid ""
"[CheckBox] allows the user to choose one of only two possible options. It's "
"similar to [CheckButton] in functionality, but it has a different appearance. "
"To follow established UX patterns, it's recommended to use [CheckBox] when "
"toggling it has [b]no[/b] immediate effect on something. For example, it "
"could be used when toggling it will only do something once a confirmation "
"button is pressed.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node.\n"
"When [member BaseButton.button_group] specifies a [ButtonGroup], [CheckBox] "
"changes its appearance to that of a radio button and uses the various "
"[code]radio_*[/code] theme properties."
msgstr ""
"[CheckBox] позволяет пользователю выбрать один из двух возможных вариантов. "
"Он похож на [CheckButton] по функциональности, но имеет другой внешний вид. "
"Чтобы следовать установленным шаблонам UX, рекомендуется использовать "
"[CheckBox], когда переключение [b]не[/b] оказывает немедленного эффекта на "
"что-либо. Например, его можно использовать, когда переключение будет "
"выполнять что-либо только после нажатия кнопки подтверждения.\n"
"См. также [BaseButton], который содержит общие свойства и методы, связанные с "
"этим узлом.\n"
"Когда [member BaseButton.button_group] указывает [ButtonGroup], [CheckBox] "
"меняет свой внешний вид на вид переключателя и использует различные свойства "
"темы [code]radio_*[/code]."

msgid "The color of the checked icon when the checkbox is pressed."
msgstr "Цвет отмеченного значка при нажатии на флажок."

msgid "The color of the unchecked icon when the checkbox is not pressed."
msgstr "Цвет неотмеченного значка, когда флажок не нажат."

msgid "The vertical offset used when rendering the check icons (in pixels)."
msgstr ""
"Вертикальное смещение, используемое при отрисовке значков галочек (в "
"пикселях)."

msgid "The check icon to display when the [CheckBox] is checked."
msgstr "Значок галочки, отображаемый при установке флажка [CheckBox]."

msgid ""
"The check icon to display when the [CheckBox] is checked and is disabled."
msgstr "Значок галочки, отображаемый, когда [CheckBox] отмечен и отключен."

msgid ""
"The check icon to display when the [CheckBox] is configured as a radio button "
"and is checked."
msgstr ""
"Значок галочки, отображаемый, когда [CheckBox] настроен как переключатель и "
"отмечен."

msgid ""
"The check icon to display when the [CheckBox] is configured as a radio "
"button, is disabled, and is unchecked."
msgstr ""
"Значок галочки, отображаемый, когда [CheckBox] настроен как переключатель, "
"отключен и не отмечен."

msgid ""
"The check icon to display when the [CheckBox] is configured as a radio button "
"and is unchecked."
msgstr ""
"Значок галочки, отображаемый, когда [CheckBox] настроен как переключатель и "
"не отмечен."

msgid "The check icon to display when the [CheckBox] is unchecked."
msgstr "Значок галочки, отображаемый, когда флажок [CheckBox] не отмечен."

msgid ""
"The check icon to display when the [CheckBox] is unchecked and is disabled."
msgstr ""
"Значок галочки, отображаемый, когда флажок [CheckBox] не отмечен и отключен."

msgid ""
"[CheckButton] is a toggle button displayed as a check field. It's similar to "
"[CheckBox] in functionality, but it has a different appearance. To follow "
"established UX patterns, it's recommended to use [CheckButton] when toggling "
"it has an [b]immediate[/b] effect on something. For example, it can be used "
"when pressing it shows or hides advanced settings, without asking the user to "
"confirm this action.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node."
msgstr ""
"[CheckButton] — это кнопка-переключатель, отображаемая как поле для флажка. "
"По функциональности она похожа на [CheckBox], но имеет другой внешний вид. "
"Чтобы следовать установленным шаблонам UX, рекомендуется использовать "
"[CheckButton], когда переключение оказывает [b]немедленный[/b] эффект на что-"
"либо. Например, ее можно использовать, когда нажатие показывает или скрывает "
"расширенные настройки, не запрашивая у пользователя подтверждения этого "
"действия.\n"
"См. также [BaseButton], который содержит общие свойства и методы, связанные с "
"этим узлом."

msgid "The vertical offset used when rendering the toggle icons (in pixels)."
msgstr ""
"Вертикальное смещение, используемое при отрисовке значков переключения (в "
"пикселях)."

msgid ""
"The icon to display when the [CheckButton] is checked (for left-to-right "
"layouts)."
msgstr ""
"Значок, отображаемый при установке флажка [CheckButton] (для макетов слева "
"направо)."

msgid ""
"The icon to display when the [CheckButton] is checked and disabled (for left-"
"to-right layouts)."
msgstr ""
"Значок, отображаемый, когда [CheckButton] отмечен и отключен (для макетов "
"слева направо)."

msgid ""
"The icon to display when the [CheckButton] is checked and disabled (for right-"
"to-left layouts)."
msgstr ""
"Значок, отображаемый, когда [CheckButton] отмечен и отключен (для макетов с "
"письмом справа налево)."

msgid ""
"The icon to display when the [CheckButton] is checked (for right-to-left "
"layouts)."
msgstr ""
"Значок, отображаемый при установке флажка [CheckButton] (для макетов с "
"письмом справа налево)."

msgid ""
"The icon to display when the [CheckButton] is unchecked (for left-to-right "
"layouts)."
msgstr ""
"Значок, отображаемый при снятом флажке [CheckButton] (для макетов слева "
"направо)."

msgid ""
"The icon to display when the [CheckButton] is unchecked and disabled (for "
"left-to-right layouts)."
msgstr ""
"Значок, отображаемый, когда [CheckButton] не отмечен и отключен (для макетов "
"слева направо)."

msgid ""
"The icon to display when the [CheckButton] is unchecked and disabled (for "
"right-to-left layouts)."
msgstr ""
"Значок, отображаемый, когда [CheckButton] не отмечен и отключен (для макетов "
"с письмом справа налево)."

msgid ""
"The icon to display when the [CheckButton] is unchecked (for right-to-left "
"layouts)."
msgstr ""
"Значок, отображаемый при снятом флажке [CheckButton] (для макетов с письмом "
"справа налево)."

msgid "A 2D circle shape used for physics collision."
msgstr "2D круглая форма, используемая для физического столкновения."

msgid ""
"A 2D circle shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape2D].\n"
"[b]Performance:[/b] [CircleShape2D] is fast to check collisions against. It "
"is faster than [RectangleShape2D] and [CapsuleShape2D]."
msgstr ""
"Двумерная круглая форма, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape2D].\n"
"[b]Производительность:[/b] [CircleShape2D] быстро проверяет столкновения. Он "
"быстрее, чем [RectangleShape2D] и [CapsuleShape2D]."

msgid "The circle's radius."
msgstr "Радиус окружности."

msgid "A class information repository."
msgstr "Хранилище информации о классах."

msgid ""
"Provides access to metadata stored for every available engine class.\n"
"[b]Note:[/b] Script-defined classes with [code]class_name[/code] are not part "
"of [ClassDB], so they will not return reflection data such as a method or "
"property list. However, [GDExtension]-defined classes [i]are[/i] part of "
"[ClassDB], so they will return reflection data."
msgstr ""
"Предоставляет доступ к метаданным, хранящимся для каждого доступного класса "
"движка.\n"
"[b]Примечание:[/b] Классы, определённые скриптом с [code]class_name[/code], "
"не являются частью [ClassDB], поэтому они не будут возвращать данные "
"рефлексии, такие как список методов или свойств. Однако классы, определённые "
"[GDExtension], [i]являются[/i] частью [ClassDB], поэтому они будут возвращать "
"данные рефлексии."

msgid ""
"Returns [code]true[/code] if objects can be instantiated from the specified "
"[param class], otherwise returns [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если объекты могут быть созданы из указанного "
"[param class], в противном случае возвращает [code]false[/code]."

msgid "Calls a static method on a class."
msgstr "Вызывает статический метод класса."

msgid "Returns whether the specified [param class] is available or not."
msgstr "Возвращает, доступен ли указанный [param class] или нет."

msgid "Returns the API type of the specified [param class]."
msgstr "Возвращает тип API указанного [param class]."

msgid ""
"Returns an array with all the keys in [param enum] of [param class] or its "
"ancestry."
msgstr ""
"Возвращает массив со всеми ключами в [param enum] [param class] или его "
"предке."

msgid "Returns an array with all the enums of [param class] or its ancestry."
msgstr ""
"Возвращает массив со всеми перечислениями [param class] или его предков."

msgid ""
"Returns the value of the integer constant [param name] of [param class] or "
"its ancestry. Always returns 0 when the constant could not be found."
msgstr ""
"Возвращает значение целочисленной константы [param name] [param class] или ее "
"предка. Всегда возвращает 0, если константа не может быть найдена."

msgid ""
"Returns which enum the integer constant [param name] of [param class] or its "
"ancestry belongs to."
msgstr ""
"Возвращает значения, перечисляющие целочисленную константу [param name] из "
"[param class] или ее предка."

msgid ""
"Returns an array with the names all the integer constants of [param class] or "
"its ancestry."
msgstr ""
"Возвращает массив с именами всех целочисленных констант [param class] или его "
"предков."

msgid ""
"Returns the number of arguments of the method [param method] of [param class] "
"or its ancestry if [param no_inheritance] is [code]false[/code]."
msgstr ""
"Возвращает количество аргументов метода [param method] из [param class] или "
"его предка, если [param no_inheritance] равно [code]false[/code]."

msgid ""
"Returns an array with all the methods of [param class] or its ancestry if "
"[param no_inheritance] is [code]false[/code]. Every element of the array is a "
"[Dictionary] with the following keys: [code]args[/code], [code]default_args[/"
"code], [code]flags[/code], [code]id[/code], [code]name[/code], [code]return: "
"(class_name, hint, hint_string, name, type, usage)[/code].\n"
"[b]Note:[/b] In exported release builds the debug info is not available, so "
"the returned dictionaries will contain only method names."
msgstr ""
"Возвращает массив со всеми методами [param class] или его предка, если [param "
"no_inheritance] равен [code]false[/code]. Каждый элемент массива — это "
"[Dictionary] со следующими ключами: [code]args[/code], [code]default_args[/"
"code], [code]flags[/code], [code]id[/code], [code]name[/code], [code]return: "
"(class_name, hint, hint_string, name, type, usage)[/code].\n"
"[b]Примечание:[/b] В экспортированных сборках релиза отладочная информация "
"недоступна, поэтому возвращаемые словари будут содержать только имена методов."

msgid "Returns the value of [param property] of [param object] or its ancestry."
msgstr "Возвращает значение [param property] от [param object] или его предка."

msgid ""
"Returns the default value of [param property] of [param class] or its "
"ancestor classes."
msgstr ""
"Возвращает значение по умолчанию [param property] из [param class] или его "
"родительских классов."

msgid "Returns the getter method name of [param property] of [param class]."
msgstr "Возвращает имя метода получения [param property] из [param class]."

msgid ""
"Returns an array with all the properties of [param class] or its ancestry if "
"[param no_inheritance] is [code]false[/code]."
msgstr ""
"Возвращает массив со всеми свойствами [param class] или его предка, если "
"[param no_inheritance] равен [code]false[/code]."

msgid "Returns the setter method name of [param property] of [param class]."
msgstr "Возвращает имя метода установки [param property] из [param class]."

msgid ""
"Returns the [param signal] data of [param class] or its ancestry. The "
"returned value is a [Dictionary] with the following keys: [code]args[/code], "
"[code]default_args[/code], [code]flags[/code], [code]id[/code], [code]name[/"
"code], [code]return: (class_name, hint, hint_string, name, type, usage)[/"
"code]."
msgstr ""
"Возвращает данные [param signal] [param class] или его предка. Возвращаемое "
"значение — [Dictionary] со следующими ключами: [code]args[/code], "
"[code]default_args[/code], [code]flags[/code], [code]id[/code], [code]name[/"
"code], [code]return: (class_name, hint, hint_string, name, type, usage)[/"
"code]."

msgid ""
"Returns an array with all the signals of [param class] or its ancestry if "
"[param no_inheritance] is [code]false[/code]. Every element of the array is a "
"[Dictionary] as described in [method class_get_signal]."
msgstr ""
"Возвращает массив со всеми сигналами [param class] или его предка, если "
"[param no_inheritance] равен [code]false[/code]. Каждый элемент массива "
"является [Dictionary], как описано в [method class_get_signal]."

msgid ""
"Returns whether [param class] or its ancestry has an enum called [param name] "
"or not."
msgstr ""
"Возвращает, имеет ли [param class] или его предок перечисление с именем "
"[param name] или нет."

msgid ""
"Returns whether [param class] or its ancestry has an integer constant called "
"[param name] or not."
msgstr ""
"Возвращает, имеет ли [param class] или его предок целочисленную константу с "
"именем [param name] или нет."

msgid ""
"Returns whether [param class] (or its ancestry if [param no_inheritance] is "
"[code]false[/code]) has a method called [param method] or not."
msgstr ""
"Возвращает, имеет ли [param class] (или его предок, если [param "
"no_inheritance] равен [code]false[/code]) метод с именем [param method] или "
"нет."

msgid ""
"Returns whether [param class] or its ancestry has a signal called [param "
"signal] or not."
msgstr ""
"Возвращает, имеет ли [param class] или его предок сигнал с именем [param "
"signal] или нет."

msgid "Sets [param property] value of [param object] to [param value]."
msgstr ""
"Устанавливает значение [param property] для [param object] равным [param "
"value]."

msgid ""
"Returns the names of all engine classes available.\n"
"[b]Note:[/b] Script-defined classes with [code]class_name[/code] are not "
"included in this list. Use [method ProjectSettings.get_global_class_list] to "
"get a list of script-defined classes instead."
msgstr ""
"Возвращает имена всех доступных классов движка.\n"
"[b]Примечание:[/b] Классы, определённые скриптом с [code]class_name[/code], "
"не включены в этот список. Вместо этого используйте [method "
"ProjectSettings.get_global_class_list], чтобы получить список классов, "
"определённых скриптом."

msgid ""
"Returns the names of all engine classes that directly or indirectly inherit "
"from [param class]."
msgstr ""
"Возвращает имена всех классов движка, которые напрямую или косвенно наследуют "
"от [param class]."

msgid "Returns the parent class of [param class]."
msgstr "Возвращает родительский класс [param class]."

msgid "Creates an instance of [param class]."
msgstr "Создает экземпляр [param class]."

msgid "Returns whether this [param class] is enabled or not."
msgstr "Возвращает, включен ли этот [param class] или нет."

msgid ""
"Returns whether [param class] (or its ancestor classes if [param "
"no_inheritance] is [code]false[/code]) has an enum called [param enum] that "
"is a bitfield."
msgstr ""
"Возвращает, имеет ли [param class] (или его предковые классы, если [param "
"no_inheritance] равен [code]false[/code]) перечисление с именем [param enum], "
"которое является битовым полем."

msgid "Returns whether [param inherits] is an ancestor of [param class] or not."
msgstr "Возвращает, является ли [param inherits] предком [param class] или нет."

msgid "Native Core class type."
msgstr "Тип класса Native Core."

msgid "Native Editor class type."
msgstr "Тип класса Собственного Редактора."

msgid "GDExtension class type."
msgstr "Тип класса GDExtension."

msgid "GDExtension Editor class type."
msgstr "Тип класса редактора GDExtension."

msgid "Unknown class type."
msgstr "Неизвестный тип класса."

msgid "A multiline text editor designed for editing code."
msgstr ""
"Многострочный текстовый редактор, предназначенный для редактирования кода."

msgid ""
"CodeEdit is a specialized [TextEdit] designed for editing plain text code "
"files. It has many features commonly found in code editors such as line "
"numbers, line folding, code completion, indent management, and string/comment "
"management.\n"
"[b]Note:[/b] Regardless of locale, [CodeEdit] will by default always use left-"
"to-right text direction to correctly display source code."
msgstr ""
"CodeEdit — это специализированный [TextEdit], разработанный для "
"редактирования файлов с простым текстовым кодом. Он обладает множеством "
"функций, обычно встречающихся в редакторах кода, таких как номера строк, "
"перенос строк, автодополнение кода, управление отступами и управление "
"строками/комментариями.\n"
"[b]Примечание:[/b] Независимо от локали, [CodeEdit] по умолчанию всегда будет "
"использовать направление текста слева направо для правильного отображения "
"исходного кода."

msgid ""
"Override this method to define how the selected entry should be inserted. If "
"[param replace] is [code]true[/code], any existing text should be replaced."
msgstr ""
"Переопределить этот метод, чтобы определить, как следует вставлять выбранную "
"запись. Если [param replace] равен [code]true[/code], любой существующий "
"текст должен быть заменен."

msgid ""
"Override this method to define what items in [param candidates] should be "
"displayed.\n"
"Both [param candidates] and the return is an [Array] of [Dictionary], see "
"[method get_code_completion_option] for [Dictionary] content."
msgstr ""
"Переопределите этот метод, чтобы определить, какие элементы в [param "
"candidates] должны отображаться.\n"
"Как [param candidates], так и возвращаемый объект представляют собой [Array] "
"из [Dictionary]. Содержимое [Dictionary] см. в [method "
"get_code_completion_option]."

msgid ""
"Override this method to define what happens when the user requests code "
"completion. If [param force] is [code]true[/code], any checks should be "
"bypassed."
msgstr ""
"Переопределите этот метод, чтобы определить, что произойдет, когда "
"пользователь запрашивает завершение кода. Если [param force] равен "
"[code]true[/code], любые проверки следует обойти."

msgid ""
"Adds a brace pair.\n"
"Both the start and end keys must be symbols. Only the start key has to be "
"unique."
msgstr ""
"Добавляет пару скобок.\n"
"Начальный и конечный ключи должны быть символами. Только начальный ключ "
"должен быть уникальным."

msgid ""
"Submits an item to the queue of potential candidates for the autocomplete "
"menu. Call [method update_code_completion_options] to update the list.\n"
"[param location] indicates location of the option relative to the location of "
"the code completion query. See [enum CodeEdit.CodeCompletionLocation] for how "
"to set this value.\n"
"[b]Note:[/b] This list will replace all current candidates."
msgstr ""
"Отправляет элемент в очередь потенциальных кандидатов для меню "
"автозаполнения. Вызовите [method update_code_completion_options], чтобы "
"обновить список.\n"
"[param location] указывает расположение параметра относительно местоположения "
"запроса на завершение кода. См. [enum CodeEdit.CodeCompletionLocation], чтобы "
"узнать, как задать это значение.\n"
"[b]Примечание:[/b] Этот список заменит всех текущих кандидатов."

msgid ""
"Adds a comment delimiter from [param start_key] to [param end_key]. Both keys "
"should be symbols, and [param start_key] must not be shared with other "
"delimiters.\n"
"If [param line_only] is [code]true[/code] or [param end_key] is an empty "
"[String], the region does not carry over to the next line."
msgstr ""
"Добавляет разделитель комментариев от [param start_key] до [param end_key]. "
"Оба ключа должны быть символами, и [param start_key] не должен использоваться "
"совместно с другими разделителями.\n"
"Если [param line_only] — это [code]true[/code] или [param end_key] — это "
"пустая [String], область не переносится на следующую строку."

msgid ""
"Defines a string delimiter from [param start_key] to [param end_key]. Both "
"keys should be symbols, and [param start_key] must not be shared with other "
"delimiters.\n"
"If [param line_only] is [code]true[/code] or [param end_key] is an empty "
"[String], the region does not carry over to the next line."
msgstr ""
"Определяет разделитель строк от [param start_key] до [param end_key]. Оба "
"ключа должны быть символами, и [param start_key] не должен использоваться "
"совместно с другими разделителями.\n"
"Если [param line_only] — [code]true[/code], или [param end_key] — это пустая "
"[String], область не переносится на следующую строку."

msgid ""
"Returns [code]true[/code] if the given line is foldable. A line is foldable "
"if it is the start of a valid code region (see [method "
"get_code_region_start_tag]), if it is the start of a comment or string block, "
"or if the next non-empty line is more indented (see [method "
"TextEdit.get_indent_level])."
msgstr ""
"Возвращает [code]true[/code], если заданная строка является сворачиваемой. "
"Строка является сворачиваемой, если она является началом допустимой области "
"кода (см. [method get_code_region_start_tag]), если она является началом "
"комментария или блока строки, или если следующая непустая строка имеет "
"больший отступ (см. [method TextEdit.get_indent_level])."

msgid "Cancels the autocomplete menu."
msgstr "Отменяет меню автозаполнения."

msgid "Clears all bookmarked lines."
msgstr "Очищает все отмеченные строки."

msgid "Clears all breakpointed lines."
msgstr "Очистить все линии точек останова."

msgid "Removes all comment delimiters."
msgstr "Удаляет все разделители комментариев."

msgid "Clears all executed lines."
msgstr "Очищает все выполненные строки."

msgid "Removes all string delimiters."
msgstr "Удаляет все разделители строк."

msgid ""
"Inserts the selected entry into the text. If [param replace] is [code]true[/"
"code], any existing text is replaced rather than merged."
msgstr ""
"Вставляет выбранную запись в текст. Если [param replace] равен [code]true[/"
"code], любой существующий текст заменяется, а не объединяется."

msgid ""
"Converts the indents of lines between [param from_line] and [param to_line] "
"to tabs or spaces as set by [member indent_use_spaces].\n"
"Values of [code]-1[/code] convert the entire text."
msgstr ""
"Преобразует отступы строк между [param from_line] и [param to_line] в "
"табуляции или пробелы, как установлено [member indent_use_spaces]. \n"
"Значения [code]-1[/code] преобразуют весь текст."

msgid ""
"Creates a new code region with the selection. At least one single line "
"comment delimiter have to be defined (see [method add_comment_delimiter]).\n"
"A code region is a part of code that is highlighted when folded and can help "
"organize your script.\n"
"Code region start and end tags can be customized (see [method "
"set_code_region_tags]).\n"
"Code regions are delimited using start and end tags (respectively "
"[code]region[/code] and [code]endregion[/code] by default) preceded by one "
"line comment delimiter. (eg. [code]#region[/code] and [code]#endregion[/code])"
msgstr ""
"Создает новую область кода с выбранным фрагментом. Необходимо определить хотя "
"бы один разделитель комментариев в одну строку (см. [method "
"add_comment_delimiter]).\n"
"Область кода — это часть кода, которая выделяется при сворачивании и может "
"помочь организовать ваш скрипт.\n"
"Начальные и конечные теги области кода можно настроить (см. [method "
"set_code_region_tags]).\n"
"Области кода разделяются с помощью начальных и конечных тегов (соответственно "
"[code]region[/code] и [code]endregion[/code] по умолчанию), которым "
"предшествует разделитель комментариев в одну строку. (например, "
"[code]#region[/code] и [code]#endregion[/code])"

msgid "Deletes all lines that are selected or have a caret on them."
msgstr "Удаляет все выделенные строки или строки, на которых установлен курсор."

msgid ""
"If there is no selection, indentation is inserted at the caret. Otherwise, "
"the selected lines are indented like [method indent_lines]. Equivalent to the "
"[member ProjectSettings.input/ui_text_indent] action. The indentation "
"characters used depend on [member indent_use_spaces] and [member indent_size]."
msgstr ""
"Если выделения нет, отступ вставляется в каретку. В противном случае "
"выбранные строки отступают как [method indent_lines]. Эквивалентно действию "
"[member ProjectSettings.input/ui_text_indent]. Используемые символы отступа "
"зависят от [member indent_use_spaces] и [member indent_size]."

msgid ""
"Duplicates all lines currently selected with any caret. Duplicates the entire "
"line beneath the current one no matter where the caret is within the line."
msgstr ""
"Дублирует все строки, выбранные в данный момент с любым курсором. Дублирует "
"всю строку под текущей, независимо от того, где в строке находится курсор."

msgid ""
"Duplicates all selected text and duplicates all lines with a caret on them."
msgstr ""
"Дублирует весь выделенный текст и все строки, на которых установлен курсор."

msgid ""
"Folds all lines that are possible to be folded (see [method can_fold_line])."
msgstr ""
"Складывает все линии, которые можно сложить (см. [method can_fold_line])."

msgid "Folds the given line, if possible (see [method can_fold_line])."
msgstr ""
"Складывает заданную строку, если это возможно (см. [method can_fold_line])."

msgid "Gets the matching auto brace close key for [param open_key]."
msgstr ""
"Получает соответствующий ключ закрытия автоматической скобки для [param "
"open_key]."

msgid "Gets all bookmarked lines."
msgstr "Получает все отмеченные закладками строки."

msgid "Gets all breakpointed lines."
msgstr "Получает все контрольные точки строк."

msgid ""
"Gets the completion option at [param index]. The return [Dictionary] has the "
"following key-values:\n"
"[code]kind[/code]: [enum CodeCompletionKind]\n"
"[code]display_text[/code]: Text that is shown on the autocomplete menu.\n"
"[code]insert_text[/code]: Text that is to be inserted when this item is "
"selected.\n"
"[code]font_color[/code]: Color of the text on the autocomplete menu.\n"
"[code]icon[/code]: Icon to draw on the autocomplete menu.\n"
"[code]default_value[/code]: Value of the symbol."
msgstr ""
"Получает параметр завершения в [param index]. Возвращаемый [Словарь] имеет "
"следующие ключевые значения:\n"
"[code]kind[/code]: [enum CodeCompletionKind]\n"
"[code]display_text[/code]: Текст, отображаемый в меню автозаполнения.\n"
"[code]insert_text[/code]: Текст, который должен быть вставлен при выборе "
"этого элемента.\n"
"[code]font_color[/code]: Цвет текста в меню автозаполнения.\n"
"[code]icon[/code]: Значок для рисования в меню автозаполнения.\n"
"[code]default_value[/code]: Значение символа."

msgid ""
"Gets all completion options, see [method get_code_completion_option] for "
"return content."
msgstr ""
"Получает все параметры завершения, см. [method get_code_completion_option] "
"для получения информации о возвращаемом содержимом."

msgid "Gets the index of the current selected completion option."
msgstr "Получает индекс текущего выбранного варианта завершения."

msgid "Returns the code region end tag (without comment delimiter)."
msgstr "Возвращает конечный тег региона кода (без разделителя комментариев)."

msgid "Returns the code region start tag (without comment delimiter)."
msgstr "Возвращает начальный тег региона кода (без разделителя комментариев)."

msgid "Gets the end key for a string or comment region index."
msgstr "Получает конечный ключ для индекса строки или области комментариев."

msgid ""
"If [param line] [param column] is in a string or comment, returns the end "
"position of the region. If not or no end could be found, both [Vector2] "
"values will be [code]-1[/code]."
msgstr ""
"Если [param line] [param column] находится в строке или комментарии, "
"возвращает конечную позицию региона. Если нет или конец не найден, оба "
"значения [Vector2] будут [code]-1[/code]."

msgid "Gets the start key for a string or comment region index."
msgstr "Получает начальный ключ для индекса строки или области комментариев."

msgid ""
"If [param line] [param column] is in a string or comment, returns the start "
"position of the region. If not or no start could be found, both [Vector2] "
"values will be [code]-1[/code]."
msgstr ""
"Если [param line] [param column] находится в строке или комментарии, "
"возвращает начальную позицию региона. Если нет или начало не найдено, оба "
"значения [Vector2] будут [code]-1[/code]."

msgid "Gets all executing lines."
msgstr "Получает все исполняемые строки."

msgid "Returns all lines that are currently folded."
msgstr "Возвращает все строки, которые в данный момент свернуты."

msgid ""
"Returns the full text with char [code]0xFFFF[/code] at the caret location."
msgstr ""
"Возвращает полный текст с символом [code]0xFFFF[/code] в позиции курсора."

msgid ""
"Returns the full text with char [code]0xFFFF[/code] at the cursor location."
msgstr ""
"Возвращает полный текст с символом [code]0xFFFF[/code] в позиции курсора."

msgid ""
"Returns the full text with char [code]0xFFFF[/code] at the specified location."
msgstr ""
"Возвращает полный текст с символом [code]0xFFFF[/code] в указанном месте."

msgid "Returns [code]true[/code] if close key [param close_key] exists."
msgstr ""
"Возвращает [code]true[/code], если существует ключ закрытия [param close_key]."

msgid "Returns [code]true[/code] if open key [param open_key] exists."
msgstr ""
"Возвращает [code]true[/code], если существует открытый ключ [param open_key]."

msgid "Returns [code]true[/code] if comment [param start_key] exists."
msgstr ""
"Возвращает [code]true[/code], если существует комментарий [param start_key]."

msgid "Returns [code]true[/code] if string [param start_key] exists."
msgstr "Возвращает [code]true[/code], если строка [param start_key] существует."

msgid ""
"Indents all lines that are selected or have a caret on them. Uses spaces or a "
"tab depending on [member indent_use_spaces]. See [method unindent_lines]."
msgstr ""
"Делает отступы во всех строках, которые выбраны или на которых есть курсор. "
"Использует пробелы или табуляцию в зависимости от [member indent_use_spaces]. "
"См. [method unindent_lines]."

msgid ""
"Returns delimiter index if [param line] [param column] is in a comment. If "
"[param column] is not provided, will return delimiter index if the entire "
"[param line] is a comment. Otherwise [code]-1[/code]."
msgstr ""
"Возвращает индекс разделителя, если [param line] [param column] находится в "
"комментарии. Если [param column] не указан, вернет индекс разделителя, если "
"вся [param line] является комментарием. В противном случае [code]-1[/code]."

msgid ""
"Returns the delimiter index if [param line] [param column] is in a string. If "
"[param column] is not provided, will return the delimiter index if the entire "
"[param line] is a string. Otherwise [code]-1[/code]."
msgstr ""
"Возвращает индекс разделителя, если [param line] [param column] находится в "
"строке. Если [param column] не указан, вернет индекс разделителя, если вся "
"[param line] является строкой. В противном случае [code]-1[/code]."

msgid ""
"Returns [code]true[/code] if the given line is bookmarked. See [method "
"set_line_as_bookmarked]."
msgstr ""
"Возвращает [code]true[/code], если данная строка добавлена в закладки. См. "
"[method set_line_as_bookmarked]."

msgid ""
"Returns [code]true[/code] if the given line is breakpointed. See [method "
"set_line_as_breakpoint]."
msgstr ""
"Возвращает [code]true[/code], если заданная строка имеет точку останова. См. "
"[method set_line_as_breakpoint]."

msgid ""
"Returns [code]true[/code] if the given line is a code region end. See [method "
"set_code_region_tags]."
msgstr ""
"Возвращает [code]true[/code], если заданная строка является концом области "
"кода. См. [method set_code_region_tags]."

msgid ""
"Returns [code]true[/code] if the given line is a code region start. See "
"[method set_code_region_tags]."
msgstr ""
"Возвращает [code]true[/code], если заданная строка является началом области "
"кода. См. [method set_code_region_tags]."

msgid ""
"Returns [code]true[/code] if the given line is marked as executing. See "
"[method set_line_as_executing]."
msgstr ""
"Возвращает [code]true[/code], если заданная строка отмечена как исполняемая. "
"См. [method set_line_as_executing]."

msgid ""
"Returns [code]true[/code] if the given line is folded. See [method fold_line]."
msgstr ""
"Возвращает [code]true[/code], если заданная строка свернута. См. [method "
"fold_line]."

msgid "Moves all lines down that are selected or have a caret on them."
msgstr "Перемещает вниз все выделенные или имеющие курсор строки."

msgid "Moves all lines up that are selected or have a caret on them."
msgstr "Перемещает вверх все выделенные или отмеченные курсором строки."

msgid "Removes the comment delimiter with [param start_key]."
msgstr "Удаляет разделитель комментариев с помощью [param start_key]."

msgid "Removes the string delimiter with [param start_key]."
msgstr "Удаляет разделитель строки с помощью [param start_key]."

msgid ""
"Emits [signal code_completion_requested], if [param force] is [code]true[/"
"code] will bypass all checks. Otherwise will check that the caret is in a "
"word or in front of a prefix. Will ignore the request if all current options "
"are of type file path, node path, or signal."
msgstr ""
"Выдает [signal code_completion_requested], если [param force] равен "
"[code]true[/code], то все проверки будут пропущены. В противном случае будет "
"проверяться, находится ли каретка в слове или перед префиксом. Будет "
"игнорировать запрос, если все текущие параметры имеют тип file path, node "
"path или signal."

msgid "Sets the current selected completion option."
msgstr "Устанавливает текущий выбранный вариант завершения."

msgid "Sets the code hint text. Pass an empty string to clear."
msgstr "Задает текст подсказки кода. Передайте пустую строку для очистки."

msgid ""
"If [code]true[/code], the code hint will draw below the main caret. If "
"[code]false[/code], the code hint will draw above the main caret. See [method "
"set_code_hint]."
msgstr ""
"Если [code]true[/code], подсказка кода будет нарисована под основным "
"курсором. Если [code]false[/code], подсказка кода будет нарисована над "
"основным курсором. См. [method set_code_hint]."

msgid "Sets the code region start and end tags (without comment delimiter)."
msgstr ""
"Устанавливает начальный и конечный теги области кода (без разделителя "
"комментариев)."

msgid ""
"Sets the given line as bookmarked. If [code]true[/code] and [member "
"gutters_draw_bookmarks] is [code]true[/code], draws the [theme_item bookmark] "
"icon in the gutter for this line. See [method get_bookmarked_lines] and "
"[method is_line_bookmarked]."
msgstr ""
"Устанавливает заданную строку как закладку. Если [code]true[/code] и [member "
"gutters_draw_bookmarks] равно [code]true[/code], рисует значок [theme_item "
"bookmark] в желобе для этой строки. См. [method get_bookmarked_lines] и "
"[method is_line_bookmarked]."

msgid ""
"Sets the given line as a breakpoint. If [code]true[/code] and [member "
"gutters_draw_breakpoints_gutter] is [code]true[/code], draws the [theme_item "
"breakpoint] icon in the gutter for this line. See [method "
"get_breakpointed_lines] and [method is_line_breakpointed]."
msgstr ""
"Устанавливает заданную строку как точку останова. Если [code]true[/code] и "
"[member gutters_draw_breakpoints_gutter] равно [code]true[/code], рисует "
"значок [theme_item breakpoint] в желобе для этой строки. См. [method "
"get_breakpointed_lines] и [method is_line_breakpointed]."

msgid ""
"Sets the given line as executing. If [code]true[/code] and [member "
"gutters_draw_executing_lines] is [code]true[/code], draws the [theme_item "
"executing_line] icon in the gutter for this line. See [method "
"get_executing_lines] and [method is_line_executing]."
msgstr ""
"Устанавливает заданную строку как исполняемую. Если [code]true[/code] и "
"[member gutters_draw_executing_lines] равно [code]true[/code], рисует значок "
"[theme_item executing_line] в желобе для этой строки. См. [method "
"get_executing_lines] и [method is_line_executing]."

msgid "Sets the symbol emitted by [signal symbol_validate] as a valid lookup."
msgstr ""
"Устанавливает символ, выданный [signal symbol_validate], как допустимый поиск."

msgid "Toggle the folding of the code block at the given line."
msgstr "Переключить сворачивание блока кода на указанной строке."

msgid "Toggle the folding of the code block on all lines with a caret on them."
msgstr ""
"Включает/выключает сворачивание блока кода на всех строках, на которых "
"установлена каретка."

msgid "Unfolds all lines that are folded."
msgstr "Разворачивает все сложенные строки."

msgid ""
"Unfolds the given line if it is folded or if it is hidden under a folded line."
msgstr ""
"Разворачивает заданную линию, если она сложена или скрыта под сложенной "
"линией."

msgid ""
"Unindents all lines that are selected or have a caret on them. Uses spaces or "
"a tab depending on [member indent_use_spaces]. Equivalent to the [member "
"ProjectSettings.input/ui_text_dedent] action. See [method indent_lines]."
msgstr ""
"Удаляет отступы всех выбранных или отмеченных курсором строк. Использует "
"пробелы или табуляцию в зависимости от [member indent_use_spaces]. "
"Эквивалентно действию [member ProjectSettings.input/ui_text_dedent]. См. "
"[method indent_lines]."

msgid ""
"Submits all completion options added with [method "
"add_code_completion_option]. Will try to force the autocomplete menu to "
"popup, if [param force] is [code]true[/code].\n"
"[b]Note:[/b] This will replace all current candidates."
msgstr ""
"Отправляет все варианты завершения, добавленные с помощью [method "
"add_code_completion_option]. Попытается принудительно открыть меню "
"автозаполнения, если [param force] равен [code]true[/code].\n"
"[b]Примечание:[/b] Это заменит всех текущих кандидатов."

msgid ""
"If [code]true[/code], uses [member auto_brace_completion_pairs] to "
"automatically insert the closing brace when the opening brace is inserted by "
"typing or autocompletion. Also automatically removes the closing brace when "
"using backspace on the opening brace."
msgstr ""
"Если [code]true[/code], использует [member auto_brace_completion_pairs] для "
"автоматической вставки закрывающей скобки, когда открывающая скобка "
"вставляется при вводе или автодополнении. Также автоматически удаляет "
"закрывающую скобку при использовании backspace на открывающей скобке."

msgid ""
"If [code]true[/code], highlights brace pairs when the caret is on either one, "
"using [member auto_brace_completion_pairs]. If matching, the pairs will be "
"underlined. If a brace is unmatched, it is colored with [theme_item "
"brace_mismatch_color]."
msgstr ""
"Если [code]true[/code], выделяет пары фигурных скобок, когда курсор находится "
"на одной из них, используя [member auto_brace_completion_pairs]. Если пары "
"совпадают, они будут подчеркнуты. Если фигурная скобка не совпадает, она "
"окрашивается в [theme_item brace_mismatch_color]."

msgid ""
"Sets the brace pairs to be autocompleted. For each entry in the dictionary, "
"the key is the opening brace and the value is the closing brace that matches "
"it. A brace is a [String] made of symbols. See [member "
"auto_brace_completion_enabled] and [member "
"auto_brace_completion_highlight_matching]."
msgstr ""
"Устанавливает пары фигурных скобок для автозаполнения. Для каждой записи в "
"словаре ключом является открывающая фигурная скобка, а значением — "
"закрывающая фигурная скобка, которая ей соответствует. Фигурная скобка — это "
"[Строка], состоящая из символов. См. [member auto_brace_completion_enabled] и "
"[member auto_brace_completion_highlight_matching]."

msgid ""
"If [code]true[/code], the [member ProjectSettings.input/"
"ui_text_completion_query] action requests code completion. To handle it, see "
"[method _request_code_completion] or [signal code_completion_requested]."
msgstr ""
"Если [code]true[/code], действие [member ProjectSettings.input/"
"ui_text_completion_query] запрашивает автодополнение кода. Чтобы справиться с "
"этим, см. [method _request_code_completion] или [signal "
"code_completion_requested]."

msgid "Sets prefixes that will trigger code completion."
msgstr "Устанавливает префиксы, которые будут запускать автодополнение кода."

msgid ""
"Sets the comment delimiters. All existing comment delimiters will be removed."
msgstr ""
"Устанавливает разделители комментариев. Все существующие разделители "
"комментариев будут удалены."

msgid ""
"Sets the string delimiters. All existing string delimiters will be removed."
msgstr ""
"Устанавливает разделители строк. Все существующие разделители строк будут "
"удалены."

msgid ""
"If [code]true[/code], bookmarks are drawn in the gutter. This gutter is "
"shared with breakpoints and executing lines. See [method "
"set_line_as_bookmarked]."
msgstr ""
"Если [code]true[/code], закладки рисуются в желобе. Этот желоб используется "
"совместно с точками останова и исполняемыми строками. См. [method "
"set_line_as_bookmarked]."

msgid ""
"If [code]true[/code], breakpoints are drawn in the gutter. This gutter is "
"shared with bookmarks and executing lines. Clicking the gutter will toggle "
"the breakpoint for the line, see [method set_line_as_breakpoint]."
msgstr ""
"Если [code]true[/code], точки останова рисуются в желобе. Этот желоб "
"используется совместно с закладками и выполняемыми строками. Щелчок по желобу "
"переключит точку останова для строки, см. [method set_line_as_breakpoint]."

msgid ""
"If [code]true[/code], executing lines are marked in the gutter. This gutter "
"is shared with breakpoints and bookmarks. See [method set_line_as_executing]."
msgstr ""
"Если [code]true[/code], то исполняемые строки отмечаются в желобе. Этот желоб "
"используется совместно с точками останова и закладками. См. [method "
"set_line_as_executing]."

msgid ""
"If [code]true[/code], the fold gutter is drawn. In this gutter, the "
"[theme_item can_fold_code_region] icon is drawn for each foldable line (see "
"[method can_fold_line]) and the [theme_item folded_code_region] icon is drawn "
"for each folded line (see [method is_line_folded]). These icons can be "
"clicked to toggle the fold state, see [method toggle_foldable_line]. [member "
"line_folding] must be [code]true[/code] to show icons."
msgstr ""
"Если [code]true[/code], рисуется желоб сгиба. В этом желобе значок "
"[theme_item can_fold_code_region] рисуется для каждой сгибаемой линии (см. "
"[method can_fold_line]), а значок [theme_item folded_code_region] рисуется "
"для каждой сгибаемой линии (см. [method is_line_folded]). Эти значки можно "
"щелкнуть, чтобы переключить состояние сгиба, см. [method "
"toggle_foldable_line]. [member line_folding] должен быть [code]true[/code] "
"для отображения значков."

msgid ""
"If [code]true[/code], the line number gutter is drawn. Line numbers start at "
"[code]1[/code] and are incremented for each line of text. Clicking and "
"dragging in the line number gutter will select entire lines of text."
msgstr ""
"Если [code]true[/code], рисуется разделитель номеров строк. Номера строк "
"начинаются с [code]1[/code] и увеличиваются для каждой строки текста. Щелчок "
"и перетаскивание разделителя номеров строк выделит целые строки текста."

msgid ""
"If [code]true[/code], line numbers drawn in the gutter are zero padded based "
"on the total line count. Requires [member gutters_draw_line_numbers] to be "
"set to [code]true[/code]."
msgstr ""
"Если [code]true[/code], номера строк, нарисованные в желобе, дополняются "
"нулями на основе общего количества строк. Требует, чтобы [member "
"gutters_draw_line_numbers] был установлен на [code]true[/code]."

msgid ""
"If [code]true[/code], an extra indent is automatically inserted when a new "
"line is added and a prefix in [member indent_automatic_prefixes] is found. If "
"a brace pair opening key is found, the matching closing brace will be moved "
"to another new line (see [member auto_brace_completion_pairs])."
msgstr ""
"Если [code]true[/code], дополнительный отступ автоматически вставляется при "
"добавлении новой строки и нахождении префикса в [member "
"indent_automatic_prefixes]. Если найден открывающий ключ пары фигурных "
"скобок, соответствующая закрывающая фигурная скобка будет перемещена на "
"другую новую строку (см. [member auto_brace_completion_pairs])."

msgid ""
"Prefixes to trigger an automatic indent. Used when [member indent_automatic] "
"is set to [code]true[/code]."
msgstr ""
"Префиксы для автоматического отступа. Используется, когда [member "
"indent_automatic] установлен в [code]true[/code]."

msgid ""
"Size of the tabulation indent (one [kbd]Tab[/kbd] press) in characters. If "
"[member indent_use_spaces] is enabled the number of spaces to use."
msgstr ""
"Размер отступа табуляции (одно нажатие [kbd]Tab[/kbd]) в символах. Если "
"включено [member indent_use_spaces], то количество используемых пробелов."

msgid "Use spaces instead of tabs for indentation."
msgstr "Для отступов используйте пробелы вместо табуляции."

msgid ""
"If [code]true[/code], lines can be folded. Otherwise, line folding methods "
"like [method fold_line] will not work and [method can_fold_line] will always "
"return [code]false[/code]. See [member gutters_draw_fold_gutter]."
msgstr ""
"Если [code]true[/code], линии могут быть свернуты. В противном случае методы "
"сворачивания линий, такие как [method fold_line], не будут работать, а "
"[method can_fold_line] всегда будет возвращать [code]false[/code]. См. "
"[member gutters_draw_fold_gutter]."

msgid ""
"Draws vertical lines at the provided columns. The first entry is considered a "
"main hard guideline and is drawn more prominently."
msgstr ""
"Рисует вертикальные линии в предоставленных столбцах. Первая запись считается "
"основной жесткой направляющей и рисуется более заметно."

msgid ""
"Set when a validated word from [signal symbol_validate] is clicked, the "
"[signal symbol_lookup] should be emitted."
msgstr ""
"Устанавливается при щелчке по проверенному слову из [signal symbol_validate], "
"должен быть выдан [signal symbol_lookup]."

msgid ""
"If [code]true[/code], the [signal symbol_hovered] signal is emitted when "
"hovering over a word."
msgstr ""
"Если [code]true[/code], то при наведении курсора на слово подается сигнал "
"[signal symbol_hovered]."

msgid ""
"Emitted when a breakpoint is added or removed from a line. If the line is "
"removed via backspace, a signal is emitted at the old line."
msgstr ""
"Вызывается при добавлении или удалении точки останова из строки. Если строка "
"удаляется с помощью backspace, сигнал выдается на старой строке."

msgid ""
"Emitted when the user requests code completion. This signal will not be sent "
"if [method _request_code_completion] is overridden or [member "
"code_completion_enabled] is [code]false[/code]."
msgstr ""
"Выдается, когда пользователь запрашивает автодополнение кода. Этот сигнал не "
"будет отправлен, если [method _request_code_completion] переопределен или "
"[member code_completion_enabled] равен [code]false[/code]."

msgid ""
"Emitted when the user hovers over a symbol. Unlike [signal "
"Control.mouse_entered], this signal is not emitted immediately, but when the "
"cursor is over the symbol for [member ProjectSettings.gui/timers/"
"tooltip_delay_sec] seconds.\n"
"[b]Note:[/b] [member symbol_tooltip_on_hover] must be [code]true[/code] for "
"this signal to be emitted."
msgstr ""
"Выдается, когда пользователь наводит курсор на символ. В отличие от [signal "
"Control.mouse_entered], этот сигнал выдается не сразу, а когда курсор "
"находится над символом в течение [member ProjectSettings.gui/timers/"
"tooltip_delay_sec] секунд.\n"
"[b]Примечание:[/b] [member symbol_tooltip_on_hover] должен быть [code]true[/"
"code] для выдачи этого сигнала."

msgid "Emitted when the user has clicked on a valid symbol."
msgstr "Генерируется, когда пользователь нажимает на допустимый символ."

msgid ""
"Emitted when the user hovers over a symbol. The symbol should be validated "
"and responded to, by calling [method set_symbol_lookup_word_as_valid].\n"
"[b]Note:[/b] [member symbol_lookup_on_click] must be [code]true[/code] for "
"this signal to be emitted."
msgstr ""
"Вызывается, когда пользователь наводит курсор на символ. Символ должен быть "
"проверен и на него должен быть дан ответ, вызвав [method "
"set_symbol_lookup_word_as_valid].\n"
"[b]Примечание:[/b] [member symbol_lookup_on_click] должен быть [code]true[/"
"code] для выдачи этого сигнала."

msgid "Marks the option as a class."
msgstr "Отмечает опцию как класс."

msgid "Marks the option as a function."
msgstr "Отмечает опцию как функцию."

msgid "Marks the option as a Godot signal."
msgstr "Отмечает опцию как сигнал Годо."

msgid "Marks the option as a variable."
msgstr "Отмечает опцию как переменную."

msgid "Marks the option as a member."
msgstr "Отмечает вариант как член."

msgid "Marks the option as an enum entry."
msgstr "Отмечает параметр как запись перечисления."

msgid "Marks the option as a constant."
msgstr "Отмечает опцию как константу."

msgid "Marks the option as a Godot node path."
msgstr "Отмечает опцию как путь к узлу Godot."

msgid "Marks the option as a file path."
msgstr "Отмечает опцию как путь к файлу."

msgid "Marks the option as unclassified or plain text."
msgstr "Отмечает параметр как неклассифицированный или как обычный текст."

msgid ""
"The option is local to the location of the code completion query - e.g. a "
"local variable. Subsequent value of location represent options from the outer "
"class, the exact value represent how far they are (in terms of inner classes)."
msgstr ""
"Параметр является локальным по отношению к местоположению запроса на "
"автодополнение кода - например, локальной переменной. Последующее значение "
"местоположения представляет параметры из внешнего класса, точное значение "
"представляет, насколько они далеки (с точки зрения внутренних классов)."

msgid ""
"The option is from the containing class or a parent class, relative to the "
"location of the code completion query. Perform a bitwise OR with the class "
"depth (e.g. [code]0[/code] for the local class, [code]1[/code] for the "
"parent, [code]2[/code] for the grandparent, etc.) to store the depth of an "
"option in the class or a parent class."
msgstr ""
"Опция из содержащего класса или родительского класса относительно "
"расположения запроса на автодополнение кода. Выполните побитовое ИЛИ с "
"глубиной класса (например, [code]0[/code] для локального класса, [code]1[/"
"code] для родительского, [code]2[/code] для прародительского и т. д.), чтобы "
"сохранить глубину опции в классе или родительском классе."

msgid ""
"The option is from user code which is not local and not in a derived class "
"(e.g. Autoload Singletons)."
msgstr ""
"Опция взята из пользовательского кода, который не является локальным и не "
"находится в производном классе (например, Autoload Singletons)."

msgid ""
"The option is from other engine code, not covered by the other enum constants "
"- e.g. built-in classes."
msgstr ""
"Опция взята из другого кода движка, не охваченного другими константами "
"перечисления, например, встроенными классами."

msgid "[Color] of the bookmark icon for bookmarked lines."
msgstr "[Color] значка закладки для строк, отмеченных закладками."

msgid "[Color] of the text to highlight mismatched braces."
msgstr "[Color] текста для выделения несовпадающих скобок."

msgid "[Color] of the breakpoint icon for bookmarked lines."
msgstr "[Color] значка точки останова для строк, отмеченных закладками."

msgid "[Color] for all icons related to line folding."
msgstr "[Color] для всех значков, связанных с переносом строк."

msgid "Sets the background [Color] for the code completion popup."
msgstr "Устанавливает фон [Color] для всплывающего окна автодополнения кода."

msgid ""
"Background highlight [Color] for matching text in code completion options."
msgstr ""
"Подсветка фона [Цвет] для сопоставления текста в параметрах автодополнения "
"кода."

msgid "[Color] of the scrollbar in the code completion popup."
msgstr "[Цвет] полосы прокрутки во всплывающем окне автодополнения кода."

msgid "[Color] of the scrollbar in the code completion popup when hovered."
msgstr ""
"[Цвет] полосы прокрутки во всплывающем окне автодополнения кода при наведении "
"курсора."

msgid ""
"Background highlight [Color] for the current selected option item in the code "
"completion popup."
msgstr ""
"Подсветка фона [Цвет] для текущего выбранного элемента опции во всплывающем "
"окне автодополнения кода."

msgid "[Color] of the executing icon for executing lines."
msgstr "[Цвет] значка выполнения для выполнения линий."

msgid "[Color] of background line highlight for folded code region."
msgstr "[Цвет] подсветки фоновой линии для области свернутого кода."

msgid ""
"[Color] of the main line length guideline, secondary guidelines will have 50% "
"alpha applied."
msgstr ""
"[Цвет] основной направляющей длины линии, для второстепенных направляющих "
"будет применено значение альфа 50%."

msgid "Sets the [Color] of line numbers."
msgstr "Устанавливает [Цвет] номеров строк."

msgid ""
"Max number of options to display in the code completion popup at any one time."
msgstr ""
"Максимальное количество вариантов, отображаемых во всплывающем окне "
"автодополнения кода одновременно."

msgid ""
"Max width of options in the code completion popup. Options longer than this "
"will be cut off."
msgstr ""
"Максимальная ширина опций во всплывающем окне автодополнения кода. Опции "
"длиннее будут обрезаны."

msgid "Width of the scrollbar in the code completion popup."
msgstr "Ширина полосы прокрутки во всплывающем окне автодополнения кода."

msgid ""
"Sets a custom [Texture2D] to draw in the bookmark gutter for bookmarked lines."
msgstr ""
"Устанавливает пользовательскую [Texture2D] для рисования в области закладок "
"для строк, отмеченных закладками."

msgid ""
"Sets a custom [Texture2D] to draw in the breakpoint gutter for breakpointed "
"lines."
msgstr ""
"Устанавливает пользовательскую [Texture2D] для рисования в контрольных точек "
"области для контрольных точек линий."

msgid ""
"Sets a custom [Texture2D] to draw in the line folding gutter when a line can "
"be folded."
msgstr ""
"Устанавливает пользовательскую [Texture2D] для рисования в области сгиба "
"линии, когда линию можно согнуть."

msgid ""
"Sets a custom [Texture2D] to draw in the line folding gutter when a code "
"region can be folded."
msgstr ""
"Устанавливает пользовательскую [Texture2D] для отрисовки в области сгиба "
"строк, когда область кода может быть свернута."

msgid ""
"Background panel for the color preview box in autocompletion (visible when "
"the color is translucent)."
msgstr ""
"Фоновая панель для окна предварительного просмотра цвета в автодополнении "
"(видима, когда цвет полупрозрачен)."

msgid "Icon to draw in the executing gutter for executing lines."
msgstr "Значок для рисования в области выполнения линий выполнения."

msgid ""
"Sets a custom [Texture2D] to draw in the line folding gutter when a line is "
"folded and can be unfolded."
msgstr ""
"Устанавливает пользовательскую [Texture2D] для отрисовки в области сгиба "
"линии, когда линия сложена и может быть развернута."

msgid ""
"Sets a custom [Texture2D] to draw in the line folding gutter when a code "
"region is folded and can be unfolded."
msgstr ""
"Устанавливает пользовательскую [Texture2D] для отрисовки в области сгиба "
"строк, когда область кода свернута и может быть развернута."

msgid "Sets a custom [Texture2D] to draw at the end of a folded line."
msgstr ""
"Устанавливает пользовательскую [Texture2D] для рисования в конце сложенной "
"линии."

msgid "[StyleBox] for the code completion popup."
msgstr "[StyleBox] для всплывающего окна автодополнения кода."

msgid "A syntax highlighter intended for code."
msgstr "Подсветка синтаксиса, предназначенная для кода."

msgid ""
"By adjusting various properties of this resource, you can change the colors "
"of strings, comments, numbers, and other text patterns inside a [TextEdit] "
"control."
msgstr ""
"Изменяя различные свойства этого ресурса, вы можете изменять цвета строк, "
"комментариев, чисел и других текстовых шаблонов внутри элемента управления "
"[TextEdit]."

msgid ""
"Adds a color region (such as for comments or strings) from [param start_key] "
"to [param end_key]. Both keys should be symbols, and [param start_key] must "
"not be shared with other delimiters.\n"
"If [param line_only] is [code]true[/code] or [param end_key] is an empty "
"[String], the region does not carry over to the next line."
msgstr ""
"Добавляет цветовую область (например, для комментариев или строк) от [param "
"start_key] до [param end_key]. Оба ключа должны быть символами, и [param "
"start_key] не должен использоваться совместно с другими разделителями.\n"
"Если [param line_only] — это [code]true[/code] или [param end_key] — это "
"пустая [String], область не переносится на следующую строку."

msgid ""
"Sets the color for a keyword.\n"
"The keyword cannot contain any symbols except '_'."
msgstr ""
"Устанавливает цвет для ключевого слова.\n"
"Ключевое слово не может содержать никаких символов, кроме '_'."

msgid ""
"Sets the color for a member keyword.\n"
"The member keyword cannot contain any symbols except '_'.\n"
"It will not be highlighted if preceded by a '.'."
msgstr ""
"Задает цвет для ключевого слова участника.\n"
"Ключевое слово участника не может содержать никаких символов, кроме '_'.\n"
"Оно не будет выделено, если ему предшествует '.'."

msgid "Removes all color regions."
msgstr "Удаляет все цветные области."

msgid "Removes all keywords."
msgstr "Удалить все ключевые слова."

msgid "Removes all member keywords."
msgstr "Удаляет все ключевые слова участников."

msgid "Returns the color for a keyword."
msgstr "Возвращает цвет для ключевого слова."

msgid "Returns the color for a member keyword."
msgstr "Возвращает цвет для ключевого слова члена."

msgid ""
"Returns [code]true[/code] if the start key exists, else [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если начальный ключ существует, в противном "
"случае [code]false[/code]."

msgid ""
"Returns [code]true[/code] if the keyword exists, else [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если ключевое слово существует, в противном "
"случае [code]false[/code]."

msgid ""
"Returns [code]true[/code] if the member keyword exists, else [code]false[/"
"code]."
msgstr ""
"Возвращает [code]true[/code], если ключевое слово члена существует, в "
"противном случае — [code]false[/code]."

msgid "Removes the color region that uses that start key."
msgstr "Удаляет цветовую область, использующую эту клавишу запуска."

msgid "Removes the keyword."
msgstr "Удаляет ключевое слово."

msgid "Removes the member keyword."
msgstr "Удаляет ключевое слово участника."

msgid ""
"Sets the color regions. All existing regions will be removed. The "
"[Dictionary] key is the region start and end key, separated by a space. The "
"value is the region color."
msgstr ""
"Устанавливает цветовые регионы. Все существующие регионы будут удалены. Ключ "
"[Dictionary] — это начальный и конечный ключ региона, разделенные пробелом. "
"Значение — цвет региона."

msgid ""
"Sets color for functions. A function is a non-keyword string followed by a "
"'('."
msgstr ""
"Устанавливает цвет для функций. Функция — это строка, не являющаяся ключевым "
"словом, за которой следует '('."

msgid ""
"Sets the keyword colors. All existing keywords will be removed. The "
"[Dictionary] key is the keyword. The value is the keyword color."
msgstr ""
"Устанавливает цвета ключевых слов. Все существующие ключевые слова будут "
"удалены. Ключ [Dictionary] — это ключевое слово. Значение — это цвет "
"ключевого слова."

msgid ""
"Sets the member keyword colors. All existing member keyword will be removed. "
"The [Dictionary] key is the member keyword. The value is the member keyword "
"color."
msgstr ""
"Устанавливает цвета ключевых слов-членов. Все существующие ключевые слова-"
"члены будут удалены. Ключ [Dictionary] — это ключевое слово-член. Значение — "
"это цвет ключевого слова-члена."

msgid ""
"Sets color for member variables. A member variable is non-keyword, non-"
"function string proceeded with a '.'."
msgstr ""
"Устанавливает цвет для переменных-членов. Переменная-член — это не ключевое "
"слово, нефункциональная строка, начинающаяся с '.'."

msgid "Sets the color for numbers."
msgstr "Устанавливает цвет для чисел."

msgid "Sets the color for symbols."
msgstr "Устанавливает цвет символов."

msgid "Abstract base class for 2D physics objects."
msgstr "Абстрактный базовый класс для 2D физических объектов."

msgid ""
"Abstract base class for 2D physics objects. [CollisionObject2D] can hold any "
"number of [Shape2D]s for collision. Each shape must be assigned to a [i]shape "
"owner[/i]. Shape owners are not nodes and do not appear in the editor, but "
"are accessible through code using the [code]shape_owner_*[/code] methods.\n"
"[b]Note:[/b] Only collisions between objects within the same canvas "
"([Viewport] canvas or [CanvasLayer]) are supported. The behavior of "
"collisions between objects in different canvases is undefined."
msgstr ""
"Абстрактный базовый класс для 2D-объектов физики. [CollisionObject2D] может "
"содержать любое количество [Shape2D] для столкновения. Каждая форма должна "
"быть назначена [i]владельцу формы[/i]. Владельцы формы не являются узлами и "
"не отображаются в редакторе, но доступны через код с использованием методов "
"[code]shape_owner_*[/code].\n"
"[b]Примечание:[/b] Поддерживаются только столкновения между объектами в "
"пределах одного холста (холст [Viewport] или [CanvasLayer]). Поведение "
"столкновений между объектами в разных холстах не определено."

msgid ""
"Accepts unhandled [InputEvent]s. [param shape_idx] is the child index of the "
"clicked [Shape2D]. Connect to [signal input_event] to easily pick up these "
"events.\n"
"[b]Note:[/b] [method _input_event] requires [member input_pickable] to be "
"[code]true[/code] and at least one [member collision_layer] bit to be set."
msgstr ""
"Принимает необработанные [InputEvent]. [param shape_idx] — это дочерний "
"индекс нажатого [Shape2D]. Подключитесь к [signal input_event], чтобы легко "
"получать эти события.\n"
"[b]Примечание:[/b] [method _input_event] требует, чтобы [member "
"input_pickable] был [code]true[/code] и был установлен хотя бы один бит "
"[member collision_layer]."

msgid ""
"Called when the mouse pointer enters any of this object's shapes. Requires "
"[member input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject2D] won't cause this function to be called."
msgstr ""
"Вызывается, когда указатель мыши входит в любую из фигур этого объекта. "
"Требует, чтобы [member input_pickable] был [code]true[/code] и был установлен "
"хотя бы один бит [member collision_layer]. Обратите внимание, что перемещение "
"между различными фигурами в пределах одного [CollisionObject2D] не приведет к "
"вызову этой функции."

msgid ""
"Called when the mouse pointer exits all this object's shapes. Requires "
"[member input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject2D] won't cause this function to be called."
msgstr ""
"Вызывается, когда указатель мыши покидает все формы этого объекта. Требует, "
"чтобы [member input_pickable] был [code]true[/code] и был установлен хотя бы "
"один бит [member collision_layer]. Обратите внимание, что перемещение между "
"различными формами в пределах одного [CollisionObject2D] не приведет к вызову "
"этой функции."

msgid ""
"Called when the mouse pointer enters any of this object's shapes or moves "
"from one shape to another. [param shape_idx] is the child index of the newly "
"entered [Shape2D]. Requires [member input_pickable] to be [code]true[/code] "
"and at least one [member collision_layer] bit to be called."
msgstr ""
"Вызывается, когда указатель мыши входит в любую из фигур этого объекта или "
"перемещается из одной фигуры в другую. [param shape_idx] — это дочерний "
"индекс вновь введенного [Shape2D]. Требует, чтобы [member input_pickable] был "
"[code]true[/code] и был вызван хотя бы один бит [member collision_layer]."

msgid ""
"Called when the mouse pointer exits any of this object's shapes. [param "
"shape_idx] is the child index of the exited [Shape2D]. Requires [member "
"input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be called."
msgstr ""
"Вызывается, когда указатель мыши покидает любую из фигур этого объекта. "
"[param shape_idx] — это дочерний индекс выведенного [Shape2D]. Требует, чтобы "
"[member input_pickable] был [code]true[/code] и был вызван хотя бы один бит "
"[member collision_layer]."

msgid ""
"Creates a new shape owner for the given object. Returns [code]owner_id[/code] "
"of the new owner for future reference."
msgstr ""
"Создает нового владельца формы для данного объекта. Возвращает "
"[code]owner_id[/code] нового владельца для дальнейшего использования."

msgid ""
"Returns whether or not the specified layer of the [member collision_layer] is "
"enabled, given a [param layer_number] between 1 and 32."
msgstr ""
"Возвращает, включен ли указанный слой [member collision_layer], учитывая "
"[param layer_number] от 1 до 32."

msgid ""
"Returns whether or not the specified layer of the [member collision_mask] is "
"enabled, given a [param layer_number] between 1 and 32."
msgstr ""
"Возвращает, включен ли указанный слой [member collision_mask], учитывая "
"[param layer_number] от 1 до 32."

msgid "Returns the object's [RID]."
msgstr "Возвращает [RID] объекта."

msgid ""
"Returns the [code]one_way_collision_margin[/code] of the shape owner "
"identified by given [param owner_id]."
msgstr ""
"Возвращает [code]one_way_collision_margin[/code] владельца фигуры, "
"идентифицированного заданным [param owner_id]."

msgid ""
"Returns an [Array] of [code]owner_id[/code] identifiers. You can use these "
"ids in other methods that take [code]owner_id[/code] as an argument."
msgstr ""
"Возвращает [Array] идентификаторов [code]owner_id[/code]. Вы можете "
"использовать эти идентификаторы в других методах, которые принимают "
"[code]owner_id[/code] в качестве аргумента."

msgid "If [code]true[/code], the shape owner and its shapes are disabled."
msgstr "Если [code]true[/code], владелец фигуры и его фигуры отключены."

msgid ""
"Returns [code]true[/code] if collisions for the shape owner originating from "
"this [CollisionObject2D] will not be reported to collided with "
"[CollisionObject2D]s."
msgstr ""
"Возвращает [code]true[/code], если столкновения для владельца фигуры, "
"происходящие из этого [CollisionObject2D], не будут сообщаться о "
"столкновениях с [CollisionObject2D]."

msgid "Removes the given shape owner."
msgstr "Удаляет указанного владельца фигуры."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member collision_layer], given a [param layer_number] between 1 and 32."
msgstr ""
"На основе [param value] включает или отключает указанный слой в [member "
"collision_layer], учитывая [param layer_number] от 1 до 32."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member collision_mask], given a [param layer_number] between 1 and 32."
msgstr ""
"На основе [param value] включает или отключает указанный слой в [member "
"collision_mask] при заданном [param layer_number] от 1 до 32."

msgid "Returns the [code]owner_id[/code] of the given shape."
msgstr "Возвращает [code]owner_id[/code] заданной фигуры."

msgid "Adds a [Shape2D] to the shape owner."
msgstr "Добавляет [Shape2D] к владельцу фигуры."

msgid "Removes all shapes from the shape owner."
msgstr "Удаляет все фигуры у владельца фигуры."

msgid "Returns the parent object of the given shape owner."
msgstr "Возвращает родительский объект указанного владельца фигуры."

msgid "Returns the [Shape2D] with the given ID from the given shape owner."
msgstr ""
"Возвращает [Shape2D] с указанным идентификатором от указанного владельца "
"фигуры."

msgid "Returns the number of shapes the given shape owner contains."
msgstr "Возвращает количество фигур, содержащихся в заданном владельце фигуры."

msgid ""
"Returns the child index of the [Shape2D] with the given ID from the given "
"shape owner."
msgstr ""
"Возвращает дочерний индекс [Shape2D] с указанным идентификатором от "
"указанного владельца фигуры."

msgid "Returns the shape owner's [Transform2D]."
msgstr "Возвращает [Transform2D] владельца фигуры."

msgid "Removes a shape from the given shape owner."
msgstr "Удаляет фигуру у указанного владельца фигуры."

msgid "If [code]true[/code], disables the given shape owner."
msgstr "Если [code]true[/code], отключает владельца данной фигуры."

msgid ""
"If [param enable] is [code]true[/code], collisions for the shape owner "
"originating from this [CollisionObject2D] will not be reported to collided "
"with [CollisionObject2D]s."
msgstr ""
"Если [param enable] имеет значение [code]true[/code], столкновения для "
"владельца фигуры, происходящие от этого [CollisionObject2D], не будут "
"сообщаться о столкновениях с [CollisionObject2D]."

msgid ""
"Sets the [code]one_way_collision_margin[/code] of the shape owner identified "
"by given [param owner_id] to [param margin] pixels."
msgstr ""
"Устанавливает [code]one_way_collision_margin[/code] владельца фигуры, "
"идентифицированного заданным [param owner_id], на [param margin] пикселей."

msgid "Sets the [Transform2D] of the given shape owner."
msgstr "Устанавливает [Transform2D] для данного владельца фигуры."

msgid ""
"The physics layers this CollisionObject2D is in. Collision objects can exist "
"in one or more of 32 different layers. See also [member collision_mask].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"Физические слои, в которых находится CollisionObject2D. Объекты столкновений "
"могут существовать в одном или нескольких из 32 различных слоев. См. также "
"[member collision_mask].\n"
"[b]Примечание:[/b] Объект A может обнаружить контакт с объектом B, только "
"если объект B находится в любом из слоев, которые сканирует объект A. См. "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Слои и маски столкновений[/url] в документации для получения "
"дополнительной информации."

msgid ""
"The physics layers this CollisionObject2D scans. Collision objects can scan "
"one or more of 32 different layers. See also [member collision_layer].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"Физические слои, которые сканирует CollisionObject2D. Объекты столкновений "
"могут сканировать один или несколько из 32 различных слоев. См. также [member "
"collision_layer].\n"
"[b]Примечание:[/b] Объект A может обнаружить контакт с объектом B, только "
"если объект B находится в любом из слоев, которые сканирует объект A. См. "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Слои и маски столкновений[/url] в документации для получения "
"дополнительной информации."

msgid ""
"The priority used to solve colliding when occurring penetration. The higher "
"the priority is, the lower the penetration into the object will be. This can "
"for example be used to prevent the player from breaking through the "
"boundaries of a level."
msgstr ""
"Приоритет, используемый для решения столкновений при возникновении "
"проникновения. Чем выше приоритет, тем ниже будет проникновение в объект. Это "
"может быть использовано, например, для предотвращения прорыва игрока через "
"границы уровня."

msgid ""
"Defines the behavior in physics when [member Node.process_mode] is set to "
"[constant Node.PROCESS_MODE_DISABLED]."
msgstr ""
"Определяет поведение в физике, когда [member Node.process_mode] установлен в "
"[constant Node.PROCESS_MODE_DISABLED]."

msgid ""
"If [code]true[/code], this object is pickable. A pickable object can detect "
"the mouse pointer entering/leaving, and if the mouse is inside it, report "
"input events. Requires at least one [member collision_layer] bit to be set."
msgstr ""
"Если [code]true[/code], этот объект можно выбрать. Можно выбрать, обнаружив "
"вход/выход указателя мыши, и если мышь находится внутри него, сообщать о "
"событиях ввода. Требуется установить хотя бы один бит [member "
"collision_layer]."

msgid ""
"Emitted when an input event occurs. Requires [member input_pickable] to be "
"[code]true[/code] and at least one [member collision_layer] bit to be set. "
"See [method _input_event] for details."
msgstr ""
"Вызывается при возникновении события ввода. Требует, чтобы [member "
"input_pickable] был [code]true[/code] и был установлен хотя бы один бит "
"[member collision_layer]. Подробности см. в [method _input_event]."

msgid ""
"Emitted when the mouse pointer enters any of this object's shapes. Requires "
"[member input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject2D] won't cause this signal to be emitted.\n"
"[b]Note:[/b] Due to the lack of continuous collision detection, this signal "
"may not be emitted in the expected order if the mouse moves fast enough and "
"the [CollisionObject2D]'s area is small. This signal may also not be emitted "
"if another [CollisionObject2D] is overlapping the [CollisionObject2D] in "
"question."
msgstr ""
"Выдается, когда указатель мыши входит в любую из фигур этого объекта. "
"Требует, чтобы [member input_pickable] был [code]true[/code] и был установлен "
"хотя бы один бит [member collision_layer]. Обратите внимание, что перемещение "
"между различными фигурами в пределах одного [CollisionObject2D] не приведет к "
"выдаче этого сигнала.\n"
"[b]Примечание:[/b] Из-за отсутствия непрерывного обнаружения столкновений "
"этот сигнал может не выдаваться в ожидаемом порядке, если мышь движется "
"достаточно быстро, а область [CollisionObject2D] мала. Этот сигнал также "
"может не выдаваться, если другой [CollisionObject2D] перекрывает "
"рассматриваемый [CollisionObject2D]."

msgid ""
"Emitted when the mouse pointer exits all this object's shapes. Requires "
"[member input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject2D] won't cause this signal to be emitted.\n"
"[b]Note:[/b] Due to the lack of continuous collision detection, this signal "
"may not be emitted in the expected order if the mouse moves fast enough and "
"the [CollisionObject2D]'s area is small. This signal may also not be emitted "
"if another [CollisionObject2D] is overlapping the [CollisionObject2D] in "
"question."
msgstr ""
"Выдается, когда указатель мыши покидает все формы этого объекта. Требует, "
"чтобы [member input_pickable] был [code]true[/code] и был установлен хотя бы "
"один бит [member collision_layer]. Обратите внимание, что перемещение между "
"различными формами в пределах одного [CollisionObject2D] не приведет к выдаче "
"этого сигнала.\n"
"[b]Примечание:[/b] Из-за отсутствия непрерывного обнаружения столкновений "
"этот сигнал может не выдаваться в ожидаемом порядке, если мышь движется "
"достаточно быстро, а область [CollisionObject2D] мала. Этот сигнал также "
"может не выдаваться, если другой [CollisionObject2D] перекрывает "
"рассматриваемый [CollisionObject2D]."

msgid ""
"Emitted when the mouse pointer enters any of this object's shapes or moves "
"from one shape to another. [param shape_idx] is the child index of the newly "
"entered [Shape2D]. Requires [member input_pickable] to be [code]true[/code] "
"and at least one [member collision_layer] bit to be set."
msgstr ""
"Вызывается, когда указатель мыши входит в любую из фигур этого объекта или "
"перемещается из одной фигуры в другую. [param shape_idx] — это дочерний "
"индекс вновь введенного [Shape2D]. Требует, чтобы [member input_pickable] был "
"[code]true[/code] и был установлен хотя бы один бит [member collision_layer]."

msgid ""
"Emitted when the mouse pointer exits any of this object's shapes. [param "
"shape_idx] is the child index of the exited [Shape2D]. Requires [member "
"input_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set."
msgstr ""
"Вызывается, когда указатель мыши покидает любую из фигур этого объекта. "
"[param shape_idx] — это дочерний индекс выведенного [Shape2D]. Требует, чтобы "
"[member input_pickable] был [code]true[/code] и был установлен хотя бы один "
"бит [member collision_layer]."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], remove from the physics simulation to stop all "
"physics interactions with this [CollisionObject2D].\n"
"Automatically re-added to the physics simulation when the [Node] is processed "
"again."
msgstr ""
"Когда [member Node.process_mode] установлен на [constant "
"Node.PROCESS_MODE_DISABLED], удалить из симуляции физики, чтобы остановить "
"все физические взаимодействия с этим [CollisionObject2D].\n"
"Автоматически повторно добавляется в симуляцию физики, когда [Node] "
"обрабатывается снова."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], make the body static. Doesn't affect [Area2D]. "
"[PhysicsBody2D] can't be affected by forces or other bodies while static.\n"
"Automatically set [PhysicsBody2D] back to its original mode when the [Node] "
"is processed again."
msgstr ""
"Когда [member Node.process_mode] установлен на [constant "
"Node.PROCESS_MODE_DISABLED], сделайте тело статичным. Не влияет на [Area2D]. "
"[PhysicsBody2D] не может быть подвержен воздействию сил или других тел, пока "
"он статичен.\n"
"Автоматически верните [PhysicsBody2D] в исходный режим, когда [Node] "
"обрабатывается снова."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], do not affect the physics simulation."
msgstr ""
"Если [member Node.process_mode] установлен в [constant "
"Node.PROCESS_MODE_DISABLED], это не влияет на физическую симуляцию."

msgid "Abstract base class for 3D physics objects."
msgstr "Абстрактный базовый класс для трехмерных физических объектов."

msgid ""
"Abstract base class for 3D physics objects. [CollisionObject3D] can hold any "
"number of [Shape3D]s for collision. Each shape must be assigned to a [i]shape "
"owner[/i]. Shape owners are not nodes and do not appear in the editor, but "
"are accessible through code using the [code]shape_owner_*[/code] methods.\n"
"[b]Warning:[/b] With a non-uniform scale, this node will likely not behave as "
"expected. It is advised to keep its scale the same on all axes and adjust its "
"collision shape(s) instead."
msgstr ""
"Абстрактный базовый класс для 3D-физических объектов. [CollisionObject3D] "
"может содержать любое количество [Shape3D] для столкновения. Каждая форма "
"должна быть назначена [i]владельцу формы[/i]. Владельцы формы не являются "
"узлами и не отображаются в редакторе, но доступны через код с использованием "
"методов [code]shape_owner_*[/code].\n"
"[b]Предупреждение:[/b] При неравномерном масштабе этот узел, скорее всего, "
"будет вести себя не так, как ожидалось. Рекомендуется сохранить его масштаб "
"одинаковым по всем осям и вместо этого настроить его форму(ы) столкновения."

msgid ""
"Receives unhandled [InputEvent]s. [param event_position] is the location in "
"world space of the mouse pointer on the surface of the shape with index "
"[param shape_idx] and [param normal] is the normal vector of the surface at "
"that point. Connect to the [signal input_event] signal to easily pick up "
"these events.\n"
"[b]Note:[/b] [method _input_event] requires [member input_ray_pickable] to be "
"[code]true[/code] and at least one [member collision_layer] bit to be set."
msgstr ""
"Получает необработанные [InputEvent]. [param event_position] — это "
"местоположение указателя мыши в мировом пространстве на поверхности фигуры с "
"индексом [param shape_idx], а [param normal] — это вектор нормали поверхности "
"в этой точке. Подключитесь к сигналу [signal input_event], чтобы легко "
"получить эти события.\n"
"[b]Примечание:[/b] [method _input_event] требует, чтобы [member "
"input_ray_pickable] был [code]true[/code] и был установлен хотя бы один бит "
"[member collision_layer]."

msgid ""
"Called when the mouse pointer enters any of this object's shapes. Requires "
"[member input_ray_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject3D] won't cause this function to be called."
msgstr ""
"Вызывается, когда указатель мыши входит в любую из фигур этого объекта. "
"Требует, чтобы [member input_ray_pickable] был [code]true[/code] и был "
"установлен хотя бы один бит [member collision_layer]. Обратите внимание, что "
"перемещение между различными фигурами в пределах одного [CollisionObject3D] "
"не приведет к вызову этой функции."

msgid ""
"Called when the mouse pointer exits all this object's shapes. Requires "
"[member input_ray_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set. Note that moving between different shapes "
"within a single [CollisionObject3D] won't cause this function to be called."
msgstr ""
"Вызывается, когда указатель мыши покидает все формы этого объекта. Требует, "
"чтобы [member input_ray_pickable] был [code]true[/code] и был установлен хотя "
"бы один бит [member collision_layer]. Обратите внимание, что перемещение "
"между различными формами в пределах одного [CollisionObject3D] не приведет к "
"вызову этой функции."

msgid "Adds a [Shape3D] to the shape owner."
msgstr "Добавляет [Shape3D] к владельцу фигуры."

msgid "Returns the [Shape3D] with the given ID from the given shape owner."
msgstr ""
"Возвращает [Shape3D] с указанным идентификатором от указанного владельца "
"фигуры."

msgid ""
"Returns the child index of the [Shape3D] with the given ID from the given "
"shape owner."
msgstr ""
"Возвращает дочерний индекс [Shape3D] с указанным идентификатором от "
"указанного владельца фигуры."

msgid "Returns the shape owner's [Transform3D]."
msgstr "Возвращает [Transform3D] владельца фигуры."

msgid "Sets the [Transform3D] of the given shape owner."
msgstr "Устанавливает [Transform3D] для данного владельца формы."

msgid ""
"The physics layers this CollisionObject3D [b]is in[/b]. Collision objects can "
"exist in one or more of 32 different layers. See also [member "
"collision_mask].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"Физические слои, в которых находится CollisionObject3D [b][/b]. Объекты "
"столкновений могут существовать в одном или нескольких из 32 различных слоев. "
"См. также [member collision_mask].\n"
"[b]Примечание:[/b] Объект A может обнаружить контакт с объектом B, только "
"если объект B находится в любом из слоев, которые сканирует объект A. См. "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Слои и маски столкновений[/url] в документации для получения "
"дополнительной информации."

msgid ""
"The physics layers this CollisionObject3D [b]scans[/b]. Collision objects can "
"scan one or more of 32 different layers. See also [member collision_layer].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"Слои физики этот CollisionObject3D [b]сканирует[/b]. Объекты столкновений "
"могут сканировать один или несколько из 32 различных слоев. См. также [member "
"collision_layer].\n"
"[b]Примечание:[/b] Объект A может обнаружить контакт с объектом B, только "
"если объект B находится в любом из слоев, которые сканирует объект A. См. "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Слои и маски столкновений[/url] в документации для получения "
"дополнительной информации."

msgid ""
"If [code]true[/code], the [CollisionObject3D] will continue to receive input "
"events as the mouse is dragged across its shapes."
msgstr ""
"Если [code]true[/code], [CollisionObject3D] продолжит получать входные "
"события при перемещении мыши по его фигуре."

msgid ""
"Emitted when the object receives an unhandled [InputEvent]. [param "
"event_position] is the location in world space of the mouse pointer on the "
"surface of the shape with index [param shape_idx] and [param normal] is the "
"normal vector of the surface at that point."
msgstr ""
"Генерируется, когда объект получает необработанное [InputEvent]. [param "
"event_position] — это местоположение указателя мыши в мировом пространстве на "
"поверхности фигуры с индексом [param shape_idx], а [param normal] — это "
"вектор нормали поверхности в этой точке."

msgid ""
"Emitted when the mouse pointer enters any of this object's shapes. Requires "
"[member input_ray_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set.\n"
"[b]Note:[/b] Due to the lack of continuous collision detection, this signal "
"may not be emitted in the expected order if the mouse moves fast enough and "
"the [CollisionObject3D]'s area is small. This signal may also not be emitted "
"if another [CollisionObject3D] is overlapping the [CollisionObject3D] in "
"question."
msgstr ""
"Выдается, когда указатель мыши входит в любую из форм этого объекта. Требует, "
"чтобы [member input_ray_pickable] был [code]true[/code] и был установлен хотя "
"бы один бит [member collision_layer].\n"
"[b]Примечание:[/b] Из-за отсутствия непрерывного обнаружения столкновений "
"этот сигнал может не выдаваться в ожидаемом порядке, если мышь движется "
"достаточно быстро, а область [CollisionObject3D] мала. Этот сигнал также "
"может не выдаваться, если другой [CollisionObject3D] перекрывает "
"рассматриваемый [CollisionObject3D]."

msgid ""
"Emitted when the mouse pointer exits all this object's shapes. Requires "
"[member input_ray_pickable] to be [code]true[/code] and at least one [member "
"collision_layer] bit to be set.\n"
"[b]Note:[/b] Due to the lack of continuous collision detection, this signal "
"may not be emitted in the expected order if the mouse moves fast enough and "
"the [CollisionObject3D]'s area is small. This signal may also not be emitted "
"if another [CollisionObject3D] is overlapping the [CollisionObject3D] in "
"question."
msgstr ""
"Выдается, когда указатель мыши выходит за пределы всех форм этого объекта. "
"Требует, чтобы [member input_ray_pickable] был [code]true[/code] и был "
"установлен хотя бы один бит [member collision_layer].\n"
"[b]Примечание:[/b] Из-за отсутствия непрерывного обнаружения столкновений "
"этот сигнал может не выдаваться в ожидаемом порядке, если мышь движется "
"достаточно быстро, а область [CollisionObject3D] мала. Этот сигнал также "
"может не выдаваться, если другой [CollisionObject3D] перекрывает "
"рассматриваемый [CollisionObject3D]."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], remove from the physics simulation to stop all "
"physics interactions with this [CollisionObject3D].\n"
"Automatically re-added to the physics simulation when the [Node] is processed "
"again."
msgstr ""
"Когда [member Node.process_mode] установлен на [constant "
"Node.PROCESS_MODE_DISABLED], удалить из моделирования физики, чтобы "
"остановить все физические взаимодействия с этим [CollisionObject3D].\n"
"Автоматически повторно добавляется в моделирование физики, когда [Node] "
"обрабатывается снова."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], make the body static. Doesn't affect [Area3D]. "
"[PhysicsBody3D] can't be affected by forces or other bodies while static.\n"
"Automatically set [PhysicsBody3D] back to its original mode when the [Node] "
"is processed again."
msgstr ""
"Когда [member Node.process_mode] установлен на [constant "
"Node.PROCESS_MODE_DISABLED], сделайте тело статичным. Не влияет на [Area3D]. "
"[PhysicsBody3D] не может быть подвержен воздействию сил или других тел, пока "
"он статичен.\n"
"Автоматически верните [PhysicsBody3D] в исходный режим, когда [Node] "
"обрабатывается снова."

msgid "A node that provides a polygon shape to a [CollisionObject2D] parent."
msgstr ""
"Узел, который придает многоугольную форму родительскому объекту "
"[CollisionObject2D]."

msgid ""
"A node that provides a polygon shape to a [CollisionObject2D] parent and "
"allows to edit it. The polygon can be concave or convex. This can give a "
"detection shape to an [Area2D], turn [PhysicsBody2D] into a solid object, or "
"give a hollow shape to a [StaticBody2D].\n"
"[b]Warning:[/b] A non-uniformly scaled [CollisionPolygon2D] will likely not "
"behave as expected. Make sure to keep its scale the same on all axes and "
"adjust its polygon instead."
msgstr ""
"Узел, который предоставляет форму многоугольника для родительского "
"[CollisionObject2D] и позволяет редактировать его. Многоугольник может быть "
"вогнутым или выпуклым. Это может дать форму обнаружения для [Area2D], "
"превратить [PhysicsBody2D] в сплошной объект или дать полую форму для "
"[StaticBody2D].\n"
"[b]Предупреждение:[/b] Неравномерно масштабированный [CollisionPolygon2D], "
"скорее всего, не будет вести себя так, как ожидается. Убедитесь, что его "
"масштаб одинаковый по всем осям, и вместо этого настройте его многоугольник."

msgid "Collision build mode."
msgstr "Режим построения столкновений."

msgid ""
"If [code]true[/code], no collisions will be detected. This property should be "
"changed with [method Object.set_deferred]."
msgstr ""
"Если [code]true[/code], столкновения не будут обнаружены. Это свойство "
"следует изменить с помощью [method Object.set_deferred]."

msgid ""
"If [code]true[/code], only edges that face up, relative to "
"[CollisionPolygon2D]'s rotation, will collide with other objects.\n"
"[b]Note:[/b] This property has no effect if this [CollisionPolygon2D] is a "
"child of an [Area2D] node."
msgstr ""
"Если [code]true[/code], только ребра, обращенные вверх относительно поворота "
"[CollisionPolygon2D], будут сталкиваться с другими объектами.\n"
"[b]Примечание:[/b] Это свойство не имеет эффекта, если этот "
"[CollisionPolygon2D] является дочерним узлом [Area2D]."

msgid ""
"The margin used for one-way collision (in pixels). Higher values will make "
"the shape thicker, and work better for colliders that enter the polygon at a "
"high velocity."
msgstr ""
"Поле, используемое для одностороннего столкновения (в пикселях). Более "
"высокие значения сделают форму толще и будут лучше работать для коллайдеров, "
"которые входят в полигон на высокой скорости."

msgid ""
"The polygon's list of vertices. Each point will be connected to the next, and "
"the final point will be connected to the first.\n"
"[b]Note:[/b] The returned vertices are in the local coordinate space of the "
"given [CollisionPolygon2D]."
msgstr ""
"Список вершин полигона. Каждая точка будет соединена со следующей, а "
"последняя точка будет соединена с первой.\n"
"[b]Примечание:[/b] Возвращаемые вершины находятся в локальном координатном "
"пространстве заданного [CollisionPolygon2D]."

msgid ""
"Collisions will include the polygon and its contained area. In this mode the "
"node has the same effect as several [ConvexPolygonShape2D] nodes, one for "
"each convex shape in the convex decomposition of the polygon (but without the "
"overhead of multiple nodes)."
msgstr ""
"Столкновения будут включать полигон и его содержащуюся область. В этом режиме "
"узел имеет тот же эффект, что и несколько узлов [ConvexPolygonShape2D], по "
"одному для каждой выпуклой формы в выпуклом разложении полигона (но без "
"накладных расходов нескольких узлов)."

msgid ""
"Collisions will only include the polygon edges. In this mode the node has the "
"same effect as a single [ConcavePolygonShape2D] made of segments, with the "
"restriction that each segment (after the first one) starts where the previous "
"one ends, and the last one ends where the first one starts (forming a closed "
"but hollow polygon)."
msgstr ""
"Столкновения будут включать только края полигона. В этом режиме узел имеет "
"тот же эффект, что и один [ConcavePolygonShape2D], состоящий из сегментов, с "
"ограничением, что каждый сегмент (после первого) начинается там, где "
"заканчивается предыдущий, а последний заканчивается там, где начинается "
"первый (образуя замкнутый, но полый полигон)."

msgid ""
"A node that provides a thickened polygon shape (a prism) to a "
"[CollisionObject3D] parent."
msgstr ""
"Узел, который придает утолщенную форму многоугольника (призму) родительскому "
"объекту [CollisionObject3D]."

msgid ""
"A node that provides a thickened polygon shape (a prism) to a "
"[CollisionObject3D] parent and allows to edit it. The polygon can be concave "
"or convex. This can give a detection shape to an [Area3D] or turn "
"[PhysicsBody3D] into a solid object.\n"
"[b]Warning:[/b] A non-uniformly scaled [CollisionShape3D] will likely not "
"behave as expected. Make sure to keep its scale the same on all axes and "
"adjust its shape resource instead."
msgstr ""
"Узел, который предоставляет утолщенную форму многоугольника (призму) "
"родительскому [CollisionObject3D] и позволяет редактировать ее. Многоугольник "
"может быть вогнутым или выпуклым. Это может дать форму обнаружения [Area3D] "
"или превратить [PhysicsBody3D] в сплошной объект.\n"
"[b]Предупреждение:[/b] Неравномерно масштабированный [CollisionShape3D], "
"скорее всего, не будет вести себя так, как ожидается. Убедитесь, что его "
"масштаб одинаковый по всем осям, и вместо этого настройте его ресурс формы."

msgid ""
"The collision shape color that is displayed in the editor, or in the running "
"project if [b]Debug > Visible Collision Shapes[/b] is checked at the top of "
"the editor.\n"
"[b]Note:[/b] The default value is [member ProjectSettings.debug/shapes/"
"collision/shape_color]. The [code]Color(0, 0, 0, 0)[/code] value documented "
"here is a placeholder, and not the actual default debug color."
msgstr ""
"Цвет формы столкновения, отображаемый в редакторе или в запущенном проекте, "
"если [b]Отладка > Видимые формы столкновения[/b] отмечены в верхней части "
"редактора.\n"
"[b]Примечание:[/b] Значение по умолчанию — [member ProjectSettings.debug/"
"shapes/collision/shape_color]. Значение [code]Color(0, 0, 0, 0)[/code], "
"задокументированное здесь, является заполнителем, а не фактическим цветом "
"отладки по умолчанию."

msgid ""
"If [code]true[/code], when the shape is displayed, it will show a solid fill "
"color in addition to its wireframe."
msgstr ""
"Если [code]true[/code], при отображении фигуры в дополнение к ее каркасу "
"будет отображаться сплошной цвет заливки."

msgid ""
"Length that the resulting collision extends in either direction perpendicular "
"to its 2D polygon."
msgstr ""
"Длина, на которую распространяется полученное столкновение в любом "
"направлении, перпендикулярном его двумерному многоугольнику."

msgid ""
"If [code]true[/code], no collision will be produced. This property should be "
"changed with [method Object.set_deferred]."
msgstr ""
"Если [code]true[/code], столкновения не произойдет. Это свойство следует "
"изменить с помощью [method Object.set_deferred]."

msgid ""
"The collision margin for the generated [Shape3D]. See [member Shape3D.margin] "
"for more details."
msgstr ""
"Поле столкновения для сгенерированного [Shape3D]. См. [member Shape3D.margin] "
"для получения более подробной информации."

msgid "Array of vertices which define the 2D polygon in the local XY plane."
msgstr "Массив вершин, определяющих 2D-полигон в локальной плоскости XY."

msgid "A node that provides a [Shape2D] to a [CollisionObject2D] parent."
msgstr ""
"Узел, который предоставляет [Shape2D] родительскому [CollisionObject2D]."

msgid ""
"A node that provides a [Shape2D] to a [CollisionObject2D] parent and allows "
"to edit it. This can give a detection shape to an [Area2D] or turn a "
"[PhysicsBody2D] into a solid object."
msgstr ""
"Узел, который предоставляет [Shape2D] родителю [CollisionObject2D] и "
"позволяет редактировать его. Это может дать форму обнаружения [Area2D] или "
"превратить [PhysicsBody2D] в твердый объект."

msgid ""
"A disabled collision shape has no effect in the world. This property should "
"be changed with [method Object.set_deferred]."
msgstr ""
"Отключенная форма столкновения не имеет эффекта в мире. Это свойство должно "
"быть изменено с помощью [method Object.set_deferred]."

msgid ""
"Sets whether this collision shape should only detect collision on one side "
"(top or bottom).\n"
"[b]Note:[/b] This property has no effect if this [CollisionShape2D] is a "
"child of an [Area2D] node."
msgstr ""
"Устанавливает, должна ли эта форма столкновения обнаруживать столкновение "
"только с одной стороны (сверху или снизу).\n"
"[b]Примечание:[/b] Это свойство не имеет эффекта, если этот "
"[CollisionShape2D] является дочерним узлом [Area2D]."

msgid ""
"The margin used for one-way collision (in pixels). Higher values will make "
"the shape thicker, and work better for colliders that enter the shape at a "
"high velocity."
msgstr ""
"Поле, используемое для одностороннего столкновения (в пикселях). Более "
"высокие значения сделают форму толще и лучше подходят для коллайдеров, "
"которые входят в форму с высокой скоростью."

msgid "The actual shape owned by this collision shape."
msgstr "Фактическая форма, принадлежащая этой форме столкновения."

msgid "A node that provides a [Shape3D] to a [CollisionObject3D] parent."
msgstr ""
"Узел, который предоставляет [Shape3D] родительскому элементу "
"[CollisionObject3D]."

msgid ""
"A node that provides a [Shape3D] to a [CollisionObject3D] parent and allows "
"to edit it. This can give a detection shape to an [Area3D] or turn a "
"[PhysicsBody3D] into a solid object.\n"
"[b]Warning:[/b] A non-uniformly scaled [CollisionShape3D] will likely not "
"behave as expected. Make sure to keep its scale the same on all axes and "
"adjust its [member shape] resource instead."
msgstr ""
"Узел, который предоставляет [Shape3D] родительскому [CollisionObject3D] и "
"позволяет редактировать его. Это может дать форму обнаружения [Area3D] или "
"превратить [PhysicsBody3D] в сплошной объект.\n"
"[b]Предупреждение:[/b] Неравномерно масштабированный [CollisionShape3D] "
"скорее всего не будет вести себя так, как ожидается. Убедитесь, что его "
"масштаб одинаковый по всем осям, и вместо этого настройте его ресурс [member "
"shape]."

msgid ""
"Sets the collision shape's shape to the addition of all its convexed "
"[MeshInstance3D] siblings geometry."
msgstr ""
"Устанавливает форму формы столкновения на основе всех ее выпуклых родственных "
"геометрий [MeshInstance3D]."

msgid "Use [signal Resource.changed] instead."
msgstr "Вместо этого используйте [signal Resource.changed]."

msgid "This method does nothing."
msgstr "Этот метод ничего не даёт."

msgid "A color represented in RGBA format."
msgstr "Цвет, представленный в формате RGBA."

msgid ""
"A color represented in RGBA format by a red ([member r]), green ([member g]), "
"blue ([member b]), and alpha ([member a]) component. Each component is a 32-"
"bit floating-point value, usually ranging from [code]0.0[/code] to [code]1.0[/"
"code]. Some properties (such as [member CanvasItem.modulate]) may support "
"values greater than [code]1.0[/code], for overbright or HDR (High Dynamic "
"Range) colors.\n"
"Colors can be created in various ways: By the various [Color] constructors, "
"by static methods such as [method from_hsv], and by using a name from the set "
"of standardized colors based on [url=https://en.wikipedia.org/wiki/"
"X11_color_names]X11 color names[/url] with the addition of [constant "
"TRANSPARENT]. GDScript also provides [method @GDScript.Color8], which uses "
"integers from [code]0[/code] to [code]255[/code] and doesn't support "
"overbright colors.\n"
"Color data may be stored in many color spaces and encodings. The [method "
"srgb_to_linear] and [method linear_to_srgb] methods can convert between "
"nonlinear sRGB encoding and linear RGB encoding.\n"
"[b]Note:[/b] In a boolean context, a Color will evaluate to [code]false[/"
"code] if it is equal to [code]Color(0, 0, 0, 1)[/code] (opaque black). "
"Otherwise, a Color will always evaluate to [code]true[/code].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"color_constants.png]Color constants cheatsheet[/url]"
msgstr ""
"Цвет, представленный в формате RGBA красным ([member r]), зеленым ([member "
"g]), синим ([member b]) и альфа ([member a]) компонентами. Каждый компонент "
"представляет собой 32-битное значение с плавающей точкой, обычно в диапазоне "
"от [code]0.0[/code] до [code]1.0[/code]. Некоторые свойства (например, "
"[member CanvasItem.modulate]) могут поддерживать значения больше [code]1.0[/"
"code] для цветов overbright или HDR (High Dynamic Range). \n"
"Цвета можно создавать разными способами: различными конструкторами [Color], "
"статическими методами, такими как [method from_hsv], и с использованием имени "
"из набора стандартизированных цветов на основе [url=https://en.wikipedia.org/"
"wiki/X11_color_names]X11 названий цветов[/url] с добавлением [constant "
"TRANSPARENT]. GDScript также предоставляет [method @GDScript.Color8], который "
"использует целые числа от [code]0[/code] до [code]255[/code] и не "
"поддерживает слишком яркие цвета.\n"
"Цветовые данные могут храниться во многих цветовых пространствах и "
"кодировках. Методы [method srgb_to_linear] и [method linear_to_srgb] могут "
"выполнять преобразование между нелинейным кодированием sRGB и линейным "
"кодированием RGB.\n"
"[b]Примечание:[/b] В булевом контексте Color будет оцениваться как "
"[code]false[/code], если он равен [code]Color(0, 0, 0, 1)[/code] "
"(непрозрачный черный). В противном случае Color всегда будет оцениваться как "
"[code]true[/code].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"color_constants.png]Шпаргалка по константам цвета[/url]"

msgid "2D GD Paint Demo"
msgstr "2D GD Paint Дэмо"

msgid "Tween Interpolation Demo"
msgstr "Демонстрация интерполяции твинов"

msgid "GUI Drag And Drop Demo"
msgstr "GUI Drag And Drop Демо"

msgid ""
"Constructs a default [Color] from opaque black. This is the same as [constant "
"BLACK].\n"
"[b]Note:[/b] In C#, this constructs a [Color] with all of its components set "
"to [code]0.0[/code] (transparent black)."
msgstr ""
"Создает [Color] по умолчанию из непрозрачного черного. Это то же самое, что и "
"[constant BLACK].\n"
"[b]Примечание:[/b] В C# это создает [Color] со всеми его компонентами, "
"установленными на [code]0.0[/code] (прозрачный черный)."

msgid ""
"Constructs a [Color] from the existing color, with [member a] set to the "
"given [param alpha] value.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var red = Color(Color.RED, 0.2) # 20% opaque red.\n"
"[/gdscript]\n"
"[csharp]\n"
"var red = new Color(Colors.Red, 0.2f); // 20% opaque red.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает [Color] из существующего цвета, при этом [member a] устанавливается "
"на заданное значение [param alpha].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var red = Color(Color.RED, 0.2) # 20% непрозрачного красного цвета.\n"
"[/gdscript]\n"
"[csharp]\n"
"var red = new Color(Colors.Red, 0.2f); // 20% непрозрачного красного цвета.\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Constructs a [Color] as a copy of the given [Color]."
msgstr "Создает [Color] как копию заданного [Color]."

msgid ""
"Constructs a [Color] either from an HTML color code or from a standardized "
"color name. The supported color names are the same as the constants."
msgstr ""
"Создает [Color] либо из кода цвета HTML, либо из стандартизированного имени "
"цвета. Поддерживаемые имена цветов совпадают с константами."

msgid ""
"Constructs a [Color] either from an HTML color code or from a standardized "
"color name, with [param alpha] on the range of 0.0 to 1.0. The supported "
"color names are the same as the constants."
msgstr ""
"Создает [Color] либо из кода цвета HTML, либо из стандартизированного имени "
"цвета с [param alpha] в диапазоне от 0,0 до 1,0. Поддерживаемые имена цветов "
"совпадают с константами."

msgid ""
"Constructs a [Color] from RGB values, typically between 0.0 and 1.0. [member "
"a] is set to 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(0.2, 1.0, 0.7) # Similar to `Color8(51, 255, 178, 255)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(0.2f, 1.0f, 0.7f); // Similar to `Color.Color8(51, 255, "
"178, 255)`\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает [Цвет] из значений RGB, обычно от 0,0 до 1,0. [member a] имеет "
"значение 1,0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(0.2, 1.0, 0.7) # Аналогично `Color8(51, 255, 178, 255)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(0.2f, 1.0f, 0.7f); // Аналогично `Color.Color8(51, 255, "
"178, 255)`\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Constructs a [Color] from RGBA values, typically between 0.0 and 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(0.2, 1.0, 0.7, 0.8) # Similar to `Color8(51, 255, 178, "
"204)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(0.2f, 1.0f, 0.7f, 0.8f); // Similar to "
"`Color.Color8(51, 255, 178, 255, 204)`\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает [Цвет] из значений RGBA, обычно от 0,0 до 1,0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(0.2, 1.0, 0.7, 0.8) # Аналогично `Color8(51, 255, 178, "
"204)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(0.2f, 1.0f, 0.7f, 0.8f); // Аналогично "
"`Color.Color8(51, 255, 178, 255, 204)`\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a new color resulting from overlaying this color over the given "
"color. In a painting program, you can imagine it as the [param over] color "
"painted over this color (including alpha).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var bg = Color(0.0, 1.0, 0.0, 0.5) # Green with alpha of 50%\n"
"var fg = Color(1.0, 0.0, 0.0, 0.5) # Red with alpha of 50%\n"
"var blended_color = bg.blend(fg) # Brown with alpha of 75%\n"
"[/gdscript]\n"
"[csharp]\n"
"var bg = new Color(0.0f, 1.0f, 0.0f, 0.5f); // Green with alpha of 50%\n"
"var fg = new Color(1.0f, 0.0f, 0.0f, 0.5f); // Red with alpha of 50%\n"
"Color blendedColor = bg.Blend(fg); // Brown with alpha of 75%\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает новый цвет, полученный в результате наложения этого цвета на "
"заданный цвет. В программе рисования вы можете представить его как цвет "
"[param over], нарисованный поверх этого цвета (включая альфу).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var bg = Color(0.0, 1.0, 0.0, 0.5) # Зеленый с альфа 50%\n"
"var fg = Color(1.0, 0.0, 0.0, 0.5) # Красный с альфой 50%\n"
"var blended_color = bg.blend(fg) # Коричневый с альфа 75%\n"
"[/gdscript]\n"
"[csharp]\n"
"var bg = new Color(0.0f, 1.0f, 0.0f, 0.5f); // Зеленый с альфа 50%\n"
"var fg = new Color(1.0f, 0.0f, 0.0f, 0.5f); // Красный с альфой 50%\n"
"Color blendedColor = bg.Blend(fg); // Коричневый с альфа 75%\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a new color with all components clamped between the components of "
"[param min] and [param max], by running [method @GlobalScope.clamp] on each "
"component."
msgstr ""
"Возвращает новый цвет со всеми компонентами, зажатыми между компонентами "
"[param min] и [param max], путем запуска [method @GlobalScope.clamp] для "
"каждого компонента."

msgid ""
"Returns a new color resulting from making this color darker by the specified "
"[param amount] (ratio from 0.0 to 1.0). See also [method lightened].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var green = Color(0.0, 1.0, 0.0)\n"
"var darkgreen = green.darkened(0.2) # 20% darker than regular green\n"
"[/gdscript]\n"
"[csharp]\n"
"var green = new Color(0.0f, 1.0f, 0.0f);\n"
"Color darkgreen = green.Darkened(0.2f); // 20% darker than regular green\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает новый цвет, полученный в результате затемнения этого цвета на "
"указанное [param amount] (соотношение от 0,0 до 1,0). См. также [method "
"lightened].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var green = Color(0.0, 1.0, 0.0)\n"
"var darkgreen = green.darkened(0.2) # на 20% темнее обычного зеленого\n"
"[/gdscript]\n"
"[csharp]\n"
"var green = new Color(0.0f, 1.0f, 0.0f);\n"
"Color darkgreen = green.Darkened(0.2f); // на 20% темнее обычного зеленого\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Constructs a color from an [url=https://en.wikipedia.org/wiki/HSL_and_HSV]HSV "
"profile[/url]. The hue ([param h]), saturation ([param s]), and value ([param "
"v]) are typically between 0.0 and 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color.from_hsv(0.58, 0.5, 0.79, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = Color.FromHsv(0.58f, 0.5f, 0.79f, 0.8f);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает цвет из [url=https://en.wikipedia.org/wiki/HSL_and_HSV]профиля HSV[/"
"url]. Оттенок ([param h]), насыщенность ([param s]) и значение ([param v]) "
"обычно находятся в диапазоне от 0,0 до 1,0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color.from_hsv(0.58, 0.5, 0.79, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = Color.FromHsv(0.58f, 0.5f, 0.79f, 0.8f);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Constructs a color from an [url=https://bottosson.github.io/posts/"
"colorpicker/]OK HSL profile[/url]. The hue ([param h]), saturation ([param "
"s]), and lightness ([param l]) are typically between 0.0 and 1.0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color.from_ok_hsl(0.58, 0.5, 0.79, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = Color.FromOkHsl(0.58f, 0.5f, 0.79f, 0.8f);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает цвет из [url=https://bottosson.github.io/posts/colorpicker/]OK HSL-"
"профиля[/url]. Оттенок ([param h]), насыщенность ([param s]) и яркость "
"([param l]) обычно находятся в диапазоне от 0,0 до 1,0.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color.from_ok_hsl(0.58, 0.5, 0.79, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = Color.FromOkHsl(0.58f, 0.5f, 0.79f, 0.8f);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a [Color] constructed from red ([param r8]), green ([param g8]), blue "
"([param b8]), and optionally alpha ([param a8]) integer channels, each "
"divided by [code]255.0[/code] for their final value.\n"
"[codeblock]\n"
"var red = Color.from_rgba8(255, 0, 0)             # Same as Color(1, 0, 0).\n"
"var dark_blue = Color.from_rgba8(0, 0, 51)        # Same as Color(0, 0, "
"0.2).\n"
"var my_color = Color.from_rgba8(306, 255, 0, 102) # Same as Color(1.2, 1, 0, "
"0.4).\n"
"[/codeblock]\n"
"[b]Note:[/b] Due to the lower precision of [method from_rgba8] compared to "
"the standard [Color] constructor, a color created with [method from_rgba8] "
"will generally not be equal to the same color created with the standard "
"[Color] constructor. Use [method is_equal_approx] for comparisons to avoid "
"issues with floating-point precision error."
msgstr ""
"Возвращает [Color], составленный из красного ([param r8]), зеленого ([param "
"g8]), синего ([param b8]) и, необязательно, альфа ([param a8]) целочисленных "
"каналов, каждый из которых делится на [code]255.0[/code] для получения "
"окончательного значения.\n"
"[codeblock]\n"
"var red = Color.from_rgba8(255, 0, 0)             # Тоже что и Color(1, 0, "
"0).\n"
"var dark_blue = Color.from_rgba8(0, 0, 51)        # Тоже что и Color(0, 0, "
"0.2).\n"
"var my_color = Color.from_rgba8(306, 255, 0, 102) # Тоже что и Color(1.2, 1, "
"0, 0.4).\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Из-за более низкой точности [method from_rgba8] по "
"сравнению со стандартным конструктором [Color], цвет, созданный с помощью "
"[method from_rgba8], как правило, не будет равен тому же цвету, созданному с "
"помощью стандартного конструктора [Color]. Используйте [method "
"is_equal_approx] для сравнений, чтобы избежать проблем с ошибкой точности с "
"плавающей точкой."

msgid ""
"Decodes a [Color] from an RGBE9995 format integer. See [constant "
"Image.FORMAT_RGBE9995]."
msgstr ""
"Декодирует [Color] из целого числа формата RGBE9995. См. [constant "
"Image.FORMAT_RGBE9995]."

msgid ""
"Creates a [Color] from the given string, which can be either an HTML color "
"code or a named color (case-insensitive). Returns [param default] if the "
"color cannot be inferred from the string.\n"
"If you want to create a color from String in a constant expression, use the "
"equivalent constructor instead (i.e. [code]Color(\"color string\")[/code])."
msgstr ""
"Создает [Color] из заданной строки, которая может быть либо кодом цвета HTML, "
"либо именованным цветом (без учета регистра). Возвращает [param default], "
"если цвет не может быть выведен из строки.\n"
"Если вы хотите создать цвет из String в константном выражении, используйте "
"вместо этого эквивалентный конструктор (т. е. [code]Color(\"color string\")[/"
"code])."

msgid ""
"Returns the light intensity of the color, as a value between 0.0 and 1.0 "
"(inclusive). This is useful when determining light or dark color. Colors with "
"a luminance smaller than 0.5 can be generally considered dark.\n"
"[b]Note:[/b] [method get_luminance] relies on the color being in the linear "
"color space to return an accurate relative luminance value. If the color is "
"in the sRGB color space, use [method srgb_to_linear] to convert it to the "
"linear color space first."
msgstr ""
"Возвращает интенсивность света цвета как значение от 0,0 до 1,0 "
"(включительно). Это полезно при определении светлого или темного цвета. Цвета "
"с яркостью меньше 0,5 обычно можно считать темными.\n"
"[b]Примечание:[/b] [method get_luminance] полагается на то, что цвет "
"находится в линейном цветовом пространстве, чтобы вернуть точное "
"относительное значение яркости. Если цвет находится в цветовом пространстве "
"sRGB, используйте [method srgb_to_linear], чтобы сначала преобразовать его в "
"линейное цветовое пространство."

msgid ""
"Returns the [Color] associated with the provided [param hex] integer in 32-"
"bit RGBA format (8 bits per channel). This method is the inverse of [method "
"to_rgba32].\n"
"In GDScript and C#, the [int] is best visualized with hexadecimal notation "
"([code]\"0x\"[/code] prefix, making it [code]\"0xRRGGBBAA\"[/code]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var red = Color.hex(0xff0000ff)\n"
"var dark_cyan = Color.hex(0x008b8bff)\n"
"var my_color = Color.hex(0xbbefd2a4)\n"
"[/gdscript]\n"
"[csharp]\n"
"var red = new Color(0xff0000ff);\n"
"var dark_cyan = new Color(0x008b8bff);\n"
"var my_color = new Color(0xbbefd2a4);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you want to use hex notation in a constant expression, use the equivalent "
"constructor instead (i.e. [code]Color(0xRRGGBBAA)[/code])."
msgstr ""
"Возвращает [Color], связанный с предоставленным целым числом [param hex] в 32-"
"битном формате RGBA (8 бит на канал). Этот метод является обратным [method "
"to_rgba32].\n"
"В GDScript и C# [int] лучше всего визуализировать с помощью шестнадцатеричной "
"записи (префикс [code]\"0x\"[/code], что делает его [code]\"0xRRGGBBAA\"[/"
"code]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var red = Color.hex(0xff0000ff)\n"
"var dark_cyan = Color.hex(0x008b8bff)\n"
"var my_color = Color.hex(0xbbefd2a4)\n"
"[/gdscript]\n"
"[csharp]\n"
"var red = new Color(0xff0000ff);\n"
"var dark_cyan = new Color(0x008b8bff);\n"
"var my_color = new Color(0xbbefd2a4);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Если вы хотите использовать шестнадцатеричную запись в константном выражении, "
"используйте вместо этого эквивалентный конструктор (т. е. "
"[code]Color(0xRRGGBBAA)[/code])."

msgid ""
"Returns the [Color] associated with the provided [param hex] integer in 64-"
"bit RGBA format (16 bits per channel). This method is the inverse of [method "
"to_rgba64].\n"
"In GDScript and C#, the [int] is best visualized with hexadecimal notation "
"([code]\"0x\"[/code] prefix, making it [code]\"0xRRRRGGGGBBBBAAAA\"[/code])."
msgstr ""
"Возвращает [Color], связанный с предоставленным целым числом [param hex] в 64-"
"битном формате RGBA (16 бит на канал). Этот метод является обратным [method "
"to_rgba64].\n"
"В GDScript и C# [int] лучше всего визуализировать с помощью шестнадцатеричной "
"записи (префикс [code]\"0x\"[/code], что делает его [code]"
"\"0xRRRRGGGGBBBBAAAA\"[/code])."

msgid ""
"Returns a new color from [param rgba], an HTML hexadecimal color string. "
"[param rgba] is not case-sensitive, and may be prefixed by a hash sign "
"([code]#[/code]).\n"
"[param rgba] must be a valid three-digit or six-digit hexadecimal color "
"string, and may contain an alpha channel value. If [param rgba] does not "
"contain an alpha channel value, an alpha channel value of 1.0 is applied. If "
"[param rgba] is invalid, returns an empty color.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var blue = Color.html(\"#0000ff\") # blue is Color(0.0, 0.0, 1.0, 1.0)\n"
"var green = Color.html(\"#0F0\")   # green is Color(0.0, 1.0, 0.0, 1.0)\n"
"var col = Color.html(\"663399cc\") # col is Color(0.4, 0.2, 0.6, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var blue = Color.FromHtml(\"#0000ff\"); // blue is Color(0.0, 0.0, 1.0, 1.0)\n"
"var green = Color.FromHtml(\"#0F0\");   // green is Color(0.0, 1.0, 0.0, "
"1.0)\n"
"var col = Color.FromHtml(\"663399cc\"); // col is Color(0.4, 0.2, 0.6, 0.8)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает новый цвет из [param rgba], шестнадцатеричной строки цвета HTML. "
"[param rgba] не чувствителен к регистру и может иметь префикс в виде знака "
"решетки ([code]#[/code]).\n"
"[param rgba] должен быть допустимой трехзначной или шестизначной "
"шестнадцатеричной строкой цвета и может содержать значение альфа-канала. Если "
"[param rgba] не содержит значение альфа-канала, применяется значение альфа-"
"канала 1.0. Если [param rgba] недопустим, возвращает пустой цвет.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var blue = Color.html(\"#0000ff\") # синий — это Color(0.0, 0.0, 1.0, 1.0)\n"
"var green = Color.html(\"#0F0\")   # зеленый — это Color(0.0, 1.0, 0.0, 1.0)\n"
"var col = Color.html(\"663399cc\") # col — это Color(0.4, 0.2, 0.6, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var blue = Color.FromHtml(\"#0000ff\"); // синий — это Color(0.0, 0.0, 1.0, "
"1.0)\n"
"var green = Color.FromHtml(\"#0F0\");   // зеленый — это Color(0.0, 1.0, 0.0, "
"1.0)\n"
"var col = Color.FromHtml(\"663399cc\"); // col — это Color(0.4, 0.2, 0.6, "
"0.8)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if [param color] is a valid HTML hexadecimal color "
"string. The string must be a hexadecimal value (case-insensitive) of either "
"3, 4, 6 or 8 digits, and may be prefixed by a hash sign ([code]#[/code]). "
"This method is identical to [method String.is_valid_html_color].\n"
"[codeblocks]\n"
"[gdscript]\n"
"Color.html_is_valid(\"#55aaFF\")   # Returns true\n"
"Color.html_is_valid(\"#55AAFF20\") # Returns true\n"
"Color.html_is_valid(\"55AAFF\")    # Returns true\n"
"Color.html_is_valid(\"#F2C\")      # Returns true\n"
"\n"
"Color.html_is_valid(\"#AABBC\")    # Returns false\n"
"Color.html_is_valid(\"#55aaFF5\")  # Returns false\n"
"[/gdscript]\n"
"[csharp]\n"
"Color.HtmlIsValid(\"#55AAFF\");   // Returns true\n"
"Color.HtmlIsValid(\"#55AAFF20\"); // Returns true\n"
"Color.HtmlIsValid(\"55AAFF\");    // Returns true\n"
"Color.HtmlIsValid(\"#F2C\");      // Returns true\n"
"\n"
"Color.HtmlIsValid(\"#AABBC\");    // Returns false\n"
"Color.HtmlIsValid(\"#55aaFF5\");  // Returns false\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [code]true[/code], если [param color] является допустимой "
"шестнадцатеричной строкой цвета HTML. Строка должна быть шестнадцатеричным "
"значением (без учета регистра) из 3, 4, 6 или 8 цифр и может иметь префикс в "
"виде знака решетки ([code]#[/code]). Этот метод идентичен [method "
"String.is_valid_html_color].\n"
"[codeblocks]\n"
"[gdscript]\n"
"Color.html_is_valid(\"#55aaFF\")   # Returns true\n"
"Color.html_is_valid(\"#55AAFF20\") # Returns true\n"
"Color.html_is_valid(\"55AAFF\")    # Returns true\n"
"Color.html_is_valid(\"#F2C\")      # Returns true\n"
"\n"
"Color.html_is_valid(\"#AABBC\")    # Returns false\n"
"Color.html_is_valid(\"#55aaFF5\")  # Returns false\n"
"[/gdscript]\n"
"[csharp]\n"
"Color.HtmlIsValid(\"#55AAFF\");   // Returns true\n"
"Color.HtmlIsValid(\"#55AAFF20\"); // Returns true\n"
"Color.HtmlIsValid(\"55AAFF\");    // Returns true\n"
"Color.HtmlIsValid(\"#F2C\");      // Returns true\n"
"\n"
"Color.HtmlIsValid(\"#AABBC\");    // Returns false\n"
"Color.HtmlIsValid(\"#55aaFF5\");  // Returns false\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color with its [member r], [member g], and [member b] components "
"inverted ([code](1 - r, 1 - g, 1 - b, a)[/code]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var black = Color.WHITE.inverted()\n"
"var color = Color(0.3, 0.4, 0.9)\n"
"var inverted_color = color.inverted() # Equivalent to `Color(0.7, 0.6, 0.1)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var black = Colors.White.Inverted();\n"
"var color = new Color(0.3f, 0.4f, 0.9f);\n"
"Color invertedColor = color.Inverted(); // Equivalent to `new Color(0.7f, "
"0.6f, 0.1f)`\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает цвет с инвертированными компонентами [member r], [member g] и "
"[member b]. ([code](1 - r, 1 - g, 1 - b, a)[/code]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var black = Color.WHITE.inverted()\n"
"var color = Color(0.3, 0.4, 0.9)\n"
"var inverted_color = color.inverted() # Эквивалентно `Color(0.7, 0.6, 0.1)`\n"
"[/gdscript]\n"
"[csharp]\n"
"var black = Colors.White.Inverted();\n"
"var color = new Color(0.3f, 0.4f, 0.9f);\n"
"Color invertedColor = color.Inverted(); // Эквивалентно `new Color(0.7f, "
"0.6f, 0.1f)`\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if this color and [param to] are approximately "
"equal, by running [method @GlobalScope.is_equal_approx] on each component."
msgstr ""
"Возвращает [code]true[/code], если этот цвет и [param to] приблизительно "
"равны, путем запуска [method @GlobalScope.is_equal_approx] для каждого "
"компонента."

msgid ""
"Returns the linear interpolation between this color's components and [param "
"to]'s components. The interpolation factor [param weight] should be between "
"0.0 and 1.0 (inclusive). See also [method @GlobalScope.lerp].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var red = Color(1.0, 0.0, 0.0)\n"
"var aqua = Color(0.0, 1.0, 0.8)\n"
"\n"
"red.lerp(aqua, 0.2) # Returns Color(0.8, 0.2, 0.16)\n"
"red.lerp(aqua, 0.5) # Returns Color(0.5, 0.5, 0.4)\n"
"red.lerp(aqua, 1.0) # Returns Color(0.0, 1.0, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var red = new Color(1.0f, 0.0f, 0.0f);\n"
"var aqua = new Color(0.0f, 1.0f, 0.8f);\n"
"\n"
"red.Lerp(aqua, 0.2f); // Returns Color(0.8f, 0.2f, 0.16f)\n"
"red.Lerp(aqua, 0.5f); // Returns Color(0.5f, 0.5f, 0.4f)\n"
"red.Lerp(aqua, 1.0f); // Returns Color(0.0f, 1.0f, 0.8f)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает линейную интерполяцию между компонентами этого цвета и "
"компонентами [param to]. Коэффициент интерполяции [param weight] должен быть "
"между 0,0 и 1,0 (включительно). См. также [method @GlobalScope.lerp].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var red = Color(1.0, 0.0, 0.0)\n"
"var aqua = Color(0.0, 1.0, 0.8)\n"
"\n"
"red.lerp(aqua, 0.2) # Returns Color(0.8, 0.2, 0.16)\n"
"red.lerp(aqua, 0.5) # Returns Color(0.5, 0.5, 0.4)\n"
"red.lerp(aqua, 1.0) # Returns Color(0.0, 1.0, 0.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var red = new Color(1.0f, 0.0f, 0.0f);\n"
"var aqua = new Color(0.0f, 1.0f, 0.8f);\n"
"\n"
"red.Lerp(aqua, 0.2f); // Returns Color(0.8f, 0.2f, 0.16f)\n"
"red.Lerp(aqua, 0.5f); // Returns Color(0.5f, 0.5f, 0.4f)\n"
"red.Lerp(aqua, 1.0f); // Returns Color(0.0f, 1.0f, 0.8f)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a new color resulting from making this color lighter by the specified "
"[param amount], which should be a ratio from 0.0 to 1.0. See also [method "
"darkened].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var green = Color(0.0, 1.0, 0.0)\n"
"var light_green = green.lightened(0.2) # 20% lighter than regular green\n"
"[/gdscript]\n"
"[csharp]\n"
"var green = new Color(0.0f, 1.0f, 0.0f);\n"
"Color lightGreen = green.Lightened(0.2f); // 20% lighter than regular green\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает новый цвет, полученный в результате осветления этого цвета на "
"указанное [param amount], которое должно быть отношением от 0,0 до 1,0. См. "
"также [method darkened].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var green = Color(0.0, 1.0, 0.0)\n"
"var light_green = green.lightened(0.2) # На 20% светлее обычного зеленого\n"
"[/gdscript]\n"
"[csharp]\n"
"var green = new Color(0.0f, 1.0f, 0.0f);\n"
"Color lightGreen = green.Lightened(0.2f); // На 20% светлее обычного "
"зеленого\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to the [url=https://en.wikipedia.org/wiki/"
"SRGB]sRGB[/url] color space. This method assumes the original color is in the "
"linear color space. See also [method srgb_to_linear] which performs the "
"opposite operation.\n"
"[b]Note:[/b] The color's [member a]lpha channel is not affected. The alpha "
"channel is always stored with linear encoding, regardless of the color space "
"of the other color channels."
msgstr ""
"Возвращает цвет, преобразованный в цветовое пространство [url=https://"
"en.wikipedia.org/wiki/SRGB]sRGB[/url]. Этот метод предполагает, что исходный "
"цвет находится в линейном цветовом пространстве. См. также [method "
"srgb_to_linear], который выполняет противоположную операцию.\n"
"[b]Примечание:[/b] Канал [member a]lpha цвета не затрагивается. Альфа-канал "
"всегда хранится с линейным кодированием, независимо от цветового пространства "
"других цветовых каналов."

msgid ""
"Returns the color converted to the linear color space. This method assumes "
"the original color already is in the sRGB color space. See also [method "
"linear_to_srgb] which performs the opposite operation.\n"
"[b]Note:[/b] The color's [member a]lpha channel is not affected. The alpha "
"channel is always stored with linear encoding, regardless of the color space "
"of the other color channels."
msgstr ""
"Возвращает цвет, преобразованный в линейное цветовое пространство. Этот метод "
"предполагает, что исходный цвет уже находится в цветовом пространстве sRGB. "
"См. также [method linear_to_srgb], который выполняет противоположную "
"операцию.\n"
"[b]Примечание:[/b] Канал [member a]lpha цвета не затрагивается. Альфа-канал "
"всегда хранится с линейным кодированием, независимо от цветового пространства "
"других цветовых каналов."

msgid ""
"Returns the color converted to a 32-bit integer in ABGR format (each "
"component is 8 bits). ABGR is the reversed version of the default RGBA "
"format.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_abgr32()) # Prints 4281565439\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToAbgr32()); // Prints 4281565439\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает цвет, преобразованный в 32-битное целое число в формате ABGR "
"(каждый компонент — 8 бит). ABGR — это обратная версия формата RGBA по "
"умолчанию.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_abgr32()) # Prints 4281565439\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToAbgr32()); // Prints 4281565439\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to a 64-bit integer in ABGR format (each "
"component is 16 bits). ABGR is the reversed version of the default RGBA "
"format.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_abgr64()) # Prints -225178692812801\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToAbgr64()); // Prints -225178692812801\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает цвет, преобразованный в 64-битное целое число в формате ABGR "
"(каждый компонент — 16 бит). ABGR — это обратная версия формата RGBA по "
"умолчанию.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_abgr64()) # Prints -225178692812801\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToAbgr64()); // Prints -225178692812801\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to a 32-bit integer in ARGB format (each "
"component is 8 bits). ARGB is more compatible with DirectX.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_argb32()) # Prints 4294934323\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToArgb32()); // Prints 4294934323\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает цвет, преобразованный в 32-битное целое число в формате ARGB "
"(каждый компонент — 8 бит). ARGB более совместим с DirectX.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_argb32()) # Prints 4294934323\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToArgb32()); // Prints 4294934323\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to a 64-bit integer in ARGB format (each "
"component is 16 bits). ARGB is more compatible with DirectX.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_argb64()) # Prints -2147470541\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToArgb64()); // Prints -2147470541\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает цвет, преобразованный в 64-битное целое число в формате ARGB "
"(каждый компонент — 16 бит). ARGB более совместим с DirectX.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_argb64()) # Prints -2147470541\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1.0f, 0.5f, 0.2f);\n"
"GD.Print(color.ToArgb64()); // Prints -2147470541\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to an HTML hexadecimal color [String] in RGBA "
"format, without the hash ([code]#[/code]) prefix.\n"
"Setting [param with_alpha] to [code]false[/code], excludes alpha from the "
"hexadecimal string, using RGB format instead of RGBA format.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var white = Color(1, 1, 1, 0.5)\n"
"var with_alpha = white.to_html() # Returns \"ffffff7f\"\n"
"var without_alpha = white.to_html(false) # Returns \"ffffff\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var white = new Color(1, 1, 1, 0.5f);\n"
"string withAlpha = white.ToHtml(); // Returns \"ffffff7f\"\n"
"string withoutAlpha = white.ToHtml(false); // Returns \"ffffff\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает цвет, преобразованный в шестнадцатеричный цвет HTML [String] в "
"формате RGBA, без префикса решетки ([code]#[/code]). \n"
"Установка [param with_alpha] в [code]false[/code] исключает альфа из "
"шестнадцатеричной строки, используя формат RGB вместо формата RGBA.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var white = Color(1, 1, 1, 0.5)\n"
"var with_alpha = white.to_html() # Returns \"ffffff7f\"\n"
"var without_alpha = white.to_html(false) # Returns \"ffffff\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var white = new Color(1, 1, 1, 0.5f);\n"
"string withAlpha = white.ToHtml(); // Returns \"ffffff7f\"\n"
"string withoutAlpha = white.ToHtml(false); // Returns \"ffffff\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to a 32-bit integer in RGBA format (each "
"component is 8 bits). RGBA is Godot's default format. This method is the "
"inverse of [method hex].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_rgba32()) # Prints 4286526463\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1, 0.5f, 0.2f);\n"
"GD.Print(color.ToRgba32()); // Prints 4286526463\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает цвет, преобразованный в 32-битное целое число в формате RGBA "
"(каждый компонент — 8 бит). RGBA — формат Godot по умолчанию. Этот метод "
"является обратным [method hex].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_rgba32()) # Prints 4286526463\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1, 0.5f, 0.2f);\n"
"GD.Print(color.ToRgba32()); // Prints 4286526463\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the color converted to a 64-bit integer in RGBA format (each "
"component is 16 bits). RGBA is Godot's default format. This method is the "
"inverse of [method hex64].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_rgba64()) # Prints -140736629309441\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1, 0.5f, 0.2f);\n"
"GD.Print(color.ToRgba64()); // Prints -140736629309441\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает цвет, преобразованный в 64-битное целое число в формате RGBA "
"(каждый компонент — 16 бит). RGBA — формат Godot по умолчанию. Этот метод "
"является обратным [method hex64].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var color = Color(1, 0.5, 0.2)\n"
"print(color.to_rgba64()) # Prints -140736629309441\n"
"[/gdscript]\n"
"[csharp]\n"
"var color = new Color(1, 0.5f, 0.2f);\n"
"GD.Print(color.ToRgba64()); // Prints -140736629309441\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The color's alpha component, typically on the range of 0 to 1. A value of 0 "
"means that the color is fully transparent. A value of 1 means that the color "
"is fully opaque.\n"
"[b]Note:[/b] The alpha channel is always stored with linear encoding, "
"regardless of the color space of the other color channels. The [method "
"linear_to_srgb] and [method srgb_to_linear] methods do not affect the alpha "
"channel."
msgstr ""
"Альфа-компонент цвета, обычно в диапазоне от 0 до 1. Значение 0 означает, что "
"цвет полностью прозрачен. Значение 1 означает, что цвет полностью "
"непрозрачен.\n"
"[b]Примечание:[/b] Альфа-канал всегда хранится с линейным кодированием, "
"независимо от цветового пространства других цветовых каналов. Методы [method "
"linear_to_srgb] и [method srgb_to_linear] не влияют на альфа-канал."

msgid "Wrapper for [member a] that uses the range 0 to 255, instead of 0 to 1."
msgstr ""
"Оболочка для [member a], которая использует диапазон от 0 до 255 вместо 0 до "
"1."

msgid "The color's blue component, typically on the range of 0 to 1."
msgstr "Синяя составляющая цвета, обычно в диапазоне от 0 до 1."

msgid "Wrapper for [member b] that uses the range 0 to 255, instead of 0 to 1."
msgstr ""
"Оболочка для [member b], которая использует диапазон от 0 до 255 вместо 0 до "
"1."

msgid "The color's green component, typically on the range of 0 to 1."
msgstr "Зеленый компонент цвета, обычно в диапазоне от 0 до 1."

msgid "Wrapper for [member g] that uses the range 0 to 255, instead of 0 to 1."
msgstr ""
"Оболочка для [member g], которая использует диапазон от 0 до 255 вместо 0 до "
"1."

msgid "The HSV hue of this color, on the range 0 to 1."
msgstr "Оттенок HSV этого цвета в диапазоне от 0 до 1."

msgid "The OKHSL hue of this color, on the range 0 to 1."
msgstr "Оттенок OKHSL этого цвета в диапазоне от 0 до 1."

msgid "The OKHSL lightness of this color, on the range 0 to 1."
msgstr "Яркость OKHSL этого цвета в диапазоне от 0 до 1."

msgid "The OKHSL saturation of this color, on the range 0 to 1."
msgstr "Насыщенность OKHSL этого цвета в диапазоне от 0 до 1."

msgid "The color's red component, typically on the range of 0 to 1."
msgstr "Красный компонент цвета, обычно в диапазоне от 0 до 1."

msgid "Wrapper for [member r] that uses the range 0 to 255, instead of 0 to 1."
msgstr ""
"Оболочка для [member r], которая использует диапазон от 0 до 255 вместо 0 до "
"1."

msgid "The HSV saturation of this color, on the range 0 to 1."
msgstr "Насыщенность HSV этого цвета в диапазоне от 0 до 1."

msgid "The HSV value (brightness) of this color, on the range 0 to 1."
msgstr "Значение HSV (яркость) данного цвета в диапазоне от 0 до 1."

msgid "Alice blue color."
msgstr "Синяя Элис."

msgid "Antique white color."
msgstr "Античный белый."

msgid "Aqua color."
msgstr "Цвет аква."

msgid "Aquamarine color."
msgstr "Цвет аквамарина."

msgid "Azure color."
msgstr "Лазурный цвет."

msgid "Beige color."
msgstr "Бежевый цвет."

msgid "Bisque color."
msgstr "Цвет бисквита."

msgid "Black color. In GDScript, this is the default value of any color."
msgstr "Черный цвет. В GDScript это значение по умолчанию для любого цвета."

msgid "Blanched almond color."
msgstr "Цвет бланшированного миндаля."

msgid "Blue color."
msgstr "Синий цвет."

msgid "Blue violet color."
msgstr "Сине-фиолетовый."

msgid "Brown color."
msgstr "Коричневый цвет."

msgid "Burlywood color."
msgstr "Цвет бурливуда."

msgid "Cadet blue color."
msgstr "Серо-синий."

msgid "Chartreuse color."
msgstr "Цвет шартрез."

msgid "Chocolate color."
msgstr "Шоколадный цвет."

msgid "Coral color."
msgstr "Коралловый цвет."

msgid "Cornflower blue color."
msgstr "Васильково-синий цвет."

msgid "Cornsilk color."
msgstr "Цвет кукурузных рылец."

msgid "Crimson color."
msgstr "Багровый цвет."

msgid "Cyan color."
msgstr "Голубой цвет."

msgid "Dark blue color."
msgstr "Темно-синий цвет."

msgid "Dark cyan color."
msgstr "Тёмный циан."

msgid "Dark goldenrod color."
msgstr "Темно-золотистый."

msgid "Dark gray color."
msgstr "Темно-серый."

msgid "Dark green color."
msgstr "Темно-зеленый."

msgid "Dark khaki color."
msgstr "Темный хаки."

msgid "Dark magenta color."
msgstr "Тёмный фуксин."

msgid "Dark olive green color."
msgstr "Цвет темно-оливково-зеленый."

msgid "Dark orange color."
msgstr "Темно-оранжевый."

msgid "Dark orchid color."
msgstr "Темно-лиловый."

msgid "Dark red color."
msgstr "Темно-красный."

msgid "Dark salmon color."
msgstr "Тёмная лососина."

msgid "Dark sea green color."
msgstr "Цвет темно-зеленой морской волны."

msgid "Dark slate blue color."
msgstr "Цвет темно-синий."

msgid "Dark slate gray color."
msgstr "Цвет темно-серый."

msgid "Dark turquoise color."
msgstr "Темно-бирюзовый."

msgid "Dark violet color."
msgstr "Темно-фиолетовый цвет."

msgid "Deep pink color."
msgstr "Пурпурно-розовый."

msgid "Deep sky blue color."
msgstr "Насыщенный небесно-голубой цвет."

msgid "Dim gray color."
msgstr "Тускло-серый."

msgid "Dodger blue color."
msgstr "Защитно-синий."

msgid "Firebrick color."
msgstr "Кирпичный цвет."

msgid "Floral white color."
msgstr "Цветочно-белый."

msgid "Forest green color."
msgstr "Лесная зелень."

msgid "Fuchsia color."
msgstr "Цвет фуксии."

msgid "Gainsboro color."
msgstr "Цвет Гейнсборо."

msgid "Ghost white color."
msgstr "Призрачно-белый."

msgid "Gold color."
msgstr "Золотой цвет."

msgid "Goldenrod color."
msgstr "Золотисто-рыжий цвет."

msgid "Gray color."
msgstr "Серый цвет."

msgid "Green color."
msgstr "Зеленый цвет."

msgid "Green yellow color."
msgstr "Жёлто-зелёный."

msgid "Honeydew color."
msgstr "Цвет медовой росы."

msgid "Hot pink color."
msgstr "Ярко-розовый."

msgid "Indian red color."
msgstr "Индийский красный."

msgid "Indigo color."
msgstr "Цвет индиго."

msgid "Ivory color."
msgstr "Цвет слоновой кости."

msgid "Khaki color."
msgstr "Цвет хаки."

msgid "Lavender color."
msgstr "Цвет лаванды."

msgid "Lavender blush color."
msgstr "Лавандовый румянец."

msgid "Lawn green color."
msgstr "Зеленый газон."

msgid "Lemon chiffon color."
msgstr "Лимонный шифон."

msgid "Light blue color."
msgstr "Светло-голубой."

msgid "Light coral color."
msgstr "Светло-коралловый."

msgid "Light cyan color."
msgstr "Светло-синий."

msgid "Light goldenrod color."
msgstr "Светло-золотистый."

msgid "Light gray color."
msgstr "Светло-серый цвет."

msgid "Light green color."
msgstr "Светло-зеленый."

msgid "Light pink color."
msgstr "Светло-розовый."

msgid "Light salmon color."
msgstr "Светло-лососевый."

msgid "Light sea green color."
msgstr "Цвет светло-зеленой морской волны."

msgid "Light sky blue color."
msgstr "Цвет светло-голубой."

msgid "Light slate gray color."
msgstr "Цвет светло-серый."

msgid "Light steel blue color."
msgstr "Цвет светло-стальной синевы."

msgid "Light yellow color."
msgstr "Светло-желтый."

msgid "Lime color."
msgstr "Цвет лайма."

msgid "Lime green color."
msgstr "Зеленый лайм."

msgid "Linen color."
msgstr "Цвет льна."

msgid "Magenta color."
msgstr "Пурпурный цвет."

msgid "Maroon color."
msgstr "Бордовый цвет."

msgid "Medium aquamarine color."
msgstr "Умеренный аквамарин."

msgid "Medium blue color."
msgstr "Умеренно-синий."

msgid "Medium orchid color."
msgstr "Умеренный лиловый."

msgid "Medium purple color."
msgstr "Средне-фиолетовый."

msgid "Medium sea green color."
msgstr "Цвет морской волны средней насыщенности."

msgid "Medium slate blue color."
msgstr "Цвет средне-синий."

msgid "Medium spring green color."
msgstr "Цвет средне-весенне-зеленый."

msgid "Medium turquoise color."
msgstr "Средне-бирюзовый."

msgid "Medium violet red color."
msgstr "Цвет средне-фиолетово-красный."

msgid "Midnight blue color."
msgstr "Полуночно-синий."

msgid "Mint cream color."
msgstr "Мятно-кремовый."

msgid "Misty rose color."
msgstr "Туманно-розовый."

msgid "Moccasin color."
msgstr "Цвет мокасин."

msgid "Navajo white color."
msgstr "Белый навахо."

msgid "Navy blue color."
msgstr "Темно-синий."

msgid "Old lace color."
msgstr "Старое кружево."

msgid "Olive color."
msgstr "Оливковый цвет."

msgid "Olive drab color."
msgstr "Нежно-оливковый."

msgid "Orange color."
msgstr "Оранжевый цвет."

msgid "Orange red color."
msgstr "Оранжево-красный."

msgid "Orchid color."
msgstr "Цвет орхидеи."

msgid "Pale goldenrod color."
msgstr "Бледно-золотистый."

msgid "Pale green color."
msgstr "Бледно-зеленый."

msgid "Pale turquoise color."
msgstr "Бледно-бирюзовый."

msgid "Pale violet red color."
msgstr "Бледно-фиолетово-красный цвет."

msgid "Papaya whip color."
msgstr "Побег папайи."

msgid "Peach puff color."
msgstr "Тёмно-персиковый."

msgid "Peru color."
msgstr "Перуанский цвет."

msgid "Pink color."
msgstr "Розовый цвет."

msgid "Plum color."
msgstr "Цвет сливы."

msgid "Powder blue color."
msgstr "Зеленовато-голубой."

msgid "Purple color."
msgstr "Фиолетовый цвет."

msgid "Rebecca purple color."
msgstr "Фиолетовый Ребекки."

msgid "Red color."
msgstr "Красный цвет."

msgid "Rosy brown color."
msgstr "Розово-коричневый."

msgid "Royal blue color."
msgstr "Королевский синий."

msgid "Saddle brown color."
msgstr "Кожаного седла."

msgid "Salmon color."
msgstr "Цвет лосося."

msgid "Sandy brown color."
msgstr "Рыжеватый."

msgid "Sea green color."
msgstr "Морской волны."

msgid "Seashell color."
msgstr "Цвет морской раковины."

msgid "Sienna color."
msgstr "Цвет сиены."

msgid "Silver color."
msgstr "Серебряный цвет."

msgid "Sky blue color."
msgstr "Небесно-голубой цвет."

msgid "Slate blue color."
msgstr "Аспидно-синий."

msgid "Slate gray color."
msgstr "Серый шифер."

msgid "Snow color."
msgstr "Цвет снега."

msgid "Spring green color."
msgstr "Зелёная весна."

msgid "Steel blue color."
msgstr "Голубовато-стальной."

msgid "Tan color."
msgstr "Цвет загара."

msgid "Teal color."
msgstr "Цвет тила."

msgid "Thistle color."
msgstr "Цвет чертополоха."

msgid "Tomato color."
msgstr "Цвет томатов."

msgid "Transparent color (white with zero alpha)."
msgstr "Прозрачный цвет (белый с нулевой альфа-каналом)."

msgid "Turquoise color."
msgstr "Бирюзовый цвет."

msgid "Violet color."
msgstr "Фиолетовый цвет."

msgid "Web gray color."
msgstr "Серый."

msgid "Web green color."
msgstr "Зеленый."

msgid "Web maroon color."
msgstr "Бордовый."

msgid "Web purple color."
msgstr "Пурпурный."

msgid "Wheat color."
msgstr "Цвет пшеницы."

msgid "White color."
msgstr "Белый цвет."

msgid "White smoke color."
msgstr "Дымчатый."

msgid "Yellow color."
msgstr "Желтый цвет."

msgid "Yellow green color."
msgstr "Желто-зеленый."

msgid ""
"Returns [code]true[/code] if the colors are not exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если цвета не совсем равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx] вместо этого, что более "
"надежно."

msgid ""
"Multiplies each component of the [Color] by the components of the given "
"[Color]."
msgstr "Умножает каждый компонент [Color] на компоненты заданного [Color]."

msgid "Multiplies each component of the [Color] by the given [float]."
msgstr "Умножает каждый компонент [Color] на заданное [float]."

msgid "Multiplies each component of the [Color] by the given [int]."
msgstr "Умножает каждый компонент [Color] на заданное [int]."

msgid ""
"Adds each component of the [Color] with the components of the given [Color]."
msgstr "Складывает каждый компонент [Color] с компонентами указанного [Color]."

msgid ""
"Subtracts each component of the [Color] by the components of the given "
"[Color]."
msgstr "Вычитает каждый компонент [Color] из компонентов заданного [Color]."

msgid ""
"Divides each component of the [Color] by the components of the given [Color]."
msgstr "Делит каждый компонент [Color] на компоненты заданного [Color]."

msgid "Divides each component of the [Color] by the given [float]."
msgstr ""
"Делит каждый компонент [Color] на заданное [float - число с плавающей точкой]."

msgid "Divides each component of the [Color] by the given [int]."
msgstr "Делит каждый компонент [Color] на заданное [int]."

msgid ""
"Returns [code]true[/code] if the colors are exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если цвета точно равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx] вместо этого, что более "
"надежно."

msgid ""
"Access color components using their index. [code][0][/code] is equivalent to "
"[member r], [code][1][/code] is equivalent to [member g], [code][2][/code] is "
"equivalent to [member b], and [code][3][/code] is equivalent to [member a]."
msgstr ""
"Доступ к компонентам цвета осуществляется с помощью их индекса. [code][0][/"
"code] эквивалентно [member r], [code][1][/code] эквивалентно [member g], "
"[code][2][/code] эквивалентно [member b], а [code][3][/code] эквивалентно "
"[member a]."

msgid ""
"Returns the same value as if the [code]+[/code] was not there. Unary [code]+[/"
"code] does nothing, but sometimes it can make your code more readable."
msgstr ""
"Возвращает то же значение, как если бы [code]+[/code] не было. Унарный [code]+"
"[/code] ничего не делает, но иногда он может сделать ваш код более читаемым."

msgid ""
"Inverts the given color. This is equivalent to [code]Color.WHITE - c[/code] "
"or [code]Color(1 - c.r, 1 - c.g, 1 - c.b, 1 - c.a)[/code]. Unlike with "
"[method inverted], the [member a] component is inverted, too."
msgstr ""
"Инвертирует заданный цвет. Это эквивалентно [code]Color.WHITE - c[/code] или "
"[code]Color(1 - c.r, 1 - c.g, 1 - c.b, 1 - c.a)[/code]. В отличие от [method "
"inverted], компонент [member a] также инвертируется."

msgid ""
"A resource class for managing a palette of colors, which can be loaded and "
"saved using [ColorPicker]."
msgstr ""
"Класс ресурсов для управления палитрой цветов, которую можно загрузить и "
"сохранить с помощью [ColorPicker]."

msgid ""
"The [ColorPalette] resource is designed to store and manage a collection of "
"colors. This resource is useful in scenarios where a predefined set of colors "
"is required, such as for creating themes, designing user interfaces, or "
"managing game assets. The built-in [ColorPicker] control can also make use of "
"[ColorPalette] without additional code."
msgstr ""
"Ресурс [ColorPalette] предназначен для хранения и управления коллекцией "
"цветов. Этот ресурс полезен в сценариях, где требуется предопределенный набор "
"цветов, например, для создания тем, проектирования пользовательских "
"интерфейсов или управления игровыми ресурсами. Встроенный элемент управления "
"[ColorPicker] также может использовать [ColorPalette] без дополнительного "
"кода."

msgid "A [PackedColorArray] containing the colors in the palette."
msgstr "[PackedColorArray], содержащий цвета в палитре."

msgid "A widget that provides an interface for selecting or modifying a color."
msgstr "Виджет, предоставляющий интерфейс для выбора или изменения цвета."

msgid ""
"A widget that provides an interface for selecting or modifying a color. It "
"can optionally provide functionalities like a color sampler (eyedropper), "
"color modes, and presets.\n"
"[b]Note:[/b] This control is the color picker widget itself. You can use a "
"[ColorPickerButton] instead if you need a button that brings up a "
"[ColorPicker] in a popup."
msgstr ""
"Виджет, предоставляющий интерфейс для выбора или изменения цвета. Он может "
"дополнительно предоставлять такие функции, как сэмплер цвета (пипетка), "
"цветовые режимы и предустановки.\n"
"[b]Примечание:[/b] Этот элемент управления сам по себе является виджетом "
"выбора цвета. Вы можете использовать [ColorPickerButton] вместо этого, если "
"вам нужна кнопка, которая вызывает [ColorPicker] во всплывающем окне."

msgid ""
"Adds the given color to a list of color presets. The presets are displayed in "
"the color picker and the user will be able to select them.\n"
"[b]Note:[/b] The presets list is only for [i]this[/i] color picker."
msgstr ""
"Добавляет заданный цвет в список цветовых предустановок. Предустановки "
"отображаются в палитре цветов, и пользователь может их выбрать.\n"
"[b]Примечание:[/b] Список предустановок предназначен только для [i]этой[/i] "
"палитры цветов."

msgid ""
"Adds the given color to a list of color recent presets so that it can be "
"picked later. Recent presets are the colors that were picked recently, a new "
"preset is automatically created and added to recent presets when you pick a "
"new color.\n"
"[b]Note:[/b] The recent presets list is only for [i]this[/i] color picker."
msgstr ""
"Добавляет заданный цвет в список недавних предустановок цвета, чтобы его "
"можно было выбрать позже. Недавние предустановки — это цвета, которые были "
"выбраны недавно, новая предустановка автоматически создается и добавляется в "
"недавние предустановки, когда вы выбираете новый цвет.\n"
"[b]Примечание:[/b] Список недавних предустановок предназначен только для "
"[i]этого[/i] селектора цветов."

msgid ""
"Removes the given color from the list of color presets of this color picker."
msgstr ""
"Удаляет указанный цвет из списка цветовых предустановок данной палитры цветов."

msgid ""
"Removes the given color from the list of color recent presets of this color "
"picker."
msgstr ""
"Удаляет указанный цвет из списка последних предустановок цветов этой палитры "
"цветов."

msgid "Returns the list of colors in the presets of the color picker."
msgstr "Возвращает список цветов в предустановках палитры цветов."

msgid "Returns the list of colors in the recent presets of the color picker."
msgstr "Возвращает список цветов в последних предустановках палитры цветов."

msgid ""
"If [code]true[/code], it's possible to add presets under Swatches. If "
"[code]false[/code], the button to add presets is disabled."
msgstr ""
"Если [code]true[/code], можно добавлять пресеты в Swatches. Если [code]false[/"
"code], кнопка добавления пресетов отключена."

msgid "The currently selected color."
msgstr "Текущий выбранный цвет."

msgid "The currently selected color mode."
msgstr "Текущий выбранный цветовой режим."

msgid "If [code]true[/code], the color mode buttons are visible."
msgstr "Если [code]true[/code], кнопки цветового режима видны."

msgid ""
"If [code]true[/code], the color will apply only after the user releases the "
"mouse button, otherwise it will apply immediately even in mouse motion event "
"(which can cause performance issues)."
msgstr ""
"Если [code]true[/code], цвет будет применен только после того, как "
"пользователь отпустит кнопку мыши, в противном случае он будет применен "
"немедленно, даже при событии движения мыши (что может вызвать проблемы с "
"производительностью)."

msgid "If [code]true[/code], shows an alpha channel slider (opacity)."
msgstr ""
"Если [code]true[/code], отображается ползунок альфа-канала (непрозрачность)."

msgid ""
"If [code]true[/code], shows an intensity slider. The intensity is applied as "
"follows: multiply the color by [code]2 ** intensity[/code] in linear RGB "
"space, and then convert it back to sRGB."
msgstr ""
"Если [code]true[/code], показывает ползунок интенсивности. Интенсивность "
"применяется следующим образом: умножьте цвет на [code]2 ** intensity[/code] в "
"линейном пространстве RGB, а затем преобразуйте его обратно в sRGB."

msgid "If [code]true[/code], the hex color code input field is visible."
msgstr ""
"Если [code]true[/code], поле ввода шестнадцатеричного кода цвета будет видимо."

msgid "The shape of the color space view."
msgstr "Форма представления цветового пространства."

msgid ""
"If [code]true[/code], the Swatches and Recent Colors presets are visible."
msgstr ""
"Если [code]true[/code], отображаются предустановки «Образцы» и «Недавние "
"цвета»."

msgid "If [code]true[/code], the color sampler and color preview are visible."
msgstr ""
"Если [code]true[/code], отображаются цветовой сэмплер и предварительный "
"просмотр цвета."

msgid "If [code]true[/code], the color sliders are visible."
msgstr "Если [code]true[/code], цветовые ползунки видны."

msgid "Emitted when the color is changed."
msgstr "Излучается при изменении цвета."

msgid "Emitted when a preset is added."
msgstr "Выдается при добавлении пресета."

msgid "Emitted when a preset is removed."
msgstr "Выдается при удалении предустановки."

msgid ""
"Allows editing the color with Red/Green/Blue sliders in sRGB color space."
msgstr ""
"Позволяет редактировать цвет с помощью ползунков Красный/Зеленый/Синий в "
"цветовом пространстве sRGB."

msgid "Allows editing the color with Hue/Saturation/Value sliders."
msgstr ""
"Позволяет редактировать цвет с помощью ползунков «Оттенок/Насыщенность/"
"Значение»."

msgid "This is replaced by [constant MODE_LINEAR]."
msgstr "Это заменяется на [constant MODE_LINEAR]."

msgid ""
"Allows editing the color with Red/Green/Blue sliders in linear color space."
msgstr ""
"Позволяет редактировать цвет с помощью ползунков Красный/Зеленый/Синий в "
"линейном цветовом пространстве."

msgid ""
"Allows editing the color with Hue/Saturation/Lightness sliders.\n"
"OKHSL is a new color space similar to HSL but that better match perception by "
"leveraging the Oklab color space which is designed to be simple to use, while "
"doing a good job at predicting perceived lightness, chroma and hue.\n"
"[url=https://bottosson.github.io/posts/colorpicker/]Okhsv and Okhsl color "
"spaces[/url]"
msgstr ""
"Позволяет редактировать цвет с помощью ползунков Hue/Saturation/Lightness.\n"
"OKHSL — это новое цветовое пространство, похожее на HSL, но лучше "
"соответствующее восприятию за счет использования цветового пространства "
"Oklab, которое разработано для простоты использования, при этом хорошо "
"предсказывая воспринимаемую светлоту, цветность и оттенок.\n"
"[url=https://bottosson.github.io/posts/colorpicker/]Цветовые пространства "
"Okhsv и Okhsl[/url]"

msgid "HSV Color Model rectangle color space."
msgstr "Цветовая модель HSV — прямоугольное цветовое пространство."

msgid "HSV Color Model rectangle color space with a wheel."
msgstr "Цветовая модель HSV — прямоугольное цветовое пространство с кругом."

msgid "HSV Color Model circle color space. Use Saturation as a radius."
msgstr ""
"Круговое цветовое пространство HSV Color Model. Используйте Saturation в "
"качестве радиуса."

msgid "HSL OK Color Model circle color space."
msgstr "Круговое цветовое пространство модели HSL OK Color."

msgid ""
"The color space shape and the shape select button are hidden. Can't be "
"selected from the shapes popup."
msgstr ""
"Форма цветового пространства и кнопка выбора формы скрыты. Невозможно выбрать "
"из всплывающего окна форм."

msgid "OKHSL Color Model rectangle with constant lightness."
msgstr "Цветовая модель OKHSL — прямоугольник с постоянной яркостью."

msgid "OKHSL Color Model rectangle with constant saturation."
msgstr "Цветовая модель OKHSL — прямоугольник с постоянной насыщенностью."

msgid ""
"Color of rectangle or circle drawn when a picker shape part is focused but "
"not editable via keyboard or joypad. Displayed [i]over[/i] the picker shape, "
"so a partially transparent color should be used to ensure the picker shape "
"remains visible."
msgstr ""
"Цвет прямоугольника или круга, нарисованного, когда часть фигуры выбора "
"находится в фокусе, но не может быть отредактирована с помощью клавиатуры или "
"джойстика. Отображается [i]над[/i] фигурой выбора, поэтому следует "
"использовать частично прозрачный цвет, чтобы фигура выбора оставалась видимой."

msgid ""
"Overrides the [theme_item Slider.center_grabber] theme property of the "
"sliders."
msgstr ""
"Переопределяет свойство темы [theme_item Slider.center_grabber] ползунков."

msgid "The width of the hue selection slider."
msgstr "Ширина ползунка выбора оттенка."

msgid "The minimum width of the color labels next to sliders."
msgstr "Минимальная ширина цветных меток рядом с ползунками."

msgid "The margin around the [ColorPicker]."
msgstr "Поле вокруг [ColorPicker]."

msgid "The height of the saturation-value selection box."
msgstr "Высота поля выбора значения насыщенности."

msgid "The width of the saturation-value selection box."
msgstr "Ширина поля выбора значения насыщенности."

msgid "The icon for the \"Add Preset\" button."
msgstr "Значок кнопки «Добавить предустановку»."

msgid "The texture for the arrow grabber."
msgstr "Текстура для захвата стрел (arrow grabber)."

msgid "Custom texture for the hue selection slider on the right."
msgstr "Пользовательская текстура для ползунка выбора оттенка справа."

msgid "The icon for the button that switches color text to hexadecimal."
msgstr "Значок кнопки, переключающей цветной текст на шестнадцатеричный."

msgid "The icon for color preset drop down menu when expanded."
msgstr "Значок раскрывающегося меню предустановок цвета в развернутом виде."

msgid "The icon for color preset drop down menu when folded."
msgstr "Значок раскрывающегося меню предустановок цвета в сложенном виде."

msgid "The icon for color preset option menu."
msgstr "Значок меню параметров предустановки цвета."

msgid ""
"The indicator used to signalize that the color value is outside the 0-1 range."
msgstr ""
"Индикатор, используемый для сигнализации о том, что значение цвета находится "
"за пределами диапазона 0-1."

msgid ""
"The image displayed over the color box/circle (depending on the [member "
"picker_shape]), marking the currently selected color."
msgstr ""
"Изображение, отображаемое поверх цветового поля/круга (в зависимости от "
"[member picker_shape]), обозначающее текущий выбранный цвет."

msgid "The fill image displayed behind the picker cursor."
msgstr "Изображение заливки, отображаемое за курсором выбора."

msgid ""
"Background panel for the color preview box (visible when the color is "
"translucent)."
msgstr ""
"Фоновая панель для окна предварительного просмотра цвета (видима, когда цвет "
"полупрозрачен)."

msgid ""
"The icon for the revert button (visible on the middle of the \"old\" color "
"when it differs from the currently selected color). This icon is modulated "
"with a dark color if the \"old\" color is bright enough, so the icon should "
"be bright to ensure visibility in both scenarios."
msgstr ""
"Значок кнопки возврата (виден в середине «старого» цвета, когда он отличается "
"от текущего выбранного цвета). Этот значок модулируется темным цветом, если "
"«старый» цвет достаточно яркий, поэтому значок должен быть ярким, чтобы "
"обеспечить видимость в обоих сценариях."

msgid "The icon for the screen color picker button."
msgstr "Значок кнопки выбора цвета экрана."

msgid "The icon for circular picker shapes."
msgstr "Значок для круглой формы инструмента выбора."

msgid "The icon for rectangular picker shapes."
msgstr "Значок для прямоугольных фигур выбора."

msgid "The icon for rectangular wheel picker shapes."
msgstr "Значок для прямоугольных форм колесного подборщика."

msgid ""
"The [StyleBox] used when the circle-shaped part of the picker is focused. "
"Displayed [i]over[/i] the picker shape, so a partially transparent [StyleBox] "
"should be used to ensure the picker shape remains visible. A [StyleBox] that "
"represents an outline or an underline works well for this purpose. To disable "
"the focus visual effect, assign a [StyleBoxEmpty] resource. Note that "
"disabling the focus visual effect will harm keyboard/controller navigation "
"usability, so this is not recommended for accessibility reasons."
msgstr ""
"[StyleBox], используемый, когда фокусируется на круглой части селектора. "
"Отображается [i]поверх[/i] формы селектора, поэтому следует использовать "
"частично прозрачный [StyleBox], чтобы форма селектора оставалась видимой. "
"[StyleBox], представляющий контур или подчеркивание, хорошо подходит для этой "
"цели. Чтобы отключить визуальный эффект фокуса, назначьте ресурс "
"[StyleBoxEmpty]. Обратите внимание, что отключение визуального эффекта фокуса "
"навредит удобству использования навигации с помощью клавиатуры/контроллера, "
"поэтому это не рекомендуется по соображениям доступности."

msgid ""
"The [StyleBox] used when the rectangle-shaped part of the picker is focused. "
"Displayed [i]over[/i] the picker shape, so a partially transparent [StyleBox] "
"should be used to ensure the picker shape remains visible. A [StyleBox] that "
"represents an outline or an underline works well for this purpose. To disable "
"the focus visual effect, assign a [StyleBoxEmpty] resource. Note that "
"disabling the focus visual effect will harm keyboard/controller navigation "
"usability, so this is not recommended for accessibility reasons."
msgstr ""
"[StyleBox], используемый, когда сфокусирована прямоугольная часть селектора. "
"Отображается [i]поверх[/i] формы селектора, поэтому следует использовать "
"частично прозрачный [StyleBox], чтобы форма селектора оставалась видимой. "
"[StyleBox], представляющий контур или подчеркивание, хорошо подходит для этой "
"цели. Чтобы отключить визуальный эффект фокуса, назначьте ресурс "
"[StyleBoxEmpty]. Обратите внимание, что отключение визуального эффекта фокуса "
"навредит удобству использования навигации с помощью клавиатуры/контроллера, "
"поэтому это не рекомендуется по соображениям доступности."

msgid ""
"The [StyleBox] used for the old color sample part when it is focused. "
"Displayed [i]over[/i] the sample, so a partially transparent [StyleBox] "
"should be used to ensure the picker shape remains visible. A [StyleBox] that "
"represents an outline or an underline works well for this purpose. To disable "
"the focus visual effect, assign a [StyleBoxEmpty] resource. Note that "
"disabling the focus visual effect will harm keyboard/controller navigation "
"usability, so this is not recommended for accessibility reasons."
msgstr ""
"[StyleBox], используемый для старой части образца цвета, когда он "
"сфокусирован. Отображается [i]поверх[/i] образца, поэтому следует "
"использовать частично прозрачный [StyleBox], чтобы гарантировать, что форма "
"выбора остается видимой. [StyleBox], представляющий контур или подчеркивание, "
"хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, "
"назначьте ресурс [StyleBoxEmpty]. Обратите внимание, что отключение "
"визуального эффекта фокуса навредит удобству использования навигации с "
"помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям "
"доступности."

msgid "A button that brings up a [ColorPicker] when pressed."
msgstr "Кнопка, при нажатии которой открывается [ColorPicker]."

msgid ""
"Encapsulates a [ColorPicker], making it accessible by pressing a button. "
"Pressing the button will toggle the [ColorPicker]'s visibility.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node.\n"
"[b]Note:[/b] By default, the button may not be wide enough for the color "
"preview swatch to be visible. Make sure to set [member "
"Control.custom_minimum_size] to a big enough value to give the button enough "
"space."
msgstr ""
"Инкапсулирует [ColorPicker], делая его доступным при нажатии кнопки. Нажатие "
"кнопки переключит видимость [ColorPicker].\n"
"См. также [BaseButton], который содержит общие свойства и методы, связанные с "
"этим узлом.\n"
"[b]Примечание:[/b] По умолчанию кнопка может быть недостаточно широкой для "
"отображения образца предварительного просмотра цвета. Обязательно установите "
"[member Control.custom_minimum_size] на достаточно большое значение, чтобы "
"предоставить кнопке достаточно места."

msgid ""
"Returns the [ColorPicker] that this node toggles.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Возвращает [ColorPicker], который переключает этот узел.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member CanvasItem.visible]."

msgid ""
"Returns the control's [PopupPanel] which allows you to connect to popup "
"signals. This allows you to handle events when the ColorPicker is shown or "
"hidden.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member Window.visible] property."
msgstr ""
"Возвращает [PopupPanel] элемента управления, который позволяет подключаться к "
"всплывающим сигналам. Это позволяет обрабатывать события, когда ColorPicker "
"отображается или скрывается.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member Window.visible]."

msgid ""
"If [code]true[/code], the alpha channel in the displayed [ColorPicker] will "
"be visible."
msgstr ""
"Если [code]true[/code], альфа-канал в отображаемом [ColorPicker] будет виден."

msgid ""
"If [code]true[/code], the intensity slider in the displayed [ColorPicker] "
"will be visible."
msgstr ""
"Если [code]true[/code], ползунок интенсивности в отображаемом [ColorPicker] "
"будет виден."

msgid "Emitted when the color changes."
msgstr "Излучается при изменении цвета."

msgid ""
"Emitted when the [ColorPicker] is created (the button is pressed for the "
"first time)."
msgstr "Генерируется при создании [ColorPicker] (кнопка нажата в первый раз)."

msgid "Emitted when the [ColorPicker] is closed."
msgstr "Выдается при закрытии [ColorPicker]."

msgid "The background of the color preview rect on the button."
msgstr "Фон прямоугольника предварительного просмотра цвета на кнопке."

msgid "A control that displays a solid color rectangle."
msgstr "Элемент управления, отображающий сплошной цветной прямоугольник."

msgid ""
"Displays a rectangle filled with a solid [member color]. If you need to "
"display the border alone, consider using a [Panel] instead."
msgstr ""
"Отображает прямоугольник, заполненный сплошным [param colors]. Если вам нужно "
"отобразить только границу, рассмотрите возможность использования [Panel]."

msgid "The fill color of the rectangle."
msgstr "Цвет заливки прямоугольника."

msgid ""
"More customization of the rendering pipeline will be added in the future."
msgstr ""
"В будущем будут добавлены дополнительные возможности настройки конвейера "
"рендеринга."

msgid "Stores attributes used to customize how a Viewport is rendered."
msgstr ""
"Сохраняет атрибуты, используемые для настройки способа визуализации области "
"просмотра."

msgid ""
"The compositor resource stores attributes used to customize how a [Viewport] "
"is rendered."
msgstr ""
"Ресурс композитора хранит атрибуты, используемые для настройки способа "
"визуализации [Viewport]."

msgid "The Compositor"
msgstr "Композитор"

msgid ""
"The custom [CompositorEffect]s that are applied during rendering of viewports "
"using this compositor."
msgstr ""
"Пользовательские [CompositorEffect]-ы, которые применяются во время "
"рендеринга видовых экранов с использованием этого композитора."

msgid ""
"The implementation may change as more of the rendering internals are exposed "
"over time."
msgstr ""
"Реализация может измениться, поскольку со временем внутренние механизмы "
"рендеринга будут раскрыты."

msgid "This resource allows for creating a custom rendering effect."
msgstr "Этот ресурс позволяет создавать индивидуальный эффект рендеринга."

msgid ""
"This resource defines a custom rendering effect that can be applied to "
"[Viewport]s through the viewports' [Environment]. You can implement a "
"callback that is called during rendering at a given stage of the rendering "
"pipeline and allows you to insert additional passes. Note that this callback "
"happens on the rendering thread. CompositorEffect is an abstract base class "
"and must be extended to implement specific rendering logic."
msgstr ""
"Этот ресурс определяет пользовательский эффект рендеринга, который может быть "
"применен к [Viewport] через [Environment] видовых экранов. Вы можете "
"реализовать обратный вызов, который вызывается во время рендеринга на "
"заданном этапе конвейера рендеринга и позволяет вставлять дополнительные "
"проходы. Обратите внимание, что этот обратный вызов происходит в потоке "
"рендеринга. CompositorEffect — это абстрактный базовый класс, который должен "
"быть расширен для реализации определенной логики рендеринга."

msgid ""
"Implement this function with your custom rendering code. [param "
"effect_callback_type] should always match the effect callback type you've "
"specified in [member effect_callback_type]. [param render_data] provides "
"access to the rendering state, it is only valid during rendering and should "
"not be stored."
msgstr ""
"Реализуйте эту функцию с помощью своего пользовательского кода рендеринга. "
"[param effect_callback_type] всегда должен соответствовать типу обратного "
"вызова эффекта, указанному вами в [member effect_callback_type]. [param "
"render_data] предоставляет доступ к состоянию рендеринга, он действителен "
"только во время рендеринга и не должен сохраняться."

msgid ""
"If [code]true[/code] and MSAA is enabled, this will trigger a color buffer "
"resolve before the effect is run.\n"
"[b]Note:[/b] In [method _render_callback], to access the resolved buffer "
"use:\n"
"[codeblock]\n"
"var render_scene_buffers = render_data.get_render_scene_buffers()\n"
"var color_buffer = render_scene_buffers.get_texture(\"render_buffers\", "
"\"color\")\n"
"[/codeblock]"
msgstr ""
"Если [code]true[/code] и MSAA включен, это вызовет разрешение буфера цвета "
"перед запуском эффекта.\n"
"[b]Примечание:[/b] В [method _render_callback] для доступа к разрешенному "
"буферу используйте:\n"
"[codeblock]\n"
"var render_scene_buffers = render_data.get_render_scene_buffers()\n"
"var color_buffer = render_scene_buffers.get_texture(\"render_buffers\", "
"\"color\")\n"
"[/codeblock]"

msgid ""
"If [code]true[/code] and MSAA is enabled, this will trigger a depth buffer "
"resolve before the effect is run.\n"
"[b]Note:[/b] In [method _render_callback], to access the resolved buffer "
"use:\n"
"[codeblock]\n"
"var render_scene_buffers = render_data.get_render_scene_buffers()\n"
"var depth_buffer = render_scene_buffers.get_texture(\"render_buffers\", "
"\"depth\")\n"
"[/codeblock]"
msgstr ""
"Если [code]true[/code] и MSAA включен, это запустит разрешение буфера глубины "
"перед запуском эффекта.\n"
"[b]Примечание:[/b] В [method _render_callback] для доступа к разрешенному "
"буферу используйте:\n"
"[codeblock]\n"
"var render_scene_buffers = render_data.get_render_scene_buffers()\n"
"var depth_buffer = render_scene_buffers.get_texture(\"render_buffers\", "
"\"depth\")\n"
"[/codeblock]"

msgid ""
"The type of effect that is implemented, determines at what stage of rendering "
"the callback is called."
msgstr ""
"Тип реализуемого эффекта определяет, на каком этапе рендеринга будет вызван "
"обратный вызов."

msgid ""
"If [code]true[/code] this rendering effect is applied to any viewport it is "
"added to."
msgstr ""
"Если [code]true[/code], этот эффект рендеринга применяется к любой области "
"просмотра, к которой он добавлен."

msgid ""
"If [code]true[/code] this triggers motion vectors being calculated during the "
"opaque render state.\n"
"[b]Note:[/b] In [method _render_callback], to access the motion vector buffer "
"use:\n"
"[codeblock]\n"
"var render_scene_buffers = render_data.get_render_scene_buffers()\n"
"var motion_buffer = render_scene_buffers.get_velocity_texture()\n"
"[/codeblock]"
msgstr ""
"Если [code]true[/code], это запускает вычисление векторов движения во время "
"непрозрачного состояния рендеринга.\n"
"[b]Примечание:[/b] В [method _render_callback] для доступа к буферу векторов "
"движения используйте:\n"
"[codeblock]\n"
"var render_scene_buffers = render_data.get_render_scene_buffers()\n"
"var motion_buffer = render_scene_buffers.get_velocity_texture()\n"
"[/codeblock]"

msgid ""
"If [code]true[/code] this triggers normal and roughness data to be output "
"during our depth pre-pass, only applicable for the Forward+ renderer.\n"
"[b]Note:[/b] In [method _render_callback], to access the roughness buffer "
"use:\n"
"[codeblock]\n"
"var render_scene_buffers = render_data.get_render_scene_buffers()\n"
"var roughness_buffer = "
"render_scene_buffers.get_texture(\"forward_clustered\", "
"\"normal_roughness\")\n"
"[/codeblock]\n"
"The raw normal and roughness buffer is stored in an optimized format, "
"different than the one available in Spatial shaders. When sampling the "
"buffer, a conversion function must be applied. Use this function, copied from "
"[url=https://github.com/godotengine/godot/blob/"
"da5f39889f155658cef7f7ec3cc1abb94e17d815/servers/rendering/renderer_rd/"
"shaders/forward_clustered/scene_forward_clustered_inc.glsl#L334-L341]here[/"
"url]:\n"
"[codeblock]\n"
"vec4 normal_roughness_compatibility(vec4 p_normal_roughness) {\n"
"\tfloat roughness = p_normal_roughness.w;\n"
"\tif (roughness > 0.5) {\n"
"\t\troughness = 1.0 - roughness;\n"
"\t}\n"
"\troughness /= (127.0 / 255.0);\n"
"\treturn vec4(normalize(p_normal_roughness.xyz * 2.0 - 1.0) * 0.5 + 0.5, "
"roughness);\n"
"}\n"
"[/codeblock]"
msgstr ""
"Если [code]true[/code], это запускает вывод данных нормали и шероховатости во "
"время нашего предварительного прохода глубины, применимо только для рендерера "
"Forward+.\n"
"[b]Примечание:[/b] В [method _render_callback] для доступа к буферу "
"шероховатости используйте:\n"
"[codeblock]\n"
"var render_scene_buffers = render_data.get_render_scene_buffers()\n"
"var roughness_buffer = "
"render_scene_buffers.get_texture(\"forward_clustered\", "
"\"normal_roughness\")\n"
"[/codeblock]\n"
"Необработанный буфер нормалей и шероховатости хранится в оптимизированном "
"формате, отличном от того, который доступен в пространственных шейдерах. При "
"сэмплировании буфера необходимо применить функцию преобразования. Используйте "
"эту функцию, скопированную от [url=https://github.com/godotengine/godot/blob/"
"da5f39889f155658cef7f7ec3cc1abb94e17d815/servers/rendering/renderer_rd/"
"shaders/forward_clustered/scene_forward_clustered_inc.glsl#L334-L341]сюда[/"
"url]:\n"
"[codeblock]\n"
"vec4 normal_roughness_compatibility(vec4 p_normal_roughness) {\n"
"\tfloat roughness = p_normal_roughness.w;\n"
"\tif (roughness > 0.5) {\n"
"\t\troughness = 1.0 - roughness;\n"
"\t}\n"
"\troughness /= (127.0 / 255.0);\n"
"\treturn vec4(normalize(p_normal_roughness.xyz * 2.0 - 1.0) * 0.5 + 0.5, "
"roughness);\n"
"}\n"
"[/codeblock]"

msgid ""
"If [code]true[/code] this triggers specular data being rendered to a separate "
"buffer and combined after effects have been applied, only applicable for the "
"Forward+ renderer."
msgstr ""
"Если [code]true[/code], это запускает рендеринг зеркальных данных в отдельный "
"буфер и их объединение после применения эффектов, применимо только для "
"рендерера Forward+."

msgid ""
"The callback is called before our opaque rendering pass, but after depth "
"prepass (if applicable)."
msgstr ""
"Обратный вызов выполняется перед нашим проходом рендеринга непрозрачности, но "
"после предварительного прохода глубины (если применимо)."

msgid ""
"The callback is called after our opaque rendering pass, but before our sky is "
"rendered."
msgstr ""
"Обратный вызов выполняется после прохода рендеринга непрозрачности, но до "
"рендеринга неба."

msgid ""
"The callback is called after our sky is rendered, but before our back buffers "
"are created (and if enabled, before subsurface scattering and/or screen space "
"reflections)."
msgstr ""
"Обратный вызов вызывается после того, как наше небо отрисовано, но до "
"создания наших обратных буферов (и, если они включены, до подповерхностного "
"рассеивания и/или отражений в пространстве экрана)."

msgid ""
"The callback is called before our transparent rendering pass, but after our "
"sky is rendered and we've created our back buffers."
msgstr ""
"Обратный вызов выполняется до прохода прозрачного рендеринга, но после того, "
"как небо отрисовано и мы создали обратные буферы."

msgid ""
"The callback is called after our transparent rendering pass, but before any "
"built-in post-processing effects and output to our render target."
msgstr ""
"Обратный вызов выполняется после прохода прозрачного рендеринга, но до любых "
"встроенных эффектов постобработки и вывода на нашу цель рендеринга."

msgid "Represents the size of the [enum EffectCallbackType] enum."
msgstr "Представляет размер перечисления [enum EffectCallbackType]."

msgid "An optionally compressed [Cubemap]."
msgstr "Опционально сжатая [Cubemap]."

msgid ""
"A cubemap that is loaded from a [code].ccube[/code] file. This file format is "
"internal to Godot; it is created by importing other image formats with the "
"import system. [CompressedCubemap] can use one of 4 compression methods:\n"
"- Lossless (WebP or PNG, uncompressed on the GPU)\n"
"- Lossy (WebP, uncompressed on the GPU)\n"
"- VRAM Compressed (compressed on the GPU)\n"
"- VRAM Uncompressed (uncompressed on the GPU)\n"
"- Basis Universal (compressed on the GPU. Lower file sizes than VRAM "
"Compressed, but slower to compress and lower quality than VRAM Compressed)\n"
"Only [b]VRAM Compressed[/b] actually reduces the memory usage on the GPU. The "
"[b]Lossless[/b] and [b]Lossy[/b] compression methods will reduce the required "
"storage on disk, but they will not reduce memory usage on the GPU as the "
"texture is sent to the GPU uncompressed.\n"
"Using [b]VRAM Compressed[/b] also improves loading times, as VRAM-compressed "
"textures are faster to load compared to textures using lossless or lossy "
"compression. VRAM compression can exhibit noticeable artifacts and is "
"intended to be used for 3D rendering, not 2D.\n"
"See [Cubemap] for a general description of cubemaps."
msgstr ""
"Кубическая карта, загруженная из файла [code].ccube[/code]. Этот формат файла "
"является внутренним для Godot; он создается путем импорта других форматов "
"изображений с помощью системы импорта. [CompressedCubemap] может использовать "
"один из 4 методов сжатия:\n"
"-Lossless (WebP или PNG, несжатый на GPU)\n"
"- Lossy (WebP, несжатый на GPU)\n"
"- VRAM Compressed (сжато на GPU)\n"
"- VRAM Uncompressed (несжато на GPU)\n"
"-Basis Universal (сжато на GPU. Меньшие размеры файлов, чем VRAM Compressed, "
"но сжимается медленнее и качество ниже, чем VRAM Compressed)\n"
"Только [b]VRAM Compressed[/b] на самом деле уменьшает использование памяти на "
"GPU. Методы сжатия [b]Lossless[/b] и [b]Lossy[/b] уменьшат требуемое "
"хранилище на диске, но они не уменьшат использование памяти на GPU, поскольку "
"текстура отправляется на GPU в несжатом виде.\n"
"Использование [b]VRAM Compressed[/b] также сокращает время загрузки, "
"поскольку текстуры, сжатые VRAM, загружаются быстрее по сравнению с "
"текстурами, использующими сжатие без потерь или с потерями. Сжатие VRAM может "
"вызывать заметные артефакты и предназначено для использования в 3D-"
"рендеринге, а не в 2D.\n"
"Общее описание кубических карт см. в разделе [Cubemap]."

msgid "An optionally compressed [CubemapArray]."
msgstr "Необязательно сжатый [CubemapArray]."

msgid ""
"A cubemap array that is loaded from a [code].ccubearray[/code] file. This "
"file format is internal to Godot; it is created by importing other image "
"formats with the import system. [CompressedCubemapArray] can use one of 4 "
"compression methods:\n"
"- Lossless (WebP or PNG, uncompressed on the GPU)\n"
"- Lossy (WebP, uncompressed on the GPU)\n"
"- VRAM Compressed (compressed on the GPU)\n"
"- VRAM Uncompressed (uncompressed on the GPU)\n"
"- Basis Universal (compressed on the GPU. Lower file sizes than VRAM "
"Compressed, but slower to compress and lower quality than VRAM Compressed)\n"
"Only [b]VRAM Compressed[/b] actually reduces the memory usage on the GPU. The "
"[b]Lossless[/b] and [b]Lossy[/b] compression methods will reduce the required "
"storage on disk, but they will not reduce memory usage on the GPU as the "
"texture is sent to the GPU uncompressed.\n"
"Using [b]VRAM Compressed[/b] also improves loading times, as VRAM-compressed "
"textures are faster to load compared to textures using lossless or lossy "
"compression. VRAM compression can exhibit noticeable artifacts and is "
"intended to be used for 3D rendering, not 2D.\n"
"See [CubemapArray] for a general description of cubemap arrays."
msgstr ""
"Массив кубических карт, загруженный из файла [code].ccubearray[/code]. Этот "
"формат файла является внутренним для Godot; он создается путем импорта других "
"форматов изображений с помощью системы импорта. [CompressedCubemapArray] "
"может использовать один из 4 методов сжатия:\n"
"- Lossless (WebP или PNG, несжатый на GPU)\n"
"- Lossy (WebP, несжатый на GPU)\n"
"- VRAM Compressed (сжатый на GPU)\n"
"- VRAM Uncompressed (несжатый на GPU)\n"
"- Basis Universal (сжато на GPU. Меньшие размеры файлов, чем VRAM Compressed, "
"но сжимается медленнее и качество ниже, чем VRAM Compressed)\n"
"Только [b]VRAM Compressed[/b] на самом деле уменьшает использование памяти на "
"GPU. Методы сжатия [b]Lossless[/b] и [b]Lossy[/b] уменьшат требуемое "
"хранилище на диске, но они не уменьшат использование памяти на GPU, поскольку "
"текстура отправляется на GPU в несжатом виде.\n"
"Использование [b]VRAM Compressed[/b] также сокращает время загрузки, "
"поскольку текстуры, сжатые VRAM, загружаются быстрее по сравнению с "
"текстурами, использующими сжатие без потерь или с потерями. Сжатие VRAM может "
"вызывать заметные артефакты и предназначено для использования в 3D-"
"рендеринге, а не в 2D.\n"
"Общее описание массивов кубических карт см. в [CubemapArray]."

msgid "Texture with 2 dimensions, optionally compressed."
msgstr "Текстура с 2 измерениями, опционально сжатая."

msgid ""
"A texture that is loaded from a [code].ctex[/code] file. This file format is "
"internal to Godot; it is created by importing other image formats with the "
"import system. [CompressedTexture2D] can use one of 4 compression methods "
"(including a lack of any compression):\n"
"- Lossless (WebP or PNG, uncompressed on the GPU)\n"
"- Lossy (WebP, uncompressed on the GPU)\n"
"- VRAM Compressed (compressed on the GPU)\n"
"- VRAM Uncompressed (uncompressed on the GPU)\n"
"- Basis Universal (compressed on the GPU. Lower file sizes than VRAM "
"Compressed, but slower to compress and lower quality than VRAM Compressed)\n"
"Only [b]VRAM Compressed[/b] actually reduces the memory usage on the GPU. The "
"[b]Lossless[/b] and [b]Lossy[/b] compression methods will reduce the required "
"storage on disk, but they will not reduce memory usage on the GPU as the "
"texture is sent to the GPU uncompressed.\n"
"Using [b]VRAM Compressed[/b] also improves loading times, as VRAM-compressed "
"textures are faster to load compared to textures using lossless or lossy "
"compression. VRAM compression can exhibit noticeable artifacts and is "
"intended to be used for 3D rendering, not 2D."
msgstr ""
"Текстура, загружаемая из файла [code].ctex[/code]. Этот формат файла является "
"внутренним для Godot; он создается путем импорта других форматов изображений "
"с помощью системы импорта. [CompressedTexture2D] может использовать один из 4 "
"методов сжатия (включая отсутствие какого-либо сжатия):\n"
"- Lossless (WebP or PNG, uncompressed on the GPU)\n"
"- Lossy (WebP, несжатый на GPU)\n"
"- VRAM Compressed (сжатый на GPU)\n"
"- VRAM Uncompressed (сжатый на GPU)\n"
"- Basis Universal (сжатый на GPU. Меньшие размеры файлов, чем VRAM "
"Compressed, но медленнее сжимается и имеет более низкое качество, чем VRAM "
"Compressed)\n"
"Только [b]VRAM Compressed[/b] на самом деле уменьшает использование памяти на "
"GPU. Методы сжатия [b]Lossless[/b] и [b]Lossy[/b] уменьшат требуемое "
"хранилище на диске, но они не уменьшат использование памяти на GPU, поскольку "
"текстура отправляется на GPU в несжатом виде.\n"
"Использование [b]VRAM Compressed[/b] также сокращает время загрузки, "
"поскольку текстуры, сжатые VRAM, загружаются быстрее по сравнению с "
"текстурами, использующими сжатие без потерь или с потерями. Сжатие VRAM может "
"демонстрировать заметные артефакты и предназначено для использования при 3D-"
"рендеринге, а не 2D."

msgid "Loads the texture from the specified [param path]."
msgstr "Загружает текстуру из указанного [param path]."

msgid "The [CompressedTexture2D]'s file path to a [code].ctex[/code] file."
msgstr "Путь к файлу [CompressedTexture2D] к файлу [code].ctex[/code]."

msgid "Array of 2-dimensional textures, optionally compressed."
msgstr "Массив двумерных текстур, опционально сжатых."

msgid ""
"A texture array that is loaded from a [code].ctexarray[/code] file. This file "
"format is internal to Godot; it is created by importing other image formats "
"with the import system. [CompressedTexture2DArray] can use one of 4 "
"compression methods:\n"
"- Lossless (WebP or PNG, uncompressed on the GPU)\n"
"- Lossy (WebP, uncompressed on the GPU)\n"
"- VRAM Compressed (compressed on the GPU)\n"
"- VRAM Uncompressed (uncompressed on the GPU)\n"
"- Basis Universal (compressed on the GPU. Lower file sizes than VRAM "
"Compressed, but slower to compress and lower quality than VRAM Compressed)\n"
"Only [b]VRAM Compressed[/b] actually reduces the memory usage on the GPU. The "
"[b]Lossless[/b] and [b]Lossy[/b] compression methods will reduce the required "
"storage on disk, but they will not reduce memory usage on the GPU as the "
"texture is sent to the GPU uncompressed.\n"
"Using [b]VRAM Compressed[/b] also improves loading times, as VRAM-compressed "
"textures are faster to load compared to textures using lossless or lossy "
"compression. VRAM compression can exhibit noticeable artifacts and is "
"intended to be used for 3D rendering, not 2D.\n"
"See [Texture2DArray] for a general description of texture arrays."
msgstr ""
"Массив текстур, загружаемый из файла [code].ctexarray[/code]. Этот формат "
"файла является внутренним для Godot; он создается путем импорта других "
"форматов изображений с помощью системы импорта. [CompressedTexture2DArray] "
"может использовать один из 4 методов сжатия:\n"
"-Lossless (WebP или PNG, несжатые на GPU)\n"
"- Lossy (WebP, несжатые на GPU)\n"
"- VRAM Compressed (сжатые на GPU)\n"
"- VRAM Uncompressed (сжатые на GPU)\n"
"- Basis Universal (сжатые на GPU. Меньшие размеры файлов, чем VRAM "
"Compressed, но медленнее сжимаются и качество ниже, чем VRAM Compressed)\n"
"Только [b]VRAM Compressed[/b] на самом деле уменьшает использование памяти на "
"GPU. Методы сжатия [b]Lossless[/b] и [b]Lossy[/b] уменьшат требуемое "
"хранилище на диске, но они не уменьшат использование памяти на GPU, поскольку "
"текстура отправляется на GPU несжатой.\n"
"Использование [b]VRAM Compressed[/b] также сокращает время загрузки, "
"поскольку текстуры, сжатые VRAM, загружаются быстрее по сравнению с "
"текстурами, использующими сжатие без потерь или с потерями. Сжатие VRAM может "
"демонстрировать заметные артефакты и предназначено для использования для 3D-"
"рендеринга, а не 2D.\n"
"Общее описание массивов текстур см. в [Texture2DArray]."

msgid "Texture with 3 dimensions, optionally compressed."
msgstr "Текстура с 3 измерениями, опционально сжатая."

msgid ""
"[CompressedTexture3D] is the VRAM-compressed counterpart of [ImageTexture3D]. "
"The file extension for [CompressedTexture3D] files is [code].ctex3d[/code]. "
"This file format is internal to Godot; it is created by importing other image "
"formats with the import system.\n"
"[CompressedTexture3D] uses VRAM compression, which allows to reduce memory "
"usage on the GPU when rendering the texture. This also improves loading "
"times, as VRAM-compressed textures are faster to load compared to textures "
"using lossless compression. VRAM compression can exhibit noticeable artifacts "
"and is intended to be used for 3D rendering, not 2D.\n"
"See [Texture3D] for a general description of 3D textures."
msgstr ""
"[CompressedTexture3D] — это сжатый VRAM аналог [ImageTexture3D]. Расширение "
"файла для файлов [CompressedTexture3D] — [code].ctex3d[/code]. Этот формат "
"файла является внутренним для Godot; он создается путем импорта других "
"форматов изображений с помощью системы импорта.\n"
"[CompressedTexture3D] использует сжатие VRAM, что позволяет сократить "
"использование памяти на GPU при рендеринге текстуры. Это также сокращает "
"время загрузки, поскольку текстуры, сжатые VRAM, загружаются быстрее по "
"сравнению с текстурами, использующими сжатие без потерь. Сжатие VRAM может "
"демонстрировать заметные артефакты и предназначено для использования при 3D-"
"рендеринге, а не 2D.\n"
"См. [Texture3D] для общего описания 3D-текстур."

msgid "The [CompressedTexture3D]'s file path to a [code].ctex3d[/code] file."
msgstr "Путь к файлу [CompressedTexture3D] к файлу [code].ctex3d[/code]."

msgid "Base class for texture arrays that can optionally be compressed."
msgstr ""
"Базовый класс для массивов текстур, которые при необходимости можно сжать."

msgid ""
"Base class for [CompressedTexture2DArray] and [CompressedTexture3D]. Cannot "
"be used directly, but contains all the functions necessary for accessing the "
"derived resource types. See also [TextureLayered]."
msgstr ""
"Базовый класс для [CompressedTexture2DArray] и [CompressedTexture3D]. Не "
"может использоваться напрямую, но содержит все функции, необходимые для "
"доступа к производным типам ресурсов. См. также [TextureLayered]."

msgid "Loads the texture at [param path]."
msgstr "Загружает текстуру по адресу [param path]."

msgid "The path the texture should be loaded from."
msgstr "Путь, по которому должна быть загружена текстура."

msgid "A 2D polyline shape used for physics collision."
msgstr "Двумерная полилиния, используемая для физического столкновения."

msgid ""
"A 2D polyline shape, intended for use in physics. Used internally in "
"[CollisionPolygon2D] when it's in [constant "
"CollisionPolygon2D.BUILD_SEGMENTS] mode.\n"
"Being just a collection of interconnected line segments, "
"[ConcavePolygonShape2D] is the most freely configurable single 2D shape. It "
"can be used to form polygons of any nature, or even shapes that don't enclose "
"an area. However, [ConcavePolygonShape2D] is [i]hollow[/i] even if the "
"interconnected line segments do enclose an area, which often makes it "
"unsuitable for physics or detection.\n"
"[b]Note:[/b] When used for collision, [ConcavePolygonShape2D] is intended to "
"work with static [CollisionShape2D] nodes like [StaticBody2D] and will likely "
"not behave well for [CharacterBody2D]s or [RigidBody2D]s in a mode other than "
"Static.\n"
"[b]Warning:[/b] Physics bodies that are small have a chance to clip through "
"this shape when moving fast. This happens because on one frame, the physics "
"body may be on the \"outside\" of the shape, and on the next frame it may be "
"\"inside\" it. [ConcavePolygonShape2D] is hollow, so it won't detect a "
"collision.\n"
"[b]Performance:[/b] Due to its complexity, [ConcavePolygonShape2D] is the "
"slowest 2D collision shape to check collisions against. Its use should "
"generally be limited to level geometry. If the polyline is closed, "
"[CollisionPolygon2D]'s [constant CollisionPolygon2D.BUILD_SOLIDS] mode can be "
"used, which decomposes the polygon into convex ones; see "
"[ConvexPolygonShape2D]'s documentation for instructions."
msgstr ""
"Форма 2D-полилинии, предназначенная для использования в физике. Используется "
"внутри [CollisionPolygon2D], когда он находится в режиме [constant "
"CollisionPolygon2D.BUILD_SEGMENTS].\n"
"Будучи просто набором взаимосвязанных сегментов линий, "
"[ConcavePolygonShape2D] является наиболее свободно настраиваемой отдельной 2D-"
"формой. Ее можно использовать для формирования полигонов любой природы или "
"даже форм, которые не охватывают область. Однако [ConcavePolygonShape2D] "
"является [i]полой[/i], даже если взаимосвязанные сегменты линий охватывают "
"область, что часто делает ее непригодной для физики или обнаружения.\n"
"[b]Примечание:[/b] При использовании для столкновений [ConcavePolygonShape2D] "
"предназначен для работы со статическими узлами [CollisionShape2D], такими как "
"[StaticBody2D], и, скорее всего, не будет хорошо себя вести для "
"[CharacterBody2D] или [RigidBody2D] в режиме, отличном от Static.\n"
"[b]Предупреждение:[/b] Физические тела, которые имеют небольшой размер, имеют "
"шанс прорезать эту форму при быстром движении. Это происходит, потому что в "
"одном кадре физическое тело может находиться «снаружи» формы, а в следующем "
"кадре оно может оказаться «внутри» нее. [ConcavePolygonShape2D] является "
"полым, поэтому он не обнаружит столкновение.\n"
"[b]Производительность:[/b] Из-за своей сложности [ConcavePolygonShape2D] "
"является самой медленной двумерной формой столкновения для проверки "
"столкновений. Его использование, как правило, должно быть ограничено "
"геометрией уровня. Если полилиния замкнута, можно использовать режим "
"[constant CollisionPolygon2D.BUILD_SOLIDS] [CollisionPolygon2D], который "
"разбивает многоугольник на выпуклые; инструкции см. в документации "
"[ConvexPolygonShape2D]."

msgid ""
"The array of points that make up the [ConcavePolygonShape2D]'s line segments. "
"The array (of length divisible by two) is naturally divided into pairs (one "
"pair for each segment); each pair consists of the starting point of a segment "
"and the endpoint of a segment."
msgstr ""
"Массив точек, которые составляют сегменты линии [ConcavePolygonShape2D]. "
"Массив (длины, делящейся на два) естественным образом делится на пары (по "
"одной паре на каждый сегмент); каждая пара состоит из начальной точки "
"сегмента и конечной точки сегмента."

msgid "A 3D trimesh shape used for physics collision."
msgstr "Трехмерная сетка, используемая для физики столкновений."

msgid ""
"A 3D trimesh shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape3D].\n"
"Being just a collection of interconnected triangles, [ConcavePolygonShape3D] "
"is the most freely configurable single 3D shape. It can be used to form "
"polyhedra of any nature, or even shapes that don't enclose a volume. However, "
"[ConcavePolygonShape3D] is [i]hollow[/i] even if the interconnected triangles "
"do enclose a volume, which often makes it unsuitable for physics or "
"detection.\n"
"[b]Note:[/b] When used for collision, [ConcavePolygonShape3D] is intended to "
"work with static [CollisionShape3D] nodes like [StaticBody3D] and will likely "
"not behave well for [CharacterBody3D]s or [RigidBody3D]s in a mode other than "
"Static.\n"
"[b]Warning:[/b] Physics bodies that are small have a chance to clip through "
"this shape when moving fast. This happens because on one frame, the physics "
"body may be on the \"outside\" of the shape, and on the next frame it may be "
"\"inside\" it. [ConcavePolygonShape3D] is hollow, so it won't detect a "
"collision.\n"
"[b]Performance:[/b] Due to its complexity, [ConcavePolygonShape3D] is the "
"slowest 3D collision shape to check collisions against. Its use should "
"generally be limited to level geometry. For convex geometry, "
"[ConvexPolygonShape3D] should be used. For dynamic physics bodies that need "
"concave collision, several [ConvexPolygonShape3D]s can be used to represent "
"its collision by using convex decomposition; see [ConvexPolygonShape3D]'s "
"documentation for instructions."
msgstr ""
"Трехмерная тримеш-форма, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape3D].\n"
"Будучи просто набором взаимосвязанных треугольников, [ConcavePolygonShape3D] "
"является наиболее свободно настраиваемой отдельной трехмерной формой. Ее "
"можно использовать для формирования многогранников любой природы или даже "
"форм, которые не охватывают объем. Однако [ConcavePolygonShape3D] является "
"[i]полой[/i], даже если взаимосвязанные треугольники охватывают объем, что "
"часто делает ее непригодной для физики или обнаружения.\n"
"[b]Примечание:[/b] При использовании для столкновений [ConcavePolygonShape3D] "
"предназначен для работы со статическими узлами [CollisionShape3D], такими как "
"[StaticBody3D], и, скорее всего, не будет хорошо себя вести для "
"[CharacterBody3D] или [RigidBody3D] в режиме, отличном от Static.\n"
"[b]Предупреждение:[/b] Физические тела небольшого размера имеют шанс пройти "
"сквозь эту форму при быстром движении. Это происходит, потому что в одном "
"кадре физическое тело может находиться «снаружи» формы, а в следующем кадре — "
"«внутри» нее. [ConcavePolygonShape3D] — полый, поэтому он не обнаружит "
"столкновение.\n"
"[b]Производительность:[/b] Из-за своей сложности [ConcavePolygonShape3D] "
"является самой медленной 3D-формой столкновений для проверки столкновений. Ее "
"использование, как правило, должно быть ограничено геометрией уровня. Для "
"выпуклой геометрии следует использовать [ConvexPolygonShape3D]. Для "
"динамических физических тел, которым требуется вогнутое столкновение, можно "
"использовать несколько [ConvexPolygonShape3D] для представления его "
"столкновения с помощью выпуклого разложения; см. документацию "
"[ConvexPolygonShape3D] для получения инструкций."

msgid ""
"Returns the faces of the trimesh shape as an array of vertices. The array (of "
"length divisible by three) is naturally divided into triples; each triple of "
"vertices defines a triangle."
msgstr ""
"Возвращает грани формы тримеша как массив вершин. Массив (длины, делящейся на "
"три) естественным образом делится на тройки; каждая тройка вершин определяет "
"треугольник."

msgid ""
"Sets the faces of the trimesh shape from an array of vertices. The [param "
"faces] array should be composed of triples such that each triple of vertices "
"defines a triangle."
msgstr ""
"Устанавливает грани формы тримеша (trimesh) из массива вершин. Массив [param "
"faces] должен состоять из троек таким образом, чтобы каждая тройка вершин "
"определяла треугольник."

msgid ""
"If set to [code]true[/code], collisions occur on both sides of the concave "
"shape faces. Otherwise they occur only along the face normals."
msgstr ""
"Если установлено значение [code]true[/code], столкновения происходят по обе "
"стороны граней вогнутой формы. В противном случае они происходят только вдоль "
"нормалей граней."

msgid ""
"A physics joint that connects two 3D physics bodies in a way that simulates a "
"ball-and-socket joint."
msgstr ""
"Физический шарнир, соединяющий два трехмерных физических тела таким образом, "
"что он имитирует шаровой шарнир."

msgid ""
"A physics joint that connects two 3D physics bodies in a way that simulates a "
"ball-and-socket joint. The twist axis is initiated as the X axis of the "
"[ConeTwistJoint3D]. Once the physics bodies swing, the twist axis is "
"calculated as the middle of the X axes of the joint in the local space of the "
"two physics bodies. Useful for limbs like shoulders and hips, lamps hanging "
"off a ceiling, etc."
msgstr ""
"Физический сустав, который соединяет два 3D физических тела таким образом, "
"что имитирует шаровой шарнир. Ось скручивания инициируется как ось X "
"[ConeTwistJoint3D]. После того, как физические тела качаются, ось скручивания "
"вычисляется как середина осей X сустава в локальном пространстве двух "
"физических тел. Полезно для конечностей, таких как плечи и бедра, ламп, "
"свисающих с потолка и т. д."

msgid "Returns the value of the specified parameter."
msgstr "Возвращает значение указанного параметра."

msgid "Sets the value of the specified parameter."
msgstr "Устанавливает значение указанного параметра."

msgid ""
"The speed with which the swing or twist will take place.\n"
"The higher, the faster."
msgstr ""
"Скорость, с которой будет происходить взмах или поворот.\n"
"Чем выше, тем быстрее."

msgid ""
"Defines, how fast the swing- and twist-speed-difference on both sides gets "
"synced."
msgstr ""
"Определяет, насколько быстро синхронизируется разница в скорости замаха и "
"поворота с обеих сторон."

msgid ""
"The ease with which the joint starts to twist. If it's too low, it takes more "
"force to start twisting the joint."
msgstr ""
"Легкость, с которой сустав начинает скручиваться. Если она слишком низкая, "
"требуется больше силы, чтобы начать скручивать сустав."

msgid ""
"Swing is rotation from side to side, around the axis perpendicular to the "
"twist axis.\n"
"The swing span defines, how much rotation will not get corrected along the "
"swing axis.\n"
"Could be defined as looseness in the [ConeTwistJoint3D].\n"
"If below 0.05, this behavior is locked."
msgstr ""
"Качание — это вращение из стороны в сторону вокруг оси, перпендикулярной оси "
"скручивания.\n"
"Размах качания определяет, насколько вращение не будет исправлено вдоль оси "
"качания.\n"
"Может быть определено как ослабление в [ConeTwistJoint3D].\n"
"Если ниже 0,05, это поведение заблокировано."

msgid ""
"Twist is the rotation around the twist axis, this value defined how far the "
"joint can twist.\n"
"Twist is locked if below 0.05."
msgstr ""
"Скручивание — это вращение вокруг оси скручивания, это значение определяет, "
"насколько далеко может скручиваться соединение. \n"
"Скручивание блокируется, если ниже 0,05."

msgid "Represents the size of the [enum Param] enum."
msgstr "Представляет размер перечисления [enum Param]."

msgid "Helper class to handle INI-style files."
msgstr "Вспомогательный класс для обработки файлов в стиле INI."

msgid ""
"This helper class can be used to store [Variant] values on the filesystem "
"using INI-style formatting. The stored values are identified by a section and "
"a key:\n"
"[codeblock lang=text]\n"
"[section]\n"
"some_key=42\n"
"string_example=\"Hello World3D!\"\n"
"a_vector=Vector3(1, 0, 2)\n"
"[/codeblock]\n"
"The stored data can be saved to or parsed from a file, though ConfigFile "
"objects can also be used directly without accessing the filesystem.\n"
"The following example shows how to create a simple [ConfigFile] and save it "
"on disc:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Create new ConfigFile object.\n"
"var config = ConfigFile.new()\n"
"\n"
"# Store some values.\n"
"config.set_value(\"Player1\", \"player_name\", \"Steve\")\n"
"config.set_value(\"Player1\", \"best_score\", 10)\n"
"config.set_value(\"Player2\", \"player_name\", \"V3geta\")\n"
"config.set_value(\"Player2\", \"best_score\", 9001)\n"
"\n"
"# Save it to a file (overwrite if already exists).\n"
"config.save(\"user://scores.cfg\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Create new ConfigFile object.\n"
"var config = new ConfigFile();\n"
"\n"
"// Store some values.\n"
"config.SetValue(\"Player1\", \"player_name\", \"Steve\");\n"
"config.SetValue(\"Player1\", \"best_score\", 10);\n"
"config.SetValue(\"Player2\", \"player_name\", \"V3geta\");\n"
"config.SetValue(\"Player2\", \"best_score\", 9001);\n"
"\n"
"// Save it to a file (overwrite if already exists).\n"
"config.Save(\"user://scores.cfg\");\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This example shows how the above file could be loaded:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var score_data = {}\n"
"var config = ConfigFile.new()\n"
"\n"
"# Load data from a file.\n"
"var err = config.load(\"user://scores.cfg\")\n"
"\n"
"# If the file didn't load, ignore it.\n"
"if err != OK:\n"
"\treturn\n"
"\n"
"# Iterate over all sections.\n"
"for player in config.get_sections():\n"
"\t# Fetch the data for each section.\n"
"\tvar player_name = config.get_value(player, \"player_name\")\n"
"\tvar player_score = config.get_value(player, \"best_score\")\n"
"\tscore_data[player_name] = player_score\n"
"[/gdscript]\n"
"[csharp]\n"
"var score_data = new Godot.Collections.Dictionary();\n"
"var config = new ConfigFile();\n"
"\n"
"// Load data from a file.\n"
"Error err = config.Load(\"user://scores.cfg\");\n"
"\n"
"// If the file didn't load, ignore it.\n"
"if (err != Error.Ok)\n"
"{\n"
"\treturn;\n"
"}\n"
"\n"
"// Iterate over all sections.\n"
"foreach (String player in config.GetSections())\n"
"{\n"
"\t// Fetch the data for each section.\n"
"\tvar player_name = (String)config.GetValue(player, \"player_name\");\n"
"\tvar player_score = (int)config.GetValue(player, \"best_score\");\n"
"\tscore_data[player_name] = player_score;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Any operation that mutates the ConfigFile such as [method set_value], [method "
"clear], or [method erase_section], only changes what is loaded in memory. If "
"you want to write the change to a file, you have to save the changes with "
"[method save], [method save_encrypted], or [method save_encrypted_pass].\n"
"Keep in mind that section and property names can't contain spaces. Anything "
"after a space will be ignored on save and on load.\n"
"ConfigFiles can also contain manually written comment lines starting with a "
"semicolon ([code];[/code]). Those lines will be ignored when parsing the "
"file. Note that comments will be lost when saving the ConfigFile. This can "
"still be useful for dedicated server configuration files, which are typically "
"never overwritten without explicit user action.\n"
"[b]Note:[/b] The file extension given to a ConfigFile does not have any "
"impact on its formatting or behavior. By convention, the [code].cfg[/code] "
"extension is used here, but any other extension such as [code].ini[/code] is "
"also valid. Since neither [code].cfg[/code] nor [code].ini[/code] are "
"standardized, Godot's ConfigFile formatting may differ from files written by "
"other programs."
msgstr ""
"Этот вспомогательный класс может использоваться для хранения значений "
"[Variant] в файловой системе с использованием форматирования в стиле INI. "
"Сохраненные значения идентифицируются разделом и ключом:\n"
"[codeblock lang=text]\n"
"[section]\n"
"some_key=42\n"
"string_example=\"Hello World3D!\"\n"
"a_vector=Vector3(1, 0, 2)\n"
"[/codeblock]\n"
"Сохраненные данные можно сохранить в файл или проанализировать из него, хотя "
"объекты ConfigFile также можно использовать напрямую, без доступа к файловой "
"системе.\n"
"В следующем примере показано, как создать простой [ConfigFile] и сохранить "
"его на диске:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Создайте новый объект ConfigFile.\n"
"var config = ConfigFile.new()\n"
"\n"
"# Сохраните некоторые значения.\n"
"config.set_value(\"Player1\", \"player_name\", \"Steve\")\n"
"config.set_value(\"Player1\", \"best_score\", 10)\n"
"config.set_value(\"Player2\", \"player_name\", \"V3geta\")\n"
"config.set_value(\"Player2\", \"best_score\", 9001)\n"
"\n"
"# Сохраните его в файле (перезапишите, если он уже существует).\n"
"config.save(\"user://scores.cfg\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Создайте новый объект ConfigFile.\n"
"var config = new ConfigFile();\n"
"\n"
"// Сохраните некоторые значения.\n"
"config.SetValue(\"Player1\", \"player_name\", \"Steve\");\n"
"config.SetValue(\"Player1\", \"best_score\", 10);\n"
"config.SetValue(\"Player2\", \"player_name\", \"V3geta\");\n"
"config.SetValue(\"Player2\", \"best_score\", 9001);\n"
"\n"
"// Сохраните его в файле (перезапишите, если он уже существует).\n"
"config.Save(\"user://scores.cfg\");\n"
"[/csharp]\n"
"[/codeblocks]\n"
"В этом примере показано, как можно загрузить указанный выше файл:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var score_data = {}\n"
"var config = ConfigFile.new()\n"
"\n"
"# Загрузить данные из файла.\n"
"var err = config.load(\"user://scores.cfg\")\n"
"\n"
"# Если файл не загрузился, игнорируйте его.\n"
"if err != OK:\n"
"\treturn\n"
"\n"
"# Повторите все разделы.\n"
"for player in config.get_sections():\n"
"\t# Получите данные для каждого раздела.\n"
"\tvar player_name = config.get_value(player, \"player_name\")\n"
"\tvar player_score = config.get_value(player, \"best_score\")\n"
"\tscore_data[player_name] = player_score\n"
"[/gdscript]\n"
"[csharp]\n"
"var score_data = new Godot.Collections.Dictionary();\n"
"var config = new ConfigFile();\n"
"\n"
"// Загрузить данные из файла.\n"
"Error err = config.Load(\"user://scores.cfg\");\n"
"\n"
"// Если файл не загрузился, игнорируйте его.\n"
"if (err != Error.Ok)\n"
"{\n"
"\treturn;\n"
"}\n"
"\n"
"// Повторите все разделы.\n"
"foreach (String player in config.GetSections())\n"
"{\n"
"\t// Получите данные для каждого раздела.\n"
"\tvar player_name = (String)config.GetValue(player, \"player_name\");\n"
"\tvar player_score = (int)config.GetValue(player, \"best_score\");\n"
"\tscore_data[player_name] = player_score;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Любая операция, которая изменяет ConfigFile, например [method set_value], "
"[method clear] или [method erasure_section], изменяет только то, что "
"загружено в память. Если вы хотите записать изменение в файл, вам нужно "
"сохранить изменения с помощью [method save], [method save_encrypted] или "
"[method save_encrypted_pass].\n"
"Помните, что имена разделов и свойств не могут содержать пробелы. Все, что "
"находится после пробела, будет проигнорировано при сохранении и загрузке.\n"
"Файлы конфигурации также могут содержать вручную написанные строки "
"комментариев, начинающиеся с точки с запятой ([code];[/code]). Эти строки "
"будут проигнорированы при разборе файла. Обратите внимание, что комментарии "
"будут потеряны при сохранении файла конфигурации. Это может быть полезно для "
"выделенных файлов конфигурации сервера, которые обычно никогда не "
"перезаписываются без явного действия пользователя.\n"
"[b]Примечание:[/b] Расширение файла, присвоенное ConfigFile, не влияет на его "
"форматирование или поведение. По соглашению здесь используется расширение "
"[code].cfg[/code], но любое другое расширение, например [code].ini[/code], "
"также допустимо. Поскольку ни [code].cfg[/code], ни [code].ini[/code] не "
"стандартизированы, форматирование ConfigFile Godot может отличаться от "
"файлов, написанных другими программами."

msgid "Removes the entire contents of the config."
msgstr "Удаляет все содержимое конфигурации."

msgid ""
"Obtain the text version of this config file (the same text that would be "
"written to a file)."
msgstr ""
"Получите текстовую версию этого файла конфигурации (тот же текст, который "
"будет записан в файл)."

msgid ""
"Deletes the specified section along with all the key-value pairs inside. "
"Raises an error if the section does not exist."
msgstr ""
"Удаляет указанный раздел вместе со всеми парами ключ-значение внутри. Выдает "
"ошибку, если раздел не существует."

msgid ""
"Deletes the specified key in a section. Raises an error if either the section "
"or the key do not exist."
msgstr ""
"Удаляет указанный ключ в разделе. Выдает ошибку, если раздел или ключ не "
"существуют."

msgid ""
"Returns an array of all defined key identifiers in the specified section. "
"Raises an error and returns an empty array if the section does not exist."
msgstr ""
"Возвращает массив всех определенных идентификаторов ключей в указанном "
"разделе. Вызывает ошибку и возвращает пустой массив, если раздел не "
"существует."

msgid "Returns an array of all defined section identifiers."
msgstr "Возвращает массив всех определенных идентификаторов разделов."

msgid ""
"Returns the current value for the specified section and key. If either the "
"section or the key do not exist, the method returns the fallback [param "
"default] value. If [param default] is not specified or set to [code]null[/"
"code], an error is also raised."
msgstr ""
"Возвращает текущее значение для указанного раздела и ключа. Если раздел или "
"ключ не существуют, метод возвращает резервное значение [param default]. Если "
"[param default] не указан или установлен в [code]null[/code], также возникает "
"ошибка."

msgid "Returns [code]true[/code] if the specified section exists."
msgstr "Возвращает [code]true[/code], если указанный раздел существует."

msgid "Returns [code]true[/code] if the specified section-key pair exists."
msgstr ""
"Возвращает [code]true[/code], если указанная пара раздел-ключ существует."

msgid ""
"Loads the config file specified as a parameter. The file's contents are "
"parsed and loaded in the [ConfigFile] object which the method was called on.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Загружает файл конфигурации, указанный в качестве параметра. Содержимое файла "
"анализируется и загружается в объект [ConfigFile], для которого был вызван "
"метод. \n"
"Возвращает [constant OK] в случае успеха или одно из других значений [enum "
"Error], если операция завершилась неудачей."

msgid ""
"Loads the encrypted config file specified as a parameter, using the provided "
"[param key] to decrypt it. The file's contents are parsed and loaded in the "
"[ConfigFile] object which the method was called on.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Загружает зашифрованный файл конфигурации, указанный в качестве параметра, "
"используя предоставленный [param key] для его расшифровки. Содержимое файла "
"анализируется и загружается в объект [ConfigFile], для которого был вызван "
"метод. \n"
"Возвращает [constant OK] в случае успеха или одно из других значений [enum "
"Error], если операция не удалась."

msgid ""
"Loads the encrypted config file specified as a parameter, using the provided "
"[param password] to decrypt it. The file's contents are parsed and loaded in "
"the [ConfigFile] object which the method was called on.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Загружает зашифрованный файл конфигурации, указанный в качестве параметра, "
"используя предоставленный [param password] для его расшифровки. Содержимое "
"файла анализируется и загружается в объект [ConfigFile], для которого был "
"вызван метод. \n"
"Возвращает [constant OK] в случае успеха или одно из других значений [enum "
"Error], если операция не удалась."

msgid ""
"Parses the passed string as the contents of a config file. The string is "
"parsed and loaded in the ConfigFile object which the method was called on.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Анализирует переданную строку как содержимое файла конфигурации. Строка "
"анализируется и загружается в объект ConfigFile, для которого был вызван "
"метод. \n"
"Возвращает [constant OK] в случае успеха или одно из других значений [enum "
"Error], если операция не удалась."

msgid ""
"Saves the contents of the [ConfigFile] object to the file specified as a "
"parameter. The output file uses an INI-style structure.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Сохраняет содержимое объекта [ConfigFile] в файл, указанный в качестве "
"параметра. Выходной файл использует структуру в стиле INI.\n"
"Возвращает [constant OK] в случае успеха или одно из других значений [enum "
"Error], если операция не удалась."

msgid ""
"Saves the contents of the [ConfigFile] object to the AES-256 encrypted file "
"specified as a parameter, using the provided [param key] to encrypt it. The "
"output file uses an INI-style structure.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Сохраняет содержимое объекта [ConfigFile] в зашифрованном файле AES-256, "
"указанном в качестве параметра, используя предоставленный [param key] для его "
"шифрования. Выходной файл использует структуру в стиле INI.\n"
"Возвращает [constant OK] в случае успеха или одно из других значений [enum "
"Error], если операция не удалась."

msgid ""
"Saves the contents of the [ConfigFile] object to the AES-256 encrypted file "
"specified as a parameter, using the provided [param password] to encrypt it. "
"The output file uses an INI-style structure.\n"
"Returns [constant OK] on success, or one of the other [enum Error] values if "
"the operation failed."
msgstr ""
"Сохраняет содержимое объекта [ConfigFile] в зашифрованном файле AES-256, "
"указанном в качестве параметра, используя предоставленный [param password] "
"для его шифрования. Выходной файл использует структуру в стиле INI.\n"
"Возвращает [constant OK] в случае успеха или одно из других значений [enum "
"Error], если операция не удалась."

msgid ""
"Assigns a value to the specified key of the specified section. If either the "
"section or the key do not exist, they are created. Passing a [code]null[/"
"code] value deletes the specified key if it exists, and deletes the section "
"if it ends up empty once the key has been removed."
msgstr ""
"Присваивает значение указанному ключу указанного раздела. Если раздел или "
"ключ не существуют, они создаются. Передача значения [code]null[/code] "
"удаляет указанный ключ, если он существует, и удаляет раздел, если он "
"оказывается пустым после удаления ключа."

msgid "A dialog used for confirmation of actions."
msgstr "Диалог, используемый для подтверждения действий."

msgid ""
"A dialog used for confirmation of actions. This window is similar to "
"[AcceptDialog], but pressing its Cancel button can have a different outcome "
"from pressing the OK button. The order of the two buttons varies depending on "
"the host OS.\n"
"To get cancel action, you can use:\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_cancel_button().pressed.connect(_on_canceled)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetCancelButton().Pressed += OnCanceled;\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Диалог, используемый для подтверждения действий. Это окно похоже на "
"[AcceptDialog], но нажатие его кнопки Cancel может иметь другой результат, "
"чем нажатие кнопки OK. Порядок двух кнопок различается в зависимости от ОС "
"хоста.\n"
"Чтобы получить действие отмены, вы можете использовать:\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_cancel_button().pressed.connect(_on_canceled)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetCancelButton().Pressed += OnCanceled;\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the cancel button.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Возвращает кнопку отмены.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member CanvasItem.visible]."

msgid ""
"The text displayed by the cancel button (see [method get_cancel_button])."
msgstr "Текст, отображаемый кнопкой отмены (см. [method get_cancel_button])."

msgid "Base class for all GUI containers."
msgstr "Базовый класс для всех контейнеров GUI."

msgid ""
"Base class for all GUI containers. A [Container] automatically arranges its "
"child controls in a certain way. This class can be inherited to make custom "
"container types."
msgstr ""
"Базовый класс для всех контейнеров GUI. [Контейнер] автоматически "
"упорядочивает свои дочерние элементы управления определенным образом. Этот "
"класс может быть унаследован для создания пользовательских типов контейнеров."

msgid ""
"Implement to return a list of allowed horizontal [enum Control.SizeFlags] for "
"child nodes. This doesn't technically prevent the usages of any other size "
"flags, if your implementation requires that. This only limits the options "
"available to the user in the Inspector dock.\n"
"[b]Note:[/b] Having no size flags is equal to having [constant "
"Control.SIZE_SHRINK_BEGIN]. As such, this value is always implicitly allowed."
msgstr ""
"Реализуйте возврат списка разрешенных горизонтальных [enum Control.SizeFlags] "
"для дочерних узлов. Это технически не препятствует использованию любых других "
"флагов размера, если ваша реализация требует этого. Это только ограничивает "
"возможности, доступные пользователю в доке Inspector.\n"
"[b]Примечание:[/b] Отсутствие флагов размера равнозначно наличию [constant "
"Control.SIZE_SHRINK_BEGIN]. Таким образом, это значение всегда неявно "
"разрешено."

msgid ""
"Implement to return a list of allowed vertical [enum Control.SizeFlags] for "
"child nodes. This doesn't technically prevent the usages of any other size "
"flags, if your implementation requires that. This only limits the options "
"available to the user in the Inspector dock.\n"
"[b]Note:[/b] Having no size flags is equal to having [constant "
"Control.SIZE_SHRINK_BEGIN]. As such, this value is always implicitly allowed."
msgstr ""
"Реализуйте возврат списка разрешенных вертикальных [enum Control.SizeFlags] "
"для дочерних узлов. Это технически не препятствует использованию любых других "
"флагов размера, если ваша реализация требует этого. Это только ограничивает "
"возможности, доступные пользователю в доке Inspector.\n"
"[b]Примечание:[/b] Отсутствие флагов размера равнозначно наличию [constant "
"Control.SIZE_SHRINK_BEGIN]. Таким образом, это значение всегда неявно "
"разрешено."

msgid ""
"Fit a child control in a given rect. This is mainly a helper for creating "
"custom container classes."
msgstr ""
"Вписать дочерний элемент управления в заданный прямоугольник. Это в основном "
"помощник для создания пользовательских классов контейнеров."

msgid ""
"Queue resort of the contained children. This is called automatically anyway, "
"but can be called upon request."
msgstr ""
"Очередь курорта содержащихся потомков. Это вызывается автоматически в любом "
"случае, но может быть вызвано по запросу."

msgid "Emitted when children are going to be sorted."
msgstr "Выдается, когда дочерние собираются сортироваться."

msgid "Emitted when sorting the children is needed."
msgstr "Выдается, когда требуется сортировка дочерних элементов."

msgid ""
"Notification just before children are going to be sorted, in case there's "
"something to process beforehand."
msgstr ""
"Уведомление непосредственно перед сортировкой детей на случай, если что-то "
"нужно обработать заранее."

msgid ""
"Notification for when sorting the children, it must be obeyed immediately."
msgstr ""
"Уведомление о необходимости немедленного выполнения при сортировке детей."

msgid ""
"Base class for all GUI controls. Adapts its position and size based on its "
"parent control."
msgstr ""
"Базовый класс для всех элементов управления GUI. Адаптирует свое положение и "
"размер на основе родительского элемента управления."

msgid ""
"Base class for all UI-related nodes. [Control] features a bounding rectangle "
"that defines its extents, an anchor position relative to its parent control "
"or the current viewport, and offsets relative to the anchor. The offsets "
"update automatically when the node, any of its parents, or the screen size "
"change.\n"
"For more information on Godot's UI system, anchors, offsets, and containers, "
"see the related tutorials in the manual. To build flexible UIs, you'll need a "
"mix of UI elements that inherit from [Control] and [Container] nodes.\n"
"[b]Note:[/b] Since both [Node2D] and [Control] inherit from [CanvasItem], "
"they share several concepts from the class such as the [member "
"CanvasItem.z_index] and [member CanvasItem.visible] properties.\n"
"[b]User Interface nodes and input[/b]\n"
"Godot propagates input events via viewports. Each [Viewport] is responsible "
"for propagating [InputEvent]s to their child nodes. As the [member "
"SceneTree.root] is a [Window], this already happens automatically for all UI "
"elements in your game.\n"
"Input events are propagated through the [SceneTree] from the root node to all "
"child nodes by calling [method Node._input]. For UI elements specifically, it "
"makes more sense to override the virtual method [method _gui_input], which "
"filters out unrelated input events, such as by checking z-order, [member "
"mouse_filter], focus, or if the event was inside of the control's bounding "
"box.\n"
"Call [method accept_event] so no other node receives the event. Once you "
"accept an input, it becomes handled so [method Node._unhandled_input] will "
"not process it.\n"
"Only one [Control] node can be in focus. Only the node in focus will receive "
"events. To get the focus, call [method grab_focus]. [Control] nodes lose "
"focus when another node grabs it, or if you hide the node in focus.\n"
"Sets [member mouse_filter] to [constant MOUSE_FILTER_IGNORE] to tell a "
"[Control] node to ignore mouse or touch events. You'll need it if you place "
"an icon on top of a button.\n"
"[Theme] resources change the control's appearance. The [member theme] of a "
"[Control] node affects all of its direct and indirect children (as long as a "
"chain of controls is uninterrupted). To override some of the theme items, "
"call one of the [code]add_theme_*_override[/code] methods, like [method "
"add_theme_font_override]. You can also override theme items in the "
"Inspector.\n"
"[b]Note:[/b] Theme items are [i]not[/i] [Object] properties. This means you "
"can't access their values using [method Object.get] and [method Object.set]. "
"Instead, use the [code]get_theme_*[/code] and [code]add_theme_*_override[/"
"code] methods provided by this class."
msgstr ""
"Базовый класс для всех узлов, связанных с пользовательским интерфейсом. "
"[Control] содержит ограничивающий прямоугольник, который определяет его "
"пределы, позицию привязки относительно родительского элемента управления или "
"текущего окна просмотра и смещения относительно привязки. Смещения "
"автоматически обновляются при изменении узла, любого из его родителей или "
"размера экрана.\n"
"Для получения дополнительной информации о системе пользовательского "
"интерфейса Godot, якорях, смещениях и контейнерах см. соответствующие "
"руководства в руководстве. Для создания гибких пользовательских интерфейсов "
"вам понадобится сочетание элементов пользовательского интерфейса, которые "
"наследуются от узлов [Control] и [Container].\n"
"[b]Примечание:[/b] Поскольку и [Node2D], и [Control] наследуют от "
"[CanvasItem], они разделяют несколько концепций из класса, таких как свойства "
"[member CanvasItem.z_index] и [member CanvasItem.visible].\n"
"[b]Узлы пользовательского интерфейса и ввод[/b]\n"
"Godot распространяет события ввода через вьюпорты. Каждый [Viewport] отвечает "
"за распространение [InputEvent] на свои дочерние узлы. Поскольку [member "
"SceneTree.root] является [Window], это уже происходит автоматически для всех "
"элементов пользовательского интерфейса в вашей игре.\n"
"События ввода распространяются через [SceneTree] от корневого узла ко всем "
"дочерним узлам путем вызова [method Node._input]. Для элементов "
"пользовательского интерфейса, в частности, имеет смысл переопределить "
"виртуальный метод [method _gui_input], который отфильтровывает несвязанные "
"события ввода, например, путем проверки z-порядка, [member mouse_filter], "
"фокуса или нахождения события внутри ограничивающего прямоугольника элемента "
"управления.\n"
"Вызовите [method accept_event], чтобы никакой другой узел не получил событие. "
"Как только вы принимаете ввод, он становится обработанным, поэтому [method "
"Node._unhandled_input] не будет его обрабатывать.\n"
"Только один узел [Control] может быть в фокусе. Только узел в фокусе будет "
"получать события. Чтобы получить фокус, вызовите [method grab_focus]. Узлы "
"[Control] теряют фокус, когда другой узел захватывает их или если вы "
"скрываете узел в фокусе.\n"
"Устанавливает [member mouse_filter] в [constant MOUSE_FILTER_IGNORE], чтобы "
"сообщить узлу [Control] игнорировать события мыши или касания. Вам это "
"понадобится, если вы поместите значок поверх кнопки.\n"
"Ресурсы [Theme] изменяют внешний вид элемента управления. [member theme] узла "
"[Control] влияет на все его прямые и косвенные дочерние элементы (при "
"условии, что цепочка элементов управления не прерывается). Чтобы "
"переопределить некоторые элементы темы, вызовите один из методов "
"[code]add_theme_*_override[/code], например [method add_theme_font_override]. "
"Вы также можете переопределить элементы темы в инспекторе.\n"
"[b]Примечание:[/b] Элементы темы [i]не[/i] свойства [Object]. Это означает, "
"что вы не можете получить доступ к их значениям с помощью [method Object.get] "
"и [method Object.set]. Вместо этого используйте методы [code]get_theme_*[/"
"code] и [code]add_theme_*_override[/code], предоставляемые этим классом."

msgid "GUI documentation index"
msgstr "Каталог документации GUI"

msgid "Control node gallery"
msgstr "Галерея узлов управления"

msgid "Multiple resolutions"
msgstr "Несколько резолюций"

msgid "All GUI Demos"
msgstr "Демоверсии всех GUI"

msgid ""
"Return the description of the keyboard shortcuts and other contextual help "
"for this control."
msgstr ""
"Возвращает описание сочетаний клавиш и другую контекстную справку для этого "
"элемента управления."

msgid ""
"Godot calls this method to test if [param data] from a control's [method "
"_get_drag_data] can be dropped at [param at_position]. [param at_position] is "
"local to this control.\n"
"This method should only be used to test the data. Process the data in [method "
"_drop_data].\n"
"[b]Note:[/b] If the drag was initiated by a keyboard shortcut or [method "
"accessibility_drag], [param at_position] is set to [constant Vector2.INF], "
"and the currently selected item/text position should be used as the drop "
"position.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _can_drop_data(position, data):\n"
"\t# Check position if it is relevant to you\n"
"\t# Otherwise, just check data\n"
"\treturn typeof(data) == TYPE_DICTIONARY and data.has(\"expected\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _CanDropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\t// Check position if it is relevant to you\n"
"\t// Otherwise, just check data\n"
"\treturn data.VariantType == Variant.Type.Dictionary && "
"data.AsGodotDictionary().ContainsKey(\"expected\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Godot вызывает этот метод, чтобы проверить, можно ли перетащить [param data] "
"из метода [method _get_drag_data] элемента управления в [param at_position]. "
"[param at_position] является локальным для этого элемента управления.\n"
"Этот метод следует использовать только для проверки данных. Обрабатывайте "
"данные в [method _drop_data].\n"
"[b]Примечание:[/b] Если перетаскивание было инициировано сочетанием клавиш "
"или [method accessibility_drag], [param at_position] устанавливается равным "
"[constant Vector2.INF], а текущая позиция выбранного элемента/текста должна "
"использоваться в качестве позиции перетаскивания.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _can_drop_data(position, data):\n"
"\t# Проверьте позицию, если она имеет к вам отношение.\n"
"\t# В противном случае просто проверьте данные.\n"
"\treturn typeof(data) == TYPE_DICTIONARY and data.has(\"expected\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _CanDropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\t// Проверьте позицию, если она имеет к вам отношение.\n"
"\t// В противном случае просто проверьте данные.\n"
"\treturn data.VariantType == Variant.Type.Dictionary && "
"data.AsGodotDictionary().ContainsKey(\"expected\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Godot calls this method to pass you the [param data] from a control's [method "
"_get_drag_data] result. Godot first calls [method _can_drop_data] to test if "
"[param data] is allowed to drop at [param at_position] where [param "
"at_position] is local to this control.\n"
"[b]Note:[/b] If the drag was initiated by a keyboard shortcut or [method "
"accessibility_drag], [param at_position] is set to [constant Vector2.INF], "
"and the currently selected item/text position should be used as the drop "
"position.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _can_drop_data(position, data):\n"
"\treturn typeof(data) == TYPE_DICTIONARY and data.has(\"color\")\n"
"\n"
"func _drop_data(position, data):\n"
"\tvar color = data[\"color\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _CanDropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\treturn data.VariantType == Variant.Type.Dictionary && "
"data.AsGodotDictionary().ContainsKey(\"color\");\n"
"}\n"
"\n"
"public override void _DropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\tColor color = data.AsGodotDictionary()[\"color\"].AsColor();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Godot вызывает этот метод, чтобы передать вам [param data] из результата "
"метода [method _get_drag_data] элемента управления. Godot сначала вызывает "
"[method _can_drop_data], чтобы проверить, разрешено ли перетаскивать [param "
"data] в [param at_position], где [param at_position] является локальным для "
"данного элемента управления.\n"
"[b]Примечание:[/b] Если перетаскивание было инициировано сочетанием клавиш "
"или [method accessibility_drag], [param at_position] устанавливается равным "
"[constant Vector2.INF], а текущая позиция выбранного элемента/текста должна "
"использоваться в качестве позиции перетаскивания.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _can_drop_data(position, data):\n"
"\treturn typeof(data) == TYPE_DICTIONARY and data.has(\"color\")\n"
"\n"
"func _drop_data(position, data):\n"
"\tvar color = data[\"color\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _CanDropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\treturn data.VariantType == Variant.Type.Dictionary && "
"data.AsGodotDictionary().ContainsKey(\"color\");\n"
"}\n"
"\n"
"public override void _DropData(Vector2 atPosition, Variant data)\n"
"{\n"
"\tColor color = data.AsGodotDictionary()[\"color\"].AsColor();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Override this method to return a human-readable description of the position "
"of the child [param node] in the custom container, added to the [member "
"accessibility_name]."
msgstr ""
"Переопределите этот метод, чтобы вернуть понятное для человека описание "
"положения дочернего элемента [param node] в пользовательском контейнере, "
"добавленном к [member accessibility_name]."

msgid ""
"Godot calls this method to get data that can be dragged and dropped onto "
"controls that expect drop data. Returns [code]null[/code] if there is no data "
"to drag. Controls that want to receive drop data should implement [method "
"_can_drop_data] and [method _drop_data]. [param at_position] is local to this "
"control. Drag may be forced with [method force_drag].\n"
"A preview that will follow the mouse that should represent the data can be "
"set with [method set_drag_preview]. A good time to set the preview is in this "
"method.\n"
"[b]Note:[/b] If the drag was initiated by a keyboard shortcut or [method "
"accessibility_drag], [param at_position] is set to [constant Vector2.INF], "
"and the currently selected item/text position should be used as the drag "
"position.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get_drag_data(position):\n"
"\tvar mydata = make_data() # This is your custom method generating the drag "
"data.\n"
"\tset_drag_preview(make_preview(mydata)) # This is your custom method "
"generating the preview of the drag data.\n"
"\treturn mydata\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Variant _GetDragData(Vector2 atPosition)\n"
"{\n"
"\tvar myData = MakeData(); // This is your custom method generating the drag "
"data.\n"
"\tSetDragPreview(MakePreview(myData)); // This is your custom method "
"generating the preview of the drag data.\n"
"\treturn myData;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Godot вызывает этот метод для получения данных, которые можно перетаскивать "
"на элементы управления, ожидающие перетаскивания. Возвращает [code]null[/"
"code], если данных для перетаскивания нет. Элементы управления, которые хотят "
"получать перетаскиваемые данные, должны реализовывать [method _can_drop_data] "
"и [method _drop_data]. [param at_position] является локальным для этого "
"элемента управления. Перетаскивание может быть принудительно выполнено с "
"помощью [method force_drag].\n"
"Предварительный просмотр, который будет следовать за указателем мыши и должен "
"отображать данные, можно установить с помощью [method set_drag_preview]. "
"Рекомендуется установить предварительный просмотр в этом методе.\n"
"[b]Примечание:[/b] Если перетаскивание было инициировано сочетанием клавиш "
"или [method accessibility_drag], [param at_position] устанавливается равным "
"[constant Vector2.INF], а текущее положение выбранного элемента/текста должно "
"использоваться в качестве позиции перетаскивания.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get_drag_data(position):\n"
"\tvar mydata = make_data() # Это ваш пользовательский метод генерации данных "
"перетаскивания.\n"
"\tset_drag_preview(make_preview(mydata)) # Это ваш пользовательский метод, "
"генерирующий предварительный просмотр данных перетаскивания.\n"
"\treturn mydata\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Variant _GetDragData(Vector2 atPosition)\n"
"{\n"
"\tvar myData = MakeData(); // Это ваш пользовательский метод генерации данных "
"перетаскивания.\n"
"\tSetDragPreview(MakePreview(myData)); // Это ваш пользовательский метод, "
"генерирующий предварительный просмотр данных перетаскивания.\n"
"\treturn myData;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Virtual method to be implemented by the user. Returns the minimum size for "
"this control. Alternative to [member custom_minimum_size] for controlling "
"minimum size via code. The actual minimum size will be the max value of these "
"two (in each axis separately).\n"
"If not overridden, defaults to [constant Vector2.ZERO].\n"
"[b]Note:[/b] This method will not be called when the script is attached to a "
"[Control] node that already overrides its minimum size (e.g. [Label], "
"[Button], [PanelContainer] etc.). It can only be used with most basic GUI "
"nodes, like [Control], [Container], [Panel] etc."
msgstr ""
"Виртуальный метод, реализуемый пользователем. Возвращает минимальный размер "
"для этого элемента управления. Альтернатива [member custom_minimum_size] для "
"управления минимальным размером через код. Фактический минимальный размер "
"будет максимальным значением этих двух (по каждой оси отдельно).\n"
"Если не переопределено, по умолчанию [constant Vector2.ZERO].\n"
"[b]Примечание:[/b] Этот метод не будет вызван, если скрипт прикреплен к узлу "
"[Control], который уже переопределяет его минимальный размер (например, "
"[Label], [Button], [PanelContainer] и т. д.). Его можно использовать только с "
"большинством базовых узлов GUI, таких как [Control], [Container], [Panel] и "
"т. д."

msgid ""
"Virtual method to be implemented by the user. Returns the tooltip text for "
"the position [param at_position] in control's local coordinates, which will "
"typically appear when the cursor is resting over this control. See [method "
"get_tooltip].\n"
"[b]Note:[/b] If this method returns an empty [String] and [method "
"_make_custom_tooltip] is not overridden, no tooltip is displayed."
msgstr ""
"Виртуальный метод, реализуемый пользователем. Возвращает текст подсказки для "
"позиции [param at_position] в локальных координатах элемента управления, "
"который обычно отображается, когда курсор находится над этим элементом "
"управления. См. [method get_tooltip].\n"
"[b]Примечание:[/b] Если этот метод возвращает пустую [String] и [method "
"_make_custom_tooltip] не переопределен, подсказка не отображается."

msgid ""
"Virtual method to be implemented by the user. Override this method to handle "
"and accept inputs on UI elements. See also [method accept_event].\n"
"[b]Example:[/b] Click on the control to print a message:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _gui_input(event):\n"
"\tif event is InputEventMouseButton:\n"
"\t\tif event.button_index == MOUSE_BUTTON_LEFT and event.pressed:\n"
"\t\t\tprint(\"I've been clicked D:\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _GuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseButton mb)\n"
"\t{\n"
"\t\tif (mb.ButtonIndex == MouseButton.Left && mb.Pressed)\n"
"\t\t{\n"
"\t\t\tGD.Print(\"I've been clicked D:\");\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If the [param event] inherits [InputEventMouse], this method will [b]not[/b] "
"be called when:\n"
"- the control's [member mouse_filter] is set to [constant "
"MOUSE_FILTER_IGNORE];\n"
"- the control is obstructed by another control on top, that doesn't have "
"[member mouse_filter] set to [constant MOUSE_FILTER_IGNORE];\n"
"- the control's parent has [member mouse_filter] set to [constant "
"MOUSE_FILTER_STOP] or has accepted the event;\n"
"- the control's parent has [member clip_contents] enabled and the [param "
"event]'s position is outside the parent's rectangle;\n"
"- the [param event]'s position is outside the control (see [method "
"_has_point]).\n"
"[b]Note:[/b] The [param event]'s position is relative to this control's "
"origin."
msgstr ""
"Виртуальный метод, реализуемый пользователем. Переопределите этот метод для "
"обработки и принятия ввода в элементах пользовательского интерфейса. См. "
"также [method accept_event].\n"
"[b]Пример:[/b] Щелкните элемент управления, чтобы напечатать сообщение:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _gui_input(event):\n"
"\tif event is InputEventMouseButton:\n"
"\t\tif event.button_index == MOUSE_BUTTON_LEFT and event.pressed:\n"
"\t\t\tprint(\"I've been clicked D:\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _GuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseButton mb)\n"
"\t{\n"
"\t\tif (mb.ButtonIndex == MouseButton.Left && mb.Pressed)\n"
"\t\t{\n"
"\t\t\tGD.Print(\"I've been clicked D:\");\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Если [param event] наследует [InputEventMouse], этот метод [b]не[/b] будет "
"вызван, когда:\n"
"- элемент управления [member mouse_filter] установлен на [constant "
"MOUSE_FILTER_IGNORE];\n"
"- элемент управления перекрыт другим элементом управления сверху, у которого "
"[member mouse_filter] не установлен на [constant MOUSE_FILTER_IGNORE];\n"
"- родительский элемент управления имеет [member mouse_filter] установлен на "
"[constant MOUSE_FILTER_STOP] или принял событие;\n"
"- родительский элемент управления имеет [member clip_contents], а положение "
"[param event] находится вне прямоугольника родителя;\n"
"- положение [param event] находится вне элемента управления (см. [method "
"_has_point]).\n"
"[b]Примечание:[/b] Положение [param event] определяется относительно начала "
"координат этого элемента управления."

msgid ""
"Virtual method to be implemented by the user. Returns whether the given "
"[param point] is inside this control.\n"
"If not overridden, default behavior is checking if the point is within "
"control's Rect.\n"
"[b]Note:[/b] If you want to check if a point is inside the control, you can "
"use [code]Rect2(Vector2.ZERO, size).has_point(point)[/code]."
msgstr ""
"Виртуальный метод, реализуемый пользователем. Возвращает, находится ли "
"заданный [param point] внутри этого элемента управления.\n"
"Если не переопределено, поведение по умолчанию — проверка того, находится ли "
"точка внутри Rect элемента управления.\n"
"[b]Примечание:[/b] Если вы хотите проверить, находится ли точка внутри "
"элемента управления, вы можете использовать [code]Rect2(Vector2.ZERO, "
"size).has_point(point)[/code]."

msgid ""
"Virtual method to be implemented by the user. Returns a [Control] node that "
"should be used as a tooltip instead of the default one. [param for_text] is "
"the return value of [method get_tooltip].\n"
"The returned node must be of type [Control] or Control-derived. It can have "
"child nodes of any type. It is freed when the tooltip disappears, so make "
"sure you always provide a new instance (if you want to use a pre-existing "
"node from your scene tree, you can duplicate it and pass the duplicated "
"instance). When [code]null[/code] or a non-Control node is returned, the "
"default tooltip will be used instead.\n"
"The returned node will be added as child to a [PopupPanel], so you should "
"only provide the contents of that panel. That [PopupPanel] can be themed "
"using [method Theme.set_stylebox] for the type [code]\"TooltipPanel\"[/code] "
"(see [member tooltip_text] for an example).\n"
"[b]Note:[/b] The tooltip is shrunk to minimal size. If you want to ensure "
"it's fully visible, you might want to set its [member custom_minimum_size] to "
"some non-zero value.\n"
"[b]Note:[/b] The node (and any relevant children) should have their [member "
"CanvasItem.visible] set to [code]true[/code] when returned, otherwise, the "
"viewport that instantiates it will not be able to calculate its minimum size "
"reliably.\n"
"[b]Note:[/b] If overridden, this method is called even if [method "
"get_tooltip] returns an empty string. When this happens with the default "
"tooltip, it is not displayed. To copy this behavior, return [code]null[/code] "
"in this method when [param for_text] is empty.\n"
"[b]Example:[/b] Use a constructed node as a tooltip:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _make_custom_tooltip(for_text):\n"
"\tvar label = Label.new()\n"
"\tlabel.text = for_text\n"
"\treturn label\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Control _MakeCustomTooltip(string forText)\n"
"{\n"
"\tvar label = new Label();\n"
"\tlabel.Text = forText;\n"
"\treturn label;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Usa a scene instance as a tooltip:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _make_custom_tooltip(for_text):\n"
"\tvar tooltip = preload(\"res://some_tooltip_scene.tscn\").instantiate()\n"
"\ttooltip.get_node(\"Label\").text = for_text\n"
"\treturn tooltip\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Control _MakeCustomTooltip(string forText)\n"
"{\n"
"\tNode tooltip = ResourceLoader.Load<PackedScene>(\"res://"
"some_tooltip_scene.tscn\").Instantiate();\n"
"\ttooltip.GetNode<Label>(\"Label\").Text = forText;\n"
"\treturn tooltip;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Виртуальный метод, реализуемый пользователем. Возвращает узел [Control], "
"который следует использовать в качестве подсказки вместо подсказки по "
"умолчанию. [param for_text] — возвращаемое значение [method get_tooltip].\n"
"Возвращаемый узел должен иметь тип [Control] или Control-derived. Он может "
"иметь дочерние узлы любого типа. Он освобождается, когда подсказка исчезает, "
"поэтому убедитесь, что вы всегда предоставляете новый экземпляр (если вы "
"хотите использовать уже существующий узел из дерева сцены, вы можете "
"продублировать его и передать продублированный экземпляр). Когда возвращается "
"[code]null[/code] или не-Control узел, вместо него будет использоваться "
"подсказка по умолчанию.\n"
"Возвращенный узел будет добавлен как дочерний к [PopupPanel], поэтому вам "
"следует предоставить только содержимое этой панели. Эта [PopupPanel] может "
"быть тематически оформлена с помощью [method Theme.set_stylebox] для типа "
"[code]\"TooltipPanel\"[/code] (см. [member tooltip_text] для примера).\n"
"[b]Примечание:[/b] Подсказка сжата до минимального размера. Если вы хотите, "
"чтобы она была полностью видна, вам может понадобиться установить ее [member "
"custom_minimum_size] на некоторое ненулевое значение.\n"
"[b]Примечание:[/b] Узел (и все соответствующие дочерние элементы) должны "
"иметь свой [member CanvasItem.visible], установленный на [code]true[/code] "
"при возврате, в противном случае область просмотра, которая создает его "
"экземпляр, не сможет надежно вычислить его минимальный размер.\n"
"[b]Примечание:[/b] При переопределении этот метод вызывается, даже если "
"[method get_tooltip] возвращает пустую строку. Когда это происходит с "
"подсказкой по умолчанию, она не отображается. Чтобы скопировать это "
"поведение, верните [code]null[/code] в этом методе, когда [param for_text] "
"пуст.\n"
"[b]Пример:[/b] Использование сконструированного узла в качестве подсказки:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _make_custom_tooltip(for_text):\n"
"\tvar label = Label.new()\n"
"\tlabel.text = for_text\n"
"\treturn label\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Control _MakeCustomTooltip(string forText)\n"
"{\n"
"\tvar label = new Label();\n"
"\tlabel.Text = forText;\n"
"\treturn label;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Пример:[/b] Использование экземпляра сцены в качестве подсказки:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _make_custom_tooltip(for_text):\n"
"\tvar tooltip = preload(\"res://some_tooltip_scene.tscn\").instantiate()\n"
"\ttooltip.get_node(\"Label\").text = for_text\n"
"\treturn tooltip\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Control _MakeCustomTooltip(string forText)\n"
"{\n"
"\tNode tooltip = ResourceLoader.Load<PackedScene>(\"res://"
"some_tooltip_scene.tscn\").Instantiate();\n"
"\ttooltip.GetNode<Label>(\"Label\").Text = forText;\n"
"\treturn tooltip;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"User defined BiDi algorithm override function.\n"
"Returns an [Array] of [Vector3i] text ranges and text base directions, in the "
"left-to-right order. Ranges should cover full source [param text] without "
"overlaps. BiDi algorithm will be used on each range separately."
msgstr ""
"Функция переопределения пользовательского алгоритма BiDi.\n"
"Возвращает [Array] из [Vector3i] текстовых диапазонов и направлений баз "
"текста в порядке слева направо. Диапазоны должны охватывать весь исходный "
"[param text] без перекрытий. Алгоритм BiDi будет использоваться для каждого "
"диапазона отдельно."

msgid ""
"Marks an input event as handled. Once you accept an input event, it stops "
"propagating, even to nodes listening to [method Node._unhandled_input] or "
"[method Node._unhandled_key_input].\n"
"[b]Note:[/b] This does not affect the methods in [Input], only the way events "
"are propagated."
msgstr ""
"Отмечает событие ввода как обработанное. После того, как вы принимаете "
"событие ввода, оно перестает распространяться, даже на узлы, прослушивающие "
"[method Node._unhandled_input] или [method Node._unhandled_key_input].\n"
"[b]Примечание:[/b] Это не влияет на методы в [Input], а только на способ "
"распространения событий."

msgid "Starts drag-and-drop operation without using a mouse."
msgstr "Запускает операцию перетаскивания без использования мыши."

msgid "Ends drag-and-drop operation without using a mouse."
msgstr "Завершает операцию перетаскивания без использования мыши."

msgid ""
"Creates a local override for a theme [Color] with the specified [param name]. "
"Local overrides always take precedence when fetching theme items for the "
"control. An override can be removed with [method "
"remove_theme_color_override].\n"
"See also [method get_theme_color].\n"
"[b]Example:[/b] Override a [Label]'s color and reset it later:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Given the child Label node \"MyLabel\", override its font color with a "
"custom value.\n"
"$MyLabel.add_theme_color_override(\"font_color\", Color(1, 0.5, 0))\n"
"# Reset the font color of the child label.\n"
"$MyLabel.remove_theme_color_override(\"font_color\")\n"
"# Alternatively it can be overridden with the default value from the Label "
"type.\n"
"$MyLabel.add_theme_color_override(\"font_color\", "
"get_theme_color(\"font_color\", \"Label\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"// Given the child Label node \"MyLabel\", override its font color with a "
"custom value.\n"
"GetNode<Label>(\"MyLabel\").AddThemeColorOverride(\"font_color\", new "
"Color(1, 0.5f, 0));\n"
"// Reset the font color of the child label.\n"
"GetNode<Label>(\"MyLabel\").RemoveThemeColorOverride(\"font_color\");\n"
"// Alternatively it can be overridden with the default value from the Label "
"type.\n"
"GetNode<Label>(\"MyLabel\").AddThemeColorOverride(\"font_color\", "
"GetThemeColor(\"font_color\", \"Label\"));\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает локальное переопределение для темы [Color] с указанным [param name]. "
"Локальные переопределения всегда имеют приоритет при извлечении элементов "
"темы для элемента управления. Переопределение можно удалить с помощью [method "
"remove_theme_color_override].\n"
"С. также [method get_theme_color].\n"
"[b]Пример:[/b] Переопределить цвет [Label] и сбросить его позже:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Для дочернего узла Label «MyLabel» переопределите цвет его шрифта с помощью "
"пользовательского значения.\n"
"$MyLabel.add_theme_color_override(\"font_color\", Color(1, 0.5, 0))\n"
"# Сбросить цвет шрифта дочерней метки.\n"
"$MyLabel.remove_theme_color_override(\"font_color\")\n"
"# В качестве альтернативы его можно переопределить значением по умолчанию из "
"типа метки.\n"
"$MyLabel.add_theme_color_override(\"font_color\", "
"get_theme_color(\"font_color\", \"Label\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"// Для дочернего узла Label «MyLabel» переопределите цвет его шрифта с "
"помощью пользовательского значения.\n"
"GetNode<Label>(\"MyLabel\").AddThemeColorOverride(\"font_color\", new "
"Color(1, 0.5f, 0));\n"
"// Сбросить цвет шрифта дочерней метки.\n"
"GetNode<Label>(\"MyLabel\").RemoveThemeColorOverride(\"font_color\");\n"
"// В качестве альтернативы его можно переопределить значением по умолчанию из "
"типа метки.\n"
"GetNode<Label>(\"MyLabel\").AddThemeColorOverride(\"font_color\", "
"GetThemeColor(\"font_color\", \"Label\"));\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Creates a local override for a theme constant with the specified [param "
"name]. Local overrides always take precedence when fetching theme items for "
"the control. An override can be removed with [method "
"remove_theme_constant_override].\n"
"See also [method get_theme_constant]."
msgstr ""
"Создает локальное переопределение для константы темы с указанным [param "
"name]. Локальные переопределения всегда имеют приоритет при извлечении "
"элементов темы для элемента управления. Переопределение можно удалить с "
"помощью [method remove_theme_constant_override].\n"
"См. также [method get_theme_constant]."

msgid ""
"Creates a local override for a theme [Font] with the specified [param name]. "
"Local overrides always take precedence when fetching theme items for the "
"control. An override can be removed with [method "
"remove_theme_font_override].\n"
"See also [method get_theme_font]."
msgstr ""
"Создает локальное переопределение для темы [Font] с указанным [param name]. "
"Локальные переопределения всегда имеют приоритет при извлечении элементов "
"темы для элемента управления. Переопределение можно удалить с помощью [method "
"remove_theme_font_override].\n"
"См. также [method get_theme_font]."

msgid ""
"Creates a local override for a theme font size with the specified [param "
"name]. Local overrides always take precedence when fetching theme items for "
"the control. An override can be removed with [method "
"remove_theme_font_size_override].\n"
"See also [method get_theme_font_size]."
msgstr ""
"Создает локальное переопределение для размера шрифта темы с указанным [param "
"name]. Локальные переопределения всегда имеют приоритет при извлечении "
"элементов темы для элемента управления. Переопределение можно удалить с "
"помощью [method remove_theme_font_size_override].\n"
"См. также [method get_theme_font_size]."

msgid ""
"Creates a local override for a theme icon with the specified [param name]. "
"Local overrides always take precedence when fetching theme items for the "
"control. An override can be removed with [method "
"remove_theme_icon_override].\n"
"See also [method get_theme_icon]."
msgstr ""
"Создает локальное переопределение для значка темы с указанным [param name]. "
"Локальные переопределения всегда имеют приоритет при извлечении элементов "
"темы для элемента управления. Переопределение можно удалить с помощью [method "
"remove_theme_icon_override].\n"
"См. также [method get_theme_icon]."

msgid ""
"Creates a local override for a theme [StyleBox] with the specified [param "
"name]. Local overrides always take precedence when fetching theme items for "
"the control. An override can be removed with [method "
"remove_theme_stylebox_override].\n"
"See also [method get_theme_stylebox].\n"
"[b]Example:[/b] Modify a property in a [StyleBox] by duplicating it:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# The snippet below assumes the child node \"MyButton\" has a StyleBoxFlat "
"assigned.\n"
"# Resources are shared across instances, so we need to duplicate it\n"
"# to avoid modifying the appearance of all other buttons.\n"
"var new_stylebox_normal = "
"$MyButton.get_theme_stylebox(\"normal\").duplicate()\n"
"new_stylebox_normal.border_width_top = 3\n"
"new_stylebox_normal.border_color = Color(0, 1, 0.5)\n"
"$MyButton.add_theme_stylebox_override(\"normal\", new_stylebox_normal)\n"
"# Remove the stylebox override.\n"
"$MyButton.remove_theme_stylebox_override(\"normal\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// The snippet below assumes the child node \"MyButton\" has a StyleBoxFlat "
"assigned.\n"
"// Resources are shared across instances, so we need to duplicate it\n"
"// to avoid modifying the appearance of all other buttons.\n"
"StyleBoxFlat newStyleboxNormal = "
"GetNode<Button>(\"MyButton\").GetThemeStylebox(\"normal\").Duplicate() as "
"StyleBoxFlat;\n"
"newStyleboxNormal.BorderWidthTop = 3;\n"
"newStyleboxNormal.BorderColor = new Color(0, 1, 0.5f);\n"
"GetNode<Button>(\"MyButton\").AddThemeStyleboxOverride(\"normal\", "
"newStyleboxNormal);\n"
"// Remove the stylebox override.\n"
"GetNode<Button>(\"MyButton\").RemoveThemeStyleboxOverride(\"normal\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает локальное переопределение для темы [StyleBox] с указанным [param "
"name]. Локальные переопределения всегда имеют приоритет при извлечении "
"элементов темы для элемента управления. Переопределение можно удалить с "
"помощью [method remove_theme_stylebox_override].\n"
"См. также [method get_theme_stylebox].\n"
"[b]Пример:[/b] Измените свойство в [StyleBox], продублировав его:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# В приведенном ниже фрагменте предполагается, что дочернему узлу «MyButton» "
"назначен StyleBoxFlat.\n"
"# Ресурсы являются общими для всех экземпляров, поэтому нам нужно их "
"дублировать.\n"
"# чтобы избежать изменения внешнего вида всех остальных кнопок.\n"
"var new_stylebox_normal = "
"$MyButton.get_theme_stylebox(\"normal\").duplicate()\n"
"new_stylebox_normal.border_width_top = 3\n"
"new_stylebox_normal.border_color = Color(0, 1, 0.5)\n"
"$MyButton.add_theme_stylebox_override(\"normal\", new_stylebox_normal)\n"
"# Удалить переопределение stylebox.\n"
"$MyButton.remove_theme_stylebox_override(\"normal\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// В приведенном ниже фрагменте предполагается, что дочернему узлу «MyButton» "
"назначен StyleBoxFlat.\n"
"// Ресурсы являются общими для всех экземпляров, поэтому нам нужно их "
"дублировать.\n"
"// чтобы избежать изменения внешнего вида всех остальных кнопок.\n"
"StyleBoxFlat newStyleboxNormal = "
"GetNode<Button>(\"MyButton\").GetThemeStylebox(\"normal\").Duplicate() as "
"StyleBoxFlat;\n"
"newStyleboxNormal.BorderWidthTop = 3;\n"
"newStyleboxNormal.BorderColor = new Color(0, 1, 0.5f);\n"
"GetNode<Button>(\"MyButton\").AddThemeStyleboxOverride(\"normal\", "
"newStyleboxNormal);\n"
"// Удалить переопределение stylebox.\n"
"GetNode<Button>(\"MyButton\").RemoveThemeStyleboxOverride(\"normal\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Prevents [code]*_theme_*_override[/code] methods from emitting [constant "
"NOTIFICATION_THEME_CHANGED] until [method end_bulk_theme_override] is called."
msgstr ""
"Запрещает методам [code]*_theme_*_override[/code] выдавать [constant "
"NOTIFICATION_THEME_CHANGED] до тех пор, пока не будет вызван [method "
"end_bulk_theme_override]."

msgid ""
"Ends a bulk theme override update. See [method begin_bulk_theme_override]."
msgstr ""
"Завершает массовое обновление переопределения темы. См. [method "
"begin_bulk_theme_override]."

msgid "Finds the next (below in the tree) [Control] that can receive the focus."
msgstr ""
"Находит следующий (ниже в дереве) [Control], который может получить фокус."

msgid ""
"Finds the previous (above in the tree) [Control] that can receive the focus."
msgstr ""
"Находит предыдущий (выше в дереве) [Control], который может получить фокус."

msgid ""
"Finds the next [Control] that can receive the focus on the specified [enum "
"Side].\n"
"[b]Note:[/b] This is different from [method get_focus_neighbor], which "
"returns the path of a specified focus neighbor."
msgstr ""
"Находит следующий [Control], который может получить фокус на указанной [enum "
"Side].\n"
"[b]Примечание:[/b] Это отличается от [method get_focus_neighbor], который "
"возвращает путь указанного соседа фокуса."

msgid ""
"Forces drag and bypasses [method _get_drag_data] and [method "
"set_drag_preview] by passing [param data] and [param preview]. Drag will "
"start even if the mouse is neither over nor pressed on this control.\n"
"The methods [method _can_drop_data] and [method _drop_data] must be "
"implemented on controls that want to receive drop data."
msgstr ""
"Принудительно перетаскивает и обходит [method _get_drag_data] и [method "
"set_drag_preview], передавая [param data] и [param preview]. Перетаскивание "
"начнется, даже если мышь не находится над этим элементом управления и не "
"нажата на него.\n"
"Методы [method _can_drop_data] и [method _drop_data] должны быть реализованы "
"в элементах управления, которые хотят получать данные перетаскивания."

msgid ""
"Returns the anchor for the specified [enum Side]. A getter method for [member "
"anchor_bottom], [member anchor_left], [member anchor_right] and [member "
"anchor_top]."
msgstr ""
"Возвращает якорь для указанного [enum Side]. Метод получения для [member "
"anchor_bottom], [member anchor_left], [member anchor_right] и [member "
"anchor_top]."

msgid ""
"Returns [member offset_left] and [member offset_top]. See also [member "
"position]."
msgstr ""
"Возвращает [member offset_left] и [member offset_top]. См. также [member "
"position]."

msgid ""
"Returns combined minimum size from [member custom_minimum_size] and [method "
"get_minimum_size]."
msgstr ""
"Возвращает объединенный минимальный размер из [member custom_minimum_size] и "
"[method get_minimum_size]."

msgid ""
"Returns the mouse cursor shape for this control when hovered over [param "
"position] in local coordinates. For most controls, this is the same as "
"[member mouse_default_cursor_shape], but some built-in controls implement "
"more complex logic."
msgstr ""
"Возвращает форму курсора мыши для этого элемента управления при наведении на "
"[param position] в локальных координатах. Для большинства элементов "
"управления это то же самое, что и [member mouse_default_cursor_shape], но "
"некоторые встроенные элементы управления реализуют более сложную логику."

msgid "Returns [member offset_right] and [member offset_bottom]."
msgstr "Возвращает [member offset_right] и [member offset_bottom]."

msgid ""
"Returns the [member focus_mode], but takes the [member "
"focus_behavior_recursive] into account. If [member focus_behavior_recursive] "
"is set to [constant FOCUS_BEHAVIOR_DISABLED], or it is set to [constant "
"FOCUS_BEHAVIOR_INHERITED] and its ancestor is set to [constant "
"FOCUS_BEHAVIOR_DISABLED], then this returns [constant FOCUS_NONE]."
msgstr ""
"Возвращает [member focus_mode], но учитывает [member "
"focus_behavior_recursive]. Если [member focus_behavior_recursive] установлен "
"на [constant FOCUS_BEHAVIOR_DISABLED] или установлен на [constant "
"FOCUS_BEHAVIOR_INHERITED], а его предок установлен на [constant "
"FOCUS_BEHAVIOR_DISABLED], то возвращается [constant FOCUS_NONE]."

msgid ""
"Returns the focus neighbor for the specified [enum Side]. A getter method for "
"[member focus_neighbor_bottom], [member focus_neighbor_left], [member "
"focus_neighbor_right] and [member focus_neighbor_top].\n"
"[b]Note:[/b] To find the next [Control] on the specific [enum Side], even if "
"a neighbor is not assigned, use [method find_valid_focus_neighbor]."
msgstr ""
"Возвращает соседа фокуса для указанного [enum Side]. Метод получения для "
"[member focus_neighbor_bottom], [member focus_neighbor_left], [member "
"focus_neighbor_right] и [member focus_neighbor_top].\n"
"[b]Примечание:[/b] Чтобы найти следующий [Control] на указанном [enum Side], "
"даже если сосед не назначен, используйте [method find_valid_focus_neighbor]."

msgid ""
"Returns the position and size of the control relative to the containing "
"canvas. See [member global_position] and [member size].\n"
"[b]Note:[/b] If the node itself or any parent [CanvasItem] between the node "
"and the canvas have a non default rotation or skew, the resulting size is "
"likely not meaningful.\n"
"[b]Note:[/b] Setting [member Viewport.gui_snap_controls_to_pixels] to "
"[code]true[/code] can lead to rounding inaccuracies between the displayed "
"control and the returned [Rect2]."
msgstr ""
"Возвращает положение и размер элемента управления относительно содержащего "
"его холста. См. [member global_position] и [member size].\n"
"[b]Примечание:[/b] Если сам узел или любой родительский [CanvasItem] между "
"узлом и холстом имеет нестандартный поворот или наклон, то результирующий "
"размер, скорее всего, не имеет смысла.\n"
"[b]Примечание:[/b] Установка [member Viewport.gui_snap_controls_to_pixels] в "
"[code]true[/code] может привести к неточностям округления между отображаемым "
"элементом управления и возвращаемым [Rect2]."

msgid ""
"Returns the minimum size for this control. See [member custom_minimum_size]."
msgstr ""
"Возвращает минимальный размер для этого элемента управления. См. [member "
"custom_minimum_size]."

msgid ""
"Returns the [member mouse_filter], but takes the [member "
"mouse_behavior_recursive] into account. If [member mouse_behavior_recursive] "
"is set to [constant MOUSE_BEHAVIOR_DISABLED], or it is set to [constant "
"MOUSE_BEHAVIOR_INHERITED] and its ancestor is set to [constant "
"MOUSE_BEHAVIOR_DISABLED], then this returns [constant MOUSE_FILTER_IGNORE]."
msgstr ""
"Возвращает [member mouse_filter], но учитывает [member "
"mouse_behavior_recursive]. Если [member mouse_behavior_recursive] установлен "
"на [constant MOUSE_BEHAVIOR_DISABLED] или установлен на [constant "
"MOUSE_BEHAVIOR_INHERITED], а его предок установлен на [constant "
"MOUSE_BEHAVIOR_DISABLED], то возвращается [constant MOUSE_FILTER_IGNORE]."

msgid ""
"Returns the offset for the specified [enum Side]. A getter method for [member "
"offset_bottom], [member offset_left], [member offset_right] and [member "
"offset_top]."
msgstr ""
"Возвращает смещение для указанного [enum Side]. Метод получения для [member "
"offset_bottom], [member offset_left], [member offset_right] и [member "
"offset_top]."

msgid "Returns the width/height occupied in the parent control."
msgstr "Возвращает ширину/высоту, занимаемую родительским элементом управления."

msgid "Returns the parent control node."
msgstr "Возвращает родительский управляющий узел."

msgid ""
"Returns the position and size of the control in the coordinate system of the "
"containing node. See [member position], [member scale] and [member size].\n"
"[b]Note:[/b] If [member rotation] is not the default rotation, the resulting "
"size is not meaningful.\n"
"[b]Note:[/b] Setting [member Viewport.gui_snap_controls_to_pixels] to "
"[code]true[/code] can lead to rounding inaccuracies between the displayed "
"control and the returned [Rect2]."
msgstr ""
"Возвращает положение и размер элемента управления в системе координат "
"содержащего узла. См. [member position], [member scale] и [member size].\n"
"[b]Примечание:[/b] Если [member rotation] не является поворотом по умолчанию, "
"результирующий размер не имеет смысла.\n"
"[b]Примечание:[/b] Установка [member Viewport.gui_snap_controls_to_pixels] в "
"[code]true[/code] может привести к неточностям округления между отображаемым "
"элементом управления и возвращаемым [Rect2]."

msgid ""
"Returns the position of this [Control] in global screen coordinates (i.e. "
"taking window position into account). Mostly useful for editor plugins.\n"
"Equals to [member global_position] if the window is embedded (see [member "
"Viewport.gui_embed_subwindows]).\n"
"[b]Example:[/b] Show a popup at the mouse position:\n"
"[codeblock]\n"
"popup_menu.position = get_screen_position() + get_local_mouse_position()\n"
"popup_menu.reset_size()\n"
"popup_menu.popup()\n"
"[/codeblock]"
msgstr ""
"Возвращает позицию этого [Control] в глобальных координатах экрана (т. е. с "
"учетом позиции окна). В основном полезно для плагинов редактора.\n"
"Равно [member global_position], если окно встроено (см. [member "
"Viewport.gui_embed_subwindows]).\n"
"[b]Пример:[/b] Показать всплывающее окно в позиции мыши:\n"
"[codeblock]\n"
"popup_menu.position = get_screen_position() + get_local_mouse_position()\n"
"popup_menu.reset_size()\n"
"popup_menu.popup()\n"
"[/codeblock]"

msgid ""
"Returns a [Color] from the first matching [Theme] in the tree if that [Theme] "
"has a color item with the specified [param name] and [param theme_type]. If "
"[param theme_type] is omitted the class name of the current control is used "
"as the type, or [member theme_type_variation] if it is defined. If the type "
"is a class name its parent classes are also checked, in order of inheritance. "
"If the type is a variation its base types are checked, in order of "
"dependency, then the control's class name and its parent classes are "
"checked.\n"
"For the current control its local overrides are considered first (see [method "
"add_theme_color_override]), then its assigned [member theme]. After the "
"current control, each parent control and its assigned [member theme] are "
"considered; controls without a [member theme] assigned are skipped. If no "
"matching [Theme] is found in the tree, the custom project [Theme] (see "
"[member ProjectSettings.gui/theme/custom]) and the default [Theme] are used "
"(see [ThemeDB]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Get the font color defined for the current Control's class, if it "
"exists.\n"
"\tmodulate = get_theme_color(\"font_color\")\n"
"\t# Get the font color defined for the Button class.\n"
"\tmodulate = get_theme_color(\"font_color\", \"Button\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Get the font color defined for the current Control's class, if it "
"exists.\n"
"\tModulate = GetThemeColor(\"font_color\");\n"
"\t// Get the font color defined for the Button class.\n"
"\tModulate = GetThemeColor(\"font_color\", \"Button\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [Color] из первой совпадающей [Theme] в дереве, если эта [Theme] "
"имеет элемент цвета с указанными [param name] и [param theme_type]. Если "
"[param theme_type] опущен, в качестве типа используется имя класса текущего "
"элемента управления или [member theme_type_variation], если он определен. "
"Если тип является именем класса, его родительские классы также проверяются в "
"порядке наследования. Если тип является вариацией, его базовые типы "
"проверяются в порядке зависимости, затем проверяются имя класса элемента "
"управления и его родительские классы.\n"
"Для текущего элемента управления сначала рассматриваются его локальные "
"переопределения (см. [method add_theme_color_override]), затем его "
"назначенная [member theme]. После текущего элемента управления "
"рассматриваются каждый родительский элемент управления и назначенная ему "
"[member theme]; элементы управления без назначенной [member theme] "
"пропускаются. Если в дереве не найдено соответствующей [Theme], используются "
"пользовательский проект [Theme] (см. [member ProjectSettings.gui/theme/"
"custom]) и [Theme] по умолчанию (см. [ThemeDB]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Получить цвет шрифта, определенный для текущего класса элемента "
"управления, если он существует.\n"
"\tmodulate = get_theme_color(\"font_color\")\n"
"\t# Получите цвет шрифта, определенный для класса Button.\n"
"\tmodulate = get_theme_color(\"font_color\", \"Button\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Получить цвет шрифта, определенный для текущего класса элемента "
"управления, если он существует.\n"
"\tModulate = GetThemeColor(\"font_color\");\n"
"\t// Получите цвет шрифта, определенный для класса Button.\n"
"\tModulate = GetThemeColor(\"font_color\", \"Button\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a constant from the first matching [Theme] in the tree if that "
"[Theme] has a constant item with the specified [param name] and [param "
"theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает константу из первой совпадающей [Theme] в дереве, если эта [Theme] "
"имеет константный элемент с указанными [param name] и [param theme_type].\n"
"Подробности см. в [method get_theme_color]."

msgid ""
"Returns the default base scale value from the first matching [Theme] in the "
"tree if that [Theme] has a valid [member Theme.default_base_scale] value.\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает базовое значение масштаба по умолчанию из первой соответствующей "
"[Theme] в дереве, если эта [Theme] имеет допустимое значение [member "
"Theme.default_base_scale].\n"
"Подробнее см. в [method get_theme_color]."

msgid ""
"Returns the default font from the first matching [Theme] in the tree if that "
"[Theme] has a valid [member Theme.default_font] value.\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает шрифт по умолчанию из первой соответствующей [Theme] в дереве, "
"если эта [Theme] имеет допустимое значение [member Theme.default_font].\n"
"Подробности см. в [method get_theme_color]."

msgid ""
"Returns the default font size value from the first matching [Theme] in the "
"tree if that [Theme] has a valid [member Theme.default_font_size] value.\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает значение размера шрифта по умолчанию из первой соответствующей "
"[Theme] в дереве, если эта [Theme] имеет допустимое значение [member "
"Theme.default_font_size].\n"
"Подробности см. в [method get_theme_color]."

msgid ""
"Returns a [Font] from the first matching [Theme] in the tree if that [Theme] "
"has a font item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает [Font] из первой соответствующей [Theme] в дереве, если эта "
"[Theme] имеет элемент шрифта с указанными [param name] и [param name].\n"
"Подробности см. в [method get_theme_color]."

msgid ""
"Returns a font size from the first matching [Theme] in the tree if that "
"[Theme] has a font size item with the specified [param name] and [param "
"theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает размер шрифта из первой соответствующей [Theme] в дереве, если эта "
"[Theme] имеет элемент размера шрифта с указанными [param name] и [param "
"theme_type].\n"
"Подробности см. в [method get_theme_color]."

msgid ""
"Returns an icon from the first matching [Theme] in the tree if that [Theme] "
"has an icon item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает значок из первой соответствующей [Theme] в дереве, если эта "
"[Theme] имеет элемент значка с указанными [param name] и [param theme_type].\n"
"Подробности см. в [method get_theme_color]."

msgid ""
"Returns a [StyleBox] from the first matching [Theme] in the tree if that "
"[Theme] has a stylebox item with the specified [param name] and [param "
"theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает [StyleBox] из первой соответствующей [Theme] в дереве, если эта "
"[Theme] имеет элемент stylebox с указанными [param name] и [param "
"theme_type].\n"
"Подробнее см. [method get_theme_color]."

msgid ""
"Returns the tooltip text for the position [param at_position] in control's "
"local coordinates, which will typically appear when the cursor is resting "
"over this control. By default, it returns [member tooltip_text].\n"
"This method can be overridden to customize its behavior. See [method "
"_get_tooltip].\n"
"[b]Note:[/b] If this method returns an empty [String] and [method "
"_make_custom_tooltip] is not overridden, no tooltip is displayed."
msgstr ""
"Возвращает текст подсказки для позиции [param at_position] в локальных "
"координатах элемента управления, который обычно отображается, когда курсор "
"находится над этим элементом управления. По умолчанию он возвращает [member "
"tooltip_text].\n"
"Этот метод можно переопределить, чтобы настроить его поведение. См. [method "
"_get_tooltip].\n"
"[b]Примечание:[/b] Если этот метод возвращает пустую [String] и [method "
"_make_custom_tooltip] не переопределен, подсказка не отображается."

msgid ""
"Creates an [InputEventMouseButton] that attempts to click the control. If the "
"event is received, the control gains focus.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tgrab_click_focus() # When clicking another Control node, this node will be "
"clicked instead.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Process(double delta)\n"
"{\n"
"\tGrabClickFocus(); // When clicking another Control node, this node will be "
"clicked instead.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает [InputEventMouseButton], который пытается щелкнуть элемент "
"управления. Если событие получено, элемент управления получает фокус.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(delta):\n"
"\tgrab_click_focus() # При щелчке по другому узлу управления вместо него "
"будет выполнен щелчок по этому узлу.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Process(double delta)\n"
"{\n"
"\tGrabClickFocus(); // При щелчке по другому узлу управления вместо него "
"будет выполнен щелчок по этому узлу.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Steal the focus from another control and become the focused control (see "
"[member focus_mode]).\n"
"[b]Note:[/b] Using this method together with [method Callable.call_deferred] "
"makes it more reliable, especially when called inside [method Node._ready]."
msgstr ""
"Перехватите фокус у другого элемента управления и станьте сфокусированным "
"элементом управления (см. [member focus_mode]).\n"
"[b]Примечание:[/b] Использование этого метода вместе с [method "
"Callable.call_deferred] делает его более надежным, особенно при вызове внутри "
"[method Node._ready]."

msgid ""
"Returns [code]true[/code] if this is the current focused control. See [member "
"focus_mode]."
msgstr ""
"Возвращает [code]true[/code], если это текущий сфокусированный элемент "
"управления. См. [member focus_mode]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a color item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующая [Theme], "
"которая имеет элемент цвета с указанными [param name] и [param theme_type].\n"
"Подробнее см. [method get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme [Color] "
"with the specified [param name] in this [Control] node.\n"
"See [method add_theme_color_override]."
msgstr ""
"Возвращает [code]true[/code], если есть локальное переопределение для темы "
"[Color] с указанным [param name] в этом узле [Control].\n"
"См. [method add_theme_color_override]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a constant item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующая [Theme], "
"которая имеет постоянный элемент с указанными [param name] и [param "
"theme_type].\n"
"Подробнее см. [method get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme constant "
"with the specified [param name] in this [Control] node.\n"
"See [method add_theme_constant_override]."
msgstr ""
"Возвращает [code]true[/code], если есть локальное переопределение для "
"константы темы с указанным [param name] в этом узле [Control].\n"
"См. [method add_theme_constant_override]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a font item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующая [Theme], "
"которая имеет элемент шрифта с указанными [param name] и [param theme_type].\n"
"Подробнее см. [method get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme [Font] "
"with the specified [param name] in this [Control] node.\n"
"See [method add_theme_font_override]."
msgstr ""
"Возвращает [code]true[/code], если есть локальное переопределение для темы "
"[Font] с указанным [param name] в этом узле [Control].\n"
"См. [method add_theme_font_override]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a font size item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующая [Theme], "
"которая имеет элемент размера шрифта с указанными [param name] и [param "
"theme_type].\n"
"Подробности см. в [method get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme font size "
"with the specified [param name] in this [Control] node.\n"
"See [method add_theme_font_size_override]."
msgstr ""
"Возвращает [code]true[/code], если есть локальное переопределение для размера "
"шрифта темы с указанным [param name] в этом узле [Control].\n"
"См. [method add_theme_font_size_override]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"an icon item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующая [Theme], "
"которая имеет элемент значка с указанными [param name] и [param theme_type].\n"
"Подробнее см. [method get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme icon with "
"the specified [param name] in this [Control] node.\n"
"See [method add_theme_icon_override]."
msgstr ""
"Возвращает [code]true[/code], если есть локальное переопределение для значка "
"темы с указанным [param name] в этом узле [Control].\n"
"См. [method add_theme_icon_override]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a stylebox item with the specified [param name] and [param theme_type].\n"
"See [method get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующая [Theme], "
"которая имеет элемент stylebox с указанными [param name] и [param "
"theme_type].\n"
"Подробнее см. [method get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a local override for a theme [StyleBox] "
"with the specified [param name] in this [Control] node.\n"
"See [method add_theme_stylebox_override]."
msgstr ""
"Возвращает [code]true[/code], если есть локальное переопределение для темы "
"[StyleBox] с указанным [param name] в этом узле [Control].\n"
"См. [method add_theme_stylebox_override]."

msgid ""
"Returns [code]true[/code] if a drag operation is successful. Alternative to "
"[method Viewport.gui_is_drag_successful].\n"
"Best used with [constant Node.NOTIFICATION_DRAG_END]."
msgstr ""
"Возвращает [code]true[/code], если операция перетаскивания прошла успешно. "
"Альтернатива [method Viewport.gui_is_drag_successful].\n"
"Лучше всего использовать с [constant Node.NOTIFICATION_DRAG_END]."

msgid ""
"Returns [code]true[/code] if the layout is right-to-left. See also [member "
"layout_direction]."
msgstr ""
"Возвращает [code]true[/code], если макет справа налево. См. также [member "
"layout_direction]."

msgid "Give up the focus. No other control will be able to receive input."
msgstr ""
"Откажитесь от фокуса. Никакой другой элемент управления не сможет получить "
"входные данные."

msgid ""
"Removes a local override for a theme [Color] with the specified [param name] "
"previously added by [method add_theme_color_override] or via the Inspector "
"dock."
msgstr ""
"Удаляет локальное переопределение для темы [Color] с указанным [param name], "
"ранее добавленное с помощью [method add_theme_color_override] или через "
"панель инспектора."

msgid ""
"Removes a local override for a theme constant with the specified [param name] "
"previously added by [method add_theme_constant_override] or via the Inspector "
"dock."
msgstr ""
"Удаляет локальное переопределение для константы темы с указанным [param "
"name], ранее добавленное [method add_theme_constant_override] или через "
"панель инспектора."

msgid ""
"Removes a local override for a theme [Font] with the specified [param name] "
"previously added by [method add_theme_font_override] or via the Inspector "
"dock."
msgstr ""
"Удаляет локальное переопределение для темы [Font] с указанным [param name], "
"ранее добавленное [method add_theme_font_override] или через панель "
"инспектора."

msgid ""
"Removes a local override for a theme font size with the specified [param "
"name] previously added by [method add_theme_font_size_override] or via the "
"Inspector dock."
msgstr ""
"Удаляет локальное переопределение размера шрифта темы с указанным [param "
"name], ранее добавленное [method add_theme_font_size_override] или через "
"панель инспектора."

msgid ""
"Removes a local override for a theme icon with the specified [param name] "
"previously added by [method add_theme_icon_override] or via the Inspector "
"dock."
msgstr ""
"Удаляет локальное переопределение для значка темы с указанным [param name], "
"ранее добавленное [method add_theme_icon_override] или через панель "
"инспектора."

msgid ""
"Removes a local override for a theme [StyleBox] with the specified [param "
"name] previously added by [method add_theme_stylebox_override] or via the "
"Inspector dock."
msgstr ""
"Удаляет локальное переопределение для темы [StyleBox] с указанным [param "
"name], ранее добавленное [method add_theme_stylebox_override] или через "
"панель инспектора."

msgid ""
"Resets the size to [method get_combined_minimum_size]. This is equivalent to "
"calling [code]set_size(Vector2())[/code] (or any size below the minimum)."
msgstr ""
"Сбрасывает размер до [method get_combined_minimum_size]. Это эквивалентно "
"вызову [code]set_size(Vector2())[/code] (или любого размера ниже "
"минимального)."

msgid ""
"Sets the anchor for the specified [enum Side] to [param anchor]. A setter "
"method for [member anchor_bottom], [member anchor_left], [member "
"anchor_right] and [member anchor_top].\n"
"If [param keep_offset] is [code]true[/code], offsets aren't updated after "
"this operation.\n"
"If [param push_opposite_anchor] is [code]true[/code] and the opposite anchor "
"overlaps this anchor, the opposite one will have its value overridden. For "
"example, when setting left anchor to 1 and the right anchor has value of 0.5, "
"the right anchor will also get value of 1. If [param push_opposite_anchor] "
"was [code]false[/code], the left anchor would get value 0.5."
msgstr ""
"Устанавливает якорь для указанного [enum Side] на [param anchor]. Метод "
"установки для [member anchor_bottom], [member anchor_left], [member "
"anchor_right] и [member anchor_top].\n"
"Если [param keep_offset] равен [code]true[/code], смещения не обновляются "
"после этой операции.\n"
"Если [param push_opposite_anchor] равен [code]true[/code] и противоположный "
"якорь перекрывает этот якорь, противоположный якорь будет иметь "
"переопределенное значение. Например, если установить левый якорь на 1, а "
"правый якорь имеет значение 0,5, правый якорь также получит значение 1. Если "
"[param push_opposite_anchor] равен [code]false[/code], левый якорь получит "
"значение 0,5."

msgid ""
"Works the same as [method set_anchor], but instead of [code]keep_offset[/"
"code] argument and automatic update of offset, it allows to set the offset "
"yourself (see [method set_offset])."
msgstr ""
"Работает так же, как [method set_anchor], но вместо аргумента "
"[code]keep_offset[/code] и автоматического обновления смещения, он позволяет "
"установить смещение самостоятельно (см. [method set_offset])."

msgid ""
"Sets both anchor preset and offset preset. See [method set_anchors_preset] "
"and [method set_offsets_preset]."
msgstr ""
"Устанавливает как предустановку якоря, так и предустановку смещения. См. "
"[method set_anchors_preset] и [method set_offsets_preset]."

msgid ""
"Sets the anchors to a [param preset] from [enum Control.LayoutPreset] enum. "
"This is the code equivalent to using the Layout menu in the 2D editor.\n"
"If [param keep_offsets] is [code]true[/code], control's position will also be "
"updated."
msgstr ""
"Устанавливает якоря на [param preset] из [enum Control.LayoutPreset] enum. "
"Это код, эквивалентный использованию меню Layout в 2D-редакторе.\n"
"Если [param keep_offsets] равен [code]true[/code], положение элемента "
"управления также будет обновлено."

msgid ""
"Sets [member offset_left] and [member offset_top] at the same time. "
"Equivalent of changing [member position]."
msgstr ""
"Устанавливает [member offset_left] и [member offset_top] одновременно. "
"Эквивалентно изменению [member position]."

msgid ""
"Sets the given callables to be used instead of the control's own drag-and-"
"drop virtual methods. If a callable is empty, its respective virtual method "
"is used as normal.\n"
"The arguments for each callable should be exactly the same as their "
"respective virtual methods, which would be:\n"
"- [param drag_func] corresponds to [method _get_drag_data] and requires a "
"[Vector2];\n"
"- [param can_drop_func] corresponds to [method _can_drop_data] and requires "
"both a [Vector2] and a [Variant];\n"
"- [param drop_func] corresponds to [method _drop_data] and requires both a "
"[Vector2] and a [Variant]."
msgstr ""
"Устанавливает заданные вызываемые объекты для использования вместо "
"собственных виртуальных методов перетаскивания элемента управления. Если "
"вызываемый объект пуст, соответствующий ему виртуальный метод используется "
"как обычно.\n"
"Аргументы для каждого вызываемого объекта должны быть точно такими же, как и "
"соответствующие им виртуальные методы, которые будут:\n"
"- [param drag_func] соответствует [method _get_drag_data] и требует "
"[Vector2];\n"
"- [param can_drop_func] соответствует [method _can_drop_data] и требует как "
"[Vector2], так и [Variant];\n"
"- [param drop_func] соответствует [method _drop_data] и требует как "
"[Vector2], так и [Variant]."

msgid ""
"Shows the given control at the mouse pointer. A good time to call this method "
"is in [method _get_drag_data]. The control must not be in the scene tree. You "
"should not free the control, and you should not keep a reference to the "
"control beyond the duration of the drag. It will be deleted automatically "
"after the drag has ended.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@export var color = Color(1, 0, 0, 1)\n"
"\n"
"func _get_drag_data(position):\n"
"\t# Use a control that is not in the tree\n"
"\tvar cpb = ColorPickerButton.new()\n"
"\tcpb.color = color\n"
"\tcpb.size = Vector2(50, 50)\n"
"\tset_drag_preview(cpb)\n"
"\treturn color\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export]\n"
"private Color _color = new Color(1, 0, 0, 1);\n"
"\n"
"public override Variant _GetDragData(Vector2 atPosition)\n"
"{\n"
"\t// Use a control that is not in the tree\n"
"\tvar cpb = new ColorPickerButton();\n"
"\tcpb.Color = _color;\n"
"\tcpb.Size = new Vector2(50, 50);\n"
"\tSetDragPreview(cpb);\n"
"\treturn _color;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Показывает заданный элемент управления на указателе мыши. Хорошее время для "
"вызова этого метода — в [method _get_drag_data]. Элемент управления не должен "
"находиться в дереве сцены. Вы не должны освобождать элемент управления и не "
"должны сохранять ссылку на элемент управления после окончания перетаскивания. "
"Он будет автоматически удален после завершения перетаскивания.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@export var color = Color(1, 0, 0, 1)\n"
"\n"
"func _get_drag_data(position):\n"
"\t# Используйте элемент управления, которого нет в дереве\n"
"\tvar cpb = ColorPickerButton.new()\n"
"\tcpb.color = color\n"
"\tcpb.size = Vector2(50, 50)\n"
"\tset_drag_preview(cpb)\n"
"\treturn color\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export]\n"
"private Color _color = new Color(1, 0, 0, 1);\n"
"\n"
"public override Variant _GetDragData(Vector2 atPosition)\n"
"{\n"
"\t// Используйте элемент управления, которого нет в дереве\n"
"\tvar cpb = new ColorPickerButton();\n"
"\tcpb.Color = _color;\n"
"\tcpb.Size = new Vector2(50, 50);\n"
"\tSetDragPreview(cpb);\n"
"\treturn _color;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Sets [member offset_right] and [member offset_bottom] at the same time."
msgstr ""
"Устанавливает [member offset_right] и [member offset_bottom] одновременно."

msgid ""
"Sets the focus neighbor for the specified [enum Side] to the [Control] at "
"[param neighbor] node path. A setter method for [member "
"focus_neighbor_bottom], [member focus_neighbor_left], [member "
"focus_neighbor_right] and [member focus_neighbor_top]."
msgstr ""
"Устанавливает соседа фокуса для указанного [enum Side] на [Control] в [param "
"neighbor] пути узла. Метод установки для [member focus_neighbor_bottom], "
"[member focus_neighbor_left], [member focus_neighbor_right] и [member "
"focus_neighbor_top]."

msgid ""
"Sets the [member global_position] to given [param position].\n"
"If [param keep_offsets] is [code]true[/code], control's anchors will be "
"updated instead of offsets."
msgstr ""
"Устанавливает [member global_position] на заданное [param position].\n"
"Если [param keep_offsets] равно [code]true[/code], вместо смещений будут "
"обновлены якоря элемента управления."

msgid ""
"Sets the offset for the specified [enum Side] to [param offset]. A setter "
"method for [member offset_bottom], [member offset_left], [member "
"offset_right] and [member offset_top]."
msgstr ""
"Устанавливает смещение для указанного [enum Side] на [param offset]. Метод "
"установки для [member offset_bottom], [member offset_left], [member "
"offset_right] и [member offset_top]."

msgid ""
"Sets the offsets to a [param preset] from [enum Control.LayoutPreset] enum. "
"This is the code equivalent to using the Layout menu in the 2D editor.\n"
"Use parameter [param resize_mode] with constants from [enum "
"Control.LayoutPresetMode] to better determine the resulting size of the "
"[Control]. Constant size will be ignored if used with presets that change "
"size, e.g. [constant PRESET_LEFT_WIDE].\n"
"Use parameter [param margin] to determine the gap between the [Control] and "
"the edges."
msgstr ""
"Устанавливает смещения на [param preset] из [enum Control.LayoutPreset]. Это "
"код, эквивалентный использованию меню Layout в 2D-редакторе.\n"
"Используйте параметр [param resize_mode] с константами из [enum "
"Control.LayoutPresetMode], чтобы лучше определить результирующий размер "
"[Control]. Постоянный размер будет игнорироваться, если используется с "
"предустановками, которые изменяют размер, например, [constant "
"PRESET_LEFT_WIDE].\n"
"Используйте параметр [param margin], чтобы определить зазор между [Control] и "
"краями."

msgid ""
"Sets the [member position] to given [param position].\n"
"If [param keep_offsets] is [code]true[/code], control's anchors will be "
"updated instead of offsets."
msgstr ""
"Устанавливает [member position] на заданное [param position].\n"
"Если [param keep_offsets] равно [code]true[/code], то вместо смещений будут "
"обновлены якоря элемента управления."

msgid ""
"Sets the size (see [member size]).\n"
"If [param keep_offsets] is [code]true[/code], control's anchors will be "
"updated instead of offsets."
msgstr ""
"Устанавливает размер (см. [member size]).\n"
"Если [param keep_offsets] равен [code]true[/code], вместо смещений будут "
"обновлены якоря элемента управления."

msgid ""
"Invalidates the size cache in this node and in parent nodes up to top level. "
"Intended to be used with [method get_minimum_size] when the return value is "
"changed. Setting [member custom_minimum_size] directly calls this method "
"automatically."
msgstr ""
"Делает недействительным кэш размера в этом узле и в родительских узлах до "
"верхнего уровня. Предназначено для использования с [method get_minimum_size] "
"при изменении возвращаемого значения. Установка [member custom_minimum_size] "
"напрямую вызывает этот метод автоматически."

msgid ""
"Moves the mouse cursor to [param position], relative to [member position] of "
"this [Control].\n"
"[b]Note:[/b] [method warp_mouse] is only supported on Windows, macOS and "
"Linux. It has no effect on Android, iOS and Web."
msgstr ""
"Перемещает курсор мыши в [param position], относительно [member position] "
"этого [Control].\n"
"[b]Примечание:[/b] [method warp_mouse] поддерживается только в Windows, macOS "
"и Linux. Он не действует на Android, iOS и Web."

msgid "The paths to the nodes which are controlled by this node."
msgstr "Пути к узлам, которые контролируются данным узлом."

msgid "The paths to the nodes which are describing this node."
msgstr "Пути к узлам, описывающие данный узел."

msgid "The human-readable node description that is reported to assistive apps."
msgstr ""
"Удобочитаемое описание узла, которое передается вспомогательным приложениям."

msgid "The paths to the nodes which this node flows into."
msgstr "Пути к узлам, в которые впадает данный узел."

msgid "The paths to the nodes which label this node."
msgstr "Пути к узлам, которые маркируют данный узел."

msgid ""
"The mode with which a live region updates. A live region is a [Node] that is "
"updated as a result of an external event when the user's focus may be "
"elsewhere."
msgstr ""
"Режим обновления активной области. Активная область — это [Node], который "
"обновляется в результате внешнего события, когда фокус пользователя может "
"быть в другом месте."

msgid "The human-readable node name that is reported to assistive apps."
msgstr "Удобочитаемое имя узла, которое сообщается вспомогательным приложениям."

msgid ""
"Anchors the bottom edge of the node to the origin, the center, or the end of "
"its parent control. It changes how the bottom offset updates when the node "
"moves or changes size. You can use one of the [enum Anchor] constants for "
"convenience."
msgstr ""
"Прикрепляет нижний край узла к началу координат, центру или концу его "
"родительского элемента управления. Изменяет способ обновления нижнего "
"смещения при перемещении узла или изменении его размера. Для удобства можно "
"использовать одну из констант [enum Anchor]."

msgid ""
"Anchors the left edge of the node to the origin, the center or the end of its "
"parent control. It changes how the left offset updates when the node moves or "
"changes size. You can use one of the [enum Anchor] constants for convenience."
msgstr ""
"Привязывает левый край узла к началу координат, центру или концу его "
"родительского элемента управления. Изменяет способ обновления левого смещения "
"при перемещении узла или изменении размера. Для удобства можно использовать "
"одну из констант [enum Anchor]."

msgid ""
"Anchors the right edge of the node to the origin, the center or the end of "
"its parent control. It changes how the right offset updates when the node "
"moves or changes size. You can use one of the [enum Anchor] constants for "
"convenience."
msgstr ""
"Привязывает правый край узла к началу координат, центру или концу его "
"родительского элемента управления. Изменяет способ обновления правого "
"смещения при перемещении узла или изменении его размера. Для удобства можно "
"использовать одну из констант [enum Anchor]."

msgid ""
"Anchors the top edge of the node to the origin, the center or the end of its "
"parent control. It changes how the top offset updates when the node moves or "
"changes size. You can use one of the [enum Anchor] constants for convenience."
msgstr ""
"Прикрепляет верхний край узла к началу координат, центру или концу его "
"родительского элемента управления. Изменяет способ обновления верхнего "
"смещения при перемещении узла или изменении его размера. Для удобства можно "
"использовать одну из констант [enum Anchor]."

msgid ""
"Use [member Node.auto_translate_mode] and [method Node.can_auto_translate] "
"instead."
msgstr ""
"Вместо этого используйте [member Node.auto_translate_mode] и [method "
"Node.can_auto_translate]."

msgid ""
"Toggles if any text should automatically change to its translated version "
"depending on the current locale."
msgstr ""
"Включает/выключает автоматическую замену текста на переведенную версию в "
"зависимости от текущей локали."

msgid ""
"Enables whether rendering of [CanvasItem] based children should be clipped to "
"this control's rectangle. If [code]true[/code], parts of a child which would "
"be visibly outside of this control's rectangle will not be rendered and won't "
"receive input."
msgstr ""
"Включает, следует ли обрезать отрисовку дочерних элементов на основе "
"[CanvasItem] до прямоугольника этого элемента управления. Если [code]true[/"
"code], части дочернего элемента, которые будут видны за пределами "
"прямоугольника этого элемента управления, не будут отрисовываться и не будут "
"получать входные данные."

msgid ""
"The minimum size of the node's bounding rectangle. If you set it to a value "
"greater than [code](0, 0)[/code], the node's bounding rectangle will always "
"have at least this size. Note that [Control] nodes have their internal "
"minimum size returned by [method get_minimum_size]. It depends on the "
"control's contents, like text, textures, or style boxes. The actual minimum "
"size is the maximum value of this property and the internal minimum size (see "
"[method get_combined_minimum_size])."
msgstr ""
"Минимальный размер ограничивающего прямоугольника узла. Если вы установите "
"его на значение больше, чем [code](0, 0)[/code], ограничивающий прямоугольник "
"узла всегда будет иметь по крайней мере этот размер. Обратите внимание, что "
"узлы [Control] имеют свой внутренний минимальный размер, возвращаемый [method "
"get_minimum_size]. Он зависит от содержимого элемента управления, такого как "
"текст, текстуры или поля стилей. Фактический минимальный размер — это "
"максимальное значение этого свойства и внутренний минимальный размер (см. "
"[method get_combined_minimum_size])."

msgid ""
"Determines which controls can be focused together with [member focus_mode]. "
"See [method get_focus_mode_with_override]. Since the default behavior is "
"[constant FOCUS_BEHAVIOR_INHERITED], this can be used to prevent all children "
"controls from getting focused."
msgstr ""
"Определяет, какие элементы управления могут быть сфокусированы вместе с "
"[member focus_mode]. См. [method get_focus_mode_with_override]. Поскольку "
"поведение по умолчанию — [constant FOCUS_BEHAVIOR_INHERITED], это можно "
"использовать для предотвращения фокусировки всех дочерних элементов "
"управления."

msgid ""
"Determines which controls can be focused. Only one control can be focused at "
"a time, and the focused control will receive keyboard, gamepad, and mouse "
"events in [method _gui_input]. Use [method get_focus_mode_with_override] to "
"determine if a control can grab focus, since [member "
"focus_behavior_recursive] also affects it. See also [method grab_focus]."
msgstr ""
"Определяет, какие элементы управления могут быть сфокусированы. Только один "
"элемент управления может быть сфокусирован одновременно, и сфокусированный "
"элемент управления будет получать события клавиатуры, геймпада и мыши в "
"[method _gui_input]. Используйте [method get_focus_mode_with_override], чтобы "
"определить, может ли элемент управления захватить фокус, поскольку [member "
"focus_behavior_recursive] также влияет на него. См. также [method grab_focus]."

msgid ""
"Tells Godot which node it should give focus to if the user presses the down "
"arrow on the keyboard or down on a gamepad by default. You can change the key "
"by editing the [member ProjectSettings.input/ui_down] input action. The node "
"must be a [Control]. If this property is not set, Godot will give focus to "
"the closest [Control] to the bottom of this one."
msgstr ""
"Сообщает Godot, какому узлу следует передать фокус, если пользователь "
"нажимает стрелку вниз на клавиатуре или вниз на геймпаде по умолчанию. Вы "
"можете изменить клавишу, отредактировав действие ввода [member "
"ProjectSettings.input/ui_down]. Узел должен быть [Control]. Если это свойство "
"не задано, Godot передаст фокус ближайшему [Control] к нижней части этого."

msgid ""
"Tells Godot which node it should give focus to if the user presses the left "
"arrow on the keyboard or left on a gamepad by default. You can change the key "
"by editing the [member ProjectSettings.input/ui_left] input action. The node "
"must be a [Control]. If this property is not set, Godot will give focus to "
"the closest [Control] to the left of this one."
msgstr ""
"Сообщает Godot, какому узлу следует передать фокус, если пользователь "
"нажимает левую стрелку на клавиатуре или левую на геймпаде по умолчанию. Вы "
"можете изменить клавишу, отредактировав действие ввода [member "
"ProjectSettings.input/ui_left]. Узел должен быть [Control]. Если это свойство "
"не задано, Godot передаст фокус ближайшему [Control] слева от этого."

msgid ""
"Tells Godot which node it should give focus to if the user presses the right "
"arrow on the keyboard or right on a gamepad by default. You can change the "
"key by editing the [member ProjectSettings.input/ui_right] input action. The "
"node must be a [Control]. If this property is not set, Godot will give focus "
"to the closest [Control] to the right of this one."
msgstr ""
"Сообщает Godot, какому узлу следует передать фокус, если пользователь "
"нажимает стрелку вправо на клавиатуре или вправо на геймпаде по умолчанию. Вы "
"можете изменить клавишу, отредактировав действие ввода [member "
"ProjectSettings.input/ui_right]. Узел должен быть [Control]. Если это "
"свойство не задано, Godot передаст фокус ближайшему [Control] справа от этого."

msgid ""
"Tells Godot which node it should give focus to if the user presses the top "
"arrow on the keyboard or top on a gamepad by default. You can change the key "
"by editing the [member ProjectSettings.input/ui_up] input action. The node "
"must be a [Control]. If this property is not set, Godot will give focus to "
"the closest [Control] to the top of this one."
msgstr ""
"Сообщает Godot, какому узлу следует передать фокус, если пользователь "
"нажимает верхнюю стрелку на клавиатуре или верхнюю на геймпаде по умолчанию. "
"Вы можете изменить клавишу, отредактировав действие ввода [member "
"ProjectSettings.input/ui_up]. Узел должен быть [Control]. Если это свойство "
"не задано, Godot передаст фокус ближайшему [Control] к верхней части этого."

msgid ""
"Tells Godot which node it should give focus to if the user presses [kbd]Tab[/"
"kbd] on a keyboard by default. You can change the key by editing the [member "
"ProjectSettings.input/ui_focus_next] input action.\n"
"If this property is not set, Godot will select a \"best guess\" based on "
"surrounding nodes in the scene tree."
msgstr ""
"Сообщает Godot, на какой узел следует направить фокус, если пользователь "
"нажимает [kbd]Tab[/kbd] на клавиатуре по умолчанию. Вы можете изменить "
"клавишу, отредактировав действие ввода [member ProjectSettings.input/"
"ui_focus_next]. \n"
"Если это свойство не задано, Godot выберет «лучшее предположение» на основе "
"окружающих узлов в дереве сцены."

msgid ""
"Tells Godot which node it should give focus to if the user presses [kbd]Shift "
"+ Tab[/kbd] on a keyboard by default. You can change the key by editing the "
"[member ProjectSettings.input/ui_focus_prev] input action.\n"
"If this property is not set, Godot will select a \"best guess\" based on "
"surrounding nodes in the scene tree."
msgstr ""
"Сообщает Godot, на какой узел следует направить фокус, если пользователь "
"нажимает [kbd]Shift + Tab[/kbd] на клавиатуре по умолчанию. Вы можете "
"изменить клавишу, отредактировав действие ввода [member ProjectSettings.input/"
"ui_focus_prev]. \n"
"Если это свойство не задано, Godot выберет «лучшее предположение» на основе "
"окружающих узлов в дереве сцены."

msgid ""
"The node's global position, relative to the world (usually to the "
"[CanvasLayer])."
msgstr ""
"Глобальное положение узла относительно мира (обычно по отношению к "
"[CanvasLayer])."

msgid ""
"Controls the direction on the horizontal axis in which the control should "
"grow if its horizontal minimum size is changed to be greater than its current "
"size, as the control always has to be at least the minimum size."
msgstr ""
"Управляет направлением по горизонтальной оси, в котором должен увеличиваться "
"элемент управления, если его минимальный горизонтальный размер изменяется и "
"становится больше текущего размера, поскольку элемент управления всегда "
"должен иметь размер не меньше минимального."

msgid ""
"Controls the direction on the vertical axis in which the control should grow "
"if its vertical minimum size is changed to be greater than its current size, "
"as the control always has to be at least the minimum size."
msgstr ""
"Управляет направлением по вертикальной оси, в котором должен увеличиваться "
"элемент управления, если его минимальный вертикальный размер изменяется и "
"становится больше текущего размера, поскольку элемент управления всегда "
"должен иметь размер не меньше минимального."

msgid ""
"Controls layout direction and text writing direction. Right-to-left layouts "
"are necessary for certain languages (e.g. Arabic and Hebrew). See also "
"[method is_layout_rtl]."
msgstr ""
"Управляет направлением макета и направлением написания текста. Для некоторых "
"языков (например, арабского и иврита) необходимы макеты справа налево. См. "
"также [method is_layout_rtl]."

msgid ""
"If [code]true[/code], automatically converts code line numbers, list indices, "
"[SpinBox] and [ProgressBar] values from the Western Arabic (0..9) to the "
"numeral systems used in current locale.\n"
"[b]Note:[/b] Numbers within the text are not automatically converted, it can "
"be done manually, using [method TextServer.format_number]."
msgstr ""
"Если [code]true[/code], автоматически преобразует номера строк кода, индексы "
"списков, значения [SpinBox] и [ProgressBar] из западно-арабской системы "
"счисления (0..9) в системы счисления, используемые в текущей локали.\n"
"[b]Примечание:[/b] Числа в тексте не преобразуются автоматически, это можно "
"сделать вручную, используя [method TextServer.format_number]."

msgid ""
"Determines which controls can receive mouse input together with [member "
"mouse_filter]. See [method get_mouse_filter_with_override]. Since the default "
"behavior is [constant MOUSE_BEHAVIOR_INHERITED], this can be used to prevent "
"all children controls from receiving mouse input."
msgstr ""
"Определяет, какие элементы управления могут получать ввод мыши вместе с "
"[member mouse_filter]. См. [method get_mouse_filter_with_override]. Поскольку "
"поведение по умолчанию — [constant MOUSE_BEHAVIOR_INHERITED], это можно "
"использовать для предотвращения получения ввода мыши всеми дочерними "
"элементами управления."

msgid ""
"The default cursor shape for this control. Useful for Godot plugins and "
"applications or games that use the system's mouse cursors.\n"
"[b]Note:[/b] On Linux, shapes may vary depending on the cursor theme of the "
"system."
msgstr ""
"Форма курсора по умолчанию для этого элемента управления. Полезно для "
"плагинов Godot и приложений или игр, которые используют системные курсоры "
"мыши.\n"
"[b]Примечание:[/b] В Linux формы могут различаться в зависимости от темы "
"курсора системы."

msgid ""
"Determines which controls will be able to receive mouse button input events "
"through [method _gui_input] and the [signal mouse_entered], and [signal "
"mouse_exited] signals. Also determines how these events should be propagated. "
"See the constants to learn what each does. Use [method "
"get_mouse_filter_with_override] to determine if a control can receive mouse "
"input, since [member mouse_behavior_recursive] also affects it."
msgstr ""
"Определяет, какие элементы управления смогут получать события ввода с помощью "
"кнопки мыши через [method _gui_input] и сигналы [signal mouse_entered] и "
"[signal mouse_exited]. Также определяет, как эти события должны "
"распространяться. См. константы, чтобы узнать, что делает каждая из них. "
"Используйте [method get_mouse_filter_with_override], чтобы определить, может "
"ли элемент управления получать ввод с помощью мыши, поскольку [member "
"mouse_behavior_recursive] также влияет на него."

msgid ""
"When enabled, scroll wheel events processed by [method _gui_input] will be "
"passed to the parent control even if [member mouse_filter] is set to "
"[constant MOUSE_FILTER_STOP].\n"
"You should disable it on the root of your UI if you do not want scroll events "
"to go to the [method Node._unhandled_input] processing.\n"
"[b]Note:[/b] Because this property defaults to [code]true[/code], this allows "
"nested scrollable containers to work out of the box."
msgstr ""
"При включении события колеса прокрутки, обработанные [method _gui_input], "
"будут передаваться родительскому элементу управления, даже если [member "
"mouse_filter] установлен на [constant MOUSE_FILTER_STOP].\n"
"Вы должны отключить его в корне вашего пользовательского интерфейса, если вы "
"не хотите, чтобы события прокрутки передавались в обработку [method "
"Node._unhandled_input].\n"
"[b]Примечание:[/b] Поскольку это свойство по умолчанию равно [code]true[/"
"code], это позволяет вложенным прокручиваемым контейнерам работать из коробки."

msgid ""
"Distance between the node's bottom edge and its parent control, based on "
"[member anchor_bottom].\n"
"Offsets are often controlled by one or multiple parent [Container] nodes, so "
"you should not modify them manually if your node is a direct child of a "
"[Container]. Offsets update automatically when you move or resize the node."
msgstr ""
"Расстояние между нижним краем узла и его родительским элементом управления, "
"основанное на [member anchor_bottom].\n"
"Смещения часто контролируются одним или несколькими родительскими узлами "
"[Container], поэтому вам не следует изменять их вручную, если ваш узел "
"является прямым потомком [Container]. Смещения обновляются автоматически при "
"перемещении или изменении размера узла."

msgid ""
"Distance between the node's left edge and its parent control, based on "
"[member anchor_left].\n"
"Offsets are often controlled by one or multiple parent [Container] nodes, so "
"you should not modify them manually if your node is a direct child of a "
"[Container]. Offsets update automatically when you move or resize the node."
msgstr ""
"Расстояние между левым краем узла и его родительским элементом управления, "
"основанное на [member anchor_left]. \n"
"Смещения часто контролируются одним или несколькими родительскими узлами "
"[Container], поэтому вам не следует изменять их вручную, если ваш узел "
"является прямым потомком [Container]. Смещения обновляются автоматически при "
"перемещении или изменении размера узла."

msgid ""
"Distance between the node's right edge and its parent control, based on "
"[member anchor_right].\n"
"Offsets are often controlled by one or multiple parent [Container] nodes, so "
"you should not modify them manually if your node is a direct child of a "
"[Container]. Offsets update automatically when you move or resize the node."
msgstr ""
"Расстояние между правым краем узла и его родительским элементом управления, "
"основанное на [member anchor_right]. \n"
"Смещения часто контролируются одним или несколькими родительскими узлами "
"[Container], поэтому вам не следует изменять их вручную, если ваш узел "
"является прямым потомком [Container]. Смещения обновляются автоматически при "
"перемещении или изменении размера узла."

msgid ""
"Distance between the node's top edge and its parent control, based on [member "
"anchor_top].\n"
"Offsets are often controlled by one or multiple parent [Container] nodes, so "
"you should not modify them manually if your node is a direct child of a "
"[Container]. Offsets update automatically when you move or resize the node."
msgstr ""
"Расстояние между верхним краем узла и его родительским элементом управления, "
"основанное на [member anchor_top].\n"
"Смещения часто контролируются одним или несколькими родительскими узлами "
"[Container], поэтому вам не следует изменять их вручную, если ваш узел "
"является прямым потомком [Container]. Смещения обновляются автоматически при "
"перемещении или изменении размера узла."

msgid ""
"By default, the node's pivot is its top-left corner. When you change its "
"[member rotation] or [member scale], it will rotate or scale around this "
"pivot. Set this property to [member size] / 2 to pivot around the Control's "
"center."
msgstr ""
"По умолчанию точкой опоры узла является его верхний левый угол. При изменении "
"его [member rotation] или [member scale] он будет поворачиваться или "
"масштабироваться вокруг этой точки опоры. Установите это свойство на [member "
"size] / 2, чтобы вращаться вокруг центра элемента Control."

msgid ""
"The node's position, relative to its containing node. It corresponds to the "
"rectangle's top-left corner. The property is not affected by [member "
"pivot_offset]."
msgstr ""
"Положение узла относительно содержащего его узла. Соответствует верхнему "
"левому углу прямоугольника. Свойство не зависит от [member pivot_offset]."

msgid ""
"The node's rotation around its pivot, in radians. See [member pivot_offset] "
"to change the pivot's position.\n"
"[b]Note:[/b] This property is edited in the inspector in degrees. If you want "
"to use degrees in a script, use [member rotation_degrees]."
msgstr ""
"Вращение узла вокруг его опорной точки в радианах. См. [member pivot_offset], "
"чтобы изменить положение опорной точки.\n"
"[b]Примечание:[/b] Это свойство редактируется в инспекторе в градусах. Если "
"вы хотите использовать градусы в скрипте, используйте [member "
"rotation_degrees]."

msgid ""
"Helper property to access [member rotation] in degrees instead of radians."
msgstr ""
"Вспомогательное свойство для доступа к [member rotation] в градусах вместо "
"радиан."

msgid ""
"The node's scale, relative to its [member size]. Change this property to "
"scale the node around its [member pivot_offset]. The Control's tooltip will "
"also scale according to this value.\n"
"[b]Note:[/b] This property is mainly intended to be used for animation "
"purposes. To support multiple resolutions in your project, use an appropriate "
"viewport stretch mode as described in the [url=$DOCS_URL/tutorials/rendering/"
"multiple_resolutions.html]documentation[/url] instead of scaling Controls "
"individually.\n"
"[b]Note:[/b] [member FontFile.oversampling] does [i]not[/i] take [Control] "
"[member scale] into account. This means that scaling up/down will cause "
"bitmap fonts and rasterized (non-MSDF) dynamic fonts to appear blurry or "
"pixelated. To ensure text remains crisp regardless of scale, you can enable "
"MSDF font rendering by enabling [member ProjectSettings.gui/theme/"
"default_font_multichannel_signed_distance_field] (applies to the default "
"project font only), or enabling [b]Multichannel Signed Distance Field[/b] in "
"the import options of a DynamicFont for custom fonts. On system fonts, "
"[member SystemFont.multichannel_signed_distance_field] can be enabled in the "
"inspector.\n"
"[b]Note:[/b] If the Control node is a child of a [Container] node, the scale "
"will be reset to [code]Vector2(1, 1)[/code] when the scene is instantiated. "
"To set the Control's scale when it's instantiated, wait for one frame using "
"[code]await get_tree().process_frame[/code] then set its [member scale] "
"property."
msgstr ""
"Масштаб узла относительно его [member size]. Измените это свойство, чтобы "
"масштабировать узел вокруг его [member pivot_offset]. Подсказка элемента "
"управления также будет масштабироваться в соответствии с этим значением.\n"
"[b]Примечание:[/b] Это свойство в основном предназначено для использования в "
"целях анимации. Для поддержки нескольких разрешений в вашем проекте "
"используйте соответствующий режим растяжения области просмотра, как описано в "
"[url=$DOCS_URL/tutorials/rendering/multiple_resolutions.html]документации[/"
"url], вместо того, чтобы масштабировать элементы управления по отдельности.\n"
"[b]Примечание:[/b] [member FontFile.oversampling] [i]не[/i] учитывает "
"[Control] [member scale]. Это означает, что масштабирование вверх/вниз "
"приведет к тому, что растровые шрифты и растрированные (не MSDF) динамические "
"шрифты будут выглядеть размытыми или пикселизированными. Чтобы текст "
"оставался четким независимо от масштаба, можно включить рендеринг шрифта "
"MSDF, включив [member ProjectSettings.gui/theme/"
"default_font_multichannel_signed_distance_field] (применяется только к шрифту "
"проекта по умолчанию) или включив [b]Multichannel Signed Distance Field[/b] в "
"параметрах импорта DynamicFont для пользовательских шрифтов. В системных "
"шрифтах [member SystemFont.multichannel_signed_distance_field] можно включить "
"в инспекторе.\n"
"[b]Примечание:[/b] Если узел Control является дочерним элементом узла "
"[Container], масштаб будет сброшен до [code]Vector2(1, 1)[/code] при создании "
"экземпляра сцены. Чтобы задать масштаб элемента Control при его создании, "
"подождите один кадр с помощью [code]await get_tree().process_frame[/code], а "
"затем задайте его свойство [member scale]."

msgid ""
"The [Node] which must be a parent of the focused [Control] for the shortcut "
"to be activated. If [code]null[/code], the shortcut can be activated when any "
"control is focused (a global shortcut). This allows shortcuts to be accepted "
"only when the user has a certain area of the GUI focused."
msgstr ""
"[Node], который должен быть родителем сфокусированного [Control], чтобы "
"сочетание клавиш было активировано. Если [code]null[/code], сочетание клавиш "
"может быть активировано, когда любой элемент управления находится в фокусе "
"(глобальное сочетание клавиш). Это позволяет принимать сочетания клавиш "
"только тогда, когда пользователь сфокусировал определенную область "
"графического интерфейса."

msgid ""
"The size of the node's bounding rectangle, in the node's coordinate system. "
"[Container] nodes update this property automatically."
msgstr ""
"Размер ограничивающего прямоугольника узла в системе координат узла. Узлы "
"[Container] обновляют это свойство автоматически."

msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the X axis. Use a combination of the [enum SizeFlags] constants to change "
"the flags. See the constants to learn what each does."
msgstr ""
"Сообщает родительским узлам [Container], как они должны изменить размер и "
"разместить узел на оси X. Используйте комбинацию констант [enum SizeFlags], "
"чтобы изменить флаги. Посмотрите константы, чтобы узнать, что делает каждая "
"из них."

msgid ""
"If the node and at least one of its neighbors uses the [constant SIZE_EXPAND] "
"size flag, the parent [Container] will let it take more or less space "
"depending on this property. If this node has a stretch ratio of 2 and its "
"neighbor a ratio of 1, this node will take two thirds of the available space."
msgstr ""
"Если узел и хотя бы один из его соседей используют флаг размера [constant "
"SIZE_EXPAND], родительский [Container] позволит ему занять больше или меньше "
"места в зависимости от этого свойства. Если этот узел имеет коэффициент "
"растяжения 2, а его сосед — коэффициент 1, этот узел займет две трети "
"доступного пространства."

msgid ""
"Tells the parent [Container] nodes how they should resize and place the node "
"on the Y axis. Use a combination of the [enum SizeFlags] constants to change "
"the flags. See the constants to learn what each does."
msgstr ""
"Сообщает родительским узлам [Container], как они должны изменить размер и "
"разместить узел на оси Y. Используйте комбинацию констант [enum SizeFlags], "
"чтобы изменить флаги. Посмотрите константы, чтобы узнать, что делает каждая "
"из них."

msgid ""
"The [Theme] resource this node and all its [Control] and [Window] children "
"use. If a child node has its own [Theme] resource set, theme items are merged "
"with child's definitions having higher priority.\n"
"[b]Note:[/b] [Window] styles will have no effect unless the window is "
"embedded."
msgstr ""
"Ресурс [Theme], который использует этот узел и все его дочерние элементы "
"[Control] и [Window]. Если дочерний узел имеет свой собственный набор "
"ресурсов [Theme], элементы темы объединяются с определениями дочернего "
"элемента, имеющими более высокий приоритет.\n"
"[b]Примечание:[/b] Стили [Window] не будут иметь никакого эффекта, если окно "
"не встроено."

msgid ""
"The name of a theme type variation used by this [Control] to look up its own "
"theme items. When empty, the class name of the node is used (e.g. [code skip-"
"lint]Button[/code] for the [Button] control), as well as the class names of "
"all parent classes (in order of inheritance).\n"
"When set, this property gives the highest priority to the type of the "
"specified name. This type can in turn extend another type, forming a "
"dependency chain. See [method Theme.set_type_variation]. If the theme item "
"cannot be found using this type or its base types, lookup falls back on the "
"class names.\n"
"[b]Note:[/b] To look up [Control]'s own items use various [code]get_theme_*[/"
"code] methods without specifying [code]theme_type[/code].\n"
"[b]Note:[/b] Theme items are looked for in the tree order, from branch to "
"root, where each [Control] node is checked for its [member theme] property. "
"The earliest match against any type/class name is returned. The project-level "
"Theme and the default Theme are checked last."
msgstr ""
"Имя вариации типа темы, используемой этим [Control] для поиска собственных "
"элементов темы. Если пусто, используется имя класса узла (например, [code "
"skip-lint]Button[/code] для элемента управления [Button]), а также имена "
"классов всех родительских классов (в порядке наследования).\n"
"Если установлено, это свойство дает наивысший приоритет типу указанного "
"имени. Этот тип, в свою очередь, может расширять другой тип, образуя цепочку "
"зависимостей. См. [method Theme.set_type_variation]. Если элемент темы не "
"может быть найден с помощью этого типа или его базовых типов, поиск "
"возвращается к именам классов.\n"
"[b]Примечание:[/b] Для поиска собственных элементов [Control] используйте "
"различные методы [code]get_theme_*[/code] без указания [code]theme_type[/"
"code].\n"
"[b]Примечание:[/b] Элементы темы ищутся в порядке дерева, от ветви к корню, "
"где каждый узел [Control] проверяется на предмет его свойства [member theme]. "
"Возвращается самое раннее совпадение с любым именем типа/класса. Тема уровня "
"проекта и тема по умолчанию проверяются последними."

msgid ""
"Defines if tooltip text should automatically change to its translated version "
"depending on the current locale. Uses the same auto translate mode as this "
"control when set to [constant Node.AUTO_TRANSLATE_MODE_INHERIT].\n"
"[b]Note:[/b] Tooltips customized using [method _make_custom_tooltip] do not "
"use this auto translate mode automatically."
msgstr ""
"Определяет, должен ли текст подсказки автоматически меняться на переведенную "
"версию в зависимости от текущей локали. Использует тот же режим "
"автоматического перевода, что и этот элемент управления, если задано значение "
"[constant Node.AUTO_TRANSLATE_MODE_INHERIT].\n"
"[b]Примечание:[/b] Подсказки, настроенные с помощью [method "
"_make_custom_tooltip], не используют этот режим автоматического перевода "
"автоматически."

msgid ""
"The default tooltip text. The tooltip appears when the user's mouse cursor "
"stays idle over this control for a few moments, provided that the [member "
"mouse_filter] property is not [constant MOUSE_FILTER_IGNORE]. The time "
"required for the tooltip to appear can be changed with the [member "
"ProjectSettings.gui/timers/tooltip_delay_sec] setting.\n"
"This string is the default return value of [method get_tooltip]. Override "
"[method _get_tooltip] to generate tooltip text dynamically. Override [method "
"_make_custom_tooltip] to customize the tooltip interface and behavior.\n"
"The tooltip popup will use either a default implementation, or a custom one "
"that you can provide by overriding [method _make_custom_tooltip]. The default "
"tooltip includes a [PopupPanel] and [Label] whose theme properties can be "
"customized using [Theme] methods with the [code]\"TooltipPanel\"[/code] and "
"[code]\"TooltipLabel\"[/code] respectively. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var style_box = StyleBoxFlat.new()\n"
"style_box.set_bg_color(Color(1, 1, 0))\n"
"style_box.set_border_width_all(2)\n"
"# We assume here that the `theme` property has been assigned a custom Theme "
"beforehand.\n"
"theme.set_stylebox(\"panel\", \"TooltipPanel\", style_box)\n"
"theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n"
"[/gdscript]\n"
"[csharp]\n"
"var styleBox = new StyleBoxFlat();\n"
"styleBox.SetBgColor(new Color(1, 1, 0));\n"
"styleBox.SetBorderWidthAll(2);\n"
"// We assume here that the `Theme` property has been assigned a custom Theme "
"beforehand.\n"
"Theme.SetStyleBox(\"panel\", \"TooltipPanel\", styleBox);\n"
"Theme.SetColor(\"font_color\", \"TooltipLabel\", new Color(0, 1, 1));\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Текст подсказки по умолчанию. Подсказка появляется, когда курсор мыши "
"пользователя остается неподвижным над этим элементом управления в течение "
"нескольких секунд, при условии, что свойство [member mouse_filter] не равно "
"[constant MOUSE_FILTER_IGNORE]. Время, необходимое для появления подсказки, "
"можно изменить с помощью настройки [member ProjectSettings.gui/timers/"
"tooltip_delay_sec].\n"
"Эта строка является возвращаемым значением по умолчанию для [method "
"get_tooltip]. Переопределите [method _get_tooltip] для динамической генерации "
"текста подсказки. Переопределите [method _make_custom_tooltip] для настройки "
"пользовательского интерфейса и поведения подсказки.\n"
"Всплывающее окно подсказки будет использовать либо реализацию по умолчанию, "
"либо пользовательскую, которую вы можете предоставить, переопределив [method "
"_make_custom_tooltip]. Подсказка по умолчанию включает [PopupPanel] и "
"[Label], свойства темы которых можно настроить с помощью методов [Theme] с "
"[code]\"TooltipPanel\"[/code] и [code]\"TooltipLabel\"[/code] соответственно. "
"Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var style_box = StyleBoxFlat.new()\n"
"style_box.set_bg_color(Color(1, 1, 0))\n"
"style_box.set_border_width_all(2)\n"
"# Здесь мы предполагаем, что свойству `Theme` заранее назначена "
"пользовательская тема.\n"
"theme.set_stylebox(\"panel\", \"TooltipPanel\", style_box)\n"
"theme.set_color(\"font_color\", \"TooltipLabel\", Color(0, 1, 1))\n"
"[/gdscript]\n"
"[csharp]\n"
"var styleBox = new StyleBoxFlat();\n"
"styleBox.SetBgColor(new Color(1, 1, 0));\n"
"styleBox.SetBorderWidthAll(2);\n"
"// Здесь мы предполагаем, что свойству `Theme` заранее назначена "
"пользовательская тема.\n"
"Theme.SetStyleBox(\"panel\", \"TooltipPanel\", styleBox);\n"
"Theme.SetColor(\"font_color\", \"TooltipLabel\", new Color(0, 1, 1));\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Emitted when the node gains focus."
msgstr "Вызывается, когда узел получает фокус."

msgid "Emitted when the node loses focus."
msgstr "Выдается, когда узел теряет фокус."

msgid "Emitted when the node receives an [InputEvent]."
msgstr "Вызывается, когда узел получает [InputEvent]."

msgid "Emitted when the node's minimum size changes."
msgstr "Вызывается при изменении минимального размера узла."

msgid ""
"Emitted when the mouse cursor enters the control's (or any child control's) "
"visible area, that is not occluded behind other Controls or Windows, provided "
"its [member mouse_filter] lets the event reach it and regardless if it's "
"currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect, which Control "
"receives the signal."
msgstr ""
"Вызывается, когда курсор мыши попадает в видимую область элемента управления "
"(или любого дочернего элемента управления), которая не перекрыта другими "
"элементами управления или окнами, при условии, что его [member mouse_filter] "
"позволяет событию достичь его, и независимо от того, находится ли он в фокусе "
"в данный момент или нет.\n"
"[b]Примечание:[/b] [member CanvasItem.z_index] не влияет на то, какой элемент "
"управления получает сигнал."

msgid ""
"Emitted when the mouse cursor leaves the control's (and all child control's) "
"visible area, that is not occluded behind other Controls or Windows, provided "
"its [member mouse_filter] lets the event reach it and regardless if it's "
"currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect, which Control "
"receives the signal.\n"
"[b]Note:[/b] If you want to check whether the mouse truly left the area, "
"ignoring any top nodes, you can use code like this:\n"
"[codeblock]\n"
"func _on_mouse_exited():\n"
"\tif not Rect2(Vector2(), size).has_point(get_local_mouse_position()):\n"
"\t\t# Not hovering over area.\n"
"[/codeblock]"
msgstr ""
"Вызывается, когда курсор мыши покидает видимую область элемента управления (и "
"всех дочерних элементов управления), которая не перекрыта другими элементами "
"управления или окнами, при условии, что его [member mouse_filter] позволяет "
"событию достичь его, и независимо от того, находится ли он в фокусе в данный "
"момент или нет.\n"
"[b]Примечание:[/b] [member CanvasItem.z_index] не влияет на то, какой элемент "
"управления получает сигнал.\n"
"[b]Примечание:[/b] Если вы хотите проверить, действительно ли мышь покинула "
"область, игнорируя любые верхние узлы, вы можете использовать такой код:\n"
"[codeblock]\n"
"func _on_mouse_exited():\n"
"\tif not Rect2(Vector2(), size).has_point(get_local_mouse_position()):\n"
"\t\t# Не зависает над областью.\n"
"[/codeblock]"

msgid "Emitted when the control changes size."
msgstr "Вызывается при изменении размера элемента управления."

msgid ""
"Emitted when one of the size flags changes. See [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
"Выдается при изменении одного из флагов размера. См. [member "
"size_flags_horizontal] и [member size_flags_vertical]."

msgid ""
"Emitted when the [constant NOTIFICATION_THEME_CHANGED] notification is sent."
msgstr ""
"Вызывается при отправке уведомления [constant NOTIFICATION_THEME_CHANGED]."

msgid "The node cannot grab focus. Use with [member focus_mode]."
msgstr "Узел не может захватить фокус. Используйте с [member focus_mode]."

msgid ""
"The node can only grab focus on mouse clicks. Use with [member focus_mode]."
msgstr ""
"Узел может захватывать фокус только по щелчкам мыши. Используйте с [member "
"focus_mode]."

msgid ""
"The node can grab focus on mouse click, using the arrows and the Tab keys on "
"the keyboard, or using the D-pad buttons on a gamepad. Use with [member "
"focus_mode]."
msgstr ""
"Узел может захватывать фокус по щелчку мыши, используя стрелки и клавиши Tab "
"на клавиатуре или кнопки D-pad на геймпаде. Используйте с [member focus_mode]."

msgid ""
"The node can grab focus only when screen reader is active. Use with [member "
"focus_mode]."
msgstr ""
"Узел может захватить фокус только когда активен экранный диктор. Используйте "
"с [member focus_mode]."

msgid ""
"Inherits the [member focus_behavior_recursive] from the parent control. If "
"there is no parent control, this is the same as [constant "
"FOCUS_BEHAVIOR_ENABLED]."
msgstr ""
"Наследует [member focus_behavior_recursive] от родительского элемента "
"управления. Если родительского элемента управления нет, это то же самое, что "
"и [constant FOCUS_BEHAVIOR_ENABLED]."

msgid ""
"Prevents the control from getting focused. [method "
"get_focus_mode_with_override] will return [constant FOCUS_NONE]."
msgstr ""
"Предотвращает фокусировку элемента управления. [method "
"get_focus_mode_with_override] вернет [constant FOCUS_NONE]."

msgid ""
"Allows the control to be focused, depending on the [member focus_mode]. This "
"can be used to ignore the parent's [member focus_behavior_recursive]. [method "
"get_focus_mode_with_override] will return the [member focus_mode]."
msgstr ""
"Позволяет фокусировать элемент управления в зависимости от [member "
"focus_mode]. Это можно использовать для игнорирования [member "
"focus_behavior_recursive] родительского элемента. [method "
"get_focus_mode_with_override] вернет [member focus_mode]."

msgid ""
"Inherits the [member mouse_behavior_recursive] from the parent control. If "
"there is no parent control, this is the same as [constant "
"MOUSE_BEHAVIOR_ENABLED]."
msgstr ""
"Наследует [member mouse_behavior_recursive] от родительского элемента "
"управления. Если родительского элемента управления нет, это то же самое, что "
"и [constant MOUSE_BEHAVIOR_ENABLED]."

msgid ""
"Prevents the control from receiving mouse input. [method "
"get_mouse_filter_with_override] will return [constant MOUSE_FILTER_IGNORE]."
msgstr ""
"Запрещает элементу управления получать ввод с мыши. [method "
"get_mouse_filter_with_override] вернет [constant MOUSE_FILTER_IGNORE]."

msgid ""
"Allows the control to be receive mouse input, depending on the [member "
"mouse_filter]. This can be used to ignore the parent's [member "
"mouse_behavior_recursive]. [method get_mouse_filter_with_override] will "
"return the [member mouse_filter]."
msgstr ""
"Позволяет элементу управления получать ввод мыши в зависимости от [member "
"mouse_filter]. Это можно использовать для игнорирования [member "
"mouse_behavior_recursive] родителя. [method get_mouse_filter_with_override] "
"вернет [member mouse_filter]."

msgid "Sent when the node changes size. Use [member size] to get the new size."
msgstr ""
"Отправляется, когда узел меняет размер. Используйте [member size], чтобы "
"получить новый размер."

msgid ""
"Sent when the mouse cursor enters the control's (or any child control's) "
"visible area, that is not occluded behind other Controls or Windows, provided "
"its [member mouse_filter] lets the event reach it and regardless if it's "
"currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect which Control "
"receives the notification.\n"
"See also [constant NOTIFICATION_MOUSE_ENTER_SELF]."
msgstr ""
"Отправляется, когда курсор мыши попадает в видимую область элемента "
"управления (или любого дочернего элемента управления), которая не перекрыта "
"другими элементами управления или окнами, при условии, что его [member "
"mouse_filter] позволяет событию достичь его, и независимо от того, находится "
"ли он в фокусе в данный момент или нет.\n"
"[b]Примечание:[/b] [member CanvasItem.z_index] не влияет на то, какой элемент "
"управления получает уведомление.\n"
"См. также [constant NOTIFICATION_MOUSE_ENTER_SELF]."

msgid ""
"Sent when the mouse cursor leaves the control's (and all child control's) "
"visible area, that is not occluded behind other Controls or Windows, provided "
"its [member mouse_filter] lets the event reach it and regardless if it's "
"currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect which Control "
"receives the notification.\n"
"See also [constant NOTIFICATION_MOUSE_EXIT_SELF]."
msgstr ""
"Отправляется, когда курсор мыши покидает видимую область элемента управления "
"(и всех дочерних элементов управления), которая не перекрыта другими "
"элементами управления или окнами, при условии, что его [member mouse_filter] "
"позволяет событию достичь его, и независимо от того, находится ли он в фокусе "
"в данный момент или нет.\n"
"[b]Примечание:[/b] [member CanvasItem.z_index] не влияет на то, какой элемент "
"управления получает уведомление.\n"
"См. также [constant NOTIFICATION_MOUSE_EXIT_SELF]."

msgid "The reason this notification is sent may change in the future."
msgstr "Причина отправки данного уведомления может измениться в будущем."

msgid ""
"Sent when the mouse cursor enters the control's visible area, that is not "
"occluded behind other Controls or Windows, provided its [member mouse_filter] "
"lets the event reach it and regardless if it's currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect which Control "
"receives the notification.\n"
"See also [constant NOTIFICATION_MOUSE_ENTER]."
msgstr ""
"Sent when the mouse cursor enters the control's visible area, that is not "
"occluded behind other Controls or Windows, provided its [member mouse_filter] "
"lets the event reach it and regardless if it's currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect which Control "
"receives the notification.\n"
"См. также [constant NOTIFICATION_MOUSE_ENTER]."

msgid ""
"Sent when the mouse cursor leaves the control's visible area, that is not "
"occluded behind other Controls or Windows, provided its [member mouse_filter] "
"lets the event reach it and regardless if it's currently focused or not.\n"
"[b]Note:[/b] [member CanvasItem.z_index] doesn't affect which Control "
"receives the notification.\n"
"See also [constant NOTIFICATION_MOUSE_EXIT]."
msgstr ""
"Отправляется, когда курсор мыши покидает видимую область элемента управления, "
"которая не перекрыта другими элементами управления или окнами, при условии, "
"что его [member mouse_filter] позволяет событию достичь его, и независимо от "
"того, находится ли он в фокусе в данный момент или нет.\n"
"[b]Примечание:[/b] [member CanvasItem.z_index] не влияет на то, какой элемент "
"управления получит уведомление.\n"
"См. также [constant NOTIFICATION_MOUSE_EXIT]."

msgid "Sent when the node grabs focus."
msgstr "Отправляется, когда узел захватывает фокус."

msgid "Sent when the node loses focus."
msgstr "Отправляется, когда узел теряет фокус."

msgid ""
"Sent when the node needs to refresh its theme items. This happens in one of "
"the following cases:\n"
"- The [member theme] property is changed on this node or any of its "
"ancestors.\n"
"- The [member theme_type_variation] property is changed on this node.\n"
"- One of the node's theme property overrides is changed.\n"
"- The node enters the scene tree.\n"
"[b]Note:[/b] As an optimization, this notification won't be sent from changes "
"that occur while this node is outside of the scene tree. Instead, all of the "
"theme item updates can be applied at once when the node enters the scene "
"tree.\n"
"[b]Note:[/b] This notification is received alongside [constant "
"Node.NOTIFICATION_ENTER_TREE], so if you are instantiating a scene, the child "
"nodes will not be initialized yet. You can use it to setup theming for this "
"node, child nodes created from script, or if you want to access child nodes "
"added in the editor, make sure the node is ready using [method "
"Node.is_node_ready].\n"
"[codeblock]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_THEME_CHANGED:\n"
"\t\tif not is_node_ready():\n"
"\t\t\tawait ready # Wait until ready signal.\n"
"\t\t$Label.add_theme_color_override(\"font_color\", Color.YELLOW)\n"
"[/codeblock]"
msgstr ""
"Отправляется, когда узлу необходимо обновить элементы темы. Это происходит в "
"одном из следующих случаев:\n"
"- Свойство [member theme] изменено на этом узле или любом из его предков.\n"
"- Свойство [member theme_type_variation] изменено на этом узле.\n"
"- Изменено одно из переопределений свойств темы узла.\n"
"- Узел входит в дерево сцены.\n"
"[b]Примечание:[/b] В качестве оптимизации это уведомление не будет отправлено "
"из изменений, которые происходят, пока этот узел находится вне дерева сцены. "
"Вместо этого все обновления элементов темы могут быть применены одновременно, "
"когда узел входит в дерево сцены.\n"
"[b]Примечание:[/b] Это уведомление получено вместе с [constant "
"Node.NOTIFICATION_ENTER_TREE], поэтому, если вы создаете сцену, дочерние узлы "
"еще не будут инициализированы. Вы можете использовать его для настройки тем "
"для этого узла, дочерних узлов, созданных из скрипта, или, если вы хотите "
"получить доступ к дочерним узлам, добавленным в редакторе, убедитесь, что "
"узел готов, используя [method Node.is_node_ready].\n"
"[codeblock]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_THEME_CHANGED:\n"
"\t\tif not is_node_ready():\n"
"\t\t\tawait ready # Дождитесь сигнала готовности.\n"
"\t\t$Label.add_theme_color_override(\"font_color\", Color.YELLOW)\n"
"[/codeblock]"

msgid ""
"Sent when this node is inside a [ScrollContainer] which has begun being "
"scrolled when dragging the scrollable area [i]with a touch event[/i]. This "
"notification is [i]not[/i] sent when scrolling by dragging the scrollbar, "
"scrolling with the mouse wheel or scrolling with keyboard/gamepad events.\n"
"[b]Note:[/b] This signal is only emitted on Android or iOS, or on desktop/web "
"platforms when [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse] is enabled."
msgstr ""
"Отправляется, когда этот узел находится внутри [ScrollContainer], который "
"начал прокручиваться при перетаскивании прокручиваемой области [i]с помощью "
"события касания[/i]. Это уведомление [i]не[/i] отправляется при прокрутке "
"путем перетаскивания полосы прокрутки, прокрутки колесиком мыши или прокрутки "
"с помощью событий клавиатуры/геймпада.\n"
"[b]Примечание:[/b] Этот сигнал выдается только на Android или iOS, или на "
"настольных/веб-платформах, когда включен [member "
"ProjectSettings.input_devices/pointing/emulate_touch_from_mouse]."

msgid ""
"Sent when this node is inside a [ScrollContainer] which has stopped being "
"scrolled when dragging the scrollable area [i]with a touch event[/i]. This "
"notification is [i]not[/i] sent when scrolling by dragging the scrollbar, "
"scrolling with the mouse wheel or scrolling with keyboard/gamepad events.\n"
"[b]Note:[/b] This signal is only emitted on Android or iOS, or on desktop/web "
"platforms when [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse] is enabled."
msgstr ""
"Отправляется, когда этот узел находится внутри [ScrollContainer], который "
"перестал прокручиваться при перетаскивании прокручиваемой области [i]событием "
"касания[/i]. Это уведомление [i]не[/i] отправляется при прокрутке путем "
"перетаскивания полосы прокрутки, прокрутки колесиком мыши или прокрутки с "
"помощью событий клавиатуры/геймпада.\n"
"[b]Примечание:[/b] Этот сигнал выдается только на Android или iOS, или на "
"настольных/веб-платформах, когда включен [member "
"ProjectSettings.input_devices/pointing/emulate_touch_from_mouse]."

msgid ""
"Sent when the control layout direction is changed from LTR or RTL or vice "
"versa. This notification is propagated to child Control nodes as result of a "
"change to [member layout_direction]."
msgstr ""
"Отправляется, когда направление макета элемента управления изменяется с LTR "
"или RTL или наоборот. Это уведомление распространяется на дочерние узлы "
"Control в результате изменения [member layout_direction]."

msgid ""
"Show the system's arrow mouse cursor when the user hovers the node. Use with "
"[member mouse_default_cursor_shape]."
msgstr ""
"Показывать системный курсор мыши в виде стрелки, когда пользователь наводит "
"курсор на узел. Использовать с [member mouse_default_cursor_shape]."

msgid ""
"Show the system's I-beam mouse cursor when the user hovers the node. The I-"
"beam pointer has a shape similar to \"I\". It tells the user they can "
"highlight or insert text."
msgstr ""
"Показывать системный I-образный курсор мыши, когда пользователь наводит "
"курсор на узел. I-образный указатель имеет форму, похожую на \"I\". Он "
"сообщает пользователю, что он может выделить или вставить текст."

msgid ""
"Show the system's pointing hand mouse cursor when the user hovers the node."
msgstr ""
"Показывать курсор мыши в виде указывающей руки системы, когда пользователь "
"наводит курсор на узел."

msgid "Show the system's cross mouse cursor when the user hovers the node."
msgstr ""
"Показывать системный курсор мыши в виде крестика, когда пользователь наводит "
"курсор на узел."

msgid ""
"Show the system's wait mouse cursor when the user hovers the node. Often an "
"hourglass."
msgstr ""
"Показывать курсор мыши ожидания системы, когда пользователь наводит курсор на "
"узел. Часто песочные часы."

msgid ""
"Show the system's busy mouse cursor when the user hovers the node. Often an "
"arrow with a small hourglass."
msgstr ""
"Показывать занятый курсор мыши системы, когда пользователь наводит его на "
"узел. Часто стрелка с маленькими песочными часами."

msgid ""
"Show the system's drag mouse cursor, often a closed fist or a cross symbol, "
"when the user hovers the node. It tells the user they're currently dragging "
"an item, like a node in the Scene dock."
msgstr ""
"Показывать системный курсор мыши для перетаскивания, часто сжатый кулак или "
"символ креста, когда пользователь наводит курсор на узел. Он сообщает "
"пользователю, что в данный момент он перетаскивает элемент, например узел в "
"доке сцены."

msgid ""
"Show the system's drop mouse cursor when the user hovers the node. It can be "
"an open hand. It tells the user they can drop an item they're currently "
"grabbing, like a node in the Scene dock."
msgstr ""
"Показывать системный курсор мыши, когда пользователь наводит курсор на узел. "
"Это может быть открытая ладонь. Он сообщает пользователю, что он может "
"отпустить элемент, который он в данный момент захватывает, например, узел в "
"доке сцены."

msgid ""
"Show the system's forbidden mouse cursor when the user hovers the node. Often "
"a crossed circle."
msgstr ""
"Показывать запрещенный системой курсор мыши, когда пользователь наводит его "
"на узел. Часто перечеркнутый круг."

msgid ""
"Show the system's vertical resize mouse cursor when the user hovers the node. "
"A double-headed vertical arrow. It tells the user they can resize the window "
"or the panel vertically."
msgstr ""
"Показывать вертикальный курсор мыши системы изменения размера, когда "
"пользователь наводит его на узел. Двунаправленная вертикальная стрелка. Она "
"сообщает пользователю, что он может изменять размер окна или панели по "
"вертикали."

msgid ""
"Show the system's horizontal resize mouse cursor when the user hovers the "
"node. A double-headed horizontal arrow. It tells the user they can resize the "
"window or the panel horizontally."
msgstr ""
"Показывать горизонтальный курсор мыши системы изменения размера, когда "
"пользователь наводит его на узел. Двунаправленная горизонтальная стрелка. Она "
"сообщает пользователю, что он может изменять размер окна или панели по "
"горизонтали."

msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the bottom left to the top "
"right. It tells the user they can resize the window or the panel both "
"horizontally and vertically."
msgstr ""
"Показывать курсор мыши для изменения размера окна системы, когда пользователь "
"наводит его на узел. Курсор — это двунаправленная стрелка, которая идет из "
"нижнего левого угла в верхний правый угол. Он сообщает пользователю, что он "
"может изменять размер окна или панели как по горизонтали, так и по вертикали."

msgid ""
"Show the system's window resize mouse cursor when the user hovers the node. "
"The cursor is a double-headed arrow that goes from the top left to the bottom "
"right, the opposite of [constant CURSOR_BDIAGSIZE]. It tells the user they "
"can resize the window or the panel both horizontally and vertically."
msgstr ""
"Показывать курсор мыши для изменения размера окна системы, когда пользователь "
"наводит его на узел. Курсор — это двунаправленная стрелка, которая идет из "
"верхнего левого угла в нижний правый угол, противоположность [constant "
"CURSOR_BDIAGSIZE]. Он сообщает пользователю, что он может изменять размер "
"окна или панели как по горизонтали, так и по вертикали."

msgid ""
"Show the system's move mouse cursor when the user hovers the node. It shows 2 "
"double-headed arrows at a 90 degree angle. It tells the user they can move a "
"UI element freely."
msgstr ""
"Показывать курсор мыши перемещения системы, когда пользователь наводит его на "
"узел. Он показывает 2 двунаправленные стрелки под углом 90 градусов. Он "
"сообщает пользователю, что он может свободно перемещать элемент "
"пользовательского интерфейса."

msgid ""
"Show the system's vertical split mouse cursor when the user hovers the node. "
"On Windows, it's the same as [constant CURSOR_VSIZE]."
msgstr ""
"Показывать вертикальный разделенный курсор мыши системы, когда пользователь "
"наводит курсор на узел. В Windows это то же самое, что и [constant "
"CURSOR_VSIZE]."

msgid ""
"Show the system's horizontal split mouse cursor when the user hovers the "
"node. On Windows, it's the same as [constant CURSOR_HSIZE]."
msgstr ""
"Показывать горизонтальный разделенный курсор мыши системы, когда пользователь "
"наводит курсор на узел. В Windows это то же самое, что и [constant "
"CURSOR_HSIZE]."

msgid ""
"Show the system's help mouse cursor when the user hovers the node, a question "
"mark."
msgstr ""
"Показывать системную справку: курсор мыши при наведении на узел - "
"вопросительный знак."

msgid ""
"Snap all 4 anchors to the top-left of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
"Прикрепить все 4 якоря к верхнему левому углу границ родительского элемента "
"управления. Использовать с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the top-right of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
"Прикрепить все 4 якоря к правому верхнему краю границ родительского элемента "
"управления. Использовать с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the bottom-left of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
"Прикрепить все 4 якоря к нижнему левому углу границ родительского элемента "
"управления. Использовать с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the bottom-right of the parent control's bounds. Use "
"with [method set_anchors_preset]."
msgstr ""
"Прикрепить все 4 якоря к нижнему правому краю границ родительского элемента "
"управления. Использовать с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the center of the left edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
"Привязать все 4 якоря к центру левого края границ родительского элемента "
"управления. Использовать с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the center of the top edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
"Привяжите все 4 якоря к центру верхнего края границ родительского элемента "
"управления. Используйте с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the center of the right edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
"Привязать все 4 якоря к центру правого края границ родительского элемента "
"управления. Использовать с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the center of the bottom edge of the parent control's "
"bounds. Use with [method set_anchors_preset]."
msgstr ""
"Привяжите все 4 якоря к центру нижнего края границ родительского элемента "
"управления. Используйте с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the center of the parent control's bounds. Use with "
"[method set_anchors_preset]."
msgstr ""
"Привязать все 4 якоря к центру границ родительского элемента управления. "
"Использовать с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the left edge of the parent control. The left offset "
"becomes relative to the left edge and the top offset relative to the top left "
"corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
"Привязать все 4 якоря к левому краю родительского элемента управления. Левое "
"смещение становится относительным к левому краю, а верхнее смещение — "
"относительно верхнего левого угла родительского узла. Использовать с [method "
"set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the top edge of the parent control. The left offset "
"becomes relative to the top left corner, the top offset relative to the top "
"edge, and the right offset relative to the top right corner of the node's "
"parent. Use with [method set_anchors_preset]."
msgstr ""
"Привязать все 4 якоря к верхнему краю родительского элемента управления. "
"Левое смещение становится относительно верхнего левого угла, верхнее смещение "
"относительно верхнего края, а правое смещение относительно верхнего правого "
"угла родительского узла. Использовать с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the right edge of the parent control. The right offset "
"becomes relative to the right edge and the top offset relative to the top "
"right corner of the node's parent. Use with [method set_anchors_preset]."
msgstr ""
"Привязать все 4 якоря к правому краю родительского элемента управления. "
"Правое смещение становится относительным к правому краю, а верхнее смещение — "
"относительно верхнего правого угла родителя узла. Использовать с [method "
"set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the bottom edge of the parent control. The left offset "
"becomes relative to the bottom left corner, the bottom offset relative to the "
"bottom edge, and the right offset relative to the bottom right corner of the "
"node's parent. Use with [method set_anchors_preset]."
msgstr ""
"Привязать все 4 якоря к нижнему краю родительского элемента управления. Левое "
"смещение становится относительно нижнего левого угла, нижнее смещение "
"относительно нижнего края, а правое смещение относительно нижнего правого "
"угла родительского узла. Использовать с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to a vertical line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
"Привяжите все 4 якоря к вертикальной линии, которая разрезает родительский "
"элемент управления пополам. Используйте с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to a horizontal line that cuts the parent control in half. "
"Use with [method set_anchors_preset]."
msgstr ""
"Привяжите все 4 якоря к горизонтальной линии, которая разрезает родительский "
"элемент управления пополам. Используйте с [method set_anchors_preset]."

msgid ""
"Snap all 4 anchors to the respective corners of the parent control. Set all 4 "
"offsets to 0 after you applied this preset and the [Control] will fit its "
"parent control. Use with [method set_anchors_preset]."
msgstr ""
"Привяжите все 4 якоря к соответствующим углам родительского элемента "
"управления. Установите все 4 смещения на 0 после применения этого пресета, и "
"[Control] будет соответствовать своему родительскому элементу управления. "
"Используйте с [method set_anchors_preset]."

msgid "The control will be resized to its minimum size."
msgstr "Размер элемента управления будет изменен до минимального."

msgid "The control's width will not change."
msgstr "Ширина элемента управления не изменится."

msgid "The control's height will not change."
msgstr "Высота элемента управления не изменится."

msgid "The control's size will not change."
msgstr "Размер элемента управления не изменится."

msgid ""
"Tells the parent [Container] to align the node with its start, either the top "
"or the left edge. It is mutually exclusive with [constant SIZE_FILL] and "
"other shrink size flags, but can be used with [constant SIZE_EXPAND] in some "
"containers. Use with [member size_flags_horizontal] and [member "
"size_flags_vertical].\n"
"[b]Note:[/b] Setting this flag is equal to not having any size flags."
msgstr ""
"Сообщает родительскому [Container] о необходимости выровнять узел по его "
"началу, либо по верхнему, либо по левому краю. Это взаимоисключающе с "
"[constant SIZE_FILL] и другими флагами размера сжатия, но может "
"использоваться с [constant SIZE_EXPAND] в некоторых контейнерах. Используйте "
"с [member size_flags_horizontal] и [member size_flags_vertical].\n"
"[b]Примечание:[/b] Установка этого флага эквивалентна отсутствию флагов "
"размера."

msgid ""
"Tells the parent [Container] to expand the bounds of this node to fill all "
"the available space without pushing any other node. It is mutually exclusive "
"with shrink size flags. Use with [member size_flags_horizontal] and [member "
"size_flags_vertical]."
msgstr ""
"Сообщает родительскому [Container] расширить границы этого узла, чтобы "
"заполнить все доступное пространство, не выталкивая другие узлы. Это "
"взаимоисключающе с флагами размера сжатия. Используйте с [member "
"size_flags_horizontal] и [member size_flags_vertical]."

msgid ""
"Tells the parent [Container] to let this node take all the available space on "
"the axis you flag. If multiple neighboring nodes are set to expand, they'll "
"share the space based on their stretch ratio. See [member "
"size_flags_stretch_ratio]. Use with [member size_flags_horizontal] and "
"[member size_flags_vertical]."
msgstr ""
"Сообщает родительскому [Container] разрешить этому узлу занять все доступное "
"пространство на помеченной вами оси. Если несколько соседних узлов настроены "
"на расширение, они будут делить пространство на основе их коэффициента "
"растяжения. См. [member size_flags_stretch_ratio]. Используйте с [member "
"size_flags_horizontal] и [member size_flags_vertical]."

msgid ""
"Sets the node's size flags to both fill and expand. See [constant SIZE_FILL] "
"and [constant SIZE_EXPAND] for more information."
msgstr ""
"Устанавливает флаги размера узла для заполнения и расширения. См. [constant "
"SIZE_FILL] и [constant SIZE_EXPAND] для получения дополнительной информации."

msgid ""
"Tells the parent [Container] to center the node in the available space. It is "
"mutually exclusive with [constant SIZE_FILL] and other shrink size flags, but "
"can be used with [constant SIZE_EXPAND] in some containers. Use with [member "
"size_flags_horizontal] and [member size_flags_vertical]."
msgstr ""
"Сообщает родительскому [Container] центрировать узел в доступном "
"пространстве. Является взаимоисключающим с [constant SIZE_FILL] и другими "
"флагами размера сжатия, но может использоваться с [constant SIZE_EXPAND] в "
"некоторых контейнерах. Используйте с [member size_flags_horizontal] и [member "
"size_flags_vertical]."

msgid ""
"Tells the parent [Container] to align the node with its end, either the "
"bottom or the right edge. It is mutually exclusive with [constant SIZE_FILL] "
"and other shrink size flags, but can be used with [constant SIZE_EXPAND] in "
"some containers. Use with [member size_flags_horizontal] and [member "
"size_flags_vertical]."
msgstr ""
"Сообщает родительскому [Container] о необходимости выровнять узел по его "
"концу, либо по нижнему, либо по правому краю. Является взаимоисключающим с "
"[constant SIZE_FILL] и другими флагами размера сжатия, но может "
"использоваться с [constant SIZE_EXPAND] в некоторых контейнерах. Используйте "
"с [member size_flags_horizontal] и [member size_flags_vertical]."

msgid ""
"The control will receive mouse movement input events and mouse button input "
"events if clicked on through [method _gui_input]. The control will also "
"receive the [signal mouse_entered] and [signal mouse_exited] signals. These "
"events are automatically marked as handled, and they will not propagate "
"further to other controls. This also results in blocking signals in other "
"controls."
msgstr ""
"Элемент управления будет получать события ввода движения мыши и события ввода "
"кнопки мыши, если щелкнуть по нему через [method _gui_input]. Элемент "
"управления также будет получать сигналы [signal mouse_entered] и [signal "
"mouse_exited]. Эти события автоматически помечаются как обработанные и не "
"будут распространяться дальше на другие элементы управления. Это также "
"приводит к блокировке сигналов в других элементах управления."

msgid ""
"The control will receive mouse movement input events and mouse button input "
"events if clicked on through [method _gui_input]. The control will also "
"receive the [signal mouse_entered] and [signal mouse_exited] signals.\n"
"If this control does not handle the event, the event will propagate up to its "
"parent control if it has one. The event is bubbled up the node hierarchy "
"until it reaches a non-[CanvasItem], a control with [constant "
"MOUSE_FILTER_STOP], or a [CanvasItem] with [member CanvasItem.top_level] "
"enabled. This will allow signals to fire in all controls it reaches. If no "
"control handled it, the event will be passed to [method Node._shortcut_input] "
"for further processing."
msgstr ""
"Элемент управления будет получать события ввода движения мыши и события ввода "
"кнопки мыши, если на него нажато через [method _gui_input]. Элемент "
"управления также получит сигналы [signal mouse_entered] и [signal "
"mouse_exited].\n"
"Если этот элемент управления не обрабатывает событие, событие будет "
"распространяться вверх к его родительскому элементу управления, если он есть. "
"Событие всплывает вверх по иерархии узлов, пока не достигнет не-[CanvasItem], "
"элемента управления с [constant MOUSE_FILTER_STOP] или [CanvasItem] с "
"включенным [member CanvasItem.top_level]. Это позволит сигналам срабатывать "
"во всех элементах управления, которых он достигает. Если ни один элемент "
"управления не обработал его, событие будет передано в [method "
"Node._shortcut_input] для дальнейшей обработки."

msgid ""
"The control will not receive any mouse movement input events nor mouse button "
"input events through [method _gui_input]. The control will also not receive "
"the [signal mouse_entered] nor [signal mouse_exited] signals. This will not "
"block other controls from receiving these events or firing the signals. "
"Ignored events will not be handled automatically. If a child has [constant "
"MOUSE_FILTER_PASS] and an event was passed to this control, the event will "
"further propagate up to the control's parent.\n"
"[b]Note:[/b] If the control has received [signal mouse_entered] but not "
"[signal mouse_exited], changing the [member mouse_filter] to [constant "
"MOUSE_FILTER_IGNORE] will cause [signal mouse_exited] to be emitted."
msgstr ""
"Элемент управления не будет получать никаких событий ввода движения мыши или "
"событий ввода кнопки мыши через [method _gui_input]. Элемент управления также "
"не будет получать сигналы [signal mouse_entered] или [signal mouse_exited]. "
"Это не помешает другим элементам управления получать эти события или подавать "
"сигналы. Проигнорированные события не будут обрабатываться автоматически. "
"Если у дочернего элемента есть [constant MOUSE_FILTER_PASS] и этому элементу "
"управления было передано событие, событие будет далее распространяться до "
"родительского элемента управления.\n"
"[b]Примечание:[/b] Если элемент управления получил [signal mouse_entered], но "
"не [signal mouse_exited], изменение [member mouse_filter] на [constant "
"MOUSE_FILTER_IGNORE] приведет к испусканию [signal mouse_exited]."

msgid ""
"The control will grow to the left or top to make up if its minimum size is "
"changed to be greater than its current size on the respective axis."
msgstr ""
"Элемент управления будет увеличиваться влево или вверх, если его минимальный "
"размер изменится и станет больше текущего размера по соответствующей оси."

msgid ""
"The control will grow to the right or bottom to make up if its minimum size "
"is changed to be greater than its current size on the respective axis."
msgstr ""
"Элемент управления будет увеличиваться вправо или вниз, если его минимальный "
"размер изменится и станет больше текущего размера по соответствующей оси."

msgid ""
"The control will grow in both directions equally to make up if its minimum "
"size is changed to be greater than its current size."
msgstr ""
"Элемент управления будет одинаково увеличиваться в обоих направлениях, чтобы "
"компенсировать изменение его минимального размера и увеличение его текущего "
"размера."

msgid ""
"Snaps one of the 4 anchor's sides to the origin of the node's [code]Rect[/"
"code], in the top left. Use it with one of the [code]anchor_*[/code] member "
"variables, like [member anchor_left]. To change all 4 anchors at once, use "
"[method set_anchors_preset]."
msgstr ""
"Привязывает одну из 4 сторон якоря к началу координат [code]Rect[/code] узла "
"в левом верхнем углу. Используйте его с одной из переменных-членов "
"[code]anchor_*[/code], например [member anchor_left]. Чтобы изменить все 4 "
"якоря одновременно, используйте [method set_anchors_preset]."

msgid ""
"Snaps one of the 4 anchor's sides to the end of the node's [code]Rect[/code], "
"in the bottom right. Use it with one of the [code]anchor_*[/code] member "
"variables, like [member anchor_left]. To change all 4 anchors at once, use "
"[method set_anchors_preset]."
msgstr ""
"Привязывает одну из 4 сторон якоря к концу [code]Rect[/code] узла в правом "
"нижнем углу. Используйте его с одной из переменных-членов [code]anchor_*[/"
"code], например [member anchor_left]. Чтобы изменить все 4 якоря "
"одновременно, используйте [method set_anchors_preset]."

msgid ""
"Automatic layout direction, determined from the parent control layout "
"direction."
msgstr ""
"Автоматическое направление макета, определяемое на основе направления макета "
"родительского элемента управления."

msgid ""
"Automatic layout direction, determined from the current locale. Right-to-left "
"layout direction is automatically used for languages that require it such as "
"Arabic and Hebrew, but only if a valid translation file is loaded for the "
"given language (unless said language is configured as a fallback in [member "
"ProjectSettings.internationalization/locale/fallback]). For all other "
"languages (or if no valid translation file is found by Godot), left-to-right "
"layout direction is used. If using [TextServerFallback] ([member "
"ProjectSettings.internationalization/rendering/text_driver]), left-to-right "
"layout direction is always used regardless of the language. Right-to-left "
"layout direction can also be forced using [member "
"ProjectSettings.internationalization/rendering/"
"force_right_to_left_layout_direction]."
msgstr ""
"Автоматическое направление макета, определяемое текущей локалью. Направление "
"макета справа налево автоматически используется для языков, которым оно "
"требуется, таких как арабский и иврит, но только если загружен допустимый "
"файл перевода для данного языка (если только указанный язык не настроен как "
"резервный в [member ProjectSettings.internationalization/locale/fallback]). "
"Для всех других языков (или если Godot не нашел допустимый файл перевода) "
"используется направление макета слева направо. При использовании "
"[TextServerFallback] ([member ProjectSettings.internationalization/rendering/"
"text_driver]) всегда используется направление макета слева направо независимо "
"от языка. Направление макета справа налево также можно принудительно "
"установить с помощью [member ProjectSettings.internationalization/rendering/"
"force_right_to_left_layout_direction]."

msgid "Left-to-right layout direction."
msgstr "Направление макета слева направо."

msgid "Right-to-left layout direction."
msgstr "Направление раскладки справа налево."

msgid ""
"Automatic layout direction, determined from the system locale. Right-to-left "
"layout direction is automatically used for languages that require it such as "
"Arabic and Hebrew, but only if a valid translation file is loaded for the "
"given language. For all other languages (or if no valid translation file is "
"found by Godot), left-to-right layout direction is used. If using "
"[TextServerFallback] ([member ProjectSettings.internationalization/rendering/"
"text_driver]), left-to-right layout direction is always used regardless of "
"the language."
msgstr ""
"Автоматическое направление макета, определяемое системными настройками. "
"Направление макета справа налево автоматически используется для языков, для "
"которых оно требуется, например, для арабского и иврита, но только если "
"загружен корректный файл перевода для данного языка. Для всех остальных "
"языков (или если Godot не нашёл корректный файл перевода) используется "
"направление макета слева направо. При использовании [TextServerFallback] "
"([member ProjectSettings.internationalization/rendering/text_driver]) "
"направление макета слева направо используется всегда, независимо от языка."

msgid "Represents the size of the [enum LayoutDirection] enum."
msgstr "Представляет размер перечисления [enum LayoutDirection]."

msgid "Use [constant LAYOUT_DIRECTION_APPLICATION_LOCALE] instead."
msgstr ""
"Вместо этого используйте [constant LAYOUT_DIRECTION_APPLICATION_LOCALE]."

msgid "Text writing direction is the same as layout direction."
msgstr "Направление написания текста совпадает с направлением макета."

msgid ""
"Automatic text writing direction, determined from the current locale and text "
"content."
msgstr ""
"Автоматическое направление написания текста, определяемое на основе текущей "
"локали и содержимого текста."

msgid "Left-to-right text writing direction."
msgstr "Направление написания текста слева направо."

msgid "Right-to-left text writing direction."
msgstr "Направление текста справа налево."

msgid ""
"A [SkeletonModifier3D] that apply transform to the bone which converted from "
"reference."
msgstr ""
"[SkeletonModifier3D], который применяет преобразование к кости, "
"преобразованной из ссылки."

msgid ""
"Apply the copied transform of the bone set by [method "
"BoneConstraint3D.set_reference_bone] to the bone set by [method "
"BoneConstraint3D.set_apply_bone] about the specific axis with remapping it "
"with some options.\n"
"There are 4 ways to apply the transform, depending on the combination of "
"[method set_relative] and [method set_additive].\n"
"[b]Relative + Additive:[/b]\n"
"- Extract reference pose relative to the rest and add it to the apply bone's "
"pose.\n"
"[b]Relative + Not Additive:[/b]\n"
"- Extract reference pose relative to the rest and add it to the apply bone's "
"rest.\n"
"[b]Not Relative + Additive:[/b]\n"
"- Extract reference pose absolutely and add it to the apply bone's pose.\n"
"[b]Not Relative + Not Additive:[/b]\n"
"- Extract reference pose absolutely and the apply bone's pose is replaced "
"with it."
msgstr ""
"Применить скопированную трансформацию набора костей [method "
"BoneConstraint3D.set_reference_bone] к набору костей [method "
"BoneConstraint3D.set_apply_bone] вокруг определенной оси с переназначением ее "
"с некоторыми параметрами.\n"
"Есть 4 способа применить трансформацию в зависимости от комбинации [method "
"set_relative] и [method set_additive].\n"
"[b]Относительный + Аддитивный:[/b]\n"
"- Извлечь опорную позу относительно остальных и добавить ее к позе "
"применяемой кости.\n"
"[b]Относительный + Неаддитивный:[/b]\n"
"- Извлечь опорную позу относительно остальных и добавить ее к оставшимся "
"применяемой кости.\n"
"[b]Не Относительный + Аддитивный:[/b]\n"
"- Извлечь опорную позу абсолютно и добавить ее к позе применяемой кости.\n"
"[b]Не относительно + Не аддитивно:[/b]\n"
"- Извлечь позу ссылки абсолютно, и поза применяемой кости будет заменена ею."

msgid "Returns the axis of the remapping destination transform."
msgstr "Возвращает ось преобразования назначения переназначения."

msgid "Returns the maximum value of the remapping destination range."
msgstr "Возвращает максимальное значение диапазона назначения переназначения."

msgid "Returns the minimum value of the remapping destination range."
msgstr "Возвращает минимальное значение диапазона назначения переназначения."

msgid "Returns the operation of the remapping destination transform."
msgstr "Возвращает операцию преобразования назначения переназначения."

msgid "Returns the axis of the remapping source transform."
msgstr "Возвращает ось исходного преобразования переназначения."

msgid "Returns the maximum value of the remapping source range."
msgstr "Возвращает максимальное значение исходного диапазона переназначения."

msgid "Returns the minimum value of the remapping source range."
msgstr "Возвращает минимальное значение исходного диапазона переназначения."

msgid "Returns the operation of the remapping source transform."
msgstr "Возвращает операцию перераспределения исходного преобразования."

msgid ""
"Returns [code]true[/code] if the additive option is enabled in the setting at "
"[param index]."
msgstr ""
"Возвращает [code]true[/code], если в настройке [param index] включена опция "
"добавления."

msgid ""
"Returns [code]true[/code] if the relative option is enabled in the setting at "
"[param index]."
msgstr ""
"Возвращает [code]true[/code], если относительная опция включена в настройке в "
"[param index]."

msgid ""
"Sets additive option in the setting at [param index] to [param enabled]. This "
"mainly affects the process of applying transform to the [method "
"BoneConstraint3D.set_apply_bone].\n"
"If sets [param enabled] to [code]true[/code], the processed transform is "
"added to the pose of the current apply bone.\n"
"If sets [param enabled] to [code]false[/code], the pose of the current apply "
"bone is replaced with the processed transform. However, if set [method "
"set_relative] to [code]true[/code], the transform is relative to rest."
msgstr ""
"Устанавливает аддитивную опцию в настройке [param index] на [param enabled]. "
"Это в основном влияет на процесс применения преобразования к [method "
"BoneConstraint3D.set_apply_bone].\n"
"Если устанавливает [param enabled] на [code]true[/code], обработанное "
"преобразование добавляется к позе текущей кости применения.\n"
"Если устанавливает [param enabled] на [code]false[/code], поза текущей кости "
"применения заменяется обработанным преобразованием. Однако если установить "
"[method set_relative] на [code]true[/code], преобразование выполняется "
"относительно покоя."

msgid "Sets the axis of the remapping destination transform."
msgstr "Устанавливает ось преобразования назначения переназначения."

msgid "Sets the maximum value of the remapping destination range."
msgstr ""
"Устанавливает максимальное значение диапазона назначения переназначения."

msgid "Sets the minimum value of the remapping destination range."
msgstr "Устанавливает минимальное значение диапазона назначения переназначения."

msgid "Sets the operation of the remapping destination transform."
msgstr "Устанавливает операцию преобразования назначения переназначения."

msgid "Sets the axis of the remapping source transform."
msgstr "Устанавливает ось исходного преобразования переназначения."

msgid "Sets the maximum value of the remapping source range."
msgstr "Устанавливает максимальное значение диапазона источника переназначения."

msgid "Sets the minimum value of the remapping source range."
msgstr "Устанавливает минимальное значение диапазона источника переназначения."

msgid "Sets the operation of the remapping source transform."
msgstr "Устанавливает операцию преобразования источника переназначения."

msgid ""
"Sets relative option in the setting at [param index] to [param enabled].\n"
"If sets [param enabled] to [code]true[/code], the extracted and applying "
"transform is relative to the rest.\n"
"If sets [param enabled] to [code]false[/code], the extracted transform is "
"absolute."
msgstr ""
"Устанавливает относительную опцию в настройке в [param index] на [param "
"enabled].\n"
"Если устанавливает [param enabled] на [code]true[/code], извлеченное и "
"применяемое преобразование является относительным к остальному.\n"
"Если устанавливает [param enabled] на [code]false[/code], извлеченное "
"преобразование является абсолютным."

msgid "Convert with position. Transfer the difference."
msgstr "Конвертировать с позицией. Перенести разницу."

msgid "Convert with rotation. The angle is the roll for the specified axis."
msgstr "Конвертировать с вращением. Угол — это крен для указанной оси."

msgid "Convert with scale. Transfers the ratio, not the difference."
msgstr "Конвертировать с масштабом. Переносит отношение, а не разницу."

msgid "A 2D convex polygon shape used for physics collision."
msgstr ""
"Выпуклая двухмерная многоугольная форма, используемая для физического "
"столкновения."

msgid ""
"A 2D convex polygon shape, intended for use in physics. Used internally in "
"[CollisionPolygon2D] when it's in [constant CollisionPolygon2D.BUILD_SOLIDS] "
"mode.\n"
"[ConvexPolygonShape2D] is [i]solid[/i], which means it detects collisions "
"from objects that are fully inside it, unlike [ConcavePolygonShape2D] which "
"is hollow. This makes it more suitable for both detection and physics.\n"
"[b]Convex decomposition:[/b] A concave polygon can be split up into several "
"convex polygons. This allows dynamic physics bodies to have complex concave "
"collisions (at a performance cost) and can be achieved by using several "
"[ConvexPolygonShape2D] nodes or by using the [CollisionPolygon2D] node in "
"[constant CollisionPolygon2D.BUILD_SOLIDS] mode. To generate a collision "
"polygon from a sprite, select the [Sprite2D] node, go to the [b]Sprite2D[/b] "
"menu that appears above the viewport, and choose [b]Create Polygon2D Sibling[/"
"b].\n"
"[b]Performance:[/b] [ConvexPolygonShape2D] is faster to check collisions "
"against compared to [ConcavePolygonShape2D], but it is slower than primitive "
"collision shapes such as [CircleShape2D] and [RectangleShape2D]. Its use "
"should generally be limited to medium-sized objects that cannot have their "
"collision accurately represented by primitive shapes."
msgstr ""
"Форма 2D выпуклого многоугольника, предназначенная для использования в "
"физике. Используется внутри в [CollisionPolygon2D], когда он находится в "
"режиме [constant CollisionPolygon2D.BUILD_SOLIDS].\n"
"[ConvexPolygonShape2D] является [i]твердым[/i], что означает, что он "
"обнаруживает столкновения от объектов, которые полностью находятся внутри "
"него, в отличие от [ConcavePolygonShape2D], который является полым. Это "
"делает его более подходящим как для обнаружения, так и для физики.\n"
"[b]Выпуклая декомпозиция:[/b] Вогнутый полигон может быть разделен на "
"несколько выпуклых полигонов. Это позволяет динамическим физическим телам "
"иметь сложные вогнутые столкновения (за счет производительности) и может быть "
"достигнуто с помощью нескольких узлов [ConvexPolygonShape2D] или с помощью "
"узла [CollisionPolygon2D] в режиме [constant "
"CollisionPolygon2D.BUILD_SOLIDS]. Чтобы сгенерировать полигон столкновения из "
"спрайта, выберите узел [Sprite2D], перейдите в меню [b]Sprite2D[/b], которое "
"появляется над областью просмотра, и выберите [b]Создать Polygon2D Sibling[/"
"b].\n"
"[b]Производительность:[/b] [ConvexPolygonShape2D] быстрее проверяет "
"столкновения по сравнению с [ConcavePolygonShape2D], но медленнее, чем "
"примитивные формы столкновений, такие как [CircleShape2D] и "
"[RectangleShape2D]. Его использование, как правило, должно быть ограничено "
"объектами среднего размера, столкновения которых не могут быть точно "
"представлены примитивными формами."

msgid ""
"Based on the set of points provided, this assigns the [member points] "
"property using the convex hull algorithm, removing all unneeded points. See "
"[method Geometry2D.convex_hull] for details."
msgstr ""
"На основе предоставленного набора точек это назначает свойство [member "
"points] с использованием алгоритма выпуклой оболочки, удаляя все ненужные "
"точки. Подробности см. в [method Geometry2D.convex_hull]."

msgid ""
"The polygon's list of vertices that form a convex hull. Can be in either "
"clockwise or counterclockwise order.\n"
"[b]Warning:[/b] Only set this property to a list of points that actually form "
"a convex hull. Use [method set_point_cloud] to generate the convex hull of an "
"arbitrary set of points."
msgstr ""
"Список вершин многоугольника, образующих выпуклую оболочку. Может быть в "
"порядке по часовой стрелке или против часовой стрелки.\n"
"[b]Предупреждение:[/b] Устанавливайте это свойство только для списка точек, "
"которые фактически образуют выпуклую оболочку. Используйте [method "
"set_point_cloud] для генерации выпуклой оболочки произвольного набора точек."

msgid "A 3D convex polyhedron shape used for physics collision."
msgstr ""
"Трехмерная выпуклая многогранная форма, используемая для физического "
"столкновения."

msgid ""
"A 3D convex polyhedron shape, intended for use in physics. Usually used to "
"provide a shape for a [CollisionShape3D].\n"
"[ConvexPolygonShape3D] is [i]solid[/i], which means it detects collisions "
"from objects that are fully inside it, unlike [ConcavePolygonShape3D] which "
"is hollow. This makes it more suitable for both detection and physics.\n"
"[b]Convex decomposition:[/b] A concave polyhedron can be split up into "
"several convex polyhedra. This allows dynamic physics bodies to have complex "
"concave collisions (at a performance cost) and can be achieved by using "
"several [ConvexPolygonShape3D] nodes. To generate a convex decomposition from "
"a mesh, select the [MeshInstance3D] node, go to the [b]Mesh[/b] menu that "
"appears above the viewport, and choose [b]Create Multiple Convex Collision "
"Siblings[/b]. Alternatively, [method "
"MeshInstance3D.create_multiple_convex_collisions] can be called in a script "
"to perform this decomposition at run-time.\n"
"[b]Performance:[/b] [ConvexPolygonShape3D] is faster to check collisions "
"against compared to [ConcavePolygonShape3D], but it is slower than primitive "
"collision shapes such as [SphereShape3D] and [BoxShape3D]. Its use should "
"generally be limited to medium-sized objects that cannot have their collision "
"accurately represented by primitive shapes."
msgstr ""
"Трехмерная выпуклая многогранная форма, предназначенная для использования в "
"физике. Обычно используется для предоставления формы для [CollisionShape3D].\n"
"[ConvexPolygonShape3D] является [i]сплошным[/i], что означает, что он "
"обнаруживает столкновения от объектов, которые полностью находятся внутри "
"него, в отличие от [ConcavePolygonShape3D], который является полым. Это "
"делает его более подходящим как для обнаружения, так и для физики.\n"
"[b]Выпуклая декомпозиция:[/b] Вогнутый многогранник можно разбить на "
"несколько выпуклых многогранников. Это позволяет динамическим физическим "
"телам иметь сложные вогнутые столкновения (за счет производительности) и "
"может быть достигнуто с помощью нескольких узлов [ConvexPolygonShape3D]. "
"Чтобы сгенерировать выпуклую декомпозицию из сетки, выберите узел "
"[MeshInstance3D], перейдите в меню [b]Mesh[/b], которое появляется над "
"областью просмотра, и выберите [b]Create Multiple Convex Collision Siblings[/"
"b]. В качестве альтернативы, [method "
"MeshInstance3D.create_multiple_convex_collisions] можно вызвать в скрипте для "
"выполнения этой декомпозиции во время выполнения.\n"
"[b]Производительность:[/b] [ConvexPolygonShape3D] быстрее проверяет "
"столкновения по сравнению с [ConcavePolygonShape3D], но медленнее, чем "
"примитивные формы столкновений, такие как [SphereShape3D] и [BoxShape3D]. Его "
"использование, как правило, должно быть ограничено объектами среднего "
"размера, столкновения которых не могут быть точно представлены примитивными "
"формами."

msgid "The list of 3D points forming the convex polygon shape."
msgstr "Список 3D точек, образующих выпуклую многоугольную форму."

msgid ""
"A [SkeletonModifier3D] that apply transform to the bone which copied from "
"reference."
msgstr ""
"[SkeletonModifier3D], который применяет преобразование к кости, скопированной "
"из ссылки."

msgid ""
"Apply the copied transform of the bone set by [method "
"BoneConstraint3D.set_reference_bone] to the bone set by [method "
"BoneConstraint3D.set_apply_bone] with processing it with some masks and "
"options.\n"
"There are 4 ways to apply the transform, depending on the combination of "
"[method set_relative] and [method set_additive].\n"
"[b]Relative + Additive:[/b]\n"
"- Extract reference pose relative to the rest and add it to the apply bone's "
"pose.\n"
"[b]Relative + Not Additive:[/b]\n"
"- Extract reference pose relative to the rest and add it to the apply bone's "
"rest.\n"
"[b]Not Relative + Additive:[/b]\n"
"- Extract reference pose absolutely and add it to the apply bone's pose.\n"
"[b]Not Relative + Not Additive:[/b]\n"
"- Extract reference pose absolutely and the apply bone's pose is replaced "
"with it."
msgstr ""
"Применить скопированную трансформацию набора костей [method "
"BoneConstraint3D.set_reference_bone] к набору костей [method "
"BoneConstraint3D.set_apply_bone] с обработкой ее некоторыми масками и "
"параметрами.\n"
"Есть 4 способа применить трансформацию в зависимости от комбинации [method "
"set_relative] и [method set_additive].\n"
"[b]Относительный + Аддитивный:[/b]\n"
"- Извлечь опорную позу относительно остальных и добавить ее к позе "
"применяемой кости.\n"
"[b]Относительный + Неаддитивный:[/b]\n"
"- Извлечь опорную позу относительно остальных и добавить ее к остальной части "
"применяемой кости.\n"
"[b]Не Относительный + Аддитивный:[/b]\n"
"- Извлечь опорную позу абсолютно и добавить ее к позе применяемой кости.\n"
"[b]Не относительно + Не аддитивно:[/b]\n"
"- Извлечь позу ссылки абсолютно, и поза применяемой кости будет заменена ею."

msgid "Returns the axis flags of the setting at [param index]."
msgstr "Возвращает флаги оси настройки [param index]."

msgid "Returns the copy flags of the setting at [param index]."
msgstr "Возвращает флаги копирования настройки [param index]."

msgid "Returns the invert flags of the setting at [param index]."
msgstr "Возвращает инвертированные флаги настройки в [param index]."

msgid ""
"Returns [code]true[/code] if the enable flags has the flag for the X-axis in "
"the setting at [param index]. See also [method set_axis_flags]."
msgstr ""
"Возвращает [code]true[/code], если флаги включения имеют флаг для оси X в "
"настройке в [param index]. См. также [method set_axis_flags]."

msgid ""
"Returns [code]true[/code] if the invert flags has the flag for the X-axis in "
"the setting at [param index]. See also [method set_invert_flags]."
msgstr ""
"Возвращает [code]true[/code], если флаги инвертирования имеют флаг для оси X "
"в настройке в [param index]. См. также [method set_invert_flags]."

msgid ""
"Returns [code]true[/code] if the enable flags has the flag for the Y-axis in "
"the setting at [param index]. See also [method set_axis_flags]."
msgstr ""
"Возвращает [code]true[/code], если флаги включения имеют флаг для оси Y в "
"настройке в [param index]. См. также [method set_axis_flags]."

msgid ""
"Returns [code]true[/code] if the invert flags has the flag for the Y-axis in "
"the setting at [param index]. See also [method set_invert_flags]."
msgstr ""
"Возвращает [code]true[/code], если флаги инвертирования имеют флаг для оси Y "
"в настройке в [param index]. См. также [method set_invert_flags]."

msgid ""
"Returns [code]true[/code] if the enable flags has the flag for the Z-axis in "
"the setting at [param index]. See also [method set_axis_flags]."
msgstr ""
"Возвращает [code]true[/code], если флаги включения имеют флаг для оси Z в "
"настройке в [param index]. См. также [method set_axis_flags]."

msgid ""
"Returns [code]true[/code] if the invert flags has the flag for the Z-axis in "
"the setting at [param index]. See also [method set_invert_flags]."
msgstr ""
"Возвращает [code]true[/code], если флаги инвертирования имеют флаг для оси Z "
"в настройке в [param index]. См. также [method set_invert_flags]."

msgid ""
"Returns [code]true[/code] if the copy flags has the flag for the position in "
"the setting at [param index]. See also [method set_copy_flags]."
msgstr ""
"Возвращает [code]true[/code], если флаги копирования имеют флаг для позиции в "
"настройке в [param index]. См. также [method set_copy_flags]."

msgid ""
"Returns [code]true[/code] if the copy flags has the flag for the rotation in "
"the setting at [param index]. See also [method set_copy_flags]."
msgstr ""
"Возвращает [code]true[/code], если флаги копирования имеют флаг для поворота "
"в настройке в [param index]. См. также [method set_copy_flags]."

msgid ""
"Returns [code]true[/code] if the copy flags has the flag for the scale in the "
"setting at [param index]. See also [method set_copy_flags]."
msgstr ""
"Возвращает [code]true[/code], если флаги копирования имеют флаг для масштаба "
"в настройке в [param index]. См. также [method set_copy_flags]."

msgid "Sets the flags to copy axes. If the flag is valid, the axis is copied."
msgstr ""
"Устанавливает флаги для копирования осей. Если флаг действителен, ось "
"копируется."

msgid "If sets [param enabled] to [code]true[/code], the X-axis will be copied."
msgstr ""
"Если установить [param enabled] на [code]true[/code], ось X будет скопирована."

msgid ""
"If sets [param enabled] to [code]true[/code], the X-axis will be inverted."
msgstr ""
"Если установить [param enabled] в значение [code]true[/code], ось X будет "
"инвертирована."

msgid "If sets [param enabled] to [code]true[/code], the Y-axis will be copied."
msgstr ""
"Если установить [param enabled] на [code]true[/code], ось Y будет скопирована."

msgid ""
"If sets [param enabled] to [code]true[/code], the Y-axis will be inverted."
msgstr ""
"Если установить [param enabled] в значение [code]true[/code], ось Y будет "
"инвертирована."

msgid "If sets [param enabled] to [code]true[/code], the Z-axis will be copied."
msgstr ""
"Если установить [param enabled] на [code]true[/code], ось Z будет скопирована."

msgid ""
"If sets [param enabled] to [code]true[/code], the Z-axis will be inverted."
msgstr ""
"Если установить [param enabled] на [code]true[/code], ось Z будет "
"инвертирована."

msgid ""
"Sets the flags to process the transform operations. If the flag is valid, the "
"transform operation is processed.\n"
"[b]Note:[/b] If the rotation is valid for only one axis, it respects the roll "
"of the valid axis. If the rotation is valid for two axes, it discards the "
"roll of the invalid axis."
msgstr ""
"Устанавливает флаги для обработки операций преобразования. Если флаг "
"действителен, операция преобразования обрабатывается.\n"
"[b]Примечание:[/b] Если вращение допустимо только для одной оси, он учитывает "
"крен допустимой оси. Если вращение допустимо для двух осей, он отменяет крен "
"недопустимой оси."

msgid ""
"If sets [param enabled] to [code]true[/code], the position will be copied."
msgstr ""
"Если установить [param enabled] на [code]true[/code], позиция будет "
"скопирована."

msgid ""
"If sets [param enabled] to [code]true[/code], the rotation will be copied."
msgstr ""
"Если установить [param enabled] на [code]true[/code], поворот будет "
"скопирован."

msgid "If sets [param enabled] to [code]true[/code], the scale will be copied."
msgstr ""
"Если установить [param enabled] в значение [code]true[/code], масштаб будет "
"скопирован."

msgid ""
"Sets the flags to inverte axes. If the flag is valid, the axis is copied.\n"
"[b]Note:[/b] An inverted scale means an inverse number, not a negative scale. "
"For example, inverting [code]2.0[/code] means [code]0.5[/code].\n"
"[b]Note:[/b] An inverted rotation flips the elements of the quaternion. For "
"example, a two-axis inversion will flip the roll of each axis, and a three-"
"axis inversion will flip the final orientation. However, be aware that "
"flipping only one axis may cause unintended rotation by the unflipped axes, "
"due to the characteristics of the quaternion."
msgstr ""
"Устанавливает флаги для инвертирования осей. Если флаг действителен, ось "
"копируется.\n"
"[b]Примечание:[/b] Инвертированный масштаб означает обратное число, а не "
"отрицательный масштаб. Например, инвертирование [code]2.0[/code] означает "
"[code]0.5[/code].\n"
"[b]Примечание:[/b] Инвертированное вращение переворачивает элементы "
"кватерниона. Например, инверсия по двум осям перевернет крен каждой оси, а "
"инверсия по трем осям перевернет конечную ориентацию. Однако следует помнить, "
"что переворот только одной оси может вызвать непреднамеренное вращение "
"неперевернутых осей из-за характеристик кватерниона."

msgid "If set, allows to copy the position."
msgstr "Если установлено, позволяет копировать позицию."

msgid "If set, allows to copy the rotation."
msgstr "Если установлено, позволяет копировать поворот."

msgid "If set, allows to copy the scale."
msgstr "Если установлено, позволяет копировать масштаб."

msgid "If set, allows to copy the position/rotation/scale."
msgstr "Если установлено, позволяет копировать положение/поворот/масштаб."

msgid "If set, allows to process the X-axis."
msgstr "Если установлено, позволяет обрабатывать ось X."

msgid "If set, allows to process the Y-axis."
msgstr "Если установлено, позволяет обрабатывать ось Y."

msgid "If set, allows to process the Z-axis."
msgstr "Если установлено, позволяет обрабатывать ось Z."

msgid "If set, allows to process the all axes."
msgstr "Если установлено, позволяет обрабатывать все оси."

msgid "A CPU-based 2D particle emitter."
msgstr "Двумерный излучатель частиц на базе ЦП (CPU)."

msgid ""
"CPU-based 2D particle node used to create a variety of particle systems and "
"effects.\n"
"See also [GPUParticles2D], which provides the same functionality with "
"hardware acceleration, but may not run on older devices."
msgstr ""
"Узел 2D-частиц на базе ЦП, используемый для создания различных систем частиц "
"и эффектов.\n"
"См. также [GPUParticles2D], который обеспечивает ту же функциональность с "
"аппаратным ускорением, но может не работать на старых устройствах."

msgid "Particle systems (2D)"
msgstr "Системы частиц (2D)"

msgid ""
"Sets this node's properties to match a given [GPUParticles2D] node with an "
"assigned [ParticleProcessMaterial]."
msgstr ""
"Устанавливает свойства этого узла для соответствия заданному узлу "
"[GPUParticles2D] с назначенным [ParticleProcessMaterial]."

msgid "Returns the [Curve] of the parameter specified by [enum Parameter]."
msgstr "Возвращает [Curve] параметра, указанного в [enum Parameter]."

msgid "Returns the maximum value range for the given parameter."
msgstr "Возвращает максимальный диапазон значений для заданного параметра."

msgid "Returns the minimum value range for the given parameter."
msgstr "Возвращает минимальный диапазон значений для заданного параметра."

msgid "Returns the enabled state of the given particle flag."
msgstr "Возвращает включенное состояние заданного флага частицы."

msgid ""
"Requests the particles to process for extra process time during a single "
"frame.\n"
"Useful for particle playback, if used in combination with [member "
"use_fixed_seed] or by calling [method restart] with parameter "
"[code]keep_seed[/code] set to [code]true[/code]."
msgstr ""
"Запрашивает обработку частиц для дополнительного времени процесса в течение "
"одного кадра.\n"
"Полезно для воспроизведения частиц, если используется в сочетании с [member "
"use_fixed_seed] или путем вызова [method restart] с параметром "
"[code]keep_seed[/code], установленным на [code]true[/code]."

msgid ""
"Restarts the particle emitter.\n"
"If [param keep_seed] is [code]true[/code], the current random seed will be "
"preserved. Useful for seeking and playback."
msgstr ""
"Перезапускает излучатель частиц.\n"
"Если [param keep_seed] равен [code]true[/code], текущее случайное семя будет "
"сохранено. Полезно для поиска и воспроизведения."

msgid ""
"Sets the [Curve] of the parameter specified by [enum Parameter]. Should be a "
"unit [Curve]."
msgstr ""
"Устанавливает [Curve] параметра, указанного в [enum Parameter]. Должен быть "
"единицей [Curve]."

msgid "Sets the maximum value for the given parameter."
msgstr "Устанавливает максимальное значение для данного параметра."

msgid "Sets the minimum value for the given parameter."
msgstr "Устанавливает минимальное значение для данного параметра."

msgid "Enables or disables the given particle flag."
msgstr "Включает или отключает указанный флаг частицы."

msgid "Number of particles emitted in one emission cycle."
msgstr "Количество частиц, выбрасываемых за один цикл выброса."

msgid ""
"Each particle's rotation will be animated along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"Вращение каждой частицы будет анимировано вдоль этой [Curve]. Должна быть "
"единица [Curve]."

msgid "Maximum initial rotation applied to each particle, in degrees."
msgstr ""
"Максимальное начальное вращение, применяемое к каждой частице, в градусах."

msgid "Minimum equivalent of [member angle_max]."
msgstr "Минимальный эквивалент [member angle_max]."

msgid ""
"Each particle's angular velocity will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"Угловая скорость каждой частицы будет меняться вдоль этой [Кривой]. Должна "
"быть единицей [Кривой]."

msgid ""
"Maximum initial angular velocity (rotation speed) applied to each particle in "
"[i]degrees[/i] per second."
msgstr ""
"Максимальная начальная угловая скорость (ск. вращения), приложенная к каждой "
"частице в [i]градусах[/i] в секунду."

msgid "Minimum equivalent of [member angular_velocity_max]."
msgstr "Минимальный эквивалент [member angular_velocity_max]."

msgid ""
"Each particle's animation offset will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"Смещение анимации каждой частицы будет меняться вдоль этой [Curve]. Должно "
"быть единицей [Curve]."

msgid ""
"Maximum animation offset that corresponds to frame index in the texture. "
"[code]0[/code] is the first frame, [code]1[/code] is the last one. See "
"[member CanvasItemMaterial.particles_animation]."
msgstr ""
"Максимальное смещение анимации, соответствующее индексу кадра в текстуре. "
"[code]0[/code] — первый кадр, [code]1[/code] — последний. См. [member "
"CanvasItemMaterial.particles_animation]."

msgid "Minimum equivalent of [member anim_offset_max]."
msgstr "Минимальный эквивалент [member anim_offset_max]."

msgid ""
"Each particle's animation speed will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"Скорость анимации каждой частицы будет меняться вдоль этой [Кривой]. Должна "
"быть единицей [Кривой]."

msgid ""
"Maximum particle animation speed. Animation speed of [code]1[/code] means "
"that the particles will make full [code]0[/code] to [code]1[/code] offset "
"cycle during lifetime, [code]2[/code] means [code]2[/code] cycles etc.\n"
"With animation speed greater than [code]1[/code], remember to enable [member "
"CanvasItemMaterial.particles_anim_loop] property if you want the animation to "
"repeat."
msgstr ""
"Максимальная скорость анимации частиц. Скорость анимации [code]1[/code] "
"означает, что частицы будут делать полный цикл смещения от [code]0[/code] до "
"[code]1[/code] в течение жизни, [code]2[/code] означает [code]2[/code] циклов "
"и т. д. \n"
"При скорости анимации больше [code]1[/code] не забудьте включить свойство "
"[member CanvasItemMaterial.particles_anim_loop], если вы хотите, чтобы "
"анимация повторялась."

msgid "Minimum equivalent of [member anim_speed_max]."
msgstr "Минимальный эквивалент [member anim_speed_max]."

msgid ""
"Each particle's initial color. If [member texture] is defined, it will be "
"multiplied by this color."
msgstr ""
"Начальный цвет каждой частицы. Если [member texture] определена, она будет "
"умножена на этот цвет."

msgid ""
"Each particle's initial color will vary along this [Gradient] (multiplied "
"with [member color])."
msgstr ""
"Первоначальный цвет каждой частицы будет меняться в соответствии с этим "
"[Gradient] (умноженным на [param colors])."

msgid ""
"Each particle's color will vary along this [Gradient] over its lifetime "
"(multiplied with [member color])."
msgstr ""
"Цвет каждой частицы будет меняться в соответствии с этим [Gradient] в течение "
"ее жизни (умноженным на [param colors])."

msgid "Damping will vary along this [Curve]. Should be a unit [Curve]."
msgstr ""
"Затухание будет меняться вдоль этой [Curve]. Должно быть единицей [Curve]."

msgid ""
"The maximum rate at which particles lose velocity. For example value of "
"[code]100[/code] means that the particle will go from [code]100[/code] "
"velocity to [code]0[/code] in [code]1[/code] second."
msgstr ""
"Максимальная скорость, с которой частицы теряют скорость. Например, значение "
"[code]100[/code] означает, что частица перейдет от скорости [code]100[/code] "
"до [code]0[/code] за [code]1[/code] секунду."

msgid "Minimum equivalent of [member damping_max]."
msgstr "Минимальный эквивалент [member damping_max]."

msgid "Unit vector specifying the particles' emission direction."
msgstr "Единичный вектор, задающий направление испускания частиц."

msgid "Particle draw order."
msgstr "Порядок отрисовки частиц."

msgid ""
"Sets the [Color]s to modulate particles by when using [constant "
"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
"Устанавливает [Color]s для модуляции частиц при использовании [constant "
"EMISSION_SHAPE_POINTS] или [constant EMISSION_SHAPE_DIRECTED_POINTS]."

msgid ""
"Sets the direction the particles will be emitted in when using [constant "
"EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
"Задает направление, в котором будут испускаться частицы при использовании "
"[constant EMISSION_SHAPE_DIRECTED_POINTS]."

msgid ""
"Sets the initial positions to spawn particles when using [constant "
"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
"Устанавливает начальные позиции для создания частиц при использовании "
"[constant EMISSION_SHAPE_POINTS] или [constant "
"EMISSION_SHAPE_DIRECTED_POINTS]."

msgid ""
"The rectangle's extents if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_RECTANGLE]."
msgstr ""
"Границы прямоугольника, если [member emission_shape] установлен в [constant "
"EMISSION_SHAPE_RECTANGLE]."

msgid "Particles will be emitted inside this region."
msgstr "Внутри этой области будут испускаться частицы."

msgid ""
"The sphere's radius if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_SPHERE]."
msgstr ""
"Радиус сферы, если [member emission_shape] установлен в [constant "
"EMISSION_SHAPE_SPHERE]."

msgid ""
"If [code]true[/code], particles are being emitted. [member emitting] can be "
"used to start and stop particles from emitting. However, if [member one_shot] "
"is [code]true[/code] setting [member emitting] to [code]true[/code] will not "
"restart the emission cycle until after all active particles finish "
"processing. You can use the [signal finished] signal to be notified once all "
"active particles finish processing."
msgstr ""
"Если [code]true[/code], частицы испускаются. [member emitting] можно "
"использовать для запуска и остановки испускания частиц. Однако, если [member "
"one_shot] равно [code]true[/code], установка [member emitting] в [code]true[/"
"code] не перезапустит цикл испускания, пока все активные частицы не закончат "
"обработку. Вы можете использовать сигнал [signalfinished], чтобы получать "
"уведомления, как только все активные частицы закончат обработку."

msgid ""
"How rapidly particles in an emission cycle are emitted. If greater than "
"[code]0[/code], there will be a gap in emissions before the next cycle begins."
msgstr ""
"Насколько быстро выбрасываются частицы в цикле эмиссии. Если больше [code]0[/"
"code], то будет разрыв в эмиссии до начала следующего цикла."

msgid ""
"The particle system's frame rate is fixed to a value. For example, changing "
"the value to 2 will make the particles render at 2 frames per second. Note "
"this does not slow down the simulation of the particle system itself."
msgstr ""
"Частота кадров системы частиц зафиксирована на значении. Например, изменение "
"значения на 2 заставит частицы рендериться со скоростью 2 кадра в секунду. "
"Обратите внимание, что это не замедляет симуляцию самой системы частиц."

msgid ""
"If [code]true[/code], results in fractional delta calculation which has a "
"smoother particles display effect."
msgstr ""
"Если [code]true[/code], то выполняется дробный расчет дельты, который "
"обеспечивает более плавный эффект отображения частиц."

msgid "Gravity applied to every particle."
msgstr "Гравитация действует на каждую частицу."

msgid ""
"Each particle's hue will vary along this [Curve]. Should be a unit [Curve]."
msgstr ""
"Оттенок каждой частицы будет меняться вдоль этой [Curve]. Должна быть единица "
"[Curve]."

msgid ""
"Maximum initial hue variation applied to each particle. It will shift the "
"particle color's hue."
msgstr ""
"Максимальное начальное изменение оттенка, применяемое к каждой частице. Это "
"изменит оттенок цвета частицы."

msgid "Minimum equivalent of [member hue_variation_max]."
msgstr "Минимальный эквивалент [member hue_variation_max]."

msgid ""
"Maximum initial velocity magnitude for each particle. Direction comes from "
"[member direction] and [member spread]."
msgstr ""
"Максимальная начальная величина скорости для каждой частицы. Направление "
"определяется из [member direction] и [member spread]."

msgid "Minimum equivalent of [member initial_velocity_max]."
msgstr "Минимальный эквивалент [member initial_velocity_max]."

msgid "Amount of time each particle will exist."
msgstr ""
"Количество времени, в течение которого каждая частица будет существовать."

msgid "Particle lifetime randomness ratio."
msgstr "Коэффициент случайности времени жизни частицы."

msgid ""
"Each particle's linear acceleration will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"Линейное ускорение каждой частицы будет изменяться вдоль этой [Curve]. Должно "
"быть единицей [Curve]."

msgid ""
"Maximum linear acceleration applied to each particle in the direction of "
"motion."
msgstr ""
"Максимальное линейное ускорение, приложенное к каждой частице в направлении "
"движения."

msgid "Minimum equivalent of [member linear_accel_max]."
msgstr "Минимальный эквивалент [member linear_accel_max]."

msgid ""
"If [code]true[/code], particles use the parent node's coordinate space (known "
"as local coordinates). This will cause particles to move and rotate along the "
"[CPUParticles2D] node (and its parents) when it is moved or rotated. If "
"[code]false[/code], particles use global coordinates; they will not move or "
"rotate along the [CPUParticles2D] node (and its parents) when it is moved or "
"rotated."
msgstr ""
"Если [code]true[/code], частицы используют координатное пространство "
"родительского узла (известное как локальные координаты). Это заставит частицы "
"двигаться и вращаться вдоль узла [CPUParticles2D] (и его родителей) при его "
"перемещении или повороте. Если [code]false[/code], частицы используют "
"глобальные координаты; они не будут двигаться или вращаться вдоль узла "
"[CPUParticles2D] (и его родителей) при его перемещении или повороте."

msgid ""
"If [code]true[/code], only one emission cycle occurs. If set [code]true[/"
"code] during a cycle, emission will stop at the cycle's end."
msgstr ""
"Если [code]true[/code], происходит только один цикл эмиссии. Если установить "
"[code]true[/code] во время цикла, эмиссия прекратится в конце цикла."

msgid ""
"Each particle's orbital velocity will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"Орбитальная скорость каждой частицы будет меняться вдоль этой [Curve]. Должна "
"быть единицей [Curve]."

msgid ""
"Maximum orbital velocity applied to each particle. Makes the particles circle "
"around origin. Specified in number of full rotations around origin per second."
msgstr ""
"Максимальная орбитальная скорость, применяемая к каждой частице. Заставляет "
"частицы вращаться вокруг начала координат. Указывается в количестве полных "
"оборотов вокруг начала координат в секунду."

msgid "Minimum equivalent of [member orbit_velocity_max]."
msgstr "Минимальный эквивалент [member orbit_velocity_max]."

msgid "Align Y axis of particle with the direction of its velocity."
msgstr "Совместите ось Y частицы с направлением ее скорости."

msgid "Particle system starts as if it had already run for this many seconds."
msgstr ""
"Система частиц запускается так, как будто она уже проработала указанное "
"количество секунд."

msgid ""
"Each particle's radial acceleration will vary along this [Curve]. Should be a "
"unit [Curve]."
msgstr ""
"Радиальное ускорение каждой частицы будет изменяться вдоль этой [Curve]. "
"Должно быть единицей [Curve]."

msgid ""
"Maximum radial acceleration applied to each particle. Makes particle "
"accelerate away from the origin or towards it if negative."
msgstr ""
"Максимальное радиальное ускорение, применяемое к каждой частице. Заставляет "
"частицу ускоряться от начала координат или к нему, если отрицательно."

msgid "Minimum equivalent of [member radial_accel_max]."
msgstr "Минимальный эквивалент [member radial_accel_max]."

msgid "Emission lifetime randomness ratio."
msgstr "Коэффициент случайности времени жизни излучения."

msgid ""
"Each particle's scale will vary along this [Curve]. Should be a unit [Curve]."
msgstr ""
"Масштаб каждой частицы будет меняться вдоль этой [Curve]. Должен быть "
"единицей [Curve]."

msgid "Maximum initial scale applied to each particle."
msgstr "Максимальный начальный масштаб, применяемый к каждой частице."

msgid "Minimum equivalent of [member scale_amount_max]."
msgstr "Минимальный эквивалент [member scale_amount_max]."

msgid ""
"Each particle's horizontal scale will vary along this [Curve]. Should be a "
"unit [Curve].\n"
"[member split_scale] must be enabled."
msgstr ""
"Горизонтальный масштаб каждой частицы будет меняться вдоль этой [Curve]. "
"Должен быть единичным [Curve]. \n"
"[member split_scale] должен быть включен."

msgid ""
"Each particle's vertical scale will vary along this [Curve]. Should be a unit "
"[Curve].\n"
"[member split_scale] must be enabled."
msgstr ""
"Вертикальный масштаб каждой частицы будет меняться вдоль этой [Curve]. Должен "
"быть единичным [Curve]. \n"
"[member split_scale] должен быть включен."

msgid ""
"Sets the random seed used by the particle system. Only effective if [member "
"use_fixed_seed] is [code]true[/code]."
msgstr ""
"Устанавливает случайное семя, используемое системой частиц. Действует только "
"если [member use_fixed_seed] равен [code]true[/code]."

msgid ""
"Particle system's running speed scaling ratio. A value of [code]0[/code] can "
"be used to pause the particles."
msgstr ""
"Коэффициент масштабирования скорости работы системы частиц. Значение [code]0[/"
"code] может использоваться для остановки частиц."

msgid ""
"If [code]true[/code], the scale curve will be split into x and y components. "
"See [member scale_curve_x] and [member scale_curve_y]."
msgstr ""
"Если [code]true[/code], кривая шкалы будет разделена на компоненты x и y. См. "
"[member scale_curve_x] и [member scale_curve_y]."

msgid ""
"Each particle's initial direction range from [code]+spread[/code] to [code]-"
"spread[/code] degrees."
msgstr ""
"Начальное направление каждой частицы варьируется от [code]+распространение[/"
"code] до [code]-распространение[/code] градусов."

msgid ""
"Each particle's tangential acceleration will vary along this [Curve]. Should "
"be a unit [Curve]."
msgstr ""
"Тангенциальное ускорение каждой частицы будет меняться вдоль этой [Curve]. "
"Должно быть единицей [Curve]."

msgid ""
"Maximum tangential acceleration applied to each particle. Tangential "
"acceleration is perpendicular to the particle's velocity giving the particles "
"a swirling motion."
msgstr ""
"Максимальное тангенциальное ускорение, приложенное к каждой частице. "
"Тангенциальное ускорение перпендикулярно скорости частицы, что придает "
"частицам вихревое движение."

msgid "Minimum equivalent of [member tangential_accel_max]."
msgstr "Минимальный эквивалент [member tangential_accel_max]."

msgid "Particle texture. If [code]null[/code], particles will be squares."
msgstr "Текстура частиц. Если [code]null[/code], частицы будут квадратными."

msgid ""
"If [code]true[/code], particles will use the same seed for every simulation "
"using the seed defined in [member seed]. This is useful for situations where "
"the visual outcome should be consistent across replays, for example when "
"using Movie Maker mode."
msgstr ""
"Если [code]true[/code], частицы будут использовать одно и то же семя для "
"каждой симуляции, используя семя, определенное в [member seed]. Это полезно в "
"ситуациях, когда визуальный результат должен быть согласованным между "
"повторами, например, при использовании режима Movie Maker."

msgid ""
"Emitted when all active particles have finished processing. When [member "
"one_shot] is disabled, particles will process continuously, so this is never "
"emitted."
msgstr ""
"Выпускается, когда все активные частицы завершили обработку. Когда [member "
"one_shot] отключен, частицы будут обрабатываться непрерывно, поэтому это "
"никогда не выпускается."

msgid "Particles are drawn in the order emitted."
msgstr "Частицы рисуются в порядке испускания."

msgid ""
"Particles are drawn in order of remaining lifetime. In other words, the "
"particle with the highest lifetime is drawn at the front."
msgstr ""
"Частицы рисуются в порядке оставшегося времени жизни. Другими словами, "
"частица с наибольшим временем жизни рисуется спереди."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set initial velocity properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки начальных свойств скорости."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set angular velocity properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки свойств угловой скорости."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set orbital velocity properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для задания свойств орбитальной скорости."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set linear acceleration properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки свойств линейного ускорения."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set radial acceleration properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки свойств радиального ускорения."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set tangential acceleration properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки свойств тангенциального ускорения."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set damping properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки свойств демпфирования."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set angle properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки свойств угла."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set scale properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки свойств масштаба."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set hue variation properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки свойств изменения оттенка."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set animation speed properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки свойств скорости анимации."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_curve] to set animation offset properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_curve] для установки свойств смещения анимации."

msgid "Represents the size of the [enum Parameter] enum."
msgstr "Представляет размер перечисления [enum Parameter]."

msgid ""
"Use with [method set_particle_flag] to set [member particle_flag_align_y]."
msgstr ""
"Используйте с [method set_particle_flag] для установки [member "
"partial_flag_align_y]."

msgid "Present for consistency with 3D particle nodes, not used in 2D."
msgstr ""
"Присутствует для согласованности с узлами 3D-частиц, не используется в 2D."

msgid "Represents the size of the [enum ParticleFlags] enum."
msgstr "Представляет размер перечисления [enum ParticleFlags]."

msgid "All particles will be emitted from a single point."
msgstr "Все частицы будут испускаться из одной точки."

msgid ""
"Particles will be emitted in the volume of a sphere flattened to two "
"dimensions."
msgstr "Частицы будут испускаться в объеме сферы, сплющенной в двух измерениях."

msgid ""
"Particles will be emitted on the surface of a sphere flattened to two "
"dimensions."
msgstr ""
"Частицы будут испускаться на поверхности сферы, сплющенной в двух измерениях."

msgid "Particles will be emitted in the area of a rectangle."
msgstr "Частицы будут испускаться в области прямоугольника."

msgid ""
"Particles will be emitted at a position chosen randomly among [member "
"emission_points]. Particle color will be modulated by [member "
"emission_colors]."
msgstr ""
"Частицы будут испускаться в точке, выбранной случайным образом среди [member "
"emission_points]. Цвет частиц будет модулироваться [member emission_colors]."

msgid ""
"Particles will be emitted at a position chosen randomly among [member "
"emission_points]. Particle velocity and rotation will be set based on [member "
"emission_normals]. Particle color will be modulated by [member "
"emission_colors]."
msgstr ""
"Частицы будут испускаться в позиции, выбранной случайным образом среди "
"[member emission_points]. Скорость и вращение частиц будут установлены на "
"основе [member emission_normals]. Цвет частиц будет модулироваться [member "
"emission_colors]."

msgid "Represents the size of the [enum EmissionShape] enum."
msgstr "Представляет размер перечисления [enum EmissionShape]."

msgid "A CPU-based 3D particle emitter."
msgstr "3D-излучатель частиц на базе процессора."

msgid ""
"CPU-based 3D particle node used to create a variety of particle systems and "
"effects.\n"
"See also [GPUParticles3D], which provides the same functionality with "
"hardware acceleration, but may not run on older devices."
msgstr ""
"Узел 3D-частиц на базе ЦП, используемый для создания различных систем частиц "
"и эффектов.\n"
"См. также [GPUParticles3D], который обеспечивает ту же функциональность с "
"аппаратным ускорением, но может не работать на старых устройствах."

msgid "Particle systems (3D)"
msgstr "Системы частиц (3D)"

msgid ""
"Returns the axis-aligned bounding box that contains all the particles that "
"are active in the current frame."
msgstr ""
"Возвращает выровненный по осям ограничивающий прямоугольник, содержащий все "
"частицы, активные в текущем кадре."

msgid ""
"Sets this node's properties to match a given [GPUParticles3D] node with an "
"assigned [ParticleProcessMaterial]."
msgstr ""
"Устанавливает свойства этого узла для соответствия заданному узлу "
"[GPUParticles3D] с назначенным [ParticleProcessMaterial]."

msgid "Maximum angle."
msgstr "Максимальный угол."

msgid "Minimum angle."
msgstr "Минимальный угол."

msgid ""
"Each particle's angular velocity (rotation speed) will vary along this "
"[Curve] over its lifetime. Should be a unit [Curve]."
msgstr ""
"Угловая скорость каждой частицы (скорость вращения) будет изменяться вдоль "
"этой [Curve] в течение ее жизни. Должна быть единицей [Curve]."

msgid ""
"Minimum initial angular velocity (rotation speed) applied to each particle in "
"[i]degrees[/i] per second."
msgstr ""
"Минимальная начальная угловая скорость (ск. вращения), приложенная к каждой "
"частице в [i]градусах[/i] в секунду."

msgid "Maximum animation offset."
msgstr "Максимальное смещение анимации."

msgid "Minimum animation offset."
msgstr "Минимальное смещение анимации."

msgid "Maximum particle animation speed."
msgstr "Максимальная скорость анимации частиц."

msgid "Minimum particle animation speed."
msgstr "Минимальная скорость анимации частиц."

msgid ""
"Each particle's initial color.\n"
"[b]Note:[/b] [member color] multiplies the particle mesh's vertex colors. To "
"have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member color] will "
"have no visible effect."
msgstr ""
"Начальный цвет каждой частицы.\n"
"[b]Примечание:[/b] [member color] умножает цвета вершин сетки частиц. Чтобы "
"иметь видимый эффект на [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]должен[/i] быть [code]true[/"
"code]. Для [ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] должен быть "
"вставлен в функцию шейдера [code]fragment()[/code]. В противном случае "
"[member color] не будет иметь видимого эффекта."

msgid ""
"Each particle's initial color will vary along this [Gradient] (multiplied "
"with [member color]).\n"
"[b]Note:[/b] [member color_initial_ramp] multiplies the particle mesh's "
"vertex colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member "
"color_initial_ramp] will have no visible effect."
msgstr ""
"Начальный цвет каждой частицы будет меняться вдоль этого [Gradient] "
"(умноженного на [member color]).\n"
"[b]Примечание:[/b] [member color_initial_ramp] умножает цвета вершин сетки "
"частиц. Чтобы иметь видимый эффект на [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]должен[/i] быть [code]true[/"
"code]. Для [ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] должен быть "
"вставлен в функцию шейдера [code]fragment()[/code]. В противном случае "
"[member color_initial_ramp] не будет иметь видимого эффекта."

msgid ""
"Each particle's color will vary along this [Gradient] over its lifetime "
"(multiplied with [member color]).\n"
"[b]Note:[/b] [member color_ramp] multiplies the particle mesh's vertex "
"colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member color_ramp] "
"will have no visible effect."
msgstr ""
"Цвет каждой частицы будет меняться по этому [Gradient] в течение ее жизни "
"(умножается на [member color]).\n"
"[b]Примечание:[/b] [member color_ramp] умножает цвета вершин сетки частицы. "
"Чтобы иметь видимый эффект на [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]должен[/i] быть [code]true[/"
"code]. Для [ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] должен быть "
"вставлен в функцию шейдера [code]fragment()[/code]. В противном случае "
"[member color_ramp] не будет иметь видимого эффекта."

msgid "Maximum damping."
msgstr "Максимальное демпфирование."

msgid "Minimum damping."
msgstr "Минимальное затухание."

msgid ""
"The rectangle's extents if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_BOX]."
msgstr ""
"Размеры прямоугольника, если [member emission_shape] установлен в [constant "
"EMISSION_SHAPE_BOX]."

msgid ""
"Sets the [Color]s to modulate particles by when using [constant "
"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS].\n"
"[b]Note:[/b] [member emission_colors] multiplies the particle mesh's vertex "
"colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member "
"emission_colors] will have no visible effect."
msgstr ""
"Устанавливает [Цвет]-а для модуляции частиц при использовании [constant "
"EMISSION_SHAPE_POINTS] или [constant EMISSION_SHAPE_DIRECTED_POINTS].\n"
"[b]Примечание:[/b] [member emission_colors] умножает цвета вершин сетки "
"частиц. Чтобы иметь видимый эффект на [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]должен[/i] быть [code]true[/"
"code]. Для [ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] должен быть "
"вставлен в функцию шейдера [code]fragment()[/code]. В противном случае "
"[member emission_colors] не будет иметь видимого эффекта."

msgid ""
"The axis of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
msgstr "Ось кольца при использовании излучателя [constant EMISSION_SHAPE_RING]."

msgid ""
"The angle of the cone when using the emitter [constant EMISSION_SHAPE_RING]. "
"The default angle of 90 degrees results in a ring, while an angle of 0 "
"degrees results in a cone. Intermediate values will result in a ring where "
"one end is larger than the other.\n"
"[b]Note:[/b] Depending on [member emission_ring_height], the angle may be "
"clamped if the ring's end is reached to form a perfect cone."
msgstr ""
"Угол конуса при использовании эмиттера [constant EMISSION_SHAPE_RING]. Угол "
"по умолчанию 90 градусов приводит к кольцу, а угол 0 градусов приводит к "
"конусу. Промежуточные значения приведут к кольцу, где один конец больше "
"другого.\n"
"[b]Примечание:[/b] В зависимости от [member emission_ring_height] угол может "
"быть зафиксирован, если конец кольца достигнут, чтобы сформировать идеальный "
"конус."

msgid ""
"The height of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
msgstr ""
"Высота кольца при использовании излучателя [constant EMISSION_SHAPE_RING]."

msgid ""
"The inner radius of the ring when using the emitter [constant "
"EMISSION_SHAPE_RING]."
msgstr ""
"Внутренний радиус кольца при использовании излучателя [constant "
"EMISSION_SHAPE_RING]."

msgid ""
"The radius of the ring when using the emitter [constant EMISSION_SHAPE_RING]."
msgstr ""
"Радиус кольца при использовании излучателя [constant EMISSION_SHAPE_RING]."

msgid ""
"The sphere's radius if [enum EmissionShape] is set to [constant "
"EMISSION_SHAPE_SPHERE]."
msgstr ""
"Радиус сферы, если [enum EmissionShape] установлен на [constant "
"EMISSION_SHAPE_SPHERE]."

msgid ""
"The particle system's frame rate is fixed to a value. For example, changing "
"the value to 2 will make the particles render at 2 frames per second. Note "
"this does not slow down the particle system itself."
msgstr ""
"Частота кадров системы частиц зафиксирована на значении. Например, изменение "
"значения на 2 заставит частицы рендериться со скоростью 2 кадра в секунду. "
"Обратите внимание, что это не замедляет саму систему частиц."

msgid ""
"Amount of [member spread] in Y/Z plane. A value of [code]1[/code] restricts "
"particles to X/Z plane."
msgstr ""
"Величина [member spread] в плоскости Y/Z. Значение [code]1[/code] "
"ограничивает частицы плоскостью X/Z."

msgid "Maximum hue variation."
msgstr "Макс. вариативность оттенков."

msgid "Minimum hue variation."
msgstr "Мин. вариативность оттенков."

msgid "Maximum value of the initial velocity."
msgstr "Максимальное значение начальной скорости."

msgid "Minimum value of the initial velocity."
msgstr "Минимальное значение начальной скорости."

msgid "Maximum linear acceleration."
msgstr "Макс. линейное ускорение."

msgid "Minimum linear acceleration."
msgstr "Мин. линейное ускорение."

msgid ""
"If [code]true[/code], particles use the parent node's coordinate space (known "
"as local coordinates). This will cause particles to move and rotate along the "
"[CPUParticles3D] node (and its parents) when it is moved or rotated. If "
"[code]false[/code], particles use global coordinates; they will not move or "
"rotate along the [CPUParticles3D] node (and its parents) when it is moved or "
"rotated."
msgstr ""
"Если [code]true[/code], частицы используют координатное пространство "
"родительского узла (известное как локальные координаты). Это заставит частицы "
"двигаться и вращаться вдоль узла [CPUParticles3D] (и его родителей) при его "
"перемещении или повороте. Если [code]false[/code], частицы используют "
"глобальные координаты; они не будут двигаться или вращаться вдоль узла "
"[CPUParticles3D] (и его родителей) при его перемещении или повороте."

msgid ""
"The [Mesh] used for each particle. If [code]null[/code], particles will be "
"spheres."
msgstr ""
"[Mesh] используется для каждой частицы. Если [code]null[/code], частицы будут "
"сферами."

msgid "Maximum orbit velocity."
msgstr "Макс. орбитальная скорость."

msgid "Minimum orbit velocity."
msgstr "Мин. орбитальная скорость."

msgid "If [code]true[/code], particles will not move on the Z axis."
msgstr "Если [code]true[/code], частицы не будут двигаться по оси Z."

msgid ""
"If [code]true[/code], particles rotate around Y axis by [member angle_min]."
msgstr ""
"Если [code]true[/code], частицы вращаются вокруг оси Y на [member angle_min]."

msgid "Maximum radial acceleration."
msgstr "Макс. радиальное ускорение."

msgid "Minimum radial acceleration."
msgstr "Мин. радиальное ускорение."

msgid "Maximum scale."
msgstr "Макс. масштаб."

msgid "Minimum scale."
msgstr "Миним. масштаб."

msgid "Curve for the scale over life, along the x axis."
msgstr "Кривая шкалы на протяжении жизни по оси x."

msgid "Curve for the scale over life, along the y axis."
msgstr "Кривая шкалы на протяжении жизни по оси y."

msgid "Curve for the scale over life, along the z axis."
msgstr "Кривая шкалы на протяжении жизни по оси z."

msgid ""
"If set to [code]true[/code], three different scale curves can be specified, "
"one per scale axis."
msgstr ""
"Если задано значение [code]true[/code], можно указать три различные кривые "
"шкалы, по одной на каждую ось шкалы."

msgid ""
"Each particle's initial direction range from [code]+spread[/code] to [code]-"
"spread[/code] degrees. Applied to X/Z plane and Y/Z planes."
msgstr ""
"Начальный диапазон направления каждой частицы составляет от [code]+spread[/"
"code] до [code]-spread[/code] градусов. Применяется к плоскостям X/Z и Y/Z."

msgid "Maximum tangent acceleration."
msgstr "Макс. касательное ускорение."

msgid "Minimum tangent acceleration."
msgstr "Мин. касательное ускорение."

msgid ""
"The [AABB] that determines the node's region which needs to be visible on "
"screen for the particle system to be active.\n"
"Grow the box if particles suddenly appear/disappear when the node enters/"
"exits the screen. The [AABB] can be grown via code or with the [b]Particles → "
"Generate AABB[/b] editor tool."
msgstr ""
"[AABB], который определяет область узла, которая должна быть видна на экране, "
"чтобы система частиц была активной.\n"
"Увеличьте поле, если частицы внезапно появляются/исчезают, когда узел входит/"
"выходит из экрана. [AABB] можно увеличить с помощью кода или с помощью "
"инструмента редактора [b]Particles → Generate AABB[[/b]."

msgid "Particles are drawn in order of depth."
msgstr "Частицы рисуются в порядке глубины."

msgid ""
"Use with [method set_particle_flag] to set [member particle_flag_rotate_y]."
msgstr ""
"Используйте с [method set_particle_flag] для установки [member "
"partial_flag_rotate_y]."

msgid ""
"Use with [method set_particle_flag] to set [member particle_flag_disable_z]."
msgstr ""
"Используйте с [method set_particle_flag] для установки [member "
"particle_flag_disable_z]."

msgid "Particles will be emitted in the volume of a sphere."
msgstr "Частицы будут испускаться в объеме сферы."

msgid "Particles will be emitted on the surface of a sphere."
msgstr "Частицы будут испускаться на поверхность сферы."

msgid "Particles will be emitted in the volume of a box."
msgstr "Частицы будут испускаться в объеме коробки."

msgid "Particles will be emitted in a ring or cylinder."
msgstr "Частицы будут выбрасываться в кольцо или цилиндр."

msgid "Provides access to advanced cryptographic functionalities."
msgstr "Предоставляет доступ к расширенным криптографическим функциям."

msgid ""
"The Crypto class provides access to advanced cryptographic functionalities.\n"
"Currently, this includes asymmetric key encryption/decryption, signing/"
"verification, and generating cryptographically secure random bytes, RSA keys, "
"HMAC digests, and self-signed [X509Certificate]s.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var crypto = Crypto.new()\n"
"\n"
"# Generate new RSA key.\n"
"var key = crypto.generate_rsa(4096)\n"
"\n"
"# Generate new self-signed certificate with the given key.\n"
"var cert = crypto.generate_self_signed_certificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\")\n"
"\n"
"# Save key and certificate in the user folder.\n"
"key.save(\"user://generated.key\")\n"
"cert.save(\"user://generated.crt\")\n"
"\n"
"# Encryption\n"
"var data = \"Some data\"\n"
"var encrypted = crypto.encrypt(key, data.to_utf8_buffer())\n"
"\n"
"# Decryption\n"
"var decrypted = crypto.decrypt(key, encrypted)\n"
"\n"
"# Signing\n"
"var signature = crypto.sign(HashingContext.HASH_SHA256, data.sha256_buffer(), "
"key)\n"
"\n"
"# Verifying\n"
"var verified = crypto.verify(HashingContext.HASH_SHA256, "
"data.sha256_buffer(), signature, key)\n"
"\n"
"# Checks\n"
"assert(verified)\n"
"assert(data.to_utf8_buffer() == decrypted)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"Crypto crypto = new Crypto();\n"
"\n"
"// Generate new RSA key.\n"
"CryptoKey key = crypto.GenerateRsa(4096);\n"
"\n"
"// Generate new self-signed certificate with the given key.\n"
"X509Certificate cert = crypto.GenerateSelfSignedCertificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\");\n"
"\n"
"// Save key and certificate in the user folder.\n"
"key.Save(\"user://generated.key\");\n"
"cert.Save(\"user://generated.crt\");\n"
"\n"
"// Encryption\n"
"string data = \"Some data\";\n"
"byte[] encrypted = crypto.Encrypt(key, data.ToUtf8Buffer());\n"
"\n"
"// Decryption\n"
"byte[] decrypted = crypto.Decrypt(key, encrypted);\n"
"\n"
"// Signing\n"
"byte[] signature = crypto.Sign(HashingContext.HashType.Sha256, "
"Data.Sha256Buffer(), key);\n"
"\n"
"// Verifying\n"
"bool verified = crypto.Verify(HashingContext.HashType.Sha256, "
"Data.Sha256Buffer(), signature, key);\n"
"\n"
"// Checks\n"
"Debug.Assert(verified);\n"
"Debug.Assert(data.ToUtf8Buffer() == decrypted);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Класс Crypto обеспечивает доступ к расширенным криптографическим функциям.\n"
"В настоящее время сюда входят асимметричное шифрование/дешифрование ключей, "
"подписание/проверка и генерация криптографически безопасных случайных байтов, "
"ключей RSA, дайджестов HMAC и самоподписанных [X509Certificate].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var crypto = Crypto.new()\n"
"\n"
"# Сгенерируйте новый ключ RSA.\n"
"var key = crypto.generate_rsa(4096)\n"
"\n"
"# Сгенерировать новый самоподписанный сертификат с указанным ключом.\n"
"var cert = crypto.generate_self_signed_certificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\")\n"
"\n"
"# Сохраните ключ и сертификат в папке пользователя.\n"
"key.save(\"user://generated.key\")\n"
"cert.save(\"user://generated.crt\")\n"
"\n"
"# Шифрование\n"
"var data = \"Some data\"\n"
"var encrypted = crypto.encrypt(key, data.to_utf8_buffer())\n"
"\n"
"# Расшифровка\n"
"var decrypted = crypto.decrypt(key, encrypted)\n"
"\n"
"#Подписание\n"
"var signature = crypto.sign(HashingContext.HASH_SHA256, data.sha256_buffer(), "
"key)\n"
"\n"
"# Проверка\n"
"var verified = crypto.verify(HashingContext.HASH_SHA256, "
"data.sha256_buffer(), signature, key)\n"
"\n"
"# Проверки\n"
"assert(verified)\n"
"assert(data.to_utf8_buffer() == decrypted)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"Crypto crypto = new Crypto();\n"
"\n"
"// Сгенерируйте новый ключ RSA.\n"
"CryptoKey key = crypto.GenerateRsa(4096);\n"
"\n"
"// Сгенерировать новый самоподписанный сертификат с указанным ключом.\n"
"X509Certificate cert = crypto.GenerateSelfSignedCertificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\");\n"
"\n"
"// Сохраните ключ и сертификат в папке пользователя.\n"
"key.Save(\"user://generated.key\");\n"
"cert.Save(\"user://generated.crt\");\n"
"\n"
"// Шифрование\n"
"string data = \"Some data\";\n"
"byte[] encrypted = crypto.Encrypt(key, data.ToUtf8Buffer());\n"
"\n"
"// Расшифровка\n"
"byte[] decrypted = crypto.Decrypt(key, encrypted);\n"
"\n"
"// Подписание\n"
"byte[] signature = crypto.Sign(HashingContext.HashType.Sha256, "
"Data.Sha256Buffer(), key);\n"
"\n"
"// Проверка\n"
"bool verified = crypto.Verify(HashingContext.HashType.Sha256, "
"Data.Sha256Buffer(), signature, key);\n"
"\n"
"// Проверки\n"
"Debug.Assert(verified);\n"
"Debug.Assert(data.ToUtf8Buffer() == decrypted);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Compares two [PackedByteArray]s for equality without leaking timing "
"information in order to prevent timing attacks.\n"
"See [url=https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-"
"string-comparison-with-double-hmac-strategy]this blog post[/url] for more "
"information."
msgstr ""
"Сравнивает два [PackedByteArray] на равенство без утечки информации о "
"времени, чтобы предотвратить атаки по времени.\n"
"См. [url=https://paragonie.com/blog/2015/11/preventing-timing-attacks-on-"
"string-comparison-with-double-hmac-strategy]эту запись в блоге[/url] для "
"получения дополнительной информации."

msgid ""
"Decrypt the given [param ciphertext] with the provided private [param key].\n"
"[b]Note:[/b] The maximum size of accepted ciphertext is limited by the key "
"size."
msgstr ""
"Расшифруйте заданный [param ciphertext] с помощью предоставленного закрытого "
"[param key].\n"
"[b]Примечание:[/b] Максимальный размер принятого шифротекста ограничен "
"размером ключа."

msgid ""
"Encrypt the given [param plaintext] with the provided public [param key].\n"
"[b]Note:[/b] The maximum size of accepted plaintext is limited by the key "
"size."
msgstr ""
"Зашифруйте указанный [param plaintext] с помощью предоставленного открытого "
"[param key].\n"
"[b]Примечание:[/b] Максимальный размер принятого открытого текста ограничен "
"размером ключа."

msgid ""
"Generates a [PackedByteArray] of cryptographically secure random bytes with "
"given [param size]."
msgstr ""
"Генерирует [PackedByteArray] криптографически безопасных случайных байтов с "
"заданным [param size]."

msgid ""
"Generates an RSA [CryptoKey] that can be used for creating self-signed "
"certificates and passed to [method StreamPeerTLS.accept_stream]."
msgstr ""
"Генерирует RSA [CryptoKey], который можно использовать для создания "
"самоподписанных сертификатов и передавать в [method "
"StreamPeerTLS.accept_stream]."

msgid ""
"Generates a self-signed [X509Certificate] from the given [CryptoKey] and "
"[param issuer_name]. The certificate validity will be defined by [param "
"not_before] and [param not_after] (first valid date and last valid date). The "
"[param issuer_name] must contain at least \"CN=\" (common name, i.e. the "
"domain name), \"O=\" (organization, i.e. your company name), \"C=\" (country, "
"i.e. 2 lettered ISO-3166 code of the country the organization is based in).\n"
"A small example to generate an RSA key and an X509 self-signed certificate.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var crypto = Crypto.new()\n"
"# Generate 4096 bits RSA key.\n"
"var key = crypto.generate_rsa(4096)\n"
"# Generate self-signed certificate using the given key.\n"
"var cert = crypto.generate_self_signed_certificate(key, \"CN=example.com,O=A "
"Game Company,C=IT\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var crypto = new Crypto();\n"
"// Generate 4096 bits RSA key.\n"
"CryptoKey key = crypto.GenerateRsa(4096);\n"
"// Generate self-signed certificate using the given key.\n"
"X509Certificate cert = crypto.GenerateSelfSignedCertificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Генерирует самоподписанный [X509Certificate] из заданного [CryptoKey] и "
"[param issuer_name]. Действительность сертификата будет определяться [param "
"not_before] и [param not_after] (первая действительная дата и последняя "
"действительная дата). [param issuer_name] должен содержать как минимум "
"\"CN=\" (общее имя, т. е. доменное имя), \"O=\" (организация, т. е. название "
"вашей компании), \"C=\" (страна, т. е. двухбуквенный код ISO-3166 страны, в "
"которой находится организация).\n"
"Небольшой пример генерации ключа RSA и самоподписанного сертификата X509.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var crypto = Crypto.new()\n"
"# Сгенерируйте 4096-битный ключ RSA.\n"
"var key = crypto.generate_rsa(4096)\n"
"# Сгенерировать самоподписанный сертификат, используя указанный ключ.\n"
"var cert = crypto.generate_self_signed_certificate(key, \"CN=example.com,O=A "
"Game Company,C=IT\")\n"
"[/gdscript]\n"
"[csharp]\n"
"var crypto = new Crypto();\n"
"// Сгенерируйте 4096-битный ключ RSA.\n"
"CryptoKey key = crypto.GenerateRsa(4096);\n"
"// Сгенерировать самоподписанный сертификат, используя указанный ключ.\n"
"X509Certificate cert = crypto.GenerateSelfSignedCertificate(key, "
"\"CN=mydomain.com,O=My Game Company,C=IT\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Generates an [url=https://en.wikipedia.org/wiki/HMAC]HMAC[/url] digest of "
"[param msg] using [param key]. The [param hash_type] parameter is the hashing "
"algorithm that is used for the inner and outer hashes.\n"
"Currently, only [constant HashingContext.HASH_SHA256] and [constant "
"HashingContext.HASH_SHA1] are supported."
msgstr ""
"Генерирует [url=https://en.wikipedia.org/wiki/HMAC]HMAC[/url] дайджест [param "
"msg] с использованием [param key]. Параметр [param hash_type] — это алгоритм "
"хеширования, который используется для внутренних и внешних хешей.\n"
"В настоящее время поддерживаются только [constant HashingContext.HASH_SHA256] "
"и [constant HashingContext.HASH_SHA1]."

msgid ""
"Sign a given [param hash] of type [param hash_type] with the provided private "
"[param key]."
msgstr ""
"Подписать заданный [param hash] типа [param hash_type] с помощью "
"предоставленного закрытого [param key]."

msgid ""
"Verify that a given [param signature] for [param hash] of type [param "
"hash_type] against the provided public [param key]."
msgstr ""
"Проверьте, что заданная [param signature] для [param hash] типа [param "
"hash_type] соответствует предоставленному открытому [param key]."

msgid "A cryptographic key (RSA or elliptic-curve)."
msgstr "Криптографический ключ (RSA или эллиптическая кривая)."

msgid ""
"The CryptoKey class represents a cryptographic key. Keys can be loaded and "
"saved like any other [Resource].\n"
"They can be used to generate a self-signed [X509Certificate] via [method "
"Crypto.generate_self_signed_certificate] and as private key in [method "
"StreamPeerTLS.accept_stream] along with the appropriate certificate."
msgstr ""
"Класс CryptoKey представляет собой криптографический ключ. Ключи можно "
"загружать и сохранять, как и любой другой [Resource].\n"
"Их можно использовать для генерации самоподписанного [X509Certificate] через "
"[method Crypto.generate_self_signed_certificate] и как закрытый ключ в "
"[method StreamPeerTLS.accept_stream] вместе с соответствующим сертификатом."

msgid "SSL certificates"
msgstr "SSL сертификаты"

msgid ""
"Returns [code]true[/code] if this CryptoKey only has the public part, and not "
"the private one."
msgstr ""
"Возвращает [code]true[/code], если этот CryptoKey имеет только открытую "
"часть, но не закрытую."

msgid ""
"Loads a key from [param path]. If [param public_only] is [code]true[/code], "
"only the public key will be loaded.\n"
"[b]Note:[/b] [param path] should be a \"*.pub\" file if [param public_only] "
"is [code]true[/code], a \"*.key\" file otherwise."
msgstr ""
"Загружает ключ из [param path]. Если [param public_only] равен [code]true[/"
"code], будет загружен только открытый ключ.\n"
"[b]Примечание:[/b] [param path] должен быть файлом \"*.pub\", если [param "
"public_only] равен [code]true[/code], в противном случае файлом \"*.key\"."

msgid ""
"Loads a key from the given [param string_key]. If [param public_only] is "
"[code]true[/code], only the public key will be loaded."
msgstr ""
"Загружает ключ из указанного [param string_key]. Если [param public_only] "
"равен [code]true[/code], будет загружен только открытый ключ."

msgid ""
"Saves a key to the given [param path]. If [param public_only] is [code]true[/"
"code], only the public key will be saved.\n"
"[b]Note:[/b] [param path] should be a \"*.pub\" file if [param public_only] "
"is [code]true[/code], a \"*.key\" file otherwise."
msgstr ""
"Сохраняет ключ в указанном [param path]. Если [param public_only] равен "
"[code]true[/code], будет сохранен только открытый ключ.\n"
"[b]Примечание:[/b] [param path] должен быть файлом \"*.pub\", если [param "
"public_only] равен [code]true[/code], в противном случае файлом \"*.key\"."

msgid ""
"Returns a string containing the key in PEM format. If [param public_only] is "
"[code]true[/code], only the public key will be included."
msgstr ""
"Возвращает строку, содержащую ключ в формате PEM. Если [param public_only] "
"равен [code]true[/code], будет включен только открытый ключ."

msgid "A CSG Box shape."
msgstr "Форма CSG-коробки."

msgid ""
"This node allows you to create a box for use with the CSG system.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Этот узел позволяет вам создать ящик для использования с системой CSG.\n"
"[b]Примечание:[/b] Узлы CSG предназначены для использования при "
"прототипировании уровней. Создание узлов CSG имеет значительные затраты ЦП по "
"сравнению с созданием [MeshInstance3D] с [PrimitiveMesh]. Перемещение узла "
"CSG в другой узел CSG также имеет значительные затраты ЦП, поэтому его "
"следует избегать во время игры."

msgid "Prototyping levels with CSG"
msgstr "Прототипирование уровней с помощью CSG"

msgid "The material used to render the box."
msgstr "Материал, использованный для изготовления коробки."

msgid "A CSG node that allows you to combine other CSG modifiers."
msgstr "Узел CSG, позволяющий комбинировать другие модификаторы CSG."

msgid ""
"For complex arrangements of shapes, it is sometimes needed to add structure "
"to your CSG nodes. The CSGCombiner3D node allows you to create this "
"structure. The node encapsulates the result of the CSG operations of its "
"children. In this way, it is possible to do operations on one set of shapes "
"that are children of one CSGCombiner3D node, and a set of separate operations "
"on a second set of shapes that are children of a second CSGCombiner3D node, "
"and then do an operation that takes the two end results as its input to "
"create the final shape.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Для сложных расположений фигур иногда требуется добавить структуру к узлам "
"CSG. Узел CSGCombiner3D позволяет вам создать эту структуру. Узел "
"инкапсулирует результат операций CSG своих потомков. Таким образом, можно "
"выполнять операции над одним набором фигур, которые являются потомками одного "
"узла CSGCombiner3D, и набор отдельных операций над вторым набором фигур, "
"которые являются потомками второго узла CSGCombiner3D, а затем выполнять "
"операцию, которая принимает два конечных результата в качестве входных данных "
"для создания окончательной фигуры.\n"
"[b]Примечание:[/b] Узлы CSG предназначены для использования при "
"прототипировании уровней. Создание узлов CSG имеет значительные затраты "
"процессора по сравнению с созданием [MeshInstance3D] с [PrimitiveMesh]. "
"Перемещение узла CSG в пределах другого узла CSG также имеет значительные "
"затраты процессора, поэтому его следует избегать во время игры."

msgid "A CSG Cylinder shape."
msgstr "Форма цилиндра CSG."

msgid ""
"This node allows you to create a cylinder (or cone) for use with the CSG "
"system.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Этот узел позволяет создать цилиндр (или конус) для использования с системой "
"CSG.\n"
"[b]Примечание:[/b] Узлы CSG предназначены для использования при "
"прототипировании уровней. Создание узлов CSG требует значительных затрат "
"ресурсов ЦП по сравнению с созданием [MeshInstance3D] с [PrimitiveMesh]. "
"Перемещение узла CSG в пределах другого узла CSG также требует значительных "
"затрат ресурсов ЦП, поэтому его следует избегать во время игры."

msgid ""
"If [code]true[/code] a cone is created, the [member radius] will only apply "
"to one side."
msgstr ""
"Если [code]true[/code] создается конус, [member radius] будет применяться "
"только к одной стороне."

msgid "The height of the cylinder."
msgstr "Высота цилиндра."

msgid "The material used to render the cylinder."
msgstr "Материал, используемый для изготовления цилиндра."

msgid "The radius of the cylinder."
msgstr "Радиус цилиндра."

msgid ""
"The number of sides of the cylinder, the higher this number the more detail "
"there will be in the cylinder."
msgstr ""
"Число сторон цилиндра. Чем больше это число, тем больше деталей будет в "
"цилиндре."

msgid ""
"If [code]true[/code] the normals of the cylinder are set to give a smooth "
"effect making the cylinder seem rounded. If [code]false[/code] the cylinder "
"will have a flat shaded look."
msgstr ""
"Если [code]true[/code], нормали цилиндра устанавливаются так, чтобы придать "
"сглаженный эффект, делая цилиндр округлым. Если [code]false[/code], цилиндр "
"будет иметь плоский затененный вид."

msgid "A CSG Mesh shape that uses a mesh resource."
msgstr "Форма сетки CSG, использующая ресурс сетки."

msgid ""
"This CSG node allows you to use any mesh resource as a CSG shape, provided it "
"is [i]manifold[/i]. A manifold shape is closed, does not self-intersect, does "
"not contain internal faces and has no edges that connect to more than two "
"faces. See also [CSGPolygon3D] for drawing 2D extruded polygons to be used as "
"CSG nodes.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Этот узел CSG позволяет использовать любой ресурс сетки в качестве формы CSG, "
"при условии, что он [i]многообразный[/i]. Форма многообразия замкнута, не "
"пересекается сама с собой, не содержит внутренних граней и не имеет ребер, "
"которые соединяются более чем с двумя гранями. См. также [CSGPolygon3D] для "
"рисования 2D-выдавленных полигонов, которые будут использоваться в качестве "
"узлов CSG.\n"
"[b]Примечание:[/b] Узлы CSG предназначены для использования при "
"прототипировании уровней. Создание узлов CSG требует значительных затрат "
"ресурсов ЦП по сравнению с созданием [MeshInstance3D] с помощью "
"[PrimitiveMesh]. Перемещение узла CSG внутри другого узла CSG также требует "
"значительных затрат ресурсов ЦП, поэтому его следует избегать во время игры."

msgid "The [Material] used in drawing the CSG shape."
msgstr "[Material], используемый при рисовании формы CSG."

msgid ""
"The [Mesh] resource to use as a CSG shape.\n"
"[b]Note:[/b] Some [Mesh] types such as [PlaneMesh], [PointMesh], [QuadMesh], "
"and [RibbonTrailMesh] are excluded from the type hint for this property, as "
"these primitives are non-[i]manifold[/i] and thus not compatible with the CSG "
"algorithm.\n"
"[b]Note:[/b] When using an [ArrayMesh], all vertex attributes except "
"[constant Mesh.ARRAY_VERTEX], [constant Mesh.ARRAY_NORMAL] and [constant "
"Mesh.ARRAY_TEX_UV] are left unused. Only [constant Mesh.ARRAY_VERTEX] and "
"[constant Mesh.ARRAY_TEX_UV] will be passed to the GPU.\n"
"[constant Mesh.ARRAY_NORMAL] is only used to determine which faces require "
"the use of flat shading. By default, CSGMesh will ignore the mesh's vertex "
"normals, recalculate them for each vertex and use a smooth shader. If a flat "
"shader is required for a face, ensure that all vertex normals of the face are "
"approximately equal."
msgstr ""
"Ресурс [Mesh] для использования в качестве формы CSG.\n"
"[b]Примечание:[/b] Некоторые типы [Mesh], такие как [PlaneMesh], [PointMesh], "
"[QuadMesh] и [RibbonTrailMesh], исключены из подсказки типа для этого "
"свойства, так как эти примитивы не являются [i]manifold[/i] и, таким образом, "
"несовместимы с алгоритмом CSG.\n"
"[b]Примечание:[/b] При использовании [ArrayMesh] все атрибуты вершин, кроме "
"[constant Mesh.ARRAY_VERTEX], [constant Mesh.ARRAY_NORMAL] и [constant "
"Mesh.ARRAY_TEX_UV], остаются неиспользованными. Только [constant "
"Mesh.ARRAY_VERTEX] и [constant Mesh.ARRAY_TEX_UV] будут переданы в "
"графический процессор.\n"
"[constant Mesh.ARRAY_NORMAL] используется только для определения того, какие "
"грани требуют использования плоского затенения. По умолчанию CSGMesh будет "
"игнорировать нормали вершин сетки, пересчитывать их для каждой вершины и "
"использовать сглаженный шейдер. Если для грани требуется плоский шейдер, "
"убедитесь, что все нормали вершин грани приблизительно равны."

msgid "Extrudes a 2D polygon shape to create a 3D mesh."
msgstr "Выдавливает 2D-многоугольник для создания 3D-сетки."

msgid ""
"An array of 2D points is extruded to quickly and easily create a variety of "
"3D meshes. See also [CSGMesh3D] for using 3D meshes as CSG nodes.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Массив 2D-точек выдавливается для быстрого и легкого создания различных 3D-"
"сеток. См. также [CSGMesh3D] для использования 3D-сеток в качестве узлов "
"CSG.\n"
"[b]Примечание:[/b] Узлы CSG предназначены для использования при "
"прототипировании уровней. Создание узлов CSG требует значительных затрат "
"ресурсов ЦП по сравнению с созданием [MeshInstance3D] с [PrimitiveMesh]. "
"Перемещение узла CSG в пределах другого узла CSG также требует значительных "
"затрат ресурсов ЦП, поэтому его следует избегать во время игры."

msgid "When [member mode] is [constant MODE_DEPTH], the depth of the extrusion."
msgstr "Если [member mode] равен [constant MODE_DEPTH], глубина выдавливания."

msgid ""
"Material to use for the resulting mesh. The UV maps the top half of the "
"material to the extruded shape (U along the length of the extrusions and V "
"around the outline of the [member polygon]), the bottom-left quarter to the "
"front end face, and the bottom-right quarter to the back end face."
msgstr ""
"Материал для использования в результирующей сетке. UV сопоставляет верхнюю "
"половину материала с выдавленной формой (U по длине выдавливаний и V вокруг "
"контура [member polygon]), нижнюю левую четверть с передней торцевой "
"поверхностью, а нижнюю правую четверть с задней торцевой поверхностью."

msgid "The [member mode] used to extrude the [member polygon]."
msgstr "[member mode], используемый для выдавливания [member polygon]."

msgid ""
"When [member mode] is [constant MODE_PATH], by default, the top half of the "
"[member material] is stretched along the entire length of the extruded shape. "
"If [code]false[/code] the top half of the material is repeated every step of "
"the extrusion."
msgstr ""
"Когда [member mode] равен [constant MODE_PATH], по умолчанию верхняя половина "
"[member material] растягивается по всей длине выдавленной формы. Если "
"[code]false[/code], верхняя половина материала повторяется на каждом этапе "
"выдавливания."

msgid ""
"When [member mode] is [constant MODE_PATH], the path interval or ratio of "
"path points to extrusions."
msgstr ""
"Если [member mode] равен [constant MODE_PATH], интервал пути или отношение "
"точек пути к выдавливаниям (extrusions)."

msgid ""
"When [member mode] is [constant MODE_PATH], this will determine if the "
"interval should be by distance ([constant PATH_INTERVAL_DISTANCE]) or "
"subdivision fractions ([constant PATH_INTERVAL_SUBDIVIDE])."
msgstr ""
"Если [member mode] равен [constant MODE_PATH], это определит, должен ли "
"интервал быть рассчитан по расстоянию ([constant PATH_INTERVAL_DISTANCE]) или "
"по дробям подразделения ([constant PATH_INTERVAL_SUBDIVIDE])."

msgid ""
"When [member mode] is [constant MODE_PATH], if [code]true[/code] the ends of "
"the path are joined, by adding an extrusion between the last and first points "
"of the path."
msgstr ""
"Когда [member mode] равен [constant MODE_PATH], если [code]true[/code], концы "
"пути соединяются путем добавления выдавливания между последней и первой "
"точками пути."

msgid ""
"When [member mode] is [constant MODE_PATH], if [code]true[/code] the "
"[Transform3D] of the [CSGPolygon3D] is used as the starting point for the "
"extrusions, not the [Transform3D] of the [member path_node]."
msgstr ""
"Когда [member mode] равен [constant MODE_PATH], если [code]true[/code], то в "
"качестве начальной точки для выдавливания используется [Transform3D] из "
"[CSGPolygon3D], а не [Transform3D] из [member path_node]."

msgid ""
"When [member mode] is [constant MODE_PATH], the location of the [Path3D] "
"object used to extrude the [member polygon]."
msgstr ""
"Если [member mode] равен [constant MODE_PATH], местоположение объекта "
"[Path3D], используемого для выдавливания [member polygon]."

msgid ""
"When [member mode] is [constant MODE_PATH], the path rotation method used to "
"rotate the [member polygon] as it is extruded."
msgstr ""
"Если [member mode] равен [constant MODE_PATH], метод поворота траектории, "
"используемый для поворота [member polygon] при его выдавливании."

msgid ""
"When [member mode] is [constant MODE_PATH], if [code]true[/code] the polygon "
"will be rotated according to the proper tangent of the path at the sampled "
"points. If [code]false[/code] an approximation is used, which decreases in "
"accuracy as the number of subdivisions decreases."
msgstr ""
"Когда [member mode] равен [constant MODE_PATH], если [code]true[/code], "
"многоугольник будет повернут в соответствии с правильной касательной пути в "
"выбранных точках. Если [code]false[/code], используется приближение, точность "
"которого уменьшается по мере уменьшения количества подразделений."

msgid ""
"When [member mode] is [constant MODE_PATH], extrusions that are less than "
"this angle, will be merged together to reduce polygon count."
msgstr ""
"Если [member mode] равен [constant MODE_PATH], выдавливания, которые меньше "
"этого угла, будут объединены вместе для уменьшения количества полигонов."

msgid ""
"When [member mode] is [constant MODE_PATH], this is the distance along the "
"path, in meters, the texture coordinates will tile. When set to 0, texture "
"coordinates will match geometry exactly with no tiling."
msgstr ""
"Когда [member mode] равен [constant MODE_PATH], это расстояние вдоль пути в "
"метрах, координаты текстуры будут замощены. Если установлено значение 0, "
"координаты текстуры будут точно соответствовать геометрии без замощения."

msgid ""
"The point array that defines the 2D polygon that is extruded. This can be a "
"convex or concave polygon with 3 or more points. The polygon must [i]not[/i] "
"have any intersecting edges. Otherwise, triangulation will fail and no mesh "
"will be generated.\n"
"[b]Note:[/b] If only 1 or 2 points are defined in [member polygon], no mesh "
"will be generated."
msgstr ""
"Массив точек, определяющий выдавливаемый 2D-полигон. Это может быть выпуклый "
"или вогнутый полигон с 3 или более точками. Полигон не должен [i]иметь[/i] "
"пересекающихся ребер. В противном случае триангуляция не будет выполнена, и "
"сетка не будет создана.\n"
"[b]Примечание:[/b] Если в [member polygon] определены только 1 или 2 точки, "
"сетка не будет создана."

msgid "If [code]true[/code], applies smooth shading to the extrusions."
msgstr ""
"Если [code]true[/code], к выдавливаниям (extrusions) применяется плавное "
"затенение."

msgid ""
"When [member mode] is [constant MODE_SPIN], the total number of degrees the "
"[member polygon] is rotated when extruding."
msgstr ""
"Если [member mode] равен [constant MODE_SPIN], общее число градусов, на "
"которое поворачивается [member polygon] при выдавливании."

msgid ""
"When [member mode] is [constant MODE_SPIN], the number of extrusions made."
msgstr ""
"Когда [member mode] равен [constant MODE_SPIN], количество выполненных "
"экструзий."

msgid "The [member polygon] shape is extruded along the negative Z axis."
msgstr "Форма [member polygon] выдавливается вдоль отрицательной оси Z."

msgid "The [member polygon] shape is extruded by rotating it around the Y axis."
msgstr "Форма [member polygon] выдавливается путем вращения вокруг оси Y."

msgid ""
"The [member polygon] shape is extruded along the [Path3D] specified in "
"[member path_node]."
msgstr ""
"Фигура [member polygon] выдавливается вдоль [Path3D], указанного в [member "
"path_node]."

msgid ""
"The [member polygon] shape is not rotated.\n"
"[b]Note:[/b] Requires the path Z coordinates to continually decrease to "
"ensure viable shapes."
msgstr ""
"Форма [member polygon] не повернута.\n"
"[b]Примечание:[/b] Требует, чтобы координаты Z траектории постоянно "
"уменьшались для обеспечения жизнеспособных форм."

msgid ""
"The [member polygon] shape is rotated along the path, but it is not rotated "
"around the path axis.\n"
"[b]Note:[/b] Requires the path Z coordinates to continually decrease to "
"ensure viable shapes."
msgstr ""
"Фигура [member polygon] вращается вдоль пути, но не вращается вокруг оси "
"пути.\n"
"[b]Примечание:[/b] Требует, чтобы координаты Z пути постоянно уменьшались для "
"обеспечения жизнеспособных форм."

msgid ""
"The [member polygon] shape follows the path and its rotations around the path "
"axis."
msgstr ""
"Форма [member polygon] следует траектории и ее вращениям вокруг оси "
"траектории."

msgid ""
"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
"will determine the distance, in meters, each interval of the path will "
"extrude."
msgstr ""
"Если [member mode] установлен на [constant MODE_PATH], [member path_interval] "
"будет определять расстояние в метрах, на которое будет выдавливаться каждый "
"интервал пути."

msgid ""
"When [member mode] is set to [constant MODE_PATH], [member path_interval] "
"will subdivide the polygons along the path."
msgstr ""
"Если [member mode] установлен на [constant MODE_PATH], [member path_interval] "
"будет подразделять полигоны вдоль пути."

msgid "Base class for CSG primitives."
msgstr "Базовый класс для примитивов CSG."

msgid ""
"Parent class for various CSG primitives. It contains code and functionality "
"that is common between them. It cannot be used directly. Instead use one of "
"the various classes that inherit from it.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Родительский класс для различных примитивов CSG. Он содержит код и "
"функциональность, которые являются общими для них. Его нельзя использовать "
"напрямую. Вместо этого используйте один из различных классов, которые "
"наследуют от него.\n"
"[b]Примечание:[/b] Узлы CSG предназначены для использования при "
"прототипировании уровней. Создание узлов CSG имеет значительные затраты ЦП по "
"сравнению с созданием [MeshInstance3D] с [PrimitiveMesh]. Перемещение узла "
"CSG внутри другого узла CSG также имеет значительные затраты ЦП, поэтому его "
"следует избегать во время игры."

msgid ""
"If set, the order of the vertices in each triangle are reversed resulting in "
"the backside of the mesh being drawn."
msgstr ""
"Если установлено, порядок вершин в каждом треугольнике меняется на обратный, "
"в результате чего отрисовывается задняя сторона сетки."

msgid "The CSG base class."
msgstr "Базовый класс CSG."

msgid ""
"This is the CSG base class that provides CSG operation support to the various "
"CSG nodes in Godot.\n"
"[b]Performance:[/b] CSG nodes are only intended for prototyping as they have "
"a significant CPU performance cost. Consider baking final CSG operation "
"results into static geometry that replaces the CSG nodes.\n"
"Individual CSG root node results can be baked to nodes with static resources "
"with the editor menu that appears when a CSG root node is selected.\n"
"Individual CSG root nodes can also be baked to static resources with scripts "
"by calling [method bake_static_mesh] for the visual mesh or [method "
"bake_collision_shape] for the physics collision.\n"
"Entire scenes of CSG nodes can be baked to static geometry and exported with "
"the editor glTF scene exporter: [b]Scene > Export As... > glTF 2.0 Scene...[/"
"b]"
msgstr ""
"Это базовый класс CSG, который обеспечивает поддержку операций CSG для "
"различных узлов CSG в Godot.\n"
"[b]Производительность:[/b] Узлы CSG предназначены только для "
"прототипирования, поскольку они имеют значительные затраты производительности "
"ЦП. Рассмотрите возможность запекания окончательных результатов операций CSG "
"в статическую геометрию, которая заменяет узлы CSG.\n"
"Отдельные результаты корневых узлов CSG можно запекать в узлы со статическими "
"ресурсами с помощью меню редактора, которое появляется при выборе корневого "
"узла CSG.\n"
"Отдельные корневые узлы CSG также можно запекать в статические ресурсы с "
"помощью скриптов, вызывая [method bake_static_mesh] для визуальной сетки или "
"[method bake_collision_shape] для физического столкновения.\n"
"Все сцены узлов CSG можно запекать в статическую геометрию и экспортировать с "
"помощью редактора экспортера сцен glTF: [b]Сцена > Экспортировать как... > "
"Сцена glTF 2.0...[/b]"

msgid ""
"Returns a baked physics [ConcavePolygonShape3D] of this node's CSG operation "
"result. Returns an empty shape if the node is not a CSG root node or has no "
"valid geometry.\n"
"[b]Performance:[/b] If the CSG operation results in a very detailed geometry "
"with many faces physics performance will be very slow. Concave shapes should "
"in general only be used for static level geometry and not with dynamic "
"objects that are moving.\n"
"[b]Note:[/b] CSG mesh data updates are deferred, which means they are updated "
"with a delay of one rendered frame. To avoid getting an empty shape or "
"outdated mesh data, make sure to call [code]await get_tree().process_frame[/"
"code] before using [method bake_collision_shape] in [method Node._ready] or "
"after changing properties on the [CSGShape3D]."
msgstr ""
"Возвращает запеченную физику [ConcavePolygonShape3D] результата операции CSG "
"этого узла. Возвращает пустую форму, если узел не является корневым узлом CSG "
"или не имеет допустимой геометрии.\n"
"[b]Производительность:[/b] Если операция CSG приводит к очень подробной "
"геометрии со многими гранями, производительность физики будет очень низкой. "
"Вогнутые формы, как правило, следует использовать только для статической "
"геометрии уровня, а не с динамическими объектами, которые движутся.\n"
"[b]Примечание:[/b] Обновления данных сетки CSG откладываются, что означает, "
"что они обновляются с задержкой в один отрисованный кадр. Чтобы избежать "
"получения пустой формы или устаревших данных сетки, обязательно вызовите "
"[code]await get_tree().process_frame[/code] перед использованием [method "
"bake_collision_shape] в [method Node._ready] или после изменения свойств в "
"[CSGShape3D]."

msgid ""
"Returns a baked static [ArrayMesh] of this node's CSG operation result. "
"Materials from involved CSG nodes are added as extra mesh surfaces. Returns "
"an empty mesh if the node is not a CSG root node or has no valid geometry.\n"
"[b]Note:[/b] CSG mesh data updates are deferred, which means they are updated "
"with a delay of one rendered frame. To avoid getting an empty mesh or "
"outdated mesh data, make sure to call [code]await get_tree().process_frame[/"
"code] before using [method bake_static_mesh] in [method Node._ready] or after "
"changing properties on the [CSGShape3D]."
msgstr ""
"Возвращает запеченный статический [ArrayMesh] результата операции CSG этого "
"узла. Материалы из задействованных узлов CSG добавляются как дополнительные "
"поверхности сетки. Возвращает пустую сетку, если узел не является корневым "
"узлом CSG или не имеет допустимой геометрии.\n"
"[b]Примечание:[/b] Обновления данных сетки CSG откладываются, что означает, "
"что они обновляются с задержкой в один отрисованный кадр. Чтобы избежать "
"получения пустой сетки или устаревших данных сетки, обязательно вызовите "
"[code]await get_tree().process_frame[/code] перед использованием [method "
"bake_static_mesh] в [method Node._ready] или после изменения свойств на "
"[CSGShape3D]."

msgid ""
"Returns an [Array] with two elements, the first is the [Transform3D] of this "
"node and the second is the root [Mesh] of this node. Only works when this "
"node is the root shape.\n"
"[b]Note:[/b] CSG mesh data updates are deferred, which means they are updated "
"with a delay of one rendered frame. To avoid getting an empty shape or "
"outdated mesh data, make sure to call [code]await get_tree().process_frame[/"
"code] before using [method get_meshes] in [method Node._ready] or after "
"changing properties on the [CSGShape3D]."
msgstr ""
"Возвращает [Array] с двумя элементами, первый из которых — [Transform3D] "
"этого узла, а второй — корень [Mesh] этого узла. Работает только в том "
"случае, если этот узел является корневой формой.\n"
"[b]Примечание:[/b] Обновления данных сетки CSG откладываются, что означает, "
"что они обновляются с задержкой в один отрисованный кадр. Чтобы избежать "
"получения пустой формы или устаревших данных сетки, обязательно вызовите "
"[code]await get_tree().process_frame[/code] перед использованием [method "
"get_meshes] в [method Node._ready] или после изменения свойств в [CSGShape3D]."

msgid ""
"Returns [code]true[/code] if this is a root shape and is thus the object that "
"is rendered."
msgstr ""
"Возвращает [code]true[/code], если это корневая форма и, следовательно, "
"объект, который визуализируется."

msgid ""
"Calculate tangents for the CSG shape which allows the use of normal and "
"height maps. This is only applied on the root shape, this setting is ignored "
"on any child. Setting this to [code]false[/code] can speed up shape "
"generation slightly."
msgstr ""
"Вычислить касательные для формы CSG, что позволяет использовать карты "
"нормалей и высот. Это применяется только к корневой форме, эта настройка "
"игнорируется для любого дочернего элемента. Установка этого параметра на "
"[code]false[/code] может немного ускорить генерацию формы."

msgid ""
"The physics layers this area is in.\n"
"Collidable objects can exist in any of 32 different layers. These layers work "
"like a tagging system, and are not visual. A collidable can use these layers "
"to select with which objects it can collide, using the collision_mask "
"property.\n"
"A contact is detected if object A is in any of the layers that object B "
"scans, or object B is in any layer scanned by object A. See [url=$DOCS_URL/"
"tutorials/physics/physics_introduction.html#collision-layers-and-"
"masks]Collision layers and masks[/url] in the documentation for more "
"information."
msgstr ""
"Слои физики, в которых находится эта область.\n"
"Объекты, способные сталкиваться, могут существовать в любом из 32 различных "
"слоев. Эти слои работают как система тегов и не являются визуальными. "
"Сталкивающийся объект может использовать эти слои для выбора объектов, с "
"которыми он может столкнуться, используя свойство collision_mask.\n"
"Контакт обнаруживается, если объект A находится в любом из слоев, которые "
"сканирует объект B, или объект B находится в любом слое, сканируемом объектом "
"A. Для получения дополнительной информации см. [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Слои и маски "
"столкновений[/url] в документации."

msgid ""
"The physics layers this CSG shape scans for collisions. Only effective if "
"[member use_collision] is [code]true[/code]. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"Слои физики этой формы CSG сканируют на предмет столкновений. Действует "
"только если [member use_collision] равно [code]true[/code]. Для получения "
"дополнительной информации см. [url=$DOCS_URL/tutorials/physics/"
"physics_introduction.html#collision-layers-and-masks]Слои и маски "
"столкновений[/url] в документации."

msgid ""
"The priority used to solve colliding when occurring penetration. Only "
"effective if [member use_collision] is [code]true[/code]. The higher the "
"priority is, the lower the penetration into the object will be. This can for "
"example be used to prevent the player from breaking through the boundaries of "
"a level."
msgstr ""
"Приоритет, используемый для решения столкновения при возникновении "
"проникновения. Действует только если [member use_collision] равно [code]true[/"
"code]. Чем выше приоритет, тем ниже будет проникновение в объект. Это может "
"быть использовано, например, для предотвращения прорыва игрока через границы "
"уровня."

msgid ""
"The operation that is performed on this shape. This is ignored for the first "
"CSG child node as the operation is between this node and the previous child "
"of this nodes parent."
msgstr ""
"Операция, которая выполняется над этой формой. Это игнорируется для первого "
"дочернего узла CSG, поскольку операция выполняется между этим узлом и "
"предыдущим дочерним узлом этого родительского узла."

msgid "The CSG library no longer uses snapping."
msgstr "Библиотека CSG больше не использует привязку."

msgid "This property does nothing."
msgstr "Это свойство ничего не делает."

msgid ""
"Adds a collision shape to the physics engine for our CSG shape. This will "
"always act like a static body. Note that the collision shape is still active "
"even if the CSG shape itself is hidden. See also [member collision_mask] and "
"[member collision_priority]."
msgstr ""
"Добавляет форму столкновения в физический движок для нашей формы CSG. Это "
"всегда будет действовать как статическое тело. Обратите внимание, что форма "
"столкновения все еще активна, даже если сама форма CSG скрыта. См. также "
"[member collision_mask] и [member collision_priority]."

msgid "Geometry of both primitives is merged, intersecting geometry is removed."
msgstr ""
"Геометрия обоих примитивов объединяется, пересекающаяся геометрия удаляется."

msgid "Only intersecting geometry remains, the rest is removed."
msgstr "Остается только пересекающаяся геометрия, остальное удаляется."

msgid ""
"The second shape is subtracted from the first, leaving a dent with its shape."
msgstr "Вторая форма вычитается из первой, оставляя вмятину на ее форме."

msgid "A CSG Sphere shape."
msgstr "Форма сферы CSG."

msgid ""
"This node allows you to create a sphere for use with the CSG system.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Этот узел позволяет вам создать сферу для использования с системой CSG.\n"
"[b]Примечание:[/b] Узлы CSG предназначены для использования при "
"прототипировании уровней. Создание узлов CSG имеет значительные затраты ЦП по "
"сравнению с созданием [MeshInstance3D] с [PrimitiveMesh]. Перемещение узла "
"CSG в другой узел CSG также имеет значительные затраты ЦП, поэтому его "
"следует избегать во время игры."

msgid "The material used to render the sphere."
msgstr "Материал, используемый для визуализации сферы."

msgid "Number of vertical slices for the sphere."
msgstr "Количество вертикальных срезов сферы."

msgid "Radius of the sphere."
msgstr "Радиус сферы."

msgid "Number of horizontal slices for the sphere."
msgstr "Количество горизонтальных срезов сферы."

msgid ""
"If [code]true[/code] the normals of the sphere are set to give a smooth "
"effect making the sphere seem rounded. If [code]false[/code] the sphere will "
"have a flat shaded look."
msgstr ""
"Если [code]true[/code], нормали сферы устанавливаются так, чтобы придать "
"плавный эффект, делая сферу кажущейся округлой. Если [code]false[/code], "
"сфера будет иметь плоский затененный вид."

msgid "A CSG Torus shape."
msgstr "Форма тора CSG."

msgid ""
"This node allows you to create a torus for use with the CSG system.\n"
"[b]Note:[/b] CSG nodes are intended to be used for level prototyping. "
"Creating CSG nodes has a significant CPU cost compared to creating a "
"[MeshInstance3D] with a [PrimitiveMesh]. Moving a CSG node within another CSG "
"node also has a significant CPU cost, so it should be avoided during gameplay."
msgstr ""
"Этот узел позволяет вам создать тор для использования с системой CSG.\n"
"[b]Примечание:[/b] Узлы CSG предназначены для использования при "
"прототипировании уровней. Создание узлов CSG имеет значительные затраты ЦП по "
"сравнению с созданием [MeshInstance3D] с [PrimitiveMesh]. Перемещение узла "
"CSG в другой узел CSG также имеет значительные затраты ЦП, поэтому его "
"следует избегать во время игры."

msgid "The inner radius of the torus."
msgstr "Внутренний радиус торуса."

msgid "The material used to render the torus."
msgstr "Материал, используемый для визуализации торуса."

msgid "The outer radius of the torus."
msgstr "Внешний радиус торуса."

msgid "The number of edges each ring of the torus is constructed of."
msgstr "Число ребер, из которых построено каждое кольцо торуса."

msgid "The number of slices the torus is constructed of."
msgstr "Количество срезов, из которых построен торус."

msgid ""
"If [code]true[/code] the normals of the torus are set to give a smooth effect "
"making the torus seem rounded. If [code]false[/code] the torus will have a "
"flat shaded look."
msgstr ""
"Если [code]true[/code], то нормали тора устанавливаются так, чтобы придать "
"гладкий эффект, делая тор скругленным. Если [code]false[/code], то тор будет "
"иметь плоский затененный вид."

msgid ""
"A script implemented in the C# programming language, saved with the "
"[code].cs[/code] extension (Mono-enabled builds only)."
msgstr ""
"Скрипт, реализованный на языке программирования C#, сохраненный с расширением "
"[code].cs[/code] (только для сборок с поддержкой Mono)."

msgid ""
"This class represents a C# script. It is the C# equivalent of the [GDScript] "
"class and is only available in Mono-enabled Godot builds."
msgstr ""
"Этот класс представляет собой скрипт C#. Это эквивалент класса [GDScript] на "
"C#, доступный только в сборках Godot с поддержкой Mono."

msgid "C# documentation index"
msgstr "Индекс документации по C#"

msgid "Returns a new instance of the script."
msgstr "Возвращает новый экземпляр скрипта."

msgid ""
"Six square textures representing the faces of a cube. Commonly used as a "
"skybox."
msgstr ""
"Шесть квадратных текстур, представляющих грани куба. Обычно используются как "
"скайбокс."

msgid ""
"A cubemap is made of 6 textures organized in layers. They are typically used "
"for faking reflections in 3D rendering (see [ReflectionProbe]). It can be "
"used to make an object look as if it's reflecting its surroundings. This "
"usually delivers much better performance than other reflection methods.\n"
"This resource is typically used as a uniform in custom shaders. Few core "
"Godot methods make use of [Cubemap] resources.\n"
"To create such a texture file yourself, reimport your image files using the "
"Godot Editor import presets. To create a Cubemap from code, use [method "
"ImageTextureLayered.create_from_images] on an instance of the Cubemap class.\n"
"The expected image order is X+, X-, Y+, Y-, Z+, Z- (in Godot's coordinate "
"system, so Y+ is \"up\" and Z- is \"forward\"). You can use one of the "
"following templates as a base:\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_2x3.webp]2×3 cubemap template "
"(default layout option)[/url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_3x2.webp]3×2 cubemap template[/"
"url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_1x6.webp]1×6 cubemap template[/"
"url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_6x1.webp]6×1 cubemap template[/"
"url]\n"
"[b]Note:[/b] Godot doesn't support using cubemaps in a [PanoramaSkyMaterial]. "
"To use a cubemap as a skybox, convert the default [PanoramaSkyMaterial] to a "
"[ShaderMaterial] using the [b]Convert to ShaderMaterial[/b] resource dropdown "
"option, then replace its code with the following:\n"
"[codeblock lang=text]\n"
"shader_type sky;\n"
"\n"
"uniform samplerCube source_panorama : filter_linear, source_color, "
"hint_default_black;\n"
"uniform float exposure : hint_range(0, 128) = 1.0;\n"
"\n"
"void sky() {\n"
"\t// If importing a cubemap from another engine, you may need to flip one of "
"the `EYEDIR` components below\n"
"\t// by replacing it with `-EYEDIR`.\n"
"\tvec3 eyedir = vec3(EYEDIR.x, EYEDIR.y, EYEDIR.z);\n"
"\tCOLOR = texture(source_panorama, eyedir).rgb * exposure;\n"
"}\n"
"[/codeblock]\n"
"After replacing the shader code and saving, specify the imported Cubemap "
"resource in the Shader Parameters section of the ShaderMaterial in the "
"inspector.\n"
"Alternatively, you can use [url=https://danilw.github.io/GLSL-howto/"
"cubemap_to_panorama_js/cubemap_to_panorama.html]this tool[/url] to convert a "
"cubemap to an equirectangular sky map and use [PanoramaSkyMaterial] as usual."
msgstr ""
"Кубическая карта состоит из 6 текстур, организованных в слои. Обычно они "
"используются для имитации отражений в 3D-рендеринге (см. [ReflectionProbe]). "
"Ее можно использовать, чтобы заставить объект выглядеть так, как будто он "
"отражает свое окружение. Обычно это обеспечивает гораздо лучшую "
"производительность, чем другие методы отражения.\n"
"Этот ресурс обычно используется как униформа в пользовательских шейдерах. "
"Несколько основных методов Godot используют ресурсы [Cubemap].\n"
"Чтобы создать такой файл текстуры самостоятельно, повторно импортируйте файлы "
"изображений с помощью предустановок импорта редактора Godot. Чтобы создать "
"Cubemap из кода, используйте [method ImageTextureLayered.create_from_images] "
"для экземпляра класса Cubemap.\n"
"Ожидаемый порядок изображений: X+, X-, Y+, Y-, Z+, Z- (в системе координат "
"Godo, поэтому Y+ — «вверх», а Z- — «вперед»). Вы можете использовать один из "
"следующих шаблонов в качестве основы:\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_2x3.webp]2×3 cubemap template "
"(default layout option)[/url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_3x2.webp]3×2 cubemap template[/"
"url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_1x6.webp]1×6 cubemap template[/"
"url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_6x1.webp]6×1 cubemap template[/"
"url]\n"
"[b]Примечание:[/b] Godot не поддерживает использование кубических карт в "
"[PanoramaSkyMaterial]. Чтобы использовать кубическую карту в качестве "
"скайбокса, преобразуйте [PanoramaSkyMaterial] по умолчанию в [ShaderMaterial] "
"с помощью раскрывающегося списка ресурсов [b]Преобразовать в ShaderMaterial[/"
"b], затем замените его код следующим:\n"
"[codeblock lang=text]\n"
"shader_type sky;\n"
"\n"
"uniform samplerCube source_panorama : filter_linear, source_color, "
"hint_default_black;\n"
"uniform float exposure : hint_range(0, 128) = 1.0;\n"
"\n"
"void sky() {\n"
"\t//При импорте кубической карты из другого движка вам может потребоваться "
"перевернуть один из компонентов `EYEDIR` ниже.\n"
"\t// заменив его на `-EYEDIR`.\n"
"\tvec3 eyedir = vec3(EYEDIR.x, EYEDIR.y, EYEDIR.z);\n"
"\tCOLOR = texture(source_panorama, eyedir).rgb * exposure;\n"
"}\n"
"[/codeblock]\n"
"После замены кода шейдера и сохранения укажите импортированный ресурс Cubemap "
"в разделе Shader Parameters ShaderMaterial в инспекторе.\n"
"В качестве альтернативы вы можете использовать [url=https://danilw.github.io/"
"GLSL-howto/cubemap_to_panorama_js/cubemap_to_panorama.html]этот инструмент[/"
"url] для преобразования кубической карты в равнопрямоугольную карту неба и "
"использовать [PanoramaSkyMaterial] как обычно."

msgid "Creates a placeholder version of this resource ([PlaceholderCubemap])."
msgstr "Создает версию-заполнитель этого ресурса ([PlaceholderCubemap])."

msgid "An array of [Cubemap]s, stored together and with a single reference."
msgstr "Массивы [Cubemap]-ы, хранящихся вместе и имеющих одну ссылку."

msgid ""
"[CubemapArray]s are made of an array of [Cubemap]s. Like [Cubemap]s, they are "
"made of multiple textures, the amount of which must be divisible by 6 (one "
"for each face of the cube).\n"
"The primary benefit of [CubemapArray]s is that they can be accessed in shader "
"code using a single texture reference. In other words, you can pass multiple "
"[Cubemap]s into a shader using a single [CubemapArray]. [Cubemap]s are "
"allocated in adjacent cache regions on the GPU, which makes [CubemapArray]s "
"the most efficient way to store multiple [Cubemap]s.\n"
"Godot uses [CubemapArray]s internally for many effects, including the [Sky] "
"if you set [member ProjectSettings.rendering/reflections/sky_reflections/"
"texture_array_reflections] to [code]true[/code].\n"
"To create such a texture file yourself, reimport your image files using the "
"Godot Editor import presets. To create a CubemapArray from code, use [method "
"ImageTextureLayered.create_from_images] on an instance of the CubemapArray "
"class.\n"
"The expected image order is X+, X-, Y+, Y-, Z+, Z- (in Godot's coordinate "
"system, so Y+ is \"up\" and Z- is \"forward\"). You can use one of the "
"following templates as a base:\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_2x3.webp]2×3 cubemap template "
"(default layout option)[/url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_3x2.webp]3×2 cubemap template[/"
"url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_1x6.webp]1×6 cubemap template[/"
"url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_6x1.webp]6×1 cubemap template[/"
"url]\n"
"Multiple layers are stacked on top of each other when using the default "
"vertical import option (with the first layer at the top). Alternatively, you "
"can choose a horizontal layout in the import options (with the first layer at "
"the left).\n"
"[b]Note:[/b] [CubemapArray] is not supported in the Compatibility renderer "
"due to graphics API limitations."
msgstr ""
"Массивы [CubemapArray] состоят из массива [Cubemap]. Как и [Cubemap], они "
"состоят из нескольких текстур, количество которых должно быть кратно 6 (по "
"одной на каждую грань куба).\n"
"Основное преимущество массивов [CubemapArray] заключается в том, что к ним "
"можно получить доступ из кода шейдера, используя одну ссылку на текстуру. "
"Другими словами, вы можете передать несколько [Cubemap] в шейдер, используя "
"один массив [CubemapArray]. Массивы [Cubemap] размещаются в соседних областях "
"кэша на графическом процессоре, что делает массивы [CubemapArray] наиболее "
"эффективным способом хранения нескольких [Cubemap].\n"
"Godo использует массивы [CubemapArray] для многих внутренних эффектов, "
"включая [Sky], если параметру [member ProjectSettings.rendering/reflections/"
"sky_reflections/texture_array_reflections] присвоено значение [code]true[/"
"code].\n"
"Чтобы создать такой файл текстуры самостоятельно, повторно импортируйте файлы "
"изображений с помощью предустановок импорта редактора Godot. Чтобы создать "
"CubemapArray из кода, используйте [method "
"mageTextureLayered.create_from_images] для экземпляра класса CubemapArray.\n"
"Ожидаемый порядок изображений: X+, X-, Y+, Y-, Z+, Z- (в системе координат "
"Godot, таким образом, Y+ означает «вверх», а Z- — «вперёд»). Вы можете "
"использовать один из следующих шаблонов в качестве основы:\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_2x3.webp]2×3 cubemap template "
"(default layout option)[/url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_3x2.webp]Шаблон кубической "
"карты 3×2[/url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_1x6.webp]Шаблон кубической "
"карты 1×6[/url]\n"
"- [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/"
"tutorials/assets_pipeline/img/cubemap_template_6x1.webp]Шаблон кубической "
"карты 6×1[/url]\n"
"При использовании вертикального импорта по умолчанию (первый слой сверху) "
"несколько слоёв накладываются друг на друга. В качестве альтернативы, в "
"параметрах импорта можно выбрать горизонтальное расположение (первый слой "
"слева).\n"
"[b]Примечание:[/b] [CubemapArray] не поддерживается в модуле Compatibility "
"Reender из-за ограничений графического API."

msgid ""
"Creates a placeholder version of this resource ([PlaceholderCubemapArray])."
msgstr "Создает версию-заполнитель этого ресурса ([PlaceholderCubemapArray])."

msgid "A mathematical curve."
msgstr "Математическая кривая."

msgid ""
"This resource describes a mathematical curve by defining a set of points and "
"tangents at each point. By default, it ranges between [code]0[/code] and "
"[code]1[/code] on the X and Y axes, but these ranges can be changed.\n"
"Please note that many resources and nodes assume they are given [i]unit "
"curves[/i]. A unit curve is a curve whose domain (the X axis) is between "
"[code]0[/code] and [code]1[/code]. Some examples of unit curve usage are "
"[member CPUParticles2D.angle_curve] and [member Line2D.width_curve]."
msgstr ""
"Этот ресурс описывает математическую кривую, определяя набор точек и "
"касательных в каждой точке. По умолчанию он находится в диапазоне между "
"[code]0[/code] и [code]1[/code] по осям X и Y, но эти диапазоны можно "
"изменить.\n"
"Обратите внимание, что многие ресурсы и узлы предполагают, что им заданы "
"[i]единичные кривые[/i]. Единичная кривая — это кривая, область определения "
"(ось X) которой находится между [code]0[/code] и [code]1[/code]. Некоторые "
"примеры использования единичной кривой: [member CPUParticles2D.angle_curve] и "
"[member Line2D.width_curve]."

msgid ""
"Adds a point to the curve. For each side, if the [code]*_mode[/code] is "
"[constant TANGENT_LINEAR], the [code]*_tangent[/code] angle (in degrees) uses "
"the slope of the curve halfway to the adjacent point. Allows custom "
"assignments to the [code]*_tangent[/code] angle if [code]*_mode[/code] is set "
"to [constant TANGENT_FREE]."
msgstr ""
"Добавляет точку к кривой. Для каждой стороны, если [code]*_mode[/code] равно "
"[constant TANGENT_LINEAR], угол [code]*_tangent[/code] (в градусах) "
"использует наклон кривой на полпути к соседней точке. Позволяет настраивать "
"назначения угла [code]*_tangent[/code], если [code]*_mode[/code] равно "
"[constant TANGENT_FREE]."

msgid "Recomputes the baked cache of points for the curve."
msgstr "Пересчитывает запеченный кэш точек для кривой."

msgid ""
"Removes duplicate points, i.e. points that are less than 0.00001 units "
"(engine epsilon value) away from their neighbor on the curve."
msgstr ""
"Удаляет дублирующиеся точки, т. е. точки, которые находятся на расстоянии "
"менее 0,00001 единицы (значение эпсилон двигателя) от своего соседа на кривой."

msgid "Removes all points from the curve."
msgstr "Удаляет все точки из кривой."

msgid ""
"Returns the difference between [member min_domain] and [member max_domain]."
msgstr "Возвращает разницу между [member min_domain] и [member max_domain]."

msgid "Returns the left [enum TangentMode] for the point at [param index]."
msgstr "Возвращает левый [enum TangentMode] для точки с [param index]."

msgid ""
"Returns the left tangent angle (in degrees) for the point at [param index]."
msgstr ""
"Возвращает левый угол касательной (в градусах) для точки с [param index]."

msgid "Returns the curve coordinates for the point at [param index]."
msgstr "Возвращает координаты кривой для точки с [param index]."

msgid "Returns the right [enum TangentMode] for the point at [param index]."
msgstr "Возвращает правильный [enum TangentMode] для точки с [param index]."

msgid ""
"Returns the right tangent angle (in degrees) for the point at [param index]."
msgstr ""
"Возвращает угол прямого тангенса (в градусах) для точки с [param index]."

msgid ""
"Returns the difference between [member min_value] and [member max_value]."
msgstr "Возвращает разницу между [member min_value]] и [member max_value]."

msgid "Removes the point at [param index] from the curve."
msgstr "Удаляет точку с [param index] из кривой."

msgid ""
"Returns the Y value for the point that would exist at the X position [param "
"offset] along the curve."
msgstr ""
"Возвращает значение Y для точки, которая будет находиться в позиции X [param "
"offset] вдоль кривой."

msgid ""
"Returns the Y value for the point that would exist at the X position [param "
"offset] along the curve using the baked cache. Bakes the curve's points if "
"not already baked."
msgstr ""
"Возвращает значение Y для точки, которая будет существовать в позиции X "
"[param offset] вдоль кривой, используя запеченный кэш. Запекает точки кривой, "
"если они еще не запечены."

msgid ""
"Sets the left [enum TangentMode] for the point at [param index] to [param "
"mode]."
msgstr ""
"Устанавливает левый [enum TangentMode] для точки с [param index] в [param "
"mode]."

msgid ""
"Sets the left tangent angle for the point at [param index] to [param tangent]."
msgstr ""
"Устанавливает левый угол касательной для точки с [param index] на [param "
"tangent]."

msgid "Sets the offset from [code]0.5[/code]."
msgstr "Устанавливает смещение от [code]0.5[/code]."

msgid ""
"Sets the right [enum TangentMode] for the point at [param index] to [param "
"mode]."
msgstr ""
"Устанавливает правильный [enum TangentMode] для точки с [param index] в "
"[param mode]."

msgid ""
"Sets the right tangent angle for the point at [param index] to [param "
"tangent]."
msgstr ""
"Устанавливает прямой угол касательной для точки с [param index] на [param "
"tangent]."

msgid "Assigns the vertical position [param y] to the point at [param index]."
msgstr "Присваивает вертикальное положение [param y] точке с [param index]."

msgid "The number of points to include in the baked (i.e. cached) curve data."
msgstr ""
"Количество точек, включаемых в запеченные (т.е. кэшированные) данные кривой."

msgid "The maximum domain (x-coordinate) that points can have."
msgstr "Максимальный домен (координата x), который может иметь точка."

msgid ""
"The maximum value (y-coordinate) that points can have. Tangents can cause "
"higher values between points."
msgstr ""
"Максимальное значение (координата Y), которое могут иметь точки. Касательные "
"могут вызывать более высокие значения между точками."

msgid "The minimum domain (x-coordinate) that points can have."
msgstr "Минимальная область (координата x), которую могут иметь точки."

msgid ""
"The minimum value (y-coordinate) that points can have. Tangents can cause "
"lower values between points."
msgstr ""
"Минимальное значение (координата Y), которое могут иметь точки. Касательные "
"могут вызывать более низкие значения между точками."

msgid "The number of points describing the curve."
msgstr "Количество точек, описывающих кривую."

msgid "Emitted when [member max_domain] or [member min_domain] is changed."
msgstr "Вызывается при изменении [member max_domain] или [member min_domain]."

msgid "Emitted when [member max_value] or [member min_value] is changed."
msgstr "Выдается при изменении [member max_value] или [member min_value]."

msgid "The tangent on this side of the point is user-defined."
msgstr "Касательная по эту сторону точки определяется пользователем."

msgid ""
"The curve calculates the tangent on this side of the point as the slope "
"halfway towards the adjacent point."
msgstr ""
"Кривая вычисляет касательную по эту сторону от точки как наклон на полпути к "
"соседней точке."

msgid "The total number of available tangent modes."
msgstr "Общее количество доступных касательных мод."

msgid "Describes a Bézier curve in 2D space."
msgstr "Описывает кривую Безье в 2D пространстве."

msgid ""
"This class describes a Bézier curve in 2D space. It is mainly used to give a "
"shape to a [Path2D], but can be manually sampled for other purposes.\n"
"It keeps a cache of precalculated points along the curve, to speed up further "
"calculations."
msgstr ""
"Этот класс описывает кривую Безье в 2D-пространстве. В основном он "
"используется для придания формы [Path2D], но может быть вручную выбран для "
"других целей.\n"
"Он хранит кэш предварительно рассчитанных точек вдоль кривой для ускорения "
"дальнейших вычислений."

msgid ""
"Adds a point with the specified [param position] relative to the curve's own "
"position, with control points [param in] and [param out]. Appends the new "
"point at the end of the point list.\n"
"If [param index] is given, the new point is inserted before the existing "
"point identified by index [param index]. Every existing point starting from "
"[param index] is shifted further down the list of points. The index must be "
"greater than or equal to [code]0[/code] and must not exceed the number of "
"existing points in the line. See [member point_count]."
msgstr ""
"Добавляет точку с указанным [param position] относительно собственного "
"положения кривой с контрольными точками [param in] и [param out]. Добавляет "
"новую точку в конец списка точек.\n"
"Если задан [param index], новая точка вставляется перед существующей точкой, "
"идентифицированной индексом [param index]. Каждая существующая точка, начиная "
"с [param index], смещается дальше вниз по списку точек. Индекс должен быть "
"больше или равен [code]0[/code] и не должен превышать количество существующих "
"точек в строке. См. [member point_count]."

msgid ""
"Returns the total length of the curve, based on the cached points. Given "
"enough density (see [member bake_interval]), it should be approximate enough."
msgstr ""
"Возвращает общую длину кривой на основе кэшированных точек. При достаточной "
"плотности (см. [member bake_interval]) она должна быть достаточно "
"приблизительной."

msgid "Returns the cache of points as a [PackedVector2Array]."
msgstr "Возвращает кэш точек в виде [PackedVector2Array]."

msgid ""
"Returns the closest offset to [param to_point]. This offset is meant to be "
"used in [method sample_baked].\n"
"[param to_point] must be in this curve's local space."
msgstr ""
"Возвращает ближайшее смещение к [param to_point]. Это смещение предназначено "
"для использования в [method sample_baked].\n"
"[param to_point] должен находиться в локальном пространстве этой кривой."

msgid ""
"Returns the closest point on baked segments (in curve's local space) to "
"[param to_point].\n"
"[param to_point] must be in this curve's local space."
msgstr ""
"Возвращает ближайшую точку на запеченных сегментах (в локальном пространстве "
"кривой) к [param to_point].\n"
"[param to_point] должен находиться в локальном пространстве этой кривой."

msgid ""
"Returns the position of the control point leading to the vertex [param idx]. "
"The returned position is relative to the vertex [param idx]. If the index is "
"out of bounds, the function sends an error to the console, and returns [code]"
"(0, 0)[/code]."
msgstr ""
"Возвращает позицию контрольной точки, ведущей к вершине [param idx]. "
"Возвращаемая позиция является относительной вершины [param idx]. Если индекс "
"выходит за пределы, функция отправляет ошибку на консоль и возвращает [code]"
"(0, 0)[/code]."

msgid ""
"Returns the position of the control point leading out of the vertex [param "
"idx]. The returned position is relative to the vertex [param idx]. If the "
"index is out of bounds, the function sends an error to the console, and "
"returns [code](0, 0)[/code]."
msgstr ""
"Возвращает позицию контрольной точки, выходящей из вершины [param idx]. "
"Возвращаемая позиция является относительной вершины [param idx]. Если индекс "
"выходит за пределы, функция отправляет ошибку на консоль и возвращает [code]"
"(0, 0)[/code]."

msgid ""
"Returns the position of the vertex [param idx]. If the index is out of "
"bounds, the function sends an error to the console, and returns [code](0, 0)[/"
"code]."
msgstr ""
"Возвращает позицию вершины [param idx]. Если индекс выходит за пределы, "
"функция отправляет ошибку на консоль и возвращает [code](0, 0)[/code]."

msgid ""
"Deletes the point [param idx] from the curve. Sends an error to the console "
"if [param idx] is out of bounds."
msgstr ""
"Удаляет точку [param idx] из кривой. Отправляет ошибку на консоль, если "
"[param idx] выходит за пределы."

msgid ""
"Returns the position between the vertex [param idx] and the vertex [code]idx "
"+ 1[/code], where [param t] controls if the point is the first vertex "
"([code]t = 0.0[/code]), the last vertex ([code]t = 1.0[/code]), or in "
"between. Values of [param t] outside the range ([code]0.0 <= t <= 1.0[/code]) "
"give strange, but predictable results.\n"
"If [param idx] is out of bounds it is truncated to the first or last vertex, "
"and [param t] is ignored. If the curve has no points, the function sends an "
"error to the console, and returns [code](0, 0)[/code]."
msgstr ""
"Возвращает позицию между вершиной [param idx] и вершиной [code]idx + 1[/"
"code], где [param t] контролирует, является ли точка первой вершиной ([code]t "
"= 0.0[/code]), последней вершиной ([code]t = 1.0[/code]) или находится между "
"ними. Значения [param t] вне диапазона ([code]0.0 <= t <= 1.0[/code]) дают "
"странные, но предсказуемые результаты.\n"
"Если [param idx] выходит за пределы, он усекается до первой или последней "
"вершины, а [param t] игнорируется. Если у кривой нет точек, функция "
"отправляет ошибку на консоль и возвращает [code](0, 0)[/code]."

msgid ""
"Returns a point within the curve at position [param offset], where [param "
"offset] is measured as a pixel distance along the curve.\n"
"To do that, it finds the two cached points where the [param offset] lies "
"between, then interpolates the values. This interpolation is cubic if [param "
"cubic] is set to [code]true[/code], or linear if set to [code]false[/code].\n"
"Cubic interpolation tends to follow the curves better, but linear is faster "
"(and often, precise enough)."
msgstr ""
"Возвращает точку внутри кривой в позиции [param offset], где [param offset] "
"измеряется как расстояние в пикселях вдоль кривой.\n"
"Для этого он находит две кэшированные точки, между которыми находится [param "
"offset], затем интерполирует значения. Эта интерполяция является кубической, "
"если [param cubic] установлен на [code]true[/code], или линейной, если "
"установлен на [code]false[/code].\n"
"Кубическая интерполяция имеет тенденцию лучше следовать кривым, но линейная "
"быстрее (и часто достаточно точна)."

msgid ""
"Similar to [method sample_baked], but returns [Transform2D] that includes a "
"rotation along the curve, with [member Transform2D.origin] as the point "
"position and the [member Transform2D.x] vector pointing in the direction of "
"the path at that point. Returns an empty transform if the length of the curve "
"is [code]0[/code].\n"
"[codeblock]\n"
"var baked = curve.sample_baked_with_rotation(offset)\n"
"# The returned Transform2D can be set directly.\n"
"transform = baked\n"
"# You can also read the origin and rotation separately from the returned "
"Transform2D.\n"
"position = baked.get_origin()\n"
"rotation = baked.get_rotation()\n"
"[/codeblock]"
msgstr ""
"Аналогично [method sample_baked], но возвращает [Transform2D], который "
"включает вращение вдоль кривой, с [member Transform2D.origin] в качестве "
"положения точки и вектором [member Transform2D.x], указывающим в направлении "
"пути в этой точке. Возвращает пустое преобразование, если длина кривой равна "
"[code]0[/code].\n"
"[codeblock]\n"
"var baked = curve.sample_baked_with_rotation(offset)\n"
"# Возвращаемый Transform2D можно задать напрямую.\n"
"transform = baked\n"
"# Вы также можете прочитать начало координат и поворот отдельно из "
"возвращаемого Transform2D.\n"
"position = baked.get_origin()\n"
"rotation = baked.get_rotation()\n"
"[/codeblock]"

msgid ""
"Returns the position at the vertex [param fofs]. It calls [method sample] "
"using the integer part of [param fofs] as [code]idx[/code], and its "
"fractional part as [code]t[/code]."
msgstr ""
"Возвращает позицию в вершине [param fofs]. Он вызывает [method sample], "
"используя целую часть [param fofs] как [code]idx[/code], а его дробную часть "
"как [code]t[/code]."

msgid ""
"Sets the position of the control point leading to the vertex [param idx]. If "
"the index is out of bounds, the function sends an error to the console. The "
"position is relative to the vertex."
msgstr ""
"Устанавливает позицию контрольной точки, ведущей к вершине [param idx]. Если "
"индекс выходит за пределы, функция отправляет ошибку на консоль. Позиция "
"указывается относительно вершины."

msgid ""
"Sets the position of the control point leading out of the vertex [param idx]. "
"If the index is out of bounds, the function sends an error to the console. "
"The position is relative to the vertex."
msgstr ""
"Устанавливает позицию контрольной точки, выходящей из вершины [param idx]. "
"Если индекс выходит за пределы, функция отправляет ошибку на консоль. Позиция "
"указывается относительно вершины."

msgid ""
"Sets the position for the vertex [param idx]. If the index is out of bounds, "
"the function sends an error to the console."
msgstr ""
"Устанавливает позицию для вершины [param idx]. Если индекс выходит за "
"пределы, функция отправляет ошибку на консоль."

msgid ""
"Returns a list of points along the curve, with a curvature controlled point "
"density. That is, the curvier parts will have more points than the straighter "
"parts.\n"
"This approximation makes straight segments between each point, then "
"subdivides those segments until the resulting shape is similar enough.\n"
"[param max_stages] controls how many subdivisions a curve segment may face "
"before it is considered approximate enough. Each subdivision splits the "
"segment in half, so the default 5 stages may mean up to 32 subdivisions per "
"curve segment. Increase with care!\n"
"[param tolerance_degrees] controls how many degrees the midpoint of a segment "
"may deviate from the real curve, before the segment has to be subdivided."
msgstr ""
"Возвращает список точек вдоль кривой с контролируемой кривизной плотностью "
"точек. То есть, более кривые части будут иметь больше точек, чем более прямые "
"части.\n"
"Это приближение создает прямые сегменты между каждой точкой, затем "
"подразделяет эти сегменты до тех пор, пока результирующая форма не станет "
"достаточно похожей.\n"
"[param max_stages] управляет количеством подразделений, с которыми может "
"столкнуться сегмент кривой, прежде чем он будет считаться достаточно "
"приближенным. Каждое подразделение делит сегмент пополам, поэтому 5 стадий по "
"умолчанию могут означать до 32 подразделений на сегмент кривой. Увеличивайте "
"с осторожностью!\n"
"[param capacity_degrees] управляет тем, на сколько градусов средняя точка "
"сегмента может отклоняться от реальной кривой, прежде чем сегмент придется "
"подразделять."

msgid ""
"Returns a list of points along the curve, with almost uniform density. [param "
"max_stages] controls how many subdivisions a curve segment may face before it "
"is considered approximate enough. Each subdivision splits the segment in "
"half, so the default 5 stages may mean up to 32 subdivisions per curve "
"segment. Increase with care!\n"
"[param tolerance_length] controls the maximal distance between two "
"neighboring points, before the segment has to be subdivided."
msgstr ""
"Возвращает список точек вдоль кривой с почти равномерной плотностью. [param "
"max_stages] управляет количеством подразделений, с которыми может столкнуться "
"сегмент кривой, прежде чем он будет считаться достаточно приближенным. Каждое "
"подразделение делит сегмент пополам, поэтому 5 стадий по умолчанию могут "
"означать до 32 подразделений на сегмент кривой. Увеличивайте с "
"осторожностью!\n"
"[param capacity_length] управляет максимальным расстоянием между двумя "
"соседними точками, прежде чем сегмент придется подразделять."

msgid ""
"The distance in pixels between two adjacent cached points. Changing it forces "
"the cache to be recomputed the next time the [method get_baked_points] or "
"[method get_baked_length] function is called. The smaller the distance, the "
"more points in the cache and the more memory it will consume, so use with "
"care."
msgstr ""
"Расстояние в пикселях между двумя соседними кэшированными точками. Его "
"изменение приводит к пересчету кэша при следующем вызове функции [method "
"get_baked_points] или [method get_baked_length]. Чем меньше расстояние, тем "
"больше точек в кэше и тем больше памяти он будет потреблять, поэтому "
"используйте с осторожностью."

msgid "Describes a Bézier curve in 3D space."
msgstr "Описывает кривую Безье в 3D пространстве."

msgid ""
"This class describes a Bézier curve in 3D space. It is mainly used to give a "
"shape to a [Path3D], but can be manually sampled for other purposes.\n"
"It keeps a cache of precalculated points along the curve, to speed up further "
"calculations."
msgstr ""
"Этот класс описывает кривую Безье в 3D пространстве. В основном он "
"используется для придания формы [Path3D], но может быть вручную выбран для "
"других целей.\n"
"Он хранит кэш предварительно рассчитанных точек вдоль кривой для ускорения "
"дальнейших вычислений."

msgid "Returns the cache of points as a [PackedVector3Array]."
msgstr "Возвращает кэш точек в виде [PackedVector3Array]."

msgid "Returns the cache of tilts as a [PackedFloat32Array]."
msgstr "Возвращает кэш наклонов в виде [PackedFloat32Array]."

msgid ""
"Returns the cache of up vectors as a [PackedVector3Array].\n"
"If [member up_vector_enabled] is [code]false[/code], the cache will be empty."
msgstr ""
"Возвращает кэш векторов up как [PackedVector3Array].\n"
"Если [member up_vector_enabled] равен [code]false[/code], кэш будет пуст."

msgid ""
"Returns the closest offset to [param to_point]. This offset is meant to be "
"used in [method sample_baked] or [method sample_baked_up_vector].\n"
"[param to_point] must be in this curve's local space."
msgstr ""
"Возвращает ближайшее смещение к [param to_point]. Это смещение предназначено "
"для использования в [method sample_baked] или [method "
"sample_baked_up_vector].\n"
"[param to_point] должен находиться в локальном пространстве этой кривой."

msgid ""
"Returns the position of the control point leading to the vertex [param idx]. "
"The returned position is relative to the vertex [param idx]. If the index is "
"out of bounds, the function sends an error to the console, and returns [code]"
"(0, 0, 0)[/code]."
msgstr ""
"Возвращает позицию контрольной точки, ведущей к вершине [param idx]. "
"Возвращаемая позиция является относительной вершины [param idx]. Если индекс "
"выходит за пределы, функция отправляет ошибку на консоль и возвращает [code]"
"(0, 0, 0)[/code]."

msgid ""
"Returns the position of the control point leading out of the vertex [param "
"idx]. The returned position is relative to the vertex [param idx]. If the "
"index is out of bounds, the function sends an error to the console, and "
"returns [code](0, 0, 0)[/code]."
msgstr ""
"Возвращает позицию контрольной точки, выходящей из вершины [param idx]. "
"Возвращаемая позиция является относительной вершины [param idx]. Если индекс "
"выходит за пределы, функция отправляет ошибку на консоль и возвращает [code]"
"(0, 0, 0)[/code]."

msgid ""
"Returns the position of the vertex [param idx]. If the index is out of "
"bounds, the function sends an error to the console, and returns [code](0, 0, "
"0)[/code]."
msgstr ""
"Возвращает позицию вершины [param idx]. Если индекс выходит за пределы, "
"функция отправляет ошибку на консоль и возвращает [code](0, 0, 0)[/code]."

msgid ""
"Returns the tilt angle in radians for the point [param idx]. If the index is "
"out of bounds, the function sends an error to the console, and returns "
"[code]0[/code]."
msgstr ""
"Возвращает угол наклона в радианах для точки [param idx]. Если индекс выходит "
"за пределы, функция отправляет ошибку на консоль и возвращает [code]0[/code]."

msgid ""
"Returns the position between the vertex [param idx] and the vertex [code]idx "
"+ 1[/code], where [param t] controls if the point is the first vertex "
"([code]t = 0.0[/code]), the last vertex ([code]t = 1.0[/code]), or in "
"between. Values of [param t] outside the range ([code]0.0 >= t <=1[/code]) "
"give strange, but predictable results.\n"
"If [param idx] is out of bounds it is truncated to the first or last vertex, "
"and [param t] is ignored. If the curve has no points, the function sends an "
"error to the console, and returns [code](0, 0, 0)[/code]."
msgstr ""
"Возвращает позицию между вершиной [param idx] и вершиной [code]idx + 1[/"
"code], где [param t] контролирует, является ли точка первой вершиной ([code]t "
"= 0.0[/code]), последней вершиной ([code]t = 1.0[/code]) или находится между "
"ними. Значения [param t] вне диапазона ([code]0.0 >= t <=1[/code]) дают "
"странные, но предсказуемые результаты.\n"
"Если [param idx] выходит за пределы, он усекается до первой или последней "
"вершины, а [param t] игнорируется. Если у кривой нет точек, функция "
"отправляет ошибку на консоль и возвращает [code](0, 0, 0)[/code]."

msgid ""
"Returns a point within the curve at position [param offset], where [param "
"offset] is measured as a distance in 3D units along the curve. To do that, it "
"finds the two cached points where the [param offset] lies between, then "
"interpolates the values. This interpolation is cubic if [param cubic] is set "
"to [code]true[/code], or linear if set to [code]false[/code].\n"
"Cubic interpolation tends to follow the curves better, but linear is faster "
"(and often, precise enough)."
msgstr ""
"Возвращает точку внутри кривой в позиции [param offset], где [param offset] "
"измеряется как расстояние в трехмерных единицах вдоль кривой. Для этого он "
"находит две кэшированные точки, между которыми находится [param offset], а "
"затем интерполирует значения. Эта интерполяция является кубической, если "
"[param cubic] установлен в [code]true[/code], или линейной, если установлен в "
"[code]false[/code].\n"
"Кубическая интерполяция имеет тенденцию лучше следовать кривым, но линейная "
"быстрее (и часто достаточно точна)."

msgid ""
"Returns an up vector within the curve at position [param offset], where "
"[param offset] is measured as a distance in 3D units along the curve. To do "
"that, it finds the two cached up vectors where the [param offset] lies "
"between, then interpolates the values. If [param apply_tilt] is [code]true[/"
"code], an interpolated tilt is applied to the interpolated up vector.\n"
"If the curve has no up vectors, the function sends an error to the console, "
"and returns [code](0, 1, 0)[/code]."
msgstr ""
"Возвращает вектор вверх внутри кривой в позиции [param offset], где [param "
"offset] измеряется как расстояние в трехмерных единицах вдоль кривой. Для "
"этого он находит два кэшированных вектора вверх, между которыми находится "
"[param offset], затем интерполирует значения. Если [param apply_tilt] равен "
"[code]true[/code], к интерполированному вектору вверх применяется "
"интерполированный наклон. \n"
"Если у кривой нет векторов вверх, функция отправляет ошибку на консоль и "
"возвращает [code](0, 1, 0)[/code]."

msgid ""
"Returns a [Transform3D] with [code]origin[/code] as point position, "
"[code]basis.x[/code] as sideway vector, [code]basis.y[/code] as up vector, "
"[code]basis.z[/code] as forward vector. When the curve length is 0, there is "
"no reasonable way to calculate the rotation, all vectors aligned with global "
"space axes. See also [method sample_baked]."
msgstr ""
"Возвращает [Transform3D] с [code]origin[/code] в качестве позиции точки, "
"[code]basis.x[/code] в качестве бокового вектора, [code]basis.y[/code] в "
"качестве верхнего вектора, [code]basis.z[/code] в качестве прямого вектора. "
"Когда длина кривой равна 0, нет разумного способа вычислить поворот, все "
"векторы выровнены с глобальными пространственными осями. См. также [method "
"sample_baked]."

msgid ""
"Sets the tilt angle in radians for the point [param idx]. If the index is out "
"of bounds, the function sends an error to the console.\n"
"The tilt controls the rotation along the look-at axis an object traveling the "
"path would have. In the case of a curve controlling a [PathFollow3D], this "
"tilt is an offset over the natural tilt the [PathFollow3D] calculates."
msgstr ""
"Устанавливает угол наклона в радианах для точки [param idx]. Если индекс "
"выходит за пределы, функция отправляет ошибку на консоль.\n"
"Наклон управляет вращением вдоль оси взгляда, которое будет иметь объект, "
"движущийся по пути. В случае кривой, управляющей [PathFollow3D], этот наклон "
"является смещением относительно естественного наклона, который вычисляет "
"[PathFollow3D]."

msgid ""
"The distance in meters between two adjacent cached points. Changing it forces "
"the cache to be recomputed the next time the [method get_baked_points] or "
"[method get_baked_length] function is called. The smaller the distance, the "
"more points in the cache and the more memory it will consume, so use with "
"care."
msgstr ""
"Расстояние в метрах между двумя соседними кэшированными точками. Его "
"изменение приводит к пересчету кэша при следующем вызове функции [method "
"get_baked_points] или [method get_baked_length]. Чем меньше расстояние, тем "
"больше точек в кэше и тем больше памяти он будет потреблять, поэтому "
"используйте с осторожностью."

msgid ""
"If [code]true[/code], and the curve has more than 2 control points, the last "
"point and the first one will be connected in a loop."
msgstr ""
"Если [code]true[/code], а кривая имеет более 2 контрольных точек, то "
"последняя и первая точки будут соединены в петлю."

msgid ""
"If [code]true[/code], the curve will bake up vectors used for orientation. "
"This is used when [member PathFollow3D.rotation_mode] is set to [constant "
"PathFollow3D.ROTATION_ORIENTED]. Changing it forces the cache to be "
"recomputed."
msgstr ""
"Если [code]true[/code], кривая запечет векторы, используемые для ориентации. "
"Это используется, когда [member PathFollow3D.rotation_mode] установлен в "
"[constant PathFollow3D.ROTATION_ORIENTED]. Изменение этого параметра приводит "
"к пересчету кэша."

msgid "A 1D texture where pixel brightness corresponds to points on a curve."
msgstr ""
"Одномерная текстура, в которой яркость пикселей соответствует точкам на "
"кривой."

msgid ""
"A 1D texture where pixel brightness corresponds to points on a unit [Curve] "
"resource, either in grayscale or in red. This visual representation "
"simplifies the task of saving curves as image files.\n"
"If you need to store up to 3 curves within a single texture, use "
"[CurveXYZTexture] instead. See also [GradientTexture1D] and "
"[GradientTexture2D]."
msgstr ""
"1D-текстура, где яркость пикселей соответствует точкам на единичном ресурсе "
"[Curve], либо в оттенках серого, либо в красном цвете. Это визуальное "
"представление упрощает задачу сохранения кривых в виде файлов изображений.\n"
"Если вам нужно сохранить до 3 кривых в одной текстуре, используйте вместо "
"этого [CurveXYZTexture]. См. также [GradientTexture1D] и [GradientTexture2D]."

msgid "The [Curve] that is rendered onto the texture. Should be a unit [Curve]."
msgstr ""
"[Curve], которая отображается на текстуре. Должна быть единицей [Curve]."

msgid ""
"The format the texture should be generated with. When passing a CurveTexture "
"as an input to a [Shader], this may need to be adjusted."
msgstr ""
"Формат, в котором должна быть сгенерирована текстура. При передаче "
"CurveTexture в качестве входных данных в [Shader] это может потребоваться "
"скорректировать."

msgid ""
"The width of the texture (in pixels). Higher values make it possible to "
"represent high-frequency data better (such as sudden direction changes), at "
"the cost of increased generation time and memory usage."
msgstr ""
"Ширина текстуры (в пикселях). Более высокие значения позволяют лучше "
"представлять высокочастотные данные (например, резкие изменения направления) "
"за счет увеличения времени генерации и использования памяти."

msgid ""
"Store the curve equally across the red, green and blue channels. This uses "
"more video memory, but is more compatible with shaders that only read the "
"green and blue values."
msgstr ""
"Сохраните кривую равномерно по красному, зеленому и синему каналам. Это "
"использует больше видеопамяти, но более совместимо с шейдерами, которые "
"считывают только значения зеленого и синего."

msgid ""
"Store the curve only in the red channel. This saves video memory, but some "
"custom shaders may not be able to work with this."
msgstr ""
"Сохраняйте кривую только в красном канале. Это экономит видеопамять, но "
"некоторые пользовательские шейдеры могут не работать с этим."

msgid ""
"A 1D texture where the red, green, and blue color channels correspond to "
"points on 3 curves."
msgstr ""
"Одномерная текстура, в которой каналы красного, зеленого и синего цветов "
"соответствуют точкам на трех кривых."

msgid ""
"A 1D texture where the red, green, and blue color channels correspond to "
"points on 3 unit [Curve] resources. Compared to using separate "
"[CurveTexture]s, this further simplifies the task of saving curves as image "
"files.\n"
"If you only need to store one curve within a single texture, use "
"[CurveTexture] instead. See also [GradientTexture1D] and [GradientTexture2D]."
msgstr ""
"1D-текстура, в которой каналы красного, зеленого и синего цветов "
"соответствуют точкам на 3-х единичных ресурсах [Curve]. По сравнению с "
"использованием отдельных [CurveTexture], это еще больше упрощает задачу "
"сохранения кривых в виде файлов изображений.\n"
"Если вам нужно сохранить только одну кривую в одной текстуре, используйте "
"вместо этого [CurveTexture]. См. также [GradientTexture1D] и "
"[GradientTexture2D]."

msgid ""
"The [Curve] that is rendered onto the texture's red channel. Should be a unit "
"[Curve]."
msgstr ""
"[Curve], которая отображается на красном канале текстуры. Должна быть "
"единицей [Curve]."

msgid ""
"The [Curve] that is rendered onto the texture's green channel. Should be a "
"unit [Curve]."
msgstr ""
"[Curve], которая отображается на зеленом канале текстуры. Должна быть "
"единицей [Curve]."

msgid ""
"The [Curve] that is rendered onto the texture's blue channel. Should be a "
"unit [Curve]."
msgstr ""
"[Curve], которая отображается на синем канале текстуры. Должна быть единицей "
"[Curve]."

msgid "Class representing a cylindrical [PrimitiveMesh]."
msgstr "Класс, представляющий цилиндрическую [PrimitiveMesh]."

msgid ""
"Class representing a cylindrical [PrimitiveMesh]. This class can be used to "
"create cones by setting either the [member top_radius] or [member "
"bottom_radius] properties to [code]0.0[/code]."
msgstr ""
"Класс, представляющий цилиндрическую [PrimitiveMesh]. Этот класс можно "
"использовать для создания конусов, установив свойства [member top_radius] или "
"[member bottom_radius] на [code]0.0[/code]."

msgid ""
"Bottom radius of the cylinder. If set to [code]0.0[/code], the bottom faces "
"will not be generated, resulting in a conic shape. See also [member "
"cap_bottom]."
msgstr ""
"Нижний радиус цилиндра. Если задано значение [code]0.0[/code], нижние грани "
"не будут созданы, что приведет к конической форме. См. также [member "
"cap_bottom]."

msgid ""
"If [code]true[/code], generates a cap at the bottom of the cylinder. This can "
"be set to [code]false[/code] to speed up generation and rendering when the "
"cap is never seen by the camera. See also [member bottom_radius].\n"
"[b]Note:[/b] If [member bottom_radius] is [code]0.0[/code], cap generation is "
"always skipped even if [member cap_bottom] is [code]true[/code]."
msgstr ""
"Если [code]true[/code], генерирует колпачок в нижней части цилиндра. Это "
"можно установить на [code]false[/code], чтобы ускорить генерацию и рендеринг, "
"когда колпачок никогда не виден камере. См. также [member bottom_radius].\n"
"[b]Примечание:[/b] Если [member bottom_radius] равен [code]0.0[/code], "
"генерация колпачка всегда пропускается, даже если [member cap_bottom] равен "
"[code]true[/code]."

msgid ""
"If [code]true[/code], generates a cap at the top of the cylinder. This can be "
"set to [code]false[/code] to speed up generation and rendering when the cap "
"is never seen by the camera. See also [member top_radius].\n"
"[b]Note:[/b] If [member top_radius] is [code]0.0[/code], cap generation is "
"always skipped even if [member cap_top] is [code]true[/code]."
msgstr ""
"Если [code]true[/code], генерирует колпачок в верхней части цилиндра. Это "
"можно установить на [code]false[/code], чтобы ускорить генерацию и рендеринг, "
"когда колпачок никогда не виден камере. См. также [member top_radius].\n"
"[b]Примечание:[/b] Если [member top_radius] равен [code]0.0[/code], генерация "
"колпачка всегда пропускается, даже если [member cap_top] равен [code]true[/"
"code]."

msgid "Full height of the cylinder."
msgstr "Полная высота цилиндра."

msgid ""
"Number of radial segments on the cylinder. Higher values result in a more "
"detailed cylinder/cone at the cost of performance."
msgstr ""
"Количество радиальных сегментов на цилиндре. Более высокие значения приводят "
"к более детализированному цилиндру/конусу за счет производительности."

msgid ""
"Number of edge rings along the height of the cylinder. Changing [member "
"rings] does not have any visual impact unless a shader or procedural mesh "
"tool is used to alter the vertex data. Higher values result in more "
"subdivisions, which can be used to create smoother-looking effects with "
"shaders or procedural mesh tools (at the cost of performance). When not "
"altering the vertex data using a shader or procedural mesh tool, [member "
"rings] should be kept to its default value."
msgstr ""
"Количество колец ребер по высоте цилиндра. Изменение [member rings] не "
"оказывает визуального воздействия, если только для изменения данных вершин не "
"используется шейдер или инструмент процедурной сетки. Более высокие значения "
"приводят к большему количеству подразделений, что может быть использовано для "
"создания более плавных эффектов с помощью шейдеров или инструментов "
"процедурной сетки (за счет производительности). Если данные вершин не "
"изменяются с помощью шейдера или инструмента процедурной сетки, [member "
"rings] следует оставить на значении по умолчанию."

msgid ""
"Top radius of the cylinder. If set to [code]0.0[/code], the top faces will "
"not be generated, resulting in a conic shape. See also [member cap_top]."
msgstr ""
"Верхний радиус цилиндра. Если задано значение [code]0.0[/code], верхние грани "
"не будут созданы, что приведет к конической форме. См. также [member cap_top]."

msgid "A 3D cylinder shape used for physics collision."
msgstr ""
"Трехмерная цилиндрическая форма, используемая для физического столкновения."

msgid ""
"A 3D cylinder shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape3D].\n"
"[b]Note:[/b] There are several known bugs with cylinder collision shapes. "
"Using [CapsuleShape3D] or [BoxShape3D] instead is recommended.\n"
"[b]Performance:[/b] [CylinderShape3D] is fast to check collisions against, "
"but it is slower than [CapsuleShape3D], [BoxShape3D], and [SphereShape3D]."
msgstr ""
"Форма цилиндра 3D, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape3D].\n"
"[b]Примечание:[/b] Известно несколько ошибок с формами столкновений "
"цилиндров. Вместо этого рекомендуется использовать [CapsuleShape3D] или "
"[BoxShape3D].\n"
"[b]Производительность:[/b] [CylinderShape3D] быстро проверяет столкновения, "
"но медленнее, чем [CapsuleShape3D], [BoxShape3D] и [SphereShape3D]."

msgid "The cylinder's height."
msgstr "Высота цилиндра."

msgid "The cylinder's radius."
msgstr "Радиус цилиндра."

msgid ""
"A physics joint that connects two 2D physics bodies with a spring-like force."
msgstr ""
"Физический шарнир, соединяющий два двумерных физических тела с помощью "
"пружинообразной силы."

msgid ""
"A physics joint that connects two 2D physics bodies with a spring-like force. "
"This behaves like a spring that always wants to stretch to a given length."
msgstr ""
"Физический шарнир, соединяющий два 2D физических тела с помощью пружинной "
"силы. Он ведёт себя подобно пружине, которая всегда стремится растянуться до "
"заданной длины."

msgid ""
"The spring joint's damping ratio. A value between [code]0[/code] and [code]1[/"
"code]. When the two bodies move into different directions the system tries to "
"align them to the spring axis again. A high [member damping] value forces the "
"attached bodies to align faster."
msgstr ""
"Коэффициент демпфирования пружинного соединения. Значение между [code]0[/"
"code] и [code]1[/code]. Когда два тела движутся в разных направлениях, "
"система пытается снова выровнять их по оси пружины. Высокое значение "
"[dempting member] заставляет прикрепленные тела выравниваться быстрее."

msgid ""
"The spring joint's maximum length. The two attached bodies cannot stretch it "
"past this value."
msgstr ""
"Максимальная длина пружинного соединения. Два присоединенных тела не могут "
"растянуть его больше этого значения."

msgid ""
"When the bodies attached to the spring joint move they stretch or squash it. "
"The joint always tries to resize towards this length."
msgstr ""
"Когда тела, прикрепленные к пружинному соединению, движутся, они растягивают "
"или сжимают его. Соединение всегда пытается изменить размер в сторону этой "
"длины."

msgid ""
"The higher the value, the less the bodies attached to the joint will deform "
"it. The joint applies an opposing force to the bodies, the product of the "
"stiffness multiplied by the size difference from its resting length."
msgstr ""
"Чем выше значение, тем меньше тела, прикрепленные к суставу, будут его "
"деформировать. Сустав прикладывает к телам противодействующую силу, которая "
"является произведением жесткости, умноженной на разницу размеров от его длины "
"покоя."

msgid "Node that projects a texture onto a [MeshInstance3D]."
msgstr "Узел, который проецирует текстуру на [MeshInstance3D]."

msgid ""
"[Decal]s are used to project a texture onto a [Mesh] in the scene. Use Decals "
"to add detail to a scene without affecting the underlying [Mesh]. They are "
"often used to add weathering to building, add dirt or mud to the ground, or "
"add variety to props. Decals can be moved at any time, making them suitable "
"for things like blob shadows or laser sight dots.\n"
"They are made of an [AABB] and a group of [Texture2D]s specifying [Color], "
"normal, ORM (ambient occlusion, roughness, metallic), and emission. Decals "
"are projected within their [AABB] so altering the orientation of the Decal "
"affects the direction in which they are projected. By default, Decals are "
"projected down (i.e. from positive Y to negative Y).\n"
"The [Texture2D]s associated with the Decal are automatically stored in a "
"texture atlas which is used for drawing the decals so all decals can be drawn "
"at once. Godot uses clustered decals, meaning they are stored in cluster data "
"and drawn when the mesh is drawn, they are not drawn as a post-processing "
"effect after.\n"
"[b]Note:[/b] Decals cannot affect an underlying material's transparency, "
"regardless of its transparency mode (alpha blend, alpha scissor, alpha hash, "
"opaque pre-pass). This means translucent or transparent areas of a material "
"will remain translucent or transparent even if an opaque decal is applied on "
"them.\n"
"[b]Note:[/b] Decals are only supported in the Forward+ and Mobile rendering "
"methods, not Compatibility. When using the Mobile rendering method, only 8 "
"decals can be displayed on each mesh resource. Attempting to display more "
"than 8 decals on a single mesh resource will result in decals flickering in "
"and out as the camera moves.\n"
"[b]Note:[/b] When using the Mobile rendering method, decals will only "
"correctly affect meshes whose visibility AABB intersects with the decal's "
"AABB. If using a shader to deform the mesh in a way that makes it go outside "
"its AABB, [member GeometryInstance3D.extra_cull_margin] must be increased on "
"the mesh. Otherwise, the decal may not be visible on the mesh."
msgstr ""
"[Decals]-ы используются для проецирования текстуры на [Mesh] в сцене. "
"Используйте Decals, чтобы добавить детали к сцене, не затрагивая базовую "
"[Mesh]. Они часто используются для добавления выветривания к зданию, "
"добавления грязи или ила на землю или добавления разнообразия к реквизиту. "
"Decals можно перемещать в любое время, что делает их подходящими для таких "
"вещей, как тени-капли или точки лазерного прицела.\n"
"Они сделаны из [AABB] и группы [Texture2D], определяющих [Color], normal, ORM "
"(окклюзия окружения, шероховатость, металлик) и излучение. Декали "
"проецируются в пределах их [AABB], поэтому изменение ориентации декали влияет "
"на направление, в котором они проецируются. По умолчанию декали проецируются "
"вниз (т. е. от положительного Y к отрицательному Y).\n"
"[Texture2D]-ы, связанные с Decal, автоматически сохраняются в атласе текстур, "
"который используется для рисования декалей, чтобы все декали можно было "
"нарисовать одновременно. Godot использует кластеризованные декали, то есть "
"они хранятся в кластерных данных и рисуются при рисовании сетки, а не "
"рисуются как эффект постобработки после.\n"
"[b]Примечание:[/b] Декали не могут влиять на прозрачность базового материала, "
"независимо от его режима прозрачности (альфа-смешивание, альфа-ножницы, альфа-"
"хеш, непрозрачный предварительный проход). Это означает, что полупрозрачные "
"или прозрачные области материала останутся полупрозрачными или прозрачными, "
"даже если на них нанесена непрозрачная декаль.\n"
"[b]Примечание:[/b] Декали поддерживаются только в методах рендеринга Forward+ "
"и Mobile, а не Compatibility. При использовании метода рендеринга Mobile на "
"каждом ресурсе сетки может отображаться только 8 декалей. Попытка отобразить "
"более 8 декалей на одном ресурсе сетки приведет к мерцанию декалей при "
"движении камеры.\n"
"[b]Примечание:[/b] При использовании метода рендеринга Mobile декали будут "
"правильно влиять только на сетки, видимость AABB которых пересекается с AABB "
"декали. Если используется шейдер для деформации сетки таким образом, что она "
"выходит за пределы AABB, [member GeometryInstance3D.extra_cull_margin] должен "
"быть увеличен на сетке. В противном случае декаль может быть не видна на "
"сетке."

msgid ""
"Returns the [Texture2D] associated with the specified [enum DecalTexture]. "
"This is a convenience method, in most cases you should access the texture "
"directly.\n"
"For example, instead of [code]albedo_tex = "
"$Decal.get_texture(Decal.TEXTURE_ALBEDO)[/code], use [code]albedo_tex = "
"$Decal.texture_albedo[/code].\n"
"One case where this is better than accessing the texture directly is when you "
"want to copy one Decal's textures to another. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in Decal.TEXTURE_MAX:\n"
"\t$NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < (int)Decal.DecalTexture.Max; i++)\n"
"{\n"
"\tGetNode<Decal>(\"NewDecal\").SetTexture(i, "
"GetNode<Decal>(\"OldDecal\").GetTexture(i));\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [Texture2D], связанный с указанным [enum DecalTexture]. Это "
"удобный метод, в большинстве случаев вам следует обращаться к текстуре "
"напрямую.\n"
"Например, вместо [code]albedo_tex = $Decal.get_texture(Decal.TEXTURE_ALBEDO)[/"
"code], используйте [code]albedo_tex = $Decal.texture_albedo[/code].\n"
"Один случай, когда это лучше, чем прямой доступ к текстуре, — это когда вы "
"хотите скопировать текстуры одной Decal в другую. Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in Decal.TEXTURE_MAX:\n"
"\t$NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < (int)Decal.DecalTexture.Max; i++)\n"
"{\n"
"\tGetNode<Decal>(\"NewDecal\").SetTexture(i, "
"GetNode<Decal>(\"OldDecal\").GetTexture(i));\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Sets the [Texture2D] associated with the specified [enum DecalTexture]. This "
"is a convenience method, in most cases you should access the texture "
"directly.\n"
"For example, instead of [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, "
"albedo_tex)[/code], use [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"One case where this is better than accessing the texture directly is when you "
"want to copy one Decal's textures to another. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in Decal.TEXTURE_MAX:\n"
"\t$NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < (int)Decal.DecalTexture.Max; i++)\n"
"{\n"
"\tGetNode<Decal>(\"NewDecal\").SetTexture(i, "
"GetNode<Decal>(\"OldDecal\").GetTexture(i));\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Устанавливает [Texture2D], связанный с указанным [enum DecalTexture]. Это "
"удобный метод, в большинстве случаев вам следует обращаться к текстуре "
"напрямую.\n"
"Например, вместо [code]$Decal.set_texture(Decal.TEXTURE_ALBEDO, albedo_tex)[/"
"code], используйте [code]$Decal.texture_albedo = albedo_tex[/code].\n"
"Один случай, когда это лучше, чем прямой доступ к текстуре, — это когда вы "
"хотите скопировать текстуры одной Decal в другую. Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"for i in Decal.TEXTURE_MAX:\n"
"\t$NewDecal.set_texture(i, $OldDecal.get_texture(i))\n"
"[/gdscript]\n"
"[csharp]\n"
"for (int i = 0; i < (int)Decal.DecalTexture.Max; i++)\n"
"{\n"
"\tGetNode<Decal>(\"NewDecal\").SetTexture(i, "
"GetNode<Decal>(\"OldDecal\").GetTexture(i));\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Blends the albedo [Color] of the decal with albedo [Color] of the underlying "
"mesh. This can be set to [code]0.0[/code] to create a decal that only affects "
"normal or ORM. In this case, an albedo texture is still required as its alpha "
"channel will determine where the normal and ORM will be overridden. See also "
"[member modulate]."
msgstr ""
"Смешивает альбедо [Color] декали с альбедо [Color] базовой сетки. Это можно "
"установить на [code]0.0[/code], чтобы создать декаль, которая влияет только "
"на нормаль или ORM. В этом случае текстура альбедо все еще требуется, так как "
"ее альфа-канал определит, где будут переопределены нормаль и ORM. См. также "
"[member modulate]."

msgid ""
"Specifies which [member VisualInstance3D.layers] this decal will project on. "
"By default, Decals affect all layers. This is used so you can specify which "
"types of objects receive the Decal and which do not. This is especially "
"useful so you can ensure that dynamic objects don't accidentally receive a "
"Decal intended for the terrain under them."
msgstr ""
"Указывает, на какой [member VisualInstance3D.layers] будет проецироваться эта "
"декаль. По умолчанию Decals влияет на все слои. Это используется, чтобы вы "
"могли указать, какие типы объектов получают Decal, а какие нет. Это особенно "
"полезно, чтобы вы могли гарантировать, что динамические объекты случайно не "
"получат Decal, предназначенный для ландшафта под ними."

msgid ""
"The distance from the camera at which the Decal begins to fade away (in 3D "
"units)."
msgstr ""
"Расстояние от камеры, на котором декаль начинает исчезать (в 3D-единицах)."

msgid ""
"If [code]true[/code], decals will smoothly fade away when far from the active "
"[Camera3D] starting at [member distance_fade_begin]. The Decal will fade out "
"over [member distance_fade_begin] + [member distance_fade_length], after "
"which it will be culled and not sent to the shader at all. Use this to reduce "
"the number of active Decals in a scene and thus improve performance."
msgstr ""
"Если [code]true[/code], декали будут плавно исчезать при удалении от активной "
"[Camera3D], начиная с [member distance_fade_begin]. Декаль будет исчезать "
"через [member distance_fade_begin] + [member distance_fade_length], после "
"чего она будет отбракована и вообще не отправлена в шейдер. Используйте это, "
"чтобы уменьшить количество активных декалей в сцене и тем самым повысить "
"производительность."

msgid ""
"The distance over which the Decal fades (in 3D units). The Decal becomes "
"slowly more transparent over this distance and is completely invisible at the "
"end. Higher values result in a smoother fade-out transition, which is more "
"suited when the camera moves fast."
msgstr ""
"Расстояние, на котором декаль исчезает (в 3D-единицах). Декаль постепенно "
"становится более прозрачной на этом расстоянии и полностью невидимой в конце. "
"Более высокие значения приводят к более плавному переходу затухания, что "
"больше подходит для случаев, когда камера движется быстро."

msgid ""
"Energy multiplier for the emission texture. This will make the decal emit "
"light at a higher or lower intensity, independently of the albedo color. See "
"also [member modulate]."
msgstr ""
"Множитель энергии для текстуры излучения. Это заставит декаль излучать свет с "
"большей или меньшей интенсивностью, независимо от цвета альбедо. См. также "
"[member modulate]."

msgid ""
"Sets the curve over which the decal will fade as the surface gets further "
"from the center of the [AABB]. Only positive values are valid (negative "
"values will be clamped to [code]0.0[/code]). See also [member upper_fade]."
msgstr ""
"Устанавливает кривую, по которой декаль будет исчезать по мере удаления "
"поверхности от центра [AABB]. Допустимы только положительные значения "
"(отрицательные значения будут ограничены [code]0.0[/code]). См. также [member "
"upper_fade]."

msgid ""
"Changes the [Color] of the Decal by multiplying the albedo and emission "
"colors with this value. The alpha component is only taken into account when "
"multiplying the albedo color, not the emission color. See also [member "
"emission_energy] and [member albedo_mix] to change the emission and albedo "
"intensity independently of each other."
msgstr ""
"Изменяет [Color] декали, умножая цвета альбедо и излучения на это значение. "
"Альфа-компонент учитывается только при умножении цвета альбедо, а не цвета "
"излучения. См. также [member emission_energy] и [member albedo_mix], чтобы "
"изменить интенсивность излучения и альбедо независимо друг от друга."

msgid ""
"Fades the Decal if the angle between the Decal's [AABB] and the target "
"surface becomes too large. A value of [code]0[/code] projects the Decal "
"regardless of angle, a value of [code]1[/code] limits the Decal to surfaces "
"that are nearly perpendicular.\n"
"[b]Note:[/b] Setting [member normal_fade] to a value greater than [code]0.0[/"
"code] has a small performance cost due to the added normal angle computations."
msgstr ""
"Затемняет декаль, если угол между [AABB] декали и целевой поверхностью "
"становится слишком большим. Значение [code]0[/code] проецирует декаль "
"независимо от угла, значение [code]1[/code] ограничивает декаль "
"поверхностями, которые почти перпендикулярны.\n"
"[b]Примечание:[/b] Установка [member normal_fade] на значение больше "
"[code]0.0[/code] имеет небольшие затраты производительности из-за "
"дополнительных вычислений угла нормали."

msgid ""
"Sets the size of the [AABB] used by the decal. All dimensions must be set to "
"a value greater than zero (they will be clamped to [code]0.001[/code] if this "
"is not the case). The AABB goes from [code]-size/2[/code] to [code]size/2[/"
"code].\n"
"[b]Note:[/b] To improve culling efficiency of \"hard surface\" decals, set "
"their [member upper_fade] and [member lower_fade] to [code]0.0[/code] and set "
"the Y component of the [member size] as low as possible. This will reduce the "
"decals' AABB size without affecting their appearance."
msgstr ""
"Устанавливает размер [AABB], используемый наклейкой. Все размеры должны быть "
"установлены на значение больше нуля (они будут ограничены [code]0.001[/code], "
"если это не так). AABB изменяется от [code]-size/2[/code] до [code]size/2[/"
"code].\n"
"[b]Примечание:[/b] Чтобы повысить эффективность отбраковки наклеек «твердой "
"поверхности», установите их [member upper_fade] и [member lower_fade] на "
"[code]0.0[/code] и установите компонент Y [member size] как можно ниже. Это "
"уменьшит размер AABB наклеек, не влияя на их внешний вид."

msgid ""
"[Texture2D] with the base [Color] of the Decal. Either this or the [member "
"texture_emission] must be set for the Decal to be visible. Use the alpha "
"channel like a mask to smoothly blend the edges of the decal with the "
"underlying object.\n"
"[b]Note:[/b] Unlike [BaseMaterial3D] whose filter mode can be adjusted on a "
"per-material basis, the filter mode for [Decal] textures is set globally with "
"[member ProjectSettings.rendering/textures/decals/filter]."
msgstr ""
"[Texture2D] с базовым [Color] Decal. Либо это, либо [member texture_emission] "
"должно быть установлено, чтобы Decal был видимым. Используйте альфа-канал как "
"маску, чтобы плавно смешать края decal с базовым объектом.\n"
"[b]Примечание:[/b] В отличие от [BaseMaterial3D], режим фильтра которого "
"можно настраивать для каждого материала, режим фильтра для текстур [Decal] "
"устанавливается глобально с помощью [member ProjectSettings.rendering/"
"textures/decals/filter]."

msgid ""
"[Texture2D] with the emission [Color] of the Decal. Either this or the "
"[member texture_albedo] must be set for the Decal to be visible. Use the "
"alpha channel like a mask to smoothly blend the edges of the decal with the "
"underlying object.\n"
"[b]Note:[/b] Unlike [BaseMaterial3D] whose filter mode can be adjusted on a "
"per-material basis, the filter mode for [Decal] textures is set globally with "
"[member ProjectSettings.rendering/textures/decals/filter]."
msgstr ""
"[Texture2D] с излучением [Color] Decal. Либо это, либо [member "
"texture_albedo] должно быть установлено, чтобы Decal был видимым. Используйте "
"альфа-канал как маску, чтобы плавно смешать края decal с нижележащим "
"объектом.\n"
"[b]Примечание:[/b] В отличие от [BaseMaterial3D], режим фильтра которого "
"можно настраивать для каждого материала, режим фильтра для текстур [Decal] "
"устанавливается глобально с помощью [member ProjectSettings.rendering/"
"textures/decals/filter]."

msgid ""
"[Texture2D] with the per-pixel normal map for the decal. Use this to add "
"extra detail to decals.\n"
"[b]Note:[/b] Unlike [BaseMaterial3D] whose filter mode can be adjusted on a "
"per-material basis, the filter mode for [Decal] textures is set globally with "
"[member ProjectSettings.rendering/textures/decals/filter].\n"
"[b]Note:[/b] Setting this texture alone will not result in a visible decal, "
"as [member texture_albedo] must also be set. To create a normal-only decal, "
"load an albedo texture into [member texture_albedo] and set [member "
"albedo_mix] to [code]0.0[/code]. The albedo texture's alpha channel will be "
"used to determine where the underlying surface's normal map should be "
"overridden (and its intensity)."
msgstr ""
"[Texture2D] с попиксельной картой нормалей для декали. Используйте это, чтобы "
"добавить дополнительную детализацию к декалям.\n"
"[b]Примечание:[/b] В отличие от [BaseMaterial3D], режим фильтра которого "
"можно настраивать для каждого материала, режим фильтра для текстур [Decal] "
"устанавливается глобально с помощью [member ProjectSettings.rendering/"
"textures/decals/filter].\n"
"[b]Примечание:[/b] Установка только этой текстуры не приведет к появлению "
"видимой декали, так как [member texture_albedo] также должен быть установлен. "
"Чтобы создать декаль только для нормалей, загрузите текстуру альбедо в "
"[member texture_albedo] и установите [member albedo_mix] на [code]0.0[/code]. "
"Альфа-канал текстуры альбедо будет использоваться для определения того, где "
"должна быть переопределена карта нормалей базовой поверхности (и ее "
"интенсивность)."

msgid ""
"[Texture2D] storing ambient occlusion, roughness, and metallic for the decal. "
"Use this to add extra detail to decals.\n"
"[b]Note:[/b] Unlike [BaseMaterial3D] whose filter mode can be adjusted on a "
"per-material basis, the filter mode for [Decal] textures is set globally with "
"[member ProjectSettings.rendering/textures/decals/filter].\n"
"[b]Note:[/b] Setting this texture alone will not result in a visible decal, "
"as [member texture_albedo] must also be set. To create an ORM-only decal, "
"load an albedo texture into [member texture_albedo] and set [member "
"albedo_mix] to [code]0.0[/code]. The albedo texture's alpha channel will be "
"used to determine where the underlying surface's ORM map should be overridden "
"(and its intensity)."
msgstr ""
"[Texture2D] сохраняет окружающее затенение, шероховатость и металл для "
"декали. Используйте это, чтобы добавить дополнительную детализацию к "
"декалям.\n"
"[b]Примечание:[/b] В отличие от [BaseMaterial3D], режим фильтра которого "
"можно настраивать для каждого материала, режим фильтра для текстур [Decal] "
"устанавливается глобально с помощью [member ProjectSettings.rendering/"
"textures/decals/filter].\n"
"[b]Примечание:[/b] Установка только этой текстуры не приведет к появлению "
"видимой декали, так как [member texture_albedo] также должен быть установлен. "
"Чтобы создать декаль только для ORM, загрузите текстуру альбедо в [member "
"texture_albedo] и установите [member albedo_mix] на [code]0.0[/code]. Альфа-"
"канал текстуры альбедо будет использоваться для определения того, где должна "
"быть переопределена карта ORM подстилающей поверхности (и ее интенсивность)."

msgid ""
"Sets the curve over which the decal will fade as the surface gets further "
"from the center of the [AABB]. Only positive values are valid (negative "
"values will be clamped to [code]0.0[/code]). See also [member lower_fade]."
msgstr ""
"Устанавливает кривую, по которой декаль будет исчезать по мере удаления "
"поверхности от центра [AABB]. Допустимы только положительные значения "
"(отрицательные значения будут ограничены [code]0.0[/code]). См. также [member "
"lower_fade]."

msgid "[Texture2D] corresponding to [member texture_albedo]."
msgstr "[Texture2D] соответствует [member texture_albedo]."

msgid "[Texture2D] corresponding to [member texture_normal]."
msgstr "[Texture2D] соответствует [member texture_normal]."

msgid "[Texture2D] corresponding to [member texture_orm]."
msgstr "[Texture2D] соответствует [member texture_orm]."

msgid "[Texture2D] corresponding to [member texture_emission]."
msgstr "[Texture2D] соответствует [member texture_emission]."

msgid "Max size of [enum DecalTexture] enum."
msgstr "Максимальный размер перечисления [enum DecalTexture]."

msgid "A built-in data structure that holds key-value pairs."
msgstr "Встроенная структура данных, содержащая пары ключ-значение."

msgid "GDScript basics: Dictionary"
msgstr "Основы GDScript: Словарь"

msgid "Constructs an empty [Dictionary]."
msgstr "Создает пустой [Dictionary]."

msgid ""
"Creates a typed dictionary from the [param base] dictionary. A typed "
"dictionary can only contain keys and values of the given types, or that "
"inherit from the given classes, as described by this constructor's parameters."
msgstr ""
"Создает типизированный словарь из словаря [param base]. Типизированный "
"словарь может содержать только ключи и значения указанных типов или "
"наследуемые от указанных классов, как описано параметрами этого конструктора."

msgid ""
"Returns the same dictionary as [param from]. If you need a copy of the "
"dictionary, use [method duplicate]."
msgstr ""
"Возвращает тот же словарь, что и [param from]. Если вам нужна копия словаря, "
"используйте [method duplicate]."

msgid ""
"Assigns elements of another [param dictionary] into the dictionary. Resizes "
"the dictionary to match [param dictionary]. Performs type conversions if the "
"dictionary is typed."
msgstr ""
"Назначает элементы другого [param dictionary] в словарь. Изменяет размер "
"словаря для соответствия [param dictionary]. Выполняет преобразования типов, "
"если словарь типизирован."

msgid "Clears the dictionary, removing all entries from it."
msgstr "Очищает словарь, удаляя из него все записи."

msgid ""
"Returns a new copy of the dictionary.\n"
"By default, a [b]shallow[/b] copy is returned: all nested [Array], "
"[Dictionary], and [Resource] keys and values are shared with the original "
"dictionary. Modifying any of those in one dictionary will also affect them in "
"the other.\n"
"If [param deep] is [code]true[/code], a [b]deep[/b] copy is returned: all "
"nested arrays and dictionaries are also duplicated (recursively). Any "
"[Resource] is still shared with the original dictionary, though."
msgstr ""
"Возвращает новую копию словаря.\n"
"По умолчанию возвращается [b]поверхностная[/b] копия: все вложенные ключи и "
"значения [Array], [Dictionary] и [Resource] используются совместно с исходным "
"словарем. Изменение любого из них в одном словаре также повлияет на них в "
"другом.\n"
"Если [param deep] равен [code]true[/code], возвращается [b]глубокая[/b] "
"копия: все вложенные массивы и словари также дублируются (рекурсивно). Однако "
"любой [Resource] по-прежнему используется совместно с исходным словарем."

msgid ""
"Duplicates this dictionary, deeply, like [method duplicate][code](true)[/"
"code], with extra control over how subresources are handled.\n"
"[param deep_subresources_mode] must be one of the values from [enum "
"Resource.DeepDuplicateMode]. By default, only internal resources will be "
"duplicated (recursively)."
msgstr ""
"Глубоко дублирует этот словарь, подобно [method duplicate][code](true)[/"
"code], с дополнительным контролем над обработкой подресурсов.\n"
"[param deep_subresources_mode] должен быть одним из значений [enum "
"Resource.DeepDuplicateMode]. По умолчанию рекурсивно дублируются только "
"внутренние ресурсы."

msgid ""
"Removes the dictionary entry by key, if it exists. Returns [code]true[/code] "
"if the given [param key] existed in the dictionary, otherwise [code]false[/"
"code].\n"
"[b]Note:[/b] Do not erase entries while iterating over the dictionary. You "
"can iterate over the [method keys] array instead."
msgstr ""
"Удаляет запись словаря по ключу, если она существует. Возвращает [code]true[/"
"code], если заданный [param key] существовал в словаре, в противном случае "
"[code]false[/code].\n"
"[b]Примечание:[/b] Не удаляйте записи при итерации по словарю. Вместо этого "
"вы можете итерировать по массиву [method keys]."

msgid ""
"Finds and returns the first key whose associated value is equal to [param "
"value], or [code]null[/code] if it is not found.\n"
"[b]Note:[/b] [code]null[/code] is also a valid key. If inside the dictionary, "
"[method find_key] may give misleading results."
msgstr ""
"Находит и возвращает первый ключ, связанное значение которого равно [param "
"value] или [code]null[/code], если он не найден.\n"
"[b]Примечание:[/b] [code]null[/code] также является допустимым ключом. Если "
"внутри словаря, [method find_key] может дать вводящие в заблуждение "
"результаты."

msgid ""
"Returns the corresponding value for the given [param key] in the dictionary. "
"If the [param key] does not exist, returns [param default], or [code]null[/"
"code] if the parameter is omitted."
msgstr ""
"Возвращает соответствующее значение для указанного [param key] в словаре. "
"Если [param key] не существует, возвращает [param default] или [code]null[/"
"code], если параметр пропущен."

msgid ""
"Gets a value and ensures the key is set. If the [param key] exists in the "
"dictionary, this behaves like [method get]. Otherwise, the [param default] "
"value is inserted into the dictionary and returned."
msgstr ""
"Получает значение и обеспечивает установку ключа. Если [param key] существует "
"в словаре, это ведет себя как [method get]. В противном случае значение "
"[param default] вставляется в словарь и возвращается."

msgid ""
"Returns the built-in [Variant] type of the typed dictionary's keys as a [enum "
"Variant.Type] constant. If the keys are not typed, returns [constant "
"TYPE_NIL]. See also [method is_typed_key]."
msgstr ""
"Возвращает встроенный тип [Variant] ключей типизированного словаря как "
"константу [enum Variant.Type]. Если ключи не типизированы, возвращает "
"[constant TYPE_NIL]. См. также [method is_typed_key]."

msgid ""
"Returns the [b]built-in[/b] class name of the typed dictionary's keys, if the "
"built-in [Variant] type is [constant TYPE_OBJECT]. Otherwise, returns an "
"empty [StringName]. See also [method is_typed_key] and [method "
"Object.get_class]."
msgstr ""
"Возвращает [b]встроенное[/b] имя класса ключей типизированного словаря, если "
"встроенный тип [Variant] — [constant TYPE_OBJECT]. В противном случае "
"возвращает пустой [StringName]. См. также [method is_typed_key] и [method "
"Object.get_class]."

msgid ""
"Returns the [Script] instance associated with this typed dictionary's keys, "
"or [code]null[/code] if it does not exist. See also [method is_typed_key]."
msgstr ""
"Возвращает экземпляр [Script], связанный с ключами этого типизированного "
"словаря, или [code]null[/code], если он не существует. См. также [method "
"is_typed_key]."

msgid ""
"Returns the built-in [Variant] type of the typed dictionary's values as a "
"[enum Variant.Type] constant. If the values are not typed, returns [constant "
"TYPE_NIL]. See also [method is_typed_value]."
msgstr ""
"Возвращает встроенный тип [Variant] значений типизированного словаря как "
"константу [enum Variant.Type]. Если значения не типизированы, возвращает "
"[constant TYPE_NIL]. См. также [method is_typed_value]."

msgid ""
"Returns the [b]built-in[/b] class name of the typed dictionary's values, if "
"the built-in [Variant] type is [constant TYPE_OBJECT]. Otherwise, returns an "
"empty [StringName]. See also [method is_typed_value] and [method "
"Object.get_class]."
msgstr ""
"Возвращает [b]встроенное[/b] имя класса значений типизированного словаря, "
"если встроенный тип [Variant] — [constant TYPE_OBJECT]. В противном случае "
"возвращает пустой [StringName]. См. также [method is_typed_value] и [method "
"Object.get_class]."

msgid ""
"Returns the [Script] instance associated with this typed dictionary's values, "
"or [code]null[/code] if it does not exist. See also [method is_typed_value]."
msgstr ""
"Возвращает экземпляр [Script], связанный со значениями этого типизированного "
"словаря, или [code]null[/code], если он не существует. См. также [method "
"is_typed_value]."

msgid ""
"Returns [code]true[/code] if the dictionary contains an entry with the given "
"[param key].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_dict = {\n"
"\t\"Godot\" : 4,\n"
"\t210 : null,\n"
"}\n"
"\n"
"print(my_dict.has(\"Godot\")) # Prints true\n"
"print(my_dict.has(210))     # Prints true\n"
"print(my_dict.has(4))       # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"var myDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"Godot\", 4 },\n"
"\t{ 210, default },\n"
"};\n"
"\n"
"GD.Print(myDict.ContainsKey(\"Godot\")); // Prints True\n"
"GD.Print(myDict.ContainsKey(210));     // Prints True\n"
"GD.Print(myDict.ContainsKey(4));       // Prints False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In GDScript, this is equivalent to the [code]in[/code] operator:\n"
"[codeblock]\n"
"if \"Godot\" in { \"Godot\": 4 }:\n"
"\tprint(\"The key is here!\") # Will be printed.\n"
"[/codeblock]\n"
"[b]Note:[/b] This method returns [code]true[/code] as long as the [param key] "
"exists, even if its corresponding value is [code]null[/code]."
msgstr ""
"Возвращает [code]true[/code], если словарь содержит запись с заданным [param "
"key].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_dict = {\n"
"\t\"Godot\" : 4,\n"
"\t210 : null,\n"
"}\n"
"\n"
"print(my_dict.has(\"Godot\")) # Выводит true\n"
"print(my_dict.has(210))     # Выводит true\n"
"print(my_dict.has(4))       # Выводит false\n"
"[/gdscript]\n"
"[csharp]\n"
"var myDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"Godot\", 4 },\n"
"\t{ 210, default },\n"
"};\n"
"\n"
"GD.Print(myDict.ContainsKey(\"Godot\")); // Выводит True\n"
"GD.Print(myDict.ContainsKey(210));     // Выводит True\n"
"GD.Print(myDict.ContainsKey(4));       // Выводит False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"В GDScript это эквивалентно оператору [code]in[/code]:\n"
"[codeblock]\n"
"if \"Godot\" in { \"Godot\": 4 }:\n"
"\tprint(\"Ключ здесь!\") # Будет напечатано.\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Этот метод возвращает [code]true[/code] до тех пор, пока "
"существует [param key], даже если его соответствующее значение равно "
"[code]null[/code]."

msgid ""
"Returns [code]true[/code] if the dictionary contains all keys in the given "
"[param keys] array.\n"
"[codeblock]\n"
"var data = { \"width\": 10, \"height\": 20 }\n"
"data.has_all([\"height\", \"width\"]) # Returns true\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]true[/code], если словарь содержит все ключи в заданном "
"массиве [param keys].\n"
"[codeblock]\n"
"var data = { \"width\": 10, \"height\": 20 }\n"
"data.has_all([\"height\", \"width\"]) # Возвращает true\n"
"[/codeblock]"

msgid ""
"Returns a hashed 32-bit integer value representing the dictionary contents.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var dict1 = { \"A\": 10, \"B\": 2 }\n"
"var dict2 = { \"A\": 10, \"B\": 2 }\n"
"\n"
"print(dict1.hash() == dict2.hash()) # Prints true\n"
"[/gdscript]\n"
"[csharp]\n"
"var dict1 = new Godot.Collections.Dictionary { { \"A\", 10 }, { \"B\", "
"2 } };\n"
"var dict2 = new Godot.Collections.Dictionary { { \"A\", 10 }, { \"B\", "
"2 } };\n"
"\n"
"// Godot.Collections.Dictionary has no Hash() method. Use GD.Hash() instead.\n"
"GD.Print(GD.Hash(dict1) == GD.Hash(dict2)); // Prints True\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Dictionaries with the same entries but in a different order will "
"not have the same hash.\n"
"[b]Note:[/b] Dictionaries with equal hash values are [i]not[/i] guaranteed to "
"be the same, because of hash collisions. On the contrary, dictionaries with "
"different hash values are guaranteed to be different."
msgstr ""
"Возвращает хешированное 32-битное целое значение, представляющее содержимое "
"словаря.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var dict1 = { \"A\": 10, \"B\": 2 }\n"
"var dict2 = { \"A\": 10, \"B\": 2 }\n"
"\n"
"print(dict1.hash() == dict2.hash()) # Выводит true\n"
"[/gdscript]\n"
"[csharp]\n"
"var dict1 = new Godot.Collections.Dictionary { { \"A\", 10 }, { \"B\", "
"2 } };\n"
"var dict2 = new Godot.Collections.Dictionary { { \"A\", 10 }, { \"B\", "
"2 } };\n"
"\n"
"// В Godot.Collections.Dictionary нет метода Hash(). Вместо него используйте "
"GD.Hash().\n"
"GD.Print(GD.Hash(dict1) == GD.Hash(dict2)); // Выводит True\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Словари с одинаковыми записями, но в разном порядке, будут "
"иметь разные хэши.\n"
"[b]Примечание:[/b] Словари с одинаковыми значениями хэшей [i]не[/i] "
"гарантированно будут одинаковыми из-за коллизий хэшей. Напротив, словари с "
"разными значениями хэшей гарантированно будут разными."

msgid ""
"Returns [code]true[/code] if the dictionary is empty (its size is [code]0[/"
"code]). See also [method size]."
msgstr ""
"Возвращает [code]true[/code], если словарь пуст (его размер [code]0[/code]). "
"См. также [method size]."

msgid ""
"Returns [code]true[/code] if the dictionary is read-only. See [method "
"make_read_only]. Dictionaries are automatically read-only if declared with "
"[code]const[/code] keyword."
msgstr ""
"Возвращает [code]true[/code], если словарь доступен только для чтения. См. "
"[method make_read_only]. Словари автоматически доступны только для чтения, "
"если объявлены с ключевым словом [code]const[/code]."

msgid ""
"Returns [code]true[/code] if the dictionary is typed the same as [param "
"dictionary]."
msgstr ""
"Возвращает [code]true[/code], если словарь имеет тот же тип, что и [param "
"dictionary]."

msgid ""
"Returns [code]true[/code] if the dictionary's keys are typed the same as "
"[param dictionary]'s keys."
msgstr ""
"Возвращает [code]true[/code], если ключи словаря введены так же, как ключи "
"[param dictionary]."

msgid ""
"Returns [code]true[/code] if the dictionary's values are typed the same as "
"[param dictionary]'s values."
msgstr ""
"Возвращает [code]true[/code], если значения словаря типизированы так же, как "
"значения [param dictionary]."

msgid ""
"Returns [code]true[/code] if the dictionary is typed. Typed dictionaries can "
"only store keys/values of their associated type and provide type safety for "
"the [code][][/code] operator. Methods of typed dictionary still return "
"[Variant]."
msgstr ""
"Возвращает [code]true[/code], если словарь типизирован. Типизированные "
"словари могут хранить только ключи/значения своего связанного типа и "
"обеспечивают безопасность типов для оператора [code][][/code]. Методы "
"типизированного словаря по-прежнему возвращают [Variant]."

msgid "Returns [code]true[/code] if the dictionary's keys are typed."
msgstr "Возвращает [code]true[/code], если введены ключи словаря."

msgid "Returns [code]true[/code] if the dictionary's values are typed."
msgstr "Возвращает [code]true[/code], если значения словаря типизированы."

msgid "Returns the list of keys in the dictionary."
msgstr "Возвращает список ключей в словаре."

msgid ""
"Makes the dictionary read-only, i.e. disables modification of the "
"dictionary's contents. Does not apply to nested content, e.g. content of "
"nested dictionaries."
msgstr ""
"Делает словарь доступным только для чтения, т. е. отключает возможность "
"изменения содержимого словаря. Не применяется к вложенному содержимому, "
"например, содержимому вложенных словарей."

msgid ""
"Adds entries from [param dictionary] to this dictionary. By default, "
"duplicate keys are not copied over, unless [param overwrite] is [code]true[/"
"code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var dict = { \"item\": \"sword\", \"quantity\": 2 }\n"
"var other_dict = { \"quantity\": 15, \"color\": \"silver\" }\n"
"\n"
"# Overwriting of existing keys is disabled by default.\n"
"dict.merge(other_dict)\n"
"print(dict)  # { \"item\": \"sword\", \"quantity\": 2, \"color\": "
"\"silver\" }\n"
"\n"
"# With overwriting of existing keys enabled.\n"
"dict.merge(other_dict, true)\n"
"print(dict)  # { \"item\": \"sword\", \"quantity\": 15, \"color\": "
"\"silver\" }\n"
"[/gdscript]\n"
"[csharp]\n"
"var dict = new Godot.Collections.Dictionary\n"
"{\n"
"\t[\"item\"] = \"sword\",\n"
"\t[\"quantity\"] = 2,\n"
"};\n"
"\n"
"var otherDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t[\"quantity\"] = 15,\n"
"\t[\"color\"] = \"silver\",\n"
"};\n"
"\n"
"// Overwriting of existing keys is disabled by default.\n"
"dict.Merge(otherDict);\n"
"GD.Print(dict); // { \"item\": \"sword\", \"quantity\": 2, \"color\": "
"\"silver\" }\n"
"\n"
"// With overwriting of existing keys enabled.\n"
"dict.Merge(otherDict, true);\n"
"GD.Print(dict); // { \"item\": \"sword\", \"quantity\": 15, \"color\": "
"\"silver\" }\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] [method merge] is [i]not[/i] recursive. Nested dictionaries are "
"considered as keys that can be overwritten or not depending on the value of "
"[param overwrite], but they will never be merged together."
msgstr ""
"Добавляет записи из [param dictionary] в этот словарь. По умолчанию "
"дублирующиеся ключи не копируются, если только [param overwrite] не равен "
"[code]true[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var dict = { \"item\": \"sword\", \"quantity\": 2 }\n"
"var other_dict = { \"quantity\": 15, \"color\": \"silver\" }\n"
"\n"
"# Перезапись существующих ключей по умолчанию отключена.\n"
"dict.merge(other_dict)\n"
"print(dict)  # { \"item\": \"sword\", \"quantity\": 2, \"color\": "
"\"silver\" }\n"
"\n"
"# С возможностью перезаписи существующих ключей.\n"
"dict.merge(other_dict, true)\n"
"print(dict)  # { \"item\": \"sword\", \"quantity\": 15, \"color\": "
"\"silver\" }\n"
"[/gdscript]\n"
"[csharp]\n"
"var dict = new Godot.Collections.Dictionary\n"
"{\n"
"\t[\"item\"] = \"sword\",\n"
"\t[\"quantity\"] = 2,\n"
"};\n"
"\n"
"var otherDict = new Godot.Collections.Dictionary\n"
"{\n"
"\t[\"quantity\"] = 15,\n"
"\t[\"color\"] = \"silver\",\n"
"};\n"
"\n"
"// Перезапись существующих ключей по умолчанию отключена.\n"
"dict.Merge(otherDict);\n"
"GD.Print(dict); // { \"item\": \"sword\", \"quantity\": 2, \"color\": "
"\"silver\" }\n"
"\n"
"// С возможностью перезаписи существующих ключей.\n"
"dict.Merge(otherDict, true);\n"
"GD.Print(dict); // { \"item\": \"sword\", \"quantity\": 15, \"color\": "
"\"silver\" }\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] [method merge] [i]не[/i] рекурсивен. Вложенные словари "
"рассматриваются как ключи, которые могут быть перезаписаны или нет в "
"зависимости от значения [param overwrite], но они никогда не будут объединены "
"вместе."

msgid ""
"Returns a copy of this dictionary merged with the other [param dictionary]. "
"By default, duplicate keys are not copied over, unless [param overwrite] is "
"[code]true[/code]. See also [method merge].\n"
"This method is useful for quickly making dictionaries with default values:\n"
"[codeblock]\n"
"var base = { \"fruit\": \"apple\", \"vegetable\": \"potato\" }\n"
"var extra = { \"fruit\": \"orange\", \"dressing\": \"vinegar\" }\n"
"# Prints { \"fruit\": \"orange\", \"vegetable\": \"potato\", \"dressing\": "
"\"vinegar\" }\n"
"print(extra.merged(base))\n"
"# Prints { \"fruit\": \"apple\", \"vegetable\": \"potato\", \"dressing\": "
"\"vinegar\" }\n"
"print(extra.merged(base, true))\n"
"[/codeblock]"
msgstr ""
"Возвращает копию этого словаря, объединенную с другим [param dictionary]. По "
"умолчанию дублирующиеся ключи не копируются, если только [param overwrite] не "
"равна [code]true[/code]. См. также [method merge]. \n"
"Этот метод полезен для быстрого создания словарей со значениями по "
"умолчанию:\n"
"[codeblock]\n"
"var base = { \"fruit\": \"apple\", \"vegetable\": \"potato\" }\n"
"var extra = { \"fruit\": \"orange\", \"dressing\": \"vinegar\" }\n"
"# Prints { \"fruit\": \"orange\", \"vegetable\": \"potato\", \"dressing\": "
"\"vinegar\" }\n"
"print(extra.merged(base))\n"
"# Prints { \"fruit\": \"apple\", \"vegetable\": \"potato\", \"dressing\": "
"\"vinegar\" }\n"
"print(extra.merged(base, true))\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if the two dictionaries contain the same keys and "
"values, inner [Dictionary] and [Array] keys and values are compared "
"recursively."
msgstr ""
"Возвращает [code]true[/code], если два словаря содержат одинаковые ключи и "
"значения, внутренние ключи и значения [Dictionary] и [Array] сравниваются "
"рекурсивно."

msgid ""
"Sets the value of the element at the given [param key] to the given [param "
"value]. This is the same as using the [code][][/code] operator "
"([code]array[index] = value[/code])."
msgstr ""
"Устанавливает значение элемента с указанным [param key] на указанное [param "
"value]. Это то же самое, что использовать оператор [code][][/code] "
"([code]array[index] = value[/code])."

msgid ""
"Returns the number of entries in the dictionary. Empty dictionaries ([code]{ }"
"[/code]) always return [code]0[/code]. See also [method is_empty]."
msgstr ""
"Возвращает количество записей в словаре. Пустые словари ([code]{ }[/code]) "
"всегда возвращают [code]0[/code]. См. также [method is_empty]."

msgid ""
"Sorts the dictionary in ascending order, by key. The final order is dependent "
"on the \"less than\" ([code]<[/code]) comparison between keys.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var numbers = { \"c\": 2, \"a\": 0, \"b\": 1 }\n"
"numbers.sort()\n"
"print(numbers) # Prints { \"a\": 0, \"b\": 1, \"c\": 2 }\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"This method ensures that the dictionary's entries are ordered consistently "
"when [method keys] or [method values] are called, or when the dictionary "
"needs to be converted to a string through [method @GlobalScope.str] or "
"[method JSON.stringify]."
msgstr ""
"Сортирует словарь в порядке возрастания по ключу. Окончательный порядок "
"зависит от сравнения «меньше чем» ([code]<[/code]) между ключами.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var numbers = { \"c\": 2, \"a\": 0, \"b\": 1 }\n"
"numbers.sort()\n"
"print(numbers) # Выводит { \"a\": 0, \"b\": 1, \"c\": 2 }\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Этот метод гарантирует, что записи словаря будут упорядочены последовательно, "
"когда вызываются [method keys] или [method values], или когда словарь "
"необходимо преобразовать в строку с помощью [method @GlobalScope.str] или "
"[method JSON.stringify]."

msgid "Returns the list of values in this dictionary."
msgstr "Возвращает список значений в этом словаре."

msgid ""
"Returns [code]true[/code] if the two dictionaries do not contain the same "
"keys and values."
msgstr ""
"Возвращает [code]true[/code], если два словаря не содержат одинаковые ключи и "
"значения."

msgid ""
"Returns [code]true[/code] if the two dictionaries contain the same keys and "
"values. The order of the entries does not matter.\n"
"[b]Note:[/b] In C#, by convention, this operator compares by [b]reference[/"
"b]. If you need to compare by value, iterate over both dictionaries."
msgstr ""
"Возвращает [code]true[/code], если два словаря содержат одинаковые ключи и "
"значения. Порядок записей не имеет значения.\n"
"[b]Примечание:[/b] В C# по соглашению этот оператор сравнивает по [b]ссылке[/"
"b]. Если вам нужно сравнить по значению, выполните итерацию по обоим словарям."

msgid ""
"Returns the corresponding value for the given [param key] in the dictionary. "
"If the entry does not exist, fails and returns [code]null[/code]. For safe "
"access, use [method get] or [method has]."
msgstr ""
"Возвращает соответствующее значение для указанного [param key] в словаре. "
"Если запись не существует, происходит сбой и возвращается [code]null[/code]. "
"Для безопасного доступа используйте [method get] или [method has]."

msgid "Provides methods for managing directories and their content."
msgstr "Предоставляет методы управления каталогами и их содержимым."

msgid ""
"This class is used to manage directories and their content, even outside of "
"the project folder.\n"
"[DirAccess] can't be instantiated directly. Instead it is created with a "
"static method that takes a path for which it will be opened.\n"
"Most of the methods have a static alternative that can be used without "
"creating a [DirAccess]. Static methods only support absolute paths (including "
"[code]res://[/code] and [code]user://[/code]).\n"
"[codeblock]\n"
"# Standard\n"
"var dir = DirAccess.open(\"user://levels\")\n"
"dir.make_dir(\"world1\")\n"
"# Static\n"
"DirAccess.make_dir_absolute(\"user://levels/world1\")\n"
"[/codeblock]\n"
"[b]Note:[/b] Accessing project (\"res://\") directories once exported may "
"behave unexpectedly as some files are converted to engine-specific formats "
"and their original source files may not be present in the expected PCK "
"package. Because of this, to access resources in an exported project, it is "
"recommended to use [ResourceLoader] instead of [FileAccess].\n"
"Here is an example on how to iterate through the files of a directory:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func dir_contents(path):\n"
"\tvar dir = DirAccess.open(path)\n"
"\tif dir:\n"
"\t\tdir.list_dir_begin()\n"
"\t\tvar file_name = dir.get_next()\n"
"\t\twhile file_name != \"\":\n"
"\t\t\tif dir.current_is_dir():\n"
"\t\t\t\tprint(\"Found directory: \" + file_name)\n"
"\t\t\telse:\n"
"\t\t\t\tprint(\"Found file: \" + file_name)\n"
"\t\t\tfile_name = dir.get_next()\n"
"\telse:\n"
"\t\tprint(\"An error occurred when trying to access the path.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public void DirContents(string path)\n"
"{\n"
"\tusing var dir = DirAccess.Open(path);\n"
"\tif (dir != null)\n"
"\t{\n"
"\t\tdir.ListDirBegin();\n"
"\t\tstring fileName = dir.GetNext();\n"
"\t\twhile (fileName != \"\")\n"
"\t\t{\n"
"\t\t\tif (dir.CurrentIsDir())\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print($\"Found directory: {fileName}\");\n"
"\t\t\t}\n"
"\t\t\telse\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print($\"Found file: {fileName}\");\n"
"\t\t\t}\n"
"\t\t\tfileName = dir.GetNext();\n"
"\t\t}\n"
"\t}\n"
"\telse\n"
"\t{\n"
"\t\tGD.Print(\"An error occurred when trying to access the path.\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Keep in mind that file names may change or be remapped after export. If you "
"want to see the actual resource file list as it appears in the editor, use "
"[method ResourceLoader.list_directory] instead."
msgstr ""
"Этот класс используется для управления каталогами и их содержимым, даже за "
"пределами папки проекта.\n"
"[DirAccess] нельзя создать напрямую. Вместо этого он создается с помощью "
"статического метода, который принимает путь, по которому он будет открыт.\n"
"Большинство методов имеют статическую альтернативу, которую можно "
"использовать без создания [DirAccess]. Статические методы поддерживают только "
"абсолютные пути (включая [code]res://[/code] и [code]user://[/code]).\n"
"[codeblock]\n"
"# Стандарт\n"
"var dir = DirAccess.open(\"user://levels\")\n"
"dir.make_dir(\"world1\")\n"
"# Статичный\n"
"DirAccess.make_dir_absolute(\"user://levels/world1\")\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Доступ к каталогам проекта (\"res://\") после экспорта "
"может вести себя непредсказуемо, поскольку некоторые файлы преобразуются в "
"форматы, специфичные для движка, и их исходные файлы могут отсутствовать в "
"ожидаемом пакете PCK. Из-за этого для доступа к ресурсам в экспортированном "
"проекте рекомендуется использовать [ResourceLoader] вместо [FileAccess].\n"
"Вот пример того, как перебирать файлы каталога:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func dir_contents(path):\n"
"\tvar dir = DirAccess.open(path)\n"
"\tif dir:\n"
"\t\tdir.list_dir_begin()\n"
"\t\tvar file_name = dir.get_next()\n"
"\t\twhile file_name != \"\":\n"
"\t\t\tif dir.current_is_dir():\n"
"\t\t\t\tprint(\"Found directory: \" + file_name)\n"
"\t\t\telse:\n"
"\t\t\t\tprint(\"Found file: \" + file_name)\n"
"\t\t\tfile_name = dir.get_next()\n"
"\telse:\n"
"\t\tprint(\"An error occurred when trying to access the path.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public void DirContents(string path)\n"
"{\n"
"\tusing var dir = DirAccess.Open(path);\n"
"\tif (dir != null)\n"
"\t{\n"
"\t\tdir.ListDirBegin();\n"
"\t\tstring fileName = dir.GetNext();\n"
"\t\twhile (fileName != \"\")\n"
"\t\t{\n"
"\t\t\tif (dir.CurrentIsDir())\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print($\"Found directory: {fileName}\");\n"
"\t\t\t}\n"
"\t\t\telse\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print($\"Found file: {fileName}\");\n"
"\t\t\t}\n"
"\t\t\tfileName = dir.GetNext();\n"
"\t\t}\n"
"\t}\n"
"\telse\n"
"\t{\n"
"\t\tGD.Print(\"An error occurred when trying to access the path.\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Имейте в виду, что имена файлов могут измениться или быть переназначены после "
"экспорта. Если вы хотите увидеть фактический список файлов ресурсов, как он "
"отображается в редакторе, используйте вместо этого [method "
"ResourceLoader.list_directory]."

msgid "File system"
msgstr "Файловая система"

msgid ""
"Changes the currently opened directory to the one passed as an argument. The "
"argument can be relative to the current directory (e.g. [code]newdir[/code] "
"or [code]../newdir[/code]), or an absolute path (e.g. [code]/tmp/newdir[/"
"code] or [code]res://somedir/newdir[/code]).\n"
"Returns one of the [enum Error] code constants ([constant OK] on success).\n"
"[b]Note:[/b] The new directory must be within the same scope, e.g. when you "
"had opened a directory inside [code]res://[/code], you can't change it to "
"[code]user://[/code] directory. If you need to open a directory in another "
"access scope, use [method open] to create a new instance instead."
msgstr ""
"Изменяет текущий открытый каталог на тот, который передан в качестве "
"аргумента. Аргумент может быть относительным к текущему каталогу (например, "
"[code]newdir[/code] или [code]../newdir[/code]) или абсолютным путем "
"(например, [code]/tmp/newdir[/code] или [code]res://somedir/newdir[/code]).\n"
"Возвращает одну из констант кода [enum Error] ([constant OK] при успешном "
"выполнении).\n"
"[b]Примечание:[/b] Новый каталог должен находиться в той же области, "
"например, если вы открыли каталог внутри [code]res://[/code], вы не можете "
"изменить его на каталог [code]user://[/code]. Если вам нужно открыть каталог "
"в другой области доступа, используйте [method open] для создания нового "
"экземпляра."

msgid ""
"Copies the [param from] file to the [param to] destination. Both arguments "
"should be paths to files, either relative or absolute. If the destination "
"file exists and is not access-protected, it will be overwritten.\n"
"If [param chmod_flags] is different than [code]-1[/code], the Unix "
"permissions for the destination path will be set to the provided value, if "
"available on the current operating system.\n"
"Returns one of the [enum Error] code constants ([constant OK] on success)."
msgstr ""
"Копирует файл [param from] в место назначения [param to]. Оба аргумента "
"должны быть путями к файлам, относительными или абсолютными. Если файл "
"назначения существует и не защищен от доступа, он будет перезаписан.\n"
"Если [param chmod_flags] отличается от [code]-1[/code], разрешения Unix для "
"пути назначения будут установлены на указанное значение, если оно доступно в "
"текущей операционной системе.\n"
"Возвращает одну из констант кода [enum Error] ([constant OK] при успешном "
"выполнении)."

msgid "Static version of [method copy]. Supports only absolute paths."
msgstr "Статическая версия [method copy]. Поддерживает только абсолютные пути."

msgid ""
"Creates symbolic link between files or folders.\n"
"[b]Note:[/b] On Windows, this method works only if the application is running "
"with elevated privileges or Developer Mode is enabled.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux, and Windows."
msgstr ""
"Создает символическую ссылку между файлами или папками.\n"
"[b]Примечание:[/b] В Windows этот метод работает только если приложение "
"запущено с повышенными привилегиями или включен режим разработчика.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS, Linux и Windows."

msgid ""
"Creates a temporary directory. This directory will be freed when the returned "
"[DirAccess] is freed.\n"
"If [param prefix] is not empty, it will be prefixed to the directory name, "
"separated by a [code]-[/code].\n"
"If [param keep] is [code]true[/code], the directory is not deleted when the "
"returned [DirAccess] is freed.\n"
"Returns [code]null[/code] if opening the directory failed. You can use "
"[method get_open_error] to check the error that occurred."
msgstr ""
"Создает временный каталог. Этот каталог будет освобожден при освобождении "
"возвращенного [DirAccess].\n"
"Если [param prefix] не пуст, он будет добавлен к имени каталога, разделенному "
"[code]-[/code].\n"
"Если [param keep] равен [code]true[/code], каталог не удаляется при "
"освобождении возвращенного [DirAccess].\n"
"Возвращает [code]null[/code], если открытие каталога не удалось. Вы можете "
"использовать [method get_open_error], чтобы проверить возникшую ошибку."

msgid ""
"Returns whether the current item processed with the last [method get_next] "
"call is a directory ([code].[/code] and [code]..[/code] are considered "
"directories)."
msgstr ""
"Возвращает, является ли текущий элемент, обработанный последним вызовом "
"[method get_next], каталогом ([code].[/code] и [code]..[/code] считаются "
"каталогами)."

msgid ""
"Returns whether the target directory exists. The argument can be relative to "
"the current directory, or an absolute path.\n"
"[b]Note:[/b] The returned [bool] in the editor and after exporting when used "
"on a path in the [code]res://[/code] directory may be different. Some files "
"are converted to engine-specific formats when exported, potentially changing "
"the directory structure."
msgstr ""
"Возвращает, существует ли целевой каталог. Аргумент может быть относительным "
"к текущему каталогу или абсолютным путем.\n"
"[b]Примечание:[/b] Возвращаемый [bool] в редакторе и после экспорта при "
"использовании в пути в каталоге [code]res://[/code] может отличаться. "
"Некоторые файлы при экспорте преобразуются в форматы, специфичные для движка, "
"что может изменить структуру каталога."

msgid ""
"Static version of [method dir_exists]. Supports only absolute paths.\n"
"[b]Note:[/b] The returned [bool] in the editor and after exporting when used "
"on a path in the [code]res://[/code] directory may be different. Some files "
"are converted to engine-specific formats when exported, potentially changing "
"the directory structure."
msgstr ""
"Статическая версия [method dir_exists]. Поддерживает только абсолютные пути.\n"
"[b]Примечание:[/b] Возвращаемый [bool] в редакторе и после экспорта при "
"использовании в пути в каталоге [code]res://[/code] может отличаться. "
"Некоторые файлы при экспорте преобразуются в форматы, специфичные для движка, "
"что может изменить структуру каталога."

msgid ""
"Returns whether the target file exists. The argument can be relative to the "
"current directory, or an absolute path.\n"
"For a static equivalent, use [method FileAccess.file_exists].\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
"files), and their source asset will not be included in the exported game, as "
"only the imported version is used. See [method ResourceLoader.exists] for an "
"alternative approach that takes resource remapping into account."
msgstr ""
"Возвращает, существует ли целевой файл. Аргумент может быть относительным к "
"текущему каталогу или абсолютным путем.\n"
"Для статического эквивалента используйте [method FileAccess.file_exists].\n"
"[b]Примечание:[/b] Многие типы ресурсов импортируются (например, текстуры или "
"звуковые файлы), и их исходный ресурс не будет включен в экспортированную "
"игру, поскольку используется только импортированная версия. См. [method "
"ResourceLoader.exists] для альтернативного подхода, который учитывает "
"переназначение ресурсов."

msgid ""
"Returns the absolute path to the currently opened directory (e.g. [code]res://"
"folder[/code] or [code]C:\\tmp\\folder[/code])."
msgstr ""
"Возвращает абсолютный путь к текущему открытому каталогу (например, "
"[code]res://folder[/code] или [code]C:\\tmp\\folder[/code])."

msgid ""
"Returns the currently opened directory's drive index. See [method "
"get_drive_name] to convert returned index to the name of the drive."
msgstr ""
"Возвращает индекс диска текущего открытого каталога. См. [method "
"get_drive_name] для преобразования возвращаемого индекса в имя диска."

msgid ""
"Returns a [PackedStringArray] containing filenames of the directory contents, "
"excluding files. The array is sorted alphabetically.\n"
"Affected by [member include_hidden] and [member include_navigational].\n"
"[b]Note:[/b] The returned directories in the editor and after exporting in "
"the [code]res://[/code] directory may differ as some files are converted to "
"engine-specific formats when exported."
msgstr ""
"Возвращает [PackedStringArray], содержащий имена файлов содержимого каталога, "
"за исключением файлов. Массив сортируется в алфавитном порядке.\n"
"Влияет на [member include_hidden] и [member include_navigational].\n"
"[b]Примечание:[/b] Возвращаемые каталоги в редакторе и после экспорта в "
"каталог [code]res://[/code] могут отличаться, так как некоторые файлы при "
"экспорте преобразуются в форматы, специфичные для движка."

msgid ""
"Returns a [PackedStringArray] containing filenames of the directory contents, "
"excluding files, at the given [param path]. The array is sorted "
"alphabetically.\n"
"Use [method get_directories] if you want more control of what gets included.\n"
"[b]Note:[/b] The returned directories in the editor and after exporting in "
"the [code]res://[/code] directory may differ as some files are converted to "
"engine-specific formats when exported."
msgstr ""
"Возвращает [PackedStringArray], содержащий имена файлов содержимого каталога, "
"за исключением файлов, по указанному [param path]. Массив сортируется в "
"алфавитном порядке.\n"
"Используйте [method get_directories], если вам нужен больший контроль над "
"тем, что будет включено.\n"
"[b]Примечание:[/b] Возвращаемые каталоги в редакторе и после экспорта в "
"каталог [code]res://[/code] могут отличаться, поскольку некоторые файлы при "
"экспорте преобразуются в форматы, специфичные для движка."

msgid ""
"On Windows, returns the number of drives (partitions) mounted on the current "
"filesystem.\n"
"On macOS and Android, returns the number of mounted volumes.\n"
"On Linux, returns the number of mounted volumes and GTK 3 bookmarks.\n"
"On other platforms, the method returns 0."
msgstr ""
"В Windows возвращает количество дисков (разделов), смонтированных в текущей "
"файловой системе.\n"
"В macOS и Android возвращает количество смонтированных томов.\n"
"В Linux возвращает количество смонтированных томов и закладок GTK 3.\n"
"На других платформах метод возвращает 0."

msgid ""
"On Windows, returns the name of the drive (partition) passed as an argument "
"(e.g. [code]C:[/code]).\n"
"On macOS, returns the path to the mounted volume passed as an argument.\n"
"On Linux, returns the path to the mounted volume or GTK 3 bookmark passed as "
"an argument.\n"
"On Android (API level 30+), returns the path to the mounted volume as an "
"argument.\n"
"On other platforms, or if the requested drive does not exist, the method "
"returns an empty String."
msgstr ""
"В Windows возвращает имя диска (раздела), переданное в качестве аргумента "
"(например, [code]C:[/code]).\n"
"В macOS возвращает путь к смонтированному тому, переданному в качестве "
"аргумента.\n"
"В Linux возвращает путь к смонтированному тому или закладке GTK 3, переданной "
"в качестве аргумента.\n"
"В Android (уровень API 30+) возвращает путь к смонтированному тому в качестве "
"аргумента.\n"
"На других платформах или если запрошенный диск не существует, метод "
"возвращает пустую строку."

msgid ""
"Returns a [PackedStringArray] containing filenames of the directory contents, "
"excluding directories. The array is sorted alphabetically.\n"
"Affected by [member include_hidden].\n"
"[b]Note:[/b] When used on a [code]res://[/code] path in an exported project, "
"only the files actually included in the PCK at the given folder level are "
"returned. In practice, this means that since imported resources are stored in "
"a top-level [code].godot/[/code] folder, only paths to [code]*.gd[/code] and "
"[code]*.import[/code] files are returned (plus a few files such as "
"[code]project.godot[/code] or [code]project.binary[/code] and the project "
"icon). In an exported project, the list of returned files will also vary "
"depending on whether [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] is [code]true[/code]."
msgstr ""
"Возвращает [PackedStringArray], содержащий имена файлов содержимого каталога, "
"за исключением каталогов. Массив сортируется в алфавитном порядке.\n"
"Влияет на [member include_hidden].\n"
"[b]Примечание:[/b] При использовании в пути [code]res://[/code] в "
"экспортированном проекте возвращаются только файлы, фактически включенные в "
"PCK на заданном уровне папки. На практике это означает, что поскольку "
"импортированные ресурсы хранятся в папке верхнего уровня [code].godot/[/"
"code], возвращаются только пути к файлам [code]*.gd[/code] и [code]*.import[/"
"code] (плюс несколько файлов, таких как [code]project.godot[/code] или "
"[code]project.binary[/code] и значок проекта). В экспортированном проекте "
"список возвращаемых файлов также будет различаться в зависимости от того, "
"является ли [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] [code]true[/code]."

msgid ""
"Returns a [PackedStringArray] containing filenames of the directory contents, "
"excluding directories, at the given [param path]. The array is sorted "
"alphabetically.\n"
"Use [method get_files] if you want more control of what gets included.\n"
"[b]Note:[/b] When used on a [code]res://[/code] path in an exported project, "
"only the files included in the PCK at the given folder level are returned. In "
"practice, this means that since imported resources are stored in a top-level "
"[code].godot/[/code] folder, only paths to [code].gd[/code] and "
"[code].import[/code] files are returned (plus a few other files, such as "
"[code]project.godot[/code] or [code]project.binary[/code] and the project "
"icon). In an exported project, the list of returned files will also vary "
"depending on [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary]."
msgstr ""
"Возвращает [PackedStringArray], содержащий имена файлов содержимого каталога, "
"за исключением каталогов, по указанному [param path]. Массив сортируется в "
"алфавитном порядке.\n"
"Используйте [method get_files], если вам нужен больший контроль над тем, что "
"будет включено.\n"
"[b]Примечание:[/b] При использовании в пути [code]res://[/code] в "
"экспортированном проекте возвращаются только файлы, включенные в PCK на "
"указанном уровне папки. На практике это означает, что поскольку "
"импортированные ресурсы хранятся в папке верхнего уровня [code].godot/[/"
"code], возвращаются только пути к файлам [code].gd[/code] и [code].import[/"
"code] (плюс несколько других файлов, таких как [code]project.godot[/code] или "
"[code]project.binary[/code] и значок проекта). В экспортированном проекте "
"список возвращаемых файлов также будет различаться в зависимости от [member "
"ProjectSettings.editor/export/convert_text_resources_to_binary]."

msgid ""
"Returns file system type name of the current directory's disk. Returned "
"values are uppercase strings like [code]NTFS[/code], [code]FAT32[/code], "
"[code]EXFAT[/code], [code]APFS[/code], [code]EXT4[/code], [code]BTRFS[/code], "
"and so on.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux, Windows and for PCK "
"virtual file system."
msgstr ""
"Возвращает имя типа файловой системы диска текущего каталога. Возвращаемые "
"значения представляют собой строки в верхнем регистре, например [code]NTFS[/"
"code], [code]FAT32[/code], [code]EXFAT[/code], [code]APFS[/code], [code]EXT4[/"
"code], [code]BTRFS[/code] и т. д.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS, Linux, Windows и для "
"виртуальной файловой системы PCK."

msgid ""
"Returns the next element (file or directory) in the current directory.\n"
"The name of the file or directory is returned (and not its full path). Once "
"the stream has been fully processed, the method returns an empty [String] and "
"closes the stream automatically (i.e. [method list_dir_end] would not be "
"mandatory in such a case)."
msgstr ""
"Возвращает следующий элемент (файл или каталог) в текущем каталоге.\n"
"Возвращается имя файла или каталога (а не его полный путь). После полной "
"обработки потока метод возвращает пустую [String] и автоматически закрывает "
"поток (т. е. [method list_dir_end] не будет обязательным в таком случае)."

msgid "Returns the result of the last [method open] call in the current thread."
msgstr "Возвращает результат последнего вызова [method open] в текущем потоке."

msgid ""
"Returns the available space on the current directory's disk, in bytes. "
"Returns [code]0[/code] if the platform-specific method to query the available "
"space fails."
msgstr ""
"Возвращает доступное пространство на диске текущего каталога в байтах. "
"Возвращает [code]0[/code], если платформенно-зависимый метод запроса "
"доступного пространства не срабатывает."

msgid ""
"Returns [code]true[/code] if the directory is a macOS bundle.\n"
"[b]Note:[/b] This method is implemented on macOS."
msgstr ""
"Возвращает [code]true[/code], если каталог является пакетом macOS.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS."

msgid ""
"Returns [code]true[/code] if the file system or directory use case sensitive "
"file names.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux (for EXT4 and F2FS "
"filesystems only) and Windows. On other platforms, it always returns "
"[code]true[/code]."
msgstr ""
"Возвращает [code]true[/code], если файловая система или каталог используют "
"имена файлов, чувствительные к регистру.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS, Linux (только для файловых "
"систем EXT4 и F2FS) и Windows. На других платформах он всегда возвращает "
"[code]true[/code]."

msgid ""
"Returns [code]true[/code] if paths [param path_a] and [param path_b] resolve "
"to the same file system object. Returns [code]false[/code] otherwise, even if "
"the files are bit-for-bit identical (e.g., identical copies of the file that "
"are not symbolic links)."
msgstr ""
"Возвращает [code]true[/code], если пути [param path_a] и [param path_b] "
"разрешаются в один и тот же объект файловой системы. Возвращает [code]false[/"
"code] в противном случае, даже если файлы идентичны побитно (например, "
"идентичные копии файла, которые не являются символическими ссылками)."

msgid ""
"Returns [code]true[/code] if the file or directory is a symbolic link, "
"directory junction, or other reparse point.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux, and Windows."
msgstr ""
"Возвращает [code]true[/code], если файл или каталог является символической "
"ссылкой, соединением каталогов или другой точкой повторной обработки.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS, Linux и Windows."

msgid ""
"Initializes the stream used to list all files and directories using the "
"[method get_next] function, closing the currently opened stream if needed. "
"Once the stream has been processed, it should typically be closed with "
"[method list_dir_end].\n"
"Affected by [member include_hidden] and [member include_navigational].\n"
"[b]Note:[/b] The order of files and directories returned by this method is "
"not deterministic, and can vary between operating systems. If you want a list "
"of all files or folders sorted alphabetically, use [method get_files] or "
"[method get_directories]."
msgstr ""
"Инициализирует поток, используемый для перечисления всех файлов и каталогов с "
"помощью функции [method get_next], закрывая текущий открытый поток, если "
"необходимо. После обработки потока его обычно следует закрыть с помощью "
"[method list_dir_end].\n"
"Затрагивается [member include_hidden] и [member include_navigational].\n"
"[b]Примечание:[/b] Порядок файлов и каталогов, возвращаемых этим методом, не "
"является детерминированным и может различаться в зависимости от операционной "
"системы. Если вам нужен список всех файлов или папок, отсортированный в "
"алфавитном порядке, используйте [method get_files] или [method "
"get_directories]."

msgid ""
"Closes the current stream opened with [method list_dir_begin] (whether it has "
"been fully processed with [method get_next] does not matter)."
msgstr ""
"Закрывает текущий поток, открытый с помощью [method list_dir_begin] (не имеет "
"значения, был ли он полностью обработан с помощью [method get_next])."

msgid ""
"Creates a directory. The argument can be relative to the current directory, "
"or an absolute path. The target directory should be placed in an already "
"existing directory (to create the full path recursively, see [method "
"make_dir_recursive]).\n"
"Returns one of the [enum Error] code constants ([constant OK] on success)."
msgstr ""
"Создает каталог. Аргумент может быть относительным к текущему каталогу или "
"абсолютным путем. Целевой каталог должен быть помещен в уже существующий "
"каталог (чтобы создать полный путь рекурсивно, см. [method "
"make_dir_recursive]).\n"
"Возвращает одну из констант кода [enum Error] ([constant OK] при успешном "
"выполнении)."

msgid "Static version of [method make_dir]. Supports only absolute paths."
msgstr ""
"Статическая версия [method make_dir]. Поддерживает только абсолютные пути."

msgid ""
"Creates a target directory and all necessary intermediate directories in its "
"path, by calling [method make_dir] recursively. The argument can be relative "
"to the current directory, or an absolute path.\n"
"Returns one of the [enum Error] code constants ([constant OK] on success)."
msgstr ""
"Создает целевой каталог и все необходимые промежуточные каталоги в его пути, "
"вызывая [method make_dir] рекурсивно. Аргумент может быть относительным к "
"текущему каталогу или абсолютным путем. \n"
"Возвращает одну из констант кода [enum Error] ([constant OK] при успешном "
"выполнении)."

msgid ""
"Static version of [method make_dir_recursive]. Supports only absolute paths."
msgstr ""
"Статическая версия [method make_dir_recursive]. Поддерживает только "
"абсолютные пути."

msgid ""
"Creates a new [DirAccess] object and opens an existing directory of the "
"filesystem. The [param path] argument can be within the project tree "
"([code]res://folder[/code]), the user directory ([code]user://folder[/code]) "
"or an absolute path of the user filesystem (e.g. [code]/tmp/folder[/code] or "
"[code]C:\\tmp\\folder[/code]).\n"
"Returns [code]null[/code] if opening the directory failed. You can use "
"[method get_open_error] to check the error that occurred."
msgstr ""
"Создает новый объект [DirAccess] и открывает существующий каталог файловой "
"системы. Аргумент [param path] может находиться в дереве проекта ([code]res://"
"folder[/code]), пользовательском каталоге ([code]user://folder[/code]) или в "
"абсолютном пути пользовательской файловой системы (например, [code]/tmp/"
"folder[/code] или [code]C:\\tmp\\folder[/code]).\n"
"Возвращает [code]null[/code], если открытие каталога не удалось. Вы можете "
"использовать [method get_open_error] для проверки возникшей ошибки."

msgid ""
"Returns target of the symbolic link.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux, and Windows."
msgstr ""
"Возвращает цель символической ссылки.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS, Linux и Windows."

msgid ""
"Permanently deletes the target file or an empty directory. The argument can "
"be relative to the current directory, or an absolute path. If the target "
"directory is not empty, the operation will fail.\n"
"If you don't want to delete the file/directory permanently, use [method "
"OS.move_to_trash] instead.\n"
"Returns one of the [enum Error] code constants ([constant OK] on success)."
msgstr ""
"Окончательно удаляет целевой файл или пустой каталог. Аргумент может быть "
"относительным к текущему каталогу или абсолютным путем. Если целевой каталог "
"не пустой, операция завершится неудачей.\n"
"Если вы не хотите удалять файл/каталог навсегда, используйте вместо этого "
"[method OS.move_to_trash].\n"
"Возвращает одну из констант кода [enum Error] ([constant OK] при успешном "
"выполнении)."

msgid "Static version of [method remove]. Supports only absolute paths."
msgstr ""
"Статическая версия [method remove]. Поддерживает только абсолютные пути."

msgid ""
"Renames (move) the [param from] file or directory to the [param to] "
"destination. Both arguments should be paths to files or directories, either "
"relative or absolute. If the destination file or directory exists and is not "
"access-protected, it will be overwritten.\n"
"Returns one of the [enum Error] code constants ([constant OK] on success)."
msgstr ""
"Переименовывает (перемещает) файл или каталог [param from] в место назначения "
"[param to]. Оба аргумента должны быть путями к файлам или каталогам, "
"относительными или абсолютными. Если файл или каталог назначения существует и "
"не защищен от доступа, он будет перезаписан.\n"
"Возвращает одну из констант кода [enum Error] ([constant OK] при успешном "
"выполнении)."

msgid "Static version of [method rename]. Supports only absolute paths."
msgstr ""
"Статическая версия [method rename]. Поддерживает только абсолютные пути."

msgid ""
"If [code]true[/code], hidden files are included when navigating the "
"directory.\n"
"Affects [method list_dir_begin], [method get_directories] and [method "
"get_files]."
msgstr ""
"Если [code]true[/code], скрытые файлы включаются при навигации по каталогу.\n"
"Влияет на [method list_dir_begin], [method get_directories] и [method "
"get_files]."

msgid ""
"If [code]true[/code], [code].[/code] and [code]..[/code] are included when "
"navigating the directory.\n"
"Affects [method list_dir_begin] and [method get_directories]."
msgstr ""
"Если [code]true[/code], [code].[/code] и [code]..[/code] включены при "
"навигации по каталогу.\n"
"Влияет на [method list_dir_begin] и [method get_directories]."

msgid "Directional 2D light from a distance."
msgstr "Направленный 2D-свет на расстоянии."

msgid ""
"A directional light is a type of [Light2D] node that models an infinite "
"number of parallel rays covering the entire scene. It is used for lights with "
"strong intensity that are located far away from the scene (for example: to "
"model sunlight or moonlight).\n"
"Light is emitted in the +Y direction of the node's global basis. For an "
"unrotated light, this means that the light is emitted downwards. The position "
"of the node is ignored; only the basis is used to determine light direction.\n"
"[b]Note:[/b] [DirectionalLight2D] does not support light cull masks (but it "
"supports shadow cull masks). It will always light up 2D nodes, regardless of "
"the 2D node's [member CanvasItem.light_mask]."
msgstr ""
"Направленный источник света — это тип узла [Light2D], моделирующий "
"бесконечное число параллельных лучей, покрывающих всю сцену. Он используется "
"для источников света высокой интенсивности, расположенных далеко от сцены "
"(например, для моделирования солнечного или лунного света).\n"
"Свет излучается в направлении +Y глобального базиса узла. Для источника света "
"без вращения это означает, что свет излучается вниз. Положение узла "
"игнорируется; для определения направления света используется только базис.\n"
"[b]Примечание:[/b] [DirectionalLight2D] не поддерживает маски отсечения света "
"(но поддерживает маски отсечения тени). Он всегда освещает 2D-узлы, "
"независимо от [member CanvasItem.light_mask] 2D-узла."

msgid ""
"The height of the light. Used with 2D normal mapping. Ranges from 0 (parallel "
"to the plane) to 1 (perpendicular to the plane)."
msgstr ""
"Высота света. Используется с 2D-нормальным отображением. Диапазон от 0 "
"(параллельно плоскости) до 1 (перпендикулярно плоскости)."

msgid ""
"The maximum distance from the camera center objects can be before their "
"shadows are culled (in pixels). Decreasing this value can prevent objects "
"located outside the camera from casting shadows (while also improving "
"performance). [member Camera2D.zoom] is not taken into account by [member "
"max_distance], which means that at higher zoom values, shadows will appear to "
"fade out sooner when zooming onto a given point."
msgstr ""
"Максимальное расстояние от центра камеры до объектов, до того как их тени "
"будут отсечены (в пикселях). Уменьшение этого значения может предотвратить "
"отбрасывание теней объектами, расположенными за пределами камеры (и при этом "
"повысить производительность). [member Camera2D.zoom] не учитывается [member "
"max_distance], что означает, что при более высоких значениях масштабирования "
"тени будут исчезать быстрее при масштабировании заданной точки."

msgid "Directional light from a distance, as from the Sun."
msgstr "Направленный свет с расстояния, например, от Солнца."

msgid ""
"A directional light is a type of [Light3D] node that models an infinite "
"number of parallel rays covering the entire scene. It is used for lights with "
"strong intensity that are located far away from the scene to model sunlight "
"or moonlight.\n"
"Light is emitted in the -Z direction of the node's global basis. For an "
"unrotated light, this means that the light is emitted forwards, illuminating "
"the front side of a 3D model (see [constant Vector3.FORWARD] and [constant "
"Vector3.MODEL_FRONT]). The position of the node is ignored; only the basis is "
"used to determine light direction."
msgstr ""
"Направленный источник света — это тип узла [Light3D], моделирующий "
"бесконечное число параллельных лучей, покрывающих всю сцену. Он используется "
"для источников света высокой интенсивности, расположенных далеко от сцены, "
"для моделирования солнечного или лунного света.\n"
"Свет излучается в направлении -Z глобального базиса узла. Для невращающегося "
"источника света это означает, что свет излучается вперёд, освещая переднюю "
"сторону трёхмерной модели (см. [constant Vector3.FORWARD] и [constant "
"Vector3.MODEL_FRONT]). Положение узла игнорируется; для определения "
"направления света используется только базис."

msgid "3D lights and shadows"
msgstr "3D свет и тени"

msgid "Faking global illumination"
msgstr "Поддельное глобальное освещение"

msgid ""
"If [code]true[/code], shadow detail is sacrificed in exchange for smoother "
"transitions between splits. Enabling shadow blend splitting also has a "
"moderate performance cost. This is ignored when [member "
"directional_shadow_mode] is [constant SHADOW_ORTHOGONAL]."
msgstr ""
"Если [code]true[/code], детализация теней жертвуется в обмен на более плавные "
"переходы между разделениями. Включение разделения смешивания теней также "
"имеет умеренные затраты производительности. Это игнорируется, когда [member "
"directional_shadow_mode] равно [constant SHADOW_ORTHOGONAL]."

msgid ""
"Proportion of [member directional_shadow_max_distance] at which point the "
"shadow starts to fade. At [member directional_shadow_max_distance], the "
"shadow will disappear. The default value is a balance between smooth fading "
"and distant shadow visibility. If the camera moves fast and the [member "
"directional_shadow_max_distance] is low, consider lowering [member "
"directional_shadow_fade_start] below [code]0.8[/code] to make shadow "
"transitions less noticeable. On the other hand, if you tuned [member "
"directional_shadow_max_distance] to cover the entire scene, you can set "
"[member directional_shadow_fade_start] to [code]1.0[/code] to prevent the "
"shadow from fading in the distance (it will suddenly cut off instead)."
msgstr ""
"Пропорция [member directional_shadow_max_distance], в которой тень начинает "
"исчезать. В [member directional_shadow_max_distance] тень исчезнет. Значение "
"по умолчанию — это баланс между плавным исчезновением и видимостью тени на "
"расстоянии. Если камера движется быстро, а [member "
"directional_shadow_max_distance] низкое, рассмотрите возможность уменьшения "
"[member directional_shadow_fade_start] ниже [code]0.8[/code], чтобы сделать "
"переходы тени менее заметными. С другой стороны, если вы настроили [member "
"directional_shadow_max_distance] так, чтобы покрыть всю сцену, вы можете "
"установить [member directional_shadow_fade_start] на [code]1.0[/code], чтобы "
"предотвратить исчезновение тени на расстоянии (вместо этого она внезапно "
"обрежется)."

msgid ""
"The maximum distance for shadow splits. Increasing this value will make "
"directional shadows visible from further away, at the cost of lower overall "
"shadow detail and performance (since more objects need to be included in the "
"directional shadow rendering)."
msgstr ""
"Максимальное расстояние для разделения теней. Увеличение этого значения "
"сделает направленные тени видимыми с большего расстояния, за счет снижения "
"общей детализации теней и производительности (поскольку больше объектов "
"должны быть включены в рендеринг направленных теней)."

msgid "The light's shadow rendering algorithm."
msgstr "Алгоритм рендеринга тени света."

msgid ""
"Sets the size of the directional shadow pancake. The pancake offsets the "
"start of the shadow's camera frustum to provide a higher effective depth "
"resolution for the shadow. However, a high pancake size can cause artifacts "
"in the shadows of large objects that are close to the edge of the frustum. "
"Reducing the pancake size can help. Setting the size to [code]0[/code] turns "
"off the pancaking effect."
msgstr ""
"Устанавливает размер направленного блина тени. Блин смещает начало усеченной "
"пирамиды тени, чтобы обеспечить более высокое эффективное разрешение глубины "
"для тени. Однако большой размер блина может привести к появлению артефактов в "
"тенях крупных объектов, которые находятся близко к краю пирамиды. Уменьшение "
"размера блина может помочь. Установка размера на [code]0[/code] отключает "
"эффект блина."

msgid ""
"The distance from camera to shadow split 1. Relative to [member "
"directional_shadow_max_distance]. Only used when [member "
"directional_shadow_mode] is [constant SHADOW_PARALLEL_2_SPLITS] or [constant "
"SHADOW_PARALLEL_4_SPLITS]."
msgstr ""
"Расстояние от камеры до точки разделения тени 1. Относительно [member "
"directional_shadow_max_distance]. Используется только тогда, когда [member "
"directional_shadow_mode] равно [constant SHADOW_PARALLEL_2_SPLITS] или "
"[constant SHADOW_PARALLEL_4_SPLITS]."

msgid ""
"The distance from shadow split 1 to split 2. Relative to [member "
"directional_shadow_max_distance]. Only used when [member "
"directional_shadow_mode] is [constant SHADOW_PARALLEL_4_SPLITS]."
msgstr ""
"Расстояние от теневого разделения 1 до разделения 2. Относительно [member "
"directional_shadow_max_distance]. Используется только когда [member "
"directional_shadow_mode] равен [constant SHADOW_PARALLEL_4_SPLITS]."

msgid ""
"The distance from shadow split 2 to split 3. Relative to [member "
"directional_shadow_max_distance]. Only used when [member "
"directional_shadow_mode] is [constant SHADOW_PARALLEL_4_SPLITS]."
msgstr ""
"Расстояние от точки разделения тени 2 до точки разделения 3. Относительно "
"[member directional_shadow_max_distance]. Используется только тогда, когда "
"[member directional_shadow_mode] равен [constant SHADOW_PARALLEL_4_SPLITS]."

msgid ""
"Whether this [DirectionalLight3D] is visible in the sky, in the scene, or "
"both in the sky and in the scene."
msgstr ""
"Виден ли этот [DirectionalLight3D] на небе, на сцене или и на небе, и на "
"сцене."

msgid ""
"Renders the entire scene's shadow map from an orthogonal point of view. This "
"is the fastest directional shadow mode. May result in blurrier shadows on "
"close objects."
msgstr ""
"Визуализирует всю карту теней сцены с ортогональной точки зрения. Это самый "
"быстрый режим направленных теней. Может привести к более размытым теням на "
"близких объектах."

msgid ""
"Splits the view frustum in 2 areas, each with its own shadow map. This shadow "
"mode is a compromise between [constant SHADOW_ORTHOGONAL] and [constant "
"SHADOW_PARALLEL_4_SPLITS] in terms of performance."
msgstr ""
"Разделяет вид усеченной пирамиды на 2 области, каждая со своей собственной "
"картой теней. Этот режим теней является компромиссом между [constant "
"SHADOW_ORTHOGONAL] и [constant SHADOW_PARALLEL_4_SPLITS] с точки зрения "
"производительности."

msgid ""
"Splits the view frustum in 4 areas, each with its own shadow map. This is the "
"slowest directional shadow mode."
msgstr ""
"Разделяет вид усеченной пирамиды на 4 области, каждая со своей собственной "
"картой теней. Это самый медленный режим направленной тени."

msgid "Makes the light visible in both scene lighting and sky rendering."
msgstr ""
"Делает свет видимым как при освещении сцены, так и при визуализации неба."

msgid ""
"Makes the light visible in scene lighting only (including direct lighting and "
"global illumination). When using this mode, the light will not be visible "
"from sky shaders."
msgstr ""
"Делает свет видимым только в освещении сцены (включая прямое освещение и "
"глобальное освещение). При использовании этого режима свет не будет виден из "
"шейдеров неба."

msgid ""
"Makes the light visible to sky shaders only. When using this mode the light "
"will not cast light into the scene (either through direct lighting or through "
"global illumination), but can be accessed through sky shaders. This can be "
"useful, for example, when you want to control sky effects without "
"illuminating the scene (during a night cycle, for example)."
msgstr ""
"Делает свет видимым только для шейдеров неба. При использовании этого режима "
"свет не будет отбрасывать свет на сцену (ни через прямое освещение, ни через "
"глобальное освещение), но к нему можно получить доступ через шейдеры неба. "
"Это может быть полезно, например, когда вы хотите управлять эффектами неба, "
"не освещая сцену (например, во время ночного цикла)."

msgid "A server interface for low-level window management."
msgstr "Серверный интерфейс для низкоуровневого управления окнами."

msgid ""
"[DisplayServer] handles everything related to window management. It is "
"separated from [OS] as a single operating system may support multiple display "
"servers.\n"
"[b]Headless mode:[/b] Starting the engine with the [code]--headless[/code] "
"[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command line "
"argument[/url] disables all rendering and window management functions. Most "
"functions from [DisplayServer] will return dummy values in this case."
msgstr ""
"[DisplayServer] обрабатывает все, что связано с управлением окнами. Он "
"отделен от [OS], поскольку одна операционная система может поддерживать "
"несколько серверов отображения.\n"
"[b]Режим Headless:[/b] Запуск движка с [code]--headless[/code] [url=$DOCS_URL/"
"tutorials/editor/command_line_tutorial.html]аргументом командной строки[/url] "
"отключает все функции рендеринга и управления окнами. Большинство функций из "
"[DisplayServer] в этом случае будут возвращать фиктивные значения."

msgid ""
"Creates a new, empty accessibility element resource.\n"
"[b]Note:[/b] An accessibility element is created and freed automatically for "
"each [Node]. In general, this function should not be called manually."
msgstr ""
"Создает новый, пустой ресурс элемента доступности.\n"
"[b]Примечание:[/b] Элемент доступности создается и освобождается "
"автоматически для каждого [Node]. В общем случае эту функцию не следует "
"вызывать вручную."

msgid ""
"Creates a new, empty accessibility sub-element resource. Sub-elements can be "
"used to provide accessibility information for objects which are not [Node]s, "
"such as list items, table cells, or menu items. Sub-elements are freed "
"automatically when the parent element is freed, or can be freed early using "
"the [method accessibility_free_element] method."
msgstr ""
"Создает новый, пустой ресурс подэлемента доступности. Подэлементы могут "
"использоваться для предоставления информации о доступности для объектов, "
"которые не являются [Node], таких как элементы списка, ячейки таблицы или "
"пункты меню. Подэлементы освобождаются автоматически при освобождении "
"родительского элемента или могут быть освобождены заранее с помощью метода "
"[method accessibility_free_element]."

msgid ""
"Creates a new, empty accessibility sub-element from the shaped text buffer. "
"Sub-elements are freed automatically when the parent element is freed, or can "
"be freed early using the [method accessibility_free_element] method."
msgstr ""
"Создает новый, пустой подэлемент доступности из сформированного текстового "
"буфера. Подэлементы освобождаются автоматически при освобождении "
"родительского элемента или могут быть освобождены заранее с помощью метода "
"[method accessibility_free_element]."

msgid "Returns the metadata of the accessibility element."
msgstr "Возвращает метаданные элемента доступности."

msgid "Sets the metadata of the accessibility element."
msgstr "Устанавливает метаданные элемента доступности."

msgid ""
"Frees an object created by [method accessibility_create_element], [method "
"accessibility_create_sub_element], or [method "
"accessibility_create_sub_text_edit_elements]."
msgstr ""
"Освобождает объект, созданный с помощью [method "
"accessibility_create_element], [method accessibility_create_sub_element] или "
"[method accessibility_create_sub_text_edit_elements]."

msgid "Returns the main accessibility element of the OS native window."
msgstr "Возвращает основной элемент доступности собственного окна ОС."

msgid ""
"Returns [code]true[/code] if [param id] is a valid accessibility element."
msgstr ""
"Возвращает [code]true[/code], если [param id] является допустимым элементом "
"доступности."

msgid ""
"Returns [code]1[/code] if a screen reader, Braille display or other assistive "
"app is active, [code]0[/code] otherwise. Returns [code]-1[/code] if status is "
"unknown.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, and Windows.\n"
"[b]Note:[/b] Accessibility debugging tools, such as Accessibility Insights "
"for Windows, macOS Accessibility Inspector, or AT-SPI Browser do not count as "
"assistive apps and will not affect this value. To test your app with these "
"tools, set [member ProjectSettings.accessibility/general/"
"accessibility_support] to [code]1[/code]."
msgstr ""
"Возвращает [code]1[/code], если активен экранный диктор, дисплей Брайля или "
"другое вспомогательное приложение, в противном случае — [code]0[/code]. "
"Возвращает [code]-1[/code], если статус неизвестен.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS и Windows.\n"
"[b]Примечание:[/b] Инструменты отладки доступности, такие как Accessibility "
"Insights для Windows, macOS Accessibility Inspector или AT-SPI Browser, не "
"считаются вспомогательными приложениями и не повлияют на это значение. Чтобы "
"протестировать приложение с помощью этих инструментов, установите [member "
"ProjectSettings.accessibility/general/accessibility_support] на [code]1[/"
"code]."

msgid ""
"Sets the window focused state for assistive apps.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, and Windows.\n"
"[b]Note:[/b] Advanced users only! [Window] objects call this method "
"automatically."
msgstr ""
"Устанавливает состояние фокуса окна для вспомогательных приложений.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS и Windows.\n"
"[b]Примечание:[/b] Только для опытных пользователей! Объекты [Window] "
"вызывают этот метод автоматически."

msgid ""
"Sets window outer (with decorations) and inner (without decorations) bounds "
"for assistive apps.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, and Windows.\n"
"[b]Note:[/b] Advanced users only! [Window] objects call this method "
"automatically."
msgstr ""
"Устанавливает внешние (с украшениями) и внутренние (без украшений) границы "
"окна для вспомогательных приложений.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS и Windows.\n"
"[b]Примечание:[/b] Только для опытных пользователей! Объекты [Window] "
"вызывают этот метод автоматически."

msgid ""
"Returns [code]1[/code] if a high-contrast user interface theme should be "
"used, [code]0[/code] otherwise. Returns [code]-1[/code] if status is "
"unknown.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland, GNOME), macOS, "
"and Windows."
msgstr ""
"Возвращает [code]1[/code], если следует использовать высококонтрастную тему "
"пользовательского интерфейса, в противном случае [code]0[/code]. Возвращает "
"[code]-1[/code], если статус неизвестен.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11/Wayland, GNOME), macOS "
"и Windows."

msgid ""
"Returns [code]1[/code] if flashing, blinking, and other moving content that "
"can cause seizures in users with photosensitive epilepsy should be disabled, "
"[code]0[/code] otherwise. Returns [code]-1[/code] if status is unknown.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает [code]1[/code], если мигание, мерцание и другой движущийся "
"контент, который может вызвать припадки у пользователей с фоточувствительной "
"эпилепсией, следует отключить, в противном случае — [code]0[/code]. "
"Возвращает [code]-1[/code], если статус неизвестен.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns [code]1[/code] if background images, transparency, and other features "
"that can reduce the contrast between the foreground and background should be "
"disabled, [code]0[/code] otherwise. Returns [code]-1[/code] if status is "
"unknown.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает [code]1[/code], если фоновые изображения, прозрачность и другие "
"функции, которые могут уменьшить контраст между передним планом и фоном, "
"должны быть отключены, [code]0[/code] в противном случае. Возвращает "
"[code]-1[/code], если статус неизвестен.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Adds a callback for the accessibility action (action which can be performed "
"by using a special screen reader command or buttons on the Braille display), "
"and marks this action as supported. The action callback receives one "
"[Variant] argument, which value depends on action type."
msgstr ""
"Добавляет обратный вызов для действия доступности (действие, которое может "
"быть выполнено с помощью специальной команды экранного диктора или кнопок на "
"дисплее Брайля) и отмечает это действие как поддерживаемое. Обратный вызов "
"действия получает один аргумент [Variant], значение которого зависит от типа "
"действия."

msgid ""
"Adds a child accessibility element.\n"
"[b]Note:[/b] [Node] children and sub-elements are added to the child list "
"automatically."
msgstr ""
"Добавляет дочерний элемент доступности.\n"
"[b]Примечание:[/b] Дочерние и подэлементы [Node] добавляются в список "
"дочерних элементов автоматически."

msgid ""
"Adds support for a custom accessibility action. [param action_id] is passed "
"as an argument to the callback of [constant ACTION_CUSTOM] action."
msgstr ""
"Добавляет поддержку для настраиваемого действия специальных возможностей. "
"[param action_id] передается как аргумент обратному вызову действия [constant "
"ACTION_CUSTOM]."

msgid "Adds an element that is controlled by this element."
msgstr "Добавляет элемент, который контролируется данным элементом."

msgid "Adds an element that describes this element."
msgstr "Добавляет элемент, описывающий этот элемент."

msgid "Adds an element that details this element."
msgstr "Добавляет элемент, детализирующий этот элемент."

msgid "Adds an element that this element flow into."
msgstr "Добавляет элемент, в который вливается данный элемент."

msgid "Adds an element that labels this element."
msgstr "Добавляет элемент, маркирующий этот элемент."

msgid ""
"Adds an element that is part of the same radio group.\n"
"[b]Note:[/b] This method should be called on each element of the group, using "
"all other elements as [param related_id]."
msgstr ""
"Добавляет элемент, который является частью той же радиогруппы.\n"
"[b]Примечание:[/b] Этот метод следует вызывать для каждого элемента группы, "
"используя все остальные элементы как [param related_id]."

msgid "Adds an element that is an active descendant of this element."
msgstr "Добавляет элемент, который является активным потомком данного элемента."

msgid "Sets element background color."
msgstr "Устанавливает цвет фона элемента."

msgid "Sets element bounding box, relative to the node position."
msgstr ""
"Устанавливает ограничивающую рамку элемента относительно положения узла."

msgid "Sets element checked state."
msgstr "Устанавливает состояние проверки элемента."

msgid "Sets element class name."
msgstr "Задает имя класса элемента."

msgid "Sets element color value."
msgstr "Устанавливает значение цвета элемента."

msgid "Sets element accessibility description."
msgstr "Устанавливает описание доступности элемента."

msgid "Sets an element which contains an error message for this element."
msgstr ""
"Устанавливает элемент, содержащий сообщение об ошибке для этого элемента."

msgid "Sets element accessibility extra information added to the element name."
msgstr ""
"Устанавливает дополнительную информацию о доступности элемента, добавляемую к "
"имени элемента."

msgid "Sets element flag."
msgstr "Устанавливает флаг элемента."

msgid "Sets currently focused element."
msgstr "Устанавливает текущий элемент, находящийся в фокусе."

msgid "Sets element foreground color."
msgstr "Устанавливает цвет переднего плана элемента."

msgid "Sets target element for the link."
msgstr "Устанавливает цель элемента для ссылки."

msgid "Sets element text language."
msgstr "Устанавливает язык текста элемента."

msgid "Sets number of items in the list."
msgstr "Устанавливает количество элементов в списке."

msgid "Sets list/tree item expanded status."
msgstr "Устанавливает развернутый статус элемента списка/дерева."

msgid "Sets the position of the element in the list."
msgstr "Устанавливает позицию элемента в списке."

msgid "Sets the hierarchical level of the element in the list."
msgstr "Устанавливает иерархический уровень элемента в списке."

msgid "Sets list/tree item selected status."
msgstr "Устанавливает статус выбранного элемента списка/дерева."

msgid "Sets the orientation of the list elements."
msgstr "Задает ориентацию элементов списка."

msgid "Sets the priority of the live region updates."
msgstr "Устанавливает приоритет обновлений региона в реальном времени."

msgid "Sets the element to be a member of the group."
msgstr "Устанавливает элемент как член группы."

msgid "Sets element accessibility name."
msgstr "Устанавливает имя доступности элемента."

msgid "Sets next element on the line."
msgstr "Устанавливает следующий элемент в строке."

msgid "Sets numeric value jump."
msgstr "Устанавливает скачок числового значения."

msgid "Sets numeric value range."
msgstr "Устанавливает диапазон числовых значений."

msgid "Sets numeric value step."
msgstr "Устанавливает шаг числового значения."

msgid "Sets numeric value."
msgstr "Устанавливает числовое значение."

msgid "Sets placeholder text."
msgstr "Устанавливает текст-заполнитель."

msgid "Sets popup type for popup buttons."
msgstr "Устанавливает тип всплывающего окна для всплывающих кнопок."

msgid "Sets previous element on the line."
msgstr "Устанавливает предыдущий элемент в строке."

msgid "Sets element accessibility role."
msgstr "Устанавливает роль доступности элемента."

msgid "Sets element accessibility role description text."
msgstr "Устанавливает текст описания роли доступности элемента."

msgid "Sets scroll bar x position."
msgstr "Устанавливает положение полосы прокрутки по оси x."

msgid "Sets scroll bar x range."
msgstr "Устанавливает диапазон полосы прокрутки x."

msgid "Sets scroll bar y position."
msgstr "Устанавливает положение полосы прокрутки по оси Y."

msgid "Sets scroll bar y range."
msgstr "Устанавливает диапазон прокрутки по оси Y."

msgid "Sets the list of keyboard shortcuts used by element."
msgstr "Задает список сочетаний клавиш, используемых элементом."

msgid "Sets human-readable description of the current checked state."
msgstr ""
"Устанавливает понятное человеку описание текущего отмеченного состояния."

msgid "Sets cell position in the table."
msgstr "Устанавливает положение ячейки в таблице."

msgid "Sets cell row/column span."
msgstr "Устанавливает диапазон строк/столбцов ячеек."

msgid "Sets number of columns in the table."
msgstr "Задает количество столбцов в таблице."

msgid "Sets position of the column."
msgstr "Устанавливает положение столбца."

msgid "Sets number of rows in the table."
msgstr "Устанавливает количество строк в таблице."

msgid "Sets position of the row in the table."
msgstr "Устанавливает положение строки в таблице."

msgid "Sets element text alignment."
msgstr "Устанавливает выравнивание текста элемента."

msgid "Sets text underline/overline/strikethrough."
msgstr "Устанавливает подчеркивание/надчеркивание/зачеркивание текста."

msgid "Sets text orientation."
msgstr "Устанавливает ориентацию текста."

msgid ""
"Sets text selection to the text field. [param text_start_id] and [param "
"text_end_id] should be elements created by [method "
"accessibility_create_sub_text_edit_elements]. Character offsets are relative "
"to the corresponding element."
msgstr ""
"Устанавливает выделение текста в текстовое поле. [param text_start_id] и "
"[param text_end_id] должны быть элементами, созданными [method "
"accessibility_create_sub_text_edit_elements]. Смещения символов указаны "
"относительно соответствующего элемента."

msgid "Sets tooltip text."
msgstr "Устанавливает текст подсказки."

msgid "Sets element 2D transform."
msgstr "Устанавливает 2D-преобразование элемента."

msgid "Sets link URL."
msgstr "Устанавливает URL-адрес ссылки."

msgid "Sets element text value."
msgstr "Устанавливает текстовое значение элемента."

msgid ""
"Plays the beep sound from the operative system, if possible. Because it comes "
"from the OS, the beep sound will be audible even if the application is muted. "
"It may also be disabled for the entire OS by the user.\n"
"[b]Note:[/b] This method is implemented on macOS, Linux (X11/Wayland), and "
"Windows."
msgstr ""
"Воспроизводит звуковой сигнал из операционной системы, если это возможно. "
"Поскольку он исходит от ОС, звуковой сигнал будет слышен, даже если "
"приложение отключено. Он также может быть отключен для всей ОС "
"пользователем.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS, Linux (X11/Wayland) и "
"Windows."

msgid "Returns the user's clipboard as a string if possible."
msgstr "Возвращает буфер обмена пользователя в виде строки, если это возможно."

msgid ""
"Returns the user's clipboard as an image if possible.\n"
"[b]Note:[/b] This method uses the copied pixel data, e.g. from an image "
"editing software or a web browser, not an image file copied from file "
"explorer."
msgstr ""
"Возвращает содержимое буфера обмена пользователя в виде изображения, если это "
"возможно.\n"
"[b]Примечание:[/b] Этот метод использует скопированные пиксельные данные, "
"например, из программы для редактирования изображений или веб-браузера, а не "
"файл изображения, скопированный из проводника."

msgid ""
"Returns the user's [url=https://unix.stackexchange.com/questions/139191/whats-"
"the-difference-between-primary-selection-and-clipboard-buffer]primary[/url] "
"clipboard as a string if possible. This is the clipboard that is set when the "
"user selects text in any application, rather than when pressing [kbd]Ctrl + "
"C[/kbd]. The clipboard data can then be pasted by clicking the middle mouse "
"button in any application that supports the primary clipboard mechanism.\n"
"[b]Note:[/b] This method is only implemented on Linux (X11/Wayland)."
msgstr ""
"Возвращает [url=https://unix.stackexchange.com/questions/139191/whats-the-"
"difference-between-primary-selection-and-clipboard-buffer]основной[/url] "
"буфер обмена пользователя в виде строки, если это возможно. Это буфер обмена, "
"который устанавливается, когда пользователь выделяет текст в любом "
"приложении, а не при нажатии [kbd]Ctrl + C[/kbd]. Затем данные буфера обмена "
"можно вставить, щелкнув среднюю кнопку мыши в любом приложении, которое "
"поддерживает механизм основного буфера обмена.\n"
"[b]Примечание:[/b] Этот метод реализован только в Linux (X11/Wayland)."

msgid ""
"Returns [code]true[/code] if there is a text content on the user's clipboard."
msgstr ""
"Возвращает [code]true[/code], если в буфере обмена пользователя есть "
"текстовое содержимое."

msgid ""
"Returns [code]true[/code] if there is an image content on the user's "
"clipboard."
msgstr ""
"Возвращает [code]true[/code], если в буфере обмена пользователя есть "
"изображение."

msgid "Sets the user's clipboard content to the given string."
msgstr ""
"Устанавливает содержимое буфера обмена пользователя в соответствии с заданной "
"строкой."

msgid ""
"Sets the user's [url=https://unix.stackexchange.com/questions/139191/whats-"
"the-difference-between-primary-selection-and-clipboard-buffer]primary[/url] "
"clipboard content to the given string. This is the clipboard that is set when "
"the user selects text in any application, rather than when pressing [kbd]Ctrl "
"+ C[/kbd]. The clipboard data can then be pasted by clicking the middle mouse "
"button in any application that supports the primary clipboard mechanism.\n"
"[b]Note:[/b] This method is only implemented on Linux (X11/Wayland)."
msgstr ""
"Устанавливает содержимое буфера обмена пользователя [url=https://"
"unix.stackexchange.com/questions/139191/whats-the-difference-between-primary-"
"selection-and-clipboard-buffer]основного[/url] на указанную строку. Это буфер "
"обмена, который устанавливается, когда пользователь выделяет текст в любом "
"приложении, а не при нажатии [kbd]Ctrl + C[/kbd]. Затем данные буфера обмена "
"можно вставить, щелкнув среднюю кнопку мыши в любом приложении, которое "
"поддерживает механизм основного буфера обмена.\n"
"[b]Примечание:[/b] Этот метод реализован только в Linux (X11/Wayland)."

msgid ""
"Displays OS native color picker.\n"
"Callbacks have the following arguments: [code]status: bool, color: Color[/"
"code].\n"
"[b]Note:[/b] This method is implemented if the display server has the "
"[constant FEATURE_NATIVE_COLOR_PICKER] feature.\n"
"[b]Note:[/b] This method is only implemented on Linux (X11/Wayland)."
msgstr ""
"Отображает собственный выбор цвета ОС.\n"
"Обратные вызовы имеют следующие аргументы: [code]status: bool, color: Color[/"
"code].\n"
"[b]Примечание:[/b] Этот метод реализован, если сервер отображения имеет "
"функцию [constant FEATURE_NATIVE_COLOR_PICKER].\n"
"[b]Примечание:[/b] Этот метод реализован только в Linux (X11/Wayland)."

msgid ""
"Creates a new application status indicator with the specified icon, tooltip, "
"and activation callback.\n"
"[param callback] should take two arguments: the pressed mouse button (one of "
"the [enum MouseButton] constants) and the click position in screen "
"coordinates (a [Vector2i])."
msgstr ""
"Создает новый индикатор состояния приложения с указанным значком, подсказкой "
"и обратным вызовом активации.\n"
"[param callback] должен принимать два аргумента: нажатую кнопку мыши (одну из "
"констант [enum MouseButton]) и позицию щелчка в координатах экрана (a "
"[Vector2i])."

msgid "Returns the default mouse cursor shape set by [method cursor_set_shape]."
msgstr ""
"Возвращает форму курсора мыши по умолчанию, установленную [method "
"cursor_set_shape]."

msgid ""
"Sets a custom mouse cursor image for the given [param shape]. This means the "
"user's operating system and mouse cursor theme will no longer influence the "
"mouse cursor's appearance.\n"
"[param cursor] can be either a [Texture2D] or an [Image], and it should not "
"be larger than 256×256 to display correctly. Optionally, [param hotspot] can "
"be set to offset the image's position relative to the click point. By "
"default, [param hotspot] is set to the top-left corner of the image. See also "
"[method cursor_set_shape]."
msgstr ""
"Устанавливает пользовательское изображение курсора мыши для заданного [param "
"shape]. Это означает, что операционная система пользователя и тема курсора "
"мыши больше не будут влиять на внешний вид курсора мыши.\n"
"[param cursor] может быть либо [Texture2D], либо [Image], и он не должен быть "
"больше 256×256 для правильного отображения. При желании [param hotspot] можно "
"задать для смещения положения изображения относительно точки щелчка. По "
"умолчанию [param hotspot] устанавливается в верхнем левом углу изображения. "
"См. также [method cursor_set_shape]."

msgid ""
"Sets the default mouse cursor shape. The cursor's appearance will vary "
"depending on the user's operating system and mouse cursor theme. See also "
"[method cursor_get_shape] and [method cursor_set_custom_image]."
msgstr ""
"Устанавливает форму курсора мыши по умолчанию. Внешний вид курсора будет "
"зависеть от операционной системы пользователя и темы курсора мыши. См. также "
"[method cursor_get_shape] и [method cursor_set_custom_image]."

msgid "Removes the application status indicator."
msgstr "Удаляет индикатор состояния приложения."

msgid ""
"Shows a text input dialog which uses the operating system's native look-and-"
"feel. [param callback] should accept a single [String] parameter which "
"contains the text field's contents.\n"
"[b]Note:[/b] This method is implemented if the display server has the "
"[constant FEATURE_NATIVE_DIALOG_INPUT] feature. Supported platforms include "
"macOS, Windows, and Android."
msgstr ""
"Показывает диалоговое окно ввода текста, которое использует собственный стиль "
"операционной системы. [param callback] должен принимать один параметр "
"[String], содержащий содержимое текстового поля.\n"
"[b]Примечание:[/b] Этот метод реализуется, если сервер отображения имеет "
"функцию [constant FEATURE_NATIVE_DIALOG_INPUT]. Поддерживаемые платформы "
"включают macOS, Windows и Android."

msgid ""
"Shows a text dialog which uses the operating system's native look-and-feel. "
"[param callback] should accept a single [int] parameter which corresponds to "
"the index of the pressed button.\n"
"[b]Note:[/b] This method is implemented if the display server has the "
"[constant FEATURE_NATIVE_DIALOG] feature. Supported platforms include macOS, "
"Windows, and Android."
msgstr ""
"Показывает текстовый диалог, который использует собственный стиль "
"операционной системы. [param callback] должен принимать один параметр [int], "
"который соответствует индексу нажатой кнопки.\n"
"[b]Примечание:[/b] Этот метод реализуется, если сервер отображения имеет "
"функцию [constant FEATURE_NATIVE_DIALOG]. Поддерживаемые платформы включают "
"macOS, Windows и Android."

msgid ""
"Allows the [param process_id] PID to steal focus from this window. In other "
"words, this disables the operating system's focus stealing protection for the "
"specified PID.\n"
"[b]Note:[/b] This method is implemented only on Windows."
msgstr ""
"Позволяет [param process_id] PID украсть фокус из этого окна. Другими "
"словами, это отключает защиту операционной системы от украденного фокуса для "
"указанного PID.\n"
"[b]Примечание:[/b] Этот метод реализован только в Windows."

msgid ""
"Displays OS native dialog for selecting files or directories in the file "
"system.\n"
"Each filter string in the [param filters] array should be formatted like "
"this: [code]*.png,*.jpg,*.jpeg;Image Files;image/png,image/jpeg[/code]. The "
"description text of the filter is optional and can be omitted. It is "
"recommended to set both file extension and MIME type. See also [member "
"FileDialog.filters].\n"
"Callbacks have the following arguments: [code]status: bool, selected_paths: "
"PackedStringArray, selected_filter_index: int[/code]. [b]On Android,[/b] the "
"third callback argument ([code]selected_filter_index[/code]) is always "
"[code]0[/code].\n"
"[b]Note:[/b] This method is implemented if the display server has the "
"[constant FEATURE_NATIVE_DIALOG_FILE] feature. Supported platforms include "
"Linux (X11/Wayland), Windows, macOS, and Android (API level 29+).\n"
"[b]Note:[/b] [param current_directory] might be ignored.\n"
"[b]Note:[/b] Embedded file dialog and Windows file dialog support only file "
"extensions, while Android, Linux, and macOS file dialogs also support MIME "
"types.\n"
"[b]Note:[/b] On Android and Linux, [param show_hidden] is ignored.\n"
"[b]Note:[/b] On Android and macOS, native file dialogs have no title.\n"
"[b]Note:[/b] On macOS, sandboxed apps will save security-scoped bookmarks to "
"retain access to the opened folders across multiple sessions. Use [method "
"OS.get_granted_permissions] to get a list of saved bookmarks."
msgstr ""
"Отображает встроенный диалог ОС для выбора файлов или каталогов в файловой "
"системе.\n"
"Каждая строка фильтра в массиве [param filters] должна быть отформатирована "
"следующим образом: [code]*.png,*.jpg,*.jpeg;Image Files;image/png,image/jpeg[/"
"code]. Текст описания фильтра необязателен и может быть опущен. Рекомендуется "
"указать как расширение файла, так и тип MIME. См. также [member "
"FileDialog.filters].\n"
"Обратные вызовы имеют следующие аргументы: [code]status: bool, "
"selected_paths: PackedStringArray, selected_filter_index: int[/code]. [b]На "
"Android[/b] третий аргумент обратного вызова ([code]selected_filter_index[/"
"code]) всегда равен [code]0[/code].\n"
"[b]Примечание:[/b] Этот метод реализуется, если на сервере отображения есть "
"функция [constant FEATURE_NATIVE_DIALOG_FILE]. Поддерживаемые платформы: "
"Linux (X11/Wayland), Windows, macOS и Android (уровень API 29+).\n"
"[b]Примечание:[/b] Параметр [param current_directory] может быть "
"проигнорирован.\n"
"[b]Примечание:[/b] Встроенные диалоговые окна выбора файлов и диалоговые окна "
"выбора файлов Windows поддерживают только расширения файлов, тогда как "
"диалоговые окна выбора файлов Android, Linux и macOS также поддерживают типы "
"MIME.\n"
"[b]Примечание:[/b] В Android и Linux параметр [param show_hidden] "
"игнорируется.\n"
"[b]Примечание:[/b] В Android и macOS собственные диалоговые окна выбора "
"файлов не имеют заголовка.\n"
"[b]Примечание:[/b] В macOS изолированные приложения сохраняют закладки, "
"защищенные областью безопасности, чтобы обеспечить доступ к открытым папкам в "
"течение нескольких сеансов. Используйте [method OS.get_granted_permissions] "
"для получения списка сохранённых закладок."

msgid ""
"Displays OS native dialog for selecting files or directories in the file "
"system with additional user selectable options.\n"
"Each filter string in the [param filters] array should be formatted like "
"this: [code]*.png,*.jpg,*.jpeg;Image Files;image/png,image/jpeg[/code]. The "
"description text of the filter is optional and can be omitted. It is "
"recommended to set both file extension and MIME type. See also [member "
"FileDialog.filters].\n"
"[param options] is array of [Dictionary]s with the following keys:\n"
"- [code]\"name\"[/code] - option's name [String].\n"
"- [code]\"values\"[/code] - [PackedStringArray] of values. If empty, boolean "
"option (check box) is used.\n"
"- [code]\"default\"[/code] - default selected option index ([int]) or default "
"boolean value ([bool]).\n"
"Callbacks have the following arguments: [code]status: bool, selected_paths: "
"PackedStringArray, selected_filter_index: int, selected_option: Dictionary[/"
"code].\n"
"[b]Note:[/b] This method is implemented if the display server has the "
"[constant FEATURE_NATIVE_DIALOG_FILE_EXTRA] feature. Supported platforms "
"include Linux (X11/Wayland), Windows, and macOS.\n"
"[b]Note:[/b] [param current_directory] might be ignored.\n"
"[b]Note:[/b] Embedded file dialog and Windows file dialog support only file "
"extensions, while Android, Linux, and macOS file dialogs also support MIME "
"types.\n"
"[b]Note:[/b] On Linux (X11), [param show_hidden] is ignored.\n"
"[b]Note:[/b] On macOS, native file dialogs have no title.\n"
"[b]Note:[/b] On macOS, sandboxed apps will save security-scoped bookmarks to "
"retain access to the opened folders across multiple sessions. Use [method "
"OS.get_granted_permissions] to get a list of saved bookmarks."
msgstr ""
"Отображает собственный диалог ОС для выбора файлов или каталогов в файловой "
"системе с дополнительными выбираемыми пользователем параметрами.\n"
"Каждая строка фильтра в массиве [param filter] должна быть отформатирована "
"следующим образом: [code]*.png,*.jpg,*.jpeg;Image Files;image/png,image/jpeg[/"
"code]. Текст описания фильтра необязателен и может быть опущен. Рекомендуется "
"задать как расширение файла, так и тип MIME. См. также [member "
"FileDialog.filters].\n"
"[param options] — это массив [Dictionary] со следующими ключами:\n"
"- [code]\"name\"[/code] — имя параметра [String].\n"
"- [code]\"values\"[/code] — [PackedStringArray] значений. Если пусто, "
"используется логический параметр (флажок).\n"
"- [code]\"default\"[/code] — индекс выбранного параметра по умолчанию ([int]) "
"или логическое значение по умолчанию ([bool]).\n"
"Обратные вызовы имеют следующие аргументы: [code]status: bool, "
"selected_paths: PackedStringArray, selected_filter_index: int, "
"selected_option: Dictionary[/code].\n"
"[b]Примечание:[/b] Этот метод реализуется, если у сервера отображения есть "
"функция [constant FEATURE_NATIVE_DIALOG_FILE_EXTRA]. Поддерживаемые платформы "
"включают Linux (X11/Wayland), Windows и macOS.\n"
"[b]Примечание:[/b] [param current_directory] может быть проигнорирован.\n"
"[b]Примечание:[/b] Встроенный файловый диалог и файловый диалог Windows "
"поддерживают только расширения файлов, тогда как файловые диалоги Android, "
"Linux и macOS также поддерживают типы MIME.\n"
"[b]Примечание:[/b] В Linux (X11) [param show_hidden] игнорируется.\n"
"[b]Примечание:[/b] В macOS собственные файловые диалоги не имеют заголовка.\n"
"[b]Примечание:[/b] В macOS изолированные приложения сохранят закладки с "
"областью безопасности, чтобы сохранить доступ к открытым папкам в течение "
"нескольких сеансов. Используйте [method OS.get_granted_permissions], чтобы "
"получить список сохраненных закладок."

msgid ""
"Forces window manager processing while ignoring all [InputEvent]s. See also "
"[method process_events].\n"
"[b]Note:[/b] This method is implemented on Windows and macOS."
msgstr ""
"Запускает обработку оконного менеджера, игнорируя все [InputEvent]. См. также "
"[method process_events].\n"
"[b]Примечание:[/b] Этот метод реализован в Windows и macOS."

msgid ""
"Returns OS theme accent color. Returns [code]Color(0, 0, 0, 0)[/code], if "
"accent color is unknown.\n"
"[b]Note:[/b] This method is implemented on macOS, Windows, Android, and Linux "
"(X11/Wayland)."
msgstr ""
"Возвращает акцентный цвет темы ОС. Возвращает [code]Color(0, 0, 0, 0)[/code], "
"если акцентный цвет неизвестен.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS, Windows, Android и Linux "
"(X11/Wayland)."

msgid ""
"Returns the OS theme base color (default control background). Returns "
"[code]Color(0, 0, 0, 0)[/code] if the base color is unknown.\n"
"[b]Note:[/b] This method is implemented on macOS, Windows, and Android."
msgstr ""
"Возвращает базовый цвет темы ОС (фон элемента управления по умолчанию). "
"Возвращает [code]Color(0, 0, 0, 0)[/code], если базовый цвет неизвестен.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS, Windows и Android."

msgid ""
"Returns an [Array] of [Rect2], each of which is the bounding rectangle for a "
"display cutout or notch. These are non-functional areas on edge-to-edge "
"screens used by cameras and sensors. Returns an empty array if the device "
"does not have cutouts. See also [method get_display_safe_area].\n"
"[b]Note:[/b] Currently only implemented on Android. Other platforms will "
"return an empty array even if they do have display cutouts or notches."
msgstr ""
"Возвращает [Array] из [Rect2], каждый из которых является ограничивающим "
"прямоугольником для выреза или выемки дисплея. Это нефункциональные области "
"на экранах от края до края, используемые камерами и датчиками. Возвращает "
"пустой массив, если устройство не имеет вырезов. См. также [method "
"get_display_safe_area].\n"
"[b]Примечание:[/b] В настоящее время реализовано только на Android. Другие "
"платформы вернут пустой массив, даже если у них есть вырезы или выемки "
"дисплея."

msgid ""
"Returns the unobscured area of the display where interactive controls should "
"be rendered. See also [method get_display_cutouts].\n"
"[b]Note:[/b] Currently only implemented on Android and iOS. On other "
"platforms, [code]screen_get_usable_rect(SCREEN_OF_MAIN_WINDOW)[/code] will be "
"returned as a fallback. See also [method screen_get_usable_rect]."
msgstr ""
"Возвращает незатененную область дисплея, где должны отображаться "
"интерактивные элементы управления. См. также [method get_display_cutouts].\n"
"[b]Примечание:[/b] В настоящее время реализовано только на Android и iOS. На "
"других платформах в качестве резервного варианта будет возвращен "
"[code]screen_get_usable_rect(SCREEN_OF_MAIN_WINDOW)[/code]. См. также [method "
"screen_get_usable_rect]."

msgid ""
"Returns the index of the screen containing the window with the keyboard "
"focus, or the primary screen if there's no focused window.\n"
"[b]Note:[/b] This method is implemented on Linux/X11, macOS, and Windows. On "
"other platforms, this method always returns the primary screen."
msgstr ""
"Возвращает индекс экрана, содержащего окно с фокусом клавиатуры, или "
"основного экрана, если нет окна с фокусом.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux/X11, macOS и Windows. На "
"других платформах этот метод всегда возвращает основной экран."

msgid ""
"Returns the name of the [DisplayServer] currently in use. Most operating "
"systems only have a single [DisplayServer], but Linux has access to more than "
"one [DisplayServer] (currently X11 and Wayland).\n"
"The names of built-in display servers are [code]Windows[/code], [code]macOS[/"
"code], [code]X11[/code] (Linux), [code]Wayland[/code] (Linux), [code]Android[/"
"code], [code]iOS[/code], [code]web[/code] (HTML5), and [code]headless[/code] "
"(when started with the [code]--headless[/code] [url=$DOCS_URL/tutorials/"
"editor/command_line_tutorial.html]command line argument[/url])."
msgstr ""
"Возвращает имя [DisplayServer], который в данный момент используется. "
"Большинство операционных систем имеют только один [DisplayServer], но Linux "
"имеет доступ к нескольким [DisplayServer] (в настоящее время X11 и Wayland).\n"
"Имена встроенных серверов отображения: [code]Windows[/code], [code]macOS[/"
"code], [code]X11[/code] (Linux), [code]Wayland[/code] (Linux), [code]Android[/"
"code], [code]iOS[/code], [code]web[/code] (HTML5) и [code]headless[/code] "
"(при запуске с [code]--headless[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]аргументом командной строки[/url])."

msgid ""
"Returns index of the primary screen.\n"
"[b]Note:[/b] This method is implemented on Linux/X11, macOS, and Windows. On "
"other platforms, this method always returns [code]0[/code]."
msgstr ""
"Возвращает индекс основного экрана.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux/X11, macOS и Windows. На "
"других платформах этот метод всегда возвращает [code]0[/code]."

msgid ""
"Returns the number of displays available.\n"
"[b]Note:[/b] This method is implemented on Linux (X11 and Wayland), macOS, "
"and Windows. On other platforms, this method always returns [code]1[/code]."
msgstr ""
"Возвращает количество доступных дисплеев.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11 и Wayland), macOS и "
"Windows. На других платформах этот метод всегда возвращает [code]1[/code]."

msgid ""
"Returns the index of the screen that overlaps the most with the given "
"rectangle. Returns [constant INVALID_SCREEN] if the rectangle doesn't overlap "
"with any screen or has no area."
msgstr ""
"Возвращает индекс экрана, который больше всего перекрывается с указанным "
"прямоугольником. Возвращает [constant INVALID_SCREEN], если прямоугольник не "
"перекрывается ни с одним экраном или не имеет области."

msgid ""
"Returns [code]true[/code] if positions of [b]OK[/b] and [b]Cancel[/b] buttons "
"are swapped in dialogs. This is enabled by default on Windows to follow "
"interface conventions, and be toggled by changing [member ProjectSettings.gui/"
"common/swap_cancel_ok].\n"
"[b]Note:[/b] This doesn't affect native dialogs such as the ones spawned by "
"[method DisplayServer.dialog_show]."
msgstr ""
"Возвращает [code]true[/code], если позиции кнопок [b]OK[/b] и [b]Cancel[/b] "
"поменяны местами в диалогах. Это включено по умолчанию в Windows для "
"соблюдения соглашений интерфейса и может быть переключено путем изменения "
"[member ProjectSettings.gui/common/swap_cancel_ok].\n"
"[b]Примечание:[/b] Это не влияет на собственные диалоги, такие как те, "
"которые порождаются [method DisplayServer.dialog_show]."

msgid ""
"Returns the ID of the window at the specified screen [param position] (in "
"pixels). On multi-monitor setups, the screen position is relative to the "
"virtual desktop area. On multi-monitor setups with different screen "
"resolutions or orientations, the origin may be located outside any display "
"like this:\n"
"[codeblock lang=text]\n"
"* (0, 0)        +-------+\n"
"                |       |\n"
"+-------------+ |       |\n"
"|             | |       |\n"
"|             | |       |\n"
"+-------------+ +-------+\n"
"[/codeblock]"
msgstr ""
"Возвращает идентификатор окна на указанном экране [param position] (в "
"пикселях). В многомониторных установках положение экрана относительно области "
"виртуального рабочего стола. В многомониторных установках с различными "
"разрешениями экрана или ориентациями начало координат может располагаться за "
"пределами любого дисплея, например:\n"
"[codeblock lang=text]\n"
"* (0, 0)        +-------+\n"
"                |       |\n"
"+-------------+ |       |\n"
"|             | |       |\n"
"|             | |       |\n"
"+-------------+ +-------+\n"
"[/codeblock]"

msgid ""
"Returns the list of Godot window IDs belonging to this process.\n"
"[b]Note:[/b] Native dialogs are not included in this list."
msgstr ""
"Возвращает список идентификаторов окон Godot, принадлежащих этому процессу.\n"
"[b]Примечание:[/b] Собственные диалоги не включены в этот список."

msgid "Use [NativeMenu] or [PopupMenu] instead."
msgstr "Вместо этого используйте [NativeMenu] или [PopupMenu]."

msgid ""
"Adds a new checkable item with text [param label] to the global menu with ID "
"[param menu_root].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Supported system menu IDs:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"
msgstr ""
"Добавляет новый отмечаемый элемент с текстом [param label] в глобальное меню "
"с идентификатором [param menu_root].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно может быть определен [param accelerator], представляющий собой "
"сочетание клавиш, которое можно нажать для вызова кнопки меню, даже если оно "
"в данный момент не открыто. [param accelerator] обычно представляет собой "
"комбинацию [enum KeyModifierMask] и [enum Key] с использованием побитового "
"ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Примечание:[/b] Вызываемые объекты [param callback] и [param key_callback] "
"должны принимать ровно один параметр Variant, параметр, переданный в "
"вызываемые объекты, будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Поддерживаемые идентификаторы системного меню:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main меню (macOS).\n"
"\"_dock\" - Dock popup меню (macOS).\n"
"\"_apple\" - Apple меню (macOS, пользовательские элементы, добавленные ранее "
"\"Services\").\n"
"\"_window\" - Window меню (macOS, пользовательские элементы добавлены после "
"\"Bring All to Front\").\n"
"\"_help\" - Help меню (macOS).\n"
"[/codeblock]"

msgid ""
"Adds a new checkable item with text [param label] and icon [param icon] to "
"the global menu with ID [param menu_root].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Supported system menu IDs:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"
msgstr ""
"Добавляет новый отмечаемый элемент с текстом [param label] и значком [param "
"icon] в глобальное меню с идентификатором [param menu_root].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно может быть определен [param accelerator], представляющий собой "
"сочетание клавиш, которое можно нажать для вызова кнопки меню, даже если оно "
"в данный момент не открыто. [param accelerator] обычно представляет собой "
"комбинацию [enum KeyModifierMask] и [enum Key] с использованием побитового "
"ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Примечание:[/b] Вызываемые объекты [param callback] и [param key_callback] "
"должны принимать ровно один параметр Variant, параметр, переданный в "
"вызываемые объекты, будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Поддерживаемые идентификаторы системного меню:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main меню (macOS).\n"
"\"_dock\" - Dock popup меню (macOS).\n"
"\"_apple\" - Apple меню (macOS, пользовательские элементы, добавленные ранее "
"\"Services\").\n"
"\"_window\" - Window меню (macOS, пользовательские элементы добавлены после "
"\"Bring All to Front\").\n"
"\"_help\" - Help меню (macOS).\n"
"[/codeblock]"

msgid ""
"Adds a new item with text [param label] and icon [param icon] to the global "
"menu with ID [param menu_root].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Supported system menu IDs:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"
msgstr ""
"Добавляет новый элемент с текстом [param label] и значком [param icon] в "
"глобальное меню с идентификатором [param menu_root].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно может быть определен [param accelerator], представляющий собой "
"сочетание клавиш, которое можно нажать для вызова кнопки меню, даже если оно "
"в данный момент не открыто. [param accelerator] обычно представляет собой "
"комбинацию [enum KeyModifierMask] и [enum Key] с использованием побитового "
"ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Примечание:[/b] Вызываемые объекты [param callback] и [param key_callback] "
"должны принимать ровно один параметр Variant, параметр, переданный в "
"вызываемые объекты, будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Поддерживаемые идентификаторы системного меню:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main меню (macOS).\n"
"\"_dock\" - Dock popup меню (macOS).\n"
"\"_apple\" - Apple меню (macOS, пользовательские элементы, добавленные ранее "
"\"Services\").\n"
"\"_window\" - Window меню (macOS, пользовательские элементы добавлены после "
"\"Bring All to Front\").\n"
"\"_help\" - Help меню (macOS).\n"
"[/codeblock]"

msgid ""
"Adds a new radio-checkable item with text [param label] and icon [param icon] "
"to the global menu with ID [param menu_root].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] Radio-checkable items just display a checkmark, but don't have "
"any built-in checking behavior and must be checked/unchecked manually. See "
"[method global_menu_set_item_checked] for more info on how to control it.\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Supported system menu IDs:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"
msgstr ""
"Добавляет новый элемент с возможностью радио-отметки с текстом [param label] "
"и значком [param icon] в глобальное меню с идентификатором [param "
"menu_root].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно может быть определен [param accelerator], представляющий собой "
"сочетание клавиш, которое можно нажать для вызова кнопки меню, даже если оно "
"в данный момент не открыто. [param accelerator] обычно представляет собой "
"комбинацию [enum KeyModifierMask] и [enum Key] с использованием побитового "
"ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Примечание:[/b] Элементы, которые можно отмечать радиокнопками, просто "
"отображают галочку, но не имеют встроенного поведения проверки и должны быть "
"отмечены/сняты вручную. См. [method global_menu_set_item_checked] для "
"получения дополнительной информации о том, как им управлять.\n"
"[b]Примечание:[/b] Вызываемые объекты [param callback] и [param key_callback] "
"должны принимать ровно один параметр Variant, параметр, переданный в "
"вызываемые объекты, будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Поддерживаемые идентификаторы системных меню:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main меню (macOS).\n"
"\"_dock\" - Dock popup меню (macOS).\n"
"\"_apple\" - Apple меню (macOS, пользовательские элементы, добавленные ранее "
"\"Services\").\n"
"\"_window\" - Window меню (macOS, пользовательские элементы добавлены после "
"\"Bring All to Front\").\n"
"\"_help\" - Help меню (macOS).\n"
"[/codeblock]"

msgid ""
"Adds a new item with text [param label] to the global menu with ID [param "
"menu_root].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Supported system menu IDs:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"
msgstr ""
"Добавляет новый элемент с текстом [param label] в глобальное меню с "
"идентификатором [param menu_root].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно может быть определен [param accelerator], представляющий собой "
"сочетание клавиш, которое можно нажать для вызова кнопки меню, даже если оно "
"в данный момент не открыто. [param accelerator] обычно представляет собой "
"комбинацию [enum KeyModifierMask] и [enum Key] с использованием побитового "
"ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Примечание:[/b] Вызываемые объекты [param callback] и [param key_callback] "
"должны принимать ровно один параметр Variant, параметр, переданный в "
"вызываемые объекты, будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Поддерживаемые идентификаторы системного меню:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main меню (macOS).\n"
"\"_dock\" - Dock popup меню (macOS).\n"
"\"_apple\" - Apple меню (macOS, пользовательские элементы, добавленные ранее "
"\"Services\").\n"
"\"_window\" - Window меню (macOS, пользовательские элементы добавлены после "
"\"Bring All to Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"

msgid ""
"Adds a new item with text [param label] to the global menu with ID [param "
"menu_root].\n"
"Contrarily to normal binary items, multistate items can have more than two "
"states, as defined by [param max_states]. Each press or activate of the item "
"will increase the state by one. The default value is defined by [param "
"default_state].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] By default, there's no indication of the current item state, it "
"should be changed manually.\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Supported system menu IDs:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"
msgstr ""
"Добавляет новый элемент с текстом [param label] в глобальное меню с "
"идентификатором [param menu_root].\n"
"В отличие от обычных двоичных элементов, элементы с несколькими состояниями "
"могут иметь более двух состояний, как определено [param max_states]. Каждое "
"нажатие или активация элемента увеличит состояние на единицу. Значение по "
"умолчанию определяется [param default_state].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Необязательно может быть определен [param accelerator], представляющий собой "
"сочетание клавиш, которое можно нажать для вызова кнопки меню, даже если оно "
"в данный момент не открыто. [param accelerator] обычно представляет собой "
"комбинацию [enum KeyModifierMask] и [enum Key] с использованием побитового "
"ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Примечание:[/b] По умолчанию нет указания на текущее состояние элемента, "
"его следует изменить вручную.\n"
"[b]Примечание:[/b] Вызываемые объекты [param callback] и [param key_callback] "
"должны принимать ровно один параметр Variant, параметр, переданный в "
"вызываемые объекты, будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Поддерживаемые идентификаторы системных меню:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main меню (macOS).\n"
"\"_dock\" - Dock popup меню (macOS).\n"
"\"_apple\" - Apple меню (macOS, пользовательские элементы, добавленные ранее "
"\"Services\").\n"
"\"_window\" - Window меню (macOS, пользовательские элементы добавлены после "
"\"Bring All to Front\").\n"
"\"_help\" - Help меню (macOS).\n"
"[/codeblock]"

msgid ""
"Adds a new radio-checkable item with text [param label] to the global menu "
"with ID [param menu_root].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] Radio-checkable items just display a checkmark, but don't have "
"any built-in checking behavior and must be checked/unchecked manually. See "
"[method global_menu_set_item_checked] for more info on how to control it.\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Supported system menu IDs:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"
msgstr ""
"Добавляет новый радио-отмечаемый элемент с текстом [param label] в глобальное "
"меню с идентификатором [param menu_root].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно может быть определен [param accelerator], представляющий собой "
"сочетание клавиш, которое можно нажать для вызова кнопки меню, даже если оно "
"в данный момент не открыто. [param accelerator] обычно представляет собой "
"комбинацию [enum KeyModifierMask] и [enum Key] с использованием побитового "
"ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Примечание:[/b] Элементы, которые можно отмечать радиокнопками, просто "
"отображают галочку, но не имеют встроенного поведения проверки и должны быть "
"отмечены/сняты вручную. См. [method global_menu_set_item_checked] для "
"получения дополнительной информации о том, как им управлять.\n"
"[b]Примечание:[/b] Вызываемые объекты [param callback] и [param key_callback] "
"должны принимать ровно один параметр Variant, параметр, переданный в "
"вызываемые объекты, будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Поддерживаемые идентификаторы системных меню:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"

msgid ""
"Adds a separator between items to the global menu with ID [param menu_root]. "
"Separators also occupy an index.\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Supported system menu IDs:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"
msgstr ""
"Добавляет разделитель между элементами в глобальное меню с идентификатором "
"[param menu_root]. Разделители также занимают индекс.\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Поддерживаемые идентификаторы системных меню:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"

msgid ""
"Adds an item that will act as a submenu of the global menu [param menu_root]. "
"The [param submenu] argument is the ID of the global menu root that will be "
"shown when the item is clicked.\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Supported system menu IDs:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"
msgstr ""
"Добавляет элемент, который будет действовать как подменю глобального меню "
"[param menu_root]. Аргумент [param submenu] — это идентификатор корня "
"глобального меню, который будет отображаться при щелчке по элементу.\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Поддерживаемые идентификаторы системных меню:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"

msgid ""
"Removes all items from the global menu with ID [param menu_root].\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Supported system menu IDs:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"
msgstr ""
"Удаляет все элементы из глобального меню с идентификатором [param "
"menu_root].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Поддерживаемые идентификаторы системных меню:[/b]\n"
"[codeblock lang=text]\n"
"\"_main\" - Main menu (macOS).\n"
"\"_dock\" - Dock popup menu (macOS).\n"
"\"_apple\" - Apple menu (macOS, custom items added before \"Services\").\n"
"\"_window\" - Window menu (macOS, custom items added after \"Bring All to "
"Front\").\n"
"\"_help\" - Help menu (macOS).\n"
"[/codeblock]"

msgid ""
"Returns the accelerator of the item at index [param idx]. Accelerators are "
"special combinations of keys that activate the item, no matter which control "
"is focused.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает ускоритель элемента по индексу [param idx]. Ускорители — это "
"специальные комбинации клавиш, которые активируют элемент, независимо от "
"того, какой элемент управления находится в фокусе.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the callback of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает обратный вызов элемента с индексом [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns number of items in the global menu with ID [param menu_root].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает количество элементов в глобальном меню с идентификатором [param "
"menu_root].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the icon of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает значок элемента с индексом [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the horizontal offset of the item at the given [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает горизонтальное смещение элемента по указанному [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the index of the item with the specified [param tag]. Indices are "
"automatically assigned to each item by the engine, and cannot be set "
"manually.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает индекс элемента с указанным [param tag]. Индексы автоматически "
"назначаются каждому элементу движком и не могут быть установлены вручную.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the index of the item with the specified [param text]. Indices are "
"automatically assigned to each item by the engine, and cannot be set "
"manually.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает индекс элемента с указанным [param text]. Индексы автоматически "
"назначаются каждому элементу движком и не могут быть установлены вручную.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the callback of the item accelerator at index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает обратный вызов ускорителя элемента по индексу [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns number of states of a multistate item. See [method "
"global_menu_add_multistate_item] for details.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает количество состояний элемента с несколькими состояниями. "
"Подробности см. в [method global_menu_add_multistate_item].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the state of a multistate item. See [method "
"global_menu_add_multistate_item] for details.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает состояние элемента с несколькими состояниями. Подробности см. в "
"[method global_menu_add_multistate_item].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the submenu ID of the item at index [param idx]. See [method "
"global_menu_add_submenu_item] for more info on how to add a submenu.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает идентификатор подменю элемента с индексом [param idx]. Подробнее о "
"том, как добавить подменю, см. в [method global_menu_add_submenu_item].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the metadata of the specified item, which might be of any type. You "
"can set it with [method global_menu_set_item_tag], which provides a simple "
"way of assigning context data to items.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает метаданные указанного элемента, которые могут быть любого типа. Вы "
"можете задать их с помощью [method global_menu_set_item_tag], который "
"обеспечивает простой способ назначения контекстных данных элементам.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the text of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает текст элемента по индексу [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the tooltip associated with the specified index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает подсказку, связанную с указанным индексом [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns Dictionary of supported system menu IDs and names.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает словарь поддерживаемых идентификаторов и имен системных меню.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is checkable in "
"some way, i.e. if it has a checkbox or radio button.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] можно "
"отметить каким-либо образом, например, если у него есть флажок или "
"переключатель.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is checked.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает [code]true[/code], если отмечен элемент с индексом [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is disabled. When "
"it is disabled it can't be selected, or its action invoked.\n"
"See [method global_menu_set_item_disabled] for more info on how to disable an "
"item.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] отключен. "
"Когда он отключен, его нельзя выбрать или вызвать его действие.\n"
"См. [method global_menu_set_item_disabled] для получения дополнительной "
"информации о том, как отключить элемент.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is hidden.\n"
"See [method global_menu_set_item_hidden] for more info on how to hide an "
"item.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] скрыт.\n"
"См. [method global_menu_set_item_hidden] для получения дополнительной "
"информации о том, как скрыть элемент.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] has radio button-"
"style checkability.\n"
"[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/"
"unchecking items in radio groups.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] имеет "
"возможность отмечать в стиле переключателя.\n"
"[b]Примечание:[/b] Это чисто косметическое действие; необходимо добавить "
"логику для отметки/снятия отметки элементов в группах переключателей.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Removes the item at index [param idx] from the global menu [param "
"menu_root].\n"
"[b]Note:[/b] The indices of items after the removed item will be shifted by "
"one.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Удаляет элемент с индексом [param idx] из глобального меню [param "
"menu_root].\n"
"[b]Примечание:[/b] Индексы элементов после удаленного элемента будут смещены "
"на единицу.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the accelerator of the item at index [param idx]. [param keycode] can be "
"a single [enum Key], or a combination of [enum KeyModifierMask]s and [enum "
"Key]s using bitwise OR such as [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl "
"+ A[/kbd]).\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает акселератор элемента с индексом [param idx]. [param keycode] "
"может быть одним [enum Key] или комбинацией [enum KeyModifierMask] и [enum "
"Key] с использованием побитового ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/"
"code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the callback of the item at index [param idx]. Callback is emitted when "
"an item is pressed.\n"
"[b]Note:[/b] The [param callback] Callable needs to accept exactly one "
"Variant parameter, the parameter passed to the Callable will be the value "
"passed to the [code]tag[/code] parameter when the menu item was created.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает обратный вызов элемента с индексом [param idx]. Обратный вызов "
"срабатывает при нажатии элемента.\n"
"[b]Примечание:[/b] Вызываемый [param callback] должен принимать ровно один "
"параметр Variant, параметр, переданный в вызываемый, будет значением, "
"переданным параметру [code]tag[/code] при создании элемента меню.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets whether the item at index [param idx] has a checkbox. If [code]false[/"
"code], sets the type of the item to plain text.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает, есть ли у элемента с индексом [param idx] флажок. Если "
"[code]false[/code], задает тип элемента как обычный текст.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the checkstate status of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает статус checkstate элемента с индексом [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Enables/disables the item at index [param idx]. When it is disabled, it can't "
"be selected and its action can't be invoked.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Включает/отключает элемент с индексом [param idx]. Когда он отключен, его "
"нельзя выбрать и его действие нельзя вызвать.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Hides/shows the item at index [param idx]. When it is hidden, an item does "
"not appear in a menu and its action cannot be invoked.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Скрывает/показывает элемент с индексом [param idx]. Когда он скрыт, элемент "
"не отображается в меню и его действие не может быть вызвано.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the callback of the item at index [param idx]. The callback is emitted "
"when an item is hovered.\n"
"[b]Note:[/b] The [param callback] Callable needs to accept exactly one "
"Variant parameter, the parameter passed to the Callable will be the value "
"passed to the [code]tag[/code] parameter when the menu item was created.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает обратный вызов элемента с индексом [param idx]. Обратный вызов "
"срабатывает при наведении на элемент.\n"
"[b]Примечание:[/b] Вызываемый [param callback] должен принимать ровно один "
"параметр Variant, параметр, переданный в вызываемый, будет значением, "
"переданным параметру [code]tag[/code] при создании элемента меню.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Replaces the [Texture2D] icon of the specified [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS.\n"
"[b]Note:[/b] This method is not supported by macOS \"_dock\" menu items."
msgstr ""
"Заменяет значок [Texture2D] указанного [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS.\n"
"[b]Примечание:[/b] Этот метод не поддерживается элементами меню \"_dock\" "
"macOS."

msgid ""
"Sets the horizontal offset of the item at the given [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает горизонтальное смещение элемента по указанному [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the callback of the item at index [param idx]. Callback is emitted when "
"its accelerator is activated.\n"
"[b]Note:[/b] The [param key_callback] Callable needs to accept exactly one "
"Variant parameter, the parameter passed to the Callable will be the value "
"passed to the [code]tag[/code] parameter when the menu item was created.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает обратный вызов элемента с индексом [param idx]. Обратный вызов "
"отправляется при активации его ускорителя.\n"
"[b]Примечание:[/b] Вызываемый объект [param key_callback] должен принимать "
"ровно один параметр Variant, параметр, переданный в вызываемый объект, будет "
"значением, переданным параметру [code]tag[/code] при создании элемента меню.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets number of state of a multistate item. See [method "
"global_menu_add_multistate_item] for details.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает номер состояния элемента с несколькими состояниями. Подробности "
"см. в [method global_menu_add_multistate_item].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the type of the item at the specified index [param idx] to radio button. "
"If [code]false[/code], sets the type of the item to plain text.\n"
"[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/"
"unchecking items in radio groups.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает тип элемента с указанным индексом [param idx] на радиокнопку. "
"Если [code]false[/code], устанавливает тип элемента на обычный текст.\n"
"[b]Примечание:[/b] Это чисто косметическое действие; необходимо добавить "
"логику для установки/снятия отметок элементов в группах радиокнопок.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the state of a multistate item. See [method "
"global_menu_add_multistate_item] for details.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает состояние элемента с несколькими состояниями. Подробности см. в "
"[method global_menu_add_multistate_item].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the submenu of the item at index [param idx]. The submenu is the ID of a "
"global menu root that would be shown when the item is clicked.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает подменю элемента с индексом [param idx]. Подменю — это "
"идентификатор глобального корня меню, который будет показан при щелчке по "
"элементу.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the metadata of an item, which may be of any type. You can later get it "
"with [method global_menu_get_item_tag], which provides a simple way of "
"assigning context data to items.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает метаданные элемента, которые могут быть любого типа. Позже вы "
"можете получить их с помощью [method global_menu_get_item_tag], который "
"предоставляет простой способ назначения контекстных данных элементам.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the text of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает текст элемента по индексу [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Sets the [String] tooltip of the item at the specified index [param idx].\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает подсказку [String] элемента по указанному индексу [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Registers callables to emit when the menu is respectively about to show or "
"closed. Callback methods should have zero arguments."
msgstr ""
"Регистрирует вызываемые объекты для испускания, когда меню собирается "
"соответственно отобразиться или закрыться. Методы обратного вызова должны "
"иметь \"ноль\" аргументов."

msgid ""
"Returns [code]true[/code] if any additional outputs have been registered via "
"[method register_additional_output]."
msgstr ""
"Возвращает [code]true[/code], если какие-либо дополнительные выходы были "
"зарегистрированы с помощью [method register_additional_output]."

msgid ""
"Returns [code]true[/code] if the specified [param feature] is supported by "
"the current [DisplayServer], [code]false[/code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если указанная [param feature] поддерживается "
"текущим [DisplayServer], в противном случае [code]false[/code]."

msgid ""
"Returns [code]true[/code] if a hardware keyboard is connected.\n"
"[b]Note:[/b] This method is implemented on Android and iOS. On other "
"platforms, this method always returns [code]true[/code]."
msgstr ""
"Возвращает [code]true[/code], если подключена аппаратная клавиатура.\n"
"[b]Примечание:[/b] Этот метод реализован на Android и iOS. На других "
"платформах этот метод всегда возвращает [code]true[/code]."

msgid ""
"Sets native help system search callbacks.\n"
"[param search_callback] has the following arguments: [code]String "
"search_string, int result_limit[/code] and return a [Dictionary] with \"key, "
"display name\" pairs for the search results. Called when the user enters "
"search terms in the [code]Help[/code] menu.\n"
"[param action_callback] has the following arguments: [code]String key[/code]. "
"Called when the user selects a search result in the [code]Help[/code] menu.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает собственные обратные вызовы поиска справочной системы.\n"
"[param search_callback] имеет следующие аргументы: [code]String "
"search_string, int result_limit[/code] и возвращает [Dictionary] с парами "
"«ключ, отображаемое имя» для результатов поиска. Вызывается, когда "
"пользователь вводит поисковые термины в меню [code]Справка[/code].\n"
"[param action_callback] имеет следующие аргументы: [code]String key[/code]. "
"Вызывается, когда пользователь выбирает результат поиска в меню "
"[code]Справка[/code].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the text selection in the [url=https://en.wikipedia.org/wiki/"
"Input_method]Input Method Editor[/url] composition string, with the "
"[Vector2i]'s [code]x[/code] component being the caret position and [code]y[/"
"code] being the length of the selection.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает выделенный текст в строке композиции [url=https://en.wikipedia.org/"
"wiki/Input_method]Редактора методов ввода[/url], где компонент [Vector2i] "
"[code]x[/code] является позицией курсора, а [code]y[/code] — длиной "
"выделенного текста.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the composition string contained within the [url=https://"
"en.wikipedia.org/wiki/Input_method]Input Method Editor[/url] window.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает строку композиции, содержащуюся в окне [url=https://"
"en.wikipedia.org/wiki/Input_method]Редактора метода ввода[/url].\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns [code]true[/code] if OS is using dark mode.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, macOS, Windows, and "
"Linux (X11/Wayland)."
msgstr ""
"Возвращает [code]true[/code], если ОС использует темный режим.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, macOS, Windows и "
"Linux (X11/Wayland)."

msgid ""
"Returns [code]true[/code] if OS supports dark mode.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, macOS, Windows, and "
"Linux (X11/Wayland)."
msgstr ""
"Возвращает [code]true[/code], если ОС поддерживает темный режим.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, macOS, Windows и "
"Linux (X11/Wayland)."

msgid ""
"Returns [code]true[/code] if touch events are available (Android or iOS), the "
"capability is detected on the Web platform or if [member "
"ProjectSettings.input_devices/pointing/emulate_touch_from_mouse] is "
"[code]true[/code]."
msgstr ""
"Возвращает [code]true[/code], если доступны события касания (Android или "
"iOS), возможность обнаружена на веб-платформе или если [member "
"ProjectSettings.input_devices/pointing/emulate_touch_from_mouse] имеет "
"значение [code]true[/code]."

msgid ""
"Returns [code]true[/code] if the window background can be made transparent. "
"This method returns [code]false[/code] if [member ProjectSettings.display/"
"window/per_pixel_transparency/allowed] is set to [code]false[/code], or if "
"transparency is not supported by the renderer or OS compositor."
msgstr ""
"Возвращает [code]true[/code], если фон окна можно сделать прозрачным. Этот "
"метод возвращает [code]false[/code], если [member ProjectSettings.display/"
"window/per_pixel_transparency/allowed] установлен в [code]false[/code], или "
"если прозрачность не поддерживается рендерером или композитором ОС."

msgid ""
"Returns active keyboard layout index.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS, and "
"Windows."
msgstr ""
"Возвращает индекс активной раскладки клавиатуры.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11/Wayland), macOS и "
"Windows."

msgid ""
"Converts a physical (US QWERTY) [param keycode] to one in the active keyboard "
"layout.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Преобразует физический (US QWERTY) [param keycode] в один из активной "
"раскладки клавиатуры.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11/Wayland), macOS и "
"Windows."

msgid ""
"Converts a physical (US QWERTY) [param keycode] to localized label printed on "
"the key in the active keyboard layout.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Преобразует физический (US QWERTY) [param keycode] в локализованную метку, "
"напечатанную на клавише в активной раскладке клавиатуры.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11/Wayland), macOS и "
"Windows."

msgid ""
"Returns the number of keyboard layouts.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Возвращает количество раскладок клавиатуры.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11/Wayland), macOS и "
"Windows."

msgid ""
"Returns the ISO-639/BCP-47 language code of the keyboard layout at position "
"[param index].\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Возвращает код языка ISO-639/BCP-47 раскладки клавиатуры в позиции [param "
"index].\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11/Wayland), macOS и "
"Windows."

msgid ""
"Returns the localized name of the keyboard layout at position [param index].\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Возвращает локализованное имя раскладки клавиатуры в позиции [param index].\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11/Wayland), macOS и "
"Windows."

msgid ""
"Sets the active keyboard layout.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS and "
"Windows."
msgstr ""
"Устанавливает активную раскладку клавиатуры.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11/Wayland), macOS и "
"Windows."

msgid ""
"Returns the current state of mouse buttons (whether each button is pressed) "
"as a bitmask. If multiple mouse buttons are pressed at the same time, the "
"bits are added together. Equivalent to [method Input.get_mouse_button_mask]."
msgstr ""
"Возвращает текущее состояние кнопок мыши (нажата ли каждая кнопка) в виде "
"битовой маски. Если одновременно нажато несколько кнопок мыши, биты "
"суммируются. Эквивалентно [method Input.get_mouse_button_mask]."

msgid "Returns the current mouse mode. See also [method mouse_set_mode]."
msgstr "Возвращает текущий режим мыши. См. также [method mouse_set_mode]."

msgid "Returns the mouse cursor's current position in screen coordinates."
msgstr "Возвращает текущее положение курсора мыши в экранных координатах."

msgid "Sets the current mouse mode. See also [method mouse_get_mode]."
msgstr "Устанавливает текущий режим мыши. См. также [method mouse_get_mode]."

msgid ""
"Perform window manager processing, including input flushing. See also [method "
"force_process_and_drop_events], [method Input.flush_buffered_events] and "
"[member Input.use_accumulated_input]."
msgstr ""
"Выполнить обработку оконного менеджера, включая очистку ввода. См. также "
"[method force_process_and_drop_events], [method Input.flush_buffered_events] "
"и [member Input.use_accumulated_input]."

msgid ""
"Registers an [Object] which represents an additional output that will be "
"rendered too, beyond normal windows. The [Object] is only used as an "
"identifier, which can be later passed to [method "
"unregister_additional_output].\n"
"This can be used to prevent Godot from skipping rendering when no normal "
"windows are visible."
msgstr ""
"Регистрирует [Object], представляющий дополнительный вывод, который также "
"будет визуализирован, помимо обычных окон. [Object] используется только как "
"идентификатор, который позже может быть передан в [method "
"unregister_additional_output]. \n"
"Это можно использовать, чтобы запретить Godot пропускать визуализацию, когда "
"обычные окна не видны."

msgid ""
"Returns the dots per inch density of the specified screen. Returns platform "
"specific default value if [param screen] is invalid.\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note:[/b] On macOS, returned value is inaccurate if fractional display "
"scaling mode is used.\n"
"[b]Note:[/b] On Android devices, the actual screen densities are grouped into "
"six generalized densities:\n"
"[codeblock lang=text]\n"
"   ldpi - 120 dpi\n"
"   mdpi - 160 dpi\n"
"   hdpi - 240 dpi\n"
"  xhdpi - 320 dpi\n"
" xxhdpi - 480 dpi\n"
"xxxhdpi - 640 dpi\n"
"[/codeblock]\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux (X11/Wayland), "
"macOS, Web, and Windows. On other platforms, this method always returns "
"[code]72[/code]."
msgstr ""
"Возвращает плотность точек на дюйм указанного экрана. Возвращает значение по "
"умолчанию, зависящее от платформы, если [param screen] недействителен.\n"
"[b]Примечание:[/b] В качестве [param screen] можно использовать одну из "
"следующих констант: [constant SCREEN_OF_MAIN_WINDOW], [constant "
"SCREEN_PRIMARY], [constant SCREEN_WITH_MOUSE_FOCUS] или [constant "
"SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Примечание:[/b] В macOS возвращаемое значение неточно, если используется "
"дробный режим масштабирования дисплея.\n"
"[b]Примечание:[/b] На устройствах Android фактические плотности экрана "
"сгруппированы в шесть обобщенных плотностей:\n"
"[codeblock lang=text]\n"
"   ldpi - 120 dpi\n"
"   mdpi - 160 dpi\n"
"   hdpi - 240 dpi\n"
"  xhdpi - 320 dpi\n"
" xxhdpi - 480 dpi\n"
"xxxhdpi - 640 dpi\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Linux (X11/"
"Wayland), macOS, Web и Windows. На других платформах этот метод всегда "
"возвращает [code]72[/code]."

msgid ""
"Returns a screenshot of the [param screen]. Returns [code]null[/code] if "
"[param screen] is invalid or the [DisplayServer] fails to capture "
"screenshot.\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note:[/b] This method is implemented on Linux (X11, excluding XWayland), "
"macOS, and Windows. On other platforms, this method always returns "
"[code]null[/code].\n"
"[b]Note:[/b] On macOS, this method requires the \"Screen Recording\" "
"permission. If permission is not granted, this method returns a screenshot "
"that will not include other application windows or OS elements not related to "
"the application."
msgstr ""
"Возвращает снимок экрана [param screen]. Возвращает [code]null[/code], если "
"[param screen] недействителен или [DisplayServer] не удалось сделать снимок "
"экрана.\n"
"[b]Примечание:[/b] В качестве [param screen] можно использовать одну из "
"следующих констант: [constant SCREEN_OF_MAIN_WINDOW], [constant "
"SCREEN_PRIMARY], [constant SCREEN_WITH_MOUSE_FOCUS] или [constant "
"SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11, за исключением "
"XWayland), macOS и Windows. На других платформах этот метод всегда возвращает "
"[code]null[/code].\n"
"[b]Примечание:[/b] В macOS этот метод требует разрешения «Запись экрана». "
"Если разрешение не предоставлено, этот метод возвращает снимок экрана, "
"который не будет включать другие окна приложения или элементы ОС, не "
"связанные с приложением."

msgid ""
"Returns a screenshot of the screen region defined by [param rect]. Returns "
"[code]null[/code] if [param rect] is outside screen bounds or the "
"[DisplayServer] fails to capture screenshot.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows. On other "
"platforms, this method always returns [code]null[/code].\n"
"[b]Note:[/b] On macOS, this method requires the \"Screen Recording\" "
"permission. If permission is not granted, this method returns a screenshot "
"that will not include other application windows or OS elements not related to "
"the application."
msgstr ""
"Возвращает снимок экрана области экрана, определенной [param rect]. "
"Возвращает [code]null[/code], если [param rect] находится за пределами экрана "
"или [DisplayServer] не может сделать снимок экрана.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows. На других "
"платформах этот метод всегда возвращает [code]null[/code].\n"
"[b]Примечание:[/b] На macOS этот метод требует разрешения «Запись экрана». "
"Если разрешение не предоставлено, этот метод возвращает снимок экрана, "
"который не будет включать другие окна приложений или элементы ОС, не "
"связанные с приложением."

msgid ""
"Returns the greatest scale factor of all screens.\n"
"[b]Note:[/b] On macOS returned value is [code]2.0[/code] if there is at least "
"one hiDPI (Retina) screen in the system, and [code]1.0[/code] in all other "
"cases.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает наибольший коэффициент масштабирования среди всех экранов.\n"
"[b]Примечание:[/b] В macOS возвращаемое значение равно [code]2.0[/code], если "
"в системе есть хотя бы один экран hiDPI (Retina), и [code]1.0[/code] во всех "
"остальных случаях.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns the [param screen]'s current orientation. See also [method "
"screen_set_orientation]. Returns [constant SCREEN_LANDSCAPE] if [param "
"screen] is invalid.\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note:[/b] This method is implemented on Android and iOS. On other "
"platforms, this method always returns [constant SCREEN_LANDSCAPE]."
msgstr ""
"Возвращает текущую ориентацию [param screen]. См. также [method "
"screen_set_orientation]. Возвращает [constant SCREEN_LANDSCAPE], если [param "
"screen] недействителен.\n"
"[b]Примечание:[/b] В качестве [param screen] можно использовать одну из "
"следующих констант: [constant SCREEN_OF_MAIN_WINDOW], [constant "
"SCREEN_PRIMARY], [constant SCREEN_WITH_MOUSE_FOCUS] или [constant "
"SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Примечание:[/b] Этот метод реализован на Android и iOS. На других "
"платформах этот метод всегда возвращает [constant SCREEN_LANDSCAPE]."

msgid ""
"Returns color of the display pixel at the [param position].\n"
"[b]Note:[/b] This method is implemented on Linux (X11, excluding XWayland), "
"macOS, and Windows. On other platforms, this method always returns [Color].\n"
"[b]Note:[/b] On macOS, this method requires the \"Screen Recording\" "
"permission. If permission is not granted, this method returns a screenshot "
"that will only contain the desktop wallpaper, the current application's "
"window, and other related UI elements."
msgstr ""
"Возвращает цвет пикселя дисплея в [param position].\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11, за исключением "
"XWayland), macOS и Windows. На других платформах этот метод всегда возвращает "
"[Color].\n"
"[b]Примечание:[/b] На macOS этот метод требует разрешения «Запись экрана». "
"Если разрешение не предоставлено, этот метод возвращает снимок экрана, "
"который будет содержать только обои рабочего стола, окно текущего приложения "
"и другие связанные элементы пользовательского интерфейса."

msgid ""
"Returns the screen's top-left corner position in pixels. Returns [constant "
"Vector2i.ZERO] if [param screen] is invalid. On multi-monitor setups, the "
"screen position is relative to the virtual desktop area. On multi-monitor "
"setups with different screen resolutions or orientations, the origin might be "
"located outside any display like this:\n"
"[codeblock lang=text]\n"
"* (0, 0)        +-------+\n"
"                |       |\n"
"+-------------+ |       |\n"
"|             | |       |\n"
"|             | |       |\n"
"+-------------+ +-------+\n"
"[/codeblock]\n"
"See also [method screen_get_size].\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS]."
msgstr ""
"Возвращает позицию верхнего левого угла экрана в пикселях. Возвращает "
"[constant Vector2i.ZERO], если [param screen] недействителен. В "
"многомониторных конфигурациях позиция экрана относительна области "
"виртуального рабочего стола. В многомониторных конфигурациях с разными "
"разрешениями экрана или ориентациями начало координат может располагаться за "
"пределами любого дисплея, например:\n"
"[codeblock lang=text]\n"
"* (0, 0)        +-------+\n"
"                |       |\n"
"+-------------+ |       |\n"
"|             | |       |\n"
"|             | |       |\n"
"+-------------+ +-------+\n"
"[/codeblock]\n"
"См. также [method screen_get_size].\n"
"[b]Примечание:[/b] В качестве [param screen] можно использовать одну из "
"следующих констант: [constant SCREEN_OF_MAIN_WINDOW], [constant "
"SCREEN_PRIMARY], [constant SCREEN_WITH_MOUSE_FOCUS] или [constant "
"SCREEN_WITH_KEYBOARD_FOCUS]."

msgid ""
"Returns the current refresh rate of the specified screen. Returns [code]-1.0[/"
"code] if [param screen] is invalid or the [DisplayServer] fails to find the "
"refresh rate for the specified screen.\n"
"To fallback to a default refresh rate if the method fails, try:\n"
"[codeblock]\n"
"var refresh_rate = DisplayServer.screen_get_refresh_rate()\n"
"if refresh_rate < 0:\n"
"\trefresh_rate = 60.0\n"
"[/codeblock]\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note:[/b] This method is implemented on Android, iOS, macOS, Linux (X11 "
"and Wayland), and Windows. On other platforms, this method always returns "
"[code]-1.0[/code]."
msgstr ""
"Возвращает текущую частоту обновления указанного экрана. Возвращает "
"[code]-1.0[/code], если [param screen] недействителен или [DisplayServer] не "
"может найти частоту обновления для указанного экрана.\n"
"Чтобы вернуться к частоте обновления по умолчанию, если метод не срабатывает, "
"попробуйте:\n"
"[codeblock]\n"
"var refresh_rate = DisplayServer.screen_get_refresh_rate()\n"
"if refresh_rate < 0:\n"
"\trefresh_rate = 60.0\n"
"[/codeblock]\n"
"[b]Примечание:[/b] В качестве [param screen] можно использовать одну из "
"следующих констант: [constant SCREEN_OF_MAIN_WINDOW], [constant "
"SCREEN_PRIMARY], [constant SCREEN_WITH_MOUSE_FOCUS] или [constant "
"SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, macOS, Linux (X11 и "
"Wayland) и Windows. На других платформах этот метод всегда возвращает "
"[code]-1.0[/code]."

msgid ""
"Returns the scale factor of the specified screen by index. Returns [code]1.0[/"
"code] if [param screen] is invalid.\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note:[/b] On macOS, the returned value is [code]2.0[/code] for hiDPI "
"(Retina) screens, and [code]1.0[/code] for all other cases.\n"
"[b]Note:[/b] On Linux (Wayland), the returned value is accurate only when "
"[param screen] is [constant SCREEN_OF_MAIN_WINDOW]. Due to API limitations, "
"passing a direct index will return a rounded-up integer, if the screen has a "
"fractional scale (e.g. [code]1.25[/code] would get rounded up to [code]2.0[/"
"code]).\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, macOS, and "
"Linux (Wayland). On other platforms, this method always returns [code]1.0[/"
"code]."
msgstr ""
"Возвращает коэффициент масштабирования указанного экрана по индексу. "
"Возвращает [code]1.0[/code], если [param screen] недействителен.\n"
"[b]Примечание:[/b] В качестве [param screen] можно использовать одну из "
"следующих констант: [constant SCREEN_OF_MAIN_WINDOW], [constant "
"SCREEN_PRIMARY], [constant SCREEN_WITH_MOUSE_FOCUS] или [constant "
"SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Примечание:[/b] В macOS возвращаемое значение равно [code]2.0[/code] для "
"экранов hiDPI (Retina) и [code]1.0[/code] для всех остальных случаев.\n"
"[b]Примечание:[/b] В Linux (Wayland) возвращаемое значение является точным "
"только в том случае, если [param screen] равно [constant "
"SCREEN_OF_MAIN_WINDOW]. Из-за ограничений API передача прямого индекса вернет "
"округленное целое число, если экран имеет дробный масштаб (например, "
"[code]1.25[/code] будет округлено до [code]2.0[/code]).\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Web, macOS и Linux "
"(Wayland). На других платформах этот метод всегда возвращает [code]1.0[/code]."

msgid ""
"Returns the screen's size in pixels. See also [method screen_get_position] "
"and [method screen_get_usable_rect]. Returns [constant Vector2i.ZERO] if "
"[param screen] is invalid.\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS]."
msgstr ""
"Возвращает размер экрана в пикселях. См. также [method screen_get_position] и "
"[method screen_get_usable_rect]. Возвращает [constant Vector2i.ZERO], если "
"[param screen] недействителен.\n"
"[b]Примечание:[/b] В качестве [param screen] можно использовать одну из "
"следующих констант: [constant SCREEN_OF_MAIN_WINDOW], [constant "
"SCREEN_PRIMARY], [constant SCREEN_WITH_MOUSE_FOCUS] или [constant "
"SCREEN_WITH_KEYBOARD_FOCUS]."

msgid ""
"Returns the portion of the screen that is not obstructed by a status bar in "
"pixels. See also [method screen_get_size].\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note:[/b] This method is implemented on Linux/X11, macOS, and Windows. On "
"other platforms, this method always returns "
"[code]Rect2i(screen_get_position(screen), screen_get_size(screen))[/code]."
msgstr ""
"Возвращает часть экрана, которая не закрыта строкой состояния, в пикселях. "
"См. также [method screen_get_size].\n"
"[b]Примечание:[/b] В качестве [param screen] можно использовать одну из "
"следующих констант: [constant SCREEN_OF_MAIN_WINDOW], [constant "
"SCREEN_PRIMARY], [constant SCREEN_WITH_MOUSE_FOCUS] или [constant "
"SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Примечание:[/b] Этот метод реализован в Linux/X11, macOS и Windows. На "
"других платформах этот метод всегда возвращает "
"[code]Rect2i(screen_get_position(screen), screen_get_size(screen))[/code]."

msgid ""
"Returns [code]true[/code] if the screen should never be turned off by the "
"operating system's power-saving measures. See also [method "
"screen_set_keep_on]."
msgstr ""
"Возвращает [code]true[/code], если экран никогда не должен выключаться мерами "
"энергосбережения операционной системы. См. также [method screen_set_keep_on]."

msgid ""
"Sets whether the screen should never be turned off by the operating system's "
"power-saving measures. See also [method screen_is_kept_on]."
msgstr ""
"Устанавливает, должен ли экран никогда не выключаться мерами энергосбережения "
"операционной системы. См. также [method screen_is_kept_on]."

msgid ""
"Sets the [param screen]'s [param orientation]. See also [method "
"screen_get_orientation].\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note:[/b] This method is implemented on Android and iOS.\n"
"[b]Note:[/b] On iOS, this method has no effect if [member "
"ProjectSettings.display/window/handheld/orientation] is not set to [constant "
"SCREEN_SENSOR]."
msgstr ""
"Устанавливает [param orientation] [param screen]. См. также [method "
"screen_get_orientation].\n"
"[b]Примечание:[/b] В качестве [param screen] можно использовать одну из "
"следующих констант: [constant SCREEN_OF_MAIN_WINDOW], [constant "
"SCREEN_PRIMARY], [constant SCREEN_WITH_MOUSE_FOCUS] или [constant "
"SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Примечание:[/b] Этот метод реализован на Android и iOS.\n"
"[b]Примечание:[/b] В iOS этот метод не действует, если [member "
"ProjectSettings.display/window/handheld/orientation] не установлен на "
"[constant SCREEN_SENSOR]."

msgid ""
"Sets the [param callable] that should be called when hardware keyboard is "
"connected/disconnected. [param callable] should accept a single [bool] "
"parameter indicating whether the keyboard is connected (true) or disconnected "
"(false).\n"
"[b]Note:[/b] This method is only implemented on Android."
msgstr ""
"Устанавливает [param callable], который должен вызываться при подключении/"
"отключении аппаратной клавиатуры. [param callable] должен принимать один "
"параметр [bool], указывающий, подключена ли клавиатура (true) или отключена "
"(false).\n"
"[b]Примечание:[/b] Этот метод реализован только на Android."

msgid ""
"Sets the window icon (usually displayed in the top-left corner) with an "
"[Image]. To use icons in the operating system's native format, use [method "
"set_native_icon] instead.\n"
"[b]Note:[/b] Requires support for [constant FEATURE_ICON]."
msgstr ""
"Устанавливает значок окна (обычно отображается в верхнем левом углу) с "
"[Image]. Чтобы использовать значки в собственном формате операционной "
"системы, используйте [method set_native_icon] вместо этого.\n"
"[b]Примечание:[/b] Требуется поддержка [constant FEATURE_ICON]."

msgid ""
"Sets the window icon (usually displayed in the top-left corner) in the "
"operating system's [i]native[/i] format. The file at [param filename] must be "
"in [code].ico[/code] format on Windows or [code].icns[/code] on macOS. By "
"using specially crafted [code].ico[/code] or [code].icns[/code] icons, "
"[method set_native_icon] allows specifying different icons depending on the "
"size the icon is displayed at. This size is determined by the operating "
"system and user preferences (including the display scale factor). To use "
"icons in other formats, use [method set_icon] instead.\n"
"[b]Note:[/b] Requires support for [constant FEATURE_NATIVE_ICON]."
msgstr ""
"Устанавливает значок окна (обычно отображается в верхнем левом углу) в "
"формате [i]native[/i] операционной системы. Файл в [param filename] должен "
"быть в формате [code].ico[/code] в Windows или [code].icns[/code] в macOS. "
"Используя специально созданные значки [code].ico[/code] или [code].icns[/"
"code], [method set_native_icon] позволяет указывать разные значки в "
"зависимости от размера, в котором отображается значок. Этот размер "
"определяется операционной системой и предпочтениями пользователя (включая "
"коэффициент масштабирования дисплея). Чтобы использовать значки в других "
"форматах, используйте вместо этого [method set_icon].\n"
"[b]Примечание:[/b] Требуется поддержка [constant FEATURE_NATIVE_ICON]."

msgid ""
"Sets the [param callable] that should be called when system theme settings "
"are changed. Callback method should have zero arguments.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, macOS, Windows, and "
"Linux (X11/Wayland)."
msgstr ""
"Устанавливает [param callable], который должен вызываться при изменении "
"настроек темы системы. Метод обратного вызова не должен иметь аргументов.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, macOS, Windows и "
"Linux (X11/Wayland)."

msgid ""
"Opens system emoji and symbol picker.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Открывает системный выбор эмодзи и символов.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns the rectangle for the given status indicator [param id] in screen "
"coordinates. If the status indicator is not visible, returns an empty "
"[Rect2].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает прямоугольник для заданного индикатора статуса [param id] в "
"экранных координатах. Если индикатор состояния не виден, возвращает пустой "
"[Rect2].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the application status indicator activation callback. [param callback] "
"should take two arguments: [int] mouse button index (one of [enum "
"MouseButton] values) and [Vector2i] click position in screen coordinates.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает вызов активации индикатора состояния приложения. [param "
"callback] должен принимать два аргумента: [int] индекс кнопки мыши (одно из "
"значений [enum MouseButton]) и [Vector2i] позиция щелчка в координатах "
"экрана.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the application status indicator icon.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает значок индикатора состояния приложения.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the application status indicator native popup menu.\n"
"[b]Note:[/b] On macOS, the menu is activated by any mouse button. Its "
"activation callback is [i]not[/i] triggered.\n"
"[b]Note:[/b] On Windows, the menu is activated by the right mouse button, "
"selecting the status icon and pressing [kbd]Shift + F10[/kbd], or the "
"applications key. The menu's activation callback for the other mouse buttons "
"is still triggered.\n"
"[b]Note:[/b] Native popup is only supported if [NativeMenu] supports the "
"[constant NativeMenu.FEATURE_POPUP_MENU] feature."
msgstr ""
"Устанавливает собственное всплывающее меню индикатора состояния приложения.\n"
"[b]Примечание:[/b] В macOS меню активируется любой кнопкой мыши. Его обратный "
"вызов активации [i]не[/i] срабатывает.\n"
"[b]Примечание:[/b] В Windows меню активируется правой кнопкой мыши, выбором "
"значка состояния и нажатием [kbd]Shift + F10[/kbd] или клавиши приложения. "
"Обратный вызов активации меню для других кнопок мыши по-прежнему "
"срабатывает.\n"
"[b]Примечание:[/b] Собственное всплывающее окно поддерживается только в том "
"случае, если [NativeMenu] поддерживает функцию [constant "
"NativeMenu.FEATURE_POPUP_MENU]."

msgid ""
"Sets the application status indicator tooltip.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает всплывающую подсказку индикатора состояния приложения.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns current active tablet driver name.\n"
"[b]Note:[/b] This method is implemented only on Windows."
msgstr ""
"Возвращает имя текущего активного драйвера планшета.\n"
"[b]Примечание:[/b] Этот метод реализован только в Windows."

msgid ""
"Returns the total number of available tablet drivers.\n"
"[b]Note:[/b] This method is implemented only on Windows."
msgstr ""
"Возвращает общее количество доступных драйверов планшета.\n"
"[b]Примечание:[/b] Этот метод реализован только в Windows."

msgid ""
"Returns the tablet driver name for the given index.\n"
"[b]Note:[/b] This method is implemented only on Windows."
msgstr ""
"Возвращает имя драйвера планшета для указанного индекса.\n"
"[b]Примечание:[/b] Этот метод реализован только в Windows."

msgid ""
"Set active tablet driver name.\n"
"Supported drivers:\n"
"- [code]winink[/code]: Windows Ink API, default.\n"
"- [code]wintab[/code]: Wacom Wintab API (compatible device driver required).\n"
"- [code]dummy[/code]: Dummy driver, tablet input is disabled.\n"
"[b]Note:[/b] This method is implemented only on Windows."
msgstr ""
"Установите имя активного драйвера планшета.\n"
"Поддерживаемые драйверы:\n"
"- [code]winink[/code]: Windows Ink API, по умолчанию.\n"
"- [code]wintab[/code]: Wacom Wintab API (требуется совместимый драйвер "
"устройства).\n"
"- [code]dummy[/code]: фиктивный драйвер, ввод с планшета отключен.\n"
"[b]Примечание:[/b] Этот метод реализован только в Windows."

msgid ""
"Returns an [Array] of voice information dictionaries.\n"
"Each [Dictionary] contains two [String] entries:\n"
"- [code]name[/code] is voice name.\n"
"- [code]id[/code] is voice identifier.\n"
"- [code]language[/code] is language code in [code]lang_Variant[/code] format. "
"The [code]lang[/code] part is a 2 or 3-letter code based on the ISO-639 "
"standard, in lowercase. The [code skip-lint]Variant[/code] part is an engine-"
"dependent string describing country, region or/and dialect.\n"
"Note that Godot depends on system libraries for text-to-speech functionality. "
"These libraries are installed by default on Windows and macOS, but not on all "
"Linux distributions. If they are not present, this method will return an "
"empty list. This applies to both Godot users on Linux, as well as end-users "
"on Linux running Godot games that use text-to-speech.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11/"
"Wayland), macOS, and Windows."
msgstr ""
"Возвращает [Array] словарей голосовой информации.\n"
"Каждый [Dictionary] содержит две записи [String]:\n"
"- [code]name[/code] — голосовое имя.\n"
"- [code]id[/code] — голосовой идентификатор.\n"
"- [code]language[/code] — код языка в формате [code]lang_Variant[/code]. "
"Часть [code]lang[/code] — это 2- или 3-буквенный код на основе стандарта "
"ISO-639 в нижнем регистре. Часть [code skip-lint]Variant[/code] — это строка, "
"зависящая от движка, описывающая страну, регион или/и диалект.\n"
"Обратите внимание, что Godot зависит от системных библиотек для "
"функциональности преобразования текста в речь. Эти библиотеки установлены по "
"умолчанию в Windows и macOS, но не во всех дистрибутивах Linux. Если они "
"отсутствуют, этот метод вернет пустой список. Это касается как пользователей "
"Godot на Linux, так и конечных пользователей на Linux, запускающих игры "
"Godot, использующие преобразование текста в речь.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Web, Linux (X11/"
"Wayland), macOS и Windows."

msgid ""
"Returns a [PackedStringArray] of voice identifiers for the [param language].\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11/"
"Wayland), macOS, and Windows."
msgstr ""
"Возвращает [PackedStringArray] идентификаторов голоса для [param language].\n"
"[b]Примечание:[/b] Этот метод реализован в Android, iOS, Web, Linux (X11/"
"Wayland), macOS и Windows."

msgid ""
"Returns [code]true[/code] if the synthesizer is in a paused state.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11/"
"Wayland), macOS, and Windows."
msgstr ""
"Возвращает [code]true[/code], если синтезатор находится в состоянии паузы.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Web, Linux (X11/"
"Wayland), macOS и Windows."

msgid ""
"Returns [code]true[/code] if the synthesizer is generating speech, or have "
"utterance waiting in the queue.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11/"
"Wayland), macOS, and Windows."
msgstr ""
"Возвращает [code]true[/code], если синтезатор генерирует речь или имеет "
"ожидающие в очереди высказывания.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Web, Linux (X11/"
"Wayland), macOS и Windows."

msgid ""
"Puts the synthesizer into a paused state.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11/"
"Wayland), macOS, and Windows."
msgstr ""
"Переводит синтезатор в состояние паузы.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Web, Linux (X11/"
"Wayland), macOS и Windows."

msgid ""
"Resumes the synthesizer if it was paused.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11/"
"Wayland), macOS, and Windows."
msgstr ""
"Возобновляет работу синтезатора, если он был приостановлен.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Web, Linux (X11/"
"Wayland), macOS и Windows."

msgid ""
"Adds a callback, which is called when the utterance has started, finished, "
"canceled or reached a text boundary.\n"
"- [constant TTS_UTTERANCE_STARTED], [constant TTS_UTTERANCE_ENDED], and "
"[constant TTS_UTTERANCE_CANCELED] callable's method should take one [int] "
"parameter, the utterance ID.\n"
"- [constant TTS_UTTERANCE_BOUNDARY] callable's method should take two [int] "
"parameters, the index of the character and the utterance ID.\n"
"[b]Note:[/b] The granularity of the boundary callbacks is engine dependent.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11/"
"Wayland), macOS, and Windows."
msgstr ""
"Добавляет обратный вызов, который вызывается, когда высказывание началось, "
"закончилось, отменено или достигло границы текста.\n"
"- Метод вызываемого объекта [constant TTS_UTTERANCE_STARTED], [constant "
"TTS_UTTERANCE_ENDED] и [constant TTS_UTTERANCE_CANCELED] должен принимать "
"один параметр [int], идентификатор высказывания.\n"
"- Метод вызываемого объекта [constant TTS_UTTERANCE_BOUNDARY] должен "
"принимать два параметра [int], индекс символа и идентификатор высказывания.\n"
"[b]Примечание:[/b] Степень детализации обратных вызовов границы зависит от "
"движка.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Web, Linux (X11/"
"Wayland), macOS и Windows."

msgid ""
"Adds an utterance to the queue. If [param interrupt] is [code]true[/code], "
"the queue is cleared first.\n"
"- [param voice] identifier is one of the [code]\"id\"[/code] values returned "
"by [method tts_get_voices] or one of the values returned by [method "
"tts_get_voices_for_language].\n"
"- [param volume] ranges from [code]0[/code] (lowest) to [code]100[/code] "
"(highest).\n"
"- [param pitch] ranges from [code]0.0[/code] (lowest) to [code]2.0[/code] "
"(highest), [code]1.0[/code] is default pitch for the current voice.\n"
"- [param rate] ranges from [code]0.1[/code] (lowest) to [code]10.0[/code] "
"(highest), [code]1.0[/code] is a normal speaking rate. Other values act as a "
"percentage relative.\n"
"- [param utterance_id] is passed as a parameter to the callback functions.\n"
"[b]Note:[/b] On Windows and Linux (X11/Wayland), utterance [param text] can "
"use SSML markup. SSML support is engine and voice dependent. If the engine "
"does not support SSML, you should strip out all XML markup before calling "
"[method tts_speak].\n"
"[b]Note:[/b] The granularity of pitch, rate, and volume is engine and voice "
"dependent. Values may be truncated.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11/"
"Wayland), macOS, and Windows."
msgstr ""
"Добавляет высказывание в очередь. Если [param interrupt] равно [code]true[/"
"code], очередь очищается первой.\n"
"- [param voice] идентификатор - одно из значений [code]\"id\"[/code], "
"возвращаемых [method tts_get_voices], или одно из значений, возвращаемых "
"[method tts_get_voices_for_language].\n"
"- [param volume] диапазон от [code]0[/code] (самый низкий) до [code]100[/"
"code] (самый высокий).\n"
"- [param pitch] диапазон от [code]0.0[/code] (самый низкий) до [code]2.0[/"
"code] (самый высокий), [code]1.0[/code] - это высота тона по умолчанию для "
"текущего голоса.\n"
"- [param rate] варьируется от [code]0.1[/code] (самый низкий) до [code]10.0[/"
"code] (самый высокий), [code]1.0[/code] — это нормальная скорость речи. "
"Другие значения действуют как процентное отношение.\n"
"- [param utterance_id] передается как параметр в функции обратного вызова.\n"
"[b]Примечание:[/b] В Windows и Linux (X11/Wayland) высказывание [param text] "
"может использовать разметку SSML. Поддержка SSML зависит от движка и голоса. "
"Если движок не поддерживает SSML, следует удалить всю разметку XML перед "
"вызовом [method tts_speak].\n"
"[b]Примечание:[/b] Детализация высоты тона, скорости и громкости зависит от "
"движка и голоса. Значения могут быть усечены.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Web, Linux (X11/"
"Wayland), macOS и Windows."

msgid ""
"Stops synthesis in progress and removes all utterances from the queue.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux (X11/"
"Wayland), macOS, and Windows."
msgstr ""
"Останавливает процесс синтеза и удаляет все фразы из очереди.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Web, Linux (X11/"
"Wayland), macOS и Windows."

msgid ""
"Unregisters an [Object] representing an additional output, that was "
"registered via [method register_additional_output]."
msgstr ""
"Отменяет регистрацию [Object], представляющего дополнительный выход, который "
"был зарегистрирован с помощью [method register_additional_output]."

msgid ""
"Returns the on-screen keyboard's height in pixels. Returns 0 if there is no "
"keyboard or if it is currently hidden.\n"
"[b]Note:[/b] On Android 7 and 8, the keyboard height may return 0 the first "
"time the keyboard is opened in non-immersive mode. This behavior does not "
"occur in immersive mode."
msgstr ""
"Возвращает высоту экранной клавиатуры в пикселях. Возвращает 0, если "
"клавиатура отсутствует или скрыта.\n"
"[b]Примечание:[/b] На Android 7 и 8 высота клавиатуры может быть равна 0 при "
"первом открытии клавиатуры в неиммерсивном режиме. В иммерсивном режиме это "
"не происходит."

msgid "Hides the virtual keyboard if it is shown, does nothing otherwise."
msgstr ""
"Скрывает виртуальную клавиатуру если она видима, иначе ничего не делает."

msgid ""
"Shows the virtual keyboard if the platform has one.\n"
"[param existing_text] parameter is useful for implementing your own "
"[LineEdit] or [TextEdit], as it tells the virtual keyboard what text has "
"already been typed (the virtual keyboard uses it for auto-correct and "
"predictions).\n"
"[param position] parameter is the screen space [Rect2] of the edited text.\n"
"[param type] parameter allows configuring which type of virtual keyboard to "
"show.\n"
"[param max_length] limits the number of characters that can be entered if "
"different from [code]-1[/code].\n"
"[param cursor_start] can optionally define the current text cursor position "
"if [param cursor_end] is not set.\n"
"[param cursor_start] and [param cursor_end] can optionally define the current "
"text selection.\n"
"[b]Note:[/b] This method is implemented on Android, iOS and Web."
msgstr ""
"Показывает виртуальную клавиатуру, если она есть на платформе.\n"
"Параметр [param existing_text] полезен для реализации собственного [LineEdit] "
"или [TextEdit], так как он сообщает виртуальной клавиатуре, какой текст уже "
"был набран (виртуальная клавиатура использует его для автокоррекции и "
"подсказок).\n"
"Параметр [param position] — это экранное пространство [Rect2] редактируемого "
"текста.\n"
"Параметр [param type] позволяет настроить, какой тип виртуальной клавиатуры "
"показывать.\n"
"[param max_length] ограничивает количество символов, которые можно ввести, "
"если они отличаются от [code]-1[/code].\n"
"[param cursor_start] может опционально определять текущую позицию текстового "
"курсора, если [param cursor_end] не установлен.\n"
"[param cursor_start] и [param cursor_end] могут опционально определять "
"текущее выделение текста.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS и в Web."

msgid ""
"Sets the mouse cursor position to the given [param position] relative to an "
"origin at the upper left corner of the currently focused game Window Manager "
"window.\n"
"[b]Note:[/b] [method warp_mouse] is only supported on Windows, macOS, and "
"Linux (X11/Wayland). It has no effect on Android, iOS, and Web."
msgstr ""
"Устанавливает позицию курсора мыши в указанное [param position] относительно "
"начала координат в верхнем левом углу текущего окна диспетчера окон игры.\n"
"[b]Примечание:[/b] [method warp_mouse] поддерживается только в Windows, macOS "
"и Linux (X11/Wayland). Он не действует на Android, iOS и Web."

msgid ""
"Returns [code]true[/code] if anything can be drawn in the window specified by "
"[param window_id], [code]false[/code] otherwise. Using the [code]--disable-"
"render-loop[/code] command line argument or a headless build will return "
"[code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если что-либо может быть нарисовано в окне, "
"указанном [param window_id], [code]false[/code] в противном случае. "
"Использование аргумента командной строки [code]--disable-render-loop[/code] "
"или headless-сборки вернет [code]false[/code]."

msgid ""
"Returns ID of the active popup window, or [constant INVALID_WINDOW_ID] if "
"there is none."
msgstr ""
"Возвращает ИД активного всплывающего окна, или [constant INVALID_WINDOW_ID] "
"если такого окна нет."

msgid ""
"Returns the [method Object.get_instance_id] of the [Window] the [param "
"window_id] is attached to."
msgstr ""
"Возвращает [method Object.get_instance_id] окна [Window], к которому "
"прикреплен [param window_id]."

msgid ""
"Returns the screen the window specified by [param window_id] is currently "
"positioned on. If the screen overlaps multiple displays, the screen where the "
"window's center is located is returned. See also [method "
"window_set_current_screen]. Returns [constant INVALID_SCREEN] if [param "
"window_id] is invalid.\n"
"[b]Note:[/b] This method is implemented on Linux/X11, macOS, and Windows. On "
"other platforms, this method always returns [code]0[/code]."
msgstr ""
"Возвращает экран, на котором в данный момент расположено окно, указанное "
"[param window_id]. Если экран перекрывает несколько дисплеев, возвращается "
"экран, на котором находится центр окна. См. также [method "
"window_set_current_screen]. Возвращает [constant INVALID_SCREEN], если [param "
"window_id] недействителен.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux/X11, macOS и Windows. На "
"других платформах этот метод всегда возвращает [code]0[/code]."

msgid "Returns the current value of the given window's [param flag]."
msgstr "Возвращает текущее значение [param flag] указанного окна."

msgid ""
"Returns the window's maximum size (in pixels). See also [method "
"window_set_max_size]."
msgstr ""
"Возвращает максимальный размер окна (в пикселях). См. также [method "
"window_set_max_size]."

msgid ""
"Returns the window's minimum size (in pixels). See also [method "
"window_set_min_size]."
msgstr ""
"Возвращает минимальный размер окна (в пикселях). См. также [method "
"window_set_min_size]."

msgid "Returns the mode of the given window."
msgstr "Возвращает режим указанного окна."

msgid ""
"Returns internal structure pointers for use in plugins.\n"
"[b]Note:[/b] This method is implemented on Android, Linux (X11/Wayland), "
"macOS, and Windows."
msgstr ""
"Возвращает указатели внутренней структуры для использования в плагинах.\n"
"[b]Примечание:[/b] Этот метод реализован в Android, Linux (X11/Wayland), "
"macOS и Windows."

msgid ""
"Returns the bounding box of control, or menu item that was used to open the "
"popup window, in the screen coordinate system."
msgstr ""
"Возвращает ограничивающую рамку элемента управления или пункта меню, который "
"использовался для открытия всплывающего окна, в системе координат экрана."

msgid ""
"Returns the position of the client area of the given window on the screen."
msgstr "Возвращает положение клиентской области указанного окна на экране."

msgid ""
"Returns the position of the given window on the screen including the borders "
"drawn by the operating system. See also [method window_get_position]."
msgstr ""
"Возвращает позицию указанного окна на экране, включая границы, нарисованные "
"операционной системой. См. также [method window_get_position]."

msgid ""
"Returns left margins ([code]x[/code]), right margins ([code]y[/code]) and "
"height ([code]z[/code]) of the title that are safe to use (contains no "
"buttons or other elements) when [constant WINDOW_FLAG_EXTEND_TO_TITLE] flag "
"is set."
msgstr ""
"Возвращает левые поля ([code]x[/code]), правые поля ([code]y[/code]) и высоту "
"([code]z[/code]) заголовка, которые можно безопасно использовать (не содержат "
"кнопок или других элементов), если установлен флаг [constant "
"WINDOW_FLAG_EXTEND_TO_TITLE]."

msgid ""
"Returns the size of the window specified by [param window_id] (in pixels), "
"excluding the borders drawn by the operating system. This is also called the "
"\"client area\". See also [method window_get_size_with_decorations], [method "
"window_set_size] and [method window_get_position]."
msgstr ""
"Возвращает размер окна, указанного [param window_id] (в пикселях), исключая "
"границы, нарисованные операционной системой. Это также называется "
"\"клиентской областью\". См. также [method window_get_size_with_decorations], "
"[method window_set_size] и [method window_get_position]."

msgid ""
"Returns the size of the window specified by [param window_id] (in pixels), "
"including the borders drawn by the operating system. See also [method "
"window_get_size]."
msgstr ""
"Возвращает размер окна, указанного [param window_id] (в пикселях), включая "
"границы, нарисованные операционной системой. См. также [method "
"window_get_size]."

msgid ""
"Returns the estimated window title bar size (including text and window "
"buttons) for the window specified by [param window_id] (in pixels). This "
"method does not change the window title.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает предполагаемый размер заголовка окна (включая текст и кнопки окна) "
"для окна, указанного [param window_id] (в пикселях). Этот метод не изменяет "
"заголовок окна.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid "Returns the V-Sync mode of the given window."
msgstr "Возвращает режим вертикальной синхронизации (V-Sync) указанного окна."

msgid ""
"Returns [code]true[/code] if the window specified by [param window_id] is "
"focused."
msgstr ""
"Возвращает [code]true[/code], если окно, указанное [param window_id], "
"находится в фокусе."

msgid ""
"Returns [code]true[/code] if the given window can be maximized (the maximize "
"button is enabled)."
msgstr ""
"Возвращает [code]true[/code], если заданное окно можно развернуть (если "
"кнопка разворота включена)."

msgid ""
"Returns [code]true[/code], if double-click on a window title should maximize "
"it.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает [code]true[/code], если двойной щелчок по заголовку окна должен "
"развернуть его.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns [code]true[/code], if double-click on a window title should minimize "
"it.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает [code]true[/code], если двойной щелчок по заголовку окна должен "
"свернуть его.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Moves the window specified by [param window_id] to the foreground, so that it "
"is visible over other windows."
msgstr ""
"Перемещает окно, указанное параметром [param window_id], на передний план, "
"чтобы оно было видно поверх других окон."

msgid ""
"Makes the window specified by [param window_id] request attention, which is "
"materialized by the window title and taskbar entry blinking until the window "
"is focused. This usually has no visible effect if the window is currently "
"focused. The exact behavior varies depending on the operating system."
msgstr ""
"Заставляет окно, указанное [param window_id], запрашивать внимание, что "
"материализуется заголовком окна и записью на панели задач, мигающими до тех "
"пор, пока окно не будет сфокусировано. Обычно это не имеет видимого эффекта, "
"если окно в данный момент сфокусировано. Точное поведение зависит от "
"операционной системы."

msgid ""
"Moves the window specified by [param window_id] to the specified [param "
"screen]. See also [method window_get_current_screen].\n"
"[b]Note:[/b] One of the following constants can be used as [param screen]: "
"[constant SCREEN_OF_MAIN_WINDOW], [constant SCREEN_PRIMARY], [constant "
"SCREEN_WITH_MOUSE_FOCUS], or [constant SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Note:[/b] This method is implemented on Linux/X11, macOS, and Windows."
msgstr ""
"Перемещает окно, указанное [param window_id], на указанный [param screen]. "
"См. также [method window_get_current_screen].\n"
"[b]Примечание:[/b] В качестве [param screen] можно использовать одну из "
"следующих констант: [constant SCREEN_OF_MAIN_WINDOW], [constant "
"SCREEN_PRIMARY], [constant SCREEN_WITH_MOUSE_FOCUS] или [constant "
"SCREEN_WITH_KEYBOARD_FOCUS].\n"
"[b]Примечание:[/b] Этот метод реализован в Linux/X11, macOS и Windows."

msgid ""
"Sets the [param callback] that should be called when files are dropped from "
"the operating system's file manager to the window specified by [param "
"window_id]. [param callback] should take one [PackedStringArray] argument, "
"which is the list of dropped files.\n"
"[b]Warning:[/b] Advanced users only! Adding such a callback to a [Window] "
"node will override its default implementation, which can introduce bugs.\n"
"[b]Note:[/b] This method is implemented on Windows, macOS, Linux (X11/"
"Wayland), and Web."
msgstr ""
"Устанавливает [param callback], который должен вызываться при перемещении "
"файлов из файлового менеджера операционной системы в окно, указанное [param "
"window_id]. [param callback] должен принимать один аргумент "
"[PackedStringArray], который является списком перемещенных файлов.\n"
"[b]Предупреждение:[/b] Только для опытных пользователей! Добавление такого "
"обратного вызова в узел [Window] переопределит его реализацию по умолчанию, "
"что может привести к ошибкам.\n"
"[b]Примечание:[/b] Этот метод реализован в Windows, macOS, Linux (X11/"
"Wayland) и Web."

msgid ""
"If set to [code]true[/code], this window will always stay on top of its "
"parent window, parent window will ignore input while this window is opened.\n"
"[b]Note:[/b] On macOS, exclusive windows are confined to the same space "
"(virtual desktop or screen) as the parent window.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Если установлено значение [code]true[/code], это окно всегда будет оставаться "
"поверх своего родительского окна, родительское окно будет игнорировать ввод, "
"пока это окно открыто.\n"
"[b]Примечание:[/b] В macOS исключительные окна ограничены тем же "
"пространством (виртуальным рабочим столом или экраном), что и родительское "
"окно.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid "Enables or disables the given window's given [param flag]."
msgstr "Включает или отключает указанный [param flag] указанного окна."

msgid ""
"Sets whether [url=https://en.wikipedia.org/wiki/Input_method]Input Method "
"Editor[/url] should be enabled for the window specified by [param window_id]. "
"See also [method window_set_ime_position]."
msgstr ""
"Устанавливает, следует ли включать [url=https://en.wikipedia.org/wiki/"
"Input_method]Редактор методов ввода[/url] для окна, указанного [param "
"window_id]. См. также [method window_set_ime_position]."

msgid ""
"Sets the position of the [url=https://en.wikipedia.org/wiki/"
"Input_method]Input Method Editor[/url] popup for the specified [param "
"window_id]. Only effective if [method window_set_ime_active] was set to "
"[code]true[/code] for the specified [param window_id]."
msgstr ""
"Устанавливает положение всплывающего окна [url=https://en.wikipedia.org/wiki/"
"Input_method]Редактора методов ввода[/url] для указанного [param window_id]. "
"Действует только в том случае, если [method window_set_ime_active] был "
"установлен на [code]true[/code] для указанного [param window_id]."

msgid ""
"Sets the [param callback] that should be called when any [InputEvent] is sent "
"to the window specified by [param window_id].\n"
"[b]Warning:[/b] Advanced users only! Adding such a callback to a [Window] "
"node will override its default implementation, which can introduce bugs."
msgstr ""
"Устанавливает [param callback], который должен быть вызван, когда любой "
"[InputEvent] отправляется в окно, указанное [param window_id].\n"
"[b]Предупреждение:[/b] Только для опытных пользователей! Добавление такого "
"callback к узлу [Window] переопределит его реализацию по умолчанию, что может "
"привести к ошибкам."

msgid ""
"Sets the [param callback] that should be called when text is entered using "
"the virtual keyboard to the window specified by [param window_id].\n"
"[b]Warning:[/b] Advanced users only! Adding such a callback to a [Window] "
"node will override its default implementation, which can introduce bugs."
msgstr ""
"Устанавливает [param callback], который должен быть вызван при вводе текста с "
"помощью виртуальной клавиатуры в окно, указанное [param window_id].\n"
"[b]Предупреждение:[/b] Только для опытных пользователей! Добавление такого "
"callback к узлу [Window] переопределит его реализацию по умолчанию, что может "
"привести к ошибкам."

msgid ""
"Sets the maximum size of the window specified by [param window_id] in pixels. "
"Normally, the user will not be able to drag the window to make it larger than "
"the specified size. See also [method window_get_max_size].\n"
"[b]Note:[/b] It's recommended to change this value using [member "
"Window.max_size] instead.\n"
"[b]Note:[/b] Using third-party tools, it is possible for users to disable "
"window geometry restrictions and therefore bypass this limit."
msgstr ""
"Устанавливает максимальный размер окна, заданный [param window_id] в "
"пикселях. Обычно пользователь не сможет перетащить окно, чтобы сделать его "
"больше указанного размера. См. также [method window_get_max_size].\n"
"[b]Примечание:[/b] Рекомендуется изменить это значение с помощью [member "
"Window.max_size].\n"
"[b]Примечание:[/b] Используя сторонние инструменты, пользователи могут "
"отключить ограничения геометрии окна и, таким образом, обойти это ограничение."

msgid ""
"Sets the minimum size for the given window to [param min_size] in pixels. "
"Normally, the user will not be able to drag the window to make it smaller "
"than the specified size. See also [method window_get_min_size].\n"
"[b]Note:[/b] It's recommended to change this value using [member "
"Window.min_size] instead.\n"
"[b]Note:[/b] By default, the main window has a minimum size of "
"[code]Vector2i(64, 64)[/code]. This prevents issues that can arise when the "
"window is resized to a near-zero size.\n"
"[b]Note:[/b] Using third-party tools, it is possible for users to disable "
"window geometry restrictions and therefore bypass this limit."
msgstr ""
"Устанавливает минимальный размер для данного окна на [param min_size] в "
"пикселях. Обычно пользователь не сможет перетащить окно, чтобы сделать его "
"меньше указанного размера. См. также [method window_get_min_size].\n"
"[b]Примечание:[/b] Рекомендуется изменить это значение, используя [member "
"Window.min_size].\n"
"[b]Примечание:[/b] По умолчанию минимальное значение главного окна составляет "
"[code]Vector2i(64, 64)[/code]. Это предотвращает проблемы, которые могут "
"возникнуть при изменении размера окна до почти нулевого размера.\n"
"[b]Примечание:[/b] Используя сторонние инструменты, пользователи могут "
"отключить ограничения геометрии окна и, таким образом, обойти это ограничение."

msgid ""
"Sets window mode for the given window to [param mode].\n"
"[b]Note:[/b] On Android, setting it to [constant WINDOW_MODE_FULLSCREEN] or "
"[constant WINDOW_MODE_EXCLUSIVE_FULLSCREEN] will enable immersive mode.\n"
"[b]Note:[/b] Setting the window to full screen forcibly sets the borderless "
"flag to [code]true[/code], so make sure to set it back to [code]false[/code] "
"when not wanted."
msgstr ""
"Устанавливает режим окна для указанного окна на [param mode].\n"
"[b]Примечание:[/b] На Android установка его на [constant "
"WINDOW_MODE_FULLSCREEN] или [constant WINDOW_MODE_EXCLUSIVE_FULLSCREEN] "
"включит режим погружения.\n"
"[b]Примечание:[/b] Установка окна на весь экран принудительно устанавливает "
"флаг borderless на [code]true[/code], поэтому обязательно установите его "
"обратно на [code]false[/code], когда он не нужен."

msgid ""
"Sets a polygonal region of the window which accepts mouse events. Mouse "
"events outside the region will be passed through.\n"
"Passing an empty array will disable passthrough support (all mouse events "
"will be intercepted by the window, which is the default behavior).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set region, using Path2D node.\n"
"DisplayServer.window_set_mouse_passthrough($Path2D.curve.get_baked_points())\n"
"\n"
"# Set region, using Polygon2D node.\n"
"DisplayServer.window_set_mouse_passthrough($Polygon2D.polygon)\n"
"\n"
"# Reset region to default.\n"
"DisplayServer.window_set_mouse_passthrough([])\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set region, using Path2D node.\n"
"DisplayServer.WindowSetMousePassthrough(GetNode<Path2D>(\"Path2D\").Curve.GetBakedPoints());\n"
"\n"
"// Set region, using Polygon2D node.\n"
"DisplayServer.WindowSetMousePassthrough(GetNode<Polygon2D>(\"Polygon2D\").Polygon);\n"
"\n"
"// Reset region to default.\n"
"DisplayServer.WindowSetMousePassthrough([]);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] On Windows, the portion of a window that lies outside the region "
"is not drawn, while on Linux (X11) and macOS it is.\n"
"[b]Note:[/b] This method is implemented on Linux (X11), macOS and Windows."
msgstr ""
"Устанавливает многоугольную область окна, которая принимает события мыши. "
"События мыши за пределами области будут переданы.\n"
"Передача пустого массива отключит поддержку сквозной передачи (все события "
"мыши будут перехвачены окном, что является поведением по умолчанию).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Задайте регион, используя узел Path2D.\n"
"DisplayServer.window_set_mouse_passthrough($Path2D.curve.get_baked_points())\n"
"\n"
"# Задайте регион, используя узел Polygon2D.\n"
"DisplayServer.window_set_mouse_passthrough($Polygon2D.polygon)\n"
"\n"
"# Сбросить регион до значений по умолчанию.\n"
"DisplayServer.window_set_mouse_passthrough([])\n"
"[/gdscript]\n"
"[csharp]\n"
"// Задайте регион, используя узел Path2D.\n"
"DisplayServer.WindowSetMousePassthrough(GetNode<Path2D>(\"Path2D\").Curve.GetBakedPoints());\n"
"\n"
"// Задайте регион, используя узел Polygon2D.\n"
"DisplayServer.WindowSetMousePassthrough(GetNode<Polygon2D>(\"Polygon2D\").Polygon);\n"
"\n"
"// Сбросить регион до значений по умолчанию.\n"
"DisplayServer.WindowSetMousePassthrough([]);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В Windows часть окна, которая находится за пределами "
"области, не отрисовывается, тогда как в Linux (X11) и macOS — "
"отрисовывается.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11), macOS и Windows."

msgid ""
"Sets the bounding box of control, or menu item that was used to open the "
"popup window, in the screen coordinate system. Clicking this area will not "
"auto-close this popup."
msgstr ""
"Устанавливает ограничивающую рамку элемента управления или пункта меню, "
"который использовался для открытия всплывающего окна, в системе координат "
"экрана. Щелчок по этой области не закроет автоматически это всплывающее окно."

msgid ""
"Sets the position of the given window to [param position]. On multi-monitor "
"setups, the screen position is relative to the virtual desktop area. On multi-"
"monitor setups with different screen resolutions or orientations, the origin "
"may be located outside any display like this:\n"
"[codeblock lang=text]\n"
"* (0, 0)        +-------+\n"
"                |       |\n"
"+-------------+ |       |\n"
"|             | |       |\n"
"|             | |       |\n"
"+-------------+ +-------+\n"
"[/codeblock]\n"
"See also [method window_get_position] and [method window_set_size].\n"
"[b]Note:[/b] It's recommended to change this value using [member "
"Window.position] instead.\n"
"[b]Note:[/b] On Linux (Wayland): this method is a no-op."
msgstr ""
"Устанавливает позицию указанного окна на [param position]. В многомониторных "
"установках позиция экрана относительна области виртуального рабочего стола. В "
"многомониторных установках с различными разрешениями экрана или ориентациями "
"начало координат может располагаться за пределами любого дисплея, например:\n"
"[codeblock lang=text]\n"
"* (0, 0)        +-------+\n"
"                |       |\n"
"+-------------+ |       |\n"
"|             | |       |\n"
"|             | |       |\n"
"+-------------+ +-------+\n"
"[/codeblock]\n"
"См. также [method window_get_position] и [method window_set_size].\n"
"[b]Примечание:[/b] Рекомендуется изменить это значение, используя [member "
"Window.position].\n"
"[b]Примечание:[/b] В Linux (Wayland): этот метод не является операцией."

msgid ""
"Sets the [param callback] that will be called when the window specified by "
"[param window_id] is moved or resized.\n"
"[b]Warning:[/b] Advanced users only! Adding such a callback to a [Window] "
"node will override its default implementation, which can introduce bugs."
msgstr ""
"Устанавливает [param callback], который будет вызван при перемещении или "
"изменении размера окна, указанного [param window_id].\n"
"[b]Внимание:[/b] Только для опытных пользователей! Добавление такого callback "
"к узлу [Window] переопределит его реализацию по умолчанию, что может привести "
"к ошибкам."

msgid ""
"Sets the size of the given window to [param size] (in pixels). See also "
"[method window_get_size] and [method window_get_position].\n"
"[b]Note:[/b] It's recommended to change this value using [member Window.size] "
"instead."
msgstr ""
"Устанавливает размер указанного окна на [param size] (в пикселях). См. также "
"[method window_get_size] и [method window_get_position].\n"
"[b]Примечание:[/b] Рекомендуется изменить это значение, используя [member "
"Window.size]."

msgid ""
"Sets the title of the given window to [param title].\n"
"[b]Note:[/b] It's recommended to change this value using [member "
"Window.title] instead.\n"
"[b]Note:[/b] Avoid changing the window title every frame, as this can cause "
"performance issues on certain window managers. Try to change the window title "
"only a few times per second at most."
msgstr ""
"Устанавливает тутул данного окна [param title].\n"
"[b]Примечание:[/b] Рекомендуется менять это значение через [member "
"Window.title]\n"
"[b]Примечание:[/b] Избегайте изменения титула каждый кадр, так как это может "
"негативно сказаться на производительность некоторых менеджеров окон. "
"Постарайтесь менять титул окна не более несколько раз в секунду."

msgid ""
"Sets window transient parent. Transient window will be destroyed with its "
"transient parent and will return focus to their parent when closed. The "
"transient window is displayed on top of a non-exclusive full-screen parent "
"window. Transient windows can't enter full-screen mode.\n"
"[b]Note:[/b] It's recommended to change this value using [member "
"Window.transient] instead.\n"
"[b]Note:[/b] The behavior might be different depending on the platform."
msgstr ""
"Устанавливает окно как переходного родителя. Переходное окно будет уничтожено "
"вместе со своим переходным родителем и вернет фокус к своему родителю при "
"закрытии. Переходное окно отображается поверх неисключительного "
"полноэкранного родительского окна. Переходные окна не могут переходить в "
"полноэкранный режим.\n"
"[b]Примечание:[/b] Рекомендуется изменить это значение, используя [member "
"Window.transient].\n"
"[b]Примечание:[/b] Поведение может отличаться в зависимости от платформы."

msgid ""
"Sets the V-Sync mode of the given window. See also [member "
"ProjectSettings.display/window/vsync/vsync_mode].\n"
"Depending on the platform and used renderer, the engine will fall back to "
"[constant VSYNC_ENABLED] if the desired mode is not supported.\n"
"[b]Note:[/b] V-Sync modes other than [constant VSYNC_ENABLED] are only "
"supported in the Forward+ and Mobile rendering methods, not Compatibility."
msgstr ""
"Устанавливает режим V-Sync для указанного окна. См. также [member "
"ProjectSettings.display/window/vsync/vsync_mode].\n"
"В зависимости от платформы и используемого рендерера движок вернется к "
"[constant VSYNC_ENABLED], если нужный режим не поддерживается.\n"
"[b]Примечание:[/b] Режимы V-Sync, отличные от [constant VSYNC_ENABLED], "
"поддерживаются только в методах рендеринга Forward+ и Mobile, но не "
"Compatibility."

msgid ""
"When [constant WINDOW_FLAG_EXTEND_TO_TITLE] flag is set, set offset to the "
"center of the first titlebar button.\n"
"[b]Note:[/b] This flag is implemented only on macOS."
msgstr ""
"Если установлен флаг [constant WINDOW_FLAG_EXTEND_TO_TITLE], установите "
"смещение по центру первой кнопки заголовка.\n"
"[b]Примечание:[/b] Этот флаг реализован только в macOS."

msgid ""
"Sets the [param callback] that will be called when an event occurs in the "
"window specified by [param window_id].\n"
"[b]Warning:[/b] Advanced users only! Adding such a callback to a [Window] "
"node will override its default implementation, which can introduce bugs."
msgstr ""
"Устанавливает [param callback], который будет вызван при возникновении "
"события в окне, указанном [param window_id].\n"
"[b]Предупреждение:[/b] Только для опытных пользователей! Добавление такого "
"callback к узлу [Window] переопределит его реализацию по умолчанию, что может "
"привести к ошибкам."

msgid ""
"Starts an interactive drag operation on the window with the given [param "
"window_id], using the current mouse position. Call this method when handling "
"a mouse button being pressed to simulate a pressed event on the window's "
"title bar. Using this method allows the window to participate in space "
"switching, tiling, and other system features.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS, and "
"Windows."
msgstr ""
"Начинает интерактивную операцию перетаскивания в окне с заданным [param "
"window_id], используя текущую позицию мыши. Вызывайте этот метод при "
"обработке нажатия кнопки мыши для имитации события нажатия в заголовке окна. "
"Использование этого метода позволяет окну участвовать в переключении "
"пространства, мозаичном размещении и других системных функциях.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11/Wayland), macOS и "
"Windows."

msgid ""
"Starts an interactive resize operation on the window with the given [param "
"window_id], using the current mouse position. Call this method when handling "
"a mouse button being pressed to simulate a pressed event on the window's "
"edge.\n"
"[b]Note:[/b] This method is implemented on Linux (X11/Wayland), macOS, and "
"Windows."
msgstr ""
"Запускает интерактивную операцию изменения размера окна с заданным [param "
"window_id], используя текущую позицию мыши. Вызывайте этот метод при "
"обработке нажатия кнопки мыши для имитации события нажатия на краю окна.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux (X11/Wayland), macOS и "
"Windows."

msgid ""
"Display server supports global menu. This allows the application to display "
"its menu items in the operating system's top bar. [b]macOS[/b]"
msgstr ""
"Display server поддерживает глобальное меню. Это позволяет приложению "
"отображать свои пункты меню в верхней панели операционной системы. [b]macOS[/"
"b]"

msgid ""
"Display server supports multiple windows that can be moved outside of the "
"main window. [b]Windows, macOS, Linux (X11)[/b]"
msgstr ""
"Дисплейный сервер поддерживает несколько окон, которые можно перемещать за "
"пределы главного окна. [b]Windows, macOS, Linux (X11)[/b]"

msgid ""
"Display server supports touchscreen input. [b]Windows, Linux (X11), Android, "
"iOS, Web[/b]"
msgstr ""
"Дисплейный сервер поддерживает сенсорный ввод. [b]Windows, Linux (X11), "
"Android, iOS, Web[/b]"

msgid ""
"Display server supports mouse input. [b]Windows, macOS, Linux (X11/Wayland), "
"Android, Web[/b]"
msgstr ""
"Дисплейный сервер поддерживает ввод с помощью мыши. [b]Windows, macOS, Linux "
"(X11/Wayland), Android, Web[/b]"

msgid ""
"Display server supports warping mouse coordinates to keep the mouse cursor "
"constrained within an area, but looping when one of the edges is reached. "
"[b]Windows, macOS, Linux (X11/Wayland)[/b]"
msgstr ""
"Дисплейный сервер поддерживает деформацию координат мыши, чтобы удерживать "
"курсор мыши в пределах области, но зацикливается при достижении одного из "
"краев. [b]Windows, macOS, Linux (X11/Wayland)[/b]"

msgid ""
"Display server supports setting and getting clipboard data. See also "
"[constant FEATURE_CLIPBOARD_PRIMARY]. [b]Windows, macOS, Linux (X11/Wayland), "
"Android, iOS, Web[/b]"
msgstr ""
"Display server поддерживает установку и получение данных буфера обмена. См. "
"также [constant FEATURE_CLIPBOARD_PRIMARY]. [b]Windows, macOS, Linux (X11/"
"Wayland), Android, iOS, Web[/b]"

msgid ""
"Display server supports popping up a virtual keyboard when requested to input "
"text without a physical keyboard. [b]Android, iOS, Web[/b]"
msgstr ""
"Дисплейный сервер поддерживает отображение виртуальной клавиатуры при запросе "
"ввода текста без физической клавиатуры. [b]Android, iOS, Web[/b]"

msgid ""
"Display server supports setting the mouse cursor shape to be different from "
"the default. [b]Windows, macOS, Linux (X11/Wayland), Android, Web[/b]"
msgstr ""
"Дисплейный сервер поддерживает настройку формы курсора мыши, отличной от "
"формы по умолчанию. [b]Windows, macOS, Linux (X11/Wayland), Android, Web[/b]"

msgid ""
"Display server supports setting the mouse cursor shape to a custom image. "
"[b]Windows, macOS, Linux (X11/Wayland), Web[/b]"
msgstr ""
"Дисплейный сервер поддерживает установку формы курсора мыши на "
"пользовательское изображение. [b]Windows, macOS, Linux (X11/Wayland), Web[/b]"

msgid ""
"Display server supports spawning text dialogs using the operating system's "
"native look-and-feel. See [method dialog_show]. [b]Windows, macOS[/b]"
msgstr ""
"Display server поддерживает создание текстовых диалогов с использованием "
"собственного внешнего вида операционной системы. См. [method dialog_show]. "
"[b]Windows, macOS[/b]"

msgid ""
"Display server supports [url=https://en.wikipedia.org/wiki/Input_method]Input "
"Method Editor[/url], which is commonly used for inputting Chinese/Japanese/"
"Korean text. This is handled by the operating system, rather than by Godot. "
"[b]Windows, macOS, Linux (X11)[/b]"
msgstr ""
"Display server поддерживает [url=https://en.wikipedia.org/wiki/"
"Input_method]Редактор методов ввода[/url], который обычно используется для "
"ввода китайского/японского/корейского текста. Это обрабатывается операционной "
"системой, а не Godot. [b]Windows, macOS, Linux (X11)[/b]"

msgid ""
"Display server supports windows can use per-pixel transparency to make "
"windows behind them partially or fully visible. [b]Windows, macOS, Linux (X11/"
"Wayland), Android[/b]"
msgstr ""
"Дисплейный сервер поддерживает окна, которые могут использовать попиксельную "
"прозрачность, чтобы сделать окна за ними частично или полностью видимыми. "
"[b]Windows, macOS, Linux (X11/Wayland), Android[/b]"

msgid ""
"Display server supports querying the operating system's display scale factor. "
"This allows automatically detecting the hiDPI display [i]reliably[/i], "
"instead of guessing based on the screen resolution and the display's reported "
"DPI (which might be unreliable due to broken monitor EDID). [b]Windows, Linux "
"(Wayland), macOS[/b]"
msgstr ""
"Display server поддерживает запрос масштабного коэффициента отображения "
"операционной системы. Это позволяет автоматически определять hiDPI-дисплей "
"[i]надежно[/i], а не угадывать на основе разрешения экрана и сообщенного DPI "
"дисплея (что может быть ненадежным из-за сломанного EDID монитора). "
"[b]Windows, Linux (Wayland), macOS[/b]"

msgid ""
"Display server supports changing the window icon (usually displayed in the "
"top-left corner). [b]Windows, macOS, Linux (X11)[/b]"
msgstr ""
"Дисплейный сервер поддерживает изменение значка окна (обычно отображается в "
"верхнем левом углу). [b]Windows, macOS, Linux (X11)[/b]"

msgid ""
"Display server supports changing the window icon (usually displayed in the "
"top-left corner). [b]Windows, macOS[/b]"
msgstr ""
"Дисплейный сервер поддерживает изменение значка окна (обычно отображается в "
"верхнем левом углу). [b]Windows, macOS[/b]"

msgid ""
"Display server supports changing the screen orientation. [b]Android, iOS[/b]"
msgstr ""
"Дисплейный сервер поддерживает изменение ориентации экрана. [b]Android, iOS[/"
"b]"

msgid ""
"Display server supports V-Sync status can be changed from the default (which "
"is forced to be enabled platforms not supporting this feature). [b]Windows, "
"macOS, Linux (X11/Wayland)[/b]"
msgstr ""
"Дисплейный сервер поддерживает статус V-Sync, который можно изменить со "
"значения по умолчанию (которое принудительно включается на платформах, не "
"поддерживающих эту функцию). [b]Windows, macOS, Linux (X11/Wayland)[/b]"

msgid ""
"Display server supports Primary clipboard can be used. This is a different "
"clipboard from [constant FEATURE_CLIPBOARD]. [b]Linux (X11/Wayland)[/b]"
msgstr ""
"Поддержка сервера отображения Основной буфер обмена может быть использован. "
"Это буфер обмена, отличный от [constant FEATURE_CLIPBOARD]. [b]Linux (X11/"
"Wayland)[/b]"

msgid ""
"Display server supports text-to-speech. See [code]tts_*[/code] methods. "
"[b]Windows, macOS, Linux (X11/Wayland), Android, iOS, Web[/b]"
msgstr ""
"Display server поддерживает преобразование текста в речь. См. методы "
"[code]tts_*[/code]. [b]Windows, macOS, Linux (X11/Wayland), Android, iOS, "
"Web[/b]"

msgid ""
"Display server supports expanding window content to the title. See [constant "
"WINDOW_FLAG_EXTEND_TO_TITLE]. [b]macOS[/b]"
msgstr ""
"Display server поддерживает расширение содержимого окна до заголовка. См. "
"[constant WINDOW_FLAG_EXTEND_TO_TITLE]. [b]macOS[/b]"

msgid ""
"Display server supports reading screen pixels. See [method screen_get_pixel]."
msgstr ""
"Дисплейный сервер поддерживает чтение пикселей экрана. См. [method "
"screen_get_pixel]."

msgid "Display server supports application status indicators."
msgstr "Дисплейный сервер поддерживает индикаторы состояния приложений."

msgid ""
"Display server supports native help system search callbacks. See [method "
"help_set_search_callbacks]."
msgstr ""
"Дисплейный сервер поддерживает собственные обратные вызовы поиска справочной "
"системы. См. [method help_set_search_callbacks]."

msgid ""
"Display server supports spawning text input dialogs using the operating "
"system's native look-and-feel. See [method dialog_input_text]. [b]Windows, "
"macOS[/b]"
msgstr ""
"Display server поддерживает создание диалогов ввода текста с использованием "
"собственного внешнего вида операционной системы. См. [method "
"dialog_input_text]. [b]Windows, macOS[/b]"

msgid ""
"Display server supports spawning dialogs for selecting files or directories "
"using the operating system's native look-and-feel. See [method "
"file_dialog_show]. [b]Windows, macOS, Linux (X11/Wayland), Android[/b]"
msgstr ""
"Display server поддерживает создание диалогов для выбора файлов или каталогов "
"с использованием собственного интерфейса операционной системы. См. [method "
"file_dialog_show]. [b]Windows, macOS, Linux (X11/Wayland), Android[/b]"

msgid ""
"The display server supports all features of [constant "
"FEATURE_NATIVE_DIALOG_FILE], with the added functionality of Options and "
"native dialog file access to [code]res://[/code] and [code]user://[/code] "
"paths. See [method file_dialog_show] and [method "
"file_dialog_with_options_show]. [b]Windows, macOS, Linux (X11/Wayland)[/b]"
msgstr ""
"Дисплейный сервер поддерживает все функции [constant "
"FEATURE_NATIVE_DIALOG_FILE], с дополнительной функциональностью Options и "
"собственным доступом к файлам диалога по путям [code]res://[/code] и "
"[code]user://[/code]. См. [method file_dialog_show] и [method "
"file_dialog_with_options_show]. [b]Windows, macOS, Linux (X11/Wayland)[/b]"

msgid ""
"The display server supports initiating window drag and resize operations on "
"demand. See [method window_start_drag] and [method window_start_resize]."
msgstr ""
"Дисплейный сервер поддерживает инициирование операций перетаскивания и "
"изменения размера окна по требованию. См. [method window_start_drag] и "
"[method window_start_resize]."

msgid ""
"Display server supports [constant WINDOW_FLAG_EXCLUDE_FROM_CAPTURE] window "
"flag. [b]Windows, macOS[/b]"
msgstr ""
"Дисплейный сервер поддерживает флаг окна [constant "
"WINDOW_FLAG_EXCLUDE_FROM_CAPTURE]. [b]Windows, macOS[/b]"

msgid ""
"Display server supports embedding a window from another process. [b]Windows, "
"Linux (X11), macOS[/b]"
msgstr ""
"Дисплейный сервер поддерживает встраивание окна из другого процесса. "
"[b]Windows, Linux (X11), macOS[/b]"

msgid "Native file selection dialog supports MIME types as filters."
msgstr ""
"Встроенный диалог выбора файлов поддерживает типы MIME в качестве фильтров."

msgid ""
"Display server supports system emoji and symbol picker. [b]Windows, macOS[/b]"
msgstr ""
"Дисплейный сервер поддерживает системные эмодзи и средство выбора символов. "
"[b]Windows, macOS[/b]"

msgid "Display server supports native color picker. [b]Linux (X11/Wayland)[/b]"
msgstr ""
"Дисплейный сервер поддерживает собственный выбор цвета. [b]Linux (X11/Wayland)"
"[/b]"

msgid ""
"Display server automatically fits popups according to the screen boundaries. "
"Window nodes should not attempt to do that themselves."
msgstr ""
"Дисплейный сервер автоматически подгоняет всплывающие окна под границы "
"экрана. Узлы окон не должны пытаться делать это самостоятельно."

msgid ""
"Display server supports interaction with screen reader or Braille display. "
"[b]Linux (X11/Wayland), macOS, Windows[/b]"
msgstr ""
"Дисплейный сервер поддерживает взаимодействие с программой чтения с экрана "
"или дисплеем Брайля. [b]Linux (X11/Wayland), macOS, Windows[/b]"

msgid "Unknown or custom role."
msgstr "Неизвестная или пользовательская роль."

msgid "Default dialog button element."
msgstr "Элемент кнопки диалога по умолчанию."

msgid "Audio player element."
msgstr "Элемент аудиоплеера."

msgid "Video player element."
msgstr "Элемент видеоплеера."

msgid "Non-editable text label."
msgstr "Нередактируемая текстовая метка."

msgid ""
"Container element. Elements with this role are used for internal structure "
"and ignored by screen readers."
msgstr ""
"Элемент контейнера. Элементы с этой ролью используются для внутренней "
"структуры и игнорируются программами чтения с экрана."

msgid "Panel container element."
msgstr "Элемент панельного контейнера."

msgid "Button element."
msgstr "Элемент кнопки."

msgid "Link element."
msgstr "Элемент ссылки."

msgid "Check box element."
msgstr "Элемент флажка."

msgid "Radio button element."
msgstr "Элемент радиокнопки."

msgid "Check button element."
msgstr "Элемент check кнопки."

msgid "Scroll bar element."
msgstr "Элемент полосы прокрутки."

msgid "Scroll container element."
msgstr "Элемент контейнера прокрутки."

msgid "Container splitter handle element."
msgstr "Элемент ручки разделителя контейнера."

msgid "Slider element."
msgstr "Элемент слайдера."

msgid "Spin box element."
msgstr "Элемент спин-бокса."

msgid "Progress indicator element."
msgstr "Элемент индикатора прогресса."

msgid "Editable text field element."
msgstr "Редактируемый элемент текстового поля."

msgid "Multiline editable text field element."
msgstr "Многострочный редактируемый элемент текстового поля."

msgid "Color picker element."
msgstr "Элемент выбора цвета."

msgid "Table element."
msgstr "Элемент таблицы."

msgid "Table/tree cell element."
msgstr "Элемент ячейки таблицы/дерева."

msgid "Table/tree row element."
msgstr "Элемент строки таблицы/дерева."

msgid "Table/tree row group element."
msgstr "Элемент группы строк таблицы/дерева."

msgid "Table/tree row header element."
msgstr "Элемент заголовка строки таблицы/дерева."

msgid "Table/tree column header element."
msgstr "Элемент заголовка столбца таблицы/дерева."

msgid "Tree view element."
msgstr "Элемент древовидной структуры (Tree view)."

msgid "Tree view item element."
msgstr "Элемент древовидной структуры (Tree view item)."

msgid "List element."
msgstr "Элемент списка."

msgid "List item element."
msgstr "Элемент списка Item."

msgid "List view element."
msgstr "Элемент представления списка."

msgid "List view item element."
msgstr "Элемент списка представлений Item."

msgid "Tab bar element."
msgstr "Элемент панели вкладок Bar."

msgid "Tab bar item element."
msgstr "Элемент панели вкладок Item."

msgid "Tab panel element."
msgstr "Элемент панели вкладок."

msgid "Menu bar element."
msgstr "Элемент строки меню."

msgid "Popup menu element."
msgstr "Элемент всплывающего меню."

msgid "Popup menu item element."
msgstr "Элемент всплывающего меню Item."

msgid "Popup menu check button item element."
msgstr "Элемент кнопки проверки всплывающего меню."

msgid "Popup menu radio button item element."
msgstr "Элемент переключателя всплывающего меню."

msgid "Image element."
msgstr "Элемент изображения."

msgid "Window element."
msgstr "Элемент окна."

msgid "Embedded window title bar element."
msgstr "Встроенный элемент заголовка окна."

msgid "Dialog window element."
msgstr "Элемент диалогового окна."

msgid "Tooltip element."
msgstr "Элемент подсказки."

msgid "Popup menu."
msgstr "Всплывающее меню."

msgid "Popup list."
msgstr "Всплывающий список."

msgid "Popup tree view."
msgstr "Всплывающее древовидное представление."

msgid "Popup dialog."
msgstr "Всплывающий диалог."

msgid "Element is hidden for accessibility tools."
msgstr "Элемент скрыт для инструментов специальных возможностей."

msgid "Element is support multiple item selection."
msgstr "Элемент поддерживает выбор нескольких элементов."

msgid "Element require user input."
msgstr "Элемент требует ввода данных пользователем."

msgid "Element is a visited link."
msgstr "Элемент — посещенная ссылка."

msgid "Element content is not ready (e.g. loading)."
msgstr "Содержимое элемента не готово (например, загрузка)."

msgid "Element is modal window."
msgstr "Элемент представляет собой модальное окно."

msgid ""
"Element allows touches to be passed through when a screen reader is in touch "
"exploration mode."
msgstr ""
"Элемент позволяет передавать касания, когда программа чтения с экрана "
"находится в режиме сенсорного исследования."

msgid "Element is text field with selectable but read-only text."
msgstr ""
"Элемент представляет собой текстовое поле с выбираемым, но доступным только "
"для чтения текстом."

msgid "Element is disabled."
msgstr "Элемент отключен."

msgid "Element clips children."
msgstr "Элемент обрезает потомков."

msgid "Single click action, callback argument is not set."
msgstr "Действие одинарного щелчка, аргумент обратного вызова не задан."

msgid "Focus action, callback argument is not set."
msgstr "Действие фокуса, аргумент обратного вызова не задан."

msgid "Blur action, callback argument is not set."
msgstr "Действие размытия, аргумент обратного вызова не задан."

msgid "Collapse action, callback argument is not set."
msgstr "Свернуть действие, аргумент обратного вызова не задан."

msgid "Expand action, callback argument is not set."
msgstr "Действие Развернуть, аргумент обратного вызова не задан."

msgid "Decrement action, callback argument is not set."
msgstr "Действие уменьшения, аргумент обратного вызова не задан."

msgid "Increment action, callback argument is not set."
msgstr "Действие приращения/увеличения, аргумент обратного вызова не задан."

msgid "Hide tooltip action, callback argument is not set."
msgstr "Действие скрыть подсказки, аргумент обратного вызова не задан."

msgid "Show tooltip action, callback argument is not set."
msgstr "Действие показать подсказки, аргумент обратного вызова не задан."

msgid ""
"Set text selection action, callback argument is set to [Dictionary] with the "
"following keys:\n"
"- [code]\"start_element\"[/code] accessibility element of the selection "
"start.\n"
"- [code]\"start_char\"[/code] character offset relative to the accessibility "
"element of the selection start.\n"
"- [code]\"end_element\"[/code] accessibility element of the selection end.\n"
"- [code]\"end_char\"[/code] character offset relative to the accessibility "
"element of the selection end."
msgstr ""
"Установить действие выделения текста, аргумент обратного вызова установлен на "
"[Dictionary] со следующими ключами:\n"
"- [code]\"start_element\"[/code] элемент доступности начала выделения.\n"
"- [code]\"start_char\"[/code] смещение символа относительно элемента "
"доступности начала выделения.\n"
"- [code]\"end_element\"[/code] элемент доступности конца выделения.\n"
"- [code]\"end_char\"[/code] смещение символа относительно элемента "
"доступности конца выделения."

msgid ""
"Replace text action, callback argument is set to [String] with the "
"replacement text."
msgstr ""
"Действие «Заменить текст», аргументу обратного вызова присваивается значение "
"[String] с заменяющим текстом."

msgid "Scroll backward action, callback argument is not set."
msgstr "Действие прокрутки назад, аргумент обратного вызова не задан."

msgid ""
"Scroll down action, callback argument is set to [enum "
"AccessibilityScrollUnit]."
msgstr ""
"Действие прокрутки вниз, аргументу обратного вызова присваивается значение "
"[enum AccessibilityScrollUnit]."

msgid "Scroll forward action, callback argument is not set."
msgstr "Действие прокрутки вперед, аргумент обратного вызова не задан."

msgid ""
"Scroll left action, callback argument is set to [enum "
"AccessibilityScrollUnit]."
msgstr ""
"Действие прокрутки влево, аргументу обратного вызова присвоено значение [enum "
"AccessibilityScrollUnit]."

msgid ""
"Scroll right action, callback argument is set to [enum "
"AccessibilityScrollUnit]."
msgstr ""
"Действие прокрутки вправо, аргументу обратного вызова присвоено значение "
"[enum AccessibilityScrollUnit]."

msgid ""
"Scroll up action, callback argument is set to [enum AccessibilityScrollUnit]."
msgstr ""
"Действие прокрутки вверх, аргумент обратного вызова установлен на [enum "
"AccessibilityScrollUnit]."

msgid ""
"Scroll into view action, callback argument is set to [enum "
"AccessibilityScrollHint]."
msgstr ""
"Прокрутка в действие представления, аргументу обратного вызова присвоено "
"значение [enum AccessibilityScrollHint]."

msgid ""
"Scroll to point action, callback argument is set to [Vector2] with the "
"relative point coordinates."
msgstr ""
"Прокрутите до действия, аргумент обратного вызова устанавливается на "
"[Vector2] с относительными координатами точек."

msgid ""
"Set scroll offset action, callback argument is set to [Vector2] with the "
"scroll offset."
msgstr ""
"Задайте действие смещения прокрутки, аргументу обратного вызова присваивается "
"значение [Vector2] со смещением прокрутки."

msgid ""
"Set value action, callback argument is set to [String] or number with the new "
"value."
msgstr ""
"Действие «Установить значение», аргументу обратного вызова присваивается "
"значение [String] или число с новым значением."

msgid "Show context menu action, callback argument is not set."
msgstr ""
"Действие показать контекстного меню, аргумент обратного вызова не задан."

msgid "Custom action, callback argument is set to the integer action ID."
msgstr ""
"Пользовательское действие, аргумент обратного вызова задается равным "
"целочисленному идентификатору действия."

msgid "Indicates that updates to the live region should not be presented."
msgstr "Указывает, что обновления для текущего региона не должны отображаться."

msgid ""
"Indicates that updates to the live region should be presented at the next "
"opportunity (for example at the end of speaking the current sentence)."
msgstr ""
"Указывает, что обновления активной области должны быть представлены при "
"следующей возможности (например, в конце произнесения текущего предложения)."

msgid ""
"Indicates that updates to the live region have the highest priority and "
"should be presented immediately."
msgstr ""
"Указывает, что обновления в активном регионе имеют наивысший приоритет и "
"должны быть представлены немедленно."

msgid "The amount by which to scroll. A single item of a list, line of text."
msgstr "Величина прокрутки. Отдельный элемент списка, строка текста."

msgid "The amount by which to scroll. A single page."
msgstr "Величина прокрутки. Одна страница."

msgid ""
"A preferred position for the node scrolled into view. Top-left edge of the "
"scroll container."
msgstr ""
"Предпочтительное положение прокручиваемого узла. Верхний левый край "
"контейнера прокрутки."

msgid ""
"A preferred position for the node scrolled into view. Bottom-right edge of "
"the scroll container."
msgstr ""
"Предпочтительное положение прокручиваемого узла. Нижний правый край "
"контейнера прокрутки."

msgid ""
"A preferred position for the node scrolled into view. Top edge of the scroll "
"container."
msgstr ""
"Предпочтительное положение прокручиваемого узла. Верхний край контейнера "
"прокрутки."

msgid ""
"A preferred position for the node scrolled into view. Bottom edge of the "
"scroll container."
msgstr ""
"Предпочтительное положение прокручиваемого узла. Нижний край контейнера "
"прокрутки."

msgid ""
"A preferred position for the node scrolled into view. Left edge of the scroll "
"container."
msgstr ""
"Предпочтительное положение прокручиваемого узла. Левый край контейнера "
"прокрутки."

msgid ""
"A preferred position for the node scrolled into view. Right edge of the "
"scroll container."
msgstr ""
"Предпочтительное положение прокручиваемого узла. Правый край контейнера "
"прокрутки."

msgid "Makes the mouse cursor visible if it is hidden."
msgstr "Делает курсор мыши видимым, если он скрыт."

msgid "Makes the mouse cursor hidden if it is visible."
msgstr "Делает курсор мыши скрытым, если он виден."

msgid ""
"Captures the mouse. The mouse will be hidden and its position locked at the "
"center of the window manager's window.\n"
"[b]Note:[/b] If you want to process the mouse's movement in this mode, you "
"need to use [member InputEventMouseMotion.relative]."
msgstr ""
"Захватывает мышь. Мышь будет скрыта, а ее положение зафиксировано в центре "
"окна менеджера окон.\n"
"[b]Примечание:[/b] Если вы хотите обрабатывать движение мыши в этом режиме, "
"вам нужно использовать [member InputEventMouseMotion.relative]."

msgid "Confines the mouse cursor to the game window, and make it visible."
msgstr "Ограничивает курсор мыши окном игры и делает его видимым."

msgid "Confines the mouse cursor to the game window, and make it hidden."
msgstr "Ограничивает курсор мыши окном игры и делает его скрытым."

msgid "Max value of the [enum MouseMode]."
msgstr "Максимальное значение [enum MouseMode]."

msgid ""
"The ID that refers to a screen that does not exist. This is returned by some "
"[DisplayServer] methods if no screen matches the requested result."
msgstr ""
"ID Идентификатор, который ссылается на экран, который не существует. "
"Возвращается некоторыми методами [DisplayServer], если ни один экран не "
"соответствует запрошенному результату."

msgid ""
"Represents the screen containing the mouse pointer.\n"
"[b]Note:[/b] On Android, iOS, Web, and Linux (Wayland), this constant always "
"represents the screen at index [code]0[/code]."
msgstr ""
"Представляет экран, содержащий указатель мыши.\n"
"[b]Примечание:[/b] В Android, iOS, Web и Linux (Wayland) эта константа всегда "
"представляет экран с индексом [code]0[/code]."

msgid ""
"Represents the screen containing the window with the keyboard focus.\n"
"[b]Note:[/b] On Android, iOS, Web, and Linux (Wayland), this constant always "
"represents the screen at index [code]0[/code]."
msgstr ""
"Представляет экран, содержащий окно с фокусом клавиатуры.\n"
"[b]Примечание:[/b] В Android, iOS, Web и Linux (Wayland) эта константа всегда "
"представляет экран с индексом [code]0[/code]."

msgid ""
"Represents the primary screen.\n"
"[b]Note:[/b] On Android, iOS, Web, and Linux (Wayland), this constant always "
"represents the screen at index [code]0[/code]."
msgstr ""
"Представляет основной экран.\n"
"[b]Примечание:[/b] В Android, iOS, Web и Linux (Wayland) эта константа всегда "
"представляет экран с индексом [code]0[/code]."

msgid ""
"Represents the screen where the main window is located. This is usually the "
"default value in functions that allow specifying one of several screens.\n"
"[b]Note:[/b] On Android, iOS, Web, and Linux (Wayland), this constant always "
"represents the screen at index [code]0[/code]."
msgstr ""
"Представляет экран, на котором расположено главное окно. Обычно это значение "
"по умолчанию в функциях, позволяющих указать один из нескольких экранов.\n"
"[b]Примечание:[/b] В Android, iOS, Web и Linux (Wayland) эта константа всегда "
"представляет экран с индексом [code]0[/code]."

msgid ""
"The ID of the main window spawned by the engine, which can be passed to "
"methods expecting a [code]window_id[/code]."
msgstr ""
"Идентификатор главного окна, созданного движком, который можно передать "
"методам, ожидающим [code]window_id[/code]."

msgid ""
"The ID that refers to a nonexistent window. This is returned by some "
"[DisplayServer] methods if no window matches the requested result."
msgstr ""
"Идентификатор, который ссылается на несуществующее окно. Возвращается "
"некоторыми методами [DisplayServer], если ни одно окно не соответствует "
"запрошенному результату."

msgid "The ID that refers to a nonexistent application status indicator."
msgstr ""
"Идентификатор, ссылающийся на несуществующий индикатор состояния приложения."

msgid "Default landscape orientation."
msgstr "По умолчанию альбомная ориентация."

msgid "Default portrait orientation."
msgstr "Портретная ориентация по умолчанию."

msgid "Reverse landscape orientation (upside down)."
msgstr "Обратная альбомная ориентация (вверх ногами)."

msgid "Reverse portrait orientation (upside down)."
msgstr "Обратная портретная ориентация (вверх ногами)."

msgid ""
"Automatic landscape orientation (default or reverse depending on sensor)."
msgstr ""
"Автоматическая альбомная ориентация (по умолчанию или обратная в зависимости "
"от датчика)."

msgid "Automatic portrait orientation (default or reverse depending on sensor)."
msgstr ""
"Автоматическая портретная ориентация (по умолчанию или обратная в зависимости "
"от датчика)."

msgid ""
"Automatic landscape or portrait orientation (default or reverse depending on "
"sensor)."
msgstr ""
"Автоматическая альбомная или портретная ориентация (по умолчанию или обратная "
"в зависимости от датчика)."

msgid "Default text virtual keyboard."
msgstr "Текстовая виртуальная клавиатура по умолчанию."

msgid "Multiline virtual keyboard."
msgstr "Многострочная виртуальная клавиатура."

msgid "Virtual number keypad, useful for PIN entry."
msgstr "Виртуальная цифровая клавиатура, полезная для ввода ПИН-кода."

msgid "Virtual number keypad, useful for entering fractional numbers."
msgstr "Виртуальная цифровая клавиатура, полезная для ввода дробных чисел."

msgid "Virtual phone number keypad."
msgstr "Виртуальная клавиатура для набора номера телефона."

msgid ""
"Virtual keyboard with additional keys to assist with typing email addresses."
msgstr ""
"Виртуальная клавиатура с дополнительными клавишами для облегчения ввода "
"адресов электронной почты."

msgid ""
"Virtual keyboard for entering a password. On most platforms, this should "
"disable autocomplete and autocapitalization.\n"
"[b]Note:[/b] This is not supported on Web. Instead, this behaves identically "
"to [constant KEYBOARD_TYPE_DEFAULT]."
msgstr ""
"Виртуальная клавиатура для ввода пароля. На большинстве платформ это должно "
"отключить автозаполнение и автоматическую капитализацию.\n"
"[b]Примечание:[/b] Это не поддерживается в Web. Вместо этого это ведет себя "
"идентично [constant KEYBOARD_TYPE_DEFAULT]."

msgid "Virtual keyboard with additional keys to assist with typing URLs."
msgstr ""
"Виртуальная клавиатура с дополнительными клавишами для облегчения ввода URL-"
"адресов."

msgid ""
"Arrow cursor shape. This is the default when not pointing anything that "
"overrides the mouse cursor, such as a [LineEdit] or [TextEdit]."
msgstr ""
"Форма курсора-стрелки. Это значение по умолчанию, когда не указывается "
"ничего, что переопределяет курсор мыши, например [LineEdit] или [TextEdit]."

msgid ""
"I-beam cursor shape. This is used by default when hovering a control that "
"accepts text input, such as [LineEdit] or [TextEdit]."
msgstr ""
"Форма курсора I-beam. Используется по умолчанию при наведении на элемент "
"управления, принимающий текстовый ввод, например [LineEdit] или [TextEdit]."

msgid ""
"Pointing hand cursor shape. This is used by default when hovering a "
"[LinkButton] or a URL tag in a [RichTextLabel]."
msgstr ""
"Форма указующего курсора руки. Используется по умолчанию при наведении на "
"[LinkButton] или тег URL в [RichTextLabel]."

msgid ""
"Crosshair cursor. This is intended to be displayed when the user needs "
"precise aim over an element, such as a rectangle selection tool or a color "
"picker."
msgstr ""
"Курсор-перекрестие. Он предназначен для отображения, когда пользователю "
"необходимо точно навести курсор на элемент, например, на инструмент выделения "
"прямоугольника или на палитру цветов."

msgid ""
"Wait cursor. On most cursor themes, this displays a spinning icon [i]besides[/"
"i] the arrow. Intended to be used for non-blocking operations (when the user "
"can do something else at the moment). See also [constant CURSOR_BUSY]."
msgstr ""
"Курсор ожидания. В большинстве тем курсора это отображает вращающийся значок "
"[i]рядом[/i] со стрелкой. Предназначено для использования в неблокирующих "
"операциях (когда пользователь может делать что-то еще в данный момент). См. "
"также [constant CURSOR_BUSY]."

msgid ""
"Wait cursor. On most cursor themes, this [i]replaces[/i] the arrow with a "
"spinning icon. Intended to be used for blocking operations (when the user "
"can't do anything else at the moment). See also [constant CURSOR_WAIT]."
msgstr ""
"Курсор ожидания. В большинстве тем курсора это [i]заменяет[/i] стрелку на "
"вращающийся значок. Предназначено для использования при блокировке операций "
"(когда пользователь не может сделать ничего другого в данный момент). См. "
"также [constant CURSOR_WAIT]."

msgid ""
"Dragging hand cursor. This is displayed during drag-and-drop operations. See "
"also [constant CURSOR_CAN_DROP]."
msgstr ""
"Перетаскивание курсора руки. Отображается во время операций перетаскивания. "
"См. также [constant CURSOR_CAN_DROP]."

msgid ""
"\"Can drop\" cursor. This is displayed during drag-and-drop operations if "
"hovering over a [Control] that can accept the drag-and-drop event. On most "
"cursor themes, this displays a dragging hand with an arrow symbol besides it. "
"See also [constant CURSOR_DRAG]."
msgstr ""
"Курсор «Можно отпустить». Отображается во время операций перетаскивания, если "
"навести курсор на [Control], который может принять событие перетаскивания. В "
"большинстве тем курсора отображается перетаскивающая рука с символом стрелки "
"рядом с ней. См. также [constant CURSOR_DRAG]."

msgid ""
"Forbidden cursor. This is displayed during drag-and-drop operations if the "
"hovered [Control] can't accept the drag-and-drop event."
msgstr ""
"Запрещенный курсор. Отображается во время операций перетаскивания, если "
"наведенный [Control] не может принять событие перетаскивания."

msgid ""
"Vertical resize cursor. Intended to be displayed when the hovered [Control] "
"can be vertically resized using the mouse. See also [constant CURSOR_VSPLIT]."
msgstr ""
"Курсор изменения вертикального размера. Предназначен для отображения при "
"наведении [Control] можно изменять размер по вертикали с помощью мыши. См. "
"также [constant CURSOR_VSPLIT]."

msgid ""
"Horizontal resize cursor. Intended to be displayed when the hovered [Control] "
"can be horizontally resized using the mouse. See also [constant "
"CURSOR_HSPLIT]."
msgstr ""
"Курсор изменения размера по горизонтали. Предназначен для отображения при "
"наведении [Control] можно изменять размер по горизонтали с помощью мыши. См. "
"также [constant CURSOR_HSPLIT]."

msgid ""
"Secondary diagonal resize cursor (top-right/bottom-left). Intended to be "
"displayed when the hovered [Control] can be resized on both axes at once "
"using the mouse."
msgstr ""
"Вторичный диагональный курсор изменения размера (сверху справа/снизу слева). "
"Предназначен для отображения при наведении [Control] можно изменять размер по "
"обеим осям одновременно с помощью мыши."

msgid ""
"Main diagonal resize cursor (top-left/bottom-right). Intended to be displayed "
"when the hovered [Control] can be resized on both axes at once using the "
"mouse."
msgstr ""
"Главный диагональный курсор изменения размера (сверху слева/снизу справа). "
"Предназначен для отображения при наведении [Control] можно изменять размер по "
"обеим осям одновременно с помощью мыши."

msgid ""
"Move cursor. Intended to be displayed when the hovered [Control] can be moved "
"using the mouse."
msgstr ""
"Переместить курсор. Предназначено для отображения при наведении [Control] и "
"может перемещаться с помощью мыши."

msgid ""
"Vertical split cursor. This is displayed when hovering a [Control] with "
"splits that can be vertically resized using the mouse, such as "
"[VSplitContainer]. On some cursor themes, this cursor may have the same "
"appearance as [constant CURSOR_VSIZE]."
msgstr ""
"Вертикальный разделенный курсор. Отображается при наведении на [Control] с "
"разделителями, которые можно изменять по вертикали с помощью мыши, например, "
"[VSplitContainer]. В некоторых темах курсора этот курсор может иметь тот же "
"вид, что и [constant CURSOR_VSIZE]."

msgid ""
"Horizontal split cursor. This is displayed when hovering a [Control] with "
"splits that can be horizontally resized using the mouse, such as "
"[HSplitContainer]. On some cursor themes, this cursor may have the same "
"appearance as [constant CURSOR_HSIZE]."
msgstr ""
"Горизонтальный разделенный курсор. Отображается при наведении на [Control] с "
"разделителями, которые можно изменять по горизонтали с помощью мыши, "
"например, [HSplitContainer]. В некоторых темах курсора этот курсор может "
"иметь тот же вид, что и [constant CURSOR_HSIZE]."

msgid ""
"Help cursor. On most cursor themes, this displays a question mark icon "
"instead of the mouse cursor. Intended to be used when the user has requested "
"help on the next element that will be clicked."
msgstr ""
"Курсор справки. В большинстве тем курсора это отображает значок "
"вопросительного знака вместо курсора мыши. Предназначено для использования, "
"когда пользователь запросил справку по следующему элементу, который будет "
"нажат."

msgid "Represents the size of the [enum CursorShape] enum."
msgstr "Представляет размер перечисления [enum CursorShape]."

msgid "The native file dialog allows selecting one, and only one file."
msgstr ""
"Собственный диалог выбора файла позволяет выбрать один и только один файл."

msgid "The native file dialog allows selecting multiple files."
msgstr "Собственный файловый диалог позволяет выбрать несколько файлов."

msgid ""
"The native file dialog only allows selecting a directory, disallowing the "
"selection of any file."
msgstr ""
"Собственный диалог файлов позволяет выбрать только каталог, не позволяя "
"выбрать какой-либо файл."

msgid "The native file dialog allows selecting one file or directory."
msgstr "Собственный файловый диалог позволяет выбрать один файл или каталог."

msgid "The native file dialog will warn when a file exists."
msgstr "Собственный диалог файлов выдаст предупреждение, если файл существует."

msgid ""
"Windowed mode, i.e. [Window] doesn't occupy the whole screen (unless set to "
"the size of the screen)."
msgstr ""
"Оконный режим, т. е. [Window] не занимает весь экран (если не установлен "
"размер экрана)."

msgid ""
"Minimized window mode, i.e. [Window] is not visible and available on window "
"manager's window list. Normally happens when the minimize button is pressed."
msgstr ""
"Режим минимизированного окна, т.е. [Window] не отображается и недоступно в "
"списке окон оконного менеджера. Обычно происходит при нажатии кнопки "
"минимизации."

msgid ""
"Maximized window mode, i.e. [Window] will occupy whole screen area except "
"task bar and still display its borders. Normally happens when the maximize "
"button is pressed."
msgstr ""
"Режим развернутого окна, т. е. [Window] займет всю область экрана, кроме "
"панели задач, и по-прежнему будет отображать ее границы. Обычно это "
"происходит при нажатии кнопки развертывания."

msgid ""
"Full screen mode with full multi-window support.\n"
"Full screen window covers the entire display area of a screen and has no "
"decorations. The display's video mode is not changed.\n"
"[b]On Android:[/b] This enables immersive mode.\n"
"[b]On macOS:[/b] A new desktop is used to display the running project.\n"
"[b]Note:[/b] Regardless of the platform, enabling full screen will change the "
"window size to match the monitor's size. Therefore, make sure your project "
"supports [url=$DOCS_URL/tutorials/rendering/"
"multiple_resolutions.html]multiple resolutions[/url] when enabling full "
"screen mode."
msgstr ""
"Полноэкранный режим с полной поддержкой многооконности.\n"
"Полноэкранное окно охватывает всю область отображения экрана и не имеет "
"украшений. Видеорежим дисплея не изменяется.\n"
"[b]На Android:[/b] Это включает режим погружения.\n"
"[b]На macOS:[/b] Новый рабочий стол используется для отображения запущенного "
"проекта.\n"
"[b]Примечание:[/b] Независимо от платформы, включение полноэкранного режима "
"изменит размер окна в соответствии с размером монитора. Поэтому убедитесь, "
"что ваш проект поддерживает [url=$DOCS_URL/tutorials/rendering/"
"multiple_resolutions.html]несколько разрешений[/url] при включении "
"полноэкранного режима."

msgid ""
"A single window full screen mode. This mode has less overhead, but only one "
"window can be open on a given screen at a time (opening a child window or "
"application switching will trigger a full screen transition).\n"
"Full screen window covers the entire display area of a screen and has no "
"border or decorations. The display's video mode is not changed.\n"
"[b]Note:[/b] This mode might not work with screen recording software.\n"
"[b]On Android:[/b] This enables immersive mode.\n"
"[b]On Windows:[/b] Depending on video driver, full screen transition might "
"cause screens to go black for a moment.\n"
"[b]On macOS:[/b] A new desktop is used to display the running project. "
"Exclusive full screen mode prevents Dock and Menu from showing up when the "
"mouse pointer is hovering the edge of the screen.\n"
"[b]On Linux (X11):[/b] Exclusive full screen mode bypasses compositor.\n"
"[b]On Linux (Wayland):[/b] Equivalent to [constant WINDOW_MODE_FULLSCREEN].\n"
"[b]Note:[/b] Regardless of the platform, enabling full screen will change the "
"window size to match the monitor's size. Therefore, make sure your project "
"supports [url=$DOCS_URL/tutorials/rendering/"
"multiple_resolutions.html]multiple resolutions[/url] when enabling full "
"screen mode."
msgstr ""
"Однооконный полноэкранный режим. Этот режим менее нагружает систему, но на "
"данном экране одновременно может быть открыто только одно окно (открытие "
"дочернего окна или переключение приложений запускает полноэкранный переход).\n"
"Полноэкранное окно занимает всю область экрана без рамки или декоративных "
"элементов. Видеорежим дисплея не изменяется.\n"
"[b]Примечание:[/b] Этот режим может не работать с программами для записи "
"экрана.\n"
"[b]На Android:[/b] Это включает режим погружения.\n"
"[b]На Windows:[/b] В зависимости от видеодрайвера, полноэкранный переход "
"может привести к кратковременному потемнению экрана.\n"
"[b]На macOS:[/b] Для отображения запущенного проекта используется новый "
"рабочий стол. Эксклюзивный полноэкранный режим предотвращает отображение Dock "
"и меню при наведении указателя мыши на край экрана.\n"
"[b]На Linux (X11):[/b] Эксклюзивный полноэкранный режим обходит "
"композитора. \n"
"[b]В Linux (Wayland):[/b] Эквивалентно [constant WINDOW_MODE_FULLSCREEN].\n"
"[b]Примечание:[/b] Независимо от платформы, включение полноэкранного режима "
"изменит размер окна в соответствии с размером монитора. Поэтому убедитесь, "
"что ваш проект поддерживает [url=$DOCS_URL/tutorials/rendering/"
"multiple_resolutions.html]множественные разрешения[/url] при включении "
"полноэкранного режима."

msgid ""
"The window can't be resized by dragging its resize grip. It's still possible "
"to resize the window using [method window_set_size]. This flag is ignored for "
"full screen windows."
msgstr ""
"Размер окна нельзя изменить, перетаскивая его захват изменения размера. "
"Изменить размер окна все еще возможно с помощью [method window_set_size]. "
"Этот флаг игнорируется для окон на весь экран."

msgid ""
"The window do not have native title bar and other decorations. This flag is "
"ignored for full-screen windows."
msgstr ""
"Окно не имеет родной строки заголовка и других украшений. Этот флаг "
"игнорируется для полноэкранных окон."

msgid ""
"The window is floating on top of all other windows. This flag is ignored for "
"full-screen windows."
msgstr ""
"Окно плавает поверх всех других окон. Этот флаг игнорируется для "
"полноэкранных окон."

msgid ""
"The window background can be transparent.\n"
"[b]Note:[/b] This flag has no effect if [method "
"is_window_transparency_available] returns [code]false[/code].\n"
"[b]Note:[/b] Transparency support is implemented on Linux (X11/Wayland), "
"macOS, and Windows, but availability might vary depending on GPU driver, "
"display manager, and compositor capabilities.\n"
"[b]Note:[/b] Transparency support is implemented on Android, but can only be "
"enabled via [member ProjectSettings.display/window/per_pixel_transparency/"
"allowed]. This flag has no effect on Android."
msgstr ""
"Фон окна может быть прозрачным.\n"
"[b]Примечание:[/b] Этот флаг не действует, если [method "
"is_window_transparency_available] возвращает [code]false[/code].\n"
"[b]Примечание:[/b] Поддержка прозрачности реализована в Linux (X11/Wayland), "
"macOS и Windows, но её доступность может зависеть от драйвера видеокарты, "
"диспетчера отображения и возможностей компоновщика.\n"
"[b]Примечание:[/b] Поддержка прозрачности реализована в Android, но её можно "
"включить только через [member ProjectSettings.display/window/"
"per_pixel_transparency/allowed]. Этот флаг не действует в Android."

msgid ""
"The window can't be focused. No-focus window will ignore all input, except "
"mouse clicks."
msgstr ""
"Окно не может быть сфокусировано. Окно без фокуса будет игнорировать весь "
"ввод, кроме щелчков мыши."

msgid ""
"Window is part of menu or [OptionButton] dropdown. This flag can't be changed "
"when the window is visible. An active popup window will exclusively receive "
"all input, without stealing focus from its parent. Popup windows are "
"automatically closed when uses click outside it, or when an application is "
"switched. Popup window must have transient parent set (see [method "
"window_set_transient])."
msgstr ""
"Окно является частью меню или раскрывающегося списка [OptionButton]. Этот "
"флаг нельзя изменить, когда окно видимо. Активное всплывающее окно будет "
"получать весь ввод исключительно, не перехватывая фокус у своего родителя. "
"Всплывающие окна автоматически закрываются, когда пользователи щелкают за его "
"пределами или когда переключается приложение. Всплывающее окно должно иметь "
"установленный временный родительский элемент (см. [method "
"window_set_transient])."

msgid ""
"Window content is expanded to the full size of the window. Unlike borderless "
"window, the frame is left intact and can be used to resize the window, title "
"bar is transparent, but have minimize/maximize/close buttons.\n"
"Use [method window_set_window_buttons_offset] to adjust minimize/maximize/"
"close buttons offset.\n"
"Use [method window_get_safe_title_margins] to determine area under the title "
"bar that is not covered by decorations.\n"
"[b]Note:[/b] This flag is implemented only on macOS."
msgstr ""
"Содержимое окна расширяется до полного размера окна. В отличие от окна без "
"границ, рамка остается нетронутой и может использоваться для изменения "
"размера окна, строка заголовка прозрачна, но имеет кнопки свернуть/развернуть/"
"закрыть.\n"
"Используйте [method window_set_window_buttons_offset] для настройки смещения "
"кнопок свернуть/развернуть/закрыть.\n"
"Используйте [method window_get_safe_title_margins] для определения области "
"под строкой заголовка, которая не закрыта украшениями.\n"
"[b]Примечание:[/b] Этот флаг реализован только в macOS."

msgid ""
"All mouse events are passed to the underlying window of the same application."
msgstr "Все события мыши передаются в базовое окно того же приложения."

msgid ""
"Window style is overridden, forcing sharp corners.\n"
"[b]Note:[/b] This flag is implemented only on Windows (11)."
msgstr ""
"Стиль окна переопределяется, что приводит к появлению острых углов.\n"
"[b]Примечание:[/b] Этот флаг реализован только в Windows (11)."

msgid ""
"Window is excluded from screenshots taken by [method screen_get_image], "
"[method screen_get_image_rect], and [method screen_get_pixel].\n"
"[b]Note:[/b] This flag is implemented on macOS and Windows (10, 20H1).\n"
"[b]Note:[/b] Setting this flag will prevent standard screenshot methods from "
"capturing a window image, but does [b]NOT[/b] guarantee that other apps won't "
"be able to capture an image. It should not be used as a DRM or security "
"measure."
msgstr ""
"Окно исключается из снимков экрана, сделанных методами [method "
"screen_get_image], [method screen_get_image_rect] и [method "
"screen_get_pixel].\n"
"[b]Примечание:[/b] Этот флаг реализован в macOS и Windows (10, 20H1).\n"
"[b]Примечание:[/b] Установка этого флага предотвратит захват изображения окна "
"стандартными методами скриншотов, но [b]НЕ[/b] гарантирует, что другие "
"приложения не смогут сделать снимок. Его не следует использовать в качестве "
"DRM-защиты или меры безопасности."

msgid ""
"Signals the window manager that this window is supposed to be an "
"implementation-defined \"popup\" (usually a floating, borderless, untileable "
"and immovable child window)."
msgstr ""
"Сообщает диспетчеру окон, что данное окно должно быть «всплывающим» окном, "
"определяемым реализацией (обычно плавающим, безрамочным, неразворачиваемым и "
"неподвижным дочерним окном)."

msgid ""
"Window minimize button is disabled.\n"
"[b]Note:[/b] This flag is implemented on macOS and Windows."
msgstr ""
"Кнопка минимизации окна отключена.\n"
"[b]Примечание:[/b] Этот флаг реализован в macOS и Windows."

msgid ""
"Window maximize button is disabled.\n"
"[b]Note:[/b] This flag is implemented on macOS and Windows."
msgstr ""
"Кнопка максимизации окна отключена.\n"
"[b]Примечание:[/b] Этот флаг реализован в macOS и Windows."

msgid "Max value of the [enum WindowFlags]."
msgstr "Максимальное значение [enum WindowFlags]."

msgid "Sent when the mouse pointer enters the window."
msgstr "Отправляется, когда указатель мыши попадает в окно."

msgid "Sent when the mouse pointer exits the window."
msgstr "Отправляется, когда указатель мыши покидает окно."

msgid "Sent when the window grabs focus."
msgstr "Отправляется, когда окно получает фокус."

msgid "Sent when the window loses focus."
msgstr "Отправляется, когда окно теряет фокус."

msgid ""
"Sent when the user has attempted to close the window (e.g. close button is "
"pressed)."
msgstr ""
"Отправляется, когда пользователь пытается закрыть окно (например, нажимает "
"кнопку закрытия)."

msgid ""
"Sent when the device \"Back\" button is pressed.\n"
"[b]Note:[/b] This event is implemented only on Android."
msgstr ""
"Отправляется при нажатии кнопки «Назад» на устройстве.\n"
"[b]Примечание:[/b] Это событие реализовано только на Android."

msgid ""
"Sent when the window is moved to the display with different DPI, or display "
"DPI is changed.\n"
"[b]Note:[/b] This flag is implemented only on macOS and Linux (Wayland)."
msgstr ""
"Отправляется, когда окно перемещается на дисплей с другим DPI или изменяется "
"DPI дисплея.\n"
"[b]Примечание:[/b] Этот флаг реализован только в macOS и Linux (Wayland)."

msgid ""
"Sent when the window title bar decoration is changed (e.g. [constant "
"WINDOW_FLAG_EXTEND_TO_TITLE] is set or window entered/exited full screen "
"mode).\n"
"[b]Note:[/b] This flag is implemented only on macOS."
msgstr ""
"Отправляется при изменении оформления заголовка окна (например, установлена "
"[constant WINDOW_FLAG_EXTEND_TO_TITLE] или окно перешло/вышло из "
"полноэкранного режима).\n"
"[b]Примечание:[/b] Этот флаг реализован только в macOS."

msgid ""
"Sent when the window has been forcibly closed by the Display Server. The "
"window shall immediately hide and clean any internal rendering references.\n"
"[b]Note:[/b] This flag is implemented only on Linux (Wayland)."
msgstr ""
"Отправляется, когда окно принудительно закрыто Display Server. Окно "
"немедленно скроет и очистит все внутренние ссылки на рендеринг.\n"
"[b]Примечание:[/b] Этот флаг реализован только в Linux (Wayland)."

msgid "Top-left edge of a window."
msgstr "Верхний левый край окна."

msgid "Top edge of a window."
msgstr "Верхний край окна."

msgid "Top-right edge of a window."
msgstr "Правый верхний край окна."

msgid "Left edge of a window."
msgstr "Левый край окна."

msgid "Right edge of a window."
msgstr "Правый край окна."

msgid "Bottom-left edge of a window."
msgstr "Нижний левый край окна."

msgid "Bottom edge of a window."
msgstr "Нижний край окна."

msgid "Bottom-right edge of a window."
msgstr "Нижний правый угол окна."

msgid "Represents the size of the [enum WindowResizeEdge] enum."
msgstr "Представляет размер перечисления [enum WindowResizeEdge]."

msgid ""
"No vertical synchronization, which means the engine will display frames as "
"fast as possible (tearing may be visible). Framerate is unlimited (regardless "
"of [member Engine.max_fps])."
msgstr ""
"Вертикальная синхронизация отключена, это означает что движок будет пытаться "
"обновлять кадры как можно чаще (из-за этого могут быть заметны разрывы "
"изображения). Частота кадров неограничена (независимо от [member "
"Engine.max_fps])."

msgid ""
"Default vertical synchronization mode, the image is displayed only on "
"vertical blanking intervals (no tearing is visible). Framerate is limited by "
"the monitor refresh rate (regardless of [member Engine.max_fps])."
msgstr ""
"Режим вертикальной синхронизации по умолчанию, изображение отображается "
"только в интервалах вертикального гашения (разрывы не видны). Частота кадров "
"ограничена частотой обновления монитора (независимо от [member "
"Engine.max_fps])."

msgid ""
"Behaves like [constant VSYNC_DISABLED] when the framerate drops below the "
"screen's refresh rate to reduce stuttering (tearing may be visible). "
"Otherwise, vertical synchronization is enabled to avoid tearing. Framerate is "
"limited by the monitor refresh rate (regardless of [member Engine.max_fps]). "
"Behaves like [constant VSYNC_ENABLED] when using the Compatibility rendering "
"method."
msgstr ""
"Ведет себя как [constant VSYNC_DISABLED], когда частота кадров падает ниже "
"частоты обновления экрана, чтобы уменьшить заикание (разрывы могут быть "
"видны). В противном случае включается вертикальная синхронизация, чтобы "
"избежать разрывов. Частота кадров ограничена частотой обновления монитора "
"(независимо от [member Engine.max_fps]). Ведет себя как [constant "
"VSYNC_ENABLED] при использовании метода рендеринга Compatibility."

msgid ""
"Displays the most recent image in the queue on vertical blanking intervals, "
"while rendering to the other images (no tearing is visible). Framerate is "
"unlimited (regardless of [member Engine.max_fps]).\n"
"Although not guaranteed, the images can be rendered as fast as possible, "
"which may reduce input lag (also called \"Fast\" V-Sync mode). [constant "
"VSYNC_MAILBOX] works best when at least twice as many frames as the display "
"refresh rate are rendered. Behaves like [constant VSYNC_ENABLED] when using "
"the Compatibility rendering method."
msgstr ""
"Отображает последнее изображение в очереди на интервалах вертикального "
"гашения, при этом выполняется рендеринг других изображений (разрывы не "
"видны). Частота кадров не ограничена (независимо от [member "
"Engine.max_fps]).\n"
"Хотя это и не гарантируется, изображения могут быть отрисованы максимально "
"быстро, что может уменьшить задержку ввода (также называется режимом "
"«Быстрой» вертикальной синхронизации). [constant VSYNC_MAILBOX] работает "
"лучше всего, когда отрисовывается как минимум вдвое больше кадров, чем "
"частота обновления дисплея. Ведет себя как [constant VSYNC_ENABLED] при "
"использовании метода рендеринга совместимости."

msgid ""
"Display handle:\n"
"- Linux (X11): [code]X11::Display*[/code] for the display.\n"
"- Linux (Wayland): [code]wl_display[/code] for the display.\n"
"- Android: [code]EGLDisplay[/code] for the display."
msgstr ""
"Дескриптор дисплея:\n"
"- Linux (X11): [code]X11::Display*[/code] для дисплея.\n"
"- Linux (Wayland): [code]wl_display[/code] для дисплея.\n"
"- Android: [code]EGLDisplay[/code] для дисплея."

msgid ""
"Window handle:\n"
"- Windows: [code]HWND[/code] for the window.\n"
"- Linux (X11): [code]X11::Window*[/code] for the window.\n"
"- Linux (Wayland): [code]wl_surface[/code] for the window.\n"
"- macOS: [code]NSWindow*[/code] for the window.\n"
"- iOS: [code]UIViewController*[/code] for the view controller.\n"
"- Android: [code]jObject[/code] for the activity."
msgstr ""
"Дескриптор окна:\n"
"- Windows: [code]HWND[/code] для окна.\n"
"- Linux (X11): [code]X11::Window*[/code] для окна.\n"
"- Linux (Wayland): [code]wl_surface[/code] для окна.\n"
"- macOS: [code]NSWindow*[/code] для окна.\n"
"- iOS: [code]UIViewController*[/code] для контроллера представления.\n"
"- Android: [code]jObject[/code] для активности."

msgid ""
"Window view:\n"
"- Windows: [code]HDC[/code] for the window (only with the Compatibility "
"renderer).\n"
"- macOS: [code]NSView*[/code] for the window main view.\n"
"- iOS: [code]UIView*[/code] for the window main view."
msgstr ""
"Вид окна:\n"
"- Windows: [code]HDC[/code] для окна (только с Compatibility renderer).\n"
"- macOS: [code]NSView*[/code] для основного вида окна.\n"
"- iOS: [code]UIView*[/code] для основного вида окна."

msgid ""
"OpenGL context (only with the Compatibility renderer):\n"
"- Windows: [code]HGLRC[/code] for the window (native GL), or "
"[code]EGLContext[/code] for the window (ANGLE).\n"
"- Linux (X11): [code]GLXContext*[/code] for the window.\n"
"- Linux (Wayland): [code]EGLContext[/code] for the window.\n"
"- macOS: [code]NSOpenGLContext*[/code] for the window (native GL), or "
"[code]EGLContext[/code] for the window (ANGLE).\n"
"- Android: [code]EGLContext[/code] for the window."
msgstr ""
"Контекст OpenGL (только с Compatibility renderer):\n"
"- Windows: [code]HGLRC[/code] для окна (собственный GL) или [code]EGLContext[/"
"code] для окна (ANGLE).\n"
"- Linux (X11): [code]GLXContext*[/code] для окна.\n"
"- Linux (Wayland): [code]EGLContext[/code] для окна.\n"
"- macOS: [code]NSOpenGLContext*[/code] для окна (собственный GL) или "
"[code]EGLContext[/code] для окна (ANGLE).\n"
"- Android: [code]EGLContext[/code] для окна."

msgid ""
"- Windows: [code]EGLDisplay[/code] for the window (ANGLE).\n"
"- macOS: [code]EGLDisplay[/code] for the window (ANGLE).\n"
"- Linux (Wayland): [code]EGLDisplay[/code] for the window."
msgstr ""
"- Windows: [code]EGLDisplay[/code] для окна (ANGLE).\n"
"- macOS: [code]EGLDisplay[/code] для окна (ANGLE).\n"
"- Linux (Wayland): [code]EGLDisplay[/code] для окна."

msgid ""
"- Windows: [code]EGLConfig[/code] for the window (ANGLE).\n"
"- macOS: [code]EGLConfig[/code] for the window (ANGLE).\n"
"- Linux (Wayland): [code]EGLConfig[/code] for the window."
msgstr ""
"- Windows: [code]EGLConfig[/code] для окна (ANGLE).\n"
"- macOS: [code]EGLConfig[/code] для окна (ANGLE).\n"
"- Linux (Wayland): [code]EGLConfig[/code] для окна."

msgid "Utterance has begun to be spoken."
msgstr "Высказывания начали звучать."

msgid "Utterance was successfully finished."
msgstr "Высказывание было успешно завершено."

msgid "Utterance was canceled, or TTS service was unable to process it."
msgstr "Высказывание было отменено, или служба TTS не смогла его обработать."

msgid "Utterance reached a word or sentence boundary."
msgstr "Высказывание достигло границы слова или предложения."

msgid "An automatically scalable [Texture2D] based on an SVG image."
msgstr "Автоматически масштабируемая [Texture2D] на основе изображения SVG."

msgid ""
"An automatically scalable [Texture2D] based on an SVG image. [DPITexture]s "
"are used to automatically re-rasterize icons and other texture based UI theme "
"elements to match viewport scale and font oversampling. See also [member "
"ProjectSettings.display/window/stretch/mode] (\"canvas_items\" mode) and "
"[member Viewport.oversampling_override]."
msgstr ""
"Автоматически масштабируемая [Texture2D] на основе изображения SVG. "
"[DPITexture] используются для автоматической перерастеризации значков и "
"других элементов темы пользовательского интерфейса на основе текстур в "
"соответствии с масштабом области просмотра и передискретизацией шрифтов. См. "
"также [member ProjectSettings.display/window/stretch/mode] (режим "
"\"canvas_items\") и [member Viewport.oversampling_override]."

msgid ""
"Creates a new [DPITexture] and initializes it by allocating and setting the "
"SVG data from string."
msgstr ""
"Создает новый [DPITexture] и инициализирует его путем выделения и установки "
"данных SVG из строки."

msgid ""
"Returns the [RID] of the texture rasterized to match the oversampling of the "
"currently drawn canvas item."
msgstr ""
"Возвращает [RID] текстуры, растеризированной для соответствия избыточной "
"выборке текущего нарисованного элемента холста."

msgid "Returns SVG source code."
msgstr "Возвращает исходный код SVG."

msgid "Resizes the texture to the specified dimensions."
msgstr "Изменяет размер текстуры до указанных размеров."

msgid "Sets SVG source code."
msgstr "Устанавливает исходный код SVG."

msgid ""
"Texture scale. [code]1.0[/code] is the original SVG size. Higher values "
"result in a larger image."
msgstr ""
"Масштаб текстуры. [code]1.0[/code] — исходный размер SVG. Более высокие "
"значения приводят к увеличению размера изображения."

msgid "If set, remaps texture colors according to [Color]-[Color] map."
msgstr ""
"Если установлено, переназначает цвета текстуры в соответствии с картой "
"[Color]-[Color]."

msgid "Overrides texture saturation."
msgstr "Переопределяет насыщенность текстуры."

msgid "Helper class to implement a DTLS server."
msgstr "Вспомогательный класс для реализации сервера DTLS."

msgid ""
"This class is used to store the state of a DTLS server. Upon [method setup] "
"it converts connected [PacketPeerUDP] to [PacketPeerDTLS] accepting them via "
"[method take_connection] as DTLS clients. Under the hood, this class is used "
"to store the DTLS state and cookies of the server. The reason of why the "
"state and cookies are needed is outside of the scope of this documentation.\n"
"Below a small example of how to use it:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# server_node.gd\n"
"extends Node\n"
"\n"
"var dtls = DTLSServer.new()\n"
"var server = UDPServer.new()\n"
"var peers = []\n"
"\n"
"func _ready():\n"
"\tserver.listen(4242)\n"
"\tvar key = load(\"key.key\") # Your private key.\n"
"\tvar cert = load(\"cert.crt\") # Your X509 certificate.\n"
"\tdtls.setup(TlsOptions.server(key, cert))\n"
"\n"
"func _process(delta):\n"
"\twhile server.is_connection_available():\n"
"\t\tvar peer = server.take_connection()\n"
"\t\tvar dtls_peer = dtls.take_connection(peer)\n"
"\t\tif dtls_peer.get_status() != PacketPeerDTLS.STATUS_HANDSHAKING:\n"
"\t\t\tcontinue # It is normal that 50% of the connections fails due to cookie "
"exchange.\n"
"\t\tprint(\"Peer connected!\")\n"
"\t\tpeers.append(dtls_peer)\n"
"\n"
"\tfor p in peers:\n"
"\t\tp.poll() # Must poll to update the state.\n"
"\t\tif p.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
"\t\t\twhile p.get_available_packet_count() > 0:\n"
"\t\t\t\tprint(\"Received message from client: %s\" % "
"p.get_packet().get_string_from_utf8())\n"
"\t\t\t\tp.put_packet(\"Hello DTLS client\".to_utf8_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"// ServerNode.cs\n"
"using Godot;\n"
"\n"
"public partial class ServerNode : Node\n"
"{\n"
"\tprivate DtlsServer _dtls = new DtlsServer();\n"
"\tprivate UdpServer _server = new UdpServer();\n"
"\tprivate Godot.Collections.Array<PacketPeerDtls> _peers = [];\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_server.Listen(4242);\n"
"\t\tvar key = GD.Load<CryptoKey>(\"key.key\"); // Your private key.\n"
"\t\tvar cert = GD.Load<X509Certificate>(\"cert.crt\"); // Your X509 "
"certificate.\n"
"\t\t_dtls.Setup(TlsOptions.Server(key, cert));\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\twhile (_server.IsConnectionAvailable())\n"
"\t\t{\n"
"\t\t\tPacketPeerUdp peer = _server.TakeConnection();\n"
"\t\t\tPacketPeerDtls dtlsPeer = _dtls.TakeConnection(peer);\n"
"\t\t\tif (dtlsPeer.GetStatus() != PacketPeerDtls.Status.Handshaking)\n"
"\t\t\t{\n"
"\t\t\t\tcontinue; // It is normal that 50% of the connections fails due to "
"cookie exchange.\n"
"\t\t\t}\n"
"\t\t\tGD.Print(\"Peer connected!\");\n"
"\t\t\t_peers.Add(dtlsPeer);\n"
"\t\t}\n"
"\n"
"\t\tforeach (var p in _peers)\n"
"\t\t{\n"
"\t\t\tp.Poll(); // Must poll to update the state.\n"
"\t\t\tif (p.GetStatus() == PacketPeerDtls.Status.Connected)\n"
"\t\t\t{\n"
"\t\t\t\twhile (p.GetAvailablePacketCount() > 0)\n"
"\t\t\t\t{\n"
"\t\t\t\t\tGD.Print($\"Received Message From Client: "
"{p.GetPacket().GetStringFromUtf8()}\");\n"
"\t\t\t\t\tp.PutPacket(\"Hello DTLS Client\".ToUtf8Buffer());\n"
"\t\t\t\t}\n"
"\t\t\t}\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[codeblocks]\n"
"[gdscript]\n"
"# client_node.gd\n"
"extends Node\n"
"\n"
"var dtls = PacketPeerDTLS.new()\n"
"var udp = PacketPeerUDP.new()\n"
"var connected = false\n"
"\n"
"func _ready():\n"
"\tudp.connect_to_host(\"127.0.0.1\", 4242)\n"
"\tdtls.connect_to_peer(udp, false) # Use true in production for certificate "
"validation!\n"
"\n"
"func _process(delta):\n"
"\tdtls.poll()\n"
"\tif dtls.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
"\t\tif !connected:\n"
"\t\t\t# Try to contact server\n"
"\t\t\tdtls.put_packet(\"The answer is... 42!\".to_utf8_buffer())\n"
"\t\twhile dtls.get_available_packet_count() > 0:\n"
"\t\t\tprint(\"Connected: %s\" % dtls.get_packet().get_string_from_utf8())\n"
"\t\t\tconnected = true\n"
"[/gdscript]\n"
"[csharp]\n"
"// ClientNode.cs\n"
"using Godot;\n"
"using System.Text;\n"
"\n"
"public partial class ClientNode : Node\n"
"{\n"
"\tprivate PacketPeerDtls _dtls = new PacketPeerDtls();\n"
"\tprivate PacketPeerUdp _udp = new PacketPeerUdp();\n"
"\tprivate bool _connected = false;\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_udp.ConnectToHost(\"127.0.0.1\", 4242);\n"
"\t\t_dtls.ConnectToPeer(_udp, validateCerts: false); // Use true in "
"production for certificate validation!\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\t_dtls.Poll();\n"
"\t\tif (_dtls.GetStatus() == PacketPeerDtls.Status.Connected)\n"
"\t\t{\n"
"\t\t\tif (!_connected)\n"
"\t\t\t{\n"
"\t\t\t\t// Try to contact server\n"
"\t\t\t\t_dtls.PutPacket(\"The Answer Is..42!\".ToUtf8Buffer());\n"
"\t\t\t}\n"
"\t\t\twhile (_dtls.GetAvailablePacketCount() > 0)\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print($\"Connected: {_dtls.GetPacket().GetStringFromUtf8()}\");\n"
"\t\t\t\t_connected = true;\n"
"\t\t\t}\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Этот класс используется для хранения состояния сервера DTLS. После [method "
"setup] он преобразует подключенные [PacketPeerUDP] в [PacketPeerDTLS], "
"принимая их через [method take_connection] как клиентов DTLS. Под капотом "
"этот класс используется для хранения состояния DTLS и файлов cookie сервера. "
"Причина, по которой необходимы состояние и файлы cookie, выходит за рамки "
"этой документации.\n"
"Ниже приведен небольшой пример того, как его использовать:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# server_node.gd\n"
"extends Node\n"
"\n"
"var dtls = DTLSServer.new()\n"
"var server = UDPServer.new()\n"
"var peers = []\n"
"\n"
"func _ready():\n"
"\tserver.listen(4242)\n"
"\tvar key = load(\"key.key\") # Ваш закрытый ключ.\n"
"\tvar cert = load(\"cert.crt\") # Ваш сертификат X509.\n"
"\tdtls.setup(TlsOptions.server(key, cert))\n"
"\n"
"func _process(delta):\n"
"\twhile server.is_connection_available():\n"
"\t\tvar peer = server.take_connection()\n"
"\t\tvar dtls_peer = dtls.take_connection(peer)\n"
"\t\tif dtls_peer.get_status() != PacketPeerDTLS.STATUS_HANDSHAKING:\n"
"\t\t\tcontinue # It is normal that 50% of the connections fails due to cookie "
"exchange.\n"
"\t\tprint(\"Peer connected!\")\n"
"\t\tpeers.append(dtls_peer)\n"
"\n"
"\tfor p in peers:\n"
"\t\tp.poll() # Must poll to update the state.\n"
"\t\tif p.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
"\t\t\twhile p.get_available_packet_count() > 0:\n"
"\t\t\t\tprint(\"Received message from client: %s\" % "
"p.get_packet().get_string_from_utf8())\n"
"\t\t\t\tp.put_packet(\"Hello DTLS client\".to_utf8_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"// ServerNode.cs\n"
"using Godot;\n"
"\n"
"public partial class ServerNode : Node\n"
"{\n"
"\tprivate DtlsServer _dtls = new DtlsServer();\n"
"\tprivate UdpServer _server = new UdpServer();\n"
"\tprivate Godot.Collections.Array<PacketPeerDtls> _peers = [];\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_server.Listen(4242);\n"
"\t\tvar key = GD.Load<CryptoKey>(\"key.key\"); // Ваш закрытый ключ.\n"
"\t\tvar cert = GD.Load<X509Certificate>(\"cert.crt\"); // Ваш сертификат "
"X509.\n"
"\t\t_dtls.Setup(TlsOptions.Server(key, cert));\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\twhile (_server.IsConnectionAvailable())\n"
"\t\t{\n"
"\t\t\tPacketPeerUdp peer = _server.TakeConnection();\n"
"\t\t\tPacketPeerDtls dtlsPeer = _dtls.TakeConnection(peer);\n"
"\t\t\tif (dtlsPeer.GetStatus() != PacketPeerDtls.Status.Handshaking)\n"
"\t\t\t{\n"
"\t\t\t\tcontinue; // It is normal that 50% of the connections fails due to "
"cookie exchange.\n"
"\t\t\t}\n"
"\t\t\tGD.Print(\"Peer connected!\");\n"
"\t\t\t_peers.Add(dtlsPeer);\n"
"\t\t}\n"
"\n"
"\t\tforeach (var p in _peers)\n"
"\t\t{\n"
"\t\t\tp.Poll(); // Must poll to update the state.\n"
"\t\t\tif (p.GetStatus() == PacketPeerDtls.Status.Connected)\n"
"\t\t\t{\n"
"\t\t\t\twhile (p.GetAvailablePacketCount() > 0)\n"
"\t\t\t\t{\n"
"\t\t\t\t\tGD.Print($\"Received Message From Client: "
"{p.GetPacket().GetStringFromUtf8()}\");\n"
"\t\t\t\t\tp.PutPacket(\"Hello DTLS Client\".ToUtf8Buffer());\n"
"\t\t\t\t}\n"
"\t\t\t}\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[codeblocks]\n"
"[gdscript]\n"
"# client_node.gd\n"
"extends Node\n"
"\n"
"var dtls = PacketPeerDTLS.new()\n"
"var udp = PacketPeerUDP.new()\n"
"var connected = false\n"
"\n"
"func _ready():\n"
"\tudp.connect_to_host(\"127.0.0.1\", 4242)\n"
"\tdtls.connect_to_peer(udp, false) # Используйте true в производстве для "
"проверки сертификата!\n"
"\n"
"func _process(delta):\n"
"\tdtls.poll()\n"
"\tif dtls.get_status() == PacketPeerDTLS.STATUS_CONNECTED:\n"
"\t\tif !connected:\n"
"\t\t\t# Попробуйте связаться с сервером\n"
"\t\t\tdtls.put_packet(\"The answer is... 42!\".to_utf8_buffer())\n"
"\t\twhile dtls.get_available_packet_count() > 0:\n"
"\t\t\tprint(\"Connected: %s\" % dtls.get_packet().get_string_from_utf8())\n"
"\t\t\tconnected = true\n"
"[/gdscript]\n"
"[csharp]\n"
"// ClientNode.cs\n"
"using Godot;\n"
"using System.Text;\n"
"\n"
"public partial class ClientNode : Node\n"
"{\n"
"\tprivate PacketPeerDtls _dtls = new PacketPeerDtls();\n"
"\tprivate PacketPeerUdp _udp = new PacketPeerUdp();\n"
"\tprivate bool _connected = false;\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_udp.ConnectToHost(\"127.0.0.1\", 4242);\n"
"\t\t_dtls.ConnectToPeer(_udp, validateCerts: false); // Используйте true в "
"производстве для проверки сертификата!\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\t_dtls.Poll();\n"
"\t\tif (_dtls.GetStatus() == PacketPeerDtls.Status.Connected)\n"
"\t\t{\n"
"\t\t\tif (!_connected)\n"
"\t\t\t{\n"
"\t\t\t\t// Попробуйте связаться с сервером\n"
"\t\t\t\t_dtls.PutPacket(\"The Answer Is..42!\".ToUtf8Buffer());\n"
"\t\t\t}\n"
"\t\t\twhile (_dtls.GetAvailablePacketCount() > 0)\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print($\"Connected: {_dtls.GetPacket().GetStringFromUtf8()}\");\n"
"\t\t\t\t_connected = true;\n"
"\t\t\t}\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Setup the DTLS server to use the given [param server_options]. See [method "
"TLSOptions.server]."
msgstr ""
"Настройте сервер DTLS для использования указанного [param server_options]. "
"См. [method TLSOptions.server]."

msgid ""
"Try to initiate the DTLS handshake with the given [param udp_peer] which must "
"be already connected (see [method PacketPeerUDP.connect_to_host]).\n"
"[b]Note:[/b] You must check that the state of the return PacketPeerUDP is "
"[constant PacketPeerDTLS.STATUS_HANDSHAKING], as it is normal that 50% of the "
"new connections will be invalid due to cookie exchange."
msgstr ""
"Попробуйте инициировать рукопожатие DTLS с заданным [param udp_peer], который "
"должен быть уже подключен (см. [method PacketPeerUDP.connect_to_host]).\n"
"[b]Примечание:[/b] Вы должны проверить, что состояние возвращаемого "
"PacketPeerUDP равно [constant PacketPeerDTLS.STATUS_HANDSHAKING], так как "
"нормально, что 50% новых подключений будут недействительными из-за обмена "
"cookie-файлами."

msgid "Godot editor's command palette."
msgstr "Палитра команд редактора Godot."

msgid ""
"Object that holds all the available Commands and their shortcuts text. These "
"Commands can be accessed through [b]Editor > Command Palette[/b] menu.\n"
"Command key names use slash delimiters to distinguish sections, for example: "
"[code]\"example/command1\"[/code] then [code]example[/code] will be the "
"section name.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var command_palette = EditorInterface.get_command_palette()\n"
"# external_command is a function that will be called with the command is "
"executed.\n"
"var command_callable = Callable(self, \"external_command\").bind(arguments)\n"
"command_palette.add_command(\"command\", \"test/command\",command_callable)\n"
"[/gdscript]\n"
"[csharp]\n"
"EditorCommandPalette commandPalette = "
"EditorInterface.Singleton.GetCommandPalette();\n"
"// ExternalCommand is a function that will be called with the command is "
"executed.\n"
"Callable commandCallable = new Callable(this, MethodName.ExternalCommand);\n"
"commandPalette.AddCommand(\"command\", \"test/command\", commandCallable)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_command_palette]."
msgstr ""
"Объект, содержащий все доступные команды и текст их сочетаний клавиш. Доступ "
"к этим командам можно получить через меню [b]Редактор > Палитра команд[/b].\n"
"Имена клавиш команд используют разделители косой черты для различения "
"разделов, например: [code]\"example/command1\"[/code], тогда [code]example[/"
"code] будет именем раздела.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var command_palette = EditorInterface.get_command_palette()\n"
"# external_command — это функция, которая будет вызвана при выполнении "
"команды.\n"
"var command_callable = Callable(self, \"external_command\").bind(arguments)\n"
"command_palette.add_command(\"command\", \"test/command\",command_callable)\n"
"[/gdscript]\n"
"[csharp]\n"
"EditorCommandPalette commandPalette = "
"EditorInterface.Singleton.GetCommandPalette();\n"
"// external_command — это функция, которая будет вызвана при выполнении "
"команды.\n"
"Callable commandCallable = new Callable(this, MethodName.ExternalCommand);\n"
"commandPalette.AddCommand(\"command\", \"test/command\", commandCallable)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Экземпляр этого класса не следует создавать напрямую. "
"Вместо этого, получите доступ к синглтону (singleton), используя [method "
"EditorInterface.get_command_palette]."

msgid ""
"Adds a custom command to EditorCommandPalette.\n"
"- [param command_name]: [String] (Name of the [b]Command[/b]. This is "
"displayed to the user.)\n"
"- [param key_name]: [String] (Name of the key for a particular [b]Command[/"
"b]. This is used to uniquely identify the [b]Command[/b].)\n"
"- [param binded_callable]: [Callable] (Callable of the [b]Command[/b]. This "
"will be executed when the [b]Command[/b] is selected.)\n"
"- [param shortcut_text]: [String] (Shortcut text of the [b]Command[/b] if "
"available.)"
msgstr ""
"Добавляет пользовательскую команду в EditorCommandPalette.\n"
"- [param command_name]: [String] (Имя [b]Command[/b]. Отображается "
"пользователю.)\n"
"- [param key_name]: [String] (Имя клавиши для конкретной [b]Command[/b]. "
"Используется для уникальной идентификации [b]Command[/b].)\n"
"- [param binded_callable]: [Callable] (Вызываемая [b]Command[/b]. Будет "
"выполнена при выборе [b]Command[/b].)\n"
"- [param shortcut_text]: [String] (Текст сочетания клавиш [b]Command[/b], "
"если доступен.)"

msgid ""
"Removes the custom command from EditorCommandPalette.\n"
"- [param key_name]: [String] (Name of the key for a particular [b]Command[/"
"b].)"
msgstr ""
"Удаляет пользовательскую команду из EditorCommandPalette.\n"
"- [param key_name]: [String] (Имя клавиши для конкретной [b]Command[/b].)"

msgid "Plugin for adding custom context menus in the editor."
msgstr "Плагин для добавления пользовательских контекстных меню в редакторе."

msgid ""
"[EditorContextMenuPlugin] allows for the addition of custom options in the "
"editor's context menu.\n"
"Currently, context menus are supported for three commonly used areas: the "
"file system, scene tree, and editor script list panel."
msgstr ""
"[EditorContextMenuPlugin] позволяет добавлять пользовательские параметры в "
"контекстное меню редактора.\n"
"В настоящее время контекстные меню поддерживаются для трех часто используемых "
"областей: файловая система, дерево сцен и панель списка скриптов редактора."

msgid ""
"Called when creating a context menu, custom options can be added by using the "
"[method add_context_menu_item] or [method "
"add_context_menu_item_from_shortcut] functions. [param paths] contains "
"currently selected paths (depending on menu), which can be used to "
"conditionally add options."
msgstr ""
"Вызывается при создании контекстного меню, пользовательские параметры можно "
"добавлять с помощью функций [method add_context_menu_item] или [method "
"add_context_menu_item_from_shortcut]. [param paths] содержит текущие "
"выбранные пути (в зависимости от меню), которые можно использовать для "
"условного добавления параметров."

msgid ""
"Add custom option to the context menu of the plugin's specified slot. When "
"the option is activated, [param callback] will be called. Callback should "
"take single [Array] argument; array contents depend on context menu slot.\n"
"[codeblock]\n"
"func _popup_menu(paths):\n"
"\tadd_context_menu_item(\"File Custom options\", handle, ICON)\n"
"[/codeblock]\n"
"If you want to assign shortcut to the menu item, use [method "
"add_context_menu_item_from_shortcut] instead."
msgstr ""
"Добавить пользовательскую опцию в контекстное меню указанного слота плагина. "
"Когда опция активирована, будет вызван [param callback]. Обратный вызов "
"должен принимать один аргумент [Array]; содержимое массива зависит от слота "
"контекстного меню.\n"
"[codeblock]\n"
"func _popup_menu(paths):\n"
"\tadd_context_menu_item(\"File Custom options\", handle, ICON)\n"
"[/codeblock]\n"
"Если вы хотите назначить ярлык для пункта меню, используйте вместо этого "
"[method add_context_menu_item_from_shortcut]."

msgid ""
"Add custom option to the context menu of the plugin's specified slot. The "
"option will have the [param shortcut] assigned and reuse its callback. The "
"shortcut has to be registered beforehand with [method add_menu_shortcut].\n"
"[codeblock]\n"
"func _init():\n"
"\tadd_menu_shortcut(SHORTCUT, handle)\n"
"\n"
"func _popup_menu(paths):\n"
"\tadd_context_menu_item_from_shortcut(\"File Custom options\", SHORTCUT, "
"ICON)\n"
"[/codeblock]"
msgstr ""
"Добавить пользовательскую опцию в контекстное меню указанного слота плагина. "
"Опции будет назначен [param shortcut] и повторно использовать ее обратный "
"вызов. Сочетание клавиш должно быть предварительно зарегистрировано с помощью "
"[method add_menu_shortcut].\n"
"[codeblock]\n"
"func _init():\n"
"\tadd_menu_shortcut(SHORTCUT, handle)\n"
"\n"
"func _popup_menu(paths):\n"
"\tadd_context_menu_item_from_shortcut(\"File Custom options\", SHORTCUT, "
"ICON)\n"
"[/codeblock]"

msgid ""
"Add a submenu to the context menu of the plugin's specified slot. The submenu "
"is not automatically handled, you need to connect to its signals yourself. "
"Also the submenu is freed on every popup, so provide a new [PopupMenu] every "
"time.\n"
"[codeblock]\n"
"func _popup_menu(paths):\n"
"\tvar popup_menu = PopupMenu.new()\n"
"\tpopup_menu.add_item(\"Blue\")\n"
"\tpopup_menu.add_item(\"White\")\n"
"\tpopup_menu.id_pressed.connect(_on_color_submenu_option)\n"
"\n"
"\tadd_context_submenu_item(\"Set Node Color\", popup_menu)\n"
"[/codeblock]"
msgstr ""
"Добавить подменю в контекстное меню указанного слота плагина. Подменю не "
"обрабатывается автоматически, вам нужно подключиться к его сигналам "
"самостоятельно. Также подменю освобождается при каждом всплывающем окне, "
"поэтому каждый раз предоставляйте новый [PopupMenu].\n"
"[codeblock]\n"
"func _popup_menu(paths):\n"
"\tvar popup_menu = PopupMenu.new()\n"
"\tpopup_menu.add_item(\"Blue\")\n"
"\tpopup_menu.add_item(\"White\")\n"
"\tpopup_menu.id_pressed.connect(_on_color_submenu_option)\n"
"\n"
"\tadd_context_submenu_item(\"Set Node Color\", popup_menu)\n"
"[/codeblock]"

msgid ""
"Registers a shortcut associated with the plugin's context menu. This method "
"should be called once (e.g. in plugin's [method Object._init]). [param "
"callback] will be called when user presses the specified [param shortcut] "
"while the menu's context is in effect (e.g. FileSystem dock is focused). "
"Callback should take single [Array] argument; array contents depend on "
"context menu slot.\n"
"[codeblock]\n"
"func _init():\n"
"\tadd_menu_shortcut(SHORTCUT, handle)\n"
"[/codeblock]"
msgstr ""
"Регистрирует ярлык, связанный с контекстным меню плагина. Этот метод должен "
"быть вызван один раз (например, в [method Object._init] плагина). [param "
"callback] будет вызван, когда пользователь нажмет указанный [param shortcut], "
"пока контекст меню активен (например, док FileSystem находится в фокусе). "
"Обратный вызов должен принимать один аргумент [Array]; содержимое массива "
"зависит от слота контекстного меню.\n"
"[codeblock]\n"
"func _init():\n"
"\tadd_menu_shortcut(SHORTCUT, handle)\n"
"[/codeblock]"

msgid ""
"Context menu of Scene dock. [method _popup_menu] will be called with a list "
"of paths to currently selected nodes, while option callback will receive the "
"list of currently selected nodes."
msgstr ""
"Контекстное меню панели сцен. [method _popup_menu] будет вызван со списком "
"путей к текущим выбранным узлам, в то время как опция обратного вызова "
"получит список текущих выбранных узлов."

msgid ""
"Context menu of FileSystem dock. [method _popup_menu] and option callback "
"will be called with list of paths of the currently selected files."
msgstr ""
"Контекстное меню дока FileSystem. [method _popup_menu] и опция обратного "
"вызова будут вызваны со списком путей к текущим выбранным файлам."

msgid ""
"Context menu of Script editor's script tabs. [method _popup_menu] will be "
"called with the path to the currently edited script, while option callback "
"will receive reference to that script."
msgstr ""
"Контекстное меню вкладок скриптов редактора скриптов. [method _popup_menu] "
"будет вызван с указанием пути к текущему редактируемому скрипту, в то время "
"как опция обратного вызова получит ссылку на этот скрипт."

msgid ""
"The \"Create...\" submenu of FileSystem dock's context menu, or the \"New\" "
"section of the main context menu when empty space is clicked. [method "
"_popup_menu] and option callback will be called with the path of the "
"currently selected folder. When clicking the empty space, the list of paths "
"for popup method will be empty.\n"
"[codeblock]\n"
"func _popup_menu(paths):\n"
"    if paths.is_empty():\n"
"        add_context_menu_item(\"New Image File...\", create_image)\n"
"    else:\n"
"        add_context_menu_item(\"Image File...\", create_image)\n"
"[/codeblock]"
msgstr ""
"Подменю \"Создать...\" контекстного меню дока файловой системы или раздел "
"\"Новый\" главного контекстного меню при щелчке по пустому месту. [method "
"_popup_menu] и функция обратного вызова option будут вызваны с указанием пути "
"к текущей выбранной папке. При щелчке по пустому месту список путей для "
"метода popup будет пустым.\n"
"[codeblock]\n"
"func _popup_menu(paths):\n"
"    if paths.is_empty():\n"
"        add_context_menu_item(\"New Image File...\", create_image)\n"
"    else:\n"
"        add_context_menu_item(\"Image File...\", create_image)\n"
"[/codeblock]"

msgid ""
"Context menu of Script editor's code editor. [method _popup_menu] will be "
"called with the path to the [CodeEdit] node. You can fetch it using this "
"code:\n"
"[codeblock]\n"
"func _popup_menu(paths):\n"
"\tvar code_edit = Engine.get_main_loop().root.get_node(paths[0]);\n"
"[/codeblock]\n"
"The option callback will receive reference to that node. You can use "
"[CodeEdit] methods to perform symbol lookups etc."
msgstr ""
"Контекстное меню редактора кода Script editor. [method _popup_menu] будет "
"вызван с путем к узлу [CodeEdit]. Вы можете получить его с помощью этого "
"кода:\n"
"[codeblock]\n"
"func _popup_menu(paths):\n"
"\tvar code_edit = Engine.get_main_loop().root.get_node(paths[0]);\n"
"[/codeblock]\n"
"Обратный вызов опции получит ссылку на этот узел. Вы можете использовать "
"методы [CodeEdit] для выполнения поиска символов и т. д."

msgid ""
"Context menu of scene tabs. [method _popup_menu] will be called with the path "
"of the clicked scene, or empty [PackedStringArray] if the menu was opened on "
"empty space. The option callback will receive the path of the clicked scene, "
"or empty [String] if none was clicked."
msgstr ""
"Контекстное меню вкладок сцен. [method _popup_menu] будет вызван с путем к "
"выбранной сцене или пустым [PackedStringArray], если меню было открыто на "
"пустом месте. Обратный вызов опции получит путь к выбранной сцене или пустую "
"[String], если ни одна из сцен не была выбрана."

msgid ""
"Context menu of 2D editor's basic right-click menu. [method _popup_menu] will "
"be called with paths to all [CanvasItem] nodes under the cursor. You can "
"fetch them using this code:\n"
"[codeblock]\n"
"func _popup_menu(paths):\n"
"\tvar canvas_item = Engine.get_main_loop().root.get_node(paths[0]); # Replace "
"0 with the desired index.\n"
"[/codeblock]\n"
"The paths array is empty if there weren't any nodes under cursor. The option "
"callback will receive a typed array of [CanvasItem] nodes."
msgstr ""
"Контекстное меню основного меню правой кнопки мыши 2D-редактора. [method "
"_popup_menu] будет вызван с путями ко всем узлам [CanvasItem] под курсором. "
"Вы можете получить их с помощью этого кода:\n"
"[codeblock]\n"
"func _popup_menu(paths):\n"
"\tvar canvas_item = Engine.get_main_loop().root.get_node(paths[0]); # Replace "
"0 with the desired index.\n"
"[/codeblock]\n"
"Массив paths пуст, если под курсором нет узлов. Обратный вызов опции получит "
"типизированный массив узлов [CanvasItem]."

msgid "A base class to implement debugger plugins."
msgstr "Базовый класс для реализации плагинов отладчика."

msgid ""
"[EditorDebuggerPlugin] provides functions related to the editor side of the "
"debugger.\n"
"To interact with the debugger, an instance of this class must be added to the "
"editor via [method EditorPlugin.add_debugger_plugin].\n"
"Once added, the [method _setup_session] callback will be called for every "
"[EditorDebuggerSession] available to the plugin, and when new ones are "
"created (the sessions may be inactive during this stage).\n"
"You can retrieve the available [EditorDebuggerSession]s via [method "
"get_sessions] or get a specific one via [method get_session].\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorPlugin\n"
"\n"
"class ExampleEditorDebugger extends EditorDebuggerPlugin:\n"
"\n"
"\tfunc _has_capture(capture):\n"
"\t\t# Return true if you wish to handle messages with the prefix \"my_plugin:"
"\".\n"
"\t\treturn capture == \"my_plugin\"\n"
"\n"
"\tfunc _capture(message, data, session_id):\n"
"\t\tif message == \"my_plugin:ping\":\n"
"\t\t\tget_session(session_id).send_message(\"my_plugin:echo\", data)\n"
"\t\t\treturn true\n"
"\t\treturn false\n"
"\n"
"\tfunc _setup_session(session_id):\n"
"\t\t# Add a new tab in the debugger session UI containing a label.\n"
"\t\tvar label = Label.new()\n"
"\t\tlabel.name = \"Example plugin\" # Will be used as the tab title.\n"
"\t\tlabel.text = \"Example plugin\"\n"
"\t\tvar session = get_session(session_id)\n"
"\t\t# Listens to the session started and stopped signals.\n"
"\t\tsession.started.connect(func (): print(\"Session started\"))\n"
"\t\tsession.stopped.connect(func (): print(\"Session stopped\"))\n"
"\t\tsession.add_session_tab(label)\n"
"\n"
"var debugger = ExampleEditorDebugger.new()\n"
"\n"
"func _enter_tree():\n"
"\tadd_debugger_plugin(debugger)\n"
"\n"
"func _exit_tree():\n"
"\tremove_debugger_plugin(debugger)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"To connect on the running game side, use the [EngineDebugger] singleton:\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"\n"
"func _ready():\n"
"\tEngineDebugger.register_message_capture(\"my_plugin\", _capture)\n"
"\tEngineDebugger.send_message(\"my_plugin:ping\", [\"test\"])\n"
"\n"
"func _capture(message, data):\n"
"\t# Note that the \"my_plugin:\" prefix is not used here.\n"
"\tif message == \"echo\":\n"
"\t\tprints(\"Echo received:\", data)\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"[b]Note:[/b] While the game is running, [method @GlobalScope.print] and "
"similar functions [i]called in the editor[/i] do not print anything, the "
"Output Log prints only game messages."
msgstr ""
"[EditorDebuggerPlugin] предоставляет функции, связанные с редакторской "
"стороной отладчика.\n"
"Для взаимодействия с отладчиком экземпляр этого класса должен быть добавлен в "
"редактор с помощью [method EditorPlugin.add_debugger_plugin].\n"
"После добавления обратный вызов [method _setup_session] будет вызываться для "
"каждого [EditorDebuggerSession], доступного плагину, и при создании новых "
"(сеансы могут быть неактивны на этом этапе).\n"
"Вы можете получить доступные [EditorDebuggerSession] с помощью [method "
"get_sessions] или получить определенный с помощью [method get_session].\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorPlugin\n"
"\n"
"class ExampleEditorDebugger extends EditorDebuggerPlugin:\n"
"\n"
"\tfunc _has_capture(capture):\n"
"\t\t# Верните true, если вы хотите обрабатывать сообщения с префиксом "
"«my_plugin:».\n"
"\t\treturn capture == \"my_plugin\"\n"
"\n"
"\tfunc _capture(message, data, session_id):\n"
"\t\tif message == \"my_plugin:ping\":\n"
"\t\t\tget_session(session_id).send_message(\"my_plugin:echo\", data)\n"
"\t\t\treturn true\n"
"\t\treturn false\n"
"\n"
"\tfunc _setup_session(session_id):\n"
"\t\t# Добавьте новую вкладку в пользовательский интерфейс сеанса отладчика, "
"содержащую метку.\n"
"\t\tvar label = Label.new()\n"
"\t\tlabel.name = \"Example plugin\" # Will be used as the tab title.\n"
"\t\tlabel.text = \"Example plugin\"\n"
"\t\tvar session = get_session(session_id)\n"
"\t\t# Прослушивает сигналы начала и окончания сеанса.\n"
"\t\tsession.started.connect(func (): print(\"Session started\"))\n"
"\t\tsession.stopped.connect(func (): print(\"Session stopped\"))\n"
"\t\tsession.add_session_tab(label)\n"
"\n"
"var debugger = ExampleEditorDebugger.new()\n"
"\n"
"func _enter_tree():\n"
"\tadd_debugger_plugin(debugger)\n"
"\n"
"func _exit_tree():\n"
"\tremove_debugger_plugin(debugger)\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Для подключения на стороне запущенной игры используйте синглтон "
"[EngineDebugger]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"\n"
"func _ready():\n"
"\tEngineDebugger.register_message_capture(\"my_plugin\", _capture)\n"
"\tEngineDebugger.send_message(\"my_plugin:ping\", [\"test\"])\n"
"\n"
"func _capture(message, data):\n"
"\t# Обратите внимание, что префикс «my_plugin:» здесь не используется.\n"
"\tif message == \"echo\":\n"
"\t\tprints(\"Echo received:\", data)\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Во время работы игры [method @GlobalScope.print] и "
"подобные функции, [i]вызываемые в редакторе[/i], ничего не печатают, в "
"журнале вывода печатаются только игровые сообщения."

msgid ""
"Override this method to be notified when a breakpoint is set in the editor."
msgstr ""
"Переопределите этот метод, чтобы получать уведомления при установке точки "
"останова в редакторе."

msgid ""
"Override this method to be notified when all breakpoints are cleared in the "
"editor."
msgstr ""
"Переопределите этот метод, чтобы получать уведомления об очистке всех точек "
"останова в редакторе."

msgid ""
"Override this method to process incoming messages. The [param session_id] is "
"the ID of the [EditorDebuggerSession] that received the [param message]. Use "
"[method get_session] to retrieve the session. This method should return "
"[code]true[/code] if the message is recognized."
msgstr ""
"Переопределите этот метод для обработки входящих сообщений. [param "
"session_id] — это идентификатор [EditorDebuggerSession], который получил "
"[param message]. Используйте [method get_session] для извлечения сеанса. Этот "
"метод должен возвращать [code]true[/code], если сообщение распознано."

msgid ""
"Override this method to be notified when a breakpoint line has been clicked "
"in the debugger breakpoint panel."
msgstr ""
"Переопределите этот метод, чтобы получать уведомления при щелчке по строке "
"точки останова на панели точек останова отладчика."

msgid ""
"Override this method to enable receiving messages from the debugger. If "
"[param capture] is \"my_message\" then messages starting with \"my_message:\" "
"will be passed to the [method _capture] method."
msgstr ""
"Переопределите этот метод, чтобы включить получение сообщений от отладчика. "
"Если [param capture] — это \"my_message\", то сообщения, начинающиеся с "
"\"my_message:\", будут переданы методу [method _capture]."

msgid ""
"Override this method to be notified whenever a new [EditorDebuggerSession] is "
"created. Note that the session may be inactive during this stage."
msgstr ""
"Переопределите этот метод, чтобы получать уведомления всякий раз, когда "
"создается новый [EditorDebuggerSession]. Обратите внимание, что сеанс может "
"быть неактивен на этом этапе."

msgid "Returns the [EditorDebuggerSession] with the given [param id]."
msgstr "Возвращает [EditorDebuggerSession] с указанным [param id]."

msgid ""
"Returns an array of [EditorDebuggerSession] currently available to this "
"debugger plugin.\n"
"[b]Note:[/b] Sessions in the array may be inactive, check their state via "
"[method EditorDebuggerSession.is_active]."
msgstr ""
"Возвращает массив [EditorDebuggerSession], в настоящее время доступный этому "
"плагину отладчика.\n"
"[b]Примечание:[/b] Сеансы в массиве могут быть неактивны, проверьте их "
"состояние с помощью [method EditorDebuggerSession.is_active]."

msgid "A class to interact with the editor debugger."
msgstr "Класс для взаимодействия с отладчиком редактора."

msgid ""
"This class cannot be directly instantiated and must be retrieved via an "
"[EditorDebuggerPlugin].\n"
"You can add tabs to the session UI via [method add_session_tab], send "
"messages via [method send_message], and toggle [EngineProfiler]s via [method "
"toggle_profiler]."
msgstr ""
"Этот класс нельзя создать напрямую, и его необходимо получить через "
"[EditorDebuggerPlugin].\n"
"Вы можете добавлять вкладки в пользовательский интерфейс сеанса с помощью "
"[method add_session_tab], отправлять сообщения с помощью [method "
"send_message] и переключать [EngineProfiler] с помощью [method "
"toggle_profiler]."

msgid ""
"Adds the given [param control] to the debug session UI in the debugger bottom "
"panel. The [param control]'s node name will be used as the tab title."
msgstr ""
"Добавляет заданный [param control] в пользовательский интерфейс сеанса "
"отладки на нижней панели отладчика. Имя узла [param control] будет "
"использоваться в качестве заголовка вкладки."

msgid ""
"Returns [code]true[/code] if the debug session is currently attached to a "
"remote instance."
msgstr ""
"Возвращает [code]true[/code], если сеанс отладки в данный момент подключен к "
"удаленному экземпляру."

msgid ""
"Returns [code]true[/code] if the attached remote instance is currently in the "
"debug loop."
msgstr ""
"Возвращает [code]true[/code], если присоединенный удаленный экземпляр в "
"данный момент находится в цикле отладки."

msgid ""
"Returns [code]true[/code] if the attached remote instance can be debugged."
msgstr ""
"Возвращает [code]true[/code], если присоединенный удаленный экземпляр может "
"быть отлажен."

msgid ""
"Removes the given [param control] from the debug session UI in the debugger "
"bottom panel."
msgstr ""
"Удаляет указанный [param control] из пользовательского интерфейса сеанса "
"отладки на нижней панели отладчика."

msgid ""
"Sends the given [param message] to the attached remote instance, optionally "
"passing additionally [param data]. See [EngineDebugger] for how to retrieve "
"those messages."
msgstr ""
"Отправляет указанное [param message] на подключенный удаленный экземпляр, "
"опционально передавая дополнительно [param data]. См. [EngineDebugger] для "
"получения этих сообщений."

msgid ""
"Enables or disables a specific breakpoint based on [param enabled], updating "
"the Editor Breakpoint Panel accordingly."
msgstr ""
"Включает или отключает определенную точку останова на основе [param enabled], "
"обновляя панель точек останова редактора соответствующим образом."

msgid ""
"Toggle the given [param profiler] on the attached remote instance, optionally "
"passing additionally [param data]. See [EngineProfiler] for more details."
msgstr ""
"Переключить заданный [param profiler] на подключенном удаленном экземпляре, "
"опционально передавая дополнительно [param data]. Подробнее см. "
"[EngineProfiler]."

msgid ""
"Emitted when the attached remote instance enters a break state. If [param "
"can_debug] is [code]true[/code], the remote instance will enter the debug "
"loop."
msgstr ""
"Вызывается, когда присоединенный удаленный экземпляр входит в состояние "
"останова. Если [param can_debug] равен [code]true[/code], удаленный экземпляр "
"войдет в цикл отладки."

msgid "Emitted when the attached remote instance exits a break state."
msgstr ""
"Вызывается, когда подключенный удаленный экземпляр выходит из состояния "
"останова."

msgid ""
"Emitted when a remote instance is attached to this session (i.e. the session "
"becomes active)."
msgstr ""
"Генерируется, когда к данному сеансу присоединяется удаленный экземпляр (т.е. "
"сеанс становится активным)."

msgid ""
"Emitted when a remote instance is detached from this session (i.e. the "
"session becomes inactive)."
msgstr ""
"Генерируется, когда удаленный экземпляр отключается от данного сеанса (т. е. "
"сеанс становится неактивным)."

msgid ""
"Identifies a supported export platform, and internally provides the "
"functionality of exporting to that platform."
msgstr ""
"Определяет поддерживаемую платформу экспорта и внутренне обеспечивает "
"функциональность экспорта на эту платформу."

msgid ""
"Base resource that provides the functionality of exporting a release build of "
"a project to a platform, from the editor. Stores platform-specific metadata "
"such as the name and supported features of the platform, and performs the "
"exporting of projects, PCK files, and ZIP files. Uses an export template for "
"the platform provided at the time of project exporting.\n"
"Used in scripting by [EditorExportPlugin] to configure platform-specific "
"customization of scenes and resources. See [method "
"EditorExportPlugin._begin_customize_scenes] and [method "
"EditorExportPlugin._begin_customize_resources] for more details."
msgstr ""
"Базовый ресурс, который обеспечивает функциональность экспорта сборки выпуска "
"проекта на платформу из редактора. Сохраняет метаданные, специфичные для "
"платформы, такие как имя и поддерживаемые функции платформы, и выполняет "
"экспорт проектов, файлов PCK и файлов ZIP. Использует шаблон экспорта для "
"платформы, предоставленный во время экспорта проекта.\n"
"Используется в скриптах [EditorExportPlugin] для настройки платформенно-"
"специфической настройки сцен и ресурсов. Подробнее см. [method "
"EditorExportPlugin._begin_customize_scenes] и [method "
"EditorExportPlugin._begin_customize_resources]."

msgid "Console support in Godot"
msgstr "Поддержка консоли в Godot"

msgid ""
"Adds a message to the export log that will be displayed when exporting ends."
msgstr ""
"Добавляет сообщение в журнал экспорта, которое будет отображено после "
"завершения экспорта."

msgid "Clears the export log."
msgstr "Очищает журнал экспорта."

msgid "Create a new preset for this platform."
msgstr "Создайте новый пресет для этой платформы."

msgid "Creates a PCK archive at [param path] for the specified [param preset]."
msgstr "Создает архив PCK по адресу [param path] для указанного [param preset]."

msgid ""
"Creates a patch PCK archive at [param path] for the specified [param preset], "
"containing only the files that have changed since the last patch.\n"
"[b]Note:[/b] [param patches] is an optional override of the set of patches "
"defined in the export preset. When empty the patches defined in the export "
"preset will be used instead."
msgstr ""
"Создает архив патча PCK в [param path] для указанного [param preset], "
"содержащий только файлы, которые были изменены с момента последнего патча.\n"
"[b]Примечание:[/b] [param patches] — это необязательное переопределение "
"набора патчей, определенных в экспортном пресете. Если пусто, вместо него "
"будут использоваться патчи, определенные в экспортном пресете."

msgid "Creates a full project at [param path] for the specified [param preset]."
msgstr ""
"Создает полный проект по адресу [param path] для указанного [param preset]."

msgid ""
"Exports project files for the specified preset. This method can be used to "
"implement custom export format, other than PCK and ZIP. One of the callbacks "
"is called for each exported file.\n"
"[param save_cb] is called for all exported files and have the following "
"arguments: [code]file_path: String[/code], [code]file_data: PackedByteArray[/"
"code], [code]file_index: int[/code], [code]file_count: int[/code], "
"[code]encryption_include_filters: PackedStringArray[/code], "
"[code]encryption_exclude_filters: PackedStringArray[/code], "
"[code]encryption_key: PackedByteArray[/code].\n"
"[param shared_cb] is called for exported native shared/static libraries and "
"have the following arguments: [code]file_path: String[/code], [code]tags: "
"PackedStringArray[/code], [code]target_folder: String[/code].\n"
"[b]Note:[/b] [code]file_index[/code] and [code]file_count[/code] are intended "
"for progress tracking only and aren't necessarily unique and precise."
msgstr ""
"Экспортирует файлы проекта для указанного пресета. Этот метод можно "
"использовать для реализации пользовательского формата экспорта, отличного от "
"PCK и ZIP. Один из обратных вызовов вызывается для каждого экспортированного "
"файла.\n"
"[param save_cb] вызывается для всех экспортированных файлов и имеет следующие "
"аргументы: [code]file_path: String[/code], [code]file_data: PackedByteArray[/"
"code], [code]file_index: int[/code], [code]file_count: int[/code], "
"[code]encryption_include_filters: PackedStringArray[/code], "
"[code]encryption_exclude_filters: PackedStringArray[/code], "
"[code]encryption_key: PackedByteArray[/code].\n"
"[param shared_cb] вызывается для экспортированных собственных общих/"
"статических библиотек и имеет следующие аргументы: [code]file_path: String[/"
"code], [code]tags: PackedStringArray[/code], [code]target_folder: String[/"
"code].\n"
"[b]Примечание:[/b] [code]file_index[/code] и [code]file_count[/code] "
"предназначены только для отслеживания прогресса и не обязательно являются "
"уникальными и точными."

msgid "Create a ZIP archive at [param path] for the specified [param preset]."
msgstr "Создать ZIP-архив по адресу [param path] для указанного [param preset]."

msgid ""
"Create a patch ZIP archive at [param path] for the specified [param preset], "
"containing only the files that have changed since the last patch.\n"
"[b]Note:[/b] [param patches] is an optional override of the set of patches "
"defined in the export preset. When empty the patches defined in the export "
"preset will be used instead."
msgstr ""
"Создайте архив ZIP патча в [param path] для указанного [param preset], "
"содержащий только файлы, которые были изменены с момента последнего патча.\n"
"[b]Примечание:[/b] [param patches] — это необязательное переопределение "
"набора патчей, определенных в экспортном пресете. Если пусто, вместо него "
"будут использоваться патчи, определенные в экспортном пресете."

msgid ""
"Locates export template for the platform, and returns [Dictionary] with the "
"following keys: [code]path: String[/code] and [code]error: String[/code]. "
"This method is provided for convenience and custom export platforms aren't "
"required to use it or keep export templates stored in the same way official "
"templates are."
msgstr ""
"Находит шаблон экспорта для платформы и возвращает [Dictionary] со следующими "
"ключами: [code]path: String[/code] и [code]error: String[/code]. Этот метод "
"предоставляется для удобства, и пользовательские платформы экспорта не "
"обязаны его использовать или хранить шаблоны экспорта так же, как официальные "
"шаблоны."

msgid ""
"Generates array of command line arguments for the default export templates "
"for the debug flags and editor settings."
msgstr ""
"Генерирует массив аргументов командной строки для шаблонов экспорта по "
"умолчанию для флагов отладки и настроек редактора."

msgid "Returns array of [EditorExportPreset]s for this platform."
msgstr "Возвращает массив [EditorExportPreset] для этой платформы."

msgid ""
"Returns array of core file names that always should be exported regardless of "
"preset config."
msgstr ""
"Возвращает массив имен основных файлов, которые всегда следует экспортировать "
"независимо от предустановленной конфигурации."

msgid ""
"Returns additional files that should always be exported regardless of preset "
"configuration, and are not part of the project source. The returned "
"[Dictionary] contains filename keys ([String]) and their corresponding raw "
"data ([PackedByteArray])."
msgstr ""
"Возвращает дополнительные файлы, которые всегда должны экспортироваться "
"независимо от предустановленной конфигурации и не являются частью исходного "
"кода проекта. Возвращаемый [Dictionary] содержит ключи имени файла ([String]) "
"и соответствующие им необработанные данные ([PackedByteArray])."

msgid "Returns message category, for the message with [param index]."
msgstr "Возвращает категорию сообщения для сообщения с [param index]."

msgid "Returns number of messages in the export log."
msgstr "Возвращает количество сообщений в журнале экспорта."

msgid "Returns message text, for the message with [param index]."
msgstr "Возвращает текст сообщения для сообщения с [param index]."

msgid "Returns message type, for the message with [param index]."
msgstr "Возвращает тип сообщения для сообщения с [param index]."

msgid ""
"Returns the name of the export operating system handled by this "
"[EditorExportPlatform] class, as a friendly string. Possible return values "
"are [code]Windows[/code], [code]Linux[/code], [code]macOS[/code], "
"[code]Android[/code], [code]iOS[/code], and [code]Web[/code]."
msgstr ""
"Возвращает имя экспортируемой операционной системы, обрабатываемой этим "
"классом [EditorExportPlatform], как понятную строку. Возможные возвращаемые "
"значения: [code]Windows[/code], [code]Linux[/code], [code]macOS[/code], "
"[code]Android[/code], [code]iOS[/code], и [code]Web[/code]."

msgid "Returns most severe message type currently present in the export log."
msgstr ""
"Возвращает наиболее серьезный тип сообщения, присутствующий в данный момент в "
"журнале экспорта."

msgid ""
"Saves PCK archive and returns [Dictionary] with the following keys: "
"[code]result: Error[/code], [code]so_files: Array[/code] (array of the shared/"
"static objects which contains dictionaries with the following keys: "
"[code]path: String[/code], [code]tags: PackedStringArray[/code], and "
"[code]target_folder: String[/code]).\n"
"If [param embed] is [code]true[/code], PCK content is appended to the end of "
"[param path] file and return [Dictionary] additionally include following "
"keys: [code]embedded_start: int[/code] (embedded PCK offset) and "
"[code]embedded_size: int[/code] (embedded PCK size)."
msgstr ""
"Сохраняет архив PCK и возвращает [Dictionary] со следующими ключами: "
"[code]result: Error[/code], [code]so_files: Array[/code] (массив общих/"
"статических объектов, содержащий словари со следующими ключами: [code]path: "
"String[/code], [code]tags: PackedStringArray[/code] и [code]target_folder: "
"String[/code]). \n"
"Если [param embed] равен [code]true[/code], содержимое PCK добавляется в "
"конец файла [param path] и возвращаемый [Dictionary] дополнительно включает "
"следующие ключи: [code]embedded_start: int[/code] (смещение внедренного PCK) "
"и [code]embedded_size: int[/code] (размер внедренного PCK)."

msgid ""
"Saves patch PCK archive and returns [Dictionary] with the following keys: "
"[code]result: Error[/code], [code]so_files: Array[/code] (array of the shared/"
"static objects which contains dictionaries with the following keys: "
"[code]path: String[/code], [code]tags: PackedStringArray[/code], and "
"[code]target_folder: String[/code])."
msgstr ""
"Сохраняет архив исправлений PCK и возвращает [Dictionary] со следующими "
"ключами: [code]result: Error[/code], [code]so_files: Array[/code] (массив "
"общих/статических объектов, содержащий словари со следующими ключами: "
"[code]path: String[/code], [code]tags: PackedStringArray[/code] и "
"[code]target_folder: String[/code])."

msgid ""
"Saves ZIP archive and returns [Dictionary] with the following keys: "
"[code]result: Error[/code], [code]so_files: Array[/code] (array of the shared/"
"static objects which contains dictionaries with the following keys: "
"[code]path: String[/code], [code]tags: PackedStringArray[/code], and "
"[code]target_folder: String[/code])."
msgstr ""
"Сохраняет ZIP-архив и возвращает [Dictionary] со следующими ключами: "
"[code]result: Error[/code], [code]so_files: Array[/code] (массив общих/"
"статических объектов, содержащий словари со следующими ключами: [code]path: "
"String[/code], [code]tags: PackedStringArray[/code] и [code]target_folder: "
"String[/code])."

msgid ""
"Saves patch ZIP archive and returns [Dictionary] with the following keys: "
"[code]result: Error[/code], [code]so_files: Array[/code] (array of the shared/"
"static objects which contains dictionaries with the following keys: "
"[code]path: String[/code], [code]tags: PackedStringArray[/code], and "
"[code]target_folder: String[/code])."
msgstr ""
"Сохраняет архив ZIP с исправлениями и возвращает [Dictionary] со следующими "
"ключами: [code]result: Error[/code], [code]so_files: Array[/code] (массив "
"общих/статических объектов, содержащий словари со следующими ключами: "
"[code]path: String[/code], [code]tags: PackedStringArray[/code] и "
"[code]target_folder: String[/code])."

msgid "Uploads specified file over SCP protocol to the remote host."
msgstr "Загружает указанный файл по протоколу SCP на удаленный хост."

msgid ""
"Executes specified command on the remote host via SSH protocol and returns "
"command output in the [param output]."
msgstr ""
"Выполняет указанную команду на удаленном хосте по протоколу SSH и возвращает "
"вывод команды в [param output]."

msgid ""
"Executes specified command on the remote host via SSH protocol and returns "
"process ID (on the remote host) without waiting for command to finish."
msgstr ""
"Выполняет указанную команду на удаленном хосте по протоколу SSH и возвращает "
"идентификатор процесса (на удаленном хосте), не дожидаясь завершения команды."

msgid ""
"Invalid message type used as the default value when no type is specified."
msgstr ""
"Неверный тип сообщения, используемый в качестве значения по умолчанию, если "
"тип не указан."

msgid ""
"Message type for informational messages that have no effect on the export."
msgstr "Тип сообщения для информационных сообщений, не влияющих на экспорт."

msgid ""
"Message type for warning messages that should be addressed but still allow to "
"complete the export."
msgstr ""
"Тип сообщения для предупреждающих сообщений, на которые следует обратить "
"внимание, но которые все равно позволят завершить экспорт."

msgid ""
"Message type for error messages that must be addressed and fail the export."
msgstr ""
"Тип сообщения для сообщений об ошибках, которые необходимо устранить и "
"которые приводят к сбою экспорта."

msgid ""
"Flag is set if the remotely debugged project is expected to use the remote "
"file system. If set, [method gen_export_flags] will append [code]--remote-fs[/"
"code] and [code]--remote-fs-password[/code] (if [member "
"EditorSettings.filesystem/file_server/password] is defined) command line "
"arguments to the returned list."
msgstr ""
"Флаг устанавливается, если отлаживаемый удалённо проект должен использовать "
"удалённую файловую систему. Если он установлен, [method gen_export_flags] "
"добавит аргументы командной строки [code]--remote-fs[/code] и [code]--remote-"
"fs-password[/code] (если определён [member EditorSettings.filesystem/"
"file_server/password]) к возвращаемому списку."

msgid ""
"Flag is set if remote debug is enabled. If set, [method gen_export_flags] "
"will append [code]--remote-debug[/code] and [code]--breakpoints[/code] (if "
"breakpoints are selected in the script editor or added by the plugin) command "
"line arguments to the returned list."
msgstr ""
"Флаг устанавливается, если включена удалённая отладка. Если он установлен, "
"[method gen_export_flags] добавит аргументы командной строки [code]--remote-"
"debug[/code] и [code]--breakpoints[/code] (если точки останова выбраны в "
"редакторе скриптов или добавлены плагином) к возвращаемому списку."

msgid ""
"Flag is set if remotely debugged project is running on the localhost. If set, "
"[method gen_export_flags] will use [code]localhost[/code] instead of [member "
"EditorSettings.network/debug/remote_host] as remote debugger host."
msgstr ""
"Флаг устанавливается, если удаленно отлаживаемый проект запущен на локальном "
"хосте. Если установлено, [method gen_export_flags] будет использовать "
"[code]localhost[/code] вместо [member EditorSettings.network/debug/"
"remote_host] в качестве удаленного хоста отладчика."

msgid ""
"Flag is set if the \"Visible Collision Shapes\" remote debug option is "
"enabled. If set, [method gen_export_flags] will append the [code]--debug-"
"collisions[/code] command line argument to the returned list."
msgstr ""
"Флаг устанавливается, если включена опция удалённой отладки «Видимые формы "
"столкновений». Если этот флаг установлен, [method gen_export_flags] добавит "
"аргумент командной строки [code]--debug-collisions[/code] к возвращаемому "
"списку."

msgid ""
"Flag is set if the \"Visible Navigation\" remote debug option is enabled. If "
"set, [method gen_export_flags] will append the [code]--debug-navigation[/"
"code] command line argument to the returned list."
msgstr ""
"Флаг устанавливается, если включена опция удалённой отладки «Видимая "
"навигация». Если она установлена, [method gen_export_flags] добавит аргумент "
"командной строки [code]--debug-navigation[/code] к возвращаемому списку."

msgid "Exporter for Android."
msgstr "Экспортер для ОС Android."

msgid "Exporting for Android"
msgstr "Экспортирование для ОС Android"

msgid "Gradle builds for Android"
msgstr "Сборки Gradle для Android"

msgid "Android plugins documentation index"
msgstr "Индекс документации плагинов Android"

msgid ""
"Array of random bytes that the licensing Policy uses to create an "
"[url=https://developer.android.com/google/play/licensing/adding-"
"licensing#impl-Obfuscator]Obfuscator[/url]."
msgstr ""
"Массив случайных байтов, который Политика лицензирования использует для "
"создания [url=https://developer.android.com/google/play/licensing/adding-"
"licensing#impl-Obfuscator]Обфускатора[/url]."

msgid ""
"If [code]true[/code], project resources are stored in the separate APK "
"expansion file, instead of the APK.\n"
"[b]Note:[/b] APK expansion should be enabled to use PCK encryption. See "
"[url=https://developer.android.com/google/play/expansion-files]APK Expansion "
"Files[/url]"
msgstr ""
"Если [code]true[/code], ресурсы проекта хранятся в отдельном файле расширения "
"APK, а не в APK.\n"
"[b]Примечание:[/b] Расширение APK должно быть включено для использования "
"шифрования PCK. См. [url=https://developer.android.com/google/play/expansion-"
"files]Файлы расширения APK[/url]"

msgid ""
"Base64 encoded RSA public key for your publisher account, available from the "
"profile page on the \"Google Play Console\"."
msgstr ""
"Открытый ключ RSA в кодировке Base64 для вашей учетной записи издателя, "
"доступный на странице профиля в «Google Play Console»."

msgid ""
"If [code]true[/code], [code]arm64[/code] binaries are included into exported "
"project."
msgstr ""
"Если [code]true[/code], двоичные файлы [code]arm64[/code] включаются в "
"экспортируемый проект."

msgid ""
"If [code]true[/code], [code]arm32[/code] binaries are included into exported "
"project."
msgstr ""
"Если [code]true[/code], двоичные файлы [code]arm32[/code] включаются в "
"экспортируемый проект."

msgid ""
"If [code]true[/code], [code]x86_32[/code] binaries are included into exported "
"project."
msgstr ""
"Если [code]true[/code], двоичные файлы [code]x86_32[/code] включаются в "
"экспортируемый проект."

msgid ""
"If [code]true[/code], [code]x86_64[/code] binaries are included into exported "
"project."
msgstr ""
"Если [code]true[/code], двоичные файлы [code]x86_64[/code] включаются в "
"экспортируемый проект."

msgid ""
"A list of additional command line arguments, separated by space, which the "
"exported project will receive when started."
msgstr ""
"Список дополнительных аргументов командной строки, разделенных пробелом, "
"которые экспортированный проект получит при запуске."

msgid ""
"Path to an APK file to use as a custom export template for debug exports. If "
"left empty, default template is used.\n"
"[b]Note:[/b] This is only used if [member "
"EditorExportPlatformAndroid.gradle_build/use_gradle_build] is disabled."
msgstr ""
"Путь к файлу APK для использования в качестве пользовательского шаблона "
"экспорта для экспорта отладки. Если оставить пустым, будет использоваться "
"шаблон по умолчанию.\n"
"[b]Примечание:[/b] Используется только если [member "
"EditorExportPlatformAndroid.gradle_build/use_gradle_build] отключен."

msgid ""
"Path to an APK file to use as a custom export template for release exports. "
"If left empty, default template is used.\n"
"[b]Note:[/b] This is only used if [member "
"EditorExportPlatformAndroid.gradle_build/use_gradle_build] is disabled."
msgstr ""
"Путь к файлу APK для использования в качестве пользовательского шаблона "
"экспорта для экспорта релиза. Если оставить пустым, будет использоваться "
"шаблон по умолчанию.\n"
"[b]Примечание:[/b] Используется только если [member "
"EditorExportPlatformAndroid.gradle_build/use_gradle_build] отключен."

msgid ""
"If [code]true[/code], [url=https://developer.android.com/design/ui/wear/"
"guides/components/swipe-to-dismiss]Swipe to dismiss[/url] will be enabled.\n"
"This functionality is intended for smartwatches and is generally ignored on "
"standard Android devices. However, some devices may not ignore it. Therefore, "
"it is recommended to keep this feature disabled for standard Android apps to "
"avoid unexpected behavior.\n"
"[b]Note:[/b] This is [code]false[/code] by default. To enable this behavior, "
"[member EditorExportPlatformAndroid.gradle_build/use_gradle_build] is "
"required."
msgstr ""
"Если [code]true[/code], [url=https://developer.android.com/design/ui/wear/"
"guides/components/swipe-to-dismiss]Проведите пальцем, чтобы закрыть[/url] "
"будет включено.\n"
"Эта функция предназначена для умных часов и, как правило, игнорируется на "
"стандартных устройствах Android. Однако некоторые устройства могут не "
"игнорировать ее. Поэтому рекомендуется отключать эту функцию для стандартных "
"приложений Android, чтобы избежать непредвиденного поведения.\n"
"[b]Примечание:[/b] По умолчанию это [code]false[/code]. Чтобы включить это "
"поведение, требуется [member EditorExportPlatformAndroid.gradle_build/"
"use_gradle_build]."

msgid ""
"Path to a ZIP file holding the source for the export template used in a "
"Gradle build. If left empty, the default template is used."
msgstr ""
"Путь к ZIP-файлу, содержащему исходный код для шаблона экспорта, "
"используемого в сборке Gradle. Если оставить пустым, будет использоваться "
"шаблон по умолчанию."

msgid ""
"If [code]true[/code], native libraries are compressed when performing a "
"Gradle build.\n"
"[b]Note:[/b] While enabling compression can reduce the size of the binary, it "
"may result in slower application startup because the native libraries must be "
"extracted before use, rather than being loaded directly.\n"
"If you're distributing your app via the Play Store, it's generally "
"recommended to keep this option [code]false[/code], see [url=https://"
"developer.android.com/build/releases/past-releases/agp-3-6-0-release-"
"notes#extractNativeLibs]official documentation[/url]."
msgstr ""
"Если [code]true[/code], нативные библиотеки сжимаются при сборке Gradle.\n"
"[b]Примечание:[/b] Хотя включение сжатия может уменьшить размер исполняемого "
"файла, оно может привести к более медленному запуску приложения, поскольку "
"нативные библиотеки необходимо извлечь перед использованием, а не загружать "
"напрямую.\n"
"Если вы распространяете приложение через Play Маркет, обычно рекомендуется "
"оставить этот параметр [code]false[/code], см. [url=https://"
"developer.android.com/build/releases/past-releases/agp-3-6-0-release-"
"notes#extractNativeLibs]официальную документацию[/url]."

msgid ""
"A dictionary of custom theme attributes to include in the exported Android "
"project. Each entry defines a theme attribute name and its value, and will be "
"added to the [b]GodotAppMainTheme[/b].\n"
"For example, the key [code]android:windowSwipeToDismiss[/code] with the value "
"[code]false[/code] is resolved to [code]<item "
"name=\"android:windowSwipeToDismiss\">false</item>[/code].\n"
"[b]Note:[/b] To add a custom attribute to the [b]GodotAppSplashTheme[/b], "
"prefix the attribute name with [code][splash][/code].\n"
"[b]Note:[/b] Reserved attributes configured via other export options or "
"project settings cannot be overridden by [code]custom_theme_attributes[/code] "
"and are skipped during export."
msgstr ""
"Словарь пользовательских атрибутов темы для включения в экспортируемый проект "
"Android. Каждая запись определяет имя атрибута темы и его значение и будет "
"добавлена в [b]GodotAppMainTheme[/b].\n"
"Например, ключ [code]android:windowSwipeToDismiss[/code] со значением "
"[code]false[/code] разрешается в [code]<item "
"name=\"android:windowSwipeToDismiss\">false</item>[/code].\n"
"[b]Примечание:[/b] Чтобы добавить пользовательский атрибут в "
"[b]GodotAppSplashTheme[/b], добавьте к имени атрибута префикс [code][splash][/"
"code].\n"
"[b]Примечание:[/b] Зарезервированные атрибуты, настроенные с помощью других "
"параметров экспорта или настроек проекта, не могут быть переопределены с "
"помощью [code]custom_theme_attributes[/code] и пропускаются во время экспорта."

msgid "Application export format (*.apk or *.aab)."
msgstr "Формат экспорта приложения (*.apk или *.aab)."

msgid ""
"Path to the Gradle build directory. If left empty, then [code]res://android[/"
"code] will be used."
msgstr ""
"Путь к каталогу сборки Gradle. Если оставить пустым, то будет использоваться "
"[code]res://android[/code]."

msgid ""
"Minimum Android API level required for the application to run (used during "
"Gradle build). See [url=https://developer.android.com/guide/topics/manifest/"
"uses-sdk-element#uses]android:minSdkVersion[/url]."
msgstr ""
"Минимальный уровень API Android, необходимый для запуска приложения "
"(используется во время сборки Gradle). См. [url=https://developer.android.com/"
"guide/topics/manifest/uses-sdk-element#uses]android:minSdkVersion[/url]."

msgid ""
"The Android API level on which the application is designed to run (used "
"during Gradle build). See [url=https://developer.android.com/guide/topics/"
"manifest/uses-sdk-element#uses]android:targetSdkVersion[/url]."
msgstr ""
"Уровень API Android, на котором приложение предназначено для работы "
"(используется во время сборки Gradle). См. [url=https://developer.android.com/"
"guide/topics/manifest/uses-sdk-element#uses]android:targetSdkVersion[/url]."

msgid "If [code]true[/code], Gradle build is used instead of pre-built APK."
msgstr ""
"Если [code]true[/code], то вместо предварительно собранного APK используется "
"сборка Gradle."

msgid ""
"If [code]true[/code], OpenGL ES debug context will be created (additional "
"runtime checking, validation, and logging)."
msgstr ""
"Если [code]true[/code], будет создан контекст отладки OpenGL ES "
"(дополнительная проверка во время выполнения, валидация и протоколирование)."

msgid ""
"Path of the debug keystore file.\n"
"Can be overridden with the environment variable "
"[code]GODOT_ANDROID_KEYSTORE_DEBUG_PATH[/code].\n"
"Fallbacks to [code]EditorSettings.export/android/debug_keystore[/code] if "
"empty."
msgstr ""
"Путь к файлу хранилища ключей отладки.\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_ANDROID_KEYSTORE_DEBUG_PATH[/code].\n"
"Откат к [code]EditorSettings.export/android/debug_keystore[/code], если пусто."

msgid ""
"Password for the debug keystore file.\n"
"Can be overridden with the environment variable "
"[code]GODOT_ANDROID_KEYSTORE_DEBUG_PASSWORD[/code].\n"
"Fallbacks to [code]EditorSettings.export/android/debug_keystore_pass[/code] "
"if both it and [member keystore/debug] are empty."
msgstr ""
"Пароль для файла хранилища ключей отладки.\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_ANDROID_KEYSTORE_DEBUG_PASSWORD[/code].\n"
"Откат к [code]EditorSettings.export/android/debug_keystore_pass[/code], если "
"и он, и [member keystore/debug] пусты."

msgid ""
"User name for the debug keystore file.\n"
"Can be overridden with the environment variable "
"[code]GODOT_ANDROID_KEYSTORE_DEBUG_USER[/code].\n"
"Fallbacks to [code]EditorSettings.export/android/debug_keystore_user[/code] "
"if both it and [member keystore/debug] are empty."
msgstr ""
"Имя пользователя для файла хранилища ключей отладки.\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_ANDROID_KEYSTORE_DEBUG_USER[/code].\n"
"Откат к [code]EditorSettings.export/android/debug_keystore_user[/code], если "
"и он, и [member keystore/debug] пусты."

msgid ""
"Path of the release keystore file.\n"
"Can be overridden with the environment variable "
"[code]GODOT_ANDROID_KEYSTORE_RELEASE_PATH[/code]."
msgstr ""
"Путь к файлу хранилища ключей релиза.\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_ANDROID_KEYSTORE_RELEASE_PATH[/code]."

msgid ""
"Password for the release keystore file.\n"
"Can be overridden with the environment variable "
"[code]GODOT_ANDROID_KEYSTORE_RELEASE_PASSWORD[/code]."
msgstr ""
"Пароль для файла хранилища ключей релиза.\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_ANDROID_KEYSTORE_RELEASE_PASSWORD[/code]."

msgid ""
"User name for the release keystore file.\n"
"Can be overridden with the environment variable "
"[code]GODOT_ANDROID_KEYSTORE_RELEASE_USER[/code]."
msgstr ""
"Имя пользователя для файла хранилища ключей выпуска.\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_ANDROID_KEYSTORE_RELEASE_USER[/code]."

msgid ""
"Background layer of the application adaptive icon file. See [url=https://"
"developer.android.com/develop/ui/views/launch/icon_design_adaptive#design-"
"adaptive-icons]Design adaptive icons[/url]."
msgstr ""
"Фоновый слой файла адаптивной иконки приложения. См. [url=https://"
"developer.android.com/develop/ui/views/launch/icon_design_adaptive#design-"
"adaptive-icons]Разработка адаптивных иконок[/url]."

msgid ""
"Foreground layer of the application adaptive icon file. See [url=https://"
"developer.android.com/develop/ui/views/launch/icon_design_adaptive#design-"
"adaptive-icons]Design adaptive icons[/url]."
msgstr ""
"Фоновый слой файла адаптивной иконки приложения. См. [url=https://"
"developer.android.com/develop/ui/views/launch/icon_design_adaptive#design-"
"adaptive-icons]Разработка адаптивных иконок[/url]."

msgid ""
"Monochrome layer of the application adaptive icon file. See [url=https://"
"developer.android.com/develop/ui/views/launch/icon_design_adaptive#design-"
"adaptive-icons]Design adaptive icons[/url]."
msgstr ""
"Монохромный слой файла адаптивной иконки приложения. Смотрите [url=https://"
"developer.android.com/develop/ui/views/launch/icon_design_adaptive#design-"
"adaptive-icons]Разработка адаптивных иконок[/url]."

msgid ""
"Application icon file. If left empty, it will fallback to [member "
"ProjectSettings.application/config/icon]."
msgstr ""
"Файл значка приложения. Если оставить пустым, то будет использован [member "
"ProjectSettings.application/config/icon]."

msgid ""
"Application category for the Google Play Store. Only define this if your "
"application fits one of the categories well. See [url=https://"
"developer.android.com/guide/topics/manifest/application-"
"element#appCategory]android:appCategory[/url]."
msgstr ""
"Категория приложения для Google Play Store. Определяйте это только в том "
"случае, если ваше приложение хорошо подходит под одну из категорий. См. "
"[url=https://developer.android.com/guide/topics/manifest/application-"
"element#appCategory]android:appCategory[/url]."

msgid ""
"If [code]true[/code], task initiated by main activity will be excluded from "
"the list of recently used applications. See [url=https://"
"developer.android.com/guide/topics/manifest/activity-"
"element#exclude]android:excludeFromRecents[/url]."
msgstr ""
"Если [code]true[/code], задача, инициированная основной активностью, будет "
"исключена из списка недавно использованных приложений. См. [url=https://"
"developer.android.com/guide/topics/manifest/activity-"
"element#exclude]android:excludeFromRecents[/url]."

msgid "Name of the application."
msgstr "Название приложения."

msgid ""
"If [code]true[/code], when the user uninstalls an app, a prompt to keep the "
"app's data will be shown. See [url=https://developer.android.com/guide/topics/"
"manifest/application-element#fragileuserdata]android:hasFragileUserData[/url]."
msgstr ""
"Если [code]true[/code], когда пользователь удаляет приложение, будет показано "
"приглашение сохранить данные приложения. См. [url=https://"
"developer.android.com/guide/topics/manifest/application-"
"element#fragileuserdata]android:hasFragileUserData[/url]."

msgid ""
"If [code]true[/code], the user will be able to set this app as the system "
"launcher in Android preferences."
msgstr ""
"Если [code]true[/code], пользователь сможет установить это приложение в "
"качестве системного средства запуска в настройках Android."

msgid "If [code]true[/code], this app will show in Android TV launcher UI."
msgstr ""
"Если [code]true[/code], это приложение будет отображаться в пользовательском "
"интерфейсе лаунчера Android TV."

msgid ""
"If [code]true[/code], this app will show in the device's app library.\n"
"[b]Note:[/b] This is [code]true[/code] by default."
msgstr ""
"Если [code]true[/code], это приложение будет отображаться в библиотеке "
"приложений устройства.\n"
"[b]Примечание:[/b] По умолчанию это [code]true[/code]."

msgid "If [code]true[/code], package signing is enabled."
msgstr "Если [code]true[/code], подпись пакета включена."

msgid ""
"Unique application identifier in a reverse-DNS format. The reverse DNS format "
"should preferably match a domain name you control, but this is not strictly "
"required. For instance, if you own [code]example.com[/code], your package "
"unique name should preferably be of the form [code]com.example.mygame[/code]. "
"This identifier can only contain lowercase alphanumeric characters ([code]a-"
"z[/code], and [code]0-9[/code]), underscores ([code]_[/code]), and periods "
"([code].[/code]). Each component of the reverse DNS format must start with a "
"letter: for instance, [code]com.example.8game[/code] is not valid.\n"
"If [code]$genname[/code] is present in the value, it will be replaced by the "
"project name converted to lowercase. If there are invalid characters in the "
"project name, they will be stripped. If all characters in the project name "
"are stripped, [code]$genname[/code] is replaced by [code]noname[/code].\n"
"[b]Note:[/b] Changing the package name will cause the package to be "
"considered as a new package, with its own installation and data paths. The "
"new package won't be usable to update existing installations.\n"
"[b]Note:[/b] When publishing to Google Play, the package name must be "
"[i]globally[/i] unique. This means no other apps published on Google Play "
"must be using the same package name as yours. Otherwise, you'll be prevented "
"from publishing your app on Google Play."
msgstr ""
"Уникальный идентификатор приложения в формате обратного DNS. Обратный формат "
"DNS должен предпочтительно соответствовать доменному имени, которым вы "
"управляете, но это не является строго обязательным. Например, если вы "
"являетесь владельцем [code]example.com[/code], уникальное имя вашего пакета "
"должно предпочтительно иметь вид [code]com.example.mygame[/code]. Этот "
"идентификатор может содержать только строчные буквенно-цифровые символы "
"([code]a-z[/code] и [code]0-9[/code]), подчеркивания ([code]_[/code]) и точки "
"([code].[/code]). Каждый компонент обратного формата DNS должен начинаться с "
"буквы: например, [code]com.example.8game[/code] недопустимо.\n"
"Если в значении присутствует [code]$genname[/code], оно будет заменено именем "
"проекта, преобразованным в нижний регистр. Если в имени проекта есть "
"недопустимые символы, они будут удалены. Если все символы в имени проекта "
"удалены, [code]$genname[/code] заменяется на [code]noname[/code].\n"
"[b]Примечание:[/b] Изменение имени пакета приведет к тому, что пакет будет "
"считаться новым пакетом со своей собственной установкой и путями к данным. "
"Новый пакет не будет использоваться для обновления существующих установок.\n"
"[b]Примечание:[/b] При публикации в Google Play имя пакета должно быть "
"[i]глобально[/i] уникальным. Это означает, что никакие другие приложения, "
"опубликованные в Google Play, не должны использовать то же имя пакета, что и "
"ваше. В противном случае вы не сможете опубликовать свое приложение в Google "
"Play."

msgid ""
"Allows read/write access to the \"properties\" table in the checkin database. "
"See [url=https://developer.android.com/reference/android/"
"Manifest.permission#ACCESS_CHECKIN_PROPERTIES]ACCESS_CHECKIN_PROPERTIES[/url]."
msgstr ""
"Позволяет читать/писать доступ к таблице \"properties\" в базе данных "
"регистрации. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#ACCESS_CHECKIN_PROPERTIES]ACCESS_CHECKIN_PROPERTIES[/url]."

msgid ""
"Allows access to the approximate location information. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCESS_COARSE_LOCATION]ACCESS_COARSE_LOCATION[/url]."
msgstr ""
"Позволяет получить доступ к приблизительной информации о местоположении. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#ACCESS_COARSE_LOCATION]ACCESS_COARSE_LOCATION[/url]."

msgid ""
"Allows access to the precise location information. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCESS_FINE_LOCATION]ACCESS_FINE_LOCATION[/url]."
msgstr ""
"Позволяет получить доступ к точной информации о местоположении. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#ACCESS_FINE_LOCATION]ACCESS_FINE_LOCATION[/url]."

msgid ""
"Allows access to the extra location provider commands. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCESS_LOCATION_EXTRA_COMMANDS]ACCESS_LOCATION_EXTRA_COMMANDS[/"
"url]."
msgstr ""
"Позволяет получить доступ к дополнительным командам поставщика "
"местоположения. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#ACCESS_LOCATION_EXTRA_COMMANDS]ACCESS_LOCATION_EXTRA_COMMANDS[/"
"url]."

msgid ""
"Allows an application to access any geographic locations persisted in the "
"user's shared collection. See [url=https://developer.android.com/reference/"
"android/Manifest.permission#ACCESS_MEDIA_LOCATION]ACCESS_MEDIA_LOCATION[/url]."
msgstr ""
"Позволяет приложению получать доступ к любым географическим местоположениям, "
"сохраненным в общей коллекции пользователя. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCESS_MEDIA_LOCATION]ACCESS_MEDIA_LOCATION[/url]."

msgid "Allows an application to create mock location providers for testing."
msgstr ""
"Позволяет приложению создавать фиктивные поставщики местоположения для "
"тестирования."

msgid ""
"Allows access to the information about networks. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCESS_NETWORK_STATE]ACCESS_NETWORK_STATE[/url]."
msgstr ""
"Позволяет получить доступ к информации о сетях. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCESS_NETWORK_STATE]ACCESS_NETWORK_STATE[/url]."

msgid "Allows an application to use SurfaceFlinger's low level features."
msgstr ""
"Позволяет приложению использовать низкоуровневые функции SurfaceFlinger."

msgid ""
"Allows access to the information about Wi-Fi networks. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCESS_WIFI_STATE]ACCESS_WIFI_STATE[/url]."
msgstr ""
"Позволяет получить доступ к информации о сетях Wi-Fi. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCESS_WIFI_STATE]ACCESS_WIFI_STATE[/url]."

msgid ""
"Allows applications to call into AccountAuthenticators. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCOUNT_MANAGER]ACCOUNT_MANAGER[/url]."
msgstr ""
"Позволяет приложениям вызывать AccountAuthenticators. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ACCOUNT_MANAGER]ACCOUNT_MANAGER[/url]."

msgid ""
"Allows an application to add voicemails into the system. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#ADD_VOICEMAIL]ADD_VOICEMAIL[/url]."
msgstr ""
"Позволяет приложению добавлять голосовые сообщения в систему. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#ADD_VOICEMAIL]ADD_VOICEMAIL[/url]."

msgid ""
"Allows an application to act as an AccountAuthenticator for the "
"AccountManager."
msgstr ""
"Позволяет приложению выступать в качестве AccountAuthenticator для "
"AccountManager."

msgid ""
"Allows an application to collect battery statistics. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BATTERY_STATS]BATTERY_STATS[/url]."
msgstr ""
"Позволяет приложению собирать статистику батареи. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BATTERY_STATS]BATTERY_STATS[/url]."

msgid ""
"Must be required by an AccessibilityService, to ensure that only the system "
"can bind to it. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#BIND_ACCESSIBILITY_SERVICE]BIND_ACCESSIBILITY_SERVICE[/"
"url]."
msgstr ""
"Должно быть обязательным для AccessibilityService, чтобы гарантировать, что "
"только система может к нему привязаться. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BIND_ACCESSIBILITY_SERVICE]BIND_ACCESSIBILITY_SERVICE[/"
"url]."

msgid ""
"Allows an application to tell the AppWidget service which application can "
"access AppWidget's data. See [url=https://developer.android.com/reference/"
"android/Manifest.permission#BIND_APPWIDGET]BIND_APPWIDGET[/url]."
msgstr ""
"Позволяет приложению сообщать службе AppWidget, какое приложение может "
"получить доступ к данным AppWidget. См. [url=https://developer.android.com/"
"reference/android/Manifest.permission#BIND_APPWIDGET]BIND_APPWIDGET[/url]."

msgid ""
"Must be required by device administration receiver, to ensure that only the "
"system can interact with it. See [url=https://developer.android.com/reference/"
"android/Manifest.permission#BIND_DEVICE_ADMIN]BIND_DEVICE_ADMIN[/url]."
msgstr ""
"Должен быть затребован приемником администрирования устройства, чтобы "
"гарантировать, что только система может взаимодействовать с ним. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#BIND_DEVICE_ADMIN]BIND_DEVICE_ADMIN[/url]."

msgid ""
"Must be required by an InputMethodService, to ensure that only the system can "
"bind to it. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#BIND_INPUT_METHOD]BIND_INPUT_METHOD[/url]."
msgstr ""
"Должен быть необходим InputMethodService, чтобы гарантировать, что только "
"система может к нему привязаться. См. [url=https://developer.android.com/"
"reference/android/Manifest.permission#BIND_INPUT_METHOD]BIND_INPUT_METHOD[/"
"url]."

msgid ""
"Must be required by a HostApduService or OffHostApduService to ensure that "
"only the system can bind to it. See [url=https://developer.android.com/"
"reference/android/Manifest.permission#BIND_NFC_SERVICE]BIND_NFC_SERVICE[/url]."
msgstr ""
"Должен быть необходим HostApduService или OffHostApduService, чтобы "
"гарантировать, что только система может к нему привязаться. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BIND_NFC_SERVICE]BIND_NFC_SERVICE[/url]."

msgid ""
"Must be required by a NotificationListenerService, to ensure that only the "
"system can bind to it. See [url=https://developer.android.com/reference/"
"android/"
"Manifest.permission#BIND_NOTIFICATION_LISTENER_SERVICE]BIND_NOTIFICATION_LISTENER_SERVICE[/"
"url]."
msgstr ""
"Должен быть необходим NotificationListenerService, чтобы гарантировать, что "
"только система может привязываться к нему. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BIND_NOTIFICATION_LISTENER_SERVICE]BIND_NOTIFICATION_LISTENER_SERVICE[/"
"url]."

msgid ""
"Must be required by a PrintService, to ensure that only the system can bind "
"to it. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#BIND_PRINT_SERVICE]BIND_PRINT_SERVICE[/url]."
msgstr ""
"Должно быть обязательным для PrintService, чтобы гарантировать, что только "
"система может к нему привязаться. См. [url=https://developer.android.com/"
"reference/android/Manifest.permission#BIND_PRINT_SERVICE]BIND_PRINT_SERVICE[/"
"url]."

msgid ""
"Must be required by a RemoteViewsService, to ensure that only the system can "
"bind to it. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#BIND_REMOTEVIEWS]BIND_REMOTEVIEWS[/url]."
msgstr ""
"Должен быть необходим RemoteViewsService, чтобы гарантировать, что только "
"система может к нему привязаться. См. [url=https://developer.android.com/"
"reference/android/Manifest.permission#BIND_REMOTEVIEWS]BIND_REMOTEVIEWS[/url]."

msgid ""
"Must be required by a TextService (e.g. SpellCheckerService) to ensure that "
"only the system can bind to it. See [url=https://developer.android.com/"
"reference/android/Manifest.permission#BIND_TEXT_SERVICE]BIND_TEXT_SERVICE[/"
"url]."
msgstr ""
"Должно быть обязательным для TextService (например, SpellCheckerService), "
"чтобы гарантировать, что только система может привязываться к нему. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#BIND_TEXT_SERVICE]BIND_TEXT_SERVICE[/url]."

msgid ""
"Must be required by a VpnService, to ensure that only the system can bind to "
"it. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#BIND_VPN_SERVICE]BIND_VPN_SERVICE[/url]."
msgstr ""
"Должен быть необходим VpnService, чтобы гарантировать, что только система "
"может к нему подключиться. См. [url=https://developer.android.com/reference/"
"android/Manifest.permission#BIND_VPN_SERVICE]BIND_VPN_SERVICE[/url]."

msgid ""
"Must be required by a WallpaperService, to ensure that only the system can "
"bind to it. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#BIND_WALLPAPER]BIND_WALLPAPER[/url]."
msgstr ""
"Должно быть обязательным для WallpaperService, чтобы гарантировать, что "
"только система может привязываться к нему. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BIND_WALLPAPER]BIND_WALLPAPER[/url]."

msgid ""
"Allows applications to connect to paired bluetooth devices. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BLUETOOTH]BLUETOOTH[/url]."
msgstr ""
"Позволяет приложениям подключаться к сопряженным устройствам Bluetooth. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#BLUETOOTH]BLUETOOTH[/url]."

msgid ""
"Allows applications to discover and pair bluetooth devices. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BLUETOOTH_ADMIN]BLUETOOTH_ADMIN[/url]."
msgstr ""
"Позволяет приложениям обнаруживать и подключать устройства Bluetooth. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#BLUETOOTH_ADMIN]BLUETOOTH_ADMIN[/url]."

msgid ""
"Allows applications to pair bluetooth devices without user interaction, and "
"to allow or disallow phonebook access or message access. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BLUETOOTH_PRIVILEGED]BLUETOOTH_PRIVILEGED[/url]."
msgstr ""
"Позволяет приложениям подключать устройства Bluetooth без взаимодействия с "
"пользователем, а также разрешать или запрещать доступ к телефонной книге или "
"сообщениям. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#BLUETOOTH_PRIVILEGED]BLUETOOTH_PRIVILEGED[/url]."

msgid "Required to be able to disable the device (very dangerous!)."
msgstr "Необходимо иметь возможность отключить устройство (очень опасно!)."

msgid ""
"Allows an application to broadcast a notification that an application package "
"has been removed. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#BROADCAST_PACKAGE_REMOVED]BROADCAST_PACKAGE_REMOVED[/url]."
msgstr ""
"Позволяет приложению передавать уведомление об удалении пакета приложения. "
"См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#BROADCAST_PACKAGE_REMOVED]BROADCAST_PACKAGE_REMOVED[/url]."

msgid ""
"Allows an application to broadcast an SMS receipt notification. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#BROADCAST_SMS]BROADCAST_SMS[/url]."
msgstr ""
"Позволяет приложению транслировать уведомление о получении SMS. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#BROADCAST_SMS]BROADCAST_SMS[/url]."

msgid ""
"Allows an application to broadcast sticky intents. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BROADCAST_STICKY]BROADCAST_STICKY[/url]."
msgstr ""
"Позволяет приложению транслировать липкие намерения. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#BROADCAST_STICKY]BROADCAST_STICKY[/url]."

msgid ""
"Allows an application to broadcast a WAP PUSH receipt notification. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#BROADCAST_WAP_PUSH]BROADCAST_WAP_PUSH[/url]."
msgstr ""
"Позволяет приложению транслировать уведомление о получении WAP PUSH. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#BROADCAST_WAP_PUSH]BROADCAST_WAP_PUSH[/url]."

msgid ""
"Allows an application to initiate a phone call without going through the "
"Dialer user interface. See [url=https://developer.android.com/reference/"
"android/Manifest.permission#CALL_PHONE]CALL_PHONE[/url]."
msgstr ""
"Позволяет приложению инициировать телефонный звонок без использования "
"пользовательского интерфейса Dialer. См. [url=https://developer.android.com/"
"reference/android/Manifest.permission#CALL_PHONE]CALL_PHONE[/url]."

msgid ""
"Allows an application to call any phone number, including emergency numbers, "
"without going through the Dialer user interface. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#CALL_PRIVILEGED]CALL_PRIVILEGED[/url]."
msgstr ""
"Позволяет приложению звонить на любой номер телефона, включая номера "
"экстренных служб, без использования пользовательского интерфейса Dialer. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#CALL_PRIVILEGED]CALL_PRIVILEGED[/url]."

msgid ""
"Required to be able to access the camera device. See [url=https://"
"developer.android.com/reference/android/Manifest.permission#CAMERA]CAMERA[/"
"url]."
msgstr ""
"Требуется для доступа к устройству камеры. См. [url=https://"
"developer.android.com/reference/android/Manifest.permission#CAMERA]CAMERA[/"
"url]."

msgid ""
"Allows an application to capture audio output. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#CAPTURE_AUDIO_OUTPUT]CAPTURE_AUDIO_OUTPUT[/url]."
msgstr ""
"Позволяет приложению захватывать аудиовыход. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#CAPTURE_AUDIO_OUTPUT]CAPTURE_AUDIO_OUTPUT[/url]."

msgid "Allows an application to capture secure video output."
msgstr "Позволяет приложению захватывать защищенный видеовыход."

msgid "Allows an application to capture video output."
msgstr "Позволяет приложению захватывать видеовыход."

msgid ""
"Allows an application to change whether an application component (other than "
"its own) is enabled or not. See [url=https://developer.android.com/reference/"
"android/"
"Manifest.permission#CHANGE_COMPONENT_ENABLED_STATE]CHANGE_COMPONENT_ENABLED_STATE[/"
"url]."
msgstr ""
"Позволяет приложению изменять, включен ли компонент приложения (кроме его "
"собственного) или нет. См. [url=https://developer.android.com/reference/"
"android/"
"Manifest.permission#CHANGE_COMPONENT_ENABLED_STATE]CHANGE_COMPONENT_ENABLED_STATE[/"
"url]."

msgid ""
"Allows an application to modify the current configuration, such as locale. "
"See [url=https://developer.android.com/reference/android/"
"Manifest.permission#CHANGE_CONFIGURATION]CHANGE_CONFIGURATION[/url]."
msgstr ""
"Позволяет приложению изменять текущую конфигурацию, например, локаль. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#CHANGE_CONFIGURATION]CHANGE_CONFIGURATION[/url]."

msgid ""
"Allows applications to change network connectivity state. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#CHANGE_NETWORK_STATE]CHANGE_NETWORK_STATE[/url]."
msgstr ""
"Позволяет приложениям изменять состояние сетевого подключения. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#CHANGE_NETWORK_STATE]CHANGE_NETWORK_STATE[/url]."

msgid ""
"Allows applications to enter Wi-Fi Multicast mode. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#CHANGE_WIFI_MULTICAST_STATE]CHANGE_WIFI_MULTICAST_STATE[/"
"url]."
msgstr ""
"Позволяет приложениям входить в режим Wi-Fi Multicast. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#CHANGE_WIFI_MULTICAST_STATE]CHANGE_WIFI_MULTICAST_STATE[/"
"url]."

msgid ""
"Allows applications to change Wi-Fi connectivity state. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#CHANGE_WIFI_STATE]CHANGE_WIFI_STATE[/url]."
msgstr ""
"Позволяет приложениям изменять состояние подключения Wi-Fi. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#CHANGE_WIFI_STATE]CHANGE_WIFI_STATE[/url]."

msgid ""
"Allows an application to clear the caches of all installed applications on "
"the device. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#CLEAR_APP_CACHE]CLEAR_APP_CACHE[/url]."
msgstr ""
"Позволяет приложению очищать кэши всех установленных приложений на "
"устройстве. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#CLEAR_APP_CACHE]CLEAR_APP_CACHE[/url]."

msgid "Allows an application to clear user data."
msgstr "Позволяет приложению очищать данные пользователя."

msgid ""
"Allows enabling/disabling location update notifications from the radio. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#CONTROL_LOCATION_UPDATES]CONTROL_LOCATION_UPDATES[/url]."
msgstr ""
"Позволяет включать/отключать уведомления об обновлении местоположения от "
"радио. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#CONTROL_LOCATION_UPDATES]CONTROL_LOCATION_UPDATES[/url]."

msgid "Array of custom permission strings."
msgstr "Массив пользовательских строк разрешений."

msgid ""
"Allows an application to delete packages. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#DELETE_PACKAGES]DELETE_PACKAGES[/url]."
msgstr ""
"Позволяет приложению удалять пакеты. См. [url=https://developer.android.com/"
"reference/android/Manifest.permission#DELETE_PACKAGES]DELETE_PACKAGES[/url]."

msgid "Allows low-level access to power management."
msgstr "Обеспечивает низкоуровневый доступ к управлению питанием."

msgid ""
"Allows applications to RW to diagnostic resources. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#DIAGNOSTIC]DIAGNOSTIC[/url]."
msgstr ""
"Позволяет приложениям выполнять RW к диагностическим ресурсам. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#DIAGNOSTIC]DIAGNOSTIC[/url]."

msgid ""
"Allows applications to disable the keyguard if it is not secure. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#DISABLE_KEYGUARD]DISABLE_KEYGUARD[/url]."
msgstr ""
"Позволяет приложениям отключать блокировку клавиатуры, если она небезопасна. "
"См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#DISABLE_KEYGUARD]DISABLE_KEYGUARD[/url]."

msgid ""
"Allows an application to retrieve state dump information from system "
"services. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#DUMP]DUMP[/url]."
msgstr ""
"Позволяет приложению извлекать информацию о дампе состояния из системных "
"служб. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#DUMP]DUMP[/url]."

msgid ""
"Allows an application to expand or collapse the status bar. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#EXPAND_STATUS_BAR]EXPAND_STATUS_BAR[/url]."
msgstr ""
"Позволяет приложению разворачивать или сворачивать строку состояния. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#EXPAND_STATUS_BAR]EXPAND_STATUS_BAR[/url]."

msgid ""
"Run as a manufacturer test application, running as the root user. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#FACTORY_TEST]FACTORY_TEST[/url]."
msgstr ""
"Запустить как тестовое приложение производителя, запущенное как пользователь "
"root. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#FACTORY_TEST]FACTORY_TEST[/url]."

msgid "Allows access to the flashlight."
msgstr "Обеспечивает доступ к фонарику."

msgid ""
"Allows an application to force a BACK operation on whatever is the top "
"activity."
msgstr ""
"Позволяет приложению принудительно выполнить операцию BACK для любого "
"основного действия."

msgid ""
"Allows access to the list of accounts in the Accounts Service. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#GET_ACCOUNTS]GET_ACCOUNTS[/url]."
msgstr ""
"Разрешает доступ к списку аккаунтов в Accounts Service. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#GET_ACCOUNTS]GET_ACCOUNTS[/url]."

msgid ""
"Allows an application to find out the space used by any package. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#GET_PACKAGE_SIZE]GET_PACKAGE_SIZE[/url]."
msgstr ""
"Позволяет приложению узнать, какое пространство использует любой пакет. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#GET_PACKAGE_SIZE]GET_PACKAGE_SIZE[/url]."

msgid "Deprecated in API level 21."
msgstr "Устарело в API уровня 21."

msgid ""
"Allows an application to retrieve private information about the current top "
"activity."
msgstr ""
"Позволяет приложению извлекать конфиденциальную информацию о текущей наиболее "
"активной активности."

msgid ""
"Used on content providers to allow the global search system to access their "
"data. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#GLOBAL_SEARCH]GLOBAL_SEARCH[/url]."
msgstr ""
"Используется поставщиками контента, чтобы разрешить глобальной поисковой "
"системе доступ к их данным. См. [url=https://developer.android.com/reference/"
"android/Manifest.permission#GLOBAL_SEARCH]GLOBAL_SEARCH[/url]."

msgid "Allows access to hardware peripherals."
msgstr "Обеспечивает доступ к периферийным устройствам."

msgid ""
"Allows an application to inject user events (keys, touch, trackball) into the "
"event stream and deliver them to ANY window."
msgstr ""
"Позволяет приложению вставлять пользовательские события (клавиши, касания, "
"трекбол) в поток событий и доставлять их в ЛЮБОЕ окно."

msgid ""
"Allows an application to install a location provider into the Location "
"Manager. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#INSTALL_LOCATION_PROVIDER]INSTALL_LOCATION_PROVIDER[/url]."
msgstr ""
"Позволяет приложению устанавливать поставщика местоположения в Location "
"Manager. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#INSTALL_LOCATION_PROVIDER]INSTALL_LOCATION_PROVIDER[/url]."

msgid ""
"Allows an application to install packages. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#INSTALL_PACKAGES]INSTALL_PACKAGES[/url]."
msgstr ""
"Позволяет приложению устанавливать пакеты. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#INSTALL_PACKAGES]INSTALL_PACKAGES[/url]."

msgid ""
"Allows an application to install a shortcut in Launcher. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#INSTALL_SHORTCUT]INSTALL_SHORTCUT[/url]."
msgstr ""
"Позволяет приложению устанавливать ярлык в Launcher. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#INSTALL_SHORTCUT]INSTALL_SHORTCUT[/url]."

msgid ""
"Allows an application to open windows that are for use by parts of the system "
"user interface."
msgstr ""
"Позволяет приложению открывать окна, предназначенные для использования "
"частями пользовательского интерфейса системы."

msgid ""
"Allows applications to open network sockets. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#INTERNET]INTERNET[/url]."
msgstr ""
"Позволяет приложениям открывать сетевые сокеты. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#INTERNET]INTERNET[/url]."

msgid ""
"Allows an application to call "
"ActivityManager.killBackgroundProcesses(String). See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#KILL_BACKGROUND_PROCESSES]KILL_BACKGROUND_PROCESSES[/url]."
msgstr ""
"Позволяет приложению вызывать "
"ActivityManager.killBackgroundProcesses(String). См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#KILL_BACKGROUND_PROCESSES]KILL_BACKGROUND_PROCESSES[/url]."

msgid ""
"Allows an application to use location features in hardware, such as the "
"geofencing api. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#LOCATION_HARDWARE]LOCATION_HARDWARE[/url]."
msgstr ""
"Позволяет приложению использовать функции определения местоположения в "
"оборудовании, такие как API геозонирования. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#LOCATION_HARDWARE]LOCATION_HARDWARE[/url]."

msgid ""
"Allows an application to manage the list of accounts in the AccountManager."
msgstr ""
"Позволяет приложению управлять списком учетных записей в AccountManager."

msgid ""
"Allows an application to manage (create, destroy, Z-order) application tokens "
"in the window manager."
msgstr ""
"Позволяет приложению управлять (создавать, уничтожать, Z-упорядочивать) "
"токенами приложений в диспетчере окон."

msgid ""
"Allows an application to manage access to documents, usually as part of a "
"document picker. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#MANAGE_DOCUMENTS]MANAGE_DOCUMENTS[/url]."
msgstr ""
"Позволяет приложению управлять доступом к документам, обычно как часть "
"средства выбора документов. См. [url=https://developer.android.com/reference/"
"android/Manifest.permission#MANAGE_DOCUMENTS]MANAGE_DOCUMENTS[/url]."

msgid ""
"Allows an application a broad access to external storage in scoped storage. "
"See [url=https://developer.android.com/reference/android/"
"Manifest.permission#MANAGE_EXTERNAL_STORAGE]MANAGE_EXTERNAL_STORAGE[/url]."
msgstr ""
"Позволяет приложению получить широкий доступ к внешнему хранилищу в хранилище "
"с ограниченной областью действия. См. [url=https://developer.android.com/"
"reference/android/"
"Manifest.permission#MANAGE_EXTERNAL_STORAGE]MANAGE_EXTERNAL_STORAGE[/url]."

msgid ""
"See [url=https://developer.android.com/reference/android/"
"Manifest.permission#MASTER_CLEAR]MASTER_CLEAR[/url]."
msgstr ""
"См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#MASTER_CLEAR]MASTER_CLEAR[/url]."

msgid ""
"Allows an application to know what content is playing and control its "
"playback. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#MEDIA_CONTENT_CONTROL]MEDIA_CONTENT_CONTROL[/url]."
msgstr ""
"Позволяет приложению знать, какой контент воспроизводится, и управлять его "
"воспроизведением. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#MEDIA_CONTENT_CONTROL]MEDIA_CONTENT_CONTROL[/url]."

msgid ""
"Allows an application to modify global audio settings. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#MODIFY_AUDIO_SETTINGS]MODIFY_AUDIO_SETTINGS[/url]."
msgstr ""
"Позволяет приложению изменять глобальные настройки звука. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#MODIFY_AUDIO_SETTINGS]MODIFY_AUDIO_SETTINGS[/url]."

msgid ""
"Allows modification of the telephony state - power on, mmi, etc. Does not "
"include placing calls. See [url=https://developer.android.com/reference/"
"android/Manifest.permission#MODIFY_PHONE_STATE]MODIFY_PHONE_STATE[/url]."
msgstr ""
"Позволяет изменять состояние телефонии — включение питания, mmi и т. д. Не "
"включает совершение вызовов. См. [url=https://developer.android.com/reference/"
"android/Manifest.permission#MODIFY_PHONE_STATE]MODIFY_PHONE_STATE[/url]."

msgid ""
"Allows formatting file systems for removable storage. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#MOUNT_FORMAT_FILESYSTEMS]MOUNT_FORMAT_FILESYSTEMS[/url]."
msgstr ""
"Позволяет форматировать файловые системы для съемных носителей. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#MOUNT_FORMAT_FILESYSTEMS]MOUNT_FORMAT_FILESYSTEMS[/url]."

msgid ""
"Allows mounting and unmounting file systems for removable storage. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#MOUNT_UNMOUNT_FILESYSTEMS]MOUNT_UNMOUNT_FILESYSTEMS[/url]."
msgstr ""
"Позволяет монтировать и демонтировать файловые системы для съемных носителей. "
"См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#MOUNT_UNMOUNT_FILESYSTEMS]MOUNT_UNMOUNT_FILESYSTEMS[/url]."

msgid ""
"Allows applications to perform I/O operations over NFC. See [url=https://"
"developer.android.com/reference/android/Manifest.permission#NFC]NFC[/url]."
msgstr ""
"Позволяет приложениям выполнять операции ввода-вывода через NFC. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#NFC]NFC[/url]."

msgid "Deprecated in API level 15."
msgstr "Устарело в API уровня 15."

msgid "Allows an application to make its activities persistent."
msgstr "Позволяет приложению сделать свои действия постоянными."

msgid ""
"Allows an application to post notifications. Added in API level 33. See "
"[url=https://developer.android.com/develop/ui/views/notifications/"
"notification-permission]Notification runtime permission[/url]."
msgstr ""
"Позволяет приложению публиковать уведомления. Добавлено в API уровня 33. См. "
"[url=https://developer.android.com/develop/ui/views/notifications/"
"notification-permission]Разрешение на выполнение уведомлений[/url]."

msgid "Deprecated in API level 29."
msgstr "Устарело в API уровня 29."

msgid ""
"Allows an application to see the number being dialed during an outgoing call "
"with the option to redirect the call to a different number or abort the call "
"altogether. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#PROCESS_OUTGOING_CALLS]PROCESS_OUTGOING_CALLS[/url]."
msgstr ""
"Позволяет приложению видеть набираемый номер во время исходящего вызова с "
"возможностью перенаправить вызов на другой номер или вообще отменить вызов. "
"См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#PROCESS_OUTGOING_CALLS]PROCESS_OUTGOING_CALLS[/url]."

msgid ""
"Allows an application to read the user's calendar data. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_CALENDAR]READ_CALENDAR[/url]."
msgstr ""
"Позволяет приложению читать данные календаря пользователя. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_CALENDAR]READ_CALENDAR[/url]."

msgid ""
"Allows an application to read the user's call log. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_CALL_LOG]READ_CALL_LOG[/url]."
msgstr ""
"Позволяет приложению читать журнал вызовов пользователя. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_CALL_LOG]READ_CALL_LOG[/url]."

msgid ""
"Allows an application to read the user's contacts data. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_CONTACTS]READ_CONTACTS[/url]."
msgstr ""
"Позволяет приложению читать данные контактов пользователя. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_CONTACTS]READ_CONTACTS[/url]."

msgid "Deprecated in API level 33."
msgstr "Устарело в API level 33."

msgid ""
"Allows an application to read from external storage. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_EXTERNAL_STORAGE]READ_EXTERNAL_STORAGE[/url]."
msgstr ""
"Позволяет приложению читать из внешнего хранилища. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_EXTERNAL_STORAGE]READ_EXTERNAL_STORAGE[/url]."

msgid ""
"Allows an application to take screen shots and more generally get access to "
"the frame buffer data."
msgstr ""
"Позволяет приложению делать снимки экрана и, в более общем плане, получать "
"доступ к данным буфера кадров."

msgid ""
"Allows an application to read (but not write) the user's browsing history and "
"bookmarks."
msgstr ""
"Позволяет приложению читать (но не записывать) историю просмотров и закладки "
"пользователя."

msgid "Deprecated in API level 16."
msgstr "Устарело в API уровня 16."

msgid ""
"Allows an application to read the low-level system log files. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#READ_LOGS]READ_LOGS[/url]."
msgstr ""
"Позволяет приложению читать файлы системного журнала низкого уровня. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#READ_LOGS]READ_LOGS[/url]."

msgid ""
"Allows an application to read audio files from external storage. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#READ_MEDIA_AUDIO]READ_MEDIA_AUDIO[/url]."
msgstr ""
"Позволяет приложению читать аудиофайлы с внешнего хранилища. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_MEDIA_AUDIO]READ_MEDIA_AUDIO[/url]."

msgid ""
"Allows an application to read image files from external storage. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#READ_MEDIA_IMAGES]READ_MEDIA_IMAGES[/url]."
msgstr ""
"Позволяет приложению читать файлы изображений из внешнего хранилища. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#READ_MEDIA_IMAGES]READ_MEDIA_IMAGES[/url]."

msgid ""
"Allows an application to read video files from external storage. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#READ_MEDIA_VIDEO]READ_MEDIA_VIDEO[/url]."
msgstr ""
"Позволяет приложению читать видеофайлы с внешнего хранилища. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_MEDIA_VIDEO]READ_MEDIA_VIDEO[/url]."

msgid ""
"Allows an application to read image or video files from external storage that "
"a user has selected via the permission prompt photo picker. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_MEDIA_VISUAL_USER_SELECTED]READ_MEDIA_VISUAL_USER_SELECTED[/"
"url]."
msgstr ""
"Позволяет приложению читать файлы изображений или видео из внешнего "
"хранилища, которые пользователь выбрал с помощью окна выбора фотографий с "
"запросом на разрешение. См. [url=https://developer.android.com/reference/"
"android/"
"Manifest.permission#READ_MEDIA_VISUAL_USER_SELECTED]READ_MEDIA_VISUAL_USER_SELECTED[/"
"url]."

msgid ""
"Allows read only access to phone state. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_PHONE_STATE]READ_PHONE_STATE[/url]."
msgstr ""
"Позволяет только читать доступ к состоянию телефона. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_PHONE_STATE]READ_PHONE_STATE[/url]."

msgid "Allows an application to read the user's personal profile data."
msgstr "Позволяет приложению читать данные личного профиля пользователя."

msgid ""
"Allows an application to read SMS messages. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_SMS]READ_SMS[/url]."
msgstr ""
"Позволяет приложению читать SMS-сообщения. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_SMS]READ_SMS[/url]."

msgid "Allows an application to read from the user's social stream."
msgstr "Позволяет приложению читать из социальной ленты пользователя."

msgid ""
"Allows applications to read the sync settings. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_SYNC_SETTINGS]READ_SYNC_SETTINGS[/url]."
msgstr ""
"Позволяет приложениям читать настройки синхронизации. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_SYNC_SETTINGS]READ_SYNC_SETTINGS[/url]."

msgid ""
"Allows applications to read the sync stats. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_SYNC_STATS]READ_SYNC_STATS[/url]."
msgstr ""
"Позволяет приложениям читать статистику синхронизации. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#READ_SYNC_STATS]READ_SYNC_STATS[/url]."

msgid "Allows an application to read the user dictionary."
msgstr "Позволяет приложению читать пользовательский словарь."

msgid ""
"Required to be able to reboot the device. See [url=https://"
"developer.android.com/reference/android/Manifest.permission#REBOOT]REBOOT[/"
"url]."
msgstr ""
"Требуется для возможности перезагрузки устройства. См. [url=https://"
"developer.android.com/reference/android/Manifest.permission#REBOOT]REBOOT[/"
"url]."

msgid ""
"Allows an application to receive the Intent.ACTION_BOOT_COMPLETED that is "
"broadcast after the system finishes booting. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#RECEIVE_BOOT_COMPLETED]RECEIVE_BOOT_COMPLETED[/url]."
msgstr ""
"Позволяет приложению получать Intent.ACTION_BOOT_COMPLETED, который "
"транслируется после завершения загрузки системы. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#RECEIVE_BOOT_COMPLETED]RECEIVE_BOOT_COMPLETED[/url]."

msgid ""
"Allows an application to monitor incoming MMS messages. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#RECEIVE_MMS]RECEIVE_MMS[/url]."
msgstr ""
"Позволяет приложению отслеживать входящие MMS-сообщения. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#RECEIVE_MMS]RECEIVE_MMS[/url]."

msgid ""
"Allows an application to receive SMS messages. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#RECEIVE_SMS]RECEIVE_SMS[/url]."
msgstr ""
"Позволяет приложению получать SMS-сообщения. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#RECEIVE_SMS]RECEIVE_SMS[/url]."

msgid ""
"Allows an application to receive WAP push messages. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#RECEIVE_WAP_PUSH]RECEIVE_WAP_PUSH[/url]."
msgstr ""
"Позволяет приложению получать WAP push-сообщения. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#RECEIVE_WAP_PUSH]RECEIVE_WAP_PUSH[/url]."

msgid ""
"Allows an application to record audio. See [url=https://developer.android.com/"
"reference/android/Manifest.permission#RECORD_AUDIO]RECORD_AUDIO[/url]."
msgstr ""
"Позволяет приложению записывать звук. См. [url=https://developer.android.com/"
"reference/android/Manifest.permission#RECORD_AUDIO]RECORD_AUDIO[/url]."

msgid ""
"Allows an application to change the Z-order of tasks. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#REORDER_TASKS]REORDER_TASKS[/url]."
msgstr ""
"Позволяет приложению изменять Z-порядок задач. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#REORDER_TASKS]REORDER_TASKS[/url]."

msgid ""
"Allows an application (Phone) to send a request to other applications to "
"handle the respond-via-message action during incoming calls. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SEND_RESPOND_VIA_MESSAGE]SEND_RESPOND_VIA_MESSAGE[/url]."
msgstr ""
"Позволяет приложению (телефону) отправлять запрос другим приложениям для "
"обработки действия ответа через сообщение во время входящих вызовов. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#SEND_RESPOND_VIA_MESSAGE]SEND_RESPOND_VIA_MESSAGE[/url]."

msgid ""
"Allows an application to send SMS messages. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SEND_SMS]SEND_SMS[/url]."
msgstr ""
"Позволяет приложению отправлять SMS-сообщения. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SEND_SMS]SEND_SMS[/url]."

msgid ""
"Allows an application to watch and control how activities are started "
"globally in the system."
msgstr ""
"Позволяет приложению отслеживать и контролировать запуск действий в системе в "
"глобальном масштабе."

msgid ""
"Allows an application to broadcast an Intent to set an alarm for the user. "
"See [url=https://developer.android.com/reference/android/"
"Manifest.permission#SET_ALARM]SET_ALARM[/url]."
msgstr ""
"Позволяет приложению транслировать намерение установить будильник для "
"пользователя. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#SET_ALARM]SET_ALARM[/url]."

msgid ""
"Allows an application to control whether activities are immediately finished "
"when put in the background. See [url=https://developer.android.com/reference/"
"android/Manifest.permission#SET_ALWAYS_FINISH]SET_ALWAYS_FINISH[/url]."
msgstr ""
"Позволяет приложению контролировать, будут ли действия немедленно завершены "
"при переводе в фоновый режим. См. [url=https://developer.android.com/"
"reference/android/Manifest.permission#SET_ALWAYS_FINISH]SET_ALWAYS_FINISH[/"
"url]."

msgid ""
"Allows to modify the global animation scaling factor. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_ANIMATION_SCALE]SET_ANIMATION_SCALE[/url]."
msgstr ""
"Позволяет изменять глобальный коэффициент масштабирования анимации. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#SET_ANIMATION_SCALE]SET_ANIMATION_SCALE[/url]."

msgid ""
"Configure an application for debugging. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_DEBUG_APP]SET_DEBUG_APP[/url]."
msgstr ""
"Настройте приложение для отладки. См. [url=https://developer.android.com/"
"reference/android/Manifest.permission#SET_DEBUG_APP]SET_DEBUG_APP[/url]."

msgid ""
"Allows low-level access to setting the orientation (actually rotation) of the "
"screen."
msgstr ""
"Обеспечивает низкоуровневый доступ к настройке ориентации (фактически "
"поворота) экрана."

msgid "Allows low-level access to setting the pointer speed."
msgstr "Обеспечивает низкоуровневый доступ к настройке скорости указателя."

msgid ""
"Allows an application to set the maximum number of (not needed) application "
"processes that can be running. See [url=https://developer.android.com/"
"reference/android/Manifest.permission#SET_PROCESS_LIMIT]SET_PROCESS_LIMIT[/"
"url]."
msgstr ""
"Позволяет приложению устанавливать максимальное количество (необязательных) "
"процессов приложения, которые могут быть запущены. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_PROCESS_LIMIT]SET_PROCESS_LIMIT[/url]."

msgid ""
"Allows applications to set the system time directly. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_TIME]SET_TIME[/url]."
msgstr ""
"Позволяет приложениям устанавливать системное время напрямую. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#SET_TIME]SET_TIME[/url]."

msgid ""
"Allows applications to set the system time zone directly. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_TIME_ZONE]SET_TIME_ZONE[/url]."
msgstr ""
"Позволяет приложениям напрямую устанавливать часовой пояс системы. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#SET_TIME_ZONE]SET_TIME_ZONE[/url]."

msgid ""
"Allows applications to set the wallpaper. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_WALLPAPER]SET_WALLPAPER[/url]."
msgstr ""
"Позволяет приложениям устанавливать обои. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_WALLPAPER]SET_WALLPAPER[/url]."

msgid ""
"Allows applications to set the wallpaper hints. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_WALLPAPER_HINTS]SET_WALLPAPER_HINTS[/url]."
msgstr ""
"Позволяет приложениям устанавливать подсказки обоев. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#SET_WALLPAPER_HINTS]SET_WALLPAPER_HINTS[/url]."

msgid ""
"Allow an application to request that a signal be sent to all persistent "
"processes. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#SIGNAL_PERSISTENT_PROCESSES]SIGNAL_PERSISTENT_PROCESSES[/"
"url]."
msgstr ""
"Разрешить приложению запрашивать отправку сигнала всем постоянным процессам. "
"См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#SIGNAL_PERSISTENT_PROCESSES]SIGNAL_PERSISTENT_PROCESSES[/"
"url]."

msgid ""
"Allows an application to open, close, or disable the status bar and its "
"icons. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#STATUS_BAR]STATUS_BAR[/url]."
msgstr ""
"Позволяет приложению открывать, закрывать или отключать строку состояния и ее "
"значки. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#STATUS_BAR]STATUS_BAR[/url]."

msgid ""
"Allows an application to allow access the subscribed feeds ContentProvider."
msgstr ""
"Позволяет приложению разрешить доступ к подписанным каналам ContentProvider."

msgid ""
"Allows an app to create windows using the type "
"WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY, shown on top of all "
"other apps. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#SYSTEM_ALERT_WINDOW]SYSTEM_ALERT_WINDOW[/url]."
msgstr ""
"Позволяет приложению создавать окна с использованием типа "
"WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY, отображаемые поверх всех "
"других приложений. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#SYSTEM_ALERT_WINDOW]SYSTEM_ALERT_WINDOW[/url]."

msgid ""
"Allows using the device's IR transmitter, if available. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#TRANSMIT_IR]TRANSMIT_IR[/url]."
msgstr ""
"Позволяет использовать ИК-передатчик устройства, если он доступен. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#TRANSMIT_IR]TRANSMIT_IR[/url]."

msgid ""
"Allows an application to update device statistics. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#UPDATE_DEVICE_STATS]UPDATE_DEVICE_STATS[/url]."
msgstr ""
"Позволяет приложению обновлять статистику устройства. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#UPDATE_DEVICE_STATS]UPDATE_DEVICE_STATS[/url]."

msgid "Allows an application to request authtokens from the AccountManager."
msgstr ""
"Позволяет приложению запрашивать токены аутентификации у AccountManager."

msgid ""
"Allows an application to use SIP service. See [url=https://"
"developer.android.com/reference/android/Manifest.permission#USE_SIP]USE_SIP[/"
"url]."
msgstr ""
"Позволяет приложению использовать службу SIP. См. [url=https://"
"developer.android.com/reference/android/Manifest.permission#USE_SIP]USE_SIP[/"
"url]."

msgid ""
"Allows access to the vibrator. See [url=https://developer.android.com/"
"reference/android/Manifest.permission#VIBRATE]VIBRATE[/url]."
msgstr ""
"Разрешает доступ к вибратору. См. [url=https://developer.android.com/"
"reference/android/Manifest.permission#VIBRATE]VIBRATE[/url]."

msgid ""
"Allows using PowerManager WakeLocks to keep processor from sleeping or screen "
"from dimming. See [url=https://developer.android.com/reference/android/"
"Manifest.permission#WAKE_LOCK]WAKE_LOCK[/url]."
msgstr ""
"Позволяет использовать PowerManager WakeLocks для предотвращения перехода "
"процессора в спящий режим или затемнения экрана. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WAKE_LOCK]WAKE_LOCK[/url]."

msgid ""
"Allows applications to write the apn settings and read sensitive fields of an "
"existing apn settings like user and password. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WRITE_APN_SETTINGS]WRITE_APN_SETTINGS[/url]."
msgstr ""
"Позволяет приложениям записывать настройки apn и читать конфиденциальные поля "
"существующих настроек apn, такие как имя пользователя и пароль. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#WRITE_APN_SETTINGS]WRITE_APN_SETTINGS[/url]."

msgid ""
"Allows an application to write the user's calendar data. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WRITE_CALENDAR]WRITE_CALENDAR[/url]."
msgstr ""
"Позволяет приложению записывать данные календаря пользователя. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#WRITE_CALENDAR]WRITE_CALENDAR[/url]."

msgid ""
"Allows an application to write (but not read) the user's call log data. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#WRITE_CALL_LOG]WRITE_CALL_LOG[/url]."
msgstr ""
"Позволяет приложению записывать (но не читать) данные журнала вызовов "
"пользователя. См. [url=https://developer.android.com/reference/android/"
"Manifest.permission#WRITE_CALL_LOG]WRITE_CALL_LOG[/url]."

msgid ""
"Allows an application to write the user's contacts data. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WRITE_CONTACTS]WRITE_CONTACTS[/url]."
msgstr ""
"Позволяет приложению записывать данные контактов пользователя. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#WRITE_CONTACTS]WRITE_CONTACTS[/url]."

msgid ""
"Allows an application to write to external storage. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WRITE_EXTERNAL_STORAGE]WRITE_EXTERNAL_STORAGE[/url]."
msgstr ""
"Позволяет приложению записывать данные во внешнее хранилище. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WRITE_EXTERNAL_STORAGE]WRITE_EXTERNAL_STORAGE[/url]."

msgid ""
"Allows an application to modify the Google service map. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WRITE_GSERVICES]WRITE_GSERVICES[/url]."
msgstr ""
"Позволяет приложению изменять карту сервисов Google. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WRITE_GSERVICES]WRITE_GSERVICES[/url]."

msgid ""
"Allows an application to write (but not read) the user's browsing history and "
"bookmarks."
msgstr ""
"Позволяет приложению записывать (но не читать) историю просмотров и закладки "
"пользователя."

msgid ""
"Allows an application to write (but not read) the user's personal profile "
"data."
msgstr ""
"Позволяет приложению записывать (но не читать) данные личного профиля "
"пользователя."

msgid ""
"Allows an application to read or write the secure system settings. See "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#WRITE_SECURE_SETTINGS]WRITE_SECURE_SETTINGS[/url]."
msgstr ""
"Позволяет приложению читать или записывать настройки защищенной системы. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#WRITE_SECURE_SETTINGS]WRITE_SECURE_SETTINGS[/url]."

msgid ""
"Allows an application to read or write the system settings. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WRITE_SETTINGS]WRITE_SETTINGS[/url]."
msgstr ""
"Позволяет приложению читать или записывать системные настройки. См. "
"[url=https://developer.android.com/reference/android/"
"Manifest.permission#WRITE_SETTINGS]WRITE_SETTINGS[/url]."

msgid "Allows an application to write SMS messages."
msgstr "Позволяет приложению писать SMS-сообщения."

msgid ""
"Allows an application to write (but not read) the user's social stream data."
msgstr ""
"Позволяет приложению записывать (но не читать) данные социальной ленты "
"пользователя."

msgid ""
"Allows applications to write the sync settings. See [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WRITE_SYNC_SETTINGS]WRITE_SYNC_SETTINGS[/url]."
msgstr ""
"Позволяет приложениям записывать настройки синхронизации. См. [url=https://"
"developer.android.com/reference/android/"
"Manifest.permission#WRITE_SYNC_SETTINGS]WRITE_SYNC_SETTINGS[/url]."

msgid "Allows an application to write to the user dictionary."
msgstr "Позволяет приложению записывать данные в пользовательский словарь."

msgid ""
"The background color used for the root window. Default is [code]black[/code]."
msgstr "Цвет фона корневого окна. По умолчанию — [code]чёрный[/code]."

msgid ""
"If [code]true[/code], this makes the navigation and status bars translucent "
"and allows the application content to extend edge to edge.\n"
"[b]Note:[/b] You should ensure that none of the application content is "
"occluded by system elements by using the [method "
"DisplayServer.get_display_safe_area] and [method "
"DisplayServer.get_display_cutouts] methods."
msgstr ""
"Если [code]true[/code], это делает панели навигации и состояния "
"полупрозрачными, позволяя содержимому приложения простираться от края до "
"края.\n"
"[b]Примечание:[/b] Необходимо убедиться, что содержимое приложения не "
"перекрыто системными элементами, используя методы [method "
"DisplayServer.get_display_safe_area] и [method "
"DisplayServer.get_display_cutouts]."

msgid ""
"If [code]true[/code], hides the navigation and status bar. Set [method "
"DisplayServer.window_set_mode] to change this at runtime."
msgstr ""
"Если [code]true[/code], скрывает навигацию и строку состояния. Установите "
"[method DisplayServer.window_set_mode], чтобы изменить это во время "
"выполнения."

msgid "Indicates whether the application supports larger screen form-factors."
msgstr "Указывает, поддерживает ли приложение экраны большего размера."

msgid ""
"Indicates whether an application supports the \"normal\" screen form-factors."
msgstr "Указывает, поддерживает ли приложение «обычные» форм-факторы экрана."

msgid "Indicates whether the application supports smaller screen form-factors."
msgstr ""
"Указывает, поддерживает ли приложение устройства с меньшим форм-фактором "
"экрана."

msgid ""
"Indicates whether the application supports extra large screen form-factors."
msgstr "Указывает, поддерживает ли приложение экраны очень большого размера."

msgid ""
"If [code]true[/code], shaders will be compiled and embedded in the "
"application. This option is only supported when using the Forward+ or Mobile "
"renderers."
msgstr ""
"Если [code]true[/code], шейдеры будут скомпилированы и встроены в приложение. "
"Эта опция поддерживается только при использовании рендереров Forward+ или "
"Mobile."

msgid ""
"If [code]true[/code], allows the application to participate in the backup and "
"restore infrastructure."
msgstr ""
"Если [code]true[/code], приложение может участвовать в инфраструктуре "
"резервного копирования и восстановления."

msgid ""
"Machine-readable application version. This must be incremented for every new "
"release pushed to the Play Store."
msgstr ""
"Машиночитаемая версия приложения. Она должна увеличиваться для каждого нового "
"релиза, помещаемого в Play Store."

msgid ""
"Application version visible to the user. Falls back to [member "
"ProjectSettings.application/config/version] if left empty."
msgstr ""
"Версия приложения видна пользователю. Возвращается к [member "
"ProjectSettings.application/config/version], если оставить пустым."

msgid "The extended reality (XR) mode for this application."
msgstr "Режим расширенной реальности (XR) для этого приложения."

msgid "Base class for the Apple embedded platform exporters (iOS and visionOS)."
msgstr ""
"Базовый класс для экспортеров встроенных платформ Apple (iOS и visionOS)."

msgid ""
"The base class for Apple embedded platform exporters. These include iOS and "
"visionOS, but not macOS. See the classes inheriting from this one for more "
"details."
msgstr ""
"Базовый класс для экспортеров встроенных платформ Apple. К ним относятся iOS "
"и visionOS, но не macOS. Подробнее см. классы, наследуемые от этого."

msgid "Exporting for iOS"
msgstr "Экспорт для iOS"

msgid "iOS plugins documentation index"
msgstr "Индекс документации плагинов iOS"

msgid "Base class for custom [EditorExportPlatform] implementations (plugins)."
msgstr ""
"Базовый класс для пользовательских реализаций [EditorExportPlatform] "
"(плагинов)."

msgid ""
"External [EditorExportPlatform] implementations should inherit from this "
"class.\n"
"To use [EditorExportPlatform], register it using the [method "
"EditorPlugin.add_export_platform] method first."
msgstr ""
"Внешние реализации [EditorExportPlatform] должны наследоваться от этого "
"класса.\n"
"Чтобы использовать [EditorExportPlatform], сначала зарегистрируйте его с "
"помощью метода [method EditorPlugin.add_export_platform]."

msgid ""
"Returns [code]true[/code], if specified [param preset] is valid and can be "
"exported. Use [method set_config_error] and [method "
"set_config_missing_templates] to set error details.\n"
"Usual implementation can call [method _has_valid_export_configuration] and "
"[method _has_valid_project_configuration] to determine if export is possible."
msgstr ""
"Возвращает [code]true[/code], если указанный [param preset] является "
"допустимым и может быть экспортирован. Используйте [method set_config_error] "
"и [method set_config_missing_templates] для установки деталей ошибки.\n"
"Обычная реализация может вызывать [method _has_valid_export_configuration] и "
"[method _has_valid_project_configuration], чтобы определить, возможен ли "
"экспорт."

msgid "Called by the editor before platform is unregistered."
msgstr "Вызывается редактором перед отменой регистрации платформы."

msgid ""
"Creates a PCK archive at [param path] for the specified [param preset].\n"
"This method is called when \"Export PCK/ZIP\" button is pressed in the export "
"dialog, with \"Export as Patch\" disabled, and PCK is selected as a file type."
msgstr ""
"Создает архив PCK в [param path] для указанного [param preset]. \n"
"Этот метод вызывается при нажатии кнопки «Экспорт PCK/ZIP» в диалоговом окне "
"экспорта, при отключенном «Экспортировать как патч», и выборе PCK в качестве "
"типа файла."

msgid ""
"Creates a patch PCK archive at [param path] for the specified [param preset], "
"containing only the files that have changed since the last patch.\n"
"This method is called when \"Export PCK/ZIP\" button is pressed in the export "
"dialog, with \"Export as Patch\" enabled, and PCK is selected as a file "
"type.\n"
"[b]Note:[/b] The patches provided in [param patches] have already been loaded "
"when this method is called and are merely provided as context. When empty the "
"patches defined in the export preset have been loaded instead."
msgstr ""
"Создает архив патча PCK в [param path] для указанного [param preset], "
"содержащий только файлы, которые были изменены с момента последнего патча.\n"
"Этот метод вызывается при нажатии кнопки \"Экспорт PCK/ZIP\" в диалоговом "
"окне экспорта с включенным \"Экспортировать как патч\" и выбором PCK в "
"качестве типа файла.\n"
"[b]Примечание:[/b] Патчи, предоставленные в [param patches], уже были "
"загружены при вызове этого метода и просто предоставляются в качестве "
"контекста. Если пусто, вместо этого загружаются патчи, определенные в "
"экспортном пресете."

msgid ""
"Creates a full project at [param path] for the specified [param preset].\n"
"This method is called when \"Export\" button is pressed in the export "
"dialog.\n"
"This method implementation can call [method EditorExportPlatform.save_pack] "
"or [method EditorExportPlatform.save_zip] to use default PCK/ZIP export "
"process, or calls [method EditorExportPlatform.export_project_files] and "
"implement custom callback for processing each exported file."
msgstr ""
"Создает полный проект в [param path] для указанного [param preset].\n"
"Этот метод вызывается при нажатии кнопки «Экспорт» в диалоговом окне "
"экспорта.\n"
"Эта реализация метода может вызывать [method EditorExportPlatform.save_pack] "
"или [method EditorExportPlatform.save_zip] для использования процесса "
"экспорта PCK/ZIP по умолчанию или вызывать [method "
"EditorExportPlatform.export_project_files] и реализовывать пользовательский "
"обратный вызов для обработки каждого экспортированного файла."

msgid ""
"Create a ZIP archive at [param path] for the specified [param preset].\n"
"This method is called when \"Export PCK/ZIP\" button is pressed in the export "
"dialog, with \"Export as Patch\" disabled, and ZIP is selected as a file type."
msgstr ""
"Создайте ZIP-архив в [param path] для указанного [param preset]. \n"
"Этот метод вызывается при нажатии кнопки «Экспорт PCK/ZIP» в диалоговом окне "
"экспорта, при отключенном «Экспортировать как патч», и выборе ZIP в качестве "
"типа файла."

msgid ""
"Create a ZIP archive at [param path] for the specified [param preset], "
"containing only the files that have changed since the last patch.\n"
"This method is called when \"Export PCK/ZIP\" button is pressed in the export "
"dialog, with \"Export as Patch\" enabled, and ZIP is selected as a file "
"type.\n"
"[b]Note:[/b] The patches provided in [param patches] have already been loaded "
"when this method is called and are merely provided as context. When empty the "
"patches defined in the export preset have been loaded instead."
msgstr ""
"Создайте архив ZIP в [param path] для указанного [param preset], содержащий "
"только файлы, которые были изменены с момента последнего исправления.\n"
"Этот метод вызывается при нажатии кнопки «Экспорт PCK/ZIP» в диалоговом окне "
"экспорта с включенным «Экспортировать как Патч» и выбором ZIP в качестве типа "
"файла.\n"
"[b]Примечание:[/b] Патчи, предоставленные в [param patches], уже были "
"загружены при вызове этого метода и просто предоставляются в качестве "
"контекста. Если пусто, вместо этого загружаются патчи, определенные в "
"экспортном пресете."

msgid ""
"Returns array of supported binary extensions for the full project export."
msgstr ""
"Возвращает массив поддерживаемых двоичных расширений для полного экспорта "
"проекта."

msgid ""
"Returns protocol used for remote debugging. Default implementation return "
"[code]tcp://[/code]."
msgstr ""
"Возвращает протокол, используемый для удаленной отладки. Реализация по "
"умолчанию возвращает [code]tcp://[/code]."

msgid "Returns device architecture for one-click deploy."
msgstr "Возвращает архитектуру устройства для развертывания в один клик."

msgid ""
"Validates [param option] and returns visibility for the specified [param "
"preset]. Default implementation return [code]true[/code] for all options."
msgstr ""
"Проверяет [param option] и возвращает видимость для указанного [param "
"preset]. Реализация по умолчанию возвращает [code]true[/code] для всех "
"параметров."

msgid ""
"Validates [param option] and returns warning message for the specified [param "
"preset]. Default implementation return empty string for all options."
msgstr ""
"Проверяет [param option] и возвращает предупреждающее сообщение для "
"указанного [param preset]. Реализация по умолчанию возвращает пустую строку "
"для всех параметров."

msgid ""
"Returns a property list, as an [Array] of dictionaries. Each [Dictionary] "
"must at least contain the [code]name: StringName[/code] and [code]type: "
"Variant.Type[/code] entries.\n"
"Additionally, the following keys are supported:\n"
"- [code]hint: PropertyHint[/code]\n"
"- [code]hint_string: String[/code]\n"
"- [code]usage: PropertyUsageFlags[/code]\n"
"- [code]class_name: StringName[/code]\n"
"- [code]default_value: Variant[/code], default value of the property.\n"
"- [code]update_visibility: bool[/code], if set to [code]true[/code], [method "
"_get_export_option_visibility] is called for each property when this property "
"is changed.\n"
"- [code]required: bool[/code], if set to [code]true[/code], this property "
"warnings are critical, and should be resolved to make export possible. This "
"value is a hint for the [method _has_valid_export_configuration] "
"implementation, and not used by the engine directly.\n"
"See also [method Object._get_property_list]."
msgstr ""
"Возвращает список свойств в виде [Array] словарей. Каждый [Dictionary] должен "
"содержать как минимум записи [code]name: StringName[/code] и [code]type: "
"Variant.Type[/code].\n"
"Кроме того, поддерживаются следующие ключи:\n"
"- [code]hint: PropertyHint[/code]\n"
"- [code]hint_string: String[/code]\n"
"- [code]usage: PropertyUsageFlags[/code]\n"
"- [code]class_name: StringName[/code]\n"
"- [code]default_value: Variant[/code], значение свойства по умолчанию.\n"
"- [code]update_visibility: bool[/code], если установлено значение [code]true[/"
"code], [method _get_export_option_visibility] вызывается для каждого свойства "
"при изменении этого свойства.\n"
"- [code]required: bool[/code], если установлено значение [code]true[/code], "
"предупреждения этого свойства являются критическими и должны быть разрешены, "
"чтобы сделать экспорт возможным. Это значение является подсказкой для "
"реализации [method _has_valid_export_configuration] и не используется движком "
"напрямую.\n"
"См. также [method Object._get_property_list]."

msgid ""
"Returns the platform logo displayed in the export dialog. The logo should be "
"32×32 pixels, adjusted for the current editor scale (see [method "
"EditorInterface.get_editor_scale])."
msgstr ""
"Возвращает логотип платформы, отображаемый в диалоговом окне экспорта. Размер "
"логотипа должен быть 32×32 пикселя с поправкой на текущий масштаб редактора "
"(см. [method EditorInterface.get_editor_scale])."

msgid "Returns export platform name."
msgstr "Возвращает имя экспортной платформы."

msgid ""
"Returns the item icon for the specified [param device] in the one-click "
"deploy menu. The icon should be 16×16 pixels, adjusted for the current editor "
"scale (see [method EditorInterface.get_editor_scale])."
msgstr ""
"Возвращает значок элемента для указанного [param device] в меню быстрого "
"развёртывания. Размер значка должен быть 16×16 пикселей с учётом текущего "
"масштаба редактора (см. [method EditorInterface.get_editor_scale])."

msgid ""
"Returns one-click deploy menu item label for the specified [param device]."
msgstr ""
"Возвращает метку элемента меню «Развернуть одним щелчком» для указанного "
"[param device]."

msgid ""
"Returns one-click deploy menu item tooltip for the specified [param device]."
msgstr ""
"Возвращает всплывающую подсказку элемента меню развертывания одним щелчком "
"для указанного [param device]."

msgid ""
"Returns the number of devices (or other options) available in the one-click "
"deploy menu."
msgstr ""
"Возвращает количество устройств (или других параметров), доступных в меню "
"развертывания одним щелчком мыши."

msgid "Returns tooltip of the one-click deploy menu button."
msgstr "Возвращает подсказку кнопки развертывания меню одним щелчком."

msgid "Returns target OS name."
msgstr "Возвращает имя целевой ОС."

msgid "Returns array of platform specific features."
msgstr "Возвращает массив специфичных для платформы функций и возможностей."

msgid ""
"Returns array of platform specific features for the specified [param preset]."
msgstr ""
"Возвращает массив специфичных для платформы функций и возможностей для "
"указанного [param preset]."

msgid ""
"Returns the icon of the one-click deploy menu button. The icon should be "
"16×16 pixels, adjusted for the current editor scale (see [method "
"EditorInterface.get_editor_scale])."
msgstr ""
"Возвращает значок кнопки быстрого развёртывания меню. Размер значка должен "
"быть 16×16 пикселей с учётом текущего масштаба редактора (см. [method "
"EditorInterface.get_editor_scale])."

msgid "Returns [code]true[/code] if export configuration is valid."
msgstr "Возвращает [code]true[/code], если конфигурация экспорта действительна."

msgid "Returns [code]true[/code] if project configuration is valid."
msgstr "Возвращает [code]true[/code], если конфигурация проекта действительна."

msgid ""
"Returns [code]true[/code] if specified file is a valid executable (native "
"executable or script) for the target platform."
msgstr ""
"Возвращает [code]true[/code], если указанный файл является допустимым "
"исполняемым файлом (собственным исполняемым файлом или скриптом) для целевой "
"платформы."

msgid ""
"Returns [code]true[/code] if one-click deploy options are changed and editor "
"interface should be updated."
msgstr ""
"Возвращает [code]true[/code], если параметры развертывания в один клик "
"изменены и интерфейс редактора необходимо обновить."

msgid ""
"This method is called when [param device] one-click deploy menu option is "
"selected.\n"
"Implementation should export project to a temporary location, upload and run "
"it on the specific [param device], or perform another action associated with "
"the menu item."
msgstr ""
"Этот метод вызывается, когда выбрана опция меню развертывания одним щелчком "
"[param device]. \n"
"Реализация должна экспортировать проект во временное местоположение, "
"загрузить и запустить его на определенном [param device] или выполнить другое "
"действие, связанное с элементом меню."

msgid ""
"Returns [code]true[/code] if export options list is changed and presets "
"should be updated."
msgstr ""
"Возвращает [code]true[/code], если список параметров экспорта изменен и "
"предустановки должны быть обновлены."

msgid ""
"Returns current configuration error message text. This method should be "
"called only from the [method _can_export], [method "
"_has_valid_export_configuration], or [method "
"_has_valid_project_configuration] implementations."
msgstr ""
"Возвращает текст сообщения об ошибке текущей конфигурации. Этот метод следует "
"вызывать только из реализаций [method _can_export], [method "
"_has_valid_export_configuration] или [method "
"_has_valid_project_configuration]."

msgid ""
"Returns [code]true[/code] is export templates are missing from the current "
"configuration. This method should be called only from the [method "
"_can_export], [method _has_valid_export_configuration], or [method "
"_has_valid_project_configuration] implementations."
msgstr ""
"Возвращает [code]true[/code], если в текущей конфигурации отсутствуют шаблоны "
"экспорта. Этот метод следует вызывать только из реализаций [method "
"_can_export], [method _has_valid_export_configuration] или [method "
"_has_valid_project_configuration]."

msgid ""
"Sets current configuration error message text. This method should be called "
"only from the [method _can_export], [method _has_valid_export_configuration], "
"or [method _has_valid_project_configuration] implementations."
msgstr ""
"Устанавливает текст сообщения об ошибке текущей конфигурации. Этот метод "
"следует вызывать только из реализаций [method _can_export], [method "
"_has_valid_export_configuration] или [method "
"_has_valid_project_configuration]."

msgid ""
"Set to [code]true[/code] is export templates are missing from the current "
"configuration. This method should be called only from the [method "
"_can_export], [method _has_valid_export_configuration], or [method "
"_has_valid_project_configuration] implementations."
msgstr ""
"Установите [code]true[/code], если в текущей конфигурации отсутствуют шаблоны "
"экспорта. Этот метод следует вызывать только из реализаций [method "
"_can_export], [method _has_valid_export_configuration] или [method "
"_has_valid_project_configuration]."

msgid "Exporter for iOS."
msgstr "Экспортер для iOS."

msgid ""
"Additional data added to the root [code]<dict>[/code] section of the "
"[url=https://developer.apple.com/documentation/bundleresources/"
"information_property_list]Info.plist[/url] file. The value should be an XML "
"section with pairs of key-value elements, e.g.:\n"
"[codeblock lang=text]\n"
"<key>key_name</key>\n"
"<string>value</string>\n"
"[/codeblock]"
msgstr ""
"Дополнительные данные, добавленные в корневой раздел [code]<dict>[/code] "
"файла [url=https://developer.apple.com/documentation/bundleresources/"
"information_property_list]Info.plist[/url]. Значение должно быть разделом XML "
"с парами элементов «ключ-значение», например:\n"
"[codeblock lang=text]\n"
"<key>key_name</key>\n"
"<string>value</string>\n"
"[/codeblock]"

msgid ""
"Apple Team ID, unique 10-character string. To locate your Team ID check "
"\"Membership details\" section in your Apple developer account dashboard, or "
"\"Organizational Unit\" of your code signing certificate. See [url=https://"
"developer.apple.com/help/account/manage-your-team/locate-your-team-id]Locate "
"your Team ID[/url]."
msgstr ""
"Apple Team ID, уникальная строка из 10 символов. Чтобы найти свой Team ID, "
"проверьте раздел «Сведения о членстве» на панели управления учетной записью "
"разработчика Apple или «Организационное подразделение» вашего сертификата "
"подписи кода. См. [url=https://developer.apple.com/help/account/manage-your-"
"team/locate-your-team-id]Найдите свой Team ID[/url]."

msgid ""
"Unique application identifier in a reverse-DNS format, can only contain "
"alphanumeric characters ([code]A-Z[/code], [code]a-z[/code], and [code]0-9[/"
"code]), hyphens ([code]-[/code]), and periods ([code].[/code])."
msgstr ""
"Уникальный идентификатор приложения в формате обратного DNS может содержать "
"только буквенно-цифровые символы ([code]A-Z[/code], [code]a-z[/code] и "
"[code]0-9[/code]), дефисы ([code]-[/code]) и точки ([code].[/code])."

msgid ""
"The \"Full Name\", \"Common Name\", or SHA-1 hash of the signing identity "
"used for debug export."
msgstr ""
"«Полное имя», «Общее имя» или хэш SHA-1 подписи удостоверения, используемого "
"для отладочного экспорта."

msgid ""
"The \"Full Name\", \"Common Name\", or SHA-1 hash of the signing identity "
"used for release export."
msgstr ""
"«Полное имя», «Общее имя» или хэш SHA-1 подписи удостоверения, используемого "
"для экспорта релиза."

msgid ""
"If [code]true[/code], existing \"project name\" and \"project "
"name.xcodeproj\" in the export destination directory will be unconditionally "
"deleted during export."
msgstr ""
"Если [code]true[/code], существующие «имя проекта» и «имя проекта.xcodeproj» "
"в каталоге назначения экспорта будут безусловно удалены во время экспорта."

msgid "Application distribution target (debug export)."
msgstr "Цель распространения приложения (экспорт отладки)."

msgid "Application distribution target (release export)."
msgstr "Цель распространения приложения (экспорт релиза)."

msgid ""
"If [code]true[/code], exports iOS project files without building an XCArchive "
"or [code].ipa[/code] file. If [code]false[/code], exports iOS project files "
"and builds an XCArchive and [code].ipa[/code] file at the same time. When "
"combining Godot with Fastlane or other build pipelines, you may want to set "
"this to [code]true[/code]."
msgstr ""
"Если [code]true[/code], экспортирует файлы проекта iOS без создания файла "
"XCArchive или [code].ipa[/code]. Если [code]false[/code], экспортирует файлы "
"проекта iOS и одновременно создает файл XCArchive и [code].ipa[/code]. При "
"объединении Godot с Fastlane или другими конвейерами сборки вы можете "
"установить это значение в [code]true[/code]."

msgid "Interpolation method used to resize application icon."
msgstr ""
"Метод интерполяции, используемый для изменения размера значка приложения."

msgid ""
"Minimum version of iOS required for this application to run in the "
"[code]major.minor.patch[/code] or [code]major.minor[/code] format, can only "
"contain numeric characters ([code]0-9[/code]) and periods ([code].[/code])."
msgstr ""
"Минимальная версия iOS, необходимая для запуска этого приложения в формате "
"[code]major.minor.patch[/code] или [code]major.minor[/code], может содержать "
"только числовые символы ([code]0-9[/code]) и точки ([code].[/code])."

msgid ""
"Name of the provisioning profile. Sets Xcode PROVISIONING_PROFILE_SPECIFIER "
"for debug. [url=https://developer.apple.com/documentation/xcode/build-"
"settings-reference#Provisioning-Profile]Used for manual provisioning[/url].\n"
"Can be overridden with the environment variable "
"[code]GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_DEBUG[/code]."
msgstr ""
"Имя профиля подготовки. Устанавливает Xcode PROVISIONING_PROFILE_SPECIFIER "
"для отладки. [url=https://developer.apple.com/documentation/xcode/build-"
"settings-reference#Provisioning-Profile]Используется для ручной подготовки[/"
"url].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_DEBUG[/code]."

msgid ""
"Name of the provisioning profile. Sets Xcode PROVISIONING_PROFILE_SPECIFIER "
"for release. [url=https://developer.apple.com/documentation/xcode/build-"
"settings-reference#Provisioning-Profile]Used for manual provisioning[/url].\n"
"Can be overridden with the environment variable "
"[code]GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_RELEASE[/code]."
msgstr ""
"Имя профиля подготовки. Устанавливает Xcode PROVISIONING_PROFILE_SPECIFIER "
"для выпуска. [url=https://developer.apple.com/documentation/xcode/build-"
"settings-reference#Provisioning-Profile]Используется для ручной подготовки[/"
"url].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_RELEASE[/code]."

msgid ""
"UUID of the provisioning profile. If left empty, Xcode will download or "
"create a provisioning profile automatically. See [url=https://"
"developer.apple.com/help/account/manage-profiles/edit-download-or-delete-"
"profiles]Edit, download, or delete provisioning profiles[/url].\n"
"Can be overridden with the environment variable "
"[code]GODOT_APPLE_PLATFORM_PROVISIONING_PROFILE_UUID_DEBUG[/code]."
msgstr ""
"UUID профиля обеспечения. Если оставить пустым, Xcode автоматически загрузит "
"или создаст профиль обеспечения. См. [url=https://developer.apple.com/help/"
"account/manage-profiles/edit-download-or-delete-profiles]Редактирование, "
"загрузка или удаление профилей обеспечения[/url].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_APPLE_PLATFORM_PROVISIONING_PROFILE_UUID_DEBUG[/code]."

msgid ""
"UUID of the provisioning profile. If left empty, Xcode will download or "
"create a provisioning profile automatically. See [url=https://"
"developer.apple.com/help/account/manage-profiles/edit-download-or-delete-"
"profiles]Edit, download, or delete provisioning profiles[/url].\n"
"Can be overridden with the environment variable "
"[code]GODOT_APPLE_PLATFORM_PROVISIONING_PROFILE_UUID_RELEASE[/code]."
msgstr ""
"UUID профиля обеспечения. Если оставить пустым, Xcode автоматически загрузит "
"или создаст профиль обеспечения. См. [url=https://developer.apple.com/help/"
"account/manage-profiles/edit-download-or-delete-profiles]Редактирование, "
"загрузка или удаление профилей обеспечения[/url].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_APPLE_PLATFORM_PROVISIONING_PROFILE_UUID_RELEASE[/code]."

msgid ""
"Application version visible to the user. Can only contain numeric characters "
"([code]0-9[/code]) and periods ([code].[/code]). Falls back to [member "
"ProjectSettings.application/config/version] if left empty.\n"
"[b]Note:[/b] This value is used for the [i]Identity > Version[/i] value in "
"the generated Xcode project."
msgstr ""
"Версия приложения видна пользователю. Может содержать только цифры "
"([code]0-9[/code]) и точки ([code].[/code]). Если оставить пустым, "
"возвращается к [member ProjectSettings.application/config/version].\n"
"[b]Примечание:[/b] Это значение используется для параметра [i]Identity > "
"Version[/i] в сгенерированном проекте Xcode."

msgid "A four-character creator code that is specific to the bundle. Optional."
msgstr ""
"Четырехзначный код создателя, относящийся к конкретному пакету. Необязательно."

msgid "Supported device family."
msgstr "Поддерживаемое семейство устройств."

msgid ""
"Machine-readable application version in the [code]major.minor.patch[/code] "
"format. Can only contain numeric characters ([code]0-9[/code]) and periods "
"([code].[/code]). This must be incremented with every new release pushed to "
"the App Store. Falls back to [member ProjectSettings.application/config/"
"version] if left empty.\n"
"[b]Note:[/b] This value is used for the [i]Identity > Build[/i] value in the "
"generated Xcode project."
msgstr ""
"Машиночитаемая версия приложения в формате [code]major.minor.patch[/code]. "
"Может содержать только цифры ([code]0-9[/code]) и точки ([code].[/code]). "
"Необходимо увеличивать версию с каждой новой версией, публикуемой в App "
"Store. Если оставить её пустой, возвращается к [member "
"ProjectSettings.application/config/version].\n"
"[b]Примечание:[/b] Это значение используется для параметра [i]Identity > "
"Build[/i] в сгенерированном проекте Xcode."

msgid ""
"If [code]true[/code], networking features related to Wi-Fi access are "
"enabled. See [url=https://developer.apple.com/support/required-device-"
"capabilities/]Required Device Capabilities[/url]."
msgstr ""
"Если [code]true[/code], сетевые функции, связанные с доступом Wi-Fi, "
"включены. См. [url=https://developer.apple.com/support/required-device-"
"capabilities/]Требуемые возможности устройства[/url]."

msgid ""
"Additional data added to the [code]UIRequiredDeviceCapabilities[/code] array "
"of the [code]Info.plist[/code] file."
msgstr ""
"Дополнительные данные добавлены в массив [code]UIRequiredDeviceCapabilities[/"
"code] файла [code]Info.plist[/code]."

msgid ""
"Requires the graphics performance and features of the A12 Bionic and later "
"chips (devices supporting all Vulkan renderer features).\n"
"Enabling this option limits supported devices to: iPhone XS, iPhone XR, iPad "
"Mini (5th gen.), iPad Air (3rd gen.), iPad (8th gen), and newer."
msgstr ""
"Требует графической производительности и функций чипов A12 Bionic и более "
"поздних версий (устройств, поддерживающих все функции рендерера Vulkan).\n"
"Включение этой опции ограничивает поддерживаемые устройства: iPhone XS, "
"iPhone XR, iPad Mini (5-го поколения), iPad Air (3-го поколения), iPad (8-го "
"поколения) и новее."

msgid ""
"Requires the graphics performance and features of the A17 Pro and later "
"chips.\n"
"Enabling this option limits supported devices to: iPhone 15 Pro and newer."
msgstr ""
"Требует графической производительности и функций чипов A17 Pro и более "
"поздних версий. \n"
"Включение этой опции ограничивает поддерживаемые устройства: iPhone 15 Pro и "
"новее."

msgid ""
"Path to the custom export template. If left empty, default template is used."
msgstr ""
"Путь к пользовательскому шаблону экспорта. Если оставить пустым, будет "
"использоваться шаблон по умолчанию."

msgid ""
"Additional data added to the root [code]<dict>[/code] section of the "
"[url=https://developer.apple.com/documentation/bundleresources/"
"entitlements].entitlements[/url] file. The value should be an XML section "
"with pairs of key-value elements, for example:\n"
"[codeblock lang=text]\n"
"<key>key_name</key>\n"
"<string>value</string>\n"
"[/codeblock]"
msgstr ""
"Дополнительные данные, добавленные в корневой раздел [code]<dict>[/code] "
"файла [url=https://developer.apple.com/documentation/bundleresources/"
"entitlements].entitlements[/url]. Значение должно быть разделом XML с парами "
"элементов ключ-значение, например:\n"
"[codeblock lang=text]\n"
"<key>key_name</key>\n"
"<string>value</string>\n"
"[/codeblock]"

msgid ""
"If [code]true[/code], allows access to Game Center features. See [url=https://"
"developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_developer_game-center]com.apple.developer.game-center[/url]."
msgstr ""
"Если [code]true[/code], разрешает доступ к функциям Game Center. См. "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_developer_game-center]com.apple.developer.game-center[/url]."

msgid ""
"If [code]true[/code], hints that the app might perform better with a higher "
"memory limit. See [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/com_apple_developer_kernel_increased-memory-"
"limit]com.apple.developer.kernel.increased-memory-limit[/url]."
msgstr ""
"Если [code]true[/code], это намекает, что приложение может работать лучше с "
"более высоким лимитом памяти. См. [url=https://developer.apple.com/"
"documentation/bundleresources/entitlements/"
"com_apple_developer_kernel_increased-memory-"
"limit]com.apple.developer.kernel.increased-memory-limit[/url]."

msgid ""
"Environment for Apple Push Notification service. See [url=https://"
"developer.apple.com/documentation/bundleresources/entitlements/aps-"
"environment]aps-environment[/url]."
msgstr ""
"Среда для службы Apple Push Notification. См. [url=https://"
"developer.apple.com/documentation/bundleresources/entitlements/aps-"
"environment]aps-environment[/url]."

msgid ""
"App Store application icon file. If left empty, it will fallback to [member "
"ProjectSettings.application/config/icon]. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения App Store. Если оставить пустым, он будет возвращаться "
"к [member ProjectSettings.application/config/icon]. См. [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]Значки приложений[/url]."

msgid ""
"App Store application icon file, dark version. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения App Store, темная версия. См. [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]Значки приложений[/url]."

msgid ""
"App Store application icon file, tinted version. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения App Store, тонированная версия. См. [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]Значки приложений[/url]."

msgid ""
"Base application icon used to generate other icons. If left empty, it will "
"fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Базовый значок приложения, используемый для генерации других значков. Если "
"оставить пустым, он будет возвращаться к [member ProjectSettings.application/"
"config/icon]. См. [url=https://developer.apple.com/design/human-interface-"
"guidelines/foundations/app-icons]Значки приложений[/url]."

msgid ""
"Base application icon used to generate other icons, dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Базовая иконка приложения, используемая для генерации других иконок, темная "
"версия. См. [url=https://developer.apple.com/design/human-interface-"
"guidelines/foundations/app-icons]Иконки приложений[/url]."

msgid ""
"Base application icon used to generate other icons, tinted version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Базовый значок приложения, используемый для генерации других значков, "
"тонированная версия. См. [url=https://developer.apple.com/design/human-"
"interface-guidelines/foundations/app-icons]Значки приложений[/url]."

msgid ""
"iOS application 64x64 icon file (2x DPI). If left empty, it will fallback to "
"[member ProjectSettings.application/config/icon]. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения iOS 64x64 (2x DPI). Если оставить пустым, будет "
"использоваться [member ProjectSettings.application/config/icon]. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"iOS application 64x64 icon file (2x DPI), dark version. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения iOS 64x64 (2x DPI), темная версия. См. [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]Значки приложений[/url]."

msgid ""
"iOS application 64x64 icon file (2x DPI), tinted version. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения iOS 64x64 (2x DPI), тонированная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"iOS application 68x68 icon file (2x DPI). If left empty, it will fallback to "
"[member ProjectSettings.application/config/icon]. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения iOS 68x68 (2x DPI). Если оставить пустым, будет "
"использоваться [member ProjectSettings.application/config/icon]. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"iOS application 68x68 icon file (2x DPI), dark version. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл иконки приложения iOS 68x68 (2x DPI), темная версия. См. [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]Значки приложений[/url]."

msgid ""
"iOS application 68x68 icon file (2x DPI), tinted version. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения iOS 68x68 (2x DPI), тонированная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"iOS application 64x64 icon file (3x DPI). If left empty, it will fallback to "
"[member ProjectSettings.application/config/icon]. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения iOS 64x64 (3x DPI). Если оставить пустым, будет "
"использоваться [member ProjectSettings.application/config/icon]. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"iOS application 64x64 icon file (3x DPI), dark version. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения iOS 64x64 (3x DPI), темная версия. См. [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]Значки приложений[/url]."

msgid ""
"iOS application 64x64 icon file (3x DPI), tinted version. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка приложения iOS 64x64 (3x DPI), тонированная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPad (2x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения домашнего экрана на iPad (2x DPI). Если оставить "
"пустым, то будет использоваться [member ProjectSettings.application/config/"
"icon]. См. [url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPad (2x DPI), dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения домашнего экрана на iPad (2x DPI), темная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPad (2x DPI), tinted version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения домашнего экрана на iPad (2x DPI), тонированная "
"версия. См. [url=https://developer.apple.com/design/human-interface-"
"guidelines/foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPad (3x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения домашнего экрана на iPad (3x DPI). Если оставить "
"пустым, то будет использоваться [member ProjectSettings.application/config/"
"icon]. См. [url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPad (3x DPI), dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения домашнего экрана на iPad (3x DPI), темная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPad (3x DPI), tinted version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения домашнего экрана на iPad (3x DPI), тонированная "
"версия. См. [url=https://developer.apple.com/design/human-interface-"
"guidelines/foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPhone (2x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения на главном экране iPhone (2x DPI). Если оставить его "
"пустым, он будет возвращен к [member ProjectSettings.application/config/"
"icon]. См. [url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPhone (2x DPI), dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения домашнего экрана на iPhone (2x DPI), темная версия. "
"См. [url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPhone (2x DPI), tinted version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения на главном экране iPhone (2x DPI), тонированная "
"версия. См. [url=https://developer.apple.com/design/human-interface-"
"guidelines/foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPhone (3x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения на главном экране iPhone (3x DPI). Если оставить его "
"пустым, он будет возвращен к [member ProjectSettings.application/config/"
"icon]. См. [url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPhone (3x DPI), dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения домашнего экрана на iPhone (3x DPI), темная версия. "
"См. [url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Home screen application icon file on iPhone (3x DPI), tinted version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка приложения на главном экране iPhone (3x DPI), тонированная "
"версия. См. [url=https://developer.apple.com/design/human-interface-"
"guidelines/foundations/app-icons]Значки приложений[/url]."

msgid ""
"Notification icon file on iPad and iPhone (2x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка уведомления на iPad и iPhone (2x DPI). Если оставить пустым, он "
"будет возвращен к [member ProjectSettings.application/config/icon]. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Notification icon file on iPad and iPhone (2x DPI), dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка уведомления на iPad и iPhone (2x DPI), темная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Notification icon file on iPad and iPhone (2x DPI), tinted version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка уведомления на iPad и iPhone (2x DPI), тонированная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Notification icon file on iPhone (3x DPI). If left empty, it will fallback to "
"[member ProjectSettings.application/config/icon]. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка уведомления на iPhone (3x DPI). Если оставить пустым, он будет "
"возвращаться к [member ProjectSettings.application/config/icon]. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Notification icon file on iPhone (3x DPI), dark version. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка уведомления на iPhone (3x DPI), темная версия. См. [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]Значки приложений[/url]."

msgid ""
"Notification icon file on iPhone (3x DPI), tinted version. See [url=https://"
"developer.apple.com/design/human-interface-guidelines/foundations/app-"
"icons]App icons[/url]."
msgstr ""
"Файл значка уведомления на iPhone (3x DPI), тонированная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Notification icon file on iPad and iPhone (3x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка уведомления на iPad и iPhone (3x DPI). Если оставить пустым, он "
"будет возвращен к [member ProjectSettings.application/config/icon]. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Notification icon file on iPad and iPhone (3x DPI), dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка уведомления на iPad и iPhone (3x DPI), темная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Notification icon file on iPad and iPhone (3x DPI), tinted version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка уведомления на iPad и iPhone (3x DPI), тонированная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Application settings icon file on iPad and iPhone (2x DPI). If left empty, it "
"will fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка настроек приложения на iPad и iPhone (2x DPI). Если оставить "
"пустым, то будет использоваться [member ProjectSettings.application/config/"
"icon]. См. [url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Application settings icon file on iPad and iPhone (2x DPI), dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка настроек приложения на iPad и iPhone (2x DPI), темная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Application settings icon file on iPad and iPhone (2x DPI), tinted version. "
"See [url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка настроек приложения на iPad и iPhone (2x DPI), тонированная "
"версия. См. [url=https://developer.apple.com/design/human-interface-"
"guidelines/foundations/app-icons]Значки приложений[/url]."

msgid ""
"Application settings icon file on iPhone (3x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка настроек приложения на iPhone (3x DPI). Если оставить его пустым, "
"он будет возвращен к [member ProjectSettings.application/config/icon]. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Application settings icon file on iPhone (3x DPI), dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка настроек приложения на iPhone (3x DPI), темная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Application settings icon file on iPhone (3x DPI), tinted version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка настроек приложения на iPhone (3x DPI), тонированная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Spotlight icon file on iPad and iPhone (2x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка Spotlight на iPad и iPhone (2x DPI). Если оставить пустым, то "
"будет использоваться [member ProjectSettings.application/config/icon]. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Spotlight icon file on iPad and iPhone (2x DPI), dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка Spotlight на iPad и iPhone (2x DPI), темная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Spotlight icon file on iPad and iPhone (2x DPI), tinted version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка Spotlight на iPad и iPhone (2x DPI), тонированная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Spotlight icon file on iPad and iPhone (3x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/config/icon]. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка Spotlight на iPad и iPhone (3x DPI). Если оставить пустым, то "
"будет использоваться [member ProjectSettings.application/config/icon]. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Spotlight icon file on iPad and iPhone (3x DPI), dark version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка Spotlight на iPad и iPhone (3x DPI), темная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"Spotlight icon file on iPad and iPhone (3x DPI), tinted version. See "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]App icons[/url]."
msgstr ""
"Файл значка Spotlight на iPad и iPhone (3x DPI), тонированная версия. См. "
"[url=https://developer.apple.com/design/human-interface-guidelines/"
"foundations/app-icons]Значки приложений[/url]."

msgid ""
"The reasons your app use active keyboard API. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_use_of_required_reason_api]Describing use of required reason API[/"
"url]."
msgstr ""
"Причины, по которым ваше приложение использует API активной клавиатуры. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_use_of_required_reason_api]Описание "
"использования API требуемой причины[/url]."

msgid ""
"A message displayed when requesting access to the device's camera (in "
"English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к камере устройства (на "
"английском языке)."

msgid ""
"A message displayed when requesting access to the device's camera (localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к камере устройства "
"(локализовано)."

msgid "Indicates whether your app collects advertising data."
msgstr "Указывает, собирает ли ваше приложение рекламные данные."

msgid ""
"The reasons your app collects advertising data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает рекламные данные. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links advertising data to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение рекламные данные с личностью "
"пользователя."

msgid "Indicates whether your app uses advertising data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение рекламные данные для отслеживания."

msgid "Indicates whether your app collects audio data."
msgstr "Указывает, собирает ли ваше приложение аудиоданные."

msgid ""
"The reasons your app collects audio data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает аудиоданные. См. [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid "Indicates whether your app links audio data to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение аудиоданные с личностью пользователя."

msgid "Indicates whether your app uses audio data for tracking."
msgstr "Указывает, использует ли ваше приложение аудиоданные для отслеживания."

msgid "Indicates whether your app collects browsing history."
msgstr "Указывает, собирает ли ваше приложение историю просмотров."

msgid ""
"The reasons your app collects browsing history. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает историю просмотров. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links browsing history to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение историю просмотров с личностью "
"пользователя."

msgid "Indicates whether your app uses browsing history for tracking."
msgstr ""
"Указывает, использует ли ваше приложение историю просмотров для отслеживания."

msgid "Indicates whether your app collects coarse location data."
msgstr ""
"Указывает, собирает ли ваше приложение приблизительные данные о "
"местоположении."

msgid ""
"The reasons your app collects coarse location data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает грубые данные о местоположении. "
"См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links coarse location data to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение общие данные о местоположении с "
"личностью пользователя."

msgid "Indicates whether your app uses coarse location data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение грубые данные о местоположении для "
"отслеживания."

msgid "Indicates whether your app collects contacts."
msgstr "Указывает, собирает ли ваше приложение контакты."

msgid ""
"The reasons your app collects contacts. See [url=https://developer.apple.com/"
"documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает контакты. См. [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid "Indicates whether your app links contacts to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение контакты с личностью пользователя."

msgid "Indicates whether your app uses contacts for tracking."
msgstr "Указывает, использует ли ваше приложение контакты для отслеживания."

msgid "Indicates whether your app collects crash data."
msgstr "Указывает, собирает ли ваше приложение данные о сбоях."

msgid ""
"The reasons your app collects crash data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает данные о сбоях. См. [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid "Indicates whether your app links crash data to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение данные о сбоях с личностью "
"пользователя."

msgid "Indicates whether your app uses crash data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение данные о сбоях для отслеживания."

msgid "Indicates whether your app collects credit information."
msgstr "Указывает, собирает ли ваше приложение кредитную информацию."

msgid ""
"The reasons your app collects credit information. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает кредитную информацию. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links credit information to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение кредитную информацию с личностью "
"пользователя."

msgid "Indicates whether your app uses credit information for tracking."
msgstr ""
"Указывает, использует ли ваше приложение кредитную информацию для "
"отслеживания."

msgid "Indicates whether your app collects customer support data."
msgstr "Указывает, собирает ли ваше приложение данные о поддержке клиентов."

msgid ""
"The reasons your app collects customer support data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает данные поддержки клиентов. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links customer support data to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение данные службы поддержки клиентов с "
"личностью пользователя."

msgid "Indicates whether your app uses customer support data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение данные службы поддержки клиентов для "
"отслеживания."

msgid "Indicates whether your app collects device IDs."
msgstr "Указывает, собирает ли ваше приложение идентификаторы устройств."

msgid ""
"The reasons your app collects device IDs. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает идентификаторы устройств. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid "Indicates whether your app links device IDs to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение идентификаторы устройств с личностью "
"пользователя."

msgid "Indicates whether your app uses device IDs for tracking."
msgstr ""
"Указывает, использует ли ваше приложение идентификаторы устройств для "
"отслеживания."

msgid "Indicates whether your app collects email address."
msgstr "Указывает, собирает ли ваше приложение адреса электронной почты."

msgid ""
"The reasons your app collects email address. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает адрес электронной почты. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid "Indicates whether your app links email address to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение адрес электронной почты с личностью "
"пользователя."

msgid "Indicates whether your app uses email address for tracking."
msgstr ""
"Указывает, использует ли ваше приложение адрес электронной почты для "
"отслеживания."

msgid "Indicates whether your app collects emails or text messages."
msgstr ""
"Указывает, собирает ли ваше приложение электронные письма или текстовые "
"сообщения."

msgid ""
"The reasons your app collects emails or text messages. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает электронные письма или текстовые "
"сообщения. См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links emails or text messages to the user's "
"identity."
msgstr ""
"Указывает, связывает ли ваше приложение электронные письма или текстовые "
"сообщения с личностью пользователя."

msgid "Indicates whether your app uses emails or text messages for tracking."
msgstr ""
"Указывает, использует ли ваше приложение для отслеживания электронные письма "
"или текстовые сообщения."

msgid "Indicates whether your app collects environment scanning data."
msgstr "Указывает, собирает ли ваше приложение данные сканирования среды."

msgid ""
"The reasons your app collects environment scanning data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает данные сканирования среды. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links environment scanning data to the user's "
"identity."
msgstr ""
"Указывает, связывает ли ваше приложение данные сканирования среды с личностью "
"пользователя."

msgid "Indicates whether your app uses environment scanning data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение данные сканирования среды для "
"отслеживания."

msgid "Indicates whether your app collects fitness and exercise data."
msgstr "Указывает, собирает ли ваше приложение данные о фитнесе и упражнениях."

msgid ""
"The reasons your app collects fitness and exercise data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает данные о фитнесе и упражнениях. "
"См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links fitness and exercise data to the user's "
"identity."
msgstr ""
"Указывает, связывает ли ваше приложение данные о фитнесе и упражнениях с "
"личностью пользователя."

msgid "Indicates whether your app uses fitness and exercise data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение данные о фитнесе и упражнениях для "
"отслеживания."

msgid "Indicates whether your app collects gameplay content."
msgstr "Указывает, собирает ли ваше приложение игровой контент."

msgid ""
"The reasons your app collects gameplay content. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает игровой контент. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links gameplay content to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение игровой контент с личностью "
"пользователя."

msgid "Indicates whether your app uses gameplay content for tracking."
msgstr ""
"Указывает, использует ли ваше приложение игровой контент для отслеживания."

msgid ""
"Indicates whether your app collects user's hand structure and hand movements."
msgstr ""
"Указывает, собирает ли ваше приложение данные о строении и движениях рук "
"пользователя."

msgid ""
"The reasons your app collects user's hand structure and hand movements. See "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Describing "
"data use in privacy manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает структуру и движения рук "
"пользователя. См. [url=https://developer.apple.com/documentation/"
"bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links user's hand structure and hand movements to "
"the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение строение руки и движения руки "
"пользователя с его личностью."

msgid ""
"Indicates whether your app uses user's hand structure and hand movements for "
"tracking."
msgstr ""
"Указывает, использует ли ваше приложение строение руки пользователя и его "
"движения для отслеживания."

msgid "Indicates whether your app collects user's head movement."
msgstr ""
"Указывает, регистрирует ли ваше приложение движения головы пользователя."

msgid ""
"The reasons your app collects user's head movement. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает движения головы пользователя. "
"См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links user's head movement to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение движение головы пользователя с его "
"личностью."

msgid "Indicates whether your app uses user's head movement for tracking."
msgstr ""
"Указывает, использует ли ваше приложение движение головы пользователя для "
"отслеживания."

msgid "Indicates whether your app collects health and medical data."
msgstr ""
"Указывает, собирает ли ваше приложение данные о состоянии здоровья и "
"медицинские данные."

msgid ""
"The reasons your app collects health and medical data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает данные о здоровье и медицине. "
"См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links health and medical data to the user's "
"identity."
msgstr ""
"Указывает, связывает ли ваше приложение данные о состоянии здоровья и "
"медицинские данные с личностью пользователя."

msgid "Indicates whether your app uses health and medical data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение данные о состоянии здоровья и "
"медицинские данные для отслеживания."

msgid "Indicates whether your app collects user's name."
msgstr "Указывает, собирает ли ваше приложение имя пользователя."

msgid ""
"The reasons your app collects user's name. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает имя пользователя. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid "Indicates whether your app links user's name to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение имя пользователя с его личностью."

msgid "Indicates whether your app uses user's name for tracking."
msgstr ""
"Указывает, использует ли ваше приложение имя пользователя для отслеживания."

msgid "Indicates whether your app collects any other contact information."
msgstr ""
"Указывает, собирает ли ваше приложение какую-либо другую контактную "
"информацию."

msgid ""
"The reasons your app collects any other contact information. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает любую другую контактную "
"информацию. См. [url=https://developer.apple.com/documentation/"
"bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links any other contact information to the user's "
"identity."
msgstr ""
"Указывает, связывает ли ваше приложение какую-либо другую контактную "
"информацию с личностью пользователя."

msgid ""
"Indicates whether your app uses any other contact information for tracking."
msgstr ""
"Указывает, использует ли ваше приложение какую-либо другую контактную "
"информацию для отслеживания."

msgid "Indicates whether your app collects any other data."
msgstr "Указывает, собирает ли ваше приложение какие-либо другие данные."

msgid ""
"The reasons your app collects any other data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает любые другие данные. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid "Indicates whether your app links any other data to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение какие-либо другие данные с личностью "
"пользователя."

msgid "Indicates whether your app uses any other data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение какие-либо другие данные для "
"отслеживания."

msgid "Indicates whether your app collects any other diagnostic data."
msgstr ""
"Указывает, собирает ли ваше приложение какие-либо другие диагностические "
"данные."

msgid ""
"The reasons your app collects any other diagnostic data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает любые другие диагностические "
"данные. См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links any other diagnostic data to the user's "
"identity."
msgstr ""
"Указывает, связывает ли ваше приложение какие-либо другие диагностические "
"данные с личностью пользователя."

msgid "Indicates whether your app uses any other diagnostic data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение какие-либо другие диагностические "
"данные для отслеживания."

msgid "Indicates whether your app collects any other financial information."
msgstr ""
"Указывает, собирает ли ваше приложение какую-либо другую финансовую "
"информацию."

msgid ""
"The reasons your app collects any other financial information. See "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Describing "
"data use in privacy manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает любую другую финансовую "
"информацию. См. [url=https://developer.apple.com/documentation/"
"bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links any other financial information to the "
"user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение какую-либо другую финансовую "
"информацию с личностью пользователя."

msgid ""
"Indicates whether your app uses any other financial information for tracking."
msgstr ""
"Указывает, использует ли ваше приложение какую-либо другую финансовую "
"информацию для отслеживания."

msgid "Indicates whether your app collects any other usage data."
msgstr ""
"Указывает, собирает ли ваше приложение какие-либо другие данные об "
"использовании."

msgid ""
"The reasons your app collects any other usage data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает любые другие данные об "
"использовании. См. [url=https://developer.apple.com/documentation/"
"bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links any other usage data to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение какие-либо другие данные об "
"использовании с личностью пользователя."

msgid "Indicates whether your app uses any other usage data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение какие-либо другие данные об "
"использовании для отслеживания."

msgid "Indicates whether your app collects any other user generated content."
msgstr ""
"Указывает, собирает ли ваше приложение какой-либо другой пользовательский "
"контент."

msgid ""
"The reasons your app collects any other user generated content. See "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Describing "
"data use in privacy manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает любой другой контент, созданный "
"пользователем. См. [url=https://developer.apple.com/documentation/"
"bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links any other user generated content to the "
"user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение какой-либо другой пользовательский "
"контент с личностью пользователя."

msgid ""
"Indicates whether your app uses any other user generated content for tracking."
msgstr ""
"Указывает, использует ли ваше приложение какой-либо другой пользовательский "
"контент для отслеживания."

msgid "Indicates whether your app collects payment information."
msgstr "Указывает, собирает ли ваше приложение платежную информацию."

msgid ""
"The reasons your app collects payment information. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает платежную информацию. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links payment information to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение платежную информацию с личностью "
"пользователя."

msgid "Indicates whether your app uses payment information for tracking."
msgstr ""
"Указывает, использует ли ваше приложение платежную информацию для "
"отслеживания."

msgid "Indicates whether your app collects performance data."
msgstr "Указывает, собирает ли ваше приложение данные о производительности."

msgid ""
"The reasons your app collects performance data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает данные о производительности. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links performance data to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение данные о производительности с "
"личностью пользователя."

msgid "Indicates whether your app uses performance data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение данные о производительности для "
"отслеживания."

msgid "Indicates whether your app collects phone number."
msgstr "Указывает, собирает ли ваше приложение номер телефона."

msgid ""
"The reasons your app collects phone number. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает номер телефона. См. [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid "Indicates whether your app links phone number to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение номер телефона с личностью "
"пользователя."

msgid "Indicates whether your app uses phone number for tracking."
msgstr ""
"Указывает, использует ли ваше приложение номер телефона для отслеживания."

msgid "Indicates whether your app collects photos or videos."
msgstr "Указывает, собирает ли ваше приложение фотографии или видео."

msgid ""
"The reasons your app collects photos or videos. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает фотографии или видео. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links photos or videos to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение фотографии или видео с личностью "
"пользователя."

msgid "Indicates whether your app uses photos or videos for tracking."
msgstr ""
"Указывает, использует ли ваше приложение фотографии или видео для "
"отслеживания."

msgid "Indicates whether your app collects physical address."
msgstr "Указывает, собирает ли ваше приложение физический адрес."

msgid ""
"The reasons your app collects physical address. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает физический адрес. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links physical address to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение физический адрес с личностью "
"пользователя."

msgid "Indicates whether your app uses physical address for tracking."
msgstr ""
"Указывает, использует ли ваше приложение физический адрес для отслеживания."

msgid "Indicates whether your app collects precise location data."
msgstr "Указывает, собирает ли ваше приложение точные данные о местоположении."

msgid ""
"The reasons your app collects precise location data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает точные данные о местоположении. "
"См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links precise location data to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение точные данные о местоположении с "
"личностью пользователя."

msgid "Indicates whether your app uses precise location data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение точные данные о местоположении для "
"отслеживания."

msgid "Indicates whether your app collects product interaction data."
msgstr ""
"Указывает, собирает ли ваше приложение данные о взаимодействии с продуктом."

msgid ""
"The reasons your app collects product interaction data. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает данные о взаимодействии с "
"продуктом. См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links product interaction data to the user's "
"identity."
msgstr ""
"Указывает, связывает ли ваше приложение данные о взаимодействии с продуктом с "
"личностью пользователя."

msgid "Indicates whether your app uses product interaction data for tracking."
msgstr ""
"Указывает, использует ли ваше приложение данные о взаимодействии с продуктом "
"для отслеживания."

msgid "Indicates whether your app collects purchase history."
msgstr "Указывает, собирает ли ваше приложение историю покупок."

msgid ""
"The reasons your app collects purchase history. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает историю покупок. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links purchase history to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение историю покупок с личностью "
"пользователя."

msgid "Indicates whether your app uses purchase history for tracking."
msgstr ""
"Указывает, использует ли ваше приложение историю покупок для отслеживания."

msgid "Indicates whether your app collects search history."
msgstr "Указывает, собирает ли ваше приложение историю поиска."

msgid ""
"The reasons your app collects search history. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает историю поиска. См. [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid "Indicates whether your app links search history to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение историю поиска с личностью "
"пользователя."

msgid "Indicates whether your app uses search history for tracking."
msgstr ""
"Указывает, использует ли ваше приложение историю поиска для отслеживания."

msgid "Indicates whether your app collects sensitive user information."
msgstr ""
"Указывает, собирает ли ваше приложение конфиденциальную информацию "
"пользователя."

msgid ""
"The reasons your app collects sensitive user information. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает конфиденциальную информацию "
"пользователя. См. [url=https://developer.apple.com/documentation/"
"bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Описание использования данных в "
"манифестах конфиденциальности[/url]."

msgid ""
"Indicates whether your app links sensitive user information to the user's "
"identity."
msgstr ""
"Указывает, связывает ли ваше приложение конфиденциальную информацию "
"пользователя с его личностью."

msgid "Indicates whether your app uses sensitive user information for tracking."
msgstr ""
"Указывает, использует ли ваше приложение конфиденциальную информацию "
"пользователя для отслеживания."

msgid "Indicates whether your app collects user IDs."
msgstr "Указывает, собирает ли ваше приложение идентификаторы пользователей."

msgid ""
"The reasons your app collects user IDs. See [url=https://developer.apple.com/"
"documentation/bundleresources/privacy_manifest_files/"
"describing_data_use_in_privacy_manifests]Describing data use in privacy "
"manifests[/url]."
msgstr ""
"Причины, по которым ваше приложение собирает идентификаторы пользователей. "
"См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_data_use_in_privacy_manifests]Описание "
"использования данных в манифестах конфиденциальности[/url]."

msgid "Indicates whether your app links user IDs to the user's identity."
msgstr ""
"Указывает, связывает ли ваше приложение идентификаторы пользователей с "
"личностью пользователя."

msgid "Indicates whether your app uses user IDs for tracking."
msgstr ""
"Указывает, использует ли ваше приложение идентификаторы пользователей для "
"отслеживания."

msgid ""
"The reasons your app use free disk space API. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_use_of_required_reason_api]Describing use of required reason API[/"
"url]."
msgstr ""
"Причины, по которым ваше приложение использует API свободного дискового "
"пространства. См. [url=https://developer.apple.com/documentation/"
"bundleresources/privacy_manifest_files/"
"describing_use_of_required_reason_api]Описание использования API требуемой "
"причины[/url]."

msgid ""
"The reasons your app use file timestamp/metadata API. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_use_of_required_reason_api]Describing use of required reason API[/"
"url]."
msgstr ""
"Причины, по которым ваше приложение использует API временной метки/метаданных "
"файла. См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_use_of_required_reason_api]Описание "
"использования API требуемой причины[/url]."

msgid ""
"A message displayed when requesting access to the device's microphone (in "
"English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к микрофону устройства (на "
"английском языке)."

msgid ""
"A message displayed when requesting access to the device's microphone "
"(localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к микрофону устройства "
"(локализовано)."

msgid ""
"A message displayed when requesting access to the user's photo library (in "
"English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к библиотеке фотографий "
"пользователя (на английском языке)."

msgid ""
"A message displayed when requesting access to the user's photo library "
"(localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к библиотеке фотографий "
"пользователя (локализовано)."

msgid ""
"The reasons your app use system boot time / absolute time API. See "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_use_of_required_reason_api]Describing use "
"of required reason API[/url]."
msgstr ""
"Причины, по которым ваше приложение использует API системного времени "
"загрузки/абсолютного времени. См. [url=https://developer.apple.com/"
"documentation/bundleresources/privacy_manifest_files/"
"describing_use_of_required_reason_api]Описание использования API требуемой "
"причины[/url]."

msgid ""
"The list of internet domains your app connects to that engage in tracking. "
"See [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files]Privacy manifest files[/url]."
msgstr ""
"Список интернет-доменов, к которым подключается ваше приложение, которые "
"занимаются отслеживанием. См. [url=https://developer.apple.com/documentation/"
"bundleresources/privacy_manifest_files]Файлы манифеста конфиденциальности[/"
"url]."

msgid ""
"Indicates whether your app uses data for tracking. See [url=https://"
"developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files]Privacy manifest files[/url]."
msgstr ""
"Указывает, использует ли ваше приложение данные для отслеживания. См. "
"[url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files]Файлы манифеста конфиденциальности[/url]."

msgid ""
"The reasons your app use user defaults API. See [url=https://"
"developer.apple.com/documentation/bundleresources/privacy_manifest_files/"
"describing_use_of_required_reason_api]Describing use of required reason API[/"
"url]."
msgstr ""
"Причины, по которым ваше приложение использует API по умолчанию пользователя. "
"См. [url=https://developer.apple.com/documentation/bundleresources/"
"privacy_manifest_files/describing_use_of_required_reason_api]Описание "
"использования API требуемой причины[/url]."

msgid "A custom background color of the storyboard launch screen."
msgstr "Пользовательский цвет фона экрана запуска раскадровки."

msgid ""
"Application launch screen image file (2x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/boot_splash/image]."
msgstr ""
"Файл изображения экрана запуска приложения (2x DPI). Если оставить пустым, то "
"будет использован [member ProjectSettings.application/boot_splash/image]."

msgid ""
"Application launch screen image file (3x DPI). If left empty, it will "
"fallback to [member ProjectSettings.application/boot_splash/image]."
msgstr ""
"Файл изображения экрана запуска приложения (3x DPI). Если оставить пустым, то "
"будет использован [member ProjectSettings.application/boot_splash/image]."

msgid "Launch screen image scaling mode."
msgstr "Запустить режим масштабирования изображения на экране."

msgid ""
"If [code]true[/code], [member storyboard/custom_bg_color] is used as a launch "
"screen background color, otherwise [code]application/boot_splash/bg_color[/"
"code] project setting is used."
msgstr ""
"Если [code]true[/code], [member storyboard/custom_bg_color] используется в "
"качестве цвета фона экрана запуска, в противном случае используется настройка "
"проекта [code]application/boot_splash/bg_color[/code]."

msgid ""
"If [code]true[/code], the app \"Documents\" folder can be accessed via "
"\"Files\" app. See [url=https://developer.apple.com/documentation/"
"bundleresources/information_property_list/"
"lssupportsopeningdocumentsinplace]LSSupportsOpeningDocumentsInPlace[/url]."
msgstr ""
"Если [code]true[/code], папка приложения «Документы» может быть доступна "
"через приложение «Файлы». См. [url=https://developer.apple.com/documentation/"
"bundleresources/information_property_list/"
"lssupportsopeningdocumentsinplace]LSSupportsOpeningDocumentsInPlace[/url]."

msgid ""
"If [code]true[/code], the app \"Documents\" folder can be accessed via iTunes "
"file sharing. See [url=https://developer.apple.com/documentation/"
"bundleresources/information_property_list/"
"uifilesharingenabled]UIFileSharingEnabled[/url]."
msgstr ""
"Если [code]true[/code], папка приложения «Документы» может быть доступна "
"через общий доступ к файлам iTunes. См. [url=https://developer.apple.com/"
"documentation/bundleresources/information_property_list/"
"uifilesharingenabled]UIFileSharingEnabled[/url]."

msgid "Exporter for Linux/BSD."
msgstr "Экспортер для Linux/BSD."

msgid "Exporting for Linux"
msgstr "Экспорт для Linux"

msgid ""
"Application executable architecture.\n"
"Supported architectures: [code]x86_32[/code], [code]x86_64[/code], "
"[code]arm64[/code], [code]arm32[/code], [code]rv64[/code], [code]ppc64[/"
"code], and [code]loongarch64[/code].\n"
"Official export templates include [code]x86_32[/code], [code]x86_64[/code], "
"[code]arm32[/code], and [code]arm64[/code] binaries only."
msgstr ""
"Архитектура исполняемого файла приложения.\n"
"Поддерживаемые архитектуры: [code]x86_32[/code], [code]x86_64[/code], "
"[code]arm64[/code], [code]arm32[/code], [code]rv64[/code], [code]ppc64[/code] "
"и [code]loongarch64[/code].\n"
"Официальные шаблоны экспорта включают только двоичные файлы [code]x86_32[/"
"code], [code]x86_64[/code], [code]arm32[/code] и [code]arm64[/code]."

msgid ""
"If [code]true[/code], project resources are embedded into the executable."
msgstr "Если [code]true[/code], ресурсы проекта внедряются в исполняемый файл."

msgid ""
"If [code]true[/code], a console wrapper is exported alongside the main "
"executable, which allows running the project with enabled console output."
msgstr ""
"Если [code]true[/code], то консольная оболочка экспортируется вместе с "
"основным исполняемым файлом, что позволяет запустить проект с включенным "
"консольным выводом."

msgid ""
"Script code to execute on the remote host when app is finished.\n"
"The following variables can be used in the script:\n"
"- [code]{temp_dir}[/code] - Path of temporary folder on the remote, used to "
"upload app and scripts to.\n"
"- [code]{archive_name}[/code] - Name of the ZIP containing uploaded "
"application.\n"
"- [code]{exe_name}[/code] - Name of application executable.\n"
"- [code]{cmd_args}[/code] - Array of the command line argument for the "
"application."
msgstr ""
"Код скрипта для выполнения на удаленном хосте после завершения работы "
"приложения.\n"
"В скрипте можно использовать следующие переменные:\n"
"- [code]{temp_dir}[/code] - Путь к временной папке на удаленном компьютере, в "
"которую загружаются приложение и скрипты.\n"
"- [code]{archive_name}[/code] - Имя ZIP-архива, содержащего загруженное "
"приложение.\n"
"- [code]{exe_name}[/code] - Имя исполняемого файла приложения.\n"
"- [code]{cmd_args}[/code] - Массив аргументов командной строки для приложения."

msgid "Enables remote deploy using SSH/SCP."
msgstr "Позволяет выполнять удаленное развертывание с использованием SSH/SCP."

msgid "Array of the additional command line arguments passed to the SCP."
msgstr "Массив дополнительных аргументов командной строки, переданных SCP."

msgid "Array of the additional command line arguments passed to the SSH."
msgstr "Массив дополнительных аргументов командной строки, переданных в SSH."

msgid ""
"Remote host SSH user name and address, in [code]user@address[/code] format."
msgstr ""
"Имя пользователя и адрес SSH удаленного хоста в формате [code]user@address[/"
"code]."

msgid "Remote host SSH port number."
msgstr "Номер порта SSH удаленного хоста."

msgid ""
"Script code to execute on the remote host when running the app.\n"
"The following variables can be used in the script:\n"
"- [code]{temp_dir}[/code] - Path of temporary folder on the remote, used to "
"upload app and scripts to.\n"
"- [code]{archive_name}[/code] - Name of the ZIP containing uploaded "
"application.\n"
"- [code]{exe_name}[/code] - Name of application executable.\n"
"- [code]{cmd_args}[/code] - Array of the command line argument for the "
"application."
msgstr ""
"Код скрипта для выполнения на удаленном хосте при запуске приложения.\n"
"В скрипте можно использовать следующие переменные:\n"
"- [code]{temp_dir}[/code] - Путь к временной папке на удаленном компьютере, в "
"которую загружаются приложение и скрипты.\n"
"- [code]{archive_name}[/code] - Имя ZIP-архива, содержащего загруженное "
"приложение.\n"
"- [code]{exe_name}[/code] - Имя исполняемого файла приложения.\n"
"- [code]{cmd_args}[/code] - Массив аргументов командной строки для приложения."

msgid ""
"If [code]true[/code], project textures are exported in the ETC2/ASTC format."
msgstr ""
"Если [code]true[/code], текстуры проекта экспортируются в формате ETC2/ASTC."

msgid ""
"If [code]true[/code], project textures are exported in the S3TC/BPTC format."
msgstr ""
"Если [code]true[/code], текстуры проекта экспортируются в формате S3TC/BPTC."

msgid "Exporter for macOS."
msgstr "Экспортер для macOS."

msgid "Exporting for macOS"
msgstr "Экспорт для macOS"

msgid "Running Godot apps on macOS"
msgstr "Запуск приложений Godot на macOS"

msgid "Application category for the App Store."
msgstr "Категория приложений для App Store."

msgid "Copyright notice for the bundle visible to the user (in English)."
msgstr ""
"Уведомление об авторских правах на комплект, видимое пользователю (на "
"английском языке)."

msgid "Copyright notice for the bundle visible to the user (localized)."
msgstr ""
"Уведомление об авторских правах на комплект, видимое пользователю "
"(локализованное)."

msgid ""
"If set to [code]1[/code], ANGLE libraries are exported with the exported "
"application. If set to [code]0[/code], ANGLE libraries are exported only if "
"[member ProjectSettings.rendering/gl_compatibility/driver] is set to [code]"
"\"opengl3_angle\"[/code]."
msgstr ""
"Если установлено значение [code]1[/code], библиотеки ANGLE экспортируются "
"вместе с экспортированным приложением. Если установлено значение [code]0[/"
"code], библиотеки ANGLE экспортируются только в том случае, если [member "
"ProjectSettings.rendering/gl_compatibility/driver] установлено значение [code]"
"\"opengl3_angle\"[/code]."

msgid ""
"Application icon file. If left empty, it will fallback to [member "
"ProjectSettings.application/config/macos_native_icon], and then to [member "
"ProjectSettings.application/config/icon]."
msgstr ""
"Файл значка приложения. Если оставить пустым, то он будет возвращаться к "
"[member ProjectSettings.application/config/macos_native_icon], а затем к "
"[member ProjectSettings.application/config/icon]."

msgid ""
"Minimum version of macOS required for this application to run on Apple "
"Silicon Macs, in the [code]major.minor.patch[/code] or [code]major.minor[/"
"code] format, can only contain numeric characters ([code]0-9[/code]) and "
"periods ([code].[/code])."
msgstr ""
"Минимальная версия macOS, необходимая для запуска этого приложения на "
"компьютерах Apple Silicon Mac, в формате [code]major.minor.patch[/code] или "
"[code]major.minor[/code] может содержать только числовые символы ([code]0-9[/"
"code]) и точки ([code].[/code])."

msgid ""
"Minimum version of macOS required for this application to run on Intel Macs, "
"in the [code]major.minor.patch[/code] or [code]major.minor[/code] format, can "
"only contain numeric characters ([code]0-9[/code]) and periods ([code].[/"
"code])."
msgstr ""
"Минимальная версия macOS, необходимая для запуска этого приложения на "
"компьютерах Mac с процессором Intel, в формате [code]major.minor.patch[/code] "
"или [code]major.minor[/code] может содержать только числовые символы "
"([code]0-9[/code]) и точки ([code].[/code])."

msgid ""
"Application executable architecture.\n"
"Supported architectures: [code]x86_64[/code], [code]arm64[/code], and "
"[code]universal[/code] ([code]x86_64 + arm64[/code]).\n"
"Official export templates include [code]universal[/code] binaries only."
msgstr ""
"Архитектура исполняемого файла приложения.\n"
"Поддерживаемые архитектуры: [code]x86_64[/code], [code]arm64[/code] и "
"[code]universal[/code] ([code]x86_64 + arm64[/code]).\n"
"Официальные шаблоны экспорта включают только двоичные файлы [code]universal[/"
"code]."

msgid ""
"PKCS #12 certificate file used to sign [code].app[/code] bundle.\n"
"Can be overridden with the environment variable "
"[code]GODOT_MACOS_CODESIGN_CERTIFICATE_FILE[/code]."
msgstr ""
"Файл сертификата PKCS #12, используемый для подписи пакета [code].app[/"
"code].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_MACOS_CODESIGN_CERTIFICATE_FILE[/code]."

msgid ""
"Password for the certificate file used to sign [code].app[/code] bundle.\n"
"Can be overridden with the environment variable "
"[code]GODOT_MACOS_CODESIGN_CERTIFICATE_PASSWORD[/code]."
msgstr ""
"Пароль для файла сертификата, используемого для подписи пакета [code].app[/"
"code].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_MACOS_CODESIGN_CERTIFICATE_PASSWORD[/code]."

msgid "Tool to use for code signing."
msgstr "Инструмент для подписи кода."

msgid ""
"Array of the additional command line arguments passed to the code signing "
"tool."
msgstr ""
"Массив дополнительных аргументов командной строки, переданных инструменту "
"подписи кода."

msgid ""
"Enable to allow access to contacts in the user's address book, if it's "
"enabled you should also provide usage message in the [member privacy/"
"address_book_usage_description] option. See [url=https://developer.apple.com/"
"documentation/bundleresources/entitlements/com_apple_security_personal-"
"information_addressbook]com.apple.security.personal-information.addressbook[/"
"url]."
msgstr ""
"Включите, чтобы разрешить доступ к контактам в адресной книге пользователя, "
"если эта опция включена, вы также должны предоставить сообщение об "
"использовании в параметре [member privacy/address_book_usage_description]. "
"См. [url=https://developer.apple.com/documentation/bundleresources/"
"entitlements/com_apple_security_personal-"
"information_addressbook]com.apple.security.personal-information.addressbook[/"
"url]."

msgid ""
"Allows app to use dynamic linker environment variables to inject code. If you "
"are using add-ons with dynamic or self-modifying native code, enable them "
"according to the add-on documentation. See [url=https://developer.apple.com/"
"documentation/bundleresources/entitlements/com_apple_security_cs_allow-dyld-"
"environment-variables]com.apple.security.cs.allow-dyld-environment-variables[/"
"url]."
msgstr ""
"Позволяет приложению использовать динамические переменные среды компоновщика "
"для внедрения кода. Если вы используете надстройки с динамическим или "
"самомодифицирующимся собственным кодом, включите их в соответствии с "
"документацией надстройки. См. [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/com_apple_security_cs_allow-dyld-environment-"
"variables]com.apple.security.cs.allow-dyld-environment-variables[/url]."

msgid ""
"Allows creating writable and executable memory for JIT code. If you are using "
"add-ons with dynamic or self-modifying native code, enable them according to "
"the add-on documentation. See [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/com_apple_security_cs_allow-"
"jit]com.apple.security.cs.allow-jit[/url]."
msgstr ""
"Позволяет создавать записываемую и исполняемую память для JIT-кода. Если вы "
"используете надстройки с динамическим или самомодифицирующимся собственным "
"кодом, включите их в соответствии с документацией надстройки. См. "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_cs_allow-jit]com.apple.security.cs.allow-jit[/url]."

msgid ""
"Allows creating writable and executable memory without JIT restrictions. If "
"you are using add-ons with dynamic or self-modifying native code, enable them "
"according to the add-on documentation. See [url=https://developer.apple.com/"
"documentation/bundleresources/entitlements/com_apple_security_cs_allow-"
"unsigned-executable-memory]com.apple.security.cs.allow-unsigned-executable-"
"memory[/url]."
msgstr ""
"Позволяет создавать записываемую и исполняемую память без ограничений JIT. "
"Если вы используете надстройки с динамическим или самомодифицирующимся "
"собственным кодом, включите их в соответствии с документацией надстройки. См. "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_cs_allow-unsigned-executable-"
"memory]com.apple.security.cs.allow-unsigned-executable-memory[/url]."

msgid ""
"Enable to allow app to interact with Bluetooth devices. This entitlement is "
"required to use wireless controllers. See [url=https://developer.apple.com/"
"documentation/bundleresources/entitlements/"
"com_apple_security_device_bluetooth]com.apple.security.device.bluetooth[/url]."
msgstr ""
"Включите, чтобы разрешить приложению взаимодействовать с устройствами "
"Bluetooth. Это разрешение требуется для использования беспроводных "
"контроллеров. См. [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/"
"com_apple_security_device_bluetooth]com.apple.security.device.bluetooth[/url]."

msgid ""
"Enable to allow app to interact with USB devices. This entitlement is "
"required to use wired controllers. See [url=https://developer.apple.com/"
"documentation/bundleresources/entitlements/"
"com_apple_security_device_usb]com.apple.security.device.usb[/url]."
msgstr ""
"Включите, чтобы разрешить приложению взаимодействовать с USB-устройствами. "
"Это разрешение требуется для использования проводных контроллеров. См. "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_device_usb]com.apple.security.device.usb[/url]."

msgid ""
"Enables App Sandbox. The App Sandbox restricts access to user data, "
"networking, and devices. Sandboxed apps can't access most of the file system, "
"can't use custom file dialogs and execute binaries outside the .app bundle. "
"See [url=https://developer.apple.com/documentation/security/app_sandbox]App "
"Sandbox[/url].\n"
"[b]Note:[/b] To distribute an app through the App Store, you must enable the "
"App Sandbox."
msgstr ""
"Включает App Sandbox. App Sandbox ограничивает доступ к пользовательским "
"данным, сетевым подключениям и устройствам. Изолированные приложения не могут "
"получить доступ к большей части файловой системы, не могут использовать "
"настраиваемые диалоговые окна файлов и выполнять двоичные файлы вне "
"пакета .app. См. [url=https://developer.apple.com/documentation/security/"
"app_sandbox]App Sandbox[/url].\n"
"[b]Примечание:[/b] Чтобы распространять приложение через App Store, "
"необходимо включить App Sandbox."

msgid ""
"Allows read or write access to the user's \"Downloads\" folder. See "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_files_downloads_read-"
"write]com.apple.security.files.downloads.read-write[/url]."
msgstr ""
"Позволяет читать или записывать в папку «Загрузки» пользователя. См. "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_files_downloads_read-"
"write]com.apple.security.files.downloads.read-write[/url]."

msgid ""
"Allows read or write access to the user's \"Movies\" folder. See [url=https://"
"developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_assets_movies_read-"
"write]com.apple.security.files.movies.read-write[/url]."
msgstr ""
"Позволяет читать или записывать в папку \"Фильмы\" (\"Movies\") пользователя. "
"См. [url=https://developer.apple.com/documentation/bundleresources/"
"entitlements/com_apple_security_assets_movies_read-"
"write]com.apple.security.files.movies.read-write[/url]."

msgid ""
"Allows read or write access to the user's \"Music\" folder. See [url=https://"
"developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_assets_music_read-"
"write]com.apple.security.files.music.read-write[/url]."
msgstr ""
"Позволяет читать или записывать в папку пользователя «Музыка» (Music). См. "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_assets_music_read-"
"write]com.apple.security.files.music.read-write[/url]."

msgid ""
"Allows read or write access to the user's \"Pictures\" folder. See "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_assets_pictures_read-"
"write]com.apple.security.files.pictures.read-write[/url]."
msgstr ""
"Позволяет читать или записывать в папку \"Фотографии\" (\"Pictures\") "
"пользователя. См. [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/com_apple_security_assets_pictures_read-"
"write]com.apple.security.files.pictures.read-write[/url]."

msgid ""
"Allows read or write access to the locations the user has selected using a "
"native file dialog. See [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/com_apple_security_files_user-selected_read-"
"write]com.apple.security.files.user-selected.read-write[/url]."
msgstr ""
"Позволяет читать или записывать доступ к расположениям, выбранным "
"пользователем с помощью собственного диалогового окна файла. См. [url=https://"
"developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_files_user-selected_read-"
"write]com.apple.security.files.user-selected.read-write[/url]."

msgid ""
"List of helper executables to embedded to the app bundle. Sandboxed app are "
"limited to execute only these executable. See [url=https://"
"developer.apple.com/documentation/xcode/embedding-a-helper-tool-in-a-"
"sandboxed-app]Embedding a command-line tool in a sandboxed app[/url]."
msgstr ""
"Список вспомогательных исполняемых файлов для встраивания в пакет приложения. "
"Изолированные приложения ограничены выполнением только этих исполняемых "
"файлов. См. [url=https://developer.apple.com/documentation/xcode/embedding-a-"
"helper-tool-in-a-sandboxed-app]Встраивание инструмента командной строки в "
"изолированное приложение[/url]."

msgid ""
"Enable to allow app to establish outgoing network connections. See "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_network_client]com.apple.security.network.client[/url]."
msgstr ""
"Включите, чтобы разрешить приложению устанавливать исходящие сетевые "
"соединения. См. [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/"
"com_apple_security_network_client]com.apple.security.network.client[/url]."

msgid ""
"Enable to allow app to listen for incoming network connections. See "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_network_server]com.apple.security.network.server[/url]."
msgstr ""
"Включите, чтобы разрешить приложению прослушивать входящие сетевые "
"подключения. См. [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/"
"com_apple_security_network_server]com.apple.security.network.server[/url]."

msgid ""
"Enable to allow app to send Apple events to other apps. See [url=https://"
"developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_automation_apple-"
"events]com.apple.security.automation.apple-events[/url]."
msgstr ""
"Включите, чтобы разрешить приложению отправлять события Apple в другие "
"приложения. См. [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/com_apple_security_automation_apple-"
"events]com.apple.security.automation.apple-events[/url]."

msgid ""
"Enable if you need to use the microphone or other audio input sources, if "
"it's enabled you should also provide usage message in the [member privacy/"
"microphone_usage_description] option. See [url=https://developer.apple.com/"
"documentation/bundleresources/entitlements/com_apple_security_device_audio-"
"input]com.apple.security.device.audio-input[/url]."
msgstr ""
"Включите, если вам нужно использовать микрофон или другие источники "
"аудиовхода, если он включен, вы также должны предоставить сообщение об "
"использовании в параметре [member privacy/microphone_usage_description]. См. "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_device_audio-input]com.apple.security.device.audio-input[/"
"url]."

msgid ""
"Enable to allow access to the user's calendar, if it's enabled you should "
"also provide usage message in the [member privacy/calendar_usage_description] "
"option. See [url=https://developer.apple.com/documentation/bundleresources/"
"entitlements/com_apple_security_personal-"
"information_calendars]com.apple.security.personal-information.calendars[/url]."
msgstr ""
"Включите, чтобы разрешить доступ к календарю пользователя, если он включен, "
"вы также должны предоставить сообщение об использовании в параметре [member "
"privacy/calendar_usage_description]. См. [url=https://developer.apple.com/"
"documentation/bundleresources/entitlements/com_apple_security_personal-"
"information_calendars]com.apple.security.personal-information.calendars[/url]."

msgid ""
"Enable if you need to use the camera, if it's enabled you should also provide "
"usage message in the [member privacy/camera_usage_description] option. See "
"[url=https://developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_device_camera]com.apple.security.device.camera[/url]."
msgstr ""
"Включите, если вам нужно использовать камеру, если она включена, вы также "
"должны предоставить сообщение об использовании в параметре [member privacy/"
"camera_usage_description]. См. [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/"
"com_apple_security_device_camera]com.apple.security.device.camera[/url]."

msgid ""
"Custom entitlements [code].plist[/code] file, if specified the rest of "
"entitlements in the export config are ignored."
msgstr ""
"Файл пользовательских прав [code].plist[/code], если он указан, остальные "
"права в конфигурации экспорта игнорируются."

msgid ""
"You can temporarily enable this entitlement to use native debugger (GDB, "
"LLDB) with the exported app. This entitlement should be disabled for "
"production export. See [url=https://developer.apple.com/documentation/xcode/"
"embedding-a-helper-tool-in-a-sandboxed-app]Embedding a command-line tool in a "
"sandboxed app[/url]."
msgstr ""
"Вы можете временно включить это право, чтобы использовать собственный "
"отладчик (GDB, LLDB) с экспортированным приложением. Это право должно быть "
"отключено для экспорта в производство. См. [url=https://developer.apple.com/"
"documentation/xcode/embedding-a-helper-tool-in-a-sandboxed-app]Внедрение "
"инструмента командной строки в изолированное приложение[/url]."

msgid ""
"Allows app to load arbitrary libraries and frameworks (not signed with the "
"same Team ID as the main executable or by Apple). Enable it if you are using "
"GDExtension add-ons or ad-hoc signing, or want to support user-provided "
"external add-ons. See [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/com_apple_security_cs_disable-library-"
"validation]com.apple.security.cs.disable-library-validation[/url]."
msgstr ""
"Позволяет приложению загружать произвольные библиотеки и фреймворки (не "
"подписанные тем же Team ID, что и основной исполняемый файл или Apple). "
"Включите его, если вы используете надстройки GDExtension или ad-hoc-"
"подписывание, или хотите поддерживать внешние надстройки, предоставляемые "
"пользователем. См. [url=https://developer.apple.com/documentation/"
"bundleresources/entitlements/com_apple_security_cs_disable-library-"
"validation]com.apple.security.cs.disable-library-validation[/url]."

msgid ""
"Enable if you need to use location information from Location Services, if "
"it's enabled you should also provide usage message in the [member privacy/"
"location_usage_description] option. See [url=https://developer.apple.com/"
"documentation/bundleresources/entitlements/com_apple_security_personal-"
"information_location]com.apple.security.personal-information.location[/url]."
msgstr ""
"Включите, если вам нужно использовать информацию о местоположении из служб "
"определения местоположения, если она включена, вы также должны предоставить "
"сообщение об использовании в параметре [member privacy/"
"location_usage_description]. См. [url=https://developer.apple.com/"
"documentation/bundleresources/entitlements/com_apple_security_personal-"
"information_location]com.apple.security.personal-information.location[/url]."

msgid ""
"Enable to allow access to the user's Photos library, if it's enabled you "
"should also provide usage message in the [member privacy/"
"photos_library_usage_description] option. See [url=https://"
"developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_personal-information_photos-"
"library]com.apple.security.personal-information.photos-library[/url]."
msgstr ""
"Включите, чтобы разрешить доступ к библиотеке фотографий пользователя, если "
"она включена, вы также должны предоставить сообщение об использовании в "
"параметре [member privacy/photos_library_usage_description]. См. [url=https://"
"developer.apple.com/documentation/bundleresources/entitlements/"
"com_apple_security_personal-information_photos-"
"library]com.apple.security.personal-information.photos-library[/url]."

msgid ""
"The \"Full Name\", \"Common Name\" or SHA-1 hash of the signing identity used "
"to sign [code].app[/code] bundle."
msgstr ""
"«Полное имя», «Общее имя» или хэш SHA-1 подписи удостоверения, используемого "
"для подписания пакета [code].app[/code]."

msgid ""
"The \"Full Name\", \"Common Name\" or SHA-1 hash of the signing identity used "
"to sign [code].pkg[/code] installer package for App Store distribution, use "
"[code]3rd Party Mac Developer Installer: Name.[/code] identity."
msgstr ""
"«Полное имя», «Общее имя» или хэш SHA-1 подписи удостоверения, используемого "
"для подписи пакета установщика [code].pkg[/code] для распространения через "
"App Store, используйте удостоверение [code]3rd Party Mac Developer Installer: "
"[/code]."

msgid ""
"Provisioning profile file downloaded from Apple developer account dashboard. "
"See [url=https://developer.apple.com/help/account/manage-profiles/edit-"
"download-or-delete-profiles]Edit, download, or delete provisioning profiles[/"
"url].\n"
"Can be overridden with the environment variable "
"[code]GODOT_MACOS_CODESIGN_PROVISIONING_PROFILE[/code]."
msgstr ""
"Файл профиля обеспечения, загруженный из панели управления учетной записью "
"разработчика Apple. См. [url=https://developer.apple.com/help/account/manage-"
"profiles/edit-download-or-delete-profiles]Редактирование, загрузка или "
"удаление профилей обеспечения[/url].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_MACOS_CODESIGN_PROVISIONING_PROFILE[/code]."

msgid ""
"If enabled, a wrapper that can be used to run the application with console "
"output is created alongside the exported application."
msgstr ""
"Если этот параметр включен, то вместе с экспортированным приложением "
"создается оболочка, которую можно использовать для запуска приложения с "
"выводом на консоль."

msgid ""
"If [code]true[/code], the application is rendered at native display "
"resolution, otherwise it is always rendered at loDPI resolution and upscaled "
"by OS when required."
msgstr ""
"Если [code]true[/code], приложение отображается с собственным разрешением "
"дисплея, в противном случае оно всегда отображается с разрешением loDPI и "
"масштабируется ОС при необходимости."

msgid "Application distribution target."
msgstr "Цель распространения приложения."

msgid ""
"Apple App Store Connect API issuer key file.\n"
"Can be overridden with the environment variable "
"[code]GODOT_MACOS_NOTARIZATION_API_KEY[/code]."
msgstr ""
"Файл ключа эмитента API Apple App Store Connect.\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_MACOS_NOTARIZATION_API_KEY[/code]."

msgid ""
"Apple App Store Connect API issuer key ID.\n"
"Can be overridden with the environment variable "
"[code]GODOT_MACOS_NOTARIZATION_API_KEY_ID[/code]."
msgstr ""
"Идентификатор ключа издателя API App Store Connect от Apple.\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_MACOS_NOTARIZATION_API_KEY_ID[/code]."

msgid ""
"Apple App Store Connect API issuer UUID.\n"
"Can be overridden with the environment variable "
"[code]GODOT_MACOS_NOTARIZATION_API_UUID[/code]."
msgstr ""
"UUID издателя API Apple App Store Connect.\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_MACOS_NOTARIZATION_API_UUID[/code]."

msgid ""
"Apple ID account name (email address).\n"
"Can be overridden with the environment variable "
"[code]GODOT_MACOS_NOTARIZATION_APPLE_ID_NAME[/code]."
msgstr ""
"Имя учетной записи Apple ID (адрес электронной почты).\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_MACOS_NOTARIZATION_APPLE_ID_NAME[/code]."

msgid ""
"Apple ID app-specific password.\n"
"Can be overridden with the environment variable "
"[code]GODOT_MACOS_NOTARIZATION_APPLE_ID_PASSWORD[/code]."
msgstr ""
"Пароль приложения Apple ID.\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_MACOS_NOTARIZATION_APPLE_ID_PASSWORD[/code]."

msgid "Tool to use for notarization."
msgstr "Инструмент для нотариального заверения."

msgid ""
"A message displayed when requesting access to the user's contacts (in "
"English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к контактам пользователя (на "
"английском языке)."

msgid ""
"A message displayed when requesting access to the user's contacts (localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к контактам пользователя "
"(локализовано)."

msgid ""
"A message displayed when requesting access to the user's calendar data (in "
"English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к данным календаря пользователя "
"(на английском языке)."

msgid ""
"A message displayed when requesting access to the user's calendar data "
"(localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к данным календаря пользователя "
"(локализовано)."

msgid ""
"A message displayed when requesting access to the user's \"Desktop\" folder "
"(in English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к папке «Рабочий стол» "
"пользователя (на английском языке)."

msgid ""
"A message displayed when requesting access to the user's \"Desktop\" folder "
"(localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к папке «Рабочий стол» "
"пользователя (локализовано)."

msgid ""
"A message displayed when requesting access to the user's \"Documents\" folder "
"(in English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к папке «Документы» пользователя "
"(на английском языке)."

msgid ""
"A message displayed when requesting access to the user's \"Documents\" folder "
"(localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к папке «Документы» пользователя "
"(локализовано)."

msgid ""
"A message displayed when requesting access to the user's \"Downloads\" folder "
"(in English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к папке «Загрузки» пользователя "
"(на английском языке)."

msgid ""
"A message displayed when requesting access to the user's \"Downloads\" folder "
"(localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к папке «Загрузки» пользователя "
"(локализовано)."

msgid ""
"A message displayed when requesting access to the user's location information "
"(in English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к информации о местоположении "
"пользователя (на английском языке)."

msgid ""
"A message displayed when requesting access to the user's location information "
"(localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к информации о местоположении "
"пользователя (локализовано)."

msgid ""
"A message displayed when requesting access to the user's network drives (in "
"English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к сетевым дискам пользователя (на "
"английском языке)."

msgid ""
"A message displayed when requesting access to the user's network drives "
"(localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к сетевым дискам пользователя "
"(локализовано)."

msgid ""
"A message displayed when requesting access to the user's removable drives (in "
"English)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к съемным дискам пользователя (на "
"английском языке)."

msgid ""
"A message displayed when requesting access to the user's removable drives "
"(localized)."
msgstr ""
"Сообщение, отображаемое при запросе доступа к съемным дискам пользователя "
"(локализовано)."

msgid "macOS build number used to build application executable."
msgstr ""
"Номер сборки macOS, используемый для сборки исполняемого файла приложения."

msgid "macOS SDK build number used to build application executable."
msgstr ""
"Номер сборки macOS SDK, используемый для сборки исполняемого файла приложения."

msgid "macOS SDK name used to build application executable."
msgstr "Имя macOS SDK, используемое для сборки исполняемого файла приложения."

msgid ""
"macOS SDK version used to build application executable in the "
"[code]major.minor[/code] format."
msgstr ""
"Версия macOS SDK, используемая для сборки исполняемого файла приложения в "
"формате [code]major.minor[/code]."

msgid "Xcode build number used to build application executable."
msgstr ""
"Номер сборки Xcode, используемый для сборки исполняемого файла приложения."

msgid "Xcode version used to build application executable."
msgstr "Версия Xcode, используемая для сборки исполняемого файла приложения."

msgid "Base class for the desktop platform exporter (Windows and Linux/BSD)."
msgstr ""
"Базовый класс для экспортера настольной платформы (Windows и Linux/BSD)."

msgid ""
"The base class for the desktop platform exporters. These include Windows and "
"Linux/BSD, but not macOS. See the classes inheriting from this one for more "
"details."
msgstr ""
"Базовый класс для экспортеров настольных платформ. К ним относятся Windows и "
"Linux/BSD, но не macOS. Подробнее см. классы, наследуемые от этого."

msgid "Exporting for Windows"
msgstr "Экспортирование для Windows"

msgid "Exporter for visionOS."
msgstr "Экспортер для visionOS."

msgid ""
"The \"Full Name\", \"Common Name\" or SHA-1 hash of the signing identity used "
"for debug export."
msgstr ""
"«Полное имя», «Общее имя» или хэш SHA-1 подписи удостоверения, используемого "
"для отладочного экспорта."

msgid ""
"The \"Full Name\", \"Common Name\" or SHA-1 hash of the signing identity used "
"for release export."
msgstr ""
"«Полное имя», «Общее имя» или хэш SHA-1 подписи удостоверения, используемого "
"для экспорта релиза."

msgid ""
"Name of the provisioning profile. Sets XCode PROVISIONING_PROFILE_SPECIFIER "
"for debug. [url=https://developer.apple.com/documentation/xcode/build-"
"settings-reference#Provisioning-Profile]Used for manual provisioning[/url].\n"
"Can be overridden with the environment variable "
"[code]GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_DEBUG[/code]."
msgstr ""
"Имя профиля подготовки. Устанавливает XCode PROVISIONING_PROFILE_SPECIFIER "
"для отладки. [url=https://developer.apple.com/documentation/xcode/build-"
"settings-reference#Provisioning-Profile]Используется для ручной подготовки[/"
"url].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_DEBUG[/code]."

msgid ""
"Name of the provisioning profile. Sets XCode PROVISIONING_PROFILE_SPECIFIER "
"for release. [url=https://developer.apple.com/documentation/xcode/build-"
"settings-reference#Provisioning-Profile]Used for manual provisioning[/url].\n"
"Can be overridden with the environment variable "
"[code]GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_RELEASE[/code]."
msgstr ""
"Имя профиля подготовки. Устанавливает XCode PROVISIONING_PROFILE_SPECIFIER "
"для выпуска. [url=https://developer.apple.com/documentation/xcode/build-"
"settings-reference#Provisioning-Profile]Используется для ручной подготовки[/"
"url].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_APPLE_PLATFORM_PROFILE_SPECIFIER_RELEASE[/code]."

msgid ""
"Requires the graphics performance and features of the A12 Bionic and later "
"chips (devices supporting all Vulkan renderer features).\n"
"Enabling this option limits supported devices to: iPhone XS, iPhone XR, iPad "
"Mini (5th gen.), iPad Air (3rd gen.), iPad (8th gen) and newer."
msgstr ""
"Требует графической производительности и функций чипов A12 Bionic и более "
"поздних версий (устройств, поддерживающих все функции рендерера Vulkan). \n"
"Включение этой опции ограничивает поддерживаемые устройства: iPhone XS, "
"iPhone XR, iPad Mini (5-го поколения), iPad Air (3-го поколения), iPad (8-го "
"поколения) и новее."

msgid ""
"If [code]true[/code], shaders will be compiled and embedded in the "
"application. This option is only supported when using the Forward+ and Mobile "
"renderers."
msgstr ""
"Если [code]true[/code], шейдеры будут скомпилированы и встроены в приложение. "
"Эта опция поддерживается только при использовании рендереров Forward+ и "
"Mobile."

msgid "Exporter for the Web."
msgstr "Экспортер для Интернета."

msgid ""
"The Web exporter customizes how a web build is handled. In the editor's "
"\"Export\" window, it is created when adding a new \"Web\" preset.\n"
"[b]Note:[/b] Godot on Web is rendered inside a [code]<canvas>[/code] tag. "
"Normally, the canvas cannot be positioned or resized manually, but otherwise "
"acts as the main [Window] of the application."
msgstr ""
"Веб-экспортер настраивает способ обработки веб-сборки. В окне «Экспорт» "
"редактора он создается при добавлении нового пресета «Веб».\n"
"[b]Примечание:[/b] Godot в Вебе визуализируется внутри тега [code]<canvas>[/"
"code]. Обычно холст нельзя позиционировать или изменять вручную, но в "
"остальном он действует как основное [Window] приложения."

msgid "Exporting for the Web"
msgstr "Экспорт для Интернета (Web)"

msgid "Web documentation index"
msgstr "Индекс веб-документации"

msgid ""
"File path to the custom export template used for debug builds. If left empty, "
"the default template is used."
msgstr ""
"Путь к файлу пользовательского шаблона экспорта, используемого для отладочных "
"сборок. Если оставить пустым, будет использоваться шаблон по умолчанию."

msgid ""
"File path to the custom export template used for release builds. If left "
"empty, the default template is used."
msgstr ""
"Путь к файлу пользовательского шаблона экспорта, используемого для релизных "
"сборок. Если оставить пустым, будет использоваться шаблон по умолчанию."

msgid ""
"Determines how the canvas should be resized by Godot.\n"
"- [b]None:[/b] The canvas is not automatically resized.\n"
"- [b]Project:[/b] The size of the canvas is dependent on the "
"[ProjectSettings].\n"
"- [b]Adaptive:[/b] The canvas is automatically resized to fit as much of the "
"web page as possible."
msgstr ""
"Определяет, как Godot должен изменять размер холста.\n"
"- [b]Нет:[/b] Размер холста не изменяется автоматически.\n"
"- [b]Проект:[/b] Размер холста зависит от [ProjectSettings].\n"
"- [b]Адаптивный:[/b] Размер холста автоматически изменяется, чтобы вместить "
"как можно большую часть веб-страницы."

msgid ""
"The custom HTML page that wraps the exported web build. If left empty, the "
"default HTML shell is used.\n"
"For more information, see the [url=$DOCS_URL/tutorials/platform/web/"
"customizing_html5_shell.html]Customizing HTML5 Shell[/url] tutorial."
msgstr ""
"Пользовательская HTML-страница, которая оборачивает экспортированную веб-"
"сборку. Если оставить пустым, будет использоваться оболочка HTML по "
"умолчанию.\n"
"Для получения дополнительной информации см. [url=$DOCS_URL/tutorials/platform/"
"web/customizing_html5_shell.html]Настройка оболочки HTML5[/url] учебник."

msgid ""
"If [code]true[/code], embeds support for a virtual keyboard into the web "
"page, which is shown when necessary on touchscreen devices."
msgstr ""
"Если [code]true[/code], встраивает в веб-страницу поддержку виртуальной "
"клавиатуры, которая отображается при необходимости на устройствах с сенсорным "
"экраном."

msgid ""
"If [code]true[/code], the project icon will be used as the favicon for this "
"application's web page."
msgstr ""
"Если [code]true[/code], значок проекта будет использоваться в качестве значка "
"веб-страницы этого приложения."

msgid ""
"If [code]true[/code], the canvas will be focused as soon as the application "
"is loaded, if the browser window is already in focus."
msgstr ""
"Если [code]true[/code], холст будет сфокусирован сразу после загрузки "
"приложения, если окно браузера уже находится в фокусе."

msgid ""
"Additional HTML tags to include inside the [code]<head>[/code], such as "
"[code]<meta>[/code] tags.\n"
"[b]Note:[/b] You do not need to add a [code]<title>[/code] tag, as it is "
"automatically included based on the project's name."
msgstr ""
"Дополнительные HTML-теги для включения в [code]<head>[/code], такие как теги "
"[code]<meta>[/code].\n"
"[b]Примечание:[/b] Вам не нужно добавлять тег [code]<title>[/code], так как "
"он автоматически включается на основе имени проекта."

msgid "The background color used behind the web application."
msgstr "Цвет фона, используемый в веб-приложении."

msgid ""
"The [url=https://developer.mozilla.org/en-US/docs/Web/Manifest/"
"display/]display mode[/url] to use for this progressive web application. "
"Different browsers and platforms may not behave the same.\n"
"- [b]Fullscreen:[/b] Displays the app in fullscreen and hides all of the "
"browser's UI elements.\n"
"- [b]Standalone:[/b] Displays the app in a separate window and hides all of "
"the browser's UI elements.\n"
"- [b]Minimal UI:[/b] Displays the app in a separate window and only shows the "
"browser's UI elements for navigation.\n"
"- [b]Browser:[/b] Displays the app as a normal web page."
msgstr ""
"[url=https://developer.mozilla.org/en-US/docs/Web/Manifest/display/]Режим "
"отображения[/url] для использования в этом прогрессивном веб-приложении. "
"Разные браузеры и платформы могут вести себя по-разному.\n"
"- [b]Полноэкранный:[/b] Отображает приложение в полноэкранном режиме и "
"скрывает все элементы пользовательского интерфейса браузера.\n"
"- [b]Автономный:[/b] Отображает приложение в отдельном окне и скрывает все "
"элементы пользовательского интерфейса браузера.\n"
"- [b]Минимальный пользовательский интерфейс:[/b] Отображает приложение в "
"отдельном окне и показывает только элементы пользовательского интерфейса "
"браузера для навигации.\n"
"- [b]Браузер:[/b] Отображает приложение как обычную веб-страницу."

msgid ""
"If [code]true[/code], turns this web build into a [url=https://"
"en.wikipedia.org/wiki/Progressive_web_app]progressive web application[/url] "
"(PWA)."
msgstr ""
"Если [code]true[/code], то эта веб-сборка превращается в [url=https://"
"en.wikipedia.org/wiki/Progressive_web_app]прогрессивное веб-приложение[/url] "
"(PWA)."

msgid ""
"When enabled, the progressive web app will make sure that each request has "
"cross-origin isolation headers (COEP/COOP).\n"
"This can simplify the setup to serve the exported game."
msgstr ""
"При включении прогрессивное веб-приложение будет следить за тем, чтобы каждый "
"запрос имел заголовки изоляции между источниками (COEP/COOP). \n"
"Это может упростить настройку для обслуживания экспортированной игры."

msgid ""
"File path to the smallest icon for this web application. If not defined, "
"defaults to the project icon.\n"
"[b]Note:[/b] If the icon is not 144×144, it will be automatically resized for "
"the final build."
msgstr ""
"Путь к файлу наименьшего значка для этого веб-приложения. Если не определено, "
"по умолчанию используется значок проекта.\n"
"[b]Примечание:[/b] Если значок не имеет размер 144×144, он будет "
"автоматически изменен для финальной сборки."

msgid ""
"File path to the small icon for this web application. If not defined, "
"defaults to the project icon.\n"
"[b]Note:[/b] If the icon is not 180×180, it will be automatically resized for "
"the final build."
msgstr ""
"Путь к файлу маленькой иконки для этого веб-приложения. Если не определено, "
"по умолчанию используется иконка проекта.\n"
"[b]Примечание:[/b] Если иконка не имеет размер 180×180, она будет "
"автоматически изменена для финальной сборки."

msgid ""
"File path to the largest icon for this web application. If not defined, "
"defaults to the project icon.\n"
"[b]Note:[/b] If the icon is not 512×512, it will be automatically resized for "
"the final build."
msgstr ""
"Путь к файлу самого большого значка для этого веб-приложения. Если не "
"определено, по умолчанию используется значок проекта.\n"
"[b]Примечание:[/b] Если значок не имеет размер 512×512, он будет "
"автоматически изменен для финальной сборки."

msgid ""
"The page to display, should the server hosting the page not be available. "
"This page is saved in the client's machine."
msgstr ""
"Страница для отображения, если сервер, на котором размещена страница, "
"недоступен. Эта страница сохраняется на клиентской машине."

msgid ""
"The orientation to use when the web application is run through a mobile "
"device.\n"
"- [b]Any:[/b] No orientation is forced.\n"
"- [b]Landscape:[/b] Forces a horizontal layout (wider than it is taller).\n"
"- [b]Portrait:[/b] Forces a vertical layout (taller than it is wider)."
msgstr ""
"Ориентация, используемая при запуске веб-приложения через мобильное "
"устройство.\n"
"- [b]Любая:[/b] Ориентация не устанавливается принудительно.\n"
"- [b]Альбомная:[/b] Принудительно устанавливает горизонтальную компоновку "
"(шире, чем выше).\n"
"- [b]Портретная:[/b] Принудительно устанавливает вертикальную компоновку "
"(выше, чем шире)."

msgid ""
"The number of threads that emscripten will allocate at startup. A smaller "
"value will allocate fewer threads and consume fewer system resources, but you "
"may run the risk of running out of threads in the pool and needing to "
"allocate more threads at run time which may cause a deadlock.\n"
"[b]Note:[/b] Some browsers have a hard cap on the number of threads that can "
"be allocated, so it is best to be cautious and keep this number low."
msgstr ""
"Количество потоков, которые emscripten выделит при запуске. Меньшее значение "
"выделит меньше потоков и потребит меньше системных ресурсов, но вы можете "
"столкнуться с риском исчерпания потоков в пуле и необходимости выделять "
"больше потоков во время выполнения, что может привести к взаимоблокировке.\n"
"[b]Примечание:[/b] Некоторые браузеры имеют жесткий предел количества "
"потоков, которые могут быть выделены, поэтому лучше быть осторожным и не "
"повышать это число."

msgid ""
"Override for the default size of the [WorkerThreadPool]. This setting is used "
"when [member ProjectSettings.threading/worker_pool/max_threads] size is set "
"to -1 (which it is by default). This size must be smaller than [member "
"threads/emscripten_pool_size] otherwise deadlocks may occur.\n"
"When using threads this size needs to be large enough to accommodate features "
"that rely on having a dedicated thread like [member ProjectSettings.physics/"
"2d/run_on_separate_thread] or [member ProjectSettings.rendering/driver/"
"threads/thread_model]. In general, it is best to ensure that this is at least "
"4 and is at least 2 or 3 less than [member threads/emscripten_pool_size]."
msgstr ""
"Переопределение размера пула потоков [WorkerThreadPool] по умолчанию. Этот "
"параметр используется, когда размер [member ProjectSettings.threading/"
"worker_pool/max_threads] установлен в значение -1 (что является значением по "
"умолчанию). Этот размер должен быть меньше, чем [member threads/"
"emscripten_pool_size], иначе могут возникнуть взаимоблокировки.\n"
"При использовании потоков этот размер должен быть достаточно большим для "
"поддержки функций, требующих наличия выделенного потока, таких как [member "
"ProjectSettings.physics/2d/run_on_separate_thread] или [member "
"ProjectSettings.rendering/driver/threads/thread_model]. В общем случае "
"рекомендуется, чтобы этот размер был не менее 4 и был как минимум на 2 или 3 "
"меньше, чем [member threads/emscripten_pool_size]."

msgid "If [code]true[/code] enables [GDExtension] support for this web build."
msgstr ""
"Если [code]true[/code], включается поддержка [GDExtension] для этой веб-"
"сборки."

msgid ""
"If [code]true[/code], the exported game will support threads. It requires "
"[url=https://web.dev/articles/coop-coep]a \"cross-origin isolated\" website[/"
"url], which may be difficult to set up and is limited for security reasons "
"(such as not being able to communicate with third-party websites).\n"
"If [code]false[/code], the exported game will not support threads. As a "
"result, it is more prone to performance and audio issues, but will only "
"require to be run on an HTTPS website."
msgstr ""
"Если [code]true[/code], экспортированная игра будет поддерживать потоки. Для "
"этого требуется [url=https://web.dev/articles/coop-coep]веб-сайт «cross-"
"origin-isolated»[/url], который может быть сложно настроить и который "
"ограничен по соображениям безопасности (например, невозможность связи со "
"сторонними веб-сайтами).\n"
"Если [code]false[/code], экспортированная игра не будет поддерживать потоки. "
"В результате она более подвержена проблемам с производительностью и звуком, "
"но для ее запуска потребуется только веб-сайт HTTPS."

msgid ""
"If [code]true[/code], allows textures to be optimized for desktop through the "
"S3TC/BPTC algorithm."
msgstr ""
"Если [code]true[/code], разрешается оптимизировать текстуры для настольных "
"компьютеров с помощью алгоритма S3TC/BPTC."

msgid ""
"If [code]true[/code] allows textures to be optimized for mobile through the "
"ETC2/ASTC algorithm."
msgstr ""
"Если [code]true[/code], то разрешается оптимизировать текстуры для мобильных "
"устройств с помощью алгоритма ETC2/ASTC."

msgid "Exporter for Windows."
msgstr "Экспортер для Windows."

msgid ""
"The Windows exporter customizes how a Windows build is handled. In the "
"editor's \"Export\" window, it is created when adding a new \"Windows\" "
"preset."
msgstr ""
"Экспортер Windows настраивает способ обработки сборки Windows. В окне "
"«Экспорт» редактора он создается при добавлении нового пресета «Windows»."

msgid ""
"Company that produced the application. Required. See [url=https://"
"learn.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."
msgstr ""
"Компания, выпустившая приложение. Обязательно. См. [url=https://"
"learn.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."

msgid ""
"Console wrapper icon file. If left empty, it will fallback to [member "
"application/icon], then to [member ProjectSettings.application/config/"
"windows_native_icon], and lastly, [member ProjectSettings.application/config/"
"icon]."
msgstr ""
"Файл значка оболочки консоли. Если оставить пустым, то будет использоваться "
"[member application/icon], затем [member ProjectSettings.application/config/"
"windows_native_icon] и, наконец, [member ProjectSettings.application/config/"
"icon]."

msgid ""
"Copyright notice for the bundle visible to the user. Optional. See "
"[url=https://learn.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."
msgstr ""
"Уведомление об авторских правах для пакета, видимого пользователю. "
"Необязательно. См. [url=https://learn.microsoft.com/en-us/windows/win32/"
"menurc/stringfileinfo-block]StringFileInfo[/url]."

msgid ""
"If [code]true[/code], and [member application/export_d3d12] is set, the "
"Agility SDK DLLs will be stored in arch-specific subdirectories."
msgstr ""
"Если [code]true[/code] и задано [member application/export_d3d12], то "
"библиотеки DLL Agility SDK будут храниться в подкаталогах, специфичных для "
"архитектуры."

msgid ""
"If set to [code]1[/code], the Direct3D 12 runtime libraries (Agility SDK, "
"PIX) are exported with the exported application. If set to [code]0[/code], "
"Direct3D 12 libraries are exported only if [member ProjectSettings.rendering/"
"rendering_device/driver] is set to [code]\"d3d12\"[/code]."
msgstr ""
"Если установлено значение [code]1[/code], библиотеки времени выполнения "
"Direct3D 12 (Agility SDK, PIX) экспортируются вместе с экспортированным "
"приложением. Если установлено значение [code]0[/code], библиотеки Direct3D 12 "
"экспортируются только в том случае, если [member ProjectSettings.rendering/"
"rendering_device/driver] установлено значение [code]\"d3d12\"[/code]."

msgid ""
"File description to be presented to users. Required. See [url=https://"
"learn.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."
msgstr ""
"Описание файла, которое будет представлено пользователям. Обязательно. См. "
"[url=https://learn.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."

msgid ""
"Version number of the file. Falls back to [member ProjectSettings.application/"
"config/version] if left empty. See [url=https://learn.microsoft.com/en-us/"
"windows/win32/menurc/stringfileinfo-block]StringFileInfo[/url]."
msgstr ""
"Номер версии файла. Возвращается к [member ProjectSettings.application/config/"
"version], если оставить пустым. См. [url=https://learn.microsoft.com/en-us/"
"windows/win32/menurc/stringfileinfo-block]StringFileInfo[/url]."

msgid ""
"Application icon file. If left empty, it will fallback to [member "
"ProjectSettings.application/config/windows_native_icon], and then to [member "
"ProjectSettings.application/config/icon]."
msgstr ""
"Файл значка приложения. Если оставить пустым, то он будет возвращаться к "
"[member ProjectSettings.application/config/windows_native_icon], а затем к "
"[member ProjectSettings.application/config/icon]."

msgid ""
"If enabled, icon and metadata of the exported executable is set according to "
"the other [code]application/*[/code] values."
msgstr ""
"Если этот параметр включен, значок и метаданные экспортированного "
"исполняемого файла задаются в соответствии с другими значениями "
"[code]application/*[/code]."

msgid ""
"Name of the application. Required. See [url=https://learn.microsoft.com/en-us/"
"windows/win32/menurc/stringfileinfo-block]StringFileInfo[/url]."
msgstr ""
"Имя приложения. Обязательно. См. [url=https://learn.microsoft.com/en-us/"
"windows/win32/menurc/stringfileinfo-block]StringFileInfo[/url]."

msgid ""
"Application version visible to the user. Falls back to [member "
"ProjectSettings.application/config/version] if left empty. See [url=https://"
"learn.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."
msgstr ""
"Версия приложения видна пользователю. Возвращается к [member "
"ProjectSettings.application/config/version], если оставить пустым. См. "
"[url=https://learn.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."

msgid ""
"Trademarks and registered trademarks that apply to the file. Optional. See "
"[url=https://learn.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-"
"block]StringFileInfo[/url]."
msgstr ""
"Товарные знаки и зарегистрированные товарные знаки, которые применяются к "
"файлу. Необязательно. См. [url=https://learn.microsoft.com/en-us/windows/"
"win32/menurc/stringfileinfo-block]StringFileInfo[/url]."

msgid ""
"Application executable architecture.\n"
"Supported architectures: [code]x86_32[/code], [code]x86_64[/code], and "
"[code]arm64[/code]."
msgstr ""
"Архитектура исполняемого приложения.\n"
"Поддерживаемые архитектуры: [code]x86_32[/code], [code]x86_64[/code] и "
"[code]arm64[/code]."

msgid ""
"Array of the additional command line arguments passed to the code signing "
"tool. See [url=https://learn.microsoft.com/en-us/dotnet/framework/tools/"
"signtool-exe]Sign Tool[/url]."
msgstr ""
"Массив дополнительных аргументов командной строки, переданных в инструмент "
"подписи кода. См. [url=https://learn.microsoft.com/en-us/dotnet/framework/"
"tools/signtool-exe]Инструмент подписи[/url]."

msgid ""
"Description of the signed content. See [url=https://learn.microsoft.com/en-us/"
"dotnet/framework/tools/signtool-exe]Sign Tool[/url]."
msgstr ""
"Описание подписанного контента. См. [url=https://learn.microsoft.com/en-us/"
"dotnet/framework/tools/signtool-exe]Инструмент подписи[/url]."

msgid ""
"Digest algorithm to use for creating signature. See [url=https://"
"learn.microsoft.com/en-us/dotnet/framework/tools/signtool-exe]Sign Tool[/url]."
msgstr ""
"Алгоритм дайджеста для использования при создании подписи. См. [url=https://"
"learn.microsoft.com/en-us/dotnet/framework/tools/signtool-exe]Инструмент "
"подписи[/url]."

msgid "If [code]true[/code], executable signing is enabled."
msgstr "Если [code]true[/code], подпись исполняемого файла включена."

msgid ""
"PKCS #12 certificate file used to sign executable or certificate SHA-1 hash "
"(if [member codesign/identity_type] is set to \"Use certificate store\"). See "
"[url=https://learn.microsoft.com/en-us/dotnet/framework/tools/signtool-"
"exe]Sign Tool[/url].\n"
"Can be overridden with the environment variable "
"[code]GODOT_WINDOWS_CODESIGN_IDENTITY[/code]."
msgstr ""
"Файл сертификата PKCS #12, используемый для подписи исполняемого файла или "
"хэша сертификата SHA-1 (если [member codesign/identity_type] установлен на "
"«Использовать хранилище сертификатов»). См. [url=https://learn.microsoft.com/"
"en-us/dotnet/framework/tools/signtool-exe]Инструмент подписи[/url].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_WINDOWS_CODESIGN_IDENTITY[/code]."

msgid ""
"Type of identity to use. See [url=https://learn.microsoft.com/en-us/dotnet/"
"framework/tools/signtool-exe]Sign Tool[/url].\n"
"Can be overridden with the environment variable "
"[code]GODOT_WINDOWS_CODESIGN_IDENTITY_TYPE[/code]."
msgstr ""
"Тип используемого удостоверения. См. [url=https://learn.microsoft.com/en-us/"
"dotnet/framework/tools/signtool-exe]Инструмент подписи[/url].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_WINDOWS_CODESIGN_IDENTITY_TYPE[/code]."

msgid ""
"Password for the certificate file used to sign executable. See [url=https://"
"learn.microsoft.com/en-us/dotnet/framework/tools/signtool-exe]Sign Tool[/"
"url].\n"
"Can be overridden with the environment variable "
"[code]GODOT_WINDOWS_CODESIGN_PASSWORD[/code]."
msgstr ""
"Пароль для файла сертификата, используемого для подписи исполняемого файла. "
"См. [url=https://learn.microsoft.com/en-us/dotnet/framework/tools/signtool-"
"exe]Sign Tool[/url].\n"
"Можно переопределить с помощью переменной среды "
"[code]GODOT_WINDOWS_CODESIGN_PASSWORD[/code]."

msgid ""
"If [code]true[/code], time-stamp is added to the signature. See [url=https://"
"learn.microsoft.com/en-us/dotnet/framework/tools/signtool-exe]Sign Tool[/url]."
msgstr ""
"Если [code]true[/code], к подписи добавляется временная метка. См. "
"[url=https://learn.microsoft.com/en-us/dotnet/framework/tools/signtool-"
"exe]Sign Tool[/url]."

msgid ""
"URL of the time stamp server. If left empty, the default server is used. See "
"[url=https://learn.microsoft.com/en-us/dotnet/framework/tools/signtool-"
"exe]Sign Tool[/url]."
msgstr ""
"URL сервера отметок времени. Если оставить пустым, будет использоваться "
"сервер по умолчанию. См. [url=https://learn.microsoft.com/en-us/dotnet/"
"framework/tools/signtool-exe]Sign Tool[/url]."

msgid ""
"If [code]true[/code], a console wrapper executable is exported alongside the "
"main executable, which allows running the project with enabled console output."
msgstr ""
"Если [code]true[/code], исполняемый файл оболочки консоли экспортируется "
"вместе с основным исполняемым файлом, что позволяет запустить проект с "
"включенным выводом на консоль."

msgid "A script that is executed when exporting the project."
msgstr "Скрипт, который выполняется при экспорте проекта."

msgid ""
"[EditorExportPlugin]s are automatically invoked whenever the user exports the "
"project. Their most common use is to determine what files are being included "
"in the exported project. For each plugin, [method _export_begin] is called at "
"the beginning of the export process and then [method _export_file] is called "
"for each exported file.\n"
"To use [EditorExportPlugin], register it using the [method "
"EditorPlugin.add_export_plugin] method first."
msgstr ""
"[EditorExportPlugin] автоматически вызываются всякий раз, когда пользователь "
"экспортирует проект. Их наиболее распространенное применение — определение "
"того, какие файлы включаются в экспортируемый проект. Для каждого плагина в "
"начале процесса экспорта вызывается [method _export_begin], а затем для "
"каждого экспортируемого файла вызывается [method _export_file]. \n"
"Чтобы использовать [EditorExportPlugin], сначала зарегистрируйте его с "
"помощью метода [method EditorPlugin.add_export_plugin]."

msgid "Export Android plugins"
msgstr "Экспорт плагинов Android"

msgid ""
"Return [code]true[/code] if this plugin will customize resources based on the "
"platform and features used.\n"
"When enabled, [method _get_customization_configuration_hash] and [method "
"_customize_resource] will be called and must be implemented."
msgstr ""
"Верните [code]true[/code], если этот плагин будет настраивать ресурсы на "
"основе платформы и используемых функций.\n"
"При включении будут вызваны [method _get_customization_configuration_hash] и "
"[method _customize_resource], которые должны быть реализованы."

msgid ""
"Return [code]true[/code] if this plugin will customize scenes based on the "
"platform and features used.\n"
"When enabled, [method _get_customization_configuration_hash] and [method "
"_customize_scene] will be called and must be implemented.\n"
"[b]Note:[/b] [method _customize_scene] will only be called for scenes that "
"have been modified since the last export."
msgstr ""
"Верните [code]true[/code], если этот плагин будет настраивать сцены на основе "
"платформы и используемых функций.\n"
"При включении будут вызваны [method _get_customization_configuration_hash] и "
"[method _customize_scene], которые должны быть реализованы.\n"
"[b]Примечание:[/b] [method _customize_scene] будет вызван только для сцен, "
"которые были изменены с момента последнего экспорта."

msgid ""
"Customize a resource. If changes are made to it, return the same or a new "
"resource. Otherwise, return [code]null[/code]. When a new resource is "
"returned, [param resource] will be replaced by a copy of the new resource.\n"
"The [param path] argument is only used when customizing an actual file, "
"otherwise this means that this resource is part of another one and it will be "
"empty.\n"
"Implementing this method is required if [method _begin_customize_resources] "
"returns [code]true[/code].\n"
"[b]Note:[/b] When customizing any of the following types and returning "
"another resource, the other resource should not be skipped using [method "
"skip] in [method _export_file]:\n"
"- [AtlasTexture]\n"
"- [CompressedCubemap]\n"
"- [CompressedCubemapArray]\n"
"- [CompressedTexture2D]\n"
"- [CompressedTexture2DArray]\n"
"- [CompressedTexture3D]"
msgstr ""
"Настройте ресурс. Если в него внесены изменения, верните тот же или новый "
"ресурс. В противном случае верните [code]null[/code]. При возврате нового "
"ресурса [param resource] будет заменен копией нового ресурса.\n"
"Аргумент [param path] используется только при настройке фактического файла, в "
"противном случае это означает, что этот ресурс является частью другого и "
"будет пустым.\n"
"Реализация этого метода требуется, если [method _begin_customize_resources] "
"возвращает [code]true[/code].\n"
"[b]Примечание:[/b] При настройке любого из следующих типов и возврате другого "
"ресурса другой ресурс не должен быть пропущен с помощью [method skip] в "
"[method _export_file]:\n"
"- [AtlasTexture]\n"
"- [CompressedCubemap]\n"
"- [CompressedCubemapArray]\n"
"- [CompressedTexture2D]\n"
"- [CompressedTexture2DArray]\n"
"- [CompressedTexture3D]"

msgid ""
"Customize a scene. If changes are made to it, return the same or a new scene. "
"Otherwise, return [code]null[/code]. If a new scene is returned, it is up to "
"you to dispose of the old one.\n"
"Implementing this method is required if [method _begin_customize_scenes] "
"returns [code]true[/code]."
msgstr ""
"Настройте сцену. Если в нее внесены изменения, верните ту же или новую сцену. "
"В противном случае верните [code]null[/code]. Если возвращается новая сцена, "
"вы можете избавиться от старой.\n"
"Реализация этого метода обязательна, если [method _begin_customize_scenes] "
"возвращает [code]true[/code]."

msgid "This is called when the customization process for resources ends."
msgstr "Это вызывается, когда завершается процесс настройки ресурсов."

msgid "This is called when the customization process for scenes ends."
msgstr "Это вызывается, когда заканчивается процесс настройки сцен."

msgid ""
"Virtual method to be overridden by the user. It is called when the export "
"starts and provides all information about the export. [param features] is the "
"list of features for the export, [param is_debug] is [code]true[/code] for "
"debug builds, [param path] is the target path for the exported project. "
"[param flags] is only used when running a runnable profile, e.g. when using "
"native run on Android."
msgstr ""
"Виртуальный метод, который должен быть переопределен пользователем. Он "
"вызывается при запуске экспорта и предоставляет всю информацию об экспорте. "
"[param features] — список функций для экспорта, [param is_debug] — "
"[code]true[/code] для отладочных сборок, [param path] — целевой путь для "
"экспортированного проекта. [param flags] используется только при запуске "
"готового к запуску профиля, например, при использовании собственного запуска "
"на Android."

msgid ""
"Virtual method to be overridden by the user. Called when the export is "
"finished."
msgstr ""
"Виртуальный метод, который должен быть переопределен пользователем. "
"Вызывается после завершения экспорта."

msgid ""
"Virtual method to be overridden by the user. Called for each exported file "
"before [method _customize_resource] and [method _customize_scene]. The "
"arguments can be used to identify the file. [param path] is the path of the "
"file, [param type] is the [Resource] represented by the file (e.g. "
"[PackedScene]), and [param features] is the list of features for the export.\n"
"Calling [method skip] inside this callback will make the file not included in "
"the export."
msgstr ""
"Виртуальный метод, который должен быть переопределен пользователем. "
"Вызывается для каждого экспортированного файла перед [method "
"_customize_resource] и [method _customize_scene]. Аргументы могут "
"использоваться для идентификации файла. [param path] — это путь к файлу, "
"[param type] — это [Resource], представленный файлом (например, "
"[PackedScene]), а [param features] — это список функций для экспорта.\n"
"Вызов [method skip] внутри этого обратного вызова сделает файл не включенным "
"в экспорт."

msgid ""
"Virtual method to be overridden by the user. This is called to retrieve the "
"set of Android dependencies provided by this plugin. Each returned Android "
"dependency should have the format of an Android remote binary dependency: "
"[code]org.godot.example:my-plugin:0.0.0[/code]\n"
"For more information see [url=https://developer.android.com/build/"
"dependencies?agpversion=4.1#dependency-types]Android documentation on "
"dependencies[/url].\n"
"[b]Note:[/b] Only supported on Android and requires [member "
"EditorExportPlatformAndroid.gradle_build/use_gradle_build] to be enabled."
msgstr ""
"Виртуальный метод, который должен быть переопределен пользователем. Он "
"вызывается для получения набора зависимостей Android, предоставляемых этим "
"плагином. Каждая возвращаемая зависимость Android должна иметь формат "
"удаленной двоичной зависимости Android: [code]org.godot.example:my-"
"plugin:0.0.0[/code]\n"
"Для получения дополнительной информации см. [url=https://"
"developer.android.com/build/dependencies?agpversion=4.1#dependency-"
"types]документацию Android по зависимостям[/url].\n"
"[b]Примечание:[/b] Поддерживается только на Android и требует включения "
"[member EditorExportPlatformAndroid.gradle_build/use_gradle_build]."

msgid ""
"Virtual method to be overridden by the user. This is called to retrieve the "
"URLs of Maven repositories for the set of Android dependencies provided by "
"this plugin.\n"
"For more information see [url=https://docs.gradle.org/current/userguide/"
"dependency_management.html#sec:maven_repo]Gradle documentation on dependency "
"management[/url].\n"
"[b]Note:[/b] Google's Maven repo and the Maven Central repo are already "
"included by default.\n"
"[b]Note:[/b] Only supported on Android and requires [member "
"EditorExportPlatformAndroid.gradle_build/use_gradle_build] to be enabled."
msgstr ""
"Виртуальный метод, который должен быть переопределен пользователем. Он "
"вызывается для получения URL-адресов репозиториев Maven для набора "
"зависимостей Android, предоставляемых этим плагином.\n"
"Для получения дополнительной информации см. [url=https://docs.gradle.org/"
"current/userguide/dependency_management.html#sec:maven_repo]документацию "
"Gradle по управлению зависимостями[/url].\n"
"[b]Примечание:[/b] Репозиторий Maven от Google и репозиторий Maven Central "
"уже включены по умолчанию.\n"
"[b]Примечание:[/b] Поддерживается только на Android и требует включения "
"[member EditorExportPlatformAndroid.gradle_build/use_gradle_build]."

msgid ""
"Virtual method to be overridden by the user. This is called to retrieve the "
"local paths of the Android libraries archive (AAR) files provided by this "
"plugin.\n"
"[b]Note:[/b] Relative paths [b]must[/b] be relative to Godot's [code]res://"
"addons/[/code] directory. For example, an AAR file located under [code]res://"
"addons/hello_world_plugin/HelloWorld.release.aar[/code] can be returned as an "
"absolute path using [code]res://addons/hello_world_plugin/"
"HelloWorld.release.aar[/code] or a relative path using "
"[code]hello_world_plugin/HelloWorld.release.aar[/code].\n"
"[b]Note:[/b] Only supported on Android and requires [member "
"EditorExportPlatformAndroid.gradle_build/use_gradle_build] to be enabled."
msgstr ""
"Виртуальный метод, который должен быть переопределен пользователем. Он "
"вызывается для получения локальных путей к файлам архива библиотек Android "
"(AAR), предоставляемым этим плагином.\n"
"[b]Примечание:[/b] Относительные пути [b]должны[/b] быть относительными к "
"каталогу Godot [code]res://addons/[/code]. Например, файл AAR, расположенный "
"в [code]res://addons/hello_world_plugin/HelloWorld.release.aar[/code], может "
"быть возвращен как абсолютный путь с помощью [code]res://addons/"
"hello_world_plugin/HelloWorld.release.aar[/code] или относительный путь с "
"помощью [code]hello_world_plugin/HelloWorld.release.aar[/code].\n"
"[b]Примечание:[/b] Поддерживается только на Android и требует включения "
"[member EditorExportPlatformAndroid.gradle_build/use_gradle_build]."

msgid ""
"Virtual method to be overridden by the user. This is used at export time to "
"update the contents of the [code]activity[/code] element in the generated "
"Android manifest.\n"
"[b]Note:[/b] Only supported on Android and requires [member "
"EditorExportPlatformAndroid.gradle_build/use_gradle_build] to be enabled."
msgstr ""
"Виртуальный метод, который должен быть переопределен пользователем. "
"Используется во время экспорта для обновления содержимого элемента "
"[code]activity[/code] в сгенерированном манифесте Android.\n"
"[b]Примечание:[/b] Поддерживается только на Android и требует включения "
"[member EditorExportPlatformAndroid.gradle_build/use_gradle_build]."

msgid ""
"Virtual method to be overridden by the user. This is used at export time to "
"update the contents of the [code]application[/code] element in the generated "
"Android manifest.\n"
"[b]Note:[/b] Only supported on Android and requires [member "
"EditorExportPlatformAndroid.gradle_build/use_gradle_build] to be enabled."
msgstr ""
"Виртуальный метод, который должен быть переопределен пользователем. "
"Используется во время экспорта для обновления содержимого элемента "
"[code]application[/code] в сгенерированном манифесте Android.\n"
"[b]Примечание:[/b] Поддерживается только на Android и требует включения "
"[member EditorExportPlatformAndroid.gradle_build/use_gradle_build]."

msgid ""
"Virtual method to be overridden by the user. This is used at export time to "
"update the contents of the [code]manifest[/code] element in the generated "
"Android manifest.\n"
"[b]Note:[/b] Only supported on Android and requires [member "
"EditorExportPlatformAndroid.gradle_build/use_gradle_build] to be enabled."
msgstr ""
"Виртуальный метод, который должен быть переопределен пользователем. "
"Используется во время экспорта для обновления содержимого элемента "
"[code]manifest[/code] в сгенерированном манифесте Android.\n"
"[b]Примечание:[/b] Поддерживается только на Android и требует включения "
"[member EditorExportPlatformAndroid.gradle_build/use_gradle_build]."

msgid ""
"Return a hash based on the configuration passed (for both scenes and "
"resources). This helps keep separate caches for separate export "
"configurations.\n"
"Implementing this method is required if [method _begin_customize_resources] "
"returns [code]true[/code]."
msgstr ""
"Возвращает хэш на основе переданной конфигурации (как для сцен, так и для "
"ресурсов). Это помогает сохранять отдельные кэши для отдельных конфигураций "
"экспорта.\n"
"Реализация этого метода требуется, если [method _begin_customize_resources] "
"возвращает [code]true[/code]."

msgid ""
"Return a [PackedStringArray] of additional features this preset, for the "
"given [param platform], should have."
msgstr ""
"Возвращает [PackedStringArray] дополнительных функций, которые должен иметь "
"этот пресет для заданной [param platform]."

msgid ""
"Validates [param option] and returns the visibility for the specified [param "
"platform]. The default implementation returns [code]true[/code] for all "
"options."
msgstr ""
"Проверяет [param option] и возвращает видимость для указанной [param "
"platform]. Реализация по умолчанию возвращает [code]true[/code] для всех "
"опций."

msgid ""
"Check the requirements for the given [param option] and return a non-empty "
"warning string if they are not met.\n"
"[b]Note:[/b] Use [method get_option] to check the value of the export options."
msgstr ""
"Проверьте требования для заданного [param option] и верните непустую строку "
"предупреждения, если они не выполнены.\n"
"[b]Примечание:[/b] Используйте [method get_option] для проверки значения "
"параметров экспорта."

msgid ""
"Return a list of export options that can be configured for this export "
"plugin.\n"
"Each element in the return value is a [Dictionary] with the following keys:\n"
"- [code]option[/code]: A dictionary with the structure documented by [method "
"Object.get_property_list], but all keys are optional.\n"
"- [code]default_value[/code]: The default value for this option.\n"
"- [code]update_visibility[/code]: An optional boolean value. If set to "
"[code]true[/code], the preset will emit [signal Object.property_list_changed] "
"when the option is changed."
msgstr ""
"Верните список параметров экспорта, которые можно настроить для этого плагина "
"экспорта.\n"
"Каждый элемент в возвращаемом значении — это [Dictionary] со следующими "
"ключами:\n"
"- [code]option[/code]: словарь со структурой, задокументированной [method "
"Object.get_property_list], но все ключи являются необязательными.\n"
"- [code]default_value[/code]: значение по умолчанию для этого параметра.\n"
"- [code]update_visibility[/code]: необязательное логическое значение. Если "
"установлено значение [code]true[/code], предустановка выдаст [signal "
"Object.property_list_changed] при изменении параметра."

msgid ""
"Return a [Dictionary] of override values for export options, that will be "
"used instead of user-provided values. Overridden options will be hidden from "
"the user interface.\n"
"[codeblock]\n"
"class MyExportPlugin extends EditorExportPlugin:\n"
"\tfunc _get_name() -> String:\n"
"\t\treturn \"MyExportPlugin\"\n"
"\n"
"\tfunc _supports_platform(platform) -> bool:\n"
"\t\tif platform is EditorExportPlatformPC:\n"
"\t\t\t# Run on all desktop platforms including Windows, MacOS and Linux.\n"
"\t\t\treturn true\n"
"\t\treturn false\n"
"\n"
"\tfunc _get_export_options_overrides(platform) -> Dictionary:\n"
"\t\t# Override \"Embed PCK\" to always be enabled.\n"
"\t\treturn {\n"
"\t\t\t\"binary_format/embed_pck\": true,\n"
"\t\t}\n"
"[/codeblock]"
msgstr ""
"Возвращает [Dictionary] переопределенных значений для параметров экспорта, "
"которые будут использоваться вместо значений, предоставленных пользователем. "
"Переопределенные параметры будут скрыты из пользовательского интерфейса.\n"
"[codeblock]\n"
"class MyExportPlugin extends EditorExportPlugin:\n"
"\tfunc _get_name() -> String:\n"
"\t\treturn \"MyExportPlugin\"\n"
"\n"
"\tfunc _supports_platform(platform) -> bool:\n"
"\t\tif platform is EditorExportPlatformPC:\n"
"\t\t\t# Работает на всех настольных платформах, включая Windows, MacOS and "
"Linux.\n"
"\t\t\treturn true\n"
"\t\treturn false\n"
"\n"
"\tfunc _get_export_options_overrides(platform) -> Dictionary:\n"
"\t\t# Переопределите «Встроить PCK», чтобы он был всегда включен.\n"
"\t\treturn {\n"
"\t\t\t\"binary_format/embed_pck\": true,\n"
"\t\t}\n"
"[/codeblock]"

msgid ""
"Return the name identifier of this plugin (for future identification by the "
"exporter). The plugins are sorted by name before exporting.\n"
"Implementing this method is required."
msgstr ""
"Верните идентификатор имени этого плагина (для будущей идентификации "
"экспортером). Плагины сортируются по имени перед экспортом.\n"
"Требуется реализация этого метода."

msgid ""
"Return [code]true[/code] if the result of [method _get_export_options] has "
"changed and the export options of the preset corresponding to [param "
"platform] should be updated."
msgstr ""
"Верните [code]true[/code], если результат [method _get_export_options] "
"изменился и параметры экспорта предустановки, соответствующей [param "
"platform], должны быть обновлены."

msgid ""
"Return [code]true[/code] if the plugin supports the given [param platform]."
msgstr ""
"Верните [code]true[/code], если плагин поддерживает указанную [param "
"platform]."

msgid ""
"Provide access to the Android prebuilt manifest and allows the plugin to "
"modify it if needed.\n"
"Implementers of this virtual method should take the binary manifest data from "
"[param manifest_data], copy it, modify it, and then return it with the "
"modifications.\n"
"If no modifications are needed, then an empty [PackedByteArray] should be "
"returned."
msgstr ""
"Предоставьте доступ к предварительно созданному манифесту Android и позвольте "
"плагину изменять его при необходимости.\n"
"Разработчики этого виртуального метода должны взять двоичные данные манифеста "
"из [param manifest_data], скопировать их, изменить и затем вернуть с "
"изменениями.\n"
"Если изменения не требуются, то следует вернуть пустой [PackedByteArray]."

msgid ""
"Adds an Apple embedded platform bundle file from the given [param path] to "
"the exported project."
msgstr ""
"Добавляет файл пакета встроенной платформы Apple из указанного [param path] в "
"экспортированный проект."

msgid ""
"Adds C++ code to the Apple embedded platform export. The final code is "
"created from the code appended by each active export plugin."
msgstr ""
"Добавляет код C++ к экспорту встроенной платформы Apple. Окончательный код "
"создается из кода, добавленного каждым активным плагином экспорта."

msgid ""
"Adds a dynamic library (*.dylib, *.framework) to the Linking Phase in the "
"Apple embedded platform's Xcode project and embeds it into the resulting "
"binary.\n"
"[b]Note:[/b] For static libraries (*.a), this works in the same way as "
"[method add_apple_embedded_platform_framework].\n"
"[b]Note:[/b] This method should not be used for System libraries as they are "
"already present on the device."
msgstr ""
"Добавляет динамическую библиотеку (*.dylib, *.framework) в фазу компоновки в "
"проекте Xcode встроенной платформы Apple и встраивает ее в полученный "
"двоичный файл.\n"
"[b]Примечание:[/b] Для статических библиотек (*.a) это работает так же, как "
"[method add_apple_embedded_platform_framework].\n"
"[b]Примечание:[/b] Этот метод не следует использовать для системных "
"библиотек, поскольку они уже присутствуют на устройстве."

msgid ""
"Adds a static library (*.a) or a dynamic library (*.dylib, *.framework) to "
"the Linking Phase to the Apple embedded platform's Xcode project."
msgstr ""
"Добавляет статическую библиотеку (*.a) или динамическую библиотеку (*.dylib, "
"*.framework) на этапе компоновки в проект Xcode встраиваемой платформы Apple."

msgid "Adds linker flags for the Apple embedded platform export."
msgstr "Добавляет флаги компоновщика для экспорта встроенной платформы Apple."

msgid ""
"Adds additional fields to the Apple embedded platform's project Info.plist "
"file."
msgstr ""
"Добавляет дополнительные поля в файл Info.plist проекта встроенной платформы "
"Apple."

msgid ""
"Adds a static library from the given [param path] to the Apple embedded "
"platform project."
msgstr ""
"Добавляет статическую библиотеку из указанного [param path] в проект "
"встроенной платформы Apple."

msgid ""
"Adds a custom file to be exported. [param path] is the virtual path that can "
"be used to load the file, [param file] is the binary data of the file.\n"
"When called inside [method _export_file] and [param remap] is [code]true[/"
"code], the current file will not be exported, but instead remapped to this "
"custom file. [param remap] is ignored when called in other places.\n"
"[param file] will not be imported, so consider using [method "
"_customize_resource] to remap imported resources."
msgstr ""
"Добавляет пользовательский файл для экспорта. [param path] — это виртуальный "
"путь, который можно использовать для загрузки файла, [param file] — это "
"двоичные данные файла.\n"
"При вызове внутри [method _export_file] и [param remap] — это [code]true[/"
"code], текущий файл не будет экспортирован, а вместо этого будет переназначен "
"на этот пользовательский файл. [param remap] игнорируется при вызове в других "
"местах.\n"
"[param file] не будет импортирован, поэтому рассмотрите возможность "
"использования [method _customize_resource] для переназначения импортированных "
"ресурсов."

msgid "Use [method add_apple_embedded_platform_bundle_file] instead."
msgstr ""
"Вместо этого используйте [method add_apple_embedded_platform_bundle_file]."

msgid ""
"Adds an iOS bundle file from the given [param path] to the exported project."
msgstr ""
"Добавляет файл пакета iOS из указанного [param path] в экспортированный "
"проект."

msgid "Use [method add_apple_embedded_platform_cpp_code] instead."
msgstr "Вместо этого используйте [method add_apple_embedded_platform_cpp_code]."

msgid ""
"Adds C++ code to the iOS export. The final code is created from the code "
"appended by each active export plugin."
msgstr ""
"Добавляет код C++ в экспорт iOS. Окончательный код создается из кода, "
"добавленного каждым активным плагином экспорта."

msgid "Use [method add_apple_embedded_platform_embedded_framework] instead."
msgstr ""
"Вместо этого используйте [method "
"add_apple_embedded_platform_embedded_framework]."

msgid ""
"Adds a dynamic library (*.dylib, *.framework) to Linking Phase in iOS's Xcode "
"project and embeds it into resulting binary.\n"
"[b]Note:[/b] For static libraries (*.a), this works the in same way as "
"[method add_apple_embedded_platform_framework].\n"
"[b]Note:[/b] This method should not be used for System libraries as they are "
"already present on the device."
msgstr ""
"Добавляет динамическую библиотеку (*.dylib, *.framework) в фазу компоновки в "
"проекте iOS Xcode и встраивает ее в результирующий двоичный файл.\n"
"[b]Примечание:[/b] Для статических библиотек (*.a) это работает так же, как "
"[method add_apple_embedded_platform_framework].\n"
"[b]Примечание:[/b] Этот метод не следует использовать для системных "
"библиотек, поскольку они уже присутствуют на устройстве."

msgid "Use [method add_apple_embedded_platform_framework] instead."
msgstr ""
"Вместо этого используйте [method add_apple_embedded_platform_framework]."

msgid ""
"Adds a static library (*.a) or a dynamic library (*.dylib, *.framework) to "
"the Linking Phase to the iOS Xcode project."
msgstr ""
"Добавляет статическую библиотеку (*.a) или динамическую библиотеку (*.dylib, "
"*.framework) на этапе компоновки в проект iOS Xcode."

msgid "Use [method add_apple_embedded_platform_linker_flags] instead."
msgstr ""
"Вместо этого используйте [method add_apple_embedded_platform_linker_flags]."

msgid "Adds linker flags for the iOS export."
msgstr "Добавляет флаги компоновщика для экспорта iOS."

msgid "Use [method add_apple_embedded_platform_plist_content] instead."
msgstr ""
"Вместо этого используйте [method add_apple_embedded_platform_plist_content]."

msgid "Adds additional fields to the iOS project Info.plist file."
msgstr "Добавляет дополнительные поля в файл Info.plist проекта iOS."

msgid "Use [method add_apple_embedded_platform_project_static_lib] instead."
msgstr ""
"Вместо этого используйте [method "
"add_apple_embedded_platform_project_static_lib]."

msgid "Adds a static library from the given [param path] to the iOS project."
msgstr ""
"Добавляет статическую библиотеку из указанного [param path] в проект iOS."

msgid ""
"Adds file or directory matching [param path] to [code]PlugIns[/code] "
"directory of macOS app bundle.\n"
"[b]Note:[/b] This is useful only for macOS exports."
msgstr ""
"Добавляет файл или каталог, соответствующий [param path], в каталог "
"[code]PlugIns[/code] пакета приложений macOS.\n"
"[b]Примечание:[/b] Это полезно только для экспорта macOS."

msgid ""
"Adds a shared object or a directory containing only shared objects with the "
"given [param tags] and destination [param path].\n"
"[b]Note:[/b] In case of macOS exports, those shared objects will be added to "
"[code]Frameworks[/code] directory of app bundle.\n"
"In case of a directory code-sign will error if you place non code object in "
"directory."
msgstr ""
"Добавляет общий объект или каталог, содержащий только общие объекты с "
"заданными [param tags] и назначением [param path].\n"
"[b]Примечание:[/b] В случае экспорта macOS эти общие объекты будут добавлены "
"в каталог [code]Frameworks[/code] пакета приложения.\n"
"В случае кода каталога возникнет ошибка, если вы поместите некодовый объект в "
"каталог."

msgid "Returns currently used export platform."
msgstr "Возвращает используемую в данный момент экспортную платформу."

msgid "Returns currently used export preset."
msgstr "Возвращает текущий используемый пресет экспорта."

msgid ""
"Returns the current value of an export option supplied by [method "
"_get_export_options]."
msgstr ""
"Возвращает текущее значение параметра экспорта, предоставленного [method "
"_get_export_options]."

msgid ""
"To be called inside [method _export_file]. Skips the current file, so it's "
"not included in the export."
msgstr ""
"Вызывается внутри [method _export_file]. Пропускает текущий файл, поэтому он "
"не включается в экспорт."

msgid "Export preset configuration."
msgstr "Экспорт предустановленной конфигурации."

msgid ""
"Represents the configuration of an export preset, as created by the editor's "
"export dialog. An [EditorExportPreset] instance is intended to be used a read-"
"only configuration passed to the [EditorExportPlatform] methods when "
"exporting the project."
msgstr ""
"Представляет конфигурацию шаблона экспорта, созданную в диалоговом окне "
"экспорта редактора. Экземпляр [EditorExportPreset] предназначен для "
"использования в качестве конфигурации, доступной только для чтения, "
"передаваемой методам [EditorExportPlatform] при экспорте проекта."

msgid ""
"Returns [code]true[/code] if the \"Advanced\" toggle is enabled in the export "
"dialog."
msgstr ""
"Возвращает [code]true[/code], если в диалоговом окне экспорта включен "
"переключатель «Дополнительно»."

msgid ""
"Returns a comma-separated list of custom features added to this preset, as a "
"string. See [url=$DOCS_URL/tutorials/export/feature_tags.html]Feature tags[/"
"url] in the documentation for more information."
msgstr ""
"Возвращает список пользовательских функций, добавленных к этому шаблону, "
"через запятую, в виде строки. Подробнее см. в разделе [url=$DOCS_URL/"
"tutorials/export/feature_tags.html]Теги функций[/url] в документации."

msgid ""
"Returns a dictionary of files selected in the \"Resources\" tab of the export "
"dialog. The dictionary's keys are file paths, and its values are the "
"corresponding export modes: [code]\"strip\"[/code], [code]\"keep\"[/code], or "
"[code]\"remove\"[/code]. See also [method get_file_export_mode]."
msgstr ""
"Возвращает словарь файлов, выбранных на вкладке «Ресурсы» диалогового окна "
"экспорта. Ключами словаря являются пути к файлам, а значениями — "
"соответствующие режимы экспорта: [code]\"strip\"[/code], [code]\"keep\"[/"
"code] или [code]\"remove\"[/code]. См. также [method get_file_export_mode]."

msgid ""
"Returns the number of files selected in the \"Resources\" tab of the export "
"dialog."
msgstr ""
"Возвращает количество файлов, выбранных на вкладке «Ресурсы» диалогового окна "
"экспорта."

msgid ""
"Returns [code]true[/code] if PCK directory encryption is enabled in the "
"export dialog."
msgstr ""
"Возвращает [code]true[/code], если в диалоговом окне экспорта включено "
"шифрование каталога PCK."

msgid ""
"Returns [code]true[/code] if PCK encryption is enabled in the export dialog."
msgstr ""
"Возвращает [code]true[/code], если в диалоговом окне экспорта включено "
"шифрование PCK."

msgid "Returns file filters to exclude during PCK encryption."
msgstr ""
"Возвращает фильтры файлов, которые следует исключить при шифровании PCK."

msgid "Returns file filters to include during PCK encryption."
msgstr ""
"Возвращает фильтры файлов, которые следует включить во время шифрования PCK."

msgid "Returns PCK encryption key."
msgstr "Возвращает ключ шифрования PCK."

msgid "Returns file filters to exclude during export."
msgstr "Возвращает фильтры файлов, которые следует исключить при экспорте."

msgid ""
"Returns export file filter mode selected in the \"Resources\" tab of the "
"export dialog."
msgstr ""
"Возвращает режим фильтра файла экспорта, выбранный на вкладке «Ресурсы» "
"диалогового окна экспорта."

msgid "Returns export target path."
msgstr "Возвращает целевой путь экспорта."

msgid "Returns file export mode for the specified file."
msgstr "Возвращает режим экспорта файла для указанного файла."

msgid "Returns array of files to export."
msgstr "Возвращает массив файлов для экспорта."

msgid "Returns file filters to include during export."
msgstr "Возвращает фильтры файлов для включения во время экспорта."

msgid ""
"Returns export option value or value of environment variable if it is set."
msgstr ""
"Возвращает значение параметра экспорта или значение переменной среды, если "
"она задана."

msgid "Returns the list of packs on which to base a patch export on."
msgstr ""
"Возвращает список пакетов, на основе которых будет выполнен экспорт патча."

msgid "Returns this export preset's name."
msgstr "Возвращает имя этого экспортного пресета."

msgid ""
"Returns the value of the setting identified by [param name] using export "
"preset feature tag overrides instead of current OS features."
msgstr ""
"Возвращает значение параметра, идентифицированного [param name], используя "
"переопределения тега предустановленных функций экспорта вместо текущих "
"функций ОС."

msgid ""
"Returns the export mode used by GDScript files. [code]0[/code] for \"Text\", "
"[code]1[/code] for \"Binary tokens\", and [code]2[/code] for \"Compressed "
"binary tokens (smaller files)\"."
msgstr ""
"Возвращает режим экспорта, используемый файлами GDScript. [code]0[/code] для "
"«Текста», [code]1[/code] для «Двоичных токенов» и [code]2[/code] для «Сжатых "
"двоичных токенов (файлы меньшего размера)»."

msgid ""
"Returns the preset's version number, or fall back to the [member "
"ProjectSettings.application/config/version] project setting if set to an "
"empty string.\n"
"If [param windows_version] is [code]true[/code], formats the returned version "
"number to be compatible with Windows executable metadata."
msgstr ""
"Возвращает номер версии предустановки или возвращается к настройке проекта "
"[member ProjectSettings.application/config/version], если задана пустая "
"строка.\n"
"Если [param windows_version] равен [code]true[/code], форматирует "
"возвращаемый номер версии для совместимости с метаданными исполняемого файла "
"Windows."

msgid ""
"Returns [code]true[/code] if the preset has the property named [param "
"property]."
msgstr ""
"Возвращает [code]true[/code], если у пресета есть свойство с именем [param "
"property]."

msgid ""
"Returns [code]true[/code] if the file at the specified [param path] will be "
"exported."
msgstr ""
"Возвращает [code]true[/code], если файл по указанному [param path] будет "
"экспортирован."

msgid ""
"Returns [code]true[/code] if the dedicated server export mode is selected in "
"the export dialog."
msgstr ""
"Возвращает [code]true[/code], если в диалоговом окне экспорта выбран режим "
"экспорта выделенного сервера."

msgid ""
"Returns [code]true[/code] if the \"Runnable\" toggle is enabled in the export "
"dialog."
msgstr ""
"Возвращает [code]true[/code], если в диалоговом окне экспорта включен "
"переключатель «Работающий» (Runnable)."

msgid ""
"An editor feature profile which can be used to disable specific features."
msgstr ""
"Профиль функций редактора, который можно использовать для отключения "
"определенных функций."

msgid ""
"An editor feature profile can be used to disable specific features of the "
"Godot editor. When disabled, the features won't appear in the editor, which "
"makes the editor less cluttered. This is useful in education settings to "
"reduce confusion or when working in a team. For example, artists and level "
"designers could use a feature profile that disables the script editor to "
"avoid accidentally making changes to files they aren't supposed to edit.\n"
"To manage editor feature profiles visually, use [b]Editor > Manage Feature "
"Profiles...[/b] at the top of the editor window."
msgstr ""
"Профиль функций редактора можно использовать для отключения определенных "
"функций редактора Godot. При отключении функции не будут отображаться в "
"редакторе, что делает редактор менее загроможденным. Это полезно в "
"образовательных настройках для уменьшения путаницы или при работе в команде. "
"Например, художники и дизайнеры уровней могут использовать профиль функций, "
"который отключает редактор сценариев, чтобы избежать случайного внесения "
"изменений в файлы, которые они не должны редактировать.\n"
"Для визуального управления профилями функций редактора используйте "
"[b]Редактор > Управление профилями функций...[/b] в верхней части окна "
"редактора."

msgid "Returns the specified [param feature]'s human-readable name."
msgstr "Возвращает понятное человеку имя указанного [param feature]."

msgid ""
"Returns [code]true[/code] if the class specified by [param class_name] is "
"disabled. When disabled, the class won't appear in the Create New Node dialog."
msgstr ""
"Возвращает [code]true[/code], если класс, указанный [param class_name], "
"отключен. Если отключен, класс не будет отображаться в диалоговом окне Create "
"New Node."

msgid ""
"Returns [code]true[/code] if editing for the class specified by [param "
"class_name] is disabled. When disabled, the class will still appear in the "
"Create New Node dialog but the Inspector will be read-only when selecting a "
"node that extends the class."
msgstr ""
"Возвращает [code]true[/code], если редактирование для класса, указанного "
"[param class_name], отключено. Если отключено, класс все равно будет "
"отображаться в диалоговом окне Create New Node, но Inspector будет доступен "
"только для чтения при выборе узла, который расширяет класс."

msgid ""
"Returns [code]true[/code] if [param property] is disabled in the class "
"specified by [param class_name]. When a property is disabled, it won't appear "
"in the Inspector when selecting a node that extends the class specified by "
"[param class_name]."
msgstr ""
"Возвращает [code]true[/code], если [param property] отключено в классе, "
"указанном [param class_name]. Если свойство отключено, оно не будет "
"отображаться в инспекторе при выборе узла, который расширяет класс, указанный "
"[param class_name]."

msgid ""
"Returns [code]true[/code] if the [param feature] is disabled. When a feature "
"is disabled, it will disappear from the editor entirely."
msgstr ""
"Возвращает [code]true[/code], если [param feature] отключена. Когда функция "
"отключена, она полностью исчезнет из редактора."

msgid ""
"Loads an editor feature profile from a file. The file must follow the JSON "
"format obtained by using the feature profile manager's [b]Export[/b] button "
"or the [method save_to_file] method.\n"
"[b]Note:[/b] Feature profiles created via the user interface are loaded from "
"the [code]feature_profiles[/code] directory, as a file with the "
"[code].profile[/code] extension. The editor configuration folder can be found "
"by using [method EditorPaths.get_config_dir]."
msgstr ""
"Загружает профиль функций редактора из файла. Файл должен соответствовать "
"формату JSON, полученному с помощью кнопки [b]Export[/b] менеджера профилей "
"функций или метода [method save_to_file].\n"
"[b]Примечание:[/b] Профили функций, созданные через пользовательский "
"интерфейс, загружаются из каталога [code]feature_profiles[/code] в виде файла "
"с расширением [code].profile[/code]. Папку конфигурации редактора можно найти "
"с помощью [method EditorPaths.get_config_dir]."

msgid ""
"Saves the editor feature profile to a file in JSON format. It can then be "
"imported using the feature profile manager's [b]Import[/b] button or the "
"[method load_from_file] method.\n"
"[b]Note:[/b] Feature profiles created via the user interface are saved in the "
"[code]feature_profiles[/code] directory, as a file with the [code].profile[/"
"code] extension. The editor configuration folder can be found by using "
"[method EditorPaths.get_config_dir]."
msgstr ""
"Сохраняет профиль функций редактора в файл в формате JSON. Затем его можно "
"импортировать с помощью кнопки [b]Import[/b] менеджера профилей функций или "
"метода [method load_from_file].\n"
"[b]Примечание:[/b] Профили функций, созданные через пользовательский "
"интерфейс, сохраняются в каталоге [code]feature_profiles[/code] в виде файла "
"с расширением [code].profile[/code]. Папку конфигурации редактора можно найти "
"с помощью [method EditorPaths.get_config_dir]."

msgid ""
"If [param disable] is [code]true[/code], disables the class specified by "
"[param class_name]. When disabled, the class won't appear in the Create New "
"Node dialog."
msgstr ""
"Если [param disable] равно [code]true[/code], отключает класс, указанный "
"[param class_name]. Если отключено, класс не будет отображаться в диалоговом "
"окне «Создать новый узел»."

msgid ""
"If [param disable] is [code]true[/code], disables editing for the class "
"specified by [param class_name]. When disabled, the class will still appear "
"in the Create New Node dialog but the Inspector will be read-only when "
"selecting a node that extends the class."
msgstr ""
"Если [param disable] равно [code]true[/code], отключает редактирование для "
"класса, указанного [param class_name]. Если отключено, класс все равно будет "
"отображаться в диалоговом окне «Создать новый узел», но инспектор будет "
"доступен только для чтения при выборе узла, расширяющего класс."

msgid ""
"If [param disable] is [code]true[/code], disables editing for [param "
"property] in the class specified by [param class_name]. When a property is "
"disabled, it won't appear in the Inspector when selecting a node that extends "
"the class specified by [param class_name]."
msgstr ""
"Если [param disable] равно [code]true[/code], отключает редактирование для "
"[param property] в классе, указанном [param class_name]. Когда свойство "
"отключено, оно не будет отображаться в инспекторе при выборе узла, который "
"расширяет класс, указанный [param class_name]."

msgid ""
"If [param disable] is [code]true[/code], disables the editor feature "
"specified in [param feature]. When a feature is disabled, it will disappear "
"from the editor entirely."
msgstr ""
"Если [param disable] равно [code]true[/code], отключает функцию редактора, "
"указанную в [param feature]. Когда функция отключена, она полностью исчезает "
"из редактора."

msgid ""
"The 3D editor. If this feature is disabled, the 3D editor won't display but "
"3D nodes will still display in the Create New Node dialog."
msgstr ""
"3D-редактор. Если эта функция отключена, 3D-редактор не будет отображаться, "
"но 3D-узлы будут по-прежнему отображаться в диалоговом окне «Создать новый "
"узел»."

msgid ""
"The Script tab, which contains the script editor and class reference browser. "
"If this feature is disabled, the Script tab won't display."
msgstr ""
"Вкладка Script, которая содержит редактор скриптов и браузер ссылок на "
"классы. Если эта функция отключена, вкладка Script не будет отображаться."

msgid ""
"The AssetLib tab. If this feature is disabled, the AssetLib tab won't display."
msgstr ""
"Вкладка AssetLib. Если эта функция отключена, вкладка AssetLib не будет "
"отображаться."

msgid ""
"Scene tree editing. If this feature is disabled, the Scene tree dock will "
"still be visible but will be read-only."
msgstr ""
"Редактирование дерева сцены. Если эта функция отключена, док-станция дерева "
"сцены будет по-прежнему видна, но будет доступна только для чтения."

msgid ""
"The Node dock. If this feature is disabled, signals and groups won't be "
"visible and modifiable from the editor."
msgstr ""
"Док-станция Node. Если эта функция отключена, сигналы и группы не будут видны "
"и не будут доступны для изменения из редактора."

msgid ""
"The FileSystem dock. If this feature is disabled, the FileSystem dock won't "
"be visible."
msgstr ""
"Док FileSystem. Если эта функция отключена, док FileSystem не будет виден."

msgid ""
"The Import dock. If this feature is disabled, the Import dock won't be "
"visible."
msgstr "Док импорта. Если эта функция отключена, док импорта не будет виден."

msgid ""
"The History dock. If this feature is disabled, the History dock won't be "
"visible."
msgstr "Док истории. Если эта функция отключена, док истории не будет виден."

msgid ""
"The Game tab, which allows embedding the game window and selecting nodes by "
"clicking inside of it. If this feature is disabled, the Game tab won't "
"display."
msgstr ""
"Вкладка «Игра», которая позволяет встраивать игровое окно и выбирать узлы, "
"щелкая внутри него. Если эта функция отключена, вкладка «Игра» не будет "
"отображаться."

msgid "A modified version of [FileDialog] used by the editor."
msgstr "Модифицированная версия [FileDialog], используемая редактором."

msgid ""
"[EditorFileDialog] is an enhanced version of [FileDialog] available only to "
"editor plugins. Additional features include list of favorited/recent files "
"and the ability to see files as thumbnails grid instead of list.\n"
"Unlike [FileDialog], [EditorFileDialog] does not have a property for using "
"native dialogs. Instead, native dialogs can be enabled globally via the "
"[member EditorSettings.interface/editor/use_native_file_dialogs] editor "
"setting. They are also enabled automatically when running in sandbox (e.g. on "
"macOS)."
msgstr ""
"[EditorFileDialog] — это расширенная версия [FileDialog], доступная только "
"для плагинов редактора. Дополнительные функции включают список избранных/"
"недавних файлов и возможность просмотра файлов в виде сетки миниатюр вместо "
"списка.\n"
"В отличие от [FileDialog], [EditorFileDialog] не имеет свойства для "
"использования собственных диалогов. Вместо этого собственные диалоги можно "
"включить глобально с помощью настройки редактора [member "
"EditorSettings.interface/editor/use_native_file_dialogs]. Они также "
"включаются автоматически при запуске в песочнице (например, в macOS)."

msgid ""
"Adds a comma-separated file name [param filter] option to the "
"[EditorFileDialog] with an optional [param description], which restricts what "
"files can be picked.\n"
"A [param filter] should be of the form [code]\"filename.extension\"[/code], "
"where filename and extension can be [code]*[/code] to match any string. "
"Filters starting with [code].[/code] (i.e. empty filenames) are not allowed.\n"
"For example, a [param filter] of [code]\"*.tscn, *.scn\"[/code] and a [param "
"description] of [code]\"Scenes\"[/code] results in filter text \"Scenes "
"(*.tscn, *.scn)\"."
msgstr ""
"Добавляет параметр [param filter] с именем файла, разделённым запятыми, в "
"[EditorFileDialog] с необязательным параметром [param description], который "
"ограничивает выбор файлов.\n"
"[param filter] должен иметь вид [code]\"имя_файла.расширение\"[/code], где "
"имя_файла и расширение могут быть [code]*[/code] для соответствия любой "
"строке. Фильтры, начинающиеся с [code].[/code] (т.е. пустые имена файлов), не "
"допускаются.\n"
"Например, [param filter] со значением [code]\"*.tscn, *.scn\"[/code] и [param "
"description] со значением [code]\"Сцены\"[/code] приведут к появлению текста "
"фильтра \"Сцены (*.tscn, *.scn)\"."

msgid ""
"Adds an additional [OptionButton] to the file dialog. If [param values] is "
"empty, a [CheckBox] is added instead.\n"
"[param default_value_index] should be an index of the value in the [param "
"values]. If [param values] is empty it should be either [code]1[/code] "
"(checked), or [code]0[/code] (unchecked)."
msgstr ""
"Добавляет дополнительный [OptionButton] в диалоговое окно файла. Если [param "
"values] пусто, вместо него добавляется [CheckBox].\n"
"[param default_value_index] должен быть индексом значения в [param values]. "
"Если [param values] пусто, он должен быть либо [code]1[/code] (отмечено), "
"либо [code]0[/code] (не отмечено)."

msgid ""
"Adds the given [param menu] to the side of the file dialog with the given "
"[param title] text on top. Only one side menu is allowed."
msgstr ""
"Добавляет заданное [param menu] в сторону диалога файла с заданным текстом "
"[param title] сверху. Разрешено только одно боковое меню."

msgid "Clear the filter for file names."
msgstr "Очистить фильтр по именам файлов."

msgid "Removes all filters except for \"All Files (*.*)\"."
msgstr "Удаляет все фильтры, кроме \"All Files (*.*)\"."

msgid "Returns the value of the filter for file names."
msgstr "Возвращает значение фильтра для имен файлов."

msgid ""
"Returns the LineEdit for the selected file.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Возвращает LineEdit для выбранного файла.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member CanvasItem.visible]."

msgid ""
"Returns the default value index of the [OptionButton] or [CheckBox] with "
"index [param option]."
msgstr ""
"Возвращает индекс значения по умолчанию для [OptionButton] или [CheckBox] с "
"индексом [param option]."

msgid ""
"Returns the name of the [OptionButton] or [CheckBox] with index [param "
"option]."
msgstr "Возвращает имя [OptionButton] или [CheckBox] с индексом [param option]."

msgid ""
"Returns an array of values of the [OptionButton] with index [param option]."
msgstr "Возвращает массив значений [OptionButton] с индексом [param option]."

msgid ""
"Returns a [Dictionary] with the selected values of the additional "
"[OptionButton]s and/or [CheckBox]es. [Dictionary] keys are names and values "
"are selected value indices."
msgstr ""
"Возвращает [Dictionary] с выбранными значениями дополнительных [OptionButton] "
"и/или [CheckBox]. Ключи [Dictionary] — это имена, а значения — это выбранные "
"индексы значений."

msgid ""
"Returns the [VBoxContainer] used to display the file system.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Возвращает [VBoxContainer], используемый для отображения файловой системы.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member CanvasItem.visible]."

msgid ""
"Notify the [EditorFileDialog] that its view of the data is no longer "
"accurate. Updates the view contents on next view update."
msgstr ""
"Уведомить [EditorFileDialog], что его представление данных больше не является "
"точным. Обновляет содержимое представления при следующем обновлении "
"представления."

msgid ""
"Shows the [EditorFileDialog] at the default size and position for file "
"dialogs in the editor, and selects the file name if there is a current file."
msgstr ""
"Показывает [EditorFileDialog] с размером и положением по умолчанию для "
"диалоговых окон файлов в редакторе и выбирает имя файла, если есть текущий "
"файл."

msgid "Sets the value of the filter for file names."
msgstr "Устанавливает значение фильтра для имен файлов."

msgid ""
"Sets the default value index of the [OptionButton] or [CheckBox] with index "
"[param option]."
msgstr ""
"Устанавливает индекс значения по умолчанию для [OptionButton] или [CheckBox] "
"с индексом [param option]."

msgid ""
"Sets the name of the [OptionButton] or [CheckBox] with index [param option]."
msgstr "Задает имя [OptionButton] или [CheckBox] с индексом [param option]."

msgid "Sets the option values of the [OptionButton] with index [param option]."
msgstr ""
"Устанавливает значения параметров [OptionButton] с индексом [param option]."

msgid ""
"The location from which the user may select a file, including [code]res://[/"
"code], [code]user://[/code], and the local file system."
msgstr ""
"Расположение, из которого пользователь может выбрать файл, включая "
"[code]res://[/code], [code]user://[/code] и локальную файловую систему."

msgid "The currently occupied directory."
msgstr "Текущий занятый каталог."

msgid "The currently selected file."
msgstr "Текущий выбранный файл."

msgid "The file system path in the address bar."
msgstr "Путь файловой системы в адресной строке."

msgid ""
"If [code]true[/code], the [EditorFileDialog] will not warn the user before "
"overwriting files."
msgstr ""
"Если [code]true[/code], [EditorFileDialog] не будет предупреждать "
"пользователя перед перезаписью файлов."

msgid ""
"The view format in which the [EditorFileDialog] displays resources to the "
"user."
msgstr ""
"Формат представления, в котором [EditorFileDialog] отображает ресурсы "
"пользователю."

msgid "The dialog's open or save mode, which affects the selection behavior."
msgstr ""
"Режим открытия или сохранения диалогового окна, который влияет на поведение "
"выбора."

msgid ""
"The available file type filters. For example, this shows only [code].png[/"
"code] and [code].gd[/code] files: "
"[code]set_filters(PackedStringArray([\"*.png ; PNG Images\",\"*.gd ; GDScript "
"Files\"]))[/code]. Multiple file types can also be specified in a single "
"filter. [code]\"*.png, *.jpg, *.jpeg ; Supported Images\"[/code] will show "
"both PNG and JPEG files when selected."
msgstr ""
"Доступные фильтры типов файлов. Например, здесь отображаются только файлы "
"[code].png[/code] и [code].gd[/code]: "
"[code]set_filters(PackedStringArray([\"*.png ; PNG Images\",\"*.gd ; GDScript "
"Files\"]))[/code]. Несколько типов файлов также можно указать в одном "
"фильтре. [code]\"*.png, *.jpg, *.jpeg ; Поддерживаемые изображения\"[/code] "
"при выборе отобразит как файлы PNG, так и файлы JPEG."

msgid "The number of additional [OptionButton]s and [CheckBox]es in the dialog."
msgstr ""
"Количество дополнительных [OptionButton] и [CheckBox]-ов в диалоговом окне."

msgid ""
"If [code]true[/code], hidden files and directories will be visible in the "
"[EditorFileDialog]. This property is synchronized with [member "
"EditorSettings.filesystem/file_dialog/show_hidden_files]."
msgstr ""
"Если [code]true[/code], скрытые файлы и каталоги будут видны в "
"[EditorFileDialog]. Это свойство синхронизируется с [member "
"EditorSettings.filesystem/file_dialog/show_hidden_files]."

msgid "Emitted when a directory is selected."
msgstr "Выдается при выборе каталога."

msgid "Emitted when a file is selected."
msgstr "Выдается при выборе файла."

msgid "Emitted when the filter for file names changes."
msgstr "Выдается при изменении фильтра имен файлов."

msgid "Emitted when multiple files are selected."
msgstr "Выдается при выборе нескольких файлов."

msgid ""
"The [EditorFileDialog] can select only one file. Accepting the window will "
"open the file."
msgstr ""
"[EditorFileDialog] может выбрать только один файл. Принятие окна откроет файл."

msgid ""
"The [EditorFileDialog] can select multiple files. Accepting the window will "
"open all files."
msgstr ""
"[EditorFileDialog] может выбрать несколько файлов. Принятие окна откроет все "
"файлы."

msgid ""
"The [EditorFileDialog] can select only one directory. Accepting the window "
"will open the directory."
msgstr ""
"[EditorFileDialog] может выбрать только один каталог. Принятие окна откроет "
"каталог."

msgid ""
"The [EditorFileDialog] can select a file or directory. Accepting the window "
"will open it."
msgstr ""
"[EditorFileDialog] может выбрать файл или каталог. Принятие окна откроет его."

msgid ""
"The [EditorFileDialog] can select only one file. Accepting the window will "
"save the file."
msgstr ""
"[EditorFileDialog] может выбрать только один файл. Принятие окна сохранит "
"файл."

msgid ""
"The [EditorFileDialog] can only view [code]res://[/code] directory contents."
msgstr ""
"[EditorFileDialog] может просматривать только содержимое каталога [code]res://"
"[/code]."

msgid ""
"The [EditorFileDialog] can only view [code]user://[/code] directory contents."
msgstr ""
"[EditorFileDialog] может просматривать только содержимое каталога "
"[code]user://[/code]."

msgid "The [EditorFileDialog] can view the entire local file system."
msgstr "[EditorFileDialog] может просматривать всю локальную файловую систему."

msgid "The [EditorFileDialog] displays resources as thumbnails."
msgstr "[EditorFileDialog] отображает ресурсы в виде миниатюр."

msgid "The [EditorFileDialog] displays resources as a list of filenames."
msgstr "[EditorFileDialog] отображает ресурсы в виде списка имен файлов."

msgid "Resource filesystem, as the editor sees it."
msgstr "Файловая система ресурсов, как ее видит редактор."

msgid ""
"This object holds information of all resources in the filesystem, their "
"types, etc.\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_resource_filesystem]."
msgstr ""
"Этот объект содержит информацию обо всех ресурсах в файловой системе, их "
"типах и т. д.\n"
"[b]Примечание:[/b] Этот класс не следует создавать напрямую. Вместо этого "
"обращайтесь к синглтону с помощью [method "
"EditorInterface.get_resource_filesystem]."

msgid ""
"Returns the resource type of the file, given the full path. This returns a "
"string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/code], "
"[i]not[/i] a file extension such as [code]\".gd\"[/code]."
msgstr ""
"Возвращает тип ресурса файла, учитывая полный путь. Это возвращает строку, "
"например [code]\"Resource\"[/code] или [code]\"GDScript\"[/code], [i]не[/i] "
"расширение файла, например [code]\".gd\"[/code]."

msgid "Gets the root directory object."
msgstr "Получает объект корневого каталога."

msgid "Returns a view into the filesystem at [param path]."
msgstr "Возвращает представление файловой системы по адресу [param path]."

msgid "Returns the scan progress for 0 to 1 if the FS is being scanned."
msgstr "Возвращает ход сканирования от 0 до 1, если ФС сканируется."

msgid "Returns [code]true[/code] if the filesystem is being scanned."
msgstr "Возвращает [code]true[/code], если файловая система сканируется."

msgid ""
"Reimports a set of files. Call this if these files or their [code].import[/"
"code] files were directly edited by script or an external program.\n"
"If the file type changed or the file was newly created, use [method "
"update_file] or [method scan].\n"
"[b]Note:[/b] This function blocks until the import is finished. However, the "
"main loop iteration, including timers and [method Node._process], will occur "
"during the import process due to progress bar updates. Avoid calls to [method "
"reimport_files] or [method scan] while an import is in progress."
msgstr ""
"Повторно импортирует набор файлов. Вызывайте это, если эти файлы или их файлы "
"[code].import[/code] были напрямую отредактированы скриптом или внешней "
"программой.\n"
"Если тип файла изменился или файл был создан заново, используйте [method "
"update_file] или [method scan].\n"
"[b]Примечание:[/b] Эта функция блокируется до завершения импорта. Однако "
"итерация основного цикла, включая таймеры и [method Node._process], будет "
"происходить во время процесса импорта из-за обновлений индикатора выполнения. "
"Избегайте вызовов [method reimport_files] или [method scan] во время "
"выполнения импорта."

msgid "Scan the filesystem for changes."
msgstr "Сканировать файловую систему на предмет изменений."

msgid "Check if the source of any imported resource changed."
msgstr "Проверяет, не изменился ли источник импортируемого ресурса."

msgid ""
"Add a file in an existing directory, or schedule file information to be "
"updated on editor restart. Can be used to update text files saved by an "
"external program.\n"
"This will not import the file. To reimport, call [method reimport_files] or "
"[method scan] methods."
msgstr ""
"Добавьте файл в существующий каталог или запланируйте обновление информации о "
"файле при перезапуске редактора. Может использоваться для обновления "
"текстовых файлов, сохраненных внешней программой. Это не импортирует файл. \n"
"Для повторного импорта вызовите методы [method reimport_files] или [method "
"scan]."

msgid "Emitted if the filesystem changed."
msgstr "Выдается при изменении файловой системы."

msgid "Emitted if a resource is reimported."
msgstr "Вызывается при повторном импорте ресурса."

msgid "Emitted before a resource is reimported."
msgstr "Выдается перед повторным импортом ресурса."

msgid ""
"Emitted if at least one resource is reloaded when the filesystem is scanned."
msgstr ""
"Генерируется, если хотя бы один ресурс перезагружается при сканировании "
"файловой системы."

msgid "Emitted when the list of global script classes gets updated."
msgstr "Генерируется при обновлении списка глобальных классов скриптов."

msgid "Emitted if the source of any imported file changed."
msgstr "Выдается, если изменился источник импортируемого файла."

msgid "A directory for the resource filesystem."
msgstr "Каталог для файловой системы ресурсов."

msgid "A more generalized, low-level variation of the directory concept."
msgstr "Более обобщенная, низкоуровневая вариация концепции каталога."

msgid ""
"Returns the index of the directory with name [param name] or [code]-1[/code] "
"if not found."
msgstr ""
"Возвращает индекс каталога с именем [param name] или [code]-1[/code], если он "
"не найден."

msgid ""
"Returns the index of the file with name [param name] or [code]-1[/code] if "
"not found."
msgstr ""
"Возвращает индекс файла с именем [param name] или [code]-1[/code], если файл "
"не найден."

msgid "Returns the name of the file at index [param idx]."
msgstr "Возвращает имя файла по индексу [param idx]."

msgid "Returns the number of files in this directory."
msgstr "Возвращает количество файлов в этом каталоге."

msgid ""
"Returns [code]true[/code] if the file at index [param idx] imported properly."
msgstr ""
"Возвращает [code]true[/code], если файл с индексом [param idx] импортирован "
"правильно."

msgid "Returns the path to the file at index [param idx]."
msgstr "Возвращает путь к файлу по индексу [param idx]."

msgid ""
"Returns the base class of the script class defined in the file at index "
"[param idx]. If the file doesn't define a script class using the "
"[code]class_name[/code] syntax, this will return an empty string."
msgstr ""
"Возвращает базовый класс класса скрипта, определенного в файле по индексу "
"[param idx]. Если файл не определяет класс скрипта с использованием "
"синтаксиса [code]class_name[/code], будет возвращена пустая строка."

msgid ""
"Returns the name of the script class defined in the file at index [param "
"idx]. If the file doesn't define a script class using the [code]class_name[/"
"code] syntax, this will return an empty string."
msgstr ""
"Возвращает имя класса скрипта, определенного в файле по индексу [param idx]. "
"Если файл не определяет класс скрипта с использованием синтаксиса "
"[code]class_name[/code], будет возвращена пустая строка."

msgid ""
"Returns the resource type of the file at index [param idx]. This returns a "
"string such as [code]\"Resource\"[/code] or [code]\"GDScript\"[/code], "
"[i]not[/i] a file extension such as [code]\".gd\"[/code]."
msgstr ""
"Возвращает тип ресурса файла по индексу [param idx]. Это возвращает строку, "
"например [code]\"Resource\"[/code] или [code]\"GDScript\"[/code], [i]не[/i] "
"расширение файла, например [code]\".gd\"[/code]."

msgid "Returns the name of this directory."
msgstr "Возвращает имя этого каталога."

msgid ""
"Returns the parent directory for this directory or [code]null[/code] if "
"called on a directory at [code]res://[/code] or [code]user://[/code]."
msgstr ""
"Возвращает родительский каталог для данного каталога или [code]null[/code], "
"если вызывается для каталога по адресу [code]res://[/code] или [code]user://[/"
"code]."

msgid "Returns the path to this directory."
msgstr "Возвращает путь к данному каталогу."

msgid "Returns the subdirectory at index [param idx]."
msgstr "Возвращает подкаталог по индексу [param idx]."

msgid "Returns the number of subdirectories in this directory."
msgstr "Возвращает количество подкаталогов в этом каталоге."

msgid "Used to query and configure import format support."
msgstr "Используется для запроса и настройки поддержки формата импорта."

msgid ""
"This class is used to query and configure a certain import format. It is used "
"in conjunction with asset format import plugins."
msgstr ""
"Этот класс используется для запроса и настройки определенного формата "
"импорта. Он используется совместно с плагинами импорта формата активов."

msgid "Return the file extensions supported."
msgstr "Возвращает поддерживаемые расширения файлов."

msgid "Return whether this importer is active."
msgstr "Возвращает, активен ли данный импортер."

msgid "Query support. Return [code]false[/code] if import must not continue."
msgstr ""
"Поддержка запросов. Верните [code]false[/code], если импорт не должен "
"продолжаться."

msgid ""
"Registers a custom resource importer in the editor. Use the class to parse "
"any file and import it as a new resource type."
msgstr ""
"Регистрирует пользовательский импортер ресурсов в редакторе. Используйте "
"класс для разбора любого файла и импорта его как нового типа ресурса."

msgid ""
"[EditorImportPlugin]s provide a way to extend the editor's resource import "
"functionality. Use them to import resources from custom files or to provide "
"alternatives to the editor's existing importers.\n"
"EditorImportPlugins work by associating with specific file extensions and a "
"resource type. See [method _get_recognized_extensions] and [method "
"_get_resource_type]. They may optionally specify some import presets that "
"affect the import process. EditorImportPlugins are responsible for creating "
"the resources and saving them in the [code].godot/imported[/code] directory "
"(see [member ProjectSettings.application/config/"
"use_hidden_project_data_directory]).\n"
"Below is an example EditorImportPlugin that imports a [Mesh] from a file with "
"the extension \".special\" or \".spec\":\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorImportPlugin\n"
"\n"
"func _get_importer_name():\n"
"\treturn \"my.special.plugin\"\n"
"\n"
"func _get_visible_name():\n"
"\treturn \"Special Mesh\"\n"
"\n"
"func _get_recognized_extensions():\n"
"\treturn [\"special\", \"spec\"]\n"
"\n"
"func _get_save_extension():\n"
"\treturn \"mesh\"\n"
"\n"
"func _get_resource_type():\n"
"\treturn \"Mesh\"\n"
"\n"
"func _get_preset_count():\n"
"\treturn 1\n"
"\n"
"func _get_preset_name(preset_index):\n"
"\treturn \"Default\"\n"
"\n"
"func _get_import_options(path, preset_index):\n"
"\treturn [{\"name\": \"my_option\", \"default_value\": false}]\n"
"\n"
"func _import(source_file, save_path, options, platform_variants, gen_files):\n"
"\tvar file = FileAccess.open(source_file, FileAccess.READ)\n"
"\tif file == null:\n"
"\t\treturn FAILED\n"
"\tvar mesh = ArrayMesh.new()\n"
"\t# Fill the Mesh with data read in \"file\", left as an exercise to the "
"reader.\n"
"\n"
"\tvar filename = save_path + \".\" + _get_save_extension()\n"
"\treturn ResourceSaver.save(mesh, filename)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"public partial class MySpecialPlugin : EditorImportPlugin\n"
"{\n"
"\tpublic override string _GetImporterName()\n"
"\t{\n"
"\t\treturn \"my.special.plugin\";\n"
"\t}\n"
"\n"
"\tpublic override string _GetVisibleName()\n"
"\t{\n"
"\t\treturn \"Special Mesh\";\n"
"\t}\n"
"\n"
"\tpublic override string[] _GetRecognizedExtensions()\n"
"\t{\n"
"\t\treturn [\"special\", \"spec\"];\n"
"\t}\n"
"\n"
"\tpublic override string _GetSaveExtension()\n"
"\t{\n"
"\t\treturn \"mesh\";\n"
"\t}\n"
"\n"
"\tpublic override string _GetResourceType()\n"
"\t{\n"
"\t\treturn \"Mesh\";\n"
"\t}\n"
"\n"
"\tpublic override int _GetPresetCount()\n"
"\t{\n"
"\t\treturn 1;\n"
"\t}\n"
"\n"
"\tpublic override string _GetPresetName(int presetIndex)\n"
"\t{\n"
"\t\treturn \"Default\";\n"
"\t}\n"
"\n"
"\tpublic override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetImportOptions(string path, int presetIndex)\n"
"\t{\n"
"\t\treturn\n"
"\t\t[\n"
"\t\t\tnew Godot.Collections.Dictionary\n"
"\t\t\t{\n"
"\t\t\t\t{ \"name\", \"myOption\" },\n"
"\t\t\t\t{ \"default_value\", false },\n"
"\t\t\t},\n"
"\t\t];\n"
"\t}\n"
"\n"
"\tpublic override Error _Import(string sourceFile, string savePath, "
"Godot.Collections.Dictionary options, Godot.Collections.Array<string> "
"platformVariants, Godot.Collections.Array<string> genFiles)\n"
"\t{\n"
"\t\tusing var file = FileAccess.Open(sourceFile, FileAccess.ModeFlags.Read);\n"
"\t\tif (file.GetError() != Error.Ok)\n"
"\t\t{\n"
"\t\t\treturn Error.Failed;\n"
"\t\t}\n"
"\n"
"\t\tvar mesh = new ArrayMesh();\n"
"\t\t// Fill the Mesh with data read in \"file\", left as an exercise to the "
"reader.\n"
"\t\tstring filename = $\"{savePath}.{_GetSaveExtension()}\";\n"
"\t\treturn ResourceSaver.Save(mesh, filename);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To use [EditorImportPlugin], register it using the [method "
"EditorPlugin.add_import_plugin] method first."
msgstr ""
"[EditorImportPlugin]-ы предоставляют способ расширить функциональность "
"импорта ресурсов редактора. Используйте их для импорта ресурсов из "
"пользовательских файлов или для предоставления альтернатив существующим "
"импортерам редактора.\n"
"EditorImportPlugins работают, связываясь с определенными расширениями файлов "
"и типом ресурса. См. [method _get_recognized_extensions] и [method "
"_get_resource_type]. Они могут опционально указывать некоторые предустановки "
"импорта, которые влияют на процесс импорта. EditorImportPlugins отвечают за "
"создание ресурсов и сохранение их в каталоге [code].godot/imported[/code] "
"(см. [member ProjectSettings.application/config/"
"use_hidden_project_data_directory]).\n"
"Ниже приведен пример EditorImportPlugin, который импортирует [Mesh] из файла "
"с расширением \".special\" или \".spec\":\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorImportPlugin\n"
"\n"
"func _get_importer_name():\n"
"\treturn \"my.special.plugin\"\n"
"\n"
"func _get_visible_name():\n"
"\treturn \"Special Mesh\"\n"
"\n"
"func _get_recognized_extensions():\n"
"\treturn [\"special\", \"spec\"]\n"
"\n"
"func _get_save_extension():\n"
"\treturn \"mesh\"\n"
"\n"
"func _get_resource_type():\n"
"\treturn \"Mesh\"\n"
"\n"
"func _get_preset_count():\n"
"\treturn 1\n"
"\n"
"func _get_preset_name(preset_index):\n"
"\treturn \"Default\"\n"
"\n"
"func _get_import_options(path, preset_index):\n"
"\treturn [{\"name\": \"my_option\", \"default_value\": false}]\n"
"\n"
"func _import(source_file, save_path, options, platform_variants, gen_files):\n"
"\tvar file = FileAccess.open(source_file, FileAccess.READ)\n"
"\tif file == null:\n"
"\t\treturn FAILED\n"
"\tvar mesh = ArrayMesh.new()\n"
"\t# Заполните сетку данными, считанными из «файла», оставленного в качестве "
"упражнения для читателя.\n"
"\n"
"\tvar filename = save_path + \".\" + _get_save_extension()\n"
"\treturn ResourceSaver.save(mesh, filename)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"public partial class MySpecialPlugin : EditorImportPlugin\n"
"{\n"
"\tpublic override string _GetImporterName()\n"
"\t{\n"
"\t\treturn \"my.special.plugin\";\n"
"\t}\n"
"\n"
"\tpublic override string _GetVisibleName()\n"
"\t{\n"
"\t\treturn \"Special Mesh\";\n"
"\t}\n"
"\n"
"\tpublic override string[] _GetRecognizedExtensions()\n"
"\t{\n"
"\t\treturn [\"special\", \"spec\"];\n"
"\t}\n"
"\n"
"\tpublic override string _GetSaveExtension()\n"
"\t{\n"
"\t\treturn \"mesh\";\n"
"\t}\n"
"\n"
"\tpublic override string _GetResourceType()\n"
"\t{\n"
"\t\treturn \"Mesh\";\n"
"\t}\n"
"\n"
"\tpublic override int _GetPresetCount()\n"
"\t{\n"
"\t\treturn 1;\n"
"\t}\n"
"\n"
"\tpublic override string _GetPresetName(int presetIndex)\n"
"\t{\n"
"\t\treturn \"Default\";\n"
"\t}\n"
"\n"
"\tpublic override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetImportOptions(string path, int presetIndex)\n"
"\t{\n"
"\t\treturn\n"
"\t\t[\n"
"\t\t\tnew Godot.Collections.Dictionary\n"
"\t\t\t{\n"
"\t\t\t\t{ \"name\", \"myOption\" },\n"
"\t\t\t\t{ \"default_value\", false },\n"
"\t\t\t},\n"
"\t\t];\n"
"\t}\n"
"\n"
"\tpublic override Error _Import(string sourceFile, string savePath, "
"Godot.Collections.Dictionary options, Godot.Collections.Array<string> "
"platformVariants, Godot.Collections.Array<string> genFiles)\n"
"\t{\n"
"\t\tusing var file = FileAccess.Open(sourceFile, FileAccess.ModeFlags.Read);\n"
"\t\tif (file.GetError() != Error.Ok)\n"
"\t\t{\n"
"\t\t\treturn Error.Failed;\n"
"\t\t}\n"
"\n"
"\t\tvar mesh = new ArrayMesh();\n"
"\t\t// Заполните сетку данными, считанными из «файла», оставленного в "
"качестве упражнения для читателя.\n"
"\t\tstring filename = $\"{savePath}.{_GetSaveExtension()}\";\n"
"\t\treturn ResourceSaver.Save(mesh, filename);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Чтобы использовать [EditorImportPlugin], сначала зарегистрируйте его с "
"помощью метода [method EditorPlugin.add_import_plugin]."

msgid "Import plugins"
msgstr "Импорт плагинов"

msgid ""
"Tells whether this importer can be run in parallel on threads, or, on the "
"contrary, it's only safe for the editor to call it from the main thread, for "
"one file at a time.\n"
"If this method is not overridden, it will return [code]false[/code] by "
"default.\n"
"If this importer's implementation is thread-safe and can be run in parallel, "
"override this with [code]true[/code] to optimize for concurrency."
msgstr ""
"Сообщает, может ли этот импортер работать параллельно в потоках или, "
"наоборот, редактору безопасно вызывать его только из основного потока для "
"одного файла за раз.\n"
"Если этот метод не переопределен, он по умолчанию вернет [code]false[/code].\n"
"Если реализация этого импортера является потокобезопасной и может работать "
"параллельно, переопределите ее с помощью [code]true[/code] для оптимизации "
"для параллелизма."

msgid ""
"Gets the format version of this importer. Increment this version when making "
"incompatible changes to the format of the imported resources."
msgstr ""
"Получает версию формата этого импортера. Увеличивайте эту версию при внесении "
"несовместимых изменений в формат импортируемых ресурсов."

msgid ""
"Gets the options and default values for the preset at this index. Returns an "
"Array of Dictionaries with the following keys: [code]name[/code], "
"[code]default_value[/code], [code]property_hint[/code] (optional), "
"[code]hint_string[/code] (optional), [code]usage[/code] (optional)."
msgstr ""
"Получает параметры и значения по умолчанию для предустановки по этому "
"индексу. Возвращает массив словарей со следующими ключами: [code]name[/code], "
"[code]default_value[/code], [code]property_hint[/code] (необязательно), "
"[code]hint_string[/code] (необязательно), [code]usage[/code] (необязательно)."

msgid ""
"Gets the order of this importer to be run when importing resources. Importers "
"with [i]lower[/i] import orders will be called first, and higher values will "
"be called later. Use this to ensure the importer runs after the dependencies "
"are already imported. The default import order is [code]0[/code] unless "
"overridden by a specific importer. See [enum ResourceImporter.ImportOrder] "
"for some predefined values."
msgstr ""
"Получает порядок этого импортера, который будет запущен при импорте ресурсов. "
"Импортеры с [i]более низким[/i] порядком импорта будут вызваны первыми, а "
"более высокие значения будут вызваны позже. Используйте это, чтобы "
"гарантировать запуск импортера после того, как зависимости уже импортированы. "
"Порядок импорта по умолчанию — [code]0[/code], если он не переопределен "
"определенным импортером. См. [enum ResourceImporter.ImportOrder] для "
"некоторых предопределенных значений."

msgid "Gets the unique name of the importer."
msgstr "Получает уникальное имя импортера."

msgid ""
"Gets whether the import option specified by [param option_name] should be "
"visible in the Import dock. The default implementation always returns "
"[code]true[/code], making all options visible. This is mainly useful for "
"hiding options that depend on others if one of them is disabled.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get_option_visibility(path, option_name, options):\n"
"\t# Only show the lossy quality setting if the compression mode is set to "
"\"Lossy\".\n"
"\tif option_name == \"compress/lossy_quality\" and options.has(\"compress/"
"mode\"):\n"
"\t\treturn int(options[\"compress/mode\"]) == COMPRESS_LOSSY # This is a "
"constant that you set\n"
"\n"
"\treturn true\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _GetOptionVisibility(string path, StringName optionName, "
"Godot.Collections.Dictionary options)\n"
"{\n"
"\t// Only show the lossy quality setting if the compression mode is set to "
"\"Lossy\".\n"
"\tif (optionName == \"compress/lossy_quality\" && "
"options.ContainsKey(\"compress/mode\"))\n"
"\t{\n"
"\t\treturn (int)options[\"compress/mode\"] == CompressLossy; // This is a "
"constant you set\n"
"\t}\n"
"\n"
"\treturn true;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Определяет, должен ли параметр импорта, заданный параметром [param "
"option_name], быть видимым в панели импорта. Реализация по умолчанию всегда "
"возвращает [code]true[/code], делая все параметры видимыми. Это в основном "
"полезно для скрытия параметров, зависящих от других, если один из них "
"отключен.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get_option_visibility(path, option_name, options):\n"
"\t# Показывать настройку качества с потерями только в том случае, если режим "
"сжатия установлен на \"Lossy\".\n"
"\tif option_name == \"compress/lossy_quality\" and options.has(\"compress/"
"mode\"):\n"
"\t\treturn int(options[\"compress/mode\"]) == COMPRESS_LOSSY # Это константа, "
"которую вы устанавливаете\n"
"\n"
"\treturn true\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _GetOptionVisibility(string path, StringName optionName, "
"Godot.Collections.Dictionary options)\n"
"{\n"
"\t// Показывать настройку качества с потерями только в том случае, если режим "
"сжатия установлен на \"Lossy\".\n"
"\tif (optionName == \"compress/lossy_quality\" && "
"options.ContainsKey(\"compress/mode\"))\n"
"\t{\n"
"\t\treturn (int)options[\"compress/mode\"] == CompressLossy; // Это "
"константа, которую вы устанавливаете\n"
"\t}\n"
"\n"
"\treturn true;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Gets the number of initial presets defined by the plugin. Use [method "
"_get_import_options] to get the default options for the preset and [method "
"_get_preset_name] to get the name of the preset."
msgstr ""
"Получает количество начальных предустановок, определенных плагином. "
"Используйте [method _get_import_options] для получения параметров по "
"умолчанию для предустановки и [method _get_preset_name] для получения имени "
"предустановки."

msgid "Gets the name of the options preset at this index."
msgstr "Получает имя предустановленных параметров по данному индексу."

msgid ""
"Gets the priority of this plugin for the recognized extension. Higher "
"priority plugins will be preferred. The default priority is [code]1.0[/code]."
msgstr ""
"Получает приоритет этого плагина для распознанного расширения. Плагины с "
"более высоким приоритетом будут иметь приоритет. Приоритет по умолчанию — "
"[code]1.0[/code]."

msgid ""
"Gets the list of file extensions to associate with this loader (case-"
"insensitive). e.g. [code][\"obj\"][/code]."
msgstr ""
"Получает список расширений файлов, которые необходимо связать с этим "
"загрузчиком (без учета регистра). Например, [code][\"obj\"][/code]."

msgid ""
"Gets the Godot resource type associated with this loader. e.g. [code]"
"\"Mesh\"[/code] or [code]\"Animation\"[/code]."
msgstr ""
"Получает тип ресурса Godot, связанный с этим загрузчиком. Например, [code]"
"\"Mesh\"[/code] или [code]\"Animation\"[/code]."

msgid ""
"Gets the extension used to save this resource in the [code].godot/imported[/"
"code] directory (see [member ProjectSettings.application/config/"
"use_hidden_project_data_directory])."
msgstr ""
"Получает расширение, используемое для сохранения этого ресурса в каталоге "
"[code].godot/imported[/code] (см. [member ProjectSettings.application/config/"
"use_hidden_project_data_directory])."

msgid ""
"Gets the name to display in the import window. You should choose this name as "
"a continuation to \"Import as\", e.g. \"Import as Special Mesh\"."
msgstr ""
"Получает имя для отображения в окне импорта. Вы должны выбрать это имя как "
"продолжение \"Импортировать как\", например, \"Импортировать как специальную "
"сетку\"."

msgid ""
"Imports [param source_file] with the import [param options] specified. Should "
"return [constant @GlobalScope.OK] if the import is successful, other values "
"indicate failure.\n"
"The imported resource is expected to be saved to [code]save_path + \".\" + "
"_get_save_extension()[/code]. If a different variant is preferred for a "
"[url=$DOCS_URL/tutorials/export/feature_tags.html]feature tag[/url], save the "
"variant to [code]save_path + \".\" + tag + \".\" + _get_save_extension()[/"
"code] and add the feature tag to [param platform_variants].\n"
"If additional resource files are generated in the resource filesystem "
"([code]res://[/code]), add their full path to [param gen_files] so that the "
"editor knows they depend on [param source_file].\n"
"This method must be overridden to do the actual importing work. See this "
"class' description for an example of overriding this method."
msgstr ""
"Импортирует [param source_file] с указанным импортом [param options]. Должен "
"возвращать [constant @GlobalScope.OK], если импорт выполнен успешно, другие "
"значения указывают на сбой.\n"
"Импортированный ресурс должен быть сохранен в [code]save_path + \".\" + "
"_get_save_extension()[/code]. Если для [url=$DOCS_URL/tutorials/export/"
"feature_tags.html]тега feature[/url] предпочтителен другой вариант, сохраните "
"вариант в [code]save_path + \".\" + tag + \".\" + _get_save_extension()[/"
"code] и добавьте тег feature в [param platform_variants].\n"
"Если в файловой системе ресурсов ([code]res://[/code]) генерируются "
"дополнительные файлы ресурсов, добавьте их полный путь в [param gen_files], "
"чтобы редактор знал, что они зависят от [param source_file].\n"
"Этот метод необходимо переопределить для выполнения фактической работы по "
"импорту. Пример переопределения этого метода см. в описании этого класса."

msgid ""
"This function can only be called during the [method _import] callback and it "
"allows manually importing resources from it. This is useful when the imported "
"file generates external resources that require importing (as example, "
"images). Custom parameters for the \".import\" file can be passed via the "
"[param custom_options]. Additionally, in cases where multiple importers can "
"handle a file, the [param custom_importer] can be specified to force a "
"specific one. This function performs a resource import and returns "
"immediately with a success or error code. [param generator_parameters] "
"defines optional extra metadata which will be stored as [code skip-"
"lint]generator_parameters[/code] in the [code]remap[/code] section of the "
"[code].import[/code] file, for example to store a md5 hash of the source data."
msgstr ""
"Эту функцию можно вызвать только во время обратного вызова [method _import], "
"и она позволяет вручную импортировать из нее ресурсы. Это полезно, когда "
"импортируемый файл генерирует внешние ресурсы, требующие импорта (например, "
"изображения). Пользовательские параметры для файла \".import\" можно передать "
"через [param custom_options]. Кроме того, в случаях, когда несколько "
"импортеров могут обрабатывать файл, можно указать [param custom_importer], "
"чтобы принудительно выбрать определенный. Эта функция выполняет импорт "
"ресурсов и немедленно возвращает код успеха или ошибки. [param "
"generator_parameters] определяет необязательные дополнительные метаданные, "
"которые будут сохранены как [code skip-lint]generator_parameters[/code] в "
"разделе [code]remap[/code] файла [code].import[/code], например, для хранения "
"хэша md5 исходных данных."

msgid "A control used to edit properties of an object."
msgstr "Элемент управления, используемый для редактирования свойств объекта."

msgid ""
"This is the control that implements property editing in the editor's Settings "
"dialogs, the Inspector dock, etc. To get the [EditorInspector] used in the "
"editor's Inspector dock, use [method EditorInterface.get_inspector].\n"
"[EditorInspector] will show properties in the same order as the array "
"returned by [method Object.get_property_list].\n"
"If a property's name is path-like (i.e. if it contains forward slashes), "
"[EditorInspector] will create nested sections for \"directories\" along the "
"path. For example, if a property is named [code]highlighting/gdscript/"
"node_path_color[/code], it will be shown as \"Node Path Color\" inside the "
"\"GDScript\" section nested inside the \"Highlighting\" section.\n"
"If a property has [constant PROPERTY_USAGE_GROUP] usage, it will group "
"subsequent properties whose name starts with the property's hint string. The "
"group ends when a property does not start with that hint string or when a new "
"group starts. An empty group name effectively ends the current group. "
"[EditorInspector] will create a top-level section for each group. For "
"example, if a property with group usage is named [code]Collide With[/code] "
"and its hint string is [code]collide_with_[/code], a subsequent "
"[code]collide_with_area[/code] property will be shown as \"Area\" inside the "
"\"Collide With\" section. There is also a special case: when the hint string "
"contains the name of a property, that property is grouped too. This is mainly "
"to help grouping properties like [code]font[/code], [code]font_color[/code] "
"and [code]font_size[/code] (using the hint string [code]font_[/code]).\n"
"If a property has [constant PROPERTY_USAGE_SUBGROUP] usage, a subgroup will "
"be created in the same way as a group, and a second-level section will be "
"created for each subgroup.\n"
"[b]Note:[/b] Unlike sections created from path-like property names, "
"[EditorInspector] won't capitalize the name for sections created from groups. "
"So properties with group usage usually use capitalized names instead of "
"snake_cased names."
msgstr ""
"Это элемент управления, реализующий редактирование свойств в диалоговых окнах "
"настроек редактора, панели инспектора и т. д. Чтобы получить "
"[EditorInspector], используемый в панели инспектора редактора, используйте "
"[method EditorInterface.get_inspector].\n"
"[EditorInspector] покажет свойства в том же порядке, что и массив, "
"возвращаемый [method Object.get_property_list].\n"
"Если имя свойства похоже на путь (т. е. содержит косые черты), "
"[EditorInspector] создаст вложенные разделы для «каталогов» по пути. "
"Например, если свойство называется [code]highlighting/gdscript/"
"node_path_color[/code], оно будет показано как «Node Path Color» внутри "
"раздела «GDScript», вложенного в раздел «Highlighting».\n"
"Если свойство имеет [constant PROPERTY_USAGE_GROUP], оно сгруппирует "
"последующие свойства, имя которых начинается со строки подсказки свойства. "
"Группа заканчивается, когда свойство не начинается с этой строки подсказки "
"или когда начинается новая группа. Пустое имя группы фактически завершает "
"текущую группу. [EditorInspector] создаст раздел верхнего уровня для каждой "
"группы. Например, если свойство с групповым использованием называется "
"[code]Collide With[/code], а его строка подсказки — [code]collide_with_[/"
"code], последующее свойство [code]collide_with_area[/code] будет показано как "
"«Area» внутри раздела «Collide With». Также есть особый случай: когда строка "
"подсказки содержит имя свойства, это свойство также группируется. Это в "
"основном помогает группировать такие свойства, как [code]font[/code], "
"[code]font_color[/code] и [code]font_size[/code] (используя строку подсказки "
"[code]font_[/code]). \n"
"Если свойство имеет [constant PROPERTY_USAGE_SUBGROUP] использование, "
"подгруппа будет создана так же, как и группа, и для каждой подгруппы будет "
"создан раздел второго уровня.\n"
"[b]Примечание:[/b] В отличие от разделов, созданных из имен свойств, подобных "
"путям, [EditorInspector] не будет писать имя с заглавной буквы для разделов, "
"созданных из групп. Поэтому свойства с использованием группы обычно "
"используют имена с заглавной буквы вместо имен в стиле snake_case."

msgid ""
"Shows the properties of the given [param object] in this inspector for "
"editing. To clear the inspector, call this method with [code]null[/code].\n"
"[b]Note:[/b] If you want to edit an object in the editor's main inspector, "
"use the [code]edit_*[/code] methods in [EditorInterface] instead."
msgstr ""
"Показывает свойства указанного [param object] в этом инспекторе для "
"редактирования. Чтобы очистить инспектор, вызовите этот метод с [code]null[/"
"code].\n"
"[b]Примечание:[/b] Если вы хотите редактировать объект в главном инспекторе "
"редактора, используйте вместо этого методы [code]edit_*[/code] в "
"[EditorInterface]."

msgid "Returns the object currently selected in this inspector."
msgstr "Возвращает объект, выбранный в данный момент в этом инспекторе."

msgid "Gets the path of the currently selected property."
msgstr "Получает путь к текущему выбранному свойству."

msgid ""
"Creates a property editor that can be used by plugin UI to edit the specified "
"property of an [param object]."
msgstr ""
"Создает редактор свойств, который может использоваться пользовательским "
"интерфейсом плагина для редактирования указанного свойства [param object]."

msgid "Emitted when the object being edited by the inspector has changed."
msgstr "Генерируется при изменении объекта, редактируемого инспектором."

msgid ""
"Emitted when the Edit button of an [Object] has been pressed in the "
"inspector. This is mainly used in the remote scene tree Inspector."
msgstr ""
"Вызывается при нажатии кнопки Edit [Object] в инспекторе. В основном "
"используется в инспекторе дерева удаленной сцены."

msgid "Emitted when a property is removed from the inspector."
msgstr "Выдается при удалении свойства из инспектора."

msgid "Emitted when a property is edited in the inspector."
msgstr "Выдается при редактировании свойства в инспекторе."

msgid ""
"Emitted when a property is keyed in the inspector. Properties can be keyed by "
"clicking the \"key\" icon next to a property when the Animation panel is "
"toggled."
msgstr ""
"Вызывается, когда свойство задается в инспекторе. Свойства могут быть "
"запрограммированы, нажав на значок «ключ» рядом со свойством, когда панель "
"«Анимация» переключена."

msgid "Emitted when a property is selected in the inspector."
msgstr "Выдается при выборе свойства в инспекторе."

msgid ""
"Emitted when a boolean property is toggled in the inspector.\n"
"[b]Note:[/b] This signal is never emitted if the internal [code]autoclear[/"
"code] property enabled. Since this property is always enabled in the editor "
"inspector, this signal is never emitted by the editor itself."
msgstr ""
"Вызывается при переключении логического свойства в инспекторе.\n"
"[b]Примечание:[/b] Этот сигнал никогда не вызывается, если включено "
"внутреннее свойство [code]autoclear[/code]. Поскольку это свойство всегда "
"включено в инспекторе редактора, этот сигнал никогда не вызывается самим "
"редактором."

msgid "Emitted when a resource is selected in the inspector."
msgstr "Выдается при выборе ресурса в инспекторе."

msgid ""
"Emitted when a property that requires a restart to be applied is edited in "
"the inspector. This is only used in the Project Settings and Editor Settings."
msgstr ""
"Выдается, когда свойство, требующее перезапуска для применения, редактируется "
"в инспекторе. Используется только в настройках проекта и настройках редактора."

msgid "Plugin for adding custom property editors on the inspector."
msgstr "Плагин для добавления пользовательских редакторов свойств в инспектор."

msgid ""
"[EditorInspectorPlugin] allows adding custom property editors to "
"[EditorInspector].\n"
"When an object is edited, the [method _can_handle] function is called and "
"must return [code]true[/code] if the object type is supported.\n"
"If supported, the function [method _parse_begin] will be called, allowing to "
"place custom controls at the beginning of the class.\n"
"Subsequently, the [method _parse_category] and [method _parse_property] are "
"called for every category and property. They offer the ability to add custom "
"controls to the inspector too.\n"
"Finally, [method _parse_end] will be called.\n"
"On each of these calls, the \"add\" functions can be called.\n"
"To use [EditorInspectorPlugin], register it using the [method "
"EditorPlugin.add_inspector_plugin] method first."
msgstr ""
"[EditorInspectorPlugin] позволяет добавлять пользовательские редакторы "
"свойств в [EditorInspector].\n"
"При редактировании объекта вызывается функция [method _can_handle], которая "
"должна возвращать [code]true[/code], если тип объекта поддерживается.\n"
"Если поддерживается, будет вызвана функция [method _parse_begin], позволяющая "
"размещать пользовательские элементы управления в начале класса.\n"
"Затем для каждой категории и свойства вызываются [method _parse_category] и "
"[method _parse_property]. Они также предоставляют возможность добавлять "
"пользовательские элементы управления в инспектор.\n"
"Наконец, будет вызван [method _parse_end].\n"
"При каждом из этих вызовов можно вызывать функции «add».\n"
"Чтобы использовать [EditorInspectorPlugin], сначала зарегистрируйте его с "
"помощью метода [method EditorPlugin.add_inspector_plugin]."

msgid "Inspector plugins"
msgstr "Плагины инспектора"

msgid "Returns [code]true[/code] if this object can be handled by this plugin."
msgstr ""
"Возвращает [code]true[/code], если этот объект может быть обработан этим "
"плагином."

msgid ""
"Called to allow adding controls at the beginning of the property list for "
"[param object]."
msgstr ""
"Вызывается, чтобы разрешить добавление элементов управления в начало списка "
"свойств для [param object]."

msgid ""
"Called to allow adding controls at the beginning of a category in the "
"property list for [param object]."
msgstr ""
"Вызывается, чтобы разрешить добавление элементов управления в начало "
"категории в списке свойств для [param object]."

msgid ""
"Called to allow adding controls at the end of the property list for [param "
"object]."
msgstr ""
"Вызывается, чтобы разрешить добавление элементов управления в конец списка "
"свойств для [param object]."

msgid ""
"Called to allow adding controls at the beginning of a group or a sub-group in "
"the property list for [param object]."
msgstr ""
"Вызывается, чтобы разрешить добавление элементов управления в начало группы "
"или подгруппы в списке свойств для [param object]."

msgid ""
"Called to allow adding property-specific editors to the property list for "
"[param object]. The added editor control must extend [EditorProperty]. "
"Returning [code]true[/code] removes the built-in editor for this property, "
"otherwise allows to insert a custom editor before the built-in one."
msgstr ""
"Вызывается, чтобы разрешить добавление редакторов, специфичных для свойств, в "
"список свойств для [param object]. Добавленный элемент управления редактором "
"должен расширять [EditorProperty]. Возврат [code]true[/code] удаляет "
"встроенный редактор для этого свойства, в противном случае позволяет вставить "
"пользовательский редактор перед встроенным."

msgid "Adds a custom control, which is not necessarily a property editor."
msgstr ""
"Добавляет пользовательский элемент управления, который не обязательно "
"является редактором свойств."

msgid ""
"Adds a property editor for an individual property. The [param editor] control "
"must extend [EditorProperty].\n"
"There can be multiple property editors for a property. If [param add_to_end] "
"is [code]true[/code], this newly added editor will be displayed after all the "
"other editors of the property whose [param add_to_end] is [code]false[/code]. "
"For example, the editor uses this parameter to add an \"Edit Region\" button "
"for [member Sprite2D.region_rect] below the regular [Rect2] editor.\n"
"[param label] can be used to choose a custom label for the property editor in "
"the inspector. If left empty, the label is computed from the name of the "
"property instead."
msgstr ""
"Добавляет редактор свойств для отдельного свойства. Элемент управления [param "
"editor] должен расширять [EditorProperty].\n"
"Для свойства может быть несколько редакторов свойств. Если [param add_to_end] "
"равен [code]true[/code], этот недавно добавленный редактор будет отображаться "
"после всех других редакторов свойства, у которых [param add_to_end] равен "
"[code]false[/code]. Например, редактор использует этот параметр для "
"добавления кнопки «Редактировать область» для [member Sprite2D.region_rect] "
"под обычным редактором [Rect2].\n"
"[param label] можно использовать для выбора пользовательской метки для "
"редактора свойств в инспекторе. Если оставить пустым, метка вычисляется на "
"основе имени свойства."

msgid ""
"Adds an editor that allows modifying multiple properties. The [param editor] "
"control must extend [EditorProperty]."
msgstr ""
"Добавляет редактор, позволяющий изменять несколько свойств. Элемент "
"управления [param editor] должен расширять [EditorProperty]."

msgid "Godot editor's interface."
msgstr "Интерфейс редактора Godot."

msgid ""
"[EditorInterface] gives you control over Godot editor's window. It allows "
"customizing the window, saving and (re-)loading scenes, rendering mesh "
"previews, inspecting and editing resources and objects, and provides access "
"to [EditorSettings], [EditorFileSystem], [EditorResourcePreview], "
"[ScriptEditor], the editor viewport, and information about scenes.\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton directly by its name.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var editor_settings = EditorInterface.get_editor_settings()\n"
"[/gdscript]\n"
"[csharp]\n"
"// In C# you can access it via the static Singleton property.\n"
"EditorSettings settings = EditorInterface.Singleton.GetEditorSettings();\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[EditorInterface] дает вам контроль над окном редактора Godot. Он позволяет "
"настраивать окно, сохранять и (пере)загружать сцены, визуализировать "
"предварительные просмотры сеток, проверять и редактировать ресурсы и объекты, "
"а также предоставляет доступ к [EditorSettings], [EditorFileSystem], "
"[EditorResourcePreview], [ScriptEditor], окну просмотра редактора и "
"информации о сценах.\n"
"[b]Примечание:[/b] Этот класс не должен быть инстанцирован напрямую. Вместо "
"этого обращайтесь к синглтону напрямую по его имени.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var editor_settings = EditorInterface.get_editor_settings()\n"
"[/gdscript]\n"
"[csharp]\n"
"// В C# доступ к нему можно получить через статическое свойство Singleton.\n"
"EditorSettings settings = EditorInterface.Singleton.GetEditorSettings();\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Closes the currently active scene, discarding any pending changes in the "
"process. Returns [constant OK] on success or [constant ERR_DOES_NOT_EXIST] if "
"there is no scene to close."
msgstr ""
"Закрывает текущую активную сцену, отменяя любые ожидающие изменения в "
"процессе. Возвращает [constant OK] в случае успеха или [constant "
"ERR_DOES_NOT_EXIST], если нет сцены для закрытия."

msgid ""
"Edits the given [Node]. The node will be also selected if it's inside the "
"scene tree."
msgstr ""
"Редактирует заданный [Node]. Узел также будет выбран, если он находится "
"внутри дерева сцены."

msgid ""
"Edits the given [Resource]. If the resource is a [Script] you can also edit "
"it with [method edit_script] to specify the line and column position."
msgstr ""
"Редактирует указанный [Resource]. Если ресурс — это [Script], вы также можете "
"редактировать его с помощью [method edit_script], чтобы указать позицию "
"строки и столбца."

msgid ""
"Edits the given [Script]. The line and column on which to open the script can "
"also be specified. The script will be open with the user-configured editor "
"for the script's language which may be an external editor."
msgstr ""
"Редактирует заданный [Script]. Также можно указать строку и столбец, в "
"которых следует открыть скрипт. Скрипт будет открыт с помощью редактора, "
"настроенного пользователем для языка скрипта, который может быть внешним "
"редактором."

msgid ""
"Returns the main container of Godot editor's window. For example, you can use "
"it to retrieve the size of the container and place your controls "
"accordingly.\n"
"[b]Warning:[/b] Removing and freeing this node will render the editor useless "
"and may cause a crash."
msgstr ""
"Возвращает основной контейнер окна редактора Godot. Например, вы можете "
"использовать его для получения размера контейнера и размещения элементов "
"управления соответствующим образом.\n"
"[b]Предупреждение:[/b] Удаление и освобождение этого узла сделает редактор "
"бесполезным и может привести к сбою."

msgid ""
"Returns the editor's [EditorCommandPalette] instance.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Возвращает экземпляр редактора [EditorCommandPalette].\n"
"[b]Предупреждение:[/b] Удаление и освобождение этого узла сделает часть "
"редактора бесполезной и может привести к сбою."

msgid ""
"Returns the current directory being viewed in the [FileSystemDock]. If a file "
"is selected, its base directory will be returned using [method "
"String.get_base_dir] instead."
msgstr ""
"Возвращает текущий каталог, просматриваемый в [FileSystemDock]. Если выбран "
"файл, его базовый каталог будет возвращен с использованием [method "
"String.get_base_dir]."

msgid ""
"Returns the name of the currently activated feature profile. If the default "
"profile is currently active, an empty string is returned instead.\n"
"In order to get a reference to the [EditorFeatureProfile], you must load the "
"feature profile using [method EditorFeatureProfile.load_from_file].\n"
"[b]Note:[/b] Feature profiles created via the user interface are loaded from "
"the [code]feature_profiles[/code] directory, as a file with the "
"[code].profile[/code] extension. The editor configuration folder can be found "
"by using [method EditorPaths.get_config_dir]."
msgstr ""
"Возвращает имя текущего активированного профиля функций. Если в данный момент "
"активен профиль по умолчанию, вместо него возвращается пустая строка.\n"
"Чтобы получить ссылку на [EditorFeatureProfile], необходимо загрузить профиль "
"функций с помощью [method EditorFeatureProfile.load_from_file].\n"
"[b]Примечание:[/b] Профили функций, созданные через пользовательский "
"интерфейс, загружаются из каталога [code]feature_profiles[/code] в виде файла "
"с расширением [code].profile[/code]. Папку конфигурации редактора можно найти "
"с помощью [method EditorPaths.get_config_dir]."

msgid "Returns the current path being viewed in the [FileSystemDock]."
msgstr "Возвращает текущий путь, просматриваемый в [FileSystemDock]."

msgid "Returns the edited (current) scene's root [Node]."
msgstr "Возвращает корень [Node] отредактированной (текущей) сцены."

msgid ""
"Returns the editor control responsible for main screen plugins and tools. Use "
"it with plugins that implement [method EditorPlugin._has_main_screen].\n"
"[b]Note:[/b] This node is a [VBoxContainer], which means that if you add a "
"[Control] child to it, you need to set the child's [member "
"Control.size_flags_vertical] to [constant Control.SIZE_EXPAND_FILL] to make "
"it use the full available space.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Возвращает элемент управления редактора, отвечающий за плагины и инструменты "
"главного экрана. Используйте его с плагинами, реализующими [method "
"EditorPlugin._has_main_screen].\n"
"[b]Примечание:[/b] Этот узел является [VBoxContainer], что означает, что если "
"вы добавляете к нему дочерний элемент [Control], вам необходимо установить "
"[member Control.size_flags_vertical] дочернего элемента на [constant "
"Control.SIZE_EXPAND_FILL], чтобы он использовал все доступное пространство.\n"
"[b]Предупреждение:[/b] Удаление и освобождение этого узла сделает часть "
"редактора бесполезной и может привести к сбою."

msgid "Returns the [EditorPaths] singleton."
msgstr "Возвращает синглтон [EditorPaths]."

msgid ""
"Returns the actual scale of the editor UI ([code]1.0[/code] being 100% "
"scale). This can be used to adjust position and dimensions of the UI added by "
"plugins.\n"
"[b]Note:[/b] This value is set via the [member EditorSettings.interface/"
"editor/display_scale] and [member EditorSettings.interface/editor/"
"custom_display_scale] settings. The editor must be restarted for changes to "
"be properly applied."
msgstr ""
"Возвращает фактический масштаб пользовательского интерфейса редактора "
"([code]1.0[/code] — 100% масштаб). Это можно использовать для настройки "
"положения и размеров пользовательского интерфейса, добавленного плагинами.\n"
"[b]Примечание:[/b] Это значение задается через настройки [member "
"EditorSettings.interface/editor/display_scale] и [member "
"EditorSettings.interface/editor/custom_display_scale]. Редактор необходимо "
"перезапустить, чтобы изменения вступили в силу должным образом."

msgid "Returns the editor's [EditorSettings] instance."
msgstr "Возвращает экземпляр [EditorSettings] редактора."

msgid ""
"Returns the editor's [Theme].\n"
"[b]Note:[/b] When creating custom editor UI, prefer accessing theme items "
"directly from your GUI nodes using the [code]get_theme_*[/code] methods."
msgstr ""
"Возвращает [Theme] редактора.\n"
"[b]Примечание:[/b] При создании пользовательского интерфейса редактора "
"предпочитайте получать доступ к элементам темы напрямую из узлов вашего "
"графического интерфейса с помощью методов [code]get_theme_*[/code]."

msgid "Returns the editor's [EditorToaster]."
msgstr "Возвращает [EditorToaster] редактора."

msgid "Returns the editor's [EditorUndoRedoManager]."
msgstr "Возвращает [EditorUndoRedoManager] редактора."

msgid ""
"Returns the 2D editor [SubViewport]. It does not have a camera. Instead, the "
"view transforms are done directly and can be accessed with [member "
"Viewport.global_canvas_transform]."
msgstr ""
"Возвращает 2D-редактор [SubViewport]. У него нет камеры. Вместо этого "
"преобразования вида выполняются напрямую и могут быть доступны с помощью "
"[member Viewport.global_canvas_transform]."

msgid ""
"Returns the specified 3D editor [SubViewport], from [code]0[/code] to "
"[code]3[/code]. The viewport can be used to access the active editor cameras "
"with [method Viewport.get_camera_3d]."
msgstr ""
"Возвращает указанный 3D-редактор [SubViewport], от [code]0[/code] до [code]3[/"
"code]. Окно просмотра можно использовать для доступа к активным камерам "
"редактора с помощью [method Viewport.get_camera_3d]."

msgid ""
"Returns the editor's [FileSystemDock] instance.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Возвращает экземпляр редактора [FileSystemDock].\n"
"[b]Предупреждение:[/b] Удаление и освобождение этого узла сделает часть "
"редактора бесполезной и может привести к сбою."

msgid ""
"Returns the editor's [EditorInspector] instance.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Возвращает экземпляр редактора [EditorInspector].\n"
"[b]Предупреждение:[/b] Удаление и освобождение этого узла сделает часть "
"редактора бесполезной и может привести к сбою."

msgid ""
"Returns an array with references to the root nodes of the currently opened "
"scenes."
msgstr ""
"Возвращает массив со ссылками на корневые узлы открытых в данный момент сцен."

msgid "Returns an array with the file paths of the currently opened scenes."
msgstr "Возвращает массив с путями к файлам открытых в данный момент сцен."

msgid ""
"Returns the name of the scene that is being played. If no scene is currently "
"being played, returns an empty string."
msgstr ""
"Возвращает имя сцены, которая воспроизводится. Если в данный момент сцена не "
"воспроизводится, возвращает пустую строку."

msgid "Returns the editor's [EditorFileSystem] instance."
msgstr "Возвращает экземпляр [EditorFileSystem] редактора."

msgid "Returns the editor's [EditorResourcePreview] instance."
msgstr "Возвращает экземпляр [EditorResourcePreview] редактора."

msgid ""
"Returns the editor's [ScriptEditor] instance.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Возвращает экземпляр редактора [ScriptEditor].\n"
"[b]Предупреждение:[/b] Удаление и освобождение этого узла сделает часть "
"редактора бесполезной и может привести к сбою."

msgid ""
"Returns an array containing the paths of the currently selected files (and "
"directories) in the [FileSystemDock]."
msgstr ""
"Возвращает массив, содержащий пути к текущим выбранным файлам (и каталогам) в "
"[FileSystemDock]."

msgid "Returns the editor's [EditorSelection] instance."
msgstr "Возвращает экземпляр [EditorSelection] редактора."

msgid ""
"Shows the given property on the given [param object] in the editor's "
"Inspector dock. If [param inspector_only] is [code]true[/code], plugins will "
"not attempt to edit [param object]."
msgstr ""
"Показывает заданное свойство для заданного [param object] в доке Inspector "
"редактора. Если [param inspector_only] равно [code]true[/code], плагины не "
"будут пытаться редактировать [param object]."

msgid ""
"Returns [code]true[/code] if multiple window support is enabled in the "
"editor. Multiple window support is enabled if [i]all[/i] of these statements "
"are true:\n"
"- [member EditorSettings.interface/multi_window/enable] is [code]true[/"
"code].\n"
"- [member EditorSettings.interface/editor/single_window_mode] is [code]false[/"
"code].\n"
"- [member Viewport.gui_embed_subwindows] is [code]false[/code]. This is "
"forced to [code]true[/code] on platforms that don't support multiple windows "
"such as Web, or when the [code]--single-window[/code] [url=$DOCS_URL/"
"tutorials/editor/command_line_tutorial.html]command line argument[/url] is "
"used."
msgstr ""
"Возвращает [code]true[/code], если в редакторе включена поддержка нескольких "
"окон. Поддержка нескольких окон включена, если [i]все[/i] из этих утверждений "
"истинны:\n"
"- [member EditorSettings.interface/multi_window/enable] равно [code]true[/"
"code].\n"
"- [member EditorSettings.interface/editor/single_window_mode] равно "
"[code]false[/code].\n"
"- [member Viewport.gui_embed_subwindows] равно [code]false[/code]. Это "
"принудительно [code]true[/code] на платформах, которые не поддерживают "
"несколько окон, таких как Web, или когда используется [code]--single-window[/"
"code] [url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]аргумент "
"командной строки[/url]."

msgid ""
"Returns [code]true[/code] if a scene is currently being played, [code]false[/"
"code] otherwise. Paused scenes are considered as being played."
msgstr ""
"Возвращает [code]true[/code], если сцена в данный момент воспроизводится, "
"[code]false[/code] в противном случае. Остановленные сцены считаются "
"воспроизводимыми."

msgid ""
"Returns [code]true[/code] if the specified [param plugin] is enabled. The "
"plugin name is the same as its directory name."
msgstr ""
"Возвращает [code]true[/code], если указанный [param plugin] включен. Имя "
"плагина совпадает с именем его каталога."

msgid ""
"Returns mesh previews rendered at the given size as an [Array] of "
"[Texture2D]s."
msgstr ""
"Возвращает предварительные просмотры сетки, отрисованные в заданном размере, "
"как [Array] из [Texture2D]-ов."

msgid "Marks the current scene tab as unsaved."
msgstr "Отмечает текущую вкладку сцены как несохраненную."

msgid ""
"Opens the scene at the given path. If [param set_inherited] is [code]true[/"
"code], creates a new inherited scene."
msgstr ""
"Открывает сцену по указанному пути. Если [param set_inherited] равен "
"[code]true[/code], создает новую унаследованную сцену."

msgid "Plays the currently active scene."
msgstr "Воспроизводит текущую активную сцену."

msgid "Plays the scene specified by its filepath."
msgstr "Воспроизводит сцену, указанную в пути к файлу."

msgid "Plays the main scene."
msgstr "Играет главную сцену."

msgid ""
"Pops up an editor dialog for creating an object.\n"
"The [param callback] must take a single argument of type [StringName] which "
"will contain the type name of the selected object or be empty if no item is "
"selected.\n"
"The [param base_type] specifies the base type of objects to display. For "
"example, if you set this to \"Resource\", all types derived from [Resource] "
"will display in the create dialog.\n"
"The [param current_type] will be passed in the search box of the create "
"dialog, and the specified type can be immediately selected when the dialog "
"pops up. If the [param current_type] is not derived from [param base_type], "
"there will be no result of the type in the dialog.\n"
"The [param dialog_title] allows you to define a custom title for the dialog. "
"This is useful if you want to accurately hint the usage of the dialog. If the "
"[param dialog_title] is an empty string, the dialog will use \"Create New "
"'Base Type'\" as the default title.\n"
"The [param type_blocklist] contains a list of type names, and the types in "
"the blocklist will be hidden from the create dialog.\n"
"[b]Note:[/b] Trying to list the base type in the [param type_blocklist] will "
"hide all types derived from the base type from the create dialog."
msgstr ""
"Открывает диалог редактора для создания объекта.\n"
"[param callback] должен принимать один аргумент типа [StringName], который "
"будет содержать имя типа выбранного объекта или быть пустым, если не выбран "
"ни один элемент.\n"
"[param base_type] указывает базовый тип отображаемых объектов. Например, если "
"установить его на \"Resource\", все типы, производные от [Resource], будут "
"отображаться в диалоге создания.\n"
"[param current_type] будет передан в поле поиска диалога создания, и "
"указанный тип можно будет сразу выбрать при появлении диалога. Если [param "
"current_type] не является производным от [param base_type], в диалоге не "
"будет результата типа.\n"
"[param dialog_title] позволяет определить пользовательский заголовок для "
"диалога. Это полезно, если вы хотите точно указать использование диалога. "
"Если [param dialog_title] является пустой строкой, диалог будет использовать "
"\"Создать новый 'Base Type'\" в качестве заголовка по умолчанию.\n"
"[param type_blocklist] содержит список имен типов, а типы в списке блоков "
"будут скрыты из диалога создания.\n"
"[b]Примечание:[/b] Попытка перечислить базовый тип в [param type_blocklist] "
"скроет все типы, производные от базового типа, из диалога создания."

msgid ""
"Pops up the [param dialog] in the editor UI with [method "
"Window.popup_exclusive]. The dialog must have no current parent, otherwise "
"the method fails.\n"
"See also [method Window.set_unparent_when_invisible]."
msgstr ""
"Выводит [param dialog] в пользовательском интерфейсе редактора с помощью "
"[method Window.popup_exclusive]. Диалог не должен иметь текущего родителя, в "
"противном случае метод не сработает.\n"
"См. также [method Window.set_unparent_when_invisible]."

msgid ""
"Pops up the [param dialog] in the editor UI with [method "
"Window.popup_exclusive_centered]. The dialog must have no current parent, "
"otherwise the method fails.\n"
"See also [method Window.set_unparent_when_invisible]."
msgstr ""
"Выводит [param dialog] в пользовательском интерфейсе редактора с помощью "
"[method Window.popup_exclusive_centered]. Диалог не должен иметь текущего "
"родителя, в противном случае метод не сработает.\n"
"См. также [method Window.set_unparent_when_invisible]."

msgid ""
"Pops up the [param dialog] in the editor UI with [method "
"Window.popup_exclusive_centered_clamped]. The dialog must have no current "
"parent, otherwise the method fails.\n"
"See also [method Window.set_unparent_when_invisible]."
msgstr ""
"Выводит [param dialog] в пользовательском интерфейсе редактора с помощью "
"[method Window.popup_exclusive_centered_clamped]. Диалог не должен иметь "
"текущего родителя, в противном случае метод не сработает.\n"
"См. также [method Window.set_unparent_when_invisible]."

msgid ""
"Pops up the [param dialog] in the editor UI with [method "
"Window.popup_exclusive_centered_ratio]. The dialog must have no current "
"parent, otherwise the method fails.\n"
"See also [method Window.set_unparent_when_invisible]."
msgstr ""
"Выводит [param dialog] в пользовательском интерфейсе редактора с помощью "
"[method Window.popup_exclusive_centered_ratio]. Диалог не должен иметь "
"текущего родителя, в противном случае метод не сработает.\n"
"См. также [method Window.set_unparent_when_invisible]."

msgid ""
"Pops up an editor dialog for selecting a method from [param object]. The "
"[param callback] must take a single argument of type [String] which will "
"contain the name of the selected method or be empty if the dialog is "
"canceled. If [param current_value] is provided, the method will be selected "
"automatically in the method list, if it exists."
msgstr ""
"Открывает диалог редактора для выбора метода из [param object]. [param "
"callback] должен принимать один аргумент типа [String], который будет "
"содержать имя выбранного метода или будет пустым, если диалог будет отменен. "
"Если указано [param current_value], метод будет автоматически выбран в списке "
"методов, если он существует."

msgid ""
"Pops up an editor dialog for selecting a [Node] from the edited scene. The "
"[param callback] must take a single argument of type [NodePath]. It is called "
"on the selected [NodePath] or the empty path [code]^\"\"[/code] if the dialog "
"is canceled. If [param valid_types] is provided, the dialog will only show "
"Nodes that match one of the listed Node types. If [param current_value] is "
"provided, the Node will be automatically selected in the tree, if it exists.\n"
"[b]Example:[/b] Display the node selection dialog as soon as this node is "
"added to the tree for the first time:\n"
"[codeblock]\n"
"func _ready():\n"
"\tif Engine.is_editor_hint():\n"
"\t\tEditorInterface.popup_node_selector(_on_node_selected, [\"Button\"])\n"
"\n"
"func _on_node_selected(node_path):\n"
"\tif node_path.is_empty():\n"
"\t\tprint(\"node selection canceled\")\n"
"\telse:\n"
"\t\tprint(\"selected \", node_path)\n"
"[/codeblock]"
msgstr ""
"Открывает диалог редактора для выбора [Node] из редактируемой сцены. [param "
"callback] должен принимать один аргумент типа [NodePath]. Он вызывается для "
"выбранного [NodePath] или пустого пути [code]^\"\"[/code], если диалог "
"отменен. Если указан [param valid_types], диалог покажет только узлы, "
"соответствующие одному из перечисленных типов узлов. Если указан [param "
"current_value], узел будет автоматически выбран в дереве, если он "
"существует.\n"
"[b]Пример:[/b] Отобразить диалог выбора узла, как только этот узел будет "
"добавлен в дерево в первый раз:\n"
"[codeblock]\n"
"func _ready():\n"
"\tif Engine.is_editor_hint():\n"
"\t\tEditorInterface.popup_node_selector(_on_node_selected, [\"Button\"])\n"
"\n"
"func _on_node_selected(node_path):\n"
"\tif node_path.is_empty():\n"
"\t\tprint(\"node selection canceled\")\n"
"\telse:\n"
"\t\tprint(\"selected \", node_path)\n"
"[/codeblock]"

msgid ""
"Pops up an editor dialog for selecting properties from [param object]. The "
"[param callback] must take a single argument of type [NodePath]. It is called "
"on the selected property path (see [method NodePath.get_as_property_path]) or "
"the empty path [code]^\"\"[/code] if the dialog is canceled. If [param "
"type_filter] is provided, the dialog will only show properties that match one "
"of the listed [enum Variant.Type] values. If [param current_value] is "
"provided, the property will be selected automatically in the property list, "
"if it exists.\n"
"[codeblock]\n"
"func _ready():\n"
"\tif Engine.is_editor_hint():\n"
"\t\tEditorInterface.popup_property_selector(this, _on_property_selected, "
"[TYPE_INT])\n"
"\n"
"func _on_property_selected(property_path):\n"
"\tif property_path.is_empty():\n"
"\t\tprint(\"property selection canceled\")\n"
"\telse:\n"
"\t\tprint(\"selected \", property_path)\n"
"[/codeblock]"
msgstr ""
"Открывает диалог редактора для выбора свойств из [param object]. [param "
"callback] должен принимать один аргумент типа [NodePath]. Он вызывается для "
"выбранного пути свойства (см. [method NodePath.get_as_property_path]) или "
"пустого пути [code]^\"\"[/code], если диалог отменен. Если указан [param "
"type_filter], диалог покажет только свойства, которые соответствуют одному из "
"перечисленных значений [enum Variant.Type]. Если указан [param "
"current_value], свойство будет автоматически выбрано в списке свойств, если "
"оно существует.\n"
"[codeblock]\n"
"func _ready():\n"
"\tif Engine.is_editor_hint():\n"
"\t\tEditorInterface.popup_property_selector(this, _on_property_selected, "
"[TYPE_INT])\n"
"\n"
"func _on_property_selected(property_path):\n"
"\tif property_path.is_empty():\n"
"\t\tprint(\"property selection canceled\")\n"
"\telse:\n"
"\t\tprint(\"selected \", property_path)\n"
"[/codeblock]"

msgid ""
"Pops up an editor dialog for quick selecting a resource file. The [param "
"callback] must take a single argument of type [String] which will contain the "
"path of the selected resource or be empty if the dialog is canceled. If "
"[param base_types] is provided, the dialog will only show resources that "
"match these types. Only types deriving from [Resource] are supported."
msgstr ""
"Открывает диалог редактора для быстрого выбора файла ресурсов. [param "
"callback] должен принимать один аргумент типа [String], который будет "
"содержать путь к выбранному ресурсу или будет пустым, если диалог будет "
"отменен. Если указан [param base_types], диалог покажет только ресурсы, "
"соответствующие этим типам. Поддерживаются только типы, производные от "
"[Resource]."

msgid "Reloads the scene at the given path."
msgstr "Перезагружает сцену по указанному пути."

msgid ""
"Restarts the editor. This closes the editor and then opens the same project. "
"If [param save] is [code]true[/code], the project will be saved before "
"restarting."
msgstr ""
"Перезапускает редактор. Это закрывает редактор и затем открывает тот же "
"проект. Если [param save] равен [code]true[/code], проект будет сохранен "
"перед перезапуском."

msgid "Saves all opened scenes in the editor."
msgstr "Сохраняет все открытые сцены в редакторе."

msgid ""
"Saves the currently active scene. Returns either [constant OK] or [constant "
"ERR_CANT_CREATE]."
msgstr ""
"Сохраняет текущую активную сцену. Возвращает либо [constant OK], либо "
"[constant ERR_CANT_CREATE]."

msgid "Saves the currently active scene as a file at [param path]."
msgstr "Сохраняет текущую активную сцену в виде файла по адресу [param path]."

msgid ""
"Selects the file, with the path provided by [param file], in the FileSystem "
"dock."
msgstr "Выбирает файл с путем, указанным в [param file], в доке FileSystem."

msgid ""
"Selects and activates the specified feature profile with the given [param "
"profile_name]. Set [param profile_name] to an empty string to reset to the "
"default feature profile.\n"
"A feature profile can be created programmatically using the "
"[EditorFeatureProfile] class.\n"
"[b]Note:[/b] The feature profile that gets activated must be located in the "
"[code]feature_profiles[/code] directory, as a file with the [code].profile[/"
"code] extension. If a profile could not be found, an error occurs. The editor "
"configuration folder can be found by using [method "
"EditorPaths.get_config_dir]."
msgstr ""
"Выбирает и активирует указанный профиль функций с заданным [param "
"profile_name]. Установите [param profile_name] на пустую строку, чтобы "
"сбросить до профиля функций по умолчанию.\n"
"Профиль функций можно создать программно с помощью класса "
"[EditorFeatureProfile].\n"
"[b]Примечание:[/b] Активируемый профиль функций должен находиться в каталоге "
"[code]feature_profiles[/code] в виде файла с расширением [code].profile[/"
"code]. Если профиль не найден, возникает ошибка. Папку конфигурации редактора "
"можно найти с помощью [method EditorPaths.get_config_dir]."

msgid ""
"Sets the editor's current main screen to the one specified in [param name]. "
"[param name] must match the title of the tab in question exactly (e.g. "
"[code]2D[/code], [code]3D[/code], [code skip-lint]Script[/code], [code]Game[/"
"code], or [code]AssetLib[/code] for default tabs)."
msgstr ""
"Устанавливает текущий главный экран редактора на тот, который указан в [param "
"name]. [param name] должен точно соответствовать заголовку соответствующей "
"вкладки (например, [code]2D[/code], [code]3D[/code], [code skip-lint]Script[/"
"code], [code]Game[/code] или [code]AssetLib[/code] для вкладок по умолчанию)."

msgid ""
"Sets the enabled status of a plugin. The plugin name is the same as its "
"directory name."
msgstr ""
"Устанавливает включенный статус плагина. Имя плагина совпадает с именем его "
"каталога."

msgid "Stops the scene that is currently playing."
msgstr "Останавливает текущую воспроизводимую сцену."

msgid ""
"If [code]true[/code], enables distraction-free mode which hides side docks to "
"increase the space available for the main view."
msgstr ""
"Если [code]true[/code], включается режим без отвлекающих факторов, который "
"скрывает боковые доки, чтобы увеличить пространство, доступное для основного "
"вида."

msgid ""
"If [code]true[/code], the Movie Maker mode is enabled in the editor. See "
"[MovieWriter] for more information."
msgstr ""
"Если [code]true[/code], режим Movie Maker включен в редакторе. См. "
"[MovieWriter] для получения дополнительной информации."

msgid "Gizmo for editing [Node3D] objects."
msgstr "Gizmo для редактирования объектов [Node3D]."

msgid ""
"Gizmo that is used for providing custom visualization and editing (handles "
"and subgizmos) for [Node3D] objects. Can be overridden to create custom "
"gizmos, but for simple gizmos creating an [EditorNode3DGizmoPlugin] is "
"usually recommended."
msgstr ""
"Гизмо, используемое для предоставления пользовательских возможностей "
"визуализации и редактирования (ручек и подгизмо) для объектов [Node3D]. Его "
"можно переопределить для создания пользовательских гизмо, но для простых "
"гизмо обычно рекомендуется создать [EditorNode3DGizmoPlugin]."

msgid ""
"Override this method to commit a handle being edited (handles must have been "
"previously added by [method add_handles]). This usually means creating an "
"[UndoRedo] action for the change, using the current handle value as \"do\" "
"and the [param restore] argument as \"undo\".\n"
"If the [param cancel] argument is [code]true[/code], the [param restore] "
"value should be directly set, without any [UndoRedo] action.\n"
"The [param secondary] argument is [code]true[/code] when the committed handle "
"is secondary (see [method add_handles] for more information)."
msgstr ""
"Переопределите этот метод, чтобы зафиксировать редактируемый дескриптор "
"(дескрипторы должны быть ранее добавлены [method add_handles]). Обычно это "
"означает создание действия [UndoRedo] для изменения, используя текущее "
"значение дескриптора как «do» и аргумент [param restore] как «undo».\n"
"Если аргумент [param cancel] равен [code]true[/code], значение [param "
"restore] должно быть установлено напрямую, без какого-либо действия "
"[UndoRedo].\n"
"Аргумент [param secondary] равен [code]true[/code], когда зафиксированный "
"дескриптор является вторичным (см. [method add_handles] для получения "
"дополнительной информации)."

msgid ""
"Override this method to commit a group of subgizmos being edited (see [method "
"_subgizmos_intersect_ray] and [method _subgizmos_intersect_frustum]). This "
"usually means creating an [UndoRedo] action for the change, using the current "
"transforms as \"do\" and the [param restores] transforms as \"undo\".\n"
"If the [param cancel] argument is [code]true[/code], the [param restores] "
"transforms should be directly set, without any [UndoRedo] action."
msgstr ""
"Переопределите этот метод, чтобы зафиксировать группу редактируемых "
"подобъектов (см. [method _subgizmos_intersect_ray] и [method "
"_subgizmos_intersect_frustum]). Обычно это означает создание действия "
"[UndoRedo] для изменения, используя текущие преобразования как «do» и "
"преобразования [param restores] как «undo». \n"
"Если аргумент [param cancel] равен [code]true[/code], преобразования [param "
"restores] должны быть установлены напрямую, без какого-либо действия "
"[UndoRedo]."

msgid ""
"Override this method to return the name of an edited handle (handles must "
"have been previously added by [method add_handles]). Handles can be named for "
"reference to the user when editing.\n"
"The [param secondary] argument is [code]true[/code] when the requested handle "
"is secondary (see [method add_handles] for more information)."
msgstr ""
"Переопределите этот метод, чтобы вернуть имя отредактированного дескриптора "
"(дескрипторы должны быть предварительно добавлены [method add_handles]). "
"Дескрипторы могут быть названы для ссылки на пользователя при "
"редактировании. \n"
"Аргумент [param secondary] равен [code]true[/code], когда запрошенный "
"дескриптор является вторичным (см. [method add_handles] для получения "
"дополнительной информации)."

msgid ""
"Override this method to return the current value of a handle. This value will "
"be requested at the start of an edit and used as the [code]restore[/code] "
"argument in [method _commit_handle].\n"
"The [param secondary] argument is [code]true[/code] when the requested handle "
"is secondary (see [method add_handles] for more information)."
msgstr ""
"Переопределите этот метод, чтобы вернуть текущее значение дескриптора. Это "
"значение будет запрошено в начале редактирования и использовано как аргумент "
"[code]restore[/code] в [method _commit_handle]. \n"
"Аргумент [param secondary] равен [code]true[/code], когда запрошенный "
"дескриптор является вторичным (см. [method add_handles] для получения "
"дополнительной информации)."

msgid ""
"Override this method to return the current transform of a subgizmo. This "
"transform will be requested at the start of an edit and used as the "
"[code]restore[/code] argument in [method _commit_subgizmos]."
msgstr ""
"Переопределите этот метод, чтобы вернуть текущую трансформацию subgizmo. Эта "
"трансформация будет запрошена в начале редактирования и использована как "
"аргумент [code]restore[/code] в [method _commit_subgizmos]."

msgid ""
"Override this method to return [code]true[/code] whenever the given handle "
"should be highlighted in the editor.\n"
"The [param secondary] argument is [code]true[/code] when the requested handle "
"is secondary (see [method add_handles] for more information)."
msgstr ""
"Переопределите этот метод, чтобы он возвращал [code]true[/code] всякий раз, "
"когда указанный дескриптор должен быть выделен в редакторе. \n"
"Аргумент [param secondary] равен [code]true[/code], когда запрошенный "
"дескриптор является вторичным (см. [method add_handles] для получения "
"дополнительной информации)."

msgid ""
"Override this method to add all the gizmo elements whenever a gizmo update is "
"requested. It's common to call [method clear] at the beginning of this method "
"and then add visual elements depending on the node's properties."
msgstr ""
"Переопределите этот метод, чтобы добавлять все элементы гизмо всякий раз, "
"когда запрашивается обновление гизмо. Обычно в начале этого метода вызывают "
"[method clear], а затем добавляют визуальные элементы в зависимости от "
"свойств узла."

msgid ""
"Override this method to update the node properties when the user drags a "
"gizmo handle (previously added with [method add_handles]). The provided "
"[param point] is the mouse position in screen coordinates and the [param "
"camera] can be used to convert it to raycasts.\n"
"The [param secondary] argument is [code]true[/code] when the edited handle is "
"secondary (see [method add_handles] for more information)."
msgstr ""
"Переопределите этот метод, чтобы обновить свойства узла, когда пользователь "
"перетаскивает ручку гизмо (ранее добавленную с помощью [method add_handles]). "
"Предоставленный [param point] — это положение мыши в экранных координатах, а "
"[param camera] можно использовать для преобразования его в лучевые потоки.\n"
"Аргумент [param secondary] равен [code]true[/code], когда отредактированная "
"ручка является вторичной (см. [method add_handles] для получения "
"дополнительной информации)."

msgid ""
"Override this method to update the node properties during subgizmo editing "
"(see [method _subgizmos_intersect_ray] and [method "
"_subgizmos_intersect_frustum]). The [param transform] is given in the "
"[Node3D]'s local coordinate system."
msgstr ""
"Переопределите этот метод для обновления свойств узла во время редактирования "
"subgizmo (см. [method _subgizmos_intersect_ray] и [method "
"_subgizmos_intersect_frustum]). [Param transform] задается в локальной "
"системе координат [Node3D]."

msgid ""
"Override this method to allow selecting subgizmos using mouse drag box "
"selection. Given a [param camera] and a [param frustum], this method should "
"return which subgizmos are contained within the frustum. The [param frustum] "
"argument consists of an array with all the [Plane]s that make up the "
"selection frustum. The returned value should contain a list of unique "
"subgizmo identifiers, which can have any non-negative value and will be used "
"in other virtual methods like [method _get_subgizmo_transform] or [method "
"_commit_subgizmos]."
msgstr ""
"Переопределите этот метод, чтобы разрешить выбор подобъектов с помощью "
"выделения области перетаскивания мыши. При наличии [param camera] и [param "
"frustum] этот метод должен возвращать, какие подобъекты содержатся в "
"усеченной пирамиде. Аргумент [param frustum] состоит из массива со всеми "
"[Plane], которые составляют усеченную пирамиду выбора. Возвращаемое значение "
"должно содержать список уникальных идентификаторов подобъектов, которые могут "
"иметь любое неотрицательное значение и будут использоваться в других "
"виртуальных методах, таких как [method _get_subgizmo_transform] или [method "
"_commit_subgizmos]."

msgid ""
"Override this method to allow selecting subgizmos using mouse clicks. Given a "
"[param camera] and a [param point] in screen coordinates, this method should "
"return which subgizmo should be selected. The returned value should be a "
"unique subgizmo identifier, which can have any non-negative value and will be "
"used in other virtual methods like [method _get_subgizmo_transform] or "
"[method _commit_subgizmos]."
msgstr ""
"Переопределите этот метод, чтобы разрешить выбор подгизмо с помощью щелчков "
"мыши. При наличии [param camera] и [param point] в экранных координатах этот "
"метод должен возвращать, какой подгизмо следует выбрать. Возвращаемое "
"значение должно быть уникальным идентификатором подгизмо, который может иметь "
"любое неотрицательное значение и будет использоваться в других виртуальных "
"методах, таких как [method _get_subgizmo_transform] или [method "
"_commit_subgizmos]."

msgid ""
"Adds the specified [param segments] to the gizmo's collision shape for "
"picking. Call this method during [method _redraw]."
msgstr ""
"Добавляет указанные [param segments] к форме столкновения гизмо для выбора. "
"Вызвать этот метод во время [method _redraw]."

msgid ""
"Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be "
"generated from a regular [Mesh] too. Call this method during [method _redraw]."
msgstr ""
"Добавляет треугольники столкновения в гизмо для выбора. [TriangleMesh] также "
"может быть сгенерирован из обычного [Mesh]. Вызывайте этот метод во время "
"[method _redraw]."

msgid ""
"Adds a list of handles (points) which can be used to edit the properties of "
"the gizmo's [Node3D]. The [param ids] argument can be used to specify a "
"custom identifier for each handle, if an empty array is passed, the ids will "
"be assigned automatically from the [param handles] argument order.\n"
"The [param secondary] argument marks the added handles as secondary, meaning "
"they will normally have lower selection priority than regular handles. When "
"the user is holding the shift key secondary handles will switch to have "
"higher priority than regular handles. This change in priority can be used to "
"place multiple handles at the same point while still giving the user control "
"on their selection.\n"
"There are virtual methods which will be called upon editing of these handles. "
"Call this method during [method _redraw]."
msgstr ""
"Добавляет список дескрипторов (точек), которые можно использовать для "
"редактирования свойств [Node3D] гизмо. Аргумент [param ids] можно "
"использовать для указания пользовательского идентификатора для каждого "
"дескриптора, если передан пустой массив, идентификаторы будут назначены "
"автоматически из порядка аргументов [param handles]. \n"
"Аргумент [param secondary] помечает добавленные дескрипторы как вторичные, то "
"есть они обычно будут иметь более низкий приоритет выбора, чем обычные "
"дескрипторы. Когда пользователь удерживает клавишу Shift, вторичные "
"дескрипторы переключаются на более высокий приоритет, чем обычные "
"дескрипторы. Это изменение приоритета можно использовать для размещения "
"нескольких дескрипторов в одной точке, при этом пользователь все еще может "
"контролировать их выбор.\n"
"Существуют виртуальные методы, которые будут вызываться при редактировании "
"этих дескрипторов. Вызовите этот метод во время [method _redraw]."

msgid ""
"Adds lines to the gizmo (as sets of 2 points), with a given material. The "
"lines are used for visualizing the gizmo. Call this method during [method "
"_redraw]."
msgstr ""
"Добавляет линии в гизмо (как наборы из 2 точек) с заданным материалом. Линии "
"используются для визуализации гизмо. Вызвать этот метод во время [method "
"_redraw]."

msgid ""
"Adds a mesh to the gizmo with the specified [param material], local [param "
"transform] and [param skeleton]. Call this method during [method _redraw]."
msgstr ""
"Добавляет сетку к гизмо с указанным [param material], локальным [param "
"transform] и [param skeleton]. Вызывайте этот метод во время [method _redraw]."

msgid ""
"Adds an unscaled billboard for visualization and selection. Call this method "
"during [method _redraw]."
msgstr ""
"Добавляет немасштабированный билборд для визуализации и выбора. Вызвать этот "
"метод во время [method _redraw]."

msgid ""
"Removes everything in the gizmo including meshes, collisions and handles."
msgstr "Удаляет все в гизмо, включая сетки, столкновения и ручки."

msgid "Returns the [Node3D] node associated with this gizmo."
msgstr "Возвращает узел [Node3D], связанный с этим гизмо."

msgid ""
"Returns the [EditorNode3DGizmoPlugin] that owns this gizmo. It's useful to "
"retrieve materials using [method EditorNode3DGizmoPlugin.get_material]."
msgstr ""
"Возвращает [EditorNode3DGizmoPlugin], которому принадлежит этот gizmo. "
"Полезно извлекать материалы с помощью [method "
"EditorNode3DGizmoPlugin.get_material]."

msgid ""
"Returns a list of the currently selected subgizmos. Can be used to highlight "
"selected elements during [method _redraw]."
msgstr ""
"Возвращает список выбранных в данный момент подэлементов. Может "
"использоваться для выделения выбранных элементов во время [method _redraw]."

msgid ""
"Returns [code]true[/code] if the given subgizmo is currently selected. Can be "
"used to highlight selected elements during [method _redraw]."
msgstr ""
"Возвращает [code]true[/code], если указанный subgizmo в данный момент выбран. "
"Может использоваться для подсветки выбранных элементов во время [method "
"_redraw]."

msgid ""
"Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be "
"hidden. If [code]false[/code], it will be shown."
msgstr ""
"Устанавливает скрытое состояние гизмо. Если [code]true[/code], гизмо будет "
"скрыто. Если [code]false[/code], оно будет показано."

msgid ""
"Sets the reference [Node3D] node for the gizmo. [param node] must inherit "
"from [Node3D]."
msgstr ""
"Устанавливает опорный узел [Node3D] для гизмо. [param node] должен "
"наследовать от [Node3D]."

msgid "A class used by the editor to define Node3D gizmo types."
msgstr "Класс, используемый редактором для определения типов гизмо Node3D."

msgid ""
"[EditorNode3DGizmoPlugin] allows you to define a new type of Gizmo. There are "
"two main ways to do so: extending [EditorNode3DGizmoPlugin] for the simpler "
"gizmos, or creating a new [EditorNode3DGizmo] type. See the tutorial in the "
"documentation for more info.\n"
"To use [EditorNode3DGizmoPlugin], register it using the [method "
"EditorPlugin.add_node_3d_gizmo_plugin] method first."
msgstr ""
"[EditorNode3DGizmoPlugin] позволяет вам определить новый тип Gizmo. Есть два "
"основных способа сделать это: расширение [EditorNode3DGizmoPlugin] для более "
"простых gizmo или создание нового типа [EditorNode3DGizmo]. Для получения "
"дополнительной информации см. руководство в документации.\n"
"Чтобы использовать [EditorNode3DGizmoPlugin], сначала зарегистрируйте его с "
"помощью метода [method EditorPlugin.add_node_3d_gizmo_plugin]."

msgid "Node3D gizmo plugins"
msgstr "Гизмо плагин Node3D"

msgid ""
"Override this method to define whether the gizmos handled by this plugin can "
"be hidden or not. Returns [code]true[/code] if not overridden."
msgstr ""
"Переопределите этот метод, чтобы определить, могут ли быть скрыты "
"обрабатываемые этим плагином гизмо. Возвращает [code]true[/code], если не "
"переопределено."

msgid ""
"Override this method to commit a handle being edited (handles must have been "
"previously added by [method EditorNode3DGizmo.add_handles] during [method "
"_redraw]). This usually means creating an [UndoRedo] action for the change, "
"using the current handle value as \"do\" and the [param restore] argument as "
"\"undo\".\n"
"If the [param cancel] argument is [code]true[/code], the [param restore] "
"value should be directly set, without any [UndoRedo] action.\n"
"The [param secondary] argument is [code]true[/code] when the committed handle "
"is secondary (see [method EditorNode3DGizmo.add_handles] for more "
"information).\n"
"Called for this plugin's active gizmos."
msgstr ""
"Переопределите этот метод для фиксации редактируемого дескриптора "
"(дескрипторы должны быть ранее добавлены [method "
"EditorNode3DGizmo.add_handles] во время [method _redraw]). Обычно это "
"означает создание действия [UndoRedo] для изменения, используя текущее "
"значение дескриптора как «do» и аргумент [param restore] как «undo».\n"
"Если аргумент [param cancel] равен [code]true[/code], значение [param "
"restore] должно быть установлено напрямую, без какого-либо действия "
"[UndoRedo].\n"
"Аргумент [param secondary] равен [code]true[/code], когда зафиксированный "
"дескриптор является вторичным (см. [method EditorNode3DGizmo.add_handles] для "
"получения дополнительной информации).\n"
"Вызывается для активных гизмо этого плагина."

msgid ""
"Override this method to commit a group of subgizmos being edited (see [method "
"_subgizmos_intersect_ray] and [method _subgizmos_intersect_frustum]). This "
"usually means creating an [UndoRedo] action for the change, using the current "
"transforms as \"do\" and the [param restores] transforms as \"undo\".\n"
"If the [param cancel] argument is [code]true[/code], the [param restores] "
"transforms should be directly set, without any [UndoRedo] action. As with all "
"subgizmo methods, transforms are given in local space respect to the gizmo's "
"Node3D. Called for this plugin's active gizmos."
msgstr ""
"Переопределите этот метод, чтобы зафиксировать группу редактируемых subgizmos "
"(см. [method _subgizmos_intersect_ray] и [method "
"_subgizmos_intersect_frustum]). Обычно это означает создание действия "
"[UndoRedo] для изменения, используя текущие преобразования как «do» и "
"преобразования [param restores] как «undo».\n"
"Если аргумент [param cancel] равен [code]true[/code], преобразования [param "
"restores] должны быть установлены напрямую, без какого-либо действия "
"[UndoRedo]. Как и во всех методах subgizmo, преобразования задаются в "
"локальном пространстве относительно Node3D gizmo. Вызывается для активных "
"gizmos этого плагина."

msgid ""
"Override this method to return a custom [EditorNode3DGizmo] for the 3D nodes "
"of your choice, return [code]null[/code] for the rest of nodes. See also "
"[method _has_gizmo]."
msgstr ""
"Переопределите этот метод, чтобы вернуть пользовательский [EditorNode3DGizmo] "
"для 3D-узлов по вашему выбору, верните [code]null[/code] для остальных узлов. "
"См. также [method _has_gizmo]."

msgid ""
"Override this method to provide the name that will appear in the gizmo "
"visibility menu."
msgstr ""
"Переопределите этот метод, чтобы указать имя, которое будет отображаться в "
"меню видимости гизмо."

msgid ""
"Override this method to provide gizmo's handle names. The [param secondary] "
"argument is [code]true[/code] when the requested handle is secondary (see "
"[method EditorNode3DGizmo.add_handles] for more information). Called for this "
"plugin's active gizmos."
msgstr ""
"Переопределите этот метод, чтобы предоставить имена дескрипторов gizmo. "
"Аргумент [param secondary] равен [code]true[/code], когда запрошенный "
"дескриптор является вторичным (см. [method EditorNode3DGizmo.add_handles] для "
"получения дополнительной информации). Вызывается для активных gizmo этого "
"плагина."

msgid ""
"Override this method to return the current value of a handle. This value will "
"be requested at the start of an edit and used as the [code]restore[/code] "
"argument in [method _commit_handle].\n"
"The [param secondary] argument is [code]true[/code] when the requested handle "
"is secondary (see [method EditorNode3DGizmo.add_handles] for more "
"information).\n"
"Called for this plugin's active gizmos."
msgstr ""
"Переопределите этот метод, чтобы вернуть текущее значение дескриптора. Это "
"значение будет запрошено в начале редактирования и использовано как аргумент "
"[code]restore[/code] в [method _commit_handle].\n"
"Аргумент [param secondary] равен [code]true[/code], когда запрошенный "
"дескриптор является вторичным (см. [method EditorNode3DGizmo.add_handles] для "
"получения дополнительной информации).\n"
"Вызывается для активных гизмо этого плагина."

msgid ""
"Override this method to set the gizmo's priority. Gizmos with higher priority "
"will have precedence when processing inputs like handles or subgizmos "
"selection.\n"
"All built-in editor gizmos return a priority of [code]-1[/code]. If not "
"overridden, this method will return [code]0[/code], which means custom gizmos "
"will automatically get higher priority than built-in gizmos."
msgstr ""
"Переопределите этот метод, чтобы задать приоритет гизмо. Гизмо с более "
"высоким приоритетом будут иметь приоритет при обработке входных данных, таких "
"как маркеры или выбор подгизмо.\n"
"Все встроенные гизмо редактора возвращают приоритет [code]-1[/code]. Если не "
"переопределено, этот метод вернет [code]0[/code], что означает, что "
"пользовательские гизмо автоматически получат более высокий приоритет, чем "
"встроенные гизмо."

msgid ""
"Override this method to return the current transform of a subgizmo. As with "
"all subgizmo methods, the transform should be in local space respect to the "
"gizmo's Node3D. This transform will be requested at the start of an edit and "
"used in the [code]restore[/code] argument in [method _commit_subgizmos]. "
"Called for this plugin's active gizmos."
msgstr ""
"Переопределите этот метод, чтобы вернуть текущее преобразование subgizmo. Как "
"и все методы subgizmo, преобразование должно быть в локальном пространстве "
"относительно Node3D gizmo. Это преобразование будет запрошено в начале "
"редактирования и использовано в аргументе [code]restore[/code] в [method "
"_commit_subgizmos]. Вызывается для активных gizmos этого плагина."

msgid ""
"Override this method to define which Node3D nodes have a gizmo from this "
"plugin. Whenever a [Node3D] node is added to a scene this method is called, "
"if it returns [code]true[/code] the node gets a generic [EditorNode3DGizmo] "
"assigned and is added to this plugin's list of active gizmos."
msgstr ""
"Переопределите этот метод, чтобы определить, какие узлы Node3D имеют гизмо из "
"этого плагина. Этот метод вызывается всякий раз, когда узел [Node3D] "
"добавляется к сцене, если он возвращает [code]true[/code], узлу назначается "
"общий [EditorNode3DGizmo] и он добавляется в список активных гизмо этого "
"плагина."

msgid ""
"Override this method to return [code]true[/code] whenever to given handle "
"should be highlighted in the editor. The [param secondary] argument is "
"[code]true[/code] when the requested handle is secondary (see [method "
"EditorNode3DGizmo.add_handles] for more information). Called for this "
"plugin's active gizmos."
msgstr ""
"Переопределите этот метод, чтобы он возвращал [code]true[/code] всякий раз, "
"когда указанный дескриптор должен быть выделен в редакторе. Аргумент [param "
"secondary] равен [code]true[/code], когда запрошенный дескриптор является "
"вторичным (см. [method EditorNode3DGizmo.add_handles] для получения "
"дополнительной информации). Вызывается для активных гизмо этого плагина."

msgid ""
"Override this method to define whether Node3D with this gizmo should be "
"selectable even when the gizmo is hidden."
msgstr ""
"Переопределите этот метод, чтобы определить, должен ли Node3D с этим гизмо "
"быть доступным для выбора, даже если гизмо скрыто."

msgid ""
"Override this method to add all the gizmo elements whenever a gizmo update is "
"requested. It's common to call [method EditorNode3DGizmo.clear] at the "
"beginning of this method and then add visual elements depending on the node's "
"properties."
msgstr ""
"Переопределите этот метод, чтобы добавлять все элементы гизмо всякий раз, "
"когда запрашивается обновление гизмо. Обычно вызывают [method "
"EditorNode3DGizmo.clear] в начале этого метода, а затем добавляют визуальные "
"элементы в зависимости от свойств узла."

msgid ""
"Override this method to update the node's properties when the user drags a "
"gizmo handle (previously added with [method EditorNode3DGizmo.add_handles]). "
"The provided [param screen_pos] is the mouse position in screen coordinates "
"and the [param camera] can be used to convert it to raycasts.\n"
"The [param secondary] argument is [code]true[/code] when the edited handle is "
"secondary (see [method EditorNode3DGizmo.add_handles] for more information).\n"
"Called for this plugin's active gizmos."
msgstr ""
"Переопределите этот метод, чтобы обновить свойства узла, когда пользователь "
"перетаскивает ручку гизмо (ранее добавленную с помощью [method "
"EditorNode3DGizmo.add_handles]). Предоставленный [param screen_pos] — это "
"положение мыши в экранных координатах, а [param camera] можно использовать "
"для преобразования его в лучевые потоки.\n"
"Аргумент [param secondary] равен [code]true[/code], когда редактируемый "
"дескриптор является вторичным (см. [method EditorNode3DGizmo.add_handles] для "
"получения дополнительной информации).\n"
"Вызывается для активных гизмо этого плагина."

msgid ""
"Override this method to update the node properties during subgizmo editing "
"(see [method _subgizmos_intersect_ray] and [method "
"_subgizmos_intersect_frustum]). The [param transform] is given in the "
"Node3D's local coordinate system. Called for this plugin's active gizmos."
msgstr ""
"Переопределите этот метод для обновления свойств узла во время редактирования "
"subgizmo (см. [method _subgizmos_intersect_ray] и [method "
"_subgizmos_intersect_frustum]). [param transform] задается в локальной "
"системе координат Node3D. Вызывается для активных gizmos этого плагина."

msgid ""
"Override this method to allow selecting subgizmos using mouse drag box "
"selection. Given a [param camera] and [param frustum_planes], this method "
"should return which subgizmos are contained within the frustums. The [param "
"frustum_planes] argument consists of an array with all the [Plane]s that make "
"up the selection frustum. The returned value should contain a list of unique "
"subgizmo identifiers, these identifiers can have any non-negative value and "
"will be used in other virtual methods like [method _get_subgizmo_transform] "
"or [method _commit_subgizmos]. Called for this plugin's active gizmos."
msgstr ""
"Переопределите этот метод, чтобы разрешить выбор подобъектов с помощью "
"выделения области перетаскивания мыши. При наличии [param camera] и [param "
"frustum_planes] этот метод должен возвращать, какие подобъекты содержатся в "
"усеченных пирамидах. Аргумент [param frustum_planes] состоит из массива со "
"всеми [Plane], которые составляют усеченную пирамиду выбора. Возвращаемое "
"значение должно содержать список уникальных идентификаторов подобъектов, эти "
"идентификаторы могут иметь любое неотрицательное значение и будут "
"использоваться в других виртуальных методах, таких как [method "
"_get_subgizmo_transform] или [method _commit_subgizmos]. Вызывается для "
"активных гизмо этого плагина."

msgid ""
"Override this method to allow selecting subgizmos using mouse clicks. Given a "
"[param camera] and a [param screen_pos] in screen coordinates, this method "
"should return which subgizmo should be selected. The returned value should be "
"a unique subgizmo identifier, which can have any non-negative value and will "
"be used in other virtual methods like [method _get_subgizmo_transform] or "
"[method _commit_subgizmos]. Called for this plugin's active gizmos."
msgstr ""
"Переопределите этот метод, чтобы разрешить выбор подгимов с помощью щелчков "
"мыши. При наличии [param camera] и [param screen_pos] в экранных координатах "
"этот метод должен возвращать, какой подгимов следует выбрать. Возвращаемое "
"значение должно быть уникальным идентификатором подгимов, который может иметь "
"любое неотрицательное значение и будет использоваться в других виртуальных "
"методах, таких как [method _get_subgizmo_transform] или [method "
"_commit_subgizmos]. Вызывается для активных подгимов этого плагина."

msgid ""
"Adds a new material to the internal material list for the plugin. It can then "
"be accessed with [method get_material]. Should not be overridden."
msgstr ""
"Добавляет новый материал во внутренний список материалов для плагина. Затем к "
"нему можно получить доступ с помощью [method get_material]. Не следует "
"переопределять."

msgid ""
"Creates a handle material with its variants (selected and/or editable) and "
"adds them to the internal material list. They can then be accessed with "
"[method get_material] and used in [method EditorNode3DGizmo.add_handles]. "
"Should not be overridden.\n"
"You can optionally provide a texture to use instead of the default icon."
msgstr ""
"Создает материал ручки с его вариантами (выбранными и/или редактируемыми) и "
"добавляет их во внутренний список материалов. Затем к ним можно получить "
"доступ с помощью [method get_material] и использовать в [method "
"EditorNode3DGizmo.add_handles]. Не следует переопределять.\n"
"При желании можно указать текстуру для использования вместо значка по "
"умолчанию."

msgid ""
"Creates an icon material with its variants (selected and/or editable) and "
"adds them to the internal material list. They can then be accessed with "
"[method get_material] and used in [method "
"EditorNode3DGizmo.add_unscaled_billboard]. Should not be overridden."
msgstr ""
"Создает материал значка с его вариантами (выбранными и/или редактируемыми) и "
"добавляет их во внутренний список материалов. Затем к ним можно получить "
"доступ с помощью [method get_material] и использовать в [method "
"EditorNode3DGizmo.add_unscaled_billboard]. Не следует переопределять."

msgid ""
"Creates an unshaded material with its variants (selected and/or editable) and "
"adds them to the internal material list. They can then be accessed with "
"[method get_material] and used in [method EditorNode3DGizmo.add_mesh] and "
"[method EditorNode3DGizmo.add_lines]. Should not be overridden."
msgstr ""
"Создает незатененный материал с его вариантами (выбранными и/или "
"редактируемыми) и добавляет их во внутренний список материалов. Затем к ним "
"можно получить доступ с помощью [method get_material] и использовать в "
"[method EditorNode3DGizmo.add_mesh] и [method EditorNode3DGizmo.add_lines]. "
"Не следует переопределять."

msgid ""
"Gets material from the internal list of materials. If an [EditorNode3DGizmo] "
"is provided, it will try to get the corresponding variant (selected and/or "
"editable)."
msgstr ""
"Получает материал из внутреннего списка материалов. Если предоставлен "
"[EditorNode3DGizmo], он попытается получить соответствующий вариант "
"(выбранный и/или редактируемый)."

msgid ""
"Editor-only singleton that returns paths to various OS-specific data folders "
"and files."
msgstr ""
"Синглтон, доступный только редактору, который возвращает пути к различным "
"папкам и файлам данных, специфичным для ОС."

msgid ""
"This editor-only singleton returns OS-specific paths to various data folders "
"and files. It can be used in editor plugins to ensure files are saved in the "
"correct location on each operating system.\n"
"[b]Note:[/b] This singleton is not accessible in exported projects. "
"Attempting to access it in an exported project will result in a script error "
"as the singleton won't be declared. To prevent script errors in exported "
"projects, use [method Engine.has_singleton] to check whether the singleton is "
"available before using it.\n"
"[b]Note:[/b] On the Linux/BSD platform, Godot complies with the [url=https://"
"specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html]XDG Base "
"Directory Specification[/url]. You can override environment variables "
"following the specification to change the editor and project data paths."
msgstr ""
"Этот синглтон, предназначенный только для редактора, возвращает пути, "
"специфичные для ОС, к различным папкам и файлам данных. Его можно "
"использовать в плагинах редактора, чтобы гарантировать сохранение файлов в "
"правильном месте в каждой операционной системе.\n"
"[b]Примечание:[/b] Этот синглтон недоступен в экспортированных проектах. "
"Попытка доступа к нему в экспортированном проекте приведет к ошибке скрипта, "
"так как синглтон не будет объявлен. Чтобы предотвратить ошибки скрипта в "
"экспортированных проектах, используйте [method Engine.has_singleton], чтобы "
"проверить, доступен ли синглтон, перед его использованием.\n"
"[b]Примечание:[/b] На платформе Linux/BSD Godot соответствует [url=https://"
"specifications.freedesktop.org/basedir-spec/basedir-spec-"
"latest.html]Спецификации базового каталога XDG[/url]. Вы можете "
"переопределить переменные среды, следуя спецификации, чтобы изменить пути к "
"данным редактора и проекта."

msgid "File paths in Godot projects"
msgstr "Пути к файлам в проектах Godot"

msgid ""
"Returns the absolute path to the user's cache folder. This folder should be "
"used for temporary data that can be removed safely whenever the editor is "
"closed (such as generated resource thumbnails).\n"
"[b]Default paths per platform:[/b]\n"
"[codeblock lang=text]\n"
"- Windows: %LOCALAPPDATA%\\Godot\\\n"
"- macOS: ~/Library/Caches/Godot/\n"
"- Linux: ~/.cache/godot/\n"
"[/codeblock]"
msgstr ""
"Возвращает абсолютный путь к папке кэша пользователя. Эту папку следует "
"использовать для временных данных, которые можно безопасно удалить при "
"закрытии редактора (например, сгенерированные миниатюры ресурсов).\n"
"[b]Пути по умолчанию для каждой платформы:[/b]\n"
"[codeblock lang=text]\n"
"- Windows: %LOCALAPPDATA%\\Godot\\\n"
"- macOS: ~/Library/Caches/Godot/\n"
"- Linux: ~/.cache/godot/\n"
"[/codeblock]"

msgid ""
"Returns the absolute path to the user's configuration folder. This folder "
"should be used for [i]persistent[/i] user configuration files.\n"
"[b]Default paths per platform:[/b]\n"
"[codeblock lang=text]\n"
"- Windows: %APPDATA%\\Godot\\                    (same as `get_data_dir()`)\n"
"- macOS: ~/Library/Application Support/Godot/  (same as `get_data_dir()`)\n"
"- Linux: ~/.config/godot/\n"
"[/codeblock]"
msgstr ""
"Возвращает абсолютный путь к папке конфигурации пользователя. Эту папку "
"следует использовать для [i]постоянных[/i] файлов конфигурации пользователя.\n"
"[b]Пути по умолчанию для каждой платформы:[/b]\n"
"[codeblock lang=text]\n"
"- Windows: %APPDATA%\\Godot\\                    (same as `get_data_dir()`)\n"
"- macOS: ~/Library/Application Support/Godot/  (same as `get_data_dir()`)\n"
"- Linux: ~/.config/godot/\n"
"[/codeblock]"

msgid ""
"Returns the absolute path to the user's data folder. This folder should be "
"used for [i]persistent[/i] user data files such as installed export "
"templates.\n"
"[b]Default paths per platform:[/b]\n"
"[codeblock lang=text]\n"
"- Windows: %APPDATA%\\Godot\\                    (same as "
"`get_config_dir()`)\n"
"- macOS: ~/Library/Application Support/Godot/  (same as `get_config_dir()`)\n"
"- Linux: ~/.local/share/godot/\n"
"[/codeblock]"
msgstr ""
"Возвращает абсолютный путь к папке данных пользователя. Эту папку следует "
"использовать для [i]постоянных[/i] файлов данных пользователя, таких как "
"установленные шаблоны экспорта.\n"
"[b]Пути по умолчанию для каждой платформы:[/b]\n"
"[codeblock lang=text]\n"
"- Windows: %APPDATA%\\Godot\\                    (same as "
"`get_config_dir()`)\n"
"- macOS: ~/Library/Application Support/Godot/  (same as `get_config_dir()`)\n"
"- Linux: ~/.local/share/godot/\n"
"[/codeblock]"

msgid ""
"Returns the project-specific editor settings path. Projects all have a unique "
"subdirectory inside the settings path where project-specific editor settings "
"are saved."
msgstr ""
"Возвращает путь настроек редактора, специфичный для проекта. Все проекты "
"имеют уникальный подкаталог внутри пути настроек, где сохраняются настройки "
"редактора, специфичные для проекта."

msgid ""
"Returns the absolute path to the self-contained file that makes the current "
"Godot editor instance be considered as self-contained. Returns an empty "
"string if the current Godot editor instance isn't self-contained. See also "
"[method is_self_contained]."
msgstr ""
"Возвращает абсолютный путь к автономному файлу, который делает текущий "
"экземпляр редактора Godot автономным. Возвращает пустую строку, если текущий "
"экземпляр редактора Godot не автономен. См. также [method is_self_contained]."

msgid ""
"Returns [code]true[/code] if the editor is marked as self-contained, "
"[code]false[/code] otherwise. When self-contained mode is enabled, user "
"configuration, data and cache files are saved in an [code]editor_data/[/code] "
"folder next to the editor binary. This makes portable usage easier and "
"ensures the Godot editor minimizes file writes outside its own folder. Self-"
"contained mode is not available for exported projects.\n"
"Self-contained mode can be enabled by creating a file named [code]._sc_[/"
"code] or [code]_sc_[/code] in the same folder as the editor binary or "
"macOS .app bundle while the editor is not running. See also [method "
"get_self_contained_file].\n"
"[b]Note:[/b] On macOS, quarantine flag should be manually removed before "
"using self-contained mode, see [url=https://docs.godotengine.org/en/stable/"
"tutorials/export/running_on_macos.html]Running on macOS[/url].\n"
"[b]Note:[/b] On macOS, placing [code]_sc_[/code] or any other file "
"inside .app bundle will break digital signature and make it non-portable, "
"consider placing it in the same folder as the .app bundle instead.\n"
"[b]Note:[/b] The Steam release of Godot uses self-contained mode by default."
msgstr ""
"Возвращает [code]true[/code], если редактор отмечен как автономный, "
"[code]false[/code] в противном случае. Когда автономный режим включен, "
"пользовательская конфигурация, данные и файлы кэша сохраняются в папке "
"[code]editor_data/[/code] рядом с двоичным файлом редактора. Это упрощает "
"портативное использование и гарантирует, что редактор Godot минимизирует "
"запись файлов за пределами своей собственной папки. Автономный режим "
"недоступен для экспортированных проектов.\n"
"Автономный режим можно включить, создав файл с именем [code]._sc_[/code] или "
"[code]_sc_[/code] в той же папке, что и двоичный файл редактора или пакет "
"macOS .app, пока редактор не запущен. См. также [method "
"get_self_contained_file].\n"
"[b]Примечание:[/b] На macOS флаг карантина должен быть вручную удален перед "
"использованием автономного режима, см. [url=https://docs.godotengine.org/en/"
"stable/tutorials/export/running_on_macos.html]Запуск на macOS[/url].\n"
"[b]Примечание:[/b] На macOS размещение [code]_sc_[/code] или любого другого "
"файла внутри пакета .app нарушит цифровую подпись и сделает его "
"непереносимым, рассмотрите возможность размещения его в той же папке, что и "
"пакет .app.\n"
"[b]Примечание:[/b] В Steam-релизе Godot по умолчанию используется автономный "
"режим."

msgid "Used by the editor to extend its functionality."
msgstr "Используется редактором для расширения его функциональности."

msgid ""
"Plugins are used by the editor to extend functionality. The most common types "
"of plugins are those which edit a given node or resource type, import plugins "
"and export plugins. See also [EditorScript] to add functions to the editor.\n"
"[b]Note:[/b] Some names in this class contain \"left\" or \"right\" (e.g. "
"[constant DOCK_SLOT_LEFT_UL]). These APIs assume left-to-right layout, and "
"would be backwards when using right-to-left layout. These names are kept for "
"compatibility reasons."
msgstr ""
"Плагины используются редактором для расширения функциональности. Наиболее "
"распространенными типами плагинов являются те, которые редактируют заданный "
"узел или тип ресурса, импортируют плагины и экспортируют плагины. См. также "
"[EditorScript], чтобы добавить функции в редактор.\n"
"[b]Примечание:[/b] Некоторые имена в этом классе содержат «left» или «right» "
"(например, [constant DOCK_SLOT_LEFT_UL]). Эти API предполагают расположение "
"слева направо и будут обратными при использовании расположения справа налево. "
"Эти имена сохранены из соображений совместимости."

msgid "Editor plugins documentation index"
msgstr "Индекс документации плагинов редактора"

msgid ""
"This method is called when the editor is about to save the project, switch to "
"another tab, etc. It asks the plugin to apply any pending state changes to "
"ensure consistency.\n"
"This is used, for example, in shader editors to let the plugin know that it "
"must apply the shader code being written by the user to the object."
msgstr ""
"Этот метод вызывается, когда редактор собирается сохранить проект, "
"переключиться на другую вкладку и т. д. Он просит плагин применить любые "
"отложенные изменения состояния, чтобы обеспечить согласованность. \n"
"Это используется, например, в редакторах шейдеров, чтобы дать плагину знать, "
"что он должен применить код шейдера, написанный пользователем, к объекту."

msgid ""
"This method is called when the editor is about to run the project. The plugin "
"can then perform required operations before the project runs.\n"
"This method must return a boolean. If this method returns [code]false[/code], "
"the project will not run. The run is aborted immediately, so this also "
"prevents all other plugins' [method _build] methods from running."
msgstr ""
"Этот метод вызывается, когда редактор собирается запустить проект. \n"
"Затем плагин может выполнить требуемые операции перед запуском проекта. Этот "
"метод должен возвращать логическое значение. Если этот метод возвращает "
"[code]false[/code], проект не будет запущен. Запуск немедленно прерывается, "
"поэтому это также предотвращает запуск всех методов [method _build] других "
"плагинов."

msgid ""
"Clear all the state and reset the object being edited to zero. This ensures "
"your plugin does not keep editing a currently existing node, or a node from "
"the wrong scene."
msgstr ""
"Очистите все состояния и сбросьте редактируемый объект на ноль. Это "
"гарантирует, что ваш плагин не будет продолжать редактировать существующий "
"узел или узел из неправильной сцены."

msgid ""
"Called by the engine when the user disables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
"Вызывается движком, когда пользователь отключает [EditorPlugin] на вкладке "
"«Плагин» окна настроек проекта."

msgid ""
"This function is used for plugins that edit specific object types (nodes or "
"resources). It requests the editor to edit the given object.\n"
"[param object] can be [code]null[/code] if the plugin was editing an object, "
"but there is no longer any selected object handled by this plugin. It can be "
"used to cleanup editing state."
msgstr ""
"Эта функция используется для плагинов, которые редактируют определенные типы "
"объектов (узлы или ресурсы). Она запрашивает редактор для редактирования "
"указанного объекта.\n"
"[param object] может быть [code]null[/code], если плагин редактировал объект, "
"но больше нет выбранного объекта, обрабатываемого этим плагином. Его можно "
"использовать для очистки состояния редактирования."

msgid ""
"Called by the engine when the user enables the [EditorPlugin] in the Plugin "
"tab of the project settings window."
msgstr ""
"Вызывается движком, когда пользователь включает [EditorPlugin] на вкладке "
"«Плагин» окна настроек проекта."

msgid ""
"Called by the engine when the 3D editor's viewport is updated. [param "
"viewport_control] is an overlay on top of the viewport and it can be used for "
"drawing. You can update the viewport manually by calling [method "
"update_overlays].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _forward_3d_draw_over_viewport(overlay):\n"
"\t# Draw a circle at the cursor's position.\n"
"\toverlay.draw_circle(overlay.get_local_mouse_position(), 64, Color.WHITE)\n"
"\n"
"func _forward_3d_gui_input(camera, event):\n"
"\tif event is InputEventMouseMotion:\n"
"\t\t# Redraw the viewport when the cursor is moved.\n"
"\t\tupdate_overlays()\n"
"\t\treturn EditorPlugin.AFTER_GUI_INPUT_STOP\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_PASS\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Forward3DDrawOverViewport(Control viewportControl)\n"
"{\n"
"\t// Draw a circle at the cursor's position.\n"
"\tviewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, "
"Colors.White);\n"
"}\n"
"\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"viewportCamera, InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\t// Redraw the viewport when the cursor is moved.\n"
"\t\tUpdateOverlays();\n"
"\t\treturn EditorPlugin.AfterGuiInput.Stop;\n"
"\t}\n"
"\treturn EditorPlugin.AfterGuiInput.Pass;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Вызывается движком при обновлении области просмотра 3D-редактора. [param "
"viewport_control] — это наложение поверх области просмотра, которое можно "
"использовать для рисования. Обновить область просмотра можно вручную, вызвав "
"[method update_overlays].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _forward_3d_draw_over_viewport(overlay):\n"
"\t# Нарисуйте круг в месте расположения курсора.\n"
"\toverlay.draw_circle(overlay.get_local_mouse_position(), 64, Color.WHITE)\n"
"\n"
"func _forward_3d_gui_input(camera, event):\n"
"\tif event is InputEventMouseMotion:\n"
"\t\t# Перерисовывать область просмотра при перемещении курсора.\n"
"\t\tupdate_overlays()\n"
"\t\treturn EditorPlugin.AFTER_GUI_INPUT_STOP\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_PASS\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Forward3DDrawOverViewport(Control viewportControl)\n"
"{\n"
"\t// Нарисуйте круг в месте расположения курсора.\n"
"\tviewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, "
"Colors.White);\n"
"}\n"
"\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"viewportCamera, InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\t// Перерисовывать область просмотра при перемещении курсора.\n"
"\t\tUpdateOverlays();\n"
"\t\treturn EditorPlugin.AfterGuiInput.Stop;\n"
"\t}\n"
"\treturn EditorPlugin.AfterGuiInput.Pass;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"This method is the same as [method _forward_3d_draw_over_viewport], except it "
"draws on top of everything. Useful when you need an extra layer that shows "
"over anything else.\n"
"You need to enable calling of this method by using [method "
"set_force_draw_over_forwarding_enabled]."
msgstr ""
"Этот метод такой же, как [method _forward_3d_draw_over_viewport], за "
"исключением того, что он рисует поверх всего. Полезно, когда вам нужен "
"дополнительный слой, который отображается поверх всего остального.\n"
"Вам нужно включить вызов этого метода с помощью [method "
"set_force_draw_over_forwarding_enabled]."

msgid ""
"Called when there is a root node in the current edited scene, [method "
"_handles] is implemented, and an [InputEvent] happens in the 3D viewport. The "
"return value decides whether the [InputEvent] is consumed or forwarded to "
"other [EditorPlugin]s. See [enum AfterGUIInput] for options.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Prevents the InputEvent from reaching other Editor classes.\n"
"func _forward_3d_gui_input(camera, event):\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_STOP\n"
"[/gdscript]\n"
"[csharp]\n"
"// Prevents the InputEvent from reaching other Editor classes.\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"camera, InputEvent @event)\n"
"{\n"
"\treturn EditorPlugin.AfterGuiInput.Stop;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This method must return [constant AFTER_GUI_INPUT_PASS] in order to forward "
"the [InputEvent] to other Editor classes.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Consumes InputEventMouseMotion and forwards other InputEvent types.\n"
"func _forward_3d_gui_input(camera, event):\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_STOP if event is InputEventMouseMotion "
"else EditorPlugin.AFTER_GUI_INPUT_PASS\n"
"[/gdscript]\n"
"[csharp]\n"
"// Consumes InputEventMouseMotion and forwards other InputEvent types.\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"camera, InputEvent @event)\n"
"{\n"
"\treturn @event is InputEventMouseMotion ? EditorPlugin.AfterGuiInput.Stop : "
"EditorPlugin.AfterGuiInput.Pass;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Вызывается, когда в текущей редактируемой сцене есть корневой узел, "
"реализуется [method _handles], и в окне 3D-просмотра происходит [InputEvent]. "
"Возвращаемое значение определяет, будет ли [InputEvent] использован или "
"перенаправлен другим [EditorPlugin]. См. [enum AfterGUIInput] для опций.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Предотвращает попадание InputEvent в другие классы редактора.\n"
"func _forward_3d_gui_input(camera, event):\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_STOP\n"
"[/gdscript]\n"
"[csharp]\n"
"// Предотвращает попадание InputEvent в другие классы редактора.\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"camera, InputEvent @event)\n"
"{\n"
"\treturn EditorPlugin.AfterGuiInput.Stop;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Этот метод должен возвращать [constant AFTER_GUI_INPUT_PASS] для пересылки "
"[InputEvent] другим классам редактора.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Потребляет InputEventMouseMotion и пересылает другие типы InputEvent.\n"
"func _forward_3d_gui_input(camera, event):\n"
"\treturn EditorPlugin.AFTER_GUI_INPUT_STOP if event is InputEventMouseMotion "
"else EditorPlugin.AFTER_GUI_INPUT_PASS\n"
"[/gdscript]\n"
"[csharp]\n"
"//Потребляет InputEventMouseMotion и пересылает другие типы InputEvent.\n"
"public override EditorPlugin.AfterGuiInput _Forward3DGuiInput(Camera3D "
"camera, InputEvent @event)\n"
"{\n"
"\treturn @event is InputEventMouseMotion ? EditorPlugin.AfterGuiInput.Stop : "
"EditorPlugin.AfterGuiInput.Pass;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Called by the engine when the 2D editor's viewport is updated. [param "
"viewport_control] is an overlay on top of the viewport and it can be used for "
"drawing. You can update the viewport manually by calling [method "
"update_overlays].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _forward_canvas_draw_over_viewport(overlay):\n"
"\t# Draw a circle at the cursor's position.\n"
"\toverlay.draw_circle(overlay.get_local_mouse_position(), 64, Color.WHITE)\n"
"\n"
"func _forward_canvas_gui_input(event):\n"
"\tif event is InputEventMouseMotion:\n"
"\t\t# Redraw the viewport when the cursor is moved.\n"
"\t\tupdate_overlays()\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _ForwardCanvasDrawOverViewport(Control viewportControl)\n"
"{\n"
"\t// Draw a circle at the cursor's position.\n"
"\tviewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, "
"Colors.White);\n"
"}\n"
"\n"
"public override bool _ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\t// Redraw the viewport when the cursor is moved.\n"
"\t\tUpdateOverlays();\n"
"\t\treturn true;\n"
"\t}\n"
"\treturn false;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Вызывается движком при обновлении области просмотра 2D-редактора. [param "
"viewport_control] — это наложение поверх области просмотра, которое можно "
"использовать для рисования. Обновить область просмотра можно вручную, вызвав "
"[method update_overlays].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _forward_canvas_draw_over_viewport(overlay):\n"
"\t# Нарисуйте круг в месте расположения курсора.\n"
"\toverlay.draw_circle(overlay.get_local_mouse_position(), 64, Color.WHITE)\n"
"\n"
"func _forward_canvas_gui_input(event):\n"
"\tif event is InputEventMouseMotion:\n"
"\t\t# Перерисовывать область просмотра при перемещении курсора.\n"
"\t\tupdate_overlays()\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _ForwardCanvasDrawOverViewport(Control viewportControl)\n"
"{\n"
"\t// Нарисуйте круг в месте расположения курсора.\n"
"\tviewportControl.DrawCircle(viewportControl.GetLocalMousePosition(), 64, "
"Colors.White);\n"
"}\n"
"\n"
"public override bool _ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\t// Перерисовывать область просмотра при перемещении курсора.\n"
"\t\tUpdateOverlays();\n"
"\t\treturn true;\n"
"\t}\n"
"\treturn false;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"This method is the same as [method _forward_canvas_draw_over_viewport], "
"except it draws on top of everything. Useful when you need an extra layer "
"that shows over anything else.\n"
"You need to enable calling of this method by using [method "
"set_force_draw_over_forwarding_enabled]."
msgstr ""
"Этот метод такой же, как [method _forward_canvas_draw_over_viewport], за "
"исключением того, что он рисует поверх всего. Полезно, когда вам нужен "
"дополнительный слой, который отображается поверх всего остального.\n"
"Вам нужно включить вызов этого метода с помощью [method "
"set_force_draw_over_forwarding_enabled]."

msgid ""
"Called when there is a root node in the current edited scene, [method "
"_handles] is implemented, and an [InputEvent] happens in the 2D viewport. If "
"this method returns [code]true[/code], [param event] is intercepted by this "
"[EditorPlugin], otherwise [param event] is forwarded to other Editor "
"classes.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Prevents the InputEvent from reaching other Editor classes.\n"
"func _forward_canvas_gui_input(event):\n"
"\treturn true\n"
"[/gdscript]\n"
"[csharp]\n"
"// Prevents the InputEvent from reaching other Editor classes.\n"
"public override bool ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\treturn true;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This method must return [code]false[/code] in order to forward the "
"[InputEvent] to other Editor classes.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Consumes InputEventMouseMotion and forwards other InputEvent types.\n"
"func _forward_canvas_gui_input(event):\n"
"\tif (event is InputEventMouseMotion):\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"// Consumes InputEventMouseMotion and forwards other InputEvent types.\n"
"public override bool _ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\treturn true;\n"
"\t}\n"
"\treturn false;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Вызывается, когда в текущей редактируемой сцене есть корневой узел, "
"реализуется [method _handles], и в 2D-окне просмотра происходит [InputEvent]. "
"Если этот метод возвращает [code]true[/code], [param event] перехватывается "
"этим [EditorPlugin], в противном случае [param event] пересылается другим "
"классам Editor.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Предотвращает попадание InputEvent в другие классы редактора.\n"
"func _forward_canvas_gui_input(event):\n"
"\treturn true\n"
"[/gdscript]\n"
"[csharp]\n"
"// Предотвращает попадание InputEvent в другие классы редактора.\n"
"public override bool ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\treturn true;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Этот метод должен возвращать [code]false[/code], чтобы переслать [InputEvent] "
"другим классам редактора.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Потребляет InputEventMouseMotion и пересылает другие типы InputEvent.\n"
"func _forward_canvas_gui_input(event):\n"
"\tif (event is InputEventMouseMotion):\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"// Потребляет InputEventMouseMotion и пересылает другие типы InputEvent.\n"
"public override bool _ForwardCanvasGuiInput(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseMotion)\n"
"\t{\n"
"\t\treturn true;\n"
"\t}\n"
"\treturn false;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"This is for editors that edit script-based objects. You can return a list of "
"breakpoints in the format ([code]script:line[/code]), for example: "
"[code]res://path_to_script.gd:25[/code]."
msgstr ""
"Это для редакторов, которые редактируют объекты на основе скриптов. Вы можете "
"вернуть список точек останова в формате ([code]script:line[/code]), например: "
"[code]res://path_to_script.gd:25[/code]."

msgid ""
"Override this method in your plugin to return a [Texture2D] in order to give "
"it an icon.\n"
"For main screen plugins, this appears at the top of the screen, to the right "
"of the \"2D\", \"3D\", \"Script\", \"Game\", and \"AssetLib\" buttons.\n"
"Ideally, the plugin icon should be white with a transparent background and "
"16×16 pixels in size.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get_plugin_icon():\n"
"\t# You can use a custom icon:\n"
"\treturn preload(\"res://addons/my_plugin/my_plugin_icon.svg\")\n"
"\t# Or use a built-in icon:\n"
"\treturn EditorInterface.get_editor_theme().get_icon(\"Node\", "
"\"EditorIcons\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Texture2D _GetPluginIcon()\n"
"{\n"
"\t// You can use a custom icon:\n"
"\treturn ResourceLoader.Load<Texture2D>(\"res://addons/my_plugin/"
"my_plugin_icon.svg\");\n"
"\t// Or use a built-in icon:\n"
"\treturn EditorInterface.Singleton.GetEditorTheme().GetIcon(\"Node\", "
"\"EditorIcons\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Переопределите этот метод в вашем плагине, чтобы вернуть [Texture2D], и чтобы "
"присвоить ему значок.\n"
"Для плагинов главного экрана он отображается в верхней части экрана, справа "
"от кнопок «2D», «3D», «Script», «Game» и «AssetLib».\n"
"В идеале значок плагина должен быть белым с прозрачным фоном и размером 16×16 "
"пикселей.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get_plugin_icon():\n"
"\t# Вы можете использовать пользовательскую иконку:\n"
"\treturn preload(\"res://addons/my_plugin/my_plugin_icon.svg\")\n"
"\t# Или использовать встроенную иконку:\n"
"\treturn EditorInterface.get_editor_theme().get_icon(\"Node\", "
"\"EditorIcons\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Texture2D _GetPluginIcon()\n"
"{\n"
"\t// Вы можете использовать пользовательскую иконку:\n"
"\treturn ResourceLoader.Load<Texture2D>(\"res://addons/my_plugin/"
"my_plugin_icon.svg\");\n"
"\t// Или использовать встроенную иконку:\n"
"\treturn EditorInterface.Singleton.GetEditorTheme().GetIcon(\"Node\", "
"\"EditorIcons\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Override this method in your plugin to provide the name of the plugin when "
"displayed in the Godot editor.\n"
"For main screen plugins, this appears at the top of the screen, to the right "
"of the \"2D\", \"3D\", \"Script\", \"Game\", and \"AssetLib\" buttons."
msgstr ""
"Переопределите этот метод в вашем плагине, чтобы указать имя плагина при "
"отображении в редакторе Godot.\n"
"Для плагинов главного экрана это отображается в верхней части экрана, справа "
"от кнопок «2D», «3D», «Script», «Game» и «AssetLib»."

msgid ""
"Override this method to provide a state data you want to be saved, like view "
"position, grid settings, folding, etc. This is used when saving the scene (so "
"state is kept when opening it again) and for switching tabs (so state can be "
"restored when the tab returns). This data is automatically saved for each "
"scene in an [code]editstate[/code] file in the editor metadata folder. If you "
"want to store global (scene-independent) editor data for your plugin, you can "
"use [method _get_window_layout] instead.\n"
"Use [method _set_state] to restore your saved state.\n"
"[b]Note:[/b] This method should not be used to save important settings that "
"should persist with the project.\n"
"[b]Note:[/b] You must implement [method _get_plugin_name] for the state to be "
"stored and restored correctly.\n"
"[codeblock]\n"
"func _get_state():\n"
"\tvar state = { \"zoom\": zoom, \"preferred_color\": my_color }\n"
"\treturn state\n"
"[/codeblock]"
msgstr ""
"Переопределите этот метод, чтобы предоставить данные о состоянии, которые "
"необходимо сохранить, например, положение вида, настройки сетки, сворачивание "
"и т. д. Это используется при сохранении сцены (чтобы состояние сохранялось "
"при её повторном открытии) и для переключения вкладок (чтобы состояние можно "
"было восстановить при возврате вкладки). Эти данные автоматически сохраняются "
"для каждой сцены в файле [code]editstate[/code] в папке метаданных редактора. "
"Если вы хотите сохранить глобальные (независимые от сцены) данные редактора "
"для своего плагина, вы можете использовать [method _get_window_layout].\n"
"Используйте [method _set_state] для восстановления сохранённого состояния.\n"
"[b]Примечание:[/b] Этот метод не следует использовать для сохранения важных "
"настроек, которые должны сохраняться в проекте.\n"
"[b]Примечание:[/b] Для корректного сохранения и восстановления состояния "
"необходимо реализовать [method _get_plugin_name].\n"
"[codeblock]\n"
"func _get_state():\n"
"\tvar state = { \"zoom\": zoom, \"preferred_color\": my_color }\n"
"\treturn state\n"
"[/codeblock]"

msgid ""
"Override this method to provide a custom message that lists unsaved changes. "
"The editor will call this method when exiting or when closing a scene, and "
"display the returned string in a confirmation dialog. Return empty string if "
"the plugin has no unsaved changes.\n"
"When closing a scene, [param for_scene] is the path to the scene being "
"closed. You can use it to handle built-in resources in that scene.\n"
"If the user confirms saving, [method _save_external_data] will be called, "
"before closing the editor.\n"
"[codeblock]\n"
"func _get_unsaved_status(for_scene):\n"
"\tif not unsaved:\n"
"\t\treturn \"\"\n"
"\n"
"\tif for_scene.is_empty():\n"
"\t\treturn \"Save changes in MyCustomPlugin before closing?\"\n"
"\telse:\n"
"\t\treturn \"Scene %s has changes from MyCustomPlugin. Save before closing?\" "
"% for_scene.get_file()\n"
"\n"
"func _save_external_data():\n"
"\tunsaved = false\n"
"[/codeblock]\n"
"If the plugin has no scene-specific changes, you can ignore the calls when "
"closing scenes:\n"
"[codeblock]\n"
"func _get_unsaved_status(for_scene):\n"
"\tif not for_scene.is_empty():\n"
"\t\treturn \"\"\n"
"[/codeblock]"
msgstr ""
"Переопределите этот метод, чтобы предоставить пользовательское сообщение, в "
"котором перечислены несохраненные изменения. Редактор вызовет этот метод при "
"выходе или закрытии сцены и отобразит возвращенную строку в диалоговом окне "
"подтверждения. Возвращает пустую строку, если у плагина нет несохраненных "
"изменений.\n"
"При закрытии сцены [param for_scene] — это путь к закрываемой сцене. Вы "
"можете использовать его для обработки встроенных ресурсов в этой сцене.\n"
"Если пользователь подтверждает сохранение, перед закрытием редактора будет "
"вызван [method _save_external_data].\n"
"[codeblock]\n"
"func _get_unsaved_status(for_scene):\n"
"\tif not unsaved:\n"
"\t\treturn \"\"\n"
"\n"
"\tif for_scene.is_empty():\n"
"\t\treturn \"Save changes in MyCustomPlugin before closing?\"\n"
"\telse:\n"
"\t\treturn \"Scene %s has changes from MyCustomPlugin. Save before closing?\" "
"% for_scene.get_file()\n"
"\n"
"func _save_external_data():\n"
"\tunsaved = false\n"
"[/codeblock]\n"
"Если плагин не имеет изменений, специфичных для сцены, вы можете игнорировать "
"вызовы при закрытии сцен:\n"
"[codeblock]\n"
"func _get_unsaved_status(for_scene):\n"
"\tif not for_scene.is_empty():\n"
"\t\treturn \"\"\n"
"[/codeblock]"

msgid ""
"Override this method to provide the GUI layout of the plugin or any other "
"data you want to be stored. This is used to save the project's editor layout "
"when [method queue_save_layout] is called or the editor layout was changed "
"(for example changing the position of a dock). The data is stored in the "
"[code]editor_layout.cfg[/code] file in the editor metadata directory.\n"
"Use [method _set_window_layout] to restore your saved layout.\n"
"[codeblock]\n"
"func _get_window_layout(configuration):\n"
"\tconfiguration.set_value(\"MyPlugin\", \"window_position\", "
"$Window.position)\n"
"\tconfiguration.set_value(\"MyPlugin\", \"icon_color\", $Icon.modulate)\n"
"[/codeblock]"
msgstr ""
"Переопределите этот метод, чтобы предоставить макет GUI плагина или любые "
"другие данные, которые вы хотите сохранить. Это используется для сохранения "
"макета редактора проекта при вызове [method queue_save_layout] или изменении "
"макета редактора (например, при изменении положения дока). Данные сохраняются "
"в файле [code]editor_layout.cfg[/code] в каталоге метаданных редактора.\n"
"Используйте [method _set_window_layout], чтобы восстановить сохраненный "
"макет.\n"
"[codeblock]\n"
"func _get_window_layout(configuration):\n"
"\tconfiguration.set_value(\"MyPlugin\", \"window_position\", "
"$Window.position)\n"
"\tconfiguration.set_value(\"MyPlugin\", \"icon_color\", $Icon.modulate)\n"
"[/codeblock]"

msgid ""
"Implement this function if your plugin edits a specific type of object "
"(Resource or Node). If you return [code]true[/code], then you will get the "
"functions [method _edit] and [method _make_visible] called when the editor "
"requests them. If you have declared the methods [method "
"_forward_canvas_gui_input] and [method _forward_3d_gui_input] these will be "
"called too.\n"
"[b]Note:[/b] Each plugin should handle only one type of objects at a time. If "
"a plugin handles more types of objects and they are edited at the same time, "
"it will result in errors."
msgstr ""
"Реализуйте эту функцию, если ваш плагин редактирует определенный тип объекта "
"(Ресурс или Узел). Если вы вернете [code]true[/code], то вы получите функции "
"[method _edit] и [method _make_visible], вызванные, когда редактор их "
"запросит. Если вы объявили методы [method _forward_canvas_gui_input] и "
"[method _forward_3d_gui_input], они также будут вызваны.\n"
"[b]Примечание:[/b] Каждый плагин должен обрабатывать только один тип объектов "
"одновременно. Если плагин обрабатывает больше типов объектов и они "
"редактируются одновременно, это приведет к ошибкам."

msgid ""
"Returns [code]true[/code] if this is a main screen editor plugin (it goes in "
"the workspace selector together with [b]2D[/b], [b]3D[/b], [b]Script[/b], "
"[b]Game[/b], and [b]AssetLib[/b]).\n"
"When the plugin's workspace is selected, other main screen plugins will be "
"hidden, but your plugin will not appear automatically. It needs to be added "
"as a child of [method EditorInterface.get_editor_main_screen] and made "
"visible inside [method _make_visible].\n"
"Use [method _get_plugin_name] and [method _get_plugin_icon] to customize the "
"plugin button's appearance.\n"
"[codeblock]\n"
"var plugin_control\n"
"\n"
"func _enter_tree():\n"
"\tplugin_control = preload(\"my_plugin_control.tscn\").instantiate()\n"
"\tEditorInterface.get_editor_main_screen().add_child(plugin_control)\n"
"\tplugin_control.hide()\n"
"\n"
"func _has_main_screen():\n"
"\treturn true\n"
"\n"
"func _make_visible(visible):\n"
"\tplugin_control.visible = visible\n"
"\n"
"func _get_plugin_name():\n"
"\treturn \"My Super Cool Plugin 3000\"\n"
"\n"
"func _get_plugin_icon():\n"
"\treturn EditorInterface.get_editor_theme().get_icon(\"Node\", "
"\"EditorIcons\")\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]true[/code], если это плагин редактора основного экрана (он "
"идет в селекторе рабочей области вместе с [b]2D[/b], [b]3D[/b], [b]Script[/"
"b], [b]Game[/b] и [b]AssetLib[/b]).\n"
"Когда выбрана рабочая область плагина, другие плагины основного экрана будут "
"скрыты, но ваш плагин не появится автоматически. Его нужно добавить как "
"дочерний элемент [method EditorInterface.get_editor_main_screen] и сделать "
"видимым внутри [method _make_visible].\n"
"Используйте [method _get_plugin_name] и [method _get_plugin_icon] для "
"настройки внешнего вида кнопки плагина.\n"
"[codeblock]\n"
"var plugin_control\n"
"\n"
"func _enter_tree():\n"
"\tplugin_control = preload(\"my_plugin_control.tscn\").instantiate()\n"
"\tEditorInterface.get_editor_main_screen().add_child(plugin_control)\n"
"\tplugin_control.hide()\n"
"\n"
"func _has_main_screen():\n"
"\treturn true\n"
"\n"
"func _make_visible(visible):\n"
"\tplugin_control.visible = visible\n"
"\n"
"func _get_plugin_name():\n"
"\treturn \"My Super Cool Plugin 3000\"\n"
"\n"
"func _get_plugin_icon():\n"
"\treturn EditorInterface.get_editor_theme().get_icon(\"Node\", "
"\"EditorIcons\")\n"
"[/codeblock]"

msgid ""
"This function will be called when the editor is requested to become visible. "
"It is used for plugins that edit a specific object type.\n"
"Remember that you have to manage the visibility of all your editor controls "
"manually."
msgstr ""
"Эта функция будет вызвана, когда редактору будет предложено стать видимым. "
"Она используется для плагинов, которые редактируют определенный тип объекта.\n"
"Помните, что вам придется вручную управлять видимостью всех элементов "
"управления редактора."

msgid ""
"This method is called after the editor saves the project or when it's closed. "
"It asks the plugin to save edited external scenes/resources."
msgstr ""
"Этот метод вызывается после того, как редактор сохраняет проект или когда он "
"закрыт. Он просит плагин сохранить отредактированные внешние сцены/ресурсы."

msgid ""
"Restore the state saved by [method _get_state]. This method is called when "
"the current scene tab is changed in the editor.\n"
"[b]Note:[/b] Your plugin must implement [method _get_plugin_name], otherwise "
"it will not be recognized and this method will not be called.\n"
"[codeblock]\n"
"func _set_state(data):\n"
"\tzoom = data.get(\"zoom\", 1.0)\n"
"\tpreferred_color = data.get(\"my_color\", Color.WHITE)\n"
"[/codeblock]"
msgstr ""
"Восстановите состояние, сохраненное [method _get_state]. Этот метод "
"вызывается при изменении текущей вкладки сцены в редакторе.\n"
"[b]Примечание:[/b] Ваш плагин должен реализовывать [method _get_plugin_name], "
"иначе он не будет распознан и этот метод не будет вызван.\n"
"[codeblock]\n"
"func _set_state(data):\n"
"\tzoom = data.get(\"zoom\", 1.0)\n"
"\tpreferred_color = data.get(\"my_color\", Color.WHITE)\n"
"[/codeblock]"

msgid ""
"Restore the plugin GUI layout and data saved by [method _get_window_layout]. "
"This method is called for every plugin on editor startup. Use the provided "
"[param configuration] file to read your saved data.\n"
"[codeblock]\n"
"func _set_window_layout(configuration):\n"
"\t$Window.position = configuration.get_value(\"MyPlugin\", "
"\"window_position\", Vector2())\n"
"\t$Icon.modulate = configuration.get_value(\"MyPlugin\", \"icon_color\", "
"Color.WHITE)\n"
"[/codeblock]"
msgstr ""
"Восстановите макет GUI плагина и данные, сохраненные [method "
"_get_window_layout]. Этот метод вызывается для каждого плагина при запуске "
"редактора. Используйте предоставленный файл [param configuration] для чтения "
"сохраненных данных.\n"
"[codeblock]\n"
"func _set_window_layout(configuration):\n"
"\t$Window.position = configuration.get_value(\"MyPlugin\", "
"\"window_position\", Vector2())\n"
"\t$Icon.modulate = configuration.get_value(\"MyPlugin\", \"icon_color\", "
"Color.WHITE)\n"
"[/codeblock]"

msgid "Adds a script at [param path] to the Autoload list as [param name]."
msgstr ""
"Добавляет скрипт по адресу [param path] в список автозагрузки как [param "
"name]."

msgid ""
"Adds a plugin to the context menu. [param slot] is the context menu where the "
"plugin will be added.\n"
"[b]Note:[/b] A plugin instance can belong only to a single context menu slot."
msgstr ""
"Добавляет плагин в контекстное меню. [param slot] — контекстное меню, в "
"которое будет добавлен плагин.\n"
"[b]Примечание:[/b] Экземпляр плагина может принадлежать только одному слоту "
"контекстного меню."

msgid ""
"Adds a control to the bottom panel (together with Output, Debug, Animation, "
"etc.). Returns a reference to the button added. It's up to you to hide/show "
"the button when needed. When your plugin is deactivated, make sure to remove "
"your custom control with [method remove_control_from_bottom_panel] and free "
"it with [method Node.queue_free].\n"
"Optionally, you can specify a shortcut parameter. When pressed, this shortcut "
"will toggle the bottom panel's visibility. See the default editor bottom "
"panel shortcuts in the Editor Settings for inspiration. Per convention, they "
"all use [kbd]Alt[/kbd] modifier."
msgstr ""
"Добавляет элемент управления на нижнюю панель (вместе с Output, Debug, "
"Animation и т. д.). Возвращает ссылку на добавленную кнопку. Вы можете скрыть/"
"показать кнопку, когда это необходимо. Когда ваш плагин деактивирован, "
"обязательно удалите свой пользовательский элемент управления с помощью "
"[method remove_control_from_bottom_panel] и освободите его с помощью [method "
"Node.queue_free].\n"
"При желании вы можете указать параметр сочетания клавиш. При нажатии этот "
"ярлык переключит видимость нижней панели. См. сочетания клавиш нижней панели "
"редактора по умолчанию в настройках редактора для вдохновения. Согласно "
"соглашению, все они используют модификатор [kbd]Alt[/kbd]."

msgid ""
"Adds a custom control to a container in the editor UI.\n"
"Please remember that you have to manage the visibility of your custom "
"controls yourself (and likely hide it after adding it).\n"
"When your plugin is deactivated, make sure to remove your custom control with "
"[method remove_control_from_container] and free it with [method "
"Node.queue_free]."
msgstr ""
"Добавляет пользовательский элемент управления в контейнер в пользовательском "
"интерфейсе редактора.\n"
"Помните, что вам придется самостоятельно управлять видимостью ваших "
"пользовательских элементов управления (и, скорее всего, скрывать их после "
"добавления).\n"
"Когда ваш плагин деактивирован, обязательно удалите пользовательский элемент "
"управления с помощью [method remove_control_from_container] и освободите его "
"с помощью [method Node.queue_free]."

msgid ""
"Adds the control to a specific dock slot.\n"
"If the dock is repositioned and as long as the plugin is active, the editor "
"will save the dock position on further sessions.\n"
"When your plugin is deactivated, make sure to remove your custom control with "
"[method remove_control_from_docks] and free it with [method "
"Node.queue_free].\n"
"Optionally, you can specify a shortcut parameter. When pressed, this shortcut "
"will open and focus the dock."
msgstr ""
"Добавляет элемент управления в определенный слот дока.\n"
"Если док перемещен и пока плагин активен, редактор сохранит позицию дока в "
"последующих сеансах.\n"
"Когда ваш плагин деактивирован, обязательно удалите свой пользовательский "
"элемент управления с помощью [method remove_control_from_docks] и освободите "
"его с помощью [method Node.queue_free].\n"
"При желании вы можете указать параметр сочетания клавиш. При нажатии "
"сочетания клавиш откроет и сфокусирует док."

msgid ""
"Adds a custom type, which will appear in the list of nodes or resources.\n"
"When a given node or resource is selected, the base type will be instantiated "
"(e.g. \"Node3D\", \"Control\", \"Resource\"), then the script will be loaded "
"and set to this object.\n"
"[b]Note:[/b] The base type is the base engine class which this type's class "
"hierarchy inherits, not any custom type parent classes.\n"
"You can use the virtual method [method _handles] to check if your custom "
"object is being edited by checking the script or using the [code]is[/code] "
"keyword.\n"
"During run-time, this will be a simple object with a script so this function "
"does not need to be called then.\n"
"[b]Note:[/b] Custom types added this way are not true classes. They are just "
"a helper to create a node with specific script."
msgstr ""
"Добавляет пользовательский тип, который появится в списке узлов или "
"ресурсов.\n"
"Когда выбран заданный узел или ресурс, будет создан экземпляр базового типа "
"(например, \"Node3D\", \"Control\", \"Resource\"), затем скрипт будет "
"загружен и установлен для этого объекта.\n"
"[b]Примечание:[/b] Базовый тип — это базовый класс движка, который наследует "
"иерархия классов этого типа, а не родительские классы пользовательских "
"типов.\n"
"Вы можете использовать виртуальный метод [method _handles], чтобы проверить, "
"редактируется ли ваш пользовательский объект, проверив скрипт или используя "
"ключевое слово [code]is[/code].\n"
"Во время выполнения это будет простой объект со скриптом, поэтому эту функцию "
"не нужно вызывать.\n"
"[b]Примечание:[/b] Пользовательские типы, добавленные таким образом, не "
"являются настоящими классами. Они являются просто вспомогательными для "
"создания узла с определенным скриптом."

msgid ""
"Adds a [Script] as debugger plugin to the Debugger. The script must extend "
"[EditorDebuggerPlugin]."
msgstr ""
"Добавляет [Script] как плагин отладчика к Debugger. Скрипт должен расширять "
"[EditorDebuggerPlugin]."

msgid ""
"Registers a new [EditorExportPlatform]. Export platforms provides "
"functionality of exporting to the specific platform."
msgstr ""
"Регистрирует новый [EditorExportPlatform]. Экспорт платформ обеспечивает "
"функциональность экспорта на определенную платформу."

msgid ""
"Registers a new [EditorExportPlugin]. Export plugins are used to perform "
"tasks when the project is being exported.\n"
"See [method add_inspector_plugin] for an example of how to register a plugin."
msgstr ""
"Регистрирует новый [EditorExportPlugin]. Плагины экспорта используются для "
"выполнения задач при экспорте проекта.\n"
"См. [method add_inspector_plugin] для примера регистрации плагина."

msgid ""
"Registers a new [EditorImportPlugin]. Import plugins are used to import "
"custom and unsupported assets as a custom [Resource] type.\n"
"If [param first_priority] is [code]true[/code], the new import plugin is "
"inserted first in the list and takes precedence over pre-existing plugins.\n"
"[b]Note:[/b] If you want to import custom 3D asset formats use [method "
"add_scene_format_importer_plugin] instead.\n"
"See [method add_inspector_plugin] for an example of how to register a plugin."
msgstr ""
"Регистрирует новый [EditorImportPlugin]. Импортные плагины используются для "
"импорта пользовательских и неподдерживаемых ресурсов в качестве "
"пользовательского типа [Resource].\n"
"Если [param first_priority] равен [code]true[/code], новый импортный плагин "
"вставляется первым в списке и имеет приоритет над уже существующими "
"плагинами.\n"
"[b]Примечание:[/b] Если вы хотите импортировать пользовательские форматы 3D-"
"ресурсов, используйте вместо этого [method "
"add_scene_format_importer_plugin].\n"
"См. [method add_inspector_plugin] для примера регистрации плагина."

msgid ""
"Registers a new [EditorInspectorPlugin]. Inspector plugins are used to extend "
"[EditorInspector] and provide custom configuration tools for your object's "
"properties.\n"
"[b]Note:[/b] Always use [method remove_inspector_plugin] to remove the "
"registered [EditorInspectorPlugin] when your [EditorPlugin] is disabled to "
"prevent leaks and an unexpected behavior.\n"
"[codeblocks]\n"
"[gdscript]\n"
"const MyInspectorPlugin = preload(\"res://addons/your_addon/path/to/your/"
"script.gd\")\n"
"var inspector_plugin = MyInspectorPlugin.new()\n"
"\n"
"func _enter_tree():\n"
"\tadd_inspector_plugin(inspector_plugin)\n"
"\n"
"func _exit_tree():\n"
"\tremove_inspector_plugin(inspector_plugin)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Регистрирует новый [EditorInspectorPlugin]. Плагины инспектора используются "
"для расширения [EditorInspector] и предоставления пользовательских "
"инструментов настройки для свойств вашего объекта.\n"
"[b]Примечание:[/b] Всегда используйте [method remove_inspector_plugin] для "
"удаления зарегистрированного [EditorInspectorPlugin], когда ваш "
"[EditorPlugin] отключен, чтобы предотвратить утечки и непредвиденное "
"поведение.\n"
"[codeblocks]\n"
"[gdscript]\n"
"const MyInspectorPlugin = preload(\"res://addons/your_addon/path/to/your/"
"script.gd\")\n"
"var inspector_plugin = MyInspectorPlugin.new()\n"
"\n"
"func _enter_tree():\n"
"\tadd_inspector_plugin(inspector_plugin)\n"
"\n"
"func _exit_tree():\n"
"\tremove_inspector_plugin(inspector_plugin)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Registers a new [EditorNode3DGizmoPlugin]. Gizmo plugins are used to add "
"custom gizmos to the 3D preview viewport for a [Node3D].\n"
"See [method add_inspector_plugin] for an example of how to register a plugin."
msgstr ""
"Регистрирует новый [EditorNode3DGizmoPlugin]. Плагины Gizmo используются для "
"добавления пользовательских гизмо в область предварительного просмотра 3D для "
"[Node3D].\n"
"См. [method add_inspector_plugin] для примера регистрации плагина."

msgid ""
"Registers a new [EditorResourceConversionPlugin]. Resource conversion plugins "
"are used to add custom resource converters to the editor inspector.\n"
"See [EditorResourceConversionPlugin] for an example of how to create a "
"resource conversion plugin."
msgstr ""
"Регистрирует новый [EditorResourceConversionPlugin]. Плагины преобразования "
"ресурсов используются для добавления пользовательских преобразователей "
"ресурсов в инспектор редактора.\n"
"См. [EditorResourceConversionPlugin] для примера создания плагина "
"преобразования ресурсов."

msgid ""
"Registers a new [EditorSceneFormatImporter]. Scene importers are used to "
"import custom 3D asset formats as scenes.\n"
"If [param first_priority] is [code]true[/code], the new import plugin is "
"inserted first in the list and takes precedence over pre-existing plugins."
msgstr ""
"Регистрирует новый [EditorSceneFormatImporter]. Импортеры сцен используются "
"для импорта пользовательских форматов 3D-ресурсов в качестве сцен.\n"
"Если [param first_priority] равен [code]true[/code], новый плагин импорта "
"вставляется первым в списке и имеет приоритет над уже существующими плагинами."

msgid ""
"Add an [EditorScenePostImportPlugin]. These plugins allow customizing the "
"import process of 3D assets by adding new options to the import dialogs.\n"
"If [param first_priority] is [code]true[/code], the new import plugin is "
"inserted first in the list and takes precedence over pre-existing plugins."
msgstr ""
"Добавьте [EditorScenePostImportPlugin]. Эти плагины позволяют настраивать "
"процесс импорта 3D-ресурсов, добавляя новые параметры в диалоговые окна "
"импорта.\n"
"Если [param first_priority] равен [code]true[/code], новый плагин импорта "
"вставляется первым в списке и имеет приоритет над уже существующими плагинами."

msgid ""
"Adds a custom menu item to [b]Project > Tools[/b] named [param name]. When "
"clicked, the provided [param callable] will be called."
msgstr ""
"Добавляет пользовательский элемент меню в [b]Проект > Инструменты[/b] с "
"именем [param name]]. При щелчке будет вызван предоставленный [param "
"callable]."

msgid ""
"Adds a custom [PopupMenu] submenu under [b]Project > Tools >[/b] [param "
"name]. Use [method remove_tool_menu_item] on plugin clean up to remove the "
"menu."
msgstr ""
"Добавляет пользовательское подменю [PopupMenu] в [b]Проект > Инструменты >[/"
"b] [param name]. Используйте [method remove_tool_menu_item] при очистке "
"плагина, чтобы удалить меню."

msgid ""
"Registers a custom translation parser plugin for extracting translatable "
"strings from custom files."
msgstr ""
"Регистрирует пользовательский плагин анализатора перевода для извлечения "
"переводимых строк из пользовательских файлов."

msgid ""
"Hooks a callback into the undo/redo action creation when a property is "
"modified in the inspector. This allows, for example, to save other properties "
"that may be lost when a given property is modified.\n"
"The callback should have 4 arguments: [Object] [code]undo_redo[/code], "
"[Object] [code]modified_object[/code], [String] [code]property[/code] and "
"[Variant] [code]new_value[/code]. They are, respectively, the [UndoRedo] "
"object used by the inspector, the currently modified object, the name of the "
"modified property and the new value the property is about to take."
msgstr ""
"Подключает обратный вызов к созданию действия отмены/повтора при изменении "
"свойства в инспекторе. Это позволяет, например, сохранять другие свойства, "
"которые могут быть потеряны при изменении данного свойства.\n"
"Обратный вызов должен иметь 4 аргумента: [Object] [code]undo_redo[/code], "
"[Object] [code]modified_object[/code], [String] [code]property[/code] и "
"[Variant] [code]new_value[/code]. Это, соответственно, объект [UndoRedo], "
"используемый инспектором, текущий измененный объект, имя измененного свойства "
"и новое значение, которое свойство собирается принять."

msgid ""
"[EditorInterface] is a global singleton and can be accessed directly by its "
"name."
msgstr ""
"[EditorInterface] — это глобальный синглтон, доступ к которому можно получить "
"напрямую по его имени."

msgid "Returns the [EditorInterface] singleton instance."
msgstr "Возвращает экземпляр синглтона [EditorInterface]."

msgid "Returns the [PopupMenu] under [b]Scene > Export As...[/b]."
msgstr "Возвращает [PopupMenu] в разделе [b]Сцена > Экспортировать как...[/b]."

msgid ""
"Provide the version of the plugin declared in the [code]plugin.cfg[/code] "
"config file."
msgstr ""
"Укажите версию плагина, объявленную в файле конфигурации [code]plugin.cfg[/"
"code]."

msgid ""
"Gets the Editor's dialog used for making scripts.\n"
"[b]Note:[/b] Users can configure it before use.\n"
"[b]Warning:[/b] Removing and freeing this node will render a part of the "
"editor useless and may cause a crash."
msgstr ""
"Получает диалог редактора, используемый для создания скриптов.\n"
"[b]Примечание:[/b] Пользователи могут настроить его перед использованием.\n"
"[b]Предупреждение:[/b] Удаление и освобождение этого узла сделает часть "
"редактора бесполезной и может привести к сбою."

msgid ""
"Gets the undo/redo object. Most actions in the editor can be undoable, so use "
"this object to make sure this happens when it's worth it."
msgstr ""
"Получает объект отмены/повтора. Большинство действий в редакторе можно "
"отменить, поэтому используйте этот объект, чтобы убедиться, что это "
"произойдет, когда это того стоит."

msgid "Minimizes the bottom panel."
msgstr "Сворачивает нижнюю панель."

msgid "Makes a specific item in the bottom panel visible."
msgstr "Делает видимым определенный элемент на нижней панели."

msgid "Queue save the project's editor layout."
msgstr "Очередь сохранения макета редактора проекта."

msgid "Removes an Autoload [param name] from the list."
msgstr "Удаляет автозагрузку [param name] из списка."

msgid "Removes the specified context menu plugin."
msgstr "Удаляет указанный плагин контекстного меню."

msgid ""
"Removes the control from the bottom panel. You have to manually [method "
"Node.queue_free] the control."
msgstr ""
"Удаляет элемент управления с нижней панели. Вам придется вручную [method "
"Node.queue_free] элемент управления."

msgid ""
"Removes the control from the specified container. You have to manually "
"[method Node.queue_free] the control."
msgstr ""
"Удаляет элемент управления из указанного контейнера. Вам необходимо вручную "
"[method Node.queue_free] элемент управления."

msgid ""
"Removes the control from the dock. You have to manually [method "
"Node.queue_free] the control."
msgstr ""
"Удаляет элемент управления из дока. Вам придется вручную [method "
"Node.queue_free] элемент управления."

msgid "Removes a custom type added by [method add_custom_type]."
msgstr "Удаляет пользовательский тип, добавленный [method add_custom_type]."

msgid "Removes the debugger plugin with given script from the Debugger."
msgstr "Удаляет плагин отладчика с указанным скриптом из отладчика."

msgid "Removes an export platform registered by [method add_export_platform]."
msgstr ""
"Удаляет экспортную платформу, зарегистрированную [method add_export_platform]."

msgid "Removes an export plugin registered by [method add_export_plugin]."
msgstr "Удаляет плагин экспорта, зарегистрированный [method add_export_plugin]."

msgid "Removes an import plugin registered by [method add_import_plugin]."
msgstr "Удаляет плагин импорта, зарегистрированный [method add_import_plugin]."

msgid "Removes an inspector plugin registered by [method add_inspector_plugin]."
msgstr ""
"Удаляет плагин инспектора, зарегистрированный [method add_inspector_plugin]."

msgid "Removes a gizmo plugin registered by [method add_node_3d_gizmo_plugin]."
msgstr ""
"Удаляет плагин gizmo, зарегистрированный [method add_node_3d_gizmo_plugin]."

msgid ""
"Removes a resource conversion plugin registered by [method "
"add_resource_conversion_plugin]."
msgstr ""
"Удаляет плагин преобразования ресурсов, зарегистрированный [method "
"add_resource_conversion_plugin]."

msgid ""
"Removes a scene format importer registered by [method "
"add_scene_format_importer_plugin]."
msgstr ""
"Удаляет импортер формата сцены, зарегистрированный [method "
"add_scene_format_importer_plugin]."

msgid ""
"Remove the [EditorScenePostImportPlugin], added with [method "
"add_scene_post_import_plugin]."
msgstr ""
"Удалите [EditorScenePostImportPlugin], добавленный с помощью [method "
"add_scene_post_import_plugin]."

msgid "Removes a menu [param name] from [b]Project > Tools[/b]."
msgstr "Удаляет меню [param name] из [b]Проект > Инструменты[/b]."

msgid ""
"Removes a custom translation parser plugin registered by [method "
"add_translation_parser_plugin]."
msgstr ""
"Удаляет пользовательский плагин парсера перевода, зарегистрированный [method "
"add_translation_parser_plugin]."

msgid ""
"Removes a callback previously added by [method "
"add_undo_redo_inspector_hook_callback]."
msgstr ""
"Удаляет обратный вызов, ранее добавленный [method "
"add_undo_redo_inspector_hook_callback]."

msgid ""
"Sets the tab icon for the given control in a dock slot. Setting to "
"[code]null[/code] removes the icon."
msgstr ""
"Устанавливает значок вкладки для указанного элемента управления в слоте дока. "
"Установка [code]null[/code] удаляет значок."

msgid ""
"Enables calling of [method _forward_canvas_force_draw_over_viewport] for the "
"2D editor and [method _forward_3d_force_draw_over_viewport] for the 3D editor "
"when their viewports are updated. You need to call this method only once and "
"it will work permanently for this plugin."
msgstr ""
"Позволяет вызывать [method _forward_canvas_force_draw_over_viewport] для 2D-"
"редактора и [method _forward_3d_force_draw_over_viewport] для 3D-редактора "
"при обновлении их вьюпортов. Вам нужно вызвать этот метод только один раз, и "
"он будет работать постоянно для этого плагина."

msgid ""
"Use this method if you always want to receive inputs from 3D view screen "
"inside [method _forward_3d_gui_input]. It might be especially usable if your "
"plugin will want to use raycast in the scene."
msgstr ""
"Используйте этот метод, если вы всегда хотите получать входные данные с "
"экрана 3D-вида внутри [method _forward_3d_gui_input]. Он может быть особенно "
"полезен, если ваш плагин захочет использовать raycast в сцене."

msgid ""
"Updates the overlays of the 2D and 3D editor viewport. Causes methods [method "
"_forward_canvas_draw_over_viewport], [method "
"_forward_canvas_force_draw_over_viewport], [method "
"_forward_3d_draw_over_viewport] and [method "
"_forward_3d_force_draw_over_viewport] to be called."
msgstr ""
"Обновляет наложения вьюпорта 2D- и 3D-редактора. Вызывает вызов методов "
"[method _forward_canvas_draw_over_viewport], [method "
"_forward_canvas_force_draw_over_viewport], [method "
"_forward_3d_draw_over_viewport] и [method "
"_forward_3d_force_draw_over_viewport]."

msgid ""
"Emitted when user changes the workspace ([b]2D[/b], [b]3D[/b], [b]Script[/b], "
"[b]Game[/b], [b]AssetLib[/b]). Also works with custom screens defined by "
"plugins."
msgstr ""
"Вызывается, когда пользователь меняет рабочее пространство ([b]2D[/b], [b]3D[/"
"b], [b]Script[/b], [b]Game[/b], [b]AssetLib[/b]). Также работает с "
"пользовательскими экранами, определенными плагинами."

msgid "Use [signal ProjectSettings.settings_changed] instead."
msgstr "Вместо этого используйте [signal ProjectSettings.settings_changed]."

msgid "Emitted when any project setting has changed."
msgstr "Генерируется при изменении каких-либо настроек проекта."

msgid ""
"Emitted when the given [param resource] was saved on disc. See also [signal "
"scene_saved]."
msgstr ""
"Выдается, когда заданный [param resource] был сохранен на диске. См. также "
"[signal scene_saved]."

msgid ""
"Emitted when the scene is changed in the editor. The argument will return the "
"root node of the scene that has just become active. If this scene is new and "
"empty, the argument will be [code]null[/code]."
msgstr ""
"Выдается при изменении сцены в редакторе. Аргумент вернет корневой узел "
"сцены, которая только что стала активной. Если эта сцена новая и пустая, "
"аргумент будет [code]null[/code]."

msgid ""
"Emitted when user closes a scene. The argument is a file path to the closed "
"scene."
msgstr ""
"Вызывается, когда пользователь закрывает сцену. Аргумент — путь к файлу "
"закрытой сцены."

msgid ""
"Emitted when a scene was saved on disc. The argument is a file path to the "
"saved scene. See also [signal resource_saved]."
msgstr ""
"Выдается при сохранении сцены на диске. Аргумент — путь к файлу сохраненной "
"сцены. См. также [signal resource_saved]."

msgid "Main editor toolbar, next to play buttons."
msgstr ""
"Основная панель инструментов редактора, рядом с кнопками воспроизведения."

msgid "The toolbar that appears when 3D editor is active."
msgstr "Панель инструментов, которая появляется при активном 3D-редакторе."

msgid "Left sidebar of the 3D editor."
msgstr "Левая боковая панель 3D-редактора."

msgid "Right sidebar of the 3D editor."
msgstr "Правая боковая панель 3D-редактора."

msgid "Bottom panel of the 3D editor."
msgstr "Нижняя панель 3D-редактора."

msgid "The toolbar that appears when 2D editor is active."
msgstr "Панель инструментов, которая появляется при активном 2D-редакторе."

msgid "Left sidebar of the 2D editor."
msgstr "Левая боковая панель 2D-редактора."

msgid "Right sidebar of the 2D editor."
msgstr "Правая боковая панель 2D-редактора."

msgid "Bottom panel of the 2D editor."
msgstr "Нижняя панель 2D-редактора."

msgid "Bottom section of the inspector."
msgstr "Нижняя часть инспектора."

msgid "Tab of Project Settings dialog, to the left of other tabs."
msgstr "Вкладка диалогового окна «Параметры проекта», слева от других вкладок."

msgid "Tab of Project Settings dialog, to the right of other tabs."
msgstr "Вкладка диалогового окна «Параметры проекта», справа от других вкладок."

msgid "Dock slot, left side, upper-left (empty in default layout)."
msgstr ""
"Слот для док-станции, левая сторона, вверху слева (в макете по умолчанию "
"пуст)."

msgid "Dock slot, left side, bottom-left (empty in default layout)."
msgstr ""
"Слот для док-станции, левая сторона, внизу слева (в макете по умолчанию пуст)."

msgid ""
"Dock slot, left side, upper-right (in default layout includes Scene and "
"Import docks)."
msgstr ""
"Слот док-станции, левая сторона, вверху справа (в макете по умолчанию "
"включены док-станции «Сцена» и «Импорт»)."

msgid ""
"Dock slot, left side, bottom-right (in default layout includes FileSystem "
"dock)."
msgstr ""
"Слот для док-станции, слева, снизу справа (в макете по умолчанию включен док-"
"станция для файловой системы)."

msgid ""
"Dock slot, right side, upper-left (in default layout includes Inspector, "
"Node, and History docks)."
msgstr ""
"Слот для док-станции, правая сторона, верхний левый угол (в макете по "
"умолчанию включены доки «Инспектор», «Узлы» и «История»)."

msgid "Dock slot, right side, bottom-left (empty in default layout)."
msgstr ""
"Слот для док-станции, правая сторона, левый нижний угол (в макете по "
"умолчанию пуст)."

msgid "Dock slot, right side, upper-right (empty in default layout)."
msgstr ""
"Слот для док-станции, правая сторона, вверху справа (пустой в макете по "
"умолчанию)."

msgid "Dock slot, right side, bottom-right (empty in default layout)."
msgstr ""
"Слот для док-станции, справа, внизу справа (в макете по умолчанию пуст)."

msgid "Represents the size of the [enum DockSlot] enum."
msgstr "Представляет размер перечисления [enum DockSlot]."

msgid "Forwards the [InputEvent] to other EditorPlugins."
msgstr "Пересылает [InputEvent] другим EditorPlugins."

msgid "Prevents the [InputEvent] from reaching other Editor classes."
msgstr "Предотвращает доступ [InputEvent] к другим классам редактора."

msgid ""
"Pass the [InputEvent] to other editor plugins except the main [Node3D] one. "
"This can be used to prevent node selection changes and work with sub-gizmos "
"instead."
msgstr ""
"Передайте [InputEvent] другим плагинам редактора, кроме основного [Node3D]. "
"Это можно использовать для предотвращения изменений выбора узлов и работы с "
"под-gizmos."

msgid ""
"Custom control for editing properties that can be added to the "
"[EditorInspector]."
msgstr ""
"Пользовательский элемент управления для редактирования свойств, который можно "
"добавить в [EditorInspector]."

msgid ""
"A custom control for editing properties that can be added to the "
"[EditorInspector]. It is added via [EditorInspectorPlugin]."
msgstr ""
"Пользовательский элемент управления для редактирования свойств, который можно "
"добавить в [EditorInspector]. Он добавляется через [EditorInspectorPlugin]."

msgid ""
"Called when the read-only status of the property is changed. It may be used "
"to change custom controls into a read-only or modifiable state."
msgstr ""
"Вызывается при изменении статуса свойства «только для чтения». Может "
"использоваться для изменения пользовательских элементов управления в "
"состояние «только для чтения» или «изменяемое»."

msgid "When this virtual function is called, you must update your editor."
msgstr ""
"При вызове этой виртуальной функции вам необходимо обновить свой редактор."

msgid ""
"If any of the controls added can gain keyboard focus, add it here. This "
"ensures that focus will be restored if the inspector is refreshed."
msgstr ""
"Если какой-либо из добавленных элементов управления может получить фокус "
"клавиатуры, добавьте его здесь. Это гарантирует, что фокус будет восстановлен "
"при обновлении инспектора."

msgid "Draw property as not selected. Used by the inspector."
msgstr "Рисовать свойство как не выбранное. Используется инспектором."

msgid ""
"If one or several properties have changed, this must be called. [param field] "
"is used in case your editor can modify fields separately (as an example, "
"Vector3.x). The [param changing] argument avoids the editor requesting this "
"property to be refreshed (leave as [code]false[/code] if unsure)."
msgstr ""
"Если одно или несколько свойств изменились, это должно быть вызвано. [param "
"field] используется в случае, если ваш редактор может изменять поля по "
"отдельности (например, Vector3.x). Аргумент [param changing] позволяет "
"избежать запроса редактора на обновление этого свойства (оставьте как "
"[code]false[/code], если не уверены)."

msgid ""
"Returns the edited object.\n"
"[b]Note:[/b] This method could return [code]null[/code] if the editor has not "
"yet been associated with a property. However, in [method _update_property] "
"and [method _set_read_only], this value is [i]guaranteed[/i] to be non-"
"[code]null[/code]."
msgstr ""
"Возвращает отредактированный объект.\n"
"[b]Примечание:[/b] Этот метод может вернуть [code]null[/code], если редактор "
"еще не был связан со свойством. Однако в [method _update_property] и [method "
"_set_read_only] это значение [i]гарантированно[/i] не будет [code]null[/code]."

msgid ""
"Returns the edited property. If your editor is for a single property (added "
"via [method EditorInspectorPlugin._parse_property]), then this will return "
"the property.\n"
"[b]Note:[/b] This method could return [code]null[/code] if the editor has not "
"yet been associated with a property. However, in [method _update_property] "
"and [method _set_read_only], this value is [i]guaranteed[/i] to be non-"
"[code]null[/code]."
msgstr ""
"Возвращает отредактированное свойство. Если ваш редактор предназначен для "
"одного свойства (добавленного через [method "
"EditorInspectorPlugin._parse_property]), то это вернет свойство.\n"
"[b]Примечание:[/b] Этот метод может вернуть [code]null[/code], если редактор "
"еще не был связан со свойством. Однако в [method _update_property] и [method "
"_set_read_only] это значение [i]гарантированно[/i] не будет [code]null[/code]."

msgid ""
"Returns [code]true[/code] if property is drawn as selected. Used by the "
"inspector."
msgstr ""
"Возвращает [code]true[/code], если свойство нарисовано как выбранное. "
"Используется инспектором."

msgid "Draw property as selected. Used by the inspector."
msgstr "Свойство рисования выбрано. Используется инспектором."

msgid ""
"Puts the [param editor] control below the property label. The control must be "
"previously added using [method Node.add_child]."
msgstr ""
"Размещает элемент управления [param editor] под меткой свойства. Элемент "
"управления должен быть предварительно добавлен с помощью [method "
"Node.add_child]."

msgid ""
"Used by the inspector, set to a control that will be used as a reference to "
"calculate the size of the label."
msgstr ""
"Используется инспектором, задает элемент управления, который будет "
"использоваться в качестве эталона для расчета размера этикетки."

msgid "Assigns object and property to edit."
msgstr "Назначает объект и свойство для редактирования."

msgid "Forces a refresh of the property display."
msgstr "Принудительно обновляет отображение свойств."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property is "
"checkable."
msgstr ""
"Используется инспектором, устанавливается в [code]true[/code], когда свойство "
"можно проверить."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property is checked."
msgstr ""
"Используется инспектором, устанавливается в [code]true[/code] при проверке "
"свойства."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property can be "
"deleted by the user."
msgstr ""
"Используется инспектором, устанавливается в [code]true[/code], когда свойство "
"может быть удалено пользователем."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property background "
"is drawn."
msgstr ""
"Используется инспектором, устанавливается в [code]true[/code] при прорисовке "
"фона свойства."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property label is "
"drawn."
msgstr ""
"Используется инспектором, устанавливается в [code]true[/code] при рисовании "
"метки свойства."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property is drawn "
"with the editor theme's warning color. This is used for editable children's "
"properties."
msgstr ""
"Используется инспектором, устанавливается в [code]true[/code], когда свойство "
"отображается с предупреждающим цветом темы редактора. Используется для "
"редактируемых дочерних свойств."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property can add "
"keys for animation."
msgstr ""
"Используется инспектором, устанавливается в [code]true[/code], когда свойство "
"может добавлять ключи для анимации."

msgid "Set this property to change the label (if you want to show one)."
msgstr ""
"Установите это свойство, чтобы изменить метку (если вы хотите ее отобразить)."

msgid "Space distribution ratio between the label and the editing field."
msgstr ""
"Соотношение распределения пространства между меткой и полем редактирования."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property is read-"
"only."
msgstr ""
"Используется инспектором, устанавливается в [code]true[/code], когда свойство "
"доступно только для чтения."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property is "
"selectable."
msgstr ""
"Используется инспектором, устанавливается в [code]true[/code], когда свойство "
"можно выбрать."

msgid ""
"Used by the inspector, set to [code]true[/code] when the property is using "
"folding."
msgstr ""
"Используется инспектором, устанавливается в [code]true[/code], когда свойство "
"использует свертывание."

msgid ""
"Emit it if you want multiple properties modified at the same time. Do not use "
"if added via [method EditorInspectorPlugin._parse_property]."
msgstr ""
"Выдайте его, если хотите, чтобы несколько свойств были изменены одновременно. "
"Не используйте, если добавлено через [method "
"EditorInspectorPlugin._parse_property]."

msgid "Used by sub-inspectors. Emit it if what was selected was an Object ID."
msgstr ""
"Используется субинспекторами. Выдает его, если выбранным был идентификатор "
"объекта."

msgid ""
"Emitted when the revertability (i.e., whether it has a non-default value and "
"thus is displayed with a revert icon) of a property has changed."
msgstr ""
"Генерируется, когда изменилась возможность возврата (т. е. имеет ли свойство "
"значение, отличное от значения по умолчанию, и поэтому отображается со "
"значком возврата)."

msgid "Do not emit this manually, use the [method emit_changed] method instead."
msgstr ""
"Не вызывайте его вручную, вместо этого используйте метод [method "
"emit_changed]."

msgid "Emitted when a property was checked. Used internally."
msgstr "Выдается при проверке свойства. Используется внутри."

msgid "Emitted when a property was deleted. Used internally."
msgstr "Выдается при удалении свойства. Используется внутри."

msgid ""
"Emit it if you want to mark a property as favorited, making it appear at the "
"top of the inspector."
msgstr ""
"Используйте его, если вы хотите отметить свойство как избранное и отобразить "
"его в верхней части инспектора."

msgid ""
"Emit it if you want to add this value as an animation key (check for keying "
"being enabled first)."
msgstr ""
"Выдайте его, если вы хотите добавить это значение в качестве ключа анимации "
"(сначала проверьте, включено ли ключевое воздействие)."

msgid "Emit it if you want to key a property with a single value."
msgstr ""
"Используйте его, если вы хотите присвоить свойству ключ с одним значением."

msgid "Emitted when a setting override for the current project is requested."
msgstr "Выдает при запросе переопределения настроек для текущего проекта."

msgid ""
"Emit it if you want to mark (or unmark) the value of a property for being "
"saved regardless of being equal to the default value.\n"
"The default value is the one the property will get when the node is just "
"instantiated and can come from an ancestor scene in the inheritance/"
"instantiation chain, a script or a builtin class."
msgstr ""
"Выдайте его, если вы хотите пометить (или снять пометку) значение свойства "
"для сохранения независимо от того, равно ли оно значению по умолчанию.\n"
"Значение по умолчанию — это то, которое свойство получит, когда узел только "
"что инстанцируется, и может быть получено из родительской сцены в цепочке "
"наследования/инстанцирования, скрипта или встроенного класса."

msgid ""
"If you want a sub-resource to be edited, emit this signal with the resource."
msgstr ""
"Если вы хотите, чтобы подресурс был отредактирован, отправьте этот сигнал "
"вместе с ресурсом."

msgid "Emitted when selected. Used internally."
msgstr "Выдается при выборе. Используется внутри."

msgid ""
"Plugin for adding custom converters from one resource format to another in "
"the editor resource picker context menu; for example, converting a "
"[StandardMaterial3D] to a [ShaderMaterial]."
msgstr ""
"Плагин для добавления пользовательских преобразователей из одного формата "
"ресурсов в другой в контекстном меню выбора ресурсов редактора; например, "
"преобразование [StandardMaterial3D] в [ShaderMaterial]."

msgid ""
"[EditorResourceConversionPlugin] is invoked when the context menu is brought "
"up for a resource in the editor inspector. Relevant conversion plugins will "
"appear as menu options to convert the given resource to a target type.\n"
"Below shows an example of a basic plugin that will convert an [ImageTexture] "
"to a [PortableCompressedTexture2D].\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends EditorResourceConversionPlugin\n"
"\n"
"func _handles(resource: Resource):\n"
"\treturn resource is ImageTexture\n"
"\n"
"func _converts_to():\n"
"\treturn \"PortableCompressedTexture2D\"\n"
"\n"
"func _convert(itex: Resource):\n"
"\tvar ptex = PortableCompressedTexture2D.new()\n"
"\tptex.create_from_image(itex.get_image(), "
"PortableCompressedTexture2D.COMPRESSION_MODE_LOSSLESS)\n"
"\treturn ptex\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"To use an [EditorResourceConversionPlugin], register it using the [method "
"EditorPlugin.add_resource_conversion_plugin] method first."
msgstr ""
"[EditorResourceConversionPlugin] вызывается, когда контекстное меню "
"вызывается для ресурса в инспекторе редактора. Соответствующие плагины "
"преобразования будут отображаться как пункты меню для преобразования данного "
"ресурса в целевой тип.\n"
"Ниже показан пример базового плагина, который преобразует [ImageTexture] в "
"[PortableCompressedTexture2D].\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends EditorResourceConversionPlugin\n"
"\n"
"func _handles(resource: Resource):\n"
"\treturn resource is ImageTexture\n"
"\n"
"func _converts_to():\n"
"\treturn \"PortableCompressedTexture2D\"\n"
"\n"
"func _convert(itex: Resource):\n"
"\tvar ptex = PortableCompressedTexture2D.new()\n"
"\tptex.create_from_image(itex.get_image(), "
"PortableCompressedTexture2D.COMPRESSION_MODE_LOSSLESS)\n"
"\treturn ptex\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Чтобы использовать [EditorResourceConversionPlugin], сначала зарегистрируйте "
"его с помощью метода [method EditorPlugin.add_resource_conversion_plugin]."

msgid ""
"Takes an input [Resource] and converts it to the type given in [method "
"_converts_to]. The returned [Resource] is the result of the conversion, and "
"the input [Resource] remains unchanged."
msgstr ""
"Принимает входной [Resource] и преобразует его в тип, указанный в [method "
"_converts_to]. Возвращаемый [Resource] является результатом преобразования, а "
"входной [Resource] остается неизменным."

msgid ""
"Returns the class name of the target type of [Resource] that this plugin "
"converts source resources to."
msgstr ""
"Возвращает имя класса целевого типа [Resource], в который этот плагин "
"преобразует исходные ресурсы."

msgid ""
"Called to determine whether a particular [Resource] can be converted to the "
"target resource type by this plugin."
msgstr ""
"Вызывается для определения того, может ли данный плагин преобразовать "
"определенный [Resource] в целевой тип ресурса."

msgid "Godot editor's control for selecting [Resource] type properties."
msgstr "Элемент управления редактора Godot для выбора свойств типа [Resource]."

msgid ""
"This [Control] node is used in the editor's Inspector dock to allow editing "
"of [Resource] type properties. It provides options for creating, loading, "
"saving and converting resources. Can be used with [EditorInspectorPlugin] to "
"recreate the same behavior.\n"
"[b]Note:[/b] This [Control] does not include any editor for the resource, as "
"editing is controlled by the Inspector dock itself or sub-Inspectors."
msgstr ""
"Этот узел [Control] используется в доке Inspector редактора, чтобы разрешить "
"редактирование свойств типа [Resource]. Он предоставляет возможности для "
"создания, загрузки, сохранения и преобразования ресурсов. Может "
"использоваться с [EditorInspectorPlugin] для воссоздания того же поведения.\n"
"[b]Примечание:[/b] Этот [Control] не включает в себя редактор для ресурса, "
"поскольку редактирование контролируется самим доком Inspector или под-"
"Inspectors."

msgid ""
"This virtual method can be implemented to handle context menu items not "
"handled by default. See [method _set_create_options]."
msgstr ""
"Этот виртуальный метод может быть реализован для обработки элементов "
"контекстного меню, не обрабатываемых по умолчанию. См. [method "
"_set_create_options]."

msgid ""
"This virtual method is called when updating the context menu of "
"[EditorResourcePicker]. Implement this method to override the \"New ...\" "
"items with your own options. [param menu_node] is a reference to the "
"[PopupMenu] node.\n"
"[b]Note:[/b] Implement [method _handle_menu_selected] to handle these custom "
"items."
msgstr ""
"Этот виртуальный метод вызывается при обновлении контекстного меню "
"[EditorResourcePicker]. Реализуйте этот метод, чтобы переопределить элементы "
"«Новый ...» собственными параметрами. [param menu_node] — это ссылка на узел "
"[PopupMenu].\n"
"[b]Примечание:[/b] Реализуйте [method _handle_menu_selected] для обработки "
"этих пользовательских элементов."

msgid ""
"Returns a list of all allowed types and subtypes corresponding to the [member "
"base_type]. If the [member base_type] is empty, an empty list is returned."
msgstr ""
"Возвращает список всех разрешенных типов и подтипов, соответствующих [member "
"base_type]. Если [member base_type] пуст, возвращается пустой список."

msgid ""
"Sets the toggle mode state for the main button. Works only if [member "
"toggle_mode] is set to [code]true[/code]."
msgstr ""
"Устанавливает состояние режима переключения для главной кнопки. Работает "
"только если [member toggle_mode] установлен на [code]true[/code]."

msgid ""
"The base type of allowed resource types. Can be a comma-separated list of "
"several options."
msgstr ""
"Базовый тип разрешенных типов ресурсов. Может быть списком из нескольких "
"вариантов, разделенных запятыми."

msgid "If [code]true[/code], the value can be selected and edited."
msgstr "Если [code]true[/code], значение можно выбрать и отредактировать."

msgid "The edited resource value."
msgstr "Отредактированное значение ресурса."

msgid ""
"If [code]true[/code], the main button with the resource preview works in the "
"toggle mode. Use [method set_toggle_pressed] to manually set the state."
msgstr ""
"Если [code]true[/code], то главная кнопка с предпросмотром ресурса работает в "
"режиме переключения. Используйте [method set_toggle_pressed] для ручной "
"установки состояния."

msgid "Emitted when the value of the edited resource was changed."
msgstr "Выдается при изменении значения редактируемого ресурса."

msgid ""
"Emitted when the resource value was set and user clicked to edit it. When "
"[param inspect] is [code]true[/code], the signal was caused by the context "
"menu \"Edit\" or \"Inspect\" option."
msgstr ""
"Выдается, когда значение ресурса было установлено и пользователь щелкнул, "
"чтобы изменить его. Когда [param inspect] равен [code]true[/code], сигнал был "
"вызван опцией контекстного меню «Изменить» или «Проверить»."

msgid "A node used to generate previews of resources or files."
msgstr ""
"Узел, используемый для создания предварительных просмотров ресурсов или "
"файлов."

msgid ""
"This node is used to generate previews for resources or files.\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_resource_previewer]."
msgstr ""
"Этот узел используется для генерации предпросмотров ресурсов или файлов.\n"
"[b]Примечание:[/b] Этот класс не следует создавать напрямую. Вместо этого "
"обратитесь к синглтону с помощью [method "
"EditorInterface.get_resource_previewer]."

msgid "Create an own, custom preview generator."
msgstr ""
"Создайте собственный, настраиваемый генератор предварительного просмотра."

msgid ""
"Check if the resource changed, if so, it will be invalidated and the "
"corresponding signal emitted."
msgstr ""
"Проверьте, изменился ли ресурс. Если это так, он будет признан "
"недействительным и будет подан соответствующий сигнал."

msgid ""
"Queue the [param resource] being edited for preview. Once the preview is "
"ready, the [param receiver]'s [param receiver_func] will be called. The "
"[param receiver_func] must take the following four arguments: [String] path, "
"[Texture2D] preview, [Texture2D] thumbnail_preview, [Variant] userdata. "
"[param userdata] can be anything, and will be returned when [param "
"receiver_func] is called.\n"
"[b]Note:[/b] If it was not possible to create the preview the [param "
"receiver_func] will still be called, but the preview will be [code]null[/"
"code]."
msgstr ""
"Поставьте в очередь редактируемый [param resource] для предварительного "
"просмотра. После того, как предварительный просмотр будет готов, будет вызван "
"[param receiveer] [param receiveer]. [param receiveer_func] должен принимать "
"следующие четыре аргумента: [String] path, [Texture2D] preview, [Texture2D] "
"thumbnail_preview, [Variant] userdata. [param userdata] может быть любым и "
"будет возвращен при вызове [param receiveer_func].\n"
"[b]Примечание:[/b] Если не удалось создать предварительный просмотр, [param "
"receiveer_func] все равно будет вызван, но предварительный просмотр будет "
"[code]null[/code]."

msgid ""
"Queue a resource file located at [param path] for preview. Once the preview "
"is ready, the [param receiver]'s [param receiver_func] will be called. The "
"[param receiver_func] must take the following four arguments: [String] path, "
"[Texture2D] preview, [Texture2D] thumbnail_preview, [Variant] userdata. "
"[param userdata] can be anything, and will be returned when [param "
"receiver_func] is called.\n"
"[b]Note:[/b] If it was not possible to create the preview the [param "
"receiver_func] will still be called, but the preview will be [code]null[/"
"code]."
msgstr ""
"Поставьте в очередь файл ресурсов, расположенный в [param path], для "
"предварительного просмотра. После того, как предварительный просмотр будет "
"готов, будет вызван [param receiveer] [param receiveer_func]. [param "
"receiveer_func] должен принимать следующие четыре аргумента: [String] path, "
"[Texture2D] preview, [Texture2D] thumbnail_preview, [Variant] userdata. "
"[param userdata] может быть любым и будет возвращен при вызове [param "
"receiveer_func].\n"
"[b]Примечание:[/b] Если предварительный просмотр создать не удалось, [param "
"receiveer_func] все равно будет вызван, но предварительный просмотр будет "
"[code]null[/code]."

msgid "Removes a custom preview generator."
msgstr "Удаляет пользовательский генератор предварительного просмотра."

msgid ""
"Emitted if a preview was invalidated (changed). [param path] corresponds to "
"the path of the preview."
msgstr ""
"Выдается, если предварительный просмотр был признан недействительным "
"(изменен). [param path] соответствует пути к предварительному просмотру."

msgid "Custom generator of previews."
msgstr "Пользовательский генератор превью."

msgid ""
"Custom code to generate previews. Check [member EditorSettings.filesystem/"
"file_dialog/thumbnail_size] to find a proper size to generate previews at."
msgstr ""
"Пользовательский код для создания предпросмотров. Проверьте [member "
"EditorSettings.filesystem/file_dialog/thumbnail_size], чтобы найти подходящий "
"размер для создания предпросмотров."

msgid ""
"If this function returns [code]true[/code], the generator will call [method "
"_generate] or [method _generate_from_path] for small previews as well.\n"
"By default, it returns [code]false[/code]."
msgstr ""
"Если эта функция возвращает [code]true[/code], генератор также вызовет "
"[method _generate] или [method _generate_from_path] для небольших "
"предпросмотров.\n"
"По умолчанию он возвращает [code]false[/code]."

msgid ""
"Generate a preview from a given resource with the specified size. This must "
"always be implemented.\n"
"Returning [code]null[/code] is an OK way to fail and let another generator "
"take care.\n"
"Care must be taken because this function is always called from a thread (not "
"the main thread).\n"
"[param metadata] dictionary can be modified to store file-specific metadata "
"that can be used in [method "
"EditorResourceTooltipPlugin._make_tooltip_for_path] (like image size, sample "
"length etc.)."
msgstr ""
"Сгенерировать предварительный просмотр из заданного ресурса с указанным "
"размером. Это всегда должно быть реализовано.\n"
"Возврат [code]null[/code] — это нормальный способ потерпеть неудачу и "
"позволить другому генератору позаботиться об этом.\n"
"Необходимо соблюдать осторожность, поскольку эта функция всегда вызывается из "
"потока (не основного потока).\n"
"Словарь [param metadata] можно изменить для хранения метаданных, специфичных "
"для файла, которые можно использовать в [method "
"EditorResourceTooltipPlugin._make_tooltip_for_path] (например, размер "
"изображения, длина выборки и т. д.)."

msgid ""
"Generate a preview directly from a path with the specified size. Implementing "
"this is optional, as default code will load and call [method _generate].\n"
"Returning [code]null[/code] is an OK way to fail and let another generator "
"take care.\n"
"Care must be taken because this function is always called from a thread (not "
"the main thread).\n"
"[param metadata] dictionary can be modified to store file-specific metadata "
"that can be used in [method "
"EditorResourceTooltipPlugin._make_tooltip_for_path] (like image size, sample "
"length etc.)."
msgstr ""
"Сгенерировать предварительный просмотр непосредственно из пути с указанным "
"размером. Реализация этого необязательна, так как код по умолчанию загрузит и "
"вызовет [method _generate].\n"
"Возврат [code]null[/code] — это нормальный способ потерпеть неудачу и "
"позволить другому генератору позаботиться об этом.\n"
"Необходимо соблюдать осторожность, поскольку эта функция всегда вызывается из "
"потока (не основного потока).\n"
"Словарь [param metadata] можно изменить для хранения метаданных, специфичных "
"для файла, которые можно использовать в [method "
"EditorResourceTooltipPlugin._make_tooltip_for_path] (например, размер "
"изображения, длина выборки и т. д.)."

msgid ""
"If this function returns [code]true[/code], the generator will automatically "
"generate the small previews from the normal preview texture generated by the "
"methods [method _generate] or [method _generate_from_path].\n"
"By default, it returns [code]false[/code]."
msgstr ""
"Если эта функция возвращает [code]true[/code], генератор автоматически "
"сгенерирует небольшие превью из обычной текстуры превью, сгенерированной "
"методами [method _generate] или [method _generate_from_path].\n"
"По умолчанию он возвращает [code]false[/code]."

msgid ""
"Returns [code]true[/code] if your generator supports the resource of type "
"[param type]."
msgstr ""
"Возвращает [code]true[/code], если ваш генератор поддерживает ресурс типа "
"[param type]."

msgid "A plugin that advanced tooltip for its handled resource type."
msgstr "Плагин, который расширяет подсказки для обрабатываемого типа ресурса."

msgid ""
"Resource tooltip plugins are used by [FileSystemDock] to generate customized "
"tooltips for specific resources. E.g. tooltip for a [Texture2D] displays a "
"bigger preview and the texture's dimensions.\n"
"A plugin must be first registered with [method "
"FileSystemDock.add_resource_tooltip_plugin]. When the user hovers a resource "
"in filesystem dock which is handled by the plugin, [method "
"_make_tooltip_for_path] is called to create the tooltip. It works similarly "
"to [method Control._make_custom_tooltip]."
msgstr ""
"Плагины подсказок ресурсов используются [FileSystemDock] для создания "
"настраиваемых подсказок для определенных ресурсов. Например, подсказка для "
"[Texture2D] отображает увеличенный предварительный просмотр и размеры "
"текстуры.\n"
"Плагин должен быть сначала зарегистрирован с помощью [method "
"FileSystemDock.add_resource_tooltip_plugin]. Когда пользователь наводит "
"курсор на ресурс в доке файловой системы, который обрабатывается плагином, "
"вызывается [method _make_tooltip_for_path] для создания подсказки. Он "
"работает аналогично [method Control._make_custom_tooltip]."

msgid ""
"Return [code]true[/code] if the plugin is going to handle the given "
"[Resource] [param type]."
msgstr ""
"Верните [code]true[/code], если плагин будет обрабатывать заданный [Resource] "
"[param type]."

msgid ""
"Create and return a tooltip that will be displayed when the user hovers a "
"resource under the given [param path] in filesystem dock.\n"
"The [param metadata] dictionary is provided by preview generator (see [method "
"EditorResourcePreviewGenerator._generate]).\n"
"[param base] is the base default tooltip, which is a [VBoxContainer] with a "
"file name, type and size labels. If another plugin handled the same file "
"type, [param base] will be output from the previous plugin. For best result, "
"make sure the base tooltip is part of the returned [Control].\n"
"[b]Note:[/b] It's unadvised to use [method ResourceLoader.load], especially "
"with heavy resources like models or textures, because it will make the editor "
"unresponsive when creating the tooltip. You can use [method "
"request_thumbnail] if you want to display a preview in your tooltip.\n"
"[b]Note:[/b] If you decide to discard the [param base], make sure to call "
"[method Node.queue_free], because it's not freed automatically.\n"
"[codeblock]\n"
"func _make_tooltip_for_path(path, metadata, base):\n"
"\tvar t_rect = TextureRect.new()\n"
"\trequest_thumbnail(path, t_rect)\n"
"\tbase.add_child(t_rect) # The TextureRect will appear at the bottom of the "
"tooltip.\n"
"\treturn base\n"
"[/codeblock]"
msgstr ""
"Создайте и верните подсказку, которая будет отображаться, когда пользователь "
"наводит курсор на ресурс под указанным [param path] в доке файловой "
"системы. \n"
"Словарь [param metadata] предоставляется генератором предварительного "
"просмотра (см. [method EditorResourcePreviewGenerator._generate]).\n"
"[param base] — это базовая подсказка по умолчанию, которая представляет собой "
"[VBoxContainer] с метками имени файла, типа и размера. Если другой плагин "
"обработал тот же тип файла, [param base] будет выведено из предыдущего "
"плагина. Для достижения наилучшего результата убедитесь, что базовая "
"подсказка является частью возвращаемого [Control].\n"
"[b]Примечание:[/b] Не рекомендуется использовать [method "
"ResourceLoader.load], особенно с тяжелыми ресурсами, такими как модели или "
"текстуры, поскольку это приведет к тому, что редактор перестанет реагировать "
"при создании подсказки. Вы можете использовать [method request_thumbnail], "
"если хотите отобразить предварительный просмотр в подсказке.\n"
"[b]Примечание:[/b] Если вы решили отказаться от [param base], обязательно "
"вызовите [method Node.queue_free], поскольку он не освобождается "
"автоматически.\n"
"[codeblock]\n"
"func _make_tooltip_for_path(path, metadata, base):\n"
"\tvar t_rect = TextureRect.new()\n"
"\trequest_thumbnail(path, t_rect)\n"
"\tbase.add_child(t_rect) # TextureRect появится в нижней части подсказки.\n"
"\treturn base\n"
"[/codeblock]"

msgid ""
"Requests a thumbnail for the given [TextureRect]. The thumbnail is created "
"asynchronously by [EditorResourcePreview] and automatically set when "
"available."
msgstr ""
"Запрашивает миниатюру для указанного [TextureRect]. Миниатюра создается "
"асинхронно [EditorResourcePreview] и автоматически устанавливается, когда "
"доступна."

msgid "Imports scenes from third-parties' 3D files."
msgstr "Импортирует сцены из сторонних 3D-файлов."

msgid ""
"[EditorSceneFormatImporter] allows to define an importer script for a third-"
"party 3D format.\n"
"To use [EditorSceneFormatImporter], register it using the [method "
"EditorPlugin.add_scene_format_importer_plugin] method first."
msgstr ""
"[EditorSceneFormatImporter] позволяет определить скрипт импортера для "
"стороннего 3D-формата.\n"
"Чтобы использовать [EditorSceneFormatImporter], сначала зарегистрируйте его с "
"помощью метода [method EditorPlugin.add_scene_format_importer_plugin]."

msgid "Return supported file extensions for this scene importer."
msgstr "Верните поддерживаемые расширения файлов для этого импортера сцен."

msgid ""
"Override to add general import options. These will appear in the main import "
"dock on the editor. Add options via [method add_import_option] and [method "
"add_import_option_advanced].\n"
"[b]Note:[/b] All [EditorSceneFormatImporter] and "
"[EditorScenePostImportPlugin] instances will add options for all files. It is "
"good practice to check the file extension when [param path] is non-empty.\n"
"When the user is editing project settings, [param path] will be empty. It is "
"recommended to add all options when [param path] is empty to allow the user "
"to customize Import Defaults."
msgstr ""
"Переопределите, чтобы добавить общие параметры импорта. Они появятся в "
"главном доке импорта в редакторе. Добавьте параметры с помощью [method "
"add_import_option] и [method add_import_option_advanced].\n"
"[b]Примечание:[/b] Все экземпляры [EditorSceneFormatImporter] и "
"[EditorScenePostImportPlugin] добавят параметры для всех файлов. "
"Рекомендуется проверять расширение файла, если [param path] непустой.\n"
"Когда пользователь редактирует настройки проекта, [param path] будет пустым. "
"Рекомендуется добавлять все параметры, если [param path] пустой, чтобы "
"пользователь мог настраивать параметры импорта по умолчанию."

msgid ""
"Should return [code]true[/code] to show the given option, [code]false[/code] "
"to hide the given option, or [code]null[/code] to ignore."
msgstr ""
"Должен возвращать [code]true[/code] для отображения заданной опции, "
"[code]false[/code] для скрытия заданной опции или [code]null[/code] для "
"игнорирования."

msgid ""
"Perform the bulk of the scene import logic here, for example using "
"[GLTFDocument] or [FBXDocument]."
msgstr ""
"Выполните здесь основную часть логики импорта сцены, например, с помощью "
"[GLTFDocument] или [FBXDocument]."

msgid ""
"Add a specific import option (name and default value only). This function can "
"only be called from [method _get_import_options]."
msgstr ""
"Добавьте определенную опцию импорта (только имя и значение по умолчанию). Эту "
"функцию можно вызвать только из [method _get_import_options]."

msgid ""
"Add a specific import option. This function can only be called from [method "
"_get_import_options]."
msgstr ""
"Добавить конкретную опцию импорта. Эту функцию можно вызвать только из "
"[method _get_import_options]."

msgid "Importer for Blender's [code].blend[/code] scene file format."
msgstr "Импортер для формата файла сцены Blender [code].blend[/code]."

msgid ""
"Imports Blender scenes in the [code].blend[/code] file format through the "
"glTF 2.0 3D import pipeline. This importer requires Blender to be installed "
"by the user, so that it can be used to export the scene as glTF 2.0.\n"
"The location of the Blender binary is set via the [member "
"EditorSettings.filesystem/import/blender/blender_path] setting.\n"
"This importer is only used if [member ProjectSettings.filesystem/import/"
"blender/enabled] is enabled, otherwise [code].blend[/code] files present in "
"the project folder are not imported.\n"
"Blend import requires Blender 3.0.\n"
"Internally, the EditorSceneFormatImporterBlend uses the Blender glTF \"Use "
"Original\" mode to reference external textures."
msgstr ""
"Импортирует сцены Blender в формате файла [code].blend[/code] через конвейер "
"импорта 3D glTF 2.0. Этот импортер требует, чтобы Blender был установлен "
"пользователем, чтобы его можно было использовать для экспорта сцены как glTF "
"2.0.\n"
"Расположение двоичного файла Blender задается с помощью настройки [member "
"EditorSettings.filesystem/import/blender/blender_path].\n"
"Этот импортер используется только в том случае, если включен параметр [member "
"ProjectSettings.filesystem/import/blender/enabled], в противном случае файлы "
"[code].blend[/code], присутствующие в папке проекта, не импортируются.\n"
"Импорт Blend требует Blender 3.0.\n"
"Внутри EditorSceneFormatImporterBlend использует режим Blender glTF "
"«Использовать оригинал» для ссылки на внешние текстуры."

msgid "Importer for the [code].fbx[/code] scene file format."
msgstr "Импортер для формата файла сцены [code].fbx[/code]."

msgid ""
"Imports Autodesk FBX 3D scenes by way of converting them to glTF 2.0 using "
"the FBX2glTF command line tool.\n"
"The location of the FBX2glTF binary is set via the [member "
"EditorSettings.filesystem/import/fbx/fbx2gltf_path] editor setting.\n"
"This importer is only used if [member ProjectSettings.filesystem/import/"
"fbx2gltf/enabled] is set to [code]true[/code]."
msgstr ""
"Импортирует сцены Autodesk FBX 3D путем преобразования их в glTF 2.0 с "
"помощью инструмента командной строки FBX2glTF.\n"
"Расположение двоичного файла FBX2glTF задается с помощью настройки редактора "
"[member EditorSettings.filesystem/import/fbx/fbx2gltf_path].\n"
"Этот импортер используется только в том случае, если [member "
"ProjectSettings.filesystem/import/fbx2gltf/enabled] установлен на [code]true[/"
"code]."

msgid "Import FBX files using the ufbx library."
msgstr "Импортируйте файлы FBX с помощью библиотеки ufbx."

msgid ""
"EditorSceneFormatImporterUFBX is designed to load FBX files and supports both "
"binary and ASCII FBX files from version 3000 onward. This class supports "
"various 3D object types like meshes, skins, blend shapes, materials, and "
"rigging information. The class aims for feature parity with the official FBX "
"SDK and supports FBX 7.4 specifications."
msgstr ""
"EditorSceneFormatImporterUFBX предназначен для загрузки файлов FBX и "
"поддерживает как двоичные, так и ASCII файлы FBX, начиная с версии 3000. Этот "
"класс поддерживает различные типы 3D-объектов, такие как сетки, оболочки, "
"смешанные формы, материалы и информацию об оснастке. Класс нацелен на паритет "
"функций с официальным FBX SDK и поддерживает спецификации FBX 7.4."

msgid "Post-processes scenes after import."
msgstr "Постобработка сцен после импорта."

msgid ""
"Imported scenes can be automatically modified right after import by setting "
"their [b]Custom Script[/b] Import property to a [code]tool[/code] script that "
"inherits from this class.\n"
"The [method _post_import] callback receives the imported scene's root node "
"and returns the modified version of the scene:\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool # Needed so it runs in editor.\n"
"extends EditorScenePostImport\n"
"\n"
"# This sample changes all node names.\n"
"# Called right after the scene is imported and gets the root node.\n"
"func _post_import(scene):\n"
"\t# Change all node names to \"modified_[oldnodename]\"\n"
"\titerate(scene)\n"
"\treturn scene # Remember to return the imported scene\n"
"\n"
"func iterate(node):\n"
"\tif node != null:\n"
"\t\tnode.name = \"modified_\" + node.name\n"
"\t\tfor child in node.get_children():\n"
"\t\t\titerate(child)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"// This sample changes all node names.\n"
"// Called right after the scene is imported and gets the root node.\n"
"[Tool]\n"
"public partial class NodeRenamer : EditorScenePostImport\n"
"{\n"
"\tpublic override GodotObject _PostImport(Node scene)\n"
"\t{\n"
"\t\t// Change all node names to \"modified_[oldnodename]\"\n"
"\t\tIterate(scene);\n"
"\t\treturn scene; // Remember to return the imported scene\n"
"\t}\n"
"\n"
"\tpublic void Iterate(Node node)\n"
"\t{\n"
"\t\tif (node != null)\n"
"\t\t{\n"
"\t\t\tnode.Name = $\"modified_{node.Name}\";\n"
"\t\t\tforeach (Node child in node.GetChildren())\n"
"\t\t\t{\n"
"\t\t\t\tIterate(child);\n"
"\t\t\t}\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Импортированные сцены можно автоматически изменять сразу после импорта, "
"установив их свойство [b]Custom Script[/b] Import на скрипт [code]tool[/"
"code], который наследуется от этого класса.\n"
"Обратный вызов [method _post_import] получает корневой узел импортированной "
"сцены и возвращает измененную версию сцены:\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool # Необходимо, чтобы он работал в редакторе.\n"
"extends EditorScenePostImport\n"
"\n"
"# В этом примере изменяются все имена узлов.\n"
"# Вызывается сразу после импорта сцены и получает корневой узел.\n"
"func _post_import(scene):\n"
"\t# Измените все имена узлов на \"modified_[oldnodename]\"\n"
"\titerate(scene)\n"
"\treturn scene # Не забудьте вернуть импортированную сцену.\n"
"\n"
"func iterate(node):\n"
"\tif node != null:\n"
"\t\tnode.name = \"modified_\" + node.name\n"
"\t\tfor child in node.get_children():\n"
"\t\t\titerate(child)\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"// В этом примере изменяются все имена узлов.\n"
"// Вызывается сразу после импорта сцены и получает корневой узел.\n"
"[Tool]\n"
"public partial class NodeRenamer : EditorScenePostImport\n"
"{\n"
"\tpublic override GodotObject _PostImport(Node scene)\n"
"\t{\n"
"\t\t// Измените все имена узлов на \"modified_[oldnodename]\"\n"
"\t\tIterate(scene);\n"
"\t\treturn scene; // Не забудьте вернуть импортированную сцену.\n"
"\t}\n"
"\n"
"\tpublic void Iterate(Node node)\n"
"\t{\n"
"\t\tif (node != null)\n"
"\t\t{\n"
"\t\t\tnode.Name = $\"modified_{node.Name}\";\n"
"\t\t\tforeach (Node child in node.GetChildren())\n"
"\t\t\t{\n"
"\t\t\t\tIterate(child);\n"
"\t\t\t}\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Importing 3D scenes: Configuration: Using import scripts for automation"
msgstr ""
"Импорт 3D-сцен: Конфигурация: Использование скриптов импорта для автоматизации"

msgid ""
"Called after the scene was imported. This method must return the modified "
"version of the scene."
msgstr ""
"Вызывается после импорта сцены. Этот метод должен возвращать измененную "
"версию сцены."

msgid ""
"Returns the source file path which got imported (e.g. [code]res://scene.dae[/"
"code])."
msgstr ""
"Возвращает путь к исходному файлу, который был импортирован (например, "
"[code]res://scene.dae[/code])."

msgid "Plugin to control and modifying the process of importing a scene."
msgstr "Плагин для управления и изменения процесса импорта сцены."

msgid ""
"This plugin type exists to modify the process of importing scenes, allowing "
"to change the content as well as add importer options at every stage of the "
"process."
msgstr ""
"Этот тип плагина существует для изменения процесса импорта сцен, позволяя "
"изменять содержимое, а также добавлять параметры импортера на каждом этапе "
"процесса."

msgid ""
"Override to add general import options. These will appear in the main import "
"dock on the editor. Add options via [method add_import_option] and [method "
"add_import_option_advanced]."
msgstr ""
"Переопределить, чтобы добавить общие параметры импорта. Они появятся в "
"главном доке импорта в редакторе. Добавить параметры через [method "
"add_import_option] и [method add_import_option_advanced]."

msgid ""
"Override to add internal import options. These will appear in the 3D scene "
"import dialog. Add options via [method add_import_option] and [method "
"add_import_option_advanced]."
msgstr ""
"Переопределить, чтобы добавить внутренние параметры импорта. Они появятся в "
"диалоговом окне импорта 3D-сцены. Добавьте параметры через [method "
"add_import_option] и [method add_import_option_advanced]."

msgid ""
"Should return [code]true[/code] if the 3D view of the import dialog needs to "
"update when changing the given option."
msgstr ""
"Следует вернуть [code]true[/code], если 3D-вид диалогового окна импорта "
"необходимо обновить при изменении заданной опции."

msgid "Process a specific node or resource for a given category."
msgstr "Обработка определенного узла или ресурса для заданной категории."

msgid ""
"Post-process the scene. This function is called after the final scene has "
"been configured."
msgstr ""
"Постобработка сцены. Эта функция вызывается после настройки финальной сцены."

msgid ""
"Pre-process the scene. This function is called right after the scene format "
"loader loaded the scene and no changes have been made.\n"
"Pre-process may be used to adjust internal import options in the [code]"
"\"nodes\"[/code], [code]\"meshes\"[/code], [code]\"animations\"[/code] or "
"[code]\"materials\"[/code] keys inside "
"[code]get_option_value(\"_subresources\")[/code]."
msgstr ""
"Предварительная обработка сцены. Эта функция вызывается сразу после того, как "
"загрузчик формата сцены загрузил сцену, и никаких изменений не было внесено.\n"
"Предварительная обработка может использоваться для настройки внутренних "
"параметров импорта в ключах [code]\"nodes\"[/code], [code]\"meshes\"[/code], "
"[code]\"animations\"[/code] или [code]\"materials\"[/code] внутри "
"[code]get_option_value(\"_subresources\")[/code]."

msgid ""
"Add a specific import option (name and default value only). This function can "
"only be called from [method _get_import_options] and [method "
"_get_internal_import_options]."
msgstr ""
"Добавьте определенную опцию импорта (только имя и значение по умолчанию). Эту "
"функцию можно вызвать только из [method _get_import_options] и [method "
"_get_internal_import_options]."

msgid ""
"Add a specific import option. This function can only be called from [method "
"_get_import_options] and [method _get_internal_import_options]."
msgstr ""
"Добавить конкретную опцию импорта. Эту функцию можно вызвать только из "
"[method _get_import_options] и [method _get_internal_import_options]."

msgid ""
"Query the value of an option. This function can only be called from those "
"querying visibility, or processing."
msgstr ""
"Запросить значение параметра. Эту функцию можно вызвать только из тех, кто "
"запрашивает видимость или обработку."

msgid "Base script that can be used to add extension functions to the editor."
msgstr ""
"Базовый скрипт, который можно использовать для добавления функций расширения "
"в редактор."

msgid ""
"Scripts extending this class and implementing its [method _run] method can be "
"executed from the Script Editor's [b]File > Run[/b] menu option (or by "
"pressing [kbd]Ctrl + Shift + X[/kbd]) while the editor is running. This is "
"useful for adding custom in-editor functionality to Godot. For more complex "
"additions, consider using [EditorPlugin]s instead.\n"
"If a script extending this class also has a global class name, it will be "
"included in the editor's command palette.\n"
"[b]Note:[/b] Extending scripts need to have [code]tool[/code] mode enabled.\n"
"[b]Example:[/b] Running the following script prints \"Hello from the Godot "
"Editor!\":\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorScript\n"
"\n"
"func _run():\n"
"\tprint(\"Hello from the Godot Editor!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[Tool]\n"
"public partial class HelloEditor : EditorScript\n"
"{\n"
"\tpublic override void _Run()\n"
"\t{\n"
"\t\tGD.Print(\"Hello from the Godot Editor!\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] EditorScript is [RefCounted], meaning it is destroyed when "
"nothing references it. This can cause errors during asynchronous operations "
"if there are no references to the script."
msgstr ""
"Скрипты, расширяющие этот класс и реализующие его метод [method _run], можно "
"запустить из меню [b]Файл > Выполнить[/b] редактора скриптов (или нажатием "
"[kbd]Ctrl + Shift + X[/kbd]) во время работы редактора. Это полезно для "
"добавления собственных функций редактора в Godot. Для более сложных "
"дополнений рассмотрите возможность использования [EditorPlugin].\n"
"Если скрипт, расширяющий этот класс, также имеет глобальное имя класса, он "
"будет включён в палитру команд редактора.\n"
"[b]Примечание:[/b] Для расширения скриптов необходимо включить режим "
"[code]tool[/code].\n"
"[b]Пример:[/b] При запуске следующего скрипта будет выведено сообщение "
"«Привет из редактора Godot!»:\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorScript\n"
"\n"
"func _run():\n"
"\tprint(\"Привет из редактора Godot!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[Tool]\n"
"public partial class HelloEditor : EditorScript\n"
"{\n"
"\tpublic override void _Run()\n"
"\t{\n"
"\t\tGD.Print(\"Привет из редактора Godot!\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] EditorScript это [RefCounted], то есть он уничтожается, "
"если на него нет ссылок. Это может привести к ошибкам во время асинхронных "
"операций, если на скрипт нет ссылок."

msgid "This method is executed by the Editor when [b]File > Run[/b] is used."
msgstr ""
"Этот метод выполняется редактором при использовании [b]Файл > Выполнить[/b]."

msgid ""
"Makes [param node] root of the currently opened scene. Only works if the "
"scene is empty. If the [param node] is a scene instance, an inheriting scene "
"will be created."
msgstr ""
"Делает [param node] корнем текущей открытой сцены. Работает только если сцена "
"пуста. Если [param node] является экземпляром сцены, будет создана "
"наследующая сцена."

msgid ""
"Returns the edited (current) scene's root [Node]. Equivalent of [method "
"EditorInterface.get_edited_scene_root]."
msgstr ""
"Возвращает корень [Node] редактируемой (текущей) сцены. Эквивалент [method "
"EditorInterface.get_edited_scene_root]."

msgid ""
"Godot editor's control for selecting the [code]script[/code] property of a "
"[Node]."
msgstr ""
"Элемент управления редактора Godot для выбора свойства [code]script[/code] "
"[Node]."

msgid ""
"Similar to [EditorResourcePicker] this [Control] node is used in the editor's "
"Inspector dock, but only to edit the [code]script[/code] property of a "
"[Node]. Default options for creating new resources of all possible subtypes "
"are replaced with dedicated buttons that open the \"Attach Node Script\" "
"dialog. Can be used with [EditorInspectorPlugin] to recreate the same "
"behavior.\n"
"[b]Note:[/b] You must set the [member script_owner] for the custom context "
"menu items to work."
msgstr ""
"Подобно [EditorResourcePicker], этот узел [Control] используется в доке "
"Inspector редактора, но только для редактирования свойства [code]script[/"
"code] [Node]. Параметры по умолчанию для создания новых ресурсов всех "
"возможных подтипов заменены специальными кнопками, которые открывают "
"диалоговое окно «Прикрепить скрипт узла». Может использоваться с "
"[EditorInspectorPlugin] для воссоздания того же поведения.\n"
"[b]Примечание:[/b] Для работы пользовательских элементов контекстного меню "
"необходимо задать [member script_owner]."

msgid "The owner [Node] of the script property that holds the edited resource."
msgstr "Владелец [Node] свойства скрипта, содержащего редактируемый ресурс."

msgid "Manages the SceneTree selection in the editor."
msgstr "Управляет выбором SceneTree в редакторе."

msgid ""
"This object manages the SceneTree selection in the editor.\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_selection]."
msgstr ""
"Этот объект управляет выбором SceneTree в редакторе.\n"
"[b]Примечание:[/b] Этот класс не следует создавать напрямую. Вместо этого "
"получите доступ к синглтону с помощью [method EditorInterface.get_selection]."

msgid ""
"Adds a node to the selection.\n"
"[b]Note:[/b] The newly selected node will not be automatically edited in the "
"inspector. If you want to edit a node, use [method EditorInterface.edit_node]."
msgstr ""
"Добавляет узел к выделению.\n"
"[b]Примечание:[/b] Новый выбранный узел не будет автоматически отредактирован "
"в инспекторе. Если вы хотите отредактировать узел, используйте [method "
"EditorInterface.edit_node]."

msgid "Clear the selection."
msgstr "Снять выделение."

msgid "Returns the list of selected nodes."
msgstr "Возвращает список выбранных узлов."

msgid ""
"Returns the list of top selected nodes only, excluding any children. This is "
"useful for performing transform operations (moving them, rotating, etc.).\n"
"For example, if there is a node A with a child B and a sibling C, then "
"selecting all three will cause this method to return only A and C. Changing "
"the global transform of A will affect the global transform of B, so there is "
"no need to change B separately."
msgstr ""
"Возвращает список только верхних выбранных узлов, исключая дочерние. Это "
"полезно для выполнения операций преобразования (их перемещения, вращения и т. "
"д.).\n"
"Например, если есть узел A с дочерним узлом B и родственным узлом C, то выбор "
"всех трех приведет к тому, что этот метод вернет только A и C. Изменение "
"глобального преобразования A повлияет на глобальное преобразование B, поэтому "
"нет необходимости изменять B отдельно."

msgid "Use [method get_top_selected_nodes] instead."
msgstr "Вместо этого используйте [method get_top_selected_nodes]."

msgid ""
"Returns the list of top selected nodes only, excluding any children. This is "
"useful for performing transform operations (moving them, rotating, etc.). See "
"[method get_top_selected_nodes]."
msgstr ""
"Возвращает список только верхних выбранных узлов, исключая дочерние. Это "
"полезно для выполнения операций преобразования (перемещения, вращения и т. "
"д.). См. [method get_top_selected_nodes]."

msgid "Removes a node from the selection."
msgstr "Удаляет узел из выбора."

msgid "Emitted when the selection changes."
msgstr "Удаляет узел из выбора."

msgid "Object that holds the project-independent editor settings."
msgstr "Объект, содержащий независимые от проекта настройки редактора."

msgid ""
"Object that holds the project-independent editor settings. These settings are "
"generally visible in the [b]Editor > Editor Settings[/b] menu.\n"
"Property names use slash delimiters to distinguish sections. Setting values "
"can be of any [Variant] type. It's recommended to use [code]snake_case[/code] "
"for editor settings to be consistent with the Godot editor itself.\n"
"Accessing the settings can be done using the following methods, such as:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var settings = EditorInterface.get_editor_settings()\n"
"# `settings.set(\"some/property\", 10)` also works as this class overrides "
"`_set()` internally.\n"
"settings.set_setting(\"some/property\", 10)\n"
"# `settings.get(\"some/property\")` also works as this class overrides "
"`_get()` internally.\n"
"settings.get_setting(\"some/property\")\n"
"var list_of_settings = settings.get_property_list()\n"
"[/gdscript]\n"
"[csharp]\n"
"EditorSettings settings = EditorInterface.Singleton.GetEditorSettings();\n"
"// `settings.set(\"some/property\", value)` also works as this class "
"overrides `_set()` internally.\n"
"settings.SetSetting(\"some/property\", Value);\n"
"// `settings.get(\"some/property\", value)` also works as this class "
"overrides `_get()` internally.\n"
"settings.GetSetting(\"some/property\");\n"
"Godot.Collections.Array<Godot.Collections.Dictionary> listOfSettings = "
"settings.GetPropertyList();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_settings]."
msgstr ""
"Объект, содержащий независимые от проекта настройки редактора. Эти настройки "
"обычно видны в меню [b]Редактор > Настройки редактора[/b].\n"
"Имена свойств используют разделители косой черты для различения разделов. "
"Значения настроек могут быть любого типа [Variant]. Рекомендуется "
"использовать [code]snake_case[/code] для того, чтобы настройки редактора "
"соответствовали самому редактору Godot.\n"
"Доступ к настройкам можно осуществить с помощью следующих методов, таких "
"как:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var settings = EditorInterface.get_editor_settings()\n"
"# `settings.set(\"some/property\", 10)` также работает, поскольку этот класс "
"внутренне переопределяет `_set()`.\n"
"settings.set_setting(\"some/property\", 10)\n"
"# `settings.get(\"some/property\")` также работает, поскольку этот класс "
"внутренне переопределяет `_get()`.\n"
"settings.get_setting(\"some/property\")\n"
"var list_of_settings = settings.get_property_list()\n"
"[/gdscript]\n"
"[csharp]\n"
"EditorSettings settings = EditorInterface.Singleton.GetEditorSettings();\n"
"// `settings.set(\"some/property\", 10)` также работает, поскольку этот класс "
"внутренне переопределяет `_set()`.\n"
"settings.SetSetting(\"some/property\", Value);\n"
"//`settings.get(\"some/property\")` также работает, поскольку этот класс "
"внутренне переопределяет `_get()`.\n"
"settings.GetSetting(\"some/property\");\n"
"Godot.Collections.Array<Godot.Collections.Dictionary> listOfSettings = "
"settings.GetPropertyList();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Этот класс не должен быть инстанцирован напрямую. Вместо "
"этого, получите доступ к синглтону, используя [method "
"EditorInterface.get_editor_settings]."

msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]name[/code]: [String] (the name of the property)\n"
"- [code]type[/code]: [int] (see [enum Variant.Type])\n"
"- optionally [code]hint[/code]: [int] (see [enum PropertyHint]) and "
"[code]hint_string[/code]: [String]\n"
"[codeblocks]\n"
"[gdscript]\n"
"var settings = EditorInterface.get_editor_settings()\n"
"settings.set(\"category/property_name\", 0)\n"
"\n"
"var property_info = {\n"
"\t\"name\": \"category/property_name\",\n"
"\t\"type\": TYPE_INT,\n"
"\t\"hint\": PROPERTY_HINT_ENUM,\n"
"\t\"hint_string\": \"one,two,three\"\n"
"}\n"
"\n"
"settings.add_property_info(property_info)\n"
"[/gdscript]\n"
"[csharp]\n"
"var settings = GetEditorInterface().GetEditorSettings();\n"
"settings.Set(\"category/property_name\", 0);\n"
"\n"
"var propertyInfo = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"name\", \"category/propertyName\" },\n"
"\t{ \"type\", Variant.Type.Int },\n"
"\t{ \"hint\", PropertyHint.Enum },\n"
"\t{ \"hint_string\", \"one,two,three\" },\n"
"};\n"
"\n"
"settings.AddPropertyInfo(propertyInfo);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Добавляет информацию о пользовательском свойстве к свойству. Словарь должен "
"содержать:\n"
"- [code]name[/code]: [String] (имя свойства)\n"
"- [code]type[/code]: [int] (см. [enum Variant.Type])\n"
"- опционально [code]hint[/code]: [int] (см. [enum PropertyHint]) и "
"[code]hint_string[/code]: [String]\n"
"[codeblocks]\n"
"[gdscript]\n"
"var settings = EditorInterface.get_editor_settings()\n"
"settings.set(\"category/property_name\", 0)\n"
"\n"
"var property_info = {\n"
"\t\"name\": \"category/property_name\",\n"
"\t\"type\": TYPE_INT,\n"
"\t\"hint\": PROPERTY_HINT_ENUM,\n"
"\t\"hint_string\": \"one,two,three\"\n"
"}\n"
"\n"
"settings.add_property_info(property_info)\n"
"[/gdscript]\n"
"[csharp]\n"
"var settings = GetEditorInterface().GetEditorSettings();\n"
"settings.Set(\"category/property_name\", 0);\n"
"\n"
"var propertyInfo = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"name\", \"category/propertyName\" },\n"
"\t{ \"type\", Variant.Type.Int },\n"
"\t{ \"hint\", PropertyHint.Enum },\n"
"\t{ \"hint_string\", \"one,two,three\" },\n"
"};\n"
"\n"
"settings.AddPropertyInfo(propertyInfo);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Checks if any settings with the prefix [param setting_prefix] exist in the "
"set of changed settings. See also [method get_changed_settings]."
msgstr ""
"Проверяет, существуют ли какие-либо настройки с префиксом [param "
"setting_prefix] в наборе измененных настроек. См. также [method "
"get_changed_settings]."

msgid "Erases the setting whose name is specified by [param property]."
msgstr "Удаляет настройку, имя которой указано в [param property]."

msgid ""
"Gets an array of the settings which have been changed since the last save. "
"Note that internally [code]changed_settings[/code] is cleared after a "
"successful save, so generally the most appropriate place to use this method "
"is when processing [constant NOTIFICATION_EDITOR_SETTINGS_CHANGED]."
msgstr ""
"Получает массив настроек, которые были изменены с момента последнего "
"сохранения. Обратите внимание, что внутренне [code]changed_settings[/code] "
"очищается после успешного сохранения, поэтому обычно наиболее подходящим "
"местом для использования этого метода является обработка [constant "
"NOTIFICATION_EDITOR_SETTINGS_CHANGED]."

msgid "Returns the list of favorite files and directories for this project."
msgstr "Возвращает список избранных файлов и каталогов для этого проекта."

msgid ""
"Returns project-specific metadata for the [param section] and [param key] "
"specified. If the metadata doesn't exist, [param default] will be returned "
"instead. See also [method set_project_metadata]."
msgstr ""
"Возвращает метаданные, специфичные для проекта, для указанных [param section] "
"и [param key]. Если метаданные не существуют, вместо них будет возвращен "
"[param default]. См. также [method set_project_metadata]."

msgid ""
"Returns the list of recently visited folders in the file dialog for this "
"project."
msgstr ""
"Возвращает список недавно посещенных папок в диалоговом окне файлов для этого "
"проекта."

msgid ""
"Returns the value of the setting specified by [param name]. This is "
"equivalent to using [method Object.get] on the EditorSettings instance."
msgstr ""
"Возвращает значение параметра, указанного [param name]. Это эквивалентно "
"использованию [method Object.get] на экземпляре EditorSettings."

msgid ""
"Returns [code]true[/code] if the setting specified by [param name] exists, "
"[code]false[/code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если параметр, указанный [param name], "
"существует, в противном случае — [code]false[/code]."

msgid ""
"Marks the passed editor setting as being changed, see [method "
"get_changed_settings]. Only settings which exist (see [method has_setting]) "
"will be accepted."
msgstr ""
"Отмечает переданную настройку редактора как измененную, см. [method "
"get_changed_settings]. Будут приняты только существующие настройки (см. "
"[method has_setting])."

msgid ""
"Overrides the built-in editor action [param name] with the input actions "
"defined in [param actions_list]."
msgstr ""
"Переопределяет встроенное действие редактора [param name] действиями ввода, "
"определенными в [param actions_list]."

msgid "Sets the list of favorite files and directories for this project."
msgstr "Устанавливает список избранных файлов и каталогов для этого проекта."

msgid ""
"Sets the initial value of the setting specified by [param name] to [param "
"value]. This is used to provide a value for the Revert button in the Editor "
"Settings. If [param update_current] is [code]true[/code], the setting is "
"reset to [param value] as well."
msgstr ""
"Устанавливает начальное значение параметра, указанного [param name], на "
"[param value]. Это используется для предоставления значения для кнопки Revert "
"в настройках редактора. Если [param update_current] равно [code]true[/code], "
"параметр также сбрасывается на [param value]."

msgid ""
"Sets project-specific metadata with the [param section], [param key] and "
"[param data] specified. This metadata is stored outside the project folder "
"and therefore won't be checked into version control. See also [method "
"get_project_metadata]."
msgstr ""
"Устанавливает метаданные, специфичные для проекта, с указанием [param "
"section], [param key] и [param data]. Эти метаданные хранятся вне папки "
"проекта и, следовательно, не будут проверены в системе контроля версий. См. "
"также [method get_project_metadata]."

msgid ""
"Sets the list of recently visited folders in the file dialog for this project."
msgstr ""
"Устанавливает список недавно посещенных папок в диалоговом окне файлов для "
"этого проекта."

msgid ""
"Sets the [param value] of the setting specified by [param name]. This is "
"equivalent to using [method Object.set] on the EditorSettings instance."
msgstr ""
"Устанавливает [param value] настройки, указанной [param name]. Это "
"эквивалентно использованию [method Object.set] в экземпляре EditorSettings."

msgid ""
"If [code]true[/code], the Asset Library uses multiple threads for its HTTP "
"requests. This prevents the Asset Library from blocking the main thread for "
"every loaded asset."
msgstr ""
"Если [code]true[/code], библиотека активов использует несколько потоков для "
"своих HTTP-запросов. Это не позволяет библиотеке активов блокировать основной "
"поток для каждого загруженного актива."

msgid ""
"If [code]true[/code], automatically switches to the [b]Remote[/b] scene tree "
"when running the project from the editor. If [code]false[/code], stays on the "
"[b]Local[/b] scene tree when running the project from the editor.\n"
"[b]Warning:[/b] Enabling this setting can cause stuttering when running a "
"project with a large amount of nodes (typically a few thousands of nodes or "
"more), even if the editor window isn't focused. This is due to the remote "
"scene tree being updated every second regardless of whether the editor is "
"focused."
msgstr ""
"Если [code]true[/code], автоматически переключается на [b]Remote[/b] дерево "
"сцены при запуске проекта из редактора. Если [code]false[/code], остается на "
"[b]Local[/b] дереве сцены при запуске проекта из редактора.\n"
"[b]Предупреждение:[/b] Включение этого параметра может вызвать "
"подтормаживание при запуске проекта с большим количеством узлов (обычно "
"несколько тысяч узлов или больше), даже если окно редактора не сфокусировано. "
"Это связано с тем, что удаленное дерево сцены обновляется каждую секунду "
"независимо от того, сфокусирован ли редактор."

msgid ""
"If [code]true[/code], automatically switches to the [b]Stack Trace[/b] panel "
"when the debugger hits a breakpoint or steps."
msgstr ""
"Если [code]true[/code], автоматически переключается на панель [b]Stack Trace[/"
"b], когда отладчик достигает точки останова или шагов."

msgid ""
"The limit of how many remote nodes can be selected at once.\n"
"[b]Warning:[/b] Increasing this value is not recommended, as selecting too "
"many can make the editing and inspection of remote properties unreliable."
msgstr ""
"Ограничение на количество удаленных (Remote) узлов, которые можно выбрать "
"одновременно.\n"
"[b]Предупреждение:[/b] Увеличение этого значения не рекомендуется, так как "
"выбор слишком большого количества узлов может сделать редактирование и "
"проверку удаленных свойств ненадежными."

msgid ""
"If [code]true[/code], enables collection of profiling data from non-GDScript "
"Godot functions, such as engine class methods. Enabling this slows execution "
"while profiling further."
msgstr ""
"Если [code]true[/code], включает сбор данных профилирования из функций Godot, "
"не относящихся к GDScript, таких как методы класса движка. Включение этого "
"замедляет выполнение при дальнейшем профилировании."

msgid ""
"The size of the profiler's frame history. The default value (3600) allows "
"seeing up to 60 seconds of profiling if the project renders at a constant 60 "
"FPS. Higher values allow viewing longer periods of profiling in the graphs, "
"especially when the project is running at high framerates."
msgstr ""
"Размер истории кадров профилировщика. Значение по умолчанию (3600) позволяет "
"просматривать до 60 секунд профилирования, если проект рендерится с "
"постоянной частотой 60 кадров в секунду. Более высокие значения позволяют "
"просматривать более длительные периоды профилирования на графиках, особенно "
"когда проект работает с высокой частотой кадров."

msgid ""
"The maximum number of script functions that can be displayed per frame in the "
"profiler. If there are more script functions called in a given profiler "
"frame, these functions will be discarded from the profiling results "
"entirely.\n"
"[b]Note:[/b] This setting is only read when the profiler is first started, so "
"changing it during profiling will have no effect."
msgstr ""
"Максимальное количество функций скрипта, которые могут быть отображены на "
"кадр в профилировщике. Если в данном кадре профилировщика вызвано больше "
"функций скрипта, эти функции будут полностью удалены из результатов "
"профилирования.\n"
"[b]Примечание:[/b] Этот параметр считывается только при первом запуске "
"профилировщика, поэтому его изменение во время профилирования не даст "
"никакого эффекта."

msgid ""
"The target frame rate shown in the visual profiler graph, in frames per "
"second."
msgstr ""
"Целевая частота кадров, отображаемая на графике визуального профилировщика, в "
"кадрах в секунду."

msgid ""
"The refresh interval for the remote inspector's properties (in seconds). "
"Lower values are more reactive, but may cause stuttering while the project is "
"running from the editor and the [b]Remote[/b] scene tree is selected in the "
"Scene tree dock."
msgstr ""
"Интервал обновления свойств удаленного инспектора (в секундах). Более низкие "
"значения более реактивны, но могут вызвать подтормаживания, когда проект "
"запущен из редактора, а дерево сцен [b]Remote[/b] выбрано в доке дерева сцен."

msgid ""
"The refresh interval for the remote scene tree (in seconds). Lower values are "
"more reactive, but may cause stuttering while the project is running from the "
"editor and the [b]Remote[/b] scene tree is selected in the Scene tree dock."
msgstr ""
"Интервал обновления для дерева удаленной сцены (в секундах). Более низкие "
"значения более реактивны, но могут вызвать подтормаживания, когда проект "
"запущен из редактора, а дерево сцены [b]Remote[/b] выбрано в доке дерева "
"сцены."

msgid ""
"If [code]true[/code], displays folders in the FileSystem dock's bottom pane "
"when split mode is enabled. If [code]false[/code], only files will be "
"displayed in the bottom pane. Split mode can be toggled by pressing the icon "
"next to the [code]res://[/code] folder path.\n"
"[b]Note:[/b] This setting has no effect when split mode is disabled (which is "
"the default)."
msgstr ""
"Если [code]true[/code], то в нижней панели дока FileSystem отображаются "
"папки, когда включен режим разделения. Если [code]false[/code], то в нижней "
"панели отображаются только файлы. Режим разделения можно переключить, нажав "
"на значок рядом с путем к папке [code]res://[/code].\n"
"[b]Примечание:[/b] Этот параметр не действует, если режим разделения отключен "
"(что является значением по умолчанию)."

msgid ""
"A comma separated list of unsupported file extensions to show in the "
"FileSystem dock, e.g. [code]\"ico,icns\"[/code]."
msgstr ""
"Список неподдерживаемых расширений файлов, разделенных запятыми, для "
"отображения в доке файловой системы, например, [code]\"ico,icns\"[/code]."

msgid ""
"A comma separated list of file extensions to consider as editable text files "
"in the FileSystem dock (by double-clicking on the files), e.g. [code]"
"\"txt,md,cfg,ini,log,json,yml,yaml,toml,xml\"[/code]."
msgstr ""
"Список расширений файлов, разделенных запятыми, которые следует считать "
"редактируемыми текстовыми файлами в доке файловой системы (при двойном щелчке "
"по файлам), например, [code]\"txt,md,cfg,ini,log,json,yml,yaml,toml,xml\"[/"
"code]."

msgid ""
"The thumbnail size to use in the FileSystem dock (in pixels). See also "
"[member filesystem/file_dialog/thumbnail_size]."
msgstr ""
"Размер миниатюры для использования в доке FileSystem (в пикселях). См. также "
"[member filesystem/file_dialog/thumbnail_size]."

msgid ""
"The refresh interval to use for the Inspector dock's properties. The effect "
"of this setting is mainly noticeable when adjusting gizmos in the 2D/3D "
"editor and looking at the inspector at the same time. Lower values make the "
"inspector refresh more often, but take up more CPU time."
msgstr ""
"Интервал обновления для использования в свойствах дока Inspector. Эффект этой "
"настройки в основном заметен при настройке гизмо в 2D/3D-редакторе и "
"одновременном просмотре инспектора. Более низкие значения заставляют "
"инспектор обновляться чаще, но занимают больше процессорного времени."

msgid ""
"The tint intensity to use for the subresources background in the Inspector "
"dock. The tint is used to distinguish between different subresources in the "
"inspector. Higher values result in a more noticeable background color "
"difference."
msgstr ""
"Интенсивность оттенка, используемая для фона подресурсов в доке инспектора. "
"Оттенок используется для различения различных подресурсов в инспекторе. Более "
"высокие значения приводят к более заметной разнице в цвете фона."

msgid ""
"If [code]true[/code], accessibility related warnings are displayed alongside "
"other configuration warnings."
msgstr ""
"Если [code]true[/code], предупреждения, связанные с доступностью, "
"отображаются вместе с другими предупреждениями конфигурации."

msgid ""
"If [code]true[/code], when a node is deleted with animation tracks "
"referencing it, a confirmation dialog appears before the tracks are deleted. "
"The dialog will appear even when using the \"Delete (No Confirm)\" shortcut."
msgstr ""
"Если [code]true[/code], когда узел удаляется со ссылающимися на него "
"анимационными дорожками, перед удалением дорожек появляется диалоговое окно "
"подтверждения. Диалоговое окно появится даже при использовании сочетания "
"клавиш \"Удалить (без подтверждения)\"."

msgid ""
"If [code]true[/code], displays a confirmation dialog after left-clicking the "
"\"percent\" icon next to a node name in the Scene tree dock. When clicked, "
"this icon revokes the node's scene-unique name, which can impact the behavior "
"of scripts that rely on this scene-unique name due to identifiers not being "
"found anymore."
msgstr ""
"Если [code]true[/code], отображается диалоговое окно подтверждения после "
"щелчка левой кнопкой мыши по значку \"процент\" рядом с именем узла в доке "
"дерева сцены. При щелчке этот значок отменяет уникальное для сцены имя узла, "
"что может повлиять на поведение скриптов, которые полагаются на это "
"уникальное для сцены имя, поскольку идентификаторы больше не находятся."

msgid ""
"If [code]true[/code], the scene tree dock will automatically unfold nodes "
"when a node that has folded parents is selected."
msgstr ""
"Если [code]true[/code], док-станция дерева сцены будет автоматически "
"разворачивать узлы при выборе узла, имеющего свернутые родительские элементы."

msgid ""
"If [code]true[/code], new node created when reparenting node(s) will be "
"positioned at the average position of the selected node(s)."
msgstr ""
"Если [code]true[/code], новый узел, созданный при переподчинении узла(ов), "
"будет позиционироваться в средней позиции выбранного узла(ов)."

msgid ""
"If [code]true[/code], the scene tree dock will only show nodes that match the "
"filter, without showing parents that don't. This settings can also be changed "
"in the Scene dock's top menu."
msgstr ""
"Если [code]true[/code], док-станция дерева сцены будет показывать только те "
"узлы, которые соответствуют фильтру, не показывая родителей, которые не "
"соответствуют. Эти настройки также можно изменить в верхнем меню дока сцены."

msgid ""
"If [code]true[/code], the Create dialog (Create New Node/Create New Resource) "
"will start with all its sections expanded. Otherwise, sections will be "
"collapsed until the user starts searching (which will automatically expand "
"sections as needed)."
msgstr ""
"Если [code]true[/code], диалоговое окно Create (Cr. New Node/Cr. New "
"Resource) запустится со всеми развернутыми разделами. В противном случае "
"разделы будут свернуты до тех пор, пока пользователь не начнет поиск (который "
"автоматически развернет разделы по мере необходимости)."

msgid ""
"The \"start\" stop of the color gradient to use for bones in the 2D skeleton "
"editor."
msgstr ""
"«Начальная» точка цветового градиента, используемого для костей в редакторе "
"2D-скелета."

msgid ""
"The \"end\" stop of the color gradient to use for bones in the 2D skeleton "
"editor."
msgstr ""
"«Конечная» точка градиента цвета, используемая для костей в редакторе 2D-"
"скелета."

msgid ""
"The color to use for inverse kinematics-enabled bones in the 2D skeleton "
"editor."
msgstr ""
"Цвет, используемый для костей с поддержкой обратной кинематики в редакторе 2D-"
"скелетов."

msgid ""
"The outline color to use for non-selected bones in the 2D skeleton editor. "
"See also [member editors/2d/bone_selected_color]."
msgstr ""
"Цвет контура, который следует использовать для невыбранных костей в редакторе "
"2D-скелета. См. также [member editors/2d/bone_selected_color]."

msgid ""
"The outline size in the 2D skeleton editor (in pixels). See also [member "
"editors/2d/bone_width].\n"
"[b]Note:[/b] Changes to this value only apply after modifying a [Bone2D] node "
"in any way, or closing and reopening the scene."
msgstr ""
"Размер контура в редакторе 2D-скелета (в пикселях). См. также [member editors/"
"2d/bone_width].\n"
"[b]Примечание:[/b] Изменения этого значения применяются только после "
"изменения узла [Bone2D] каким-либо образом или закрытия и повторного открытия "
"сцены."

msgid ""
"The color to use for selected bones in the 2D skeleton editor. See also "
"[member editors/2d/bone_outline_color]."
msgstr ""
"Цвет, который будет использоваться для выбранных костей в редакторе 2D-"
"скелета. См. также [member editors/2d/bone_outline_color]."

msgid ""
"The bone width in the 2D skeleton editor (in pixels). See also [member "
"editors/2d/bone_outline_size].\n"
"[b]Note:[/b] Changes to this value only apply after modifying a [Bone2D] node "
"in any way, or closing and reopening the scene."
msgstr ""
"Ширина кости в редакторе 2D-скелета (в пикселях). См. также [member editors/"
"2d/bone_outline_size].\n"
"[b]Примечание:[/b] Изменения этого значения применяются только после "
"изменения узла [Bone2D] каким-либо образом или закрытия и повторного открытия "
"сцены."

msgid "The grid color to use in the 2D editor."
msgstr "Цвет сетки для использования в 2D-редакторе."

msgid ""
"The guides color to use in the 2D editor. Guides can be created by dragging "
"the mouse cursor from the rulers."
msgstr ""
"Цвет направляющих для использования в 2D-редакторе. Направляющие можно "
"создавать, перетаскивая курсор мыши из линеек."

msgid ""
"The thickness of the coordinate ruler in the 2D editor. Increasing this will "
"also increase the size of the ruler font, improving readability when using a "
"lower editor scale. The editor may force a minimum size to keep the ruler "
"numbers legible."
msgstr ""
"Толщина координатной линейки в 2D-редакторе. Увеличение этого значения также "
"увеличит размер шрифта линейки, что улучшит читаемость при использовании "
"более низкого масштаба редактора. Редактор может принудительно установить "
"минимальный размер, чтобы номера линейки оставались разборчивыми."

msgid ""
"The color to use when drawing smart snapping lines in the 2D editor. The "
"smart snapping lines will automatically display when moving 2D nodes if smart "
"snapping is enabled in the Snapping Options menu at the top of the 2D editor "
"viewport."
msgstr ""
"Цвет, используемый при рисовании интеллектуальных линий привязки в 2D-"
"редакторе. Интеллектуальные линии привязки будут автоматически отображаться "
"при перемещении 2D-узлов, если интеллектуальная привязка включена в меню "
"«Параметры привязки» в верхней части окна просмотра 2D-редактора."

msgid ""
"If [code]true[/code], the 2D editor will snap to integer zoom values when not "
"holding the [kbd]Alt[/kbd] key. If [code]false[/code], this behavior is "
"swapped."
msgstr ""
"Если [code]true[/code], 2D-редактор будет привязываться к целочисленным "
"значениям масштабирования, если не удерживать клавишу [kbd]Alt[/kbd]. Если "
"[code]false[/code], это поведение меняется."

msgid ""
"The color of the viewport border in the 2D editor. This border represents the "
"viewport's size at the base resolution defined in the Project Settings. "
"Objects placed outside this border will not be visible unless a [Camera2D] "
"node is used, or unless the window is resized and the stretch mode is set to "
"[code]disabled[/code]."
msgstr ""
"Цвет границы области просмотра в 2D-редакторе. Эта граница представляет "
"размер области просмотра при базовом разрешении, определенном в настройках "
"проекта. Объекты, размещенные за пределами этой границы, не будут видны, если "
"не используется узел [Camera2D] или если размер окна не изменен, а режим "
"растяжения не установлен на [code]disabled[/code]."

msgid ""
"The factor to use when zooming in or out in the 2D editor. For example, "
"[code]1.1[/code] will zoom in by 10% with every step. If set to [code]2.0[/"
"code], zooming will only cycle through powers of two."
msgstr ""
"Коэффициент, используемый при увеличении или уменьшении масштаба в 2D-"
"редакторе. Например, [code]1.1[/code] будет увеличивать масштаб на 10% с "
"каждым шагом. Если установлено значение [code]2.0[/code], масштабирование "
"будет циклически меняться только по степеням двойки."

msgid ""
"The color to use for the active selection box that surrounds selected nodes "
"in the 3D editor viewport. The color's alpha channel influences the selection "
"box's opacity.\n"
"[b]Note:[/b] The term \"active\" indicates that this object is the primary "
"selection used as the basis for certain operations. This is the last selected "
"[Node3D], which can be reordered with [kbd]Shift + Left mouse button[/kbd]."
msgstr ""
"Цвет, используемый для активного поля выбора, которое окружает выбранные узлы "
"в окне просмотра 3D-редактора. Альфа-канал цвета влияет на непрозрачность "
"поля выбора.\n"
"[b]Примечание:[/b] Термин «активный» указывает на то, что этот объект "
"является основным выбором, используемым в качестве основы для определенных "
"операций. Это последний выбранный [Node3D], который можно переупорядочить с "
"помощью [kbd]Shift + Left mouse button[/kbd]."

msgid ""
"The default camera vertical field of view to use in the 3D editor (in "
"degrees). The camera field of view can be adjusted on a per-scene basis using "
"the [b]View[/b] menu at the top of the 3D editor. If a scene had its camera "
"field of view adjusted using the [b]View[/b] menu, this setting is ignored in "
"the scene in question. This setting is also ignored while a [Camera3D] node "
"is being previewed in the editor.\n"
"[b]Note:[/b] The editor camera always uses the [b]Keep Height[/b] aspect mode."
msgstr ""
"Вертикальное поле зрения камеры по умолчанию для использования в 3D-редакторе "
"(в градусах). Поле зрения камеры можно настроить для каждой сцены с помощью "
"меню [b]Вид[/b] в верхней части 3D-редактора. Если поле зрения камеры сцены "
"было настроено с помощью меню [b]Вид[/b], эта настройка игнорируется в "
"рассматриваемой сцене. Эта настройка также игнорируется, пока узел [Camera3D] "
"просматривается в редакторе.\n"
"[b]Примечание:[/b] Камера редактора всегда использует режим соотношения "
"сторон [b]Сохранить высоту[/b]."

msgid ""
"The default camera far clip distance to use in the 3D editor (in degrees). "
"Higher values make it possible to view objects placed further away from the "
"camera, at the cost of lower precision in the depth buffer (which can result "
"in visible Z-fighting in the distance). The camera far clip distance can be "
"adjusted on a per-scene basis using the [b]View[/b] menu at the top of the 3D "
"editor. If a scene had its camera far clip distance adjusted using the "
"[b]View[/b] menu, this setting is ignored in the scene in question. This "
"setting is also ignored while a [Camera3D] node is being previewed in the "
"editor."
msgstr ""
"Расстояние отсечения камеры до дальнего края по умолчанию для использования в "
"3D-редакторе (в градусах). Более высокие значения позволяют просматривать "
"объекты, расположенные дальше от камеры, за счет более низкой точности в "
"буфере глубины (что может привести к видимому Z-борьбе на расстоянии). "
"Расстояние отсечения камеры до дальнего края можно настроить для каждой сцены "
"с помощью меню [b]Вид[/b] в верхней части 3D-редактора. Если для сцены "
"расстояние отсечения камеры до дальнего края было настроено с помощью меню "
"[b]Вид[/b], эта настройка игнорируется в рассматриваемой сцене. Эта настройка "
"также игнорируется во время предварительного просмотра узла [Camera3D] в "
"редакторе."

msgid ""
"The default camera near clip distance to use in the 3D editor (in degrees). "
"Lower values make it possible to view objects placed closer to the camera, at "
"the cost of lower precision in the depth buffer (which can result in visible "
"Z-fighting in the distance). The camera near clip distance can be adjusted on "
"a per-scene basis using the [b]View[/b] menu at the top of the 3D editor. If "
"a scene had its camera near clip distance adjusted using the [b]View[/b] "
"menu, this setting is ignored in the scene in question. This setting is also "
"ignored while a [Camera3D] node is being previewed in the editor."
msgstr ""
"Расстояние отсечения камеры по умолчанию для использования в 3D-редакторе (в "
"градусах). Более низкие значения позволяют просматривать объекты, "
"расположенные ближе к камере, за счет более низкой точности в буфере глубины "
"(что может привести к видимому Z-борьбе на расстоянии). Расстояние отсечения "
"камеры можно настроить для каждой сцены с помощью меню [b]Вид[/b] в верхней "
"части 3D-редактора. Если для сцены расстояние отсечения камеры было настроено "
"с помощью меню [b]Вид[/b], эта настройка игнорируется в рассматриваемой "
"сцене. Эта настройка также игнорируется во время предварительного просмотра "
"узла [Camera3D] в редакторе."

msgid ""
"The modifier key to use to enable freelook in the 3D editor (on top of "
"pressing the right mouse button).\n"
"[b]Note:[/b] Regardless of this setting, the freelook toggle keyboard "
"shortcut ([kbd]Shift + F[/kbd] by default) is always available.\n"
"[b]Note:[/b] On certain window managers on Linux, the [kbd]Alt[/kbd] key will "
"be intercepted by the window manager when clicking a mouse button at the same "
"time. This means Godot will not see the modifier key as being pressed."
msgstr ""
"Модифицирующая клавиша, используемая для включения свободного обзора в 3D-"
"редакторе (в дополнение к нажатию правой кнопки мыши).\n"
"[b]Примечание:[/b] Независимо от этой настройки, сочетание клавиш для "
"переключения свободного обзора ([kbd]Shift + F[/kbd] по умолчанию) всегда "
"доступно.\n"
"[b]Примечание:[/b] В некоторых оконных менеджерах Linux клавиша [kbd]Alt[/"
"kbd] будет перехвачена оконным менеджером при одновременном нажатии кнопки "
"мыши. Это означает, что Godot не увидит, что клавиша-модификатор нажата."

msgid ""
"The base 3D freelook speed in units per second. This can be adjusted by using "
"the mouse wheel while in freelook mode, or by holding down the \"fast\" or "
"\"slow\" modifier keys ([kbd]Shift[/kbd] and [kbd]Alt[/kbd] by default, "
"respectively)."
msgstr ""
"Базовая скорость 3D свободного обзора в единицах в секунду. Ее можно "
"настроить с помощью колеса мыши в режиме свободного обзора или удерживая "
"клавиши-модификаторы \"быстро\" или \"медленно\" ([kbd]Shift[/kbd] и "
"[kbd]Alt[/kbd] по умолчанию соответственно)."

msgid ""
"The inertia of the 3D freelook camera. Higher values make the camera start "
"and stop slower, which looks smoother but adds latency."
msgstr ""
"Инерция 3D-камеры свободного обзора. Более высокие значения заставляют камеру "
"запускаться и останавливаться медленнее, что выглядит более плавно, но "
"добавляет задержку."

msgid ""
"The navigation scheme to use when freelook is enabled in the 3D editor. Some "
"of the navigation schemes below may be more convenient when designing "
"specific levels in the 3D editor.\n"
"- [b]Default:[/b] The \"Freelook Forward\", \"Freelook Backward\", \"Freelook "
"Up\" and \"Freelook Down\" keys will move relative to the camera, taking its "
"pitch angle into account for the movement.\n"
"- [b]Partially Axis-Locked:[/b] The \"Freelook Forward\" and \"Freelook "
"Backward\" keys will move relative to the camera, taking its pitch angle into "
"account for the movement. The \"Freelook Up\" and \"Freelook Down\" keys will "
"move in an \"absolute\" manner, [i]not[/i] taking the camera's pitch angle "
"into account for the movement.\n"
"- [b]Fully Axis-Locked:[/b] The \"Freelook Forward\", \"Freelook Backward\", "
"\"Freelook Up\" and \"Freelook Down\" keys will move in an \"absolute\" "
"manner, [i]not[/i] taking the camera's pitch angle into account for the "
"movement.\n"
"See also [member editors/3d/navigation/navigation_scheme]."
msgstr ""
"Схема навигации, используемая при включении свободного обзора в 3D-редакторе. "
"Некоторые из схем навигации ниже могут быть более удобными при проектировании "
"определенных уровней в 3D-редакторе.\n"
"- [b]По умолчанию:[/b] Клавиши «Freelook Forward», «Freelook Backward», "
"«Freelook Up» и «Freelook Down» будут перемещаться относительно камеры, "
"принимая во внимание ее угол наклона при движении.\n"
"- [b]Частично заблокированные оси:[/b] Клавиши \"Freelook Forward\" и "
"\"Freelook Backward\" будут перемещаться относительно камеры, принимая во "
"внимание ее угол наклона для перемещения. Клавиши \"Freelook Up\" и "
"\"Freelook Down\" будут перемещаться \"абсолютным\" образом, [i]не[/i] "
"принимая во внимание угол наклона камеры для перемещения.\n"
"- [b]Полная блокировка осей:[/b] клавиши «Свободный обзор вперед», «Свободный "
"обзор назад», «Свободный обзор вверх» и «Свободный обзор вниз» будут "
"перемещаться «абсолютным» образом, [i]не[/i] принимая во внимание угол "
"наклона камеры при перемещении.\n"
"См. также [member editors/3d/navigation/navigation_scheme]."

msgid ""
"The mouse sensitivity to use while freelook mode is active in the 3D editor. "
"See also [member editors/3d/navigation_feel/orbit_sensitivity]."
msgstr ""
"Чувствительность мыши, используемая при активном режиме свободного обзора в "
"3D-редакторе. См. также [member editors/3d/navigation_feel/orbit_sensitivity]."

msgid ""
"If [code]true[/code], freelook speed is linked to the zoom value used in the "
"camera orbit mode in the 3D editor."
msgstr ""
"Если [code]true[/code], скорость свободного обзора связана со значением "
"масштабирования, используемым в режиме орбиты камеры в 3D-редакторе."

msgid ""
"The grid division bias to use in the 3D editor. Negative values will cause "
"small grid divisions to appear earlier, whereas positive values will cause "
"small grid divisions to appear later."
msgstr ""
"Смещение деления сетки для использования в 3D-редакторе. Отрицательные "
"значения приведут к тому, что мелкие деления сетки появятся раньше, тогда как "
"положительные значения приведут к тому, что мелкие деления сетки появятся "
"позже."

msgid ""
"The largest grid division to use in the 3D editor. Together with [member "
"editors/3d/primary_grid_steps], this determines how large the grid divisions "
"can be. The grid divisions will not be able to get larger than "
"[code]primary_grid_steps ^ grid_division_level_max[/code] units. By default, "
"when [member editors/3d/primary_grid_steps] is [code]8[/code], this means "
"grid divisions cannot get larger than [code]64[/code] units each (so primary "
"grid lines are [code]512[/code] units apart), no matter how far away the "
"camera is from the grid."
msgstr ""
"Наибольшее деление сетки для использования в 3D-редакторе. Вместе с [member "
"editors/3d/primary_grid_steps] это определяет, насколько большими могут быть "
"деления сетки. Деления сетки не смогут стать больше, чем "
"[code]primary_grid_steps ^ grid_division_level_max[/code] единиц. По "
"умолчанию, когда [member editors/3d/primary_grid_steps] равно [code]8[/code], "
"это означает, что деления сетки не могут стать больше, чем [code]64[/code] "
"единиц каждое (поэтому первичные линии сетки находятся на расстоянии "
"[code]512[/code] единиц), независимо от того, как далеко находится камера от "
"сетки."

msgid ""
"The smallest grid division to use in the 3D editor. Together with [member "
"editors/3d/primary_grid_steps], this determines how small the grid divisions "
"can be. The grid divisions will not be able to get smaller than "
"[code]primary_grid_steps ^ grid_division_level_min[/code] units. By default, "
"this means grid divisions cannot get smaller than 1 unit each, no matter how "
"close the camera is from the grid."
msgstr ""
"Наименьшее деление сетки для использования в 3D-редакторе. Вместе с [member "
"editors/3d/primary_grid_steps] это определяет, насколько малыми могут быть "
"деления сетки. Деления сетки не смогут стать меньше, чем "
"[code]primary_grid_steps ^ grid_division_level_min[/code] единиц. По "
"умолчанию это означает, что деления сетки не могут стать меньше, чем 1 "
"единица каждое, независимо от того, насколько близко камера находится к сетке."

msgid ""
"The grid size in units. Higher values prevent the grid from appearing \"cut "
"off\" at certain angles, but make the grid more demanding to render. "
"Depending on the camera's position, the grid may not be fully visible since a "
"shader is used to fade it progressively."
msgstr ""
"Размер сетки в единицах. Более высокие значения предотвращают появление сетки "
"\"обрезанной\" под определенными углами, но делают сетку более требовательной "
"к визуализации. В зависимости от положения камеры сетка может быть не "
"полностью видна, так как для ее постепенного затухания используется шейдер."

msgid ""
"If [code]true[/code], renders the grid on the XY plane in perspective view. "
"This can be useful for 3D side-scrolling games."
msgstr ""
"Если [code]true[/code], рендерит сетку на плоскости XY в перспективном виде. "
"Это может быть полезно для 3D-игр с боковой прокруткой."

msgid ""
"If [code]true[/code], renders the grid on the XZ plane in perspective view."
msgstr ""
"Если [code]true[/code], отображает сетку на плоскости XZ в перспективном виде."

msgid ""
"If [code]true[/code], renders the grid on the YZ plane in perspective view. "
"This can be useful for 3D side-scrolling games."
msgstr ""
"Если [code]true[/code], рендерит сетку на плоскости YZ в перспективе. Это "
"может быть полезно для 3D-игр с боковой прокруткой."

msgid "Opacity of the default gizmo for moving, rotating, and scaling 3D nodes."
msgstr ""
"Непрозрачность гизмо по умолчанию для перемещения, вращения и масштабирования "
"3D-узлов."

msgid "Size of the default gizmo for moving, rotating, and scaling 3D nodes."
msgstr ""
"Размер гизмо по умолчанию для перемещения, вращения и масштабирования 3D-"
"узлов."

msgid ""
"If [code]true[/code], enables 3-button mouse emulation mode. This is useful "
"on laptops when using a trackpad.\n"
"When 3-button mouse emulation mode is enabled, the pan, zoom and orbit "
"modifiers can always be used in the 3D editor viewport, even when not holding "
"down any mouse button."
msgstr ""
"Если [code]true[/code], включается режим эмуляции 3-кнопочной мыши. Это "
"полезно на ноутбуках при использовании трекпада.\n"
"Когда включен режим эмуляции 3-кнопочной мыши, модификаторы панорамирования, "
"масштабирования и орбиты всегда можно использовать в окне просмотра 3D-"
"редактора, даже если не удерживать ни одну кнопку мыши."

msgid ""
"If [code]true[/code], allows using the top row [kbd]0[/kbd]-[kbd]9[/kbd] keys "
"to function as their equivalent numpad keys for 3D editor navigation. This "
"should be enabled on keyboards that have no numeric keypad available."
msgstr ""
"Если [code]true[/code], позволяет использовать клавиши верхнего ряда [kbd]0[/"
"kbd]-[kbd]9[/kbd] в качестве эквивалентных клавиш цифровой панели для "
"навигации в 3D-редакторе. Это следует включить на клавиатурах, на которых нет "
"цифровой панели."

msgid ""
"If [code]true[/code], invert the horizontal mouse axis when panning or "
"orbiting in the 3D editor. This setting does [i]not[/i] apply to freelook "
"mode."
msgstr ""
"Если [code]true[/code], инвертировать горизонтальную ось мыши при "
"панорамировании или вращении в 3D-редакторе. Эта настройка [i]не[/i] "
"применяется к режиму свободного обзора."

msgid ""
"If [code]true[/code], invert the vertical mouse axis when panning, orbiting, "
"or using freelook mode in the 3D editor."
msgstr ""
"Если [code]true[/code], инвертируйте вертикальную ось мыши при "
"панорамировании, вращении по орбите или использовании режима свободного "
"обзора в 3D-редакторе."

msgid ""
"The navigation scheme preset to use in the 3D editor. Changing this setting "
"will affect the mouse button and modifier keys used to navigate the 3D editor "
"viewport.\n"
"All schemes can use [kbd]Mouse wheel[/kbd] to zoom.\n"
"- [b]Godot:[/b] [kbd]Middle mouse button[/kbd] to orbit. [kbd]Shift + Middle "
"mouse button[/kbd] to pan. [kbd]Ctrl + Middle mouse button[/kbd] to zoom.\n"
"- [b]Maya:[/b] [kbd]Alt + Left mouse button[/kbd] to orbit. [kbd]Middle mouse "
"button[/kbd] to pan, [kbd]Shift + Middle mouse button[/kbd] to pan 10 times "
"faster. [kbd]Alt + Right mouse button[/kbd] to zoom.\n"
"- [b]Modo:[/b] [kbd]Alt + Left mouse button[/kbd] to orbit. [kbd]Alt + Shift "
"+ Left mouse button[/kbd] to pan. [kbd]Ctrl + Alt + Left mouse button[/kbd] "
"to zoom.\n"
"- [b]Tablet/Trackpad:[/b] [kbd]Alt[/kbd] to orbit. [kbd]Shift[/kbd] to pan. "
"[kbd]Ctrl[/kbd] to zoom. Enables 3-button mouse emulation mode.\n"
"See also [member editors/3d/navigation/orbit_mouse_button], [member editors/"
"3d/navigation/pan_mouse_button], [member editors/3d/navigation/"
"zoom_mouse_button], [member editors/3d/freelook/freelook_navigation_scheme], "
"and [member editors/3d/navigation/emulate_3_button_mouse].\n"
"[b]Note:[/b] On certain window managers on Linux, the [kbd]Alt[/kbd] key will "
"be intercepted by the window manager when clicking a mouse button at the same "
"time. This means Godot will not see the modifier key as being pressed."
msgstr ""
"Предустановленная схема навигации для использования в 3D-редакторе. Изменение "
"этого параметра повлияет на кнопку мыши и клавиши-модификаторы, используемые "
"для навигации по окну просмотра 3D-редактора.\n"
"Все схемы могут использовать [kbd]колесо мыши[/kbd] для масштабирования.\n"
"- [b]Godot:[/b] [kbd]Средняя кнопка мыши[/kbd] для вращения по орбите. "
"[kbd]Shift + Средняя кнопка мыши[/kbd] для панорамирования. [kbd]Ctrl + "
"Средняя кнопка мыши[/kbd] для масштабирования.\n"
"- [b]Maya:[/b] [kbd]Alt + Левая кнопка мыши[/kbd] для вращения по орбите. "
"[kbd]Средняя кнопка мыши[/kbd] для панорамирования, [kbd]Shift + Средняя "
"кнопка мыши[/kbd] для панорамирования в 10 раз быстрее. [kbd]Alt + Правая "
"кнопка мыши[/kbd] для масштабирования.\n"
"- [b]Modo:[/b][kbd]Alt + Левая кнопка мыши[/kbd] для орбиты. [kbd]Alt + Shift "
"+ Левая кнопка мыши[/kbd] для панорамирования. [kbd]Ctrl + Alt + Левая кнопка "
"мыши[/kbd] для масштабирования.\n"
"- [b]Планшет/Трекпад:[/b] [kbd]Alt[/kbd] для вращения. [kbd]Shift[/kbd] для "
"панорамирования. [kbd]Ctrl[/kbd] для масштабирования. Включает режим эмуляции "
"3-кнопочной мыши.\n"
"См. также [member editors/3d/navigation/orbit_mouse_button], [member editors/"
"3d/navigation/pan_mouse_button], [member editors/3d/navigation/"
"zoom_mouse_button], [member editors/3d/freelook/freelook_navigation_scheme], "
"и [member editors/3d/navigation/emulate_3_button_mouse].\n"
"[b]Примечание:[/b] В некоторых оконных менеджерах Linux клавиша [kbd]Alt[/"
"kbd] будет перехвачена оконным менеджером при одновременном нажатии кнопки "
"мыши. Это означает, что Godot не увидит, что клавиша-модификатор нажата."

msgid ""
"The mouse button that needs to be held down to orbit in the 3D editor "
"viewport."
msgstr ""
"Кнопка мыши, которую необходимо удерживать для перемещения по орбите в окне "
"просмотра 3D-редактора."

msgid ""
"The mouse button that needs to be held down to pan in the 3D editor viewport."
msgstr ""
"Кнопка мыши, которую необходимо удерживать для панорамирования в области "
"просмотра 3D-редактора."

msgid ""
"If [code]true[/code], shows gizmos for moving and rotating the camera in the "
"bottom corners of the 3D editor's viewport. Useful for devices that use touch "
"screen."
msgstr ""
"Если [code]true[/code], показывает гизмо для перемещения и вращения камеры в "
"нижних углах области просмотра 3D-редактора. Полезно для устройств с "
"сенсорным экраном."

msgid ""
"If [code]true[/code], shows a small orientation gizmo in the top-right corner "
"of the 3D editor's viewports."
msgstr ""
"Если [code]true[/code], в правом верхнем углу видовых экранов 3D-редактора "
"отображается небольшой элемент ориентации."

msgid ""
"If [code]true[/code], warps the mouse around the 3D viewport while panning in "
"the 3D editor. This makes it possible to pan over a large area without having "
"to exit panning and adjust the mouse cursor."
msgstr ""
"Если [code]true[/code], деформирует мышь вокруг 3D-окна просмотра при "
"панорамировании в 3D-редакторе. Это позволяет панорамировать большую область "
"без необходимости выходить из панорамирования и настраивать курсор мыши."

msgid ""
"The mouse button that needs to be held down to zoom in the 3D editor viewport."
msgstr ""
"Кнопка мыши, которую необходимо удерживать для увеличения масштаба в области "
"просмотра 3D-редактора."

msgid ""
"The mouse cursor movement direction to use when zooming by moving the mouse. "
"This does not affect zooming with the mouse wheel."
msgstr ""
"Направление движения курсора мыши, используемое при масштабировании с помощью "
"перемещения мыши. Это не влияет на масштабирование с помощью колеса мыши."

msgid ""
"The inertia to use when orbiting in the 3D editor. Higher values make the "
"camera start and stop slower, which looks smoother but adds latency."
msgstr ""
"Инерция, используемая при вращении в 3D-редакторе. Более высокие значения "
"заставляют камеру запускаться и останавливаться медленнее, что выглядит более "
"плавно, но добавляет задержку."

msgid ""
"The mouse sensitivity to use when orbiting in the 3D editor. See also [member "
"editors/3d/freelook/freelook_sensitivity]."
msgstr ""
"Чувствительность мыши, используемая при вращении в 3D-редакторе. См. также "
"[member editors/3d/freelook/freelook_sensitivity]."

msgid ""
"The inertia to use when panning in the 3D editor. Higher values make the "
"camera start and stop slower, which looks smoother but adds latency."
msgstr ""
"Инерция, используемая при панорамировании в 3D-редакторе. Более высокие "
"значения заставляют камеру запускаться и останавливаться медленнее, что "
"выглядит более плавно, но добавляет задержку."

msgid "The mouse sensitivity to use when panning in the 3D editor."
msgstr "Чувствительность мыши, используемая при панорамировании в 3D-редакторе."

msgid ""
"The inertia to use when zooming in the 3D editor. Higher values make the "
"camera start and stop slower, which looks smoother but adds latency."
msgstr ""
"Инерция, используемая при масштабировании в 3D-редакторе. Более высокие "
"значения заставляют камеру запускаться и останавливаться медленнее, что "
"выглядит более плавно, но добавляет задержку."

msgid ""
"The color to use for the primary 3D grid. The color's alpha channel affects "
"the grid's opacity."
msgstr ""
"Цвет, используемый для первичной 3D-сетки. Альфа-канал цвета влияет на "
"непрозрачность сетки."

msgid ""
"If set above 0, where a primary grid line should be drawn. By default, "
"primary lines are configured to be more visible than secondary lines. This "
"helps with measurements in the 3D editor. See also [member editors/3d/"
"primary_grid_color] and [member editors/3d/secondary_grid_color]."
msgstr ""
"Если установлено значение выше 0, то там, где должна быть нарисована "
"первичная линия сетки. По умолчанию первичные линии настроены так, чтобы быть "
"более заметными, чем вторичные. Это помогает с измерениями в 3D-редакторе. "
"См. также [member editors/3d/primary_grid_color] и [member editors/3d/"
"secondary_grid_color]."

msgid ""
"The color to use for the secondary 3D grid. This is generally a less visible "
"color than [member editors/3d/primary_grid_color]. The color's alpha channel "
"affects the grid's opacity."
msgstr ""
"Цвет для вторичной 3D-сетки. Обычно это менее заметный цвет, чем [member "
"editors/3d/primary_grid_color]. Альфа-канал цвета влияет на непрозрачность "
"сетки."

msgid ""
"The color to use for the selection box that surrounds selected nodes in the "
"3D editor viewport. The color's alpha channel influences the selection box's "
"opacity."
msgstr ""
"Цвет, используемый для рамки выбора, которая окружает выбранные узлы в окне "
"просмотра 3D-редактора. Альфа-канал цвета влияет на непрозрачность рамки "
"выбора."

msgid ""
"The color to use for the AABB gizmo that displays the [GeometryInstance3D]'s "
"custom [AABB]."
msgstr ""
"Цвет, используемый для гизмо AABB, отображающего пользовательский [AABB] "
"[GeometryInstance3D]."

msgid "The 3D editor gizmo color for [Camera3D]s."
msgstr "Цвет гизмо 3D-редактора для [Camera3D]-ов."

msgid ""
"The 3D editor gizmo color for CSG nodes (such as [CSGShape3D] or [CSGBox3D])."
msgstr ""
"Цвет гизмо 3D-редактора для узлов CSG (например, [CSGShape3D] или [CSGBox3D])."

msgid "The 3D editor gizmo color for [Decal] nodes."
msgstr "Цвет гизмо 3D-редактора для узлов [Decal]."

msgid "The 3D editor gizmo color for [FogVolume] nodes."
msgstr "Цвет гизмо 3D-редактора для узлов [FogVolume]."

msgid "The 3D editor gizmo color for the [GridMap] grid."
msgstr "Цвет гизмо 3D-редактора для сетки [GridMap]."

msgid ""
"The color override to use for 3D editor gizmos if the [Node3D] in question is "
"part of an instantiated scene file (from the perspective of the current "
"scene)."
msgstr ""
"Переопределение цвета для использования в гизмо 3D-редактора, если "
"рассматриваемый [Node3D] является частью экземпляра файла сцены (с точки "
"зрения текущей сцены)."

msgid "The 3D editor gizmo color for [Joint3D]s and [PhysicalBone3D]s."
msgstr "Цвет гизмо 3D-редактора для [Joint3D]-ов и [PhysicalBone3D]-ов."

msgid "Color for representing [member Joint3D.node_a] for some [Joint3D] types."
msgstr ""
"Цвет для представления [member Joint3D.node_a] для некоторых типов [Joint3D]."

msgid "Color for representing [member Joint3D.node_b] for some [Joint3D] types."
msgstr ""
"Цвет для представления [member Joint3D.node_b] для некоторых типов [Joint3D]."

msgid "Color of lines displayed in baked [LightmapGI] node's grid."
msgstr "Цвет линий, отображаемых в сетке запеченного узла [LightmapGI]."

msgid "The 3D editor gizmo color used for [LightmapProbe] nodes."
msgstr "Цвет гизмо 3D-редактора, используемый для узлов [LightmapProbe]."

msgid "The 3D editor gizmo color used for [OccluderInstance3D] nodes."
msgstr "Цвет гизмо 3D-редактора, используемый для узлов [OccluderInstance3D]."

msgid "The 3D editor gizmo color used for [GPUParticlesAttractor3D] nodes."
msgstr ""
"Цвет гизмо 3D-редактора, используемый для узлов [GPUParticlesAttractor3D]."

msgid "The 3D editor gizmo color used for [GPUParticlesCollision3D] nodes."
msgstr ""
"Цвет гизмо 3D-редактора, используемый для узлов [GPUParticlesCollision3D]."

msgid ""
"The 3D editor gizmo color used for [CPUParticles3D] and [GPUParticles3D] "
"nodes."
msgstr ""
"Цвет гизмо 3D-редактора, используемый для узлов [GPUParticles3D] и "
"[GPUParticles3D]."

msgid ""
"The 3D editor gizmo color used for [Path3D] tilt circles, which indicate the "
"direction the [Curve3D] is tilted towards."
msgstr ""
"Цвет гизмо 3D-редактора, используемый для кругов наклона [Path3D], которые "
"указывают направление наклона [Curve3D]."

msgid "The 3D editor gizmo color used for [ReflectionProbe] nodes."
msgstr "Цвет гизмо 3D-редактора, используемый для узлов [ReflectionProbe]."

msgid ""
"The 3D editor gizmo color used for the currently selected [Skeleton3D] bone."
msgstr ""
"Цвет гизмо 3D-редактора, используемый для текущей выбранной кости "
"[Skeleton3D]."

msgid "The 3D editor gizmo color used for [Skeleton3D] nodes."
msgstr "Цвет гизмо 3D-редактора, используемый для узлов [Skeleton3D]."

msgid "The 3D editor gizmo color used for [SpringBoneCollision3D] nodes."
msgstr ""
"Цвет гизмо 3D-редактора, используемый для узлов [SpringBoneCollision3D]."

msgid ""
"The 3D editor gizmo color used for [SpringBoneCollision3D] nodes with inside "
"mode."
msgstr ""
"Цвет гизмо 3D-редактора, используемый для узлов [SpringBoneCollision3D] с "
"внутренним режимом."

msgid "The 3D editor gizmo color used for [SpringBoneSimulator3D] nodes."
msgstr ""
"Цвет гизмо 3D-редактора, используемый для узлов [SpringBoneSimulator3D]."

msgid ""
"The 3D editor gizmo color used for [AudioStreamPlayer3D]'s emission angle."
msgstr ""
"Цвет гизмо 3D-редактора, используемый для угла излучения "
"[AudioStreamPlayer3D]-ов."

msgid ""
"The 3D editor gizmo color used for [VisibleOnScreenNotifier3D] and "
"[VisibleOnScreenEnabler3D] nodes."
msgstr ""
"Цвет гизмо 3D-редактора, используемый для узлов [VisibleOnScreenNotifier3D] и "
"[VisibleOnScreenEnabler3D]."

msgid "The 3D editor gizmo color used for [VoxelGI] nodes."
msgstr "Цвет гизмо 3D-редактора, используемый для узлов [VoxelGI]."

msgid "The length of [Skeleton3D] bone gizmos in the 3D editor."
msgstr "Длина костных элементов [Skeleton3D] в 3D-редакторе."

msgid ""
"The shape of [Skeleton3D] bone gizmos in the 3D editor. [b]Wire[/b] is a thin "
"line, while [b]Octahedron[/b] is a set of lines that represent a thicker "
"hollow line pointing in a specific direction (similar to most 3D animation "
"software)."
msgstr ""
"Форма костных элементов [Skeleton3D] в 3D-редакторе. [b]Wire[/b] — это тонкая "
"линия, а [b]Octahedron[/b] — это набор линий, представляющих собой более "
"толстую полую линию, указывающую в определенном (аналогично большинству "
"программ для 3D-анимации)."

msgid ""
"Size of probe gizmos displayed when editing [LightmapGI] and [LightmapProbe] "
"nodes. Setting this to [code]0.0[/code] will hide the probe spheres of "
"[LightmapGI] and wireframes of [LightmapProbe] nodes, but will keep the "
"wireframes linking probes from [LightmapGI] and billboard icons from "
"[LightmapProbe] intact."
msgstr ""
"Размер гизмо зондов, отображаемых при редактировании узлов [LightmapGI] и "
"[LightmapProbe]. Установка значения [code]0.0[/code] скроет сферы зондов "
"[LightmapGI] и каркасы узлов [LightmapProbe], но сохранит каркасы, "
"связывающие зонды из [LightmapGI], и значки рекламных щитов из "
"[LightmapProbe]."

msgid "Size of the disk gizmo displayed when editing [Path3D]'s tilt handles."
msgstr ""
"Размер дискового гизмо, отображаемый при редактировании маркеров наклона "
"[Path3D]-ов."

msgid ""
"If [code]true[/code], automatically updates animation tracks' target paths "
"when renaming or reparenting nodes in the Scene tree dock."
msgstr ""
"Если [code]true[/code], автоматически обновляет целевые пути дорожек анимации "
"при переименовании или изменении родительских узлов в доке дерева сцены."

msgid ""
"If [code]true[/code], display a confirmation dialog when adding a new track "
"to an animation by pressing the \"key\" icon next to a property. Holding "
"Shift will bypass the dialog.\n"
"If [code]false[/code], the behavior is reversed, i.e. the dialog only appears "
"when Shift is held."
msgstr ""
"Если [code]true[/code], отображать диалоговое окно подтверждения при "
"добавлении нового трека в анимацию нажатием значка «ключ» рядом со свойством. "
"Удерживание Shift пропустит диалоговое окно.\n"
"Если [code]false[/code], поведение будет обратным, т. е. диалоговое окно "
"появится только при удерживании Shift."

msgid ""
"Default step used when creating a new [Animation] in the Animation bottom "
"panel. Only affects the first animation created in the [AnimationPlayer]. By "
"default, other newly created animations will use the step from the previous "
"ones.\n"
"This value is always expressed in seconds. If you want e.g. [code]10[/code] "
"FPS to be the default, you need to set the default step to [code]0.1[/code]."
msgstr ""
"Шаг по умолчанию, используемый при создании новой [Animation] на нижней "
"панели Анимация. Влияет только на первую анимацию, созданную в "
"[AnimationPlayer]. По умолчанию другие вновь созданные анимации будут "
"использовать шаг из предыдущих.\n"
"Это значение всегда выражается в секундах. Если вы хотите, например, чтобы "
"[code]10[/code] FPS было значением по умолчанию, вам нужно установить шаг по "
"умолчанию на [code]0.1[/code]."

msgid ""
"If [code]true[/code], create a Bezier track instead of a standard track when "
"pressing the \"key\" icon next to a property. Bezier tracks provide more "
"control over animation curves, but are more difficult to adjust quickly."
msgstr ""
"Если [code]true[/code], то при нажатии значка «ключ» рядом со свойством "
"создается дорожка Безье вместо стандартной дорожки. Дорожки Безье "
"обеспечивают больший контроль над кривыми анимации, но их сложнее быстро "
"настраивать."

msgid ""
"If [code]true[/code], create a [code]RESET[/code] track when creating a new "
"animation track. This track can be used to restore the animation to a "
"\"default\" state."
msgstr ""
"Если [code]true[/code], создайте трек [code]RESET[/code] при создании нового "
"трека анимации. Этот трек может быть использован для восстановления анимации "
"в состояние «по умолчанию»."

msgid ""
"Controls whether [AnimationPlayer] will apply snapping to nearest integer FPS "
"when snapping is in Seconds mode. The option is remembered locally for a "
"scene and this option only determines the default value when scene doesn't "
"have local state yet."
msgstr ""
"Управляет тем, будет ли [AnimationPlayer] применять привязку к ближайшему "
"целому числу кадров в секунду, когда привязка находится в режиме секунд. "
"Параметр запоминается локально для сцены, и этот параметр определяет значение "
"по умолчанию только тогда, когда у сцены еще нет локального состояния."

msgid ""
"Default step mode for [AnimationPlayer] (seconds or FPS). The option is "
"remembered locally for a scene and this option only determines the default "
"value when scene doesn't have local state yet."
msgstr ""
"Режим шага по умолчанию для [AnimationPlayer] (секунды или FPS). Параметр "
"запоминается локально для сцены, и этот параметр определяет значение по "
"умолчанию только тогда, когда у сцены еще нет локального состояния."

msgid ""
"The modulate color to use for \"future\" frames displayed in the animation "
"editor's onion skinning feature."
msgstr ""
"Модулируемый цвет для использования в «будущих» кадрах, отображаемых в "
"функции калькирования редактора анимации."

msgid ""
"The modulate color to use for \"past\" frames displayed in the animation "
"editor's onion skinning feature."
msgstr ""
"Цвет модуляции, используемый для «прошедших» кадров, отображаемых в функции "
"калькирования редактора анимации."

msgid "Minimum width of GridMap's mesh palette side panel."
msgstr "Минимальная ширина боковой панели палитры сеток GridMap-ов."

msgid ""
"The maximum distance at which tiles can be placed on a GridMap, relative to "
"the camera position (in 3D units)."
msgstr ""
"Максимальное расстояние, на котором можно размещать тайлы на GridMap, "
"относительно позиции камеры (в 3D-единицах)."

msgid "Texture size of mesh previews generated for GridMap's MeshLibrary."
msgstr ""
"Размер текстуры предпросмотров сеток, созданных для MeshLibrary GridMap."

msgid ""
"The panning speed when using the mouse wheel or touchscreen events in the 2D "
"editor. This setting does not apply to panning by holding down the middle or "
"right mouse buttons."
msgstr ""
"Скорость панорамирования при использовании колесика мыши или событий "
"сенсорного экрана в 2D-редакторе. Эта настройка не применяется к "
"панорамированию путем удержания средней или правой кнопки мыши."

msgid ""
"Controls whether the mouse wheel scroll zooms or pans in the 2D editor. See "
"also [member editors/panning/sub_editors_panning_scheme] and [member editors/"
"panning/animation_editors_panning_scheme]."
msgstr ""
"Управляет тем, будет ли прокрутка колеса мыши масштабировать или "
"панорамировать в 2D-редакторе. См. также [member editors/panning/"
"sub_editors_panning_scheme] и [member editors/panning/"
"animation_editors_panning_scheme]."

msgid ""
"Controls whether the mouse wheel scroll zooms or pans in the animation track "
"and Bezier editors. See also [member editors/panning/"
"2d_editor_panning_scheme] and [member editors/panning/"
"sub_editors_panning_scheme] (which controls the animation blend tree editor's "
"pan behavior)."
msgstr ""
"Управляет масштабированием или панорамированием прокруткой колеса мыши в "
"дорожке анимации и редакторах Безье. См. также [member editors/panning/"
"2d_editor_panning_scheme] и [member editors/panning/"
"sub_editors_panning_scheme] (который управляет поведением панорамирования "
"редактора дерева смешивания анимации)."

msgid ""
"If [code]true[/code], allows panning by holding down [kbd]Space[/kbd] in the "
"2D editor viewport (in addition to panning with the middle or right mouse "
"buttons). If [code]false[/code], the left mouse button must be held down "
"while holding down [kbd]Space[/kbd] to pan in the 2D editor viewport."
msgstr ""
"Если [code]true[/code], позволяет панорамировать, удерживая [kbd]Space[/kbd] "
"в области просмотра 2D-редактора (в дополнение к панорамированию средней или "
"правой кнопкой мыши). Если [code]false[/code], необходимо удерживать левую "
"кнопку мыши, удерживая [kbd]Space[/kbd], чтобы панорамировать в области "
"просмотра 2D-редактора."

msgid ""
"Controls whether the mouse wheel scroll zooms or pans in subeditors. The list "
"of affected subeditors is: animation blend tree editor, [Polygon2D] editor, "
"tileset editor, texture region editor and visual shader editor. See also "
"[member editors/panning/2d_editor_panning_scheme] and [member editors/panning/"
"animation_editors_panning_scheme]."
msgstr ""
"Управляет масштабированием или панорамированием прокруткой колеса мыши в "
"подредакторах. Список затронутых подредакторов: редактор дерева смешивания "
"анимации, редактор [Polygon2D], редактор набора плиток, редактор областей "
"текстур и редактор визуальных шейдеров. См. также [member editors/panning/"
"2d_editor_panning_scheme] и [member editors/panning/"
"animation_editors_panning_scheme]."

msgid ""
"If [code]true[/code], warps the mouse around the 2D viewport while panning in "
"the 2D editor. This makes it possible to pan over a large area without having "
"to exit panning and adjust the mouse cursor."
msgstr ""
"Если [code]true[/code], деформирует мышь вокруг 2D-окна просмотра при "
"панорамировании в 2D-редакторе. Это позволяет панорамировать большую область "
"без необходимости выходить из панорамирования и настраивать курсор мыши."

msgid ""
"The mouse cursor movement direction to use when drag-zooming in any editor "
"(except 3D scene editor) by moving the mouse. This does not affect zooming "
"with the mouse wheel."
msgstr ""
"Направление движения курсора мыши, используемое при перетаскивании-"
"масштабировании в любом редакторе (кроме редактора 3D-сцен) путем перемещения "
"мыши. Это не влияет на масштабирование с помощью колеса мыши."

msgid ""
"The delay in seconds until more complex and performance costly polygon "
"editors commit their outlines, e.g. the 2D navigation polygon editor rebakes "
"the navigation mesh polygons. A negative value stops the auto bake."
msgstr ""
"Задержка в секундах, пока более сложные и производительно затратные редакторы "
"полигонов не зафиксируют свои контуры, например, редактор полигонов навигации "
"2D перепекает полигоны сетки навигации. Отрицательное значение останавливает "
"автоматическое запекание."

msgid ""
"The radius in which points can be selected in the [Polygon2D] and "
"[CollisionPolygon2D] editors (in pixels). Higher values make it easier to "
"select points quickly, but can make it more difficult to select the expected "
"point when several points are located close to each other."
msgstr ""
"Радиус, в котором точки могут быть выбраны в редакторах [Polygon2D] и "
"[CollisionPolygon2D] (в пикселях). Более высокие значения облегчают быстрый "
"выбор точек, но могут затруднить выбор ожидаемой точки, когда несколько точек "
"расположены близко друг к другу."

msgid ""
"If [code]true[/code], displays the polygon's previous shape in the 2D polygon "
"editors with an opaque gray outline. This outline is displayed while dragging "
"a point until the left mouse button is released."
msgstr ""
"Если [code]true[/code], отображает предыдущую форму полигона в редакторах 2D-"
"полигонов с непрозрачным серым контуром. Этот контур отображается при "
"перетаскивании точки до тех пор, пока не будет отпущена левая кнопка мыши."

msgid ""
"If [code]true[/code], reopens shader files that were open in the shader "
"editor when the project was last closed."
msgstr ""
"Если [code]true[/code], повторно открывает файлы шейдеров, которые были "
"открыты в редакторе шейдеров при последнем закрытии проекта."

msgid ""
"If [code]true[/code], displays a grid while the TileMap editor is active. See "
"also [member editors/tiles_editor/grid_color]."
msgstr ""
"Если [code]true[/code], отображает сетку, пока редактор TileMap активен. См. "
"также [member editors/tiles_editor/grid_color]."

msgid ""
"The color to use for the TileMap editor's grid.\n"
"[b]Note:[/b] Only effective if [member editors/tiles_editor/display_grid] is "
"[code]true[/code]."
msgstr ""
"Цвет, используемый для сетки редактора TileMap.\n"
"[b]Примечание:[/b] Действует только если [member editors/tiles_editor/"
"display_grid] имеет значение [code]true[/code]."

msgid ""
"Highlight the currently selected TileMapLayer by dimming the other ones in "
"the scene."
msgstr ""
"Выделите текущий выбранный слой TileMapLayer, затемнив остальные слои на "
"сцене."

msgid ""
"The color of a graph node's header when it belongs to the \"Color\" category."
msgstr "Цвет заголовка узла графа, если он относится к категории «Цвет»."

msgid ""
"The color of a graph node's header when it belongs to the \"Conditional\" "
"category."
msgstr "Цвет заголовка узла графа, если он относится к категории «Условный»."

msgid ""
"The color of a graph node's header when it belongs to the \"Input\" category."
msgstr "Цвет заголовка узла графа, когда он относится к категории «Вход»."

msgid ""
"The color of a graph node's header when it belongs to the \"Output\" category."
msgstr "Цвет заголовка узла графа, когда он относится к категории «Выход»."

msgid ""
"The color of a graph node's header when it belongs to the \"Particle\" "
"category."
msgstr "Цвет заголовка узла графа, когда он относится к категории «Частица»."

msgid ""
"The color of a graph node's header when it belongs to the \"Scalar\" category."
msgstr "Цвет заголовка узла графа, если он относится к категории «Скалярный»."

msgid ""
"The color of a graph node's header when it belongs to the \"Special\" "
"category."
msgstr ""
"Цвет заголовка узла графа, когда он относится к категории «Специальный»."

msgid ""
"The color of a graph node's header when it belongs to the \"Textures\" "
"category."
msgstr "Цвет заголовка узла графа, если он принадлежит категории «Текстуры»."

msgid ""
"The color of a graph node's header when it belongs to the \"Transform\" "
"category."
msgstr ""
"Цвет заголовка узла графа, когда он принадлежит категории «Преобразование»."

msgid ""
"The color of a graph node's header when it belongs to the \"Utility\" "
"category."
msgstr "Цвет заголовка узла графа, когда он относится к категории «Утилиты»."

msgid ""
"The color of a graph node's header when it belongs to the \"Vector\" category."
msgstr "Цвет заголовка узла графа, если он относится к категории «Вектор»."

msgid "The color theme to use in the visual shader editor."
msgstr "Цветовая тема для использования в визуальном редакторе шейдеров."

msgid "The color of a port/connection of boolean type."
msgstr "Цвет порта/соединения булевого типа."

msgid "The color of a port/connection of sampler type."
msgstr "Цвет порта/соединения сэмплерного типа."

msgid ""
"The color of a port/connection of scalar type (float, int, unsigned int)."
msgstr "Цвет порта/соединения скалярного типа (float, int, unsigned int)."

msgid "The color of a port/connection of transform type."
msgstr "Цвет порта/соединения типа преобразования."

msgid "The color of a port/connection of Vector2 type."
msgstr "Цвет порта/соединения типа Vector2."

msgid "The color of a port/connection of Vector3 type."
msgstr "Цвет порта/соединения типа Vector3."

msgid "The color of a port/connection of Vector4 type."
msgstr "Цвет порта/соединения типа Vector4."

msgid "The pattern used for the background grid."
msgstr "Узор, используемый для фоновой сетки."

msgid ""
"The curvature to use for connection lines in the visual shader editor. Higher "
"values will make connection lines appear more curved, with values above "
"[code]0.5[/code] resulting in more \"angular\" turns in the middle of "
"connection lines."
msgstr ""
"Кривизна, используемая для линий соединения в визуальном редакторе шейдеров. "
"Более высокие значения сделают линии соединения более изогнутыми, а значения "
"выше [code]0.5[/code] приведут к более «угловым» поворотам в середине линий "
"соединения."

msgid ""
"The opacity of the minimap displayed in the bottom-right corner of the visual "
"shader editor."
msgstr ""
"Непрозрачность мини-карты, отображаемой в правом нижнем углу редактора "
"визуальных шейдеров."

msgid ""
"The size to use for port previews in the visual shader uniforms (toggled by "
"clicking the \"eye\" icon next to an output). The value is defined in pixels "
"at 100% zoom, and will scale with zoom automatically."
msgstr ""
"Размер, используемый для предварительного просмотра портов в визуальных "
"шейдерных юниформах (переключается щелчком по значку «глаз» рядом с выходом). "
"Значение определяется в пикселях при 100%-ном увеличении и будет "
"автоматически масштабироваться с увеличением."

msgid ""
"Path to the SCP (secure copy) executable (used for remote deploy to desktop "
"platforms). If left empty, the editor will attempt to run [code]scp[/code] "
"from [code]PATH[/code].\n"
"[b]Note:[/b] SCP is not the same as SFTP. Specifying the SFTP executable here "
"will not work."
msgstr ""
"Путь к исполняемому файлу SCP (безопасная копия) (используется для удаленного "
"развертывания на настольных платформах). Если оставить пустым, редактор "
"попытается запустить [code]scp[/code] из [code]PATH[/code].\n"
"[b]Примечание:[/b] SCP — это не то же самое, что SFTP. Указание здесь "
"исполняемого файла SFTP не сработает."

msgid ""
"Path to the SSH executable (used for remote deploy to desktop platforms). If "
"left empty, the editor will attempt to run [code]ssh[/code] from [code]PATH[/"
"code]."
msgstr ""
"Путь к исполняемому файлу SSH (используется для удаленного развертывания на "
"настольных платформах). Если оставить пустым, редактор попытается запустить "
"[code]ssh[/code] из [code]PATH[/code]."

msgid ""
"The folder where projects should be scanned for (recursively), in a way "
"similar to the project manager's [b]Scan[/b] button. This can be set to the "
"same value as [member filesystem/directories/default_project_path] for "
"convenience.\n"
"[b]Note:[/b] Setting this path to a folder with very large amounts of files/"
"folders can slow down the project manager startup significantly. To keep the "
"project manager quick to start up, it is recommended to set this value to a "
"folder as \"specific\" as possible."
msgstr ""
"Папка, в которой должны сканироваться проекты (рекурсивно), аналогично кнопке "
"[b]Сканировать[/b] менеджера проектов. Для удобства можно задать то же "
"значение, что и [member filesystem/directories/default_project_path].\n"
"[b]Примечание:[/b] Установка этого пути в папку с очень большим количеством "
"файлов/папок может значительно замедлить запуск менеджера проектов. Чтобы "
"менеджер проектов запускался быстро, рекомендуется задать это значение в "
"папке как можно более «конкретной»."

msgid ""
"The folder where new projects should be created by default when clicking the "
"project manager's [b]New Project[/b] button. This can be set to the same "
"value as [member filesystem/directories/autoscan_project_path] for "
"convenience."
msgstr ""
"Папка, в которой по умолчанию должны создаваться новые проекты при нажатии "
"кнопки [b]Новый проект[/b] менеджера проектов. Для удобства можно задать то "
"же значение, что и [member filesystem/directories/autoscan_project_path]."

msgid ""
"The program that opens 3D model scene files when clicking \"Open in External "
"Program\" option in Filesystem Dock. If not specified, the file will be "
"opened in the system's default program."
msgstr ""
"Программа, которая открывает файлы сцен 3D-моделей при нажатии опции «Открыть "
"во внешней программе» в Filesystem Dock. Если не указано, файл будет открыт в "
"программе системы по умолчанию."

msgid ""
"The program that opens audio files when clicking \"Open in External Program\" "
"option in Filesystem Dock. If not specified, the file will be opened in the "
"system's default program."
msgstr ""
"Программа, которая открывает аудиофайлы при нажатии на опцию \"Открыть во "
"внешней программе\" в Filesystem Dock. Если не указано, файл будет открыт в "
"программе системы по умолчанию."

msgid ""
"The program that opens raster image files when clicking \"Open in External "
"Program\" option in Filesystem Dock. If not specified, the file will be "
"opened in the system's default program."
msgstr ""
"Программа, которая открывает файлы растровых изображений при нажатии на опцию "
"«Открыть во внешней программе» в Filesystem Dock. Если не указано, файл будет "
"открыт в программе системы по умолчанию."

msgid ""
"The terminal emulator program to use when using [b]Open in Terminal[/b] "
"context menu action in the FileSystem dock. You can enter an absolute path to "
"a program binary, or a path to a program that is present in the [code]PATH[/"
"code] environment variable.\n"
"If left empty, Godot will use the default terminal emulator for the system:\n"
"- [b]Windows:[/b] PowerShell\n"
"- [b]macOS:[/b] Terminal.app\n"
"- [b]Linux:[/b] The first terminal found on the system in this order: gnome-"
"terminal, konsole, xfce4-terminal, lxterminal, kitty, alacritty, urxvt, "
"xterm.\n"
"To use Command Prompt (cmd) instead of PowerShell on Windows, enter "
"[code]cmd[/code] in this field and the correct flags will automatically be "
"used.\n"
"On macOS, make sure to point to the actual program binary located within the "
"[code]Programs/MacOS[/code] folder of the .app bundle, rather than the .app "
"bundle directory.\n"
"If specifying a custom terminal emulator, you may need to override [member "
"filesystem/external_programs/terminal_emulator_flags] so it opens in the "
"correct folder."
msgstr ""
"Программа эмулятора терминала, используемая при использовании действия "
"контекстного меню [b]Открыть в терминале[/b] в доке FileSystem. Вы можете "
"ввести абсолютный путь к двоичному файлу программы или путь к программе, "
"которая присутствует в переменной среды [code]PATH[/code]. \n"
"Если оставить пустым, Godot будет использовать эмулятор терминала по "
"умолчанию для системы:\n"
"- [b]Windows:[/b] PowerShell\n"
"- [b]macOS:[/b] Terminal.app\n"
"- [b]Linux:[/b] Первый терминал, найденный в системе, в следующем порядке: "
"gnome-terminal, konsole, xfce4-terminal, lxterminal, kitty, alacritty, urxvt, "
"xterm.\n"
"Чтобы использовать командную строку (cmd) вместо PowerShell в Windows, "
"введите [code]cmd[/code] в этом поле, и правильные флаги будут использованы "
"автоматически.\n"
"В macOS обязательно укажите фактический двоичный файл программы, "
"расположенный в папке [code]Programs/MacOS[/code] пакета .app, а не в "
"каталоге пакета .app.\n"
"При указании пользовательского эмулятора терминала может потребоваться "
"переопределить [member filesystem/external_programs/terminal_emulator_flags], "
"чтобы он открывался в правильной папке."

msgid ""
"The command-line arguments to pass to the terminal emulator that is run when "
"using [b]Open in Terminal[/b] context menu action in the FileSystem dock. See "
"also [member filesystem/external_programs/terminal_emulator].\n"
"If left empty, the default flags are [code]{directory}[/code], which is "
"replaced by the absolute path to the directory that is being opened in the "
"terminal.\n"
"[b]Note:[/b] If the terminal emulator is set to PowerShell, cmd, or Konsole, "
"Godot will automatically prepend arguments to this list, as these terminals "
"require nonstandard arguments to open in the correct folder."
msgstr ""
"Аргументы командной строки для передачи в эмулятор терминала, который "
"запускается при использовании действия контекстного меню [b]Открыть в "
"терминале[/b] в доке FileSystem. См. также [member filesystem/"
"external_programs/terminal_emulator].\n"
"Если оставить пустым, флагами по умолчанию будут [code]{directory}[/code], "
"которые заменяются абсолютным путем к каталогу, который открывается в "
"терминале.\n"
"[b]Примечание:[/b] Если эмулятор терминала настроен на PowerShell, cmd или "
"Konsole, Godot автоматически добавит аргументы в этот список, так как этим "
"терминалам требуются нестандартные аргументы для открытия в правильной папке."

msgid ""
"The program that opens vector image files when clicking \"Open in External "
"Program\" option in Filesystem Dock. If not specified, the file will be "
"opened in the system's default program."
msgstr ""
"Программа, которая открывает векторные файлы изображений при нажатии на опцию "
"«Открыть во внешней программе» в Filesystem Dock. Если не указано, файл будет "
"открыт в программе системы по умолчанию."

msgid ""
"The display mode to use in the editor's file dialogs.\n"
"- [b]Thumbnails[/b] takes more space, but displays dynamic resource "
"thumbnails, making resources easier to preview without having to open them.\n"
"- [b]List[/b] is more compact but doesn't display dynamic resource "
"thumbnails. Instead, it displays static icons based on the file extension."
msgstr ""
"Режим отображения для использования в диалоговых окнах файлов редактора.\n"
"- [b]Миниатюры[/b] занимают больше места, но отображают динамические "
"миниатюры ресурсов, что упрощает предварительный просмотр ресурсов без "
"необходимости их открытия.\n"
"- [b]Список[/b] более компактен, но не отображает динамические миниатюры "
"ресурсов. Вместо этого он отображает статические значки на основе расширения "
"файла."

msgid ""
"If [code]true[/code], display hidden files in the editor's file dialogs. "
"Files that have names starting with [code].[/code] are considered hidden "
"(e.g. [code].hidden_file[/code])."
msgstr ""
"Если [code]true[/code], отображать скрытые файлы в файловых диалогах "
"редактора. Файлы, имена которых начинаются с [code].[/code], считаются "
"скрытыми (например, [code].hidden_file[/code])."

msgid ""
"The thumbnail size to use in the editor's file dialogs (in pixels). See also "
"[member docks/filesystem/thumbnail_size]."
msgstr ""
"Размер миниатюры для использования в диалоговых окнах файлов редактора (в "
"пикселях). См. также [member docks/filesystem/thumbnail_size]."

msgid ""
"Password used for file server when exporting project with remote file system."
msgstr ""
"Пароль, используемый для файлового сервера при экспорте проекта с удаленной "
"файловой системой."

msgid ""
"Port used for file server when exporting project with remote file system."
msgstr ""
"Порт, используемый для файлового сервера при экспорте проекта с удаленной "
"файловой системой."

msgid ""
"The path to the Blender executable used for converting the Blender 3D scene "
"files [code].blend[/code] to glTF 2.0 format during import. Blender 3.0 or "
"later is required.\n"
"To enable this feature for your specific project, use [member "
"ProjectSettings.filesystem/import/blender/enabled].\n"
"If this setting is empty, Blender's default paths will be detected and used "
"automatically if present in this order:\n"
"[b]Windows:[/b]\n"
"[codeblock]\n"
"- C:\\Program Files\\Blender Foundation\\blender.exe\n"
"- C:\\Program Files (x86)\\Blender Foundation\\blender.exe\n"
"[/codeblock]\n"
"[b]macOS:[/b]\n"
"[codeblock]\n"
"- /opt/homebrew/bin/blender\n"
"- /opt/local/bin/blender\n"
"- /usr/local/bin/blender\n"
"- /usr/local/opt/blender\n"
"- /Applications/Blender.app/Contents/MacOS/Blender\n"
"[/codeblock]\n"
"[b]Linux/*BSD:[/b]\n"
"[codeblock]\n"
"- /usr/bin/blender\n"
"- /usr/local/bin/blender\n"
"- /opt/blender/bin/blender\n"
"[/codeblock]"
msgstr ""
"Путь к исполняемому файлу Blender, используемому для преобразования файлов 3D-"
"сцен Blender [code].blend[/code] в формат glTF 2.0 во время импорта. "
"Требуется Blender 3.0 или более поздняя версия.\n"
"Чтобы включить эту функцию для вашего конкретного проекта, используйте "
"[member ProjectSettings.filesystem/import/blender/enabled].\n"
"Если этот параметр пуст, пути Blender по умолчанию будут обнаружены и "
"использованы автоматически, если они присутствуют в следующем порядке:\n"
"[b]Windows:[/b]\n"
"[codeblock]\n"
"- C:\\Program Files\\Blender Foundation\\blender.exe\n"
"- C:\\Program Files (x86)\\Blender Foundation\\blender.exe\n"
"[/codeblock]\n"
"[b]macOS:[/b]\n"
"[codeblock]\n"
"- /opt/homebrew/bin/blender\n"
"- /opt/local/bin/blender\n"
"- /usr/local/bin/blender\n"
"- /usr/local/opt/blender\n"
"- /Applications/Blender.app/Contents/MacOS/Blender\n"
"[/codeblock]\n"
"[b]Linux/*BSD:[/b]\n"
"[codeblock]\n"
"- /usr/bin/blender\n"
"- /usr/local/bin/blender\n"
"- /opt/blender/bin/blender\n"
"[/codeblock]"

msgid ""
"The port number used for Remote Procedure Call (RPC) communication with "
"Godot's created process of the blender executable.\n"
"Setting this to 0 effectively disables communication with Godot and the "
"blender process, making performance slower."
msgstr ""
"Номер порта, используемый для связи удаленного вызова процедур (RPC) с "
"созданным Godot процессом исполняемого файла блендера.\n"
"Установка этого значения на 0 фактически отключает связь с Godot и процессом "
"блендера, что снижает производительность."

msgid ""
"The maximum idle uptime (in seconds) of the Blender process.\n"
"This prevents Godot from having to create a new process for each import "
"within the given seconds."
msgstr ""
"Максимальное время простоя (в секундах) процесса Blender. \n"
"Это избавляет Godot от необходимости создавать новый процесс для каждого "
"импорта в течение заданных секунд."

msgid ""
"The path to the FBX2glTF executable used for converting Autodesk FBX 3D scene "
"files [code].fbx[/code] to glTF 2.0 format during import.\n"
"To enable this feature for your specific project, use [member "
"ProjectSettings.filesystem/import/fbx2gltf/enabled]."
msgstr ""
"Путь к исполняемому файлу FBX2glTF, используемому для преобразования файлов "
"3D-сцен Autodesk FBX [code].fbx[/code] в формат glTF 2.0 во время импорта.\n"
"Чтобы включить эту функцию для вашего конкретного проекта, используйте "
"[member ProjectSettings.filesystem/import/fbx2gltf/enabled]."

msgid "If [code]true[/code], uses lossless compression for binary resources."
msgstr ""
"Если [code]true[/code], используется сжатие без потерь для двоичных ресурсов."

msgid ""
"If [code]true[/code], when saving a file, the editor will rename the old file "
"to a different name, save a new file, then only remove the old file once the "
"new file has been saved. This makes loss of data less likely to happen if the "
"editor or operating system exits unexpectedly while saving (e.g. due to a "
"crash or power outage).\n"
"[b]Note:[/b] On Windows, this feature can interact negatively with certain "
"antivirus programs. In this case, you may have to set this to [code]false[/"
"code] to prevent file locking issues."
msgstr ""
"Если [code]true[/code], при сохранении файла редактор переименует старый файл "
"в другое имя, сохранит новый файл, а затем удалит старый файл только после "
"сохранения нового файла. Это снижает вероятность потери данных, если редактор "
"или операционная система неожиданно завершат работу во время сохранения "
"(например, из-за сбоя или отключения питания).\n"
"[b]Примечание:[/b] В Windows эта функция может негативно взаимодействовать с "
"некоторыми антивирусными программами. В этом случае вам, возможно, придется "
"установить это значение на [code]false[/code], чтобы предотвратить проблемы с "
"блокировкой файлов."

msgid ""
"If set to [code]Adaptive[/code], the dialog opens in list view or grid view "
"depending on the requested type. If set to [code]Last Used[/code], the "
"display mode will always open the way you last used it."
msgstr ""
"Если установлено значение [code]Адаптивный[/code], диалоговое окно "
"открывается в виде списка или сетки в зависимости от запрошенного типа. Если "
"установлено значение [code]Последний использованный[/code], режим отображения "
"всегда будет открываться в том виде, в котором вы его использовали в "
"последний раз."

msgid ""
"If [code]true[/code], together with exact matches of a filename, the dialog "
"includes approximate matches.\n"
"This is useful for finding the correct files even when there are typos in the "
"search query; for example, searching \"nprmal\" will find \"normal\". "
"Additionally, it allows you to write shorter search queries; for example, "
"searching \"nml\" will also find \"normal\".\n"
"See also [member filesystem/quick_open_dialog/max_fuzzy_misses]."
msgstr ""
"Если [code]true[/code], наряду с точными совпадениями имени файла, диалоговое "
"окно будет включать приблизительные совпадения.\n"
"Это полезно для поиска нужных файлов даже при наличии опечаток в поисковом "
"запросе; например, поиск по «nprmal» вернет «normal». Кроме того, это "
"позволяет писать более короткие поисковые запросы; например, поиск по «nml» "
"вернет «normal».\n"
"См. также [member filesystem/quick_open_dialog/max_fuzzy_misses]."

msgid ""
"If [code]true[/code], results will include files located in the [code]addons[/"
"code] folder."
msgstr ""
"Если [code]true[/code], результаты будут включать файлы, расположенные в "
"папке [code]addons[/code]."

msgid ""
"The number of missed query characters allowed in a match when fuzzy matching "
"is enabled. For example, with the default value of [code]2[/code], [code]"
"\"normal\"[/code] would match [code]\"narmal\"[/code] and [code]\"norma\"[/"
"code] but not [code]\"nor\"[/code]."
msgstr ""
"Допустимое количество пропущенных символов запроса при использовании "
"нечёткого соответствия. Например, при значении по умолчанию [code]2[/code] "
"[code]\"normal\"[/code] будет соответствовать [code]\"narmal\"[/code] и [code]"
"\"norma\"[/code], но не [code]\"nor\"[/code]."

msgid "Maximum number of matches to show in dialog."
msgstr "Максимальное количество совпадений для отображения в диалоге."

msgid ""
"If [code]true[/code], results will be highlighted with their search matches."
msgstr ""
"Если [code]true[/code], результаты будут выделены с учетом их поисковых "
"соответствий."

msgid ""
"The path to the directory containing the Open Image Denoise (OIDN) "
"executable, used optionally for denoising lightmaps. It can be downloaded "
"from [url=https://www.openimagedenoise.org/"
"downloads.html]openimagedenoise.org[/url].\n"
"To enable this feature for your specific project, use [member "
"ProjectSettings.rendering/lightmapping/denoising/denoiser]."
msgstr ""
"Путь к каталогу, содержащему исполняемый файл Open Image Denoise (OIDN), "
"который может использоваться для шумоподавления карт освещения. Его можно "
"загрузить с [url=https://www.openimagedenoise.org/"
"downloads.html]openimagedenoise.org[/url].\n"
"Чтобы включить эту функцию для вашего конкретного проекта, используйте "
"[member ProjectSettings.rendering/lightmapping/denoising/denoiser]."

msgid ""
"If [code]true[/code], input events will be flushed just before every idle and "
"physics frame.\n"
"If [code]false[/code], these events will be flushed only once per process "
"frame, between iterations of the engine.\n"
"Enabling this setting can greatly improve input responsiveness, especially in "
"devices that struggle to run at the project's intended frame rate."
msgstr ""
"Если [code]true[/code], события ввода будут сбрасываться непосредственно "
"перед каждым кадром бездействия и физики.\n"
"Если [code]false[/code], эти события будут сбрасываться только один раз за "
"кадр процесса, между итерациями движка.\n"
"Включение этого параметра может значительно улучшить отклик ввода, особенно "
"на устройствах, которые с трудом работают с предполагаемой частотой кадров "
"проекта."

msgid ""
"If [code]true[/code], similar input events sent by the operating system are "
"accumulated. When input accumulation is enabled, all input events generated "
"during a frame will be merged and emitted when the frame is done rendering. "
"Therefore, this limits the number of input method calls per second to the "
"rendering FPS.\n"
"Input accumulation can be disabled to get slightly more precise/reactive "
"input at the cost of increased CPU usage.\n"
"[b]Note:[/b] Input accumulation is [i]enabled[/i] by default."
msgstr ""
"Если [code]true[/code], накапливаются похожие события ввода, отправленные "
"операционной системой. Когда накопление ввода включено, все события ввода, "
"сгенерированные во время кадра, будут объединены и отправлены после "
"завершения рендеринга кадра. Таким образом, это ограничивает количество "
"вызовов методов ввода в секунду до FPS рендеринга.\n"
"Накопление ввода можно отключить, чтобы получить немного более точный/"
"реактивный ввод за счет увеличения загрузки ЦП.\n"
"[b]Примечание:[/b] Накопление ввода [i]включено[/i] по умолчанию."

msgid ""
"Editor accessibility support mode:\n"
"- [b]Auto[/b] ([code]0[/code]): Accessibility support is enabled, but updates "
"to the accessibility information are processed only if an assistive app (such "
"as a screen reader or a Braille display) is active (default).\n"
"- [b]Always Active[/b] ([code]1[/code]): Accessibility support is enabled, "
"and updates to the accessibility information are always processed, regardless "
"of the status of assistive apps.\n"
"- [b]Disabled[/b] ([code]2[/code]): Accessibility support is fully disabled.\n"
"[b]Note:[/b] Accessibility debugging tools, such as Accessibility Insights "
"for Windows, Accessibility Inspector (macOS), or AT-SPI Browser (Linux/BSD) "
"do not count as assistive apps. To test your project with these tools, use "
"[b]Always Active[/b]."
msgstr ""
"Режим поддержки доступности редактора:\n"
"- [b]Auto[/b] ([code]0[/code]): Поддержка специальных возможностей включена, "
"но обновления информации о специальных возможностях обрабатываются только в "
"том случае, если активно вспомогательное приложение (например, программа "
"чтения с экрана или дисплей Брайля) (по умолчанию).\n"
"- [b]Always Active[/b] ([code]1[/code]): Поддержка специальных возможностей "
"включена, и обновления информации о специальных возможностях всегда "
"обрабатываются независимо от статуса вспомогательных приложений.\n"
"- [b]Disabled[/b] ([code]2[/code]): Поддержка специальных возможностей "
"полностью отключена.\n"
"[b]Примечание:[/b] Инструменты отладки доступности, такие как Accessibility "
"Insights для Windows, Accessibility Inspector (macOS) или AT-SPI Browser "
"(Linux/BSD), не считаются вспомогательными приложениями. Чтобы протестировать "
"свой проект с помощью этих инструментов, используйте [b]Always Active[/b]."

msgid ""
"How to position the Cancel and OK buttons in the editor's [AcceptDialog]s. "
"Different platforms have different standard behaviors for this, which can be "
"overridden using this setting. This is useful if you use Godot both on "
"Windows and macOS/Linux and your Godot muscle memory is stronger than your OS "
"specific one.\n"
"- [b]Auto[/b] follows the platform convention: OK first on Windows, KDE, and "
"LXQt, Cancel first on macOS and other Linux desktop environments.\n"
"- [b]Cancel First[/b] forces the ordering Cancel/OK.\n"
"- [b]OK First[/b] forces the ordering OK/Cancel."
msgstr ""
"Как расположить кнопки «Отмена» и «ОК» в [AcceptDialog] редактора. Разные "
"платформы имеют разные стандартные поведения для этого, которые можно "
"переопределить с помощью этой настройки. Это полезно, если вы используете "
"Godot как в Windows, так и в macOS/Linux, и ваша мышечная память Godot "
"сильнее, чем память вашей ОС.\n"
"- [b]Auto[/b] следует соглашению платформы: сначала OK в Windows, KDE и LXQt, "
"сначала Cancel в macOS и других средах рабочего стола Linux.\n"
"- [b]Cancel First[/b] заставляет упорядочивать Cancel/OK.\n"
"- [b]OK First[/b] заставляет упорядочивать OK/Cancel."

msgid ""
"If [code]true[/code], automatically opens screenshots with the default "
"program associated to [code].png[/code] files after a screenshot is taken "
"using the [b]Editor > Take Screenshot[/b] action."
msgstr ""
"Если [code]true[/code], скриншоты автоматически открываются с помощью "
"программы по умолчанию, связанной с файлами [code].png[/code] после создания "
"снимка экрана с помощью действия [b]Редактор > Сделать снимок экрана[/b]."

msgid ""
"The font to use for the script editor. Must be a resource of a [Font] type "
"such as a [code].ttf[/code] or [code].otf[/code] font file."
msgstr ""
"Шрифт для использования в редакторе скриптов. Должен быть ресурсом типа "
"[Font], например файлом шрифта [code].ttf[/code] или [code].otf[/code]."

msgid ""
"The font ligatures to enable for the currently configured code font. Not all "
"fonts include support for ligatures.\n"
"[b]Note:[/b] The default editor code font ([url=https://www.jetbrains.com/lp/"
"mono/]JetBrains Mono[/url]) has contextual ligatures in its font file."
msgstr ""
"Лигатуры шрифта, которые следует включить для текущего настроенного шрифта "
"кода. Не все шрифты поддерживают лигатуры.\n"
"[b]Примечание:[/b] Шрифт кода редактора по умолчанию ([url=https://"
"www.jetbrains.com/lp/mono/]JetBrains Mono[/url]) имеет контекстные лигатуры в "
"своем файле шрифта."

msgid ""
"List of custom OpenType features to use, if supported by the currently "
"configured code font. Not all fonts include support for custom OpenType "
"features. The string should follow the OpenType specification.\n"
"[b]Note:[/b] The default editor code font ([url=https://www.jetbrains.com/lp/"
"mono/]JetBrains Mono[/url]) has custom OpenType features in its font file, "
"but there is no documented list yet."
msgstr ""
"Список пользовательских функций OpenType для использования, если они "
"поддерживаются текущим настроенным шрифтом кода. Не все шрифты включают "
"поддержку пользовательских функций OpenType. Строка должна соответствовать "
"спецификации OpenType.\n"
"[b]Примечание:[/b] Шрифт кода редактора по умолчанию ([url=https://"
"www.jetbrains.com/lp/mono/]JetBrains Mono[/url]) имеет пользовательские "
"функции OpenType в своем файле шрифта, но пока нет документированного списка."

msgid ""
"List of alternative characters to use, if supported by the currently "
"configured code font. Not all fonts include support for custom variations. "
"The string should follow the OpenType specification.\n"
"[b]Note:[/b] The default editor code font ([url=https://www.jetbrains.com/lp/"
"mono/]JetBrains Mono[/url]) has alternate characters in its font file, but "
"there is no documented list yet."
msgstr ""
"Список альтернативных символов для использования, если они поддерживаются "
"текущим настроенным шрифтом кода. Не все шрифты поддерживают пользовательские "
"вариации. Строка должна соответствовать спецификации OpenType.\n"
"[b]Примечание:[/b] Шрифт кода редактора по умолчанию ([url=https://"
"www.jetbrains.com/lp/mono/]JetBrains Mono[/url]) имеет альтернативные символы "
"в своем файле шрифта, но пока нет документированного списка."

msgid ""
"The size of the font in the script editor. This setting does not impact the "
"font size of the Output panel (see [member run/output/font_size])."
msgstr ""
"Размер шрифта в редакторе скриптов. Эта настройка не влияет на размер шрифта "
"панели «Вывод» (см. [member run/output/font_size])."

msgid ""
"If [code]true[/code], the main menu collapses into a [MenuButton].\n"
"[b]Note:[/b] This setting is only applicable on macOS when [member interface/"
"editor/use_embedded_menu] is [code]true[/code].\n"
"[b]Note:[/b] Defaults to [code]true[/code] on the Android editor."
msgstr ""
"Если [code]true[/code], главное меню сворачивается в [MenuButton].\n"
"[b]Примечание:[/b] Эта настройка применима только в macOS, когда [member "
"interface/editor/use_embedded_menu] равно [code]true[/code].\n"
"[b]Примечание:[/b] По умолчанию [code]true[/code] в редакторе Android."

msgid ""
"The custom editor scale factor to use. This can be used for displays with "
"very high DPI where a scale factor of 200% is not sufficient.\n"
"[b]Note:[/b] Only effective if [member interface/editor/display_scale] is set "
"to [b]Custom[/b]."
msgstr ""
"Пользовательский масштабный коэффициент редактора для использования. Его "
"можно использовать для дисплеев с очень высоким DPI, где масштабный "
"коэффициент 200% недостаточен.\n"
"[b]Примечание:[/b] Действует только если [member interface/editor/"
"display_scale] установлен на [b]Custom[/b]."

msgid ""
"The display scale factor to use for the editor interface. Higher values are "
"more suited to hiDPI/Retina displays.\n"
"If set to [b]Auto[/b], the editor scale is automatically determined based on "
"the screen resolution and reported display DPI. This heuristic is not always "
"ideal, which means you can get better results by setting the editor scale "
"manually.\n"
"If set to [b]Custom[/b], the scaling value in [member interface/editor/"
"custom_display_scale] will be used."
msgstr ""
"Коэффициент масштабирования дисплея для использования в интерфейсе редактора. "
"Более высокие значения больше подходят для дисплеев hiDPI/Retina.\n"
"Если установлено значение [b]Auto[/b], масштаб редактора определяется "
"автоматически на основе разрешения экрана и указанного DPI дисплея. Эта "
"эвристика не всегда идеальна, что означает, что вы можете получить лучшие "
"результаты, установив масштаб редактора вручную.\n"
"Если установлено значение [b]Custom[/b], будет использоваться значение "
"масштабирования в [member interface/editor/custom_display_scale]."

msgid "Tab style of editor docks."
msgstr "Стиль вкладок доков редактора."

msgid ""
"The language to use for the editor interface.\n"
"Translations are provided by the community. If you spot a mistake, "
"[url=https://contributing.godotengine.org/en/latest/documentation/translation/"
"index.html]contribute to editor translations on Weblate![/url]"
msgstr ""
"Язык интерфейса редактора.\n"
"Переводы предоставляются сообществом. Если вы заметили ошибку, [url=https://"
"contributing.godotengine.org/en/latest/documentation/translation/"
"index.html]внесите свой вклад в переводы редактора на Weblate![/url]"

msgid ""
"The preferred monitor to display the editor. If [b]Auto[/b], the editor will "
"remember the last screen it was displayed on across multiple sessions."
msgstr ""
"Предпочтительный монитор для отображения редактора. Если [b]Auto[/b], "
"редактор запомнит последний экран, на котором он отображался в нескольких "
"сеансах."

msgid ""
"Expanding main editor window content to the title, if supported by "
"[DisplayServer]. See [constant DisplayServer.WINDOW_FLAG_EXTEND_TO_TITLE].\n"
"Specific to the macOS platform."
msgstr ""
"Расширение содержимого главного окна редактора до заголовка, если "
"поддерживается [DisplayServer]. См. [constant "
"DisplayServer.WINDOW_FLAG_EXTEND_TO_TITLE].\n"
"Специально для платформы macOS."

msgid ""
"If set to [code]true[/code], MSDF font rendering will be used for the visual "
"shader graph editor. You may need to set this to [code]false[/code] when "
"using a custom main font, as some fonts will look broken due to the use of "
"self-intersecting outlines in their font data. Downloading the font from the "
"font maker's official website as opposed to a service like Google Fonts can "
"help resolve this issue."
msgstr ""
"Если установлено значение [code]true[/code], для редактора графа визуального "
"шейдера будет использоваться рендеринг шрифта MSDF. Вам может потребоваться "
"установить значение [code]false[/code] при использовании пользовательского "
"основного шрифта, так как некоторые шрифты будут выглядеть сломанными из-за "
"использования самопересекающихся контуров в их данных шрифта. Загрузка шрифта "
"с официального сайта производителя шрифтов, а не с сервиса вроде Google "
"Fonts, может помочь решить эту проблему."

msgid ""
"FreeType's font anti-aliasing mode used to render the editor fonts. Most "
"fonts are not designed to look good with anti-aliasing disabled, so it's "
"recommended to leave this enabled unless you're using a pixel art font."
msgstr ""
"Режим сглаживания шрифтов FreeType, используемый для рендеринга шрифтов "
"редактора. Большинство шрифтов не рассчитаны на хороший вид при отключенном "
"сглаживании, поэтому рекомендуется оставить его включенным, если вы не "
"используете шрифт в стиле пиксельной графики."

msgid ""
"If set to [code]true[/code], embedded font bitmap loading is disabled (bitmap-"
"only and color fonts ignore this property)."
msgstr ""
"Если задано значение [code]true[/code], загрузка встроенного растрового "
"изображения шрифта отключена (только растровые и цветные шрифты игнорируют "
"это свойство)."

msgid ""
"The font hinting mode to use for the editor fonts. FreeType supports the "
"following font hinting modes:\n"
"- [b]None:[/b] Don't use font hinting when rasterizing the font. This results "
"in a smooth font, but it can look blurry.\n"
"- [b]Light:[/b] Use hinting on the X axis only. This is a compromise between "
"font sharpness and smoothness.\n"
"- [b]Normal:[/b] Use hinting on both X and Y axes. This results in a sharp "
"font, but it doesn't look very smooth.\n"
"If set to [b]Auto[/b], the font hinting mode will be set to match the current "
"operating system in use. This means the [b]Light[/b] hinting mode will be "
"used on Windows and Linux, and the [b]None[/b] hinting mode will be used on "
"macOS."
msgstr ""
"Режим хинтинга шрифта для использования со шрифтами редактора. FreeType "
"поддерживает следующие режимы хинтинга шрифта:\n"
"- [b]Нет:[/b] Не использовать хинтинг шрифта при растрировании шрифта. Это "
"приводит к плавному шрифту, но он может выглядеть размытым.\n"
"- [b]Светлый:[/b] Использовать хинтинг только по оси X. Это компромисс между "
"резкостью и плавностью шрифта.\n"
"- [b]Обычный:[/b] Использовать хинтинг по осям X и Y. Это приводит к резкости "
"шрифта, но он не выглядит очень плавным.\n"
"Если установлено значение [b]Авто[/b], режим хинтинга шрифта будет установлен "
"в соответствии с текущей используемой операционной системой. Это означает, "
"что режим хинтинга [b]Светлый[/b] будет использоваться в Windows и Linux, а "
"режим хинтинга [b]Нет[/b] будет использоваться в macOS."

msgid ""
"The subpixel positioning mode to use when rendering editor font glyphs. This "
"affects both the main and code fonts. [b]Disabled[/b] is the fastest to "
"render and uses the least memory. [b]Auto[/b] only uses subpixel positioning "
"for small font sizes (where the benefit is the most noticeable). [b]One Half "
"of a Pixel[/b] and [b]One Quarter of a Pixel[/b] force the same subpixel "
"positioning mode for all editor fonts, regardless of their size (with [b]One "
"Quarter of a Pixel[/b] being the highest-quality option)."
msgstr ""
"Режим субпиксельного позиционирования, используемый при рендеринге глифов "
"шрифтов редактора. Это влияет как на основные шрифты, так и на шрифты кода. "
"[b]Отключено[/b] — самый быстрый рендеринг и использование наименьшего объема "
"памяти. [b]Авто[/b] использует субпиксельное позиционирование только для "
"шрифтов небольшого размера (где преимущество наиболее заметно). [b]Половина "
"пикселя[/b] и [b]Четверть пикселя[/b] принудительно включают один и тот же "
"режим субпиксельного позиционирования для всех шрифтов редактора, независимо "
"от их размера (при этом [b]Четверть пикселя[/b] является опцией наивысшего "
"качества)."

msgid ""
"If [code]true[/code], (re)imports resources even if the editor window is "
"unfocused or minimized. If [code]false[/code], resources are only "
"(re)imported when the editor window is focused. This can be set to "
"[code]true[/code] to speed up iteration by starting the import process "
"earlier when saving files in the project folder. This also allows getting "
"visual feedback on changes without having to click the editor window, which "
"is useful with multi-monitor setups. The downside of setting this to "
"[code]true[/code] is that it increases idle CPU usage and may steal CPU time "
"from other applications when importing resources."
msgstr ""
"Если [code]true[/code], ресурсы (пере)импортируются, даже если окно редактора "
"не сфокусировано или свернуто. Если [code]false[/code], ресурсы "
"(пере)импортируются только тогда, когда окно редактора сфокусировано. Это "
"можно установить на [code]true[/code], чтобы ускорить итерацию, начав процесс "
"импорта раньше при сохранении файлов в папке проекта. Это также позволяет "
"получать визуальную обратную связь об изменениях без необходимости щелкать "
"окно редактора, что полезно при настройке нескольких мониторов. Недостатком "
"установки этого значения на [code]true[/code] является то, что это "
"увеличивает использование ЦП в режиме ожидания и может отнимать время ЦП у "
"других приложений при импорте ресурсов."

msgid ""
"If [code]true[/code], keeps the screen on (even in case of inactivity), so "
"the screensaver does not take over. Works on desktop and mobile platforms."
msgstr ""
"Если [code]true[/code], экран остается включенным (даже в случае "
"бездействия), поэтому заставка не включается. Работает на настольных и "
"мобильных платформах."

msgid ""
"If [code]true[/code], setting names in the editor are localized when "
"possible.\n"
"[b]Note:[/b] This setting affects most [EditorInspector]s in the editor UI, "
"primarily Project Settings and Editor Settings. To control names displayed in "
"the Inspector dock, use [member interface/inspector/"
"default_property_name_style] instead."
msgstr ""
"Если [code]true[/code], имена настроек в редакторе локализуются, когда это "
"возможно.\n"
"[b]Примечание:[/b] Этот параметр влияет на большинство [EditorInspector] в "
"пользовательском интерфейсе редактора, в первую очередь на настройки проекта "
"и настройки редактора. Для управления именами, отображаемыми в доке "
"инспектора, используйте вместо этого [member interface/inspector/"
"default_property_name_style]."

msgid ""
"The amount of sleeping between frames in the editor (in microseconds). Higher "
"values will result in lower CPU/GPU usage, which can improve battery life on "
"laptops. However, higher values will result in a less responsive editor. The "
"default value is set to allow for maximum smoothness on monitors up to 144 "
"Hz. See also [member interface/editor/"
"unfocused_low_processor_mode_sleep_usec].\n"
"[b]Note:[/b] This setting is ignored if [member interface/editor/"
"update_continuously] is [code]true[/code], as enabling that setting disables "
"low-processor mode."
msgstr ""
"Продолжительность спящего режима между кадрами в редакторе (в микросекундах). "
"Более высокие значения приведут к снижению нагрузки на CPU/GPU , что может "
"увеличить время автономной работы ноутбуков. Однако более высокие значения "
"приведут к снижению отзывчивости редактора. Значение по умолчанию "
"обеспечивает максимальную плавность на мониторах с частотой обновления до 144 "
"Гц. См. также [member interface/editor/"
"unfocused_low_processor_mode_sleep_usec].\n"
"[b]Примечание:[/b] Этот параметр игнорируется, если [member interface/editor/"
"update_continuously] имеет значение [code]true[/code], так как его включение "
"отключает режим низкой загрузки процессора."

msgid ""
"The font to use for the editor interface. Must be a resource of a [Font] type "
"such as a [code].ttf[/code] or [code].otf[/code] font file.\n"
"[b]Note:[/b] If the provided font is variable, a weight of 400 (normal) will "
"be used."
msgstr ""
"Шрифт, используемый для интерфейса редактора. Должен быть ресурсом типа "
"[Font], например, файлом шрифта [code].ttf[/code] или [code].otf[/code].\n"
"[b]Примечание:[/b] Если предоставленный шрифт является переменным, будет "
"использоваться вес 400 (обычный)."

msgid ""
"The font to use for bold text in the editor interface. Must be a resource of "
"a [Font] type such as a [code].ttf[/code] or [code].otf[/code] font file.\n"
"[b]Note:[/b] If the provided font is variable, a weight of 700 (bold) will be "
"used."
msgstr ""
"Шрифт, используемый для жирного текста в интерфейсе редактора. Должен быть "
"ресурсом типа [Font], например, файлом шрифта [code].ttf[/code] или "
"[code].otf[/code].\n"
"[b]Примечание:[/b] Если предоставленный шрифт является переменным, будет "
"использоваться толщина 700 (жирный)."

msgid "The size of the font in the editor interface."
msgstr "Размер шрифта в интерфейсе редактора."

msgid ""
"If [code]true[/code], the mouse's additional side buttons will be usable to "
"navigate in the script editor's file history. Set this to [code]false[/code] "
"if you're using the side buttons for other purposes (such as a push-to-talk "
"button in a VoIP program)."
msgstr ""
"Если [code]true[/code], дополнительные боковые кнопки мыши будут "
"использоваться для навигации по истории файлов редактора скриптов. Установите "
"это на [code]false[/code], если вы используете боковые кнопки для других "
"целей (например, кнопку «нажми и говори» в программе VoIP)."

msgid "The preferred monitor to display the project manager."
msgstr "Предпочтительный монитор для отображения менеджера проекта."

msgid ""
"If [code]false[/code], the editor will save all scenes when confirming the "
"[b]Save[/b] action when quitting the editor or quitting to the project list. "
"If [code]true[/code], the editor will ask to save each scene individually."
msgstr ""
"Если [code]false[/code], редактор сохранит все сцены при подтверждении "
"действия [b]Save[/b] при выходе из редактора или выходе из списка проектов. "
"Если [code]true[/code], редактор попросит сохранить каждую сцену по "
"отдельности."

msgid ""
"If [code]true[/code], scenes and scripts are saved when the editor loses "
"focus. Depending on the work flow, this behavior can be less intrusive than "
"[member text_editor/behavior/files/autosave_interval_secs] or remembering to "
"save manually."
msgstr ""
"Если [code]true[/code], сцены и скрипты сохраняются, когда редактор теряет "
"фокус. В зависимости от рабочего процесса это поведение может быть менее "
"навязчивым, чем [member text_editor/behavior/files/autosave_interval_secs] "
"или запоминание сохранения вручную."

msgid ""
"If [code]true[/code], the editor's Script tab will have a separate "
"distraction mode setting from the 2D/3D/Game/AssetLib tabs. If [code]false[/"
"code], the distraction-free mode toggle is shared between all tabs."
msgstr ""
"Если [code]true[/code], вкладка редактора Script будет иметь отдельную "
"настройку режима отвлечения от вкладок 2D/3D/Game/AssetLib. Если [code]false[/"
"code], переключатель режима без отвлечения будет общим для всех вкладок."

msgid ""
"If enabled, displays internal engine errors in toast notifications "
"(toggleable by clicking the \"bell\" icon at the bottom of the editor). No "
"matter the value of this setting, non-internal engine errors will always be "
"visible in toast notifications.\n"
"The default [b]Auto[/b] value will only enable this if the editor was "
"compiled with the [code]dev_build=yes[/code] SCons option (the default is "
"[code]dev_build=no[/code])."
msgstr ""
"Если включено, отображает внутренние ошибки движка в уведомлениях-"
"уведомлениях (переключается щелчком по значку «колокольчик» в нижней части "
"редактора). Независимо от значения этого параметра, не внутренние ошибки "
"движка всегда будут видны в уведомлениях-уведомлениях.\n"
"Значение по умолчанию [b]Auto[/b] включит это только в том случае, если "
"редактор был скомпилирован с опцией [code]dev_build=yes[/code] SCons (по "
"умолчанию [code]dev_build=no[/code])."

msgid ""
"If enabled, displays an icon in the top-right corner of the editor that spins "
"when the editor redraws a frame. This can be used to diagnose situations "
"where the engine is constantly redrawing, which should be avoided as this "
"increases CPU and GPU utilization for no good reason. To further troubleshoot "
"these situations, start the editor with the [code]--debug-canvas-item-redraw[/"
"code] [url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command line "
"argument[/url].\n"
"Consider enabling this if you are developing editor plugins to ensure they "
"only make the editor redraw when required.\n"
"The default [b]Auto[/b] value will only enable this if the editor was "
"compiled with the [code]dev_build=yes[/code] SCons option (the default is "
"[code]dev_build=no[/code]).\n"
"[b]Note:[/b] If [member interface/editor/update_continuously] is [code]true[/"
"code], the spinner icon displays in red.\n"
"[b]Note:[/b] If the editor was started with the [code]--debug-canvas-item-"
"redraw[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url], the update spinner "
"will [i]never[/i] display regardless of this setting's value. This is to "
"avoid confusion with what would cause redrawing in real world scenarios."
msgstr ""
"Если включено, в правом верхнем углу редактора отображается значок, который "
"вращается, когда редактор перерисовывает кадр. Это можно использовать для "
"диагностики ситуаций, когда движок постоянно перерисовывает, чего следует "
"избегать, поскольку это увеличивает использование ЦП и ГП без веской причины. "
"Для дальнейшего устранения неполадок в таких ситуациях запустите редактор с "
"[code]--debug-canvas-item-redraw[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]аргументом командной строки[/url].\n"
"Рассмотрите возможность включения этой функции, если вы разрабатываете "
"плагины редактора, чтобы гарантировать, что они будут перерисовывать редактор "
"только при необходимости.\n"
"Значение по умолчанию [b]Auto[/b] включит эту функцию только в том случае, "
"если редактор был скомпилирован с параметром [code]dev_build=yes[/code] SCons "
"(значение по умолчанию — [code]dev_build=no[/code]).\n"
"[b]Примечание:[/b] Если [member interface/editor/update_continuously] равно "
"[code]true[/code], значок счетчика отображается красным цветом.\n"
"[b]Примечание:[/b] Если редактор был запущен с [code]--debug-canvas-item-"
"redraw[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]аргументом командной строки[/url], счетчик "
"обновления [i]никогда[/i] не будет отображаться независимо от значения этого "
"параметра. Это сделано для того, чтобы избежать путаницы с тем, что может "
"вызвать перерисовку в реальных сценариях."

msgid ""
"If [code]true[/code], embed modal windows such as docks inside the main "
"editor window. When single-window mode is enabled, tooltips will also be "
"embedded inside the main editor window, which means they can't be displayed "
"outside of the editor window. Single-window mode can be faster as it does not "
"need to create a separate window for every popup and tooltip, which can be a "
"slow operation depending on the operating system and rendering method in "
"use.\n"
"This is equivalent to [member ProjectSettings.display/window/subwindows/"
"embed_subwindows] in the running project, except the setting's value is "
"inverted.\n"
"[b]Note:[/b] To query whether the editor can use multiple windows in an "
"editor plugin, use [method EditorInterface.is_multi_window_enabled] instead "
"of querying the value of this editor setting.\n"
"[b]Note:[/b] If [code]true[/code], game embedding is disabled."
msgstr ""
"Если [code]true[/code], встраивайте модальные окна, такие как доки, в главное "
"окно редактора. Когда включен однооконный режим, подсказки также будут "
"встраиваться в главное окно редактора, что означает, что они не могут "
"отображаться за пределами окна редактора. Однооконный режим может быть "
"быстрее, поскольку ему не нужно создавать отдельное окно для каждого "
"всплывающего окна и подсказки, что может быть медленной операцией в "
"зависимости от операционной системы и используемого метода рендеринга.\n"
"Это эквивалентно [member ProjectSettings.display/window/subwindows/"
"embed_subwindows] в запущенном проекте, за исключением того, что значение "
"параметра инвертировано.\n"
"[b]Примечание:[/b] Чтобы узнать, может ли редактор использовать несколько "
"окон в плагине редактора, используйте [method "
"EditorInterface.is_multi_window_enabled] вместо запроса значения этого "
"параметра редактора.\n"
"[b]Примечание:[/b] Если [code]true[/code], встраивание игры отключено."

msgid "Overrides the tablet driver used by the editor."
msgstr "Переопределяет драйвер планшета, используемый редактором."

msgid "Editor UI default layout direction."
msgstr "Направление макета пользовательского интерфейса редактора по умолчанию."

msgid ""
"When the editor window is unfocused, the amount of sleeping between frames "
"when the low-processor usage mode is enabled (in microseconds). Higher values "
"will result in lower CPU/GPU usage, which can improve battery life on laptops "
"(in addition to improving the running project's performance if the editor has "
"to redraw continuously). However, higher values will result in a less "
"responsive editor. The default value is set to limit the editor to 10 FPS "
"when the editor window is unfocused. See also [member interface/editor/"
"low_processor_mode_sleep_usec].\n"
"[b]Note:[/b] This setting is ignored if [member interface/editor/"
"update_continuously] is [code]true[/code], as enabling that setting disables "
"low-processor mode."
msgstr ""
"Когда окно редактора не сфокусировано, время сна между кадрами при включённом "
"режиме низкой загрузки процессора (в микросекундах). Более высокие значения "
"приведут к снижению нагрузки на CPU/GPU, что может увеличить время работы от "
"батареи на ноутбуках (помимо повышения производительности запущенного "
"проекта, если редактору приходится постоянно перерисовываться). Однако более "
"высокие значения приведут к снижению отзывчивости редактора. Значение по "
"умолчанию ограничивает частоту кадров редактора 10 FPS, когда окно редактора "
"не сфокусировано. См. также [member interface/editor/"
"low_processor_mode_sleep_usec].\n"
"[b]Примечание:[/b] Этот параметр игнорируется, если [member interface/editor/"
"update_continuously] имеет значение [code]true[/code], так как включение "
"этого параметра отключает режим низкой загрузки процессора."

msgid ""
"If [code]true[/code], redraws the editor every frame even if nothing has "
"changed on screen. When this setting is enabled, the update spinner displays "
"in red (see [member interface/editor/show_update_spinner]).\n"
"[b]Warning:[/b] This greatly increases CPU and GPU utilization, leading to "
"increased power usage. This should only be enabled for troubleshooting "
"purposes."
msgstr ""
"Если [code]true[/code], перерисовывает редактор в каждом кадре, даже если на "
"экране ничего не изменилось. Когда этот параметр включен, счетчик обновления "
"отображается красным (см. [member interface/editor/show_update_spinner]).\n"
"[b]Предупреждение:[/b] Это значительно увеличивает загрузку ЦП и ГП, что "
"приводит к повышенному энергопотреблению. Это следует включать только для "
"устранения неполадок."

msgid ""
"If [code]true[/code], editor main menu is using embedded [MenuBar] instead of "
"system global menu.\n"
"Specific to the macOS platform."
msgstr ""
"Если [code]true[/code], главное меню редактора использует встроенный "
"[MenuBar] вместо системного глобального меню.\n"
"Специально для платформы macOS."

msgid ""
"If [code]true[/code], editor UI uses OS native file/directory selection "
"dialogs."
msgstr ""
"Если [code]true[/code], пользовательский интерфейс редактора использует "
"собственные диалоги выбора файлов/каталогов ОС."

msgid ""
"Sets the V-Sync mode for the editor. Does not affect the project when run "
"from the editor (this is controlled by [member ProjectSettings.display/window/"
"vsync/vsync_mode]).\n"
"Depending on the platform and used renderer, the engine will fall back to "
"[b]Enabled[/b] if the desired mode is not supported.\n"
"[b]Note:[/b] V-Sync modes other than [b]Enabled[/b] are only supported in the "
"Forward+ and Mobile rendering methods, not Compatibility."
msgstr ""
"Устанавливает режим V-Sync для редактора. Не влияет на проект при запуске из "
"редактора (это контролируется [member ProjectSettings.display/window/vsync/"
"vsync_mode]).\n"
"В зависимости от платформы и используемого рендерера движок вернется к "
"[b]Enabled[/b], если нужный режим не поддерживается.\n"
"[b]Примечание:[/b] Режимы V-Sync, отличные от [b]Enabled[/b], поддерживаются "
"только в методах рендеринга Forward+ и Mobile, но не Compatibility."

msgid ""
"If [code]true[/code], when extending a script, the global class name of the "
"script is inserted in the script creation dialog, if it exists. If "
"[code]false[/code], the script's file path is always inserted."
msgstr ""
"Если [code]true[/code], при расширении скрипта в диалог создания скрипта "
"вставляется глобальное имя класса скрипта, если оно существует. Если "
"[code]false[/code], всегда вставляется путь к файлу скрипта."

msgid ""
"If [code]true[/code], the Scene dock will display buttons to quickly add a "
"root node to a newly created scene."
msgstr ""
"Если [code]true[/code], на панели сцен будут отображаться кнопки для быстрого "
"добавления корневого узла к вновь созданной сцене."

msgid ""
"If [code]true[/code], automatically unfolds Inspector property groups "
"containing modified values when opening a scene for the first time. Only "
"affects scenes without saved folding preferences and only unfolds groups with "
"properties that have been changed from their default values.\n"
"[b]Note:[/b] This setting only works in specific scenarios: when opening a "
"scene brought in from another project, or when opening a new scene that "
"already has modified properties (e.g., from version control). Duplicated "
"scenes are not considered foreign, so this setting will not affect them."
msgstr ""
"Если [code]true[/code], группы свойств инспектора, содержащие изменённые "
"значения, автоматически разворачиваются при первом открытии сцены. Действует "
"только на сцены без сохранённых настроек свёртывания и разворачивает только "
"группы со свойствами, значения которых были изменены по сравнению со "
"значениями по умолчанию.\n"
"[b]Примечание:[/b] Этот параметр работает только в определённых сценариях: "
"при открытии сцены, перенесённой из другого проекта, или при открытии новой "
"сцены с уже изменёнными свойствами (например, из системы управления "
"версиями). Дублированные сцены не считаются чужими, поэтому этот параметр на "
"них не повлияет."

msgid ""
"If [code]true[/code], show the intensity slider in the [ColorPicker]s opened "
"in the editor."
msgstr ""
"Если [code]true[/code], покажите ползунок интенсивности в [ColorPicker], "
"открытом в редакторе."

msgid ""
"The default color picker mode to use when opening [ColorPicker]s in the "
"editor. This mode can be temporarily adjusted on the color picker itself."
msgstr ""
"Режим выбора цвета по умолчанию для использования при открытии [ColorPicker] "
"в редакторе. Этот режим можно временно настроить на самом выборе цвета."

msgid ""
"The default color picker shape to use when opening [ColorPicker]s in the "
"editor. This shape can be temporarily adjusted on the color picker itself."
msgstr ""
"Форма палитры цветов по умолчанию для использования при открытии "
"[ColorPicker] в редакторе. Эту форму можно временно настроить на самой "
"палитре цветов."

msgid ""
"The floating-point precision to use for properties that don't define an "
"explicit precision step. Lower values allow entering more precise values."
msgstr ""
"Точность с плавающей точкой для использования свойств, которые не определяют "
"явный шаг точности. Более низкие значения позволяют вводить более точные "
"значения."

msgid ""
"The default property name style to display in the Inspector dock. This style "
"can be temporarily adjusted in the Inspector dock's menu.\n"
"- [b]Raw:[/b] Displays properties in [code]snake_case[/code].\n"
"- [b]Capitalized:[/b] Displays properties capitalized.\n"
"- [b]Localized:[/b] Displays the localized string for the current editor "
"language if a translation is available for the given property. If no "
"translation is available, falls back to [b]Capitalized[/b].\n"
"[b]Note:[/b] To display translated setting names in Project Settings and "
"Editor Settings, use [member interface/editor/localize_settings] instead."
msgstr ""
"Стиль имени свойства по умолчанию для отображения в доке инспектора. Этот "
"стиль можно временно изменить в меню дока инспектора.\n"
"- [b]Raw:[/b] Отображает свойства в [code]snake_case[/code].\n"
"- [b]Capitalized:[/b] Отображает свойства с заглавной буквы.\n"
"- [b]Localized:[/b] Отображает локализованную строку для текущего языка "
"редактора, если для данного свойства доступен перевод. Если перевод "
"недоступен, возвращается к [b]Capitalized[/b].\n"
"[b]Примечание:[/b] Чтобы отобразить переведенные имена настроек в настройках "
"проекта и настройках редактора, используйте вместо этого [member interface/"
"editor/localize_settings]."

msgid ""
"If [code]true[/code], add a margin around Array, Dictionary, and Resource "
"Editors that are not already colored.\n"
"[b]Note:[/b] If [member interface/inspector/nested_color_mode] is set to "
"[b]Containers & Resources[/b] this parameter will have no effect since those "
"editors will already be colored."
msgstr ""
"Если [code]true[/code], добавьте поле вокруг редакторов массива, словаря и "
"ресурсов, которые еще не раскрашены.\n"
"[b]Примечание:[/b] Если [member interface/inspector/nested_color_mode] "
"установлен на [b]Containers & Resources[/b], этот параметр не будет иметь "
"никакого эффекта, поскольку эти редакторы уже будут раскрашены."

msgid ""
"If [code]true[/code], forces all property groups to be expanded in the "
"Inspector dock and prevents collapsing them."
msgstr ""
"Если [code]true[/code], все группы свойств принудительно разворачиваются в "
"доке инспектора и не сворачиваются."

msgid ""
"Base speed for increasing/decreasing float values by dragging them in the "
"inspector."
msgstr ""
"Базовая скорость для увеличения/уменьшения значений плавающих элементов путем "
"перетаскивания их в инспекторе."

msgid ""
"If [code]true[/code], [Vector2] and [Vector2i] properties are shown on a "
"single line in the inspector instead of two lines. This is overall more "
"compact, but it can be harder to view and edit large values without expanding "
"the inspector horizontally."
msgstr ""
"Если [code]true[/code], свойства [Vector2] и [Vector2i] отображаются в одной "
"строке инспектора вместо двух. Это в целом более компактно, но может быть "
"сложнее просматривать и редактировать большие значения без горизонтального "
"расширения инспектора."

msgid ""
"If [code]true[/code], [Vector3], [Vector3i], [Vector4], [Vector4i], [Rect2], "
"[Rect2i], [Plane], and [Quaternion] properties are shown on a single line in "
"the inspector instead of multiple lines. This is overall more compact, but it "
"can be harder to view and edit large values without expanding the inspector "
"horizontally."
msgstr ""
"Если [code]true[/code], свойства [Vector3], [Vector3i], [Vector4], "
"[Vector4i], [Rect2], [Rect2i], [Plane] и [Quaternion] отображаются в одной "
"строке инспектора вместо нескольких. Это в целом более компактно, но может "
"быть сложнее просматривать и редактировать большие значения без "
"горизонтального расширения инспектора."

msgid ""
"The number of [Array] or [Dictionary] items to display on each \"page\" in "
"the inspector. Higher values allow viewing more values per page, but take "
"more time to load. This increased load time is noticeable when selecting "
"nodes that have array or dictionary properties in the editor."
msgstr ""
"Количество элементов [Array] или [Dictionary], отображаемых на каждой "
"\"странице\" в инспекторе. Более высокие значения позволяют просматривать "
"больше значений на странице, но требуют больше времени для загрузки. Это "
"увеличенное время загрузки заметно при выборе узлов, имеющих свойства массива "
"или словаря в редакторе."

msgid ""
"Control which property editors are colored when they are opened.\n"
"- [b]Containers & Resources:[/b] Color all Array, Dictionary, and Resource "
"Editors.\n"
"- [b]Resources:[/b] Color all Resource Editors.\n"
"- [b]External Resources:[/b] Color Resource Editors that edits an external "
"resource."
msgstr ""
"Управляйте тем, какие редакторы свойств будут окрашены при открытии.\n"
"- [b]Контейнеры и ресурсы:[/b] Раскрашивать все редакторы массивов, словарей "
"и ресурсов.\n"
"- [b]Ресурсы:[/b] Раскрашивать все редакторы ресурсов.\n"
"- [b]Внешние ресурсы:[/b] Раскрашивать редакторы ресурсов, которые "
"редактируют внешний ресурс."

msgid ""
"If [code]true[/code], subresources can be edited in the current inspector "
"view. If the resource type is defined in [member interface/inspector/"
"resources_to_open_in_new_inspector] or if this setting is [code]false[/code], "
"attempting to edit a subresource always opens a new inspector view."
msgstr ""
"Если [code]true[/code], подресурсы можно редактировать в текущем "
"представлении инспектора. Если тип ресурса определен в [member interface/"
"inspector/resources_to_open_in_new_inspector] или если этот параметр равен "
"[code]false[/code], попытка редактирования подресурса всегда открывает новое "
"представление инспектора."

msgid ""
"List of resources that should always be opened in a new inspector view, even "
"if [member interface/inspector/open_resources_in_current_inspector] is "
"[code]true[/code]."
msgstr ""
"Список ресурсов, которые всегда следует открывать в новом представлении "
"инспектора, даже если [member interface/inspector/"
"open_resources_in_current_inspector] имеет значение [code]true[/code]."

msgid ""
"If [code]true[/code], display OpenType features marked as [code]hidden[/code] "
"by the font file in the [Font] editor."
msgstr ""
"Если [code]true[/code], отображать элементы OpenType, отмеченные как "
"[code]hidden[/code] файлом шрифта в редакторе [Font]."

msgid ""
"If [code]true[/code], multiple window support in editor is enabled. The "
"following panels can become dedicated windows (i.e. made floating): Docks, "
"Script editor, Shader editor, and Game Workspace.\n"
"[b]Note:[/b] When [member interface/editor/single_window_mode] is [code]true[/"
"code], the multi window support is always disabled.\n"
"[b]Note:[/b] To query whether the editor can use multiple windows in an "
"editor plugin, use [method EditorInterface.is_multi_window_enabled] instead "
"of querying the value of this editor setting."
msgstr ""
"Если [code]true[/code], поддержка нескольких окон в редакторе включена. "
"Следующие панели могут стать выделенными окнами (т. е. плавающими): Docks, "
"Script editor, Shader editor и Game Workspace.\n"
"[b]Примечание:[/b] Когда [member interface/editor/single_window_mode] равно "
"[code]true[/code], поддержка нескольких окон всегда отключена.\n"
"[b]Примечание:[/b] Чтобы узнать, может ли редактор использовать несколько "
"окон в плагине редактора, используйте [method "
"EditorInterface.is_multi_window_enabled] вместо запроса значения этого "
"параметра редактора."

msgid ""
"If [code]true[/code], when panels are made floating they will be maximized.\n"
"If [code]false[/code], when panels are made floating their position and size "
"will match the ones when they are attached (excluding window border) to the "
"editor window."
msgstr ""
"Если [code]true[/code], когда панели сделаны плавающими, они будут "
"развернуты. \n"
"Если [code]false[/code], когда панели сделаны плавающими, их положение и "
"размер будут соответствовать тем, когда они прикреплены (исключая границу "
"окна) к окну редактора."

msgid ""
"If [code]true[/code], the floating panel position, size, and screen will be "
"saved on editor exit. On next launch the panels that were floating will be "
"made floating in the saved positions, sizes and screens, if possible."
msgstr ""
"Если [code]true[/code], положение плавающей панели, размер и экран будут "
"сохранены при выходе из редактора. При следующем запуске панели, которые были "
"плавающими, будут сделаны плавающими в сохраненных положениях, размерах и "
"экранах, если это возможно."

msgid ""
"Controls when the Close (X) button is displayed on scene tabs at the top of "
"the editor."
msgstr ""
"Управляет отображением кнопки «Закрыть» (X) на вкладках сцен в верхней части "
"редактора."

msgid "The maximum width of each scene tab at the top editor (in pixels)."
msgstr ""
"Максимальная ширина каждой вкладки сцены в верхнем редакторе (в пикселях)."

msgid ""
"If [code]true[/code], when a project is loaded, restores scenes that were "
"opened on the last editor session.\n"
"[b]Note:[/b] With many opened scenes, the editor may take longer to become "
"usable. If starting the editor quickly is necessary, consider setting this to "
"[code]false[/code]."
msgstr ""
"Если [code]true[/code], при загрузке проекта восстанавливаются сцены, которые "
"были открыты в последнем сеансе редактора.\n"
"[b]Примечание:[/b] При большом количестве открытых сцен редактору может "
"потребоваться больше времени, чтобы стать пригодным для использования. Если "
"необходимо быстро запустить редактор, рассмотрите возможность установки этого "
"параметра на [code]false[/code]."

msgid ""
"If [code]true[/code], show a button next to each scene tab that opens the "
"scene's \"dominant\" script when clicked. The \"dominant\" script is the one "
"that is at the highest level in the scene's hierarchy."
msgstr ""
"Если [code]true[/code], показывать кнопку рядом с каждой вкладкой сцены, "
"которая при нажатии открывает \"доминантный\" сценарий сцены. \"Доминантный\" "
"сценарий — это тот, который находится на самом высоком уровне в иерархии "
"сцены."

msgid ""
"If [code]true[/code], display an automatically-generated thumbnail when "
"hovering scene tabs with the mouse. Scene thumbnails are generated when "
"saving the scene."
msgstr ""
"Если [code]true[/code], отображать автоматически сгенерированную миниатюру "
"при наведении мыши на вкладки сцен. Миниатюры сцен генерируются при "
"сохранении сцены."

msgid ""
"The color to use for \"highlighted\" user interface elements in the editor "
"(pressed and hovered items)."
msgstr ""
"Цвет, используемый для «выделенных» элементов пользовательского интерфейса в "
"редакторе (нажатые и наведенные элементы)."

msgid ""
"The extra spacing to add to various GUI elements in the editor (in pixels). "
"Increasing this value is useful to improve usability on touch screens, at the "
"cost of reducing the amount of usable screen real estate.\n"
"See also [member interface/theme/spacing_preset]."
msgstr ""
"Дополнительный интервал для добавления к различным элементам GUI в редакторе "
"(в пикселях). Увеличение этого значения полезно для улучшения удобства "
"использования на сенсорных экранах, за счет уменьшения количества полезного "
"пространства экрана.\n"
"См. также [member interface/theme/spacing_preset]."

msgid ""
"The base color to use for user interface elements in the editor. Secondary "
"colors (such as darker/lighter variants) are derived from this color."
msgstr ""
"Базовый цвет для элементов пользовательского интерфейса в редакторе. "
"Вторичные цвета (например, более темные/светлые варианты) являются "
"производными от этого цвета."

msgid ""
"The base spacing used by various GUI elements in the editor (in pixels). See "
"also [member interface/theme/spacing_preset]."
msgstr ""
"Базовый интервал, используемый различными элементами GUI в редакторе (в "
"пикселях). См. также [member interface/theme/spacing_preset]."

msgid "The border size to use for interface elements (in pixels)."
msgstr "Размер границы, используемый для элементов интерфейса (в пикселях)."

msgid ""
"The contrast factor to use when deriving the editor theme's base color (see "
"[member interface/theme/base_color]). When using a positive values, the "
"derived colors will be [i]darker[/i] than the base color. This contrast "
"factor can be set to a negative value, which will make the derived colors "
"[i]brighter[/i] than the base color. Negative contrast rates often look "
"better for light themes."
msgstr ""
"Коэффициент контрастности, используемый при выводе базового цвета темы "
"редактора (см. [member interface/theme/base_color]). При использовании "
"положительных значений производные цвета будут [i]темнее[/i], чем базовый "
"цвет. Этот коэффициент контрастности может быть установлен на отрицательное "
"значение, что сделает производные цвета [i]ярче[/i], чем базовый цвет. "
"Отрицательные коэффициенты контрастности часто выглядят лучше для светлых тем."

msgid ""
"The corner radius to use for interface elements (in pixels). [code]0[/code] "
"is square."
msgstr ""
"Радиус угла, используемый для элементов интерфейса (в пикселях). [code]0[/"
"code] — квадратный."

msgid ""
"The custom theme resource to use for the editor. Must be a Godot theme "
"resource in [code].tres[/code] or [code].res[/code] format."
msgstr ""
"Пользовательский ресурс темы для использования в редакторе. Должен быть "
"ресурсом темы Godot в формате [code].tres[/code] или [code].res[/code]."

msgid ""
"If [code]true[/code], draws additional borders around interactive UI elements "
"in the editor. This is automatically enabled when using the [b]Black (OLED)[/"
"b] theme preset, as this theme preset uses a fully black background."
msgstr ""
"Если [code]true[/code], рисует дополнительные границы вокруг интерактивных "
"элементов пользовательского интерфейса в редакторе. Это автоматически "
"включается при использовании предустановки темы [b]Black (OLED)[/b], так как "
"эта предустановка темы использует полностью черный фон."

msgid ""
"If [code]true[/code], the editor theme preset will attempt to automatically "
"match the system theme."
msgstr ""
"Если [code]true[/code], предустановка темы редактора попытается автоматически "
"соответствовать системной теме."

msgid ""
"The icon and font color scheme to use in the editor.\n"
"- [b]Auto[/b] determines the color scheme to use automatically based on "
"[member interface/theme/base_color].\n"
"- [b]Dark[/b] makes fonts and icons dark (suitable for light themes). Icon "
"colors are automatically converted by the editor following the set of rules "
"defined in [url=https://github.com/godotengine/godot/blob/master/editor/"
"themes/editor_theme_manager.cpp]this file[/url].\n"
"- [b]Light[/b] makes fonts and icons light (suitable for dark themes)."
msgstr ""
"Цветовая схема значка и шрифта для использования в редакторе.\n"
"- [b]Auto[/b] определяет цветовую схему для использования автоматически на "
"основе [member interface/theme/base_color].\n"
"- [b]Dark[/b] делает шрифты и значки темными (подходят для светлых тем). "
"Цвета значков автоматически преобразуются редактором в соответствии с набором "
"правил, определенных в [url=https://github.com/godotengine/godot/blob/master/"
"editor/themes/editor_theme_manager.cpp]этом файле[/url].\n"
"- [b]Light[/b] делает шрифты и значки светлыми (подходят для темных тем)."

msgid ""
"The saturation to use for editor icons. Higher values result in more vibrant "
"colors.\n"
"[b]Note:[/b] The default editor icon saturation was increased by 30% in Godot "
"4.0 and later. To get Godot 3.x's icon saturation back, set [member interface/"
"theme/icon_saturation] to [code]0.77[/code]."
msgstr ""
"Насыщенность, используемая для иконок редактора. Более высокие значения "
"приводят к более ярким цветам.\n"
"[b]Примечание:[/b] Насыщенность иконок редактора по умолчанию была увеличена "
"на 30% в Godot 4.0 и более поздних версиях. Чтобы вернуть насыщенность иконок "
"Godot 3.x, установите [member interface/theme/icon_saturation] на [code]0.77[/"
"code]."

msgid "The editor theme preset to use."
msgstr "Предустановленная тема редактора."

msgid ""
"The opacity to use when drawing relationship lines in the editor's [Tree]-"
"based GUIs (such as the Scene tree dock)."
msgstr ""
"Непрозрачность, используемая при рисовании линий взаимосвязи в графических "
"интерфейсах редактора на основе [Tree] (например, в док-станции дерева сцены)."

msgid ""
"The editor theme spacing preset to use. See also [member interface/theme/"
"base_spacing] and [member interface/theme/additional_spacing]."
msgstr ""
"Предустановленный интервал темы редактора для использования. См. также "
"[member interface/theme/base_spacing] и [member interface/theme/"
"additional_spacing]."

msgid ""
"If [code]true[/code], set accent color based on system settings.\n"
"[b]Note:[/b] This setting is only effective on Windows, MacOS, and Android."
msgstr ""
"Если [code]true[/code], установите акцентный цвет на основе настроек "
"системы.\n"
"[b]Примечание:[/b] Этот параметр действует только в Windows, MacOS и Android."

msgid ""
"If [code]true[/code], long press on touchscreen is treated as right click.\n"
"[b]Note:[/b] Defaults to [code]true[/code] on touchscreen devices."
msgstr ""
"Если [code]true[/code], долгое нажатие на сенсорный экран воспринимается как "
"щелчок правой кнопкой мыши.\n"
"[b]Примечание:[/b] По умолчанию [code]true[/code] на устройствах с сенсорным "
"экраном."

msgid ""
"If [code]true[/code], enable two finger pan and scale gestures on touchscreen "
"devices.\n"
"[b]Note:[/b] Defaults to [code]true[/code] on touchscreen devices."
msgstr ""
"Если [code]true[/code], включите жесты панорамирования и масштабирования "
"двумя пальцами на устройствах с сенсорным экраном.\n"
"[b]Примечание:[/b] По умолчанию [code]true[/code] на устройствах с сенсорным "
"экраном."

msgid ""
"If [code]true[/code], increases the scrollbar touch area and enables a larger "
"dragger for split containers to improve usability on touchscreen devices\n"
"[b]Note:[/b] Defaults to [code]true[/code] on touchscreen devices."
msgstr ""
"Если [code]true[/code], увеличивает сенсорную область полосы прокрутки и "
"включает более крупный перетаскиватель для разделенных контейнеров, чтобы "
"улучшить удобство использования на устройствах с сенсорным экраном.\n"
"[b]Примечание:[/b] По умолчанию на устройствах с сенсорным экраном "
"установлено значение [code]true[/code]."

msgid ""
"Specify the multiplier to apply to the scale for the editor gizmo handles to "
"improve usability on touchscreen devices.\n"
"[b]Note:[/b] Defaults to [code]1[/code] on non-touchscreen devices."
msgstr ""
"Укажите множитель, который следует применить к масштабу для дескрипторов "
"редактора gizmo, чтобы улучшить удобство использования на устройствах с "
"сенсорным экраном.\n"
"[b]Примечание:[/b] По умолчанию [code]1[/code] на устройствах без сенсорного "
"экрана."

msgid ""
"A touch-friendly panel that provides easy access to common actions such as "
"save, delete, undo, and redo without requiring a keyboard.\n"
"[b]Note:[/b] Only available in the Android and XR editor."
msgstr ""
"Сенсорная панель, обеспечивающая легкий доступ к общим действиям, таким как "
"сохранение, удаление, отмена и повтор, без использования клавиатуры.\n"
"[b]Примечание:[/b] Доступно только в редакторе Android и XR."

msgid ""
"Specifies how the engine should check for updates.\n"
"- [b]Disable Update Checks[/b] will block the engine from checking updates "
"(see also [member network/connection/network_mode]).\n"
"- [b]Check Newest Preview[/b] (default for preview versions) will check for "
"the newest available development snapshot.\n"
"- [b]Check Newest Stable[/b] (default for stable versions) will check for the "
"newest available stable version.\n"
"- [b]Check Newest Patch[/b] will check for the latest available stable "
"version, but only within the same minor version. E.g. if your version is "
"[code]4.3.stable[/code], you will be notified about [code]4.3.1.stable[/"
"code], but not [code]4.4.stable[/code].\n"
"All update modes will ignore builds with different major versions (e.g. Godot "
"4 -> Godot 5)."
msgstr ""
"Указывает, как движок должен проверять наличие обновлений.\n"
"- [b]Отключить проверки обновлений[/b] заблокирует движок от проверки "
"обновлений (см. также [member network/connection/network_mode]).\n"
"- [b]Проверить новейшую предварительную версию[/b] (по умолчанию для "
"предварительных версий) проверит наличие новейшей доступной версии для "
"разработки.\n"
"- [b]Проверить новейшую стабильную версию[/b] (по умолчанию для стабильных "
"версий) проверит наличие новейшей доступной стабильной версии.\n"
"- [b]Проверить новейшее исправление[/b] проверит наличие последней доступной "
"стабильной версии, но только в пределах одной и той же младшей версии. "
"Например, если ваша версия [code]4.3.stable[/code], вы будете уведомлены о "
"[code]4.3.1.stable[/code], но не о [code]4.4.stable[/code].\n"
"Все режимы обновления будут игнорировать сборки с разными основными версиями "
"(например, Godot 4 -> Godot 5)."

msgid ""
"Determines whether online features are enabled in the editor, such as the "
"Asset Library or update checks. Disabling these online features helps "
"alleviate privacy concerns by preventing the editor from making HTTP requests "
"to the Godot website or third-party platforms hosting assets from the Asset "
"Library.\n"
"Editor plugins and tool scripts are recommended to follow this setting. "
"However, Godot can't prevent them from violating this rule."
msgstr ""
"Определяет, включены ли в редакторе онлайн-функции, такие как библиотека "
"ресурсов (Asset Library) или проверка обновлений. Отключение этих онлайн-"
"функций помогает снизить риски нарушения конфиденциальности, запрещая "
"редактору отправлять HTTP-запросы на веб-сайт Godot или сторонние платформы, "
"размещающие ресурсы из библиотеки ресурсов.\n"
"Рекомендуется, чтобы плагины и скрипты инструментов редактора соответствовали "
"этому параметру. Однако Godot не может предотвратить нарушение этого правила."

msgid ""
"The address to listen to when starting the remote debugger. This can be set "
"to this device's local IP address to allow external clients to connect to the "
"remote debugger (instead of restricting the remote debugger to connections "
"from [code]localhost[/code])."
msgstr ""
"Адрес для прослушивания при запуске удаленного отладчика. Его можно задать на "
"локальный IP-адрес этого устройства, чтобы разрешить внешним клиентам "
"подключаться к удаленному отладчику (вместо ограничения удаленного отладчика "
"соединениями с [code]localhost[/code])."

msgid ""
"The port to listen to when starting the remote debugger. Godot will try to "
"use port numbers above the configured number if the configured number is "
"already taken by another application."
msgstr ""
"Порт для прослушивания при запуске удаленного отладчика. Godot попытается "
"использовать номера портов выше настроенного номера, если настроенный номер "
"уже занят другим приложением."

msgid ""
"The host to use to contact the HTTP and HTTPS proxy in the editor (for the "
"asset library and export template downloads). See also [member network/"
"http_proxy/port].\n"
"[b]Note:[/b] Godot currently doesn't automatically use system proxy settings, "
"so you have to enter them manually here if needed."
msgstr ""
"Хост, который будет использоваться для связи с HTTP и HTTPS-прокси в "
"редакторе (для загрузки библиотеки ресурсов и шаблонов экспорта). См. также "
"[member network/http_proxy/port].\n"
"[b]Примечание:[/b] Godot в настоящее время не использует автоматически "
"системные настройки прокси-сервера, поэтому вам придется ввести их вручную "
"здесь, если это необходимо."

msgid ""
"The port number to use to contact the HTTP and HTTPS proxy in the editor (for "
"the asset library and export template downloads). See also [member network/"
"http_proxy/host].\n"
"[b]Note:[/b] Godot currently doesn't automatically use system proxy settings, "
"so you have to enter them manually here if needed."
msgstr ""
"Номер порта, который следует использовать для связи с HTTP- и HTTPS-прокси в "
"редакторе (для загрузки библиотеки ресурсов и шаблонов экспорта). См. также "
"[member network/http_proxy/host].\n"
"[b]Примечание:[/b] Godot в настоящее время не использует автоматически "
"системные настройки прокси-сервера, поэтому при необходимости вам придется "
"ввести их здесь вручную."

msgid ""
"The TLS certificate bundle to use for HTTP requests made within the editor "
"(e.g. from the AssetLib tab). If left empty, the [url=https://github.com/"
"godotengine/godot/blob/master/thirdparty/certs/ca-certificates.crt]included "
"Mozilla certificate bundle[/url] will be used."
msgstr ""
"Пакет сертификатов TLS для использования в HTTP-запросах, сделанных в "
"редакторе (например, из вкладки AssetLib). Если оставить пустым, будет "
"использоваться [url=https://github.com/godotengine/godot/blob/master/"
"thirdparty/certs/ca-certificates.crt]включенный пакет сертификатов Mozilla[/"
"url]."

msgid ""
"If [code]true[/code], enable TLSv1.3 negotiation.\n"
"[b]Note:[/b] Only supported when using Mbed TLS 3.0 or later (Linux "
"distribution packages may be compiled against older system Mbed TLS "
"packages), otherwise the maximum supported TLS version is always TLSv1.2."
msgstr ""
"Если [code]true[/code], включите согласование TLSv1.3.\n"
"[b]Примечание:[/b] Поддерживается только при использовании Mbed TLS 3.0 или "
"более поздней версии (пакеты дистрибутивов Linux могут быть скомпилированы с "
"использованием более старых системных пакетов Mbed TLS), в противном случае "
"максимальная поддерживаемая версия TLS всегда TLSv1.2."

msgid ""
"The renderer type that will be checked off by default when creating a new "
"project. Accepted strings are \"forward_plus\", \"mobile\" or "
"\"gl_compatibility\"."
msgstr ""
"Тип рендерера, который будет отмечен по умолчанию при создании нового "
"проекта. Принимаются строки \"forward_plus\", \"mobile\" или "
"\"gl_compatibility\"."

msgid ""
"Directory naming convention for the project manager. Options are \"No "
"convention\" (project name is directory name), \"kebab-case\" (default), "
"\"snake_case\", \"camelCase\", \"PascalCase\", or \"Title Case\"."
msgstr ""
"Соглашение об именовании каталогов для менеджера проекта. Варианты: \"Без "
"соглашения\" (имя проекта — имя каталога), \"kebab-case\" (по умолчанию), "
"\"snake_case\", \"camelCase\", \"PascalCase\" или \"Title Case\"."

msgid ""
"The sorting order to use in the project manager. When changing the sorting "
"order in the project manager, this setting is set permanently in the editor "
"settings."
msgstr ""
"Порядок сортировки, используемый в менеджере проектов. При изменении порядка "
"сортировки в менеджере проектов эта настройка устанавливается постоянно в "
"настройках редактора."

msgid ""
"If [code]true[/code], saves all scenes and scripts automatically before "
"running the project. Setting this to [code]false[/code] prevents the editor "
"from saving if there are no changes which can speed up the project startup "
"slightly, but it makes it possible to run a project that has unsaved changes. "
"(Unsaved changes will not be visible in the running project.)"
msgstr ""
"Если [code]true[/code], автоматически сохраняет все сцены и скрипты перед "
"запуском проекта. Установка этого значения в [code]false[/code] запрещает "
"редактору сохранять, если нет изменений, что может немного ускорить запуск "
"проекта, но позволяет запустить проект с несохраненными изменениями. "
"(Несохраненные изменения не будут видны в запущенном проекте.)"

msgid ""
"The action to execute on the bottom panel when running the project.\n"
"[b]Note:[/b] This option won't do anything if the bottom panel switching is "
"locked using the pin button in the corner of the bottom panel."
msgstr ""
"Действие, которое нужно выполнить на нижней панели при запуске проекта.\n"
"[b]Примечание:[/b] Эта опция ничего не сделает, если переключение нижней "
"панели заблокировано с помощью кнопки-булавки в углу нижней панели."

msgid ""
"The action to execute on the bottom panel when stopping the project.\n"
"[b]Note:[/b] This option won't do anything if the bottom panel switching is "
"locked using the pin button in the corner of the bottom panel."
msgstr ""
"Действие, которое нужно выполнить на нижней панели при остановке проекта.\n"
"[b]Примечание:[/b] Эта опция ничего не сделает, если переключение нижней "
"панели заблокировано с помощью кнопки-булавки в углу нижней панели."

msgid ""
"If [code]true[/code], the editor will clear the Output panel when running the "
"project."
msgstr ""
"Если [code]true[/code], редактор очистит панель вывода при запуске проекта."

msgid ""
"The size of the font in the [b]Output[/b] panel at the bottom of the editor. "
"This setting does not impact the font size of the script editor (see [member "
"interface/editor/code_font_size])."
msgstr ""
"Размер шрифта на панели [b]Output[/b] в нижней части редактора. Эта настройка "
"не влияет на размер шрифта редактора скриптов (см. [member interface/editor/"
"code_font_size])."

msgid "Maximum number of lines to show at any one time in the Output panel."
msgstr ""
"Максимальное количество строк, отображаемых одновременно на панели «Вывод»."

msgid ""
"If [code]true[/code], on Linux/BSD, the editor will check for Wayland first "
"instead of X11 (if available)."
msgstr ""
"Если [code]true[/code], в Linux/BSD редактор сначала проверит наличие Wayland "
"вместо X11 (если доступно)."

msgid ""
"Specifies how the Play window is launched relative to the Android editor.\n"
"- [b]Auto (based on screen size)[/b] (default) will automatically choose how "
"to launch the Play window based on the device and screen metrics. Defaults to "
"[b]Same as Editor[/b] on phones and [b]Side-by-side with Editor[/b] on "
"tablets.\n"
"- [b]Same as Editor[/b] will launch the Play window in the same window as the "
"Editor.\n"
"- [b]Side-by-side with Editor[/b] will launch the Play window side-by-side "
"with the Editor window.\n"
"[b]Note:[/b] Only available in the Android editor."
msgstr ""
"Указывает, как окно Play запускается относительно редактора Android.\n"
"- [b]Авто (на основе размера экрана)[/b] (по умолчанию) автоматически "
"выбирает способ запуска окна Play на основе метрик устройства и экрана. По "
"умолчанию [b]То же, что и Editor[/b] на телефонах и [b]Рядом с Editor[/b] на "
"планшетах.\n"
"- [b]То же, что и Editor[/b] запустит окно Play в том же окне, что и Editor.\n"
"- [b]Рядом с Editor[/b] запустит окно Play рядом с окном Editor.\n"
"[b]Примечание:[/b] Доступно только в редакторе Android."

msgid ""
"Overrides game embedding setting for all newly opened projects. If enabled, "
"game embedding settings are not saved."
msgstr ""
"Переопределяет настройки встраивания игры для всех вновь открытых проектов. "
"Если включено, настройки встраивания игры не сохраняются."

msgid ""
"The window mode to use to display the project when starting the project from "
"the editor.\n"
"[b]Note:[/b] Game embedding is not available for [b]\"Force Maximized\"[/b] "
"or [b]\"Force Fullscreen\"[/b]."
msgstr ""
"Режим окна, используемый для отображения проекта при запуске проекта из "
"редактора.\n"
"[b]Примечание:[/b] Встраивание игры недоступно для [b]\"Force Maximized\"[/b] "
"или [b]\"Force Fullscreen\"[/b]."

msgid ""
"The custom position to use when starting the project from the editor (in "
"pixels from the top-left corner). Only effective if [member run/"
"window_placement/rect] is set to [b]Custom Position[/b]."
msgstr ""
"Пользовательское положение, используемое при запуске проекта из редактора (в "
"пикселях от верхнего левого угла). Действует только если [member run/"
"window_placement/rect] установлено в [b]Пользовательское положение[/b]."

msgid ""
"The monitor to display the project on when starting the project from the "
"editor."
msgstr ""
"Монитор, на котором будет отображаться проект при запуске проекта из "
"редактора."

msgid ""
"If [code]true[/code], makes the caret blink according to [member text_editor/"
"appearance/caret/caret_blink_interval]. Disabling this setting can improve "
"battery life on laptops if you spend long amounts of time in the script "
"editor, since it will reduce the frequency at which the editor needs to be "
"redrawn."
msgstr ""
"Если [code]true[/code], курсор мигает в соответствии с [member text_editor/"
"appearance/caret/caret_blink_interval]. Отключение этого параметра может "
"улучшить время работы батареи на ноутбуках, если вы проводите много времени в "
"редакторе скриптов, поскольку это снизит частоту, с которой редактор должен "
"перерисовываться."

msgid ""
"The interval at which the caret will blink (in seconds). See also [member "
"text_editor/appearance/caret/caret_blink]."
msgstr ""
"Интервал, с которым курсор будет мигать (в секундах). См. также [member "
"text_editor/appearance/caret/caret_blink]."

msgid ""
"If [code]true[/code], highlights all occurrences of the currently selected "
"text in the script editor. See also [member text_editor/theme/highlighting/"
"word_highlighted_color]."
msgstr ""
"Если [code]true[/code], подсвечивает все вхождения текущего выделенного "
"текста в редакторе скриптов. См. также [member text_editor/theme/highlighting/"
"word_highlighted_color]."

msgid ""
"If [code]true[/code], colors the background of the line the caret is "
"currently on with [member text_editor/theme/highlighting/current_line_color]."
msgstr ""
"Если [code]true[/code], то фон строки, на которой в данный момент находится "
"курсор, окрашивается в [member text_editor/theme/highlighting/"
"current_line_color]."

msgid ""
"The shape of the caret to use in the script editor. [b]Line[/b] displays a "
"vertical line to the left of the current character, whereas [b]Block[/b] "
"displays an outline over the current character."
msgstr ""
"Форма курсора для использования в редакторе скриптов. [b]Линия[/b] отображает "
"вертикальную линию слева от текущего символа, тогда как [b]Блок[/b] "
"отображает контур над текущим символом."

msgid ""
"If [code]true[/code], displays a colored button before any [Color] "
"constructor in the script editor. Clicking on them allows the color to be "
"modified through a color picker."
msgstr ""
"Если [code]true[/code], отображает цветную кнопку перед любым конструктором "
"[Color] в редакторе скриптов. Нажатие на них позволяет изменять цвет с "
"помощью палитры цветов."

msgid ""
"The column at which to display a subtle line as a line length guideline for "
"scripts. This should generally be greater than [member text_editor/appearance/"
"guidelines/line_length_guideline_soft_column]."
msgstr ""
"Столбец, в котором следует отображать тонкую линию в качестве руководства по "
"длине строки для скриптов. Обычно это должно быть больше, чем [member "
"text_editor/appearance/guidelines/line_length_guideline_soft_column]."

msgid ""
"The column at which to display a [i]very[/i] subtle line as a line length "
"guideline for scripts. This should generally be lower than [member "
"text_editor/appearance/guidelines/line_length_guideline_hard_column]."
msgstr ""
"Столбец, в котором следует отображать [i]очень[/i] тонкую линию в качестве "
"руководства по длине строки для скриптов. Обычно это должно быть меньше, чем "
"[member text_editor/appearance/guidelines/line_length_guideline_hard_column]."

msgid ""
"If [code]true[/code], displays line length guidelines to help you keep line "
"lengths in check. See also [member text_editor/appearance/guidelines/"
"line_length_guideline_soft_column] and [member text_editor/appearance/"
"guidelines/line_length_guideline_hard_column]."
msgstr ""
"Если [code]true[/code], отображает рекомендации по длине строк, чтобы помочь "
"вам контролировать длину строк. См. также [member text_editor/appearance/"
"guidelines/line_length_guideline_soft_column] и [member text_editor/"
"appearance/guidelines/line_length_guideline_hard_column]."

msgid ""
"If [code]true[/code], highlights type-safe lines by displaying their line "
"number color with [member text_editor/theme/highlighting/"
"safe_line_number_color] instead of [member text_editor/theme/highlighting/"
"line_number_color]. Type-safe lines are lines of code where the type of all "
"variables is known at compile-time. These type-safe lines may run faster "
"thanks to typed instructions."
msgstr ""
"Если [code]true[/code], выделяет типобезопасные (type-safe) строки, отображая "
"цвет их номеров строк с помощью [member text_editor/theme/highlighting/"
"safe_line_number_color] вместо [member text_editor/theme/highlighting/"
"line_number_color]. Типобезопасные строки — это строки кода, в которых тип "
"всех переменных известен во время компиляции. Эти типобезопасные строки могут "
"работать быстрее благодаря типизированным инструкциям."

msgid ""
"If [code]true[/code], displays line numbers with zero padding (e.g. "
"[code]007[/code] instead of [code]7[/code])."
msgstr ""
"Если [code]true[/code], отображает номера строк с нулевым заполнением "
"(например, [code]007[/code] вместо [code]7[/code])."

msgid ""
"If [code]true[/code], displays a gutter at the left containing icons for "
"methods with signal connections and for overridden methods."
msgstr ""
"Если [code]true[/code], слева отображается область со значками методов с "
"сигнальными соединениями и переопределенных методов."

msgid "If [code]true[/code], displays line numbers in a gutter at the left."
msgstr "Если [code]true[/code], отображает номера строк в поле слева."

msgid ""
"If [member text_editor/appearance/lines/word_wrap] is set to [code]1[/code], "
"sets text wrapping mode. To see how each mode behaves, see [enum "
"TextServer.AutowrapMode]."
msgstr ""
"Если [member text_editor/appearance/lines/word_wrap] установлен в [code]1[/"
"code], устанавливает режим переноса текста. Чтобы увидеть, как ведет себя "
"каждый режим, см. [enum TextServer.AutowrapMode]."

msgid ""
"If [code]true[/code], displays the folding arrows next to indented code "
"sections and allows code folding. If [code]false[/code], hides the folding "
"arrows next to indented code sections and disallows code folding."
msgstr ""
"Если [code]true[/code], отображает стрелки сворачивания рядом с отступами "
"разделов кода и разрешает сворачивание кода. Если [code]false[/code], "
"скрывает стрелки сворачивания рядом с отступами разделов кода и запрещает "
"сворачивание кода."

msgid ""
"If [code]true[/code], wraps long lines over multiple lines to avoid "
"horizontal scrolling. This is a display-only feature; it does not actually "
"insert line breaks in your scripts."
msgstr ""
"Если [code]true[/code], длинные строки переносятся на несколько строк, чтобы "
"избежать горизонтальной прокрутки. Это функция только для отображения; она "
"фактически не вставляет разрывы строк в ваши скрипты."

msgid "The width of the minimap in the script editor (in pixels)."
msgstr "Ширина мини-карты в редакторе скриптов (в пикселях)."

msgid ""
"If [code]true[/code], draws an overview of the script near the scroll bar. "
"The minimap can be left-clicked to scroll directly to a location in an "
"\"absolute\" manner."
msgstr ""
"Если [code]true[/code], рисует обзор скрипта рядом с полосой прокрутки. Мини-"
"карту можно прокрутить левой кнопкой мыши, чтобы перейти непосредственно к "
"нужному месту «абсолютным» способом."

msgid "If [code]true[/code], draws space characters as centered points."
msgstr ""
"Если [code]true[/code], то символы пробела рисуются как центрированные точки."

msgid "If [code]true[/code], draws tab characters as chevrons."
msgstr "Если [code]true[/code], символы табуляции рисуются как шевроны."

msgid ""
"The space to add between lines (in pixels). Greater line spacing can help "
"improve readability at the cost of displaying fewer lines on screen."
msgstr ""
"Расстояние между строками (в пикселях). Больший межстрочный интервал может "
"улучшить читаемость за счет отображения меньшего количества строк на экране."

msgid ""
"If [code]true[/code], documentation tooltips will appear when hovering over a "
"symbol."
msgstr ""
"Если [code]true[/code], при наведении курсора на символ будут появляться "
"подсказки документации."

msgid ""
"If [code]true[/code], tool scripts will be automatically soft-reloaded after "
"they are saved."
msgstr ""
"Если [code]true[/code], скрипты инструментов будут автоматически "
"перезагружены после сохранения."

msgid ""
"If [code]true[/code], automatically reloads scripts and text-based shaders in "
"the editor when they have been modified and saved by external editors or "
"tools and the editor regains focus. External changes can be discarded by "
"using the Undo function after they've been loaded in the editor.\n"
"If [code]false[/code], a file conflict dialog will always be displayed when "
"the editor regains focus. This dialog allows you to choose whether to keep "
"local changes or discard them.\n"
"[b]Note:[/b] Even when this setting is [code]true[/code], a file conflict "
"dialog is still displayed in certain situations. For instance, it will "
"display when the script editor has unsaved changes that the external editor "
"did not account for."
msgstr ""
"Если [code]true[/code], автоматически перезагружает скрипты и текстовые "
"шейдеры в редакторе, когда они были изменены и сохранены внешними редакторами "
"или инструментами, и редактор снова получает фокус. Внешние изменения можно "
"отменить с помощью функции Undo после того, как они были загружены в "
"редактор.\n"
"Если [code]false[/code], диалоговое окно конфликта файлов всегда будет "
"отображаться, когда редактор снова получает фокус. Это диалоговое окно "
"позволяет вам выбрать, сохранять локальные изменения или отменять их.\n"
"[b]Примечание:[/b] Даже если этот параметр равен [code]true[/code], "
"диалоговое окно конфликта файлов все равно отображается в определенных "
"ситуациях. Например, оно будет отображаться, когда в редакторе скриптов есть "
"несохраненные изменения, которые внешний редактор не учел."

msgid ""
"If set to a value greater than [code]0[/code], automatically saves the "
"current script following the specified interval (in seconds). This can be "
"used to prevent data loss if the editor crashes."
msgstr ""
"Если установлено значение больше [code]0[/code], автоматически сохраняет "
"текущий скрипт после указанного интервала (в секундах). Это можно "
"использовать для предотвращения потери данных в случае сбоя редактора."

msgid ""
"If [code]true[/code], converts indentation to match the script editor's "
"indentation settings when saving a script. See also [member text_editor/"
"behavior/indent/type]."
msgstr ""
"Если [code]true[/code], преобразует отступы в соответствии с настройками "
"отступов редактора скриптов при сохранении скрипта. См. также [member "
"text_editor/behavior/indent/type]."

msgid ""
"If [code]true[/code], when dropping a [Resource] file to script editor while "
"[kbd]Ctrl[/kbd] is held, the resource will be preloaded with a UID. If "
"[code]false[/code], the resource will be preloaded with a path.\n"
"When you hold [kbd]Ctrl+Shift[/kbd], the behavior is reversed."
msgstr ""
"Если [code]true[/code], при перетаскивании файла [Resource] в редактор "
"скриптов, пока удерживается [kbd]Ctrl[/kbd], ресурс будет предварительно "
"загружен с UID. Если [code]false[/code], ресурс будет предварительно загружен "
"с путем.\n"
"При удерживании [kbd]Ctrl+Shift[/kbd] поведение меняется на противоположное."

msgid ""
"If [code]true[/code], opening a scene automatically opens the script attached "
"to the root node, or the topmost node if the root has no script."
msgstr ""
"Если [code]true[/code], открытие сцены автоматически открывает скрипт, "
"прикрепленный к корневому узлу, или к самому верхнему узлу, если в корне нет "
"скрипта."

msgid ""
"If [code]true[/code], reopens scripts that were opened in the last session "
"when the editor is reopened on a given project."
msgstr ""
"Если [code]true[/code], повторно открывает скрипты, которые были открыты в "
"последнем сеансе, при повторном открытии редактора для данного проекта."

msgid ""
"If [code]true[/code], trims all empty newlines after the final newline when "
"saving a script. Final newlines refer to the empty newlines found at the end "
"of files. Since these serve no practical purpose, they can and should be "
"removed to make version control diffs less noisy."
msgstr ""
"Если [code]true[/code], обрезает все пустые новые строки после последней "
"новой строки при сохранении скрипта. Последние новые строки относятся к "
"пустым новым строкам, находящимся в конце файлов. Поскольку они не имеют "
"практического значения, их можно и нужно удалять, чтобы сделать различия в "
"контроле версий менее шумными."

msgid ""
"If [code]true[/code], trims trailing whitespace when saving a script. "
"Trailing whitespace refers to tab and space characters placed at the end of "
"lines. Since these serve no practical purpose, they can and should be removed "
"to make version control diffs less noisy."
msgstr ""
"Если [code]true[/code], обрезает конечные пробелы при сохранении скрипта. "
"Конечные пробелы относятся к символам табуляции и пробела, размещенным в "
"конце строк. Поскольку они не имеют практического значения, их можно и нужно "
"удалить, чтобы сделать различия в контроле версий менее шумными."

msgid ""
"If [code]true[/code], copying or cutting without a selection is performed on "
"all lines with a caret. Otherwise, copy and cut require a selection."
msgstr ""
"Если [code]true[/code], копирование или вырезание без выделения выполняется "
"на всех строках с кареткой. В противном случае копирование и вырезание "
"требуют выделения."

msgid ""
"If [code]true[/code], automatically indents code when pressing the "
"[kbd]Enter[/kbd] key based on blocks above the new line."
msgstr ""
"Если [code]true[/code], автоматически делает отступ кода при нажатии клавиши "
"[kbd]Enter[/kbd] на основе блоков над новой строкой."

msgid ""
"If [code]true[/code], all wrapped lines are indented to the same amount as "
"the unwrapped line."
msgstr ""
"Если [code]true[/code], все перенесенные строки имеют такой же отступ, как и "
"развернутая строка."

msgid ""
"When using tab indentation, determines the length of each tab. When using "
"space indentation, determines how many spaces are inserted when pressing "
"[kbd]Tab[/kbd] and when automatic indentation is performed."
msgstr ""
"При использовании отступа табуляции определяет длину каждой табуляции. При "
"использовании отступа пробела определяет, сколько пробелов вставляется при "
"нажатии [kbd]Tab[/kbd] и когда выполняется автоматический отступ."

msgid ""
"The indentation style to use (tabs or spaces).\n"
"[b]Note:[/b] The [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_styleguide.html]GDScript style guide[/url] recommends using tabs for "
"indentation. It is advised to change this setting only if you need to work on "
"a project that currently uses spaces for indentation."
msgstr ""
"Стиль отступа, который следует использовать (табуляции или пробелы).\n"
"[b]Примечание:[/b] [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_styleguide.html]Руководство по стилю GDScript[/url] рекомендует "
"использовать табуляции для отступа. Рекомендуется изменять эту настройку "
"только в том случае, если вам нужно работать над проектом, в котором в "
"настоящее время для отступа используются пробелы."

msgid ""
"The characters to consider as word delimiters if [member text_editor/behavior/"
"navigation/use_custom_word_separators] is [code]true[/code]. This is in "
"addition to default characters if [member text_editor/behavior/navigation/"
"use_default_word_separators] is [code]true[/code]. The characters should be "
"defined without separation, for example [code]_♥=[/code]."
msgstr ""
"Символы, которые следует рассматривать как разделители слов, если [member "
"text_editor/behavior/navigation/use_custom_word_separators] имеет значение "
"[code]true[/code]. Это в дополнение к символам по умолчанию, если [member "
"text_editor/behavior/navigation/use_default_word_separators] имеет значение "
"[code]true[/code]. Символы следует определять без разделителей, например "
"[code]_♥=[/code]."

msgid ""
"If [code]true[/code], allows drag-and-dropping text in the script editor to "
"move text. Disable this if you find yourself accidentally drag-and-dropping "
"text in the script editor."
msgstr ""
"Если [code]true[/code], позволяет перетаскивать текст в редакторе скриптов "
"для перемещения текста. Отключите это, если вы случайно перетаскиваете текст "
"в редакторе скриптов."

msgid ""
"If [code]true[/code], the caret will be moved when right-clicking somewhere "
"in the script editor (like when left-clicking or middle-clicking). If "
"[code]false[/code], the caret will only be moved when left-clicking or middle-"
"clicking somewhere."
msgstr ""
"Если [code]true[/code], курсор будет перемещаться при щелчке правой кнопкой "
"мыши где-нибудь в редакторе скриптов (например, при щелчке левой или средней "
"кнопкой мыши). Если [code]false[/code], курсор будет перемещаться только при "
"щелчке левой или средней кнопкой мыши где-нибудь."

msgid ""
"If [code]true[/code], opens the script editor when connecting a signal to an "
"existing script method from the Node dock."
msgstr ""
"Если [code]true[/code], открывается редактор скриптов при подключении сигнала "
"к существующему методу скрипта из дока Node."

msgid "If [code]true[/code], allows scrolling past the end of the file."
msgstr "Если [code]true[/code], разрешает прокрутку за пределы конца файла."

msgid ""
"If [code]true[/code], enables a smooth scrolling animation when using the "
"mouse wheel to scroll. See [member text_editor/behavior/navigation/"
"v_scroll_speed] for the speed of this animation.\n"
"[b]Note:[/b] [member text_editor/behavior/navigation/smooth_scrolling] "
"currently behaves poorly in projects where [member ProjectSettings.physics/"
"common/physics_ticks_per_second] has been increased significantly from its "
"default value ([code]60[/code]). In this case, it is recommended to disable "
"this setting."
msgstr ""
"Если [code]true[/code], включает плавную анимацию прокрутки при использовании "
"колесика мыши для прокрутки. См. [member text_editor/behavior/navigation/"
"v_scroll_speed] для скорости этой анимации.\n"
"[b]Примечание:[/b] [member text_editor/behavior/navigation/smooth_scrolling] "
"в настоящее время плохо себя ведет в проектах, где [member "
"ProjectSettings.physics/common/physics_ticks_per_second] был значительно "
"увеличен по сравнению со значением по умолчанию ([code]60[/code]). В этом "
"случае рекомендуется отключить этот параметр."

msgid ""
"If [code]true[/code], prevents automatically switching between the Script and "
"2D/3D screens when selecting a node in the Scene tree dock."
msgstr ""
"Если [code]true[/code], предотвращается автоматическое переключение между "
"экранами сценария и 2D/3D при выборе узла в доке дерева сцены."

msgid ""
"If [code]true[/code], uses the characters in [member text_editor/behavior/"
"navigation/custom_word_separators] as word separators for word navigation and "
"operations. This is in addition to the default characters if [member "
"text_editor/behavior/navigation/use_default_word_separators] is also enabled. "
"Word navigation and operations include double-clicking on a word or holding "
"[kbd]Ctrl[/kbd] ([kbd]Cmd[/kbd] on macOS) while pressing [kbd]left[/kbd], "
"[kbd]right[/kbd], [kbd]backspace[/kbd], or [kbd]delete[/kbd]."
msgstr ""
"Если [code]true[/code], использует символы в [member text_editor/behavior/"
"navigation/custom_word_separators] в качестве разделителей слов для навигации "
"по словам и операций. Это в дополнение к символам по умолчанию, если [member "
"text_editor/behavior/navigation/use_default_word_separators] также включено. "
"Навигация по словам и операции включают двойной щелчок по слову или удержание "
"[kbd]Ctrl[/kbd] ([kbd]Cmd[/kbd] на macOS) при нажатии [kbd]left[/kbd], "
"[kbd]right[/kbd], [kbd]backspace[/kbd] или [kbd]delete[/kbd]."

msgid ""
"If [code]true[/code], uses the characters in [code]`!\"#$%&'()*+,-./:;<=>?"
"@[\\]^`{|}~[/code], the Unicode General Punctuation table, and the Unicode "
"CJK Punctuation table as word separators for word navigation and operations. "
"If [code]false[/code], a subset of these characters are used and does not "
"include the characters [code]<>$~^=+|[/code]. This is in addition to custom "
"characters if [member text_editor/behavior/navigation/"
"use_custom_word_separators] is also enabled. These characters are used to "
"determine where a word stops. Word navigation and operations include double-"
"clicking on a word or holding [kbd]Ctrl[/kbd] ([kbd]Cmd[/kbd] on macOS) while "
"pressing [kbd]left[/kbd], [kbd]right[/kbd], [kbd]backspace[/kbd], or "
"[kbd]delete[/kbd]."
msgstr ""
"Если [code]true[/code], то в качестве разделителей слов для навигации по "
"словам и операций используются символы из [code]`!\"#$%&'()*+,-./:;<=>?"
"@[\\]^`{|}~[/code], таблицы общей пунктуации Unicode и таблицы пунктуации "
"Unicode CJK. Если [code]false[/code], то используется подмножество этих "
"символов, которое не включает символы [code]<>$~^=+|[/code]. Это в дополнение "
"к пользовательским символам, если также включен [member text_editor/behavior/"
"navigation/use_custom_word_separators]. Эти символы используются для "
"определения того, где заканчивается слово. Навигация по словам и операции "
"включают двойной щелчок по слову или удержание [kbd]Ctrl[/kbd] ([kbd]Cmd[/"
"kbd] на macOS) при нажатии [kbd]left[/kbd], [kbd]right[/kbd], [kbd]backspace[/"
"kbd] или [kbd]delete[/kbd]."

msgid ""
"The speed of scrolling in lines per second when [member text_editor/behavior/"
"navigation/smooth_scrolling] is [code]true[/code]. Higher values make the "
"script scroll by faster when using the mouse wheel.\n"
"[b]Note:[/b] You can hold down [kbd]Alt[/kbd] while using the mouse wheel to "
"temporarily scroll 5 times faster."
msgstr ""
"Скорость прокрутки строк в секунду, когда [member text_editor/behavior/"
"navigation/smooth_scrolling] равно [code]true[/code]. Более высокие значения "
"ускоряют прокрутку скрипта при использовании колесика мыши.\n"
"[b]Примечание:[/b] Вы можете удерживать [kbd]Alt[/kbd] при использовании "
"колесика мыши, чтобы временно прокручивать в 5 раз быстрее."

msgid ""
"If [code]true[/code], uses [NodePath] instead of [String] when appropriate "
"for code autocompletion or for drag and dropping object properties into the "
"script editor."
msgstr ""
"Если [code]true[/code], используется [NodePath] вместо [String], когда это "
"необходимо для автодополнения кода или для перетаскивания свойств объекта в "
"редактор скриптов."

msgid ""
"If [code]true[/code], uses [StringName] instead of [String] when appropriate "
"for code autocompletion."
msgstr ""
"Если [code]true[/code], то для автодополнения кода используется [StringName] "
"вместо [String]."

msgid ""
"If [code]true[/code], automatically adds [url=$DOCS_URL/tutorials/scripting/"
"gdscript/static_typing.html]GDScript static typing[/url] (such as [code]-> "
"void[/code] and [code]: int[/code]) in many situations where it's possible "
"to, including when:\n"
"- Accepting a suggestion from code autocompletion;\n"
"- Creating a new script from a template;\n"
"- Connecting signals from the Node dock;\n"
"- Creating variables prefixed with [annotation @GDScript.@onready], by "
"dropping nodes from the Scene dock into the script editor while holding "
"[kbd]Ctrl[/kbd]."
msgstr ""
"Если [code]true[/code], автоматически добавляется [url=$DOCS_URL/tutorials/"
"scripting/gdscript/static_typing.html]статическая типизация GDScript[/url] "
"(например, [code]-> void[/code] и [code]: int[/code]) во многих ситуациях, "
"где это возможно, в том числе при:\n"
"- принятии подсказки от автодополнения кода;\n"
"- создании нового скрипта из шаблона;\n"
"- подключении сигналов из дока Node;\n"
"- создании переменных с префиксом [annotation @GDScript.@onready] путём "
"перетаскивания узлов из дока Scene в редактор скриптов с удержанием клавиши "
"[kbd]Ctrl[/kbd]."

msgid ""
"If [code]true[/code], automatically inserts the matching closing brace when "
"the opening brace is inserted by typing or autocompletion. Also automatically "
"removes the closing brace when pressing [kbd]Backspace[/kbd] on the opening "
"brace. This includes brackets ([code]()[/code], [code][][/code], [code]{}[/"
"code]), string quotation marks ([code]''[/code], [code]\"\"[/code]), and "
"comments ([code]/**/[/code]) if the language supports it."
msgstr ""
"Если [code]true[/code], автоматически вставляет соответствующую закрывающую "
"скобку, когда открывающая скобка вставляется при вводе или автодополнении. "
"Также автоматически удаляет закрывающую скобку при нажатии [kbd]Backspace[/"
"kbd] на открывающей скобке. Это включает в себя скобки ([code]()[/code], "
"[code][][/code], [code]{}[/code]), кавычки строк ([code]''[/code], [code]"
"\"\"[/code]) и комментарии ([code]/**/[/code]), если язык поддерживает их."

msgid ""
"The delay in seconds after which autocompletion suggestions should be "
"displayed when the user stops typing."
msgstr ""
"Задержка в секундах, по истечении которой должны отображаться предложения "
"автодополнения, когда пользователь заканчивает печатать."

msgid ""
"If [code]true[/code], code completion will be triggered automatically after "
"[member text_editor/completion/code_complete_delay]. Even if [code]false[/"
"code], code completion can be triggered manually with the "
"[code]ui_text_completion_query[/code] action (by default [kbd]Ctrl + Space[/"
"kbd] or [kbd]Cmd + Space[/kbd] on macOS)."
msgstr ""
"Если [code]true[/code], автодополнение кода будет запущено автоматически "
"после [member text_editor/completion/code_complete_delay]. Даже если "
"[code]false[/code], автодополнение кода можно запустить вручную с помощью "
"действия [code]ui_text_completion_query[/code] (по умолчанию [kbd]Ctrl + "
"Space[/kbd] или [kbd]Cmd + Space[/kbd] на macOS)."

msgid ""
"If [code]true[/code] enables the coloring for some items in the "
"autocompletion suggestions, like vector components."
msgstr ""
"Если [code]true[/code], включается раскраска некоторых элементов в "
"предложениях автодополнения, например векторных компонентов."

msgid ""
"If [code]true[/code], provides autocompletion suggestions for file paths in "
"methods such as [code]load()[/code] and [code]preload()[/code]."
msgstr ""
"Если [code]true[/code], предоставляет предложения автодополнения для путей к "
"файлам в таких методах, как [code]load()[/code] и [code]preload()[/code]."

msgid ""
"The delay in seconds after which the script editor should check for errors "
"when the user stops typing."
msgstr ""
"Задержка в секундах, по истечении которой редактор скриптов должен проверить "
"наличие ошибок, когда пользователь прекращает печатать."

msgid ""
"The delay used instead of [member text_editor/completion/idle_parse_delay], "
"when the parser has found errors. A lower value should feel more responsive "
"while fixing code, but may cause notable stuttering and increase CPU usage."
msgstr ""
"Задержка, используемая вместо [member text_editor/completion/"
"idle_parse_delay], когда парсер обнаружил ошибки. Более низкое значение "
"должно ощущаться более отзывчивым при исправлении кода, но может вызвать "
"заметное подтормаживание и увеличить использование ЦП."

msgid ""
"If [code]true[/code], the code completion tooltip will appear below the "
"current line unless there is no space on screen below the current line. If "
"[code]false[/code], the code completion tooltip will appear above the current "
"line."
msgstr ""
"Если [code]true[/code], подсказка автодополнения кода появится под текущей "
"строкой, если на экране нет места под текущей строкой. Если [code]false[/"
"code], подсказка автодополнения кода появится над текущей строкой."

msgid ""
"If [code]true[/code], performs string autocompletion with single quotes. If "
"[code]false[/code], performs string autocompletion with double quotes (which "
"matches the [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_styleguide.html]GDScript style guide[/url])."
msgstr ""
"Если [code]true[/code], выполняет автодополнение строки с одинарными "
"кавычками. Если [code]false[/code], выполняет автодополнение строки с "
"двойными кавычками (что соответствует [url=$DOCS_URL/tutorials/scripting/"
"gdscript/gdscript_styleguide.html]руководству по стилю GDScript[/url])."

msgid ""
"The command-line arguments to pass to the external text editor that is run "
"when [member text_editor/external/use_external_editor] is [code]true[/code]. "
"See also [member text_editor/external/exec_path]."
msgstr ""
"Аргументы командной строки для передачи внешнему текстовому редактору, "
"который запускается, когда [member text_editor/external/use_external_editor] "
"равен [code]true[/code]. См. также [member text_editor/external/exec_path]."

msgid ""
"The path to the text editor executable used to edit text files if [member "
"text_editor/external/use_external_editor] is [code]true[/code]."
msgstr ""
"Путь к исполняемому файлу текстового редактора, используемого для "
"редактирования текстовых файлов, если [member text_editor/external/"
"use_external_editor] равен [code]true[/code]."

msgid ""
"If [code]true[/code], uses an external editor instead of the built-in Script "
"Editor. See also [member text_editor/external/exec_path] and [member "
"text_editor/external/exec_flags]."
msgstr ""
"Если [code]true[/code], используется внешний редактор вместо встроенного "
"редактора скриптов. См. также [member text_editor/external/exec_path] и "
"[member text_editor/external/exec_flags]."

msgid ""
"Controls which multi-line code blocks should be displayed in the editor help. "
"This setting does not affect single-line code literals in the editor help."
msgstr ""
"Управляет тем, какие многострочные блоки кода должны отображаться в справке "
"редактора. Эта настройка не влияет на однострочные литералы кода в справке "
"редактора."

msgid "The font size to use for the editor help (built-in class reference)."
msgstr ""
"Размер шрифта, используемый для справки редактора (встроенная ссылка на "
"класс)."

msgid ""
"The font size to use for code samples in the editor help (built-in class "
"reference)."
msgstr ""
"Размер шрифта, используемый для примеров кода в справке редактора (встроенная "
"ссылка на класс)."

msgid ""
"The font size to use for headings in the editor help (built-in class "
"reference)."
msgstr ""
"Размер шрифта, используемый для заголовков в справке редактора (встроенная "
"ссылка на класс)."

msgid ""
"If [code]true[/code], displays a table of contents at the left of the editor "
"help (at the location where the members overview would appear when editing a "
"script)."
msgstr ""
"Если [code]true[/code], отображает оглавление слева от справки редактора (в "
"том месте, где при редактировании скрипта будет отображаться обзор "
"участников)."

msgid ""
"If [code]true[/code], the script's method list in the Script Editor is sorted "
"alphabetically."
msgstr ""
"Если [code]true[/code], список методов скрипта в редакторе скриптов "
"сортируется в алфавитном порядке."

msgid ""
"If [code]true[/code], class reference pages are grouped together at the "
"bottom of the Script Editor's script list."
msgstr ""
"Если [code]true[/code], страницы ссылок на классы группируются в нижней части "
"списка скриптов редактора скриптов."

msgid ""
"If [code]true[/code], the scripts that are used by the current scene are "
"highlighted in the Script Editor's script list."
msgstr ""
"Если [code]true[/code], скрипты, используемые текущей сценой, выделяются в "
"списке скриптов редактора скриптов."

msgid ""
"Specifies how script paths should be displayed in Script Editor's script "
"list. If using the \"Name\" option and some scripts share the same file name, "
"more parts of their paths are revealed to avoid conflicts."
msgstr ""
"Указывает, как пути к скриптам должны отображаться в списке скриптов "
"редактора скриптов. Если используется опция «Имя», а некоторые скрипты имеют "
"одинаковое имя файла, то для избежания конфликтов раскрываются дополнительные "
"части их путей."

msgid ""
"If [code]true[/code], the names of recently opened scripts in the Script "
"Editor are highlighted with the accent color, with its intensity based on how "
"recently they were opened."
msgstr ""
"Если [code]true[/code], названия недавно открытых скриптов в редакторе "
"скриптов выделяются акцентным цветом, интенсивность которого зависит от того, "
"как давно они были открыты."

msgid ""
"How many script names can be highlighted at most, if [member text_editor/"
"script_list/script_temperature_enabled] is [code]true[/code]. Scripts older "
"than this value use the default font color."
msgstr ""
"Сколько имен скриптов может быть выделено максимально, если [member "
"text_editor/script_list/script_temperature_enabled] равно [code]true[/code]. "
"Скрипты старше этого значения используют цвет шрифта по умолчанию."

msgid ""
"If [code]true[/code], displays an overview of the current script's member "
"variables and functions at the left of the script editor. See also [member "
"text_editor/script_list/sort_members_outline_alphabetically]."
msgstr ""
"Если [code]true[/code], отображает обзор переменных-членов и функций текущего "
"скрипта слева от редактора скриптов. См. также [member text_editor/"
"script_list/sort_members_outline_alphabetically]."

msgid ""
"If [code]true[/code], sorts the members outline (located at the left of the "
"script editor) using alphabetical order. If [code]false[/code], sorts the "
"members outline depending on the order in which members are found in the "
"script.\n"
"[b]Note:[/b] Only effective if [member text_editor/script_list/"
"show_members_overview] is [code]true[/code]."
msgstr ""
"Если [code]true[/code], сортирует структуру членов (расположенную слева от "
"редактора скрипта) в алфавитном порядке. Если [code]false[/code], сортирует "
"структуру членов в зависимости от порядка, в котором члены находятся в "
"скрипте.\n"
"[b]Примечание:[/b] Эффективно только если [member text_editor/script_list/"
"show_members_overview] равно [code]true[/code]."

msgid "Specifies sorting used for Script Editor's open script list."
msgstr ""
"Задает сортировку, используемую для открытого списка скриптов редактора "
"скриптов."

msgid ""
"The syntax theme to use in the script editor.\n"
"You can save your own syntax theme from your current settings by using "
"[b]File > Theme > Save As...[/b] at the top of the script editor. The syntax "
"theme will then be available locally in the list of color themes.\n"
"You can find additional syntax themes to install in the [url=https://"
"github.com/godotengine/godot-syntax-themes]godot-syntax-themes[/url] "
"repository."
msgstr ""
"Тема синтаксиса для использования в редакторе скриптов.\n"
"Вы можете сохранить собственную тему синтаксиса из текущих настроек, "
"используя [b]Файл > Тема > Сохранить как...[/b] в верхней части редактора "
"скриптов. Тема синтаксиса затем будет доступна локально в списке цветовых "
"тем.\n"
"Вы можете найти дополнительные темы синтаксиса для установки в репозитории "
"[url=https://github.com/godotengine/godot-syntax-themes]godot-syntax-themes[/"
"url]."

msgid ""
"The script editor's background color. If set to a translucent color, the "
"editor theme's base color will be visible behind."
msgstr ""
"Цвет фона редактора скриптов. Если задан полупрозрачный цвет, то базовый цвет "
"темы редактора будет виден сзади."

msgid ""
"The script editor's base type color (used for types like [Vector2], "
"[Vector3], [Color], ...)."
msgstr ""
"Цвет базового типа редактора скриптов (используется для таких типов, как "
"[Vector2], [Vector3], [Color], ...)."

msgid "The script editor's bookmark icon color (displayed in the gutter)."
msgstr "Цвет значка закладки редактора скриптов (отображается в поле ввода)."

msgid ""
"The script editor's brace mismatch color. Used when the caret is currently on "
"a mismatched brace, parenthesis or bracket character."
msgstr ""
"Цвет несовпадения скобок редактора скриптов. Используется, когда курсор в "
"данный момент находится на несовпадающем символе скобки, круглой скобки или "
"квадратной скобки."

msgid "The script editor's breakpoint icon color (displayed in the gutter)."
msgstr ""
"Цвет значка точки останова редактора скриптов (отображается в поле ввода)."

msgid ""
"The script editor's caret background color.\n"
"[b]Note:[/b] This setting has no effect as it's currently unused."
msgstr ""
"Цвет фона курсора редактора скриптов.\n"
"[b]Примечание:[/b] Эта настройка не имеет эффекта, так как в настоящее время "
"не используется."

msgid "The script editor's caret color."
msgstr "Цвет курсора редактора сценария."

msgid ""
"The script editor's color for the code folding icon (displayed in the gutter)."
msgstr ""
"Цвет значка сворачивания кода в редакторе скриптов (отображается в поле "
"ввода)."

msgid ""
"The script editor's comment color.\n"
"[b]Note:[/b] In GDScript, unlike Python, multiline strings are not considered "
"to be comments, and will use the string highlighting color instead."
msgstr ""
"Цвет комментария редактора скрипта.\n"
"[b]Примечание:[/b] В GDScript, в отличие от Python, многострочные строки не "
"считаются комментариями и вместо этого будут использовать цвет подсветки "
"строки."

msgid ""
"The script editor's critical comment marker text color. These markers are "
"determined by [member text_editor/theme/highlighting/comment_markers/"
"critical_list]."
msgstr ""
"Цвет текста маркера критических комментариев редактора скрипта. Эти маркеры "
"определяются [member text_editor/theme/highlighting/comment_markers/"
"critical_list]."

msgid ""
"A comma-separated list of case-sensitive words to highlight in comments. The "
"text will be highlighted in the script editor with the [member text_editor/"
"theme/highlighting/comment_markers/critical_color] color. These must not "
"include spaces or symbols or they will not be highlighted.\n"
"[b]Note:[/b] This is only implemented in the GDScript syntax highlighter."
msgstr ""
"Список слов, разделённых запятыми, с учётом регистра, которые нужно выделить "
"в комментариях. Текст будет подсвечен в редакторе скриптов цветом [member "
"text_editor/theme/highlighting/comment_markers/critical_color]. В тексте не "
"должно быть пробелов и символов, иначе он не будет подсвечен.\n"
"[b]Примечание:[/b] Это реализовано только в подсветке синтаксиса GDScript."

msgid ""
"The script editor's notice comment marker text color. These markers are "
"determined by [member text_editor/theme/highlighting/comment_markers/"
"notice_list]."
msgstr ""
"Цвет текста маркера комментария к уведомлению редактора скрипта. Эти маркеры "
"определяются [member text_editor/theme/highlighting/comment_markers/"
"notice_list]."

msgid ""
"A comma-separated list of case-sensitive words to highlight in comments. The "
"text will be highlighted in the script editor with the [member text_editor/"
"theme/highlighting/comment_markers/notice_color] color. These must not "
"include spaces or symbols or they will not be highlighted.\n"
"[b]Note:[/b] This is only implemented in the GDScript syntax highlighter."
msgstr ""
"Список слов, разделённых запятыми, с учётом регистра, которые нужно выделить "
"в комментариях. Текст будет подсвечен в редакторе скриптов цветом [member "
"text_editor/theme/highlighting/comment_markers/notice_color]. В тексте не "
"должно быть пробелов и символов, иначе он не будет подсвечен.\n"
"[b]Примечание:[/b] Это реализовано только в подсветке синтаксиса GDScript."

msgid ""
"The script editor's warning comment marker text color. These markers are "
"determined by [member text_editor/theme/highlighting/comment_markers/"
"warning_list]."
msgstr ""
"Цвет текста маркера комментария предупреждения редактора скрипта. Эти маркеры "
"определяются [member text_editor/theme/highlighting/comment_markers/"
"warning_list]."

msgid ""
"A comma-separated list of case-sensitive words to highlight in comments. The "
"text will be highlighted in the script editor with the [member text_editor/"
"theme/highlighting/comment_markers/warning_color] color. These must not "
"include spaces or symbols or they will not be highlighted.\n"
"[b]Note:[/b] This is only implemented in the GDScript syntax highlighter."
msgstr ""
"Список слов, разделённых запятыми, с учётом регистра, которые нужно выделить "
"в комментариях. Текст будет подсвечен в редакторе скриптов цветом [member "
"text_editor/theme/highlighting/comment_markers/warning_color]. В тексте не "
"должно быть пробелов и символов, иначе он не будет подсвечен.\n"
"[b]Примечание:[/b] Это реализовано только в подсветке синтаксиса GDScript."

msgid "The script editor's autocompletion box background color."
msgstr "Цвет фона поля автодополнения редактора скриптов."

msgid ""
"The script editor's autocompletion box background color to highlight existing "
"characters in the completion results. This should be a translucent color so "
"that [member text_editor/theme/highlighting/completion_selected_color] can be "
"seen behind."
msgstr ""
"Цвет фона поля автодополнения редактора скриптов для выделения существующих "
"символов в результатах дополнения. Это должен быть полупрозрачный цвет, чтобы "
"[member text_editor/theme/highlighting/completion_selected_color] можно было "
"увидеть позади."

msgid "The script editor's autocompletion box text color."
msgstr "Цвет текста поля автодополнения редактора скриптов."

msgid "The script editor's autocompletion box scroll bar color."
msgstr "Цвет полосы прокрутки поля автодополнения редактора скриптов."

msgid ""
"The script editor's autocompletion box scroll bar color when hovered or "
"pressed with the mouse."
msgstr ""
"Цвет полосы прокрутки поля автодополнения редактора скриптов при наведении "
"или нажатии мыши."

msgid ""
"The script editor's autocompletion box background color for the currently "
"selected line."
msgstr ""
"Цвет фона поля автодополнения редактора скриптов для текущей выбранной строки."

msgid ""
"The script editor's control flow keyword color (used for keywords like "
"[code]if[/code], [code]for[/code], [code]return[/code], ...)."
msgstr ""
"Цвет ключевого слова потока управления редактора скриптов (используется для "
"таких ключевых слов, как [code]if[/code], [code]for[/code], [code]return[/"
"code], ...)."

msgid ""
"The script editor's background color for the line the caret is currently on. "
"This should be set to a translucent color so that it can display on top of "
"other line color modifiers such as [member text_editor/theme/highlighting/"
"mark_color]."
msgstr ""
"Цвет фона редактора скриптов для строки, на которой в данный момент находится "
"курсор. Он должен быть установлен на полупрозрачный цвет, чтобы он мог "
"отображаться поверх других модификаторов цвета строки, таких как [member "
"text_editor/theme/highlighting/mark_color]."

msgid ""
"The script editor's documentation comment color. In GDScript, this is used "
"for comments starting with [code]##[/code]. In C#, this is used for comments "
"starting with [code]///[/code] or [code]/**[/code]."
msgstr ""
"Цвет комментариев к документации редактора скриптов. В GDScript это "
"используется для комментариев, начинающихся с [code]##[/code]. В C# это "
"используется для комментариев, начинающихся с [code]///[/code] или [code]/**[/"
"code]."

msgid "The script editor's engine type color ([Object], [Mesh], [Node], ...)."
msgstr "Цвет типов движка в редакторе скриптов ([Object], [Mesh], [Node], ...)."

msgid ""
"The script editor's color for the debugger's executing line icon (displayed "
"in the gutter)."
msgstr ""
"Цвет редактора скриптов для значка строки выполнения отладчика (отображается "
"в области редактирования)."

msgid ""
"The script editor's background line highlighting color for folded code region."
msgstr ""
"Возвращает косинус параметра.Цвет подсветки фоновой строки редактора скриптов "
"для свернутой области кода."

msgid ""
"The script editor's function call color.\n"
"[b]Note:[/b] When using the GDScript syntax highlighter, this is only used "
"when calling some functions since function definitions and global functions "
"have their own colors [member text_editor/theme/highlighting/gdscript/"
"function_definition_color] and [member text_editor/theme/highlighting/"
"gdscript/global_function_color]."
msgstr ""
"Цвет вызова функции редактора скриптов.\n"
"[b]Примечание:[/b] При использовании подсветки синтаксиса GDScript она "
"применяется только при вызове некоторых функций, поскольку определения "
"функций и глобальные функции имеют собственные цвета [member text_editor/"
"theme/highlighting/gdscript/function_definition_color] и [member text_editor/"
"theme/highlighting/gdscript/global_function_color]."

msgid ""
"The GDScript syntax highlighter text color for annotations (e.g. "
"[code]@export[/code])."
msgstr ""
"Цвет текста подсветки синтаксиса GDScript для аннотаций (например, "
"[code]@export[/code])."

msgid ""
"The GDScript syntax highlighter text color for function definitions (e.g. the "
"[code]_ready[/code] in [code]func _ready():[/code])."
msgstr ""
"Цвет текста подсветки синтаксиса GDScript для определений функций (например, "
"[code]_ready[/code] в [code]func _ready():[/code])."

msgid ""
"The GDScript syntax highlighter text color for global functions, such as the "
"ones in [@GlobalScope] (e.g. [code]preload()[/code])."
msgstr ""
"Цвет текста подсветки синтаксиса GDScript для глобальных функций, таких как в "
"[@GlobalScope] (например, [code]preload()[/code])."

msgid ""
"The GDScript syntax highlighter text color for [NodePath] literals (e.g. "
"[code]^\"position:x\"[/code])."
msgstr ""
"Цвет текста подсветки синтаксиса GDScript для литералов [NodePath] (например, "
"[code]^\"position:x\"[/code])."

msgid ""
"The GDScript syntax highlighter text color for node reference literals (e.g. "
"[code]$\"Sprite\"[/code] and [code]%\"Sprite\"[/code]])."
msgstr ""
"Цвет текста подсветки синтаксиса GDScript для литералов ссылок на узлы "
"(например, [code]$\"Sprite\"[/code] и [code]%\"Sprite\"[/code]])."

msgid ""
"The GDScript syntax highlighter text color for [StringName] literals (e.g. "
"[code]&\"example\"[/code])."
msgstr ""
"Цвет текста подсветки синтаксиса GDScript для литералов [StringName] "
"(например, [code]&\"example\"[/code])."

msgid ""
"The script editor's non-control flow keyword color (used for keywords like "
"[code]var[/code], [code]func[/code], [code]extends[/code], ...)."
msgstr ""
"Цвет ключевого слова, не относящегося к потоку управления, редактора скриптов "
"(используется для таких ключевых слов, как [code]var[/code], [code]func[/"
"code], [code]extends[/code], ...)."

msgid ""
"The script editor's color for the line length guideline. The \"hard\" line "
"length guideline will be drawn with this color, whereas the \"soft\" line "
"length guideline will be drawn with half of its opacity."
msgstr ""
"Цвет редактора скриптов для направляющей длины линии. «Жесткая» направляющая "
"длины линии будет нарисована этим цветом, тогда как «мягкая» направляющая "
"длины линии будет нарисована с половиной своей непрозрачности."

msgid ""
"The script editor's color for line numbers. See also [member text_editor/"
"theme/highlighting/safe_line_number_color]."
msgstr ""
"Цвет редактора скриптов для номеров строк. См. также [member text_editor/"
"theme/highlighting/safe_line_number_color]."

msgid ""
"The script editor's background color for lines with errors. This should be "
"set to a translucent color so that it can display on top of other line color "
"modifiers such as [member text_editor/theme/highlighting/current_line_color]."
msgstr ""
"Цвет фона редактора скриптов для строк с ошибками. Он должен быть установлен "
"на полупрозрачный цвет, чтобы он мог отображаться поверх других модификаторов "
"цвета строк, таких как [member text_editor/theme/highlighting/"
"current_line_color]."

msgid ""
"The script editor's color for member variables on objects (e.g. "
"[code]self.some_property[/code]).\n"
"[b]Note:[/b] This color is not used for local variable declaration and access."
msgstr ""
"Цвет редактора скриптов для переменных-членов объектов (например, "
"[code]self.some_property[/code]).\n"
"[b]Примечание:[/b] Этот цвет не используется для объявления и доступа к "
"локальным переменным."

msgid "The script editor's color for numbers (integer and floating-point)."
msgstr "Цвет редактора скриптов для чисел (целых и с плавающей точкой)."

msgid ""
"The script editor's color for type-safe line numbers. See also [member "
"text_editor/theme/highlighting/line_number_color].\n"
"[b]Note:[/b] Only displayed if [member text_editor/appearance/gutters/"
"highlight_type_safe_lines] is [code]true[/code]."
msgstr ""
"Цвет редактора скриптов для типобезопасных номеров строк. См. также [member "
"text_editor/theme/highlighting/line_number_color].\n"
"[b]Примечание:[/b] Отображается только если [member text_editor/appearance/"
"gutters/highlight_type_safe_lines] равно [code]true[/code]."

msgid ""
"The script editor's color for the border of search results. This border helps "
"bring further attention to the search result. Set this color's opacity to 0 "
"to disable the border."
msgstr ""
"Цвет редактора скриптов для границы результатов поиска. Эта граница помогает "
"привлечь дополнительное внимание к результату поиска. Установите "
"непрозрачность этого цвета на 0, чтобы отключить границу."

msgid "The script editor's background color for search results."
msgstr "Цвет фона редактора скриптов для результатов поиска."

msgid "The script editor's background color for the currently selected text."
msgstr "Цвет фона редактора скриптов для текущего выделенного текста."

msgid "The script editor's color for strings (single-line and multi-line)."
msgstr "Цвет редактора скриптов для строк (однострочных и многострочных)."

msgid ""
"The script editor's color for operators ([code]( ) [ ] { } + - * /[/"
"code], ...)."
msgstr ""
"Цвет редактора скриптов для операторов ([code]( ) [ ] { } + - * /[/"
"code], ...)."

msgid ""
"The script editor's color for text not highlighted by any syntax highlighting "
"rule."
msgstr ""
"Цвет редактора скриптов для текста, не выделенного ни одним правилом "
"подсветки синтаксиса."

msgid ""
"The script editor's background color for text. This should be set to a "
"translucent color so that it can display on top of other line color modifiers "
"such as [member text_editor/theme/highlighting/current_line_color]."
msgstr ""
"Цвет фона редактора скриптов для текста. Он должен быть установлен на "
"полупрозрачный цвет, чтобы он мог отображаться поверх других модификаторов "
"цвета линии, таких как [member text_editor/theme/highlighting/"
"current_line_color]."

msgid ""
"The script editor's color for user-defined types (using [code]class_name[/"
"code])."
msgstr ""
"Цвет редактора скриптов для пользовательских типов (использующих "
"[code]class_name[/code])."

msgid ""
"The script editor's background color for lines with warnings. This should be "
"set to a translucent color so that it can display on top of other line color "
"modifiers such as [member text_editor/theme/highlighting/current_line_color]."
msgstr ""
"Цвет фона редактора скриптов для строк с предупреждениями. Он должен быть "
"установлен на полупрозрачный цвет, чтобы он мог отображаться поверх других "
"модификаторов цвета строк, таких как [member text_editor/theme/highlighting/"
"current_line_color]."

msgid ""
"The script editor's color for words highlighted by selecting them. Only "
"visible if [member text_editor/appearance/caret/highlight_all_occurrences] is "
"[code]true[/code]."
msgstr ""
"Цвет редактора скриптов для слов, выделенных при их выборе. Видно только если "
"[member text_editor/appearance/caret/highlight_all_occurrences] равно "
"[code]true[/code]."

msgid ""
"Path to private SSH key file for the editor's Version Control integration "
"credentials."
msgstr ""
"Путь к файлу закрытого ключа SSH для учетных данных интеграции редактора с "
"системой контроля версий."

msgid ""
"Path to public SSH key file for the editor's Version Control integration "
"credentials."
msgstr ""
"Путь к файлу открытого ключа SSH для учетных данных интеграции редактора с "
"системой контроля версий."

msgid "Default username for editor's Version Control integration."
msgstr ""
"Имя пользователя по умолчанию для интеграции редактора с системой контроля "
"версий."

msgid "Emitted after any editor setting has changed."
msgstr "Выдается после изменения каких-либо настроек редактора."

msgid ""
"Emitted after any editor setting has changed. It's used by various editor "
"plugins to update their visuals on theme changes or logic on configuration "
"changes."
msgstr ""
"Выдается после изменения любой настройки редактора. Используется различными "
"плагинами редактора для обновления визуальных элементов при изменении темы "
"или логики при изменении конфигурации."

msgid "Godot editor's control for editing numeric values."
msgstr ""
"Элемент управления редактора Godot для редактирования числовых значений."

msgid ""
"This [Control] node is used in the editor's Inspector dock to allow editing "
"of numeric values. Can be used with [EditorInspectorPlugin] to recreate the "
"same behavior.\n"
"If the [member Range.step] value is [code]1[/code], the [EditorSpinSlider] "
"will display up/down arrows, similar to [SpinBox]. If the [member Range.step] "
"value is not [code]1[/code], a slider will be displayed instead."
msgstr ""
"Этот узел [Control] используется в доке Inspector редактора для возможности "
"редактирования числовых значений. Может использоваться с "
"[EditorInspectorPlugin] для воссоздания того же поведения.\n"
"Если значение [member Range.step] равно [code]1[/code], [EditorSpinSlider] "
"будет отображать стрелки вверх/вниз, аналогичные [SpinBox]. Если значение "
"[member Range.step] не равно [code]1[/code], вместо этого будет отображаться "
"ползунок."

msgid ""
"If [code]true[/code], the [EditorSpinSlider] is considered to be editing an "
"integer value. If [code]false[/code], the [EditorSpinSlider] is considered to "
"be editing a floating-point value. This is used to determine whether a slider "
"should be drawn. The slider is only drawn for floats; integers use up-down "
"arrows similar to [SpinBox] instead."
msgstr ""
"Если [code]true[/code], [EditorSpinSlider] считается редактирующим "
"целочисленное значение. Если [code]false[/code], [EditorSpinSlider] считается "
"редактирующим значение с плавающей точкой. Это используется для определения "
"того, следует ли рисовать ползунок. Ползунок рисуется только для чисел с "
"плавающей точкой; целые числа используют стрелки вверх-вниз, похожие на "
"[SpinBox]."

msgid "If [code]true[/code], the slider will not draw background."
msgstr "Если [code]true[/code], ползунок не будет рисовать фон."

msgid "If [code]true[/code], the slider and up/down arrows are hidden."
msgstr "Если [code]true[/code], ползунок и стрелки вверх/вниз скрыты."

msgid "The text that displays to the left of the value."
msgstr "Текст, отображаемый слева от значения."

msgid "If [code]true[/code], the slider can't be interacted with."
msgstr "Если [code]true[/code], с ползунком нельзя взаимодействовать."

msgid ""
"The suffix to display after the value (in a faded color). This should "
"generally be a plural word. You may have to use an abbreviation if the suffix "
"is too long to be displayed."
msgstr ""
"Суффикс для отображения после значения (блеклым цветом). Обычно это должно "
"быть слово во множественном числе. Возможно, вам придется использовать "
"сокращение, если суффикс слишком длинный для отображения."

msgid "Emitted when the spinner/slider is grabbed."
msgstr "Выдается при захвате спиннера/слайдера."

msgid "Emitted when the spinner/slider is ungrabbed."
msgstr "Выдается, когда спиннер/слайдер отпущен."

msgid "Emitted when the updown button is pressed."
msgstr "Издается при нажатии кнопки «вверх-вниз»."

msgid "Emitted when the value form gains focus."
msgstr "Выдается, когда форма значения получает фокус."

msgid "Emitted when the value form loses focus."
msgstr "Выдается, когда форма значения теряет фокус."

msgid "Single texture representing both the up and down buttons."
msgstr "Одна текстура, представляющая кнопки «вверх» и «вниз»."

msgid ""
"Single texture representing both the up and down buttons, when the control is "
"readonly or disabled."
msgstr ""
"Одна текстура, представляющая кнопки «вверх» и «вниз», когда элемент "
"управления доступен только для чтения или отключен."

msgid "Base class for [SyntaxHighlighter] used by the [ScriptEditor]."
msgstr "Базовый класс для [SyntaxHighlighter], используемый [ScriptEditor]."

msgid ""
"Base class that all [SyntaxHighlighter]s used by the [ScriptEditor] extend "
"from.\n"
"Add a syntax highlighter to an individual script by calling [method "
"ScriptEditorBase.add_syntax_highlighter]. To apply to all scripts on open, "
"call [method ScriptEditor.register_syntax_highlighter]."
msgstr ""
"Базовый класс, от которого расширяются все [SyntaxHighlighter], используемые "
"[ScriptEditor].\n"
"Добавьте подсветку синтаксиса в отдельный скрипт, вызвав [method "
"ScriptEditorBase.add_syntax_highlighter]. Чтобы применить ко всем скриптам "
"при открытии, вызовите [method ScriptEditor.register_syntax_highlighter]."

msgid "Virtual method which creates a new instance of the syntax highlighter."
msgstr ""
"Виртуальный метод, который создает новый экземпляр подсветки синтаксиса."

msgid ""
"Virtual method which can be overridden to return the syntax highlighter name."
msgstr ""
"Виртуальный метод, который можно переопределить для возврата имени подсветки "
"синтаксиса."

msgid ""
"Virtual method which can be overridden to return the supported language names."
msgstr ""
"Виртуальный метод, который можно переопределить для возврата имен "
"поддерживаемых языков."

msgid "Manages toast notifications within the editor."
msgstr "Управляет всплывающими уведомлениями в редакторе."

msgid ""
"This object manages the functionality and display of toast notifications "
"within the editor, ensuring timely and informative alerts are presented to "
"users.\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_editor_toaster]."
msgstr ""
"Этот объект управляет функциональностью и отображением всплывающих "
"уведомлений в редакторе, гарантируя предоставление пользователям "
"своевременных и информативных оповещений.\n"
"[b]Примечание:[/b] Этот класс не следует создавать напрямую. Вместо этого "
"обращайтесь к синглтону с помощью [method EditorInterface.get_editor_toaster]."

msgid "Pushes a toast notification to the editor for display."
msgstr "Отправляет всплывающее уведомление редактору для отображения."

msgid "Toast will display with an INFO severity."
msgstr "Отобразится уведомление с уровнем серьезности INFO."

msgid ""
"Toast will display with a WARNING severity and have a corresponding color."
msgstr ""
"Уведомление будет отображаться с уровнем серьезности ПРЕДУПРЕЖДЕНИЕ и иметь "
"соответствующий цвет."

msgid ""
"Toast will display with an ERROR severity and have a corresponding color."
msgstr ""
"Сообщение будет отображаться с уровнем серьезности ОШИБКА и иметь "
"соответствующий цвет."

msgid ""
"Plugin for adding custom parsers to extract strings that are to be translated "
"from custom files (.csv, .json etc.)."
msgstr ""
"Плагин для добавления пользовательских парсеров для извлечения строк, которые "
"необходимо перевести, из пользовательских файлов (.csv, .json и т. д.)."

msgid ""
"[EditorTranslationParserPlugin] is invoked when a file is being parsed to "
"extract strings that require translation. To define the parsing and string "
"extraction logic, override the [method _parse_file] method in script.\n"
"The return value should be an [Array] of [PackedStringArray]s, one for each "
"extracted translatable string. Each entry should contain [code][msgid, "
"msgctxt, msgid_plural, comment][/code], where all except [code]msgid[/code] "
"are optional. Empty strings will be ignored.\n"
"The extracted strings will be written into a POT file selected by user under "
"\"POT Generation\" in \"Localization\" tab in \"Project Settings\" menu.\n"
"Below shows an example of a custom parser that extracts strings from a CSV "
"file to write into a POT.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorTranslationParserPlugin\n"
"\n"
"func _parse_file(path):\n"
"\tvar ret: Array[PackedStringArray] = []\n"
"\tvar file = FileAccess.open(path, FileAccess.READ)\n"
"\tvar text = file.get_as_text()\n"
"\tvar split_strs = text.split(\",\", false)\n"
"\tfor s in split_strs:\n"
"\t\tret.append(PackedStringArray([s]))\n"
"\t\t#print(\"Extracted string: \" + s)\n"
"\n"
"\treturn ret\n"
"\n"
"func _get_recognized_extensions():\n"
"\treturn [\"csv\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[Tool]\n"
"public partial class CustomParser : EditorTranslationParserPlugin\n"
"{\n"
"\tpublic override Godot.Collections.Array<string[]> _ParseFile(string path)\n"
"\t{\n"
"\t\tGodot.Collections.Array<string[]> ret;\n"
"\t\tusing var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);\n"
"\t\tstring text = file.GetAsText();\n"
"\t\tstring[] splitStrs = text.Split(\",\", allowEmpty: false);\n"
"\t\tforeach (string s in splitStrs)\n"
"\t\t{\n"
"\t\t\tret.Add([s]);\n"
"\t\t\t//GD.Print($\"Extracted string: {s}\");\n"
"\t\t}\n"
"\t\treturn ret;\n"
"\t}\n"
"\n"
"\tpublic override string[] _GetRecognizedExtensions()\n"
"\t{\n"
"\t\treturn [\"csv\"];\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To add a translatable string associated with a context, plural, or comment:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# This will add a message with msgid \"Test 1\", msgctxt \"context\", "
"msgid_plural \"test 1 plurals\", and comment \"test 1 comment\".\n"
"ret.append(PackedStringArray([\"Test 1\", \"context\", \"test 1 plurals\", "
"\"test 1 comment\"]))\n"
"# This will add a message with msgid \"A test without context\" and "
"msgid_plural \"plurals\".\n"
"ret.append(PackedStringArray([\"A test without context\", \"\", "
"\"plurals\"]))\n"
"# This will add a message with msgid \"Only with context\" and msgctxt \"a "
"friendly context\".\n"
"ret.append(PackedStringArray([\"Only with context\", \"a friendly "
"context\"]))\n"
"[/gdscript]\n"
"[csharp]\n"
"// This will add a message with msgid \"Test 1\", msgctxt \"context\", "
"msgid_plural \"test 1 plurals\", and comment \"test 1 comment\".\n"
"ret.Add([\"Test 1\", \"context\", \"test 1 plurals\", \"test 1 comment\"]);\n"
"// This will add a message with msgid \"A test without context\" and "
"msgid_plural \"plurals\".\n"
"ret.Add([\"A test without context\", \"\", \"plurals\"]);\n"
"// This will add a message with msgid \"Only with context\" and msgctxt \"a "
"friendly context\".\n"
"ret.Add([\"Only with context\", \"a friendly context\"]);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you override parsing logic for standard script types "
"(GDScript, C#, etc.), it would be better to load the [code]path[/code] "
"argument using [method ResourceLoader.load]. This is because built-in scripts "
"are loaded as [Resource] type, not [FileAccess] type. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _parse_file(path):\n"
"\tvar res = ResourceLoader.load(path, \"Script\")\n"
"\tvar text = res.source_code\n"
"\t# Parsing logic.\n"
"\n"
"func _get_recognized_extensions():\n"
"\treturn [\"gd\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Godot.Collections.Array<string[]> _ParseFile(string path)\n"
"{\n"
"\tvar res = ResourceLoader.Load<Script>(path, \"Script\");\n"
"\tstring text = res.SourceCode;\n"
"\t// Parsing logic.\n"
"}\n"
"\n"
"public override string[] _GetRecognizedExtensions()\n"
"{\n"
"\treturn [\"gd\"];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To use [EditorTranslationParserPlugin], register it using the [method "
"EditorPlugin.add_translation_parser_plugin] method first."
msgstr ""
"[EditorTranslationParserPlugin] вызывается, когда файл анализируется для "
"извлечения строк, требующих перевода. Чтобы определить логику анализа и "
"извлечения строк, переопределите метод [method _parse_file] в скрипте.\n"
"Возвращаемое значение должно быть [Array] из [PackedStringArray], по одному "
"для каждой извлеченной переводимой строки. Каждая запись должна содержать "
"[code][msgid, msgctxt, msgid_plural, comment][/code], где все, кроме "
"[code]msgid[/code], являются необязательными. Пустые строки будут "
"игнорироваться.\n"
"Извлеченные строки будут записаны в POT-файл, выбранный пользователем в "
"разделе «Генерация POT» на вкладке «Локализация» в меню «Настройки проекта».\n"
"Ниже показан пример пользовательского парсера, который извлекает строки из "
"CSV-файла для записи в POT.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends EditorTranslationParserPlugin\n"
"\n"
"func _parse_file(path):\n"
"\tvar ret: Array[PackedStringArray] = []\n"
"\tvar file = FileAccess.open(path, FileAccess.READ)\n"
"\tvar text = file.get_as_text()\n"
"\tvar split_strs = text.split(\",\", false)\n"
"\tfor s in split_strs:\n"
"\t\tret.append(PackedStringArray([s]))\n"
"\t\t#print(\"Extracted string: \" + s)\n"
"\n"
"\treturn ret\n"
"\n"
"func _get_recognized_extensions():\n"
"\treturn [\"csv\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[Tool]\n"
"public partial class CustomParser : EditorTranslationParserPlugin\n"
"{\n"
"\tpublic override Godot.Collections.Array<string[]> _ParseFile(string path)\n"
"\t{\n"
"\t\tGodot.Collections.Array<string[]> ret;\n"
"\t\tusing var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);\n"
"\t\tstring text = file.GetAsText();\n"
"\t\tstring[] splitStrs = text.Split(\",\", allowEmpty: false);\n"
"\t\tforeach (string s in splitStrs)\n"
"\t\t{\n"
"\t\t\tret.Add([s]);\n"
"\t\t\t//GD.Print($\"Extracted string: {s}\");\n"
"\t\t}\n"
"\t\treturn ret;\n"
"\t}\n"
"\n"
"\tpublic override string[] _GetRecognizedExtensions()\n"
"\t{\n"
"\t\treturn [\"csv\"];\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Чтобы добавить переводимую строку, связанную с контекстом, множественным "
"числом или комментарием:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Это добавит сообщение с msgid \"Test 1\", msgctxt \"context\", msgid_plural "
"\"test 1 plurals\", и комментарий \"test 1 comment\".\n"
"ret.append(PackedStringArray([\"Test 1\", \"context\", \"test 1 plurals\", "
"\"test 1 comment\"]))\n"
"# Это добавит сообщение с msgid \"A test without context\" и msgid_plural "
"\"plurals\".\n"
"ret.append(PackedStringArray([\"A test without context\", \"\", "
"\"plurals\"]))\n"
"# Это добавит сообщение с msgid \"Only with context\" и msgctxt \"a friendly "
"context\".\n"
"ret.append(PackedStringArray([\"Only with context\", \"a friendly "
"context\"]))\n"
"[/gdscript]\n"
"[csharp]\n"
"// Это добавит сообщение с msgid \"Test 1\", msgctxt \"context\", "
"msgid_plural \"test 1 plurals\", и комментарий \"test 1 comment\".\n"
"ret.Add([\"Test 1\", \"context\", \"test 1 plurals\", \"test 1 comment\"]);\n"
"// Это добавит сообщение с msgid \"A test without context\" и msgid_plural "
"\"plurals\".\n"
"ret.Add([\"A test without context\", \"\", \"plurals\"]);\n"
"// Это добавит сообщение с msgid \"Only with context\" и msgctxt \"a friendly "
"context\".\n"
"ret.Add([\"Only with context\", \"a friendly context\"]);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Если вы переопределяете логику синтаксического анализа для "
"стандартных типов скриптов (GDScript, C# и т. д.), лучше загрузить аргумент "
"[code]path[/code] с помощью [method ResourceLoader.load]. Это связано с тем, "
"что встроенные скрипты загружаются как тип [Resource], а не [FileAccess]. "
"Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _parse_file(path):\n"
"\tvar res = ResourceLoader.load(path, \"Script\")\n"
"\tvar text = res.source_code\n"
"\t# Логика анализа.\n"
"\n"
"func _get_recognized_extensions():\n"
"\treturn [\"gd\"]\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Godot.Collections.Array<string[]> _ParseFile(string path)\n"
"{\n"
"\tvar res = ResourceLoader.Load<Script>(path, \"Script\");\n"
"\tstring text = res.SourceCode;\n"
"\t// Логика анализа.\n"
"}\n"
"\n"
"public override string[] _GetRecognizedExtensions()\n"
"{\n"
"\treturn [\"gd\"];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Чтобы использовать [EditorTranslationParserPlugin], сначала зарегистрируйте "
"его с помощью метода [method EditorPlugin.add_translation_parser_plugin]."

msgid ""
"Gets the list of file extensions to associate with this parser, e.g. [code]"
"[\"csv\"][/code]."
msgstr ""
"Получает список расширений файлов для связи с этим анализатором, например, "
"[code][\"csv\"][/code]."

msgid ""
"Override this method to define a custom parsing logic to extract the "
"translatable strings."
msgstr ""
"Переопределите этот метод, чтобы определить пользовательскую логику анализа "
"для извлечения переводимых строк."

msgid "Manages undo history of scenes opened in the editor."
msgstr "Управляет историей отмен открытых сцен, в редакторе."

msgid ""
"[EditorUndoRedoManager] is a manager for [UndoRedo] objects associated with "
"edited scenes. Each scene has its own undo history and "
"[EditorUndoRedoManager] ensures that each action performed in the editor gets "
"associated with a proper scene. For actions not related to scenes "
"([ProjectSettings] edits, external resources, etc.), a separate global "
"history is used.\n"
"The usage is mostly the same as [UndoRedo]. You create and commit actions and "
"the manager automatically decides under-the-hood what scenes it belongs to. "
"The scene is deduced based on the first operation in an action, using the "
"object from the operation. The rules are as follows:\n"
"- If the object is a [Node], use the currently edited scene;\n"
"- If the object is a built-in resource, use the scene from its path;\n"
"- If the object is external resource or anything else, use global history.\n"
"This guessing can sometimes yield false results, so you can provide a custom "
"context object when creating an action.\n"
"[EditorUndoRedoManager] is intended to be used by Godot editor plugins. You "
"can obtain it using [method EditorPlugin.get_undo_redo]. For non-editor uses "
"or plugins that don't need to integrate with the editor's undo history, use "
"[UndoRedo] instead.\n"
"The manager's API is mostly the same as in [UndoRedo], so you can refer to "
"its documentation for more examples. The main difference is that "
"[EditorUndoRedoManager] uses object + method name for actions, instead of "
"[Callable]."
msgstr ""
"[EditorUndoRedoManager] — это менеджер для объектов [UndoRedo], связанных с "
"отредактированными сценами. Каждая сцена имеет собственную историю отмен, а "
"[EditorUndoRedoManager] гарантирует, что каждое действие, выполненное в "
"редакторе, будет связано с соответствующей сценой. Для действий, не связанных "
"со сценами (редактирование [ProjectSettings], внешние ресурсы и т. д.), "
"используется отдельная глобальная история.\n"
"Использование в основном такое же, как и [UndoRedo]. Вы создаете и фиксируете "
"действия, а менеджер автоматически решает изнутри, к каким сценам они "
"относятся. Сцена выводится на основе первой операции в действии с "
"использованием объекта из операции. Правила следующие:\n"
"- Если объект — [Node], используйте текущую отредактированную сцену;\n"
"- Если объект — встроенный ресурс, используйте сцену из его пути;\n"
"- Если объект — внешний ресурс или что-то еще, используйте глобальную "
"историю.\n"
"Иногда это предположение может давать ложные результаты, поэтому вы можете "
"предоставить пользовательский объект контекста при создании действия.\n"
"[EditorUndoRedoManager] предназначен для использования плагинами редактора "
"Godot. Вы можете получить его с помощью [method EditorPlugin.get_undo_redo]. "
"Для нередакторного использования или плагинов, которым не нужно "
"интегрироваться с историей отмен редактора, используйте вместо этого "
"[UndoRedo].\n"
"API менеджера в основном такой же, как в [UndoRedo], поэтому вы можете "
"обратиться к его документации за дополнительными примерами. Главное отличие в "
"том, что [EditorUndoRedoManager] использует объект + имя метода для действий "
"вместо [Callable]."

msgid ""
"Register a method that will be called when the action is committed (i.e. the "
"\"do\" action).\n"
"If this is the first operation, the [param object] will be used to deduce "
"target undo history."
msgstr ""
"Зарегистрируйте метод, который будет вызван при фиксации действия (т. е. "
"действие «do»).\n"
"Если это первая операция, [param object] будет использоваться для вывода "
"истории отмены цели."

msgid ""
"Register a property value change for \"do\".\n"
"If this is the first operation, the [param object] will be used to deduce "
"target undo history."
msgstr ""
"Зарегистрируйте изменение значения свойства для \"do\".\n"
"Если это первая операция, [param object] будет использоваться для вывода "
"истории отмены цели."

msgid ""
"Register a reference for \"do\" that will be erased if the \"do\" history is "
"lost. This is useful mostly for new nodes created for the \"do\" call. Do not "
"use for resources."
msgstr ""
"Зарегистрируйте ссылку для \"do\", которая будет стерта, если история \"do\" "
"будет утеряна. Это полезно в основном для новых узлов, созданных для вызова "
"\"do\". Не используйте для ресурсов."

msgid ""
"Register a method that will be called when the action is undone (i.e. the "
"\"undo\" action).\n"
"If this is the first operation, the [param object] will be used to deduce "
"target undo history."
msgstr ""
"Зарегистрируйте метод, который будет вызван при отмене действия (т. е. "
"действие «отменить»).\n"
"Если это первая операция, [param object] будет использоваться для вывода "
"целевой истории отмен."

msgid ""
"Register a property value change for \"undo\".\n"
"If this is the first operation, the [param object] will be used to deduce "
"target undo history."
msgstr ""
"Зарегистрируйте изменение значения свойства для «отмены».\n"
"Если это первая операция, [param object] будет использоваться для вывода "
"целевой истории отмен."

msgid ""
"Register a reference for \"undo\" that will be erased if the \"undo\" history "
"is lost. This is useful mostly for nodes removed with the \"do\" call (not "
"the \"undo\" call!)."
msgstr ""
"Зарегистрируйте ссылку для \"отмены\", которая будет стерта, если история "
"\"отмены\" будет утеряна. Это полезно в основном для узлов, удаленных с "
"помощью вызова \"do\" (а не вызова \"undo\"!)."

msgid ""
"Clears the given undo history. You can clear history for a specific scene, "
"global history, or for all scenes at once if [param id] is [constant "
"INVALID_HISTORY].\n"
"If [param increase_version] is [code]true[/code], the undo history version "
"will be increased, marking it as unsaved. Useful for operations that modify "
"the scene, but don't support undo.\n"
"[codeblock]\n"
"var scene_root = EditorInterface.get_edited_scene_root()\n"
"var undo_redo = EditorInterface.get_editor_undo_redo()\n"
"undo_redo.clear_history(undo_redo.get_object_history_id(scene_root))\n"
"[/codeblock]\n"
"[b]Note:[/b] If you want to mark an edited scene as unsaved without clearing "
"its history, use [method EditorInterface.mark_scene_as_unsaved] instead."
msgstr ""
"Очищает указанную историю отмен. Вы можете очистить историю для определенной "
"сцены, глобальную историю или для всех сцен сразу, если [param id] — "
"[constant INVALID_HISTORY].\n"
"Если [param increase_version] — [code]true[/code], версия истории отмен будет "
"увеличена, что пометит ее как несохраненную. Полезно для операций, которые "
"изменяют сцену, но не поддерживают отмену.\n"
"[codeblock]\n"
"var scene_root = EditorInterface.get_edited_scene_root()\n"
"var undo_redo = EditorInterface.get_editor_undo_redo()\n"
"undo_redo.clear_history(undo_redo.get_object_history_id(scene_root))\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Если вы хотите отметить отредактированную сцену как "
"несохраненную, не очищая ее историю, используйте вместо этого [method "
"EditorInterface.mark_scene_as_unsaved]."

msgid ""
"Commits the action. If [param execute] is [code]true[/code] (default), all "
"\"do\" methods/properties are called/set when this function is called."
msgstr ""
"Фиксирует действие. Если [param execute] равен [code]true[/code] (по "
"умолчанию), все методы/свойства \"do\" вызываются/устанавливаются при вызове "
"этой функции."

msgid ""
"Create a new action. After this is called, do all your calls to [method "
"add_do_method], [method add_undo_method], [method add_do_property], and "
"[method add_undo_property], then commit the action with [method "
"commit_action].\n"
"The way actions are merged is dictated by the [param merge_mode] argument.\n"
"If [param custom_context] object is provided, it will be used for deducing "
"target history (instead of using the first operation).\n"
"The way undo operation are ordered in actions is dictated by [param "
"backward_undo_ops]. When [param backward_undo_ops] is [code]false[/code] undo "
"option are ordered in the same order they were added. Which means the first "
"operation to be added will be the first to be undone.\n"
"If [param mark_unsaved] is [code]false[/code], the action will not mark the "
"history as unsaved. This is useful for example for actions that change a "
"selection, or a setting that will be saved automatically. Otherwise, this "
"should be left to [code]true[/code] if the action requires saving by the user "
"or if it can cause data loss when left unsaved."
msgstr ""
"Создайте новое действие. После вызова выполните все вызовы [method "
"add_do_method], [method add_undo_method], [method add_do_property] и [method "
"add_undo_property], затем зафиксируйте действие с помощью [method "
"commit_action].\n"
"Способ объединения действий определяется аргументом [param merge_mode].\n"
"Если указан объект [param custom_context], он будет использоваться для вывода "
"целевой истории (вместо использования первой операции).\n"
"Способ упорядочивания операций отмены в действиях определяется [param "
"backward_undo_ops]. Если [param backward_undo_ops] равен [code]false[/code], "
"параметры отмены упорядочиваются в том же порядке, в котором они были "
"добавлены. Это означает, что первая добавленная операция будет первой "
"отмененной.\n"
"Если [param mark_unsaved] равен [code]false[/code], действие не пометит "
"историю как несохраненную. Это полезно, например, для действий, которые "
"изменяют выбор или настройку, которая будет сохранена автоматически. В "
"противном случае следует оставить [code]true[/code], если действие требует "
"сохранения пользователем или если оно может привести к потере данных, если "
"его не сохранить."

msgid ""
"Forces the next operation (e.g. [method add_do_method]) to use the action's "
"history rather than guessing it from the object. This is sometimes needed "
"when a history can't be correctly determined, like for a nested resource that "
"doesn't have a path yet.\n"
"This method should only be used when absolutely necessary, otherwise it might "
"cause invalid history state. For most of complex cases, the "
"[code]custom_context[/code] parameter of [method create_action] is sufficient."
msgstr ""
"Заставляет следующую операцию (например, [method add_do_method]) использовать "
"историю действия, а не угадывать ее из объекта. Иногда это необходимо, когда "
"историю невозможно правильно определить, например, для вложенного ресурса, у "
"которого еще нет пути.\n"
"Этот метод следует использовать только в случае крайней необходимости, в "
"противном случае он может привести к недопустимому состоянию истории. Для "
"большинства сложных случаев достаточно параметра [code]custom_context[/code] "
"[method create_action]."

msgid ""
"Returns the [UndoRedo] object associated with the given history [param id].\n"
"[param id] above [code]0[/code] are mapped to the opened scene tabs (but it "
"doesn't match their order). [param id] of [code]0[/code] or lower have "
"special meaning (see [enum SpecialHistory]).\n"
"Best used with [method get_object_history_id]. This method is only provided "
"in case you need some more advanced methods of [UndoRedo] (but keep in mind "
"that directly operating on the [UndoRedo] object might affect editor's "
"stability)."
msgstr ""
"Возвращает объект [UndoRedo], связанный с заданной историей [param id].\n"
"[param id] выше [code]0[/code] сопоставляются с открытыми вкладками сцены (но "
"не соответствуют их порядку). [param id] [code]0[/code] или ниже имеют особое "
"значение (см. [enum SpecialHistory]).\n"
"Лучше всего использовать с [method get_object_history_id]. Этот метод "
"предоставляется только в случае, если вам нужны более продвинутые методы "
"[UndoRedo] (но имейте в виду, что прямая работа с объектом [UndoRedo] может "
"повлиять на стабильность редактора)."

msgid ""
"Returns the history ID deduced from the given [param object]. It can be used "
"with [method get_history_undo_redo]."
msgstr ""
"Возвращает идентификатор истории, выведенный из заданного [param object]. Его "
"можно использовать с [method get_history_undo_redo]."

msgid ""
"Returns [code]true[/code] if the [EditorUndoRedoManager] is currently "
"committing the action, i.e. running its \"do\" method or property change (see "
"[method commit_action])."
msgstr ""
"Возвращает [code]true[/code], если [EditorUndoRedoManager] в данный момент "
"фиксирует действие, т. е. запускает свой метод «do» или изменение свойства "
"(см. [method commit_action])."

msgid ""
"Emitted when the list of actions in any history has changed, either when an "
"action is committed or a history is cleared."
msgstr ""
"Генерируется при изменении списка действий в любой истории, либо при "
"совершении действия, либо при очистке истории."

msgid ""
"Emitted when the version of any history has changed as a result of undo or "
"redo call."
msgstr ""
"Генерируется, когда версия истории изменилась в результате отмены или повтора "
"вызова."

msgid ""
"Global history not associated with any scene, but with external resources etc."
msgstr ""
"Глобальная история не связана с какой-либо сценой, а связана с внешними "
"ресурсами и т. д."

msgid ""
"History associated with remote inspector. Used when live editing a running "
"project."
msgstr ""
"История, связанная с удаленным инспектором. Используется при редактировании в "
"реальном времени запущенного проекта."

msgid ""
"Invalid \"null\" history. It's a special value, not associated with any "
"object."
msgstr ""
"Недопустимая \"null\" история. Это особое значение, не связанное ни с одним "
"объектом."

msgid ""
"Version Control System (VCS) interface, which reads and writes to the local "
"VCS in use."
msgstr ""
"Интерфейс системы контроля версий (VCS), который считывает и записывает "
"данные в используемую локальную систему VCS."

msgid ""
"Defines the API that the editor uses to extract information from the "
"underlying VCS. The implementation of this API is included in VCS plugins, "
"which are GDExtension plugins that inherit [EditorVCSInterface] and are "
"attached (on demand) to the singleton instance of [EditorVCSInterface]. "
"Instead of performing the task themselves, all the virtual functions listed "
"below are calling the internally overridden functions in the VCS plugins to "
"provide a plug-n-play experience. A custom VCS plugin is supposed to inherit "
"from [EditorVCSInterface] and override each of these virtual functions."
msgstr ""
"Определяет API, который редактор использует для извлечения информации из "
"базовой VCS. Реализация этого API включена в плагины VCS, которые являются "
"плагинами GDExtension, которые наследуют [EditorVCSInterface] и "
"присоединяются (по требованию) к единичному экземпляру [EditorVCSInterface]. "
"Вместо того, чтобы выполнять задачу самостоятельно, все виртуальные функции, "
"перечисленные ниже, вызывают внутренне переопределенные функции в плагинах "
"VCS для обеспечения работы по принципу plug-n-play. Пользовательский плагин "
"VCS должен наследовать от [EditorVCSInterface] и переопределять каждую из "
"этих виртуальных функций."

msgid "Version control systems"
msgstr "Системы контроля версий"

msgid "Checks out a [param branch_name] in the VCS."
msgstr "Извлекает [param branch_name] в VCS."

msgid ""
"Commits the currently staged changes and applies the commit [param msg] to "
"the resulting commit."
msgstr ""
"Фиксирует текущие подготовленные изменения и применяет фиксацию [param msg] к "
"полученной фиксации."

msgid "Creates a new branch named [param branch_name] in the VCS."
msgstr "Создает новую ветку с именем [param branch_name] в VCS."

msgid ""
"Creates a new remote destination with name [param remote_name] and points it "
"to [param remote_url]. This can be an HTTPS remote or an SSH remote."
msgstr ""
"Создает новый удаленный пункт назначения с именем [param remote_name] и "
"указывает на [param remote_url]. Это может быть удаленный HTTPS или удаленный "
"SSH."

msgid "Discards the changes made in a file present at [param file_path]."
msgstr ""
"Отменяет изменения, внесенные в файл, расположенный по адресу [param "
"file_path]."

msgid ""
"Fetches new changes from the [param remote], but doesn't write changes to the "
"current working directory. Equivalent to [code]git fetch[/code]."
msgstr ""
"Извлекает новые изменения из [param remote], но не записывает изменения в "
"текущий рабочий каталог. Эквивалентно [code]git fetch[/code]."

msgid ""
"Gets an instance of an [Array] of [String]s containing available branch names "
"in the VCS."
msgstr ""
"Получает экземпляр [Array] из [String], содержащих доступные имена ветвей в "
"VCS."

msgid "Gets the current branch name defined in the VCS."
msgstr "Получает текущее имя ветви, определенное в VCS."

msgid ""
"Returns an array of [Dictionary] items (see [method create_diff_file], "
"[method create_diff_hunk], [method create_diff_line], [method "
"add_line_diffs_into_diff_hunk] and [method add_diff_hunks_into_diff_file]), "
"each containing information about a diff. If [param identifier] is a file "
"path, returns a file diff, and if it is a commit identifier, then returns a "
"commit diff."
msgstr ""
"Возвращает массив элементов [Dictionary] (см. [method create_diff_file], "
"[method create_diff_hunk], [method create_diff_line], [method "
"add_line_diffs_into_diff_hunk] и [method add_diff_hunks_into_diff_file]), "
"каждый из которых содержит информацию о diff. Если [param identifier] "
"является путем к файлу, возвращает diff файла, а если это идентификатор "
"фиксации, то возвращает diff фиксации."

msgid ""
"Returns an [Array] of [Dictionary] items (see [method create_diff_hunk]), "
"each containing a line diff between a file at [param file_path] and the "
"[param text] which is passed in."
msgstr ""
"Возвращает [Array] элементов [Dictionary] (см. [method create_diff_hunk]), "
"каждый из которых содержит разницу строк между файлом по адресу [param "
"file_path] и переданным [param text]."

msgid ""
"Returns an [Array] of [Dictionary] items (see [method create_status_file]), "
"each containing the status data of every modified file in the project folder."
msgstr ""
"Возвращает [Array] элементов [Dictionary] (см. [method create_status_file]), "
"каждый из которых содержит данные о состоянии каждого измененного файла в "
"папке проекта."

msgid ""
"Returns an [Array] of [Dictionary] items (see [method create_commit]), each "
"containing the data for a past commit."
msgstr ""
"Возвращает [Array] элементов [Dictionary] (см. [method create_commit]), "
"каждый из которых содержит данные о прошлой фиксации."

msgid ""
"Returns an [Array] of [String]s, each containing the name of a remote "
"configured in the VCS."
msgstr ""
"Возвращает [Array] из [String], каждая из которых содержит имя удаленного "
"устройства, настроенного в VCS."

msgid "Returns the name of the underlying VCS provider."
msgstr "Возвращает имя базового поставщика VCS."

msgid ""
"Initializes the VCS plugin when called from the editor. Returns whether or "
"not the plugin was successfully initialized. A VCS project is initialized at "
"[param project_path]."
msgstr ""
"Инициализирует плагин VCS при вызове из редактора. Возвращает, был ли успешно "
"инициализирован плагин. Проект VCS инициализируется в [param project_path]."

msgid "Pulls changes from the remote. This can give rise to merge conflicts."
msgstr ""
"Извлекает изменения из удаленного. Это может привести к конфликтам слияния."

msgid ""
"Pushes changes to the [param remote]. If [param force] is [code]true[/code], "
"a force push will override the change history already present on the remote."
msgstr ""
"Отправляет изменения на [param remote]. Если [param force] равно [code]true[/"
"code], принудительная отправка переопределит историю изменений, уже имеющуюся "
"на удаленном."

msgid "Remove a branch from the local VCS."
msgstr "Удалить ветку из локальной VCS."

msgid "Remove a remote from the local VCS."
msgstr "Удалить удаленный объект из локальной VCS."

msgid ""
"Set user credentials in the underlying VCS. [param username] and [param "
"password] are used only during HTTPS authentication unless not already "
"mentioned in the remote URL. [param ssh_public_key_path], [param "
"ssh_private_key_path], and [param ssh_passphrase] are only used during SSH "
"authentication."
msgstr ""
"Установите учетные данные пользователя в базовой системе контроля версий. "
"[param username] и [param password] используются только во время "
"аутентификации HTTPS, если иное не указано в удаленном URL. [param "
"ssh_public_key_path], [param ssh_private_key_path] и [param ssh_passphrase] "
"используются только во время аутентификации SSH."

msgid ""
"Shuts down VCS plugin instance. Called when the user either closes the editor "
"or shuts down the VCS plugin through the editor UI."
msgstr ""
"Выключает экземпляр плагина VCS. Вызывается, когда пользователь либо "
"закрывает редактор, либо выключает плагин VCS через пользовательский "
"интерфейс редактора."

msgid "Stages the file present at [param file_path] to the staged area."
msgstr ""
"Помещает файл, находящийся по адресу [param file_path], в подготовленную "
"область."

msgid ""
"Unstages the file present at [param file_path] from the staged area to the "
"unstaged area."
msgstr ""
"Перемещает файл, находящийся по адресу [param file_path], из подготовленной "
"области в неподготовленную область."

msgid ""
"Helper function to add an array of [param diff_hunks] into a [param "
"diff_file]."
msgstr ""
"Вспомогательная функция для добавления массива [param diff_hunks] в [param "
"diff_file]."

msgid ""
"Helper function to add an array of [param line_diffs] into a [param "
"diff_hunk]."
msgstr ""
"Вспомогательная функция для добавления массива [param line_diffs] в [param "
"diff_hunk]."

msgid ""
"Helper function to create a commit [Dictionary] item. [param msg] is the "
"commit message of the commit. [param author] is a single human-readable "
"string containing all the author's details, e.g. the email and name "
"configured in the VCS. [param id] is the identifier of the commit, in "
"whichever format your VCS may provide an identifier to commits. [param "
"unix_timestamp] is the UTC Unix timestamp of when the commit was created. "
"[param offset_minutes] is the timezone offset in minutes, recorded from the "
"system timezone where the commit was created."
msgstr ""
"Вспомогательная функция для создания элемента коммита [Dictionary]. [param "
"msg] — сообщение коммита. [param author] — отдельная удобочитаемая строка, "
"содержащая все данные автора, например, адрес электронной почты и имя, "
"настроенные в VCS. [param id] — идентификатор коммита в любом формате, "
"который ваша VCS может предоставить идентификатору коммитов. [param "
"unix_timestamp] — временная метка UTC Unix, указывающая на время создания "
"коммита. [param offset_minutes] — смещение часового пояса в минутах, "
"записанное относительно системного часового пояса, в котором был создан "
"коммит."

msgid ""
"Helper function to create a [Dictionary] for storing old and new diff file "
"paths."
msgstr ""
"Вспомогательная функция для создания [Dictionary] для хранения старых и новых "
"путей к файлам различий."

msgid ""
"Helper function to create a [Dictionary] for storing diff hunk data. [param "
"old_start] is the starting line number in old file. [param new_start] is the "
"starting line number in new file. [param old_lines] is the number of lines in "
"the old file. [param new_lines] is the number of lines in the new file."
msgstr ""
"Вспомогательная функция для создания [Dictionary] для хранения данных diff "
"hunk. [param old_start] — начальный номер строки в старом файле. [param "
"new_start] — начальный номер строки в новом файле. [param old_lines] — "
"количество строк в старом файле. [param new_lines] — количество строк в новом "
"файле."

msgid ""
"Helper function to create a [Dictionary] for storing a line diff. [param "
"new_line_no] is the line number in the new file (can be [code]-1[/code] if "
"the line is deleted). [param old_line_no] is the line number in the old file "
"(can be [code]-1[/code] if the line is added). [param content] is the diff "
"text. [param status] is a single character string which stores the line "
"origin."
msgstr ""
"Вспомогательная функция для создания [Dictionary] для хранения разницы строк. "
"[param new_line_no] — номер строки в новом файле (может быть [code]-1[/code], "
"если строка удалена). [param old_line_no] — номер строки в старом файле "
"(может быть [code]-1[/code], если строка добавлена). [param content] — текст "
"разницы. [param status] — строка из одного символа, в которой хранится начало "
"строки."

msgid ""
"Helper function to create a [Dictionary] used by editor to read the status of "
"a file."
msgstr ""
"Вспомогательная функция для создания [Dictionary], используемого редактором "
"для чтения статуса файла."

msgid ""
"Pops up an error message in the editor which is shown as coming from the "
"underlying VCS. Use this to show VCS specific error messages."
msgstr ""
"Выводит сообщение об ошибке в редакторе, которое отображается как исходящее "
"от базовой VCS. Используйте это, чтобы показать сообщения об ошибках, "
"специфичные для VCS."

msgid "A new file has been added."
msgstr "Добавлен новый файл."

msgid "An earlier added file has been modified."
msgstr "Ранее добавленный файл был изменен."

msgid "An earlier added file has been renamed."
msgstr "Ранее добавленный файл был переименован."

msgid "An earlier added file has been deleted."
msgstr "Ранее добавленный файл был удален."

msgid "An earlier added file has been typechanged."
msgstr "Ранее добавленный файл был изменен типом."

msgid "A file is left unmerged."
msgstr "Файл остается необъединенным."

msgid "A commit is encountered from the commit area."
msgstr "В области коммита обнаружен коммит."

msgid "A file is encountered from the staged area."
msgstr "Файл обнаружен в подготовленной области."

msgid "A file is encountered from the unstaged area."
msgstr "Обнаружен файл из неподготовленной области."

msgid "Holds a reference to an [Object]'s instance ID."
msgstr "Содержит ссылку на идентификатор экземпляра [Object]."

msgid ""
"Utility class which holds a reference to the internal identifier of an "
"[Object] instance, as given by [method Object.get_instance_id]. This ID can "
"then be used to retrieve the object instance with [method "
"@GlobalScope.instance_from_id].\n"
"This class is used internally by the editor inspector and script debugger, "
"but can also be used in plugins to pass and display objects as their IDs."
msgstr ""
"Служебный класс, который содержит ссылку на внутренний идентификатор "
"экземпляра [Object], как указано в [method Object.get_instance_id]. Этот "
"идентификатор затем можно использовать для извлечения экземпляра объекта с "
"помощью [method @GlobalScope.instance_from_id].\n"
"Этот класс используется внутренне инспектором редактора и отладчиком "
"скриптов, но также может использоваться в плагинах для передачи и отображения "
"объектов в качестве их идентификаторов."

msgid ""
"The [Object] identifier stored in this [EncodedObjectAsID] instance. The "
"object instance can be retrieved with [method @GlobalScope.instance_from_id]."
msgstr ""
"Идентификатор [Object], хранящийся в этом экземпляре [EncodedObjectAsID]. "
"Экземпляр объекта может быть получен с помощью [method "
"@GlobalScope.instance_from_id]."

msgid ""
"A wrapper class for an [url=http://enet.bespin.org/group__host.html]ENetHost[/"
"url]."
msgstr ""
"Класс-оболочка для [url=http://enet.bespin.org/group__host.html]ENetHost[/"
"url]."

msgid ""
"ENet's purpose is to provide a relatively thin, simple and robust network "
"communication layer on top of UDP (User Datagram Protocol)."
msgstr ""
"Целью ENet является обеспечение относительно тонкого, простого и надежного "
"уровня сетевой связи поверх UDP (протокола пользовательских датаграмм)."

msgid "API documentation on the ENet website"
msgstr "Документация API на сайте ENet"

msgid "Adjusts the bandwidth limits of a host."
msgstr "Регулирует ограничения пропускной способности хоста."

msgid ""
"Queues a [param packet] to be sent to all peers associated with the host over "
"the specified [param channel]. See [ENetPacketPeer] [code]FLAG_*[/code] "
"constants for available packet flags."
msgstr ""
"Ставит в очередь [param packet] для отправки всем пирам, связанным с хостом, "
"по указанному [param channel]. См. константы [ENetPacketPeer] [code]FLAG_*[/"
"code] для доступных флагов пакетов."

msgid "Limits the maximum allowed channels of future incoming connections."
msgstr ""
"Ограничивает максимально допустимые каналы будущих входящих подключений."

msgid ""
"Sets the compression method used for network packets. These have different "
"tradeoffs of compression speed versus bandwidth, you may need to test which "
"one works best for your use case if you use compression at all.\n"
"[b]Note:[/b] Most games' network design involve sending many small packets "
"frequently (smaller than 4 KB each). If in doubt, it is recommended to keep "
"the default compression algorithm as it works best on these small packets.\n"
"[b]Note:[/b] The compression mode must be set to the same value on both the "
"server and all its clients. Clients will fail to connect if the compression "
"mode set on the client differs from the one set on the server."
msgstr ""
"Устанавливает метод сжатия, используемый для сетевых пакетов. Они имеют "
"разные компромиссы скорости сжатия и пропускной способности, вам может "
"потребоваться проверить, какой из них лучше всего подходит для вашего "
"варианта использования, если вы вообще используете сжатие.\n"
"[b]Примечание:[/b] Большинство сетевых схем игр предполагают частую отправку "
"множества небольших пакетов (размером менее 4 КБ каждый). Если вы "
"сомневаетесь, рекомендуется сохранить алгоритм сжатия по умолчанию, так как "
"он лучше всего работает с этими небольшими пакетами.\n"
"[b]Примечание:[/b] Режим сжатия должен быть установлен на одно и то же "
"значение как на сервере, так и на всех его клиентах. Клиенты не смогут "
"подключиться, если режим сжатия, установленный на клиенте, отличается от "
"установленного на сервере."

msgid ""
"Initiates a connection to a foreign [param address] using the specified "
"[param port] and allocating the requested [param channels]. Optional [param "
"data] can be passed during connection in the form of a 32 bit integer.\n"
"[b]Note:[/b] You must call either [method create_host] or [method "
"create_host_bound] on both ends before calling this method."
msgstr ""
"Инициирует соединение с внешним [param address], используя указанный [param "
"port] и выделяя запрошенные [param channels]. Необязательные [param data] "
"могут быть переданы во время соединения в виде 32-битного целого числа.\n"
"[b]Примечание:[/b] Перед вызовом этого метода необходимо вызвать либо [method "
"create_host], либо [method create_host_bound] на обоих концах."

msgid ""
"Creates an ENetHost that allows up to [param max_peers] connected peers, each "
"allocating up to [param max_channels] channels, optionally limiting bandwidth "
"to [param in_bandwidth] and [param out_bandwidth] (if greater than zero).\n"
"This method binds a random available dynamic UDP port on the host machine at "
"the [i]unspecified[/i] address. Use [method create_host_bound] to specify the "
"address and port.\n"
"[b]Note:[/b] It is necessary to create a host in both client and server in "
"order to establish a connection."
msgstr ""
"Создает ENetHost, который допускает до [param max_peers] подключенных "
"одноранговых узлов, каждый из которых выделяет до [param max_channels] "
"каналов, опционально ограничивая пропускную способность до [param "
"in_bandwidth] и [param out_bandwidth] (если больше нуля).\n"
"Этот метод привязывает случайный доступный динамический порт UDP на хост-"
"машине к [i]неуказанному[/i] адресу. Используйте [method create_host_bound], "
"чтобы указать адрес и порт.\n"
"[b]Примечание:[/b] Для установления соединения необходимо создать хост как на "
"клиенте, так и на сервере."

msgid ""
"Creates an ENetHost bound to the given [param bind_address] and [param "
"bind_port] that allows up to [param max_peers] connected peers, each "
"allocating up to [param max_channels] channels, optionally limiting bandwidth "
"to [param in_bandwidth] and [param out_bandwidth] (if greater than zero).\n"
"[b]Note:[/b] It is necessary to create a host in both client and server in "
"order to establish a connection."
msgstr ""
"Создает ENetHost, привязанный к заданным [param bind_address] и [param "
"bind_port], который допускает до [param max_peers] подключенных одноранговых "
"узлов, каждый из которых выделяет до [param max_channels] каналов, "
"опционально ограничивая пропускную способность до [param in_bandwidth] и "
"[param out_bandwidth] (если больше нуля).\n"
"[b]Примечание:[/b] Для установления соединения необходимо создать хост как на "
"клиенте, так и на сервере."

msgid "Destroys the host and all resources associated with it."
msgstr "Уничтожает хост и все связанные с ним ресурсы."

msgid ""
"Configure this ENetHost to use the custom Godot extension allowing DTLS "
"encryption for ENet clients. Call this before [method connect_to_host] to "
"have ENet connect using DTLS validating the server certificate against [param "
"hostname]. You can pass the optional [param client_options] parameter to "
"customize the trusted certification authorities, or disable the common name "
"verification. See [method TLSOptions.client] and [method "
"TLSOptions.client_unsafe]."
msgstr ""
"Настройте этот ENetHost для использования пользовательского расширения Godot, "
"разрешающего шифрование DTLS для клиентов ENet. Вызовите это перед [method "
"connect_to_host], чтобы ENet подключался с использованием DTLS, проверяя "
"сертификат сервера по [param hostname]. Вы можете передать необязательный "
"параметр [param client_options], чтобы настроить доверенные центры "
"сертификации или отключить проверку общего имени. См. [method "
"TLSOptions.client] и [method TLSOptions.client_unsafe]."

msgid ""
"Configure this ENetHost to use the custom Godot extension allowing DTLS "
"encryption for ENet servers. Call this right after [method create_host_bound] "
"to have ENet expect peers to connect using DTLS. See [method "
"TLSOptions.server]."
msgstr ""
"Настройте этот ENetHost для использования пользовательского расширения Godot, "
"разрешающего шифрование DTLS для серверов ENet. Вызовите его сразу после "
"[method create_host_bound], чтобы ENet ожидал, что пиры будут подключаться с "
"использованием DTLS. См. [method TLSOptions.server]."

msgid "Sends any queued packets on the host specified to its designated peers."
msgstr ""
"Отправляет все поставленные в очередь пакеты на указанном хосте своим "
"назначенным одноранговым узлам."

msgid "Returns the local port to which this peer is bound."
msgstr ""
"Возвращает локальный порт, к которому привязан данный одноранговый узел."

msgid "Returns the maximum number of channels allowed for connected peers."
msgstr ""
"Возвращает максимальное количество каналов, разрешенных для подключенных "
"одноранговых узлов."

msgid ""
"Returns the list of peers associated with this host.\n"
"[b]Note:[/b] This list might include some peers that are not fully connected "
"or are still being disconnected."
msgstr ""
"Возвращает список пиров, связанных с этим хостом.\n"
"[b]Примечание:[/b] Этот список может включать некоторые пиры, которые не "
"полностью подключены или все еще отключаются."

msgid "Returns and resets host statistics."
msgstr "Возвращает и сбрасывает статистику хоста."

msgid ""
"Configures the DTLS server to automatically drop new connections.\n"
"[b]Note:[/b] This method is only relevant after calling [method "
"dtls_server_setup]."
msgstr ""
"Настраивает сервер DTLS на автоматическое удаление новых подключений.\n"
"[b]Примечание:[/b] Этот метод актуален только после вызова [method "
"dtls_server_setup]."

msgid ""
"Waits for events on this connection and shuttles packets between the host and "
"its peers, with the given [param timeout] (in milliseconds). The returned "
"[Array] will have 4 elements. An [enum EventType], the [ENetPacketPeer] which "
"generated the event, the event associated data (if any), the event associated "
"channel (if any). If the generated event is [constant EVENT_RECEIVE], the "
"received packet will be queued to the associated [ENetPacketPeer].\n"
"Call this function regularly to handle connections, disconnections, and to "
"receive new packets.\n"
"[b]Note:[/b] This method must be called on both ends involved in the event "
"(sending and receiving hosts)."
msgstr ""
"Ожидает событий в этом соединении и пересылает пакеты между хостом и его "
"одноранговыми узлами с заданным [param timeout] (в миллисекундах). "
"Возвращаемый [Array] будет иметь 4 элемента. [enum EventType], "
"[ENetPacketPeer], который сгенерировал событие, данные, связанные с событием "
"(если есть), канал, связанный с событием (если есть). Если сгенерированное "
"событие — [constant EVENT_RECEIVE], полученный пакет будет поставлен в "
"очередь в связанный [ENetPacketPeer].\n"
"Регулярно вызывайте эту функцию для обработки подключений, отключений и "
"получения новых пакетов.\n"
"[b]Примечание:[/b] Этот метод должен вызываться на обоих концах, вовлеченных "
"в событие (отправляющие и принимающие хосты)."

msgid ""
"Sends a [param packet] toward a destination from the address and port "
"currently bound by this ENetConnection instance.\n"
"This is useful as it serves to establish entries in NAT routing tables on all "
"devices between this bound instance and the public facing internet, allowing "
"a prospective client's connection packets to be routed backward through the "
"NAT device(s) between the public internet and this host.\n"
"This requires forward knowledge of a prospective client's address and "
"communication port as seen by the public internet - after any NAT devices "
"have handled their connection request. This information can be obtained by a "
"[url=https://en.wikipedia.org/wiki/STUN]STUN[/url] service, and must be "
"handed off to your host by an entity that is not the prospective client. This "
"will never work for a client behind a Symmetric NAT due to the nature of the "
"Symmetric NAT routing algorithm, as their IP and Port cannot be known "
"beforehand."
msgstr ""
"Отправляет [param packet] в пункт назначения с адреса и порта, которые в "
"данный момент связаны с этим экземпляром ENetConnection.\n"
"Это полезно, поскольку служит для создания записей в таблицах маршрутизации "
"NAT на всех устройствах между этим связанным экземпляром и общедоступным "
"Интернетом, позволяя маршрутизировать пакеты подключения потенциального "
"клиента обратно через устройство(а) NAT между общедоступным Интернетом и этим "
"хостом.\n"
"Для этого требуется предварительное знание адреса и порта связи "
"потенциального клиента, видимых общедоступным Интернетом, после того, как все "
"устройства NAT обработали свой запрос на подключение. Эту информацию можно "
"получить с помощью службы [url=https://en.wikipedia.org/wiki/STUN]STUN[/url], "
"и она должна быть передана вашему хосту сущностью, которая не является "
"потенциальным клиентом. Это никогда не сработает для клиента за симметричным "
"NAT из-за природы алгоритма маршрутизации симметричного NAT, поскольку его IP "
"и порт не могут быть известны заранее."

msgid ""
"No compression. This uses the most bandwidth, but has the upside of requiring "
"the fewest CPU resources. This option may also be used to make network "
"debugging using tools like Wireshark easier."
msgstr ""
"Без сжатия. Это использует большую часть полосы пропускания, но имеет "
"преимущество в том, что требует наименьшего количества ресурсов ЦП. Этот "
"параметр также может быть использован для упрощения отладки сети с помощью "
"таких инструментов, как Wireshark."

msgid ""
"ENet's built-in range encoding. Works well on small packets, but is not the "
"most efficient algorithm on packets larger than 4 KB."
msgstr ""
"Встроенное кодирование диапазона ENet. Хорошо работает на небольших пакетах, "
"но не является самым эффективным алгоритмом на пакетах размером более 4 КБ."

msgid ""
"[url=https://fastlz.org/]FastLZ[/url] compression. This option uses less CPU "
"resources compared to [constant COMPRESS_ZLIB], at the expense of using more "
"bandwidth."
msgstr ""
"[url=https://fastlz.org/]FastLZ[/url] сжатие. Этот вариант использует меньше "
"ресурсов ЦП по сравнению с [constant COMPRESS_ZLIB], за счет использования "
"большей пропускной способности."

msgid ""
"[url=https://www.zlib.net/]Zlib[/url] compression. This option uses less "
"bandwidth compared to [constant COMPRESS_FASTLZ], at the expense of using "
"more CPU resources."
msgstr ""
"[url=https://www.zlib.net/]Сжатие Zlib[/url]. Этот вариант использует меньшую "
"пропускную способность по сравнению с [constant COMPRESS_FASTLZ], за счет "
"использования большего количества ресурсов ЦП."

msgid ""
"[url=https://facebook.github.io/zstd/]Zstandard[/url] compression. Note that "
"this algorithm is not very efficient on packets smaller than 4 KB. Therefore, "
"it's recommended to use other compression algorithms in most cases."
msgstr ""
"[url=https://facebook.github.io/zstd/]Zstandard[/url] сжатие. Обратите "
"внимание, что этот алгоритм не очень эффективен на пакетах размером менее 4 "
"КБ. Поэтому в большинстве случаев рекомендуется использовать другие алгоритмы "
"сжатия."

msgid ""
"An error occurred during [method service]. You will likely need to [method "
"destroy] the host and recreate it."
msgstr ""
"Произошла ошибка во время [method service]. Скорее всего, вам придется "
"[method destroy] хост и создать его заново."

msgid "No event occurred within the specified time limit."
msgstr "В течение указанного срока не произошло ни одного события."

msgid ""
"A connection request initiated by enet_host_connect has completed. The array "
"will contain the peer which successfully connected."
msgstr ""
"Запрос на подключение, инициированный enet_host_connect, завершен. Массив "
"будет содержать пир )peer(, который успешно подключился."

msgid ""
"A peer has disconnected. This event is generated on a successful completion "
"of a disconnect initiated by [method ENetPacketPeer.peer_disconnect], if a "
"peer has timed out, or if a connection request initialized by [method "
"connect_to_host] has timed out. The array will contain the peer which "
"disconnected. The data field contains user supplied data describing the "
"disconnection, or 0, if none is available."
msgstr ""
"Пир отключился. Это событие генерируется при успешном завершении отключения, "
"инициированного [method ENetPacketPeer.peer_disconnect], если истекло время "
"ожидания пира или если истекло время ожидания запроса на подключение, "
"инициализированного [method connect_to_host]. Массив будет содержать пир, "
"который отключился. Поле данных содержит предоставленные пользователем "
"данные, описывающие отключение, или 0, если ничего не доступно."

msgid ""
"A packet has been received from a peer. The array will contain the peer which "
"sent the packet and the channel number upon which the packet was received. "
"The received packet will be queued to the associated [ENetPacketPeer]."
msgstr ""
"Пакет получен от пиров. Массив будет содержать пир, отправивший пакет, и "
"номер канала, на котором был получен пакет. Полученный пакет будет поставлен "
"в очередь в связанный [ENetPacketPeer]."

msgid "Total data sent."
msgstr "Всего передано данных."

msgid "Total UDP packets sent."
msgstr "Общее количество отправленных UDP-пакетов."

msgid "Total data received."
msgstr "Всего получено данных."

msgid "Total UDP packets received."
msgstr "Общее количество полученных UDP-пакетов."

msgid ""
"A MultiplayerPeer implementation using the [url=http://enet.bespin.org/"
"index.html]ENet[/url] library."
msgstr ""
"Реализация MultiplayerPeer с использованием библиотеки [url=http://"
"enet.bespin.org/index.html]ENet[/url]."

msgid ""
"A MultiplayerPeer implementation that should be passed to [member "
"MultiplayerAPI.multiplayer_peer] after being initialized as either a client, "
"server, or mesh. Events can then be handled by connecting to [MultiplayerAPI] "
"signals. See [ENetConnection] for more information on the ENet library "
"wrapper.\n"
"[b]Note:[/b] ENet only uses UDP, not TCP. When forwarding the server port to "
"make your server accessible on the public Internet, you only need to forward "
"the server port in UDP. You can use the [UPNP] class to try to forward the "
"server port automatically when starting the server."
msgstr ""
"Реализация MultiplayerPeer, которая должна быть передана [member "
"MultiplayerAPI.multiplayer_peer] после инициализации в качестве клиента, "
"сервера или сетки. События затем можно обрабатывать, подключаясь к сигналам "
"[MultiplayerAPI]. См. [ENetConnection] для получения дополнительной "
"информации о библиотеке-оболочке ENet.\n"
"[b]Примечание:[/b] ENet использует только UDP, а не TCP. При переадресации "
"порта сервера для того, чтобы сделать ваш сервер доступным в общедоступном "
"Интернете, вам нужно переадресовать только порт сервера в UDP. Вы можете "
"использовать класс [UPNP], чтобы попытаться автоматически переадресовать порт "
"сервера при запуске сервера."

msgid "High-level multiplayer"
msgstr "Высокоуровневый мультиплеер"

msgid ""
"Add a new remote peer with the given [param peer_id] connected to the given "
"[param host].\n"
"[b]Note:[/b] The [param host] must have exactly one peer in the [constant "
"ENetPacketPeer.STATE_CONNECTED] state."
msgstr ""
"Добавьте новый удаленный узел с указанным [param peer_id], подключенный к "
"указанному [param host].\n"
"[b]Примечание:[/b] [param host] должен иметь ровно одного узла в состоянии "
"[constant ENetPacketPeer.STATE_CONNECTED]."

msgid ""
"Create client that connects to a server at [param address] using specified "
"[param port]. The given address needs to be either a fully qualified domain "
"name (e.g. [code]\"www.example.com\"[/code]) or an IP address in IPv4 or IPv6 "
"format (e.g. [code]\"192.168.1.1\"[/code]). The [param port] is the port the "
"server is listening on. The [param channel_count] parameter can be used to "
"specify the number of ENet channels allocated for the connection. The [param "
"in_bandwidth] and [param out_bandwidth] parameters can be used to limit the "
"incoming and outgoing bandwidth to the given number of bytes per second. The "
"default of 0 means unlimited bandwidth. Note that ENet will strategically "
"drop packets on specific sides of a connection between peers to ensure the "
"peer's bandwidth is not overwhelmed. The bandwidth parameters also determine "
"the window size of a connection which limits the amount of reliable packets "
"that may be in transit at any given time. Returns [constant OK] if a client "
"was created, [constant ERR_ALREADY_IN_USE] if this ENetMultiplayerPeer "
"instance already has an open connection (in which case you need to call "
"[method MultiplayerPeer.close] first) or [constant ERR_CANT_CREATE] if the "
"client could not be created. If [param local_port] is specified, the client "
"will also listen to the given port; this is useful for some NAT traversal "
"techniques."
msgstr ""
"Создайте клиента, который подключается к серверу по адресу [param address], "
"используя указанный [param port]. Указанный адрес должен быть либо полностью "
"определенным доменным именем (например, [code]\"www.example.com\"[/code]), "
"либо IP-адресом в формате IPv4 или IPv6 (например, [code]\"192.168.1.1\"[/"
"code]). [param port] — это порт, который прослушивает сервер. Параметр [param "
"channel_count] можно использовать для указания количества каналов ENet, "
"выделенных для соединения. Параметры [param in_bandwidth] и [param "
"out_bandwidth] можно использовать для ограничения входящей и исходящей "
"пропускной способности указанным количеством байт в секунду. Значение по "
"умолчанию 0 означает неограниченную пропускную способность. Обратите "
"внимание, что ENet будет стратегически отбрасывать пакеты на определенных "
"сторонах соединения между одноранговыми узлами, чтобы гарантировать, что "
"пропускная способность однорангового узла не будет перегружена. Параметры "
"пропускной способности также определяют размер окна соединения, что "
"ограничивает количество надежных пакетов, которые могут передаваться в любой "
"момент времени. Возвращает [constant OK], если клиент был создан, [constant "
"ERR_ALREADY_IN_USE], если этот экземпляр ENetMultiplayerPeer уже имеет "
"открытое соединение (в этом случае вам нужно сначала вызвать [method "
"MultiplayerPeer.close]) или [constant ERR_CANT_CREATE], если клиент не может "
"быть создан. Если указан [param local_port], клиент также будет прослушивать "
"указанный порт; это полезно для некоторых методов обхода NAT."

msgid ""
"Initialize this [MultiplayerPeer] in mesh mode. The provided [param "
"unique_id] will be used as the local peer network unique ID once assigned as "
"the [member MultiplayerAPI.multiplayer_peer]. In the mesh configuration you "
"will need to set up each new peer manually using [ENetConnection] before "
"calling [method add_mesh_peer]. While this technique is more advanced, it "
"allows for better control over the connection process (e.g. when dealing with "
"NAT punch-through) and for better distribution of the network load (which "
"would otherwise be more taxing on the server)."
msgstr ""
"Инициализируйте этот [MultiplayerPeer] в режиме сетки. Предоставленный [param "
"unique_id] будет использоваться как уникальный идентификатор локальной "
"одноранговой сети после назначения в качестве [member "
"MultiplayerAPI.multiplayer_peer]. В конфигурации сетки вам нужно будет "
"вручную настроить каждый новый одноранговый узел с помощью [ENetConnection] "
"перед вызовом [method add_mesh_peer]. Хотя этот метод более продвинут, он "
"позволяет лучше контролировать процесс подключения (например, при работе с "
"NAT punch-through) и лучше распределять сетевую нагрузку (которая в противном "
"случае была бы более обременительной для сервера)."

msgid ""
"Create server that listens to connections via [param port]. The port needs to "
"be an available, unused port between 0 and 65535. Note that ports below 1024 "
"are privileged and may require elevated permissions depending on the "
"platform. To change the interface the server listens on, use [method "
"set_bind_ip]. The default IP is the wildcard [code]\"*\"[/code], which "
"listens on all available interfaces. [param max_clients] is the maximum "
"number of clients that are allowed at once, any number up to 4095 may be "
"used, although the achievable number of simultaneous clients may be far lower "
"and depends on the application. For additional details on the bandwidth "
"parameters, see [method create_client]. Returns [constant OK] if a server was "
"created, [constant ERR_ALREADY_IN_USE] if this ENetMultiplayerPeer instance "
"already has an open connection (in which case you need to call [method "
"MultiplayerPeer.close] first) or [constant ERR_CANT_CREATE] if the server "
"could not be created."
msgstr ""
"Создайте сервер, который прослушивает соединения через [param port]. Порт "
"должен быть доступным, неиспользуемым портом в диапазоне от 0 до 65535. "
"Обратите внимание, что порты ниже 1024 являются привилегированными и могут "
"потребовать повышенных прав в зависимости от платформы. Чтобы изменить "
"интерфейс, который прослушивает сервер, используйте [method set_bind_ip]. IP "
"по умолчанию — это подстановочный знак [code]\"*\"[/code], который "
"прослушивает все доступные интерфейсы. [param max_clients] — это максимальное "
"количество клиентов, которые разрешены одновременно, можно использовать любое "
"число до 4095, хотя достижимое количество одновременных клиентов может быть "
"намного меньше и зависит от приложения. Дополнительные сведения о параметрах "
"пропускной способности см. в [method create_client]. Возвращает [constant "
"OK], если сервер был создан, [constant ERR_ALREADY_IN_USE], если у этого "
"экземпляра ENetMultiplayerPeer уже есть открытое соединение (в этом случае "
"сначала необходимо вызвать [method MultiplayerPeer.close]), или [constant "
"ERR_CANT_CREATE], если сервер не удалось создать."

msgid "Returns the [ENetPacketPeer] associated to the given [param id]."
msgstr "Возвращает [ENetPacketPeer], связанный с указанным [param id]."

msgid ""
"The IP used when creating a server. This is set to the wildcard [code]\"*\"[/"
"code] by default, which binds to all available interfaces. The given IP needs "
"to be in IPv4 or IPv6 address format, for example: [code]\"192.168.1.1\"[/"
"code]."
msgstr ""
"IP, используемый при создании сервера. По умолчанию он установлен на "
"подстановочный знак [code]\"*\"[/code], который привязывается ко всем "
"доступным интерфейсам. Указанный IP должен быть в формате адреса IPv4 или "
"IPv6, например: [code]\"192.168.1.1\"[/code]."

msgid ""
"The underlying [ENetConnection] created after [method create_client] and "
"[method create_server]."
msgstr ""
"Базовый [ENetConnection] создается после [method create_client] и [method "
"create_server]."

msgid ""
"A wrapper class for an [url=http://enet.bespin.org/group__peer.html]ENetPeer[/"
"url]."
msgstr ""
"Класс-оболочка для [url=http://enet.bespin.org/group__peer.html]ENetPeer[/"
"url]."

msgid ""
"A PacketPeer implementation representing a peer of an [ENetConnection].\n"
"This class cannot be instantiated directly but can be retrieved during "
"[method ENetConnection.service] or via [method ENetConnection.get_peers].\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"Реализация PacketPeer, представляющая одноранговый узел [ENetConnection].\n"
"Этот класс не может быть создан напрямую, но может быть извлечен во время "
"[method ENetConnection.service] или через [method ENetConnection.get_peers].\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid "Returns the number of channels allocated for communication with peer."
msgstr ""
"Возвращает количество каналов, выделенных для связи с одноранговым узлом."

msgid ""
"Returns the ENet flags of the next packet in the received queue. See "
"[code]FLAG_*[/code] constants for available packet flags. Note that not all "
"flags are replicated from the sending peer to the receiving peer."
msgstr ""
"Возвращает флаги ENet следующего пакета в полученной очереди. См. константы "
"[code]FLAG_*[/code] для доступных флагов пакетов. Обратите внимание, что не "
"все флаги реплицируются от отправляющего узла к принимающему узлу."

msgid "Returns the IP address of this peer."
msgstr "Возвращает IP-адрес этого однорангового узла."

msgid "Returns the remote port of this peer."
msgstr "Возвращает удаленный порт данного однорангового узла."

msgid "Returns the current peer state."
msgstr "Возвращает текущее состояние однорангового узла (Peer)."

msgid "Returns the requested [param statistic] for this peer."
msgstr ""
"Возвращает запрошенную [param statistic] для данного однорангового узла."

msgid ""
"Returns [code]true[/code] if the peer is currently active (i.e. the "
"associated [ENetConnection] is still valid)."
msgstr ""
"Возвращает [code]true[/code], если одноранговый узел в данный момент активен "
"(т. е. связанный [ENetConnection] все еще действителен)."

msgid ""
"Request a disconnection from a peer. An [constant "
"ENetConnection.EVENT_DISCONNECT] will be generated during [method "
"ENetConnection.service] once the disconnection is complete."
msgstr ""
"Запрос на отключение от однорангового пира. [constant "
"ENetConnection.EVENT_DISCONNECT] будет сгенерирована во время [method "
"ENetConnection.service] после завершения отключения."

msgid ""
"Request a disconnection from a peer, but only after all queued outgoing "
"packets are sent. An [constant ENetConnection.EVENT_DISCONNECT] will be "
"generated during [method ENetConnection.service] once the disconnection is "
"complete."
msgstr ""
"Запросить отключение от пира, но только после того, как все исходящие пакеты "
"в очереди будут отправлены. [constant ENetConnection.EVENT_DISCONNECT] будет "
"сгенерирована во время [method ENetConnection.service] после завершения "
"отключения."

msgid ""
"Force an immediate disconnection from a peer. No [constant "
"ENetConnection.EVENT_DISCONNECT] will be generated. The foreign peer is not "
"guaranteed to receive the disconnect notification, and is reset immediately "
"upon return from this function."
msgstr ""
"Принудительно выполнить немедленное отключение от однорангового пир. "
"[constant ENetConnection.EVENT_DISCONNECT] не будет сгенерирован. Не "
"гарантируется, что внешний одноранговый узел получит уведомление об "
"отключении, и он немедленно сбрасывается после возврата из этой функции."

msgid ""
"Sends a ping request to a peer. ENet automatically pings all connected peers "
"at regular intervals, however, this function may be called to ensure more "
"frequent ping requests."
msgstr ""
"Отправляет запрос ping на одноранговый узел. ENet автоматически пингует все "
"подключенные одноранговые узлы через регулярные интервалы, однако эта функция "
"может быть вызвана для обеспечения более частых запросов ping."

msgid ""
"Sets the [param ping_interval] in milliseconds at which pings will be sent to "
"a peer. Pings are used both to monitor the liveness of the connection and "
"also to dynamically adjust the throttle during periods of low traffic so that "
"the throttle has reasonable responsiveness during traffic spikes. The default "
"ping interval is [code]500[/code] milliseconds."
msgstr ""
"Устанавливает [param ping_interval] в миллисекундах, с которым будут "
"отправляться пинги на одноранговый пир. Пинги используются как для "
"мониторинга активности соединения, так и для динамической регулировки "
"дросселя в периоды низкого трафика, чтобы дроссель имел разумную скорость "
"реагирования во время пиков трафика. Интервал пинга по умолчанию составляет "
"[code]500[/code] миллисекунд."

msgid ""
"Forcefully disconnects a peer. The foreign host represented by the peer is "
"not notified of the disconnection and will timeout on its connection to the "
"local host."
msgstr ""
"Принудительно отключает одноранговый пир. Внешний хост, представленный "
"одноранговым пир, не уведомляется об отключении и будет отключаться по тайм-"
"ауту при подключении к локальному хосту."

msgid ""
"Queues a [param packet] to be sent over the specified [param channel]. See "
"[code]FLAG_*[/code] constants for available packet flags."
msgstr ""
"Ставит в очередь [param packet] для отправки по указанному [param channel]. "
"См. константы [code]FLAG_*[/code] для доступных флагов пакетов."

msgid ""
"Sets the timeout parameters for a peer. The timeout parameters control how "
"and when a peer will timeout from a failure to acknowledge reliable traffic. "
"Timeout values are expressed in milliseconds.\n"
"The [param timeout] is a factor that, multiplied by a value based on the "
"average round trip time, will determine the timeout limit for a reliable "
"packet. When that limit is reached, the timeout will be doubled, and the peer "
"will be disconnected if that limit has reached [param timeout_min]. The "
"[param timeout_max] parameter, on the other hand, defines a fixed timeout for "
"which any packet must be acknowledged or the peer will be dropped."
msgstr ""
"Устанавливает параметры тайм-аута для однорангового пира. Параметры тайм-аута "
"управляют тем, как и когда одноранговый узел будет выходить из-за "
"неспособности подтвердить надежный трафик. Значения тайм-аута выражаются в "
"миллисекундах.\n"
"[param timeout] — это фактор, который, умноженный на значение, основанное на "
"среднем времени кругового пути, определит предел тайм-аута для надежного "
"пакета. Когда этот предел достигнут, тайм-аут будет удвоен, и одноранговый "
"узел будет отключен, если этот предел достигнет [param timeout_min]. Параметр "
"[param timeout_max], с другой стороны, определяет фиксированный тайм-аут, в "
"течение которого любой пакет должен быть подтвержден, иначе одноранговый узел "
"будет отброшен."

msgid ""
"Configures throttle parameter for a peer.\n"
"Unreliable packets are dropped by ENet in response to the varying conditions "
"of the Internet connection to the peer. The throttle represents a probability "
"that an unreliable packet should not be dropped and thus sent by ENet to the "
"peer. By measuring fluctuations in round trip times of reliable packets over "
"the specified [param interval], ENet will either increase the probability by "
"the amount specified in the [param acceleration] parameter, or decrease it by "
"the amount specified in the [param deceleration] parameter (both are ratios "
"to [constant PACKET_THROTTLE_SCALE]).\n"
"When the throttle has a value of [constant PACKET_THROTTLE_SCALE], no "
"unreliable packets are dropped by ENet, and so 100% of all unreliable packets "
"will be sent.\n"
"When the throttle has a value of [code]0[/code], all unreliable packets are "
"dropped by ENet, and so 0% of all unreliable packets will be sent.\n"
"Intermediate values for the throttle represent intermediate probabilities "
"between 0% and 100% of unreliable packets being sent. The bandwidth limits of "
"the local and foreign hosts are taken into account to determine a sensible "
"limit for the throttle probability above which it should not raise even in "
"the best of conditions."
msgstr ""
"Настраивает параметр дросселя для однорангового пир.\n"
"Ненадежные пакеты отбрасываются ENet в ответ на изменяющиеся условия интернет-"
"подключения к одноранговому пир. Дроссель представляет собой вероятность "
"того, что ненадежный пакет не будет отброшен и, таким образом, отправлен ENet "
"одноранговому пиру. Измеряя колебания времени кругового пути надежных пакетов "
"в течение указанного [param interval], ENet либо увеличит вероятность на "
"величину, указанную в параметре [param acceleration], либо уменьшит ее на "
"величину, указанную в параметре [param deceleration] (оба являются "
"отношениями к [constant PACKET_THROTTLE_SCALE]).\n"
"Когда дроссель имеет значение [constant PACKET_THROTTLE_SCALE], ненадежные "
"пакеты не отбрасываются ENet, и поэтому будет отправлено 100% всех ненадежных "
"пакетов.\n"
"Когда дроссель имеет значение [code]0[/code], все ненадежные пакеты "
"отбрасываются ENet, и поэтому будет отправлено 0% всех ненадежных пакетов.\n"
"Промежуточные значения для дросселя представляют собой промежуточные "
"вероятности между 0% и 100% ненадежных отправляемых пакетов. Ограничения "
"пропускной способности локальных и внешних хостов учитываются для определения "
"разумного предела для вероятности дросселя, выше которого он не должен "
"подниматься даже в самых лучших условиях."

msgid "The peer is disconnected."
msgstr "Узел отключен."

msgid "The peer is currently attempting to connect."
msgstr "В настоящее время пир пытается подключиться."

msgid "The peer has acknowledged the connection request."
msgstr "Пир подтвердил запрос на соединение."

msgid "The peer is currently connecting."
msgstr "В настоящее время пир подключается."

msgid ""
"The peer has successfully connected, but is not ready to communicate with yet "
"([constant STATE_CONNECTED])."
msgstr ""
"Пир успешно подключился, но пока не готов к взаимодействию ([constant "
"STATE_CONNECTED])."

msgid "The peer is currently connected and ready to communicate with."
msgstr "В настоящее время пир подключен и готов к коммуникации."

msgid ""
"The peer is expected to disconnect after it has no more outgoing packets to "
"send."
msgstr ""
"Ожидается, что одноранговый узел отключится, когда у него больше не останется "
"исходящих пакетов для отправки."

msgid "The peer is currently disconnecting."
msgstr "В настоящее время соединение с пиром отключается."

msgid "The peer has acknowledged the disconnection request."
msgstr "Пир подтвердил запрос на отключение."

msgid ""
"The peer has lost connection, but is not considered truly disconnected (as "
"the peer didn't acknowledge the disconnection request)."
msgstr ""
"Соединение с одноранговым пир было потеряно, но оно не считается полностью "
"отключенным (поскольку одноранговый пир не подтвердил запрос на отключение)."

msgid ""
"Mean packet loss of reliable packets as a ratio with respect to the [constant "
"PACKET_LOSS_SCALE]."
msgstr ""
"Средняя потеря надежных пакетов как отношение к [constant PACKET_LOSS_SCALE]."

msgid "Packet loss variance."
msgstr "Коэффициент потери пакетов."

msgid ""
"The time at which packet loss statistics were last updated (in milliseconds "
"since the connection started). The interval for packet loss statistics "
"updates is 10 seconds, and at least one packet must have been sent since the "
"last statistics update."
msgstr ""
"Время последнего обновления статистики потери пакетов (в миллисекундах с "
"момента начала соединения). Интервал обновления статистики потери пакетов "
"составляет 10 секунд, и с момента последнего обновления статистики должен "
"быть отправлен хотя бы один пакет."

msgid "Mean packet round trip time for reliable packets."
msgstr "Среднее время прохождения пакета туда и обратно для надежных пакетов."

msgid "Variance of the mean round trip time."
msgstr "Разница среднего времени прохождения сигнала туда и обратно."

msgid "Last recorded round trip time for a reliable packet."
msgstr ""
"Последнее зафиксированное время прохождения надежного пакета туда и обратно."

msgid "Variance of the last trip time recorded."
msgstr "Разница во времени последней зафиксированной поездки."

msgid "The peer's current throttle status."
msgstr "Текущий статус дросселя однорангового пира."

msgid ""
"The maximum number of unreliable packets that should not be dropped. This "
"value is always greater than or equal to [code]1[/code]. The initial value is "
"equal to [constant PACKET_THROTTLE_SCALE]."
msgstr ""
"Максимальное количество ненадежных пакетов, которые не должны быть отброшены. "
"Это значение всегда больше или равно [code]1[/code]. Начальное значение равно "
"[constant PACKET_THROTTLE_SCALE]."

msgid ""
"Internal value used to increment the packet throttle counter. The value is "
"hardcoded to [code]7[/code] and cannot be changed. You probably want to look "
"at [constant PEER_PACKET_THROTTLE_ACCELERATION] instead."
msgstr ""
"Внутреннее значение, используемое для увеличения счетчика дросселя пакетов. "
"Значение жестко закодировано в [code]7[/code] и не может быть изменено. "
"Вероятно, вместо этого вам следует взглянуть на [constant "
"PEER_PACKET_THROTTLE_ACCELERATION]."

msgid ""
"The time at which throttle statistics were last updated (in milliseconds "
"since the connection started). The interval for throttle statistics updates "
"is [constant PEER_PACKET_THROTTLE_INTERVAL]."
msgstr ""
"Время последнего обновления статистики дросселя (в миллисекундах с момента "
"начала соединения). Интервал обновления статистики дросселя — [constant "
"PEER_PACKET_THROTTLE_INTERVAL]."

msgid ""
"The throttle's acceleration factor. Higher values will make ENet adapt to "
"fluctuating network conditions faster, causing unrelaible packets to be sent "
"[i]more[/i] often. The default value is [code]2[/code]."
msgstr ""
"Фактор ускорения дросселя. Более высокие значения заставят ENet быстрее "
"адаптироваться к изменяющимся условиям сети, что приведет к отправке "
"ненадежных пакетов [i]чаще[/i]. Значение по умолчанию — [code]2[/code]."

msgid ""
"The throttle's deceleration factor. Higher values will make ENet adapt to "
"fluctuating network conditions faster, causing unrelaible packets to be sent "
"[i]less[/i] often. The default value is [code]2[/code]."
msgstr ""
"Фактор замедления дросселя. Более высокие значения заставят ENet быстрее "
"адаптироваться к изменяющимся условиям сети, что приведет к отправке "
"ненадежных пакетов [i]реже[/i] часто. Значение по умолчанию — [code]2[/code]."

msgid ""
"The interval over which the lowest mean round trip time should be measured "
"for use by the throttle mechanism (in milliseconds). The default value is "
"[code]5000[/code]."
msgstr ""
"Интервал, в течение которого должно измеряться наименьшее среднее время "
"прохождения сигнала туда и обратно для использования механизмом дроссельной "
"заслонки (в миллисекундах). Значение по умолчанию — [code]5000[/code]."

msgid ""
"The reference scale for packet loss. See [method get_statistic] and [constant "
"PEER_PACKET_LOSS]."
msgstr ""
"Опорная шкала для потери пакетов. См. [method get_statistic] и [constant "
"PEER_PACKET_LOSS]."

msgid ""
"The reference value for throttle configuration. The default value is "
"[code]32[/code]. See [method throttle_configure]."
msgstr ""
"Опорное значение для конфигурации дросселя. Значение по умолчанию — [code]32[/"
"code]. См. [method throttle_configure]."

msgid "Mark the packet to be sent as reliable."
msgstr "Пометить отправляемый пакет как надежный."

msgid "Mark the packet to be sent unsequenced (unreliable)."
msgstr ""
"Отметить пакет, подлежащий отправке, как непоследовательный (ненадежный)."

msgid ""
"Mark the packet to be sent unreliable even if the packet is too big and needs "
"fragmentation (increasing the chance of it being dropped)."
msgstr ""
"Пометить отправляемый пакет как ненадежный, даже если пакет слишком большой и "
"требует фрагментации (что увеличивает вероятность его потери)."

msgid "Provides access to engine properties."
msgstr "Предоставляет доступ к свойствам движка."

msgid ""
"The [Engine] singleton allows you to query and modify the project's run-time "
"parameters, such as frames per second, time scale, and others. It also stores "
"information about the current build of Godot, such as the current version."
msgstr ""
"Синглтон [Engine] позволяет вам запрашивать и изменять параметры времени "
"выполнения проекта, такие как количество кадров в секунду, масштаб времени и "
"другие. Он также хранит информацию о текущей сборке Godot, например, текущую "
"версию."

msgid ""
"Captures and returns backtraces from all registered script languages.\n"
"By default, the returned [ScriptBacktrace] will only contain stack frames in "
"editor builds and debug builds. To enable them for release builds as well, "
"you need to enable [member ProjectSettings.debug/settings/gdscript/"
"always_track_call_stacks].\n"
"If [param include_variables] is [code]true[/code], the backtrace will also "
"include the names and values of any global variables (e.g. autoload "
"singletons) at the point of the capture, as well as local variables and class "
"member variables at each stack frame. This will however will only be "
"respected when running the game with a debugger attached, like when running "
"the game from the editor. To enable it for export builds as well, you need to "
"enable [member ProjectSettings.debug/settings/gdscript/"
"always_track_local_variables].\n"
"[b]Warning:[/b] When [param include_variables] is [code]true[/code], any "
"captured variables can potentially (e.g. with GDScript backtraces) be their "
"actual values, including any object references. This means that storing such "
"a [ScriptBacktrace] will prevent those objects from being deallocated, so "
"it's generally recommended not to do so."
msgstr ""
"Захватывает и возвращает обратные трассировки из всех зарегистрированных "
"языков скриптов.\n"
"По умолчанию возвращаемый [ScriptBacktrace] будет содержать только кадры "
"стека в сборках редактора и отладочных сборках. Чтобы включить их также для "
"сборок выпуска, вам необходимо включить [member ProjectSettings.debug/"
"settings/gdscript/always_track_call_stacks].\n"
"Если [param include_variables] имеет значение [code]true[/code], обратная "
"трассировка также будет включать имена и значения любых глобальных переменных "
"(например, автозагрузочных синглтонов) в точке захвата, а также локальных "
"переменных и переменных-членов класса в каждом кадре стека. Однако это будет "
"учитываться только при запуске игры с подключенным отладчиком, например, при "
"запуске игры из редактора. Чтобы включить его также для экспортных сборок, "
"вам необходимо включить [member ProjectSettings.debug/settings/gdscript/"
"always_track_local_variables].\n"
"[b]Предупреждение:[/b] Когда [param include_variables] равен [code]true[/"
"code], любые захваченные переменные могут потенциально (например, с обратными "
"трассировками GDScript) быть их фактическими значениями, включая любые ссылки "
"на объекты. Это означает, что сохранение такого [ScriptBacktrace] "
"предотвратит освобождение этих объектов, поэтому обычно рекомендуется этого "
"не делать."

msgid ""
"Returns the name of the CPU architecture the Godot binary was built for. "
"Possible return values include [code]\"x86_64\"[/code], [code]\"x86_32\"[/"
"code], [code]\"arm64\"[/code], [code]\"arm32\"[/code], [code]\"rv64\"[/code], "
"[code]\"ppc64\"[/code], [code]\"loongarch64\"[/code], [code]\"wasm64\"[/"
"code], and [code]\"wasm32\"[/code].\n"
"To detect whether the current build is 64-bit, or the type of architecture, "
"don't use the architecture name. Instead, use [method OS.has_feature] to "
"check for the [code]\"64\"[/code] feature tag, or tags such as [code]\"x86\"[/"
"code] or [code]\"arm\"[/code]. See the [url=$DOCS_URL/tutorials/export/"
"feature_tags.html]Feature Tags[/url] documentation for more details.\n"
"[b]Note:[/b] This method does [i]not[/i] return the name of the system's CPU "
"architecture (like [method OS.get_processor_name]). For example, when running "
"an [code]x86_32[/code] Godot binary on an [code]x86_64[/code] system, the "
"returned value will still be [code]\"x86_32\"[/code]."
msgstr ""
"Возвращает имя архитектуры ЦП, для которой был собран двоичный файл Godot. "
"Возможные возвращаемые значения включают [code]\"x86_64\"[/code], [code]"
"\"x86_32\"[/code], [code]\"arm64\"[/code], [code]\"arm32\"[/code], [code]"
"\"rv64\"[/code], [code]\"ppc64\"[/code], [code]\"loongarch64\"[/code], [code]"
"\"wasm64\"[/code] и [code]\"wasm32\"[/code].\n"
"Чтобы определить, является ли текущая сборка 64-разрядной, или тип "
"архитектуры, не используйте имя архитектуры. Вместо этого используйте [method "
"OS.has_feature] для проверки тега функции [code]\"64\"[/code] или тегов, "
"таких как [code]\"x86\"[/code] или [code]\"arm\"[/code]. Более подробную "
"информацию см. в документации [url=$DOCS_URL/tutorials/export/"
"feature_tags.html]Теги функций[/url].\n"
"[b]Примечание:[/b] Этот метод [i]не[/i] возвращает имя архитектуры ЦП системы "
"(как [method OS.get_processor_name]). Например, при запуске двоичного файла "
"Godot [code]x86_32[/code] в системе [code]x86_64[/code] возвращаемое значение "
"по-прежнему будет [code]\"x86_32\"[/code]."

msgid ""
"Returns the engine author information as a [Dictionary], where each entry is "
"an [Array] of strings with the names of notable contributors to the Godot "
"Engine: [code]lead_developers[/code], [code]founders[/code], "
"[code]project_managers[/code], and [code]developers[/code]."
msgstr ""
"Возвращает информацию об авторе движка в виде [Dictionary], где каждая запись "
"представляет собой [Array] строк с именами известных участников движка Godot: "
"[code]lead_developers[/code], [code]founders[/code], [code]project_managers[/"
"code] и [code]developers[/code]."

msgid ""
"Returns an [Array] of dictionaries with copyright information for every "
"component of Godot's source code.\n"
"Every [Dictionary] contains a [code]name[/code] identifier, and a "
"[code]parts[/code] array of dictionaries. It describes the component in "
"detail with the following entries:\n"
"- [code]files[/code] - [Array] of file paths from the source code affected by "
"this component;\n"
"- [code]copyright[/code] - [Array] of owners of this component;\n"
"- [code]license[/code] - The license applied to this component (such as "
"\"[url=https://en.wikipedia.org/wiki/"
"MIT_License#Ambiguity_and_variants]Expat[/url]\" or \"[url=https://"
"creativecommons.org/licenses/by/4.0/]CC-BY-4.0[/url]\")."
msgstr ""
"Возвращает [Array] словарей с информацией об авторских правах для каждого "
"компонента исходного кода Godot.\n"
"Каждый [Dictionary] содержит идентификатор [code]name[/code] и массив "
"[code]parts[/code] словарей. Он подробно описывает компонент с помощью "
"следующих записей:\n"
"- [code]files[/code] - [Array] путей к файлам из исходного кода, затронутого "
"этим компонентом;\n"
"- [code]copyright[/code] - [Array] владельцев этого компонента;\n"
"- [code]license[/code] - Лицензия, применяемая к этому компоненту (например, "
"\"[url=https://en.wikipedia.org/wiki/"
"MIT_License#Ambiguity_and_variants]Expat[/url]\" или \"[url=https://"
"creativecommons.org/licenses/by/4.0/]CC-BY-4.0[/url]\")."

msgid ""
"Returns a [Dictionary] of categorized donor names. Each entry is an [Array] "
"of strings:\n"
"{[code]platinum_sponsors[/code], [code]gold_sponsors[/code], "
"[code]silver_sponsors[/code], [code]bronze_sponsors[/code], "
"[code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/"
"code], [code]bronze_donors[/code]}"
msgstr ""
"Возвращает [Словарь] категоризированных имен доноров. Каждая запись — это "
"[Array] строк:\n"
"{[code]platinum_sponsors[/code], [code]gold_sponsors[/code], "
"[code]silver_sponsors[/code], [code]bronze_sponsors[/code], "
"[code]mini_sponsors[/code], [code]gold_donors[/code], [code]silver_donors[/"
"code], [code]bronze_donors[/code]}"

msgid ""
"Returns the total number of frames drawn since the engine started.\n"
"[b]Note:[/b] On headless platforms, or if rendering is disabled with [code]--"
"disable-render-loop[/code] via command line, this method always returns "
"[code]0[/code]. See also [method get_process_frames]."
msgstr ""
"Возвращает общее количество кадров, отрисованных с момента запуска движка.\n"
"[b]Примечание:[/b] На платформах headless или если рендеринг отключен с "
"помощью [code]--disable-render-loop[/code] через командную строку, этот метод "
"всегда возвращает [code]0[/code]. См. также [method get_process_frames]."

msgid ""
"Returns the average frames rendered every second (FPS), also known as the "
"framerate."
msgstr ""
"Возвращает среднее количество кадров, отображаемых каждую секунду (FPS), "
"также известное как частота кадров."

msgid ""
"Returns a [Dictionary] of licenses used by Godot and included third party "
"components. Each entry is a license name (such as \"[url=https://"
"en.wikipedia.org/wiki/MIT_License#Ambiguity_and_variants]Expat[/url]\") and "
"its associated text."
msgstr ""
"Возвращает [Dictionary] лицензий, используемых Godot, и включенных сторонних "
"компонентов. Каждая запись представляет собой имя лицензии (например, "
"\"[url=https://en.wikipedia.org/wiki/"
"MIT_License#Ambiguity_and_variants]Expat[/url]\") и связанный с ней текст."

msgid "Returns the full Godot license text."
msgstr "Возвращает полный текст лицензии Godot."

msgid ""
"Returns the instance of the [MainLoop]. This is usually the main [SceneTree] "
"and is the same as [method Node.get_tree].\n"
"[b]Note:[/b] The type instantiated as the main loop can changed with [member "
"ProjectSettings.application/run/main_loop_type]."
msgstr ""
"Возвращает экземпляр [MainLoop]. Обычно это основной [SceneTree] и он такой "
"же, как [method Node.get_tree].\n"
"[b]Примечание:[/b] Тип, созданный как основной цикл, может быть изменен с "
"помощью [member ProjectSettings.application/run/main_loop_type]."

msgid ""
"Returns the total number of frames passed since the engine started. This "
"number is increased every [b]physics frame[/b]. See also [method "
"get_process_frames].\n"
"This method can be used to run expensive logic less often without relying on "
"a [Timer]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _physics_process(_delta):\n"
"\tif Engine.get_physics_frames() % 2 == 0:\n"
"\t\tpass # Run expensive logic only once every 2 physics frames here.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _PhysicsProcess(double delta)\n"
"{\n"
"\tbase._PhysicsProcess(delta);\n"
"\n"
"\tif (Engine.GetPhysicsFrames() % 2 == 0)\n"
"\t{\n"
"\t\t// Run expensive logic only once every 2 physics frames here.\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает общее количество кадров, пройденных с момента запуска движка. Это "
"число увеличивается каждый [b]физический кадр[/b]. См. также [method "
"get_process_frames].\n"
"Этот метод можно использовать для более редкого запуска дорогостоящей логики "
"без использования [Timer]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _physics_process(_delta):\n"
"\tif Engine.get_physics_frames() % 2 == 0:\n"
"\t\tpass # Здесь дорогостоящая логика выполняется только один раз каждые 2 "
"физических кадра.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _PhysicsProcess(double delta)\n"
"{\n"
"\tbase._PhysicsProcess(delta);\n"
"\n"
"\tif (Engine.GetPhysicsFrames() % 2 == 0)\n"
"\t{\n"
"\t\t// Здесь дорогостоящая логика выполняется только один раз каждые 2 "
"физических кадра.\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the fraction through the current physics tick we are at the time of "
"rendering the frame. This can be used to implement fixed timestep "
"interpolation."
msgstr ""
"Возвращает дробь через текущий физический тик, в котором мы находимся во "
"время рендеринга кадра. Это можно использовать для реализации интерполяции с "
"фиксированным временным шагом."

msgid ""
"Returns the total number of frames passed since the engine started. This "
"number is increased every [b]process frame[/b], regardless of whether the "
"render loop is enabled. See also [method get_frames_drawn] and [method "
"get_physics_frames].\n"
"This method can be used to run expensive logic less often without relying on "
"a [Timer]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(_delta):\n"
"\tif Engine.get_process_frames() % 5 == 0:\n"
"\t\tpass # Run expensive logic only once every 5 process (render) frames "
"here.\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Process(double delta)\n"
"{\n"
"\tbase._Process(delta);\n"
"\n"
"\tif (Engine.GetProcessFrames() % 5 == 0)\n"
"\t{\n"
"\t\t// Run expensive logic only once every 5 process (render) frames here.\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает общее количество кадров, пройденных с момента запуска движка. Это "
"число увеличивается каждый [b]кадр процесса[/b], независимо от того, включен "
"ли цикл рендеринга. См. также [method get_frames_drawn] и [method "
"get_physics_frames].\n"
"Этот метод можно использовать для менее частого запуска дорогостоящей логики "
"без использования [Timer]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _process(_delta):\n"
"\tif Engine.get_process_frames() % 5 == 0:\n"
"\t\tpass # Здесь дорогостоящая логика выполняется только один раз за каждые 5 "
"кадров обработки (рендеринга).\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Process(double delta)\n"
"{\n"
"\tbase._Process(delta);\n"
"\n"
"\tif (Engine.GetProcessFrames() % 5 == 0)\n"
"\t{\n"
"\t\t// Здесь дорогостоящая логика выполняется только один раз за каждые 5 "
"кадров обработки (рендеринга).\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns an instance of a [ScriptLanguage] with the given [param index]."
msgstr "Возвращает экземпляр [ScriptLanguage] с заданным [param index]."

msgid ""
"Returns the number of available script languages. Use with [method "
"get_script_language]."
msgstr ""
"Возвращает количество доступных языков для скриптов. Используйте с [method "
"get_script_language]."

msgid ""
"Returns the global singleton with the given [param name], or [code]null[/"
"code] if it does not exist. Often used for plugins. See also [method "
"has_singleton] and [method get_singleton_list].\n"
"[b]Note:[/b] Global singletons are not the same as autoloaded nodes, which "
"are configurable in the project settings."
msgstr ""
"Возвращает глобальный синглтон с заданным [param name] или [code]null[/code], "
"если он не существует. Часто используется для плагинов. См. также [method "
"has_singleton] и [method get_singleton_list].\n"
"[b]Примечание:[/b] Глобальные синглтоны — это не то же самое, что "
"автоматически загружаемые узлы, которые настраиваются в настройках проекта."

msgid ""
"Returns a list of names of all available global singletons. See also [method "
"get_singleton]."
msgstr ""
"Возвращает список имен всех доступных глобальных синглтонов. См. также "
"[method get_singleton]."

msgid ""
"Returns the current engine version information as a [Dictionary] containing "
"the following entries:\n"
"- [code]major[/code] - Major version number as an int;\n"
"- [code]minor[/code] - Minor version number as an int;\n"
"- [code]patch[/code] - Patch version number as an int;\n"
"- [code]hex[/code] - Full version encoded as a hexadecimal int with one byte "
"(2 hex digits) per number (see example below);\n"
"- [code]status[/code] - Status (such as \"beta\", \"rc1\", \"rc2\", "
"\"stable\", etc.) as a String;\n"
"- [code]build[/code] - Build name (e.g. \"custom_build\") as a String;\n"
"- [code]hash[/code] - Full Git commit hash as a String;\n"
"- [code]timestamp[/code] - Holds the Git commit date UNIX timestamp in "
"seconds as an int, or [code]0[/code] if unavailable;\n"
"- [code]string[/code] - [code]major[/code], [code]minor[/code], [code]patch[/"
"code], [code]status[/code], and [code]build[/code] in a single String.\n"
"The [code]hex[/code] value is encoded as follows, from left to right: one "
"byte for the major, one byte for the minor, one byte for the patch version. "
"For example, \"3.1.12\" would be [code]0x03010C[/code].\n"
"[b]Note:[/b] The [code]hex[/code] value is still an [int] internally, and "
"printing it will give you its decimal representation, which is not "
"particularly meaningful. Use hexadecimal literals for quick version "
"comparisons from code:\n"
"[codeblocks]\n"
"[gdscript]\n"
"if Engine.get_version_info().hex >= 0x040100:\n"
"\tpass # Do things specific to version 4.1 or later.\n"
"else:\n"
"\tpass # Do things specific to versions before 4.1.\n"
"[/gdscript]\n"
"[csharp]\n"
"if ((int)Engine.GetVersionInfo()[\"hex\"] >= 0x040100)\n"
"{\n"
"\t// Do things specific to version 4.1 or later.\n"
"}\n"
"else\n"
"{\n"
"\t// Do things specific to versions before 4.1.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает информацию о текущей версии движка в виде [Dictionary], "
"содержащего следующие записи:\n"
"- [code]major[/code] - номер основной версии в виде целого числа;\n"
"- [code]minor[/code] - номер дополнительной версии в виде целого числа;\n"
"- [code]patch[/code] - номер версии исправления в виде целого числа;\n"
"- [code]hex[/code] - полная версия, закодированная в виде шестнадцатеричного "
"целого числа с одним байтом (2 шестнадцатеричные цифры) на число (см. пример "
"ниже);\n"
"- [code]status[/code] - статус (например, \"beta\", \"rc1\", \"rc2\", "
"\"stable\" и т. д.) в виде строки;\n"
"- [code]build[/code] - имя сборки (например, \"custom_build\") в виде "
"строки;\n"
"- [code]hash[/code] - полный хэш коммита Git в виде строки;\n"
"- [code]timestamp[/code] - Содержит дату коммита Git UNIX timestamp в "
"секундах как int или [code]0[/code], если недоступно;\n"
"- [code]string[/code] - [code]major[/code], [code]minor[/code], [code]patch[/"
"code], [code]status[/code] и [code]build[/code] в одной строке.\n"
"Значение [code]hex[/code] кодируется следующим образом, слева направо: один "
"байт для основной версии, один байт для второстепенной, один байт для версии "
"патча. Например, \"3.1.12\" будет [code]0x03010C[/code].\n"
"[b]Примечание:[/b] Значение [code]hex[/code] по-прежнему является [int] "
"внутренне, и его вывод даст вам его десятичное представление, которое не "
"имеет особого смысла. Используйте шестнадцатеричные литералы для быстрого "
"сравнения версий из кода:\n"
"[codeblocks]\n"
"[gdscript]\n"
"if Engine.get_version_info().hex >= 0x040100:\n"
"\tpass # Выполните действия, характерные для версии 4.1 или более поздней.\n"
"else:\n"
"\tpass # Выполните действия, характерные для версий до 4.1.\n"
"[/gdscript]\n"
"[csharp]\n"
"if ((int)Engine.GetVersionInfo()[\"hex\"] >= 0x040100)\n"
"{\n"
"\t// Выполните действия, характерные для версии 4.1 или более поздней.\n"
"}\n"
"else\n"
"{\n"
"\t// Выполните действия, характерные для версий до 4.1.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the path to the [MovieWriter]'s output file, or an empty string if "
"the engine wasn't started in Movie Maker mode. The default path can be "
"changed in [member ProjectSettings.editor/movie_writer/movie_file]."
msgstr ""
"Возвращает путь к выходному файлу [MovieWriter] или пустую строку, если "
"движок не был запущен в режиме Movie Maker. Путь по умолчанию можно изменить "
"в [member ProjectSettings.editor/movie_writer/movie_file]."

msgid ""
"Returns [code]true[/code] if a singleton with the given [param name] exists "
"in the global scope. See also [method get_singleton].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(Engine.has_singleton(\"OS\"))          # Prints true\n"
"print(Engine.has_singleton(\"Engine\"))      # Prints true\n"
"print(Engine.has_singleton(\"AudioServer\")) # Prints true\n"
"print(Engine.has_singleton(\"Unknown\"))     # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(Engine.HasSingleton(\"OS\"));          // Prints True\n"
"GD.Print(Engine.HasSingleton(\"Engine\"));      // Prints True\n"
"GD.Print(Engine.HasSingleton(\"AudioServer\")); // Prints True\n"
"GD.Print(Engine.HasSingleton(\"Unknown\"));     // Prints False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Global singletons are not the same as autoloaded nodes, which "
"are configurable in the project settings."
msgstr ""
"Возвращает [code]true[/code], если синглтон с указанным [param name] "
"существует в глобальной области видимости. См. также [method get_singleton].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(Engine.has_singleton(\"OS\"))          # Prints true\n"
"print(Engine.has_singleton(\"Engine\"))      # Prints true\n"
"print(Engine.has_singleton(\"AudioServer\")) # Prints true\n"
"print(Engine.has_singleton(\"Unknown\"))     # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(Engine.HasSingleton(\"OS\"));          // Prints True\n"
"GD.Print(Engine.HasSingleton(\"Engine\"));      // Prints True\n"
"GD.Print(Engine.HasSingleton(\"AudioServer\")); // Prints True\n"
"GD.Print(Engine.HasSingleton(\"Unknown\"));     // Prints False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Глобальные синглтоны — это не то же самое, что "
"автоматически загружаемые узлы, которые настраиваются в настройках проекта."

msgid ""
"Returns [code]true[/code] if the script is currently running inside the "
"editor, otherwise returns [code]false[/code]. This is useful for [code]@tool[/"
"code] scripts to conditionally draw editor helpers, or prevent accidentally "
"running \"game\" code that would affect the scene state while in the editor:\n"
"[codeblocks]\n"
"[gdscript]\n"
"if Engine.is_editor_hint():\n"
"\tdraw_gizmos()\n"
"else:\n"
"\tsimulate_physics()\n"
"[/gdscript]\n"
"[csharp]\n"
"if (Engine.IsEditorHint())\n"
"\tDrawGizmos();\n"
"else\n"
"\tSimulatePhysics();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See [url=$DOCS_URL/tutorials/plugins/running_code_in_the_editor.html]Running "
"code in the editor[/url] in the documentation for more information.\n"
"[b]Note:[/b] To detect whether the script is running on an editor [i]build[/"
"i] (such as when pressing [kbd]F5[/kbd]), use [method OS.has_feature] with "
"the [code]\"editor\"[/code] argument instead. [code]OS.has_feature(\"editor\")"
"[/code] evaluate to [code]true[/code] both when the script is running in the "
"editor and when running the project from the editor, but returns [code]false[/"
"code] when run from an exported project."
msgstr ""
"Возвращает [code]true[/code], если скрипт в данный момент выполняется внутри "
"редактора, в противном случае возвращает [code]false[/code]. Это полезно для "
"скриптов [code]@tool[/code] для условной отрисовки помощников редактора или "
"предотвращения случайного запуска «игрового» кода, который может повлиять на "
"состояние сцены в редакторе:\n"
"[codeblocks]\n"
"[gdscript]\n"
"if Engine.is_editor_hint():\n"
"\tdraw_gizmos()\n"
"else:\n"
"\tsimulate_physics()\n"
"[/gdscript]\n"
"[csharp]\n"
"if (Engine.IsEditorHint())\n"
"\tDrawGizmos();\n"
"else\n"
"\tSimulatePhysics();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. [url=$DOCS_URL/tutorials/plugins/running_code_in_the_editor.html]Запуск "
"кода в редакторе[/url] в документации для получения дополнительной "
"информации.\n"
"[b]Примечание:[/b] Чтобы определить, запущен ли скрипт в редакторе [i]build[/"
"i] (например, при нажатии [kbd]F5[/kbd]), вместо этого используйте [method "
"OS.has_feature] с аргументом [code]\"editor\"[/code]. "
"[code]OS.has_feature(\"editor\")[/code] оценивается как [code]true[/code] как "
"при запуске скрипта в редакторе, так и при запуске проекта из редактора, но "
"возвращает [code]false[/code] при запуске из экспортированного проекта."

msgid ""
"Returns [code]true[/code] if the engine is running embedded in the editor. "
"This is useful to prevent attempting to update window mode or window flags "
"that are not supported when running the project embedded in the editor."
msgstr ""
"Возвращает [code]true[/code], если движок запущен встроенным в редактор. Это "
"полезно для предотвращения попыток обновления режима окна или флагов окна, "
"которые не поддерживаются при запуске проекта, встроенного в редактор."

msgid ""
"Returns [code]true[/code] if the engine is inside the fixed physics process "
"step of the main loop.\n"
"[codeblock]\n"
"func _enter_tree():\n"
"\t# Depending on when the node is added to the tree,\n"
"\t# prints either \"true\" or \"false\".\n"
"\tprint(Engine.is_in_physics_frame())\n"
"\n"
"func _process(delta):\n"
"\tprint(Engine.is_in_physics_frame()) # Prints false\n"
"\n"
"func _physics_process(delta):\n"
"\tprint(Engine.is_in_physics_frame()) # Prints true\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]true[/code], если движок находится внутри фиксированного "
"шага физического процесса основного цикла.\n"
"[codeblock]\n"
"func _enter_tree():\n"
"\t# В зависимости от того, когда узел добавляется в дерево,\n"
"\t# печатает либо \"true\" или \"false\".\n"
"\tprint(Engine.is_in_physics_frame())\n"
"\n"
"func _process(delta):\n"
"\tprint(Engine.is_in_physics_frame()) # Prints false\n"
"\n"
"func _physics_process(delta):\n"
"\tprint(Engine.is_in_physics_frame()) # Prints true\n"
"[/codeblock]"

msgid ""
"Registers a [ScriptLanguage] instance to be available with "
"[code]ScriptServer[/code].\n"
"Returns:\n"
"- [constant OK] on success;\n"
"- [constant ERR_UNAVAILABLE] if [code]ScriptServer[/code] has reached the "
"limit and cannot register any new language;\n"
"- [constant ERR_ALREADY_EXISTS] if [code]ScriptServer[/code] already contains "
"a language with similar extension/name/type."
msgstr ""
"Регистрирует экземпляр [ScriptLanguage], который будет доступен с "
"[code]ScriptServer[/code].\n"
"Возвращает:\n"
"- [constant OK] об успехе;\n"
"- [constant ERR_UNAVAILABLE] если [code]ScriptServer[/code] достиг лимита и "
"не может зарегистрировать ни одного нового языка;\n"
"- [constant ERR_ALREADY_EXISTS] если [code]ScriptServer[/code] уже содержит "
"язык с похожим расширением/названием/типом."

msgid ""
"Registers the given [Object] [param instance] as a singleton, available "
"globally under [param name]. Useful for plugins."
msgstr ""
"Регистрирует заданный [Object] [param instance] как синглтон, доступный "
"глобально под [param name]. Полезно для плагинов."

msgid ""
"Unregisters the [ScriptLanguage] instance from [code]ScriptServer[/code].\n"
"Returns:\n"
"- [constant OK] on success;\n"
"- [constant ERR_DOES_NOT_EXIST] if the language is not registered in "
"[code]ScriptServer[/code]."
msgstr ""
"Отменяет регистрацию экземпляра [ScriptLanguage] из [code]ScriptServer[/"
"code].\n"
"Возвращает:\n"
"- [constant OK] при успешном выполнении;\n"
"- [constant ERR_DOES_NOT_EXIST], если язык не зарегистрирован в "
"[code]ScriptServer[/code]."

msgid ""
"Removes the singleton registered under [param name]. The singleton object is "
"[i]not[/i] freed. Only works with user-defined singletons registered with "
"[method register_singleton]."
msgstr ""
"Удаляет синглтон, зарегистрированный под [param name]. Объект синглтон [i]не[/"
"i] освобожден. Работает только с определенными пользователем синглтонами, "
"зарегистрированными с помощью [method register_singleton]."

msgid ""
"The maximum number of frames that can be rendered every second (FPS). A value "
"of [code]0[/code] means the framerate is uncapped.\n"
"Limiting the FPS can be useful to reduce the host machine's power "
"consumption, which reduces heat, noise emissions, and improves battery life.\n"
"If [member ProjectSettings.display/window/vsync/vsync_mode] is [b]Enabled[/b] "
"or [b]Adaptive[/b], the setting takes precedence and the max FPS number "
"cannot exceed the monitor's refresh rate.\n"
"If [member ProjectSettings.display/window/vsync/vsync_mode] is [b]Enabled[/"
"b], on monitors with variable refresh rate enabled (G-Sync/FreeSync), using "
"an FPS limit a few frames lower than the monitor's refresh rate will "
"[url=https://blurbusters.com/howto-low-lag-vsync-on/]reduce input lag while "
"avoiding tearing[/url].\n"
"See also [member physics_ticks_per_second] and [member "
"ProjectSettings.application/run/max_fps].\n"
"[b]Note:[/b] The actual number of frames per second may still be below this "
"value if the CPU or GPU cannot keep up with the project's logic and "
"rendering.\n"
"[b]Note:[/b] If [member ProjectSettings.display/window/vsync/vsync_mode] is "
"[b]Disabled[/b], limiting the FPS to a high value that can be consistently "
"reached on the system can reduce input lag compared to an uncapped framerate. "
"Since this works by ensuring the GPU load is lower than 100%, this latency "
"reduction is only effective in GPU-bottlenecked scenarios, not CPU-"
"bottlenecked scenarios."
msgstr ""
"Максимальное количество кадров, которые могут быть отрисованы каждую секунду "
"(FPS). Значение [code]0[/code] означает, что частота кадров не ограничена.\n"
"Ограничение FPS может быть полезным для снижения энергопотребления хост-"
"машины, что снижает тепловыделение, шумовые выбросы и увеличивает срок службы "
"батареи.\n"
"Если [member ProjectSettings.display/window/vsync/vsync_mode] [b]Enabled[/b] "
"или [b]Adaptive[/b], настройка имеет приоритет, и максимальное число FPS не "
"может превышать частоту обновления монитора.\n"
"Если [member ProjectSettings.display/window/vsync/vsync_mode] [b]Включено[/"
"b], на мониторах с включенной переменной частотой обновления (G-Sync/"
"FreeSync) использование ограничения FPS на несколько кадров ниже частоты "
"обновления монитора [url=https://blurbusters.com/howto-low-lag-vsync-"
"on/]уменьшит задержку ввода, избежав при этом разрывов[/url].\n"
"См. также [member physics_ticks_per_second] и [member "
"ProjectSettings.application/run/max_fps].\n"
"[b]Примечание:[/b] Фактическое количество кадров в секунду может быть ниже "
"этого значения, если ЦП или ГП не справляются с логикой проекта и "
"рендерингом.\n"
"[b]Примечание:[/b] Если [member ProjectSettings.display/window/vsync/"
"vsync_mode] [b]Отключено[/b], ограничение FPS до высокого значения, которое "
"может быть последовательно достигнуто в системе, может уменьшить задержку "
"ввода по сравнению с неограниченной частотой кадров. Поскольку это работает, "
"гарантируя, что загрузка GPU ниже 100%, это снижение задержки эффективно "
"только в сценариях с узким местом GPU, а не с узким местом CPU."

msgid ""
"The maximum number of physics steps that can be simulated each rendered "
"frame.\n"
"[b]Note:[/b] The default value is tuned to prevent expensive physics "
"simulations from triggering even more expensive simulations indefinitely. "
"However, the game will appear to slow down if the rendering FPS is less than "
"[code]1 / max_physics_steps_per_frame[/code] of [member "
"physics_ticks_per_second]. This occurs even if [code]delta[/code] is "
"consistently used in physics calculations. To avoid this, increase [member "
"max_physics_steps_per_frame] if you have increased [member "
"physics_ticks_per_second] significantly above its default value."
msgstr ""
"Максимальное количество шагов физики, которые могут быть смоделированы в "
"каждом отрендеренном кадре.\n"
"[b]Примечание:[/b] Значение по умолчанию настроено так, чтобы не допустить, "
"чтобы дорогостоящие физические симуляции бесконечно запускали еще более "
"дорогостоящие симуляции. Однако игра будет выглядеть замедленной, если FPS "
"рендеринга меньше, чем [code]1 / max_physics_steps_per_frame[/code] от "
"[member physics_ticks_per_second]. Это происходит, даже если [code]delta[/"
"code] постоянно используется в физических расчетах. Чтобы избежать этого, "
"увеличьте [member max_physics_steps_per_frame], если вы увеличили [member "
"physics_ticks_per_second] значительно выше его значения по умолчанию."

msgid ""
"How much physics ticks are synchronized with real time. If [code]0[/code] or "
"less, the ticks are fully synchronized. Higher values cause the in-game clock "
"to deviate more from the real clock, but they smooth out framerate jitters.\n"
"[b]Note:[/b] The default value of [code]0.5[/code] should be good enough for "
"most cases; values above [code]2[/code] could cause the game to react to "
"dropped frames with a noticeable delay and are not recommended.\n"
"[b]Note:[/b] When using a custom physics interpolation solution, or within a "
"network game, it's recommended to disable the physics jitter fix by setting "
"this property to [code]0[/code]."
msgstr ""
"Насколько физические тики синхронизированы с реальным временем. Если [code]0[/"
"code] или меньше, тики полностью синхронизированы. Более высокие значения "
"заставляют игровые часы больше отклоняться от реальных часов, но они "
"сглаживают колебания частоты кадров.\n"
"[b]Примечание:[/b] Значение по умолчанию [code]0.5[/code] должно быть "
"достаточно хорошим для большинства случаев; значения выше [code]2[/code] "
"могут привести к тому, что игра будет реагировать на пропущенные кадры с "
"заметной задержкой и не рекомендуются.\n"
"[b]Примечание:[/b] При использовании пользовательского решения для "
"интерполяции физики или в сетевой игре рекомендуется отключить исправление "
"физического дрожания, установив это свойство в [code]0[/code]."

msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run. This value "
"should generally always be set to [code]60[/code] or above, as Godot doesn't "
"interpolate the physics step. As a result, values lower than [code]60[/code] "
"will look stuttery. This value can be increased to make input more reactive "
"or work around collision tunneling issues, but keep in mind doing so will "
"increase CPU usage. See also [member max_fps] and [member "
"ProjectSettings.physics/common/physics_ticks_per_second].\n"
"[b]Note:[/b] Only [member max_physics_steps_per_frame] physics ticks may be "
"simulated per rendered frame at most. If more physics ticks have to be "
"simulated per rendered frame to keep up with rendering, the project will "
"appear to slow down (even if [code]delta[/code] is used consistently in "
"physics calculations). Therefore, it is recommended to also increase [member "
"max_physics_steps_per_frame] if increasing [member physics_ticks_per_second] "
"significantly above its default value."
msgstr ""
"Число фиксированных итераций в секунду. Это определяет частоту запуска "
"методов моделирования физики и [method Node._physics_process]. Это значение "
"обычно всегда должно быть установлено на [code]60[/code] или выше, так как "
"Godot не интерполирует шаг физики. В результате значения ниже [code]60[/code] "
"будут выглядеть прерывистыми. Это значение можно увеличить, чтобы сделать "
"ввод более реактивным или обойти проблемы туннелирования столкновений, но "
"имейте в виду, что это увеличит загрузку ЦП. См. также [member max_fps] и "
"[member ProjectSettings.physics/common/physics_ticks_per_second].\n"
"[b]Примечание:[/b] Максимально можно моделировать только [member "
"max_physics_steps_per_frame] физических тактов на каждый отрендеренный кадр. "
"Если для отрисовки требуется моделировать больше физических тактов на каждый "
"отрендеренный кадр, проект будет выглядеть медленнее (даже если [code]delta[/"
"code] используется последовательно в физических расчетах). Поэтому "
"рекомендуется также увеличить [member max_physics_steps_per_frame], если "
"увеличение [member physics_ticks_per_second] значительно превышает его "
"значение по умолчанию."

msgid ""
"If [code]false[/code], stops printing error and warning messages to the "
"console and editor Output log. This can be used to hide error and warning "
"messages during unit test suite runs. This property is equivalent to the "
"[member ProjectSettings.application/run/disable_stderr] project setting.\n"
"[b]Note:[/b] This property does not impact the editor's Errors tab when "
"running a project from the editor.\n"
"[b]Warning:[/b] If set to [code]false[/code] anywhere in the project, "
"important error messages may be hidden even if they are emitted from other "
"scripts. In a [code]@tool[/code] script, this will also impact the editor "
"itself. Do [i]not[/i] report bugs before ensuring error messages are enabled "
"(as they are by default)."
msgstr ""
"Если [code]false[/code], прекращается вывод сообщений об ошибках и "
"предупреждений на консоль и в журнал вывода редактора. Это можно использовать "
"для скрытия сообщений об ошибках и предупреждений во время выполнения набора "
"модульных тестов. Это свойство эквивалентно настройке проекта [member "
"ProjectSettings.application/run/disable_stderr].\n"
"[b]Примечание:[/b] Это свойство не влияет на вкладку «Ошибки» редактора при "
"запуске проекта из редактора.\n"
"[b]Предупреждение:[/b] Если установлено значение [code]false[/code] в любом "
"месте проекта, важные сообщения об ошибках могут быть скрыты, даже если они "
"выдаются другими скриптами. В скрипте [code]@tool[/code] это также повлияет "
"на сам редактор. [i]Не[/i] сообщайте об ошибках, не убедившись, что сообщения "
"об ошибках включены (как по умолчанию)."

msgid ""
"If [code]false[/code], stops printing messages (for example using [method "
"@GlobalScope.print]) to the console, log files, and editor Output log. This "
"property is equivalent to the [member ProjectSettings.application/run/"
"disable_stdout] project setting.\n"
"[b]Note:[/b] This does not stop printing errors or warnings produced by "
"scripts to the console or log files, for more details see [member "
"print_error_messages]."
msgstr ""
"Если [code]false[/code], прекращает вывод сообщений (например, с помощью "
"[method @GlobalScope.print]) на консоль, в файлы журнала и в журнал вывода "
"редактора. Это свойство эквивалентно настройке проекта [member "
"ProjectSettings.application/run/disable_stdout].\n"
"[b]Примечание:[/b] Это не прекращает вывод ошибок или предупреждений, "
"создаваемых скриптами, на консоль или в файлы журнала, для получения более "
"подробной информации см. [member print_error_messages]."

msgid ""
"The speed multiplier at which the in-game clock updates, compared to real "
"time. For example, if set to [code]2.0[/code] the game runs twice as fast, "
"and if set to [code]0.5[/code] the game runs half as fast.\n"
"This value affects [Timer], [SceneTreeTimer], and all other simulations that "
"make use of [code]delta[/code] time (such as [method Node._process] and "
"[method Node._physics_process]).\n"
"[b]Note:[/b] It's recommended to keep this property above [code]0.0[/code], "
"as the game may behave unexpectedly otherwise.\n"
"[b]Note:[/b] This does not affect audio playback speed. Use [member "
"AudioServer.playback_speed_scale] to adjust audio playback speed "
"independently of [member Engine.time_scale].\n"
"[b]Note:[/b] This does not automatically adjust [member "
"physics_ticks_per_second]. With values above [code]1.0[/code] physics "
"simulation may become less precise, as each physics tick will stretch over a "
"larger period of engine time. If you're modifying [member Engine.time_scale] "
"to speed up simulation by a large factor, consider also increasing [member "
"physics_ticks_per_second] to make the simulation more reliable."
msgstr ""
"Множитель скорости, с которым обновляются игровые часы, по сравнению с "
"реальным временем. Например, если установлено значение [code]2.0[/code], игра "
"будет работать в два раза быстрее, а если установлено значение [code]0.5[/"
"code], игра будет работать в два раза быстрее.\n"
"Это значение влияет на [Timer], [SceneTreeTimer] и все другие симуляции, "
"которые используют [code]delta[/code] время (например, [method Node._process] "
"и [method Node._physics_process]).\n"
"[b]Примечание:[/b] Рекомендуется сохранять это свойство выше [code]0.0[/"
"code], так как в противном случае игра может вести себя непредсказуемо.\n"
"[b]Примечание:[/b] Это не влияет на скорость воспроизведения звука. "
"Используйте [member AudioServer.playback_speed_scale] для регулировки "
"скорости воспроизведения звука независимо от [member Engine.time_scale].\n"
"[b]Примечание:[/b] Это не изменяет автоматически [member "
"physics_ticks_per_second]. При значениях выше [code]1.0[/code] физическая "
"симуляция может стать менее точной, так как каждый физический тик будет "
"растягиваться на больший период времени двигателя. Если вы изменяете [member "
"Engine.time_scale] для ускорения симуляции в большой степени, рассмотрите "
"также увеличение [member physics_ticks_per_second], чтобы сделать симуляцию "
"более надежной."

msgid "Exposes the internal debugger."
msgstr "Открывает доступ к внутреннему отладчику."

msgid ""
"[EngineDebugger] handles the communication between the editor and the running "
"game. It is active in the running game. Messages can be sent/received through "
"it. It also manages the profilers."
msgstr ""
"[EngineDebugger] управляет связью между редактором и запущенной игрой. Он "
"активен в запущенной игре. Через него можно отправлять/получать сообщения. Он "
"также управляет профайлерами."

msgid "Clears all breakpoints."
msgstr "Очищает все точки останова."

msgid ""
"Starts a debug break in script execution, optionally specifying whether the "
"program can continue based on [param can_continue] and whether the break was "
"due to a breakpoint."
msgstr ""
"Запускает отладочную паузу в выполнении скрипта, при необходимости указывая, "
"может ли программа продолжать работу на основе [param can_continue] и была ли "
"пауза вызвана точкой останова."

msgid "Returns the current debug depth."
msgstr "Возвращает текущую глубину отладки."

msgid "Returns the number of lines that remain."
msgstr "Возвращает количество оставшихся строк."

msgid ""
"Returns [code]true[/code] if a capture with the given name is present "
"otherwise [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если захват (capture) с указанным именем "
"присутствует, в противном случае [code]false[/code]."

msgid ""
"Returns [code]true[/code] if a profiler with the given name is present "
"otherwise [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если профайлер с указанным именем присутствует, "
"в противном случае [code]false[/code]."

msgid "Inserts a new breakpoint with the given [param source] and [param line]."
msgstr ""
"Вставляет новую точку останова с заданными [param source] и [param line]."

msgid ""
"Returns [code]true[/code] if the debugger is active otherwise [code]false[/"
"code]."
msgstr ""
"Возвращает [code]true[/code], если отладчик активен, в противном случае "
"[code]false[/code]."

msgid ""
"Returns [code]true[/code] if the given [param source] and [param line] "
"represent an existing breakpoint."
msgstr ""
"Возвращает [code]true[/code], если заданные [param source] и [param line] "
"представляют существующую точку останова."

msgid ""
"Returns [code]true[/code] if a profiler with the given name is present and "
"active otherwise [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если профилировщик с указанным именем "
"присутствует и активен, в противном случае [code]false[/code]."

msgid ""
"Returns [code]true[/code] if the debugger is skipping breakpoints otherwise "
"[code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если отладчик пропускает точки останова, в "
"противном случае [code]false[/code]."

msgid ""
"Forces a processing loop of debugger events. The purpose of this method is "
"just processing events every now and then when the script might get too busy, "
"so that bugs like infinite loops can be caught."
msgstr ""
"Запускает цикл обработки событий отладчика. Цель этого метода — просто "
"обрабатывать события время от времени, когда скрипт может быть слишком занят, "
"чтобы можно было отловить ошибки, такие как бесконечные циклы."

msgid ""
"Calls the [code]add[/code] callable of the profiler with given [param name] "
"and [param data]."
msgstr ""
"Вызывает вызываемый объект [code]add[/code] профилировщика с заданными [param "
"name] и [param data]."

msgid ""
"Calls the [code]toggle[/code] callable of the profiler with given [param "
"name] and [param arguments]. Enables/Disables the same profiler depending on "
"[param enable] argument."
msgstr ""
"Вызывает [code]toggle[/code] вызываемый объект профилировщика с заданными "
"[param name] и [param arguments]. Включает/отключает тот же профилировщик в "
"зависимости от аргумента [param enable]."

msgid ""
"Registers a message capture with given [param name]. If [param name] is "
"\"my_message\" then messages starting with \"my_message:\" will be called "
"with the given callable.\n"
"The callable must accept a message string and a data array as argument. The "
"callable should return [code]true[/code] if the message is recognized.\n"
"[b]Note:[/b] The callable will receive the message with the prefix stripped, "
"unlike [method EditorDebuggerPlugin._capture]. See the [EditorDebuggerPlugin] "
"description for an example."
msgstr ""
"Регистрирует захват сообщения с заданным [param name]. Если [param name] "
"равно \"my_message\", то сообщения, начинающиеся с \"my_message:\", будут "
"вызываться с заданным вызываемым объектом.\n"
"Вызываемый объект должен принимать строку сообщения и массив данных в "
"качестве аргумента. Вызываемый объект должен возвращать [code]true[/code], "
"если сообщение распознано.\n"
"[b]Примечание:[/b] Вызываемый объект получит сообщение с удаленным префиксом, "
"в отличие от [method EditorDebuggerPlugin._capture]. См. описание "
"[EditorDebuggerPlugin] для примера."

msgid ""
"Registers a profiler with the given [param name]. See [EngineProfiler] for "
"more information."
msgstr ""
"Регистрирует профилировщик с указанным [param name]. Для получения "
"дополнительной информации см. [EngineProfiler]."

msgid "Removes a breakpoint with the given [param source] and [param line]."
msgstr "Удаляет точку останова с заданными [param source] и [param line]."

msgid "Sends a message with given [param message] and [param data] array."
msgstr ""
"Отправляет сообщение с заданным массивом [param message] и [param data]."

msgid "Sets the current debugging depth."
msgstr "Устанавливает текущую глубину отладки."

msgid "Sets the current debugging lines that remain."
msgstr "Устанавливает текущие оставшиеся строки отладки."

msgid "Unregisters the message capture with given [param name]."
msgstr "Отменяет регистрацию захвата сообщения с указанным [param name]."

msgid "Unregisters a profiler with given [param name]."
msgstr "Отменяет регистрацию профилировщика с указанным [param name]."

msgid "Base class for creating custom profilers."
msgstr "Базовый класс для создания пользовательских профилировщиков."

msgid ""
"This class can be used to implement custom profilers that are able to "
"interact with the engine and editor debugger.\n"
"See [EngineDebugger] and [EditorDebuggerPlugin] for more information."
msgstr ""
"Этот класс можно использовать для реализации пользовательских "
"профилировщиков, которые могут взаимодействовать с движком и отладчиком "
"редактора.\n"
"Для получения дополнительной информации см. [EngineDebugger] и "
"[EditorDebuggerPlugin]."

msgid ""
"Called when data is added to profiler using [method "
"EngineDebugger.profiler_add_frame_data]."
msgstr ""
"Вызывается при добавлении данных в профилировщик с помощью [method "
"EngineDebugger.profiler_add_frame_data]."

msgid ""
"Called once every engine iteration when the profiler is active with "
"information about the current frame. All time values are in seconds. Lower "
"values represent faster processing times and are therefore considered better."
msgstr ""
"Вызывается один раз за каждую итерацию движка, когда активен профайлер с "
"информацией о текущем кадре. Все значения времени указаны в секундах. Более "
"низкие значения соответствуют более быстрому времени обработки и поэтому "
"считаются лучшими."

msgid ""
"Called when the profiler is enabled/disabled, along with a set of [param "
"options]."
msgstr ""
"Вызывается при включении/отключении профилировщика вместе с набором [param "
"options]."

msgid ""
"Resource for environment nodes (like [WorldEnvironment]) that define multiple "
"rendering options."
msgstr ""
"Ресурс для узлов среды (например, [WorldEnvironment]), которые определяют "
"несколько параметров рендеринга."

msgid ""
"Resource for environment nodes (like [WorldEnvironment]) that define multiple "
"environment operations (such as background [Sky] or [Color], ambient light, "
"fog, depth-of-field...). These parameters affect the final render of the "
"scene. The order of these operations is:\n"
"- Depth of Field Blur\n"
"- Glow\n"
"- Tonemap (Auto Exposure)\n"
"- Adjustments"
msgstr ""
"Ресурс для узлов окружения (например, [WorldEnvironment]), которые определяют "
"несколько операций окружения (например, фон [Sky] или [Color], окружающее "
"освещение, туман, глубина резкости...). Эти параметры влияют на окончательный "
"рендеринг сцены. Порядок этих операций:\n"
"- Размытие глубины резкости\n"
"- Свечение\n"
"- Тоновая карта (автоматическая экспозиция)\n"
"- Коррекция"

msgid "Environment and post-processing"
msgstr "Окружающая среда и постобработка"

msgid "High dynamic range lighting"
msgstr "Освещение с высоким динамическим диапазоном"

msgid "3D Material Testers Demo"
msgstr "Демонстрация 3D-испытателей материалов"

msgid "Returns the intensity of the glow level [param idx]."
msgstr "Возвращает интенсивность уровня свечения [param idx]."

msgid ""
"Sets the intensity of the glow level [param idx]. A value above [code]0.0[/"
"code] enables the level. Each level relies on the previous level. This means "
"that enabling higher glow levels will slow down the glow effect rendering, "
"even if previous levels aren't enabled."
msgstr ""
"Устанавливает интенсивность уровня свечения [param idx]. Значение выше "
"[code]0.0[/code] включает уровень. Каждый уровень зависит от предыдущего "
"уровня. Это означает, что включение более высоких уровней свечения замедлит "
"рендеринг эффекта свечения, даже если предыдущие уровни не включены."

msgid ""
"The global brightness value of the rendered scene. Effective only if [member "
"adjustment_enabled] is [code]true[/code]."
msgstr ""
"Глобальное значение яркости визуализированной сцены. Действует только если "
"[member adjustment_enabled] равно [code]true[/code]."

msgid ""
"The [Texture2D] or [Texture3D] lookup table (LUT) to use for the built-in "
"post-process color grading. Can use a [GradientTexture1D] for a 1-dimensional "
"LUT, or a [Texture3D] for a more complex LUT. Effective only if [member "
"adjustment_enabled] is [code]true[/code]."
msgstr ""
"Таблица поиска (LUT) [Texture2D] или [Texture3D] для встроенной "
"цветокоррекции постобработки. Можно использовать [GradientTexture1D] для "
"одномерной LUT или [Texture3D] для более сложной LUT. Действует только если "
"[member adjustment_enabled] имеет значение [code]true[/code]."

msgid ""
"The global contrast value of the rendered scene (default value is 1). "
"Effective only if [member adjustment_enabled] is [code]true[/code]."
msgstr ""
"Глобальное значение контрастности визуализированной сцены (значение по "
"умолчанию — 1). Действует только если [member adjustment_enabled] равно "
"[code]true[/code]."

msgid ""
"If [code]true[/code], enables the [code]adjustment_*[/code] properties "
"provided by this resource. If [code]false[/code], modifications to the "
"[code]adjustment_*[/code] properties will have no effect on the rendered "
"scene."
msgstr ""
"Если [code]true[/code], то включаются свойства [code]adjustment_*[/code], "
"предоставляемые этим ресурсом. Если [code]false[/code], то изменения свойств "
"[code]adjustment_*[/code] не будут иметь никакого эффекта на "
"визуализированную сцену."

msgid ""
"The global color saturation value of the rendered scene (default value is 1). "
"Effective only if [member adjustment_enabled] is [code]true[/code]."
msgstr ""
"Глобальное значение насыщенности цвета визуализированной сцены (значение по "
"умолчанию — 1). Действует только если [member adjustment_enabled] равно "
"[code]true[/code]."

msgid ""
"The ambient light's [Color]. Only effective if [member "
"ambient_light_sky_contribution] is lower than [code]1.0[/code] (exclusive)."
msgstr ""
"[Color] окружающего света. Действует только в том случае, если [member "
"ambient_light_sky_contribution] ниже, чем [code]1.0[/code] (исключительно)."

msgid ""
"The ambient light's energy. The higher the value, the stronger the light. "
"Only effective if [member ambient_light_sky_contribution] is lower than "
"[code]1.0[/code] (exclusive)."
msgstr ""
"Энергия окружающего света. Чем выше значение, тем сильнее свет. Действует "
"только если [member ambient_light_sky_contribution] ниже, чем [code]1.0[/"
"code] (исключительно)."

msgid ""
"Defines the amount of light that the sky brings on the scene. A value of "
"[code]0.0[/code] means that the sky's light emission has no effect on the "
"scene illumination, thus all ambient illumination is provided by the ambient "
"light. On the contrary, a value of [code]1.0[/code] means that [i]all[/i] the "
"light that affects the scene is provided by the sky, thus the ambient light "
"parameter has no effect on the scene.\n"
"[b]Note:[/b] [member ambient_light_sky_contribution] is internally clamped "
"between [code]0.0[/code] and [code]1.0[/code] (inclusive)."
msgstr ""
"Определяет количество света, которое небо приносит на сцену. Значение "
"[code]0.0[/code] означает, что излучение света неба не влияет на освещенность "
"сцены, таким образом, все окружающее освещение обеспечивается окружающим "
"светом. Напротив, значение [code]1.0[/code] означает, что [i]весь[/i] свет, "
"который влияет на сцену, обеспечивается небом, таким образом, параметр "
"окружающего света не влияет на сцену.\n"
"[b]Примечание:[/b] [member ambient_light_sky_contribution] внутренне "
"ограничен между [code]0.0[/code] и [code]1.0[/code] (включительно)."

msgid ""
"The ambient light source to use for rendering materials and global "
"illumination."
msgstr ""
"Источник окружающего света, используемый для рендеринга материалов и "
"глобального освещения."

msgid "The ID of the camera feed to show in the background."
msgstr "Идентификатор камеры, который будет отображаться на заднем плане."

msgid ""
"The maximum layer ID to display. Only effective when using the [constant "
"BG_CANVAS] background mode."
msgstr ""
"Максимальный идентификатор слоя для отображения. Действует только при "
"использовании фонового режима [constant BG_CANVAS]."

msgid ""
"The [Color] displayed for clear areas of the scene. Only effective when using "
"the [constant BG_COLOR] background mode."
msgstr ""
"[Color], отображаемый для чистых областей сцены. Действует только при "
"использовании фонового режима [constant BG_COLOR]."

msgid ""
"Multiplier for background energy. Increase to make background brighter, "
"decrease to make background dimmer."
msgstr ""
"Множитель для фоновой энергии. Увеличьте, чтобы сделать фон ярче, уменьшите, "
"чтобы сделать фон тусклее."

msgid ""
"Luminance of background measured in nits (candela per square meter). Only "
"used when [member ProjectSettings.rendering/lights_and_shadows/"
"use_physical_light_units] is enabled. The default value is roughly equivalent "
"to the sky at midday."
msgstr ""
"Яркость фона измеряется в нитах (nits) (кандела на квадратный метр). "
"Используется только при включенном [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units]. Значение по умолчанию примерно "
"соответствует небу в полдень."

msgid "The background mode."
msgstr "Фоновый режим."

msgid ""
"If set above [code]0.0[/code] (exclusive), blends between the fog's color and "
"the color of the background [Sky], as read from the radiance cubemap. This "
"has a small performance cost when set above [code]0.0[/code]. Must have "
"[member background_mode] set to [constant BG_SKY].\n"
"This is useful to simulate [url=https://en.wikipedia.org/wiki/"
"Aerial_perspective]aerial perspective[/url] in large scenes with low density "
"fog. However, it is not very useful for high-density fog, as the sky will "
"shine through. When set to [code]1.0[/code], the fog color comes completely "
"from the [Sky]. If set to [code]0.0[/code], aerial perspective is disabled.\n"
"Notice that this does not sample the [Sky] directly, but rather the radiance "
"cubemap. The cubemap is sampled at a mipmap level depending on the depth of "
"the rendered pixel; the farther away, the higher the resolution of the "
"sampled mipmap. This results in the actual color being a blurred version of "
"the sky, with more blur closer to the camera. The highest mipmap resolution "
"is used at a depth of [member Camera3D.far]."
msgstr ""
"Если установлено выше [code]0.0[/code] (исключительно), смешивается между "
"цветом тумана и цветом фона [Sky], как считано из кубической карты сияния. "
"Это имеет небольшие затраты производительности, если установлено выше "
"[code]0.0[/code]. Необходимо установить [member background_mode] на [constant "
"BG_SKY].\n"
"Это полезно для имитации [url=https://en.wikipedia.org/wiki/"
"Aerial_perspective]воздушной перспективы[/url] в больших сценах с туманом "
"низкой плотности. Однако это не очень полезно для тумана высокой плотности, "
"так как небо будет просвечивать. Если установлено значение [code]1.0[/code], "
"цвет тумана полностью берется из [Sky]. Если установлено значение [code]0.0[/"
"code], воздушная перспектива отключена.\n"
"Обратите внимание, что это не выборка [Sky] напрямую, а выборка кубической "
"карты сияния. Кубическая карта выбирается на уровне mip-карты в зависимости "
"от глубины визуализированного пикселя; чем дальше, тем выше разрешение "
"выбираемой mip-карты. Это приводит к тому, что фактический цвет становится "
"размытой версией неба, с большей размытостью ближе к камере. Самое высокое "
"разрешение mip-карты используется на глубине [member Camera3D.far]."

msgid ""
"The fog density to be used. This is demonstrated in different ways depending "
"on the [member fog_mode] mode chosen:\n"
"[b]Exponential Fog Mode:[/b] Higher values result in denser fog. The fog "
"rendering is exponential like in real life.\n"
"[b]Depth Fog mode:[/b] The maximum intensity of the deep fog, effect will "
"appear in the distance (relative to the camera). At [code]1.0[/code] the fog "
"will fully obscure the scene, at [code]0.0[/code] the fog will not be visible."
msgstr ""
"Плотность тумана, которая будет использоваться. Это демонстрируется по-"
"разному в зависимости от выбранного режима [member fog_mode]:\n"
"[b]Режим экспоненциального тумана:[/b] Более высокие значения приводят к "
"более плотному туману. Рендеринг тумана экспоненциальный, как в реальной "
"жизни.\n"
"[b]Режим глубинного тумана:[/b] Максимальная интенсивность глубокого тумана, "
"эффект будет проявляться на расстоянии (относительно камеры). При [code]1.0[/"
"code] туман полностью скроет сцену, при [code]0.0[/code] туман не будет виден."

msgid ""
"The fog's depth starting distance from the camera. Only available when "
"[member fog_mode] is set to [constant FOG_MODE_DEPTH]."
msgstr ""
"Начальное расстояние глубины тумана от камеры. Доступно только когда [member "
"fog_mode] установлен на [constant FOG_MODE_DEPTH]."

msgid ""
"The fog depth's intensity curve. A number of presets are available in the "
"Inspector by right-clicking the curve. Only available when [member fog_mode] "
"is set to [constant FOG_MODE_DEPTH]."
msgstr ""
"Кривая интенсивности глубины тумана. Ряд предустановок доступен в Инспекторе, "
"если щелкнуть правой кнопкой мыши по кривой. Доступно только когда [member "
"fog_mode] установлен на [constant FOG_MODE_DEPTH]."

msgid ""
"The fog's depth end distance from the camera. If this value is set to "
"[code]0[/code], it will be equal to the current camera's [member "
"Camera3D.far] value. Only available when [member fog_mode] is set to "
"[constant FOG_MODE_DEPTH]."
msgstr ""
"Конечное расстояние глубины тумана от камеры. Если это значение установлено "
"на [code]0[/code], оно будет равно значению [member Camera3D.far] текущей "
"камеры. Доступно только когда [member fog_mode] установлено на [constant "
"FOG_MODE_DEPTH]."

msgid "If [code]true[/code], fog effects are enabled."
msgstr "Если [code]true[/code], эффекты тумана включены."

msgid "The height at which the height fog effect begins."
msgstr "Высота, на которой начинается эффект высотного тумана."

msgid ""
"The density used to increase fog as height decreases. To make fog increase as "
"height increases, use a negative value."
msgstr ""
"Плотность, используемая для увеличения тумана по мере уменьшения высоты. "
"Чтобы туман увеличивался по мере увеличения высоты, используйте отрицательное "
"значение."

msgid "The fog's color."
msgstr "Цвет тумана."

msgid "The fog's brightness. Higher values result in brighter fog."
msgstr "Яркость тумана. Более высокие значения дают более яркий туман."

msgid "The fog mode."
msgstr "Режим тумана."

msgid ""
"The factor to use when affecting the sky with non-volumetric fog. [code]1.0[/"
"code] means that fog can fully obscure the sky. Lower values reduce the "
"impact of fog on sky rendering, with [code]0.0[/code] not affecting sky "
"rendering at all.\n"
"[b]Note:[/b] [member fog_sky_affect] has no visual effect if [member "
"fog_aerial_perspective] is [code]1.0[/code]."
msgstr ""
"Коэффициент, который следует использовать при воздействии на небо необъемным "
"туманом. [code]1.0[/code] означает, что туман может полностью скрыть небо. "
"Более низкие значения уменьшают влияние тумана на рендеринг неба, а "
"[code]0.0[/code] вообще не влияет на рендеринг неба.\n"
"[b]Примечание:[/b] [member fog_sky_affect] не имеет визуального эффекта, если "
"[member fog_aerial_perspective] равен [code]1.0[/code]."

msgid ""
"If set above [code]0.0[/code], renders the scene's directional light(s) in "
"the fog color depending on the view angle. This can be used to give the "
"impression that the sun is \"piercing\" through the fog."
msgstr ""
"Если установлено выше [code]0.0[/code], то направленный свет сцены "
"отображается в цвете тумана в зависимости от угла обзора. Это можно "
"использовать для создания впечатления, что солнце «проникает» сквозь туман."

msgid ""
"The glow blending mode.\n"
"[b]Note:[/b] [member glow_blend_mode] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Режим смешивания свечения.\n"
"[b]Примечание:[/b] [member glow_blend_mode] не имеет эффекта при "
"использовании метода рендеринга Compatibility, поскольку этот метод "
"рендеринга использует более простую реализацию свечения, оптимизированную для "
"устройств низкого уровня."

msgid ""
"The bloom's intensity. If set to a value higher than [code]0[/code], this "
"will make glow visible in areas darker than the [member glow_hdr_threshold]."
msgstr ""
"Интенсивность свечения. Если установлено значение выше [code]0[/code], это "
"сделает свечение видимым в областях темнее, чем [member glow_hdr_threshold]."

msgid ""
"If [code]true[/code], the glow effect is enabled. This simulates real world "
"eye/camera behavior where bright pixels bleed onto surrounding pixels.\n"
"[b]Note:[/b] When using the Mobile rendering method, glow looks different due "
"to the lower dynamic range available in the Mobile rendering method.\n"
"[b]Note:[/b] When using the Compatibility rendering method, glow uses a "
"different implementation with some properties being unavailable and hidden "
"from the inspector: [code]glow_levels/*[/code], [member glow_normalized], "
"[member glow_strength], [member glow_blend_mode], [member glow_mix], [member "
"glow_map], and [member glow_map_strength]. This implementation is optimized "
"to run on low-end devices and is less flexible as a result."
msgstr ""
"Если [code]true[/code], эффект свечения включен. Это имитирует реальное "
"поведение глаза/камеры, где яркие пиксели перетекают на окружающие пиксели.\n"
"[b]Примечание:[/b] При использовании метода рендеринга Mobile свечение "
"выглядит иначе из-за более низкого динамического диапазона, доступного в "
"методе рендеринга Mobile.\n"
"[b]Примечание:[/b] При использовании метода рендеринга Compatibility свечение "
"использует другую реализацию, при этом некоторые свойства недоступны и скрыты "
"от инспектора: [code]glow_levels/*[/code], [member glow_normalized], [member "
"glow_strength], [member glow_blend_mode], [member glow_mix], [member "
"glow_map] и [member glow_map_strength]. Эта реализация оптимизирована для "
"работы на устройствах низкого уровня и, как следствие, менее гибка."

msgid ""
"The higher threshold of the HDR glow. Areas brighter than this threshold will "
"be clamped for the purposes of the glow effect."
msgstr ""
"Верхний порог свечения HDR. Области ярче этого порога будут ограничены для "
"эффекта свечения."

msgid "The bleed scale of the HDR glow."
msgstr "Масштаб растекания свечения HDR."

msgid ""
"The lower threshold of the HDR glow. When using the Mobile rendering method "
"(which only supports a lower dynamic range up to [code]2.0[/code]), this may "
"need to be below [code]1.0[/code] for glow to be visible. A value of "
"[code]0.9[/code] works well in this case. This value also needs to be "
"decreased below [code]1.0[/code] when using glow in 2D, as 2D rendering is "
"performed in SDR."
msgstr ""
"Нижний порог свечения HDR. При использовании метода рендеринга Mobile "
"(который поддерживает только более низкий динамический диапазон до [code]2.0[/"
"code]) может потребоваться, чтобы это значение было ниже [code]1.0[/code], "
"чтобы свечение было видимым. Значение [code]0.9[/code] хорошо подходит в этом "
"случае. Это значение также необходимо уменьшить ниже [code]1.0[/code] при "
"использовании свечения в 2D, поскольку 2D-рендеринг выполняется в SDR."

msgid ""
"The overall brightness multiplier of the glow effect. When using the Mobile "
"rendering method (which only supports a lower dynamic range up to [code]2.0[/"
"code]), this should be increased to [code]1.5[/code] to compensate."
msgstr ""
"Общий множитель яркости эффекта свечения. При использовании метода рендеринга "
"Mobile (который поддерживает только более низкий динамический диапазон до "
"[code]2.0[/code]) его следует увеличить до [code]1.5[/code] для компенсации."

msgid ""
"The intensity of the 1st level of glow. This is the most \"local\" level "
"(least blurry).\n"
"[b]Note:[/b] [member glow_levels/1] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Интенсивность 1-го уровня свечения. Это самый «локальный» уровень (наименее "
"размытый).\n"
"[b]Примечание:[/b] [member glow_levels/1] не имеет эффекта при использовании "
"метода рендеринга Compatibility, поскольку этот метод рендеринга использует "
"более простую реализацию свечения, оптимизированную для устройств низкого "
"уровня."

msgid ""
"The intensity of the 2nd level of glow.\n"
"[b]Note:[/b] [member glow_levels/2] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Интенсивность 2-го уровня свечения.\n"
"[b]Примечание:[/b] [member glow_levels/2] не имеет эффекта при использовании "
"метода рендеринга Compatibility, поскольку этот метод рендеринга использует "
"более простую реализацию свечения, оптимизированную для устройств начального "
"уровня."

msgid ""
"The intensity of the 3rd level of glow.\n"
"[b]Note:[/b] [member glow_levels/3] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Интенсивность 3-го уровня свечения.\n"
"[b]Примечание:[/b] [member glow_levels/3] не имеет эффекта при использовании "
"метода рендеринга Compatibility, поскольку этот метод рендеринга использует "
"более простую реализацию свечения, оптимизированную для устройств начального "
"уровня."

msgid ""
"The intensity of the 4th level of glow.\n"
"[b]Note:[/b] [member glow_levels/4] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Интенсивность 4-го уровня свечения.\n"
"[b]Примечание:[/b] [member glow_levels/4] не имеет эффекта при использовании "
"метода рендеринга Compatibility, поскольку этот метод рендеринга использует "
"более простую реализацию свечения, оптимизированную для устройств низкого "
"уровня."

msgid ""
"The intensity of the 5th level of glow.\n"
"[b]Note:[/b] [member glow_levels/5] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Интенсивность 5-го уровня свечения.\n"
"[b]Примечание:[/b] [member glow_levels/5] не имеет эффекта при использовании "
"метода рендеринга Compatibility, поскольку этот метод рендеринга использует "
"более простую реализацию свечения, оптимизированную для бюджетных устройств."

msgid ""
"The intensity of the 6th level of glow.\n"
"[b]Note:[/b] [member glow_levels/6] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Интенсивность 6-го уровня свечения.\n"
"[b]Примечание:[/b] [member glow_levels/6] не имеет эффекта при использовании "
"метода рендеринга Compatibility, поскольку этот метод рендеринга использует "
"более простую реализацию свечения, оптимизированную для устройств начального "
"уровня."

msgid ""
"The intensity of the 7th level of glow. This is the most \"global\" level "
"(blurriest).\n"
"[b]Note:[/b] [member glow_levels/7] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Интенсивность 7-го уровня свечения. Это самый «глобальный» уровень (самый "
"размытый).\n"
"[b]Примечание:[/b] [member glow_levels/7] не имеет эффекта при использовании "
"метода рендеринга Compatibility, поскольку этот метод рендеринга использует "
"более простую реализацию свечения, оптимизированную для устройств начального "
"уровня."

msgid ""
"The texture that should be used as a glow map to [i]multiply[/i] the "
"resulting glow color according to [member glow_map_strength]. This can be "
"used to create a \"lens dirt\" effect. The texture's RGB color channels are "
"used for modulation, but the alpha channel is ignored.\n"
"[b]Note:[/b] The texture will be stretched to fit the screen. Therefore, it's "
"recommended to use a texture with an aspect ratio that matches your project's "
"base aspect ratio (typically 16:9).\n"
"[b]Note:[/b] [member glow_map] has no effect when using the Compatibility "
"rendering method, due to this rendering method using a simpler glow "
"implementation optimized for low-end devices."
msgstr ""
"Текстура, которая должна использоваться в качестве карты свечения для "
"[i]умножения[/i] результирующего цвета свечения в соответствии с [member "
"glow_map_strength]. Это можно использовать для создания эффекта «грязи "
"линзы». Цветовые каналы RGB текстуры используются для модуляции, но альфа-"
"канал игнорируется.\n"
"[b]Примечание:[/b] Текстура будет растянута, чтобы соответствовать экрану. "
"Поэтому рекомендуется использовать текстуру с соотношением сторон, "
"соответствующим базовому соотношению сторон вашего проекта (обычно 16:9).\n"
"[b]Примечание:[/b] [member glow_map] не оказывает никакого эффекта при "
"использовании метода рендеринга Compatibility, поскольку этот метод "
"рендеринга использует более простую реализацию свечения, оптимизированную для "
"устройств низкого уровня."

msgid ""
"How strong of an influence the [member glow_map] should have on the overall "
"glow effect. A strength of [code]0.0[/code] means the glow map has no "
"influence, while a strength of [code]1.0[/code] means the glow map has full "
"influence.\n"
"[b]Note:[/b] If the glow map has black areas, a value of [code]1.0[/code] can "
"also turn off the glow effect entirely in specific areas of the screen.\n"
"[b]Note:[/b] [member glow_map_strength] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Насколько сильное влияние [member glow_map] должно оказывать на общий эффект "
"свечения. Сила [code]0.0[/code] означает, что карта свечения не оказывает "
"никакого влияния, в то время как сила [code]1.0[/code] означает, что карта "
"свечения оказывает полное влияние.\n"
"[b]Примечание:[/b] Если карта свечения имеет черные области, значение "
"[code]1.0[/code] также может полностью отключить эффект свечения в "
"определенных областях экрана.\n"
"[b]Примечание:[/b] [member glow_map_strength] не оказывает никакого влияния "
"при использовании метода рендеринга Compatibility, поскольку этот метод "
"рендеринга использует более простую реализацию свечения, оптимизированную для "
"устройств низкого уровня."

msgid ""
"When using the [constant GLOW_BLEND_MODE_MIX] [member glow_blend_mode], this "
"controls how much the source image is blended with the glow layer. A value of "
"[code]0.0[/code] makes the glow rendering invisible, while a value of "
"[code]1.0[/code] is equivalent to [constant GLOW_BLEND_MODE_REPLACE].\n"
"[b]Note:[/b] [member glow_mix] has no effect when using the Compatibility "
"rendering method, due to this rendering method using a simpler glow "
"implementation optimized for low-end devices."
msgstr ""
"При использовании [constant GLOW_BLEND_MODE_MIX] [member glow_blend_mode] это "
"контролирует, насколько исходное изображение смешивается со слоем свечения. "
"Значение [code]0.0[/code] делает рендеринг свечения невидимым, тогда как "
"значение [code]1.0[/code] эквивалентно [constant GLOW_BLEND_MODE_REPLACE].\n"
"[b]Примечание:[/b] [member glow_mix] не оказывает никакого эффекта при "
"использовании метода рендеринга Compatibility, поскольку этот метод "
"рендеринга использует более простую реализацию свечения, оптимизированную для "
"устройств низкого уровня."

msgid ""
"If [code]true[/code], glow levels will be normalized so that summed together "
"their intensities equal [code]1.0[/code].\n"
"[b]Note:[/b] [member glow_normalized] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Если [code]true[/code], уровни свечения будут нормализованы так, чтобы их "
"суммарные интенсивности равнялись [code]1.0[/code].\n"
"[b]Примечание:[/b] [member glow_normalized] не имеет эффекта при "
"использовании метода рендеринга Compatibility, поскольку этот метод "
"рендеринга использует более простую реализацию свечения, оптимизированную для "
"устройств начального уровня."

msgid ""
"The strength of the glow effect. This applies as the glow is blurred across "
"the screen and increases the distance and intensity of the blur. When using "
"the Mobile rendering method, this should be increased to compensate for the "
"lower dynamic range.\n"
"[b]Note:[/b] [member glow_strength] has no effect when using the "
"Compatibility rendering method, due to this rendering method using a simpler "
"glow implementation optimized for low-end devices."
msgstr ""
"Сила эффекта свечения. Это применяется, поскольку свечение размывается по "
"экрану и увеличивает расстояние и интенсивность размытия. При использовании "
"метода рендеринга Mobile это должно быть увеличено, чтобы компенсировать "
"более низкий динамический диапазон.\n"
"[b]Примечание:[/b] [member glow_strength] не имеет эффекта при использовании "
"метода рендеринга Compatibility, поскольку этот метод рендеринга использует "
"более простую реализацию свечения, оптимизированную для устройств низкого "
"уровня."

msgid "The reflected (specular) light source."
msgstr "Отражённый (зеркальный) источник света."

msgid ""
"The energy multiplier applied to light every time it bounces from a surface "
"when using SDFGI. Values greater than [code]0.0[/code] will simulate multiple "
"bounces, resulting in a more realistic appearance. Increasing [member "
"sdfgi_bounce_feedback] generally has no performance impact. See also [member "
"sdfgi_energy].\n"
"[b]Note:[/b] Values greater than [code]0.5[/code] can cause infinite feedback "
"loops and should be avoided in scenes with bright materials.\n"
"[b]Note:[/b] If [member sdfgi_bounce_feedback] is [code]0.0[/code], indirect "
"lighting will not be represented in reflections as light will only bounce one "
"time."
msgstr ""
"Множитель энергии, применяемый к свету каждый раз, когда он отражается от "
"поверхности при использовании SDFGI. Значения больше [code]0.0[/code] будут "
"имитировать множественные отскоки, что приведет к более реалистичному виду. "
"Увеличение [member sdfgi_bounce_feedback] обычно не влияет на "
"производительность. См. также [member sdfgi_energy].\n"
"[b]Примечание:[/b] Значения больше [code]0.5[/code] могут вызывать "
"бесконечные циклы обратной связи и их следует избегать в сценах с яркими "
"материалами.\n"
"[b]Примечание:[/b] Если [member sdfgi_bounce_feedback] равен [code]0.0[/"
"code], непрямое освещение не будет представлено в отражениях, поскольку свет "
"отразится только один раз."

msgid ""
"[b]Note:[/b] This property is linked to [member sdfgi_min_cell_size] and "
"[member sdfgi_max_distance]. Changing its value will automatically change "
"those properties as well."
msgstr ""
"[b]Примечание:[/b] Это свойство связано с [member sdfgi_min_cell_size] и "
"[member sdfgi_max_distance]. Изменение его значения автоматически изменит и "
"эти свойства."

msgid ""
"The number of cascades to use for SDFGI (between 1 and 8). A higher number of "
"cascades allows displaying SDFGI further away while preserving detail up "
"close, at the cost of performance. When using SDFGI on small-scale levels, "
"[member sdfgi_cascades] can often be decreased between [code]1[/code] and "
"[code]4[/code] to improve performance."
msgstr ""
"Число каскадов для использования в SDFGI (от 1 до 8). Большее число каскадов "
"позволяет отображать SDFGI дальше, сохраняя детали вблизи, за счет "
"производительности. При использовании SDFGI на мелкомасштабных уровнях "
"[member sdfgi_cascades] часто можно уменьшить между [code]1[/code] и [code]4[/"
"code] для повышения производительности."

msgid ""
"If [code]true[/code], enables signed distance field global illumination for "
"meshes that have their [member GeometryInstance3D.gi_mode] set to [constant "
"GeometryInstance3D.GI_MODE_STATIC]. SDFGI is a real-time global illumination "
"technique that works well with procedurally generated and user-built levels, "
"including in situations where geometry is created during gameplay. The signed "
"distance field is automatically generated around the camera as it moves. "
"Dynamic lights are supported, but dynamic occluders and emissive surfaces are "
"not.\n"
"[b]Note:[/b] SDFGI is only supported in the Forward+ rendering method, not "
"Mobile or Compatibility.\n"
"[b]Performance:[/b] SDFGI is relatively demanding on the GPU and is not "
"suited to low-end hardware such as integrated graphics (consider [LightmapGI] "
"instead). To improve SDFGI performance, enable [member "
"ProjectSettings.rendering/global_illumination/gi/use_half_resolution] in the "
"Project Settings.\n"
"[b]Note:[/b] Meshes should have sufficiently thick walls to avoid light leaks "
"(avoid one-sided walls). For interior levels, enclose your level geometry in "
"a sufficiently large box and bridge the loops to close the mesh."
msgstr ""
"Если [code]true[/code], включает глобальное освещение поля расстояний со "
"знаком для сеток, у которых [member GeometryInstance3D.gi_mode] установлен на "
"[constant GeometryInstance3D.GI_MODE_STATIC]. SDFGI — это метод глобального "
"освещения в реальном времени, который хорошо работает с процедурно "
"сгенерированными и созданными пользователем уровнями, в том числе в "
"ситуациях, когда геометрия создается во время игры. Поле расстояний со знаком "
"автоматически генерируется вокруг камеры по мере ее движения. Поддерживается "
"динамическое освещение, но динамические окклюдеры и излучающие поверхности — "
"нет.\n"
"[b]Примечание:[/b] SDFGI поддерживается только в методе рендеринга Forward+, "
"а не в Mobile или Compatibility.\n"
"[b]Производительность:[/b] SDFGI относительно требователен к графическому "
"процессору и не подходит для аппаратного обеспечения низкого уровня, такого "
"как интегрированная графика (вместо этого рассмотрите [LightmapGI]). Чтобы "
"улучшить производительность SDFGI, включите [member ProjectSettings.rendering/"
"global_illumination/gi/use_half_resolution] в настройках проекта.\n"
"[b]Примечание:[/b] Сетки должны иметь достаточно толстые стенки, чтобы "
"избежать утечек света (избегайте односторонних стен). Для внутренних уровней "
"заключите геометрию уровня в достаточно большой ящик и соедините петли, чтобы "
"закрыть сетку."

msgid ""
"The energy multiplier to use for SDFGI. Higher values will result in brighter "
"indirect lighting and reflections. See also [member sdfgi_bounce_feedback]."
msgstr ""
"Множитель энергии для использования в SDFGI. Более высокие значения приведут "
"к более яркому непрямому освещению и отражениям. См. также [member "
"sdfgi_bounce_feedback]."

msgid ""
"The maximum distance at which SDFGI is visible. Beyond this distance, "
"environment lighting or other sources of GI such as [ReflectionProbe] will be "
"used as a fallback.\n"
"[b]Note:[/b] This property is linked to [member sdfgi_min_cell_size] and "
"[member sdfgi_cascade0_distance]. Changing its value will automatically "
"change those properties as well."
msgstr ""
"Максимальное расстояние, на котором виден SDFGI. За пределами этого "
"расстояния в качестве резерва будет использоваться окружающее освещение или "
"другие источники GI, такие как [ReflectionProbe].\n"
"[b]Примечание:[/b] Это свойство связано с [member sdfgi_min_cell_size] и "
"[member sdfgi_cascade0_distance]. Изменение его значения автоматически "
"изменит и эти свойства."

msgid ""
"The cell size to use for the closest SDFGI cascade (in 3D units). Lower "
"values allow SDFGI to be more precise up close, at the cost of making SDFGI "
"updates more demanding. This can cause stuttering when the camera moves fast. "
"Higher values allow SDFGI to cover more ground, while also reducing the "
"performance impact of SDFGI updates.\n"
"[b]Note:[/b] This property is linked to [member sdfgi_max_distance] and "
"[member sdfgi_cascade0_distance]. Changing its value will automatically "
"change those properties as well."
msgstr ""
"Размер ячейки, используемый для ближайшего каскада SDFGI (в 3D-единицах). "
"Более низкие значения позволяют SDFGI быть более точным вблизи, за счет того, "
"что обновления SDFGI становятся более требовательными. Это может вызвать "
"заикание, когда камера быстро движется. Более высокие значения позволяют "
"SDFGI охватывать большую площадь, а также снижают влияние обновлений SDFGI на "
"производительность.\n"
"[b]Примечание:[/b] Это свойство связано с [member sdfgi_max_distance] и "
"[member sdfgi_cascade0_distance]. Изменение его значения автоматически "
"изменит и эти свойства."

msgid ""
"The normal bias to use for SDFGI probes. Increasing this value can reduce "
"visible streaking artifacts on sloped surfaces, at the cost of increased "
"light leaking."
msgstr ""
"Нормальное смещение для использования в зондах SDFGI. Увеличение этого "
"значения может уменьшить видимые артефакты полос на наклонных поверхностях за "
"счет увеличения утечки света."

msgid ""
"The constant bias to use for SDFGI probes. Increasing this value can reduce "
"visible streaking artifacts on sloped surfaces, at the cost of increased "
"light leaking."
msgstr ""
"Постоянное смещение для использования в зондах SDFGI. Увеличение этого "
"значения может уменьшить видимые артефакты полос на наклонных поверхностях за "
"счет увеличения утечки света."

msgid ""
"If [code]true[/code], SDFGI takes the environment lighting into account. This "
"should be set to [code]false[/code] for interior scenes."
msgstr ""
"Если [code]true[/code], SDFGI учитывает освещение окружающей среды. Для "
"внутренних сцен это должно быть установлено на [code]false[/code]."

msgid ""
"If [code]true[/code], SDFGI uses an occlusion detection approach to reduce "
"light leaking. Occlusion may however introduce dark blotches in certain "
"spots, which may be undesired in mostly outdoor scenes. [member "
"sdfgi_use_occlusion] has a performance impact and should only be enabled when "
"needed."
msgstr ""
"Если [code]true[/code], SDFGI использует подход обнаружения окклюзии для "
"уменьшения утечки света. Однако окклюзия может привести к появлению темных "
"пятен в определенных местах, что может быть нежелательным в сценах, в "
"основном происходящих на открытом воздухе. [member sdfgi_use_occlusion] "
"влияет на производительность и должен быть включен только при необходимости."

msgid ""
"The Y scale to use for SDFGI cells. Lower values will result in SDFGI cells "
"being packed together more closely on the Y axis. This is used to balance "
"between quality and covering a lot of vertical ground. [member sdfgi_y_scale] "
"should be set depending on how vertical your scene is (and how fast your "
"camera may move on the Y axis)."
msgstr ""
"Масштаб Y для использования с ячейками SDFGI. Более низкие значения приведут "
"к тому, что ячейки SDFGI будут упакованы более плотно по оси Y. Это "
"используется для баланса между качеством и охватом большого количества "
"вертикальной поверхности. [member sdfgi_y_scale] следует устанавливать в "
"зависимости от того, насколько вертикальна ваша сцена (и насколько быстро "
"ваша камера может двигаться по оси Y)."

msgid "The [Sky] resource used for this [Environment]."
msgstr "Ресурс [Sky], используемый для этого [Environment]-а."

msgid ""
"If set to a value greater than [code]0.0[/code], overrides the field of view "
"to use for sky rendering. If set to [code]0.0[/code], the same FOV as the "
"current [Camera3D] is used for sky rendering."
msgstr ""
"Если установлено значение больше [code]0.0[/code], переопределяет поле "
"зрения, используемое для рендеринга неба. Если установлено значение "
"[code]0.0[/code], то же поле зрения, что и у текущей [Camera3D], используется "
"для рендеринга неба."

msgid "The rotation to use for sky rendering."
msgstr "Поворот, используемый для рендеринга неба."

msgid ""
"The screen-space ambient occlusion intensity on materials that have an AO "
"texture defined. Values higher than [code]0[/code] will make the SSAO effect "
"visible in areas darkened by AO textures."
msgstr ""
"Интенсивность экранного пространства окружающего света на материалах, для "
"которых определена текстура AO. Значения выше [code]0[/code] сделают эффект "
"SSAO видимым в областях, затемненных текстурами AO."

msgid ""
"Sets the strength of the additional level of detail for the screen-space "
"ambient occlusion effect. A high value makes the detail pass more prominent, "
"but it may contribute to aliasing in your final image."
msgstr ""
"Устанавливает силу дополнительного уровня детализации для эффекта экранного "
"пространства Ambient Occlusion. Высокое значение делает передачу деталей "
"более заметной, но может способствовать появлению алиасинга в вашем конечном "
"изображении."

msgid ""
"If [code]true[/code], the screen-space ambient occlusion effect is enabled. "
"This darkens objects' corners and cavities to simulate ambient light not "
"reaching the entire object as in real life. This works well for small, "
"dynamic objects, but baked lighting or ambient occlusion textures will do a "
"better job at displaying ambient occlusion on large static objects. Godot "
"uses a form of SSAO called Adaptive Screen Space Ambient Occlusion which is "
"itself a form of Horizon Based Ambient Occlusion.\n"
"[b]Note:[/b] SSAO is only supported in the Forward+ rendering method, not "
"Mobile or Compatibility."
msgstr ""
"Если [code]true[/code], эффект экранного пространства Ambient Occlusion "
"включен. Это затемняет углы и полости объектов, чтобы имитировать окружающий "
"свет, не достигающий всего объекта, как в реальной жизни. Это хорошо работает "
"для небольших динамических объектов, но запеченное освещение или текстуры "
"окружающего освещения лучше справятся с отображением окружающего освещения на "
"больших статических объектах. Godot использует форму SSAO, называемую "
"Adaptive Screen Space Ambient Occlusion, которая сама по себе является формой "
"Horizon Based Ambient Occlusion.\n"
"[b]Примечание:[/b] SSAO поддерживается только в методе рендеринга Forward+, а "
"не Mobile или Compatibility."

msgid ""
"The threshold for considering whether a given point on a surface is occluded "
"or not represented as an angle from the horizon mapped into the "
"[code]0.0-1.0[/code] range. A value of [code]1.0[/code] results in no "
"occlusion."
msgstr ""
"Порог для рассмотрения того, закрыта ли данная точка на поверхности или нет, "
"представленный как угол от горизонта, отображенный в диапазоне [code]0.0-1.0[/"
"code]. Значение [code]1.0[/code] приводит к отсутствию окклюзии."

msgid ""
"The primary screen-space ambient occlusion intensity. Acts as a multiplier "
"for the screen-space ambient occlusion effect. A higher value results in "
"darker occlusion."
msgstr ""
"Первичная интенсивность экранного пространства окружающего затенения. "
"Действует как множитель для эффекта экранного пространства окружающего "
"затенения. Более высокое значение приводит к более темному затенению."

msgid ""
"The screen-space ambient occlusion intensity in direct light. In real life, "
"ambient occlusion only applies to indirect light, which means its effects "
"can't be seen in direct light. Values higher than [code]0[/code] will make "
"the SSAO effect visible in direct light."
msgstr ""
"Интенсивность экранного пространства окружающего света в прямом свете. В "
"реальной жизни окружающее затенение применяется только к непрямому свету, что "
"означает, что его эффекты не видны в прямом свете. Значения выше [code]0[/"
"code] сделают эффект SSAO видимым в прямом свете."

msgid ""
"The distribution of occlusion. A higher value results in darker occlusion, "
"similar to [member ssao_intensity], but with a sharper falloff."
msgstr ""
"Распределение окклюзии. Более высокое значение приводит к более темной "
"окклюзии, похожей на [member ssao_intensity], но с более резким спадом."

msgid ""
"The distance at which objects can occlude each other when calculating screen-"
"space ambient occlusion. Higher values will result in occlusion over a "
"greater distance at the cost of performance and quality."
msgstr ""
"Расстояние, на котором объекты могут закрывать друг друга при расчете "
"экранного пространства окружающего затенения. Более высокие значения приведут "
"к затенению на большем расстоянии за счет производительности и качества."

msgid ""
"The amount that the screen-space ambient occlusion effect is allowed to blur "
"over the edges of objects. Setting too high will result in aliasing around "
"the edges of objects. Setting too low will make object edges appear blurry."
msgstr ""
"Степень, в которой эффекту экранного пространства Ambient Occlusion разрешено "
"размывать края объектов. Слишком большое значение приведет к алиасингу по "
"краям объектов. Слишком низкое значение сделает края объектов размытыми."

msgid ""
"If [code]true[/code], the screen-space indirect lighting effect is enabled. "
"Screen space indirect lighting is a form of indirect lighting that allows "
"diffuse light to bounce between nearby objects. Screen-space indirect "
"lighting works very similarly to screen-space ambient occlusion, in that it "
"only affects a limited range. It is intended to be used along with a form of "
"proper global illumination like SDFGI or [VoxelGI]. Screen-space indirect "
"lighting is not affected by individual light's [member "
"Light3D.light_indirect_energy].\n"
"[b]Note:[/b] SSIL is only supported in the Forward+ rendering method, not "
"Mobile or Compatibility."
msgstr ""
"Если [code]true[/code], эффект непрямого освещения в экранном пространстве "
"включен. Непрямое освещение в экранном пространстве — это форма непрямого "
"освещения, которая позволяет рассеянному свету отражаться между близлежащими "
"объектами. Непрямое освещение в экранном пространстве работает очень похоже "
"на окклюзию окружающего пространства в том смысле, что оно влияет только на "
"ограниченный диапазон. Оно предназначено для использования вместе с формой "
"надлежащего глобального освещения, например, SDFGI или [VoxelGI]. Непрямое "
"освещение в экранном пространстве не зависит от [member "
"Light3D.light_indirect_energy] отдельного источника света.\n"
"[b]Примечание:[/b] SSIL поддерживается только в методе рендеринга Forward+, а "
"не в Mobile или Compatibility."

msgid ""
"The brightness multiplier for the screen-space indirect lighting effect. A "
"higher value will result in brighter light."
msgstr ""
"Множитель яркости для эффекта непрямого освещения экранного пространства. "
"Более высокое значение приведет к более яркому свету."

msgid ""
"Amount of normal rejection used when calculating screen-space indirect "
"lighting. Normal rejection uses the normal of a given sample point to reject "
"samples that are facing away from the current pixel. Normal rejection is "
"necessary to avoid light leaking when only one side of an object is "
"illuminated. However, normal rejection can be disabled if light leaking is "
"desirable, such as when the scene mostly contains emissive objects that emit "
"light from faces that cannot be seen from the camera."
msgstr ""
"Величина нормального отклонения, используемая при расчете непрямого освещения "
"экранного пространства. Нормальное отклонение использует нормаль заданной "
"точки выборки для отклонения выборок, которые обращены в сторону от текущего "
"пикселя. Нормальное отклонение необходимо для предотвращения утечки света, "
"когда освещена только одна сторона объекта. Однако нормальное отклонение "
"можно отключить, если утечка света желательна, например, когда сцена в "
"основном содержит излучающие объекты, которые излучают свет с лиц, которые не "
"видны из камеры."

msgid ""
"The distance that bounced lighting can travel when using the screen space "
"indirect lighting effect. A larger value will result in light bouncing "
"further in a scene, but may result in under-sampling artifacts which look "
"like long spikes surrounding light sources."
msgstr ""
"Расстояние, которое может пройти отраженный свет при использовании эффекта "
"непрямого освещения экранного пространства. Большее значение приведет к тому, "
"что свет будет отражаться дальше в сцене, но может привести к артефактам "
"недостаточной выборки, которые выглядят как длинные шипы, окружающие "
"источники света."

msgid ""
"The amount that the screen-space indirect lighting effect is allowed to blur "
"over the edges of objects. Setting too high will result in aliasing around "
"the edges of objects. Setting too low will make object edges appear blurry."
msgstr ""
"Степень, в которой эффекту непрямого освещения в экранном пространстве "
"разрешено размывать края объектов. Слишком большое значение приведет к "
"сглаживанию краев объектов. Слишком низкое значение сделает края объектов "
"размытыми."

msgid "The depth tolerance for screen-space reflections."
msgstr "Допуск по глубине для отражений в экранном пространстве."

msgid ""
"If [code]true[/code], screen-space reflections are enabled. Screen-space "
"reflections are more accurate than reflections from [VoxelGI]s or "
"[ReflectionProbe]s, but are slower and can't reflect surfaces occluded by "
"others.\n"
"[b]Note:[/b] SSR is only supported in the Forward+ rendering method, not "
"Mobile or Compatibility."
msgstr ""
"Если [code]true[/code], отражения в экранном пространстве включены. Отражения "
"в экранном пространстве точнее отражений от [VoxelGI] или [ReflectionProbe], "
"но медленнее и не могут отражать поверхности, закрытые другими.\n"
"[b]Примечание:[/b] SSR поддерживается только в методе рендеринга Forward+, а "
"не в Mobile или Compatibility."

msgid ""
"The fade-in distance for screen-space reflections. Affects the area from the "
"reflected material to the screen-space reflection. Only positive values are "
"valid (negative values will be clamped to [code]0.0[/code])."
msgstr ""
"Расстояние постепенного появления для отражений в экранном пространстве. "
"Влияет на область от отраженного материала до отражения в экранном "
"пространстве. Допустимы только положительные значения (отрицательные значения "
"будут ограничены [code]0.0[/code])."

msgid ""
"The fade-out distance for screen-space reflections. Affects the area from the "
"screen-space reflection to the \"global\" reflection. Only positive values "
"are valid (negative values will be clamped to [code]0.0[/code])."
msgstr ""
"Расстояние затухания для отражений в экранном пространстве. Влияет на область "
"от отражения в экранном пространстве до \"глобального\" отражения. Допустимы "
"только положительные значения (отрицательные значения будут ограничены "
"[code]0.0[/code])."

msgid ""
"The maximum number of steps for screen-space reflections. Higher values are "
"slower."
msgstr ""
"Максимальное количество шагов для отражений в экранном пространстве. Более "
"высокие значения медленнее."

msgid ""
"Adjusts the brightness of values before they are provided to the tonemapper. "
"Higher [member tonemap_exposure] values result in a brighter image. See also "
"[member tonemap_white].\n"
"[b]Note:[/b] Values provided to the tonemapper will also be multiplied by "
"[code]2.0[/code] and [code]1.8[/code] for [constant TONE_MAPPER_FILMIC] and "
"[constant TONE_MAPPER_ACES] respectively to produce a similar apparent "
"brightness as [constant TONE_MAPPER_LINEAR]."
msgstr ""
"Регулирует яркость значений до того, как они будут предоставлены "
"преобразователю тонов. Более высокие значения [member tonemap_exposure] "
"приводят к более яркому изображению. См. также [member tonemap_white].\n"
"[b]Примечание:[/b] Значения, предоставленные преобразователю тонов, также "
"будут умножены на [code]2.0[/code] и [code]1.8[/code] для [constant "
"TONE_MAPPER_FILMIC] и [constant TONE_MAPPER_ACES] соответственно, чтобы "
"получить такую же видимую яркость, как [constant TONE_MAPPER_LINEAR]."

msgid ""
"The tonemapping mode to use. Tonemapping is the process that \"converts\" HDR "
"values to be suitable for rendering on an LDR display. (Godot doesn't support "
"rendering on HDR displays yet.)"
msgstr ""
"Режим тональной компрессии для использования. Тональная компрессия — это "
"процесс, который «конвертирует» значения HDR для их отображения на дисплее "
"LDR. (Godot пока не поддерживает отображение на дисплеях HDR.)"

msgid ""
"The white reference value for tonemapping, which indicates where bright white "
"is located in the scale of values provided to the tonemapper. For "
"photorealistic lighting, recommended values are between [code]6.0[/code] and "
"[code]8.0[/code]. Higher values result in less blown out highlights, but may "
"make the scene appear lower contrast. See also [member tonemap_exposure].\n"
"[b]Note:[/b] [member tonemap_white] is ignored when using [constant "
"TONE_MAPPER_LINEAR] or [constant TONE_MAPPER_AGX]."
msgstr ""
"Значение белого для тональной компрессии, которое указывает, где находится "
"яркий белый цвет в шкале значений, предоставленных тональной компрессии. Для "
"фотореалистичного освещения рекомендуемые значения находятся между [code]6.0[/"
"code] и [code]8.0[/code]. Более высокие значения приводят к менее засвеченным "
"бликам, но могут сделать сцену менее контрастной. См. также [member "
"tonemap_exposure].\n"
"[b]Примечание:[/b] [member tonemap_white] игнорируется при использовании "
"[constant TONE_MAPPER_LINEAR] или [constant TONE_MAPPER_AGX]."

msgid ""
"The [Color] of the volumetric fog when interacting with lights. Mist and fog "
"have an albedo close to [code]Color(1, 1, 1, 1)[/code] while smoke has a "
"darker albedo."
msgstr ""
"[Color] объемного тумана при взаимодействии с источниками света. Дымка и "
"туман имеют альбедо, близкое к [code]Color(1, 1, 1, 1)[/code], тогда как дым "
"имеет более темное альбедо."

msgid ""
"Scales the strength of ambient light used in the volumetric fog. A value of "
"[code]0.0[/code] means that ambient light will not impact the volumetric fog. "
"[member volumetric_fog_ambient_inject] has a small performance cost when set "
"above [code]0.0[/code].\n"
"[b]Note:[/b] This has no visible effect if [member volumetric_fog_density] is "
"[code]0.0[/code] or if [member volumetric_fog_albedo] is a fully black color."
msgstr ""
"Масштабирует интенсивность окружающего света, используемого в объемном "
"тумане. Значение [code]0.0[/code] означает, что окружающий свет не будет "
"влиять на объемный туман. [member volumetric_fog_ambient_inject] имеет "
"небольшие затраты производительности, если установлено значение выше "
"[code]0.0[/code].\n"
"[b]Примечание:[/b] Это не имеет видимого эффекта, если [member "
"volumetric_fog_density] равно [code]0.0[/code] или если [member "
"volumetric_fog_albedo] — полностью черный цвет."

msgid ""
"The direction of scattered light as it goes through the volumetric fog. A "
"value close to [code]1.0[/code] means almost all light is scattered forward. "
"A value close to [code]0.0[/code] means light is scattered equally in all "
"directions. A value close to [code]-1.0[/code] means light is scattered "
"mostly backward. Fog and mist scatter light slightly forward, while smoke "
"scatters light equally in all directions."
msgstr ""
"Направление рассеянного света, проходящего через объемный туман. Значение, "
"близкое к [code]1.0[/code], означает, что почти весь свет рассеивается "
"вперед. Значение, близкое к [code]0.0[/code], означает, что свет рассеивается "
"одинаково во всех направлениях. Значение, близкое к [code]-1.0[/code], "
"означает, что свет рассеивается в основном назад. Туман и дымка рассеивают "
"свет немного вперед, в то время как дым рассеивает свет одинаково во всех "
"направлениях."

msgid ""
"The base [i]exponential[/i] density of the volumetric fog. Set this to the "
"lowest density you want to have globally. [FogVolume]s can be used to add to "
"or subtract from this density in specific areas. Fog rendering is exponential "
"as in real life.\n"
"A value of [code]0.0[/code] disables global volumetric fog while allowing "
"[FogVolume]s to display volumetric fog in specific areas.\n"
"To make volumetric fog work as a volumetric [i]lighting[/i] solution, set "
"[member volumetric_fog_density] to the lowest non-zero value ([code]0.0001[/"
"code]) then increase lights' [member Light3D.light_volumetric_fog_energy] to "
"values between [code]10000[/code] and [code]100000[/code] to compensate for "
"the very low density."
msgstr ""
"Базовая [i]экспоненциальная[/i] плотность объемного тумана. Установите ее на "
"самую низкую плотность, которую вы хотите иметь глобально. [FogVolume]s можно "
"использовать для добавления или вычитания из этой плотности в определенных "
"областях. Рендеринг тумана является экспоненциальным, как в реальной жизни.\n"
"Значение [code]0.0[/code] отключает глобальный объемный туман, позволяя "
"[FogVolume]s отображать объемный туман в определенных областях.\n"
"Чтобы объемный туман работал как решение объемного [i]освещения[/i], "
"установите [member volumetric_fog_density] на самое низкое ненулевое значение "
"([code]0.0001[/code]), а затем увеличьте [member "
"Light3D.light_volumetric_fog_energy] источников света до значений между "
"[code]10000[/code] и [code]100000[/code], чтобы компенсировать очень низкую "
"плотность."

msgid ""
"The distribution of size down the length of the froxel buffer. A higher value "
"compresses the froxels closer to the camera and places more detail closer to "
"the camera."
msgstr ""
"Распределение размера по длине буфера фрокселей. Более высокое значение "
"сжимает фроксели ближе к камере и размещает больше деталей ближе к камере."

msgid ""
"The emitted light from the volumetric fog. Even with emission, volumetric fog "
"will not cast light onto other surfaces. Emission is useful to establish an "
"ambient color. As the volumetric fog effect uses single-scattering only, fog "
"tends to need a little bit of emission to soften the harsh shadows."
msgstr ""
"Излучаемый объемным туманом свет. Даже при излучении объемный туман не будет "
"отбрасывать свет на другие поверхности. Излучение полезно для установления "
"окружающего цвета. Поскольку эффект объемного тумана использует только "
"однократное рассеивание, туману, как правило, требуется немного излучения, "
"чтобы смягчить резкие тени."

msgid "The brightness of the emitted light from the volumetric fog."
msgstr "Яркость света, излучаемого объемным туманом."

msgid ""
"Enables the volumetric fog effect. Volumetric fog uses a screen-aligned "
"froxel buffer to calculate accurate volumetric scattering in the short to "
"medium range. Volumetric fog interacts with [FogVolume]s and lights to "
"calculate localized and global fog. Volumetric fog uses a PBR single-"
"scattering model based on extinction, scattering, and emission which it "
"exposes to users as density, albedo, and emission.\n"
"[b]Note:[/b] Volumetric fog is only supported in the Forward+ rendering "
"method, not Mobile or Compatibility."
msgstr ""
"Включает эффект объемного тумана. Объемный туман использует выровненный по "
"экрану буфер фрокселя для расчета точного объемного рассеивания на коротких и "
"средних расстояниях. Объемный туман взаимодействует с [FogVolume] и "
"источниками света для расчета локализованного и глобального тумана. Объемный "
"туман использует модель одиночного рассеяния PBR, основанную на затухании, "
"рассеивании и излучении, которую он представляет пользователям как плотность, "
"альбедо и излучение.\n"
"[b]Примечание:[/b] Объемный туман поддерживается только в методе рендеринга "
"Forward+, а не в Mobile или Compatibility."

msgid ""
"Scales the strength of Global Illumination used in the volumetric fog's "
"albedo color. A value of [code]0.0[/code] means that Global Illumination will "
"not impact the volumetric fog. [member volumetric_fog_gi_inject] has a small "
"performance cost when set above [code]0.0[/code].\n"
"[b]Note:[/b] This has no visible effect if [member volumetric_fog_density] is "
"[code]0.0[/code] or if [member volumetric_fog_albedo] is a fully black "
"color.\n"
"[b]Note:[/b] Only [VoxelGI] and SDFGI ([member Environment.sdfgi_enabled]) "
"are taken into account when using [member volumetric_fog_gi_inject]. Global "
"illumination from [LightmapGI], [ReflectionProbe] and SSIL (see [member "
"ssil_enabled]) will be ignored by volumetric fog."
msgstr ""
"Масштабирует силу глобального освещения, используемого в цвете альбедо "
"объемного тумана. Значение [code]0.0[/code] означает, что глобальное "
"освещение не повлияет на объемный туман. [member volumetric_fog_gi_inject] "
"имеет небольшие затраты производительности, если установлено выше [code]0.0[/"
"code].\n"
"[b]Примечание:[/b] Это не имеет видимого эффекта, если [member "
"volumetric_fog_density] равно [code]0.0[/code] или если [member "
"volumetric_fog_albedo] — полностью черный цвет.\n"
"[b]Примечание:[/b] При использовании [member volumetric_fog_gi_inject] "
"учитываются только [VoxelGI] и SDFGI ([member Environment.sdfgi_enabled]). "
"Глобальное освещение от [LightmapGI], [ReflectionProbe] и SSIL (см. [member "
"ssil_enabled]) будет игнорироваться объемным туманом."

msgid ""
"The distance over which the volumetric fog is computed. Increase to compute "
"fog over a greater range, decrease to add more detail when a long range is "
"not needed. For best quality fog, keep this as low as possible. See also "
"[member ProjectSettings.rendering/environment/volumetric_fog/volume_depth]."
msgstr ""
"Расстояние, на котором вычисляется объемный туман. Увеличьте, чтобы вычислить "
"туман на большем расстоянии, уменьшите, чтобы добавить больше деталей, когда "
"большой диапазон не нужен. Для наилучшего качества тумана держите это "
"значение как можно ниже. См. также [member ProjectSettings.rendering/"
"environment/volumetric_fog/volume_depth]."

msgid ""
"The factor to use when affecting the sky with volumetric fog. [code]1.0[/"
"code] means that volumetric fog can fully obscure the sky. Lower values "
"reduce the impact of volumetric fog on sky rendering, with [code]0.0[/code] "
"not affecting sky rendering at all.\n"
"[b]Note:[/b] [member volumetric_fog_sky_affect] also affects [FogVolume]s, "
"even if [member volumetric_fog_density] is [code]0.0[/code]. If you notice "
"[FogVolume]s are disappearing when looking towards the sky, set [member "
"volumetric_fog_sky_affect] to [code]1.0[/code]."
msgstr ""
"Коэффициент, используемый при воздействии на небо объемным туманом. "
"[code]1.0[/code] означает, что объемный туман может полностью скрыть небо. "
"Более низкие значения уменьшают влияние объемного тумана на рендеринг неба, а "
"[code]0.0[/code] вообще не влияют на рендеринг неба.\n"
"[b]Примечание:[/b] [member volumetric_fog_sky_affect] также влияет на "
"[FogVolume], даже если [member volumetric_fog_density] равен [code]0.0[/"
"code]. Если вы заметили, что [FogVolume] исчезают при взгляде на небо, "
"установите [member volumetric_fog_sky_affect] на [code]1.0[/code]."

msgid ""
"The amount by which to blend the last frame with the current frame. A higher "
"number results in smoother volumetric fog, but makes \"ghosting\" much worse. "
"A lower value reduces ghosting but can result in the per-frame temporal "
"jitter becoming visible."
msgstr ""
"Величина, на которую смешивается последний кадр с текущим кадром. Большее "
"число приводит к более плавному объемному туману, но значительно ухудшает "
"\"ореолы\". Меньшее значение уменьшает ореолы, но может привести к тому, что "
"временное дрожание кадра станет видимым."

msgid ""
"Enables temporal reprojection in the volumetric fog. Temporal reprojection "
"blends the current frame's volumetric fog with the last frame's volumetric "
"fog to smooth out jagged edges. The performance cost is minimal; however, it "
"leads to moving [FogVolume]s and [Light3D]s \"ghosting\" and leaving a trail "
"behind them. When temporal reprojection is enabled, try to avoid moving "
"[FogVolume]s or [Light3D]s too fast. Short-lived dynamic lighting effects "
"should have [member Light3D.light_volumetric_fog_energy] set to [code]0.0[/"
"code] to avoid ghosting."
msgstr ""
"Включает временное перепроецирование в объемном тумане. Временное "
"перепроецирование смешивает объемный туман текущего кадра с объемным туманом "
"последнего кадра, чтобы сгладить неровные края. Затраты на производительность "
"минимальны; однако это приводит к «ореолу» перемещения [FogVolume] и "
"[Light3D] и оставлению за ними следа. Когда включено временное "
"перепроецирование, старайтесь избегать слишком быстрого перемещения "
"[FogVolume] или [Light3D]. Кратковременные динамические световые эффекты "
"должны иметь [member Light3D.light_volumetric_fog_energy], установленный на "
"[code]0.0[/code], чтобы избежать ореола."

msgid ""
"Clears the background using the clear color defined in [member "
"ProjectSettings.rendering/environment/defaults/default_clear_color]."
msgstr ""
"Очищает фон, используя чистый цвет, определенный в [member "
"ProjectSettings.rendering/environment/defaults/default_clear_color]."

msgid "Clears the background using a custom clear color."
msgstr "Очищает фон, используя пользовательский цвет очистки."

msgid "Displays a user-defined sky in the background."
msgstr "Отображает заданное пользователем небо на заднем плане."

msgid "Displays a [CanvasLayer] in the background."
msgstr "Отображает [CanvasLayer] на заднем плане."

msgid ""
"Keeps on screen every pixel drawn in the background. This is the fastest "
"background mode, but it can only be safely used in fully-interior scenes (no "
"visible sky or sky reflections). If enabled in a scene where the background "
"is visible, \"ghost trail\" artifacts will be visible when moving the camera."
msgstr ""
"Сохраняет на экране каждый пиксель, нарисованный на заднем плане. Это самый "
"быстрый фоновый режим, но его можно безопасно использовать только в полностью "
"внутренних сценах (без видимого неба или отражений неба). Если включить в "
"сцене, где виден фон, при перемещении камеры будут видны артефакты "
"\"призрачного следа\"."

msgid "Displays a camera feed in the background."
msgstr "Отображает изображение с камеры в фоновом режиме."

msgid "Represents the size of the [enum BGMode] enum."
msgstr "Представляет размер перечисления [enum BGMode]."

msgid ""
"Gather ambient light from whichever source is specified as the background."
msgstr ""
"Соберите окружающий свет из любого источника, указанного в качестве фона."

msgid ""
"Disable ambient light. This provides a slight performance boost over "
"[constant AMBIENT_SOURCE_SKY]."
msgstr ""
"Отключить окружающее освещение. Это обеспечивает небольшой прирост "
"производительности по сравнению с [constant AMBIENT_SOURCE_SKY]."

msgid ""
"Specify a specific [Color] for ambient light. This provides a slight "
"performance boost over [constant AMBIENT_SOURCE_SKY]."
msgstr ""
"Укажите конкретный [Color] для окружающего света. Это обеспечивает небольшое "
"повышение производительности по сравнению с [constant AMBIENT_SOURCE_SKY]."

msgid ""
"Gather ambient light from the [Sky] regardless of what the background is."
msgstr "Собирает окружающий свет с [Sky] независимо от фона."

msgid "Use the background for reflections."
msgstr "Использует фон для отражений."

msgid ""
"Disable reflections. This provides a slight performance boost over other "
"options."
msgstr ""
"Отключить отражения. Это обеспечивает небольшой прирост производительности по "
"сравнению с другими вариантами."

msgid "Use the [Sky] for reflections regardless of what the background is."
msgstr "Использует [Sky] для отражений независимо от фона."

msgid ""
"Does not modify color data, resulting in a linear tonemapping curve which "
"unnaturally clips bright values, causing bright lighting to look blown out. "
"The simplest and fastest tonemapper."
msgstr ""
"Не изменяет цветовые данные, что приводит к линейной кривой тональной "
"компрессии, которая неестественно обрезает яркие значения, из-за чего яркое "
"освещение выглядит пересвеченным. Самый простой и быстрый тональный "
"компрессионный фильтр."

msgid ""
"A simple tonemapping curve that rolls off bright values to prevent clipping. "
"This results in an image that can appear dull and low contrast. Slower than "
"[constant TONE_MAPPER_LINEAR].\n"
"[b]Note:[/b] When [member tonemap_white] is left at the default value of "
"[code]1.0[/code], [constant TONE_MAPPER_REINHARDT] produces an identical "
"image to [constant TONE_MAPPER_LINEAR]."
msgstr ""
"Простая кривая тональной компрессии, которая сглаживает яркие значения, чтобы "
"предотвратить обрезку. Это приводит к изображению, которое может выглядеть "
"тусклым и малоконтрастным. Медленнее, чем [constant TONE_MAPPER_LINEAR].\n"
"[b]Примечание:[/b] Если [member tonemap_white] оставить на значении по "
"умолчанию [code]1.0[/code], [constant TONE_MAPPER_REINHARDT] создает "
"изображение, идентичное [constant TONE_MAPPER_LINEAR]."

msgid ""
"Uses a film-like tonemapping curve to prevent clipping of bright values and "
"provide better contrast than [constant TONE_MAPPER_REINHARDT]. Slightly "
"slower than [constant TONE_MAPPER_REINHARDT]."
msgstr ""
"Использует кривую тональной компрессии, похожую на пленку, для предотвращения "
"обрезки ярких значений и обеспечения лучшего контраста, чем [constant "
"TONE_MAPPER_REINHARDT]. Немного медленнее, чем [constant "
"TONE_MAPPER_REINHARDT]."

msgid ""
"Uses a high-contrast film-like tonemapping curve and desaturates bright "
"values for a more realistic appearance. Slightly slower than [constant "
"TONE_MAPPER_FILMIC].\n"
"[b]Note:[/b] This tonemapping operator is called \"ACES Fitted\" in Godot 3.x."
msgstr ""
"Использует высококонтрастную кривую тональной компрессии, похожую на "
"кинопленку, и обесцвечивает яркие значения для более реалистичного вида. "
"Немного медленнее, чем [constant TONE_MAPPER_FILMIC].\n"
"[b]Примечание:[/b] Этот оператор тональной компрессии называется «ACES "
"Fitted» в Godot 3.x."

msgid ""
"Uses a film-like tonemapping curve and desaturates bright values for a more "
"realistic appearance. Better than other tonemappers at maintaining the hue of "
"colors as they become brighter. The slowest tonemapping option.\n"
"[b]Note:[/b] [member tonemap_white] is fixed at a value of [code]16.29[/"
"code], which makes [constant TONE_MAPPER_AGX] unsuitable for use with the "
"Mobile rendering method."
msgstr ""
"Использует кривую тональной компрессии, похожую на кинопленку, и "
"обесцвечивает яркие значения для более реалистичного вида. Лучше, чем другие "
"тональные компрессии, сохраняет оттенок цветов по мере их увеличения. Самый "
"медленный вариант тональной компрессии.\n"
"[b]Примечание:[/b] [member tonemap_white] зафиксирован на значении "
"[code]16.29[/code], что делает [constant TONE_MAPPER_AGX] непригодным для "
"использования с методом рендеринга Mobile."

msgid ""
"Additive glow blending mode. Mostly used for particles, glows (bloom), lens "
"flare, bright sources."
msgstr ""
"Режим смешивания аддитивного свечения. В основном используется для частиц, "
"свечения (bloom), бликов линз, ярких источников."

msgid ""
"Screen glow blending mode. Increases brightness, used frequently with bloom."
msgstr ""
"Режим смешивания свечения экрана. Увеличивает яркость, часто используется со "
"свечением."

msgid ""
"Soft light glow blending mode. Modifies contrast, exposes shadows and "
"highlights (vivid bloom)."
msgstr ""
"Режим наложения «Мягкое свечение». Изменяет контраст, раскрывает тени и блики "
"(яркое свечение)."

msgid ""
"Replace glow blending mode. Replaces all pixels' color by the glow value. "
"This can be used to simulate a full-screen blur effect by tweaking the glow "
"parameters to match the original image's brightness."
msgstr ""
"Заменить режим смешивания свечения. Заменяет цвет всех пикселей значением "
"свечения. Это можно использовать для имитации эффекта полноэкранного "
"размытия, настраивая параметры свечения в соответствии с яркостью исходного "
"изображения."

msgid ""
"Mixes the glow with the underlying color to avoid increasing brightness as "
"much while still maintaining a glow effect."
msgstr ""
"Смешивает свечение с основным цветом, чтобы избежать слишком сильного "
"увеличения яркости, сохраняя при этом эффект свечения."

msgid "Use a physically-based fog model defined primarily by fog density."
msgstr ""
"Используйте физическую модель тумана, определяемую в первую очередь "
"плотностью тумана."

msgid ""
"Use a simple fog model defined by start and end positions and a custom curve. "
"While not physically accurate, this model can be useful when you need more "
"artistic control."
msgstr ""
"Используйте простую модель тумана, определяемую начальным и конечным "
"положениями и пользовательской кривой. Хотя эта модель не является физически "
"точной, она может быть полезна, когда вам нужен более художественный контроль."

msgid ""
"Use 50% scale for SDFGI on the Y (vertical) axis. SDFGI cells will be twice "
"as short as they are wide. This allows providing increased GI detail and "
"reduced light leaking with thin floors and ceilings. This is usually the best "
"choice for scenes that don't feature much verticality."
msgstr ""
"Используйте масштаб 50% для SDFGI по оси Y (вертикальной). Ячейки SDFGI будут "
"в два раза короче своей ширины. Это позволяет повысить детализацию GI и "
"уменьшить утечку света при тонких полах и потолках. Обычно это лучший выбор "
"для сцен, в которых не так много вертикальности."

msgid ""
"Use 75% scale for SDFGI on the Y (vertical) axis. This is a balance between "
"the 50% and 100% SDFGI Y scales."
msgstr ""
"Используйте 75% масштаб для SDFGI на оси Y (вертикальной). Это баланс между "
"50% и 100% шкалами Y SDFGI."

msgid ""
"Use 100% scale for SDFGI on the Y (vertical) axis. SDFGI cells will be as "
"tall as they are wide. This is usually the best choice for highly vertical "
"scenes. The downside is that light leaking may become more noticeable with "
"thin floors and ceilings."
msgstr ""
"Используйте масштаб 100% для SDFGI на оси Y (вертикальной). Ячейки SDFGI "
"будут такими же высокими, как и широкими. Обычно это лучший выбор для сцен с "
"высокой вертикальностью. Недостатком является то, что утечка света может "
"стать более заметной при тонких полах и потолках."

msgid "A class that stores an expression you can execute."
msgstr "Класс, хранящий выражение, которое вы можете выполнить."

msgid ""
"An expression can be made of any arithmetic operation, built-in math function "
"call, method call of a passed instance, or built-in type construction call.\n"
"An example expression text using the built-in math functions could be "
"[code]sqrt(pow(3, 2) + pow(4, 2))[/code].\n"
"In the following example we use a [LineEdit] node to write our expression and "
"show the result.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var expression = Expression.new()\n"
"\n"
"func _ready():\n"
"\t$LineEdit.text_submitted.connect(self._on_text_submitted)\n"
"\n"
"func _on_text_submitted(command):\n"
"\tvar error = expression.parse(command)\n"
"\tif error != OK:\n"
"\t\tprint(expression.get_error_text())\n"
"\t\treturn\n"
"\tvar result = expression.execute()\n"
"\tif not expression.has_execute_failed():\n"
"\t\t$LineEdit.text = str(result)\n"
"[/gdscript]\n"
"[csharp]\n"
"private Expression _expression = new Expression();\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tGetNode<LineEdit>(\"LineEdit\").TextSubmitted += OnTextEntered;\n"
"}\n"
"\n"
"private void OnTextEntered(string command)\n"
"{\n"
"\tError error = _expression.Parse(command);\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.Print(_expression.GetErrorText());\n"
"\t\treturn;\n"
"\t}\n"
"\tVariant result = _expression.Execute();\n"
"\tif (!_expression.HasExecuteFailed())\n"
"\t{\n"
"\t\tGetNode<LineEdit>(\"LineEdit\").Text = result.ToString();\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Выражение может быть создано из любой арифметической операции, вызова "
"встроенной математической функции, вызова метода переданного экземпляра или "
"вызова встроенной конструкции типа.\n"
"Пример текста выражения с использованием встроенных математических функций "
"может быть [code]sqrt(pow(3, 2) + pow(4, 2))[/code].\n"
"В следующем примере мы используем узел [LineEdit] для записи нашего выражения "
"и отображения результата.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var expression = Expression.new()\n"
"\n"
"func _ready():\n"
"\t$LineEdit.text_submitted.connect(self._on_text_submitted)\n"
"\n"
"func _on_text_submitted(command):\n"
"\tvar error = expression.parse(command)\n"
"\tif error != OK:\n"
"\t\tprint(expression.get_error_text())\n"
"\t\treturn\n"
"\tvar result = expression.execute()\n"
"\tif not expression.has_execute_failed():\n"
"\t\t$LineEdit.text = str(result)\n"
"[/gdscript]\n"
"[csharp]\n"
"private Expression _expression = new Expression();\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tGetNode<LineEdit>(\"LineEdit\").TextSubmitted += OnTextEntered;\n"
"}\n"
"\n"
"private void OnTextEntered(string command)\n"
"{\n"
"\tError error = _expression.Parse(command);\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.Print(_expression.GetErrorText());\n"
"\t\treturn;\n"
"\t}\n"
"\tVariant result = _expression.Execute();\n"
"\tif (!_expression.HasExecuteFailed())\n"
"\t{\n"
"\t\tGetNode<LineEdit>(\"LineEdit\").Text = result.ToString();\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Evaluating Expressions"
msgstr "Оценка выражений"

msgid ""
"Executes the expression that was previously parsed by [method parse] and "
"returns the result. Before you use the returned object, you should check if "
"the method failed by calling [method has_execute_failed].\n"
"If you defined input variables in [method parse], you can specify their "
"values in the inputs array, in the same order."
msgstr ""
"Выполняет выражение, которое было ранее проанализировано [method parse], и "
"возвращает результат. Перед использованием возвращенного объекта следует "
"проверить, не завершился ли метод сбоем, вызвав [method has_execute_failed].\n"
"Если вы определили входные переменные в [method parse], вы можете указать их "
"значения в массиве inputs в том же порядке."

msgid "Returns the error text if [method parse] or [method execute] has failed."
msgstr ""
"Возвращает текст ошибки, если [method parse] или [method execute] завершились "
"неудачей."

msgid "Returns [code]true[/code] if [method execute] has failed."
msgstr "Возвращает [code]true[/code], если [method execute] не удалось."

msgid ""
"Parses the expression and returns an [enum Error] code.\n"
"You can optionally specify names of variables that may appear in the "
"expression with [param input_names], so that you can bind them when it gets "
"executed."
msgstr ""
"Анализирует выражение и возвращает код [enum Error].\n"
"При желании можно указать имена переменных, которые могут появляться в "
"выражении с помощью [param input_names], чтобы можно было связать их при его "
"выполнении."

msgid "Texture which displays the content of an external buffer."
msgstr "Текстура, отображающая содержимое внешнего буфера."

msgid ""
"Displays the content of an external buffer provided by the platform.\n"
"Requires the [url=https://registry.khronos.org/OpenGL/extensions/OES/"
"OES_EGL_image_external.txt]OES_EGL_image_external[/url] extension (OpenGL) or "
"[url=https://registry.khronos.org/vulkan/specs/1.1-extensions/html/"
"vkspec.html#VK_ANDROID_external_memory_android_hardware_buffer]VK_ANDROID_external_memory_android_hardware_buffer[/"
"url] extension (Vulkan).\n"
"[b]Note:[/b] This is currently only supported in Android builds."
msgstr ""
"Отображает содержимое внешнего буфера, предоставленного платформой.\n"
"Требуется расширение [url=https://registry.khronos.org/OpenGL/extensions/OES/"
"OES_EGL_image_external.txt]OES_EGL_image_external[/url] (OpenGL) или "
"расширение [url=https://registry.khronos.org/vulkan/specs/1.1-extensions/html/"
"vkspec.html#VK_ANDROID_external_memory_android_hardware_buffer]VK_ANDROID_external_memory_android_hardware_buffer[/"
"url] (Vulkan).\n"
"[b]Примечание:[/b] В настоящее время поддерживается только в сборках Android."

msgid ""
"Returns the external texture ID.\n"
"Depending on your use case, you may need to pass this to platform APIs, for "
"example, when creating an [code]android.graphics.SurfaceTexture[/code] on "
"Android."
msgstr ""
"Возвращает внешний идентификатор текстуры.\n"
"В зависимости от вашего варианта использования вам может потребоваться "
"передать это API платформы, например, при создании "
"[code]android.graphics.SurfaceTexture[/code] на Android."

msgid ""
"Sets the external buffer ID.\n"
"Depending on your use case, you may need to call this with data received from "
"a platform API, for example, [code]SurfaceTexture.getHardwareBuffer()[/code] "
"on Android."
msgstr ""
"Устанавливает идентификатор внешнего буфера.\n"
"В зависимости от вашего варианта использования вам может потребоваться "
"вызвать его с данными, полученными от API платформы, например, "
"[code]SurfaceTexture.getHardwareBuffer()[/code] на Android."

msgid "External texture size."
msgstr "Внешний размер текстуры."

msgid "Generates noise using the FastNoiseLite library."
msgstr "Генерирует шум с помощью библиотеки FastNoiseLite."

msgid ""
"This class generates noise using the FastNoiseLite library, which is a "
"collection of several noise algorithms including Cellular, Perlin, Value, and "
"more.\n"
"Most generated noise values are in the range of [code][-1, 1][/code], but not "
"always. Some of the cellular noise algorithms return results above [code]1[/"
"code]."
msgstr ""
"Этот класс генерирует шум с помощью библиотеки FastNoiseLite, которая "
"представляет собой набор из нескольких алгоритмов шума, включая Cellular, "
"Perlin, Value и другие.\n"
"Большинство генерируемых значений шума находятся в диапазоне [code][-1, 1][/"
"code], но не всегда. Некоторые алгоритмы клеточного шума возвращают "
"результаты выше [code]1[/code]."

msgid ""
"Determines how the distance to the nearest/second-nearest point is computed."
msgstr ""
"Определяет, как вычисляется расстояние до ближайшей/второй по близости точки."

msgid ""
"Maximum distance a point can move off of its grid position. Set to [code]0[/"
"code] for an even grid."
msgstr ""
"Максимальное расстояние, на которое точка может сместиться от своей позиции "
"сетки. Установите [code]0[/code] для равномерной сетки."

msgid "Return type from cellular noise calculations."
msgstr "Тип возврата из расчетов клеточного шума."

msgid "Sets the maximum warp distance from the origin."
msgstr "Устанавливает максимальное расстояние деформации от начала координат."

msgid ""
"If enabled, another FastNoiseLite instance is used to warp the space, "
"resulting in a distortion of the noise."
msgstr ""
"Если этот параметр включен, для деформации пространства используется другой "
"экземпляр FastNoiseLite, что приводит к искажению шума."

msgid ""
"Determines the strength of each subsequent layer of the noise which is used "
"to warp the space.\n"
"A low value places more emphasis on the lower frequency base layers, while a "
"high value puts more emphasis on the higher frequency layers."
msgstr ""
"Определяет силу каждого последующего слоя шума, который используется для "
"деформации пространства.\n"
"Низкое значение делает больший акцент на базовых слоях с более низкой "
"частотой, тогда как высокое значение делает больший акцент на слоях с более "
"высокой частотой."

msgid ""
"The change in frequency between octaves, also known as \"lacunarity\", of the "
"fractal noise which warps the space. Increasing this value results in higher "
"octaves, producing noise with finer details and a rougher appearance."
msgstr ""
"Изменение частоты между октавами, также известное как «лакунарность», "
"фрактального шума, искажающего пространство. Увеличение этого значения "
"приводит к повышению октав, создавая шум с более мелкими деталями и более "
"грубым внешним видом."

msgid ""
"The number of noise layers that are sampled to get the final value for the "
"fractal noise which warps the space."
msgstr ""
"Количество слоев шума, которые выбираются для получения окончательного "
"значения фрактального шума, искажающего пространство."

msgid ""
"The method for combining octaves into a fractal which is used to warp the "
"space."
msgstr ""
"Метод объединения октав во фрактал, используемый для деформации пространства."

msgid ""
"Frequency of the noise which warps the space. Low frequency results in smooth "
"noise while high frequency results in rougher, more granular noise."
msgstr ""
"Частота шума, который деформирует пространство. Низкая частота приводит к "
"плавному шуму, а высокая частота приводит к более грубому, гранулярному шуму."

msgid "The warp algorithm."
msgstr "Алгоритм варпа."

msgid ""
"Determines the strength of each subsequent layer of noise in fractal noise.\n"
"A low value places more emphasis on the lower frequency base layers, while a "
"high value puts more emphasis on the higher frequency layers."
msgstr ""
"Определяет силу каждого последующего слоя шума во фрактальном шуме.\n"
"Низкое значение делает больший акцент на базовых слоях с более низкой "
"частотой, тогда как высокое значение делает больший акцент на слоях с более "
"высокой частотой."

msgid ""
"Frequency multiplier between subsequent octaves. Increasing this value "
"results in higher octaves producing noise with finer details and a rougher "
"appearance."
msgstr ""
"Множитель частоты между последующими октавами. Увеличение этого значения "
"приводит к тому, что более высокие октавы производят шум с более тонкими "
"деталями и более грубым внешним видом."

msgid ""
"The number of noise layers that are sampled to get the final value for "
"fractal noise types."
msgstr ""
"Количество слоев шума, которые выбираются для получения окончательного "
"значения для типов фрактального шума."

msgid "Sets the strength of the fractal ping pong type."
msgstr "Устанавливает силу фрактального типа пинг-понга."

msgid "The method for combining octaves into a fractal."
msgstr "Метод объединения октав во фрактал."

msgid ""
"Higher weighting means higher octaves have less impact if lower octaves have "
"a large impact."
msgstr ""
"Более высокий вес означает, что более высокие октавы оказывают меньшее "
"влияние, если более низкие октавы оказывают большее влияние."

msgid ""
"The frequency for all noise types. Low frequency results in smooth noise "
"while high frequency results in rougher, more granular noise."
msgstr ""
"Частота для всех типов шума. Низкая частота приводит к гладкому шуму, а "
"высокая частота приводит к более грубому, более гранулярному шуму."

msgid "The noise algorithm used."
msgstr "Используемый алгоритм шума."

msgid "Translate the noise input coordinates by the given [Vector3]."
msgstr "Перевести входные координаты шума по заданному [Vector3]."

msgid "The random number seed for all noise types."
msgstr "Начальное значение случайного числа для всех типов шума."

msgid ""
"A lattice of points are assigned random values then interpolated based on "
"neighboring values."
msgstr ""
"Решетке точек присваиваются случайные значения, а затем они интерполируются "
"на основе соседних значений."

msgid ""
"Similar to value noise ([constant TYPE_VALUE]), but slower. Has more variance "
"in peaks and valleys.\n"
"Cubic noise can be used to avoid certain artifacts when using value noise to "
"create a bumpmap. In general, you should always use this mode if the value "
"noise is being used for a heightmap or bumpmap."
msgstr ""
"Аналогично шуму значений ([constant TYPE_VALUE]), но медленнее. Имеет большую "
"дисперсию пиков и впадин.\n"
"Кубический шум можно использовать для предотвращения определённых артефактов "
"при использовании шума значений для создания рельефной карты. В целом, этот "
"режим следует всегда использовать, если шум значений используется для карты "
"высот или рельефной карты."

msgid ""
"A lattice of random gradients. Their dot products are interpolated to obtain "
"values in between the lattices."
msgstr ""
"Решетка случайных градиентов. Их скалярные произведения интерполируются для "
"получения значений между решетками."

msgid ""
"Cellular includes both Worley noise and Voronoi diagrams which creates "
"various regions of the same value."
msgstr ""
"Сотовая связь включает в себя как шум Worley, так и диаграммы Voronoi, "
"которые создают различные области с одинаковым значением."

msgid ""
"As opposed to [constant TYPE_PERLIN], gradients exist in a simplex lattice "
"rather than a grid lattice, avoiding directional artifacts. Internally uses "
"FastNoiseLite's OpenSimplex2 noise type."
msgstr ""
"В отличие от [constant TYPE_PERLIN], градиенты существуют в симплексной "
"решетке, а не в сетке сетки, избегая направленных артефактов. Внутренне "
"использует тип шума OpenSimplex2 от FastNoiseLite."

msgid ""
"Modified, higher quality version of [constant TYPE_SIMPLEX], but slower. "
"Internally uses FastNoiseLite's OpenSimplex2S noise type."
msgstr ""
"Измененная, более качественная версия [constant TYPE_SIMPLEX], но медленнее. "
"Внутренне использует тип шума OpenSimplex2S от FastNoiseLite."

msgid "No fractal noise."
msgstr "Отсутствие фрактального шума."

msgid ""
"Method using Fractional Brownian Motion to combine octaves into a fractal."
msgstr ""
"Метод, использующий дробное броуновское движение для объединения октав во "
"фрактал."

msgid ""
"Method of combining octaves into a fractal resulting in a \"ridged\" look."
msgstr ""
"Метод объединения октав во фрактал, в результате чего получается «ребристый» "
"вид."

msgid "Method of combining octaves into a fractal with a ping pong effect."
msgstr "Метод объединения октав во фрактал с эффектом пинг-понга."

msgid "Euclidean distance to the nearest point."
msgstr "Евклидово расстояние до ближайшей точки."

msgid "Squared Euclidean distance to the nearest point."
msgstr "Квадрат Евклидова расстояния до ближайшей точки."

msgid "Manhattan distance (taxicab metric) to the nearest point."
msgstr "Расстояние по Манхэттену (по шкале taxicab) до ближайшей точки."

msgid ""
"Blend of [constant DISTANCE_EUCLIDEAN] and [constant DISTANCE_MANHATTAN] to "
"give curved cell boundaries."
msgstr ""
"Сочетание [constant DISTANCE_EUCLIDEAN] и [constant DISTANCE_MANHATTAN] для "
"получения изогнутых границ ячеек."

msgid ""
"The cellular distance function will return the same value for all points "
"within a cell."
msgstr ""
"Функция расстояния между ячейками вернет одинаковое значение для всех точек "
"внутри ячейки."

msgid ""
"The cellular distance function will return a value determined by the distance "
"to the nearest point."
msgstr ""
"Функция расстояния по ячейке вернет значение, определяемое расстоянием до "
"ближайшей точки."

msgid ""
"The cellular distance function returns the distance to the second-nearest "
"point."
msgstr ""
"Функция расстояния по ячейке возвращает расстояние до второй ближайшей точки."

msgid ""
"The distance to the nearest point is added to the distance to the second-"
"nearest point."
msgstr ""
"Расстояние до ближайшей точки прибавляется к расстоянию до второй по близости "
"точки."

msgid ""
"The distance to the nearest point is subtracted from the distance to the "
"second-nearest point."
msgstr ""
"Расстояние до ближайшей точки вычитается из расстояния до второй по близости "
"точки."

msgid ""
"The distance to the nearest point is multiplied with the distance to the "
"second-nearest point."
msgstr ""
"Расстояние до ближайшей точки умножается на расстояние до второй по ближайшей "
"точке."

msgid ""
"The distance to the nearest point is divided by the distance to the second-"
"nearest point."
msgstr ""
"Расстояние до ближайшей точки делится на расстояние до второй по ближайшей "
"точке."

msgid "The domain is warped using the simplex noise algorithm."
msgstr "Домен деформируется с помощью алгоритма симплексного шума."

msgid ""
"The domain is warped using a simplified version of the simplex noise "
"algorithm."
msgstr ""
"Домен деформируется с использованием упрощенной версии алгоритма симплексного "
"шума."

msgid ""
"The domain is warped using a simple noise grid (not as smooth as the other "
"methods, but more performant)."
msgstr ""
"Домен деформируется с помощью простой сетки шума (не такой гладкой, как "
"другие методы, но более производительной)."

msgid "No fractal noise for warping the space."
msgstr "Отсутствие фрактального шума, деформирующего пространство."

msgid ""
"Warping the space progressively, octave for octave, resulting in a more "
"\"liquified\" distortion."
msgstr ""
"Пространство постепенно деформируется, октава за октавой, что приводит к "
"более \"жидкому\" искажению."

msgid ""
"Warping the space independently for each octave, resulting in a more chaotic "
"distortion."
msgstr ""
"Искривление пространства происходит независимо для каждой октавы, что "
"приводит к более хаотичным искажениям."

msgid "Handles FBX documents."
msgstr "Обрабатывает документы FBX."

msgid ""
"The FBXDocument handles FBX documents. It provides methods to append data "
"from buffers or files, generate scenes, and register/unregister document "
"extensions.\n"
"When exporting FBX from Blender, use the \"FBX Units Scale\" option. The "
"\"FBX Units Scale\" option sets the correct scale factor and avoids manual "
"adjustments when re-importing into Blender, such as through glTF export."
msgstr ""
"FBXDocument обрабатывает документы FBX. Он предоставляет методы для "
"добавления данных из буферов или файлов, создания сцен и регистрации/отмены "
"регистрации расширений документов.\n"
"При экспорте FBX из Blender используйте параметр «Шкала единиц FBX». Параметр "
"«Шкала единиц FBX» устанавливает правильный коэффициент масштабирования и "
"позволяет избежать ручной настройки при повторном импорте в Blender, "
"например, через экспорт glTF."

msgid "The FBXState handles the state data imported from FBX files."
msgstr ""
"FBXState обрабатывает данные о состоянии, импортированные из файлов FBX."

msgid ""
"If [code]true[/code], the import process used auxiliary nodes called geometry "
"helper nodes. These nodes help preserve the pivots and transformations of the "
"original 3D model during import."
msgstr ""
"Если [code]true[/code], процесс импорта использовал вспомогательные узлы, "
"называемые узлами-помощниками геометрии. Эти узлы помогают сохранить повороты "
"и преобразования исходной 3D-модели во время импорта."

msgid "Provides methods for file reading and writing operations."
msgstr "Предоставляет методы для операций чтения и записи файлов."

msgid ""
"This class can be used to permanently store data in the user device's file "
"system and to read from it. This is useful for storing game save data or "
"player configuration files.\n"
"[b]Example:[/b] How to write and read from a file. The file named [code]"
"\"save_game.dat\"[/code] will be stored in the user data folder, as specified "
"in the [url=$DOCS_URL/tutorials/io/data_paths.html]Data paths[/url] "
"documentation:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func save_to_file(content):\n"
"\tvar file = FileAccess.open(\"user://save_game.dat\", FileAccess.WRITE)\n"
"\tfile.store_string(content)\n"
"\n"
"func load_from_file():\n"
"\tvar file = FileAccess.open(\"user://save_game.dat\", FileAccess.READ)\n"
"\tvar content = file.get_as_text()\n"
"\treturn content\n"
"[/gdscript]\n"
"[csharp]\n"
"public void SaveToFile(string content)\n"
"{\n"
"\tusing var file = FileAccess.Open(\"user://save_game.dat\", "
"FileAccess.ModeFlags.Write);\n"
"\tfile.StoreString(content);\n"
"}\n"
"\n"
"public string LoadFromFile()\n"
"{\n"
"\tusing var file = FileAccess.Open(\"user://save_game.dat\", "
"FileAccess.ModeFlags.Read);\n"
"\tstring content = file.GetAsText();\n"
"\treturn content;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"A [FileAccess] instance has its own file cursor, which is the position in "
"bytes in the file where the next read/write operation will occur. Functions "
"such as [method get_8], [method get_16], [method store_8], and [method "
"store_16] will move the file cursor forward by the number of bytes read/"
"written. The file cursor can be moved to a specific position using [method "
"seek] or [method seek_end], and its position can be retrieved using [method "
"get_position].\n"
"A [FileAccess] instance will close its file when the instance is freed. Since "
"it inherits [RefCounted], this happens automatically when it is no longer in "
"use. [method close] can be called to close it earlier. In C#, the reference "
"must be disposed manually, which can be done with the [code]using[/code] "
"statement or by calling the [code]Dispose[/code] method directly.\n"
"[b]Note:[/b] To access project resources once exported, it is recommended to "
"use [ResourceLoader] instead of [FileAccess], as some files are converted to "
"engine-specific formats and their original source files might not be present "
"in the exported PCK package. If using [FileAccess], make sure the file is "
"included in the export by changing its import mode to [b]Keep File (exported "
"as is)[/b] in the Import dock, or, for files where this option is not "
"available, change the non-resource export filter in the Export dialog to "
"include the file's extension (e.g. [code]*.txt[/code]).\n"
"[b]Note:[/b] Files are automatically closed only if the process exits "
"\"normally\" (such as by clicking the window manager's close button or "
"pressing [kbd]Alt + F4[/kbd]). If you stop the project execution by pressing "
"[kbd]F8[/kbd] while the project is running, the file won't be closed as the "
"game process will be killed. You can work around this by calling [method "
"flush] at regular intervals."
msgstr ""
"Этот класс можно использовать для постоянного хранения данных в файловой "
"системе пользовательского устройства и для чтения из неё. Это полезно для "
"хранения сохраненных данных игры или файлов конфигурации игрока.\n"
"[b]Пример:[/b] Как записать и прочитать файл. Файл с именем [code]"
"\"save_game.dat\"[/code] будет сохранён в папке пользовательских данных, как "
"указано в документации [url=$DOCS_URL/tutorials/io/data_paths.html]Пути к "
"данным[/url]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func save_to_file(content):\n"
"\tvar file = FileAccess.open(\"user://save_game.dat\", FileAccess.WRITE)\n"
"\tfile.store_string(content)\n"
"\n"
"func load_from_file():\n"
"\tvar file = FileAccess.open(\"user://save_game.dat\", FileAccess.READ)\n"
"\tvar content = file.get_as_text()\n"
"\treturn content\n"
"[/gdscript]\n"
"[csharp]\n"
"public void SaveToFile(string content)\n"
"{\n"
"\tusing var file = FileAccess.Open(\"user://save_game.dat\", "
"FileAccess.ModeFlags.Write);\n"
"\tfile.StoreString(content);\n"
"}\n"
"\n"
"public string LoadFromFile()\n"
"{\n"
"\tusing var file = FileAccess.Open(\"user://save_game.dat\", "
"FileAccess.ModeFlags.Read);\n"
"\tstring content = file.GetAsText();\n"
"\treturn content;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Экземпляр [FileAccess] имеет собственный файловый курсор, который "
"представляет собой позицию в байтах в файле, где будет выполнена следующая "
"операция чтения/записи. Такие функции, как [method get_8], [method get_16], "
"[method store_8] и [method store_16], перемещают файловый курсор вперёд на "
"количество прочитанных/записанных байтов. Файловый курсор можно переместить в "
"определённую позицию с помощью [method seek] или [method seek_end], а его "
"позицию можно получить с помощью [method get_position].\n"
"Экземпляр [FileAccess] закрывает свой файл при освобождении. Поскольку он "
"наследует [RefCounted], это происходит автоматически, когда файл больше не "
"используется. Для его более раннего закрытия можно вызвать [method close]. В "
"C# ссылку необходимо удалить вручную, что можно сделать с помощью оператора "
"[code]using[/code] или путём прямого вызова метода [code]Dispose[/code].\n"
"[b]Примечание:[/b] Для доступа к ресурсам проекта после экспорта "
"рекомендуется использовать [ResourceLoader] вместо [FileAccess], поскольку "
"некоторые файлы преобразуются в форматы, специфичные для движка, и их "
"исходные файлы могут отсутствовать в экспортированном пакете PCK. При "
"использовании [FileAccess] убедитесь, что файл включён в экспорт, изменив его "
"режим импорта на [b]Сохранить файл (экспортируется как есть)[/b] в панели "
"импорта, или, для файлов, для которых этот параметр недоступен, измените "
"фильтр экспорта без ресурсов в диалоговом окне экспорта, включив расширение "
"файла (например, [code]*.txt[/code]).\n"
"[b]Примечание:[/b] Файлы автоматически закрываются только при «нормальном» "
"завершении процесса (например, нажатием кнопки закрытия в менеджере окон или "
"сочетанием клавиш [kbd]Alt + F4[/kbd]). Если остановить выполнение проекта, "
"нажав [kbd]F8[/kbd] во время его работы, файл не будет закрыт, так как "
"игровой процесс будет завершён. Эту проблему можно обойти, регулярно вызывая "
"[method flush]."

msgid "Binary serialization API"
msgstr "API двоичной сериализации"

msgid ""
"Closes the currently opened file and prevents subsequent read/write "
"operations. Use [method flush] to persist the data to disk without closing "
"the file.\n"
"[b]Note:[/b] [FileAccess] will automatically close when it's freed, which "
"happens when it goes out of scope or when it gets assigned with [code]null[/"
"code]. In C# the reference must be disposed after we are done using it, this "
"can be done with the [code]using[/code] statement or calling the "
"[code]Dispose[/code] method directly."
msgstr ""
"Закрывает текущий открытый файл и предотвращает последующие операции чтения/"
"записи. Используйте [method flush], чтобы сохранить данные на диске без "
"закрытия файла.\n"
"[b]Примечание:[/b] [FileAccess] автоматически закроется при освобождении, что "
"происходит, когда он выходит из области действия или когда ему присваивается "
"[code]null[/code]. В C# ссылка должна быть удалена после того, как мы "
"закончим ее использовать, это можно сделать с помощью оператора [code]using[/"
"code] или вызова метода [code]Dispose[/code] напрямую."

msgid ""
"Creates a temporary file. This file will be freed when the returned "
"[FileAccess] is freed.\n"
"If [param prefix] is not empty, it will be prefixed to the file name, "
"separated by a [code]-[/code].\n"
"If [param extension] is not empty, it will be appended to the temporary file "
"name.\n"
"If [param keep] is [code]true[/code], the file is not deleted when the "
"returned [FileAccess] is freed.\n"
"Returns [code]null[/code] if opening the file failed. You can use [method "
"get_open_error] to check the error that occurred."
msgstr ""
"Создает временный файл. Этот файл будет освобожден при освобождении "
"возвращенного [FileAccess].\n"
"Если [param prefix] не пуст, он будет добавлен к имени файла, разделенному "
"[code]-[/code].\n"
"Если [param extension] не пуст, он будет добавлен к имени временного файла.\n"
"Если [param keep] равен [code]true[/code], файл не удаляется при освобождении "
"возвращенного [FileAccess].\n"
"Возвращает [code]null[/code], если открытие файла не удалось. Вы можете "
"использовать [method get_open_error], чтобы проверить возникшую ошибку."

msgid ""
"Returns [code]true[/code] if the file cursor has already read past the end of "
"the file.\n"
"[b]Note:[/b] [code]eof_reached() == false[/code] cannot be used to check "
"whether there is more data available. To loop while there is more data "
"available, use:\n"
"[codeblocks]\n"
"[gdscript]\n"
"while file.get_position() < file.get_length():\n"
"\t# Read data\n"
"[/gdscript]\n"
"[csharp]\n"
"while (file.GetPosition() < file.GetLength())\n"
"{\n"
"\t// Read data\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [code]true[/code], если файловый курсор уже прочитал за пределами "
"конца файла.\n"
"[b]Примечание:[/b] [code]eof_reached() == false[/code] нельзя использовать "
"для проверки наличия дополнительных данных. Чтобы выполнить цикл, пока есть "
"дополнительные данные, используйте:\n"
"[codeblocks]\n"
"[gdscript]\n"
"while file.get_position() < file.get_length():\n"
"\t# Read data\n"
"[/gdscript]\n"
"[csharp]\n"
"while (file.GetPosition() < file.GetLength())\n"
"{\n"
"\t// Read data\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if the file exists in the given path.\n"
"[b]Note:[/b] Many resources types are imported (e.g. textures or sound "
"files), and their source asset will not be included in the exported game, as "
"only the imported version is used. See [method ResourceLoader.exists] for an "
"alternative approach that takes resource remapping into account.\n"
"For a non-static, relative equivalent, use [method DirAccess.file_exists]."
msgstr ""
"Возвращает [code]true[/code], если файл существует по указанному пути.\n"
"[b]Примечание:[/b] Импортируются многие типы ресурсов (например, текстуры или "
"звуковые файлы), и их исходный ресурс не будет включен в экспортированную "
"игру, поскольку используется только импортированная версия. См. [method "
"ResourceLoader.exists] для альтернативного подхода, который учитывает "
"переназначение ресурсов.\n"
"Для нестатического, относительного эквивалента используйте [method "
"DirAccess.file_exists]."

msgid ""
"Writes the file's buffer to disk. Flushing is automatically performed when "
"the file is closed. This means you don't need to call [method flush] manually "
"before closing a file. Still, calling [method flush] can be used to ensure "
"the data is safe even if the project crashes instead of being closed "
"gracefully.\n"
"[b]Note:[/b] Only call [method flush] when you actually need it. Otherwise, "
"it will decrease performance due to constant disk writes."
msgstr ""
"Записывает буфер файла на диск. Сброс выполняется автоматически при закрытии "
"файла. Это означает, что вам не нужно вызывать [method flush] вручную перед "
"закрытием файла. Тем не менее, вызов [method flush] может использоваться для "
"обеспечения безопасности данных, даже если проект аварийно завершится, а не "
"будет закрыт корректно.\n"
"[b]Примечание:[/b] Вызывайте [method flush] только тогда, когда это "
"действительно нужно. В противном случае это снизит производительность из-за "
"постоянной записи на диск."

msgid ""
"Returns the next 8 bits from the file as an integer. This advances the file "
"cursor by 1 byte. See [method store_8] for details on what values can be "
"stored and retrieved this way."
msgstr ""
"Возвращает следующие 8 бит из файла в виде целого числа. Это перемещает "
"курсор файла на 1 байт. Подробнее о том, какие значения можно сохранять и "
"извлекать таким способом, см. в [method store_8]."

msgid ""
"Returns the next 16 bits from the file as an integer. This advances the file "
"cursor by 2 bytes. See [method store_16] for details on what values can be "
"stored and retrieved this way."
msgstr ""
"Возвращает следующие 16 бит из файла в виде целого числа. Это перемещает "
"курсор файла на 2 байта вперёд. Подробнее о том, какие значения можно "
"сохранять и извлекать таким способом, см. в [method store_16]."

msgid ""
"Returns the next 32 bits from the file as an integer. This advances the file "
"cursor by 4 bytes. See [method store_32] for details on what values can be "
"stored and retrieved this way."
msgstr ""
"Возвращает следующие 32 бита из файла в виде целого числа. Это перемещает "
"курсор файла на 4 байта вперёд. Подробнее о том, какие значения можно "
"сохранять и извлекать таким способом, см. в [method store_32]."

msgid ""
"Returns the next 64 bits from the file as an integer. This advances the file "
"cursor by 8 bytes. See [method store_64] for details on what values can be "
"stored and retrieved this way."
msgstr ""
"Возвращает следующие 64 бита из файла в виде целого числа. Это перемещает "
"курсор файла на 8 байт. Подробнее о том, какие значения можно сохранять и "
"извлекать таким способом, см. в [method store_64]."

msgid ""
"Returns the last time the [param file] was accessed in Unix timestamp format, "
"or [code]0[/code] on error. This Unix timestamp can be converted to another "
"format using the [Time] singleton."
msgstr ""
"Возвращает время последнего доступа к [param file] в формате временной метки "
"Unix или [code]0[/code] при ошибке. Эту временную метку Unix можно "
"преобразовать в другой формат с помощью синглтона [Time]."

msgid ""
"Returns the whole file as a [String]. Text is interpreted as being UTF-8 "
"encoded. This ignores the file cursor and does not affect it.\n"
"If [param skip_cr] is [code]true[/code], carriage return characters ([code]"
"\\r[/code], CR) will be ignored when parsing the UTF-8, so that only line "
"feed characters ([code]\\n[/code], LF) represent a new line (Unix convention)."
msgstr ""
"Возвращает весь файл как [String]. Текст интерпретируется как текст в "
"кодировке UTF-8. При этом файловый курсор игнорируется и не влияет на него.\n"
"Если [param skip_cr] равен [code]true[/code], символы возврата каретки ([code]"
"\\r[/code], CR) будут игнорироваться при анализе UTF-8, поэтому только "
"символы перевода строки ([code]\\n[/code], LF) будут представлять новую "
"строку (согласно соглашениям Unix)."

msgid ""
"Returns next [param length] bytes of the file as a [PackedByteArray]. This "
"advances the file cursor by [param length] bytes."
msgstr ""
"Возвращает следующие [param length] байтов файла в виде [PackedByteArray]. "
"Это перемещает курсор файла на [param length] байтов."

msgid ""
"Returns the next value of the file in CSV (Comma-Separated Values) format. "
"You can pass a different delimiter [param delim] to use other than the "
"default [code]\",\"[/code] (comma). This delimiter must be one-character "
"long, and cannot be a double quotation mark.\n"
"Text is interpreted as being UTF-8 encoded. Text values must be enclosed in "
"double quotes if they include the delimiter character. Double quotes within a "
"text value can be escaped by doubling their occurrence. This advances the "
"file cursor to after the newline character at the end of the line.\n"
"For example, the following CSV lines are valid and will be properly parsed as "
"two strings each:\n"
"[codeblock lang=text]\n"
"Alice,\"Hello, Bob!\"\n"
"Bob,Alice! What a surprise!\n"
"Alice,\"I thought you'd reply with \"\"Hello, world\"\".\"\n"
"[/codeblock]\n"
"Note how the second line can omit the enclosing quotes as it does not include "
"the delimiter. However it [i]could[/i] very well use quotes, it was only "
"written without for demonstration purposes. The third line must use [code]"
"\"\"[/code] for each quotation mark that needs to be interpreted as such "
"instead of the end of a text value."
msgstr ""
"Возвращает следующее значение файла в формате CSV (значения, разделенные "
"запятыми). Вы можете указать другой разделитель [param delim], отличный от "
"используемого по умолчанию [code]\",\"[/code] (запятая). Этот разделитель "
"должен быть длиной в один символ и не может быть двойными кавычками.\n"
"Текст интерпретируется как текст в кодировке UTF-8. Текстовые значения должны "
"быть заключены в двойные кавычки, если они содержат символ-разделитель. "
"Двойные кавычки в текстовом значении можно экранировать, удваивая их "
"вхождение. Это переместит курсор файла на позицию после символа новой строки "
"в конце строки.\n"
"Например, следующие строки CSV-файла являются допустимыми и будут корректно "
"обработаны как две строки каждая:\n"
"[codeblock lang=text]\n"
"Alice,\"Hello, Bob!\"\n"
"Bob,Alice! What a surprise!\n"
"Alice,\"I thought you'd reply with \"\"Hello, world\"\".\"\n"
"[/codeblock]\n"
"Обратите внимание, что во второй строке можно опустить кавычки, поскольку она "
"не содержит разделителя. Однако [i]можно[/i] использовать кавычки, поскольку "
"код был написан без них только в демонстрационных целях. В третьей строке "
"необходимо использовать [code]\"\"[/code] для каждой кавычки, которая должна "
"интерпретироваться как таковая, а не как конец текстового значения."

msgid ""
"Returns the next 64 bits from the file as a floating-point number. This "
"advances the file cursor by 8 bytes."
msgstr ""
"Возвращает следующие 64 бита файла в виде числа с плавающей запятой. Это "
"перемещает курсор файла на 8 байт."

msgid ""
"Returns the last error that happened when trying to perform operations. "
"Compare with the [code]ERR_FILE_*[/code] constants from [enum Error]."
msgstr ""
"Возвращает последнюю ошибку, которая произошла при попытке выполнить "
"операции. Сравните с константами [code]ERR_FILE_*[/code] из [enum Error]."

msgid ""
"Returns the whole [param path] file contents as a [PackedByteArray] without "
"any decoding.\n"
"Returns an empty [PackedByteArray] if an error occurred while opening the "
"file. You can use [method get_open_error] to check the error that occurred."
msgstr ""
"Возвращает все содержимое файла [param path] как [PackedByteArray] без какого-"
"либо декодирования. \n"
"Возвращает пустой [PackedByteArray], если при открытии файла произошла "
"ошибка. Вы можете использовать [method get_open_error], чтобы проверить "
"возникшую ошибку."

msgid ""
"Returns the whole [param path] file contents as a [String]. Text is "
"interpreted as being UTF-8 encoded.\n"
"Returns an empty [String] if an error occurred while opening the file. You "
"can use [method get_open_error] to check the error that occurred."
msgstr ""
"Возвращает все содержимое файла [param path] как [String]. Текст "
"интерпретируется как закодированный в UTF-8.\n"
"Возвращает пустую [String], если при открытии файла произошла ошибка. Вы "
"можете использовать [method get_open_error], чтобы проверить произошедшую "
"ошибку."

msgid ""
"Returns the next 32 bits from the file as a floating-point number. This "
"advances the file cursor by 4 bytes."
msgstr ""
"Возвращает следующие 32 бита файла в виде числа с плавающей запятой. Это "
"перемещает курсор файла на 4 байта вперёд."

msgid ""
"Returns the next 16 bits from the file as a half-precision floating-point "
"number. This advances the file cursor by 2 bytes."
msgstr ""
"Возвращает следующие 16 бит из файла как число с плавающей запятой половинной "
"точности. Это перемещает курсор файла на 2 байта вперёд."

msgid ""
"Returns [code]true[/code], if file [code]hidden[/code] attribute is set.\n"
"[b]Note:[/b] This method is implemented on iOS, BSD, macOS, and Windows."
msgstr ""
"Возвращает [code]true[/code], если установлен атрибут файла [code]hidden[/"
"code].\n"
"[b]Примечание:[/b] Этот метод реализован в iOS, BSD, macOS и Windows."

msgid ""
"Returns the size of the file in bytes. For a pipe, returns the number of "
"bytes available for reading from the pipe."
msgstr ""
"Возвращает размер файла в байтах. Для канала возвращает количество байтов, "
"доступных для чтения из канала."

msgid ""
"Returns the next line of the file as a [String]. The returned string doesn't "
"include newline ([code]\\n[/code]) or carriage return ([code]\\r[/code]) "
"characters, but does include any other leading or trailing whitespace. This "
"advances the file cursor to after the newline character at the end of the "
"line.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
"Возвращает следующую строку файла как [String]. Возвращаемая строка не "
"содержит символов перевода строки ([code]\\n[/code]) или возврата каретки "
"([code]\\r[/code]), но содержит любые другие начальные или конечные пробелы. "
"Это перемещает файловый курсор в положение после символа перевода строки в "
"конце строки.\n"
"Текст интерпретируется как текст в кодировке UTF-8."

msgid ""
"Returns an MD5 String representing the file at the given path or an empty "
"[String] on failure."
msgstr ""
"Возвращает строку MD5, представляющую файл по указанному пути, или пустую "
"[String] в случае возникновения ошибки."

msgid ""
"Returns the last time the [param file] was modified in Unix timestamp format, "
"or [code]0[/code] on error. This Unix timestamp can be converted to another "
"format using the [Time] singleton."
msgstr ""
"Возвращает время последнего изменения [param file] в формате временной метки "
"Unix или [code]0[/code] в случае ошибки. Эту временную метку Unix можно "
"преобразовать в другой формат с помощью синглтона [Time]."

msgid ""
"Returns a [String] saved in Pascal format from the file, meaning that the "
"length of the string is explicitly stored at the start. See [method "
"store_pascal_string]. This may include newline characters. The file cursor is "
"advanced after the bytes read.\n"
"Text is interpreted as being UTF-8 encoded."
msgstr ""
"Возвращает [String], сохранённую в формате Pascal из файла. Это означает, что "
"длина строки явно сохраняется в начале. См. [method store_pascal_string]. Она "
"может включать символы новой строки. Курсор файла перемещается после "
"считывания байтов.\n"
"Текст интерпретируется как имеющий кодировку UTF-8."

msgid "Returns the path as a [String] for the current open file."
msgstr "Возвращает путь в виде [String] для текущего открытого файла."

msgid "Returns the absolute path as a [String] for the current open file."
msgstr ""
"Возвращает абсолютный путь в виде [String] для текущего открытого файла."

msgid ""
"Returns the file cursor's position in bytes from the beginning of the file. "
"This is the file reading/writing cursor set by [method seek] or [method "
"seek_end] and advanced by read/write operations."
msgstr ""
"Возвращает позицию файлового курсора в байтах от начала файла. Это файловый "
"курсор чтения/записи, установленный методом [method seek] или [method "
"seek_end] и перемещаемый операциями чтения/записи."

msgid ""
"Returns [code]true[/code], if file [code]read only[/code] attribute is set.\n"
"[b]Note:[/b] This method is implemented on iOS, BSD, macOS, and Windows."
msgstr ""
"Возвращает [code]true[/code], если установлен атрибут файла [code]read only[/"
"code].\n"
"[b]Примечание:[/b] Этот метод реализован в iOS, BSD, macOS и Windows."

msgid ""
"Returns the next bits from the file as a floating-point number. This advances "
"the file cursor by either 4 or 8 bytes, depending on the precision used by "
"the Godot build that saved the file.\n"
"If the file was saved by a Godot build compiled with the "
"[code]precision=single[/code] option (the default), the number of read bits "
"for that file is 32. Otherwise, if compiled with the [code]precision=double[/"
"code] option, the number of read bits is 64."
msgstr ""
"Возвращает следующие биты из файла в виде числа с плавающей точкой. Это "
"перемещает файловый курсор на 4 или 8 байтов, в зависимости от точности, "
"используемой сборкой Godot, сохранившей файл.\n"
"Если файл был сохранён сборкой Godot, скомпилированной с опцией "
"[code]precision=single[/code] (по умолчанию), количество считанных битов для "
"этого файла равно 32. В противном случае, если файл скомпилирован с опцией "
"[code]precision=double[/code], количество считанных битов равно 64."

msgid ""
"Returns an SHA-256 [String] representing the file at the given path or an "
"empty [String] on failure."
msgstr ""
"Возвращает SHA-256 [String], представляющую файл по указанному пути, или "
"пустую [String] в случае возникновения ошибки."

msgid "Returns file size in bytes, or [code]-1[/code] on error."
msgstr "Возвращает размер файла в байтах или [code]-1[/code] в случае ошибки."

msgid ""
"Returns file UNIX permissions.\n"
"[b]Note:[/b] This method is implemented on iOS, Linux/BSD, and macOS."
msgstr ""
"Возвращает разрешения UNIX для файла.\n"
"[b]Примечание:[/b] Этот метод реализован в iOS, Linux/BSD и macOS."

msgid ""
"Returns the next [Variant] value from the file. If [param allow_objects] is "
"[code]true[/code], decoding objects is allowed. This advances the file cursor "
"by the number of bytes read.\n"
"Internally, this uses the same decoding mechanism as the [method "
"@GlobalScope.bytes_to_var] method, as described in the [url=$DOCS_URL/"
"tutorials/io/binary_serialization_api.html]Binary serialization API[/url] "
"documentation.\n"
"[b]Warning:[/b] Deserialized objects can contain code which gets executed. Do "
"not use this option if the serialized object comes from untrusted sources to "
"avoid potential security threats such as remote code execution."
msgstr ""
"Возвращает следующее значение [Variant] из файла. Если [param allow_objects] "
"равен [code]true[/code], декодирование объектов разрешено. Это перемещает "
"файловый курсор на количество прочитанных байтов.\n"
"Внутри используется тот же механизм декодирования, что и метод [method "
"@GlobalScope.bytes_to_var], описанный в документации [url=$DOCS_URL/tutorials/"
"io/binary_serialization_api.html]API двоичной сериализации[/url].\n"
"[b]Предупреждение:[/b] Десериализованные объекты могут содержать код, который "
"будет выполнен. Не используйте этот параметр, если сериализованный объект "
"получен из ненадежных источников, чтобы избежать потенциальных угроз "
"безопасности, таких как удалённое выполнение кода."

msgid "Returns [code]true[/code] if the file is currently opened."
msgstr "Возвращает [code]true[/code], если файл в данный момент открыт."

msgid ""
"Creates a new [FileAccess] object and opens the file for writing or reading, "
"depending on the flags.\n"
"Returns [code]null[/code] if opening the file failed. You can use [method "
"get_open_error] to check the error that occurred."
msgstr ""
"Создает новый объект [FileAccess] и открывает файл для записи или чтения в "
"зависимости от флагов. \n"
"Возвращает [code]null[/code], если открытие файла не удалось. Вы можете "
"использовать [method get_open_error], чтобы проверить возникшую ошибку."

msgid ""
"Creates a new [FileAccess] object and opens a compressed file for reading or "
"writing.\n"
"[b]Note:[/b] [method open_compressed] can only read files that were saved by "
"Godot, not third-party compression formats. See [url=https://github.com/"
"godotengine/godot/issues/28999]GitHub issue #28999[/url] for a workaround.\n"
"Returns [code]null[/code] if opening the file failed. You can use [method "
"get_open_error] to check the error that occurred."
msgstr ""
"Создает новый объект [FileAccess] и открывает сжатый файл для чтения или "
"записи.\n"
"[b]Примечание:[/b] [method open_compressed] может читать только файлы, "
"сохраненные Godot, а не сторонние форматы сжатия. См. [url=https://github.com/"
"godotengine/godot/issues/28999]проблему GitHub № 28999[/url] для обходного "
"пути.\n"
"Возвращает [code]null[/code], если открытие файла не удалось. Вы можете "
"использовать [method get_open_error], чтобы проверить возникшую ошибку."

msgid ""
"Creates a new [FileAccess] object and opens an encrypted file in write or "
"read mode. You need to pass a binary key to encrypt/decrypt it.\n"
"[b]Note:[/b] The provided key must be 32 bytes long.\n"
"Returns [code]null[/code] if opening the file failed. You can use [method "
"get_open_error] to check the error that occurred."
msgstr ""
"Создает новый объект [FileAccess] и открывает зашифрованный файл в режиме "
"записи или чтения. Вам необходимо передать двоичный ключ для его шифрования/"
"расшифровки.\n"
"[b]Примечание:[/b] Предоставленный ключ должен быть длиной 32 байта.\n"
"Возвращает [code]null[/code], если открытие файла не удалось. Вы можете "
"использовать [method get_open_error], чтобы проверить возникшую ошибку."

msgid ""
"Creates a new [FileAccess] object and opens an encrypted file in write or "
"read mode. You need to pass a password to encrypt/decrypt it.\n"
"Returns [code]null[/code] if opening the file failed. You can use [method "
"get_open_error] to check the error that occurred."
msgstr ""
"Создает новый объект [FileAccess] и открывает зашифрованный файл в режиме "
"записи или чтения. Вам необходимо передать пароль для его шифрования/"
"расшифровки.\n"
"Возвращает [code]null[/code], если открытие файла не удалось. Вы можете "
"использовать [method get_open_error], чтобы проверить возникшую ошибку."

msgid ""
"Resizes the file to a specified length. The file must be open in a mode that "
"permits writing. If the file is extended, NUL characters are appended. If the "
"file is truncated, all data from the end file to the original length of the "
"file is lost."
msgstr ""
"Изменяет размер файла до указанной длины. Файл должен быть открыт в режиме, "
"разрешающем запись. Если файл расширен, добавляются символы NUL. Если файл "
"усечен, все данные от конечного файла до исходной длины файла теряются."

msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the beginning of the file). This changes the value returned by [method "
"get_position]."
msgstr ""
"Изменяет курсор чтения/записи файла на указанную позицию (в байтах от начала "
"файла). Это изменяет значение, возвращаемое методом [method get_position]."

msgid ""
"Changes the file reading/writing cursor to the specified position (in bytes "
"from the end of the file). This changes the value returned by [method "
"get_position].\n"
"[b]Note:[/b] This is an offset, so you should use negative numbers or the "
"file cursor will be at the end of the file."
msgstr ""
"Изменяет курсор чтения/записи файла на указанную позицию (в байтах от конца "
"файла). Это изменяет значение, возвращаемое методом [method get_position].\n"
"[b]Примечание:[/b] Это смещение, поэтому следует использовать отрицательные "
"числа, иначе курсор файла окажется в конце файла."

msgid ""
"Sets file [b]hidden[/b] attribute.\n"
"[b]Note:[/b] This method is implemented on iOS, BSD, macOS, and Windows."
msgstr ""
"Устанавливает атрибут файла [b]hidden[/b].\n"
"[b]Примечание:[/b] Этот метод реализован в iOS, BSD, macOS и Windows."

msgid ""
"Sets file [b]read only[/b] attribute.\n"
"[b]Note:[/b] This method is implemented on iOS, BSD, macOS, and Windows."
msgstr ""
"Устанавливает атрибут файла [b]read only[/b].\n"
"[b]Примечание:[/b] Этот метод реализован в iOS, BSD, macOS и Windows."

msgid ""
"Sets file UNIX permissions.\n"
"[b]Note:[/b] This method is implemented on iOS, Linux/BSD, and macOS."
msgstr ""
"Устанавливает права доступа UNIX к файлам.\n"
"[b]Примечание:[/b] Этот метод реализован в iOS, Linux/BSD и macOS."

msgid ""
"Stores an integer as 8 bits in the file. This advances the file cursor by 1 "
"byte. Returns [code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] The [param value] should lie in the interval [code][0, 255][/"
"code]. Any other value will overflow and wrap around.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate.\n"
"To store a signed integer, use [method store_64], or convert it manually (see "
"[method store_16] for an example)."
msgstr ""
"Сохраняет целое число в файле в виде 8 бит. Это перемещает курсор файла на 1 "
"байт. Возвращает [code]true[/code] в случае успешного выполнения операции.\n"
"[b]Примечание:[/b] Значение [param value] должно находиться в интервале [code]"
"[0, 255][/code]. Любое другое значение приведёт к переполнению и циклическому "
"переносу.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено.\n"
"Чтобы сохранить знаковое целое число, используйте [method store_64] или "
"преобразуйте его вручную (см. пример в [method store_16])."

msgid ""
"Stores an integer as 16 bits in the file. This advances the file cursor by 2 "
"bytes. Returns [code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] The [param value] should lie in the interval [code][0, 2^16 - 1]"
"[/code]. Any other value will overflow and wrap around.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate.\n"
"To store a signed integer, use [method store_64] or store a signed integer "
"from the interval [code][-2^15, 2^15 - 1][/code] (i.e. keeping one bit for "
"the signedness) and compute its sign manually when reading. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"const MAX_15B = 1 << 15\n"
"const MAX_16B = 1 << 16\n"
"\n"
"func unsigned16_to_signed(unsigned):\n"
"\treturn (unsigned + MAX_15B) % MAX_16B - MAX_15B\n"
"\n"
"func _ready():\n"
"\tvar f = FileAccess.open(\"user://file.dat\", FileAccess.WRITE_READ)\n"
"\tf.store_16(-42) # This wraps around and stores 65494 (2^16 - 42).\n"
"\tf.store_16(121) # In bounds, will store 121.\n"
"\tf.seek(0) # Go back to start to read the stored value.\n"
"\tvar read1 = f.get_16() # 65494\n"
"\tvar read2 = f.get_16() # 121\n"
"\tvar converted1 = unsigned16_to_signed(read1) # -42\n"
"\tvar converted2 = unsigned16_to_signed(read2) # 121\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tusing var f = FileAccess.Open(\"user://file.dat\", "
"FileAccess.ModeFlags.WriteRead);\n"
"\tf.Store16(unchecked((ushort)-42)); // This wraps around and stores 65494 "
"(2^16 - 42).\n"
"\tf.Store16(121); // In bounds, will store 121.\n"
"\tf.Seek(0); // Go back to start to read the stored value.\n"
"\tushort read1 = f.Get16(); // 65494\n"
"\tushort read2 = f.Get16(); // 121\n"
"\tshort converted1 = (short)read1; // -42\n"
"\tshort converted2 = (short)read2; // 121\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Сохраняет целое число в файле в виде 16 бит. Это перемещает файловый курсор "
"на 2 байта вперёд. Возвращает [code]true[/code] в случае успешного выполнения "
"операции.\n"
"[b]Примечание:[/b] Значение [param value] должно находиться в интервале [code]"
"[0, 2^16 - 1][/code]. Любое другое значение приведёт к переполнению и "
"циклическому переносу.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено.\n"
"Для сохранения знакового целого числа используйте [method store_64] или "
"сохраните знаковое целое число из интервала [code][-2^15, 2^15 - 1][/code] "
"(т.е. сохранив один бит для знака) и вручную вычисляйте его знак при чтении. "
"Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"const MAX_15B = 1 << 15\n"
"const MAX_16B = 1 << 16\n"
"\n"
"func unsigned16_to_signed(unsigned):\n"
"\treturn (unsigned + MAX_15B) % MAX_16B - MAX_15B\n"
"\n"
"func _ready():\n"
"\tvar f = FileAccess.open(\"user://file.dat\", FileAccess.WRITE_READ)\n"
"\tf.store_16(-42) # Это округляет и сохраняет 65494 (2^16 - 42).\n"
"\tf.store_16(121) # В пределах границ будет храниться 121.\n"
"\tf.seek(0) # Вернитесь в начало, чтобы прочитать сохраненное значение.\n"
"\tvar read1 = f.get_16() # 65494\n"
"\tvar read2 = f.get_16() # 121\n"
"\tvar converted1 = unsigned16_to_signed(read1) # -42\n"
"\tvar converted2 = unsigned16_to_signed(read2) # 121\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tusing var f = FileAccess.Open(\"user://file.dat\", "
"FileAccess.ModeFlags.WriteRead);\n"
"\tf.Store16(unchecked((ushort)-42)); // Это округляет и сохраняет 65494 (2^16 "
"- 42).\n"
"\tf.Store16(121); // В пределах границ будет храниться 121.\n"
"\tf.Seek(0); // Вернитесь в начало, чтобы прочитать сохраненное значение.\n"
"\tushort read1 = f.Get16(); // 65494\n"
"\tushort read2 = f.Get16(); // 121\n"
"\tshort converted1 = (short)read1; // -42\n"
"\tshort converted2 = (short)read2; // 121\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Stores an integer as 32 bits in the file. This advances the file cursor by 4 "
"bytes. Returns [code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] The [param value] should lie in the interval [code][0, 2^32 - 1]"
"[/code]. Any other value will overflow and wrap around.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate.\n"
"To store a signed integer, use [method store_64], or convert it manually (see "
"[method store_16] for an example)."
msgstr ""
"Сохраняет целое число в файле в виде 32 бит. Это перемещает файловый курсор "
"на 4 байта. Возвращает [code]true[/code] в случае успешного выполнения "
"операции.\n"
"[b]Примечание:[/b] Значение [param value] должно находиться в интервале [code]"
"[0, 2^32 - 1][/code]. Любое другое значение приведёт к переполнению и "
"циклическому переносу.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено.\n"
"Чтобы сохранить знаковое целое число, используйте [method store_64] или "
"преобразуйте его вручную (см. пример в [method store_16])."

msgid ""
"Stores an integer as 64 bits in the file. This advances the file cursor by 8 "
"bytes. Returns [code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] The [param value] must lie in the interval [code][-2^63, 2^63 - "
"1][/code] (i.e. be a valid [int] value).\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраняет целое число в файле в виде 64 бит. Это перемещает файловый курсор "
"на 8 байт. Возвращает [code]true[/code] в случае успешного выполнения "
"операции.\n"
"[b]Примечание:[/b] Значение [param value] должно находиться в интервале [code]"
"[-2^63, 2^63 - 1][/code] (т.е. быть допустимым значением [int]).\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено."

msgid ""
"Stores the given array of bytes in the file. This advances the file cursor by "
"the number of bytes written. Returns [code]true[/code] if the operation is "
"successful.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраняет заданный массив байтов в файле. Это перемещает файловый курсор на "
"количество записанных байтов. Возвращает [code]true[/code] в случае успешного "
"выполнения операции.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено."

msgid ""
"Store the given [PackedStringArray] in the file as a line formatted in the "
"CSV (Comma-Separated Values) format. You can pass a different delimiter "
"[param delim] to use other than the default [code]\",\"[/code] (comma). This "
"delimiter must be one-character long.\n"
"Text will be encoded as UTF-8. Returns [code]true[/code] if the operation is "
"successful.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраните заданный [PackedStringArray] в файле как строку, отформатированную "
"в формате CSV (значения, разделенные запятыми). Вы можете передать другой "
"разделитель [param delim], отличный от используемого по умолчанию [code]\","
"\"[/code] (запятая). Этот разделитель должен быть длиной в один символ.\n"
"Текст будет закодирован в формате UTF-8. Возвращает [code]true[/code] в "
"случае успешного выполнения операции.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено."

msgid ""
"Stores a floating-point number as 64 bits in the file. This advances the file "
"cursor by 8 bytes. Returns [code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраняет число с плавающей запятой в файле в виде 64 бит. Это перемещает "
"файловый курсор на 8 байт. Возвращает [code]true[/code] в случае успешного "
"выполнения операции.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено."

msgid ""
"Stores a floating-point number as 32 bits in the file. This advances the file "
"cursor by 4 bytes. Returns [code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраняет число с плавающей запятой в файле в виде 32 бит. Это перемещает "
"файловый курсор на 4 байта. Возвращает [code]true[/code] в случае успешного "
"выполнения операции.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено."

msgid ""
"Stores a half-precision floating-point number as 16 bits in the file. This "
"advances the file cursor by 2 bytes. Returns [code]true[/code] if the "
"operation is successful.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраняет в файле число с плавающей запятой половинной точности (half-"
"precision) в виде 16 бит. Это перемещает файловый курсор на 2 байта. "
"Возвращает [code]true[/code] в случае успешного выполнения операции.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено."

msgid ""
"Stores [param line] in the file followed by a newline character ([code]\\n[/"
"code]), encoding the text as UTF-8. This advances the file cursor by the "
"length of the line, after the newline character. The amount of bytes written "
"depends on the UTF-8 encoded bytes, which may be different from [method "
"String.length] which counts the number of UTF-32 codepoints. Returns "
"[code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраняет в файле [param line], за которым следует символ новой строки ([code]"
"\\n[/code]), кодируя текст в формате UTF-8. Это перемещает файловый курсор на "
"длину строки после символа новой строки. Количество записанных байтов зависит "
"от количества байтов в кодировке UTF-8, которое может отличаться от [method "
"String.length], который подсчитывает количество кодовых точек UTF-32. "
"Возвращает [code]true[/code] в случае успешного выполнения операции.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено."

msgid ""
"Stores the given [String] as a line in the file in Pascal format (i.e. also "
"store the length of the string). Text will be encoded as UTF-8. This advances "
"the file cursor by the number of bytes written depending on the UTF-8 encoded "
"bytes, which may be different from [method String.length] which counts the "
"number of UTF-32 codepoints. Returns [code]true[/code] if the operation is "
"successful.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраняет заданную [String] как строку в файле в формате Pascal (т.е. также "
"сохраняет длину строки). Текст будет закодирован в UTF-8. Это перемещает "
"файловый курсор на количество записанных байтов в зависимости от кодировки "
"UTF-8, которая может отличаться от [method String.length], который "
"подсчитывает количество кодовых точек UTF-32. Возвращает [code]true[/code] в "
"случае успешного выполнения операции.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено."

msgid ""
"Stores a floating-point number in the file. This advances the file cursor by "
"either 4 or 8 bytes, depending on the precision used by the current Godot "
"build.\n"
"If using a Godot build compiled with the [code]precision=single[/code] option "
"(the default), this method will save a 32-bit float. Otherwise, if compiled "
"with the [code]precision=double[/code] option, this will save a 64-bit float. "
"Returns [code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраняет число с плавающей точкой в файле. Это перемещает файловый курсор на "
"4 или 8 байтов, в зависимости от точности, используемой текущей сборкой "
"Godot.\n"
"Если используется сборка Godot, скомпилированная с опцией "
"[code]precision=single[/code] (по умолчанию), этот метод сохранит 32-битное "
"число с плавающей точкой. В противном случае, если скомпилировано с опцией "
"[code]precision=double[/code], этот метод сохранит 64-битное число с "
"плавающей точкой. Возвращает [code]true[/code] в случае успешного выполнения "
"операции.\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено."

msgid ""
"Stores [param string] in the file without a newline character ([code]\\n[/"
"code]), encoding the text as UTF-8. This advances the file cursor by the "
"length of the string in UTF-8 encoded bytes, which may be different from "
"[method String.length] which counts the number of UTF-32 codepoints. Returns "
"[code]true[/code] if the operation is successful.\n"
"[b]Note:[/b] This method is intended to be used to write text files. The "
"string is stored as a UTF-8 encoded buffer without string length or "
"terminating zero, which means that it can't be loaded back easily. If you "
"want to store a retrievable string in a binary file, consider using [method "
"store_pascal_string] instead. For retrieving strings from a text file, you "
"can use [code]get_buffer(length).get_string_from_utf8()[/code] (if you know "
"the length) or [method get_as_text].\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраняет [param string] в файле без символа новой строки ([code]\\n[/code]), "
"кодируя текст в формате UTF-8. Это перемещает курсор файла на длину строки в "
"байтах в кодировке UTF-8, которая может отличаться от [method String.length], "
"который подсчитывает количество кодовых точек UTF-32. Возвращает [code]true[/"
"code] в случае успешного выполнения операции.\n"
"[b]Примечание:[/b] Этот метод предназначен для записи текстовых файлов. "
"Строка хранится в виде буфера в кодировке UTF-8 без указания длины строки и "
"завершающего нуля, что затрудняет её обратную загрузку. Если вы хотите "
"сохранить извлекаемую строку в двоичном файле, рассмотрите возможность "
"использования [method store_pascal_string]. Для извлечения строк из "
"текстового файла можно использовать метод "
"[code]get_buffer(length).get_string_from_utf8()[/code] (если известна длина) "
"или [method get_as_text].\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора позиции "
"файла не определено."

msgid ""
"Stores any Variant value in the file. If [param full_objects] is [code]true[/"
"code], encoding objects is allowed (and can potentially include code). This "
"advances the file cursor by the number of bytes written. Returns [code]true[/"
"code] if the operation is successful.\n"
"Internally, this uses the same encoding mechanism as the [method "
"@GlobalScope.var_to_bytes] method, as described in the [url=$DOCS_URL/"
"tutorials/io/binary_serialization_api.html]Binary serialization API[/url] "
"documentation.\n"
"[b]Note:[/b] Not all properties are included. Only properties that are "
"configured with the [constant PROPERTY_USAGE_STORAGE] flag set will be "
"serialized. You can add a new usage flag to a property by overriding the "
"[method Object._get_property_list] method in your class. You can also check "
"how property usage is configured by calling [method "
"Object._get_property_list]. See [enum PropertyUsageFlags] for the possible "
"usage flags.\n"
"[b]Note:[/b] If an error occurs, the resulting value of the file position "
"indicator is indeterminate."
msgstr ""
"Сохраняет любое значение Variant в файле. Если [param full_objects] равен "
"[code]true[/code], кодирование объектов разрешено (и потенциально может "
"включать код). Это перемещает курсор файла на количество записанных байтов. "
"Возвращает [code]true[/code] в случае успешного выполнения операции.\n"
"Внутри используется тот же механизм кодирования, что и метод [method "
"@GlobalScope.var_to_bytes], как описано в документации [url=$DOCS_URL/"
"tutorials/io/binary_serialization_api.html]API двоичной сериализации[/url].\n"
"[b]Примечание:[/b] Включены не все свойства. Сериализуются только свойства, "
"настроенные с установленным флагом [constant PROPERTY_USAGE_STORAGE]. Вы "
"можете добавить новый флаг использования к свойству, переопределив метод "
"[method Object._get_property_list] в вашем классе. Вы также можете проверить, "
"как настроено использование свойств, вызвав [method "
"Object._get_property_list]. Возможные флаги использования см. в [enum "
"PropertyUsageFlags].\n"
"[b]Примечание:[/b] В случае ошибки результирующее значение индикатора "
"положения файла не определено."

msgid ""
"If [code]true[/code], the file is read with big-endian [url=https://"
"en.wikipedia.org/wiki/Endianness]endianness[/url]. If [code]false[/code], the "
"file is read with little-endian endianness. If in doubt, leave this to "
"[code]false[/code] as most files are written with little-endian endianness.\n"
"[b]Note:[/b] This is always reset to system endianness, which is little-"
"endian on all supported platforms, whenever you open the file. Therefore, you "
"must set [member big_endian] [i]after[/i] opening the file, not before."
msgstr ""
"Если [code]true[/code], файл читается с big-endian [url=https://"
"en.wikipedia.org/wiki/Endianness]порядком байтов[/url]. Если [code]false[/"
"code], файл читается с little-endian порядком байтов. Если сомневаетесь, "
"оставьте это [code]false[/code], так как большинство файлов записываются с "
"little-endian порядком байтов.\n"
"[b]Примечание:[/b] Это всегда сбрасывается на системный порядок байтов, "
"который является little-endian на всех поддерживаемых платформах, всякий раз, "
"когда вы открываете файл. Поэтому вы должны установить [member big_endian] "
"[i]после[/i] открытия файла, а не до."

msgid ""
"Opens the file for read operations. The file cursor is positioned at the "
"beginning of the file."
msgstr "Открывает файл для чтения. Курсор файла устанавливается в начало файла."

msgid ""
"Opens the file for write operations. The file is created if it does not "
"exist, and truncated if it does.\n"
"[b]Note:[/b] When creating a file it must be in an already existing "
"directory. To recursively create directories for a file path, see [method "
"DirAccess.make_dir_recursive]."
msgstr ""
"Открывает файл для операций записи. Файл создается, если он не существует, и "
"усекается, если существует.\n"
"[b]Примечание:[/b] При создании файла он должен находиться в уже существующем "
"каталоге. Чтобы рекурсивно создать каталоги для пути к файлу, см. [method "
"DirAccess.make_dir_recursive]."

msgid ""
"Opens the file for read and write operations. Does not truncate the file. The "
"file cursor is positioned at the beginning of the file."
msgstr ""
"Открывает файл для чтения и записи. Не обрезает файл. Курсор файла "
"устанавливается в начало файла."

msgid ""
"Opens the file for read and write operations. The file is created if it does "
"not exist, and truncated if it does. The file cursor is positioned at the "
"beginning of the file.\n"
"[b]Note:[/b] When creating a file it must be in an already existing "
"directory. To recursively create directories for a file path, see [method "
"DirAccess.make_dir_recursive]."
msgstr ""
"Открывает файл для чтения и записи. Файл создаётся, если он не существует, и "
"усекается, если существует. Файловый курсор устанавливается в начало файла.\n"
"[b]Примечание:[/b] При создании файла он должен находиться в уже существующем "
"каталоге. Чтобы рекурсивно создать каталоги для пути к файлу, см. [method "
"DirAccess.make_dir_recursive]."

msgid "Uses the [url=https://fastlz.org/]FastLZ[/url] compression method."
msgstr "Использует метод сжатия [url=https://fastlz.org/]FastLZ[/url]."

msgid ""
"Uses the [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/url] compression "
"method."
msgstr ""
"Использует метод сжатия [url=https://en.wikipedia.org/wiki/DEFLATE]DEFLATE[/"
"url]."

msgid ""
"Uses the [url=https://facebook.github.io/zstd/]Zstandard[/url] compression "
"method."
msgstr ""
"Использует метод сжатия [url=https://facebook.github.io/zstd/]Zstandard[/url]."

msgid "Uses the [url=https://www.gzip.org/]gzip[/url] compression method."
msgstr "Использует метод сжатия [url=https://www.gzip.org/]gzip[/url]."

msgid ""
"Uses the [url=https://github.com/google/brotli]brotli[/url] compression "
"method (only decompression is supported)."
msgstr ""
"Использует метод сжатия [url=https://github.com/google/brotli]brotli[/url] "
"(поддерживается только распаковка)."

msgid "Read for owner bit."
msgstr "Прочитайте информацию о владельце."

msgid "Write for owner bit."
msgstr "Напишите для владельца бита."

msgid "Execute for owner bit."
msgstr "Выполнить для владельца бита."

msgid "Read for group bit."
msgstr "Прочитайте для группового бита."

msgid "Write for group bit."
msgstr "Пишите для группового бита."

msgid "Execute for group bit."
msgstr "Выполнить для группового бита."

msgid "Read for other bit."
msgstr "Прочтите другой бит."

msgid "Write for other bit."
msgstr "Напишите для другого бита."

msgid "Execute for other bit."
msgstr "Выполнить для другого бита."

msgid "Set user id on execution bit."
msgstr "Установить идентификатор пользователя при выполнении бита."

msgid "Set group id on execution bit."
msgstr "Установить идентификатор группы при выполнении бита."

msgid "Restricted deletion (sticky) bit."
msgstr "Бит ограниченного удаления (прикрепленный)."

msgid "A dialog for selecting files or directories in the filesystem."
msgstr "Диалоговое окно для выбора файлов или каталогов в файловой системе."

msgid ""
"[FileDialog] is a preset dialog used to choose files and directories in the "
"filesystem. It supports filter masks. [FileDialog] automatically sets its "
"window title according to the [member file_mode]. If you want to use a custom "
"title, disable this by setting [member mode_overrides_title] to [code]false[/"
"code]."
msgstr ""
"[FileDialog] — это предустановленный диалог, используемый для выбора файлов и "
"каталогов в файловой системе. Он поддерживает маски фильтров. [FileDialog] "
"автоматически устанавливает заголовок окна в соответствии с [member "
"file_mode]. Если вы хотите использовать пользовательский заголовок, отключите "
"его, установив [member mode_overrides_title] на [code]false[/code]."

msgid ""
"Adds a comma-separated file name [param filter] option to the [FileDialog] "
"with an optional [param description], which restricts what files can be "
"picked.\n"
"A [param filter] should be of the form [code]\"filename.extension\"[/code], "
"where filename and extension can be [code]*[/code] to match any string. "
"Filters starting with [code].[/code] (i.e. empty filenames) are not allowed.\n"
"For example, a [param filter] of [code]\"*.png, *.jpg\"[/code] and a [param "
"description] of [code]\"Images\"[/code] results in filter text \"Images "
"(*.png, *.jpg)\"."
msgstr ""
"Добавляет параметр [param filter] с именем файла, разделённым запятыми, в "
"[FileDialog] с необязательным параметром [param description], который "
"ограничивает выбор файлов.\n"
"[param filter] должен иметь вид [code]\"имя_файла.расширение\"[/code], где "
"имя_файла и расширение могут быть представлены в виде [code]*[/code] для "
"соответствия любой строке. Фильтры, начинающиеся с [code].[/code] (т.е. "
"пустые имена файлов), не допускаются.\n"
"Например, [param filter] со значением [code]\"*.png, *.jpg\"[/code] и [param "
"description] со значением [code]\"Изображения\"[/code] приведут к появлению "
"текста фильтра \"Изображения (*.png, *.jpg)\"."

msgid "Clear all the added filters in the dialog."
msgstr "Очистите все добавленные фильтры в диалоговом окне."

msgid "Clear all currently selected items in the dialog."
msgstr "Очистить все выбранные элементы в диалоговом окне."

msgid ""
"Returns the vertical box container of the dialog, custom controls can be "
"added to it.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property.\n"
"[b]Note:[/b] Changes to this node are ignored by native file dialogs, use "
"[method add_option] to add custom elements to the dialog instead."
msgstr ""
"Возвращает вертикальный контейнер диалога, в него можно добавлять "
"пользовательские элементы управления.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member CanvasItem.visible].\n"
"[b]Примечание:[/b] Изменения этого узла игнорируются собственными файловыми "
"диалогами, используйте [method add_option] для добавления пользовательских "
"элементов в диалог."

msgid ""
"Invalidate and update the current dialog content list.\n"
"[b]Note:[/b] This method does nothing on native file dialogs."
msgstr ""
"Отменить и обновить текущий список содержимого диалога.\n"
"[b]Примечание:[/b] Этот метод ничего не делает в собственных файловых "
"диалогах."

msgid "Returns [code]true[/code] if the provided [param flag] is enabled."
msgstr "Возвращает [code]true[/code], если указанный [param flag] включен."

msgid ""
"Toggles the specified customization [param flag], allowing to customize "
"features available in this [FileDialog]. See [enum Customization] for options."
msgstr ""
"Включает/выключает указанную настройку [param flag], позволяя настраивать "
"функции, доступные в этом [FileDialog]. См. [enum Customization] для "
"получения информации о параметрах."

msgid ""
"The file system access scope.\n"
"[b]Warning:[/b] In Web builds, FileDialog cannot access the host file system. "
"In sandboxed Linux and macOS environments, [member use_native_dialog] is "
"automatically used to allow limited access to host file system."
msgstr ""
"Область доступа к файловой системе.\n"
"[b]Предупреждение:[/b] В веб-сборках FileDialog не может получить доступ к "
"файловой системе хоста. В изолированных средах Linux и macOS [member "
"use_native_dialog] автоматически используется для разрешения ограниченного "
"доступа к файловой системе хоста."

msgid ""
"The current working directory of the file dialog.\n"
"[b]Note:[/b] For native file dialogs, this property is only treated as a hint "
"and may not be respected by specific OS implementations."
msgstr ""
"Текущий рабочий каталог диалога файлов.\n"
"[b]Примечание:[/b] Для собственных диалогов файлов это свойство "
"рассматривается только как подсказка и может не учитываться определенными "
"реализациями ОС."

msgid "The currently selected file of the file dialog."
msgstr "Текущий выбранный файл в диалоговом окне."

msgid "The currently selected file path of the file dialog."
msgstr "Текущий выбранный путь к файлу в диалоговом окне."

msgid "Display mode of the dialog's file list."
msgstr "Режим отображения списка файлов диалога."

msgid ""
"If [code]true[/code], shows the toggle favorite button and favorite list on "
"the left side of the dialog."
msgstr ""
"Если [code]true[/code], то на левой стороне диалогового окна отображаются "
"кнопка переключения избранного и список избранного."

msgid "If [code]true[/code], shows the toggle file filter button."
msgstr ""
"Если [code]true[/code], отображается кнопка переключения фильтра файлов."

msgid "If [code]true[/code], shows the file sorting options button."
msgstr "Если [code]true[/code], показывает кнопку параметров сортировки файлов."

msgid ""
"The filter for file names (case-insensitive). When set to a non-empty string, "
"only files that contains the substring will be shown. [member "
"filename_filter] can be edited by the user with the filter button at the top "
"of the file dialog.\n"
"See also [member filters], which should be used to restrict the file types "
"that can be selected instead of [member filename_filter] which is meant to be "
"set by the user."
msgstr ""
"Фильтр для имен файлов (без учета регистра). Если задана непустая строка, "
"будут показаны только файлы, содержащие подстроку. [member filename_filter] "
"может редактироваться пользователем с помощью кнопки фильтра в верхней части "
"диалогового окна файла.\n"
"См. также [member filters], которые следует использовать для ограничения "
"типов файлов, которые можно выбрать, вместо [member filename_filter], который "
"должен устанавливаться пользователем."

msgid ""
"The available file type filters. Each filter string in the array should be "
"formatted like this: [code]*.png,*.jpg,*.jpeg;Image Files;image/png,image/"
"jpeg[/code]. The description text of the filter is optional and can be "
"omitted. Both file extensions and MIME type should be always set.\n"
"[b]Note:[/b] Embedded file dialog and Windows file dialog support only file "
"extensions, while Android, Linux, and macOS file dialogs also support MIME "
"types."
msgstr ""
"Доступные фильтры типов файлов. Каждая строка фильтра в массиве должна быть "
"отформатирована следующим образом:[code]*.png,*.jpg,*.jpeg;Image Files;image/"
"png,image/jpeg[/code]. Текст описания фильтра необязателен и может быть "
"опущен. Всегда следует устанавливать как расширения файлов, так и тип MIME.\n"
"[b]Примечание:[/b] Встроенный файловый диалог и файловый диалог Windows "
"поддерживают только расширения файлов, тогда как файловые диалоги Android, "
"Linux и macOS также поддерживают типы MIME."

msgid ""
"If [code]true[/code], shows the button for creating new directories (when "
"using [constant FILE_MODE_OPEN_DIR], [constant FILE_MODE_OPEN_ANY], or "
"[constant FILE_MODE_SAVE_FILE])."
msgstr ""
"Если [code]true[/code], показывает кнопку для создания новых каталогов (при "
"использовании [constant FILE_MODE_OPEN_DIR], [constant FILE_MODE_OPEN_ANY] "
"или [constant FILE_MODE_SAVE_FILE])."

msgid "If [code]true[/code], shows the toggle hidden files button."
msgstr ""
"Если [code]true[/code], отображается кнопка переключения скрытых файлов."

msgid "If [code]true[/code], shows the layout switch buttons (list/thumbnails)."
msgstr ""
"Если [code]true[/code], отображаются кнопки переключения макета (список/"
"миниатюры)."

msgid ""
"If [code]true[/code], changing the [member file_mode] property will set the "
"window title accordingly (e.g. setting [member file_mode] to [constant "
"FILE_MODE_OPEN_FILE] will change the window title to \"Open a File\")."
msgstr ""
"Если [code]true[/code], изменение свойства [member file_mode] соответствующим "
"образом установит заголовок окна (например, установка [member file_mode] на "
"[constant FILE_MODE_OPEN_FILE] изменит заголовок окна на «Открыть файл»)."

msgid ""
"If [code]true[/code], shows the recent directories list on the left side of "
"the dialog."
msgstr ""
"Если [code]true[/code], отображает список последних каталогов в левой части "
"диалогового окна."

msgid ""
"If non-empty, the given sub-folder will be \"root\" of this [FileDialog], "
"i.e. user won't be able to go to its parent directory.\n"
"[b]Note:[/b] This property is ignored by native file dialogs."
msgstr ""
"Если не пусто, указанная подпапка будет «корневой» для этого [FileDialog], т. "
"е. пользователь не сможет перейти в ее родительский каталог.\n"
"[b]Примечание:[/b] Это свойство игнорируется для собственных файловых "
"диалогов."

msgid ""
"If [code]true[/code], the dialog will show hidden files.\n"
"[b]Note:[/b] This property is ignored by native file dialogs on Android and "
"Linux."
msgstr ""
"Если [code]true[/code], диалоговое окно покажет скрытые файлы.\n"
"[b]Примечание:[/b] Это свойство игнорируется собственными диалоговыми окнами "
"файлов на Android и Linux."

msgid ""
"If [code]true[/code], and if supported by the current [DisplayServer], OS "
"native dialog will be used instead of custom one.\n"
"[b]Note:[/b] On Android, it is only supported for Android 10+ devices and "
"when using [constant ACCESS_FILESYSTEM]. For access mode [constant "
"ACCESS_RESOURCES] and [constant ACCESS_USERDATA], the system will fall back "
"to custom FileDialog.\n"
"[b]Note:[/b] On Linux and macOS, sandboxed apps always use native dialogs to "
"access the host file system.\n"
"[b]Note:[/b] On macOS, sandboxed apps will save security-scoped bookmarks to "
"retain access to the opened folders across multiple sessions. Use [method "
"OS.get_granted_permissions] to get a list of saved bookmarks.\n"
"[b]Note:[/b] Native dialogs are isolated from the base process, file dialog "
"properties can't be modified once the dialog is shown."
msgstr ""
"Если [code]true[/code] и поддерживается текущим [DisplayServer], вместо "
"пользовательского диалогового окна будет использоваться нативное диалоговое "
"окно ОС.\n"
"[b]Примечание:[/b] На Android это поддерживается только для устройств Android "
"10+ и при использовании [constant ACCESS_FILESYSTEM]. Для режима доступа "
"[constant ACCESS_RESOURCES] и [constant ACCESS_USERDATA] система перейдет к "
"пользовательскому диалоговому окну FileDialog.\n"
"[b]Примечание:[/b] В Linux и macOS изолированные приложения всегда используют "
"нативные диалоговые окна для доступа к файловой системе хоста.\n"
"[b]Примечание:[/b] В macOS изолированные приложения сохраняют закладки с "
"областью безопасности, чтобы сохранить доступ к открытым папкам в течение "
"нескольких сеансов. Используйте [method OS.get_granted_permissions] для "
"получения списка сохранённых закладок.\n"
"[b]Примечание:[/b] Собственные диалоги изолированы от базового процесса, "
"свойства диалога файла не могут быть изменены после отображения диалога."

msgid "Emitted when the user selects a directory."
msgstr "Выдается, когда пользователь выбирает каталог."

msgid ""
"Emitted when the user selects a file by double-clicking it or pressing the "
"[b]OK[/b] button."
msgstr ""
"Генерируется, когда пользователь выбирает файл двойным щелчком или нажимает "
"кнопку [b]ОК[/b]."

msgid "Emitted when the user selects multiple files."
msgstr "Выдается, когда пользователь выбирает несколько файлов."

msgid "The dialog allows selecting one, and only one file."
msgstr "Диалоговое окно позволяет выбрать один и только один файл."

msgid "The dialog allows selecting multiple files."
msgstr "Диалоговое окно позволяет выбрать несколько файлов."

msgid ""
"The dialog only allows selecting a directory, disallowing the selection of "
"any file."
msgstr "В диалоговом окне можно выбрать только каталог, но не файл."

msgid "The dialog allows selecting one file or directory."
msgstr "Диалог позволяет выбрать один файл или каталог."

msgid "The dialog will warn when a file exists."
msgstr "Диалоговое окно выдаст предупреждение, если файл уже существует."

msgid ""
"The dialog only allows accessing files under the [Resource] path ([code]res://"
"[/code])."
msgstr ""
"Диалоговое окно позволяет получить доступ только к файлам, находящимся по "
"пути [Resource] ([code]res://[/code])."

msgid ""
"The dialog only allows accessing files under user data path ([code]user://[/"
"code])."
msgstr ""
"Диалоговое окно позволяет получить доступ только к файлам, находящимся по "
"пути к данным пользователя ([code]user://[/code])."

msgid "The dialog allows accessing files on the whole file system."
msgstr ""
"Диалоговое окно позволяет получить доступ к файлам во всей файловой системе."

msgid ""
"The dialog displays files as a grid of thumbnails. Use [theme_item "
"thumbnail_size] to adjust their size."
msgstr ""
"Диалог отображает файлы в виде сетки миниатюр. Используйте [theme_item "
"thumbnail_size] для настройки их размера."

msgid "The dialog displays files as a list of filenames."
msgstr "В диалоговом окне файлы отображаются в виде списка имен файлов."

msgid ""
"Toggles visibility of the favorite button, and the favorite list on the left "
"side of the dialog.\n"
"Equivalent to [member hidden_files_toggle_enabled]."
msgstr ""
"Включает/выключает видимость кнопки «Избранное» и списка избранного в левой "
"части диалогового окна.\n"
"Эквивалентно [member hidden_files_toggle_enabled]."

msgid ""
"If enabled, shows the button for creating new directories (when using "
"[constant FILE_MODE_OPEN_DIR], [constant FILE_MODE_OPEN_ANY], or [constant "
"FILE_MODE_SAVE_FILE]).\n"
"Equivalent to [member folder_creation_enabled]."
msgstr ""
"Если включено, отображает кнопку для создания новых каталогов (при "
"использовании [constant FILE_MODE_OPEN_DIR], [constant FILE_MODE_OPEN_ANY] "
"или [constant FILE_MODE_SAVE_FILE]).\n"
"Эквивалентно [member folder_creation_enabled]."

msgid ""
"If enabled, shows the toggle file filter button.\n"
"Equivalent to [member file_filter_toggle_enabled]."
msgstr ""
"Если включено, отображается кнопка переключения фильтра файлов.\n"
"Эквивалентно [member file_filter_toggle_enabled]."

msgid ""
"If enabled, shows the file sorting options button.\n"
"Equivalent to [member file_sort_options_enabled]."
msgstr ""
"Если включено, отображает кнопку параметров сортировки файлов.\n"
"Эквивалентно [member file_sort_options_enabled]."

msgid ""
"If enabled, shows the toggle favorite button and favorite list on the left "
"side of the dialog.\n"
"Equivalent to [member favorites_enabled]."
msgstr ""
"Если включено, в левой части диалогового окна отображается кнопка "
"переключения избранного и список избранного.\n"
"Эквивалентно [member favorites_enabled]."

msgid ""
"If enabled, shows the recent directories list on the left side of the "
"dialog.\n"
"Equivalent to [member recent_list_enabled]."
msgstr ""
"Если включено, отображает список последних каталогов в левой части "
"диалогового окна.\n"
"Эквивалентно [member recent_list_enabled]."

msgid ""
"If enabled, shows the layout switch buttons (list/thumbnails).\n"
"Equivalent to [member layout_toggle_enabled]."
msgstr ""
"Если включено, отображаются кнопки переключения макета (список/миниатюры).\n"
"Эквивалентно [member layout_toggle_enabled]."

msgid ""
"The color tint for disabled files (when the [FileDialog] is used in open "
"folder mode)."
msgstr ""
"Цветовой оттенок для отключенных файлов (когда [FileDialog] используется в "
"режиме открытой папки)."

msgid "The color modulation applied to the file icon."
msgstr "Цветовая модуляция, примененная к значку файла."

msgid "The color modulation applied to the folder icon."
msgstr "Цветовая модуляция, примененная к значку папки."

msgid ""
"The size of thumbnail icons when [constant DISPLAY_THUMBNAILS] is enabled."
msgstr ""
"Размер миниатюрных значков, когда включен [constant DISPLAY_THUMBNAILS]."

msgid "Custom icon for the back arrow."
msgstr "Пользовательский значок для стрелки «назад»."

msgid "Custom icon for the create folder button."
msgstr "Пользовательский значок для кнопки создания папки."

msgid "Custom icon for favorite folder button."
msgstr "Пользовательский значок для кнопки избранной папки."

msgid "Custom icon for button to move down a favorite entry."
msgstr ""
"Пользовательский значок для кнопки перемещения вниз по избранной записи."

msgid "Custom icon for button to move up a favorite entry."
msgstr "Пользовательский значок для кнопки перемещения избранной записи вверх."

msgid "Custom icon for files."
msgstr "Пользовательский значок для файлов."

msgid "Icon for files when in thumbnail mode."
msgstr "Значок для файлов в режиме миниатюр."

msgid "Custom icon for folders."
msgstr "Пользовательский значок для папок."

msgid "Icon for folders when in thumbnail mode."
msgstr "Значок для папок в режиме миниатюр."

msgid "Custom icon for the forward arrow."
msgstr "Пользовательский значок для стрелки \"вперед\"."

msgid "Icon for the button that enables list mode."
msgstr "Значок кнопки, включающей режим списка."

msgid "Custom icon for the parent folder arrow."
msgstr "Пользовательский значок для стрелки родительской папки."

msgid "Custom icon for the reload button."
msgstr "Пользовательский значок для кнопки \"Обновить\"."

msgid "Custom icon for the sorting options menu."
msgstr "Пользовательский значок для меню параметров сортировки."

msgid "Icon for the button that enables thumbnail mode."
msgstr "Значок кнопки, включающей режим миниатюр."

msgid "Custom icon for the toggle button for the filter for file names."
msgstr "Пользовательский значок для переключателя фильтра по именам файлов."

msgid "Custom icon for the toggle hidden button."
msgstr "Пользовательский значок для кнопки переключения скрытой информации."

msgid "Godot editor's dock for managing files in the project."
msgstr "Панель редактора Godot для управления файлами в проекте."

msgid ""
"This class is available only in [EditorPlugin]s and can't be instantiated. "
"You can access it using [method EditorInterface.get_file_system_dock].\n"
"While [FileSystemDock] doesn't expose any methods for file manipulation, it "
"can listen for various file-related signals."
msgstr ""
"Этот класс доступен только в [EditorPlugin] и не может быть инстанцирован. Вы "
"можете получить к нему доступ с помощью [method "
"EditorInterface.get_file_system_dock].\n"
"Хотя [FileSystemDock] не предоставляет никаких методов для манипуляции "
"файлами, он может прослушивать различные сигналы, связанные с файлами."

msgid "Registers a new [EditorResourceTooltipPlugin]."
msgstr "Регистрирует новый [EditorResourceTooltipPlugin]."

msgid ""
"Sets the given [param path] as currently selected, ensuring that the selected "
"file/directory is visible."
msgstr ""
"Устанавливает указанный [param path] как текущий выбранный, гарантируя, что "
"выбранный файл/каталог будет виден."

msgid ""
"Removes an [EditorResourceTooltipPlugin]. Fails if the plugin wasn't "
"previously added."
msgstr ""
"Удаляет [EditorResourceTooltipPlugin]. Не выполняется, если плагин не был "
"добавлен ранее."

msgid "Emitted when the user switches file display mode or split mode."
msgstr ""
"Выдается, когда пользователь переключает режим отображения файла или режим "
"разделения."

msgid "Emitted when the given [param file] was removed."
msgstr "Выдается при удалении указанного [param file]."

msgid ""
"Emitted when a file is moved from [param old_file] path to [param new_file] "
"path."
msgstr ""
"Выдается при перемещении файла из пути [param old_file] в путь [param "
"new_file]."

msgid "Emitted when folders change color."
msgstr "Издается при изменении цвета папок."

msgid ""
"Emitted when a folder is moved from [param old_folder] path to [param "
"new_folder] path."
msgstr ""
"Выдается при перемещении папки из пути [param old_folder] в путь [param "
"new_folder]."

msgid "Emitted when the given [param folder] was removed."
msgstr "Выдается при удалении указанной [param folder]."

msgid ""
"Emitted when a new scene is created that inherits the scene at [param file] "
"path."
msgstr ""
"Выдается при создании новой сцены, которая наследует сцену по пути [param "
"file]."

msgid "Emitted when the given scenes are being instantiated in the editor."
msgstr "Генерируется, когда указанные сцены создаются в редакторе."

msgid "Emitted when an external [param resource] had its file removed."
msgstr "Генерируется при удалении файла внешнего [param resource]."

msgid "A built-in type for floating-point numbers."
msgstr "Встроенный тип для чисел с плавающей точкой."

msgid ""
"The [float] built-in type is a 64-bit double-precision floating-point number, "
"equivalent to [code]double[/code] in C++. This type has 14 reliable decimal "
"digits of precision. The maximum value of [float] is approximately "
"[code]1.79769e308[/code], and the minimum is approximately "
"[code]-1.79769e308[/code].\n"
"Many methods and properties in the engine use 32-bit single-precision "
"floating-point numbers instead, equivalent to [code skip-lint]float[/code] in "
"C++, which have 6 reliable decimal digits of precision. For data structures "
"such as [Vector2] and [Vector3], Godot uses 32-bit floating-point numbers by "
"default, but it can be changed to use 64-bit doubles if Godot is compiled "
"with the [code]precision=double[/code] option.\n"
"Math done using the [float] type is not guaranteed to be exact and will often "
"result in small errors. You should usually use the [method "
"@GlobalScope.is_equal_approx] and [method @GlobalScope.is_zero_approx] "
"methods instead of [code]==[/code] to compare [float] values for equality."
msgstr ""
"Встроенный тип [float] — это 64-битное число с плавающей точкой двойной "
"точности, эквивалентное [code]double[/code] в C++. Этот тип имеет 14 надежных "
"десятичных знаков точности. Максимальное значение [float] составляет "
"приблизительно [code]1.79769e308[/code], а минимальное — приблизительно "
"[code]-1.79769e308[/code].\n"
"Многие методы и свойства в движке используют вместо этого 32-битные числа с "
"плавающей точкой одинарной точности, эквивалентные [code skip-lint]float[/"
"code] в C++, которые имеют 6 надежных десятичных знаков точности. Для "
"структур данных, таких как [Vector2] и [Vector3], Godot по умолчанию "
"использует 32-битные числа с плавающей точкой, но их можно изменить на "
"использование 64-битных чисел двойной точности, если Godot скомпилирован с "
"опцией [code]precision=double[/code].\n"
"Математические вычисления, выполненные с использованием типа [float], не "
"гарантируют точности и часто приводят к небольшим ошибкам. Обычно следует "
"использовать методы [method @GlobalScope.is_equal_approx] и [method "
"@GlobalScope.is_zero_approx] вместо [code]==[/code] для сравнения значений "
"[float] на равенство."

msgid "Wikipedia: Double-precision floating-point format"
msgstr "Википедия: Формат чисел с плавающей точкой двойной точности"

msgid "Wikipedia: Single-precision floating-point format"
msgstr "Википедия: Формат чисел с плавающей точкой одинарной точности"

msgid "Constructs a default-initialized [float] set to [code]0.0[/code]."
msgstr ""
"Создает инициализированное по умолчанию [float], установленное на [code]0.0[/"
"code]."

msgid "Constructs a [float] as a copy of the given [float]."
msgstr "Создает [float] как копию заданного [float]."

msgid ""
"Converts a [String] to a [float], following the same rules as [method "
"String.to_float]."
msgstr ""
"Преобразует [String] в [float], следуя тем же правилам, что и [method "
"String.to_float]."

msgid ""
"Cast a [bool] value to a floating-point value, [code]float(true)[/code] will "
"be equal to 1.0 and [code]float(false)[/code] will be equal to 0.0."
msgstr ""
"Приведите значение [bool] к значению с плавающей точкой, [code]float(true)[/"
"code] будет равно 1,0, а [code]float(false)[/code] будет равно 0,0."

msgid ""
"Cast an [int] value to a floating-point value, [code]float(1)[/code] will be "
"equal to [code]1.0[/code]."
msgstr ""
"Приведите значение [int] к значению с плавающей точкой, [code]float(1)[/code] "
"будет равно [code]1.0[/code]."

msgid ""
"Returns [code]true[/code] if two floats are different from each other.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Возвращает [code]true[/code], если два числа с плавающей точкой отличаются "
"друг от друга.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого оператора могут быть неточными, если включены "
"NaN."

msgid ""
"Returns [code]true[/code] if the integer has different value than the float."
msgstr ""
"Возвращает [code]true[/code], если целое число имеет значение, отличное от "
"плавающего."

msgid ""
"Multiplies each component of the [Color], including the alpha, by the given "
"[float].\n"
"[codeblock]\n"
"print(1.5 * Color(0.5, 0.5, 0.5)) # Prints (0.75, 0.75, 0.75, 1.5)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Color], включая альфа, на заданный [float].\n"
"[codeblock]\n"
"print(1.5 * Color(0.5, 0.5, 0.5)) # Prints (0.75, 0.75, 0.75, 1.5)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Quaternion] by the given [float]. This "
"operation is not meaningful on its own, but it can be used as a part of a "
"larger expression."
msgstr ""
"Умножает каждый компонент [Quaternion] на заданный [float]. Эта операция сама "
"по себе не имеет смысла, но ее можно использовать как часть большего "
"выражения."

msgid ""
"Multiplies each component of the [Vector2] by the given [float].\n"
"[codeblock]\n"
"print(2.5 * Vector2(1, 3)) # Prints (2.5, 7.5)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector2] на заданный [float].\n"
"[codeblock]\n"
"print(2.5 * Vector2(1, 3)) # Prints (2.5, 7.5)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector2i] by the given [float]. Returns a "
"[Vector2].\n"
"[codeblock]\n"
"print(0.9 * Vector2i(10, 15)) # Prints (9.0, 13.5)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector2i] на заданный [float]. Возвращает "
"[Vector2].\n"
"[codeblock]\n"
"print(0.9 * Vector2i(10, 15)) # Prints (9.0, 13.5)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector3] by the given [float]."
msgstr "Умножает каждый компонент [Vector3] на заданное [float]."

msgid ""
"Multiplies each component of the [Vector3i] by the given [float]. Returns a "
"[Vector3].\n"
"[codeblock]\n"
"print(0.9 * Vector3i(10, 15, 20)) # Prints (9.0, 13.5, 18.0)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector3i] на заданный [float]. Возвращает "
"[Vector3].\n"
"[codeblock]\n"
"print(0.9 * Vector3i(10, 15, 20)) # Prints (9.0, 13.5, 18.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector4] by the given [float]."
msgstr "Умножает каждый компонент [Vector4] на заданное [float]."

msgid ""
"Multiplies each component of the [Vector4i] by the given [float]. Returns a "
"[Vector4].\n"
"[codeblock]\n"
"print(0.9 * Vector4i(10, 15, 20, -10)) # Prints (9.0, 13.5, 18.0, -9.0)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector4i] на заданный [float]. Возвращает "
"[Vector4].\n"
"[codeblock]\n"
"print(0.9 * Vector4i(10, 15, 20, -10)) # Prints (9.0, 13.5, 18.0, -9.0)\n"
"[/codeblock]"

msgid "Multiplies two [float]s."
msgstr "Умножает два числа [float]."

msgid "Multiplies a [float] and an [int]. The result is a [float]."
msgstr "Умножает [float] и [int]. Результат — [float]."

msgid ""
"Raises a [float] to a power of a [float].\n"
"[codeblock]\n"
"print(39.0625**0.25) # 2.5\n"
"[/codeblock]"
msgstr ""
"Возводит [float] в степень [float].\n"
"[codeblock]\n"
"print(39.0625**0.25) # 2.5\n"
"[/codeblock]"

msgid ""
"Raises a [float] to a power of an [int]. The result is a [float].\n"
"[codeblock]\n"
"print(0.9**3) # 0.729\n"
"[/codeblock]"
msgstr ""
"Возводит [float] в степень [int]. Результат — [float].\n"
"[codeblock]\n"
"print(0.9**3) # 0.729\n"
"[/codeblock]"

msgid "Adds two floats."
msgstr "Складывает два float'а."

msgid "Adds a [float] and an [int]. The result is a [float]."
msgstr "Складывает [float] и [int]. Результат — [float]."

msgid "Subtracts a float from a float."
msgstr "Вычитает число с плавающей точкой из числа с плавающей точкой."

msgid "Subtracts an [int] from a [float]. The result is a [float]."
msgstr "Вычитает [int] из [float]. Результат — [float]."

msgid "Divides two floats."
msgstr "Делит два числа с плавающей точкой."

msgid "Divides a [float] by an [int]. The result is a [float]."
msgstr "Делит [float] на [int]. Результат — [float]."

msgid ""
"Returns [code]true[/code] if the left float is less than the right one.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Возвращает [code]true[/code], если левое число с плавающей точкой меньше "
"правого.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого оператора могут быть неточными, если включены "
"NaN."

msgid "Returns [code]true[/code] if this [float] is less than the given [int]."
msgstr "Возвращает [code]true[/code], если это [float] меньше указанного [int]."

msgid ""
"Returns [code]true[/code] if the left float is less than or equal to the "
"right one.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Возвращает [code]true[/code], если левое число с плавающей точкой меньше или "
"равно правому.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого оператора могут быть неточными, если включены "
"NaN."

msgid ""
"Returns [code]true[/code] if this [float] is less than or equal to the given "
"[int]."
msgstr ""
"Возвращает [code]true[/code], если это [float] меньше или равно заданному "
"[int]."

msgid ""
"Returns [code]true[/code] if both floats are exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"@GlobalScope.is_equal_approx] or [method @GlobalScope.is_zero_approx] "
"instead, which are more reliable.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Возвращает [code]true[/code], если оба числа с плавающей точкой в точности "
"равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности чисел с плавающей точкой рассмотрите "
"возможность использования [method @GlobalScope.is_equal_approx] или [method "
"@GlobalScope.is_zero_approx] вместо этого, которые более надежны.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого оператора могут быть неточными, если включены "
"NaN."

msgid "Returns [code]true[/code] if the [float] and the given [int] are equal."
msgstr "Возвращает [code]true[/code], если [float] и заданное [int] равны."

msgid ""
"Returns [code]true[/code] if the left float is greater than the right one.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Возвращает [code]true[/code], если левое число с плавающей точкой больше "
"правого.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого оператора могут быть неточными, если включены "
"NaN."

msgid ""
"Returns [code]true[/code] if this [float] is greater than the given [int]."
msgstr "Возвращает [code]true[/code], если это [float] больше указанного [int]."

msgid ""
"Returns [code]true[/code] if the left float is greater than or equal to the "
"right one.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this operator may not be accurate if "
"NaNs are included."
msgstr ""
"Возвращает [code]true[/code], если левое число с плавающей точкой больше или "
"равно правому.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого оператора могут быть неточными, если включены "
"NaN."

msgid ""
"Returns [code]true[/code] if this [float] is greater than or equal to the "
"given [int]."
msgstr ""
"Возвращает [code]true[/code], если это [float] больше или равно заданному "
"[int]."

msgid ""
"Returns the negative value of the [float]. If positive, turns the number "
"negative. If negative, turns the number positive. With floats, the number "
"zero can be either positive or negative."
msgstr ""
"Возвращает отрицательное значение [float]. Если положительное, делает число "
"отрицательным. Если отрицательное, делает число положительным. С float число "
"ноль может быть как положительным, так и отрицательным."

msgid ""
"A container that arranges its child controls horizontally or vertically and "
"wraps them around at the borders."
msgstr ""
"Контейнер, который располагает свои дочерние элементы управления "
"горизонтально или вертикально и оборачивает их по границам."

msgid ""
"A container that arranges its child controls horizontally or vertically and "
"wraps them around at the borders. This is similar to how text in a book wraps "
"around when no more words can fit on a line."
msgstr ""
"Контейнер, который размещает свои дочерние элементы управления горизонтально "
"или вертикально и оборачивает их вокруг границ. Это похоже на то, как текст в "
"книге оборачивается, когда больше слов не помещается на строке."

msgid "Returns the current line count."
msgstr "Возвращает текущее количество строк."

msgid ""
"The wrap behavior of the last, partially filled row or column (must be one of "
"[constant LAST_WRAP_ALIGNMENT_INHERIT], [constant LAST_WRAP_ALIGNMENT_BEGIN], "
"[constant LAST_WRAP_ALIGNMENT_CENTER], or [constant LAST_WRAP_ALIGNMENT_END])."
msgstr ""
"Поведение переноса последней, частично заполненной строки или столбца (должно "
"быть одним из [constant LAST_WRAP_ALIGNMENT_INHERIT], [constant "
"LAST_WRAP_ALIGNMENT_BEGIN], [constant LAST_WRAP_ALIGNMENT_CENTER] или "
"[constant LAST_WRAP_ALIGNMENT_END])."

msgid ""
"If [code]true[/code], reverses fill direction. Horizontal [FlowContainer]s "
"will fill rows bottom to top, vertical [FlowContainer]s will fill columns "
"right to left.\n"
"When using a vertical [FlowContainer] with a right to left [member "
"Control.layout_direction], columns will fill left to right instead."
msgstr ""
"Если [code]true[/code], меняет направление заполнения. Горизонтальные "
"[FlowContainer] будут заполнять строки снизу вверх, вертикальные "
"[FlowContainer] будут заполнять столбцы справа налево.\n"
"При использовании вертикального [FlowContainer] с [member "
"Control.layout_direction] справа налево столбцы будут заполняться слева "
"направо."

msgid ""
"If [code]true[/code], the [FlowContainer] will arrange its children "
"vertically, rather than horizontally.\n"
"Can't be changed when using [HFlowContainer] and [VFlowContainer]."
msgstr ""
"Если [code]true[/code], [FlowContainer] расположит свои дочерние элементы "
"вертикально, а не горизонтально.\n"
"Нельзя изменить при использовании [HFlowContainer] и [VFlowContainer]."

msgid ""
"The last partially filled row or column will wrap aligned to the previous row "
"or column in accordance with [member alignment]."
msgstr ""
"Последняя частично заполненная строка или столбец будут перенесены и "
"выровнены относительно предыдущей строки или столбца в соответствии с [member "
"alignment]."

msgid ""
"The last partially filled row or column will wrap aligned to the beginning of "
"the previous row or column."
msgstr ""
"Последняя частично заполненная строка или столбец будут перенесены и "
"выровнены по началу предыдущей строки или столбца."

msgid ""
"The last partially filled row or column will wrap aligned to the center of "
"the previous row or column."
msgstr ""
"Последняя частично заполненная строка или столбец будут перенесены и "
"выровнены по центру предыдущей строки или столбца."

msgid ""
"The last partially filled row or column will wrap aligned to the end of the "
"previous row or column."
msgstr ""
"Последняя частично заполненная строка или столбец будут перенесены и "
"выровнены по концу предыдущей строки или столбца."

msgid "The horizontal separation of child nodes."
msgstr "Горизонтальное разделение дочерних узлов."

msgid "The vertical separation of child nodes."
msgstr "Вертикальное разделение дочерних узлов."

msgid ""
"A material that controls how volumetric fog is rendered, to be assigned to a "
"[FogVolume]."
msgstr ""
"Материал, который управляет визуализацией объемного тумана, назначается "
"[FogVolume]."

msgid ""
"A [Material] resource that can be used by [FogVolume]s to draw volumetric "
"effects.\n"
"If you need more advanced effects, use a custom [url=$DOCS_URL/tutorials/"
"shaders/shader_reference/fog_shader.html]fog shader[/url]."
msgstr ""
"Ресурс [Material], который может использоваться [FogVolume] для рисования "
"объемных эффектов.\n"
"Если вам нужны более продвинутые эффекты, используйте пользовательский "
"[url=$DOCS_URL/tutorials/shaders/shader_reference/fog_shader.html]шейдер "
"тумана[/url]."

msgid ""
"The single-scattering [Color] of the [FogVolume]. Internally, [member albedo] "
"is converted into single-scattering, which is additively blended with other "
"[FogVolume]s and the [member Environment.volumetric_fog_albedo]."
msgstr ""
"[Color] однократного рассеяния [FogVolume]. Внутренне [member albedo] "
"преобразуется в однократное рассеяние, которое аддитивно смешивается с "
"другими [FogVolume] и [member Environment.volumetric_fog_albedo]."

msgid ""
"The density of the [FogVolume]. Denser objects are more opaque, but may "
"suffer from under-sampling artifacts that look like stripes. Negative values "
"can be used to subtract fog from other [FogVolume]s or global volumetric "
"fog.\n"
"[b]Note:[/b] Due to limited precision, [member density] values between "
"[code]-0.001[/code] and [code]0.001[/code] (exclusive) act like [code]0.0[/"
"code]. This does not apply to [member Environment.volumetric_fog_density]."
msgstr ""
"Плотность [FogVolume]. Более плотные объекты более непрозрачны, но могут "
"страдать от артефактов недостаточной выборки, которые выглядят как полосы. "
"Отрицательные значения можно использовать для вычитания тумана из других "
"[FogVolume] или глобального объемного тумана.\n"
"[b]Примечание:[/b] Из-за ограниченной точности значения [member density] "
"между [code]-0.001[/code] и [code]0.001[/code] (исключая) действуют как "
"[code]0.0[/code]. Это не относится к [member "
"Environment.volumetric_fog_density]."

msgid ""
"The 3D texture that is used to scale the [member density] of the [FogVolume]. "
"This can be used to vary fog density within the [FogVolume] with any kind of "
"static pattern. For animated effects, consider using a custom [url=$DOCS_URL/"
"tutorials/shaders/shader_reference/fog_shader.html]fog shader[/url]."
msgstr ""
"3D-текстура, которая используется для масштабирования [member density] "
"[FogVolume]. Это может использоваться для изменения плотности тумана в "
"[FogVolume] с любым видом статического узора. Для анимированных эффектов "
"рассмотрите возможность использования пользовательского [url=$DOCS_URL/"
"tutorials/shaders/shader_reference/fog_shader.html]шейдера тумана[/url]."

msgid ""
"The hardness of the edges of the [FogVolume]. A higher value will result in "
"softer edges, while a lower value will result in harder edges."
msgstr ""
"Жесткость краев [FogVolume]. Более высокое значение приведет к более мягким "
"краям, а более низкое значение приведет к более жестким краям."

msgid ""
"The [Color] of the light emitted by the [FogVolume]. Emitted light will not "
"cast light or shadows on other objects, but can be useful for modulating the "
"[Color] of the [FogVolume] independently from light sources."
msgstr ""
"[Color] света, излучаемого [FogVolume]. Излучаемый свет не будет отбрасывать "
"свет или тени на другие объекты, но может быть полезен для модуляции [Color] "
"[FogVolume] независимо от источников света."

msgid ""
"The rate by which the height-based fog decreases in density as height "
"increases in world space. A high falloff will result in a sharp transition, "
"while a low falloff will result in a smoother transition. A value of "
"[code]0.0[/code] results in uniform-density fog. The height threshold is "
"determined by the height of the associated [FogVolume]."
msgstr ""
"Скорость, с которой плотность тумана, зависящего от высоты, уменьшается по "
"мере увеличения высоты в мировом пространстве. Высокий спад приведет к "
"резкому переходу, а низкий спад приведет к более плавному переходу. Значение "
"[code]0.0[/code] приводит к туману однородной плотности. Порог высоты "
"определяется высотой соответствующего [FogVolume]."

msgid ""
"A region that contributes to the default volumetric fog from the world "
"environment."
msgstr ""
"Регион, который вносит свой вклад в объемный туман по умолчанию из мировой "
"среды."

msgid ""
"[FogVolume]s are used to add localized fog into the global volumetric fog "
"effect. [FogVolume]s can also remove volumetric fog from specific areas if "
"using a [FogMaterial] with a negative [member FogMaterial.density].\n"
"Performance of [FogVolume]s is directly related to their relative size on the "
"screen and the complexity of their attached [FogMaterial]. It is best to keep "
"[FogVolume]s relatively small and simple where possible.\n"
"[b]Note:[/b] [FogVolume]s only have a visible effect if [member "
"Environment.volumetric_fog_enabled] is [code]true[/code]. If you don't want "
"fog to be globally visible (but only within [FogVolume] nodes), set [member "
"Environment.volumetric_fog_density] to [code]0.0[/code]."
msgstr ""
"[FogVolume] используются для добавления локализованного тумана в глобальный "
"эффект объемного тумана. [FogVolume] также могут удалять объемный туман из "
"определенных областей, если использовать [FogMaterial] с отрицательным "
"[member FogMaterial.density].\n"
"Производительность [FogVolume] напрямую связана с их относительным размером "
"на экране и сложностью прикрепленного к ним [FogMaterial]. Лучше всего "
"сохранять [FogVolume] относительно небольшими и простыми, где это возможно.\n"
"[b]Примечание:[/b] [FogVolume] имеют видимый эффект, только если [member "
"Environment.volumetric_fog_enabled] равно [code]true[/code]. Если вы не "
"хотите, чтобы туман был виден глобально (но только в пределах узлов "
"[FogVolume]), установите [member Environment.volumetric_fog_density] на "
"[code]0.0[/code]."

msgid "Volumetric fog and fog volumes"
msgstr "Объемный туман и объемы тумана"

msgid ""
"The [Material] used by the [FogVolume]. Can be either a built-in "
"[FogMaterial] or a custom [ShaderMaterial]."
msgstr ""
"[Material], используемый [FogVolume]. Может быть как встроенным "
"[FogMaterial], так и пользовательским [ShaderMaterial]."

msgid ""
"The shape of the [FogVolume]. This can be set to either [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX] or [constant "
"RenderingServer.FOG_VOLUME_SHAPE_WORLD]."
msgstr ""
"Форма [FogVolume]. Может быть установлена как [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX] или [constant "
"RenderingServer.FOG_VOLUME_SHAPE_WORLD]."

msgid ""
"The size of the [FogVolume] when [member shape] is [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER] or [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX].\n"
"[b]Note:[/b] Thin fog volumes may appear to flicker when the camera moves or "
"rotates. This can be alleviated by increasing [member "
"ProjectSettings.rendering/environment/volumetric_fog/volume_depth] (at a "
"performance cost) or by decreasing [member Environment.volumetric_fog_length] "
"(at no performance cost, but at the cost of lower fog range). Alternatively, "
"the [FogVolume] can be made thicker and use a lower density in the [member "
"material].\n"
"[b]Note:[/b] If [member shape] is [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE] or [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER], the cone/cylinder will be "
"adjusted to fit within the size. Non-uniform scaling of cone/cylinder shapes "
"via the [member size] property is not supported, but you can scale the "
"[FogVolume] node instead."
msgstr ""
"Размер [FogVolume], когда [member shape] равен [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER] или [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX].\n"
"[b]Примечание:[/b] Тонкие объемы тумана могут мерцать при движении или "
"вращении камеры. Это можно устранить, увеличив [member "
"ProjectSettings.rendering/environment/volumetric_fog/volume_depth] (за счет "
"производительности) или уменьшив [member Environment.volumetric_fog_length] "
"(без потери производительности, но за счет более низкого диапазона тумана). В "
"качестве альтернативы [FogVolume] можно сделать толще и использовать меньшую "
"плотность в [member material].\n"
"[b]Примечание:[/b] Если [member shape] — [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE] или [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER], конус/цилиндр будет "
"скорректирован в соответствии с размером. Неравномерное масштабирование форм "
"конуса/цилиндра через свойство [member size] не поддерживается, но вместо "
"этого можно масштабировать узел [FogVolume]."

msgid "A container that can be expanded/collapsed."
msgstr "Контейнер, который можно развернуть/свернуть."

msgid ""
"A container that can be expanded/collapsed, with a title that can be filled "
"with controls, such as buttons.\n"
"The title can be positioned at the top or bottom of the container.\n"
"The container can be expanded or collapsed by clicking the title or by "
"pressing [code]ui_accept[/code] when focused.\n"
"Child control nodes are hidden when the container is collapsed. Ignores non-"
"control children.\n"
"Can allow grouping with other FoldableContainers, check [member "
"foldable_group] and [FoldableGroup]."
msgstr ""
"Контейнер, который можно развернуть/свернуть, с заголовком, который можно "
"заполнить элементами управления, такими как кнопки.\n"
"Заголовок можно расположить вверху или внизу контейнера.\n"
"Контейнер можно развернуть или свернуть, щелкнув заголовок или нажав "
"[code]ui_accept[/code] при фокусе.\n"
"Дочерние узлы управления скрыты, когда контейнер свернут. Игнорирует дочерние "
"элементы, не являющиеся элементами управления.\n"
"Может разрешить группировку с другими FoldableContainers, проверьте [member "
"foldable_group] и [FoldableGroup]."

msgid ""
"Adds a [Control] that will be placed next to the container's title, obscuring "
"the clickable area. Prime usage is adding [Button] nodes, but it can be any "
"[Control].\n"
"The control will be added as a child of this container and removed from "
"previous parent if necessary. The controls will be placed aligned to the "
"right, with the first added control being the leftmost one."
msgstr ""
"Добавляет [Control], который будет размещен рядом с заголовком контейнера, "
"скрывая область, доступную для нажатия. Основное использование — добавление "
"узлов [Button], но это может быть любой [Control].\n"
"Элемент управления будет добавлен как дочерний элемент этого контейнера и "
"удален из предыдущего родителя, если необходимо. Элементы управления будут "
"размещены выровненными по правому краю, причем первый добавленный элемент "
"управления будет крайним левым."

msgid "Expands the container and emits [signal folding_changed]."
msgstr "Раскрывает контейнер и испускает сигнал [signal folding_changed]."

msgid "Folds the container and emits [signal folding_changed]."
msgstr "Складывает контейнер и испускает [signal folding_changed]."

msgid ""
"Removes a [Control] added with [method add_title_bar_control]. The node is "
"not freed automatically, you need to use [method Node.queue_free]."
msgstr ""
"Удаляет [Control], добавленный с помощью [method add_title_bar_control]. Узел "
"не освобождается автоматически, необходимо использовать [method "
"Node.queue_free]."

msgid ""
"The [FoldableGroup] associated with the container. When multiple "
"[FoldableContainer] nodes share the same group, only one of them is allowed "
"to be unfolded."
msgstr ""
"[FoldableGroup], связанный с контейнером. Когда несколько узлов "
"[FoldableContainer] разделяют одну и ту же группу, только один из них может "
"быть развернут."

msgid ""
"If [code]true[/code], the container will becomes folded and will hide all its "
"children."
msgstr ""
"Если [code]true[/code], контейнер будет свернут и скроет все свои дочерние "
"элементы."

msgid ""
"Language code used for text shaping algorithms. If left empty, current locale "
"is used instead."
msgstr ""
"Код языка, используемый для алгоритмов формирования текста. Если оставить "
"пустым, вместо него будет использоваться текущая локаль."

msgid "The container's title text."
msgstr "Текст заголовка контейнера."

msgid "Title's horizontal text alignment."
msgstr "Горизонтальное выравнивание текста заголовка."

msgid "Title's position."
msgstr "Позиция заголовка."

msgid "Title text writing direction."
msgstr "Направление написания текста заголовка."

msgid ""
"Defines the behavior of the title when the text is longer than the available "
"space."
msgstr "Определяет поведение заголовка, когда текст длиннее доступного места."

msgid "Emitted when the container is folded/expanded."
msgstr "Выдается при складывании/раскладывании контейнера."

msgid "Makes the title appear at the top of the container."
msgstr "Размещает заголовок в верхней части контейнера."

msgid ""
"Makes the title appear at the bottom of the container. Also makes all "
"StyleBoxes flipped vertically."
msgstr ""
"Заставляет заголовок отображаться внизу контейнера. Также делает все "
"StyleBoxes перевернутыми по вертикали."

msgid "The title's font color when collapsed."
msgstr "Цвет шрифта заголовка в свернутом виде."

msgid "The title's font color when expanded."
msgstr "Цвет шрифта заголовка в развернутом виде."

msgid "The title's font outline color."
msgstr "Цвет контура шрифта заголовка."

msgid "The title's font hover color."
msgstr "Цвет шрифта заголовка при наведении."

msgid ""
"The horizontal separation between the title's icon and text, and between "
"title bar controls."
msgstr ""
"Горизонтальное разделение между значком заголовка и текстом, а также между "
"элементами управления строки заголовка."

msgid "The title's font outline size."
msgstr "Размер контура шрифта заголовка."

msgid "The title's font."
msgstr "Шрифт заголовка."

msgid "The title's font size."
msgstr "Размер шрифта заголовка."

msgid "The title's icon used when expanded."
msgstr "Значок заголовка, используемый при раскрытии."

msgid "The title's icon used when expanded (for bottom title)."
msgstr "Значок заголовка, используемый при раскрытии (для нижнего заголовка)."

msgid "The title's icon used when folded (for left-to-right layouts)."
msgstr ""
"Значок заголовка, используемый в сложенном виде (для макетов слева направо)."

msgid "The title's icon used when collapsed (for right-to-left layouts)."
msgstr ""
"Значок заголовка, используемый в свернутом виде (для макетов с справа налево)."

msgid ""
"Background used when [FoldableContainer] has GUI focus. The [theme_item "
"focus] [StyleBox] is displayed [i]over[/i] the base [StyleBox], so a "
"partially transparent [StyleBox] should be used to ensure the base [StyleBox] "
"remains visible. A [StyleBox] that represents an outline or an underline "
"works well for this purpose. To disable the focus visual effect, assign a "
"[StyleBoxEmpty] resource. Note that disabling the focus visual effect will "
"harm keyboard/controller navigation usability, so this is not recommended for "
"accessibility reasons."
msgstr ""
"Фон используется, когда [FoldableContainer] имеет фокус GUI. [theme_item "
"focus] [StyleBox] отображается [i]над[/i] базовым [StyleBox], поэтому следует "
"использовать частично прозрачный [StyleBox], чтобы базовый [StyleBox] "
"оставался видимым. [StyleBox], представляющий контур или подчеркивание, "
"хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, "
"назначьте ресурс [StyleBoxEmpty]. Обратите внимание, что отключение "
"визуального эффекта фокуса навредит удобству использования навигации с "
"помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям "
"доступности."

msgid "Default background for the [FoldableContainer]."
msgstr "Фон по умолчанию для [FoldableContainer]."

msgid ""
"Background used when the mouse cursor enters the title's area when collapsed."
msgstr ""
"Фон, используемый при попадании курсора мыши в область заголовка в свернутом "
"состоянии."

msgid "Default background for the [FoldableContainer]'s title when collapsed."
msgstr "Фон по умолчанию для заголовка [FoldableContainer] в свернутом виде."

msgid ""
"Background used when the mouse cursor enters the title's area when expanded."
msgstr ""
"Фон, используемый при попадании курсора мыши в область заголовка при его "
"развертывании."

msgid "Default background for the [FoldableContainer]'s title when expanded."
msgstr "Фон по умолчанию для заголовка [FoldableContainer] при раскрытии."

msgid ""
"A group of foldable containers that doesn't allow more than one container to "
"be expanded at a time."
msgstr ""
"Группа складных контейнеров, позволяющая разложить не более одного контейнера "
"одновременно."

msgid ""
"A group of [FoldableContainer]-derived nodes. Only one container can be "
"expanded at a time."
msgstr ""
"Группа узлов, производных от [FoldableContainer]. Одновременно можно "
"развернуть только один контейнер."

msgid ""
"Returns an [Array] of [FoldableContainer]s that have this as their "
"FoldableGroup (see [member FoldableContainer.foldable_group]). This is "
"equivalent to [ButtonGroup] but for FoldableContainers."
msgstr ""
"Возвращает [Array] из [FoldableContainer], которые имеют это в качестве своей "
"FoldableGroup (см. [member FoldableContainer.foldable_group]). Это "
"эквивалентно [ButtonGroup], но для FoldableContainer."

msgid "Returns the current expanded container."
msgstr "Возвращает текущий развернутый контейнер."

msgid ""
"If [code]true[/code], it is possible to fold all containers in this "
"FoldableGroup."
msgstr ""
"Если [code]true[/code], можно сложить все контейнеры в этой FoldableGroup'е."

msgid "Emitted when one of the containers of the group is expanded."
msgstr "Выдается при расширении одного из контейнеров группы."

msgid "Abstract base class for fonts and font variations."
msgstr "Абстрактный базовый класс для шрифтов и вариаций шрифтов."

msgid ""
"Abstract base class for different font types. It has methods for drawing text "
"and font character introspection."
msgstr ""
"Абстрактный базовый класс для разных типов шрифтов. Имеет методы для "
"рисования текста и интроспекции символов шрифта."

msgid ""
"Draw a single Unicode character [param char] into a canvas item using the "
"font, at a given position, with [param modulate] color. [param pos] specifies "
"the baseline, not the top. To draw from the top, [i]ascent[/i] must be added "
"to the Y axis. If [param oversampling] is greater than zero, it is used as "
"font oversampling factor, otherwise viewport oversampling settings are used.\n"
"[b]Note:[/b] Do not use this function to draw strings character by character, "
"use [method draw_string] or [TextLine] instead."
msgstr ""
"Нарисуйте один символ Unicode [param char] на элементе холста, используя "
"шрифт, в заданной позиции, с цветом [param modulate]. [param pos] указывает "
"базовую линию, а не верхнюю. Чтобы рисовать сверху, [i]ascent[/i] необходимо "
"добавить к оси Y. Если [param oversampling] больше нуля, он используется как "
"фактор передискретизации шрифта, в противном случае используются настройки "
"передискретизации области просмотра.\n"
"[b]Примечание:[/b] Не используйте эту функцию для рисования строк "
"посимвольно, используйте вместо этого [method draw_string] или [TextLine]."

msgid ""
"Draw a single Unicode character [param char] outline into a canvas item using "
"the font, at a given position, with [param modulate] color and [param size] "
"outline size. [param pos] specifies the baseline, not the top. To draw from "
"the top, [i]ascent[/i] must be added to the Y axis. If [param oversampling] "
"is greater than zero, it is used as font oversampling factor, otherwise "
"viewport oversampling settings are used.\n"
"[b]Note:[/b] Do not use this function to draw strings character by character, "
"use [method draw_string] or [TextLine] instead."
msgstr ""
"Нарисуйте контур одного символа Unicode [param char] в элементе холста, "
"используя шрифт, в заданной позиции, с цветом [param modulate] и размером "
"контура [param size]. [param pos] указывает базовую линию, а не верхнюю. "
"Чтобы рисовать сверху, [i]ascent[/i] необходимо добавить к оси Y. Если [param "
"oversampling] больше нуля, он используется как фактор передискретизации "
"шрифта, в противном случае используются настройки передискретизации области "
"просмотра.\n"
"[b]Примечание:[/b] Не используйте эту функцию для рисования строк "
"посимвольно, вместо этого используйте [method draw_string] или [TextLine]."

msgid ""
"Breaks [param text] into lines using rules specified by [param brk_flags] and "
"draws it into a canvas item using the font, at a given position, with [param "
"modulate] color, optionally clipping the width and aligning horizontally. "
"[param pos] specifies the baseline of the first line, not the top. To draw "
"from the top, [i]ascent[/i] must be added to the Y axis. If [param "
"oversampling] is greater than zero, it is used as font oversampling factor, "
"otherwise viewport oversampling settings are used.\n"
"See also [method CanvasItem.draw_multiline_string]."
msgstr ""
"Разбивает [param text] на строки, используя правила, заданные [param "
"brk_flags], и рисует его в элементе холста, используя шрифт, в заданной "
"позиции, с цветом [param modulate], опционально обрезая ширину и выравнивая "
"по горизонтали. [param pos] указывает базовую линию первой строки, а не "
"верхнюю. Чтобы рисовать сверху, [i]ascent[/i] необходимо добавить к оси Y. "
"Если [param oversampling] больше нуля, он используется как фактор "
"передискретизации шрифта, в противном случае используются настройки "
"передискретизации области просмотра.\n"
"См. также [method CanvasItem.draw_multiline_string]."

msgid ""
"Breaks [param text] to the lines using rules specified by [param brk_flags] "
"and draws text outline into a canvas item using the font, at a given "
"position, with [param modulate] color and [param size] outline size, "
"optionally clipping the width and aligning horizontally. [param pos] "
"specifies the baseline of the first line, not the top. To draw from the top, "
"[i]ascent[/i] must be added to the Y axis. If [param oversampling] is greater "
"than zero, it is used as font oversampling factor, otherwise viewport "
"oversampling settings are used.\n"
"See also [method CanvasItem.draw_multiline_string_outline]."
msgstr ""
"Разбивает [param text] на строки, используя правила, заданные [param "
"brk_flags], и рисует контур текста в элементе холста, используя шрифт, в "
"заданной позиции, с цветом [param modulate] и размером контура [param size], "
"опционально обрезая ширину и выравнивая по горизонтали. [param pos] указывает "
"базовую линию первой строки, а не верх. Чтобы рисовать сверху, [i]ascent[/i] "
"необходимо добавить к оси Y. Если [param oversampling] больше нуля, он "
"используется как фактор передискретизации шрифта, в противном случае "
"используются настройки передискретизации области просмотра.\n"
"См. также [method CanvasItem.draw_multiline_string_outline]."

msgid ""
"Draw [param text] into a canvas item using the font, at a given position, "
"with [param modulate] color, optionally clipping the width and aligning "
"horizontally. [param pos] specifies the baseline, not the top. To draw from "
"the top, [i]ascent[/i] must be added to the Y axis. If [param oversampling] "
"is greater than zero, it is used as font oversampling factor, otherwise "
"viewport oversampling settings are used.\n"
"See also [method CanvasItem.draw_string]."
msgstr ""
"Нарисуйте [param text] на элементе холста, используя шрифт, в заданной "
"позиции, с [param modulate] цветом, опционально обрезав ширину и выровняв по "
"горизонтали. [param pos] указывает базовую линию, а не верх. Чтобы рисовать "
"сверху, [i]ascent[/i] необходимо добавить к оси Y. Если [param oversampling] "
"больше нуля, он используется как фактор передискретизации шрифта, в противном "
"случае используются настройки передискретизации области просмотра.\n"
"См. также [method CanvasItem.draw_string]."

msgid ""
"Draw [param text] outline into a canvas item using the font, at a given "
"position, with [param modulate] color and [param size] outline size, "
"optionally clipping the width and aligning horizontally. [param pos] "
"specifies the baseline, not the top. To draw from the top, [i]ascent[/i] must "
"be added to the Y axis. If [param oversampling] is greater than zero, it is "
"used as font oversampling factor, otherwise viewport oversampling settings "
"are used.\n"
"See also [method CanvasItem.draw_string_outline]."
msgstr ""
"Нарисовать [param text] контур в элементе холста, используя шрифт, в заданной "
"позиции, с [param modulate] цветом и [param size] размером контура, "
"опционально обрезая ширину и выравнивая по горизонтали. [param pos] указывает "
"базовую линию, а не верх. Чтобы рисовать сверху, [i]ascent[/i] необходимо "
"добавить к оси Y. Если [param oversampling] больше нуля, он используется как "
"фактор передискретизации шрифта, в противном случае используются настройки "
"передискретизации области просмотра.\n"
"См. также [method CanvasItem.draw_string_outline]."

msgid "Returns [TextServer] RID of the font cache for specific variation."
msgstr "Возвращает [TextServer] RID кэша шрифтов для определенной вариации."

msgid ""
"Returns the average font ascent (number of pixels above the baseline).\n"
"[b]Note:[/b] Real ascent of the string is context-dependent and can be "
"significantly different from the value returned by this function. Use it only "
"as rough estimate (e.g. as the ascent of empty line)."
msgstr ""
"Возвращает средний подъем шрифта (количество пикселей над базовой линией).\n"
"[b]Примечание:[/b] Реальный подъем строки зависит от контекста и может "
"значительно отличаться от значения, возвращаемого этой функцией. Используйте "
"его только как грубую оценку (например, как подъем пустой строки)."

msgid ""
"Returns the size of a character. Does not take kerning into account.\n"
"[b]Note:[/b] Do not use this function to calculate width of the string "
"character by character, use [method get_string_size] or [TextLine] instead. "
"The height returned is the font height (see also [method get_height]) and has "
"no relation to the glyph height."
msgstr ""
"Возвращает размер символа. Не учитывает кернинг.\n"
"[b]Примечание:[/b] Не используйте эту функцию для вычисления ширины строки "
"символ за символом, вместо этого используйте [method get_string_size] или "
"[TextLine]. Возвращаемая высота — это высота шрифта (см. также [method "
"get_height]) и не имеет отношения к высоте глифа."

msgid ""
"Returns the average font descent (number of pixels below the baseline).\n"
"[b]Note:[/b] Real descent of the string is context-dependent and can be "
"significantly different from the value returned by this function. Use it only "
"as rough estimate (e.g. as the descent of empty line)."
msgstr ""
"Возвращает средний спуск шрифта (количество пикселей ниже базовой линии).\n"
"[b]Примечание:[/b] Реальный спуск строки зависит от контекста и может "
"значительно отличаться от значения, возвращаемого этой функцией. Используйте "
"его только как грубую оценку (например, как спуск пустой строки)."

msgid "Returns number of faces in the TrueType / OpenType collection."
msgstr "Возвращает количество шрифтов в коллекции TrueType / OpenType."

msgid "Returns font family name."
msgstr "Возвращает имя семейства шрифтов."

msgid ""
"Returns font stretch amount, compared to a normal width. A percentage value "
"between [code]50%[/code] and [code]200%[/code]."
msgstr ""
"Возвращает величину растяжения шрифта по сравнению с нормальной шириной. "
"Процентное значение между [code]50%[/code] и [code]200%[/code]."

msgid "Returns font style flags."
msgstr "Возвращает флаги стиля шрифта."

msgid "Returns font style name."
msgstr "Возвращает имя стиля шрифта."

msgid ""
"Returns weight (boldness) of the font. A value in the [code]100...999[/code] "
"range, normal font weight is [code]400[/code], bold font weight is [code]700[/"
"code]."
msgstr ""
"Возвращает жирность (начертание) шрифта. Значение в диапазоне "
"[code]100...999[/code], нормальный шрифт — [code]400[/code], жирный шрифт — "
"[code]700[/code]."

msgid ""
"Returns the total average font height (ascent plus descent) in pixels.\n"
"[b]Note:[/b] Real height of the string is context-dependent and can be "
"significantly different from the value returned by this function. Use it only "
"as rough estimate (e.g. as the height of empty line)."
msgstr ""
"Возвращает общую среднюю высоту шрифта (подъем плюс спуск) в пикселях.\n"
"[b]Примечание:[/b] Реальная высота строки зависит от контекста и может "
"значительно отличаться от значения, возвращаемого этой функцией. Используйте "
"ее только как грубую оценку (например, как высоту пустой строки)."

msgid ""
"Returns the size of a bounding box of a string broken into the lines, taking "
"kerning and advance into account.\n"
"See also [method draw_multiline_string]."
msgstr ""
"Возвращает размер ограничивающего прямоугольника строки, разбитой на строки, "
"с учетом кернинга и продвижения.\n"
"См. также [method draw multiline string]."

msgid ""
"Returns a set of OpenType feature tags. More info: [url=https://"
"docs.microsoft.com/en-us/typography/opentype/spec/featuretags]OpenType "
"feature tags[/url]."
msgstr ""
"Возвращает набор тегов функций OpenType. Дополнительная информация: "
"[url=https://docs.microsoft.com/en-us/typography/opentype/spec/"
"featuretags]Теги функций OpenType[/url]."

msgid ""
"Returns [Dictionary] with OpenType font name strings (localized font names, "
"version, description, license information, sample text, etc.)."
msgstr ""
"Возвращает [Dictionary] со строками названий шрифтов OpenType (локализованные "
"названия шрифтов, версия, описание, информация о лицензии, пример текста и т. "
"д.)."

msgid ""
"Returns [Array] of valid [Font] [RID]s, which can be passed to the "
"[TextServer] methods."
msgstr ""
"Возвращает [Array] допустимых [Font] [RID], которые можно передать методам "
"[TextServer]."

msgid "Returns the amount of spacing for the given [param spacing] type."
msgstr "Возвращает величину интервала для заданного типа [param spacing]."

msgid ""
"Returns the size of a bounding box of a single-line string, taking kerning, "
"advance and subpixel positioning into account. See also [method "
"get_multiline_string_size] and [method draw_string].\n"
"For example, to get the string size as displayed by a single-line Label, "
"use:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var string_size = "
"$Label.get_theme_font(\"font\").get_string_size($Label.text, "
"HORIZONTAL_ALIGNMENT_LEFT, -1, $Label.get_theme_font_size(\"font_size\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"Label label = GetNode<Label>(\"Label\");\n"
"Vector2 stringSize = label.GetThemeFont(\"font\").GetStringSize(label.Text, "
"HorizontalAlignment.Left, -1, label.GetThemeFontSize(\"font_size\"));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Since kerning, advance and subpixel positioning are taken into "
"account by [method get_string_size], using separate [method get_string_size] "
"calls on substrings of a string then adding the results together will return "
"a different result compared to using a single [method get_string_size] call "
"on the full string.\n"
"[b]Note:[/b] Real height of the string is context-dependent and can be "
"significantly different from the value returned by [method get_height]."
msgstr ""
"Возвращает размер ограничивающего прямоугольника однострочной строки с учетом "
"кернинга, продвижения и субпиксельного позиционирования. См. также [method "
"get_multiline_string_size] и [method draw_string].\n"
"Например, чтобы получить размер строки, отображаемый однострочной меткой "
"(Label), используйте:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var string_size = "
"$Label.get_theme_font(\"font\").get_string_size($Label.text, "
"HORIZONTAL_ALIGNMENT_LEFT, -1, $Label.get_theme_font_size(\"font_size\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"Label label = GetNode<Label>(\"Label\");\n"
"Vector2 stringSize = label.GetThemeFont(\"font\").GetStringSize(label.Text, "
"HorizontalAlignment.Left, -1, label.GetThemeFontSize(\"font_size\"));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Поскольку кернинг, продвижение и субпиксельное "
"позиционирование учитываются [method get_string_size], использование "
"отдельных вызовов [method get_string_size] для подстрок строки, а затем "
"сложение результатов вернет другой результат по сравнению с использованием "
"одного вызова [method get_string_size] для всей строки.\n"
"[b]Примечание:[/b] Реальная высота строки зависит от контекста и может "
"значительно отличаться от значения, возвращаемого [method get_height]."

msgid ""
"Returns a string containing all the characters available in the font.\n"
"If a given character is included in more than one font data source, it "
"appears only once in the returned string."
msgstr ""
"Возвращает строку, содержащую все символы, доступные в шрифте.\n"
"Если заданный символ включен в более чем один источник данных шрифта, он "
"появляется только один раз в возвращаемой строке."

msgid "Returns list of OpenType features supported by font."
msgstr "Возвращает список функций OpenType, поддерживаемых шрифтом."

msgid ""
"Returns list of supported [url=https://docs.microsoft.com/en-us/typography/"
"opentype/spec/dvaraxisreg]variation coordinates[/url], each coordinate is "
"returned as [code]tag: Vector3i(min_value,max_value,default_value)[/code].\n"
"Font variations allow for continuous change of glyph characteristics along "
"some given design axis, such as weight, width or slant.\n"
"To print available variation axes of a variable font:\n"
"[codeblock]\n"
"var fv = FontVariation.new()\n"
"fv.base_font = load(\"res://RobotoFlex.ttf\")\n"
"var variation_list = fv.get_supported_variation_list()\n"
"for tag in variation_list:\n"
"\tvar name = TextServerManager.get_primary_interface().tag_to_name(tag)\n"
"\tvar values = variation_list[tag]\n"
"\tprint(\"variation axis: %s (%d)\\n\\tmin, max, default: %s\" % [name, tag, "
"values])\n"
"[/codeblock]\n"
"[b]Note:[/b] To set and get variation coordinates of a [FontVariation], use "
"[member FontVariation.variation_opentype]."
msgstr ""
"Возвращает список поддерживаемых [url=https://docs.microsoft.com/en-us/"
"typography/opentype/spec/dvaraxisreg]координат вариантов[/url], каждая "
"координата возвращается как [code]tag: "
"Vector3i(min_value,max_value,default_value)[/code].\n"
"Вариации шрифта позволяют непрерывно изменять характеристики глифов вдоль "
"некоторой заданной оси дизайна, такой как толщина, ширина или наклон.\n"
"Чтобы распечатать доступные оси вариаций переменного шрифта:\n"
"[codeblock]\n"
"var fv = FontVariation.new()\n"
"fv.base_font = load(\"res://RobotoFlex.ttf\")\n"
"var variation_list = fv.get_supported_variation_list()\n"
"for tag in variation_list:\n"
"\tvar name = TextServerManager.get_primary_interface().tag_to_name(tag)\n"
"\tvar values = variation_list[tag]\n"
"\tprint(\"variation axis: %s (%d)\\n\\tmin, max, default: %s\" % [name, tag, "
"values])\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Чтобы задать и получить координаты вариации "
"[FontVariation], используйте [member FontVariation.variation_opentype]."

msgid ""
"Returns average pixel offset of the underline below the baseline.\n"
"[b]Note:[/b] Real underline position of the string is context-dependent and "
"can be significantly different from the value returned by this function. Use "
"it only as rough estimate."
msgstr ""
"Возвращает среднее смещение подчеркивания в пикселях ниже базовой линии.\n"
"[b]Примечание:[/b] Реальное положение подчеркивания строки зависит от "
"контекста и может значительно отличаться от значения, возвращаемого этой "
"функцией. Используйте его только как грубую оценку."

msgid ""
"Returns average thickness of the underline.\n"
"[b]Note:[/b] Real underline thickness of the string is context-dependent and "
"can be significantly different from the value returned by this function. Use "
"it only as rough estimate."
msgstr ""
"Возвращает среднюю толщину подчеркивания.\n"
"[b]Примечание:[/b] Реальная толщина подчеркивания строки зависит от контекста "
"и может значительно отличаться от значения, возвращаемого этой функцией. "
"Используйте ее только как грубую оценку."

msgid ""
"Returns [code]true[/code] if a Unicode [param char] is available in the font."
msgstr ""
"Возвращает [code]true[/code], если в шрифте доступен символ Unicode [param "
"char]."

msgid ""
"Returns [code]true[/code], if font supports given language ([url=https://"
"en.wikipedia.org/wiki/ISO_639-1]ISO 639[/url] code)."
msgstr ""
"Возвращает [code]true[/code], если шрифт поддерживает указанный язык "
"([url=https://en.wikipedia.org/wiki/ISO_639-1]код ISO 639[/url])."

msgid ""
"Returns [code]true[/code], if font supports given script ([url=https://"
"en.wikipedia.org/wiki/ISO_15924]ISO 15924[/url] code)."
msgstr ""
"Возвращает [code]true[/code], если шрифт поддерживает указанный сценарий "
"([url=https://en.wikipedia.org/wiki/ISO_15924]код ISO 15924[/url])."

msgid "Sets LRU cache capacity for [code]draw_*[/code] methods."
msgstr "Устанавливает емкость кэша LRU для методов [code]draw_*[/code]."

msgid ""
"Array of fallback [Font]s to use as a substitute if a glyph is not found in "
"this current [Font].\n"
"If this array is empty in a [FontVariation], the [member "
"FontVariation.base_font]'s fallbacks are used instead."
msgstr ""
"Массив резервных [Font] для использования в качестве замены, если глиф не "
"найден в текущем [Font].\n"
"Если этот массив пуст в [FontVariation], вместо него используются резервные "
"[member FontVariation.base_font]."

msgid ""
"Holds font source data and prerendered glyph cache, imported from a dynamic "
"or a bitmap font."
msgstr ""
"Содержит исходные данные шрифта и кэш предварительно отрисованных глифов, "
"импортированных из динамического или растрового шрифта."

msgid ""
"[FontFile] contains a set of glyphs to represent Unicode characters imported "
"from a font file, as well as a cache of rasterized glyphs, and a set of "
"fallback [Font]s to use.\n"
"Use [FontVariation] to access specific OpenType variation of the font, create "
"simulated bold / slanted version, and draw lines of text.\n"
"For more complex text processing, use [FontVariation] in conjunction with "
"[TextLine] or [TextParagraph].\n"
"Supported font formats:\n"
"- Dynamic font importer: TrueType (.ttf), TrueType collection (.ttc), "
"OpenType (.otf), OpenType collection (.otc), WOFF (.woff), WOFF2 (.woff2), "
"Type 1 (.pfb, .pfm).\n"
"- Bitmap font importer: AngelCode BMFont (.fnt, .font), text and binary "
"(version 3) format variants.\n"
"- Monospace image font importer: All supported image formats.\n"
"[b]Note:[/b] A character is a symbol that represents an item (letter, digit "
"etc.) in an abstract way.\n"
"[b]Note:[/b] A glyph is a bitmap or a shape used to draw one or more "
"characters in a context-dependent manner. Glyph indices are bound to the "
"specific font data source.\n"
"[b]Note:[/b] If none of the font data sources contain glyphs for a character "
"used in a string, the character in question will be replaced with a box "
"displaying its hexadecimal code.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var f = load(\"res://BarlowCondensed-Bold.ttf\")\n"
"$Label.add_theme_font_override(\"font\", f)\n"
"$Label.add_theme_font_size_override(\"font_size\", 64)\n"
"[/gdscript]\n"
"[csharp]\n"
"var f = ResourceLoader.Load<FontFile>(\"res://BarlowCondensed-Bold.ttf\");\n"
"GetNode(\"Label\").AddThemeFontOverride(\"font\", f);\n"
"GetNode(\"Label\").AddThemeFontSizeOverride(\"font_size\", 64);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[FontFile] содержит набор глифов для представления символов Unicode, "
"импортированных из файла шрифта, а также кэш растрированных глифов и набор "
"резервных [Font]-ов для использования.\n"
"Используйте [FontVariation] для доступа к определенной вариации шрифта "
"OpenType, создания имитации жирного/наклонного начертания и рисования строк "
"текста.\n"
"Для более сложной обработки текста используйте [FontVariation] вместе с "
"[TextLine] или [TextParagraph].\n"
"Поддерживаемые форматы шрифтов:\n"
"- Динамический импортер шрифтов: TrueType (.ttf), TrueType collection (.ttc), "
"OpenType (.otf), OpenType collection (.otc), WOFF (.woff), WOFF2 (.woff2), "
"Type 1 (.pfb, .pfm).\n"
"- Импортер растровых шрифтов: AngelCode BMFont (.fnt, .font), текстовые и "
"двоичные (версия 3) форматы.\n"
"- Импортер шрифтов моноширинных изображений: все поддерживаемые форматы "
"изображений.\n"
"[b]Примечание:[/b] Символ — это символ, который представляет элемент (букву, "
"цифру и т. д.) абстрактным образом.\n"
"[b]Примечание:[/b] Глиф — это битовая карта или форма, используемая для "
"рисования одного или нескольких символов в зависимости от контекста. Индексы "
"глифов привязаны к определенному источнику данных шрифта.\n"
"[b]Примечание:[/b] Если ни один из источников данных шрифта не содержит "
"глифов для символа, используемого в строке, рассматриваемый символ будет "
"заменен полем, отображающим его шестнадцатеричный код.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var f = load(\"res://BarlowCondensed-Bold.ttf\")\n"
"$Label.add_theme_font_override(\"font\", f)\n"
"$Label.add_theme_font_size_override(\"font_size\", 64)\n"
"[/gdscript]\n"
"[csharp]\n"
"var f = ResourceLoader.Load<FontFile>(\"res://BarlowCondensed-Bold.ttf\");\n"
"GetNode(\"Label\").AddThemeFontOverride(\"font\", f);\n"
"GetNode(\"Label\").AddThemeFontSizeOverride(\"font_size\", 64);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Removes all font cache entries."
msgstr "Удаляет все записи кэша шрифтов."

msgid ""
"Removes all rendered glyph information from the cache entry.\n"
"[b]Note:[/b] This function will not remove textures associated with the "
"glyphs, use [method remove_texture] to remove them manually."
msgstr ""
"Удаляет всю визуализированную информацию о глифах из записи кэша.\n"
"[b]Примечание:[/b] Эта функция не удалит текстуры, связанные с глифами, "
"используйте [method remove_texture], чтобы удалить их вручную."

msgid "Removes all kerning overrides."
msgstr "Удаляет все переопределения кернинга."

msgid "Removes all font sizes from the cache entry."
msgstr "Удаляет все размеры шрифтов из записи кэша."

msgid ""
"Removes all textures from font cache entry.\n"
"[b]Note:[/b] This function will not remove glyphs associated with the "
"texture, use [method remove_glyph] to remove them manually."
msgstr ""
"Удаляет все текстуры из записи кэша шрифтов.\n"
"[b]Примечание:[/b] Эта функция не удалит глифы, связанные с текстурой, "
"используйте [method remove_glyph], чтобы удалить их вручную."

msgid "Returns the font ascent (number of pixels above the baseline)."
msgstr "Возвращает высоту шрифта (количество пикселей над базовой линией)."

msgid "Returns number of the font cache entries."
msgstr "Возвращает количество записей кэша шрифтов."

msgid "Returns the font descent (number of pixels below the baseline)."
msgstr "Возвращает спуск шрифта (количество пикселей ниже базовой линии)."

msgid "Returns scaling factor of the color bitmap font."
msgstr "Возвращает коэффициент масштабирования цветного растрового шрифта."

msgid "Returns pixel offset of the underline below the baseline."
msgstr ""
"Возвращает смещение подчеркивания в пикселях относительно базовой линии."

msgid "Returns thickness of the underline in pixels."
msgstr "Возвращает толщину подчеркивания в пикселях."

msgid ""
"Returns character code associated with [param glyph_index], or [code]0[/code] "
"if [param glyph_index] is invalid. See [method get_glyph_index]."
msgstr ""
"Возвращает код символа, связанный с [param glyph_index], или [code]0[/code], "
"если [param glyph_index] недействителен. См. [method get_glyph_index]."

msgid ""
"Returns embolden strength, if is not equal to zero, emboldens the font "
"outlines. Negative values reduce the outline thickness."
msgstr ""
"Возвращает жирность, если не равно нулю, жирнее контуры шрифта. Отрицательные "
"значения уменьшают толщину контура."

msgid "Returns extra baseline offset (as a fraction of font height)."
msgstr ""
"Возвращает дополнительное смещение базовой линии (как долю высоты шрифта)."

msgid ""
"Returns spacing for [param spacing] in pixels (not relative to the font size)."
msgstr ""
"Возвращает интервал для [param spacing] в пикселях (не относительно размера "
"шрифта)."

msgid "Returns an active face index in the TrueType / OpenType collection."
msgstr "Возвращает активный индекс начертания в коллекции TrueType / OpenType."

msgid ""
"Returns glyph advance (offset of the next glyph).\n"
"[b]Note:[/b] Advance for glyphs outlines is the same as the base glyph "
"advance and is not saved."
msgstr ""
"Возвращает продвижение глифа (смещение следующего глифа).\n"
"[b]Примечание:[/b] Продвижение для контуров глифов такое же, как и базовое "
"продвижение глифа, и не сохраняется."

msgid ""
"Returns the glyph index of a [param char], optionally modified by the [param "
"variation_selector]."
msgstr ""
"Возвращает индекс глифа [param char], при необходимости измененный [param "
"variation_selector]."

msgid "Returns list of rendered glyphs in the cache entry."
msgstr "Возвращает список отрисованных глифов в записи кэша."

msgid "Returns glyph offset from the baseline."
msgstr "Возвращает смещение глифа от базовой линии."

msgid "Returns glyph size."
msgstr "Возвращает размер глифа."

msgid "Returns index of the cache texture containing the glyph."
msgstr "Возвращает индекс кэшированной текстуры, содержащей глиф."

msgid "Returns rectangle in the cache texture containing the glyph."
msgstr "Возвращает прямоугольник в кэшированной текстуре, содержащий глиф."

msgid "Returns kerning for the pair of glyphs."
msgstr "Возвращает кернинг для пары глифов."

msgid "Returns list of the kerning overrides."
msgstr "Возвращает список переопределений кернинга."

msgid ""
"Returns [code]true[/code] if support override is enabled for the [param "
"language]."
msgstr ""
"Возвращает [code]true[/code], если для [param language] включена поддержка "
"переопределения."

msgid "Returns list of language support overrides."
msgstr "Возвращает список переопределений поддержки языка."

msgid ""
"Returns [code]true[/code] if support override is enabled for the [param "
"script]."
msgstr ""
"Возвращает [code]true[/code], если для [param script] включена поддержка "
"переопределения."

msgid "Returns list of script support overrides."
msgstr "Возвращает список переопределений поддержки скриптов."

msgid ""
"Returns list of the font sizes in the cache. Each size is [Vector2i] with "
"font size and outline size."
msgstr ""
"Возвращает список размеров шрифтов в кэше. Каждый размер — [Vector2i] с "
"размером шрифта и размером контура."

msgid "Returns number of textures used by font cache entry."
msgstr "Возвращает количество текстур, используемых записью кэша шрифтов."

msgid "Returns a copy of the font cache texture image."
msgstr "Возвращает копию изображения текстуры кэша шрифта."

msgid "Returns a copy of the array containing glyph packing data."
msgstr "Возвращает копию массива, содержащего данные упаковки глифов."

msgid ""
"Returns 2D transform, applied to the font outlines, can be used for slanting, "
"flipping and rotating glyphs."
msgstr ""
"Возвращает 2D-преобразование, применяемое к контурам шрифта, может "
"использоваться для наклона, переворачивания и поворота глифов."

msgid ""
"Returns variation coordinates for the specified font cache entry. See [method "
"Font.get_supported_variation_list] for more info."
msgstr ""
"Возвращает координаты вариации для указанной записи кэша шрифта. См. [method "
"Font.get_supported_variation_list] для получения дополнительной информации."

msgid ""
"Loads an AngelCode BMFont (.fnt, .font) bitmap font from file [param path].\n"
"[b]Warning:[/b] This method should only be used in the editor or in cases "
"when you need to load external fonts at run-time, such as fonts located at "
"the [code]user://[/code] directory."
msgstr ""
"Загружает растровый шрифт AngelCode BMFont (.fnt, .font) из файла [param "
"path].\n"
"[b]Предупреждение:[/b] Этот метод следует использовать только в редакторе или "
"в случаях, когда вам нужно загрузить внешние шрифты во время выполнения, "
"например шрифты, расположенные в каталоге [code]user://[/code]."

msgid ""
"Loads a TrueType (.ttf), OpenType (.otf), WOFF (.woff), WOFF2 (.woff2) or "
"Type 1 (.pfb, .pfm) dynamic font from file [param path].\n"
"[b]Warning:[/b] This method should only be used in the editor or in cases "
"when you need to load external fonts at run-time, such as fonts located at "
"the [code]user://[/code] directory."
msgstr ""
"Загружает динамический шрифт TrueType (.ttf), OpenType (.otf), WOFF (.woff), "
"WOFF2 (.woff2) или Type 1 (.pfb, .pfm) из файла [param path].\n"
"[b]Предупреждение:[/b] Этот метод следует использовать только в редакторе или "
"в случаях, когда вам нужно загрузить внешние шрифты во время выполнения, "
"например шрифты, расположенные в каталоге [code]user://[/code]."

msgid "Removes specified font cache entry."
msgstr "Удаляет указанную запись кэша шрифтов."

msgid ""
"Removes specified rendered glyph information from the cache entry.\n"
"[b]Note:[/b] This function will not remove textures associated with the "
"glyphs, use [method remove_texture] to remove them manually."
msgstr ""
"Удаляет указанную визуализированную информацию о глифах из записи кэша.\n"
"[b]Примечание:[/b] Эта функция не удалит текстуры, связанные с глифами, "
"используйте [method remove_texture], чтобы удалить их вручную."

msgid "Removes kerning override for the pair of glyphs."
msgstr "Удаляет переопределение кернинга для пары глифов."

msgid "Remove language support override."
msgstr "Удалить переопределение языковой поддержки."

msgid "Removes script support override."
msgstr "Удаляет переопределение поддержки скриптов."

msgid "Removes specified font size from the cache entry."
msgstr "Удаляет указанный размер шрифта из записи кэша."

msgid ""
"Removes specified texture from the cache entry.\n"
"[b]Note:[/b] This function will not remove glyphs associated with the "
"texture. Remove them manually using [method remove_glyph]."
msgstr ""
"Удаляет указанную текстуру из записи кэша.\n"
"[b]Примечание:[/b] Эта функция не удалит глифы, связанные с текстурой. "
"Удалите их вручную с помощью [method remove_glyph]."

msgid "Renders specified glyph to the font cache texture."
msgstr "Отображает указанный глиф в текстуре кэша шрифта."

msgid "Renders the range of characters to the font cache texture."
msgstr "Отображает диапазон символов в текстуру кэша шрифта."

msgid "Sets the font ascent (number of pixels above the baseline)."
msgstr "Устанавливает высоту шрифта (количество пикселей над базовой линией)."

msgid "Sets the font descent (number of pixels below the baseline)."
msgstr "Устанавливает спуск шрифта (количество пикселей ниже базовой линии)."

msgid "Sets scaling factor of the color bitmap font."
msgstr "Устанавливает коэффициент масштабирования цветного растрового шрифта."

msgid "Sets pixel offset of the underline below the baseline."
msgstr ""
"Устанавливает смещение подчеркивания в пикселях относительно базовой линии."

msgid "Sets thickness of the underline in pixels."
msgstr "Задает толщину подчеркивания в пикселях."

msgid ""
"Sets embolden strength, if is not equal to zero, emboldens the font outlines. "
"Negative values reduce the outline thickness."
msgstr ""
"Устанавливает жирность, если не равно нулю, жирнее контуры шрифта. "
"Отрицательные значения уменьшают толщину контура."

msgid "Sets extra baseline offset (as a fraction of font height)."
msgstr ""
"Устанавливает дополнительное смещение базовой линии (как часть высоты шрифта)."

msgid ""
"Sets the spacing for [param spacing] to [param value] in pixels (not relative "
"to the font size)."
msgstr ""
"Устанавливает интервал для [param spacing] на [param value] в пикселях (не "
"относительно размера шрифта)."

msgid "Sets an active face index in the TrueType / OpenType collection."
msgstr ""
"Устанавливает активный индекс начертания в коллекции TrueType / OpenType."

msgid ""
"Sets glyph advance (offset of the next glyph).\n"
"[b]Note:[/b] Advance for glyphs outlines is the same as the base glyph "
"advance and is not saved."
msgstr ""
"Устанавливает смещение глифа (смещение следующего глифа).\n"
"[b]Примечание:[/b] Смещение для контуров глифов такое же, как и базовое "
"смещение глифа, и не сохраняется."

msgid "Sets glyph offset from the baseline."
msgstr "Устанавливает смещение глифа от базовой линии."

msgid "Sets glyph size."
msgstr "Задает размер глифа."

msgid "Sets index of the cache texture containing the glyph."
msgstr "Устанавливает индекс кэшированной текстуры, содержащей глиф."

msgid "Sets rectangle in the cache texture containing the glyph."
msgstr "Устанавливает прямоугольник в кэшированной текстуре, содержащей глиф."

msgid "Sets kerning for the pair of glyphs."
msgstr "Устанавливает кернинг для пары глифов."

msgid "Adds override for [method Font.is_language_supported]."
msgstr "Добавляет переопределение для [method Font.is_language_supported]."

msgid "Adds override for [method Font.is_script_supported]."
msgstr "Добавляет переопределение для [method Font.is_script_supported]."

msgid "Sets font cache texture image."
msgstr "Устанавливает изображение текстуры кэша шрифта."

msgid "Sets array containing glyph packing data."
msgstr "Устанавливает массив, содержащий данные упаковки глифов."

msgid ""
"Sets 2D transform, applied to the font outlines, can be used for slanting, "
"flipping, and rotating glyphs."
msgstr ""
"Задает 2D-преобразование, применяемое к контурам шрифта, может использоваться "
"для наклона, переворачивания и поворота глифов."

msgid ""
"Sets variation coordinates for the specified font cache entry. See [method "
"Font.get_supported_variation_list] for more info."
msgstr ""
"Устанавливает координаты вариации для указанной записи кэша шрифта. См. "
"[method Font.get_supported_variation_list] для получения дополнительной "
"информации."

msgid ""
"If set to [code]true[/code], system fonts can be automatically used as "
"fallbacks."
msgstr ""
"Если задано значение [code]true[/code], системные шрифты могут автоматически "
"использоваться в качестве резервных."

msgid "Font anti-aliasing mode."
msgstr "Способ сглаживания шрифтов."

msgid "Contents of the dynamic font source file."
msgstr "Содержимое исходного файла динамического шрифта."

msgid "Font size, used only for the bitmap fonts."
msgstr "Размер шрифта, используется только для растровых шрифтов."

msgid ""
"Scaling mode, used only for the bitmap fonts with [member fixed_size] greater "
"than zero."
msgstr ""
"Режим масштабирования, используемый только для растровых шрифтов с [member "
"fixed_size] больше нуля."

msgid "Font family name."
msgstr "Название семейства шрифтов."

msgid ""
"Font stretch amount, compared to a normal width. A percentage value between "
"[code]50%[/code] and [code]200%[/code]."
msgstr ""
"Степень растяжения шрифта по сравнению с нормальной шириной. Процентное "
"значение между [code]50%[/code] и [code]200%[/code]."

msgid "Font style flags."
msgstr "Флаги стилей шрифта."

msgid ""
"Weight (boldness) of the font. A value in the [code]100...999[/code] range, "
"normal font weight is [code]400[/code], bold font weight is [code]700[/code]."
msgstr ""
"Насыщенность (жирность) шрифта. Значение в диапазоне [code]100...999[/code], "
"нормальная насыщенность шрифта [code]400[/code], полужирная насыщенность "
"шрифта [code]700[/code]."

msgid ""
"If set to [code]true[/code], auto-hinting is supported and preferred over "
"font built-in hinting. Used by dynamic fonts only (MSDF fonts don't support "
"hinting)."
msgstr ""
"Если установлено значение [code]true[/code], поддерживается и "
"предпочтительнее встроенного хинтинга шрифта. Используется только "
"динамическими шрифтами (шрифты MSDF не поддерживают хинтинг)."

msgid "If set to [code]true[/code], generate mipmaps for the font textures."
msgstr ""
"Если установлено значение [code]true[/code], будут сгенерированы MIP-текстуры "
"для текстур шрифтов."

msgid "Font hinting mode. Used by dynamic fonts only."
msgstr "Режим подсказки шрифта. Используется только для шрифтов диктора."

msgid ""
"If set to [code]true[/code], when aligning glyphs to the pixel boundaries "
"rounding remainders are accumulated to ensure more uniform glyph "
"distribution. This setting has no effect if subpixel positioning is enabled."
msgstr ""
"Если установлено значение [code]true[/code], при выравнивании глифов по "
"границам пикселей остатки округления накапливаются для обеспечения более "
"равномерного распределения глифов. Этот параметр не действует, если включено "
"субпиксельное позиционирование."

msgid ""
"If set to [code]true[/code], color modulation is applied when drawing colored "
"glyphs, otherwise it's applied to the monochrome glyphs only."
msgstr ""
"Если установлено значение [code]true[/code], цветовая модуляция применяется "
"при рисовании цветных глифов, в противном случае она применяется только к "
"монохромным глифам."

msgid ""
"The width of the range around the shape between the minimum and maximum "
"representable signed distance. If using font outlines, [member "
"msdf_pixel_range] must be set to at least [i]twice[/i] the size of the "
"largest font outline. The default [member msdf_pixel_range] value of "
"[code]16[/code] allows outline sizes up to [code]8[/code] to look correct."
msgstr ""
"Ширина диапазона вокруг фигуры между минимальным и максимальным представимым "
"расстоянием со знаком. При использовании контуров шрифта [member "
"msdf_pixel_range] должен быть установлен как минимум в [i]дважды[/i] размера "
"самого большого контура шрифта. Значение [member msdf_pixel_range] по "
"умолчанию [code]16[/code] позволяет контурам размером до [code]8[/code] "
"выглядеть правильно."

msgid ""
"Source font size used to generate MSDF textures. Higher values allow for more "
"precision, but are slower to render and require more memory. Only increase "
"this value if you notice a visible lack of precision in glyph rendering."
msgstr ""
"Исходный размер шрифта, используемый для генерации текстур MSDF. Более "
"высокие значения обеспечивают большую точность, но медленнее отрисовываются и "
"требуют больше памяти. Увеличивайте это значение только в том случае, если вы "
"заметили видимую неточность в отрисовке глифов."

msgid ""
"If set to [code]true[/code], glyphs of all sizes are rendered using single "
"multichannel signed distance field (MSDF) generated from the dynamic font "
"vector data. Since this approach does not rely on rasterizing the font every "
"time its size changes, this allows for resizing the font in real-time without "
"any performance penalty. Text will also not look grainy for [Control]s that "
"are scaled down (or for [Label3D]s viewed from a long distance). As a "
"downside, font hinting is not available with MSDF. The lack of font hinting "
"may result in less crisp and less readable fonts at small sizes.\n"
"[b]Note:[/b] If using font outlines, [member msdf_pixel_range] must be set to "
"at least [i]twice[/i] the size of the largest font outline.\n"
"[b]Note:[/b] MSDF font rendering does not render glyphs with overlapping "
"shapes correctly. Overlapping shapes are not valid per the OpenType standard, "
"but are still commonly found in many font files, especially those converted "
"by Google Fonts. To avoid issues with overlapping glyphs, consider "
"downloading the font file directly from the type foundry instead of relying "
"on Google Fonts."
msgstr ""
"Если установлено значение [code]true[/code], глифы всех размеров "
"визуализируются с использованием одного многоканального поля знакового "
"расстояния (MSDF), сгенерированного из динамических векторных данных шрифта. "
"Поскольку этот подход не полагается на растеризацию шрифта каждый раз при "
"изменении его размера, это позволяет изменять размер шрифта в реальном "
"времени без потери производительности. Текст также не будет выглядеть "
"зернистым для [Control], которые масштабируются в уменьшенном масштабе (или "
"для [Label3D], просматриваемых с большого расстояния). Недостатком является "
"то, что хинтинг шрифтов недоступен в MSDF. Отсутствие хинтингов шрифтов может "
"привести к менее четким и менее читаемым шрифтам при малых размерах.\n"
"[b]Примечание:[/b] При использовании контуров шрифтов [member "
"msdf_pixel_range] должен быть установлен как минимум в [i]двойной[/i] размер "
"самого большого контура шрифта.\n"
"[b]Примечание:[/b] Рендеринг шрифтов MSDF некорректно визуализирует глифы с "
"перекрывающимися фигурами. Перекрывающиеся формы недопустимы по стандарту "
"OpenType, но все еще часто встречаются во многих файлах шрифтов, особенно в "
"тех, которые конвертируются Google Fonts. Чтобы избежать проблем с "
"перекрывающимися глифами, рассмотрите возможность загрузки файла шрифта "
"непосредственно из типографского цеха, а не полагайтесь на Google Fonts."

msgid "Font OpenType feature set override."
msgstr "Переопределение набора функций шрифта OpenType."

msgid ""
"If set to a positive value, overrides the oversampling factor of the viewport "
"this font is used in. See [member Viewport.oversampling]. This value doesn't "
"override the [code skip-lint]oversampling[/code] parameter of [code skip-"
"lint]draw_*[/code] methods."
msgstr ""
"Положительное значение переопределяет коэффициент передискретизации области "
"просмотра, в которой используется этот шрифт. См. [member "
"Viewport.oversampling]. Это значение не переопределяет параметр [code skip-"
"lint]oversampling[/code] методов [code skip-lint]draw_*[/code]."

msgid "Font style name."
msgstr "Имя стиля шрифта."

msgid ""
"Font glyph subpixel positioning mode. Subpixel positioning provides shaper "
"text and better kerning for smaller font sizes, at the cost of higher memory "
"usage and lower font rasterization speed. Use [constant "
"TextServer.SUBPIXEL_POSITIONING_AUTO] to automatically enable it based on the "
"font size."
msgstr ""
"Режим субпиксельного позиционирования глифа шрифта. Субпиксельное "
"позиционирование обеспечивает более четкий текст и лучший кернинг для шрифтов "
"меньшего размера за счет более высокого использования памяти и более низкой "
"скорости растеризации шрифта. Используйте [constant "
"TextServer.SUBPIXEL_POSITIONING_AUTO] для автоматического включения на основе "
"размера шрифта."

msgid "A variation of a font with additional settings."
msgstr "Вариант шрифта с дополнительными настройками."

msgid ""
"Provides OpenType variations, simulated bold / slant, and additional font "
"settings like OpenType features and extra spacing.\n"
"To use simulated bold font variant:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fv = FontVariation.new()\n"
"fv.base_font = load(\"res://BarlowCondensed-Regular.ttf\")\n"
"fv.variation_embolden = 1.2\n"
"$Label.add_theme_font_override(\"font\", fv)\n"
"$Label.add_theme_font_size_override(\"font_size\", 64)\n"
"[/gdscript]\n"
"[csharp]\n"
"var fv = new FontVariation();\n"
"fv.SetBaseFont(ResourceLoader.Load<FontFile>(\"res://BarlowCondensed-"
"Regular.ttf\"));\n"
"fv.SetVariationEmbolden(1.2);\n"
"GetNode(\"Label\").AddThemeFontOverride(\"font\", fv);\n"
"GetNode(\"Label\").AddThemeFontSizeOverride(\"font_size\", 64);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To set the coordinate of multiple variation axes:\n"
"[codeblock]\n"
"var fv = FontVariation.new();\n"
"var ts = TextServerManager.get_primary_interface()\n"
"fv.base_font = load(\"res://BarlowCondensed-Regular.ttf\")\n"
"fv.variation_opentype = { ts.name_to_tag(\"wght\"): 900, "
"ts.name_to_tag(\"custom_hght\"): 900 }\n"
"[/codeblock]"
msgstr ""
"Предоставляет вариации OpenType, имитацию жирного/наклонного начертания и "
"дополнительные настройки шрифта, такие как функции OpenType и дополнительный "
"интервал.\n"
"Чтобы использовать имитацию жирного шрифта:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fv = FontVariation.new()\n"
"fv.base_font = load(\"res://BarlowCondensed-Regular.ttf\")\n"
"fv.variation_embolden = 1.2\n"
"$Label.add_theme_font_override(\"font\", fv)\n"
"$Label.add_theme_font_size_override(\"font_size\", 64)\n"
"[/gdscript]\n"
"[csharp]\n"
"var fv = new FontVariation();\n"
"fv.SetBaseFont(ResourceLoader.Load<FontFile>(\"res://BarlowCondensed-"
"Regular.ttf\"));\n"
"fv.SetVariationEmbolden(1.2);\n"
"GetNode(\"Label\").AddThemeFontOverride(\"font\", fv);\n"
"GetNode(\"Label\").AddThemeFontSizeOverride(\"font_size\", 64);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To set the coordinate of multiple variation axes:\n"
"[codeblock]\n"
"var fv = FontVariation.new();\n"
"var ts = TextServerManager.get_primary_interface()\n"
"fv.base_font = load(\"res://BarlowCondensed-Regular.ttf\")\n"
"fv.variation_opentype = { ts.name_to_tag(\"wght\"): 900, "
"ts.name_to_tag(\"custom_hght\"): 900 }\n"
"[/codeblock]"

msgid ""
"Base font used to create a variation. If not set, default [Theme] font is "
"used."
msgstr ""
"Базовый шрифт, используемый для создания вариации. Если не задано, "
"используется шрифт по умолчанию [Theme]."

msgid "Extra baseline offset (as a fraction of font height)."
msgstr "Дополнительное смещение базовой линии (в виде доли высоты шрифта)."

msgid ""
"A set of OpenType feature tags. More info: [url=https://docs.microsoft.com/en-"
"us/typography/opentype/spec/featuretags]OpenType feature tags[/url]."
msgstr ""
"Набор тегов функций OpenType. Дополнительная информация: [url=https://"
"docs.microsoft.com/en-us/typography/opentype/spec/featuretags]Теги функций "
"OpenType[/url]."

msgid "Extra spacing at the bottom of the line in pixels."
msgstr "Дополнительный интервал внизу строки в пикселях."

msgid "Extra spacing between graphical glyphs."
msgstr "Дополнительный интервал между графическими глифами."

msgid "Extra width of the space glyphs."
msgstr "Дополнительная ширина пробельных глифов."

msgid "Extra spacing at the top of the line in pixels."
msgstr "Дополнительный интервал в верхней части строки в пикселях."

msgid ""
"If is not equal to zero, emboldens the font outlines. Negative values reduce "
"the outline thickness.\n"
"[b]Note:[/b] Emboldened fonts might have self-intersecting outlines, which "
"will prevent MSDF fonts and [TextMesh] from working correctly."
msgstr ""
"Если не равно нулю, то контуры шрифта становятся жирными. Отрицательные "
"значения уменьшают толщину контура.\n"
"[b]Примечание:[/b] У жирных шрифтов могут быть самопересекающиеся контуры, "
"что помешает корректной работе шрифтов MSDF и [TextMesh]."

msgid "Active face index in the TrueType / OpenType collection file."
msgstr "Активный индекс шрифтов в файле коллекции TrueType/OpenType."

msgid ""
"Font OpenType variation coordinates. More info: [url=https://"
"docs.microsoft.com/en-us/typography/opentype/spec/dvaraxisreg]OpenType "
"variation tags[/url].\n"
"[b]Note:[/b] This [Dictionary] uses OpenType tags as keys. Variation axes can "
"be identified both by tags ([int], e.g. [code]0x77678674[/code]) and names "
"([String], e.g. [code]wght[/code]). Some axes might be accessible by multiple "
"names. For example, [code]wght[/code] refers to the same axis as "
"[code]weight[/code]. Tags on the other hand are unique. To convert between "
"names and tags, use [method TextServer.name_to_tag] and [method "
"TextServer.tag_to_name].\n"
"[b]Note:[/b] To get available variation axes of a font, use [method "
"Font.get_supported_variation_list]."
msgstr ""
"Координаты вариаций шрифта OpenType. Дополнительная информация: [url=https://"
"docs.microsoft.com/en-us/typography/opentype/spec/dvaraxisreg]Теги вариаций "
"OpenType[/url].\n"
"[b]Примечание:[/b] Этот [Dictionary] использует теги OpenType в качестве "
"ключей. Оси вариаций можно идентифицировать как по тегам ([int], например "
"[code]0x77678674[/code]), так и по именам ([String], например [code]wght[/"
"code]). Некоторые оси могут быть доступны по нескольким именам. Например, "
"[code]wght[/code] относится к той же оси, что и [code]weight[/code]. Теги, с "
"другой стороны, уникальны. Для преобразования между именами и тегами "
"используйте [method TextServer.name_to_tag] и [method "
"TextServer.tag_to_name].\n"
"[b]Примечание:[/b] Чтобы получить доступные оси вариаций шрифта, используйте "
"[method Font.get_supported_variation_list]."

msgid ""
"2D transform, applied to the font outlines, can be used for slanting, "
"flipping and rotating glyphs.\n"
"For example, to simulate italic typeface by slanting, apply the following "
"transform [code]Transform2D(1.0, slant, 0.0, 1.0, 0.0, 0.0)[/code]."
msgstr ""
"2D-преобразование, применяемое к контурам шрифта, можно использовать для "
"наклона, переворачивания и поворота глифов.\n"
"Например, чтобы имитировать курсивное начертание с помощью наклона, примените "
"следующее преобразование [ [code]Transform2D(1.0, slant, 0.0, 1.0, 0.0, 0.0)[/"
"code]."

msgid "Framebuffer cache manager for Rendering Device based renderers."
msgstr ""
"Менеджер кэша кадрового буфера для рендереров на базе устройств рендеринга."

msgid ""
"Framebuffer cache manager for Rendering Device based renderers. Provides a "
"way to create a framebuffer and reuse it in subsequent calls for as long as "
"the used textures exists. Framebuffers will automatically be cleaned up when "
"dependent objects are freed."
msgstr ""
"Менеджер кэша буфера кадров для рендереров на основе устройств рендеринга. "
"Предоставляет способ создания буфера кадров и его повторного использования в "
"последующих вызовах до тех пор, пока существуют используемые текстуры. Буферы "
"кадров будут автоматически очищаться при освобождении зависимых объектов."

msgid ""
"Creates, or obtains a cached, framebuffer. [param textures] lists textures "
"accessed. [param passes] defines the subpasses and texture allocation, if "
"left empty a single pass is created and textures are allocated depending on "
"their usage flags. [param views] defines the number of views used when "
"rendering."
msgstr ""
"Создает или получает кэшированный буфер кадров. [param textures] перечисляет "
"доступные текстуры. [param passages] определяет подпроходы и распределение "
"текстур. Если оставить пустым, создается один проход, а текстуры "
"распределяются в зависимости от их флагов использования. [param views] "
"определяет количество видов, используемых при рендеринге."

msgid "A native library for GDExtension."
msgstr "Собственная библиотека для GDExtension."

msgid ""
"The [GDExtension] resource type represents a [url=https://en.wikipedia.org/"
"wiki/Shared_library]shared library[/url] which can expand the functionality "
"of the engine. The [GDExtensionManager] singleton is responsible for loading, "
"reloading, and unloading [GDExtension] resources.\n"
"[b]Note:[/b] GDExtension itself is not a scripting language and has no "
"relation to [GDScript] resources."
msgstr ""
"Тип ресурса [GDExtension] представляет собой [url=https://en.wikipedia.org/"
"wiki/Shared_library]общую библиотеку[/url], которая может расширить "
"функциональность движка. Синглтон [GDExtensionManager] отвечает за загрузку, "
"перезагрузку и выгрузку ресурсов [GDExtension].\n"
"[b]Примечание:[/b] Сам GDExtension не является языком сценариев и не имеет "
"отношения к ресурсам [GDScript]."

msgid "GDExtension overview"
msgstr "Обзор расширения GDExtension"

msgid "GDExtension example in C++"
msgstr "Пример GDExtension на C++"

msgid ""
"Returns the lowest level required for this extension to be properly "
"initialized (see the [enum InitializationLevel] enum)."
msgstr ""
"Возвращает минимальный уровень, необходимый для правильной инициализации "
"этого расширения (см. перечисление [enum InitializationLevel])."

msgid "Returns [code]true[/code] if this extension's library has been opened."
msgstr ""
"Возвращает [code]true[/code], если библиотека этого расширения была открыта."

msgid ""
"The library is initialized at the same time as the core features of the "
"engine."
msgstr "Библиотека инициализируется одновременно с основными функциями движка."

msgid ""
"The library is initialized at the same time as the engine's servers (such as "
"[RenderingServer] or [PhysicsServer3D])."
msgstr ""
"Библиотека инициализируется одновременно с серверами движка (например, "
"[RenderingServer] или [PhysicsServer3D])."

msgid ""
"The library is initialized at the same time as the engine's scene-related "
"classes."
msgstr ""
"Библиотека инициализируется одновременно с классами движка, связанными со "
"сценой."

msgid ""
"The library is initialized at the same time as the engine's editor classes. "
"Only happens when loading the GDExtension in the editor."
msgstr ""
"Библиотека инициализируется одновременно с классами редактора движка. "
"Происходит только при загрузке GDExtension в редакторе."

msgid "Provides access to GDExtension functionality."
msgstr "Предоставляет доступ к функционалу GDExtension."

msgid ""
"The GDExtensionManager loads, initializes, and keeps track of all available "
"[GDExtension] libraries in the project.\n"
"[b]Note:[/b] Do not worry about GDExtension unless you know what you are "
"doing."
msgstr ""
"GDExtensionManager загружает, инициализирует и отслеживает все доступные "
"библиотеки [GDExtension] в проекте.\n"
"[b]Примечание:[/b] Не беспокойтесь о GDExtension, если вы не знаете, что "
"делаете."

msgid ""
"Returns the [GDExtension] at the given file [param path], or [code]null[/"
"code] if it has not been loaded or does not exist."
msgstr ""
"Возвращает [GDExtension] для указанного файла [param path] или [code]null[/"
"code], если он не был загружен или не существует."

msgid "Returns the file paths of all currently loaded extensions."
msgstr "Возвращает пути к файлам всех загруженных в данный момент расширений."

msgid ""
"Returns [code]true[/code] if the extension at the given file [param path] has "
"already been loaded successfully. See also [method get_loaded_extensions]."
msgstr ""
"Возвращает [code]true[/code], если расширение в указанном файле [param path] "
"уже было успешно загружено. См. также [method get_loaded_extensions]."

msgid ""
"Loads an extension by absolute file path. The [param path] needs to point to "
"a valid [GDExtension]. Returns [constant LOAD_STATUS_OK] if successful."
msgstr ""
"Загружает расширение по абсолютному пути к файлу. [Param path] должен "
"указывать на допустимый [GDExtension]. Возвращает [constant LOAD_STATUS_OK] в "
"случае успеха."

msgid ""
"Reloads the extension at the given file path. The [param path] needs to point "
"to a valid [GDExtension], otherwise this method may return either [constant "
"LOAD_STATUS_NOT_LOADED] or [constant LOAD_STATUS_FAILED].\n"
"[b]Note:[/b] You can only reload extensions in the editor. In release builds, "
"this method always fails and returns [constant LOAD_STATUS_FAILED]."
msgstr ""
"Перезагружает расширение по указанному пути к файлу. [Param path] должен "
"указывать на допустимый [GDExtension], в противном случае этот метод может "
"вернуть либо [constant LOAD_STATUS_NOT_LOADED], либо [constant "
"LOAD_STATUS_FAILED].\n"
"[b]Примечание:[/b] Вы можете перезагрузить расширения только в редакторе. В "
"релизных сборках этот метод всегда терпит неудачу и возвращает [constant "
"LOAD_STATUS_FAILED]."

msgid ""
"Unloads an extension by file path. The [param path] needs to point to an "
"already loaded [GDExtension], otherwise this method returns [constant "
"LOAD_STATUS_NOT_LOADED]."
msgstr ""
"Выгружает расширение по пути к файлу. [Param path] должен указывать на уже "
"загруженный [GDExtension], в противном случае этот метод возвращает [constant "
"LOAD_STATUS_NOT_LOADED]."

msgid ""
"Emitted after the editor has finished loading a new extension.\n"
"[b]Note:[/b] This signal is only emitted in editor builds."
msgstr ""
"Выдается после того, как редактор завершил загрузку нового расширения.\n"
"[b]Примечание:[/b] Этот сигнал выдается только в сборках редактора."

msgid ""
"Emitted before the editor starts unloading an extension.\n"
"[b]Note:[/b] This signal is only emitted in editor builds."
msgstr ""
"Выдается до того, как редактор начинает выгружать расширение.\n"
"[b]Примечание:[/b] Этот сигнал выдается только в сборках редактора."

msgid "Emitted after the editor has finished reloading one or more extensions."
msgstr ""
"Генерируется после того, как редактор завершил перезагрузку одного или "
"нескольких расширений."

msgid "The extension has loaded successfully."
msgstr "Расширение успешно загружено."

msgid ""
"The extension has failed to load, possibly because it does not exist or has "
"missing dependencies."
msgstr ""
"Расширение не удалось загрузить, возможно, потому что оно не существует или у "
"него отсутствуют зависимости."

msgid "The extension has already been loaded."
msgstr "Расширение уже загружено."

msgid "The extension has not been loaded."
msgstr "Расширение не загружено."

msgid "The extension requires the application to restart to fully load."
msgstr "Для полной загрузки расширения требуется перезапуск приложения."

msgid "A script implemented in the GDScript programming language."
msgstr "Скрипт, реализованный на языке программирования GDScript."

msgid ""
"A script implemented in the GDScript programming language, saved with the "
"[code].gd[/code] extension. The script extends the functionality of all "
"objects that instantiate it.\n"
"Calling [method new] creates a new instance of the script. [method "
"Object.set_script] extends an existing object, if that object's class matches "
"one of the script's base classes.\n"
"If you are looking for GDScript's built-in functions, see [@GDScript] instead."
msgstr ""
"Скрипт, реализованный на языке программирования GDScript, сохраненный с "
"расширением [code].gd[/code]. Скрипт расширяет функциональность всех "
"объектов, которые его инстанциируют.\n"
"Вызов [method new] создает новый экземпляр скрипта. [method "
"Object.set_script] расширяет существующий объект, если класс этого объекта "
"соответствует одному из базовых классов скрипта.\n"
"Если вы ищете встроенные функции GDScript, см. [@GDScript]."

msgid "GDScript documentation index"
msgstr "Индекс документации по GDScript"

msgid ""
"Returns a new instance of the script.\n"
"[codeblock]\n"
"var MyClass = load(\"myclass.gd\")\n"
"var instance = MyClass.new()\n"
"print(instance.get_script() == MyClass) # Prints true\n"
"[/codeblock]"
msgstr ""
"Возвращает новый экземпляр скрипта.\n"
"[codeblock]\n"
"var MyClass = load(\"myclass.gd\")\n"
"var instance = MyClass.new()\n"
"print(instance.get_script() == MyClass) # Prints true\n"
"[/codeblock]"

msgid ""
"A GDScript syntax highlighter that can be used with [TextEdit] and [CodeEdit] "
"nodes."
msgstr ""
"Подсветка синтаксиса GDScript, которую можно использовать с узлами [TextEdit] "
"и [CodeEdit]."

msgid ""
"[b]Note:[/b] This class can only be used for editor plugins because it relies "
"on editor settings.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var code_preview = TextEdit.new()\n"
"var highlighter = GDScriptSyntaxHighlighter.new()\n"
"code_preview.syntax_highlighter = highlighter\n"
"[/gdscript]\n"
"[csharp]\n"
"var codePreview = new TextEdit();\n"
"var highlighter = new GDScriptSyntaxHighlighter();\n"
"codePreview.SyntaxHighlighter = highlighter;\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[b]Примечание:[/b] Этот класс можно использовать только для плагинов "
"редактора, поскольку он зависит от настроек редактора.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var code_preview = TextEdit.new()\n"
"var highlighter = GDScriptSyntaxHighlighter.new()\n"
"code_preview.syntax_highlighter = highlighter\n"
"[/gdscript]\n"
"[csharp]\n"
"var codePreview = new TextEdit();\n"
"var highlighter = new GDScriptSyntaxHighlighter();\n"
"codePreview.SyntaxHighlighter = highlighter;\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"A physics joint that allows for complex movement and rotation between two 3D "
"physics bodies."
msgstr ""
"Физический сустав, обеспечивающий сложные движения и вращения между двумя "
"трехмерными физическими телами."

msgid ""
"The [Generic6DOFJoint3D] (6 Degrees Of Freedom) joint allows for implementing "
"custom types of joints by locking the rotation and translation of certain "
"axes.\n"
"The first 3 DOF represent the linear motion of the physics bodies and the "
"last 3 DOF represent the angular motion of the physics bodies. Each axis can "
"be either locked, or limited."
msgstr ""
"[Generic6DOFJoint3D] (6 степеней свободы) соединение позволяет реализовывать "
"пользовательские типы соединений, блокируя вращение и перемещение "
"определенных осей.\n"
"Первые 3 степени свободы представляют линейное движение физических тел, а "
"последние 3 степени свободы представляют угловое движение физических тел. "
"Каждая ось может быть либо заблокирована, либо ограничена."

msgid ""
"The amount of rotational damping across the X axis.\n"
"The lower, the longer an impulse from one side takes to travel to the other "
"side."
msgstr ""
"Величина вращательного демпфирования по оси X. \n"
"Чем ниже, тем больше времени требуется импульсу с одной стороны, чтобы "
"переместиться на другую сторону."

msgid "If [code]true[/code], rotation across the X axis is limited."
msgstr "Если [code]true[/code], вращение по оси X ограничено."

msgid ""
"When rotating across the X axis, this error tolerance factor defines how much "
"the correction gets slowed down. The lower, the slower."
msgstr ""
"При вращении по оси X этот коэффициент допуска погрешности определяет, "
"насколько замедляется коррекция. Чем ниже, тем медленнее."

msgid ""
"The maximum amount of force that can occur, when rotating around the X axis."
msgstr ""
"Максимальное значение силы, которое может возникнуть при вращении вокруг оси "
"X."

msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the X axis."
msgstr ""
"Минимальное вращение в отрицательном направлении для освобождения и вращения "
"вокруг оси X."

msgid ""
"The amount of rotational restitution across the X axis. The lower, the more "
"restitution occurs."
msgstr ""
"Величина вращательного восстановления по оси X. Чем меньше, тем больше "
"происходит восстановление."

msgid "The speed of all rotations across the X axis."
msgstr "Скорость всех вращений по оси X."

msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the X axis."
msgstr ""
"Минимальное вращение в положительном направлении для отрыва и вращения вокруг "
"оси X."

msgid ""
"The amount of rotational damping across the Y axis. The lower, the more "
"damping occurs."
msgstr ""
"Величина вращательного демпфирования по оси Y. Чем ниже, тем больше "
"демпфирование."

msgid "If [code]true[/code], rotation across the Y axis is limited."
msgstr "Если [code]true[/code], вращение по оси Y ограничено."

msgid ""
"When rotating across the Y axis, this error tolerance factor defines how much "
"the correction gets slowed down. The lower, the slower."
msgstr ""
"При вращении по оси Y этот коэффициент допуска погрешности определяет, "
"насколько замедляется коррекция. Чем ниже, тем медленнее."

msgid ""
"The maximum amount of force that can occur, when rotating around the Y axis."
msgstr ""
"Максимальное значение силы, которое может возникнуть при вращении вокруг оси "
"Y."

msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the Y axis."
msgstr ""
"Максимальное значение силы, которое может возникнуть при вращении вокруг оси "
"Y."

msgid ""
"The amount of rotational restitution across the Y axis. The lower, the more "
"restitution occurs."
msgstr ""
"Величина вращательного восстановления по оси Y. Чем ниже, тем больше "
"происходит восстановление."

msgid "The speed of all rotations across the Y axis."
msgstr "Скорость всех вращений по оси Y."

msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the Y axis."
msgstr ""
"Минимальное вращение в положительном направлении для освобождения и вращения "
"вокруг оси Y."

msgid ""
"The amount of rotational damping across the Z axis. The lower, the more "
"damping occurs."
msgstr ""
"Величина вращательного демпфирования по оси Z. Чем ниже, тем больше "
"демпфирование."

msgid "If [code]true[/code], rotation across the Z axis is limited."
msgstr "Если [code]true[/code], вращение по оси Z ограничено."

msgid ""
"When rotating across the Z axis, this error tolerance factor defines how much "
"the correction gets slowed down. The lower, the slower."
msgstr ""
"При вращении по оси Z этот коэффициент допуска погрешности определяет, "
"насколько замедляется коррекция. Чем ниже, тем медленнее."

msgid ""
"The maximum amount of force that can occur, when rotating around the Z axis."
msgstr ""
"Максимальное значение силы, которое может возникнуть при вращении вокруг оси "
"Z."

msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the Z axis."
msgstr ""
"Минимальное вращение в отрицательном направлении для отрыва и вращения вокруг "
"оси Z."

msgid ""
"The amount of rotational restitution across the Z axis. The lower, the more "
"restitution occurs."
msgstr ""
"Величина вращательного восстановления по оси Z. Чем меньше, тем больше "
"происходит восстановление."

msgid "The speed of all rotations across the Z axis."
msgstr "Скорость всех вращений по оси Z."

msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the Z axis."
msgstr ""
"Минимальное вращение в положительном направлении для отрыва и вращения вокруг "
"оси Z."

msgid "If [code]true[/code], a rotating motor at the X axis is enabled."
msgstr "Если [code]true[/code], вращающийся двигатель по оси X включен."

msgid "Maximum acceleration for the motor at the X axis."
msgstr "Максимальное ускорение двигателя по оси X."

msgid "Target speed for the motor at the X axis."
msgstr "Целевая скорость двигателя по оси X."

msgid "If [code]true[/code], a rotating motor at the Y axis is enabled."
msgstr "Если [code]true[/code], вращающийся двигатель по оси Y включен."

msgid "Maximum acceleration for the motor at the Y axis."
msgstr "Максимальное ускорение двигателя по оси Y."

msgid "Target speed for the motor at the Y axis."
msgstr "Целевая скорость двигателя по оси Y."

msgid "If [code]true[/code], a rotating motor at the Z axis is enabled."
msgstr "Если [code]true[/code], вращающийся двигатель по оси Z включен."

msgid "Maximum acceleration for the motor at the Z axis."
msgstr "Максимальное ускорение двигателя по оси Z."

msgid "Target speed for the motor at the Z axis."
msgstr "Целевая скорость двигателя по оси Z."

msgid "The amount of damping that happens at the X motion."
msgstr "Величина затухания, происходящего при движении по оси X."

msgid "If [code]true[/code], the linear motion across the X axis is limited."
msgstr "Если [code]true[/code], линейное движение по оси X ограничено."

msgid "The minimum difference between the pivot points' X axis."
msgstr "Минимальная разница между точками поворота по оси X."

msgid ""
"The amount of restitution on the X axis movement. The lower, the more "
"momentum gets lost."
msgstr ""
"Величина восстановления движения по оси X. Чем ниже, тем больше теряется "
"импульс."

msgid ""
"A factor applied to the movement across the X axis. The lower, the slower the "
"movement."
msgstr ""
"Коэффициент, применяемый к движению по оси X. Чем меньше, тем медленнее "
"движение."

msgid "The maximum difference between the pivot points' X axis."
msgstr "Максимальная разница между точками поворота по оси X."

msgid "The amount of damping that happens at the Y motion."
msgstr "Величина затухания, происходящего при движении по оси Y."

msgid "If [code]true[/code], the linear motion across the Y axis is limited."
msgstr "Если [code]true[/code], линейное движение по оси Y ограничено."

msgid "The minimum difference between the pivot points' Y axis."
msgstr "Минимальная разница между точками поворота по оси Y."

msgid ""
"The amount of restitution on the Y axis movement. The lower, the more "
"momentum gets lost."
msgstr ""
"Величина восстановления движения по оси Y. Чем ниже, тем больше теряется "
"импульс."

msgid ""
"A factor applied to the movement across the Y axis. The lower, the slower the "
"movement."
msgstr ""
"Коэффициент, применяемый к движению по оси Y. Чем меньше, тем медленнее "
"движение."

msgid "The maximum difference between the pivot points' Y axis."
msgstr "Максимальная разница между точками поворота по оси Y."

msgid "The amount of damping that happens at the Z motion."
msgstr "Величина демпфирования, происходящего при движении по оси Z."

msgid "If [code]true[/code], the linear motion across the Z axis is limited."
msgstr "Если [code]true[/code], линейное движение по оси Z ограничено."

msgid "The minimum difference between the pivot points' Z axis."
msgstr "Минимальная разница между точками поворота по оси Z."

msgid ""
"The amount of restitution on the Z axis movement. The lower, the more "
"momentum gets lost."
msgstr ""
"Величина восстановления при движении по оси Z. Чем ниже, тем больше теряется "
"импульс."

msgid ""
"A factor applied to the movement across the Z axis. The lower, the slower the "
"movement."
msgstr ""
"Коэффициент, применяемый к движению по оси Z. Чем меньше, тем медленнее "
"движение."

msgid "The maximum difference between the pivot points' Z axis."
msgstr "Максимальная разница между точками поворота по оси Z."

msgid ""
"If [code]true[/code], then there is a linear motor on the X axis. It will "
"attempt to reach the target velocity while staying within the force limits."
msgstr ""
"Если [code]true[/code], то на оси X есть линейный двигатель. Он попытается "
"достичь целевой скорости, оставаясь в пределах силы."

msgid ""
"The maximum force the linear motor can apply on the X axis while trying to "
"reach the target velocity."
msgstr ""
"Максимальная сила, которую линейный двигатель может приложить по оси X, "
"пытаясь достичь целевой скорости."

msgid "The speed that the linear motor will attempt to reach on the X axis."
msgstr "Скорость, которую линейный двигатель будет пытаться достичь по оси X."

msgid ""
"If [code]true[/code], then there is a linear motor on the Y axis. It will "
"attempt to reach the target velocity while staying within the force limits."
msgstr ""
"Если [code]true[/code], то на оси Y есть линейный двигатель. Он попытается "
"достичь целевой скорости, оставаясь в пределах силы."

msgid ""
"The maximum force the linear motor can apply on the Y axis while trying to "
"reach the target velocity."
msgstr ""
"Максимальная сила, которую линейный двигатель может приложить по оси Y, "
"пытаясь достичь целевой скорости."

msgid "The speed that the linear motor will attempt to reach on the Y axis."
msgstr "Скорость, которую линейный двигатель будет пытаться достичь по оси Y."

msgid ""
"If [code]true[/code], then there is a linear motor on the Z axis. It will "
"attempt to reach the target velocity while staying within the force limits."
msgstr ""
"Если [code]true[/code], то на оси Z есть линейный двигатель. Он попытается "
"достичь целевой скорости, оставаясь в пределах силы."

msgid ""
"The maximum force the linear motor can apply on the Z axis while trying to "
"reach the target velocity."
msgstr ""
"Максимальная сила, которую линейный двигатель может приложить к оси Z, "
"пытаясь достичь целевой скорости."

msgid "The speed that the linear motor will attempt to reach on the Z axis."
msgstr "Скорость, которую линейный двигатель будет пытаться достичь по оси Z."

msgid "The minimum difference between the pivot points' axes."
msgstr "Минимальная разница между осями точек поворота."

msgid "The maximum difference between the pivot points' axes."
msgstr "Максимальная разница между осями точек поворота."

msgid ""
"A factor applied to the movement across the axes. The lower, the slower the "
"movement."
msgstr ""
"Фактор, применяемый к движению по осям. Чем ниже, тем медленнее движение."

msgid ""
"The amount of restitution on the axes' movement. The lower, the more momentum "
"gets lost."
msgstr ""
"Величина восстановления движения осей. Чем ниже, тем больше теряется импульс."

msgid "The amount of damping that happens at the linear motion across the axes."
msgstr "Величина амортизации, происходящего при линейном движении по осям."

msgid "The velocity the linear motor will try to reach."
msgstr "Скорость, которую будет пытаться достичь линейный двигатель."

msgid ""
"The maximum force the linear motor will apply while trying to reach the "
"velocity target."
msgstr ""
"Максимальная сила, которую будет прилагать линейный двигатель, пытаясь "
"достичь целевой скорости."

msgid ""
"The minimum rotation in negative direction to break loose and rotate around "
"the axes."
msgstr ""
"Минимальное вращение в отрицательном направлении для освобождения и вращения "
"вокруг осей."

msgid ""
"The minimum rotation in positive direction to break loose and rotate around "
"the axes."
msgstr ""
"Минимальное вращение в положительном направлении для освобождения и вращения "
"вокруг осей."

msgid "The speed of all rotations across the axes."
msgstr "Скорость всех вращений по осям."

msgid ""
"The amount of rotational damping across the axes. The lower, the more damping "
"occurs."
msgstr ""
"Величина вращательной амортизации по осям. Чем ниже, тем больше амортизация."

msgid ""
"The amount of rotational restitution across the axes. The lower, the more "
"restitution occurs."
msgstr ""
"Количество вращательного восстановления по осям. Чем ниже, тем больше "
"происходит восстановление."

msgid ""
"The maximum amount of force that can occur, when rotating around the axes."
msgstr ""
"Максимальное значение силы, которое может возникнуть при вращении вокруг осей."

msgid ""
"When rotating across the axes, this error tolerance factor defines how much "
"the correction gets slowed down. The lower, the slower."
msgstr ""
"При вращении по осям этот коэффициент допуска погрешности определяет, "
"насколько замедляется коррекция. Чем ниже, тем медленнее."

msgid "Target speed for the motor at the axes."
msgstr "Целевая скорость двигателя по осям."

msgid "Maximum acceleration for the motor at the axes."
msgstr "Максимальное ускорение двигателя по осям."

msgid "If enabled, linear motion is possible within the given limits."
msgstr "Если включено, линейное движение возможно в заданных пределах."

msgid "If enabled, rotational motion is possible within the given limits."
msgstr "Если включено, вращательное движение возможно в заданных пределах."

msgid "If enabled, there is a rotational motor across these axes."
msgstr "Если эта функция включена, по этим осям вращается двигатель."

msgid "If enabled, there is a linear motor across these axes."
msgstr "Если эта функция включена, по этим осям работает линейный двигатель."

msgid "Represents the size of the [enum Flag] enum."
msgstr "Представляет размер перечисления [enum Flag]."

msgid "Provides methods for some common 2D geometric operations."
msgstr ""
"Предоставляет методы для некоторых распространенных двумерных геометрических "
"операций."

msgid ""
"Provides a set of helper functions to create geometric shapes, compute "
"intersections between shapes, and process various other geometric operations "
"in 2D."
msgstr ""
"Предоставляет набор вспомогательных функций для создания геометрических "
"фигур, вычисления пересечений между фигурами и обработки различных других "
"геометрических операций в 2D."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/"
"Bresenham%27s_line_algorithm]Bresenham line[/url] between the [param from] "
"and [param to] points. A Bresenham line is a series of pixels that draws a "
"line and is always 1-pixel thick on every row and column of the drawing "
"(never more, never less).\n"
"Example code to draw a line between two [Marker2D] nodes using a series of "
"[method CanvasItem.draw_rect] calls:\n"
"[codeblock]\n"
"func _draw():\n"
"\tfor pixel in Geometry2D.bresenham_line($MarkerA.position, "
"$MarkerB.position):\n"
"\t\tdraw_rect(Rect2(pixel, Vector2.ONE), Color.WHITE)\n"
"[/codeblock]"
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/"
"Bresenham%27s_line_algorithm]линию Брезенхэма[/url] между точками [param "
"from] и [param to]. Линия Брезенхэма — это ряд пикселей, которые рисуют линию "
"и всегда имеют толщину 1 пиксель в каждой строке и столбце чертежа (ни "
"больше, ни меньше).\n"
"Пример кода для рисования линии между двумя узлами [Marker2D] с "
"использованием ряда вызовов [method CanvasItem.draw_rect]:\n"
"[codeblock]\n"
"func _draw():\n"
"\tfor pixel in Geometry2D.bresenham_line($MarkerA.position, "
"$MarkerB.position):\n"
"\t\tdraw_rect(Rect2(pixel, Vector2.ONE), Color.WHITE)\n"
"[/codeblock]"

msgid ""
"Clips [param polygon_a] against [param polygon_b] and returns an array of "
"clipped polygons. This performs [constant OPERATION_DIFFERENCE] between "
"polygons. Returns an empty array if [param polygon_b] completely overlaps "
"[param polygon_a].\n"
"If [param polygon_b] is enclosed by [param polygon_a], returns an outer "
"polygon (boundary) and inner polygon (hole) which could be distinguished by "
"calling [method is_polygon_clockwise]."
msgstr ""
"Обрезает [param polygon_a] по [param polygon_b] и возвращает массив "
"обрезанных полигонов. Это выполняет [constant OPERATION_DIFFERENCE] между "
"полигонами. Возвращает пустой массив, если [param polygon_b] полностью "
"перекрывает [param polygon_a].\n"
"Если [param polygon_b] заключен в [param polygon_a], возвращает внешний "
"полигон (границу) и внутренний полигон (отверстие), которые можно различить, "
"вызвав [method is_polygon_clock]."

msgid ""
"Clips [param polyline] against [param polygon] and returns an array of "
"clipped polylines. This performs [constant OPERATION_DIFFERENCE] between the "
"polyline and the polygon. This operation can be thought of as cutting a line "
"with a closed shape."
msgstr ""
"Обрезает [param polyline] по [param polygon] и возвращает массив обрезанных "
"полилиний. Это выполняет [constant OPERATION_DIFFERENCE] между полилинией и "
"полигоном. Эту операцию можно рассматривать как разрезание линии с замкнутой "
"формой."

msgid ""
"Given an array of [Vector2]s, returns the convex hull as a list of points in "
"counterclockwise order. The last point is the same as the first one."
msgstr ""
"Учитывая массив [Vector2], возвращает выпуклую оболочку как список точек в "
"порядке против часовой стрелки. Последняя точка совпадает с первой."

msgid ""
"Decomposes the [param polygon] into multiple convex hulls and returns an "
"array of [PackedVector2Array]."
msgstr ""
"Разбивает [param polygon] на несколько выпуклых оболочек и возвращает массив "
"[PackedVector2Array]."

msgid ""
"Mutually excludes common area defined by intersection of [param polygon_a] "
"and [param polygon_b] (see [method intersect_polygons]) and returns an array "
"of excluded polygons. This performs [constant OPERATION_XOR] between "
"polygons. In other words, returns all but common area between polygons.\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
"Взаимно исключает общую область, определенную пересечением [param polygon_a] "
"и [param polygon_b] (см. [method intersect_polygons]), и возвращает массив "
"исключенных полигонов. Это выполняет [constant OPERATION_XOR] между "
"полигонами. Другими словами, возвращает все, кроме общей области между "
"полигонами.\n"
"Операция может привести к получению внешнего полигона (границы) и внутреннего "
"полигона (отверстия), которые можно различить, вызвав [method "
"is_polygon_clock]."

msgid ""
"Returns the 2D point on the 2D segment ([param s1], [param s2]) that is "
"closest to [param point]. The returned point will always be inside the "
"specified segment."
msgstr ""
"Возвращает 2D-точку на 2D-сегменте ([param s1], [param s2]), которая "
"находится ближе всего к [param point]. Возвращаемая точка всегда будет "
"находиться внутри указанного сегмента."

msgid ""
"Returns the 2D point on the 2D line defined by ([param s1], [param s2]) that "
"is closest to [param point]. The returned point can be inside the segment "
"([param s1], [param s2]) or outside of it, i.e. somewhere on the line "
"extending from the segment."
msgstr ""
"Возвращает 2D-точку на 2D-линии, определенной ([param s1], [param s2]), "
"которая находится ближе всего к [param point]. Возвращаемая точка может "
"находиться внутри сегмента ([param s1], [param s2]) или за его пределами, т. "
"е. где-то на линии, выходящей из сегмента."

msgid ""
"Given the two 2D segments ([param p1], [param q1]) and ([param p2], [param "
"q2]), finds those two points on the two segments that are closest to each "
"other. Returns a [PackedVector2Array] that contains this point on ([param "
"p1], [param q1]) as well the accompanying point on ([param p2], [param q2])."
msgstr ""
"Учитывая два 2D-сегмента ([param p1], [param q1]) и ([param p2], [param q2]), "
"находит те две точки на двух сегментах, которые находятся ближе всего друг к "
"другу. Возвращает [PackedVector2Array], который содержит эту точку на ([param "
"p1], [param q1]), а также сопутствующую точку на ([param p2], [param q2])."

msgid ""
"Intersects [param polygon_a] with [param polygon_b] and returns an array of "
"intersected polygons. This performs [constant OPERATION_INTERSECTION] between "
"polygons. In other words, returns common area shared by polygons. Returns an "
"empty array if no intersection occurs.\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
"Пересекает [param polygon_a] с [param polygon_b] и возвращает массив "
"пересеченных полигонов. Это выполняет [constant OPERATION_INTERSECTION] между "
"полигонами. Другими словами, возвращает общую область, разделяемую "
"полигонами. Возвращает пустой массив, если пересечения не происходит.\n"
"Операция может привести к получению внешнего полигона (границы) и внутреннего "
"полигона (отверстия), которые можно различить, вызвав [method "
"is_polygon_clock]."

msgid ""
"Intersects [param polyline] with [param polygon] and returns an array of "
"intersected polylines. This performs [constant OPERATION_INTERSECTION] "
"between the polyline and the polygon. This operation can be thought of as "
"chopping a line with a closed shape."
msgstr ""
"Пересекает [param polyline] с [param polygon] и возвращает массив "
"пересеченных полилиний. Это выполняет [constant OPERATION_INTERSECTION] между "
"полилинией и полигоном. Эту операцию можно рассматривать как нарезание линии "
"замкнутой формой."

msgid ""
"Returns [code]true[/code] if [param point] is inside the circle or if it's "
"located exactly [i]on[/i] the circle's boundary, otherwise returns "
"[code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если [param point] находится внутри круга или "
"если он расположен точно [i]на[/i] границе круга, в противном случае "
"возвращает [code]false[/code]."

msgid ""
"Returns [code]true[/code] if [param point] is inside [param polygon] or if "
"it's located exactly [i]on[/i] polygon's boundary, otherwise returns "
"[code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если [param point] находится внутри [param "
"polygon] или если она расположена точно [i]на[/i] границе полигона, в "
"противном случае возвращает [code]false[/code]."

msgid ""
"Returns [code]true[/code] if [param polygon]'s vertices are ordered in "
"clockwise order, otherwise returns [code]false[/code].\n"
"[b]Note:[/b] Assumes a Cartesian coordinate system where [code]+x[/code] is "
"right and [code]+y[/code] is up. If using screen coordinates ([code]+y[/code] "
"is down), the result will need to be flipped (i.e. a [code]true[/code] result "
"will indicate counter-clockwise)."
msgstr ""
"Возвращает [code]true[/code], если вершины [param polygon] упорядочены по "
"часовой стрелке, в противном случае возвращает [code]false[/code].\n"
"[b]Примечание:[/b] Предполагается декартова система координат, где [code]+x[/"
"code] — справа, а [code]+y[/code] — сверху. При использовании экранных "
"координат ([code]+y[/code] — снизу), результат необходимо будет перевернуть "
"(т. е. результат [code]true[/code] будет указывать против часовой стрелки)."

msgid ""
"Returns the point of intersection between the two lines ([param from_a], "
"[param dir_a]) and ([param from_b], [param dir_b]). Returns a [Vector2], or "
"[code]null[/code] if the lines are parallel.\n"
"[code]from[/code] and [code]dir[/code] are [i]not[/i] endpoints of a line "
"segment or ray but the slope ([code]dir[/code]) and a known point "
"([code]from[/code]) on that line.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var from_a = Vector2.ZERO\n"
"var dir_a = Vector2.RIGHT\n"
"var from_b = Vector2.DOWN\n"
"\n"
"# Returns Vector2(1, 0)\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2(1, -1))\n"
"# Returns Vector2(-1, 0)\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2(-1, -1))\n"
"# Returns null\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2.RIGHT)\n"
"[/gdscript]\n"
"[csharp]\n"
"var fromA = Vector2.Zero;\n"
"var dirA = Vector2.Right;\n"
"var fromB = Vector2.Down;\n"
"\n"
"// Returns new Vector2(1, 0)\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, new Vector2(1, -1));\n"
"// Returns new Vector2(-1, 0)\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, new Vector2(-1, -1));\n"
"// Returns null\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, Vector2.Right);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает точку пересечения между двумя линиями ([param from_a], [param "
"dir_a]) и ([param from_b], [param dir_b]). Возвращает [Vector2] или "
"[code]null[/code], если линии параллельны.\n"
"[code]from[/code] и [code]dir[/code] являются [i]не[/i] конечными точками "
"отрезка линии или луча, а наклоном ([code]dir[/code]) и известной точкой "
"([code]from[/code]) на этой линии.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var from_a = Vector2.ZERO\n"
"var dir_a = Vector2.RIGHT\n"
"var from_b = Vector2.DOWN\n"
"\n"
"# Возвращает Vector2(1, 0)\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2(1, -1))\n"
"# Возвращает Vector2(-1, 0)\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2(-1, -1))\n"
"# Возвращает null\n"
"Geometry2D.line_intersects_line(from_a, dir_a, from_b, Vector2.RIGHT)\n"
"[/gdscript]\n"
"[csharp]\n"
"var fromA = Vector2.Zero;\n"
"var dirA = Vector2.Right;\n"
"var fromB = Vector2.Down;\n"
"\n"
"// Возвращает new Vector2(1, 0)\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, new Vector2(1, -1));\n"
"// Возвращает new Vector2(-1, 0)\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, new Vector2(-1, -1));\n"
"# Возвращает null\n"
"Geometry2D.LineIntersectsLine(fromA, dirA, fromB, Vector2.Right);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Given an array of [Vector2]s representing tiles, builds an atlas. The "
"returned dictionary has two keys: [code]points[/code] is a "
"[PackedVector2Array] that specifies the positions of each tile, [code]size[/"
"code] contains the overall size of the whole atlas as [Vector2i]."
msgstr ""
"Учитывая массив [Vector2], представляющий тайлы, создает атлас. Возвращаемый "
"словарь имеет два ключа: [code]points[/code] — это [PackedVector2Array], "
"который определяет позиции каждого тайла, и [code]size[/code] содержит общий "
"размер всего атласа как [Vector2i]."

msgid ""
"Merges (combines) [param polygon_a] and [param polygon_b] and returns an "
"array of merged polygons. This performs [constant OPERATION_UNION] between "
"polygons.\n"
"The operation may result in an outer polygon (boundary) and multiple inner "
"polygons (holes) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
"Объединяет (комбинирует) [param polygon_a] и [param polygon_b] и возвращает "
"массив объединенных полигонов. Это выполняет [constant OPERATION_UNION] между "
"полигонами.\n"
"Операция может привести к образованию внешнего полигона (границы) и "
"нескольких внутренних полигонов (отверстий), которые можно различить, вызвав "
"[method is_polygon_clock]."

msgid ""
"Inflates or deflates [param polygon] by [param delta] units (pixels). If "
"[param delta] is positive, makes the polygon grow outward. If [param delta] "
"is negative, shrinks the polygon inward. Returns an array of polygons because "
"inflating/deflating may result in multiple discrete polygons. Returns an "
"empty array if [param delta] is negative and the absolute value of it "
"approximately exceeds the minimum bounding rectangle dimensions of the "
"polygon.\n"
"Each polygon's vertices will be rounded as determined by [param join_type].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise].\n"
"[b]Note:[/b] To translate the polygon's vertices specifically, multiply them "
"to a [Transform2D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
"Vector2(100, 100), Vector2(0, 100)])\n"
"var offset = Vector2(50, 50)\n"
"polygon = Transform2D(0, offset) * polygon\n"
"print(polygon) # Prints [(50.0, 50.0), (150.0, 50.0), (150.0, 150.0), (50.0, "
"150.0)]\n"
"[/gdscript]\n"
"[csharp]\n"
"Vector2[] polygon = [new Vector2(0, 0), new Vector2(100, 0), new Vector2(100, "
"100), new Vector2(0, 100)];\n"
"var offset = new Vector2(50, 50);\n"
"polygon = new Transform2D(0, offset) * polygon;\n"
"GD.Print((Variant)polygon); // Prints [(50, 50), (150, 50), (150, 150), (50, "
"150)]\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Раздувает или сдувает [param polygon] на [param delta] единиц (пикселей). "
"Если [param delta] положительно, то полигон растет наружу. Если [param delta] "
"отрицательно, то полигон сжимается внутрь. Возвращает массив полигонов, "
"поскольку раздувание/сдувание может привести к появлению нескольких "
"дискретных полигонов. Возвращает пустой массив, если [param delta] "
"отрицательно и его абсолютное значение приблизительно превышает минимальные "
"размеры ограничивающего прямоугольника полигона.\n"
"Вершины каждого полигона будут округлены, как определено [param join_type].\n"
"Операция может привести к получению внешнего полигона (границы) и внутреннего "
"полигона (отверстия), которые можно различить, вызвав [method "
"is_polygon_clock].\n"
"[b]Примечание:[/b] Чтобы переместить вершины полигона конкретно, умножьте их "
"на [Transform2D]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon = PackedVector2Array([Vector2(0, 0), Vector2(100, 0), "
"Vector2(100, 100), Vector2(0, 100)])\n"
"var offset = Vector2(50, 50)\n"
"polygon = Transform2D(0, offset) * polygon\n"
"print(polygon) # Выводит [(50.0, 50.0), (150.0, 50.0), (150.0, 150.0), (50.0, "
"150.0)]\n"
"[/gdscript]\n"
"[csharp]\n"
"Vector2[] polygon = [new Vector2(0, 0), new Vector2(100, 0), new Vector2(100, "
"100), new Vector2(0, 100)];\n"
"var offset = new Vector2(50, 50);\n"
"polygon = new Transform2D(0, offset) * polygon;\n"
"GD.Print((Variant)polygon); // Выводит [(50, 50), (150, 50), (150, 150), (50, "
"150)]\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Inflates or deflates [param polyline] by [param delta] units (pixels), "
"producing polygons. If [param delta] is positive, makes the polyline grow "
"outward. Returns an array of polygons because inflating/deflating may result "
"in multiple discrete polygons. If [param delta] is negative, returns an empty "
"array.\n"
"Each polygon's vertices will be rounded as determined by [param join_type].\n"
"Each polygon's endpoints will be rounded as determined by [param end_type].\n"
"The operation may result in an outer polygon (boundary) and inner polygon "
"(hole) produced which could be distinguished by calling [method "
"is_polygon_clockwise]."
msgstr ""
"Раздувает или сдувает [param polyline] на [param delta] единиц (пикселей), "
"создавая полигоны. Если [param delta] положительно, полилиния растет наружу. "
"Возвращает массив полигонов, поскольку раздувание/сдувание может привести к "
"появлению нескольких дискретных полигонов. Если [param delta] отрицательно, "
"возвращает пустой массив.\n"
"Вершины каждого полигона будут округлены, как определено [param join_type].\n"
"Конечные точки каждого полигона будут округлены, как определено [param "
"end_type].\n"
"В результате операции могут быть получены внешний полигон (граница) и "
"внутренний полигон (отверстие), которые можно различить, вызвав [method "
"is_polygon_clock]."

msgid ""
"Returns if [param point] is inside the triangle specified by [param a], "
"[param b] and [param c]."
msgstr ""
"Возвращает, если [param point] находится внутри треугольника, заданного "
"[param a], [param b] и [param c]."

msgid ""
"Given the 2D segment ([param segment_from], [param segment_to]), returns the "
"position on the segment (as a number between 0 and 1) at which the segment "
"hits the circle that is located at position [param circle_position] and has "
"radius [param circle_radius]. If the segment does not intersect the circle, "
"-1 is returned (this is also the case if the line extending the segment would "
"intersect the circle, but the segment does not)."
msgstr ""
"Учитывая 2D-сегмент ([param segment_from], [param segment_to]), возвращает "
"позицию на сегменте (как число от 0 до 1), в которой сегмент касается "
"окружности, расположенной в позиции [param circle_position] и имеющей радиус "
"[param circle_radius]. Если сегмент не пересекает окружность, возвращается -1 "
"(это также имеет место, если линия, продолжающая сегмент, пересекает "
"окружность, но не пересекает сегмент)."

msgid ""
"Checks if the two segments ([param from_a], [param to_a]) and ([param "
"from_b], [param to_b]) intersect. If yes, return the point of intersection as "
"[Vector2]. If no intersection takes place, returns [code]null[/code]."
msgstr ""
"Проверяет, пересекаются ли два сегмента ([param from_a], [param to_a]) и "
"([param from_b], [param to_b]). Если да, возвращает точку пересечения как "
"[Vector2]. Если пересечения не происходит, возвращает [code]null[/code]."

msgid ""
"Triangulates the area specified by discrete set of [param points] such that "
"no point is inside the circumcircle of any resulting triangle. Returns a "
"[PackedInt32Array] where each triangle consists of three consecutive point "
"indices into [param points] (i.e. the returned array will have [code]n * 3[/"
"code] elements, with [code]n[/code] being the number of found triangles). If "
"the triangulation did not succeed, an empty [PackedInt32Array] is returned."
msgstr ""
"Триангулирует область, указанную дискретным набором [param points], таким "
"образом, что ни одна точка не находится внутри описанной окружности любого "
"полученного треугольника. Возвращает [PackedInt32Array], где каждый "
"треугольник состоит из трех последовательных индексов точек в [param points] "
"(т. е. возвращаемый массив будет иметь [code]n * 3[/code] элементов, где "
"[code]n[/code] — количество найденных треугольников). Если триангуляция не "
"удалась, возвращается пустой [PackedInt32Array]."

msgid ""
"Triangulates the polygon specified by the points in [param polygon]. Returns "
"a [PackedInt32Array] where each triangle consists of three consecutive point "
"indices into [param polygon] (i.e. the returned array will have [code]n * 3[/"
"code] elements, with [code]n[/code] being the number of found triangles). "
"Output triangles will always be counter clockwise, and the contour will be "
"flipped if it's clockwise. If the triangulation did not succeed, an empty "
"[PackedInt32Array] is returned."
msgstr ""
"Триангулирует многоугольник, указанный точками в [param polygon]. Возвращает "
"[PackedInt32Array], где каждый треугольник состоит из трех последовательных "
"индексов точек в [param polygon] (т. е. возвращаемый массив будет иметь "
"[code]n * 3[/code] элементов, где [code]n[/code] — количество найденных "
"треугольников). Выходные треугольники всегда будут против часовой стрелки, а "
"контур будет перевернут, если он по часовой стрелке. Если триангуляция не "
"удалась, возвращается пустой [PackedInt32Array]."

msgid ""
"Create regions where either subject or clip polygons (or both) are filled."
msgstr ""
"Создайте области, в которых заполнены либо объектные, либо отсекающие "
"полигоны (или и те, и другие)."

msgid ""
"Create regions where subject polygons are filled except where clip polygons "
"are filled."
msgstr ""
"Создайте области, в которых заполнены полигоны субъекта, за исключением "
"областей, где заполнены полигоны обрезки."

msgid "Create regions where both subject and clip polygons are filled."
msgstr ""
"Создайте области, в которых заполнены как полигоны объекта, так и полигоны "
"клипа."

msgid ""
"Create regions where either subject or clip polygons are filled but not where "
"both are filled."
msgstr ""
"Создавайте области, в которых заполнены либо полигоны объекта, либо полигоны "
"обрезки, но не области, в которых заполнены оба полигона."

msgid ""
"Squaring is applied uniformally at all convex edge joins at [code]1 * delta[/"
"code]."
msgstr ""
"Возведение в квадрат применяется равномерно ко всем выпуклым ребрам при "
"[code]1 * delta[/code]."

msgid ""
"While flattened paths can never perfectly trace an arc, they are approximated "
"by a series of arc chords."
msgstr ""
"Хотя сглаженные траектории никогда не могут идеально описывать дугу, они "
"аппроксимируются серией хорд дуг."

msgid ""
"There's a necessary limit to mitered joins since offsetting edges that join "
"at very acute angles will produce excessively long and narrow \"spikes\". For "
"any given edge join, when miter offsetting would exceed that maximum "
"distance, \"square\" joining is applied."
msgstr ""
"Существует необходимый предел для соединений под углом, поскольку смещение "
"кромок, которые соединяются под очень острыми углами, приведет к образованию "
"чрезмерно длинных и узких «шипов». Для любого соединения кромок, если "
"смещение под углом превышает максимальное расстояние, применяется "
"«квадратное» соединение."

msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polygon."
msgstr ""
"Конечные точки соединяются с использованием значения [enum PolyJoinType], а "
"путь заполняется в виде многоугольника."

msgid ""
"Endpoints are joined using the [enum PolyJoinType] value and the path filled "
"as a polyline."
msgstr ""
"Конечные точки соединяются с использованием значения [enum PolyJoinType], а "
"путь заполняется в виде полилинии."

msgid "Endpoints are squared off with no extension."
msgstr "Конечные точки имеют квадратную форму и не имеют расширения."

msgid "Endpoints are squared off and extended by [code]delta[/code] units."
msgstr ""
"Конечные точки возводятся в квадрат и расширяются на единицы [code]delta[/"
"code]."

msgid "Endpoints are rounded off and extended by [code]delta[/code] units."
msgstr "Конечные точки округляются и расширяются на единицы [code]delta[/code]."

msgid "Provides methods for some common 3D geometric operations."
msgstr ""
"Предоставляет методы для некоторых распространенных трехмерных геометрических "
"операций."

msgid ""
"Provides a set of helper functions to create geometric shapes, compute "
"intersections between shapes, and process various other geometric operations "
"in 3D."
msgstr ""
"Предоставляет набор вспомогательных функций для создания геометрических "
"фигур, вычисления пересечений между фигурами и обработки различных других "
"геометрических операций в 3D."

msgid ""
"Returns an array with 6 [Plane]s that describe the sides of a box centered at "
"the origin. The box size is defined by [param extents], which represents one "
"(positive) corner of the box (i.e. half its actual size)."
msgstr ""
"Возвращает массив с 6 [Plane], которые описывают стороны коробки с центром в "
"начале координат. Размер коробки определяется [param extends], который "
"представляет один (положительный) угол коробки (т. е. половину ее "
"фактического размера)."

msgid ""
"Returns an array of [Plane]s closely bounding a faceted capsule centered at "
"the origin with radius [param radius] and height [param height]. The "
"parameter [param sides] defines how many planes will be generated for the "
"side part of the capsule, whereas [param lats] gives the number of "
"latitudinal steps at the bottom and top of the capsule. The parameter [param "
"axis] describes the axis along which the capsule is oriented (0 for X, 1 for "
"Y, 2 for Z)."
msgstr ""
"Возвращает массив [Plane], тесно ограничивающих граненую капсулу с центром в "
"начале координат с радиусом [param radius] и высотой [param height]. Параметр "
"[param sides] определяет, сколько плоскостей будет сгенерировано для боковой "
"части капсулы, тогда как [param lats] задает количество широтных шагов внизу "
"и вверху капсулы. Параметр [param axis] описывает ось, вдоль которой "
"ориентирована капсула (0 для X, 1 для Y, 2 для Z)."

msgid ""
"Returns an array of [Plane]s closely bounding a faceted cylinder centered at "
"the origin with radius [param radius] and height [param height]. The "
"parameter [param sides] defines how many planes will be generated for the "
"round part of the cylinder. The parameter [param axis] describes the axis "
"along which the cylinder is oriented (0 for X, 1 for Y, 2 for Z)."
msgstr ""
"Возвращает массив [Plane], тесно ограничивающих граненый цилиндр с центром в "
"начале координат с радиусом [param radius] и высотой [param height]. Параметр "
"[param sides] определяет, сколько плоскостей будет создано для круглой части "
"цилиндра. Параметр [param axis] описывает ось, вдоль которой ориентирован "
"цилиндр (0 для X, 1 для Y, 2 для Z)."

msgid ""
"Clips the polygon defined by the points in [param points] against the [param "
"plane] and returns the points of the clipped polygon."
msgstr ""
"Обрезает многоугольник, определенный точками в [param points], относительно "
"[param plane] и возвращает точки обрезанного многоугольника."

msgid ""
"Calculates and returns all the vertex points of a convex shape defined by an "
"array of [param planes]."
msgstr ""
"Вычисляет и возвращает все вершинные точки выпуклой фигуры, заданной массивом "
"[param planes]."

msgid ""
"Returns the 3D point on the 3D segment ([param s1], [param s2]) that is "
"closest to [param point]. The returned point will always be inside the "
"specified segment."
msgstr ""
"Возвращает 3D-точку на 3D-сегменте ([param s1], [param s2]), которая "
"находится ближе всего к [param point]. Возвращаемая точка всегда будет "
"находиться внутри указанного сегмента."

msgid ""
"Returns the 3D point on the 3D line defined by ([param s1], [param s2]) that "
"is closest to [param point]. The returned point can be inside the segment "
"([param s1], [param s2]) or outside of it, i.e. somewhere on the line "
"extending from the segment."
msgstr ""
"Возвращает 3D-точку на 3D-линии, определенной ([param s1], [param s2]), "
"которая находится ближе всего к [param point]. Возвращаемая точка может "
"находиться внутри сегмента ([param s1], [param s2]) или за его пределами, т. "
"е. где-то на линии, выходящей из сегмента."

msgid ""
"Given the two 3D segments ([param p1], [param p2]) and ([param q1], [param "
"q2]), finds those two points on the two segments that are closest to each "
"other. Returns a [PackedVector3Array] that contains this point on ([param "
"p1], [param p2]) as well the accompanying point on ([param q1], [param q2])."
msgstr ""
"Учитывая два 3D-сегмента ([param p1], [param p2]) и ([param q1], [param q2]), "
"находит те две точки на двух сегментах, которые находятся ближе всего друг к "
"другу. Возвращает [PackedVector3Array], который содержит эту точку на ([param "
"p1], [param p2]), а также сопутствующую точку на ([param q1], [param q2])."

msgid ""
"Returns a [Vector3] containing weights based on how close a 3D position "
"([param point]) is to a triangle's different vertices ([param a], [param b] "
"and [param c]). This is useful for interpolating between the data of "
"different vertices in a triangle. One example use case is using this to "
"smoothly rotate over a mesh instead of relying solely on face normals.\n"
"[url=https://en.wikipedia.org/wiki/Barycentric_coordinate_system]Here is a "
"more detailed explanation of barycentric coordinates.[/url]"
msgstr ""
"Возвращает [Vector3], содержащий веса, основанные на том, насколько близко 3D-"
"позиция ([param point]) находится к различным вершинам треугольника ([param "
"a], [param b] и [param c]). Это полезно для интерполяции между данными "
"различных вершин в треугольнике. Одним из примеров использования является "
"использование этого для плавного вращения по сетке вместо того, чтобы "
"полагаться исключительно на нормали граней.\n"
"[url=https://en.wikipedia.org/wiki/Barycentric_coordinate_system]Вот более "
"подробное объяснение барицентрических координат.[/url]"

msgid ""
"Tests if the 3D ray starting at [param from] with the direction of [param "
"dir] intersects the triangle specified by [param a], [param b] and [param c]. "
"If yes, returns the point of intersection as [Vector3]. If no intersection "
"takes place, returns [code]null[/code]."
msgstr ""
"Проверяет, пересекает ли 3D-луч, начинающийся в [param from] с направлением "
"[param dir], с треугольником, заданным [param a], [param b] и [param c]. Если "
"да, возвращает точку пересечения как [Vector3]. Если пересечения не "
"происходит, возвращает [code]null[/code]."

msgid ""
"Given a convex hull defined though the [Plane]s in the array [param planes], "
"tests if the segment ([param from], [param to]) intersects with that hull. If "
"an intersection is found, returns a [PackedVector3Array] containing the point "
"the intersection and the hull's normal. Otherwise, returns an empty array."
msgstr ""
"Учитывая выпуклую оболочку, определенную через [Plane]-ы в массиве [param "
"planes], проверяет, пересекается ли сегмент ([param from], [param to]) с этой "
"оболочкой. Если пересечение найдено, возвращает [PackedVector3Array], "
"содержащий точку пересечения и нормаль оболочки. В противном случае "
"возвращает пустой массив."

msgid ""
"Checks if the segment ([param from], [param to]) intersects the cylinder with "
"height [param height] that is centered at the origin and has radius [param "
"radius]. If no, returns an empty [PackedVector3Array]. If an intersection "
"takes place, the returned array contains the point of intersection and the "
"cylinder's normal at the point of intersection."
msgstr ""
"Проверяет, пересекает ли сегмент ([param from], [param to]) цилиндр с высотой "
"[param height], центрированный в начале координат и имеющий радиус [param "
"radius]. Если нет, возвращает пустой [PackedVector3Array]. Если пересечение "
"имеет место, возвращаемый массив содержит точку пересечения и нормаль "
"цилиндра в точке пересечения."

msgid ""
"Checks if the segment ([param from], [param to]) intersects the sphere that "
"is located at [param sphere_position] and has radius [param sphere_radius]. "
"If no, returns an empty [PackedVector3Array]. If yes, returns a "
"[PackedVector3Array] containing the point of intersection and the sphere's "
"normal at the point of intersection."
msgstr ""
"Проверяет, пересекает ли сегмент ([param from], [param to]) сферу, "
"расположенную в [param spheric_position] и имеющую радиус [param "
"spheric_radius]. Если нет, возвращает пустой [PackedVector3Array]. Если да, "
"возвращает [PackedVector3Array], содержащий точку пересечения и нормаль сферы "
"в точке пересечения."

msgid ""
"Tests if the segment ([param from], [param to]) intersects the triangle "
"[param a], [param b], [param c]. If yes, returns the point of intersection as "
"[Vector3]. If no intersection takes place, returns [code]null[/code]."
msgstr ""
"Проверяет, пересекает ли сегмент ([param from], [param to]) треугольник "
"[param a], [param b], [param c]. Если да, возвращает точку пересечения как "
"[Vector3]. Если пересечения не происходит, возвращает [code]null[/code]."

msgid ""
"Tetrahedralizes the volume specified by a discrete set of [param points] in "
"3D space, ensuring that no point lies within the circumsphere of any "
"resulting tetrahedron. The method returns a [PackedInt32Array] where each "
"tetrahedron consists of four consecutive point indices into the [param "
"points] array (resulting in an array with [code]n * 4[/code] elements, where "
"[code]n[/code] is the number of tetrahedra found). If the tetrahedralization "
"is unsuccessful, an empty [PackedInt32Array] is returned."
msgstr ""
"Тетраэдрализует объем, заданный дискретным набором [param points] в "
"трехмерном пространстве, гарантируя, что ни одна точка не лежит внутри "
"описанной сферы любого полученного тетраэдра. Метод возвращает "
"[PackedInt32Array], где каждый тетраэдр состоит из четырех последовательных "
"индексов точек в массиве [param points] (что приводит к массиву с [code]n * "
"4[/code] элементами, где [code]n[/code] — количество найденных тетраэдров). "
"Если тетраэдрализация не удалась, возвращается пустой [PackedInt32Array]."

msgid "Base node for geometry-based visual instances."
msgstr "Базовый узел для визуальных экземпляров на основе геометрии."

msgid ""
"Base node for geometry-based visual instances. Shares some common "
"functionality like visibility and custom materials."
msgstr ""
"Базовый узел для визуальных экземпляров на основе геометрии. Имеет некоторые "
"общие функции, такие как видимость и пользовательские материалы."

msgid "Visibility ranges (HLOD)"
msgstr "Диапазоны видимости (HLOD)"

msgid ""
"Set the value of a shader uniform for this instance only ([url=$DOCS_URL/"
"tutorials/shaders/shader_reference/shading_language.html#per-instance-"
"uniforms]per-instance uniform[/url]). See also [method "
"ShaderMaterial.set_shader_parameter] to assign a uniform on all instances "
"using the same [ShaderMaterial].\n"
"[b]Note:[/b] For a shader uniform to be assignable on a per-instance basis, "
"it [i]must[/i] be defined with [code]instance uniform ...[/code] rather than "
"[code]uniform ...[/code] in the shader code.\n"
"[b]Note:[/b] [param name] is case-sensitive and must match the name of the "
"uniform in the code exactly (not the capitalized name in the inspector).\n"
"[b]Note:[/b] Per-instance shader uniforms are only available in Spatial and "
"CanvasItem shaders, but not for Fog, Sky, or Particles shaders."
msgstr ""
"Установите значение шейдерной униформы только для этого экземпляра "
"([url=$DOCS_URL/tutorials/shaders/shader_reference/shading_language.html#per-"
"instance-uniforms]per-instance униформа[/url]). См. также [method "
"ShaderMaterial.set_shader_parameter], чтобы назначить униформу для всех "
"экземпляров, использующих один и тот же [ShaderMaterial].\n"
"[b]Примечание:[/b] Чтобы шейдерную униформу можно было назначать для каждого "
"экземпляра, она [i]должна[/i] быть определена с помощью [code]instance "
"uniform ...[/code], а не [code]uniform ...[/code] в коде шейдера.\n"
"[b]Примечание:[/b] [param name] чувствительна к регистру и должна точно "
"соответствовать имени униформы в коде (а не заглавному имени в инспекторе).\n"
"[b]Примечание:[/b] Униформы шейдера для каждого экземпляра доступны только в "
"шейдерах Spatial и CanvasItem, но не для шейдеров Fog, Sky или Particles."

msgid "The selected shadow casting flag."
msgstr "Выбранный флаг отбрасывания тени."

msgid ""
"Overrides the bounding box of this node with a custom one. This can be used "
"to avoid the expensive [AABB] recalculation that happens when a skeleton is "
"used with a [MeshInstance3D] or to have precise control over the "
"[MeshInstance3D]'s bounding box. To use the default AABB, set value to an "
"[AABB] with all fields set to [code]0.0[/code]. To avoid frustum culling, set "
"[member custom_aabb] to a very large AABB that covers your entire game world "
"such as [code]AABB(-10000, -10000, -10000, 20000, 20000, 20000)[/code]. To "
"disable all forms of culling (including occlusion culling), call [method "
"RenderingServer.instance_set_ignore_culling] on the [GeometryInstance3D]'s "
"[RID]."
msgstr ""
"Переопределяет ограничивающий прямоугольник этого узла на пользовательский. "
"Это можно использовать, чтобы избежать дорогостоящего пересчета [AABB], "
"который происходит, когда скелет используется с [MeshInstance3D], или чтобы "
"иметь точный контроль над ограничивающим прямоугольником [MeshInstance3D]. "
"Чтобы использовать AABB по умолчанию, установите значение [AABB] со всеми "
"полями, установленными на [code]0.0[/code]. Чтобы избежать отбраковки по "
"усеченному контуру, установите [member custom_aabb] на очень большой AABB, "
"который охватывает весь ваш игровой мир, например [code]AABB(-10000, -10000, "
"-10000, 20000, 20000, 20000)[/code]. Чтобы отключить все формы отсечения "
"(включая отсечение окклюзии), вызовите [method "
"RenderingServer.instance_set_ignore_culling] для [RID] [GeometryInstance3D]."

msgid ""
"The extra distance added to the GeometryInstance3D's bounding box ([AABB]) to "
"increase its cull box."
msgstr ""
"Дополнительное расстояние, добавленное к ограничивающему прямоугольнику "
"GeometryInstance3D ([AABB]) для увеличения его области отбраковки."

msgid "Use [member gi_lightmap_texel_scale] instead."
msgstr "Вместо этого используйте [member gi_lightmap_texel_scale]."

msgid "The texel density to use for lightmapping in [LightmapGI]."
msgstr ""
"Плотность текселей, используемая для отображения освещения в [LightmapGI]."

msgid ""
"The texel density to use for lightmapping in [LightmapGI]. Greater scale "
"values provide higher resolution in the lightmap, which can result in sharper "
"shadows for lights that have both direct and indirect light baked. However, "
"greater scale values will also increase the space taken by the mesh in the "
"lightmap texture, which increases the memory, storage, and bake time "
"requirements. When using a single mesh at different scales, consider "
"adjusting this value to keep the lightmap texel density consistent across "
"meshes.\n"
"For example, doubling [member gi_lightmap_texel_scale] doubles the lightmap "
"texture resolution for this object [i]on each axis[/i], so it will "
"[i]quadruple[/i] the texel count."
msgstr ""
"Плотность текселей для использования при отображении освещения в "
"[LightmapGI]. Большие значения масштаба обеспечивают более высокое разрешение "
"в карте освещения, что может привести к более резким теням для источников "
"света, которые имеют как прямой, так и непрямой свет, запеченный. Однако "
"большие значения масштаба также увеличат пространство, занимаемое сеткой в "
"текстуре карты освещения, что увеличивает требования к памяти, хранению и "
"времени запекания. При использовании одной сетки в разных масштабах "
"рассмотрите возможность корректировки этого значения, чтобы сохранить "
"плотность текселей карты освещения одинаковой для всех сеток.\n"
"Например, удвоение [member gi_lightmap_texel_scale] удваивает разрешение "
"текстуры карты освещения для этого объекта [i]на каждой оси[/i], поэтому это "
"[i]учетверит[/i] количество текселей."

msgid ""
"The global illumination mode to use for the whole geometry. To avoid "
"inconsistent results, use a mode that matches the purpose of the mesh during "
"gameplay (static/dynamic).\n"
"[b]Note:[/b] Lights' bake mode will also affect the global illumination "
"rendering. See [member Light3D.light_bake_mode]."
msgstr ""
"Режим глобального освещения для использования во всей геометрии. Чтобы "
"избежать непоследовательных результатов, используйте режим, который "
"соответствует назначению сетки во время игры (статичный/динамичный).\n"
"[b]Примечание:[/b] Режим запекания источников света также повлияет на "
"рендеринг глобального освещения. См. [member Light3D.light_bake_mode]."

msgid ""
"If [code]true[/code], disables occlusion culling for this instance. Useful "
"for gizmos that must be rendered even when occlusion culling is in use.\n"
"[b]Note:[/b] [member ignore_occlusion_culling] does not affect frustum "
"culling (which is what happens when an object is not visible given the "
"camera's angle). To avoid frustum culling, set [member custom_aabb] to a very "
"large AABB that covers your entire game world such as [code]AABB(-10000, "
"-10000, -10000, 20000, 20000, 20000)[/code]."
msgstr ""
"Если [code]true[/code], отключает отсечение окклюзии для этого экземпляра. "
"Полезно для гизмо, которые должны быть визуализированы даже при использовании "
"отсечения окклюзии.\n"
"[b]Примечание:[/b] [member ignore_occlusion_culling] не влияет на отсечение "
"усеченной пирамиды (что происходит, когда объект не виден из-за угла камеры). "
"Чтобы избежать отсечения усеченной пирамиды, установите [member custom_aabb] "
"на очень большой AABB, который охватывает весь ваш игровой мир, например, "
"[code]AABB(-10000, -10000, -10000, 20000, 20000, 20000)[/code]."

msgid ""
"Changes how quickly the mesh transitions to a lower level of detail. A value "
"of 0 will force the mesh to its lowest level of detail, a value of 1 will use "
"the default settings, and larger values will keep the mesh in a higher level "
"of detail at farther distances.\n"
"Useful for testing level of detail transitions in the editor."
msgstr ""
"Изменяет скорость перехода сетки на более низкий уровень детализации. "
"Значение 0 принудительно переведет сетку на самый низкий уровень детализации, "
"значение 1 будет использовать настройки по умолчанию, а более высокие "
"значения будут поддерживать сетку на более высоком уровне детализации на "
"более дальних расстояниях.\n"
"Полезно для тестирования переходов уровня детализации в редакторе."

msgid ""
"The material overlay for the whole geometry.\n"
"If a material is assigned to this property, it will be rendered on top of any "
"other active material for all the surfaces."
msgstr ""
"Наложение материала на всю геометрию.\n"
"Если материал назначен этому свойству, он будет отображаться поверх любого "
"другого активного материала для всех поверхностей."

msgid ""
"The material override for the whole geometry.\n"
"If a material is assigned to this property, it will be used instead of any "
"material set in any material slot of the mesh."
msgstr ""
"Переопределение материала для всей геометрии.\n"
"Если этому свойству назначен материал, он будет использоваться вместо любого "
"материала, установленного в любом слоте материала сетки."

msgid ""
"The transparency applied to the whole geometry (as a multiplier of the "
"materials' existing transparency). [code]0.0[/code] is fully opaque, while "
"[code]1.0[/code] is fully transparent. Values greater than [code]0.0[/code] "
"(exclusive) will force the geometry's materials to go through the transparent "
"pipeline, which is slower to render and can exhibit rendering issues due to "
"incorrect transparency sorting. However, unlike using a transparent material, "
"setting [member transparency] to a value greater than [code]0.0[/code] "
"(exclusive) will [i]not[/i] disable shadow rendering.\n"
"In spatial shaders, [code]1.0 - transparency[/code] is set as the default "
"value of the [code]ALPHA[/code] built-in.\n"
"[b]Note:[/b] [member transparency] is clamped between [code]0.0[/code] and "
"[code]1.0[/code], so this property cannot be used to make transparent "
"materials more opaque than they originally are.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method. When "
"using the Mobile or Compatibility rendering method, [member transparency] is "
"ignored and is considered as always being [code]0.0[/code]."
msgstr ""
"Прозрачность, применяемая ко всей геометрии (как множитель существующей "
"прозрачности материалов). [code]0.0[/code] полностью непрозрачен, а "
"[code]1.0[/code] полностью прозрачен. Значения больше [code]0.0[/code] "
"(исключительно) заставят материалы геометрии проходить через прозрачный "
"конвейер, который медленнее рендерится и может вызывать проблемы рендеринга "
"из-за неправильной сортировки прозрачности. Однако, в отличие от "
"использования прозрачного материала, установка [member transparent] на "
"значение больше [code]0.0[/code] (исключительно) [i]не[/i] отключит рендеринг "
"теней.\n"
"В пространственных (Spatial) шейдерах [code]1.0 - transparent[/code] "
"устанавливается как значение по умолчанию встроенного [code]ALPHA[/code].\n"
"[b]Примечание:[/b] [member transparency] ограничена между [code]0.0[/code] и "
"[code]1.0[/code], поэтому это свойство нельзя использовать для того, чтобы "
"сделать прозрачные материалы более непрозрачными, чем они есть изначально.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+. При использовании метода рендеринга Mobile или Compatibility "
"[member transparency] игнорируется и всегда считается равной [code]0.0[/code]."

msgid ""
"Starting distance from which the GeometryInstance3D will be visible, taking "
"[member visibility_range_begin_margin] into account as well. The default "
"value of 0 is used to disable the range check."
msgstr ""
"Начальное расстояние, с которого GeometryInstance3D будет виден, принимая во "
"внимание также [member vision_range_begin_margin]. Значение по умолчанию 0 "
"используется для отключения проверки диапазона."

msgid ""
"Margin for the [member visibility_range_begin] threshold. The "
"GeometryInstance3D will only change its visibility state when it goes over or "
"under the [member visibility_range_begin] threshold by this amount.\n"
"If [member visibility_range_fade_mode] is [constant "
"VISIBILITY_RANGE_FADE_DISABLED], this acts as a hysteresis distance. If "
"[member visibility_range_fade_mode] is [constant VISIBILITY_RANGE_FADE_SELF] "
"or [constant VISIBILITY_RANGE_FADE_DEPENDENCIES], this acts as a fade "
"transition distance and must be set to a value greater than [code]0.0[/code] "
"for the effect to be noticeable."
msgstr ""
"Запас для порога [member vision_range_begin]. GeometryInstance3D изменит свое "
"состояние видимости только тогда, когда оно превысит или упадет ниже порога "
"[member vision_range_begin] на эту величину.\n"
"Если [member vision_range_fade_mode] равно [constant "
"VISIBILITY_RANGE_FADE_DISABLED], это действует как расстояние гистерезиса. "
"Если [member vision_range_fade_mode] равно [constant "
"VISIBILITY_RANGE_FADE_SELF] или [constant "
"VISIBILITY_RANGE_FADE_DEPENDENCIES], это действует как расстояние перехода с "
"затуханием и должно быть установлено на значение больше [code]0.0[/code], "
"чтобы эффект был заметен."

msgid ""
"Distance from which the GeometryInstance3D will be hidden, taking [member "
"visibility_range_end_margin] into account as well. The default value of 0 is "
"used to disable the range check."
msgstr ""
"Расстояние, с которого GeometryInstance3D будет скрыт, принимая во внимание "
"также [member vision_range_end_margin]. Значение по умолчанию 0 используется "
"для отключения проверки диапазона."

msgid ""
"Margin for the [member visibility_range_end] threshold. The "
"GeometryInstance3D will only change its visibility state when it goes over or "
"under the [member visibility_range_end] threshold by this amount.\n"
"If [member visibility_range_fade_mode] is [constant "
"VISIBILITY_RANGE_FADE_DISABLED], this acts as a hysteresis distance. If "
"[member visibility_range_fade_mode] is [constant VISIBILITY_RANGE_FADE_SELF] "
"or [constant VISIBILITY_RANGE_FADE_DEPENDENCIES], this acts as a fade "
"transition distance and must be set to a value greater than [code]0.0[/code] "
"for the effect to be noticeable."
msgstr ""
"Запас для порога [member vision_range_end]. GeometryInstance3D изменит свое "
"состояние видимости только тогда, когда оно превысит или упадет ниже порога "
"[member vision_range_end] на эту величину.\n"
"Если [member vision_range_fade_mode] равно [constant "
"VISIBILITY_RANGE_FADE_DISABLED], это действует как расстояние гистерезиса. "
"Если [member vision_range_fade_mode] равно [constant "
"VISIBILITY_RANGE_FADE_SELF] или [constant "
"VISIBILITY_RANGE_FADE_DEPENDENCIES], это действует как расстояние перехода с "
"затуханием и должно быть установлено на значение больше [code]0.0[/code], "
"чтобы эффект был заметен."

msgid ""
"Controls which instances will be faded when approaching the limits of the "
"visibility range."
msgstr ""
"Управляет тем, какие экземпляры будут исчезать при приближении к границам "
"диапазона видимости."

msgid ""
"Will not cast any shadows. Use this to improve performance for small geometry "
"that is unlikely to cast noticeable shadows (such as debris)."
msgstr ""
"Не будет отбрасывать тени. Используйте это для улучшения производительности "
"для мелкой геометрии, которая вряд ли будет отбрасывать заметные тени "
"(например, мусор)."

msgid ""
"Will cast shadows from all visible faces in the GeometryInstance3D.\n"
"Will take culling into account, so faces not being rendered will not be taken "
"into account when shadow casting."
msgstr ""
"Будет отбрасывать тени от всех видимых граней в GeometryInstance3D.\n"
"Будет учитываться отбраковка, поэтому грани, которые не визуализируются, не "
"будут учитываться при отбрасывании тени."

msgid ""
"Will cast shadows from all visible faces in the GeometryInstance3D.\n"
"Will not take culling into account, so all faces will be taken into account "
"when shadow casting."
msgstr ""
"Будут отбрасывать тени от всех видимых граней в GeometryInstance3D.\n"
"Не будут учитываться отбраковки, поэтому при отбрасывании тени будут "
"учитываться все грани."

msgid ""
"Will only show the shadows casted from this object.\n"
"In other words, the actual mesh will not be visible, only the shadows casted "
"from the mesh will be."
msgstr ""
"Покажет только тени, отбрасываемые этим объектом.\n"
"Другими словами, сама сетка не будет видна, будут видны только тени, "
"отбрасываемые сеткой."

msgid ""
"Disabled global illumination mode. Use for dynamic objects that do not "
"contribute to global illumination (such as characters). When using [VoxelGI] "
"and SDFGI, the geometry will [i]receive[/i] indirect lighting and reflections "
"but the geometry will not be considered in GI baking."
msgstr ""
"Отключенный режим глобального освещения. Используйте для динамических "
"объектов, которые не вносят вклад в глобальное освещение (например, "
"персонажей). При использовании [VoxelGI] и SDFGI геометрия будет [i]получать[/"
"i] непрямое освещение и отражения, но геометрия не будет учитываться при "
"запекании GI."

msgid ""
"Baked global illumination mode. Use for static objects that contribute to "
"global illumination (such as level geometry). This GI mode is effective when "
"using [VoxelGI], SDFGI and [LightmapGI]."
msgstr ""
"Режим запеченного глобального освещения. Используется для статических "
"объектов, которые способствуют глобальному освещению (например, геометрия "
"уровня). Этот режим GI эффективен при использовании [VoxelGI], SDFGI и "
"[LightmapGI]."

msgid ""
"Dynamic global illumination mode. Use for dynamic objects that contribute to "
"global illumination. This GI mode is only effective when using [VoxelGI], but "
"it has a higher performance impact than [constant GI_MODE_STATIC]. When using "
"other GI methods, this will act the same as [constant GI_MODE_DISABLED]. When "
"using [LightmapGI], the object will receive indirect lighting using lightmap "
"probes instead of using the baked lightmap texture."
msgstr ""
"Режим динамического глобального освещения. Используется для динамических "
"объектов, которые способствуют глобальному освещению. Этот режим GI "
"эффективен только при использовании [VoxelGI], но он оказывает большее "
"влияние на производительность, чем [constant GI_MODE_STATIC]. При "
"использовании других методов GI это будет действовать так же, как [constant "
"GI_MODE_DISABLED]. При использовании [LightmapGI] объект будет получать "
"непрямое освещение с помощью зондов карты освещения вместо использования "
"запеченной текстуры карты освещения."

msgid "The standard texel density for lightmapping with [LightmapGI]."
msgstr ""
"Стандартная плотность текселей для светового отображения с помощью "
"[LightmapGI]."

msgid ""
"Multiplies texel density by 2× for lightmapping with [LightmapGI]. To ensure "
"consistency in texel density, use this when scaling a mesh by a factor "
"between 1.5 and 3.0."
msgstr ""
"Умножает плотность текселей на 2× для отображения освещения с помощью "
"[LightmapGI]. Чтобы обеспечить постоянство плотности текселей, используйте "
"это при масштабировании сетки с коэффициентом от 1,5 до 3,0."

msgid ""
"Multiplies texel density by 4× for lightmapping with [LightmapGI]. To ensure "
"consistency in texel density, use this when scaling a mesh by a factor "
"between 3.0 and 6.0."
msgstr ""
"Умножает плотность текселей на 4× для отображения освещения с помощью "
"[LightmapGI]. Чтобы обеспечить постоянство плотности текселей, используйте "
"это при масштабировании сетки с коэффициентом от 3,0 до 6,0."

msgid ""
"Multiplies texel density by 8× for lightmapping with [LightmapGI]. To ensure "
"consistency in texel density, use this when scaling a mesh by a factor "
"greater than 6.0."
msgstr ""
"Умножает плотность текселей на 8× для отображения освещения с помощью "
"[LightmapGI]. Чтобы обеспечить постоянство плотности текселей, используйте "
"это при масштабировании сетки с коэффициентом больше 6,0."

msgid "Represents the size of the [enum LightmapScale] enum."
msgstr "Представляет размер перечисления [enum LightmapScale]."

msgid ""
"Will not fade itself nor its visibility dependencies, hysteresis will be used "
"instead. This is the fastest approach to manual LOD, but it can result in "
"noticeable LOD transitions depending on how the LOD meshes are authored. See "
"[member visibility_range_begin] and [member Node3D.visibility_parent] for "
"more information."
msgstr ""
"Не будет затухать ни сам, ни его видимые зависимости, вместо этого будет "
"использоваться гистерезис. Это самый быстрый подход к ручному LOD, но он "
"может привести к заметным переходам LOD в зависимости от того, как созданы "
"сетки LOD. Для получения дополнительной информации см. [member "
"vision_range_begin] и [member Node3D.visibility_parent]."

msgid ""
"Will fade-out itself when reaching the limits of its own visibility range. "
"This is slower than [constant VISIBILITY_RANGE_FADE_DISABLED], but it can "
"provide smoother transitions. The fading range is determined by [member "
"visibility_range_begin_margin] and [member visibility_range_end_margin].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method. When "
"using the Mobile or Compatibility rendering method, this mode acts like "
"[constant VISIBILITY_RANGE_FADE_DISABLED] but with hysteresis disabled."
msgstr ""
"Будет постепенно исчезать при достижении границ своего диапазона видимости. "
"Это медленнее, чем [constant VISIBILITY_RANGE_FADE_DISABLED], но может "
"обеспечить более плавные переходы. Диапазон постепенного исчезновения "
"определяется [member vision_range_begin_margin] и [member "
"vision_range_end_margin].\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+. При использовании метода рендеринга Mobile или Compatibility этот "
"режим действует как [constant VISIBILITY_RANGE_FADE_DISABLED], но с "
"отключенным гистерезисом."

msgid ""
"Will fade-in its visibility dependencies (see [member "
"Node3D.visibility_parent]) when reaching the limits of its own visibility "
"range. This is slower than [constant VISIBILITY_RANGE_FADE_DISABLED], but it "
"can provide smoother transitions. The fading range is determined by [member "
"visibility_range_begin_margin] and [member visibility_range_end_margin].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method. When "
"using the Mobile or Compatibility rendering method, this mode acts like "
"[constant VISIBILITY_RANGE_FADE_DISABLED] but with hysteresis disabled."
msgstr ""
"Будет постепенно проявлять свои зависимости видимости (см. [member "
"Node3D.visibility_parent]) при достижении границ своего собственного "
"диапазона видимости. Это медленнее, чем [constant "
"VISIBILITY_RANGE_FADE_DISABLED], но может обеспечить более плавные переходы. "
"Диапазон затухания определяется [member vision_range_begin_margin] и [member "
"vision_range_end_margin].\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+. При использовании метода рендеринга Mobile или Compatibility этот "
"режим действует как [constant VISIBILITY_RANGE_FADE_DISABLED], но с "
"отключенным гистерезисом."

msgid "Represents a glTF accessor."
msgstr "Представляет средство доступа к glTF."

msgid ""
"GLTFAccessor is a data structure representing a glTF [code]accessor[/code] "
"that would be found in the [code]\"accessors\"[/code] array. A buffer is a "
"blob of binary data. A buffer view is a slice of a buffer. An accessor is a "
"typed interpretation of the data in a buffer view.\n"
"Most custom data stored in glTF does not need accessors, only buffer views "
"(see [GLTFBufferView]). Accessors are for more advanced use cases such as "
"interleaved mesh data encoded for the GPU."
msgstr ""
"GLTFAccessor — это структура данных, представляющая glTF [code]accessor[/"
"code], которая будет найдена в массиве [code]\"accessors\"[/code]. Буфер — "
"это блок двоичных данных. Представление буфера — это срез буфера. Аксессор — "
"это типизированная интерпретация данных в представлении буфера.\n"
"Большинству пользовательских данных, хранящихся в glTF, не нужны аксессоры, "
"только представления буфера (см. [GLTFBufferView]). Аксессоры предназначены "
"для более сложных случаев использования, таких как данные сетки с "
"чередованием, закодированные для GPU."

msgid "Buffers, BufferViews, and Accessors in Khronos glTF specification"
msgstr "Буферы, BufferViews и Accessors в спецификации Khronos glTF"

msgid "The glTF accessor type, as an enum."
msgstr "Тип доступа glTF как перечисление."

msgid ""
"The index of the buffer view this accessor is referencing. If [code]-1[/"
"code], this accessor is not referencing any buffer view."
msgstr ""
"Индекс буферного представления, на которое ссылается этот аксессор. Если "
"[code]-1[/code], этот аксессор не ссылается ни на какое буферное "
"представление."

msgid "The offset relative to the start of the buffer view in bytes."
msgstr "Смещение относительно начала представления буфера в байтах."

msgid ""
"The glTF component type as an enum. See [enum GLTFComponentType] for possible "
"values. Within the core glTF specification, a value of 5125 or "
"\"UNSIGNED_INT\" must not be used for any accessor that is not referenced by "
"mesh.primitive.indices."
msgstr ""
"Тип компонента glTF как перечисление. См. [enum GLTFComponentType] для "
"возможных значений. В базовой спецификации glTF значение 5125 или "
"\"UNSIGNED_INT\" не должно использоваться для любого аксессора, на который не "
"ссылается mesh.primitive.indices."

msgid "The number of elements referenced by this accessor."
msgstr "Количество элементов, на которые ссылается этот аксессор."

msgid "Maximum value of each component in this accessor."
msgstr "Максимальное значение каждого компонента в этом аксессоре."

msgid "Minimum value of each component in this accessor."
msgstr "Минимальное значение каждого компонента в этом аксессоре."

msgid "Specifies whether integer data values are normalized before usage."
msgstr ""
"Указывает, нормализуются ли целочисленные значения данных перед "
"использованием."

msgid "Number of deviating accessor values stored in the sparse array."
msgstr ""
"Количество отклоняющихся значений аксессоров, хранящихся в разреженном "
"массиве."

msgid ""
"The index of the buffer view with sparse indices. The referenced buffer view "
"MUST NOT have its target or byteStride properties defined. The buffer view "
"and the optional byteOffset MUST be aligned to the componentType byte length."
msgstr ""
"Индекс буферного представления с разреженными индексами. Указанное буферное "
"представление НЕ ДОЛЖНО иметь определенные свойства target или byteStride. "
"Буферное представление и необязательный byteOffset ДОЛЖНЫ быть выровнены по "
"длине байта componentType."

msgid ""
"The indices component data type as an enum. Possible values are 5121 for "
"\"UNSIGNED_BYTE\", 5123 for \"UNSIGNED_SHORT\", and 5125 for \"UNSIGNED_INT\"."
msgstr ""
"Тип данных компонента индексов как перечисление. Возможные значения: 5121 для "
"\"UNSIGNED_BYTE\", 5123 для \"UNSIGNED_SHORT\" и 5125 для \"UNSIGNED_INT\"."

msgid ""
"The index of the bufferView with sparse values. The referenced buffer view "
"MUST NOT have its target or byteStride properties defined."
msgstr ""
"Индекс bufferView с разреженными значениями. Указанное буферное представление "
"НЕ ДОЛЖНО иметь определенные свойства target или byteStride."

msgid "The offset relative to the start of the bufferView in bytes."
msgstr "Смещение относительно начала bufferView в байтах."

msgid "Use [member accessor_type] instead."
msgstr "Вместо этого используйте [member accessor_type]."

msgid ""
"The glTF accessor type, as an [int]. Possible values are [code]0[/code] for "
"\"SCALAR\", [code]1[/code] for \"VEC2\", [code]2[/code] for \"VEC3\", "
"[code]3[/code] for \"VEC4\", [code]4[/code] for \"MAT2\", [code]5[/code] for "
"\"MAT3\", and [code]6[/code] for \"MAT4\"."
msgstr ""
"Тип доступа glTF как [int]. Возможные значения: [code]0[/code] для "
"\"SCALAR\", [code]1[/code] для \"VEC2\", [code]2[/code] для \"VEC3\", "
"[code]3[/code] для \"VEC4\", [code]4[/code] для \"MAT2\", [code]5[/code] для "
"\"MAT3\" и [code]6[/code] для \"MAT4\"."

msgid ""
"Accessor type \"SCALAR\". For the glTF object model, this can be used to map "
"to a single float, int, or bool value, or a float array."
msgstr ""
"Тип аксессора \"SCALAR\". Для объектной модели glTF это может использоваться "
"для сопоставления с одним значением float, int или bool или массивом float."

msgid ""
"Accessor type \"VEC2\". For the glTF object model, this maps to \"float2\", "
"represented in the glTF JSON as an array of two floats."
msgstr ""
"Тип аксессора\"VEC2\". Для объектной модели glTF это соответствует "
"\"float2\", представленному в glTF JSON как массив из двух float."

msgid ""
"Accessor type \"VEC3\". For the glTF object model, this maps to \"float3\", "
"represented in the glTF JSON as an array of three floats."
msgstr ""
"Тип аксессора\"VEC3\". Для объектной модели glTF это соответствует "
"\"float3\", представленному в glTF JSON как массив из трех float."

msgid ""
"Accessor type \"VEC4\". For the glTF object model, this maps to \"float4\", "
"represented in the glTF JSON as an array of four floats."
msgstr ""
"Тип аксессора\"VEC4\". Для объектной модели glTF это соответствует "
"\"float4\", представленному в glTF JSON как массив из четырех float."

msgid ""
"Accessor type \"MAT2\". For the glTF object model, this maps to \"float2x2\", "
"represented in the glTF JSON as an array of four floats."
msgstr ""
"Тип аксессора\"MAT2\". Для объектной модели glTF это соответствует "
"\"float2x2\", представленному в glTF JSON как массив из четырех float."

msgid ""
"Accessor type \"MAT3\". For the glTF object model, this maps to \"float3x3\", "
"represented in the glTF JSON as an array of nine floats."
msgstr ""
"Тип аксессора\"MAT3\". Для объектной модели glTF это соответствует "
"\"float3x3\", представленному в glTF JSON как массив из девяти float."

msgid ""
"Accessor type \"MAT4\". For the glTF object model, this maps to \"float4x4\", "
"represented in the glTF JSON as an array of sixteen floats."
msgstr ""
"Тип аксессора\"MAT4\". Для объектной модели glTF это соответствует "
"\"float4x4\", представленному в glTF JSON как массив из шестнадцати float."

msgid ""
"Component type \"NONE\". This is not a valid component type, and is used to "
"indicate that the component type is not set."
msgstr ""
"Тип компонента \"NONE\". Это недопустимый тип компонента, и используется для "
"указания того, что тип компонента не установлен."

msgid ""
"Component type \"BYTE\". The value is [code]0x1400[/code] which comes from "
"OpenGL. This indicates data is stored in 1-byte or 8-bit signed integers. "
"This is a core part of the glTF specification."
msgstr ""
"Тип компонента \"BYTE\". Значение [code]0x1400[/code], которое исходит из "
"OpenGL. Это указывает на то, что данные хранятся в 1-байтовых или 8-битных "
"знаковых целых числах. Это основная часть спецификации glTF."

msgid ""
"Component type \"UNSIGNED_BYTE\". The value is [code]0x1401[/code] which "
"comes from OpenGL. This indicates data is stored in 1-byte or 8-bit unsigned "
"integers. This is a core part of the glTF specification."
msgstr ""
"Тип компонента \"UNSIGNED_BYTE\". Значение [code]0x1401[/code], которое "
"исходит из OpenGL. Это указывает на то, что данные хранятся в 1-байтовых или "
"8-битных беззнаковых целых числах. Это основная часть спецификации glTF."

msgid ""
"Component type \"SHORT\". The value is [code]0x1402[/code] which comes from "
"OpenGL. This indicates data is stored in 2-byte or 16-bit signed integers. "
"This is a core part of the glTF specification."
msgstr ""
"Тип компонента \"SHORT\". Значение [code]0x1402[/code], которое исходит из "
"OpenGL. Это указывает на то, что данные хранятся в 2-байтовых или 16-битных "
"знаковых целых числах. Это основная часть спецификации glTF."

msgid ""
"Component type \"UNSIGNED_SHORT\". The value is [code]0x1403[/code] which "
"comes from OpenGL. This indicates data is stored in 2-byte or 16-bit unsigned "
"integers. This is a core part of the glTF specification."
msgstr ""
"Тип компонента \"UNSIGNED_SHORT\". Значение [code]0x1403[/code], которое "
"исходит из OpenGL. Это указывает на то, что данные хранятся в 2-байтовых или "
"16-битных беззнаковых целых числах. Это основная часть спецификации glTF."

msgid ""
"Component type \"INT\". The value is [code]0x1404[/code] which comes from "
"OpenGL. This indicates data is stored in 4-byte or 32-bit signed integers. "
"This is NOT a core part of the glTF specification, and may not be supported "
"by all glTF importers. May be used by some extensions including "
"[code]KHR_interactivity[/code]."
msgstr ""
"Тип компонента \"INT\". Значение [code]0x1404[/code], которое исходит из "
"OpenGL. Это указывает на то, что данные хранятся в 4-байтовых или 32-битных "
"знаковых целых числах. Это НЕ является основной частью спецификации glTF и "
"может не поддерживаться всеми импортерами glTF. Может использоваться "
"некоторыми расширениями, включая [code]KHR_interactivity[/code]."

msgid ""
"Component type \"UNSIGNED_INT\". The value is [code]0x1405[/code] which comes "
"from OpenGL. This indicates data is stored in 4-byte or 32-bit unsigned "
"integers. This is a core part of the glTF specification."
msgstr ""
"Тип компонента \"UNSIGNED_INT\". Значение [code]0x1405[/code], которое "
"исходит из OpenGL. Это указывает на то, что данные хранятся в 4-байтовых или "
"32-битных беззнаковых целых числах. Это основная часть спецификации glTF."

msgid ""
"Component type \"FLOAT\". The value is [code]0x1406[/code] which comes from "
"OpenGL. This indicates data is stored in 4-byte or 32-bit floating-point "
"numbers. This is a core part of the glTF specification."
msgstr ""
"Тип компонента \"FLOAT\". Значение [code]0x1406[/code], которое исходит из "
"OpenGL. Это указывает на то, что данные хранятся в 4-байтовых или 32-битных "
"числах с плавающей точкой. Это основная часть спецификации glTF."

msgid ""
"Component type \"DOUBLE\". The value is [code]0x140A[/code] which comes from "
"OpenGL. This indicates data is stored in 8-byte or 64-bit floating-point "
"numbers. This is NOT a core part of the glTF specification, and may not be "
"supported by all glTF importers. May be used by some extensions including "
"[code]KHR_interactivity[/code]."
msgstr ""
"Тип компонента \"DOUBLE\". Значение [code]0x140A[/code], которое исходит из "
"OpenGL. Это указывает на то, что данные хранятся в 8-байтовых или 64-битных "
"числах с плавающей точкой. Это НЕ является основной частью спецификации glTF "
"и может не поддерживаться всеми импортерами glTF. Может использоваться "
"некоторыми расширениями, включая [code]KHR_interactivity[/code]."

msgid ""
"Component type \"HALF_FLOAT\". The value is [code]0x140B[/code] which comes "
"from OpenGL. This indicates data is stored in 2-byte or 16-bit floating-point "
"numbers. This is NOT a core part of the glTF specification, and may not be "
"supported by all glTF importers. May be used by some extensions including "
"[code]KHR_interactivity[/code]."
msgstr ""
"Тип компонента \"HALF_FLOAT\". Значение равно [code]0x140B[/code], что "
"исходит из OpenGL. Это указывает на то, что данные хранятся в 2-байтовых или "
"16-битных числах с плавающей точкой. Это НЕ является основной частью "
"спецификации glTF и может не поддерживаться всеми импортерами glTF. Может "
"использоваться некоторыми расширениями, включая [code]KHR_interactivity[/"
"code]."

msgid ""
"Component type \"LONG\". The value is [code]0x140E[/code] which comes from "
"OpenGL. This indicates data is stored in 8-byte or 64-bit signed integers. "
"This is NOT a core part of the glTF specification, and may not be supported "
"by all glTF importers. May be used by some extensions including "
"[code]KHR_interactivity[/code]."
msgstr ""
"Тип компонента \"LONG\". Значение равно [code]0x140E[/code], что исходит из "
"OpenGL. Это указывает на то, что данные хранятся в 8-байтовых или 64-битных "
"знаковых целых числах. Это НЕ является основной частью спецификации glTF и "
"может не поддерживаться всеми импортерами glTF. Может использоваться "
"некоторыми расширениями, включая [code]KHR_interactivity[/code]."

msgid ""
"Component type \"UNSIGNED_LONG\". The value is [code]0x140F[/code] which "
"comes from OpenGL. This indicates data is stored in 8-byte or 64-bit unsigned "
"integers. This is NOT a core part of the glTF specification, and may not be "
"supported by all glTF importers. May be used by some extensions including "
"[code]KHR_interactivity[/code]."
msgstr ""
"Тип компонента \"UNSIGNED_LONG\". Значение равно [code]0x140F[/code], что "
"исходит из OpenGL. Это указывает на то, что данные хранятся в 8-байтовых или "
"64-битных беззнаковых целых числах. Это НЕ является основной частью "
"спецификации glTF и может не поддерживаться всеми импортерами glTF. Может "
"использоваться некоторыми расширениями, включая [code]KHR_interactivity[/"
"code]."

msgid ""
"Gets additional arbitrary data in this [GLTFAnimation] instance. This can be "
"used to keep per-node state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The argument should be the [GLTFDocumentExtension] name (does not have to "
"match the extension name in the glTF file), and the return value can be "
"anything you set. If nothing was set, the return value is [code]null[/code]."
msgstr ""
"Получает дополнительные произвольные данные в этом экземпляре "
"[GLTFAnimation]. Это можно использовать для хранения данных о состоянии "
"каждого узла в классах [GLTFDocumentExtension], что важно, поскольку они не "
"имеют состояния.\n"
"Аргументом должно быть имя [GLTFDocumentExtension] (не обязательно совпадать "
"с именем расширения в файле glTF), а возвращаемое значение может быть любым, "
"которое вы зададите. Если ничего не задано, возвращаемое значение равно "
"[code]null[/code]."

msgid ""
"Sets additional arbitrary data in this [GLTFAnimation] instance. This can be "
"used to keep per-node state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The first argument should be the [GLTFDocumentExtension] name (does not have "
"to match the extension name in the glTF file), and the second argument can be "
"anything you want."
msgstr ""
"Устанавливает дополнительные произвольные данные в этом экземпляре "
"[GLTFAnimation]. Это можно использовать для хранения данных о состоянии "
"каждого узла в классах [GLTFDocumentExtension], что важно, поскольку они не "
"имеют состояния.\n"
"Первым аргументом должно быть имя [GLTFDocumentExtension] (не обязательно "
"совпадать с именем расширения в файле glTF), а вторым аргументом может быть "
"все, что угодно."

msgid "The original name of the animation."
msgstr "Оригинальное название анимации."

msgid "Represents a glTF buffer view."
msgstr "Представляет - представление буфера glTF."

msgid ""
"GLTFBufferView is a data structure representing a glTF [code]bufferView[/"
"code] that would be found in the [code]\"bufferViews\"[/code] array. A buffer "
"is a blob of binary data. A buffer view is a slice of a buffer that can be "
"used to identify and extract data from the buffer.\n"
"Most custom uses of buffers only need to use the [member buffer], [member "
"byte_length], and [member byte_offset]. The [member byte_stride] and [member "
"indices] properties are for more advanced use cases such as interleaved mesh "
"data encoded for the GPU."
msgstr ""
"GLTFBufferView — это структура данных, представляющая glTF [code]bufferView[/"
"code], которая будет найдена в массиве [code]\"bufferViews\"[/code]. Буфер — "
"это блок двоичных данных. Представление буфера — это срез буфера, который "
"можно использовать для идентификации и извлечения данных из буфера.\n"
"Для большинства пользовательских применений буферов требуется использовать "
"только [member buffer], [member byte_length] и [member byte_offset]. Свойства "
"[member byte_stride] и [member indexes] предназначены для более сложных "
"случаев использования, таких как данные сетки с чередованием, закодированные "
"для GPU."

msgid ""
"Loads the buffer view data from the buffer referenced by this buffer view in "
"the given [GLTFState]. Interleaved data with a byte stride is not yet "
"supported by this method. The data is returned as a [PackedByteArray]."
msgstr ""
"Загружает данные представления буфера из буфера, на который ссылается это "
"представление буфера в заданном [GLTFState]. Перемежающиеся данные с шагом "
"байта пока не поддерживаются этим методом. Данные возвращаются как "
"[PackedByteArray]."

msgid ""
"The index of the buffer this buffer view is referencing. If [code]-1[/code], "
"this buffer view is not referencing any buffer."
msgstr ""
"Индекс буфера, на который ссылается это буферное представление. Если "
"[code]-1[/code], это буферное представление не ссылается ни на какой буфер."

msgid ""
"The length, in bytes, of this buffer view. If [code]0[/code], this buffer "
"view is empty."
msgstr ""
"Длина, в байтах, этого буферного представления. Если [code]0[/code], это "
"буферное представление пусто."

msgid ""
"The offset, in bytes, from the start of the buffer to the start of this "
"buffer view."
msgstr ""
"Смещение в байтах от начала буфера до начала этого представления буфера."

msgid ""
"The stride, in bytes, between interleaved data. If [code]-1[/code], this "
"buffer view is not interleaved."
msgstr ""
"Шаг, в байтах, между чередующимися данными. Если [code]-1[/code], это "
"представление буфера не чередуется."

msgid ""
"[code]true[/code] if the GLTFBufferView's OpenGL GPU buffer type is an "
"[code]ELEMENT_ARRAY_BUFFER[/code] used for vertex indices (integer constant "
"[code]34963[/code]). [code]false[/code] if the buffer type is any other "
"value. See [url=https://github.com/KhronosGroup/glTF-Tutorials/blob/master/"
"gltfTutorial/gltfTutorial_005_BuffersBufferViewsAccessors.md]Buffers, "
"BufferViews, and Accessors[/url] for possible values. This property is set on "
"import and used on export."
msgstr ""
"[code]true[/code], если тип буфера OpenGL GPU GLTFBufferView — это "
"[code]ELEMENT_ARRAY_BUFFER[/code], используемый для индексов вершин "
"(целочисленная константа [code]34963[/code]). [code]false[/code], если тип "
"буфера — это любое другое значение. См. [url=https://github.com/KhronosGroup/"
"glTF-Tutorials/blob/master/gltfTutorial/"
"gltfTutorial_005_BuffersBufferViewsAccessors.md]Buffers, BufferViews и "
"Accessors[/url] для возможных значений. Это свойство задается при импорте и "
"используется при экспорте."

msgid ""
"[code]true[/code] if the GLTFBufferView's OpenGL GPU buffer type is an "
"[code]ARRAY_BUFFER[/code] used for vertex attributes (integer constant "
"[code]34962[/code]). [code]false[/code] if the buffer type is any other "
"value. See [url=https://github.com/KhronosGroup/glTF-Tutorials/blob/master/"
"gltfTutorial/gltfTutorial_005_BuffersBufferViewsAccessors.md]Buffers, "
"BufferViews, and Accessors[/url] for possible values. This property is set on "
"import and used on export."
msgstr ""
"[code]true[/code], если тип буфера OpenGL GPU GLTFBufferView — это "
"[code]ARRAY_BUFFER[/code], используемый для атрибутов вершин (целочисленная "
"константа [code]34962[/code]). [code]false[/code], если тип буфера — это "
"любое другое значение. См. [url=https://github.com/KhronosGroup/glTF-"
"Tutorials/blob/master/gltfTutorial/"
"gltfTutorial_005_BuffersBufferViewsAccessors.md]Buffers, BufferViews и "
"Accessors[/url] для возможных значений. Это свойство задается при импорте и "
"используется при экспорте."

msgid "Represents a glTF camera."
msgstr "Представляет собой камеру glTF."

msgid "Represents a camera as defined by the base glTF spec."
msgstr "Представляет камеру, определенную базовой спецификацией glTF."

msgid "glTF camera detailed specification"
msgstr "Подробная спецификация камеры glTF"

msgid "glTF camera spec and example file"
msgstr "Спецификация камеры glTF и файл примера"

msgid "Creates a new GLTFCamera instance by parsing the given [Dictionary]."
msgstr ""
"Создает новый экземпляр GLTFCamera путем анализа указанного [Dictionary]."

msgid "Create a new GLTFCamera instance from the given Godot [Camera3D] node."
msgstr "Создайте новый экземпляр GLTFCamera из заданного узла Godot [Camera3D]."

msgid "Serializes this GLTFCamera instance into a [Dictionary]."
msgstr "Сериализует этот экземпляр GLTFCamera в [Dictionary]."

msgid "Converts this GLTFCamera instance into a Godot [Camera3D] node."
msgstr "Преобразует этот экземпляр GLTFCamera в узел Godot [Camera3D]."

msgid ""
"The distance to the far culling boundary for this camera relative to its "
"local Z axis, in meters. This maps to glTF's [code]zfar[/code] property."
msgstr ""
"Расстояние до дальней границы отбраковки для этой камеры относительно ее "
"локальной оси Z, в метрах. Это соответствует свойству [code]zfar[/code] glTF."

msgid ""
"The distance to the near culling boundary for this camera relative to its "
"local Z axis, in meters. This maps to glTF's [code]znear[/code] property."
msgstr ""
"Расстояние до ближней границы отбраковки для этой камеры относительно ее "
"локальной оси Z, в метрах. Это соответствует свойству [code]znear[/code] glTF."

msgid ""
"The FOV of the camera. This class and glTF define the camera FOV in radians, "
"while Godot uses degrees. This maps to glTF's [code]yfov[/code] property. "
"This value is only used for perspective cameras, when [member perspective] is "
"[code]true[/code]."
msgstr ""
"FOV камеры. Этот класс и glTF определяют FOV камеры в радианах, тогда как "
"Godot использует градусы. Это соответствует свойству [code]yfov[/code] glTF. "
"Это значение используется только для перспективных камер, когда [member "
"perspective] равно [code]true[/code]."

msgid ""
"If [code]true[/code], the camera is in perspective mode. Otherwise, the "
"camera is in orthographic/orthogonal mode. This maps to glTF's camera "
"[code]type[/code] property. See [member Camera3D.projection] and the glTF "
"spec for more information."
msgstr ""
"Если [code]true[/code], камера находится в перспективном режиме. В противном "
"случае камера находится в ортографическом/ортогональном режиме. Это "
"соответствует свойству [code]type[/code] камеры glTF. Для получения "
"дополнительной информации см. [member Camera3D.projection] и спецификацию "
"glTF."

msgid ""
"The size of the camera. This class and glTF define the camera size magnitude "
"as a radius in meters, while Godot defines it as a diameter in meters. This "
"maps to glTF's [code]ymag[/code] property. This value is only used for "
"orthographic/orthogonal cameras, when [member perspective] is [code]false[/"
"code]."
msgstr ""
"Размер камеры. Этот класс и glTF определяют величину размера камеры как "
"радиус в метрах, в то время как Godot определяет его как диаметр в метрах. "
"Это соответствует свойству glTF [code]ymag[/code]. Это значение используется "
"только для орфографических/ортогональных камер, когда [member perspective] "
"равно [code]false[/code]."

msgid "Class for importing and exporting glTF files in and out of Godot."
msgstr "Класс для импорта и экспорта файлов glTF в Godot и из него."

msgid ""
"GLTFDocument supports reading data from a glTF file, buffer, or Godot scene. "
"This data can then be written to the filesystem, buffer, or used to create a "
"Godot scene.\n"
"All of the data in a glTF scene is stored in the [GLTFState] class. "
"GLTFDocument processes state objects, but does not contain any scene data "
"itself. GLTFDocument has member variables to store export configuration "
"settings such as the image format, but is otherwise stateless. Multiple "
"scenes can be processed with the same settings using the same GLTFDocument "
"object and different [GLTFState] objects.\n"
"GLTFDocument can be extended with arbitrary functionality by extending the "
"[GLTFDocumentExtension] class and registering it with GLTFDocument via "
"[method register_gltf_document_extension]. This allows for custom data to be "
"imported and exported."
msgstr ""
"GLTFDocument поддерживает чтение данных из файла glTF, буфера или сцены "
"Godot. Затем эти данные можно записать в файловую систему, буфер или "
"использовать для создания сцены Godot.\n"
"Все данные в сцене glTF хранятся в классе [GLTFState]. GLTFDocument "
"обрабатывает объекты состояния, но не содержит никаких данных самой сцены. "
"GLTFDocument имеет переменные-члены для хранения параметров конфигурации "
"экспорта, таких как формат изображения, но в остальном не имеет состояния. "
"Несколько сцен можно обрабатывать с теми же настройками, используя тот же "
"объект GLTFDocument и разные объекты [GLTFState].\n"
"GLTFDocument можно расширить с помощью произвольной функциональности, "
"расширив класс [GLTFDocumentExtension] и зарегистрировав его в GLTFDocument "
"через [method register_gltf_document_extension]. Это позволяет импортировать "
"и экспортировать пользовательские данные."

msgid "glTF 'What the duck?' guide"
msgstr "glTF \"Что за утка?\" руководство"

msgid "Khronos glTF specification"
msgstr "Спецификация Khronos glTF"

msgid ""
"Takes a [PackedByteArray] defining a glTF and imports the data to the given "
"[GLTFState] object through the [param state] parameter.\n"
"[b]Note:[/b] The [param base_path] tells [method append_from_buffer] where to "
"find dependencies and can be empty."
msgstr ""
"Принимает [PackedByteArray], определяющий glTF, и импортирует данные в "
"заданный объект [GLTFState] через параметр [param state].\n"
"[b]Примечание:[/b] [param base_path] сообщает [method append_from_buffer], "
"где найти зависимости, и может быть пустым."

msgid ""
"Takes a path to a glTF file and imports the data at that file path to the "
"given [GLTFState] object through the [param state] parameter.\n"
"[b]Note:[/b] The [param base_path] tells [method append_from_file] where to "
"find dependencies and can be empty."
msgstr ""
"Берет путь к файлу glTF и импортирует данные по этому пути к файлу в "
"указанный объект [GLTFState] через параметр [param state].\n"
"[b]Примечание:[/b] Параметр [param base_path] сообщает [method "
"append_from_file], где искать зависимости, и может быть пустым."

msgid ""
"Takes a Godot Engine scene node and exports it and its descendants to the "
"given [GLTFState] object through the [param state] parameter."
msgstr ""
"Берет узел сцены Godot Engine и экспортирует его и его потомков в заданный "
"объект [GLTFState] через параметр [param state]."

msgid ""
"Determines a mapping between the given Godot [param node_path] and the "
"corresponding glTF Object Model JSON pointer(s) in the generated glTF file. "
"The details of this mapping are returned in a [GLTFObjectModelProperty] "
"object. Additional mappings can be supplied via the [method "
"GLTFDocumentExtension._import_object_model_property] callback method."
msgstr ""
"Определяет сопоставление между заданным Godot [param node_path] и "
"соответствующим указателем(ями) JSON объектной модели glTF в сгенерированном "
"файле glTF. Подробности этого сопоставления возвращаются в объекте "
"[GLTFObjectModelProperty]. Дополнительные сопоставления могут быть "
"предоставлены с помощью метода обратного вызова [method "
"GLTFDocumentExtension._import_object_model_property]."

msgid ""
"Takes a [GLTFState] object through the [param state] parameter and returns a "
"glTF [PackedByteArray]."
msgstr ""
"Принимает объект [GLTFState] через параметр [param state] и возвращает glTF "
"[PackedByteArray]."

msgid ""
"Takes a [GLTFState] object through the [param state] parameter and returns a "
"Godot Engine scene node.\n"
"The [param bake_fps] parameter overrides the bake_fps in [param state]."
msgstr ""
"Принимает объект [GLTFState] через параметр [param state] и возвращает узел "
"сцены Godot Engine.\n"
"Параметр [param bake_fps] переопределяет bake_fps в [param state]."

msgid ""
"Returns a list of all support glTF extensions, including extensions supported "
"directly by the engine, and extensions supported by user plugins registering "
"[GLTFDocumentExtension] classes.\n"
"[b]Note:[/b] If this method is run before a GLTFDocumentExtension is "
"registered, its extensions won't be included in the list. Be sure to only run "
"this method after all extensions are registered. If you run this when the "
"engine starts, consider waiting a frame before calling this method to ensure "
"all extensions are registered."
msgstr ""
"Возвращает список всех поддерживаемых расширений glTF, включая расширения, "
"поддерживаемые непосредственно движком, и расширения, поддерживаемые "
"пользовательскими плагинами, регистрирующими классы [GLTFDocumentExtension].\n"
"[b]Примечание:[/b] Если этот метод запущен до регистрации "
"GLTFDocumentExtension, его расширения не будут включены в список. Обязательно "
"запускайте этот метод только после регистрации всех расширений. Если вы "
"запускаете его при запуске движка, рассмотрите возможность ожидания кадра "
"перед вызовом этого метода, чтобы убедиться, что все расширения "
"зарегистрированы."

msgid ""
"Determines a mapping between the given glTF Object Model [param json_pointer] "
"and the corresponding Godot node path(s) in the generated Godot scene. The "
"details of this mapping are returned in a [GLTFObjectModelProperty] object. "
"Additional mappings can be supplied via the [method "
"GLTFDocumentExtension._export_object_model_property] callback method."
msgstr ""
"Определяет сопоставление между заданной моделью объекта glTF [param "
"json_pointer] и соответствующим путям узла Godot в сгенерированной сцене "
"Godot. Подробности этого сопоставления возвращаются в объекте "
"[GLTFObjectModelProperty]. Дополнительные сопоставления могут быть "
"предоставлены с помощью метода обратного вызова [method "
"GLTFDocumentExtension._export_object_model_property]."

msgid ""
"Registers the given [GLTFDocumentExtension] instance with GLTFDocument. If "
"[param first_priority] is [code]true[/code], this extension will be run "
"first. Otherwise, it will be run last.\n"
"[b]Note:[/b] Like GLTFDocument itself, all GLTFDocumentExtension classes must "
"be stateless in order to function properly. If you need to store data, use "
"the [code]set_additional_data[/code] and [code]get_additional_data[/code] "
"methods in [GLTFState] or [GLTFNode]."
msgstr ""
"Регистрирует заданный экземпляр [GLTFDocumentExtension] с GLTFDocument. Если "
"[param first_priority] равен [code]true[/code], это расширение будет запущено "
"первым. В противном случае оно будет запущено последним.\n"
"[b]Примечание:[/b] Как и сам GLTFDocument, все классы GLTFDocumentExtension "
"должны быть без состояния для правильной работы. Если вам нужно сохранить "
"данные, используйте методы [code]set_additional_data[/code] и "
"[code]get_additional_data[/code] в [GLTFState] или [GLTFNode]."

msgid "Unregisters the given [GLTFDocumentExtension] instance."
msgstr "Отменяет регистрацию указанного экземпляра [GLTFDocumentExtension]."

msgid ""
"Takes a [GLTFState] object through the [param state] parameter and writes a "
"glTF file to the filesystem.\n"
"[b]Note:[/b] The extension of the glTF file determines if it is a .glb binary "
"file or a .gltf text file."
msgstr ""
"Принимает объект [GLTFState] через параметр [param state] и записывает файл "
"glTF в файловую систему.\n"
"[b]Примечание:[/b] Расширение файла glTF определяет, является ли он двоичным "
"файлом .glb или текстовым файлом .gltf."

msgid ""
"The user-friendly name of the fallback image format. This is used when "
"exporting the glTF file, including writing to a file and writing to a byte "
"array.\n"
"This property may only be one of \"None\", \"PNG\", or \"JPEG\", and is only "
"used when the [member image_format] is not one of \"None\", \"PNG\", or "
"\"JPEG\". If having multiple extension image formats is desired, that can be "
"done using a [GLTFDocumentExtension] class - this property only covers the "
"use case of providing a base glTF fallback image when using a custom image "
"format."
msgstr ""
"Удобное для пользователя, имя резервного формата изображения. Используется "
"при экспорте файла glTF, включая запись в файл и запись в массив байтов.\n"
"Это свойство может быть только одним из \"None\", \"PNG\" или \"JPEG\" и "
"используется только тогда, когда [member image_format] не является одним из "
"\"None\", \"PNG\" или \"JPEG\". Если требуется иметь несколько форматов "
"изображений с расширением, это можно сделать с помощью класса "
"[GLTFDocumentExtension] — это свойство охватывает только вариант "
"использования предоставления базового резервного изображения glTF при "
"использовании пользовательского формата изображения."

msgid ""
"The quality of the fallback image, if any. For PNG files, this downscales the "
"image on both dimensions by this factor. For JPEG files, this is the lossy "
"quality of the image. A low value is recommended, since including multiple "
"high quality images in a glTF file defeats the file size gains of using a "
"more efficient image format."
msgstr ""
"Качество резервного изображения, если таковое имеется. Для файлов PNG это "
"уменьшает изображение по обоим измерениям на этот коэффициент. Для файлов "
"JPEG это качество изображения с потерями. Рекомендуется низкое значение, "
"поскольку включение нескольких высококачественных изображений в файл glTF "
"сводит на нет выигрыш в размере файла за счет использования более "
"эффективного формата изображения."

msgid ""
"The user-friendly name of the export image format. This is used when "
"exporting the glTF file, including writing to a file and writing to a byte "
"array.\n"
"By default, Godot allows the following options: \"None\", \"PNG\", \"JPEG\", "
"\"Lossless WebP\", and \"Lossy WebP\". Support for more image formats can be "
"added in [GLTFDocumentExtension] classes. A single extension class can "
"provide multiple options for the specific format to use, or even an option "
"that uses multiple formats at once."
msgstr ""
"Удобное для пользователя название формата экспортируемого изображения. "
"Используется при экспорте файла glTF, включая запись в файл и запись в массив "
"байтов.\n"
"По умолчанию Godot допускает следующие параметры: «None», «PNG», «JPEG», "
"«Lossless WebP» и «Lossy WebP». Поддержка дополнительных форматов изображений "
"может быть добавлена в классы [GLTFDocumentExtension]. Один класс расширения "
"может предоставлять несколько параметров для конкретного используемого "
"формата или даже параметр, который использует несколько форматов одновременно."

msgid ""
"If [member image_format] is a lossy image format, this determines the lossy "
"quality of the image. On a range of [code]0.0[/code] to [code]1.0[/code], "
"where [code]0.0[/code] is the lowest quality and [code]1.0[/code] is the "
"highest quality. A lossy quality of [code]1.0[/code] is not the same as "
"lossless."
msgstr ""
"Если [member image_format] — это формат изображения с потерями (lossy), это "
"определяет качество изображения с потерями. В диапазоне от [code]0.0[/code] "
"до [code]1.0[/code], где [code]0.0[/code] — самое низкое качество, а "
"[code]1.0[/code] — самое высокое качество. Качество с потерями [code]1.0[/"
"code] не то же самое, что и без потерь."

msgid ""
"How to process the root node during export. The default and recommended value "
"is [constant ROOT_NODE_MODE_SINGLE_ROOT].\n"
"[b]Note:[/b] Regardless of how the glTF file is exported, when importing, the "
"root node type and name can be overridden in the scene import settings tab."
msgstr ""
"Как обрабатывать корневой узел во время экспорта. Значение по умолчанию и "
"рекомендуемое значение — [constant ROOT_NODE_MODE_SINGLE_ROOT].\n"
"[b]Примечание:[/b] Независимо от того, как экспортируется файл glTF, при "
"импорте тип и имя корневого узла можно переопределить на вкладке настроек "
"импорта сцены."

msgid ""
"How to deal with node visibility during export. This setting does nothing if "
"all nodes are visible. The default and recommended value is [constant "
"VISIBILITY_MODE_INCLUDE_REQUIRED], which uses the [code]KHR_node_visibility[/"
"code] extension."
msgstr ""
"Как работать с видимостью узлов во время экспорта. Эта настройка ничего не "
"делает, если все узлы видны. Значение по умолчанию и рекомендуемое значение — "
"[constant VISIBILITY_MODE_INCLUDE_REQUIRED], которое использует расширение "
"[code]KHR_node_visibility[/code]."

msgid ""
"Treat the Godot scene's root node as the root node of the glTF file, and mark "
"it as the single root node via the [code]GODOT_single_root[/code] glTF "
"extension. This will be parsed the same as [constant "
"ROOT_NODE_MODE_KEEP_ROOT] if the implementation does not support "
"[code]GODOT_single_root[/code]."
msgstr ""
"Обрабатывать корневой узел сцены Godot как корневой узел файла glTF и "
"отмечать его как единственный корневой узел с помощью расширения glTF "
"[code]GODOT_single_root[/code]. Это будет проанализировано так же, как "
"[constant ROOT_NODE_MODE_KEEP_ROOT], если реализация не поддерживает "
"[code]GODOT_single_root[/code]."

msgid ""
"Treat the Godot scene's root node as the root node of the glTF file, but do "
"not mark it as anything special. An extra root node will be generated when "
"importing into Godot. This uses only vanilla glTF features. This is "
"equivalent to the behavior in Godot 4.1 and earlier."
msgstr ""
"Обрабатывайте корневой узел сцены Godot как корневой узел файла glTF, но не "
"помечайте его как что-то особенное. При импорте в Godot будет сгенерирован "
"дополнительный корневой узел. Это использует только функции vanilla glTF. Это "
"эквивалентно поведению в Godot 4.1 и более ранних версиях."

msgid ""
"Treat the Godot scene's root node as the name of the glTF scene, and add all "
"of its children as root nodes of the glTF file. This uses only vanilla glTF "
"features. This avoids an extra root node, but only the name of the Godot "
"scene's root node will be preserved, as it will not be saved as a node."
msgstr ""
"Обрабатывать корневой узел сцены Godot как имя сцены glTF и добавлять все его "
"дочерние элементы как корневые узлы файла glTF. Это использует только "
"ванильные функции glTF. Это позволяет избежать дополнительного корневого "
"узла, но будет сохранено только имя корневого узла сцены Godot, поскольку оно "
"не будет сохранено как узел."

msgid ""
"If the scene contains any non-visible nodes, include them, mark them as non-"
"visible with [code]KHR_node_visibility[/code], and require that importers "
"respect their non-visibility. Downside: If the importer does not support "
"[code]KHR_node_visibility[/code], the file cannot be imported."
msgstr ""
"Если сцена содержит какие-либо невидимые узлы, включите их, отметьте их как "
"невидимые с помощью [code]KHR_node_visibility[/code] и потребуйте, чтобы "
"импортеры учитывали их невидимость. Недостаток: если импортер не поддерживает "
"[code]KHR_node_visibility[/code], файл не может быть импортирован."

msgid ""
"If the scene contains any non-visible nodes, include them, mark them as non-"
"visible with [code]KHR_node_visibility[/code], and do not impose any "
"requirements on importers. Downside: If the importer does not support "
"[code]KHR_node_visibility[/code], invisible objects will be visible."
msgstr ""
"Если сцена содержит какие-либо невидимые узлы, включите их, отметьте их как "
"невидимые с помощью [code]KHR_node_visibility[/code] и не предъявляйте "
"никаких требований к импортерам. Недостаток: если импортер не поддерживает "
"[code]KHR_node_visibility[/code], невидимые объекты будут видны."

msgid ""
"If the scene contains any non-visible nodes, do not include them in the "
"export. This is the same as the behavior in Godot 4.4 and earlier. Downside: "
"Invisible nodes will not exist in the exported file."
msgstr ""
"Если сцена содержит какие-либо невидимые узлы, не включайте их в экспорт. Это "
"то же самое, что и в Godot 4.4 и более ранних версиях. Недостаток: невидимые "
"узлы не будут существовать в экспортированном файле."

msgid "[GLTFDocument] extension class."
msgstr "Класс расширения [GLTFDocument]."

msgid ""
"Extends the functionality of the [GLTFDocument] class by allowing you to run "
"arbitrary code at various stages of glTF import or export.\n"
"To use, make a new class extending GLTFDocumentExtension, override any "
"methods you need, make an instance of your class, and register it using "
"[method GLTFDocument.register_gltf_document_extension].\n"
"[b]Note:[/b] Like GLTFDocument itself, all GLTFDocumentExtension classes must "
"be stateless in order to function properly. If you need to store data, use "
"the [code]set_additional_data[/code] and [code]get_additional_data[/code] "
"methods in [GLTFState] or [GLTFNode]."
msgstr ""
"Расширяет функциональность класса [GLTFDocument], позволяя вам запускать "
"произвольный код на различных этапах импорта или экспорта glTF.\n"
"Для использования создайте новый класс, расширяющий GLTFDocumentExtension, "
"переопределите все необходимые методы, создайте экземпляр вашего класса и "
"зарегистрируйте его с помощью [method "
"GLTFDocument.register_gltf_document_extension].\n"
"[b]Примечание:[/b] Как и сам GLTFDocument, все классы GLTFDocumentExtension "
"должны быть без состояния для правильной работы. Если вам нужно хранить "
"данные, используйте методы [code]set_additional_data[/code] и "
"[code]get_additional_data[/code] в [GLTFState] или [GLTFNode]."

msgid ""
"Part of the export process. This method is run after [method "
"_export_preflight] and before [method _export_post_convert].\n"
"Runs when converting the data from a Godot scene node. This method can be "
"used to process the Godot scene node data into a format that can be used by "
"[method _export_node]."
msgstr ""
"Часть процесса экспорта. Этот метод запускается после [method "
"_export_preflight] и до [method _export_post_convert].\n"
"Запускается при конвертации данных из узла сцены Godot. Этот метод можно "
"использовать для обработки данных узла сцены Godot в формат, который может "
"использоваться [method _export_node]."

msgid ""
"Part of the export process. This method is run after [method "
"_get_saveable_image_formats] and before [method _export_post]. If this "
"[GLTFDocumentExtension] is used for exporting images, this runs after [method "
"_serialize_texture_json].\n"
"This method can be used to modify the final JSON of each node. Data should be "
"primarily stored in [param gltf_node] prior to serializing the JSON, but the "
"original Godot [Node] is also provided if available. [param node] may be "
"[code]null[/code] if not available, such as when exporting glTF data not "
"generated from a Godot scene."
msgstr ""
"Часть процесса экспорта. Этот метод запускается после [method "
"_get_saveable_image_formats] и до [method _export_post]. Если этот "
"[GLTFDocumentExtension] используется для экспорта изображений, он запускается "
"после [method _serialize_texture_json].\n"
"Этот метод можно использовать для изменения окончательного JSON каждого узла. "
"Данные должны быть в первую очередь сохранены в [param gltf_node] до "
"сериализации JSON, но исходный [Node] Godot также предоставляется, если он "
"доступен. [param node] может быть [code]null[/code], если он недоступен, "
"например, при экспорте данных glTF, не сгенерированных из сцены Godot."

msgid ""
"Part of the export process. Allows GLTFDocumentExtension classes to provide "
"mappings for properties of nodes in the Godot scene tree, to JSON pointers to "
"glTF properties, as defined by the glTF object model.\n"
"Returns a [GLTFObjectModelProperty] instance that defines how the property "
"should be mapped. If your extension can't handle the property, return "
"[code]null[/code] or an instance without any JSON pointers (see [method "
"GLTFObjectModelProperty.has_json_pointers]). You should use [method "
"GLTFObjectModelProperty.set_types] to set the types, and set the JSON "
"pointer(s) using the [member GLTFObjectModelProperty.json_pointers] "
"property.\n"
"The parameters provide context for the property, including the NodePath, the "
"Godot node, the GLTF node index, and the target object. The [param "
"target_object] will be equal to [param godot_node] if no sub-object can be "
"found, otherwise it will point to a sub-object. For example, if the path is "
"[code]^\"A/B/C/MeshInstance3D:mesh:surface_0/material:emission_intensity\"[/"
"code], it will get the node, then the mesh, and then the material, so [param "
"target_object] will be the [Material] resource, and [param target_depth] will "
"be 2 because 2 levels were traversed to get to the target."
msgstr ""
"Часть процесса экспорта. Позволяет классам GLTFDocumentExtension "
"предоставлять сопоставления для свойств узлов в дереве сцены Godot, "
"указателям JSON на свойства glTF, как определено объектной моделью glTF.\n"
"Возвращает экземпляр [GLTFObjectModelProperty], который определяет, как "
"свойство должно быть сопоставлено. Если ваше расширение не может обработать "
"свойство, верните [code]null[/code] или экземпляр без каких-либо указателей "
"JSON (см. [method GLTFObjectModelProperty.has_json_pointers]). Вам следует "
"использовать [method GLTFObjectModelProperty.set_types] для установки типов и "
"задать указатель(и) JSON с помощью свойства [member "
"GLTFObjectModelProperty.json_pointers].\n"
"Параметры предоставляют контекст для свойства, включая NodePath, узел Godot, "
"индекс узла GLTF и целевой объект. [param target_object] будет равен [param "
"godot_node], если не может быть найден ни один подобъект, в противном случае "
"он будет указывать на подобъект. Например, если путь [code]^\"A/B/C/"
"MeshInstance3D:mesh:surface_0/material:emission_intensity\"[/code], он "
"получит узел, затем сетку, а затем материал, поэтому [param target_object] "
"будет ресурсом [Material], а [param target_depth] будет равен 2, поскольку "
"для достижения цели было пройдено 2 уровня."

msgid ""
"Part of the export process. This method is run last, after all other parts of "
"the export process.\n"
"This method can be used to modify the final JSON of the generated glTF file."
msgstr ""
"Часть процесса экспорта. Этот метод запускается последним, после всех "
"остальных частей процесса экспорта.\n"
"Этот метод можно использовать для изменения окончательного JSON "
"сгенерированного файла glTF."

msgid ""
"Part of the export process. This method is run after [method "
"_convert_scene_node] and before [method _export_preserialize].\n"
"This method can be used to modify the converted node data structures before "
"serialization with any additional data from the scene tree."
msgstr ""
"Часть процесса экспорта. Этот метод запускается после [method "
"_convert_scene_node] и перед [method _export_preserialize].\n"
"Этот метод можно использовать для изменения структур данных преобразованного "
"узла перед сериализацией с любыми дополнительными данными из дерева сцены."

msgid ""
"Part of the export process. This method is run first, before all other parts "
"of the export process.\n"
"The return value is used to determine if this [GLTFDocumentExtension] "
"instance should be used for exporting a given glTF file. If [constant OK], "
"the export will use this [GLTFDocumentExtension] instance. If not overridden, "
"[constant OK] is returned."
msgstr ""
"Часть процесса экспорта. Этот метод запускается первым, до всех остальных "
"частей процесса экспорта.\n"
"Возвращаемое значение используется для определения того, следует ли "
"использовать этот экземпляр [GLTFDocumentExtension] для экспорта заданного "
"файла glTF. Если [constant OK], экспорт будет использовать этот экземпляр "
"[GLTFDocumentExtension]. Если не переопределено, возвращается [constant OK]."

msgid ""
"Part of the export process. This method is run after [method "
"_export_post_convert] and before [method _get_saveable_image_formats].\n"
"This method can be used to alter the state before performing serialization. "
"It runs every time when generating a buffer with [method "
"GLTFDocument.generate_buffer] or writing to the file system with [method "
"GLTFDocument.write_to_filesystem]."
msgstr ""
"Часть процесса экспорта. Этот метод запускается после [method "
"_export_post_convert] и до [method _get_saveable_image_formats].\n"
"Этот метод можно использовать для изменения состояния перед выполнением "
"сериализации. Он запускается каждый раз при генерации буфера с помощью "
"[method GLTFDocument.generate_buffer] или записи в файловую систему с помощью "
"[method GLTFDocument.write_to_filesystem]."

msgid ""
"Part of the import process. This method is run after [method "
"_import_pre_generate] and before [method _import_node].\n"
"Runs when generating a Godot scene node from a GLTFNode. The returned node "
"will be added to the scene tree. Multiple nodes can be generated in this step "
"if they are added as a child of the returned node.\n"
"[b]Note:[/b] The [param scene_parent] parameter may be [code]null[/code] if "
"this is the single root node."
msgstr ""
"Часть процесса импорта. Этот метод запускается после [method "
"_import_pre_generate] и до [method _import_node].\n"
"Запускается при генерации узла сцены Godot из GLTFNode. Возвращаемый узел "
"будет добавлен в дерево сцены. На этом этапе можно сгенерировать несколько "
"узлов, если они добавляются как дочерние элементы возвращаемого узла.\n"
"[b]Примечание:[/b] Параметр [param scene_parent] может быть [code]null[/"
"code], если это единственный корневой узел."

msgid ""
"Returns the file extension to use for saving image data into, for example, "
"[code]\".png\"[/code]. If defined, when this extension is used to handle "
"images, and the images are saved to a separate file, the image bytes will be "
"copied to a file with this extension. If this is set, there should be a "
"[ResourceImporter] class able to import the file. If not defined or empty, "
"Godot will save the image into a PNG file."
msgstr ""
"Возвращает расширение файла, используемое для сохранения данных изображения, "
"например, [code]\".png\"[/code]. Если определено, когда это расширение "
"используется для обработки изображений, и изображения сохраняются в отдельный "
"файл, байты изображения будут скопированы в файл с этим расширением. Если это "
"задано, должен быть класс [ResourceImporter], способный импортировать файл. "
"Если не определено или пусто, Godot сохранит изображение в файл PNG."

msgid ""
"Part of the export process. This method is run after [method "
"_convert_scene_node] and before [method _export_node].\n"
"Returns an array of the image formats that can be saved/exported by this "
"extension. This extension will only be selected as the image exporter if the "
"[GLTFDocument]'s [member GLTFDocument.image_format] is in this array. If this "
"[GLTFDocumentExtension] is selected as the image exporter, one of the [method "
"_save_image_at_path] or [method _serialize_image_to_bytes] methods will run "
"next, otherwise [method _export_node] will run next. If the format name "
"contains [code]\"Lossy\"[/code], the lossy quality slider will be displayed."
msgstr ""
"Часть процесса экспорта. Этот метод запускается после [method "
"_convert_scene_node] и до [method _export_node].\n"
"Возвращает массив форматов изображений, которые могут быть сохранены/"
"экспортированы этим расширением. Это расширение будет выбрано в качестве "
"экспортера изображений, только если [member GLTFDocument.image_format] "
"[GLTFDocument] находится в этом массиве. Если этот [GLTFDocumentExtension] "
"выбран в качестве экспортера изображений, следующим будет запущен один из "
"методов [method _save_image_at_path] или [method _serialize_image_to_bytes], "
"в противном случае следующим будет запущен [method _export_node]. Если имя "
"формата содержит [code]\"Lossy\"[/code], будет отображен ползунок качества с "
"потерями."

msgid ""
"Part of the import process. This method is run after [method "
"_import_preflight] and before [method _parse_node_extensions].\n"
"Returns an array of the glTF extensions supported by this "
"GLTFDocumentExtension class. This is used to validate if a glTF file with "
"required extensions can be loaded."
msgstr ""
"Часть процесса импорта. Этот метод запускается после [method "
"_import_preflight] и до [method _parse_node_extensions].\n"
"Возвращает массив расширений glTF, поддерживаемых этим классом "
"GLTFDocumentExtension. Используется для проверки возможности загрузки файла "
"glTF с требуемыми расширениями."

msgid ""
"Part of the import process. This method is run after [method "
"_generate_scene_node] and before [method _import_post].\n"
"This method can be used to make modifications to each of the generated Godot "
"scene nodes."
msgstr ""
"Часть процесса импорта. Этот метод запускается после [method "
"_generate_scene_node] и перед [method _import_post].\n"
"Этот метод можно использовать для внесения изменений в каждый из "
"сгенерированных узлов сцены Godot."

msgid ""
"Part of the import process. Allows GLTFDocumentExtension classes to provide "
"mappings for JSON pointers to glTF properties, as defined by the glTF object "
"model, to properties of nodes in the Godot scene tree.\n"
"Returns a [GLTFObjectModelProperty] instance that defines how the property "
"should be mapped. If your extension can't handle the property, return "
"[code]null[/code] or an instance without any NodePaths (see [method "
"GLTFObjectModelProperty.has_node_paths]). You should use [method "
"GLTFObjectModelProperty.set_types] to set the types, and [method "
"GLTFObjectModelProperty.append_path_to_property] function is useful for most "
"simple cases.\n"
"In many cases, [param partial_paths] will contain the start of a path, "
"allowing the extension to complete the path. For example, for [code]/nodes/3/"
"extensions/MY_ext/prop[/code], Godot will pass you a NodePath that leads to "
"node 3, so the GLTFDocumentExtension class only needs to resolve the last "
"[code]MY_ext/prop[/code] part of the path. In this example, the extension "
"should check [code]split.size() > 4 and split[0] == \"nodes\" and split[2] == "
"\"extensions\" and split[3] == \"MY_ext\"[/code] at the start of the function "
"to check if this JSON pointer applies to it, then it can use [param "
"partial_paths] and handle [code]split[4][/code]."
msgstr ""
"Часть процесса импорта. Позволяет классам GLTFDocumentExtension предоставлять "
"сопоставления для указателей JSON на свойства glTF, как определено объектной "
"моделью glTF, со свойствами узлов в дереве сцены Godot.\n"
"Возвращает экземпляр [GLTFObjectModelProperty], который определяет, как "
"свойство должно быть сопоставлено. Если ваше расширение не может обработать "
"свойство, верните [code]null[/code] или экземпляр без NodePaths (см. [method "
"GLTFObjectModelProperty.has_node_paths]). Вам следует использовать [method "
"GLTFObjectModelProperty.set_types] для установки типов, а функция [method "
"GLTFObjectModelProperty.append_path_to_property] полезна для большинства "
"простых случаев.\n"
"Во многих случаях [param partial_paths] будет содержать начало пути, позволяя "
"расширению завершить путь. Например, для [code]/nodes/3/extensions/MY_ext/"
"prop[/code] Godot передаст вам NodePath, который ведет к узлу 3, поэтому "
"классу GLTFDocumentExtension нужно разрешить только последнюю часть пути "
"[code]MY_ext/prop[/code]. В этом примере расширение должно проверить "
"[code]split.size() > 4 and split[0] == \"nodes\" and split[2] == "
"\"extensions\" and split[3] == \"MY_ext\"[/code] в начале функции, чтобы "
"проверить, применяется ли к ней этот указатель JSON, затем он может "
"использовать [param partial_paths] и обработать [code]split[4][/code]."

msgid ""
"Part of the import process. This method is run last, after all other parts of "
"the import process.\n"
"This method can be used to modify the final Godot scene generated by the "
"import process."
msgstr ""
"Часть процесса импорта. Этот метод запускается последним, после всех "
"остальных частей процесса импорта.\n"
"Этот метод можно использовать для изменения финальной сцены Godot, созданной "
"в процессе импорта."

msgid ""
"Part of the import process. This method is run after [method "
"_parse_node_extensions] and before [method _import_pre_generate].\n"
"This method can be used to modify any of the data imported so far after "
"parsing each node, but before generating the scene or any of its nodes."
msgstr ""
"Часть процесса импорта. Этот метод запускается после [method "
"_parse_node_extensions] и перед [method _import_pre_generate].\n"
"Этот метод можно использовать для изменения любых данных, импортированных до "
"сих пор после анализа каждого узла, но до генерации сцены или любого из ее "
"узлов."

msgid ""
"Part of the import process. This method is run after [method "
"_import_post_parse] and before [method _generate_scene_node].\n"
"This method can be used to modify or read from any of the processed data "
"structures, before generating the nodes and then running the final per-node "
"import step."
msgstr ""
"Часть процесса импорта. Этот метод запускается после [method "
"_import_post_parse] и перед [method _generate_scene_node].\n"
"Этот метод можно использовать для изменения или чтения из любой обработанной "
"структуры данных перед генерацией узлов и последующим запуском последнего "
"шага импорта по узлам."

msgid ""
"Part of the import process. This method is run first, before all other parts "
"of the import process.\n"
"The return value is used to determine if this [GLTFDocumentExtension] "
"instance should be used for importing a given glTF file. If [constant OK], "
"the import will use this [GLTFDocumentExtension] instance. If not overridden, "
"[constant OK] is returned."
msgstr ""
"Часть процесса импорта. Этот метод запускается первым, до всех остальных "
"частей процесса импорта.\n"
"Возвращаемое значение используется для определения того, следует ли "
"использовать этот экземпляр [GLTFDocumentExtension] для импорта заданного "
"файла glTF. Если [constant OK], импорт будет использовать этот экземпляр "
"[GLTFDocumentExtension]. Если не переопределено, возвращается [constant OK]."

msgid ""
"Part of the import process. This method is run after [method "
"_parse_node_extensions] and before [method _parse_texture_json].\n"
"Runs when parsing image data from a glTF file. The data could be sourced from "
"a separate file, a URI, or a buffer, and then is passed as a byte array."
msgstr ""
"Часть процесса импорта. Этот метод запускается после [method "
"_parse_node_extensions] и до [method _parse_texture_json].\n"
"Запускается при разборе данных изображения из файла glTF. Данные могут быть "
"получены из отдельного файла, URI или буфера, а затем переданы как массив "
"байтов."

msgid ""
"Part of the import process. This method is run after [method "
"_get_supported_extensions] and before [method _import_post_parse].\n"
"Runs when parsing the node extensions of a GLTFNode. This method can be used "
"to process the extension JSON data into a format that can be used by [method "
"_generate_scene_node]. The return value should be a member of the [enum "
"Error] enum."
msgstr ""
"Часть процесса импорта. Этот метод запускается после [method "
"_get_supported_extensions] и до [method _import_post_parse].\n"
"Запускается при разборе расширений узлов GLTFNode. Этот метод можно "
"использовать для обработки данных расширения JSON в формат, который может "
"использоваться [method _generate_scene_node]. Возвращаемое значение должно "
"быть членом перечисления [enum Error]."

msgid ""
"Part of the import process. This method is run after [method "
"_parse_image_data] and before [method _generate_scene_node].\n"
"Runs when parsing the texture JSON from the glTF textures array. This can be "
"used to set the source image index to use as the texture."
msgstr ""
"Часть процесса импорта. Этот метод запускается после [method "
"_parse_image_data] и до [method _generate_scene_node].\n"
"Запускается при разборе текстуры JSON из массива текстур glTF. Это можно "
"использовать для установки индекса исходного изображения для использования в "
"качестве текстуры."

msgid ""
"Part of the export process. This method is run after [method "
"_get_saveable_image_formats] and before [method _serialize_texture_json].\n"
"This method is run when saving images separately from the glTF file. When "
"images are embedded, [method _serialize_image_to_bytes] runs instead. Note "
"that these methods only run when this [GLTFDocumentExtension] is selected as "
"the image exporter."
msgstr ""
"Часть процесса экспорта. Этот метод запускается после [method "
"_get_saveable_image_formats] и до [method _serialize_texture_json].\n"
"Этот метод запускается при сохранении изображений отдельно от файла glTF. "
"Если изображения встроены, вместо него запускается [method "
"_serialize_image_to_bytes]. Обратите внимание, что эти методы запускаются "
"только тогда, когда в качестве экспортера изображений выбрано "
"[GLTFDocumentExtension]."

msgid ""
"Part of the export process. This method is run after [method "
"_get_saveable_image_formats] and before [method _serialize_texture_json].\n"
"This method is run when embedding images in the glTF file. When images are "
"saved separately, [method _save_image_at_path] runs instead. Note that these "
"methods only run when this [GLTFDocumentExtension] is selected as the image "
"exporter.\n"
"This method must set the image MIME type in the [param image_dict] with the "
"[code]\"mimeType\"[/code] key. For example, for a PNG image, it would be set "
"to [code]\"image/png\"[/code]. The return value must be a [PackedByteArray] "
"containing the image data."
msgstr ""
"Часть процесса экспорта. Этот метод запускается после [method "
"_get_saveable_image_formats] и до [method _serialize_texture_json].\n"
"Этот метод запускается при встраивании изображений в файл glTF. Когда "
"изображения сохраняются отдельно, вместо него запускается [method "
"_save_image_at_path]. Обратите внимание, что эти методы запускаются только "
"тогда, когда в качестве экспортера изображений выбрано "
"[GLTFDocumentExtension].\n"
"Этот метод должен задать тип MIME изображения в [param image_dict] с ключом "
"[code]\"mimeType\"[/code]. Например, для изображения PNG он будет установлен "
"на [code]\"image/png\"[/code]. Возвращаемое значение должно быть "
"[PackedByteArray], содержащим данные изображения."

msgid ""
"Part of the export process. This method is run after [method "
"_save_image_at_path] or [method _serialize_image_to_bytes], and before "
"[method _export_node]. Note that this method only runs when this "
"[GLTFDocumentExtension] is selected as the image exporter.\n"
"This method can be used to set up the extensions for the texture JSON by "
"editing [param texture_json]. The extension must also be added as used "
"extension with [method GLTFState.add_used_extension], be sure to set "
"[code]required[/code] to [code]true[/code] if you are not providing a "
"fallback."
msgstr ""
"Часть процесса экспорта. Этот метод запускается после [method "
"_save_image_at_path] или [method _serialize_image_to_bytes] и перед [method "
"_export_node]. Обратите внимание, что этот метод запускается только тогда, "
"когда этот [GLTFDocumentExtension] выбран в качестве экспортера изображений.\n"
"Этот метод можно использовать для настройки расширений для текстуры JSON "
"путем редактирования [param texture_json]. Расширение также должно быть "
"добавлено как используемое расширение с [method "
"GLTFState.add_used_extension], обязательно установите [code]required[/code] "
"на [code]true[/code], если вы не предоставляете запасной вариант."

msgid "Represents a glTF light."
msgstr "Представляет собой свет glTF."

msgid ""
"Represents a light as defined by the [code]KHR_lights_punctual[/code] glTF "
"extension."
msgstr ""
"Представляет собой источник света, определенный расширением "
"[code]KHR_lights_punctual[/code] glTF."

msgid "KHR_lights_punctual glTF extension spec"
msgstr "Спецификация расширения KHR_lights_punctual glTF"

msgid "Creates a new GLTFLight instance by parsing the given [Dictionary]."
msgstr ""
"Создает новый экземпляр GLTFLight путем анализа указанного [Dictionary]."

msgid "Create a new GLTFLight instance from the given Godot [Light3D] node."
msgstr "Создайте новый экземпляр GLTFLight из заданного узла Godot [Light3D]."

msgid "Serializes this GLTFLight instance into a [Dictionary]."
msgstr "Сериализует этот экземпляр GLTFLight в [Dictionary]."

msgid "Converts this GLTFLight instance into a Godot [Light3D] node."
msgstr "Преобразует этот экземпляр GLTFLight в узел Godot [Light3D]."

msgid ""
"The [Color] of the light in linear space. Defaults to white. A black color "
"causes the light to have no effect.\n"
"This value is linear to match glTF, but will be converted to nonlinear sRGB "
"when creating a Godot [Light3D] node upon import, or converted to linear when "
"exporting a Godot [Light3D] to glTF."
msgstr ""
"[Color] света в линейном пространстве. По умолчанию белый. Черный цвет "
"приводит к тому, что свет не оказывает никакого эффекта.\n"
"Это значение линейно для соответствия glTF, но будет преобразовано в "
"нелинейное sRGB при создании узла Godot [Light3D] при импорте или "
"преобразовано в линейное при экспорте Godot [Light3D] в glTF."

msgid ""
"The inner angle of the cone in a spotlight. Must be less than or equal to the "
"outer cone angle.\n"
"Within this angle, the light is at full brightness. Between the inner and "
"outer cone angles, there is a transition from full brightness to zero "
"brightness. When creating a Godot [SpotLight3D], the ratio between the inner "
"and outer cone angles is used to calculate the attenuation of the light."
msgstr ""
"Внутренний угол конуса в прожекторе. Должен быть меньше или равен внешнему "
"углу конуса.\n"
"В пределах этого угла свет имеет полную яркость. Между внутренним и внешним "
"углами конуса происходит переход от полной яркости к нулевой яркости. При "
"создании Godot [SpotLight3D] соотношение между внутренним и внешним углами "
"конуса используется для расчета затухания света."

msgid ""
"The intensity of the light. This is expressed in candelas (lumens per "
"steradian) for point and spot lights, and lux (lumens per m²) for directional "
"lights. When creating a Godot light, this value is converted to a unitless "
"multiplier."
msgstr ""
"Интенсивность света. Выражается в канделах (люменах на стерадиан) для "
"точечных и прожекторных источников света и в люксах (люменах на м²) для "
"направленных источников света. При создании света Godot это значение "
"преобразуется в безразмерный множитель."

msgid ""
"The type of the light. The values accepted by Godot are \"point\", \"spot\", "
"and \"directional\", which correspond to Godot's [OmniLight3D], "
"[SpotLight3D], and [DirectionalLight3D] respectively."
msgstr ""
"Тип света. Значения, принимаемые Godot, — «point», «spot» и «directional», "
"что соответствует [OmniLight3D], [SpotLight3D] и [DirectionalLight3D] Godot "
"соответственно."

msgid ""
"The outer angle of the cone in a spotlight. Must be greater than or equal to "
"the inner angle.\n"
"At this angle, the light drops off to zero brightness. Between the inner and "
"outer cone angles, there is a transition from full brightness to zero "
"brightness. If this angle is a half turn, then the spotlight emits in all "
"directions. When creating a Godot [SpotLight3D], the outer cone angle is used "
"as the angle of the spotlight."
msgstr ""
"Внешний угол конуса в прожекторе. Должен быть больше или равен внутреннему "
"углу.\n"
"Под этим углом свет падает до нулевой яркости. Между внутренним и внешним "
"углами конуса происходит переход от полной яркости к нулевой яркости. Если "
"этот угол равен половине оборота, то прожектор излучает во всех направлениях. "
"При создании Godot [SpotLight3D] внешний угол конуса используется как угол "
"прожектора."

msgid ""
"The range of the light, beyond which the light has no effect. glTF lights "
"with no range defined behave like physical lights (which have infinite "
"range). When creating a Godot light, the range is clamped to [code]4096.0[/"
"code]."
msgstr ""
"Диапазон света, за пределами которого свет не оказывает никакого эффекта. "
"Светильники glTF без определенного диапазона ведут себя как физические "
"светильники (имеющие бесконечный диапазон). При создании света Godot диапазон "
"ограничивается до [code]4096.0[/code]."

msgid "GLTFMesh represents a glTF mesh."
msgstr "GLTFMesh представляет собой сетку glTF."

msgid ""
"GLTFMesh handles 3D mesh data imported from glTF files. It includes "
"properties for blend channels, blend weights, instance materials, and the "
"mesh itself."
msgstr ""
"GLTFMesh обрабатывает данные 3D-сетки, импортированные из файлов glTF. Он "
"включает свойства для каналов смешивания, весов смешивания, материалов "
"экземпляров и самой сетки."

msgid ""
"Gets additional arbitrary data in this [GLTFMesh] instance. This can be used "
"to keep per-node state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The argument should be the [GLTFDocumentExtension] name (does not have to "
"match the extension name in the glTF file), and the return value can be "
"anything you set. If nothing was set, the return value is [code]null[/code]."
msgstr ""
"Получает дополнительные произвольные данные в этом экземпляре [GLTFMesh]. Это "
"можно использовать для хранения данных о состоянии по узлам в классах "
"[GLTFDocumentExtension], что важно, поскольку они не имеют состояния.\n"
"Аргументом должно быть имя [GLTFDocumentExtension] (не обязательно совпадать "
"с именем расширения в файле glTF), а возвращаемое значение может быть любым, "
"которое вы задали. Если ничего не было задано, возвращаемое значение равно "
"[code]null[/code]."

msgid ""
"Sets additional arbitrary data in this [GLTFMesh] instance. This can be used "
"to keep per-node state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The first argument should be the [GLTFDocumentExtension] name (does not have "
"to match the extension name in the glTF file), and the second argument can be "
"anything you want."
msgstr ""
"Устанавливает дополнительные произвольные данные в этом экземпляре "
"[GLTFMesh]. Это можно использовать для хранения данных о состоянии каждого "
"узла в классах [GLTFDocumentExtension], что важно, поскольку они не имеют "
"состояния.\n"
"Первым аргументом должно быть имя [GLTFDocumentExtension] (не обязательно "
"совпадать с именем расширения в файле glTF), а вторым аргументом может быть "
"все, что угодно."

msgid "An array of floats representing the blend weights of the mesh."
msgstr "Массив чисел с плавающей точкой, представляющий веса смешивания сетки."

msgid ""
"An array of Material objects representing the materials used in the mesh."
msgstr ""
"Массив объектов Material, представляющих материалы, используемые в сетке."

msgid "The [ImporterMesh] object representing the mesh itself."
msgstr "Объект [ImporterMesh], представляющий саму сетку."

msgid "The original name of the mesh."
msgstr "Оригинальное название сетки."

msgid "glTF node class."
msgstr "Класс узла glTF."

msgid ""
"Represents a glTF node. glTF nodes may have names, transforms, children "
"(other glTF nodes), and more specialized properties (represented by their own "
"classes).\n"
"glTF nodes generally exist inside of [GLTFState] which represents all data of "
"a glTF file. Most of GLTFNode's properties are indices of other data in the "
"glTF file. You can extend a glTF node with additional properties by using "
"[method get_additional_data] and [method set_additional_data]."
msgstr ""
"Представляет узел glTF. Узлы glTF могут иметь имена, преобразования, дочерние "
"элементы (другие узлы glTF) и более специализированные свойства "
"(представленные их собственными классами).\n"
"Узлы glTF обычно существуют внутри [GLTFState], который представляет все "
"данные файла glTF. Большинство свойств GLTFNode являются индексами других "
"данных в файле glTF. Вы можете расширить узел glTF дополнительными "
"свойствами, используя [method get_additional_data] и [method "
"set_additional_data]."

msgid "glTF scene and node spec"
msgstr "Сцена glTF и спецификация узла"

msgid "Appends the given child node index to the [member children] array."
msgstr "Добавляет заданный индекс дочернего узла к массиву [member children]."

msgid ""
"Gets additional arbitrary data in this [GLTFNode] instance. This can be used "
"to keep per-node state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The argument should be the [GLTFDocumentExtension] name (does not have to "
"match the extension name in the glTF file), and the return value can be "
"anything you set. If nothing was set, the return value is [code]null[/code]."
msgstr ""
"Получает дополнительные произвольные данные в этом экземпляре [GLTFNode]. Это "
"можно использовать для хранения данных о состоянии каждого узла в классах "
"[GLTFDocumentExtension], что важно, поскольку они не имеют состояния.\n"
"Аргументом должно быть имя [GLTFDocumentExtension] (не обязательно совпадать "
"с именем расширения в файле glTF), а возвращаемое значение может быть любым, "
"которое вы задали. Если ничего не было задано, возвращаемое значение равно "
"[code]null[/code]."

msgid ""
"Returns the [NodePath] that this GLTF node will have in the Godot scene tree "
"after being imported. This is useful when importing glTF object model "
"pointers with [GLTFObjectModelProperty], for handling extensions such as "
"[code]KHR_animation_pointer[/code] or [code]KHR_interactivity[/code].\n"
"If [param handle_skeletons] is [code]true[/code], paths to skeleton bone glTF "
"nodes will be resolved properly. For example, a path that would be [code]^\"A/"
"B/C/Bone1/Bone2/Bone3\"[/code] if [code]false[/code] will become [code]^\"A/B/"
"C/Skeleton3D:Bone3\"[/code]."
msgstr ""
"Возвращает [NodePath], который будет у этого узла GLTF в дереве сцены Godot "
"после импорта. Это полезно при импорте указателей модели объекта glTF с "
"помощью [GLTFObjectModelProperty] для обработки расширений, таких как "
"[code]KHR_animation_pointer[/code] или [code]KHR_interactivity[/code].\n"
"Если [param handle_skeletons] равен [code]true[/code], пути к узлам скелетной "
"кости glTF будут разрешены правильно. Например, путь, который будет "
"[code]^\"A/B/C/Bone1/Bone2/Bone3\"[/code], если [code]false[/code] станет "
"[code]^\"A/B/C/Skeleton3D:Bone3\"[/code]."

msgid ""
"Sets additional arbitrary data in this [GLTFNode] instance. This can be used "
"to keep per-node state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The first argument should be the [GLTFDocumentExtension] name (does not have "
"to match the extension name in the glTF file), and the second argument can be "
"anything you want."
msgstr ""
"Устанавливает дополнительные произвольные данные в этом экземпляре "
"[GLTFNode]. Это можно использовать для хранения данных о состоянии каждого "
"узла в классах [GLTFDocumentExtension], что важно, поскольку они не имеют "
"состояния.\n"
"Первым аргументом должно быть имя [GLTFDocumentExtension] (не обязательно "
"совпадать с именем расширения в файле glTF), а вторым аргументом может быть "
"все, что угодно."

msgid ""
"If this glTF node is a camera, the index of the [GLTFCamera] in the "
"[GLTFState] that describes the camera's properties. If [code]-1[/code], this "
"node is not a camera."
msgstr ""
"Если этот узел glTF является камерой, индекс [GLTFCamera] в [GLTFState], "
"который описывает свойства камеры. Если [code]-1[/code], этот узел не "
"является камерой."

msgid ""
"The indices of the child nodes in the [GLTFState]. If this glTF node has no "
"children, this will be an empty array."
msgstr ""
"Индексы дочерних узлов в [GLTFState]. Если у этого узла glTF нет дочерних "
"узлов, это будет пустой массив."

msgid ""
"How deep into the node hierarchy this node is. A root node will have a height "
"of 0, its children will have a height of 1, and so on. If -1, the height has "
"not been calculated."
msgstr ""
"Насколько глубоко в иерархии узлов находится этот узел. Корневой узел будет "
"иметь высоту 0, его потомки будут иметь высоту 1 и т. д. Если -1, высота не "
"была рассчитана."

msgid ""
"If this glTF node is a light, the index of the [GLTFLight] in the [GLTFState] "
"that describes the light's properties. If -1, this node is not a light."
msgstr ""
"Если этот узел glTF является источником света, индекс [GLTFLight] в "
"[GLTFState], который описывает свойства источника света. Если -1, этот узел "
"не является источником света."

msgid ""
"If this glTF node is a mesh, the index of the [GLTFMesh] in the [GLTFState] "
"that describes the mesh's properties. If -1, this node is not a mesh."
msgstr ""
"Если этот узел glTF является сеткой, индекс [GLTFMesh] в [GLTFState], который "
"описывает свойства сетки. Если -1, этот узел не является сеткой."

msgid "The original name of the node."
msgstr "Первоначальное имя узла."

msgid ""
"The index of the parent node in the [GLTFState]. If -1, this node is a root "
"node."
msgstr ""
"Индекс родительского узла в [GLTFState]. Если -1, этот узел является корневым "
"узлом."

msgid "The position of the glTF node relative to its parent."
msgstr "Положение узла glTF относительно его родителя."

msgid "The rotation of the glTF node relative to its parent."
msgstr "Вращение узла glTF относительно его родителя."

msgid "The scale of the glTF node relative to its parent."
msgstr "Масштаб узла glTF относительно его родителя."

msgid ""
"If this glTF node has a skeleton, the index of the [GLTFSkeleton] in the "
"[GLTFState] that describes the skeleton's properties. If -1, this node does "
"not have a skeleton."
msgstr ""
"Если этот узел glTF имеет скелет, индекс [GLTFSkeleton] в [GLTFState], "
"который описывает свойства скелета. Если -1, этот узел не имеет скелета."

msgid ""
"If this glTF node has a skin, the index of the [GLTFSkin] in the [GLTFState] "
"that describes the skin's properties. If -1, this node does not have a skin."
msgstr ""
"Если этот узел glTF имеет скин, индекс [GLTFSkin] в [GLTFState], который "
"описывает свойства скина. Если -1, этот узел не имеет скина."

msgid ""
"If [code]true[/code], the GLTF node is visible. If [code]false[/code], the "
"GLTF node is not visible. This is translated to the [member Node3D.visible] "
"property in the Godot scene, and is exported to [code]KHR_node_visibility[/"
"code] when [code]false[/code]."
msgstr ""
"Если [code]true[/code], узел GLTF виден. Если [code]false[/code], узел GLTF "
"не виден. Это транслируется в свойство [member Node3D.visible] в сцене Godot "
"и экспортируется в [code]KHR_node_visibility[/code], если [code]false[/code]."

msgid ""
"The transform of the glTF node relative to its parent. This property is "
"usually unused since the position, rotation, and scale properties are "
"preferred."
msgstr ""
"Преобразование узла glTF относительно его родителя. Это свойство обычно не "
"используется, поскольку предпочтительны свойства положения, вращения и "
"масштаба."

msgid "Describes how to access a property as defined in the glTF object model."
msgstr ""
"Описывает, как получить доступ к свойству, определенному в объектной модели "
"glTF."

msgid ""
"GLTFObjectModelProperty defines a mapping between a property in the glTF "
"object model and a NodePath in the Godot scene tree. This can be used to "
"animate properties in a glTF file using the [code]KHR_animation_pointer[/"
"code] extension, or to access them through an engine-agnostic script such as "
"a behavior graph as defined by the [code]KHR_interactivity[/code] extension.\n"
"The glTF property is identified by JSON pointer(s) stored in [member "
"json_pointers], while the Godot property it maps to is defined by [member "
"node_paths]. In most cases [member json_pointers] and [member node_paths] "
"will each only have one item, but in some cases a single glTF JSON pointer "
"will map to multiple Godot properties, or a single Godot property will be "
"mapped to multiple glTF JSON pointers, or it might be a many-to-many "
"relationship.\n"
"[Expression] objects can be used to define conversions between the data, such "
"as when glTF defines an angle in radians and Godot uses degrees. The [member "
"object_model_type] property defines the type of data stored in the glTF file "
"as defined by the object model, see [enum GLTFObjectModelType] for possible "
"values."
msgstr ""
"GLTFObjectModelProperty определяет сопоставление между свойством в объектной "
"модели glTF и NodePath в дереве сцены Godot. Это можно использовать для "
"анимации свойств в файле glTF с помощью расширения "
"[code]KHR_animation_pointer[/code] или для доступа к ним через независимый от "
"движка скрипт, такой как граф поведения, определенный расширением "
"[code]KHR_interactivity[/code].\n"
"Свойство glTF идентифицируется указателем(ями) JSON, хранящимся в [member "
"json_pointers], в то время как свойство Godot, с которым оно сопоставляется, "
"определяется [member node_paths]. В большинстве случаев [member "
"json_pointers] и [member node_paths] будут иметь только один элемент, но в "
"некоторых случаях один указатель glTF JSON будет сопоставляться с несколькими "
"свойствами Godot, или одно свойство Godot будет сопоставляться с несколькими "
"указателями glTF JSON, или это может быть отношение «многие ко многим».\n"
"Объекты [Expression] могут использоваться для определения преобразований "
"между данными, например, когда glTF определяет угол в радианах, а Godot "
"использует градусы. Свойство [member object_model_type] определяет тип "
"данных, хранящихся в файле glTF, как определено объектной моделью, см. [enum "
"GLTFObjectModelType] для возможных значений."

msgid "GLTF Object Model"
msgstr "Объектная модель GLTF"

msgid "KHR_animation_pointer GLTF extension"
msgstr "Расширение GLTF KHR_animation_pointer"

msgid ""
"Appends a [NodePath] to [member node_paths]. This can be used by "
"[GLTFDocumentExtension] classes to define how a glTF object model property "
"maps to a Godot property, or multiple Godot properties. Prefer using [method "
"append_path_to_property] for simple cases. Be sure to also call [method "
"set_types] once (the order does not matter)."
msgstr ""
"Добавляет [NodePath] к [member node_paths]. Это может использоваться классами "
"[GLTFDocumentExtension] для определения того, как свойство объектной модели "
"glTF сопоставляется со свойством Godot или несколькими свойствами Godot. "
"Предпочитайте использовать [method append_path_to_property] для простых "
"случаев. Обязательно также вызовите [method set_types] один раз (порядок не "
"имеет значения)."

msgid ""
"High-level wrapper over [method append_node_path] that handles the most "
"common cases. It constructs a new [NodePath] using [param node_path] as a "
"base and appends [param prop_name] to the subpath. Be sure to also call "
"[method set_types] once (the order does not matter)."
msgstr ""
"Высокоуровневая оболочка над [method append_node_path], которая обрабатывает "
"наиболее распространенные случаи. Она создает новый [NodePath], используя "
"[param node_path] в качестве базы, и добавляет [param prop_name] к подпути. "
"Обязательно вызовите [method set_types] один раз (порядок не имеет значения)."

msgid ""
"The GLTF accessor type associated with this property's [member "
"object_model_type]. See [member GLTFAccessor.accessor_type] for possible "
"values, and see [enum GLTFObjectModelType] for how the object model type maps "
"to accessor types."
msgstr ""
"Тип аксессора GLTF, связанный с [member object_model_type] этого свойства. "
"См. [member GLTFAccessor.accessor_type] для возможных значений и см. [enum "
"GLTFObjectModelType] для того, чтобы понять как тип объектной модели "
"сопоставляется с типами аксессора."

msgid ""
"Returns [code]true[/code] if [member json_pointers] is not empty. This is "
"used during export to determine if a [GLTFObjectModelProperty] can handle "
"converting a Godot property to a glTF object model property."
msgstr ""
"Возвращает [code]true[/code], если [member json_pointers] не пуст. Это "
"используется во время экспорта, чтобы определить, может ли "
"[GLTFObjectModelProperty] обрабатывать преобразование свойства Godot в "
"свойство объектной модели glTF."

msgid ""
"Returns [code]true[/code] if [member node_paths] is not empty. This is used "
"during import to determine if a [GLTFObjectModelProperty] can handle "
"converting a glTF object model property to a Godot property."
msgstr ""
"Возвращает [code]true[/code], если [member node_paths] не пуст. Это "
"используется во время импорта, чтобы определить, может ли "
"[GLTFObjectModelProperty] обрабатывать преобразование свойства модели объекта "
"glTF в свойство Godot."

msgid ""
"Sets the [member variant_type] and [member object_model_type] properties. "
"This is a convenience method to set both properties at once, since they are "
"almost always known at the same time. This method should be called once. "
"Calling it again with the same values will have no effect."
msgstr ""
"Устанавливает свойства [member variation_type] и [member object_model_type]. "
"Это удобный метод для установки обоих свойств одновременно, поскольку они "
"почти всегда известны в одно и то же время. Этот метод следует вызывать один "
"раз. Повторный вызов с теми же значениями не даст никакого эффекта."

msgid ""
"If set, this [Expression] will be used to convert the property value from the "
"glTF object model to the value expected by the Godot property. This is useful "
"when the glTF object model uses a different unit system, or when the data "
"needs to be transformed in some way. If [code]null[/code], the value will be "
"copied as-is."
msgstr ""
"Если установлено, этот [Expression] будет использоваться для преобразования "
"значения свойства из объектной модели glTF в значение, ожидаемое свойством "
"Godot. Это полезно, когда объектная модель glTF использует другую систему "
"единиц или когда данные необходимо преобразовать каким-либо образом. Если "
"[code]null[/code], значение будет скопировано как есть."

msgid ""
"If set, this [Expression] will be used to convert the property value from the "
"Godot property to the value expected by the glTF object model. This is useful "
"when the glTF object model uses a different unit system, or when the data "
"needs to be transformed in some way. If [code]null[/code], the value will be "
"copied as-is."
msgstr ""
"Если установлено, это [Expression] будет использоваться для преобразования "
"значения свойства из свойства Godot в значение, ожидаемое объектной моделью "
"glTF. Это полезно, когда объектная модель glTF использует другую систему "
"единиц или когда данные необходимо преобразовать каким-либо образом. Если "
"[code]null[/code], значение будет скопировано как есть."

msgid ""
"The glTF object model JSON pointers used to identify the property in the glTF "
"object model. In most cases, there will be only one item in this array, but "
"specific cases may require multiple pointers. The items are themselves arrays "
"which represent the JSON pointer split into its components."
msgstr ""
"Указатели JSON объектной модели glTF, используемые для идентификации свойства "
"в объектной модели glTF. В большинстве случаев в этом массиве будет только "
"один элемент, но в некоторых случаях может потребоваться несколько "
"указателей. Элементы сами по себе являются массивами, которые представляют "
"указатель JSON, разделенный на его компоненты."

msgid ""
"An array of [NodePath]s that point to a property, or multiple properties, in "
"the Godot scene tree. On import, this will either be set by [GLTFDocument], "
"or by a [GLTFDocumentExtension] class. For simple cases, use [method "
"append_path_to_property] to add properties to this array.\n"
"In most cases [member node_paths] will only have one item, but in some cases "
"a single glTF JSON pointer will map to multiple Godot properties. For "
"example, a [GLTFCamera] or [GLTFLight] used on multiple glTF nodes will be "
"represented by multiple Godot nodes."
msgstr ""
"Массив [NodePath], указывающий на свойство или несколько свойств в дереве "
"сцены Godot. При импорте это будет установлено либо [GLTFDocument], либо "
"классом [GLTFDocumentExtension]. В простых случаях используйте [method "
"append_path_to_property], чтобы добавить свойства в этот массив.\n"
"В большинстве случаев [member node_paths] будет иметь только один элемент, но "
"в некоторых случаях один указатель glTF JSON будет отображаться на несколько "
"свойств Godot. Например, [GLTFCamera] или [GLTFLight], используемые на "
"нескольких узлах glTF, будут представлены несколькими узлами Godot."

msgid ""
"The type of data stored in the glTF file as defined by the object model. This "
"is a superset of the available accessor types, and determines the accessor "
"type."
msgstr ""
"Тип данных, хранящихся в файле glTF, как определено объектной моделью. Это "
"надмножество доступных типов аксессоров, и определяет тип аксессора."

msgid ""
"The type of data stored in the Godot property. This is the type of the "
"property that the [member node_paths] point to."
msgstr ""
"Тип данных, хранящихся в свойстве Godot. Это тип свойства, на которое "
"указывает [member node_paths]."

msgid ""
"Unknown or not set object model type. If the object model type is set to this "
"value, the real type still needs to be determined."
msgstr ""
"Неизвестный или не установленный тип модели объекта. Если тип модели объекта "
"установлен на это значение, реальный тип все еще необходимо определить."

msgid ""
"Object model type \"bool\". Represented in the glTF JSON as a boolean, and "
"encoded in a [GLTFAccessor] as \"SCALAR\". When encoded in an accessor, a "
"value of [code]0[/code] is [code]false[/code], and any other value is "
"[code]true[/code]."
msgstr ""
"Тип модели объекта \"bool\". Представлен в glTF JSON как логическое значение "
"и закодирован в [GLTFaccessor] как \"SCALAR\". При кодировании в accessor "
"значение [code]0[/code] равно [code]false[/code], а любое другое значение "
"равно [code]true[/code]."

msgid ""
"Object model type \"float\". Represented in the glTF JSON as a number, and "
"encoded in a [GLTFAccessor] as \"SCALAR\"."
msgstr ""
"Тип модели объекта \"float\". Представлен в glTF JSON как число и закодирован "
"в [GLTFaccessor] как \"SCALAR\"."

msgid ""
"Object model type \"float[lb][rb]\". Represented in the glTF JSON as an array "
"of numbers, and encoded in a [GLTFAccessor] as \"SCALAR\"."
msgstr ""
"Тип модели объекта \"float[lb][rb]\". Представлен в glTF JSON как массив "
"чисел и закодирован в [GLTFaccessor] как \"SCALAR\"."

msgid ""
"Object model type \"float2\". Represented in the glTF JSON as an array of two "
"numbers, and encoded in a [GLTFAccessor] as \"VEC2\"."
msgstr ""
"Тип модели объекта \"float2\". Представлен в glTF JSON как массив из двух "
"чисел и закодирован в [GLTFaccessor] как \"VEC2\"."

msgid ""
"Object model type \"float3\". Represented in the glTF JSON as an array of "
"three numbers, and encoded in a [GLTFAccessor] as \"VEC3\"."
msgstr ""
"Тип модели объекта \"float3\". Представлен в glTF JSON как массив из трех "
"чисел и закодирован в [GLTFaccessor] как \"VEC3\"."

msgid ""
"Object model type \"float4\". Represented in the glTF JSON as an array of "
"four numbers, and encoded in a [GLTFAccessor] as \"VEC4\"."
msgstr ""
"Тип модели объекта \"float4\". Представлен в glTF JSON как массив из четырех "
"чисел и закодирован в [GLTFaccessor] как \"VEC4\"."

msgid ""
"Object model type \"float2x2\". Represented in the glTF JSON as an array of "
"four numbers, and encoded in a [GLTFAccessor] as \"MAT2\"."
msgstr ""
"Тип модели объекта \"float2x2\". Представлен в glTF JSON как массив из "
"четырех чисел и закодирован в [GLTFaccessor] как \"MAT2\"."

msgid ""
"Object model type \"float3x3\". Represented in the glTF JSON as an array of "
"nine numbers, and encoded in a [GLTFAccessor] as \"MAT3\"."
msgstr ""
"Тип модели объекта \"float3x3\". Представлен в glTF JSON как массив из девяти "
"чисел и закодирован в [GLTFaccessor] как \"MAT3\"."

msgid ""
"Object model type \"float4x4\". Represented in the glTF JSON as an array of "
"sixteen numbers, and encoded in a [GLTFAccessor] as \"MAT4\"."
msgstr ""
"Тип модели объекта \"float4x4\". Представлен в glTF JSON как массив из "
"шестнадцати чисел и закодирован в [GLTFaccessor] как \"MAT4\"."

msgid ""
"Object model type \"int\". Represented in the glTF JSON as a number, and "
"encoded in a [GLTFAccessor] as \"SCALAR\". The range of values is limited to "
"signed integers. For [code]KHR_interactivity[/code], only 32-bit integers are "
"supported."
msgstr ""
"Тип модели объекта \"int\". Представлен в glTF JSON как число и закодирован в "
"[GLTFaccessor] как \"SCALAR\". Диапазон значений ограничен целыми числами со "
"знаком. Для [code]KHR_interactivity[/code] поддерживаются только 32-битные "
"целые числа."

msgid "Represents a glTF physics body."
msgstr "Представляет собой физическое тело glTF."

msgid ""
"Represents a physics body as an intermediary between the "
"[code]OMI_physics_body[/code] glTF data and Godot's nodes, and it's "
"abstracted in a way that allows adding support for different glTF physics "
"extensions in the future."
msgstr ""
"Представляет физическое тело как посредник между данными glTF "
"[code]OMI_physics_body[/code] и узлами Годо, и оно абстрагировано таким "
"образом, что позволяет добавлять поддержку различных расширений физики glTF в "
"будущем."

msgid "OMI_physics_body glTF extension"
msgstr "Расширение OMI_physics_body glTF"

msgid ""
"Creates a new GLTFPhysicsBody instance by parsing the given [Dictionary] in "
"the [code]OMI_physics_body[/code] glTF extension format."
msgstr ""
"Создает новый экземпляр GLTFPhysicsBody путем анализа указанного [Dictionary] "
"в формате расширения [code]OMI_physics_body[/code] glTF."

msgid ""
"Creates a new GLTFPhysicsBody instance from the given Godot "
"[CollisionObject3D] node."
msgstr ""
"Создает новый экземпляр GLTFPhysicsBody из заданного узла Godot "
"[CollisionObject3D]."

msgid ""
"Serializes this GLTFPhysicsBody instance into a [Dictionary]. It will be in "
"the format expected by the [code]OMI_physics_body[/code] glTF extension."
msgstr ""
"Сериализует этот экземпляр GLTFPhysicsBody в [Dictionary]. Он будет в "
"формате, ожидаемом расширением [code]OMI_physics_body[/code] glTF."

msgid ""
"Converts this GLTFPhysicsBody instance into a Godot [CollisionObject3D] node."
msgstr ""
"Преобразует этот экземпляр GLTFPhysicsBody в узел Godot [CollisionObject3D]."

msgid ""
"The angular velocity of the physics body, in radians per second. This is only "
"used when the body type is \"rigid\" or \"vehicle\"."
msgstr ""
"Угловая скорость физического тела в радианах в секунду. Используется только в "
"случае, если тип тела — «rigid» или «vehicle»."

msgid ""
"The type of the body.\n"
"When importing, this controls what type of [CollisionObject3D] node Godot "
"should generate. Valid values are [code]\"static\"[/code], [code]"
"\"animatable\"[/code], [code]\"character\"[/code], [code]\"rigid\"[/code], "
"[code]\"vehicle\"[/code], and [code]\"trigger\"[/code].\n"
"When exporting, this will be squashed down to one of [code]\"static\"[/code], "
"[code]\"kinematic\"[/code], or [code]\"dynamic\"[/code] motion types, or the "
"[code]\"trigger\"[/code] property."
msgstr ""
"Тип тела.\n"
"При импорте это управляет тем, какой тип узла [CollisionObject3D] Godot "
"должен генерировать. Допустимые значения: [code]\"static\"[/code], [code]"
"\"animatable\"[/code], [code]\"character\"[/code], [code]\"rigid\"[/code], "
"[code]\"vehicle\"[/code] и [code]\"trigger\"[/code].\n"
"При экспорте это будет сжато до одного из типов движения [code]\"static\"[/"
"code], [code]\"kinematic\"[/code] или [code]\"dynamic\"[/code] или свойства "
"[code]\"trigger\"[/code]."

msgid ""
"The center of mass of the body, in meters. This is in local space relative to "
"the body. By default, the center of the mass is the body's origin."
msgstr ""
"Центр масс тела в метрах. Это в локальном пространстве относительно тела. По "
"умолчанию центр масс — это начало координат тела."

msgid ""
"The inertia strength of the physics body, in kilogram meter squared (kg⋅m²). "
"This represents the inertia around the principle axes, the diagonal of the "
"inertia tensor matrix. This is only used when the body type is \"rigid\" or "
"\"vehicle\".\n"
"When converted to a Godot [RigidBody3D] node, if this value is zero, then the "
"inertia will be calculated automatically."
msgstr ""
"Сила инерции физического тела в килограммах на метр в квадрате (кг⋅м²). Это "
"представляет инерцию вокруг главных осей, диагональ матрицы тензора инерции. "
"Используется только в том случае, если тип тела «rigid» или «vehicle».\n"
"При преобразовании в узел Godot [RigidBody3D], если это значение равно нулю, "
"инерция будет рассчитана автоматически."

msgid ""
"The inertia orientation of the physics body. This defines the rotation of the "
"inertia's principle axes relative to the object's local axes. This is only "
"used when the body type is \"rigid\" or \"vehicle\" and [member "
"inertia_diagonal] is set to a non-zero value."
msgstr ""
"Ориентация инерции физического тела. Определяет вращение главных осей инерции "
"относительно локальных осей объекта. Используется только в том случае, если "
"тип тела — «rigid» или «vehicle», а [member inertia_diagonal] имеет ненулевое "
"значение."

msgid ""
"The inertia tensor of the physics body, in kilogram meter squared (kg⋅m²). "
"This is only used when the body type is \"rigid\" or \"vehicle\".\n"
"When converted to a Godot [RigidBody3D] node, if this value is zero, then the "
"inertia will be calculated automatically."
msgstr ""
"Тензор инерции физического тела в килограммах на метр в квадрате (кг⋅м²). "
"Используется только в том случае, если тип тела — «rigid» или «vehicle».\n"
"При преобразовании в узел Godot [RigidBody3D], если это значение равно нулю, "
"инерция будет рассчитана автоматически."

msgid ""
"The linear velocity of the physics body, in meters per second. This is only "
"used when the body type is \"rigid\" or \"vehicle\"."
msgstr ""
"Линейная скорость физического тела в метрах в секунду. Используется только в "
"случае, если тип тела — «rigid» или «vehicle»."

msgid ""
"The mass of the physics body, in kilograms. This is only used when the body "
"type is \"rigid\" or \"vehicle\"."
msgstr ""
"Масса физического тела в килограммах. Используется только в случае, если тип "
"тела — «rigid» или «vehicle»."

msgid "Represents a glTF physics shape."
msgstr "Представляет собой физическую форму glTF."

msgid ""
"Represents a physics shape as defined by the [code]OMI_physics_shape[/code] "
"or [code]OMI_collider[/code] glTF extensions. This class is an intermediary "
"between the glTF data and Godot's nodes, and it's abstracted in a way that "
"allows adding support for different glTF physics extensions in the future."
msgstr ""
"Представляет физическую форму, определенную расширениями glTF "
"[code]OMI_physics_shape[/code] или [code]OMI_collider[/code]. Этот класс "
"является посредником между данными glTF и узлами Godot, и он абстрагирован "
"таким образом, что позволяет добавлять поддержку различных расширений физики "
"glTF в будущем."

msgid "OMI_physics_shape glTF extension"
msgstr "OMI_physics_shape расширение glTF"

msgid "OMI_collider glTF extension"
msgstr "Расширение OMI_collider glTF"

msgid ""
"Creates a new GLTFPhysicsShape instance by parsing the given [Dictionary]."
msgstr ""
"Создает новый экземпляр GLTFPhysicsShape путем анализа указанного "
"[Dictionary]."

msgid ""
"Creates a new GLTFPhysicsShape instance from the given Godot "
"[CollisionShape3D] node."
msgstr ""
"Создает новый экземпляр GLTFPhysicsShape из заданного узла Godot "
"[CollisionShape3D]."

msgid ""
"Creates a new GLTFPhysicsShape instance from the given Godot [Shape3D] "
"resource."
msgstr ""
"Создает новый экземпляр GLTFPhysicsShape из заданного ресурса Godot [Shape3D]."

msgid ""
"Serializes this GLTFPhysicsShape instance into a [Dictionary] in the format "
"defined by [code]OMI_physics_shape[/code]."
msgstr ""
"Сериализует этот экземпляр GLTFPhysicsShape в [Dictionary] в формате, "
"определенном [code]OMI_physics_shape[/code]."

msgid ""
"Converts this GLTFPhysicsShape instance into a Godot [CollisionShape3D] node."
msgstr ""
"Преобразует этот экземпляр GLTFPhysicsShape в узел Godot [CollisionShape3D]."

msgid "Converts this GLTFPhysicsShape instance into a Godot [Shape3D] resource."
msgstr "Преобразует этот экземпляр GLTFPhysicsShape в ресурс Godot [Shape3D]."

msgid ""
"The height of the shape, in meters. This is only used when the shape type is "
"[code]\"capsule\"[/code] or [code]\"cylinder\"[/code]. This value should not "
"be negative, and for [code]\"capsule\"[/code] it should be at least twice the "
"radius."
msgstr ""
"Высота формы в метрах. Используется только в том случае, если тип формы — "
"[code]\"capsule\"[/code] или [code]\"cylinder\"[/code]. Это значение не "
"должно быть отрицательным, а для [code]\"capsule\"[/code] оно должно быть как "
"минимум в два раза больше радиуса."

msgid ""
"The [ImporterMesh] resource of the shape. This is only used when the shape "
"type is [code]\"hull\"[/code] (convex hull) or [code]\"trimesh\"[/code] "
"(concave trimesh)."
msgstr ""
"Ресурс [ImporterMesh] формы. Используется только когда тип формы — [code]"
"\"hull\"[/code] (выпуклая оболочка) или [code]\"trimesh\"[/code] (вогнутая "
"тримеш)."

msgid ""
"If [code]true[/code], indicates that this shape is a trigger. For Godot, this "
"means that the shape should be a child of an [Area3D] node.\n"
"This is the only variable not used in the [method to_node] method, it's "
"intended to be used alongside when deciding where to add the generated node "
"as a child."
msgstr ""
"Если [code]true[/code], это указывает, что эта форма является триггером. Для "
"Godot это означает, что форма должна быть дочерним элементом узла [Area3D].\n"
"Это единственная переменная, не используемая в методе [method to_node], она "
"предназначена для использования вместе с ним при принятии решения о том, куда "
"добавить сгенерированный узел в качестве дочернего элемента."

msgid ""
"The index of the shape's mesh in the glTF file. This is only used when the "
"shape type is [code]\"hull\"[/code] (convex hull) or [code]\"trimesh\"[/code] "
"(concave trimesh)."
msgstr ""
"Индекс сетки формы в файле glTF. Используется только когда тип формы — [code]"
"\"hull\"[/code] (выпуклая оболочка) или [code]\"trimesh\"[/code] (вогнутая "
"тримеш)."

msgid ""
"The radius of the shape, in meters. This is only used when the shape type is "
"[code]\"capsule\"[/code], [code]\"cylinder\"[/code], or [code]\"sphere\"[/"
"code]. This value should not be negative."
msgstr ""
"Радиус формы в метрах. Используется только в том случае, если тип формы — "
"[code]\"capsule\"[/code], [code]\"cylinder\"[/code] или [code]\"sphere\"[/"
"code]. Это значение не должно быть отрицательным."

msgid ""
"The type of shape this shape represents. Valid values are [code]\"box\"[/"
"code], [code]\"capsule\"[/code], [code]\"cylinder\"[/code], [code]\"sphere\"[/"
"code], [code]\"hull\"[/code], and [code]\"trimesh\"[/code]."
msgstr ""
"Тип фигуры, которую представляет эта фигура. Допустимые значения: [code]"
"\"box\"[/code], [code]\"capsule\"[/code], [code]\"cylinder\"[/code], [code]"
"\"sphere\"[/code], [code]\"hull\"[/code] и [code]\"trimesh\"[/code]."

msgid ""
"The size of the shape, in meters. This is only used when the shape type is "
"[code]\"box\"[/code], and it represents the [code]\"diameter\"[/code] of the "
"box. This value should not be negative."
msgstr ""
"Размер фигуры в метрах. Используется только когда тип фигуры — [code]\"box\"[/"
"code], и представляет [code]\"diameter\"[/code] коробки. Это значение не "
"должно быть отрицательным."

msgid ""
"Returns a [Dictionary] that maps skeleton bone indices to the indices of glTF "
"nodes. This property is unused during import, and only set during export. In "
"a glTF file, a bone is a node, so Godot converts skeleton bones to glTF nodes."
msgstr ""
"Возвращает [Dictionary], который сопоставляет индексы костей скелета с "
"индексами узлов glTF. Это свойство не используется во время импорта и "
"устанавливается только во время экспорта. В файле glTF кость является узлом, "
"поэтому Godot преобразует кости скелета в узлы glTF."

msgid ""
"Sets a [Dictionary] that maps skeleton bone indices to the indices of glTF "
"nodes. This property is unused during import, and only set during export. In "
"a glTF file, a bone is a node, so Godot converts skeleton bones to glTF nodes."
msgstr ""
"Устанавливает [Dictionary], который сопоставляет индексы костей скелета с "
"индексами узлов glTF. Это свойство не используется во время импорта и "
"устанавливается только во время экспорта. В файле glTF кость является узлом, "
"поэтому Godot преобразует кости скелета в узлы glTF."

msgid "Archived glTF extension for specular/glossy materials."
msgstr "Архивное расширение glTF для зеркальных/глянцевых материалов."

msgid ""
"KHR_materials_pbrSpecularGlossiness is an archived glTF extension. This means "
"that it is deprecated and not recommended for new files. However, it is still "
"supported for loading old files."
msgstr ""
"KHR_materials_pbrSpecularGlossiness — это архивное расширение glTF. Это "
"означает, что оно устарело и не рекомендуется для новых файлов. Однако оно по-"
"прежнему поддерживается для загрузки старых файлов."

msgid "KHR_materials_pbrSpecularGlossiness glTF extension spec"
msgstr "KHR_materials_pbrSpecularGlossiness glTF расширение спецификации"

msgid "The reflected diffuse factor of the material."
msgstr "Коэффициент отражения диффузии материала."

msgid "The diffuse texture."
msgstr "Диффузная текстура."

msgid "The glossiness or smoothness of the material."
msgstr "Глянцевитость или гладкость материала."

msgid "The specular-glossiness texture."
msgstr "Текстура зеркального блеска."

msgid "The specular RGB color of the material. The alpha channel is unused."
msgstr "Зеркальный цвет RGB материала. Альфа-канал не используется."

msgid "Represents all data of a glTF file."
msgstr "Представляет все данные файла glTF."

msgid ""
"Contains all nodes and resources of a glTF file. This is used by "
"[GLTFDocument] as data storage, which allows [GLTFDocument] and all "
"[GLTFDocumentExtension] classes to remain stateless.\n"
"GLTFState can be populated by [GLTFDocument] reading a file or by converting "
"a Godot scene. Then the data can either be used to create a Godot scene or "
"save to a glTF file. The code that converts to/from a Godot scene can be "
"intercepted at arbitrary points by [GLTFDocumentExtension] classes. This "
"allows for custom data to be stored in the glTF file or for custom data to be "
"converted to/from Godot nodes."
msgstr ""
"Содержит все узлы и ресурсы файла glTF. Используется [GLTFDocument] в "
"качестве хранилища данных, что позволяет [GLTFDocument] и всем классам "
"[GLTFDocumentExtension] оставаться без состояния.\n"
"GLTFState может быть заполнен путем чтения файла [GLTFDocument] или путем "
"преобразования сцены Godot. Затем данные могут быть использованы для создания "
"сцены Godot или сохранены в файле glTF. Код, который преобразуется в сцену "
"Godot или из нее, может быть перехвачен в произвольных точках классами "
"[GLTFDocumentExtension]. Это позволяет сохранять пользовательские данные в "
"файле glTF или преобразовывать пользовательские данные в узлы Godot или из "
"них."

msgid "glTF asset header schema"
msgstr "Схема заголовка актива glTF"

msgid ""
"Appends an extension to the list of extensions used by this glTF file during "
"serialization. If [param required] is [code]true[/code], the extension will "
"also be added to the list of required extensions. Do not run this in [method "
"GLTFDocumentExtension._export_post], as that stage is too late to add "
"extensions. The final list is sorted alphabetically."
msgstr ""
"Добавляет расширение к списку расширений, используемых этим файлом glTF во "
"время сериализации. Если [param required] равен [code]true[/code], расширение "
"также будет добавлено в список требуемых расширений. Не запускайте это в "
"[method GLTFDocumentExtension._export_post], так как на этом этапе слишком "
"поздно добавлять расширения. Окончательный список сортируется в алфавитном "
"порядке."

msgid ""
"Appends the given byte array [param data] to the buffers and creates a "
"[GLTFBufferView] for it. The index of the destination [GLTFBufferView] is "
"returned. If [param deduplication] is [code]true[/code], the buffers are "
"first searched for duplicate data, otherwise new bytes are always appended."
msgstr ""
"Добавляет заданный массив байтов [param data] к буферам и создает для него "
"[GLTFBufferView]. Возвращается индекс назначения [GLTFBufferView]. Если "
"[param deduplication] равен [code]true[/code], буферы сначала ищутся на "
"наличие дубликатов данных, в противном случае всегда добавляются новые байты."

msgid ""
"Appends the given [GLTFNode] to the state, and returns its new index. This "
"can be used to export one Godot node as multiple glTF nodes, or inject new "
"glTF nodes at import time. On import, this must be called before [method "
"GLTFDocumentExtension._generate_scene_node] finishes for the parent node. On "
"export, this must be called before [method "
"GLTFDocumentExtension._export_node] runs for the parent node.\n"
"The [param godot_scene_node] parameter is the Godot scene node that "
"corresponds to this glTF node. This is highly recommended to be set to a "
"valid node, but may be [code]null[/code] if there is no corresponding Godot "
"scene node. One Godot scene node may be used for multiple glTF nodes, so if "
"exporting multiple glTF nodes for one Godot scene node, use the same Godot "
"scene node for each.\n"
"The [param parent_node_index] parameter is the index of the parent [GLTFNode] "
"in the state. If [code]-1[/code], the node will be a root node, otherwise the "
"new node will be added to the parent's list of children. The index will also "
"be written to the [member GLTFNode.parent] property of the new node."
msgstr ""
"Добавляет заданный [GLTFNode] к состоянию и возвращает его новый индекс. Это "
"можно использовать для экспорта одного узла Godot как нескольких узлов glTF "
"или для внедрения новых узлов glTF во время импорта. При импорте это должно "
"быть вызвано до того, как [method GLTFDocumentExtension._generate_scene_node] "
"завершится для родительского узла. При экспорте это должно быть вызвано до "
"того, как [method GLTFDocumentExtension._export_node] запустится для "
"родительского узла.\n"
"Параметр [param godot_scene_node] — это узел сцены Godot, который "
"соответствует этому узлу glTF. Настоятельно рекомендуется установить его на "
"допустимый узел, но он может быть [code]null[/code], если нет "
"соответствующего узла сцены Godot. Один узел сцены Godot может использоваться "
"для нескольких узлов glTF, поэтому при экспорте нескольких узлов glTF для "
"одного узла сцены Godot используйте один и тот же узел сцены Godot для "
"каждого.\n"
"Параметр [param parent_node_index] — это индекс родительского [GLTFNode] в "
"состоянии. Если [code]-1[/code], узел будет корневым, в противном случае "
"новый узел будет добавлен в список дочерних узлов родителя. Индекс также "
"будет записан в свойство [member GLTFNode.parent] нового узла."

msgid ""
"Gets additional arbitrary data in this [GLTFState] instance. This can be used "
"to keep per-file state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The argument should be the [GLTFDocumentExtension] name (does not have to "
"match the extension name in the glTF file), and the return value can be "
"anything you set. If nothing was set, the return value is [code]null[/code]."
msgstr ""
"Получает дополнительные произвольные данные в этом экземпляре [GLTFState]. "
"Это можно использовать для хранения данных о состоянии каждого файла в "
"классах [GLTFDocumentExtension], что важно, поскольку они не имеют "
"состояния.\n"
"Аргументом должно быть имя [GLTFDocumentExtension] (не обязательно совпадать "
"с именем расширения в файле glTF), а возвращаемое значение может быть любым, "
"которое вы задали. Если ничего не было задано, возвращаемое значение равно "
"[code]null[/code]."

msgid ""
"Returns the [AnimationPlayer] node with the given index. These nodes are only "
"used during the export process when converting Godot [AnimationPlayer] nodes "
"to glTF animations."
msgstr ""
"Возвращает узел [AnimationPlayer] с указанным индексом. Эти узлы используются "
"только в процессе экспорта при конвертации узлов Godot [AnimationPlayer] в "
"анимации glTF."

msgid ""
"Returns the number of [AnimationPlayer] nodes in this [GLTFState]. These "
"nodes are only used during the export process when converting Godot "
"[AnimationPlayer] nodes to glTF animations."
msgstr ""
"Возвращает количество узлов [AnimationPlayer] в этом [GLTFState]. Эти узлы "
"используются только в процессе экспорта при преобразовании узлов Godot "
"[AnimationPlayer] в анимации glTF."

msgid ""
"Returns an array of all [GLTFAnimation]s in the glTF file. When importing, "
"these will be generated as animations in an [AnimationPlayer] node. When "
"exporting, these will be generated from Godot [AnimationPlayer] nodes."
msgstr ""
"Возвращает массив всех [GLTFAnimation] в файле glTF. При импорте они будут "
"сгенерированы как анимации в узле [AnimationPlayer]. При экспорте они будут "
"сгенерированы из узлов Godot [AnimationPlayer]."

msgid ""
"Returns an array of all [GLTFCamera]s in the glTF file. These are the cameras "
"that the [member GLTFNode.camera] index refers to."
msgstr ""
"Возвращает массив всех [GLTFCamera] в файле glTF. Это камеры, на которые "
"ссылается индекс [member GLTFNode.camera]."

msgid ""
"Gets the images of the glTF file as an array of [Texture2D]s. These are the "
"images that the [member GLTFTexture.src_image] index refers to."
msgstr ""
"Получает изображения файла glTF как массив [Texture2D]. Это изображения, на "
"которые ссылается индекс [member GLTFTexture.src_image]."

msgid ""
"Returns an array of all [GLTFLight]s in the glTF file. These are the lights "
"that the [member GLTFNode.light] index refers to."
msgstr ""
"Возвращает массив всех [GLTFLight] в файле glTF. Это источники света, на "
"которые ссылается индекс [member GLTFNode.light]."

msgid ""
"Returns an array of all [GLTFMesh]es in the glTF file. These are the meshes "
"that the [member GLTFNode.mesh] index refers to."
msgstr ""
"Возвращает массив всех [GLTFMesh]-ов в файле glTF. Это сетки, на которые "
"ссылается индекс [member GLTFNode.mesh]."

msgid ""
"Returns the index of the [GLTFNode] corresponding to this Godot scene node. "
"This is the inverse of [method get_scene_node]. Useful during the export "
"process.\n"
"[b]Note:[/b] Not every Godot scene node will have a corresponding [GLTFNode], "
"and not every [GLTFNode] will have a scene node generated. If there is no "
"[GLTFNode] index for this scene node, [code]-1[/code] is returned."
msgstr ""
"Возвращает индекс [GLTFNode], соответствующий этому узлу сцены Godot. Это "
"обратный метод [method get_scene_node]. Полезно во время процесса экспорта.\n"
"[b]Примечание:[/b] Не каждый узел сцены Godot будет иметь соответствующий "
"[GLTFNode], и не каждый [GLTFNode] будет иметь сгенерированный узел сцены. "
"Если для этого узла сцены нет индекса [GLTFNode], возвращается [code]-1[/"
"code]."

msgid ""
"Returns an array of all [GLTFNode]s in the glTF file. These are the nodes "
"that [member GLTFNode.children] and [member root_nodes] refer to. This "
"includes nodes that may not be generated in the Godot scene, or nodes that "
"may generate multiple Godot scene nodes."
msgstr ""
"Возвращает массив всех [GLTFNode] в файле glTF. Это узлы, на которые "
"ссылаются [member GLTFNode.children] и [member root_nodes]. Сюда входят узлы, "
"которые не могут быть сгенерированы в сцене Godot, или узлы, которые могут "
"генерировать несколько узлов сцены Godot."

msgid ""
"Returns the Godot scene node that corresponds to the same index as the "
"[GLTFNode] it was generated from. This is the inverse of [method "
"get_node_index]. Useful during the import process.\n"
"[b]Note:[/b] Not every [GLTFNode] will have a scene node generated, and not "
"every generated scene node will have a corresponding [GLTFNode]. If there is "
"no scene node for this [GLTFNode] index, [code]null[/code] is returned."
msgstr ""
"Возвращает узел сцены Godot, который соответствует тому же индексу, что и "
"[GLTFNode], из которого он был сгенерирован. Это обратный метод [method "
"get_node_index]. Полезно во время процесса импорта.\n"
"[b]Примечание:[/b] Не каждый [GLTFNode] будет иметь сгенерированный узел "
"сцены, и не каждый сгенерированный узел сцены будет иметь соответствующий "
"[GLTFNode]. Если для этого индекса [GLTFNode] нет узла сцены, возвращается "
"[code]null[/code]."

msgid ""
"Returns an array of all [GLTFSkeleton]s in the glTF file. These are the "
"skeletons that the [member GLTFNode.skeleton] index refers to."
msgstr ""
"Возвращает массив всех [GLTFSkeleton] в файле glTF. Это скелеты, на которые "
"ссылается индекс [member GLTFNode.skeleton]."

msgid ""
"Returns an array of all [GLTFSkin]s in the glTF file. These are the skins "
"that the [member GLTFNode.skin] index refers to."
msgstr ""
"Возвращает массив всех [GLTFSkin] в файле glTF. Это скины, на которые "
"ссылается индекс [member GLTFNode.skin]."

msgid ""
"Retrieves the array of texture samplers that are used by the textures "
"contained in the glTF."
msgstr ""
"Извлекает массив сэмплеров текстур, которые используются текстурами, "
"содержащимися в glTF."

msgid ""
"Returns an array of unique animation names. This is only used during the "
"import process."
msgstr ""
"Возвращает массив уникальных имен анимаций. Используется только в процессе "
"импорта."

msgid ""
"Returns an array of unique node names. This is used in both the import "
"process and export process."
msgstr ""
"Возвращает массив уникальных имен узлов. Используется как в процессе импорта, "
"так и в процессе экспорта."

msgid ""
"Sets additional arbitrary data in this [GLTFState] instance. This can be used "
"to keep per-file state data in [GLTFDocumentExtension] classes, which is "
"important because they are stateless.\n"
"The first argument should be the [GLTFDocumentExtension] name (does not have "
"to match the extension name in the glTF file), and the second argument can be "
"anything you want."
msgstr ""
"Устанавливает дополнительные произвольные данные в этом экземпляре "
"[GLTFState]. Это можно использовать для хранения данных о состоянии каждого "
"файла в классах [GLTFDocumentExtension], что важно, поскольку они не имеют "
"состояния.\n"
"Первым аргументом должно быть имя [GLTFDocumentExtension] (не обязательно "
"совпадать с именем расширения в файле glTF), а вторым аргументом может быть "
"все, что угодно."

msgid ""
"Sets the [GLTFAnimation]s in the state. When importing, these will be "
"generated as animations in an [AnimationPlayer] node. When exporting, these "
"will be generated from Godot [AnimationPlayer] nodes."
msgstr ""
"Устанавливает [GLTFAnimation]-ы в состояние. При импорте они будут "
"сгенерированы как анимации в узле [AnimationPlayer]. При экспорте они будут "
"сгенерированы из узлов Godot [AnimationPlayer]."

msgid ""
"Sets the [GLTFCamera]s in the state. These are the cameras that the [member "
"GLTFNode.camera] index refers to."
msgstr ""
"Устанавливает [GLTFCamera]-ы в состояние. Это камеры, на которые ссылается "
"индекс [member GLTFNode.camera]."

msgid ""
"Sets the images in the state stored as an array of [Texture2D]s. This can be "
"used during export. These are the images that the [member "
"GLTFTexture.src_image] index refers to."
msgstr ""
"Устанавливает изображения в состояние, сохраненное как массив [Texture2D]. "
"Это может быть использовано во время экспорта. Это изображения, на которые "
"ссылается индекс [member GLTFTexture.src_image]."

msgid ""
"Sets the [GLTFLight]s in the state. These are the lights that the [member "
"GLTFNode.light] index refers to."
msgstr ""
"Устанавливает [GLTFLight]-ы в состояние. Это источники света, на которые "
"ссылается индекс [member GLTFNode.light]."

msgid ""
"Sets the [GLTFMesh]es in the state. These are the meshes that the [member "
"GLTFNode.mesh] index refers to."
msgstr ""
"Устанавливает [GLTFMesh]-ы в состоянии. Это сетки, на которые ссылается "
"индекс [member GLTFNode.mesh]."

msgid ""
"Sets the [GLTFNode]s in the state. These are the nodes that [member "
"GLTFNode.children] and [member root_nodes] refer to. Some of the nodes set "
"here may not be generated in the Godot scene, or may generate multiple Godot "
"scene nodes."
msgstr ""
"Устанавливает [GLTFNode] в состояние. Это узлы, на которые ссылаются [member "
"GLTFNode.children] и [member root_nodes]. Некоторые из установленных здесь "
"узлов могут не генерироваться в сцене Godot или могут генерировать несколько "
"узлов сцены Godot."

msgid ""
"Sets the [GLTFSkeleton]s in the state. These are the skeletons that the "
"[member GLTFNode.skeleton] index refers to."
msgstr ""
"Устанавливает [GLTFSkeleton]-ы в состоянии. Это скелеты, на которые ссылается "
"индекс [member GLTFNode.skeleton]."

msgid ""
"Sets the [GLTFSkin]s in the state. These are the skins that the [member "
"GLTFNode.skin] index refers to."
msgstr ""
"Устанавливает [GLTFSkin]-ы в состояние. Это скины, на которые ссылается "
"индекс [member GLTFNode.skin]."

msgid ""
"Sets the array of texture samplers that are used by the textures contained in "
"the glTF."
msgstr ""
"Задает массив сэмплеров текстур, которые используются текстурами, "
"содержащимися в glTF."

msgid ""
"Sets the unique animation names in the state. This is only used during the "
"import process."
msgstr ""
"Устанавливает уникальные имена анимаций в состоянии. Используется только в "
"процессе импорта."

msgid ""
"Sets the unique node names in the state. This is used in both the import "
"process and export process."
msgstr ""
"Устанавливает уникальные имена узлов в состоянии. Используется как в процессе "
"импорта, так и в процессе экспорта."

msgid "The baking fps of the animation for either import or export."
msgstr "Частота кадров (FPS) анимации для импорта или экспорта."

msgid ""
"The folder path associated with this glTF data. This is used to find other "
"files the glTF file references, like images or binary buffers. This will be "
"set during import when appending from a file, and will be set during export "
"when writing to a file."
msgstr ""
"Путь к папке, связанной с этими данными glTF. Используется для поиска других "
"файлов, на которые ссылается файл glTF, например, изображений или двоичных "
"буферов. Будет установлен во время импорта при добавлении из файла и будет "
"установлен во время экспорта при записи в файл."

msgid ""
"The copyright string in the asset header of the glTF file. This is set during "
"import if present and export if non-empty. See the glTF asset header "
"documentation for more information."
msgstr ""
"Строка авторских прав в заголовке актива файла glTF. Устанавливается во время "
"импорта, если присутствует, и экспорта, если не пусто. Для получения "
"дополнительной информации см. документацию по заголовку актива glTF."

msgid ""
"The file name associated with this glTF data. If it ends with [code].gltf[/"
"code], this is text-based glTF, otherwise this is binary GLB. This will be "
"set during import when appending from a file, and will be set during export "
"when writing to a file. If writing to a buffer, this will be an empty string."
msgstr ""
"Имя файла, связанное с этими данными glTF. Если он заканчивается на "
"[code].gltf[/code], это текстовый glTF, в противном случае это двоичный GLB. "
"Это будет установлено во время импорта при добавлении из файла и будет "
"установлено во время экспорта при записи в файл. При записи в буфер это будет "
"пустая строка."

msgid "The binary buffer attached to a .glb file."
msgstr "Двоичный буфер, прикрепленный к файлу .glb."

msgid ""
"If [code]true[/code], forces all GLTFNodes in the document to be bones of a "
"single [Skeleton3D] Godot node."
msgstr ""
"Если [code]true[/code], то все узлы GLTF в документе будут костями одного "
"узла Godot [Skeleton 3D]."

msgid "The original raw JSON document corresponding to this GLTFState."
msgstr "Исходный необработанный документ JSON, соответствующий этому GLTFState."

msgid ""
"The root nodes of the glTF file. Typically, a glTF file will only have one "
"scene, and therefore one root node. However, a glTF file may have multiple "
"scenes and therefore multiple root nodes, which will be generated as siblings "
"of each other and as children of the root node of the generated Godot scene."
msgstr ""
"Корневые узлы файла glTF. Обычно файл glTF будет иметь только одну сцену и, "
"следовательно, один корневой узел. Однако файл glTF может иметь несколько "
"сцен и, следовательно, несколько корневых узлов, которые будут сгенерированы "
"как родственные друг другу и как дочерние элементы корневого узла "
"сгенерированной сцены Godot."

msgid ""
"The name of the scene. When importing, if not specified, this will be the "
"file name. When exporting, if specified, the scene name will be saved to the "
"glTF file."
msgstr ""
"Имя сцены. При импорте, если не указано, это будет имя файла. При экспорте, "
"если указано, имя сцены будет сохранено в файле glTF."

msgid "Discards all embedded textures and uses untextured materials."
msgstr ""
"Отбрасывает все встроенные текстуры и использует нетекстурированные материалы."

msgid ""
"Extracts embedded textures to be reimported and compressed. Editor only. Acts "
"as uncompressed at runtime."
msgstr ""
"Извлекает встроенные текстуры для повторного импорта и сжатия. Только "
"редактор. Действует как несжатый во время выполнения."

msgid ""
"Embeds textures VRAM compressed with Basis Universal into the generated scene."
msgstr ""
"Встраивает текстуры VRAM, сжатые с помощью Basis Universal, в сгенерированную "
"сцену."

msgid ""
"Embeds textures compressed losslessly into the generated scene, matching old "
"behavior."
msgstr ""
"Встраивает текстуры, сжатые без потерь, в сгенерированную сцену, соответствуя "
"старому поведению."

msgid "GLTFTexture represents a texture in a glTF file."
msgstr "GLTFTexture представляет текстуру в файле glTF."

msgid ""
"ID of the texture sampler to use when sampling the image. If -1, then the "
"default texture sampler is used (linear filtering, and repeat wrapping in "
"both axes)."
msgstr ""
"ID сэмплера текстуры, который будет использоваться при сэмплировании "
"изображения. Если -1, то используется сэмплер текстуры по умолчанию (линейная "
"фильтрация и повторное обертывание по обеим осям)."

msgid ""
"The index of the image associated with this texture, see [method "
"GLTFState.get_images]. If -1, then this texture does not have an image "
"assigned."
msgstr ""
"Индекс изображения, связанного с этой текстурой, см. [method "
"GLTFState.get_images]. Если -1, то этой текстуре не назначено изображение."

msgid "Represents a glTF texture sampler"
msgstr "Представляет собой сэмплер текстуры glTF"

msgid ""
"Represents a texture sampler as defined by the base glTF spec. Texture "
"samplers in glTF specify how to sample data from the texture's base image, "
"when rendering the texture on an object."
msgstr ""
"Представляет сэмплер текстуры, как определено базовой спецификацией glTF. "
"Сэмплеры текстуры в glTF указывают, как сэмплировать данные из базового "
"изображения текстуры при рендеринге текстуры на объекте."

msgid ""
"Texture's magnification filter, used when texture appears larger on screen "
"than the source image."
msgstr ""
"Фильтр увеличения текстуры, используемый, когда текстура на экране выглядит "
"больше, чем исходное изображение."

msgid ""
"Texture's minification filter, used when the texture appears smaller on "
"screen than the source image."
msgstr ""
"Фильтр уменьшения текстуры, используемый, когда текстура на экране выглядит "
"меньше исходного изображения."

msgid "Wrapping mode to use for S-axis (horizontal) texture coordinates."
msgstr ""
"Режим обертывания, используемый для координат текстуры по оси S "
"(горизонтальной)."

msgid "Wrapping mode to use for T-axis (vertical) texture coordinates."
msgstr ""
"Режим обертывания, используемый для координат текстуры по оси T "
"(вертикальной)."

msgid "A 2D particle emitter."
msgstr "Двумерный излучатель частиц."

msgid ""
"2D particle node used to create a variety of particle systems and effects. "
"[GPUParticles2D] features an emitter that generates some number of particles "
"at a given rate.\n"
"Use the [member process_material] property to add a [ParticleProcessMaterial] "
"to configure particle appearance and behavior. Alternatively, you can add a "
"[ShaderMaterial] which will be applied to all particles.\n"
"2D particles can optionally collide with [LightOccluder2D], but they don't "
"collide with [PhysicsBody2D] nodes."
msgstr ""
"Узел 2D-частиц, используемый для создания различных систем частиц и эффектов. "
"[GPUParticles2D] содержит излучатель, который генерирует некоторое количество "
"частиц с заданной скоростью.\n"
"Используйте свойство [member process_material], чтобы добавить "
"[ParticleProcessMaterial] для настройки внешнего вида и поведения частиц. В "
"качестве альтернативы вы можете добавить [ShaderMaterial], который будет "
"применен ко всем частицам.\n"
"2D-частицы могут опционально сталкиваться с узлами [LightOccluder2D], но они "
"не сталкиваются с узлами [PhysicsBody2D]."

msgid "2D Particles Demo"
msgstr "Демонстрация 2D-частиц"

msgid ""
"2D Dodge The Creeps Demo (uses GPUParticles2D for the trail behind the player)"
msgstr ""
"2D Dodge The Creeps Demo (использует GPUParticles2D для следа позади игрока)"

msgid ""
"Returns a rectangle containing the positions of all existing particles.\n"
"[b]Note:[/b] When using threaded rendering this method synchronizes the "
"rendering thread. Calling it often may have a negative impact on performance."
msgstr ""
"Возвращает прямоугольник, содержащий позиции всех существующих частиц.\n"
"[b]Примечание:[/b] При использовании потокового рендеринга этот метод "
"синхронизирует поток рендеринга. Частый его вызов может негативно сказаться "
"на производительности."

msgid "Sets this node's properties to match a given [CPUParticles2D] node."
msgstr ""
"Устанавливает свойства этого узла в соответствии с заданным узлом "
"[CPUParticles2D]."

msgid ""
"Emits a single particle. Whether [param xform], [param velocity], [param "
"color] and [param custom] are applied depends on the value of [param flags]. "
"See [enum EmitFlags].\n"
"The default ParticleProcessMaterial will overwrite [param color] and use the "
"contents of [param custom] as [code](rotation, age, animation, lifetime)[/"
"code].\n"
"[b]Note:[/b] [method emit_particle] is only supported on the Forward+ and "
"Mobile rendering methods, not Compatibility."
msgstr ""
"Выпускает одну частицу. Применяются ли [param xform], [param velocity], "
"[param color] и [param custom], зависит от значения [param flags]. См. [enum "
"EmitFlags].\n"
"ParticleProcessMaterial по умолчанию перезапишет [param color] и будет "
"использовать содержимое [param custom] как [code](rotation, age, animation, "
"life)[/code].\n"
"[b]Примечание:[/b] [method emit_particle] поддерживается только в методах "
"рендеринга Forward+ и Mobile, но не Compatibility."

msgid ""
"Restarts the particle emission cycle, clearing existing particles. To avoid "
"particles vanishing from the viewport, wait for the [signal finished] signal "
"before calling.\n"
"[b]Note:[/b] The [signal finished] signal is only emitted by [member "
"one_shot] emitters.\n"
"If [param keep_seed] is [code]true[/code], the current random seed will be "
"preserved. Useful for seeking and playback."
msgstr ""
"Перезапускает цикл испускания частиц, очищая существующие частицы. Чтобы "
"избежать исчезновения частиц из области просмотра, дождитесь сигнала [signal "
"finished] перед вызовом.\n"
"[b]Примечание:[/b] Сигнал [signal finished] испускается только эмиттерами "
"[member one_shot].\n"
"Если [param keep_seed] равен [code]true[/code], текущее случайное начальное "
"число будет сохранено. Полезно для поиска и воспроизведения."

msgid ""
"The number of particles to emit in one emission cycle. The effective emission "
"rate is [code](amount * amount_ratio) / lifetime[/code] particles per second. "
"Higher values will increase GPU requirements, even if not all particles are "
"visible at a given time or if [member amount_ratio] is decreased.\n"
"[b]Note:[/b] Changing this value will cause the particle system to restart. "
"To avoid this, change [member amount_ratio] instead."
msgstr ""
"Количество частиц, испускаемых за один цикл испускания. Эффективная скорость "
"испускания равна [code](amount * amount_ratio) / life[/code] частиц в "
"секунду. Более высокие значения увеличат требования к графическому "
"процессору, даже если не все частицы видны в данный момент времени или если "
"[member amount_ratio] уменьшено.\n"
"[b]Примечание:[/b] Изменение этого значения приведет к перезапуску системы "
"частиц. Чтобы избежать этого, измените [member amount_ratio]."

msgid ""
"The ratio of particles that should actually be emitted. If set to a value "
"lower than [code]1.0[/code], this will set the amount of emitted particles "
"throughout the lifetime to [code]amount * amount_ratio[/code]. Unlike "
"changing [member amount], changing [member amount_ratio] while emitting does "
"not affect already-emitted particles and doesn't cause the particle system to "
"restart. [member amount_ratio] can be used to create effects that make the "
"number of emitted particles vary over time.\n"
"[b]Note:[/b] Reducing the [member amount_ratio] has no performance benefit, "
"since resources need to be allocated and processed for the total [member "
"amount] of particles regardless of the [member amount_ratio]. If you don't "
"intend to change the number of particles emitted while the particles are "
"emitting, make sure [member amount_ratio] is set to [code]1[/code] and change "
"[member amount] to your liking instead."
msgstr ""
"Соотношение частиц, которые должны быть фактически испущены. Если установлено "
"значение ниже [code]1.0[/code], это установит количество испускаемых частиц "
"за время жизни на [code]amount * amount_ratio[/code]. В отличие от изменения "
"[member amount], изменение [member amount_ratio] во время испускания не "
"влияет на уже испущенные частицы и не приводит к перезапуску системы частиц. "
"[member amount_ratio] можно использовать для создания эффектов, которые "
"заставляют количество испускаемых частиц меняться со временем.\n"
"[b]Примечание:[/b] Уменьшение [member amount_ratio] не дает выигрыша в "
"производительности, поскольку ресурсы должны быть выделены и обработаны для "
"общего [member amount] частиц независимо от [member amount_ratio]. Если вы не "
"собираетесь изменять количество испускаемых частиц во время испускания "
"частиц, убедитесь, что [member amount_ratio] установлено на [code]1[/code] и "
"вместо этого измените [member amount] по своему усмотрению."

msgid ""
"Multiplier for particle's collision radius. [code]1.0[/code] corresponds to "
"the size of the sprite. If particles appear to sink into the ground when "
"colliding, increase this value. If particles appear to float when colliding, "
"decrease this value. Only effective if [member "
"ParticleProcessMaterial.collision_mode] is [constant "
"ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT].\n"
"[b]Note:[/b] Particles always have a spherical collision shape."
msgstr ""
"Множитель радиуса столкновения частиц. [code]1.0[/code] соответствует размеру "
"спрайта. Если частицы кажутся тонущими в земле при столкновении, увеличьте "
"это значение. Если частицы кажутся плавающими при столкновении, уменьшите это "
"значение. Действует только если [member "
"ParticleProcessMaterial.collision_mode] равен [constant "
"ParticleProcessMaterial.COLLISION_RIGID] или [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT].\n"
"[b]Примечание:[/b] Частицы всегда имеют сферическую форму столкновения."

msgid ""
"If [code]true[/code], particles are being emitted. [member emitting] can be "
"used to start and stop particles from emitting. However, if [member one_shot] "
"is [code]true[/code] setting [member emitting] to [code]true[/code] will not "
"restart the emission cycle unless all active particles have finished "
"processing. Use the [signal finished] signal to be notified once all active "
"particles finish processing.\n"
"[b]Note:[/b] For [member one_shot] emitters, due to the particles being "
"computed on the GPU, there may be a short period after receiving the [signal "
"finished] signal during which setting this to [code]true[/code] will not "
"restart the emission cycle.\n"
"[b]Tip:[/b] If your [member one_shot] emitter needs to immediately restart "
"emitting particles once [signal finished] signal is received, consider "
"calling [method restart] instead of setting [member emitting]."
msgstr ""
"Если [code]true[/code], частицы испускаются. [member emitting] можно "
"использовать для запуска и остановки испускания частиц. Однако, если [member "
"one_shot] равно [code]true[/code], установка [member emitting] в [code]true[/"
"code] не перезапустит цикл испускания, пока все активные частицы не закончат "
"обработку. Используйте сигнал [signal finished], чтобы получать уведомления, "
"как только все активные частицы закончат обработку.\n"
"[b]Примечание:[/b] Для испускателей [member one_shot], из-за того, что "
"частицы вычисляются на GPU, может быть короткий период после получения "
"сигнала [signal finished], в течение которого установка этого значения в "
"[code]true[/code] не перезапустит цикл испускания.\n"
"[b]Совет:[/b] Если вашему испускателю [member one_shot] необходимо немедленно "
"возобновить испускание частиц после получения сигнала [signal finished], "
"рассмотрите возможность вызова [method restart] вместо установки [member "
"emitting]."

msgid ""
"Causes all the particles in this node to interpolate towards the end of their "
"lifetime.\n"
"[b]Note:[/b] This only works when used with a [ParticleProcessMaterial]. It "
"needs to be manually implemented for custom process shaders."
msgstr ""
"Заставляет все частицы в этом узле интерполироваться к концу своего "
"жизненного цикла.\n"
"[b]Примечание:[/b] Это работает только при использовании с "
"[ParticleProcessMaterial]. Это необходимо вручную реализовать для шейдеров "
"пользовательских процессов."

msgid ""
"Enables particle interpolation, which makes the particle movement smoother "
"when their [member fixed_fps] is lower than the screen refresh rate."
msgstr ""
"Включает интерполяцию частиц, которая делает движение частиц более плавным, "
"когда их [member fixed_fps] ниже частоты обновления экрана."

msgid ""
"The amount of time each particle will exist (in seconds). The effective "
"emission rate is [code](amount * amount_ratio) / lifetime[/code] particles "
"per second."
msgstr ""
"Количество времени, в течение которого каждая частица будет существовать (в "
"секундах). Эффективная скорость эмиссии равна [code](amount * amount_ratio) / "
"lifetime[/code] частиц в секунду."

msgid ""
"If [code]true[/code], particles use the parent node's coordinate space (known "
"as local coordinates). This will cause particles to move and rotate along the "
"[GPUParticles2D] node (and its parents) when it is moved or rotated. If "
"[code]false[/code], particles use global coordinates; they will not move or "
"rotate along the [GPUParticles2D] node (and its parents) when it is moved or "
"rotated."
msgstr ""
"Если [code]true[/code], частицы используют координатное пространство "
"родительского узла (известное как локальные координаты). Это заставит частицы "
"двигаться и вращаться вдоль узла [GPUParticles2D] (и его родителей) при его "
"перемещении или повороте. Если [code]false[/code], частицы используют "
"глобальные координаты; они не будут двигаться или вращаться вдоль узла "
"[GPUParticles2D] (и его родителей) при его перемещении или повороте."

msgid ""
"Particle system starts as if it had already run for this many seconds.\n"
"[b]Note:[/b] This can be very expensive if set to a high number as it "
"requires running the particle shader a number of times equal to the [member "
"fixed_fps] (or 30, if [member fixed_fps] is 0) for every second. In extreme "
"cases it can even lead to a GPU crash due to the volume of work done in a "
"single frame."
msgstr ""
"Система частиц запускается так, как будто она уже работала столько секунд.\n"
"[b]Примечание:[/b] Это может быть очень затратно, если установлено большое "
"число, так как это требует запуска шейдера частиц количество раз, равное "
"[member fixed_fps] (или 30, если [member fixed_fps] равен 0) для каждой "
"секунды. В крайних случаях это может даже привести к сбою графического "
"процессора из-за объема работы, выполненной за один кадр."

msgid ""
"[Material] for processing particles. Can be a [ParticleProcessMaterial] or a "
"[ShaderMaterial]."
msgstr ""
"[Material] для обработки частиц. Может быть [ParticleProcessMaterial] или "
"[ShaderMaterial]."

msgid ""
"Path to another [GPUParticles2D] node that will be used as a subemitter (see "
"[member ParticleProcessMaterial.sub_emitter_mode]). Subemitters can be used "
"to achieve effects such as fireworks, sparks on collision, bubbles popping "
"into water drops, and more.\n"
"[b]Note:[/b] When [member sub_emitter] is set, the target [GPUParticles2D] "
"node will no longer emit particles on its own."
msgstr ""
"Путь к другому узлу [GPUParticles2D], который будет использоваться как "
"субэмиттер (см. [member ParticleProcessMaterial.sub_emitter_mode]). "
"Субэмиттеры можно использовать для достижения таких эффектов, как фейерверк, "
"искры при столкновении, пузыри, лопающиеся в каплях воды, и многое другое.\n"
"[b]Примечание:[/b] Когда задан [member sub_emitter], целевой узел "
"[GPUParticles2D] больше не будет испускать частицы самостоятельно."

msgid ""
"Particle texture. If [code]null[/code], particles will be squares with a size "
"of 1×1 pixels.\n"
"[b]Note:[/b] To use a flipbook texture, assign a new [CanvasItemMaterial] to "
"the [GPUParticles2D]'s [member CanvasItem.material] property, then enable "
"[member CanvasItemMaterial.particles_animation] and set [member "
"CanvasItemMaterial.particles_anim_h_frames], [member "
"CanvasItemMaterial.particles_anim_v_frames], and [member "
"CanvasItemMaterial.particles_anim_loop] to match the flipbook texture."
msgstr ""
"Текстура частиц. Если [code]null[/code], частицы будут квадратами размером "
"1×1 пиксель.\n"
"[b]Примечание:[/b] Чтобы использовать текстуру флипбука/атласа спрайтов, "
"назначьте новый [CanvasItemMaterial] свойству [member CanvasItem.material] "
"[GPUParticles2D], затем включите [member "
"CanvasItemMaterial.particles_animation] и установите [member "
"CanvasItemMaterial.particles_anim_h_frames], [member "
"CanvasItemMaterial.particles_anim_v_frames] и [member "
"CanvasItemMaterial.particles_anim_loop] для соответствия текстуре флипбука/"
"атласа спрайтов."

msgid ""
"If [code]true[/code], enables particle trails using a mesh skinning system.\n"
"[b]Note:[/b] Unlike [GPUParticles3D], the number of trail sections and "
"subdivisions is set with the [member trail_sections] and [member "
"trail_section_subdivisions] properties."
msgstr ""
"Если [code]true[/code], включает следы частиц с использованием системы "
"скиннинга сетки.\n"
"[b]Примечание:[/b] В отличие от [GPUParticles3D], количество секций и "
"подразделений следа задается свойствами [member trail_sections] и [member "
"trail_section_subdivisions]."

msgid ""
"The amount of time the particle's trail should represent (in seconds). Only "
"effective if [member trail_enabled] is [code]true[/code]."
msgstr ""
"Количество времени, которое должен представлять след частицы (в секундах). "
"Действует только если [member trail_enabled] равен [code]true[/code]."

msgid ""
"The number of subdivisions to use for the particle trail rendering. Higher "
"values can result in smoother trail curves, at the cost of performance due to "
"increased mesh complexity. See also [member trail_sections]. Only effective "
"if [member trail_enabled] is [code]true[/code]."
msgstr ""
"Количество подразделений, используемых для рендеринга следа частиц. Более "
"высокие значения могут привести к более плавным кривым следа за счет "
"производительности из-за повышенной сложности сетки. См. также [member "
"trail_sections]. Действует только если [member trail_enabled] имеет значение "
"[code]true[/code]."

msgid ""
"The number of sections to use for the particle trail rendering. Higher values "
"can result in smoother trail curves, at the cost of performance due to "
"increased mesh complexity. See also [member trail_section_subdivisions]. Only "
"effective if [member trail_enabled] is [code]true[/code]."
msgstr ""
"Количество секций, используемых для рендеринга следа частиц. Более высокие "
"значения могут привести к более плавным кривым следа за счет "
"производительности из-за повышенной сложности сетки. См. также [member "
"trail_section_subdivisions]. Действует только если [member trail_enabled] "
"имеет значение [code]true[/code]."

msgid ""
"The [Rect2] that determines the node's region which needs to be visible on "
"screen for the particle system to be active.\n"
"Grow the rect if particles suddenly appear/disappear when the node enters/"
"exits the screen. The [Rect2] can be grown via code or with the [b]Particles "
"→ Generate Visibility Rect[/b] editor tool."
msgstr ""
"[Rect2], который определяет область узла, которая должна быть видна на "
"экране, чтобы система частиц была активной.\n"
"Увеличьте прямоугольник, если частицы внезапно появляются/исчезают, когда "
"узел входит/выходит из экрана. [Rect2] можно увеличить с помощью кода или с "
"помощью инструмента редактора [b]Particles → Generate Visibility Rect[/b]."

msgid ""
"Emitted when all active particles have finished processing. To immediately "
"restart the emission cycle, call [method restart].\n"
"This signal is never emitted when [member one_shot] is disabled, as particles "
"will be emitted and processed continuously.\n"
"[b]Note:[/b] For [member one_shot] emitters, due to the particles being "
"computed on the GPU, there may be a short period after receiving the signal "
"during which setting [member emitting] to [code]true[/code] will not restart "
"the emission cycle. This delay is avoided by instead calling [method restart]."
msgstr ""
"Вызывается, когда все активные частицы завершили обработку. Чтобы немедленно "
"перезапустить цикл испускания, вызовите [method restart].\n"
"Этот сигнал никогда не вызывается, когда [member one_shot] отключен, так как "
"частицы будут испускаться и обрабатываться непрерывно.\n"
"[b]Примечание:[/b] Для эмиттеров [member one_shot], поскольку частицы "
"вычисляются на GPU, может быть короткий период после получения сигнала, в "
"течение которого установка [member emitting] на [code]true[/code] не "
"перезапустит цикл испускания. Эта задержка устраняется путем вызова [method "
"restart]."

msgid ""
"Particles are drawn in reverse order of remaining lifetime. In other words, "
"the particle with the lowest lifetime is drawn at the front."
msgstr ""
"Частицы рисуются в обратном порядке оставшегося времени жизни. Другими "
"словами, частица с наименьшим временем жизни рисуется спереди."

msgid "Particle starts at the specified position."
msgstr "Частица стартует в указанной позиции."

msgid "Particle starts with specified rotation and scale."
msgstr "Частица начинается с указанного поворота и масштаба."

msgid ""
"Particle starts with the specified velocity vector, which defines the "
"emission direction and speed."
msgstr ""
"Частица стартует с заданным вектором скорости, который определяет направление "
"и скорость излучения."

msgid "Particle starts with specified color."
msgstr "Частица начинается с указанного цвета."

msgid "Particle starts with specified [code]CUSTOM[/code] data."
msgstr "Частица начинается с указанных данных [code]CUSTOM[/code]."

msgid "A 3D particle emitter."
msgstr "3D-излучатель частиц."

msgid ""
"3D particle node used to create a variety of particle systems and effects. "
"[GPUParticles3D] features an emitter that generates some number of particles "
"at a given rate.\n"
"Use [member process_material] to add a [ParticleProcessMaterial] to configure "
"particle appearance and behavior. Alternatively, you can add a "
"[ShaderMaterial] which will be applied to all particles."
msgstr ""
"Узел 3D-частиц, используемый для создания различных систем частиц и эффектов. "
"[GPUParticles3D] содержит эмиттер, который генерирует некоторое количество "
"частиц с заданной скоростью.\n"
"Используйте [member process_material], чтобы добавить "
"[ParticleProcessMaterial] для настройки внешнего вида и поведения частиц. В "
"качестве альтернативы вы можете добавить [ShaderMaterial], который будет "
"применен ко всем частицам."

msgid "Controlling thousands of fish with Particles"
msgstr "Управление тысячами рыб с помощью частиц"

msgid "Sets this node's properties to match a given [CPUParticles3D] node."
msgstr ""
"Устанавливает свойства этого узла в соответствии с заданным узлом "
"[CPUParticles3D]."

msgid "Returns the [Mesh] that is drawn at index [param pass]."
msgstr "Возвращает [Mesh], который нарисован по индексу [param pass]."

msgid "Sets the [Mesh] that is drawn at index [param pass]."
msgstr "Устанавливает [Mesh], который рисуется по индексу [param pass]."

msgid ""
"The base diameter for particle collision in meters. If particles appear to "
"sink into the ground when colliding, increase this value. If particles appear "
"to float when colliding, decrease this value. Only effective if [member "
"ParticleProcessMaterial.collision_mode] is [constant "
"ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT].\n"
"[b]Note:[/b] Particles always have a spherical collision shape."
msgstr ""
"Диаметр основания для столкновения частиц в метрах. Если частицы кажутся "
"тонущими в земле при столкновении, увеличьте это значение. Если частицы "
"кажутся плавающими при столкновении, уменьшите это значение. Действует только "
"если [member ParticleProcessMaterial.collision_mode] равен [constant "
"ParticleProcessMaterial.COLLISION_RIGID] или [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT].\n"
"[b]Примечание:[/b] Частицы всегда имеют сферическую форму столкновения."

msgid ""
"Particle draw order.\n"
"[b]Note:[/b] [constant DRAW_ORDER_INDEX] is the only option that supports "
"motion vectors for effects like TAA. It is suggested to use this draw order "
"if the particles are opaque to fix ghosting artifacts."
msgstr ""
"Порядок отрисовки частиц.\n"
"[b]Примечание:[/b] [constant DRAW_ORDER_INDEX] — единственный параметр, "
"поддерживающий векторы движения для эффектов типа TAA. Рекомендуется "
"использовать этот порядок отрисовки, если частицы непрозрачны, чтобы "
"исправить артефакты двоения."

msgid "[Mesh] that is drawn for the first draw pass."
msgstr "[Mesh], который рисуется для первого прохода рисования."

msgid "[Mesh] that is drawn for the second draw pass."
msgstr "[Mesh], который рисуется для второго прохода рисования."

msgid "[Mesh] that is drawn for the third draw pass."
msgstr "[Mesh], который рисуется для третьего прохода рисования."

msgid "[Mesh] that is drawn for the fourth draw pass."
msgstr "[Mesh], который рисуется для четвертого прохода рисования."

msgid "The number of draw passes when rendering particles."
msgstr "Количество проходов отрисовки при рендеринге частиц."

msgid ""
"Time ratio between each emission. If [code]0[/code], particles are emitted "
"continuously. If [code]1[/code], all particles are emitted simultaneously."
msgstr ""
"Соотношение времени между каждым выбросом. Если [code]0[/code], частицы "
"выбрасываются непрерывно. Если [code]1[/code], все частицы выбрасываются "
"одновременно."

msgid ""
"If [code]true[/code], particles use the parent node's coordinate space (known "
"as local coordinates). This will cause particles to move and rotate along the "
"[GPUParticles3D] node (and its parents) when it is moved or rotated. If "
"[code]false[/code], particles use global coordinates; they will not move or "
"rotate along the [GPUParticles3D] node (and its parents) when it is moved or "
"rotated."
msgstr ""
"Если [code]true[/code], частицы используют координатное пространство "
"родительского узла (известное как локальные координаты). Это заставит частицы "
"двигаться и вращаться вдоль узла [GPUParticles3D] (и его родителей) при его "
"перемещении или повороте. Если [code]false[/code], частицы используют "
"глобальные координаты; они не будут двигаться или вращаться вдоль узла "
"[GPUParticles3D] (и его родителей) при его перемещении или повороте."

msgid ""
"If [code]true[/code], only the number of particles equal to [member amount] "
"will be emitted."
msgstr ""
"Если [code]true[/code], будет испущено количество частиц, равное [member "
"amount]."

msgid ""
"Amount of time to preprocess the particles before animation starts. Lets you "
"start the animation some time after particles have started emitting.\n"
"[b]Note:[/b] This can be very expensive if set to a high number as it "
"requires running the particle shader a number of times equal to the [member "
"fixed_fps] (or 30, if [member fixed_fps] is 0) for every second. In extreme "
"cases it can even lead to a GPU crash due to the volume of work done in a "
"single frame."
msgstr ""
"Количество времени для предварительной обработки частиц перед началом "
"анимации. Позволяет запустить анимацию через некоторое время после того, как "
"частицы начали испускаться.\n"
"[b]Примечание:[/b] Это может быть очень затратно, если установлено большое "
"число, так как это требует запуска шейдера частиц количество раз, равное "
"[member fixed_fps] (или 30, если [member fixed_fps] равен 0) для каждой "
"секунды. В крайних случаях это может даже привести к сбою графического "
"процессора из-за объема работы, проделанной за один кадр."

msgid "Emission randomness ratio."
msgstr "Коэффициент случайности излучения."

msgid ""
"Speed scaling ratio. A value of [code]0[/code] can be used to pause the "
"particles."
msgstr ""
"Коэффициент масштабирования скорости. Значение [code]0[/code] может "
"использоваться для остановки частиц."

msgid ""
"Path to another [GPUParticles3D] node that will be used as a subemitter (see "
"[member ParticleProcessMaterial.sub_emitter_mode]). Subemitters can be used "
"to achieve effects such as fireworks, sparks on collision, bubbles popping "
"into water drops, and more.\n"
"[b]Note:[/b] When [member sub_emitter] is set, the target [GPUParticles3D] "
"node will no longer emit particles on its own."
msgstr ""
"Путь к другому узлу [GPUParticles3D], который будет использоваться как "
"субэмиттер (см. [member ParticleProcessMaterial.sub_emitter_mode]). "
"Субэмиттеры можно использовать для достижения таких эффектов, как фейерверк, "
"искры при столкновении, пузыри, лопающиеся в каплях воды, и многое другое.\n"
"[b]Примечание:[/b] Когда задан [member sub_emitter], целевой узел "
"[GPUParticles3D] больше не будет испускать частицы самостоятельно."

msgid ""
"If [code]true[/code], enables particle trails using a mesh skinning system. "
"Designed to work with [RibbonTrailMesh] and [TubeTrailMesh].\n"
"[b]Note:[/b] [member BaseMaterial3D.use_particle_trails] must also be enabled "
"on the particle mesh's material. Otherwise, setting [member trail_enabled] to "
"[code]true[/code] will have no effect.\n"
"[b]Note:[/b] Unlike [GPUParticles2D], the number of trail sections and "
"subdivisions is set in the [RibbonTrailMesh] or the [TubeTrailMesh]'s "
"properties."
msgstr ""
"Если [code]true[/code], включает следы частиц с использованием системы "
"скиннинга сетки. Разработано для работы с [RibbonTrailMesh] и "
"[TubeTrailMesh].\n"
"[b]Примечание:[/b] [member BaseMaterial3D.use_particle_trails] также должно "
"быть включено в материале сетки частиц. В противном случае установка [member "
"trail_enabled] на [code]true[/code] не даст никакого эффекта.\n"
"[b]Примечание:[/b] В отличие от [GPUParticles2D], количество секций и "
"подразделений следа задается в свойствах [RibbonTrailMesh] или "
"[TubeTrailMesh]."

msgid ""
"The [AABB] that determines the node's region which needs to be visible on "
"screen for the particle system to be active. [member "
"GeometryInstance3D.extra_cull_margin] is added on each of the AABB's axes. "
"Particle collisions and attraction will only occur within this area.\n"
"Grow the box if particles suddenly appear/disappear when the node enters/"
"exits the screen. The [AABB] can be grown via code or with the [b]Particles → "
"Generate AABB[/b] editor tool.\n"
"[b]Note:[/b] [member visibility_aabb] is overridden by [member "
"GeometryInstance3D.custom_aabb] if that property is set to a non-default "
"value."
msgstr ""
"[AABB], который определяет область узла, которая должна быть видна на экране, "
"чтобы система частиц была активной. [member "
"GeometryInstance3D.extra_cull_margin] добавляется на каждую из осей AABB. "
"Столкновения и притяжение частиц будут происходить только в этой области.\n"
"Увеличьте поле, если частицы внезапно появляются/исчезают, когда узел входит/"
"выходит из экрана. [AABB] можно увеличить с помощью кода или с помощью "
"инструмента редактора [b]Частицы → Сгенерировать AABB[/b].\n"
"[b]Примечание:[/b] [member visible_aabb] переопределяется [member "
"GeometryInstance3D.custom_aabb], если это свойство установлено на значение, "
"отличное от значения по умолчанию."

msgid "Maximum number of draw passes supported."
msgstr "Максимальное поддерживаемое количество проходов рисования."

msgid "Abstract base class for 3D particle attractors."
msgstr "Абстрактный базовый класс для аттракторов трехмерных частиц."

msgid ""
"Particle attractors can be used to attract particles towards the attractor's "
"origin, or to push them away from the attractor's origin.\n"
"Particle attractors work in real-time and can be moved, rotated and scaled "
"during gameplay. Unlike collision shapes, non-uniform scaling of attractors "
"is also supported.\n"
"Attractors can be temporarily disabled by hiding them, or by setting their "
"[member strength] to [code]0.0[/code].\n"
"[b]Note:[/b] Particle attractors only affect [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Аттракторы частиц можно использовать для притяжения частиц к началу "
"аттрактора или для их отталкивания от начала аттрактора.\n"
"Аттракторы частиц работают в реальном времени и могут перемещаться, вращаться "
"и масштабироваться во время игры. В отличие от форм столкновений, также "
"поддерживается неравномерное масштабирование аттракторов.\n"
"Аттракторы можно временно отключить, скрыв их или установив их [member "
"strength] на [code]0.0[/code].\n"
"[b]Примечание:[/b] Аттракторы частиц влияют только на [GPUParticles3D], а не "
"на [CPUParticles3D]."

msgid ""
"The particle attractor's attenuation. Higher values result in more gradual "
"pushing of particles as they come closer to the attractor's origin. Zero or "
"negative values will cause particles to be pushed very fast as soon as the "
"touch the attractor's edges."
msgstr ""
"Затухание аттрактора частиц. Более высокие значения приводят к более плавному "
"отталкиванию частиц по мере их приближения к началу координат аттрактора. "
"Нулевые или отрицательные значения приведут к тому, что частицы будут "
"отталкиваться очень быстро, как только коснутся краев аттрактора."

msgid ""
"The particle rendering layers ([member VisualInstance3D.layers]) that will be "
"affected by the attractor. By default, all particles are affected by an "
"attractor.\n"
"After configuring particle nodes accordingly, specific layers can be "
"unchecked to prevent certain particles from being affected by attractors. For "
"example, this can be used if you're using an attractor as part of a spell "
"effect but don't want the attractor to affect unrelated weather particles at "
"the same position.\n"
"Particle attraction can also be disabled on a per-process material basis by "
"setting [member ParticleProcessMaterial.attractor_interaction_enabled] on the "
"[GPUParticles3D] node."
msgstr ""
"Слои рендеринга частиц ([member VisualInstance3D.layers]), на которые будет "
"влиять аттрактор. По умолчанию все частицы подвержены влиянию аттрактора.\n"
"После соответствующей настройки узлов частиц можно снять отметку с "
"определенных слоев, чтобы предотвратить влияние аттракторов на определенные "
"частицы. Например, это можно использовать, если вы используете аттрактор как "
"часть эффекта заклинания, но не хотите, чтобы аттрактор влиял на несвязанные "
"погодные частицы в той же позиции.\n"
"Притяжение частиц также можно отключить на основе материала процесса, "
"установив [member ParticleProcessMaterial.attractor_interaction_enabled] на "
"узле [GPUParticles3D]."

msgid ""
"Adjusts how directional the attractor is. At [code]0.0[/code], the attractor "
"is not directional at all: it will attract particles towards its center. At "
"[code]1.0[/code], the attractor is fully directional: particles will always "
"be pushed towards local -Z (or +Z if [member strength] is negative).\n"
"[b]Note:[/b] If [member directionality] is greater than [code]0.0[/code], the "
"direction in which particles are pushed can be changed by rotating the "
"[GPUParticlesAttractor3D] node."
msgstr ""
"Регулирует направленность аттрактора. При [code]0.0[/code] аттрактор вообще "
"не направлен: он будет притягивать частицы к своему центру. При [code]1.0[/"
"code] аттрактор полностью направлен: частицы всегда будут подталкиваться к "
"локальному -Z (или +Z, если [member strength] отрицательна).\n"
"[b]Примечание:[/b] Если [member directionality] больше [code]0.0[/code], "
"направление, в котором подталкиваются частицы, можно изменить, вращая узел "
"[GPUParticlesAttractor3D]."

msgid ""
"Adjusts the strength of the attractor. If [member strength] is negative, "
"particles will be pushed in the opposite direction. Particles will be pushed "
"[i]away[/i] from the attractor's origin if [member directionality] is "
"[code]0.0[/code], or towards local +Z if [member directionality] is greater "
"than [code]0.0[/code]."
msgstr ""
"Регулирует силу аттрактора. Если [member strength] отрицательна, частицы "
"будут отталкиваться в противоположном направлении. Частицы будут "
"отталкиваться [i]от[/i] начала аттрактора, если [member directionality] равен "
"[code]0.0[/code], или к локальному +Z, если [member directionality] больше "
"[code]0.0[/code]."

msgid ""
"A box-shaped attractor that influences particles from [GPUParticles3D] nodes."
msgstr "Коробчатый аттрактор, влияющий на частицы из узлов [GPUParticles3D]."

msgid ""
"A box-shaped attractor that influences particles from [GPUParticles3D] nodes. "
"Can be used to attract particles towards its origin, or to push them away "
"from its origin.\n"
"Particle attractors work in real-time and can be moved, rotated and scaled "
"during gameplay. Unlike collision shapes, non-uniform scaling of attractors "
"is also supported.\n"
"[b]Note:[/b] Particle attractors only affect [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Притяжитель в форме коробки, который влияет на частицы из узлов "
"[GPUParticles3D]. Может использоваться для притяжения частиц к своему "
"источнику или для их отталкивания от своего источника.\n"
"Притяжители частиц работают в реальном времени и могут перемещаться, "
"вращаться и масштабироваться во время игры. В отличие от форм столкновений, "
"также поддерживается неравномерное масштабирование притяжителей.\n"
"[b]Примечание:[/b] Притяжители частиц влияют только на [GPUParticles3D], а не "
"на [CPUParticles3D]."

msgid "The attractor box's size in 3D units."
msgstr "Аттрактора коробки в трехмерных единицах."

msgid ""
"A spheroid-shaped attractor that influences particles from [GPUParticles3D] "
"nodes."
msgstr ""
"Аттрактор в форме сфероида, влияющий на частицы из узлов [GPUParticles3D]."

msgid ""
"A spheroid-shaped attractor that influences particles from [GPUParticles3D] "
"nodes. Can be used to attract particles towards its origin, or to push them "
"away from its origin.\n"
"Particle attractors work in real-time and can be moved, rotated and scaled "
"during gameplay. Unlike collision shapes, non-uniform scaling of attractors "
"is also supported.\n"
"[b]Note:[/b] Particle attractors only affect [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Сфероидальный аттрактор, который влияет на частицы из узлов [GPUParticles3D]. "
"Может использоваться для притяжения частиц к своему источнику или для их "
"отталкивания от своего источника.\n"
"Аттракторы частиц работают в реальном времени и могут перемещаться, вращаться "
"и масштабироваться во время игры. В отличие от форм столкновений, также "
"поддерживается неравномерное масштабирование аттракторов.\n"
"[b]Примечание:[/b] Аттракторы частиц влияют только на [GPUParticles3D], а не "
"на [CPUParticles3D]."

msgid ""
"The attractor sphere's radius in 3D units.\n"
"[b]Note:[/b] Stretched ellipses can be obtained by using non-uniform scaling "
"on the [GPUParticlesAttractorSphere3D] node."
msgstr ""
"Радиус сферы притяжения в трехмерных единицах.\n"
"[b]Примечание:[/b] Растянутые эллипсы можно получить, используя неравномерное "
"масштабирование на узле [GPUParticlesAttractorSphere3D]."

msgid ""
"A box-shaped attractor with varying directions and strengths defined in it "
"that influences particles from [GPUParticles3D] nodes."
msgstr ""
"Коробчатый аттрактор с различными направлениями и силами, определенными в "
"нем, который влияет на частицы из узлов [GPUParticles3D]."

msgid ""
"A box-shaped attractor with varying directions and strengths defined in it "
"that influences particles from [GPUParticles3D] nodes.\n"
"Unlike [GPUParticlesAttractorBox3D], [GPUParticlesAttractorVectorField3D] "
"uses a [member texture] to affect attraction strength within the box. This "
"can be used to create complex attraction scenarios where particles travel in "
"different directions depending on their location. This can be useful for "
"weather effects such as sandstorms.\n"
"Particle attractors work in real-time and can be moved, rotated and scaled "
"during gameplay. Unlike collision shapes, non-uniform scaling of attractors "
"is also supported.\n"
"[b]Note:[/b] Particle attractors only affect [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Коробчатый аттрактор с различными направлениями и силами, определенными в "
"нем, который влияет на частицы из узлов [GPUParticles3D].\n"
"В отличие от [GPUParticlesAttractorBox3D], "
"[GPUParticlesAttractorVectorField3D] использует [member texture] для влияния "
"на силу притяжения внутри коробки. Это можно использовать для создания "
"сложных сценариев притяжения, в которых частицы движутся в разных "
"направлениях в зависимости от их местоположения. Это может быть полезно для "
"погодных эффектов, таких как песчаные бури.\n"
"Аттракторы частиц работают в реальном времени и могут перемещаться, вращаться "
"и масштабироваться во время игры. В отличие от форм столкновений, также "
"поддерживается неравномерное масштабирование аттракторов.\n"
"[b]Примечание:[/b] Аттракторы частиц влияют только на [GPUParticles3D], а не "
"на [CPUParticles3D]."

msgid "The size of the vector field box in 3D units."
msgstr "Размер поля векторного поля в трехмерных единицах."

msgid ""
"The 3D texture to be used. Values are linearly interpolated between the "
"texture's pixels.\n"
"[b]Note:[/b] To get better performance, the 3D texture's resolution should "
"reflect the [member size] of the attractor. Since particle attraction is "
"usually low-frequency data, the texture can be kept at a low resolution such "
"as 64×64×64."
msgstr ""
"Трехмерная текстура, которая будет использоваться. Значения линейно "
"интерполируются между пикселями текстуры.\n"
"[b]Примечание:[/b] Для повышения производительности разрешение трехмерной "
"текстуры должно отражать [member size] аттрактора. Поскольку притяжение "
"частиц обычно представляет собой низкочастотные данные, текстуру можно "
"поддерживать в низком разрешении, например 64×64×64."

msgid ""
"Abstract base class for 3D particle collision shapes affecting "
"[GPUParticles3D] nodes."
msgstr ""
"Абстрактный базовый класс для трехмерных форм столкновений частиц, влияющих "
"на узлы [GPUParticles3D]."

msgid ""
"Particle collision shapes can be used to make particles stop or bounce "
"against them.\n"
"Particle collision shapes work in real-time and can be moved, rotated and "
"scaled during gameplay. Unlike attractors, non-uniform scaling of collision "
"shapes is [i]not[/i] supported.\n"
"Particle collision shapes can be temporarily disabled by hiding them.\n"
"[b]Note:[/b] [member ParticleProcessMaterial.collision_mode] must be "
"[constant ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] on the [GPUParticles3D]'s "
"process material for collision to work.\n"
"[b]Note:[/b] Particle collision only affects [GPUParticles3D], not "
"[CPUParticles3D].\n"
"[b]Note:[/b] Particles pushed by a collider that is being moved will not be "
"interpolated, which can result in visible stuttering. This can be alleviated "
"by setting [member GPUParticles3D.fixed_fps] to [code]0[/code] or a value "
"that matches or exceeds the target framerate."
msgstr ""
"Формы столкновений частиц можно использовать для остановки или отскока частиц "
"от них.\n"
"Формы столкновений частиц работают в реальном времени и могут перемещаться, "
"вращаться и масштабироваться во время игры. В отличие от аттракторов, "
"неравномерное масштабирование форм столкновений [i]не[/i] поддерживается.\n"
"Формы столкновений частиц можно временно отключить, скрыв их.\n"
"[b]Примечание:[/b] [member ParticleProcessMaterial.collision_mode] должен "
"быть [constant ParticleProcessMaterial.COLLISION_RIGID] или [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] в материале процесса "
"[GPUParticles3D], чтобы столкновение работало.\n"
"[b]Примечание:[/b] Столкновение частиц влияет только на [GPUParticles3D], а "
"не на [CPUParticles3D].\n"
"[b]Примечание:[/b] Частицы, выталкиваемые движущимся коллайдером, не будут "
"интерполироваться, что может привести к видимым заиканиям. Это можно "
"устранить, установив [member GPUParticles3D.fixed_fps] на [code]0[/code] или "
"значение, которое соответствует или превышает целевую частоту кадров."

msgid ""
"The particle rendering layers ([member VisualInstance3D.layers]) that will be "
"affected by the collision shape. By default, all particles that have [member "
"ParticleProcessMaterial.collision_mode] set to [constant "
"ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] will be affected by a "
"collision shape.\n"
"After configuring particle nodes accordingly, specific layers can be "
"unchecked to prevent certain particles from being affected by colliders. For "
"example, this can be used if you're using a collider as part of a spell "
"effect but don't want the collider to affect unrelated weather particles at "
"the same position.\n"
"Particle collision can also be disabled on a per-process material basis by "
"setting [member ParticleProcessMaterial.collision_mode] on the "
"[GPUParticles3D] node."
msgstr ""
"Слои рендеринга частиц ([member VisualInstance3D.layers]), на которые будет "
"влиять форма столкновения. По умолчанию все частицы, у которых [member "
"ParticleProcessMaterial.collision_mode] установлен на [constant "
"ParticleProcessMaterial.COLLISION_RIGID] или [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT], будут затронуты формой "
"столкновения.\n"
"После соответствующей настройки узлов частиц можно снять отметку с "
"определенных слоев, чтобы предотвратить воздействие коллайдеров на "
"определенные частицы. Например, это можно использовать, если вы используете "
"коллайдер как часть эффекта заклинания, но не хотите, чтобы коллайдер влиял "
"на несвязанные погодные частицы в той же позиции.\n"
"Столкновение частиц также можно отключить на основе материала для каждого "
"процесса, установив [member ParticleProcessMaterial.collision_mode] на узле "
"[GPUParticles3D]."

msgid ""
"A box-shaped 3D particle collision shape affecting [GPUParticles3D] nodes."
msgstr ""
"Трехмерная форма столкновения частиц в форме коробки, влияющая на узлы "
"[GPUParticles3D]."

msgid ""
"A box-shaped 3D particle collision shape affecting [GPUParticles3D] nodes.\n"
"Particle collision shapes work in real-time and can be moved, rotated and "
"scaled during gameplay. Unlike attractors, non-uniform scaling of collision "
"shapes is [i]not[/i] supported.\n"
"[b]Note:[/b] [member ParticleProcessMaterial.collision_mode] must be "
"[constant ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] on the [GPUParticles3D]'s "
"process material for collision to work.\n"
"[b]Note:[/b] Particle collision only affects [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Форма столкновения частиц в форме коробки, влияющая на узлы "
"[GPUParticles3D].\n"
"Формы столкновения частиц работают в реальном времени и могут перемещаться, "
"вращаться и масштабироваться во время игры. В отличие от аттракторов, "
"неравномерное масштабирование форм столкновения [i]не[/i] поддерживается.\n"
"[b]Примечание:[/b] [member ParticleProcessMaterial.collision_mode] должен "
"быть [constant ParticleProcessMaterial.COLLISION_RIGID] или [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] в материале процесса "
"[GPUParticles3D], чтобы столкновение работало.\n"
"[b]Примечание:[/b] Столкновение частиц влияет только на [GPUParticles3D], а "
"не на [CPUParticles3D]."

msgid "The collision box's size in 3D units."
msgstr "Размер области столкновения в трехмерных единицах."

msgid ""
"A real-time heightmap-shaped 3D particle collision shape affecting "
"[GPUParticles3D] nodes."
msgstr ""
"Трехмерная форма столкновения частиц в реальном времени, имеющая форму карты "
"высот, влияющая на узлы [GPUParticles3D]."

msgid ""
"A real-time heightmap-shaped 3D particle collision shape affecting "
"[GPUParticles3D] nodes.\n"
"Heightmap shapes allow for efficiently representing collisions for convex and "
"concave objects with a single \"floor\" (such as terrain). This is less "
"flexible than [GPUParticlesCollisionSDF3D], but it doesn't require a baking "
"step.\n"
"[GPUParticlesCollisionHeightField3D] can also be regenerated in real-time "
"when it is moved, when the camera moves, or even continuously. This makes "
"[GPUParticlesCollisionHeightField3D] a good choice for weather effects such "
"as rain and snow and games with highly dynamic geometry. However, this class "
"is limited since heightmaps cannot represent overhangs (e.g. indoors or "
"caves).\n"
"[b]Note:[/b] [member ParticleProcessMaterial.collision_mode] must be "
"[code]true[/code] on the [GPUParticles3D]'s process material for collision to "
"work.\n"
"[b]Note:[/b] Particle collision only affects [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Форма столкновения 3D-частиц в реальном времени в форме карты высот, влияющая "
"на узлы [GPUParticles3D].\n"
"Формы карты высот позволяют эффективно представлять столкновения для выпуклых "
"и вогнутых объектов с одним «полом» (например, ландшафтом). Это менее гибко, "
"чем [GPUParticlesCollisionSDF3D], но не требует этапа запекания.\n"
"[GPUParticlesCollisionHeightField3D] также может быть регенерировано в "
"реальном времени при перемещении, при перемещении камеры или даже непрерывно. "
"Это делает [GPUParticlesCollisionHeightField3D] хорошим выбором для погодных "
"эффектов, таких как дождь и снег, и игр с высокодинамичной геометрией. Однако "
"этот класс ограничен, поскольку карты высот не могут отображать выступы "
"(например, в помещениях или пещерах).\n"
"[b]Примечание:[/b] [member ParticleProcessMaterial.collision_mode] должен "
"быть [code]true[/code] для материала процесса [GPUParticles3D], чтобы "
"столкновение работало.\n"
"[b]Примечание:[/b] Столкновение частиц влияет только на [GPUParticles3D], а "
"не на [CPUParticles3D]."

msgid ""
"Returns [code]true[/code] if the specified layer of the [member "
"heightfield_mask] is enabled, given a [param layer_number] between [code]1[/"
"code] and [code]20[/code], inclusive."
msgstr ""
"Возвращает [code]true[/code], если указанный слой [member heightfield_mask] "
"включен, учитывая [param layer_number] между [code]1[/code] и [code]20[/code] "
"включительно."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member heightfield_mask], given a [param layer_number] between [code]1[/"
"code] and [code]20[/code], inclusive."
msgstr ""
"На основе [param value] включает или отключает указанный слой в [member "
"heightfield_mask] с учетом [param layer_number] между [code]1[/code] и "
"[code]20[/code] включительно."

msgid ""
"If [code]true[/code], the [GPUParticlesCollisionHeightField3D] will follow "
"the current camera in global space. The [GPUParticlesCollisionHeightField3D] "
"does not need to be a child of the [Camera3D] node for this to work.\n"
"Following the camera has a performance cost, as it will force the heightmap "
"to update whenever the camera moves. Consider lowering [member resolution] to "
"improve performance if [member follow_camera_enabled] is [code]true[/code]."
msgstr ""
"Если [code]true[/code], [GPUParticlesCollisionHeightField3D] будет следовать "
"за текущей камерой в глобальном пространстве. "
"[GPUParticlesCollisionHeightField3D] не обязательно должен быть дочерним "
"узлом [Camera3D], чтобы это работало.\n"
"Следование за камерой имеет издержки производительности, так как это заставит "
"карту высот обновляться при каждом движении камеры. Рассмотрите возможность "
"снижения [member resolution] для повышения производительности, если [member "
"follow_camera_enabled] имеет значение [code]true[/code]."

msgid ""
"The visual layers to account for when updating the heightmap. Only "
"[MeshInstance3D]s whose [member VisualInstance3D.layers] match with this "
"[member heightfield_mask] will be included in the heightmap collision update. "
"By default, all 20 user-visible layers are taken into account for updating "
"the heightmap collision.\n"
"[b]Note:[/b] Since the [member heightfield_mask] allows for 32 layers to be "
"stored in total, there are an additional 12 layers that are only used "
"internally by the engine and aren't exposed in the editor. Setting [member "
"heightfield_mask] using a script allows you to toggle those reserved layers, "
"which can be useful for editor plugins.\n"
"To adjust [member heightfield_mask] more easily using a script, use [method "
"get_heightfield_mask_value] and [method set_heightfield_mask_value]."
msgstr ""
"Визуальные слои, которые следует учитывать при обновлении карты высот. Только "
"[MeshInstance3D], чьи [member VisualInstance3D.layers] соответствуют этому "
"[member heightfield_mask], будут включены в обновление столкновения карты "
"высот. По умолчанию все 20 видимых пользователю слоев учитываются для "
"обновления столкновения карты высот.\n"
"[b]Примечание:[/b] Поскольку [member heightfield_mask] позволяет хранить в "
"общей сложности 32 слоя, есть еще 12 слоев, которые используются только "
"внутренне движком и не отображаются в редакторе. Установка [member "
"heightfield_mask] с помощью скрипта позволяет переключать эти "
"зарезервированные слои, что может быть полезно для плагинов редактора.\n"
"Чтобы настроить [member heightfield_mask] проще с помощью скрипта, "
"используйте [method get_heightfield_mask_value] и [method "
"set_heightfield_mask_value]."

msgid ""
"Higher resolutions can represent small details more accurately in large "
"scenes, at the cost of lower performance. If [member update_mode] is "
"[constant UPDATE_MODE_ALWAYS], consider using the lowest resolution possible."
msgstr ""
"Более высокие разрешения могут точнее отображать мелкие детали в больших "
"сценах, за счет снижения производительности. Если [member update_mode] — это "
"[constant UPDATE_MODE_ALWAYS], рассмотрите возможность использования самого "
"низкого возможного разрешения."

msgid ""
"The collision heightmap's size in 3D units. To improve heightmap quality, "
"[member size] should be set as small as possible while covering the parts of "
"the scene you need."
msgstr ""
"Размер карты высот столкновения в 3D-единицах. Для улучшения качества карты "
"высот [member size] следует установить как можно меньше, при этом охватывая "
"нужные вам части сцены."

msgid "The update policy to use for the generated heightmap."
msgstr "Политика обновления, используемая для сгенерированной карты высот."

msgid ""
"Generate a 256×256 heightmap. Intended for small-scale scenes, or larger "
"scenes with no distant particles."
msgstr ""
"Сгенерировать карту высот 256×256. Предназначено для сцен небольшого масштаба "
"или более крупных сцен без далеких частиц."

msgid ""
"Generate a 512×512 heightmap. Intended for medium-scale scenes, or larger "
"scenes with no distant particles."
msgstr ""
"Сгенерировать карту высот 512×512. Предназначено для сцен среднего масштаба "
"или более крупных сцен без далеких частиц."

msgid ""
"Generate a 1024×1024 heightmap. Intended for large scenes with distant "
"particles."
msgstr ""
"Сгенерировать карту высот 1024×1024. Предназначено для больших сцен с "
"удаленными частицами."

msgid ""
"Generate a 2048×2048 heightmap. Intended for very large scenes with distant "
"particles."
msgstr ""
"Сгенерировать карту высот 2048×2048. Предназначено для очень больших сцен с "
"удаленными частицами."

msgid ""
"Generate a 4096×4096 heightmap. Intended for huge scenes with distant "
"particles."
msgstr ""
"Сгенерировать карту высот 4096×4096. Предназначено для огромных сцен с "
"удаленными частицами."

msgid ""
"Generate a 8192×8192 heightmap. Intended for gigantic scenes with distant "
"particles."
msgstr ""
"Сгенерировать карту высот 8192×8192. Предназначено для гигантских сцен с "
"удаленными частицами."

msgid "Represents the size of the [enum Resolution] enum."
msgstr "Представляет размер перечисления [enum Resolution]."

msgid ""
"Only update the heightmap when the [GPUParticlesCollisionHeightField3D] node "
"is moved, or when the camera moves if [member follow_camera_enabled] is "
"[code]true[/code]. An update can be forced by slightly moving the "
"[GPUParticlesCollisionHeightField3D] in any direction, or by calling [method "
"RenderingServer.particles_collision_height_field_update]."
msgstr ""
"Обновляйте карту высот только при перемещении узла "
"[GPUParticlesCollisionHeightField3D] или при перемещении камеры, если [member "
"follow_camera_enabled] имеет значение [code]true[/code]. Обновление можно "
"принудительно выполнить, слегка переместив "
"[GPUParticlesCollisionHeightField3D] в любом направлении или вызвав [method "
"RenderingServer.particles_collision_height_field_update]."

msgid ""
"Update the heightmap every frame. This has a significant performance cost. "
"This update should only be used when geometry that particles can collide with "
"changes significantly during gameplay."
msgstr ""
"Обновляйте карту высот каждый кадр. Это имеет значительные затраты "
"производительности. Это обновление следует использовать только тогда, когда "
"геометрия, с которой могут сталкиваться частицы, существенно изменяется во "
"время игры."

msgid ""
"A baked signed distance field 3D particle collision shape affecting "
"[GPUParticles3D] nodes."
msgstr ""
"Запеченная знаковая форма столкновения частиц в трехмерном поле расстояний, "
"влияющая на узлы [GPUParticles3D]."

msgid ""
"A baked signed distance field 3D particle collision shape affecting "
"[GPUParticles3D] nodes.\n"
"Signed distance fields (SDF) allow for efficiently representing approximate "
"collision shapes for convex and concave objects of any shape. This is more "
"flexible than [GPUParticlesCollisionHeightField3D], but it requires a baking "
"step.\n"
"[b]Baking:[/b] The signed distance field texture can be baked by selecting "
"the [GPUParticlesCollisionSDF3D] node in the editor, then clicking [b]Bake "
"SDF[/b] at the top of the 3D viewport. Any [i]visible[/i] [MeshInstance3D]s "
"within the [member size] will be taken into account for baking, regardless of "
"their [member GeometryInstance3D.gi_mode].\n"
"[b]Note:[/b] Baking a [GPUParticlesCollisionSDF3D]'s [member texture] is only "
"possible within the editor, as there is no bake method exposed for use in "
"exported projects. However, it's still possible to load pre-baked "
"[Texture3D]s into its [member texture] property in an exported project.\n"
"[b]Note:[/b] [member ParticleProcessMaterial.collision_mode] must be "
"[constant ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] on the [GPUParticles3D]'s "
"process material for collision to work.\n"
"[b]Note:[/b] Particle collision only affects [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Запеченная форма столкновения частиц со знаком поля расстояний 3D, влияющая "
"на узлы [GPUParticles3D].\n"
"Знаковые поля расстояний (SDF) позволяют эффективно представлять "
"приблизительные формы столкновений для выпуклых и вогнутых объектов любой "
"формы. Это более гибко, чем [GPUParticlesCollisionHeightField3D], но требует "
"этапа запекания.\n"
"[b]Запекание:[/b] Текстуру поля расстояний со знаком можно запечь, выбрав "
"узел [GPUParticlesCollisionSDF3D] в редакторе, а затем нажав [b]Запечь SDF[/"
"b] в верхней части 3D-окна просмотра. Любые [i]видимые[/i] [MeshInstance3D] в "
"пределах [member size] будут учитываться при запекании, независимо от их "
"[member GeometryInstance3D.gi_mode].\n"
"[b]Примечание:[/b] Запекание [member texture] [GPUParticlesCollisionSDF3D] "
"возможно только в редакторе, так как нет метода запекания, доступного для "
"использования в экспортированных проектах. Однако все еще возможно загружать "
"предварительно запеченные [Texture3D] в его свойство [member texture] в "
"экспортированном проекте.\n"
"[b]Примечание:[/b] [member ParticleProcessMaterial.collision_mode] должен "
"быть [constant ParticleProcessMaterial.COLLISION_RIGID] или [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] в материале процесса "
"[GPUParticles3D], чтобы столкновение работало.\n"
"[b]Примечание:[/b] Столкновение частиц влияет только на [GPUParticles3D], а "
"не на [CPUParticles3D]."

msgid ""
"Returns whether or not the specified layer of the [member bake_mask] is "
"enabled, given a [param layer_number] between 1 and 32."
msgstr ""
"Возвращает, включен ли указанный слой [member bake_mask], учитывая [param "
"layer_number] от 1 до 32."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member bake_mask], given a [param layer_number] between 1 and 32."
msgstr ""
"На основе [param value] включает или отключает указанный слой в [member "
"bake_mask], учитывая [param layer_number] от 1 до 32."

msgid ""
"The visual layers to account for when baking the particle collision SDF. Only "
"[MeshInstance3D]s whose [member VisualInstance3D.layers] match with this "
"[member bake_mask] will be included in the generated particle collision SDF. "
"By default, all objects are taken into account for the particle collision SDF "
"baking."
msgstr ""
"Визуальные слои, которые следует учитывать при запекании SDF столкновения "
"частиц. Только [MeshInstance3D], чьи [member VisualInstance3D.layers] "
"соответствуют этому [member bake_mask], будут включены в сгенерированный SDF "
"столкновения частиц. По умолчанию все объекты учитываются при запекании SDF "
"столкновения частиц."

msgid ""
"The bake resolution to use for the signed distance field [member texture]. "
"The texture must be baked again for changes to the [member resolution] "
"property to be effective. Higher resolutions have a greater performance cost "
"and take more time to bake. Higher resolutions also result in larger baked "
"textures, leading to increased VRAM and storage space requirements. To "
"improve performance and reduce bake times, use the lowest resolution possible "
"for the object you're representing the collision of."
msgstr ""
"Разрешение запекания, используемое для поля расстояния со знаком [member "
"texture]. Текстуру необходимо запечь снова, чтобы изменения свойства [member "
"resolution] вступили в силу. Более высокие разрешения имеют большую стоимость "
"производительности и требуют больше времени для запекания. Более высокие "
"разрешения также приводят к более крупным запеченным текстурам, что приводит "
"к увеличению требований к VRAM и пространству хранения. Чтобы улучшить "
"производительность и сократить время запекания, используйте наименьшее "
"возможное разрешение для объекта столкновения которое вы представляете."

msgid ""
"The collision SDF's size in 3D units. To improve SDF quality, the [member "
"size] should be set as small as possible while covering the parts of the "
"scene you need."
msgstr ""
"Размер SDF столкновения в 3D-единицах. Для улучшения качества SDF [member "
"size] следует установить как можно меньше, при этом охватывая нужные вам "
"части сцены."

msgid "The 3D texture representing the signed distance field."
msgstr "Трехмерная текстура, представляющая поле расстояний со знаком."

msgid ""
"The collision shape's thickness. Unlike other particle colliders, "
"[GPUParticlesCollisionSDF3D] is actually hollow on the inside. [member "
"thickness] can be increased to prevent particles from tunneling through the "
"collision shape at high speeds, or when the [GPUParticlesCollisionSDF3D] is "
"moved."
msgstr ""
"Толщина формы столкновения. В отличие от других коллайдеров частиц, "
"[GPUParticlesCollisionSDF3D] на самом деле полый внутри. [member thickness] "
"можно увеличить, чтобы предотвратить туннелирование частиц через форму "
"столкновения на высоких скоростях или при перемещении "
"[GPUParticlesCollisionSDF3D]."

msgid ""
"Bake a 16×16×16 signed distance field. This is the fastest option, but also "
"the least precise."
msgstr ""
"Запекаем поле расстояний со знаком 16×16×16. Это самый быстрый вариант, но и "
"наименее точный."

msgid "Bake a 32×32×32 signed distance field."
msgstr "Запекаем поле расстояний со знаком 32×32×32."

msgid "Bake a 64×64×64 signed distance field."
msgstr "Запекаем знаковое поле расстояний размером 64×64×64."

msgid "Bake a 128×128×128 signed distance field."
msgstr "Запекаем поле расстояний со знаком 128×128×128."

msgid "Bake a 256×256×256 signed distance field."
msgstr "Запекаем знаковое поле расстояний размером 256×256×256."

msgid ""
"Bake a 512×512×512 signed distance field. This is the slowest option, but "
"also the most precise."
msgstr ""
"Выпекаем поле расстояний со знаком 512×512×512. Это самый медленный вариант, "
"но и самый точный."

msgid ""
"A sphere-shaped 3D particle collision shape affecting [GPUParticles3D] nodes."
msgstr ""
"Сферическая трехмерная форма столкновения частиц, влияющая на узлы "
"[GPUParticles3D]."

msgid ""
"A sphere-shaped 3D particle collision shape affecting [GPUParticles3D] "
"nodes.\n"
"Particle collision shapes work in real-time and can be moved, rotated and "
"scaled during gameplay. Unlike attractors, non-uniform scaling of collision "
"shapes is [i]not[/i] supported.\n"
"[b]Note:[/b] [member ParticleProcessMaterial.collision_mode] must be "
"[constant ParticleProcessMaterial.COLLISION_RIGID] or [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] on the [GPUParticles3D]'s "
"process material for collision to work.\n"
"[b]Note:[/b] Particle collision only affects [GPUParticles3D], not "
"[CPUParticles3D]."
msgstr ""
"Сферическая 3D-форма столкновения частиц, влияющая на узлы [GPUParticles3D].\n"
"Формы столкновения частиц работают в реальном времени и могут перемещаться, "
"вращаться и масштабироваться во время игры. В отличие от аттракторов, "
"неравномерное масштабирование форм столкновения [i]не[/i] поддерживается.\n"
"[b]Примечание:[/b] [member ParticleProcessMaterial.collision_mode] должен "
"быть [constant ParticleProcessMaterial.COLLISION_RIGID] или [constant "
"ParticleProcessMaterial.COLLISION_HIDE_ON_CONTACT] в материале процесса "
"[GPUParticles3D], чтобы столкновение работало.\n"
"[b]Примечание:[/b] Столкновение частиц влияет только на [GPUParticles3D], а "
"не на [CPUParticles3D]."

msgid "The collision sphere's radius in 3D units."
msgstr "Радиус сферы столкновения в трехмерных единицах."

msgid "A color transition."
msgstr "Цветовой переход."

msgid ""
"This resource describes a color transition by defining a set of colored "
"points and how to interpolate between them.\n"
"See also [Curve] which supports more complex easing methods, but does not "
"support colors."
msgstr ""
"Этот ресурс описывает цветовой переход, определяя набор цветных точек и как "
"интерполировать между ними.\n"
"См. также [Curve], который поддерживает более сложные методы смягчения, но не "
"поддерживает цвета."

msgid "Adds the specified color to the gradient, with the specified offset."
msgstr "Добавляет указанный цвет к градиенту с указанным смещением."

msgid "Returns the color of the gradient color at index [param point]."
msgstr "Возвращает цвет градиента в точке с индексом [param point]."

msgid "Returns the offset of the gradient color at index [param point]."
msgstr "Возвращает смещение цвета градиента в индексе [param point]."

msgid "Returns the number of colors in the gradient."
msgstr "Возвращает количество цветов в градиенте."

msgid "Removes the color at index [param point]."
msgstr "Удаляет цвет в индексе [param point]."

msgid ""
"Reverses/mirrors the gradient.\n"
"[b]Note:[/b] This method mirrors all points around the middle of the "
"gradient, which may produce unexpected results when [member "
"interpolation_mode] is set to [constant GRADIENT_INTERPOLATE_CONSTANT]."
msgstr ""
"Переворачивает/зеркально отображает градиент.\n"
"[b]Примечание:[/b] Этот метод зеркально отображает все точки вокруг середины "
"градиента, что может привести к неожиданным результатам, если [member "
"interpolation_mode] установлен на [constant GRADIENT_INTERPOLATE_CONSTANT]."

msgid ""
"Returns the interpolated color specified by [param offset]. [param offset] "
"should be between [code]0.0[/code] and [code]1.0[/code] (inclusive). Using a "
"value lower than [code]0.0[/code] will return the same color as [code]0.0[/"
"code], and using a value higher than [code]1.0[/code] will return the same "
"color as [code]1.0[/code]. If your input value is not within this range, "
"consider using [method @GlobalScope.remap] on the input value with output "
"values set to [code]0.0[/code] and [code]1.0[/code]."
msgstr ""
"Возвращает интерполированный цвет, заданный параметром [param offset]. "
"Значение [param offset] должно находиться в диапазоне от [code]0.0[/code] до "
"[code]1.0[/code] (включительно). Использование значения меньше [code]0.0[/"
"code] вернёт тот же цвет, что и [code]0.0[/code], а использование значения "
"больше [code]1.0[/code] вернёт тот же цвет, что и [code]1.0[/code]. Если "
"входное значение выходит за пределы этого диапазона, рассмотрите возможность "
"использования [method @GlobalScope.remap] для входного значения с выходными "
"значениями [code]0.0[/code] и [code]1.0[/code]."

msgid "Sets the color of the gradient color at index [param point]."
msgstr "Устанавливает цвет градиента в индексе [param point]."

msgid "Sets the offset for the gradient color at index [param point]."
msgstr "Устанавливает смещение для цвета градиента в индексе [param point]."

msgid ""
"Gradient's colors as a [PackedColorArray].\n"
"[b]Note:[/b] Setting this property updates all colors at once. To update any "
"color individually use [method set_color]."
msgstr ""
"Цвета градиента как [PackedColorArray].\n"
"[b]Примечание:[/b] Установка этого свойства обновляет все цвета одновременно. "
"Чтобы обновить любой цвет по отдельности, используйте [method set_color]."

msgid ""
"The color space used to interpolate between points of the gradient. It does "
"not affect the returned colors, which will always be in sRGB space.\n"
"[b]Note:[/b] This setting has no effect when [member interpolation_mode] is "
"set to [constant GRADIENT_INTERPOLATE_CONSTANT]."
msgstr ""
"Цветовое пространство, используемое для интерполяции между точками градиента. "
"Оно не влияет на возвращаемые цвета, которые всегда будут в пространстве "
"sRGB.\n"
"[b]Примечание:[/b] Эта настройка не действует, если [member "
"interpolation_mode] установлен на [constant GRADIENT_INTERPOLATE_CONSTANT]."

msgid "The algorithm used to interpolate between points of the gradient."
msgstr "Алгоритм, используемый для интерполяции между точками градиента."

msgid ""
"Gradient's offsets as a [PackedFloat32Array].\n"
"[b]Note:[/b] Setting this property updates all offsets at once. To update any "
"offset individually use [method set_offset]."
msgstr ""
"Смещения градиента как [PackedFloat32Array].\n"
"[b]Примечание:[/b] Установка этого свойства обновляет все смещения "
"одновременно. Чтобы обновить любое смещение по отдельности, используйте "
"[method set_offset]."

msgid ""
"Constant interpolation, color changes abruptly at each point and stays "
"uniform between. This might cause visible aliasing when used for a gradient "
"texture in some cases."
msgstr ""
"Константная интерполяция, цвет резко меняется в каждой точке и остается "
"однородным между ними. Это может привести к видимой алиасинге при "
"использовании для градиентной текстуры в некоторых случаях."

msgid "Cubic interpolation."
msgstr "Кубическая интерполяция."

msgid "sRGB color space."
msgstr "Цветовое пространство sRGB."

msgid "Linear sRGB color space."
msgstr "Линейное цветовое пространство sRGB."

msgid ""
"[url=https://bottosson.github.io/posts/oklab/]Oklab[/url] color space. This "
"color space provides a smooth and uniform-looking transition between colors."
msgstr ""
"[url=https://bottosson.github.io/posts/oklab/]Цветовое пространство Oklab[/"
"url]. Это цветовое пространство обеспечивает плавный и однородно выглядящий "
"переход между цветами."

msgid "A 1D texture that uses colors obtained from a [Gradient]."
msgstr "Одномерная текстура, использующая цвета, полученные из [Gradient]."

msgid ""
"A 1D texture that obtains colors from a [Gradient] to fill the texture data. "
"The texture is filled by sampling the gradient for each pixel. Therefore, the "
"texture does not necessarily represent an exact copy of the gradient, as it "
"may miss some colors if there are not enough pixels. See also "
"[GradientTexture2D], [CurveTexture] and [CurveXYZTexture]."
msgstr ""
"1D-текстура, которая получает цвета из [Gradient] для заполнения данных "
"текстуры. Текстура заполняется путем выборки градиента для каждого пикселя. "
"Поэтому текстура не обязательно представляет собой точную копию градиента, "
"так как она может пропускать некоторые цвета, если пикселей недостаточно. См. "
"также [GradientTexture2D], [CurveTexture] и [CurveXYZTexture]."

msgid "The [Gradient] used to fill the texture."
msgstr "[Gradient], используемый для заливки текстуры."

msgid ""
"If [code]true[/code], the generated texture will support high dynamic range "
"([constant Image.FORMAT_RGBAF] format). This allows for glow effects to work "
"if [member Environment.glow_enabled] is [code]true[/code]. If [code]false[/"
"code], the generated texture will use low dynamic range; overbright colors "
"will be clamped ([constant Image.FORMAT_RGBA8] format)."
msgstr ""
"Если [code]true[/code], сгенерированная текстура будет поддерживать высокий "
"динамический диапазон (формат [constant Image.FORMAT_RGBAF]). Это позволяет "
"работать эффектам свечения, если [member Environment.glow_enabled] имеет "
"значение [code]true[/code]. Если [code]false[/code], сгенерированная текстура "
"будет использовать низкий динамический диапазон; слишком яркие цвета будут "
"ограничены (формат [constant Image.FORMAT_RGBA8])."

msgid "The number of color samples that will be obtained from the [Gradient]."
msgstr "Количество образцов цвета, которые будут получены из [Gradient]."

msgid ""
"A 2D texture that creates a pattern with colors obtained from a [Gradient]."
msgstr "2D-текстура, создающая узор с цветами, полученными из [Gradient]."

msgid ""
"A 2D texture that obtains colors from a [Gradient] to fill the texture data. "
"This texture is able to transform a color transition into different patterns "
"such as a linear or a radial gradient. The texture is filled by interpolating "
"colors starting from [member fill_from] to [member fill_to] offsets by "
"default, but the gradient fill can be repeated to cover the entire texture.\n"
"The gradient is sampled individually for each pixel so it does not "
"necessarily represent an exact copy of the gradient (see [member width] and "
"[member height]). See also [GradientTexture1D], [CurveTexture] and "
"[CurveXYZTexture]."
msgstr ""
"2D-текстура, которая получает цвета из [Gradient] для заполнения данных "
"текстуры. Эта текстура способна преобразовывать цветовой переход в различные "
"узоры, такие как линейный или радиальный градиент. Текстура заполняется путем "
"интерполяции цветов, начиная со смещений [member fill_from] до [member "
"fill_to] по умолчанию, но градиентную заливку можно повторять, чтобы покрыть "
"всю текстуру. \n"
"Градиент выбирается индивидуально для каждого пикселя, поэтому он не "
"обязательно представляет собой точную копию градиента (см. [member width] и "
"[member height]). См. также [GradientTexture1D], [CurveTexture] и "
"[CurveXYZTexture]."

msgid "The gradient's fill type."
msgstr "Тип заливки градиента."

msgid "The initial offset used to fill the texture specified in UV coordinates."
msgstr ""
"Начальное смещение, используемое для заполнения текстуры, указанной в UV-"
"координатах."

msgid "The final offset used to fill the texture specified in UV coordinates."
msgstr ""
"Конечное смещение, используемое для заполнения текстуры, указанной в UV-"
"координатах."

msgid ""
"The number of vertical color samples that will be obtained from the "
"[Gradient], which also represents the texture's height."
msgstr ""
"Количество вертикальных цветовых образцов, которые будут получены из "
"[Gradient], которое также представляет высоту текстуры."

msgid "The gradient's repeat type."
msgstr "Тип повторения градиента."

msgid ""
"The number of horizontal color samples that will be obtained from the "
"[Gradient], which also represents the texture's width."
msgstr ""
"Количество горизонтальных цветовых образцов, которые будут получены из "
"[Gradient], которое также представляет ширину текстуры."

msgid "The colors are linearly interpolated in a straight line."
msgstr "Цвета линейно интерполируются по прямой линии."

msgid "The colors are linearly interpolated in a circular pattern."
msgstr "Цвета линейно интерполируются по круговому шаблону."

msgid "The colors are linearly interpolated in a square pattern."
msgstr "Цвета линейно интерполируются в квадратный узор."

msgid ""
"The gradient fill is restricted to the range defined by [member fill_from] to "
"[member fill_to] offsets."
msgstr ""
"Градиентная заливка ограничена диапазоном, определяемым смещениями [member "
"fill_from] – [member fill_to]."

msgid ""
"The texture is filled starting from [member fill_from] to [member fill_to] "
"offsets, repeating the same pattern in both directions."
msgstr ""
"Текстура заполняется, начиная со смещений [member fill_from] до [member "
"fill_to], повторяя один и тот же узор в обоих направлениях."

msgid ""
"The texture is filled starting from [member fill_from] to [member fill_to] "
"offsets, mirroring the pattern in both directions."
msgstr ""
"Текстура заполняется, начиная со смещений [member fill_from] до [member "
"fill_to], зеркально отображая узор в обоих направлениях."

msgid "An editor for graph-like structures, using [GraphNode]s."
msgstr "Редактор графоподобных структур, использующий [GraphNode]."

msgid ""
"[GraphEdit] provides tools for creation, manipulation, and display of various "
"graphs. Its main purpose in the engine is to power the visual programming "
"systems, such as visual shaders, but it is also available for use in user "
"projects.\n"
"[GraphEdit] by itself is only an empty container, representing an infinite "
"grid where [GraphNode]s can be placed. Each [GraphNode] represents a node in "
"the graph, a single unit of data in the connected scheme. [GraphEdit], in "
"turn, helps to control various interactions with nodes and between nodes. "
"When the user attempts to connect, disconnect, or delete a [GraphNode], a "
"signal is emitted in the [GraphEdit], but no action is taken by default. It "
"is the responsibility of the programmer utilizing this control to implement "
"the necessary logic to determine how each request should be handled.\n"
"[b]Performance:[/b] It is greatly advised to enable low-processor usage mode "
"(see [member OS.low_processor_usage_mode]) when using GraphEdits.\n"
"[b]Note:[/b] Keep in mind that [method Node.get_children] will also return "
"the connection layer node named [code]_connection_layer[/code] due to "
"technical limitations. This behavior may change in future releases."
msgstr ""
"[GraphEdit] предоставляет инструменты для создания, обработки и отображения "
"различных графиков. Его основная цель в движке — питание систем визуального "
"программирования, таких как визуальные шейдеры, но он также доступен для "
"использования в пользовательских проектах.\n"
"[GraphEdit] сам по себе является лишь пустым контейнером, представляющим "
"бесконечную сетку, в которой могут быть размещены [GraphNode]. Каждый "
"[GraphNode] представляет собой узел в графике, отдельную единицу данных в "
"связанной схеме. [GraphEdit], в свою очередь, помогает контролировать "
"различные взаимодействия с узлами и между узлами. Когда пользователь пытается "
"подключить, отключить или удалить [GraphNode], в [GraphEdit] выдается сигнал, "
"но по умолчанию никаких действий не выполняется. Программист, использующий "
"этот элемент управления, несет ответственность за реализацию необходимой "
"логики для определения того, как должен обрабатываться каждый запрос.\n"
"[b]Производительность:[/b] Настоятельно рекомендуется включить режим низкого "
"использования процессора (см. [member OS.low_processor_usage_mode]) при "
"использовании GraphEdits.\n"
"[b]Примечание:[/b] Имейте в виду, что [method Node.get_children] также вернет "
"узел уровня соединения с именем [code]_connection_layer[/code] из-за "
"технических ограничений. Это поведение может измениться в будущих выпусках."

msgid ""
"Virtual method which can be overridden to customize how connections are drawn."
msgstr ""
"Виртуальный метод, который можно переопределить, чтобы настроить способ "
"рисования соединений."

msgid ""
"Returns whether the [param mouse_position] is in the input hot zone.\n"
"By default, a hot zone is a [Rect2] positioned such that its center is at "
"[param in_node].[method GraphNode.get_input_port_position]([param in_port]) "
"(For output's case, call [method GraphNode.get_output_port_position] "
"instead). The hot zone's width is twice the Theme Property "
"[code]port_grab_distance_horizontal[/code], and its height is twice the "
"[code]port_grab_distance_vertical[/code].\n"
"Below is a sample code to help get started:\n"
"[codeblock]\n"
"func _is_in_input_hotzone(in_node, in_port, mouse_position):\n"
"\tvar port_size = "
"Vector2(get_theme_constant(\"port_grab_distance_horizontal\"), "
"get_theme_constant(\"port_grab_distance_vertical\"))\n"
"\tvar port_pos = in_node.get_position() + "
"in_node.get_input_port_position(in_port) - port_size / 2\n"
"\tvar rect = Rect2(port_pos, port_size)\n"
"\n"
"\treturn rect.has_point(mouse_position)\n"
"[/codeblock]"
msgstr ""
"Возвращает, находится ли [param mouse_position] в зоне активного входа.\n"
"По умолчанию зона активного входа — это [Rect2], расположенный таким образом, "
"что его центр находится в [param in_node].[method "
"GraphNode.get_input_port_position]([param in_port]) (В случае выхода вместо "
"этого вызовите [method GraphNode.get_output_port_position]). Ширина зоны "
"активного входа в два раза больше свойства темы "
"[code]port_grab_distance_horizontal[/code], а ее высота в два раза больше "
"[code]port_grab_distance_vertical[/code].\n"
"Ниже приведен пример кода, который поможет начать работу:\n"
"[codeblock]\n"
"func _is_in_input_hotzone(in_node, in_port, mouse_position):\n"
"\tvar port_size = "
"Vector2(get_theme_constant(\"port_grab_distance_horizontal\"), "
"get_theme_constant(\"port_grab_distance_vertical\"))\n"
"\tvar port_pos = in_node.get_position() + "
"in_node.get_input_port_position(in_port) - port_size / 2\n"
"\tvar rect = Rect2(port_pos, port_size)\n"
"\n"
"\treturn rect.has_point(mouse_position)\n"
"[/codeblock]"

msgid ""
"Returns whether the [param mouse_position] is in the output hot zone. For "
"more information on hot zones, see [method _is_in_input_hotzone].\n"
"Below is a sample code to help get started:\n"
"[codeblock]\n"
"func _is_in_output_hotzone(in_node, in_port, mouse_position):\n"
"\tvar port_size = "
"Vector2(get_theme_constant(\"port_grab_distance_horizontal\"), "
"get_theme_constant(\"port_grab_distance_vertical\"))\n"
"\tvar port_pos = in_node.get_position() + "
"in_node.get_output_port_position(in_port) - port_size / 2\n"
"\tvar rect = Rect2(port_pos, port_size)\n"
"\n"
"\treturn rect.has_point(mouse_position)\n"
"[/codeblock]"
msgstr ""
"Возвращает, находится ли [param mouse_position] в выходной горячей зоне. Для "
"получения дополнительной информации о горячих зонах см. [method "
"_is_in_input_hotzone].\n"
"Ниже приведен пример кода, который поможет начать работу:\n"
"[codeblock]\n"
"func _is_in_output_hotzone(in_node, in_port, mouse_position):\n"
"\tvar port_size = "
"Vector2(get_theme_constant(\"port_grab_distance_horizontal\"), "
"get_theme_constant(\"port_grab_distance_vertical\"))\n"
"\tvar port_pos = in_node.get_position() + "
"in_node.get_output_port_position(in_port) - port_size / 2\n"
"\tvar rect = Rect2(port_pos, port_size)\n"
"\n"
"\treturn rect.has_point(mouse_position)\n"
"[/codeblock]"

msgid ""
"This virtual method can be used to insert additional error detection while "
"the user is dragging a connection over a valid port.\n"
"Return [code]true[/code] if the connection is indeed valid or return "
"[code]false[/code] if the connection is impossible. If the connection is "
"impossible, no snapping to the port and thus no connection request to that "
"port will happen.\n"
"In this example a connection to same node is suppressed:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _is_node_hover_valid(from, from_port, to, to_port):\n"
"\treturn from != to\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _IsNodeHoverValid(StringName fromNode, int fromPort, "
"StringName toNode, int toPort)\n"
"{\n"
"\treturn fromNode != toNode;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Этот виртуальный метод можно использовать для вставки дополнительного "
"обнаружения ошибок, пока пользователь перетаскивает соединение через "
"допустимый порт.\n"
"Верните [code]true[/code], если соединение действительно допустимо, или "
"верните [code]false[/code], если соединение невозможно. Если соединение "
"невозможно, то привязка к порту и, следовательно, запрос на соединение к "
"этому порту не произойдет.\n"
"В этом примере соединение с тем же узлом подавляется:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _is_node_hover_valid(from, from_port, to, to_port):\n"
"\treturn from != to\n"
"[/gdscript]\n"
"[csharp]\n"
"public override bool _IsNodeHoverValid(StringName fromNode, int fromPort, "
"StringName toNode, int toPort)\n"
"{\n"
"\treturn fromNode != toNode;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Allows the connection between two different port types. The port type is "
"defined individually for the left and the right port of each slot with the "
"[method GraphNode.set_slot] method.\n"
"See also [method is_valid_connection_type] and [method "
"remove_valid_connection_type]."
msgstr ""
"Позволяет устанавливать соединение между двумя разными типами портов. Тип "
"порта определяется индивидуально для левого и правого порта каждого слота с "
"помощью метода [method GraphNode.set_slot].\n"
"См. также [method is_valid_connection_type] и [method "
"remove_valid_connection_type]."

msgid ""
"Allows to disconnect nodes when dragging from the left port of the "
"[GraphNode]'s slot if it has the specified type. See also [method "
"remove_valid_left_disconnect_type]."
msgstr ""
"Позволяет отключать узлы при перетаскивании из левого порта слота "
"[GraphNode], если он имеет указанный тип. См. также [method "
"remove_valid_left_disconnect_type]."

msgid ""
"Allows to disconnect nodes when dragging from the right port of the "
"[GraphNode]'s slot if it has the specified type. See also [method "
"remove_valid_right_disconnect_type]."
msgstr ""
"Позволяет отключать узлы при перетаскивании из правого порта слота "
"[GraphNode], если он имеет указанный тип. См. также [method "
"remove_valid_right_disconnect_type]."

msgid ""
"Rearranges selected nodes in a layout with minimum crossings between "
"connections and uniform horizontal and vertical gap between nodes."
msgstr ""
"Переупорядочивает выбранные узлы в макете, с минимальным количеством "
"пересечений между соединениями и равномерным горизонтальным и вертикальным "
"зазором между узлами."

msgid ""
"Attaches the [param element] [GraphElement] to the [param frame] [GraphFrame]."
msgstr ""
"Прикрепляет [param element] [GraphElement] к [param frame] [GraphFrame]."

msgid "Removes all connections between nodes."
msgstr "Удаляет все соединения между узлами."

msgid ""
"Create a connection between the [param from_port] of the [param from_node] "
"[GraphNode] and the [param to_port] of the [param to_node] [GraphNode]. If "
"the connection already exists, no connection is created.\n"
"Connections with [param keep_alive] set to [code]false[/code] may be deleted "
"automatically if invalid during a redraw."
msgstr ""
"Создайте соединение между [param from_port] [param from_node] [GraphNode] и "
"[param to_port] [param to_node] [GraphNode]. Если соединение уже существует, "
"соединение не создается.\n"
"Соединения с [param keep_alive], установленным на [code]false[/code], могут "
"быть удалены автоматически, если они недействительны во время перерисовки."

msgid ""
"Detaches the [param element] [GraphElement] from the [GraphFrame] it is "
"currently attached to."
msgstr ""
"Отсоединяет [param element] [GraphElement] от [GraphFrame], к которому он в "
"данный момент прикреплен."

msgid ""
"Removes the connection between the [param from_port] of the [param from_node] "
"[GraphNode] and the [param to_port] of the [param to_node] [GraphNode]. If "
"the connection does not exist, no connection is removed."
msgstr ""
"Удаляет связь между [param from_port] [param from_node] [GraphNode] и [param "
"to_port] [param to_node] [GraphNode]. Если связь не существует, то связь не "
"удаляется."

msgid ""
"Ends the creation of the current connection. In other words, if you are "
"dragging a connection you can use this method to abort the process and remove "
"the line that followed your cursor.\n"
"This is best used together with [signal connection_drag_started] and [signal "
"connection_drag_ended] to add custom behavior like node addition through "
"shortcuts.\n"
"[b]Note:[/b] This method suppresses any other connection request signals "
"apart from [signal connection_drag_ended]."
msgstr ""
"Завершает создание текущего соединения. Другими словами, если вы "
"перетаскиваете соединение, вы можете использовать этот метод, чтобы прервать "
"процесс и удалить линию, которая следовала за вашим курсором.\n"
"Лучше всего использовать его вместе с [signal connection_drag_started] и "
"[signal connection_drag_ended] для добавления пользовательского поведения, "
"например добавления узла с помощью сочетаний клавиш.\n"
"[b]Примечание:[/b] Этот метод подавляет любые другие сигналы запроса на "
"соединение, кроме [signal connection_drag_ended]."

msgid ""
"Returns an array of node names that are attached to the [GraphFrame] with the "
"given name."
msgstr ""
"Возвращает массив имен узлов, прикрепленных к [GraphFrame] с заданным именем."

msgid ""
"Returns the closest connection to the given point in screen space. If no "
"connection is found within [param max_distance] pixels, an empty [Dictionary] "
"is returned.\n"
"A connection is represented as a [Dictionary] in the form of:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]\n"
"For example, getting a connection at a given mouse position can be achieved "
"like this:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var connection = get_closest_connection_at_point(mouse_event.get_position())\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Возвращает ближайшее соединение в заданной точке в пространстве экрана. Если "
"соединение не найдено в пределах [param max_distance] пикселей, возвращается "
"пустой [Dictionary].\n"
"Соединение представляется как [Dictionary] в виде:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]\n"
"Например, получение соединения в заданной позиции мыши может быть достигнуто "
"следующим образом:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var connection = get_closest_connection_at_point(mouse_event.get_position())\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Returns the number of connections from [param from_port] of [param from_node]."
msgstr ""
"Возвращает количество соединений из [param from_port] [param from_node]."

msgid ""
"Returns the points which would make up a connection between [param from_node] "
"and [param to_node]."
msgstr ""
"Возвращает точки, которые составят связь между [param from_node] и [param "
"to_node]."

msgid ""
"Returns an [Array] containing a list of all connections for [param node].\n"
"A connection is represented as a [Dictionary] in the form of:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]\n"
"[b]Example:[/b] Get all connections on a specific port:\n"
"[codeblock]\n"
"func get_connection_list_from_port(node, port):\n"
"\tvar connections = get_connection_list_from_node(node)\n"
"\tvar result = []\n"
"\tfor connection in connections:\n"
"\t\tvar dict = {}\n"
"\t\tif connection[\"from_node\"] == node and connection[\"from_port\"] == "
"port:\n"
"\t\t\tdict[\"node\"] = connection[\"to_node\"]\n"
"\t\t\tdict[\"port\"] = connection[\"to_port\"]\n"
"\t\t\tdict[\"type\"] = \"left\"\n"
"\t\t\tresult.push_back(dict)\n"
"\t\telif connection[\"to_node\"] == node and connection[\"to_port\"] == "
"port:\n"
"\t\t\tdict[\"node\"] = connection[\"from_node\"]\n"
"\t\t\tdict[\"port\"] = connection[\"from_port\"]\n"
"\t\t\tdict[\"type\"] = \"right\"\n"
"\t\t\tresult.push_back(dict)\n"
"\treturn result\n"
"[/codeblock]"
msgstr ""
"Возвращает [Array], содержащий список всех соединений для [param node].\n"
"Соединение представлено как [Dictionary] в форме:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]\n"
"[b]Пример:[/b] Получить все соединения на определенном порту:\n"
"[codeblock]\n"
"func get_connection_list_from_port(node, port):\n"
"\tvar connections = get_connection_list_from_node(node)\n"
"\tvar result = []\n"
"\tfor connection in connections:\n"
"\t\tvar dict = {}\n"
"\t\tif connection[\"from_node\"] == node and connection[\"from_port\"] == "
"port:\n"
"\t\t\tdict[\"node\"] = connection[\"to_node\"]\n"
"\t\t\tdict[\"port\"] = connection[\"to_port\"]\n"
"\t\t\tdict[\"type\"] = \"левый\"\n"
"\t\t\tresult.push_back(dict)\n"
"\t\telif connection[\"to_node\"] == node and connection[\"to_port\"] == "
"port:\n"
"\t\t\tdict[\"node\"] = connection[\"from_node\"]\n"
"\t\t\tdict[\"port\"] = connection[\"from_port\"]\n"
"\t\t\tdict[\"type\"] = \"правый\"\n"
"\t\t\tresult.push_back(dict)\n"
"\treturn result\n"
"[/codeblock]"

msgid ""
"Returns an [Array] containing the list of connections that intersect with the "
"given [Rect2].\n"
"A connection is represented as a [Dictionary] in the form of:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]"
msgstr ""
"Возвращает [Array], содержащий список соединений, которые пересекаются с "
"заданным [Rect2].\n"
"Соединение представлено как [Dictionary] в форме:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]"

msgid ""
"Returns the [GraphFrame] that contains the [GraphElement] with the given name."
msgstr "Возвращает [GraphFrame], содержащий [GraphElement] с указанным именем."

msgid ""
"Gets the [HBoxContainer] that contains the zooming and grid snap controls in "
"the top left of the graph. You can use this method to reposition the toolbar "
"or to add your own custom controls to it.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Получает [HBoxContainer], содержащий элементы управления масштабированием и "
"привязкой к сетке в левом верхнем углу графика. Вы можете использовать этот "
"метод для изменения положения панели инструментов или добавления к ней "
"собственных элементов управления.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member CanvasItem.visible]."

msgid ""
"Returns [code]true[/code] if the [param from_port] of the [param from_node] "
"[GraphNode] is connected to the [param to_port] of the [param to_node] "
"[GraphNode]."
msgstr ""
"Возвращает [code]true[/code], если [param from_port] узла [param from_node] "
"[GraphNode] подключен к [param to_port] узла [param to_node] [GraphNode]."

msgid ""
"Returns whether it's possible to make a connection between two different port "
"types. The port type is defined individually for the left and the right port "
"of each slot with the [method GraphNode.set_slot] method.\n"
"See also [method add_valid_connection_type] and [method "
"remove_valid_connection_type]."
msgstr ""
"Возвращает, возможно ли установить соединение между двумя разными типами "
"портов. Тип порта определяется индивидуально для левого и правого порта "
"каждого слота с помощью метода [method GraphNode.set_slot].\n"
"См. также [method add_valid_connection_type] и [method "
"remove_valid_connection_type]."

msgid ""
"Disallows the connection between two different port types previously allowed "
"by [method add_valid_connection_type]. The port type is defined individually "
"for the left and the right port of each slot with the [method "
"GraphNode.set_slot] method.\n"
"See also [method is_valid_connection_type]."
msgstr ""
"Запрещает соединение между двумя различными типами портов, ранее разрешенными "
"[method add_valid_connection_type]. Тип порта определяется индивидуально для "
"левого и правого порта каждого слота с помощью метода [method "
"GraphNode.set_slot].\n"
"См. также [method is_valid_connection_type]."

msgid ""
"Disallows to disconnect nodes when dragging from the left port of the "
"[GraphNode]'s slot if it has the specified type. Use this to disable "
"disconnection previously allowed with [method add_valid_left_disconnect_type]."
msgstr ""
"Запрещает отключать узлы при перетаскивании из левого порта слота "
"[GraphNode], если он имеет указанный тип. Используйте это, чтобы отключить "
"отключение, ранее разрешенное с помощью [method "
"add_valid_left_disconnect_type]."

msgid ""
"Disallows to disconnect nodes when dragging from the right port of the "
"[GraphNode]'s slot if it has the specified type. Use this to disable "
"disconnection previously allowed with [method "
"add_valid_right_disconnect_type]."
msgstr ""
"Запрещает отключать узлы при перетаскивании из правого порта слота "
"[GraphNode], если он имеет указанный тип. Используйте это, чтобы отключить "
"отключение, ранее разрешенное с помощью [method "
"add_valid_right_disconnect_type]."

msgid ""
"Sets the coloration of the connection between [param from_node]'s [param "
"from_port] and [param to_node]'s [param to_port] with the color provided in "
"the [theme_item activity] theme property. The color is linearly interpolated "
"between the connection color and the activity color using [param amount] as "
"weight."
msgstr ""
"Устанавливает окраску соединения между [param from_node] [param from_port] и "
"[param to_node] [param to_port] с цветом, предоставленным в свойстве темы "
"[theme_item activity]. Цвет линейно интерполируется между цветом соединения и "
"цветом активности с использованием [param amount] в качестве веса."

msgid "Sets the specified [param node] as the one selected."
msgstr "Устанавливает указанный [param node] как выбранный."

msgid "If [code]true[/code], the lines between nodes will use antialiasing."
msgstr ""
"Если [code]true[/code], линии между узлами будут использовать сглаживание."

msgid ""
"The curvature of the lines between the nodes. 0 results in straight lines."
msgstr "Кривизна линий между узлами. 0 приводит к прямым линиям."

msgid "The thickness of the lines between the nodes."
msgstr "Толщина линий между узлами."

msgid ""
"The connections between [GraphNode]s.\n"
"A connection is represented as a [Dictionary] in the form of:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]\n"
"Connections with [code]keep_alive[/code] set to [code]false[/code] may be "
"deleted automatically if invalid during a redraw."
msgstr ""
"Связи между [GraphNode].\n"
"Связь представлена как [Dictionary] в форме:\n"
"[codeblock]\n"
"{\n"
"\tfrom_node: StringName,\n"
"\tfrom_port: int,\n"
"\tto_node: StringName,\n"
"\tto_port: int,\n"
"\tkeep_alive: bool\n"
"}\n"
"[/codeblock]\n"
"Связи с [code]keep_alive[/code], установленным на [code]false[/code], могут "
"быть удалены автоматически, если они недействительны во время перерисовки."

msgid "The pattern used for drawing the grid."
msgstr "Узор, используемый для рисования сетки."

msgid "If [code]true[/code], the minimap is visible."
msgstr "Если [code]true[/code], мини-карта видна."

msgid "The opacity of the minimap rectangle."
msgstr "Непрозрачность прямоугольника миникарты."

msgid ""
"The size of the minimap rectangle. The map itself is based on the size of the "
"grid area and is scaled to fit this rectangle."
msgstr ""
"Размер прямоугольника миникарты. Сама карта основана на размере области сетки "
"и масштабируется, чтобы вписаться в этот прямоугольник."

msgid "Defines the control scheme for panning with mouse wheel."
msgstr "Определяет схему управления панорамированием с помощью колесика мыши."

msgid ""
"If [code]true[/code], enables disconnection of existing connections in the "
"GraphEdit by dragging the right end."
msgstr ""
"Если [code]true[/code], позволяет отключать существующие соединения в "
"GraphEdit путем перетаскивания правого конца."

msgid "The scroll offset."
msgstr "Смещение прокрутки."

msgid ""
"If [code]true[/code], the button to automatically arrange graph nodes is "
"visible."
msgstr ""
"Если [code]true[/code], кнопка для автоматического упорядочивания узлов графа "
"будет видна."

msgid "If [code]true[/code], the grid is visible."
msgstr "Если [code]true[/code], сетка видна."

msgid ""
"If [code]true[/code], buttons that allow to configure grid and snapping "
"options are visible."
msgstr ""
"Если [code]true[/code], то видны кнопки, позволяющие настраивать параметры "
"сетки и привязки."

msgid "If [code]true[/code], the menu toolbar is visible."
msgstr "Если [code]true[/code], панель инструментов меню видна."

msgid "If [code]true[/code], the button to toggle the minimap is visible."
msgstr "Если [code]true[/code], кнопка переключения мини-карты будет видна."

msgid ""
"If [code]true[/code], buttons that allow to change and reset the zoom level "
"are visible."
msgstr ""
"Если [code]true[/code], видны кнопки, позволяющие изменять и сбрасывать "
"уровень масштабирования."

msgid ""
"If [code]true[/code], the label with the current zoom level is visible. The "
"zoom level is displayed in percents."
msgstr ""
"Если [code]true[/code], то виден текст с текущим уровнем масштабирования. "
"Уровень масштабирования отображается в процентах."

msgid "The snapping distance in pixels, also determines the grid line distance."
msgstr ""
"Расстояние привязки в пикселях, также определяет расстояние между линиями "
"сетки."

msgid "If [code]true[/code], enables snapping."
msgstr "Если [code]true[/code], включает привязку."

msgid "[Dictionary] of human readable port type names."
msgstr "[Dictionary] понятных человеку названий типов портов."

msgid "The current zoom value."
msgstr "Текущее значение масштабирования."

msgid "The upper zoom limit."
msgstr "Максимальный предел масштабирования."

msgid "The lower zoom limit."
msgstr "Минимальный предел масштабирования."

msgid "The step of each zoom level."
msgstr "Шаг каждого уровня масштабирования."

msgid "Emitted at the beginning of a [GraphElement]'s movement."
msgstr "Вызывается в начале движения [GraphElement]."

msgid "Emitted at the end of a connection drag."
msgstr "Выдается в конце перетаскивания соединения."

msgid "Emitted at the beginning of a connection drag."
msgstr "Выдается в начале перетаскивания соединения."

msgid ""
"Emitted when user drags a connection from an input port into the empty space "
"of the graph."
msgstr ""
"Вызывается, когда пользователь перетаскивает соединение из входного порта в "
"пустое пространство графика."

msgid ""
"Emitted to the GraphEdit when the connection between the [param from_port] of "
"the [param from_node] [GraphNode] and the [param to_port] of the [param "
"to_node] [GraphNode] is attempted to be created."
msgstr ""
"Отправляется в GraphEdit при попытке создания соединения между [param "
"from_port] [param from_node] [GraphNode] и [param to_port] [param to_node] "
"[GraphNode]."

msgid ""
"Emitted when user drags a connection from an output port into the empty space "
"of the graph."
msgstr ""
"Вызывается, когда пользователь перетаскивает соединение из выходного порта в "
"пустое пространство графика."

msgid ""
"Emitted when this [GraphEdit] captures a [code]ui_copy[/code] action "
"([kbd]Ctrl + C[/kbd] by default). In general, this signal indicates that the "
"selected [GraphElement]s should be copied."
msgstr ""
"Выдается, когда этот [GraphEdit] захватывает действие [code]ui_copy[/code] "
"([kbd]Ctrl + C[/kbd] по умолчанию). В общем случае этот сигнал указывает на "
"то, что выбранные [GraphElement] должны быть скопированы."

msgid ""
"Emitted when this [GraphEdit] captures a [code]ui_cut[/code] action "
"([kbd]Ctrl + X[/kbd] by default). In general, this signal indicates that the "
"selected [GraphElement]s should be cut."
msgstr ""
"Выдается, когда этот [GraphEdit] захватывает действие [code]ui_cut[/code] "
"([kbd]Ctrl + X[/kbd] по умолчанию). В общем случае этот сигнал указывает на "
"то, что выбранные [GraphElement]-ы должны быть вырезаны."

msgid ""
"Emitted when this [GraphEdit] captures a [code]ui_graph_delete[/code] action "
"([kbd]Delete[/kbd] by default).\n"
"[param nodes] is an array of node names that should be removed. These usually "
"include all selected nodes."
msgstr ""
"Выдается, когда этот [GraphEdit] захватывает действие [code]ui_graph_delete[/"
"code] ([kbd]Delete[/kbd] по умолчанию).\n"
"[param nodes] — это массив имен узлов, которые следует удалить. Обычно они "
"включают все выбранные узлы."

msgid ""
"Emitted to the GraphEdit when the connection between [param from_port] of "
"[param from_node] [GraphNode] and [param to_port] of [param to_node] "
"[GraphNode] is attempted to be removed."
msgstr ""
"Отправляется в GraphEdit при попытке удалить соединение между [param "
"from_port] из [param from_node] [GraphNode] и [param to_port] из [param "
"to_node] [GraphNode]."

msgid ""
"Emitted when this [GraphEdit] captures a [code]ui_graph_duplicate[/code] "
"action ([kbd]Ctrl + D[/kbd] by default). In general, this signal indicates "
"that the selected [GraphElement]s should be duplicated."
msgstr ""
"Выдается, когда этот [GraphEdit] захватывает действие "
"[code]ui_graph_duplicate[/code] ([kbd]Ctrl + D[/kbd] по умолчанию). В общем "
"случае этот сигнал указывает на то, что выбранные [GraphElement] должны быть "
"дублированы."

msgid "Emitted at the end of a [GraphElement]'s movement."
msgstr "Выдается в конце движения [GraphElement]."

msgid ""
"Emitted when the [GraphFrame] [param frame] is resized to [param new_rect]."
msgstr ""
"Вызывается, когда [GraphFrame] [param frame] изменяет размер на [param "
"new_rect]."

msgid ""
"Emitted when one or more [GraphElement]s are dropped onto the [GraphFrame] "
"named [param frame], when they were not previously attached to any other "
"one.\n"
"[param elements] is an array of [GraphElement]s to be attached."
msgstr ""
"Вызывается, когда один или несколько [GraphElement] помещаются на "
"[GraphFrame] с именем [param frame], когда они ранее не были прикреплены ни к "
"какому другому.\n"
"[param elements] — это массив [GraphElement], которые необходимо прикрепить."

msgid "Emitted when the given [GraphElement] node is deselected."
msgstr ""
"Вызывается, когда указанный узел [GraphElement] отменяет выбор (теряет фокус)."

msgid "Emitted when the given [GraphElement] node is selected."
msgstr "Вызывается при выборе указанного узла [GraphElement]."

msgid ""
"Emitted when this [GraphEdit] captures a [code]ui_paste[/code] action "
"([kbd]Ctrl + V[/kbd] by default). In general, this signal indicates that "
"previously copied [GraphElement]s should be pasted."
msgstr ""
"Выдается, когда этот [GraphEdit] захватывает действие [code]ui_paste[/code] "
"([kbd]Ctrl + V[/kbd] по умолчанию). В общем случае этот сигнал указывает на "
"то, что ранее скопированные [GraphElement] должны быть вставлены."

msgid ""
"Emitted when a popup is requested. Happens on right-clicking in the "
"GraphEdit. [param at_position] is the position of the mouse pointer when the "
"signal is sent."
msgstr ""
"Выдается при запросе всплывающего окна. Происходит при щелчке правой кнопкой "
"мыши в GraphEdit. [param at_position] — это положение указателя мыши при "
"отправке сигнала."

msgid ""
"Emitted when the scroll offset is changed by the user. It will not be emitted "
"when changed in code."
msgstr ""
"Выдается, когда пользователь изменяет смещение прокрутки. Не будет выдаваться "
"при изменении в коде."

msgid ""
"[kbd]Mouse Wheel[/kbd] will zoom, [kbd]Ctrl + Mouse Wheel[/kbd] will move the "
"view."
msgstr ""
"[kbd]Mouse Wheel[/kbd] будет увеличивать масштаб, [kbd]Ctrl + Mouse Wheel[/"
"kbd] будет перемещать вид."

msgid ""
"[kbd]Mouse Wheel[/kbd] will move the view, [kbd]Ctrl + Mouse Wheel[/kbd] will "
"zoom."
msgstr ""
"[kbd]Mouse Wheel[/kbd] перемещает вид, [kbd]Ctrl + Mouse Wheel[/kbd] "
"масштабирует."

msgid "Draw the grid using solid lines."
msgstr "Нарисуйте сетку сплошными линиями."

msgid "Draw the grid using dots."
msgstr "Нарисуйте сетку с помощью точек."

msgid ""
"Color the connection line is interpolated to based on the activity value of a "
"connection (see [method set_connection_activity])."
msgstr ""
"Цвет линии соединения интерполируется на основе значения активности "
"соединения (см. [method set_connection_activity])."

msgid ""
"Color which is blended with the connection line when the mouse is hovering "
"over it."
msgstr ""
"Цвет, который смешивается с соединительной линией при наведении на нее "
"курсора мыши."

msgid ""
"Color of the rim around each connection line used for making intersecting "
"lines more distinguishable."
msgstr ""
"Цвет ободка вокруг каждой соединительной линии используется для того, чтобы "
"сделать пересекающиеся линии более различимыми."

msgid ""
"Color which is blended with the connection line when the currently dragged "
"connection is hovering over a valid target port."
msgstr ""
"Цвет, который смешивается с линией соединения, когда текущее перетаскиваемое "
"соединение наводится на допустимый целевой порт."

msgid "Color of major grid lines/dots."
msgstr "Цвет основных линий/точек сетки."

msgid "Color of minor grid lines/dots."
msgstr "Цвет второстепенных линий/точек сетки."

msgid "The fill color of the selection rectangle."
msgstr "Цвет заливки прямоугольника выделения."

msgid "The outline color of the selection rectangle."
msgstr "Цвет контура прямоугольника выделения."

msgid ""
"Widen the line of the connection when the mouse is hovering over it by a "
"percentage factor. A value of [code]0[/code] disables the highlight. A value "
"of [code]100[/code] doubles the line width."
msgstr ""
"Расширить линию соединения при наведении на нее мыши на процентный "
"коэффициент. Значение [code]0[/code] отключает подсветку. Значение [code]100[/"
"code] удваивает ширину линии."

msgid "The horizontal range within which a port can be grabbed (inner side)."
msgstr ""
"Горизонтальный диапазон, в пределах которого можно захватить порт (внутренняя "
"сторона)."

msgid "The horizontal range within which a port can be grabbed (outer side)."
msgstr ""
"Горизонтальный диапазон, в пределах которого можно захватить порт (внешняя "
"сторона)."

msgid "The icon for the grid toggle button."
msgstr "Значок кнопки переключения сетки."

msgid "The icon for the layout button for auto-arranging the graph."
msgstr "Значок кнопки макета для автоматического размещения графика."

msgid "The icon for the minimap toggle button."
msgstr "Значок кнопки переключения мини-карты."

msgid "The icon for the snapping toggle button."
msgstr "Значок для кнопки-переключателя привязки."

msgid "The icon for the zoom in button."
msgstr "Значок кнопки увеличения масштаба."

msgid "The icon for the zoom out button."
msgstr "Значок кнопки уменьшения масштаба."

msgid "The icon for the zoom reset button."
msgstr "Значок кнопки сброса масштаба."

msgid "The background drawn under the grid."
msgstr "Фон, нарисованный под сеткой."

msgid ""
"[StyleBox] used when the [GraphEdit] is focused (when used with assistive "
"apps)."
msgstr ""
"[StyleBox] используется, когда фокус находится на [GraphEdit] (при "
"использовании со вспомогательными приложениями)."

msgid ""
"A container that represents a basic element that can be placed inside a "
"[GraphEdit] control."
msgstr ""
"Контейнер, представляющий собой базовый элемент, который можно поместить "
"внутрь элемента управления [GraphEdit]."

msgid ""
"[GraphElement] allows to create custom elements for a [GraphEdit] graph. By "
"default such elements can be selected, resized, and repositioned, but they "
"cannot be connected. For a graph element that allows for connections see "
"[GraphNode]."
msgstr ""
"[GraphElement] позволяет создавать пользовательские элементы для графика "
"[GraphEdit]. По умолчанию такие элементы можно выбирать, изменять их размер и "
"положение, но их нельзя соединять. Для элемента графика, который допускает "
"соединения, см. [GraphNode]."

msgid "If [code]true[/code], the user can drag the GraphElement."
msgstr "Если [code]true[/code], пользователь может перетаскивать GraphElement."

msgid ""
"The offset of the GraphElement, relative to the scroll offset of the "
"[GraphEdit]."
msgstr "Смещение GraphElement относительно смещения прокрутки [GraphEdit]."

msgid ""
"If [code]true[/code], the user can resize the GraphElement.\n"
"[b]Note:[/b] Dragging the handle will only emit the [signal resize_request] "
"and [signal resize_end] signals, the GraphElement needs to be resized "
"manually."
msgstr ""
"Если [code]true[/code], пользователь может изменить размер GraphElement.\n"
"[b]Примечание:[/b] Перетаскивание ручки выдаст только сигналы [signal "
"resize_request] и [signal resize_end], размер GraphElement необходимо "
"изменить вручную."

msgid "If [code]true[/code], the user can select the GraphElement."
msgstr "Если [code]true[/code], пользователь может выбрать GraphElement."

msgid "If [code]true[/code], the GraphElement is selected."
msgstr "Если [code]true[/code], выбирается GraphElement."

msgid "Emitted when removing the GraphElement is requested."
msgstr "Выдается при запросе удаления GraphElement."

msgid "Emitted when the GraphElement is dragged."
msgstr "Вызывается при перетаскивании GraphElement."

msgid "Emitted when the GraphElement is deselected."
msgstr "Вызывается при отмене выбора GraphElement."

msgid "Emitted when the GraphElement is selected."
msgstr "Вызывается при выборе GraphElement."

msgid "Emitted when the GraphElement is moved."
msgstr "Вызывается при перемещении GraphElement."

msgid ""
"Emitted when displaying the GraphElement over other ones is requested. "
"Happens on focusing (clicking into) the GraphElement."
msgstr ""
"Выдается при запросе отображения GraphElement поверх других. Происходит при "
"фокусировке (щелчке) на GraphElement."

msgid ""
"Emitted when releasing the mouse button after dragging the resizer handle "
"(see [member resizable])."
msgstr ""
"Вызывается при отпускании кнопки мыши после перетаскивания маркера изменения "
"размера (см. [member resizable])."

msgid ""
"Emitted when resizing the GraphElement is requested. Happens on dragging the "
"resizer handle (see [member resizable])."
msgstr ""
"Выдается при запросе изменения размера GraphElement. Происходит при "
"перетаскивании ручки изменения размера (см. [member resizable])."

msgid ""
"The icon used for the resizer, visible when [member resizable] is enabled."
msgstr ""
"Значок, используемый для изменения размера, виден, когда включен параметр "
"[member resizable]."

msgid ""
"GraphFrame is a special [GraphElement] that can be used to organize other "
"[GraphElement]s inside a [GraphEdit]."
msgstr ""
"GraphFrame — это специальный [GraphElement], который можно использовать для "
"организации других [GraphElement] внутри [GraphEdit]."

msgid ""
"GraphFrame is a special [GraphElement] to which other [GraphElement]s can be "
"attached. It can be configured to automatically resize to enclose all "
"attached [GraphElement]s. If the frame is moved, all the attached "
"[GraphElement]s inside it will be moved as well.\n"
"A GraphFrame is always kept behind the connection layer and other "
"[GraphElement]s inside a [GraphEdit]."
msgstr ""
"GraphFrame — это специальный [GraphElement], к которому могут быть "
"присоединены другие [GraphElement]. Его можно настроить на автоматическое "
"изменение размера, чтобы охватить все присоединенные [GraphElement]. Если "
"рамка перемещена, все присоединенные [GraphElement] внутри нее также будут "
"перемещены.\n"
"GraphFrame всегда хранится за слоем соединений, а другие [GraphElement] — "
"внутри [GraphEdit]."

msgid ""
"Returns the [HBoxContainer] used for the title bar, only containing a [Label] "
"for displaying the title by default.\n"
"This can be used to add custom controls to the title bar such as option or "
"close buttons."
msgstr ""
"Возвращает [HBoxContainer], используемый для строки заголовка, содержащий "
"только [Label] для отображения заголовка по умолчанию.\n"
"Это можно использовать для добавления пользовательских элементов управления в "
"строку заголовка, таких как кнопки выбора или закрытия."

msgid ""
"If [code]true[/code], the frame's rect will be adjusted automatically to "
"enclose all attached [GraphElement]s."
msgstr ""
"Если [code]true[/code], прямоугольник рамки будет автоматически "
"скорректирован так, чтобы охватить все прикрепленные [GraphElement]."

msgid ""
"The margin around the attached nodes that is used to calculate the size of "
"the frame when [member autoshrink_enabled] is [code]true[/code]."
msgstr ""
"Поле вокруг присоединенных узлов, которое используется для расчета размера "
"фрейма, когда [member autoshrink_enabled] имеет значение [code]true[/code]."

msgid "The margin inside the frame that can be used to drag the frame."
msgstr "Поле внутри рамки, которое можно использовать для перетаскивания рамки."

msgid ""
"The color of the frame when [member tint_color_enabled] is [code]true[/code]."
msgstr "Цвет рамки, когда [member tint_color_enabled] равен [code]true[/code]."

msgid "If [code]true[/code], the tint color will be used to tint the frame."
msgstr ""
"Если [code]true[/code], цвет оттенка будет использоваться для тонирования "
"рамки."

msgid "Title of the frame."
msgstr "Заголовок рамки."

msgid ""
"Emitted when [member autoshrink_enabled] or [member autoshrink_margin] "
"changes."
msgstr ""
"Вызывается при изменении [member autoshrink_enabled] или [member "
"autoshrink_margin]."

msgid "The color modulation applied to the resizer icon."
msgstr "Цветовая модуляция, примененная к значку изменения размера."

msgid "The default [StyleBox] used for the background of the [GraphFrame]."
msgstr "[StyleBox] по умолчанию используемый для фона [GraphFrame]."

msgid ""
"The [StyleBox] used for the background of the [GraphFrame] when it is "
"selected."
msgstr "[StyleBox], используемый для фона [GraphFrame], когда он выбран."

msgid "The [StyleBox] used for the title bar of the [GraphFrame]."
msgstr "[StyleBox], используемый для заголовка [GraphFrame]."

msgid ""
"The [StyleBox] used for the title bar of the [GraphFrame] when it is selected."
msgstr "[StyleBox], используемый для заголовка [GraphFrame], когда он выбран."

msgid "A container with connection ports, representing a node in a [GraphEdit]."
msgstr "Контейнер с портами подключения, представляющий узел в [GraphEdit]."

msgid ""
"[GraphNode] allows to create nodes for a [GraphEdit] graph with customizable "
"content based on its child controls. [GraphNode] is derived from [Container] "
"and it is responsible for placing its children on screen. This works similar "
"to [VBoxContainer]. Children, in turn, provide [GraphNode] with so-called "
"slots, each of which can have a connection port on either side.\n"
"Each [GraphNode] slot is defined by its index and can provide the node with "
"up to two ports: one on the left, and one on the right. By convention the "
"left port is also referred to as the [b]input port[/b] and the right port is "
"referred to as the [b]output port[/b]. Each port can be enabled and "
"configured individually, using different type and color. The type is an "
"arbitrary value that you can define using your own considerations. The parent "
"[GraphEdit] will receive this information on each connect and disconnect "
"request.\n"
"Slots can be configured in the Inspector dock once you add at least one child "
"[Control]. The properties are grouped by each slot's index in the \"Slot\" "
"section.\n"
"[b]Note:[/b] While GraphNode is set up using slots and slot indices, "
"connections are made between the ports which are enabled. Because of that "
"[GraphEdit] uses the port's index and not the slot's index. You can use "
"[method get_input_port_slot] and [method get_output_port_slot] to get the "
"slot index from the port index."
msgstr ""
"[GraphNode] позволяет создавать узлы для графика [GraphEdit] с настраиваемым "
"содержимым на основе его дочерних элементов управления. [GraphNode] является "
"производным от [Container] и отвечает за размещение своих дочерних элементов "
"на экране. Это работает аналогично [VBoxContainer]. Дочерние элементы, в свою "
"очередь, предоставляют [GraphNode] так называемые слоты, каждый из которых "
"может иметь порт подключения с любой стороны.\n"
"Каждый слот [GraphNode] определяется своим индексом и может предоставлять "
"узлу до двух портов: один слева и один справа. По соглашению левый порт также "
"называется [b]входным портом[/b], а правый порт называется [b]выходным "
"портом[/b]. Каждый порт можно включить и настроить индивидуально, используя "
"разные типы и цвета. Тип — это произвольное значение, которое вы можете "
"определить, используя собственные соображения. Родительский [GraphEdit] будет "
"получать эту информацию при каждом запросе на подключение и отключение.\n"
"Слоты можно настроить в доке инспектора, как только вы добавите хотя бы один "
"дочерний [Control]. Свойства сгруппированы по индексу каждого слота в разделе "
"«Slot».\n"
"[b]Примечание:[/b] Хотя GraphNode настроен с использованием слотов и индексов "
"слотов, соединения устанавливаются между портами, которые включены. Из-за "
"этого [GraphEdit] использует индекс порта, а не индекс слота. Вы можете "
"использовать [method get_input_port_slot] и [method get_output_port_slot], "
"чтобы получить индекс слота из индекса порта."

msgid ""
"Disables all slots of the GraphNode. This will remove all input/output ports "
"from the GraphNode."
msgstr ""
"Отключает все слоты GraphNode. Это удалит все порты ввода/вывода из GraphNode."

msgid ""
"Disables the slot with the given [param slot_index]. This will remove the "
"corresponding input and output port from the GraphNode."
msgstr ""
"Отключает слот с заданным [param slot_index]. Это удалит соответствующий "
"входной и выходной порт из GraphNode."

msgid "Returns the [Color] of the input port with the given [param port_idx]."
msgstr "Возвращает [Color] входного порта с заданным [param port_idx]."

msgid "Returns the number of slots with an enabled input port."
msgstr "Возвращает количество слотов с включенным входным портом."

msgid "Returns the position of the input port with the given [param port_idx]."
msgstr "Возвращает позицию входного порта с заданным [param port_idx]."

msgid ""
"Returns the corresponding slot index of the input port with the given [param "
"port_idx]."
msgstr ""
"Возвращает соответствующий индекс слота входного порта с заданным [param "
"port_idx]."

msgid "Returns the type of the input port with the given [param port_idx]."
msgstr "Возвращает тип входного порта с заданным [param port_idx]."

msgid "Returns the [Color] of the output port with the given [param port_idx]."
msgstr "Возвращает [Color] выходного порта с заданным [param port_idx]."

msgid "Returns the number of slots with an enabled output port."
msgstr "Возвращает количество слотов с включенным выходным портом."

msgid "Returns the position of the output port with the given [param port_idx]."
msgstr "Возвращает позицию выходного порта с заданным [param port_idx]."

msgid ""
"Returns the corresponding slot index of the output port with the given [param "
"port_idx]."
msgstr ""
"Возвращает соответствующий индекс слота выходного порта с заданным [param "
"port_idx]."

msgid "Returns the type of the output port with the given [param port_idx]."
msgstr "Возвращает тип выходного порта с заданным [param port_idx]."

msgid ""
"Returns the left (input) [Color] of the slot with the given [param "
"slot_index]."
msgstr "Возвращает левый (входной) [Color] слота с заданным [param slot_index]."

msgid ""
"Returns the right (output) [Color] of the slot with the given [param "
"slot_index]."
msgstr ""
"Возвращает правый (выходной) [Color] слота с заданным [param slot_index]."

msgid ""
"Returns the left (input) custom [Texture2D] of the slot with the given [param "
"slot_index]."
msgstr ""
"Возвращает левую (входную) пользовательскую [Texture2D] слота с заданным "
"[param slot_index]."

msgid ""
"Returns the right (output) custom [Texture2D] of the slot with the given "
"[param slot_index]."
msgstr ""
"Возвращает правую (выходную) пользовательскую [Texture2D] слота с заданным "
"[param slot_index]."

msgid ""
"Returns the left (input) type of the slot with the given [param slot_index]."
msgstr "Возвращает левый (входной) тип слота с заданным [param slot_index]."

msgid ""
"Returns the right (output) type of the slot with the given [param slot_index]."
msgstr ""
"Возвращает правильный (выходной) тип слота с заданным [param slot_index]."

msgid ""
"Returns the [HBoxContainer] used for the title bar, only containing a [Label] "
"for displaying the title by default. This can be used to add custom controls "
"to the title bar such as option or close buttons."
msgstr ""
"Возвращает [HBoxContainer], используемый для заголовка, содержащий только "
"[Label] для отображения заголовка по умолчанию. Это можно использовать для "
"добавления пользовательских элементов управления в заголовок, например, "
"кнопок выбора или закрытия."

msgid ""
"Returns [code]true[/code] if the background [StyleBox] of the slot with the "
"given [param slot_index] is drawn."
msgstr ""
"Возвращает [code]true[/code], если отрисовывается фон [StyleBox] слота с "
"заданным [param slot_index]."

msgid ""
"Returns [code]true[/code] if left (input) side of the slot with the given "
"[param slot_index] is enabled."
msgstr ""
"Возвращает [code]true[/code], если включена левая (входная) сторона слота с "
"заданным [param slot_index]."

msgid ""
"Returns [code]true[/code] if right (output) side of the slot with the given "
"[param slot_index] is enabled."
msgstr ""
"Возвращает [code]true[/code], если правая (выходная) сторона слота с заданным "
"[param slot_index] включена."

msgid ""
"Sets properties of the slot with the given [param slot_index].\n"
"If [param enable_left_port]/[param enable_right_port] is [code]true[/code], a "
"port will appear and the slot will be able to be connected from this side.\n"
"With [param type_left]/[param type_right] an arbitrary type can be assigned "
"to each port. Two ports can be connected if they share the same type, or if "
"the connection between their types is allowed in the parent [GraphEdit] (see "
"[method GraphEdit.add_valid_connection_type]). Keep in mind that the "
"[GraphEdit] has the final say in accepting the connection. Type compatibility "
"simply allows the [signal GraphEdit.connection_request] signal to be "
"emitted.\n"
"Ports can be further customized using [param color_left]/[param color_right] "
"and [param custom_icon_left]/[param custom_icon_right]. The color parameter "
"adds a tint to the icon. The custom icon can be used to override the default "
"port dot.\n"
"Additionally, [param draw_stylebox] can be used to enable or disable drawing "
"of the background stylebox for each slot. See [theme_item slot].\n"
"Individual properties can also be set using one of the [code]set_slot_*[/"
"code] methods.\n"
"[b]Note:[/b] This method only sets properties of the slot. To create the slot "
"itself, add a [Control]-derived child to the GraphNode."
msgstr ""
"Устанавливает свойства слота с заданным [param slot_index].\n"
"Если [param enable_left_port]/[param enable_right_port] равно [code]true[/"
"code], появится порт, и слот можно будет подключить с этой стороны.\n"
"С [param type_left]/[param type_right] каждому порту можно назначить "
"произвольный тип. Два порта можно подключить, если они имеют один и тот же "
"тип или если соединение между их типами разрешено в родительском [GraphEdit] "
"(см. [method GraphEdit.add_valid_connection_type]). Помните, что [GraphEdit] "
"имеет последнее слово в принятии соединения. Совместимость типов просто "
"позволяет испускать сигнал [signal GraphEdit.connection_request].\n"
"Порты можно дополнительно настраивать с помощью [param color_left]/[param "
"color_right] и [param custom_icon_left]/[param custom_icon_right]. Параметр "
"цвета добавляет оттенок к значку. Пользовательский значок может "
"использоваться для переопределения точки порта по умолчанию.\n"
"Кроме того, [param draw_stylebox] может использоваться для включения или "
"отключения рисования фонового stylebox для каждого слота. См. [theme_item "
"slot].\n"
"Отдельные свойства также можно задать с помощью одного из методов "
"[code]set_slot_*[/code].\n"
"[b]Примечание:[/b] Этот метод задает только свойства слота. Чтобы создать сам "
"слот, добавьте дочерний элемент, полученный от [Control], к GraphNode."

msgid ""
"Sets the [Color] of the left (input) side of the slot with the given [param "
"slot_index] to [param color]."
msgstr ""
"Устанавливает [Color] левой (входной) стороны слота с заданным [param "
"slot_index] на [param color]."

msgid ""
"Sets the [Color] of the right (output) side of the slot with the given [param "
"slot_index] to [param color]."
msgstr ""
"Устанавливает [Color] правой (выходной) стороны слота с заданным [param "
"slot_index] на [param color]."

msgid ""
"Sets the custom [Texture2D] of the left (input) side of the slot with the "
"given [param slot_index] to [param custom_icon]."
msgstr ""
"Устанавливает пользовательскую [Texture2D] левой (входной) стороны слота с "
"заданным [param slot_index] на [param custom_icon]."

msgid ""
"Sets the custom [Texture2D] of the right (output) side of the slot with the "
"given [param slot_index] to [param custom_icon]."
msgstr ""
"Устанавливает пользовательскую [Texture2D] правой (выходной) стороны слота с "
"заданным [param slot_index] на [param custom_icon]."

msgid ""
"Toggles the background [StyleBox] of the slot with the given [param "
"slot_index]."
msgstr "Переключает фон [StyleBox] слота с заданным [param slot_index]."

msgid ""
"Toggles the left (input) side of the slot with the given [param slot_index]. "
"If [param enable] is [code]true[/code], a port will appear on the left side "
"and the slot will be able to be connected from this side."
msgstr ""
"Переключает левую (входную) сторону слота с заданным [param slot_index]. Если "
"[param enable] равен [code]true[/code], порт появится на левой стороне, и "
"слот можно будет подключить с этой стороны."

msgid ""
"Toggles the right (output) side of the slot with the given [param "
"slot_index]. If [param enable] is [code]true[/code], a port will appear on "
"the right side and the slot will be able to be connected from this side."
msgstr ""
"Переключает правую (выходную) сторону слота с заданным [param slot_index]. "
"Если [param enable] равен [code]true[/code], порт появится на правой стороне, "
"и слот можно будет подключить с этой стороны."

msgid ""
"Sets the left (input) type of the slot with the given [param slot_index] to "
"[param type]. If the value is negative, all connections will be disallowed to "
"be created via user inputs."
msgstr ""
"Устанавливает левый (входной) тип слота с заданным [param slot_index] на "
"[param type]. Если значение отрицательное, все соединения будут запрещены для "
"создания через пользовательский ввод."

msgid ""
"Sets the right (output) type of the slot with the given [param slot_index] to "
"[param type]. If the value is negative, all connections will be disallowed to "
"be created via user inputs."
msgstr ""
"Устанавливает правильный (выходной) тип слота с заданным [param slot_index] "
"на [param type]. Если значение отрицательное, все соединения будут запрещены "
"для создания через пользовательский ввод."

msgid ""
"If [code]true[/code], you can connect ports with different types, even if the "
"connection was not explicitly allowed in the parent [GraphEdit]."
msgstr ""
"Если [code]true[/code], вы можете подключить порты с разными типами, даже "
"если подключение не было явно разрешено в родительском [GraphEdit]."

msgid ""
"Determines how connection slots can be focused.\n"
"- If set to [constant Control.FOCUS_CLICK], connections can only be made with "
"the mouse.\n"
"- If set to [constant Control.FOCUS_ALL], slots can also be focused using the "
"[member ProjectSettings.input/ui_up] and [member ProjectSettings.input/"
"ui_down] and connected using [member ProjectSettings.input/ui_left] and "
"[member ProjectSettings.input/ui_right] input actions.\n"
"- If set to [constant Control.FOCUS_ACCESSIBILITY], slot input actions are "
"only enabled when the screen reader is active."
msgstr ""
"Определяет, как можно фокусировать слоты подключения.\n"
"- Если установлено значение [constant Control.FOCUS_CLICK], соединения можно "
"устанавливать только с помощью мыши.\n"
"- Если установлено значение [constant Control.FOCUS_ALL], слоты также можно "
"фокусировать с помощью действий ввода [member ProjectSettings.input/ui_up] и "
"[member ProjectSettings.input/ui_down], а также подключать с помощью действий "
"ввода [member ProjectSettings.input/ui_left] и [member ProjectSettings.input/"
"ui_right].\n"
"- Если установлено значение [constant Control.FOCUS_ACCESSIBILITY], действия "
"ввода слотов доступны только при активном средстве чтения с экрана."

msgid "The text displayed in the GraphNode's title bar."
msgstr "Текст, отображаемый в строке заголовка GraphNode."

msgid "Emitted when any slot's size might have changed."
msgstr "Генерируется, когда размер любого слота мог измениться."

msgid "Emitted when any GraphNode's slot is updated."
msgstr "Генерируется при обновлении любого слота GraphNode."

msgid "Horizontal offset for the ports."
msgstr "Горизонтальное смещение портов."

msgid "The vertical distance between ports."
msgstr "Вертикальное расстояние между портами."

msgid "The icon used for representing ports."
msgstr "Значок, используемый для обозначения портов."

msgid "The default background for the slot area of the [GraphNode]."
msgstr "Фон по умолчанию для области слота [GraphNode]."

msgid ""
"[StyleBox] used when the [GraphNode] is focused (when used with assistive "
"apps)."
msgstr ""
"[StyleBox] используется, когда [GraphNode] находится в фокусе (при "
"использовании со вспомогательными приложениями)."

msgid "The [StyleBox] used for the slot area when selected."
msgstr "[StyleBox], используемый для области слота при выборе."

msgid "The [StyleBox] used for each slot of the [GraphNode]."
msgstr "[StyleBox], используемый для каждого слота [GraphNode]."

msgid ""
"[StyleBox] used when the slot is focused (when used with assistive apps)."
msgstr ""
"[StyleBox] используется, когда слот находится в фокусе (при использовании со "
"вспомогательными приложениями)."

msgid "The [StyleBox] used for the title bar of the [GraphNode]."
msgstr "[StyleBox], используемый для заголовка [GraphNode]."

msgid ""
"The [StyleBox] used for the title bar of the [GraphNode] when it is selected."
msgstr "[StyleBox], используемый для заголовка [GraphNode], когда он выбран."

msgid "A container that arranges its child controls in a grid layout."
msgstr ""
"Контейнер, который размещает свои дочерние элементы управления в виде сетки."

msgid ""
"[GridContainer] arranges its child controls in a grid layout. The number of "
"columns is specified by the [member columns] property, whereas the number of "
"rows depends on how many are needed for the child controls. The number of "
"rows and columns is preserved for every size of the container.\n"
"[b]Note:[/b] [GridContainer] only works with child nodes inheriting from "
"[Control]. It won't rearrange child nodes inheriting from [Node2D]."
msgstr ""
"[GridContainer] размещает свои дочерние элементы управления в сетке. "
"Количество столбцов указывается свойством [member columns], тогда как "
"количество строк зависит от того, сколько их необходимо для дочерних "
"элементов управления. Количество строк и столбцов сохраняется для каждого "
"размера контейнера.\n"
"[b]Примечание:[/b] [GridContainer] работает только с дочерними узлами, "
"унаследованными от [Control]. Он не будет переупорядочивать дочерние узлы, "
"унаследованные от [Node2D]."

msgid ""
"The number of columns in the [GridContainer]. If modified, [GridContainer] "
"reorders its Control-derived children to accommodate the new layout."
msgstr ""
"Количество столбцов в [GridContainer]. При изменении [GridContainer] "
"переупорядочивает свои дочерние элементы, полученные из Control, чтобы "
"соответствовать новому макету."

msgid "Node for 3D tile-based maps."
msgstr "Узел для 3D-карт на основе плиток."

msgid ""
"GridMap lets you place meshes on a grid interactively. It works both from the "
"editor and from scripts, which can help you create in-game level editors.\n"
"GridMaps use a [MeshLibrary] which contains a list of tiles. Each tile is a "
"mesh with materials plus optional collision and navigation shapes.\n"
"A GridMap contains a collection of cells. Each grid cell refers to a tile in "
"the [MeshLibrary]. All cells in the map have the same dimensions.\n"
"Internally, a GridMap is split into a sparse collection of octants for "
"efficient rendering and physics processing. Every octant has the same "
"dimensions and can contain several cells.\n"
"[b]Note:[/b] GridMap doesn't extend [VisualInstance3D] and therefore can't be "
"hidden or cull masked based on [member VisualInstance3D.layers]. If you make "
"a light not affect the first layer, the whole GridMap won't be lit by the "
"light in question."
msgstr ""
"GridMap позволяет интерактивно размещать меши на сетке. Он работает как в "
"редакторе, так и через скрипты, что помогает создавать внутриигровые "
"редакторы уровней.\n"
"GridMap использует [MeshLibrary], содержащую список тайлов. Каждый тайл — это "
"меш с материалами плюс опциональные формы столкновений и навигации.\n"
"GridMap содержит коллекцию ячеек. Каждая ячейка сетки ссылается на тайл в "
"[MeshLibrary]. Все ячейки карты имеют одинаковые размеры.\n"
"Внутренне GridMap разделён на разреженную коллекцию октантов для эффективного "
"рендеринга и обработки физики. Каждый октант имеет одинаковые размеры и может "
"содержать несколько ячеек.\n"
"[b]Примечание:[/b] GridMap не наследует от [VisualInstance3D], поэтому не "
"может быть скрыт или маскирован через [member VisualInstance3D.layers]. Если "
"свет не влияет на первый слой, весь GridMap не будет освещён этим источником "
"света."

msgid "Using gridmaps"
msgstr "Использование карт сетки"

msgid "Clear all cells."
msgstr "Очистить все ячейки."

msgid "Clears all baked meshes. See [method make_baked_meshes]."
msgstr "Очищает все запеченные сетки. См. [method make_baked_meshes]."

msgid "Returns [RID] of a baked mesh with the given [param idx]."
msgstr "Возвращает [RID] запеченной сетки с заданным [param idx]."

msgid ""
"Returns an array of [ArrayMesh]es and [Transform3D] references of all bake "
"meshes that exist within the current GridMap. Even indices contain "
"[ArrayMesh]es, while odd indices contain [Transform3D]s that are always equal "
"to [constant Transform3D.IDENTITY].\n"
"This method relies on the output of [method make_baked_meshes], which will be "
"called with [code]gen_lightmap_uv[/code] set to [code]true[/code] and "
"[code]lightmap_uv_texel_size[/code] set to [code]0.1[/code] if it hasn't been "
"called yet."
msgstr ""
"Возвращает массив ссылок [ArrayMesh] и [Transform3D] всех запекаемых сеток, "
"существующих в текущем GridMap. Чётные индексы содержат [ArrayMesh], а "
"нечётные — [Transform3D], которые всегда равны [constant "
"Transform3D.IDENTITY].\n"
"Этот метод использует выходные данные метода [method make_baked_meshes], "
"который будет вызван с [code]gen_lightmap_uv[/code] равным [code]true[/code] "
"и [code]lightmap_uv_texel_size[/code] равным [code]0.1[/code], если он ещё не "
"был вызван."

msgid ""
"Returns one of 24 possible rotations that lie along the vectors (x,y,z) with "
"each component being either -1, 0, or 1. For further details, refer to the "
"Godot source code."
msgstr ""
"Возвращает один из 24 возможных поворотов, которые лежат вдоль векторов "
"(x,y,z), где каждый компонент равен -1, 0 или 1. Для получения дополнительных "
"сведений обратитесь к исходному коду Godot."

msgid ""
"The [MeshLibrary] item index located at the given grid coordinates. If the "
"cell is empty, [constant INVALID_CELL_ITEM] will be returned."
msgstr ""
"Индекс элемента [MeshLibrary], расположенный в заданных координатах сетки. "
"Если ячейка пуста, будет возвращена [constant INVALID_CELL_ITEM]."

msgid "Returns the basis that gives the specified cell its orientation."
msgstr "Возвращает базис, задающий ориентацию указанной ячейке."

msgid ""
"The orientation of the cell at the given grid coordinates. [code]-1[/code] is "
"returned if the cell is empty."
msgstr ""
"Ориентация ячейки в заданных координатах сетки. [code]-1[/code] возвращается, "
"если ячейка пуста."

msgid ""
"Returns an array of [Transform3D] and [Mesh] references corresponding to the "
"non-empty cells in the grid. The transforms are specified in local space. "
"Even indices contain [Transform3D]s, while odd indices contain [Mesh]es "
"related to the [Transform3D] in the index preceding it."
msgstr ""
"Возвращает массив ссылок [Transform3D] и [Mesh], соответствующих непустым "
"ячейкам сетки. Преобразования задаются в локальном пространстве. Чётные "
"индексы содержат [Transform3D], а нечётные — [Mesh], относящиеся к "
"[Transform3D] в индексе, предшествующем ему."

msgid ""
"Returns the [RID] of the navigation map this GridMap node uses for its cell "
"baked navigation meshes.\n"
"This function returns always the map set on the GridMap node and not the map "
"on the NavigationServer. If the map is changed directly with the "
"NavigationServer API the GridMap node will not be aware of the map change."
msgstr ""
"Возвращает [RID] навигационной карты, которую этот узел GridMap использует "
"для своих ячеек запеченных навигационных сеток.\n"
"Эта функция всегда возвращает набор карт на узле GridMap, а не карту на "
"NavigationServer. Если карта изменяется напрямую с помощью API "
"NavigationServer, узел GridMap не будет знать об изменении карты."

msgid ""
"This function considers a discretization of rotations into 24 points on unit "
"sphere, lying along the vectors (x,y,z) with each component being either -1, "
"0, or 1, and returns the index (in the range from 0 to 23) of the point best "
"representing the orientation of the object. For further details, refer to the "
"Godot source code."
msgstr ""
"Эта функция рассматривает дискретизацию вращений в 24 точки на единичной "
"сфере, лежащих вдоль векторов (x,y,z), где каждый компонент равен -1, 0 или "
"1, и возвращает индекс (в диапазоне от 0 до 23) точки, наилучшим образом "
"представляющей ориентацию объекта. Для получения дополнительных сведений "
"обратитесь к исходному коду Godot."

msgid ""
"Returns an array of [Vector3] with the non-empty cell coordinates in the grid "
"map."
msgstr ""
"Возвращает массив [Vector3] с непустыми координатами ячеек на карте сетки."

msgid ""
"Returns an array of all cells with the given item index specified in [param "
"item]."
msgstr ""
"Возвращает массив всех ячеек с заданным индексом элемента, указанным в [param "
"item]."

msgid ""
"Returns the map coordinates of the cell containing the given [param "
"local_position]. If [param local_position] is in global coordinates, consider "
"using [method Node3D.to_local] before passing it to this method. See also "
"[method map_to_local]."
msgstr ""
"Возвращает координаты карты ячейки, содержащей заданный [param "
"local_position]. Если [param local_position] находится в глобальных "
"координатах, рассмотрите возможность использования [method Node3D.to_local] "
"перед передачей его этому методу. См. также [method map_to_local]."

msgid ""
"Generates a baked mesh that represents all meshes in the assigned "
"[MeshLibrary] for use with [LightmapGI]. If [param gen_lightmap_uv] is "
"[code]true[/code], UV2 data will be generated for each mesh currently used in "
"the [GridMap]. Otherwise, only meshes that already have UV2 data present will "
"be able to use baked lightmaps. When generating UV2, [param "
"lightmap_uv_texel_size] controls the texel density for lightmaps, with lower "
"values resulting in more detailed lightmaps. [param lightmap_uv_texel_size] "
"is ignored if [param gen_lightmap_uv] is [code]false[/code]. See also [method "
"get_bake_meshes], which relies on the output of this method.\n"
"[b]Note:[/b] Calling this method will not actually bake lightmaps, as "
"lightmap baking is performed using the [LightmapGI] node."
msgstr ""
"Генерирует запечённую сетку, представляющую все сетки в назначенной "
"[MeshLibrary] для использования с [LightmapGI]. Если [param gen_lightmap_uv] "
"имеет значение [code]true[/code], данные UV2 будут сгенерированы для каждой "
"сетки, используемой в данный момент в [GridMap]. В противном случае "
"запечённые карты освещения будут доступны только для сеток, у которых уже "
"есть данные UV2. При генерации UV2 параметр [param lightmap_uv_texel_size] "
"управляет плотностью текселей для карт освещения, чем ниже значение, тем "
"более детальные карты освещения получаются. [param lightmap_uv_texel_size] "
"игнорируется, если [param gen_lightmap_uv] имеет значение [code]false[/code]. "
"См. также [method get_bake_meshes], который использует выходные данные этого "
"метода.\n"
"[b]Примечание:[/b] Вызов этого метода не приводит к запеканию карт освещения, "
"поскольку запекание выполняется с помощью узла [LightmapGI]."

msgid ""
"Returns the position of a grid cell in the GridMap's local coordinate space. "
"To convert the returned value into global coordinates, use [method "
"Node3D.to_global]. See also [method local_to_map]."
msgstr ""
"Возвращает позицию ячейки сетки в локальном координатном пространстве "
"GridMap. Чтобы преобразовать возвращаемое значение в глобальные координаты, "
"используйте [method Node3D.to_global]. См. также [method local_to_map]."

msgid ""
"Sets the mesh index for the cell referenced by its grid coordinates.\n"
"A negative item index such as [constant INVALID_CELL_ITEM] will clear the "
"cell.\n"
"Optionally, the item's orientation can be passed. For valid orientation "
"values, see [method get_orthogonal_index_from_basis]."
msgstr ""
"Устанавливает индекс сетки для ячейки, на которую ссылаются ее координаты "
"сетки.\n"
"Отрицательный индекс элемента, такой как [constant INVALID_CELL_ITEM], "
"очистит ячейку.\n"
"При желании можно передать ориентацию элемента. Для допустимых значений "
"ориентации см. [method get_orthogonal_index_from_basis]."

msgid ""
"Sets the [RID] of the navigation map this GridMap node should use for its "
"cell baked navigation meshes."
msgstr ""
"Устанавливает [RID] навигационной карты, которую этот узел GridMap должен "
"использовать для своих запеченных ячеек навигационных сеток."

msgid ""
"If [code]true[/code], this GridMap creates a navigation region for each cell "
"that uses a [member mesh_library] item with a navigation mesh. The created "
"navigation region will use the navigation layers bitmask assigned to the "
"[MeshLibrary]'s item."
msgstr ""
"Если [code]true[/code], этот GridMap создает навигационную область для каждой "
"ячейки, которая использует элемент [member mesh_library] с навигационной "
"сеткой. Созданная навигационная область будет использовать битовую маску "
"навигационных слоев, назначенную элементу [MeshLibrary]."

msgid "If [code]true[/code], grid items are centered on the X axis."
msgstr "Если [code]true[/code], элементы сетки центрируются по оси X."

msgid "If [code]true[/code], grid items are centered on the Y axis."
msgstr "Если [code]true[/code], элементы сетки центрируются по оси Y."

msgid "If [code]true[/code], grid items are centered on the Z axis."
msgstr "Если [code]true[/code], элементы сетки центрируются по оси Z."

msgid ""
"The size of each octant measured in number of cells. This applies to all "
"three axis."
msgstr ""
"Размер каждого октанта измеряется в количестве ячеек. Это относится ко всем "
"трем осям."

msgid ""
"The scale of the cell items.\n"
"This does not affect the size of the grid cells themselves, only the items in "
"them. This can be used to make cell items overlap their neighbors."
msgstr ""
"Масштаб элементов ячеек.\n"
"Это не влияет на размер самих ячеек сетки, а только на элементы в них. Это "
"можно использовать, чтобы элементы ячеек перекрывали своих соседей."

msgid ""
"The dimensions of the grid's cells.\n"
"This does not affect the size of the meshes. See [member cell_scale]."
msgstr ""
"Размеры ячеек сетки.\n"
"Это не влияет на размер ячеек. См. [member cell_scale]."

msgid ""
"The physics layers this GridMap is in.\n"
"GridMaps act as static bodies, meaning they aren't affected by gravity or "
"other forces. They only affect other physics bodies that collide with them."
msgstr ""
"Физические слои, в которых находится этот GridMap.\n"
"GridMaps действуют как статические тела, то есть на них не влияет гравитация "
"или другие силы. Они влияют только на другие физические тела, которые "
"сталкиваются с ними."

msgid ""
"The physics layers this GridMap detects collisions in. See [url=$DOCS_URL/"
"tutorials/physics/physics_introduction.html#collision-layers-and-"
"masks]Collision layers and masks[/url] in the documentation for more "
"information."
msgstr ""
"Физические слои, в которых этот GridMap обнаруживает столкновения. Для "
"получения дополнительной информации см. [url=$DOCS_URL/tutorials/physics/"
"physics_introduction.html#collision-layers-and-masks]Слои и маски "
"столкновений[/url] в документации."

msgid "The assigned [MeshLibrary]."
msgstr "Присвоенный [MeshLibrary]."

msgid ""
"Overrides the default friction and bounce physics properties for the whole "
"[GridMap]."
msgstr ""
"Переопределяет физические свойства трения и отскока по умолчанию для всего "
"[GridMap]."

msgid "Emitted when [member cell_size] changes."
msgstr "Вызывается при изменении [member cell_size]."

msgid "Emitted when the [MeshLibrary] of this GridMap changes."
msgstr "Вызывается при изменении [MeshLibrary] данной GridMap."

msgid ""
"Invalid cell item that can be used in [method set_cell_item] to clear cells "
"(or represent an empty cell in [method get_cell_item])."
msgstr ""
"Недопустимый элемент ячейки, который можно использовать в [method "
"set_cell_item] для очистки ячеек (или представлять пустую ячейку в [method "
"get_cell_item])."

msgid "Editor for [GridMap] nodes."
msgstr "Редактор узлов [GridMap]."

msgid ""
"GridMapEditorPlugin provides access to the [GridMap] editor functionality."
msgstr ""
"GridMapEditorPlugin обеспечивает доступ к функциональным возможностям "
"редактора [GridMap]."

msgid "Deselects any currently selected cells."
msgstr "Отменяет выбор всех выбранных в данный момент ячеек."

msgid "Returns the [GridMap] node currently edited by the grid map editor."
msgstr ""
"Возвращает узел [GridMap], который в данный момент редактируется редактором "
"карты сетки."

msgid "Returns an array of [Vector3i]s with the selected cells' coordinates."
msgstr "Возвращает массив [Vector3i] с координатами выбранных ячеек."

msgid ""
"Returns the index of the selected [MeshLibrary] item in the grid map editor's "
"palette or [code]-1[/code] if no item is selected.\n"
"[b]Note:[/b] The indices might not be in the same order as they appear in the "
"editor's interface."
msgstr ""
"Возвращает индекс выбранного элемента [MeshLibrary] в палитре редактора карты "
"сетки или [code]-1[/code], если элемент не выбран.\n"
"[b]Примечание:[/b] Индексы могут быть не в том же порядке, в котором они "
"отображаются в интерфейсе редактора."

msgid ""
"Returns the cell coordinate bounds of the current selection. Use [method "
"has_selection] to check if there is an active selection."
msgstr ""
"Возвращает границы координат ячейки текущего выделения. Используйте [method "
"has_selection], чтобы проверить, есть ли активное выделение."

msgid "Returns [code]true[/code] if there are selected cells."
msgstr "Возвращает [code]true[/code], если есть выбранные ячейки."

msgid ""
"Selects the [MeshLibrary] item with the given index in the grid map editor's "
"palette. If a negative index is given, no item will be selected. If a value "
"greater than the last index is given, the last item will be selected.\n"
"[b]Note:[/b] The indices might not be in the same order as they appear in the "
"editor's interface."
msgstr ""
"Выбирает элемент [MeshLibrary] с указанным индексом в палитре редактора карты "
"сетки. Если указан отрицательный индекс, элемент не будет выбран. Если "
"указано значение, большее последнего индекса, будет выбран последний "
"элемент.\n"
"[b]Примечание:[/b] Индексы могут быть не в том же порядке, в котором они "
"отображаются в интерфейсе редактора."

msgid ""
"Selects the cells inside the given bounds from [param begin] to [param end]."
msgstr ""
"Выбирает ячейки внутри указанных границ от [param begin] до [param end]."

msgid ""
"A physics joint that restricts the movement of two 2D physics bodies to a "
"fixed axis."
msgstr ""
"Физический шарнир, ограничивающий движение двух двумерных физических тел "
"фиксированной осью."

msgid ""
"A physics joint that restricts the movement of two 2D physics bodies to a "
"fixed axis. For example, a [StaticBody2D] representing a piston base can be "
"attached to a [RigidBody2D] representing the piston head, moving up and down."
msgstr ""
"Физическое сочленение, ограничивающее движение двух 2D физических тел "
"фиксированной осью. Например, [StaticBody2D], представляющий основание "
"поршня, может быть присоединен к [RigidBody2D], представляющему головку "
"поршня, двигаясь вверх и вниз."

msgid ""
"The body B's initial anchor position defined by the joint's origin and a "
"local offset [member initial_offset] along the joint's Y axis (along the "
"groove)."
msgstr ""
"Начальное положение привязки тела B определяется началом координат сочленения "
"и локальным смещением [member initial_offset] вдоль оси Y сочленения (вдоль "
"канавки)."

msgid ""
"The groove's length. The groove is from the joint's origin towards [member "
"length] along the joint's local Y axis."
msgstr ""
"Длина канавки. Канавка идет от начала соединения по направлению к [member "
"length] вдоль локальной оси Y соединения."

msgid ""
"Provides functionality for computing cryptographic hashes chunk by chunk."
msgstr ""
"Предоставляет функциональность для вычисления криптографических хешей по "
"частям."

msgid ""
"The HashingContext class provides an interface for computing cryptographic "
"hashes over multiple iterations. Useful for computing hashes of big files (so "
"you don't have to load them all in memory), network streams, and data streams "
"in general (so you don't have to hold buffers).\n"
"The [enum HashType] enum shows the supported hashing algorithms.\n"
"[codeblocks]\n"
"[gdscript]\n"
"const CHUNK_SIZE = 1024\n"
"\n"
"func hash_file(path):\n"
"\t# Check that file exists.\n"
"\tif not FileAccess.file_exists(path):\n"
"\t\treturn\n"
"\t# Start an SHA-256 context.\n"
"\tvar ctx = HashingContext.new()\n"
"\tctx.start(HashingContext.HASH_SHA256)\n"
"\t# Open the file to hash.\n"
"\tvar file = FileAccess.open(path, FileAccess.READ)\n"
"\t# Update the context after reading each chunk.\n"
"\twhile file.get_position() < file.get_length():\n"
"\t\tvar remaining = file.get_length() - file.get_position()\n"
"\t\tctx.update(file.get_buffer(min(remaining, CHUNK_SIZE)))\n"
"\t# Get the computed hash.\n"
"\tvar res = ctx.finish()\n"
"\t# Print the result as hex string and array.\n"
"\tprintt(res.hex_encode(), Array(res))\n"
"[/gdscript]\n"
"[csharp]\n"
"public const int ChunkSize = 1024;\n"
"\n"
"public void HashFile(string path)\n"
"{\n"
"\t// Check that file exists.\n"
"\tif (!FileAccess.FileExists(path))\n"
"\t{\n"
"\t\treturn;\n"
"\t}\n"
"\t// Start an SHA-256 context.\n"
"\tvar ctx = new HashingContext();\n"
"\tctx.Start(HashingContext.HashType.Sha256);\n"
"\t// Open the file to hash.\n"
"\tusing var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);\n"
"\t// Update the context after reading each chunk.\n"
"\twhile (file.GetPosition() < file.GetLength())\n"
"\t{\n"
"\t\tint remaining = (int)(file.GetLength() - file.GetPosition());\n"
"\t\tctx.Update(file.GetBuffer(Mathf.Min(remaining, ChunkSize)));\n"
"\t}\n"
"\t// Get the computed hash.\n"
"\tbyte[] res = ctx.Finish();\n"
"\t// Print the result as hex string and array.\n"
"\tGD.PrintT(res.HexEncode(), (Variant)res);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Класс HashingContext предоставляет интерфейс для вычисления криптографических "
"хэшей в течение нескольких итераций. Полезно для вычисления хэшей больших "
"файлов (чтобы вам не приходилось загружать их все в память), сетевых потоков "
"и потоков данных в целом (чтобы вам не приходилось хранить буферы).\n"
"Перечисление [enum HashType] показывает поддерживаемые алгоритмы "
"хэширования.\n"
"[codeblocks]\n"
"[gdscript]\n"
"const CHUNK_SIZE = 1024\n"
"\n"
"func hash_file(path):\n"
"\t# Проверить, существует ли файл.\n"
"\tif not FileAccess.file_exists(path):\n"
"\t\treturn\n"
"\t# Запустить контекст SHA-256.\n"
"\tvar ctx = HashingContext.new()\n"
"\tctx.start(HashingContext.HASH_SHA256)\n"
"\t# Открыть файл для хэширования.\n"
"\tvar file = FileAccess.open(path, FileAccess.READ)\n"
"\t# Обновить контекст после прочтения каждого фрагмента.\n"
"\twhile file.get_position() < file.get_length():\n"
"\t\tvar remaining = file.get_length() - file.get_position()\n"
"\t\tctx.update(file.get_buffer(min(remaining, CHUNK_SIZE)))\n"
"\t# Получить вычисленный хэш.\n"
"\tvar res = ctx.finish()\n"
"\t# Вывести результат в виде шестнадцатеричной строки и массива.\n"
"\tprintt(res.hex_encode(), Array(res))\n"
"[/gdscript]\n"
"[csharp]\n"
"public const int ChunkSize = 1024;\n"
"\n"
"public void HashFile(string path)\n"
"{\n"
"\t// Проверить, существует ли файл.\n"
"\tif (!FileAccess.FileExists(path))\n"
"\t{\n"
"\t\treturn;\n"
"\t}\n"
"\t// Запустить контекст SHA-256.\n"
"\tvar ctx = new HashingContext();\n"
"\tctx.Start(HashingContext.HashType.Sha256);\n"
"\t// Открыть файл для хэширования.\n"
"\tusing var file = FileAccess.Open(path, FileAccess.ModeFlags.Read);\n"
"\t// Обновить контекст после прочтения каждого фрагмента.\n"
"\twhile (file.GetPosition() < file.GetLength())\n"
"\t{\n"
"\t\tint remaining = (int)(file.GetLength() - file.GetPosition());\n"
"\t\tctx.Update(file.GetBuffer(Mathf.Min(remaining, ChunkSize)));\n"
"\t}\n"
"\t// Получить вычисленный хэш.\n"
"\tbyte[] res = ctx.Finish();\n"
"\t// Вывести результат в виде шестнадцатеричной строки и массива.\n"
"\tGD.PrintT(res.HexEncode(), (Variant)res);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Closes the current context, and return the computed hash."
msgstr "Закрывает текущий контекст и возвращает вычисленный хэш."

msgid ""
"Starts a new hash computation of the given [param type] (e.g. [constant "
"HASH_SHA256] to start computation of an SHA-256)."
msgstr ""
"Запускает новое вычисление хэша указанного [param type] (например, [constant "
"HASH_SHA256] для запуска вычисления SHA-256)."

msgid "Updates the computation with the given [param chunk] of data."
msgstr "Обновляет вычисление с использованием указанного [param chunk] данных."

msgid "Hashing algorithm: MD5."
msgstr "Алгоритм хэширования: MD5."

msgid "Hashing algorithm: SHA-1."
msgstr "Алгоритм хэширования: SHA-1."

msgid "Hashing algorithm: SHA-256."
msgstr "Алгоритм хэширования: SHA-256."

msgid "A container that arranges its child controls horizontally."
msgstr ""
"Контейнер, который располагает дочерние элементы управления горизонтально."

msgid ""
"A variant of [BoxContainer] that can only arrange its child controls "
"horizontally. Child controls are rearranged automatically when their minimum "
"size changes."
msgstr ""
"Вариант [BoxContainer], который может размещать дочерние элементы управления "
"только горизонтально. Дочерние элементы управления автоматически "
"перестраиваются при изменении их минимального размера."

msgid "A 3D height map shape used for physics collision."
msgstr "Форма трехмерной карты высот, используемая для физики столкновений."

msgid ""
"A 3D heightmap shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape3D]. This type is most commonly used for terrain "
"with vertices placed in a fixed width grid. Due to the nature of the "
"heightmap, it cannot be used to model overhangs or caves, which would require "
"multiple vertices at the same vertical location. Holes can be punched through "
"the collision by assigning [constant @GDScript.NAN] to the height of the "
"desired vertices (this is supported in both GodotPhysics3D and Jolt Physics). "
"You could then insert meshes with their own separate collision to provide "
"overhangs, caves, and so on.\n"
"[b]Performance:[/b] [HeightMapShape3D] is faster to check collisions against "
"than [ConcavePolygonShape3D], but it is significantly slower than primitive "
"shapes like [BoxShape3D].\n"
"A heightmap collision shape can also be built by using an [Image] reference:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var heightmap_texture = ResourceLoader.load(\"res://heightmap_image.exr\")\n"
"var heightmap_image = heightmap_texture.get_image()\n"
"heightmap_image.convert(Image.FORMAT_RF)\n"
"\n"
"var height_min = 0.0\n"
"var height_max = 10.0\n"
"\n"
"update_map_data_from_image(heightmap_image, height_min, height_max)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Форма карты высот 3D, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape3D]. Этот тип чаще "
"всего используется для ландшафта с вершинами, размещенными в сетке "
"фиксированной ширины. Из-за природы карты высот ее нельзя использовать для "
"моделирования выступов или пещер, для которых потребовалось бы несколько "
"вершин в одном и том же вертикальном положении. Отверстия можно пробить через "
"столкновение, назначив [constant @GDScript.NAN] высоте желаемых вершин (это "
"поддерживается как в GodotPhysics3D, так и в Jolt Physics). Затем вы можете "
"вставить сетки с их собственным отдельным столкновением, чтобы предоставить "
"выступы, пещеры и т. д.\n"
"[b]Производительность:[/b] [HeightMapShape3D] быстрее проверяет столкновения, "
"чем [ConcavePolygonShape3D], но он значительно медленнее, чем примитивные "
"формы, такие как [BoxShape3D].\n"
"Форму столкновения карты высот также можно построить с помощью ссылки "
"[Image]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var heightmap_texture = ResourceLoader.load(\"res://heightmap_image.exr\")\n"
"var heightmap_image = heightmap_texture.get_image()\n"
"heightmap_image.convert(Image.FORMAT_RF)\n"
"\n"
"var height_min = 0.0\n"
"var height_max = 10.0\n"
"\n"
"update_map_data_from_image(heightmap_image, height_min, height_max)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Returns the largest height value found in [member map_data]. Recalculates "
"only when [member map_data] changes."
msgstr ""
"Возвращает наибольшее значение высоты, найденное в [member map_data]. "
"Пересчитывает только при изменении [member map_data]."

msgid ""
"Returns the smallest height value found in [member map_data]. Recalculates "
"only when [member map_data] changes."
msgstr ""
"Возвращает наименьшее значение высоты, найденное в [member map_data]. "
"Пересчитывает только при изменении [member map_data]."

msgid ""
"Updates [member map_data] with data read from an [Image] reference. "
"Automatically resizes heightmap [member map_width] and [member map_depth] to "
"fit the full image width and height.\n"
"The image needs to be in either [constant Image.FORMAT_RF] (32 bit), "
"[constant Image.FORMAT_RH] (16 bit), or [constant Image.FORMAT_R8] (8 bit).\n"
"Each image pixel is read in as a float on the range from [code]0.0[/code] "
"(black pixel) to [code]1.0[/code] (white pixel). This range value gets "
"remapped to [param height_min] and [param height_max] to form the final "
"height value.\n"
"[b]Note:[/b] Using a heightmap with 16-bit or 32-bit data, stored in EXR or "
"HDR format is recommended. Using 8-bit height data, or a format like PNG that "
"Godot imports as 8-bit, will result in a terraced terrain."
msgstr ""
"Обновляет [member map_data] данными, считанными из ссылки [Image]. "
"Автоматически изменяет размер карты высот [member map_width] и [member "
"map_depth] для соответствия полной ширине и высоте изображения.\n"
"Изображение должно быть в [constant Image.FORMAT_RF] (32 бита), [constant "
"Image.FORMAT_RH] (16 бит) или [constant Image.FORMAT_R8] (8 бит).\n"
"Каждый пиксель изображения считывается как число с плавающей точкой в "
"диапазоне от [code]0.0[/code] (черный пиксель) до [code]1.0[/code] (белый "
"пиксель). Это значение диапазона переназначается на [param height_min] и "
"[param height_max] для формирования окончательного значения высоты.\n"
"[b]Примечание:[/b] Рекомендуется использовать карту высот с 16-битными или 32-"
"битными данными, сохраненными в формате EXR или HDR. Использование 8-битных "
"данных о высоте или формата, подобного PNG, который Godot импортирует как 8-"
"битный, приведет к созданию террасного рельефа."

msgid ""
"Height map data. The array's size must be equal to [member map_width] "
"multiplied by [member map_depth]."
msgstr ""
"Данные карты высот. Размер массива должен быть равен [member map_width], "
"умноженному на [member map_depth]."

msgid ""
"Number of vertices in the depth of the height map. Changing this will resize "
"the [member map_data]."
msgstr ""
"Количество вершин в глубине карты высот. Изменение этого параметра изменит "
"размер [member map_data]."

msgid ""
"Number of vertices in the width of the height map. Changing this will resize "
"the [member map_data]."
msgstr ""
"Количество вершин в ширине карты высот. Изменение этого параметра изменит "
"размер [member map_data]."

msgid ""
"A container that arranges its child controls horizontally and wraps them "
"around at the borders."
msgstr ""
"Контейнер, который располагает свои дочерние элементы управления "
"горизонтально и оборачивает их по краям."

msgid ""
"A variant of [FlowContainer] that can only arrange its child controls "
"horizontally, wrapping them around at the borders. This is similar to how "
"text in a book wraps around when no more words can fit on a line."
msgstr ""
"Вариант [FlowContainer], который может размещать свои дочерние элементы "
"управления только горизонтально, оборачивая их по границам. Это похоже на то, "
"как текст в книге оборачивается, когда на строке больше не помещается ни "
"одного слова."

msgid ""
"A physics joint that restricts the rotation of a 3D physics body around an "
"axis relative to another physics body."
msgstr ""
"Физический сустав, ограничивающий вращение трехмерного физического тела "
"вокруг оси относительно другого физического тела."

msgid ""
"A physics joint that restricts the rotation of a 3D physics body around an "
"axis relative to another physics body. For example, Body A can be a "
"[StaticBody3D] representing a door hinge that a [RigidBody3D] rotates around."
msgstr ""
"Физический сустав, который ограничивает вращение трехмерного физического тела "
"вокруг оси относительно другого физического тела. Например, Тело A может быть "
"[StaticBody3D], представляющим дверную петлю, вокруг которой вращается "
"[RigidBody3D]."

msgid "Returns the value of the specified flag."
msgstr "Возвращает значение указанного флага."

msgid "If [code]true[/code], enables the specified flag."
msgstr "Если [code]true[/code], включает указанный флаг."

msgid ""
"The speed with which the rotation across the axis perpendicular to the hinge "
"gets corrected."
msgstr ""
"Скорость, с которой корректируется вращение по оси, перпендикулярной шарниру."

msgid ""
"If [code]true[/code], the hinges maximum and minimum rotation, defined by "
"[member angular_limit/lower] and [member angular_limit/upper] has effects."
msgstr ""
"Если [code]true[/code], то максимальный и минимальный поворот шарниров, "
"определяемый [member angular_limit/lower] и [member angular_limit/upper], "
"имеет значение."

msgid ""
"The minimum rotation. Only active if [member angular_limit/enable] is "
"[code]true[/code]."
msgstr ""
"Минимальное вращение. Активно только если [member angular_limit/enable] равен "
"[code]true[/code]."

msgid "The lower this value, the more the rotation gets slowed down."
msgstr "Чем ниже это значение, тем сильнее замедляется вращение."

msgid ""
"This property is never set by the engine and is kept for compatibility "
"purposes."
msgstr ""
"Это свойство никогда не устанавливается движком и сохраняется в целях "
"совместимости."

msgid ""
"The maximum rotation. Only active if [member angular_limit/enable] is "
"[code]true[/code]."
msgstr ""
"Максимальное вращение. Активно только если [member angular_limit/enable] "
"равен [code]true[/code]."

msgid "When activated, a motor turns the hinge."
msgstr "При активации двигатель поворачивает шарнир."

msgid "Maximum acceleration for the motor."
msgstr "Максимальное ускорение двигателя."

msgid "Target speed for the motor."
msgstr "Целевая скорость двигателя."

msgid ""
"The speed with which the two bodies get pulled together when they move in "
"different directions."
msgstr ""
"Скорость, с которой два тела притягиваются друг к другу, когда они движутся в "
"разных направлениях."

msgid ""
"This property is never used by the engine and is kept for compatibility "
"purpose."
msgstr ""
"Это свойство никогда не используется движком и сохраняется в целях "
"совместимости."

msgid "Used to create an HMAC for a message using a key."
msgstr "Используется для создания HMAC для сообщения с использованием ключа."

msgid ""
"The HMACContext class is useful for advanced HMAC use cases, such as "
"streaming the message as it supports creating the message over time rather "
"than providing it all at once.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"var ctx = HMACContext.new()\n"
"\n"
"func _ready():\n"
"\tvar key = \"supersecret\".to_utf8_buffer()\n"
"\tvar err = ctx.start(HashingContext.HASH_SHA256, key)\n"
"\tassert(err == OK)\n"
"\tvar msg1 = \"this is \".to_utf8_buffer()\n"
"\tvar msg2 = \"super duper secret\".to_utf8_buffer()\n"
"\terr = ctx.update(msg1)\n"
"\tassert(err == OK)\n"
"\terr = ctx.update(msg2)\n"
"\tassert(err == OK)\n"
"\tvar hmac = ctx.finish()\n"
"\tprint(hmac.hex_encode())\n"
"\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate HmacContext _ctx = new HmacContext();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tbyte[] key = \"supersecret\".ToUtf8Buffer();\n"
"\t\tError err = _ctx.Start(HashingContext.HashType.Sha256, key);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\tbyte[] msg1 = \"this is \".ToUtf8Buffer();\n"
"\t\tbyte[] msg2 = \"super duper secret\".ToUtf8Buffer();\n"
"\t\terr = _ctx.Update(msg1);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\terr = _ctx.Update(msg2);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\tbyte[] hmac = _ctx.Finish();\n"
"\t\tGD.Print(hmac.HexEncode());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Класс HMACContext полезен для расширенных вариантов использования HMAC, таких "
"как потоковая передача сообщений, поскольку он поддерживает создание "
"сообщений с течением времени, а не предоставляет их все сразу.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"var ctx = HMACContext.new()\n"
"\n"
"func _ready():\n"
"\tvar key = \"supersecret\".to_utf8_buffer()\n"
"\tvar err = ctx.start(HashingContext.HASH_SHA256, key)\n"
"\tassert(err == OK)\n"
"\tvar msg1 = \"this is \".to_utf8_buffer()\n"
"\tvar msg2 = \"super duper secret\".to_utf8_buffer()\n"
"\terr = ctx.update(msg1)\n"
"\tassert(err == OK)\n"
"\terr = ctx.update(msg2)\n"
"\tassert(err == OK)\n"
"\tvar hmac = ctx.finish()\n"
"\tprint(hmac.hex_encode())\n"
"\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"using System.Diagnostics;\n"
"\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate HmacContext _ctx = new HmacContext();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tbyte[] key = \"supersecret\".ToUtf8Buffer();\n"
"\t\tError err = _ctx.Start(HashingContext.HashType.Sha256, key);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\tbyte[] msg1 = \"this is \".ToUtf8Buffer();\n"
"\t\tbyte[] msg2 = \"super duper secret\".ToUtf8Buffer();\n"
"\t\terr = _ctx.Update(msg1);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\terr = _ctx.Update(msg2);\n"
"\t\tDebug.Assert(err == Error.Ok);\n"
"\t\tbyte[] hmac = _ctx.Finish();\n"
"\t\tGD.Print(hmac.HexEncode());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the resulting HMAC. If the HMAC failed, an empty [PackedByteArray] is "
"returned."
msgstr ""
"Возвращает полученный HMAC. Если HMAC не удалось, возвращается пустой "
"[PackedByteArray]."

msgid ""
"Initializes the HMACContext. This method cannot be called again on the same "
"HMACContext until [method finish] has been called."
msgstr ""
"Инициализирует HMACContext. Этот метод не может быть вызван снова для того же "
"HMACContext, пока не будет вызван [method finish]."

msgid ""
"Updates the message to be HMACed. This can be called multiple times before "
"[method finish] is called to append [param data] to the message, but cannot "
"be called until [method start] has been called."
msgstr ""
"Обновляет сообщение, чтобы оно было HMACed. Это может быть вызвано несколько "
"раз до вызова [method finish] для добавления [param data] к сообщению, но не "
"может быть вызвано до вызова [method start]."

msgid "A horizontal scrollbar that goes from left (min) to right (max)."
msgstr "Горизонтальная полоса прокрутки, идущая слева (мин.) направо (макс.)."

msgid ""
"A horizontal scrollbar, typically used to navigate through content that "
"extends beyond the visible width of a control. It is a [Range]-based control "
"and goes from left (min) to right (max)."
msgstr ""
"Горизонтальная полоса прокрутки, обычно используемая для навигации по "
"содержимому, выходящему за пределы видимой ширины элемента управления. Это "
"элемент управления на основе [Range] и идет слева (min) направо (max)."

msgid "A horizontal line used for separating other controls."
msgstr ""
"Горизонтальная линия, используемая для разделения других элементов управления."

msgid ""
"A horizontal separator used for separating other controls that are arranged "
"[b]vertically[/b]. [HSeparator] is purely visual and normally drawn as a "
"[StyleBoxLine]."
msgstr ""
"Горизонтальный разделитель, используемый для разделения других элементов "
"управления, расположенных [b]вертикально[/b]. [HSeparator] является чисто "
"визуальным и обычно отображается как [StyleBoxLine]."

msgid "A horizontal slider that goes from left (min) to right (max)."
msgstr "Горизонтальный ползунок, перемещающийся слева (мин) направо (макс)."

msgid ""
"A horizontal slider, used to adjust a value by moving a grabber along a "
"horizontal axis. It is a [Range]-based control and goes from left (min) to "
"right (max)."
msgstr ""
"Горизонтальный ползунок, используемый для регулировки значения путем "
"перемещения захвата вдоль горизонтальной оси. Это элемент управления на "
"основе [Range] и идет слева (мин.) направо (макс.)."

msgid ""
"A container that splits two child controls horizontally and provides a "
"grabber for adjusting the split ratio."
msgstr ""
"Контейнер, который разделяет два дочерних элемента управления по горизонтали "
"и предоставляет захват для настройки соотношения разделения."

msgid ""
"A container that accepts only two child controls, then arranges them "
"horizontally and creates a divisor between them. The divisor can be dragged "
"around to change the size relation between the child controls."
msgstr ""
"Контейнер, который принимает только два дочерних элемента управления, затем "
"размещает их горизонтально и создает между ними разделитель. Разделитель "
"можно перетаскивать, чтобы изменить соотношение размеров дочерних элементов "
"управления."

msgid "Low-level hyper-text transfer protocol client."
msgstr "Клиент низкоуровневого протокола передачи гипертекста."

msgid ""
"Hyper-text transfer protocol client (sometimes called \"User Agent\"). Used "
"to make HTTP requests to download web content, upload files and other data or "
"to communicate with various services, among other use cases.\n"
"See the [HTTPRequest] node for a higher-level alternative.\n"
"[b]Note:[/b] This client only needs to connect to a host once (see [method "
"connect_to_host]) to send multiple requests. Because of this, methods that "
"take URLs usually take just the part after the host instead of the full URL, "
"as the client is already connected to a host. See [method request] for a full "
"example and to get started.\n"
"An [HTTPClient] should be reused between multiple requests or to connect to "
"different hosts instead of creating one client per request. Supports "
"Transport Layer Security (TLS), including server certificate verification. "
"HTTP status codes in the 2xx range indicate success, 3xx redirection (i.e. "
"\"try again, but over here\"), 4xx something was wrong with the request, and "
"5xx something went wrong on the server's side.\n"
"For more information on HTTP, see [url=https://developer.mozilla.org/en-US/"
"docs/Web/HTTP]MDN's documentation on HTTP[/url] (or read [url=https://"
"tools.ietf.org/html/rfc2616]RFC 2616[/url] to get it straight from the "
"source).\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android.\n"
"[b]Note:[/b] It's recommended to use transport encryption (TLS) and to avoid "
"sending sensitive information (such as login credentials) in HTTP GET URL "
"parameters. Consider using HTTP POST requests or HTTP headers for such "
"information instead.\n"
"[b]Note:[/b] When performing HTTP requests from a project exported to Web, "
"keep in mind the remote server may not allow requests from foreign origins "
"due to [url=https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS]CORS[/"
"url]. If you host the server in question, you should modify its backend to "
"allow requests from foreign origins by adding the [code]Access-Control-Allow-"
"Origin: *[/code] HTTP header.\n"
"[b]Note:[/b] TLS support is currently limited to TLSv1.2 and TLSv1.3. "
"Attempting to connect to a server that only supports older (insecure) TLS "
"versions will return an error.\n"
"[b]Warning:[/b] TLS certificate revocation and certificate pinning are "
"currently not supported. Revoked certificates are accepted as long as they "
"are otherwise valid. If this is a concern, you may want to use automatically "
"managed certificates with a short validity period."
msgstr ""
"Клиент протокола передачи гипертекста (иногда называемый \"User Agent\"). "
"Используется для выполнения HTTP-запросов на загрузку веб-контента, выгрузку "
"файлов и других данных, а также для взаимодействия с различными службами, "
"среди прочего.\n"
"Альтернативу более высокого уровня см. в узле [HTTPRequest].\n"
"[b]Примечание:[/b] Этому клиенту достаточно подключиться к хосту один раз "
"(см. [method connect_to_host]) для отправки нескольких запросов. По этой "
"причине методы, принимающие URL-адреса, обычно берут только часть после "
"хоста, а не полный URL-адрес, поскольку клиент уже подключен к хосту. Полный "
"пример и инструкции по началу работы см. в [method request].\n"
"[HTTPClient] следует использовать повторно между несколькими запросами или "
"для подключения к разным хостам вместо создания одного клиента на каждый "
"запрос. Поддерживает протокол Transport Layer Security (TLS), включая "
"проверку сертификата сервера. Коды статуса HTTP в диапазоне 2xx указывают на "
"успешное выполнение, 3xx — на перенаправление (т. е. «попробуйте еще раз, но "
"здесь»), 4xx — на ошибку в запросе и 5xx — на ошибку на стороне сервера.\n"
"Для получения дополнительной информации о HTTP см. [url=https://"
"developer.mozilla.org/en-US/docs/Web/HTTP]MDN's documentation on HTTP[/url] "
"(или прочитайте [url=https://tools.ietf.org/html/rfc2616]RFC 2616[/url] чтобы "
"получить прямо из источника).\n"
"[b]Примечание:[/b] При экспорте на Android убедитесь, что в настройках "
"экспорта Android включено разрешение [code]INTERNET[/code] перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"Android будет блокировать любые сетевые соединения.\n"
"[b]Примечание:[/b] Рекомендуется использовать транспортное шифрование (TLS) и "
"избегать передачи конфиденциальной информации (например, учётных данных) в "
"параметрах URL HTTP GET. Вместо этого рассмотрите возможность использования "
"HTTP POST-запросов или HTTP-заголовков для передачи такой информации.\n"
"[b]Примечание:[/b] При выполнении HTTP-запросов из проекта, экспортированного "
"в Интернет, помните, что удаленный сервер может не разрешать запросы из "
"внешних источников из-за [url=https://developer.mozilla.org/en-US/docs/Web/"
"HTTP/CORS]CORS[/url]. Если вы размещаете рассматриваемый сервер, вам следует "
"изменить его бэкэнд, чтобы разрешить запросы из внешних источников, добавив "
"HTTP-заголовок [code]Access-Control-Allow-Origin: *[/code].\n"
"[b]Примечание:[/b] Поддержка TLS в настоящее время ограничена протоколами "
"TLSv1.2 и TLSv1.3. Попытка подключения к серверу, поддерживающему только "
"старые (небезопасные) версии TLS, приведёт к ошибке.\n"
"[b]Внимание:[/b] Отзыв и закрепление TLS-сертификатов в настоящее время не "
"поддерживаются. Отозванные сертификаты принимаются, если они в остальном "
"действительны. Если это вас беспокоит, рекомендуем использовать автоматически "
"управляемые сертификаты с коротким сроком действия."

msgid "HTTP client class"
msgstr "Класс HTTP-клиента"

msgid "TLS certificates"
msgstr "TLS-сертификаты"

msgid "Closes the current connection, allowing reuse of this [HTTPClient]."
msgstr ""
"Закрывает текущее соединение, позволяя повторно использовать этот "
"[HTTPClient]."

msgid ""
"Connects to a host. This needs to be done before any requests are sent.\n"
"If no [param port] is specified (or [code]-1[/code] is used), it is "
"automatically set to 80 for HTTP and 443 for HTTPS. You can pass the optional "
"[param tls_options] parameter to customize the trusted certification "
"authorities, or the common name verification when using HTTPS. See [method "
"TLSOptions.client] and [method TLSOptions.client_unsafe]."
msgstr ""
"Подключается к хосту. Это необходимо сделать до отправки любых запросов.\n"
"Если [param port] не указан (или используется [code]-1[/code], он "
"автоматически устанавливается на 80 для HTTP и 443 для HTTPS. Вы можете "
"передать необязательный параметр [param tls_options], чтобы настроить "
"доверенные центры сертификации или проверку общего имени при использовании "
"HTTPS. См. [method TLSOptions.client] и [method TLSOptions.client_unsafe]."

msgid ""
"Returns the response's body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
"value returned will be [code]-1[/code]. If using chunked transfer encoding, "
"the body length will also be [code]-1[/code].\n"
"[b]Note:[/b] This function always returns [code]-1[/code] on the Web platform "
"due to browsers limitations."
msgstr ""
"Возвращает длину тела ответа.\n"
"[b]Примечание:[/b] Некоторые веб-серверы могут не отправлять длину тела. В "
"этом случае возвращаемое значение будет [code]-1[/code]. При использовании "
"кодирования передачи по частям длина тела также будет [code]-1[/code].\n"
"[b]Примечание:[/b] Эта функция всегда возвращает [code]-1[/code] на веб-"
"платформе из-за ограничений браузеров."

msgid "Returns the response's HTTP status code."
msgstr "Возвращает код статуса HTTP ответа."

msgid "Returns the response headers."
msgstr "Возвращает заголовки ответа."

msgid ""
"Returns all response headers as a [Dictionary]. Each entry is composed by the "
"header name, and a [String] containing the values separated by [code]\"; \"[/"
"code]. The casing is kept the same as the headers were received.\n"
"[codeblock]\n"
"{\n"
"\t\"content-length\": 12,\n"
"\t\"Content-Type\": \"application/json; charset=UTF-8\",\n"
"}\n"
"[/codeblock]"
msgstr ""
"Возвращает все заголовки ответа в виде [Dictionary]. Каждая запись состоит из "
"имени заголовка и [String], содержащей значения, разделенные [code]\"; \"[/"
"code]. Регистр сохраняется таким же, как и при получении заголовков.\n"
"[codeblock]\n"
"{\n"
"\t\"content-length\": 12,\n"
"\t\"Content-Type\": \"application/json; charset=UTF-8\",\n"
"}\n"
"[/codeblock]"

msgid ""
"Returns a [enum Status] constant. Need to call [method poll] in order to get "
"status updates."
msgstr ""
"Возвращает константу [enum Status]. Необходимо вызвать [method poll], чтобы "
"получить обновления статуса."

msgid "If [code]true[/code], this [HTTPClient] has a response available."
msgstr "Если [code]true[/code], этот [HTTPClient] имеет доступный ответ."

msgid "If [code]true[/code], this [HTTPClient] has a response that is chunked."
msgstr ""
"Если [code]true[/code], этот [HTTPClient] имеет ответ, который разбит на "
"фрагменты."

msgid ""
"This needs to be called in order to have any request processed. Check results "
"with [method get_status]."
msgstr ""
"Это необходимо вызвать, чтобы обработать любой запрос. Проверьте результаты с "
"помощью [method get_status]."

msgid ""
"Generates a GET/POST application/x-www-form-urlencoded style query string "
"from a provided dictionary, e.g.:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"username\": \"user\", \"password\": \"pass\" }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"# Returns \"username=user&password=pass\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary { { \"username\", \"user\" }, "
"{ \"password\", \"pass\" } };\n"
"string queryString = httpClient.QueryStringFromDict(fields);\n"
"// Returns \"username=user&password=pass\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Furthermore, if a key has a [code]null[/code] value, only the key itself is "
"added, without equal sign and value. If the value is an array, for each value "
"in it a pair with the same key is added.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"single\": 123, \"not_valued\": null, \"multiple\": [22, 33, "
"44] }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"# Returns \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"single\", 123 },\n"
"\t{ \"notValued\", default },\n"
"\t{ \"multiple\", new Godot.Collections.Array { 22, 33, 44 } },\n"
"};\n"
"string queryString = httpClient.QueryStringFromDict(fields);\n"
"// Returns \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Формирует строку запроса в стиле GET/POST application/x-www-form-urlencoded "
"из предоставленного словаря, например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"username\": \"user\", \"password\": \"pass\" }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"# Возвращает \"username=user&password=pass\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary { { \"username\", \"user\" }, "
"{ \"password\", \"pass\" } };\n"
"string queryString = httpClient.QueryStringFromDict(fields);\n"
"// Возвращает \"username=user&password=pass\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Более того, если ключ имеет значение [code]null[/code], добавляется только "
"сам ключ, без знака равенства и значения. Если значение — массив, для каждого "
"значения в нём добавляется пара с тем же ключом.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"single\": 123, \"not_valued\": null, \"multiple\": [22, 33, "
"44] }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"# Возвращает \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"single\", 123 },\n"
"\t{ \"notValued\", default },\n"
"\t{ \"multiple\", new Godot.Collections.Array { 22, 33, 44 } },\n"
"};\n"
"string queryString = httpClient.QueryStringFromDict(fields);\n"
"// Возвращает \"single=123&not_valued&multiple=22&multiple=33&multiple=44\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Reads one chunk from the response."
msgstr "Считывает один фрагмент ответа."

msgid ""
"Sends an HTTP request to the connected host with the given [param method].\n"
"The URL parameter is usually just the part after the host, so for "
"[code]https://example.com/index.php[/code], it is [code]/index.php[/code]. "
"When sending requests to an HTTP proxy server, it should be an absolute URL. "
"For [constant HTTPClient.METHOD_OPTIONS] requests, [code]*[/code] is also "
"allowed. For [constant HTTPClient.METHOD_CONNECT] requests, it should be the "
"authority component ([code]host:port[/code]).\n"
"[param headers] are HTTP request headers.\n"
"To create a POST request with query strings to push to the server, do:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"username\": \"user\", \"password\": \"pass\" }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"var headers = [\"Content-Type: application/x-www-form-urlencoded\", \"Content-"
"Length: \" + str(query_string.length())]\n"
"var result = http_client.request(http_client.METHOD_POST, \"/index.php\", "
"headers, query_string)\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary { { \"username\", \"user\" }, "
"{ \"password\", \"pass\" } };\n"
"string queryString = new HttpClient().QueryStringFromDict(fields);\n"
"string[] headers = [\"Content-Type: application/x-www-form-urlencoded\", $"
"\"Content-Length: {queryString.Length}\"];\n"
"var result = new HttpClient().Request(HttpClient.Method.Post, \"index.php\", "
"headers, queryString);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] The [param body] parameter is ignored if [param method] is "
"[constant HTTPClient.METHOD_GET]. This is because GET methods can't contain "
"request data. As a workaround, you can pass request data as a query string in "
"the URL. See [method String.uri_encode] for an example."
msgstr ""
"Отправляет HTTP-запрос к подключенному хосту с заданным методом [param "
"method].\n"
"Параметр URL обычно представляет собой только часть, следующую за хостом, "
"например, для [code]https://example.com/index.php[/code] это [code]/"
"index.php[/code]. При отправке запросов к HTTP-прокси-серверу это должен быть "
"абсолютный URL. Для запросов [constant HTTPClient.METHOD_OPTIONS] также "
"допускается [code]*[/code]. Для запросов [constant HTTPClient.METHOD_CONNECT] "
"это должен быть компонент полномочий ([code]host:port[/code]).\n"
"[param headers] — это заголовки HTTP-запроса.\n"
"Чтобы создать POST-запрос со строками запроса для отправки на сервер, "
"выполните:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fields = { \"username\": \"user\", \"password\": \"pass\" }\n"
"var query_string = http_client.query_string_from_dict(fields)\n"
"var headers = [\"Content-Type: application/x-www-form-urlencoded\", \"Content-"
"Length: \" + str(query_string.length())]\n"
"var result = http_client.request(http_client.METHOD_POST, \"/index.php\", "
"headers, query_string)\n"
"[/gdscript]\n"
"[csharp]\n"
"var fields = new Godot.Collections.Dictionary { { \"username\", \"user\" }, "
"{ \"password\", \"pass\" } };\n"
"string queryString = new HttpClient().QueryStringFromDict(fields);\n"
"string[] headers = [\"Content-Type: application/x-www-form-urlencoded\", $"
"\"Content-Length: {queryString.Length}\"];\n"
"var result = new HttpClient().Request(HttpClient.Method.Post, \"index.php\", "
"headers, queryString);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Параметр [param body] игнорируется, если [param method] — "
"это [constant HTTPClient.METHOD_GET]. Это связано с тем, что методы GET не "
"могут содержать данные запроса. В качестве обходного решения можно передать "
"данные запроса в виде строки запроса в URL. См. пример в [method "
"String.uri_encode]."

msgid ""
"Sends a raw HTTP request to the connected host with the given [param "
"method].\n"
"The URL parameter is usually just the part after the host, so for "
"[code]https://example.com/index.php[/code], it is [code]/index.php[/code]. "
"When sending requests to an HTTP proxy server, it should be an absolute URL. "
"For [constant HTTPClient.METHOD_OPTIONS] requests, [code]*[/code] is also "
"allowed. For [constant HTTPClient.METHOD_CONNECT] requests, it should be the "
"authority component ([code]host:port[/code]).\n"
"[param headers] are HTTP request headers.\n"
"Sends the body data raw, as a byte array and does not encode it in any way."
msgstr ""
"Отправляет необработанный HTTP-запрос на подключенный хост с заданным [param "
"method].\n"
"Параметр URL обычно представляет собой только часть после хоста, поэтому для "
"[code]https://example.com/index.php[/code] это [code]/index.php[/code]. При "
"отправке запросов на HTTP-прокси-сервер это должен быть абсолютный URL. Для "
"запросов [constant HTTPClient.METHOD_OPTIONS] также допускается [code]*[/"
"code]. Для запросов [constant HTTPClient.METHOD_CONNECT] это должен быть "
"компонент полномочий ([code]host:port[/code]).\n"
"[param headers] — это заголовки HTTP-запроса.\n"
"Отправляет данные body необработанными, как массив байтов, и никак их не "
"кодирует."

msgid ""
"Sets the proxy server for HTTP requests.\n"
"The proxy server is unset if [param host] is empty or [param port] is -1."
msgstr ""
"Устанавливает прокси-сервер для HTTP-запросов.\n"
"Прокси-сервер не установлен, если [param host] пуст или [param port] равен -1."

msgid ""
"Sets the proxy server for HTTPS requests.\n"
"The proxy server is unset if [param host] is empty or [param port] is -1."
msgstr ""
"Устанавливает прокси-сервер для HTTPS-запросов.\n"
"Прокси-сервер не установлен, если [param host] пуст или [param port] равен -1."

msgid ""
"If [code]true[/code], execution will block until all data is read from the "
"response."
msgstr ""
"Если [code]true[/code], выполнение будет заблокировано до тех пор, пока все "
"данные не будут прочитаны из ответа."

msgid "The connection to use for this client."
msgstr "Соединение, которое будет использоваться для этого клиента."

msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[method read_response_body_chunk]."
msgstr ""
"Размер используемого буфера и максимальное количество байтов для чтения за "
"одну итерацию. См. [method read_response_body_chunk]."

msgid ""
"HTTP GET method. The GET method requests a representation of the specified "
"resource. Requests using GET should only retrieve data."
msgstr ""
"Метод HTTP GET. Метод GET запрашивает представление указанного ресурса. "
"Запросы с использованием GET должны только извлекать данные."

msgid ""
"HTTP HEAD method. The HEAD method asks for a response identical to that of a "
"GET request, but without the response body. This is useful to request "
"metadata like HTTP headers or to check if a resource exists."
msgstr ""
"Метод HTTP HEAD. Метод HEAD запрашивает ответ, идентичный ответу запроса GET, "
"но без тела ответа. Это полезно для запроса метаданных, таких как заголовки "
"HTTP, или для проверки существования ресурса."

msgid ""
"HTTP POST method. The POST method is used to submit an entity to the "
"specified resource, often causing a change in state or side effects on the "
"server. This is often used for forms and submitting data or uploading files."
msgstr ""
"Метод HTTP POST. Метод POST используется для отправки сущности на указанный "
"ресурс, часто вызывая изменение состояния или побочные эффекты на сервере. "
"Это часто используется для форм и отправки данных или загрузки файлов."

msgid ""
"HTTP PUT method. The PUT method asks to replace all current representations "
"of the target resource with the request payload. (You can think of POST as "
"\"create or update\" and PUT as \"update\", although many services tend to "
"not make a clear distinction or change their meaning)."
msgstr ""
"Метод HTTP PUT. Метод PUT запрашивает замену всех текущих представлений "
"целевого ресурса полезной нагрузкой запроса. (Вы можете думать о POST как о "
"«создании или обновлении», а PUT как о «обновлении», хотя многие сервисы, как "
"правило, не делают четкого различия или не меняют их значение)."

msgid ""
"HTTP DELETE method. The DELETE method requests to delete the specified "
"resource."
msgstr ""
"Метод HTTP DELETE. Метод DELETE запрашивает удаление указанного ресурса."

msgid ""
"HTTP OPTIONS method. The OPTIONS method asks for a description of the "
"communication options for the target resource. Rarely used."
msgstr ""
"Метод HTTP OPTIONS. Метод OPTIONS запрашивает описание параметров связи для "
"целевого ресурса. Используется редко."

msgid ""
"HTTP TRACE method. The TRACE method performs a message loop-back test along "
"the path to the target resource. Returns the entire HTTP request received in "
"the response body. Rarely used."
msgstr ""
"Метод HTTP TRACE. Метод TRACE выполняет проверку обратной связи сообщения по "
"пути к целевому ресурсу. Возвращает весь полученный HTTP-запрос в теле "
"ответа. Используется редко."

msgid ""
"HTTP CONNECT method. The CONNECT method establishes a tunnel to the server "
"identified by the target resource. Rarely used."
msgstr ""
"Метод HTTP CONNECT. Метод CONNECT устанавливает туннель к серверу, "
"идентифицированному целевым ресурсом. Используется редко."

msgid ""
"HTTP PATCH method. The PATCH method is used to apply partial modifications to "
"a resource."
msgstr ""
"Метод HTTP PATCH. Метод PATCH используется для применения частичных изменений "
"к ресурсу."

msgid "Represents the size of the [enum Method] enum."
msgstr "Представляет размер перечисления [enum Method]."

msgid "Status: Disconnected from the server."
msgstr "Статус: Отключено от сервера."

msgid "Status: Currently resolving the hostname for the given URL into an IP."
msgstr ""
"Статус: В настоящее время выполняется преобразование имени хоста для "
"указанного URL в IP-адрес."

msgid "Status: DNS failure: Can't resolve the hostname for the given URL."
msgstr "Статус: Ошибка DNS: Невозможно определить имя хоста для указанного URL."

msgid "Status: Currently connecting to server."
msgstr "Статус: В настоящее время выполняется подключение к серверу."

msgid "Status: Can't connect to the server."
msgstr "Статус: Невозможно подключиться к серверу."

msgid "Status: Connection established."
msgstr "Статус: Соединение установлено."

msgid "Status: Currently sending request."
msgstr "Статус: В настоящее время отправляется запрос."

msgid "Status: HTTP body received."
msgstr "Статус: получено тело HTTP."

msgid "Status: Error in HTTP connection."
msgstr "Статус: Ошибка HTTP-соединения."

msgid "Status: Error in TLS handshake."
msgstr "Статус: Ошибка при установлении связи TLS."

msgid ""
"HTTP status code [code]100 Continue[/code]. Interim response that indicates "
"everything so far is OK and that the client should continue with the request "
"(or ignore this status if already finished)."
msgstr ""
"Код статуса HTTP [code]100 Continue[/code]. Промежуточный ответ, который "
"указывает, что пока все в порядке и клиент должен продолжить обработку "
"запроса (или игнорировать этот статус, если он уже завершен)."

msgid ""
"HTTP status code [code]101 Switching Protocol[/code]. Sent in response to an "
"[code]Upgrade[/code] request header by the client. Indicates the protocol the "
"server is switching to."
msgstr ""
"Код статуса HTTP [code]101 Switching Protocol[/code]. Отправляется в ответ на "
"заголовок запроса [code]Upgrade[/code] клиентом. Указывает протокол, на "
"который переключается сервер."

msgid ""
"HTTP status code [code]102 Processing[/code] (WebDAV). Indicates that the "
"server has received and is processing the request, but no response is "
"available yet."
msgstr ""
"Код статуса HTTP [code]102 Processing[/code] (WebDAV). Указывает, что сервер "
"получил и обрабатывает запрос, но ответ пока недоступен."

msgid ""
"HTTP status code [code]200 OK[/code]. The request has succeeded. Default "
"response for successful requests. Meaning varies depending on the request:\n"
"- [constant METHOD_GET]: The resource has been fetched and is transmitted in "
"the message body.\n"
"- [constant METHOD_HEAD]: The entity headers are in the message body.\n"
"- [constant METHOD_POST]: The resource describing the result of the action is "
"transmitted in the message body.\n"
"- [constant METHOD_TRACE]: The message body contains the request message as "
"received by the server."
msgstr ""
"Код статуса HTTP [code]200 OK[/code]. Запрос выполнен успешно. Ответ по "
"умолчанию для успешных запросов. Значение зависит от запроса:\n"
"- [constant METHOD_GET]: Ресурс был извлечен и передан в теле сообщения.\n"
"- [constant METHOD_HEAD]: Заголовки сущности находятся в теле сообщения.\n"
"- [constant METHOD_POST]: Ресурс, описывающий результат действия, передается "
"в теле сообщения.\n"
"- [constant METHOD_TRACE]: Тело сообщения содержит сообщение запроса, "
"полученное сервером."

msgid ""
"HTTP status code [code]201 Created[/code]. The request has succeeded and a "
"new resource has been created as a result of it. This is typically the "
"response sent after a PUT request."
msgstr ""
"Код статуса HTTP [code]201 Created[/code]. Запрос выполнен успешно, и в "
"результате создан новый ресурс. Обычно это ответ, отправляемый после запроса "
"PUT."

msgid ""
"HTTP status code [code]202 Accepted[/code]. The request has been received but "
"not yet acted upon. It is non-committal, meaning that there is no way in HTTP "
"to later send an asynchronous response indicating the outcome of processing "
"the request. It is intended for cases where another process or server handles "
"the request, or for batch processing."
msgstr ""
"Код статуса HTTP [code]202 Accepted[/code]. Запрос получен, но еще не "
"обработан. Он необязателен, то есть в HTTP нет способа позже отправить "
"асинхронный ответ, указывающий результат обработки запроса. Он предназначен "
"для случаев, когда другой процесс или сервер обрабатывает запрос, или для "
"пакетной обработки."

msgid ""
"HTTP status code [code]203 Non-Authoritative Information[/code]. This "
"response code means returned meta-information set is not exact set as "
"available from the origin server, but collected from a local or a third party "
"copy. Except this condition, 200 OK response should be preferred instead of "
"this response."
msgstr ""
"Код статуса HTTP [code]203 Non-Authoritative Information[/code]. Этот код "
"ответа означает, что возвращаемый набор метаинформации не является точным "
"набором, доступным с исходного сервера, а собран из локальной или сторонней "
"копии. За исключением этого условия, ответ 200 OK должен быть "
"предпочтительнее этого ответа."

msgid ""
"HTTP status code [code]204 No Content[/code]. There is no content to send for "
"this request, but the headers may be useful. The user-agent may update its "
"cached headers for this resource with the new ones."
msgstr ""
"Код статуса HTTP [code]204 No Content[/code]. Нет контента для отправки по "
"этому запросу, но заголовки могут быть полезны. Пользовательский агент может "
"обновить свои кэшированные заголовки для этого ресурса новыми."

msgid ""
"HTTP status code [code]205 Reset Content[/code]. The server has fulfilled the "
"request and desires that the client resets the \"document view\" that caused "
"the request to be sent to its original state as received from the origin "
"server."
msgstr ""
"Код статуса HTTP [code]205 Reset Content[/code]. Сервер выполнил запрос и "
"хочет, чтобы клиент сбросил «представление документа», вызвавшее отправку "
"запроса, в исходное состояние, полученное от исходного сервера."

msgid ""
"HTTP status code [code]206 Partial Content[/code]. This response code is used "
"because of a range header sent by the client to separate download into "
"multiple streams."
msgstr ""
"Код статуса HTTP [code]206 Partial Content[/code]. Этот код ответа "
"используется из-за заголовка диапазона, отправленного клиентом для разделения "
"загрузки на несколько потоков."

msgid ""
"HTTP status code [code]207 Multi-Status[/code] (WebDAV). A Multi-Status "
"response conveys information about multiple resources in situations where "
"multiple status codes might be appropriate."
msgstr ""
"Код статуса HTTP [code]207 Multi-Status[/code] (WebDAV). Ответ Multi-Status "
"передает информацию о нескольких ресурсах в ситуациях, когда могут быть "
"уместны несколько кодов статуса."

msgid ""
"HTTP status code [code]208 Already Reported[/code] (WebDAV). Used inside a "
"DAV: propstat response element to avoid enumerating the internal members of "
"multiple bindings to the same collection repeatedly."
msgstr ""
"Код статуса HTTP [code]208 Already Reported[/code] (WebDAV). Используется "
"внутри элемента ответа DAV: propstat, чтобы избежать повторного перечисления "
"внутренних членов нескольких привязок к одной и той же коллекции."

msgid ""
"HTTP status code [code]226 IM Used[/code] (WebDAV). The server has fulfilled "
"a GET request for the resource, and the response is a representation of the "
"result of one or more instance-manipulations applied to the current instance."
msgstr ""
"Код статуса HTTP [code]226 IM Used[/code] (WebDAV). Сервер выполнил запрос "
"GET для ресурса, а ответ представляет собой представление результата одной "
"или нескольких манипуляций с экземпляром, примененных к текущему экземпляру."

msgid ""
"HTTP status code [code]300 Multiple Choice[/code]. The request has more than "
"one possible responses and there is no standardized way to choose one of the "
"responses. User-agent or user should choose one of them."
msgstr ""
"HTTP-код статуса [code]300 Multiple Choice[/code]. Запрос имеет более одного "
"возможного ответа, и нет стандартизированного способа выбора одного из "
"ответов. User-agent или пользователь должны выбрать один из них."

msgid ""
"HTTP status code [code]301 Moved Permanently[/code]. Redirection. This "
"response code means the URI of requested resource has been changed. The new "
"URI is usually included in the response."
msgstr ""
"Код статуса HTTP [code]301 Moved Permanently[/code]. Перенаправление. Этот "
"код ответа означает, что URI запрошенного ресурса был изменен. Новый URI "
"обычно включается в ответ."

msgid ""
"HTTP status code [code]302 Found[/code]. Temporary redirection. This response "
"code means the URI of requested resource has been changed temporarily. New "
"changes in the URI might be made in the future. Therefore, this same URI "
"should be used by the client in future requests."
msgstr ""
"Код статуса HTTP [code]302 Found[/code]. Временное перенаправление. Этот код "
"ответа означает, что URI запрошенного ресурса был временно изменен. В будущем "
"могут быть внесены новые изменения в URI. Поэтому этот же URI должен "
"использоваться клиентом в будущих запросах."

msgid ""
"HTTP status code [code]303 See Other[/code]. The server is redirecting the "
"user agent to a different resource, as indicated by a URI in the Location "
"header field, which is intended to provide an indirect response to the "
"original request."
msgstr ""
"Код статуса HTTP [code]303 See Other[/code]. Сервер перенаправляет агента "
"пользователя на другой ресурс, как указано в URI в поле заголовка Location, "
"который предназначен для предоставления косвенного ответа на исходный запрос."

msgid ""
"HTTP status code [code]304 Not Modified[/code]. A conditional GET or HEAD "
"request has been received and would have resulted in a 200 OK response if it "
"were not for the fact that the condition evaluated to [code]false[/code]."
msgstr ""
"Код статуса HTTP [code]304 Не изменено[/code]. Получен условный запрос GET "
"или HEAD, который привел бы к ответу 200 OK, если бы не тот факт, что условие "
"было оценено как [code]ложное[/code]."

msgid ""
"Many clients ignore this response code for security reasons. It is also "
"deprecated by the HTTP standard."
msgstr ""
"Многие клиенты игнорируют этот код ответа по соображениям безопасности. Он "
"также устарел по стандарту HTTP."

msgid "HTTP status code [code]305 Use Proxy[/code]."
msgstr "Код статуса HTTP [code]305 Использовать прокси[/code]."

msgid "HTTP status code [code]306 Switch Proxy[/code]."
msgstr "Код статуса HTTP [code]306 Переключить прокси[/code]."

msgid ""
"HTTP status code [code]307 Temporary Redirect[/code]. The target resource "
"resides temporarily under a different URI and the user agent MUST NOT change "
"the request method if it performs an automatic redirection to that URI."
msgstr ""
"Код статуса HTTP [code]307 Temporary Redirect[/code]. Целевой ресурс временно "
"находится под другим URI, и пользовательский агент НЕ ДОЛЖЕН изменять метод "
"запроса, если он выполняет автоматическое перенаправление на этот URI."

msgid ""
"HTTP status code [code]308 Permanent Redirect[/code]. The target resource has "
"been assigned a new permanent URI and any future references to this resource "
"ought to use one of the enclosed URIs."
msgstr ""
"Код статуса HTTP [code]308 Permanent Redirect[/code]. Целевому ресурсу был "
"назначен новый постоянный URI, и любые будущие ссылки на этот ресурс должны "
"использовать один из включенных URI."

msgid ""
"HTTP status code [code]400 Bad Request[/code]. The request was invalid. The "
"server cannot or will not process the request due to something that is "
"perceived to be a client error (e.g., malformed request syntax, invalid "
"request message framing, invalid request contents, or deceptive request "
"routing)."
msgstr ""
"Код статуса HTTP [code]400 Bad Request[/code]. Запрос был недействительным. "
"Сервер не может или не будет обрабатывать запрос из-за чего-то, что "
"воспринимается как ошибка клиента (например, неверный синтаксис запроса, "
"недопустимое кадрирование сообщения запроса, недопустимое содержимое запроса "
"или обманчивая маршрутизация запроса)."

msgid ""
"HTTP status code [code]401 Unauthorized[/code]. Credentials required. The "
"request has not been applied because it lacks valid authentication "
"credentials for the target resource."
msgstr ""
"Код статуса HTTP [code]401 Unauthorized[/code]. Требуются учетные данные. "
"Запрос не был применен, поскольку отсутствуют действительные учетные данные "
"аутентификации для целевого ресурса."

msgid ""
"HTTP status code [code]402 Payment Required[/code]. This response code is "
"reserved for future use. Initial aim for creating this code was using it for "
"digital payment systems, however this is not currently used."
msgstr ""
"Код статуса HTTP [code]402 Payment Required[/code]. Этот код ответа "
"зарезервирован для будущего использования. Первоначальной целью создания "
"этого кода было его использование для цифровых платежных систем, однако в "
"настоящее время это не используется."

msgid ""
"HTTP status code [code]403 Forbidden[/code]. The client does not have access "
"rights to the content, i.e. they are unauthorized, so server is rejecting to "
"give proper response. Unlike [code]401[/code], the client's identity is known "
"to the server."
msgstr ""
"Код статуса HTTP [code]403 Forbidden[/code]. У клиента нет прав доступа к "
"контенту, т. е. он не авторизован, поэтому сервер отказывается дать "
"надлежащий ответ. В отличие от [code]401[/code], идентификация клиента "
"известна серверу."

msgid ""
"HTTP status code [code]404 Not Found[/code]. The server can not find "
"requested resource. Either the URL is not recognized or the endpoint is valid "
"but the resource itself does not exist. May also be sent instead of 403 to "
"hide existence of a resource if the client is not authorized."
msgstr ""
"Код статуса HTTP [code]404 Not Found[/code]. Сервер не может найти "
"запрошенный ресурс. Либо URL не распознан, либо конечная точка действительна, "
"но сам ресурс не существует. Может также отправляться вместо 403, чтобы "
"скрыть существование ресурса, если клиент не авторизован."

msgid ""
"HTTP status code [code]405 Method Not Allowed[/code]. The request's HTTP "
"method is known by the server but has been disabled and cannot be used. For "
"example, an API may forbid DELETE-ing a resource. The two mandatory methods, "
"GET and HEAD, must never be disabled and should not return this error code."
msgstr ""
"Код статуса HTTP [code]405 Method Not Allowed[/code]. HTTP-метод запроса "
"известен серверу, но был отключен и не может быть использован. Например, API "
"может запретить DELETE-инвестирование ресурса. Два обязательных метода, GET и "
"HEAD, никогда не должны быть отключены и не должны возвращать этот код ошибки."

msgid ""
"HTTP status code [code]406 Not Acceptable[/code]. The target resource does "
"not have a current representation that would be acceptable to the user agent, "
"according to the proactive negotiation header fields received in the request. "
"Used when negotiation content."
msgstr ""
"Код статуса HTTP [code]406 Not Acceptable[/code]. Целевой ресурс не имеет "
"текущего представления, которое было бы приемлемо для пользовательского "
"агента, согласно полям заголовка проактивного согласования, полученным в "
"запросе. Используется при согласовании содержимого."

msgid ""
"HTTP status code [code]407 Proxy Authentication Required[/code]. Similar to "
"401 Unauthorized, but it indicates that the client needs to authenticate "
"itself in order to use a proxy."
msgstr ""
"Код статуса HTTP [code]407 Proxy Authentication Required[/code]. Аналогичен "
"коду 401 Неавторизованный, но указывает на то, что клиенту необходимо пройти "
"аутентификацию, чтобы использовать прокси-сервер."

msgid ""
"HTTP status code [code]408 Request Timeout[/code]. The server did not receive "
"a complete request message within the time that it was prepared to wait."
msgstr ""
"Код статуса HTTP [code]408 Request Timeout[/code]. Сервер не получил полное "
"сообщение запроса в течение времени, которое он был готов ждать."

msgid ""
"HTTP status code [code]409 Conflict[/code]. The request could not be "
"completed due to a conflict with the current state of the target resource. "
"This code is used in situations where the user might be able to resolve the "
"conflict and resubmit the request."
msgstr ""
"Код статуса HTTP [code]409 Conflict[/code]. Запрос не может быть выполнен из-"
"за конфликта с текущим состоянием целевого ресурса. Этот код используется в "
"ситуациях, когда пользователь может разрешить конфликт и повторно отправить "
"запрос."

msgid ""
"HTTP status code [code]410 Gone[/code]. The target resource is no longer "
"available at the origin server and this condition is likely permanent."
msgstr ""
"Код статуса HTTP [code]410 Gone[/code]. Целевой ресурс больше не доступен на "
"исходном сервере, и это состояние, скорее всего, постоянно."

msgid ""
"HTTP status code [code]411 Length Required[/code]. The server refuses to "
"accept the request without a defined Content-Length header."
msgstr ""
"Код статуса HTTP [code]411 Length Required[/code]. Сервер отказывается "
"принимать запрос без определенного заголовка Content-Length."

msgid ""
"HTTP status code [code]412 Precondition Failed[/code]. One or more conditions "
"given in the request header fields evaluated to [code]false[/code] when "
"tested on the server."
msgstr ""
"Код статуса HTTP [code]412 Precondition Failed[/code]. Одно или несколько "
"условий, указанных в полях заголовка запроса, оценены как [code]false[/code] "
"при проверке на сервере."

msgid ""
"HTTP status code [code]413 Entity Too Large[/code]. The server is refusing to "
"process a request because the request payload is larger than the server is "
"willing or able to process."
msgstr ""
"Код статуса HTTP [code]413 Entity Too Large[/code]. Сервер отказывается "
"обрабатывать запрос, поскольку полезная нагрузка запроса больше, чем сервер "
"готов или может обработать."

msgid ""
"HTTP status code [code]414 Request-URI Too Long[/code]. The server is "
"refusing to service the request because the request-target is longer than the "
"server is willing to interpret."
msgstr ""
"Код статуса HTTP [code]414 Request-URI Too Long[/code]. Сервер отказывается "
"обслуживать запрос, поскольку request-target длиннее, чем сервер готов "
"интерпретировать."

msgid ""
"HTTP status code [code]415 Unsupported Media Type[/code]. The origin server "
"is refusing to service the request because the payload is in a format not "
"supported by this method on the target resource."
msgstr ""
"Код статуса HTTP [code]415 Unsupported Media[/code]. Исходный сервер "
"отказывается обслуживать запрос, поскольку полезная нагрузка имеет формат, не "
"поддерживаемый этим методом на целевом ресурсе."

msgid ""
"HTTP status code [code]416 Requested Range Not Satisfiable[/code]. None of "
"the ranges in the request's Range header field overlap the current extent of "
"the selected resource or the set of ranges requested has been rejected due to "
"invalid ranges or an excessive request of small or overlapping ranges."
msgstr ""
"Код статуса HTTP [code]416 Запрошенный диапазон невыполним[/code]. Ни один из "
"диапазонов в поле заголовка Range запроса не перекрывает текущий экстент "
"выбранного ресурса, или набор запрошенных диапазонов был отклонен из-за "
"недопустимых диапазонов или чрезмерного запроса маленьких или перекрывающихся "
"диапазонов."

msgid ""
"HTTP status code [code]417 Expectation Failed[/code]. The expectation given "
"in the request's Expect header field could not be met by at least one of the "
"inbound servers."
msgstr ""
"Код статуса HTTP [code]417 Expectation Failed[/code]. Ожидание, указанное в "
"поле заголовка Expect запроса, не может быть удовлетворено по крайней мере "
"одним из входящих серверов."

msgid ""
"HTTP status code [code]418 I'm A Teapot[/code]. Any attempt to brew coffee "
"with a teapot should result in the error code \"418 I'm a teapot\". The "
"resulting entity body MAY be short and stout."
msgstr ""
"Код статуса HTTP [code]418 Я чайник[/code]. Любая попытка заварить кофе с "
"помощью чайника должна привести к коду ошибки \"418 Я чайник\". "
"Результирующее тело сущности МОЖЕТ быть коротким и толстым."

msgid ""
"HTTP status code [code]421 Misdirected Request[/code]. The request was "
"directed at a server that is not able to produce a response. This can be sent "
"by a server that is not configured to produce responses for the combination "
"of scheme and authority that are included in the request URI."
msgstr ""
"Код статуса HTTP [code]421 Неправильно направленный запрос[/code]. Запрос был "
"направлен на сервер, который не может выдать ответ. Это может быть отправлено "
"сервером, который не настроен на выдачу ответов для комбинации схемы и "
"полномочий, которые включены в URI запроса."

msgid ""
"HTTP status code [code]422 Unprocessable Entity[/code] (WebDAV). The server "
"understands the content type of the request entity (hence a 415 Unsupported "
"Media Type status code is inappropriate), and the syntax of the request "
"entity is correct (thus a 400 Bad Request status code is inappropriate) but "
"was unable to process the contained instructions."
msgstr ""
"Код статуса HTTP [code]422 Unprocessable Entity[/code] (WebDAV). Сервер "
"понимает тип содержимого сущности запроса (поэтому код статуса 415 "
"Unsupported Media Type недопустим), а синтаксис сущности запроса правильный "
"(поэтому код статуса 400 Bad Request недопустим), но не смог обработать "
"содержащиеся инструкции."

msgid ""
"HTTP status code [code]423 Locked[/code] (WebDAV). The source or destination "
"resource of a method is locked."
msgstr ""
"Код статуса HTTP [code]423 Заблокировано[/code] (WebDAV). Исходный или "
"целевой ресурс метода заблокирован."

msgid ""
"HTTP status code [code]424 Failed Dependency[/code] (WebDAV). The method "
"could not be performed on the resource because the requested action depended "
"on another action and that action failed."
msgstr ""
"Код статуса HTTP [code]424 Неудачная зависимость[/code] (WebDAV). Метод не "
"может быть выполнен на ресурсе, поскольку запрошенное действие зависело от "
"другого действия, а это действие не удалось."

msgid ""
"HTTP status code [code]426 Upgrade Required[/code]. The server refuses to "
"perform the request using the current protocol but might be willing to do so "
"after the client upgrades to a different protocol."
msgstr ""
"Код статуса HTTP [code]426 Требуется обновление[/code]. Сервер отказывается "
"выполнять запрос с использованием текущего протокола, но может быть готов "
"сделать это после того, как клиент обновит протокол до другого."

msgid ""
"HTTP status code [code]428 Precondition Required[/code]. The origin server "
"requires the request to be conditional."
msgstr ""
"Код статуса HTTP [code]428 Требуется предварительное условие[/code]. Исходный "
"сервер требует, чтобы запрос был условным."

msgid ""
"HTTP status code [code]429 Too Many Requests[/code]. The user has sent too "
"many requests in a given amount of time (see \"rate limiting\"). Back off and "
"increase time between requests or try again later."
msgstr ""
"Код статуса HTTP [code]429 Слишком много запросов[/code]. Пользователь "
"отправил слишком много запросов за указанный промежуток времени (см. "
"«ограничение скорости»). Отступите и увеличьте время между запросами или "
"повторите попытку позже."

msgid ""
"HTTP status code [code]431 Request Header Fields Too Large[/code]. The server "
"is unwilling to process the request because its header fields are too large. "
"The request MAY be resubmitted after reducing the size of the request header "
"fields."
msgstr ""
"Код статуса HTTP [code]431 Поля заголовка запроса слишком велики[/code]. "
"Сервер не желает обрабатывать запрос, поскольку поля заголовка слишком "
"велики. Запрос МОЖЕТ быть отправлен повторно после уменьшения размера полей "
"заголовка запроса."

msgid ""
"HTTP status code [code]451 Response Unavailable For Legal Reasons[/code]. The "
"server is denying access to the resource as a consequence of a legal demand."
msgstr ""
"Код статуса HTTP [code]451 Ответ недоступен по юридическим причинам[/code]. "
"Сервер отказывает в доступе к ресурсу в связи с юридическим требованием."

msgid ""
"HTTP status code [code]500 Internal Server Error[/code]. The server "
"encountered an unexpected condition that prevented it from fulfilling the "
"request."
msgstr ""
"Код статуса HTTP [code]500 Внутренняя ошибка сервера[/code]. Сервер "
"столкнулся с непредвиденным условием, которое не позволило выполнить запрос."

msgid ""
"HTTP status code [code]501 Not Implemented[/code]. The server does not "
"support the functionality required to fulfill the request."
msgstr ""
"Код статуса HTTP [code]501 Не реализовано[/code]. Сервер не поддерживает "
"функциональность, необходимую для выполнения запроса."

msgid ""
"HTTP status code [code]502 Bad Gateway[/code]. The server, while acting as a "
"gateway or proxy, received an invalid response from an inbound server it "
"accessed while attempting to fulfill the request. Usually returned by load "
"balancers or proxies."
msgstr ""
"Код статуса HTTP [code]502 Bad Gateway[/code]. Сервер, выступая в качестве "
"шлюза или прокси, получил недопустимый ответ от входящего сервера, к которому "
"он обращался при попытке выполнить запрос. Обычно возвращается "
"балансировщиками нагрузки или прокси."

msgid ""
"HTTP status code [code]503 Service Unavailable[/code]. The server is "
"currently unable to handle the request due to a temporary overload or "
"scheduled maintenance, which will likely be alleviated after some delay. Try "
"again later."
msgstr ""
"Код статуса HTTP [code]503 Service Unavailable[/code]. В настоящее время "
"сервер не может обработать запрос из-за временной перегрузки или планового "
"обслуживания, которое, скорее всего, будет устранено после некоторой "
"задержки. Повторите попытку позже."

msgid ""
"HTTP status code [code]504 Gateway Timeout[/code]. The server, while acting "
"as a gateway or proxy, did not receive a timely response from an upstream "
"server it needed to access in order to complete the request. Usually returned "
"by load balancers or proxies."
msgstr ""
"Код статуса HTTP [code]504 Gateway Timeout[/code]. Сервер, выступая в "
"качестве шлюза или прокси-сервера, не получил своевременного ответа от "
"вышестоящего сервера, к которому ему нужно было получить доступ для "
"выполнения запроса. Обычно возвращается балансировщиками нагрузки или прокси-"
"серверами."

msgid ""
"HTTP status code [code]505 HTTP Version Not Supported[/code]. The server does "
"not support, or refuses to support, the major version of HTTP that was used "
"in the request message."
msgstr ""
"Код статуса HTTP [code]505 Версия HTTP не поддерживается[/code]. Сервер не "
"поддерживает или отказывается поддерживать основную версию HTTP, которая "
"использовалась в сообщении запроса."

msgid ""
"HTTP status code [code]506 Variant Also Negotiates[/code]. The server has an "
"internal configuration error: the chosen variant resource is configured to "
"engage in transparent content negotiation itself, and is therefore not a "
"proper end point in the negotiation process."
msgstr ""
"Код статуса HTTP [code]506 Вариант также согласовывает[/code]. На сервере "
"произошла внутренняя ошибка конфигурации: выбранный вариантный ресурс "
"настроен на участие в прозрачном согласовании контента и, следовательно, не "
"является надлежащей конечной точкой в процессе согласования."

msgid ""
"HTTP status code [code]507 Insufficient Storage[/code]. The method could not "
"be performed on the resource because the server is unable to store the "
"representation needed to successfully complete the request."
msgstr ""
"Код статуса HTTP [code]507 Недостаточно места на диске[/code]. Метод не может "
"быть выполнен на ресурсе, поскольку сервер не может сохранить представление, "
"необходимое для успешного выполнения запроса."

msgid ""
"HTTP status code [code]508 Loop Detected[/code]. The server terminated an "
"operation because it encountered an infinite loop while processing a request "
"with \"Depth: infinity\". This status indicates that the entire operation "
"failed."
msgstr ""
"Код статуса HTTP [code]508 Loop Detected[/code]. Сервер завершил операцию, "
"поскольку обнаружил бесконечный цикл при обработке запроса с \"Depth: "
"infinity\". Этот статус указывает на то, что вся операция не удалась."

msgid ""
"HTTP status code [code]510 Not Extended[/code]. The policy for accessing the "
"resource has not been met in the request. The server should send back all the "
"information necessary for the client to issue an extended request."
msgstr ""
"Код статуса HTTP [code]510 Not Extended[/code]. Политика доступа к ресурсу не "
"была соблюдена в запросе. Сервер должен отправить обратно всю информацию, "
"необходимую клиенту для выдачи расширенного запроса."

msgid ""
"HTTP status code [code]511 Network Authentication Required[/code]. The client "
"needs to authenticate to gain network access."
msgstr ""
"Код статуса HTTP [code]511 Требуется сетевая аутентификация[/code]. Клиенту "
"необходимо пройти аутентификацию, чтобы получить доступ к сети."

msgid "A node with the ability to send HTTP(S) requests."
msgstr "Узел с возможностью отправки HTTP(S)-запросов."

msgid ""
"A node with the ability to send HTTP requests. Uses [HTTPClient] internally.\n"
"Can be used to make HTTP requests, i.e. download or upload files or web "
"content via HTTP.\n"
"[b]Warning:[/b] See the notes and warnings on [HTTPClient] for limitations, "
"especially regarding TLS security.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android.\n"
"[b]Example:[/b] Contact a REST API and print one of its returned fields:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Create an HTTP request node and connect its completion signal.\n"
"\tvar http_request = HTTPRequest.new()\n"
"\tadd_child(http_request)\n"
"\thttp_request.request_completed.connect(self._http_request_completed)\n"
"\n"
"\t# Perform a GET request. The URL below returns JSON as of writing.\n"
"\tvar error = http_request.request(\"https://httpbin.org/get\")\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred in the HTTP request.\")\n"
"\n"
"\t# Perform a POST request. The URL below returns JSON as of writing.\n"
"\t# Note: Don't make simultaneous requests using a single HTTPRequest node.\n"
"\t# The snippet below is provided for reference only.\n"
"\tvar body = JSON.new().stringify({\"name\": \"Godette\"})\n"
"\terror = http_request.request(\"https://httpbin.org/post\", [], "
"HTTPClient.METHOD_POST, body)\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred in the HTTP request.\")\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
"\tvar json = JSON.new()\n"
"\tjson.parse(body.get_string_from_utf8())\n"
"\tvar response = json.get_data()\n"
"\n"
"\t# Will print the user agent string used by the HTTPRequest node (as "
"recognized by httpbin.org).\n"
"\tprint(response.headers[\"User-Agent\"])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Create an HTTP request node and connect its completion signal.\n"
"\tvar httpRequest = new HttpRequest();\n"
"\tAddChild(httpRequest);\n"
"\thttpRequest.RequestCompleted += HttpRequestCompleted;\n"
"\n"
"\t// Perform a GET request. The URL below returns JSON as of writing.\n"
"\tError error = httpRequest.Request(\"https://httpbin.org/get\");\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred in the HTTP request.\");\n"
"\t}\n"
"\n"
"\t// Perform a POST request. The URL below returns JSON as of writing.\n"
"\t// Note: Don't make simultaneous requests using a single HTTPRequest node.\n"
"\t// The snippet below is provided for reference only.\n"
"\tstring body = new Json().Stringify(new Godot.Collections.Dictionary\n"
"\t{\n"
"\t\t{ \"name\", \"Godette\" }\n"
"\t});\n"
"\terror = httpRequest.Request(\"https://httpbin.org/post\", null, "
"HttpClient.Method.Post, body);\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred in the HTTP request.\");\n"
"\t}\n"
"}\n"
"\n"
"// Called when the HTTP request is completed.\n"
"private void HttpRequestCompleted(long result, long responseCode, string[] "
"headers, byte[] body)\n"
"{\n"
"\tvar json = new Json();\n"
"\tjson.Parse(body.GetStringFromUtf8());\n"
"\tvar response = json.GetData().AsGodotDictionary();\n"
"\n"
"\t// Will print the user agent string used by the HTTPRequest node (as "
"recognized by httpbin.org).\n"
"\tGD.Print((response[\"headers\"].AsGodotDictionary())[\"User-Agent\"]);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Load an image using [HTTPRequest] and display it:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Create an HTTP request node and connect its completion signal.\n"
"\tvar http_request = HTTPRequest.new()\n"
"\tadd_child(http_request)\n"
"\thttp_request.request_completed.connect(self._http_request_completed)\n"
"\n"
"\t# Perform the HTTP request. The URL below returns a PNG image as of "
"writing.\n"
"\tvar error = http_request.request(\"https://placehold.co/512.png\")\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred in the HTTP request.\")\n"
"\n"
"# Called when the HTTP request is completed.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
"\tif result != HTTPRequest.RESULT_SUCCESS:\n"
"\t\tpush_error(\"Image couldn't be downloaded. Try a different image.\")\n"
"\n"
"\tvar image = Image.new()\n"
"\tvar error = image.load_png_from_buffer(body)\n"
"\tif error != OK:\n"
"\t\tpush_error(\"Couldn't load the image.\")\n"
"\n"
"\tvar texture = ImageTexture.create_from_image(image)\n"
"\n"
"\t# Display the image in a TextureRect node.\n"
"\tvar texture_rect = TextureRect.new()\n"
"\tadd_child(texture_rect)\n"
"\ttexture_rect.texture = texture\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Create an HTTP request node and connect its completion signal.\n"
"\tvar httpRequest = new HttpRequest();\n"
"\tAddChild(httpRequest);\n"
"\thttpRequest.RequestCompleted += HttpRequestCompleted;\n"
"\n"
"\t// Perform the HTTP request. The URL below returns a PNG image as of "
"writing.\n"
"\tError error = httpRequest.Request(\"https://placehold.co/512.png\");\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred in the HTTP request.\");\n"
"\t}\n"
"}\n"
"\n"
"// Called when the HTTP request is completed.\n"
"private void HttpRequestCompleted(long result, long responseCode, string[] "
"headers, byte[] body)\n"
"{\n"
"\tif (result != (long)HttpRequest.Result.Success)\n"
"\t{\n"
"\t\tGD.PushError(\"Image couldn't be downloaded. Try a different image.\");\n"
"\t}\n"
"\tvar image = new Image();\n"
"\tError error = image.LoadPngFromBuffer(body);\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"Couldn't load the image.\");\n"
"\t}\n"
"\n"
"\tvar texture = ImageTexture.CreateFromImage(image);\n"
"\n"
"\t// Display the image in a TextureRect node.\n"
"\tvar textureRect = new TextureRect();\n"
"\tAddChild(textureRect);\n"
"\ttextureRect.Texture = texture;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] [HTTPRequest] nodes will automatically handle decompression of "
"response bodies. An [code]Accept-Encoding[/code] header will be automatically "
"added to each of your requests, unless one is already specified. Any response "
"with a [code]Content-Encoding: gzip[/code] header will automatically be "
"decompressed and delivered to you as uncompressed bytes."
msgstr ""
"Узел с возможностью отправки HTTP-запросов. Использует [HTTPClient] для "
"внутренних целей.\n"
"Может использоваться для выполнения HTTP-запросов, т. е. загрузки или "
"выгрузки файлов или веб-контента через HTTP.\n"
"[b]Предупреждение:[/b] Ознакомьтесь с примечаниями и предупреждениями по "
"[HTTPClient] относительно ограничений, особенно касающихся безопасности TLS.\n"
"[b]Примечание:[/b] При экспорте на Android убедитесь, что в настройках "
"экспорта Android включено разрешение [code]INTERNET[/code] перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"Android будет блокировать любые сетевые соединения.\n"
"[b]Пример:[/b] Обратиться к REST API и вывести одно из возвращенных им "
"полей:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Создайте узел HTTP-запроса и подключите его сигнал завершения.\n"
"\tvar http_request = HTTPRequest.new()\n"
"\tadd_child(http_request)\n"
"\thttp_request.request_completed.connect(self._http_request_completed)\n"
"\n"
"\t# Выполните GET-запрос. URL-адрес ниже возвращает JSON на момент написания "
"статьи.\n"
"\tvar error = http_request.request(\"https://httpbin.org/get\")\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred in the HTTP request.\")\n"
"\n"
"\t# Выполните POST-запрос. URL-адрес ниже возвращает JSON на момент написания "
"статьи.\n"
"\t# Примечание: не отправляйте одновременные запросы с использованием одного "
"узла HTTPRequest.\n"
"\t# Фрагмент ниже предоставлен только для справки.\n"
"\tvar body = JSON.new().stringify({\"name\": \"Godette\"})\n"
"\terror = http_request.request(\"https://httpbin.org/post\", [], "
"HTTPClient.METHOD_POST, body)\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred in the HTTP request.\")\n"
"\n"
"# Вызывается после завершения HTTP-запроса.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
"\tvar json = JSON.new()\n"
"\tjson.parse(body.get_string_from_utf8())\n"
"\tvar response = json.get_data()\n"
"\n"
"\t# Выведет строку пользовательского агента, используемую узлом HTTPRequest "
"(распознанную httpbin.org).\n"
"\tprint(response.headers[\"User-Agent\"])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Создайте узел HTTP-запроса и подключите его сигнал завершения.\n"
"\tvar httpRequest = new HttpRequest();\n"
"\tAddChild(httpRequest);\n"
"\thttpRequest.RequestCompleted += HttpRequestCompleted;\n"
"\n"
"\t// Выполните GET-запрос. URL-адрес ниже возвращает JSON на момент написания "
"статьи.\n"
"\tError error = httpRequest.Request(\"https://httpbin.org/get\");\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred in the HTTP request.\");\n"
"\t}\n"
"\n"
"\t// Выполните POST-запрос. URL-адрес ниже возвращает JSON на момент "
"написания статьи.\n"
"\t// Примечание: не отправляйте одновременные запросы с использованием одного "
"узла HTTPRequest.\n"
"\t// Фрагмент ниже предоставлен только для справки.\n"
"\tstring body = new Json().Stringify(new Godot.Collections.Dictionary\n"
"\t{\n"
"\t\t{ \"name\", \"Godette\" }\n"
"\t});\n"
"\terror = httpRequest.Request(\"https://httpbin.org/post\", null, "
"HttpClient.Method.Post, body);\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred in the HTTP request.\");\n"
"\t}\n"
"}\n"
"\n"
"// Вызывается после завершения HTTP-запроса.\n"
"private void HttpRequestCompleted(long result, long responseCode, string[] "
"headers, byte[] body)\n"
"{\n"
"\tvar json = new Json();\n"
"\tjson.Parse(body.GetStringFromUtf8());\n"
"\tvar response = json.GetData().AsGodotDictionary();\n"
"\n"
"\t// Выведет строку пользовательского агента, используемую узлом HTTPRequest "
"(распознанную httpbin.org).\n"
"\tGD.Print((response[\"headers\"].AsGodotDictionary())[\"User-Agent\"]);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Пример:[/b] Загрузите изображение с помощью [HTTPRequest] и отобразите "
"его:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Создайте узел HTTP-запроса и подключите его сигнал завершения.\n"
"\tvar http_request = HTTPRequest.new()\n"
"\tadd_child(http_request)\n"
"\thttp_request.request_completed.connect(self._http_request_completed)\n"
"\n"
"\t# Выполните HTTP-запрос. URL-адрес ниже возвращает изображение в формате "
"PNG (на момент написания статьи).\n"
"\tvar error = http_request.request(\"https://placehold.co/512.png\")\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred in the HTTP request.\")\n"
"\n"
"# Вызывается после завершения HTTP-запроса.\n"
"func _http_request_completed(result, response_code, headers, body):\n"
"\tif result != HTTPRequest.RESULT_SUCCESS:\n"
"\t\tpush_error(\"Image couldn't be downloaded. Try a different image.\")\n"
"\n"
"\tvar image = Image.new()\n"
"\tvar error = image.load_png_from_buffer(body)\n"
"\tif error != OK:\n"
"\t\tpush_error(\"Couldn't load the image.\")\n"
"\n"
"\tvar texture = ImageTexture.create_from_image(image)\n"
"\n"
"\t# Отобразите изображение в узле TextureRect.\n"
"\tvar texture_rect = TextureRect.new()\n"
"\tadd_child(texture_rect)\n"
"\ttexture_rect.texture = texture\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Создайте узел HTTP-запроса и подключите его сигнал завершения.\n"
"\tvar httpRequest = new HttpRequest();\n"
"\tAddChild(httpRequest);\n"
"\thttpRequest.RequestCompleted += HttpRequestCompleted;\n"
"\n"
"\t// Выполните HTTP-запрос. URL-адрес ниже возвращает изображение в формате "
"PNG (на момент написания статьи).\n"
"\tError error = httpRequest.Request(\"https://placehold.co/512.png\");\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred in the HTTP request.\");\n"
"\t}\n"
"}\n"
"\n"
"// Вызывается после завершения HTTP-запроса.\n"
"private void HttpRequestCompleted(long result, long responseCode, string[] "
"headers, byte[] body)\n"
"{\n"
"\tif (result != (long)HttpRequest.Result.Success)\n"
"\t{\n"
"\t\tGD.PushError(\"Image couldn't be downloaded. Try a different image.\");\n"
"\t}\n"
"\tvar image = new Image();\n"
"\tError error = image.LoadPngFromBuffer(body);\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"Couldn't load the image.\");\n"
"\t}\n"
"\n"
"\tvar texture = ImageTexture.CreateFromImage(image);\n"
"\n"
"\t// Отобразите изображение в узле TextureRect.\n"
"\tvar textureRect = new TextureRect();\n"
"\tAddChild(textureRect);\n"
"\ttextureRect.Texture = texture;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Узлы [HTTPRequest] автоматически распаковывают тела "
"ответов. Заголовок [code]Accept-Encoding[/code] будет автоматически добавлен "
"к каждому вашему запросу, если он ещё не указан. Любой ответ с заголовком "
"[code]Content-Encoding: gzip[/code] будет автоматически распакован и "
"доставлен вам в виде несжатых байтов."

msgid "Making HTTP requests"
msgstr "Выполнение HTTP-запросов"

msgid "Cancels the current request."
msgstr "Отменяет текущий запрос."

msgid ""
"Returns the response body length.\n"
"[b]Note:[/b] Some Web servers may not send a body length. In this case, the "
"value returned will be [code]-1[/code]. If using chunked transfer encoding, "
"the body length will also be [code]-1[/code]."
msgstr ""
"Возвращает длину тела запроса.\n"
"[b]Примечание:[/b] Некоторые веб-серверы могут не отправлять длину тела. В "
"этом случае возвращаемое значение будет [code]-1[/code]. При использовании "
"кодирования передачи по частям длина тела также будет [code]-1[/code]."

msgid "Returns the number of bytes this HTTPRequest downloaded."
msgstr "Возвращает количество байтов, загруженных по этому HTTP-запросу."

msgid "Returns the current status of the underlying [HTTPClient]."
msgstr "Возвращает текущий статус базового [HTTPClient]."

msgid ""
"Creates request on the underlying [HTTPClient]. If there is no configuration "
"errors, it tries to connect using [method HTTPClient.connect_to_host] and "
"passes parameters onto [method HTTPClient.request].\n"
"Returns [constant OK] if request is successfully created. (Does not imply "
"that the server has responded), [constant ERR_UNCONFIGURED] if not in the "
"tree, [constant ERR_BUSY] if still processing previous request, [constant "
"ERR_INVALID_PARAMETER] if given string is not a valid URL format, or "
"[constant ERR_CANT_CONNECT] if not using thread and the [HTTPClient] cannot "
"connect to host.\n"
"[b]Note:[/b] When [param method] is [constant HTTPClient.METHOD_GET], the "
"payload sent via [param request_data] might be ignored by the server or even "
"cause the server to reject the request (check [url=https://"
"datatracker.ietf.org/doc/html/rfc7231#section-4.3.1]RFC 7231 section 4.3.1[/"
"url] for more details). As a workaround, you can send data as a query string "
"in the URL (see [method String.uri_encode] for an example).\n"
"[b]Note:[/b] It's recommended to use transport encryption (TLS) and to avoid "
"sending sensitive information (such as login credentials) in HTTP GET URL "
"parameters. Consider using HTTP POST requests or HTTP headers for such "
"information instead."
msgstr ""
"Создает запрос на базовом [HTTPClient]. Если ошибок конфигурации нет, он "
"пытается подключиться с помощью [method HTTPClient.connect_to_host] и "
"передает параметры в [method HTTPClient.request].\n"
"Возвращает [constant OK], если запрос успешно создан. (Не подразумевает, что "
"сервер ответил), [constant ERR_UNCONFIGURED], если нет в дереве, [constant "
"ERR_BUSY], если все еще обрабатывается предыдущий запрос, [constant "
"ERR_INVALID_PARAMETER], если заданная строка не является допустимым форматом "
"URL, или [constant ERR_CANT_CONNECT], если поток не используется и "
"[HTTPClient] не может подключиться к хосту.\n"
"[b]Примечание:[/b] Когда [param method] — [constant HTTPClient.METHOD_GET], "
"полезная нагрузка, отправленная через [param request_data], может быть "
"проигнорирована сервером или даже привести к отклонению запроса сервером "
"(подробнее см. в [url=https://datatracker.ietf.org/doc/html/"
"rfc7231#section-4.3.1]RFC 7231, раздел 4.3.1[/url]). В качестве обходного "
"пути вы можете отправить данные в виде строки запроса в URL (см. пример в "
"[method String.uri_encode]).\n"
"[b]Примечание:[/b] Рекомендуется использовать транспортное шифрование (TLS) и "
"избегать отправки конфиденциальной информации (например, учетных данных для "
"входа) в параметрах URL HTTP GET. Рассмотрите возможность использования "
"запросов HTTP POST или заголовков HTTP для такой информации."

msgid ""
"Creates request on the underlying [HTTPClient] using a raw array of bytes for "
"the request body. If there is no configuration errors, it tries to connect "
"using [method HTTPClient.connect_to_host] and passes parameters onto [method "
"HTTPClient.request].\n"
"Returns [constant OK] if request is successfully created. (Does not imply "
"that the server has responded), [constant ERR_UNCONFIGURED] if not in the "
"tree, [constant ERR_BUSY] if still processing previous request, [constant "
"ERR_INVALID_PARAMETER] if given string is not a valid URL format, or "
"[constant ERR_CANT_CONNECT] if not using thread and the [HTTPClient] cannot "
"connect to host."
msgstr ""
"Создает запрос на базовом [HTTPClient], используя необработанный массив "
"байтов для тела запроса. Если ошибок конфигурации нет, он пытается "
"подключиться с помощью [method HTTPClient.connect_to_host] и передает "
"параметры в [method HTTPClient.request]. \n"
"Возвращает [constant OK], если запрос успешно создан. (Не подразумевает, что "
"сервер ответил), [constant ERR_UNCONFIGURED], если нет в дереве, [constant "
"ERR_BUSY], если все еще обрабатывается предыдущий запрос, [constant "
"ERR_INVALID_PARAMETER], если заданная строка не является допустимым форматом "
"URL, или [constant ERR_CANT_CONNECT], если поток не используется и "
"[HTTPClient] не может подключиться к хосту."

msgid ""
"Sets the [TLSOptions] to be used when connecting to an HTTPS server. See "
"[method TLSOptions.client]."
msgstr ""
"Устанавливает [TLSOptions], которые будут использоваться при подключении к "
"HTTPS-серверу. См. [method TLSOptions.client]."

msgid ""
"If [code]true[/code], this header will be added to each request: [code]Accept-"
"Encoding: gzip, deflate[/code] telling servers that it's okay to compress "
"response bodies.\n"
"Any Response body declaring a [code]Content-Encoding[/code] of either "
"[code]gzip[/code] or [code]deflate[/code] will then be automatically "
"decompressed, and the uncompressed bytes will be delivered via [signal "
"request_completed].\n"
"If the user has specified their own [code]Accept-Encoding[/code] header, then "
"no header will be added regardless of [member accept_gzip].\n"
"If [code]false[/code] no header will be added, and no decompression will be "
"performed on response bodies. The raw bytes of the response body will be "
"returned via [signal request_completed]."
msgstr ""
"Если [code]true[/code], этот заголовок будет добавлен к каждому запросу: "
"[code]Accept-Encoding: gzip, deflate[/code], сообщая серверам, что сжимать "
"тела ответов можно.\n"
"Любое тело ответа, объявляющее [code]Content-Encoding[/code] либо [code]gzip[/"
"code], либо [code]deflate[/code], будет автоматически распаковано, а несжатые "
"байты будут доставлены через [signal request_completed].\n"
"Если пользователь указал свой собственный заголовок [code]Accept-Encoding[/"
"code], то заголовок не будет добавлен независимо от [member accept_gzip].\n"
"Если [code]false[/code], заголовок не будет добавлен, и распаковка тел "
"ответов не будет выполнена. Необработанные байты тела ответа будут возвращены "
"через [signal request_completed]."

msgid ""
"Maximum allowed size for response bodies. If the response body is compressed, "
"this will be used as the maximum allowed size for the decompressed body."
msgstr ""
"Максимально допустимый размер для тел ответов. Если тело ответа сжато, это "
"будет использоваться как максимально допустимый размер для распакованного "
"тела."

msgid ""
"The size of the buffer used and maximum bytes to read per iteration. See "
"[member HTTPClient.read_chunk_size].\n"
"Set this to a lower value (e.g. 4096 for 4 KiB) when downloading small files "
"to decrease memory usage at the cost of download speeds."
msgstr ""
"Размер используемого буфера и максимальное количество байтов для чтения за "
"одну итерацию. См. [member HTTPClient.read_chunk_size].\n"
"Установите меньшее значение (например, 4096 для 4 КиБ) при загрузке небольших "
"файлов, чтобы уменьшить использование памяти за счет скорости загрузки."

msgid "The file to download into. Will output any received file into it."
msgstr "Файл для загрузки. В него будет выведен любой полученный файл."

msgid "Maximum number of allowed redirects."
msgstr "Максимальное количество разрешенных перенаправлений."

msgid ""
"The duration to wait in seconds before a request times out. If [member "
"timeout] is set to [code]0.0[/code] then the request will never time out. For "
"simple requests, such as communication with a REST API, it is recommended "
"that [member timeout] is set to a value suitable for the server response time "
"(e.g. between [code]1.0[/code] and [code]10.0[/code]). This will help prevent "
"unwanted timeouts caused by variation in server response times while still "
"allowing the application to detect when a request has timed out. For larger "
"requests such as file downloads it is suggested the [member timeout] be set "
"to [code]0.0[/code], disabling the timeout functionality. This will help to "
"prevent large transfers from failing due to exceeding the timeout value."
msgstr ""
"Длительность ожидания в секундах до истечения времени ожидания запроса. Если "
"[member timeout] установлен на [code]0.0[/code], то запрос никогда не будет "
"истечь по времени. Для простых запросов, таких как связь с REST API, "
"рекомендуется, чтобы [member timeout] был установлен на значение, подходящее "
"для времени ответа сервера (например, между [code]1.0[/code] и [code]10.0[/"
"code]). Это поможет предотвратить нежелательные тайм-ауты, вызванные разницей "
"во времени ответа сервера, и в то же время позволит приложению определять, "
"когда запрос истек. Для более крупных запросов, таких как загрузка файлов, "
"предлагается установить [member timeout] на [code]0.0[/code], отключив "
"функцию тайм-аута. Это поможет предотвратить сбои больших передач из-за "
"превышения значения тайм-аута."

msgid "If [code]true[/code], multithreading is used to improve performance."
msgstr ""
"Если [code]true[/code], для повышения производительности используется "
"многопоточность."

msgid "Emitted when a request is completed."
msgstr "Выдается после завершения запроса."

msgid "Request successful."
msgstr "Запрос успешен."

msgid ""
"Request failed due to a mismatch between the expected and actual chunked body "
"size during transfer. Possible causes include network errors, server "
"misconfiguration, or issues with chunked encoding."
msgstr ""
"Запрос не выполнен из-за несоответствия между ожидаемым и фактическим "
"размером фрагментированного тела во время передачи. Возможные причины "
"включают сетевые ошибки, неправильную конфигурацию сервера или проблемы с "
"фрагментированным кодированием."

msgid "Request failed while connecting."
msgstr "Запрос не удался при подключении."

msgid "Request failed while resolving."
msgstr "Запрос не удалось разрешить."

msgid "Request failed due to connection (read/write) error."
msgstr "Запрос не выполнен из-за ошибки соединения (чтение/запись)."

msgid "Request failed on TLS handshake."
msgstr "Запрос не выполнен при установлении связи TLS."

msgid "Request does not have a response (yet)."
msgstr "Запрос не получил ответа (пока что)."

msgid "Request exceeded its maximum size limit, see [member body_size_limit]."
msgstr "Запрос превысил максимальный размер, см. [member body_size_limit]."

msgid ""
"Request failed due to an error while decompressing the response body. "
"Possible causes include unsupported or incorrect compression format, "
"corrupted data, or incomplete transfer."
msgstr ""
"Запрос не выполнен из-за ошибки при распаковке тела ответа. Возможные причины "
"включают неподдерживаемый или неправильный формат сжатия, поврежденные данные "
"или неполную передачу."

msgid "Request failed (currently unused)."
msgstr "Запрос не выполнен (в настоящее время не используется)."

msgid "HTTPRequest couldn't open the download file."
msgstr "HTTPRequest не смог открыть загружаемый файл."

msgid "HTTPRequest couldn't write to the download file."
msgstr "HTTPRequest не смог выполнить запись в загружаемый файл."

msgid "Request reached its maximum redirect limit, see [member max_redirects]."
msgstr ""
"Запрос достиг максимального предела перенаправления, см. [member "
"max_redirects]."

msgid ""
"Request failed due to a timeout. If you expect requests to take a long time, "
"try increasing the value of [member timeout] or setting it to [code]0.0[/"
"code] to remove the timeout completely."
msgstr ""
"Запрос не выполнен из-за тайм-аута. Если вы ожидаете, что запросы будут "
"выполняться долго, попробуйте увеличить значение [member timeout] или "
"установить его на [code]0.0[/code], чтобы полностью убрать тайм-аут."

msgid "Image datatype."
msgstr "Тип данных изображения."

msgid ""
"Native image datatype. Contains image data which can be converted to an "
"[ImageTexture] and provides commonly used [i]image processing[/i] methods. "
"The maximum width and height for an [Image] are [constant MAX_WIDTH] and "
"[constant MAX_HEIGHT].\n"
"An [Image] cannot be assigned to a texture property of an object directly "
"(such as [member Sprite2D.texture]), and has to be converted manually to an "
"[ImageTexture] first.\n"
"[b]Note:[/b] The maximum image size is 16384×16384 pixels due to graphics "
"hardware limitations. Larger images may fail to import."
msgstr ""
"Собственный тип данных изображения. Содержит данные изображения, которые "
"можно преобразовать в [ImageTexture], и предоставляет часто используемые "
"[i]методы обработки изображений[/i]. Максимальная ширина и высота для [Image] "
"— [constant MAX_WIDTH] и [constant MAX_HEIGHT].\n"
"[Image] нельзя назначить свойству текстуры объекта напрямую (например, "
"[member Sprite2D.texture]), и его необходимо сначала вручную преобразовать в "
"[ImageTexture].\n"
"[b]Примечание:[/b] Максимальный размер изображения составляет 16384×16384 "
"пикселей из-за ограничений графического оборудования. Более крупные "
"изображения могут не импортироваться."

msgid "Importing images"
msgstr "Импорт изображений"

msgid ""
"Adjusts this image's [param brightness], [param contrast], and [param "
"saturation] by the given values. Does not work if the image is compressed "
"(see [method is_compressed])."
msgstr ""
"Настраивает [param brightness], [param contrast] и [param saturation] этого "
"изображения на заданные значения. Не работает, если изображение сжато (см. "
"[method is_compressed])."

msgid ""
"Alpha-blends [param src_rect] from [param src] image to this image at "
"coordinates [param dst], clipped accordingly to both image bounds. This image "
"and [param src] image [b]must[/b] have the same format. [param src_rect] with "
"non-positive size is treated as empty."
msgstr ""
"Альфа-смешивания [param src_rect] из изображения [param src] с этим "
"изображением в координатах [param dst], обрезается соответственно границам "
"обоих изображений. Это изображение и изображение [param src] [b]должны[/b] "
"иметь одинаковый формат. [param src_rect] с неположительным размером "
"рассматривается как пустой."

msgid ""
"Alpha-blends [param src_rect] from [param src] image to this image using "
"[param mask] image at coordinates [param dst], clipped accordingly to both "
"image bounds. Alpha channels are required for both [param src] and [param "
"mask]. [param dst] pixels and [param src] pixels will blend if the "
"corresponding mask pixel's alpha value is not 0. This image and [param src] "
"image [b]must[/b] have the same format. [param src] image and [param mask] "
"image [b]must[/b] have the same size (width and height) but they can have "
"different formats. [param src_rect] with non-positive size is treated as "
"empty."
msgstr ""
"Альфа-смешивания [param src_rect] из изображения [param src] с этим "
"изображением, используя изображение [param mask] в координатах [param dst], "
"обрезанное соответственно по обеим границам изображения. Альфа-каналы "
"требуются как для [param src], так и для [param mask]. Пиксели [param dst] и "
"пиксели [param src] будут смешиваться, если значение альфа соответствующего "
"пикселя маски не равно 0. Это изображение и изображение [param src] "
"[b]должны[/b] иметь одинаковый формат. Изображение [param src] и изображение "
"[param mask] [b]должны[/b] иметь одинаковый размер (ширину и высоту), но они "
"могут иметь разные форматы. [param src_rect] с неположительным размером "
"рассматривается как пустой."

msgid ""
"Copies [param src_rect] from [param src] image to this image at coordinates "
"[param dst], clipped accordingly to both image bounds. This image and [param "
"src] image [b]must[/b] have the same format. [param src_rect] with non-"
"positive size is treated as empty.\n"
"[b]Note:[/b] The alpha channel data in [param src] will overwrite the "
"corresponding data in this image at the target position. To blend alpha "
"channels, use [method blend_rect] instead."
msgstr ""
"Копирует [param src_rect] из изображения [param src] в это изображение с "
"координатами [param dst], обрезанное соответственно границам обоих "
"изображений. Это изображение и изображение [param src] [b]должны[/b] иметь "
"одинаковый формат. [param src_rect] с неположительным размером "
"рассматривается как пустой.\n"
"[b]Примечание:[/b] Данные альфа-канала в [param src] перезапишут "
"соответствующие данные в этом изображении в целевой позиции. Чтобы смешать "
"альфа-каналы, используйте вместо этого [method blend_rect]."

msgid ""
"Blits [param src_rect] area from [param src] image to this image at the "
"coordinates given by [param dst], clipped accordingly to both image bounds. "
"[param src] pixel is copied onto [param dst] if the corresponding [param "
"mask] pixel's alpha value is not 0. This image and [param src] image [b]must[/"
"b] have the same format. [param src] image and [param mask] image [b]must[/b] "
"have the same size (width and height) but they can have different formats. "
"[param src_rect] with non-positive size is treated as empty."
msgstr ""
"Переносит область [param src_rect] из изображения [param src] в это "
"изображение по координатам, заданным [param dst], обрезанным соответственно "
"по обеим границам изображения. Пиксель [param src] копируется в [param dst], "
"если соответствующее значение альфа-канала пикселя [param mask] не равно 0. "
"Это изображение и изображение [param src] [b]должны[/b] иметь одинаковый "
"формат. Изображение [param src] и изображение [param mask] [b]должны[/b] "
"иметь одинаковый размер (ширину и высоту), но они могут иметь разные форматы. "
"[param src_rect] с неположительным размером рассматривается как пустой."

msgid ""
"Converts a bump map to a normal map. A bump map provides a height offset per-"
"pixel, while a normal map provides a normal direction per pixel."
msgstr ""
"Преобразует карту рельефа (bump map) в карту нормалей. Карта рельефа "
"обеспечивает смещение высоты на пиксель, тогда как карта нормалей "
"обеспечивает направление нормали на пиксель."

msgid "Removes the image's mipmaps."
msgstr "Удаляет MIP-текстуры изображения."

msgid ""
"Compresses the image to use less memory. Can not directly access pixel data "
"while the image is compressed. Returns error if the chosen compression mode "
"is not available.\n"
"The [param source] parameter helps to pick the best compression method for "
"DXT and ETC2 formats. It is ignored for ASTC compression.\n"
"For ASTC compression, the [param astc_format] parameter must be supplied."
msgstr ""
"Сжимает изображение, чтобы использовать меньше памяти. Невозможно напрямую "
"получить доступ к данным пикселей, пока изображение сжато. Возвращает ошибку, "
"если выбранный режим сжатия недоступен.\n"
"Параметр [param source] помогает выбрать лучший метод сжатия для форматов DXT "
"и ETC2. Он игнорируется для сжатия ASTC.\n"
"Для сжатия ASTC необходимо указать параметр [param astc_format]."

msgid ""
"Compresses the image to use less memory. Can not directly access pixel data "
"while the image is compressed. Returns error if the chosen compression mode "
"is not available.\n"
"This is an alternative to [method compress] that lets the user supply the "
"channels used in order for the compressor to pick the best DXT and ETC2 "
"formats. For other formats (non DXT or ETC2), this argument is ignored.\n"
"For ASTC compression, the [param astc_format] parameter must be supplied."
msgstr ""
"Сжимает изображение, чтобы использовать меньше памяти. Невозможно напрямую "
"получить доступ к данным пикселей, пока изображение сжато. Возвращает ошибку, "
"если выбранный режим сжатия недоступен.\n"
"Это альтернатива [method compress], которая позволяет пользователю указать "
"используемые каналы, чтобы компрессор выбрал лучшие форматы DXT и ETC2. Для "
"других форматов (не DXT или ETC2) этот аргумент игнорируется.\n"
"Для сжатия ASTC необходимо указать параметр [param astc_format]."

msgid ""
"Compute image metrics on the current image and the compared image.\n"
"The dictionary contains [code]max[/code], [code]mean[/code], "
"[code]mean_squared[/code], [code]root_mean_squared[/code] and [code]peak_snr[/"
"code]."
msgstr ""
"Вычислите метрики изображения на текущем изображении и сравниваемом "
"изображении.\n"
"Словарь содержит [code]max[/code], [code]mean[/code], [code]mean_squared[/"
"code], [code]root_mean_squared[/code] и [code]peak_snr[/code]."

msgid "Converts this image's format to the given [param format]."
msgstr "Преобразовать этот формат изображения в указанный [param format]."

msgid "Copies [param src] image to this image."
msgstr "Копирует изображение [param src] в это изображение."

msgid "Use [method create_empty]."
msgstr "Используйте [method create_empty]."

msgid ""
"Creates an empty image of the given size and format. If [param use_mipmaps] "
"is [code]true[/code], generates mipmaps for this image. See the [method "
"generate_mipmaps]."
msgstr ""
"Создает пустое изображение указанного размера и формата. Если [param "
"use_mipmaps] равен [code]true[/code], генерирует mip-карты для этого "
"изображения. См. [method generate_mipmaps]."

msgid ""
"Creates a new image of the given size and format. Fills the image with the "
"given raw data. If [param use_mipmaps] is [code]true[/code], loads the "
"mipmaps for this image from [param data]. See [method generate_mipmaps]."
msgstr ""
"Создает новое изображение указанного размера и формата. Заполняет изображение "
"указанными необработанными данными. Если [param use_mipmaps] равен "
"[code]true[/code], загружает mip-карты для этого изображения из [param data]. "
"См. [method generate_mipmaps]."

msgid ""
"Crops the image to the given [param width] and [param height]. If the "
"specified size is larger than the current size, the extra area is filled with "
"black pixels."
msgstr ""
"Обрезает изображение до указанных [param width] и [param height]. Если "
"указанный размер больше текущего размера, дополнительная область заполняется "
"черными пикселями."

msgid ""
"Decompresses the image if it is VRAM compressed in a supported format. "
"Returns [constant OK] if the format is supported, otherwise [constant "
"ERR_UNAVAILABLE].\n"
"[b]Note:[/b] The following formats can be decompressed: DXT, RGTC, BPTC. The "
"formats ETC1 and ETC2 are not supported."
msgstr ""
"Распаковывает изображение, если оно сжато VRAM в поддерживаемом формате. "
"Возвращает [constant OK], если формат поддерживается, в противном случае "
"[constant ERR_UNAVAILABLE].\n"
"[b]Примечание:[/b] Можно распаковать следующие форматы: DXT, RGTC, BPTC. "
"Форматы ETC1 и ETC2 не поддерживаются."

msgid ""
"Returns [constant ALPHA_BLEND] if the image has data for alpha values. "
"Returns [constant ALPHA_BIT] if all the alpha values are stored in a single "
"bit. Returns [constant ALPHA_NONE] if no data for alpha values is found."
msgstr ""
"Возвращает [constant ALPHA_BLEND], если изображение имеет данные для альфа-"
"значений. Возвращает [constant ALPHA_BIT], если все альфа-значения хранятся в "
"одном бите. Возвращает [constant ALPHA_NONE], если данные для альфа-значений "
"не найдены."

msgid ""
"Returns the color channels used by this image. If the image is compressed, "
"the original [param source] must be specified."
msgstr ""
"Возвращает цветовые каналы, используемые этим изображением. Если изображение "
"сжато, необходимо указать исходный [param source]."

msgid "Fills the image with [param color]."
msgstr "Заполняет изображение [param color]."

msgid "Fills [param rect] with [param color]."
msgstr "Заполняет [param rect] [param color]."

msgid "Blends low-alpha pixels with nearby pixels."
msgstr "Смешивает пиксели с низким альфа-каналом с соседними пикселями."

msgid "Flips the image horizontally."
msgstr "Переворачивает изображение по горизонтали."

msgid "Flips the image vertically."
msgstr "Переворачивает изображение по вертикали."

msgid ""
"Generates mipmaps for the image. Mipmaps are precalculated lower-resolution "
"copies of the image that are automatically used if the image needs to be "
"scaled down when rendered. They help improve image quality and performance "
"when rendering. This method returns an error if the image is compressed, in a "
"custom format, or if the image's width/height is [code]0[/code]. Enabling "
"[param renormalize] when generating mipmaps for normal map textures will make "
"sure all resulting vector values are normalized.\n"
"It is possible to check if the image has mipmaps by calling [method "
"has_mipmaps] or [method get_mipmap_count]. Calling [method generate_mipmaps] "
"on an image that already has mipmaps will replace existing mipmaps in the "
"image."
msgstr ""
"Генерирует mip-карты для изображения. Mip-карты — это предварительно "
"рассчитанные копии изображения с более низким разрешением, которые "
"автоматически используются, если изображение необходимо уменьшить при "
"рендеринге. Они помогают улучшить качество изображения и производительность "
"при рендеринге. Этот метод возвращает ошибку, если изображение сжато, "
"находится в пользовательском формате или если ширина/высота изображения равна "
"[code]0[/code]. Включение [param renormalize] при генерации mip-карт для "
"текстур нормалей гарантирует, что все результирующие векторные значения будут "
"нормализованы.\n"
"Можно проверить, есть ли у изображения mip-карты, вызвав [method has_mipmaps] "
"или [method get_mipmap_count]. Вызов [method generate_mipmaps] для "
"изображения, у которого уже есть mip-карты, заменит существующие mip-карты в "
"изображении."

msgid "Returns a copy of the image's raw data."
msgstr "Возвращает копию необработанных (raw) данных изображения."

msgid "Returns size (in bytes) of the image's raw data."
msgstr "Возвращает размер (в байтах) необработанных данных изображения."

msgid "Returns this image's format."
msgstr "Возвращает формат этого изображения."

msgid "Returns the image's height."
msgstr "Возвращает высоту изображения."

msgid ""
"Returns the number of mipmap levels or 0 if the image has no mipmaps. The "
"largest main level image is not counted as a mipmap level by this method, so "
"if you want to include it you can add 1 to this count."
msgstr ""
"Возвращает количество уровней mipmap или 0, если изображение не имеет mipmap. "
"Самое большое изображение основного уровня не считается уровнем mipmap этим "
"методом, поэтому, если вы хотите включить его, вы можете добавить 1 к этому "
"количеству."

msgid ""
"Returns the offset where the image's mipmap with index [param mipmap] is "
"stored in the [member data] dictionary."
msgstr ""
"Возвращает смещение, где хранится MIP-карта изображения с индексом [param "
"mipmap] в словаре [member data]."

msgid ""
"Returns the color of the pixel at [code](x, y)[/code].\n"
"This is the same as [method get_pixelv], but with two integer arguments "
"instead of a [Vector2i] argument."
msgstr ""
"Возвращает цвет пикселя в [code](x, y)[/code].\n"
"Это то же самое, что и [method get_pixelv], но с двумя целочисленными "
"аргументами вместо аргумента [Vector2i]."

msgid ""
"Returns the color of the pixel at [param point].\n"
"This is the same as [method get_pixel], but with a [Vector2i] argument "
"instead of two integer arguments."
msgstr ""
"Возвращает цвет пикселя в [param point].\n"
"Это то же самое, что и [method get_pixel], но с аргументом [Vector2i] вместо "
"двух целочисленных аргументов."

msgid ""
"Returns a new [Image] that is a copy of this [Image]'s area specified with "
"[param region]."
msgstr ""
"Возвращает новое [Image], являющееся копией области данного [Image], "
"указанной с помощью [param region]."

msgid "Returns the image's size (width and height)."
msgstr "Возвращает размер изображения (ширину и высоту)."

msgid ""
"Returns a [Rect2i] enclosing the visible portion of the image, considering "
"each pixel with a non-zero alpha channel as visible."
msgstr ""
"Возвращает [Rect2i], охватывающий видимую часть изображения, считая каждый "
"пиксель с ненулевым альфа-каналом видимым."

msgid "Returns the image's width."
msgstr "Возвращает ширину изображения."

msgid "Returns [code]true[/code] if the image has generated mipmaps."
msgstr ""
"Возвращает [code]true[/code], если изображение сгенерировало MIP-текстуры."

msgid "Returns [code]true[/code] if the image is compressed."
msgstr "Возвращает [code]true[/code], если изображение сжато."

msgid "Returns [code]true[/code] if the image has no data."
msgstr "Возвращает [code]true[/code], если изображение не содержит данных."

msgid ""
"Returns [code]true[/code] if all the image's pixels have an alpha value of 0. "
"Returns [code]false[/code] if any pixel has an alpha value higher than 0."
msgstr ""
"Возвращает [code]true[/code], если все пиксели изображения имеют альфа-"
"значение 0. Возвращает [code]false[/code], если хотя бы один пиксель имеет "
"альфа-значение больше 0."

msgid ""
"Converts the entire image from the linear colorspace to the sRGB colorspace. "
"Only works on images with [constant FORMAT_RGB8] or [constant FORMAT_RGBA8] "
"formats."
msgstr ""
"Преобразует все изображение из линейного цветового пространства в цветовое "
"пространство sRGB. Работает только с изображениями с форматами [constant "
"FORMAT_RGB8] или [constant FORMAT_RGBA8]."

msgid ""
"Loads an image from file [param path]. See [url=$DOCS_URL/tutorials/"
"assets_pipeline/importing_images.html#supported-image-formats]Supported image "
"formats[/url] for a list of supported image formats and limitations.\n"
"[b]Warning:[/b] This method should only be used in the editor or in cases "
"when you need to load external images at run-time, such as images located at "
"the [code]user://[/code] directory, and may not work in exported projects.\n"
"See also [ImageTexture] description for usage examples."
msgstr ""
"Загружает изображение из файла [param path]. См. [url=$DOCS_URL/tutorials/"
"assets_pipeline/importing_images.html#supported-image-formats]Поддерживаемые "
"форматы изображений[/url] для списка поддерживаемых форматов изображений и "
"ограничений.\n"
"[b]Предупреждение:[/b] Этот метод следует использовать только в редакторе или "
"в случаях, когда вам нужно загрузить внешние изображения во время выполнения, "
"например изображения, расположенные в каталоге [code]user://[/code], и он "
"может не работать в экспортированных проектах.\n"
"См. также описание [ImageTexture] для примеров использования."

msgid ""
"Loads an image from the binary contents of a BMP file.\n"
"[b]Note:[/b] Godot's BMP module doesn't support 16-bit per pixel images. Only "
"1-bit, 4-bit, 8-bit, 24-bit, and 32-bit per pixel images are supported.\n"
"[b]Note:[/b] This method is only available in engine builds with the BMP "
"module enabled. By default, the BMP module is enabled, but it can be disabled "
"at build-time using the [code]module_bmp_enabled=no[/code] SCons option."
msgstr ""
"Загружает изображение из двоичного содержимого файла BMP.\n"
"[b]Примечание:[/b] Модуль BMP Godot не поддерживает изображения с глубиной "
"цвета 16 бит на пиксель. Поддерживаются только изображения с глубиной цвета 1 "
"бит, 4 бит, 8 бит, 24 бит и 32 бита на пиксель.\n"
"[b]Примечание:[/b] Этот метод доступен только в сборках движка с включенным "
"модулем BMP. По умолчанию модуль BMP включен, но его можно отключить во время "
"сборки с помощью параметра [code]module_bmp_enabled=no[/code] в SCons."

msgid ""
"Loads an image from the binary contents of a DDS file.\n"
"[b]Note:[/b] This method is only available in engine builds with the DDS "
"module enabled. By default, the DDS module is enabled, but it can be disabled "
"at build-time using the [code]module_dds_enabled=no[/code] SCons option."
msgstr ""
"Загружает изображение из двоичного содержимого файла DDS.\n"
"[b]Примечание:[/b] Этот метод доступен только в сборках движка с включенным "
"модулем DDS. По умолчанию модуль DDS включен, но его можно отключить во время "
"сборки с помощью параметра [code]module_dds_enabled=no[/code] в SCons."

msgid "Creates a new [Image] and loads data from the specified file."
msgstr "Создает новое [Image] и загружает данные из указанного файла."

msgid "Loads an image from the binary contents of a JPEG file."
msgstr "Загружает изображение из двоичного содержимого файла JPEG."

msgid ""
"Loads an image from the binary contents of a [url=https://github.com/"
"KhronosGroup/KTX-Software]KTX[/url] file. Unlike most image formats, KTX can "
"store VRAM-compressed data and embed mipmaps.\n"
"[b]Note:[/b] Godot's libktx implementation only supports 2D images. Cubemaps, "
"texture arrays, and de-padding are not supported.\n"
"[b]Note:[/b] This method is only available in engine builds with the KTX "
"module enabled. By default, the KTX module is enabled, but it can be disabled "
"at build-time using the [code]module_ktx_enabled=no[/code] SCons option."
msgstr ""
"Загружает изображение из двоичного содержимого файла [url=https://github.com/"
"KhronosGroup/KTX-Software]KTX[/url]. В отличие от большинства форматов "
"изображений, KTX может хранить сжатые VRAM данные и встраивать mip-карты.\n"
"[b]Примечание:[/b] Реализация libktx от Godot поддерживает только 2D-"
"изображения. Кубические карты, массивы текстур и де-паддинг не "
"поддерживаются.\n"
"[b]Примечание:[/b] Этот метод доступен только в сборках движка с включенным "
"модулем KTX. По умолчанию модуль KTX включен, но его можно отключить во время "
"сборки с помощью параметра [code]module_ktx_enabled=no[/code] в SCons."

msgid "Loads an image from the binary contents of a PNG file."
msgstr "Загружает изображение из двоичного содержимого PNG-файла."

msgid ""
"Loads an image from the UTF-8 binary contents of an [b]uncompressed[/b] SVG "
"file ([b].svg[/b]).\n"
"[b]Note:[/b] Beware when using compressed SVG files (like [b].svgz[/b]), they "
"need to be [code]decompressed[/code] before loading.\n"
"[b]Note:[/b] This method is only available in engine builds with the SVG "
"module enabled. By default, the SVG module is enabled, but it can be disabled "
"at build-time using the [code]module_svg_enabled=no[/code] SCons option."
msgstr ""
"Загружает изображение из двоичного содержимого UTF-8 [b]несжатого[/b] SVG-"
"файла ([b].svg[/b]).\n"
"[b]Примечание:[/b] Будьте осторожны при использовании сжатых SVG-файлов "
"(например, [b].svgz[/b]), их необходимо [code]распаковать[/code] перед "
"загрузкой.\n"
"[b]Примечание:[/b] Этот метод доступен только в сборках движка с включенным "
"модулем SVG. По умолчанию модуль SVG включен, но его можно отключить во время "
"сборки с помощью параметра [code]module_svg_enabled=no[/code] в SCons."

msgid ""
"Loads an image from the string contents of an SVG file ([b].svg[/b]).\n"
"[b]Note:[/b] This method is only available in engine builds with the SVG "
"module enabled. By default, the SVG module is enabled, but it can be disabled "
"at build-time using the [code]module_svg_enabled=no[/code] SCons option."
msgstr ""
"Загружает изображение из строкового содержимого файла SVG ([b].svg[/b]).\n"
"[b]Примечание:[/b] Этот метод доступен только в сборках движка с включенным "
"модулем SVG. По умолчанию модуль SVG включен, но его можно отключить во время "
"сборки с помощью параметра [code]module_svg_enabled=no[/code] в SCons."

msgid ""
"Loads an image from the binary contents of a TGA file.\n"
"[b]Note:[/b] This method is only available in engine builds with the TGA "
"module enabled. By default, the TGA module is enabled, but it can be disabled "
"at build-time using the [code]module_tga_enabled=no[/code] SCons option."
msgstr ""
"Загружает изображение из двоичного содержимого файла TGA.\n"
"[b]Примечание:[/b] Этот метод доступен только в сборках движка с включенным "
"модулем TGA. По умолчанию модуль TGA включен, но его можно отключить во время "
"сборки с помощью параметра [code]module_tga_enabled=no[/code] в SCons."

msgid "Loads an image from the binary contents of a WebP file."
msgstr "Загружает изображение из двоичного содержимого файла WebP."

msgid ""
"Converts the image's data to represent coordinates on a 3D plane. This is "
"used when the image represents a normal map. A normal map can add lots of "
"detail to a 3D surface without increasing the polygon count."
msgstr ""
"Преобразует данные изображения в координаты на 3D-плоскости. Используется, "
"когда изображение представляет собой карту нормалей. Карта нормалей может "
"добавить много деталей к 3D-поверхности без увеличения количества полигонов."

msgid ""
"Multiplies color values with alpha values. Resulting color values for a pixel "
"are [code](color * alpha)/256[/code]. See also [member "
"CanvasItemMaterial.blend_mode]."
msgstr ""
"Умножает значения цвета на значения альфа. Результирующие значения цвета для "
"пикселя: [code](color * alpha)/256[/code]. См. также [member "
"CanvasItemMaterial.blend_mode]."

msgid ""
"Resizes the image to the given [param width] and [param height]. New pixels "
"are calculated using the [param interpolation] mode defined via [enum "
"Interpolation] constants."
msgstr ""
"Изменяет размер изображения до заданных [param width] и [param height]. Новые "
"пиксели рассчитываются с использованием режима [param interpolation], "
"определенного через константы [enum Interpolation]."

msgid ""
"Resizes the image to the nearest power of 2 for the width and height. If "
"[param square] is [code]true[/code], sets width and height to be the same. "
"New pixels are calculated using the [param interpolation] mode defined via "
"[enum Interpolation] constants."
msgstr ""
"Изменяет размер изображения до ближайшей степени 2 для ширины и высоты. Если "
"[param square] равен [code]true[/code], ширина и высота устанавливаются "
"одинаковыми. Новые пиксели вычисляются с использованием режима [param "
"interpolation], определенного через константы [enum Interpolation]."

msgid ""
"Converts a standard RGBE (Red Green Blue Exponent) image to an sRGB image."
msgstr ""
"Преобразует стандартное изображение RGBE (Red Green Blue Exponent) в "
"изображение sRGB."

msgid ""
"Rotates the image in the specified [param direction] by [code]90[/code] "
"degrees. The width and height of the image must be greater than [code]1[/"
"code]. If the width and height are not equal, the image will be resized."
msgstr ""
"Поворачивает изображение в указанном [param direction] на [code]90[/code] "
"градусов. Ширина и высота изображения должны быть больше [code]1[/code]. Если "
"ширина и высота не равны, изображение будет изменено."

msgid ""
"Rotates the image by [code]180[/code] degrees. The width and height of the "
"image must be greater than [code]1[/code]."
msgstr ""
"Поворачивает изображение на [code]180[/code] градусов. Ширина и высота "
"изображения должны быть больше [code]1[/code]."

msgid ""
"Saves the image as a DDS (DirectDraw Surface) file to [param path]. DDS is a "
"container format that can store textures in various compression formats, such "
"as DXT1, DXT5, or BC7. This function will return [constant ERR_UNAVAILABLE] "
"if Godot was compiled without the DDS module.\n"
"[b]Note:[/b] The DDS module may be disabled in certain builds, which means "
"[method save_dds] will return [constant ERR_UNAVAILABLE] when it is called "
"from an exported project."
msgstr ""
"Сохраняет изображение как файл DDS (DirectDraw Surface) в [param path]. DDS — "
"это формат контейнера, который может хранить текстуры в различных форматах "
"сжатия, таких как DXT1, DXT5 или BC7. Эта функция вернет [constant "
"ERR_UNAVAILABLE], если Godot был скомпилирован без модуля DDS.\n"
"[b]Примечание:[/b] Модуль DDS может быть отключен в некоторых сборках, что "
"означает, что [method save_dds] вернет [constant ERR_UNAVAILABLE] при вызове "
"из экспортированного проекта."

msgid ""
"Saves the image as a DDS (DirectDraw Surface) file to a byte array. DDS is a "
"container format that can store textures in various compression formats, such "
"as DXT1, DXT5, or BC7. This function will return an empty byte array if Godot "
"was compiled without the DDS module.\n"
"[b]Note:[/b] The DDS module may be disabled in certain builds, which means "
"[method save_dds_to_buffer] will return an empty byte array when it is called "
"from an exported project."
msgstr ""
"Сохраняет изображение как файл DDS (DirectDraw Surface) в байтовый массив. "
"DDS — это контейнерный формат, который может хранить текстуры в различных "
"форматах сжатия, таких как DXT1, DXT5 или BC7. Эта функция вернет пустой "
"байтовый массив, если Godot был скомпилирован без модуля DDS.\n"
"[b]Примечание:[/b] Модуль DDS может быть отключен в некоторых сборках, что "
"означает, что [method save_dds_to_buffer] вернет пустой байтовый массив при "
"вызове из экспортированного проекта."

msgid ""
"Saves the image as an EXR file to [param path]. If [param grayscale] is "
"[code]true[/code] and the image has only one channel, it will be saved "
"explicitly as monochrome rather than one red channel. This function will "
"return [constant ERR_UNAVAILABLE] if Godot was compiled without the TinyEXR "
"module.\n"
"[b]Note:[/b] The TinyEXR module is disabled in non-editor builds, which means "
"[method save_exr] will return [constant ERR_UNAVAILABLE] when it is called "
"from an exported project."
msgstr ""
"Сохраняет изображение как файл EXR в [param path]. Если [param grayscale] "
"имеет значение [code]true[/code] и изображение имеет только один канал, оно "
"будет явно сохранено как монохромное, а не как один красный канал. Эта "
"функция вернет [constant ERR_UNAVAILABLE], если Godot был скомпилирован без "
"модуля TinyEXR.\n"
"[b]Примечание:[/b] Модуль TinyEXR отключен в сборках без редактора, что "
"означает, что [method save_exr] вернет [constant ERR_UNAVAILABLE] при вызове "
"из экспортированного проекта."

msgid ""
"Saves the image as an EXR file to a byte array. If [param grayscale] is "
"[code]true[/code] and the image has only one channel, it will be saved "
"explicitly as monochrome rather than one red channel. This function will "
"return an empty byte array if Godot was compiled without the TinyEXR module.\n"
"[b]Note:[/b] The TinyEXR module is disabled in non-editor builds, which means "
"[method save_exr_to_buffer] will return an empty byte array when it is called "
"from an exported project."
msgstr ""
"Сохраняет изображение как EXR-файл в массив байтов. Если [param grayscale] "
"имеет значение [code]true[/code] и изображение имеет только один канал, оно "
"будет явно сохранено как монохромное, а не как один красный канал. Эта "
"функция вернет пустой массив байтов, если Godot был скомпилирован без модуля "
"TinyEXR.\n"
"[b]Примечание:[/b] Модуль TinyEXR отключен в сборках без редактора, что "
"означает, что [method save_exr_to_buffer] вернет пустой массив байтов при "
"вызове из экспортированного проекта."

msgid ""
"Saves the image as a JPEG file to [param path] with the specified [param "
"quality] between [code]0.01[/code] and [code]1.0[/code] (inclusive). Higher "
"[param quality] values result in better-looking output at the cost of larger "
"file sizes. Recommended [param quality] values are between [code]0.75[/code] "
"and [code]0.90[/code]. Even at quality [code]1.00[/code], JPEG compression "
"remains lossy.\n"
"[b]Note:[/b] JPEG does not save an alpha channel. If the [Image] contains an "
"alpha channel, the image will still be saved, but the resulting JPEG file "
"won't contain the alpha channel."
msgstr ""
"Сохраняет изображение как файл JPEG в [param path] с указанным [param "
"quality] между [code]0.01[/code] и [code]1.0[/code] (включительно). Более "
"высокие значения [param quality] приводят к более качественному выводу за "
"счет большего размера файла. Рекомендуемые значения [param quality] находятся "
"между [code]0.75[/code] и [code]0.90[/code]. Даже при качестве [code]1.00[/"
"code] сжатие JPEG остается с потерями.\n"
"[b]Примечание:[/b] JPEG не сохраняет альфа-канал. Если [Image] содержит альфа-"
"канал, изображение все равно будет сохранено, но полученный файл JPEG не "
"будет содержать альфа-канал."

msgid ""
"Saves the image as a JPEG file to a byte array with the specified [param "
"quality] between [code]0.01[/code] and [code]1.0[/code] (inclusive). Higher "
"[param quality] values result in better-looking output at the cost of larger "
"byte array sizes (and therefore memory usage). Recommended [param quality] "
"values are between [code]0.75[/code] and [code]0.90[/code]. Even at quality "
"[code]1.00[/code], JPEG compression remains lossy.\n"
"[b]Note:[/b] JPEG does not save an alpha channel. If the [Image] contains an "
"alpha channel, the image will still be saved, but the resulting byte array "
"won't contain the alpha channel."
msgstr ""
"Сохраняет изображение как файл JPEG в байтовый массив с указанным [param "
"quality] между [code]0.01[/code] и [code]1.0[/code] (включительно). Более "
"высокие значения [param quality] приводят к более качественному выводу за "
"счет большего размера байтового массива (и, следовательно, использования "
"памяти). Рекомендуемые значения [param quality] находятся между [code]0.75[/"
"code] и [code]0.90[/code]. Даже при качестве [code]1.00[/code] сжатие JPEG "
"остается потеряным.\n"
"[b]Примечание:[/b] JPEG не сохраняет альфа-канал. Если [Image] содержит альфа-"
"канал, изображение все равно будет сохранено, но полученный байтовый массив "
"не будет содержать альфа-канал."

msgid "Saves the image as a PNG file to the file at [param path]."
msgstr "Сохраняет изображение как файл PNG в файле по адресу [param path]."

msgid "Saves the image as a PNG file to a byte array."
msgstr "Сохраняет изображение как PNG-файл в массиве байтов."

msgid ""
"Saves the image as a WebP (Web Picture) file to the file at [param path]. By "
"default it will save lossless. If [param lossy] is [code]true[/code], the "
"image will be saved lossy, using the [param quality] setting between "
"[code]0.0[/code] and [code]1.0[/code] (inclusive). Lossless WebP offers more "
"efficient compression than PNG.\n"
"[b]Note:[/b] The WebP format is limited to a size of 16383×16383 pixels, "
"while PNG can save larger images."
msgstr ""
"Сохраняет изображение как файл WebP (Web Picture) в файле по адресу [param "
"path]. По умолчанию он сохраняет без потерь. Если [param lossy] равно "
"[code]true[/code], изображение будет сохранено с потерями, используя "
"настройку [param quality] между [code]0.0[/code] и [code]1.0[/code] "
"(включительно). WebP без потерь обеспечивает более эффективное сжатие, чем "
"PNG.\n"
"[b]Примечание:[/b] Формат WebP ограничен размером 16383×16383 пикселей, тогда "
"как PNG может сохранять изображения большего размера."

msgid ""
"Saves the image as a WebP (Web Picture) file to a byte array. By default it "
"will save lossless. If [param lossy] is [code]true[/code], the image will be "
"saved lossy, using the [param quality] setting between [code]0.0[/code] and "
"[code]1.0[/code] (inclusive). Lossless WebP offers more efficient compression "
"than PNG.\n"
"[b]Note:[/b] The WebP format is limited to a size of 16383×16383 pixels, "
"while PNG can save larger images."
msgstr ""
"Сохраняет изображение как файл WebP (Web Picture) в файле по адресу [param "
"path]. По умолчанию он сохраняется без потерь. Если [param lossy] равно "
"[code]true[/code], изображение будет сохранено с потерями, с использованием "
"параметра [paramquality] между [code]0.0[/code] и [code]1.0[/code] "
"(включительно). WebP без потерь обеспечивает более эффективное сжатие, чем "
"PNG.\n"
"[b]Примечание:[/b] Формат WebP ограничен размером 16383×16383 пикселей, тогда "
"как PNG может сохранять изображение большего размера."

msgid ""
"Overwrites data of an existing [Image]. Non-static equivalent of [method "
"create_from_data]."
msgstr ""
"Перезаписывает данные существующего [Image]. Нестатический эквивалент [method "
"create_from_data]."

msgid ""
"Sets the [Color] of the pixel at [code](x, y)[/code] to [param color].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var img_width = 10\n"
"var img_height = 5\n"
"var img = Image.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
"\n"
"img.set_pixel(1, 2, Color.RED) # Sets the color at (1, 2) to red.\n"
"[/gdscript]\n"
"[csharp]\n"
"int imgWidth = 10;\n"
"int imgHeight = 5;\n"
"var img = Image.Create(imgWidth, imgHeight, false, Image.Format.Rgba8);\n"
"\n"
"img.SetPixel(1, 2, Colors.Red); // Sets the color at (1, 2) to red.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This is the same as [method set_pixelv], but with a two integer arguments "
"instead of a [Vector2i] argument."
msgstr ""
"Устанавливает [Color] пикселя в [code](x, y)[/code] на [param color].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var img_width = 10\n"
"var img_height = 5\n"
"var img = Image.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
"\n"
"img.set_pixel(1, 2, Color.RED) # Устанавливает цвет в пикселе(1, 2) на "
"красный.\n"
"[/gdscript]\n"
"[csharp]\n"
"int imgWidth = 10;\n"
"int imgHeight = 5;\n"
"var img = Image.Create(imgWidth, imgHeight, false, Image.Format.Rgba8);\n"
"\n"
"img.SetPixel(1, 2, Colors.Red); // Устанавливает цвет в пикселе(1, 2) на "
"красный.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Это то же самое, что и [method set_pixelv], но с двумя целочисленными "
"аргументами вместо аргумента [Vector2i]."

msgid ""
"Sets the [Color] of the pixel at [param point] to [param color].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var img_width = 10\n"
"var img_height = 5\n"
"var img = Image.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
"\n"
"img.set_pixelv(Vector2i(1, 2), Color.RED) # Sets the color at (1, 2) to red.\n"
"[/gdscript]\n"
"[csharp]\n"
"int imgWidth = 10;\n"
"int imgHeight = 5;\n"
"var img = Image.Create(imgWidth, imgHeight, false, Image.Format.Rgba8);\n"
"\n"
"img.SetPixelv(new Vector2I(1, 2), Colors.Red); // Sets the color at (1, 2) to "
"red.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This is the same as [method set_pixel], but with a [Vector2i] argument "
"instead of two integer arguments."
msgstr ""
"Устанавливает [Color] пикселя в [param point] на [param color].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var img_width = 10\n"
"var img_height = 5\n"
"var img = Image.create(img_width, img_height, false, Image.FORMAT_RGBA8)\n"
"\n"
"img.set_pixelv(Vector2i(1, 2), Color.RED) # Устанавливает цвет в точке (1, 2) "
"на красный.\n"
"[/gdscript]\n"
"[csharp]\n"
"int imgWidth = 10;\n"
"int imgHeight = 5;\n"
"var img = Image.Create(imgWidth, imgHeight, false, Image.Format.Rgba8);\n"
"\n"
"img.SetPixelv(new Vector2I(1, 2), Colors.Red); // Устанавливает цвет в точке "
"(1, 2) на красный.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Это то же самое, что и [method set_pixel], но с аргументом [Vector2i] вместо "
"двух целочисленных аргументов."

msgid ""
"Shrinks the image by a factor of 2 on each axis (this divides the pixel count "
"by 4)."
msgstr ""
"Уменьшает изображение в 2 раза по каждой оси (делит количество пикселей на 4)."

msgid ""
"Converts the raw data from the sRGB colorspace to a linear scale. Only works "
"on images with [constant FORMAT_RGB8] or [constant FORMAT_RGBA8] formats."
msgstr ""
"Преобразует необработанные данные из цветового пространства sRGB в линейную "
"шкалу. Работает только с изображениями с форматами [constant FORMAT_RGB8] или "
"[constant FORMAT_RGBA8]."

msgid ""
"Holds all the image's color data in a given format. See [enum Format] "
"constants."
msgstr ""
"Содержит все данные о цвете изображения в заданном формате. См. константы "
"[enum Format]."

msgid "The maximal width allowed for [Image] resources."
msgstr "Максимально допустимая ширина для ресурсов [Image]."

msgid "The maximal height allowed for [Image] resources."
msgstr "Максимально допустимая высота для ресурсов [Image]."

msgid "Texture format with a single 8-bit depth representing luminance."
msgstr "Формат текстуры с единой 8-битной глубиной, представляющей яркость."

msgid ""
"OpenGL texture format with two values, luminance and alpha each stored with 8 "
"bits."
msgstr ""
"Формат текстуры OpenGL с двумя значениями: яркостью и альфа, каждое из "
"которых хранится в 8 битах."

msgid ""
"OpenGL texture format [code]RED[/code] with a single component and a bitdepth "
"of 8."
msgstr ""
"Формат текстуры OpenGL [code]RED[/code] с одним компонентом и глубиной цвета "
"8 бит."

msgid ""
"OpenGL texture format [code]RG[/code] with two components and a bitdepth of 8 "
"for each."
msgstr ""
"Формат текстуры OpenGL [code]RG[/code] с двумя компонентами и битовой "
"глубиной 8 для каждого."

msgid ""
"OpenGL texture format [code]RGB[/code] with three components, each with a "
"bitdepth of 8.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"Формат текстуры OpenGL [code]RGB[/code] с тремя компонентами, каждый с "
"глубиной цвета 8 бит.\n"
"[b]Примечание:[/b] При создании [ImageTexture] выполняется преобразование "
"sRGB в линейное цветовое пространство."

msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 8.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"Формат текстуры OpenGL [code]RGBA[/code] с четырьмя компонентами, каждый с "
"глубиной цвета 8 бит.\n"
"[b]Примечание:[/b] При создании [ImageTexture] выполняется преобразование "
"sRGB в линейное цветовое пространство."

msgid ""
"OpenGL texture format [code]RGBA[/code] with four components, each with a "
"bitdepth of 4."
msgstr ""
"Формат текстуры OpenGL [code]RGBA[/code] с четырьмя компонентами, каждый с "
"глубиной цвета 4."

msgid ""
"OpenGL texture format [code]RGB[/code] with three components. Red and blue "
"have a bitdepth of 5, and green has a bitdepth of 6."
msgstr ""
"Формат текстуры OpenGL [code]RGB[/code] с тремя компонентами. Красный и синий "
"имеют битовую глубину 5, а зеленый имеет битовую глубину 6."

msgid ""
"OpenGL texture format [code]GL_R32F[/code] where there's one component, a 32-"
"bit floating-point value."
msgstr ""
"Формат текстуры OpenGL [code]GL_R32F[/code], в котором есть один компонент — "
"32-битное значение с плавающей точкой."

msgid ""
"OpenGL texture format [code]GL_RG32F[/code] where there are two components, "
"each a 32-bit floating-point values."
msgstr ""
"Формат текстуры OpenGL [code]GL_RG32F[/code], в котором есть два компонента, "
"каждый из которых представляет собой 32-битное значение с плавающей точкой."

msgid ""
"OpenGL texture format [code]GL_RGB32F[/code] where there are three "
"components, each a 32-bit floating-point values."
msgstr ""
"Формат текстуры OpenGL [code]GL_RGB32F[/code], в котором есть три компонента, "
"каждый из которых представляет собой 32-битное значение с плавающей точкой."

msgid ""
"OpenGL texture format [code]GL_RGBA32F[/code] where there are four "
"components, each a 32-bit floating-point values."
msgstr ""
"Формат текстуры OpenGL [code]GL_RGBA32F[/code], в котором имеется четыре "
"компонента, каждый из которых представляет собой 32-битное значение с "
"плавающей точкой."

msgid ""
"OpenGL texture format [code]GL_R16F[/code] where there's one component, a 16-"
"bit \"half-precision\" floating-point value."
msgstr ""
"Формат текстуры OpenGL [code]GL_R16F[/code], в котором есть один компонент — "
"16-битное значение с плавающей запятой «половинной точности»."

msgid ""
"OpenGL texture format [code]GL_RG16F[/code] where there are two components, "
"each a 16-bit \"half-precision\" floating-point value."
msgstr ""
"Формат текстуры OpenGL [code]GL_RG16F[/code], в котором есть два компонента, "
"каждый из которых представляет собой 16-битное значение с плавающей запятой "
"«половинной точности»."

msgid ""
"OpenGL texture format [code]GL_RGB16F[/code] where there are three "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
"Формат текстуры OpenGL [code]GL_RGB16F[/code], в котором есть три компонента, "
"каждый из которых представляет собой 16-битное значение с плавающей запятой "
"«половинной точности»."

msgid ""
"OpenGL texture format [code]GL_RGBA16F[/code] where there are four "
"components, each a 16-bit \"half-precision\" floating-point value."
msgstr ""
"Формат текстуры OpenGL [code]GL_RGBA16F[/code], в котором имеется четыре "
"компонента, каждый из которых представляет собой 16-битное значение с "
"плавающей запятой «половинной точности»."

msgid ""
"A special OpenGL texture format where the three color components have 9 bits "
"of precision and all three share a single 5-bit exponent."
msgstr ""
"Специальный формат текстуры OpenGL, в котором три цветовых компонента имеют "
"точность 9 бит и все три имеют одну 5-битную экспоненту."

msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 1, and is the smallest variation "
"of S3TC, only providing 1 bit of alpha and color data being premultiplied "
"with alpha.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"Формат текстуры [url=https://en.wikipedia.org/wiki/"
"S3_Texture_Compression]S3TC[/url], который использует Block Compression 1, и "
"является наименьшей вариацией S3TC, предоставляя только 1 бит альфа-канала и "
"цветовых данных, предварительно умножаемых на альфа-канал.\n"
"[b]Примечание:[/b] При создании [ImageTexture] выполняется преобразование "
"sRGB в линейное цветовое пространство."

msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format that uses Block Compression 2, and color data is interpreted "
"as not having been premultiplied by alpha. Well suited for images with sharp "
"alpha transitions between translucent and opaque areas.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"Формат текстуры [url=https://en.wikipedia.org/wiki/"
"S3_Texture_Compression]S3TC[/url], который использует Block Compression 2, и "
"данные о цвете интерпретируются как не умноженные предварительно на альфа. "
"Хорошо подходит для изображений с резкими альфа-переходами между "
"полупрозрачными и непрозрачными областями.\n"
"[b]Примечание:[/b] При создании [ImageTexture] выполняется преобразование "
"sRGB в линейное цветовое пространство."

msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3 that contains 64 bits "
"of alpha channel data followed by 64 bits of DXT1-encoded color data. Color "
"data is not premultiplied by alpha, same as DXT3. DXT5 generally produces "
"superior results for transparent gradients compared to DXT3.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"Формат текстуры [url=https://en.wikipedia.org/wiki/"
"S3_Texture_Compression]S3TC[/url], также известный как Block Compression 3 "
"или BC3, который содержит 64 бита данных альфа-канала, за которыми следуют 64 "
"бита цветовых данных, закодированных в DXT1. Цветовые данные не умножаются "
"предварительно на альфа, как и DXT3. DXT5 обычно дает превосходные результаты "
"для прозрачных градиентов по сравнению с DXT3.\n"
"[b]Примечание:[/b] При создании [ImageTexture] выполняется преобразование "
"sRGB в линейное цветовое пространство."

msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
"normalizing the red channel data using the same compression algorithm that "
"DXT5 uses for the alpha channel."
msgstr ""
"Формат текстуры, использующий [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]сжатие красно-зеленой текстуры[/url], "
"нормализующий данные красного канала с использованием того же алгоритма "
"сжатия, который DXT5 использует для альфа-канала."

msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]Red Green Texture Compression[/url], "
"normalizing the red and green channel data using the same compression "
"algorithm that DXT5 uses for the alpha channel."
msgstr ""
"Формат текстуры, использующий [url=https://www.khronos.org/opengl/wiki/"
"Red_Green_Texture_Compression]сжатие красно-зеленой текстуры[/url], "
"нормализующий данные красного и зеленого каналов с использованием того же "
"алгоритма сжатия, который DXT5 использует для альфа-канала."

msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned normalized RGBA "
"components.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"Формат текстуры, использующий сжатие [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] с беззнаковыми нормализованными "
"компонентами RGBA.\n"
"[b]Примечание:[/b] При создании [ImageTexture] выполняется преобразование "
"sRGB в линейное цветовое пространство."

msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with signed floating-point "
"RGB components."
msgstr ""
"Формат текстуры, использующий сжатие [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] со знаковыми компонентами RGB с плавающей "
"точкой."

msgid ""
"Texture format that uses [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] compression with unsigned floating-point "
"RGB components."
msgstr ""
"Формат текстуры, использующий сжатие [url=https://www.khronos.org/opengl/wiki/"
"BPTC_Texture_Compression]BPTC[/url] с беззнаковыми компонентами RGB с "
"плавающей точкой."

msgid ""
"[url=https://en.wikipedia.org/wiki/Ericsson_Texture_Compression#ETC1]Ericsson "
"Texture Compression format 1[/url], also referred to as \"ETC1\", and is part "
"of the OpenGL ES graphics standard. This format cannot store an alpha channel."
msgstr ""
"[url=https://en.wikipedia.org/wiki/Ericsson_Texture_Compression#ETC1]Формат "
"сжатия текстур Ericsson 1[/url], также называемый \"ETC1\", и является частью "
"графического стандарта OpenGL ES. Этот формат не может хранить альфа-канал."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]R11_EAC[/code] variant), which provides one channel of "
"unsigned data."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Формат сжатия текстур Ericsson 2[/"
"url] (вариант [code]R11_EAC[/code]), который предоставляет один канал не "
"подписанных данных."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]SIGNED_R11_EAC[/code] variant), which provides one channel of "
"signed data."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Формат сжатия текстур Ericsson 2[/"
"url] (вариант [code]SIGNED_R11_EAC[/code]), который обеспечивает один канал "
"подписанных данных."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]RG11_EAC[/code] variant), which provides two channels of "
"unsigned data."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Формат сжатия текстур Ericsson 2[/"
"url] (вариант [code]RG11_EAC[/code]), который предоставляет два канала "
"неподписанных данных."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]SIGNED_RG11_EAC[/code] variant), which provides two channels "
"of signed data."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Формат сжатия текстур Ericsson 2[/"
"url] (вариант [code]SIGNED_RG11_EAC[/code]), который обеспечивает два канала "
"подписанных данных."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]RGB8[/code] variant), which is a follow-up of ETC1 and "
"compresses RGB888 data.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Формат сжатия текстур Ericsson 2[/"
"url] (вариант [code]RGB8[/code]), который является продолжением ETC1 и "
"сжимает данные RGB888.\n"
"[b]Примечание:[/b] При создании [ImageTexture] выполняется преобразование "
"sRGB в линейное цветовое пространство."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]RGBA8[/code]variant), which compresses RGBA8888 data with full "
"alpha support.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Формат сжатия текстур Ericsson 2[/"
"url] (вариант [code]RGBA8[/code]), который сжимает данные RGBA8888 с полной "
"поддержкой альфа-канала.\n"
"[b]Примечание:[/b] При создании [ImageTexture] выполняется преобразование "
"sRGB в линейное цветовое пространство."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]RGB8_PUNCHTHROUGH_ALPHA1[/code] variant), which compresses "
"RGBA data to make alpha either fully transparent or fully opaque.\n"
"[b]Note:[/b] When creating an [ImageTexture], an sRGB to linear color space "
"conversion is performed."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Формат сжатия текстур Ericsson 2[/"
"url] (вариант [code]RGB8_PUNCHTHROUGH_ALPHA1[/code]), который сжимает данные "
"RGBA, чтобы сделать альфа-канал либо полностью прозрачным, либо полностью "
"непрозрачным.\n"
"[b]Примечание:[/b] При создании [ImageTexture] выполняется преобразование "
"sRGB в линейное цветовое пространство."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Ericsson Texture Compression format "
"2[/url] ([code]RGBA8[/code] variant), which compresses RA data and interprets "
"it as two channels (red and green). See also [constant FORMAT_ETC2_RGBA8]."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Ericsson_Texture_Compression#ETC2_and_EAC]Формат сжатия текстур Ericsson 2[/"
"url] (вариант [code]RGBA8[/code]), который сжимает данные RA и интерпретирует "
"их как два канала (красный и зеленый). См. также [constant FORMAT_ETC2_RGBA8]."

msgid ""
"The [url=https://en.wikipedia.org/wiki/S3_Texture_Compression]S3TC[/url] "
"texture format also known as Block Compression 3 or BC3, which compresses RA "
"data and interprets it as two channels (red and green). See also [constant "
"FORMAT_DXT5]."
msgstr ""
"Формат текстуры [url=https://en.wikipedia.org/wiki/"
"S3_Texture_Compression]S3TC[/url], также известный как Block Compression 3 "
"или BC3, который сжимает данные RA и интерпретирует их как два канала "
"(красный и зеленый). См. также [constant FORMAT_DXT5]."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Adaptive_scalable_texture_compression]Adaptive Scalable Texture Compression[/"
"url]. This implements the 4×4 (high quality) mode."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Adaptive_scalable_texture_compression]Адаптивное масштабируемое сжатие "
"текстур[/url]. Это реализует режим 4×4 (высокое качество)."

msgid ""
"Same format as [constant FORMAT_ASTC_4x4], but with the hint to let the GPU "
"know it is used for HDR."
msgstr ""
"Тот же формат, что и [constant FORMAT_ASTC_4x4], но с подсказкой, сообщающей "
"графическому процессору, что он используется для HDR."

msgid ""
"[url=https://en.wikipedia.org/wiki/"
"Adaptive_scalable_texture_compression]Adaptive Scalable Texture Compression[/"
"url]. This implements the 8×8 (low quality) mode."
msgstr ""
"[url=https://en.wikipedia.org/wiki/"
"Adaptive_scalable_texture_compression]Адаптивное масштабируемое сжатие "
"текстур[/url]. Это реализует режим 8×8 (низкое качество)."

msgid ""
"Same format as [constant FORMAT_ASTC_8x8], but with the hint to let the GPU "
"know it is used for HDR."
msgstr ""
"Тот же формат, что и [constant FORMAT_ASTC_8x8], но с подсказкой, сообщающей "
"графическому процессору, что он используется для HDR."

msgid "Represents the size of the [enum Format] enum."
msgstr "Представляет размер перечисления [enum Format]."

msgid ""
"Performs nearest-neighbor interpolation. If the image is resized, it will be "
"pixelated."
msgstr ""
"Выполняет интерполяцию ближайшего соседа. Если изображение изменено, оно "
"будет пикселизировано."

msgid ""
"Performs bilinear interpolation. If the image is resized, it will be blurry. "
"This mode is faster than [constant INTERPOLATE_CUBIC], but it results in "
"lower quality."
msgstr ""
"Выполняет билинейную интерполяцию. Если изменить размер изображения, оно "
"будет размытым. Этот режим быстрее, чем [constant INTERPOLATE_CUBIC], но "
"приводит к снижению качества."

msgid ""
"Performs cubic interpolation. If the image is resized, it will be blurry. "
"This mode often gives better results compared to [constant "
"INTERPOLATE_BILINEAR], at the cost of being slower."
msgstr ""
"Выполняет кубическую интерполяцию. Если изменить размер изображения, оно "
"будет размытым. Этот режим часто дает лучшие результаты по сравнению с "
"[constant INTERPOLATE_BILINEAR], ценой более медленной работы."

msgid ""
"Performs bilinear separately on the two most-suited mipmap levels, then "
"linearly interpolates between them.\n"
"It's slower than [constant INTERPOLATE_BILINEAR], but produces higher-quality "
"results with far fewer aliasing artifacts.\n"
"If the image does not have mipmaps, they will be generated and used "
"internally, but no mipmaps will be generated on the resulting image.\n"
"[b]Note:[/b] If you intend to scale multiple copies of the original image, "
"it's better to call [method generate_mipmaps]] on it in advance, to avoid "
"wasting processing power in generating them again and again.\n"
"On the other hand, if the image already has mipmaps, they will be used, and a "
"new set will be generated for the resulting image."
msgstr ""
"Выполняет билинейную обработку отдельно на двух наиболее подходящих уровнях "
"MIP-карт, затем линейно интерполирует между ними.\n"
"Это медленнее, чем [constant INTERPOLATE_BILINEAR], но дает более "
"качественные результаты с гораздо меньшим количеством артефактов алиасинга.\n"
"Если изображение не имеет MIP-карт, они будут сгенерированы и использованы "
"внутренне, но на результирующем изображении MIP-карты сгенерированы не "
"будут.\n"
"[b]Примечание:[/b] Если вы собираетесь масштабировать несколько копий "
"исходного изображения, лучше вызвать [method generate_mipmaps]] заранее, "
"чтобы избежать траты вычислительной мощности на их генерацию снова и снова.\n"
"С другой стороны, если изображение уже имеет MIP-карты, они будут "
"использованы, и для результирующего изображения будет сгенерирован новый "
"набор."

msgid ""
"Performs Lanczos interpolation. This is the slowest image resizing mode, but "
"it typically gives the best results, especially when downscaling images."
msgstr ""
"Выполняет интерполяцию Lanczos. Это самый медленный режим изменения размера "
"изображения, но он обычно дает наилучшие результаты, особенно при уменьшении "
"масштаба изображений."

msgid "Image does not have alpha."
msgstr "Изображение не имеет альфы."

msgid "Image stores alpha in a single bit."
msgstr "Изображение хранит альфа-канал в одном бите."

msgid "Image uses alpha."
msgstr "Изображ. исп. альфа-канал."

msgid "Use S3TC compression."
msgstr "Исп. S3TC компрессию."

msgid "Use ETC compression."
msgstr "Исп. ETC компрессию."

msgid "Use ETC2 compression."
msgstr "Исп. ETC2 компрессию."

msgid "Use BPTC compression."
msgstr "Использовать BPTC компрессию."

msgid "Use ASTC compression."
msgstr "Используйте ASTC компрессию."

msgid "Represents the size of the [enum CompressMode] enum."
msgstr "Представляет размер перечисления [enum CompressMode]."

msgid "The image only uses one channel for luminance (grayscale)."
msgstr "Изображение использует только один канал яркости (оттенки серого)."

msgid "The image uses two channels for luminance and alpha, respectively."
msgstr "Изображение использует два канала для яркости и альфа соответственно."

msgid "The image only uses the red channel."
msgstr "Изображение использует только красный канал."

msgid "The image uses two channels for red and green."
msgstr "Изображение использует два канала: красный и зеленый."

msgid "The image uses three channels for red, green, and blue."
msgstr "Изображение использует три канала: красный, зеленый и синий."

msgid "The image uses four channels for red, green, blue, and alpha."
msgstr "Изображение использует четыре канала: красный, зеленый, синий и альфа."

msgid ""
"Source texture (before compression) is a regular texture. Default for all "
"textures."
msgstr ""
"Исходная текстура (до сжатия) — обычная текстура. По умолчанию для всех "
"текстур."

msgid "Source texture (before compression) is in sRGB space."
msgstr "Исходная текстура (до сжатия) находится в пространстве sRGB."

msgid ""
"Source texture (before compression) is a normal texture (e.g. it can be "
"compressed into two channels)."
msgstr ""
"Исходная текстура (до сжатия) — это обычная текстура (например, ее можно "
"сжать в два канала)."

msgid ""
"Hint to indicate that the high quality 4×4 ASTC compression format should be "
"used."
msgstr ""
"Подсказка, указывающая на необходимость использования высококачественного "
"формата сжатия 4×4 ASTC."

msgid ""
"Hint to indicate that the low quality 8×8 ASTC compression format should be "
"used."
msgstr ""
"Подсказка, указывающая на необходимость использования формата сжатия ASTC "
"низкого качества 8×8."

msgid "Base class to add support for specific image formats."
msgstr ""
"Базовый класс для добавления поддержки определенных форматов изображений."

msgid ""
"The engine supports multiple image formats out of the box (PNG, SVG, JPEG, "
"WebP to name a few), but you can choose to implement support for additional "
"image formats by extending [ImageFormatLoaderExtension]."
msgstr ""
"Движок изначально поддерживает множество форматов изображений (PNG, SVG, "
"JPEG, WebP и многие другие), но вы можете реализовать поддержку "
"дополнительных форматов изображений, расширив [ImageFormatLoaderExtension]."

msgid ""
"Base class for creating [ImageFormatLoader] extensions (adding support for "
"extra image formats)."
msgstr ""
"Базовый класс для создания расширений [ImageFormatLoader] (добавление "
"поддержки дополнительных форматов изображений)."

msgid ""
"The engine supports multiple image formats out of the box (PNG, SVG, JPEG, "
"WebP to name a few), but you can choose to implement support for additional "
"image formats by extending this class.\n"
"Be sure to respect the documented return types and values. You should create "
"an instance of it, and call [method add_format_loader] to register that "
"loader during the initialization phase."
msgstr ""
"Движок поддерживает несколько форматов изображений из коробки (PNG, SVG, "
"JPEG, WebP и многие другие), но вы можете реализовать поддержку "
"дополнительных форматов изображений, расширив этот класс.\n"
"Обязательно соблюдайте задокументированные типы возвращаемых данных и "
"значения. Вам следует создать его экземпляр и вызвать [method "
"add_format_loader], чтобы зарегистрировать этот загрузчик во время фазы "
"инициализации."

msgid ""
"Returns the list of file extensions for this image format. Files with the "
"given extensions will be treated as image file and loaded using this class."
msgstr ""
"Возвращает список расширений файлов для этого формата изображения. Файлы с "
"заданными расширениями будут рассматриваться как файлы изображений и "
"загружаться с использованием этого класса."

msgid "Loads the content of [param fileaccess] into the provided [param image]."
msgstr ""
"Загружает содержимое [param fileaccess] в предоставленный [param image]."

msgid ""
"Add this format loader to the engine, allowing it to recognize the file "
"extensions returned by [method _get_recognized_extensions]."
msgstr ""
"Добавьте этот загрузчик формата в движок, что позволит ему распознавать "
"расширения файлов, возвращаемые [method _get_recognized_extensions]."

msgid "Remove this format loader from the engine."
msgstr "Удалите этот загрузчик формата из движка."

msgid "A [Texture2D] based on an [Image]."
msgstr "[Texture2D] на основе [Image]."

msgid ""
"A [Texture2D] based on an [Image]. For an image to be displayed, an "
"[ImageTexture] has to be created from it using the [method create_from_image] "
"method:\n"
"[codeblock]\n"
"var image = Image.load_from_file(\"res://icon.svg\")\n"
"var texture = ImageTexture.create_from_image(image)\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]\n"
"This way, textures can be created at run-time by loading images both from "
"within the editor and externally.\n"
"[b]Warning:[/b] Prefer to load imported textures with [method @GDScript.load] "
"over loading them from within the filesystem dynamically with [method "
"Image.load], as it may not work in exported projects:\n"
"[codeblock]\n"
"var texture = load(\"res://icon.svg\")\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]\n"
"This is because images have to be imported as a [CompressedTexture2D] first "
"to be loaded with [method @GDScript.load]. If you'd still like to load an "
"image file just like any other [Resource], import it as an [Image] resource "
"instead, and then load it normally using the [method @GDScript.load] method.\n"
"[b]Note:[/b] The image can be retrieved from an imported texture using the "
"[method Texture2D.get_image] method, which returns a copy of the image:\n"
"[codeblock]\n"
"var texture = load(\"res://icon.svg\")\n"
"var image = texture.get_image()\n"
"[/codeblock]\n"
"An [ImageTexture] is not meant to be operated from within the editor "
"interface directly, and is mostly useful for rendering images on screen "
"dynamically via code. If you need to generate images procedurally from within "
"the editor, consider saving and importing images as custom texture resources "
"implementing a new [EditorImportPlugin].\n"
"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
"hardware limitations."
msgstr ""
"[Texture2D] на основе [Image]. Для отображения изображения, необходимо "
"создать [ImageTexture] с помощью метода [method create_from_image]:\n"
"[codeblock]\n"
"var image = Image.load_from_file(\"res://icon.svg\")\n"
"var texture = ImageTexture.create_from_image(image)\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]\n"
"Таким образом, текстуры можно создавать во время выполнения, загружая "
"изображения как из редактора, так и извне.\n"
"[b]Предупреждение:[/b] Предпочтительнее загружать импортированные текстуры с "
"помощью [method @GDScript.load], чем загружать их из файловой системы "
"динамически с помощью [method Image.load], так как это может не работать в "
"экспортированных проектах:\n"
"[codeblock]\n"
"var texture = load(\"res://icon.svg\")\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]\n"
"Это связано с тем, что изображения сначала должны быть импортированы как "
"[CompressedTexture2D], чтобы быть загруженными с помощью [method "
"@GDScript.load]. Если вы все равно хотите загрузить файл изображения, как и "
"любой другой [Resource], импортируйте его как ресурс [Image], а затем "
"загрузите его обычным образом с помощью метода [method @GDScript.load].\n"
"[b]Примечание:[/b] Изображение можно получить из импортированной текстуры с "
"помощью метода [method Texture2D.get_image], который возвращает копию "
"изображения:\n"
"[codeblock]\n"
"var texture = load(\"res://icon.svg\")\n"
"var image = texture.get_image()\n"
"[/codeblock]\n"
"[ImageTexture] не предназначен для управления из интерфейса редактора "
"напрямую и в основном полезен для динамического рендеринга изображений на "
"экране с помощью кода. Если вам нужно создавать изображения процедурно из "
"редактора, рассмотрите возможность сохранения и импорта изображений в "
"качестве пользовательских ресурсов текстур, реализующих новый "
"[EditorImportPlugin].\n"
"[b]Примечание:[/b] Максимальный размер текстуры составляет 16384×16384 "
"пикселей из-за ограничений графического оборудования."

msgid ""
"Creates a new [ImageTexture] and initializes it by allocating and setting the "
"data from an [Image]."
msgstr ""
"Создает новый [ImageTexture] и инициализирует его, выделяя и устанавливая "
"данные из [Image]."

msgid "Returns the format of the texture."
msgstr "Возвращает формат текстуры."

msgid ""
"Replaces the texture's data with a new [Image]. This will re-allocate new "
"memory for the texture.\n"
"If you want to update the image, but don't need to change its parameters "
"(format, size), use [method update] instead for better performance."
msgstr ""
"Заменяет данные текстуры новым [Image]. Это перераспределит новую память для "
"текстуры.\n"
"Если вы хотите обновить изображение, но не хотите менять его параметры "
"(формат, размер), используйте [method update] для лучшей производительности."

msgid ""
"Replaces the texture's data with a new [Image].\n"
"[b]Note:[/b] The texture has to be created using [method create_from_image] "
"or initialized first with the [method set_image] method before it can be "
"updated. The new image dimensions, format, and mipmaps configuration should "
"match the existing texture's image configuration.\n"
"Use this method over [method set_image] if you need to update the texture "
"frequently, which is faster than allocating additional memory for a new "
"texture each time."
msgstr ""
"Заменяет данные текстуры новым [Image].\n"
"[b]Примечание:[/b] Текстуру необходимо создать с помощью [method "
"create_from_image] или сначала инициализировать с помощью метода [method "
"set_image], прежде чем ее можно будет обновить. Новые размеры изображения, "
"формат и конфигурация mip-карт должны соответствовать конфигурации "
"изображения существующей текстуры.\n"
"Используйте этот метод [method set_image], если вам нужно часто обновлять "
"текстуру, что быстрее, чем выделять дополнительную память для новой текстуры "
"каждый раз."

msgid "Texture with 3 dimensions."
msgstr "Текстура с 3 измерениями."

msgid ""
"[ImageTexture3D] is a 3-dimensional [ImageTexture] that has a width, height, "
"and depth. See also [ImageTextureLayered].\n"
"3D textures are typically used to store density maps for [FogMaterial], color "
"correction LUTs for [Environment], vector fields for "
"[GPUParticlesAttractorVectorField3D] and collision maps for "
"[GPUParticlesCollisionSDF3D]. 3D textures can also be used in custom shaders."
msgstr ""
"[ImageTexture3D] — это трехмерная [ImageTexture], которая имеет ширину, "
"высоту и глубину. См. также [ImageTextureLayered].\n"
"3D-текстуры обычно используются для хранения карт плотности для "
"[FogMaterial], LUT-таблиц цветовой коррекции для [Environment], векторных "
"полей для [GPUParticlesAttractorVectorField3D] и карт столкновений для "
"[GPUParticlesCollisionSDF3D]. 3D-текстуры также можно использовать в "
"пользовательских шейдерах."

msgid ""
"Creates the [ImageTexture3D] with specified [param format], [param width], "
"[param height], and [param depth]. If [param use_mipmaps] is [code]true[/"
"code], generates mipmaps for the [ImageTexture3D]."
msgstr ""
"Создает [ImageTexture3D] с указанными [param format], [param width], [param "
"height] и [param depth]. Если [param use_mipmaps] равен [code]true[/code], "
"генерирует mip-карты для [ImageTexture3D]."

msgid ""
"Replaces the texture's existing data with the layers specified in [param "
"data]. The size of [param data] must match the parameters that were used for "
"[method create]. In other words, the texture cannot be resized or have its "
"format changed by calling [method update]."
msgstr ""
"Заменяет существующие данные текстуры слоями, указанными в [param data]. "
"Размер [param data] должен соответствовать параметрам, которые использовались "
"для [method create]. Другими словами, размер текстуры или ее формат нельзя "
"изменить, вызвав [method update]."

msgid ""
"Base class for texture types which contain the data of multiple "
"[ImageTexture]s. Each image is of the same size and format."
msgstr ""
"Базовый класс для типов текстур, которые содержат данные нескольких "
"[ImageTexture]. Каждое изображение имеет одинаковый размер и формат."

msgid ""
"Base class for [Texture2DArray], [Cubemap] and [CubemapArray]. Cannot be used "
"directly, but contains all the functions necessary for accessing the derived "
"resource types. See also [Texture3D]."
msgstr ""
"Базовый класс для [Texture2DArray], [Cubemap] и [CubemapArray]. Не может "
"использоваться напрямую, но содержит все функции, необходимые для доступа к "
"производным типам ресурсов. См. также [Texture3D]."

msgid ""
"Creates an [ImageTextureLayered] from an array of [Image]s. See [method "
"Image.create] for the expected data format. The first image decides the "
"width, height, image format and mipmapping setting. The other images [i]must[/"
"i] have the same width, height, image format and mipmapping setting.\n"
"Each [Image] represents one [code]layer[/code].\n"
"[codeblock]\n"
"# Fill in an array of Images with different colors.\n"
"var images = []\n"
"const LAYERS = 6\n"
"for i in LAYERS:\n"
"\tvar image = Image.create_empty(128, 128, false, Image.FORMAT_RGB8)\n"
"\tif i % 3 == 0:\n"
"\t\timage.fill(Color.RED)\n"
"\telif i % 3 == 1:\n"
"\t\timage.fill(Color.GREEN)\n"
"\telse:\n"
"\t\timage.fill(Color.BLUE)\n"
"\timages.push_back(image)\n"
"\n"
"# Create and save a 2D texture array. The array of images must have at least "
"1 Image.\n"
"var texture_2d_array = Texture2DArray.new()\n"
"texture_2d_array.create_from_images(images)\n"
"ResourceSaver.save(texture_2d_array, \"res://texture_2d_array.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"\n"
"# Create and save a cubemap. The array of images must have exactly 6 Images.\n"
"# The cubemap's images are specified in this order: X+, X-, Y+, Y-, Z+, Z-\n"
"# (in Godot's coordinate system, so Y+ is \"up\" and Z- is \"forward\").\n"
"var cubemap = Cubemap.new()\n"
"cubemap.create_from_images(images)\n"
"ResourceSaver.save(cubemap, \"res://cubemap.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"\n"
"# Create and save a cubemap array. The array of images must have a multiple "
"of 6 Images.\n"
"# Each cubemap's images are specified in this order: X+, X-, Y+, Y-, Z+, Z-\n"
"# (in Godot's coordinate system, so Y+ is \"up\" and Z- is \"forward\").\n"
"var cubemap_array = CubemapArray.new()\n"
"cubemap_array.create_from_images(images)\n"
"ResourceSaver.save(cubemap_array, \"res://cubemap_array.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"[/codeblock]"
msgstr ""
"Создает [ImageTextureLayered] из массива [Image]. См. [method Image.create] "
"для ожидаемого формата данных. Первое изображение определяет ширину, высоту, "
"формат изображения и настройку mipmapping. Другие изображения [i]должны[/i] "
"иметь ту же ширину, высоту, формат изображения и настройку mipmapping.\n"
"Каждое [Image] представляет один [code]layer[/code].\n"
"[codeblock]\n"
"# Заполните массив изображений разными цветами.\n"
"var images = []\n"
"const LAYERS = 6\n"
"for i in LAYERS:\n"
"\tvar image = Image.create_empty(128, 128, false, Image.FORMAT_RGB8)\n"
"\tif i % 3 == 0:\n"
"\t\timage.fill(Color.RED)\n"
"\telif i % 3 == 1:\n"
"\t\timage.fill(Color.GREEN)\n"
"\telse:\n"
"\t\timage.fill(Color.BLUE)\n"
"\timages.push_back(image)\n"
"\n"
"# Создайте и сохраните массив 2D-текстур. Массив изображений должен содержать "
"не менее 1 изображения.\n"
"var texture_2d_array = Texture2DArray.new()\n"
"texture_2d_array.create_from_images(images)\n"
"ResourceSaver.save(texture_2d_array, \"res://texture_2d_array.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"\n"
"# Создайте и сохраните кубическую карту. Массив изображений должен содержать "
"ровно 6 изображений.\n"
"# Изображения кубической карты указаны в следующем порядке: X+, X-, Y+, Y-, "
"Z+, Z-\n"
"# (в системе координат Годо Y+ — «вверх», а Z- — «вперед»).\n"
"var cubemap = Cubemap.new()\n"
"cubemap.create_from_images(images)\n"
"ResourceSaver.save(cubemap, \"res://cubemap.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"\n"
"# Создайте и сохраните массив кубических карт. Массив изображений должен "
"иметь число изображений, кратное 6.\n"
"# Изображения каждой кубической карты указываются в следующем порядке: X+, "
"X-, Y+, Y-, Z+, Z-\n"
"# (в системе координат Годо Y+ — «вверх», а Z- — «вперед»).\n"
"var cubemap_array = CubemapArray.new()\n"
"cubemap_array.create_from_images(images)\n"
"ResourceSaver.save(cubemap_array, \"res://cubemap_array.res\", "
"ResourceSaver.FLAG_COMPRESS)\n"
"[/codeblock]"

msgid ""
"Replaces the existing [Image] data at the given [param layer] with this new "
"image.\n"
"The given [Image] must have the same width, height, image format, and "
"mipmapping flag as the rest of the referenced images.\n"
"If the image format is unsupported, it will be decompressed and converted to "
"a similar and supported [enum Image.Format].\n"
"The update is immediate: it's synchronized with drawing."
msgstr ""
"Заменяет существующие данные [Image] в указанном [param layer] этим новым "
"изображением.\n"
"Указанное [Image] должно иметь ту же ширину, высоту, формат изображения и "
"флаг MIP-отображения, что и остальные указанные изображения.\n"
"Если формат изображения не поддерживается, он будет распакован и преобразован "
"в аналогичный и поддерживаемый [enum Image.Format].\n"
"Обновление происходит немедленно: оно синхронизируется с рисованием."

msgid "Mesh optimized for creating geometry manually."
msgstr "Сетка оптимизирована для создания геометрии вручную."

msgid ""
"A mesh type optimized for creating geometry manually, similar to OpenGL 1.x "
"immediate mode.\n"
"Here's a sample on how to generate a triangular face:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var mesh = ImmediateMesh.new()\n"
"mesh.surface_begin(Mesh.PRIMITIVE_TRIANGLES)\n"
"mesh.surface_add_vertex(Vector3.LEFT)\n"
"mesh.surface_add_vertex(Vector3.FORWARD)\n"
"mesh.surface_add_vertex(Vector3.ZERO)\n"
"mesh.surface_end()\n"
"[/gdscript]\n"
"[csharp]\n"
"var mesh = new ImmediateMesh();\n"
"mesh.SurfaceBegin(Mesh.PrimitiveType.Triangles);\n"
"mesh.SurfaceAddVertex(Vector3.Left);\n"
"mesh.SurfaceAddVertex(Vector3.Forward);\n"
"mesh.SurfaceAddVertex(Vector3.Zero);\n"
"mesh.SurfaceEnd();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Generating complex geometries with [ImmediateMesh] is highly "
"inefficient. Instead, it is designed to generate simple geometry that changes "
"often."
msgstr ""
"Тип сетки, оптимизированный для создания геометрии вручную, аналогичный "
"непосредственному режиму OpenGL 1.x.\n"
"Вот пример того, как сгенерировать треугольную грань:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var mesh = ImmediateMesh.new()\n"
"mesh.surface_begin(Mesh.PRIMITIVE_TRIANGLES)\n"
"mesh.surface_add_vertex(Vector3.LEFT)\n"
"mesh.surface_add_vertex(Vector3.FORWARD)\n"
"mesh.surface_add_vertex(Vector3.ZERO)\n"
"mesh.surface_end()\n"
"[/gdscript]\n"
"[csharp]\n"
"var mesh = new ImmediateMesh();\n"
"mesh.SurfaceBegin(Mesh.PrimitiveType.Triangles);\n"
"mesh.SurfaceAddVertex(Vector3.Left);\n"
"mesh.SurfaceAddVertex(Vector3.Forward);\n"
"mesh.SurfaceAddVertex(Vector3.Zero);\n"
"mesh.SurfaceEnd();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Генерация сложной геометрии с помощью [ImmediateMesh] "
"крайне неэффективна. Вместо этого она предназначена для генерации простой "
"геометрии, которая часто меняется."

msgid "Using ImmediateMesh"
msgstr "Использование ImmediateMesh"

msgid "Clear all surfaces."
msgstr "Очистить все поверхности."

msgid "Add a 3D vertex using the current attributes previously set."
msgstr "Добавьте 3D-вершину, используя текущие атрибуты, установленные ранее."

msgid "Add a 2D vertex using the current attributes previously set."
msgstr "Добавьте 2D-вершину, используя текущие атрибуты, установленные ранее."

msgid "Begin a new surface."
msgstr "Начните новую поверхность."

msgid ""
"End and commit current surface. Note that surface being created will not be "
"visible until this function is called."
msgstr ""
"Завершить и зафиксировать текущую поверхность. Обратите внимание, что "
"создаваемая поверхность не будет видна, пока не будет вызвана эта функция."

msgid "Set the color attribute that will be pushed with the next vertex."
msgstr ""
"Установите атрибут цвета, который будет добавлен вместе со следующей вершиной."

msgid "Set the normal attribute that will be pushed with the next vertex."
msgstr ""
"Установите атрибут нормали, который будет добавлен вместе со следующей "
"вершиной."

msgid "Set the tangent attribute that will be pushed with the next vertex."
msgstr ""
"Установите атрибут касательной, который будет добавлен вместе со следующей "
"вершиной."

msgid "Set the UV attribute that will be pushed with the next vertex."
msgstr ""
"Установите атрибут UV, который будет добавлен вместе со следующей вершиной."

msgid "Set the UV2 attribute that will be pushed with the next vertex."
msgstr ""
"Установите атрибут UV2, который будет добавляться вместе со следующей "
"вершиной."

msgid ""
"A [Resource] that contains vertex array-based geometry during the import "
"process."
msgstr ""
"[Resource] содержащий геометрию на основе массива вершин во время процесса "
"импорта."

msgid ""
"ImporterMesh is a type of [Resource] analogous to [ArrayMesh]. It contains "
"vertex array-based geometry, divided in [i]surfaces[/i]. Each surface "
"contains a completely separate array and a material used to draw it. Design "
"wise, a mesh with multiple surfaces is preferred to a single surface, because "
"objects created in 3D editing software commonly contain multiple materials.\n"
"Unlike its runtime counterpart, [ImporterMesh] contains mesh data before "
"various import steps, such as lod and shadow mesh generation, have taken "
"place. Modify surface data by calling [method clear], followed by [method "
"add_surface] for each surface."
msgstr ""
"ImporterMesh — это тип [Resource], аналогичный [ArrayMesh]. Он содержит "
"геометрию на основе массива вершин, разделенную на [i]поверхности[/i]. Каждая "
"поверхность содержит полностью отдельный массив и материал, используемый для "
"ее рисования. С точки зрения дизайна сетка с несколькими поверхностями "
"предпочтительнее одной поверхности, поскольку объекты, созданные в "
"программном обеспечении для редактирования 3D, обычно содержат несколько "
"материалов.\n"
"В отличие от своего аналога во время выполнения, [ImporterMesh] содержит "
"данные сетки до того, как будут выполнены различные шаги импорта, такие как "
"генерация сетки lod и теней. Измените данные поверхности, вызвав [method "
"clear], а затем [method add_surface] для каждой поверхности."

msgid ""
"Adds name for a blend shape that will be added with [method add_surface]. "
"Must be called before surface is added."
msgstr ""
"Добавляет имя для формы смешивания, которая будет добавлена с помощью [method "
"add_surface]. Необходимо вызвать перед добавлением поверхности."

msgid "Removes all surfaces and blend shapes from this [ImporterMesh]."
msgstr "Удаляет все поверхности и формы смешивания из этого [ImporterMesh]."

msgid ""
"Generates all lods for this ImporterMesh.\n"
"[param normal_merge_angle] is in degrees and used in the same way as the "
"importer settings in [code]lods[/code].\n"
"[param normal_split_angle] is not used and only remains for compatibility "
"with older versions of the API.\n"
"The number of generated lods can be accessed using [method "
"get_surface_lod_count], and each LOD is available in [method "
"get_surface_lod_size] and [method get_surface_lod_indices].\n"
"[param bone_transform_array] is an [Array] which can be either empty or "
"contain [Transform3D]s which, for each of the mesh's bone IDs, will apply "
"mesh skinning when generating the LOD mesh variations. This is usually used "
"to account for discrepancies in scale between the mesh itself and its "
"skinning data."
msgstr ""
"Генерирует все уровни детализации для этого ImporterMesh.\n"
"[param normal_merge_angle] указывается в градусах и используется так же, как "
"настройки импортера в [code]lods[/code].\n"
"[param normal_split_angle] не используется и остается только для "
"совместимости со старыми версиями API.\n"
"К количеству сгенерированных уровней детализации можно получить доступ с "
"помощью [method get_surface_lod_count], а каждый уровень детализации доступен "
"в [method get_surface_lod_size] и [method get_surface_lod_indices].\n"
"[param bone_transform_array] — это [Array], который может быть как пустым, "
"так и содержать [Transform3D], которые для каждого идентификатора костей "
"сетки будут применять скиннинг сетки при генерации вариаций сетки LOD. Обычно "
"это используется для учета расхождений в масштабе между самой сеткой и ее "
"данными скиннинга."

msgid "Returns the number of blend shapes that the mesh holds."
msgstr "Возвращает количество форм смешивания, которые содержит сетка."

msgid "Returns the blend shape mode for this Mesh."
msgstr "Возвращает режим смешивания форм для данной сетки."

msgid "Returns the size hint of this mesh for lightmap-unwrapping in UV-space."
msgstr ""
"Возвращает подсказку о размере этой сетки для развертки карты освещения в UV-"
"пространстве."

msgid ""
"Returns the mesh data represented by this [ImporterMesh] as a usable "
"[ArrayMesh].\n"
"This method caches the returned mesh, and subsequent calls will return the "
"cached data until [method clear] is called.\n"
"If not yet cached and [param base_mesh] is provided, [param base_mesh] will "
"be used and mutated."
msgstr ""
"Возвращает данные сетки, представленные этим [ImporterMesh], как пригодный "
"для использования [ArrayMesh].\n"
"Этот метод кэширует возвращенную сетку, и последующие вызовы будут возвращать "
"кэшированные данные до тех пор, пока не будет вызван [method clear].\n"
"Если еще не кэшированы и предоставлен [param base_mesh], [param base_mesh] "
"будет использоваться и мутироваться."

msgid ""
"Returns the arrays for the vertices, normals, UVs, etc. that make up the "
"requested surface. See [method add_surface]."
msgstr ""
"Возвращает [Texture2D] заданного кадра.Возвращает массивы вершин, нормалей, "
"UV и т. д., которые составляют запрошенную поверхность. См. [method "
"add_surface]."

msgid ""
"Returns a single set of blend shape arrays for the requested blend shape "
"index for a surface."
msgstr ""
"Возвращает один набор массивов форм смешивания для запрошенного индекса формы "
"смешивания для поверхности."

msgid "Returns the number of surfaces that the mesh holds."
msgstr "Возвращает количество поверхностей, которые содержит сетка."

msgid "Returns the format of the surface that the mesh holds."
msgstr "Возвращает формат поверхности, которую содержит сетка."

msgid "Returns the number of lods that the mesh holds on a given surface."
msgstr ""
"Возвращает количество уровней детализации (LOD), которые сетка содержит на "
"заданной поверхности."

msgid "Returns the index buffer of a lod for a surface."
msgstr ""
"Возвращает индекс буфера уровня детализации (LOD) данных для поверхности."

msgid "Returns the screen ratio which activates a lod for a surface."
msgstr ""
"Возвращает соотношение сторон экрана, которое активирует уровень детализации "
"для поверхности."

msgid ""
"Returns a [Material] in a given surface. Surface is rendered using this "
"material."
msgstr ""
"Возвращает [Material] в заданной поверхности. Поверхность визуализируется с "
"использованием этого материала."

msgid ""
"Returns the primitive type of the requested surface (see [method "
"add_surface])."
msgstr ""
"Возвращает тип примитива запрошенной поверхности (см. [method add_surface])."

msgid "Sets the blend shape mode."
msgstr "Устанавливает режим смешивания форм."

msgid "Sets the size hint of this mesh for lightmap-unwrapping in UV-space."
msgstr ""
"Задает подсказку по размеру этой сетки для развертки карты освещения в UV-"
"пространстве."

msgid ""
"Sets a [Material] for a given surface. Surface will be rendered using this "
"material."
msgstr ""
"Устанавливает [Material] для заданной поверхности. Поверхность будет "
"визуализироваться с использованием этого материала."

msgid "A singleton for handling inputs."
msgstr "Синглтон для обработки входных данных."

msgid ""
"The [Input] singleton handles key presses, mouse buttons and movement, "
"gamepads, and input actions. Actions and their events can be set in the "
"[b]Input Map[/b] tab in [b]Project > Project Settings[/b], or with the "
"[InputMap] class.\n"
"[b]Note:[/b] [Input]'s methods reflect the global input state and are not "
"affected by [method Control.accept_event] or [method "
"Viewport.set_input_as_handled], as those methods only deal with the way input "
"is propagated in the [SceneTree]."
msgstr ""
"Синглтон [Input] обрабатывает нажатия клавиш, кнопки мыши и движение, "
"геймпады и действия ввода. Действия и их события можно задать на вкладке "
"[b]Input Map[/b] в [b]Project > Project Settings[/b] или с помощью класса "
"[InputMap].\n"
"[b]Примечание:[/b] Методы [Input] отражают глобальное состояние ввода и не "
"зависят от [method Control.accept_event] или [method "
"Viewport.set_input_as_handled], поскольку эти методы имеют дело только со "
"способом распространения ввода в [SceneTree]."

msgid "Inputs documentation index"
msgstr "Указатель документации ввода"

msgid ""
"This will simulate pressing the specified action.\n"
"The strength can be used for non-boolean actions, it's ranged between 0 and 1 "
"representing the intensity of the given action.\n"
"[b]Note:[/b] This method will not cause any [method Node._input] calls. It is "
"intended to be used with [method is_action_pressed] and [method "
"is_action_just_pressed]. If you want to simulate [code]_input[/code], use "
"[method parse_input_event] instead."
msgstr ""
"Это сымитирует нажатие указанного действия.\n"
"Силу можно использовать для небулевых действий, она находится в диапазоне от "
"0 до 1, представляя интенсивность данного действия.\n"
"[b]Примечание:[/b] Этот метод не вызовет никаких вызовов [method "
"Node._input]. Он предназначен для использования с [method is_action_pressed] "
"и [method is_action_just_pressed]. Если вы хотите симулировать [code]_input[/"
"code], используйте вместо этого [method parse_input_event]."

msgid "If the specified action is already pressed, this will release it."
msgstr "Если указанное действие уже нажато, это отменит его."

msgid ""
"Adds a new mapping entry (in SDL2 format) to the mapping database. Optionally "
"update already connected devices."
msgstr ""
"Добавляет новую запись сопоставления (в формате SDL2) в базу данных "
"сопоставления. При желании можно обновить уже подключенные устройства."

msgid ""
"Sends all input events which are in the current buffer to the game loop. "
"These events may have been buffered as a result of accumulated input ([member "
"use_accumulated_input]) or agile input flushing ([member "
"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
"The engine will already do this itself at key execution points (at least once "
"per frame). However, this can be useful in advanced cases where you want "
"precise control over the timing of event handling."
msgstr ""
"Отправляет все события ввода, которые находятся в текущем буфере, в игровой "
"цикл. Эти события могли быть буферизованы в результате накопленного ввода "
"([member use_accumulated_input]) или гибкой очистки ввода ([member "
"ProjectSettings.input_devices/buffering/agile_event_flushing]).\n"
"Движок уже сделает это сам в ключевых точках выполнения (по крайней мере один "
"раз за кадр). Однако это может быть полезно в сложных случаях, когда вам "
"нужен точный контроль над временем обработки событий."

msgid ""
"Returns the acceleration in m/s² of the device's accelerometer sensor, if the "
"device has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"Note this method returns an empty [Vector3] when running from the editor even "
"when your device has an accelerometer. You must export your project to a "
"supported device to read values from the accelerometer.\n"
"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
"it always returns [constant Vector3.ZERO].\n"
"[b]Note:[/b] For Android, [member ProjectSettings.input_devices/sensors/"
"enable_accelerometer] must be enabled."
msgstr ""
"Возвращает ускорение в м/с² акселерометрического датчика устройства, если он "
"есть. В противном случае метод возвращает [constant Vector3.ZERO].\n"
"Обратите внимание, что этот метод возвращает пустой [Vector3] при запуске из "
"редактора, даже если на вашем устройстве есть акселерометр. Вам необходимо "
"экспортировать свой проект на поддерживаемое устройство, чтобы считать "
"значения с акселерометра.\n"
"[b]Примечание:[/b] Этот метод работает только на Android и iOS. На других "
"платформах он всегда возвращает [constant Vector3.ZERO].\n"
"[b]Примечание:[/b] Для Android необходимо включить [member "
"ProjectSettings.input_devices/sensors/enable_accelerometer]."

msgid ""
"Returns a value between 0 and 1 representing the raw intensity of the given "
"action, ignoring the action's deadzone. In most cases, you should use [method "
"get_action_strength] instead.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Возвращает значение от 0 до 1, представляющее собой необработанную "
"интенсивность данного действия, игнорируя мертвую зону действия. В "
"большинстве случаев вместо этого следует использовать [method "
"get_action_strength].\n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion]."

msgid ""
"Returns a value between 0 and 1 representing the intensity of the given "
"action. In a joypad, for example, the further away the axis (analog sticks or "
"L2, R2 triggers) is from the dead zone, the closer the value will be to 1. If "
"the action is mapped to a control that has no axis such as the keyboard, the "
"value returned will be 0 or 1.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Возвращает значение от 0 до 1, представляющее интенсивность данного действия. "
"Например, в джойстике, чем дальше ось (аналоговые джойстики или триггеры L2, "
"R2) от мертвой зоны, тем ближе значение будет к 1. Если действие сопоставлено "
"с элементом управления, не имеющим оси, например клавиатурой, возвращаемое "
"значение будет равно 0 или 1.\n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion]."

msgid ""
"Get axis input by specifying two actions, one negative and one positive.\n"
"This is a shorthand for writing "
"[code]Input.get_action_strength(\"positive_action\") - "
"Input.get_action_strength(\"negative_action\")[/code]."
msgstr ""
"Получите входные данные оси, указав два действия, одно отрицательное и одно "
"положительное.\n"
"Это сокращение для записи "
"[code]Input.get_action_strength(\"positive_action\") - "
"Input.get_action_strength(\"negative_action\")[/code]."

msgid ""
"Returns an [Array] containing the device IDs of all currently connected "
"joypads."
msgstr ""
"Возвращает [Array], содержащий идентификаторы устройств всех подключенных в "
"данный момент джойстиков."

msgid "Returns the currently assigned cursor shape."
msgstr "Возвращает текущую назначенную форму курсора."

msgid ""
"Returns the gravity in m/s² of the device's accelerometer sensor, if the "
"device has one. Otherwise, the method returns [constant Vector3.ZERO].\n"
"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
"it always returns [constant Vector3.ZERO].\n"
"[b]Note:[/b] For Android, [member ProjectSettings.input_devices/sensors/"
"enable_gravity] must be enabled."
msgstr ""
"Возвращает силу тяжести (gravity) в м/с² акселерометрического датчика "
"устройства, если он есть. В противном случае метод возвращает [constant "
"Vector3.ZERO].\n"
"[b]Примечание:[/b] Этот метод работает только на Android и iOS. На других "
"платформах он всегда возвращает [constant Vector3.ZERO].\n"
"[b]Примечание:[/b] Для Android необходимо включить [member "
"ProjectSettings.input_devices/sensors/enable_gravity]."

msgid ""
"Returns the rotation rate in rad/s around a device's X, Y, and Z axes of the "
"gyroscope sensor, if the device has one. Otherwise, the method returns "
"[constant Vector3.ZERO].\n"
"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
"it always returns [constant Vector3.ZERO].\n"
"[b]Note:[/b] For Android, [member ProjectSettings.input_devices/sensors/"
"enable_gyroscope] must be enabled."
msgstr ""
"Возвращает скорость вращения в рад/с вокруг осей X, Y и Z устройства датчика "
"гироскопа, если устройство имеет таковой. В противном случае метод возвращает "
"[constant Vector3.ZERO].\n"
"[b]Примечание:[/b] Этот метод работает только на Android и iOS. На других "
"платформах он всегда возвращает [constant Vector3.ZERO].\n"
"[b]Примечание:[/b] Для Android [member ProjectSettings.input_devices/sensors/"
"enable_gyroscope] должен быть включен."

msgid "Returns the current value of the joypad axis at index [param axis]."
msgstr "Возвращает текущее значение оси джойстика по индексу [param axis]."

msgid ""
"Returns an SDL2-compatible device GUID on platforms that use gamepad "
"remapping, e.g. [code]030000004c050000c405000000010000[/code]. Returns an "
"empty string if it cannot be found. Godot uses the [url=https://github.com/"
"gabomdq/SDL_GameControllerDB]SDL2 game controller database[/url] to determine "
"gamepad names and mappings based on this GUID.\n"
"On Windows, all XInput joypad GUIDs will be overridden by Godot to "
"[code]__XINPUT_DEVICE__[/code], because their mappings are the same."
msgstr ""
"Возвращает совместимый с SDL2 GUID устройства на платформах, использующих "
"переназначение геймпада, например, [code]030000004c050000c405000000010000[/"
"code]. Возвращает пустую строку, если не может быть найдена. Godot использует "
"[url=https://github.com/gabomdq/SDL_GameControllerDB]базу данных игровых "
"контроллеров SDL2[/url] для определения имен геймпадов и сопоставлений на "
"основе этого GUID.\n"
"В Windows все GUID джойстиков XInput будут переопределены Godot на "
"[code]__XINPUT_DEVICE__[/code], поскольку их сопоставления одинаковы."

msgid ""
"Returns a dictionary with extra platform-specific information about the "
"device, e.g. the raw gamepad name from the OS or the Steam Input index.\n"
"On Windows, Linux, and macOS, the dictionary contains the following fields:\n"
"[code]raw_name[/code]: The name of the controller as it came from the OS, "
"before getting renamed by the controller database.\n"
"[code]vendor_id[/code]: The USB vendor ID of the device.\n"
"[code]product_id[/code]: The USB product ID of the device.\n"
"[code]steam_input_index[/code]: The Steam Input gamepad index, if the device "
"is not a Steam Input device this key won't be present.\n"
"On Windows, the dictionary can have an additional field:\n"
"[code]xinput_index[/code]: The index of the controller in the XInput system. "
"This key won't be present for devices not handled by XInput.\n"
"[b]Note:[/b] The returned dictionary is always empty on Android, iOS, "
"visionOS, and Web."
msgstr ""
"Возвращает словарь с дополнительной платформенно-специфичной информацией об "
"устройстве, например, исходное имя геймпада из ОС или индекс Steam Input.\n"
"В Windows, Linux и macOS словарь содержит следующие поля:\n"
"[code]raw_name[/code]: Имя контроллера, полученное из ОС до переименования "
"базой данных контроллеров.\n"
"[code]vendor_id[/code]: Идентификатор поставщика USB-устройства.\n"
"[code]product_id[/code]: Идентификатор продукта USB-устройства.\n"
"[code]steam_input_index[/code]: Индекс геймпада Steam Input. Если устройство "
"не является устройством Steam Input, этот ключ отсутствует.\n"
"В Windows словарь может содержать дополнительное поле:\n"
"[code]xinput_index[/code]: Индекс контроллера в системе XInput. Этот ключ "
"отсутствует для устройств, не поддерживаемых XInput.\n"
"[b]Примечание:[/b] Возвращаемый словарь всегда пуст на Android, iOS, visionOS "
"и Web."

msgid ""
"Returns the name of the joypad at the specified device index, e.g. [code]PS4 "
"Controller[/code]. Godot uses the [url=https://github.com/gabomdq/"
"SDL_GameControllerDB]SDL2 game controller database[/url] to determine gamepad "
"names."
msgstr ""
"Возвращает имя джойстика по указанному индексу устройства, например, "
"[code]PS4 Controller[/code]. Godot использует [url=https://github.com/gabomdq/"
"SDL_GameControllerDB]Базу данных игровых контроллеров SDL2[/url] для "
"определения имен геймпадов."

msgid "Returns the duration of the current vibration effect in seconds."
msgstr "Возвращает длительность текущего эффекта вибрации в секундах."

msgid ""
"Returns the strength of the joypad vibration: x is the strength of the weak "
"motor, and y is the strength of the strong motor."
msgstr ""
"Возвращает силу вибрации джойстика: x — сила слабого мотора, y — сила "
"сильного мотора."

msgid ""
"Returns the last mouse velocity in screen coordinates. To provide a precise "
"and jitter-free velocity, mouse velocity is only calculated every 0.1s. "
"Therefore, mouse velocity will lag mouse movements."
msgstr ""
"Возвращает последнюю скорость мыши в координатах экрана. Чтобы обеспечить "
"точную и свободную от дрожания скорость, скорость мыши вычисляется только "
"каждые 0,1 с. Поэтому скорость мыши будет отставать от движений мыши."

msgid ""
"Returns the last mouse velocity. To provide a precise and jitter-free "
"velocity, mouse velocity is only calculated every 0.1s. Therefore, mouse "
"velocity will lag mouse movements."
msgstr ""
"Возвращает последнюю скорость мыши. Чтобы обеспечить точную и свободную от "
"дрожания скорость, скорость мыши вычисляется только каждые 0,1 с. Поэтому "
"скорость мыши будет отставать от движений мыши."

msgid ""
"Returns the magnetic field strength in micro-Tesla for all axes of the "
"device's magnetometer sensor, if the device has one. Otherwise, the method "
"returns [constant Vector3.ZERO].\n"
"[b]Note:[/b] This method only works on Android and iOS. On other platforms, "
"it always returns [constant Vector3.ZERO].\n"
"[b]Note:[/b] For Android, [member ProjectSettings.input_devices/sensors/"
"enable_magnetometer] must be enabled."
msgstr ""
"Возвращает напряженность магнитного поля в микротеслах для всех осей датчика "
"магнитометра устройства, если он есть. В противном случае метод возвращает "
"[constant Vector3.ZERO].\n"
"[b]Примечание:[/b] Этот метод работает только на Android и iOS. На других "
"платформах он всегда возвращает [constant Vector3.ZERO].\n"
"[b]Примечание:[/b] Для Android необходимо включить [member "
"ProjectSettings.input_devices/sensors/enable_magnetometer]."

msgid ""
"Returns mouse buttons as a bitmask. If multiple mouse buttons are pressed at "
"the same time, the bits are added together. Equivalent to [method "
"DisplayServer.mouse_get_button_state]."
msgstr ""
"Возвращает кнопки мыши как битовую маску. Если одновременно нажато несколько "
"кнопок мыши, биты суммируются. Эквивалентно [method "
"DisplayServer.mouse_get_button_state]."

msgid ""
"Gets an input vector by specifying four actions for the positive and negative "
"X and Y axes.\n"
"This method is useful when getting vector input, such as from a joystick, "
"directional pad, arrows, or WASD. The vector has its length limited to 1 and "
"has a circular deadzone, which is useful for using vector input as movement.\n"
"By default, the deadzone is automatically calculated from the average of the "
"action deadzones. However, you can override the deadzone to be whatever you "
"want (on the range of 0 to 1)."
msgstr ""
"Получает входной вектор, указывая четыре действия для положительных и "
"отрицательных осей X и Y.\n"
"Этот метод полезен при получении векторного ввода, например, с джойстика, "
"навигационной панели, стрелок или WASD. Длина вектора ограничена 1, и он "
"имеет круговую мертвую зону, что полезно для использования векторного ввода в "
"качестве движения.\n"
"По умолчанию мертвая зона автоматически рассчитывается из среднего значения "
"мертвых зон действий. Однако вы можете переопределить мертвую зону, чтобы она "
"была любой, которую вы хотите (в диапазоне от 0 до 1)."

msgid ""
"Returns [code]true[/code] when the user has [i]started[/i] pressing the "
"action event in the current frame or physics tick. It will only return "
"[code]true[/code] on the frame or tick that the user pressed down the "
"button.\n"
"This is useful for code that needs to run only once when an action is "
"pressed, instead of every frame while it's pressed.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events.\n"
"[b]Note:[/b] Returning [code]true[/code] does not imply that the action is "
"[i]still[/i] pressed. An action can be pressed and released again rapidly, "
"and [code]true[/code] will still be returned so as not to miss input.\n"
"[b]Note:[/b] Due to keyboard ghosting, [method is_action_just_pressed] may "
"return [code]false[/code] even if one of the action's keys is pressed. See "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input "
"examples[/url] in the documentation for more information.\n"
"[b]Note:[/b] During input handling (e.g. [method Node._input]), use [method "
"InputEvent.is_action_pressed] instead to query the action state of the "
"current event. See also [method is_action_just_pressed_by_event]."
msgstr ""
"Возвращает [code]true[/code], когда пользователь [i]начал[/i] нажатие кнопки "
"действия в текущем кадре или тике физики. Возвращает [code]true[/code] только "
"в том кадре или тике, когда пользователь нажал кнопку.\n"
"Это полезно для кода, который должен выполняться только один раз при нажатии "
"кнопки действия, а не каждый кадр, пока она нажата.\n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion].\n"
"[b]Примечание:[/b] Возврат [code]true[/code] не означает, что действие [i]всё "
"ещё[/i] нажато. Действие можно быстро нажать и отпустить, и [code]true[/code] "
"всё равно будет возвращён, чтобы не пропустить ввод.\n"
"[b]Примечание:[/b] Из-за эффекта фантомного нажатия клавиатуры, [method "
"is_action_just_pressed] может возвращать [code]false[/code], даже если нажата "
"одна из клавиш действия. Подробнее см. в разделе [url=$DOCS_URL/tutorials/"
"inputs/input_examples.html#keyboard-events]Примеры ввода[/url] в "
"документации.\n"
"[b]Примечание:[/b] При обработке ввода (например, [method Node._input]) "
"используйте [method InputEvent.is_action_pressed] для запроса состояния "
"действия текущего события. См. также [method is_action_just_pressed_by_event]."

msgid ""
"Returns [code]true[/code] when the user has [i]started[/i] pressing the "
"action event in the current frame or physics tick, and the first event that "
"triggered action press in the current frame/physics tick was [param event]. "
"It will only return [code]true[/code] on the frame or tick that the user "
"pressed down the button.\n"
"This is useful for code that needs to run only once when an action is "
"pressed, and the action is processed during input handling (e.g. [method "
"Node._input]).\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events.\n"
"[b]Note:[/b] Returning [code]true[/code] does not imply that the action is "
"[i]still[/i] pressed. An action can be pressed and released again rapidly, "
"and [code]true[/code] will still be returned so as not to miss input.\n"
"[b]Note:[/b] Due to keyboard ghosting, [method is_action_just_pressed] may "
"return [code]false[/code] even if one of the action's keys is pressed. See "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input "
"examples[/url] in the documentation for more information."
msgstr ""
"Возвращает [code]true[/code], когда пользователь [i]начал[/i] нажатие кнопки "
"действия в текущем кадре или такте физики, и первым событием, вызвавшим "
"нажатие кнопки действия в текущем кадре/такте физики, было [param event]. "
"Возвращает [code]true[/code] только в том кадре или такте, когда пользователь "
"нажал кнопку.\n"
"Это полезно для кода, который должен выполняться только один раз при нажатии "
"кнопки действия, и действие обрабатывается во время обработки ввода "
"(например, [method Node._input]).\n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion].\n"
"[b]Примечание:[/b] Возврат [code]true[/code] не означает, что действие [i]всё "
"ещё[/i] нажато. Действие можно быстро нажать и отпустить, и при этом "
"[code]true[/code] всё равно будет возвращён, чтобы не пропустить ввод.\n"
"[b]Примечание:[/b] Из-за эффекта фантомного нажатия клавиатуры [method "
"is_action_just_pressed] может возвращать [code]false[/code], даже если нажата "
"одна из клавиш действия. Подробнее см. [url=$DOCS_URL/tutorials/inputs/"
"input_examples.html#keyboard-events]Примеры ввода[/url] в документации."

msgid ""
"Returns [code]true[/code] when the user [i]stops[/i] pressing the action "
"event in the current frame or physics tick. It will only return [code]true[/"
"code] on the frame or tick that the user releases the button.\n"
"[b]Note:[/b] Returning [code]true[/code] does not imply that the action is "
"[i]still[/i] not pressed. An action can be released and pressed again "
"rapidly, and [code]true[/code] will still be returned so as not to miss "
"input.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events.\n"
"[b]Note:[/b] During input handling (e.g. [method Node._input]), use [method "
"InputEvent.is_action_released] instead to query the action state of the "
"current event. See also [method is_action_just_released_by_event]."
msgstr ""
"Возвращает [code]true[/code], когда пользователь [i]прекращает[/i] нажатие на "
"событие действия в текущем кадре или такте физики. Возвращает [code]true[/"
"code] только в том кадре или такте, когда пользователь отпускает кнопку.\n"
"[b]Примечание:[/b] Возвращение [code]true[/code] не означает, что действие "
"[i]ещё[/i] не нажато. Действие можно быстро отпустить и снова нажать, и "
"[code]true[/code] всё равно будет возвращено, чтобы не пропустить ввод.\n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion].\n"
"[b]Примечание:[/b] Во время обработки входных данных (например, [method "
"Node._input]) используйте [method InputEvent.is_action_released] для запроса "
"состояния действия текущего события. См. также [method "
"is_action_just_released_by_event]."

msgid ""
"Returns [code]true[/code] when the user [i]stops[/i] pressing the action "
"event in the current frame or physics tick, and the first event that "
"triggered action release in the current frame/physics tick was [param event]. "
"It will only return [code]true[/code] on the frame or tick that the user "
"releases the button.\n"
"This is useful when an action is processed during input handling (e.g. "
"[method Node._input]).\n"
"[b]Note:[/b] Returning [code]true[/code] does not imply that the action is "
"[i]still[/i] not pressed. An action can be released and pressed again "
"rapidly, and [code]true[/code] will still be returned so as not to miss "
"input.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Возвращает [code]true[/code], когда пользователь [i]прекращает[/i] нажатие "
"кнопки действия в текущем кадре или такте физики, и первым событием, "
"вызвавшим отпускание кнопки в текущем кадре/такте физики, было [param event]. "
"Возвращает [code]true[/code] только в том кадре или такте, когда пользователь "
"отпускает кнопку.\n"
"Это полезно, когда действие обрабатывается во время обработки ввода "
"(например, [method Node._input]).\n"
"[b]Примечание:[/b] Возврат [code]true[/code] не означает, что действие "
"[i]ещё[/i] не нажато. Действие можно быстро отпустить и снова нажать, и "
"[code]true[/code] всё равно будет возвращён, чтобы не пропустить ввод. \n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion]."

msgid ""
"Returns [code]true[/code] if you are pressing the action event.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events.\n"
"[b]Note:[/b] Due to keyboard ghosting, [method is_action_pressed] may return "
"[code]false[/code] even if one of the action's keys is pressed. See "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input "
"examples[/url] in the documentation for more information."
msgstr ""
"Возвращает [code]true[/code], если вы нажимаете событие действия.\n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion].\n"
"[b]Примечание:[/b] Из-за эффекта фантомного нажатия клавиатуры [method "
"is_action_pressed] может возвращать [code]false[/code], даже если нажата одна "
"из клавиш действия. Для получения дополнительной информации см. "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Примеры "
"ввода[/url] в документации."

msgid ""
"Returns [code]true[/code] if any action, key, joypad button, or mouse button "
"is being pressed. This will also return [code]true[/code] if any action is "
"simulated via code by calling [method action_press]."
msgstr ""
"Возвращает [code]true[/code], если нажато какое-либо действие, клавиша, "
"кнопка джойстика или кнопка мыши. Это также вернет [code]true[/code], если "
"какое-либо действие имитируется через код путем вызова [method action_press]."

msgid ""
"Returns [code]true[/code] if you are pressing the joypad button at index "
"[param button]."
msgstr ""
"Возвращает [code]true[/code], если вы нажимаете кнопку джойстика с индексом "
"[param button]."

msgid ""
"Returns [code]true[/code] if the system knows the specified device. This "
"means that it sets all button and axis indices. Unknown joypads are not "
"expected to match these constants, but you can still retrieve events from "
"them."
msgstr ""
"Возвращает [code]true[/code], если система знает указанное устройство. Это "
"означает, что она устанавливает все индексы кнопок и осей. Неизвестные "
"джойстики не должны соответствовать этим константам, но вы все равно можете "
"извлекать из них события."

msgid ""
"Returns [code]true[/code] if you are pressing the key with the [param "
"keycode] printed on it. You can pass a [enum Key] constant or any Unicode "
"character code."
msgstr ""
"Возвращает [code]true[/code], если вы нажимаете клавишу с напечатанным на ней "
"[param keycode]. Вы можете передать константу [enum Key] или любой код "
"символа Unicode."

msgid ""
"Returns [code]true[/code] if you are pressing the Latin key in the current "
"keyboard layout. You can pass a [enum Key] constant.\n"
"[method is_key_pressed] is only recommended over [method "
"is_physical_key_pressed] in non-game applications. This ensures that shortcut "
"keys behave as expected depending on the user's keyboard layout, as keyboard "
"shortcuts are generally dependent on the keyboard layout in non-game "
"applications. If in doubt, use [method is_physical_key_pressed].\n"
"[b]Note:[/b] Due to keyboard ghosting, [method is_key_pressed] may return "
"[code]false[/code] even if one of the action's keys is pressed. See "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input "
"examples[/url] in the documentation for more information."
msgstr ""
"Возвращает [code]true[/code], если вы нажимаете латинскую клавишу в текущей "
"раскладке клавиатуры. Вы можете передать константу [enum Key].\n"
"[method is_key_pressed] рекомендуется только вместо [method "
"is_physical_key_pressed] в неигровых приложениях. Это гарантирует, что "
"сочетания клавиш ведут себя ожидаемым образом в зависимости от раскладки "
"клавиатуры пользователя, поскольку сочетания клавиш, как правило, зависят от "
"раскладки клавиатуры в неигровых приложениях. Если есть сомнения, используйте "
"[method is_physical_key_pressed].\n"
"[b]Примечание:[/b] Из-за эффекта фантомных нажатий клавиатуры [method "
"is_key_pressed] может возвращать [code]false[/code], даже если нажата одна из "
"клавиш действия. См. [url=$DOCS_URL/tutorials/inputs/"
"input_examples.html#keyboard-events]Примеры ввода[/url] в документации для "
"получения дополнительной информации."

msgid ""
"Returns [code]true[/code] if you are pressing the mouse button specified with "
"[enum MouseButton]."
msgstr ""
"Возвращает [code]true[/code], если вы нажимаете кнопку мыши, указанную с "
"помощью [enum MouseButton]."

msgid ""
"Returns [code]true[/code] if you are pressing the key in the physical "
"location on the 101/102-key US QWERTY keyboard. You can pass a [enum Key] "
"constant.\n"
"[method is_physical_key_pressed] is recommended over [method is_key_pressed] "
"for in-game actions, as it will make [kbd]W[/kbd]/[kbd]A[/kbd]/[kbd]S[/kbd]/"
"[kbd]D[/kbd] layouts work regardless of the user's keyboard layout. [method "
"is_physical_key_pressed] will also ensure that the top row number keys work "
"on any keyboard layout. If in doubt, use [method is_physical_key_pressed].\n"
"[b]Note:[/b] Due to keyboard ghosting, [method is_physical_key_pressed] may "
"return [code]false[/code] even if one of the action's keys is pressed. See "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input "
"examples[/url] in the documentation for more information."
msgstr ""
"Возвращает [code]true[/code], если вы нажимаете клавишу в физическом месте на "
"101/102-клавишной клавиатуре US QWERTY. Вы можете передать константу [enum "
"Key].\n"
"[method is_physical_key_pressed] рекомендуется вместо [method is_key_pressed] "
"для действий в игре, так как он заставит раскладки [kbd]W[/kbd]/[kbd]A[/kbd]/"
"[kbd]S[/kbd]/[kbd]D[/kbd] работать независимо от раскладки клавиатуры "
"пользователя. [method is_physical_key_pressed] также гарантирует, что клавиши "
"с цифрами верхнего ряда будут работать на любой раскладке клавиатуры. Если вы "
"сомневаетесь, используйте [method is_physical_key_pressed].\n"
"[b]Примечание:[/b] Из-за фантомного нажатия клавиатуры [method "
"is_physical_key_pressed] может возвращать [code]false[/code], даже если "
"нажата одна из клавиш действия. Для получения дополнительной информации см. "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Примеры "
"ввода[/url] в документации."

msgid ""
"Feeds an [InputEvent] to the game. Can be used to artificially trigger input "
"events from code. Also generates [method Node._input] calls.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var cancel_event = InputEventAction.new()\n"
"cancel_event.action = \"ui_cancel\"\n"
"cancel_event.pressed = true\n"
"Input.parse_input_event(cancel_event)\n"
"[/gdscript]\n"
"[csharp]\n"
"var cancelEvent = new InputEventAction();\n"
"cancelEvent.Action = \"ui_cancel\";\n"
"cancelEvent.Pressed = true;\n"
"Input.ParseInputEvent(cancelEvent);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Calling this function has no influence on the operating system. "
"So for example sending an [InputEventMouseMotion] will not move the OS mouse "
"cursor to the specified position (use [method warp_mouse] instead) and "
"sending [kbd]Alt/Cmd + Tab[/kbd] as [InputEventKey] won't toggle between "
"active windows."
msgstr ""
"Подает [InputEvent] в игру. Может использоваться для искусственного запуска "
"событий ввода из кода. Также генерирует вызовы [method Node._input].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var cancel_event = InputEventAction.new()\n"
"cancel_event.action = \"ui_cancel\"\n"
"cancel_event.pressed = true\n"
"Input.parse_input_event(cancel_event)\n"
"[/gdscript]\n"
"[csharp]\n"
"var cancelEvent = new InputEventAction();\n"
"cancelEvent.Action = \"ui_cancel\";\n"
"cancelEvent.Pressed = true;\n"
"Input.ParseInputEvent(cancelEvent);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Вызов этой функции не влияет на операционную систему. Так, "
"например, отправка [InputEventMouseMotion] не переместит курсор мыши ОС в "
"указанную позицию (используйте вместо этого [method warp_mouse]), а отправка "
"[kbd]Alt/Cmd + Tab[/kbd] в качестве [InputEventKey] не будет переключать "
"между активными окнами."

msgid ""
"Removes all mappings from the internal database that match the given GUID. "
"All currently connected joypads that use this GUID will become unmapped.\n"
"On Android, Godot will map to an internal fallback mapping."
msgstr ""
"Удаляет все сопоставления из внутренней базы данных, которые соответствуют "
"данному GUID. Все подключенные в данный момент джойпады, которые используют "
"этот GUID, станут не сопоставленными.\n"
"На Android Godot будет сопоставлен с внутренним резервным сопоставлением."

msgid ""
"Sets the acceleration value of the accelerometer sensor. Can be used for "
"debugging on devices without a hardware sensor, for example in an editor on a "
"PC.\n"
"[b]Note:[/b] This value can be immediately overwritten by the hardware sensor "
"value on Android and iOS."
msgstr ""
"Устанавливает значение ускорения акселерометрического датчика. Может "
"использоваться для отладки на устройствах без аппаратного датчика, например, "
"в редакторе на ПК.\n"
"[b]Примечание:[/b] Это значение может быть немедленно перезаписано значением "
"аппаратного датчика на Android и iOS."

msgid ""
"Sets a custom mouse cursor image, which is only visible inside the game "
"window, for the given mouse [param shape]. The hotspot can also be specified. "
"Passing [code]null[/code] to the image parameter resets to the system "
"cursor.\n"
"[param image] can be either [Texture2D] or [Image] and its size must be lower "
"than or equal to 256×256. To avoid rendering issues, sizes lower than or "
"equal to 128×128 are recommended.\n"
"[param hotspot] must be within [param image]'s size.\n"
"[b]Note:[/b] [AnimatedTexture]s aren't supported as custom mouse cursors. If "
"using an [AnimatedTexture], only the first frame will be displayed.\n"
"[b]Note:[/b] The [b]Lossless[/b], [b]Lossy[/b] or [b]Uncompressed[/b] "
"compression modes are recommended. The [b]Video RAM[/b] compression mode can "
"be used, but it will be decompressed on the CPU, which means loading times "
"are slowed down and no memory is saved compared to lossless modes.\n"
"[b]Note:[/b] On the web platform, the maximum allowed cursor image size is "
"128×128. Cursor images larger than 32×32 will also only be displayed if the "
"mouse cursor image is entirely located within the page for [url=https://"
"chromestatus.com/feature/5825971391299584]security reasons[/url]."
msgstr ""
"Устанавливает пользовательское изображение курсора мыши, которое отображается "
"только внутри игрового окна для заданной мыши [param shape]. Также можно "
"указать горячую точку. Передача [code]null[/code] в параметр image сбрасывает "
"его до системного курсора.\n"
"[param image] может быть либо [Texture2D], либо [Image], а его размер должен "
"быть меньше или равен 256×256. Чтобы избежать проблем с рендерингом, "
"рекомендуются размеры меньше или равны 128×128.\n"
"[param hotspot] должен быть в пределах размера [param image].\n"
"[b]Примечание:[/b] [AnimatedTexture] не поддерживаются в качестве "
"пользовательских курсоров мыши. При использовании [AnimatedTexture] будет "
"отображаться только первый кадр.\n"
"[b]Примечание:[/b] Рекомендуются режимы сжатия [b]Lossless[/b], [b]Lossy[/b] "
"или [b]Uncompressed[/b]. Режим сжатия [b]Video RAM[/b] может использоваться, "
"но он будет распакован на ЦП, что означает замедление времени загрузки и "
"отсутствие экономии памяти по сравнению с режимами без потерь.\n"
"[b]Примечание:[/b] На веб-платформе максимально допустимый размер изображения "
"курсора составляет 128×128. Изображения курсора размером более 32×32 также "
"будут отображаться только в том случае, если изображение курсора мыши "
"полностью расположено на странице по [url=https://chromestatus.com/feature/"
"5825971391299584]соображениям безопасности[/url]."

msgid ""
"Sets the default cursor shape to be used in the viewport instead of [constant "
"CURSOR_ARROW].\n"
"[b]Note:[/b] If you want to change the default cursor shape for [Control]'s "
"nodes, use [member Control.mouse_default_cursor_shape] instead.\n"
"[b]Note:[/b] This method generates an [InputEventMouseMotion] to update "
"cursor immediately."
msgstr ""
"Устанавливает форму курсора по умолчанию для использования в области "
"просмотра вместо [constant CURSOR_ARROW].\n"
"[b]Примечание:[/b] Если вы хотите изменить форму курсора по умолчанию для "
"узлов [Control], используйте вместо этого [member "
"Control.mouse_default_cursor_shape].\n"
"[b]Примечание:[/b] Этот метод генерирует [InputEventMouseMotion] для "
"немедленного обновления курсора."

msgid ""
"Sets the gravity value of the accelerometer sensor. Can be used for debugging "
"on devices without a hardware sensor, for example in an editor on a PC.\n"
"[b]Note:[/b] This value can be immediately overwritten by the hardware sensor "
"value on Android and iOS."
msgstr ""
"Устанавливает значение силы тяжести (gravity) акселерометрического датчика. "
"Может использоваться для отладки на устройствах без аппаратного датчика, "
"например, в редакторе на ПК.\n"
"[b]Примечание:[/b] Это значение может быть немедленно перезаписано значением "
"аппаратного датчика на Android и iOS."

msgid ""
"Sets the value of the rotation rate of the gyroscope sensor. Can be used for "
"debugging on devices without a hardware sensor, for example in an editor on a "
"PC.\n"
"[b]Note:[/b] This value can be immediately overwritten by the hardware sensor "
"value on Android and iOS."
msgstr ""
"Устанавливает значение скорости вращения датчика гироскопа. Может "
"использоваться для отладки на устройствах без аппаратного датчика, например в "
"редакторе на ПК.\n"
"[b]Примечание:[/b] Это значение может быть немедленно перезаписано значением "
"аппаратного датчика на Android и iOS."

msgid ""
"Sets the value of the magnetic field of the magnetometer sensor. Can be used "
"for debugging on devices without a hardware sensor, for example in an editor "
"on a PC.\n"
"[b]Note:[/b] This value can be immediately overwritten by the hardware sensor "
"value on Android and iOS."
msgstr ""
"Устанавливает значение магнитного поля датчика магнитометра. Может "
"использоваться для отладки на устройствах без аппаратного датчика, например в "
"редакторе на ПК.\n"
"[b]Примечание:[/b] Это значение может быть немедленно перезаписано значением "
"аппаратного датчика на Android и iOS."

msgid ""
"Queries whether an input device should be ignored or not. Devices can be "
"ignored by setting the environment variable "
"[code]SDL_GAMECONTROLLER_IGNORE_DEVICES[/code]. Read the [url=https://"
"wiki.libsdl.org/SDL2]SDL documentation[/url] for more information.\n"
"[b]Note:[/b] Some 3rd party tools can contribute to the list of ignored "
"devices. For example, [i]SteamInput[/i] creates virtual devices from physical "
"devices for remapping purposes. To avoid handling the same input device "
"twice, the original device is added to the ignore list."
msgstr ""
"Запрашивает, следует ли игнорировать устройство ввода или нет. Устройства "
"можно игнорировать, установив переменную среды "
"[code]SDL_GAMECONTROLLER_IGNORE_DEVICES[/code]. Прочтите [url=https://"
"wiki.libsdl.org/SDL2]документацию SDL[/url] для получения дополнительной "
"информации.\n"
"[b]Примечание:[/b] Некоторые сторонние инструменты могут вносить свой вклад в "
"список игнорируемых устройств. Например, [i]SteamInput[/i] создает "
"виртуальные устройства из физических устройств для целей переназначения. "
"Чтобы избежать обработки одного и того же устройства ввода дважды, исходное "
"устройство добавляется в список игнорируемых."

msgid ""
"Starts to vibrate the joypad. Joypads usually come with two rumble motors, a "
"strong and a weak one. [param weak_magnitude] is the strength of the weak "
"motor (between 0 and 1) and [param strong_magnitude] is the strength of the "
"strong motor (between 0 and 1). [param duration] is the duration of the "
"effect in seconds (a duration of 0 will try to play the vibration "
"indefinitely). The vibration can be stopped early by calling [method "
"stop_joy_vibration].\n"
"[b]Note:[/b] Not every hardware is compatible with long effect durations; it "
"is recommended to restart an effect if it has to be played for more than a "
"few seconds.\n"
"[b]Note:[/b] For macOS, vibration is only supported in macOS 11 and later."
msgstr ""
"Начинает вибрировать джойпад. Джойпады обычно поставляются с двумя "
"вибрирующими моторами, сильным и слабым. [param weak_magnitude] — это сила "
"слабого мотора (от 0 до 1), а [param strong_magnitude] — это сила сильного "
"мотора (от 0 до 1). [param duration] — это длительность эффекта в секундах "
"(длительность 0 будет пытаться воспроизводить вибрацию бесконечно). Вибрацию "
"можно остановить заранее, вызвав [method stop_joy_vibration].\n"
"[b]Примечание:[/b] Не все устройства совместимо с длительными эффектами; "
"рекомендуется перезапустить эффект, если его нужно воспроизводить более "
"нескольких секунд.\n"
"[b]Примечание:[/b] Для macOS вибрация поддерживается только в macOS 11 и "
"более поздних версиях."

msgid ""
"Stops the vibration of the joypad started with [method start_joy_vibration]."
msgstr ""
"Останавливает вибрацию джойстика, запущенную с помощью [method "
"start_joy_vibration]."

msgid ""
"Vibrate the handheld device for the specified duration in milliseconds.\n"
"[param amplitude] is the strength of the vibration, as a value between "
"[code]0.0[/code] and [code]1.0[/code]. If set to [code]-1.0[/code], the "
"default vibration strength of the device is used.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, and Web. It has no "
"effect on other platforms.\n"
"[b]Note:[/b] For Android, [method vibrate_handheld] requires enabling the "
"[code]VIBRATE[/code] permission in the export preset. Otherwise, [method "
"vibrate_handheld] will have no effect.\n"
"[b]Note:[/b] For iOS, specifying the duration is only supported in iOS 13 and "
"later.\n"
"[b]Note:[/b] For Web, the amplitude cannot be changed.\n"
"[b]Note:[/b] Some web browsers such as Safari and Firefox for Android do not "
"support [method vibrate_handheld]."
msgstr ""
"Вибрировать портативное устройство в течение указанной продолжительности в "
"миллисекундах.\n"
"[param Amplitude] — это сила вибрации, как значение между [code]0.0[/code] и "
"[code]1.0[/code]. Если установлено значение [code]-1.0[/code], используется "
"сила вибрации устройства по умолчанию.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS и Web. Он не влияет "
"на другие платформы.\n"
"[b]Примечание:[/b] Для Android [method vibrate_handheld] требует включения "
"разрешения [code]VIBRATE[/code] в предустановке экспорта. В противном случае "
"[method vibrate_handheld] не будет иметь никакого эффекта.\n"
"[b]Примечание:[/b] Для iOS указание продолжительности поддерживается только в "
"iOS 13 и более поздних версиях.\n"
"[b]Примечание:[/b] Для Web амплитуду изменить нельзя.\n"
"[b]Примечание:[/b] Некоторые веб-браузеры, такие как Safari и Firefox для "
"Android, не поддерживают [method vibrate_handheld]."

msgid ""
"Sets the mouse position to the specified vector, provided in pixels and "
"relative to an origin at the upper left corner of the currently focused "
"Window Manager game window.\n"
"Mouse position is clipped to the limits of the screen resolution, or to the "
"limits of the game window if [enum MouseMode] is set to [constant "
"MOUSE_MODE_CONFINED] or [constant MOUSE_MODE_CONFINED_HIDDEN].\n"
"[b]Note:[/b] [method warp_mouse] is only supported on Windows, macOS and "
"Linux. It has no effect on Android, iOS and Web."
msgstr ""
"Устанавливает положение мыши на указанный вектор, указанный в пикселях и "
"относительно начала координат в верхнем левом углу текущего окна игры "
"диспетчера окон.\n"
"Положение мыши обрезается до границ разрешения экрана или до границ окна "
"игры, если [enum MouseMode] установлен на [constant MOUSE_MODE_CONFINED] или "
"[constant MOUSE_MODE_CONFINED_HIDDEN].\n"
"[b]Примечание:[/b] [method warp_mouse] поддерживается только в Windows, macOS "
"и Linux. Он не действует на Android, iOS и Web."

msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on the "
"touchscreen. See also [member ProjectSettings.input_devices/pointing/"
"emulate_mouse_from_touch]."
msgstr ""
"Если [code]true[/code], отправляет события ввода мыши при нажатии или "
"пролистывании на сенсорном экране. См. также [member "
"ProjectSettings.input_devices/pointing/emulate_mouse_from_touch]."

msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse. See also [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse]."
msgstr ""
"Если [code]true[/code], отправляет события сенсорного ввода при щелчке или "
"перетаскивании мыши. См. также [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse]."

msgid "Controls the mouse mode."
msgstr "Управляет режимом мыши."

msgid ""
"If [code]true[/code], similar input events sent by the operating system are "
"accumulated. When input accumulation is enabled, all input events generated "
"during a frame will be merged and emitted when the frame is done rendering. "
"Therefore, this limits the number of input method calls per second to the "
"rendering FPS.\n"
"Input accumulation can be disabled to get slightly more precise/reactive "
"input at the cost of increased CPU usage. In applications where drawing "
"freehand lines is required, input accumulation should generally be disabled "
"while the user is drawing the line to get results that closely follow the "
"actual input.\n"
"[b]Note:[/b] Input accumulation is [i]enabled[/i] by default."
msgstr ""
"Если [code]true[/code], накапливаются похожие события ввода, отправленные "
"операционной системой. Когда накопление ввода включено, все события ввода, "
"сгенерированные во время кадра, будут объединены и отправлены, когда кадр "
"завершит рендеринг. Таким образом, это ограничивает количество вызовов "
"методов ввода в секунду до FPS рендеринга.\n"
"Накопление ввода можно отключить, чтобы получить немного более точный/"
"реактивный ввод за счет увеличения загрузки ЦП. В приложениях, где требуется "
"рисовать линии от руки, накопление ввода обычно следует отключать, пока "
"пользователь рисует линию, чтобы получить результаты, которые точно "
"соответствуют фактическому вводу.\n"
"[b]Примечание:[/b] Накопление ввода [i]включено[/i] по умолчанию."

msgid "Emitted when a joypad device has been connected or disconnected."
msgstr "Издается при подключении или отключении джойстика."

msgid "Arrow cursor. Standard, default pointing cursor."
msgstr "Курсор-стрелка. Стандартный, указывающий курсор по умолчанию."

msgid ""
"I-beam cursor. Usually used to show where the text cursor will appear when "
"the mouse is clicked."
msgstr ""
"Курсор в виде I-образной линии. Обычно используется для указания того, где "
"появится текстовый курсор при щелчке мыши."

msgid ""
"Pointing hand cursor. Usually used to indicate the pointer is over a link or "
"other interactable item."
msgstr ""
"Курсор в виде указывающей руки. Обычно используется для обозначения того, что "
"указатель находится над ссылкой или другим интерактивным элементом."

msgid ""
"Cross cursor. Typically appears over regions in which a drawing operation can "
"be performed or for selections."
msgstr ""
"Перекрестный курсор. Обычно появляется над областями, в которых можно "
"выполнить операцию рисования или для выделения."

msgid ""
"Wait cursor. Indicates that the application is busy performing an operation, "
"and that it cannot be used during the operation (e.g. something is blocking "
"its main thread)."
msgstr ""
"Курсор ожидания. Указывает, что приложение занято выполнением операции и что "
"оно не может быть использовано во время операции (например, что-то блокирует "
"его основной поток)."

msgid ""
"Busy cursor. Indicates that the application is busy performing an operation, "
"and that it is still usable during the operation."
msgstr ""
"Занятый курсор. Указывает, что приложение занято выполнением операции и что "
"оно все еще может использоваться во время операции."

msgid ""
"Drag cursor. Usually displayed when dragging something.\n"
"[b]Note:[/b] Windows lacks a dragging cursor, so [constant CURSOR_DRAG] is "
"the same as [constant CURSOR_MOVE] for this platform."
msgstr ""
"Курсор перетаскивания. Обычно отображается при перетаскивании чего-либо.\n"
"[b]Примечание:[/b] В Windows отсутствует курсор перетаскивания, поэтому "
"[constant CURSOR_DRAG] совпадает с [constant CURSOR_MOVE] для этой платформы."

msgid ""
"Can drop cursor. Usually displayed when dragging something to indicate that "
"it can be dropped at the current position."
msgstr ""
"Можно отпустить курсор. Обычно отображается при перетаскивании чего-либо, "
"чтобы указать, что его можно отпустить в текущей позиции."

msgid ""
"Forbidden cursor. Indicates that the current action is forbidden (for "
"example, when dragging something) or that the control at a position is "
"disabled."
msgstr ""
"Запрещенный курсор. Указывает, что текущее действие запрещено (например, при "
"перетаскивании чего-либо) или что элемент управления в позиции отключен."

msgid ""
"Vertical resize mouse cursor. A double-headed vertical arrow. It tells the "
"user they can resize the window or the panel vertically."
msgstr ""
"Вертикальное изменение размера курсора мыши. Двунаправленная вертикальная "
"стрелка. Сообщает пользователю, что он может изменять размер окна или панели "
"по вертикали."

msgid ""
"Horizontal resize mouse cursor. A double-headed horizontal arrow. It tells "
"the user they can resize the window or the panel horizontally."
msgstr ""
"Курсор мыши для изменения размера по горизонтали. Двунаправленная "
"горизонтальная стрелка. Сообщает пользователю, что он может изменять размер "
"окна или панели по горизонтали."

msgid ""
"Window resize mouse cursor. The cursor is a double-headed arrow that goes "
"from the bottom left to the top right. It tells the user they can resize the "
"window or the panel both horizontally and vertically."
msgstr ""
"Курсор мыши для изменения размера окна. Курсор представляет собой "
"двунаправленную стрелку, которая идет из нижнего левого угла в верхний правый "
"угол. Он сообщает пользователю, что он может изменять размер окна или панели "
"как по горизонтали, так и по вертикали."

msgid ""
"Window resize mouse cursor. The cursor is a double-headed arrow that goes "
"from the top left to the bottom right, the opposite of [constant "
"CURSOR_BDIAGSIZE]. It tells the user they can resize the window or the panel "
"both horizontally and vertically."
msgstr ""
"Курсор мыши для изменения размера окна. Курсор — это двунаправленная стрелка, "
"которая идет из верхнего левого угла в нижний правый угол, противоположность "
"[constant CURSOR_BDIAGSIZE]. Он сообщает пользователю, что он может изменять "
"размер окна или панели как по горизонтали, так и по вертикали."

msgid "Move cursor. Indicates that something can be moved."
msgstr "Переместить курсор. Указывает, что что-то можно переместить."

msgid ""
"Vertical split mouse cursor. On Windows, it's the same as [constant "
"CURSOR_VSIZE]."
msgstr ""
"Вертикальный разделенный курсор мыши. В Windows это то же самое, что "
"[constant CURSOR_VSIZE]."

msgid ""
"Horizontal split mouse cursor. On Windows, it's the same as [constant "
"CURSOR_HSIZE]."
msgstr ""
"Горизонтальный разделенный курсор мыши. В Windows это то же самое, что "
"[constant CURSOR_HSIZE]."

msgid "Help cursor. Usually a question mark."
msgstr "Курсор помощи. Обычно вопросительный знак."

msgid "Abstract base class for input events."
msgstr "Абстрактный базовый класс для событий ввода."

msgid ""
"Abstract base class of all types of input events. See [method Node._input]."
msgstr ""
"Абстрактный базовый класс всех типов событий ввода. См. [method Node._input]."

msgid "Using InputEvent"
msgstr "Использование InputEvent"

msgid ""
"Returns [code]true[/code] if the given input event and this input event can "
"be added together (only for events of type [InputEventMouseMotion]).\n"
"The given input event's position, global position and speed will be copied. "
"The resulting [code]relative[/code] is a sum of both events. Both events' "
"modifiers have to be identical."
msgstr ""
"Возвращает [code]true[/code], если данное событие ввода и это событие ввода "
"можно сложить (только для событий типа [InputEventMouseMotion]).\n"
"Будут скопированы позиция данного события ввода, глобальная позиция и "
"скорость. Результирующий [code]relative[/code] является суммой обоих событий. "
"Модификаторы обоих событий должны быть идентичными."

msgid "Returns a [String] representation of the event."
msgstr "Возвращает [String]-представление события."

msgid ""
"Returns a value between 0.0 and 1.0 depending on the given actions' state. "
"Useful for getting the value of events of type [InputEventJoypadMotion].\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Возвращает значение от 0,0 до 1,0 в зависимости от состояния заданных "
"действий. Полезно для получения значения событий типа "
"[InputEventJoypadMotion].\n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion]."

msgid ""
"Returns [code]true[/code] if this input event matches a pre-defined action of "
"any type.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Возвращает [code]true[/code], если это событие ввода соответствует "
"предопределенному действию любого типа.\n"
"Если [param exact_match] равно [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion]."

msgid ""
"Returns [code]true[/code] if the given action matches this event and is being "
"pressed (and is not an echo event for [InputEventKey] events, unless [param "
"allow_echo] is [code]true[/code]). Not relevant for events of type "
"[InputEventMouseMotion] or [InputEventScreenDrag].\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events.\n"
"[b]Note:[/b] Due to keyboard ghosting, [method is_action_pressed] may return "
"[code]false[/code] even if one of the action's keys is pressed. See "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input "
"examples[/url] in the documentation for more information."
msgstr ""
"Возвращает [code]true[/code], если заданное действие соответствует данному "
"событию и нажимается (и не является событием echo для событий "
"[InputEventKey], если только [param allow_echo] не равен [code]true[/code]). "
"Не применимо для событий типа [InputEventMouseMotion] или "
"[InputEventScreenDrag].\n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion].\n"
"[b]Примечание:[/b] Из-за эффекта «фантомного нажатия» клавиатуры [method "
"is_action_pressed] может возвращать [code]false[/code], даже если нажата одна "
"из клавиш действия. Для получения дополнительной информации см. "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Примеры "
"ввода[/url] в документации."

msgid ""
"Returns [code]true[/code] if the given action matches this event and is "
"released (i.e. not pressed). Not relevant for events of type "
"[InputEventMouseMotion] or [InputEventScreenDrag].\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Возвращает [code]true[/code], если заданное действие соответствует данному "
"событию и отпущено (т.е. не нажато). Не применимо к событиям типа "
"[InputEventMouseMotion] или [InputEventScreenDrag].\n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion]."

msgid ""
"Returns [code]true[/code] if this input event's type is one that can be "
"assigned to an input action: [InputEventKey], [InputEventMouseButton], "
"[InputEventJoypadButton], [InputEventJoypadMotion], [InputEventAction]. "
"Returns [code]false[/code] for all other input event types."
msgstr ""
"Возвращает [code]true[/code], если тип этого события ввода можно назначить "
"действию ввода: [InputEventKey], [InputEventMouseButton], "
"[InputEventJoypadButton], [InputEventJoypadMotion], [InputEventAction]. "
"Возвращает [code]false[/code] для всех остальных типов событий ввода."

msgid "Returns [code]true[/code] if this input event has been canceled."
msgstr "Возвращает [code]true[/code], если это событие ввода было отменено."

msgid ""
"Returns [code]true[/code] if this input event is an echo event (only for "
"events of type [InputEventKey]). An echo event is a repeated key event sent "
"when the user is holding down the key. Any other event type returns "
"[code]false[/code].\n"
"[b]Note:[/b] The rate at which echo events are sent is typically around 20 "
"events per second (after holding down the key for roughly half a second). "
"However, the key repeat delay/speed can be changed by the user or disabled "
"entirely in the operating system settings. To ensure your project works "
"correctly on all configurations, do not assume the user has a specific key "
"repeat configuration in your project's behavior."
msgstr ""
"Возвращает [code]true[/code], если это событие ввода является событием эха "
"(только для событий типа [InputEventKey]). Событие эха — это повторяющееся "
"событие клавиши, отправляемое, когда пользователь удерживает клавишу. Любой "
"другой тип события возвращает [code]false[/code].\n"
"[b]Примечание:[/b] Скорость отправки событий эха обычно составляет около 20 "
"событий в секунду (после удержания клавиши примерно полсекунды). Однако "
"пользователь может изменить задержку/скорость повтора клавиши или полностью "
"отключить ее в настройках операционной системы. Чтобы убедиться, что ваш "
"проект работает правильно во всех конфигурациях, не предполагайте, что у "
"пользователя есть определенная конфигурация повтора клавиши в поведении "
"вашего проекта."

msgid ""
"Returns [code]true[/code] if the specified [param event] matches this event. "
"Only valid for action events, which include key ([InputEventKey]), button "
"([InputEventMouseButton] or [InputEventJoypadButton]), axis "
"[InputEventJoypadMotion], and action ([InputEventAction]) events.\n"
"If [param exact_match] is [code]false[/code], the check ignores additional "
"input modifiers for [InputEventKey] and [InputEventMouseButton] events, and "
"the direction for [InputEventJoypadMotion] events.\n"
"[b]Note:[/b] This method only considers the event configuration (such as the "
"keyboard key or the joypad axis), not state information like [method "
"is_pressed], [method is_released], [method is_echo], or [method is_canceled]."
msgstr ""
"Возвращает [code]true[/code], если указанный параметр [param event] "
"соответствует данному событию. Действительно только для событий действия, "
"включая события клавиши ([InputEventKey]), кнопки ([InputEventMouseButton] "
"или [InputEventJoypadButton]), оси [InputEventJoypadMotion] и действия "
"([InputEventAction]).\n"
"Если [param exact_match] равен [code]false[/code], проверка игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion].\n"
"[b]Примечание:[/b] Этот метод учитывает только конфигурацию события "
"(например, клавишу клавиатуры или ось джойстика), а не информацию о "
"состоянии, такую как [method is_pressed], [method is_released], [method "
"is_echo] или [method is_canceled]."

msgid ""
"Returns [code]true[/code] if this input event is pressed. Not relevant for "
"events of type [InputEventMouseMotion] or [InputEventScreenDrag].\n"
"[b]Note:[/b] Due to keyboard ghosting, [method is_pressed] may return "
"[code]false[/code] even if one of the action's keys is pressed. See "
"[url=$DOCS_URL/tutorials/inputs/input_examples.html#keyboard-events]Input "
"examples[/url] in the documentation for more information."
msgstr ""
"Возвращает [code]true[/code], если нажато это событие ввода. Неактуально для "
"событий типа [InputEventMouseMotion] или [InputEventScreenDrag].\n"
"[b]Примечание:[/b] Из-за фантомного нажатия клавиатуры [method is_pressed] "
"может возвращать [code]false[/code], даже если нажата одна из клавиш "
"действия. Для получения дополнительной информации см. [url=$DOCS_URL/"
"tutorials/inputs/input_examples.html#keyboard-events]Примеры ввода[/url] в "
"документации."

msgid ""
"Returns [code]true[/code] if this input event is released. Not relevant for "
"events of type [InputEventMouseMotion] or [InputEventScreenDrag]."
msgstr ""
"Возвращает [code]true[/code], если это событие ввода отпущено. Не имеет "
"значения для событий типа [InputEventMouseMotion] или [InputEventScreenDrag]."

msgid ""
"Returns a copy of the given input event which has been offset by [param "
"local_ofs] and transformed by [param xform]. Relevant for events of type "
"[InputEventMouseButton], [InputEventMouseMotion], [InputEventScreenTouch], "
"[InputEventScreenDrag], [InputEventMagnifyGesture] and [InputEventPanGesture]."
msgstr ""
"Возвращает копию указанного события ввода, смещенного на [param local_ofs] и "
"преобразованного на [param xform]. Относится к событиям типа "
"[InputEventMouseButton], [InputEventMouseMotion], [InputEventScreenTouch], "
"[InputEventScreenDrag], [InputEventMagnifyGesture] и [InputEventPanGesture]."

msgid ""
"The event's device ID.\n"
"[b]Note:[/b] [member device] can be negative for special use cases that don't "
"refer to devices physically present on the system. See [constant "
"DEVICE_ID_EMULATION]."
msgstr ""
"Идентификатор устройства события.\n"
"[b]Примечание:[/b] [member device] может быть отрицательным для особых "
"случаев использования, которые не относятся к устройствам, физически "
"присутствующим в системе. См. [constant DEVICE_ID_EMULATION]."

msgid ""
"Device ID used for emulated mouse input from a touchscreen, or for emulated "
"touch input from a mouse. This can be used to distinguish emulated mouse "
"input from physical mouse input, or emulated touch input from physical touch "
"input."
msgstr ""
"Идентификатор устройства, используемый для эмулированного ввода мыши с "
"сенсорного экрана или для эмулированного сенсорного ввода с мыши. Это может "
"использоваться для различения эмулированного ввода мыши от физического ввода "
"мыши или эмулированного сенсорного ввода от физического сенсорного ввода."

msgid "An input event type for actions."
msgstr "Тип входного события для действий."

msgid ""
"Contains a generic action which can be targeted from several types of inputs. "
"Actions and their events can be set in the [b]Input Map[/b] tab in [b]Project "
"> Project Settings[/b], or with the [InputMap] class.\n"
"[b]Note:[/b] Unlike the other [InputEvent] subclasses which map to unique "
"physical events, this virtual one is not emitted by the engine. This class is "
"useful to emit actions manually with [method Input.parse_input_event], which "
"are then received in [method Node._input]. To check if a physical event "
"matches an action from the Input Map, use [method InputEvent.is_action] and "
"[method InputEvent.is_action_pressed]."
msgstr ""
"Содержит общее действие, которое может быть направлено из нескольких типов "
"входов. Действия и их события можно задать на вкладке [b]Input Map[/b] в "
"[b]Project > Project Settings[/b] или с помощью класса [InputMap].\n"
"[b]Примечание:[/b] В отличие от других подклассов [InputEvent], которые "
"сопоставляются с уникальными физическими событиями, этот виртуальный не "
"выдается движком. Этот класс полезен для ручной отправки действий с помощью "
"[method Input.parse_input_event], которые затем принимаются в [method "
"Node._input]. Чтобы проверить, соответствует ли физическое событие действию "
"из Input Map, используйте [method InputEvent.is_action] и [method "
"InputEvent.is_action_pressed]."

msgid "Using InputEvent: Actions"
msgstr "Использование InputEvent: Действия"

msgid ""
"The action's name. This is usually the name of an existing action in the "
"[InputMap] which you want this custom event to match."
msgstr ""
"Имя действия. Обычно это название существующего действия в [Inputmap], "
"которое вы хотите, чтобы это пользовательское событие соответствовало."

msgid ""
"The real event index in action this event corresponds to (from events defined "
"for this action in the [InputMap]). If [code]-1[/code], a unique ID will be "
"used and actions pressed with this ID will need to be released with another "
"[InputEventAction]."
msgstr ""
"Реальный индекс события в действии, которому соответствует это событие (из "
"событий, определенных для этого действия в [InputMap]). Если [code]-1[/code], "
"будет использоваться уникальный идентификатор, и действия, нажатые с этим "
"идентификатором, необходимо будет отпустить с помощью другого "
"[InputEventAction]."

msgid ""
"If [code]true[/code], the action's state is pressed. If [code]false[/code], "
"the action's state is released."
msgstr ""
"Если [code]true[/code], состояние действия нажато. Если [code]false[/code], "
"состояние действия отпущено."

msgid ""
"The action's strength between 0 and 1. This value is considered as equal to 0 "
"if pressed is [code]false[/code]. The event strength allows faking analog "
"joypad motion events, by specifying how strongly the joypad axis is bent or "
"pressed."
msgstr ""
"Сила действия от 0 до 1. Это значение считается равным 0, если нажатие равно "
"[code]false[/code]. Сила события позволяет имитировать события движения "
"аналогового джойстика, указывая, насколько сильно ось джойстика сгибается или "
"нажимается."

msgid "Abstract base class for [Viewport]-based input events."
msgstr "Абстрактный базовый класс для событий ввода на основе [Viewport]."

msgid ""
"InputEventFromWindow represents events specifically received by windows. This "
"includes mouse events, keyboard events in focused windows or touch screen "
"actions."
msgstr ""
"InputEventFromWindow представляет события, полученные конкретно окнами. Сюда "
"входят события мыши, события клавиатуры в окнах с фокусом или действия "
"сенсорного экрана."

msgid "The ID of a [Window] that received this event."
msgstr "Идентификатор [Window], получившего это событие."

msgid "Abstract base class for touch gestures."
msgstr "Абстрактный базовый класс для сенсорных жестов."

msgid ""
"InputEventGestures are sent when a user performs a supported gesture on a "
"touch screen. Gestures can't be emulated using mouse, because they typically "
"require multi-touch."
msgstr ""
"InputEventGestures отправляются, когда пользователь выполняет поддерживаемый "
"жест на сенсорном экране. Жесты не могут быть эмулированы с помощью мыши, "
"поскольку они обычно требуют мультитач."

msgid ""
"The local gesture position relative to the [Viewport]. If used in [method "
"Control._gui_input], the position is relative to the current [Control] that "
"received this gesture."
msgstr ""
"Локальная позиция жеста относительно [Viewport]. Если используется в [method "
"Control._gui_input], позиция определяется относительно текущего [Control], "
"который получил этот жест."

msgid "Represents a gamepad button being pressed or released."
msgstr "Представляет собой нажатие или отпускание кнопки геймпада."

msgid ""
"Input event type for gamepad buttons. For gamepad analog sticks and "
"joysticks, see [InputEventJoypadMotion]."
msgstr ""
"Тип входного события для кнопок геймпада. Для аналоговых джойстиков и "
"джойстиков геймпада см. [InputEventJoypadMotion]."

msgid "Button identifier. One of the [enum JoyButton] button constants."
msgstr "Идентификатор кнопки. Одна из констант кнопки [enum JoyButton]."

msgid ""
"If [code]true[/code], the button's state is pressed. If [code]false[/code], "
"the button's state is released."
msgstr ""
"Если [code]true[/code], кнопка находится в нажатом состоянии. Если "
"[code]false[/code], кнопка находится в отпущенном состоянии."

msgid "This property is never set by the engine and is always [code]0[/code]."
msgstr ""
"Это свойство никогда не устанавливается движком и всегда равно [code]0[/code]."

msgid ""
"Represents axis motions (such as joystick or analog triggers) from a gamepad."
msgstr ""
"Представляет собой движения осей (например, джойстика или аналоговых "
"триггеров) с геймпада."

msgid ""
"Stores information about joystick motions. One [InputEventJoypadMotion] "
"represents one axis at a time. For gamepad buttons, see "
"[InputEventJoypadButton]."
msgstr ""
"Сохраняет информацию о движениях джойстика. Один [InputEventJoypadMotion] "
"представляет одну ось за раз. Для кнопок геймпада см. "
"[InputEventJoypadButton]."

msgid "Axis identifier."
msgstr "Идентификатор оси."

msgid ""
"Current position of the joystick on the given axis. The value ranges from "
"[code]-1.0[/code] to [code]1.0[/code]. A value of [code]0[/code] means the "
"axis is in its resting position."
msgstr ""
"Текущее положение джойстика на данной оси. Значение находится в диапазоне от "
"[code]-1.0[/code] до [code]1.0[/code]. Значение [code]0[/code] означает, что "
"ось находится в состоянии покоя."

msgid "Represents a key on a keyboard being pressed or released."
msgstr "Представляет собой нажатие или отпускание клавиши на клавиатуре."

msgid ""
"An input event for keys on a keyboard. Supports key presses, key releases and "
"[member echo] events. It can also be received in [method "
"Node._unhandled_key_input].\n"
"[b]Note:[/b] Events received from the keyboard usually have all properties "
"set. Event mappings should have only one of the [member keycode], [member "
"physical_keycode] or [member unicode] set.\n"
"When events are compared, properties are checked in the following priority - "
"[member keycode], [member physical_keycode] and [member unicode]. Events with "
"the first matching value will be considered equal."
msgstr ""
"Событие ввода для клавиш на клавиатуре. Поддерживает нажатия клавиш, "
"отпускания клавиш и события [member echo]. Его также можно получить в [method "
"Node._unhandled_key_input].\n"
"[b]Примечание:[/b] События, полученные с клавиатуры, обычно имеют все "
"установленные свойства. Сопоставления событий должны иметь только один из "
"[member keycode], [member physical_keycode] или [member unicode].\n"
"При сравнении событий свойства проверяются в следующем приоритете - [member "
"keycode], [member physical_keycode] и [member unicode]. События с первым "
"совпадающим значением будут считаться равными."

msgid ""
"Returns a [String] representation of the event's [member key_label] and "
"modifiers."
msgstr ""
"Возвращает [String]-представление [member key_label] события и модификаторов."

msgid ""
"Returns a [String] representation of the event's [member keycode] and "
"modifiers."
msgstr ""
"Возвращает [String] представление [member keycode] и модификаторов события."

msgid ""
"Returns a [String] representation of the event's [member location]. This will "
"be a blank string if the event is not specific to a location."
msgstr ""
"Возвращает [String] представление [member location] события. Это будет пустая "
"строка, если событие не относится к конкретному местоположению."

msgid ""
"Returns a [String] representation of the event's [member physical_keycode] "
"and modifiers."
msgstr ""
"Возвращает [String]-представление [member physical_keycode] события и "
"модификаторов."

msgid ""
"Returns the localized key label combined with modifier keys such as "
"[kbd]Shift[/kbd] or [kbd]Alt[/kbd]. See also [InputEventWithModifiers].\n"
"To get a human-readable representation of the [InputEventKey] with modifiers, "
"use [code]OS.get_keycode_string(event.get_key_label_with_modifiers())[/code] "
"where [code]event[/code] is the [InputEventKey]."
msgstr ""
"Возвращает локализованную метку клавиши в сочетании с модификаторами, такими "
"как [kbd]Shift[/kbd] или [kbd]Alt[/kbd]. См. также "
"[InputEventWithModifiers].\n"
"Чтобы получить понятное человеку представление [InputEventKey] с "
"модификаторами, используйте "
"[code]OS.get_keycode_string(event.get_key_label_with_modifiers())[/code], где "
"[code]event[/code] — это [InputEventKey]."

msgid ""
"Returns the Latin keycode combined with modifier keys such as [kbd]Shift[/"
"kbd] or [kbd]Alt[/kbd]. See also [InputEventWithModifiers].\n"
"To get a human-readable representation of the [InputEventKey] with modifiers, "
"use [code]OS.get_keycode_string(event.get_keycode_with_modifiers())[/code] "
"where [code]event[/code] is the [InputEventKey]."
msgstr ""
"Возвращает латинский код клавиши в сочетании с модификаторами, такими как "
"[kbd]Shift[/kbd] или [kbd]Alt[/kbd]. См. также [InputEventWithModifiers].\n"
"Чтобы получить понятное человеку представление [InputEventKey] с "
"модификаторами, используйте "
"[code]OS.get_keycode_string(event.get_keycode_with_modifiers())[/code], где "
"[code]event[/code] — это [InputEventKey]."

msgid ""
"Returns the physical keycode combined with modifier keys such as [kbd]Shift[/"
"kbd] or [kbd]Alt[/kbd]. See also [InputEventWithModifiers].\n"
"To get a human-readable representation of the [InputEventKey] with modifiers, "
"use [code]OS.get_keycode_string(event.get_physical_keycode_with_modifiers())[/"
"code] where [code]event[/code] is the [InputEventKey]."
msgstr ""
"Возвращает физический код клавиши в сочетании с модификаторами, такими как "
"[kbd]Shift[/kbd] или [kbd]Alt[/kbd]. См. также [InputEventWithModifiers].\n"
"Чтобы получить понятное человеку представление [InputEventKey] с "
"модификаторами, используйте "
"[code]OS.get_keycode_string(event.get_physical_keycode_with_modifiers())[/"
"code], где [code]event[/code] — это [InputEventKey]."

msgid ""
"If [code]true[/code], the key was already pressed before this event. An echo "
"event is a repeated key event sent when the user is holding down the key.\n"
"[b]Note:[/b] The rate at which echo events are sent is typically around 20 "
"events per second (after holding down the key for roughly half a second). "
"However, the key repeat delay/speed can be changed by the user or disabled "
"entirely in the operating system settings. To ensure your project works "
"correctly on all configurations, do not assume the user has a specific key "
"repeat configuration in your project's behavior."
msgstr ""
"Если [code]true[/code], клавиша уже была нажата до этого события. Событие эха "
"— это повторяющееся событие клавиши, отправляемое, когда пользователь "
"удерживает клавишу.\n"
"[b]Примечание:[/b] Скорость отправки событий эха обычно составляет около 20 "
"событий в секунду (после удержания клавиши примерно полсекунды). Однако "
"пользователь может изменить задержку/скорость повтора клавиши или полностью "
"отключить ее в настройках операционной системы. Чтобы убедиться, что ваш "
"проект работает правильно во всех конфигурациях, не предполагайте, что у "
"пользователя есть определенная конфигурация повтора клавиши в поведении "
"вашего проекта."

msgid ""
"Represents the localized label printed on the key in the current keyboard "
"layout, which corresponds to one of the [enum Key] constants or any valid "
"Unicode character.\n"
"For keyboard layouts with a single label on the key, it is equivalent to "
"[member keycode].\n"
"To get a human-readable representation of the [InputEventKey], use "
"[code]OS.get_keycode_string(event.key_label)[/code] where [code]event[/code] "
"is the [InputEventKey].\n"
"[codeblock lang=text]\n"
"+-----+ +-----+\n"
"| Q   | | Q   | - \"Q\" - keycode\n"
"|   Й | |  ض | - \"Й\" and \"ض\" - key_label\n"
"+-----+ +-----+\n"
"[/codeblock]"
msgstr ""
"Представляет локализованную метку, напечатанную на клавише в текущей "
"раскладке клавиатуры, которая соответствует одной из констант [enum Key] или "
"любому допустимому символу Unicode.\n"
"Для раскладок клавиатуры с одной меткой на клавише это эквивалентно [member "
"keycode].\n"
"Чтобы получить понятное человеку представление [InputEventKey], используйте "
"[code]OS.get_keycode_string(event.key_label)[/code], где [code]event[/code] — "
"это [InputEventKey].\n"
"[codeblock lang=text]\n"
"+-----+ +-----+\n"
"| Q   | | Q   | - \"Q\" - keycode\n"
"|   Й | |  ض | - \"Й\" и \"ض\" - key_label\n"
"+-----+ +-----+\n"
"[/codeblock]"

msgid ""
"Latin label printed on the key in the current keyboard layout, which "
"corresponds to one of the [enum Key] constants.\n"
"To get a human-readable representation of the [InputEventKey], use "
"[code]OS.get_keycode_string(event.keycode)[/code] where [code]event[/code] is "
"the [InputEventKey].\n"
"[codeblock lang=text]\n"
"+-----+ +-----+\n"
"| Q   | | Q   | - \"Q\" - keycode\n"
"|   Й | |  ض | - \"Й\" and \"ض\" - key_label\n"
"+-----+ +-----+\n"
"[/codeblock]"
msgstr ""
"Латинская метка, напечатанная на клавише в текущей раскладке клавиатуры, "
"которая соответствует одной из констант [enum Key].\n"
"Чтобы получить понятное человеку представление [InputEventKey], используйте "
"[code]OS.get_keycode_string(event.keycode)[/code], где [code]event[/code] — "
"это [InputEventKey].\n"
"[codeblock lang=text]\n"
"+-----+ +-----+\n"
"| Q   | | Q   | - \"Q\" - keycode\n"
"|   Й | |  ض | - \"Й\" и \"ض\" - key_label\n"
"+-----+ +-----+\n"
"[/codeblock]"

msgid ""
"Represents the location of a key which has both left and right versions, such "
"as [kbd]Shift[/kbd] or [kbd]Alt[/kbd]."
msgstr ""
"Обозначает расположение клавиши, которая имеет как левую, так и правую "
"версии, например [kbd]Shift[/kbd] или [kbd]Alt[/kbd]."

msgid ""
"Represents the physical location of a key on the 101/102-key US QWERTY "
"keyboard, which corresponds to one of the [enum Key] constants.\n"
"To get a human-readable representation of the [InputEventKey], use [method "
"OS.get_keycode_string] in combination with [method "
"DisplayServer.keyboard_get_keycode_from_physical]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _input(event):\n"
"\tif event is InputEventKey:\n"
"\t\tvar keycode = "
"DisplayServer.keyboard_get_keycode_from_physical(event.physical_keycode)\n"
"\t\tprint(OS.get_keycode_string(keycode))\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Input(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventKey inputEventKey)\n"
"\t{\n"
"\t\tvar keycode = "
"DisplayServer.KeyboardGetKeycodeFromPhysical(inputEventKey.PhysicalKeycode);\n"
"\t\tGD.Print(OS.GetKeycodeString(keycode));\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Представляет физическое расположение клавиши на 101/102-клавишной клавиатуре "
"US QWERTY, что соответствует одной из констант [enum Key].\n"
"Чтобы получить понятное человеку представление [InputEventKey], используйте "
"[method OS.get_keycode_string] в сочетании с [method "
"DisplayServer.keyboard_get_keycode_from_physical]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _input(event):\n"
"\tif event is InputEventKey:\n"
"\t\tvar keycode = "
"DisplayServer.keyboard_get_keycode_from_physical(event.physical_keycode)\n"
"\t\tprint(OS.get_keycode_string(keycode))\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Input(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventKey inputEventKey)\n"
"\t{\n"
"\t\tvar keycode = "
"DisplayServer.KeyboardGetKeycodeFromPhysical(inputEventKey.PhysicalKeycode);\n"
"\t\tGD.Print(OS.GetKeycodeString(keycode));\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"If [code]true[/code], the key's state is pressed. If [code]false[/code], the "
"key's state is released."
msgstr ""
"Если [code]true[/code], состояние клавиши нажато. Если [code]false[/code], "
"состояние клавиши отпущено."

msgid ""
"The key Unicode character code (when relevant), shifted by modifier keys. "
"Unicode character codes for composite characters and complex scripts may not "
"be available unless IME input mode is active. See [method "
"Window.set_ime_active] for more information."
msgstr ""
"Код символа Unicode клавиши (если применимо), смещенный клавишами-"
"модификаторами. Коды символов Unicode для составных символов и сложных "
"сценариев могут быть недоступны, если не активен режим ввода IME. Для "
"получения дополнительной информации см. [method Window.set_ime_active]."

msgid "Represents a magnifying touch gesture."
msgstr "Представляет собой увеличительный жест."

msgid ""
"Stores the factor of a magnifying touch gesture. This is usually performed "
"when the user pinches the touch screen and used for zooming in/out.\n"
"[b]Note:[/b] On Android, this requires the [member "
"ProjectSettings.input_devices/pointing/android/enable_pan_and_scale_gestures] "
"project setting to be enabled."
msgstr ""
"Сохраняет коэффициент увеличительного сенсорного жеста. Обычно это "
"выполняется, когда пользователь сжимает сенсорный экран и используется для "
"увеличения/уменьшения масштаба.\n"
"[b]Примечание:[/b] На Android для этого требуется включить настройку проекта "
"[member ProjectSettings.input_devices/pointing/android/"
"enable_pan_and_scale_gestures]."

msgid ""
"The amount (or delta) of the event. This value is closer to [code]1.0[/code] "
"the slower the gesture is performed."
msgstr ""
"Значение (или дельта) события. Тем ближе это значение к [code]1.0[/code], чем "
"медленнее выполняется жест."

msgid ""
"Represents a MIDI message from a MIDI device, such as a musical keyboard."
msgstr ""
"Представляет MIDI-сообщение от MIDI-устройства, например музыкальной "
"клавиатуры."

msgid ""
"InputEventMIDI stores information about messages from [url=https://"
"en.wikipedia.org/wiki/MIDI]MIDI[/url] (Musical Instrument Digital Interface) "
"devices. These may include musical keyboards, synthesizers, and drum "
"machines.\n"
"MIDI messages can be received over a 5-pin MIDI connector or over USB. If "
"your device supports both be sure to check the settings in the device to see "
"which output it is using.\n"
"By default, Godot does not detect MIDI devices. You need to call [method "
"OS.open_midi_inputs], first. You can check which devices are detected with "
"[method OS.get_connected_midi_inputs], and close the connection with [method "
"OS.close_midi_inputs].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tOS.open_midi_inputs()\n"
"\tprint(OS.get_connected_midi_inputs())\n"
"\n"
"func _input(input_event):\n"
"\tif input_event is InputEventMIDI:\n"
"\t\t_print_midi_info(input_event)\n"
"\n"
"func _print_midi_info(midi_event):\n"
"\tprint(midi_event)\n"
"\tprint(\"Channel \", midi_event.channel)\n"
"\tprint(\"Message \", midi_event.message)\n"
"\tprint(\"Pitch \", midi_event.pitch)\n"
"\tprint(\"Velocity \", midi_event.velocity)\n"
"\tprint(\"Instrument \", midi_event.instrument)\n"
"\tprint(\"Pressure \", midi_event.pressure)\n"
"\tprint(\"Controller number: \", midi_event.controller_number)\n"
"\tprint(\"Controller value: \", midi_event.controller_value)\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tOS.OpenMidiInputs();\n"
"\tGD.Print(OS.GetConnectedMidiInputs());\n"
"}\n"
"\n"
"public override void _Input(InputEvent inputEvent)\n"
"{\n"
"\tif (inputEvent is InputEventMidi midiEvent)\n"
"\t{\n"
"\t\tPrintMIDIInfo(midiEvent);\n"
"\t}\n"
"}\n"
"\n"
"private void PrintMIDIInfo(InputEventMidi midiEvent)\n"
"{\n"
"\tGD.Print(midiEvent);\n"
"\tGD.Print($\"Channel {midiEvent.Channel}\");\n"
"\tGD.Print($\"Message {midiEvent.Message}\");\n"
"\tGD.Print($\"Pitch {midiEvent.Pitch}\");\n"
"\tGD.Print($\"Velocity {midiEvent.Velocity}\");\n"
"\tGD.Print($\"Instrument {midiEvent.Instrument}\");\n"
"\tGD.Print($\"Pressure {midiEvent.Pressure}\");\n"
"\tGD.Print($\"Controller number: {midiEvent.ControllerNumber}\");\n"
"\tGD.Print($\"Controller value: {midiEvent.ControllerValue}\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Godot does not support MIDI output, so there is no way to emit "
"MIDI messages from Godot. Only MIDI input is supported.\n"
"[b]Note:[/b] On the Web platform, using MIDI input requires a browser "
"permission to be granted first. This permission request is performed when "
"calling [method OS.open_midi_inputs]. MIDI input will not work until the user "
"accepts the permission request."
msgstr ""
"InputEventMIDI хранит информацию о сообщениях с [url=https://en.wikipedia.org/"
"wiki/MIDI]MIDI[/url] (Musical Instrument Digital Interface) устройств. К ним "
"могут относиться музыкальные клавиатуры, синтезаторы и драм-машины.\n"
"MIDI-сообщения могут быть получены через 5-контактный разъем MIDI или через "
"USB. Если ваше устройство поддерживает оба варианта, обязательно проверьте "
"настройки на устройстве, чтобы узнать, какой выход оно использует.\n"
"По умолчанию Godot не обнаруживает устройства MIDI. Сначала вам нужно вызвать "
"[method OS.open_midi_inputs]. Вы можете проверить, какие устройства "
"обнаружены, с помощью [method OS.get_connected_midi_inputs] и закрыть "
"соединение с помощью [method OS.close_midi_inputs].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tOS.open_midi_inputs()\n"
"\tprint(OS.get_connected_midi_inputs())\n"
"\n"
"func _input(input_event):\n"
"\tif input_event is InputEventMIDI:\n"
"\t\t_print_midi_info(input_event)\n"
"\n"
"func _print_midi_info(midi_event):\n"
"\tprint(midi_event)\n"
"\tprint(\"Channel \", midi_event.channel)\n"
"\tprint(\"Message \", midi_event.message)\n"
"\tprint(\"Pitch \", midi_event.pitch)\n"
"\tprint(\"Velocity \", midi_event.velocity)\n"
"\tprint(\"Instrument \", midi_event.instrument)\n"
"\tprint(\"Pressure \", midi_event.pressure)\n"
"\tprint(\"Controller number: \", midi_event.controller_number)\n"
"\tprint(\"Controller value: \", midi_event.controller_value)\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tOS.OpenMidiInputs();\n"
"\tGD.Print(OS.GetConnectedMidiInputs());\n"
"}\n"
"\n"
"public override void _Input(InputEvent inputEvent)\n"
"{\n"
"\tif (inputEvent is InputEventMidi midiEvent)\n"
"\t{\n"
"\t\tPrintMIDIInfo(midiEvent);\n"
"\t}\n"
"}\n"
"\n"
"private void PrintMIDIInfo(InputEventMidi midiEvent)\n"
"{\n"
"\tGD.Print(midiEvent);\n"
"\tGD.Print($\"Channel {midiEvent.Channel}\");\n"
"\tGD.Print($\"Message {midiEvent.Message}\");\n"
"\tGD.Print($\"Pitch {midiEvent.Pitch}\");\n"
"\tGD.Print($\"Velocity {midiEvent.Velocity}\");\n"
"\tGD.Print($\"Instrument {midiEvent.Instrument}\");\n"
"\tGD.Print($\"Pressure {midiEvent.Pressure}\");\n"
"\tGD.Print($\"Controller number: {midiEvent.ControllerNumber}\");\n"
"\tGD.Print($\"Controller value: {midiEvent.ControllerValue}\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Godot не поддерживает вывод MIDI, поэтому нет способа "
"отправлять сообщения MIDI из Godot. Поддерживается только ввод MIDI.\n"
"[b]Примечание:[/b] На веб-платформе использование ввода MIDI требует "
"предварительного предоставления разрешения браузеру. Этот запрос разрешения "
"выполняется при вызове [method OS.open_midi_inputs]. Ввод MIDI не будет "
"работать, пока пользователь не примет запрос разрешения."

msgid "MIDI Message Status Byte List"
msgstr "Список байтов состояния сообщения MIDI"

msgid "Wikipedia General MIDI Instrument List"
msgstr "Википедия: Общий список MIDI-инструментов"

msgid "Wikipedia Piano Key Frequencies List"
msgstr "Список частот клавиш фортепиано в Википедии"

msgid ""
"The MIDI channel of this message, ranging from [code]0[/code] to [code]15[/"
"code]. MIDI channel [code]9[/code] is reserved for percussion instruments."
msgstr ""
"MIDI-канал этого сообщения, диапазон от [code]0[/code] до [code]15[/code]. "
"MIDI-канал [code]9[/code] зарезервирован для ударных инструментов."

msgid ""
"The unique number of the controller, if [member message] is [constant "
"MIDI_MESSAGE_CONTROL_CHANGE], otherwise this is [code]0[/code]. This value "
"can be used to identify sliders for volume, balance, and panning, as well as "
"switches and pedals on the MIDI device. See the [url=https://en.wikipedia.org/"
"wiki/General_MIDI#Controller_events]General MIDI specification[/url] for a "
"small list."
msgstr ""
"Уникальный номер контроллера, если [member message] — [constant "
"MIDI_MESSAGE_CONTROL_CHANGE], в противном случае это [code]0[/code]. Это "
"значение можно использовать для идентификации ползунков громкости, баланса и "
"панорамирования, а также переключателей и педалей на MIDI-устройстве. "
"Небольшой список см. в [url=https://en.wikipedia.org/wiki/"
"General_MIDI#Controller_events]General MIDI specification[/url]."

msgid ""
"The value applied to the controller. If [member message] is [constant "
"MIDI_MESSAGE_CONTROL_CHANGE], this value ranges from [code]0[/code] to "
"[code]127[/code], otherwise it is [code]0[/code]. See also [member "
"controller_value]."
msgstr ""
"Значение, применяемое к контроллеру. Если [member message] — это [constant "
"MIDI_MESSAGE_CONTROL_CHANGE], это значение варьируется от [code]0[/code] до "
"[code]127[/code], в противном случае это [code]0[/code]. См. также [member "
"controller_value]."

msgid ""
"The instrument (also called [i]program[/i] or [i]preset[/i]) used on this "
"MIDI message. This value ranges from [code]0[/code] to [code]127[/code].\n"
"To see what each value means, refer to the [url=https://en.wikipedia.org/wiki/"
"General_MIDI#Program_change_events]General MIDI's instrument list[/url]. Keep "
"in mind that the list is off by 1 because it does not begin from 0. A value "
"of [code]0[/code] corresponds to the acoustic grand piano."
msgstr ""
"Инструмент (также называемый [i]program[/i] или [i]preset[/i]), используемый "
"в этом MIDI-сообщении. Это значение варьируется от [code]0[/code] до "
"[code]127[/code].\n"
"Чтобы узнать, что означает каждое значение, обратитесь к [url=https://"
"en.wikipedia.org/wiki/General_MIDI#Program_change_events]списку инструментов "
"General MIDI[/url]. Имейте в виду, что список смещен на 1, поскольку он не "
"начинается с 0. Значение [code]0[/code] соответствует акустическому роялю "
"(grand piano)."

msgid ""
"Represents the type of MIDI message (see the [enum MIDIMessage] enum).\n"
"For more information, see the [url=https://www.midi.org/specifications-old/"
"item/table-2-expanded-messages-list-status-bytes]MIDI message status byte "
"list chart[/url]."
msgstr ""
"Представляет тип сообщения MIDI (см. перечисление [enum MIDIMessage]).\n"
"Для получения дополнительной информации см. [url=https://www.midi.org/"
"specifications-old/item/table-2-expanded-messages-list-status-bytes]таблицу "
"байтов состояния сообщения MIDI[/url]."

msgid ""
"The pitch index number of this MIDI message. This value ranges from [code]0[/"
"code] to [code]127[/code].\n"
"On a piano, the [b]middle C[/b] is [code]60[/code], followed by a [b]C-sharp[/"
"b] ([code]61[/code]), then a [b]D[/b] ([code]62[/code]), and so on. Each "
"octave is split in offsets of 12. See the \"MIDI note number\" column of the "
"[url=https://en.wikipedia.org/wiki/Piano_key_frequencies]piano key frequency "
"chart[/url] a full list."
msgstr ""
"Номер индекса высоты тона этого MIDI-сообщения. Это значение варьируется от "
"[code]0[/code] до [code]127[/code].\n"
"На фортепиано [b]middle C[/b] — это [code]60[/code], за которым следует [b]C-"
"sharp[/b] ([code]61[/code]), затем [b]D[/b] ([code]62[/code]) и т. д. Каждая "
"октава разделена на смещения по 12. См. столбец «MIDI note number» в "
"[url=https://en.wikipedia.org/wiki/Piano_key_frequencies]таблице частот "
"клавиш фортепиано[/url] полный список."

msgid ""
"The strength of the key being pressed. This value ranges from [code]0[/code] "
"to [code]127[/code].\n"
"[b]Note:[/b] For many devices, this value is always [code]0[/code]. Other "
"devices such as musical keyboards may simulate pressure by changing the "
"[member velocity], instead."
msgstr ""
"Сила нажатия клавиши. Это значение варьируется от [code]0[/code] до "
"[code]127[/code].\n"
"[b]Примечание:[/b] Для многих устройств это значение всегда равно [code]0[/"
"code]. Другие устройства, такие как музыкальные клавиатуры, могут имитировать "
"давление, изменяя [member velocity] вместо этого."

msgid ""
"The velocity of the MIDI message. This value ranges from [code]0[/code] to "
"[code]127[/code]. For a musical keyboard, this corresponds to how quickly the "
"key was pressed, and is rarely above [code]110[/code] in practice.\n"
"[b]Note:[/b] Some MIDI devices may send a [constant MIDI_MESSAGE_NOTE_ON] "
"message with [code]0[/code] velocity and expect it to be treated the same as "
"a [constant MIDI_MESSAGE_NOTE_OFF] message. If necessary, this can be handled "
"with a few lines of code:\n"
"[codeblock]\n"
"func _input(event):\n"
"\tif event is InputEventMIDI:\n"
"\t\tif event.message == MIDI_MESSAGE_NOTE_ON and event.velocity > 0:\n"
"\t\t\tprint(\"Note pressed!\")\n"
"[/codeblock]"
msgstr ""
"Скорость сообщения MIDI. Это значение находится в диапазоне от [code]0[/code] "
"до [code]127[/code]. Для музыкальной клавиатуры это соответствует тому, как "
"быстро была нажата клавиша, и на практике редко превышает [code]110[/code].\n"
"[b]Примечание:[/b] Некоторые устройства MIDI могут отправлять сообщение "
"[constant MIDI_MESSAGE_NOTE_ON] со скоростью [code]0[/code] и ожидать, что "
"оно будет обработано так же, как сообщение [constant MIDI_MESSAGE_NOTE_OFF]. "
"При необходимости это можно обработать несколькими строками кода:\n"
"[codeblock]\n"
"func _input(event):\n"
"\tif event is InputEventMIDI:\n"
"\t\tif event.message == MIDI_MESSAGE_NOTE_ON and event.velocity > 0:\n"
"\t\t\tprint(\"Note pressed!\")\n"
"[/codeblock]"

msgid "Base input event type for mouse events."
msgstr "Базовый тип событий ввода для событий мыши."

msgid "Stores general information about mouse events."
msgstr "Сохраняет общую информацию о событиях мыши."

msgid ""
"The mouse button mask identifier, one of or a bitwise combination of the "
"[enum MouseButton] button masks."
msgstr ""
"Идентификатор маски кнопки мыши, одна из масок кнопок [enum MouseButton] или "
"их побитовая комбинация."

msgid ""
"When received in [method Node._input] or [method Node._unhandled_input], "
"returns the mouse's position in the root [Viewport] using the coordinate "
"system of the root [Viewport].\n"
"When received in [method Control._gui_input], returns the mouse's position in "
"the [CanvasLayer] that the [Control] is in using the coordinate system of the "
"[CanvasLayer]."
msgstr ""
"При получении в [method Node._input] или [method Node._unhandled_input] "
"возвращает позицию мыши в корне [Viewport], используя систему координат "
"корневого [Viewport].\n"
"При получении в [method Control._gui_input] возвращает позицию мыши в "
"[CanvasLayer], в котором находится [Control], используя систему координат "
"[CanvasLayer]."

msgid ""
"When received in [method Node._input] or [method Node._unhandled_input], "
"returns the mouse's position in the [Viewport] this [Node] is in using the "
"coordinate system of this [Viewport].\n"
"When received in [method Control._gui_input], returns the mouse's position in "
"the [Control] using the local coordinate system of the [Control]."
msgstr ""
"При получении в [method Node._input] или [method Node._unhandled_input] "
"возвращает позицию мыши в [Viewport], в котором находится этот [Node], "
"используя систему координат этого [Viewport].\n"
"При получении в [method Control._gui_input] возвращает позицию мыши в "
"[Control], используя локальную систему координат [Control]."

msgid "Represents a mouse button being pressed or released."
msgstr "Представляет собой нажатие или отпускание кнопки мыши."

msgid ""
"Stores information about mouse click events. See [method Node._input].\n"
"[b]Note:[/b] On Wear OS devices, rotary input is mapped to [constant "
"MOUSE_BUTTON_WHEEL_UP] and [constant MOUSE_BUTTON_WHEEL_DOWN]. This can be "
"changed to [constant MOUSE_BUTTON_WHEEL_LEFT] and [constant "
"MOUSE_BUTTON_WHEEL_RIGHT] with the [member ProjectSettings.input_devices/"
"pointing/android/rotary_input_scroll_axis] setting."
msgstr ""
"Сохраняет информацию о событиях щелчка мыши. См. [method Node._input].\n"
"[b]Примечание:[/b] На устройствах Wear OS вращательный ввод сопоставляется с "
"[constant MOUSE_BUTTON_WHEEL_UP] и [constant MOUSE_BUTTON_WHEEL_DOWN]. Это "
"можно изменить на [constant MOUSE_BUTTON_WHEEL_LEFT] и [constant "
"MOUSE_BUTTON_WHEEL_RIGHT] с помощью настройки [member "
"ProjectSettings.input_devices/pointing/android/rotary_input_scroll_axis]."

msgid "Mouse and input coordinates"
msgstr "Мышь и входные координаты"

msgid ""
"The mouse button identifier, one of the [enum MouseButton] button or button "
"wheel constants."
msgstr ""
"Идентификатор кнопки мыши, одна из констант кнопки [enum MouseButton] или "
"колеса прокрутки."

msgid "If [code]true[/code], the mouse button event has been canceled."
msgstr "Если [code]true[/code], событие кнопки мыши отменено."

msgid "If [code]true[/code], the mouse button's state is a double-click."
msgstr "Если [code]true[/code], состояние кнопки мыши — двойной щелчок."

msgid ""
"The amount (or delta) of the event. When used for high-precision scroll "
"events, this indicates the scroll amount (vertical or horizontal). This is "
"only supported on some platforms; the reported sensitivity varies depending "
"on the platform. May be [code]0[/code] if not supported."
msgstr ""
"Количество (или дельта) события. При использовании для высокоточных событий "
"прокрутки это указывает количество прокрутки (вертикальной или "
"горизонтальной). Это поддерживается только на некоторых платформах; "
"сообщаемая чувствительность варьируется в зависимости от платформы. Может "
"быть [code]0[/code], если не поддерживается."

msgid ""
"If [code]true[/code], the mouse button's state is pressed. If [code]false[/"
"code], the mouse button's state is released."
msgstr ""
"Если [code]true[/code], состояние кнопки мыши нажато. Если [code]false[/"
"code], состояние кнопки мыши отпущено."

msgid "Represents a mouse or a pen movement."
msgstr "Представляет собой движение мыши или пера."

msgid ""
"Stores information about a mouse or a pen motion. This includes relative "
"position, absolute position, and velocity. See [method Node._input].\n"
"[b]Note:[/b] By default, this event is only emitted once per frame rendered "
"at most. If you need more precise input reporting, set [member "
"Input.use_accumulated_input] to [code]false[/code] to make events emitted as "
"often as possible. If you use InputEventMouseMotion to draw lines, consider "
"using [method Geometry2D.bresenham_line] as well to avoid visible gaps in "
"lines if the user is moving the mouse quickly.\n"
"[b]Note:[/b] This event may be emitted even when the mouse hasn't moved, "
"either by the operating system or by Godot itself. If you really need to know "
"if the mouse has moved (e.g. to suppress displaying a tooltip), you should "
"check that [code]relative.is_zero_approx()[/code] is [code]false[/code]."
msgstr ""
"Сохраняет информацию о движении мыши или пера. Сюда входит относительное "
"положение, абсолютное положение и скорость. См. [method Node._input].\n"
"[b]Примечание:[/b] По умолчанию это событие генерируется только один раз за "
"отрисованный кадр. Если вам нужна более точная отчетность о вводе, установите "
"[member Input.use_accumulated_input] на [code]false[/code], чтобы события "
"генерировались как можно чаще. Если вы используете InputEventMouseMotion для "
"рисования линий, рассмотрите возможность использования [method "
"Geometry2D.bresenham_line], чтобы избежать видимых пробелов в линиях, если "
"пользователь быстро перемещает мышь.\n"
"[b]Примечание:[/b] Это событие может генерироваться, даже если мышь не "
"двигалась, как операционной системой, так и самим Godot. Если вам "
"действительно нужно знать, переместилась ли мышь (например, чтобы отключить "
"отображение подсказки), вам следует проверить, что "
"[code]relative.is_zero_approx()[/code] равно [code]false[/code]."

msgid ""
"Returns [code]true[/code] when using the eraser end of a stylus pen.\n"
"[b]Note:[/b] This property is implemented on Linux, macOS and Windows."
msgstr ""
"Возвращает [code]true[/code] при использовании ластика на конце стилуса.\n"
"[b]Примечание:[/b] Это свойство реализовано в Linux, macOS и Windows."

msgid ""
"Represents the pressure the user puts on the pen. Ranges from [code]0.0[/"
"code] to [code]1.0[/code]."
msgstr ""
"Представляет давление, которое пользователь оказывает на ручку. Диапазон от "
"[code]0.0[/code] до [code]1.0[/code]."

msgid ""
"The mouse position relative to the previous position (position at the last "
"frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] may only be emitted when the mouse "
"moves, it is not possible to reliably detect when the mouse has stopped "
"moving by checking this property. A separate, short timer may be necessary.\n"
"[b]Note:[/b] [member relative] is automatically scaled according to the "
"content scale factor, which is defined by the project's stretch mode "
"settings. This means mouse sensitivity will appear different depending on "
"resolution when using [member relative] in a script that handles mouse aiming "
"with the [constant Input.MOUSE_MODE_CAPTURED] mouse mode. To avoid this, use "
"[member screen_relative] instead."
msgstr ""
"Положение мыши относительно предыдущего положения (положение в последнем "
"кадре).\n"
"[b]Примечание:[/b] Поскольку [InputEventMouseMotion] может быть вызвано "
"только при перемещении мыши, невозможно надежно определить, когда мышь "
"прекратила движение, проверив это свойство. Может потребоваться отдельный "
"короткий таймер.\n"
"[b]Примечание:[/b] [member relation] автоматически масштабируется в "
"соответствии с коэффициентом масштабирования содержимого, который "
"определяется настройками режима растяжения проекта. Это означает, что "
"чувствительность мыши будет отличаться в зависимости от разрешения при "
"использовании [member relation] в скрипте, который обрабатывает прицеливание "
"мыши с режимом мыши [constant Input.MOUSE_MODE_CAPTURED]. Чтобы избежать "
"этого, используйте вместо этого [member screen_relative]."

msgid ""
"The unscaled mouse position relative to the previous position in the "
"coordinate system of the screen (position at the last frame).\n"
"[b]Note:[/b] Since [InputEventMouseMotion] may only be emitted when the mouse "
"moves, it is not possible to reliably detect when the mouse has stopped "
"moving by checking this property. A separate, short timer may be necessary.\n"
"[b]Note:[/b] This coordinate is [i]not[/i] scaled according to the content "
"scale factor or calls to [method InputEvent.xformed_by]. This should be "
"preferred over [member relative] for mouse aiming when using the [constant "
"Input.MOUSE_MODE_CAPTURED] mouse mode, regardless of the project's stretch "
"mode."
msgstr ""
"Немасштабированное положение мыши относительно предыдущего положения в "
"системе координат экрана (положение в последнем кадре).\n"
"[b]Примечание:[/b] Поскольку [InputEventMouseMotion] может быть выдано только "
"при перемещении мыши, невозможно надежно определить, когда мышь прекратила "
"движение, проверив это свойство. Может потребоваться отдельный короткий "
"таймер.\n"
"[b]Примечание:[/b] Эта координата [i]не[/i] масштабируется в соответствии с "
"коэффициентом масштабирования содержимого или вызовами [method "
"InputEvent.xformed_by]. Это должно быть предпочтительнее, чем [member "
"relative] для наведения мыши при использовании режима мыши [constant "
"Input.MOUSE_MODE_CAPTURED], независимо от режима растяжения проекта."

msgid ""
"The unscaled mouse velocity in pixels per second in screen coordinates. This "
"velocity is [i]not[/i] scaled according to the content scale factor or calls "
"to [method InputEvent.xformed_by].\n"
"[b]Note:[/b] Use [member screen_relative] for mouse aiming using the "
"[constant Input.MOUSE_MODE_CAPTURED] mouse mode."
msgstr ""
"Немасштабированная скорость мыши в пикселях в секунду в экранных координатах. "
"Эта скорость [i]не[/i] масштабируется в соответствии с коэффициентом "
"масштабирования содержимого или вызовами [method InputEvent.xformed_by].\n"
"[b]Примечание:[/b] Используйте [member screen_relative] для прицеливания мыши "
"с использованием режима [constant Input.MOUSE_MODE_CAPTURED]."

msgid ""
"Represents the angles of tilt of the pen. Positive X-coordinate value "
"indicates a tilt to the right. Positive Y-coordinate value indicates a tilt "
"toward the user. Ranges from [code]-1.0[/code] to [code]1.0[/code] for both "
"axes."
msgstr ""
"Представляет углы наклона пера. Положительное значение координаты X указывает "
"на наклон вправо. Положительное значение координаты Y указывает на наклон в "
"сторону пользователя. Диапазон от [code]-1.0[/code] до [code]1.0[/code] для "
"обеих осей."

msgid ""
"The mouse velocity in pixels per second.\n"
"[b]Note:[/b] [member velocity] is automatically scaled according to the "
"content scale factor, which is defined by the project's stretch mode "
"settings. That means mouse sensitivity may appear different depending on "
"resolution.\n"
"[b]Note:[/b] Use [member screen_relative] for mouse aiming using the "
"[constant Input.MOUSE_MODE_CAPTURED] mouse mode."
msgstr ""
"Скорость мыши в пикселях в секунду.\n"
"[b]Примечание:[/b] [member velocity] автоматически масштабируется в "
"соответствии с коэффициентом масштабирования контента, который определяется "
"настройками режима растяжения проекта. Это означает, что чувствительность "
"мыши может отличаться в зависимости от разрешения.\n"
"[b]Примечание:[/b] Используйте [member screen_relative] для наведения мыши с "
"использованием режима мыши [constant Input.MOUSE_MODE_CAPTURED]."

msgid "Represents a panning touch gesture."
msgstr "Представляет собой жест панорамирования."

msgid ""
"Stores information about pan gestures. A pan gesture is performed when the "
"user swipes the touch screen with two fingers. It's typically used for "
"panning/scrolling.\n"
"[b]Note:[/b] On Android, this requires the [member "
"ProjectSettings.input_devices/pointing/android/enable_pan_and_scale_gestures] "
"project setting to be enabled."
msgstr ""
"Сохраняет информацию о жестах панорамирования. Жест панорамирования "
"выполняется, когда пользователь проводит по сенсорному экрану двумя пальцами. "
"Обычно он используется для панорамирования/прокрутки.\n"
"[b]Примечание:[/b] На Android для этого требуется включить настройку проекта "
"[member ProjectSettings.input_devices/pointing/android/"
"enable_pan_and_scale_gestures]."

msgid "Panning amount since last pan event."
msgstr "Объем панорамирования с момента последнего события панорамирования."

msgid "Represents a screen drag event."
msgstr "Представляет событие перетаскивания экрана."

msgid "Stores information about screen drag events. See [method Node._input]."
msgstr ""
"Сохраняет информацию о событиях перетаскивания экрана. См. [method "
"Node._input]."

msgid "The drag event index in the case of a multi-drag event."
msgstr ""
"Индекс события перетаскивания в случае события множественного перетаскивания."

msgid "Returns [code]true[/code] when using the eraser end of a stylus pen."
msgstr ""
"Возвращает [code]true[/code] при использовании ластика на конце стилуса."

msgid ""
"The drag position in the viewport the node is in, using the coordinate system "
"of this viewport."
msgstr ""
"Положение перетаскивания в области просмотра, в которой находится узел, с "
"использованием системы координат этой области просмотра (viewport)-а."

msgid ""
"The drag position relative to the previous position (position at the last "
"frame).\n"
"[b]Note:[/b] [member relative] is automatically scaled according to the "
"content scale factor, which is defined by the project's stretch mode "
"settings. This means touch sensitivity will appear different depending on "
"resolution when using [member relative] in a script that handles touch "
"aiming. To avoid this, use [member screen_relative] instead."
msgstr ""
"Положение перетаскивания относительно предыдущего положения (положение в "
"последнем кадре).\n"
"[b]Примечание:[/b] [member relation] автоматически масштабируется в "
"соответствии с коэффициентом масштабирования содержимого, который "
"определяется настройками режима растяжения проекта. Это означает, что "
"чувствительность к прикосновению будет отличаться в зависимости от разрешения "
"при использовании [member relation] в скрипте, который обрабатывает сенсорное "
"наведение. Чтобы избежать этого, используйте вместо этого [member "
"screen_relative]."

msgid ""
"The unscaled drag position relative to the previous position in screen "
"coordinates (position at the last frame). This position is [i]not[/i] scaled "
"according to the content scale factor or calls to [method "
"InputEvent.xformed_by]. This should be preferred over [member relative] for "
"touch aiming regardless of the project's stretch mode."
msgstr ""
"Немасштабированная позиция перетаскивания относительно предыдущей позиции в "
"экранных координатах (позиция в последнем кадре). Эта позиция [i]не[/i] "
"масштабируется в соответствии с коэффициентом масштабирования содержимого или "
"вызовами [method InputEvent.xformed_by]. Это должно быть предпочтительнее, "
"чем [member relation] для сенсорного наведения независимо от режима "
"растяжения проекта."

msgid ""
"The unscaled drag velocity in pixels per second in screen coordinates. This "
"velocity is [i]not[/i] scaled according to the content scale factor or calls "
"to [method InputEvent.xformed_by]. This should be preferred over [member "
"velocity] for touch aiming regardless of the project's stretch mode."
msgstr ""
"Немасштабированная скорость перетаскивания в пикселях в секунду в экранных "
"координатах. Эта скорость [i]не[/i] масштабируется в соответствии с "
"коэффициентом масштабирования содержимого или вызовами [method "
"InputEvent.xformed_by]. Это должно быть предпочтительнее, чем [member "
"velocity] для сенсорного наведения независимо от режима растяжения проекта."

msgid ""
"The drag velocity.\n"
"[b]Note:[/b] [member velocity] is automatically scaled according to the "
"content scale factor, which is defined by the project's stretch mode "
"settings. This means touch sensitivity will appear different depending on "
"resolution when using [member velocity] in a script that handles touch "
"aiming. To avoid this, use [member screen_velocity] instead."
msgstr ""
"Скорость перетаскивания.\n"
"[b]Примечание:[/b] [member velocity] автоматически масштабируется в "
"соответствии с коэффициентом масштабирования контента, который определяется "
"настройками режима растяжения проекта. Это означает, что чувствительность к "
"прикосновению будет отличаться в зависимости от разрешения при использовании "
"[member velocity] в скрипте, который обрабатывает сенсорное наведение. Чтобы "
"избежать этого, используйте вместо этого [member screen_velocity]."

msgid "Represents a screen touch event."
msgstr "Представляет собой событие касания экрана."

msgid ""
"Stores information about multi-touch press/release input events. Supports "
"touch press, touch release and [member index] for multi-touch count and order."
msgstr ""
"Сохраняет информацию о событиях ввода мультитач-нажатия/отпускания. "
"Поддерживает сенсорное нажатие, сенсорное отпускание и [member index] для "
"подсчета и порядка мультитач."

msgid "If [code]true[/code], the touch event has been canceled."
msgstr "Если [code]true[/code], событие касания отменено."

msgid "If [code]true[/code], the touch's state is a double tap."
msgstr "Если [code]true[/code], состояние касания — двойное касание."

msgid ""
"The touch index in the case of a multi-touch event. One index = one finger."
msgstr "Индекс касания в случае события мультитача. Один индекс = один палец."

msgid ""
"The touch position in the viewport the node is in, using the coordinate "
"system of this viewport."
msgstr ""
"Положение касания в области просмотра, в которой находится узел, с "
"использованием системы координат этой области просмотра (viewport)."

msgid ""
"If [code]true[/code], the touch's state is pressed. If [code]false[/code], "
"the touch's state is released."
msgstr ""
"Если [code]true[/code], состояние касания — нажатие. Если [code]false[/code], "
"состояние касания — отпущено."

msgid "Represents a triggered keyboard [Shortcut]."
msgstr "Представляет собой активированную клавиатуру [Shortcut]."

msgid ""
"InputEventShortcut is a special event that can be received in [method "
"Node._input], [method Node._shortcut_input], and [method "
"Node._unhandled_input]. It is typically sent by the editor's Command Palette "
"to trigger actions, but can also be sent manually using [method "
"Viewport.push_input]."
msgstr ""
"InputEventShortcut — это особое событие, которое может быть получено в "
"[method Node._input], [method Node._shortcut_input] и [method "
"Node._unhandled_input]. Обычно оно отправляется палитрой команд редактора для "
"запуска действий, но также может быть отправлено вручную с помощью [method "
"Viewport.push_input]."

msgid ""
"The [Shortcut] represented by this event. Its [method Shortcut.matches_event] "
"method will always return [code]true[/code] for this event."
msgstr ""
"[Shortcut], представленный этим событием. Его метод [method "
"Shortcut.matches_event] всегда будет возвращать [code]true[/code] для этого "
"события."

msgid ""
"Abstract base class for input events affected by modifier keys like "
"[kbd]Shift[/kbd] and [kbd]Alt[/kbd]."
msgstr ""
"Абстрактный базовый класс для событий ввода, на которые влияют клавиши-"
"модификаторы, такие как [kbd]Shift[/kbd] и [kbd]Alt[/kbd]."

msgid ""
"Stores information about mouse, keyboard, and touch gesture input events. "
"This includes information about which modifier keys are pressed, such as "
"[kbd]Shift[/kbd] or [kbd]Alt[/kbd]. See [method Node._input].\n"
"[b]Note:[/b] Modifier keys are considered modifiers only when used in "
"combination with another key. As a result, their corresponding member "
"variables, such as [member ctrl_pressed], will return [code]false[/code] if "
"the key is pressed on its own."
msgstr ""
"Сохраняет информацию о событиях ввода с помощью мыши, клавиатуры и сенсорных "
"жестов. Сюда входит информация о том, какие клавиши-модификаторы нажаты, "
"например [kbd]Shift[/kbd] или [kbd]Alt[/kbd]. См. [method Node._input].\n"
"[b]Примечание:[/b] Клавиши-модификаторы считаются модификаторами только при "
"использовании в сочетании с другой клавишей. В результате соответствующие им "
"переменные-члены, например [member ctrl_pressed], вернут [code]false[/code], "
"если клавиша нажата сама по себе."

msgid "Returns the keycode combination of modifier keys."
msgstr "Возвращает комбинацию кодов клавиш-модификаторов."

msgid ""
"On macOS, returns [code]true[/code] if [kbd]Meta[/kbd] ([kbd]Cmd[/kbd]) is "
"pressed.\n"
"On other platforms, returns [code]true[/code] if [kbd]Ctrl[/kbd] is pressed."
msgstr ""
"На macOS возвращает [code]true[/code], если нажата [kbd]Meta[/kbd] ([kbd]Cmd[/"
"kbd]). \n"
"На других платформах возвращает [code]true[/code], если нажата [kbd]Ctrl[/"
"kbd]."

msgid "State of the [kbd]Alt[/kbd] modifier."
msgstr "Состояние модификатора [kbd]Alt[/kbd]."

msgid ""
"Automatically use [kbd]Meta[/kbd] ([kbd]Cmd[/kbd]) on macOS and [kbd]Ctrl[/"
"kbd] on other platforms. If [code]true[/code], [member ctrl_pressed] and "
"[member meta_pressed] cannot be set."
msgstr ""
"Автоматически использовать [kbd]Meta[/kbd] ([kbd]Cmd[/kbd]) на macOS и "
"[kbd]Ctrl[/kbd] на других платформах. Если [code]true[/code], [member "
"ctrl_pressed] и [member meta_pressed] не могут быть установлены."

msgid "State of the [kbd]Ctrl[/kbd] modifier."
msgstr "Состояние модификатора [kbd]Ctrl[/kbd]."

msgid ""
"State of the [kbd]Meta[/kbd] modifier. On Windows and Linux, this represents "
"the Windows key (sometimes called \"meta\" or \"super\" on Linux). On macOS, "
"this represents the Command key."
msgstr ""
"Состояние модификатора [kbd]Meta[/kbd]. В Windows и Linux это представляет "
"клавишу Windows (иногда называемую «meta» или «super» в Linux). В macOS это "
"представляет клавишу Command."

msgid "State of the [kbd]Shift[/kbd] modifier."
msgstr "Состояние модификатора [kbd]Shift[/kbd]."

msgid "A singleton that manages all [InputEventAction]s."
msgstr "Синглтон, управляющий всеми [InputEventAction]-ами."

msgid ""
"Manages all [InputEventAction] which can be created/modified from the project "
"settings menu [b]Project > Project Settings > Input Map[/b] or in code with "
"[method add_action] and [method action_add_event]. See [method Node._input]."
msgstr ""
"Управляет всеми [InputEventAction], которые можно создать/изменить из меню "
"настроек проекта [b]Проект > Настройки проекта > Карта входных данных[/b] или "
"в коде с помощью [method add_action] и [method action_add_event]. См. [method "
"Node._input]."

msgid "Using InputEvent: InputMap"
msgstr "Использование InputEvent: InputMap"

msgid ""
"Adds an [InputEvent] to an action. This [InputEvent] will trigger the action."
msgstr "Добавляет [InputEvent] к действию. Это [InputEvent] вызовет действие."

msgid "Removes an [InputEvent] from an action."
msgstr "Удаляет [InputEvent] из действия."

msgid "Removes all events from an action."
msgstr "Удаляет все события из действия."

msgid "Returns a deadzone value for the action."
msgstr "Возвращает значение мертвой зоны для действия."

msgid ""
"Returns an array of [InputEvent]s associated with a given action.\n"
"[b]Note:[/b] When used in the editor (e.g. a tool script or [EditorPlugin]), "
"this method will return events for the editor action. If you want to access "
"your project's input binds from the editor, read the [code]input/*[/code] "
"settings from [ProjectSettings]."
msgstr ""
"Возвращает массив [InputEvent], связанных с заданным действием.\n"
"[b]Примечание:[/b] При использовании в редакторе (например, скрипте "
"инструмента или [EditorPlugin]) этот метод вернет события для действия "
"редактора. Если вы хотите получить доступ к привязкам ввода вашего проекта из "
"редактора, прочитайте настройки [code]input/*[/code] из [ProjectSettings]."

msgid ""
"Returns [code]true[/code] if the action has the given [InputEvent] associated "
"with it."
msgstr ""
"Возвращает [code]true[/code], если с действием связан заданный [InputEvent]."

msgid "Sets a deadzone value for the action."
msgstr "Устанавливает значение мертвой зоны для действия."

msgid ""
"Adds an empty action to the [InputMap] with a configurable [param deadzone].\n"
"An [InputEvent] can then be added to this action with [method "
"action_add_event]."
msgstr ""
"Добавляет пустое действие в [InputMap] с настраиваемым [param deadzone].\n"
"Затем к этому действию можно добавить [InputEvent] с помощью [method "
"action_add_event]."

msgid "Removes an action from the [InputMap]."
msgstr "Удаляет действие из [InputMap]."

msgid ""
"Returns [code]true[/code] if the given event is part of an existing action. "
"This method ignores keyboard modifiers if the given [InputEvent] is not "
"pressed (for proper release detection). See [method action_has_event] if you "
"don't want this behavior.\n"
"If [param exact_match] is [code]false[/code], it ignores additional input "
"modifiers for [InputEventKey] and [InputEventMouseButton] events, and the "
"direction for [InputEventJoypadMotion] events."
msgstr ""
"Возвращает [code]true[/code], если заданное событие является частью "
"существующего действия. Этот метод игнорирует модификаторы клавиатуры, если "
"заданный [InputEvent] не нажат (для правильного определения отпускания). См. "
"[method action_has_event], если вам не нужно такое поведение.\n"
"Если [param exact_match] равен [code]false[/code], он игнорирует "
"дополнительные модификаторы ввода для событий [InputEventKey] и "
"[InputEventMouseButton], а также направление для событий "
"[InputEventJoypadMotion]."

msgid "Returns the human-readable description of the given action."
msgstr "Возвращает понятное человеку описание указанного действия."

msgid "Returns an array of all actions in the [InputMap]."
msgstr "Возвращает массив всех действий в [InputMap]."

msgid ""
"Returns [code]true[/code] if the [InputMap] has a registered action with the "
"given name."
msgstr ""
"Возвращает [code]true[/code], если [InputMap] имеет зарегистрированное "
"действие с указанным именем."

msgid ""
"Clears all [InputEventAction] in the [InputMap] and load it anew from "
"[ProjectSettings]."
msgstr ""
"Очищает все [InputEventAction] в [InputMap] и загружает их заново из "
"[ProjectSettings]."

msgid "Placeholder for the root [Node] of a [PackedScene]."
msgstr "Заполнитель для корневого [Node] [PackedScene]."

msgid ""
"Turning on the option [b]Load As Placeholder[/b] for an instantiated scene in "
"the editor causes it to be replaced by an [InstancePlaceholder] when running "
"the game, this will not replace the node in the editor. This makes it "
"possible to delay actually loading the scene until calling [method "
"create_instance]. This is useful to avoid loading large scenes all at once by "
"loading parts of it selectively.\n"
"[b]Note:[/b] Like [Node], [InstancePlaceholder] does not have a transform. "
"This causes any child nodes to be positioned relatively to the [Viewport] "
"origin, rather than their parent as displayed in the editor. Replacing the "
"placeholder with a scene with a transform will transform children relatively "
"to their parent again."
msgstr ""
"Включение параметра [b]Загрузить как плейсхолдер[/b] для созданной сцены в "
"редакторе приводит к её замене на [InstancePlaceholder] при запуске игры, но "
"не заменяет узел в редакторе. Это позволяет отложить фактическую загрузку "
"сцены до вызова [method create_instance]. Это полезно, чтобы избежать "
"одновременной загрузки больших сцен, загружая их по частям.\n"
"[b]Примечание:[/b] Как и [Node], [InstancePlaceholder] не имеет "
"преобразования. Это приводит к тому, что все дочерние узлы располагаются "
"относительно начала координат [Viewport], а не относительно их родительских "
"узлов, как отображается в редакторе. Замена плейсхолдера на сцену с "
"преобразованием снова преобразует дочерние узлы относительно их родительских "
"узлов."

msgid ""
"Call this method to actually load in the node. The created node will be "
"placed as a sibling [i]above[/i] the [InstancePlaceholder] in the scene tree. "
"The [Node]'s reference is also returned for convenience.\n"
"[b]Note:[/b] [method create_instance] is not thread-safe. Use [method "
"Object.call_deferred] if calling from a thread."
msgstr ""
"Вызовите этот метод для фактической загрузки узла. Созданный узел будет "
"помещен как родственный [i]выше[/i] [InstancePlaceholder] в дереве сцены. "
"Ссылка на [Node] также возвращается для удобства.\n"
"[b]Примечание:[/b] [method create_instance] не является потокобезопасным. "
"Используйте [method Object.call_deferred] при вызове из потока."

msgid ""
"Gets the path to the [PackedScene] resource file that is loaded by default "
"when calling [method create_instance]. Not thread-safe. Use [method "
"Object.call_deferred] if calling from a thread."
msgstr ""
"Получает путь к файлу ресурсов [PackedScene], который загружается по "
"умолчанию при вызове [method create_instance]. Не потоко-безопасно. "
"Используйте [method Object.call_deferred] при вызове из потока."

msgid ""
"Returns the list of properties that will be applied to the node when [method "
"create_instance] is called.\n"
"If [param with_order] is [code]true[/code], a key named [code].order[/code] "
"(note the leading period) is added to the dictionary. This [code].order[/"
"code] key is an [Array] of [String] property names specifying the order in "
"which properties will be applied (with index 0 being the first)."
msgstr ""
"Возвращает список свойств, которые будут применены к узлу при вызове [method "
"create_instance]. \n"
"Если [param with_order] равен [code]true[/code], ключ с именем [code].order[/"
"code] (обратите внимание на начальную точку) добавляется в словарь. Этот ключ "
"[code].order[/code] представляет собой [Array] имен свойств [String], "
"определяющих порядок, в котором будут применены свойства (индекс 0 является "
"первым)."

msgid "A built-in type for integers."
msgstr "Встроенный тип для целых чисел."

msgid ""
"Signed 64-bit integer type. This means that it can take values from "
"[code]-2^63[/code] to [code]2^63 - 1[/code], i.e. from "
"[code]-9223372036854775808[/code] to [code]9223372036854775807[/code]. When "
"it exceeds these bounds, it will wrap around.\n"
"[int]s can be automatically converted to [float]s when necessary, for example "
"when passing them as arguments in functions. The [float] will be as close to "
"the original integer as possible.\n"
"Likewise, [float]s can be automatically converted into [int]s. This will "
"truncate the [float], discarding anything after the floating-point.\n"
"[b]Note:[/b] In a boolean context, an [int] will evaluate to [code]false[/"
"code] if it equals [code]0[/code], and to [code]true[/code] otherwise.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var x: int = 1 # x is 1\n"
"x = 4.2 # x is 4, because 4.2 gets truncated\n"
"var max_int = 9223372036854775807 # Biggest value an int can store\n"
"max_int += 1 # max_int is -9223372036854775808, because it wrapped around\n"
"[/gdscript]\n"
"[csharp]\n"
"int x = 1; // x is 1\n"
"x = (int)4.2; // x is 4, because 4.2 gets truncated\n"
"// We use long below, because GDScript's int is 64-bit while C#'s int is 32-"
"bit.\n"
"long maxLong = 9223372036854775807; // Biggest value a long can store\n"
"maxLong++; // maxLong is now -9223372036854775808, because it wrapped "
"around.\n"
"\n"
"// Alternatively with C#'s 32-bit int type, which has a smaller maximum "
"value.\n"
"int maxInt = 2147483647; // Biggest value an int can store\n"
"maxInt++; // maxInt is now -2147483648, because it wrapped around\n"
"[/csharp]\n"
"[/codeblocks]\n"
"You can use the [code]0b[/code] literal for binary representation, the "
"[code]0x[/code] literal for hexadecimal representation, and the [code]_[/"
"code] symbol to separate long numbers and improve readability.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var x = 0b1001 # x is 9\n"
"var y = 0xF5 # y is 245\n"
"var z = 10_000_000 # z is 10000000\n"
"[/gdscript]\n"
"[csharp]\n"
"int x = 0b1001; // x is 9\n"
"int y = 0xF5; // y is 245\n"
"int z = 10_000_000; // z is 10000000\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Знаковый 64-битный целочисленный тип. Это означает, что он может принимать "
"значения от [code]-2^63[/code] до [code]2^63 - 1[/code], т.е. от "
"[code]-9223372036854775808[/code] до [code]9223372036854775807[/code]. При "
"выходе за эти границы произойдет циклический возврат.\n"
"[int]-ы могут быть автоматически преобразованы в [float]-ы при необходимости, "
"например, при передаче их в качестве аргументов в функциях. [float] будет "
"максимально близок к исходному целому числу.\n"
"Аналогично, [float]-ы можно автоматически преобразовать в [int]-ы. Это усечет "
"[float], отбросив все после плавающей точки.\n"
"[b]Примечание:[/b] В булевом контексте [int] будет оцениваться как "
"[code]false[/code], если он равен [code]0[/code], и как [code]true[/code] в "
"противном случае.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var x: int = 1 # х равен 1\n"
"x = 4.2 # x равен 4, потому что 4.2 усекается\n"
"var max_int = 9223372036854775807 # Наибольшее значение, которое может "
"хранить int\n"
"max_int += 1 # max_int равен -9223372036854775808, потому что он обернулся "
"вокруг\n"
"[/gdscript]\n"
"[csharp]\n"
"int x = 1; // x равен 1\n"
"x = (int)4.2; // x равен 4, потому что 4.2 усекается\n"
"// Ниже мы используем long, поскольку int в GDScript является 64-битным, а "
"int в C# — 32-битным.\n"
"long maxLong = 9223372036854775807; // Наибольшее значение, которое может "
"храниться в long\n"
"maxLong++; // maxLong равен now -9223372036854775808, потому что он "
"обернулся.\n"
"\n"
"// Альтернативой может служить 32-битный тип int в C#, имеющий меньшее "
"максимальное значение.\n"
"int maxInt = 2147483647; // Наибольшее значение, которое может хранить int\n"
"maxInt++; // maxInt теперь равен -2147483648, потому что он был перенесен\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Вы можете использовать литерал [code]0b[/code] для двоичного представления, "
"литерал [code]0x[/code] для шестнадцатеричного представления и символ "
"[code]_[/code] для разделения длинных чисел и улучшения читаемости.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var x = 0b1001 # x равен 9\n"
"var y = 0xF5 # y равен 245\n"
"var z = 10_000_000 # z равен 10000000\n"
"[/gdscript]\n"
"[csharp]\n"
"int x = 0b1001; // x равен 9\n"
"int y = 0xF5; // y равен 245\n"
"int z = 10_000_000; // z равен 10000000\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Constructs an [int] set to [code]0[/code]."
msgstr "Создает [int], установленный на [code]0[/code]."

msgid "Constructs an [int] as a copy of the given [int]."
msgstr "Создает [int] как копию заданного [int]."

msgid ""
"Constructs a new [int] from a [String], following the same rules as [method "
"String.to_int]."
msgstr ""
"Создает новый [int] из [String] по тем же правилам, что и [method "
"String.to_int]."

msgid ""
"Constructs a new [int] from a [bool]. [code]true[/code] is converted to "
"[code]1[/code] and [code]false[/code] is converted to [code]0[/code]."
msgstr ""
"Создает новый [int] из [bool]. [code]true[/code] преобразуется в [code]1[/"
"code], а [code]false[/code] преобразуется в [code]0[/code]."

msgid ""
"Constructs a new [int] from a [float]. This will truncate the [float], "
"discarding anything after the floating point."
msgstr ""
"Конструирует новый [int] из [float]. Это обрежет [float], отбросив все, что "
"находится после плавающей точки."

msgid "Returns [code]true[/code] if the [int] is not equivalent to the [float]."
msgstr "Возвращает [code]true[/code], если [int] не эквивалентно [float]."

msgid "Returns [code]true[/code] if the [int]s are not equal."
msgstr "Возвращает [code]true[/code], если [int]-ы не равны."

msgid ""
"Returns the remainder after dividing two [int]s. Uses truncated division, "
"which returns a negative number if the dividend is negative. If this is not "
"desired, consider using [method @GlobalScope.posmod].\n"
"[codeblock]\n"
"print(6 % 2) # Prints 0\n"
"print(11 % 4) # Prints 3\n"
"print(-5 % 3) # Prints -2\n"
"[/codeblock]"
msgstr ""
"Возвращает остаток после деления двух [int]. Использует усеченное деление, "
"которое возвращает отрицательное число, если делимое отрицательно. Если это "
"нежелательно, рассмотрите возможность использования [method "
"@GlobalScope.posmod].\n"
"[codeblock]\n"
"print(6 % 2) # Prints 0\n"
"print(11 % 4) # Prints 3\n"
"print(-5 % 3) # Prints -2\n"
"[/codeblock]"

msgid ""
"Performs the bitwise [code]AND[/code] operation.\n"
"[codeblock]\n"
"print(0b1100 & 0b1010) # Prints 8 (binary 1000)\n"
"[/codeblock]\n"
"This is useful for retrieving binary flags from a variable.\n"
"[codeblock]\n"
"var flags = 0b101\n"
"# Check if the first or second bit are enabled.\n"
"if flags & 0b011:\n"
"\tdo_stuff() # This line will run.\n"
"[/codeblock]"
msgstr ""
"Выполняет побитовую операцию [code]AND[/code].\n"
"[codeblock]\n"
"print(0b1100 & 0b1010) # Печатает 8 (двоичное 1000)\n"
"[/codeblock]\n"
"Это полезно для извлечения двоичных флагов из переменной.\n"
"[codeblock]\n"
"var flags = 0b101\n"
"# Проверьте, включен ли первый или второй бит.\n"
"if flags & 0b011:\n"
"\tdo_stuff() # Эта линия будет работать.\n"
"[/codeblock]"

msgid "Multiplies each component of the [Color] by the [int]."
msgstr "Умножает каждый компонент [Color] на [int]."

msgid ""
"Multiplies each component of the [Quaternion] by the [int]. This operation is "
"not meaningful on its own, but it can be used as a part of a larger "
"expression."
msgstr ""
"Умножает каждый компонент [Quaternion] на [int]. Эта операция сама по себе не "
"имеет смысла, но ее можно использовать как часть большего выражения."

msgid ""
"Multiplies each component of the [Vector2] by the [int].\n"
"[codeblock]\n"
"print(2 * Vector2(1, 4)) # Prints (2, 8)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector2] на [int].\n"
"[codeblock]\n"
"print(2 * Vector2(1, 4)) # Prints (2, 8)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector2i] by the [int]."
msgstr "Умножает каждый компонент [Vector2i] на [int]."

msgid "Multiplies each component of the [Vector3] by the [int]."
msgstr "Умножает каждый компонент [Vector3] на [int]."

msgid "Multiplies each component of the [Vector3i] by the [int]."
msgstr "Умножает каждый компонент [Vector3i] на [int]."

msgid "Multiplies each component of the [Vector4] by the [int]."
msgstr "Умножает каждый компонент [Vector4] на [int]."

msgid "Multiplies each component of the [Vector4i] by the [int]."
msgstr "Умножает каждый компонент [Vector4i] на [int]."

msgid "Multiplies the [float] by the [int]. The result is a [float]."
msgstr "Умножает [float] на [int]. Результат — [float]."

msgid "Multiplies the two [int]s."
msgstr "Умножает два [int]-а."

msgid ""
"Raises an [int] to a power of a [float]. The result is a [float].\n"
"[codeblock]\n"
"print(2 ** 0.5) # Prints 1.4142135623731\n"
"[/codeblock]"
msgstr ""
"Возводит [int] в степень [float]. Результат — [float].\n"
"[codeblock]\n"
"print(2 ** 0.5) # Prints 1.4142135623731\n"
"[/codeblock]"

msgid ""
"Raises the left [int] to a power of the right [int].\n"
"[codeblock]\n"
"print(3 ** 4) # Prints 81\n"
"[/codeblock]"
msgstr ""
"Возводит левое [int] в степень правого [int].\n"
"[codeblock]\n"
"print(3 ** 4) # Prints 81\n"
"[/codeblock]"

msgid "Adds the [int] and the [float]. The result is a [float]."
msgstr "Складывает [int] и [float]. Результат — [float]."

msgid "Adds the two [int]s."
msgstr "Складывает два [int]-а."

msgid "Subtracts the [float] from the [int]. The result is a [float]."
msgstr "Вычитает [float] из [int]. Результат — [float]."

msgid "Subtracts the two [int]s."
msgstr "Вычитает два [int]-а."

msgid ""
"Divides the [int] by the [float]. The result is a [float].\n"
"[codeblock]\n"
"print(10 / 3.0) # Prints 3.33333333333333\n"
"[/codeblock]"
msgstr ""
"Делит [int] на [float]. Результат — [float].\n"
"[codeblock]\n"
"print(10 / 3.0) # Prints 3.33333333333333\n"
"[/codeblock]"

msgid ""
"Divides the two [int]s. The result is an [int]. This will truncate the "
"[float], discarding anything after the floating point.\n"
"[codeblock]\n"
"print(6 / 2) # Prints 3\n"
"print(5 / 3) # Prints 1\n"
"[/codeblock]"
msgstr ""
"Делит два [int]-а. Результат — [int]. Это обрежет [float], отбросив все после "
"плавающей точки.\n"
"[codeblock]\n"
"print(6 / 2) # Prints 3\n"
"print(5 / 3) # Prints 1\n"
"[/codeblock]"

msgid "Returns [code]true[/code] if the [int] is less than the [float]."
msgstr "Возвращает [code]true[/code], если [int] меньше, чем [float]."

msgid ""
"Returns [code]true[/code] if the left [int] is less than the right [int]."
msgstr "Возвращает [code]true[/code], если левое [int] меньше правого [int]."

msgid ""
"Performs the bitwise shift left operation. Effectively the same as "
"multiplying by a power of 2.\n"
"[codeblock]\n"
"print(0b1010 << 1) # Prints 20 (binary 10100)\n"
"print(0b1010 << 3) # Prints 80 (binary 1010000)\n"
"[/codeblock]"
msgstr ""
"Выполняет операцию побитового сдвига влево. По сути то же самое, что и "
"умножение на степень 2.\n"
"[codeblock]\n"
"print(0b1010 << 1) # Печатает 20 (двоичное 10100)\n"
"print(0b1010 << 3) # Печатает 80 (двоичное 1010000)\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if the [int] is less than or equal to the [float]."
msgstr "Возвращает [code]true[/code], если [int] меньше или равно [float]."

msgid ""
"Returns [code]true[/code] if the left [int] is less than or equal to the "
"right [int]."
msgstr ""
"Возвращает [code]true[/code], если левое [int] меньше или равно правому [int]."

msgid "Returns [code]true[/code] if the [int] is equal to the [float]."
msgstr "Возвращает [code]true[/code], если [int] равно [float]."

msgid "Returns [code]true[/code] if the two [int]s are equal."
msgstr "Возвращает [code]true[/code], если два [int]-а равны."

msgid "Returns [code]true[/code] if the [int] is greater than the [float]."
msgstr "Возвращает [code]true[/code], если [int] больше, чем [float]."

msgid ""
"Returns [code]true[/code] if the left [int] is greater than the right [int]."
msgstr "Возвращает [code]true[/code], если левое [int] больше правого [int]."

msgid ""
"Returns [code]true[/code] if the [int] is greater than or equal to the "
"[float]."
msgstr "Возвращает [code]true[/code], если [int] больше или равно [float]."

msgid ""
"Returns [code]true[/code] if the left [int] is greater than or equal to the "
"right [int]."
msgstr ""
"Возвращает [code]true[/code], если левое [int] больше или равно правому [int]."

msgid ""
"Performs the bitwise shift right operation. Effectively the same as dividing "
"by a power of 2.\n"
"[codeblock]\n"
"print(0b1010 >> 1) # Prints 5 (binary 101)\n"
"print(0b1010 >> 2) # Prints 2 (binary 10)\n"
"[/codeblock]"
msgstr ""
"Выполняет операцию побитового сдвига вправо. По сути то же самое, что деление "
"на степень числа 2.\n"
"[codeblock]\n"
"print(0b1010 >> 1) # Печатает 5 (двоичное 101)\n"
"print(0b1010 >> 2) # Печатает 2 (двоичное 10)\n"
"[/codeblock]"

msgid ""
"Performs the bitwise [code]XOR[/code] operation.\n"
"[codeblock]\n"
"print(0b1100 ^ 0b1010) # Prints 6 (binary 110)\n"
"[/codeblock]"
msgstr ""
"Выполняет побитовую операцию [code]XOR[/code].\n"
"[codeblock]\n"
"print(0b1100 ^ 0b1010) # Печатает 6 (двоичное 110)\n"
"[/codeblock]"

msgid ""
"Returns the negated value of the [int]. If positive, turns the number "
"negative. If negative, turns the number positive. If zero, does nothing."
msgstr ""
"Возвращает отрицательное значение [int]. Если положительное, делает число "
"отрицательным. Если отрицательное, делает число положительным. Если ноль, "
"ничего не делает."

msgid ""
"Performs the bitwise [code]OR[/code] operation.\n"
"[codeblock]\n"
"print(0b1100 | 0b1010) # Prints 14 (binary 1110)\n"
"[/codeblock]\n"
"This is useful for storing binary flags in a variable.\n"
"[codeblock]\n"
"var flags = 0\n"
"flags |= 0b101 # Turn the first and third bits on.\n"
"[/codeblock]"
msgstr ""
"Выполняет побитовую операцию [code]OR[/code] .\n"
"[codeblock]\n"
"print(0b1100 | 0b1010) # Печатает 14 (двоичное 1110)\n"
"[/codeblock]\n"
"Это полезно для хранения двоичных флагов в переменной.\n"
"[codeblock]\n"
"var flags = 0\n"
"flags |= 0b101 # Включите первый и третий биты.\n"
"[/codeblock]"

msgid ""
"Performs the bitwise [code]NOT[/code] operation on the [int]. Due to "
"[url=https://en.wikipedia.org/wiki/Two%27s_complement]2's complement[/url], "
"it's effectively equal to [code]-(int + 1)[/code].\n"
"[codeblock]\n"
"print(~4) # Prints -5\n"
"print(~(-7)) # Prints 6\n"
"[/codeblock]"
msgstr ""
"Выполняет побитовую операцию [code]NOT[/code] над [int]. Благодаря "
"[url=https://en.wikipedia.org/wiki/Two%27s_complement]2's complement[/url] "
"она фактически равна [code]-(int + 1)[/code].\n"
"[codeblock]\n"
"print(~4) # Prints -5\n"
"print(~(-7)) # Prints 6\n"
"[/codeblock]"

msgid "Creates an idle interval in a [Tween] animation."
msgstr "Создает интервал простоя в анимации [Tween]."

msgid ""
"[IntervalTweener] is used to make delays in a tweening sequence. See [method "
"Tween.tween_interval] for more usage information.\n"
"[b]Note:[/b] [method Tween.tween_interval] is the only correct way to create "
"[IntervalTweener]. Any [IntervalTweener] created manually will not function "
"correctly."
msgstr ""
"[IntervalTweener] используется для создания задержек в последовательности "
"промежуточных кадров. Для получения дополнительной информации об "
"использовании см. [method Tween.tween_interval].\n"
"[b]Примечание:[/b] [method Tween.tween_interval] — единственный правильный "
"способ создания [IntervalTweener]. Любой [IntervalTweener], созданный "
"вручную, не будет работать правильно."

msgid "Internet protocol (IP) support functions such as DNS resolution."
msgstr "Интернет-протокол (IP) поддерживает такие функции, как разрешение DNS."

msgid ""
"IP contains support functions for the Internet Protocol (IP). TCP/IP support "
"is in different classes (see [StreamPeerTCP] and [TCPServer]). IP provides "
"DNS hostname resolution support, both blocking and threaded."
msgstr ""
"IP содержит функции поддержки для интернет-протокола (IP). Поддержка TCP/IP "
"находится в разных классах (см. [StreamPeerTCP] и [TCPServer]). IP "
"обеспечивает поддержку разрешения имен хостов DNS, как блокирующего, так и "
"потокового."

msgid ""
"Removes all of a [param hostname]'s cached references. If no [param hostname] "
"is given, all cached IP addresses are removed."
msgstr ""
"Удаляет все кэшированные ссылки [param hostname]. Если [param hostname] не "
"указан, удаляются все кэшированные IP-адреса."

msgid ""
"Removes a given item [param id] from the queue. This should be used to free a "
"queue after it has completed to enable more queries to happen."
msgstr ""
"Удаляет указанный элемент [param id] из очереди. Это следует использовать для "
"освобождения очереди после ее завершения, чтобы можно было выполнять больше "
"запросов."

msgid "Returns all the user's current IPv4 and IPv6 addresses as an array."
msgstr "Возвращает все текущие адреса IPv4 и IPv6 пользователя в виде массива."

msgid ""
"Returns all network adapters as an array.\n"
"Each adapter is a dictionary of the form:\n"
"[codeblock]\n"
"{\n"
"\t\"index\": \"1\", # Interface index.\n"
"\t\"name\": \"eth0\", # Interface name.\n"
"\t\"friendly\": \"Ethernet One\", # A friendly name (might be empty).\n"
"\t\"addresses\": [\"192.168.1.101\"], # An array of IP addresses associated "
"to this interface.\n"
"}\n"
"[/codeblock]"
msgstr ""
"Возвращает все сетевые адаптеры в виде массива.\n"
"Каждый адаптер представляет собой словарь в форме:\n"
"[codeblock]\n"
"{\n"
"\t\"index\": \"1\", # Индекс интерфейса.\n"
"\t\"name\": \"eth0\", # Имя интерфейса.\n"
"\t\"friendly\": \"Ethernet One\", # Понятное имя (может быть пустым).\n"
"\t\"addresses\": [\"192.168.1.101\"], # Массив IP-адресов, связанных с этим "
"интерфейсом.\n"
"}\n"
"[/codeblock]"

msgid ""
"Returns a queued hostname's IP address, given its queue [param id]. Returns "
"an empty string on error or if resolution hasn't happened yet (see [method "
"get_resolve_item_status])."
msgstr ""
"Возвращает IP-адрес имени хоста в очереди, учитывая его очередь [param id]. "
"Возвращает пустую строку в случае ошибки или если разрешение еще не произошло "
"(см. [method get_resolve_item_status])."

msgid ""
"Returns resolved addresses, or an empty array if an error happened or "
"resolution didn't happen yet (see [method get_resolve_item_status])."
msgstr ""
"Возвращает решенные адреса или пустой массив, если произошла ошибка или "
"разрешение еще не произошло (см. [method get_resolve_item_status])."

msgid ""
"Returns a queued hostname's status as a [enum ResolverStatus] constant, given "
"its queue [param id]."
msgstr ""
"Возвращает статус имени хоста в очереди как константу [enum ResolverStatus] с "
"учетом его очереди [param id]."

msgid ""
"Returns a given hostname's IPv4 or IPv6 address when resolved (blocking-type "
"method). The address type returned depends on the [enum Type] constant given "
"as [param ip_type]."
msgstr ""
"Возвращает IPv4 или IPv6-адрес указанного имени хоста при разрешении (метод "
"блокирующего типа). Тип возвращаемого адреса зависит от константы [enum "
"Type], заданной как [param ip_type]."

msgid ""
"Resolves a given hostname in a blocking way. Addresses are returned as an "
"[Array] of IPv4 or IPv6 addresses depending on [param ip_type]."
msgstr ""
"Разрешает заданное имя хоста блокирующим способом. Адреса возвращаются как "
"[Array] адресов IPv4 или IPv6 в зависимости от [param ip_type]."

msgid ""
"Creates a queue item to resolve a hostname to an IPv4 or IPv6 address "
"depending on the [enum Type] constant given as [param ip_type]. Returns the "
"queue ID if successful, or [constant RESOLVER_INVALID_ID] on error."
msgstr ""
"Создает элемент очереди для преобразования имени хоста в адрес IPv4 или IPv6 "
"в зависимости от константы [enum Type], заданной как [param ip_type]. "
"Возвращает идентификатор очереди в случае успеха или [constant "
"RESOLVER_INVALID_ID] в случае ошибки."

msgid "DNS hostname resolver status: No status."
msgstr "Статус преобразователя имен хостов DNS: Нет статуса."

msgid "DNS hostname resolver status: Waiting."
msgstr "Состояние преобразователя имен хостов DNS: Ожидание."

msgid "DNS hostname resolver status: Done."
msgstr "Статус преобразователя имен хостов DNS: Готово."

msgid "DNS hostname resolver status: Error."
msgstr "Состояние преобразователя имен хостов DNS: Ошибка."

msgid ""
"Maximum number of concurrent DNS resolver queries allowed, [constant "
"RESOLVER_INVALID_ID] is returned if exceeded."
msgstr ""
"Максимально допустимое количество одновременных запросов DNS-резолвера, при "
"превышении возвращается [constant RESOLVER_INVALID_ID]."

msgid ""
"Invalid ID constant. Returned if [constant RESOLVER_MAX_QUERIES] is exceeded."
msgstr ""
"Недопустимая константа ID. Возвращается, если превышена [constant "
"RESOLVER_MAX_QUERIES]."

msgid "Address type: None."
msgstr "Тип адреса: Нет."

msgid "Address type: Internet protocol version 4 (IPv4)."
msgstr "Тип адреса: Интернет-протокол версии 4 (IPv4)."

msgid "Address type: Internet protocol version 6 (IPv6)."
msgstr "Тип адреса: Интернет-протокол версии 6 (IPv6)."

msgid "Address type: Any."
msgstr "Тип адреса: Любой."

msgid "A vertical list of selectable items with one or multiple columns."
msgstr ""
"Вертикальный список выбираемых элементов с одним или несколькими столбцами."

msgid ""
"This control provides a vertical list of selectable items that may be in a "
"single or in multiple columns, with each item having options for text and an "
"icon. Tooltips are supported and may be different for every item in the "
"list.\n"
"Selectable items in the list may be selected or deselected and multiple "
"selection may be enabled. Selection with right mouse button may also be "
"enabled to allow use of popup context menus. Items may also be \"activated\" "
"by double-clicking them or by pressing [kbd]Enter[/kbd].\n"
"Item text only supports single-line strings. Newline characters (e.g. [code]"
"\\n[/code]) in the string won't produce a newline. Text wrapping is enabled "
"in [constant ICON_MODE_TOP] mode, but the column's width is adjusted to fully "
"fit its content by default. You need to set [member fixed_column_width] "
"greater than zero to wrap the text.\n"
"All [code]set_*[/code] methods allow negative item indices, i.e. [code]-1[/"
"code] to access the last item, [code]-2[/code] to select the second-to-last "
"item, and so on.\n"
"[b]Incremental search:[/b] Like [PopupMenu] and [Tree], [ItemList] supports "
"searching within the list while the control is focused. Press a key that "
"matches the first letter of an item's name to select the first item starting "
"with the given letter. After that point, there are two ways to perform "
"incremental search: 1) Press the same key again before the timeout duration "
"to select the next item starting with the same letter. 2) Press letter keys "
"that match the rest of the word before the timeout duration to match to "
"select the item in question directly. Both of these actions will be reset to "
"the beginning of the list if the timeout duration has passed since the last "
"keystroke was registered. You can adjust the timeout duration by changing "
"[member ProjectSettings.gui/timers/incremental_search_max_interval_msec]."
msgstr ""
"Этот элемент управления предоставляет вертикальный список выбираемых "
"элементов, которые могут находиться в одном или нескольких столбцах, причем "
"каждый элемент имеет параметры для текста и значка. Подсказки поддерживаются "
"и могут быть разными для каждого элемента в списке.\n"
"Выбираемые элементы в списке можно выбирать или отменять выбор, а также можно "
"включить множественный выбор. Выбор правой кнопкой мыши также может быть "
"включен, чтобы разрешить использование всплывающих контекстных меню. Элементы "
"также можно «активировать», дважды щелкнув их или нажав [kbd]Enter[/kbd].\n"
"Текст элемента поддерживает только однострочные строки. Символы новой строки "
"(например, [code]\\n[/code]) в строке не будут создавать новую строку. "
"Перенос текста включен в режиме [constant ICON_MODE_TOP], но ширина столбца "
"по умолчанию регулируется так, чтобы полностью соответствовать его "
"содержимому. Вам необходимо установить [member fixed_column_width] больше "
"нуля, чтобы перенести текст.\n"
"Все методы [code]set_*[/code] допускают отрицательные индексы элементов, т. "
"е. [code]-1[/code] для доступа к последнему элементу, [code]-2[/code] для "
"выбора предпоследнего элемента и т. д.\n"
"[b]Инкрементный поиск:[/b] Как и [PopupMenu] и [Tree], [ItemList] "
"поддерживает поиск в списке, пока элемент управления находится в фокусе. "
"Нажмите клавишу, которая совпадает с первой буквой имени элемента, чтобы "
"выбрать первый элемент, начинающийся с данной буквы. После этого есть два "
"способа выполнить инкрементный поиск: 1) Нажмите ту же клавишу еще раз до "
"истечения времени ожидания, чтобы выбрать следующий элемент, начинающийся с "
"той же буквы. 2) Нажмите клавиши с буквами, которые совпадают с оставшейся "
"частью слова до истечения времени ожидания, чтобы сопоставить, чтобы выбрать "
"нужный элемент напрямую. Оба эти действия будут сброшены к началу списка, "
"если время ожидания прошло с момента регистрации последнего нажатия клавиши. "
"Вы можете настроить длительность тайм-аута, изменив [member "
"ProjectSettings.gui/timers/incremental_search_max_interval_msec]."

msgid ""
"Adds an item to the item list with no text, only an icon. Returns the index "
"of an added item."
msgstr ""
"Добавляет элемент в список элементов без текста, только значок. Возвращает "
"индекс добавленного элемента."

msgid ""
"Adds an item to the item list with specified text. Returns the index of an "
"added item.\n"
"Specify an [param icon], or use [code]null[/code] as the [param icon] for a "
"list item with no icon.\n"
"If [param selectable] is [code]true[/code], the list item will be selectable."
msgstr ""
"Добавляет элемент в список элементов с указанным текстом. Возвращает индекс "
"добавленного элемента.\n"
"Укажите [param icon] или используйте [code]null[/code] в качестве [param "
"icon] для элемента списка без значка.\n"
"Если [param selectable] равен [code]true[/code], элемент списка будет "
"доступен для выбора."

msgid "Removes all items from the list."
msgstr "Удаляет все элементы из списка."

msgid "Ensures the item associated with the specified index is not selected."
msgstr ""
"Гарантирует, что элемент, связанный с указанным индексом, не будет выбран."

msgid "Ensures there are no items selected."
msgstr "Гарантирует, что не выбрано ни одного элемента."

msgid ""
"Ensure current selection is visible, adjusting the scroll position as "
"necessary."
msgstr ""
"Убедитесь, что текущий выбранный элемент виден, при необходимости "
"отрегулируйте положение прокрутки."

msgid ""
"Forces an update to the list size based on its items. This happens "
"automatically whenever size of the items, or other relevant settings like "
"[member auto_height], change. The method can be used to trigger the update "
"ahead of next drawing pass."
msgstr ""
"Принудительно обновляет размер списка на основе его элементов. Это происходит "
"автоматически, когда изменяется размер элементов или другие соответствующие "
"параметры, такие как [member auto_height]. Метод можно использовать для "
"запуска обновления перед следующим проходом отрисовки."

msgid ""
"Returns the horizontal scrollbar.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Возвращает горизонтальную полосу прокрутки.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member CanvasItem.visible]."

msgid ""
"Returns the item index at the given [param position].\n"
"When there is no item at that point, -1 will be returned if [param exact] is "
"[code]true[/code], and the closest item index will be returned otherwise.\n"
"[b]Note:[/b] The returned value is unreliable if called right after modifying "
"the [ItemList], before it redraws in the next frame."
msgstr ""
"Возвращает индекс элемента в указанной [param position].\n"
"Если в этой точке нет элемента, будет возвращено -1, если [param exact] равен "
"[code]true[/code], а в противном случае будет возвращен ближайший индекс "
"элемента.\n"
"[b]Примечание:[/b] Возвращаемое значение ненадежно, если вызывается сразу "
"после изменения [ItemList], до того, как он перерисуется в следующем кадре."

msgid "Returns item's auto translate mode."
msgstr "Возвращает режим автоматического перевода элемента."

msgid ""
"Returns the custom background color of the item specified by [param idx] "
"index."
msgstr ""
"Возвращает пользовательский цвет фона элемента, указанного индексом [param "
"idx]."

msgid ""
"Returns the custom foreground color of the item specified by [param idx] "
"index."
msgstr ""
"Возвращает пользовательский цвет переднего плана элемента, указанного "
"индексом [param idx]."

msgid "Returns the icon associated with the specified index."
msgstr "Возвращает значок, связанный с указанным индексом."

msgid "Returns a [Color] modulating item's icon at the specified index."
msgstr ""
"Возвращает [Color] значка, модулирующего элемента по указанному индексу."

msgid ""
"Returns the region of item's icon used. The whole icon will be used if the "
"region has no area."
msgstr ""
"Возвращает область используемой иконки элемента. Будет использована вся "
"иконка, если область не имеет области."

msgid "Returns item's text language code."
msgstr "Возвращает код языка текста элемента."

msgid "Returns the metadata value of the specified index."
msgstr "Возвращает значение метаданных указанного индекса."

msgid ""
"Returns the position and size of the item with the specified index, in the "
"coordinate system of the [ItemList] node. If [param expand] is [code]true[/"
"code] the last column expands to fill the rest of the row.\n"
"[b]Note:[/b] The returned value is unreliable if called right after modifying "
"the [ItemList], before it redraws in the next frame."
msgstr ""
"Возвращает положение и размер элемента с указанным индексом в системе "
"координат узла [ItemList]. Если [param expand] равен [code]true[/code], "
"последний столбец расширяется, чтобы заполнить оставшуюся часть строки.\n"
"[b]Примечание:[/b] Возвращаемое значение ненадежно, если вызывается сразу "
"после изменения [ItemList], до того, как он перерисуется в следующем кадре."

msgid "Returns the text associated with the specified index."
msgstr "Возвращает текст, связанный с указанным индексом."

msgid "Returns item's text base writing direction."
msgstr "Возвращает базовое направление написания текста элемента."

msgid "Returns the tooltip hint associated with the specified index."
msgstr "Возвращает подсказку, связанную с указанным индексом."

msgid "Returns an array with the indexes of the selected items."
msgstr "Возвращает массив с индексами выбранных элементов."

msgid ""
"Returns the vertical scrollbar.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Возвращает вертикальную полосу прокрутки.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member CanvasItem.visible]."

msgid "Returns [code]true[/code] if one or more items are selected."
msgstr "Возвращает [code]true[/code], если выбран один или несколько элементов."

msgid ""
"Returns [code]true[/code] if the item at the specified index is disabled."
msgstr ""
"Возвращает [code]true[/code], если элемент по указанному индексу отключен."

msgid ""
"Returns [code]true[/code] if the item icon will be drawn transposed, i.e. the "
"X and Y axes are swapped."
msgstr ""
"Возвращает [code]true[/code], если значок элемента будет отрисован "
"транспонированным, т. е. оси X и Y поменяются местами."

msgid ""
"Returns [code]true[/code] if the item at the specified index is selectable."
msgstr ""
"Возвращает [code]true[/code], если элемент по указанному индексу можно "
"выбрать."

msgid ""
"Returns [code]true[/code] if the tooltip is enabled for specified item index."
msgstr ""
"Возвращает [code]true[/code], если подсказка включена для указанного индекса "
"элемента."

msgid ""
"Returns [code]true[/code] if the item at the specified index is currently "
"selected."
msgstr ""
"Возвращает [code]true[/code], если элемент с указанным индексом в данный "
"момент выбран."

msgid "Moves item from index [param from_idx] to [param to_idx]."
msgstr "Перемещает элемент из индекса [param from_idx] в [param to_idx]."

msgid "Removes the item specified by [param idx] index from the list."
msgstr "Удаляет элемент, указанный индексом [param idx], из списка."

msgid ""
"Select the item at the specified index.\n"
"[b]Note:[/b] This method does not trigger the item selection signal."
msgstr ""
"Выберите элемент по указанному индексу.\n"
"[b]Примечание:[/b] Этот метод не запускает сигнал выбора элемента."

msgid ""
"Sets the auto translate mode of the item associated with the specified "
"index.\n"
"Items use [constant Node.AUTO_TRANSLATE_MODE_INHERIT] by default, which uses "
"the same auto translate mode as the [ItemList] itself."
msgstr ""
"Устанавливает режим автоматического перевода элемента, связанного с указанным "
"индексом.\n"
"Элементы используют [constant Node.AUTO_TRANSLATE_MODE_INHERIT] по умолчанию, "
"которая использует тот же режим автоматического перевода, что и сам "
"[ItemList]."

msgid ""
"Sets the background color of the item specified by [param idx] index to the "
"specified [Color]."
msgstr ""
"Устанавливает цвет фона элемента, указанного индексом [param idx], на "
"указанный [Color]."

msgid ""
"Sets the foreground color of the item specified by [param idx] index to the "
"specified [Color]."
msgstr ""
"Устанавливает цвет переднего плана элемента, указанного индексом [param idx], "
"на указанный [Color]."

msgid ""
"Disables (or enables) the item at the specified index.\n"
"Disabled items cannot be selected and do not trigger activation signals (when "
"double-clicking or pressing [kbd]Enter[/kbd])."
msgstr ""
"Отключает (или включает) элемент по указанному индексу.\n"
"Отключенные элементы не могут быть выбраны и не вызывают сигналы активации "
"(при двойном щелчке или нажатии [kbd]Enter[/kbd])."

msgid ""
"Sets (or replaces) the icon's [Texture2D] associated with the specified index."
msgstr ""
"Устанавливает (или заменяет) [Texture2D] значка, связанного с указанным "
"индексом."

msgid ""
"Sets a modulating [Color] of the item associated with the specified index."
msgstr ""
"Устанавливает модулирующий [Color] элемента, связанного с указанным индексом."

msgid ""
"Sets the region of item's icon used. The whole icon will be used if the "
"region has no area."
msgstr ""
"Устанавливает область используемой иконки элемента. Будет использоваться вся "
"иконка, если область не имеет области."

msgid "Sets whether the item icon will be drawn transposed."
msgstr "Устанавливает, будет ли значок элемента отображаться транспонированным."

msgid ""
"Sets language code of item's text used for line-breaking and text shaping "
"algorithms, if left empty current locale is used instead."
msgstr ""
"Устанавливает код языка текста элемента, используемый для алгоритмов переноса "
"строк и формирования текста, если оставить пустым, вместо него будет "
"использоваться текущая локаль."

msgid ""
"Sets a value (of any type) to be stored with the item associated with the "
"specified index."
msgstr ""
"Задает значение (любого типа), которое будет сохранено вместе с элементом, "
"связанным с указанным индексом."

msgid ""
"Allows or disallows selection of the item associated with the specified index."
msgstr ""
"Разрешает или запрещает выбор элемента, связанного с указанным индексом."

msgid "Sets text of the item associated with the specified index."
msgstr "Устанавливает текст элемента, связанного с указанным индексом."

msgid "Sets item's text base writing direction."
msgstr "Устанавливает базовое направление написания текста элемента."

msgid "Sets the tooltip hint for the item associated with the specified index."
msgstr "Устанавливает подсказку для элемента, связанного с указанным индексом."

msgid "Sets whether the tooltip hint is enabled for specified item index."
msgstr "Устанавливает, включена ли подсказка для указанного индекса элемента."

msgid "Sorts items in the list by their text."
msgstr "Сортирует элементы в списке по их тексту."

msgid "If [code]true[/code], the currently selected item can be selected again."
msgstr "Если [code]true[/code], текущий выбранный элемент можно выбрать снова."

msgid "If [code]true[/code], right mouse button click can select items."
msgstr ""
"Если [code]true[/code], щелчок правой кнопкой мыши может выбирать элементы."

msgid ""
"If [code]true[/code], allows navigating the [ItemList] with letter keys "
"through incremental search."
msgstr ""
"Если [code]true[/code], позволяет осуществлять навигацию по [ItemList] с "
"помощью буквенных клавиш посредством инкрементного поиска."

msgid ""
"If [code]true[/code], the control will automatically resize the height to fit "
"its content."
msgstr ""
"Если [code]true[/code], элемент управления автоматически изменит высоту в "
"соответствии со своим содержимым."

msgid ""
"If [code]true[/code], the control will automatically resize the width to fit "
"its content."
msgstr ""
"Если [code]true[/code], элемент управления автоматически изменит ширину в "
"соответствии со своим содержимым."

msgid ""
"The width all columns will be adjusted to.\n"
"A value of zero disables the adjustment, each item will have a width equal to "
"the width of its content and the columns will have an uneven width."
msgstr ""
"Ширина, к которой будут скорректированы все столбцы.\n"
"Значение ноль отключает корректировку, каждый элемент будет иметь ширину, "
"равную ширине его содержимого, а столбцы будут иметь неравномерную ширину."

msgid ""
"The size all icons will be adjusted to.\n"
"If either X or Y component is not greater than zero, icon size won't be "
"affected."
msgstr ""
"Размер всех значков будет скорректирован.\n"
"Если компонент X или Y не больше нуля, размер значка не будет затронут."

msgid ""
"The icon position, whether above or to the left of the text. See the [enum "
"IconMode] constants."
msgstr ""
"Положение значка, над текстом или слева от него. См. константы [enum "
"IconMode]."

msgid ""
"The scale of icon applied after [member fixed_icon_size] and transposing "
"takes effect."
msgstr ""
"Масштаб значка, примененный после [member fixed_icon_size] и "
"транспонирования, вступает в силу."

msgid "The number of items currently in the list."
msgstr "Количество элементов в списке на данный момент."

msgid ""
"Maximum columns the list will have.\n"
"If greater than zero, the content will be split among the specified columns.\n"
"A value of zero means unlimited columns, i.e. all items will be put in the "
"same row."
msgstr ""
"Максимальное количество столбцов в списке.\n"
"Если больше нуля, содержимое будет разделено между указанными столбцами.\n"
"Значение ноль означает неограниченное количество столбцов, т. е. все элементы "
"будут помещены в одну строку."

msgid ""
"Maximum lines of text allowed in each item. Space will be reserved even when "
"there is not enough lines of text to display.\n"
"[b]Note:[/b] This property takes effect only when [member icon_mode] is "
"[constant ICON_MODE_TOP]. To make the text wrap, [member fixed_column_width] "
"should be greater than zero."
msgstr ""
"Максимальное количество строк текста, разрешенное в каждом элементе. Место "
"будет зарезервировано, даже если строк текста недостаточно для отображения.\n"
"[b]Примечание:[/b] Это свойство вступает в силу только тогда, когда [member "
"icon_mode] равно [constant ICON_MODE_TOP]. Чтобы сделать перенос текста, "
"[member fixed_column_width] должно быть больше нуля."

msgid ""
"Whether all columns will have the same width.\n"
"If [code]true[/code], the width is equal to the largest column width of all "
"columns."
msgstr ""
"Будут ли все столбцы иметь одинаковую ширину.\n"
"Если [code]true[/code], ширина равна наибольшей ширине столбца из всех "
"столбцов."

msgid ""
"Allows single or multiple item selection. See the [enum SelectMode] constants."
msgstr ""
"Позволяет выбрать один или несколько элементов. См. константы [enum "
"SelectMode]."

msgid ""
"The clipping behavior when the text exceeds an item's bounding rectangle."
msgstr ""
"Поведение обрезки, когда текст выходит за пределы ограничивающего "
"прямоугольника элемента."

msgid ""
"If [code]true[/code], the control will automatically move items into a new "
"row to fit its content. See also [HFlowContainer] for this behavior.\n"
"If [code]false[/code], the control will add a horizontal scrollbar to make "
"all items visible."
msgstr ""
"Если [code]true[/code], элемент управления автоматически переместит элементы "
"в новую строку, чтобы соответствовать своему содержимому. См. также "
"[HFlowContainer] для этого поведения.\n"
"Если [code]false[/code], элемент управления добавит горизонтальную полосу "
"прокрутки, чтобы сделать все элементы видимыми."

msgid ""
"Emitted when any mouse click is issued within the rect of the list but on "
"empty space.\n"
"[param at_position] is the click position in this control's local coordinate "
"system."
msgstr ""
"Вызывается при любом щелчке мыши в пределах прямоугольника списка, но на "
"пустом месте.\n"
"[param at_position] — это позиция щелчка в локальной системе координат этого "
"элемента управления."

msgid ""
"Emitted when specified list item is activated via double-clicking or by "
"pressing [kbd]Enter[/kbd]."
msgstr ""
"Вызывается при активации указанного элемента списка двойным щелчком или "
"нажатием [kbd]Enter[/kbd]."

msgid ""
"Emitted when specified list item has been clicked with any mouse button.\n"
"[param at_position] is the click position in this control's local coordinate "
"system."
msgstr ""
"Вызывается при щелчке по указанному элементу списка любой кнопкой мыши.\n"
"[param at_position] — это позиция щелчка в локальной системе координат этого "
"элемента управления."

msgid ""
"Emitted when specified item has been selected. Only applicable in single "
"selection mode.\n"
"[member allow_reselect] must be enabled to reselect an item."
msgstr ""
"Выдается, когда выбран указанный элемент. Применимо только в режиме "
"одиночного выбора.\n"
"[member allow_reselect] должен быть включен для повторного выбора элемента."

msgid ""
"Emitted when a multiple selection is altered on a list allowing multiple "
"selection."
msgstr ""
"Генерируется при множественном выборе в списке, допускающем множественный "
"выбор."

msgid "Icon is drawn above the text."
msgstr "Значок рисуется над текстом."

msgid "Icon is drawn to the left of the text."
msgstr "Значок рисуется слева от текста."

msgid "Only allow selecting a single item."
msgstr "Разрешить выбор только одного элемента."

msgid ""
"Allows selecting multiple items by holding [kbd]Ctrl[/kbd] or [kbd]Shift[/"
"kbd]."
msgstr ""
"Позволяет выбрать несколько элементов, удерживая [kbd]Ctrl[/kbd] или "
"[kbd]Shift[/kbd]."

msgid "Allows selecting multiple items by toggling them on and off."
msgstr "Позволяет выбирать несколько элементов, включая и выключая их."

msgid "Default text [Color] of the item."
msgstr "[Color] текста элемента по умолчанию."

msgid "Text [Color] used when the item is hovered and not selected yet."
msgstr ""
"[Color] текста используемый, когда на элемент наведен курсор, но он еще не "
"выбран."

msgid "Text [Color] used when the item is hovered and selected."
msgstr ""
"[Color] текста, используемый при наведении указателя мыши на элемент и его "
"выборе."

msgid "The tint of text outline of the item."
msgstr "Оттенок текстового контура элемента."

msgid "Text [Color] used when the item is selected, but not hovered."
msgstr ""
"[Color] текста, используемый при выборе элемента, но без наведения курсора."

msgid ""
"[Color] of the guideline. The guideline is a line drawn between each row of "
"items."
msgstr ""
"[Color] направляющей линии. Направляющая линия — это линия, проведенная между "
"каждым рядом элементов."

msgid "The horizontal spacing between items."
msgstr "Горизонтальное расстояние между элементами."

msgid "The spacing between item's icon and text."
msgstr "Расстояние между значком элемента и текстом."

msgid "The vertical spacing between each line of text."
msgstr "Вертикальный интервал между строками текста."

msgid ""
"The size of the item text outline.\n"
"[b]Note:[/b] If using a font with [member "
"FontFile.multichannel_signed_distance_field] enabled, its [member "
"FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of "
"[theme_item outline_size] for outline rendering to look correct. Otherwise, "
"the outline may appear to be cut off earlier than intended."
msgstr ""
"Размер контура текста элемента.\n"
"[b]Примечание:[/b] При использовании шрифта с включенным [member "
"FontFile.multichannel_signed_distance_field] его [member "
"FontFile.msdf_pixel_range] должен быть установлен как минимум в [i]дважды[/i] "
"раза больше значения [theme_item outline_size], чтобы контур выглядел "
"правильно. В противном случае контур может оказаться обрезанным раньше, чем "
"предполагалось."

msgid "The vertical spacing between items."
msgstr "Вертикальное расстояние между элементами."

msgid "[Font] of the item's text."
msgstr "[Font] текста элемента."

msgid "Font size of the item's text."
msgstr "Размер шрифта текста элемента."

msgid "[StyleBox] used for the cursor, when the [ItemList] is being focused."
msgstr ""
"[StyleBox] используется для курсора, когда фокус находится на [ItemList]."

msgid ""
"[StyleBox] used for the cursor, when the [ItemList] is not being focused."
msgstr ""
"[StyleBox] используется для курсора, когда [ItemList] не находится в фокусе."

msgid ""
"The focused style for the [ItemList], drawn on top of the background, but "
"below everything else."
msgstr ""
"Стиль фокусировки для [ItemList], отрисовываемый поверх фона, но ниже всего "
"остального."

msgid "[StyleBox] for the hovered, but not selected items."
msgstr "[StyleBox] для наведенных, но не выбранных элементов."

msgid ""
"[StyleBox] for the hovered and selected items, used when the [ItemList] is "
"not being focused."
msgstr ""
"[StyleBox] для наведенных и выбранных элементов, используется, когда "
"[ItemList] не находится в фокусе."

msgid ""
"[StyleBox] for the hovered and selected items, used when the [ItemList] is "
"being focused."
msgstr ""
"[StyleBox] для наведения и выбора элементов, используется, когда фокус "
"находится на [ItemList]."

msgid "The background style for the [ItemList]."
msgstr "Стиль фона для [ItemList]."

msgid ""
"[StyleBox] for the selected items, used when the [ItemList] is not being "
"focused."
msgstr ""
"[StyleBox] для выбранных элементов, используется, когда [ItemList] не "
"находится в фокусе."

msgid ""
"[StyleBox] for the selected items, used when the [ItemList] is being focused."
msgstr ""
"[StyleBox] для выбранных элементов, используется, когда фокус находится на "
"[ItemList]."

msgid "Represents a class from the Java Native Interface."
msgstr "Представляет класс из Java Native Interface."

msgid ""
"Represents a class from the Java Native Interface. It is returned from "
"[method JavaClassWrapper.wrap].\n"
"[b]Note:[/b] This class only works on Android. On any other platform, this "
"class does nothing.\n"
"[b]Note:[/b] This class is not to be confused with [JavaScriptObject]."
msgstr ""
"Представляет класс из Java Native Interface. Возвращается из [method "
"JavaClassWrapper.wrap].\n"
"[b]Примечание:[/b] Этот класс работает только на Android. На любой другой "
"платформе этот класс ничего не делает.\n"
"[b]Примечание:[/b] Этот класс не следует путать с [JavaScriptObject]."

msgid "Returns the Java class name."
msgstr "Возвращает имя класса Java."

msgid ""
"Returns the object's Java methods and their signatures as an [Array] of "
"dictionaries, in the same format as [method Object.get_method_list]."
msgstr ""
"Возвращает методы Java объекта и их сигнатуры в виде [Array] словарей в том "
"же формате, что и [method Object.get_method_list]."

msgid "Returns a [JavaClass] representing the Java parent class of this class."
msgstr ""
"Возвращает [JavaClass], представляющий родительский класс Java данного класса."

msgid "Provides access to the Java Native Interface."
msgstr "Предоставляет доступ к собственному интерфейсу Java."

msgid ""
"The JavaClassWrapper singleton provides a way for the Godot application to "
"send and receive data through the [url=https://developer.android.com/training/"
"articles/perf-jni]Java Native Interface[/url] (JNI).\n"
"[b]Note:[/b] This singleton is only available in Android builds.\n"
"[codeblock]\n"
"var LocalDateTime = JavaClassWrapper.wrap(\"java.time.LocalDateTime\")\n"
"var DateTimeFormatter = "
"JavaClassWrapper.wrap(\"java.time.format.DateTimeFormatter\")\n"
"\n"
"var datetime = LocalDateTime.now()\n"
"var formatter = DateTimeFormatter.ofPattern(\"dd-MM-yyyy HH:mm:ss\")\n"
"\n"
"print(datetime.format(formatter))\n"
"[/codeblock]\n"
"[b]Warning:[/b] When calling Java methods, be sure to check [method "
"JavaClassWrapper.get_exception] to check if the method threw an exception."
msgstr ""
"Синглтон JavaClassWrapper предоставляет способ для приложения Godot "
"отправлять и получать данные через [url=https://developer.android.com/"
"training/articles/perf-jni]Java Native Interface[/url] (JNI).\n"
"[b]Примечание:[/b] Этот синглтон доступен только в сборках Android.\n"
"[codeblock]\n"
"var LocalDateTime = JavaClassWrapper.wrap(\"java.time.LocalDateTime\")\n"
"var DateTimeFormatter = "
"JavaClassWrapper.wrap(\"java.time.format.DateTimeFormatter\")\n"
"\n"
"var datetime = LocalDateTime.now()\n"
"var formatter = DateTimeFormatter.ofPattern(\"dd-MM-yyyy HH:mm:ss\")\n"
"\n"
"print(datetime.format(formatter))\n"
"[/codeblock]\n"
"[b]Предупреждение:[/b] При вызове методов Java обязательно проверьте [method "
"JavaClassWrapper.get_exception], чтобы проверить, не выдал ли метод "
"исключение."

msgid "Integrating with Android APIs"
msgstr "Интеграция с API Android"

msgid ""
"Returns the Java exception from the last call into a Java class. If there was "
"no exception, it will return [code]null[/code].\n"
"[b]Note:[/b] This method only works on Android. On every other platform, this "
"method will always return [code]null[/code]."
msgstr ""
"Возвращает исключение Java из последнего вызова Java класса. Если исключения "
"не было, то вернет [code]null[/code].\n"
"[b]Примечание:[/b] Этот метод работает только на Android. На любой другой "
"платформе этот метод всегда вернет [code]null[/code]."

msgid ""
"Wraps a class defined in Java, and returns it as a [JavaClass] [Object] type "
"that Godot can interact with.\n"
"When wrapping inner (nested) classes, use [code]$[/code] instead of [code].[/"
"code] to separate them. For example, "
"[code]JavaClassWrapper.wrap(\"android.view.WindowManager$LayoutParams\")[/"
"code] wraps the [b]WindowManager.LayoutParams[/b] class.\n"
"[b]Note:[/b] To invoke a constructor, call a method with the same name as the "
"class. For example:\n"
"[codeblock]\n"
"var Intent = JavaClassWrapper.wrap(\"android.content.Intent\")\n"
"var intent = Intent.Intent()\n"
"[/codeblock]\n"
"[b]Note:[/b] This method only works on Android. On every other platform, this "
"method does nothing and returns an empty [JavaClass]."
msgstr ""
"Оборачивает класс, определённый в Java, и возвращает его как тип [JavaClass] "
"[Object], с которым Godot может взаимодействовать.\n"
"При обёртке внутренних (вложенных) классов используйте [code]$[/code] вместо "
"[code].[/code] для их разделения. Например, "
"[code]JavaClassWrapper.wrap(\"android.view.WindowManager$LayoutParams\")[/"
"code] оборачивает класс [b]WindowManager.LayoutParams[/b].\n"
"[b]Примечание:[/b] Чтобы вызвать конструктор, вызовите метод с тем же именем, "
"что и у класса. Например:\n"
"[codeblock]\n"
"var Intent = JavaClassWrapper.wrap(\"android.content.Intent\")\n"
"var intent = Intent.Intent()\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Этот метод работает только на Android. На всех остальных "
"платформах он ничего не делает и возвращает пустой [JavaClass]."

msgid "Represents an object from the Java Native Interface."
msgstr "Представляет объект из Java Native Interface."

msgid ""
"Represents an object from the Java Native Interface. It can be returned from "
"Java methods called on [JavaClass] or other [JavaObject]s. See "
"[JavaClassWrapper] for an example.\n"
"[b]Note:[/b] This class only works on Android. On any other platform, this "
"class does nothing.\n"
"[b]Note:[/b] This class is not to be confused with [JavaScriptObject]."
msgstr ""
"Представляет объект из Java Native Interface. Он может быть возвращен из "
"методов Java, вызываемых в [JavaClass] или других [JavaObject]. См. пример в "
"[JavaClassWrapper].\n"
"[b]Примечание:[/b] Этот класс работает только на Android. На любой другой "
"платформе этот класс ничего не делает.\n"
"[b]Примечание:[/b] Этот класс не следует путать с [JavaScriptObject]."

msgid "Returns the [JavaClass] that this object is an instance of."
msgstr "Возвращает [JavaClass], экземпляром которого является данный объект."

msgid ""
"Singleton that connects the engine with the browser's JavaScript context in "
"Web export."
msgstr ""
"Синглтон, который связывает движок с контекстом JavaScript браузера при веб-"
"экспорте."

msgid ""
"The JavaScriptBridge singleton is implemented only in the Web export. It's "
"used to access the browser's JavaScript context. This allows interaction with "
"embedding pages or calling third-party JavaScript APIs.\n"
"[b]Note:[/b] This singleton can be disabled at build-time to improve "
"security. By default, the JavaScriptBridge singleton is enabled. Official "
"export templates also have the JavaScriptBridge singleton enabled. See "
"[url=$DOCS_URL/engine_details/development/compiling/"
"compiling_for_web.html]Compiling for the Web[/url] in the documentation for "
"more information."
msgstr ""
"Синглтон JavaScriptBridge реализован только в экспорте Web. Он используется "
"для доступа к контексту JavaScript браузера. Это позволяет взаимодействовать "
"со встроенными страницами или вызывать сторонние JavaScript API.\n"
"[b]Примечание:[/b] Этот синглтон можно отключить во время сборки для "
"повышения безопасности. По умолчанию синглтон JavaScriptBridge включён. В "
"официальных шаблонах экспорта синглтон JavaScriptBridge также включён. "
"Подробнее см. в разделе [url=$DOCS_URL/engine_details/development/compiling/"
"compiling_for_web.html]Компиляция для Web[/url] в документации."

msgid "Exporting for the Web: Calling JavaScript from script"
msgstr "Экспорт для Интернета: вызов JavaScript из скрипта"

msgid ""
"Creates a reference to a [Callable] that can be used as a callback by "
"JavaScript. The reference must be kept until the callback happens, or it "
"won't be called at all. See [JavaScriptObject] for usage.\n"
"[b]Note:[/b] The callback function must take exactly one [Array] argument, "
"which is going to be the JavaScript [url=https://developer.mozilla.org/en-US/"
"docs/Web/JavaScript/Reference/Functions/arguments]arguments object[/url] "
"converted to an array."
msgstr ""
"Создает ссылку на [Callable], которую можно использовать в качестве обратного "
"вызова JavaScript. Ссылка должна сохраняться до тех пор, пока не произойдет "
"обратный вызов, иначе она не будет вызвана вообще. См. [JavaScriptObject] для "
"использования.\n"
"[b]Примечание:[/b] Функция обратного вызова должна принимать ровно один "
"аргумент [Array], который будет объектом JavaScript [url=https://"
"developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/"
"arguments]arguments[/url], преобразованным в массив."

msgid ""
"Creates a new JavaScript object using the [code]new[/code] constructor. The "
"[param object] must a valid property of the JavaScript [code]window[/code]. "
"See [JavaScriptObject] for usage."
msgstr ""
"Создает новый объект JavaScript с помощью конструктора [code]new[/code]. "
"[param object] должен быть допустимым свойством JavaScript [code]window[/"
"code]. См. [JavaScriptObject] для использования."

msgid ""
"Prompts the user to download a file containing the specified [param buffer]. "
"The file will have the given [param name] and [param mime] type.\n"
"[b]Note:[/b] The browser may override the [url=https://en.wikipedia.org/wiki/"
"Media_type]MIME type[/url] provided based on the file [param name]'s "
"extension.\n"
"[b]Note:[/b] Browsers might block the download if [method download_buffer] is "
"not being called from a user interaction (e.g. button click).\n"
"[b]Note:[/b] Browsers might ask the user for permission or block the download "
"if multiple download requests are made in a quick succession."
msgstr ""
"Предлагает пользователю загрузить файл, содержащий указанный [param buffer]. "
"Файл будет иметь заданные [param name] и [param mime] тип.\n"
"[b]Примечание:[/b] Браузер может переопределить [url=https://en.wikipedia.org/"
"wiki/Media_type]MIME-тип[/url], предоставленный на основе расширения файла "
"[param name].\n"
"[b]Примечание:[/b] Браузеры могут блокировать загрузку, если [method "
"download_buffer] не вызывается из взаимодействия с пользователем (например, "
"нажатием кнопки).\n"
"[b]Примечание:[/b] Браузеры могут запрашивать у пользователя разрешение или "
"блокировать загрузку, если несколько запросов на загрузку выполняются в "
"быстрой последовательности."

msgid ""
"Execute the string [param code] as JavaScript code within the browser window. "
"This is a call to the actual global JavaScript function [code skip-lint]eval()"
"[/code].\n"
"If [param use_global_execution_context] is [code]true[/code], the code will "
"be evaluated in the global execution context. Otherwise, it is evaluated in "
"the execution context of a function within the engine's runtime environment."
msgstr ""
"Выполнить строку [param code] как код JavaScript в окне браузера. Это вызов "
"фактической глобальной функции JavaScript [code skip-lint]eval()[/code].\n"
"Если [param use_global_execution_context] равен [code]true[/code], код будет "
"оценен в глобальном контексте выполнения. В противном случае он оценен в "
"контексте выполнения функции в среде выполнения движка."

msgid ""
"Force synchronization of the persistent file system (when enabled).\n"
"[b]Note:[/b] This is only useful for modules or extensions that can't use "
"[FileAccess] to write files."
msgstr ""
"Принудительная синхронизация постоянной файловой системы (если включено).\n"
"[b]Примечание:[/b] Это полезно только для модулей или расширений, которые не "
"могут использовать [FileAccess] для записи файлов."

msgid ""
"Returns an interface to a JavaScript object that can be used by scripts. The "
"[param interface] must be a valid property of the JavaScript [code]window[/"
"code]. The callback must accept a single [Array] argument, which will contain "
"the JavaScript [code]arguments[/code]. See [JavaScriptObject] for usage."
msgstr ""
"Возвращает интерфейс к объекту JavaScript, который может использоваться "
"скриптами. [param interface] должен быть допустимым свойством [code] window[/"
"code] JavaScript. Обратный вызов должен принимать один аргумент [Array], "
"который будет содержать аргументы [code]arguments[/code]. См. "
"[JavaScriptObject] для использования."

msgid ""
"Returns [code]true[/code] if the given [param javascript_object] is of type "
"[url=https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/"
"Global_Objects/ArrayBuffer][code]ArrayBuffer[/code][/url], [url=https://"
"developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/"
"DataView][code]DataView[/code][/url], or one of the many [url=https://"
"developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/"
"TypedArray]typed array objects[/url]."
msgstr ""
"Возвращает [code]true[/code], если заданный [param javascript_object] имеет "
"тип [url=https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/"
"Global_Objects/ArrayBuffer][code]ArrayBuffer[/code][/url], [url=https://"
"developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/"
"DataView][code]DataView[/code][/url] или один из многих [url=https://"
"developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/"
"TypedArray]типизированных объектов массива[/url]."

msgid ""
"Returns a copy of [param javascript_buffer]'s contents as a "
"[PackedByteArray]. See also [method is_js_buffer]."
msgstr ""
"Возвращает копию содержимого [param javascript_buffer] в виде "
"[PackedByteArray]. См. также [method is_js_buffer]."

msgid ""
"Returns [code]true[/code] if a new version of the progressive web app is "
"waiting to be activated.\n"
"[b]Note:[/b] Only relevant when exported as a Progressive Web App."
msgstr ""
"Возвращает [code]true[/code], если новая версия прогрессивного веб-приложения "
"ожидает активации.\n"
"[b]Примечание:[/b] Актуально только при экспорте в качестве прогрессивного "
"веб-приложения."

msgid ""
"Performs the live update of the progressive web app. Forcing the new version "
"to be installed and the page to be reloaded.\n"
"[b]Note:[/b] Your application will be [b]reloaded in all browser tabs[/b].\n"
"[b]Note:[/b] Only relevant when exported as a Progressive Web App and [method "
"pwa_needs_update] returns [code]true[/code]."
msgstr ""
"Выполняет обновление прогрессивного веб-приложения в реальном времени. "
"Принудительно устанавливает новую версию и перезагружает страницу.\n"
"[b]Примечание:[/b] Ваше приложение будет [b]перезагружено во всех вкладках "
"браузера[/b].\n"
"[b]Примечание:[/b] Актуально только при экспорте в качестве прогрессивного "
"веб-приложения и [method pwa_needs_update] возвращает [code]true[/code]."

msgid ""
"Emitted when an update for this progressive web app has been detected but is "
"waiting to be activated because a previous version is active. See [method "
"pwa_update] to force the update to take place immediately."
msgstr ""
"Выдается, когда обнаружено обновление для этого прогрессивного веб-"
"приложения, но оно ожидает активации, поскольку активна предыдущая версия. "
"См. [method pwa_update], чтобы принудительно выполнить обновление немедленно."

msgid "A wrapper class for web native JavaScript objects."
msgstr "Класс-оболочка для веб-объектов JavaScript."

msgid ""
"JavaScriptObject is used to interact with JavaScript objects retrieved or "
"created via [method JavaScriptBridge.get_interface], [method "
"JavaScriptBridge.create_object], or [method "
"JavaScriptBridge.create_callback].\n"
"[codeblock]\n"
"extends Node\n"
"\n"
"var _my_js_callback = JavaScriptBridge.create_callback(myCallback) # This "
"reference must be kept\n"
"var console = JavaScriptBridge.get_interface(\"console\")\n"
"\n"
"func _init():\n"
"\tvar buf = JavaScriptBridge.create_object(\"ArrayBuffer\", 10) # new "
"ArrayBuffer(10)\n"
"\tprint(buf) # Prints [JavaScriptObject:OBJECT_ID]\n"
"\tvar uint8arr = JavaScriptBridge.create_object(\"Uint8Array\", buf) # new "
"Uint8Array(buf)\n"
"\tuint8arr[1] = 255\n"
"\tprints(uint8arr[1], uint8arr.byteLength) # Prints \"255 10\"\n"
"\n"
"\t# Prints \"Uint8Array(10) [ 0, 255, 0, 0, 0, 0, 0, 0, 0, 0 ]\" in the "
"browser's console.\n"
"\tconsole.log(uint8arr)\n"
"\n"
"\t# Equivalent of JavaScriptBridge: Array.from(uint8arr).forEach(myCallback)\n"
"\tJavaScriptBridge.get_interface(\"Array\").from(uint8arr).forEach(_my_js_callback)\n"
"\n"
"func myCallback(args):\n"
"\t# Will be called with the parameters passed to the \"forEach\" callback\n"
"\t# [0, 0, [JavaScriptObject:1173]]\n"
"\t# [255, 1, [JavaScriptObject:1173]]\n"
"\t# ...\n"
"\t# [0, 9, [JavaScriptObject:1180]]\n"
"\tprint(args)\n"
"[/codeblock]\n"
"[b]Note:[/b] Only available in the Web platform."
msgstr ""
"JavaScriptObject используется для взаимодействия с объектами JavaScript, "
"полученными или созданными с помощью [method JavaScriptBridge.get_interface], "
"[method JavaScriptBridge.create_object] или [method "
"JavaScriptBridge.create_callback].\n"
"[codeblock]\n"
"extends Node\n"
"\n"
"var _my_js_callback = JavaScriptBridge.create_callback(myCallback) # This "
"reference must be kept\n"
"var console = JavaScriptBridge.get_interface(\"console\")\n"
"\n"
"func _init():\n"
"\tvar buf = JavaScriptBridge.create_object(\"ArrayBuffer\", 10) # new "
"ArrayBuffer(10)\n"
"\tprint(buf) # Prints [JavaScriptObject:OBJECT_ID]\n"
"\tvar uint8arr = JavaScriptBridge.create_object(\"Uint8Array\", buf) # new "
"Uint8Array(buf)\n"
"\tuint8arr[1] = 255\n"
"\tprints(uint8arr[1], uint8arr.byteLength) # Prints \"255 10\"\n"
"\n"
"\t# Prints \"Uint8Array(10) [ 0, 255, 0, 0, 0, 0, 0, 0, 0, 0 ]\" в консоли "
"браузера.\n"
"\tconsole.log(uint8arr)\n"
"\n"
"\t#Эквивалент JavaScriptBridge: Array.from(uint8arr).forEach(myCallback)\n"
"\tJavaScriptBridge.get_interface(\"Array\").from(uint8arr).forEach(_my_js_callback)\n"
"\n"
"func myCallback(args):\n"
"\t# Будет вызван с параметрами, переданными в обратный вызов \"forEach\"\n"
"\t# [0, 0, [JavaScriptObject:1173]]\n"
"\t# [255, 1, [JavaScriptObject:1173]]\n"
"\t# ...\n"
"\t# [0, 9, [JavaScriptObject:1180]]\n"
"\tprint(args)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Доступно только на веб-платформе."

msgid ""
"Singleton that connects the engine with Android plugins to interface with "
"native Android code."
msgstr ""
"Синглтон, который связывает движок с плагинами Android для взаимодействия с "
"собственным кодом Android."

msgid ""
"The JNISingleton is implemented only in the Android export. It's used to call "
"methods and connect signals from an Android plugin written in Java or Kotlin. "
"Methods and signals can be called and connected to the JNISingleton as if it "
"is a Node. See [url=https://en.wikipedia.org/wiki/Java_Native_Interface]Java "
"Native Interface - Wikipedia[/url] for more information."
msgstr ""
"JNISingleton реализован только в экспорте Android. Он используется для вызова "
"методов и подключения сигналов из плагина Android, написанного на Java или "
"Kotlin. Методы и сигналы можно вызывать и подключать к JNISingleton, как если "
"бы это был Node. Для получения дополнительной информации см. [url=https://"
"en.wikipedia.org/wiki/Java_Native_Interface]Java Native Interface - "
"Wikipedia[/url]."

msgid "Creating Android plugins"
msgstr "Создание плагинов для ОС Android"

msgid "Abstract base class for all 2D physics joints."
msgstr "Абстрактный базовый класс для всех 2D физических суставов."

msgid ""
"Abstract base class for all joints in 2D physics. 2D joints bind together two "
"physics bodies ([member node_a] and [member node_b]) and apply a constraint."
msgstr ""
"Абстрактный базовый класс для всех суставов в 2D-физике. 2D-суставы связывают "
"вместе два физических тела ([member node_a] и [member node_b]) и применяют "
"ограничение."

msgid "Returns the joint's internal [RID] from the [PhysicsServer2D]."
msgstr "Возвращает внутренний [RID] сочленения из [PhysicsServer2D]."

msgid ""
"When [member node_a] and [member node_b] move in different directions the "
"[member bias] controls how fast the joint pulls them back to their original "
"position. The lower the [member bias] the more the two bodies can pull on the "
"joint.\n"
"When set to [code]0[/code], the default value from [member "
"ProjectSettings.physics/2d/solver/default_constraint_bias] is used."
msgstr ""
"Когда [member node_a] и [member node_b] движутся в разных направлениях, "
"[member bias] управляет тем, как быстро сочленение тянет их обратно в "
"исходное положение. Чем ниже [member bias], тем больше два тела могут тянуть "
"сочленение.\n"
"При установке [code]0[/code] используется значение по умолчанию из [member "
"ProjectSettings.physics/2d/solver/default_constraint_bias]."

msgid ""
"If [code]true[/code], the two bodies bound together do not collide with each "
"other."
msgstr ""
"Если [code]true[/code], два связанных вместе тела не сталкиваются друг с "
"другом."

msgid ""
"Path to the first body (A) attached to the joint. The node must inherit "
"[PhysicsBody2D]."
msgstr ""
"Путь к первому телу (A), прикрепленному к суставу. Узел должен наследовать "
"[PhysicsBody2D]."

msgid ""
"Path to the second body (B) attached to the joint. The node must inherit "
"[PhysicsBody2D]."
msgstr ""
"Путь ко второму телу (B), прикрепленному к суставу. Узел должен наследовать "
"[PhysicsBody2D]."

msgid "Abstract base class for all 3D physics joints."
msgstr "Абстрактный базовый класс для всех трехмерных физических суставов."

msgid ""
"Abstract base class for all joints in 3D physics. 3D joints bind together two "
"physics bodies ([member node_a] and [member node_b]) and apply a constraint. "
"If only one body is defined, it is attached to a fixed [StaticBody3D] without "
"collision shapes."
msgstr ""
"Абстрактный базовый класс для всех суставов в 3D-физике. 3D-суставы связывают "
"вместе два физических тела ([member node_a] и [member node_b]) и применяют "
"ограничение. Если определено только одно тело, оно прикрепляется к "
"фиксированному [StaticBody3D] без форм столкновений."

msgid "3D Truck Town Demo"
msgstr "3D Truck Town Демо"

msgid "Returns the joint's internal [RID] from the [PhysicsServer3D]."
msgstr "Возвращает внутренний [RID] сочленения из [PhysicsServer3D]."

msgid ""
"Path to the first node (A) attached to the joint. The node must inherit "
"[PhysicsBody3D].\n"
"If left empty and [member node_b] is set, the body is attached to a fixed "
"[StaticBody3D] without collision shapes."
msgstr ""
"Путь к первому узлу (A), прикрепленному к сочленению. Узел должен наследовать "
"[PhysicsBody3D].\n"
"Если оставить пустым и задать [member node_b], тело будет прикреплено к "
"фиксированному [StaticBody3D] без форм столкновений."

msgid ""
"Path to the second node (B) attached to the joint. The node must inherit "
"[PhysicsBody3D].\n"
"If left empty and [member node_a] is set, the body is attached to a fixed "
"[StaticBody3D] without collision shapes."
msgstr ""
"Путь ко второму узлу (B), прикрепленному к сочленению. Узел должен "
"наследовать [PhysicsBody3D].\n"
"Если оставить пустым и задать [member node_a], тело будет прикреплено к "
"фиксированному [StaticBody3D] без форм столкновений."

msgid ""
"The priority used to define which solver is executed first for multiple "
"joints. The lower the value, the higher the priority."
msgstr ""
"Приоритет, используемый для определения, какой решатель выполняется первым "
"для нескольких соединений. Чем ниже значение, тем выше приоритет."

msgid "Helper class for creating and parsing JSON data."
msgstr "Вспомогательный класс для создания и анализа данных JSON."

msgid ""
"The [JSON] class enables all data types to be converted to and from a JSON "
"string. This is useful for serializing data, e.g. to save to a file or send "
"over the network.\n"
"[method stringify] is used to convert any data type into a JSON string.\n"
"[method parse] is used to convert any existing JSON data into a [Variant] "
"that can be used within Godot. If successfully parsed, use [member data] to "
"retrieve the [Variant], and use [method @GlobalScope.typeof] to check if the "
"Variant's type is what you expect. JSON Objects are converted into a "
"[Dictionary], but JSON data can be used to store [Array]s, numbers, [String]s "
"and even just a boolean.\n"
"[codeblock]\n"
"var data_to_send = [\"a\", \"b\", \"c\"]\n"
"var json_string = JSON.stringify(data_to_send)\n"
"# Save data\n"
"# ...\n"
"# Retrieve data\n"
"var json = JSON.new()\n"
"var error = json.parse(json_string)\n"
"if error == OK:\n"
"\tvar data_received = json.data\n"
"\tif typeof(data_received) == TYPE_ARRAY:\n"
"\t\tprint(data_received) # Prints the array.\n"
"\telse:\n"
"\t\tprint(\"Unexpected data\")\n"
"else:\n"
"\tprint(\"JSON Parse Error: \", json.get_error_message(), \" in \", "
"json_string, \" at line \", json.get_error_line())\n"
"[/codeblock]\n"
"Alternatively, you can parse strings using the static [method parse_string] "
"method, but it doesn't handle errors.\n"
"[codeblock]\n"
"var data = JSON.parse_string(json_string) # Returns null if parsing failed.\n"
"[/codeblock]\n"
"[b]Note:[/b] Both parse methods do not fully comply with the JSON "
"specification:\n"
"- Trailing commas in arrays or objects are ignored, instead of causing a "
"parser error.\n"
"- New line and tab characters are accepted in string literals, and are "
"treated like their corresponding escape sequences [code]\\n[/code] and [code]"
"\\t[/code].\n"
"- Numbers are parsed using [method String.to_float] which is generally more "
"lax than the JSON specification.\n"
"- Certain errors, such as invalid Unicode sequences, do not cause a parser "
"error. Instead, the string is cleaned up and an error is logged to the "
"console."
msgstr ""
"Класс [JSON] позволяет преобразовывать все типы данных в строку JSON и из "
"нее. Это полезно для сериализации данных, например, для сохранения в файл или "
"отправки по сети.\n"
"[method stringify] используется для преобразования любого типа данных в "
"строку JSON.\n"
"[method parse] используется для преобразования любых существующих данных JSON "
"в [Variant], который может использоваться в Godot. В случае успешного анализа "
"используйте [member data] для извлечения [Variant] и используйте [method "
"@GlobalScope.typeof] для проверки того, соответствует ли тип Variant "
"ожидаемому. Объекты JSON преобразуются в [Dictionary], но данные JSON можно "
"использовать для хранения [Array], чисел, [String] и даже просто логического "
"значения.\n"
"[codeblock]\n"
"var data_to_send = [\"a\", \"b\", \"c\"]\n"
"var json_string = JSON.stringify(data_to_send)\n"
"# Сохранить данные\n"
"# ...\n"
"# Извлечь данные\n"
"var json = JSON.new()\n"
"var error = json.parse(json_string)\n"
"if error == OK:\n"
"\tvar data_received = json.data\n"
"\tif typeof(data_received) == TYPE_ARRAY:\n"
"\t\tprint(data_received) # Prints the array.\n"
"\telse:\n"
"\t\tprint(\"Unexpected data\")\n"
"else:\n"
"\tprint(\"JSON Parse Error: \", json.get_error_message(), \" in \", "
"json_string, \" at line \", json.get_error_line())\n"
"[/codeblock]\n"
"В качестве альтернативы можно анализировать строки с помощью статического "
"метода [method parse_string], но он не обрабатывает ошибки..\n"
"[codeblock]\n"
"var data = JSON.parse_string(json_string) # Возвращает null, если анализ не "
"удался.\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Оба метода анализа не полностью соответствуют спецификации "
"JSON:\n"
"- Завершающие запятые в массивах или объектах игнорируются, а не вызывают "
"ошибку синтаксического анализатора.\n"
"- Символы новой строки и табуляции принимаются в строковых литералах и "
"обрабатываются как соответствующие им escape-последовательности [code]\\n[/"
"code] и [code]\\t[/code].\n"
"- Числа анализируются с помощью [method String.to_float], который, как "
"правило, более свободен, чем спецификация JSON.\n"
"- Некоторые ошибки, такие как недопустимые последовательности Unicode, не "
"вызывают ошибку парсера. Вместо этого строка очищается, а ошибка "
"регистрируется в консоли."

msgid ""
"Converts a native engine type to a JSON-compliant value.\n"
"By default, objects are ignored for security reasons, unless [param "
"full_objects] is [code]true[/code].\n"
"You can convert a native value to a JSON string like this:\n"
"[codeblock]\n"
"func encode_data(value, full_objects = false):\n"
"\treturn JSON.stringify(JSON.from_native(value, full_objects))\n"
"[/codeblock]"
msgstr ""
"Преобразует собственный тип движка в значение, совместимое с JSON.\n"
"По умолчанию объекты игнорируются из соображений безопасности, если только "
"[param full_objects] не равен [code]true[/code].\n"
"Вы можете преобразовать собственное значение в строку JSON следующим "
"образом:\n"
"[codeblock]\n"
"func encode_data(value, full_objects = false):\n"
"return JSON.stringify(JSON.from_native(value, full_objects))\n"
"[/codeblock]"

msgid ""
"Returns [code]0[/code] if the last call to [method parse] was successful, or "
"the line number where the parse failed."
msgstr ""
"Возвращает [code]0[/code], если последний вызов [method parse] был успешным, "
"или номер строки, в которой анализ не удался."

msgid ""
"Returns an empty string if the last call to [method parse] was successful, or "
"the error message if it failed."
msgstr ""
"Возвращает пустую строку, если последний вызов [method parse] был успешным, "
"или сообщение об ошибке, если он не удался."

msgid ""
"Return the text parsed by [method parse] (requires passing [code]keep_text[/"
"code] to [method parse])."
msgstr ""
"Верните текст, проанализированный [method parse] (требуется передача "
"[code]keep_text[/code] в [method parse])."

msgid ""
"Attempts to parse the [param json_text] provided.\n"
"Returns an [enum Error]. If the parse was successful, it returns [constant "
"OK] and the result can be retrieved using [member data]. If unsuccessful, use "
"[method get_error_line] and [method get_error_message] to identify the source "
"of the failure.\n"
"Non-static variant of [method parse_string], if you want custom error "
"handling.\n"
"The optional [param keep_text] argument instructs the parser to keep a copy "
"of the original text. This text can be obtained later by using the [method "
"get_parsed_text] function and is used when saving the resource (instead of "
"generating new text from [member data])."
msgstr ""
"Пытается проанализировать предоставленный [param json_text].\n"
"Возвращает [enum Error]. Если анализ прошел успешно, возвращается [constant "
"OK], а результат можно получить с помощью [member data]. Если не удалось, "
"используйте [method get_error_line] и [method get_error_message], чтобы "
"определить источник сбоя.\n"
"Нестатический вариант [method parse_string], если вам нужна пользовательская "
"обработка ошибок.\n"
"Необязательный аргумент [param keep_text] указывает парсеру сохранить копию "
"исходного текста. Этот текст можно получить позже с помощью функции [method "
"get_parsed_text] и использовать при сохранении ресурса (вместо генерации "
"нового текста из [member data])."

msgid ""
"Attempts to parse the [param json_string] provided and returns the parsed "
"data. Returns [code]null[/code] if parse failed."
msgstr ""
"Пытается проанализировать предоставленный [param json_string] и возвращает "
"проанализированные данные. Возвращает [code]null[/code], если анализ не "
"удался."

msgid ""
"Converts a [Variant] var to JSON text and returns the result. Useful for "
"serializing data to store or send over the network.\n"
"[b]Note:[/b] The JSON specification does not define integer or float types, "
"but only a [i]number[/i] type. Therefore, converting a Variant to JSON text "
"will convert all numerical values to [float] types.\n"
"[b]Note:[/b] If [param full_precision] is [code]true[/code], when "
"stringifying floats, the unreliable digits are stringified in addition to the "
"reliable digits to guarantee exact decoding.\n"
"The [param indent] parameter controls if and how something is indented; its "
"contents will be used where there should be an indent in the output. Even "
"spaces like [code]\"   \"[/code] will work. [code]\\t[/code] and [code]\\n[/"
"code] can also be used for a tab indent, or to make a newline for each indent "
"respectively.\n"
"[b]Example output:[/b]\n"
"[codeblock]\n"
"## JSON.stringify(my_dictionary)\n"
"{\"name\":\"my_dictionary\",\"version\":\"1.0.0\",\"entities\":[{\"name\":"
"\"entity_0\",\"value\":\"value_0\"},{\"name\":\"entity_1\",\"value\":"
"\"value_1\"}]}\n"
"\n"
"## JSON.stringify(my_dictionary, \"\\t\")\n"
"{\n"
"\t\"name\": \"my_dictionary\",\n"
"\t\"version\": \"1.0.0\",\n"
"\t\"entities\": [\n"
"\t\t{\n"
"\t\t\t\"name\": \"entity_0\",\n"
"\t\t\t\"value\": \"value_0\"\n"
"\t\t},\n"
"\t\t{\n"
"\t\t\t\"name\": \"entity_1\",\n"
"\t\t\t\"value\": \"value_1\"\n"
"\t\t}\n"
"\t]\n"
"}\n"
"\n"
"## JSON.stringify(my_dictionary, \"...\")\n"
"{\n"
"...\"name\": \"my_dictionary\",\n"
"...\"version\": \"1.0.0\",\n"
"...\"entities\": [\n"
"......{\n"
".........\"name\": \"entity_0\",\n"
".........\"value\": \"value_0\"\n"
"......},\n"
"......{\n"
".........\"name\": \"entity_1\",\n"
".........\"value\": \"value_1\"\n"
"......}\n"
"...]\n"
"}\n"
"[/codeblock]"
msgstr ""
"Преобразует [Variant] var в текст JSON и возвращает результат. Полезно для "
"сериализации данных для хранения или отправки по сети.\n"
"[b]Примечание:[/b] Спецификация JSON не определяет целочисленные или "
"плавающие типы, а только тип [i]number[/i]. Поэтому преобразование Variant в "
"текст JSON преобразует все числовые значения в типы [float].\n"
"[b]Примечание:[/b] Если [param full_precision] равен [code]true[/code], при "
"преобразовании чисел с плавающей точкой в строку ненадежные цифры "
"преобразуются в строку в дополнение к надежным цифрам, чтобы гарантировать "
"точное декодирование.\n"
"Параметр [param indent] контролирует, будет ли что-то отступать и как; его "
"содержимое будет использоваться там, где должен быть отступ в выводе. Даже "
"пробелы, такие как [code]\" \"[/code] будут работать. [code]\\t[/code] и "
"[code]\\n[/code] также могут использоваться для отступа табуляции или для "
"создания новой строки для каждого отступа соответственно.\n"
"[b]Пример вывода:[/b]\n"
"[codeblock]\n"
"## JSON.stringify(my_dictionary)\n"
"{\"name\":\"my_dictionary\",\"version\":\"1.0.0\",\"entities\":[{\"name\":"
"\"entity_0\",\"value\":\"value_0\"},{\"name\":\"entity_1\",\"value\":"
"\"value_1\"}]}\n"
"\n"
"## JSON.stringify(my_dictionary, \"\\t\")\n"
"{\n"
"\t\"name\": \"my_dictionary\",\n"
"\t\"version\": \"1.0.0\",\n"
"\t\"entities\": [\n"
"\t\t{\n"
"\t\t\t\"name\": \"entity_0\",\n"
"\t\t\t\"value\": \"value_0\"\n"
"\t\t},\n"
"\t\t{\n"
"\t\t\t\"name\": \"entity_1\",\n"
"\t\t\t\"value\": \"value_1\"\n"
"\t\t}\n"
"\t]\n"
"}\n"
"\n"
"## JSON.stringify(my_dictionary, \"...\")\n"
"{\n"
"...\"name\": \"my_dictionary\",\n"
"...\"version\": \"1.0.0\",\n"
"...\"entities\": [\n"
"......{\n"
".........\"name\": \"entity_0\",\n"
".........\"value\": \"value_0\"\n"
"......},\n"
"......{\n"
".........\"name\": \"entity_1\",\n"
".........\"value\": \"value_1\"\n"
"......}\n"
"...]\n"
"}\n"
"[/codeblock]"

msgid ""
"Converts a JSON-compliant value that was created with [method from_native] "
"back to native engine types.\n"
"By default, objects are ignored for security reasons, unless [param "
"allow_objects] is [code]true[/code].\n"
"You can convert a JSON string back to a native value like this:\n"
"[codeblock]\n"
"func decode_data(string, allow_objects = false):\n"
"\treturn JSON.to_native(JSON.parse_string(string), allow_objects)\n"
"[/codeblock]"
msgstr ""
"Преобразует JSON-совместимое значение, созданное с помощью [method "
"from_native], обратно в собственные типы движка.\n"
"По умолчанию объекты игнорируются из соображений безопасности, если только "
"[param allow_objects] не равен [code]true[/code].\n"
"Вы можете преобразовать строку JSON обратно в собственное значение следующим "
"образом:\n"
"[codeblock]\n"
"func decode_data(string, allow_objects = false):\n"
"\treturn JSON.to_native(JSON.parse_string(string), allow_objects)\n"
"[/codeblock]"

msgid "Contains the parsed JSON data in [Variant] form."
msgstr "Содержит проанализированные данные JSON в форме [Variant]."

msgid "A helper to handle dictionaries which look like JSONRPC documents."
msgstr ""
"Помощник для работы со словарями, которые выглядят как документы JSONRPC."

msgid ""
"[url=https://www.jsonrpc.org/]JSON-RPC[/url] is a standard which wraps a "
"method call in a [JSON] object. The object has a particular structure and "
"identifies which method is called, the parameters to that function, and "
"carries an ID to keep track of responses. This class implements that standard "
"on top of [Dictionary]; you will have to convert between a [Dictionary] and "
"[JSON] with other functions."
msgstr ""
"[url=https://www.jsonrpc.org/]JSON-RPC[/url] — это стандарт, который "
"оборачивает вызов метода в объект [JSON]. Объект имеет определенную структуру "
"и определяет, какой метод вызывается, параметры этой функции и несет "
"идентификатор для отслеживания ответов. Этот класс реализует этот стандарт "
"поверх [Dictionary]; вам придется преобразовывать между [Dictionary] и [JSON] "
"с помощью других функций."

msgid ""
"Returns a dictionary in the form of a JSON-RPC notification. Notifications "
"are one-shot messages which do not expect a response.\n"
"- [param method]: Name of the method being called.\n"
"- [param params]: An array or dictionary of parameters being passed to the "
"method."
msgstr ""
"Возвращает словарь в форме уведомления JSON-RPC. Уведомления — это "
"одноразовые сообщения, не ожидающие ответа.\n"
"- [param method]: Имя вызываемого метода.\n"
"- [param params]: Массив или словарь параметров, передаваемых методу."

msgid ""
"Returns a dictionary in the form of a JSON-RPC request. Requests are sent to "
"a server with the expectation of a response. The ID field is used for the "
"server to specify which exact request it is responding to.\n"
"- [param method]: Name of the method being called.\n"
"- [param params]: An array or dictionary of parameters being passed to the "
"method.\n"
"- [param id]: Uniquely identifies this request. The server is expected to "
"send a response with the same ID."
msgstr ""
"Возвращает словарь в форме запроса JSON-RPC. Запросы отправляются на сервер с "
"ожиданием ответа. Поле ID используется сервером для указания, на какой именно "
"запрос он отвечает.\n"
"- [param method]: Имя вызываемого метода.\n"
"- [param params]: Массив или словарь параметров, передаваемых методу.\n"
"- [param id]: Уникально идентифицирует этот запрос. Ожидается, что сервер "
"отправит ответ с тем же ID."

msgid ""
"When a server has received and processed a request, it is expected to send a "
"response. If you did not want a response then you need to have sent a "
"Notification instead.\n"
"- [param result]: The return value of the function which was called.\n"
"- [param id]: The ID of the request this response is targeted to."
msgstr ""
"Когда сервер получил и обработал запрос, ожидается отправка ответа. Если вы "
"не хотели ответа, то вместо этого вам нужно было отправить уведомление.\n"
"- [param result]: возвращаемое значение вызванной функции.\n"
"- [param id]: идентификатор запроса, на который нацелен этот ответ."

msgid ""
"Creates a response which indicates a previous reply has failed in some way.\n"
"- [param code]: The error code corresponding to what kind of error this is. "
"See the [enum ErrorCode] constants.\n"
"- [param message]: A custom message about this error.\n"
"- [param id]: The request this error is a response to."
msgstr ""
"Создает ответ, который указывает, что предыдущий ответ по какой-то причине не "
"удался.\n"
"- [param code]: Код ошибки, соответствующий типу ошибки. См. константы [enum "
"ErrorCode].\n"
"- [param message]: Пользовательское сообщение об этой ошибке.\n"
"- [param id]: Запрос, на который эта ошибка является ответом."

msgid ""
"Given a Dictionary which takes the form of a JSON-RPC request: unpack the "
"request and run it. Methods are resolved by looking at the field called "
"\"method\" and looking for an equivalently named function in the JSONRPC "
"object. If one is found that method is called.\n"
"To add new supported methods extend the JSONRPC class and call [method "
"process_action] on your subclass.\n"
"[param action]: The action to be run, as a Dictionary in the form of a JSON-"
"RPC request or notification."
msgstr ""
"Дан словарь, который принимает форму запроса JSON-RPC: распакуйте запрос и "
"запустите его. Методы разрешаются путем просмотра поля с именем «method» и "
"поиска эквивалентно названной функции в объекте JSONRPC. Если она найдена, "
"этот метод вызывается.\n"
"Чтобы добавить новые поддерживаемые методы, расширьте класс JSONRPC и "
"вызовите [method process_action] в вашем подклассе.\n"
"[param action]: действие, которое должно быть запущено, как словарь в форме "
"запроса или уведомления JSON-RPC."

msgid ""
"Registers a callback for the given method name.\n"
"- [param name] The name that clients can use to access the callback.\n"
"- [param callback] The callback which will handle the specific method."
msgstr ""
"Регистрирует обратный вызов для данного имени метода.\n"
"- [param name] Имя, которое клиенты могут использовать для доступа к "
"обратному обращению.\n"
"- [param callback] Обратный вызов, который будет обрабатывать конкретный "
"метод."

msgid ""
"The request could not be parsed as it was not valid by JSON standard ([method "
"JSON.parse] failed)."
msgstr ""
"Запрос не может быть проанализирован, так как он не соответствует стандарту "
"JSON ([method JSON.parse] не выполнен)."

msgid "A method call was requested but the request's format is not valid."
msgstr "Был запрошен вызов метода, но формат запроса недопустим."

msgid ""
"A method call was requested but no function of that name existed in the "
"JSONRPC subclass."
msgstr ""
"Был запрошен вызов метода, но в подклассе JSONRPC не существует функции с "
"таким именем."

msgid ""
"A method call was requested but the given method parameters are not valid. "
"Not used by the built-in JSONRPC."
msgstr ""
"Вызов метода был запрошен, но заданные параметры метода недействительны. Не "
"используется встроенным JSONRPC."

msgid ""
"An internal error occurred while processing the request. Not used by the "
"built-in JSONRPC."
msgstr ""
"Произошла внутренняя ошибка при обработке запроса. Не используется встроенным "
"JSONRPC."

msgid "Holds collision data from the movement of a [PhysicsBody2D]."
msgstr "Содержит данные о столкновениях при движении [PhysicsBody2D]."

msgid ""
"Holds collision data from the movement of a [PhysicsBody2D], usually from "
"[method PhysicsBody2D.move_and_collide]. When a [PhysicsBody2D] is moved, it "
"stops if it detects a collision with another body. If a collision is "
"detected, a [KinematicCollision2D] object is returned.\n"
"The collision data includes the colliding object, the remaining motion, and "
"the collision position. This data can be used to determine a custom response "
"to the collision."
msgstr ""
"Содержит данные о столкновении из движения [PhysicsBody2D], обычно из [method "
"PhysicsBody2D.move_and_collide]. Когда [PhysicsBody2D] перемещается, он "
"останавливается, если обнаруживает столкновение с другим телом. Если "
"столкновение обнаружено, возвращается объект [KinematicCollision2D]. \n"
"Данные о столкновении включают в себя сталкивающийся объект, оставшееся "
"движение и положение столкновения. Эти данные можно использовать для "
"определения пользовательского ответа на столкновение."

msgid ""
"Returns the collision angle according to [param up_direction], which is "
"[constant Vector2.UP] by default. This value is always positive."
msgstr ""
"Возвращает угол столкновения в соответствии с [param up_direction], который "
"по умолчанию равен [constant Vector2.UP]. Это значение всегда положительно."

msgid "Returns the colliding body's attached [Object]."
msgstr "Возвращает прикрепленный [Object] сталкивающегося тела."

msgid ""
"Returns the unique instance ID of the colliding body's attached [Object]. See "
"[method Object.get_instance_id]."
msgstr ""
"Возвращает уникальный идентификатор экземпляра прикрепленного [Object] "
"сталкивающегося тела. См. [method Object.get_instance_id]."

msgid "Returns the colliding body's [RID] used by the [PhysicsServer2D]."
msgstr "Возвращает [RID] сталкивающегося тела, используемый [PhysicsServer2D]."

msgid "Returns the colliding body's shape."
msgstr "Возвращает форму сталкивающегося тела."

msgid "Returns the colliding body's shape index. See [CollisionObject2D]."
msgstr "Возвращает индекс формы сталкивающегося тела. См. [CollisionObject2D]."

msgid "Returns the colliding body's velocity."
msgstr "Возвращает скорость сталкивающегося тела."

msgid ""
"Returns the colliding body's length of overlap along the collision normal."
msgstr ""
"Возвращает длину перекрытия сталкивающегося тела вдоль нормали столкновения."

msgid "Returns the moving object's colliding shape."
msgstr "Возвращает форму столкновения движущегося объекта."

msgid "Returns the colliding body's shape's normal at the point of collision."
msgstr "Возвращает нормаль формы сталкивающегося тела в точке столкновения."

msgid "Returns the point of collision in global coordinates."
msgstr "Возвращает точку столкновения в глобальных координатах."

msgid "Returns the moving object's remaining movement vector."
msgstr "Возвращает оставшийся вектор движения движущегося объекта."

msgid "Returns the moving object's travel before collision."
msgstr "Возвращает путь движущегося объекта до столкновения."

msgid "Holds collision data from the movement of a [PhysicsBody3D]."
msgstr "Содержит данные о столкновениях при движении [PhysicsBody3D]."

msgid ""
"Holds collision data from the movement of a [PhysicsBody3D], usually from "
"[method PhysicsBody3D.move_and_collide]. When a [PhysicsBody3D] is moved, it "
"stops if it detects a collision with another body. If a collision is "
"detected, a [KinematicCollision3D] object is returned.\n"
"The collision data includes the colliding object, the remaining motion, and "
"the collision position. This data can be used to determine a custom response "
"to the collision."
msgstr ""
"Содержит данные о столкновении из движения [PhysicsBody3D], обычно из [method "
"PhysicsBody3D.move_and_collide]. Когда [PhysicsBody3D] перемещается, он "
"останавливается, если обнаруживает столкновение с другим телом. Если "
"столкновение обнаружено, возвращается объект [KinematicCollision3D]. \n"
"Данные о столкновении включают в себя сталкивающийся объект, оставшееся "
"движение и позицию столкновения. Эти данные можно использовать для "
"определения пользовательского ответа на столкновение."

msgid ""
"Returns the collision angle according to [param up_direction], which is "
"[constant Vector3.UP] by default. This value is always positive."
msgstr ""
"Возвращает угол столкновения в соответствии с [param up_direction], который "
"по умолчанию равен [constant Vector3.UP]. Это значение всегда положительно."

msgid ""
"Returns the colliding body's attached [Object] given a collision index (the "
"deepest collision by default)."
msgstr ""
"Возвращает прикрепленный к сталкивающемуся телу [Object] с учетом индекса "
"столкновения (по умолчанию — самое глубокое столкновение)."

msgid ""
"Returns the unique instance ID of the colliding body's attached [Object] "
"given a collision index (the deepest collision by default). See [method "
"Object.get_instance_id]."
msgstr ""
"Возвращает уникальный идентификатор экземпляра [Object], прикрепленного к "
"сталкивающемуся телу, с учетом индекса столкновения (по умолчанию — самое "
"глубокое столкновение). См. [method Object.get_instance_id]."

msgid ""
"Returns the colliding body's [RID] used by the [PhysicsServer3D] given a "
"collision index (the deepest collision by default)."
msgstr ""
"Возвращает [RID] сталкивающегося тела, используемый [PhysicsServer3D], с "
"учетом индекса столкновения (по умолчанию — самое глубокое столкновение)."

msgid ""
"Returns the colliding body's shape given a collision index (the deepest "
"collision by default)."
msgstr ""
"Возвращает форму сталкивающегося тела с учетом индекса столкновения (по "
"умолчанию — самое глубокое столкновение)."

msgid ""
"Returns the colliding body's shape index given a collision index (the deepest "
"collision by default). See [CollisionObject3D]."
msgstr ""
"Возвращает индекс формы сталкивающегося тела, заданный индексом столкновения "
"(по умолчанию — самое глубокое столкновение). См. [CollisionObject3D]."

msgid ""
"Returns the colliding body's velocity given a collision index (the deepest "
"collision by default)."
msgstr ""
"Возвращает скорость сталкивающегося тела по индексу столкновения (по "
"умолчанию — самое глубокое столкновение)."

msgid "Returns the number of detected collisions."
msgstr "Возвращает количество обнаруженных столкновений."

msgid ""
"Returns the moving object's colliding shape given a collision index (the "
"deepest collision by default)."
msgstr ""
"Возвращает форму столкновения движущегося объекта с учетом индекса "
"столкновения (по умолчанию — самое глубокое столкновение)."

msgid ""
"Returns the colliding body's shape's normal at the point of collision given a "
"collision index (the deepest collision by default)."
msgstr ""
"Возвращает нормаль формы сталкивающегося тела в точке столкновения с учетом "
"индекса столкновения (по умолчанию — самое глубокое столкновение)."

msgid ""
"Returns the point of collision in global coordinates given a collision index "
"(the deepest collision by default)."
msgstr ""
"Возвращает точку столкновения в глобальных координатах с учетом индекса "
"столкновения (по умолчанию — самое глубокое столкновение)."

msgid "A control for displaying plain text."
msgstr "Элемент управления для отображения простого текста."

msgid ""
"A control for displaying plain text. It gives you control over the horizontal "
"and vertical alignment and can wrap the text inside the node's bounding "
"rectangle. It doesn't support bold, italics, or other rich text formatting. "
"For that, use [RichTextLabel] instead."
msgstr ""
"Элемент управления для отображения простого текста. Он дает вам контроль над "
"горизонтальным и вертикальным выравниванием и может обтекать текст внутри "
"ограничивающего прямоугольника узла. Он не поддерживает полужирный шрифт, "
"курсив или другое расширенное форматирование текста. Для этого используйте "
"[RichTextLabel]."

msgid ""
"Returns the bounding rectangle of the character at position [param pos] in "
"the label's local coordinate system. If the character is a non-visual "
"character or [param pos] is outside the valid range, an empty [Rect2] is "
"returned. If the character is a part of a composite grapheme, the bounding "
"rectangle of the whole grapheme is returned."
msgstr ""
"Возвращает ограничивающий прямоугольник символа в позиции [param pos] в "
"локальной системе координат метки. Если символ является невизуальным символом "
"или [param pos] находится за пределами допустимого диапазона, возвращается "
"пустой [Rect2]. Если символ является частью составной графемы, возвращается "
"ограничивающий прямоугольник всей графемы."

msgid "Returns the number of lines of text the Label has."
msgstr "Возвращает количество строк текста в метке."

msgid ""
"Returns the height of the line [param line].\n"
"If [param line] is set to [code]-1[/code], returns the biggest line height.\n"
"If there are no lines, returns font size in pixels."
msgstr ""
"Возвращает высоту строки [param line].\n"
"Если [param line] установлен в [code]-1[/code], возвращает наибольшую высоту "
"строки.\n"
"Если строк нет, возвращает размер шрифта в пикселях."

msgid ""
"Returns the total number of printable characters in the text (excluding "
"spaces and newlines)."
msgstr ""
"Возвращает общее количество печатных символов в тексте (без учета пробелов и "
"символов новой строки)."

msgid ""
"Returns the number of lines shown. Useful if the [Label]'s height cannot "
"currently display all lines."
msgstr ""
"Возвращает количество показанных строк. Полезно, если высота [Label]-ов в "
"данный момент не может отображать все строки."

msgid ""
"If set to something other than [constant TextServer.AUTOWRAP_OFF], the text "
"gets wrapped inside the node's bounding rectangle. If you resize the node, it "
"will change its height automatically to show all the text."
msgstr ""
"Если установлено значение, отличное от [constant TextServer.AUTOWRAP_OFF], "
"текст будет заключен в ограничивающий прямоугольник узла. Если изменить "
"размер узла, он автоматически изменит свою высоту, чтобы показать весь текст."

msgid ""
"If [code]true[/code], the Label only shows the text that fits inside its "
"bounding rectangle and will clip text horizontally."
msgstr ""
"Если [code]true[/code], метка отображает только тот текст, который помещается "
"внутри ее ограничивающего прямоугольника, и обрезает текст по горизонтали."

msgid "Ellipsis character used for text clipping."
msgstr "Символ многоточия, используемый для обрезки текста."

msgid ""
"Controls the text's horizontal alignment. Supports left, center, right, and "
"fill (also known as justify)."
msgstr ""
"Управляет горизонтальным выравниванием текста. Поддерживает выравнивание по "
"левому краю, по центру, по правому краю и заполнение (также известное как "
"выравнивание по ширине)."

msgid "Line fill alignment rules."
msgstr "Правила выравнивания заливки линий."

msgid ""
"A [LabelSettings] resource that can be shared between multiple [Label] nodes. "
"Takes priority over theme properties."
msgstr ""
"Ресурс [LabelSettings], который может быть общим для нескольких узлов "
"[Label]. Имеет приоритет над свойствами темы."

msgid ""
"The number of the lines ignored and not displayed from the start of the "
"[member text] value."
msgstr ""
"Количество проигнорированных и неотображаемых строк с начала значения [member "
"text]."

msgid "Limits the lines of text the node shows on screen."
msgstr "Ограничивает количество строк текста, отображаемых узлом на экране."

msgid ""
"String used as a paragraph separator. Each paragraph is processed "
"independently, in its own BiDi context."
msgstr ""
"Строка, используемая как разделитель абзацев. Каждый абзац обрабатывается "
"независимо, в своем собственном контексте BiDi."

msgid "Set BiDi algorithm override for the structured text."
msgstr ""
"Установите переопределение алгоритма BiDi для структурированного текста."

msgid "Set additional options for BiDi override."
msgstr "Установите дополнительные параметры для переопределения BiDi."

msgid "Aligns text to the given tab-stops."
msgstr "Выравнивает текст по указанным позициям табуляции."

msgid "The text to display on screen."
msgstr "Текст для отображения на экране."

msgid ""
"The clipping behavior when the text exceeds the node's bounding rectangle."
msgstr ""
"Поведение обрезки, когда текст выходит за пределы ограничивающего "
"прямоугольника узла."

msgid "If [code]true[/code], all the text displays as UPPERCASE."
msgstr "Если [code]true[/code], весь текст отображается в ЗАГЛАВНОМ регистре."

msgid ""
"Controls the text's vertical alignment. Supports top, center, bottom, and "
"fill."
msgstr ""
"Управляет вертикальным выравниванием текста. Поддерживает верх, центр, низ и "
"заполнение."

msgid ""
"The number of characters to display. If set to [code]-1[/code], all "
"characters are displayed. This can be useful when animating the text "
"appearing in a dialog box.\n"
"[b]Note:[/b] Setting this property updates [member visible_ratio] "
"accordingly.\n"
"[b]Note:[/b] Characters are counted as Unicode codepoints. A single visible "
"grapheme may contain multiple codepoints (e.g. certain emoji use three "
"codepoints). A single codepoint may contain two UTF-16 characters, which are "
"used in C# strings."
msgstr ""
"Количество отображаемых символов. Если задано значение [code]-1[/code], "
"отображаются все символы. Это может быть полезно при анимации текста, "
"появляющегося в диалоговом окне.\n"
"[b]Примечание:[/b] Установка этого свойства соответствующим образом обновляет "
"[member visible_ratio].\n"
"[b]Примечание:[/b] Символы считаются кодовыми точками Unicode. Одна видимая "
"графема может содержать несколько кодовых точек (например, некоторые эмодзи "
"используют три кодовые точки). Одна кодовая точка может содержать два символа "
"UTF-16, которые используются в строках C#."

msgid ""
"The clipping behavior when [member visible_characters] or [member "
"visible_ratio] is set."
msgstr ""
"Поведение обрезки, когда задано [member visible_characters] или [member "
"visible_ratio]."

msgid ""
"The fraction of characters to display, relative to the total number of "
"characters (see [method get_total_character_count]). If set to [code]1.0[/"
"code], all characters are displayed. If set to [code]0.5[/code], only half of "
"the characters will be displayed. This can be useful when animating the text "
"appearing in a dialog box.\n"
"[b]Note:[/b] Setting this property updates [member visible_characters] "
"accordingly."
msgstr ""
"Доля символов для отображения относительно общего числа символов (см. [method "
"get_total_character_count]). Если установлено значение [code]1.0[/code], "
"отображаются все символы. Если установлено значение [code]0.5[/code], "
"отображается только половина символов. Это может быть полезно при анимации "
"текста, появляющегося в диалоговом окне.\n"
"[b]Примечание:[/b] Установка этого свойства соответствующим образом обновляет "
"[member visible_characters]."

msgid "Default text [Color] of the [Label]."
msgstr "[Color] [Label] текста по умолчанию."

msgid "The color of text outline."
msgstr "Цвет контура текста."

msgid "[Color] of the text's shadow effect."
msgstr "[Color] эффекта тени текста."

msgid ""
"Text outline size.\n"
"[b]Note:[/b] If using a font with [member "
"FontFile.multichannel_signed_distance_field] enabled, its [member "
"FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of "
"[theme_item outline_size] for outline rendering to look correct. Otherwise, "
"the outline may appear to be cut off earlier than intended.\n"
"[b]Note:[/b] Using a value that is larger than half the font size is not "
"recommended, as the font outline may fail to be fully closed in this case."
msgstr ""
"Размер контура текста.\n"
"[b]Примечание:[/b] При использовании шрифта с включенным [member "
"FontFile.multichannel_signed_distance_field] его [member "
"FontFile.msdf_pixel_range] должен быть установлен как минимум в [i]дважды[/i] "
"раза больше значения [theme_item outline_size], чтобы контур выглядел "
"правильно. В противном случае контур может оказаться обрезанным раньше, чем "
"предполагалось.\n"
"[b]Примечание:[/b] Не рекомендуется использовать значение, превышающее "
"половину размера шрифта, так как в этом случае контур шрифта может не "
"полностью закрыться."

msgid ""
"Vertical space between paragraphs. Added on top of [theme_item line_spacing]."
msgstr ""
"Вертикальный интервал между абзацами. Добавляется поверх [theme_item "
"line_spacing]."

msgid "The horizontal offset of the text's shadow."
msgstr "Горизонтальное смещение тени текста."

msgid "The vertical offset of the text's shadow."
msgstr "Вертикальное смещение тени текста."

msgid "The size of the shadow outline."
msgstr "Размер контура тени."

msgid "[Font] used for the [Label]'s text."
msgstr "[Font], используемый для текста [Label]-ов."

msgid "Font size of the [Label]'s text."
msgstr "Размер шрифта текста [Label]-ов."

msgid ""
"[StyleBox] used when the [Label] is focused (when used with assistive apps)."
msgstr ""
"[StyleBox] используется, когда фокус находится на [Label] (при использовании "
"со вспомогательными приложениями)."

msgid "Background [StyleBox] for the [Label]."
msgstr "Фон [StyleBox] для [Label]."

msgid "A node for displaying plain text in 3D space."
msgstr "Узел для отображения простого текста в 3D-пространстве."

msgid ""
"A node for displaying plain text in 3D space. By adjusting various properties "
"of this node, you can configure things such as the text's appearance and "
"whether it always faces the camera."
msgstr ""
"Узел для отображения обычного текста в 3D-пространстве. Регулируя различные "
"свойства этого узла, вы можете настроить такие вещи, как внешний вид текста и "
"то, всегда ли он обращен к камере."

msgid "3D text"
msgstr "3D текст"

msgid ""
"Returns a [TriangleMesh] with the label's vertices following its current "
"configuration (such as its [member pixel_size])."
msgstr ""
"Возвращает [TriangleMesh] с вершинами метки, соответствующими ее текущей "
"конфигурации (например, ее [member pixel_size])."

msgid "If [code]true[/code], the specified [param flag] will be enabled."
msgstr "Если [code]true[/code], указанный [param flag] будет включен."

msgid "The alpha cutting mode to use for the sprite."
msgstr "Режим альфа-резки, используемый для спрайта."

msgid "Threshold at which the alpha scissor will discard values."
msgstr "Порог, при котором альфа-ножницы будут отбрасывать значения."

msgid "The billboard mode to use for the label."
msgstr "Режим billboard, используемый для метки."

msgid ""
"If [code]true[/code], text can be seen from the back as well, if [code]false[/"
"code], it is invisible when looking at it from behind."
msgstr ""
"Если [code]true[/code], текст также виден сзади, если [code]false[/code], он "
"невидим, если смотреть на него сзади."

msgid ""
"If [code]true[/code], the label is rendered at the same size regardless of "
"distance. The label's size on screen is the same as if the camera was "
"[code]1.0[/code] units away from the label's origin, regardless of the actual "
"distance from the camera. The [Camera3D]'s field of view (or [member "
"Camera3D.size] when in orthogonal/frustum mode) still affects the size the "
"label is drawn at."
msgstr ""
"Если [code]true[/code], label отображается при одинаковом размере независимо "
"от расстояния. Размер метки на экране такой же, как если бы камера была "
"[code]1.0[/code] вдали от происхождения метки, независимо от фактического "
"расстояния от камеры. Поле вида [Camera3D] (или [member Camera3D.size], когда "
"в режиме orthogonal/frustum) все еще влияет на размер, на котором нарисована "
"label."

msgid "Font configuration used to display text."
msgstr "Конфигурация шрифта, используемая для отображения текста."

msgid ""
"Font size of the [Label3D]'s text. To make the font look more detailed when "
"up close, increase [member font_size] while decreasing [member pixel_size] at "
"the same time.\n"
"Higher font sizes require more time to render new characters, which can cause "
"stuttering during gameplay."
msgstr ""
"Размер шрифта текста [Label3D]-ов. Чтобы шрифт выглядел более "
"детализированным при близком рассмотрении, увеличьте [member font_size] и "
"одновременно уменьшите [member pixel_size].\n"
"Более высокие размеры шрифта требуют больше времени для отрисовки новых "
"символов, что может привести к подтормаживанию во время игры."

msgid "Text [Color] of the [Label3D]."
msgstr "Текст [Color] [Label3D]."

msgid "The text drawing offset (in pixels)."
msgstr "Смещение отрисовки текста (в пикселях)."

msgid "The tint of text outline."
msgstr "Оттенок контура текста."

msgid ""
"Sets the render priority for the text outline. Higher priority objects will "
"be sorted in front of lower priority objects.\n"
"[b]Note:[/b] This only applies if [member alpha_cut] is set to [constant "
"ALPHA_CUT_DISABLED] (default value).\n"
"[b]Note:[/b] This only applies to sorting of transparent objects. This will "
"not impact how transparent objects are sorted relative to opaque objects. "
"This is because opaque objects are not sorted, while transparent objects are "
"sorted from back to front (subject to priority)."
msgstr ""
"Устанавливает приоритет рендеринга для контура текста. Объекты с более "
"высоким приоритетом будут сортироваться перед объектами с более низким "
"приоритетом.\n"
"[b]Примечание:[/b] Это применимо только в том случае, если [member alpha_cut] "
"установлен на [constant ALPHA_CUT_DISABLED] (значение по умолчанию).\n"
"[b]Примечание:[/b] Это применимо только к сортировке прозрачных объектов. Это "
"не повлияет на то, как прозрачные объекты сортируются относительно "
"непрозрачных объектов. Это связано с тем, что непрозрачные объекты не "
"сортируются, в то время как прозрачные объекты сортируются сзади вперед (в "
"зависимости от приоритета)."

msgid "Text outline size."
msgstr "Размер обводки текста."

msgid ""
"The size of one pixel's width on the label to scale it in 3D. To make the "
"font look more detailed when up close, increase [member font_size] while "
"decreasing [member pixel_size] at the same time."
msgstr ""
"Размер ширины одного пикселя на этикетке для масштабирования в 3D. Чтобы "
"шрифт выглядел более детализированным при приближении, увеличьте [member "
"font_size] и одновременно уменьшите [member pixel_size]."

msgid ""
"Sets the render priority for the text. Higher priority objects will be sorted "
"in front of lower priority objects.\n"
"[b]Note:[/b] This only applies if [member alpha_cut] is set to [constant "
"ALPHA_CUT_DISABLED] (default value).\n"
"[b]Note:[/b] This only applies to sorting of transparent objects. This will "
"not impact how transparent objects are sorted relative to opaque objects. "
"This is because opaque objects are not sorted, while transparent objects are "
"sorted from back to front (subject to priority)."
msgstr ""
"Устанавливает приоритет рендеринга для текста. Объекты с более высоким "
"приоритетом будут сортироваться перед объектами с более низким приоритетом.\n"
"[b]Примечание:[/b] Это применимо только в том случае, если [member alpha_cut] "
"установлен на [constant ALPHA_CUT_DISABLED] (значение по умолчанию).\n"
"[b]Примечание:[/b] Это применимо только к сортировке прозрачных объектов. Это "
"не повлияет на то, как прозрачные объекты сортируются относительно "
"непрозрачных объектов. Это связано с тем, что непрозрачные объекты не "
"сортируются, в то время как прозрачные объекты сортируются сзади вперед (в "
"зависимости от приоритета)."

msgid ""
"If [code]true[/code], the [Light3D] in the [Environment] has effects on the "
"label."
msgstr ""
"Если [code]true[/code], [Light3D] в [Environment] оказывает влияние на метку."

msgid "Filter flags for the texture."
msgstr "Флаги фильтра для текстуры."

msgid ""
"Controls the text's vertical alignment. Supports top, center, and bottom."
msgstr ""
"Управляет вертикальным выравниванием текста. Поддерживает верх, центр и низ."

msgid "Text width (in pixels), used for autowrap and fill alignment."
msgstr ""
"Ширина текста (в пикселях), используемая для автоматического переноса и "
"выравнивания заливки."

msgid "If set, lights in the environment affect the label."
msgstr "Если установлено, окружающее освещение влияет на метку."

msgid ""
"If set, text can be seen from the back as well. If not, the text is invisible "
"when looking at it from behind."
msgstr ""
"Если установлено, текст также виден сзади. Если не установлено, текст не "
"виден при взгляде сзади."

msgid ""
"Disables the depth test, so this object is drawn on top of all others. "
"However, objects drawn after it in the draw order may cover it."
msgstr ""
"Отключает тест глубины, поэтому этот объект рисуется поверх всех остальных. "
"Однако объекты, рисуемые после него в порядке рисования, могут его "
"перекрывать."

msgid ""
"Label is scaled by depth so that it always appears the same size on screen."
msgstr ""
"Метка масштабируется по глубине, поэтому на экране она всегда отображается "
"одинакового размера."

msgid "Represents the size of the [enum DrawFlags] enum."
msgstr "Представляет размер перечисления [enum DrawFlags]."

msgid ""
"This mode performs standard alpha blending. It can display translucent areas, "
"but transparency sorting issues may be visible when multiple transparent "
"materials are overlapping. [member GeometryInstance3D.cast_shadow] has no "
"effect when this transparency mode is used; the [Label3D] will never cast "
"shadows."
msgstr ""
"Этот режим выполняет стандартное альфа-смешивание. Он может отображать "
"полупрозрачные области, но проблемы с сортировкой прозрачности могут быть "
"видны, когда накладываются несколько прозрачных материалов. [member "
"GeometryInstance3D.cast_shadow] не имеет никакого эффекта при использовании "
"этого режима прозрачности; [Label3D] никогда не будет отбрасывать тени."

msgid ""
"This mode only allows fully transparent or fully opaque pixels. Harsh edges "
"will be visible unless some form of screen-space antialiasing is enabled (see "
"[member ProjectSettings.rendering/anti_aliasing/quality/screen_space_aa]). "
"This mode is also known as [i]alpha testing[/i] or [i]1-bit transparency[/"
"i].\n"
"[b]Note:[/b] This mode might have issues with anti-aliased fonts and "
"outlines, try adjusting [member alpha_scissor_threshold] or using MSDF font.\n"
"[b]Note:[/b] When using text with overlapping glyphs (e.g., cursive scripts), "
"this mode might have transparency sorting issues between the main text and "
"the outline."
msgstr ""
"Этот режим допускает только полностью прозрачные или полностью непрозрачные "
"пиксели. Резкие края будут видны, если не включена какая-либо форма "
"сглаживания экранного пространства (см. [member ProjectSettings.rendering/"
"anti_aliasing/quality/screen_space_aa]). Этот режим также известен как "
"[i]альфа-тестирование[/i] или [i]1-битная прозрачность[/i].\n"
"[b]Примечание:[/b] В этом режиме могут возникнуть проблемы со сглаженными "
"шрифтами и контурами, попробуйте настроить [member alpha_scissor_threshold] "
"или использовать шрифт MSDF.\n"
"[b]Примечание:[/b] При использовании текста с перекрывающимися глифами "
"(например, курсивные шрифты) в этом режиме могут возникнуть проблемы с "
"сортировкой прозрачности между основным текстом и контуром."

msgid ""
"This mode draws fully opaque pixels in the depth prepass. This is slower than "
"[constant ALPHA_CUT_DISABLED] or [constant ALPHA_CUT_DISCARD], but it allows "
"displaying translucent areas and smooth edges while using proper sorting.\n"
"[b]Note:[/b] When using text with overlapping glyphs (e.g., cursive scripts), "
"this mode might have transparency sorting issues between the main text and "
"the outline."
msgstr ""
"Этот режим рисует полностью непрозрачные пиксели в предварительном проходе "
"глубины. Это медленнее, чем [constant ALPHA_CUT_DISABLED] или [constant "
"ALPHA_CUT_DISCARD], но позволяет отображать полупрозрачные области и "
"сглаживать края при использовании правильной сортировки.\n"
"[b]Примечание:[/b] При использовании текста с перекрывающимися глифами "
"(например, курсивные шрифты) в этом режиме могут возникнуть проблемы с "
"сортировкой прозрачности между основным текстом и контуром."

msgid ""
"This mode draws cuts off all values below a spatially-deterministic "
"threshold, the rest will remain opaque."
msgstr ""
"В этом режиме отрисовка отсекает все значения ниже пространственно-"
"детерминированного порога, остальные остаются непрозрачными."

msgid "Provides common settings to customize the text in a [Label]."
msgstr "Предоставляет общие настройки для настройки текста в [Label]."

msgid ""
"[LabelSettings] is a resource that provides common settings to customize the "
"text in a [Label]. It will take priority over the properties defined in "
"[member Control.theme]. The resource can be shared between multiple labels "
"and changed on the fly, so it's convenient and flexible way to setup text "
"style."
msgstr ""
"[LabelSettings] — это ресурс, который предоставляет общие настройки для "
"настройки текста в [Label]. Он будет иметь приоритет над свойствами, "
"определенными в [member Control.theme]. Ресурс может быть общим для "
"нескольких меток и изменяться на лету, поэтому это удобный и гибкий способ "
"настройки стиля текста."

msgid ""
"Adds a new stacked outline to the label at the given [param index]. If [param "
"index] is [code]-1[/code], the new stacked outline will be added at the end "
"of the list."
msgstr ""
"Добавляет новый сложенный контур к метке по указанному [param index]. Если "
"[param index] равен [code]-1[/code], новый сложенный контур будет добавлен в "
"конец списка."

msgid ""
"Adds a new stacked shadow to the label at the given [param index]. If [param "
"index] is [code]-1[/code], the new stacked shadow will be added at the end of "
"the list."
msgstr ""
"Добавляет новую стекированную тень к метке с указанным [param index]. Если "
"[param index] равен [code]-1[/code], новая стекированная тень будет добавлена "
"в конец списка."

msgid "Returns the color of the stacked outline at [param index]."
msgstr "Возвращает цвет сложенного контура в [param index]."

msgid "Returns the size of the stacked outline at [param index]."
msgstr "Возвращает размер сложенного контура в [param index]."

msgid "Returns the color of the stacked shadow at [param index]."
msgstr "Возвращает цвет стекированной тени в [param index]."

msgid "Returns the offset of the stacked shadow at [param index]."
msgstr "Возвращает смещение стекированной тени в [param index]."

msgid "Returns the outline size of the stacked shadow at [param index]."
msgstr "Возвращает размер контура стекированной тени в [param index]."

msgid ""
"Moves the stacked outline at index [param from_index] to the given position "
"[param to_position] in the array."
msgstr ""
"Перемещает сложенный контур с индексом [param from_index] в заданную позицию "
"[param to_position] в массиве."

msgid ""
"Moves the stacked shadow at index [param from_index] to the given position "
"[param to_position] in the array."
msgstr ""
"Перемещает сложенную тень по индексу [param from_index] в заданную позицию "
"[param to_position] в массиве."

msgid "Removes the stacked outline at index [param index]."
msgstr "Удаляет сложенный контур по индексу [param index]."

msgid "Removes the stacked shadow at index [param index]."
msgstr "Удаляет накопленную тень по индексу [param index]."

msgid ""
"Sets the color of the stacked outline identified by the given [param index] "
"to [param color]."
msgstr ""
"Устанавливает цвет сложенного контура, идентифицированного заданным [param "
"index], на [param color]."

msgid ""
"Sets the size of the stacked outline identified by the given [param index] to "
"[param size]."
msgstr ""
"Устанавливает размер сложенного контура, идентифицированного заданным [param "
"index], равным [param size]."

msgid ""
"Sets the color of the stacked shadow identified by the given [param index] to "
"[param color]."
msgstr ""
"Устанавливает цвет тени, идентифицированной указанным [param index], на "
"[param color]."

msgid ""
"Sets the offset of the stacked shadow identified by the given [param index] "
"to [param offset]."
msgstr ""
"Устанавливает смещение тени, идентифицированной заданным [param index], на "
"[param offset]."

msgid ""
"Sets the outline size of the stacked shadow identified by the given [param "
"index] to [param size]."
msgstr ""
"Устанавливает размер контура тени, идентифицированной указанным [param "
"index], на [param size]."

msgid "[Font] used for the text."
msgstr "[Font], используемый для текста."

msgid "Color of the text."
msgstr "Цвет текста."

msgid "Size of the text."
msgstr "Размер текста."

msgid "The color of the outline."
msgstr "Цвет контура."

msgid ""
"Vertical space between paragraphs. Added on top of [member line_spacing]."
msgstr ""
"Вертикальный интервал между абзацами. Добавляется поверх [member "
"line_spacing]."

msgid ""
"Color of the shadow effect. If alpha is [code]0[/code], no shadow will be "
"drawn."
msgstr ""
"Цвет эффекта тени. Если альфа равен [code]0[/code], тень не будет нарисована."

msgid "Offset of the shadow effect, in pixels."
msgstr "Смещение эффекта тени в пикселях."

msgid "Size of the shadow effect."
msgstr "Размер эффекта тени."

msgid "The number of stacked outlines."
msgstr "Количество сложенных контуров."

msgid "The number of stacked shadows."
msgstr "Количество наложенных друг на друга теней."

msgid "Casts light in a 2D environment."
msgstr "Излучает свет в 2D-среде."

msgid ""
"Casts light in a 2D environment. A light is defined as a color, an energy "
"value, a mode (see constants), and various other parameters (range and "
"shadows-related)."
msgstr ""
"Излучает свет в 2D-среде. Свет определяется цветом, значением энергии, "
"режимом (см. константы) и различными другими параметрами (диапазоном и "
"тенями)."

msgid ""
"Returns the light's height, which is used in 2D normal mapping. See [member "
"PointLight2D.height] and [member DirectionalLight2D.height]."
msgstr ""
"Возвращает высоту источника света, которая используется в 2D-нормальном "
"отображении. См. [member PointLight2D.height] и [member "
"DirectionalLight2D.height]."

msgid ""
"Sets the light's height, which is used in 2D normal mapping. See [member "
"PointLight2D.height] and [member DirectionalLight2D.height]."
msgstr ""
"Устанавливает высоту света, которая используется в 2D-нормальном отображении. "
"См. [member PointLight2D.height] и [member DirectionalLight2D.height]."

msgid "The Light2D's blend mode."
msgstr "Режим смешивания Light2D."

msgid "The Light2D's [Color]."
msgstr "[Color] в Light2D."

msgid "If [code]true[/code], Light2D will only appear when editing the scene."
msgstr ""
"Если [code]true[/code], Light2D будет отображаться только при редактировании "
"сцены."

msgid "If [code]true[/code], Light2D will emit light."
msgstr "Если [code]true[/code], Light2D будет излучать свет."

msgid ""
"The Light2D's energy value. The larger the value, the stronger the light."
msgstr "Значение энергии Light2D. Чем больше значение, тем сильнее свет."

msgid ""
"The layer mask. Only objects with a matching [member CanvasItem.light_mask] "
"will be affected by the Light2D. See also [member shadow_item_cull_mask], "
"which affects which objects can cast shadows.\n"
"[b]Note:[/b] [member range_item_cull_mask] is ignored by "
"[DirectionalLight2D], which will always light a 2D node regardless of the 2D "
"node's [member CanvasItem.light_mask]."
msgstr ""
"Маска слоя. Только объекты с соответствующим [member CanvasItem.light_mask] "
"будут затронуты Light2D. См. также [member shadow_item_cull_mask], который "
"влияет на то, какие объекты могут отбрасывать тени.\n"
"[b]Примечание:[/b] [member range_item_cull_mask] игнорируется "
"[DirectionalLight2D], который всегда будет освещать 2D-узел независимо от "
"[member CanvasItem.light_mask] 2D-узла."

msgid "Maximum layer value of objects that are affected by the Light2D."
msgstr "Максимальное значение слоя объектов, на которые влияет Light2D."

msgid "Minimum layer value of objects that are affected by the Light2D."
msgstr "Минимальное значение слоя объектов, на которые влияет Light2D."

msgid ""
"Maximum [code]z[/code] value of objects that are affected by the Light2D."
msgstr ""
"Максимальное значение [code]z[/code] объектов, на которые влияет Light2D."

msgid ""
"Minimum [code]z[/code] value of objects that are affected by the Light2D."
msgstr ""
"Минимальное значение [code]z[/code] объектов, на которые влияет Light2D."

msgid "[Color] of shadows cast by the Light2D."
msgstr "[Color] теней, отбрасываемых Light2D."

msgid "If [code]true[/code], the Light2D will cast shadows."
msgstr "Если [code]true[/code], Light2D будет отбрасывать тени."

msgid "Shadow filter type."
msgstr "Тип фильтра теней."

msgid ""
"Smoothing value for shadows. Higher values will result in softer shadows, at "
"the cost of visible streaks that can appear in shadow rendering. [member "
"shadow_filter_smooth] only has an effect if [member shadow_filter] is "
"[constant SHADOW_FILTER_PCF5] or [constant SHADOW_FILTER_PCF13]."
msgstr ""
"Значение сглаживания для теней. Более высокие значения приведут к более "
"мягким теням за счет видимых полос, которые могут появиться при рендеринге "
"теней. [member shadow_filter_smooth] имеет эффект только в том случае, если "
"[member shadow_filter] равен [constant SHADOW_FILTER_PCF5] или [constant "
"SHADOW_FILTER_PCF13]."

msgid ""
"The shadow mask. Used with [LightOccluder2D] to cast shadows. Only occluders "
"with a matching [member CanvasItem.light_mask] will cast shadows. See also "
"[member range_item_cull_mask], which affects which objects can [i]receive[/i] "
"the light."
msgstr ""
"Маска тени. Используется с [LightOccluder2D] для отбрасывания теней. Только "
"окклюдеры с соответствующим [member CanvasItem.light_mask] будут отбрасывать "
"тени. См. также [member range_item_cull_mask], который влияет на то, какие "
"объекты могут [i]получать[/i] свет."

msgid ""
"No filter applies to the shadow map. This provides hard shadow edges and is "
"the fastest to render. See [member shadow_filter]."
msgstr ""
"Фильтр не применяется к карте теней. Это обеспечивает жесткие края теней и "
"является самым быстрым для рендеринга. См. [member shadow_filter]."

msgid ""
"Percentage closer filtering (5 samples) applies to the shadow map. This is "
"slower compared to hard shadow rendering. See [member shadow_filter]."
msgstr ""
"Фильтрация сближения процентов (5 образцов) применяется к карте теней. Это "
"медленнее по сравнению с жестким рендерингом теней. См. [member "
"shadow_filter]."

msgid ""
"Percentage closer filtering (13 samples) applies to the shadow map. This is "
"the slowest shadow filtering mode, and should be used sparingly. See [member "
"shadow_filter]."
msgstr ""
"Фильтрация сближения процентов (13 образцов) применяется к карте теней. Это "
"самый медленный режим фильтрации теней, и его следует использовать экономно. "
"См. [member shadow_filter]."

msgid ""
"Adds the value of pixels corresponding to the Light2D to the values of pixels "
"under it. This is the common behavior of a light."
msgstr ""
"Добавляет значение пикселей, соответствующих Light2D, к значениям пикселей "
"под ним. Это обычное поведение света."

msgid ""
"Subtracts the value of pixels corresponding to the Light2D to the values of "
"pixels under it, resulting in inversed light effect."
msgstr ""
"Вычитает значение пикселей, соответствующих Light2D, из значений пикселей под "
"ним, что приводит к эффекту инвертированного света."

msgid ""
"Mix the value of pixels corresponding to the Light2D to the values of pixels "
"under it by linear interpolation."
msgstr ""
"Смешиваем значения пикселей, соответствующих Light2D, со значениями пикселей "
"под ним с помощью линейной интерполяции."

msgid "Provides a base class for different kinds of light nodes."
msgstr "Предоставляет базовый класс для различных видов световых узлов."

msgid ""
"Light3D is the [i]abstract[/i] base class for light nodes. As it can't be "
"instantiated, it shouldn't be used directly. Other types of light nodes "
"inherit from it. Light3D contains the common variables and parameters used "
"for lighting."
msgstr ""
"Light3D — это [i]абстрактный[/i] базовый класс для световых узлов. Поскольку "
"его нельзя инстанцировать, его не следует использовать напрямую. Другие типы "
"световых узлов наследуются от него. Light3D содержит общие переменные и "
"параметры, используемые для освещения."

msgid ""
"Returns the [Color] of an idealized blackbody at the given [member "
"light_temperature]. This value is calculated internally based on the [member "
"light_temperature]. This [Color] is multiplied by [member light_color] before "
"being sent to the [RenderingServer]."
msgstr ""
"Возвращает [Color] идеализированного черного тела при заданной [member "
"light_temperature]. Это значение вычисляется внутренне на основе [member "
"light_temperature]. Этот [Color] умножается на [member light_color] перед "
"отправкой на [RenderingServer]."

msgid "Returns the value of the specified [enum Light3D.Param] parameter."
msgstr "Возвращает значение указанного параметра [enum Light3D.Param]."

msgid "Sets the value of the specified [enum Light3D.Param] parameter."
msgstr "Устанавливает значение указанного параметра [enum Light3D.Param]."

msgid ""
"The distance from the camera at which the light begins to fade away (in 3D "
"units).\n"
"[b]Note:[/b] Only effective for [OmniLight3D] and [SpotLight3D]."
msgstr ""
"Расстояние от камеры, на котором свет начинает затухать (в 3D-единицах).\n"
"[b]Примечание:[/b] Действует только для [OmniLight3D] и [SpotLight3D]."

msgid ""
"If [code]true[/code], the light will smoothly fade away when far from the "
"active [Camera3D] starting at [member distance_fade_begin]. This acts as a "
"form of level of detail (LOD). The light will fade out over [member "
"distance_fade_begin] + [member distance_fade_length], after which it will be "
"culled and not sent to the shader at all. Use this to reduce the number of "
"active lights in a scene and thus improve performance.\n"
"[b]Note:[/b] Only effective for [OmniLight3D] and [SpotLight3D]."
msgstr ""
"Если [code]true[/code], свет будет плавно затухать, когда находится далеко от "
"активной [Camera3D], начиная с [member distance_fade_begin]. Это действует "
"как форма уровня детализации (LOD). Свет будет затухать через [member "
"distance_fade_begin] + [member distance_fade_length], после чего он будет "
"отбракован и вообще не отправлен в шейдер. Используйте это, чтобы уменьшить "
"количество активных источников света в сцене и, таким образом, повысить "
"производительность.\n"
"[b]Примечание:[/b] Эффективно только для [OmniLight3D] и [SpotLight3D]."

msgid ""
"Distance over which the light and its shadow fades. The light's energy and "
"shadow's opacity is progressively reduced over this distance and is "
"completely invisible at the end.\n"
"[b]Note:[/b] Only effective for [OmniLight3D] and [SpotLight3D]."
msgstr ""
"Расстояние, на котором свет и его тень затухают. Энергия света и "
"непрозрачность тени постепенно уменьшаются на этом расстоянии и в конце "
"становятся полностью невидимыми.\n"
"[b]Примечание:[/b] Эффективно только для [OmniLight3D] и [SpotLight3D]."

msgid ""
"The distance from the camera at which the light's shadow cuts off (in 3D "
"units). Set this to a value lower than [member distance_fade_begin] + [member "
"distance_fade_length] to further improve performance, as shadow rendering is "
"often more expensive than light rendering itself.\n"
"[b]Note:[/b] Only effective for [OmniLight3D] and [SpotLight3D], and only "
"when [member shadow_enabled] is [code]true[/code]."
msgstr ""
"Расстояние от камеры, на котором тень света обрезается (в 3D-единицах). "
"Установите это значение ниже, чем [member distance_fade_begin] + [member "
"distance_fade_length], чтобы еще больше повысить производительность, "
"поскольку рендеринг тени часто обходится дороже, чем рендеринг самого света.\n"
"[b]Примечание:[/b] Эффективно только для [OmniLight3D] и [SpotLight3D], и "
"только когда [member shadow_enabled] равно [code]true[/code]."

msgid ""
"If [code]true[/code], the light only appears in the editor and will not be "
"visible at runtime. If [code]true[/code], the light will never be baked in "
"[LightmapGI] regardless of its [member light_bake_mode]."
msgstr ""
"Если [code]true[/code], свет появляется только в редакторе и не будет виден "
"во время выполнения. Если [code]true[/code], свет никогда не будет запечен в "
"[LightmapGI] независимо от его [member light_bake_mode]."

msgid ""
"The light's angular size in degrees. Increasing this will make shadows softer "
"at greater distances (also called percentage-closer soft shadows, or PCSS). "
"Only available for [DirectionalLight3D]s. For reference, the Sun from the "
"Earth is approximately [code]0.5[/code]. Increasing this value above "
"[code]0.0[/code] for lights with shadows enabled will have a noticeable "
"performance cost due to PCSS.\n"
"[b]Note:[/b] [member light_angular_distance] is not affected by [member "
"Node3D.scale] (the light's scale or its parent's scale).\n"
"[b]Note:[/b] PCSS for directional lights is only supported in the Forward+ "
"rendering method, not Mobile or Compatibility."
msgstr ""
"Угловой размер источника света в градусах. Увеличение этого значения сделает "
"тени мягче на больших расстояниях (также называется процентно-ближенные "
"мягкие тени, или PCSS). Доступно только для [DirectionalLight3D]. Для "
"справки, Солнце от Земли составляет приблизительно [code]0.5[/code]. "
"Увеличение этого значения выше [code]0.0[/code] для источников света с "
"включенными тенями приведет к заметному снижению производительности из-за "
"PCSS.\n"
"[b]Примечание:[/b] [member light_angular_distance] не зависит от [member "
"Node3D.scale] (масштаб источника света или масштаб его родителя).\n"
"[b]Примечание:[/b] PCSS для направленных источников света поддерживается "
"только в методе рендеринга Forward+, а не Mobile или Compatibility."

msgid ""
"The light's bake mode. This will affect the global illumination techniques "
"that have an effect on the light's rendering.\n"
"[b]Note:[/b] Meshes' global illumination mode will also affect the global "
"illumination rendering. See [member GeometryInstance3D.gi_mode]."
msgstr ""
"Режим запекания света. Это повлияет на методы глобального освещения, которые "
"влияют на рендеринг света.\n"
"[b]Примечание:[/b] Режим глобального освещения сеток также повлияет на "
"рендеринг глобального освещения. См. [member GeometryInstance3D.gi_mode]."

msgid ""
"The light's color in the nonlinear sRGB color space. An [i]overbright[/i] "
"color can be used to achieve a result equivalent to increasing the light's "
"[member light_energy]."
msgstr ""
"Цвет света в нелинейном цветовом пространстве sRGB. Цвет [i]overbright[/i] "
"может использоваться для достижения результата, эквивалентного увеличению "
"[member light_energy] света."

msgid ""
"The light's strength multiplier (this is not a physical unit). For "
"[OmniLight3D] and [SpotLight3D], changing this value will only change the "
"light color's intensity, not the light's radius."
msgstr ""
"Множитель силы света (это не физическая единица). Для [OmniLight3D] и "
"[SpotLight3D] изменение этого значения изменит только интенсивность цвета "
"света, но не радиус света."

msgid ""
"Secondary multiplier used with indirect light (light bounces). Used with "
"[VoxelGI] and SDFGI (see [member Environment.sdfgi_enabled]).\n"
"[b]Note:[/b] This property is ignored if [member light_energy] is equal to "
"[code]0.0[/code], as the light won't be present at all in the GI shader."
msgstr ""
"Вторичный множитель, используемый с непрямым светом (отскоки света). "
"Используется с [VoxelGI] и SDFGI (см. [member Environment.sdfgi_enabled]).\n"
"[b]Примечание:[/b] Это свойство игнорируется, если [member light_energy] "
"равен [code]0.0[/code], так как свет вообще не будет присутствовать в шейдере "
"GI."

msgid ""
"Used by positional lights ([OmniLight3D] and [SpotLight3D]) when [member "
"ProjectSettings.rendering/lights_and_shadows/use_physical_light_units] is "
"[code]true[/code]. Sets the intensity of the light source measured in Lumens. "
"Lumens are a measure of luminous flux, which is the total amount of visible "
"light emitted by a light source per unit of time.\n"
"For [SpotLight3D]s, we assume that the area outside the visible cone is "
"surrounded by a perfect light absorbing material. Accordingly, the apparent "
"brightness of the cone area does not change as the cone increases and "
"decreases in size.\n"
"A typical household lightbulb can range from around 600 lumens to 1,200 "
"lumens, a candle is about 13 lumens, while a streetlight can be approximately "
"60,000 lumens."
msgstr ""
"Используется позиционными источниками света ([OmniLight3D] и [SpotLight3D]), "
"когда [member ProjectSettings.rendering/lights_and_shadows/"
"use_physical_light_units] имеет значение [code]true[/code]. Устанавливает "
"интенсивность источника света, измеряемую в люменах. Люмены — это мера "
"светового потока, представляющая собой общее количество видимого света, "
"излучаемого источником света за единицу времени.\n"
"Для [SpotLight3D] мы предполагаем, что область за пределами видимого конуса "
"окружена идеальным светопоглощающим материалом. Соответственно, видимая "
"яркость области конуса не меняется по мере увеличения и уменьшения размера "
"конуса.\n"
"Типичная бытовая лампочка может иметь яркость от 600 до 1200 люменов, свеча — "
"около 13 люменов, а уличный фонарь — около 60 000 люменов."

msgid ""
"Used by [DirectionalLight3D]s when [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] is [code]true[/code]. Sets the "
"intensity of the light source measured in Lux. Lux is a measure of luminous "
"flux per unit area, it is equal to one lumen per square meter. Lux is the "
"measure of how much light hits a surface at a given time.\n"
"On a clear sunny day a surface in direct sunlight may be approximately "
"100,000 lux, a typical room in a home may be approximately 50 lux, while the "
"moonlit ground may be approximately 0.1 lux."
msgstr ""
"Используется [DirectionalLight3D], когда [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] имеет значение [code]true[/"
"code]. Устанавливает интенсивность источника света, измеряемую в люксах. Люкс "
"— это мера светового потока на единицу площади, она равна одному люмену на "
"квадратный метр. Люкс — это мера того, сколько света попадает на поверхность "
"в данный момент времени.\n"
"В ясный солнечный день поверхность, находящаяся под прямыми солнечными "
"лучами, может иметь освещенность приблизительно 100 000 люкс, типичная "
"комната в доме может иметь освещенность приблизительно 50 люкс, в то время "
"как освещенная луной земля может иметь освещенность приблизительно 0,1 люкс."

msgid ""
"If [code]true[/code], the light's effect is reversed, darkening areas and "
"casting bright shadows."
msgstr ""
"Если [code]true[/code], эффект света обратный, затемняя области и отбрасывая "
"яркие тени."

msgid ""
"[Texture2D] projected by light. [member shadow_enabled] must be on for the "
"projector to work. Light projectors make the light appear as if it is shining "
"through a colored but transparent object, almost like light shining through "
"stained-glass.\n"
"[b]Note:[/b] Unlike [BaseMaterial3D] whose filter mode can be adjusted on a "
"per-material basis, the filter mode for light projector textures is set "
"globally with [member ProjectSettings.rendering/textures/light_projectors/"
"filter].\n"
"[b]Note:[/b] Light projector textures are only supported in the Forward+ and "
"Mobile rendering methods, not Compatibility."
msgstr ""
"[Texture2D] проецируется светом. [member shadow_enabled] должен быть включен "
"для работы проектора. Проекторы света создают видимость света, как будто он "
"проходит через цветной, но прозрачный объект, почти как свет, проходящий "
"через витражное стекло.\n"
"[b]Примечание:[/b] В отличие от [BaseMaterial3D], режим фильтра которого "
"можно настраивать для каждого материала, режим фильтра для текстур проекторов "
"света устанавливается глобально с помощью [member ProjectSettings.rendering/"
"textures/light_projectors/filter].\n"
"[b]Примечание:[/b] Текстуры проекторов света поддерживаются только в методах "
"рендеринга Forward+ и Mobile, но не Compatibility."

msgid ""
"The size of the light in Godot units. Only available for [OmniLight3D]s and "
"[SpotLight3D]s. Increasing this value will make the light fade out slower and "
"shadows appear blurrier (also called percentage-closer soft shadows, or "
"PCSS). This can be used to simulate area lights to an extent. Increasing this "
"value above [code]0.0[/code] for lights with shadows enabled will have a "
"noticeable performance cost due to PCSS.\n"
"[b]Note:[/b] [member light_size] is not affected by [member Node3D.scale] "
"(the light's scale or its parent's scale).\n"
"[b]Note:[/b] PCSS for positional lights is only supported in the Forward+ and "
"Mobile rendering methods, not Compatibility."
msgstr ""
"Размер источника света в единицах Godot. Доступно только для [OmniLight3D] и "
"[SpotLight3D]. Увеличение этого значения замедлит затухание света и сделает "
"тени более размытыми (также называемыми процентно-ближенными мягкими тенями "
"или PCSS). Это можно использовать для имитации площадного освещения в "
"определенной степени. Увеличение этого значения выше [code]0.0[/code] для "
"источников света с включенными тенями приведет к заметному снижению "
"производительности из-за PCSS.\n"
"[b]Примечание:[/b] [member light_size] не зависит от [member Node3D.scale] "
"(масштаба источника света или масштаба его родителя).\n"
"[b]Примечание:[/b] PCSS для позиционного освещения поддерживается только в "
"методах рендеринга Forward+ и Mobile, но не Compatibility."

msgid ""
"The intensity of the specular blob in objects affected by the light. At "
"[code]0[/code], the light becomes a pure diffuse light. When not baking "
"emission, this can be used to avoid unrealistic reflections when placing "
"lights above an emissive surface."
msgstr ""
"Интенсивность зеркального пятна в объектах, затронутых светом. При [code]0[/"
"code] свет становится чистым диффузным светом. Если не запекать излучение, "
"это можно использовать для избежания нереалистичных отражений при размещении "
"света над излучающей поверхностью."

msgid ""
"Sets the color temperature of the light source, measured in Kelvin. This is "
"used to calculate a correlated color temperature which tints the [member "
"light_color].\n"
"The sun on a cloudy day is approximately 6500 Kelvin, on a clear day it is "
"between 5500 to 6000 Kelvin, and on a clear day at sunrise or sunset it "
"ranges to around 1850 Kelvin."
msgstr ""
"Устанавливает цветовую температуру источника света, измеряемую в градусах "
"Кельвина. Используется для расчета коррелированной цветовой температуры, "
"которая окрашивает [member light_color].\n"
"Температура солнца в пасмурный день составляет около 6500 Кельвинов, в ясный "
"день — от 5500 до 6000 Кельвинов, а в ясный день на восходе или закате — "
"около 1850 Кельвинов."

msgid ""
"Secondary multiplier multiplied with [member light_energy] then used with the "
"[Environment]'s volumetric fog (if enabled). If set to [code]0.0[/code], "
"computing volumetric fog will be skipped for this light, which can improve "
"performance for large amounts of lights when volumetric fog is enabled.\n"
"[b]Note:[/b] To prevent short-lived dynamic light effects from poorly "
"interacting with volumetric fog, lights used in those effects should have "
"[member light_volumetric_fog_energy] set to [code]0.0[/code] unless [member "
"Environment.volumetric_fog_temporal_reprojection_enabled] is disabled (or "
"unless the reprojection amount is significantly lowered)."
msgstr ""
"Вторичный множитель умножается на [member light_energy], затем используется с "
"объемным туманом [Environment] (если включен). Если установлено значение "
"[code]0.0[/code], вычисление объемного тумана будет пропущено для этого "
"источника света, что может повысить производительность для большого "
"количества источников света, когда включен объемный туман.\n"
"[b]Примечание:[/b] Чтобы предотвратить плохое взаимодействие кратковременных "
"динамических световых эффектов с объемным туманом, для источников света, "
"используемых в этих эффектах, [member light_volumetric_fog_energy] должно "
"быть установлено значение [code]0.0[/code], если только [member "
"Environment.volumetric_fog_temporal_reprojection_enabled] не отключено (или "
"если количество перепроецирования значительно не снижено)."

msgid ""
"Used to adjust shadow appearance. Too small a value results in self-shadowing "
"(\"shadow acne\"), while too large a value causes shadows to separate from "
"casters (\"peter-panning\"). Adjust as needed."
msgstr ""
"Используется для регулировки внешнего вида тени. Слишком маленькое значение "
"приводит к самозатенению («теневые угри»), а слишком большое значение "
"приводит к отделению теней от отбрасывающих их («Питер-Пэннинг»). "
"Отрегулируйте по мере необходимости."

msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low-"
"resolution shadow maps. A high value can impact performance, make shadows "
"appear grainy and can cause other unwanted artifacts. Try to keep as near "
"default as possible."
msgstr ""
"Размывает края тени. Может использоваться для скрытия артефактов пикселей в "
"картах теней с низким разрешением. Высокое значение может повлиять на "
"производительность, сделать тени зернистыми и вызвать другие нежелательные "
"артефакты. Постарайтесь сохранить значение как можно ближе к значению по "
"умолчанию."

msgid "The light will only cast shadows using objects in the selected layers."
msgstr "Свет будет отбрасывать тени только от объектов в выбранных слоях."

msgid ""
"If [code]true[/code], the light will cast real-time shadows. This has a "
"significant performance cost. Only enable shadow rendering when it makes a "
"noticeable difference in the scene's appearance, and consider using [member "
"distance_fade_enabled] to hide the light when far away from the [Camera3D]."
msgstr ""
"Если [code]true[/code], свет будет отбрасывать тени в реальном времени. Это "
"существенно снижает производительность. Включайте рендеринг теней только "
"тогда, когда это заметно влияет на внешний вид сцены, и рассмотрите "
"возможность использования [member distance_fade_enabled], чтобы скрыть свет, "
"когда он находится далеко от [Camera3D]."

msgid ""
"Offsets the lookup into the shadow map by the object's normal. This can be "
"used to reduce self-shadowing artifacts without using [member shadow_bias]. "
"In practice, this value should be tweaked along with [member shadow_bias] to "
"reduce artifacts as much as possible."
msgstr ""
"Смещает поиск в теневой карте по нормали объекта. Это можно использовать для "
"уменьшения артефактов самозатенения без использования [member shadow_bias]. "
"На практике это значение следует настраивать вместе с [member shadow_bias], "
"чтобы максимально уменьшить артефакты."

msgid ""
"The opacity to use when rendering the light's shadow map. Values lower than "
"[code]1.0[/code] make the light appear through shadows. This can be used to "
"fake global illumination at a low performance cost."
msgstr ""
"Непрозрачность, используемая при рендеринге карты теней света. Значения ниже "
"[code]1.0[/code] заставляют свет проявляться сквозь тени. Это можно "
"использовать для имитации глобального освещения с низкими затратами "
"производительности."

msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
"cast a shadow on both sides of the mesh, set the mesh to use double-sided "
"shadows with [constant "
"GeometryInstance3D.SHADOW_CASTING_SETTING_DOUBLE_SIDED]."
msgstr ""
"Если [code]true[/code], то отменяется отбраковка задней поверхности сетки. "
"Это может быть полезно, когда у вас есть плоская сетка, за которой находится "
"свет. Если вам нужно отбросить тень на обе стороны сетки, настройте сетку на "
"использование двухсторонних теней с помощью [constant "
"GeometryInstance3D.SHADOW_CASTING_SETTING_DOUBLE_SIDED]."

msgid "Constant for accessing [member light_energy]."
msgstr "Константа для доступа к [member light_energy]."

msgid "Constant for accessing [member light_indirect_energy]."
msgstr "Константа для доступа к [member light_indirect_energy]."

msgid "Constant for accessing [member light_volumetric_fog_energy]."
msgstr "Константа для доступа к [member light_volumetric_fog_energy]."

msgid "Constant for accessing [member light_specular]."
msgstr "Константа для доступа к [member light_specular]."

msgid ""
"Constant for accessing [member OmniLight3D.omni_range] or [member "
"SpotLight3D.spot_range]."
msgstr ""
"Константа для доступа к [member OmniLight3D.omni_range] или [member "
"SpotLight3D.spot_range]."

msgid "Constant for accessing [member light_size]."
msgstr "Константа для доступа к [member light_size]."

msgid ""
"Constant for accessing [member OmniLight3D.omni_attenuation] or [member "
"SpotLight3D.spot_attenuation]."
msgstr ""
"Константа для доступа к [member OmniLight3D.omni_attenuation] или [member "
"SpotLight3D.spot_attenuation]."

msgid "Constant for accessing [member SpotLight3D.spot_angle]."
msgstr "Константа для доступа к [member SpotLight3D.spot_angle]."

msgid "Constant for accessing [member SpotLight3D.spot_angle_attenuation]."
msgstr "Константа для доступа к [member SpotLight3D.spot_angle_attenuation]."

msgid ""
"Constant for accessing [member "
"DirectionalLight3D.directional_shadow_max_distance]."
msgstr ""
"Константа для доступа к [member "
"DirectionalLight3D.directional_shadow_max_distance]."

msgid ""
"Constant for accessing [member DirectionalLight3D.directional_shadow_split_1]."
msgstr ""
"Константа для доступа к [member "
"DirectionalLight3D.directional_shadow_split_1]."

msgid ""
"Constant for accessing [member DirectionalLight3D.directional_shadow_split_2]."
msgstr ""
"Константа для доступа к [member "
"DirectionalLight3D.directional_shadow_split_2]."

msgid ""
"Constant for accessing [member DirectionalLight3D.directional_shadow_split_3]."
msgstr ""
"Константа для доступа к [member "
"DirectionalLight3D.directional_shadow_split_3]."

msgid ""
"Constant for accessing [member "
"DirectionalLight3D.directional_shadow_fade_start]."
msgstr ""
"Константа для доступа к [member "
"DirectionalLight3D.directional_shadow_fade_start]."

msgid "Constant for accessing [member shadow_normal_bias]."
msgstr "Константа для доступа к [member shadow_normal_bias]."

msgid "Constant for accessing [member shadow_bias]."
msgstr "Константа для доступа к [member shadow_bias]."

msgid ""
"Constant for accessing [member "
"DirectionalLight3D.directional_shadow_pancake_size]."
msgstr ""
"Константа для доступа к [member "
"DirectionalLight3D.directional_shadow_pancake_size]."

msgid "Constant for accessing [member shadow_opacity]."
msgstr "Константа для доступа к [member shadow_opacity]."

msgid "Constant for accessing [member shadow_blur]."
msgstr "Константа для доступа к [member shadow_blur]."

msgid "Constant for accessing [member shadow_transmittance_bias]."
msgstr "Константа для доступа к [member shadow_transmittance_bias]."

msgid ""
"Constant for accessing [member light_intensity_lumens] and [member "
"light_intensity_lux]. Only used when [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] is [code]true[/code]."
msgstr ""
"Константа для доступа к [member light_intensity_lumens] и [member "
"light_intensity_lux]. Используется только когда [member "
"ProjectSettings.rendering/lights_and_shadows/use_physical_light_units] имеет "
"значение [code]true[/code]."

msgid ""
"Light is ignored when baking. This is the fastest mode, but the light will "
"not be taken into account when baking global illumination. This mode should "
"generally be used for dynamic lights that change quickly, as the effect of "
"global illumination is less noticeable on those lights.\n"
"[b]Note:[/b] Hiding a light does [i]not[/i] affect baking [LightmapGI]. "
"Hiding a light will still affect baking [VoxelGI] and SDFGI (see [member "
"Environment.sdfgi_enabled])."
msgstr ""
"Свет игнорируется при запекании. Это самый быстрый режим, но свет не будет "
"учитываться при запекании глобального освещения. Этот режим обычно следует "
"использовать для динамических источников света, которые быстро меняются, так "
"как эффект глобального освещения на них менее заметен.\n"
"[b]Примечание:[/b] Скрытие источника света [i]не[/i] влияет на запекание "
"[LightmapGI]. Скрытие источника света все равно повлияет на запекание "
"[VoxelGI] и SDFGI (см. [member Environment.sdfgi_enabled])."

msgid ""
"Light is taken into account in static baking ([VoxelGI], [LightmapGI], SDFGI "
"([member Environment.sdfgi_enabled])). The light can be moved around or "
"modified, but its global illumination will not update in real-time. This is "
"suitable for subtle changes (such as flickering torches), but generally not "
"large changes such as toggling a light on and off.\n"
"[b]Note:[/b] The light is not baked in [LightmapGI] if [member editor_only] "
"is [code]true[/code]."
msgstr ""
"Свет учитывается при статическом запекании ([VoxelGI], [LightmapGI], SDFGI "
"([member Environment.sdfgi_enabled])). Свет можно перемещать или изменять, но "
"его глобальное освещение не будет обновляться в реальном времени. Это "
"подходит для незначительных изменений (например, мерцающих факелов), но, как "
"правило, не для больших изменений, таких как включение и выключение света.\n"
"[b]Примечание:[/b] Свет не запекается в [LightmapGI], если [member "
"editor_only] равен [code]true[/code]."

msgid ""
"Light is taken into account in dynamic baking ([VoxelGI] and SDFGI ([member "
"Environment.sdfgi_enabled]) only). The light can be moved around or modified "
"with global illumination updating in real-time. The light's global "
"illumination appearance will be slightly different compared to [constant "
"BAKE_STATIC]. This has a greater performance cost compared to [constant "
"BAKE_STATIC]. When using SDFGI, the update speed of dynamic lights is "
"affected by [member ProjectSettings.rendering/global_illumination/sdfgi/"
"frames_to_update_lights]."
msgstr ""
"Свет учитывается при динамическом запекании (только [VoxelGI] и SDFGI "
"([member Environment.sdfgi_enabled])). Свет можно перемещать или изменять с "
"обновлением глобального освещения в реальном времени. Внешний вид глобального "
"освещения света будет немного отличаться по сравнению с [constant "
"BAKE_STATIC]. Это имеет большую стоимость производительности по сравнению с "
"[constant BAKE_STATIC]. При использовании SDFGI скорость обновления "
"динамического освещения зависит от [member ProjectSettings.rendering/"
"global_illumination/sdfgi/frames_to_update_lights]."

msgid "Computes and stores baked lightmaps for fast global illumination."
msgstr ""
"Вычисляет и сохраняет запеченные карты освещения для быстрого глобального "
"освещения."

msgid ""
"The [LightmapGI] node is used to compute and store baked lightmaps. Lightmaps "
"are used to provide high-quality indirect lighting with very little light "
"leaking. [LightmapGI] can also provide rough reflections using spherical "
"harmonics if [member directional] is enabled. Dynamic objects can receive "
"indirect lighting thanks to [i]light probes[/i], which can be automatically "
"placed by setting [member generate_probes_subdiv] to a value other than "
"[constant GENERATE_PROBES_DISABLED]. Additional lightmap probes can also be "
"added by creating [LightmapProbe] nodes. The downside is that lightmaps are "
"fully static and cannot be baked in an exported project. Baking a "
"[LightmapGI] node is also slower compared to [VoxelGI].\n"
"[b]Procedural generation:[/b] Lightmap baking functionality is only available "
"in the editor. This means [LightmapGI] is not suited to procedurally "
"generated or user-built levels. For procedurally generated or user-built "
"levels, use [VoxelGI] or SDFGI instead (see [member "
"Environment.sdfgi_enabled]).\n"
"[b]Performance:[/b] [LightmapGI] provides the best possible run-time "
"performance for global illumination. It is suitable for low-end hardware "
"including integrated graphics and mobile devices.\n"
"[b]Note:[/b] Due to how lightmaps work, most properties only have a visible "
"effect once lightmaps are baked again.\n"
"[b]Note:[/b] Lightmap baking on [CSGShape3D]s and [PrimitiveMesh]es is not "
"supported, as these cannot store UV2 data required for baking.\n"
"[b]Note:[/b] If no custom lightmappers are installed, [LightmapGI] can only "
"be baked from devices that support the Forward+ or Mobile renderers.\n"
"[b]Note:[/b] The [LightmapGI] node only bakes light data for child nodes of "
"its parent. Nodes further up the hierarchy of the scene will not be baked."
msgstr ""
"Узел [LightmapGI] используется для вычисления и хранения запеченных карт "
"освещения. Карты освещения используются для обеспечения высококачественного "
"непрямого освещения с очень малой утечкой света. [LightmapGI] также может "
"обеспечивать грубые отражения с использованием сферических гармоник, если "
"включен [member directional]. Динамические объекты могут получать непрямое "
"освещение благодаря [i]световым зондам[/i], которые можно автоматически "
"размещать, устанавливая [member generate_probes_subdiv] на значение, отличное "
"от [constant GENERATE_PROBES_DISABLED]. Дополнительные зонды световых карт "
"также можно добавлять, создавая узлы [LightmapProbe]. Недостатком является "
"то, что световые карты полностью статичны и не могут быть запечены в "
"экспортированном проекте. Запекание узла [LightmapGI] также медленнее по "
"сравнению с [VoxelGI].\n"
"[b]Процедурная генерация:[/b] Функциональность запекания световых карт "
"доступна только в редакторе. Это означает, что [LightmapGI] не подходит для "
"процедурно сгенерированных или созданных пользователем уровней. Для "
"процедурно сгенерированных или созданных пользователем уровней используйте "
"[VoxelGI] или SDFGI (см. [member Environment.sdfgi_enabled]).\n"
"[b]Производительность:[/b] [LightmapGI] обеспечивает наилучшую возможную "
"производительность во время выполнения для глобального освещения. Подходит "
"для аппаратного обеспечения низкого уровня, включая интегрированную графику и "
"мобильные устройства.\n"
"[b]Примечание:[/b] Из-за особенностей работы карт освещения большинство "
"свойств имеют видимый эффект только после повторного запекания карт "
"освещения.\n"
"[b]Примечание:[/b] Запекание карт освещения на [CSGShape3D] и [PrimitiveMesh] "
"не поддерживается, так как они не могут хранить данные UV2, необходимые для "
"запекания.\n"
"[b]Примечание:[/b] Если не установлены пользовательские карты освещения, "
"[LightmapGI] можно запекать только с устройств, поддерживающих рендереры "
"Forward+ или Mobile.\n"
"[b]Примечание:[/b] Узел [LightmapGI] запекает только данные освещения для "
"дочерних узлов своего родителя. Узлы, расположенные выше по иерархии сцены, "
"не будут запекаться."

msgid "Using Lightmap global illumination"
msgstr "Использование глобального освещения Lightmap"

msgid ""
"The bias to use when computing shadows. Increasing [member bias] can fix "
"shadow acne on the resulting baked lightmap, but can introduce peter-panning "
"(shadows not connecting to their casters). Real-time [Light3D] shadows are "
"not affected by this [member bias] property."
msgstr ""
"Смещение, используемое при вычислении теней. Увеличение [member bias] может "
"исправить теневые угри на результирующей запеченной карте освещения, но может "
"привести к появлению Peter-Panning (тени, не соединяющиеся с их источниками). "
"На тени [Light3D] в реальном времени это свойство [member bias] не влияет."

msgid ""
"The energy multiplier for each bounce. Higher values will make indirect "
"lighting brighter. A value of [code]1.0[/code] represents physically accurate "
"behavior, but higher values can be used to make indirect lighting propagate "
"more visibly when using a low number of bounces. This can be used to speed up "
"bake times by lowering the number of [member bounces] then increasing [member "
"bounce_indirect_energy].\n"
"[b]Note:[/b] [member bounce_indirect_energy] only has an effect if [member "
"bounces] is set to a value greater than or equal to [code]1[/code]."
msgstr ""
"Множитель энергии для каждого отскока. Более высокие значения сделают "
"непрямое освещение ярче. Значение [code]1.0[/code] представляет физически "
"точное поведение, но более высокие значения можно использовать, чтобы сделать "
"непрямое освещение более заметным при использовании небольшого количества "
"отскоков. Это можно использовать для ускорения времени запекания, уменьшив "
"количество [member bounces], а затем увеличив [member "
"bounce_indirect_energy].\n"
"[b]Примечание:[/b] [member bounce_indirect_energy] имеет эффект только в том "
"случае, если для [member bounces] задано значение большее или равное [code]1[/"
"code]."

msgid ""
"Number of light bounces that are taken into account during baking. Higher "
"values result in brighter, more realistic lighting, at the cost of longer "
"bake times. If set to [code]0[/code], only environment lighting, direct light "
"and emissive lighting is baked."
msgstr ""
"Количество отражений света, которые учитываются при запекании. Более высокие "
"значения дают более яркое, реалистичное освещение за счет более длительного "
"времени запекания. Если установлено значение [code]0[/code], запекается "
"только окружающее освещение, прямой свет и испускаемое освещение."

msgid ""
"The [CameraAttributes] resource that specifies exposure levels to bake at. "
"Auto-exposure and non exposure properties will be ignored. Exposure settings "
"should be used to reduce the dynamic range present when baking. If exposure "
"is too high, the [LightmapGI] will have banding artifacts or may have over-"
"exposure artifacts."
msgstr ""
"Ресурс [CameraAttributes], который определяет уровни экспозиции для "
"запекания. Свойства автоматической экспозиции и отсутствия экспозиции будут "
"игнорироваться. Настройки экспозиции следует использовать для уменьшения "
"динамического диапазона, присутствующего при запекании. Если экспозиция "
"слишком высокая, [LightmapGI] будет иметь артефакты полос или может иметь "
"артефакты переэкспонирования."

msgid ""
"The distance in pixels from which the denoiser samples. Lower values preserve "
"more details, but may give blotchy results if the lightmap quality is not "
"high enough. Only effective if [member use_denoiser] is [code]true[/code] and "
"[member ProjectSettings.rendering/lightmapping/denoising/denoiser] is set to "
"JNLM."
msgstr ""
"Расстояние в пикселях, с которого берется образец шумоподавителя. Более "
"низкие значения сохраняют больше деталей, но могут давать неоднородные "
"результаты, если качество карты освещения недостаточно высокое. Эффективно "
"только если [member use_denoiser] равно [code]true[/code] и [member "
"ProjectSettings.rendering/lightmapping/denoising/denoiser] установлено в JNLM."

msgid ""
"The strength of denoising step applied to the generated lightmaps. Only "
"effective if [member use_denoiser] is [code]true[/code] and [member "
"ProjectSettings.rendering/lightmapping/denoising/denoiser] is set to JNLM."
msgstr ""
"Сила шага шумоподавления, применяемого к сгенерированным картам освещения. "
"Действует только если [member use_denoiser] имеет значение [code]true[/code] "
"и [member ProjectSettings.rendering/lightmapping/denoising/denoiser] имеет "
"значение JNLM."

msgid ""
"If [code]true[/code], bakes lightmaps to contain directional information as "
"spherical harmonics. This results in more realistic lighting appearance, "
"especially with normal mapped materials and for lights that have their direct "
"light baked ([member Light3D.light_bake_mode] set to [constant "
"Light3D.BAKE_STATIC] and with [member Light3D.editor_only] set to "
"[code]false[/code]). The directional information is also used to provide "
"rough reflections for static and dynamic objects. This has a small run-time "
"performance cost as the shader has to perform more work to interpret the "
"direction information from the lightmap. Directional lightmaps also take "
"longer to bake and result in larger file sizes.\n"
"[b]Note:[/b] The property's name has no relationship with "
"[DirectionalLight3D]. [member directional] works with all light types."
msgstr ""
"Если [code]true[/code], запекает карты освещения, чтобы они содержали "
"информацию о направлении в виде сферических гармоник. Это приводит к более "
"реалистичному внешнему виду освещения, особенно с материалами с картами "
"нормалей и для источников света, у которых запечен прямой свет ([member "
"Light3D.light_bake_mode] установлен на [constant Light3D.BAKE_STATIC] и с "
"[member Light3D.editor_only] установлен на [code]false[/code]). Информация о "
"направлении также используется для предоставления грубых отражений для "
"статических и динамических объектов. Это имеет небольшие затраты "
"производительности во время выполнения, так как шейдеру приходится выполнять "
"больше работы для интерпретации информации о направлении из карты освещения. "
"Направленные карты освещения также дольше запекаются и приводят к большему "
"размеру файла.\n"
"[b]Примечание:[/b] Имя свойства не имеет отношения к [DirectionalLight3D]. "
"[member directional] работает со всеми типами освещения."

msgid ""
"The color to use for environment lighting. Only effective if [member "
"environment_mode] is [constant ENVIRONMENT_MODE_CUSTOM_COLOR]."
msgstr ""
"Цвет, используемый для освещения окружающей среды. Действует только если "
"[member environment_mode] — [constant ENVIRONMENT_MODE_CUSTOM_COLOR]."

msgid ""
"The color multiplier to use for environment lighting. Only effective if "
"[member environment_mode] is [constant ENVIRONMENT_MODE_CUSTOM_COLOR]."
msgstr ""
"Множитель цвета для использования в освещении окружающей среды. Действует "
"только если [member environment_mode] имеет значение [constant "
"ENVIRONMENT_MODE_CUSTOM_COLOR]."

msgid ""
"The sky to use as a source of environment lighting. Only effective if [member "
"environment_mode] is [constant ENVIRONMENT_MODE_CUSTOM_SKY]."
msgstr ""
"Небо, используемое как источник освещения среды. Действует только если "
"[member environment_mode] имеет значение [constant "
"ENVIRONMENT_MODE_CUSTOM_SKY]."

msgid "The environment mode to use when baking lightmaps."
msgstr "Режим среды, используемый при запекании карт освещения."

msgid ""
"The level of subdivision to use when automatically generating "
"[LightmapProbe]s for dynamic object lighting. Higher values result in more "
"accurate indirect lighting on dynamic objects, at the cost of longer bake "
"times and larger file sizes.\n"
"[b]Note:[/b] Automatically generated [LightmapProbe]s are not visible as "
"nodes in the Scene tree dock, and cannot be modified this way after they are "
"generated.\n"
"[b]Note:[/b] Regardless of [member generate_probes_subdiv], direct lighting "
"on dynamic objects is always applied using [Light3D] nodes in real-time."
msgstr ""
"Уровень подразделения, используемый при автоматической генерации "
"[LightmapProbe] для динамического освещения объектов. Более высокие значения "
"приводят к более точному непрямому освещению динамических объектов за счет "
"более длительного времени запекания и большего размера файла.\n"
"[b]Примечание:[/b] Автоматически сгенерированные [LightmapProbe] не "
"отображаются как узлы в доке дерева сцены и не могут быть изменены таким "
"образом после генерации.\n"
"[b]Примечание:[/b] Независимо от [member generate_probes_subdiv], прямое "
"освещение динамических объектов всегда применяется с использованием узлов "
"[Light3D] в реальном времени."

msgid "If [code]true[/code], ignore environment lighting when baking lightmaps."
msgstr ""
"Если [code]true[/code], игнорировать окружающее освещение при запекании карт "
"освещения."

msgid ""
"The [LightmapGIData] associated to this [LightmapGI] node. This resource is "
"automatically created after baking, and is not meant to be created manually."
msgstr ""
"[LightmapGIData], связанный с этим узлом [LightmapGI]. Этот ресурс "
"автоматически создается после запекания и не предназначен для создания "
"вручную."

msgid ""
"The maximum texture size for the generated texture atlas. Higher values will "
"result in fewer slices being generated, but may not work on all hardware as a "
"result of hardware limitations on texture sizes. Leave [member "
"max_texture_size] at its default value of [code]16384[/code] if unsure."
msgstr ""
"Максимальный размер текстуры для сгенерированного атласа текстур. Более "
"высокие значения приведут к генерации меньшего количества срезов, но могут не "
"работать на всех аппаратных средствах из-за аппаратных ограничений на размеры "
"текстур. Оставьте [member max_texture_size] в значении по умолчанию "
"[code]16384[/code], если не уверены."

msgid ""
"The quality preset to use when baking lightmaps. This affects bake times, but "
"output file sizes remain mostly identical across quality levels.\n"
"To further speed up bake times, decrease [member bounces], disable [member "
"use_denoiser] and/or decrease [member texel_scale].\n"
"To further increase quality, enable [member supersampling] and/or increase "
"[member texel_scale]."
msgstr ""
"Предустановка качества для использования при запекании карт освещения. Это "
"влияет на время запекания, но размеры выходных файлов остаются в основном "
"одинаковыми на всех уровнях качества.\n"
"Чтобы еще больше ускорить время запекания, уменьшите [member bounces], "
"отключите [member use_denoiser] и/или уменьшите [member texel_scale].\n"
"Чтобы еще больше повысить качество, включите [member supersampling] и/или "
"увеличьте [member texel_scale]."

msgid ""
"The shadowmasking policy to use for directional shadows on static objects "
"that are baked with this [LightmapGI] instance.\n"
"Shadowmasking allows [DirectionalLight3D] nodes to cast shadows even outside "
"the range defined by their [member "
"DirectionalLight3D.directional_shadow_max_distance] property. This is done by "
"baking a texture that contains a shadowmap for the directional light, then "
"using this texture according to the current shadowmask mode.\n"
"[b]Note:[/b] The shadowmask texture is only created if [member "
"shadowmask_mode] is not [constant LightmapGIData.SHADOWMASK_MODE_NONE]. To "
"see a difference, you need to bake lightmaps again after switching from "
"[constant LightmapGIData.SHADOWMASK_MODE_NONE] to any other mode."
msgstr ""
"Политика маскировки теней, используемая для направленных теней на статических "
"объектах, запеченных с этим экземпляром [LightmapGI].\n"
"Маскировка теней позволяет узлам [DirectionalLight3D] отбрасывать тени даже "
"за пределами диапазона, определенного их свойством [member "
"DirectionalLight3D.directional_shadow_max_distance]. Это делается путем "
"запекания текстуры, содержащей карту теней для направленного света, а затем "
"использования этой текстуры в соответствии с текущим режимом маски теней.\n"
"[b]Примечание:[/b] Текстура маски теней создается только в том случае, если "
"[member shadowmask_mode] не является [constant "
"LightmapGIData.SHADOWMASK_MODE_NONE]. Чтобы увидеть разницу, вам нужно снова "
"запечь карты освещения после переключения с [constant "
"LightmapGIData.SHADOWMASK_MODE_NONE] на любой другой режим."

msgid ""
"If [code]true[/code], lightmaps are baked with the texel scale multiplied "
"with [member supersampling_factor] and downsampled before saving the lightmap "
"(so the effective texel density is identical to having supersampling "
"disabled).\n"
"Supersampling provides increased lightmap quality with less noise, smoother "
"shadows and better shadowing of small-scale features in objects. However, it "
"may result in significantly increased bake times and memory usage while "
"baking lightmaps. Padding is automatically adjusted to avoid increasing light "
"leaking."
msgstr ""
"Если [code]true[/code], карты освещения запекаются с масштабом текселя, "
"умноженным на [member supersampling_factor], и подвергаются пониженной "
"выборке перед сохранением карты освещения (поэтому эффективная плотность "
"текселя идентична отключенной суперсэмплировке).\n"
"Суперсэмплировка обеспечивает повышенное качество карты освещения с меньшим "
"шумом, более плавными тенями и лучшим затенением мелкомасштабных особенностей "
"объектов. Однако это может привести к значительному увеличению времени "
"запекания и использования памяти при запекании карт освещения. Заполнение "
"автоматически регулируется, чтобы избежать увеличения утечки света."

msgid ""
"The factor by which the texel density is multiplied for supersampling. For "
"best results, use an integer value. While fractional values are allowed, they "
"can result in increased light leaking and a blurry lightmap.\n"
"Higher values may result in better quality, but also increase bake times and "
"memory usage while baking.\n"
"See [member supersampling] for more information."
msgstr ""
"Коэффициент, на который умножается плотность текселей )texel( для "
"суперсэмплинга )supersampling(. Для достижения наилучших результатов "
"используйте целочисленное значение. Хотя дробные значения допускаются, они "
"могут привести к увеличению утечки света и размытости карты освещения.\n"
"Более высокие значения могут привести к лучшему качеству, но также "
"увеличивают время запекания и использование памяти при запекании.\n"
"См. [member supersampling] для получения дополнительной информации."

msgid ""
"Scales the lightmap texel density of all meshes for the current bake. This is "
"a multiplier that builds upon the existing lightmap texel size defined in "
"each imported 3D scene, along with the per-mesh density multiplier (which is "
"designed to be used when the same mesh is used at different scales). Lower "
"values will result in faster bake times.\n"
"For example, doubling [member texel_scale] doubles the lightmap texture "
"resolution for all objects [i]on each axis[/i], so it will [i]quadruple[/i] "
"the texel count."
msgstr ""
"Масштабирует плотность текселей карты освещения всех сеток для текущего "
"запекания. Это множитель, который строится на существующем размере текселей "
"карты освещения, определенном в каждой импортированной 3D-сцене, вместе с "
"множителем плотности для каждой сетки (который предназначен для "
"использования, когда одна и та же сетка используется в разных масштабах). "
"Более низкие значения приведут к более быстрому времени запекания.\n"
"Например, удвоение [member texel_scale] удваивает разрешение текстуры карты "
"освещения для всех объектов [i]на каждой оси[/i], поэтому это [i]учетверит[/"
"i] количество текселей."

msgid ""
"If [code]true[/code], uses a GPU-based denoising algorithm on the generated "
"lightmap. This eliminates most noise within the generated lightmap at the "
"cost of longer bake times. File sizes are generally not impacted "
"significantly by the use of a denoiser, although lossless compression may do "
"a better job at compressing a denoised image."
msgstr ""
"Если [code]true[/code], используется алгоритм шумоподавления на основе "
"графического процессора на сгенерированной карте освещения. Это устраняет "
"большую часть шума в сгенерированной карте освещения за счет более "
"длительного времени запекания. Размеры файлов, как правило, не сильно зависят "
"от использования шумоподавителя, хотя сжатие без потерь может лучше сжимать "
"изображение с шумоподавлением."

msgid ""
"If [code]true[/code], a texture with the lighting information will be "
"generated to speed up the generation of indirect lighting at the cost of some "
"accuracy. The geometry might exhibit extra light leak artifacts when using "
"low resolution lightmaps or UVs that stretch the lightmap significantly "
"across surfaces. Leave [member use_texture_for_bounces] at its default value "
"of [code]true[/code] if unsure.\n"
"[b]Note:[/b] [member use_texture_for_bounces] only has an effect if [member "
"bounces] is set to a value greater than or equal to [code]1[/code]."
msgstr ""
"Если [code]true[/code], текстура с информацией об освещении будет "
"сгенерирована для ускорения генерации непрямого освещения за счет некоторой "
"потери точности. Геометрия может демонстрировать дополнительные артефакты "
"утечки света при использовании карт освещения с низким разрешением или UV, "
"которые значительно растягивают карту освещения по поверхностям. Оставьте "
"[member use_texture_for_bounces] со значением по умолчанию [code]true[/code], "
"если не уверены.\n"
"[b]Примечание:[/b] [member use_texture_for_bounces] имеет эффект только в том "
"случае, если [member bounces] установлен на значение большее или равное "
"[code]1[/code]."

msgid ""
"Low bake quality (fastest bake times). The quality of this preset can be "
"adjusted by changing [member ProjectSettings.rendering/lightmapping/"
"bake_quality/low_quality_ray_count] and [member ProjectSettings.rendering/"
"lightmapping/bake_quality/low_quality_probe_ray_count]."
msgstr ""
"Низкое качество запекания (самое быстрое время запекания). Качество этого "
"пресета можно настроить, изменив [member ProjectSettings.rendering/"
"lightmapping/bake_quality/low_quality_ray_count] и [member "
"ProjectSettings.rendering/lightmapping/bake_quality/"
"low_quality_probe_ray_count]."

msgid ""
"Medium bake quality (fast bake times). The quality of this preset can be "
"adjusted by changing [member ProjectSettings.rendering/lightmapping/"
"bake_quality/medium_quality_ray_count] and [member ProjectSettings.rendering/"
"lightmapping/bake_quality/medium_quality_probe_ray_count]."
msgstr ""
"Среднее качество запекания (быстрое время запекания). Качество этого пресета "
"можно настроить, изменив [member ProjectSettings.rendering/lightmapping/"
"bake_quality/medium_quality_ray_count] и [member ProjectSettings.rendering/"
"lightmapping/bake_quality/medium_quality_probe_ray_count]."

msgid ""
"High bake quality (slow bake times). The quality of this preset can be "
"adjusted by changing [member ProjectSettings.rendering/lightmapping/"
"bake_quality/high_quality_ray_count] and [member ProjectSettings.rendering/"
"lightmapping/bake_quality/high_quality_probe_ray_count]."
msgstr ""
"Высокое качество запекания (медленное время запекания). Качество этого "
"пресета можно настроить, изменив [member ProjectSettings.rendering/"
"lightmapping/bake_quality/high_quality_ray_count] и [member "
"ProjectSettings.rendering/lightmapping/bake_quality/"
"high_quality_probe_ray_count]."

msgid ""
"Highest bake quality (slowest bake times). The quality of this preset can be "
"adjusted by changing [member ProjectSettings.rendering/lightmapping/"
"bake_quality/ultra_quality_ray_count] and [member ProjectSettings.rendering/"
"lightmapping/bake_quality/ultra_quality_probe_ray_count]."
msgstr ""
"Высочайшее качество запекания (самое медленное время запекания). Качество "
"этого пресета можно настроить, изменив [member ProjectSettings.rendering/"
"lightmapping/bake_quality/ultra_quality_ray_count] и [member "
"ProjectSettings.rendering/lightmapping/bake_quality/"
"ultra_quality_probe_ray_count]."

msgid "Don't generate lightmap probes for lighting dynamic objects."
msgstr ""
"Не создавайте зонды карты освещения для освещения динамических объектов."

msgid "Lowest level of subdivision (fastest bake times, smallest file sizes)."
msgstr ""
"Самый низкий уровень подразделения (самое быстрое время запекания, наименьшие "
"размеры файлов)."

msgid "Low level of subdivision (fast bake times, small file sizes)."
msgstr ""
"Низкий уровень подразделения (быстрое время запекания, небольшой размер "
"файлов)."

msgid "High level of subdivision (slow bake times, large file sizes)."
msgstr ""
"Высокий уровень разбиения (медленное время запекания, большие размеры файлов)."

msgid "Highest level of subdivision (slowest bake times, largest file sizes)."
msgstr ""
"Самый высокий уровень подразделения (самое медленное время запекания, самые "
"большие размеры файлов)."

msgid "Lightmap baking was successful."
msgstr "Запекание карты освещения прошло успешно."

msgid ""
"Lightmap baking failed because the root node for the edited scene could not "
"be accessed."
msgstr ""
"Запекание карты освещения не удалось, поскольку не удалось получить доступ к "
"корневому узлу редактируемой сцены."

msgid ""
"Lightmap baking failed as the lightmap data resource is embedded in a foreign "
"resource."
msgstr ""
"Запекание карты освещения не удалось, так как ресурс данных карты освещения "
"встроен в сторонний ресурс."

msgid ""
"Lightmap baking failed as there is no lightmapper available in this Godot "
"build."
msgstr ""
"Запекание карты освещения не удалось, так как в этой сборке Godot отсутствует "
"модуль карты освещения."

msgid ""
"Lightmap baking failed as the [LightmapGIData] save path isn't configured in "
"the resource."
msgstr ""
"Не удалось выполнить запекание карты освещения, так как путь сохранения "
"[LightmapGIData] не настроен в ресурсе."

msgid ""
"Lightmap baking failed as there are no meshes whose [member "
"GeometryInstance3D.gi_mode] is [constant GeometryInstance3D.GI_MODE_STATIC] "
"and with valid UV2 mapping in the current scene. You may need to select 3D "
"scenes in the Import dock and change their global illumination mode "
"accordingly."
msgstr ""
"Запекание карты освещения не удалось, так как нет сеток, у которых [member "
"GeometryInstance3D.gi_mode] является [constant "
"GeometryInstance3D.GI_MODE_STATIC] и с допустимым отображением UV2 в текущей "
"сцене. Возможно, вам придется выбрать 3D-сцены в доке импорта и изменить их "
"глобальный режим освещения соответствующим образом."

msgid ""
"Lightmap baking failed as the lightmapper failed to analyze some of the "
"meshes marked as static for baking."
msgstr ""
"Запекание карты освещения не удалось, так как средство создания карты "
"освещения не смогло проанализировать некоторые сетки, отмеченные как "
"статические для запекания."

msgid ""
"Lightmap baking failed as the resulting image couldn't be saved or imported "
"by Godot after it was saved."
msgstr ""
"Запекание карты освещения не удалось, поскольку полученное изображение не "
"удалось сохранить или импортировать в Godot после сохранения."

msgid ""
"The user aborted the lightmap baking operation (typically by clicking the "
"[b]Cancel[/b] button in the progress dialog)."
msgstr ""
"Пользователь прервал операцию запекания карты освещения (обычно нажав кнопку "
"[b]Отмена[/b] в диалоговом окне хода выполнения)."

msgid ""
"Lightmap baking failed as the maximum texture size is too small to fit some "
"of the meshes marked for baking."
msgstr ""
"Запекание карты освещения не удалось, так как максимальный размер текстуры "
"слишком мал для некоторых сеток, отмеченных для запекания."

msgid "Lightmap baking failed as the lightmap is too small."
msgstr ""
"Запекание карты освещения не удалось, так как карта освещения слишком мала."

msgid "Lightmap baking failed as the lightmap was unable to fit into an atlas."
msgstr ""
"Запекание карты освещения не удалось, поскольку карта освещения не смогла "
"поместиться в атлас."

msgid "Ignore environment lighting when baking lightmaps."
msgstr "Игнорируйте окружающее освещение при запекании световых карт."

msgid ""
"Use the scene's environment lighting when baking lightmaps.\n"
"[b]Note:[/b] If baking lightmaps in a scene with no [WorldEnvironment] node, "
"this will act like [constant ENVIRONMENT_MODE_DISABLED]. The editor's preview "
"sky and sun is [i]not[/i] taken into account by [LightmapGI] when baking "
"lightmaps."
msgstr ""
"Используйте освещение среды сцены при запекании карт освещения.\n"
"[b]Примечание:[/b] Если запекать карты освещения в сцене без узла "
"[WorldEnvironment], это будет действовать как [constant "
"ENVIRONMENT_MODE_DISABLED]. Предварительный просмотр неба и солнца редактора "
"[i]не[/i] учитывается [LightmapGI] при запекании карт освещения."

msgid ""
"Use [member environment_custom_sky] as a source of environment lighting when "
"baking lightmaps."
msgstr ""
"Используйте [member environment_custom_sky] в качестве источника освещения "
"окружающей среды при запекании карт освещения."

msgid ""
"Use [member environment_custom_color] multiplied by [member "
"environment_custom_energy] as a constant source of environment lighting when "
"baking lightmaps."
msgstr ""
"Используйте [member environment_custom_color], умноженный на [member "
"environment_custom_energy], в качестве постоянного источника освещения "
"окружающей среды при запекании карт освещения."

msgid "Contains baked lightmap and dynamic object probe data for [LightmapGI]."
msgstr ""
"Содержит запеченную карту освещения и данные динамического зондирования "
"объектов для [LightmapGI]."

msgid ""
"[LightmapGIData] contains baked lightmap and dynamic object probe data for "
"[LightmapGI]. It is replaced every time lightmaps are baked in [LightmapGI]."
msgstr ""
"[LightmapGIData] содержит запеченную карту освещения и данные динамического "
"зондирования объектов для [LightmapGI]. Он заменяется каждый раз, когда карты "
"освещения запекаются в [LightmapGI]."

msgid "Adds an object that is considered baked within this [LightmapGIData]."
msgstr "Добавляет объект, который считается запеченным в этом [LightmapGIData]."

msgid ""
"Clear all objects that are considered baked within this [LightmapGIData]."
msgstr "Добавляет объект, который считается запеченным в этом [LightmapGIData]."

msgid ""
"Returns the number of objects that are considered baked within this "
"[LightmapGIData]."
msgstr ""
"Возвращает количество объектов, которые считаются запеченными в этом "
"[LightmapGIData]."

msgid "Returns the [NodePath] of the baked object at index [param user_idx]."
msgstr "Возвращает [NodePath] запеченного объекта по индексу [param user_idx]."

msgid ""
"If [code]true[/code], lightmaps were baked with directional information. See "
"also [member LightmapGI.directional]."
msgstr ""
"Если [code]true[/code], карты освещения запекались с информацией о "
"направлении. См. также [member LightmapGI.directional]."

msgid ""
"If [param uses_spherical_harmonics] is [code]true[/code], tells the engine to "
"treat the lightmap data as if it was baked with directional information.\n"
"[b]Note:[/b] Changing this value on already baked lightmaps will not cause "
"them to be baked again. This means the material appearance will look "
"incorrect until lightmaps are baked again, in which case the value set here "
"is discarded as the entire [LightmapGIData] resource is replaced by the "
"lightmapper."
msgstr ""
"Если [param uses_spherical_harmonics] равен [code]true[/code], то движок "
"обрабатывает данные карты освещения так, как будто они были запечены с "
"информацией о направлении.\n"
"[b]Примечание:[/b] Изменение этого значения на уже запеченных картах "
"освещения не приведет к их повторному запеканию. Это означает, что внешний "
"вид материала будет выглядеть некорректно, пока карты освещения не будут "
"запечены снова, в этом случае заданное здесь значение отбрасывается, "
"поскольку весь ресурс [LightmapGIData] заменяется картографом освещения."

msgid ""
"The lightmap atlas can now contain multiple textures. See [member "
"lightmap_textures]."
msgstr ""
"Атлас карты освещения теперь может содержать несколько текстур. См. [member "
"lightmap_textures]."

msgid "The lightmap atlas texture generated by the lightmapper."
msgstr "Текстура атласа световой карты, созданная с помощью lightmapper."

msgid "The lightmap atlas textures generated by the lightmapper."
msgstr "Текстуры атласа световых карт, созданные с помощью lightmapper."

msgid "The shadowmask atlas textures generated by the lightmapper."
msgstr ""
"Текстуры атласа теневой маски, созданные с помощью светового картографа."

msgid ""
"Shadowmasking is disabled. No shadowmask texture will be created when baking "
"lightmaps. Existing shadowmask textures will be removed during baking."
msgstr ""
"Shadowmasking отключен. При запекании световых карт не будет создана текстура "
"shadowmask. Существующие текстуры shadowmask будут удалены при запекании."

msgid ""
"Shadowmasking is enabled. Directional shadows that are outside the [member "
"DirectionalLight3D.directional_shadow_max_distance] will be rendered using "
"the shadowmask texture. Shadows that are inside the range will be rendered "
"using real-time shadows exclusively. This mode allows for more precise real-"
"time shadows up close, without the potential \"smearing\" effect that can "
"occur when using lightmaps with a high texel size. The downside is that when "
"the camera moves fast, the transition between the real-time light and "
"shadowmask can be obvious. Also, objects that only have shadows baked in the "
"shadowmask (and no real-time shadows) won't display any shadows up close."
msgstr ""
"Shadowmasking включен. Направленные тени, которые находятся за пределами "
"[member DirectionalLight3D.directional_shadow_max_distance], будут "
"визуализированы с использованием текстуры shadowmask. Тени, которые находятся "
"внутри диапазона, будут визуализированы исключительно с использованием теней "
"в реальном времени. Этот режим позволяет получать более точные тени в "
"реальном времени вблизи, без потенциального эффекта «размазывания», который "
"может возникнуть при использовании карт освещения с большим размером "
"текселя )texel (. Недостатком является то, что при быстром движении камеры "
"переход между освещением в реальном времени и теневой маской может быть "
"очевиден. Кроме того, объекты, у которых есть только тени, запеченные в "
"теневой маске (и нет теней в реальном времени), не будут отображать никаких "
"теней вблизи."

msgid ""
"Shadowmasking is enabled. Directional shadows will be rendered with real-time "
"shadows overlaid on top of the shadowmask texture. This mode makes for "
"smoother shadow transitions when the camera moves fast, at the cost of a "
"potential smearing effect for directional shadows that are up close (due to "
"the real-time shadow being mixed with a low-resolution shadowmask). Objects "
"that only have shadows baked in the shadowmask (and no real-time shadows) "
"will keep their shadows up close."
msgstr ""
"Shadowmasking включен. Направленные тени будут визуализироваться с тенями в "
"реальном времени, наложенными поверх текстуры теневой маски. Этот режим "
"обеспечивает более плавные переходы теней при быстром движении камеры за счет "
"потенциального эффекта размазывания направленных теней, которые находятся "
"близко (из-за того, что тень в реальном времени смешивается с теневой маской "
"низкого разрешения). Объекты, у которых есть только тени, запеченные в "
"теневой маске (и нет теней в реальном времени), будут сохранять свои тени "
"близко."

msgid "Abstract class extended by lightmappers, for use in [LightmapGI]."
msgstr ""
"Абстрактный класс, расширенный lightmappers, для использования в [LightmapGI]."

msgid ""
"This class should be extended by custom lightmapper classes. Lightmappers can "
"then be used with [LightmapGI] to provide fast baked global illumination in "
"3D.\n"
"Godot contains a built-in GPU-based lightmapper [LightmapperRD] that uses "
"compute shaders, but custom lightmappers can be implemented by C++ modules."
msgstr ""
"Этот класс должен быть расширен пользовательскими классами lightmapper. "
"Lightmapper затем можно использовать с [LightmapGI] для обеспечения быстрого "
"запеченного глобального освещения в 3D.\n"
"Godot содержит встроенный lightmapper на основе GPU [LightmapperRD], который "
"использует вычислительные шейдеры, но пользовательские lightmapper могут быть "
"реализованы с помощью модулей C++."

msgid "The built-in GPU-based lightmapper for use with [LightmapGI]."
msgstr ""
"Встроенный модуль отображения освещения на базе графического процессора для "
"использования с [LightmapGI]."

msgid ""
"LightmapperRD (\"RD\" stands for [RenderingDevice]) is the built-in GPU-based "
"lightmapper for use with [LightmapGI]. On most dedicated GPUs, it can bake "
"lightmaps much faster than most CPU-based lightmappers. LightmapperRD uses "
"compute shaders to bake lightmaps, so it does not require CUDA or OpenCL "
"libraries to be installed to be usable.\n"
"[b]Note:[/b] Only usable when using the RenderingDevice backend (Forward+ or "
"Mobile renderers), not Compatibility."
msgstr ""
"LightmapperRD («RD» означает [RenderingDevice]) — встроенный графопроцессор "
"для использования с [LightmapGI]. На большинстве специализированных "
"графических процессоров он может запекать карты освещения гораздо быстрее, "
"чем большинство графопроцессоров на базе ЦП. LightmapperRD использует "
"вычислительные шейдеры для запекания карт освещения, поэтому для его "
"использования не требуется установка библиотек CUDA или OpenCL.\n"
"[b]Примечание:[/b] Можно использовать только при использовании бэкэнда "
"RenderingDevice (рендеры Forward+ или Mobile), а не совместимости."

msgid ""
"Represents a single manually placed probe for dynamic object lighting with "
"[LightmapGI]."
msgstr ""
"Представляет собой одиночный вручную размещенный зонд для динамического "
"освещения объекта с помощью [LightmapGI]."

msgid ""
"[LightmapProbe] represents the position of a single manually placed probe for "
"dynamic object lighting with [LightmapGI]. Lightmap probes affect the "
"lighting of [GeometryInstance3D]-derived nodes that have their [member "
"GeometryInstance3D.gi_mode] set to [constant "
"GeometryInstance3D.GI_MODE_DYNAMIC].\n"
"Typically, [LightmapGI] probes are placed automatically by setting [member "
"LightmapGI.generate_probes_subdiv] to a value other than [constant "
"LightmapGI.GENERATE_PROBES_DISABLED]. By creating [LightmapProbe] nodes "
"before baking lightmaps, you can add more probes in specific areas for "
"greater detail, or disable automatic generation and rely only on manually "
"placed probes instead.\n"
"[b]Note:[/b] [LightmapProbe] nodes that are placed after baking lightmaps are "
"ignored by dynamic objects. You must bake lightmaps again after creating or "
"modifying [LightmapProbe]s for the probes to be effective."
msgstr ""
"[LightmapProbe] представляет положение одного вручную размещенного зонда для "
"динамического освещения объекта с помощью [LightmapGI]. Зонды карты освещения "
"влияют на освещение узлов, производных от [GeometryInstance3D], у которых "
"[member GeometryInstance3D.gi_mode] установлен на [constant "
"GeometryInstance3D.GI_MODE_DYNAMIC].\n"
"Обычно зонды [LightmapGI] размещаются автоматически путем установки [member "
"LightmapGI.generate_probes_subdiv] на значение, отличное от [constant "
"LightmapGI.GENERATE_PROBES_DISABLED]. Создав узлы [LightmapProbe] перед "
"запеканием карт освещения, вы можете добавить больше зондов в определенных "
"областях для большей детализации или отключить автоматическую генерацию и "
"вместо этого полагаться только на зонды, размещенные вручную.\n"
"[b]Примечание:[/b] Узлы [LightmapProbe], размещенные после запекания карт "
"освещения, игнорируются динамическими объектами. После создания или изменения "
"[LightmapProbe] необходимо заново запечь карты освещения, чтобы зонды были "
"эффективными."

msgid "Occludes light cast by a Light2D, casting shadows."
msgstr "Закрывает свет, отбрасываемый Light2D, отбрасывая тени."

msgid ""
"Occludes light cast by a Light2D, casting shadows. The LightOccluder2D must "
"be provided with an [OccluderPolygon2D] in order for the shadow to be "
"computed."
msgstr ""
"Закрывает свет, отбрасываемый Light2D, отбрасывая тени. LightOccluder2D "
"должен быть снабжен [OccluderPolygon2D] для вычисления тени."

msgid "The [OccluderPolygon2D] used to compute the shadow."
msgstr "[OccluderPolygon2D] используется для вычисления тени."

msgid ""
"The LightOccluder2D's occluder light mask. The LightOccluder2D will cast "
"shadows only from Light2D(s) that have the same light mask(s)."
msgstr ""
"Маска окклюдера LightOccluder2D. LightOccluder2D будет отбрасывать тени "
"только от Light2D, имеющих такую же маску(и) освещения."

msgid ""
"If enabled, the occluder will be part of a real-time generated signed "
"distance field that can be used in custom shaders."
msgstr ""
"Если включено, окклюдер станет частью генерируемого в реальном времени поля "
"расстояния со знаком, которое можно использовать в пользовательских шейдерах."

msgid "A 2D polyline that can optionally be textured."
msgstr "Двумерная полилиния, которую при желании можно текстурировать."

msgid ""
"This node draws a 2D polyline, i.e. a shape consisting of several points "
"connected by segments. [Line2D] is not a mathematical polyline, i.e. the "
"segments are not infinitely thin. It is intended for rendering and it can be "
"colored and optionally textured.\n"
"[b]Warning:[/b] Certain configurations may be impossible to draw nicely, such "
"as very sharp angles. In these situations, the node uses fallback drawing "
"logic to look decent.\n"
"[b]Note:[/b] [Line2D] is drawn using a 2D mesh."
msgstr ""
"Этот узел рисует 2D-полилинию, т. е. фигуру, состоящую из нескольких точек, "
"соединенных сегментами. [Line2D] не является математической полилинией, т. е. "
"сегменты не бесконечно тонкие. Он предназначен для рендеринга и может быть "
"окрашен и опционально текстурирован.\n"
"[b]Предупреждение:[/b] Некоторые конфигурации может быть невозможно "
"нарисовать красиво, например, очень острые углы. В таких ситуациях узел "
"использует резервную логику рисования, чтобы выглядеть прилично.\n"
"[b]Примечание:[/b] [Line2D] рисуется с использованием 2D-сетки."

msgid ""
"Adds a point with the specified [param position] relative to the polyline's "
"own position. If no [param index] is provided, the new point will be added to "
"the end of the points array.\n"
"If [param index] is given, the new point is inserted before the existing "
"point identified by index [param index]. The indices of the points after the "
"new point get increased by 1. The provided [param index] must not exceed the "
"number of existing points in the polyline. See [method get_point_count]."
msgstr ""
"Добавляет точку с указанным [param position] относительно собственного "
"положения полилинии. Если [param index] не указан, новая точка будет "
"добавлена в конец массива точек.\n"
"Если указан [param index], новая точка вставляется перед существующей точкой, "
"идентифицированной индексом [param index]. Индексы точек после новой точки "
"увеличиваются на 1. Предоставленный [param index] не должен превышать "
"количество существующих точек в полилинии. См. [method get_point_count]."

msgid "Removes all points from the polyline, making it empty."
msgstr "Удаляет все точки из полилинии, делая ее пустой."

msgid "Returns the number of points in the polyline."
msgstr "Возвращает количество точек в полилинии."

msgid "Returns the position of the point at index [param index]."
msgstr "Возвращает положение точки с индексом [param index]."

msgid "Removes the point at index [param index] from the polyline."
msgstr "Удаляет точку с индексом [param index] из полилинии."

msgid ""
"Overwrites the position of the point at the given [param index] with the "
"supplied [param position]."
msgstr ""
"Заменяет позицию точки с указанным [param index] на предоставленную [param "
"position]."

msgid ""
"If [code]true[/code], the polyline's border will be anti-aliased.\n"
"[b]Note:[/b] [Line2D] is not accelerated by batching when being anti-aliased."
msgstr ""
"Если [code]true[/code], граница полилинии будет сглажена.\n"
"[b]Примечание:[/b] [Line2D] не ускоряется пакетированием при сглаживании."

msgid ""
"The style of the beginning of the polyline, if [member closed] is "
"[code]false[/code]."
msgstr "Стиль начала полилинии, если [member closed] равен [code]false[/code]."

msgid ""
"If [code]true[/code] and the polyline has more than 2 points, the last point "
"and the first one will be connected by a segment.\n"
"[b]Note:[/b] The shape of the closing segment is not guaranteed to be "
"seamless if a [member width_curve] is provided.\n"
"[b]Note:[/b] The joint between the closing segment and the first segment is "
"drawn first and it samples the [member gradient] and the [member width_curve] "
"at the beginning. This is an implementation detail that might change in a "
"future version."
msgstr ""
"Если [code]true[/code] и полилиния имеет более 2 точек, последняя точка и "
"первая будут соединены сегментом.\n"
"[b]Примечание:[/b] Форма замыкающего сегмента не гарантируется бесшовной, "
"если указан [member width_curve].\n"
"[b]Примечание:[/b] Стык между замыкающим сегментом и первым сегментом "
"рисуется первым, и он выбирает [member gradient] и [member width_curve] в "
"начале. Это деталь реализации, которая может измениться в будущей версии."

msgid "The color of the polyline. Will not be used if a gradient is set."
msgstr "Цвет полилинии. Не будет использоваться, если задан градиент."

msgid ""
"The style of the end of the polyline, if [member closed] is [code]false[/"
"code]."
msgstr ""
"Стиль окончания полилинии, если [member closed] равен [code]false[/code]."

msgid ""
"The gradient is drawn through the whole line from start to finish. The "
"[member default_color] will not be used if this property is set."
msgstr ""
"Градиент рисуется по всей линии от начала до конца. [member default_color] не "
"будет использоваться, если это свойство установлено."

msgid "The style of the connections between segments of the polyline."
msgstr "Стиль соединений между сегментами полилинии."

msgid ""
"The points of the polyline, interpreted in local 2D coordinates. Segments are "
"drawn between the adjacent points in this array."
msgstr ""
"Точки полилинии, интерпретированные в локальных 2D-координатах. Сегменты "
"рисуются между соседними точками в этом массиве."

msgid ""
"The smoothness used for rounded joints and caps. Higher values result in "
"smoother corners, but are more demanding to render and update."
msgstr ""
"Гладкость, используемая для закругленных соединений и крышек. Более высокие "
"значения приводят к более гладким углам, но более требовательны к "
"визуализации и обновлению."

msgid ""
"Determines the miter limit of the polyline. Normally, when [member "
"joint_mode] is set to [constant LINE_JOINT_SHARP], sharp angles fall back to "
"using the logic of [constant LINE_JOINT_BEVEL] joints to prevent very long "
"miters. Higher values of this property mean that the fallback to a bevel "
"joint will happen at sharper angles."
msgstr ""
"Определяет предел скоса полилинии. Обычно, когда [member joint_mode] "
"установлен на [constant LINE_JOINT_SHARP], острые углы возвращаются к "
"использованию логики соединений [constant LINE_JOINT_BEVEL] для "
"предотвращения слишком длинных скосов. Более высокие значения этого свойства "
"означают, что возврат к скошенному соединению произойдет при более острых "
"углах."

msgid ""
"The texture used for the polyline. Uses [member texture_mode] for drawing "
"style."
msgstr ""
"Текстура, используемая для полилинии. Использует [member texture_mode] для "
"стиля рисования."

msgid "The style to render the [member texture] of the polyline."
msgstr "Стиль для визуализации [member texture] полилинии."

msgid "The polyline's width."
msgstr "Ширина полилинии."

msgid ""
"The polyline's width curve. The width of the polyline over its length will be "
"equivalent to the value of the width curve over its domain. The width curve "
"should be a unit [Curve]."
msgstr ""
"Кривая ширины полилинии. Ширина полилинии по ее длине будет эквивалентна "
"значению кривой ширины по ее домену. Кривая ширины должна быть единицей "
"[Curve]."

msgid ""
"Makes the polyline's joints pointy, connecting the sides of the two segments "
"by extending them until they intersect. If the rotation of a joint is too big "
"(based on [member sharp_limit]), the joint falls back to [constant "
"LINE_JOINT_BEVEL] to prevent very long miters."
msgstr ""
"Делает сочленения полилинии заостренными, соединяя стороны двух сегментов, "
"удлиняя их до пересечения. Если вращение сочленения слишком велико (на основе "
"[member sharp_limit]), сочленение возвращается к [constant LINE_JOINT_BEVEL], "
"чтобы предотвратить слишком длинные скосы."

msgid ""
"Makes the polyline's joints bevelled/chamfered, connecting the sides of the "
"two segments with a simple line."
msgstr ""
"Делает стыки полилинии скошенными/скошенными, соединяя стороны двух сегментов "
"простой линией."

msgid ""
"Makes the polyline's joints rounded, connecting the sides of the two segments "
"with an arc. The detail of this arc depends on [member round_precision]."
msgstr ""
"Делает стыки полилинии скругленными, соединяя стороны двух сегментов дугой. "
"Детализация этой дуги зависит от [member round_precision]."

msgid "Draws no line cap."
msgstr "Не рисует линию."

msgid "Draws the line cap as a box, slightly extending the first/last segment."
msgstr ""
"Рисует окончание линии в виде прямоугольника, слегка расширяя первый/"
"последний сегмент."

msgid "Draws the line cap as a semicircle attached to the first/last segment."
msgstr ""
"Рисует окончание линии в виде полукруга, прикрепленного к первому/последнему "
"сегменту."

msgid ""
"Takes the left pixels of the texture and renders them over the whole polyline."
msgstr "Берет левые пиксели текстуры и визуализирует их по всей полилинии."

msgid ""
"Tiles the texture over the polyline. [member CanvasItem.texture_repeat] of "
"the [Line2D] node must be [constant CanvasItem.TEXTURE_REPEAT_ENABLED] or "
"[constant CanvasItem.TEXTURE_REPEAT_MIRROR] for it to work properly."
msgstr ""
"Размещает текстуру на полилинии. [member CanvasItem.texture_repeat] узла "
"[Line2D] должен быть [constant CanvasItem.TEXTURE_REPEAT_ENABLED] или "
"[constant CanvasItem.TEXTURE_REPEAT_MIRROR] для правильной работы."

msgid ""
"Stretches the texture across the polyline. [member CanvasItem.texture_repeat] "
"of the [Line2D] node must be [constant CanvasItem.TEXTURE_REPEAT_DISABLED] "
"for best results."
msgstr ""
"Растягивает текстуру по полилинии. [member CanvasItem.texture_repeat] узла "
"[Line2D] должен быть [constant CanvasItem.TEXTURE_REPEAT_DISABLED] для "
"достижения наилучших результатов."

msgid "An input field for single-line text."
msgstr "Поле ввода для однострочного текста."

msgid ""
"[LineEdit] provides an input field for editing a single line of text.\n"
"- When the [LineEdit] control is focused using the keyboard arrow keys, it "
"will only gain focus and not enter edit mode.\n"
"- To enter edit mode, click on the control with the mouse, see also [member "
"keep_editing_on_text_submit].\n"
"- To exit edit mode, press [code]ui_text_submit[/code] or [code]ui_cancel[/"
"code] (by default [kbd]Escape[/kbd]) actions.\n"
"- Check [method edit], [method unedit], [method is_editing], and [signal "
"editing_toggled] for more information.\n"
"While entering text, it is possible to insert special characters using "
"Unicode, OEM or Windows alt codes:\n"
"- To enter Unicode codepoints, hold [kbd]Alt[/kbd] and type the codepoint on "
"the numpad. For example, to enter the character [code]á[/code] (U+00E1), hold "
"[kbd]Alt[/kbd] and type [kbd]+E1[/kbd] on the numpad (the leading zeroes can "
"be omitted).\n"
"- To enter OEM codepoints, hold [kbd]Alt[/kbd] and type the code on the "
"numpad. For example, to enter the character [code]á[/code] (OEM 160), hold "
"[kbd]Alt[/kbd] and type [code]160[/code] on the numpad.\n"
"- To enter Windows codepoints, hold [kbd]Alt[/kbd] and type the code on the "
"numpad. For example, to enter the character [code]á[/code] (Windows 0225), "
"hold [kbd]Alt[/kbd] and type [kbd]0[/kbd], [kbd]2[/kbd], [kbd]2[/kbd], "
"[kbd]5[/kbd] on the numpad. The leading zero here must [b]not[/b] be omitted, "
"as this is how Windows codepoints are distinguished from OEM codepoints.\n"
"[b]Important:[/b]\n"
"- Focusing the [LineEdit] with [code]ui_focus_next[/code] (by default "
"[kbd]Tab[/kbd]) or [code]ui_focus_prev[/code] (by default [kbd]Shift + Tab[/"
"kbd]) or [method Control.grab_focus] still enters edit mode (for "
"compatibility).\n"
"[LineEdit] features many built-in shortcuts that are always available "
"([kbd]Ctrl[/kbd] here maps to [kbd]Cmd[/kbd] on macOS):\n"
"- [kbd]Ctrl + C[/kbd]: Copy\n"
"- [kbd]Ctrl + X[/kbd]: Cut\n"
"- [kbd]Ctrl + V[/kbd] or [kbd]Ctrl + Y[/kbd]: Paste/\"yank\"\n"
"- [kbd]Ctrl + Z[/kbd]: Undo\n"
"- [kbd]Ctrl + ~[/kbd]: Swap input direction.\n"
"- [kbd]Ctrl + Shift + Z[/kbd]: Redo\n"
"- [kbd]Ctrl + U[/kbd]: Delete text from the caret position to the beginning "
"of the line\n"
"- [kbd]Ctrl + K[/kbd]: Delete text from the caret position to the end of the "
"line\n"
"- [kbd]Ctrl + A[/kbd]: Select all text\n"
"- [kbd]Up Arrow[/kbd]/[kbd]Down Arrow[/kbd]: Move the caret to the beginning/"
"end of the line\n"
"On macOS, some extra keyboard shortcuts are available:\n"
"- [kbd]Cmd + F[/kbd]: Same as [kbd]Right Arrow[/kbd], move the caret one "
"character right\n"
"- [kbd]Cmd + B[/kbd]: Same as [kbd]Left Arrow[/kbd], move the caret one "
"character left\n"
"- [kbd]Cmd + P[/kbd]: Same as [kbd]Up Arrow[/kbd], move the caret to the "
"previous line\n"
"- [kbd]Cmd + N[/kbd]: Same as [kbd]Down Arrow[/kbd], move the caret to the "
"next line\n"
"- [kbd]Cmd + D[/kbd]: Same as [kbd]Delete[/kbd], delete the character on the "
"right side of caret\n"
"- [kbd]Cmd + H[/kbd]: Same as [kbd]Backspace[/kbd], delete the character on "
"the left side of the caret\n"
"- [kbd]Cmd + A[/kbd]: Same as [kbd]Home[/kbd], move the caret to the "
"beginning of the line\n"
"- [kbd]Cmd + E[/kbd]: Same as [kbd]End[/kbd], move the caret to the end of "
"the line\n"
"- [kbd]Cmd + Left Arrow[/kbd]: Same as [kbd]Home[/kbd], move the caret to the "
"beginning of the line\n"
"- [kbd]Cmd + Right Arrow[/kbd]: Same as [kbd]End[/kbd], move the caret to the "
"end of the line\n"
"[b]Note:[/b] Caret movement shortcuts listed above are not affected by "
"[member shortcut_keys_enabled]."
msgstr ""
"[LineEdit] предоставляет поле ввода для редактирования одной строки текста.\n"
"- Когда элемент управления [LineEdit] сфокусирован с помощью клавиш со "
"стрелками на клавиатуре, он только получит фокус, но не перейдет в режим "
"редактирования.\n"
"- Чтобы войти в режим редактирования, щелкните элемент управления мышью, см. "
"также [member keep_editing_on_text_submit].\n"
"- Чтобы выйти из режима редактирования, нажмите [code]ui_text_submit[/code] "
"или [code]ui_cancel[/code] (по умолчанию [kbd]Escape[/kbd]) действия.\n"
"- Проверьте [method edit], [method unedit], [method is_editing] и [signal "
"editing_toggled] для получения дополнительной информации.\n"
"При вводе текста можно вставлять специальные символы с помощью альтернативных "
"кодов Unicode, OEM или Windows:\n"
"- Чтобы ввести кодовые точки Unicode, удерживайте [kbd]Alt[/kbd] и введите "
"кодовую точку на цифровой клавиатуре. Например, чтобы ввести символ [code]á[/"
"code] (U+00E1), удерживайте [kbd]Alt[/kbd] и введите [kbd]+E1[/kbd] на "
"цифровой клавиатуре (начальные нули можно опустить).\n"
"- Чтобы ввести кодовые точки OEM, удерживайте [kbd]Alt[/kbd] и введите код на "
"цифровой клавиатуре. Например, чтобы ввести символ [code]á[/code] (OEM 160), "
"удерживайте [kbd]Alt[/kbd] и введите [code]160[/code] на цифровой "
"клавиатуре.\n"
"- Чтобы ввести кодовые точки Windows, удерживайте [kbd]Alt[/kbd] и введите "
"код на цифровой клавиатуре. Например, чтобы ввести символ [code]á[/code] "
"(Windows 0225), удерживайте [kbd]Alt[/kbd] и введите [kbd]0[/kbd], [kbd]2[/"
"kbd], [kbd]2[/kbd], [kbd]5[/kbd] на цифровой клавиатуре. Начальный ноль здесь "
"[b]не[/b] должен быть опущен, так как именно так кодовые точки Windows "
"отличаются от кодовых точек OEM.\n"
"[b]Важно:[/b]\n"
"- Фокусировка [LineEdit] с помощью [code]ui_focus_next[/code] (по умолчанию "
"[kbd]Tab[/kbd]) или [code]ui_focus_prev[/code] (по умолчанию [kbd]Shift + "
"Tab[/kbd]) или [method Control.grab_focus] по-прежнему переходит в режим "
"редактирования (для совместимости).\n"
"[LineEdit] содержит множество встроенных сочетаний клавиш, которые всегда "
"доступны ([kbd]Ctrl[/kbd] здесь соответствует [kbd]Cmd[/kbd] на macOS):\n"
"- [kbd]Ctrl + C[/kbd]: Копировать\n"
"- [kbd]Ctrl + X[/kbd]: Вырезать\n"
"- [kbd]Ctrl + V[/kbd] или [kbd]Ctrl + Y[/kbd]: Вставить/\"сбросить\"\n"
"- [kbd]Ctrl + Z[/kbd]: Отменить\n"
"- [kbd]Ctrl + ~[/kbd]: Поменять направление ввода.\n"
"- [kbd]Ctrl + Shift + Z[/kbd]: Повторить\n"
"- [kbd]Ctrl + U[/kbd]: Удалить текст от позиции каретки до начала строки\n"
"- [kbd]Ctrl + K[/kbd]: Удалить текст от позиции каретки до конца строки\n"
"- [kbd]Ctrl + A[/kbd]: Выделить весь текст\n"
"- [kbd]Up Arrow[/kbd]/[kbd]Down Arrow[/kbd]: Переместить каретку в начало/"
"конец строки\n"
"В macOS доступны некоторые дополнительные сочетания клавиш:\n"
"- [kbd]Cmd + F[/kbd]: То же, что и [kbd]Стрелка вправо[/kbd], переместить "
"каретку на один символ вправо\n"
"- [kbd]Cmd + B[/kbd]: То же, что и [kbd]Стрелка влево[/kbd], переместить "
"курсор на один символ влево\n"
"- [kbd]Cmd + P[/kbd]: То же, что [kbd]Стрелка вверх[/kbd], переместить курсор "
"на предыдущую строку\n"
"- [kbd]Cmd + N[/kbd]: То же, что [kbd]Стрелка вниз[/kbd], переместить курсор "
"на следующую строку\n"
"- [kbd]Cmd + D[/kbd]: То же, что [kbd]Delete[/kbd], удалить символ справа от "
"курсора\n"
"- [kbd]Cmd + H[/kbd]: То же, что [kbd]Backspace[/kbd], удалить символ слева "
"от курсора\n"
"- [kbd]Cmd + A[/kbd]: То же, что [kbd]Home[/kbd], переместить курсор в начало "
"строки\n"
"- [kbd]Cmd + E[/kbd]: То же, что [kbd]End[/kbd], переместить курсор в конец "
"строки\n"
"- [kbd]Cmd + Left Arrow[/kbd]: То же, что [kbd]Home[/kbd], переместить курсор "
"в начало строки\n"
"- [kbd]Cmd + Right Arrow[/kbd]: То же, что [kbd]End[/kbd], переместить курсор "
"в конец строки\n"
"[b]Примечание:[/b] Перечисленные выше сочетания клавиш для перемещения "
"курсора не зависят от [member shortcut_keys_enabled]."

msgid ""
"Applies text from the [url=https://en.wikipedia.org/wiki/Input_method]Input "
"Method Editor[/url] (IME) and closes the IME if it is open."
msgstr ""
"Применяет текст из [url=https://en.wikipedia.org/wiki/Input_method]редактора "
"метода ввода[/url] (IME) и закрывает IME, если он открыт."

msgid ""
"Closes the [url=https://en.wikipedia.org/wiki/Input_method]Input Method "
"Editor[/url] (IME) if it is open. Any text in the IME will be lost."
msgstr ""
"Закрывает [url=https://en.wikipedia.org/wiki/Input_method]Редактор метода "
"ввода[/url] (IME), если он открыт. Любой текст в IME будет потерян."

msgid "Erases the [LineEdit]'s [member text]."
msgstr "Удаляет [member text] [LineEdit]-s."

msgid ""
"Deletes one character at the caret's current position (equivalent to pressing "
"[kbd]Delete[/kbd])."
msgstr ""
"Удаляет один символ в текущей позиции курсора (эквивалентно нажатию "
"[kbd]Delete[/kbd])."

msgid ""
"Deletes a section of the [member text] going from position [param "
"from_column] to [param to_column]. Both parameters should be within the "
"text's length."
msgstr ""
"Удаляет часть [member text], начиная с позиции [param from_column] до [param "
"to_column]. Оба параметра должны быть в пределах длины текста."

msgid "Clears the current selection."
msgstr "Очищает текущий выбор."

msgid ""
"Allows entering edit mode whether the [LineEdit] is focused or not.\n"
"See also [member keep_editing_on_text_submit]."
msgstr ""
"Позволяет войти в режим редактирования независимо от того, сфокусирован ли "
"[LineEdit] или нет.\n"
"См. также [member keep_editing_on_text_submit]."

msgid ""
"Returns the [PopupMenu] of this [LineEdit]. By default, this menu is "
"displayed when right-clicking on the [LineEdit].\n"
"You can add custom menu items or remove standard ones. Make sure your IDs "
"don't conflict with the standard ones (see [enum MenuItems]). For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar menu = get_menu()\n"
"\t# Remove all items after \"Redo\".\n"
"\tmenu.item_count = menu.get_item_index(MENU_REDO) + 1\n"
"\t# Add custom items.\n"
"\tmenu.add_separator()\n"
"\tmenu.add_item(\"Insert Date\", MENU_MAX + 1)\n"
"\t# Connect callback.\n"
"\tmenu.id_pressed.connect(_on_item_pressed)\n"
"\n"
"func _on_item_pressed(id):\n"
"\tif id == MENU_MAX + 1:\n"
"\t\tinsert_text_at_caret(Time.get_date_string_from_system())\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar menu = GetMenu();\n"
"\t// Remove all items after \"Redo\".\n"
"\tmenu.ItemCount = menu.GetItemIndex(LineEdit.MenuItems.Redo) + 1;\n"
"\t// Add custom items.\n"
"\tmenu.AddSeparator();\n"
"\tmenu.AddItem(\"Insert Date\", LineEdit.MenuItems.Max + 1);\n"
"\t// Add event handler.\n"
"\tmenu.IdPressed += OnItemPressed;\n"
"}\n"
"\n"
"public void OnItemPressed(int id)\n"
"{\n"
"\tif (id == LineEdit.MenuItems.Max + 1)\n"
"\t{\n"
"\t\tInsertTextAtCaret(Time.GetDateStringFromSystem());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member Window.visible] property."
msgstr ""
"Возвращает [PopupMenu] этого [LineEdit]. По умолчанию это меню отображается "
"при щелчке правой кнопкой мыши по [LineEdit].\n"
"Вы можете добавлять пользовательские пункты меню или удалять стандартные. "
"Убедитесь, что ваши идентификаторы не конфликтуют со стандартными (см. [enum "
"MenuItems]). Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar menu = get_menu()\n"
"\t# Удалить все элементы после «Повторить».\n"
"\tmenu.item_count = menu.get_item_index(MENU_REDO) + 1\n"
"\t# Добавьте пользовательские элементы.\n"
"\tmenu.add_separator()\n"
"\tmenu.add_item(\"Insert Date\", MENU_MAX + 1)\n"
"\t# Подключить обратный вызов.\n"
"\tmenu.id_pressed.connect(_on_item_pressed)\n"
"\n"
"func _on_item_pressed(id):\n"
"\tif id == MENU_MAX + 1:\n"
"\t\tinsert_text_at_caret(Time.get_date_string_from_system())\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar menu = GetMenu();\n"
"\t// Удалить все элементы после «Повторить».\n"
"\tmenu.ItemCount = menu.GetItemIndex(LineEdit.MenuItems.Redo) + 1;\n"
"\t// Добавьте пользовательские элементы.\n"
"\tmenu.AddSeparator();\n"
"\tmenu.AddItem(\"Insert Date\", LineEdit.MenuItems.Max + 1);\n"
"\t// Добавить обработчик событий.\n"
"\tmenu.IdPressed += OnItemPressed;\n"
"}\n"
"\n"
"public void OnItemPressed(int id)\n"
"{\n"
"\tif (id == LineEdit.MenuItems.Max + 1)\n"
"\t{\n"
"\t\tInsertTextAtCaret(Time.GetDateStringFromSystem());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любого из "
"его дочерних элементов, используйте их свойство [member Window.visible]."

msgid ""
"Returns the correct column at the end of a composite character like ❤️‍🩹 "
"(mending heart; Unicode: [code]U+2764 U+FE0F U+200D U+1FA79[/code]) which is "
"comprised of more than one Unicode code point, if the caret is at the start "
"of the composite character. Also returns the correct column with the caret at "
"mid grapheme and for non-composite characters.\n"
"[b]Note:[/b] To check at caret location use "
"[code]get_next_composite_character_column(get_caret_column())[/code]"
msgstr ""
"Возвращает правильный столбец в конце составного символа, такого как ❤️‍🩹 "
"(исправление сердца; Unicode: [code]U+2764 U+FE0F U+200D U+1FA79[/code]), "
"который состоит из более чем одной точки кода Unicode, если каретка в начале "
"составного символа. Также возвращает правильный столбец с помощью каретки в "
"средней графеме и для некомпозитных символов.\n"
"[b] Примечание: [/b] Чтобы проверить в использовании местоположения каретки "
"[code]get_next_composite_character_column(get_caret_column())[/code]"

msgid ""
"Returns the correct column at the start of a composite character like ❤️‍🩹 "
"(mending heart; Unicode: [code]U+2764 U+FE0F U+200D U+1FA79[/code]) which is "
"comprised of more than one Unicode code point, if the caret is at the end of "
"the composite character. Also returns the correct column with the caret at "
"mid grapheme and for non-composite characters.\n"
"[b]Note:[/b] To check at caret location use "
"[code]get_previous_composite_character_column(get_caret_column())[/code]"
msgstr ""
"Возвращает правильный столбец в начале композитного символа, такого как ❤️‍🩹 "
"(исправление сердца; Unicode: [code]U+2764 U+FE0F U+200D U+1FA79[/code]), "
"который состоит из более чем одной точки кода Unicode, если каретка находится "
"в конце составного символа. Также возвращает правильный столбец с помощью "
"каретки в средней графеме и для некомпозитных символов.\n"
"[b] Примечание: [/b] Чтобы проверить в использовании местоположения каретки "
"[code]get_previous_composite_character_column(get_caret_column())[/code]"

msgid ""
"Returns the scroll offset due to [member caret_column], as a number of "
"characters."
msgstr ""
"Возвращает смещение прокрутки из-за [member caret_column] в виде количества "
"символов."

msgid "Returns the text inside the selection."
msgstr "Возвращает текст внутри выделения."

msgid "Returns the selection begin column."
msgstr "Возвращает начальный столбец выбора."

msgid "Returns the selection end column."
msgstr "Возвращает конечный столбец выбора."

msgid ""
"Returns [code]true[/code] if the user has text in the [url=https://"
"en.wikipedia.org/wiki/Input_method]Input Method Editor[/url] (IME)."
msgstr ""
"Возвращает [code]true[/code], если у пользователя есть текст в [url=https://"
"en.wikipedia.org/wiki/Input_method]редакторе метода ввода[/url] (IME)."

msgid "Returns [code]true[/code] if a \"redo\" action is available."
msgstr "Возвращает [code]true[/code], если доступно действие «повторить»."

msgid "Returns [code]true[/code] if the user has selected text."
msgstr "Возвращает [code]true[/code], если пользователь выбрал текст."

msgid "Returns [code]true[/code] if an \"undo\" action is available."
msgstr "Возвращает [code]true[/code], если доступно действие «отменить»."

msgid ""
"Inserts [param text] at the caret. If the resulting value is longer than "
"[member max_length], nothing happens."
msgstr ""
"Вставляет [param text] в каретку. Если полученное значение длиннее, чем "
"[member max_length], ничего не происходит."

msgid "Returns whether the [LineEdit] is being edited."
msgstr "Возвращает, редактируется ли [LineEdit]."

msgid ""
"Returns whether the menu is visible. Use this instead of "
"[code]get_menu().visible[/code] to improve performance (so the creation of "
"the menu is avoided)."
msgstr ""
"Возвращает, видимо ли меню. Используйте это вместо [code]get_menu().visible[/"
"code] для повышения производительности (чтобы избежать создания меню)."

msgid "Executes a given action as defined in the [enum MenuItems] enum."
msgstr ""
"Выполняет заданное действие, определенное в перечислении [enum MenuItems]."

msgid ""
"Selects characters inside [LineEdit] between [param from] and [param to]. By "
"default, [param from] is at the beginning and [param to] at the end.\n"
"[codeblocks]\n"
"[gdscript]\n"
"text = \"Welcome\"\n"
"select() # Will select \"Welcome\".\n"
"select(4) # Will select \"ome\".\n"
"select(2, 5) # Will select \"lco\".\n"
"[/gdscript]\n"
"[csharp]\n"
"Text = \"Welcome\";\n"
"Select(); // Will select \"Welcome\".\n"
"Select(4); // Will select \"ome\".\n"
"Select(2, 5); // Will select \"lco\".\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Выбирает символы внутри [LineEdit] между [param from] и [param to]. По "
"умолчанию [param from] находится в начале, а [param to] — в конце.\n"
"[codeblocks]\n"
"[gdscript]\n"
"text = \"Welcome\"\n"
"select() # Выберите \"Welcome\".\n"
"select(4) # Выберите \"ome\".\n"
"select(2, 5) # Выберите \"lco\".\n"
"[/gdscript]\n"
"[csharp]\n"
"Text = \"Welcome\";\n"
"Select(); // Выберите \"Welcome\".\n"
"Select(4); // Выберите \"ome\".\n"
"Select(2, 5); // Выберите \"lco\".\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Selects the whole [String]."
msgstr "Выделяет всю [String]."

msgid "Allows exiting edit mode while preserving focus."
msgstr "Позволяет выйти из режима редактирования, сохраняя фокус."

msgid "Text alignment as defined in the [enum HorizontalAlignment] enum."
msgstr ""
"Выравнивание текста, как определено в перечислении [enum HorizontalAlignment]."

msgid ""
"If [code]true[/code] and [member caret_mid_grapheme] is [code]false[/code], "
"backspace deletes an entire composite character such as ❤️‍🩹, instead of "
"deleting part of the composite character."
msgstr ""
"Если [code]true[/code] и [member caret_mid_grapheme] в значении [code]false[/"
"code], Возврат удаляет весь составной символ, такой как ❤️‍🩹, вместо удаления "
"части составного символа."

msgid "If [code]true[/code], makes the caret blink."
msgstr "Если [code]true[/code], курсор мигает."

msgid "The interval at which the caret blinks (in seconds)."
msgstr "Интервал мигания курсора (в секундах)."

msgid ""
"The caret's column position inside the [LineEdit]. When set, the text may "
"scroll to accommodate it."
msgstr ""
"Положение столбца курсора внутри [LineEdit]. Если установлено, текст может "
"прокручиваться, чтобы вместить его."

msgid ""
"If [code]true[/code], the [LineEdit] will always show the caret, even if not "
"editing or focus is lost."
msgstr ""
"Если [code]true[/code], [LineEdit] всегда будет отображать курсор, даже если "
"редактирование не выполняется или фокус потерян."

msgid ""
"Allow moving caret, selecting and removing the individual composite character "
"components.\n"
"[b]Note:[/b] [kbd]Backspace[/kbd] is always removing individual composite "
"character components."
msgstr ""
"Разрешить перемещение курсора, выбор и удаление отдельных компонентов "
"составного символа.\n"
"[b]Примечание:[/b] [kbd]Backspace[/kbd] всегда удаляет отдельные компоненты "
"составного символа."

msgid ""
"If [code]true[/code], the [LineEdit] will show a clear button if [member "
"text] is not empty, which can be used to clear the text quickly."
msgstr ""
"Если [code]true[/code], [LineEdit] отобразит кнопку очистки, если [member "
"text] не пуст, что можно использовать для быстрой очистки текста."

msgid "If [code]true[/code], the context menu will appear when right-clicked."
msgstr ""
"Если [code]true[/code], при щелчке правой кнопкой мыши появится контекстное "
"меню."

msgid ""
"If [code]true[/code], the selected text will be deselected when focus is lost."
msgstr ""
"Если [code]true[/code], выделенный текст будет снят с выделения при потере "
"фокуса."

msgid "If [code]true[/code], allow drag and drop of selected text."
msgstr "Если [code]true[/code], разрешено перетаскивание выделенного текста."

msgid "If [code]true[/code], control characters are displayed."
msgstr "Если [code]true[/code], отображаются управляющие символы."

msgid ""
"If [code]false[/code], existing text cannot be modified and new text cannot "
"be added."
msgstr ""
"Если [code]false[/code], существующий текст не может быть изменен и новый "
"текст не может быть добавлен."

msgid "If [code]true[/code], \"Emoji and Symbols\" menu is enabled."
msgstr "Если [code]true[/code], меню «Эмодзи и символы» включено."

msgid ""
"If [code]true[/code], the [LineEdit] width will increase to stay longer than "
"the [member text]. It will [b]not[/b] compress if the [member text] is "
"shortened."
msgstr ""
"Если [code]true[/code], ширина [LineEdit] увеличится и останется длиннее, чем "
"[member text]. Он [b]не[/b] сожмется, если [member text] будет сокращен."

msgid "If [code]true[/code], the [LineEdit] doesn't display decoration."
msgstr "Если [code]true[/code], [LineEdit] не отображает оформление."

msgid ""
"If [code]true[/code], the [LineEdit] will not exit edit mode when text is "
"submitted by pressing [code]ui_text_submit[/code] action (by default: "
"[kbd]Enter[/kbd] or [kbd]Kp Enter[/kbd])."
msgstr ""
"Если [code]true[/code], [LineEdit] не выйдет из режима редактирования, если "
"текст отправлен нажатием действия [code]ui_text_submit[/code] (по умолчанию: "
"[kbd]Enter[/kbd] или [kbd]Kp Enter[/kbd])."

msgid ""
"Language code used for line-breaking and text shaping algorithms. If left "
"empty, current locale is used instead."
msgstr ""
"Код языка, используемый для алгоритмов переноса строк и формирования текста. "
"Если оставить пустым, вместо него будет использоваться текущая локаль."

msgid ""
"Maximum number of characters that can be entered inside the [LineEdit]. If "
"[code]0[/code], there is no limit.\n"
"When a limit is defined, characters that would exceed [member max_length] are "
"truncated. This happens both for existing [member text] contents when setting "
"the max length, or for new text inserted in the [LineEdit], including "
"pasting.\n"
"If any input text is truncated, the [signal text_change_rejected] signal is "
"emitted with the truncated substring as a parameter:\n"
"[codeblocks]\n"
"[gdscript]\n"
"text = \"Hello world\"\n"
"max_length = 5\n"
"# `text` becomes \"Hello\".\n"
"max_length = 10\n"
"text += \" goodbye\"\n"
"# `text` becomes \"Hello good\".\n"
"# `text_change_rejected` is emitted with \"bye\" as a parameter.\n"
"[/gdscript]\n"
"[csharp]\n"
"Text = \"Hello world\";\n"
"MaxLength = 5;\n"
"// `Text` becomes \"Hello\".\n"
"MaxLength = 10;\n"
"Text += \" goodbye\";\n"
"// `Text` becomes \"Hello good\".\n"
"// `text_change_rejected` is emitted with \"bye\" as a parameter.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Максимальное количество символов, которое можно ввести в [LineEdit]. Если "
"[code]0[/code], ограничений нет.\n"
"Если задано ограничение, символы, превышающие [member max_length], "
"обрезаются. Это происходит как с существующим содержимым [member text] при "
"установке максимальной длины, так и с новым текстом, вставленным в "
"[LineEdit], включая вставку.\n"
"Если какой-либо введённый текст обрезается, выдаётся сигнал [signal "
"text_change_rejected] с обрезанной подстрокой в качестве параметра:\n"
"[codeblocks]\n"
"[gdscript]\n"
"text = \"Hello world\"\n"
"max_length = 5\n"
"# `text` становится \"Hello\".\n"
"max_length = 10\n"
"text += \" goodbye\"\n"
"# `text` становится \"Hello good\".\n"
"# `text_change_rejected` выдается с параметром \"bye\".\n"
"[/gdscript]\n"
"[csharp]\n"
"Text = \"Hello world\";\n"
"MaxLength = 5;\n"
"// `Text` становится \"Hello\".\n"
"MaxLength = 10;\n"
"Text += \" goodbye\";\n"
"// `Text` становится \"Hello good\".\n"
"// `text_change_rejected` выдается с параметром \"bye\".\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"If [code]false[/code], using middle mouse button to paste clipboard will be "
"disabled.\n"
"[b]Note:[/b] This method is only implemented on Linux."
msgstr ""
"Если [code]false[/code], использование средней кнопки мыши для вставки буфера "
"обмена будет отключено.\n"
"[b]Примечание:[/b] Этот метод реализован только в Linux."

msgid ""
"Text shown when the [LineEdit] is empty. It is [b]not[/b] the [LineEdit]'s "
"default value (see [member text])."
msgstr ""
"Текст, отображаемый, когда [LineEdit] пуст. Это [b]не[/b] значение по "
"умолчанию для [LineEdit] (см. [member text])."

msgid ""
"Sets the icon that will appear in the right end of the [LineEdit] if there's "
"no [member text], or always, if [member clear_button_enabled] is set to "
"[code]false[/code]."
msgstr ""
"Устанавливает значок, который будет отображаться в правом конце [LineEdit], "
"если нет [member text], или всегда, если [member clear_button_enabled] "
"установлен в [code]false[/code]."

msgid ""
"If [code]true[/code], every character is replaced with the secret character "
"(see [member secret_character])."
msgstr ""
"Если [code]true[/code], каждый символ заменяется секретным символом (см. "
"[member secret_character])."

msgid ""
"The character to use to mask secret input. Only a single character can be "
"used as the secret character. If it is longer than one character, only the "
"first one will be used. If it is empty, a space will be used instead."
msgstr ""
"Символ, используемый для маскировки секретного ввода. В качестве секретного "
"символа можно использовать только один символ. Если он длиннее одного "
"символа, будет использоваться только первый. Если он пустой, вместо него "
"будет использоваться пробел."

msgid ""
"If [code]true[/code], the [LineEdit] will select the whole text when it gains "
"focus."
msgstr ""
"Если [code]true[/code], [LineEdit] выделит весь текст, когда получит фокус."

msgid ""
"If [code]false[/code], it's impossible to select the text using mouse nor "
"keyboard."
msgstr ""
"Если [code]false[/code], невозможно выделить текст с помощью мыши или "
"клавиатуры."

msgid ""
"If [code]true[/code], shortcut keys for context menu items are enabled, even "
"if the context menu is disabled."
msgstr ""
"Если [code]true[/code], сочетания клавиш для пунктов контекстного меню "
"включены, даже если контекстное меню отключено."

msgid ""
"String value of the [LineEdit].\n"
"[b]Note:[/b] Changing text using this property won't emit the [signal "
"text_changed] signal."
msgstr ""
"Строковое значение [LineEdit].\n"
"[b]Примечание:[/b] Изменение текста с использованием этого свойства не будет "
"генерировать сигнал [signal text_changed]."

msgid ""
"If [code]true[/code], the native virtual keyboard is enabled on platforms "
"that support it."
msgstr ""
"Если [code]true[/code], встроенная виртуальная клавиатура включена на "
"платформах, которые ее поддерживают."

msgid ""
"If [code]true[/code], the native virtual keyboard is shown on focus events on "
"platforms that support it."
msgstr ""
"Если [code]true[/code], то собственная виртуальная клавиатура отображается "
"при фокусировке на платформах, которые ее поддерживают."

msgid "Specifies the type of virtual keyboard to show."
msgstr "Указывает тип отображаемой виртуальной клавиатуры."

msgid "Emitted when the [LineEdit] switches in or out of edit mode."
msgstr ""
"Вызывается, когда [LineEdit] переключается в режим редактирования или выходит "
"из него."

msgid ""
"Emitted when appending text that overflows the [member max_length]. The "
"appended text is truncated to fit [member max_length], and the part that "
"couldn't fit is passed as the [param rejected_substring] argument."
msgstr ""
"Вызывается при добавлении текста, который выходит за пределы [member "
"max_length]. Добавленный текст усекается, чтобы соответствовать [member "
"max_length], а часть, которая не помещается, передается как аргумент[param "
"rejected_substring]."

msgid "Emitted when the text changes."
msgstr "Выдается при изменении текста."

msgid ""
"Emitted when the user presses the [code]ui_text_submit[/code] action (by "
"default: [kbd]Enter[/kbd] or [kbd]Kp Enter[/kbd]) while the [LineEdit] has "
"focus."
msgstr ""
"Вызывается, когда пользователь нажимает действие [code]ui_text_submit[/code] "
"(по умолчанию: [kbd]Enter[/kbd] или [kbd]Kp Enter[/kbd]), когда фокус "
"находится на [LineEdit]."

msgid "Cuts (copies and clears) the selected text."
msgstr "Вырезает (копирует и очищает) выделенный текст."

msgid "Copies the selected text."
msgstr "Копирует выделенный текст."

msgid ""
"Pastes the clipboard text over the selected text (or at the caret's "
"position).\n"
"Non-printable escape characters are automatically stripped from the OS "
"clipboard via [method String.strip_escapes]."
msgstr ""
"Вставляет текст буфера обмена поверх выделенного текста (или в позицию "
"курсора).\n"
"Непечатаемые экранированные символы автоматически удаляются из буфера обмена "
"ОС с помощью [method String.strip_escapes]."

msgid "Erases the whole [LineEdit] text."
msgstr "Стирает весь текст [LineEdit]."

msgid "Selects the whole [LineEdit] text."
msgstr "Выделяет весь текст [LineEdit]."

msgid "Undoes the previous action."
msgstr "Отменяет предыдущее действие."

msgid "Reverse the last undo action."
msgstr "Отменить последнее отмененное действие."

msgid "ID of \"Text Writing Direction\" submenu."
msgstr "Идентификатор подменю «Направление написания текста»."

msgid "Sets text direction to inherited."
msgstr "Устанавливает унаследованное направление текста."

msgid "Sets text direction to automatic."
msgstr "Устанавливает автоматическое направление текста."

msgid "Sets text direction to left-to-right."
msgstr "Устанавливает направление текста слева направо."

msgid "Sets text direction to right-to-left."
msgstr "Устанавливает направление текста справа налево."

msgid "Toggles control character display."
msgstr "Переключает отображение управляющего символа."

msgid "ID of \"Insert Control Character\" submenu."
msgstr "Идентификатор подменю «Вставить управляющий символ»."

msgid "Inserts left-to-right mark (LRM) character."
msgstr "Вставляет символ знака слева направо (LRM)."

msgid "Inserts right-to-left mark (RLM) character."
msgstr "Вставляет символ с письмом справа налево (RLM)."

msgid "Inserts start of left-to-right embedding (LRE) character."
msgstr "Вставляет начало символа вставки слева направо (LRE)."

msgid "Inserts start of right-to-left embedding (RLE) character."
msgstr "Вставляет начало символа вставки справа налево (RLE)."

msgid "Inserts start of left-to-right override (LRO) character."
msgstr "Вставляет начало символа переопределения слева направо (LRO)."

msgid "Inserts start of right-to-left override (RLO) character."
msgstr "Вставляет начало символа переопределения справа налево (RLO)."

msgid "Inserts pop direction formatting (PDF) character."
msgstr "Вставляет символ форматирования направления поп-арта (PDF)."

msgid "Inserts Arabic letter mark (ALM) character."
msgstr "Вставляет символ арабской буквы (ALM)."

msgid "Inserts left-to-right isolate (LRI) character."
msgstr "Вставляет изолирующий символ слева направо (LRI)."

msgid "Inserts right-to-left isolate (RLI) character."
msgstr "Вставляет изолирующий символ справа налево (RLI)."

msgid "Inserts first strong isolate (FSI) character."
msgstr "Вставляет первый сильный изолятный (FSI) символ."

msgid "Inserts pop direction isolate (PDI) character."
msgstr "Вставляет символ изоляции направления поп-музыки (PDI)."

msgid "Inserts zero width joiner (ZWJ) character."
msgstr "Вставляет символ объединения нулевой ширины (ZWJ)."

msgid "Inserts zero width non-joiner (ZWNJ) character."
msgstr "Вставляет символ нулевой ширины, не являющийся объединяющим (ZWNJ)."

msgid "Inserts word joiner (WJ) character."
msgstr "Вставляет символ объединения слов (WJ)."

msgid "Inserts soft hyphen (SHY) character."
msgstr "Вставляет символ мягкого дефиса (SHY)."

msgid "Opens system emoji and symbol picker."
msgstr "Открывает системный выбор эмодзи и символов."

msgid "Represents the size of the [enum MenuItems] enum."
msgstr "Представляет размер перечисления [enum MenuItems]."

msgid ""
"Color of the [LineEdit]'s caret (text cursor). This can be set to a fully "
"transparent color to hide the caret entirely."
msgstr ""
"Цвет каретки (текстового курсора) [LineEdit]. Его можно установить на "
"полностью прозрачный цвет, чтобы полностью скрыть каретку."

msgid "Color used as default tint for the clear button."
msgstr "Цвет, используемый в качестве оттенка по умолчанию для кнопки очистки."

msgid "Color used for the clear button when it's pressed."
msgstr "Цвет, используемый для кнопки очистки при ее нажатии."

msgid "Default font color."
msgstr "Цвет шрифта по умолч."

msgid "The tint of text outline of the [LineEdit]."
msgstr "Оттенок контура текста [LineEdit]."

msgid "Font color for [member placeholder_text]."
msgstr "Цвет шрифта для [member placeholder_text]."

msgid "Font color for selected text (inside the selection rectangle)."
msgstr "Цвет шрифта для выделенного текста (внутри прямоугольника выделения)."

msgid "Font color when editing is disabled."
msgstr "Цвет шрифта при редактировании отключен."

msgid "Color of the selection rectangle."
msgstr "Цвет прямоугольника выделения."

msgid ""
"The caret's width in pixels. Greater values can be used to improve "
"accessibility by ensuring the caret is easily visible, or to ensure "
"consistency with a large font size."
msgstr ""
"Ширина каретки в пикселях. Большие значения можно использовать для улучшения "
"доступности, обеспечивая легкую видимость каретки или для обеспечения "
"согласованности с большим размером шрифта."

msgid ""
"Minimum horizontal space for the text (not counting the clear button and "
"content margins). This value is measured in count of 'M' characters (i.e. "
"this number of 'M' characters can be displayed without scrolling)."
msgstr ""
"Минимальное горизонтальное пространство для текста (не считая кнопку очистки "
"и полей содержимого). Это значение измеряется в количестве символов «M» (т.е. "
"это количество символов «M» может быть отображено без прокрутки)."

msgid "Font used for the text."
msgstr "Шрифт, используемый в тексте."

msgid "Font size of the [LineEdit]'s text."
msgstr "Размер шрифта текста [LineEdit]."

msgid "Texture for the clear button. See [member clear_button_enabled]."
msgstr "Текстура для кнопки очистки. Смотрите [member clear_button_enabled]."

msgid ""
"Background used when [LineEdit] has GUI focus. The [theme_item focus] "
"[StyleBox] is displayed [i]over[/i] the base [StyleBox], so a partially "
"transparent [StyleBox] should be used to ensure the base [StyleBox] remains "
"visible. A [StyleBox] that represents an outline or an underline works well "
"for this purpose. To disable the focus visual effect, assign a "
"[StyleBoxEmpty] resource. Note that disabling the focus visual effect will "
"harm keyboard/controller navigation usability, so this is not recommended for "
"accessibility reasons."
msgstr ""
"Фон используется, когда [LineEdit] имеет фокус GUI. [Фокус [theme_item] "
"[StyleBox] отображается [i]над[/i] базовым [StyleBox], поэтому следует "
"использовать частично прозрачный [StyleBox], чтобы базовый [StyleBox] "
"оставался видимым. [StyleBox], представляющий контур или подчеркивание, "
"хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, "
"назначьте ресурс [StyleBoxEmpty]. Обратите внимание, что отключение "
"визуального эффекта фокуса навредит удобству использования навигации с "
"помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям "
"доступности."

msgid "Default background for the [LineEdit]."
msgstr "Фон по умолчанию для [LineEdit]."

msgid ""
"Background used when [LineEdit] is in read-only mode ([member editable] is "
"set to [code]false[/code])."
msgstr ""
"Фон используется, когда [LineEdit] находится в режиме только для чтения "
"([member editable] имеет значение [code]false[/code])."

msgid "A button that represents a link."
msgstr "Кнопка, представляющая ссылку."

msgid ""
"A button that represents a link. This type of button is primarily used for "
"interactions that cause a context change (like linking to a web page).\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node."
msgstr ""
"Кнопка, представляющая ссылку. Этот тип кнопки в основном используется для "
"взаимодействий, вызывающих изменение контекста (например, ссылка на веб-"
"страницу).\n"
"См. также [BaseButton], который содержит общие свойства и методы, связанные с "
"этим узлом."

msgid "The underline mode to use for the text."
msgstr "Режим подчеркивания текста."

msgid ""
"The [url=https://en.wikipedia.org/wiki/Uniform_Resource_Identifier]URI[/url] "
"for this [LinkButton]. If set to a valid URI, pressing the button opens the "
"URI using the operating system's default program for the protocol (via "
"[method OS.shell_open]). HTTP and HTTPS URLs open the default web browser.\n"
"[codeblocks]\n"
"[gdscript]\n"
"uri = \"https://godotengine.org\"  # Opens the URL in the default web "
"browser.\n"
"uri = \"C:\\SomeFolder\"  # Opens the file explorer at the given path.\n"
"uri = \"C:\\SomeImage.png\"  # Opens the given image in the default viewing "
"app.\n"
"[/gdscript]\n"
"[csharp]\n"
"Uri = \"https://godotengine.org\"; // Opens the URL in the default web "
"browser.\n"
"Uri = \"C:\\SomeFolder\"; // Opens the file explorer at the given path.\n"
"Uri = \"C:\\SomeImage.png\"; // Opens the given image in the default viewing "
"app.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[url=https://en.wikipedia.org/wiki/Uniform_Resource_Identifier]URI[/url] для "
"этой [LinkButton]. Если задан допустимый URI, нажатие кнопки открывает URI с "
"использованием программы операционной системы по умолчанию для протокола "
"(через [method OS.shell_open]). URL-адреса HTTP и HTTPS открывают веб-браузер "
"по умолчанию.\n"
"[codeblocks]\n"
"[gdscript]\n"
"uri = \"https://godotengine.org\"  # Открывает URL-адрес в веб-браузере по "
"умолчанию.\n"
"uri = \"C:\\SomeFolder\"  # Открывает проводник по указанному пути.\n"
"uri = \"C:\\SomeImage.png\"  # Открывает указанное изображение в приложении "
"для просмотра по умолчанию.\n"
"[/gdscript]\n"
"[csharp]\n"
"Uri = \"https://godotengine.org\"; // Открывает URL-адрес в веб-браузере по "
"умолчанию.\n"
"Uri = \"C:\\SomeFolder\"; // Открывает проводник по указанному пути.\n"
"Uri = \"C:\\SomeImage.png\"; // Открывает указанное изображение в приложении "
"для просмотра по умолчанию.\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "The LinkButton will always show an underline at the bottom of its text."
msgstr ""
"В нижней части текста LinkButton всегда будет отображаться подчеркивание."

msgid ""
"The LinkButton will show an underline at the bottom of its text when the "
"mouse cursor is over it."
msgstr ""
"При наведении курсора мыши на кнопку LinkButton в нижней части текста "
"отображается подчеркивание."

msgid "The LinkButton will never show an underline at the bottom of its text."
msgstr ""
"LinkButton никогда не будет отображать подчеркивание в нижней части текста."

msgid "Default text [Color] of the [LinkButton]."
msgstr "[Color] Текст по умолчанию для [LinkButton]."

msgid "Text [Color] used when the [LinkButton] is disabled."
msgstr "[Color ]Текст , используемый, когда [LinkButton] отключен."

msgid ""
"Text [Color] used when the [LinkButton] is focused. Only replaces the normal "
"text color of the button. Disabled, hovered, and pressed states take "
"precedence over this color."
msgstr ""
"[Color] текста , используемый, когда [LinkButton] находится в фокусе. "
"Заменяет только обычный цвет текста кнопки. Отключенные, наведенные и нажатые "
"состояния имеют приоритет над этим цветом."

msgid "Text [Color] used when the [LinkButton] is being hovered."
msgstr "[Color] текста , используемый при наведении курсора на [LinkButton]."

msgid "Text [Color] used when the [LinkButton] is being hovered and pressed."
msgstr "[Color] текста, используемый при наведении и нажатии на [LinkButton]."

msgid "The tint of text outline of the [LinkButton]."
msgstr "Оттенок контура текста [LinkButton]."

msgid "Text [Color] used when the [LinkButton] is being pressed."
msgstr "[Color] текста, используемый при нажатии [LinkButton]."

msgid "The vertical space between the baseline of text and the underline."
msgstr "Вертикальное пространство между базовой линией текста и подчеркиванием."

msgid "[Font] of the [LinkButton]'s text."
msgstr "[Font] текста [LinkButton]."

msgid "Font size of the [LinkButton]'s text."
msgstr "Размер шрифта текста [LinkButton]."

msgid ""
"[StyleBox] used when the [LinkButton] is focused. The [theme_item focus] "
"[StyleBox] is displayed [i]over[/i] the base [StyleBox], so a partially "
"transparent [StyleBox] should be used to ensure the base [StyleBox] remains "
"visible. A [StyleBox] that represents an outline or an underline works well "
"for this purpose. To disable the focus visual effect, assign a "
"[StyleBoxEmpty] resource. Note that disabling the focus visual effect will "
"harm keyboard/controller navigation usability, so this is not recommended for "
"accessibility reasons."
msgstr ""
"[StyleBox] используется, когда [LinkButton] находится в фокусе. [Theme_item "
"focus] [StyleBox] отображается [i]над[/i] базовым [StyleBox], поэтому следует "
"использовать частично прозрачный [StyleBox], чтобы базовый [StyleBox] "
"оставался видимым. [StyleBox], представляющий контур или подчеркивание, "
"хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, "
"назначьте ресурс [StyleBoxEmpty]. Обратите внимание, что отключение "
"визуального эффекта фокуса навредит удобству использования навигации с "
"помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям "
"доступности."

msgid ""
"Custom logger to receive messages from the internal error/warning stream."
msgstr ""
"Пользовательский журнал для получения сообщений из внутренней ошибки/"
"предупреждения."

msgid ""
"Custom logger to receive messages from the internal error/warning stream. "
"Loggers are registered via [method OS.add_logger]."
msgstr ""
"Пользовательский журнал для получения сообщений из внутренних ошибки/"
"предупреждения. Регистраторы регистрируются через [method OS.add_logger]."

msgid ""
"Called when an error is logged. The error provides the [param function], "
"[param file], and [param line] that it originated from, as well as either the "
"[param code] that generated the error or a [param rationale].\n"
"The type of error provided by [param error_type] is described in the [enum "
"ErrorType] enumeration.\n"
"Additionally, [param script_backtraces] provides backtraces for each of the "
"script languages. These will only contain stack frames in editor builds and "
"debug builds by default. To enable them for release builds as well, you need "
"to enable [member ProjectSettings.debug/settings/gdscript/"
"always_track_call_stacks].\n"
"[b]Warning:[/b] This function may be called from multiple different threads, "
"so you may need to do your own locking.\n"
"[b]Note:[/b] [param script_backtraces] will not contain any captured "
"variables, due to its prohibitively high cost. To get those you will need to "
"capture the backtraces yourself, from within the [Logger] virtual methods, "
"using [method Engine.capture_script_backtraces]."
msgstr ""
"Вызывается при регистрации ошибки. Ошибка предоставляет [param function], "
"[param file] и [param line], из которых она возникла, а также либо [param "
"code], который сгенерировал ошибку, либо [param reasone].\n"
"Тип ошибки, предоставляемый [param error_type], описан в перечислении [enum "
"ErrorType].\n"
"Кроме того, [param script_backtraces] предоставляет обратные трассировки для "
"каждого из языков скриптов. Они будут содержать только кадры стека в сборках "
"редактора и отладочных сборках по умолчанию. Чтобы включить их и для сборок "
"выпуска, вам необходимо включить [member ProjectSettings.debug/settings/"
"gdscript/always_track_call_stacks].\n"
"[b]Предупреждение:[/b] Эта функция может вызываться из нескольких разных "
"потоков, поэтому вам может потребоваться выполнить собственную блокировку.\n"
"[b]Примечание:[/b] [param script_backtraces] не будет содержать никаких "
"захваченных переменных из-за его непомерно высокой стоимости. Чтобы получить "
"их, вам нужно будет захватить обратные трассировки самостоятельно, из "
"виртуальных методов [Logger], используя [method "
"Engine.capture_script_backtraces]."

msgid ""
"Called when a message is logged. If [param error] is [code]true[/code], then "
"this message was meant to be sent to [code]stderr[/code].\n"
"[b]Warning:[/b] This function may be called from multiple different threads, "
"so you may need to do your own locking."
msgstr ""
"Вызывается при регистрации сообщения. Если [param error] равно [code]true[/"
"code], то это сообщение должно было быть отправлено в [code]stderr[/code].\n"
"[b]Предупреждение:[/b] Эта функция может вызываться из нескольких разных "
"потоков, поэтому вам может потребоваться выполнить собственную блокировку."

msgid "The message received is an error."
msgstr "Полученное сообщение является ошибкой."

msgid "The message received is a warning."
msgstr "Полученное сообщение является предупреждением."

msgid "The message received is a script error."
msgstr "Полученное сообщение является ошибкой скрипта."

msgid "The message received is a shader error."
msgstr "Полученное сообщение является ошибкой шейдера."

msgid "The [LookAtModifier3D] rotates a bone to look at a target."
msgstr "[LookAtModifier3D] вращает кость, чтобы смотреть на цель."

msgid ""
"This [SkeletonModifier3D] rotates a bone to look at a target. This is helpful "
"for moving a character's head to look at the player, rotating a turret to "
"look at a target, or any other case where you want to make a bone rotate "
"towards something quickly and easily.\n"
"When applying multiple [LookAtModifier3D]s, the [LookAtModifier3D] assigned "
"to the parent bone must be put above the [LookAtModifier3D] assigned to the "
"child bone in the list in order for the child bone results to be correct."
msgstr ""
"Этот [SkeletonModifier3D] вращает кость, чтобы она смотрела на цель. Это "
"полезно для вращения головы персонажа, чтобы он смотрел на игрока, вращения "
"башни, чтобы она смотрела на цель, или в любом другом случае, когда вы хотите "
"заставить кость вращаться в сторону чего-то быстро и легко.\n"
"При применении нескольких [LookAtModifier3D], [LookAtModifier3D] назначенный "
"родительской кости, должен быть помещен выше [LookAtModifier3D], назначенного "
"дочерней кости в списке, чтобы результаты дочерней кости были правильными."

msgid "Returns the remaining seconds of the time-based interpolation."
msgstr "Возвращает оставшиеся секунды временной интерполяции."

msgid ""
"Returns [code]true[/code] if time-based interpolation is running. If "
"[code]true[/code], it is equivalent to [method get_interpolation_remaining] "
"returning [code]0.0[/code].\n"
"This is useful to determine whether a [LookAtModifier3D] can be removed "
"safely."
msgstr ""
"Возвращает [code]true[/code], если выполняется интерполяция на основе "
"времени. Если [code]true[/code], это эквивалентно [method "
"get_interpolation_remaining], возвращающему [code]0.0[/code]. \n"
"Это полезно для определения того, можно ли безопасно удалить "
"[LookAtModifier3D]."

msgid ""
"Returns whether the target is within the angle limitations. It is useful for "
"unsetting the [member target_node] when the target is outside of the angle "
"limitations.\n"
"[b]Note:[/b] The value is updated after [method "
"SkeletonModifier3D._process_modification]. To retrieve this value correctly, "
"we recommend using the signal [signal "
"SkeletonModifier3D.modification_processed]."
msgstr ""
"Возвращает, находится ли цель в пределах ограничений угла. Это полезно для "
"отмены установки [member target_node], когда цель находится вне ограничений "
"угла.\n"
"[b]Примечание:[/b] Значение обновляется после [method "
"SkeletonModifier3D._process_modification]. Для корректного получения этого "
"значения мы рекомендуем использовать сигнал [signal "
"SkeletonModifier3D.modification_processed]."

msgid "Index of the [member bone_name] in the parent [Skeleton3D]."
msgstr "Индекс [member bone_name] в родительском [Skeleton3D]."

msgid "The bone name of the [Skeleton3D] that the modification will operate on."
msgstr "Имя кости [Skeleton3D], с которой будет работать модификация."

msgid ""
"The duration of the time-based interpolation. Interpolation is triggered at "
"the following cases:\n"
"- When the target node is changed\n"
"- When an axis is flipped due to angle limitation\n"
"[b]Note:[/b] The flipping occurs when the target is outside the angle "
"limitation and the internally computed secondary rotation axis of the forward "
"vector is flipped. Visually, it occurs when the target is outside the angle "
"limitation and crosses the plane of the [member forward_axis] and [member "
"primary_rotation_axis]."
msgstr ""
"Длительность интерполяции на основе времени. Интерполяция запускается в "
"следующих случаях:\n"
"- При изменении целевого узла\n"
"- При перевороте оси из-за ограничения угла\n"
"[b]Примечание:[/b] Переворот происходит, когда цель находится за пределами "
"ограничения угла, а внутренне вычисленная вторичная ось вращения прямого "
"вектора переворачивается. Визуально это происходит, когда цель находится за "
"пределами ограничения угла и пересекает плоскость [member forward_axis] и "
"[member primary_rotation_axis]."

msgid ""
"The ease type of the time-based interpolation. See also [enum Tween.EaseType]."
msgstr "Тип интерполяции на основе времени. См. также [enum Tween.EaseType]."

msgid ""
"The forward axis of the bone. This [SkeletonModifier3D] modifies the bone so "
"that this axis points toward the [member target_node]."
msgstr ""
"Передняя ось кости. Этот [SkeletonModifier3D] изменяет кость так, чтобы эта "
"ось указывала на [member target_node]."

msgid "Index of the [member origin_bone_name] in the parent [Skeleton3D]."
msgstr "Индекс [member origin_bone_name] в родительском [Skeleton3D]."

msgid ""
"If [member origin_from] is [constant ORIGIN_FROM_SPECIFIC_BONE], the bone "
"global pose position specified for this is used as origin."
msgstr ""
"Если [member origin_from] равен [constant ORIGIN_FROM_SPECIFIC_BONE], то в "
"качестве начала координат используется указанное для него глобальное "
"положение позы кости."

msgid ""
"If [member origin_from] is [constant ORIGIN_FROM_EXTERNAL_NODE], the global "
"position of the [Node3D] specified for this is used as origin."
msgstr ""
"Если [member origin_from] равен [constant ORIGIN_FROM_EXTERNAL_NODE], то в "
"качестве начала координат используется указанная для него глобальная позиция "
"[Node3D]."

msgid ""
"This value determines from what origin is retrieved for use in the "
"calculation of the forward vector."
msgstr ""
"Это значение определяет, из какого источника извлекается значение для "
"использования при расчете прямого вектора."

msgid ""
"The offset of the bone pose origin. Matching the origins by offset is useful "
"for cases where multiple bones must always face the same direction, such as "
"the eyes.\n"
"[b]Note:[/b] This value indicates the local position of the object set in "
"[member origin_from]."
msgstr ""
"Смещение начала позы кости. Сопоставление начала по смещению полезно в "
"случаях, когда несколько костей должны всегда смотреть в одном направлении, "
"например, глаза.\n"
"[b]Примечание:[/b] Это значение указывает локальное положение объекта, "
"заданного в [member origin_from]."

msgid ""
"If the target passes through too close to the origin than this value, time-"
"based interpolation is used even if the target is within the angular "
"limitations, to prevent the angular velocity from becoming too high."
msgstr ""
"Если цель движется слишком близко к началу координат, чем это значение, "
"используется временная интерполяция, даже если цель находится в пределах "
"угловых ограничений, чтобы не допустить слишком высокого значения угловой "
"скорости."

msgid ""
"The threshold to start damping for [member primary_limit_angle]. It provides "
"non-linear (b-spline) interpolation, let it feel more resistance the more it "
"rotate to the edge limit. This is useful for simulating the limits of human "
"motion.\n"
"If [code]1.0[/code], no damping is performed. If [code]0.0[/code], damping is "
"always performed."
msgstr ""
"Порог для начала демпфирования для [member primary_limit_angle]. Он "
"обеспечивает нелинейную (b-сплайн) интерполяцию, позволяя ему чувствовать "
"большее сопротивление, чем больше он вращается к пределу края. Это полезно "
"для моделирования пределов человеческого движения.\n"
"Если [code]1.0[/code], демпфирование не выполняется. Если [code]0.0[/code], "
"демпфирование выполняется всегда."

msgid ""
"The limit angle of the primary rotation when [member symmetry_limitation] is "
"[code]true[/code]."
msgstr ""
"Предельный угол первичного вращения, когда [member symmetry_limitation] равно "
"[code]true[/code]."

msgid ""
"The threshold to start damping for [member primary_negative_limit_angle]."
msgstr ""
"Пороговое значение для начала демпфирования для [member "
"primary_negative_limit_angle]."

msgid ""
"The limit angle of negative side of the primary rotation when [member "
"symmetry_limitation] is [code]false[/code]."
msgstr ""
"Предельный угол отрицательной стороны первичного вращения, когда [member "
"symmetry_limitation] равно [code]false[/code]."

msgid ""
"The threshold to start damping for [member primary_positive_limit_angle]."
msgstr ""
"Пороговое значение для начала демпфирования для [member "
"primary_positive_limit_angle]."

msgid ""
"The limit angle of positive side of the primary rotation when [member "
"symmetry_limitation] is [code]false[/code]."
msgstr ""
"Предельный угол положительной стороны первичного вращения, когда [member "
"symmetry_limitation] равно [code]false[/code]."

msgid ""
"The axis of the first rotation. This [SkeletonModifier3D] works by "
"compositing the rotation by Euler angles to prevent to rotate the [member "
"forward_axis]."
msgstr ""
"Ось первого вращения. Этот [SkeletonModifier3D] работает, компонуя вращение "
"по углам Эйлера, чтобы предотвратить вращение [member forward_axis]."

msgid "The threshold to start damping for [member secondary_limit_angle]."
msgstr ""
"Пороговое значение для начала демпфирования [member secondary_limit_angle]."

msgid ""
"The limit angle of the secondary rotation when [member symmetry_limitation] "
"is [code]true[/code]."
msgstr ""
"Предельный угол вторичного вращения, когда [member symmetry_limitation] равно "
"[code]true[/code]."

msgid ""
"The threshold to start damping for [member secondary_negative_limit_angle]."
msgstr ""
"Пороговое значение для начала демпфирования [member "
"secondary_negative_limit_angle]."

msgid ""
"The limit angle of negative side of the secondary rotation when [member "
"symmetry_limitation] is [code]false[/code]."
msgstr ""
"Предельный угол отрицательной стороны вторичного вращения, когда [member "
"symmetry_limitation] равно [code]false[/code]."

msgid ""
"The threshold to start damping for [member secondary_positive_limit_angle]."
msgstr ""
"Пороговое значение для начала демпфирования для [member "
"secondary_positive_limit_angle]."

msgid ""
"The limit angle of positive side of the secondary rotation when [member "
"symmetry_limitation] is [code]false[/code]."
msgstr ""
"Предельный угол положительной стороны вторичного вращения, когда [member "
"symmetry_limitation] равно [code]false[/code]."

msgid ""
"If [code]true[/code], the limitations are spread from the bone "
"symmetrically.\n"
"If [code]false[/code], the limitation can be specified separately for each "
"side of the bone rest."
msgstr ""
"Если [code]true[/code], ограничения распространяются от кости симметрично.\n"
"Если [code]false[/code], ограничение можно указать отдельно для каждой "
"стороны костной опоры."

msgid ""
"The [NodePath] to the node that is the target for the look at modification. "
"This node is what the modification will rotate the bone to."
msgstr ""
"[NodePath] к узлу, который является целью для модификации look at. Этот узел "
"— то, к чему модификация будет поворачивать кость."

msgid ""
"The transition type of the time-based interpolation. See also [enum "
"Tween.TransitionType]."
msgstr ""
"Тип перехода временной интерполяции. См. также [enum Tween.TransitionType]."

msgid ""
"If [code]true[/code], limits the amount of rotation. For example, this helps "
"to prevent a character's neck from rotating 360 degrees.\n"
"[b]Note:[/b] As with [AnimationTree] blending, interpolation is provided that "
"favors [method Skeleton3D.get_bone_rest]. This means that interpolation does "
"not select the shortest path in some cases.\n"
"[b]Note:[/b] Some values for [member transition_type] (such as [constant "
"Tween.TRANS_BACK], [constant Tween.TRANS_ELASTIC], and [constant "
"Tween.TRANS_SPRING]) may exceed the limitations. If interpolation occurs "
"while overshooting the limitations, the result might not respect the bone "
"rest."
msgstr ""
"Если [code]true[/code], ограничивается величина вращения. Например, это "
"помогает предотвратить вращение шеи персонажа на 360 градусов.\n"
"[b]Примечание:[/b] Как и в случае смешивания [AnimationTree], предоставляется "
"интерполяция, которая отдаёт предпочтение [method Skeleton3D.get_bone_rest]. "
"Это означает, что в некоторых случаях интерполяция не выбирает кратчайший "
"путь.\n"
"[b]Примечание:[/b] Некоторые значения [member transition_type] (например, "
"[constant Tween.TRANS_BACK], [constant Tween.TRANS_ELASTIC] и [constant "
"Tween.TRANS_SPRING]) могут превышать ограничения. Если интерполяция "
"происходит с превышением ограничений, результат может не учитывать опору "
"кости."

msgid "If [code]true[/code], provides rotation by two axes."
msgstr "Если [code]true[/code], обеспечивает вращение по двум осям."

msgid ""
"The bone rest position of the bone specified in [member bone] is used as "
"origin."
msgstr ""
"В качестве исходного положения используется положение покоя кости, указанное "
"в [member bone]."

msgid ""
"The bone global pose position of the bone specified in [member origin_bone] "
"is used as origin.\n"
"[b]Note:[/b] It is recommended that you select only the parent bone unless "
"you are familiar with the bone processing process. The specified bone pose at "
"the time the [LookAtModifier3D] is processed is used as a reference. In other "
"words, if you specify a child bone and the [LookAtModifier3D] causes the "
"child bone to move, the rendered result and direction will not match."
msgstr ""
"Глобальная позиция позы кости, указанная в [member origin_bone], используется "
"в качестве начала координат.\n"
"[b]Примечание:[/b] Рекомендуется выбирать только родительскую кость, если вы "
"не знакомы с процессом обработки костей. Указанная поза кости во время "
"обработки [LookAtModifier3D] используется в качестве ссылки. Другими словами, "
"если вы указываете дочернюю кость, а [LookAtModifier3D] заставляет дочернюю "
"кость двигаться, визуализированный результат и направление не будут совпадать."

msgid ""
"The global position of the [Node3D] specified in [member "
"origin_external_node] is used as origin.\n"
"[b]Note:[/b] Same as [constant ORIGIN_FROM_SPECIFIC_BONE], when specifying a "
"[BoneAttachment3D] with a child bone assigned, the rendered result and "
"direction will not match."
msgstr ""
"Глобальное положение [Node3D], указанное в [member origin_external_node], "
"используется в качестве начала координат.\n"
"[b]Примечание:[/b] То же, что и [constant ORIGIN_FROM_SPECIFIC_BONE], при "
"указании [BoneAttachment3D] с назначенной дочерней костью, визуализированный "
"результат и направление не будут совпадать."

msgid "Abstract base class for the game's main loop."
msgstr "Абстрактный базовый класс для основного цикла игры."

msgid ""
"[MainLoop] is the abstract base class for a Godot project's game loop. It is "
"inherited by [SceneTree], which is the default game loop implementation used "
"in Godot projects, though it is also possible to write and use one's own "
"[MainLoop] subclass instead of the scene tree.\n"
"Upon the application start, a [MainLoop] implementation must be provided to "
"the OS; otherwise, the application will exit. This happens automatically (and "
"a [SceneTree] is created) unless a [MainLoop] [Script] is provided from the "
"command line (with e.g. [code]godot -s my_loop.gd[/code]) or the [member "
"ProjectSettings.application/run/main_loop_type] project setting is "
"overwritten.\n"
"Here is an example script implementing a simple [MainLoop]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"class_name CustomMainLoop\n"
"extends MainLoop\n"
"\n"
"var time_elapsed = 0\n"
"\n"
"func _initialize():\n"
"\tprint(\"Initialized:\")\n"
"\tprint(\"  Starting time: %s\" % str(time_elapsed))\n"
"\n"
"func _process(delta):\n"
"\ttime_elapsed += delta\n"
"\t# Return true to end the main loop.\n"
"\treturn Input.get_mouse_button_mask() != 0 || "
"Input.is_key_pressed(KEY_ESCAPE)\n"
"\n"
"func _finalize():\n"
"\tprint(\"Finalized:\")\n"
"\tprint(\"  End time: %s\" % str(time_elapsed))\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[GlobalClass]\n"
"public partial class CustomMainLoop : MainLoop\n"
"{\n"
"\tprivate double _timeElapsed = 0;\n"
"\n"
"\tpublic override void _Initialize()\n"
"\t{\n"
"\t\tGD.Print(\"Initialized:\");\n"
"\t\tGD.Print($\"  Starting Time: {_timeElapsed}\");\n"
"\t}\n"
"\n"
"\tpublic override bool _Process(double delta)\n"
"\t{\n"
"\t\t_timeElapsed += delta;\n"
"\t\t// Return true to end the main loop.\n"
"\t\treturn Input.GetMouseButtonMask() != 0 || "
"Input.IsKeyPressed(Key.Escape);\n"
"\t}\n"
"\n"
"\tprivate void _Finalize()\n"
"\t{\n"
"\t\tGD.Print(\"Finalized:\");\n"
"\t\tGD.Print($\"  End Time: {_timeElapsed}\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[MainLoop] — абстрактный базовый класс для игрового цикла проекта Godot. Он "
"наследуется [SceneTree], который является реализацией игрового цикла по "
"умолчанию, используемой в проектах Godot, хотя также возможно написать и "
"использовать свой собственный подкласс [MainLoop] вместо дерева сцены.\n"
"При запуске приложения необходимо предоставить ОС реализацию [MainLoop]; в "
"противном случае приложение завершит работу. Это происходит автоматически (и "
"создается [SceneTree]), если только [MainLoop] [Script] не предоставлен из "
"командной строки (например, [code]godot -s my_loop.gd[/code]) или не "
"перезаписана настройка проекта [member ProjectSettings.application/run/"
"main_loop_type].\n"
"Вот пример скрипта, реализующего простой [MainLoop]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"class_name CustomMainLoop\n"
"extends MainLoop\n"
"\n"
"var time_elapsed = 0\n"
"\n"
"func _initialize():\n"
"\tprint(\"Initialized:\")\n"
"\tprint(\"  Starting time: %s\" % str(time_elapsed))\n"
"\n"
"func _process(delta):\n"
"\ttime_elapsed += delta\n"
"\t# Верните true, чтобы завершить основной цикл..\n"
"\treturn Input.get_mouse_button_mask() != 0 || "
"Input.is_key_pressed(KEY_ESCAPE)\n"
"\n"
"func _finalize():\n"
"\tprint(\"Finalized:\")\n"
"\tprint(\"  End time: %s\" % str(time_elapsed))\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[GlobalClass]\n"
"public partial class CustomMainLoop : MainLoop\n"
"{\n"
"\tprivate double _timeElapsed = 0;\n"
"\n"
"\tpublic override void _Initialize()\n"
"\t{\n"
"\t\tGD.Print(\"Initialized:\");\n"
"\t\tGD.Print($\"  Starting Time: {_timeElapsed}\");\n"
"\t}\n"
"\n"
"\tpublic override bool _Process(double delta)\n"
"\t{\n"
"\t\t_timeElapsed += delta;\n"
"\t\t// Верните true, чтобы завершить основной цикл..\n"
"\t\treturn Input.GetMouseButtonMask() != 0 || "
"Input.IsKeyPressed(Key.Escape);\n"
"\t}\n"
"\n"
"\tprivate void _Finalize()\n"
"\t{\n"
"\t\tGD.Print(\"Finalized:\");\n"
"\t\tGD.Print($\"  End Time: {_timeElapsed}\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Called before the program exits."
msgstr "Вызывается перед завершением работы программы."

msgid "Called once during initialization."
msgstr "Вызывается один раз во время инициализации."

msgid ""
"Called each physics tick. [param delta] is the logical time between physics "
"ticks in seconds and is equal to [member Engine.time_scale] / [member "
"Engine.physics_ticks_per_second]. Equivalent to [method "
"Node._physics_process].\n"
"If implemented, the method must return a boolean value. [code]true[/code] "
"ends the main loop, while [code]false[/code] lets it proceed to the next "
"step.\n"
"[b]Note:[/b] [method _physics_process] may be called up to [member "
"Engine.max_physics_steps_per_frame] times per (idle) frame. This step limit "
"may be reached when the engine is suffering performance issues.\n"
"[b]Note:[/b] Accumulated [param delta] may diverge from real world seconds."
msgstr ""
"Вызывается каждый физический тик. [param delta] — это логическое время между "
"физическими тиками в секундах, равное [member Engine.time_scale] / [member "
"Engine.physics_ticks_per_second]. Эквивалентно [method "
"Node._physics_process].\n"
"Если метод реализован, он должен возвращать логическое значение. [code]true[/"
"code] завершает основной цикл, а [code]false[/code] позволяет перейти к "
"следующему шагу.\n"
"[b]Примечание:[/b] [method _physics_process] может быть вызван до [member "
"Engine.max_physics_steps_per_frame] раз за (неактивный) кадр. Это ограничение "
"по шагам может быть достигнуто, когда движок испытывает проблемы с "
"производительностью.\n"
"[b]Примечание:[/b] Накопленное значение [param delta] может отличаться от "
"реального количества секунд."

msgid ""
"Called on each idle frame, prior to rendering, and after physics ticks have "
"been processed. [param delta] is the time between frames in seconds. "
"Equivalent to [method Node._process].\n"
"If implemented, the method must return a boolean value. [code]true[/code] "
"ends the main loop, while [code]false[/code] lets it proceed to the next "
"frame.\n"
"[b]Note:[/b] When the engine is struggling and the frame rate is lowered, "
"[param delta] will increase. When [param delta] is increased, it's capped at "
"a maximum of [member Engine.time_scale] * [member "
"Engine.max_physics_steps_per_frame] / [member "
"Engine.physics_ticks_per_second]. As a result, accumulated [param delta] may "
"not represent real world time.\n"
"[b]Note:[/b] When [code]--fixed-fps[/code] is enabled or the engine is "
"running in Movie Maker mode (see [MovieWriter]), process [param delta] will "
"always be the same for every frame, regardless of how much time the frame "
"took to render.\n"
"[b]Note:[/b] Frame delta may be post-processed by [member OS.delta_smoothing] "
"if this is enabled for the project."
msgstr ""
"Вызывается в каждом бездействующем кадре, перед рендерингом и после обработки "
"физических тактов. [param delta] — это время между кадрами в секундах. "
"Эквивалентно [method Node._process].\n"
"Если метод реализован, он должен возвращать логическое значение. [code]true[/"
"code] завершает основной цикл, а [code]false[/code] позволяет перейти к "
"следующему кадру.\n"
"[b]Примечание:[/b] Когда движок испытывает трудности и частота кадров "
"снижается, [param delta] увеличивается. При увеличении [param delta] он "
"ограничен максимальным значением [member Engine.time_scale] * [member "
"Engine.max_physics_steps_per_frame] / [member "
"Engine.physics_ticks_per_second]. В результате накопленное значение [param "
"delta] может не отражать реальное время.\n"
"[b]Примечание:[/b] Если [code]--fixed-fps[/code] включен или движок работает "
"в режиме Movie Maker (см. [MovieWriter]), параметр [param delta] всегда будет "
"одинаковым для каждого кадра, независимо от времени рендеринга.\n"
"[b]Примечание:[/b] Дельта-кадр может быть обработана [member "
"OS.delta_smoothing], если эта функция включена в проекте."

msgid "Emitted when a user responds to a permission request."
msgstr "Выдается, когда пользователь отвечает на запрос разрешения."

msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Specific to the iOS platform."
msgstr ""
"Уведомление, полученное от ОС, когда приложение превышает выделенную ему "
"память.\n"
"Специально для платформы iOS."

msgid ""
"Notification received when translations may have changed. Can be triggered by "
"the user changing the locale. Can be used to respond to language changes, for "
"example to change the UI strings on the fly. Useful when working with the "
"built-in translation support, like [method Object.tr]."
msgstr ""
"Уведомление получено, когда переводы могли измениться. Может быть вызвано "
"изменением пользователем локали. Может использоваться для реагирования на "
"изменения языка, например, для изменения строк пользовательского интерфейса "
"на лету. Полезно при работе со встроенной поддержкой перевода, например "
"[method Object.tr]."

msgid ""
"Notification received from the OS when a request for \"About\" information is "
"sent.\n"
"Specific to the macOS platform."
msgstr ""
"Уведомление, полученное от ОС при отправке запроса на информацию «О "
"программе».\n"
"Специально для платформы macOS."

msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms if the crash handler is enabled."
msgstr ""
"Уведомление получено от обработчика сбоев Godot, когда движок собирается "
"рухнуть.\n"
"Реализовано на настольных платформах, если обработчик сбоев включен."

msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Specific to the macOS platform."
msgstr ""
"Уведомление, полученное от ОС при обновлении Input Method Engine (например, "
"изменение положения курсора IME или строки композиции).\n"
"Специально для платформы macOS."

msgid ""
"Notification received from the OS when the application is resumed.\n"
"Specific to the Android and iOS platforms."
msgstr ""
"Уведомление, полученное от ОС при возобновлении работы приложения.\n"
"Специально для платформ Android и iOS."

msgid ""
"Notification received from the OS when the application is paused.\n"
"Specific to the Android and iOS platforms.\n"
"[b]Note:[/b] On iOS, you only have approximately 5 seconds to finish a task "
"started by this signal. If you go over this allotment, iOS will kill the app "
"instead of pausing it."
msgstr ""
"Уведомление, полученное от ОС, когда приложение приостановлено.\n"
"Специально для платформ Android и iOS.\n"
"[b]Примечание:[/b] В iOS у вас есть всего около 5 секунд, чтобы завершить "
"задачу, запущенную этим сигналом. Если вы превысите это время, iOS завершит "
"приложение вместо того, чтобы приостановить его."

msgid ""
"Notification received from the OS when the application is focused, i.e. when "
"changing the focus from the OS desktop or a thirdparty application to any "
"open window of the Godot instance.\n"
"Implemented on desktop and mobile platforms."
msgstr ""
"Уведомление, полученное от ОС, когда приложение находится в фокусе, т. е. при "
"изменении фокуса с рабочего стола ОС или стороннего приложения на любое "
"открытое окно экземпляра Godot.\n"
"Реализовано на настольных и мобильных платформах."

msgid ""
"Notification received from the OS when the application is defocused, i.e. "
"when changing the focus from any open window of the Godot instance to the OS "
"desktop or a thirdparty application.\n"
"Implemented on desktop and mobile platforms."
msgstr ""
"Уведомление, полученное от ОС, когда приложение расфокусировано, т. е. при "
"изменении фокуса с любого открытого окна экземпляра Godot на рабочий стол ОС "
"или стороннее приложение.\n"
"Реализовано на настольных и мобильных платформах."

msgid "Notification received when text server is changed."
msgstr "Получено уведомление при смене текстового сервера."

msgid "A container that keeps a margin around its child controls."
msgstr ""
"Контейнер, сохраняющий отступы вокруг своих дочерних элементов управления."

msgid ""
"[MarginContainer] adds an adjustable margin on each side of its child "
"controls. The margins are added around all children, not around each "
"individual one. To control the [MarginContainer]'s margins, use the "
"[code]margin_*[/code] theme properties listed below.\n"
"[b]Note:[/b] The margin sizes are theme overrides, not normal properties. "
"This is an example of how to change them in code:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# This code sample assumes the current script is extending MarginContainer.\n"
"var margin_value = 100\n"
"add_theme_constant_override(\"margin_top\", margin_value)\n"
"add_theme_constant_override(\"margin_left\", margin_value)\n"
"add_theme_constant_override(\"margin_bottom\", margin_value)\n"
"add_theme_constant_override(\"margin_right\", margin_value)\n"
"[/gdscript]\n"
"[csharp]\n"
"// This code sample assumes the current script is extending MarginContainer.\n"
"int marginValue = 100;\n"
"AddThemeConstantOverride(\"margin_top\", marginValue);\n"
"AddThemeConstantOverride(\"margin_left\", marginValue);\n"
"AddThemeConstantOverride(\"margin_bottom\", marginValue);\n"
"AddThemeConstantOverride(\"margin_right\", marginValue);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[MarginContainer] добавляет регулируемое поле с каждой стороны своих дочерних "
"элементов управления. Поля добавляются вокруг всех дочерних элементов, а не "
"вокруг каждого отдельного. Чтобы управлять полями [MarginContainer], "
"используйте свойства темы [code]margin_*[/code], перечисленные ниже.\n"
"[b]Примечание:[/b] Размеры полей являются переопределениями темы, а не "
"обычными свойствами. Вот пример того, как изменить их в коде:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# В этом примере кода предполагается, что текущий скрипт расширяет "
"MarginContainer.\n"
"var margin_value = 100\n"
"add_theme_constant_override(\"margin_top\", margin_value)\n"
"add_theme_constant_override(\"margin_left\", margin_value)\n"
"add_theme_constant_override(\"margin_bottom\", margin_value)\n"
"add_theme_constant_override(\"margin_right\", margin_value)\n"
"[/gdscript]\n"
"[csharp]\n"
"// В этом примере кода предполагается, что текущий скрипт расширяет "
"MarginContainer.\n"
"int marginValue = 100;\n"
"AddThemeConstantOverride(\"margin_top\", marginValue);\n"
"AddThemeConstantOverride(\"margin_left\", marginValue);\n"
"AddThemeConstantOverride(\"margin_bottom\", marginValue);\n"
"AddThemeConstantOverride(\"margin_right\", marginValue);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Offsets towards the inside direct children of the container by this amount of "
"pixels from the bottom."
msgstr ""
"Смещение в сторону внутренних прямых дочерних элементов контейнера на "
"указанное количество пикселей от нижнего края."

msgid ""
"Offsets towards the inside direct children of the container by this amount of "
"pixels from the left."
msgstr ""
"Смещение в сторону внутренних прямых дочерних элементов контейнера на "
"указанное количество пикселей слева."

msgid ""
"Offsets towards the inside direct children of the container by this amount of "
"pixels from the right."
msgstr ""
"Смещается в сторону внутренних прямых дочерних элементов контейнера на "
"указанное количество пикселей справа."

msgid ""
"Offsets towards the inside direct children of the container by this amount of "
"pixels from the top."
msgstr ""
"Смещение в сторону внутренних прямых дочерних элементов контейнера на "
"указанное количество пикселей сверху."

msgid "Generic 2D position hint for editing."
msgstr "Общая подсказка по положению 2D для редактирования."

msgid ""
"Generic 2D position hint for editing. It's just like a plain [Node2D], but it "
"displays as a cross in the 2D editor at all times. You can set the cross' "
"visual size by using the gizmo in the 2D editor while the node is selected."
msgstr ""
"Общая подсказка положения 2D для редактирования. Это как обычный [Node2D], но "
"он отображается как крест в 2D-редакторе все время. Вы можете задать "
"визуальный размер креста, используя гизмо в 2D-редакторе, когда выбран узел."

msgid "Size of the gizmo cross that appears in the editor."
msgstr "Размер крестика гизмо, который отображается в редакторе."

msgid "Generic 3D position hint for editing."
msgstr "Общая подсказка по положению в 3D для редактирования."

msgid ""
"Generic 3D position hint for editing. It's just like a plain [Node3D], but it "
"displays as a cross in the 3D editor at all times."
msgstr ""
"Общая подсказка положения 3D для редактирования. Это как обычный [Node3D], но "
"он всегда отображается в виде крестика в 3D-редакторе."

msgid "Data transformation (marshaling) and encoding helpers."
msgstr "Помощники по преобразованию (маршалингу) и кодированию данных."

msgid "Provides data transformation and encoding utility functions."
msgstr "Предоставляет служебные функции преобразования и кодирования данных."

msgid ""
"Returns a decoded [PackedByteArray] corresponding to the Base64-encoded "
"string [param base64_str]."
msgstr ""
"Возвращает декодированный [PackedByteArray], соответствующий закодированной в "
"Base64 строке [param base64_str]."

msgid ""
"Returns a decoded string corresponding to the Base64-encoded string [param "
"base64_str]."
msgstr ""
"Возвращает декодированную строку, соответствующую строке в кодировке Base64 "
"[param base64_str]."

msgid ""
"Returns a decoded [Variant] corresponding to the Base64-encoded string [param "
"base64_str]. If [param allow_objects] is [code]true[/code], decoding objects "
"is allowed.\n"
"Internally, this uses the same decoding mechanism as the [method "
"@GlobalScope.bytes_to_var] method.\n"
"[b]Warning:[/b] Deserialized objects can contain code which gets executed. Do "
"not use this option if the serialized object comes from untrusted sources to "
"avoid potential security threats such as remote code execution."
msgstr ""
"Возвращает декодированный [Variant], соответствующий закодированной в Base64 "
"строке [param base64_str]. Если [param allow_objects] равен [code]true[/"
"code], декодирование объектов разрешено.\n"
"Внутренне это использует тот же механизм декодирования, что и метод [method "
"@GlobalScope.bytes_to_var].\n"
"[b]Предупреждение:[/b] Десериализованные объекты могут содержать код, который "
"выполняется. Не используйте эту опцию, если сериализованный объект поступает "
"из ненадежных источников, чтобы избежать потенциальных угроз безопасности, "
"таких как удаленное выполнение кода."

msgid "Returns a Base64-encoded string of a given [PackedByteArray]."
msgstr "Возвращает строку заданного [PackedByteArray] в кодировке Base64."

msgid "Returns a Base64-encoded string of the UTF-8 string [param utf8_str]."
msgstr "Возвращает строку UTF-8 [param utf8_str] в кодировке Base64."

msgid ""
"Returns a Base64-encoded string of the [Variant] [param variant]. If [param "
"full_objects] is [code]true[/code], encoding objects is allowed (and can "
"potentially include code).\n"
"Internally, this uses the same encoding mechanism as the [method "
"@GlobalScope.var_to_bytes] method."
msgstr ""
"Возвращает строку [Variant] [param variation] в кодировке Base64. Если [param "
"full_objects] равно [code]true[/code], кодирование объектов разрешено (и "
"потенциально может включать код).\n"
"Внутри это использует тот же механизм кодирования, что и метод [method "
"@GlobalScope.var_to_bytes]."

msgid ""
"Virtual base class for applying visual properties to an object, such as color "
"and roughness."
msgstr ""
"Виртуальный базовый класс для применения визуальных свойств к объекту, таких "
"как цвет и шероховатость."

msgid ""
"[Material] is a base resource used for coloring and shading geometry. All "
"materials inherit from it and almost all [VisualInstance3D] derived nodes "
"carry a [Material]. A few flags and parameters are shared between all "
"material types and are configured here.\n"
"Importantly, you can inherit from [Material] to create your own custom "
"material type in script or in GDExtension."
msgstr ""
"[Material] — это базовый ресурс, используемый для раскрашивания и затенения "
"геометрии. Все материалы наследуются от него, и почти все производные узлы "
"[VisualInstance3D] содержат [Material]. Несколько флагов и параметров "
"являются общими для всех типов материалов и настраиваются здесь.\n"
"Важно, что вы можете наследовать от [Material], чтобы создать свой "
"собственный тип материала в скрипте или в GDExtension."

msgid ""
"Only exposed for the purpose of overriding. You cannot call this function "
"directly. Used internally to determine if [member next_pass] should be shown "
"in the editor or not."
msgstr ""
"Выводится только с целью переопределения. Эту функцию нельзя вызвать "
"напрямую. Используется внутренне для определения, следует ли показывать "
"[member next_pass] в редакторе или нет."

msgid ""
"Only exposed for the purpose of overriding. You cannot call this function "
"directly. Used internally to determine if [member render_priority] should be "
"shown in the editor or not."
msgstr ""
"Выводится только с целью переопределения. Эту функцию нельзя вызвать "
"напрямую. Используется внутренне для определения того, следует ли показывать "
"[member render_priority] в редакторе или нет."

msgid ""
"Only exposed for the purpose of overriding. You cannot call this function "
"directly. Used internally by various editor tools."
msgstr ""
"Только для целей переопределения. Эту функцию нельзя вызвать напрямую. "
"Используется внутри различными инструментами редактора."

msgid ""
"Only exposed for the purpose of overriding. You cannot call this function "
"directly. Used internally by various editor tools. Used to access the RID of "
"the [Material]'s [Shader]."
msgstr ""
"Открывается только для переопределения. Эту функцию нельзя вызвать напрямую. "
"Используется внутри различными инструментами редактора. Используется для "
"доступа к RID [Shader] [Material]."

msgid "Creates a placeholder version of this resource ([PlaceholderMaterial])."
msgstr "Создает версию-заполнитель этого ресурса ([PlaceholderMaterial])."

msgid ""
"Only available when running in the editor. Opens a popup that visualizes the "
"generated shader code, including all variants and internal shader code. See "
"also [method Shader.inspect_native_shader_code]."
msgstr ""
"Доступно только при запуске в редакторе. Открывает всплывающее окно, "
"визуализирующее сгенерированный код шейдера, включая все варианты и "
"внутренний код шейдера. См. также [method Shader.inspect_native_shader_code]."

msgid ""
"Sets the [Material] to be used for the next pass. This renders the object "
"again using a different material.\n"
"[b]Note:[/b] [member next_pass] materials are not necessarily drawn "
"immediately after the source [Material]. Draw order is determined by material "
"properties, [member render_priority], and distance to camera.\n"
"[b]Note:[/b] This only applies to [StandardMaterial3D]s and [ShaderMaterial]s "
"with type \"Spatial\"."
msgstr ""
"Устанавливает [Material], который будет использоваться для следующего "
"прохода. Это снова визуализирует объект с использованием другого материала.\n"
"[b]Примечание:[/b] Материалы [member next_pass] не обязательно отрисовываются "
"сразу после исходного [Material]. Порядок отрисовки определяется свойствами "
"материала, [member render_priority] и расстоянием до камеры.\n"
"[b]Примечание:[/b] Это применимо только к [StandardMaterial3D] и "
"[ShaderMaterial] с типом «Spatial»."

msgid ""
"Sets the render priority for objects in 3D scenes. Higher priority objects "
"will be sorted in front of lower priority objects. In other words, all "
"objects with [member render_priority] [code]1[/code] will render on top of "
"all objects with [member render_priority] [code]0[/code].\n"
"[b]Note:[/b] This only applies to [StandardMaterial3D]s and [ShaderMaterial]s "
"with type \"Spatial\".\n"
"[b]Note:[/b] This will not impact how transparent objects are sorted relative "
"to opaque objects or how dynamic meshes will be sorted relative to other "
"opaque meshes. This is because all transparent objects are drawn after all "
"opaque objects and all dynamic opaque meshes are drawn before other opaque "
"meshes."
msgstr ""
"Устанавливает приоритет рендеринга для объектов в 3D-сценах. Объекты с более "
"высоким приоритетом будут отсортированы перед объектами с более низким "
"приоритетом. Другими словами, все объекты с [member render_priority] [code]1[/"
"code] будут отрисовываться поверх всех объектов с [member render_priority] "
"[code]0[/code].\n"
"[b]Примечание:[/b] Это применимо только к [StandardMaterial3D] и "
"[ShaderMaterial] с типом \"Spatial\".\n"
"[b]Примечание:[/b] Это не повлияет на то, как прозрачные объекты сортируются "
"относительно непрозрачных объектов или как динамические сетки будут "
"сортироваться относительно других непрозрачных сеток. Это связано с тем, что "
"все прозрачные объекты отрисовываются после всех непрозрачных объектов, а все "
"динамические непрозрачные сетки отрисовываются до других непрозрачных сеток."

msgid "Maximum value for the [member render_priority] parameter."
msgstr "Максимальное значение параметра [member render_priority]."

msgid "Minimum value for the [member render_priority] parameter."
msgstr "Минимальное значение параметра [member render_priority]."

msgid "A horizontal menu bar that creates a menu for each [PopupMenu] child."
msgstr ""
"Горизонтальная строка меню, создающая меню для каждого дочернего элемента "
"[PopupMenu]."

msgid ""
"A horizontal menu bar that creates a menu for each [PopupMenu] child. New "
"items are created by adding [PopupMenu]s to this node. Item title is "
"determined by [member Window.title], or node name if [member Window.title] is "
"empty. Item title can be overridden using [method set_menu_title]."
msgstr ""
"Горизонтальная строка меню, которая создает меню для каждого дочернего "
"элемента [PopupMenu]. Новые элементы создаются путем добавления [PopupMenu] к "
"этому узлу. Заголовок элемента определяется [member Window.title] или именем "
"узла, если [member Window.title] пуст. Заголовок элемента можно "
"переопределить с помощью [method set_menu_title]."

msgid "Returns number of menu items."
msgstr "Возвращает количество пунктов меню."

msgid "Returns [PopupMenu] associated with menu item."
msgstr "Возвращает [PopupMenu], связанный с пунктом меню."

msgid "Returns menu item title."
msgstr "Возвращает заголовок пункта меню."

msgid "Returns menu item tooltip."
msgstr "Возвращает подсказку пункта меню."

msgid "Returns [code]true[/code], if menu item is disabled."
msgstr "Возвращает [code]true[/code], если пункт меню отключен."

msgid "Returns [code]true[/code], if menu item is hidden."
msgstr "Возвращает [code]true[/code], если пункт меню скрыт."

msgid ""
"Returns [code]true[/code], if system global menu is supported and used by "
"this [MenuBar]."
msgstr ""
"Возвращает [code]true[/code], если системное глобальное меню поддерживается и "
"используется этим [MenuBar]."

msgid ""
"If [code]true[/code], shortcuts are disabled and cannot be used to trigger "
"the button."
msgstr ""
"Если [code]true[/code], сочетания клавиш отключены и не могут использоваться "
"для активации кнопки."

msgid "If [code]true[/code], menu item is disabled."
msgstr "Если [code]true[/code], пункт меню отключен."

msgid "If [code]true[/code], menu item is hidden."
msgstr "Если [code]true[/code], пункт меню скрыт."

msgid "Sets menu item title."
msgstr "Устанавливает заголовок пункта меню."

msgid "Sets menu item tooltip."
msgstr "Устанавливает подсказку для пункта меню."

msgid "Flat [MenuBar] don't display item decoration."
msgstr "Плоский [MenuBar] не отображает оформление элементов."

msgid ""
"If [code]true[/code], [MenuBar] will use system global menu when supported.\n"
"[b]Note:[/b] If [code]true[/code] and global menu is supported, this node is "
"not displayed, has zero size, and all its child nodes except [PopupMenu]s are "
"inaccessible.\n"
"[b]Note:[/b] This property overrides the value of the [member "
"PopupMenu.prefer_native_menu] property of the child nodes."
msgstr ""
"Если [code]true[/code], [MenuBar] будет использовать системное глобальное "
"меню, если поддерживается.\n"
"[b]Примечание:[/b] Если [code]true[/code] и глобальное меню поддерживается, "
"этот узел не отображается, имеет нулевой размер, а все его дочерние узлы, за "
"исключением [PopupMenu], недоступны.\n"
"[b]Примечание:[/b] Это свойство переопределяет значение свойства [member "
"PopupMenu.prefer_native_menu] дочерних узлов."

msgid ""
"Position order in the global menu to insert [MenuBar] items at. All menu "
"items in the [MenuBar] are always inserted as a continuous range. Menus with "
"lower [member start_index] are inserted first. Menus with [member "
"start_index] equal to [code]-1[/code] are inserted last."
msgstr ""
"Порядок расположения в глобальном меню для вставки элементов [MenuBar]. Все "
"элементы меню в [MenuBar] всегда вставляются как непрерывный диапазон. Меню с "
"меньшим [member start_index] вставляются первыми. Меню с [member "
"start_index], равным [code]-1[/code], вставляются последними."

msgid ""
"If [code]true[/code], when the cursor hovers above menu item, it will close "
"the current [PopupMenu] and open the other one."
msgstr ""
"Если [code]true[/code], то при наведении курсора на пункт меню текущее "
"[PopupMenu] закроется и откроется другое."

msgid "Default text [Color] of the menu item."
msgstr "[Color] текста по умолчанию для пункта меню."

msgid "Text [Color] used when the menu item is disabled."
msgstr "[Color] текста используется, когда пункт меню отключен."

msgid ""
"Text [Color] used when the menu item is focused. Only replaces the normal "
"text color of the menu item. Disabled, hovered, and pressed states take "
"precedence over this color."
msgstr ""
"[Color] текста, используемый, когда элемент меню находится в фокусе. Заменяет "
"только обычный цвет текста элемента меню. Отключенные, наведенные и нажатые "
"состояния имеют приоритет над этим цветом."

msgid "Text [Color] used when the menu item is being hovered."
msgstr "[Color] текста, используемый при наведении курсора на пункт меню."

msgid "Text [Color] used when the menu item is being hovered and pressed."
msgstr ""
"[Color] текста, используемый при наведении курсора на пункт меню и нажатии на "
"него."

msgid "The tint of text outline of the menu item."
msgstr "Оттенок контура текста пункта меню."

msgid "Text [Color] used when the menu item is being pressed."
msgstr "[Color] текста, используемый при нажатии на пункт меню."

msgid "The horizontal space between menu items."
msgstr "Горизонтальное пространство между пунктами меню."

msgid "[Font] of the menu item's text."
msgstr "[Font] текста пункта меню."

msgid "Font size of the menu item's text."
msgstr "Размер шрифта текста пункта меню."

msgid "[StyleBox] used when the menu item is disabled."
msgstr "[StyleBox] используется, когда элемент меню отключен."

msgid ""
"[StyleBox] used when the menu item is disabled (for right-to-left layouts)."
msgstr ""
"[StyleBox] используется, когда элемент меню отключен (для макетов с "
"направлением справа налево)."

msgid "[StyleBox] used when the menu item is being hovered."
msgstr "[StyleBox] используется при наведении курсора на пункт меню."

msgid ""
"[StyleBox] used when the menu item is being hovered (for right-to-left "
"layouts)."
msgstr ""
"[StyleBox] используется при наведении курсора на элемент меню (для макетов с "
"направлением справа налево)."

msgid ""
"[StyleBox] used when the menu item is being pressed and hovered at the same "
"time."
msgstr ""
"[StyleBox] используется при одновременном нажатии на элемент меню и наведении "
"на него курсора."

msgid ""
"[StyleBox] used when the menu item is being pressed and hovered at the same "
"time (for right-to-left layouts)."
msgstr ""
"[StyleBox] используется при одновременном нажатии на элемент меню и наведении "
"на него курсора (для макетов с направлением справа налево)."

msgid "Default [StyleBox] for the menu item."
msgstr "[StyleBox] по умолчанию для пункта меню."

msgid "Default [StyleBox] for the menu item (for right-to-left layouts)."
msgstr "[StyleBox] по умолчанию для пункта меню (для макетов справа налево)."

msgid "[StyleBox] used when the menu item is being pressed."
msgstr "[StyleBox] используется при нажатии на пункт меню."

msgid ""
"[StyleBox] used when the menu item is being pressed (for right-to-left "
"layouts)."
msgstr ""
"[StyleBox] используется при нажатии на элемент меню (для макетов с "
"направлением справа налево)."

msgid "A button that brings up a [PopupMenu] when clicked."
msgstr "Кнопка, при нажатии на которую открывается [PopupMenu]."

msgid ""
"A button that brings up a [PopupMenu] when clicked. To create new items "
"inside this [PopupMenu], use [code]get_popup().add_item(\"My Item Name\")[/"
"code]. You can also create them directly from Godot editor's inspector.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node."
msgstr ""
"Кнопка, которая при нажатии вызывает [PopupMenu]. Чтобы создать новые "
"элементы внутри этого [PopupMenu], используйте "
"[code]get_popup().add_item(\"My Item Name\")[/code]. Вы также можете "
"создавать их напрямую из инспектора редактора Godot.\n"
"См. также [BaseButton], который содержит общие свойства и методы, связанные с "
"этим узлом."

msgid ""
"Returns the [PopupMenu] contained in this button.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member Window.visible] property."
msgstr ""
"Возвращает [PopupMenu], содержащийся в этой кнопке.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member Window.visible]."

msgid ""
"Adjusts popup position and sizing for the [MenuButton], then shows the "
"[PopupMenu]. Prefer this over using [code]get_popup().popup()[/code]."
msgstr ""
"Настраивает положение и размер всплывающего окна для [MenuButton], затем "
"показывает [PopupMenu]. Предпочтительнее использовать этот метод, чем "
"[code]get_popup().popup()[/code]."

msgid ""
"If [code]true[/code], when the cursor hovers above another [MenuButton] "
"within the same parent which also has [member switch_on_hover] enabled, it "
"will close the current [MenuButton] and open the other one."
msgstr ""
"Если [code]true[/code], то при наведении курсора на другой элемент "
"[MenuButton] в том же родительском элементе, у которого также включен [member "
"switch_on_hover], текущий элемент [MenuButton] будет закрыт, а другой открыт."

msgid "Emitted when the [PopupMenu] of this MenuButton is about to show."
msgstr ""
"Генерируется, когда [PopupMenu] этой MenuButton готовится к отображению."

msgid "A [Resource] that contains vertex array-based geometry."
msgstr "[Resource] содержащий геометрию на основе массива вершин."

msgid ""
"Mesh is a type of [Resource] that contains vertex array-based geometry, "
"divided in [i]surfaces[/i]. Each surface contains a completely separate array "
"and a material used to draw it. Design wise, a mesh with multiple surfaces is "
"preferred to a single surface, because objects created in 3D editing software "
"commonly contain multiple materials. The maximum number of surfaces per mesh "
"is [constant RenderingServer.MAX_MESH_SURFACES]."
msgstr ""
"Mesh — это тип [Resource], который содержит геометрию на основе массива "
"вершин, разделенную на [i]поверхности[/i]. Каждая поверхность содержит "
"полностью отдельный массив и материал, используемый для ее рисования. С точки "
"зрения дизайна, сетка с несколькими поверхностями предпочтительнее одной "
"поверхности, поскольку объекты, созданные в программном обеспечении для "
"редактирования 3D, обычно содержат несколько материалов. Максимальное "
"количество поверхностей на сетку — [constant "
"RenderingServer.MAX_MESH_SURFACES]."

msgid ""
"Virtual method to override the [AABB] for a custom class extending [Mesh]."
msgstr ""
"Виртуальный метод для переопределения [AABB] для пользовательского класса, "
"расширяющего [Mesh]."

msgid ""
"Virtual method to override the number of blend shapes for a custom class "
"extending [Mesh]."
msgstr ""
"Виртуальный метод для переопределения количества форм смешивания для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the retrieval of blend shape names for a custom "
"class extending [Mesh]."
msgstr ""
"Виртуальный метод для переопределения извлечения имен форм смешивания для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the surface count for a custom class extending "
"[Mesh]."
msgstr ""
"Виртуальный метод для переопределения количества поверхностей для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the names of blend shapes for a custom class "
"extending [Mesh]."
msgstr ""
"Виртуальный метод для переопределения имен форм смешивания для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the surface array index length for a custom class "
"extending [Mesh]."
msgstr ""
"Виртуальный метод для переопределения длины индекса массива поверхности для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the surface array length for a custom class "
"extending [Mesh]."
msgstr ""
"Виртуальный метод для переопределения длины массива поверхности для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the surface arrays for a custom class extending "
"[Mesh]."
msgstr ""
"Виртуальный метод для переопределения массивов поверхности для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the blend shape arrays for a custom class "
"extending [Mesh]."
msgstr ""
"Виртуальный метод для переопределения массивов формы смешивания для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the surface format for a custom class extending "
"[Mesh]."
msgstr ""
"Виртуальный метод для переопределения формата поверхности для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the surface LODs for a custom class extending "
"[Mesh]."
msgstr ""
"Виртуальный метод для переопределения уровней детализации (LOD) поверхности "
"для пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the surface material for a custom class extending "
"[Mesh]."
msgstr ""
"Виртуальный метод для переопределения материала поверхности для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the surface primitive type for a custom class "
"extending [Mesh]."
msgstr ""
"Виртуальный метод для переопределения типа примитива поверхности, для "
"пользовательского класса, расширяющего [Mesh]."

msgid ""
"Virtual method to override the setting of a [param material] at the given "
"[param index] for a custom class extending [Mesh]."
msgstr ""
"Виртуальный метод для переопределения настройки [param material] по "
"указанному [param index] для пользовательского класса, расширяющего [Mesh]."

msgid ""
"Calculate a [ConvexPolygonShape3D] from the mesh.\n"
"If [param clean] is [code]true[/code] (default), duplicate and interior "
"vertices are removed automatically. You can set it to [code]false[/code] to "
"make the process faster if not needed.\n"
"If [param simplify] is [code]true[/code], the geometry can be further "
"simplified to reduce the number of vertices. Disabled by default."
msgstr ""
"Рассчитайте [ConvexPolygonShape3D] из сетки.\n"
"Если [param clean] равен [code]true[/code] (по умолчанию), дублирующиеся и "
"внутренние вершины удаляются автоматически. Вы можете установить его на "
"[code]false[/code], чтобы ускорить процесс, если он не нужен.\n"
"Если [param simplify] равен [code]true[/code], геометрию можно дополнительно "
"упростить, чтобы уменьшить количество вершин. По умолчанию отключено."

msgid ""
"Calculate an outline mesh at a defined offset (margin) from the original "
"mesh.\n"
"[b]Note:[/b] This method typically returns the vertices in reverse order "
"(e.g. clockwise to counterclockwise)."
msgstr ""
"Рассчитайте контурную сетку с определенным смещением (границей) от исходной "
"сетки.\n"
"[b]Примечание:[/b] Этот метод обычно возвращает вершины в обратном порядке "
"(например, по часовой стрелке против часовой стрелки)."

msgid "Creates a placeholder version of this resource ([PlaceholderMesh])."
msgstr "Создает версию-заполнитель этого ресурса ([PlaceholderMesh])."

msgid "Calculate a [ConcavePolygonShape3D] from the mesh."
msgstr "Рассчитайте [ConcavePolygonShape3D] из сетки."

msgid ""
"Generate a [TriangleMesh] from the mesh. Considers only surfaces using one of "
"these primitive types: [constant PRIMITIVE_TRIANGLES], [constant "
"PRIMITIVE_TRIANGLE_STRIP]."
msgstr ""
"Сгенерировать [TriangleMesh] из сетки. Рассматривает только поверхности, "
"использующие один из этих примитивных типов: [constant PRIMITIVE_TRIANGLES], "
"[constant PRIMITIVE_TRIANGLE_STRIP]."

msgid ""
"Returns the smallest [AABB] enclosing this mesh in local space. Not affected "
"by [code]custom_aabb[/code].\n"
"[b]Note:[/b] This is only implemented for [ArrayMesh] and [PrimitiveMesh]."
msgstr ""
"Возвращает наименьший [AABB], охватывающий эту сетку в локальном "
"пространстве. Не влияет на [code]custom_aabb[/code].\n"
"[b]Примечание:[/b] Это реализовано только для [ArrayMesh] и [PrimitiveMesh]."

msgid ""
"Returns all the vertices that make up the faces of the mesh. Each three "
"vertices represent one triangle."
msgstr ""
"Возвращает все вершины, составляющие грани сетки. Каждые три вершины "
"представляют один треугольник."

msgid ""
"Returns the number of surfaces that the [Mesh] holds. This is equivalent to "
"[method MeshInstance3D.get_surface_override_material_count]."
msgstr ""
"Возвращает количество поверхностей, которые содержит [Mesh]. Это эквивалентно "
"[method MeshInstance3D.get_surface_override_material_count]."

msgid ""
"Returns the arrays for the vertices, normals, UVs, etc. that make up the "
"requested surface (see [method ArrayMesh.add_surface_from_arrays])."
msgstr ""
"Возвращает массивы вершин, нормалей, UV и т. д., составляющих запрошенную "
"поверхность (см. [method ArrayMesh.add_surface_from_arrays])."

msgid "Returns the blend shape arrays for the requested surface."
msgstr "Возвращает массивы форм смешивания для запрошенной поверхности."

msgid ""
"Returns a [Material] in a given surface. Surface is rendered using this "
"material.\n"
"[b]Note:[/b] This returns the material within the [Mesh] resource, not the "
"[Material] associated to the [MeshInstance3D]'s Surface Material Override "
"properties. To get the [Material] associated to the [MeshInstance3D]'s "
"Surface Material Override properties, use [method "
"MeshInstance3D.get_surface_override_material] instead."
msgstr ""
"Возвращает [Material] в заданной поверхности. Поверхность визуализируется с "
"использованием этого материала.\n"
"[b]Примечание:[/b] Это возвращает материал в ресурсе [Mesh], а не [Material], "
"связанный со свойствами переопределения материала поверхности "
"[MeshInstance3D]. Чтобы получить [Material], связанный со свойствами "
"переопределения материала поверхности [MeshInstance3D], используйте вместо "
"этого [method MeshInstance3D.get_surface_override_material]."

msgid ""
"Sets a [Material] for a given surface. Surface will be rendered using this "
"material.\n"
"[b]Note:[/b] This assigns the material within the [Mesh] resource, not the "
"[Material] associated to the [MeshInstance3D]'s Surface Material Override "
"properties. To set the [Material] associated to the [MeshInstance3D]'s "
"Surface Material Override properties, use [method "
"MeshInstance3D.set_surface_override_material] instead."
msgstr ""
"Устанавливает [Material] для заданной поверхности. Поверхность будет "
"визуализирована с использованием этого материала.\n"
"[b]Примечание:[/b] Это назначает материал в ресурсе [Mesh], а не [Material], "
"связанный со свойствами переопределения материала поверхности "
"[MeshInstance3D]. Чтобы установить [Material], связанный со свойствами "
"переопределения материала поверхности [MeshInstance3D], используйте вместо "
"этого [method MeshInstance3D.set_surface_override_material]."

msgid "Sets a hint to be used for lightmap resolution."
msgstr ""
"Устанавливает подсказку, которая будет использоваться для разрешения карты "
"освещения (lightmap)."

msgid "Render array as points (one vertex equals one point)."
msgstr "Отобразить массив в виде точек (одна вершина равна одной точке)."

msgid "Render array as lines (every two vertices a line is created)."
msgstr ""
"Визуализирует массив в виде линий (через каждые две вершины создается линия)."

msgid "Render array as line strip."
msgstr "Визуализируйте массив как линейную полосу (Line Strip)."

msgid "Render array as triangles (every three vertices a triangle is created)."
msgstr ""
"Визуализируем массив в виде треугольников (через каждые три вершины создается "
"треугольник)."

msgid "Render array as triangle strips."
msgstr "Визуализируйте массив в виде полосок треугольников (Triangle Strips)."

msgid ""
"[PackedVector3Array], [PackedVector2Array], or [Array] of vertex positions."
msgstr "[PackedVector3Array], [PackedVector2Array] или [Array] позиций вершин."

msgid ""
"[PackedVector3Array] of vertex normals.\n"
"[b]Note:[/b] The array has to consist of normal vectors, otherwise they will "
"be normalized by the engine, potentially causing visual discrepancies."
msgstr ""
"[PackedVector3Array] нормалей вершин.\n"
"[b]Примечание:[/b] Массив должен состоять из векторов нормалей, в противном "
"случае они будут нормализованы движком, что может привести к визуальным "
"расхождениям."

msgid ""
"[PackedFloat32Array] of vertex tangents. Each element in groups of 4 floats, "
"first 3 floats determine the tangent, and the last the binormal direction as "
"-1 or 1."
msgstr ""
"[PackedFloat32Array] касательных вершин. Каждый элемент в группах по 4 "
"плавающих элемента, первые 3 плавающих элемента определяют касательную, а "
"последний — направление бинормали как -1 или 1."

msgid "[PackedColorArray] of vertex colors."
msgstr "[PackedColorArray] цветов вершин."

msgid "[PackedVector2Array] for UV coordinates."
msgstr "[PackedVector2Array] для UV-координат."

msgid "[PackedVector2Array] for second UV coordinates."
msgstr "[PackedVector2Array] для вторых UV-координат."

msgid ""
"Contains custom color channel 0. [PackedByteArray] if [code](format >> "
"Mesh.ARRAY_FORMAT_CUSTOM0_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/code] is "
"[constant ARRAY_CUSTOM_RGBA8_UNORM], [constant ARRAY_CUSTOM_RGBA8_SNORM], "
"[constant ARRAY_CUSTOM_RG_HALF], or [constant ARRAY_CUSTOM_RGBA_HALF]. "
"[PackedFloat32Array] otherwise."
msgstr ""
"Содержит пользовательский цветовой канал 0. [PackedByteArray], если [code]"
"(format >> Mesh.ARRAY_FORMAT_CUSTOM0_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/"
"code] равен [constant ARRAY_CUSTOM_RGBA8_UNORM], [constant "
"ARRAY_CUSTOM_RGBA8_SNORM], [constant ARRAY_CUSTOM_RG_HALF] или [constant "
"ARRAY_CUSTOM_RGBA_HALF]. [PackedFloat32Array] в противном случае."

msgid ""
"Contains custom color channel 1. [PackedByteArray] if [code](format >> "
"Mesh.ARRAY_FORMAT_CUSTOM1_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/code] is "
"[constant ARRAY_CUSTOM_RGBA8_UNORM], [constant ARRAY_CUSTOM_RGBA8_SNORM], "
"[constant ARRAY_CUSTOM_RG_HALF], or [constant ARRAY_CUSTOM_RGBA_HALF]. "
"[PackedFloat32Array] otherwise."
msgstr ""
"Содержит пользовательский цветовой канал 1. [PackedByteArray], если [code]"
"(format >> Mesh.ARRAY_FORMAT_CUSTOM1_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/"
"code] равен [constant ARRAY_CUSTOM_RGBA8_UNORM], [constant "
"ARRAY_CUSTOM_RGBA8_SNORM], [constant ARRAY_CUSTOM_RG_HALF] или [constant "
"ARRAY_CUSTOM_RGBA_HALF]. [PackedFloat32Array] в противном случае."

msgid ""
"Contains custom color channel 2. [PackedByteArray] if [code](format >> "
"Mesh.ARRAY_FORMAT_CUSTOM2_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/code] is "
"[constant ARRAY_CUSTOM_RGBA8_UNORM], [constant ARRAY_CUSTOM_RGBA8_SNORM], "
"[constant ARRAY_CUSTOM_RG_HALF], or [constant ARRAY_CUSTOM_RGBA_HALF]. "
"[PackedFloat32Array] otherwise."
msgstr ""
"Содержит пользовательский цветовой канал 2. [PackedByteArray], если [code]"
"(format >> Mesh.ARRAY_FORMAT_CUSTOM2_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/"
"code] равен [constant ARRAY_CUSTOM_RGBA8_UNORM], [constant "
"ARRAY_CUSTOM_RGBA8_SNORM], [constant ARRAY_CUSTOM_RG_HALF] или [constant "
"ARRAY_CUSTOM_RGBA_HALF]. [PackedFloat32Array] в противном случае."

msgid ""
"Contains custom color channel 3. [PackedByteArray] if [code](format >> "
"Mesh.ARRAY_FORMAT_CUSTOM3_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/code] is "
"[constant ARRAY_CUSTOM_RGBA8_UNORM], [constant ARRAY_CUSTOM_RGBA8_SNORM], "
"[constant ARRAY_CUSTOM_RG_HALF], or [constant ARRAY_CUSTOM_RGBA_HALF]. "
"[PackedFloat32Array] otherwise."
msgstr ""
"Содержит пользовательский цветовой канал 3. [PackedByteArray], если [code]"
"(format >> Mesh.ARRAY_FORMAT_CUSTOM3_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK[/"
"code] равен [constant ARRAY_CUSTOM_RGBA8_UNORM], [constant "
"ARRAY_CUSTOM_RGBA8_SNORM], [constant ARRAY_CUSTOM_RG_HALF] или [constant "
"ARRAY_CUSTOM_RGBA_HALF]. [PackedFloat32Array] в противном случае."

msgid ""
"[PackedFloat32Array] or [PackedInt32Array] of bone indices. Contains either 4 "
"or 8 numbers per vertex depending on the presence of the [constant "
"ARRAY_FLAG_USE_8_BONE_WEIGHTS] flag."
msgstr ""
"[PackedFloat32Array] или [PackedInt32Array] индексов костей. Содержит 4 или 8 "
"чисел на вершину в зависимости от наличия флага [constant "
"ARRAY_FLAG_USE_8_BONE_WEIGHTS]."

msgid ""
"[PackedFloat32Array] or [PackedFloat64Array] of bone weights in the range "
"[code]0.0[/code] to [code]1.0[/code] (inclusive). Contains either 4 or 8 "
"numbers per vertex depending on the presence of the [constant "
"ARRAY_FLAG_USE_8_BONE_WEIGHTS] flag."
msgstr ""
"[PackedFloat32Array] или [PackedFloat64Array] весов костей в диапазоне от "
"[code]0.0[/code] до [code]1.0[/code] (включительно). Содержит 4 или 8 чисел "
"на вершину в зависимости от наличия флага [constant "
"ARRAY_FLAG_USE_8_BONE_WEIGHTS]."

msgid ""
"[PackedInt32Array] of integers used as indices referencing vertices, colors, "
"normals, tangents, and textures. All of those arrays must have the same "
"number of elements as the vertex array. No index can be beyond the vertex "
"array size. When this index array is present, it puts the function into "
"\"index mode,\" where the index selects the [i]i[/i]'th vertex, normal, "
"tangent, color, UV, etc. This means if you want to have different normals or "
"colors along an edge, you have to duplicate the vertices.\n"
"For triangles, the index array is interpreted as triples, referring to the "
"vertices of each triangle. For lines, the index array is in pairs indicating "
"the start and end of each line."
msgstr ""
"[PackedInt32Array] целых чисел, используемых в качестве индексов, ссылающихся "
"на вершины, цвета, нормали, касательные и текстуры. Все эти массивы должны "
"иметь то же количество элементов, что и массив вершин. Ни один индекс не "
"может выходить за пределы размера массива вершин. Когда присутствует этот "
"массив индексов, он переводит функцию в «индексный режим», где индекс "
"выбирает [i]i[/i]-ю вершину, нормаль, касательную, цвет, UV и т. д. Это "
"означает, что если вы хотите иметь разные нормали или цвета вдоль ребра, вам "
"нужно дублировать вершины.\n"
"Для треугольников массив индексов интерпретируется как тройки, ссылающиеся на "
"вершины каждого треугольника. Для линий массив индексов состоит из пар, "
"указывающих начало и конец каждой линии."

msgid "Represents the size of the [enum ArrayType] enum."
msgstr "Представляет размер перечисления [enum ArrayType]."

msgid ""
"Indicates this custom channel contains unsigned normalized byte colors from 0 "
"to 1, encoded as [PackedByteArray]."
msgstr ""
"Указывает, что этот пользовательский канал содержит беззнаковые "
"нормализованные байтовые цвета от 0 до 1, закодированные как "
"[PackedByteArray]."

msgid ""
"Indicates this custom channel contains signed normalized byte colors from -1 "
"to 1, encoded as [PackedByteArray]."
msgstr ""
"Указывает, что этот пользовательский канал содержит знаковые нормализованные "
"байтовые цвета от -1 до 1, закодированные как [PackedByteArray]."

msgid ""
"Indicates this custom channel contains half precision float colors, encoded "
"as [PackedByteArray]. Only red and green channels are used."
msgstr ""
"Указывает, что этот пользовательский канал содержит цвета с плавающей точкой "
"половинной (precision) точности, закодированные как [PackedByteArray]. "
"Используются только красный и зеленый каналы."

msgid ""
"Indicates this custom channel contains half precision float colors, encoded "
"as [PackedByteArray]."
msgstr ""
"Указывает, что этот пользовательский канал содержит цвета с плавающей точкой "
"половинной (precision) точности, закодированные как [PackedByteArray]."

msgid ""
"Indicates this custom channel contains full float colors, in a "
"[PackedFloat32Array]. Only the red channel is used."
msgstr ""
"Указывает, что этот пользовательский канал содержит полные плавающие цвета в "
"[PackedFloat32Array]. Используется только красный канал."

msgid ""
"Indicates this custom channel contains full float colors, in a "
"[PackedFloat32Array]. Only red and green channels are used."
msgstr ""
"Указывает, что этот пользовательский канал содержит полные плавающие цвета в "
"[PackedFloat32Array]. Используются только красные и зеленые каналы."

msgid ""
"Indicates this custom channel contains full float colors, in a "
"[PackedFloat32Array]. Only red, green and blue channels are used."
msgstr ""
"Указывает, что этот пользовательский канал содержит полные плавающие цвета в "
"[PackedFloat32Array]. Используются только красный, зеленый и синий каналы."

msgid ""
"Indicates this custom channel contains full float colors, in a "
"[PackedFloat32Array]."
msgstr ""
"Указывает, что этот пользовательский канал содержит полные плавающие цвета в "
"[PackedFloat32Array]."

msgid "Represents the size of the [enum ArrayCustomFormat] enum."
msgstr "Представляет размер перечисления [enum ArrayCustomFormat]."

msgid ""
"Mesh array contains vertices. All meshes require a vertex array so this "
"should always be present."
msgstr ""
"Массив сетки содержит вершины. Все сетки требуют массив вершин, поэтому он "
"всегда должен присутствовать."

msgid "Mesh array contains normals."
msgstr "Массив сетки содержит нормали."

msgid "Mesh array contains tangents."
msgstr "Массив сетки содержит касательные."

msgid "Mesh array contains colors."
msgstr "Массив сетки содержит цвета."

msgid "Mesh array contains UVs."
msgstr "Массив сетки содержит UV."

msgid "Mesh array contains second UV."
msgstr "Массив сетки содержит второй UV."

msgid "Mesh array contains custom channel index 0."
msgstr "Массив сетки содержит пользовательский индекс канала 0."

msgid "Mesh array contains custom channel index 1."
msgstr "Массив ячеек содержит пользовательский индекс канала 1."

msgid "Mesh array contains custom channel index 2."
msgstr "Массив ячеек содержит пользовательский индекс канала 2."

msgid "Mesh array contains custom channel index 3."
msgstr "Массив ячеек содержит пользовательский индекс канала 3."

msgid "Mesh array contains bones."
msgstr "Массив сетки содержит кости."

msgid "Mesh array contains bone weights."
msgstr "Массив сетки содержит веса костей."

msgid "Mesh array uses indices."
msgstr "Массив сетки использует индексы."

msgid "Mask of mesh channels permitted in blend shapes."
msgstr "Маска каналов сетки разрешена в смешанных формах."

msgid "Shift of first custom channel."
msgstr "Сдвиг первого пользовательского канала."

msgid "Number of format bits per custom channel. See [enum ArrayCustomFormat]."
msgstr ""
"Количество бит формата на пользовательский канал. См. [enum "
"ArrayCustomFormat]."

msgid "Amount to shift [enum ArrayCustomFormat] for custom channel index 0."
msgstr ""
"Величина сдвига [enum ArrayCustomFormat] для индекса пользовательского канала "
"0."

msgid "Amount to shift [enum ArrayCustomFormat] for custom channel index 1."
msgstr ""
"Величина сдвига [enum ArrayCustomFormat] для индекса пользовательского канала "
"1."

msgid "Amount to shift [enum ArrayCustomFormat] for custom channel index 2."
msgstr ""
"Величина сдвига [enum ArrayCustomFormat] для индекса пользовательского канала "
"2."

msgid "Amount to shift [enum ArrayCustomFormat] for custom channel index 3."
msgstr ""
"Величина сдвига [enum ArrayCustomFormat] для индекса пользовательского канала "
"3."

msgid ""
"Mask of custom format bits per custom channel. Must be shifted by one of the "
"SHIFT constants. See [enum ArrayCustomFormat]."
msgstr ""
"Маска битов пользовательского формата для каждого пользовательского канала. "
"Должна быть сдвинута на одну из констант SHIFT. См. [enum ArrayCustomFormat]."

msgid ""
"Shift of first compress flag. Compress flags should be passed to [method "
"ArrayMesh.add_surface_from_arrays] and [method SurfaceTool.commit]."
msgstr ""
"Сдвиг первого флага сжатия. Флаги сжатия должны быть переданы в [method "
"ArrayMesh.add_surface_from_arrays] и [method SurfaceTool.commit]."

msgid "Flag used to mark that the array contains 2D vertices."
msgstr ""
"Флаг, используемый для обозначения того, что массив содержит 2D вершины."

msgid ""
"Flag used to mark that the mesh data will use [code]GL_DYNAMIC_DRAW[/code] on "
"GLES. Unused on Vulkan."
msgstr ""
"Флаг, используемый для обозначения того, что данные сетки будут использовать "
"[code]GL_DYNAMIC_DRAW[/code] на GLES. Не используется на Vulkan."

msgid ""
"Flag used to mark that the mesh contains up to 8 bone influences per vertex. "
"This flag indicates that [constant ARRAY_BONES] and [constant ARRAY_WEIGHTS] "
"elements will have double length."
msgstr ""
"Флаг, используемый для обозначения того, что сетка содержит до 8 влияний "
"костей на вершину. Этот флаг указывает, что элементы [constant ARRAY_BONES] и "
"[constant ARRAY_WEIGHTS] будут иметь двойную длину."

msgid "Flag used to mark that the mesh intentionally contains no vertex array."
msgstr ""
"Флаг, используемый для обозначения того, что сетка намеренно не содержит "
"массива вершин."

msgid ""
"Flag used to mark that a mesh is using compressed attributes (vertices, "
"normals, tangents, UVs). When this form of compression is enabled, vertex "
"positions will be packed into an RGBA16UNORM attribute and scaled in the "
"vertex shader. The normal and tangent will be packed into an RG16UNORM "
"representing an axis, and a 16-bit float stored in the A-channel of the "
"vertex. UVs will use 16-bit normalized floats instead of full 32-bit signed "
"floats. When using this compression mode you must use either vertices, "
"normals, and tangents or only vertices. You cannot use normals without "
"tangents. Importers will automatically enable this compression if they can."
msgstr ""
"Флаг, используемый для обозначения того, что сетка использует сжатые атрибуты "
"(вершины, нормали, касательные, UV). Когда включена эта форма сжатия, позиции "
"вершин будут упакованы в атрибут RGBA16UNORM и масштабированы в вершинном "
"шейдере. Нормаль и касательная будут упакованы в RG16UNORM, представляющий "
"ось, и 16-битное число с плавающей точкой, сохраненное в A-канале вершины. UV "
"будут использовать 16-битные нормализованные числа с плавающей точкой вместо "
"полных 32-битных знаковых чисел с плавающей точкой. При использовании этого "
"режима сжатия необходимо использовать либо для вершины, нормали и "
"касательные, либо только вершины. Вы не можете использовать нормали без "
"касательных. Импортеры автоматически включат это сжатие, если смогут."

msgid "Blend shapes are normalized."
msgstr "Формы смешивания нормализованы."

msgid "Blend shapes are relative to base weight."
msgstr "Формы смешивания определяются относительно базового веса."

msgid "Parameters to be used with a [Mesh] convex decomposition operation."
msgstr ""
"Параметры, которые следует использовать с операцией выпуклой декомпозиции "
"[Mesh]."

msgid "If [code]true[/code], uses approximation for computing convex hulls."
msgstr ""
"Если [code]true[/code], используется приближение для вычисления выпуклых "
"оболочек."

msgid ""
"Controls the precision of the convex-hull generation process during the "
"clipping plane selection stage. Ranges from [code]1[/code] to [code]16[/code]."
msgstr ""
"Управляет точностью процесса генерации выпуклой оболочки на этапе выбора "
"плоскости отсечения. Диапазон от [code]1[/code] до [code]16[/code]."

msgid "Maximum concavity. Ranges from [code]0.0[/code] to [code]1.0[/code]."
msgstr ""
"Максимальная вогнутость. Диапазон от [code]0.0[/code] до [code]1.0[/code]."

msgid "The maximum number of convex hulls to produce from the merge operation."
msgstr ""
"Максимальное количество выпуклых оболочек, которые можно получить в "
"результате операции слияния."

msgid ""
"Controls the maximum number of triangles per convex-hull. Ranges from "
"[code]4[/code] to [code]1024[/code]."
msgstr ""
"Управляет максимальным числом треугольников на выпуклую оболочку. Диапазон от "
"[code]4[/code] до [code]1024[/code]."

msgid ""
"Controls the adaptive sampling of the generated convex-hulls. Ranges from "
"[code]0.0[/code] to [code]0.01[/code]."
msgstr ""
"Управляет адаптивной выборкой сгенерированных выпуклых оболочек. Диапазон от "
"[code]0.0[/code] до [code]0.01[/code]."

msgid "Mode for the approximate convex decomposition."
msgstr "Режим для приближенного выпуклого разложения."

msgid ""
"If [code]true[/code], normalizes the mesh before applying the convex "
"decomposition."
msgstr ""
"Если [code]true[/code], нормализует сетку перед применением выпуклой "
"декомпозиции."

msgid ""
"Controls the granularity of the search for the \"best\" clipping plane. "
"Ranges from [code]1[/code] to [code]16[/code]."
msgstr ""
"Управляет степенью детализации поиска «лучшей» плоскости отсечения. Диапазон "
"от [code]1[/code] до [code]16[/code]."

msgid ""
"If [code]true[/code], projects output convex hull vertices onto the original "
"source mesh to increase floating-point accuracy of the results."
msgstr ""
"Если [code]true[/code], проецирует выходные вершины выпуклой оболочки на "
"исходную сетку источника для повышения точности результатов с плавающей "
"точкой."

msgid "Maximum number of voxels generated during the voxelization stage."
msgstr ""
"Максимальное количество вокселей, сгенерированных на этапе вокселизации."

msgid ""
"Controls the bias toward clipping along revolution axes. Ranges from "
"[code]0.0[/code] to [code]1.0[/code]."
msgstr ""
"Управляет смещением в сторону отсечения по осям вращения. Диапазон от "
"[code]0.0[/code] до [code]1.0[/code]."

msgid ""
"Controls the bias toward clipping along symmetry planes. Ranges from "
"[code]0.0[/code] to [code]1.0[/code]."
msgstr ""
"Управляет смещением в сторону отсечения по плоскостям симметрии. Диапазон от "
"[code]0.0[/code] до [code]1.0[/code]."

msgid "Constant for voxel-based approximate convex decomposition."
msgstr "Константа для приближенного выпуклого разложения на основе вокселей."

msgid "Constant for tetrahedron-based approximate convex decomposition."
msgstr "Константа для приближенного выпуклого разложения на основе тетраэдра."

msgid "Helper tool to access and edit [Mesh] data."
msgstr "Вспомогательный инструмент для доступа и редактирования данных [Mesh]."

msgid ""
"MeshDataTool provides access to individual vertices in a [Mesh]. It allows "
"users to read and edit vertex data of meshes. It also creates an array of "
"faces and edges.\n"
"To use MeshDataTool, load a mesh with [method create_from_surface]. When you "
"are finished editing the data commit the data to a mesh with [method "
"commit_to_surface].\n"
"Below is an example of how MeshDataTool may be used.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var mesh = ArrayMesh.new()\n"
"mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, "
"BoxMesh.new().get_mesh_arrays())\n"
"var mdt = MeshDataTool.new()\n"
"mdt.create_from_surface(mesh, 0)\n"
"for i in range(mdt.get_vertex_count()):\n"
"\tvar vertex = mdt.get_vertex(i)\n"
"\t# In this example we extend the mesh by one unit, which results in "
"separated faces as it is flat shaded.\n"
"\tvertex += mdt.get_vertex_normal(i)\n"
"\t# Save your change.\n"
"\tmdt.set_vertex(i, vertex)\n"
"mesh.clear_surfaces()\n"
"mdt.commit_to_surface(mesh)\n"
"var mi = MeshInstance.new()\n"
"mi.mesh = mesh\n"
"add_child(mi)\n"
"[/gdscript]\n"
"[csharp]\n"
"var mesh = new ArrayMesh();\n"
"mesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, new "
"BoxMesh().GetMeshArrays());\n"
"var mdt = new MeshDataTool();\n"
"mdt.CreateFromSurface(mesh, 0);\n"
"for (var i = 0; i < mdt.GetVertexCount(); i++)\n"
"{\n"
"\tVector3 vertex = mdt.GetVertex(i);\n"
"\t// In this example we extend the mesh by one unit, which results in "
"separated faces as it is flat shaded.\n"
"\tvertex += mdt.GetVertexNormal(i);\n"
"\t// Save your change.\n"
"\tmdt.SetVertex(i, vertex);\n"
"}\n"
"mesh.ClearSurfaces();\n"
"mdt.CommitToSurface(mesh);\n"
"var mi = new MeshInstance();\n"
"mi.Mesh = mesh;\n"
"AddChild(mi);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [ArrayMesh], [ImmediateMesh] and [SurfaceTool] for procedural "
"geometry generation.\n"
"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
"OpenGL/Face-culling]winding order[/url] for front faces of triangle primitive "
"modes."
msgstr ""
"MeshDataTool предоставляет доступ к отдельным вершинам в [Mesh]. Он позволяет "
"пользователям читать и редактировать данные вершин сеток. Он также создает "
"массив граней и ребер.\n"
"Чтобы использовать MeshDataTool, загрузите сетку с помощью [method "
"create_from_surface]. Когда вы закончите редактирование данных, зафиксируйте "
"данные в сетке с помощью [method commit_to_surface].\n"
"Ниже приведен пример того, как можно использовать MeshDataTool.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var mesh = ArrayMesh.new()\n"
"mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, "
"BoxMesh.new().get_mesh_arrays())\n"
"var mdt = MeshDataTool.new()\n"
"mdt.create_from_surface(mesh, 0)\n"
"for i in range(mdt.get_vertex_count()):\n"
"\tvar vertex = mdt.get_vertex(i)\n"
"\t# В этом примере мы расширяем сетку на одну единицу, что приводит к "
"разделению граней, поскольку она имеет плоское затенение.\n"
"\tvertex += mdt.get_vertex_normal(i)\n"
"\t# Сохраните изменения.\n"
"\tmdt.set_vertex(i, vertex)\n"
"mesh.clear_surfaces()\n"
"mdt.commit_to_surface(mesh)\n"
"var mi = MeshInstance.new()\n"
"mi.mesh = mesh\n"
"add_child(mi)\n"
"[/gdscript]\n"
"[csharp]\n"
"var mesh = new ArrayMesh();\n"
"mesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, new "
"BoxMesh().GetMeshArrays());\n"
"var mdt = new MeshDataTool();\n"
"mdt.CreateFromSurface(mesh, 0);\n"
"for (var i = 0; i < mdt.GetVertexCount(); i++)\n"
"{\n"
"\tVector3 vertex = mdt.GetVertex(i);\n"
"\t// В этом примере мы расширяем сетку на одну единицу, что приводит к "
"разделению граней, поскольку она имеет плоское затенение.\n"
"\tvertex += mdt.GetVertexNormal(i);\n"
"\t// Сохраните изменения.\n"
"\tmdt.SetVertex(i, vertex);\n"
"}\n"
"mesh.ClearSurfaces();\n"
"mdt.CommitToSurface(mesh);\n"
"var mi = new MeshInstance();\n"
"mi.Mesh = mesh;\n"
"AddChild(mi);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. также [ArrayMesh], [ImmediateMesh] и [SurfaceTool] для создания "
"процедурной геометрии.\n"
"[b]Примечание:[/b] Godot использует по часовой стрелке [url=https://"
"learnopengl.com/Advanced-OpenGL/Face-culling]порядок намотки[/url] для "
"передних граней примитивных режимов треугольников."

msgid "Using the MeshDataTool"
msgstr "Использование MeshDataTool"

msgid "Clears all data currently in MeshDataTool."
msgstr "Очищает все текущие данные в MeshDataTool."

msgid "Adds a new surface to specified [Mesh] with edited data."
msgstr ""
"Добавляет новую поверхность к указанному [Mesh] с отредактированными данными."

msgid ""
"Uses specified surface of given [Mesh] to populate data for MeshDataTool.\n"
"Requires [Mesh] with primitive type [constant Mesh.PRIMITIVE_TRIANGLES]."
msgstr ""
"Использует указанную поверхность заданной [Mesh] для заполнения данных для "
"MeshDataTool.\n"
"Требуется [Mesh] с примитивным типом [constant Mesh.PRIMITIVE_TRIANGLES]."

msgid "Returns the number of edges in this [Mesh]."
msgstr "Возвращает количество ребер в этом [Mesh]-е."

msgid "Returns array of faces that touch given edge."
msgstr "Возвращает массив граней (Faces), касающихся заданного ребра."

msgid "Returns meta information assigned to given edge."
msgstr "Возвращает мета-информацию, назначенную данному ребру."

msgid ""
"Returns the index of the specified [param vertex] connected to the edge at "
"index [param idx].\n"
"[param vertex] can only be [code]0[/code] or [code]1[/code], as edges are "
"composed of two vertices."
msgstr ""
"Возвращает индекс указанной вершины [param vertex], соединённой с ребром с "
"индексом [param idx].\n"
"[param vertex] может быть только [code]0[/code] или [code]1[/code], поскольку "
"ребра состоят из двух вершин."

msgid "Returns the number of faces in this [Mesh]."
msgstr "Возвращает количество граней в этом [Mesh]-е."

msgid ""
"Returns the edge associated with the face at index [param idx].\n"
"[param edge] argument must be either [code]0[/code], [code]1[/code], or "
"[code]2[/code] because a face only has three edges."
msgstr ""
"Возвращает ребро, связанное с гранью с индексом [param idx].\n"
"Аргумент [param edge] должен иметь значение [code]0[/code], [code]1[/code] "
"или [code]2[/code], поскольку грань имеет только три ребра."

msgid "Returns the metadata associated with the given face."
msgstr "Возвращает метаданные, связанные с указанным лицом (Face)."

msgid "Calculates and returns the face normal of the given face."
msgstr "Вычисляет и возвращает нормаль заданной грани (Face)."

msgid ""
"Returns the specified vertex index of the given face.\n"
"[param vertex] must be either [code]0[/code], [code]1[/code], or [code]2[/"
"code] because faces contain three vertices.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var index = mesh_data_tool.get_face_vertex(0, 1) # Gets the index of the "
"second vertex of the first face.\n"
"var position = mesh_data_tool.get_vertex(index)\n"
"var normal = mesh_data_tool.get_vertex_normal(index)\n"
"[/gdscript]\n"
"[csharp]\n"
"int index = meshDataTool.GetFaceVertex(0, 1); // Gets the index of the second "
"vertex of the first face.\n"
"Vector3 position = meshDataTool.GetVertex(index);\n"
"Vector3 normal = meshDataTool.GetVertexNormal(index);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает указанный индекс вершины заданной грани.\n"
"[param vertex] должен быть либо [code]0[/code], [code]1[/code], либо [code]2[/"
"code], поскольку грани содержат три вершины.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var index = mesh_data_tool.get_face_vertex(0, 1) # Получает индекс второй "
"вершины первой грани.\n"
"var position = mesh_data_tool.get_vertex(index)\n"
"var normal = mesh_data_tool.get_vertex_normal(index)\n"
"[/gdscript]\n"
"[csharp]\n"
"int index = meshDataTool.GetFaceVertex(0, 1); // Получает индекс второй "
"вершины первой грани.\n"
"Vector3 position = meshDataTool.GetVertex(index);\n"
"Vector3 normal = meshDataTool.GetVertexNormal(index);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the [Mesh]'s format as a combination of the [enum Mesh.ArrayFormat] "
"flags. For example, a mesh containing both vertices and normals would return "
"a format of [code]3[/code] because [constant Mesh.ARRAY_FORMAT_VERTEX] is "
"[code]1[/code] and [constant Mesh.ARRAY_FORMAT_NORMAL] is [code]2[/code]."
msgstr ""
"Возвращает формат [Mesh] как комбинацию флагов [enum Mesh.ArrayFormat]. "
"Например, сетка, содержащая как вершины, так и нормали, вернет формат "
"[code]3[/code], поскольку [constant Mesh.ARRAY_FORMAT_VERTEX] — это [code]1[/"
"code], а [constant Mesh.ARRAY_FORMAT_NORMAL] — это [code]2[/code]."

msgid "Returns the material assigned to the [Mesh]."
msgstr "Возвращает материал, назначенный [Mesh]."

msgid "Returns the position of the given vertex."
msgstr "Возвращает положение заданной вершины."

msgid "Returns the bones of the given vertex."
msgstr "Возвращает кости указанной вершины."

msgid "Returns the color of the given vertex."
msgstr "Возвращает цвет заданной вершины."

msgid "Returns the total number of vertices in [Mesh]."
msgstr "Возвращает общее количество вершин в [Mesh]."

msgid "Returns an array of edges that share the given vertex."
msgstr "Возвращает массив ребер, имеющих общую вершину."

msgid "Returns an array of faces that share the given vertex."
msgstr "Возвращает массив граней (Faces), имеющих общую вершину."

msgid "Returns the metadata associated with the given vertex."
msgstr "Возвращает метаданные, связанные с заданной вершиной."

msgid "Returns the normal of the given vertex."
msgstr "Возвращает нормаль заданной вершины."

msgid "Returns the tangent of the given vertex."
msgstr "Возвращает тангенс заданной вершины."

msgid "Returns the UV of the given vertex."
msgstr "Возвращает UV заданной вершины."

msgid "Returns the UV2 of the given vertex."
msgstr "Возвращает UV2 заданной вершины."

msgid "Returns bone weights of the given vertex."
msgstr "Возвращает вес костей заданной вершины."

msgid "Sets the metadata of the given edge."
msgstr "Устанавливает метаданные указанного ребра."

msgid "Sets the metadata of the given face."
msgstr "Устанавливает метаданные указанной грани (Faces)."

msgid "Sets the material to be used by newly-constructed [Mesh]."
msgstr ""
"Устанавливает материал, который будет использоваться для вновь созданной "
"[Mesh]."

msgid "Sets the position of the given vertex."
msgstr "Устанавливает положение заданной вершины."

msgid "Sets the bones of the given vertex."
msgstr "Устанавливает кости заданной вершины."

msgid "Sets the color of the given vertex."
msgstr "Устанавливает цвет заданной вершины."

msgid "Sets the metadata associated with the given vertex."
msgstr "Устанавливает метаданные, связанные с заданной вершиной."

msgid "Sets the normal of the given vertex."
msgstr "Устанавливает нормаль заданной вершины."

msgid "Sets the tangent of the given vertex."
msgstr "Устанавливает тангенс заданной вершины."

msgid "Sets the UV of the given vertex."
msgstr "Устанавливает UV заданной вершины."

msgid "Sets the UV2 of the given vertex."
msgstr "Устанавливает UV2 заданной вершины."

msgid "Sets the bone weights of the given vertex."
msgstr "Устанавливает вес костей заданной вершины."

msgid "Node used for displaying a [Mesh] in 2D."
msgstr "Узел, используемый для отображения [Mesh] в 2D."

msgid ""
"Node used for displaying a [Mesh] in 2D. A [MeshInstance2D] can be "
"automatically created from an existing [Sprite2D] via a tool in the editor "
"toolbar. Select the [Sprite2D] node, then choose [b]Sprite2D > Convert to "
"MeshInstance2D[/b] at the top of the 2D editor viewport."
msgstr ""
"Узел, используемый для отображения [Mesh] в 2D. [MeshInstance2D] может быть "
"автоматически создан из существующего [Sprite2D] с помощью инструмента на "
"панели инструментов редактора. Выберите узел [Sprite2D], затем выберите "
"[b]Sprite2D > Преобразовать в MeshInstance2D[/b] в верхней части окна "
"просмотра 2D-редактора."

msgid "2D meshes"
msgstr "2D-сетки"

msgid "The [Mesh] that will be drawn by the [MeshInstance2D]."
msgstr "[Mesh], который будет отрисован c помощью [MeshInstance2D]."

msgid ""
"The [Texture2D] that will be used if using the default [CanvasItemMaterial]. "
"Can be accessed as [code]TEXTURE[/code] in CanvasItem shader."
msgstr ""
"[Texture2D], который будет использоваться при использовании "
"[CanvasItemMaterial] по умолчанию. Доступ к нему можно получить как "
"[code]TEXTURE[/code] в шейдере CanvasItem."

msgid "Emitted when the [member texture] is changed."
msgstr "Выдается при изменении [member texture]."

msgid "Node that instances meshes into a scenario."
msgstr "Узел, экземпляры которого встраиваются в сценарий."

msgid ""
"MeshInstance3D is a node that takes a [Mesh] resource and adds it to the "
"current scenario by creating an instance of it. This is the class most often "
"used to render 3D geometry and can be used to instance a single [Mesh] in "
"many places. This allows reusing geometry, which can save on resources. When "
"a [Mesh] has to be instantiated more than thousands of times at close "
"proximity, consider using a [MultiMesh] in a [MultiMeshInstance3D] instead."
msgstr ""
"MeshInstance3D — это узел, который берет ресурс [Mesh] и добавляет его в "
"текущий сценарий, создавая его экземпляр. Это класс, который чаще всего "
"используется для рендеринга 3D-геометрии и может использоваться для создания "
"экземпляра одной [Mesh] во многих местах. Это позволяет повторно использовать "
"геометрию, что может сэкономить ресурсы. Когда необходимо создать экземпляр "
"[Mesh] более тысячи раз в непосредственной близости, рассмотрите возможность "
"использования [MultiMesh] в [MultiMeshInstance3D]."

msgid ""
"Takes a snapshot from the current [ArrayMesh] with all blend shapes applied "
"according to their current weights and bakes it to the provided [param "
"existing] mesh. If no [param existing] mesh is provided a new [ArrayMesh] is "
"created, baked and returned. Mesh surface materials are not copied.\n"
"[b]Performance:[/b] [Mesh] data needs to be received from the GPU, stalling "
"the [RenderingServer] in the process."
msgstr ""
"Делает снимок текущего [ArrayMesh] со всеми примененными формами смешивания в "
"соответствии с их текущими весами и запекает его в предоставленной [param "
"existing] сетке. Если [param existing] сетка не указана, создается, "
"запекается и возвращается новая [ArrayMesh]. Материалы поверхности сетки не "
"копируются.\n"
"[b]Производительность:[/b] Данные [Mesh] необходимо получать от GPU, что "
"останавливает [RenderingServer] в процессе."

msgid ""
"Takes a snapshot of the current animated skeleton pose of the skinned mesh "
"and bakes it to the provided [param existing] mesh. If no [param existing] "
"mesh is provided a new [ArrayMesh] is created, baked, and returned. Requires "
"a skeleton with a registered skin to work. Blendshapes are ignored. Mesh "
"surface materials are not copied.\n"
"[b]Performance:[/b] [Mesh] data needs to be retrieved from the GPU, stalling "
"the [RenderingServer] in the process."
msgstr ""
"Делает снимок текущей анимированной позы скелета скинированной сетки и "
"запекает ее в предоставленной [param existing] сетке. Если [param existing] "
"сетка не предоставлена, создается, запекается и возвращается новая "
"[ArrayMesh]. Для работы требуется скелет с зарегистрированным скином. "
"Blendshapes игнорируются. Материалы поверхности сетки не копируются.\n"
"[b]Производительность:[/b] Данные [Mesh] необходимо извлекать из графического "
"процессора, что останавливает [RenderingServer] в процессе."

msgid ""
"This helper creates a [StaticBody3D] child node with a [ConvexPolygonShape3D] "
"collision shape calculated from the mesh geometry. It's mainly used for "
"testing.\n"
"If [param clean] is [code]true[/code] (default), duplicate and interior "
"vertices are removed automatically. You can set it to [code]false[/code] to "
"make the process faster if not needed.\n"
"If [param simplify] is [code]true[/code], the geometry can be further "
"simplified to reduce the number of vertices. Disabled by default."
msgstr ""
"Этот помощник создает дочерний узел [StaticBody3D] с формой столкновения "
"[ConvexPolygonShape3D], рассчитанной из геометрии сетки. В основном он "
"используется для тестирования.\n"
"Если [param clean] равен [code]true[/code] (по умолчанию), дублирующиеся и "
"внутренние вершины удаляются автоматически. Вы можете установить его на "
"[code]false[/code], чтобы ускорить процесс, если он не нужен.\n"
"Если [param simplify] равен [code]true[/code], геометрию можно дополнительно "
"упростить, чтобы уменьшить количество вершин. По умолчанию отключено."

msgid ""
"This helper creates a [MeshInstance3D] child node with gizmos at every vertex "
"calculated from the mesh geometry. It's mainly used for testing."
msgstr ""
"Этот помощник создает дочерний узел [MeshInstance3D] с гизмо в каждой "
"вершине, рассчитанной из геометрии сетки. Он в основном используется для "
"тестирования."

msgid ""
"This helper creates a [StaticBody3D] child node with multiple "
"[ConvexPolygonShape3D] collision shapes calculated from the mesh geometry via "
"convex decomposition. The convex decomposition operation can be controlled "
"with parameters from the optional [param settings]."
msgstr ""
"Этот помощник создает дочерний узел [StaticBody3D] с несколькими формами "
"столкновений [ConvexPolygonShape3D], рассчитанными из геометрии сетки с "
"помощью выпуклой декомпозиции. Операция выпуклой декомпозиции может "
"управляться параметрами из дополнительных [param settings]."

msgid ""
"This helper creates a [StaticBody3D] child node with a "
"[ConcavePolygonShape3D] collision shape calculated from the mesh geometry. "
"It's mainly used for testing."
msgstr ""
"Этот помощник создает дочерний узел [StaticBody3D] с формой столкновения "
"[ConcavePolygonShape3D], рассчитанной из геометрии сетки. В основном он "
"используется для тестирования."

msgid ""
"Returns the index of the blend shape with the given [param name]. Returns "
"[code]-1[/code] if no blend shape with this name exists, including when "
"[member mesh] is [code]null[/code]."
msgstr ""
"Возвращает индекс формы смешивания с заданным [param name]. Возвращает "
"[code]-1[/code], если формы смешивания с таким именем не существует, включая "
"случай, когда [member mesh] равен [code]null[/code]."

msgid ""
"Returns the [Material] that will be used by the [Mesh] when drawing. This can "
"return the [member GeometryInstance3D.material_override], the surface "
"override [Material] defined in this [MeshInstance3D], or the surface "
"[Material] defined in the [member mesh]. For example, if [member "
"GeometryInstance3D.material_override] is used, all surfaces will return the "
"override material.\n"
"Returns [code]null[/code] if no material is active, including when [member "
"mesh] is [code]null[/code]."
msgstr ""
"Возвращает [Material], который будет использоваться [Mesh] при рисовании. Это "
"может вернуть [member GeometryInstance3D.material_override], переопределение "
"поверхности [Material], определенное в этом [MeshInstance3D], или поверхность "
"[Material], определенное в [member mesh]. Например, если используется [member "
"GeometryInstance3D.material_override], все поверхности вернут "
"переопределенный материал.\n"
"Возвращает [code]null[/code], если ни один материал не активен, включая "
"случай, когда [member mesh] равен [code]null[/code]."

msgid ""
"Returns the number of blend shapes available. Produces an error if [member "
"mesh] is [code]null[/code]."
msgstr ""
"Возвращает количество доступных форм смешивания. Выдает ошибку, если [member "
"mesh] равен [code]null[/code]."

msgid ""
"Returns the value of the blend shape at the given [param blend_shape_idx]. "
"Returns [code]0.0[/code] and produces an error if [member mesh] is "
"[code]null[/code] or doesn't have a blend shape at that index."
msgstr ""
"Возвращает значение формы смешивания по указанному [param blend_shape_idx]. "
"Возвращает [code]0.0[/code] и выдает ошибку, если [member mesh] равен "
"[code]null[/code] или не имеет формы смешивания по этому индексу."

msgid ""
"Returns the internal [SkinReference] containing the skeleton's [RID] attached "
"to this RID. See also [method Resource.get_rid], [method "
"SkinReference.get_skeleton], and [method "
"RenderingServer.instance_attach_skeleton]."
msgstr ""
"Возвращает внутренний [SkinReference], содержащий [RID] скелета, "
"прикрепленный к этому RID. См. также [method Resource.get_rid], [method "
"SkinReference.get_skeleton] и [method "
"RenderingServer.instance_attach_skeleton]."

msgid ""
"Returns the override [Material] for the specified [param surface] of the "
"[Mesh] resource. See also [method get_surface_override_material_count].\n"
"[b]Note:[/b] This returns the [Material] associated to the [MeshInstance3D]'s "
"Surface Material Override properties, not the material within the [Mesh] "
"resource. To get the material within the [Mesh] resource, use [method "
"Mesh.surface_get_material] instead."
msgstr ""
"Возвращает переопределение [Material] для указанного [param surface] ресурса "
"[Mesh]. См. также [method get_surface_override_material_count].\n"
"[b]Примечание:[/b] Это возвращает [Material], связанный со свойствами "
"переопределения материала поверхности [MeshInstance3D], а не материал внутри "
"ресурса [Mesh]. Чтобы получить материал внутри ресурса [Mesh], используйте "
"вместо этого [method Mesh.surface_get_material]."

msgid ""
"Returns the number of surface override materials. This is equivalent to "
"[method Mesh.get_surface_count]. See also [method "
"get_surface_override_material]."
msgstr ""
"Возвращает количество материалов переопределения поверхности. Это "
"эквивалентно [method Mesh.get_surface_count]. См. также [method "
"get_surface_override_material]."

msgid ""
"Sets the value of the blend shape at [param blend_shape_idx] to [param "
"value]. Produces an error if [member mesh] is [code]null[/code] or doesn't "
"have a blend shape at that index."
msgstr ""
"Устанавливает значение формы смешивания в [param blend_shape_idx] на [param "
"value]. Выдает ошибку, если [member mesh] равен [code]null[/code] или не "
"имеет формы смешивания в этом индексе."

msgid ""
"Sets the override [param material] for the specified [param surface] of the "
"[Mesh] resource. This material is associated with this [MeshInstance3D] "
"rather than with [member mesh].\n"
"[b]Note:[/b] This assigns the [Material] associated to the [MeshInstance3D]'s "
"Surface Material Override properties, not the material within the [Mesh] "
"resource. To set the material within the [Mesh] resource, use [method "
"Mesh.surface_set_material] instead."
msgstr ""
"Устанавливает переопределение [param material] для указанного [param surface] "
"ресурса [Mesh]. Этот материал связан с этим [MeshInstance3D], а не с [member "
"mesh].\n"
"[b]Примечание:[/b] Это назначает [Material], связанный со свойствами Surface "
"Material Override [MeshInstance3D], а не материал внутри ресурса [Mesh]. "
"Чтобы задать материал внутри ресурса [Mesh], используйте вместо этого [method "
"Mesh.surface_set_material]."

msgid "The [Mesh] resource for the instance."
msgstr "Ресурс [Mesh] для экземпляра."

msgid "[NodePath] to the [Skeleton3D] associated with the instance."
msgstr "[NodePath] к [Skeleton3D], связанному с экземпляром."

msgid "The [Skin] to be used by this instance."
msgstr "[Skin], который будет использоваться этим экземпляром."

msgid "Library of meshes."
msgstr "Библиотека мешей."

msgid ""
"A library of meshes. Contains a list of [Mesh] resources, each with a name "
"and ID. Each item can also include collision and navigation shapes. This "
"resource is used in [GridMap]."
msgstr ""
"Библиотека сеток. Содержит список ресурсов [Mesh], каждый из которых имеет "
"имя и идентификатор. Каждый элемент может также включать формы столкновений и "
"навигации. Этот ресурс используется в [GridMap]."

msgid "Clears the library."
msgstr "Очистить библиотеку."

msgid ""
"Creates a new item in the library with the given ID.\n"
"You can get an unused ID from [method get_last_unused_item_id]."
msgstr ""
"Создает новый элемент в библиотеке с указанным идентификатором.\n"
"Вы можете получить неиспользованный идентификатор из [method "
"get_last_unused_item_id]."

msgid ""
"Returns the first item with the given name, or [code]-1[/code] if no item is "
"found."
msgstr ""
"Возвращает первый элемент с указанным именем или [code]-1[/code], если "
"элемент не найден."

msgid "Returns the list of item IDs in use."
msgstr "Возвращает список используемых идентификаторов элементов."

msgid "Returns the item's mesh."
msgstr "Возвращает сетку элемента."

msgid "Returns the item's shadow casting mode."
msgstr "Возвращает режим отбрасывания тени элементом."

msgid "Returns the transform applied to the item's mesh."
msgstr "Возвращает преобразование, примененное к сетке элемента."

msgid "Returns the item's name."
msgstr "Возвращает имя элемента."

msgid "Returns the item's navigation layers bitmask."
msgstr "Возвращает битовую маску слоев навигации элемента."

msgid "Returns the item's navigation mesh."
msgstr "Возвращает навигационную сетку элемента."

msgid "Returns the transform applied to the item's navigation mesh."
msgstr "Возвращает преобразование, примененное к навигационной сетке элемента."

msgid ""
"When running in the editor, returns a generated item preview (a 3D rendering "
"in isometric perspective). When used in a running project, returns the "
"manually-defined item preview which can be set using [method "
"set_item_preview]. Returns an empty [Texture2D] if no preview was manually "
"set in a running project."
msgstr ""
"При запуске в редакторе возвращает сгенерированный предварительный просмотр "
"элемента (3D-рендеринг в изометрической перспективе). При использовании в "
"запущенном проекте возвращает вручную определенный предварительный просмотр "
"элемента, который можно задать с помощью [method set_item_preview]. "
"Возвращает пустой [Texture2D], если предварительный просмотр не был задан "
"вручную в запущенном проекте."

msgid ""
"Returns an item's collision shapes.\n"
"The array consists of each [Shape3D] followed by its [Transform3D]."
msgstr ""
"Возвращает формы столкновения элемента. \n"
"Массив состоит из каждого [Shape3D], за которым следует его [Transform3D]."

msgid "Gets an unused ID for a new item."
msgstr "Получает неиспользованный идентификатор для нового элемента."

msgid "Removes the item."
msgstr "Удаление элемента."

msgid "Sets the item's mesh."
msgstr "Устанавливает сетку элемента."

msgid "Sets the item's shadow casting mode to [param shadow_casting_setting]."
msgstr ""
"Устанавливает режим отбрасывания тени элемента на [param "
"shadow_casting_setting]."

msgid "Sets the transform to apply to the item's mesh."
msgstr "Устанавливает преобразование, применяемое к сетке элемента."

msgid ""
"Sets the item's name.\n"
"This name is shown in the editor. It can also be used to look up the item "
"later using [method find_item_by_name]."
msgstr ""
"Задает имя элемента.\n"
"Это имя отображается в редакторе. Его также можно использовать для поиска "
"элемента позже с помощью [method find_item_by_name]."

msgid "Sets the item's navigation layers bitmask."
msgstr "Устанавливает битовую маску слоев навигации элемента."

msgid "Sets the item's navigation mesh."
msgstr "Устанавливает навигационную сетку элемента."

msgid "Sets the transform to apply to the item's navigation mesh."
msgstr ""
"Устанавливает преобразование, применяемое к навигационной сетке элемента."

msgid "Sets a texture to use as the item's preview icon in the editor."
msgstr ""
"Устанавливает текстуру для использования в качестве значка предварительного "
"просмотра элемента в редакторе."

msgid ""
"Sets an item's collision shapes.\n"
"The array should consist of [Shape3D] objects, each followed by a "
"[Transform3D] that will be applied to it. For shapes that should not have a "
"transform, use [constant Transform3D.IDENTITY]."
msgstr ""
"Устанавливает формы столкновения элемента. \n"
"Массив должен состоять из объектов [Shape3D], за каждым из которых следует "
"[Transform3D], который будет применен к нему. Для форм, которые не должны "
"иметь преобразования, используйте [constant Transform3D.IDENTITY]."

msgid "Simple texture that uses a mesh to draw itself."
msgstr "Простая текстура, которая использует сетку для отрисовки."

msgid ""
"Simple texture that uses a mesh to draw itself. It's limited because flags "
"can't be changed and region drawing is not supported."
msgstr ""
"Простая текстура, которая использует сетку для рисования самой себя. Она "
"ограничена, поскольку флаги не могут быть изменены, а рисование областей не "
"поддерживается."

msgid "Sets the base texture that the Mesh will use to draw."
msgstr ""
"Устанавливает базовую текстуру, которую сетка будет использовать для "
"отрисовки."

msgid "Sets the size of the image, needed for reference."
msgstr "Устанавливает размер изображения, необходимый для справки."

msgid "Sets the mesh used to draw. It must be a mesh using 2D vertices."
msgstr ""
"Устанавливает сетку, используемую для рисования. Это должна быть сетка с "
"использованием 2D вершин."

msgid ""
"Interpolates an abstract value and supplies it to a method called over time."
msgstr ""
"Интерполирует абстрактное значение и передает его методу, вызываемому с "
"течением времени."

msgid ""
"[MethodTweener] is similar to a combination of [CallbackTweener] and "
"[PropertyTweener]. It calls a method providing an interpolated value as a "
"parameter. See [method Tween.tween_method] for more usage information.\n"
"The tweener will finish automatically if the callback's target object is "
"freed.\n"
"[b]Note:[/b] [method Tween.tween_method] is the only correct way to create "
"[MethodTweener]. Any [MethodTweener] created manually will not function "
"correctly."
msgstr ""
"[MethodTweener] похож на комбинацию [CallbackTweener] и [PropertyTweener]. Он "
"вызывает метод, предоставляющий интерполированное значение в качестве "
"параметра. См. [method Tween.tween_method] для получения дополнительной "
"информации об использовании.\n"
"Tweener завершится автоматически, если целевой объект обратного вызова будет "
"освобожден.\n"
"[b]Примечание:[/b] [method Tween.tween_method] — единственный правильный "
"способ создания [MethodTweener]. Любой [MethodTweener], созданный вручную, не "
"будет работать правильно."

msgid ""
"Sets the time in seconds after which the [MethodTweener] will start "
"interpolating. By default there's no delay."
msgstr ""
"Устанавливает время в секундах, после которого [MethodTweener] начнет "
"интерполяцию. По умолчанию задержки нет."

msgid ""
"Sets the type of used easing from [enum Tween.EaseType]. If not set, the "
"default easing is used from the [Tween] that contains this Tweener."
msgstr ""
"Устанавливает тип используемой плавности из [enum Tween.EaseType]. Если не "
"установлено, плавность по умолчанию используется из [Tween], который содержит "
"этот Tweener."

msgid ""
"Sets the type of used transition from [enum Tween.TransitionType]. If not "
"set, the default transition is used from the [Tween] that contains this "
"Tweener."
msgstr ""
"Задает тип используемого перехода из [enum Tween.TransitionType]. Если не "
"задано, используется переход по умолчанию из [Tween], который содержит этот "
"Tweener."

msgid ""
"An internal editor class intended for keeping the data of unrecognized nodes."
msgstr ""
"Внутренний класс редактора, предназначенный для хранения данных "
"нераспознанных узлов."

msgid ""
"This is an internal editor class intended for keeping data of nodes of "
"unknown type (most likely this type was supplied by an extension that is no "
"longer loaded). It can't be manually instantiated or placed in a scene.\n"
"[b]Warning:[/b] Ignore missing nodes unless you know what you are doing. "
"Existing properties on a missing node can be freely modified in code, "
"regardless of the type they are intended to be."
msgstr ""
"Это внутренний класс редактора, предназначенный для хранения данных узлов "
"неизвестного типа (скорее всего, этот тип был предоставлен расширением, "
"которое больше не загружено). Его нельзя вручную создать или поместить в "
"сцену.\n"
"[b]Предупреждение:[/b] Игнорируйте отсутствующие узлы, если вы не знаете, что "
"делаете. Существующие свойства отсутствующего узла можно свободно изменять в "
"коде, независимо от того, какой тип им предназначен."

msgid ""
"The name of the class this node was supposed to be (see [method "
"Object.get_class])."
msgstr ""
"Имя класса, которым должен был быть этот узел (см. [method Object.get_class])."

msgid "Returns the path of the scene this node was instance of originally."
msgstr "Возвращает путь к сцене, экземпляром которой изначально был этот узел."

msgid ""
"If [code]true[/code], allows new properties to be set along with existing "
"ones. If [code]false[/code], only existing properties' values can be set, and "
"new properties cannot be added."
msgstr ""
"Если [code]true[/code], позволяет устанавливать новые свойства вместе с "
"существующими. Если [code]false[/code], можно устанавливать только значения "
"существующих свойств, и новые свойства не могут быть добавлены."

msgid ""
"An internal editor class intended for keeping the data of unrecognized "
"resources."
msgstr ""
"Внутренний класс редактора, предназначенный для хранения данных "
"нераспознанных ресурсов."

msgid ""
"This is an internal editor class intended for keeping data of resources of "
"unknown type (most likely this type was supplied by an extension that is no "
"longer loaded). It can't be manually instantiated or placed in a scene.\n"
"[b]Warning:[/b] Ignore missing resources unless you know what you are doing. "
"Existing properties on a missing resource can be freely modified in code, "
"regardless of the type they are intended to be."
msgstr ""
"Это внутренний класс редактора, предназначенный для хранения данных ресурсов "
"неизвестного типа (скорее всего, этот тип был предоставлен расширением, "
"которое больше не загружено). Его нельзя вручную создать или поместить в "
"сцену.\n"
"[b]Предупреждение:[/b] Игнорируйте отсутствующие ресурсы, если вы не знаете, "
"что делаете. Существующие свойства отсутствующего ресурса можно свободно "
"изменять в коде, независимо от того, какой тип они должны иметь."

msgid ""
"The name of the class this resource was supposed to be (see [method "
"Object.get_class])."
msgstr ""
"Имя класса, которым должен был быть этот ресурс (см. [method "
"Object.get_class])."

msgid ""
"If set to [code]true[/code], allows new properties to be added on top of the "
"existing ones with [method Object.set]."
msgstr ""
"Если установлено [code]true[/code], то новые свойства можно добавлять поверх "
"существующих с помощью [method Object.set]."

msgid "Generic mobile VR implementation."
msgstr "Стандартная реализация мобильной виртуальной реальности."

msgid ""
"This is a generic mobile VR implementation where you need to provide details "
"about the phone and HMD used. It does not rely on any existing framework. "
"This is the most basic interface we have. For the best effect, you need a "
"mobile phone with a gyroscope and accelerometer.\n"
"Note that even though there is no positional tracking, the camera will assume "
"the headset is at a height of 1.85 meters. You can change this by setting "
"[member eye_height].\n"
"You can initialize this interface as follows:\n"
"[codeblock]\n"
"var interface = XRServer.find_interface(\"Native mobile\")\n"
"if interface and interface.initialize():\n"
"\tget_viewport().use_xr = true\n"
"[/codeblock]\n"
"[b]Note:[/b] For Android, [member ProjectSettings.input_devices/sensors/"
"enable_accelerometer], [member ProjectSettings.input_devices/sensors/"
"enable_gravity], [member ProjectSettings.input_devices/sensors/"
"enable_gyroscope] and [member ProjectSettings.input_devices/sensors/"
"enable_magnetometer] must be enabled."
msgstr ""
"Это общая реализация мобильной VR, где вам нужно предоставить данные о "
"телефоне и используемом HMD. Она не опирается на какой-либо существующий "
"фреймворк. Это самый базовый интерфейс, который у нас есть. Для наилучшего "
"эффекта вам нужен мобильный телефон с гироскопом и акселерометром.\n"
"Обратите внимание, что даже если нет позиционного отслеживания, камера будет "
"считать, что гарнитура находится на высоте 1,85 метра. Вы можете изменить "
"это, установив [member eye_height].\n"
"Инициализировать этот интерфейс можно следующим образом:\n"
"[codeblock]\n"
"var interface = XRServer.find_interface(\"Native mobile\")\n"
"if interface and interface.initialize():\n"
"\tget_viewport().use_xr = true\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Для Android должны быть включены [member "
"ProjectSettings.input_devices/sensors/enable_accelerometer], [member "
"ProjectSettings.input_devices/sensors/enable_gravity], [member "
"ProjectSettings.input_devices/sensors/enable_gyroscope] и [member "
"ProjectSettings.input_devices/sensors/enable_magnetometer]."

msgid ""
"The distance between the display and the lenses inside of the device in "
"centimeters."
msgstr "Расстояние между дисплеем и линзами внутри устройства в сантиметрах."

msgid "The width of the display in centimeters."
msgstr "Ширина дисплея в сантиметрах."

msgid ""
"The height at which the camera is placed in relation to the ground (i.e. "
"[XROrigin3D] node)."
msgstr ""
"Высота, на которой расположена камера по отношению к земле (т. е. узел "
"[XROrigin3D])."

msgid ""
"The interocular distance, also known as the interpupillary distance. The "
"distance between the pupils of the left and right eye."
msgstr ""
"Межзрачковое расстояние, также известное как межзрачковое расстояние. "
"Расстояние между зрачками левого и правого глаза."

msgid ""
"The k1 lens factor is one of the two constants that define the strength of "
"the lens used and directly influences the lens distortion effect."
msgstr ""
"Коэффициент линзы k1 — одна из двух констант, определяющих силу используемой "
"линзы и напрямую влияющих на эффект искажения линзы."

msgid "The k2 lens factor, see k1."
msgstr "Коэффициент линзы k2, см. k1."

msgid ""
"Set the offset rect relative to the area being rendered. A length of 1 "
"represents the whole rendering area on that axis."
msgstr ""
"Установите смещение прямоугольника относительно области, которая "
"визуализируется. Длина 1 представляет всю область визуализации на этой оси."

msgid ""
"The oversample setting. Because of the lens distortion we have to render our "
"buffers at a higher resolution then the screen can natively handle. A value "
"between 1.5 and 2.0 often provides good results but at the cost of "
"performance."
msgstr ""
"Настройка передискретизации. Из-за искажения объектива нам приходится "
"визуализировать наши буферы с более высоким разрешением, чем может изначально "
"обработать экран. Значение между 1,5 и 2,0 часто дает хорошие результаты, но "
"за счет производительности."

msgid ""
"The minimum radius around the focal point where full quality is guaranteed if "
"VRS is used as a percentage of screen size.\n"
"[b]Note:[/b] Mobile and Forward+ renderers only. Requires [member "
"Viewport.vrs_mode] to be set to [constant Viewport.VRS_XR]."
msgstr ""
"Минимальный радиус вокруг точки фокусировки, где гарантируется полное "
"качество, если VRS используется как процент от размера экрана.\n"
"[b]Примечание:[/b] Только для Mobile и Forward+ рендереров. Требуется, чтобы "
"[member Viewport.vrs_mode] был установлен на [constant Viewport.VRS_XR]."

msgid ""
"The strength used to calculate the VRS density map. The greater this value, "
"the more noticeable VRS is. This improves performance at the cost of "
"quality.\n"
"[b]Note:[/b] Mobile and Forward+ renderers only. Requires [member "
"Viewport.vrs_mode] to be set to [constant Viewport.VRS_XR]."
msgstr ""
"Сила, используемая для расчета карты плотности VRS. Чем больше это значение, "
"тем заметнее VRS. Это повышает производительность за счет качества.\n"
"[b]Примечание:[/b] Только для Mobile и Forward+ рендереров. Требуется, чтобы "
"[member Viewport.vrs_mode] был установлен на [constant Viewport.VRS_XR]."

msgid ""
"А node that dynamically copies the 3D transform of a bone in its parent "
"[Skeleton3D]."
msgstr ""
"Узел, который динамически копирует 3D-преобразование кости в ее родителе "
"[Skeleton3D]."

msgid ""
"This node selects a bone in a [Skeleton3D] and attaches to it. This means "
"that the [ModifierBoneTarget3D] node will dynamically copy the 3D transform "
"of the selected bone.\n"
"The functionality is similar to [BoneAttachment3D], but this node adopts the "
"[SkeletonModifier3D] cycle and is intended to be used as another "
"[SkeletonModifier3D]'s target."
msgstr ""
"Этот узел выбирает кость в [Skeleton3D] и прикрепляется к ней. Это означает, "
"что узел [ModifierBoneTarget3D] будет динамически копировать 3D-"
"преобразование выбранной кости.\n"
"Функциональность аналогична [BoneAttachment3D], но этот узел использует цикл "
"[SkeletonModifier3D] и предназначен для использования в качестве ещё одного "
"целевого объекта [SkeletonModifier3D]."

msgid "Abstract class for non-real-time video recording encoders."
msgstr "Абстрактный класс для кодировщиков видеозаписи не в реальном времени."

msgid ""
"Godot can record videos with non-real-time simulation. Like the [code]--fixed-"
"fps[/code] [url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command "
"line argument[/url], this forces the reported [code]delta[/code] in [method "
"Node._process] functions to be identical across frames, regardless of how "
"long it actually took to render the frame. This can be used to record high-"
"quality videos with perfect frame pacing regardless of your hardware's "
"capabilities.\n"
"Godot has 3 built-in [MovieWriter]s:\n"
"- OGV container with Theora for video and Vorbis for audio ([code].ogv[/code] "
"file extension). Lossy compression, medium file sizes, fast encoding. The "
"lossy compression quality can be adjusted by changing [member "
"ProjectSettings.editor/movie_writer/video_quality] and [member "
"ProjectSettings.editor/movie_writer/ogv/audio_quality]. The resulting file "
"can be viewed in Godot with [VideoStreamPlayer] and most video players, but "
"not web browsers as they don't support Theora.\n"
"- AVI container with MJPEG for video and uncompressed audio ([code].avi[/"
"code] file extension). Lossy compression, medium file sizes, fast encoding. "
"The lossy compression quality can be adjusted by changing [member "
"ProjectSettings.editor/movie_writer/video_quality]. The resulting file can be "
"viewed in most video players, but it must be converted to another format for "
"viewing on the web or by Godot with [VideoStreamPlayer]. MJPEG does not "
"support transparency. AVI output is currently limited to a file of 4 GB in "
"size at most.\n"
"- PNG image sequence for video and WAV for audio ([code].png[/code] file "
"extension). Lossless compression, large file sizes, slow encoding. Designed "
"to be encoded to a video file with another tool such as [url=https://"
"ffmpeg.org/]FFmpeg[/url] after recording. Transparency is currently not "
"supported, even if the root viewport is set to be transparent.\n"
"If you need to encode to a different format or pipe a stream through third-"
"party software, you can extend the [MovieWriter] class to create your own "
"movie writers. This should typically be done using GDExtension for "
"performance reasons.\n"
"[b]Editor usage:[/b] A default movie file path can be specified in [member "
"ProjectSettings.editor/movie_writer/movie_file]. Alternatively, for running "
"single scenes, a [code]movie_file[/code] metadata can be added to the root "
"node, specifying the path to a movie file that will be used when recording "
"that scene. Once a path is set, click the video reel icon in the top-right "
"corner of the editor to enable Movie Maker mode, then run any scene as usual. "
"The engine will start recording as soon as the splash screen is finished, and "
"it will only stop recording when the engine quits. Click the video reel icon "
"again to disable Movie Maker mode. Note that toggling Movie Maker mode does "
"not affect project instances that are already running.\n"
"[b]Note:[/b] MovieWriter is available for use in both the editor and exported "
"projects, but it is [i]not[/i] designed for use by end users to record videos "
"while playing. Players wishing to record gameplay videos should install tools "
"such as [url=https://obsproject.com/]OBS Studio[/url] or [url=https://"
"www.maartenbaert.be/simplescreenrecorder/]SimpleScreenRecorder[/url] "
"instead.\n"
"[b]Note:[/b] MJPEG support ([code].avi[/code] file extension) depends on the "
"[code]jpg[/code] module being enabled at compile time (default behavior).\n"
"[b]Note:[/b] OGV support ([code].ogv[/code] file extension) depends on the "
"[code]theora[/code] module being enabled at compile time (default behavior). "
"Theora compression is only available in editor binaries."
msgstr ""
"Godot может записывать видео с симуляцией не в реальном времени. Как и "
"аргумент командной строки [code]--fixed-fps[/code] [url=$DOCS_URL/tutorials/"
"editor/command_line_tutorial.html][/url], это обеспечивает одинаковое "
"значение [code]delta[/code] в функциях [method Node._process] для всех "
"кадров, независимо от фактического времени рендеринга кадра. Это можно "
"использовать для записи высококачественного видео с идеальной скоростью "
"кадров независимо от возможностей вашего оборудования.\n"
"Godot имеет 3 встроенных [MovieWriter]:\n"
"- OGV контейнер с Theora для видео и Vorbis для аудио (расширение файла "
"[code].ogv[/code]). Сжатие с потерями, файлы среднего размера, быстрое "
"кодирование. Качество сжатия с потерями можно настроить, изменив [member "
"ProjectSettings.editor/movie_writer/video_quality] и [member "
"ProjectSettings.editor/movie_writer/ogv/audio_quality]. TПолученный файл "
"можно просмотреть в Godot с помощью [VideoStreamPlayer] и большинства "
"видеоплееров, но не в веб-браузерах, поскольку они не поддерживают Theora.\n"
"- AVI контейнер с MJPEG для видео и несжатого аудио (расширение файла "
"[code].avi[/code]). Сжатие с потерями, средние размеры файлов, быстрое "
"кодирование. Качество сжатия с потерями можно настроить, изменив [member "
"ProjectSettings.editor/movie_writer/video_quality]. Полученный файл можно "
"просмотреть в большинстве видеоплееров, но для просмотра в Интернете или с "
"помощью Godot его необходимо конвертировать в другой формат. "
"[VideoStreamPlayer]. MJPEG не поддерживает прозрачность. AVI в настоящее "
"время размер выходного файла ограничен максимум 4 ГБ.\n"
"- PNG последовательность изображений для видео и WAV для аудио (расширение "
"файла [code].png[/code]). Сжатие без потерь, большой размер файлов, медленное "
"кодирование. Разработан для кодирования в видеофайл с помощью другого "
"инструмента, например [url=https://ffmpeg.org/]FFmpeg[/url] после записи. "
"Прозрачность в настоящее время не поддерживается, даже если корневая область "
"просмотра настроена как прозрачная.\n"
"Если вам нужно кодировать видео в другой формат или направлять поток через "
"стороннее ПО, вы можете расширить класс [MovieWriter] для создания "
"собственных модулей записи фильмов. Обычно для этого используется GDExtension "
"из соображений производительности.\n"
"[b]Использование редактора:[/b] Путь к файлу видео по умолчанию можно указать "
"в [member ProjectSettings.editor/movie_writer/movie_file]. В качестве "
"альтернативы, для запуска отдельных сцен, в корневой узел можно добавить "
"метаданные [code]movie_file[/code], указав путь к файлу фильма, который будет "
"использоваться при записи этой сцены. После того как путь задан, щелкните "
"значок видеоленты в правом верхнем углу редактора, чтобы включить режим Movie "
"Maker, а затем запустите любую сцену как обычно. Движок начнет запись сразу "
"после завершения отображения заставки и остановит ее только после остановки "
"двигателя. Чтобы отключить режим Movie Maker, щелкните значок видеоленты еще "
"раз. NОбратите внимание, что переключение режима Movie Maker не влияет на уже "
"запущенные экземпляры проектов.\n"
"[b]Примечание:[/b] MovieWriter доступен для использования как в редакторе, "
"так и в экспортированных проектах, но он [i]не[/i] предназначен для "
"использования конечными пользователями для записи видео во время "
"воспроизведения. Игрокам, желающим записать видео игрового процесса, следует "
"вместо этого установить такие инструменты, как [url=https://"
"obsproject.com/]OBS Studio[/url] или [url=https://www.maartenbaert.be/"
"simplescreenrecorder/]SimpleScreenRecorder[/url].\n"
"[b]Примечание:[/b] MJPEG ооддержка (расширение файла [code].avi[/code]) "
"зависит от включения модуля [code]jpg[/code] во время компиляции (поведение "
"по умолчанию).\n"
"[b]Примечание:[/b] Поддержка OGV (расширение файла [code].ogv[/code]) зависит "
"от включения модуля [code]theora[/code] во время компиляции (поведение по "
"умолчанию). Сжатие Theora доступно только в двоичных файлах редактора."

msgid ""
"Called when the audio sample rate used for recording the audio is requested "
"by the engine. The value returned must be specified in Hz. Defaults to 48000 "
"Hz if [method _get_audio_mix_rate] is not overridden."
msgstr ""
"Вызывается, когда движок запрашивает частоту дискретизации звука, "
"используемую для записи звука. Возвращаемое значение должно быть указано в "
"Гц. По умолчанию 48000 Гц, если [method _get_audio_mix_rate] не переопределен."

msgid ""
"Called when the audio speaker mode used for recording the audio is requested "
"by the engine. This can affect the number of output channels in the resulting "
"audio file/stream. Defaults to [constant AudioServer.SPEAKER_MODE_STEREO] if "
"[method _get_audio_speaker_mode] is not overridden."
msgstr ""
"Вызывается, когда движок запрашивает режим аудиодинамика, используемый для "
"записи звука. Это может повлиять на количество выходных каналов в "
"результирующем аудиофайле/потоке. По умолчанию [constant "
"AudioServer.SPEAKER_MODE_STEREO], если [method _get_audio_speaker_mode] не "
"переопределен."

msgid ""
"Called when the engine determines whether this [MovieWriter] is able to "
"handle the file at [param path]. Must return [code]true[/code] if this "
"[MovieWriter] is able to handle the given file path, [code]false[/code] "
"otherwise. Typically, [method _handles_file] is overridden as follows to "
"allow the user to record a file at any path with a given file extension:\n"
"[codeblock]\n"
"func _handles_file(path):\n"
"\t# Allows specifying an output file with a `.mkv` file extension (case-"
"insensitive),\n"
"\t# either in the Project Settings or with the `--write-movie <path>` command "
"line argument.\n"
"\treturn path.get_extension().to_lower() == \"mkv\"\n"
"[/codeblock]"
msgstr ""
"Вызывается, когда движок определяет, может ли этот [MovieWriter] обработать "
"файл по адресу [param path]. Должен вернуть [code]true[/code], если этот "
"[MovieWriter] может обработать указанный путь к файлу, в противном случае "
"[code]false[/code]. Обычно [method _handles_file] переопределяется следующим "
"образом, чтобы позволить пользователю записывать файл по любому пути с "
"указанным расширением файла:\n"
"[codeblock]\n"
"func _handles_file(path):\n"
"\t#Позволяет указать выходной файл с расширением `.mkv` (без учета "
"регистра),\n"
"\t# либо в настройках проекта, либо с помощью аргумента командной строки `--"
"write-movie <путь>`.\n"
"\treturn path.get_extension().to_lower() == \"mkv\"\n"
"[/codeblock]"

msgid ""
"Called once before the engine starts writing video and audio data. [param "
"movie_size] is the width and height of the video to save. [param fps] is the "
"number of frames per second specified in the project settings or using the "
"[code]--fixed-fps <fps>[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]."
msgstr ""
"Вызывается один раз перед тем, как движок начнет записывать видео- и "
"аудиоданные. [param movie_size] — ширина и высота сохраняемого видео. [param "
"fps] — количество кадров в секунду, указанное в настройках проекта или с "
"помощью [code]--fixed-fps <fps>[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]аргумента командной строки[/url]."

msgid ""
"Called when the engine finishes writing. This occurs when the engine quits by "
"pressing the window manager's close button, or when [method SceneTree.quit] "
"is called.\n"
"[b]Note:[/b] Pressing [kbd]Ctrl + C[/kbd] on the terminal running the editor/"
"project does [i]not[/i] result in [method _write_end] being called."
msgstr ""
"Вызывается, когда движок завершает запись. Это происходит, когда движок "
"завершает работу, нажимая кнопку закрытия оконного менеджера или когда "
"вызывается [method SceneTree.quit].\n"
"[b]Примечание:[/b] Нажатие [kbd]Ctrl + C[/kbd] на терминале, на котором "
"запущен редактор/проект, [i]не[/i] приводит к вызову [method _write_end]."

msgid ""
"Called at the end of every rendered frame. The [param frame_image] and [param "
"audio_frame_block] function arguments should be written to."
msgstr ""
"Вызывается в конце каждого отрендеренного кадра. Аргументы функции [param "
"frame_image] и [param audio_frame_block] должны быть записаны."

msgid ""
"Adds a writer to be usable by the engine. The supported file extensions can "
"be set by overriding [method _handles_file].\n"
"[b]Note:[/b] [method add_writer] must be called early enough in the engine "
"initialization to work, as movie writing is designed to start at the same "
"time as the rest of the engine."
msgstr ""
"Добавляет писатель, который может использоваться движком. Поддерживаемые "
"расширения файлов можно задать, переопределив [method _handles_file].\n"
"[b]Примечание:[/b] [method add_writer] должен быть вызван достаточно рано при "
"инициализации движка, чтобы работать, так как запись фильма разработана для "
"запуска одновременно с остальной частью движка."

msgid ""
"Provides high-performance drawing of a mesh multiple times using GPU "
"instancing."
msgstr ""
"Обеспечивает высокопроизводительную отрисовку сетки несколько раз с "
"использованием GPU-экземпляров."

msgid ""
"MultiMesh provides low-level mesh instancing. Drawing thousands of "
"[MeshInstance3D] nodes can be slow, since each object is submitted to the GPU "
"then drawn individually.\n"
"MultiMesh is much faster as it can draw thousands of instances with a single "
"draw call, resulting in less API overhead.\n"
"As a drawback, if the instances are too far away from each other, performance "
"may be reduced as every single instance will always render (they are "
"spatially indexed as one, for the whole object).\n"
"Since instances may have any behavior, the AABB used for visibility must be "
"provided by the user.\n"
"[b]Note:[/b] A MultiMesh is a single object, therefore the same maximum "
"lights per object restriction applies. This means, that once the maximum "
"lights are consumed by one or more instances, the rest of the MultiMesh "
"instances will [b]not[/b] receive any lighting.\n"
"[b]Note:[/b] Blend Shapes will be ignored if used in a MultiMesh."
msgstr ""
"MultiMesh обеспечивает низкоуровневое создание экземпляров сетки. Отрисовка "
"тысяч узлов [MeshInstance3D] может быть медленной, поскольку каждый объект "
"отправляется в графический процессор, а затем отрисовывается индивидуально.\n"
"MultiMesh намного быстрее, поскольку он может рисовать тысячи экземпляров за "
"один вызов отрисовки, что приводит к меньшим накладным расходам API.\n"
"Недостатком является то, что если экземпляры находятся слишком далеко друг от "
"друга, производительность может снизиться, поскольку каждый экземпляр всегда "
"будет отображаться (они пространственно индексируются как один для всего "
"объекта).\n"
"Поскольку экземпляры могут иметь любое поведение, AABB, используемый для "
"видимости, должен быть предоставлен пользователем.\n"
"[b]Примечание:[/b] MultiMesh — это один объект, поэтому применяется то же "
"ограничение на максимальное количество источников света на объект. Это "
"означает, что после того, как максимальное количество источников света будет "
"использовано одним или несколькими экземплярами, остальные экземпляры "
"MultiMesh [b]не[/b] получат никакого освещения.\n"
"[b]Примечание:[/b] Blend Shapes будут игнорироваться, если используются в "
"MultiMesh."

msgid "Using MultiMeshInstance"
msgstr "Использовать MultiMeshInstance"

msgid "Optimization using MultiMeshes"
msgstr "Оптимизация с использованием мультисеток"

msgid "Animating thousands of fish with MultiMeshInstance"
msgstr "Анимация тысяч рыб с помощью MultiMeshInstance"

msgid "Returns the visibility axis-aligned bounding box in local space."
msgstr ""
"Возвращает ограничивающую рамку, выровненную по оси видимости, в локальном "
"пространстве."

msgid "Gets a specific instance's color multiplier."
msgstr "Получает цветовой множитель конкретного экземпляра."

msgid "Returns the custom data that has been set for a specific instance."
msgstr ""
"Возвращает пользовательские данные, заданные для конкретного экземпляра."

msgid "Returns the [Transform3D] of a specific instance."
msgstr "Возвращает [Transform3D] определенного экземпляра."

msgid "Returns the [Transform2D] of a specific instance."
msgstr "Возвращает [Transform2D] определенного экземпляра."

msgid ""
"When using [i]physics interpolation[/i], this function allows you to prevent "
"interpolation on an instance in the current physics tick.\n"
"This allows you to move instances instantaneously, and should usually be used "
"when initially placing an instance such as a bullet to prevent graphical "
"glitches."
msgstr ""
"При использовании [i]физической интерполяции[/i] эта функция позволяет "
"предотвратить интерполяцию на экземпляре в текущем такте физики. \n"
"Это позволяет мгновенно перемещать экземпляры и обычно должно использоваться "
"при первоначальном размещении экземпляра, такого как пуля, чтобы "
"предотвратить графические сбои."

msgid ""
"An alternative to setting the [member buffer] property, which can be used "
"with [i]physics interpolation[/i]. This method takes two arrays, and can set "
"the data for the current and previous tick in one go. The renderer will "
"automatically interpolate the data at each frame.\n"
"This is useful for situations where the order of instances may change from "
"physics tick to tick, such as particle systems.\n"
"When the order of instances is coherent, the simpler alternative of setting "
"[member buffer] can still be used with interpolation."
msgstr ""
"Альтернатива установке свойства [member buffer], которое можно использовать с "
"[i]физической интерполяцией[/i]. Этот метод принимает два массива и может "
"устанавливать данные для текущего и предыдущего тика за один раз. Рендерер "
"будет автоматически интерполировать данные в каждом кадре.\n"
"Это полезно в ситуациях, когда порядок экземпляров может меняться от тика к "
"тику физики, например, в системах частиц.\n"
"Когда порядок экземпляров согласован, более простую альтернативу установки "
"[member buffer] все еще можно использовать с интерполяцией."

msgid ""
"Sets the color of a specific instance by [i]multiplying[/i] the mesh's "
"existing vertex colors. This allows for different color tinting per "
"instance.\n"
"[b]Note:[/b] Each component is stored in 32 bits in the Forward+ and Mobile "
"rendering methods, but is packed into 16 bits in the Compatibility rendering "
"method.\n"
"For the color to take effect, ensure that [member use_colors] is [code]true[/"
"code] on the [MultiMesh] and [member "
"BaseMaterial3D.vertex_color_use_as_albedo] is [code]true[/code] on the "
"material. If you intend to set an absolute color instead of tinting, make "
"sure the material's albedo color is set to pure white ([code]Color(1, 1, 1)[/"
"code])."
msgstr ""
"Устанавливает цвет определенного экземпляра путем [i]умножения[/i] "
"существующих цветов вершин сетки. Это позволяет использовать различную "
"цветовую тонировку для каждого экземпляра.\n"
"[b]Примечание:[/b] Каждый компонент хранится в 32 битах в методах рендеринга "
"Forward+ и Mobile, но упакован в 16 бит в методе рендеринга Compatibility.\n"
"Чтобы цвет вступил в силу, убедитесь, что [member use_colors] имеет значение "
"[code]true[/code] на [MultiMesh] и [member "
"BaseMaterial3D.vertex_color_use_as_albedo] имеет значение [code]true[/code] "
"на материале. Если вы собираетесь установить абсолютный цвет вместо "
"тонировки, убедитесь, что цвет альбедо материала установлен на чистый белый "
"([code]Color(1, 1, 1)[/code])."

msgid ""
"Sets custom data for a specific instance. [param custom_data] is a [Color] "
"type only to contain 4 floating-point numbers.\n"
"[b]Note:[/b] Each number is stored in 32 bits in the Forward+ and Mobile "
"rendering methods, but is packed into 16 bits in the Compatibility rendering "
"method.\n"
"For the custom data to be used, ensure that [member use_custom_data] is "
"[code]true[/code].\n"
"This custom instance data has to be manually accessed in your custom shader "
"using [code]INSTANCE_CUSTOM[/code]."
msgstr ""
"Устанавливает пользовательские данные для определенного экземпляра. [param "
"custom_data] — это тип [Color], содержащий только 4 числа с плавающей "
"точкой.\n"
"[b]Примечание:[/b] Каждое число хранится в 32 битах в методах рендеринга "
"Forward+ и Mobile, но упаковано в 16 бит в методе рендеринга Compatibility.\n"
"Для использования пользовательских данных убедитесь, что [member "
"use_custom_data] имеет значение [code]true[/code].\n"
"Эти пользовательские данные экземпляра должны быть доступны вручную в вашем "
"пользовательском шейдере с помощью [code]INSTANCE_CUSTOM[/code]."

msgid "Sets the [Transform3D] for a specific instance."
msgstr "Устанавливает [Transform3D] для определенного экземпляра."

msgid "Sets the [Transform2D] for a specific instance."
msgstr "Устанавливает [Transform2D] для определенного экземпляра."

msgid ""
"Accessing this property is very slow. Use [method set_instance_color] and "
"[method get_instance_color] instead."
msgstr ""
"Доступ к этому свойству очень медленный. Вместо этого используйте [method "
"set_instance_color] и [method get_instance_color]."

msgid "Array containing each [Color] used by all instances of this mesh."
msgstr ""
"Массив, содержащий каждый [Color], используемый всеми экземплярами этой сетки."

msgid ""
"Custom AABB for this MultiMesh resource. Setting this manually prevents "
"costly runtime AABB recalculations."
msgstr ""
"Пользовательский AABB для этого ресурса MultiMesh. Установка этого вручную "
"предотвращает дорогостоящие перерасчеты AABB во время выполнения."

msgid ""
"Accessing this property is very slow. Use [method set_instance_custom_data] "
"and [method get_instance_custom_data] instead."
msgstr ""
"Доступ к этому свойству очень медленный. Вместо этого используйте [method "
"set_instance_custom_data] и [method get_instance_custom_data]."

msgid ""
"Array containing each custom data value used by all instances of this mesh, "
"as a [PackedColorArray]."
msgstr ""
"Массив, содержащий каждое пользовательское значение данных, используемое "
"всеми экземплярами этой сетки, как [PackedColorArray]."

msgid ""
"Number of instances that will get drawn. This clears and (re)sizes the "
"buffers. Setting data format or flags afterwards will have no effect.\n"
"By default, all instances are drawn but you can limit this with [member "
"visible_instance_count]."
msgstr ""
"Количество экземпляров, которые будут отрисованы. Это очищает и (изменяет) "
"размер буферов. Установка формата данных или флагов после этого не даст "
"никакого эффекта.\n"
"По умолчанию отрисовываются все экземпляры, но вы можете ограничить это с "
"помощью [member visible_instance_count]."

msgid ""
"[Mesh] resource to be instanced.\n"
"The looks of the individual instances can be modified using [method "
"set_instance_color] and [method set_instance_custom_data]."
msgstr ""
"[Mesh] ресурс для создания экземпляра.\n"
"Внешний вид отдельных экземпляров можно изменить с помощью [method "
"set_instance_color] и [method set_instance_custom_data]."

msgid ""
"Choose whether to use an interpolation method that favors speed or quality.\n"
"When using low physics tick rates (typically below 20) or high rates of "
"object rotation, you may get better results from the high quality setting.\n"
"[b]Note:[/b] Fast quality does not equate to low quality. Except in the "
"special cases mentioned above, the quality should be comparable to high "
"quality."
msgstr ""
"Выберите, следует ли использовать метод интерполяции, который "
"благоприятствует скорости или качеству.\n"
"При использовании низких физических тикрейтов (обычно ниже 20) или высоких "
"скоростей вращения объектов вы можете получить лучшие результаты с настройкой "
"высокого качества.\n"
"[b]Примечание:[/b] Высокое качество не равно низкому качеству. За исключением "
"особых случаев, упомянутых выше, качество должно быть сопоставимо с высоким "
"качеством."

msgid ""
"Accessing this property is very slow. Use [method set_instance_transform_2d] "
"and [method get_instance_transform_2d] instead."
msgstr ""
"Доступ к этому свойству очень медленный. Вместо этого используйте [method "
"set_instance_transform_2d] и [method get_instance_transform_2d]."

msgid ""
"Array containing each [Transform2D] value used by all instances of this mesh, "
"as a [PackedVector2Array]. Each transform is divided into 3 [Vector2] values "
"corresponding to the transforms' [code]x[/code], [code]y[/code], and "
"[code]origin[/code]."
msgstr ""
"Массив, содержащий каждое значение [Transform2D], используемое всеми "
"экземплярами этой сетки, как [PackedVector2Array]. Каждое преобразование "
"делится на 3 значения [Vector2], соответствующих [code]x[/code], [code]y[/"
"code] и [code]origin[/code] преобразований."

msgid ""
"Accessing this property is very slow. Use [method set_instance_transform] and "
"[method get_instance_transform] instead."
msgstr ""
"Доступ к этому свойству очень медленный. Используйте вместо этого [method "
"set_instance_transform] и [method get_instance_transform]."

msgid ""
"Array containing each [Transform3D] value used by all instances of this mesh, "
"as a [PackedVector3Array]. Each transform is divided into 4 [Vector3] values "
"corresponding to the transforms' [code]x[/code], [code]y[/code], [code]z[/"
"code], and [code]origin[/code]."
msgstr ""
"Массив, содержащий каждое значение [Transform3D], используемое всеми "
"экземплярами этой сетки, как [PackedVector3Array]. Каждое преобразование "
"делится на 4 значения [Vector3], соответствующих [code]x[/code], [code]y[/"
"code], [code]z[/code] и [code]origin[/code] преобразований."

msgid "Format of transform used to transform mesh, either 2D or 3D."
msgstr ""
"Формат преобразования, используемый для преобразования сетки, либо 2D, либо "
"3D."

msgid ""
"If [code]true[/code], the [MultiMesh] will use color data (see [method "
"set_instance_color]). Can only be set when [member instance_count] is "
"[code]0[/code] or less. This means that you need to call this method before "
"setting the instance count, or temporarily reset it to [code]0[/code]."
msgstr ""
"Если [code]true[/code], [MultiMesh] будет использовать данные о цвете (см. "
"[method set_instance_color]). Может быть установлено только тогда, когда "
"[member instance_count] равно [code]0[/code] или меньше. Это означает, что "
"вам нужно вызвать этот метод перед установкой количества экземпляров или "
"временно сбросить его до [code]0[/code]."

msgid ""
"If [code]true[/code], the [MultiMesh] will use custom data (see [method "
"set_instance_custom_data]). Can only be set when [member instance_count] is "
"[code]0[/code] or less. This means that you need to call this method before "
"setting the instance count, or temporarily reset it to [code]0[/code]."
msgstr ""
"Если [code]true[/code], [MultiMesh] будет использовать пользовательские "
"данные (см. [method set_instance_custom_data]). Может быть установлено только "
"тогда, когда [member instance_count] равно [code]0[/code] или меньше. Это "
"означает, что вам нужно вызвать этот метод перед установкой количества "
"экземпляров или временно сбросить его до [code]0[/code]."

msgid ""
"Limits the number of instances drawn, -1 draws all instances. Changing this "
"does not change the sizes of the buffers."
msgstr ""
"Ограничивает количество отрисовываемых экземпляров, -1 отрисовывает все "
"экземпляры. Изменение этого значения не изменяет размеры буферов."

msgid "Use this when using 2D transforms."
msgstr "Используйте это при использовании 2D-преобразований."

msgid "Use this when using 3D transforms."
msgstr "Используйте это при использовании 3D-преобразований."

msgid ""
"Always interpolate using Basis lerping, which can produce warping artifacts "
"in some situations."
msgstr ""
"Всегда выполняйте интерполяцию с использованием Basis lerping, что в "
"некоторых ситуациях может приводить к появлению артефактов деформации."

msgid ""
"Attempt to interpolate using Basis slerping (spherical linear interpolation) "
"where possible, otherwise fall back to lerping."
msgstr ""
"По возможности пытайтесь выполнить интерполяцию с использованием Basis "
"slerping (сферической линейной интерполяции), в противном случае прибегните к "
"lerping."

msgid "Node that instances a [MultiMesh] in 2D."
msgstr "Узел, который создает экземпляр [MultiMesh] в 2D."

msgid ""
"[MultiMeshInstance2D] is a specialized node to instance a [MultiMesh] "
"resource in 2D.\n"
"Usage is the same as [MultiMeshInstance3D]."
msgstr ""
"[MultiMeshInstance2D] — специализированный узел для создания экземпляра "
"ресурса [MultiMesh] в 2D.\n"
"Использование такое же, как и [MultiMeshInstance3D]."

msgid "The [MultiMesh] that will be drawn by the [MultiMeshInstance2D]."
msgstr "[MultiMesh], который будет отрисован [MultiMeshInstance2D]."

msgid "Node that instances a [MultiMesh]."
msgstr "Узел, который создает [MultiMesh]."

msgid ""
"[MultiMeshInstance3D] is a specialized node to instance [GeometryInstance3D]s "
"based on a [MultiMesh] resource.\n"
"This is useful to optimize the rendering of a high number of instances of a "
"given mesh (for example trees in a forest or grass strands)."
msgstr ""
"[MultiMeshInstance3D] — специализированный узел для создания экземпляров "
"[GeometryInstance3D]-ов на основе ресурса [MultiMesh]. \n"
"Это полезно для оптимизации рендеринга большого количества экземпляров "
"заданной сетки (например, деревьев в лесу или травяных прядей)."

msgid ""
"The [MultiMesh] resource that will be used and shared among all instances of "
"the [MultiMeshInstance3D]."
msgstr ""
"Ресурс [MultiMesh], который будет использоваться и совместно использоваться "
"всеми экземплярами [MultiMeshInstance3D]."

msgid "High-level multiplayer API interface."
msgstr "Высокоуровневый многопользовательский API-интерфейс."

msgid ""
"Base class for high-level multiplayer API implementations. See also "
"[MultiplayerPeer].\n"
"By default, [SceneTree] has a reference to an implementation of this class "
"and uses it to provide multiplayer capabilities (i.e. RPCs) across the whole "
"scene.\n"
"It is possible to override the MultiplayerAPI instance used by specific tree "
"branches by calling the [method SceneTree.set_multiplayer] method, "
"effectively allowing to run both client and server in the same scene.\n"
"It is also possible to extend or replace the default implementation via "
"scripting or native extensions. See [MultiplayerAPIExtension] for details "
"about extensions, [SceneMultiplayer] for the details about the default "
"implementation."
msgstr ""
"Базовый класс для высокоуровневых реализаций многопользовательского API. См. "
"также [MultiplayerPeer].\n"
"По умолчанию [SceneTree] имеет ссылку на реализацию этого класса и использует "
"ее для предоставления многопользовательских возможностей (т. е. RPC) по всей "
"сцене.\n"
"Можно переопределить экземпляр MultiplayerAPI, используемый определенными "
"ветвями дерева, вызвав метод [method SceneTree.set_multiplayer], что "
"фактически позволяет запускать как клиент, так и сервер в одной сцене.\n"
"Также можно расширить или заменить реализацию по умолчанию с помощью скриптов "
"или собственных расширений. См. [MultiplayerAPIExtension] для получения "
"подробной информации о расширениях, [SceneMultiplayer] для получения "
"подробной информации о реализации по умолчанию."

msgid "Returns a new instance of the default MultiplayerAPI."
msgstr "Возвращает новый экземпляр MultiplayerAPI по умолчанию."

msgid ""
"Returns the default MultiplayerAPI implementation class name. This is usually "
"[code]\"SceneMultiplayer\"[/code] when [SceneMultiplayer] is available. See "
"[method set_default_interface]."
msgstr ""
"Возвращает имя класса реализации MultiplayerAPI по умолчанию. Обычно это "
"[code]\"SceneMultiplayer\"[/code], когда доступен [SceneMultiplayer]. См. "
"[method set_default_interface]."

msgid ""
"Returns the peer IDs of all connected peers of this MultiplayerAPI's [member "
"multiplayer_peer]."
msgstr ""
"Возвращает идентификаторы всех подключенных одноранговых узлов этого "
"MultiplayerAPI [member multiplayer_peer]."

msgid ""
"Returns the sender's peer ID for the RPC currently being executed.\n"
"[b]Note:[/b] This method returns [code]0[/code] when called outside of an "
"RPC. As such, the original peer ID may be lost when code execution is delayed "
"(such as with GDScript's [code]await[/code] keyword)."
msgstr ""
"Возвращает идентификатор однорангового узла отправителя для RPC, который в "
"данный момент выполняется.\n"
"[b]Примечание:[/b] Этот метод возвращает [code]0[/code] при вызове вне RPC. "
"Таким образом, исходный идентификатор однорангового узла может быть утерян, "
"если выполнение кода задерживается (например, с ключевым словом [code]await[/"
"code] GDScript)."

msgid ""
"Returns the unique peer ID of this MultiplayerAPI's [member multiplayer_peer]."
msgstr ""
"Возвращает уникальный идентификатор однорангового узла [member "
"multiplayer_peer] этого MultiplayerAPI."

msgid "Returns [code]true[/code] if there is a [member multiplayer_peer] set."
msgstr ""
"Возвращает [code]true[/code], если установлен [member multiplayer_peer]."

msgid ""
"Returns [code]true[/code] if this MultiplayerAPI's [member multiplayer_peer] "
"is valid and in server mode (listening for connections)."
msgstr ""
"Возвращает [code]true[/code], если [member multiplayer_peer] этого "
"MultiplayerAPI действителен и находится в режиме сервера (прослушивает "
"соединения)."

msgid ""
"Notifies the MultiplayerAPI of a new [param configuration] for the given "
"[param object]. This method is used internally by [SceneTree] to configure "
"the root path for this MultiplayerAPI (passing [code]null[/code] and a valid "
"[NodePath] as [param configuration]). This method can be further used by "
"MultiplayerAPI implementations to provide additional features, refer to "
"specific implementation (e.g. [SceneMultiplayer]) for details on how they use "
"it.\n"
"[b]Note:[/b] This method is mostly relevant when extending or overriding the "
"MultiplayerAPI behavior via [MultiplayerAPIExtension]."
msgstr ""
"Уведомляет MultiplayerAPI о новой [param configuration] для данного [param "
"object]. Этот метод используется внутренне [SceneTree] для настройки "
"корневого пути для этого MultiplayerAPI (передавая [code]null[/code] и "
"допустимый [NodePath] как [param configuration]). Этот метод может далее "
"использоваться реализациями MultiplayerAPI для предоставления дополнительных "
"функций, см. конкретную реализацию (например, [SceneMultiplayer]) для "
"получения подробной информации о том, как они его используют.\n"
"[b]Примечание:[/b] Этот метод в основном актуален при расширении или "
"переопределении поведения MultiplayerAPI через [MultiplayerAPIExtension]."

msgid ""
"Notifies the MultiplayerAPI to remove a [param configuration] for the given "
"[param object]. This method is used internally by [SceneTree] to configure "
"the root path for this MultiplayerAPI (passing [code]null[/code] and an empty "
"[NodePath] as [param configuration]). This method can be further used by "
"MultiplayerAPI implementations to provide additional features, refer to "
"specific implementation (e.g. [SceneMultiplayer]) for details on how they use "
"it.\n"
"[b]Note:[/b] This method is mostly relevant when extending or overriding the "
"MultiplayerAPI behavior via [MultiplayerAPIExtension]."
msgstr ""
"Уведомляет MultiplayerAPI об удалении [param configuration] для данного "
"[param object]. Этот метод используется внутренне [SceneTree] для настройки "
"корневого пути для этого MultiplayerAPI (передавая [code]null[/code] и пустой "
"[NodePath] как [param configuration]). Этот метод может быть дополнительно "
"использован реализациями MultiplayerAPI для предоставления дополнительных "
"функций, см. конкретную реализацию (например, [SceneMultiplayer]) для "
"получения подробной информации о том, как они его используют.\n"
"[b]Примечание:[/b] Этот метод в основном актуален при расширении или "
"переопределении поведения MultiplayerAPI через [MultiplayerAPIExtension]."

msgid ""
"Method used for polling the MultiplayerAPI. You only need to worry about this "
"if you set [member SceneTree.multiplayer_poll] to [code]false[/code]. By "
"default, [SceneTree] will poll its MultiplayerAPI(s) for you.\n"
"[b]Note:[/b] This method results in RPCs being called, so they will be "
"executed in the same context of this function (e.g. [code]_process[/code], "
"[code]physics[/code], [Thread])."
msgstr ""
"Метод, используемый для опроса MultiplayerAPI. Вам нужно беспокоиться об "
"этом, только если вы установите [member SceneTree.multiplayer_poll] на "
"[code]false[/code]. По умолчанию [SceneTree] будет опрашивать свои "
"MultiplayerAPI для вас.\n"
"[b]Примечание:[/b] Этот метод приводит к вызову RPC, поэтому они будут "
"выполняться в том же контексте этой функции (например, [code]_process[/code], "
"[code]physics[/code], [Thread])."

msgid ""
"Sends an RPC to the target [param peer]. The given [param method] will be "
"called on the remote [param object] with the provided [param arguments]. The "
"RPC may also be called locally depending on the implementation and RPC "
"configuration. See [method Node.rpc] and [method Node.rpc_config].\n"
"[b]Note:[/b] Prefer using [method Node.rpc], [method Node.rpc_id], or "
"[code]my_method.rpc(peer, arg1, arg2, ...)[/code] (in GDScript), since they "
"are faster. This method is mostly useful in conjunction with "
"[MultiplayerAPIExtension] when extending or replacing the multiplayer "
"capabilities."
msgstr ""
"Отправляет RPC в целевой [param peer]. Указанный [param method] будет вызван "
"на удаленном [param object] с предоставленными [param arguments]. RPC также "
"может быть вызван локально в зависимости от реализации и конфигурации RPC. "
"См. [method Node.rpc] и [method Node.rpc_config].\n"
"[b]Примечание:[/b] Предпочитайте использовать [method Node.rpc], [method "
"Node.rpc_id] или [code]my_method.rpc(peer, arg1, arg2, ...)[/code] (в "
"GDScript), так как они быстрее. Этот метод в основном полезен в сочетании с "
"[MultiplayerAPIExtension] при расширении или замене многопользовательских "
"возможностей."

msgid ""
"Sets the default MultiplayerAPI implementation class. This method can be used "
"by modules and extensions to configure which implementation will be used by "
"[SceneTree] when the engine starts."
msgstr ""
"Устанавливает класс реализации MultiplayerAPI по умолчанию. Этот метод может "
"использоваться модулями и расширениями для настройки того, какая реализация "
"будет использоваться [SceneTree] при запуске движка."

msgid ""
"The peer object to handle the RPC system (effectively enabling networking "
"when set). Depending on the peer itself, the MultiplayerAPI will become a "
"network server (check with [method is_server]) and will set root node's "
"network mode to authority, or it will become a regular client peer. All child "
"nodes are set to inherit the network mode by default. Handling of networking-"
"related events (connection, disconnection, new clients) is done by connecting "
"to MultiplayerAPI's signals."
msgstr ""
"Объект peer для обработки системы RPC (эффективно включающей сетевое "
"взаимодействие при установке). В зависимости от самого peer, MultiplayerAPI "
"станет сетевым сервером (проверьте с помощью [method is_server]) и установит "
"сетевой режим корневого узла на authority, или он станет обычным клиентским "
"peer. Все дочерние узлы настроены на наследование сетевого режима по "
"умолчанию. Обработка событий, связанных с сетью (подключение, отключение, "
"новые клиенты), выполняется путем подключения к сигналам MultiplayerAPI."

msgid ""
"Emitted when this MultiplayerAPI's [member multiplayer_peer] successfully "
"connected to a server. Only emitted on clients."
msgstr ""
"Выдается, когда [member multiplayer_peer] этого MultiplayerAPI успешно "
"подключается к серверу. Выдается только на клиентах."

msgid ""
"Emitted when this MultiplayerAPI's [member multiplayer_peer] fails to "
"establish a connection to a server. Only emitted on clients."
msgstr ""
"Выдается, когда [member multiplayer_peer] этого MultiplayerAPI не может "
"установить соединение с сервером. Выдается только на клиентах."

msgid ""
"Emitted when this MultiplayerAPI's [member multiplayer_peer] connects with a "
"new peer. ID is the peer ID of the new peer. Clients get notified when other "
"clients connect to the same server. Upon connecting to a server, a client "
"also receives this signal for the server (with ID being 1)."
msgstr ""
"Выдается, когда [member multiplayer_peer] этого MultiplayerAPI подключается к "
"новому пиру. ID — это идентификатор пира нового пира. Клиенты получают "
"уведомления, когда другие клиенты подключаются к тому же серверу. При "
"подключении к серверу клиент также получает этот сигнал для сервера (с ID, "
"равным 1)."

msgid ""
"Emitted when this MultiplayerAPI's [member multiplayer_peer] disconnects from "
"a peer. Clients get notified when other clients disconnect from the same "
"server."
msgstr ""
"Выдается, когда [member multiplayer_peer] этого MultiplayerAPI отключается от "
"пира. Клиенты получают уведомления, когда другие клиенты отключаются от того "
"же сервера."

msgid ""
"Emitted when this MultiplayerAPI's [member multiplayer_peer] disconnects from "
"server. Only emitted on clients."
msgstr ""
"Выдается, когда [member multiplayer_peer] этого MultiplayerAPI отключается от "
"сервера. Выдается только на клиентах."

msgid ""
"Used with [method Node.rpc_config] to disable a method or property for all "
"RPC calls, making it unavailable. Default for all methods."
msgstr ""
"Используется с [method Node.rpc_config] для отключения метода или свойства "
"для всех вызовов RPC, делая его недоступным. По умолчанию для всех методов."

msgid ""
"Used with [method Node.rpc_config] to set a method to be callable remotely by "
"any peer. Analogous to the [code]@rpc(\"any_peer\")[/code] annotation. Calls "
"are accepted from all remote peers, no matter if they are node's authority or "
"not."
msgstr ""
"Используется с [method Node.rpc_config] для установки метода, который может "
"быть вызван удаленно любым пиром. Аналогично аннотации "
"[code]@rpc(\"any_peer\")[/code]. Вызовы принимаются от всех удаленных пиров, "
"независимо от того, являются ли они авторитетом узла или нет."

msgid ""
"Used with [method Node.rpc_config] to set a method to be callable remotely "
"only by the current multiplayer authority (which is the server by default). "
"Analogous to the [code]@rpc(\"authority\")[/code] annotation. See [method "
"Node.set_multiplayer_authority]."
msgstr ""
"Используется с [method Node.rpc_config] для установки метода, который будет "
"вызываться удаленно только текущим многопользовательским полномочием (по "
"умолчанию сервером). Аналогично аннотации [code]@rpc(\"authority\")[/code]. "
"См. [method Node.set_multiplayer_authority]."

msgid "Base class used for extending the [MultiplayerAPI]."
msgstr "Базовый класс, используемый для расширения [MultiplayerAPI]."

msgid ""
"This class can be used to extend or replace the default [MultiplayerAPI] "
"implementation via script or extensions.\n"
"The following example extend the default implementation ([SceneMultiplayer]) "
"by logging every RPC being made, and every object being configured for "
"replication.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends MultiplayerAPIExtension\n"
"class_name LogMultiplayer\n"
"\n"
"# We want to extend the default SceneMultiplayer.\n"
"var base_multiplayer = SceneMultiplayer.new()\n"
"\n"
"func _init():\n"
"\t# Just passthrough base signals (copied to var to avoid cyclic reference)\n"
"\tvar cts = connected_to_server\n"
"\tvar cf = connection_failed\n"
"\tvar sd = server_disconnected\n"
"\tvar pc = peer_connected\n"
"\tvar pd = peer_disconnected\n"
"\tbase_multiplayer.connected_to_server.connect(func(): cts.emit())\n"
"\tbase_multiplayer.connection_failed.connect(func(): cf.emit())\n"
"\tbase_multiplayer.server_disconnected.connect(func(): sd.emit())\n"
"\tbase_multiplayer.peer_connected.connect(func(id): pc.emit(id))\n"
"\tbase_multiplayer.peer_disconnected.connect(func(id): pd.emit(id))\n"
"\n"
"func _poll():\n"
"\treturn base_multiplayer.poll()\n"
"\n"
"# Log RPC being made and forward it to the default multiplayer.\n"
"func _rpc(peer: int, object: Object, method: StringName, args: Array) -> "
"Error:\n"
"\tprint(\"Got RPC for %d: %s::%s(%s)\" % [peer, object, method, args])\n"
"\treturn base_multiplayer.rpc(peer, object, method, args)\n"
"\n"
"# Log configuration add. E.g. root path (nullptr, NodePath), replication "
"(Node, Spawner|Synchronizer), custom.\n"
"func _object_configuration_add(object, config: Variant) -> Error:\n"
"\tif config is MultiplayerSynchronizer:\n"
"\t\tprint(\"Adding synchronization configuration for %s. Synchronizer: %s\" % "
"[object, config])\n"
"\telif config is MultiplayerSpawner:\n"
"\t\tprint(\"Adding node %s to the spawn list. Spawner: %s\" % [object, "
"config])\n"
"\treturn base_multiplayer.object_configuration_add(object, config)\n"
"\n"
"# Log configuration remove. E.g. root path (nullptr, NodePath), replication "
"(Node, Spawner|Synchronizer), custom.\n"
"func _object_configuration_remove(object, config: Variant) -> Error:\n"
"\tif config is MultiplayerSynchronizer:\n"
"\t\tprint(\"Removing synchronization configuration for %s. Synchronizer: %s\" "
"% [object, config])\n"
"\telif config is MultiplayerSpawner:\n"
"\t\tprint(\"Removing node %s from the spawn list. Spawner: %s\" % [object, "
"config])\n"
"\treturn base_multiplayer.object_configuration_remove(object, config)\n"
"\n"
"# These can be optional, but in our case we want to extend SceneMultiplayer, "
"so forward everything.\n"
"func _set_multiplayer_peer(p_peer: MultiplayerPeer):\n"
"\tbase_multiplayer.multiplayer_peer = p_peer\n"
"\n"
"func _get_multiplayer_peer() -> MultiplayerPeer:\n"
"\treturn base_multiplayer.multiplayer_peer\n"
"\n"
"func _get_unique_id() -> int:\n"
"\treturn base_multiplayer.get_unique_id()\n"
"\n"
"func _get_remote_sender_id() -> int:\n"
"\treturn base_multiplayer.get_remote_sender_id()\n"
"\n"
"func _get_peer_ids() -> PackedInt32Array:\n"
"\treturn base_multiplayer.get_peers()\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Then in your main scene or in an autoload call [method "
"SceneTree.set_multiplayer] to start using your custom [MultiplayerAPI]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# autoload.gd\n"
"func _enter_tree():\n"
"\t# Sets our custom multiplayer as the main one in SceneTree.\n"
"\tget_tree().set_multiplayer(LogMultiplayer.new())\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Native extensions can alternatively use the [method "
"MultiplayerAPI.set_default_interface] method during initialization to "
"configure themselves as the default implementation."
msgstr ""
"Этот класс можно использовать для расширения или замены реализации по "
"умолчанию [MultiplayerAPI] с помощью скрипта или расширений.\n"
"Следующий пример расширяет реализацию по умолчанию ([SceneMultiplayer]), "
"регистрируя каждый выполненный RPC и каждый объект, настроенный для "
"репликации.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends MultiplayerAPIExtension\n"
"class_name LogMultiplayer\n"
"\n"
"# Мы хотим расширить стандартный SceneMultiplayer.\n"
"var base_multiplayer = SceneMultiplayer.new()\n"
"\n"
"func _init():\n"
"\t# Просто пропускаются базовые сигналы (скопированные в var, чтобы избежать "
"циклических ссылок)\n"
"\tvar cts = connected_to_server\n"
"\tvar cf = connection_failed\n"
"\tvar sd = server_disconnected\n"
"\tvar pc = peer_connected\n"
"\tvar pd = peer_disconnected\n"
"\tbase_multiplayer.connected_to_server.connect(func(): cts.emit())\n"
"\tbase_multiplayer.connection_failed.connect(func(): cf.emit())\n"
"\tbase_multiplayer.server_disconnected.connect(func(): sd.emit())\n"
"\tbase_multiplayer.peer_connected.connect(func(id): pc.emit(id))\n"
"\tbase_multiplayer.peer_disconnected.connect(func(id): pd.emit(id))\n"
"\n"
"func _poll():\n"
"\treturn base_multiplayer.poll()\n"
"\n"
"# Регистрируйте выполняемые RPC-запросы и пересылайте их в "
"многопользовательскую игру по умолчанию.\n"
"func _rpc(peer: int, object: Object, method: StringName, args: Array) -> "
"Error:\n"
"\tprint(\"Получил RPC для %d: %s::%s(%s)\" % [peer, object, method, args])\n"
"\treturn base_multiplayer.rpc(peer, object, method, args)\n"
"\n"
"# Добавление конфигурации журнала. Например, корневой путь (nullptr, "
"NodePath), репликация (Node, Spawner|Synchronizer), пользовательский.\n"
"func _object_configuration_add(object, config: Variant) -> Error:\n"
"\tif config is MultiplayerSynchronizer:\n"
"\t\tprint(\"Добавление конфигурации синхронизации для %s. Синхронизатор: %s\" "
"% [object, config])\n"
"\telif config is MultiplayerSpawner:\n"
"\t\tprint(\"Добавление узла %s в список появления. Spawner: %s\" % [object, "
"config])\n"
"\treturn base_multiplayer.object_configuration_add(object, config)\n"
"\n"
"# Удаление конфигурации журнала. Например, корневой путь (nullptr, NodePath), "
"репликация (Node, Spawner|Synchronizer), настраиваемый.\n"
"func _object_configuration_remove(object, config: Variant) -> Error:\n"
"\tif config is MultiplayerSynchronizer:\n"
"\t\tprint(\"Удаление конфигурации синхронизации для %s. Синхронизатор: %s\" % "
"[object, config])\n"
"\telif config is MultiplayerSpawner:\n"
"\t\tprint(\"Удаление узла %s из списка появления. Spawner: %s\" % [object, "
"config])\n"
"\treturn base_multiplayer.object_configuration_remove(object, config)\n"
"\n"
"# Они могут быть необязательными, но в нашем случае мы хотим расширить "
"SceneMultiplayer, поэтому пересылаем все.\n"
"func _set_multiplayer_peer(p_peer: MultiplayerPeer):\n"
"\tbase_multiplayer.multiplayer_peer = p_peer\n"
"\n"
"func _get_multiplayer_peer() -> MultiplayerPeer:\n"
"\treturn base_multiplayer.multiplayer_peer\n"
"\n"
"func _get_unique_id() -> int:\n"
"\treturn base_multiplayer.get_unique_id()\n"
"\n"
"func _get_remote_sender_id() -> int:\n"
"\treturn base_multiplayer.get_remote_sender_id()\n"
"\n"
"func _get_peer_ids() -> PackedInt32Array:\n"
"\treturn base_multiplayer.get_peers()\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Затем в вашей основной сцене или в автозагрузке вызовите [method "
"SceneTree.set_multiplayer], чтобы начать использовать ваш пользовательский "
"[MultiplayerAPI]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# autoload.gd\n"
"func _enter_tree():\n"
"\t# Устанавливает наш пользовательский многопользовательский режим в качестве "
"основного в SceneTree.\n"
"\tget_tree().set_multiplayer(LogMultiplayer.new())\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Собственные расширения могут также использовать метод [method "
"MultiplayerAPI.set_default_interface] во время инициализации, чтобы настроить "
"себя в качестве реализации по умолчанию."

msgid "Called when the [member MultiplayerAPI.multiplayer_peer] is retrieved."
msgstr "Вызывается при извлечении [member MultiplayerAPI.multiplayer_peer]."

msgid "Callback for [method MultiplayerAPI.get_peers]."
msgstr "Обратный вызов для [method MultiplayerAPI.get_peers]."

msgid "Callback for [method MultiplayerAPI.get_remote_sender_id]."
msgstr "Обратный вызов для [method MultiplayerAPI.get_remote_sender_id]."

msgid "Callback for [method MultiplayerAPI.get_unique_id]."
msgstr "Обратный вызов для [method MultiplayerAPI.get_unique_id]."

msgid "Callback for [method MultiplayerAPI.object_configuration_add]."
msgstr "Обратный вызов для [method MultiplayerAPI.object_configuration_add]."

msgid "Callback for [method MultiplayerAPI.object_configuration_remove]."
msgstr "Обратный вызов для [method MultiplayerAPI.object_configuration_remove]."

msgid "Callback for [method MultiplayerAPI.poll]."
msgstr "Обратный вызов для [method MultiplayerAPI.poll]."

msgid "Callback for [method MultiplayerAPI.rpc]."
msgstr "Обратный вызов для [method MultiplayerAPI.rpc]."

msgid "Called when the [member MultiplayerAPI.multiplayer_peer] is set."
msgstr "Вызывается, когда установлен [member MultiplayerAPI.multiplayer_peer]."

msgid ""
"Abstract class for specialized [PacketPeer]s used by the [MultiplayerAPI]."
msgstr ""
"Абстрактный класс для специализированных [PacketPeer]-ов, используемых "
"[MultiplayerAPI]."

msgid ""
"Manages the connection with one or more remote peers acting as server or "
"client and assigning unique IDs to each of them. See also [MultiplayerAPI].\n"
"[b]Note:[/b] The [MultiplayerAPI] protocol is an implementation detail and "
"isn't meant to be used by non-Godot servers. It may change without notice.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"Управляет соединением с одним или несколькими удаленными узлами, выступающими "
"в качестве сервера или клиента, и назначает каждому из них уникальные "
"идентификаторы. См. также [MultiplayerAPI].\n"
"[b]Примечание:[/b] Протокол [MultiplayerAPI] является деталью реализации и не "
"предназначен для использования серверами, отличными от Godot. Он может быть "
"изменен без уведомления.\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid ""
"Immediately close the multiplayer peer returning to the state [constant "
"CONNECTION_DISCONNECTED]. Connected peers will be dropped without emitting "
"[signal peer_disconnected]."
msgstr ""
"Немедленно закрыть многопользовательский пир, вернувшись в состояние "
"[constant CONNECTION_DISCONNECTED]. Подключенные пиры будут отключены без "
"передачи [signal peer_disconnected]."

msgid ""
"Disconnects the given [param peer] from this host. If [param force] is "
"[code]true[/code] the [signal peer_disconnected] signal will not be emitted "
"for this peer."
msgstr ""
"Отключает указанный [param peer] от этого хоста. Если [param force] равен "
"[code]true[/code], то сигнал [signal peer_disconnected] не будет отправлен "
"для этого пира."

msgid ""
"Returns a randomly generated integer that can be used as a network unique ID."
msgstr ""
"Возвращает случайно сгенерированное целое число, которое можно использовать в "
"качестве уникального идентификатора сети."

msgid "Returns the current state of the connection."
msgstr "Возвращает текущее состояние соединения."

msgid ""
"Returns the channel over which the next available packet was received. See "
"[method PacketPeer.get_available_packet_count]."
msgstr ""
"Возвращает канал, по которому был получен следующий доступный пакет. См. "
"[method PacketPeer.get_available_packet_count]."

msgid ""
"Returns the transfer mode the remote peer used to send the next available "
"packet. See [method PacketPeer.get_available_packet_count]."
msgstr ""
"Возвращает режим передачи, который удаленный узел использовал для отправки "
"следующего доступного пакета. См. [method "
"PacketPeer.get_available_packet_count]."

msgid ""
"Returns the ID of the [MultiplayerPeer] who sent the next available packet. "
"See [method PacketPeer.get_available_packet_count]."
msgstr ""
"Возвращает идентификатор [MultiplayerPeer], отправившего следующий доступный "
"пакет. См. [method PacketPeer.get_available_packet_count]."

msgid "Returns the ID of this [MultiplayerPeer]."
msgstr "Возвращает идентификатор этого [MultiplayerPeer]."

msgid ""
"Returns [code]true[/code] if the server can act as a relay in the current "
"configuration. That is, if the higher level [MultiplayerAPI] should notify "
"connected clients of other peers, and implement a relay protocol to allow "
"communication between them."
msgstr ""
"Возвращает [code]true[/code], если сервер может действовать как ретранслятор "
"в текущей конфигурации. То есть, если более высокий уровень [MultiplayerAPI] "
"должен уведомлять подключенных клиентов о других пирах и реализовывать "
"протокол ретрансляции, чтобы разрешить связь между ними."

msgid "Waits up to 1 second to receive a new network event."
msgstr "Ожидает до 1 секунды для получения нового сетевого события."

msgid ""
"Sets the peer to which packets will be sent.\n"
"The [param id] can be one of: [constant TARGET_PEER_BROADCAST] to send to all "
"connected peers, [constant TARGET_PEER_SERVER] to send to the peer acting as "
"server, a valid peer ID to send to that specific peer, a negative peer ID to "
"send to all peers except that one. By default, the target peer is [constant "
"TARGET_PEER_BROADCAST]."
msgstr ""
"Устанавливает пир, которому будут отправляться пакеты.\n"
"[param id] может быть одним из: [constant TARGET_PEER_BROADCAST] для отправки "
"всем подключенным пирам, [constant TARGET_PEER_SERVER] для отправки пиру, "
"выступающему в качестве сервера, допустимый идентификатор пира для отправки "
"этому конкретному пиру, отрицательный идентификатор пира для отправки всем "
"пирам, кроме этого. По умолчанию целевой пир — [constant "
"TARGET_PEER_BROADCAST]."

msgid "If [code]true[/code], this [MultiplayerPeer] refuses new connections."
msgstr ""
"Если [code]true[/code], этот [MultiplayerPeer] отклоняет новые подключения."

msgid ""
"The channel to use to send packets. Many network APIs such as ENet and WebRTC "
"allow the creation of multiple independent channels which behaves, in a way, "
"like separate connections. This means that reliable data will only block "
"delivery of other packets on that channel, and ordering will only be in "
"respect to the channel the packet is being sent on. Using different channels "
"to send [b]different and independent[/b] state updates is a common way to "
"optimize network usage and decrease latency in fast-paced games.\n"
"[b]Note:[/b] The default channel ([code]0[/code]) actually works as 3 "
"separate channels (one for each [enum TransferMode]) so that [constant "
"TRANSFER_MODE_RELIABLE] and [constant TRANSFER_MODE_UNRELIABLE_ORDERED] does "
"not interact with each other by default. Refer to the specific network API "
"documentation (e.g. ENet or WebRTC) to learn how to set up channels correctly."
msgstr ""
"Канал, используемый для отправки пакетов. Многие сетевые API, такие как ENet "
"и WebRTC, позволяют создавать несколько независимых каналов, которые ведут "
"себя, в некотором роде, как отдельные соединения. Это означает, что надежные "
"данные будут блокировать только доставку других пакетов по этому каналу, а "
"упорядочивание будет осуществляться только в отношении канала, по которому "
"отправляется пакет. Использование разных каналов для отправки [b]различных и "
"независимых[/b] обновлений состояния является распространенным способом "
"оптимизации использования сети и уменьшения задержки в динамичных играх.\n"
"[b]Примечание:[/b] Канал по умолчанию ([code]0[/code]) фактически работает "
"как 3 отдельных канала (по одному для каждого [enum TransferMode]), так что "
"[constant TRANSFER_MODE_RELIABLE] и [constant "
"TRANSFER_MODE_UNRELIABLE_ORDERED] по умолчанию не взаимодействуют друг с "
"другом. Обратитесь к документации конкретного сетевого API (например, ENet "
"или WebRTC), чтобы узнать, как правильно настроить каналы."

msgid ""
"The manner in which to send packets to the target peer. See the [method "
"set_target_peer] method."
msgstr ""
"Способ отправки пакетов целевому пиру. См. метод [method set_target_peer]."

msgid "Emitted when a remote peer connects."
msgstr "Выдается при подключении удаленного однорангового узла."

msgid "Emitted when a remote peer has disconnected."
msgstr "Выдается при отключении удаленного однорангового узла."

msgid "The MultiplayerPeer is disconnected."
msgstr "MultiplayerPeer отключен."

msgid "The MultiplayerPeer is currently connecting to a server."
msgstr "В данный момент MultiplayerPeer подключается к серверу."

msgid "This MultiplayerPeer is connected."
msgstr "Этот MultiplayerPeer подключен."

msgid "Packets are sent to all connected peers."
msgstr "Пакеты отправляются всем подключенным одноранговым узлам."

msgid "Packets are sent to the remote peer acting as server."
msgstr "Пакеты отправляются удаленному узлу, выступающему в роли сервера."

msgid ""
"Packets are not acknowledged, no resend attempts are made for lost packets. "
"Packets may arrive in any order. Potentially faster than [constant "
"TRANSFER_MODE_UNRELIABLE_ORDERED]. Use for non-critical data, and always "
"consider whether the order matters."
msgstr ""
"Пакеты не подтверждаются, повторной отправки потерянных пакетов не "
"производится. Пакеты могут прибывать в любом порядке. Потенциально быстрее, "
"чем [constant TRANSFER_MODE_UNRELIABLE_ORDERED]. Используйте для "
"некритических данных и всегда учитывайте, имеет ли значение порядок."

msgid ""
"Packets are not acknowledged, no resend attempts are made for lost packets. "
"Packets are received in the order they were sent in. Potentially faster than "
"[constant TRANSFER_MODE_RELIABLE]. Use for non-critical data or data that "
"would be outdated if received late due to resend attempt(s) anyway, for "
"example movement and positional data."
msgstr ""
"Пакеты не подтверждаются, повторные попытки отправки потерянных пакетов не "
"предпринимаются. Пакеты принимаются в том порядке, в котором они были "
"отправлены. Потенциально быстрее, чем [constant TRANSFER_MODE_RELIABLE]. "
"Используйте для некритических данных или данных, которые могут устареть, если "
"будут получены с опозданием из-за попытки(й) повторной отправки, например, "
"данные о движении и местоположении."

msgid ""
"Packets must be received and resend attempts should be made until the packets "
"are acknowledged. Packets must be received in the order they were sent in. "
"Most reliable transfer mode, but potentially the slowest due to the overhead. "
"Use for critical data that must be transmitted and arrive in order, for "
"example an ability being triggered or a chat message. Consider carefully if "
"the information really is critical, and use sparingly."
msgstr ""
"Пакеты должны быть получены, и должны быть предприняты попытки повторной "
"отправки, пока пакеты не будут подтверждены. Пакеты должны быть получены в "
"том порядке, в котором они были отправлены. Самый надежный режим передачи, но "
"потенциально самый медленный из-за накладных расходов. Используйте для "
"критических данных, которые должны быть переданы и получены в определенном "
"порядке, например, срабатывание способности или сообщение в чате. Тщательно "
"обдумайте, действительно ли информация является критически важной, и "
"используйте ее экономно."

msgid ""
"Class that can be inherited to implement custom multiplayer API networking "
"layers via GDExtension."
msgstr ""
"Класс, который можно унаследовать для реализации пользовательских сетевых "
"уровней многопользовательского API через GDExtension."

msgid ""
"This class is designed to be inherited from a GDExtension plugin to implement "
"custom networking layers for the multiplayer API (such as WebRTC). All the "
"methods below [b]must[/b] be implemented to have a working custom multiplayer "
"implementation. See also [MultiplayerAPI]."
msgstr ""
"Этот класс предназначен для наследования от плагина GDExtension для "
"реализации пользовательских сетевых слоев для API многопользовательского "
"режима (например, WebRTC). Все методы ниже [b]должны[/b] быть реализованы для "
"рабочей реализации пользовательского многопользовательского режима. См. также "
"[MultiplayerAPI]."

msgid ""
"Called when the multiplayer peer should be immediately closed (see [method "
"MultiplayerPeer.close])."
msgstr ""
"Вызывается, когда многопользовательский пир должен быть немедленно закрыт "
"(см. [method MultiplayerPeer.close])."

msgid ""
"Called when the connected [param p_peer] should be forcibly disconnected (see "
"[method MultiplayerPeer.disconnect_peer])."
msgstr ""
"Вызывается, когда подключенный [param p_peer] должен быть принудительно "
"отключен (см. [method MultiplayerPeer.disconnect_peer])."

msgid ""
"Called when the available packet count is internally requested by the "
"[MultiplayerAPI]."
msgstr ""
"Вызывается, когда [MultiplayerAPI] внутренне запрашивает доступное количество "
"пакетов."

msgid ""
"Called when the connection status is requested on the [MultiplayerPeer] (see "
"[method MultiplayerPeer.get_connection_status])."
msgstr ""
"Вызывается при запросе статуса соединения на [MultiplayerPeer] (см. [method "
"MultiplayerPeer.get_connection_status])."

msgid ""
"Called when the maximum allowed packet size (in bytes) is requested by the "
"[MultiplayerAPI]."
msgstr ""
"Вызывается, когда [MultiplayerAPI] запрашивает максимально допустимый размер "
"пакета (в байтах)."

msgid ""
"Called when a packet needs to be received by the [MultiplayerAPI], with "
"[param r_buffer_size] being the size of the binary [param r_buffer] in bytes."
msgstr ""
"Вызывается, когда [MultiplayerAPI] необходимо получить пакет, при этом [param "
"r_buffer_size] представляет собой размер двоичного файла [param r_buffer] в "
"байтах."

msgid ""
"Called to get the channel over which the next available packet was received. "
"See [method MultiplayerPeer.get_packet_channel]."
msgstr ""
"Вызывается для получения канала, по которому был получен следующий доступный "
"пакет. См. [method MultiplayerPeer.get_packet_channel]."

msgid ""
"Called to get the transfer mode the remote peer used to send the next "
"available packet. See [method MultiplayerPeer.get_packet_mode]."
msgstr ""
"Вызывается для получения режима передачи, который удаленный узел использовал "
"для отправки следующего доступного пакета. См. [method "
"MultiplayerPeer.get_packet_mode]."

msgid ""
"Called when the ID of the [MultiplayerPeer] who sent the most recent packet "
"is requested (see [method MultiplayerPeer.get_packet_peer])."
msgstr ""
"Вызывается при запросе идентификатора [MultiplayerPeer], отправившего "
"последний пакет (см. [method MultiplayerPeer.get_packet_peer])."

msgid ""
"Called when a packet needs to be received by the [MultiplayerAPI], if [method "
"_get_packet] isn't implemented. Use this when extending this class via "
"GDScript."
msgstr ""
"Вызывается, когда пакет должен быть получен [MultiplayerAPI], если [method "
"_get_packet] не реализован. Используйте это при расширении этого класса через "
"GDScript."

msgid ""
"Called when the transfer channel to use is read on this [MultiplayerPeer] "
"(see [member MultiplayerPeer.transfer_channel])."
msgstr ""
"Вызывается, когда используемый канал передачи считывается на этом "
"[MultiplayerPeer] (см. [member MultiplayerPeer.transfer_channel])."

msgid ""
"Called when the transfer mode to use is read on this [MultiplayerPeer] (see "
"[member MultiplayerPeer.transfer_mode])."
msgstr ""
"Вызывается, когда используемый режим передачи считывается на этом "
"[MultiplayerPeer] (см. [member MultiplayerPeer.transfer_mode])."

msgid ""
"Called when the unique ID of this [MultiplayerPeer] is requested (see [method "
"MultiplayerPeer.get_unique_id]). The value must be between [code]1[/code] and "
"[code]2147483647[/code]."
msgstr ""
"Вызывается, когда запрашивается уникальный идентификатор этого "
"[MultiplayerPeer] (см. [method MultiplayerPeer.get_unique_id]). Значение "
"должно быть между [code]1[/code] и [code]2147483647[/code]."

msgid ""
"Called when the \"refuse new connections\" status is requested on this "
"[MultiplayerPeer] (see [member MultiplayerPeer.refuse_new_connections])."
msgstr ""
"Вызывается, когда на этом [MultiplayerPeer] запрашивается статус «отклонить "
"новые подключения» (см. [member MultiplayerPeer.refuse_new_connections])."

msgid ""
"Called when the \"is server\" status is requested on the [MultiplayerAPI]. "
"See [method MultiplayerAPI.is_server]."
msgstr ""
"Вызывается, когда запрашивается статус «is server» в [MultiplayerAPI]. См. "
"[method MultiplayerAPI.is_server]."

msgid ""
"Called to check if the server can act as a relay in the current "
"configuration. See [method MultiplayerPeer.is_server_relay_supported]."
msgstr ""
"Вызывается для проверки, может ли сервер работать как ретранслятор в текущей "
"конфигурации. См. [method MultiplayerPeer.is_server_relay_supported]."

msgid ""
"Called when the [MultiplayerAPI] is polled. See [method MultiplayerAPI.poll]."
msgstr ""
"Вызывается при опросе [MultiplayerAPI]. См. [method MultiplayerAPI.poll]."

msgid ""
"Called when a packet needs to be sent by the [MultiplayerAPI], with [param "
"p_buffer_size] being the size of the binary [param p_buffer] in bytes."
msgstr ""
"Вызывается, когда [MultiplayerAPI] необходимо отправить пакет, при этом "
"[param p_buffer_size] представляет собой размер двоичного файла [param "
"p_buffer] в байтах."

msgid ""
"Called when a packet needs to be sent by the [MultiplayerAPI], if [method "
"_put_packet] isn't implemented. Use this when extending this class via "
"GDScript."
msgstr ""
"Вызывается, когда пакет должен быть отправлен [MultiplayerAPI], если [method "
"_put_packet] не реализован. Используйте это при расширении этого класса через "
"GDScript."

msgid ""
"Called when the \"refuse new connections\" status is set on this "
"[MultiplayerPeer] (see [member MultiplayerPeer.refuse_new_connections])."
msgstr ""
"Вызывается, когда на этом [MultiplayerPeer] установлен статус «отклонять "
"новые подключения» (см. [member MultiplayerPeer.refuse_new_connections])."

msgid ""
"Called when the target peer to use is set for this [MultiplayerPeer] (see "
"[method MultiplayerPeer.set_target_peer])."
msgstr ""
"Вызывается, когда для этого [MultiplayerPeer] задан целевой одноранговый узел "
"(см. [method MultiplayerPeer.set_target_peer])."

msgid ""
"Called when the channel to use is set for this [MultiplayerPeer] (see [member "
"MultiplayerPeer.transfer_channel])."
msgstr ""
"Вызывается, когда для этого [MultiplayerPeer] задан используемый канал (см. "
"[member MultiplayerPeer.transfer_channel])."

msgid ""
"Called when the transfer mode is set on this [MultiplayerPeer] (see [member "
"MultiplayerPeer.transfer_mode])."
msgstr ""
"Вызывается, когда на этом [MultiplayerPeer] установлен режим передачи (см. "
"[member MultiplayerPeer.transfer_mode])."

msgid ""
"Automatically replicates spawnable nodes from the authority to other "
"multiplayer peers."
msgstr ""
"Автоматически копирует создаваемые узлы из центра в другие "
"многопользовательские игры."

msgid ""
"Spawnable scenes can be configured in the editor or through code (see [method "
"add_spawnable_scene]).\n"
"Also supports custom node spawns through [method spawn], calling [member "
"spawn_function] on all peers.\n"
"Internally, [MultiplayerSpawner] uses [method "
"MultiplayerAPI.object_configuration_add] to notify spawns passing the spawned "
"node as the [code]object[/code] and itself as the [code]configuration[/code], "
"and [method MultiplayerAPI.object_configuration_remove] to notify despawns in "
"a similar way."
msgstr ""
"Сцены, которые можно создавать, можно настроить в редакторе или через код "
"(см. [method add_spawnable_scene]).\n"
"Также поддерживает создание пользовательских узлов через [method spawn], "
"вызывая [member spawn_function] на всех одноранговых узлах.\n"
"Внутри себя [MultiplayerSpawner] использует [method "
"MultiplayerAPI.object_configuration_add] для уведомления о создании, "
"передавая созданный узел как [code]object[/code] и себя как "
"[code]configuration[/code], и [method "
"MultiplayerAPI.object_configuration_remove] для уведомления об удалении "
"аналогичным образом."

msgid ""
"Adds a scene path to spawnable scenes, making it automatically replicated "
"from the multiplayer authority to other peers when added as children of the "
"node pointed by [member spawn_path]."
msgstr ""
"Добавляет путь к сцене к сценам, которые можно создавать, автоматически "
"реплицируя его из многопользовательского режима на другие узлы при добавлении "
"в качестве дочерних элементов узла, на который указывает [member spawn_path]."

msgid ""
"Clears all spawnable scenes. Does not despawn existing instances on remote "
"peers."
msgstr ""
"Очищает все создаваемые сцены. Не удаляет существующие экземпляры на "
"удаленных пирах."

msgid "Returns the spawnable scene path by index."
msgstr "Возвращает путь к создаваемой сцене по индексу."

msgid "Returns the count of spawnable scene paths."
msgstr "Возвращает количество путей создания сцен."

msgid ""
"Requests a custom spawn, with [param data] passed to [member spawn_function] "
"on all peers. Returns the locally spawned node instance already inside the "
"scene tree, and added as a child of the node pointed by [member spawn_path].\n"
"[b]Note:[/b] Spawnable scenes are spawned automatically. [method spawn] is "
"only needed for custom spawns."
msgstr ""
"Запрашивает пользовательский спавн, с [param data], переданным в [member "
"spawn_function] на всех пирах. Возвращает локально созданный экземпляр узла, "
"уже находящийся внутри дерева сцены и добавленный как дочерний узел узла, на "
"который указывает [member spawn_path].\n"
"[b]Примечание:[/b] Создаваемые сцены создаются автоматически. [method spawn] "
"необходим только для пользовательских спавнов."

msgid ""
"Method called on all peers when a custom [method spawn] is requested by the "
"authority. Will receive the [code]data[/code] parameter, and should return a "
"[Node] that is not in the scene tree.\n"
"[b]Note:[/b] The returned node should [b]not[/b] be added to the scene with "
"[method Node.add_child]. This is done automatically."
msgstr ""
"Метод вызывается для всех пиров, когда уполномоченный запросил "
"пользовательский [method spawn]. Получит параметр [code]data[/code] и должен "
"вернуть [Node], которого нет в дереве сцены.\n"
"[b]Примечание:[/b] Возвращаемый узел [b]не[/b]должен быть добавлен в сцену с "
"помощью [method Node.add_child]. Это делается автоматически."

msgid ""
"Maximum number of nodes allowed to be spawned by this spawner. Includes both "
"spawnable scenes and custom spawns.\n"
"When set to [code]0[/code] (the default), there is no limit."
msgstr ""
"Максимальное количество узлов, которые может создать этот спавнер. Включает "
"как сцены, которые можно создать, так и пользовательские спавны.\n"
"Если установлено значение [code]0[/code] (по умолчанию), ограничений нет."

msgid ""
"Path to the spawn root. Spawnable scenes that are added as direct children "
"are replicated to other peers."
msgstr ""
"Путь к корневому элементу spawn. Сцены spawnable, которые добавляются как "
"прямые потомки, реплицируются на другие одноранговые элементы."

msgid ""
"Emitted when a spawnable scene or custom spawn was despawned by the "
"multiplayer authority. Only called on remote peers."
msgstr ""
"Вызывается, когда спавнящаяся сцена или пользовательский спавн были удалены "
"многопользовательским управлением. Вызывается только на удаленных пирах."

msgid ""
"Emitted when a spawnable scene or custom spawn was spawned by the multiplayer "
"authority. Only called on remote peers."
msgstr ""
"Вызывается, когда спавнящаяся сцена или пользовательский спавн были созданы "
"многопользовательским органом. Вызывается только на удаленных пирах."

msgid ""
"Synchronizes properties from the multiplayer authority to the remote peers."
msgstr ""
"Синхронизирует свойства многопользовательского центра с удаленными узлами."

msgid ""
"By default, [MultiplayerSynchronizer] synchronizes configured properties to "
"all peers.\n"
"Visibility can be handled directly with [method set_visibility_for] or as-"
"needed with [method add_visibility_filter] and [method update_visibility].\n"
"[MultiplayerSpawner]s will handle nodes according to visibility of "
"synchronizers as long as the node at [member root_path] was spawned by one.\n"
"Internally, [MultiplayerSynchronizer] uses [method "
"MultiplayerAPI.object_configuration_add] to notify synchronization start "
"passing the [Node] at [member root_path] as the [code]object[/code] and "
"itself as the [code]configuration[/code], and uses [method "
"MultiplayerAPI.object_configuration_remove] to notify synchronization end in "
"a similar way.\n"
"[b]Note:[/b] Synchronization is not supported for [Object] type properties, "
"like [Resource]. Properties that are unique to each peer, like the instance "
"IDs of [Object]s (see [method Object.get_instance_id]) or [RID]s, will also "
"not work in synchronization."
msgstr ""
"По умолчанию [MultiplayerSynchronizer] синхронизирует настроенные свойства со "
"всеми одноранговыми узлами.\n"
"Видимость может обрабатываться напрямую с помощью [method set_visibility_for] "
"или по мере необходимости с помощью [method add_visibility_filter] и [method "
"update_visibility].\n"
"[MultiplayerSpawner]-ы будут обрабатывать узлы в соответствии с видимостью "
"синхронизаторов, пока узел в [member root_path] был создан одним из них.\n"
"Внутренне [MultiplayerSynchronizer] использует [method "
"MultiplayerAPI.object_configuration_add] для уведомления о начале "
"синхронизации, передавая [Node] в [member root_path] как [code]object[/code] "
"и себя как [code]configuration[/code], и использует [method "
"MultiplayerAPI.object_configuration_remove] для уведомления о завершении "
"синхронизации аналогичным образом.\n"
"[b]Примечание:[/b] Синхронизация не поддерживается для свойств типа [Object], "
"таких как [Resource]. Свойства, которые являются уникальными для каждого "
"однорангового узла, такие как идентификаторы экземпляров [Object] (см. "
"[method Object.get_instance_id]) или [RID], также не будут работать при "
"синхронизации."

msgid ""
"Adds a peer visibility filter for this synchronizer.\n"
"[param filter] should take a peer ID [int] and return a [bool]."
msgstr ""
"Добавляет фильтр видимости пиров для этого синхронизатора.\n"
"[param filter] должен принимать идентификатор пиров [int] и возвращать [bool]."

msgid "Queries the current visibility for peer [param peer]."
msgstr "Запрашивает текущую видимость для однорангового узла [param peer]."

msgid "Removes a peer visibility filter from this synchronizer."
msgstr "Удаляет фильтр видимости одноранговых узлов из этого синхронизатора."

msgid ""
"Sets the visibility of [param peer] to [param visible]. If [param peer] is "
"[code]0[/code], the value of [member public_visibility] will be updated "
"instead."
msgstr ""
"Устанавливает видимость [param peer] на [param visible]. Если [param peer] "
"равен [code]0[/code], вместо этого будет обновлено значение [member "
"public_visibility]."

msgid ""
"Updates the visibility of [param for_peer] according to visibility filters. "
"If [param for_peer] is [code]0[/code] (the default), all peers' visibilties "
"are updated."
msgstr ""
"Обновляет видимость [param for_peer] в соответствии с фильтрами видимости. "
"Если [param for_peer] равен [code]0[/code] (по умолчанию), обновляются "
"видимости всех пиров."

msgid ""
"Time interval between delta synchronizations. Used when the replication is "
"set to [constant SceneReplicationConfig.REPLICATION_MODE_ON_CHANGE]. If set "
"to [code]0.0[/code] (the default), delta synchronizations happen every "
"network process frame."
msgstr ""
"Временной интервал между дельта-синхронизациями. Используется, когда "
"репликация установлена на [constant "
"SceneReplicationConfig.REPLICATION_MODE_ON_CHANGE]. Если установлено на "
"[code]0.0[/code] (по умолчанию), дельта-синхронизации происходят каждый кадр "
"сетевого процесса."

msgid ""
"Whether synchronization should be visible to all peers by default. See "
"[method set_visibility_for] and [method add_visibility_filter] for ways of "
"configuring fine-grained visibility options."
msgstr ""
"Должна ли синхронизация быть видимой для всех одноранговых узлов по "
"умолчанию. Смотрите [method set_visibility_for] и [method "
"add_visibility_filter] для способов настройки детальных параметров видимости."

msgid "Resource containing which properties to synchronize."
msgstr "Ресурс, содержащий свойства для синхронизации."

msgid ""
"Time interval between synchronizations. Used when the replication is set to "
"[constant SceneReplicationConfig.REPLICATION_MODE_ALWAYS]. If set to "
"[code]0.0[/code] (the default), synchronizations happen every network process "
"frame."
msgstr ""
"Временной интервал между синхронизациями. Используется, когда репликация "
"установлена на [constant SceneReplicationConfig.REPLICATION_MODE_ALWAYS]. "
"Если установлено на [code]0.0[/code] (по умолчанию), синхронизация происходит "
"каждый кадр сетевого процесса."

msgid ""
"Node path that replicated properties are relative to.\n"
"If [member root_path] was spawned by a [MultiplayerSpawner], the node will be "
"also be spawned and despawned based on this synchronizer visibility options."
msgstr ""
"Путь узла, к которому относятся реплицированные свойства.\n"
"Если [member root_path] был создан [MultiplayerSpawner], узел также будет "
"создан и удален на основе параметров видимости этого синхронизатора."

msgid "Specifies when visibility filters are updated."
msgstr "Указывает, когда обновляются фильтры видимости."

msgid ""
"Emitted when a new delta synchronization state is received by this "
"synchronizer after the properties have been updated."
msgstr ""
"Вызывается, когда синхронизатор получает новое состояние дельта-синхронизации "
"после обновления свойств."

msgid ""
"Emitted when a new synchronization state is received by this synchronizer "
"after the properties have been updated."
msgstr ""
"Выдается, когда синхронизатор получает новое состояние синхронизации после "
"обновления свойств."

msgid ""
"Emitted when visibility of [param for_peer] is updated. See [method "
"update_visibility]."
msgstr ""
"Выдается при обновлении видимости [param for_peer]. См. [method "
"update_visibility]."

msgid ""
"Visibility filters are updated during process frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Фильтры видимости обновляются во время кадров процесса (см. [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid ""
"Visibility filters are updated during physics frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."
msgstr ""
"Фильтры видимости обновляются во время физических кадров (см. [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."

msgid ""
"Visibility filters are not updated automatically, and must be updated "
"manually by calling [method update_visibility]."
msgstr ""
"Фильтры видимости не обновляются автоматически и должны обновляться вручную "
"путем вызова [method update_visibility]."

msgid "A binary [Semaphore] for synchronization of multiple [Thread]s."
msgstr "Двоичный [Semaphore] для синхронизации нескольких [Thread]-ов."

msgid ""
"A synchronization mutex (mutual exclusion). This is used to synchronize "
"multiple [Thread]s, and is equivalent to a binary [Semaphore]. It guarantees "
"that only one thread can access a critical section at a time.\n"
"This is a reentrant mutex, meaning that it can be locked multiple times by "
"one thread, provided it also unlocks it as many times.\n"
"[b]Warning:[/b] Mutexes must be used carefully to avoid deadlocks.\n"
"[b]Warning:[/b] To ensure proper cleanup without crashes or deadlocks, the "
"following conditions must be met:\n"
"- When a [Mutex]'s reference count reaches zero and it is therefore "
"destroyed, no threads (including the one on which the destruction will "
"happen) must have it locked.\n"
"- When a [Thread]'s reference count reaches zero and it is therefore "
"destroyed, it must not have any mutex locked."
msgstr ""
"Синхронизирующий мьютекс (взаимное исключение). Используется для "
"синхронизации нескольких [Thread] и эквивалентен двоичному [Semaphore]. Он "
"гарантирует, что только один поток может получить доступ к критическому "
"разделу одновременно.\n"
"Это реентерабельный мьютекс, то есть он может быть заблокирован несколько раз "
"одним потоком, при условии, что он также разблокирует его столько же раз.\n"
"[b]Предупреждение:[/b] Мьютексы следует использовать осторожно, чтобы "
"избежать взаимоблокировок.\n"
"[b]Предупреждение:[/b] Чтобы обеспечить надлежащую очистку без сбоев или "
"взаимоблокировок, должны быть выполнены следующие условия:\n"
"- Когда счетчик ссылок [Mutex] достигает нуля и, следовательно, он "
"уничтожается, ни один поток (включая тот, в котором произойдет уничтожение) "
"не должен его блокировать.\n"
"- Когда счетчик ссылок [Thread] достигает нуля и, следовательно, он "
"уничтожается, у него не должно быть заблокированных мьютексов."

msgid "Using multiple threads"
msgstr "Использование многопоточности"

msgid "Thread-safe APIs"
msgstr "Потокобезопасные API"

msgid ""
"Locks this [Mutex], blocks until it is unlocked by the current owner.\n"
"[b]Note:[/b] This function returns without blocking if the thread already has "
"ownership of the mutex."
msgstr ""
"Блокирует этот [Mutex], блокирует до тех пор, пока он не будет разблокирован "
"текущим владельцем.\n"
"[b]Примечание:[/b] Эта функция возвращает без блокировки, если поток уже "
"владеет мьютексом."

msgid ""
"Tries locking this [Mutex], but does not block. Returns [code]true[/code] on "
"success, [code]false[/code] otherwise.\n"
"[b]Note:[/b] This function returns [code]true[/code] if the thread already "
"has ownership of the mutex."
msgstr ""
"Пытается заблокировать этот [Mutex], но не блокирует. Возвращает [code]true[/"
"code] в случае успеха, [code]false[/code] в противном случае.\n"
"[b]Примечание:[/b] Эта функция возвращает [code]true[/code], если поток уже "
"владеет Mutex."

msgid ""
"Unlocks this [Mutex], leaving it to other threads.\n"
"[b]Note:[/b] If a thread called [method lock] or [method try_lock] multiple "
"times while already having ownership of the mutex, it must also call [method "
"unlock] the same number of times in order to unlock it correctly.\n"
"[b]Warning:[/b] Calling [method unlock] more times that [method lock] on a "
"given thread, thus ending up trying to unlock a non-locked mutex, is wrong "
"and may causes crashes or deadlocks."
msgstr ""
"Разблокирует этот [Mutex], оставляя его другим потокам.\n"
"[b]Примечание:[/b] Если поток вызвал [method lock] или [method try_lock] "
"несколько раз, уже владея мьютексом, он также должен вызвать [method unlock] "
"столько же раз, чтобы правильно разблокировать его.\n"
"[b]Предупреждение:[/b] Вызов [method unlock] больше раз, чем [method lock] в "
"данном потоке, в результате чего происходит попытка разблокировать "
"незаблокированный мьютекс, является неправильным и может привести к сбоям или "
"взаимоблокировкам."

msgid "A server interface for OS native menus."
msgstr "Серверный интерфейс для собственных меню ОС."

msgid ""
"[NativeMenu] handles low-level access to the OS native global menu bar and "
"popup menus.\n"
"[b]Note:[/b] This is low-level API, consider using [MenuBar] with [member "
"MenuBar.prefer_global_menu] set to [code]true[/code], and [PopupMenu] with "
"[member PopupMenu.prefer_native_menu] set to [code]true[/code].\n"
"To create a menu, use [method create_menu], add menu items using "
"[code]add_*_item[/code] methods. To remove a menu, use [method free_menu].\n"
"[codeblock]\n"
"var menu\n"
"\n"
"func _menu_callback(item_id):\n"
"\tif item_id == \"ITEM_CUT\":\n"
"\t\tcut()\n"
"\telif item_id == \"ITEM_COPY\":\n"
"\t\tcopy()\n"
"\telif item_id == \"ITEM_PASTE\":\n"
"\t\tpaste()\n"
"\n"
"func _enter_tree():\n"
"\t# Create new menu and add items:\n"
"\tmenu = NativeMenu.create_menu()\n"
"\tNativeMenu.add_item(menu, \"Cut\", _menu_callback, Callable(), "
"\"ITEM_CUT\")\n"
"\tNativeMenu.add_item(menu, \"Copy\", _menu_callback, Callable(), "
"\"ITEM_COPY\")\n"
"\tNativeMenu.add_separator(menu)\n"
"\tNativeMenu.add_item(menu, \"Paste\", _menu_callback, Callable(), "
"\"ITEM_PASTE\")\n"
"\n"
"func _on_button_pressed():\n"
"\t# Show popup menu at mouse position:\n"
"\tNativeMenu.popup(menu, DisplayServer.mouse_get_position())\n"
"\n"
"func _exit_tree():\n"
"\t# Remove menu when it's no longer needed:\n"
"\tNativeMenu.free_menu(menu)\n"
"[/codeblock]"
msgstr ""
"[NativeMenu] обрабатывает низкоуровневый доступ к собственной глобальной "
"строке меню ОС и всплывающим меню.\n"
"[b]Примечание:[/b] Это низкоуровневый API, рассмотрите возможность "
"использования [MenuBar] с [member MenuBar.prefer_global_menu], установленным "
"на [code]true[/code], и [PopupMenu] с [member PopupMenu.prefer_native_menu], "
"установленным на [code]true[/code].\n"
"Чтобы создать меню, используйте [method create_menu], добавьте пункты меню с "
"помощью методов [code]add_*_item[/code]. Чтобы удалить меню, используйте "
"[method free_menu].\n"
"[codeblock]\n"
"var menu\n"
"\n"
"func _menu_callback(item_id):\n"
"\tif item_id == \"ITEM_CUT\":\n"
"\t\tcut()\n"
"\telif item_id == \"ITEM_COPY\":\n"
"\t\tcopy()\n"
"\telif item_id == \"ITEM_PASTE\":\n"
"\t\tpaste()\n"
"\n"
"func _enter_tree():\n"
"\t# Создайте новое меню и добавьте пункты:\n"
"\tmenu = NativeMenu.create_menu()\n"
"\tNativeMenu.add_item(menu, \"Cut\", _menu_callback, Callable(), "
"\"ITEM_CUT\")\n"
"\tNativeMenu.add_item(menu, \"Copy\", _menu_callback, Callable(), "
"\"ITEM_COPY\")\n"
"\tNativeMenu.add_separator(menu)\n"
"\tNativeMenu.add_item(menu, \"Paste\", _menu_callback, Callable(), "
"\"ITEM_PASTE\")\n"
"\n"
"func _on_button_pressed():\n"
"\t# Показать всплывающее меню в позиции мыши:\n"
"\tNativeMenu.popup(menu, DisplayServer.mouse_get_position())\n"
"\n"
"func _exit_tree():\n"
"\t# Удалить меню, когда оно больше не нужно:\n"
"\tNativeMenu.free_menu(menu)\n"
"[/codeblock]"

msgid ""
"Adds a new checkable item with text [param label] to the global menu [param "
"rid].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows.\n"
"[b]Note:[/b] On Windows, [param accelerator] and [param key_callback] are "
"ignored."
msgstr ""
"Добавляет новый отмечаемый элемент с текстом [param label] в глобальное меню "
"[param rid].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно можно определить [param accelerator], который представляет "
"собой сочетание клавиш, которое можно нажать для вызова кнопки меню, даже "
"если оно в данный момент не открыто. [param accelerator] обычно представляет "
"собой комбинацию [enum KeyModifierMask] и [enum Key] с использованием "
"побитового ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/"
"kbd]).\n"
"[b]Примечание:[/b] Вызываемые [param callback] и [param key_callback] должны "
"принимать ровно один параметр Variant, параметр, переданный в вызываемые, "
"будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows.\n"
"[b]Примечание:[/b] В Windows [param accelerator] и [param key_callback] "
"игнорируются."

msgid ""
"Adds a new checkable item with text [param label] and icon [param icon] to "
"the global menu [param rid].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows.\n"
"[b]Note:[/b] On Windows, [param accelerator] and [param key_callback] are "
"ignored."
msgstr ""
"Добавляет новый отмечаемый элемент с текстом [param label] и значком [param "
"icon] в глобальное меню [param rid].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно можно определить [param accelerator], который представляет "
"собой сочетание клавиш, которое можно нажать для вызова кнопки меню, даже "
"если оно в данный момент не открыто. [param accelerator] обычно представляет "
"собой комбинацию [enum KeyModifierMask] и [enum Key] с использованием "
"побитового ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/"
"kbd]).\n"
"[b]Примечание:[/b] Вызываемые [param callback] и [param key_callback] должны "
"принимать ровно один параметр Variant, параметр, переданный в вызываемые, "
"будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows.\n"
"[b]Примечание:[/b] В Windows [param accelerator] и [param key_callback] "
"игнорируются."

msgid ""
"Adds a new item with text [param label] and icon [param icon] to the global "
"menu [param rid].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows.\n"
"[b]Note:[/b] On Windows, [param accelerator] and [param key_callback] are "
"ignored."
msgstr ""
"Добавляет новый элемент с текстом [param label] и значком [param icon] в "
"глобальное меню [param rid].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно можно определить [param accelerator], который представляет "
"собой сочетание клавиш, которое можно нажать для вызова кнопки меню, даже "
"если оно в данный момент не открыто. [param accelerator] обычно представляет "
"собой комбинацию [enum KeyModifierMask] и [enum Key] с использованием "
"побитового ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/"
"kbd]).\n"
"[b]Примечание:[/b] Вызываемые [param callback] и [param key_callback] должны "
"принимать ровно один параметр Variant, параметр, переданный в вызываемые, "
"будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows.\n"
"[b]Примечание:[/b] В Windows [param accelerator] и [param key_callback] "
"игнорируются."

msgid ""
"Adds a new radio-checkable item with text [param label] and icon [param icon] "
"to the global menu [param rid].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] Radio-checkable items just display a checkmark, but don't have "
"any built-in checking behavior and must be checked/unchecked manually. See "
"[method set_item_checked] for more info on how to control it.\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows.\n"
"[b]Note:[/b] On Windows, [param accelerator] and [param key_callback] are "
"ignored."
msgstr ""
"Добавляет новый элемент с возможностью радио-отметки с текстом [param label] "
"и значком [param icon] в глобальное меню [param rid].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно можно определить [param accelerator], который представляет "
"собой сочетание клавиш, которое можно нажать для вызова кнопки меню, даже "
"если оно в данный момент не открыто. [param accelerator] обычно представляет "
"собой комбинацию [enum KeyModifierMask] и [enum Key] с использованием "
"побитового ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/"
"kbd]).\n"
"[b]Примечание:[/b] Элементы с возможностью радио-отметки просто отображают "
"галочку, но не имеют встроенного поведения проверки и должны быть отмечены/"
"сняты вручную. См. [method set_item_checked] для получения дополнительной "
"информации о том, как управлять этим.\n"
"[b]Примечание:[/b] Вызываемые объекты [param callback] и [param key_callback] "
"должны принимать ровно один параметр Variant, параметр, переданный в "
"вызываемые объекты, будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows.\n"
"[b]Примечание:[/b] В Windows [param accelerator] и [param key_callback] "
"игнорируются."

msgid ""
"Adds a new item with text [param label] to the global menu [param rid].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows.\n"
"[b]Note:[/b] On Windows, [param accelerator] and [param key_callback] are "
"ignored."
msgstr ""
"Добавляет новый элемент с текстом [param label] в глобальное меню [param "
"rid].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно можно определить [param accelerator], который представляет "
"собой сочетание клавиш, которое можно нажать для вызова кнопки меню, даже "
"если оно в данный момент не открыто. [param accelerator] обычно представляет "
"собой комбинацию [enum KeyModifierMask] и [enum Key] с использованием "
"побитового ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/"
"kbd]).\n"
"[b]Примечание:[/b] Вызываемые [param callback] и [param key_callback] должны "
"принимать ровно один параметр Variant, параметр, переданный в вызываемые, "
"будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows.\n"
"[b]Примечание:[/b] В Windows [param accelerator] и [param key_callback] "
"игнорируются."

msgid ""
"Adds a new item with text [param label] to the global menu [param rid].\n"
"Contrarily to normal binary items, multistate items can have more than two "
"states, as defined by [param max_states]. Each press or activate of the item "
"will increase the state by one. The default value is defined by [param "
"default_state].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] By default, there's no indication of the current item state, it "
"should be changed manually.\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows.\n"
"[b]Note:[/b] On Windows, [param accelerator] and [param key_callback] are "
"ignored."
msgstr ""
"Добавляет новый элемент с текстом [param label] в глобальное меню [param "
"rid].\n"
"В отличие от обычных двоичных элементов, элементы с несколькими состояниями "
"могут иметь более двух состояний, как определено [param max_states]. Каждое "
"нажатие или активация элемента увеличит состояние на единицу. Значение по "
"умолчанию определяется [param default_state].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Необязательно может быть определен [param accelerator], представляющий собой "
"сочетание клавиш, которое можно нажать для вызова кнопки меню, даже если оно "
"в данный момент не открыто. [param accelerator] обычно представляет собой "
"комбинацию [enum KeyModifierMask] и [enum Key] с использованием побитового "
"ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Примечание:[/b] По умолчанию нет указания на текущее состояние элемента, "
"его следует изменить вручную.\n"
"[b]Примечание:[/b] Вызываемые объекты [param callback] и [param key_callback] "
"должны принимать ровно один параметр Variant, параметр, переданный в "
"вызываемые объекты, будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows.\n"
"[b]Примечание:[/b] В Windows [param accelerator] и [param key_callback] "
"игнорируются."

msgid ""
"Adds a new radio-checkable item with text [param label] to the global menu "
"[param rid].\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"An [param accelerator] can optionally be defined, which is a keyboard "
"shortcut that can be pressed to trigger the menu button even if it's not "
"currently open. The [param accelerator] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]).\n"
"[b]Note:[/b] Radio-checkable items just display a checkmark, but don't have "
"any built-in checking behavior and must be checked/unchecked manually. See "
"[method set_item_checked] for more info on how to control it.\n"
"[b]Note:[/b] The [param callback] and [param key_callback] Callables need to "
"accept exactly one Variant parameter, the parameter passed to the Callables "
"will be the value passed to [param tag].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows.\n"
"[b]Note:[/b] On Windows, [param accelerator] and [param key_callback] are "
"ignored."
msgstr ""
"Добавляет новый элемент с возможностью радио-отметки с текстом [param label] "
"в глобальное меню [param rid].\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"Дополнительно можно определить [param accelerator], который представляет "
"собой сочетание клавиш, которое можно нажать для вызова кнопки меню, даже "
"если оно в данный момент не открыто. [param accelerator] обычно представляет "
"собой комбинацию [enum KeyModifierMask] и [enum Key] с использованием "
"побитового ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/"
"kbd]).\n"
"[b]Примечание:[/b] Элементы с возможностью радио-отметки просто отображают "
"галочку, но не имеют встроенного поведения проверки и должны быть отмечены/"
"сняты вручную. См. [method set_item_checked] для получения дополнительной "
"информации о том, как управлять этим.\n"
"[b]Примечание:[/b] Вызываемые объекты [param callback] и [param key_callback] "
"должны принимать ровно один параметр Variant, параметр, переданный в "
"вызываемые объекты, будет значением, переданным в [param tag].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows.\n"
"[b]Примечание:[/b] В Windows [param accelerator] и [param key_callback] "
"игнорируются."

msgid ""
"Adds a separator between items to the global menu [param rid]. Separators "
"also occupy an index.\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Добавляет разделитель между элементами в глобальное меню [param rid]. "
"Разделители также занимают индекс.\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Adds an item that will act as a submenu of the global menu [param rid]. The "
"[param submenu_rid] argument is the RID of the global menu that will be shown "
"when the item is clicked.\n"
"Returns index of the inserted item, it's not guaranteed to be the same as "
"[param index] value.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Добавляет элемент, который будет действовать как подменю глобального меню "
"[param rid]. Аргумент [param submenu_rid] — это RID глобального меню, которое "
"будет показано при щелчке по элементу.\n"
"Возвращает индекс вставленного элемента, он не обязательно будет таким же, "
"как значение [param index].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Removes all items from the global menu [param rid].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Удаляет все элементы из глобального меню [param rid].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Creates a new global menu object.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Создает новый глобальный объект меню.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns the index of the item with the submenu specified by [param "
"submenu_rid]. Indices are automatically assigned to each item by the engine, "
"and cannot be set manually.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает индекс элемента с подменю, указанным [param submenu_rid]. Индексы "
"автоматически назначаются каждому элементу движком и не могут быть "
"установлены вручную.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns the index of the item with the specified [param tag]. Indices are "
"automatically assigned to each item by the engine, and cannot be set "
"manually.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает индекс элемента с указанным [param tag]. Индексы автоматически "
"назначаются каждому элементу движком и не могут быть установлены вручную.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns the index of the item with the specified [param text]. Indices are "
"automatically assigned to each item by the engine, and cannot be set "
"manually.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает индекс элемента с указанным [param text]. Индексы автоматически "
"назначаются каждому элементу движком и не могут быть установлены вручную.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Frees a global menu object created by this [NativeMenu].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Освобождает глобальный объект меню, созданный этим [NativeMenu].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns the callback of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает обратный вызов элемента с индексом [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns number of items in the global menu [param rid].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает количество пунктов в глобальном меню [param rid].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns the icon of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает значок элемента по индексу [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns number of states of a multistate item. See [method "
"add_multistate_item] for details.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает количество состояний элемента с несколькими состояниями. "
"Подробности см. в [method add_multistate_item].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns the state of a multistate item. See [method add_multistate_item] for "
"details.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает состояние элемента с несколькими состояниями. Подробности см. в "
"[method add_multistate_item].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns the submenu ID of the item at index [param idx]. See [method "
"add_submenu_item] for more info on how to add a submenu.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает идентификатор подменю элемента с индексом [param idx]. Подробнее о "
"том, как добавить подменю, см. в [method add_submenu_item].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns the metadata of the specified item, which might be of any type. You "
"can set it with [method set_item_tag], which provides a simple way of "
"assigning context data to items.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает метаданные указанного элемента, которые могут быть любого типа. Вы "
"можете задать их с помощью [method set_item_tag], который обеспечивает "
"простой способ назначения контекстных данных элементам.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns the text of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает текст элемента по индексу [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns global menu minimum width.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает минимальную ширину глобального меню.\n"
"[b]Примечание:[/b] Этот метод реализован только на macOS."

msgid ""
"Returns global menu close callback.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает глобальный обратный вызов закрытия меню.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns global menu open callback.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает глобальный обратный вызов открытия меню.\n"
"[b]Примечание:[/b] Этот метод реализован только на macOS."

msgid ""
"Returns global menu size.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает глобальный размер меню.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns RID of a special system menu.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает RID специального системного меню.\n"
"[b]Примечание:[/b] Этот метод реализован только на macOS."

msgid ""
"Returns readable name of a special system menu.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает читаемое имя специального системного меню.\n"
"[b]Примечание:[/b] Этот метод реализован только на macOS."

msgid ""
"Returns [code]true[/code] if the specified [param feature] is supported by "
"the current [NativeMenu], [code]false[/code] otherwise.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает [code]true[/code], если указанная [param feature] поддерживается "
"текущим [NativeMenu], [code]false[/code] в противном случае.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns [code]true[/code] if [param rid] is valid global menu.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает [code]true[/code], если [param rid] является допустимым глобальным "
"меню.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns [code]true[/code] if a special system menu is supported.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает [code]true[/code], если поддерживается специальное системное "
"меню.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is checkable in "
"some way, i.e. if it has a checkbox or radio button.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] можно "
"отметить каким-либо образом, например, если у него есть флажок или "
"переключатель.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is checked.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] можно "
"отметить каким-либо образом, например, если у него есть флажок или "
"переключатель.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is disabled. When "
"it is disabled it can't be selected, or its action invoked.\n"
"See [method set_item_disabled] for more info on how to disable an item.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] отключен. "
"Когда он отключен, его нельзя выбрать или вызвать его действие.\n"
"См. [method set_item_disabled] для получения дополнительной информации о том, "
"как отключить элемент.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is hidden.\n"
"See [method set_item_hidden] for more info on how to hide an item.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] скрыт.\n"
"См. [method set_item_hidden] для получения дополнительной информации о том, "
"как скрыть элемент.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] has radio button-"
"style checkability.\n"
"[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/"
"unchecking items in radio groups.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] имеет "
"возможность отмечать в стиле радиокнопки.\n"
"[b]Примечание:[/b] Это чисто косметическое действие; необходимо добавить "
"логику для отметки/снятия отметки элементов в группах радиокнопок.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Returns [code]true[/code] if the menu is currently opened.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возвращает [code]true[/code], если меню в данный момент открыто.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid ""
"Return [code]true[/code] is global menu is a special system menu.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Возврат [code]true[/code] — глобальное меню — это специальное системное "
"меню.\n"
"[b]Примечание:[/b] Этот метод реализован только на macOS."

msgid ""
"Shows the global menu at [param position] in the screen coordinates.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Показывает глобальное меню в [param position] в экранных координатах.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Removes the item at index [param idx] from the global menu [param rid].\n"
"[b]Note:[/b] The indices of items after the removed item will be shifted by "
"one.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Удаляет элемент с индексом [param idx] из глобального меню [param rid].\n"
"[b]Примечание:[/b] Индексы элементов после удаленного элемента будут смещены "
"на единицу.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the menu text layout direction from right-to-left if [param is_rtl] is "
"[code]true[/code].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает направление макета текста меню справа налево, если [param "
"is_rtl] равен [code]true[/code].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the callback of the item at index [param idx]. Callback is emitted when "
"an item is pressed.\n"
"[b]Note:[/b] The [param callback] Callable needs to accept exactly one "
"Variant parameter, the parameter passed to the Callable will be the value "
"passed to the [code]tag[/code] parameter when the menu item was created.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает обратный вызов элемента с индексом [param idx]. Обратный вызов "
"отправляется при нажатии элемента.\n"
"[b]Примечание:[/b] Вызываемый [param callback] должен принимать ровно один "
"параметр Variant, параметр, переданный в вызываемый, будет значением, "
"переданным параметру [code]tag[/code] при создании элемента меню.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets whether the item at index [param idx] has a checkbox. If [code]false[/"
"code], sets the type of the item to plain text.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает, есть ли у элемента с индексом [param idx] флажок. Если "
"[code]false[/code], задает тип элемента как обычный текст.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the checkstate status of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает статус checkstate (контрольное состояние) элемента по индексу "
"[param idx].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Enables/disables the item at index [param idx]. When it is disabled, it can't "
"be selected and its action can't be invoked.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Включает/отключает элемент с индексом [param idx]. Когда он отключен, его "
"нельзя выбрать и его действие нельзя вызвать.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Replaces the [Texture2D] icon of the specified [param idx].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows.\n"
"[b]Note:[/b] This method is not supported by macOS Dock menu items."
msgstr ""
"Заменяет значок [Texture2D] указанного [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows.\n"
"[b]Примечание:[/b] Этот метод не поддерживается элементами меню Dock macOS."

msgid ""
"Sets number of state of a multistate item. See [method add_multistate_item] "
"for details.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает номер состояния элемента с несколькими состояниями. Подробности "
"см. в [method add_multistate_item].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the type of the item at the specified index [param idx] to radio button. "
"If [code]false[/code], sets the type of the item to plain text.\n"
"[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/"
"unchecking items in radio groups.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает тип элемента с указанным индексом [param idx] на радиокнопку. "
"Если [code]false[/code], устанавливает тип элемента на обычный текст.\n"
"[b]Примечание:[/b] Это чисто косметическое действие; необходимо добавить "
"логику для установки/снятия отметок элементов в группах радиокнопок.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the state of a multistate item. See [method add_multistate_item] for "
"details.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает состояние элемента с несколькими состояниями. Подробности см. в "
"[method add_multistate_item].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the submenu RID of the item at index [param idx]. The submenu is a "
"global menu that would be shown when the item is clicked.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает RID подменю элемента с индексом [param idx]. Подменю — это "
"глобальное меню, которое будет показано при щелчке по элементу.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the metadata of an item, which may be of any type. You can later get it "
"with [method get_item_tag], which provides a simple way of assigning context "
"data to items.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает метаданные элемента, которые могут быть любого типа. Позже вы "
"можете получить их с помощью [method get_item_tag], который предоставляет "
"простой способ назначения контекстных данных элементам.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the text of the item at index [param idx].\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Устанавливает текст элемента по индексу [param idx].\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Sets the minimum width of the global menu.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Устанавливает минимальную ширину глобального меню.\n"
"[b]Примечание:[/b] Этот метод реализован только на macOS."

msgid ""
"Registers callable to emit when the menu is about to show.\n"
"[b]Note:[/b] The OS can simulate menu opening to track menu item changes and "
"global shortcuts, in which case the corresponding close callback is not "
"triggered. Use [method is_opened] to check if the menu is currently opened.\n"
"[b]Note:[/b] This method is implemented on macOS and Windows."
msgstr ""
"Регистрирует callable, которые можно вызывать, когда меню вот-вот "
"отобразится.\n"
"[b]Примечание:[/b] ОС может имитировать открытие меню для отслеживания "
"изменений пунктов меню и глобальных сочетаний клавиш, в этом случае "
"соответствующий обратный вызов закрытия не запускается. Используйте [method "
"is_opened], чтобы проверить, открыто ли меню в данный момент.\n"
"[b]Примечание:[/b] Этот метод реализован в macOS и Windows."

msgid ""
"Registers callable to emit after the menu is closed.\n"
"[b]Note:[/b] This method is implemented only on macOS."
msgstr ""
"Регистры, которые можно вызвать для испускания после закрытия меню.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS."

msgid "[NativeMenu] supports native global main menu."
msgstr "[NativeMenu] поддерживает собственное глобальное главное меню."

msgid "[NativeMenu] supports native popup menus."
msgstr "[NativeMenu] поддерживает собственные всплывающие меню."

msgid "[NativeMenu] supports menu open and close callbacks."
msgstr "[NativeMenu] поддерживает обратные вызовы открытия и закрытия меню."

msgid "[NativeMenu] supports menu item hover callback."
msgstr "[NativeMenu] поддерживает обратный вызов при наведении на пункт меню."

msgid "[NativeMenu] supports menu item accelerator/key callback."
msgstr ""
"[NativeMenu] поддерживает обратный вызов ускорителя/клавиши пункта меню."

msgid "Invalid special system menu ID."
msgstr "Неверный идентификатор специального системного меню."

msgid "Global main menu ID."
msgstr "Глобальный идентификатор главного меню."

msgid "Application (first menu after \"Apple\" menu on macOS) menu ID."
msgstr "Идентификатор меню приложения (первое меню после меню «Apple» в macOS)."

msgid ""
"\"Window\" menu ID (on macOS this menu includes standard window control items "
"and a list of open windows)."
msgstr ""
"Идентификатор меню «Window» (в macOS это меню включает стандартные элементы "
"управления окнами и список открытых окон)."

msgid "\"Help\" menu ID (on macOS this menu includes help search bar)."
msgstr ""
"Идентификатор меню «Справка» (в macOS это меню включает панель поиска "
"справки)."

msgid ""
"Dock icon right-click menu ID (on macOS this menu include standard "
"application control items and a list of open windows)."
msgstr ""
"Идентификатор контекстного меню значка Dock (в macOS это меню включает "
"стандартные элементы управления приложениями и список открытых окон)."

msgid "A 2D agent used to pathfind to a position while avoiding obstacles."
msgstr ""
"2D-агент, используемый для поиска пути к нужной позиции с обходом препятствий."

msgid ""
"A 2D agent used to pathfind to a position while avoiding static and dynamic "
"obstacles. The calculation can be used by the parent node to dynamically move "
"it along the path. Requires navigation data to work correctly.\n"
"Dynamic obstacles are avoided using RVO collision avoidance. Avoidance is "
"computed before physics, so the pathfinding information can be used safely in "
"the physics step.\n"
"[b]Note:[/b] After setting the [member target_position] property, the [method "
"get_next_path_position] method must be used once every physics frame to "
"update the internal path logic of the navigation agent. The vector position "
"it returns should be used as the next movement position for the agent's "
"parent node.\n"
"[b]Note:[/b] Several methods of this class, such as [method "
"get_next_path_position], can trigger a new path calculation. Calling these in "
"your callback to an agent's signal, such as [signal waypoint_reached], can "
"cause infinite recursion. It is recommended to call these methods in the "
"physics step or, alternatively, delay their call until the end of the frame "
"(see [method Object.call_deferred] or [constant Object.CONNECT_DEFERRED])."
msgstr ""
"2D агент, используемый для поиска пути к заданной позиции с избеганием "
"статических и динамических препятствий. Этот расчёт может использоваться "
"родительским узлом для динамического перемещения по пути. Для корректной "
"работы требуются навигационные данные.\n"
"Динамические препятствия обходят с помощью функции предотвращения "
"столкновений RVO. Избегание вычисляется до физических условий, поэтому "
"информацию о поиске пути можно безопасно использовать на этапе физических "
"условий.\n"
"[b]Примечание:[/b] После установки свойства [member target_position] метод "
"[method get_next_path_position] необходимо использовать один раз в каждом "
"кадре физической модели для обновления внутренней логики пути навигационного "
"агента. Возвращаемая им позиция вектора должна использоваться в качестве "
"следующей позиции движения для родительского узла агента.\n"
"[b]Примечание:[/b] Некоторые методы этого класса, такие как [method "
"get_next_path_position], могут инициировать новый расчёт пути. Вызов этих "
"методов в обратном вызове сигнала агента, например [signal waypoint_reached], "
"может привести к бесконечной рекурсии. Рекомендуется вызывать эти методы на "
"этапе физики или, в качестве альтернативы, откладывать их вызов до конца "
"кадра (см. [method Object.call_deferred] или [constant "
"Object.CONNECT_DEFERRED])."

msgid "Using NavigationAgents"
msgstr "Использование NavigationAgents"

msgid ""
"Returns the distance to the target position, using the agent's global "
"position. The user must set [member target_position] in order for this to be "
"accurate."
msgstr ""
"Возвращает расстояние до целевой позиции, используя глобальную позицию "
"агента. Пользователь должен установить [member target_position], чтобы это "
"было точным."

msgid ""
"Returns whether or not the specified layer of the [member avoidance_layers] "
"bitmask is enabled, given a [param layer_number] between 1 and 32."
msgstr ""
"Возвращает, включен ли указанный слой битовой маски [member "
"Avoidance_layers], учитывая [param layer_number] от 1 до 32."

msgid ""
"Returns whether or not the specified mask of the [member avoidance_mask] "
"bitmask is enabled, given a [param mask_number] between 1 and 32."
msgstr ""
"Возвращает, включена ли указанная маска битовой маски [member "
"Avoidance_mask], если задан [param mask_number] от 1 до 32."

msgid ""
"Returns this agent's current path from start to finish in global coordinates. "
"The path only updates when the target position is changed or the agent "
"requires a repath. The path array is not intended to be used in direct path "
"movement as the agent has its own internal path logic that would get "
"corrupted by changing the path array manually. Use the intended [method "
"get_next_path_position] once every physics frame to receive the next path "
"point for the agents movement as this function also updates the internal path "
"logic."
msgstr ""
"Возвращает текущий путь этого агента от начала до конца в глобальных "
"координатах. Путь обновляется только при изменении целевой позиции или при "
"необходимости повторного пути агента. Массив путей не предназначен для "
"использования при прямом движении по пути, так как у агента есть собственная "
"внутренняя логика пути, которая будет изменена при изменении массива путей "
"вручную. Используйте предполагаемый [method get_next_path_position] один раз "
"в каждом физическом кадре, чтобы получить следующую точку пути для движения "
"агентов, так как эта функция также обновляет внутреннюю логику пути."

msgid ""
"Returns which index the agent is currently on in the navigation path's "
"[PackedVector2Array]."
msgstr ""
"Возвращает индекс, по которому в данный момент находится агент в массиве "
"[PackedVector2Array] пути навигации."

msgid ""
"Returns the path query result for the path the agent is currently following."
msgstr ""
"Возвращает результат запроса пути, по которому в данный момент следует агент."

msgid ""
"Returns the reachable final position of the current navigation path in global "
"coordinates. This position can change if the agent needs to update the "
"navigation path which makes the agent emit the [signal path_changed] signal."
msgstr ""
"Возвращает достижимую конечную позицию текущего навигационного пути в "
"глобальных координатах. Эта позиция может измениться, если агенту необходимо "
"обновить навигационный путь, что заставляет агента испускать сигнал [signal "
"path_changed]."

msgid ""
"Returns whether or not the specified layer of the [member navigation_layers] "
"bitmask is enabled, given a [param layer_number] between 1 and 32."
msgstr ""
"Возвращает, включен ли указанный слой битовой маски [member "
"navigation_layers], учитывая [param layer_number] от 1 до 32."

msgid ""
"Returns the [RID] of the navigation map for this NavigationAgent node. This "
"function returns always the map set on the NavigationAgent node and not the "
"map of the abstract agent on the NavigationServer. If the agent map is "
"changed directly with the NavigationServer API the NavigationAgent node will "
"not be aware of the map change. Use [method set_navigation_map] to change the "
"navigation map for the NavigationAgent and also update the agent on the "
"NavigationServer."
msgstr ""
"Возвращает [RID] навигационной карты для этого узла NavigationAgent. Эта "
"функция всегда возвращает набор карт на узле NavigationAgent, а не карту "
"абстрактного агента на NavigationServer. Если карта агента изменяется "
"напрямую с помощью API NavigationServer, узел NavigationAgent не будет знать "
"об изменении карты. Используйте [method set_navigation_map] для изменения "
"навигационной карты для NavigationAgent, а также для обновления агента на "
"NavigationServer."

msgid ""
"Returns the next position in global coordinates that can be moved to, making "
"sure that there are no static objects in the way. If the agent does not have "
"a navigation path, it will return the position of the agent's parent. The use "
"of this function once every physics frame is required to update the internal "
"path logic of the NavigationAgent."
msgstr ""
"Возвращает следующую позицию в глобальных координатах, в которую можно "
"переместиться, убедившись, что на пути нет статических объектов. Если у "
"агента нет пути навигации, он вернет позицию родителя агента. Использование "
"этой функции один раз в каждом кадре физики требуется для обновления "
"внутренней логики пути NavigationAgent."

msgid ""
"Returns the length of the currently calculated path. The returned value is "
"[code]0.0[/code], if the path is still calculating or no calculation has been "
"requested yet."
msgstr ""
"Возвращает длину текущего вычисленного пути. Возвращаемое значение — "
"[code]0.0[/code], если путь всё ещё вычисляется или вычисление ещё не было "
"запрошено."

msgid "Returns the [RID] of this agent on the [NavigationServer2D]."
msgstr "Возвращает [RID] этого агента на [NavigationServer2D]."

msgid ""
"Returns [code]true[/code] if the agent's navigation has finished. If the "
"target is reachable, navigation ends when the target is reached. If the "
"target is unreachable, navigation ends when the last waypoint of the path is "
"reached.\n"
"[b]Note:[/b] While [code]true[/code] prefer to stop calling update functions "
"like [method get_next_path_position]. This avoids jittering the standing "
"agent due to calling repeated path updates."
msgstr ""
"Возвращает [code]true[/code], если навигация агента завершена. Если цель "
"достижима, навигация завершается, когда цель достигнута. Если цель "
"недостижима, навигация завершается, когда достигнута последняя точка маршрута "
"пути.\n"
"[b]Примечание:[/b] В то время как [code]true[/code] будет прекращать вызывать "
"функции обновления, такие как [method get_next_path_position]. Это позволяет "
"избежать дрожания стоящего агента из-за вызова повторяющихся обновлений пути."

msgid ""
"Returns [code]true[/code] if [method get_final_position] is within [member "
"target_desired_distance] of the [member target_position]."
msgstr ""
"Возвращает [code]true[/code] , если [method get_final_position] находится в "
"пределах [member target_desired_distance] от [member target_position]."

msgid ""
"Returns [code]true[/code] if the agent reached the target, i.e. the agent "
"moved within [member target_desired_distance] of the [member "
"target_position]. It may not always be possible to reach the target but it "
"should always be possible to reach the final position. See [method "
"get_final_position]."
msgstr ""
"Возвращает [code]true[/code], если агент достиг цели, т. е. агент "
"переместился в пределах [member target_desired_distance] от [member "
"target_position]. Не всегда возможно достичь цели, но всегда должно быть "
"возможно достичь конечной позиции. См. [method get_final_position]."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member avoidance_layers] bitmask, given a [param layer_number] between 1 and "
"32."
msgstr ""
"На основе [param value] включает или отключает указанный слой в битовой маске "
"[member avoidance_layers], учитывая [param layer_number] от 1 до 32."

msgid ""
"Based on [param value], enables or disables the specified mask in the [member "
"avoidance_mask] bitmask, given a [param mask_number] between 1 and 32."
msgstr ""
"На основе [param value] включает или отключает указанную маску в битовой "
"маске [member avoidance_mask], учитывая [param mask_number] от 1 до 32."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member navigation_layers] bitmask, given a [param layer_number] between 1 "
"and 32."
msgstr ""
"На основе [param value] включает или отключает указанный слой в битовой маске "
"[member navigation_layers], учитывая [param layer_number] от 1 до 32."

msgid ""
"Sets the [RID] of the navigation map this NavigationAgent node should use and "
"also updates the [code]agent[/code] on the NavigationServer."
msgstr ""
"Устанавливает [RID] навигационной карты, которую должен использовать этот "
"узел NavigationAgent, а также обновляет [code]agent[/code] на "
"NavigationServer."

msgid ""
"Replaces the internal velocity in the collision avoidance simulation with "
"[param velocity]. When an agent is teleported to a new position this function "
"should be used in the same frame. If called frequently this function can get "
"agents stuck."
msgstr ""
"Заменяет внутреннюю скорость в моделировании избегания столкновений на [param "
"velocity]. Когда агент телепортируется в новое положение, эта функция должна "
"использоваться в том же кадре. При частом вызове эта функция может привести к "
"застреванию агентов."

msgid ""
"If [code]true[/code] the agent is registered for an RVO avoidance callback on "
"the [NavigationServer2D]. When [member velocity] is used and the processing "
"is completed a [code]safe_velocity[/code] Vector2 is received with a signal "
"connection to [signal velocity_computed]. Avoidance processing with many "
"registered agents has a significant performance cost and should only be "
"enabled on agents that currently require it."
msgstr ""
"Если [code]true[/code], агент регистрируется для обратного вызова избегания "
"RVO на [NavigationServer2D]. Когда используется [member velocity] и обработка "
"завершена, [code]safe_velocity[/code] Vector2 принимается с сигнальным "
"соединением с [signal velocity_computed]. Обработка избегания со многими "
"зарегистрированными агентами имеет значительные затраты производительности и "
"должна быть включена только для агентов, которым это требуется в данный "
"момент."

msgid ""
"A bitfield determining the avoidance layers for this NavigationAgent. Other "
"agents with a matching bit on the [member avoidance_mask] will avoid this "
"agent."
msgstr ""
"Битовое поле, определяющее слои избегания для этого NavigationAgent. Другие "
"агенты с соответствующим битом в [member Avoidance_mask] будут избегать этого "
"агента."

msgid ""
"A bitfield determining what other avoidance agents and obstacles this "
"NavigationAgent will avoid when a bit matches at least one of their [member "
"avoidance_layers]."
msgstr ""
"Битовое поле, определяющее, какие еще агенты избегания и препятствия этот "
"NavigationAgent будет избегать, если бит соответствует хотя бы одному из их "
"[member Avoidance_layers]."

msgid ""
"The agent does not adjust the velocity for other agents that would match the "
"[member avoidance_mask] but have a lower [member avoidance_priority]. This in "
"turn makes the other agents with lower priority adjust their velocities even "
"more to avoid collision with this agent."
msgstr ""
"Агент не корректирует скорость для других агентов, которые соответствуют "
"[member avoidance_mask], но имеют более низкий [member avoidance_priority]. "
"Это, в свою очередь, заставляет других агентов с более низким приоритетом "
"корректировать свои скорости еще больше, чтобы избежать столкновения с этим "
"агентом."

msgid "If [code]true[/code] shows debug visuals for this agent."
msgstr ""
"Если [code]true[/code], отображаются визуальные отладочные данные для этого "
"агента."

msgid ""
"If [member debug_use_custom] is [code]true[/code] uses this color for this "
"agent instead of global color."
msgstr ""
"Если [member debug_use_custom] равен [code]true[/code], то этот цвет "
"используется для этого агента вместо глобального цвета."

msgid ""
"If [member debug_use_custom] is [code]true[/code] uses this line width for "
"rendering paths for this agent instead of global line width."
msgstr ""
"Если [member debug_use_custom] равен [code]true[/code], то эта ширина линии "
"используется для отрисовки путей для этого агента вместо глобальной ширины "
"линии."

msgid ""
"If [member debug_use_custom] is [code]true[/code] uses this rasterized point "
"size for rendering path points for this agent instead of global point size."
msgstr ""
"Если [member debug_use_custom] равен [code]true[/code], то для рендеринга "
"точек пути этого агента, вместо глобального размера точки, используется этот "
"растеризованный размер точки."

msgid ""
"If [code]true[/code] uses the defined [member debug_path_custom_color] for "
"this agent instead of global color."
msgstr ""
"Если [code]true[/code], то вместо глобального цвета используется определенный "
"[member debug_path_custom_color] для этого агента."

msgid "The maximum number of neighbors for the agent to consider."
msgstr "Максимальное количество соседей, которых может учитывать агент."

msgid "The maximum speed that an agent can move."
msgstr "Максимальная скорость, с которой может двигаться агент."

msgid ""
"A bitfield determining which navigation layers of navigation regions this "
"agent will use to calculate a path. Changing it during runtime will clear the "
"current navigation path and generate a new one, according to the new "
"navigation layers."
msgstr ""
"Битовое поле, определяющее, какие навигационные слои навигационных регионов "
"этот агент будет использовать для расчета пути. Изменение его во время "
"выполнения очистит текущий навигационный путь и сгенерирует новый, в "
"соответствии с новыми навигационными слоями."

msgid "The distance to search for other agents."
msgstr "Расстояние для поиска других агентов."

msgid ""
"The distance threshold before a path point is considered to be reached. This "
"allows agents to not have to hit a path point on the path exactly, but only "
"to reach its general area. If this value is set too high, the NavigationAgent "
"will skip points on the path, which can lead to it leaving the navigation "
"mesh. If this value is set too low, the NavigationAgent will be stuck in a "
"repath loop because it will constantly overshoot the distance to the next "
"point on each physics frame update."
msgstr ""
"Порог расстояния, по которому точка пути считается достигнутой. Это позволяет "
"агентам не попадать точно в точку пути на пути, а только достигать ее общей "
"области. Если это значение установлено слишком высоким, NavigationAgent будет "
"пропускать точки на пути, что может привести к выходу из навигационной сетки. "
"Если это значение установлено слишком низким, NavigationAgent застрянет в "
"цикле повторного пути, поскольку он будет постоянно превышать расстояние до "
"следующей точки при каждом обновлении физического кадра."

msgid ""
"The maximum distance the agent is allowed away from the ideal path to the "
"final position. This can happen due to trying to avoid collisions. When the "
"maximum distance is exceeded, it recalculates the ideal path."
msgstr ""
"Максимальное расстояние, на которое агент может отойти от идеального пути до "
"конечной позиции. Это может произойти из-за попыток избежать столкновений. "
"При превышении максимального расстояния он пересчитывает идеальный путь."

msgid "Additional information to return with the navigation path."
msgstr "Дополнительная информация для возврата по пути навигации."

msgid ""
"The path postprocessing applied to the raw path corridor found by the [member "
"pathfinding_algorithm]."
msgstr ""
"Постобработка пути, примененная к необработанному коридору пути, найденному "
"[member pathfinding_algorithm]."

msgid ""
"The maximum allowed length of the returned path in world units. A path will "
"be clipped when going over this length."
msgstr ""
"Максимально допустимая длина возвращаемого пути в мировых единицах. При "
"превышении этой длины путь будет обрезан."

msgid ""
"The maximum allowed radius in world units that the returned path can be from "
"the path start. The path will be clipped when going over this radius. "
"Compared to [member path_return_max_length], this allows the agent to go that "
"much further, if they need to walk around a corner.\n"
"[b]Note:[/b] This will perform a sphere clip considering only the actual "
"navigation mesh path points with the first path position being the sphere's "
"center."
msgstr ""
"Максимально допустимый радиус возвращаемого пути от начала пути в мировых "
"единицах. При превышении этого радиуса путь будет обрезан. По сравнению с "
"[member path_return_max_length], это позволяет агенту пройти значительно "
"больше, если ему потребуется обойти угол.\n"
"[b]Примечание:[/b] При этом будет выполнено обрезание сферы с учётом только "
"фактических точек пути навигационной сетки, при этом первая точка пути будет "
"находиться в центре сферы."

msgid ""
"The maximum distance a searched polygon can be away from the start polygon "
"before the pathfinding cancels the search for a path to the (possibly "
"unreachable or very far away) target position polygon. In this case the "
"pathfinding resets and builds a path from the start polygon to the polygon "
"that was found closest to the target position so far. A value of [code]0[/"
"code] or below counts as unlimited. In case of unlimited the pathfinding will "
"search all polygons connected with the start polygon until either the target "
"position polygon is found or all available polygon search options are "
"exhausted."
msgstr ""
"Максимальное расстояние, на которое может отдалиться искомый полигон от "
"начального полигона, прежде чем поиск пути отменит поиск пути к целевому "
"полигону (возможно, недостижимому или очень удалённому). В этом случае поиск "
"пути сбрасывается и строит путь от начального полигона до полигона, который "
"был найден ближайшим к целевой позиции. Значение [code]0[/code] или ниже "
"считается неограниченным. В случае неограниченного значения поиск пути будет "
"искать все полигоны, соединённые с начальным полигоном, пока не будет найден "
"целевой полигон или пока не будут исчерпаны все доступные варианты поиска "
"полигонов."

msgid ""
"The maximum number of polygons that are searched before the pathfinding "
"cancels the search for a path to the (possibly unreachable or very far away) "
"target position polygon. In this case the pathfinding resets and builds a "
"path from the start polygon to the polygon that was found closest to the "
"target position so far. A value of [code]0[/code] or below counts as "
"unlimited. In case of unlimited the pathfinding will search all polygons "
"connected with the start polygon until either the target position polygon is "
"found or all available polygon search options are exhausted."
msgstr ""
"Максимальное количество полигонов, которые будут просмотрены до того, как "
"поиск пути отменит поиск пути к целевому полигону (возможно, недостижимому "
"или очень удалённому). В этом случае поиск пути сбрасывается и строит путь от "
"начального полигона до полигона, который был найден ближайшим к целевой "
"позиции. Значение [code]0[/code] или меньше считается неограниченным. В "
"случае неограниченного поиска пути поиск пути будет искать все полигоны, "
"соединённые с начальным полигоном, пока не будет найден целевой полигон или "
"пока не будут исчерпаны все доступные варианты поиска полигонов."

msgid "The pathfinding algorithm used in the path query."
msgstr "Алгоритм поиска пути, используемый в запросе пути."

msgid ""
"The radius of the avoidance agent. This is the \"body\" of the avoidance "
"agent and not the avoidance maneuver starting radius (which is controlled by "
"[member neighbor_distance]).\n"
"Does not affect normal pathfinding. To change an actor's pathfinding radius "
"bake [NavigationPolygon] resources with a different [member "
"NavigationPolygon.agent_radius] property and use different navigation maps "
"for each actor size."
msgstr ""
"Радиус агента избегания. Это «тело» агента избегания, а не начальный радиус "
"маневра избегания (который контролируется [member neighbor_distance]).\n"
"Не влияет на обычный поиск пути. Чтобы изменить радиус поиска пути актера, "
"запеките ресурсы [NavigationPolygon] с другим свойством [member "
"NavigationPolygon.agent_radius] и используйте разные навигационные карты для "
"каждого размера актера."

msgid "The path simplification amount in worlds units."
msgstr "Величина упрощения пути в мировых единицах."

msgid ""
"If [code]true[/code] a simplified version of the path will be returned with "
"less critical path points removed. The simplification amount is controlled by "
"[member simplify_epsilon]. The simplification uses a variant of Ramer-Douglas-"
"Peucker algorithm for curve point decimation.\n"
"Path simplification can be helpful to mitigate various path following issues "
"that can arise with certain agent types and script behaviors. E.g. "
"\"steering\" agents or avoidance in \"open fields\"."
msgstr ""
"Если [code]true[/code], будет возвращена упрощенная версия пути с удаленными "
"менее критическими точками пути. Степень упрощения контролируется [member "
"simplify_epsilon]. Упрощение использует вариант алгоритма Ramer-Douglas-"
"Peucker для прореживания точек кривой.\n"
"Упрощение пути может быть полезно для смягчения различных проблем следования "
"по пути, которые могут возникнуть с определенными типами агентов и поведением "
"сценария. Например, «рулевое управление» или избегание в «открытых полях»."

msgid ""
"The distance threshold before the target is considered to be reached. On "
"reaching the target, [signal target_reached] is emitted and navigation ends "
"(see [method is_navigation_finished] and [signal navigation_finished]).\n"
"You can make navigation end early by setting this property to a value greater "
"than [member path_desired_distance] (navigation will end before reaching the "
"last waypoint).\n"
"You can also make navigation end closer to the target than each individual "
"path position by setting this property to a value lower than [member "
"path_desired_distance] (navigation won't immediately end when reaching the "
"last waypoint). However, if the value set is too low, the agent will be stuck "
"in a repath loop because it will constantly overshoot the distance to the "
"target on each physics frame update."
msgstr ""
"Порог расстояния до цели считается достигнутым. При достижении цели выдается "
"[signal target_reached] и навигация завершается (см. [method "
"is_navigation_finished] и [signal navigation_finished]).\n"
"Вы можете сделать навигацию завершенной раньше, установив это свойство на "
"значение большее, чем [member path_desired_distance] (навигация завершится до "
"достижения последней точки маршрута).\n"
"Вы также можете сделать навигацию завершенной ближе к цели, чем каждая "
"индивидуальная позиция пути, установив это свойство на значение меньшее, чем "
"[member path_desired_distance] (навигация не завершится немедленно при "
"достижении последней точки маршрута). Однако, если заданное значение слишком "
"низкое, агент застрянет в цикле повторного пути, поскольку он будет постоянно "
"превышать расстояние до цели при каждом обновлении физического кадра."

msgid ""
"If set, a new navigation path from the current agent position to the [member "
"target_position] is requested from the NavigationServer."
msgstr ""
"Если установлено, то у NavigationServer запрашивается новый путь навигации от "
"текущей позиции агента до [member target_position]."

msgid ""
"The minimal amount of time for which this agent's velocities, that are "
"computed with the collision avoidance algorithm, are safe with respect to "
"other agents. The larger the number, the sooner the agent will respond to "
"other agents, but less freedom in choosing its velocities. A too high value "
"will slow down agents movement considerably. Must be positive."
msgstr ""
"Минимальное количество времени, в течение которого скорости этого агента, "
"вычисленные с помощью алгоритма избегания столкновений, безопасны по "
"отношению к другим агентам. Чем больше число, тем скорее агент отреагирует на "
"других агентов, но тем меньше свободы в выборе своих скоростей. Слишком "
"большое значение значительно замедлит движение агентов. Должно быть "
"положительным."

msgid ""
"The minimal amount of time for which this agent's velocities, that are "
"computed with the collision avoidance algorithm, are safe with respect to "
"static avoidance obstacles. The larger the number, the sooner the agent will "
"respond to static avoidance obstacles, but less freedom in choosing its "
"velocities. A too high value will slow down agents movement considerably. "
"Must be positive."
msgstr ""
"Минимальное количество времени, в течение которого скорости этого агента, "
"вычисленные с помощью алгоритма избегания столкновений, безопасны по "
"отношению к статическим препятствиям избегания. Чем больше число, тем скорее "
"агент отреагирует на статические препятствия избегания, но тем меньше свободы "
"в выборе своих скоростей. Слишком большое значение значительно замедлит "
"движение агентов. Должно быть положительным."

msgid ""
"Sets the new wanted velocity for the agent. The avoidance simulation will try "
"to fulfill this velocity if possible but will modify it to avoid collision "
"with other agents and obstacles. When an agent is teleported to a new "
"position, use [method set_velocity_forced] as well to reset the internal "
"simulation velocity."
msgstr ""
"Устанавливает новую желаемую скорость для агента. Симуляция избегания "
"попытается достичь этой скорости, если это возможно, но изменит ее, чтобы "
"избежать столкновения с другими агентами и препятствиями. Когда агент "
"телепортируется в новое положение, используйте также [method "
"set_velocity_forced] для сброса внутренней скорости симуляции."

msgid ""
"Signals that the agent reached a navigation link. Emitted when the agent "
"moves within [member path_desired_distance] of the next position of the path "
"when that position is a navigation link.\n"
"The details dictionary may contain the following keys depending on the value "
"of [member path_metadata_flags]:\n"
"- [code]position[/code]: The start position of the link that was reached.\n"
"- [code]type[/code]: Always [constant "
"NavigationPathQueryResult2D.PATH_SEGMENT_TYPE_LINK].\n"
"- [code]rid[/code]: The [RID] of the link.\n"
"- [code]owner[/code]: The object which manages the link (usually "
"[NavigationLink2D]).\n"
"- [code]link_entry_position[/code]: If [code]owner[/code] is available and "
"the owner is a [NavigationLink2D], it will contain the global position of the "
"link's point the agent is entering.\n"
"- [code]link_exit_position[/code]: If [code]owner[/code] is available and the "
"owner is a [NavigationLink2D], it will contain the global position of the "
"link's point which the agent is exiting."
msgstr ""
"Сигнализирует, что агент достиг навигационной ссылки (Link). Выдается, когда "
"агент перемещается в пределах [member path_desired_distance] от следующей "
"позиции пути, когда эта позиция является навигационной ссылкой.\n"
"Словарь сведений может содержать следующие ключи в зависимости от значения "
"[member path_metadata_flags]:\n"
"- [code]position[/code]: начальная позиция достигнутой ссылки.\n"
"- [code]type[/code]: всегда [constant "
"NavigationPathQueryResult2D.PATH_SEGMENT_TYPE_LINK].\n"
"- [code]rid[/code]: [RID] ссылки.\n"
"- [code]owner[/code]: объект, управляющий ссылкой (обычно "
"[NavigationLink2D]).\n"
"- [code]link_entry_position[/code]: Если доступен [code]owner[/code] и "
"владелец — [NavigationLink2D], он будет содержать глобальную позицию точки "
"ссылки, в которую входит агент.\n"
"- [code]link_exit_position[/code]: Если доступен [code]owner[/code] и "
"владелец — [NavigationLink2D], он будет содержать глобальную позицию точки "
"ссылки, из которой выходит агент."

msgid ""
"Signals that the agent's navigation has finished. If the target is reachable, "
"navigation ends when the target is reached. If the target is unreachable, "
"navigation ends when the last waypoint of the path is reached. This signal is "
"emitted only once per loaded path.\n"
"This signal will be emitted just after [signal target_reached] when the "
"target is reachable."
msgstr ""
"Сигнализирует о том, что навигация агента завершена. Если цель достижима, "
"навигация заканчивается, когда цель достигнута. Если цель недостижима, "
"навигация заканчивается, когда достигнута последняя точка маршрута. Этот "
"сигнал выдается только один раз на загруженный путь.\n"
"Этот сигнал будет выдан сразу после [signal target_reached], когда цель "
"достижима."

msgid ""
"Emitted when the agent had to update the loaded path:\n"
"- because path was previously empty.\n"
"- because navigation map has changed.\n"
"- because agent pushed further away from the current path segment than the "
"[member path_max_distance]."
msgstr ""
"Выдается, когда агенту необходимо обновить загруженный путь:\n"
"- потому что путь ранее был пуст.\n"
"- потому что карта навигации изменилась.\n"
"- потому что агент оттолкнулся от текущего сегмента пути дальше, чем [member "
"path_max_distance]."

msgid ""
"Signals that the agent reached the target, i.e. the agent moved within "
"[member target_desired_distance] of the [member target_position]. This signal "
"is emitted only once per loaded path.\n"
"This signal will be emitted just before [signal navigation_finished] when the "
"target is reachable.\n"
"It may not always be possible to reach the target but it should always be "
"possible to reach the final position. See [method get_final_position]."
msgstr ""
"Сигнализирует о том, что агент достиг цели, т. е. агент переместился в "
"пределах [member target_desired_distance] от [member target_position]. Этот "
"сигнал посылается только один раз на загруженный путь.\n"
"Этот сигнал будет посылаться непосредственно перед [signal "
"navigation_finished], когда цель достижима.\n"
"Не всегда возможно достичь цели, но всегда должно быть возможно достичь "
"конечной позиции. См. [method get_final_position]."

msgid ""
"Notifies when the collision avoidance velocity is calculated. Emitted every "
"update as long as [member avoidance_enabled] is [code]true[/code] and the "
"agent has a navigation map."
msgstr ""
"Уведомляет, когда вычисляется скорость избегания столкновений. Выпускается "
"каждое обновление, пока [member avoidance_enabled] имеет значение [code]true[/"
"code] и у агента есть навигационная карта."

msgid ""
"Signals that the agent reached a waypoint. Emitted when the agent moves "
"within [member path_desired_distance] of the next position of the path.\n"
"The details dictionary may contain the following keys depending on the value "
"of [member path_metadata_flags]:\n"
"- [code]position[/code]: The position of the waypoint that was reached.\n"
"- [code]type[/code]: The type of navigation primitive (region or link) that "
"contains this waypoint.\n"
"- [code]rid[/code]: The [RID] of the containing navigation primitive (region "
"or link).\n"
"- [code]owner[/code]: The object which manages the containing navigation "
"primitive (region or link)."
msgstr ""
"Сигнализирует о том, что агент достиг путевой точки. Выдается, когда агент "
"перемещается в пределах [member path_desired_distance] от следующей позиции "
"пути.\n"
"Словарь сведений может содержать следующие ключи в зависимости от значения "
"[member path_metadata_flags]:\n"
"- [code]position[/code]: позиция путевой точки, которая была достигнута.\n"
"- [code]type[/code]: тип навигационного примитива (регион или ссылка), "
"который содержит эту путевую точку.\n"
"- [code]rid[/code]: [RID] содержащего навигационного примитива (регион или "
"ссылка).\n"
"- [code]owner[/code]: объект, который управляет содержащим навигационным "
"примитивом (регион или ссылка)."

msgid "A 3D agent used to pathfind to a position while avoiding obstacles."
msgstr ""
"3D-агент, используемый для поиска пути к нужному месту с обходом препятствий."

msgid ""
"A 3D agent used to pathfind to a position while avoiding static and dynamic "
"obstacles. The calculation can be used by the parent node to dynamically move "
"it along the path. Requires navigation data to work correctly.\n"
"Dynamic obstacles are avoided using RVO collision avoidance. Avoidance is "
"computed before physics, so the pathfinding information can be used safely in "
"the physics step.\n"
"[b]Note:[/b] After setting the [member target_position] property, the [method "
"get_next_path_position] method must be used once every physics frame to "
"update the internal path logic of the navigation agent. The vector position "
"it returns should be used as the next movement position for the agent's "
"parent node.\n"
"[b]Note:[/b] Several methods of this class, such as [method "
"get_next_path_position], can trigger a new path calculation. Calling these in "
"your callback to an agent's signal, such as [signal waypoint_reached], can "
"cause infinite recursion. It is recommended to call these methods in the "
"physics step or, alternatively, delay their call until the end of the frame "
"(see [method Object.call_deferred] or [constant Object.CONNECT_DEFERRED])."
msgstr ""
"3D-агент, используемый для поиска пути к заданной позиции с избеганием "
"статических и динамических препятствий. Этот расчёт может использоваться "
"родительским узлом для динамического перемещения по пути. Для корректной "
"работы требуются навигационные данные.\n"
"Динамические препятствия обходят с помощью функции предотвращения "
"столкновений RVO. Избегание вычисляется до физических процессов, поэтому "
"информацию о поиске пути можно безопасно использовать на этапе физических "
"процессов.\n"
"[b]Примечание:[/b] После установки свойства [member target_position] метод "
"[method get_next_path_position] необходимо использовать один раз в каждом "
"кадре физики для обновления внутренней логики пути навигационного агента. "
"Возвращаемая им позиция вектора должна использоваться в качестве следующей "
"позиции движения для родительского узла агента.\n"
"[b]Примечание:[/b] Некоторые методы этого класса, такие как [method "
"get_next_path_position], могут инициировать новый расчёт пути. Вызов этих "
"методов в обратном вызове сигнала агента, например, [signal "
"waypoint_reached], может привести к бесконечной рекурсии. Рекомендуется "
"вызывать эти методы на этапе физики или, в качестве альтернативы, откладывать "
"их вызов до конца кадра (см. [method Object.call_deferred] или [constant "
"Object.CONNECT_DEFERRED])."

msgid ""
"Returns which index the agent is currently on in the navigation path's "
"[PackedVector3Array]."
msgstr ""
"Возвращает индекс, по которому в данный момент находится агент в массиве "
"[PackedVector3Array] пути навигации."

msgid "Returns the [RID] of this agent on the [NavigationServer3D]."
msgstr "Возвращает [RID] этого агента на [NavigationServer3D]."

msgid ""
"If [code]true[/code] the agent is registered for an RVO avoidance callback on "
"the [NavigationServer3D]. When [member velocity] is set and the processing is "
"completed a [code]safe_velocity[/code] Vector3 is received with a signal "
"connection to [signal velocity_computed]. Avoidance processing with many "
"registered agents has a significant performance cost and should only be "
"enabled on agents that currently require it."
msgstr ""
"Если [code]true[/code], агент регистрируется для обратного вызова избегания "
"RVO на [NavigationServer3D]. Когда [member velocity] задано и обработка "
"завершена, [code]safe_velocity[/code] Vector3 принимается с сигнальным "
"соединением на [signal velocity_computed]. Обработка избегания со многими "
"зарегистрированными агентами имеет значительные затраты производительности и "
"должна быть включена только для агентов, которым это в данный момент "
"требуется."

msgid ""
"The height of the avoidance agent. Agents will ignore other agents or "
"obstacles that are above or below their current position + height in 2D "
"avoidance. Does nothing in 3D avoidance which uses radius spheres alone."
msgstr ""
"Высота агента избегания. Агенты будут игнорировать других агентов или "
"препятствия, которые находятся выше или ниже их текущего положения + высота в "
"2D-избегании. Ничего не делает в 3D-избегании, которое использует только "
"радиусные сферы."

msgid ""
"If [code]true[/code], and the agent uses 2D avoidance, it will remember the "
"set y-axis velocity and reapply it after the avoidance step. While 2D "
"avoidance has no y-axis and simulates on a flat plane this setting can help "
"to soften the most obvious clipping on uneven 3D geometry."
msgstr ""
"Если [code]true[/code], и агент использует 2D-избегание, он запомнит заданную "
"скорость оси Y и повторно применит ее после шага избегания. В то время как 2D-"
"избегание не имеет оси Y и моделирует на плоской плоскости, эта настройка "
"может помочь смягчить наиболее очевидное отсечение на неровной 3D-геометрии."

msgid ""
"The height offset is subtracted from the y-axis value of any vector path "
"position for this NavigationAgent. The NavigationAgent height offset does not "
"change or influence the navigation mesh or pathfinding query result. "
"Additional navigation maps that use regions with navigation meshes that the "
"developer baked with appropriate agent radius or height values are required "
"to support different-sized agents."
msgstr ""
"Смещение высоты вычитается из значения оси Y любой позиции векторного пути "
"для этого NavigationAgent. Смещение высоты NavigationAgent не изменяет и не "
"влияет на навигационную сетку или результат запроса поиска пути. Для "
"поддержки агентов разного размера требуются дополнительные навигационные "
"карты, использующие регионы с навигационными сетками, которые разработчик "
"запекал с соответствующими значениями радиуса или высоты агента."

msgid ""
"The radius of the avoidance agent. This is the \"body\" of the avoidance "
"agent and not the avoidance maneuver starting radius (which is controlled by "
"[member neighbor_distance]).\n"
"Does not affect normal pathfinding. To change an actor's pathfinding radius "
"bake [NavigationMesh] resources with a different [member "
"NavigationMesh.agent_radius] property and use different navigation maps for "
"each actor size."
msgstr ""
"Радиус агента избегания. Это «тело» агента избегания, а не начальный радиус "
"маневра избегания (который контролируется [member neighbor_distance]).\n"
"Не влияет на обычный поиск пути. Чтобы изменить радиус поиска пути актера, "
"запеките ресурсы [NavigationMesh] с другим свойством [member "
"NavigationMesh.agent_radius] и используйте разные навигационные карты для "
"каждого размера актера."

msgid ""
"If [code]true[/code], the agent calculates avoidance velocities in 3D "
"omnidirectionally, e.g. for games that take place in air, underwater or "
"space. Agents using 3D avoidance only avoid other agents using 3D avoidance, "
"and react to radius-based avoidance obstacles. They ignore any vertex-based "
"obstacles.\n"
"If [code]false[/code], the agent calculates avoidance velocities in 2D along "
"the x and z-axes, ignoring the y-axis. Agents using 2D avoidance only avoid "
"other agents using 2D avoidance, and react to radius-based avoidance "
"obstacles or vertex-based avoidance obstacles. Other agents using 2D "
"avoidance that are below or above their current position including [member "
"height] are ignored."
msgstr ""
"Если [code]true[/code], агент вычисляет скорости избегания в 3D "
"всенаправленно, например, для игр, которые происходят в воздухе, под водой "
"или в космосе. Агенты, использующие 3D-избегание, избегают только других "
"агентов, использующих 3D-избегание, и реагируют на препятствия избегания на "
"основе радиуса. Они игнорируют любые препятствия на основе вершин.\n"
"Если [code]false[/code], агент вычисляет скорости избегания в 2D вдоль осей x "
"и z, игнорируя ось y. Агенты, использующие 2D-избегание, избегают только "
"других агентов, использующих 2D-избегание, и реагируют на препятствия "
"избегания на основе радиуса или препятствия избегания на основе вершин. "
"Другие агенты, использующие 2D-избегание, которые находятся ниже или выше их "
"текущего положения, включая [member height], игнорируются."

msgid ""
"Signals that the agent reached a navigation link. Emitted when the agent "
"moves within [member path_desired_distance] of the next position of the path "
"when that position is a navigation link.\n"
"The details dictionary may contain the following keys depending on the value "
"of [member path_metadata_flags]:\n"
"- [code]position[/code]: The start position of the link that was reached.\n"
"- [code]type[/code]: Always [constant "
"NavigationPathQueryResult3D.PATH_SEGMENT_TYPE_LINK].\n"
"- [code]rid[/code]: The [RID] of the link.\n"
"- [code]owner[/code]: The object which manages the link (usually "
"[NavigationLink3D]).\n"
"- [code]link_entry_position[/code]: If [code]owner[/code] is available and "
"the owner is a [NavigationLink3D], it will contain the global position of the "
"link's point the agent is entering.\n"
"- [code]link_exit_position[/code]: If [code]owner[/code] is available and the "
"owner is a [NavigationLink3D], it will contain the global position of the "
"link's point which the agent is exiting."
msgstr ""
"Сигнализирует, что агент достиг навигационной ссылки. Выдается, когда агент "
"перемещается в пределах [member path_desired_distance] от следующей позиции "
"пути, когда эта позиция является навигационной ссылкой.\n"
"Словарь сведений может содержать следующие ключи в зависимости от значения "
"[member path_metadata_flags]:\n"
"- [code]position[/code]: начальная позиция достигнутой ссылки.\n"
"- [code]type[/code]: всегда [constant "
"NavigationPathQueryResult3D.PATH_SEGMENT_TYPE_LINK].\n"
"- [code]rid[/code]: [RID] ссылки.\n"
"- [code]owner[/code]: объект, управляющий ссылкой (обычно "
"[NavigationLink3D]).\n"
"- [code]link_entry_position[/code]: Если доступен [code]owner[/code] и "
"владелец — [NavigationLink3D], он будет содержать глобальную позицию точки "
"ссылки, в которую входит агент.\n"
"- [code]link_exit_position[/code]: Если доступен [code]owner[/code] и "
"владелец — [NavigationLink3D], он будет содержать глобальную позицию точки "
"ссылки, из которой выходит агент."

msgid ""
"A link between two positions on [NavigationRegion2D]s that agents can be "
"routed through."
msgstr ""
"Связь между двумя позициями в [NavigationRegion2D], между которыми агенты "
"могут быть перенаправлены."

msgid ""
"A link between two positions on [NavigationRegion2D]s that agents can be "
"routed through. These positions can be on the same [NavigationRegion2D] or on "
"two different ones. Links are useful to express navigation methods other than "
"traveling along the surface of the navigation polygon, such as ziplines, "
"teleporters, or gaps that can be jumped across."
msgstr ""
"Связь между двумя позициями на [NavigationRegion2D], через которые могут быть "
"направлены агенты. Эти позиции могут быть на одном и том же "
"[NavigationRegion2D] или на двух разных. Связи полезны для выражения методов "
"навигации, отличных от перемещения по поверхности навигационного полигона, "
"таких как зиплайны, телепорты или разрывы, через которые можно перепрыгивать."

msgid "Using NavigationLinks"
msgstr "Использование NavigationLinks"

msgid ""
"Returns the [member end_position] that is relative to the link as a global "
"position."
msgstr ""
"Возвращает [member end_position], который относится к ссылке как к глобальной "
"позиции."

msgid ""
"Returns the [member start_position] that is relative to the link as a global "
"position."
msgstr ""
"Возвращает [member start_position], которая относится к ссылке как к "
"глобальной позиции."

msgid "Returns the current navigation map [RID] used by this link."
msgstr ""
"Возвращает текущую навигационную карту [RID], используемую этой ссылкой."

msgid "Returns the [RID] of this link on the [NavigationServer2D]."
msgstr "Возвращает [RID] этой ссылки на [NavigationServer2D]."

msgid ""
"Sets the [member end_position] that is relative to the link from a global "
"[param position]."
msgstr ""
"Устанавливает [member end_position] относительно ссылки из глобального [param "
"position]."

msgid ""
"Sets the [member start_position] that is relative to the link from a global "
"[param position]."
msgstr ""
"Устанавливает [member start_position] относительно ссылки из глобальной "
"[param position]."

msgid ""
"Sets the [RID] of the navigation map this link should use. By default the "
"link will automatically join the [World2D] default navigation map so this "
"function is only required to override the default map."
msgstr ""
"Устанавливает [RID] навигационной карты, которую должна использовать эта "
"ссылка. По умолчанию ссылка автоматически присоединится к навигационной карте "
"по умолчанию [World2D], поэтому эта функция требуется только для "
"переопределения карты по умолчанию."

msgid ""
"Whether this link can be traveled in both directions or only from [member "
"start_position] to [member end_position]."
msgstr ""
"Можно ли перемещаться по этой ссылке в обоих направлениях или только от "
"[member start_position] до [member end_position]."

msgid ""
"Whether this link is currently active. If [code]false[/code], [method "
"NavigationServer2D.map_get_path] will ignore this link."
msgstr ""
"Активна ли эта ссылка в данный момент. Если [code]false[/code], [method "
"NavigationServer2D.map_get_path] проигнорирует эту ссылку."

msgid ""
"Ending position of the link.\n"
"This position will search out the nearest polygon in the navigation mesh to "
"attach to.\n"
"The distance the link will search is controlled by [method "
"NavigationServer2D.map_set_link_connection_radius]."
msgstr ""
"Конечная позиция ссылки.\n"
"Эта позиция будет искать ближайший полигон в навигационной сетке для "
"присоединения.\n"
"Расстояние, на котором будет искать ссылка, контролируется [method "
"NavigationServer2D.map_set_link_connection_radius]."

msgid ""
"When pathfinding enters this link from another regions navigation mesh the "
"[member enter_cost] value is added to the path distance for determining the "
"shortest path."
msgstr ""
"Когда поиск пути заходит на эту ссылку из навигационной сетки другого "
"региона, значение [member enter_cost] добавляется к расстоянию пути для "
"определения кратчайшего пути."

msgid ""
"A bitfield determining all navigation layers the link belongs to. These "
"navigation layers will be checked when requesting a path with [method "
"NavigationServer2D.map_get_path]."
msgstr ""
"Битовое поле, определяющее все навигационные слои, к которым принадлежит "
"ссылка. Эти навигационные слои будут проверены при запросе пути с помощью "
"[method NavigationServer2D.map_get_path]."

msgid ""
"Starting position of the link.\n"
"This position will search out the nearest polygon in the navigation mesh to "
"attach to.\n"
"The distance the link will search is controlled by [method "
"NavigationServer2D.map_set_link_connection_radius]."
msgstr ""
"Начальная позиция ссылки.\n"
"Эта позиция будет искать ближайший полигон в навигационной сетке для "
"присоединения.\n"
"Расстояние, на котором будет искать ссылка, контролируется [method "
"NavigationServer2D.map_set_link_connection_radius]."

msgid ""
"When pathfinding moves along the link the traveled distance is multiplied "
"with [member travel_cost] for determining the shortest path."
msgstr ""
"При поиске пути по ссылке пройденное расстояние умножается на [member "
"travel_cost] для определения кратчайшего пути."

msgid ""
"A link between two positions on [NavigationRegion3D]s that agents can be "
"routed through."
msgstr ""
"Связь между двумя позициями в [NavigationRegion3D], через которую могут "
"маршрутизироваться агенты."

msgid ""
"A link between two positions on [NavigationRegion3D]s that agents can be "
"routed through. These positions can be on the same [NavigationRegion3D] or on "
"two different ones. Links are useful to express navigation methods other than "
"traveling along the surface of the navigation mesh, such as ziplines, "
"teleporters, or gaps that can be jumped across."
msgstr ""
"Связь между двумя позициями на [NavigationRegion3D], через которые могут быть "
"направлены агенты. Эти позиции могут быть на одном и том же "
"[NavigationRegion3D] или на двух разных. Связи полезны для выражения методов "
"навигации, отличных от перемещения по поверхности навигационной сетки, таких "
"как зиплайны, телепорты или разрывы, через которые можно перепрыгивать."

msgid "Returns the [RID] of this link on the [NavigationServer3D]."
msgstr "Возвращает [RID] этой ссылки на [NavigationServer3D]."

msgid ""
"Sets the [RID] of the navigation map this link should use. By default the "
"link will automatically join the [World3D] default navigation map so this "
"function is only required to override the default map."
msgstr ""
"Устанавливает [RID] навигационной карты, которую должна использовать эта "
"ссылка. По умолчанию ссылка автоматически присоединится к навигационной карте "
"по умолчанию [World3D], поэтому эта функция требуется только для "
"переопределения карты по умолчанию."

msgid ""
"Whether this link is currently active. If [code]false[/code], [method "
"NavigationServer3D.map_get_path] will ignore this link."
msgstr ""
"Активна ли эта ссылка в данный момент. Если [code]false[/code], [method "
"NavigationServer3D.map_get_path] проигнорирует эту ссылку."

msgid ""
"Ending position of the link.\n"
"This position will search out the nearest polygon in the navigation mesh to "
"attach to.\n"
"The distance the link will search is controlled by [method "
"NavigationServer3D.map_set_link_connection_radius]."
msgstr ""
"Конечная позиция ссылки.\n"
"Эта позиция будет искать ближайший полигон в навигационной сетке для "
"присоединения.\n"
"Расстояние, на котором будет искать ссылка, контролируется [method "
"NavigationServer3D.map_set_link_connection_radius]."

msgid ""
"A bitfield determining all navigation layers the link belongs to. These "
"navigation layers will be checked when requesting a path with [method "
"NavigationServer3D.map_get_path]."
msgstr ""
"Битовое поле, определяющее все навигационные слои, к которым принадлежит "
"ссылка. Эти навигационные слои будут проверяться при запросе пути с помощью "
"[method NavigationServer3D.map_get_path]."

msgid ""
"Starting position of the link.\n"
"This position will search out the nearest polygon in the navigation mesh to "
"attach to.\n"
"The distance the link will search is controlled by [method "
"NavigationServer3D.map_set_link_connection_radius]."
msgstr ""
"Начальная позиция ссылки.\n"
"Эта позиция будет искать ближайший полигон в навигационной сетке для "
"присоединения.\n"
"Расстояние, на котором будет искать ссылка, контролируется [method "
"NavigationServer3D.map_set_link_connection_radius]."

msgid "A navigation mesh that defines traversable areas and obstacles."
msgstr "Навигационная сетка, определяющая проходимую территорию и препятствия."

msgid ""
"A navigation mesh is a collection of polygons that define which areas of an "
"environment are traversable to aid agents in pathfinding through complicated "
"spaces."
msgstr ""
"Навигационная сетка представляет собой набор полигонов, которые определяют, "
"по каким областям среды можно перемещатся, чтобы помочь агентам находить путь "
"в сложных пространствах."

msgid "Using NavigationMeshes"
msgstr "Использование NavigationMeshes"

msgid "3D Navigation Demo"
msgstr "Демонстрация 3D-навигации"

msgid ""
"Adds a polygon using the indices of the vertices you get when calling [method "
"get_vertices]."
msgstr ""
"Добавляет полигон, используя индексы вершин, которые вы получаете при вызове "
"[method get_vertices]."

msgid "Clears the internal arrays for vertices and polygon indices."
msgstr "Очищает внутренние массивы вершин и индексов полигонов."

msgid ""
"Clears the array of polygons, but it doesn't clear the array of vertices."
msgstr "Очищает массив полигонов, но не очищает массив вершин."

msgid ""
"Initializes the navigation mesh by setting the vertices and indices according "
"to a [Mesh].\n"
"[b]Note:[/b] The given [param mesh] must be of type [constant "
"Mesh.PRIMITIVE_TRIANGLES] and have an index array."
msgstr ""
"Инициализирует навигационную сетку, устанавливая вершины и индексы в "
"соответствии с [Mesh].\n"
"[b]Примечание:[/b] Заданная [param mesh] должна иметь тип [constant "
"Mesh.PRIMITIVE_TRIANGLES] и иметь массив индексов."

msgid ""
"Returns whether or not the specified layer of the [member "
"geometry_collision_mask] is enabled, given a [param layer_number] between 1 "
"and 32."
msgstr ""
"Возвращает, включен ли указанный слой [member geometry_collision_mask], "
"учитывая [param layer_number] от 1 до 32."

msgid ""
"Returns a [PackedInt32Array] containing the indices of the vertices of a "
"created polygon."
msgstr ""
"Возвращает [PackedInt32Array], содержащий индексы вершин созданного полигона."

msgid "Returns the number of polygons in the navigation mesh."
msgstr "Возвращает количество полигонов в навигационной сетке."

msgid ""
"Returns a [PackedVector3Array] containing all the vertices being used to "
"create the polygons."
msgstr ""
"Возвращает [PackedVector3Array], содержащий все вершины, используемые для "
"создания полигонов."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member geometry_collision_mask], given a [param layer_number] between 1 and "
"32."
msgstr ""
"На основе [param value] включает или отключает указанный слой в [member "
"geometry_collision_mask] при заданном [param layer_number] от 1 до 32."

msgid ""
"Sets the vertices that can be then indexed to create polygons with the "
"[method add_polygon] method."
msgstr ""
"Задает вершины, которые затем можно индексировать для создания полигонов с "
"помощью метода [method add_polygon]."

msgid ""
"The minimum floor to ceiling height that will still allow the floor area to "
"be considered walkable.\n"
"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
"multiple of [member cell_height]."
msgstr ""
"Минимальная высота от пола до потолка, при которой площадь пола все еще будет "
"считаться пригодной для ходьбы.\n"
"[b]Примечание:[/b] При выпечке это значение будет округлено до ближайшего "
"кратного [member cell_height]."

msgid ""
"The minimum ledge height that is considered to still be traversable.\n"
"[b]Note:[/b] While baking, this value will be rounded down to the nearest "
"multiple of [member cell_height]."
msgstr ""
"Минимальная высота уступа, которая считается все еще проходимой.\n"
"[b]Примечание:[/b] При выпечке это значение будет округлено до ближайшего "
"кратного [member cell_height]."

msgid "The maximum slope that is considered walkable, in degrees."
msgstr "Максимальный уклон, который считается пригодным для ходьбы, в градусах."

msgid ""
"The distance to erode/shrink the walkable area of the heightfield away from "
"obstructions.\n"
"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
"multiple of [member cell_size].\n"
"[b]Note:[/b] The radius must be equal or higher than [code]0.0[/code]. If the "
"radius is [code]0.0[/code], it won't be possible to fix invalid outline "
"overlaps and other precision errors during the baking process. As a result, "
"some obstacles may be excluded incorrectly from the final navigation mesh, or "
"may delete the navigation mesh's polygons."
msgstr ""
"Расстояние, на которое будет размыта/сокращена проходимая область поля высот "
"от препятствий.\n"
"[b]Примечание:[/b] При запекании это значение будет округлено до ближайшего "
"значения, кратного [member cell_size].\n"
"[b]Примечание:[/b] Радиус должен быть равен или больше [code]0.0[/code]. Если "
"радиус равен [code]0.0[/code], исправить недопустимые наложения контуров и "
"другие ошибки точности во время запекания будет невозможно. В результате "
"некоторые препятствия могут быть некорректно исключены из финальной "
"навигационной сетки или могут привести к удалению полигонов навигационной "
"сетки."

msgid ""
"The size of the non-navigable border around the bake bounding area.\n"
"In conjunction with the [member filter_baking_aabb] and a [member "
"edge_max_error] value at [code]1.0[/code] or below the border size can be "
"used to bake tile aligned navigation meshes without the tile edges being "
"shrunk by [member agent_radius].\n"
"[b]Note:[/b] If this value is not [code]0.0[/code], it will be rounded up to "
"the nearest multiple of [member cell_size] during baking."
msgstr ""
"Размер ненавигируемой границы вокруг области запекания.\n"
"В сочетании со значением [member filter_baking_aabb] и значением [member "
"edge_max_error], равным [code]1.0[/code] или меньше размера границы, может "
"использоваться для запекания навигационных сеток, выровненных по тайлам, без "
"уменьшения краёв тайлов на [member agent_radius].\n"
"[b]Примечание:[/b] Если это значение не равно [code]0.0[/code], оно будет "
"округлено до ближайшего значения, кратного [member cell_size] во время "
"запекания."

msgid ""
"The cell height used to rasterize the navigation mesh vertices on the Y axis. "
"Must match with the cell height on the navigation map."
msgstr ""
"Ячейка высоты, используемая для растеризации вершин навигационной сетки по "
"оси Y. Должна совпадать с высотой ячейки на навигационной карте."

msgid ""
"The cell size used to rasterize the navigation mesh vertices on the XZ plane. "
"Must match with the cell size on the navigation map."
msgstr ""
"Ячейка высоты, используемая для растеризации вершин навигационной сетки на "
"плоскости XZ. Должна совпадать с размером ячейки на навигационной карте."

msgid ""
"The sampling distance to use when generating the detail mesh, in cell unit."
msgstr ""
"Расстояние выборки, используемое при создании сетки детализации, в единицах "
"ячеек."

msgid ""
"The maximum distance the detail mesh surface should deviate from heightfield, "
"in cell unit."
msgstr ""
"Максимальное расстояние, на которое должна отклоняться поверхность сетки "
"детали от поля высоты, в единицах ячеек."

msgid ""
"The maximum distance a simplified contour's border edges should deviate the "
"original raw contour."
msgstr ""
"Максимальное расстояние, на которое края упрощенного контура должны "
"отклоняться от исходного необработанного контура."

msgid ""
"The maximum allowed length for contour edges along the border of the mesh. A "
"value of [code]0.0[/code] disables this feature.\n"
"[b]Note:[/b] While baking, this value will be rounded up to the nearest "
"multiple of [member cell_size]."
msgstr ""
"Максимально допустимая длина контурных кромок вдоль границы сетки. Значение "
"[code]0.0[/code] отключает эту функцию.\n"
"[b]Примечание:[/b] При запекании это значение будет округлено до ближайшего "
"кратного [member cell_size]."

msgid ""
"If the baking [AABB] has a volume the navigation mesh baking will be "
"restricted to its enclosing area."
msgstr ""
"Если запекание [AABB] имеет объем, запекание навигационной сетки будет "
"ограничено его охватывающей областью."

msgid "The position offset applied to the [member filter_baking_aabb] [AABB]."
msgstr "Смещение позиции, примененное к [member filter_baking_aabb] [AABB]."

msgid "If [code]true[/code], marks spans that are ledges as non-walkable."
msgstr ""
"Если [code]true[/code], то пролеты, являющиеся уступами, помечаются как "
"непроходимые."

msgid ""
"If [code]true[/code], marks non-walkable spans as walkable if their maximum "
"is within [member agent_max_climb] of a walkable neighbor."
msgstr ""
"Если [code]true[/code], то непроходимые участки помечаются как проходимые, "
"если их максимум находится в пределах [member agent_max_climb] от проходимого "
"соседа."

msgid ""
"If [code]true[/code], marks walkable spans as not walkable if the clearance "
"above the span is less than [member agent_height]."
msgstr ""
"Если [code]true[/code], то проходящие пролеты помечаются как непроходимые, "
"если просвет над пролетом меньше, чем [member agent_height]."

msgid ""
"The physics layers to scan for static colliders.\n"
"Only used when [member geometry_parsed_geometry_type] is [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS] or [constant PARSED_GEOMETRY_BOTH]."
msgstr ""
"Физические слои для сканирования на предмет статических коллайдеров.\n"
"Используется только когда [member geometry_parsed_geometry_type] равен "
"[constant PARSED_GEOMETRY_STATIC_COLLIDERS] или [constant "
"PARSED_GEOMETRY_BOTH]."

msgid "Determines which type of nodes will be parsed as geometry."
msgstr "Определяет, какой тип узлов будет анализироваться как геометрия."

msgid "The source of the geometry used when baking."
msgstr "Источник геометрии, используемой при выпечке."

msgid ""
"The name of the group to scan for geometry.\n"
"Only used when [member geometry_source_geometry_mode] is [constant "
"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] or [constant "
"SOURCE_GEOMETRY_GROUPS_EXPLICIT]."
msgstr ""
"Имя группы для сканирования геометрии.\n"
"Используется только когда [member geometry_source_geometry_mode] равно "
"[constant SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] или [constant "
"SOURCE_GEOMETRY_GROUPS_EXPLICIT]."

msgid ""
"Any regions with a size smaller than this will be merged with larger regions "
"if possible.\n"
"[b]Note:[/b] This value will be squared to calculate the number of cells. For "
"example, a value of 20 will set the number of cells to 400."
msgstr ""
"Любые регионы с размером меньше этого будут объединены с регионами большего "
"размера, если это возможно.\n"
"[b]Примечание:[/b] Это значение будет возведено в квадрат для расчета "
"количества ячеек. Например, значение 20 установит количество ячеек равным 400."

msgid ""
"The minimum size of a region for it to be created.\n"
"[b]Note:[/b] This value will be squared to calculate the minimum number of "
"cells allowed to form isolated island areas. For example, a value of 8 will "
"set the number of cells to 64."
msgstr ""
"Минимальный размер региона для его создания.\n"
"[b]Примечание:[/b] Это значение будет возведено в квадрат для расчета "
"минимального количества ячеек, разрешенных для формирования изолированных "
"островных областей. Например, значение 8 установит количество ячеек равным 64."

msgid "Partitioning algorithm for creating the navigation mesh polys."
msgstr "Алгоритм разбиения для создания полигонов навигационной сетки."

msgid ""
"The maximum number of vertices allowed for polygons generated during the "
"contour to polygon conversion process."
msgstr ""
"Максимально допустимое количество вершин для полигонов, создаваемых в "
"процессе преобразования контура в полигон."

msgid ""
"Watershed partitioning. Generally the best choice if you precompute the "
"navigation mesh, use this if you have large open areas."
msgstr ""
"Разделение водораздела. Обычно это лучший выбор, если вы предварительно "
"вычисляете навигационную сетку, используйте его, если у вас большие открытые "
"пространства."

msgid ""
"Monotone partitioning. Use this if you want fast navigation mesh generation."
msgstr ""
"Монотонное разбиение. Используйте это, если вам нужна быстрая генерация "
"навигационной сетки."

msgid ""
"Layer partitioning. Good choice to use for tiled navigation mesh with medium "
"and small sized tiles."
msgstr ""
"Разделение слоев. Хороший выбор для использования в мозаичной навигационной "
"сетке с тайлами среднего и малого размера."

msgid "Represents the size of the [enum SamplePartitionType] enum."
msgstr "Представляет размер перечисления [enum SamplePartitionType]."

msgid ""
"Parses mesh instances as geometry. This includes [MeshInstance3D], "
"[CSGShape3D], and [GridMap] nodes."
msgstr ""
"Анализирует экземпляры сетки как геометрию. Сюда входят узлы "
"[MeshInstance3D], [CSGShape3D] и [GridMap]."

msgid ""
"Parses [StaticBody3D] colliders as geometry. The collider should be in any of "
"the layers specified by [member geometry_collision_mask]."
msgstr ""
"Анализирует коллайдеры [StaticBody3D] как геометрию. Коллайдер должен "
"находиться в любом из слоев, указанных [member geometry_collision_mask]."

msgid ""
"Both [constant PARSED_GEOMETRY_MESH_INSTANCES] and [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS]."
msgstr ""
"Оба [constant PARSED_GEOMETRY_MESH_INSTANCES] и [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS]."

msgid "Represents the size of the [enum ParsedGeometryType] enum."
msgstr "Представляет размер перечисления [enum ParsedGeometryType]."

msgid "Scans the child nodes of the root node recursively for geometry."
msgstr "Рекурсивно сканирует дочерние узлы корневого узла на предмет геометрии."

msgid ""
"Scans nodes in a group and their child nodes recursively for geometry. The "
"group is specified by [member geometry_source_group_name]."
msgstr ""
"Сканирует узлы в группе и их дочерние узлы рекурсивно на предмет геометрии. "
"Группа указывается [member geometry_source_group_name]."

msgid ""
"Uses nodes in a group for geometry. The group is specified by [member "
"geometry_source_group_name]."
msgstr ""
"Использует узлы в группе для геометрии. Группа указывается [member "
"geometry_source_group_name]."

msgid "Represents the size of the [enum SourceGeometryMode] enum."
msgstr "Представляет размер перечисления [enum SourceGeometryMode]."

msgid "Helper class for creating and clearing navigation meshes."
msgstr "Вспомогательный класс для создания и очистки навигационных сеток."

msgid ""
"This class is responsible for creating and clearing 3D navigation meshes used "
"as [NavigationMesh] resources inside [NavigationRegion3D]. The "
"[NavigationMeshGenerator] has very limited to no use for 2D as the navigation "
"mesh baking process expects 3D node types and 3D source geometry to parse.\n"
"The entire navigation mesh baking is best done in a separate thread as the "
"voxelization, collision tests and mesh optimization steps involved are very "
"slow and performance-intensive operations.\n"
"Navigation mesh baking happens in multiple steps and the result depends on 3D "
"source geometry and properties of the [NavigationMesh] resource. In the first "
"step, starting from a root node and depending on [NavigationMesh] properties "
"all valid 3D source geometry nodes are collected from the [SceneTree]. "
"Second, all collected nodes are parsed for their relevant 3D geometry data "
"and a combined 3D mesh is build. Due to the many different types of parsable "
"objects, from normal [MeshInstance3D]s to [CSGShape3D]s or various "
"[CollisionObject3D]s, some operations to collect geometry data can trigger "
"[RenderingServer] and [PhysicsServer3D] synchronizations. Server "
"synchronization can have a negative effect on baking time or framerate as it "
"often involves [Mutex] locking for thread security. Many parsable objects and "
"the continuous synchronization with other threaded Servers can increase the "
"baking time significantly. On the other hand only a few but very large and "
"complex objects will take some time to prepare for the Servers which can "
"noticeably stall the next frame render. As a general rule the total number of "
"parsable objects and their individual size and complexity should be balanced "
"to avoid framerate issues or very long baking times. The combined mesh is "
"then passed to the Recast Navigation Object to test the source geometry for "
"walkable terrain suitable to [NavigationMesh] agent properties by creating a "
"voxel world around the meshes bounding area.\n"
"The finalized navigation mesh is then returned and stored inside the "
"[NavigationMesh] for use as a resource inside [NavigationRegion3D] nodes.\n"
"[b]Note:[/b] Using meshes to not only define walkable surfaces but also "
"obstruct navigation baking does not always work. The navigation baking has no "
"concept of what is a geometry \"inside\" when dealing with mesh source "
"geometry and this is intentional. Depending on current baking parameters, as "
"soon as the obstructing mesh is large enough to fit a navigation mesh area "
"inside, the baking will generate navigation mesh areas that are inside the "
"obstructing source geometry mesh."
msgstr ""
"Этот класс отвечает за создание и очистку навигационных сеток 3D, "
"используемых в качестве ресурсов [NavigationMesh] внутри "
"[NavigationRegion3D]. [NavigationMeshGenerator] имеет очень ограниченное или "
"вообще не используется для 2D, поскольку процесс запекания навигационной "
"сетки ожидает анализа типов узлов 3D и исходной геометрии 3D.\n"
"Запекание всей навигационной сетки лучше всего выполнять в отдельном потоке, "
"поскольку вокселизация, тесты столкновений и этапы оптимизации сетки являются "
"очень медленными и ресурсоемкими операциями.\n"
"Запекание навигационной сетки происходит в несколько этапов, и результат "
"зависит от исходной 3D-геометрии и свойств ресурса [NavigationMesh]. На "
"первом этапе, начиная с корневого узла и в зависимости от свойств "
"[NavigationMesh], все допустимые исходные 3D-узлы геометрии собираются из "
"[SceneTree]. Во-вторых, все собранные узлы анализируются на предмет "
"соответствующих данных 3D-геометрии, и создается объединенная 3D-сетка. Из-за "
"множества различных типов анализируемых объектов, от обычных [MeshInstance3D]-"
"ов до [CSGShape3D]-ов или различных [CollisionObject3D]-ов, некоторые "
"операции по сбору данных геометрии могут вызывать синхронизации "
"[RenderingServer] и [PhysicsServer3D]. Синхронизация сервера может иметь "
"отрицательное влияние на время выпечки или частоту кадров, поскольку она "
"часто включает блокировку [Mutex] для безопасности потока. Множество "
"анализируемых объектов и непрерывная синхронизация с другими потоковыми "
"серверами могут значительно увеличить время выпечки. С другой стороны, лишь "
"немногим, но очень большим и сложным объектам потребуется некоторое время для "
"подготовки к отправке на серверы, что может заметно замедлить рендеринг "
"следующего кадра. Как правило, общее количество анализируемых объектов, их "
"индивидуальный размер и сложность должны быть сбалансированы, чтобы избежать "
"проблем с частотой кадров или слишком длительного времени запекания. Затем "
"объединенная сетка передается в объект Recast Navigation для проверки "
"исходной геометрии на предмет пригодности для проходимости, соответствующей "
"свойствам агента [NavigationMesh], путем создания воксельного мира вокруг "
"ограничивающей области сетки.\n"
"Затем финализированная навигационная сетка возвращается и сохраняется внутри "
"[NavigationMesh] для использования в качестве ресурса внутри узлов "
"[NavigationRegion3D].\n"
"[b]Примечание:[/b] Использование сеток не только для определения проходимых "
"поверхностей, но и для запекания препятствий навигации не всегда работает. "
"Запекание навигации не имеет понятия о том, что такое геометрия «внутри» при "
"работе с исходной геометрией сетки, и это сделано намеренно. В зависимости от "
"текущих параметров запекания, как только мешающая сетка становится достаточно "
"большой, чтобы вместить область навигационной сетки внутри, запекание "
"сгенерирует области навигационной сетки, которые находятся внутри мешающей "
"исходной геометрии сетки."

msgid ""
"This method is deprecated due to core threading changes. To upgrade existing "
"code, first create a [NavigationMeshSourceGeometryData3D] resource. Use this "
"resource with [method parse_source_geometry_data] to parse the [SceneTree] "
"for nodes that should contribute to the navigation mesh baking. The "
"[SceneTree] parsing needs to happen on the main thread. After the parsing is "
"finished use the resource with [method bake_from_source_geometry_data] to "
"bake a navigation mesh."
msgstr ""
"Этот метод устарел из-за изменений в потоке ядра. Чтобы обновить существующий "
"код, сначала создайте ресурс [NavigationMeshSourceGeometryData3D]. "
"Используйте этот ресурс с [method parse_source_geometry_data] для анализа "
"[SceneTree] на предмет узлов, которые должны способствовать запеканию "
"навигационной сетки. Анализ [SceneTree] должен выполняться в основном потоке. "
"После завершения анализа используйте ресурс с [method "
"bake_from_source_geometry_data] для запекания навигационной сетки."

msgid ""
"Bakes the [param navigation_mesh] with source geometry collected starting "
"from the [param root_node]."
msgstr ""
"Запекает [param navigation_mesh] с исходной геометрией, собранной, начиная с "
"[param root_node]."

msgid ""
"Bakes the provided [param navigation_mesh] with the data from the provided "
"[param source_geometry_data]. After the process is finished the optional "
"[param callback] will be called."
msgstr ""
"Запекает предоставленный [param navigation_mesh] с данными из "
"предоставленного [param source_geometry_data]. После завершения процесса "
"будет вызван необязательный [param callback]."

msgid ""
"Removes all polygons and vertices from the provided [param navigation_mesh] "
"resource."
msgstr ""
"Удаляет все полигоны и вершины из предоставленного ресурса [param "
"navigation_mesh]."

msgid ""
"Parses the [SceneTree] for source geometry according to the properties of "
"[param navigation_mesh]. Updates the provided [param source_geometry_data] "
"resource with the resulting data. The resource can then be used to bake a "
"navigation mesh with [method bake_from_source_geometry_data]. After the "
"process is finished the optional [param callback] will be called.\n"
"[b]Note:[/b] This function needs to run on the main thread or with a deferred "
"call as the SceneTree is not thread-safe.\n"
"[b]Performance:[/b] While convenient, reading data arrays from [Mesh] "
"resources can affect the frame rate negatively. The data needs to be received "
"from the GPU, stalling the [RenderingServer] in the process. For performance "
"prefer the use of e.g. collision shapes or creating the data arrays entirely "
"in code."
msgstr ""
"Анализирует [SceneTree] на предмет исходной геометрии в соответствии со "
"свойствами [param navigation_mesh]. Обновляет предоставленный ресурс [param "
"source_geometry_data] полученными данными. Затем ресурс можно использовать "
"для запекания навигационной сетки с помощью [method "
"bake_from_source_geometry_data]. После завершения процесса будет вызван "
"необязательный [param callback].\n"
"[b]Примечание:[/b] Эта функция должна выполняться в основном потоке или с "
"отложенным вызовом, поскольку SceneTree не является потокобезопасным.\n"
"[b]Производительность:[/b] Несмотря на удобство, чтение массивов данных из "
"ресурсов [Mesh] может отрицательно повлиять на частоту кадров. Данные должны "
"быть получены от графического процессора, останавливая [RenderingServer] в "
"процессе. Для производительности предпочтительнее использовать, например, "
"формы столкновений или создавать массивы данных полностью в коде."

msgid ""
"Container for parsed source geometry data used in navigation mesh baking."
msgstr ""
"Контейнер для проанализированных исходных геометрических данных, используемых "
"при запекании навигационной сетки."

msgid "Adds the outline points of a shape as obstructed area."
msgstr "Добавляет точки контура фигуры в качестве области препятствий."

msgid ""
"Adds a projected obstruction shape to the source geometry. If [param carve] "
"is [code]true[/code] the carved shape will not be affected by additional "
"offsets (e.g. agent radius) of the navigation mesh baking process."
msgstr ""
"Добавляет проецируемую форму препятствия к исходной геометрии. Если [param "
"carve] равен [code]true[/code], то вырезанная форма не будет затронута "
"дополнительными смещениями (например, радиусом агента) процесса запекания "
"навигационной сетки."

msgid "Adds the outline points of a shape as traversable area."
msgstr "Добавляет точки контура фигуры в качестве проходимой области."

msgid ""
"Appends another array of [param obstruction_outlines] at the end of the "
"existing obstruction outlines array."
msgstr ""
"Добавляет еще один массив [param obstruction_outlines] в конец существующего "
"массива контуров препятствий."

msgid ""
"Appends another array of [param traversable_outlines] at the end of the "
"existing traversable outlines array."
msgstr ""
"Добавляет еще один массив [param traversable_outlines] в конец существующего "
"массива проходимых контуров."

msgid "Clears the internal data."
msgstr "Очищает внутренние данные."

msgid "Clears all projected obstructions."
msgstr "Устраняет все возникающие препятствия."

msgid ""
"Returns an axis-aligned bounding box that covers all the stored geometry "
"data. The bounds are calculated when calling this function with the result "
"cached until further geometry changes are made."
msgstr ""
"Возвращает ограничивающий прямоугольник, выровненный по осям, который "
"охватывает все сохраненные геометрические данные. Границы вычисляются при "
"вызове этой функции, а результат кэшируется до тех пор, пока не будут сделаны "
"дальнейшие изменения геометрии."

msgid "Returns all the obstructed area outlines arrays."
msgstr "Возвращает все массивы контуров препятствий областей."

msgid ""
"Returns the projected obstructions as an [Array] of dictionaries. Each "
"[Dictionary] contains the following entries:\n"
"- [code]vertices[/code] - A [PackedFloat32Array] that defines the outline "
"points of the projected shape.\n"
"- [code]carve[/code] - A [bool] that defines how the projected shape affects "
"the navigation mesh baking. If [code]true[/code] the projected shape will not "
"be affected by addition offsets, e.g. agent radius."
msgstr ""
"Возвращает спроецированные препятствия как [Array] словарей. Каждый "
"[Dictionary] содержит следующие записи:\n"
"- [code]vertices[/code] - [PackedFloat32Array], который определяет точки "
"контура спроецированной формы.\n"
"- [code]carve[/code] - [bool], который определяет, как спроецированная форма "
"влияет на запекание навигационной сетки. Если [code]true[/code], "
"спроецированная форма не будет затронута дополнительными смещениями, "
"например, радиусом агента."

msgid "Returns all the traversable area outlines arrays."
msgstr "Возвращает все массивы контуров проходимой области."

msgid "Returns [code]true[/code] when parsed source geometry data exists."
msgstr ""
"Возвращает [code]true[/code], если существуют проанализированные исходные "
"геометрические данные."

msgid ""
"Adds the geometry data of another [NavigationMeshSourceGeometryData2D] to the "
"navigation mesh baking data."
msgstr ""
"Добавляет данные геометрии другого [NavigationMeshSourceGeometryData2D] к "
"данным запекания навигационной сетки."

msgid "Sets all the obstructed area outlines arrays."
msgstr "Устанавливает все массивы контуров областей препятствий."

msgid ""
"Sets the projected obstructions with an Array of Dictionaries with the "
"following key value pairs:\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"vertices\" : PackedFloat32Array\n"
"\"carve\" : bool\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Устанавливает спроецированные препятствия с помощью массива словарей со "
"следующими парами ключ-значение:\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"vertices\" : PackedFloat32Array\n"
"\"carve\" : bool\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid "Sets all the traversable area outlines arrays."
msgstr "Задает все массивы контуров проходимой области."

msgid ""
"Adds an array of vertex positions to the geometry data for navigation mesh "
"baking to form triangulated faces. For each face the array must have three "
"vertex positions in clockwise winding order. Since [NavigationMesh] resources "
"have no transform, all vertex positions need to be offset by the node's "
"transform using [param xform]."
msgstr ""
"Добавляет массив позиций вершин к геометрическим данным для запекания "
"навигационной сетки для формирования триангулированных граней. Для каждой "
"грани массив должен иметь три позиции вершин в порядке обхода по часовой "
"стрелке. Поскольку ресурсы [NavigationMesh] не имеют преобразования, все "
"позиции вершин должны быть смещены преобразованием узла с помощью [param "
"xform]."

msgid ""
"Adds the geometry data of a [Mesh] resource to the navigation mesh baking "
"data. The mesh must have valid triangulated mesh data to be considered. Since "
"[NavigationMesh] resources have no transform, all vertex positions need to be "
"offset by the node's transform using [param xform]."
msgstr ""
"Добавляет геометрические данные ресурса [Mesh] к данным запекания "
"навигационной сетки. Сетка должна иметь допустимые данные триангулированной "
"сетки, чтобы ее можно было рассмотреть. Поскольку ресурсы [NavigationMesh] не "
"имеют преобразования, все позиции вершин должны быть смещены преобразованием "
"узла с помощью [param xform]."

msgid ""
"Adds an [Array] the size of [constant Mesh.ARRAY_MAX] and with vertices at "
"index [constant Mesh.ARRAY_VERTEX] and indices at index [constant "
"Mesh.ARRAY_INDEX] to the navigation mesh baking data. The array must have "
"valid triangulated mesh data to be considered. Since [NavigationMesh] "
"resources have no transform, all vertex positions need to be offset by the "
"node's transform using [param xform]."
msgstr ""
"Добавляет [Array] размером [constant Mesh.ARRAY_MAX] и с вершинами в индексе "
"[constant Mesh.ARRAY_VERTEX] и индексами в индексе [constant "
"Mesh.ARRAY_INDEX] к данным запекания навигационной сетки. Массив должен иметь "
"допустимые данные триангулированной сетки, чтобы быть рассмотренным. "
"Поскольку ресурсы [NavigationMesh] не имеют преобразования, все позиции "
"вершин должны быть смещены преобразованием узла с помощью [param xform]."

msgid ""
"Adds a projected obstruction shape to the source geometry. The [param "
"vertices] are considered projected on an xz-axes plane, placed at the global "
"y-axis [param elevation] and extruded by [param height]. If [param carve] is "
"[code]true[/code] the carved shape will not be affected by additional offsets "
"(e.g. agent radius) of the navigation mesh baking process."
msgstr ""
"Добавляет проецируемую форму препятствия к исходной геометрии. Вершины [param "
"vertices] считаются спроецированными на плоскость с осями xz, расположенными "
"на глобальной оси y [param altitude] и выдавленными на величину [param "
"height]. Если [param carve] имеет значение [code]true[/code], то вырезанная "
"форма не будет затронута дополнительными смещениями (например, радиусом "
"агента) процесса запекания навигационной сетки."

msgid ""
"Appends arrays of [param vertices] and [param indices] at the end of the "
"existing arrays. Adds the existing index as an offset to the appended indices."
msgstr ""
"Добавляет массивы [param vertices] и [param indexes] в конец существующих "
"массивов. Добавляет существующий индекс как смещение к добавленным индексам."

msgid "Returns the parsed source geometry data indices array."
msgstr ""
"Возвращает проанализированный массив индексов исходных геометрических данных."

msgid ""
"Returns the projected obstructions as an [Array] of dictionaries. Each "
"[Dictionary] contains the following entries:\n"
"- [code]vertices[/code] - A [PackedFloat32Array] that defines the outline "
"points of the projected shape.\n"
"- [code]elevation[/code] - A [float] that defines the projected shape "
"placement on the y-axis.\n"
"- [code]height[/code] - A [float] that defines how much the projected shape "
"is extruded along the y-axis.\n"
"- [code]carve[/code] - A [bool] that defines how the obstacle affects the "
"navigation mesh baking. If [code]true[/code] the projected shape will not be "
"affected by addition offsets, e.g. agent radius."
msgstr ""
"Возвращает спроецированные препятствия в виде [Array] словарей. Каждый "
"[Dictionary] содержит следующие записи:\n"
"- [code]vertices[/code] - [PackedFloat32Array], определяющий точки контура "
"спроецированной фигуры.\n"
"- [code]elevation[/code] - [float], определяющий размещение спроецированной "
"фигуры на оси Y.\n"
"- [code]height[/code] - [float], определяющий, насколько спроецированная "
"фигура выдавлена вдоль оси Y.\n"
"- [code]carve[/code] - [bool], определяющий, как препятствие влияет на "
"запекание навигационной сетки. Если [code]true[/code], спроецированная фигура "
"не будет затронута дополнительными смещениями, например, радиусом агента."

msgid "Returns the parsed source geometry data vertices array."
msgstr ""
"Возвращает проанализированный массив вершин исходных геометрических данных."

msgid ""
"Adds the geometry data of another [NavigationMeshSourceGeometryData3D] to the "
"navigation mesh baking data."
msgstr ""
"Добавляет данные геометрии другого [NavigationMeshSourceGeometryData3D] к "
"данным запекания навигационной сетки."

msgid ""
"Sets the parsed source geometry data indices. The indices need to be matched "
"with appropriated vertices.\n"
"[b]Warning:[/b] Inappropriate data can crash the baking process of the "
"involved third-party libraries."
msgstr ""
"Устанавливает индексы проанализированных исходных геометрических данных. "
"Индексы должны быть сопоставлены с присвоенными вершинами.\n"
"[b]Предупреждение:[/b] Неподходящие данные могут привести к сбою процесса "
"выпечки задействованных сторонних библиотек."

msgid ""
"Sets the projected obstructions with an Array of Dictionaries with the "
"following key value pairs:\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"vertices\" : PackedFloat32Array\n"
"\"elevation\" : float\n"
"\"height\" : float\n"
"\"carve\" : bool\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Устанавливает проектируемые препятствия с помощью массива словарей со "
"следующими парами ключ-значение:\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"vertices\" : PackedFloat32Array\n"
"\"elevation\" : float\n"
"\"height\" : float\n"
"\"carve\" : bool\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Sets the parsed source geometry data vertices. The vertices need to be "
"matched with appropriated indices.\n"
"[b]Warning:[/b] Inappropriate data can crash the baking process of the "
"involved third-party libraries."
msgstr ""
"Устанавливает вершины проанализированных исходных геометрических данных. "
"Вершины должны быть сопоставлены с присвоенными индексами.\n"
"[b]Предупреждение:[/b] Неподходящие данные могут привести к сбою процесса "
"выпечки задействованных сторонних библиотек."

msgid ""
"2D obstacle used to affect navigation mesh baking or constrain velocities of "
"avoidance controlled agents."
msgstr ""
"Двумерное препятствие, используемое для воздействия на запекание "
"навигационной сетки или ограничения скорости агентов, управляемых для "
"избегания."

msgid ""
"An obstacle needs a navigation map and outline [member vertices] defined to "
"work correctly. The outlines can not cross or overlap.\n"
"Obstacles can be included in the navigation mesh baking process when [member "
"affect_navigation_mesh] is enabled. They do not add walkable geometry, "
"instead their role is to discard other source geometry inside the shape. This "
"can be used to prevent navigation mesh from appearing in unwanted places. If "
"[member carve_navigation_mesh] is enabled the baked shape will not be "
"affected by offsets of the navigation mesh baking, e.g. the agent radius.\n"
"With [member avoidance_enabled] the obstacle can constrain the avoidance "
"velocities of avoidance using agents. If the obstacle's vertices are wound in "
"clockwise order, avoidance agents will be pushed in by the obstacle, "
"otherwise, avoidance agents will be pushed out. Obstacles using vertices and "
"avoidance can warp to a new position but should not be moved every single "
"frame as each change requires a rebuild of the avoidance map."
msgstr ""
"Для корректной работы препятствия необходимо определить навигационную карту и "
"контур [member vertices]. Контуры не могут пересекаться или накладываться "
"друг на друга.\n"
"Препятствия могут быть включены в процесс запекания навигационной сетки, если "
"включен [member affect_navigation_mesh]. Они не добавляют проходимую "
"геометрию, вместо этого их роль заключается в отбрасывании другой исходной "
"геометрии внутри формы. Это можно использовать для предотвращения появления "
"навигационной сетки в нежелательных местах. Если включен [member "
"carve_navigation_mesh], запеченная форма не будет зависеть от смещений "
"запекания навигационной сетки, например радиуса агента.\n"
"С [member Avoidance_enabled] препятствие может ограничивать скорости "
"избегания с использованием агентов. Если вершины препятствия закручены по "
"часовой стрелке, агенты избегания будут выталкиваться в препятствие, в "
"противном случае агенты избегания будут выталкиваться из препятствия. "
"Препятствия, использующие вершины и уклонение, могут перемещаться в новое "
"положение, но их не следует перемещать в каждом кадре, поскольку каждое "
"изменение требует перестройки карты уклонения."

msgid "Using NavigationObstacles"
msgstr "Использовать NavigationObstacles"

msgid ""
"Returns the [RID] of the navigation map for this NavigationObstacle node. "
"This function returns always the map set on the NavigationObstacle node and "
"not the map of the abstract obstacle on the NavigationServer. If the obstacle "
"map is changed directly with the NavigationServer API the NavigationObstacle "
"node will not be aware of the map change. Use [method set_navigation_map] to "
"change the navigation map for the NavigationObstacle and also update the "
"obstacle on the NavigationServer."
msgstr ""
"Возвращает [RID] навигационной карты для этого узла NavigationObstacle. Эта "
"функция всегда возвращает набор карт на узле NavigationObstacle, а не карту "
"абстрактного препятствия на NavigationServer. Если карта препятствий "
"изменяется напрямую с помощью API NavigationServer, узел NavigationObstacle "
"не будет знать об изменении карты. Используйте [method set_navigation_map], "
"чтобы изменить навигационную карту для NavigationObstacle, а также обновить "
"препятствие на NavigationServer."

msgid "Returns the [RID] of this obstacle on the [NavigationServer2D]."
msgstr "Возвращает [RID] этого препятствия на [NavigationServer2D]."

msgid ""
"Sets the [RID] of the navigation map this NavigationObstacle node should use "
"and also updates the [code]obstacle[/code] on the NavigationServer."
msgstr ""
"Устанавливает [RID] навигационной карты, которую должен использовать этот "
"узел NavigationObstacle, а также обновляет [code]obstacle[/code] на "
"NavigationServer."

msgid ""
"If enabled and parsed in a navigation mesh baking process the obstacle will "
"discard source geometry inside its [member vertices] defined shape."
msgstr ""
"Если включено и проанализировано в процессе запекания навигационной сетки, "
"препятствие отбросит исходную геометрию внутри его определенной формы [member "
"vertices]."

msgid "If [code]true[/code] the obstacle affects avoidance using agents."
msgstr ""
"Если [code]true[/code], препятствие влияет на избегание с помощью агентов."

msgid ""
"A bitfield determining the avoidance layers for this obstacle. Agents with a "
"matching bit on the their avoidance mask will avoid this obstacle."
msgstr ""
"Битовое поле, определяющее слои избегания для этого препятствия. Агенты с "
"соответствующим битом в маске избегания будут избегать этого препятствия."

msgid ""
"If enabled the obstacle vertices will carve into the baked navigation mesh "
"with the shape unaffected by additional offsets (e.g. agent radius).\n"
"It will still be affected by further postprocessing of the baking process, "
"like edge and polygon simplification.\n"
"Requires [member affect_navigation_mesh] to be enabled."
msgstr ""
"Если включено, вершины препятствий будут вырезаны в запеченной навигационной "
"сетке с формой, не затронутой дополнительными смещениями (например, радиусом "
"агента).\n"
"На нее по-прежнему будет влиять дальнейшая постобработка процесса запекания, "
"например упрощение ребер и полигонов.\n"
"Требуется включение [member affect_navigation_mesh]."

msgid "Sets the avoidance radius for the obstacle."
msgstr "Устанавливает радиус обхода препятствия."

msgid ""
"Sets the wanted velocity for the obstacle so other agent's can better predict "
"the obstacle if it is moved with a velocity regularly (every frame) instead "
"of warped to a new position. Does only affect avoidance for the obstacles "
"[member radius]. Does nothing for the obstacles static vertices."
msgstr ""
"Устанавливает желаемую скорость для препятствия, чтобы другие агенты могли "
"лучше предсказать препятствие, если оно перемещается со скоростью регулярно "
"(каждый кадр) вместо того, чтобы деформироваться в новое положение. Влияет "
"только на избегание для препятствий [member radius]. Ничего не делает для "
"статических вершин препятствий."

msgid ""
"The outline vertices of the obstacle. If the vertices are winded in clockwise "
"order agents will be pushed in by the obstacle, else they will be pushed out. "
"Outlines can not be crossed or overlap. Should the vertices using obstacle be "
"warped to a new position agent's can not predict this movement and may get "
"trapped inside the obstacle."
msgstr ""
"Контурные вершины препятствия. Если вершины закручены по часовой стрелке, "
"агенты будут вдавлены препятствием, в противном случае они будут вытолкнуты. "
"Контуры не могут пересекаться или накладываться друг на друга. Если вершины, "
"использующие препятствие, деформируются в новое положение, агенты не могут "
"предсказать это движение и могут оказаться в ловушке внутри препятствия."

msgid ""
"3D obstacle used to affect navigation mesh baking or constrain velocities of "
"avoidance controlled agents."
msgstr ""
"Трехмерное препятствие, используемое для воздействия на запекание "
"навигационной сетки или ограничения скорости агентов, управляемых для "
"избегания."

msgid ""
"An obstacle needs a navigation map and outline [member vertices] defined to "
"work correctly. The outlines can not cross or overlap and are restricted to a "
"plane projection. This means the y-axis of the vertices is ignored, instead "
"the obstacle's global y-axis position is used for placement. The projected "
"shape is extruded by the obstacles height along the y-axis.\n"
"Obstacles can be included in the navigation mesh baking process when [member "
"affect_navigation_mesh] is enabled. They do not add walkable geometry, "
"instead their role is to discard other source geometry inside the shape. This "
"can be used to prevent navigation mesh from appearing in unwanted places, "
"e.g. inside \"solid\" geometry or on top of it. If [member "
"carve_navigation_mesh] is enabled the baked shape will not be affected by "
"offsets of the navigation mesh baking, e.g. the agent radius.\n"
"With [member avoidance_enabled] the obstacle can constrain the avoidance "
"velocities of avoidance using agents. If the obstacle's vertices are wound in "
"clockwise order, avoidance agents will be pushed in by the obstacle, "
"otherwise, avoidance agents will be pushed out. Obstacles using vertices and "
"avoidance can warp to a new position but should not be moved every single "
"frame as each change requires a rebuild of the avoidance map."
msgstr ""
"Для корректной работы препятствию необходимо определить навигационную карту и "
"контур [member vertices]. Контуры не могут пересекаться или накладываться "
"друг на друга и ограничены проекцией плоскости. Это означает, что ось Y "
"вершин игнорируется, вместо этого для размещения используется глобальная "
"позиция препятствия по оси Y. Спроецированная форма выдавливается высотой "
"препятствия вдоль оси Y.\n"
"Препятствия могут быть включены в процесс запекания навигационной сетки, "
"когда включен [member affect_navigation_mesh]. Они не добавляют проходимую "
"геометрию, вместо этого их роль заключается в отбрасывании другой исходной "
"геометрии внутри формы. Это можно использовать для предотвращения появления "
"навигационной сетки в нежелательных местах, например, внутри «сплошной» "
"геометрии или поверх нее. Если включен [member carve_navigation_mesh], "
"запеченная форма не будет затронута смещениями запекания навигационной сетки, "
"например, радиусом агента.\n"
"С [member Avoidance_enabled] препятствие может ограничивать скорости "
"избегания агентов избегания. Если вершины препятствия закручены по часовой "
"стрелке, агенты избегания будут выталкиваться препятствием, в противном "
"случае агенты избегания будут выталкиваться. Препятствия, использующие "
"вершины и избегание, могут деформироваться в новое положение, но не должны "
"перемещаться в каждом кадре, поскольку каждое изменение требует перестройки "
"карты избегания."

msgid "Returns the [RID] of this obstacle on the [NavigationServer3D]."
msgstr "Возвращает [RID] этого препятствия на [NavigationServer3D]."

msgid ""
"If enabled and parsed in a navigation mesh baking process the obstacle will "
"discard source geometry inside its [member vertices] and [member height] "
"defined shape."
msgstr ""
"Если включено и проанализировано в процессе запекания навигационной сетки, "
"препятствие отбросит исходную геометрию внутри его [member vertices] и "
"[member height], определенных в форме."

msgid ""
"Sets the obstacle height used in 2D avoidance. 2D avoidance using agent's "
"ignore obstacles that are below or above them."
msgstr ""
"Устанавливает высоту препятствия, используемую при 2D-избегании. 2D-избегание "
"с использованием игнорирования агентом препятствий, которые находятся ниже "
"или выше него."

msgid ""
"If [code]true[/code] the obstacle affects 3D avoidance using agent's with "
"obstacle [member radius].\n"
"If [code]false[/code] the obstacle affects 2D avoidance using agent's with "
"both obstacle [member vertices] as well as obstacle [member radius]."
msgstr ""
"Если [code]true[/code], препятствие влияет на 3D-избегание с использованием "
"агентов с препятствием [member radius].\n"
"Если [code]false[/code], препятствие влияет на 2D-избегание с использованием "
"агентов как с препятствием [member vertices], так и с препятствием [member "
"radius]."

msgid "Provides parameters for 2D navigation path queries."
msgstr "Предоставляет параметры для запросов пути 2D-навигации."

msgid ""
"By changing various properties of this object, such as the start and target "
"position, you can configure path queries to the [NavigationServer2D]."
msgstr ""
"Изменяя различные свойства этого объекта, такие как начальная и целевая "
"позиция, вы можете настроить запросы пути к [NavigationServer2D]."

msgid "Using NavigationPathQueryObjects"
msgstr "Использовать NavigationPathQueryObjects"

msgid ""
"The list of region [RID]s that will be excluded from the path query. Use "
"[method NavigationRegion2D.get_rid] to get the [RID] associated with a "
"[NavigationRegion2D] node.\n"
"[b]Note:[/b] The returned array is copied and any changes to it will not "
"update the original property value. To update the value you need to modify "
"the returned array, and then set it to the property again."
msgstr ""
"Список [RID] регионов, которые будут исключены из запроса пути. Используйте "
"[method NavigationRegion2D.get_rid], чтобы получить [RID], связанный с узлом "
"[NavigationRegion2D].\n"
"[b]Примечание:[/b] Возвращаемый массив копируется, и любые изменения в нем не "
"обновят исходное значение свойства. Чтобы обновить значение, вам необходимо "
"изменить возвращаемый массив, а затем снова задать его для свойства."

msgid ""
"The list of region [RID]s that will be included by the path query. Use "
"[method NavigationRegion2D.get_rid] to get the [RID] associated with a "
"[NavigationRegion2D] node. If left empty all regions are included. If a "
"region ends up being both included and excluded at the same time it will be "
"excluded.\n"
"[b]Note:[/b] The returned array is copied and any changes to it will not "
"update the original property value. To update the value you need to modify "
"the returned array, and then set it to the property again."
msgstr ""
"Список [RID] регионов, которые будут включены в запрос пути. Используйте "
"[method NavigationRegion2D.get_rid], чтобы получить [RID], связанный с узлом "
"[NavigationRegion2D]. Если оставить пустым, будут включены все регионы. Если "
"регион окажется и включенным, и исключенным одновременно, он будет исключен.\n"
"[b]Примечание:[/b] Возвращаемый массив копируется, и любые изменения в нем не "
"обновят исходное значение свойства. Чтобы обновить значение, вам необходимо "
"изменить возвращаемый массив, а затем снова задать его для свойства."

msgid "The navigation map [RID] used in the path query."
msgstr "Навигационная карта [RID], используемая в запросе пути."

msgid "Additional information to include with the navigation path."
msgstr "Дополнительная информация для включения в навигационный путь."

msgid "The navigation layers the query will use (as a bitmask)."
msgstr ""
"Слои навигации, которые будет использовать запрос (в виде битовой маски)."

msgid ""
"The maximum allowed length of the returned path in world units. A path will "
"be clipped when going over this length. A value of [code]0[/code] or below "
"counts as disabled."
msgstr ""
"Максимально допустимая длина возвращаемого пути в мировых единицах. При "
"превышении этой длины путь будет обрезан. Значение [code]0[/code] или ниже "
"считается отключенным."

msgid ""
"The maximum allowed radius in world units that the returned path can be from "
"the path start. The path will be clipped when going over this radius. A value "
"of [code]0[/code] or below counts as disabled.\n"
"[b]Note:[/b] This will perform a circle shaped clip operation on the path "
"with the first path position being the circle's center position."
msgstr ""
"Максимально допустимый радиус возвращаемого пути от начала пути (в мировых "
"единицах). Путь будет обрезан при превышении этого радиуса. Значение [code]0[/"
"code] или ниже считается отключенным.\n"
"[b]Примечание:[/b] При этом будет выполнена операция обрезания пути по "
"окружности, при этом первая точка пути будет соответствовать центру "
"окружности."

msgid "The pathfinding start position in global coordinates."
msgstr "Начальная позиция поиска пути в глобальных координатах."

msgid "The pathfinding target position in global coordinates."
msgstr "Положение цели поиска пути в глобальных координатах."

msgid "The path query uses the default A* pathfinding algorithm."
msgstr "Запрос пути использует алгоритм поиска пути A* по умолчанию."

msgid ""
"Applies a funnel algorithm to the raw path corridor found by the pathfinding "
"algorithm. This will result in the shortest path possible inside the path "
"corridor. This postprocessing very much depends on the navigation mesh "
"polygon layout and the created corridor. Especially tile- or gridbased "
"layouts can face artificial corners with diagonal movement due to a jagged "
"path corridor imposed by the cell shapes."
msgstr ""
"Применяет алгоритм funnel к сырому коридору пути, найденному алгоритмом "
"поиска пути. Это даст кратчайший возможный путь внутри коридора. Данная "
"постобработка сильно зависит от структуры полигонов навигационной сетки и "
"созданного коридора. Особенно в тайловых или сеточных разбиениях могут "
"возникать искусственные углы при диагональном перемещении из-за неровного "
"коридора пути, обусловленного формами ячеек."

msgid ""
"Centers every path position in the middle of the traveled navigation mesh "
"polygon edge. This creates better paths for tile- or gridbased layouts that "
"restrict the movement to the cells center."
msgstr ""
"Центрирует каждую позицию пути в середине пройденного края полигона "
"навигационной сетки. Это создает лучшие пути для макетов на основе тайлов или "
"сетки, которые ограничивают движение центром ячеек."

msgid ""
"Applies no postprocessing and returns the raw path corridor as found by the "
"pathfinding algorithm."
msgstr ""
"Не применяет постобработку и возвращает необработанный коридор пути, "
"найденный алгоритмом поиска пути."

msgid "Don't include any additional metadata about the returned path."
msgstr "Не включайте никаких дополнительных метаданных о возвращаемом пути."

msgid ""
"Include the type of navigation primitive (region or link) that each point of "
"the path goes through."
msgstr ""
"Укажите тип навигационного примитива (регион или ссылка), через который "
"проходит каждая точка пути."

msgid ""
"Include the [RID]s of the regions and links that each point of the path goes "
"through."
msgstr ""
"Включите [RID] регионов и ссылок, через которые проходит каждая точка пути."

msgid ""
"Include the [code]ObjectID[/code]s of the [Object]s which manage the regions "
"and links each point of the path goes through."
msgstr ""
"Включите [code]ObjectID[/code] [Object], которые управляют областями и "
"связями, через которые проходит каждая точка пути."

msgid "Include all available metadata about the returned path."
msgstr "Включите все доступные метаданные о возвращаемом пути."

msgid "Provides parameters for 3D navigation path queries."
msgstr "Предоставляет параметры для запросов пути 3D-навигации."

msgid ""
"By changing various properties of this object, such as the start and target "
"position, you can configure path queries to the [NavigationServer3D]."
msgstr ""
"Изменяя различные свойства этого объекта, такие как начальная и конечная "
"позиция, вы можете настроить запросы пути к [NavigationServer3D]."

msgid ""
"The list of region [RID]s that will be excluded from the path query. Use "
"[method NavigationRegion3D.get_rid] to get the [RID] associated with a "
"[NavigationRegion3D] node.\n"
"[b]Note:[/b] The returned array is copied and any changes to it will not "
"update the original property value. To update the value you need to modify "
"the returned array, and then set it to the property again."
msgstr ""
"Список [RID] регионов, которые будут исключены из запроса пути. Используйте "
"[method NavigationRegion3D.get_rid], чтобы получить [RID], связанный с узлом "
"[NavigationRegion3D].\n"
"[b]Примечание:[/b] Возвращаемый массив копируется, и любые изменения в нем не "
"обновят исходное значение свойства. Чтобы обновить значение, вам нужно "
"изменить возвращаемый массив, а затем снова задать его для свойства."

msgid ""
"The list of region [RID]s that will be included by the path query. Use "
"[method NavigationRegion3D.get_rid] to get the [RID] associated with a "
"[NavigationRegion3D] node. If left empty all regions are included. If a "
"region ends up being both included and excluded at the same time it will be "
"excluded.\n"
"[b]Note:[/b] The returned array is copied and any changes to it will not "
"update the original property value. To update the value you need to modify "
"the returned array, and then set it to the property again."
msgstr ""
"Список [RID] регионов, которые будут включены в запрос пути. Используйте "
"[method NavigationRegion3D.get_rid], чтобы получить [RID], связанный с узлом "
"[NavigationRegion3D]. Если оставить пустым, будут включены все регионы. Если "
"регион окажется и включенным, и исключенным одновременно, он будет исключен.\n"
"[b]Примечание:[/b] Возвращаемый массив копируется, и любые изменения в нем не "
"обновят исходное значение свойства. Чтобы обновить значение, вам необходимо "
"изменить возвращаемый массив, а затем снова задать его для свойства."

msgid ""
"The maximum allowed radius in world units that the returned path can be from "
"the path start. The path will be clipped when going over this radius. A value "
"of [code]0[/code] or below counts as disabled.\n"
"[b]Note:[/b] This will perform a sphere shaped clip operation on the path "
"with the first path position being the sphere's center position."
msgstr ""
"Максимально допустимый радиус возвращаемого пути от начала пути (в мировых "
"единицах). При превышении этого радиуса путь будет обрезан. Значение [code]0[/"
"code] или ниже считается отключенным.\n"
"[b]Примечание:[/b] При этом будет выполнена операция обрезания пути по форме "
"сферы, при этом первая точка пути будет соответствовать центру сферы."

msgid "Represents the result of a 2D pathfinding query."
msgstr "Представляет результат запроса на поиск 2D-пути."

msgid ""
"This class stores the result of a 2D navigation path query from the "
"[NavigationServer2D]."
msgstr ""
"Этот класс хранит результат запроса пути 2D-навигации из [NavigationServer2D]."

msgid ""
"Reset the result object to its initial state. This is useful to reuse the "
"object across multiple queries."
msgstr ""
"Сбросить объект результата в исходное состояние. Это полезно для повторного "
"использования объекта в нескольких запросах."

msgid ""
"The resulting path array from the navigation query. All path array positions "
"are in global coordinates. Without customized query parameters this is the "
"same path as returned by [method NavigationServer2D.map_get_path]."
msgstr ""
"Результирующий массив путей из навигационного запроса. Все позиции массива "
"путей находятся в глобальных координатах. Без настраиваемых параметров "
"запроса это тот же путь, который возвращается [method "
"NavigationServer2D.map_get_path]."

msgid "Returns the length of the path."
msgstr "Возвращает длину пути."

msgid ""
"The [code]ObjectID[/code]s of the [Object]s which manage the regions and "
"links each point of the path goes through."
msgstr ""
"[code]ObjectID[/code] [Object], которые управляют регионами и связями, через "
"которые проходит каждая точка пути."

msgid ""
"The [RID]s of the regions and links that each point of the path goes through."
msgstr "[RID] регионов и связей, через которые проходит каждая точка пути."

msgid ""
"The type of navigation primitive (region or link) that each point of the path "
"goes through."
msgstr ""
"Тип навигационного примитива (регион или ссылка), через который проходит "
"каждая точка пути."

msgid "This segment of the path goes through a region."
msgstr "Этот участок пути проходит через регион."

msgid "This segment of the path goes through a link."
msgstr "Этот участок пути проходит через ссылку."

msgid "Represents the result of a 3D pathfinding query."
msgstr "Представляет собой результат запроса на поиск трехмерного пути."

msgid ""
"This class stores the result of a 3D navigation path query from the "
"[NavigationServer3D]."
msgstr ""
"Этот класс хранит результат запроса пути трехмерной навигации из "
"[NavigationServer3D]."

msgid ""
"The resulting path array from the navigation query. All path array positions "
"are in global coordinates. Without customized query parameters this is the "
"same path as returned by [method NavigationServer3D.map_get_path]."
msgstr ""
"Результирующий массив путей из навигационного запроса. Все позиции массива "
"путей находятся в глобальных координатах. Без настраиваемых параметров "
"запроса это тот же путь, который возвращается [method "
"NavigationServer3D.map_get_path]."

msgid ""
"A 2D navigation mesh that describes a traversable surface for pathfinding."
msgstr ""
"Двумерная навигационная сетка, описывающая проходимую поверхность для поиска "
"пути."

msgid ""
"A navigation mesh can be created either by baking it with the help of the "
"[NavigationServer2D], or by adding vertices and convex polygon indices arrays "
"manually.\n"
"To bake a navigation mesh at least one outline needs to be added that defines "
"the outer bounds of the baked area.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var new_navigation_mesh = NavigationPolygon.new()\n"
"var bounding_outline = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), "
"Vector2(50, 50), Vector2(50, 0)])\n"
"new_navigation_mesh.add_outline(bounding_outline)\n"
"NavigationServer2D.bake_from_source_geometry_data(new_navigation_mesh, "
"NavigationMeshSourceGeometryData2D.new());\n"
"$NavigationRegion2D.navigation_polygon = new_navigation_mesh\n"
"[/gdscript]\n"
"[csharp]\n"
"var newNavigationMesh = new NavigationPolygon();\n"
"Vector2[] boundingOutline = [new Vector2(0, 0), new Vector2(0, 50), new "
"Vector2(50, 50), new Vector2(50, 0)];\n"
"newNavigationMesh.AddOutline(boundingOutline);\n"
"NavigationServer2D.BakeFromSourceGeometryData(newNavigationMesh, new "
"NavigationMeshSourceGeometryData2D());\n"
"GetNode<NavigationRegion2D>(\"NavigationRegion2D\").NavigationPolygon = "
"newNavigationMesh;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Adding vertices and polygon indices manually.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var new_navigation_mesh = NavigationPolygon.new()\n"
"var new_vertices = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), "
"Vector2(50, 50), Vector2(50, 0)])\n"
"new_navigation_mesh.vertices = new_vertices\n"
"var new_polygon_indices = PackedInt32Array([0, 1, 2, 3])\n"
"new_navigation_mesh.add_polygon(new_polygon_indices)\n"
"$NavigationRegion2D.navigation_polygon = new_navigation_mesh\n"
"[/gdscript]\n"
"[csharp]\n"
"var newNavigationMesh = new NavigationPolygon();\n"
"Vector2[] newVertices = [new Vector2(0, 0), new Vector2(0, 50), new "
"Vector2(50, 50), new Vector2(50, 0)];\n"
"newNavigationMesh.Vertices = newVertices;\n"
"int[] newPolygonIndices = [0, 1, 2, 3];\n"
"newNavigationMesh.AddPolygon(newPolygonIndices);\n"
"GetNode<NavigationRegion2D>(\"NavigationRegion2D\").NavigationPolygon = "
"newNavigationMesh;\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Навигационную сетку можно создать либо путем запекания с помощью "
"[NavigationServer2D], либо путем добавления вершин и массивов индексов "
"выпуклых полигонов вручную.\n"
"Для запекания навигационной сетки необходимо добавить как минимум один "
"контур, определяющий внешние границы запекаемой области.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var new_navigation_mesh = NavigationPolygon.new()\n"
"var bounding_outline = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), "
"Vector2(50, 50), Vector2(50, 0)])\n"
"new_navigation_mesh.add_outline(bounding_outline)\n"
"NavigationServer2D.bake_from_source_geometry_data(new_navigation_mesh, "
"NavigationMeshSourceGeometryData2D.new());\n"
"$NavigationRegion2D.navigation_polygon = new_navigation_mesh\n"
"[/gdscript]\n"
"[csharp]\n"
"var newNavigationMesh = new NavigationPolygon();\n"
"Vector2[] boundingOutline = [new Vector2(0, 0), new Vector2(0, 50), new "
"Vector2(50, 50), new Vector2(50, 0)];\n"
"newNavigationMesh.AddOutline(boundingOutline);\n"
"NavigationServer2D.BakeFromSourceGeometryData(newNavigationMesh, new "
"NavigationMeshSourceGeometryData2D());\n"
"GetNode<NavigationRegion2D>(\"NavigationRegion2D\").NavigationPolygon = "
"newNavigationMesh;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Добавление вершин и индексов полигонов вручную.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var new_navigation_mesh = NavigationPolygon.new()\n"
"var new_vertices = PackedVector2Array([Vector2(0, 0), Vector2(0, 50), "
"Vector2(50, 50), Vector2(50, 0)])\n"
"new_navigation_mesh.vertices = new_vertices\n"
"var new_polygon_indices = PackedInt32Array([0, 1, 2, 3])\n"
"new_navigation_mesh.add_polygon(new_polygon_indices)\n"
"$NavigationRegion2D.navigation_polygon = new_navigation_mesh\n"
"[/gdscript]\n"
"[csharp]\n"
"var newNavigationMesh = new NavigationPolygon();\n"
"Vector2[] newVertices = [new Vector2(0, 0), new Vector2(0, 50), new "
"Vector2(50, 50), new Vector2(50, 0)];\n"
"newNavigationMesh.Vertices = newVertices;\n"
"int[] newPolygonIndices = [0, 1, 2, 3];\n"
"newNavigationMesh.AddPolygon(newPolygonIndices);\n"
"GetNode<NavigationRegion2D>(\"NavigationRegion2D\").NavigationPolygon = "
"newNavigationMesh;\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Navigation Polygon 2D Demo"
msgstr "Навигационный полигон 2D Демо"

msgid ""
"Appends a [PackedVector2Array] that contains the vertices of an outline to "
"the internal array that contains all the outlines."
msgstr ""
"Добавляет [PackedVector2Array], содержащий вершины контура, к внутреннему "
"массиву, содержащему все контуры."

msgid ""
"Adds a [PackedVector2Array] that contains the vertices of an outline to the "
"internal array that contains all the outlines at a fixed position."
msgstr ""
"Добавляет [PackedVector2Array], содержащий вершины контура, во внутренний "
"массив, содержащий все контуры в фиксированной позиции."

msgid ""
"Clears the array of the outlines, but it doesn't clear the vertices and the "
"polygons that were created by them."
msgstr ""
"Очищает массив контуров, но не очищает вершины и полигоны, созданные ими."

msgid ""
"Clears the array of polygons, but it doesn't clear the array of outlines and "
"vertices."
msgstr "Очищает массив полигонов, но не очищает массив контуров и вершин."

msgid ""
"Returns the [NavigationMesh] resulting from this navigation polygon. This "
"navigation mesh can be used to update the navigation mesh of a region with "
"the [method NavigationServer3D.region_set_navigation_mesh] API directly."
msgstr ""
"Возвращает [NavigationMesh], полученную из этого навигационного полигона. Эту "
"навигационную сетку можно использовать для обновления навигационной сетки "
"региона напрямую с помощью API [method "
"NavigationServer3D.region_set_navigation_mesh]."

msgid ""
"Returns a [PackedVector2Array] containing the vertices of an outline that was "
"created in the editor or by script."
msgstr ""
"Возвращает [PackedVector2Array], содержащий вершины контура, созданного в "
"редакторе или с помощью скрипта."

msgid ""
"Returns the number of outlines that were created in the editor or by script."
msgstr "Возвращает количество контуров, созданных в редакторе или скриптом."

msgid ""
"Returns whether or not the specified layer of the [member "
"parsed_collision_mask] is enabled, given a [param layer_number] between 1 and "
"32."
msgstr ""
"Возвращает, включен ли указанный слой [member parsed_collision_mask], "
"учитывая [param layer_number] от 1 до 32."

msgid "Returns the count of all polygons."
msgstr "Возвращает количество всех полигонов."

msgid ""
"Returns a [PackedVector2Array] containing all the vertices being used to "
"create the polygons."
msgstr ""
"Возвращает [PackedVector2Array], содержащий все вершины, используемые для "
"создания полигонов."

msgid ""
"Use [method NavigationServer2D.parse_source_geometry_data] and [method "
"NavigationServer2D.bake_from_source_geometry_data] instead."
msgstr ""
"Вместо этого используйте [method "
"NavigationServer2D.parse_source_geometry_data] и [method "
"NavigationServer2D.bake_from_source_geometry_data]."

msgid "Creates polygons from the outlines added in the editor or by script."
msgstr ""
"Создает полигоны из контуров, добавленных в редакторе или с помощью скрипта."

msgid ""
"Removes an outline created in the editor or by script. You have to call "
"[method make_polygons_from_outlines] for the polygons to update."
msgstr ""
"Удаляет контур, созданный в редакторе или скриптом. Для обновления полигонов "
"необходимо вызвать [method make_polygons_from_outlines]."

msgid ""
"Changes an outline created in the editor or by script. You have to call "
"[method make_polygons_from_outlines] for the polygons to update."
msgstr ""
"Изменяет контур, созданный в редакторе или скриптом. Для обновления полигонов "
"необходимо вызвать [method make_polygons_from_outlines]."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member parsed_collision_mask], given a [param layer_number] between 1 and 32."
msgstr ""
"На основе [param value] включает или отключает указанный слой в [member "
"parsed_collision_mask] при заданном [param layer_number] от 1 до 32."

msgid ""
"The distance to erode/shrink the walkable surface when baking the navigation "
"mesh.\n"
"[b]Note:[/b] The radius must be equal or higher than [code]0.0[/code]. If the "
"radius is [code]0.0[/code], it won't be possible to fix invalid outline "
"overlaps and other precision errors during the baking process. As a result, "
"some obstacles may be excluded incorrectly from the final navigation mesh, or "
"may delete the navigation mesh's polygons."
msgstr ""
"Расстояние, на которое будет размываться/сжиматься поверхность, доступная для "
"проходимости, при запекании навигационной сетки.\n"
"[b]Примечание:[/b] Радиус должен быть равен или больше [code]0.0[/code]. Если "
"радиус равен [code]0.0[/code], исправить недопустимые наложения контуров и "
"другие ошибки точности в процессе запекания будет невозможно. В результате "
"некоторые препятствия могут быть некорректно исключены из финальной "
"навигационной сетки или могут привести к удалению полигонов навигационной "
"сетки."

msgid ""
"If the baking [Rect2] has an area the navigation mesh baking will be "
"restricted to its enclosing area."
msgstr ""
"Если запекание [Rect2] имеет область, запекание навигационной сетки будет "
"ограничено ее охватывающей областью."

msgid "The position offset applied to the [member baking_rect] [Rect2]."
msgstr "Смещение позиции, примененное к [member baking_rect] [Rect2]."

msgid ""
"The size of the non-navigable border around the bake bounding area defined by "
"the [member baking_rect] [Rect2].\n"
"In conjunction with the [member baking_rect] the border size can be used to "
"bake tile aligned navigation meshes without the tile edges being shrunk by "
"[member agent_radius]."
msgstr ""
"Размер ненавигируемой границы вокруг ограничивающей области запекания, "
"определяемой [member baking_rect] [Rect2].\n"
"В сочетании с [member baking_rect] размер границы может использоваться для "
"запекания навигационных сеток, выровненных по тайлам, без уменьшения краев "
"тайлов на [member agent_radius]."

msgid ""
"The cell size used to rasterize the navigation mesh vertices. Must match with "
"the cell size on the navigation map."
msgstr ""
"Размер ячейки, используемый для растеризации вершин навигационной сетки. "
"Должен совпадать с размером ячейки на навигационной карте."

msgid ""
"The physics layers to scan for static colliders.\n"
"Only used when [member parsed_geometry_type] is [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS] or [constant PARSED_GEOMETRY_BOTH]."
msgstr ""
"Физические слои для сканирования на предмет статических коллайдеров.\n"
"Используется только когда [member parsed_geometry_type] равен [constant "
"PARSED_GEOMETRY_STATIC_COLLIDERS] или [constant PARSED_GEOMETRY_BOTH]."

msgid ""
"The group name of nodes that should be parsed for baking source geometry.\n"
"Only used when [member source_geometry_mode] is [constant "
"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] or [constant "
"SOURCE_GEOMETRY_GROUPS_EXPLICIT]."
msgstr ""
"Имя группы узлов, которые следует проанализировать для запекания исходной "
"геометрии.\n"
"Используется только когда [member source_geometry_mode] — [constant "
"SOURCE_GEOMETRY_GROUPS_WITH_CHILDREN] или [constant "
"SOURCE_GEOMETRY_GROUPS_EXPLICIT]."

msgid "Convex partitioning that yields navigation mesh with convex polygons."
msgstr ""
"Выпуклое разбиение, дающее навигационную сетку с выпуклыми многоугольниками."

msgid ""
"Triangulation partitioning that yields navigation mesh with triangle polygons."
msgstr ""
"Триангуляционное разбиение, дающее навигационную сетку с треугольными "
"полигонами."

msgid ""
"Parses mesh instances as obstruction geometry. This includes [Polygon2D], "
"[MeshInstance2D], [MultiMeshInstance2D], and [TileMap] nodes.\n"
"Meshes are only parsed when they use a 2D vertices surface format."
msgstr ""
"Анализирует экземпляры сетки как геометрию препятствия. Сюда входят узлы "
"[Polygon2D], [MeshInstance2D], [MultiMeshInstance2D] и [TileMap].\n"
"Сетки анализируются только тогда, когда они используют формат поверхности 2D "
"вершин."

msgid ""
"Parses [StaticBody2D] and [TileMap] colliders as obstruction geometry. The "
"collider should be in any of the layers specified by [member "
"parsed_collision_mask]."
msgstr ""
"Анализирует коллайдеры [StaticBody2D] и [TileMap] как геометрию препятствия. "
"Коллайдер должен находиться в любом из слоев, указанных [member "
"parsed_collision_mask]."

msgid ""
"Scans nodes in a group and their child nodes recursively for geometry. The "
"group is specified by [member source_geometry_group_name]."
msgstr ""
"Сканирует узлы в группе и их дочерние узлы рекурсивно на предмет геометрии. "
"Группа указывается [member source_geometry_group_name]."

msgid ""
"Uses nodes in a group for geometry. The group is specified by [member "
"source_geometry_group_name]."
msgstr ""
"Использует узлы в группе для геометрии. Группа указывается [member "
"source_geometry_group_name]."

msgid ""
"A traversable 2D region that [NavigationAgent2D]s can use for pathfinding."
msgstr ""
"Проходимая 2D-область, которую [NavigationAgent2D] может использовать для "
"поиска пути."

msgid ""
"A traversable 2D region based on a [NavigationPolygon] that "
"[NavigationAgent2D]s can use for pathfinding.\n"
"Two regions can be connected to each other if they share a similar edge. You "
"can set the minimum distance between two vertices required to connect two "
"edges by using [method NavigationServer2D.map_set_edge_connection_margin].\n"
"[b]Note:[/b] Overlapping two regions' navigation polygons is not enough for "
"connecting two regions. They must share a similar edge.\n"
"The pathfinding cost of entering a region from another region can be "
"controlled with the [member enter_cost] value.\n"
"[b]Note:[/b] This value is not added to the path cost when the start position "
"is already inside this region.\n"
"The pathfinding cost of traveling distances inside this region can be "
"controlled with the [member travel_cost] multiplier.\n"
"[b]Note:[/b] This node caches changes to its properties, so if you make "
"changes to the underlying region [RID] in [NavigationServer2D], they will not "
"be reflected in this node's properties."
msgstr ""
"Проходимая 2D-область на основе [NavigationPolygon], которую "
"[NavigationAgent2D]s может использовать для поиска пути.\n"
"Два региона могут быть соединены друг с другом, если они имеют общее ребро. "
"Вы можете установить минимальное расстояние между двумя вершинами, "
"необходимое для соединения двух ребер, с помощью [method "
"NavigationServer2D.map_set_edge_connection_margin].\n"
"[b]Примечание:[/b] Перекрытие навигационных полигонов двух регионов "
"недостаточно для соединения двух регионов. Они должны иметь общее ребро.\n"
"Стоимость поиска пути при входе в регион из другого региона можно "
"контролировать с помощью значения [member enter_cost].\n"
"[b]Примечание:[/b] Это значение не добавляется к стоимости пути, если "
"начальная позиция уже находится внутри этого региона.\n"
"Стоимость поиска пути при перемещении на расстояние внутри этого региона "
"можно контролировать с помощью множителя [member travel_cost].\n"
"[b]Примечание:[/b] Этот узел кэширует изменения своих свойств, поэтому если "
"вы вносите изменения в базовый регион [RID] в [NavigationServer2D], они не "
"будут отражены в свойствах этого узла."

msgid "Using NavigationRegions"
msgstr "Использование NavigationRegions"

msgid ""
"Bakes the [NavigationPolygon]. If [param on_thread] is set to [code]true[/"
"code] (default), the baking is done on a separate thread."
msgstr ""
"Запекает [NavigationPolygon]. Если [param on_thread] установлен в [code]true[/"
"code] (по умолчанию), запекание выполняется в отдельном потоке."

msgid ""
"Returns the axis-aligned rectangle for the region's transformed navigation "
"mesh."
msgstr ""
"Возвращает выровненный по осям прямоугольник для преобразованной "
"навигационной сетки региона."

msgid "Returns the current navigation map [RID] used by this region."
msgstr ""
"Возвращает текущую навигационную карту [RID], используемую в этом регионе."

msgid "Use [method get_rid] instead."
msgstr "Вместо этого используйте [method get_rid]."

msgid "Returns the [RID] of this region on the [NavigationServer2D]."
msgstr "Возвращает [RID] этого региона на [NavigationServer2D]."

msgid ""
"Returns the [RID] of this region on the [NavigationServer2D]. Combined with "
"[method NavigationServer2D.map_get_closest_point_owner] can be used to "
"identify the [NavigationRegion2D] closest to a point on the merged navigation "
"map."
msgstr ""
"Возвращает [RID] этого региона на [NavigationServer2D]. В сочетании с [method "
"NavigationServer2D.map_get_closest_point_owner] может использоваться для "
"определения [NavigationRegion2D], ближайшего к точке на объединенной "
"навигационной карте."

msgid ""
"Returns [code]true[/code] when the [NavigationPolygon] is being baked on a "
"background thread."
msgstr ""
"Возвращает [code]true[/code], когда [NavigationPolygon] запекается в фоновом "
"потоке."

msgid ""
"Sets the [RID] of the navigation map this region should use. By default the "
"region will automatically join the [World2D] default navigation map so this "
"function is only required to override the default map."
msgstr ""
"Устанавливает [RID] навигационной карты, которую должен использовать этот "
"регион. По умолчанию регион автоматически присоединится к навигационной карте "
"по умолчанию [World2D], поэтому эта функция требуется только для "
"переопределения карты по умолчанию."

msgid "Determines if the [NavigationRegion2D] is enabled or disabled."
msgstr "Определяет, включен или отключен [NavigationRegion2D]."

msgid ""
"When pathfinding enters this region's navigation mesh from another regions "
"navigation mesh the [member enter_cost] value is added to the path distance "
"for determining the shortest path."
msgstr ""
"Когда поиск пути входит в навигационную сетку этого региона из навигационной "
"сетки другого региона, значение [member enter_cost] добавляется к расстоянию "
"пути для определения кратчайшего пути."

msgid ""
"A bitfield determining all navigation layers the region belongs to. These "
"navigation layers can be checked upon when requesting a path with [method "
"NavigationServer2D.map_get_path]."
msgstr ""
"Битовое поле, определяющее все навигационные слои, к которым принадлежит "
"регион. Эти навигационные слои можно проверить при запросе пути с помощью "
"[method NavigationServer2D.map_get_path]."

msgid "The [NavigationPolygon] resource to use."
msgstr "Ресурс [NavigationPolygon] для использования."

msgid ""
"When pathfinding moves inside this region's navigation mesh the traveled "
"distances are multiplied with [member travel_cost] for determining the "
"shortest path."
msgstr ""
"При поиске пути внутри навигационной сетки этого региона пройденные "
"расстояния умножаются на [member travel_cost] для определения кратчайшего "
"пути."

msgid ""
"If enabled the navigation region will use edge connections to connect with "
"other navigation regions within proximity of the navigation map edge "
"connection margin."
msgstr ""
"Если этот параметр включен, навигационная область будет использовать краевые "
"соединения для соединения с другими навигационными областями, находящимися в "
"непосредственной близости от границы краевых соединений навигационной карты."

msgid "Emitted when a navigation polygon bake operation is completed."
msgstr "Выдается после завершения операции запекания навигационного полигона."

msgid ""
"Emitted when the used navigation polygon is replaced or changes to the "
"internals of the current navigation polygon are committed."
msgstr ""
"Выдается при замене используемого навигационного полигона или при внесении "
"изменений во внутренние компоненты текущего навигационного полигона."

msgid ""
"A traversable 3D region that [NavigationAgent3D]s can use for pathfinding."
msgstr ""
"Проходимая трехмерная область, которую [NavigationAgent3D] может использовать "
"для поиска пути."

msgid ""
"A traversable 3D region based on a [NavigationMesh] that [NavigationAgent3D]s "
"can use for pathfinding.\n"
"Two regions can be connected to each other if they share a similar edge. You "
"can set the minimum distance between two vertices required to connect two "
"edges by using [method NavigationServer3D.map_set_edge_connection_margin].\n"
"[b]Note:[/b] Overlapping two regions' navigation meshes is not enough for "
"connecting two regions. They must share a similar edge.\n"
"The cost of entering this region from another region can be controlled with "
"the [member enter_cost] value.\n"
"[b]Note:[/b] This value is not added to the path cost when the start position "
"is already inside this region.\n"
"The cost of traveling distances inside this region can be controlled with the "
"[member travel_cost] multiplier.\n"
"[b]Note:[/b] This node caches changes to its properties, so if you make "
"changes to the underlying region [RID] in [NavigationServer3D], they will not "
"be reflected in this node's properties."
msgstr ""
"Проходимая 3D-область на основе [NavigationMesh], которую "
"[NavigationAgent3D]s может использовать для поиска пути.\n"
"Две области могут быть соединены друг с другом, если они имеют схожее ребро. "
"Вы можете установить минимальное расстояние между двумя вершинами, "
"необходимое для соединения двух ребер, с помощью [method "
"NavigationServer3D.map_set_edge_connection_margin].\n"
"[b]Примечание:[/b] Перекрытие навигационных сеток двух областей недостаточно "
"для соединения двух областей. Они должны иметь схожее ребро.\n"
"Стоимость входа в эту область из другой области можно контролировать с "
"помощью значения [member enter_cost].\n"
"[b]Примечание:[/b] Это значение не добавляется к стоимости пути, если "
"начальная позиция уже находится внутри этой области.\n"
"Стоимость перемещения на расстояние внутри этой области можно контролировать "
"с помощью множителя [member travel_cost].\n"
"[b]Примечание:[/b] Этот узел кэширует изменения своих свойств, поэтому если "
"вы вносите изменения в базовую область [RID] в [NavigationServer3D], они не "
"будут отражены в свойствах этого узла."

msgid ""
"Bakes the [NavigationMesh]. If [param on_thread] is set to [code]true[/code] "
"(default), the baking is done on a separate thread. Baking on separate thread "
"is useful because navigation baking is not a cheap operation. When it is "
"completed, it automatically sets the new [NavigationMesh]. Please note that "
"baking on separate thread may be very slow if geometry is parsed from meshes "
"as async access to each mesh involves heavy synchronization. Also, please "
"note that baking on a separate thread is automatically disabled on operating "
"systems that cannot use threads (such as Web with threads disabled)."
msgstr ""
"Выпекает [NavigationMesh]. Если [param on_thread] установлен на [code]true[/"
"code] (по умолчанию), выпекание выполняется в отдельном потоке. Выпекание в "
"отдельном потоке полезно, поскольку выпекание навигации — недешевая операция. "
"После завершения оно автоматически устанавливает новый [NavigationMesh]. "
"Обратите внимание, что выпекание в отдельном потоке может быть очень "
"медленным, если геометрия анализируется из сеток, поскольку асинхронный "
"доступ к каждой сетке подразумевает тяжелую синхронизацию. Также обратите "
"внимание, что выпекание в отдельном потоке автоматически отключается в "
"операционных системах, которые не могут использовать потоки (например, Web с "
"отключенными потоками)."

msgid ""
"Returns the axis-aligned bounding box for the region's transformed navigation "
"mesh."
msgstr ""
"Возвращает выровненный по осям ограничивающий прямоугольник для "
"преобразованной навигационной сетки региона."

msgid "Returns the [RID] of this region on the [NavigationServer3D]."
msgstr "Возвращает [RID] этого региона на [NavigationServer3D]."

msgid ""
"Returns the [RID] of this region on the [NavigationServer3D]. Combined with "
"[method NavigationServer3D.map_get_closest_point_owner] can be used to "
"identify the [NavigationRegion3D] closest to a point on the merged navigation "
"map."
msgstr ""
"Возвращает [RID] этого региона на [NavigationServer3D]. В сочетании с [method "
"NavigationServer3D.map_get_closest_point_owner] может использоваться для "
"определения [NavigationRegion3D], ближайшего к точке на объединенной "
"навигационной карте."

msgid ""
"Returns [code]true[/code] when the [NavigationMesh] is being baked on a "
"background thread."
msgstr ""
"Возвращает [code]true[/code], когда [NavigationMesh] запекается в фоновом "
"потоке."

msgid ""
"Sets the [RID] of the navigation map this region should use. By default the "
"region will automatically join the [World3D] default navigation map so this "
"function is only required to override the default map."
msgstr ""
"Устанавливает [RID] навигационной карты, которую должен использовать этот "
"регион. По умолчанию регион автоматически присоединится к навигационной карте "
"по умолчанию [World3D], поэтому эта функция требуется только для "
"переопределения карты по умолчанию."

msgid "Determines if the [NavigationRegion3D] is enabled or disabled."
msgstr "Определяет, включен или отключен [NavigationRegion3D]."

msgid ""
"A bitfield determining all navigation layers the region belongs to. These "
"navigation layers can be checked upon when requesting a path with [method "
"NavigationServer3D.map_get_path]."
msgstr ""
"Битовое поле, определяющее все навигационные слои, к которым принадлежит "
"регион. Эти навигационные слои можно проверить при запросе пути с помощью "
"[method NavigationServer3D.map_get_path]."

msgid "The [NavigationMesh] resource to use."
msgstr "Ресурс [NavigationMesh] для использования."

msgid "Notifies when the navigation mesh bake operation is completed."
msgstr "Уведомляет о завершении операции запекания навигационной сетки."

msgid "Notifies when the [NavigationMesh] has changed."
msgstr "Уведомляет об изменении [NavigationMesh]."

msgid "A server interface for low-level 2D navigation access."
msgstr "Серверный интерфейс для низкоуровневого доступа к 2D-навигации."

msgid ""
"NavigationServer2D is the server that handles navigation maps, regions and "
"agents. It does not handle A* navigation from [AStar2D] or [AStarGrid2D].\n"
"Maps are divided into regions, which are composed of navigation polygons. "
"Together, they define the traversable areas in the 2D world.\n"
"[b]Note:[/b] Most [NavigationServer2D] changes take effect after the next "
"physics frame and not immediately. This includes all changes made to maps, "
"regions or agents by navigation-related nodes in the scene tree or made "
"through scripts.\n"
"For two regions to be connected to each other, they must share a similar "
"edge. An edge is considered connected to another if both of its two vertices "
"are at a distance less than [code]edge_connection_margin[/code] to the "
"respective other edge's vertex.\n"
"You may assign navigation layers to regions with [method "
"NavigationServer2D.region_set_navigation_layers], which then can be checked "
"upon when requesting a path with [method NavigationServer2D.map_get_path]. "
"This can be used to allow or deny certain areas for some objects.\n"
"To use the collision avoidance system, you may use agents. You can set an "
"agent's target velocity, then the servers will emit a callback with a "
"modified velocity.\n"
"[b]Note:[/b] The collision avoidance system ignores regions. Using the "
"modified velocity directly may move an agent outside of the traversable area. "
"This is a limitation of the collision avoidance system, any more complex "
"situation may require the use of the physics engine.\n"
"This server keeps tracks of any call and executes them during the sync phase. "
"This means that you can request any change to the map, using any thread, "
"without worrying."
msgstr ""
"NavigationServer2D — это сервер, который обрабатывает навигационные карты, "
"регионы и агентов. Он не обрабатывает навигацию A* из [AStar2D] или "
"[AStarGrid2D].\n"
"Карты делятся на регионы, которые состоят из навигационных полигонов. Вместе "
"они определяют проходимую область в 2D-мире.\n"
"[b]Примечание:[/b] Большинство изменений [NavigationServer2D] вступают в силу "
"после следующего физического кадра, а не немедленно. Это включает все "
"изменения, внесенные в карты, регионы или агентов узлами, связанными с "
"навигацией, в дереве сцены или выполненные через скрипты.\n"
"Чтобы два региона были соединены друг с другом, они должны иметь общее ребро. "
"Ребро считается соединенным с другим, если обе его две вершины находятся на "
"расстоянии меньшем, чем [code]edge_connection_margin[/code] до вершины "
"соответствующего другого ребра.\n"
"Вы можете назначить навигационные слои областям с помощью [method "
"NavigationServer2D.region_set_navigation_layers], которые затем можно "
"проверить при запросе пути с помощью [method "
"NavigationServer2D.map_get_path]. Это можно использовать для разрешения или "
"запрета определенных областей для некоторых объектов.\n"
"Чтобы использовать систему избежания столкновений, вы можете использовать "
"агентов. Вы можете установить целевую скорость агента, затем серверы отправят "
"обратный вызов с измененной скоростью.\n"
"[b]Примечание:[/b] Система избежания столкновений игнорирует области. "
"Использование измененной скорости напрямую может переместить агента за "
"пределы проходимой области. Это ограничение системы избежания столкновений, "
"любая более сложная ситуация может потребовать использования физического "
"движка.\n"
"Этот сервер отслеживает все вызовы и выполняет их во время фазы "
"синхронизации. Это означает, что вы можете запросить любое изменение карты, "
"используя любой поток, не беспокоясь."

msgid "Using NavigationServer"
msgstr "Использование NavigationServer"

msgid "Creates the agent."
msgstr "Создает агента."

msgid "Return [code]true[/code] if the specified [param agent] uses avoidance."
msgstr ""
"Верните [code]true[/code], если указанный [param agent] использует избегание "
"(аннулирование)."

msgid ""
"Returns the [code]avoidance_layers[/code] bitmask of the specified [param "
"agent]."
msgstr ""
"Возвращает битовую маску [code]avoidance_layers[/code] указанного [param "
"agent]."

msgid ""
"Returns the [code]avoidance_mask[/code] bitmask of the specified [param "
"agent]."
msgstr ""
"Возвращает битовую маску [code]avoidance_mask[/code] указанного [param agent]."

msgid ""
"Returns the [code]avoidance_priority[/code] of the specified [param agent]."
msgstr "Возвращает [code]avoidance_priority[/code] указанного [param agent]."

msgid ""
"Returns the navigation map [RID] the requested [param agent] is currently "
"assigned to."
msgstr ""
"Возвращает [RID] навигационной карты , которой в данный момент назначен "
"запрошенный [param agent]."

msgid ""
"Returns the maximum number of other agents the specified [param agent] takes "
"into account in the navigation."
msgstr ""
"Возвращает максимальное количество других агентов, которые указанный [param "
"agent] учитывает при навигации."

msgid "Returns the maximum speed of the specified [param agent]."
msgstr "Возвращает максимальную скорость указанного [param agent]."

msgid ""
"Returns the maximum distance to other agents the specified [param agent] "
"takes into account in the navigation."
msgstr ""
"Возвращает максимальное расстояние до других агентов, которое указанный "
"[param agent] учитывает при навигации."

msgid "Returns [code]true[/code] if the specified [param agent] is paused."
msgstr ""
"Возвращает [code]true[/code], если указанный [param agent] приостановлен."

msgid "Returns the position of the specified [param agent] in world space."
msgstr "Возвращает позицию указанного [param agent] в мировом пространстве."

msgid "Returns the radius of the specified [param agent]."
msgstr "Возвращает радиус указанного [param agent]."

msgid ""
"Returns the minimal amount of time for which the specified [param agent]'s "
"velocities that are computed by the simulation are safe with respect to other "
"agents."
msgstr ""
"Возвращает минимальное количество времени, в течение которого скорости "
"указанного [param agent], вычисленные при моделировании, безопасны по "
"отношению к другим агентам."

msgid ""
"Returns the minimal amount of time for which the specified [param agent]'s "
"velocities that are computed by the simulation are safe with respect to "
"static avoidance obstacles."
msgstr ""
"Возвращает минимальное количество времени, в течение которого скорости "
"указанного [param agent], вычисленные при моделировании, безопасны по "
"отношению к статическим препятствиям для избегания."

msgid "Returns the velocity of the specified [param agent]."
msgstr "Возвращает скорость указанного [param agent]."

msgid ""
"Return [code]true[/code] if the specified [param agent] has an avoidance "
"callback."
msgstr ""
"Верните [code]true[/code], если указанный [param agent] имеет обратный вызов "
"для избегания."

msgid "Returns [code]true[/code] if the map got changed the previous frame."
msgstr ""
"Возвращает [code]true[/code], если карта была изменена в предыдущем кадре."

msgid ""
"Sets the callback [Callable] that gets called after each avoidance processing "
"step for the [param agent]. The calculated [code]safe_velocity[/code] will be "
"dispatched with a signal to the object just before the physics calculations.\n"
"[b]Note:[/b] Created callbacks are always processed independently of the "
"SceneTree state as long as the agent is on a navigation map and not freed. To "
"disable the dispatch of a callback from an agent use [method "
"agent_set_avoidance_callback] again with an empty [Callable]."
msgstr ""
"Устанавливает обратный вызов [Callable], который вызывается после каждого "
"шага обработки избегания для [param agent]. Вычисленный [code]safe_velocity[/"
"code] будет отправлен с сигналом объекту непосредственно перед физическими "
"расчетами.\n"
"[b]Примечание:[/b] Созданные обратные вызовы всегда обрабатываются независимо "
"от состояния SceneTree, пока агент находится на навигационной карте и не "
"освобожден. Чтобы отключить отправку обратного вызова от агента, снова "
"используйте [method agent_set_avoidance_callback] с пустым [Callable]."

msgid ""
"If [param enabled] is [code]true[/code], the specified [param agent] uses "
"avoidance."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], указанный [param "
"agent] использует избегание."

msgid "Set the agent's [code]avoidance_layers[/code] bitmask."
msgstr "Установите битовую маску агента [code]avoidance_layers[/code]."

msgid "Set the agent's [code]avoidance_mask[/code] bitmask."
msgstr "Установите битовую маску [code]avoidance_mask[/code] агента."

msgid ""
"Set the agent's [code]avoidance_priority[/code] with a [param priority] "
"between 0.0 (lowest priority) to 1.0 (highest priority).\n"
"The specified [param agent] does not adjust the velocity for other agents "
"that would match the [code]avoidance_mask[/code] but have a lower "
"[code]avoidance_priority[/code]. This in turn makes the other agents with "
"lower priority adjust their velocities even more to avoid collision with this "
"agent."
msgstr ""
"Установите [code]avoidance_priority[/code] агента с [param priority] от 0,0 "
"(самый низкий приоритет) до 1,0 (самый высокий приоритет).\n"
"Указанный [param agent] не корректирует скорость для других агентов, которые "
"соответствуют [code]avoidance_mask[/code], но имеют более низкий "
"[code]avoidance_priority[/code]. Это, в свою очередь, заставляет других "
"агентов с более низким приоритетом корректировать свои скорости еще больше, "
"чтобы избежать столкновения с этим агентом."

msgid "Puts the agent in the map."
msgstr "Размещает агента на карте."

msgid ""
"Sets the maximum number of other agents the agent takes into account in the "
"navigation. The larger this number, the longer the running time of the "
"simulation. If the number is too low, the simulation will not be safe."
msgstr ""
"Устанавливает максимальное количество других агентов, которые агент учитывает "
"при навигации. Чем больше это число, тем дольше время выполнения симуляции. "
"Если число слишком мало, симуляция не будет безопасной."

msgid "Sets the maximum speed of the agent. Must be positive."
msgstr "Устанавливает максимальную скорость агента. Должна быть положительной."

msgid ""
"Sets the maximum distance to other agents this agent takes into account in "
"the navigation. The larger this number, the longer the running time of the "
"simulation. If the number is too low, the simulation will not be safe."
msgstr ""
"Устанавливает максимальное расстояние до других агентов, которое этот агент "
"учитывает при навигации. Чем больше это число, тем дольше время выполнения "
"симуляции. Если число слишком мало, симуляция не будет безопасной."

msgid ""
"If [param paused] is [code]true[/code] the specified [param agent] will not "
"be processed. For example, it will not calculate avoidance velocities or "
"receive avoidance callbacks."
msgstr ""
"Если [param paused] равно [code]true[/code], указанный [param agent] не будет "
"обработан. Например, он не будет рассчитывать скорости уклонения или получать "
"обратные вызовы уклонения."

msgid "Sets the position of the agent in world space."
msgstr "Устанавливает положение агента в мировом пространстве."

msgid "Sets the radius of the agent."
msgstr "Устанавливает радиус действия агента."

msgid ""
"The minimal amount of time for which the agent's velocities that are computed "
"by the simulation are safe with respect to other agents. The larger this "
"number, the sooner this agent will respond to the presence of other agents, "
"but the less freedom this agent has in choosing its velocities. A too high "
"value will slow down agents movement considerably. Must be positive."
msgstr ""
"Минимальное количество времени, в течение которого скорости агента, "
"вычисленные симуляцией, безопасны по отношению к другим агентам. Чем больше "
"это число, тем скорее этот агент отреагирует на присутствие других агентов, "
"но тем меньше у него свободы в выборе своих скоростей. Слишком большое "
"значение значительно замедлит движение агентов. Должно быть положительным."

msgid ""
"The minimal amount of time for which the agent's velocities that are computed "
"by the simulation are safe with respect to static avoidance obstacles. The "
"larger this number, the sooner this agent will respond to the presence of "
"static avoidance obstacles, but the less freedom this agent has in choosing "
"its velocities. A too high value will slow down agents movement considerably. "
"Must be positive."
msgstr ""
"Минимальное количество времени, в течение которого скорости агента, "
"вычисленные симуляцией, безопасны относительно статических препятствий для "
"избегания. Чем больше это число, тем скорее этот агент отреагирует на наличие "
"статических препятствий для избегания, но тем меньше у этого агента свободы в "
"выборе своих скоростей. Слишком большое значение значительно замедлит "
"движение агентов. Должно быть положительным."

msgid ""
"Sets [param velocity] as the new wanted velocity for the specified [param "
"agent]. The avoidance simulation will try to fulfill this velocity if "
"possible but will modify it to avoid collision with other agent's and "
"obstacles. When an agent is teleported to a new position far away use [method "
"agent_set_velocity_forced] instead to reset the internal velocity state."
msgstr ""
"Устанавливает [param velocity] как новую желаемую скорость для указанного "
"[param agent]. Моделирование избегания попытается достичь этой скорости, если "
"это возможно, но изменит ее, чтобы избежать столкновения с другими агентами и "
"препятствиями. Когда агент телепортируется в новое положение далеко, "
"используйте [method agent_set_velocity_forced] вместо этого, чтобы сбросить "
"внутреннее состояние скорости."

msgid ""
"Replaces the internal velocity in the collision avoidance simulation with "
"[param velocity] for the specified [param agent]. When an agent is teleported "
"to a new position far away this function should be used in the same frame. If "
"called frequently this function can get agents stuck."
msgstr ""
"Заменяет внутреннюю скорость в моделировании избегания столкновений на [param "
"velocity] для указанного [param agent]. Когда агент телепортируется в новое "
"положение далеко, эта функция должна использоваться в том же кадре. При "
"частом вызове эта функция может привести к застреванию агентов."

msgid ""
"Bakes the provided [param navigation_polygon] with the data from the provided "
"[param source_geometry_data]. After the process is finished the optional "
"[param callback] will be called."
msgstr ""
"Запекает предоставленный [param navigation_polygon] с данными из "
"предоставленного [param source_geometry_data]. После завершения процесса "
"будет вызван необязательный [param callback]."

msgid ""
"Bakes the provided [param navigation_polygon] with the data from the provided "
"[param source_geometry_data] as an async task running on a background thread. "
"After the process is finished the optional [param callback] will be called."
msgstr ""
"Запекает предоставленный [param navigation_polygon] с данными из "
"предоставленного [param source_geometry_data] как асинхронную задачу, "
"работающую в фоновом потоке. После завершения процесса будет вызван "
"необязательный [param callback]."

msgid "Destroys the given RID."
msgstr "Уничтожает указанный RID."

msgid "Returns [code]true[/code] when the NavigationServer has debug enabled."
msgstr "Возвращает [code]true[/code], когда NavigationServer включает отладку."

msgid ""
"Returns all created navigation map [RID]s on the NavigationServer. This "
"returns both 2D and 3D created navigation maps as there is technically no "
"distinction between them."
msgstr ""
"Возвращает все созданные навигационные карты [RID] на NavigationServer. Это "
"возвращает как 2D, так и 3D созданные навигационные карты, поскольку между "
"ними нет технического различия."

msgid "Returns information about the current state of the NavigationServer."
msgstr "Возвращает информацию о текущем состоянии NavigationServer."

msgid ""
"Returns [code]true[/code] when the provided navigation polygon is being baked "
"on a background thread."
msgstr ""
"Возвращает [code]true[/code], когда предоставленный навигационный полигон "
"запекается в фоновом потоке."

msgid "Create a new link between two positions on a map."
msgstr "Создайте новую связь (Link) между двумя позициями на карте."

msgid "Returns [code]true[/code] if the specified [param link] is enabled."
msgstr "Возвращает [code]true[/code], если указанная [param link] включена."

msgid "Returns the ending position of this [param link]."
msgstr "Возвращает конечную позицию [param link]."

msgid "Returns the enter cost of this [param link]."
msgstr "Возвращает входную стоимость этого [param link]."

msgid ""
"Returns the current iteration ID of the navigation link. Every time the "
"navigation link changes and synchronizes, the iteration ID increases. An "
"iteration ID of [code]0[/code] means the navigation link has never "
"synchronized.\n"
"[b]Note:[/b] The iteration ID will wrap around to [code]1[/code] after "
"reaching its range limit."
msgstr ""
"Возвращает текущий идентификатор итерации навигационной ссылки. Каждый раз, "
"когда навигационная ссылка изменяется и синхронизируется, идентификатор "
"итерации увеличивается. Идентификатор итерации [code]0[/code] означает, что "
"навигационная ссылка никогда не синхронизировалась.\n"
"[b]Примечание:[/b] Идентификатор итерации вернется к [code]1[/code] после "
"достижения предела диапазона."

msgid ""
"Returns the navigation map [RID] the requested [param link] is currently "
"assigned to."
msgstr ""
"Возвращает навигационную карту [RID], которой в данный момент назначена "
"запрошенная [param link]."

msgid "Returns the navigation layers for this [param link]."
msgstr "Возвращает слои навигации для этого [param link]."

msgid "Returns the [code]ObjectID[/code] of the object which manages this link."
msgstr ""
"Возвращает [code]ObjectID[/code] объекта, который управляет этой ссылкой."

msgid "Returns the starting position of this [param link]."
msgstr "Возвращает начальную позицию этого [param link]."

msgid "Returns the travel cost of this [param link]."
msgstr "Возвращает стоимость поездки по этому [param link]."

msgid "Returns whether this [param link] can be travelled in both directions."
msgstr "Возвращает, можно ли перемещаться по [param link] в обоих направлениях."

msgid "Sets whether this [param link] can be travelled in both directions."
msgstr ""
"Устанавливает, можно ли перемещаться по этой [param link] в обоих "
"направлениях."

msgid ""
"If [param enabled] is [code]true[/code], the specified [param link] will "
"contribute to its current navigation map."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], указанная [param link] "
"будет добавлена к текущей навигационной карте."

msgid "Sets the exit position for the [param link]."
msgstr "Устанавливает позицию выхода для [param link]."

msgid "Sets the [param enter_cost] for this [param link]."
msgstr "Устанавливает [param enter_cost] для этого [param link]."

msgid "Sets the navigation map [RID] for the link."
msgstr "Устанавливает навигационную карту [RID] для ссылки."

msgid ""
"Set the links's navigation layers. This allows selecting links from a path "
"request (when using [method NavigationServer2D.map_get_path])."
msgstr ""
"Установить навигационные слои ссылок. Это позволяет выбирать ссылки из "
"запроса пути (при использовании [method NavigationServer2D.map_get_path])."

msgid "Set the [code]ObjectID[/code] of the object which manages this link."
msgstr ""
"Установите [code]ObjectID[/code] объекта, который управляет этой ссылкой."

msgid "Sets the entry position for this [param link]."
msgstr "Устанавливает позицию входа для этого [param link]."

msgid "Sets the [param travel_cost] for this [param link]."
msgstr "Устанавливает [param travel_cost] для этого [param link]."

msgid "Create a new map."
msgstr "Создайте новую карту."

msgid ""
"This method is no longer supported, as it is incompatible with asynchronous "
"updates. It can only be used in a single-threaded context, at your own risk."
msgstr ""
"Этот метод больше не поддерживается, так как он несовместим с асинхронными "
"обновлениями. Его можно использовать только в однопоточном контексте, на свой "
"страх и риск."

msgid ""
"This function immediately forces synchronization of the specified navigation "
"[param map] [RID]. By default navigation maps are only synchronized at the "
"end of each physics frame. This function can be used to immediately "
"(re)calculate all the navigation meshes and region connections of the "
"navigation map. This makes it possible to query a navigation path for a "
"changed map immediately and in the same frame (multiple times if needed).\n"
"Due to technical restrictions the current NavigationServer command queue will "
"be flushed. This means all already queued update commands for this physics "
"frame will be executed, even those intended for other maps, regions and "
"agents not part of the specified map. The expensive computation of the "
"navigation meshes and region connections of a map will only be done for the "
"specified map. Other maps will receive the normal synchronization at the end "
"of the physics frame. Should the specified map receive changes after the "
"forced update it will update again as well when the other maps receive their "
"update.\n"
"Avoidance processing and dispatch of the [code]safe_velocity[/code] signals "
"is unaffected by this function and continues to happen for all maps and "
"agents at the end of the physics frame.\n"
"[b]Note:[/b] With great power comes great responsibility. This function "
"should only be used by users that really know what they are doing and have a "
"good reason for it. Forcing an immediate update of a navigation map requires "
"locking the NavigationServer and flushing the entire NavigationServer command "
"queue. Not only can this severely impact the performance of a game but it can "
"also introduce bugs if used inappropriately without much foresight."
msgstr ""
"Эта функция немедленно принудительно синхронизирует указанную навигационную "
"[param map] [RID]. По умолчанию навигационные карты синхронизируются только в "
"конце каждого физического кадра. Эту функцию можно использовать для "
"немедленного (пере)расчета всех навигационных сеток и связей регионов "
"навигационной карты. Это позволяет немедленно запросить навигационный путь "
"для измененной карты в том же кадре (несколько раз, если необходимо).\n"
"Из-за технических ограничений текущая очередь команд NavigationServer будет "
"очищена. Это означает, что будут выполнены все уже поставленные в очередь "
"команды обновления для этого физического кадра, даже те, которые "
"предназначены для других карт, регионов и агентов, не являющихся частью "
"указанной карты. Дорогостоящие вычисления навигационных сеток и связей "
"регионов карты будут выполнены только для указанной карты. Другие карты "
"получат обычную синхронизацию в конце физического кадра. Если указанная карта "
"получит изменения после принудительного обновления, она также обновится "
"снова, когда другие карты получат свое обновление.\n"
"Обработка уклонения и отправка сигналов [code]safe_velocity[/code] не "
"затрагивается этой функцией и продолжает происходить для всех карт и агентов "
"в конце физического кадра.\n"
"[b]Примечание:[/b] С большой силой приходит большая ответственность. Эту "
"функцию должны использовать только пользователи, которые действительно знают, "
"что они делают, и имеют на это вескую причину. Принудительное немедленное "
"обновление навигационной карты требует блокировки NavigationServer и очистки "
"всей очереди команд NavigationServer. Это может не только серьезно повлиять "
"на производительность игры, но и привести к ошибкам, если использовать их "
"ненадлежащим образом без особой дальновидности."

msgid ""
"Returns all navigation agents [RID]s that are currently assigned to the "
"requested navigation [param map]."
msgstr ""
"Возвращает все навигационные агенты [RID], которые в данный момент назначены "
"запрошенной навигационной карте [param map]."

msgid ""
"Returns the map cell size used to rasterize the navigation mesh vertices."
msgstr ""
"Возвращает размер ячейки карты, используемый для растеризации вершин "
"навигационной сетки."

msgid ""
"Returns the navigation mesh surface point closest to the provided [param "
"to_point] on the navigation [param map]."
msgstr ""
"Возвращает точку поверхности навигационной сетки, ближайшую к указанному "
"[param to_point] на навигационной [param map]."

msgid ""
"Returns the owner region RID for the navigation mesh surface point closest to "
"the provided [param to_point] on the navigation [param map]."
msgstr ""
"Возвращает точку поверхности навигационной сетки, ближайшую к указанному "
"[param to_point] на навигационной [param map]."

msgid ""
"Returns the edge connection margin of the map. The edge connection margin is "
"a distance used to connect two regions."
msgstr ""
"Возвращает границу соединения ребер карты. Грань соединения ребер — это "
"расстояние, используемое для соединения двух регионов."

msgid ""
"Returns the current iteration id of the navigation map. Every time the "
"navigation map changes and synchronizes the iteration id increases. An "
"iteration id of 0 means the navigation map has never synchronized.\n"
"[b]Note:[/b] The iteration id will wrap back to 1 after reaching its range "
"limit."
msgstr ""
"Возвращает текущий идентификатор итерации навигационной карты. Каждый раз, "
"когда навигационная карта изменяется и синхронизируется, идентификатор "
"итерации увеличивается. Идентификатор итерации 0 означает, что навигационная "
"карта никогда не синхронизировалась.\n"
"[b]Примечание:[/b] Идентификатор итерации вернется к 1 после достижения "
"предела диапазона."

msgid ""
"Returns the link connection radius of the map. This distance is the maximum "
"range any link will search for navigation mesh polygons to connect to."
msgstr ""
"Возвращает радиус соединения ссылок карты. Это расстояние является "
"максимальным диапазоном, в котором любая ссылка будет искать полигоны "
"навигационной сетки для соединения."

msgid ""
"Returns all navigation link [RID]s that are currently assigned to the "
"requested navigation [param map]."
msgstr ""
"Возвращает все навигационные ссылки [RID]-ов, которые в данный момент "
"назначены запрошенной навигационной карте [param map]."

msgid "Returns map's internal merge rasterizer cell scale."
msgstr "Возвращает внутренний масштаб ячеек растеризатора слияния карты."

msgid ""
"Returns all navigation obstacle [RID]s that are currently assigned to the "
"requested navigation [param map]."
msgstr ""
"Возвращает все навигационные препятствия [RID]-ов, которые в данный момент "
"назначены запрошенной навигационной карте [param map]."

msgid ""
"Returns the navigation path to reach the destination from the origin. [param "
"navigation_layers] is a bitmask of all region navigation layers that are "
"allowed to be in the path."
msgstr ""
"Возвращает путь навигации для достижения пункта назначения из исходной точки. "
"[param navigation_layers] — это битовая маска всех слоев навигации региона, "
"которым разрешено находиться на пути."

msgid ""
"Returns a random position picked from all map region polygons with matching "
"[param navigation_layers].\n"
"If [param uniformly] is [code]true[/code], all map regions, polygons, and "
"faces are weighted by their surface area (slower).\n"
"If [param uniformly] is [code]false[/code], just a random region and a random "
"polygon are picked (faster)."
msgstr ""
"Возвращает случайную позицию, выбранную из всех полигонов области карты с "
"соответствующими [param navigation_layers].\n"
"Если [param uniformly] равен [code]true[/code], все области карты, полигоны и "
"грани взвешиваются по площади их поверхности (медленнее).\n"
"Если [param uniformly] равен [code]false[/code], выбираются только случайная "
"область и случайный полигон (быстрее)."

msgid ""
"Returns all navigation regions [RID]s that are currently assigned to the "
"requested navigation [param map]."
msgstr ""
"Возвращает все регионы навигации [RID], которые в данный момент назначены "
"запрошенной навигационной карте [param map]."

msgid ""
"Returns [code]true[/code] if the [param map] synchronization uses an async "
"process that runs on a background thread."
msgstr ""
"Возвращает [code]true[/code], если синхронизация [param map] использует "
"асинхронный процесс, работающий в фоновом потоке."

msgid ""
"Returns whether the navigation [param map] allows navigation regions to use "
"edge connections to connect with other navigation regions within proximity of "
"the navigation map edge connection margin."
msgstr ""
"Возвращает информацию о том, позволяет ли навигационная [param map] областям "
"навигации использовать граничные соединения для соединения с другими "
"областями навигации в непосредственной близости от границы граничного "
"соединения навигационной карты."

msgid "Returns [code]true[/code] if the map is active."
msgstr "Возвращает [code]true[/code], если карта активна."

msgid "Sets the map active."
msgstr "Делает карту активной."

msgid ""
"Sets the map cell size used to rasterize the navigation mesh vertices. Must "
"match with the cell size of the used navigation meshes."
msgstr ""
"Устанавливает размер ячейки карты, используемый для растеризации вершин "
"навигационной сетки. Должен совпадать с размером ячейки используемых "
"навигационных сеток."

msgid ""
"Set the map edge connection margin used to weld the compatible region edges."
msgstr ""
"Установите границу соединения краев карты, используемую для склеивания краев "
"совместимых регионов."

msgid ""
"Set the map's link connection radius used to connect links to navigation "
"polygons."
msgstr ""
"Установите радиус соединения ссылок карты, используемый для соединения ссылок "
"с навигационными полигонами."

msgid ""
"Set the map's internal merge rasterizer cell scale used to control merging "
"sensitivity."
msgstr ""
"Установите внутренний масштаб ячеек растеризатора слияния карты, используемый "
"для управления чувствительностью слияния."

msgid ""
"If [param enabled] is [code]true[/code] the [param map] synchronization uses "
"an async process that runs on a background thread."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], то синхронизация "
"[param map] использует асинхронный процесс, который выполняется в фоновом "
"потоке."

msgid ""
"Set the navigation [param map] edge connection use. If [param enabled] is "
"[code]true[/code], the navigation map allows navigation regions to use edge "
"connections to connect with other navigation regions within proximity of the "
"navigation map edge connection margin."
msgstr ""
"Установите использование краевого соединения навигации [param map]. Если "
"[param enabled] равно [code]true[/code], навигационная карта позволяет "
"навигационным регионам использовать краевые соединения для соединения с "
"другими навигационными регионами в непосредственной близости от границы "
"краевого соединения навигационной карты."

msgid "Creates a new navigation obstacle."
msgstr "Создает новое навигационное препятствие (obstacle)."

msgid ""
"Returns [code]true[/code] if the provided [param obstacle] has avoidance "
"enabled."
msgstr ""
"Возвращает [code]true[/code], если для предоставленного [param obstacle] "
"включено уклонение."

msgid ""
"Returns the [code]avoidance_layers[/code] bitmask of the specified [param "
"obstacle]."
msgstr ""
"Возвращает битовую маску [code]avoidance_layers[/code] указанного [param "
"obstacle]."

msgid ""
"Returns the navigation map [RID] the requested [param obstacle] is currently "
"assigned to."
msgstr ""
"Возвращает навигационную карту [RID], которой в данный момент назначен "
"запрошенный [param obstacle]."

msgid "Returns [code]true[/code] if the specified [param obstacle] is paused."
msgstr ""
"Возвращает [code]true[/code], если указанное [param obstacle] приостановлено."

msgid "Returns the position of the specified [param obstacle] in world space."
msgstr ""
"Возвращает положение указанного [param obstacle] в мировом пространстве."

msgid "Returns the radius of the specified dynamic [param obstacle]."
msgstr "Возвращает радиус указанного динамического [param obstacle]."

msgid "Returns the velocity of the specified dynamic [param obstacle]."
msgstr "Возвращает скорость указанного динамического [param obstacle]."

msgid "Returns the outline vertices for the specified [param obstacle]."
msgstr "Возвращает вершины контура для указанного [param obstacle]."

msgid ""
"If [param enabled] is [code]true[/code], the provided [param obstacle] "
"affects avoidance using agents."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], предоставленный [param "
"obstacle] влияет на избегание с помощью агентов."

msgid "Set the obstacles's [code]avoidance_layers[/code] bitmask."
msgstr "Установите битовую маску [code]avoidance_layers[/code] препятствий."

msgid "Sets the navigation map [RID] for the obstacle."
msgstr "Устанавливает навигационную карту [RID] для препятствия."

msgid ""
"If [param paused] is [code]true[/code] the specified [param obstacle] will "
"not be processed. For example, it will no longer affect avoidance velocities."
msgstr ""
"Если [param paused] равно [code]true[/code], то указанный [param obstacle] не "
"будет обработан. Например, он больше не будет влиять на скорость уклонения."

msgid "Sets the position of the obstacle in world space."
msgstr "Устанавливает положение препятствия в мировом пространстве."

msgid "Sets the radius of the dynamic obstacle."
msgstr "Устанавливает радиус динамического препятствия."

msgid ""
"Sets [param velocity] of the dynamic [param obstacle]. Allows other agents to "
"better predict the movement of the dynamic obstacle. Only works in "
"combination with the radius of the obstacle."
msgstr ""
"Устанавливает [param velocity] для динамического [param obstacle]. Позволяет "
"другим агентам лучше предсказывать движение динамического препятствия. "
"Работает только в сочетании с радиусом препятствия."

msgid ""
"Sets the outline vertices for the obstacle. If the vertices are winded in "
"clockwise order agents will be pushed in by the obstacle, else they will be "
"pushed out."
msgstr ""
"Устанавливает вершины контура для препятствия. Если вершины закручены по "
"часовой стрелке, агенты будут вталкиваться препятствием, в противном случае "
"они будут выталкиваться."

msgid ""
"Parses the [SceneTree] for source geometry according to the properties of "
"[param navigation_polygon]. Updates the provided [param source_geometry_data] "
"resource with the resulting data. The resource can then be used to bake a "
"navigation mesh with [method bake_from_source_geometry_data]. After the "
"process is finished the optional [param callback] will be called.\n"
"[b]Note:[/b] This function needs to run on the main thread or with a deferred "
"call as the SceneTree is not thread-safe.\n"
"[b]Performance:[/b] While convenient, reading data arrays from [Mesh] "
"resources can affect the frame rate negatively. The data needs to be received "
"from the GPU, stalling the [RenderingServer] in the process. For performance "
"prefer the use of e.g. collision shapes or creating the data arrays entirely "
"in code."
msgstr ""
"Анализирует [SceneTree] на предмет исходной геометрии в соответствии со "
"свойствами [param navigation_polygon]. Обновляет предоставленный ресурс "
"[param source_geometry_data] полученными данными. Затем ресурс можно "
"использовать для запекания навигационной сетки с помощью [method "
"bake_from_source_geometry_data]. После завершения процесса будет вызван "
"необязательный [param callback].\n"
"[b]Примечание:[/b] Эта функция должна запускаться в основном потоке или с "
"отложенным вызовом, поскольку SceneTree не является потокобезопасным.\n"
"[b]Производительность:[/b] Несмотря на удобство, чтение массивов данных из "
"ресурсов [Mesh] может отрицательно повлиять на частоту кадров. Данные должны "
"быть получены от графического процессора, что задерживает [RenderingServer] в "
"процессе. Для производительности предпочтительнее использовать, например, "
"формы столкновений или создавать массивы данных полностью в коде."

msgid ""
"Queries a path in a given navigation map. Start and target position and other "
"parameters are defined through [NavigationPathQueryParameters2D]. Updates the "
"provided [NavigationPathQueryResult2D] result object with the path among "
"other results requested by the query. After the process is finished the "
"optional [param callback] will be called."
msgstr ""
"Запрашивает путь в заданной навигационной карте. Начальная и конечная "
"позиция, а также другие параметры определяются через "
"[NavigationPathQueryParameters2D]. Обновляет предоставленный объект "
"результата [NavigationPathQueryResult2D] путем среди других результатов, "
"запрошенных запросом. После завершения процесса будет вызван необязательный "
"[param callback]."

msgid "Creates a new region."
msgstr "Создает новый регион."

msgid ""
"Returns the axis-aligned rectangle for the [param region]'s transformed "
"navigation mesh."
msgstr ""
"Возвращает выровненный по осям прямоугольник для преобразованной "
"навигационной сетки [param region]."

msgid ""
"Returns the navigation mesh surface point closest to the provided [param "
"to_point] on the navigation [param region]."
msgstr ""
"Возвращает точку поверхности навигационной сетки, ближайшую к указанному "
"[param to_point] в навигационной [param region]."

msgid ""
"Returns the ending point of a connection door. [param connection] is an index "
"between 0 and the return value of [method region_get_connections_count]."
msgstr ""
"Возвращает конечную точку соединения. [param connection] — это индекс между 0 "
"и возвращаемым значением [method region_get_connections_count]."

msgid ""
"Returns the starting point of a connection door. [param connection] is an "
"index between 0 and the return value of [method region_get_connections_count]."
msgstr ""
"Возвращает начальную точку соединения. [param connection] — это индекс между "
"0 и возвращаемым значением [method region_get_connections_count]."

msgid ""
"Returns how many connections this [param region] has with other regions in "
"the map."
msgstr ""
"Возвращает количество связей этого [param region] с другими регионами на "
"карте."

msgid "Returns [code]true[/code] if the specified [param region] is enabled."
msgstr "Возвращает [code]true[/code], если указанный [param region] включен."

msgid "Returns the enter cost of this [param region]."
msgstr "Возвращает стоимость входа для этого [param region]."

msgid ""
"Returns the current iteration ID of the navigation region. Every time the "
"navigation region changes and synchronizes, the iteration ID increases. An "
"iteration ID of [code]0[/code] means the navigation region has never "
"synchronized.\n"
"[b]Note:[/b] The iteration ID will wrap around to [code]1[/code] after "
"reaching its range limit."
msgstr ""
"Возвращает текущий идентификатор итерации региона навигации. Каждый раз, "
"когда регион навигации изменяется и синхронизируется, идентификатор итерации "
"увеличивается. Идентификатор итерации [code]0[/code] означает, что регион "
"навигации никогда не синхронизировался.\n"
"[b]Примечание:[/b] Идентификатор итерации вернется к [code]1[/code] после "
"достижения предела диапазона."

msgid ""
"Returns the navigation map [RID] the requested [param region] is currently "
"assigned to."
msgstr ""
"Возвращает навигационную карту [RID], которой в данный момент назначен "
"запрошенный [param region]."

msgid "Returns the region's navigation layers."
msgstr "Возвращает навигационные слои региона."

msgid ""
"Returns the [code]ObjectID[/code] of the object which manages this region."
msgstr ""
"Возвращает [code]ObjectID[/code] объекта, который управляет этим регионом."

msgid ""
"Returns a random position picked from all region polygons with matching "
"[param navigation_layers].\n"
"If [param uniformly] is [code]true[/code], all region polygons and faces are "
"weighted by their surface area (slower).\n"
"If [param uniformly] is [code]false[/code], just a random polygon and face is "
"picked (faster)."
msgstr ""
"Возвращает случайную позицию, выбранную из всех полигонов региона с "
"соответствующим [param navigation_layers].\n"
"Если [param uniformly] равен [code]true[/code], все полигоны региона и грани "
"взвешиваются по площади их поверхности (медленнее).\n"
"Если [param uniformly] равен [code]false[/code], выбираются только случайный "
"полигон и грань (быстрее)."

msgid "Returns the global transformation of this [param region]."
msgstr "Возвращает глобальное преобразование этого [param region]."

msgid "Returns the travel cost of this [param region]."
msgstr "Возвращает стоимость поездки в этом [param region]."

msgid ""
"Returns [code]true[/code] if the [param region] uses an async synchronization "
"process that runs on a background thread."
msgstr ""
"Возвращает [code]true[/code], если [param region] использует асинхронный "
"процесс синхронизации, работающий в фоновом потоке."

msgid ""
"Returns whether the navigation [param region] is set to use edge connections "
"to connect with other navigation regions within proximity of the navigation "
"map edge connection margin."
msgstr ""
"Возвращает значение, указывающее, настроена ли навигационная область [param "
"region] на использование краевых соединений для соединения с другими "
"навигационными областями в непосредственной близости от границы краевого "
"соединения навигационной карты."

msgid ""
"Returns [code]true[/code] if the provided [param point] in world space is "
"currently owned by the provided navigation [param region]. Owned in this "
"context means that one of the region's navigation mesh polygon faces has a "
"possible position at the closest distance to this point compared to all other "
"navigation meshes from other navigation regions that are also registered on "
"the navigation map of the provided region.\n"
"If multiple navigation meshes have positions at equal distance the navigation "
"region whose polygons are processed first wins the ownership. Polygons are "
"processed in the same order that navigation regions were registered on the "
"NavigationServer.\n"
"[b]Note:[/b] If navigation meshes from different navigation regions overlap "
"(which should be avoided in general) the result might not be what is expected."
msgstr ""
"Возвращает [code]true[/code], если предоставленная [param point] в мировом "
"пространстве в настоящее время принадлежит предоставленной навигации [param "
"region]. Владение в этом контексте означает, что одна из граней полигонов "
"сетки навигации региона имеет возможное положение на самом близком расстоянии "
"к этой точке по сравнению со всеми другими сетками навигации из других "
"регионов навигации, которые также зарегистрированы на навигационной карте "
"предоставленного региона.\n"
"Если несколько сеток навигации имеют положения на равном расстоянии, то "
"навигационная область, полигоны которой обрабатываются первой, выигрывает "
"право собственности. Полигоны обрабатываются в том же порядке, в котором "
"навигационные области были зарегистрированы на NavigationServer.\n"
"[b]Примечание:[/b] Если навигационные сетки из разных регионов навигации "
"перекрываются (чего следует избегать в целом), результат может оказаться не "
"таким, как ожидалось."

msgid ""
"If [param enabled] is [code]true[/code] the specified [param region] will "
"contribute to its current navigation map."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], указанный [param "
"region] будет добавлен к текущей навигационной карте."

msgid "Sets the [param enter_cost] for this [param region]."
msgstr "Устанавливает [param enter_cost] для этого [param region]."

msgid "Sets the map for the region."
msgstr "Устанавливает карту региона."

msgid ""
"Set the region's navigation layers. This allows selecting regions from a path "
"request (when using [method NavigationServer2D.map_get_path])."
msgstr ""
"Установить навигационные слои региона. Это позволяет выбирать регионы из "
"запроса пути (при использовании [method NavigationServer2D.map_get_path])."

msgid "Sets the [param navigation_polygon] for the region."
msgstr "Устанавливает [param navigation_polygon] для региона."

msgid "Set the [code]ObjectID[/code] of the object which manages this region."
msgstr ""
"Установите [code]ObjectID[/code] объекта, который управляет этим регионом."

msgid "Sets the global transformation for the region."
msgstr "Устанавливает глобальную трансформацию для региона."

msgid "Sets the [param travel_cost] for this [param region]."
msgstr "Устанавливает [param travel_cost] для этого [param region]."

msgid ""
"If [param enabled] is [code]true[/code] the [param region] uses an async "
"synchronization process that runs on a background thread."
msgstr ""
"Если [param enabled] равно [code]true[/code], то [param region] использует "
"асинхронный процесс синхронизации, который выполняется в фоновом потоке."

msgid ""
"If [param enabled] is [code]true[/code], the navigation [param region] will "
"use edge connections to connect with other navigation regions within "
"proximity of the navigation map edge connection margin."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], навигационный [param "
"region] будет использовать граничные соединения для соединения с другими "
"навигационными областями в непосредственной близости от границы граничного "
"соединения навигационной карты."

msgid "Control activation of this server."
msgstr "Управляйте активацией этого сервера."

msgid "If [code]true[/code] enables debug mode on the NavigationServer."
msgstr "Если [code]true[/code] включает режим отладки на NavigationServer."

msgid ""
"Returns a simplified version of [param path] with less critical path points "
"removed. The simplification amount is in worlds units and controlled by "
"[param epsilon]. The simplification uses a variant of Ramer-Douglas-Peucker "
"algorithm for curve point decimation.\n"
"Path simplification can be helpful to mitigate various path following issues "
"that can arise with certain agent types and script behaviors. E.g. "
"\"steering\" agents or avoidance in \"open fields\"."
msgstr ""
"Возвращает упрощенную версию [param path] с удаленными менее критическими "
"точками пути. Величина упрощения указывается в единицах измерения мира и "
"контролируется [param epsilon]. Упрощение использует вариант алгоритма Рамера-"
"Дугласа-Пейкера для прореживания точек кривой.\n"
"Упрощение пути может быть полезно для смягчения различных проблем следования "
"пути, которые могут возникнуть с определенными типами агентов и поведением "
"сценария. Например, «рулевые» агенты или избегание в «открытых полях»."

msgid ""
"Creates a new source geometry parser. If a [Callable] is set for the parser "
"with [method source_geometry_parser_set_callback] the callback will be called "
"for every single node that gets parsed whenever [method "
"parse_source_geometry_data] is used."
msgstr ""
"Создает новый источник парсера геометрии. Если [Callable] установлен для "
"парсера с [method source_geometry_parser_set_callback], обратный вызов будет "
"вызван для каждого отдельного узла, который анализируется всякий раз, когда "
"используется [method parse_source_geometry_data]."

msgid ""
"Sets the [param callback] [Callable] for the specific source geometry [param "
"parser]. The [Callable] will receive a call with the following parameters:\n"
"- [code]navigation_mesh[/code] - The [NavigationPolygon] reference used to "
"define the parse settings. Do NOT edit or add directly to the navigation "
"mesh.\n"
"- [code]source_geometry_data[/code] - The "
"[NavigationMeshSourceGeometryData2D] reference. Add custom source geometry "
"for navigation mesh baking to this object.\n"
"- [code]node[/code] - The [Node] that is parsed."
msgstr ""
"Устанавливает [param callback] [Callable] для конкретной исходной геометрии "
"[param parser]. [Callable] получит вызов со следующими параметрами:\n"
"- [code]navigation_mesh[/code] - Ссылка [NavigationPolygon], используемая для "
"определения настроек анализа. НЕ редактируйте и не добавляйте напрямую в "
"навигационную сетку.\n"
"- [code]source_geometry_data[/code] - Ссылка "
"[NavigationMeshSourceGeometryData2D]. Добавьте пользовательскую исходную "
"геометрию для запекания навигационной сетки к этому объекту.\n"
"- [code]node[/code] - [Node], который анализируется."

msgid ""
"Emitted when avoidance debug settings are changed. Only available in debug "
"builds."
msgstr ""
"Выдается при изменении настроек отладки избегания. Доступно только в "
"отладочных сборках."

msgid ""
"Emitted when a navigation map is updated, when a region moves or is modified."
msgstr ""
"Выдается при обновлении навигационной карты, при перемещении или изменении "
"региона."

msgid ""
"Emitted when navigation debug settings are changed. Only available in debug "
"builds."
msgstr ""
"Выдается при изменении настроек отладки навигации. Доступно только в "
"отладочных сборках."

msgid "Constant to get the number of active navigation maps."
msgstr "Константа для получения количества активных навигационных карт."

msgid "Constant to get the number of active navigation regions."
msgstr "Константа для получения количества активных навигационных регионов."

msgid ""
"Constant to get the number of active navigation agents processing avoidance."
msgstr ""
"Константа для получения количества активных навигационных агентов, "
"обрабатывающих избегание."

msgid "Constant to get the number of active navigation links."
msgstr "Константа для получения количества активных навигационных ссылок."

msgid "Constant to get the number of navigation mesh polygons."
msgstr "Константа для получения количества полигонов навигационной сетки."

msgid "Constant to get the number of navigation mesh polygon edges."
msgstr "Константа для получения количества ребер полигона навигационной сетки."

msgid ""
"Constant to get the number of navigation mesh polygon edges that were merged "
"due to edge key overlap."
msgstr ""
"Константа для получения количества ребер полигонов навигационной сетки, "
"которые были объединены из-за перекрытия ключей ребер."

msgid ""
"Constant to get the number of navigation mesh polygon edges that are "
"considered connected by edge proximity."
msgstr ""
"Константа для получения количества ребер полигонов навигационной сетки, "
"которые считаются связанными по близости ребер."

msgid ""
"Constant to get the number of navigation mesh polygon edges that could not be "
"merged but may be still connected by edge proximity or with links."
msgstr ""
"Константа для получения количества ребер полигонов навигационной сетки, "
"которые не удалось объединить, но которые все еще могут быть соединены "
"близостью ребер или связями."

msgid "Constant to get the number of active navigation obstacles."
msgstr "Константа для получения количества активных навигационных препятствий."

msgid "A server interface for low-level 3D navigation access."
msgstr "Серверный интерфейс для низкоуровневого доступа к 3D-навигации."

msgid ""
"NavigationServer3D is the server that handles navigation maps, regions and "
"agents. It does not handle A* navigation from [AStar3D].\n"
"Maps are divided into regions, which are composed of navigation meshes. "
"Together, they define the navigable areas in the 3D world.\n"
"[b]Note:[/b] Most [NavigationServer3D] changes take effect after the next "
"physics frame and not immediately. This includes all changes made to maps, "
"regions or agents by navigation-related nodes in the scene tree or made "
"through scripts.\n"
"For two regions to be connected to each other, they must share a similar "
"edge. An edge is considered connected to another if both of its two vertices "
"are at a distance less than [code]edge_connection_margin[/code] to the "
"respective other edge's vertex.\n"
"You may assign navigation layers to regions with [method "
"NavigationServer3D.region_set_navigation_layers], which then can be checked "
"upon when requesting a path with [method NavigationServer3D.map_get_path]. "
"This can be used to allow or deny certain areas for some objects.\n"
"To use the collision avoidance system, you may use agents. You can set an "
"agent's target velocity, then the servers will emit a callback with a "
"modified velocity.\n"
"[b]Note:[/b] The collision avoidance system ignores regions. Using the "
"modified velocity directly may move an agent outside of the traversable area. "
"This is a limitation of the collision avoidance system, any more complex "
"situation may require the use of the physics engine.\n"
"This server keeps tracks of any call and executes them during the sync phase. "
"This means that you can request any change to the map, using any thread, "
"without worrying."
msgstr ""
"NavigationServer3D — это сервер, который обрабатывает навигационные карты, "
"регионы и агентов. Он не обрабатывает навигацию A* из [AStar3D].\n"
"Карты делятся на регионы, которые состоят из навигационных сеток. Вместе они "
"определяют навигационные области в трехмерном мире.\n"
"[b]Примечание:[/b] Большинство изменений [NavigationServer3D] вступают в силу "
"после следующего физического кадра, а не немедленно. Это включает все "
"изменения, внесенные в карты, регионы или агентов узлами, связанными с "
"навигацией, в дереве сцены или выполненные через скрипты.\n"
"Чтобы два региона были соединены друг с другом, они должны иметь общее ребро. "
"Ребро считается соединенным с другим, если обе его две вершины находятся на "
"расстоянии меньшем, чем [code]edge_connection_margin[/code] до вершины "
"соответствующего другого ребра.\n"
"Вы можете назначить навигационные слои областям с помощью [method "
"NavigationServer3D.region_set_navigation_layers], которые затем можно "
"проверить при запросе пути с помощью [method "
"NavigationServer3D.map_get_path]. Это можно использовать для разрешения или "
"запрета определенных областей для некоторых объектов.\n"
"Чтобы использовать систему избежания столкновений, вы можете использовать "
"агентов. Вы можете установить целевую скорость агента, затем серверы отправят "
"обратный вызов с измененной скоростью.\n"
"[b]Примечание:[/b] Система избежания столкновений игнорирует области. "
"Использование измененной скорости напрямую может переместить агента за "
"пределы проходимой области. Это ограничение системы избежания столкновений, "
"любая более сложная ситуация может потребовать использования физического "
"движка.\n"
"Этот сервер отслеживает все вызовы и выполняет их во время фазы "
"синхронизации. Это означает, что вы можете запросить любое изменение карты, "
"используя любой поток, не беспокоясь."

msgid ""
"Returns [code]true[/code] if the provided [param agent] has avoidance enabled."
msgstr ""
"Возвращает [code]true[/code], если предоставленный [param agent] имеет "
"включенное избегание."

msgid "Returns the [code]height[/code] of the specified [param agent]."
msgstr "Возвращает [code]height[/code] (высоту) указанного [param agent]."

msgid ""
"Returns [code]true[/code] if the provided [param agent] uses avoidance in 3D "
"space Vector3(x,y,z) instead of horizontal 2D Vector2(x,y) / Vector3(x,0.0,z)."
msgstr ""
"Возвращает [code]true[/code], если предоставленный [param agent] использует "
"избегание в трехмерном пространстве Vector3(x,y,z) вместо горизонтального 2D "
"Vector2(x,y) / Vector3(x,0.0,z)."

msgid ""
"If [param enabled] is [code]true[/code], the provided [param agent] "
"calculates avoidance."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], предоставленный [param "
"agent] вычисляет избегание."

msgid "Updates the provided [param agent] [param height]."
msgstr "Обновляет предоставленный [param agent] [param height]."

msgid ""
"Sets if the agent uses the 2D avoidance or the 3D avoidance while avoidance "
"is enabled.\n"
"If [code]true[/code] the agent calculates avoidance velocities in 3D for the "
"xyz-axis, e.g. for games that take place in air, underwater or space. The 3D "
"using agent only avoids other 3D avoidance using agent's. The 3D using agent "
"only reacts to radius based avoidance obstacles. The 3D using agent ignores "
"any vertices based obstacles. The 3D using agent only avoids other 3D using "
"agent's.\n"
"If [code]false[/code] the agent calculates avoidance velocities in 2D along "
"the xz-axis ignoring the y-axis. The 2D using agent only avoids other 2D "
"avoidance using agent's. The 2D using agent reacts to radius avoidance "
"obstacles. The 2D using agent reacts to vertices based avoidance obstacles. "
"The 2D using agent only avoids other 2D using agent's. 2D using agents will "
"ignore other 2D using agents or obstacles that are below their current "
"position or above their current position including the agents height in 2D "
"avoidance."
msgstr ""
"Устанавливает, использует ли агент 2D-избегание или 3D-избегание, когда "
"включено избегание.\n"
"Если [code]true[/code], агент вычисляет скорости избегания в 3D для оси xyz, "
"например, для игр, которые происходят в воздухе, под водой или в космосе. 3D-"
"использующий агент избегает только других 3D-использующих агентов. 3D-"
"использующий агент реагирует только на препятствия избегания на основе "
"радиуса. 3D-использующий агент игнорирует любые препятствия на основе вершин. "
"3D-использующий агент избегает только других 3D-использующих агентов.\n"
"Если [code]false[/code], агент вычисляет скорости избегания в 2D вдоль оси "
"xz, игнорируя ось y. 2D-использующий агент избегает только других 2D-"
"использующих агентов. 2D-использующий агент реагирует на препятствия "
"избегания на основе радиуса. Агент 2D using реагирует на препятствия, "
"основанные на вершинах. Агент 2D using избегает только других агентов 2D "
"using. Агенты 2D using будут игнорировать других агентов 2D using или "
"препятствия, которые находятся ниже их текущего положения или выше их "
"текущего положения, включая высоту агентов в 2D Avoidance."

msgid ""
"Sets [param velocity] as the new wanted velocity for the specified [param "
"agent]. The avoidance simulation will try to fulfill this velocity if "
"possible but will modify it to avoid collision with other agent's and "
"obstacles. When an agent is teleported to a new position use [method "
"agent_set_velocity_forced] as well to reset the internal simulation velocity."
msgstr ""
"Устанавливает [param velocity] как новую желаемую скорость для указанного "
"[param agent]. Симуляция избегания попытается достичь этой скорости, если это "
"возможно, но изменит ее, чтобы избежать столкновения с другими агентами и "
"препятствиями. Когда агент телепортируется в новое положение, используйте "
"также [method agent_set_velocity_forced], чтобы сбросить внутреннюю скорость "
"симуляции."

msgid ""
"Replaces the internal velocity in the collision avoidance simulation with "
"[param velocity] for the specified [param agent]. When an agent is teleported "
"to a new position this function should be used in the same frame. If called "
"frequently this function can get agents stuck."
msgstr ""
"Заменяет внутреннюю скорость в моделировании избегания столкновений на [param "
"velocity] для указанного [param agent]. Когда агент телепортируется в новое "
"положение, эта функция должна использоваться в том же кадре. При частом "
"вызове эта функция может привести к застреванию агентов."

msgid ""
"Bakes the provided [param navigation_mesh] with the data from the provided "
"[param source_geometry_data] as an async task running on a background thread. "
"After the process is finished the optional [param callback] will be called."
msgstr ""
"Запекает предоставленный [param navigation_mesh] с данными из "
"предоставленного [param source_geometry_data] как асинхронную задачу, "
"работающую в фоновом потоке. После завершения процесса будет вызван "
"необязательный [param callback]."

msgid ""
"Returns [code]true[/code] when the provided navigation mesh is being baked on "
"a background thread."
msgstr ""
"Возвращает [code]true[/code], когда предоставленная навигационная сетка "
"запекается в фоновом потоке."

msgid ""
"Set the links's navigation layers. This allows selecting links from a path "
"request (when using [method NavigationServer3D.map_get_path])."
msgstr ""
"Установить навигационные слои ссылок. Это позволяет выбирать ссылки из "
"запроса пути (при использовании [method NavigationServer3D.map_get_path])."

msgid ""
"Returns the map cell height used to rasterize the navigation mesh vertices on "
"the Y axis."
msgstr ""
"Возвращает высоту ячейки карты, используемую для растеризации вершин "
"навигационной сетки по оси Y."

msgid ""
"Returns the map cell size used to rasterize the navigation mesh vertices on "
"the XZ plane."
msgstr ""
"Возвращает размер ячейки карты, используемый для растеризации вершин "
"навигационной сетки на плоскости XZ."

msgid ""
"Returns the navigation mesh surface normal closest to the provided [param "
"to_point] on the navigation [param map]."
msgstr ""
"Возвращает нормаль поверхности навигационной сетки, ближайшую к указанному "
"[param to_point] на навигационной [param map]."

msgid ""
"Returns the navigation mesh surface point closest to the provided [param "
"start] and [param end] segment on the navigation [param map].\n"
"If [param use_collision] is [code]true[/code], a closest point test is only "
"done when the segment intersects with the navigation mesh surface."
msgstr ""
"Возвращает точку поверхности сетки навигации, ближайшую к предоставленным "
"сегментам [param start] и [param end] на карте навигации [param map].\n"
"Если [param use_collision] равно [code]true[/code], проверка ближайшей точки "
"выполняется только тогда, когда сегмент пересекается с поверхностью сетки "
"навигации."

msgid ""
"Returns the edge connection margin of the map. This distance is the minimum "
"vertex distance needed to connect two edges from different regions."
msgstr ""
"Возвращает границу соединения ребер карты. Это расстояние является "
"минимальным расстоянием между вершинами, необходимым для соединения двух "
"ребер из разных регионов."

msgid "Returns the map's up direction."
msgstr "Возвращает направление вверх карты."

msgid ""
"Returns [code]true[/code] if the navigation [param map] allows navigation "
"regions to use edge connections to connect with other navigation regions "
"within proximity of the navigation map edge connection margin."
msgstr ""
"Возвращает [code]true[/code], если навигационная [param map] позволяет "
"навигационным регионам использовать граничные соединения для соединения с "
"другими навигационными регионами в непосредственной близости от границы "
"граничного соединения навигационной карты."

msgid ""
"Sets the map cell height used to rasterize the navigation mesh vertices on "
"the Y axis. Must match with the cell height of the used navigation meshes."
msgstr ""
"Задает высоту ячейки карты, используемую для растеризации вершин "
"навигационной сетки по оси Y. Должна совпадать с высотой ячейки используемых "
"навигационных сеток."

msgid ""
"Sets the map cell size used to rasterize the navigation mesh vertices on the "
"XZ plane. Must match with the cell size of the used navigation meshes."
msgstr ""
"Устанавливает размер ячейки карты, используемый для растеризации вершин "
"навигационной сетки на плоскости XZ. Должен совпадать с размером ячейки "
"используемых навигационных сеток."

msgid "Sets the map up direction."
msgstr "Устанавливает направление карты вверх."

msgid "Creates a new obstacle."
msgstr "Создает новое препятствие (obstacle)."

msgid "Returns the [code]height[/code] of the specified [param obstacle]."
msgstr "Возвращает [code]height[/code] указанного [param obstacle]."

msgid ""
"Returns [code]true[/code] if the provided [param obstacle] uses avoidance in "
"3D space Vector3(x,y,z) instead of horizontal 2D Vector2(x,y) / "
"Vector3(x,0.0,z)."
msgstr ""
"Возвращает [code]true[/code], если указанный [param obstacle] использует "
"избегание в трехмерном пространстве Vector3(x,y,z) вместо горизонтального 2D "
"Vector2(x,y) / Vector3(x,0.0,z)."

msgid ""
"Sets the [param height] for the [param obstacle]. In 3D agents will ignore "
"obstacles that are above or below them while using 2D avoidance."
msgstr ""
"Устанавливает [param height] для [param obstacle]. В 3D агенты будут "
"игнорировать препятствия, которые находятся выше или ниже них, используя 2D-"
"избегание."

msgid "Assigns the [param obstacle] to a navigation map."
msgstr "Назначает [param obstacle] навигационной карте."

msgid "Updates the [param position] in world space for the [param obstacle]."
msgstr "Обновляет [param position] в мировом пространстве для [param obstacle]."

msgid ""
"Sets if the [param obstacle] uses the 2D avoidance or the 3D avoidance while "
"avoidance is enabled."
msgstr ""
"Устанавливает, использует ли [param obstacle] 2D-обход или 3D-обход, если "
"включен режим обхода."

msgid ""
"Queries a path in a given navigation map. Start and target position and other "
"parameters are defined through [NavigationPathQueryParameters3D]. Updates the "
"provided [NavigationPathQueryResult3D] result object with the path among "
"other results requested by the query. After the process is finished the "
"optional [param callback] will be called."
msgstr ""
"Запрашивает путь в заданной навигационной карте. Начальная и конечная "
"позиция, а также другие параметры определяются через "
"[NavigationPathQueryParameters3D]. Обновляет предоставленный объект "
"результата [NavigationPathQueryResult3D] путем среди других результатов, "
"запрошенных запросом. После завершения процесса будет вызван необязательный "
"[param callback]."

msgid ""
"Bakes the [param navigation_mesh] with bake source geometry collected "
"starting from the [param root_node]."
msgstr ""
"Запекает [param navigation_mesh] с исходной геометрией запекания, собранной, "
"начиная с [param root_node]."

msgid ""
"Returns the axis-aligned bounding box for the [param region]'s transformed "
"navigation mesh."
msgstr ""
"Возвращает выровненный по осям ограничивающий прямоугольник для "
"преобразованной навигационной сетки [param region]."

msgid ""
"Returns the navigation mesh surface normal closest to the provided [param "
"to_point] on the navigation [param region]."
msgstr ""
"Возвращает нормаль поверхности навигационной сетки, ближайшую к указанному "
"[param to_point] в навигационной [param region]."

msgid ""
"Returns the navigation mesh surface point closest to the provided [param "
"start] and [param end] segment on the navigation [param region].\n"
"If [param use_collision] is [code]true[/code], a closest point test is only "
"done when the segment intersects with the navigation mesh surface."
msgstr ""
"Возвращает точку поверхности сетки навигации, ближайшую к предоставленным "
"сегментам [param start] и [param end] в навигационной области [param "
"region].\n"
"Если [param use_collision] равно [code]true[/code], проверка ближайшей точки "
"выполняется только тогда, когда сегмент пересекается с поверхностью сетки "
"навигации."

msgid ""
"Returns [code]true[/code] if the navigation [param region] is set to use edge "
"connections to connect with other navigation regions within proximity of the "
"navigation map edge connection margin."
msgstr ""
"Возвращает [code]true[/code], если навигационный [param region] настроен на "
"использование краевых соединений для соединения с другими навигационными "
"регионами в непосредственной близости от границы краевого соединения "
"навигационной карты."

msgid ""
"If [param enabled] is [code]true[/code], the specified [param region] will "
"contribute to its current navigation map."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], указанный [param "
"region] будет добавлен к его текущей навигационной карте."

msgid ""
"Set the region's navigation layers. This allows selecting regions from a path "
"request (when using [method NavigationServer3D.map_get_path])."
msgstr ""
"Установить навигационные слои региона. Это позволяет выбирать регионы из "
"запроса пути (при использовании [method NavigationServer3D.map_get_path])."

msgid "Sets the navigation mesh for the region."
msgstr "Устанавливает навигационную сетку для региона."

msgid ""
"Sets the [param callback] [Callable] for the specific source geometry [param "
"parser]. The [Callable] will receive a call with the following parameters:\n"
"- [code]navigation_mesh[/code] - The [NavigationMesh] reference used to "
"define the parse settings. Do NOT edit or add directly to the navigation "
"mesh.\n"
"- [code]source_geometry_data[/code] - The "
"[NavigationMeshSourceGeometryData3D] reference. Add custom source geometry "
"for navigation mesh baking to this object.\n"
"- [code]node[/code] - The [Node] that is parsed."
msgstr ""
"Устанавливает [param callback] [Callable] для конкретной исходной геометрии "
"[param parser]. [Callable] получит вызов со следующими параметрами:\n"
"- [code]navigation_mesh[/code] - Ссылка [NavigationMesh], используемая для "
"определения настроек анализа. НЕ редактируйте и не добавляйте напрямую в "
"навигационную сетку.\n"
"- [code]source_geometry_data[/code] - Ссылка "
"[NavigationMeshSourceGeometryData3D]. Добавьте пользовательскую исходную "
"геометрию для запекания навигационной сетки в этот объект.\n"
"- [code]node[/code] - [Node], который анализируется."

msgid ""
"A control that displays a texture by keeping its corners intact, but tiling "
"its edges and center."
msgstr ""
"Элемент управления, который отображает текстуру, сохраняя ее углы "
"нетронутыми, но размещая ее края и центр."

msgid ""
"Also known as 9-slice panels, [NinePatchRect] produces clean panels of any "
"size based on a small texture. To do so, it splits the texture in a 3×3 grid. "
"When you scale the node, it tiles the texture's edges horizontally or "
"vertically, tiles the center on both axes, and leaves the corners unchanged."
msgstr ""
"Также известный как 9-секционные панели, [NinePatchRect] создает чистые "
"панели любого размера на основе небольшой текстуры. Для этого он разбивает "
"текстуру на сетку 3×3. Когда вы масштабируете узел, он размещает края "
"текстуры по горизонтали или вертикали, размещает центр по обеим осям и "
"оставляет углы неизменными."

msgid "Returns the size of the margin on the specified [enum Side]."
msgstr "Возвращает размер поля на указанной [enum Side]."

msgid ""
"Sets the size of the margin on the specified [enum Side] to [param value] "
"pixels."
msgstr ""
"Устанавливает размер поля на указанной стороне [enum Side] равным [param "
"value] пикселей."

msgid "The stretch mode to use for horizontal stretching/tiling."
msgstr "Режим растяжения, используемый для горизонтального растяжения/тайлинга."

msgid "The stretch mode to use for vertical stretching/tiling."
msgstr "Режим растяжения, используемый для вертикального растяжения/тайлинга."

msgid ""
"If [code]true[/code], draw the panel's center. Else, only draw the 9-slice's "
"borders."
msgstr ""
"Если [code]true[/code], рисуем центр панели. В противном случае рисуем только "
"границы 9-слоя."

msgid ""
"The height of the 9-slice's bottom row. A margin of 16 means the 9-slice's "
"bottom corners and side will have a height of 16 pixels. You can set all 4 "
"margin values individually to create panels with non-uniform borders."
msgstr ""
"Высота нижнего ряда 9-слоя. Поле 16 означает, что нижние углы и сторона 9-"
"слоя будут иметь высоту 16 пикселей. Вы можете задать все 4 значения полей по "
"отдельности, чтобы создавать панели с неравномерными границами."

msgid ""
"The width of the 9-slice's left column. A margin of 16 means the 9-slice's "
"left corners and side will have a width of 16 pixels. You can set all 4 "
"margin values individually to create panels with non-uniform borders."
msgstr ""
"Ширина левого столбца 9-слоя. Поле 16 означает, что левые углы и сторона 9-"
"слоя будут иметь ширину 16 пикселей. Вы можете задать все 4 значения полей по "
"отдельности, чтобы создавать панели с неравномерными границами."

msgid ""
"The width of the 9-slice's right column. A margin of 16 means the 9-slice's "
"right corners and side will have a width of 16 pixels. You can set all 4 "
"margin values individually to create panels with non-uniform borders."
msgstr ""
"Ширина правого столбца 9-слоя. Поле 16 означает, что правые углы и сторона 9-"
"слоя будут иметь ширину 16 пикселей. Вы можете задать все 4 значения полей по "
"отдельности, чтобы создавать панели с неравномерными границами."

msgid ""
"The height of the 9-slice's top row. A margin of 16 means the 9-slice's top "
"corners and side will have a height of 16 pixels. You can set all 4 margin "
"values individually to create panels with non-uniform borders."
msgstr ""
"Высота верхней строки 9-слоя. Поле 16 означает, что верхние углы и сторона 9-"
"слоя будут иметь высоту 16 пикселей. Вы можете задать все 4 значения полей по "
"отдельности, чтобы создавать панели с неравномерными границами."

msgid ""
"Rectangular region of the texture to sample from. If you're working with an "
"atlas, use this property to define the area the 9-slice should use. All other "
"properties are relative to this one. If the rect is empty, NinePatchRect will "
"use the whole texture."
msgstr ""
"Прямоугольная область текстуры для выборки. Если вы работаете с атласом, "
"используйте это свойство для определения области, которую должен использовать "
"9-срез. Все остальные свойства относятся к этому. Если прямоугольник пуст, "
"NinePatchRect будет использовать всю текстуру."

msgid "The node's texture resource."
msgstr "Ресурс текстуры узла."

msgid "Emitted when the node's texture changes."
msgstr "Вызывается при изменении текстуры узла."

msgid ""
"Stretches the center texture across the NinePatchRect. This may cause the "
"texture to be distorted."
msgstr ""
"Растягивает центральную текстуру по NinePatchRect. Это может привести к "
"искажению текстуры."

msgid ""
"Repeats the center texture across the NinePatchRect. This won't cause any "
"visible distortion. The texture must be seamless for this to work without "
"displaying artifacts between edges."
msgstr ""
"Повторяет центральную текстуру по NinePatchRect. Это не вызовет видимых "
"искажений. Текстура должна быть бесшовной, чтобы это работало без отображения "
"артефактов между краями."

msgid ""
"Repeats the center texture across the NinePatchRect, but will also stretch "
"the texture to make sure each tile is visible in full. This may cause the "
"texture to be distorted, but less than [constant AXIS_STRETCH_MODE_STRETCH]. "
"The texture must be seamless for this to work without displaying artifacts "
"between edges."
msgstr ""
"Повторяет центральную текстуру по NinePatchRect, но также растягивает "
"текстуру, чтобы убедиться, что каждый тайл виден полностью. Это может "
"привести к искажению текстуры, но меньше, чем [constant "
"AXIS_STRETCH_MODE_STRETCH]. Текстура должна быть бесшовной, чтобы это "
"работало без отображения артефактов между краями."

msgid "Base class for all scene objects."
msgstr "Базовый класс для всех объектов."

msgid ""
"Nodes are Godot's building blocks. They can be assigned as the child of "
"another node, resulting in a tree arrangement. A given node can contain any "
"number of nodes as children with the requirement that all siblings (direct "
"children of a node) should have unique names.\n"
"A tree of nodes is called a [i]scene[/i]. Scenes can be saved to the disk and "
"then instantiated into other scenes. This allows for very high flexibility in "
"the architecture and data model of Godot projects.\n"
"[b]Scene tree:[/b] The [SceneTree] contains the active tree of nodes. When a "
"node is added to the scene tree, it receives the [constant "
"NOTIFICATION_ENTER_TREE] notification and its [method _enter_tree] callback "
"is triggered. Child nodes are always added [i]after[/i] their parent node, "
"i.e. the [method _enter_tree] callback of a parent node will be triggered "
"before its child's.\n"
"Once all nodes have been added in the scene tree, they receive the [constant "
"NOTIFICATION_READY] notification and their respective [method _ready] "
"callbacks are triggered. For groups of nodes, the [method _ready] callback is "
"called in reverse order, starting with the children and moving up to the "
"parent nodes.\n"
"This means that when adding a node to the scene tree, the following order "
"will be used for the callbacks: [method _enter_tree] of the parent, [method "
"_enter_tree] of the children, [method _ready] of the children and finally "
"[method _ready] of the parent (recursively for the entire scene tree).\n"
"[b]Processing:[/b] Nodes can override the \"process\" state, so that they "
"receive a callback on each frame requesting them to process (do something). "
"Normal processing (callback [method _process], toggled with [method "
"set_process]) happens as fast as possible and is dependent on the frame rate, "
"so the processing time [i]delta[/i] (in seconds) is passed as an argument. "
"Physics processing (callback [method _physics_process], toggled with [method "
"set_physics_process]) happens a fixed number of times per second (60 by "
"default) and is useful for code related to the physics engine.\n"
"Nodes can also process input events. When present, the [method _input] "
"function will be called for each input that the program receives. In many "
"cases, this can be overkill (unless used for simple projects), and the "
"[method _unhandled_input] function might be preferred; it is called when the "
"input event was not handled by anyone else (typically, GUI [Control] nodes), "
"ensuring that the node only receives the events that were meant for it.\n"
"To keep track of the scene hierarchy (especially when instantiating scenes "
"into other scenes), an \"owner\" can be set for the node with the [member "
"owner] property. This keeps track of who instantiated what. This is mostly "
"useful when writing editors and tools, though.\n"
"Finally, when a node is freed with [method Object.free] or [method "
"queue_free], it will also free all its children.\n"
"[b]Groups:[/b] Nodes can be added to as many groups as you want to be easy to "
"manage, you could create groups like \"enemies\" or \"collectables\" for "
"example, depending on your game. See [method add_to_group], [method "
"is_in_group] and [method remove_from_group]. You can then retrieve all nodes "
"in these groups, iterate them and even call methods on groups via the methods "
"on [SceneTree].\n"
"[b]Networking with nodes:[/b] After connecting to a server (or making one, "
"see [ENetMultiplayerPeer]), it is possible to use the built-in RPC (remote "
"procedure call) system to communicate over the network. By calling [method "
"rpc] with a method name, it will be called locally and in all connected peers "
"(peers = clients and the server that accepts connections). To identify which "
"node receives the RPC call, Godot will use its [NodePath] (make sure node "
"names are the same on all peers). Also, take a look at the high-level "
"networking tutorial and corresponding demos.\n"
"[b]Note:[/b] The [code]script[/code] property is part of the [Object] class, "
"not [Node]. It isn't exposed like most properties but does have a setter and "
"getter (see [method Object.set_script] and [method Object.get_script])."
msgstr ""
"Узлы — это строительные блоки Godot. Их можно назначать в качестве дочерних "
"узлов другого узла, что приводит к древовидной структуре. Указанный узел "
"может содержать любое количество узлов в качестве дочерних с требованием, "
"чтобы все родственные элементы (прямые дочерние элементы узла) имели "
"уникальные имена.\n"
"Дерево узлов называется [i]сценой[/i]. Сцены можно сохранять на диске, а "
"затем создавать экземпляры в других сценах. Это обеспечивает очень высокую "
"гибкость в архитектуре и модели данных проектов Godot.\n"
"[b]Scene tree:[/b] [SceneTree] содержит активное дерево узлов. Когда узел "
"добавляется в дерево сцен, он получает уведомление [constant "
"NOTIFICATION_ENTER_TREE], и запускается его обратный вызов [method "
"_enter_tree]. Дочерние узлы всегда добавляются [i]после[/i] их родительского "
"узла, т. е. обратный вызов [method _enter_tree] родительского узла будет "
"запущен раньше, чем у его дочернего узла.\n"
"После добавления всех узлов в дерево сцены они получают уведомление [constant "
"NOTIFICATION_READY] и запускаются их соответствующие обратные вызовы [method "
"_ready]. Для групп узлов обратный вызов [method _ready] вызывается в обратном "
"порядке, начиная с дочерних и продвигаясь к родительским узлам.\n"
"Это означает, что при добавлении узла в дерево сцены для обратных вызовов "
"будет использоваться следующий порядок: [method _enter_tree] родителя, "
"[method _enter_tree] дочерних узлов, [method _ready] дочерних узлов и, "
"наконец, [method _ready] родителя (рекурсивно для всего дерева сцены).\n"
"[b]Обработка:[/b] Узлы могут переопределять состояние «process», чтобы "
"получать обратный вызов в каждом кадре, запрашивающий их обработку (что-либо "
"сделать). Обычная обработка (callback [method _process], переключаемая с "
"помощью [method set_process]) происходит максимально быстро и зависит от "
"частоты кадров, поэтому время обработки [i]delta[/i] (в секундах) передается "
"как аргумент. Обработка физики (callback [method _physics_process], "
"переключаемая с помощью [method set_physics_process]) происходит "
"фиксированное количество раз в секунду (по умолчанию 60) и полезна для кода, "
"связанного с физическим движком.\n"
"Узлы также могут обрабатывать входные события. При наличии функция [method "
"_input] будет вызываться для каждого входного сигнала, который получает "
"программа. Во многих случаях это может быть излишним (если только не "
"используется для простых проектов), и функция [method _unhandled_input] может "
"быть предпочтительнее; она вызывается, когда входное событие не было "
"обработано никем другим (обычно узлами GUI [Control]), гарантируя, что узел "
"получает только те события, которые ему предназначены. \n"
"Чтобы отслеживать иерархию сцен (особенно при создании экземпляров сцен в "
"других сценах), можно задать «владельца» для узла с помощью свойства [member "
"owner]. Это отслеживает, кто что создал. Однако это в основном полезно при "
"написании редакторов и инструментов.\n"
"Наконец, когда узел освобождается с помощью [method Object.free] или [method "
"queue_free], он также освобождает всех своих дочерних элементов.\n"
"[b]Группы:[/b] Узлы можно добавлять в столько групп, сколько вам нужно, чтобы "
"ими было легко управлять, вы можете создавать группы, например, «enemies» или "
"«collectables», в зависимости от вашей игры. См. [method add_to_group], "
"[method is_in_group] и [method remove_from_group]. Затем вы можете извлекать "
"все узлы в этих группах, перебирать их и даже вызывать методы для групп с "
"помощью методов на [SceneTree].\n"
"[b]Сетевое взаимодействие с узлами:[/b] После подключения к серверу (или его "
"создания, см. [ENetMultiplayerPeer]) можно использовать встроенную систему "
"RPC (вызов удаленных процедур) для связи по сети. Вызывая [method rpc] с "
"именем метода, он будет вызван локально и во всех подключенных одноранговых "
"узлах (одноранговые узлы = клиенты и сервер, который принимает соединения). "
"Чтобы определить, какой узел получает вызов RPC, Godot будет использовать "
"свой [NodePath] (убедитесь, что имена узлов одинаковы на всех одноранговых "
"узлах). Также ознакомьтесь с руководством по высокоуровневым сетям и "
"соответствующими демонстрациями.\n"
"[b]Примечание:[/b] Свойство [code]script[/code] является частью класса "
"[Object], а не [Node]. Оно не отображается, как большинство свойств, но имеет "
"сеттер и геттер (см. [method Object.set_script] и [method Object.get_script])."

msgid "Nodes and scenes"
msgstr "Узлы и сцены"

msgid "All Demos"
msgstr "Все демонстрации"

msgid ""
"Called when the node enters the [SceneTree] (e.g. upon instantiating, scene "
"changing, or after calling [method add_child] in a script). If the node has "
"children, its [method _enter_tree] callback will be called first, and then "
"that of the children.\n"
"Corresponds to the [constant NOTIFICATION_ENTER_TREE] notification in [method "
"Object._notification]."
msgstr ""
"Вызывается, когда узел входит в [SceneTree] (например, при создании "
"экземпляра, смене сцены или после вызова [method add_child] в скрипте). Если "
"у узла есть дочерние элементы, его обратный вызов [method _enter_tree] будет "
"вызван первым, а затем обратный вызов дочерних элементов.\n"
"Соответствует уведомлению [constant NOTIFICATION_ENTER_TREE] в [method "
"Object._notification]."

msgid ""
"Called when the node is about to leave the [SceneTree] (e.g. upon freeing, "
"scene changing, or after calling [method remove_child] in a script). If the "
"node has children, its [method _exit_tree] callback will be called last, "
"after all its children have left the tree.\n"
"Corresponds to the [constant NOTIFICATION_EXIT_TREE] notification in [method "
"Object._notification] and signal [signal tree_exiting]. To get notified when "
"the node has already left the active tree, connect to the [signal "
"tree_exited]."
msgstr ""
"Вызывается, когда узел собирается покинуть [SceneTree] (например, при "
"освобождении, смене сцены или после вызова [method remove_child] в скрипте). "
"Если у узла есть дочерние элементы, его обратный вызов [method _exit_tree] "
"будет вызван последним, после того, как все его дочерние элементы покинут "
"дерево.\n"
"Соответствует уведомлению [constant NOTIFICATION_EXIT_TREE] в [method "
"Object._notification] и сигналу [signal tree_exiting]. Чтобы получить "
"уведомление, когда узел уже покинул активное дерево, подключитесь к [signal "
"tree_exited]."

msgid ""
"The elements in the array returned from this method are displayed as warnings "
"in the Scene dock if the script that overrides it is a [code]tool[/code] "
"script, and accessibility warnings are enabled in the editor settings.\n"
"Returning an empty array produces no warnings."
msgstr ""
"Элементы в массиве, возвращаемые этим методом, отображаются как "
"предупреждения в доке сцены, если скрипт, который его переопределяет, "
"является скриптом [code]tool[/code], а предупреждения о доступности включены "
"в настройках редактора.\n"
"Возврат пустого массива не приводит к появлению предупреждений."

msgid ""
"The elements in the array returned from this method are displayed as warnings "
"in the Scene dock if the script that overrides it is a [code]tool[/code] "
"script.\n"
"Returning an empty array produces no warnings.\n"
"Call [method update_configuration_warnings] when the warnings need to be "
"updated for this node.\n"
"[codeblock]\n"
"@export var energy = 0:\n"
"\tset(value):\n"
"\t\tenergy = value\n"
"\t\tupdate_configuration_warnings()\n"
"\n"
"func _get_configuration_warnings():\n"
"\tif energy < 0:\n"
"\t\treturn [\"Energy must be 0 or greater.\"]\n"
"\telse:\n"
"\t\treturn []\n"
"[/codeblock]"
msgstr ""
"Элементы в массиве, возвращаемые этим методом, отображаются как "
"предупреждения в доке сцены, если скрипт, который его переопределяет, "
"является скриптом [code]tool[/code].\n"
"Возврат пустого массива не приводит к появлению предупреждений.\n"
"Вызовите [method update_configuration_warnings], когда предупреждения "
"необходимо обновить для этого узла.\n"
"[codeblock]\n"
"@export var energy = 0:\n"
"\tset(value):\n"
"\t\tenergy = value\n"
"\t\tupdate_configuration_warnings()\n"
"\n"
"func _get_configuration_warnings():\n"
"\tif energy < 0:\n"
"\t\treturn [\"Энергия должна быть равна 0 или больше.\"]\n"
"\telse:\n"
"\t\treturn []\n"
"[/codeblock]"

msgid ""
"Called during accessibility information updates to determine the currently "
"focused sub-element, should return a sub-element RID or the value returned by "
"[method get_accessibility_element]."
msgstr ""
"Вызывается во время обновления информации о доступности для определения "
"текущего сфокусированного подэлемента, должен возвращать RID подэлемента или "
"значение, возвращаемое [method get_accessibility_element]."

msgid ""
"Called when there is an input event. The input event propagates up through "
"the node tree until a node consumes it.\n"
"It is only called if input processing is enabled, which is done automatically "
"if this method is overridden, and can be toggled with [method "
"set_process_input].\n"
"To consume the input event and stop it propagating further to other nodes, "
"[method Viewport.set_input_as_handled] can be called.\n"
"For gameplay input, [method _unhandled_input] and [method "
"_unhandled_key_input] are usually a better fit as they allow the GUI to "
"intercept the events first.\n"
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not an orphan)."
msgstr ""
"Вызывается при наличии события ввода. Событие ввода распространяется вверх по "
"дереву узлов, пока узел не потребит его.\n"
"Вызывается только в том случае, если включена обработка ввода, что "
"выполняется автоматически, если этот метод переопределен, и может быть "
"переключено с помощью [method set_process_input].\n"
"Чтобы потребить событие ввода и остановить его дальнейшее распространение на "
"другие узлы, можно вызвать [method Viewport.set_input_as_handled].\n"
"Для игрового ввода обычно лучше подходят [method _unhandled_input] и [method "
"_unhandled_key_input], поскольку они позволяют графическому интерфейсу "
"сначала перехватывать события.\n"
"[b]Примечание:[/b] Этот метод вызывается только в том случае, если узел "
"присутствует в дереве сцены (т. е. если он не является сиротой)."

msgid ""
"Called once on each physics tick, and allows Nodes to synchronize their logic "
"with physics ticks. [param delta] is the logical time between physics ticks "
"in seconds and is equal to [member Engine.time_scale] / [member "
"Engine.physics_ticks_per_second].\n"
"It is only called if physics processing is enabled for this Node, which is "
"done automatically if this method is overridden, and can be toggled with "
"[method set_physics_process].\n"
"Processing happens in order of [member process_physics_priority], lower "
"priority values are called first. Nodes with the same priority are processed "
"in tree order, or top to bottom as seen in the editor (also known as pre-"
"order traversal).\n"
"Corresponds to the [constant NOTIFICATION_PHYSICS_PROCESS] notification in "
"[method Object._notification].\n"
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not an orphan).\n"
"[b]Note:[/b] Accumulated [param delta] may diverge from real world seconds."
msgstr ""
"Вызывается один раз на каждом физическом тике и позволяет узлам "
"синхронизировать свою логику с физическими тиками. [param delta] — это "
"логическое время между физическими тиками в секундах, равное [member "
"Engine.time_scale] / [member Engine.physics_ticks_per_second].\n"
"Вызывается только если для данного узла включена обработка физики, что "
"происходит автоматически при переопределении этого метода и может быть "
"переключено с помощью [method set_physics_process].\n"
"Обработка выполняется в порядке [member process_physics_priority], значения с "
"более низким приоритетом вызываются первыми. Узлы с одинаковым приоритетом "
"обрабатываются в порядке дерева, или сверху вниз, как показано в редакторе "
"(также известно как предварительный обход).\n"
"Соответствует уведомлению [constant NOTIFICATION_PHYSICS_PROCESS] в [method "
"Object._notification].\n"
"[b]Примечание:[/b] Этот метод вызывается только в том случае, если узел "
"присутствует в дереве сцены (т.е. не является сиротой).\n"
"[b]Примечание:[/b] Накопленное значение [param delta] может отличаться от "
"реального значения в секундах."

msgid ""
"Called on each idle frame, prior to rendering, and after physics ticks have "
"been processed. [param delta] is the time between frames in seconds.\n"
"It is only called if processing is enabled for this Node, which is done "
"automatically if this method is overridden, and can be toggled with [method "
"set_process].\n"
"Processing happens in order of [member process_priority], lower priority "
"values are called first. Nodes with the same priority are processed in tree "
"order, or top to bottom as seen in the editor (also known as pre-order "
"traversal).\n"
"Corresponds to the [constant NOTIFICATION_PROCESS] notification in [method "
"Object._notification].\n"
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not an orphan).\n"
"[b]Note:[/b] When the engine is struggling and the frame rate is lowered, "
"[param delta] will increase. When [param delta] is increased, it's capped at "
"a maximum of [member Engine.time_scale] * [member "
"Engine.max_physics_steps_per_frame] / [member "
"Engine.physics_ticks_per_second]. As a result, accumulated [param delta] may "
"not represent real world time.\n"
"[b]Note:[/b] When [code]--fixed-fps[/code] is enabled or the engine is "
"running in Movie Maker mode (see [MovieWriter]), process [param delta] will "
"always be the same for every frame, regardless of how much time the frame "
"took to render.\n"
"[b]Note:[/b] Frame delta may be post-processed by [member OS.delta_smoothing] "
"if this is enabled for the project."
msgstr ""
"Вызывается в каждом кадре бездействия, перед рендерингом и после обработки "
"физических тиков. [param delta] — это время между кадрами в секундах.\n"
"Вызывается только в том случае, если обработка включена для данного узла, что "
"происходит автоматически при переопределении этого метода и может быть "
"переключено с помощью [method set_process].\n"
"Обработка выполняется в порядке [member process_priority], значения с более "
"низким приоритетом вызываются первыми. Узлы с одинаковым приоритетом "
"обрабатываются в порядке дерева, или сверху вниз, как показано в редакторе "
"(также известно как предварительный обход).\n"
"Соответствует уведомлению [constant NOTIFICATION_PROCESS] в [method "
"Object._notification].\n"
"[b]Примечание:[/b] Этот метод вызывается только в том случае, если узел "
"присутствует в дереве сцены (т.е. не является «сиротой»).\n"
"[b]Примечание:[/b] При возникновении проблем с движком и снижении частоты "
"кадров значение [param delta] увеличивается. При увеличении [param delta] он "
"ограничивается максимальным значением [member Engine.time_scale] * [member "
"Engine.max_physics_steps_per_frame] / [member "
"Engine.physics_ticks_per_second]. В результате накопленное [param delta] "
"может не отражать реальное время.\n"
"[b]Примечание:[/b] Если включен параметр [code]--fixed-fps[/code] или движок "
"работает в режиме Movie Maker (см. [MovieWriter]), значение [param delta] "
"всегда будет одинаковым для каждого кадра, независимо от времени, "
"затраченного на рендеринг кадра.\n"
"[b]Примечание:[/b] Дельта кадра может быть обработана с помощью [member "
"OS.delta_smoothing], если эта функция включена для проекта."

msgid ""
"Called when the node is \"ready\", i.e. when both the node and its children "
"have entered the scene tree. If the node has children, their [method _ready] "
"callbacks get triggered first, and the parent node will receive the ready "
"notification afterwards.\n"
"Corresponds to the [constant NOTIFICATION_READY] notification in [method "
"Object._notification]. See also the [code]@onready[/code] annotation for "
"variables.\n"
"Usually used for initialization. For even earlier initialization, [method "
"Object._init] may be used. See also [method _enter_tree].\n"
"[b]Note:[/b] This method may be called only once for each node. After "
"removing a node from the scene tree and adding it again, [method _ready] will "
"[b]not[/b] be called a second time. This can be bypassed by requesting "
"another call with [method request_ready], which may be called anywhere before "
"adding the node again."
msgstr ""
"Вызывается, когда узел «готов», т. е. когда и узел, и его потомки вошли в "
"дерево сцены. Если у узла есть потомки, их обратные вызовы [method _ready] "
"срабатывают первыми, а родительский узел получит уведомление о готовности "
"позже.\n"
"Соответствует уведомлению [constant NOTIFICATION_READY] в [method "
"Object._notification]. См. также аннотацию [code]@onready[/code] для "
"переменных.\n"
"Обычно используется для инициализации. Для еще более ранней инициализации "
"можно использовать [method Object._init]. См. также [method _enter_tree].\n"
"[b]Примечание:[/b] Этот метод может быть вызван только один раз для каждого "
"узла. После удаления узла из дерева сцены и его повторного добавления [method "
"_ready] [b]не[/b] будет вызван во второй раз. Это можно обойти, запросив "
"другой вызов с помощью [method request_ready], который может быть вызван в "
"любом месте перед повторным добавлением узла."

msgid ""
"Called when an [InputEventKey], [InputEventShortcut], or "
"[InputEventJoypadButton] hasn't been consumed by [method _input] or any GUI "
"[Control] item. It is called before [method _unhandled_key_input] and [method "
"_unhandled_input]. The input event propagates up through the node tree until "
"a node consumes it.\n"
"It is only called if shortcut processing is enabled, which is done "
"automatically if this method is overridden, and can be toggled with [method "
"set_process_shortcut_input].\n"
"To consume the input event and stop it propagating further to other nodes, "
"[method Viewport.set_input_as_handled] can be called.\n"
"This method can be used to handle shortcuts. For generic GUI events, use "
"[method _input] instead. Gameplay events should usually be handled with "
"either [method _unhandled_input] or [method _unhandled_key_input].\n"
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not orphan)."
msgstr ""
"Вызывается, когда [InputEventKey], [InputEventShortcut] или "
"[InputEventJoypadButton] не были использованы [method _input] или любым "
"элементом GUI [Control]. Вызывается до [method _unhandled_key_input] и "
"[method _unhandled_input]. Событие ввода распространяется вверх по дереву "
"узлов, пока узел не потребит его.\n"
"Вызывается только в том случае, если включена обработка сочетаний клавиш, что "
"выполняется автоматически, если этот метод переопределен, и может быть "
"переключено с помощью [method set_process_shortcut_input].\n"
"Чтобы использовать событие ввода и остановить его дальнейшее распространение "
"на другие узлы, можно вызвать [method Viewport.set_input_as_handled].\n"
"Этот метод можно использовать для обработки сочетаний клавиш. Для общих "
"событий GUI используйте вместо этого [method _input]. События игрового "
"процесса обычно следует обрабатывать с помощью [method _unhandled_input] или "
"[method _unhandled_key_input].\n"
"[b]Примечание:[/b] Этот метод вызывается только в том случае, если узел "
"присутствует в дереве сцены (т. е. если он не является сиротским)."

msgid ""
"Called when an [InputEvent] hasn't been consumed by [method _input] or any "
"GUI [Control] item. It is called after [method _shortcut_input] and after "
"[method _unhandled_key_input]. The input event propagates up through the node "
"tree until a node consumes it.\n"
"It is only called if unhandled input processing is enabled, which is done "
"automatically if this method is overridden, and can be toggled with [method "
"set_process_unhandled_input].\n"
"To consume the input event and stop it propagating further to other nodes, "
"[method Viewport.set_input_as_handled] can be called.\n"
"For gameplay input, this method is usually a better fit than [method _input], "
"as GUI events need a higher priority. For keyboard shortcuts, consider using "
"[method _shortcut_input] instead, as it is called before this method. "
"Finally, to handle keyboard events, consider using [method "
"_unhandled_key_input] for performance reasons.\n"
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not an orphan)."
msgstr ""
"Вызывается, когда [InputEvent] не был использован [method _input] или любым "
"элементом GUI [Control]. Он вызывается после [method _shortcut_input] и после "
"[method _unhandled_key_input]. Событие ввода распространяется вверх по дереву "
"узлов, пока узел не использует его.\n"
"Он вызывается только в том случае, если включена обработка необработанного "
"ввода, что выполняется автоматически, если этот метод переопределен, и может "
"быть переключено с помощью [method set_process_unhandled_input].\n"
"Чтобы использовать событие ввода и остановить его дальнейшее распространение "
"на другие узлы, можно вызвать [method Viewport.set_input_as_handled].\n"
"Для игрового ввода этот метод обычно подходит лучше, чем [method _input], так "
"как событиям GUI требуется более высокий приоритет. Для сочетаний клавиш "
"рассмотрите возможность использования [method _shortcut_input], так как он "
"вызывается перед этим методом. Наконец, для обработки событий клавиатуры "
"рассмотрите возможность использования [method _unhandled_key_input] из "
"соображений производительности.\n"
"[b]Примечание:[/b] Этот метод вызывается только в том случае, если узел "
"присутствует в дереве сцены (т. е. если он не является сиротой)."

msgid ""
"Called when an [InputEventKey] hasn't been consumed by [method _input] or any "
"GUI [Control] item. It is called after [method _shortcut_input] but before "
"[method _unhandled_input]. The input event propagates up through the node "
"tree until a node consumes it.\n"
"It is only called if unhandled key input processing is enabled, which is done "
"automatically if this method is overridden, and can be toggled with [method "
"set_process_unhandled_key_input].\n"
"To consume the input event and stop it propagating further to other nodes, "
"[method Viewport.set_input_as_handled] can be called.\n"
"This method can be used to handle Unicode character input with [kbd]Alt[/"
"kbd], [kbd]Alt + Ctrl[/kbd], and [kbd]Alt + Shift[/kbd] modifiers, after "
"shortcuts were handled.\n"
"For gameplay input, this and [method _unhandled_input] are usually a better "
"fit than [method _input], as GUI events should be handled first. This method "
"also performs better than [method _unhandled_input], since unrelated events "
"such as [InputEventMouseMotion] are automatically filtered. For shortcuts, "
"consider using [method _shortcut_input] instead.\n"
"[b]Note:[/b] This method is only called if the node is present in the scene "
"tree (i.e. if it's not an orphan)."
msgstr ""
"Вызывается, когда [InputEventKey] не был использован [method _input] или "
"любым элементом GUI [Control]. Вызывается после [method _shortcut_input], но "
"до [method _unhandled_input]. Событие ввода распространяется вверх по дереву "
"узлов, пока узел не потребит его.\n"
"Вызывается только в том случае, если включена обработка необработанного ввода "
"клавиш, что выполняется автоматически, если этот метод переопределен, и может "
"быть переключено с помощью [method set_process_unhandled_key_input].\n"
"Чтобы использовать событие ввода и остановить его дальнейшее распространение "
"на другие узлы, можно вызвать [method Viewport.set_input_as_handled].\n"
"Этот метод можно использовать для обработки ввода символов Unicode с "
"модификаторами [kbd]Alt[/kbd], [kbd]Alt + Ctrl[/kbd] и [kbd]Alt + Shift[/kbd] "
"после обработки сочетаний клавиш.\n"
"Для игрового ввода этот и [method _unhandled_input] обычно подходят лучше, "
"чем [method _input], так как события GUI должны обрабатываться в первую "
"очередь. Этот метод также работает лучше, чем [method _unhandled_input], так "
"как несвязанные события, такие как [InputEventMouseMotion], автоматически "
"фильтруются. Для сочетаний клавиш рассмотрите возможность использования "
"[method _shortcut_input].\n"
"[b]Примечание:[/b] Этот метод вызывается только в том случае, если узел "
"присутствует в дереве сцены (т. е. если он не является сиротой)."

msgid ""
"Adds a child [param node]. Nodes can have any number of children, but every "
"child must have a unique name. Child nodes are automatically deleted when the "
"parent node is deleted, so an entire scene can be removed by deleting its "
"topmost node.\n"
"If [param force_readable_name] is [code]true[/code], improves the readability "
"of the added [param node]. If not named, the [param node] is renamed to its "
"type, and if it shares [member name] with a sibling, a number is suffixed "
"more appropriately. This operation is very slow. As such, it is recommended "
"leaving this to [code]false[/code], which assigns a dummy name featuring "
"[code]@[/code] in both situations.\n"
"If [param internal] is different than [constant INTERNAL_MODE_DISABLED], the "
"child will be added as internal node. These nodes are ignored by methods like "
"[method get_children], unless their parameter [code]include_internal[/code] "
"is [code]true[/code]. It also prevents these nodes being duplicated with "
"their parent. The intended usage is to hide the internal nodes from the user, "
"so the user won't accidentally delete or modify them. Used by some GUI nodes, "
"e.g. [ColorPicker].\n"
"[b]Note:[/b] If [param node] already has a parent, this method will fail. Use "
"[method remove_child] first to remove [param node] from its current parent. "
"For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var child_node = get_child(0)\n"
"if child_node.get_parent():\n"
"\tchild_node.get_parent().remove_child(child_node)\n"
"add_child(child_node)\n"
"[/gdscript]\n"
"[csharp]\n"
"Node childNode = GetChild(0);\n"
"if (childNode.GetParent() != null)\n"
"{\n"
"\tchildNode.GetParent().RemoveChild(childNode);\n"
"}\n"
"AddChild(childNode);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you need the child node to be added below a specific node in the list of "
"children, use [method add_sibling] instead of this method.\n"
"[b]Note:[/b] If you want a child to be persisted to a [PackedScene], you must "
"set [member owner] in addition to calling [method add_child]. This is "
"typically relevant for [url=$DOCS_URL/tutorials/plugins/"
"running_code_in_the_editor.html]tool scripts[/url] and [url=$DOCS_URL/"
"tutorials/plugins/editor/index.html]editor plugins[/url]. If [method "
"add_child] is called without setting [member owner], the newly added [Node] "
"will not be visible in the scene tree, though it will be visible in the 2D/3D "
"view."
msgstr ""
"Добавляет дочерний [param node]. Узлы могут иметь любое количество дочерних "
"узлов, но каждый дочерний узел должен иметь уникальное имя. Дочерние узлы "
"автоматически удаляются при удалении родительского узла, поэтому всю сцену "
"можно удалить, удалив ее самый верхний узел.\n"
"Если [param force_readable_name] равно [code]true[/code], улучшается "
"читаемость добавленного [param node]. Если не указано имя, [param node] "
"переименовывается в свой тип, и если он разделяет [member name] с родственным "
"узлом, то добавляется более подходящий суффикс. Эта операция очень медленная. "
"Поэтому рекомендуется оставить это [code]false[/code], что присваивает "
"фиктивное имя с [code]@[/code] в обеих ситуациях.\n"
"Если [param internal] отличается от [constant INTERNAL_MODE_DISABLED], "
"дочерний узел будет добавлен как внутренний узел. Эти узлы игнорируются "
"такими методами, как [method get_children], если только их параметр "
"[code]include_internal[/code] не равен [code]true[/code]. Он также "
"предотвращает дублирование этих узлов с их родителем. Предполагаемое "
"использование — скрыть внутренние узлы от пользователя, чтобы пользователь "
"случайно не удалил или не изменил их. Используется некоторыми узлами GUI, "
"например [ColorPicker].\n"
"[b]Примечание:[/b] Если у [param node] уже есть родитель, этот метод не "
"сработает. Сначала используйте [method remove_child], чтобы удалить [param "
"node] из его текущего родителя. Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var child_node = get_child(0)\n"
"if child_node.get_parent():\n"
"\tchild_node.get_parent().remove_child(child_node)\n"
"add_child(child_node)\n"
"[/gdscript]\n"
"[csharp]\n"
"Node childNode = GetChild(0);\n"
"if (childNode.GetParent() != null)\n"
"{\n"
"\tchildNode.GetParent().RemoveChild(childNode);\n"
"}\n"
"AddChild(childNode);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Если вам нужно, чтобы дочерний узел был добавлен под определенным узлом в "
"списке дочерних узлов, используйте [method add_sibling] вместо этого метода.\n"
"[b]Примечание:[/b] Если вы хотите, чтобы дочерний узел сохранялся в "
"[PackedScene], вы должны установить [member owner] в дополнение к вызову "
"[method add_child]. Это обычно актуально для [url=$DOCS_URL/tutorials/plugins/"
"running_code_in_the_editor.html]скриптов инструментов[/url] и [url=$DOCS_URL/"
"tutorials/plugins/editor/index.html]плагинов редактора[/url]. Если [method "
"add_child] вызывается без установки [member owner], недавно добавленный "
"[Node] не будет виден в дереве сцены, хотя он будет виден в 2D/3D-виде."

msgid ""
"Adds a [param sibling] node to this node's parent, and moves the added "
"sibling right below this node.\n"
"If [param force_readable_name] is [code]true[/code], improves the readability "
"of the added [param sibling]. If not named, the [param sibling] is renamed to "
"its type, and if it shares [member name] with a sibling, a number is suffixed "
"more appropriately. This operation is very slow. As such, it is recommended "
"leaving this to [code]false[/code], which assigns a dummy name featuring "
"[code]@[/code] in both situations.\n"
"Use [method add_child] instead of this method if you don't need the child "
"node to be added below a specific node in the list of children.\n"
"[b]Note:[/b] If this node is internal, the added sibling will be internal too "
"(see [method add_child]'s [code]internal[/code] parameter)."
msgstr ""
"Добавляет узел [param sibling] к родительскому узлу этого узла и перемещает "
"добавленный сестринский узел прямо под этот узел.\n"
"Если [param force_readable_name] равно [code]true[/code], улучшается "
"читаемость добавленного [param sibling]. Если не указано, [param sibling] "
"переименовывается в свой тип, и если он разделяет [member name] с сестринским "
"узлом, то добавляется более подходящий суффикс. Эта операция очень медленная. "
"Поэтому рекомендуется оставить это [code]false[/code], что присваивает "
"фиктивное имя с [code]@[/code] в обеих ситуациях.\n"
"Используйте [method add_child] вместо этого метода, если вам не нужно, чтобы "
"дочерний узел добавлялся под определенный узел в списке дочерних узлов.\n"
"[b]Примечание:[/b] Если этот узел является внутренним, добавленный "
"родственный узел также будет внутренним (см. параметр [code]internal[/code] "
"[method add_child])."

msgid ""
"Adds the node to the [param group]. Groups can be helpful to organize a "
"subset of nodes, for example [code]\"enemies\"[/code] or [code]"
"\"collectables\"[/code]. See notes in the description, and the group methods "
"in [SceneTree].\n"
"If [param persistent] is [code]true[/code], the group will be stored when "
"saved inside a [PackedScene]. All groups created and displayed in the Node "
"dock are persistent.\n"
"[b]Note:[/b] To improve performance, the order of group names is [i]not[/i] "
"guaranteed and may vary between project runs. Therefore, do not rely on the "
"group order.\n"
"[b]Note:[/b] [SceneTree]'s group methods will [i]not[/i] work on this node if "
"not inside the tree (see [method is_inside_tree])."
msgstr ""
"Добавляет узел в [param group]. Группы могут быть полезны для организации "
"подмножества узлов, например [code]\"enemies\"[/code] или [code]"
"\"collectables\"[/code]. См. примечания в описании и методы групп в "
"[SceneTree].\n"
"Если [param persistent] равно [code]true[/code], группа будет сохранена при "
"сохранении внутри [PackedScene]. Все группы, созданные и отображаемые в доке "
"Node, являются постоянными.\n"
"[b]Примечание:[/b] Для повышения производительности порядок имен групп [i]не[/"
"i] гарантирован и может меняться между запусками проекта. Поэтому не "
"полагайтесь на порядок групп.\n"
"[b]Примечание:[/b] Методы групп [SceneTree] [i]не[/i] будут работать на этом "
"узле, если он не находится внутри дерева (см. [method is_inside_tree])."

msgid ""
"Translates a [param message], using the translation catalogs configured in "
"the Project Settings. Further [param context] can be specified to help with "
"the translation. Note that most [Control] nodes automatically translate their "
"strings, so this method is mostly useful for formatted strings or custom "
"drawn text.\n"
"This method works the same as [method Object.tr], with the addition of "
"respecting the [member auto_translate_mode] state.\n"
"If [method Object.can_translate_messages] is [code]false[/code], or no "
"translation is available, this method returns the [param message] without "
"changes. See [method Object.set_message_translation].\n"
"For detailed examples, see [url=$DOCS_URL/tutorials/i18n/"
"internationalizing_games.html]Internationalizing games[/url]."
msgstr ""
"Переводит [param message], используя каталоги перевода, настроенные в "
"настройках проекта. Для помощи с переводом можно указать дополнительный "
"[param context]. Обратите внимание, что большинство узлов [Control] "
"автоматически переводят свои строки, поэтому этот метод в основном полезен "
"для форматированных строк или пользовательского нарисованного текста.\n"
"Этот метод работает так же, как [method Object.tr], с добавлением соблюдения "
"состояния [member auto_translate_mode].\n"
"Если [method Object.can_translate_messages] равен [code]false[/code] или "
"перевод недоступен, этот метод возвращает [param message] без изменений. См. "
"[method Object.set_message_translation].\n"
"Подробные примеры см. в [url=$DOCS_URL/tutorials/i18n/"
"internationalizing_games.html]Интернационализация игр[/url]."

msgid ""
"Translates a [param message] or [param plural_message], using the translation "
"catalogs configured in the Project Settings. Further [param context] can be "
"specified to help with the translation.\n"
"This method works the same as [method Object.tr_n], with the addition of "
"respecting the [member auto_translate_mode] state.\n"
"If [method Object.can_translate_messages] is [code]false[/code], or no "
"translation is available, this method returns [param message] or [param "
"plural_message], without changes. See [method "
"Object.set_message_translation].\n"
"The [param n] is the number, or amount, of the message's subject. It is used "
"by the translation system to fetch the correct plural form for the current "
"language.\n"
"For detailed examples, see [url=$DOCS_URL/tutorials/i18n/"
"localization_using_gettext.html]Localization using gettext[/url].\n"
"[b]Note:[/b] Negative and [float] numbers may not properly apply to some "
"countable subjects. It's recommended to handle these cases with [method atr]."
msgstr ""
"Переводит [param message] или [param plural_message], используя каталоги "
"перевода, настроенные в настройках проекта. Для помощи с переводом можно "
"указать дополнительный [param context].\n"
"Этот метод работает так же, как [method Object.tr_n], с добавлением "
"соблюдения состояния [member auto_translate_mode].\n"
"Если [method Object.can_translate_messages] имеет значение [code]false[/code] "
"или перевод недоступен, этот метод возвращает [param message] или [param "
"plural_message] без изменений. См. [method Object.set_message_translation].\n"
"[param n] — это номер или количество темы сообщения. Он используется системой "
"перевода для получения правильной формы множественного числа для текущего "
"языка.\n"
"Подробные примеры см. в [url=$DOCS_URL/tutorials/i18n/"
"localization_using_gettext.html]Локализация с использованием gettext[/url].\n"
"[b]Примечание:[/b] Отрицательные и [float] числа могут некорректно "
"применяться к некоторым исчисляемым субъектам. Рекомендуется обрабатывать "
"такие случаи с помощью [method atr]."

msgid ""
"This function is similar to [method Object.call_deferred] except that the "
"call will take place when the node thread group is processed. If the node "
"thread group processes in sub-threads, then the call will be done on that "
"thread, right before [constant NOTIFICATION_PROCESS] or [constant "
"NOTIFICATION_PHYSICS_PROCESS], the [method _process] or [method "
"_physics_process] or their internal versions are called."
msgstr ""
"Эта функция похожа на [method Object.call_deferred], за исключением того, что "
"вызов будет иметь место, когда обрабатывается группа потоков узла. Если "
"группа потоков узла обрабатывается в подпотоках, то вызов будет сделан в этом "
"потоке, прямо перед вызовом [constant NOTIFICATION_PROCESS] или [constant "
"NOTIFICATION_PHYSICS_PROCESS], [method _process] или [method "
"_physics_process] или их внутренних версий."

msgid ""
"This function ensures that the calling of this function will succeed, no "
"matter whether it's being done from a thread or not. If called from a thread "
"that is not allowed to call the function, the call will become deferred. "
"Otherwise, the call will go through directly."
msgstr ""
"Эта функция гарантирует, что вызов этой функции будет успешным, независимо от "
"того, выполняется ли он из потока или нет. Если он вызван из потока, которому "
"не разрешено вызывать функцию, вызов станет отложенным. В противном случае "
"вызов будет выполнен напрямую."

msgid ""
"Returns [code]true[/code] if this node can automatically translate messages "
"depending on the current locale. See [member auto_translate_mode], [method "
"atr], and [method atr_n]."
msgstr ""
"Возвращает [code]true[/code], если этот узел может автоматически переводить "
"сообщения в зависимости от текущей локали. См. [member auto_translate_mode], "
"[method atr] и [method atr_n]."

msgid ""
"Returns [code]true[/code] if the node can receive processing notifications "
"and input callbacks ([constant NOTIFICATION_PROCESS], [method _input], etc.) "
"from the [SceneTree] and [Viewport]. The returned value depends on [member "
"process_mode]:\n"
"- If set to [constant PROCESS_MODE_PAUSABLE], returns [code]true[/code] when "
"the game is processing, i.e. [member SceneTree.paused] is [code]false[/"
"code];\n"
"- If set to [constant PROCESS_MODE_WHEN_PAUSED], returns [code]true[/code] "
"when the game is paused, i.e. [member SceneTree.paused] is [code]true[/"
"code];\n"
"- If set to [constant PROCESS_MODE_ALWAYS], always returns [code]true[/"
"code];\n"
"- If set to [constant PROCESS_MODE_DISABLED], always returns [code]false[/"
"code];\n"
"- If set to [constant PROCESS_MODE_INHERIT], use the parent node's [member "
"process_mode] to determine the result.\n"
"If the node is not inside the tree, returns [code]false[/code] no matter the "
"value of [member process_mode]."
msgstr ""
"Возвращает [code]true[/code], если узел может получать уведомления об "
"обработке и обратные вызовы ввода ([constant NOTIFICATION_PROCESS], [method "
"_input] и т. д.) из [SceneTree] и [Viewport]. Возвращаемое значение зависит "
"от [member process_mode]:\n"
"- Если установлено значение [constant PROCESS_MODE_PAUSABLE], возвращает "
"[code]true[/code], когда игра обрабатывается, т. е. [member SceneTree.paused] "
"равно [code]false[/code];\n"
"- Если установлено значение [constant PROCESS_MODE_WHEN_PAUSED], возвращает "
"[code]true[/code], когда игра приостановлена, т. е. [member SceneTree.paused] "
"равно [code]true[/code];\n"
"- Если установлено значение [constant PROCESS_MODE_ALWAYS], всегда возвращает "
"[code]true[/code];\n"
"- Если установлено значение [constant PROCESS_MODE_DISABLED], всегда "
"возвращает [code]false[/code];\n"
"- Если установлено значение [constant PROCESS_MODE_INHERIT], используйте "
"[member process_mode] родительского узла для определения результата.\n"
"Если узел не находится внутри дерева, возвращает [code]false[/code] "
"независимо от значения [member process_mode]."

msgid ""
"Creates a new [Tween] and binds it to this node.\n"
"This is the equivalent of doing:\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_tree().create_tween().bind_node(self)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetTree().CreateTween().BindNode(this);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The Tween will start automatically on the next process frame or physics frame "
"(depending on [enum Tween.TweenProcessMode]). See [method Tween.bind_node] "
"for more info on Tweens bound to nodes.\n"
"[b]Note:[/b] The method can still be used when the node is not inside "
"[SceneTree]. It can fail in an unlikely case of using a custom [MainLoop]."
msgstr ""
"Создает новый [Tween] и привязывает его к этому узлу.\n"
"Это эквивалентно выполнению:\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_tree().create_tween().bind_node(self)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetTree().CreateTween().BindNode(this);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Tween автоматически запустится на следующем кадре процесса или физическом "
"кадре (в зависимости от [enum Tween.TweenProcessMode]). См. [method "
"Tween.bind_node] для получения дополнительной информации о Tween, привязанных "
"к узлам.\n"
"[b]Примечание:[/b] Метод все еще можно использовать, когда узел не находится "
"внутри [SceneTree]. Он может дать сбой в маловероятном случае использования "
"пользовательского [MainLoop]."

msgid ""
"Duplicates the node, returning a new node with all of its properties, "
"signals, groups, and children copied from the original. The behavior can be "
"tweaked through the [param flags] (see [enum DuplicateFlags]). Internal nodes "
"are not duplicated.\n"
"[b]Note:[/b] For nodes with a [Script] attached, if [method Object._init] has "
"been defined with required parameters, the duplicated node will not have a "
"[Script]."
msgstr ""
"Дублирует узел, возвращая новый узел со всеми его свойствами, сигналами, "
"группами и дочерними элементами, скопированными из оригинала. Поведение можно "
"настроить с помощью [param flags] (см. [enum DuplicateFlags]). Внутренние "
"узлы не дублируются.\n"
"[b]Примечание:[/b] Для узлов с присоединенным [Script], если [method "
"Object._init] был определен с требуемыми параметрами, дублированный узел не "
"будет иметь [Script]."

msgid ""
"Finds the first descendant of this node whose [member name] matches [param "
"pattern], returning [code]null[/code] if no match is found. The matching is "
"done against node names, [i]not[/i] their paths, through [method "
"String.match]. As such, it is case-sensitive, [code]\"*\"[/code] matches zero "
"or more characters, and [code]\"?\"[/code] matches any single character.\n"
"If [param recursive] is [code]false[/code], only this node's direct children "
"are checked. Nodes are checked in tree order, so this node's first direct "
"child is checked first, then its own direct children, etc., before moving to "
"the second direct child, and so on. Internal children are also included in "
"the search (see [code]internal[/code] parameter in [method add_child]).\n"
"If [param owned] is [code]true[/code], only descendants with a valid [member "
"owner] node are checked.\n"
"[b]Note:[/b] This method can be very slow. Consider storing a reference to "
"the found node in a variable. Alternatively, use [method get_node] with "
"unique names (see [member unique_name_in_owner]).\n"
"[b]Note:[/b] To find all descendant nodes matching a pattern or a class type, "
"see [method find_children]."
msgstr ""
"Находит первого потомка этого узла, чье [member name] соответствует [param "
"pattern], возвращая [code]null[/code], если совпадений не найдено. "
"Сопоставление выполняется с именами узлов, [i]не[/i] их путями, через [method "
"String.match]. Таким образом, он чувствителен к регистру, [code]\"*\"[/code] "
"соответствует нулю или более символов, а [code]\"?\"[/code] соответствует "
"любому одному символу.\n"
"Если [param recursive] равен [code]false[/code], проверяются только прямые "
"потомки этого узла. Узлы проверяются в порядке дерева, поэтому сначала "
"проверяется первый прямой потомок этого узла, затем его собственные прямые "
"потомки и т. д., прежде чем перейти ко второму прямому потомку и т. д. "
"Внутренние потомки также включаются в поиск (см. параметр [code]internal[/"
"code] в [method add_child]).\n"
"Если [param owned] равен [code]true[/code], проверяются только потомки с "
"допустимым узлом [member owner].\n"
"[b]Примечание:[/b] Этот метод может быть очень медленным. Рассмотрите "
"возможность сохранения ссылки на найденный узел в переменной. В качестве "
"альтернативы используйте [method get_node] с уникальными именами (см. [member "
"unique_name_in_owner]).\n"
"[b]Примечание:[/b] Чтобы найти все узлы-потомки, соответствующие шаблону или "
"типу класса, см. [method find_children]."

msgid ""
"Finds all descendants of this node whose names match [param pattern], "
"returning an empty [Array] if no match is found. The matching is done against "
"node names, [i]not[/i] their paths, through [method String.match]. As such, "
"it is case-sensitive, [code]\"*\"[/code] matches zero or more characters, and "
"[code]\"?\"[/code] matches any single character.\n"
"If [param type] is not empty, only ancestors inheriting from [param type] are "
"included (see [method Object.is_class]).\n"
"If [param recursive] is [code]false[/code], only this node's direct children "
"are checked. Nodes are checked in tree order, so this node's first direct "
"child is checked first, then its own direct children, etc., before moving to "
"the second direct child, and so on. Internal children are also included in "
"the search (see [code]internal[/code] parameter in [method add_child]).\n"
"If [param owned] is [code]true[/code], only descendants with a valid [member "
"owner] node are checked.\n"
"[b]Note:[/b] This method can be very slow. Consider storing references to the "
"found nodes in a variable.\n"
"[b]Note:[/b] To find a single descendant node matching a pattern, see [method "
"find_child]."
msgstr ""
"Находит всех потомков этого узла, имена которых соответствуют [param "
"pattern], возвращая пустой [Array], если совпадений не найдено. Сопоставление "
"выполняется по именам узлов, [i]не[/i] их путям, через [method String.match]. "
"Таким образом, он чувствителен к регистру, [code]\"*\"[/code] соответствует "
"нулю или более символов, а [code]\"?\"[/code] соответствует любому одному "
"символу.\n"
"Если [param type] не пуст, включаются только предки, наследующие от [param "
"type] (см. [method Object.is_class]).\n"
"Если [param recursive] равен [code]false[/code], проверяются только прямые "
"потомки этого узла. Узлы проверяются в порядке дерева, поэтому сначала "
"проверяется первый прямой потомок этого узла, затем его собственные прямые "
"потомки и т. д., прежде чем перейти ко второму прямому потомку и т. д. "
"Внутренние потомки также включаются в поиск (см. параметр [code]internal[/"
"code] в [method add_child]).\n"
"Если [param owned] равен [code]true[/code], проверяются только потомки с "
"допустимым узлом [member owner].\n"
"[b]Примечание:[/b] Этот метод может быть очень медленным. Рассмотрите "
"возможность сохранения ссылок на найденные узлы в переменной.\n"
"[b]Примечание:[/b] Чтобы найти один узел-потомок, соответствующий шаблону, "
"см. [method find_child]."

msgid ""
"Finds the first ancestor of this node whose [member name] matches [param "
"pattern], returning [code]null[/code] if no match is found. The matching is "
"done through [method String.match]. As such, it is case-sensitive, [code]"
"\"*\"[/code] matches zero or more characters, and [code]\"?\"[/code] matches "
"any single character. See also [method find_child] and [method "
"find_children].\n"
"[b]Note:[/b] As this method walks upwards in the scene tree, it can be slow "
"in large, deeply nested nodes. Consider storing a reference to the found node "
"in a variable. Alternatively, use [method get_node] with unique names (see "
"[member unique_name_in_owner])."
msgstr ""
"Находит первого предка этого узла, чье [member name] соответствует [param "
"pattern], возвращая [code]null[/code], если совпадений не найдено. "
"Сопоставление выполняется с помощью [method String.match]. Таким образом, он "
"чувствителен к регистру, [code]\"*\"[/code] соответствует нулю или более "
"символов, а [code]\"?\"[/code] соответствует любому отдельному символу. См. "
"также [method find_child] и [method find_children].\n"
"[b]Примечание:[/b] Поскольку этот метод идет вверх по дереву сцены, он может "
"быть медленным в больших, глубоко вложенных узлах. Рассмотрите возможность "
"сохранения ссылки на найденный узел в переменной. В качестве альтернативы "
"используйте [method get_node] с уникальными именами (см. [method "
"unique_name_in_owner])."

msgid ""
"Returns main accessibility element RID.\n"
"[b]Note:[/b] This method should be called only during accessibility "
"information updates ([constant NOTIFICATION_ACCESSIBILITY_UPDATE])."
msgstr ""
"Возвращает основной элемент доступности RID.\n"
"[b]Примечание:[/b] Этот метод следует вызывать только во время обновлений "
"информации о доступности ([constant NOTIFICATION_ACCESSIBILITY_UPDATE])."

msgid ""
"Fetches a child node by its index. Each child node has an index relative to "
"its siblings (see [method get_index]). The first child is at index 0. "
"Negative values can also be used to start from the end of the list. This "
"method can be used in combination with [method get_child_count] to iterate "
"over this node's children. If no child exists at the given index, this method "
"returns [code]null[/code] and an error is generated.\n"
"If [param include_internal] is [code]false[/code], internal children are "
"ignored (see [method add_child]'s [code]internal[/code] parameter).\n"
"[codeblock]\n"
"# Assuming the following are children of this node, in order:\n"
"# First, Middle, Last.\n"
"\n"
"var a = get_child(0).name  # a is \"First\"\n"
"var b = get_child(1).name  # b is \"Middle\"\n"
"var b = get_child(2).name  # b is \"Last\"\n"
"var c = get_child(-1).name # c is \"Last\"\n"
"[/codeblock]\n"
"[b]Note:[/b] To fetch a node by [NodePath], use [method get_node]."
msgstr ""
"Извлекает дочерний узел по его индексу. Каждый дочерний узел имеет индекс "
"относительно своих братьев и сестер (см. [method get_index]). Первый дочерний "
"узел имеет индекс 0. Отрицательные значения также могут использоваться для "
"начала с конца списка. Этот метод можно использовать в сочетании с [method "
"get_child_count] для итерации по дочерним узлам этого узла. Если по "
"указанному индексу дочерний узел не существует, этот метод возвращает "
"[code]null[/code] и генерируется ошибка.\n"
"Если [param include_internal] равен [code]false[/code], внутренние дочерние "
"узлы игнорируются (см. параметр [method add_child] [code]internal[/code]).\n"
"[codeblock]\n"
"# Предположим, что следующие элементы являются дочерними элементами этого "
"узла (по порядку):\n"
"# Первый, Средний, Последний.\n"
"\n"
"var a = get_child(0).name  # a это \"Первый\"\n"
"var b = get_child(1).name  # b это \"Средний\"\n"
"var b = get_child(2).name  # b это \"Последний\"\n"
"var c = get_child(-1).name # c это \"Последний\"\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Чтобы получить узел по [NodePath], используйте [method "
"get_node]."

msgid ""
"Returns the number of children of this node.\n"
"If [param include_internal] is [code]false[/code], internal children are not "
"counted (see [method add_child]'s [code]internal[/code] parameter)."
msgstr ""
"Возвращает количество дочерних элементов этого узла.\n"
"Если [param include_internal] равен [code]false[/code], внутренние дочерние "
"элементы не учитываются (см. параметр [code]internal[/code] [method "
"add_child])."

msgid ""
"Returns all children of this node inside an [Array].\n"
"If [param include_internal] is [code]false[/code], excludes internal children "
"from the returned array (see [method add_child]'s [code]internal[/code] "
"parameter)."
msgstr ""
"Возвращает все дочерние элементы этого узла внутри [Array].\n"
"Если [param include_internal] равен [code]false[/code], исключает внутренние "
"дочерние элементы из возвращаемого массива (см. параметр [code]internal[/"
"code] [method add_child])."

msgid ""
"Returns an [Array] of group names that the node has been added to.\n"
"[b]Note:[/b] To improve performance, the order of group names is [i]not[/i] "
"guaranteed and may vary between project runs. Therefore, do not rely on the "
"group order.\n"
"[b]Note:[/b] This method may also return some group names starting with an "
"underscore ([code]_[/code]). These are internally used by the engine. To "
"avoid conflicts, do not use custom groups starting with underscores. To "
"exclude internal groups, see the following code snippet:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Stores the node's non-internal groups only (as an array of StringNames).\n"
"var non_internal_groups = []\n"
"for group in get_groups():\n"
"\tif not str(group).begins_with(\"_\"):\n"
"\t\tnon_internal_groups.push_back(group)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Stores the node's non-internal groups only (as a List of StringNames).\n"
"List<string> nonInternalGroups = new List<string>();\n"
"foreach (string group in GetGroups())\n"
"{\n"
"\tif (!group.BeginsWith(\"_\"))\n"
"\t\tnonInternalGroups.Add(group);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [Array] имен групп, в которые был добавлен узел.\n"
"[b]Примечание:[/b] Для повышения производительности порядок имен групп [i]не[/"
"i] гарантирован и может меняться между запусками проекта. Поэтому не "
"полагайтесь на порядок групп.\n"
"[b]Примечание:[/b] Этот метод также может возвращать некоторые имена групп, "
"начинающиеся с подчеркивания ([code]_[/code]). Они используются движком "
"внутри. Чтобы избежать конфликтов, не используйте пользовательские группы, "
"начинающиеся с подчеркивания. Чтобы исключить внутренние группы, см. "
"следующий фрагмент кода:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Сохраняет только невнутренние группы узла (в виде массива StringNames).\n"
"var non_internal_groups = []\n"
"for group in get_groups():\n"
"\tif not str(group).begins_with(\"_\"):\n"
"\t\tnon_internal_groups.push_back(group)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Сохраняет только невнутренние группы узла (в виде массива StringNames).\n"
"List<string> nonInternalGroups = new List<string>();\n"
"foreach (string group in GetGroups())\n"
"{\n"
"\tif (!group.BeginsWith(\"_\"))\n"
"\t\tnonInternalGroups.Add(group);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns this node's order among its siblings. The first node's index is "
"[code]0[/code]. See also [method get_child].\n"
"If [param include_internal] is [code]false[/code], returns the index ignoring "
"internal children. The first, non-internal child will have an index of "
"[code]0[/code] (see [method add_child]'s [code]internal[/code] parameter)."
msgstr ""
"Возвращает порядок этого узла среди его братьев и сестер. Индекс первого узла "
"— [code]0[/code]. См. также [method get_child].\n"
"Если [param include_internal] — [code]false[/code], возвращает индекс, "
"игнорируя внутренние дочерние элементы. Первый, не внутренний дочерний "
"элемент будет иметь индекс [code]0[/code] (см. параметр [method add_child] "
"[code]internal[/code])."

msgid ""
"Returns the [Window] that contains this node, or the last exclusive child in "
"a chain of windows starting with the one that contains this node."
msgstr ""
"Возвращает [Window], содержащее этот узел, или последний исключительный "
"дочерний элемент в цепочке окон, начиная с того, которое содержит этот узел."

msgid ""
"Returns the peer ID of the multiplayer authority for this node. See [method "
"set_multiplayer_authority]."
msgstr ""
"Возвращает идентификатор пира многопользовательского органа для этого узла. "
"См. [method set_multiplayer_authority]."

msgid ""
"Fetches a node. The [NodePath] can either be a relative path (from this "
"node), or an absolute path (from the [member SceneTree.root]) to a node. If "
"[param path] does not point to a valid node, generates an error and returns "
"[code]null[/code]. Attempts to access methods on the return value will result "
"in an [i]\"Attempt to call <method> on a null instance.\"[/i] error.\n"
"[b]Note:[/b] Fetching by absolute path only works when the node is inside the "
"scene tree (see [method is_inside_tree]).\n"
"[b]Example:[/b] Assume this method is called from the Character node, inside "
"the following tree:\n"
"[codeblock lang=text]\n"
" ┖╴root\n"
"    ┠╴Character (you are here!)\n"
"    ┃  ┠╴Sword\n"
"    ┃  ┖╴Backpack\n"
"    ┃     ┖╴Dagger\n"
"    ┠╴MyGame\n"
"    ┖╴Swamp\n"
"       ┠╴Alligator\n"
"       ┠╴Mosquito\n"
"       ┖╴Goblin\n"
"[/codeblock]\n"
"The following calls will return a valid node:\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_node(\"Sword\")\n"
"get_node(\"Backpack/Dagger\")\n"
"get_node(\"../Swamp/Alligator\")\n"
"get_node(\"/root/MyGame\")\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode(\"Sword\");\n"
"GetNode(\"Backpack/Dagger\");\n"
"GetNode(\"../Swamp/Alligator\");\n"
"GetNode(\"/root/MyGame\");\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Извлекает узел. [NodePath] может быть относительным путем (от этого узла) или "
"абсолютным путем (от [member SceneTree.root]) к узлу. Если [param path] не "
"указывает на допустимый узел, генерирует ошибку и возвращает [code]null[/"
"code]. Попытки доступа к методам возвращаемого значения приведут к ошибке [i]"
"\"Попытка вызвать <method> для пустого экземпляра.\"[/i].\n"
"[b]Примечание:[/b] Извлечение по абсолютному пути работает только тогда, "
"когда узел находится внутри дерева сцены (см. [method is_inside_tree]).\n"
"[b]Пример:[/b] Предположим, что этот метод вызывается из узла Character "
"внутри следующего дерева:\n"
"[codeblock lang=text]\n"
" ┖╴root\n"
"    ┠╴Character (Вы здесь!)\n"
"    ┃  ┠╴Sword\n"
"    ┃  ┖╴Backpack\n"
"    ┃     ┖╴Dagger\n"
"    ┠╴MyGame\n"
"    ┖╴Swamp\n"
"       ┠╴Alligator\n"
"       ┠╴Mosquito\n"
"       ┖╴Goblin\n"
"[/codeblock]\n"
"Следующие вызовы вернут действительный узел:\n"
"[codeblocks]\n"
"[gdscript]\n"
"get_node(\"Sword\")\n"
"get_node(\"Backpack/Dagger\")\n"
"get_node(\"../Swamp/Alligator\")\n"
"get_node(\"/root/MyGame\")\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode(\"Sword\");\n"
"GetNode(\"Backpack/Dagger\");\n"
"GetNode(\"../Swamp/Alligator\");\n"
"GetNode(\"/root/MyGame\");\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Fetches a node and its most nested resource as specified by the [NodePath]'s "
"subname. Returns an [Array] of size [code]3[/code] where:\n"
"- Element [code]0[/code] is the [Node], or [code]null[/code] if not found;\n"
"- Element [code]1[/code] is the subname's last nested [Resource], or "
"[code]null[/code] if not found;\n"
"- Element [code]2[/code] is the remaining [NodePath], referring to an "
"existing, non-[Resource] property (see [method Object.get_indexed]).\n"
"[b]Example:[/b] Assume that the child's [member Sprite2D.texture] has been "
"assigned an [AtlasTexture]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = get_node_and_resource(\"Area2D/Sprite2D\")\n"
"print(a[0].name) # Prints Sprite2D\n"
"print(a[1])      # Prints <null>\n"
"print(a[2])      # Prints ^\"\"\n"
"\n"
"var b = get_node_and_resource(\"Area2D/Sprite2D:texture:atlas\")\n"
"print(b[0].name)        # Prints Sprite2D\n"
"print(b[1].get_class()) # Prints AtlasTexture\n"
"print(b[2])             # Prints ^\"\"\n"
"\n"
"var c = get_node_and_resource(\"Area2D/Sprite2D:texture:atlas:region\")\n"
"print(c[0].name)        # Prints Sprite2D\n"
"print(c[1].get_class()) # Prints AtlasTexture\n"
"print(c[2])             # Prints ^\":region\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = GetNodeAndResource(NodePath(\"Area2D/Sprite2D\"));\n"
"GD.Print(a[0].Name); // Prints Sprite2D\n"
"GD.Print(a[1]);      // Prints <null>\n"
"GD.Print(a[2]);      // Prints ^\"\n"
"\n"
"var b = GetNodeAndResource(NodePath(\"Area2D/Sprite2D:texture:atlas\"));\n"
"GD.Print(b[0].name);        // Prints Sprite2D\n"
"GD.Print(b[1].get_class()); // Prints AtlasTexture\n"
"GD.Print(b[2]);             // Prints ^\"\"\n"
"\n"
"var c = GetNodeAndResource(NodePath(\"Area2D/"
"Sprite2D:texture:atlas:region\"));\n"
"GD.Print(c[0].name);        // Prints Sprite2D\n"
"GD.Print(c[1].get_class()); // Prints AtlasTexture\n"
"GD.Print(c[2]);             // Prints ^\":region\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Извлекает узел и его наиболее вложенный ресурс, указанный в под имени "
"[NodePath]. Возвращает [Array] размером [code]3[/code], где:\n"
"- Элемент [code]0[/code] — это [Node], или [code]null[/code], если не "
"найден;\n"
"- Элемент [code]1[/code] — это последний вложенный в под имени [Resource] или "
"[code]null[/code], если не найден;\n"
"- Элемент [code]2[/code] — это оставшийся [NodePath], ссылающийся на "
"существующее свойство, отличное от [Resource] (см. [method "
"Object.get_indexed]).\n"
"[b]Пример:[/b] Предположим, что дочернему элементу [Member Sprite2D.texture] "
"присвоена [AtlasTexture]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = get_node_and_resource(\"Area2D/Sprite2D\")\n"
"print(a[0].name) # Выводит Sprite2D\n"
"print(a[1])      # Выводит <null>\n"
"print(a[2])      # Выводит ^\"\"\n"
"\n"
"var b = get_node_and_resource(\"Area2D/Sprite2D:texture:atlas\")\n"
"print(b[0].name)        # Выводит Sprite2D\n"
"print(b[1].get_class()) # Выводит AtlasTexture\n"
"print(b[2])             # Выводит ^\"\"\n"
"\n"
"var c = get_node_and_resource(\"Area2D/Sprite2D:texture:atlas:region\")\n"
"print(c[0].name)        # Выводит Sprite2D\n"
"print(c[1].get_class()) # Выводит AtlasTexture\n"
"print(c[2])             # Выводит ^\":region\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = GetNodeAndResource(NodePath(\"Area2D/Sprite2D\"));\n"
"GD.Print(a[0].Name); // Выводит Sprite2D\n"
"GD.Print(a[1]);      // Выводит <null>\n"
"GD.Print(a[2]);      // Выводит ^\"\n"
"\n"
"var b = GetNodeAndResource(NodePath(\"Area2D/Sprite2D:texture:atlas\"));\n"
"GD.Print(b[0].name);        // Выводит Sprite2D\n"
"GD.Print(b[1].get_class()); // Выводит AtlasTexture\n"
"GD.Print(b[2]);             // Выводит ^\"\"\n"
"\n"
"var c = GetNodeAndResource(NodePath(\"Area2D/"
"Sprite2D:texture:atlas:region\"));\n"
"GD.Print(c[0].name);        // Выводит Sprite2D\n"
"GD.Print(c[1].get_class()); // Выводит AtlasTexture\n"
"GD.Print(c[2]);             // Выводит ^\":region\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Fetches a node by [NodePath]. Similar to [method get_node], but does not "
"generate an error if [param path] does not point to a valid node."
msgstr ""
"Извлекает узел по [NodePath]. Аналогично [method get_node], но не генерирует "
"ошибку, если [param path] не указывает на допустимый узел."

msgid ""
"Returns a [Dictionary] mapping method names to their RPC configuration "
"defined for this node using [method rpc_config].\n"
"[b]Note:[/b] This method only returns the RPC configuration assigned via "
"[method rpc_config]. See [method Script.get_rpc_config] to retrieve the RPCs "
"defined by the [Script]."
msgstr ""
"Возвращает [Dictionary], сопоставляющий имена методов с их конфигурацией RPC, "
"определенной для этого узла, с помощью [method rpc_config].\n"
"[b]Примечание:[/b] Этот метод возвращает только конфигурацию RPC, назначенную "
"с помощью [method rpc_config]. См. [method Script.get_rpc_config], чтобы "
"получить RPC, определенным в [Script]."

msgid ""
"Returns object IDs of all orphan nodes (nodes outside the [SceneTree]). Used "
"for debugging.\n"
"[b]Note:[/b] [method get_orphan_node_ids] only works in debug builds. When "
"called in a project exported in release mode, [method get_orphan_node_ids] "
"will return an empty array."
msgstr ""
"Возвращает ID идентификаторы объектов всех узлов-сирот (узлов вне "
"[SceneTree]). Используется для отладки.\n"
"[b]Примечание:[/b] [method get_orphan_node_ids] работает только в отладочных "
"сборках. При вызове в проекте, экспортированном в режиме выпуска, [method "
"get_orphan_node_ids] вернет пустой массив."

msgid ""
"Returns this node's parent node, or [code]null[/code] if the node doesn't "
"have a parent."
msgstr ""
"Возвращает родительский узел данного узла или [code]null[/code], если у узла "
"нет родителя."

msgid ""
"Returns the node's absolute path, relative to the [member SceneTree.root]. If "
"the node is not inside the scene tree, this method fails and returns an empty "
"[NodePath]."
msgstr ""
"Возвращает абсолютный путь узла относительно [member SceneTree.root]. Если "
"узел не находится внутри дерева сцены, этот метод завершается ошибкой и "
"возвращает пустой [NodePath]."

msgid ""
"Returns the relative [NodePath] from this node to the specified [param node]. "
"Both nodes must be in the same [SceneTree] or scene hierarchy, otherwise this "
"method fails and returns an empty [NodePath].\n"
"If [param use_unique_path] is [code]true[/code], returns the shortest path "
"accounting for this node's unique name (see [member unique_name_in_owner]).\n"
"[b]Note:[/b] If you get a relative path which starts from a unique node, the "
"path may be longer than a normal relative path, due to the addition of the "
"unique node's name."
msgstr ""
"Возвращает относительный [NodePath] от этого узла до указанного [param node]. "
"Оба узла должны находиться в одной и той же [SceneTree] или иерархии сцены, в "
"противном случае этот метод завершается ошибкой и возвращает пустой "
"[NodePath].\n"
"Если [param use_unique_path] равен [code]true[/code], возвращает кратчайший "
"путь с учетом уникального имени этого узла (см. [member "
"unique_name_in_owner]).\n"
"[b]Примечание:[/b] Если вы получаете относительный путь, который начинается с "
"уникального узла, путь может быть длиннее обычного относительного пути из-за "
"добавления имени уникального узла."

msgid ""
"Returns the time elapsed (in seconds) since the last physics callback. This "
"value is identical to [method _physics_process]'s [code]delta[/code] "
"parameter, and is often consistent at run-time, unless [member "
"Engine.physics_ticks_per_second] is changed. See also [constant "
"NOTIFICATION_PHYSICS_PROCESS].\n"
"[b]Note:[/b] The returned value will be larger than expected if running at a "
"framerate lower than [member Engine.physics_ticks_per_second] / [member "
"Engine.max_physics_steps_per_frame] FPS. This is done to avoid \"spiral of "
"death\" scenarios where performance would plummet due to an ever-increasing "
"number of physics steps per frame. This behavior affects both [method "
"_process] and [method _physics_process]. As a result, avoid using "
"[code]delta[/code] for time measurements in real-world seconds. Use the "
"[Time] singleton's methods for this purpose instead, such as [method "
"Time.get_ticks_usec]."
msgstr ""
"Возвращает время, прошедшее (в секундах) с момента последнего обратного "
"вызова физики. Это значение идентично параметру [code]delta[/code] [method "
"_physics_process] и часто является постоянным во время выполнения, если "
"[member Engine.physics_ticks_per_second] не изменен. См. также [constant "
"NOTIFICATION_PHYSICS_PROCESS].\n"
"[b]Примечание:[/b] Возвращаемое значение будет больше ожидаемого, если "
"частота кадров ниже, чем [member Engine.physics_ticks_per_second] / [member "
"Engine.max_physics_steps_per_frame] FPS. Это делается для того, чтобы "
"избежать сценариев «спирали смерти», когда производительность резко падает из-"
"за постоянно растущего числа шагов физики на кадр. Такое поведение влияет как "
"на [method _process], так и на [method _physics_process]. В результате "
"избегайте использования [code]delta[/code] для измерения времени в реальных "
"секундах. Вместо этого используйте для этой цели методы синглтона [Time], "
"например [method Time.get_ticks_usec]."

msgid ""
"Returns the time elapsed (in seconds) since the last process callback. This "
"value is identical to [method _process]'s [code]delta[/code] parameter, and "
"may vary from frame to frame. See also [constant NOTIFICATION_PROCESS].\n"
"[b]Note:[/b] The returned value will be larger than expected if running at a "
"framerate lower than [member Engine.physics_ticks_per_second] / [member "
"Engine.max_physics_steps_per_frame] FPS. This is done to avoid \"spiral of "
"death\" scenarios where performance would plummet due to an ever-increasing "
"number of physics steps per frame. This behavior affects both [method "
"_process] and [method _physics_process]. As a result, avoid using "
"[code]delta[/code] for time measurements in real-world seconds. Use the "
"[Time] singleton's methods for this purpose instead, such as [method "
"Time.get_ticks_usec]."
msgstr ""
"Возвращает время, прошедшее (в секундах) с момента последнего обратного "
"вызова процесса. Это значение идентично параметру [code]delta[/code] [method "
"_process] и может меняться от кадра к кадру. См. также [constant "
"NOTIFICATION_PROCESS].\n"
"[b]Примечание:[/b] Возвращаемое значение будет больше ожидаемого, если "
"частота кадров ниже, чем [member Engine.physics_ticks_per_second] / [member "
"Engine.max_physics_steps_per_frame] FPS. Это делается для того, чтобы "
"избежать сценариев «спирали смерти», когда производительность резко падает из-"
"за постоянно растущего числа шагов физики на кадр. Такое поведение влияет как "
"на [method _process], так и на [method _physics_process]. В результате "
"избегайте использования [code]delta[/code] для измерения времени в реальных "
"секундах. Вместо этого используйте для этой цели методы синглтона [Time], "
"например [method Time.get_ticks_usec]."

msgid ""
"Returns [code]true[/code] if this node is an instance load placeholder. See "
"[InstancePlaceholder] and [method set_scene_instance_load_placeholder]."
msgstr ""
"Возвращает [code]true[/code], если этот узел является заполнителем загрузки "
"экземпляра. См. [InstancePlaceholder] и [method "
"set_scene_instance_load_placeholder]."

msgid ""
"Returns the [SceneTree] that contains this node. If this node is not inside "
"the tree, generates an error and returns [code]null[/code]. See also [method "
"is_inside_tree]."
msgstr ""
"Возвращает [SceneTree], содержащий этот узел. Если этот узел не находится "
"внутри дерева, генерирует ошибку и возвращает [code]null[/code]. См. также "
"[method is_inside_tree]."

msgid ""
"Returns the tree as a [String]. Used mainly for debugging purposes. This "
"version displays the path relative to the current node, and is good for copy/"
"pasting into the [method get_node] function. It also can be used in game UI/"
"UX.\n"
"May print, for example:\n"
"[codeblock lang=text]\n"
"TheGame\n"
"TheGame/Menu\n"
"TheGame/Menu/Label\n"
"TheGame/Menu/Camera2D\n"
"TheGame/SplashScreen\n"
"TheGame/SplashScreen/Camera2D\n"
"[/codeblock]"
msgstr ""
"Возвращает дерево как [String]. Используется в основном для отладки. Эта "
"версия отображает путь относительно текущего узла и подходит для копирования/"
"вставки в функцию [method get_node]. Также может использоваться в игровом UI/"
"UX.\n"
"Может выводить, например:\n"
"[codeblock lang=text]\n"
"TheGame\n"
"TheGame/Menu\n"
"TheGame/Menu/Label\n"
"TheGame/Menu/Camera2D\n"
"TheGame/SplashScreen\n"
"TheGame/SplashScreen/Camera2D\n"
"[/codeblock]"

msgid ""
"Similar to [method get_tree_string], this returns the tree as a [String]. "
"This version displays a more graphical representation similar to what is "
"displayed in the Scene Dock. It is useful for inspecting larger trees.\n"
"May print, for example:\n"
"[codeblock lang=text]\n"
" ┖╴TheGame\n"
"    ┠╴Menu\n"
"    ┃  ┠╴Label\n"
"    ┃  ┖╴Camera2D\n"
"    ┖╴SplashScreen\n"
"       ┖╴Camera2D\n"
"[/codeblock]"
msgstr ""
"Подобно [method get_tree_string], это возвращает дерево как [String]. Эта "
"версия отображает более графическое представление, похожее на то, что "
"отображается в Scene Dock. Это полезно для проверки больших деревьев.\n"
"Может печатать, например:\n"
"[codeblock lang=text]\n"
" ┖╴TheGame\n"
"    ┠╴Menu\n"
"    ┃  ┠╴Label\n"
"    ┃  ┖╴Camera2D\n"
"    ┖╴SplashScreen\n"
"       ┖╴Camera2D\n"
"[/codeblock]"

msgid ""
"Returns the node's closest [Viewport] ancestor, if the node is inside the "
"tree. Otherwise, returns [code]null[/code]."
msgstr ""
"Возвращает ближайшего предка [Viewport] узла, если узел находится внутри "
"дерева. В противном случае возвращает [code]null[/code]."

msgid ""
"Returns the [Window] that contains this node. If the node is in the main "
"window, this is equivalent to getting the root node "
"([code]get_tree().get_root()[/code])."
msgstr ""
"Возвращает [Window], содержащее этот узел. Если узел находится в главном "
"окне, это эквивалентно получению корневого узла ([code]get_tree().get_root()[/"
"code])."

msgid ""
"Returns [code]true[/code] if the [param path] points to a valid node. See "
"also [method get_node]."
msgstr ""
"Возвращает [code]true[/code], если [param path] указывает на допустимый узел. "
"См. также [method get_node]."

msgid ""
"Returns [code]true[/code] if [param path] points to a valid node and its "
"subnames point to a valid [Resource], e.g. [code]Area2D/"
"CollisionShape2D:shape[/code]. Properties that are not [Resource] types (such "
"as nodes or other [Variant] types) are not considered. See also [method "
"get_node_and_resource]."
msgstr ""
"Возвращает [code]true[/code], если [param path] указывает на допустимый узел, "
"а его подимена указывают на допустимый [Resource], например, [code]Area2D/"
"CollisionShape2D:shape[/code]. Свойства, которые не являются типами "
"[Resource] (например, узлы или другие типы [Variant]), не рассматриваются. "
"См. также [method get_node_and_resource]."

msgid ""
"Returns [code]true[/code] if the given [param node] is a direct or indirect "
"child of this node."
msgstr ""
"Возвращает [code]true[/code], если заданный [param node] является прямым или "
"косвенным дочерним элементом этого узла."

msgid ""
"Returns [code]true[/code] if the node is folded (collapsed) in the Scene "
"dock. This method is intended to be used in editor plugins and tools. See "
"also [method set_display_folded]."
msgstr ""
"Возвращает [code]true[/code], если узел свёрнут в доке сцены. Этот метод "
"предназначен для использования в плагинах и инструментах редактора. См. также "
"[method set_display_folded]."

msgid ""
"Returns [code]true[/code] if [param node] has editable children enabled "
"relative to this node. This method is intended to be used in editor plugins "
"and tools. See also [method set_editable_instance]."
msgstr ""
"Возвращает [code]true[/code], если [param node] имеет редактируемые дочерние "
"элементы, включенные относительно этого узла. Этот метод предназначен для "
"использования в плагинах и инструментах редактора. См. также [method "
"set_editable_instance]."

msgid ""
"Returns [code]true[/code] if the given [param node] occurs later in the scene "
"hierarchy than this node. A node occurring later is usually processed last."
msgstr ""
"Возвращает [code]true[/code], если заданный [param node] встречается позже в "
"иерархии сцены, чем этот узел. Узел, встречающийся позже, обычно "
"обрабатывается последним."

msgid ""
"Returns [code]true[/code] if this node has been added to the given [param "
"group]. See [method add_to_group] and [method remove_from_group]. See also "
"notes in the description, and the [SceneTree]'s group methods."
msgstr ""
"Возвращает [code]true[/code], если этот узел был добавлен в заданную [param "
"group]. См. [method add_to_group] и [method remove_from_group]. См. также "
"примечания в описании и методы группы [SceneTree]."

msgid ""
"Returns [code]true[/code] if this node is currently inside a [SceneTree]. See "
"also [method get_tree]."
msgstr ""
"Возвращает [code]true[/code], если этот узел в данный момент находится внутри "
"[SceneTree]. См. также [method get_tree]."

msgid ""
"Returns [code]true[/code] if the local system is the multiplayer authority of "
"this node."
msgstr ""
"Возвращает [code]true[/code], если локальная система является "
"многопользовательским центром этого узла."

msgid ""
"Returns [code]true[/code] if the node is ready, i.e. it's inside scene tree "
"and all its children are initialized.\n"
"[method request_ready] resets it back to [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если узел готов, т. е. он находится внутри "
"дерева сцены и все его дочерние элементы инициализированы.\n"
"[method request_ready] сбрасывает его обратно в [code]false[/code]."

msgid ""
"Returns [code]true[/code] if the node is part of the scene currently opened "
"in the editor."
msgstr ""
"Возвращает [code]true[/code], если узел является частью сцены, открытой в "
"данный момент в редакторе."

msgid ""
"Returns [code]true[/code] if physics interpolation is enabled for this node "
"(see [member physics_interpolation_mode]).\n"
"[b]Note:[/b] Interpolation will only be active if both the flag is set "
"[b]and[/b] physics interpolation is enabled within the [SceneTree]. This can "
"be tested using [method is_physics_interpolated_and_enabled]."
msgstr ""
"Возвращает [code]true[/code], если физическая интерполяция включена для этого "
"узла (см. [member physics_interpolation_mode]).\n"
"[b]Примечание:[/b] Интерполяция будет активна только если и флаг установлен "
"[b]и[/b] физическая интерполяция включена в [SceneTree]. Это можно проверить "
"с помощью [method is_physics_interpolated_and_enabled]."

msgid ""
"Returns [code]true[/code] if physics interpolation is enabled (see [member "
"physics_interpolation_mode]) [b]and[/b] enabled in the [SceneTree].\n"
"This is a convenience version of [method is_physics_interpolated] that also "
"checks whether physics interpolation is enabled globally.\n"
"See [member SceneTree.physics_interpolation] and [member "
"ProjectSettings.physics/common/physics_interpolation]."
msgstr ""
"Возвращает [code]true[/code], если включена интерполяция физики (см. [member "
"physics_interpolation_mode]) [b]и[/b] включена в [SceneTree].\n"
"Это удобная версия [method is_physics_interpolated], которая также проверяет, "
"включена ли интерполяция физики глобально.\n"
"См. [member SceneTree.physics_interpolation] и [member "
"ProjectSettings.physics/common/physics_interpolation]."

msgid ""
"Returns [code]true[/code] if physics processing is enabled (see [method "
"set_physics_process])."
msgstr ""
"Возвращает [code]true[/code], если обработка физики включена (см. [method "
"set_physics_process])."

msgid ""
"Returns [code]true[/code] if internal physics processing is enabled (see "
"[method set_physics_process_internal])."
msgstr ""
"Возвращает [code]true[/code], если включена внутренняя обработка физики (см. "
"[method set_physics_process_internal])."

msgid ""
"Returns [code]true[/code] if processing is enabled (see [method set_process])."
msgstr ""
"Возвращает [code]true[/code], если обработка включена (см. [method "
"set_process])."

msgid ""
"Returns [code]true[/code] if the node is processing input (see [method "
"set_process_input])."
msgstr ""
"Возвращает [code]true[/code], если узел обрабатывает входные данные (см. "
"[method set_process_input])."

msgid ""
"Returns [code]true[/code] if internal processing is enabled (see [method "
"set_process_internal])."
msgstr ""
"Возвращает [code]true[/code], если включена внутренняя обработка (см. [method "
"set_process_internal])."

msgid ""
"Returns [code]true[/code] if the node is processing shortcuts (see [method "
"set_process_shortcut_input])."
msgstr ""
"Возвращает [code]true[/code], если узел обрабатывает сочетания клавиш (см. "
"[method set_process_shortcut_input])."

msgid ""
"Returns [code]true[/code] if the node is processing unhandled input (see "
"[method set_process_unhandled_input])."
msgstr ""
"Возвращает [code]true[/code], если узел обрабатывает необработанный ввод (см. "
"[method set_process_unhandled_input])."

msgid ""
"Returns [code]true[/code] if the node is processing unhandled key input (see "
"[method set_process_unhandled_key_input])."
msgstr ""
"Возвращает [code]true[/code], если узел обрабатывает необработанный ввод с "
"клавиатуры (см. [method set_process_unhandled_key_input])."

msgid ""
"Moves [param child_node] to the given index. A node's index is the order "
"among its siblings. If [param to_index] is negative, the index is counted "
"from the end of the list. See also [method get_child] and [method "
"get_index].\n"
"[b]Note:[/b] The processing order of several engine callbacks ([method "
"_ready], [method _process], etc.) and notifications sent through [method "
"propagate_notification] is affected by tree order. [CanvasItem] nodes are "
"also rendered in tree order. See also [member process_priority]."
msgstr ""
"Перемещает [param child_node] в указанный индекс. Индекс узла — это порядок "
"среди его братьев и сестер. Если [param to_index] отрицательный, индекс "
"отсчитывается с конца списка. См. также [method get_child] и [method "
"get_index].\n"
"[b]Примечание:[/b] Порядок обработки нескольких обратных вызовов движка "
"([method _ready], [method _process] и т. д.) и уведомлений, отправленных "
"через [method propagate_notification], зависит от порядка дерева. Узлы "
"[CanvasItem] также отображаются в порядке дерева. См. также [member "
"process_priority]."

msgid "Similar to [method call_deferred_thread_group], but for notifications."
msgstr "Аналогично [method call_deferred_thread_group], но для уведомлений."

msgid "Similar to [method call_thread_safe], but for notifications."
msgstr "Аналогично [method call_thread_safe], но для уведомлений."

msgid ""
"Prints all orphan nodes (nodes outside the [SceneTree]). Useful for "
"debugging.\n"
"[b]Note:[/b] This method only works in debug builds. Does nothing in a "
"project exported in release mode."
msgstr ""
"Выводит все сиротские узлы (узлы за пределами [SceneTree]). Полезно для "
"отладки.\n"
"[b]Примечание:[/b] Этот метод работает только в отладочных сборках. Ничего не "
"делает в проекте, экспортированном в режиме выпуска."

msgid ""
"Prints the node and its children to the console, recursively. The node does "
"not have to be inside the tree. This method outputs [NodePath]s relative to "
"this node, and is good for copy/pasting into [method get_node]. See also "
"[method print_tree_pretty].\n"
"May print, for example:\n"
"[codeblock lang=text]\n"
".\n"
"Menu\n"
"Menu/Label\n"
"Menu/Camera2D\n"
"SplashScreen\n"
"SplashScreen/Camera2D\n"
"[/codeblock]"
msgstr ""
"Выводит узел и его дочерние элементы на консоль рекурсивно. Узел не "
"обязательно должен находиться внутри дерева. Этот метод выводит [NodePath] "
"относительно этого узла и подходит для копирования/вставки в [method "
"get_node]. См. также [method print_tree_pretty].\n"
"Может выводить, например:\n"
"[codeblock lang=text]\n"
".\n"
"Menu\n"
"Menu/Label\n"
"Menu/Camera2D\n"
"SplashScreen\n"
"SplashScreen/Camera2D\n"
"[/codeblock]"

msgid ""
"Prints the node and its children to the console, recursively. The node does "
"not have to be inside the tree. Similar to [method print_tree], but the "
"graphical representation looks like what is displayed in the editor's Scene "
"dock. It is useful for inspecting larger trees.\n"
"May print, for example:\n"
"[codeblock lang=text]\n"
" ┖╴TheGame\n"
"    ┠╴Menu\n"
"    ┃  ┠╴Label\n"
"    ┃  ┖╴Camera2D\n"
"    ┖╴SplashScreen\n"
"       ┖╴Camera2D\n"
"[/codeblock]"
msgstr ""
"Выводит узел и его дочерние элементы на консоль, рекурсивно. Узел не "
"обязательно должен находиться внутри дерева. Аналогично [method print_tree], "
"но графическое представление выглядит так, как отображается в редакторе Scene "
"dock. Это полезно для проверки больших деревьев.\n"
"Например, может вывести:\n"
"[codeblock lang=text]\n"
" ┖╴TheGame\n"
"    ┠╴Menu\n"
"    ┃  ┠╴Label\n"
"    ┃  ┖╴Camera2D\n"
"    ┖╴SplashScreen\n"
"       ┖╴Camera2D\n"
"[/codeblock]"

msgid ""
"Calls the given [param method] name, passing [param args] as arguments, on "
"this node and all of its children, recursively.\n"
"If [param parent_first] is [code]true[/code], the method is called on this "
"node first, then on all of its children. If [code]false[/code], the "
"children's methods are called first."
msgstr ""
"Вызывает заданное имя [param method], передавая [param args] в качестве "
"аргументов, на этом узле и всех его дочерних узлах, рекурсивно.\n"
"Если [param parent_first] равен [code]true[/code], метод сначала вызывается "
"на этом узле, затем на всех его дочерних узлах. Если [code]false[/code], "
"сначала вызываются методы дочерних узлов."

msgid ""
"Calls [method Object.notification] with [param what] on this node and all of "
"its children, recursively."
msgstr ""
"Вызывает [method Object.notification] с [param what] для данного узла и всех "
"его дочерних узлов, рекурсивно."

msgid "Queues an accessibility information update for this node."
msgstr "Ставит в очередь обновление информации о доступности для этого узла."

msgid ""
"Queues this node to be deleted at the end of the current frame. When deleted, "
"all of its children are deleted as well, and all references to the node and "
"its children become invalid.\n"
"Unlike with [method Object.free], the node is not deleted instantly, and it "
"can still be accessed before deletion. It is also safe to call [method "
"queue_free] multiple times. Use [method Object.is_queued_for_deletion] to "
"check if the node will be deleted at the end of the frame.\n"
"[b]Note:[/b] The node will only be freed after all other deferred calls are "
"finished. Using this method is not always the same as calling [method "
"Object.free] through [method Object.call_deferred]."
msgstr ""
"Ставит этот узел в очередь на удаление в конце текущего кадра. При удалении "
"все его дочерние элементы также удаляются, и все ссылки на узел и его "
"дочерние элементы становятся недействительными.\n"
"В отличие от [method Object.free], узел не удаляется мгновенно, и к нему все "
"еще можно получить доступ до удаления. Также безопасно вызывать [method "
"queue_free] несколько раз. Используйте [method "
"Object.is_queued_for_deletion], чтобы проверить, будет ли узел удален в конце "
"кадра.\n"
"[b]Примечание:[/b] Узел будет освобожден только после завершения всех других "
"отложенных вызовов. Использование этого метода не всегда то же самое, что и "
"вызов [method Object.free] через [method Object.call_deferred]."

msgid ""
"Removes a child [param node]. The [param node], along with its children, are "
"[b]not[/b] deleted. To delete a node, see [method queue_free].\n"
"[b]Note:[/b] When this node is inside the tree, this method sets the [member "
"owner] of the removed [param node] (or its descendants) to [code]null[/code], "
"if their [member owner] is no longer an ancestor (see [method "
"is_ancestor_of])."
msgstr ""
"Удаляет дочерний [param node]. [param node] вместе со своими дочерними "
"элементами [b]не[/b] удаляется. Чтобы удалить узел, см. [method queue_free].\n"
"[b]Примечание:[/b] Когда этот узел находится внутри дерева, этот метод "
"устанавливает [member owner] удаленного [param node] (или его потомков) в "
"[code]null[/code], если их [member owner] больше не является предком (см. "
"[method is_ancestor_of])."

msgid ""
"Removes the node from the given [param group]. Does nothing if the node is "
"not in the [param group]. See also notes in the description, and the "
"[SceneTree]'s group methods."
msgstr ""
"Удаляет узел из заданной [param group]. Ничего не делает, если узел не "
"находится в [param group]. См. также примечания в описании и методы группы "
"[SceneTree]."

msgid ""
"Changes the parent of this [Node] to the [param new_parent]. The node needs "
"to already have a parent. The node's [member owner] is preserved if its owner "
"is still reachable from the new location (i.e., the node is still a "
"descendant of the new parent after the operation).\n"
"If [param keep_global_transform] is [code]true[/code], the node's global "
"transform will be preserved if supported. [Node2D], [Node3D] and [Control] "
"support this argument (but [Control] keeps only position)."
msgstr ""
"Изменяет родителя этого [Node] на [param new_parent]. Узел должен уже иметь "
"родителя. [Member owner] узла сохраняется, если его владелец все еще доступен "
"из нового местоположения (т. е. узел все еще является потомком нового "
"родителя после операции).\n"
"Если [param keep_global_transform] равен [code]true[/code], глобальное "
"преобразование узла будет сохранено, если поддерживается. [Node2D], [Node3D] "
"и [Control] поддерживают этот аргумент (но [Control] сохраняет только "
"позицию)."

msgid ""
"Replaces this node by the given [param node]. All children of this node are "
"moved to [param node].\n"
"If [param keep_groups] is [code]true[/code], the [param node] is added to the "
"same groups that the replaced node is in (see [method add_to_group]).\n"
"[b]Warning:[/b] The replaced node is removed from the tree, but it is [b]not[/"
"b] deleted. To prevent memory leaks, store a reference to the node in a "
"variable, or use [method Object.free]."
msgstr ""
"Заменяет этот узел заданным [param node]. Все дочерние элементы этого узла "
"перемещаются в [param node].\n"
"Если [param keep_groups] равно [code]true[/code], [param node] добавляется в "
"те же группы, в которых находится замененный узел (см. [method "
"add_to_group]).\n"
"[b]Предупреждение:[/b] Замененный узел удаляется из дерева, но он [b]не[/b] "
"удаляется сам. Чтобы предотвратить утечки памяти, сохраните ссылку на узел в "
"переменной или используйте [method Object.free]."

msgid ""
"Requests [method _ready] to be called again the next time the node enters the "
"tree. Does [b]not[/b] immediately call [method _ready].\n"
"[b]Note:[/b] This method only affects the current node. If the node's "
"children also need to request ready, this method needs to be called for each "
"one of them. When the node and its children enter the tree again, the order "
"of [method _ready] callbacks will be the same as normal."
msgstr ""
"Запрашивает вызов [method _ready] снова при следующем входе узла в дерево. "
"[b]Не[/b] немедленно вызывает [method _ready].\n"
"[b]Примечание:[/b] Этот метод влияет только на текущий узел. Если дочерние "
"элементы узла также должны запросить готовность, этот метод необходимо "
"вызвать для каждого из них. Когда узел и его дочерние элементы снова входят в "
"дерево, порядок обратных вызовов [method _ready] будет таким же, как обычно."

msgid ""
"When physics interpolation is active, moving a node to a radically different "
"transform (such as placement within a level) can result in a visible glitch "
"as the object is rendered moving from the old to new position over the "
"physics tick.\n"
"That glitch can be prevented by calling this method, which temporarily "
"disables interpolation until the physics tick is complete.\n"
"The notification [constant NOTIFICATION_RESET_PHYSICS_INTERPOLATION] will be "
"received by the node and all children recursively.\n"
"[b]Note:[/b] This function should be called [b]after[/b] moving the node, "
"rather than before."
msgstr ""
"Когда активна интерполяция физики, перемещение узла в радикально иное "
"преобразование (например, размещение на уровне) может привести к видимому "
"сбою, поскольку объект отображается перемещающимся из старой позиции в новую "
"за физический тик.\n"
"Этот сбой можно предотвратить, вызвав этот метод, который временно отключает "
"интерполяцию до завершения физического тика.\n"
"Уведомление [constant NOTIFICATION_RESET_PHYSICS_INTERPOLATION] будет "
"получено узлом и всеми дочерними элементами рекурсивно.\n"
"[b]Примечание:[/b] Эту функцию следует вызывать [b]после[/b] перемещения "
"узла, а не до него."

msgid ""
"Sends a remote procedure call request for the given [param method] to peers "
"on the network (and locally), sending additional arguments to the method "
"called by the RPC. The call request will only be received by nodes with the "
"same [NodePath], including the exact same [member name]. Behavior depends on "
"the RPC configuration for the given [param method] (see [method rpc_config] "
"and [annotation @GDScript.@rpc]). By default, methods are not exposed to "
"RPCs.\n"
"May return [constant OK] if the call is successful, [constant "
"ERR_INVALID_PARAMETER] if the arguments passed in the [param method] do not "
"match, [constant ERR_UNCONFIGURED] if the node's [member multiplayer] cannot "
"be fetched (such as when the node is not inside the tree), [constant "
"ERR_CONNECTION_ERROR] if [member multiplayer]'s connection is not available.\n"
"[b]Note:[/b] You can only safely use RPCs on clients after you received the "
"[signal MultiplayerAPI.connected_to_server] signal from the [MultiplayerAPI]. "
"You also need to keep track of the connection state, either by the "
"[MultiplayerAPI] signals like [signal MultiplayerAPI.server_disconnected] or "
"by checking ([code]get_multiplayer().peer.get_connection_status() == "
"CONNECTION_CONNECTED[/code])."
msgstr ""
"Отправляет запрос на вызов удаленной процедуры для указанного [param method] "
"одноранговым узлам в сети (и локально), отправляя дополнительные аргументы "
"методу, вызываемому RPC. Запрос на вызов будет получен только узлами с тем же "
"[NodePath], включая точно такое же [member name]. Поведение зависит от "
"конфигурации RPC для указанного [param method] (см. [method rpc_config] и "
"[annotation @GDScript.@rpc]). По умолчанию методы не подвергаются RPC.\n"
"Может возвращать [constant OK], если вызов успешен, [constant "
"ERR_INVALID_PARAMETER], если аргументы, переданные в [param method], не "
"совпадают, [constant ERR_UNCONFIGURED], если [member multiplayer] узла не "
"может быть извлечен (например, когда узел не находится внутри дерева), "
"[constant ERR_CONNECTION_ERROR], если соединение [member multiplayer] "
"недоступно.\n"
"[b]Примечание:[/b] Вы можете безопасно использовать RPC на клиентах только "
"после получения сигнала [signal MultiplayerAPI.connected_to_server] от "
"[MultiplayerAPI]. Вам также необходимо отслеживать состояние соединения, либо "
"по сигналам [MultiplayerAPI], таким как [signal "
"MultiplayerAPI.server_disconnected], либо путем проверки "
"([code]get_multiplayer().peer.get_connection_status() == "
"CONNECTION_CONNECTED[/code])."

msgid ""
"Changes the RPC configuration for the given [param method]. [param config] "
"should either be [code]null[/code] to disable the feature (as by default), or "
"a [Dictionary] containing the following entries:\n"
"- [code]rpc_mode[/code]: see [enum MultiplayerAPI.RPCMode];\n"
"- [code]transfer_mode[/code]: see [enum MultiplayerPeer.TransferMode];\n"
"- [code]call_local[/code]: if [code]true[/code], the method will also be "
"called locally;\n"
"- [code]channel[/code]: an [int] representing the channel to send the RPC "
"on.\n"
"[b]Note:[/b] In GDScript, this method corresponds to the [annotation "
"@GDScript.@rpc] annotation, with various parameters passed ([code]@rpc(any)[/"
"code], [code]@rpc(authority)[/code]...). See also the [url=$DOCS_URL/"
"tutorials/networking/high_level_multiplayer.html]high-level multiplayer[/url] "
"tutorial."
msgstr ""
"Изменяет конфигурацию RPC для указанного [param method]. [param config] "
"должен быть либо [code]null[/code], чтобы отключить функцию (как по "
"умолчанию), либо [Dictionary], содержащий следующие записи:\n"
"- [code]rpc_mode[/code]: см. [enum MultiplayerAPI.RPCMode];\n"
"- [code]transfer_mode[/code]: см. [enum MultiplayerPeer.TransferMode];\n"
"- [code]call_local[/code]: если [code]true[/code], метод также будет вызван "
"локально;\n"
"- [code]channel[/code]: [int], представляющий канал для отправки RPC.\n"
"[b]Примечание:[/b] В GDScript этот метод соответствует аннотации [annotation "
"@GDScript.@rpc] с различными переданными параметрами ([code]@rpc(any)[/code], "
"[code]@rpc(authority)[/code]...). См. также учебник [url=$DOCS_URL/tutorials/"
"networking/high_level_multiplayer.html]высокоуровневый многопользовательский "
"режим[/url]."

msgid ""
"Sends a [method rpc] to a specific peer identified by [param peer_id] (see "
"[method MultiplayerPeer.set_target_peer]).\n"
"May return [constant OK] if the call is successful, [constant "
"ERR_INVALID_PARAMETER] if the arguments passed in the [param method] do not "
"match, [constant ERR_UNCONFIGURED] if the node's [member multiplayer] cannot "
"be fetched (such as when the node is not inside the tree), [constant "
"ERR_CONNECTION_ERROR] if [member multiplayer]'s connection is not available."
msgstr ""
"Отправляет [method rpc] определенному одноранговому узлу, идентифицированному "
"[param peer_id] (см. [method MultiplayerPeer.set_target_peer]).\n"
"Может возвращать [constant OK], если вызов успешен, [constant "
"ERR_INVALID_PARAMETER], если аргументы, переданные в [param method], не "
"совпадают, [constant ERR_UNCONFIGURED], если [member multiplayer] узла не "
"может быть извлечен (например, когда узел не находится внутри дерева), "
"[constant ERR_CONNECTION_ERROR], если соединение [member multiplayer] "
"недоступно."

msgid ""
"Similar to [method call_deferred_thread_group], but for setting properties."
msgstr ""
"Аналогично [method call_deferred_thread_group], но для настройки свойств."

msgid ""
"If set to [code]true[/code], the node appears folded in the Scene dock. As a "
"result, all of its children are hidden. This method is intended to be used in "
"editor plugins and tools, but it also works in release builds. See also "
"[method is_displayed_folded]."
msgstr ""
"Если установлено значение [code]true[/code], узел отображается свернутым в "
"Scene dock. В результате все его дочерние элементы скрыты. Этот метод "
"предназначен для использования в плагинах и инструментах редактора, но он "
"также работает в сборках релиза. См. также [method is_displayed_folded]."

msgid ""
"Set to [code]true[/code] to allow all nodes owned by [param node] to be "
"available, and editable, in the Scene dock, even if their [member owner] is "
"not the scene root. This method is intended to be used in editor plugins and "
"tools, but it also works in release builds. See also [method "
"is_editable_instance]."
msgstr ""
"Установите значение [code]true[/code], чтобы разрешить всем узлам, "
"принадлежащим [param node], быть доступными и редактируемыми в доке сцены, "
"даже если их [member owner] не является корнем сцены. Этот метод предназначен "
"для использования в плагинах и инструментах редактора, но он также работает в "
"сборках релиза. См. также [method is_editable_instance]."

msgid ""
"Sets the node's multiplayer authority to the peer with the given peer [param "
"id]. The multiplayer authority is the peer that has authority over the node "
"on the network. Defaults to peer ID 1 (the server). Useful in conjunction "
"with [method rpc_config] and the [MultiplayerAPI].\n"
"If [param recursive] is [code]true[/code], the given peer is recursively set "
"as the authority for all children of this node.\n"
"[b]Warning:[/b] This does [b]not[/b] automatically replicate the new "
"authority to other peers. It is the developer's responsibility to do so. You "
"may replicate the new authority's information using [member "
"MultiplayerSpawner.spawn_function], an RPC, or a [MultiplayerSynchronizer]. "
"Furthermore, the parent's authority does [b]not[/b] propagate to newly added "
"children."
msgstr ""
"Устанавливает многопользовательские полномочия узла на одноранговый узел с "
"заданным одноранговым узлом [param id]. Многопользовательские полномочия — "
"это одноранговый узел, который имеет полномочия над узлом в сети. По "
"умолчанию равно peer ID 1 (сервер). Полезно в сочетании с [method rpc_config] "
"и [MultiplayerAPI].\n"
"Если [param recursive] равно [code]true[/code], заданный одноранговый узел "
"рекурсивно устанавливается как полномочный для всех дочерних узлов этого "
"узла.\n"
"[b]Предупреждение:[/b] Это [b]не[/b] автоматически реплицирует новые "
"полномочия на другие одноранговые узлы. Это обязанность разработчика. Вы "
"можете реплицировать информацию о новых полномочиях с помощью [member "
"MultiplayerSpawner.spawn_function], RPC или [MultiplayerSynchronizer]. Кроме "
"того, полномочия родителя [b]не[/b] распространяются на вновь добавленные "
"дочерние узлы."

msgid ""
"If set to [code]true[/code], enables physics (fixed framerate) processing. "
"When a node is being processed, it will receive a [constant "
"NOTIFICATION_PHYSICS_PROCESS] at a fixed (usually 60 FPS, see [member "
"Engine.physics_ticks_per_second] to change) interval (and the [method "
"_physics_process] callback will be called if it exists).\n"
"[b]Note:[/b] If [method _physics_process] is overridden, this will be "
"automatically enabled before [method _ready] is called."
msgstr ""
"Если установлено значение [code]true[/code], включает обработку физики "
"(фиксированная частота кадров). Когда узел обрабатывается, он получит "
"[constant NOTIFICATION_PHYSICS_PROCESS] с фиксированным (обычно 60 FPS, см. "
"[member Engine.physics_ticks_per_second] для изменения) интервалом (и будет "
"вызван обратный вызов [method _physics_process], если он существует).\n"
"[b]Примечание:[/b] Если [method _physics_process] переопределен, он будет "
"автоматически включен перед вызовом [method _ready]."

msgid ""
"If set to [code]true[/code], enables internal physics for this node. Internal "
"physics processing happens in isolation from the normal [method "
"_physics_process] calls and is used by some nodes internally to guarantee "
"proper functioning even if the node is paused or physics processing is "
"disabled for scripting ([method set_physics_process]).\n"
"[b]Warning:[/b] Built-in nodes rely on internal processing for their internal "
"logic. Disabling it is unsafe and may lead to unexpected behavior. Use this "
"method if you know what you are doing."
msgstr ""
"Если установлено значение [code]true[/code], включает внутреннюю физику для "
"этого узла. Внутренняя обработка физики происходит изолированно от обычных "
"вызовов [method _physics_process] и используется некоторыми узлами внутренне, "
"чтобы гарантировать правильное функционирование, даже если узел приостановлен "
"или обработка физики отключена для скриптинга ([method "
"set_physics_process]).\n"
"[b]Предупреждение:[/b] Встроенные узлы полагаются на внутреннюю обработку для "
"своей внутренней логики. Отключение ее небезопасно и может привести к "
"неожиданному поведению. Используйте этот метод, если вы знаете, что делаете."

msgid ""
"If set to [code]true[/code], enables processing. When a node is being "
"processed, it will receive a [constant NOTIFICATION_PROCESS] on every drawn "
"frame (and the [method _process] callback will be called if it exists).\n"
"[b]Note:[/b] If [method _process] is overridden, this will be automatically "
"enabled before [method _ready] is called.\n"
"[b]Note:[/b] This method only affects the [method _process] callback, i.e. it "
"has no effect on other callbacks like [method _physics_process]. If you want "
"to disable all processing for the node, set [member process_mode] to "
"[constant PROCESS_MODE_DISABLED]."
msgstr ""
"Если установлено значение [code]true[/code], включает обработку. Когда узел "
"обрабатывается, он будет получать [constant NOTIFICATION_PROCESS] на каждом "
"отрисованном кадре (и будет вызван обратный вызов [method _process], если он "
"существует).\n"
"[b]Примечание:[/b] Если [method _process] переопределен, он будет "
"автоматически включен до вызова [method _ready].\n"
"[b]Примечание:[/b] Этот метод влияет только на обратный вызов [method "
"_process], т. е. он не влияет на другие обратные вызовы, такие как [method "
"_physics_process]. Если вы хотите отключить всю обработку для узла, "
"установите [member process_mode] на [constant PROCESS_MODE_DISABLED]."

msgid ""
"If set to [code]true[/code], enables input processing.\n"
"[b]Note:[/b] If [method _input] is overridden, this will be automatically "
"enabled before [method _ready] is called. Input processing is also already "
"enabled for GUI controls, such as [Button] and [TextEdit]."
msgstr ""
"Если установлено значение [code]true[/code], включает обработку ввода.\n"
"[b]Примечание:[/b] Если [method _input] переопределен, он будет автоматически "
"включен до вызова [method _ready]. Обработка ввода также уже включена для "
"элементов управления GUI, таких как [Button] и [TextEdit]."

msgid ""
"If set to [code]true[/code], enables internal processing for this node. "
"Internal processing happens in isolation from the normal [method _process] "
"calls and is used by some nodes internally to guarantee proper functioning "
"even if the node is paused or processing is disabled for scripting ([method "
"set_process]).\n"
"[b]Warning:[/b] Built-in nodes rely on internal processing for their internal "
"logic. Disabling it is unsafe and may lead to unexpected behavior. Use this "
"method if you know what you are doing."
msgstr ""
"Если установлено значение [code]true[/code], включает внутреннюю обработку "
"для этого узла. Внутренняя обработка происходит изолированно от обычных "
"вызовов [method _process] и используется некоторыми узлами внутренне, чтобы "
"гарантировать надлежащую работу, даже если узел приостановлен или обработка "
"отключена для скриптинга ([method set_process]).\n"
"[b]Предупреждение:[/b] Встроенные узлы полагаются на внутреннюю обработку для "
"своей внутренней логики. Отключение ее небезопасно и может привести к "
"неожиданному поведению. Используйте этот метод, если вы знаете, что делаете."

msgid ""
"If set to [code]true[/code], enables shortcut processing for this node.\n"
"[b]Note:[/b] If [method _shortcut_input] is overridden, this will be "
"automatically enabled before [method _ready] is called."
msgstr ""
"Если установлено значение [code]true[/code], включает обработку сокращений "
"для этого узла.\n"
"[b]Примечание:[/b] Если [method _shortcut_input] переопределен, он будет "
"автоматически включен перед вызовом [method _ready]."

msgid ""
"If set to [code]true[/code], enables unhandled input processing. It enables "
"the node to receive all input that was not previously handled (usually by a "
"[Control]).\n"
"[b]Note:[/b] If [method _unhandled_input] is overridden, this will be "
"automatically enabled before [method _ready] is called. Unhandled input "
"processing is also already enabled for GUI controls, such as [Button] and "
"[TextEdit]."
msgstr ""
"Если установлено значение [code]true[/code], включается обработка "
"необработанного ввода. Это позволяет узлу получать весь ввод, который ранее "
"не был обработан (обычно [Control]).\n"
"[b]Примечание:[/b] Если [method _unhandled_input] переопределен, он будет "
"автоматически включен до вызова [method _ready]. Обработка необработанного "
"ввода также уже включена для элементов управления GUI, таких как [Button] и "
"[TextEdit]."

msgid ""
"If set to [code]true[/code], enables unhandled key input processing.\n"
"[b]Note:[/b] If [method _unhandled_key_input] is overridden, this will be "
"automatically enabled before [method _ready] is called."
msgstr ""
"Если установлено значение [code]true[/code], включается обработка "
"необработанного ввода клавиш.\n"
"[b]Примечание:[/b] Если [method _unhandled_key_input] переопределен, он будет "
"автоматически включен перед вызовом [method _ready]."

msgid ""
"If set to [code]true[/code], the node becomes an [InstancePlaceholder] when "
"packed and instantiated from a [PackedScene]. See also [method "
"get_scene_instance_load_placeholder]."
msgstr ""
"Если установлено значение [code]true[/code], узел становится "
"[InstancePlaceholder] при упаковке и создании экземпляра из [PackedScene]. "
"См. также [method get_scene_instance_load_placeholder]."

msgid "Similar to [method call_thread_safe], but for setting properties."
msgstr "Аналогично [method call_thread_safe], но для настройки свойств."

msgid ""
"Makes this node inherit the translation domain from its parent node. If this "
"node has no parent, the main translation domain will be used.\n"
"This is the default behavior for all nodes. Calling [method "
"Object.set_translation_domain] disables this behavior."
msgstr ""
"Делает так, чтобы этот узел наследовал домен перевода от своего родительского "
"узла. Если у этого узла нет родителя, будет использоваться основной домен "
"перевода. \n"
"Это поведение по умолчанию для всех узлов. Вызов [method "
"Object.set_translation_domain] отключает это поведение."

msgid ""
"Refreshes the warnings displayed for this node in the Scene dock. Use [method "
"_get_configuration_warnings] to customize the warning messages to display."
msgstr ""
"Обновляет предупреждения, отображаемые для этого узла в доке сцены. "
"Используйте [method _get_configuration_warnings] для настройки отображаемых "
"предупреждающих сообщений."

msgid ""
"Defines if any text should automatically change to its translated version "
"depending on the current locale (for nodes such as [Label], [RichTextLabel], "
"[Window], etc.). Also decides if the node's strings should be parsed for POT "
"generation.\n"
"[b]Note:[/b] For the root node, auto translate mode can also be set via "
"[member ProjectSettings.internationalization/rendering/"
"root_node_auto_translate]."
msgstr ""
"Определяет, должен ли текст автоматически меняться на переведенную версию в "
"зависимости от текущей локали (для таких узлов, как [Label], [RichTextLabel], "
"[Window] и т. д.). Также решает, должны ли строки узла анализироваться для "
"генерации POT.\n"
"[b]Примечание:[/b] Для корневого узла режим автоматического перевода также "
"можно установить через [member ProjectSettings.internationalization/rendering/"
"root_node_auto_translate]."

msgid ""
"An optional description to the node. It will be displayed as a tooltip when "
"hovering over the node in the editor's Scene dock."
msgstr ""
"Необязательное описание узла. Оно будет отображаться как подсказка при "
"наведении курсора на узел в доке сцены редактора."

msgid ""
"The [MultiplayerAPI] instance associated with this node. See [method "
"SceneTree.get_multiplayer].\n"
"[b]Note:[/b] Renaming the node, or moving it in the tree, will not move the "
"[MultiplayerAPI] to the new path, you will have to update this manually."
msgstr ""
"Экземпляр [MultiplayerAPI], связанный с этим узлом. См. [method "
"SceneTree.get_multiplayer].\n"
"[b]Примечание:[/b] Переименование узла или перемещение его в дереве не "
"переместит [MultiplayerAPI] на новый путь, вам придется обновить его вручную."

msgid ""
"The name of the node. This name must be unique among the siblings (other "
"child nodes from the same parent). When set to an existing sibling's name, "
"the node is automatically renamed.\n"
"[b]Note:[/b] When changing the name, the following characters will be "
"replaced with an underscore: ([code].[/code] [code]:[/code] [code]@[/code] "
"[code]/[/code] [code]\"[/code] [code]%[/code]). In particular, the [code]@[/"
"code] character is reserved for auto-generated names. See also [method "
"String.validate_node_name]."
msgstr ""
"Имя узла. Это имя должно быть уникальным среди сестринских узлов (других "
"дочерних узлов того же родителя). При установке на имя существующего "
"сестринского узла узел автоматически переименовывается.\n"
"[b]Примечание:[/b] При изменении имени следующие символы будут заменены "
"подчеркиванием: ([code].[/code] [code]:[/code] [code]@[/code] [code]/[/code] "
"[code]\"[/code] [code]%[/code]). В частности, символ [code]@[/code] "
"зарезервирован для автоматически сгенерированных имен. См. также [method "
"String.validate_node_name]."

msgid ""
"The owner of this node. The owner must be an ancestor of this node. When "
"packing the owner node in a [PackedScene], all the nodes it owns are also "
"saved with it. See also [member unique_name_in_owner].\n"
"[b]Note:[/b] In the editor, nodes not owned by the scene root are usually not "
"displayed in the Scene dock, and will [b]not[/b] be saved. To prevent this, "
"remember to set the owner after calling [method add_child]."
msgstr ""
"Владелец этого узла. Владелец должен быть предком этого узла. При упаковке "
"узла-владельца в [PackedScene] все узлы, которыми он владеет, также "
"сохраняются вместе с ним. См. также [member unique_name_in_owner].\n"
"[b]Примечание:[/b] В редакторе узлы, не принадлежащие корневому элементу "
"сцены, обычно не отображаются в доке сцены и [b]не[/b] сохраняются. Чтобы "
"предотвратить это, не забудьте задать владельца после вызова [method "
"add_child]."

msgid ""
"The physics interpolation mode to use for this node. Only effective if "
"[member ProjectSettings.physics/common/physics_interpolation] or [member "
"SceneTree.physics_interpolation] is [code]true[/code].\n"
"By default, nodes inherit the physics interpolation mode from their parent. "
"This property can enable or disable physics interpolation individually for "
"each node, regardless of their parents' physics interpolation mode.\n"
"[b]Note:[/b] Some node types like [VehicleWheel3D] have physics interpolation "
"disabled by default, as they rely on their own custom solution.\n"
"[b]Note:[/b] When teleporting a node to a distant position, it's recommended "
"to temporarily disable interpolation with [method "
"Node.reset_physics_interpolation] [i]after[/i] moving the node. This avoids "
"creating a visual streak between the old and new positions."
msgstr ""
"Режим интерполяции физики для данного узла. Действует только в том случае, "
"если [member ProjectSettings.physics/common/physics_interpolation] или "
"[member SceneTree.physics_interpolation] имеет значение [code]true[/code].\n"
"По умолчанию узлы наследуют режим интерполяции физики от своего родителя. Это "
"свойство может включать или отключать интерполяцию физики индивидуально для "
"каждого узла, независимо от режима интерполяции физики их родителей.\n"
"[b]Примечание:[/b] В некоторых типах узлов, таких как [VehicleWheel3D], "
"интерполяция физики отключена по умолчанию, поскольку они используют "
"собственное решение.\n"
"[b]Примечание:[/b] При телепортации узла в удалённое положение рекомендуется "
"временно отключить интерполяцию с помощью [method "
"Node.reset_physics_interpolation] [i]после[/i] перемещения узла. Это позволит "
"избежать визуального перехода между старым и новым положением."

msgid ""
"The node's processing behavior. To check if the node can process in its "
"current mode, use [method can_process]."
msgstr ""
"Поведение обработки узла. Чтобы проверить, может ли узел обрабатывать в "
"текущем режиме, используйте [method can_process]."

msgid ""
"Similar to [member process_priority] but for [constant "
"NOTIFICATION_PHYSICS_PROCESS], [method _physics_process], or [constant "
"NOTIFICATION_INTERNAL_PHYSICS_PROCESS]."
msgstr ""
"Аналогично [member process_priority], но для [constant "
"NOTIFICATION_PHYSICS_PROCESS], [method _physics_process] или [constant "
"NOTIFICATION_INTERNAL_PHYSICS_PROCESS]."

msgid ""
"The node's execution order of the process callbacks ([method _process], "
"[constant NOTIFICATION_PROCESS], and [constant "
"NOTIFICATION_INTERNAL_PROCESS]). Nodes whose priority value is [i]lower[/i] "
"call their process callbacks first, regardless of tree order."
msgstr ""
"Порядок выполнения обратных вызовов процесса узла ([method _process], "
"[constant NOTIFICATION_PROCESS] и [constant NOTIFICATION_INTERNAL_PROCESS]). "
"Узлы, приоритет которых [i]ниже[/i], вызывают обратные вызовы своего процесса "
"в первую очередь, независимо от порядка дерева."

msgid ""
"Set the process thread group for this node (basically, whether it receives "
"[constant NOTIFICATION_PROCESS], [constant NOTIFICATION_PHYSICS_PROCESS], "
"[method _process] or [method _physics_process] (and the internal versions) on "
"the main thread or in a sub-thread.\n"
"By default, the thread group is [constant PROCESS_THREAD_GROUP_INHERIT], "
"which means that this node belongs to the same thread group as the parent "
"node. The thread groups means that nodes in a specific thread group will "
"process together, separate to other thread groups (depending on [member "
"process_thread_group_order]). If the value is set is [constant "
"PROCESS_THREAD_GROUP_SUB_THREAD], this thread group will occur on a sub "
"thread (not the main thread), otherwise if set to [constant "
"PROCESS_THREAD_GROUP_MAIN_THREAD] it will process on the main thread. If "
"there is not a parent or grandparent node set to something other than "
"inherit, the node will belong to the [i]default thread group[/i]. This "
"default group will process on the main thread and its group order is 0.\n"
"During processing in a sub-thread, accessing most functions in nodes outside "
"the thread group is forbidden (and it will result in an error in debug mode). "
"Use [method Object.call_deferred], [method call_thread_safe], [method "
"call_deferred_thread_group] and the likes in order to communicate from the "
"thread groups to the main thread (or to other thread groups).\n"
"To better understand process thread groups, the idea is that any node set to "
"any other value than [constant PROCESS_THREAD_GROUP_INHERIT] will include any "
"child (and grandchild) nodes set to inherit into its process thread group. "
"This means that the processing of all the nodes in the group will happen "
"together, at the same time as the node including them."
msgstr ""
"Установите группу потоков процесса для этого узла (в основном, получает ли он "
"[constant NOTIFICATION_PROCESS], [constant NOTIFICATION_PHYSICS_PROCESS], "
"[method _process] или [method _physics_process] (и внутренние версии) в "
"основном потоке или в подпотоке.\n"
"По умолчанию группа потоков — [constant PROCESS_THREAD_GROUP_INHERIT], что "
"означает, что этот узел принадлежит к той же группе потоков, что и "
"родительский узел. Группы потоков означают, что узлы в определенной группе "
"потоков будут обрабатываться вместе, отдельно от других групп потоков (в "
"зависимости от [member process_thread_group_order]). Если установлено "
"значение [constant PROCESS_THREAD_GROUP_SUB_THREAD], эта группа потоков будет "
"выполняться в подпотоке (не в основном потоке), в противном случае, если "
"установлено значение [constant PROCESS_THREAD_GROUP_MAIN_THREAD], она будет "
"обрабатываться в основном потоке. Если есть не родительский или "
"прародительский узел, для которого установлено значение, отличное от "
"inheritage, узел будет принадлежать [i]группе потоков по умолчанию[/i]. Эта "
"группа по умолчанию будет обрабатываться в главном потоке, а ее порядок "
"группы равен 0.\n"
"Во время обработки в подпотоке доступ к большинству функций в узлах за "
"пределами группы потоков запрещен (и это приведет к ошибке в режиме отладки). "
"Используйте [method Object.call_deferred], [method call_thread_safe], [method "
"call_deferred_thread_group] и тому подобное для связи из групп потоков с "
"основным потоком (или с другими группами потоков).\n"
"Чтобы лучше понять группы потоков процесса, идея заключается в том, что любой "
"узел, установленный на любое другое значение, чем [constant "
"PROCESS_THREAD_GROUP_INHERIT], включит любые дочерние (и внучатые) узлы, "
"установленные для наследования в его группу потоков процесса. Это означает, "
"что обработка всех узлов в группе будет происходить вместе, в то же время, "
"когда узел включает их."

msgid ""
"Change the process thread group order. Groups with a lesser order will "
"process before groups with a greater order. This is useful when a large "
"amount of nodes process in sub thread and, afterwards, another group wants to "
"collect their result in the main thread, as an example."
msgstr ""
"Измените порядок групп потоков процесса. Группы с меньшим порядком будут "
"обрабатываться до групп с большим порядком. Это полезно, когда большое "
"количество узлов обрабатывается в подпотоке, а затем другая группа хочет "
"собрать свой результат в главном потоке, например."

msgid ""
"Set whether the current thread group will process messages (calls to [method "
"call_deferred_thread_group] on threads), and whether it wants to receive them "
"during regular process or physics process callbacks."
msgstr ""
"Установите, будет ли текущая группа потоков обрабатывать сообщения (вызовы "
"[method call_deferred_thread_group] в потоках), и хочет ли она получать их во "
"время обычных процессов или обратных вызовов физических процессов."

msgid ""
"The original scene's file path, if the node has been instantiated from a "
"[PackedScene] file. Only scene root nodes contains this."
msgstr ""
"Путь к файлу исходной сцены, если узел был создан из файла [PackedScene]. "
"Только корневые узлы сцены содержат это."

msgid ""
"If [code]true[/code], the node can be accessed from any node sharing the same "
"[member owner] or from the [member owner] itself, with special [code]%Name[/"
"code] syntax in [method get_node].\n"
"[b]Note:[/b] If another node with the same [member owner] shares the same "
"[member name] as this node, the other node will no longer be accessible as "
"unique."
msgstr ""
"Если [code]true[/code], к узлу можно получить доступ из любого узла, имеющего "
"того же [member owner], или из самого [member owner], используя специальный "
"синтаксис [code]%Name[/code] в [method get_node].\n"
"[b]Примечание:[/b] Если другой узел с тем же [member owner] имеет то же "
"[member name], что и этот узел, другой узел больше не будет доступен как "
"уникальный."

msgid ""
"Emitted when the child [param node] enters the [SceneTree], usually because "
"this node entered the tree (see [signal tree_entered]), or [method add_child] "
"has been called.\n"
"This signal is emitted [i]after[/i] the child node's own [constant "
"NOTIFICATION_ENTER_TREE] and [signal tree_entered]."
msgstr ""
"Выдается, когда дочерний [param node] входит в [SceneTree], обычно потому, "
"что этот узел вошел в дерево (см. [signal tree_entered]) или был вызван "
"[method add_child].\n"
"Этот сигнал выдается [i]после[/i] собственных [constant "
"NOTIFICATION_ENTER_TREE] и [signal tree_entered] дочернего узла."

msgid ""
"Emitted when the child [param node] is about to exit the [SceneTree], usually "
"because this node is exiting the tree (see [signal tree_exiting]), or because "
"the child [param node] is being removed or freed.\n"
"When this signal is received, the child [param node] is still accessible "
"inside the tree. This signal is emitted [i]after[/i] the child node's own "
"[signal tree_exiting] and [constant NOTIFICATION_EXIT_TREE]."
msgstr ""
"Выдается, когда дочерний [param node] собирается выйти из [SceneTree], обычно "
"потому что этот узел выходит из дерева (см. [signal tree_exiting]) или потому "
"что дочерний [param node] удаляется или освобождается.\n"
"Когда этот сигнал получен, дочерний [param node] все еще доступен внутри "
"дерева. Этот сигнал выдается [i]после[/i] собственного [signal tree_exiting] "
"и [constant NOTIFICATION_EXIT_TREE] дочернего узла."

msgid ""
"Emitted when the list of children is changed. This happens when child nodes "
"are added, moved or removed."
msgstr ""
"Выдается при изменении списка дочерних узлов. Это происходит при добавлении, "
"перемещении или удалении дочерних узлов."

msgid "Emitted when the node's editor description field changed."
msgstr "Генерируется при изменении поля описания узла."

msgid ""
"Emitted when an attribute of the node that is relevant to the editor is "
"changed. Only emitted in the editor."
msgstr ""
"Выдается при изменении атрибута узла, который имеет отношение к редактору. "
"Выдается только в редакторе."

msgid ""
"Emitted when the node is considered ready, after [method _ready] is called."
msgstr "Вызывается, когда узел считается готовым, после вызова [method _ready]."

msgid ""
"Emitted when the node's [member name] is changed, if the node is inside the "
"tree."
msgstr ""
"Выдается при изменении [member name] узла, если узел находится внутри дерева."

msgid ""
"Emitted when this node is being replaced by the [param node], see [method "
"replace_by].\n"
"This signal is emitted [i]after[/i] [param node] has been added as a child of "
"the original parent node, but [i]before[/i] all original child nodes have "
"been reparented to [param node]."
msgstr ""
"Выдается, когда этот узел заменяется на [param node], см. [method "
"replace_by].\n"
"Этот сигнал выдается [i]после[/i] добавления [param node] в качестве "
"дочернего элемента исходного родительского узла, но [i]до[/i] того, как все "
"исходные дочерние узлы были переименованы в [param node]."

msgid ""
"Emitted when the node enters the tree.\n"
"This signal is emitted [i]after[/i] the related [constant "
"NOTIFICATION_ENTER_TREE] notification."
msgstr ""
"Выдается, когда узел входит в дерево.\n"
"Этот сигнал выдается [i]после[/i] связанного [constant "
"NOTIFICATION_ENTER_TREE] уведомления."

msgid ""
"Emitted after the node exits the tree and is no longer active.\n"
"This signal is emitted [i]after[/i] the related [constant "
"NOTIFICATION_EXIT_TREE] notification."
msgstr ""
"Выдается после того, как узел выходит из дерева и больше не активен.\n"
"Этот сигнал выдается [i]после[/i] связанного [constant "
"NOTIFICATION_EXIT_TREE] уведомления."

msgid ""
"Emitted when the node is just about to exit the tree. The node is still "
"valid. As such, this is the right place for de-initialization (or a "
"\"destructor\", if you will).\n"
"This signal is emitted [i]after[/i] the node's [method _exit_tree], and "
"[i]before[/i] the related [constant NOTIFICATION_EXIT_TREE]."
msgstr ""
"Выдается, когда узел вот-вот выйдет из дерева. Узел все еще действителен. "
"Таким образом, это правильное место для деинициализации (или «деструктора», "
"если хотите).\n"
"Этот сигнал выдается [i]после[/i] [method _exit_tree] узла и [i]до[/i] "
"связанной [constant NOTIFICATION_EXIT_TREE]."

msgid ""
"Notification received when the node enters a [SceneTree]. See [method "
"_enter_tree].\n"
"This notification is received [i]before[/i] the related [signal tree_entered] "
"signal."
msgstr ""
"Уведомление получено, когда узел входит в [SceneTree]. См. [method "
"_enter_tree].\n"
"Это уведомление получено [i]до[/i] связанного сигнала [signal tree_entered]."

msgid ""
"Notification received when the node is about to exit a [SceneTree]. See "
"[method _exit_tree].\n"
"This notification is received [i]after[/i] the related [signal tree_exiting] "
"signal."
msgstr ""
"Уведомление получено, когда узел собирается выйти из [SceneTree]. См. [method "
"_exit_tree].\n"
"Это уведомление получено [i]после[/i] связанного сигнала [signal "
"tree_exiting]."

msgid ""
"This notification is no longer sent by the engine. Use [constant "
"NOTIFICATION_CHILD_ORDER_CHANGED] instead."
msgstr ""
"Это уведомление больше не отправляется движком. Вместо этого используйте "
"[constant NOTIFICATION_CHILD_ORDER_CHANGED]."

msgid "Notification received when the node is ready. See [method _ready]."
msgstr "Уведомление получено, когда узел готов. См. [method _ready]."

msgid ""
"Notification received when the node is paused. See [member process_mode]."
msgstr ""
"Уведомление получено, когда узел приостановлен. См. [member process_mode]."

msgid ""
"Notification received when the node is unpaused. See [member process_mode]."
msgstr ""
"Уведомление получено, когда узел снят с паузы. См. [member process_mode]."

msgid ""
"Notification received from the tree every physics frame when [method "
"is_physics_processing] returns [code]true[/code]. See [method "
"_physics_process]."
msgstr ""
"Уведомление, полученное от дерева в каждом кадре физики, когда [method "
"is_physics_processing] возвращает [code]true[/code]. См. [method "
"_physics_process]."

msgid ""
"Notification received from the tree every rendered frame when [method "
"is_processing] returns [code]true[/code]. See [method _process]."
msgstr ""
"Уведомление, полученное от дерева для каждого отрисованного кадра, когда "
"[method is_processing] возвращает [code]true[/code]. См. [method _process]."

msgid ""
"Notification received when the node is set as a child of another node (see "
"[method add_child] and [method add_sibling]).\n"
"[b]Note:[/b] This does [i]not[/i] mean that the node entered the [SceneTree]."
msgstr ""
"Уведомление получено, когда узел установлен как дочерний для другого узла "
"(см. [method add_child] и [method add_sibling]).\n"
"[b]Примечание:[/b] Это [i]не[/i] означает, что узел вошел в [SceneTree]."

msgid ""
"Notification received when the parent node calls [method remove_child] on "
"this node.\n"
"[b]Note:[/b] This does [i]not[/i] mean that the node exited the [SceneTree]."
msgstr ""
"Уведомление получено, когда родительский узел вызывает [method remove_child] "
"на этом узле.\n"
"[b]Примечание:[/b] Это [i]не[/i] означает, что узел вышел из [SceneTree]."

msgid ""
"Notification received [i]only[/i] by the newly instantiated scene root node, "
"when [method PackedScene.instantiate] is completed."
msgstr ""
"Уведомление получено [i]только[/i] вновь созданным корневым узлом сцены, "
"когда [method PackedScene.instantiate] завершен."

msgid ""
"Notification received when a drag operation begins. All nodes receive this "
"notification, not only the dragged one.\n"
"Can be triggered either by dragging a [Control] that provides drag data (see "
"[method Control._get_drag_data]) or using [method Control.force_drag].\n"
"Use [method Viewport.gui_get_drag_data] to get the dragged data."
msgstr ""
"Уведомление получено, когда начинается операция перетаскивания. Все узлы "
"получают это уведомление, а не только перетаскиваемый.\n"
"Может быть вызвано либо перетаскиванием [Control], который предоставляет "
"данные перетаскивания (см. [method Control._get_drag_data]), либо "
"использованием [method Control.force_drag].\n"
"Используйте [method Viewport.gui_get_drag_data] для получения перетаскиваемых "
"данных."

msgid ""
"Notification received when a drag operation ends.\n"
"Use [method Viewport.gui_is_drag_successful] to check if the drag succeeded."
msgstr ""
"Получено уведомление, когда операция перетаскивания завершена.\n"
"Используйте [method Viewport.gui_is_drag_successful], чтобы проверить, "
"успешно ли перетаскивание."

msgid ""
"Notification received when the node's [member name] or one of its ancestors' "
"[member name] is changed. This notification is [i]not[/i] received when the "
"node is removed from the [SceneTree]."
msgstr ""
"Уведомление получено, когда [member name] узла или одного из его предков "
"[member name] изменено. Это уведомление [i]не[/i] получено, когда узел удален "
"из [SceneTree]."

msgid ""
"Notification received when the list of children is changed. This happens when "
"child nodes are added, moved or removed."
msgstr ""
"Уведомление получено при изменении списка дочерних узлов. Это происходит при "
"добавлении, перемещении или удалении дочерних узлов."

msgid ""
"Notification received from the tree every rendered frame when [method "
"is_processing_internal] returns [code]true[/code]."
msgstr ""
"Уведомление, полученное от дерева для каждого отрисованного кадра, когда "
"[method is_processing_internal] возвращает [code]true[/code]."

msgid ""
"Notification received from the tree every physics frame when [method "
"is_physics_processing_internal] returns [code]true[/code]."
msgstr ""
"Уведомление от дерева получено каждый физический кадр, когда [method "
"is_physics_processing_internal] возвращает [code]true[/code]."

msgid ""
"Notification received when the node enters the tree, just before [constant "
"NOTIFICATION_READY] may be received. Unlike the latter, it is sent every time "
"the node enters tree, not just once."
msgstr ""
"Уведомление получено, когда узел входит в дерево, непосредственно перед тем, "
"как может быть получено [constant NOTIFICATION_READY]. В отличие от "
"последнего, оно отправляется каждый раз, когда узел входит в дерево, а не "
"только один раз."

msgid ""
"Notification received when the node is disabled. See [constant "
"PROCESS_MODE_DISABLED]."
msgstr ""
"Уведомление получено, когда узел отключен. См. [constant "
"PROCESS_MODE_DISABLED]."

msgid ""
"Notification received when the node is enabled again after being disabled. "
"See [constant PROCESS_MODE_DISABLED]."
msgstr ""
"Уведомление получено, когда узел снова включается после отключения. См. "
"[constant PROCESS_MODE_DISABLED]."

msgid ""
"Notification received when [method reset_physics_interpolation] is called on "
"the node or its ancestors."
msgstr ""
"Уведомление получено при вызове [method reset_physics_interpolation] на узле "
"или его предках."

msgid ""
"Notification received right before the scene with the node is saved in the "
"editor. This notification is only sent in the Godot editor and will not occur "
"in exported projects."
msgstr ""
"Уведомление, полученное непосредственно перед сохранением сцены с узлом в "
"редакторе. Это уведомление отправляется только в редакторе Godot и не будет "
"появляться в экспортированных проектах."

msgid ""
"Notification received right after the scene with the node is saved in the "
"editor. This notification is only sent in the Godot editor and will not occur "
"in exported projects."
msgstr ""
"Уведомление, полученное сразу после сохранения сцены с узлом в редакторе. Это "
"уведомление отправляется только в редакторе Godot и не будет появляться в "
"экспортированных проектах."

msgid ""
"Notification received when the mouse enters the window.\n"
"Implemented for embedded windows and on desktop and web platforms."
msgstr ""
"Уведомление получено, когда мышь попадает в окно.\n"
"Реализовано для встроенных окон и на настольных и веб-платформах."

msgid ""
"Notification received when the mouse leaves the window.\n"
"Implemented for embedded windows and on desktop and web platforms."
msgstr ""
"Уведомление получено, когда мышь покидает окно.\n"
"Реализовано для встроенных окон и на настольных и веб-платформах."

msgid ""
"Notification received from the OS when the node's [Window] ancestor is "
"focused. This may be a change of focus between two windows of the same engine "
"instance, or from the OS desktop or a third-party application to a window of "
"the game (in which case [constant NOTIFICATION_APPLICATION_FOCUS_IN] is also "
"received).\n"
"A [Window] node receives this notification when it is focused."
msgstr ""
"Уведомление, полученное от ОС, когда фокусируется предок узла [Window]. Это "
"может быть изменение фокуса между двумя окнами одного и того же экземпляра "
"движка или с рабочего стола ОС или стороннего приложения на окно игры (в этом "
"случае также принимается [constant NOTIFICATION_APPLICATION_FOCUS_IN]).\n"
"Узел [Window] получает это уведомление, когда он фокусируется."

msgid ""
"Notification received from the OS when the node's [Window] ancestor is "
"defocused. This may be a change of focus between two windows of the same "
"engine instance, or from a window of the game to the OS desktop or a third-"
"party application (in which case [constant "
"NOTIFICATION_APPLICATION_FOCUS_OUT] is also received).\n"
"A [Window] node receives this notification when it is defocused."
msgstr ""
"Уведомление, полученное от ОС, когда предок узла [Window] расфокусирован. Это "
"может быть изменение фокуса между двумя окнами одного и того же экземпляра "
"движка или с окна игры на рабочий стол ОС или стороннее приложение (в этом "
"случае также получено [constant NOTIFICATION_APPLICATION_FOCUS_OUT]).\n"
"Узел [Window] получает это уведомление, когда он расфокусирован."

msgid ""
"Notification received from the OS when a close request is sent (e.g. closing "
"the window with a \"Close\" button or [kbd]Alt + F4[/kbd]).\n"
"Implemented on desktop platforms."
msgstr ""
"Уведомление, полученное от ОС при отправке запроса на закрытие (например, "
"закрытие окна кнопкой «Закрыть» или [kbd]Alt + F4[/kbd]).\n"
"Реализовано на настольных платформах."

msgid ""
"Notification received from the OS when a go back request is sent (e.g. "
"pressing the \"Back\" button on Android).\n"
"Implemented only on Android."
msgstr ""
"Уведомление, полученное от ОС при отправке запроса на возврат (например, "
"нажатие кнопки «Назад» на Android).\n"
"Реализовано только на Android."

msgid ""
"Notification received when the window is resized.\n"
"[b]Note:[/b] Only the resized [Window] node receives this notification, and "
"it's not propagated to the child nodes."
msgstr ""
"Уведомление получено при изменении размера окна.\n"
"[b]Примечание:[/b] Это уведомление получает только узел [Window] с измененным "
"размером, и оно не распространяется на дочерние узлы."

msgid ""
"Notification received from the OS when the screen's dots per inch (DPI) scale "
"is changed. Only implemented on macOS."
msgstr ""
"Уведомление от ОС при изменении масштаба точек на дюйм (DPI) экрана. "
"Реализовано только на macOS."

msgid ""
"Notification received when the mouse cursor enters the [Viewport]'s visible "
"area, that is not occluded behind other [Control]s or [Window]s, provided its "
"[member Viewport.gui_disable_input] is [code]false[/code] and regardless if "
"it's currently focused or not."
msgstr ""
"Уведомление получено, когда курсор мыши входит в видимую область [Viewport], "
"которая не перекрыта другими [Control] или [Window], при условии, что его "
"[member Viewport.gui_disable_input] имеет значение [code]false[/code] и "
"независимо от того, находится ли он в данный момент в фокусе или нет."

msgid ""
"Notification received when the mouse cursor leaves the [Viewport]'s visible "
"area, that is not occluded behind other [Control]s or [Window]s, provided its "
"[member Viewport.gui_disable_input] is [code]false[/code] and regardless if "
"it's currently focused or not."
msgstr ""
"Уведомление получено, когда курсор мыши покидает видимую область [Viewport], "
"которая не перекрыта другими [Control] или [Window], при условии, что его "
"[member Viewport.gui_disable_input] имеет значение [code]false[/code] и "
"независимо от того, находится ли он в данный момент в фокусе или нет."

msgid "Notification received when the window is moved."
msgstr "Полученное уведомление при перемещении окна."

msgid ""
"Notification received from the OS when the application is exceeding its "
"allocated memory.\n"
"Implemented only on iOS."
msgstr ""
"Уведомление от ОС, когда приложение превышает выделенную ему память.\n"
"Реализовано только на iOS."

msgid ""
"Notification received when translations may have changed. Can be triggered by "
"the user changing the locale, changing [member auto_translate_mode] or when "
"the node enters the scene tree. Can be used to respond to language changes, "
"for example to change the UI strings on the fly. Useful when working with the "
"built-in translation support, like [method Object.tr].\n"
"[b]Note:[/b] This notification is received alongside [constant "
"NOTIFICATION_ENTER_TREE], so if you are instantiating a scene, the child "
"nodes will not be initialized yet. You can use it to setup translations for "
"this node, child nodes created from script, or if you want to access child "
"nodes added in the editor, make sure the node is ready using [method "
"is_node_ready].\n"
"[codeblock]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_TRANSLATION_CHANGED:\n"
"\t\tif not is_node_ready():\n"
"\t\t\tawait ready # Wait until ready signal.\n"
"\t\t$Label.text = atr(\"%d Bananas\") % banana_counter\n"
"[/codeblock]"
msgstr ""
"Уведомление получено, когда переводы могли измениться. Может быть вызвано "
"изменением пользователем локали, изменением [member auto_translate_mode] или "
"когда узел входит в дерево сцены. Может использоваться для реагирования на "
"изменения языка, например, для изменения строк пользовательского интерфейса "
"на лету. Полезно при работе со встроенной поддержкой перевода, например "
"[method Object.tr].\n"
"[b]Примечание:[/b] Это уведомление получено вместе с [constant "
"NOTIFICATION_ENTER_TREE], поэтому, если вы создаете сцену, дочерние узлы еще "
"не будут инициализированы. Вы можете использовать его для настройки переводов "
"для этого узла, дочерних узлов, созданных из скрипта, или если вы хотите "
"получить доступ к дочерним узлам, добавленным в редакторе, убедитесь, что "
"узел готов, используя [method is_node_ready].\n"
"[codeblock]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_TRANSLATION_CHANGED:\n"
"\t\tif not is_node_ready():\n"
"\t\t\tawait ready # Дождитесь сигнала готовности.\n"
"\t\t$Label.text = atr(\"%d Bananas\") % banana_counter\n"
"[/codeblock]"

msgid ""
"Notification received from the OS when a request for \"About\" information is "
"sent.\n"
"Implemented only on macOS."
msgstr ""
"Уведомление, полученное от ОС при отправке запроса на информацию «О "
"программе».\n"
"Реализовано только на macOS."

msgid ""
"Notification received from Godot's crash handler when the engine is about to "
"crash.\n"
"Implemented on desktop platforms, if the crash handler is enabled."
msgstr ""
"Уведомление получено от обработчика сбоев Godot, когда движок вот-вот "
"рухнет.\n"
"Реализовано на настольных платформах, если обработчик сбоев включен."

msgid ""
"Notification received from the OS when an update of the Input Method Engine "
"occurs (e.g. change of IME cursor position or composition string).\n"
"Implemented only on macOS."
msgstr ""
"Уведомление, полученное от ОС при обновлении Input Method Engine (например, "
"изменение положения курсора IME или строки композиции).\n"
"Реализовано только на macOS."

msgid "Notification received when the [TextServer] is changed."
msgstr "Получено уведомление при изменении [TextServer]."

msgid ""
"Notification received when an accessibility information update is required."
msgstr ""
"Уведомление получено, когда требуется обновление информации о доступности."

msgid ""
"Notification received when accessibility elements are invalidated. All node "
"accessibility elements are automatically deleted after receiving this "
"message, therefore all existing references to such elements should be "
"discarded."
msgstr ""
"Уведомление получено, когда элементы доступности становятся "
"недействительными. Все элементы доступности узла автоматически удаляются "
"после получения этого сообщения, поэтому все существующие ссылки на такие "
"элементы должны быть отброшены."

msgid ""
"Inherits [member process_mode] from the node's parent. This is the default "
"for any newly created node."
msgstr ""
"Наследует [member process_mode] от родителя узла. Это значение по умолчанию "
"для любого вновь созданного узла."

msgid ""
"Stops processing when [member SceneTree.paused] is [code]true[/code]. This is "
"the inverse of [constant PROCESS_MODE_WHEN_PAUSED], and the default for the "
"root node."
msgstr ""
"Останавливает обработку, когда [member SceneTree.paused] равен [code]true[/"
"code]. Это обратная [constant PROCESS_MODE_WHEN_PAUSED] операция и значение "
"по умолчанию для корневого узла."

msgid ""
"Process [b]only[/b] when [member SceneTree.paused] is [code]true[/code]. This "
"is the inverse of [constant PROCESS_MODE_PAUSABLE]."
msgstr ""
"Обрабатывать [b]только[/b], когда [member SceneTree.paused] равен [code]true[/"
"code]. Это обратная [constant PROCESS_MODE_PAUSABLE]."

msgid ""
"Always process. Keeps processing, ignoring [member SceneTree.paused]. This is "
"the inverse of [constant PROCESS_MODE_DISABLED]."
msgstr ""
"Всегда обрабатывать. Продолжает обработку, игнорируя [member "
"SceneTree.paused]. Это обратная [constant PROCESS_MODE_DISABLED]."

msgid ""
"Never process. Completely disables processing, ignoring [member "
"SceneTree.paused]. This is the inverse of [constant PROCESS_MODE_ALWAYS]."
msgstr ""
"Никогда не обрабатывать. Полностью отключает обработку, игнорируя [member "
"SceneTree.paused]. Это обратная сторона [constant PROCESS_MODE_ALWAYS]."

msgid ""
"Process this node based on the thread group mode of the first parent (or "
"grandparent) node that has a thread group mode that is not inherit. See "
"[member process_thread_group] for more information."
msgstr ""
"Обработать этот узел на основе режима группы потоков первого родительского "
"(или прародительского) узла, который имеет режим группы потоков, который не "
"наследуется. Для получения дополнительной информации см. [member "
"process_thread_group]."

msgid ""
"Process this node (and child nodes set to inherit) on the main thread. See "
"[member process_thread_group] for more information."
msgstr ""
"Обработать этот узел (и дочерние узлы, настроенные на наследование) в "
"основном потоке. См. [member process_thread_group] для получения "
"дополнительной информации."

msgid ""
"Process this node (and child nodes set to inherit) on a sub-thread. See "
"[member process_thread_group] for more information."
msgstr ""
"Обработать этот узел (и дочерние узлы, настроенные на наследование) в "
"подпотоке. Для получения дополнительной информации см. [member "
"process_thread_group]."

msgid ""
"Allows this node to process threaded messages created with [method "
"call_deferred_thread_group] right before [method _process] is called."
msgstr ""
"Позволяет этому узлу обрабатывать потоковые сообщения, созданные с помощью "
"[method call_deferred_thread_group] непосредственно перед вызовом [method "
"_process]."

msgid ""
"Allows this node to process threaded messages created with [method "
"call_deferred_thread_group] right before [method _physics_process] is called."
msgstr ""
"Позволяет этому узлу обрабатывать потоковые сообщения, созданные с помощью "
"[method call_deferred_thread_group] непосредственно перед вызовом [method "
"_physics_process]."

msgid ""
"Allows this node to process threaded messages created with [method "
"call_deferred_thread_group] right before either [method _process] or [method "
"_physics_process] are called."
msgstr ""
"Позволяет этому узлу обрабатывать потоковые сообщения, созданные с помощью "
"[method call_deferred_thread_group] непосредственно перед вызовом [method "
"_process] или [method _physics_process]."

msgid ""
"Inherits [member physics_interpolation_mode] from the node's parent. This is "
"the default for any newly created node."
msgstr ""
"Наследует [member physics_interpolation_mode] от родителя узла. Это значение "
"по умолчанию для любого вновь созданного узла."

msgid ""
"Enables physics interpolation for this node and for children set to [constant "
"PHYSICS_INTERPOLATION_MODE_INHERIT]. This is the default for the root node."
msgstr ""
"Включает интерполяцию физики для этого узла и для дочерних элементов, "
"заданных как [constant PHYSICS_INTERPOLATION_MODE_INHERIT]. Это значение по "
"умолчанию для корневого узла."

msgid ""
"Disables physics interpolation for this node and for children set to "
"[constant PHYSICS_INTERPOLATION_MODE_INHERIT]."
msgstr ""
"Отключает интерполяцию физики для этого узла и для дочерних элементов, для "
"которых задано значение [constant PHYSICS_INTERPOLATION_MODE_INHERIT]."

msgid ""
"Duplicate the node's signal connections that are connected with the [constant "
"Object.CONNECT_PERSIST] flag."
msgstr ""
"Дублируйте сигнальные соединения узла, которые связаны с флагом [constant "
"Object.CONNECT_PERSIST]."

msgid "Duplicate the node's groups."
msgstr "Дублируйте группы узлов."

msgid ""
"Duplicate the node's script (also overriding the duplicated children's "
"scripts, if combined with [constant DUPLICATE_USE_INSTANTIATION])."
msgstr ""
"Дублировать скрипт узла (также переопределяя дублированные дочерние скрипты, "
"если это объединено с [constant DUPLICATE_USE_INSTANTIATION])."

msgid ""
"Duplicate using [method PackedScene.instantiate]. If the node comes from a "
"scene saved on disk, reuses [method PackedScene.instantiate] as the base for "
"the duplicated node and its children."
msgstr ""
"Дублировать с помощью [method PackedScene.instantiate]. Если узел взят из "
"сцены, сохраненной на диске, повторно использует [method "
"PackedScene.instantiate] в качестве основы для дублированного узла и его "
"дочерних элементов."

msgid "The node will not be internal."
msgstr "Узел не будет внутренним."

msgid ""
"The node will be placed at the beginning of the parent's children, before any "
"non-internal sibling."
msgstr ""
"Узел будет помещен в начало дочерних узлов родителя, перед любым невнутренним "
"узлом-братьем."

msgid ""
"The node will be placed at the end of the parent's children, after any non-"
"internal sibling."
msgstr ""
"Узел будет помещен в конец дочерних узлов родителя, после любого "
"невнутреннего родственного узла."

msgid ""
"Inherits [member auto_translate_mode] from the node's parent. This is the "
"default for any newly created node."
msgstr ""
"Наследует [member auto_translate_mode] от родителя узла. Это значение по "
"умолчанию для любого вновь созданного узла."

msgid ""
"Always automatically translate. This is the inverse of [constant "
"AUTO_TRANSLATE_MODE_DISABLED], and the default for the root node."
msgstr ""
"Всегда автоматически переводить. Это обратная [constant "
"AUTO_TRANSLATE_MODE_DISABLED] и значение по умолчанию для корневого узла."

msgid ""
"Never automatically translate. This is the inverse of [constant "
"AUTO_TRANSLATE_MODE_ALWAYS].\n"
"String parsing for POT generation will be skipped for this node and children "
"that are set to [constant AUTO_TRANSLATE_MODE_INHERIT]."
msgstr ""
"Никогда не переводить автоматически. Это обратная [constant "
"AUTO_TRANSLATE_MODE_ALWAYS].\n"
"Анализ строки для генерации POT будет пропущен для этого узла и дочерних "
"элементов, для которых задано [constant AUTO_TRANSLATE_MODE_INHERIT]."

msgid ""
"A 2D game object, inherited by all 2D-related nodes. Has a position, "
"rotation, scale, and skew."
msgstr ""
"Игровой 2D-объект, наследуемый всеми 2D-узлами. Имеет позицию, поворот, "
"масштаб и наклон."

msgid ""
"A 2D game object, with a transform (position, rotation, and scale). All 2D "
"nodes, including physics objects and sprites, inherit from Node2D. Use Node2D "
"as a parent node to move, scale and rotate children in a 2D project. Also "
"gives control of the node's render order.\n"
"[b]Note:[/b] Since both [Node2D] and [Control] inherit from [CanvasItem], "
"they share several concepts from the class such as the [member "
"CanvasItem.z_index] and [member CanvasItem.visible] properties."
msgstr ""
"Игровой 2D-объект с преобразованием (положение, поворот и масштаб). Все 2D-"
"узлы, включая физические объекты и спрайты, наследуются от Node2D. "
"Используйте Node2D в качестве родительского узла для перемещения, "
"масштабирования и поворота дочерних элементов в 2D-проекте. Также дает "
"контроль над порядком рендеринга узла.\n"
"[b]Примечание:[/b] Поскольку и [Node2D], и [Control] наследуются от "
"[CanvasItem], они разделяют несколько концепций из класса, таких как свойства "
"[member CanvasItem.z_index] и [member CanvasItem.visible]."

msgid "All 2D Demos"
msgstr "Все демоверсии 2D"

msgid "Multiplies the current scale by the [param ratio] vector."
msgstr "Умножает текущий масштаб на вектор [param ratio]."

msgid ""
"Returns the angle between the node and the [param point] in radians.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"node2d_get_angle_to.png]Illustration of the returned angle.[/url]"
msgstr ""
"Возвращает угол между узлом и [param point] в радианах.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"node2d_get_angle_to.png]Иллюстрация возвращаемого угла.[/url]"

msgid "Returns the [Transform2D] relative to this node's parent."
msgstr "Возвращает [Transform2D] относительно родителя данного узла."

msgid "Adds the [param offset] vector to the node's global position."
msgstr "Добавляет вектор [param offset] к глобальной позиции узла."

msgid ""
"Rotates the node so that its local +X axis points towards the [param point], "
"which is expected to use global coordinates.\n"
"[param point] should not be the same as the node's position, otherwise the "
"node always looks to the right."
msgstr ""
"Поворачивает узел так, чтобы его локальная ось +X указывала на [param point], "
"которая, как ожидается, будет использовать глобальные координаты.\n"
"[param point] не должна совпадать с позицией узла, в противном случае узел "
"всегда смотрит вправо."

msgid ""
"Applies a local translation on the node's X axis based on the [method "
"Node._process]'s [param delta]. If [param scaled] is [code]false[/code], "
"normalizes the movement."
msgstr ""
"Применяет локальное смещение по оси X узла на основе [param delta] [method "
"Node._process]. Если [param scaled] равен [code]false[/code], нормализует "
"движение."

msgid ""
"Applies a local translation on the node's Y axis based on the [method "
"Node._process]'s [param delta]. If [param scaled] is [code]false[/code], "
"normalizes the movement."
msgstr ""
"Применяет локальное смещение по оси Y узла на основе [param delta] [method "
"Node._process]. Если [param scaled] равен [code]false[/code], нормализует "
"движение."

msgid ""
"Applies a rotation to the node, in radians, starting from its current "
"rotation."
msgstr "Применяет поворот к узлу в радианах, начиная с его текущего поворота."

msgid ""
"Transforms the provided local position into a position in global coordinate "
"space. The input is expected to be local relative to the [Node2D] it is "
"called on. e.g. Applying this method to the positions of child nodes will "
"correctly transform their positions into the global coordinate space, but "
"applying it to a node's own position will give an incorrect result, as it "
"will incorporate the node's own transformation into its global position."
msgstr ""
"Преобразует предоставленную локальную позицию в позицию в глобальном "
"координатном пространстве. Ожидается, что входные данные будут локальными "
"относительно [Node2D], на котором они вызваны. Например, применение этого "
"метода к позициям дочерних узлов правильно преобразует их позиции в "
"глобальное координатное пространство, но применение его к собственной позиции "
"узла даст неверный результат, поскольку он включит собственную трансформацию "
"узла в его глобальную позицию."

msgid ""
"Transforms the provided global position into a position in local coordinate "
"space. The output will be local relative to the [Node2D] it is called on. "
"e.g. It is appropriate for determining the positions of child nodes, but it "
"is not appropriate for determining its own position relative to its parent."
msgstr ""
"Преобразует предоставленную глобальную позицию в позицию в локальном "
"координатном пространстве. Выход будет локальным относительно [Node2D], на "
"котором он вызван. Например, он подходит для определения позиций дочерних "
"узлов, но не подходит для определения своей собственной позиции относительно "
"своего родителя."

msgid "Translates the node by the given [param offset] in local coordinates."
msgstr "Перемещает узел на заданный [param offset] в локальных координатах."

msgid "Global position. See also [member position]."
msgstr "Начальное положение окна определяется [member position]."

msgid "Global rotation in radians. See also [member rotation]."
msgstr "Глобальное вращение в радианах. См. также [member rotation]."

msgid ""
"Helper property to access [member global_rotation] in degrees instead of "
"radians. See also [member rotation_degrees]."
msgstr ""
"Вспомогательное свойство для доступа к [member global_rotation] в градусах "
"вместо радиан. См. также [member rotation_degrees]."

msgid "Global scale. See also [member scale]."
msgstr "Глобальный масштаб. См. также [member scale]."

msgid "Global skew in radians. See also [member skew]."
msgstr "Глобальный перекос в радианах. См. также [member skew]."

msgid "Global [Transform2D]. See also [member transform]."
msgstr "Глобальный [Transform2D]. См. также [member transform]."

msgid ""
"Position, relative to the node's parent. See also [member global_position]."
msgstr "Позиция относительно родителя узла. См. также [member global_position]."

msgid ""
"Rotation in radians, relative to the node's parent. See also [member "
"global_rotation].\n"
"[b]Note:[/b] This property is edited in the inspector in degrees. If you want "
"to use degrees in a script, use [member rotation_degrees]."
msgstr ""
"Вращение в радианах относительно родителя узла. См. также [member "
"global_rotation].\n"
"[b]Примечание:[/b] Это свойство редактируется в инспекторе в градусах. Если "
"вы хотите использовать градусы в скрипте, используйте [member "
"rotation_degrees]."

msgid ""
"Helper property to access [member rotation] in degrees instead of radians. "
"See also [member global_rotation_degrees]."
msgstr ""
"Вспомогательное свойство для доступа к [member rotation] в градусах вместо "
"радиан. См. также [member global_rotation_degrees]."

msgid ""
"The node's scale, relative to the node's parent. Unscaled value: [code](1, 1)"
"[/code]. See also [member global_scale].\n"
"[b]Note:[/b] Negative X scales in 2D are not decomposable from the "
"transformation matrix. Due to the way scale is represented with "
"transformation matrices in Godot, negative scales on the X axis will be "
"changed to negative scales on the Y axis and a rotation of 180 degrees when "
"decomposed."
msgstr ""
"Масштаб узла относительно родительского узла. Немасштабированное значение: "
"[code](1, 1)[/code]. См. также [member global_scale].\n"
"[b]Примечание:[/b] Отрицательные масштабы X в 2D не разлагаются из матрицы "
"преобразования. Из-за способа представления масштаба с помощью матриц "
"преобразования в Godot отрицательные масштабы на оси X будут изменены на "
"отрицательные масштабы на оси Y и поворот на 180 градусов при разложении."

msgid ""
"If set to a non-zero value, slants the node in one direction or another. This "
"can be used for pseudo-3D effects. See also [member global_skew].\n"
"[b]Note:[/b] Skew is performed on the X axis only, and [i]between[/i] "
"rotation and scaling.\n"
"[b]Note:[/b] This property is edited in the inspector in degrees. If you want "
"to use degrees in a script, use [code]skew = deg_to_rad(value_in_degrees)[/"
"code]."
msgstr ""
"Если установлено ненулевое значение, наклоняет узел в одном или другом "
"направлении. Это можно использовать для псевдо-3D эффектов. См. также [member "
"global_skew].\n"
"[b]Примечание:[/b] Наклон выполняется только по оси X и [i]между[/i] "
"вращением и масштабированием.\n"
"[b]Примечание:[/b] Это свойство редактируется в инспекторе в градусах. Если "
"вы хотите использовать градусы в скрипте, используйте [code]skew = "
"deg_to_rad(value_in_degrees)[/code]."

msgid ""
"The node's [Transform2D], relative to the node's parent. See also [member "
"global_transform]."
msgstr ""
"[Transform2D] узла относительно родителя узла. См. также [member "
"global_transform]."

msgid "Base object in 3D space, inherited by all 3D nodes."
msgstr ""
"Базовый объект в трехмерном пространстве, наследуемый всеми трехмерными "
"узлами."

msgid ""
"The [Node3D] node is the base representation of a node in 3D space. All other "
"3D nodes inherit from this class.\n"
"Affine operations (translation, rotation, scale) are calculated in the "
"coordinate system relative to the parent, unless the [Node3D]'s [member "
"top_level] is [code]true[/code]. In this coordinate system, affine operations "
"correspond to direct affine operations on the [Node3D]'s [member transform]. "
"The term [i]parent space[/i] refers to this coordinate system. The coordinate "
"system that is attached to the [Node3D] itself is referred to as object-local "
"coordinate system, or [i]local space[/i].\n"
"[b]Note:[/b] Unless otherwise specified, all methods that need angle "
"parameters must receive angles in [i]radians[/i]. To convert degrees to "
"radians, use [method @GlobalScope.deg_to_rad].\n"
"[b]Note:[/b] In Godot 3 and older, [Node3D] was named [i]Spatial[/i]."
msgstr ""
"Узел [Node3D] является базовым представлением узла в трехмерном пространстве. "
"Все остальные трехмерные узлы наследуются от этого класса.\n"
"Аффинные операции (перемещение, вращение, масштабирование) вычисляются в "
"системе координат относительно родительского узла, если только [member "
"top_level] [Node3D] не равен [code]true[/code]. В этой системе координат "
"аффинные операции соответствуют прямым аффинным операциям над [member "
"transform] [Node3D]. Термин [i]родительское пространство[/i] относится к этой "
"системе координат. Система координат, прикрепленная к самому [Node3D], "
"называется локальной системой координат объекта или [i]локальным "
"пространством[/i].\n"
"[b]Примечание:[/b] Если не указано иное, все методы, которым требуются "
"параметры угла, должны получать углы в [i]радианах[/i]. Чтобы преобразовать "
"градусы в радианы, используйте [method @GlobalScope.deg_to_rad].\n"
"[b]Примечание:[/b] В Godot 3 и более ранних версиях [Node3D] назывался "
"[i]Spatial[/i]."

msgid "Introduction to 3D"
msgstr "Введение в 3D"

msgid "All 3D Demos"
msgstr "Все демоверсии 3D"

msgid ""
"Attaches the given [param gizmo] to this node. Only works in the editor.\n"
"[b]Note:[/b] [param gizmo] should be an [EditorNode3DGizmo]. The argument "
"type is [Node3DGizmo] to avoid depending on editor classes in [Node3D]."
msgstr ""
"Прикрепляет заданный [param gizmo] к этому узлу. Работает только в "
"редакторе.\n"
"[b]Примечание:[/b] [param gizmo] должен быть [EditorNode3DGizmo]. Тип "
"аргумента — [Node3DGizmo], чтобы избежать зависимости от классов редактора в "
"[Node3D]."

msgid ""
"Clears all [EditorNode3DGizmo] objects attached to this node. Only works in "
"the editor."
msgstr ""
"Очищает все объекты [EditorNode3DGizmo], прикрепленные к этому узлу. Работает "
"только в редакторе."

msgid ""
"Deselects all subgizmos for this node. Useful to call when the selected "
"subgizmo may no longer exist after a property change. Only works in the "
"editor."
msgstr ""
"Отменяет выбор всех подэлементов для этого узла. Полезно вызывать, когда "
"выбранный подэлемент может больше не существовать после изменения свойства. "
"Работает только в редакторе."

msgid ""
"Forces the node's [member global_transform] to update, by sending [constant "
"NOTIFICATION_TRANSFORM_CHANGED]. Fails if the node is not inside the tree.\n"
"[b]Note:[/b] For performance reasons, transform changes are usually "
"accumulated and applied [i]once[/i] at the end of the frame. The update "
"propagates through [Node3D] children, as well. Therefore, use this method "
"only when you need an up-to-date transform (such as during physics "
"operations)."
msgstr ""
"Заставляет обновить [member global_transform] узла, отправляя [constant "
"NOTIFICATION_TRANSFORM_CHANGED]. Не удается, если узел не находится внутри "
"дерева.\n"
"[b]Примечание:[/b] Из соображений производительности изменения преобразования "
"обычно накапливаются и применяются [i]один раз[/i] в конце кадра. Обновление "
"также распространяется на дочерние элементы [Node3D]. Поэтому используйте "
"этот метод только тогда, когда вам нужно актуальное преобразование (например, "
"во время физических операций)."

msgid ""
"Returns all the [EditorNode3DGizmo] objects attached to this node. Only works "
"in the editor."
msgstr ""
"Возвращает все объекты [EditorNode3DGizmo], прикрепленные к этому узлу. "
"Работает только в редакторе."

msgid ""
"When using physics interpolation, there will be circumstances in which you "
"want to know the interpolated (displayed) transform of a node rather than the "
"standard transform (which may only be accurate to the most recent physics "
"tick).\n"
"This is particularly important for frame-based operations that take place in "
"[method Node._process], rather than [method Node._physics_process]. Examples "
"include [Camera3D]s focusing on a node, or finding where to fire lasers from "
"on a frame rather than physics tick.\n"
"[b]Note:[/b] This function creates an interpolation pump on the [Node3D] the "
"first time it is called, which can respond to physics interpolation resets. "
"If you get problems with \"streaking\" when initially following a [Node3D], "
"be sure to call [method get_global_transform_interpolated] at least once "
"[i]before[/i] resetting the [Node3D] physics interpolation."
msgstr ""
"При использовании интерполяции физики могут возникнуть обстоятельства, в "
"которых вам захочется узнать интерполированное (отображаемое) преобразование "
"узла, а не стандартное преобразование (которое может быть точным только до "
"последнего физического тика).\n"
"Это особенно важно для кадровых операций, которые выполняются в [method "
"Node._process], а не в [method Node._physics_process]. Примерами являются "
"[Camera3D]-ы, фокусирующиеся на узле, или поиск места для стрельбы лазерами в "
"кадре, а не в такте физики.\n"
"[b]Примечание:[/b] Эта функция создает интерполяционный насос на [Node3D] при "
"первом вызове, который может реагировать на сбросы интерполяции физики. Если "
"у вас возникли проблемы с \"полосами\" при первоначальном следовании "
"[Node3D], обязательно вызовите [method get_global_transform_interpolated] "
"хотя бы один раз [i]перед[/i] сбросом интерполяции физики [Node3D]."

msgid ""
"Returns the parent [Node3D] that directly affects this node's [member "
"global_transform]. Returns [code]null[/code] if no parent exists, the parent "
"is not a [Node3D], or [member top_level] is [code]true[/code].\n"
"[b]Note:[/b] This method is not always equivalent to [method "
"Node.get_parent], which does not take [member top_level] into account."
msgstr ""
"Возвращает родительский [Node3D], который напрямую влияет на [member "
"global_transform] этого узла. Возвращает [code]null[/code], если "
"родительского элемента не существует, родительский элемент не является "
"[Node3D] или [member top_level] равен [code]true[/code].\n"
"[b]Примечание:[/b] Этот метод не всегда эквивалентен [method "
"Node.get_parent], который не учитывает [member top_level]."

msgid ""
"Returns the [World3D] this node is registered to.\n"
"Usually, this is the same as the world used by this node's viewport (see "
"[method Node.get_viewport] and [method Viewport.find_world_3d])."
msgstr ""
"Возвращает [World3D], в котором зарегистрирован этот узел.\n"
"Обычно это то же самое, что и мир, используемый областью просмотра этого узла "
"(см. [method Node.get_viewport] и [method Viewport.find_world_3d])."

msgid ""
"Rotates this node's [member global_basis] around the global [param axis] by "
"the given [param angle], in radians. This operation is calculated in global "
"space (relative to the world) and preserves the [member global_position]."
msgstr ""
"Поворачивает [member global_basis] этого узла вокруг глобальной [param axis] "
"на заданный [param angle], в радианах. Эта операция вычисляется в глобальном "
"пространстве (относительно мира) и сохраняет [member global_position]."

msgid ""
"Scales this node's [member global_basis] by the given [param scale] factor. "
"This operation is calculated in global space (relative to the world) and "
"preserves the [member global_position].\n"
"[b]Note:[/b] This method is not to be confused with the [member scale] "
"property."
msgstr ""
"Масштабирует [member global_basis] этого узла на заданный коэффициент [param "
"scale]. Эта операция вычисляется в глобальном пространстве (относительно "
"мира) и сохраняет [member global_position].\n"
"[b]Примечание:[/b] Этот метод не следует путать со свойством [member scale]."

msgid ""
"Adds the given translation [param offset] to the node's [member "
"global_position] in global space (relative to the world)."
msgstr ""
"Добавляет заданное перемещение [param offset] к [member global_position] узла "
"в глобальном пространстве (относительно мира)."

msgid ""
"Prevents this node from being rendered. Equivalent to setting [member "
"visible] to [code]false[/code]. This is the opposite of [method show]."
msgstr ""
"Предотвращает отображение этого узла. Эквивалентно установке [member visible] "
"в [code]false[/code]. Это противоположно [method show]."

msgid ""
"Returns [code]true[/code] if the node receives [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] whenever [member transform] changes. "
"This is enabled with [method set_notify_local_transform]."
msgstr ""
"Возвращает [code]true[/code], если узел получает [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] всякий раз, когда изменяется [member "
"transform]. Это включается с помощью [method set_notify_local_transform]."

msgid ""
"Returns [code]true[/code] if this node's [member global_transform] is "
"automatically orthonormalized. This results in this node not appearing "
"distorted, as if its global scale were set to [constant Vector3.ONE] (or its "
"negative counterpart). See also [method set_disable_scale] and [method "
"orthonormalize].\n"
"[b]Note:[/b] [member transform] is not affected by this setting."
msgstr ""
"Возвращает [code]true[/code], если [member global_transform] этого узла "
"автоматически ортонормализован. Это приводит к тому, что этот узел не "
"выглядит искаженным, как если бы его глобальный масштаб был установлен на "
"[constant Vector3.ONE] (или его отрицательный аналог). См. также [method "
"set_disable_scale] и [method orthonormalize].\n"
"[b]Примечание:[/b] [member transform] не затрагивается этой настройкой."

msgid ""
"Returns [code]true[/code] if the node receives [constant "
"NOTIFICATION_TRANSFORM_CHANGED] whenever [member global_transform] changes. "
"This is enabled with [method set_notify_transform]."
msgstr ""
"Возвращает [code]true[/code], если узел получает [constant "
"NOTIFICATION_TRANSFORM_CHANGED] всякий раз, когда изменяется [member "
"global_transform]. Это включается с помощью [method set_notify_transform]."

msgid ""
"Returns [code]true[/code] if this node is inside the scene tree and the "
"[member visible] property is [code]true[/code] for this node and all of its "
"[Node3D] ancestors [i]in sequence[/i]. An ancestor of any other type (such as "
"[Node] or [Node2D]) breaks the sequence. See also [method Node.get_parent].\n"
"[b]Note:[/b] This method cannot take [member VisualInstance3D.layers] into "
"account, so even if this method returns [code]true[/code], the node may not "
"be rendered."
msgstr ""
"Возвращает [code]true[/code], если этот узел находится внутри дерева сцены и "
"свойство [member visible] равно [code]true[/code] для этого узла и всех его "
"предков [Node3D] [i]в последовательности[/i]. Предок любого другого типа "
"(например, [Node] или [Node2D]) нарушает последовательность. См. также "
"[method Node.get_parent].\n"
"[b]Примечание:[/b] Этот метод не может учитывать [member "
"VisualInstance3D.layers], поэтому даже если этот метод возвращает [code]true[/"
"code], узел может не быть отрисован."

msgid ""
"Rotates the node so that the local forward axis (-Z, [constant "
"Vector3.FORWARD]) points toward the [param target] position. This operation "
"is calculated in global space (relative to the world).\n"
"The local up axis (+Y) points as close to the [param up] vector as possible "
"while staying perpendicular to the local forward axis. The resulting "
"transform is orthogonal, and the scale is preserved. Non-uniform scaling may "
"not work correctly.\n"
"The [param target] position cannot be the same as the node's position, the "
"[param up] vector cannot be [constant Vector3.ZERO]. Furthermore, the "
"direction from the node's position to the [param target] position cannot be "
"parallel to the [param up] vector, to avoid an unintended rotation around the "
"local Z axis.\n"
"If [param use_model_front] is [code]true[/code], the +Z axis (asset front) is "
"treated as forward (implies +X is left) and points toward the [param target] "
"position. By default, the -Z axis (camera forward) is treated as forward "
"(implies +X is right).\n"
"[b]Note:[/b] This method fails if the node is not in the scene tree. If "
"necessary, use [method look_at_from_position] instead."
msgstr ""
"Поворачивает узел так, чтобы локальная прямая ось (-Z, [constant "
"Vector3.FORWARD]) указывала на позицию [param target]. Эта операция "
"вычисляется в глобальном пространстве (относительно мира).\n"
"Локальная ось вверх (+Y) указывает как можно ближе к вектору [param up], "
"оставаясь перпендикулярной локальной прямой оси. Результирующее "
"преобразование ортогонально, и масштаб сохраняется. Неравномерное "
"масштабирование может работать некорректно.\n"
"Позиция [param target] не может совпадать с позицией узла, вектор [param up] "
"не может быть [constant Vector3.ZERO]. Кроме того, направление от позиции "
"узла к позиции [param target] не может быть параллельным вектору [param up], "
"чтобы избежать непреднамеренного вращения вокруг локальной оси Z.\n"
"Если [param use_model_front] равно [code]true[/code], ось +Z (фронт актива) "
"рассматривается как прямая (подразумевается, что +X слева) и указывает на "
"позицию [param target]. По умолчанию ось -Z (камера вперед) рассматривается "
"как передняя (подразумевается, что +X справа).\n"
"[b]Примечание:[/b] Этот метод не работает, если узел не находится в дереве "
"сцены. При необходимости используйте вместо этого [method "
"look_at_from_position]."

msgid ""
"Moves the node to the specified [param position], then rotates the node to "
"point toward the [param target] position, similar to [method look_at]. This "
"operation is calculated in global space (relative to the world)."
msgstr ""
"Перемещает узел в указанное [param position], затем поворачивает узел так, "
"чтобы он указывал на позицию [param target], аналогично [method look_at]. Эта "
"операция вычисляется в глобальном пространстве (относительно мира)."

msgid ""
"Orthonormalizes this node's [member basis]. This method sets this node's "
"[member scale] to [constant Vector3.ONE] (or its negative counterpart), but "
"preserves the [member position] and [member rotation]. See also [method "
"Transform3D.orthonormalized]."
msgstr ""
"Ортонормализует [member basis] этого узла. Этот метод устанавливает [member "
"scale] этого узла на [constant Vector3.ONE] (или ее отрицательный "
"эквивалент), но сохраняет [member position] и [member rotation]. См. также "
"[method Transform3D.orthonormalized]."

msgid ""
"Rotates this node's [member basis] around the [param axis] by the given "
"[param angle], in radians. This operation is calculated in parent space "
"(relative to the parent) and preserves the [member position]."
msgstr ""
"Поворачивает [member basis] этого узла вокруг [param axis] на заданный [param "
"angle] в радианах. Эта операция вычисляется в родительском пространстве "
"(относительно родителя) и сохраняет [member position]."

msgid ""
"Rotates this node's [member basis] around the [param axis] by the given "
"[param angle], in radians. This operation is calculated in local space "
"(relative to this node) and preserves the [member position]."
msgstr ""
"Поворачивает [member basis] этого узла вокруг [param axis] на заданный [param "
"angle] в радианах. Эта операция вычисляется в локальном пространстве "
"(относительно этого узла) и сохраняет [member position]."

msgid ""
"Rotates this node's [member basis] around the X axis by the given [param "
"angle], in radians. This operation is calculated in parent space (relative to "
"the parent) and preserves the [member position]."
msgstr ""
"Поворачивает [member basis] этого узла вокруг оси X на заданный [param angle] "
"в радианах. Эта операция вычисляется в родительском пространстве "
"(относительно родителя) и сохраняет [member position]."

msgid ""
"Rotates this node's [member basis] around the Y axis by the given [param "
"angle], in radians. This operation is calculated in parent space (relative to "
"the parent) and preserves the [member position]."
msgstr ""
"Поворачивает [member basis] этого узла вокруг оси Y на заданный [param angle] "
"в радианах. Эта операция вычисляется в родительском пространстве "
"(относительно родителя) и сохраняет [member position]."

msgid ""
"Rotates this node's [member basis] around the Z axis by the given [param "
"angle], in radians. This operation is calculated in parent space (relative to "
"the parent) and preserves the [member position]."
msgstr ""
"Поворачивает [member basis] этого узла вокруг оси Z на заданный [param angle] "
"в радианах. Эта операция вычисляется в родительском пространстве "
"(относительно родителя) и сохраняет [member position]."

msgid ""
"Scales this node's [member basis] by the given [param scale] factor. This "
"operation is calculated in local space (relative to this node) and preserves "
"the [member position]."
msgstr ""
"Масштабирует [member basis] этого узла на заданный фактор [param scale]. Эта "
"операция вычисляется в локальном пространстве (относительно этого узла) и "
"сохраняет [member position]."

msgid ""
"If [code]true[/code], this node's [member global_transform] is automatically "
"orthonormalized. This results in this node not appearing distorted, as if its "
"global scale were set to [constant Vector3.ONE] (or its negative "
"counterpart). See also [method is_scale_disabled] and [method "
"orthonormalize].\n"
"[b]Note:[/b] [member transform] is not affected by this setting."
msgstr ""
"Если [code]true[/code], [member global_transform] этого узла автоматически "
"ортонормализуется. Это приводит к тому, что этот узел не выглядит искаженным, "
"как если бы его глобальный масштаб был установлен на [constant Vector3.ONE] "
"(или его отрицательный аналог). См. также [method is_scale_disabled] и "
"[method orthonormalize].\n"
"[b]Примечание:[/b] [member transform] не затрагивается этой настройкой."

msgid ""
"Sets this node's [member transform] to [constant Transform3D.IDENTITY], which "
"resets all transformations in parent space ([member position], [member "
"rotation], and [member scale])."
msgstr ""
"Устанавливает [member transform] этого узла в [constant "
"Transform3D.IDENTITY], что сбрасывает все преобразования в родительском "
"пространстве ([member position], [member rotation] и [member scale])."

msgid ""
"If [code]true[/code], the node will not receive [constant "
"NOTIFICATION_TRANSFORM_CHANGED] or [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED].\n"
"It may useful to call this method when handling these notifications to "
"prevent infinite recursion."
msgstr ""
"Если [code]true[/code], узел не получит [constant "
"NOTIFICATION_TRANSFORM_CHANGED] или [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED].\n"
"Может быть полезно вызвать этот метод при обработке этих уведомлений, чтобы "
"предотвратить бесконечную рекурсию."

msgid ""
"If [code]true[/code], the node will receive [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] whenever [member transform] changes.\n"
"[b]Note:[/b] Some 3D nodes such as [CSGShape3D] or [CollisionShape3D] "
"automatically enable this to function correctly."
msgstr ""
"Если [code]true[/code], узел будет получать [constant "
"NOTIFICATION_LOCAL_TRANSFORM_CHANGED] всякий раз, когда изменяется [member "
"transform].\n"
"[b]Примечание:[/b] Некоторые 3D-узлы, такие как [CSGShape3D] или "
"[CollisionShape3D], автоматически включают это для правильной работы."

msgid ""
"If [code]true[/code], the node will receive [constant "
"NOTIFICATION_TRANSFORM_CHANGED] whenever [member global_transform] changes.\n"
"[b]Note:[/b] Most 3D nodes such as [VisualInstance3D] or [CollisionObject3D] "
"automatically enable this to function correctly.\n"
"[b]Note:[/b] In the editor, nodes will propagate this notification to their "
"children if a gizmo is attached (see [method add_gizmo])."
msgstr ""
"Если [code]true[/code], узел будет получать [constant "
"NOTIFICATION_TRANSFORM_CHANGED] всякий раз, когда изменяется [member "
"global_transform].\n"
"[b]Примечание:[/b] Большинство 3D-узлов, таких как [VisualInstance3D] или "
"[CollisionObject3D], автоматически включают это для корректной работы.\n"
"[b]Примечание:[/b] В редакторе узлы будут распространять это уведомление "
"своим дочерним элементам, если присоединен гизмо (см. [method add_gizmo])."

msgid ""
"Selects the [param gizmo]'s subgizmo with the given [param id] and sets its "
"transform. Only works in the editor.\n"
"[b]Note:[/b] The gizmo object would typically be an instance of "
"[EditorNode3DGizmo], but the argument type is kept generic to avoid creating "
"a dependency on editor classes in [Node3D]."
msgstr ""
"Выбирает подэлемент [param gizmo] с заданным [param id] и задает его "
"преобразование. Работает только в редакторе.\n"
"[b]Примечание:[/b] Объект gizmo обычно является экземпляром "
"[EditorNode3DGizmo], но тип аргумента сохраняется общим, чтобы избежать "
"создания зависимости от классов редактора в [Node3D]."

msgid ""
"Allows this node to be rendered. Equivalent to setting [member visible] to "
"[code]true[/code]. This is the opposite of [method hide]."
msgstr ""
"Позволяет отображать этот узел. Эквивалентно установке [member visible] в "
"[code]true[/code]. Это противоположно [method hide]."

msgid ""
"Returns the [param local_point] converted from this node's local space to "
"global space. This is the opposite of [method to_local]."
msgstr ""
"Возвращает [param local_point], преобразованный из локального пространства "
"этого узла в глобальное пространство. Это противоположно [method to_local]."

msgid ""
"Returns the [param global_point] converted from global space to this node's "
"local space. This is the opposite of [method to_global]."
msgstr ""
"Возвращает [param global_point], преобразованный из глобального пространства "
"в локальное пространство этого узла. Это противоположно [method to_global]."

msgid ""
"Adds the given translation [param offset] to the node's position, in local "
"space (relative to this node).\n"
"[b]Note:[/b] Prefer using [method translate_object_local], instead, as this "
"method may be changed in a future release.\n"
"[b]Note:[/b] Despite the naming convention, this operation is [b]not[/b] "
"calculated in parent space for compatibility reasons. To translate in parent "
"space, add [param offset] to the [member position] ([code]node_3d.position += "
"offset[/code])."
msgstr ""
"Добавляет заданное смещение [param offset] к позиции узла в локальном "
"пространстве (относительно этого узла).\n"
"[b]Примечание:[/b] Вместо этого предпочтительнее использовать [method "
"translate_object_local], так как этот метод может быть изменен в будущем "
"выпуске.\n"
"[b]Примечание:[/b] Несмотря на соглашение об именовании, эта операция [b]не[/"
"b] вычисляется в родительском пространстве по соображениям совместимости. "
"Чтобы перевести в родительском пространстве, добавьте [param offset] к "
"[member position] ([code]node_3d.position += offset[/code])."

msgid ""
"Adds the given translation [param offset] to the node's position, in local "
"space (relative to this node)."
msgstr ""
"Добавляет заданное смещение [param offset] к положению узла в локальном "
"пространстве (относительно этого узла)."

msgid ""
"Updates all the [EditorNode3DGizmo] objects attached to this node. Only works "
"in the editor."
msgstr ""
"Обновляет все объекты [EditorNode3DGizmo], прикрепленные к этому узлу. "
"Работает только в редакторе."

msgid ""
"Basis of the [member transform] property. Represents the rotation, scale, and "
"shear of this node in parent space (relative to the parent node)."
msgstr ""
"Базис свойства [member transform]. Представляет поворот, масштаб и сдвиг "
"этого узла в родительском пространстве (относительно родительского узла)."

msgid ""
"Basis of the [member global_transform] property. Represents the rotation, "
"scale, and shear of this node in global space (relative to the world).\n"
"[b]Note:[/b] If the node is not inside the tree, getting this property fails "
"and returns [constant Basis.IDENTITY]."
msgstr ""
"Базис свойства [member global_transform]. Представляет поворот, масштаб и "
"сдвиг этого узла в глобальном пространстве (относительно мира).\n"
"[b]Примечание:[/b] Если узел не находится внутри дерева, получение этого "
"свойства завершается неудачей и возвращается [constant Basis.IDENTITY]."

msgid ""
"Global position (translation) of this node in global space (relative to the "
"world). This is equivalent to the [member global_transform]'s [member "
"Transform3D.origin].\n"
"[b]Note:[/b] If the node is not inside the tree, getting this property fails "
"and returns [constant Vector3.ZERO]."
msgstr ""
"Глобальное положение (перемещение) этого узла в глобальном пространстве "
"(относительно мира). Это эквивалентно [member global_transform] и [member "
"Transform3D.origin].\n"
"[b]Примечание:[/b] Если узел не находится внутри дерева, получение этого "
"свойства завершается неудачей и возвращается [constant Vector3.ZERO]."

msgid ""
"Global rotation of this node as [url=https://en.wikipedia.org/wiki/"
"Euler_angles]Euler angles[/url], in radians and in global space (relative to "
"the world). This value is obtained from [member global_basis]'s rotation.\n"
"- The [member Vector3.x] is the angle around the global X axis (pitch);\n"
"- The [member Vector3.y] is the angle around the global Y axis (yaw);\n"
"- The [member Vector3.z] is the angle around the global Z axis (roll).\n"
"[b]Note:[/b] Unlike [member rotation], this property always follows the YXZ "
"convention ([constant EULER_ORDER_YXZ]).\n"
"[b]Note:[/b] If the node is not inside the tree, getting this property fails "
"and returns [constant Vector3.ZERO]."
msgstr ""
"Глобальное вращение этого узла как [url=https://en.wikipedia.org/wiki/"
"Euler_angles]углы Эйлера[/url], в радианах и в глобальном пространстве "
"(относительно мира). Это значение получается из вращения [member "
"global_basis].\n"
"- [member Vector3.x] — это угол вокруг глобальной оси X (pitch);\n"
"- [member Vector3.y] — это угол вокруг глобальной оси Y (yaw);\n"
"- [member Vector3.z] — это угол вокруг глобальной оси Z (roll).\n"
"[b]Примечание:[/b] В отличие от [member rotation], это свойство всегда "
"следует соглашению YXZ ([constant EULER_ORDER_YXZ]).\n"
"[b]Примечание:[/b] Если узел не находится внутри дерева, получение этого "
"свойства завершается ошибкой и возвращается [constant Vector3.ZERO]."

msgid ""
"The [member global_rotation] of this node, in degrees instead of radians.\n"
"[b]Note:[/b] If the node is not inside the tree, getting this property fails "
"and returns [constant Vector3.ZERO]."
msgstr ""
"[member global_rotation] этого узла в градусах вместо радиан.\n"
"[b]Примечание:[/b] Если узел не находится внутри дерева, получение этого "
"свойства завершается неудачей и возвращается [constant Vector3.ZERO]."

msgid ""
"The transformation of this node, in global space (relative to the world). "
"Contains and represents this node's [member global_position], [member "
"global_rotation], and global scale.\n"
"[b]Note:[/b] If the node is not inside the tree, getting this property fails "
"and returns [constant Transform3D.IDENTITY]."
msgstr ""
"Преобразование этого узла в глобальном пространстве (относительно мира). "
"Содержит и представляет [member global_position], [member global_rotation] и "
"глобальный масштаб этого узла.\n"
"[b]Примечание:[/b] Если узел не находится внутри дерева, получение этого "
"свойства завершается неудачей и возвращается [constant Transform3D.IDENTITY]."

msgid ""
"Position (translation) of this node in parent space (relative to the parent "
"node). This is equivalent to the [member transform]'s [member "
"Transform3D.origin]."
msgstr ""
"Положение (перемещение) этого узла в родительском пространстве (относительно "
"родительского узла). Это эквивалентно [member transform] [member "
"Transform3D.origin]."

msgid ""
"Rotation of this node represented as a [Quaternion] in parent space (relative "
"to the parent node). This value is obtained from [member basis]'s rotation.\n"
"[b]Note:[/b] Quaternions are much more suitable for 3D math but are less "
"intuitive. Setting this property can be useful for interpolation (see [method "
"Quaternion.slerp])."
msgstr ""
"Вращение этого узла, представленного как [Quaternion] в родительском "
"пространстве (относительно родительского узла). Это значение получается из "
"вращения [member basic].\n"
"[b]Примечание:[/b] Кватернионы гораздо больше подходят для трехмерной "
"математики, но менее интуитивны. Установка этого свойства может быть полезна "
"для интерполяции (см. [method Quaternion.slerp])."

msgid ""
"Rotation of this node as [url=https://en.wikipedia.org/wiki/"
"Euler_angles]Euler angles[/url], in radians and in parent space (relative to "
"the parent node). This value is obtained from [member basis]'s rotation.\n"
"- The [member Vector3.x] is the angle around the local X axis (pitch);\n"
"- The [member Vector3.y] is the angle around the local Y axis (yaw);\n"
"- The [member Vector3.z] is the angle around the local Z axis (roll).\n"
"The order of each consecutive rotation can be changed with [member "
"rotation_order] (see [enum EulerOrder] constants). By default, the YXZ "
"convention is used ([constant EULER_ORDER_YXZ]).\n"
"[b]Note:[/b] This property is edited in degrees in the inspector. If you want "
"to use degrees in a script, use [member rotation_degrees]."
msgstr ""
"Вращение этого узла как [url=https://en.wikipedia.org/wiki/Euler_angles]углы "
"Эйлера[/url], в радианах и в родительском пространстве (относительно "
"родительского узла). Это значение получается из вращения [member basic].\n"
"- [member Vector3.x] - это угол вокруг локальной оси X (тангаж);\n"
"- [member Vector3.y] - это угол вокруг локальной оси Y (рыскание);\n"
"- [member Vector3.z] - это угол вокруг локальной оси Z (крен).\n"
"Порядок каждого последовательного вращения можно изменить с помощью [member "
"rotation_order] (см. константы [enum EulerOrder]). По умолчанию используется "
"соглашение YXZ ([constant EULER_ORDER_YXZ]).\n"
"[b]Примечание:[/b] Это свойство редактируется в градусах в инспекторе. Если "
"вы хотите использовать градусы в скрипте, используйте [member "
"rotation_degrees]."

msgid ""
"The [member rotation] of this node, in degrees instead of radians.\n"
"[b]Note:[/b] This is [b]not[/b] the property available in the Inspector dock."
msgstr ""
"[member rotation] этого узла в градусах вместо радиан.\n"
"[b]Примечание:[/b] Это [b]не[/b] свойство, доступное во вкладке инспектора."

msgid "How this node's rotation and scale are displayed in the Inspector dock."
msgstr "Как поворот и масштаб этого узла отображаются в доке инспектора."

msgid ""
"The axis rotation order of the [member rotation] property. The final "
"orientation is calculated by rotating around the local X, Y, and Z axis in "
"this order."
msgstr ""
"Порядок вращения осей свойства [member rotation]. Окончательная ориентация "
"вычисляется путем вращения вокруг локальных осей X, Y и Z в этом порядке."

msgid ""
"Scale of this node in local space (relative to this node). This value is "
"obtained from [member basis]'s scale.\n"
"[b]Note:[/b] The behavior of some 3D node types is not affected by this "
"property. These include [Light3D], [Camera3D], [AudioStreamPlayer3D], and "
"more.\n"
"[b]Warning:[/b] The scale's components must either be all positive or all "
"negative, and [b]not[/b] exactly [code]0.0[/code]. Otherwise, it won't be "
"possible to obtain the scale from the [member basis]. This may cause the "
"intended scale to be lost when reloaded from disk, and potentially other "
"unstable behavior."
msgstr ""
"Масштаб этого узла в локальном пространстве (относительно этого узла). Это "
"значение получается из масштаба [member basis].\n"
"[b]Примечание:[/b] Поведение некоторых типов 3D-узлов не зависит от этого "
"свойства. К ним относятся [Light3D], [Camera3D], [AudioStreamPlayer3D] и "
"другие.\n"
"[b]Предупреждение:[/b] Компоненты масштаба должны быть либо все "
"положительными, либо все отрицательными и [b]не[/b] точно [code]0.0[/code]. В "
"противном случае будет невозможно получить масштаб из [member basis]. Это "
"может привести к потере предполагаемого масштаба при перезагрузке с диска и "
"потенциально к другому нестабильному поведению."

msgid ""
"If [code]true[/code], the node does not inherit its transformations from its "
"parent. As such, node transformations will only be in global space, which "
"also means that [member global_transform] and [member transform] will be "
"identical."
msgstr ""
"Если [code]true[/code], узел не наследует свои преобразования от своего "
"родителя. Таким образом, преобразования узлов будут только в глобальном "
"пространстве, что также означает, что [member global_transform] и [member "
"transform] будут идентичны."

msgid ""
"The local transformation of this node, in parent space (relative to the "
"parent node). Contains and represents this node's [member position], [member "
"rotation], and [member scale]."
msgstr ""
"Локальное преобразование этого узла в родительском пространстве (относительно "
"родительского узла). Содержит и представляет [member position], [member "
"rotation] и [member scale] этого узла."

msgid ""
"Path to the visibility range parent for this node and its descendants. The "
"visibility parent must be a [GeometryInstance3D].\n"
"Any visual instance will only be visible if the visibility parent (and all of "
"its visibility ancestors) is hidden by being closer to the camera than its "
"own [member GeometryInstance3D.visibility_range_begin]. Nodes hidden via the "
"[member Node3D.visible] property are essentially removed from the visibility "
"dependency tree, so dependent instances will not take the hidden node or its "
"descendants into account."
msgstr ""
"Путь к родительскому узлу диапазона видимости для данного узла и его дочерних "
"элементов. Родителем видимости должен быть [GeometryInstance3D].\n"
"Любой визуальный экземпляр будет видимым только если его родитель видимости "
"(и все вышестоящие элементы в иерархии видимости) скрыты из-за приближения к "
"камере ближе, чем указано в [member "
"GeometryInstance3D.visibility_range_begin]. Узлы, скрытые через свойство "
"[member Node3D.visible], фактически исключаются из дерева зависимостей "
"видимости, поэтому зависимые экземпляры не учитывают скрытый узел или его "
"дочерние элементы."

msgid ""
"If [code]true[/code], this node can be visible. The node is only rendered "
"when all of its ancestors are visible, as well. That means [method "
"is_visible_in_tree] must return [code]true[/code]."
msgstr ""
"Если [code]true[/code], этот узел может быть видимым. Узел отображается "
"только тогда, когда все его предки также видны. Это означает, что [method "
"is_visible_in_tree] должен возвращать [code]true[/code]."

msgid ""
"Emitted when this node's visibility changes (see [member visible] and [method "
"is_visible_in_tree]).\n"
"This signal is emitted [i]after[/i] the related [constant "
"NOTIFICATION_VISIBILITY_CHANGED] notification."
msgstr ""
"Выдается при изменении видимости этого узла (см. [member visible] и [method "
"is_visible_in_tree]).\n"
"Этот сигнал выдается [i]после[/i] связанного [constant "
"NOTIFICATION_VISIBILITY_CHANGED] уведомления."

msgid ""
"Notification received when this node's [member global_transform] changes, if "
"[method is_transform_notification_enabled] is [code]true[/code]. See also "
"[method set_notify_transform].\n"
"[b]Note:[/b] Most 3D nodes such as [VisualInstance3D] or [CollisionObject3D] "
"automatically enable this to function correctly.\n"
"[b]Note:[/b] In the editor, nodes will propagate this notification to their "
"children if a gizmo is attached (see [method add_gizmo])."
msgstr ""
"Уведомление получено, когда [member global_transform] этого узла изменяется, "
"если [method is_transform_notification_enabled] имеет значение [code]true[/"
"code]. См. также [method set_notify_transform].\n"
"[b]Примечание:[/b] Большинство 3D-узлов, таких как [VisualInstance3D] или "
"[CollisionObject3D], автоматически включают это для корректной работы.\n"
"[b]Примечание:[/b] В редакторе узлы будут распространять это уведомление "
"своим дочерним элементам, если присоединен гизмо (см. [method add_gizmo])."

msgid ""
"Notification received when this node is registered to a new [World3D] (see "
"[method get_world_3d])."
msgstr ""
"Уведомление получено, когда этот узел зарегистрирован в новом [World3D] (см. "
"[method get_world_3d])."

msgid ""
"Notification received when this node is unregistered from the current "
"[World3D] (see [method get_world_3d])."
msgstr ""
"Уведомление получено, когда этот узел отменяет регистрацию в текущем "
"[World3D] (см. [method get_world_3d])."

msgid ""
"Notification received when this node's [member transform] changes, if [method "
"is_local_transform_notification_enabled] is [code]true[/code]. This is not "
"received when a parent [Node3D]'s [member transform] changes. See also "
"[method set_notify_local_transform].\n"
"[b]Note:[/b] Some 3D nodes such as [CSGShape3D] or [CollisionShape3D] "
"automatically enable this to function correctly."
msgstr ""
"Уведомление получено, когда изменяется [member transform] этого узла, если "
"[method is_local_transform_notification_enabled] равно [code]true[/code]. Это "
"не получено, когда изменяется [member transform] родительского [Node3D]. См. "
"также [method set_notify_local_transform].\n"
"[b]Примечание:[/b] Некоторые 3D-узлы, такие как [CSGShape3D] или "
"[CollisionShape3D], автоматически включают это для правильной работы."

msgid ""
"The rotation is edited using a [Vector3] in [url=https://en.wikipedia.org/"
"wiki/Euler_angles]Euler angles[/url]."
msgstr ""
"Вращение редактируется с помощью [Vector3] в [url=https://en.wikipedia.org/"
"wiki/Euler_angles]Углах Эйлера[/url]."

msgid "The rotation is edited using a [Quaternion]."
msgstr "Вращение редактируется с помощью [Quaternion]."

msgid ""
"The rotation is edited using a [Basis]. In this mode, the raw [member "
"basis]'s axes can be freely modified, but the [member scale] property is not "
"available."
msgstr ""
"Вращение редактируется с использованием [Basis]. В этом режиме оси "
"необработанного [member basis] могут быть свободно изменены, но свойство "
"[member scale] недоступно."

msgid "Abstract class to expose editor gizmos for [Node3D]."
msgstr ""
"Абстрактный класс для предоставления возможностей редактора для [Node3D]."

msgid ""
"This abstract class helps connect the [Node3D] scene with the editor-specific "
"[EditorNode3DGizmo] class.\n"
"[Node3DGizmo] by itself has no exposed API, refer to [method "
"Node3D.add_gizmo] and pass it an [EditorNode3DGizmo] instance."
msgstr ""
"Этот абстрактный класс помогает связать сцену [Node3D] с классом "
"[EditorNode3DGizmo], специфичным для редактора.\n"
"[Node3DGizmo] сам по себе не имеет открытого API, обратитесь к [method "
"Node3D.add_gizmo] и передайте ему экземпляр [EditorNode3DGizmo]."

msgid "A pre-parsed scene tree path."
msgstr "Предварительно проанализированный путь дерева сцены."

msgid ""
"The [NodePath] built-in [Variant] type represents a path to a node or "
"property in a hierarchy of nodes. It is designed to be efficiently passed "
"into many built-in methods (such as [method Node.get_node], [method "
"Object.set_indexed], [method Tween.tween_property], etc.) without a hard "
"dependence on the node or property they point to.\n"
"A node path is represented as a [String] composed of slash-separated ([code]/"
"[/code]) node names and colon-separated ([code]:[/code]) property names (also "
"called \"subnames\"). Similar to a filesystem path, [code]\"..\"[/code] and "
"[code]\".\"[/code] are special node names. They refer to the parent node and "
"the current node, respectively.\n"
"The following examples are paths relative to the current node:\n"
"[codeblock]\n"
"^\"A\"     # Points to the direct child A.\n"
"^\"A/B\"   # Points to A's child B.\n"
"^\".\"     # Points to the current node.\n"
"^\"..\"    # Points to the parent node.\n"
"^\"../C\"  # Points to the sibling node C.\n"
"^\"../..\" # Points to the grandparent node.\n"
"[/codeblock]\n"
"A leading slash means the path is absolute, and begins from the [SceneTree]:\n"
"[codeblock]\n"
"^\"/root\"            # Points to the SceneTree's root Window.\n"
"^\"/root/Title\"      # May point to the main scene's root node named "
"\"Title\".\n"
"^\"/root/Global\"     # May point to an autoloaded node or scene named "
"\"Global\".\n"
"[/codeblock]\n"
"Despite their name, node paths may also point to a property:\n"
"[codeblock]\n"
"^\":position\"           # Points to this object's position.\n"
"^\":position:x\"         # Points to this object's position in the x axis.\n"
"^\"Camera3D:rotation:y\" # Points to the child Camera3D and its y rotation.\n"
"^\"/root:size:x\"        # Points to the root Window and its width.\n"
"[/codeblock]\n"
"In some situations, it's possible to omit the leading [code]:[/code] when "
"pointing to an object's property. As an example, this is the case with "
"[method Object.set_indexed] and [method Tween.tween_property], as those "
"methods call [method NodePath.get_as_property_path] under the hood. However, "
"it's generally recommended to keep the [code]:[/code] prefix.\n"
"Node paths cannot check whether they are valid and may point to nodes or "
"properties that do not exist. Their meaning depends entirely on the context "
"in which they're used.\n"
"You usually do not have to worry about the [NodePath] type, as strings are "
"automatically converted to the type when necessary. There are still times "
"when defining node paths is useful. For example, exported [NodePath] "
"properties allow you to easily select any node within the currently edited "
"scene. They are also automatically updated when moving, renaming or deleting "
"nodes in the scene tree editor. See also [annotation "
"@GDScript.@export_node_path].\n"
"See also [StringName], which is a similar type designed for optimized "
"strings.\n"
"[b]Note:[/b] In a boolean context, a [NodePath] will evaluate to [code]false[/"
"code] if it is empty ([code]NodePath(\"\")[/code]). Otherwise, a [NodePath] "
"will always evaluate to [code]true[/code]."
msgstr ""
"Встроенный тип [Variant] [NodePath] представляет собой путь к узлу или "
"свойству в иерархии узлов. Он разработан для эффективной передачи во многие "
"встроенные методы (такие как [method Node.get_node], [method "
"Object.set_indexed], [method Tween.tween_property] и т. д.) без жесткой "
"зависимости от узла или свойства, на которые они указывают.\n"
"Путь к узлу представлен как [String], состоящий из разделенных косой чертой "
"([code]/[/code]) имен узлов и разделенных двоеточием ([code]:[/code]) имен "
"свойств (также называемых «подименами»). Подобно пути файловой системы, [code]"
"\"..\"[/code] и [code]\".\"[/code] являются специальными именами узлов. Они "
"ссылаются на родительский узел и текущий узел соответственно.\n"
"Следующие примеры являются путями относительно текущего узла:\n"
"[codeblock]\n"
"^\"A\"     # Указывает на прямого потомка А.\n"
"^\"A/B\"   # Указывает на дочерний элемент А — B.\n"
"^\".\"     # Указывает на текущий узел.\n"
"^\"..\"    # Указывает на родительский узел.\n"
"^\"../C\"  # Указывает на родственный узел C.\n"
"^\"../..\" # Указывает на прародительский узел.\n"
"[/codeblock]\n"
"Начальная косая черта означает, что путь абсолютный и начинается с "
"[SceneTree]:\n"
"[codeblock]\n"
"^\"/root\"            # Указывает на корневое окно SceneTree.\n"
"^\"/root/Title\"      # Может указывать на корневой узел основной сцены с "
"именем «Title».\n"
"^\"/root/Global\"     # Может указывать на автоматически загруженный узел или "
"сцену с именем «Global».\n"
"[/codeblock]\n"
"Несмотря на свое название, пути узлов также могут указывать на свойство:\n"
"[codeblock]\n"
"^\":position\"           # Указывает на положение этого объекта.\n"
"^\":position:x\"         # Указывает на положение данного объекта по оси x.\n"
"^\"Camera3D:rotation:y\" # Указывает на дочернюю камеру Camera3D и ее "
"вращение по оси Y.\n"
"^\"/root:size:x\"        # Указывает на корневое окно и его ширину.\n"
"[/codeblock]\n"
"В некоторых ситуациях можно опустить ведущий [code]:[/code] при указании на "
"свойство объекта. Например, это касается [method Object.set_indexed] и "
"[method Tween.tween_property], поскольку эти методы вызывают [method "
"NodePath.get_as_property_path] под капотом. Однако обычно рекомендуется "
"сохранять префикс [code]:[/code].\n"
"Пути узлов не могут проверять, являются ли они допустимыми, и могут указывать "
"на узлы или свойства, которые не существуют. Их значение полностью зависит от "
"контекста, в котором они используются.\n"
"Обычно вам не нужно беспокоиться о типе [NodePath], поскольку строки "
"автоматически преобразуются в этот тип при необходимости. Бывают случаи, "
"когда определение путей узлов полезно. Например, экспортированные свойства "
"[NodePath] позволяют вам легко выбирать любой узел в текущей редактируемой "
"сцене. Они также автоматически обновляются при перемещении, переименовании "
"или удалении узлов в редакторе дерева сцены. См. также [annotation "
"@GDScript.@export_node_path].\n"
"См. также [StringName], который является похожим типом, разработанным для "
"оптимизированных строк.\n"
"[b]Примечание:[/b] В булевом контексте [NodePath] будет оцениваться как "
"[code]false[/code], если он пуст ([code]NodePath(\"\")[/code]). В противном "
"случае [NodePath] всегда будет оцениваться как [code]true[/code]."

msgid "2D Role Playing Game (RPG) Demo"
msgstr "Демо 2D ролевой игры (РПГ)"

msgid "Constructs an empty [NodePath]."
msgstr "Создает пустой [NodePath]."

msgid "Constructs a [NodePath] as a copy of the given [NodePath]."
msgstr "Создает [NodePath] как копию заданного [NodePath]."

msgid ""
"Constructs a [NodePath] from a [String]. The created path is absolute if "
"prefixed with a slash (see [method is_absolute]).\n"
"The \"subnames\" optionally included after the path to the target node can "
"point to properties, and can also be nested.\n"
"The following strings can be valid node paths:\n"
"[codeblock]\n"
"# Points to the Sprite2D node.\n"
"\"Level/RigidBody2D/Sprite2D\"\n"
"\n"
"# Points to the Sprite2D node and its \"texture\" resource.\n"
"# get_node() would retrieve the Sprite2D, while get_node_and_resource()\n"
"# would retrieve both the Sprite2D node and the \"texture\" resource.\n"
"\"Level/RigidBody2D/Sprite2D:texture\"\n"
"\n"
"# Points to the Sprite2D node and its \"position\" property.\n"
"\"Level/RigidBody2D/Sprite2D:position\"\n"
"\n"
"# Points to the Sprite2D node and the \"x\" component of its \"position\" "
"property.\n"
"\"Level/RigidBody2D/Sprite2D:position:x\"\n"
"\n"
"# Points to the RigidBody2D node as an absolute path beginning from the "
"SceneTree.\n"
"\"/root/Level/RigidBody2D\"\n"
"[/codeblock]\n"
"[b]Note:[/b] In GDScript, it's also possible to convert a constant string "
"into a node path by prefixing it with [code]^[/code]. [code]^\"path/to/"
"node\"[/code] is equivalent to [code]NodePath(\"path/to/node\")[/code]."
msgstr ""
"Создает [NodePath] из [String]. Созданный путь является абсолютным, если "
"предваряется косой чертой (см. [method is_absolute]).\n"
"\"Подимена\", необязательно включаемые после пути к целевому узлу, могут "
"указывать на свойства, а также могут быть вложенными.\n"
"Следующие строки могут быть допустимыми путями узлов:\n"
"[codeblock]\n"
"# Указывает на узел Sprite2D.\n"
"\"Level/RigidBody2D/Sprite2D\"\n"
"\n"
"# Указывает на узел Sprite2D и его ресурс «texture».\n"
"# get_node() извлечет Sprite2D, в то время как get_node_and_resource()\n"
"# извлечет как узел Sprite2D, так и ресурс «texture».\n"
"\"Level/RigidBody2D/Sprite2D:texture\"\n"
"\n"
"# Указывает на узел Sprite2D и его свойство «position».\n"
"\"Level/RigidBody2D/Sprite2D:position\"\n"
"\n"
"# Указывает на узел Sprite2D и компонент «x» его свойства «position».\n"
"\"Level/RigidBody2D/Sprite2D:position:x\"\n"
"\n"
"# Указывает на узел RigidBody2D как на абсолютный путь, начинающийся от "
"SceneTree.\n"
"\"/root/Level/RigidBody2D\"\n"
"[/codeblock]\n"
"[b]Примечание:[/b] В GDScript также можно преобразовать постоянную строку в "
"путь к узлу, добавив к ней префикс [code]^[/code]. [code]^\"path/to/node\"[/"
"code] эквивалентно [code]NodePath(\"path/to/node\")[/code]."

msgid ""
"Returns a copy of this node path with a colon character ([code]:[/code]) "
"prefixed, transforming it to a pure property path with no node names "
"(relative to the current node).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# node_path points to the \"x\" property of the child node named "
"\"position\".\n"
"var node_path = ^\"position:x\"\n"
"\n"
"# property_path points to the \"position\" in the \"x\" axis of this node.\n"
"var property_path = node_path.get_as_property_path()\n"
"print(property_path) # Prints \":position:x\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// nodePath points to the \"x\" property of the child node named "
"\"position\".\n"
"var nodePath = new NodePath(\"position:x\");\n"
"\n"
"// propertyPath points to the \"position\" in the \"x\" axis of this node.\n"
"NodePath propertyPath = nodePath.GetAsPropertyPath();\n"
"GD.Print(propertyPath); // Prints \":position:x\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает копию этого пути узла с префиксом двоеточия ([code]:[/code]), "
"преобразуя его в чистый путь свойства без имен узлов (относительно текущего "
"узла).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# node_path указывает на свойство «x» дочернего узла с именем «position».\n"
"var node_path = ^\"position:x\"\n"
"\n"
"# property_path указывает на «position» по оси «x» этого узла.\n"
"var property_path = node_path.get_as_property_path()\n"
"print(property_path) # Выводит \":position:x\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// node_path указывает на свойство «x» дочернего узла с именем «position».\n"
"var nodePath = new NodePath(\"position:x\");\n"
"\n"
"// property_path указывает на «position» по оси «x» этого узла.\n"
"NodePath propertyPath = nodePath.GetAsPropertyPath();\n"
"GD.Print(propertyPath); // Выводит \":position:x\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns all node names concatenated with a slash character ([code]/[/code]) "
"as a single [StringName]."
msgstr ""
"Возвращает все имена узлов, объединенные с помощью символа косой черты "
"([code]/[/code]) как единое [StringName]."

msgid ""
"Returns all property subnames concatenated with a colon character ([code]:[/"
"code]) as a single [StringName].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node_path = ^\"Sprite2D:texture:resource_name\"\n"
"print(node_path.get_concatenated_subnames()) # Prints "
"\"texture:resource_name\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var nodePath = new NodePath(\"Sprite2D:texture:resource_name\");\n"
"GD.Print(nodePath.GetConcatenatedSubnames()); // Prints "
"\"texture:resource_name\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает все подимена свойств, объединенные символом двоеточия ([code]:[/"
"code]) как единое [StringName].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node_path = ^\"Sprite2D:texture:resource_name\"\n"
"print(node_path.get_concatenated_subnames()) # Выводит "
"\"texture:resource_name\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var nodePath = new NodePath(\"Sprite2D:texture:resource_name\");\n"
"GD.Print(nodePath.GetConcatenatedSubnames()); // Выводит "
"\"texture:resource_name\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the node name indicated by [param idx], starting from 0. If [param "
"idx] is out of bounds, an error is generated. See also [method "
"get_subname_count] and [method get_name_count].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var sprite_path = NodePath(\"../RigidBody2D/Sprite2D\")\n"
"print(sprite_path.get_name(0)) # Prints \"..\"\n"
"print(sprite_path.get_name(1)) # Prints \"RigidBody2D\"\n"
"print(sprite_path.get_name(2)) # Prints \"Sprite\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var spritePath = new NodePath(\"../RigidBody2D/Sprite2D\");\n"
"GD.Print(spritePath.GetName(0)); // Prints \"..\"\n"
"GD.Print(spritePath.GetName(1)); // Prints \"PathFollow2D\"\n"
"GD.Print(spritePath.GetName(2)); // Prints \"Sprite\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает имя узла, указанное [param idx], начиная с 0. Если [param idx] "
"выходит за пределы, генерируется ошибка. См. также [method get_subname_count] "
"и [method get_name_count].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var sprite_path = NodePath(\"../RigidBody2D/Sprite2D\")\n"
"print(sprite_path.get_name(0)) # Выводит \"..\"\n"
"print(sprite_path.get_name(1)) # Выводит \"RigidBody2D\"\n"
"print(sprite_path.get_name(2)) # Выводит \"Sprite\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var spritePath = new NodePath(\"../RigidBody2D/Sprite2D\");\n"
"GD.Print(spritePath.GetName(0)); // Выводит \"..\"\n"
"GD.Print(spritePath.GetName(1)); // Выводит \"PathFollow2D\"\n"
"GD.Print(spritePath.GetName(2)); // Выводит \"Sprite\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the number of node names in the path. Property subnames are not "
"included.\n"
"For example, [code]\"../RigidBody2D/Sprite2D:texture\"[/code] contains 3 node "
"names."
msgstr ""
"Возвращает количество имен узлов в пути. Подимена свойств не включены.\n"
"Например, [code]\"../RigidBody2D/Sprite2D:texture\"[/code] содержит 3 имени "
"узлов."

msgid ""
"Returns the property name indicated by [param idx], starting from 0. If "
"[param idx] is out of bounds, an error is generated. See also [method "
"get_subname_count].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var path_to_name = NodePath(\"Sprite2D:texture:resource_name\")\n"
"print(path_to_name.get_subname(0)) # Prints \"texture\"\n"
"print(path_to_name.get_subname(1)) # Prints \"resource_name\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var pathToName = new NodePath(\"Sprite2D:texture:resource_name\");\n"
"GD.Print(pathToName.GetSubname(0)); // Prints \"texture\"\n"
"GD.Print(pathToName.GetSubname(1)); // Prints \"resource_name\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает имя свойства, указанное [param idx], начиная с 0. Если [param idx] "
"выходит за пределы, генерируется ошибка. См. также [method "
"get_subname_count].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var path_to_name = NodePath(\"Sprite2D:texture:resource_name\")\n"
"print(path_to_name.get_subname(0)) # Выводит \"texture\"\n"
"print(path_to_name.get_subname(1)) # Выводит \"resource_name\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var pathToName = new NodePath(\"Sprite2D:texture:resource_name\");\n"
"GD.Print(pathToName.GetSubname(0)); // Выводит \"texture\"\n"
"GD.Print(pathToName.GetSubname(1)); // Выводит \"resource_name\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the number of property names (\"subnames\") in the path. Each subname "
"in the node path is listed after a colon character ([code]:[/code]).\n"
"For example, [code]\"Level/RigidBody2D/Sprite2D:texture:resource_name\"[/"
"code] contains 2 subnames."
msgstr ""
"Возвращает количество имен свойств («подимен») в пути. Каждое подимя в пути "
"узла указывается после символа двоеточия ([code]:[/code]).\n"
"Например, [code]\"Level/RigidBody2D/Sprite2D:texture:resource_name\"[/code] "
"содержит 2 подимени."

msgid ""
"Returns the 32-bit hash value representing the node path's contents.\n"
"[b]Note:[/b] Node paths with equal hash values are [i]not[/i] guaranteed to "
"be the same, as a result of hash collisions. Node paths with different hash "
"values are guaranteed to be different."
msgstr ""
"Возвращает 32-битное хэш-значение, представляющее содержимое пути узла.\n"
"[b]Примечание:[/b] Пути узлов с одинаковыми значениями хэша [i]не[/i] "
"гарантированно будут одинаковыми из-за коллизий хэшей. Пути узлов с разными "
"значениями хэшей гарантированно будут разными."

msgid ""
"Returns [code]true[/code] if the node path is absolute. Unlike a relative "
"path, an absolute path is represented by a leading slash character ([code]/[/"
"code]) and always begins from the [SceneTree]. It can be used to reliably "
"access nodes from the root node (e.g. [code]\"/root/Global\"[/code] if an "
"autoload named \"Global\" exists)."
msgstr ""
"Возвращает [code]true[/code], если путь к узлу абсолютный. В отличие от "
"относительного пути, абсолютный путь представлен начальным символом косой "
"черты ([code]/[/code]) и всегда начинается с [SceneTree]. Его можно "
"использовать для надежного доступа к узлам из корневого узла (например, [code]"
"\"/root/Global\"[/code], если существует автозагрузка с именем \"Global\")."

msgid ""
"Returns [code]true[/code] if the node path has been constructed from an empty "
"[String] ([code]\"\"[/code])."
msgstr ""
"Возвращает [code]true[/code], если путь к узлу был создан из пустой [String] "
"([code]\"\"[/code])."

msgid ""
"Returns the slice of the [NodePath], from [param begin] (inclusive) to [param "
"end] (exclusive), as a new [NodePath].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"sum of [method get_name_count] and [method get_subname_count], so the default "
"value for [param end] makes it slice to the end of the [NodePath] by default "
"(i.e. [code]path.slice(1)[/code] is a shorthand for [code]path.slice(1, "
"path.get_name_count() + path.get_subname_count())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the [NodePath] (i.e. [code]path.slice(0, -2)[/code] is a shorthand "
"for [code]path.slice(0, path.get_name_count() + path.get_subname_count() - 2)"
"[/code])."
msgstr ""
"Возвращает срез [NodePath] от [param begin] (включительно) до [param end] "
"(исключительно) как новый [NodePath].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено суммой "
"[method get_name_count] и [method get_subname_count], поэтому значение по "
"умолчанию для [param end] делает его срезом до конца [NodePath] по умолчанию "
"(т. е. [code]path.slice(1)[/code] является сокращением для "
"[code]path.slice(1, path.get_name_count() + path.get_subname_count())[/"
"code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу [NodePath] (т. е. [code]path.slice(0, -2)[/code] является сокращением "
"для [code]path.slice(0, path.get_name_count() + path.get_subname_count() - 2)"
"[/code])."

msgid "Returns [code]true[/code] if two node paths are not equal."
msgstr "Возвращает [code]true[/code], если пути двух узлов не равны."

msgid ""
"Returns [code]true[/code] if two node paths are equal, that is, they are "
"composed of the same node names and subnames in the same order."
msgstr ""
"Возвращает [code]true[/code], если два пути узлов равны, то есть они состоят "
"из одинаковых имен узлов и подимен в одинаковом порядке."

msgid "Abstract base class for noise generators."
msgstr "Абстрактный базовый класс для генераторов шума."

msgid ""
"This class defines the interface for noise generation libraries to inherit "
"from.\n"
"A default [method get_seamless_image] implementation is provided for "
"libraries that do not provide seamless noise. This function requests a larger "
"image from the [method get_image] method, reverses the quadrants of the "
"image, then uses the strips of extra width to blend over the seams.\n"
"Inheriting noise classes can optionally override this function to provide a "
"more optimal algorithm."
msgstr ""
"Этот класс определяет интерфейс для библиотек генерации шума, от которых "
"можно наследовать.\n"
"Реализация по умолчанию [method get_seamless_image] предоставляется для "
"библиотек, которые не предоставляют бесшовный шум. Эта функция запрашивает "
"более крупное изображение из метода [method get_image], переворачивает "
"квадранты изображения, затем использует полосы дополнительной ширины для "
"смешивания по швам.\n"
"Наследование классов шума может опционально переопределять эту функцию для "
"предоставления более оптимального алгоритма."

msgid ""
"Returns an [Image] containing 2D noise values.\n"
"[b]Note:[/b] With [param normalize] set to [code]false[/code], the default "
"implementation expects the noise generator to return values in the range "
"[code]-1.0[/code] to [code]1.0[/code]."
msgstr ""
"Возвращает [Image], содержащий значения 2D-шума.\n"
"[b]Примечание:[/b] Если [param normalize] установлен на [code]false[/code], "
"реализация по умолчанию ожидает, что генератор шума вернет значения в "
"диапазоне от [code]-1.0[/code] до [code]1.0[/code]."

msgid ""
"Returns an [Array] of [Image]s containing 3D noise values for use with "
"[method ImageTexture3D.create].\n"
"[b]Note:[/b] With [param normalize] set to [code]false[/code], the default "
"implementation expects the noise generator to return values in the range "
"[code]-1.0[/code] to [code]1.0[/code]."
msgstr ""
"Возвращает [Array] из [Image], содержащих значения 3D-шума для использования "
"с [method ImageTexture3D.create].\n"
"[b]Примечание:[/b] Если [param normalize] установлен на [code]false[/code], "
"реализация по умолчанию ожидает, что генератор шума вернет значения в "
"диапазоне от [code]-1.0[/code] до [code]1.0[/code]."

msgid "Returns the 1D noise value at the given (x) coordinate."
msgstr "Возвращает значение одномерного шума в заданной координате (x)."

msgid "Returns the 2D noise value at the given position."
msgstr "Возвращает значение 2D-шума в указанной позиции."

msgid "Returns the 3D noise value at the given position."
msgstr "Возвращает значение 3D-шума в указанной позиции."

msgid ""
"Returns an [Image] containing seamless 2D noise values.\n"
"[b]Note:[/b] With [param normalize] set to [code]false[/code], the default "
"implementation expects the noise generator to return values in the range "
"[code]-1.0[/code] to [code]1.0[/code]."
msgstr ""
"Возвращает [Image], содержащий бесшовные значения 2D-шума.\n"
"[b]Примечание:[/b] Если [param normalize] установлен на [code]false[/code], "
"реализация по умолчанию ожидает, что генератор шума вернет значения в "
"диапазоне от [code]-1.0[/code] до [code]1.0[/code]."

msgid ""
"Returns an [Array] of [Image]s containing seamless 3D noise values for use "
"with [method ImageTexture3D.create].\n"
"[b]Note:[/b] With [param normalize] set to [code]false[/code], the default "
"implementation expects the noise generator to return values in the range "
"[code]-1.0[/code] to [code]1.0[/code]."
msgstr ""
"Возвращает [Array] из [Image], содержащих бесшовные значения 3D-шума для "
"использования с [method ImageTexture3D.create].\n"
"[b]Примечание:[/b] Если [param normalize] установлен на [code]false[/code], "
"реализация по умолчанию ожидает, что генератор шума вернет значения в "
"диапазоне от [code]-1.0[/code] до [code]1.0[/code]."

msgid "A 2D texture filled with noise generated by a [Noise] object."
msgstr "2D-текстура, заполненная шумом, созданным объектом [Noise]."

msgid ""
"Uses the [FastNoiseLite] library or other noise generators to fill the "
"texture data of your desired size. [NoiseTexture2D] can also generate normal "
"map textures.\n"
"The class uses [Thread]s to generate the texture data internally, so [method "
"Texture2D.get_image] may return [code]null[/code] if the generation process "
"has not completed yet. In that case, you need to wait for the texture to be "
"generated before accessing the image and the generated byte data:\n"
"[codeblock]\n"
"var texture = NoiseTexture2D.new()\n"
"texture.noise = FastNoiseLite.new()\n"
"await texture.changed\n"
"var image = texture.get_image()\n"
"var data = image.get_data()\n"
"[/codeblock]"
msgstr ""
"Использует библиотеку [FastNoiseLite] или другие генераторы шума для "
"заполнения данных текстуры нужного вам размера. [NoiseTexture2D] также может "
"генерировать текстуры карты нормалей.\n"
"Класс использует [Thread] для внутренней генерации данных текстуры, поэтому "
"[method Texture2D.get_image] может возвращать [code]null[/code], если процесс "
"генерации еще не завершен. В этом случае вам нужно дождаться генерации "
"текстуры, прежде чем обращаться к изображению и сгенерированным байтовым "
"данным:\n"
"[codeblock]\n"
"var texture = NoiseTexture2D.new()\n"
"texture.noise = FastNoiseLite.new()\n"
"await texture.changed\n"
"var image = texture.get_image()\n"
"var data = image.get_data()\n"
"[/codeblock]"

msgid ""
"If [code]true[/code], the resulting texture contains a normal map created "
"from the original noise interpreted as a bump map."
msgstr ""
"Если [code]true[/code], результирующая текстура содержит карту нормалей, "
"созданную из исходного шума, интерпретируемого как карта рельефа."

msgid ""
"Strength of the bump maps used in this texture. A higher value will make the "
"bump maps appear larger while a lower value will make them appear softer."
msgstr ""
"Сила карт рельефа, используемых в этой текстуре. Более высокое значение "
"сделает карты рельефа больше, а более низкое значение сделает их мягче."

msgid ""
"A [Gradient] which is used to map the luminance of each pixel to a color "
"value."
msgstr ""
"[Gradient], который используется для сопоставления яркости каждого пикселя со "
"значением цвета."

msgid ""
"Determines whether mipmaps are generated for this texture. Enabling this "
"results in less texture aliasing in the distance, at the cost of increasing "
"memory usage by roughly 33% and making the noise texture generation take "
"longer.\n"
"[b]Note:[/b] [member generate_mipmaps] requires mipmap filtering to be "
"enabled on the material using the [NoiseTexture2D] to have an effect."
msgstr ""
"Определяет, генерируются ли mip-карты для этой текстуры. Включение этого "
"параметра приводит к уменьшению сглаживания текстур на расстоянии, за счет "
"увеличения использования памяти примерно на 33% и увеличения времени "
"генерации текстуры шума.\n"
"[b]Примечание:[/b] [member generate_mipmaps] требует включения фильтрации mip-"
"карт на материале с использованием [NoiseTexture2D], чтобы иметь эффект."

msgid "Height of the generated texture (in pixels)."
msgstr "Высота сгенерированной текстуры (в пикселях)."

msgid ""
"Determines whether the noise image is calculated in 3D space. May result in "
"reduced contrast."
msgstr ""
"Определяет, вычисляется ли шумовое изображение в трехмерном пространстве. "
"Может привести к снижению контрастности."

msgid ""
"If [code]true[/code], inverts the noise texture. White becomes black, black "
"becomes white."
msgstr ""
"Если [code]true[/code], инвертирует текстуру шума. Белый становится черным, "
"черный становится белым."

msgid "The instance of the [Noise] object."
msgstr "Экземпляр объекта [Noise]."

msgid ""
"If [code]true[/code], the noise image coming from the noise generator is "
"normalized to the range [code]0.0[/code] to [code]1.0[/code].\n"
"Turning normalization off can affect the contrast and allows you to generate "
"non repeating tileable noise textures."
msgstr ""
"Если [code]true[/code], шумовое изображение, поступающее от генератора шума, "
"нормализуется в диапазоне от [code]0.0[/code] до [code]1.0[/code].\n"
"Отключение нормализации может повлиять на контрастность и позволит создавать "
"неповторяющиеся мозаичные текстуры шума."

msgid ""
"If [code]true[/code], a seamless texture is requested from the [Noise] "
"resource.\n"
"[b]Note:[/b] Seamless noise textures may take longer to generate and/or can "
"have a lower contrast compared to non-seamless noise depending on the used "
"[Noise] resource. This is because some implementations use higher dimensions "
"for generating seamless noise.\n"
"[b]Note:[/b] The default [FastNoiseLite] implementation uses the fallback "
"path for seamless generation. If using a [member width] or [member height] "
"lower than the default, you may need to increase [member "
"seamless_blend_skirt] to make seamless blending more effective."
msgstr ""
"Если [code]true[/code], бесшовная текстура запрашивается из ресурса [Noise].\n"
"[b]Примечание:[/b] Бесшовные текстуры шума могут генерироваться дольше и/или "
"иметь меньшую контрастность по сравнению с небесшовным шумом в зависимости от "
"используемого ресурса [Noise]. Это связано с тем, что некоторые реализации "
"используют более высокие измерения для создания бесшовного шума.\n"
"[b]Примечание:[/b] Реализация [FastNoiseLite] по умолчанию использует "
"резервный путь для бесшовной генерации. Если использовать [member width] или "
"[member height] ниже, чем по умолчанию, вам может потребоваться увеличить "
"[member seamless_blend_skirt], чтобы сделать бесшовное смешивание более "
"эффективным."

msgid ""
"Used for the default/fallback implementation of the seamless texture "
"generation. It determines the distance over which the seams are blended. High "
"values may result in less details and contrast. See [Noise] for further "
"details.\n"
"[b]Note:[/b] If using a [member width] or [member height] lower than the "
"default, you may need to increase [member seamless_blend_skirt] to make "
"seamless blending more effective."
msgstr ""
"Используется для реализации по умолчанию/резервного варианта создания "
"бесшовной текстуры. Определяет расстояние, на котором смешиваются швы. "
"Высокие значения могут привести к снижению детализации и контрастности. "
"Дополнительные сведения см. в разделе [Noise].\n"
"[b]Примечание:[/b] Если вы используете [member width] или [member height] "
"ниже, чем по умолчанию, вам может потребоваться увеличить [member "
"seamless_blend_skirt], чтобы сделать бесшовное смешивание более эффективным."

msgid "Width of the generated texture (in pixels)."
msgstr "Ширина сгенерированной текстуры (в пикселях)."

msgid "A 3D texture filled with noise generated by a [Noise] object."
msgstr "3D-текстура, заполненная шумом, созданным объектом [Noise]."

msgid ""
"Uses the [FastNoiseLite] library or other noise generators to fill the "
"texture data of your desired size.\n"
"The class uses [Thread]s to generate the texture data internally, so [method "
"Texture3D.get_data] may return [code]null[/code] if the generation process "
"has not completed yet. In that case, you need to wait for the texture to be "
"generated before accessing the image:\n"
"[codeblock]\n"
"var texture = NoiseTexture3D.new()\n"
"texture.noise = FastNoiseLite.new()\n"
"await texture.changed\n"
"var data = texture.get_data()\n"
"[/codeblock]"
msgstr ""
"Использует библиотеку [FastNoiseLite] или другие генераторы шума для "
"заполнения данных текстуры нужного вам размера.\n"
"Класс использует [Thread] для внутренней генерации данных текстуры, поэтому "
"[method Texture3D.get_data] может вернуть [code]null[/code], если процесс "
"генерации еще не завершен. В этом случае вам нужно дождаться генерации "
"текстуры перед доступом к изображению:\n"
"[codeblock]\n"
"var texture = NoiseTexture3D.new()\n"
"texture.noise = FastNoiseLite.new()\n"
"await texture.changed\n"
"var data = texture.get_data()\n"
"[/codeblock]"

msgid "Depth of the generated texture (in pixels)."
msgstr "Глубина созданной текстуры (в пикселях)."

msgid ""
"If [code]true[/code], a seamless texture is requested from the [Noise] "
"resource.\n"
"[b]Note:[/b] Seamless noise textures may take longer to generate and/or can "
"have a lower contrast compared to non-seamless noise depending on the used "
"[Noise] resource. This is because some implementations use higher dimensions "
"for generating seamless noise.\n"
"[b]Note:[/b] The default [FastNoiseLite] implementation uses the fallback "
"path for seamless generation. If using a [member width], [member height] or "
"[member depth] lower than the default, you may need to increase [member "
"seamless_blend_skirt] to make seamless blending more effective."
msgstr ""
"Если [code]true[/code], бесшовная текстура запрашивается из ресурса [Noise].\n"
"[b]Примечание:[/b] Бесшовные текстуры шума могут генерироваться дольше и/или "
"могут иметь меньшую контрастность по сравнению с небесшовным шумом в "
"зависимости от используемого ресурса [Noise]. Это связано с тем, что "
"некоторые реализации используют более высокие измерения для создания "
"бесшовного шума.\n"
"[b]Примечание:[/b] Реализация [FastNoiseLite] по умолчанию использует "
"резервный путь для бесшовной генерации. Если использовать [member width], "
"[member height] или [member depth] ниже, чем по умолчанию, вам может "
"потребоваться увеличить [member seamless_blend_skirt], чтобы сделать "
"бесшовное смешивание более эффективным."

msgid ""
"Used for the default/fallback implementation of the seamless texture "
"generation. It determines the distance over which the seams are blended. High "
"values may result in less details and contrast. See [Noise] for further "
"details.\n"
"[b]Note:[/b] If using a [member width], [member height] or [member depth] "
"lower than the default, you may need to increase [member "
"seamless_blend_skirt] to make seamless blending more effective."
msgstr ""
"Используется для реализации по умолчанию/резервного варианта создания "
"бесшовной текстуры. Определяет расстояние, на котором смешиваются швы. "
"Высокие значения могут привести к снижению детализации и контрастности. "
"Дополнительные сведения см. в разделе [Noise].\n"
"[b]Примечание:[/b] Если вы используете [member width], [member height] или "
"[member depth] ниже, чем по умолчанию, вам может потребоваться увеличить "
"[member seamless_blend_skirt], чтобы сделать бесшовное смешивание более "
"эффективным."

msgid "Base class for all other classes in the engine."
msgstr "Базовый класс для всех остальных классов в движке."

msgid ""
"An advanced [Variant] type. All classes in the engine inherit from Object. "
"Each class may define new properties, methods or signals, which are available "
"to all inheriting classes. For example, a [Sprite2D] instance is able to call "
"[method Node.add_child] because it inherits from [Node].\n"
"You can create new instances, using [code]Object.new()[/code] in GDScript, or "
"[code]new GodotObject[/code] in C#.\n"
"To delete an Object instance, call [method free]. This is necessary for most "
"classes inheriting Object, because they do not manage memory on their own, "
"and will otherwise cause memory leaks when no longer in use. There are a few "
"classes that perform memory management. For example, [RefCounted] (and by "
"extension [Resource]) deletes itself when no longer referenced, and [Node] "
"deletes its children when freed.\n"
"Objects can have a [Script] attached to them. Once the [Script] is "
"instantiated, it effectively acts as an extension to the base class, allowing "
"it to define and inherit new properties, methods and signals.\n"
"Inside a [Script], [method _get_property_list] may be overridden to customize "
"properties in several ways. This allows them to be available to the editor, "
"display as lists of options, sub-divide into groups, save on disk, etc. "
"Scripting languages offer easier ways to customize properties, such as with "
"the [annotation @GDScript.@export] annotation.\n"
"Godot is very dynamic. An object's script, and therefore its properties, "
"methods and signals, can be changed at run-time. Because of this, there can "
"be occasions where, for example, a property required by a method may not "
"exist. To prevent run-time errors, see methods such as [method set], [method "
"get], [method call], [method has_method], [method has_signal], etc. Note that "
"these methods are [b]much[/b] slower than direct references.\n"
"In GDScript, you can also check if a given property, method, or signal name "
"exists in an object with the [code]in[/code] operator:\n"
"[codeblock]\n"
"var node = Node.new()\n"
"print(\"name\" in node)         # Prints true\n"
"print(\"get_parent\" in node)   # Prints true\n"
"print(\"tree_entered\" in node) # Prints true\n"
"print(\"unknown\" in node)      # Prints false\n"
"[/codeblock]\n"
"Notifications are [int] constants commonly sent and received by objects. For "
"example, on every rendered frame, the [SceneTree] notifies nodes inside the "
"tree with a [constant Node.NOTIFICATION_PROCESS]. The nodes receive it and "
"may call [method Node._process] to update. To make use of notifications, see "
"[method notification] and [method _notification].\n"
"Lastly, every object can also contain metadata (data about data). [method "
"set_meta] can be useful to store information that the object itself does not "
"depend on. To keep your code clean, making excessive use of metadata is "
"discouraged.\n"
"[b]Note:[/b] Unlike references to a [RefCounted], references to an object "
"stored in a variable can become invalid without being set to [code]null[/"
"code]. To check if an object has been deleted, do [i]not[/i] compare it "
"against [code]null[/code]. Instead, use [method "
"@GlobalScope.is_instance_valid]. It's also recommended to inherit from "
"[RefCounted] for classes storing data instead of [Object].\n"
"[b]Note:[/b] The [code]script[/code] is not exposed like most properties. To "
"set or get an object's [Script] in code, use [method set_script] and [method "
"get_script], respectively.\n"
"[b]Note:[/b] In a boolean context, an [Object] will evaluate to [code]false[/"
"code] if it is equal to [code]null[/code] or it has been freed. Otherwise, an "
"[Object] will always evaluate to [code]true[/code]. See also [method "
"@GlobalScope.is_instance_valid]."
msgstr ""
"Расширенный тип [Variant]. Все классы в движке наследуются от Object. Каждый "
"класс может определять новые свойства, методы или сигналы, которые доступны "
"всем наследующим классам. Например, экземпляр [Sprite2D] может вызывать "
"[method Node.add_child], поскольку он наследуется от [Node].\n"
"Вы можете создавать новые экземпляры, используя [code]Object.new()[/code] в "
"GDScript или [code]new GodotObject[/code] в C#.\n"
"Чтобы удалить экземпляр Object, вызовите [method free]. Это необходимо для "
"большинства классов, наследующих Object, поскольку они не управляют памятью "
"самостоятельно и в противном случае вызовут утечки памяти, если больше не "
"используются. Есть несколько классов, которые выполняют управление памятью. "
"Например, [RefCounted] (и, соответственно, [Resource]) удаляет себя, когда на "
"него больше не ссылаются, а [Node] удаляет своих дочерних элементов при "
"освобождении.\n"
"К объектам может быть прикреплен [Script]. После создания экземпляра [Script] "
"он фактически действует как расширение базового класса, позволяя ему "
"определять и наследовать новые свойства, методы и сигналы.\n"
"Внутри [Script] [method _get_property_list] может быть переопределен для "
"настройки свойств несколькими способами. Это позволяет им быть доступными для "
"редактора, отображаться в виде списков параметров, подразделяться на группы, "
"сохранять на диске и т. д. Скриптовые языки предлагают более простые способы "
"настройки свойств, например, с помощью аннотации [annotation "
"@GDScript.@export].\n"
"Godot очень динамичен. Скрипт объекта, а следовательно, и его свойства, "
"методы и сигналы, могут быть изменены во время выполнения. Из-за этого могут "
"быть случаи, когда, например, свойство, требуемое методом, может не "
"существовать. Чтобы предотвратить ошибки времени выполнения, см. такие "
"методы, как [method set], [method get], [method call], [method has_method], "
"[method has_signal] и т. д. Обратите внимание, что эти методы [b]намного[/b] "
"медленнее прямых ссылок.\n"
"В GDScript вы также можете проверить, существует ли заданное свойство, метод "
"или имя сигнала в объекте с помощью оператора [code]in[/code]:\n"
"[codeblock]\n"
"var node = Node.new()\n"
"print(\"name\" in node)         # Выводит true\n"
"print(\"get_parent\" in node)   # Выводит true\n"
"print(\"tree_entered\" in node) # Выводит true\n"
"print(\"unknown\" in node)      # Выводит false\n"
"[/codeblock]\n"
"Уведомления — это константы [int], которые обычно отправляются и принимаются "
"объектами. Например, на каждом отрисованном кадре [SceneTree] уведомляет узлы "
"внутри дерева с помощью [constant Node.NOTIFICATION_PROCESS]. Узлы получают "
"его и могут вызывать [method Node._process] для обновления. Чтобы "
"использовать уведомления, см. [method notification] и [method "
"_notification].\n"
"Наконец, каждый объект также может содержать метаданные (данные о данных). "
"[method set_meta] может быть полезен для хранения информации, от которой сам "
"объект не зависит. Чтобы сохранить чистоту кода, не рекомендуется чрезмерно "
"использовать метаданные.\n"
"[b]Примечание:[/b] В отличие от ссылок на [RefCounted], ссылки на объект, "
"хранящийся в переменной, могут стать недействительными, не будучи "
"установленными в [code]null[/code]. Чтобы проверить, был ли объект удален, "
"[i]не[/i] сравнивайте его с [code]null[/code]. Вместо этого используйте "
"[method @GlobalScope.is_instance_valid]. Также рекомендуется наследовать от "
"[RefCounted] для классов, хранящих данные вместо [Object].\n"
"[b]Примечание:[/b] [code]script[/code] не отображается, как большинство "
"свойств. Чтобы задать или получить [Script] объекта в коде, используйте "
"[method set_script] и [method get_script] соответственно.\n"
"[b]Примечание:[/b] В булевом контексте [Object] будет оцениваться как "
"[code]false[/code], если он равен [code]null[/code] или был освобожден. В "
"противном случае [Object] всегда будет оцениваться как [code]true[/code]. См. "
"также [method @GlobalScope.is_instance_valid]."

msgid "Object class introduction"
msgstr "Введение класса объекта"

msgid "When and how to avoid using nodes for everything"
msgstr "Когда и как избегать использования узлов для всего"

msgid "Object notifications"
msgstr "Уведомления объекта"

msgid ""
"Override this method to customize the behavior of [method get]. Should return "
"the given [param property]'s value, or [code]null[/code] if the [param "
"property] should be handled normally.\n"
"Combined with [method _set] and [method _get_property_list], this method "
"allows defining custom properties, which is particularly useful for editor "
"plugins.\n"
"[b]Note:[/b] This method is not called when getting built-in properties of an "
"object, including properties defined with [annotation @GDScript.@export].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get(property):\n"
"\tif property == \"fake_property\":\n"
"\t\tprint(\"Getting my property!\")\n"
"\t\treturn 4\n"
"\n"
"func _get_property_list():\n"
"\treturn [\n"
"\t\t{ \"name\": \"fake_property\", \"type\": TYPE_INT }\n"
"\t]\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Variant _Get(StringName property)\n"
"{\n"
"\tif (property == \"FakeProperty\")\n"
"\t{\n"
"\t\tGD.Print(\"Getting my property!\");\n"
"\t\treturn 4;\n"
"\t}\n"
"\treturn default;\n"
"}\n"
"\n"
"public override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"{\n"
"\treturn\n"
"\t[\n"
"\t\tnew Godot.Collections.Dictionary()\n"
"\t\t{\n"
"\t\t\t{ \"name\", \"FakeProperty\" },\n"
"\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t},\n"
"\t];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Переопределите этот метод, чтобы настроить поведение метода [method get]. "
"Должен возвращать значение заданного [param property] или [code]null[/code], "
"если [param property] должно обрабатываться обычным образом.\n"
"В сочетании с [method _set] и [method _get_property_list] этот метод "
"позволяет определять пользовательские свойства, что особенно полезно для "
"плагинов редактора.\n"
"[b]Примечание:[/b] Этот метод не вызывается при получении встроенных свойств "
"объекта, включая свойства, определённые с помощью [annotation "
"@GDScript.@export].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _get(property):\n"
"\tif property == \"fake_property\":\n"
"\t\tprint(\"Получаю свое свойство!\")\n"
"\t\treturn 4\n"
"\n"
"func _get_property_list():\n"
"\treturn [\n"
"\t\t{ \"name\": \"fake_property\", \"type\": TYPE_INT }\n"
"\t]\n"
"[/gdscript]\n"
"[csharp]\n"
"public override Variant _Get(StringName property)\n"
"{\n"
"\tif (property == \"FakeProperty\")\n"
"\t{\n"
"\t\tGD.Print(\"Получаю свое свойство!\");\n"
"\t\treturn 4;\n"
"\t}\n"
"\treturn default;\n"
"}\n"
"\n"
"public override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"{\n"
"\treturn\n"
"\t[\n"
"\t\tnew Godot.Collections.Dictionary()\n"
"\t\t{\n"
"\t\t\t{ \"name\", \"FakeProperty\" },\n"
"\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t},\n"
"\t];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Override this method to provide a custom list of additional properties to "
"handle by the engine.\n"
"Should return a property list, as an [Array] of dictionaries. The result is "
"added to the array of [method get_property_list], and should be formatted in "
"the same way. Each [Dictionary] must at least contain the [code]name[/code] "
"and [code]type[/code] entries.\n"
"You can use [method _property_can_revert] and [method _property_get_revert] "
"to customize the default values of the properties added by this method.\n"
"The example below displays a list of numbers shown as words going from "
"[code]ZERO[/code] to [code]FIVE[/code], with [code]number_count[/code] "
"controlling the size of the list:\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends Node\n"
"\n"
"@export var number_count = 3:\n"
"\tset(nc):\n"
"\t\tnumber_count = nc\n"
"\t\tnumbers.resize(number_count)\n"
"\t\tnotify_property_list_changed()\n"
"\n"
"var numbers = PackedInt32Array([0, 0, 0])\n"
"\n"
"func _get_property_list():\n"
"\tvar properties = []\n"
"\n"
"\tfor i in range(number_count):\n"
"\t\tproperties.append({\n"
"\t\t\t\"name\": \"number_%d\" % i,\n"
"\t\t\t\"type\": TYPE_INT,\n"
"\t\t\t\"hint\": PROPERTY_HINT_ENUM,\n"
"\t\t\t\"hint_string\": \"ZERO,ONE,TWO,THREE,FOUR,FIVE\",\n"
"\t\t})\n"
"\n"
"\treturn properties\n"
"\n"
"func _get(property):\n"
"\tif property.begins_with(\"number_\"):\n"
"\t\tvar index = property.get_slice(\"_\", 1).to_int()\n"
"\t\treturn numbers[index]\n"
"\n"
"func _set(property, value):\n"
"\tif property.begins_with(\"number_\"):\n"
"\t\tvar index = property.get_slice(\"_\", 1).to_int()\n"
"\t\tnumbers[index] = value\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"[Tool]\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate int _numberCount;\n"
"\n"
"\t[Export]\n"
"\tpublic int NumberCount\n"
"\t{\n"
"\t\tget => _numberCount;\n"
"\t\tset\n"
"\t\t{\n"
"\t\t\t_numberCount = value;\n"
"\t\t\t_numbers.Resize(_numberCount);\n"
"\t\t\tNotifyPropertyListChanged();\n"
"\t\t}\n"
"\t}\n"
"\n"
"\tprivate Godot.Collections.Array<int> _numbers = [];\n"
"\n"
"\tpublic override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"\t{\n"
"\t\tGodot.Collections.Array<Godot.Collections.Dictionary> properties = [];\n"
"\n"
"\t\tfor (int i = 0; i < _numberCount; i++)\n"
"\t\t{\n"
"\t\t\tproperties.Add(new Godot.Collections.Dictionary()\n"
"\t\t\t{\n"
"\t\t\t\t{ \"name\", $\"number_{i}\" },\n"
"\t\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t\t\t{ \"hint\", (int)PropertyHint.Enum },\n"
"\t\t\t\t{ \"hint_string\", \"Zero,One,Two,Three,Four,Five\" },\n"
"\t\t\t});\n"
"\t\t}\n"
"\n"
"\t\treturn properties;\n"
"\t}\n"
"\n"
"\tpublic override Variant _Get(StringName property)\n"
"\t{\n"
"\t\tstring propertyName = property.ToString();\n"
"\t\tif (propertyName.StartsWith(\"number_\"))\n"
"\t\t{\n"
"\t\t\tint index = int.Parse(propertyName.Substring(\"number_\".Length));\n"
"\t\t\treturn _numbers[index];\n"
"\t\t}\n"
"\t\treturn default;\n"
"\t}\n"
"\n"
"\tpublic override bool _Set(StringName property, Variant value)\n"
"\t{\n"
"\t\tstring propertyName = property.ToString();\n"
"\t\tif (propertyName.StartsWith(\"number_\"))\n"
"\t\t{\n"
"\t\t\tint index = int.Parse(propertyName.Substring(\"number_\".Length));\n"
"\t\t\t_numbers[index] = value.As<int>();\n"
"\t\t\treturn true;\n"
"\t\t}\n"
"\t\treturn false;\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method is intended for advanced purposes. For most common "
"use cases, the scripting languages offer easier ways to handle properties. "
"See [annotation @GDScript.@export], [annotation @GDScript.@export_enum], "
"[annotation @GDScript.@export_group], etc. If you want to customize exported "
"properties, use [method _validate_property].\n"
"[b]Note:[/b] If the object's script is not [annotation @GDScript.@tool], this "
"method will not be called in the editor."
msgstr ""
"Переопределите этот метод, чтобы предоставить пользовательский список "
"дополнительных свойств для обработки движком.\n"
"Должен возвращать список свойств как [Array] словарей. Результат добавляется "
"в массив [method get_property_list] и должен быть отформатирован таким же "
"образом. Каждый [Dictionary] должен содержать как минимум записи [code]name[/"
"code] и [code]type[/code].\n"
"Вы можете использовать [method _property_can_revert] и [method "
"_property_get_revert] для настройки значений по умолчанию свойств, "
"добавленных этим методом.\n"
"В примере ниже отображается список чисел, показанных как слова, от "
"[code]ZERO[/code] до [code]FIVE[/code], при этом [code]number_count[/code] "
"управляет размером списка:\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends Node\n"
"\n"
"@export var number_count = 3:\n"
"\tset(nc):\n"
"\t\tnumber_count = nc\n"
"\t\tnumbers.resize(number_count)\n"
"\t\tnotify_property_list_changed()\n"
"\n"
"var numbers = PackedInt32Array([0, 0, 0])\n"
"\n"
"func _get_property_list():\n"
"\tvar properties = []\n"
"\n"
"\tfor i in range(number_count):\n"
"\t\tproperties.append({\n"
"\t\t\t\"name\": \"number_%d\" % i,\n"
"\t\t\t\"type\": TYPE_INT,\n"
"\t\t\t\"hint\": PROPERTY_HINT_ENUM,\n"
"\t\t\t\"hint_string\": \"ZERO,ONE,TWO,THREE,FOUR,FIVE\",\n"
"\t\t})\n"
"\n"
"\treturn properties\n"
"\n"
"func _get(property):\n"
"\tif property.begins_with(\"number_\"):\n"
"\t\tvar index = property.get_slice(\"_\", 1).to_int()\n"
"\t\treturn numbers[index]\n"
"\n"
"func _set(property, value):\n"
"\tif property.begins_with(\"number_\"):\n"
"\t\tvar index = property.get_slice(\"_\", 1).to_int()\n"
"\t\tnumbers[index] = value\n"
"\t\treturn true\n"
"\treturn false\n"
"[/gdscript]\n"
"[csharp]\n"
"[Tool]\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate int _numberCount;\n"
"\n"
"\t[Export]\n"
"\tpublic int NumberCount\n"
"\t{\n"
"\t\tget => _numberCount;\n"
"\t\tset\n"
"\t\t{\n"
"\t\t\t_numberCount = value;\n"
"\t\t\t_numbers.Resize(_numberCount);\n"
"\t\t\tNotifyPropertyListChanged();\n"
"\t\t}\n"
"\t}\n"
"\n"
"\tprivate Godot.Collections.Array<int> _numbers = [];\n"
"\n"
"\tpublic override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"\t{\n"
"\t\tGodot.Collections.Array<Godot.Collections.Dictionary> properties = [];\n"
"\n"
"\t\tfor (int i = 0; i < _numberCount; i++)\n"
"\t\t{\n"
"\t\t\tproperties.Add(new Godot.Collections.Dictionary()\n"
"\t\t\t{\n"
"\t\t\t\t{ \"name\", $\"number_{i}\" },\n"
"\t\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t\t\t{ \"hint\", (int)PropertyHint.Enum },\n"
"\t\t\t\t{ \"hint_string\", \"Zero,One,Two,Three,Four,Five\" },\n"
"\t\t\t});\n"
"\t\t}\n"
"\n"
"\t\treturn properties;\n"
"\t}\n"
"\n"
"\tpublic override Variant _Get(StringName property)\n"
"\t{\n"
"\t\tstring propertyName = property.ToString();\n"
"\t\tif (propertyName.StartsWith(\"number_\"))\n"
"\t\t{\n"
"\t\t\tint index = int.Parse(propertyName.Substring(\"number_\".Length));\n"
"\t\t\treturn _numbers[index];\n"
"\t\t}\n"
"\t\treturn default;\n"
"\t}\n"
"\n"
"\tpublic override bool _Set(StringName property, Variant value)\n"
"\t{\n"
"\t\tstring propertyName = property.ToString();\n"
"\t\tif (propertyName.StartsWith(\"number_\"))\n"
"\t\t{\n"
"\t\t\tint index = int.Parse(propertyName.Substring(\"number_\".Length));\n"
"\t\t\t_numbers[index] = value.As<int>();\n"
"\t\t\treturn true;\n"
"\t\t}\n"
"\t\treturn false;\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Этот метод предназначен для расширенных целей. Для "
"большинства общих случаев использования языки сценариев предлагают более "
"простые способы обработки свойств. См. [annotation @GDScript.@export], "
"[annotation @GDScript.@export_enum], [annotation @GDScript.@export_group] и "
"т. д. Если вы хотите настроить экспортируемые свойства, используйте [method "
"_validate_property].\n"
"[b]Примечание:[/b] Если скрипт объекта не является [annotation "
"@GDScript.@tool], этот метод не будет вызван в редакторе."

msgid ""
"Called when the object's script is instantiated, oftentimes after the object "
"is initialized in memory (through [code]Object.new()[/code] in GDScript, or "
"[code]new GodotObject[/code] in C#). It can be also defined to take in "
"parameters. This method is similar to a constructor in most programming "
"languages.\n"
"[b]Note:[/b] If [method _init] is defined with [i]required[/i] parameters, "
"the Object with script may only be created directly. If any other means (such "
"as [method PackedScene.instantiate] or [method Node.duplicate]) are used, the "
"script's initialization will fail."
msgstr ""
"Вызывается при создании экземпляра скрипта объекта, часто после инициализации "
"объекта в памяти (через [code]Object.new()[/code] в GDScript или [code]new "
"GodotObject[/code] в C#). Он также может быть определен для приема "
"параметров. Этот метод похож на конструктор в большинстве языков "
"программирования.\n"
"[b]Примечание:[/b] Если [method _init] определен с [i]обязательными[/i] "
"параметрами, объект со скриптом может быть создан только напрямую. Если "
"используются любые другие средства (например, [method "
"PackedScene.instantiate] или [method Node.duplicate]), инициализация скрипта "
"завершится ошибкой."

msgid ""
"Returns the current iterable value. [param iter] stores the iteration state, "
"but unlike [method _iter_init] and [method _iter_next] the state is supposed "
"to be read-only, so there is no [Array] wrapper.\n"
"[b]Tip:[/b] In GDScript, you can use a subtype of [Variant] as the return "
"type for [method _iter_get]. The specified type will be used to set the type "
"of the iterator variable in [code]for[/code] loops, enhancing type safety."
msgstr ""
"Возвращает текущее итерируемое значение. [param iter] сохраняет состояние "
"итерации, но в отличие от [method _iter_init] и [method _iter_next] состояние "
"должно быть доступно только для чтения, поэтому нет оболочки [Array].\n"
"[b]Совет:[/b] В GDScript вы можете использовать подтип [Variant] в качестве "
"возвращаемого типа для [method _iter_get]. Указанный тип будет использоваться "
"для установки типа переменной итератора в циклах [code]for[/code], что "
"повышает безопасность типов."

msgid ""
"Initializes the iterator. [param iter] stores the iteration state. Since "
"GDScript does not support passing arguments by reference, a single-element "
"array is used as a wrapper. Returns [code]true[/code] so long as the iterator "
"has not reached the end.\n"
"[codeblock]\n"
"class MyRange:\n"
"\tvar _from\n"
"\tvar _to\n"
"\n"
"\tfunc _init(from, to):\n"
"\t\tassert(from <= to)\n"
"\t\t_from = from\n"
"\t\t_to = to\n"
"\n"
"\tfunc _iter_init(iter):\n"
"\t\titer[0] = _from\n"
"\t\treturn iter[0] < _to\n"
"\n"
"\tfunc _iter_next(iter):\n"
"\t\titer[0] += 1\n"
"\t\treturn iter[0] < _to\n"
"\n"
"\tfunc _iter_get(iter):\n"
"\t\treturn iter\n"
"\n"
"func _ready():\n"
"\tvar my_range = MyRange.new(2, 5)\n"
"\tfor x in my_range:\n"
"\t\tprint(x) # Prints 2, 3, 4.\n"
"[/codeblock]\n"
"[b]Note:[/b] Alternatively, you can ignore [param iter] and use the object's "
"state instead, see [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_advanced.html#custom-iterators]online docs[/url] for an example. "
"Note that in this case you will not be able to reuse the same iterator "
"instance in nested loops. Also, make sure you reset the iterator state in "
"this method if you want to reuse the same instance multiple times."
msgstr ""
"Инициализирует итератор. [param iter] сохраняет состояние итерации. Поскольку "
"GDScript не поддерживает передачу аргументов по ссылке, в качестве оболочки "
"используется одноэлементный массив. Возвращает [code]true[/code] до тех пор, "
"пока итератор не достигнет конца.\n"
"[codeblock]\n"
"class MyRange:\n"
"\tvar _from\n"
"\tvar _to\n"
"\n"
"\tfunc _init(from, to):\n"
"\t\tassert(from <= to)\n"
"\t\t_from = from\n"
"\t\t_to = to\n"
"\n"
"\tfunc _iter_init(iter):\n"
"\t\titer[0] = _from\n"
"\t\treturn iter[0] < _to\n"
"\n"
"\tfunc _iter_next(iter):\n"
"\t\titer[0] += 1\n"
"\t\treturn iter[0] < _to\n"
"\n"
"\tfunc _iter_get(iter):\n"
"\t\treturn iter\n"
"\n"
"func _ready():\n"
"\tvar my_range = MyRange.new(2, 5)\n"
"\tfor x in my_range:\n"
"\t\tprint(x) # Выводит 2, 3, 4.\n"
"[/codeblock]\n"
"[b]Примечание:[/b] В качестве альтернативы вы можете игнорировать [param "
"iter] и вместо этого использовать состояние объекта, см. [url=$DOCS_URL/"
"tutorials/scripting/gdscript/gdscript_advanced.html#custom-iterators]online "
"docs[/url] для примера. Обратите внимание, что в этом случае вы не сможете "
"повторно использовать один и тот же экземпляр итератора во вложенных циклах. "
"Кроме того, убедитесь, что вы сбросили состояние итератора в этом методе, "
"если вы хотите повторно использовать один и тот же экземпляр несколько раз."

msgid ""
"Moves the iterator to the next iteration. [param iter] stores the iteration "
"state. Since GDScript does not support passing arguments by reference, a "
"single-element array is used as a wrapper. Returns [code]true[/code] so long "
"as the iterator has not reached the end."
msgstr ""
"Перемещает итератор на следующую итерацию. [param iter] сохраняет состояние "
"итерации. Поскольку GDScript не поддерживает передачу аргументов по ссылке, в "
"качестве оболочки используется одноэлементный массив. Возвращает [code]true[/"
"code] до тех пор, пока итератор не достигнет конца."

msgid ""
"Called when the object receives a notification, which can be identified in "
"[param what] by comparing it with a constant. See also [method "
"notification].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_PREDELETE:\n"
"\t\tprint(\"Goodbye!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Notification(int what)\n"
"{\n"
"\tif (what == NotificationPredelete)\n"
"\t{\n"
"\t\tGD.Print(\"Goodbye!\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] The base [Object] defines a few notifications ([constant "
"NOTIFICATION_POSTINITIALIZE] and [constant NOTIFICATION_PREDELETE]). "
"Inheriting classes such as [Node] define a lot more notifications, which are "
"also received by this method.\n"
"[b]Note:[/b] Unlike other virtual methods, this method is called "
"automatically for every script that overrides it. This means that the base "
"implementation should not be called via [code]super[/code] in GDScript or its "
"equivalents in other languages."
msgstr ""
"Вызывается, когда объект получает уведомление, которое можно определить в "
"[param what], сравнив его с константой. См. также [method notification].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _notification(what):\n"
"\tif what == NOTIFICATION_PREDELETE:\n"
"\t\tprint(\"До свидания!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Notification(int what)\n"
"{\n"
"\tif (what == NotificationPredelete)\n"
"\t{\n"
"\t\tGD.Print(\"До свидания!\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Базовый [Object] определяет несколько уведомлений "
"([constant NOTIFICATION_POSTINITIALIZE] и [constant NOTIFICATION_PREDELETE]). "
"Наследуемые классы, такие как [Node], определяют гораздо больше уведомлений, "
"которые также принимаются этим методом.\n"
"[b]Примечание:[/b] В отличие от других виртуальных методов, этот метод "
"вызывается автоматически для каждого скрипта, который его переопределяет. Это "
"означает, что базовую реализацию не следует вызывать через [code]super[/code] "
"в GDScript или его эквиваленты в других языках."

msgid ""
"Override this method to customize the given [param property]'s revert "
"behavior. Should return [code]true[/code] if the [param property] has a "
"custom default value and is revertible in the Inspector dock. Use [method "
"_property_get_revert] to specify the [param property]'s default value.\n"
"[b]Note:[/b] This method must return consistently, regardless of the current "
"value of the [param property]."
msgstr ""
"Переопределите этот метод, чтобы настроить поведение возврата заданного "
"[param property]. Должен возвращать [code]true[/code], если [param property] "
"имеет пользовательское значение по умолчанию и может быть возвращен в доке "
"Inspector. Используйте [method _property_get_revert], чтобы указать значение "
"по умолчанию [param property].\n"
"[b]Примечание:[/b] Этот метод должен возвращать согласованно, независимо от "
"текущего значения [param property]."

msgid ""
"Override this method to customize the given [param property]'s revert "
"behavior. Should return the default value for the [param property]. If the "
"default value differs from the [param property]'s current value, a revert "
"icon is displayed in the Inspector dock.\n"
"[b]Note:[/b] [method _property_can_revert] must also be overridden for this "
"method to be called."
msgstr ""
"Переопределите этот метод, чтобы настроить поведение возврата указанного "
"[param property]. Должен возвращать значение по умолчанию для [param "
"property]. Если значение по умолчанию отличается от текущего значения [param "
"property], в доке инспектора отображается значок возврата.\n"
"[b]Примечание:[/b] [method _property_can_revert] также должен быть "
"переопределен для вызова этого метода."

msgid ""
"Override this method to customize the behavior of [method set]. Should set "
"the [param property] to [param value] and return [code]true[/code], or "
"[code]false[/code] if the [param property] should be handled normally. The "
"[i]exact[/i] way to set the [param property] is up to this method's "
"implementation.\n"
"Combined with [method _get] and [method _get_property_list], this method "
"allows defining custom properties, which is particularly useful for editor "
"plugins.\n"
"[b]Note:[/b] This method is not called when setting built-in properties of an "
"object, including properties defined with [annotation @GDScript.@export].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var internal_data = {}\n"
"\n"
"func _set(property, value):\n"
"\tif property == \"fake_property\":\n"
"\t\t# Storing the value in the fake property.\n"
"\t\tinternal_data[\"fake_property\"] = value\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _get_property_list():\n"
"\treturn [\n"
"\t\t{ \"name\": \"fake_property\", \"type\": TYPE_INT }\n"
"\t]\n"
"[/gdscript]\n"
"[csharp]\n"
"private Godot.Collections.Dictionary _internalData = new "
"Godot.Collections.Dictionary();\n"
"\n"
"public override bool _Set(StringName property, Variant value)\n"
"{\n"
"\tif (property == \"FakeProperty\")\n"
"\t{\n"
"\t\t// Storing the value in the fake property.\n"
"\t\t_internalData[\"FakeProperty\"] = value;\n"
"\t\treturn true;\n"
"\t}\n"
"\n"
"\treturn false;\n"
"}\n"
"\n"
"public override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"{\n"
"\treturn\n"
"\t[\n"
"\t\tnew Godot.Collections.Dictionary()\n"
"\t\t{\n"
"\t\t\t{ \"name\", \"FakeProperty\" },\n"
"\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t},\n"
"\t];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Переопределите этот метод, чтобы настроить поведение [method set]. Необходимо "
"установить [param property] в [param value] и вернуть [code]true[/code] или "
"[code]false[/code], если [param property] должно обрабатываться как обычно. "
"[i]Точный[/i] способ установки [param property] зависит от реализации этого "
"метода.\n"
"В сочетании с [method _get] и [method _get_property_list] этот метод "
"позволяет определять пользовательские свойства, что особенно полезно для "
"плагинов редактора.\n"
"[b]Примечание:[/b] Этот метод не вызывается при установке встроенных свойств "
"объекта, включая свойства, определённые с помощью [annotation "
"@GDScript.@export].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var internal_data = {}\n"
"\n"
"func _set(property, value):\n"
"\tif property == \"fake_property\":\n"
"\t\t# Сохранение значения в fake property.\n"
"\t\tinternal_data[\"fake_property\"] = value\n"
"\t\treturn true\n"
"\treturn false\n"
"\n"
"func _get_property_list():\n"
"\treturn [\n"
"\t\t{ \"name\": \"fake_property\", \"type\": TYPE_INT }\n"
"\t]\n"
"[/gdscript]\n"
"[csharp]\n"
"private Godot.Collections.Dictionary _internalData = new "
"Godot.Collections.Dictionary();\n"
"\n"
"public override bool _Set(StringName property, Variant value)\n"
"{\n"
"\tif (property == \"FakeProperty\")\n"
"\t{\n"
"\t\t// Сохранение значения в fake property.\n"
"\t\t_internalData[\"FakeProperty\"] = value;\n"
"\t\treturn true;\n"
"\t}\n"
"\n"
"\treturn false;\n"
"}\n"
"\n"
"public override Godot.Collections.Array<Godot.Collections.Dictionary> "
"_GetPropertyList()\n"
"{\n"
"\treturn\n"
"\t[\n"
"\t\tnew Godot.Collections.Dictionary()\n"
"\t\t{\n"
"\t\t\t{ \"name\", \"FakeProperty\" },\n"
"\t\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t\t},\n"
"\t];\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Override this method to customize the return value of [method to_string], and "
"therefore the object's representation as a [String].\n"
"[codeblock]\n"
"func _to_string():\n"
"\treturn \"Welcome to Godot 4!\"\n"
"\n"
"func _init():\n"
"\tprint(self)       # Prints \"Welcome to Godot 4!\"\n"
"\tvar a = str(self) # a is \"Welcome to Godot 4!\"\n"
"[/codeblock]"
msgstr ""
"Переопределите этот метод, чтобы настроить возвращаемое значение метода "
"[method to_string] и, следовательно, представление объекта как [String].\n"
"[codeblock]\n"
"func _to_string():\n"
"\treturn \"Welcome to Godot 4!\"\n"
"\n"
"func _init():\n"
"\tprint(self)       # Выводит \"Welcome to Godot 4!\"\n"
"\tvar a = str(self) # a это \"Welcome to Godot 4!\"\n"
"[/codeblock]"

msgid ""
"Override this method to customize existing properties. Every property info "
"goes through this method, except properties added with [method "
"_get_property_list]. The dictionary contents is the same as in [method "
"_get_property_list].\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends Node\n"
"\n"
"@export var is_number_editable: bool:\n"
"\tset(value):\n"
"\t\tis_number_editable = value\n"
"\t\tnotify_property_list_changed()\n"
"@export var number: int\n"
"\n"
"func _validate_property(property: Dictionary):\n"
"\tif property.name == \"number\" and not is_number_editable:\n"
"\t\tproperty.usage |= PROPERTY_USAGE_READ_ONLY\n"
"[/gdscript]\n"
"[csharp]\n"
"[Tool]\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate bool _isNumberEditable;\n"
"\n"
"\t[Export]\n"
"\tpublic bool IsNumberEditable\n"
"\t{\n"
"\t\tget => _isNumberEditable;\n"
"\t\tset\n"
"\t\t{\n"
"\t\t\t_isNumberEditable = value;\n"
"\t\t\tNotifyPropertyListChanged();\n"
"\t\t}\n"
"\t}\n"
"\n"
"\t[Export]\n"
"\tpublic int Number { get; set; }\n"
"\n"
"\tpublic override void _ValidateProperty(Godot.Collections.Dictionary "
"property)\n"
"\t{\n"
"\t\tif (property[\"name\"].AsStringName() == PropertyName.Number && !"
"IsNumberEditable)\n"
"\t\t{\n"
"\t\t\tvar usage = property[\"usage\"].As<PropertyUsageFlags>() | "
"PropertyUsageFlags.ReadOnly;\n"
"\t\t\tproperty[\"usage\"] = (int)usage;\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Переопределите этот метод, чтобы настроить существующие свойства. Каждая "
"информация о свойствах проходит через этот метод, за исключением свойств, "
"добавленных с помощью [method _get_property_list]. Содержимое словаря такое "
"же, как в [method _get_property_list].\n"
"[codeblocks]\n"
"[gdscript]\n"
"@tool\n"
"extends Node\n"
"\n"
"@export var is_number_editable: bool:\n"
"\tset(value):\n"
"\t\tis_number_editable = value\n"
"\t\tnotify_property_list_changed()\n"
"@export var number: int\n"
"\n"
"func _validate_property(property: Dictionary):\n"
"\tif property.name == \"number\" and not is_number_editable:\n"
"\t\tproperty.usage |= PROPERTY_USAGE_READ_ONLY\n"
"[/gdscript]\n"
"[csharp]\n"
"[Tool]\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate bool _isNumberEditable;\n"
"\n"
"\t[Export]\n"
"\tpublic bool IsNumberEditable\n"
"\t{\n"
"\t\tget => _isNumberEditable;\n"
"\t\tset\n"
"\t\t{\n"
"\t\t\t_isNumberEditable = value;\n"
"\t\t\tNotifyPropertyListChanged();\n"
"\t\t}\n"
"\t}\n"
"\n"
"\t[Export]\n"
"\tpublic int Number { get; set; }\n"
"\n"
"\tpublic override void _ValidateProperty(Godot.Collections.Dictionary "
"property)\n"
"\t{\n"
"\t\tif (property[\"name\"].AsStringName() == PropertyName.Number && !"
"IsNumberEditable)\n"
"\t\t{\n"
"\t\t\tvar usage = property[\"usage\"].As<PropertyUsageFlags>() | "
"PropertyUsageFlags.ReadOnly;\n"
"\t\t\tproperty[\"usage\"] = (int)usage;\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Adds a user-defined signal named [param signal]. Optional arguments for the "
"signal can be added as an [Array] of dictionaries, each defining a "
"[code]name[/code] [String] and a [code]type[/code] [int] (see [enum "
"Variant.Type]). See also [method has_user_signal] and [method "
"remove_user_signal].\n"
"[codeblocks]\n"
"[gdscript]\n"
"add_user_signal(\"hurt\", [\n"
"\t{ \"name\": \"damage\", \"type\": TYPE_INT },\n"
"\t{ \"name\": \"source\", \"type\": TYPE_OBJECT }\n"
"])\n"
"[/gdscript]\n"
"[csharp]\n"
"AddUserSignal(\"Hurt\",\n"
"[\n"
"\tnew Godot.Collections.Dictionary()\n"
"\t{\n"
"\t\t{ \"name\", \"damage\" },\n"
"\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t},\n"
"\tnew Godot.Collections.Dictionary()\n"
"\t{\n"
"\t\t{ \"name\", \"source\" },\n"
"\t\t{ \"type\", (int)Variant.Type.Object },\n"
"\t},\n"
"]);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Добавляет определяемый пользователем сигнал с именем [param signal]. "
"Необязательные аргументы для сигнала могут быть добавлены как [Array] "
"словарей, каждый из которых определяет [code]name[/code] [String] и "
"[code]type[/code] [int] (см. [enum Variant.Type]). См. также [method "
"has_user_signal] и [method remove_user_signal].\n"
"[codeblocks]\n"
"[gdscript]\n"
"add_user_signal(\"hurt\", [\n"
"\t{ \"name\": \"damage\", \"type\": TYPE_INT },\n"
"\t{ \"name\": \"source\", \"type\": TYPE_OBJECT }\n"
"])\n"
"[/gdscript]\n"
"[csharp]\n"
"AddUserSignal(\"Hurt\",\n"
"[\n"
"\tnew Godot.Collections.Dictionary()\n"
"\t{\n"
"\t\t{ \"name\", \"damage\" },\n"
"\t\t{ \"type\", (int)Variant.Type.Int },\n"
"\t},\n"
"\tnew Godot.Collections.Dictionary()\n"
"\t{\n"
"\t\t{ \"name\", \"source\" },\n"
"\t\t{ \"type\", (int)Variant.Type.Object },\n"
"\t},\n"
"]);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Calls the [param method] on the object and returns the result. This method "
"supports a variable number of arguments, so parameters can be passed as a "
"comma separated list.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node3D.new()\n"
"node.call(\"rotate\", Vector3(1.0, 0.0, 0.0), 1.571)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node3D();\n"
"node.Call(Node3D.MethodName.Rotate, new Vector3(1f, 0f, 0f), 1.571f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Вызывает метод [param method] для объекта и возвращает результат. Этот метод "
"поддерживает переменное количество аргументов, поэтому параметры могут быть "
"переданы в виде списка, разделенного запятыми.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node3D.new()\n"
"node.call(\"rotate\", Vector3(1.0, 0.0, 0.0), 1.571)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node3D();\n"
"node.Call(Node3D.MethodName.Rotate, new Vector3(1f, 0f, 0f), 1.571f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В C# [param method] должен быть в snake_case при ссылке на "
"встроенные методы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]MethodName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове."

msgid ""
"Calls the [param method] on the object during idle time. Always returns "
"[code]null[/code], [b]not[/b] the method's result.\n"
"Idle time happens mainly at the end of process and physics frames. In it, "
"deferred calls will be run until there are none left, which means you can "
"defer calls from other deferred calls and they'll still be run in the current "
"idle time cycle. This means you should not call a method deferred from itself "
"(or from a method called by it), as this causes infinite recursion the same "
"way as if you had called the method directly.\n"
"This method supports a variable number of arguments, so parameters can be "
"passed as a comma separated list.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node3D.new()\n"
"node.call_deferred(\"rotate\", Vector3(1.0, 0.0, 0.0), 1.571)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node3D();\n"
"node.CallDeferred(Node3D.MethodName.Rotate, new Vector3(1f, 0f, 0f), "
"1.571f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method Callable.call_deferred].\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call.\n"
"[b]Note:[/b] If you're looking to delay the function call by a frame, refer "
"to the [signal SceneTree.process_frame] and [signal SceneTree.physics_frame] "
"signals.\n"
"[codeblock]\n"
"var node = Node3D.new()\n"
"# Make a Callable and bind the arguments to the node's rotate() call.\n"
"var callable = node.rotate.bind(Vector3(1.0, 0.0, 0.0), 1.571)\n"
"# Connect the callable to the process_frame signal, so it gets called in the "
"next process frame.\n"
"# CONNECT_ONE_SHOT makes sure it only gets called once instead of every "
"frame.\n"
"get_tree().process_frame.connect(callable, CONNECT_ONE_SHOT)\n"
"[/codeblock]"
msgstr ""
"Вызывает метод [param method] объекта во время простоя. Всегда возвращает "
"[code]null[/code], [b]не[/b] результат метода.\n"
"Время простоя происходит в основном в конце кадров процесса и физики. В нем "
"отложенные вызовы будут выполняться до тех пор, пока не останется ни одного, "
"что означает, что вы можете отложить вызовы из других отложенных вызовов, и "
"они все равно будут выполняться в текущем цикле времени простоя. Это "
"означает, что вы не должны вызывать метод, отложенный из самого себя (или из "
"метода, вызванного им), так как это вызывает бесконечную рекурсию так же, как "
"если бы вы вызвали метод напрямую.\n"
"Этот метод поддерживает переменное количество аргументов, поэтому параметры "
"можно передавать в виде списка, разделенного запятыми.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node3D.new()\n"
"node.call_deferred(\"rotate\", Vector3(1.0, 0.0, 0.0), 1.571)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node3D();\n"
"node.CallDeferred(Node3D.MethodName.Rotate, new Vector3(1f, 0f, 0f), "
"1.571f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Смотрите также [method Callable.call_deferred].\n"
"[b]Примечание:[/b] В C# [param method] должен быть в snake_case при ссылке на "
"встроенные методы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]MethodName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове.\n"
"[b]Примечание:[/b] Если вы хотите отложить вызов функции на кадр, обратитесь "
"к сигналам [signal SceneTree.process_frame] и [signal "
"SceneTree.physics_frame].\n"
"[codeblock]\n"
"var node = Node3D.new()\n"
"# Создайте вызываемый объект и привяжите аргументы к вызову rotate() узла.\n"
"var callable = node.rotate.bind(Vector3(1.0, 0.0, 0.0), 1.571)\n"
"# Подключите вызываемый объект к сигналу process_frame, чтобы он был вызван в "
"следующем кадре процесса.\n"
"# CONNECT_ONE_SHOT гарантирует, что он будет вызван только один раз, а не "
"каждый кадр.\n"
"get_tree().process_frame.connect(callable, CONNECT_ONE_SHOT)\n"
"[/codeblock]"

msgid ""
"Calls the [param method] on the object and returns the result. Unlike [method "
"call], this method expects all parameters to be contained inside [param "
"arg_array].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node3D.new()\n"
"node.callv(\"rotate\", [Vector3(1.0, 0.0, 0.0), 1.571])\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node3D();\n"
"node.Callv(Node3D.MethodName.Rotate, [new Vector3(1f, 0f, 0f), 1.571f]);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Вызывает [param method] на объекте и возвращает результат. В отличие от "
"[method call], этот метод ожидает, что все параметры будут содержаться внутри "
"[param arg_array].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node3D.new()\n"
"node.callv(\"rotate\", [Vector3(1.0, 0.0, 0.0), 1.571])\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node3D();\n"
"node.Callv(Node3D.MethodName.Rotate, [new Vector3(1f, 0f, 0f), 1.571f]);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В C# [param method] должен быть в snake_case при ссылке на "
"встроенные методы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]MethodName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове."

msgid ""
"Returns [code]true[/code] if the object is allowed to translate messages with "
"[method tr] and [method tr_n]. See also [method set_message_translation]."
msgstr ""
"Возвращает [code]true[/code], если объекту разрешено переводить сообщения с "
"помощью [method tr] и [method tr_n]. См. также [method "
"set_message_translation]."

msgid ""
"If this method is called during [constant NOTIFICATION_PREDELETE], this "
"object will reject being freed and will remain allocated. This is mostly an "
"internal function used for error handling to avoid the user from freeing "
"objects when they are not intended to."
msgstr ""
"Если этот метод вызывается во время [constant NOTIFICATION_PREDELETE], этот "
"объект отклонит освобождение и останется выделенным. Это в основном "
"внутренняя функция, используемая для обработки ошибок, чтобы пользователь не "
"освобождал объекты, когда они не предназначены для этого."

msgid ""
"Connects a [param signal] by name to a [param callable]. Optional [param "
"flags] can be also added to configure the connection's behavior (see [enum "
"ConnectFlags] constants).\n"
"A signal can only be connected once to the same [Callable]. If the signal is "
"already connected, this method returns [constant ERR_INVALID_PARAMETER] and "
"generates an error, unless the signal is connected with [constant "
"CONNECT_REFERENCE_COUNTED]. To prevent this, use [method is_connected] first "
"to check for existing connections.\n"
"[b]Note:[/b] If the [param callable]'s object is freed, the connection will "
"be lost.\n"
"[b]Note:[/b] In GDScript, it is generally recommended to connect signals with "
"[method Signal.connect] instead.\n"
"[b]Note:[/b] This operation (and all other signal related operations) is "
"thread-safe."
msgstr ""
"Подключает [param signal] по имени к [param callable]. Также можно добавить "
"необязательные [param flags] для настройки поведения соединения (см. "
"константы [enum ConnectFlags]).\n"
"Сигнал можно подключить только один раз к одному [Callable]. Если сигнал уже "
"подключен, этот метод возвращает [constant ERR_INVALID_PARAMETER] и "
"генерирует ошибку, если только сигнал не подключен с [constant "
"CONNECT_REFERENCE_COUNTED]. Чтобы предотвратить это, сначала используйте "
"[method is_connected] для проверки существующих соединений.\n"
"[b]Примечание:[/b] Если объект [param callable] освобожден, соединение будет "
"потеряно.\n"
"[b]Примечание:[/b] В GDScript обычно рекомендуется подключать сигналы с "
"помощью [method Signal.connect].\n"
"[b]Примечание:[/b] Эта операция (и все другие операции, связанные с "
"сигналами) потокобезопасна."

msgid ""
"Disconnects a [param signal] by name from a given [param callable]. If the "
"connection does not exist, generates an error. Use [method is_connected] to "
"make sure that the connection exists."
msgstr ""
"Отключает [param signal] по имени от заданного [param callable]. Если "
"соединение не существует, генерирует ошибку. Используйте [method "
"is_connected], чтобы убедиться, что соединение существует."

msgid ""
"Emits the given [param signal] by name. The signal must exist, so it should "
"be a built-in signal of this class or one of its inherited classes, or a user-"
"defined signal (see [method add_user_signal]). This method supports a "
"variable number of arguments, so parameters can be passed as a comma "
"separated list.\n"
"Returns [constant ERR_UNAVAILABLE] if [param signal] does not exist or the "
"parameters are invalid.\n"
"[codeblocks]\n"
"[gdscript]\n"
"emit_signal(\"hit\", \"sword\", 100)\n"
"emit_signal(\"game_over\")\n"
"[/gdscript]\n"
"[csharp]\n"
"EmitSignal(SignalName.Hit, \"sword\", 100);\n"
"EmitSignal(SignalName.GameOver);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param signal] must be in snake_case when referring to "
"built-in Godot signals. Prefer using the names exposed in the "
"[code]SignalName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Выдает заданный [param signal] по имени. Сигнал должен существовать, поэтому "
"он должен быть встроенным сигналом этого класса или одного из его "
"унаследованных классов, или определяемым пользователем сигналом (см. [method "
"add_user_signal]). Этот метод поддерживает переменное количество аргументов, "
"поэтому параметры можно передавать в виде списка, разделенного запятыми.\n"
"Возвращает [constant ERR_UNAVAILABLE], если [param signal] не существует или "
"параметры недопустимы.\n"
"[codeblocks]\n"
"[gdscript]\n"
"emit_signal(\"hit\", \"sword\", 100)\n"
"emit_signal(\"game_over\")\n"
"[/gdscript]\n"
"[csharp]\n"
"EmitSignal(SignalName.Hit, \"sword\", 100);\n"
"EmitSignal(SignalName.GameOver);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В C# [param signal] должен быть в snake_case при ссылке на "
"встроенные сигналы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]SignalName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове."

msgid ""
"Deletes the object from memory. Pre-existing references to the object become "
"invalid, and any attempt to access them will result in a runtime error. "
"Checking the references with [method @GlobalScope.is_instance_valid] will "
"return [code]false[/code]. This is equivalent to the [code]memdelete[/code] "
"function in GDExtension C++."
msgstr ""
"Удаляет объект из памяти. Существующие ранее ссылки на объект становятся "
"недействительными, и любая попытка доступа к ним приведет к ошибке "
"выполнения. Проверка ссылок с помощью [method @GlobalScope.is_instance_valid] "
"вернет [code]false[/code]. Это эквивалентно функции [code]memdelete[/code] в "
"GDExtension C++."

msgid ""
"Returns the [Variant] value of the given [param property]. If the [param "
"property] does not exist, this method returns [code]null[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.rotation = 1.5\n"
"var a = node.get(\"rotation\") # a is 1.5\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Rotation = 1.5f;\n"
"var a = node.Get(Node2D.PropertyName.Rotation); // a is 1.5\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param property] must be in snake_case when referring to "
"built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Возвращает значение [Variant] указанного [param property]. Если [param "
"property] не существует, этот метод возвращает [code]null[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.rotation = 1.5\n"
"var a = node.get(\"rotation\") # а равно 1,5\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Rotation = 1.5f;\n"
"var a = node.Get(Node2D.PropertyName.Rotation); // а равно 1,5\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В C# [param property] должно быть в snake_case при ссылке "
"на встроенные свойства Godot. Предпочитайте использовать имена, "
"представленные в классе [code]PropertyName[/code], чтобы избежать выделения "
"нового [StringName] при каждом вызове."

msgid ""
"Returns the object's built-in class name, as a [String]. See also [method "
"is_class].\n"
"[b]Note:[/b] This method ignores [code]class_name[/code] declarations. If "
"this object's script has defined a [code]class_name[/code], the base, built-"
"in class name is returned instead."
msgstr ""
"Возвращает встроенное имя класса объекта в виде [String]. См. также [method "
"is_class].\n"
"[b]Примечание:[/b] Этот метод игнорирует объявления [code]class_name[/code]. "
"Если скрипт этого объекта определил [code]class_name[/code], вместо этого "
"возвращается базовое встроенное имя класса."

msgid ""
"Returns an [Array] of signal connections received by this object. Each "
"connection is represented as a [Dictionary] that contains three entries:\n"
"- [code]signal[/code] is a reference to the [Signal];\n"
"- [code]callable[/code] is a reference to the [Callable];\n"
"- [code]flags[/code] is a combination of [enum ConnectFlags]."
msgstr ""
"Возвращает [Array] соединений сигналов, полученных этим объектом. Каждое "
"соединение представлено как [Dictionary], который содержит три записи:\n"
"- [code]signal[/code] — ссылка на [Signal];\n"
"- [code]callable[/code] — ссылка на [Callable];\n"
"- [code]flags[/code] — комбинация [enum ConnectFlags]."

msgid ""
"Gets the object's property indexed by the given [param property_path]. The "
"path should be a [NodePath] relative to the current object and can use the "
"colon character ([code]:[/code]) to access nested properties.\n"
"[b]Examples:[/b] [code]\"position:x\"[/code] or [code]"
"\"material:next_pass:blend_mode\"[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.position = Vector2(5, -10)\n"
"var a = node.get_indexed(\"position\")   # a is Vector2(5, -10)\n"
"var b = node.get_indexed(\"position:y\") # b is -10\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Position = new Vector2(5, -10);\n"
"var a = node.GetIndexed(\"position\");   // a is Vector2(5, -10)\n"
"var b = node.GetIndexed(\"position:y\"); // b is -10\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param property_path] must be in snake_case when "
"referring to built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call.\n"
"[b]Note:[/b] This method does not support actual paths to nodes in the "
"[SceneTree], only sub-property paths. In the context of nodes, use [method "
"Node.get_node_and_resource] instead."
msgstr ""
"Получает свойство объекта, индексированное заданным [param property_path]. "
"Путь должен быть [NodePath] относительно текущего объекта и может "
"использовать символ двоеточия ([code]:[/code]) для доступа к вложенным "
"свойствам.\n"
"[b]Примеры:[/b] [code]\"position:x\"[/code] или [code]"
"\"material:next_pass:blend_mode\"[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.position = Vector2(5, -10)\n"
"var a = node.get_indexed(\"position\")   # а — это Vector2(5, -10)\n"
"var b = node.get_indexed(\"position:y\") # b это -10\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Position = new Vector2(5, -10);\n"
"var a = node.GetIndexed(\"position\");   // а — это Vector2(5, -10)\n"
"var b = node.GetIndexed(\"position:y\"); // b это -10\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В C# [param property_path] должен быть в snake_case при "
"ссылке на встроенные свойства Godot. Предпочитайте использовать имена, "
"представленные в классе [code]PropertyName[/code], чтобы избежать выделения "
"нового [StringName] при каждом вызове.\n"
"[b]Примечание:[/b] Этот метод не поддерживает фактические пути к узлам в "
"[SceneTree], только пути подсвойств. В контексте узлов используйте вместо "
"этого [method Node.get_node_and_resource]."

msgid ""
"Returns the object's unique instance ID. This ID can be saved in "
"[EncodedObjectAsID], and can be used to retrieve this object instance with "
"[method @GlobalScope.instance_from_id].\n"
"[b]Note:[/b] This ID is only useful during the current session. It won't "
"correspond to a similar object if the ID is sent over a network, or loaded "
"from a file at a later time."
msgstr ""
"Возвращает уникальный идентификатор экземпляра объекта. Этот идентификатор "
"можно сохранить в [EncodedObjectAsID] и использовать для извлечения этого "
"экземпляра объекта с помощью [method @GlobalScope.instance_from_id].\n"
"[b]Примечание:[/b] Этот идентификатор полезен только во время текущего "
"сеанса. Он не будет соответствовать похожему объекту, если идентификатор "
"будет отправлен по сети или загружен из файла позднее."

msgid ""
"Returns the object's metadata value for the given entry [param name]. If the "
"entry does not exist, returns [param default]. If [param default] is "
"[code]null[/code], an error is also generated.\n"
"[b]Note:[/b] A metadata's name must be a valid identifier as per [method "
"StringName.is_valid_identifier] method.\n"
"[b]Note:[/b] Metadata that has a name starting with an underscore ([code]_[/"
"code]) is considered editor-only. Editor-only metadata is not displayed in "
"the Inspector and should not be edited, although it can still be found by "
"this method."
msgstr ""
"Возвращает значение метаданных объекта для заданной записи [param name]. Если "
"запись не существует, возвращает [param default]. Если [param default] равен "
"[code]null[/code], также генерируется ошибка.\n"
"[b]Примечание:[/b] Имя метаданных должно быть допустимым идентификатором "
"согласно методу [method StringName.is_valid_identifier].\n"
"[b]Примечание:[/b] Метаданные, имя которых начинается с подчеркивания "
"([code]_[/code]), считаются доступными только для редактора. Метаданные, "
"доступные только для редактора, не отображаются в Инспекторе и не должны "
"редактироваться, хотя их все равно можно найти с помощью этого метода."

msgid ""
"Returns the object's metadata entry names as an [Array] of [StringName]s."
msgstr ""
"Возвращает имена записей метаданных объекта в виде [Array] из [StringName]."

msgid ""
"Returns the number of arguments of the given [param method] by name.\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Возвращает количество аргументов указанного [param method] по имени.\n"
"[b]Примечание:[/b] В C# [param method] должен быть в snake_case при ссылке на "
"встроенные методы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]MethodName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове."

msgid ""
"Returns this object's methods and their signatures as an [Array] of "
"dictionaries. Each [Dictionary] contains the following entries:\n"
"- [code]name[/code] is the name of the method, as a [String];\n"
"- [code]args[/code] is an [Array] of dictionaries representing the "
"arguments;\n"
"- [code]default_args[/code] is the default arguments as an [Array] of "
"variants;\n"
"- [code]flags[/code] is a combination of [enum MethodFlags];\n"
"- [code]id[/code] is the method's internal identifier [int];\n"
"- [code]return[/code] is the returned value, as a [Dictionary];\n"
"[b]Note:[/b] The dictionaries of [code]args[/code] and [code]return[/code] "
"are formatted identically to the results of [method get_property_list], "
"although not all entries are used."
msgstr ""
"Возвращает методы этого объекта и их сигнатуры как [Array] словарей. Каждый "
"[Dictionary] содержит следующие записи:\n"
"- [code]name[/code] — имя метода, как [String];\n"
"- [code]args[/code] — [Array] словарей, представляющих аргументы;\n"
"- [code]default_args[/code] — аргументы по умолчанию как [Array] вариантов;\n"
"- [code]flags[/code] — комбинация [enum MethodFlags];\n"
"- [code]id[/code] — внутренний идентификатор метода [int];\n"
"- [code]return[/code] — возвращаемое значение, как [Dictionary];\n"
"[b]Примечание:[/b] Словари [code]args[/code] и [code]return[/code] "
"форматируются идентично результатам [method get_property_list], хотя "
"используются не все записи."

msgid ""
"Returns the object's property list as an [Array] of dictionaries. Each "
"[Dictionary] contains the following entries:\n"
"- [code]name[/code] is the property's name, as a [String];\n"
"- [code]class_name[/code] is an empty [StringName], unless the property is "
"[constant TYPE_OBJECT] and it inherits from a class;\n"
"- [code]type[/code] is the property's type, as an [int] (see [enum "
"Variant.Type]);\n"
"- [code]hint[/code] is [i]how[/i] the property is meant to be edited (see "
"[enum PropertyHint]);\n"
"- [code]hint_string[/code] depends on the hint (see [enum PropertyHint]);\n"
"- [code]usage[/code] is a combination of [enum PropertyUsageFlags].\n"
"[b]Note:[/b] In GDScript, all class members are treated as properties. In C# "
"and GDExtension, it may be necessary to explicitly mark class members as "
"Godot properties using decorators or attributes."
msgstr ""
"Возвращает список свойств объекта как [Array] словарей. Каждый [Dictionary] "
"содержит следующие записи:\n"
"- [code]name[/code] — имя свойства, как [String];\n"
"- [code]class_name[/code] — пустой [StringName], если свойство не является "
"[constant TYPE_OBJECT] и не наследуется от класса;\n"
"- [code]type[/code] — тип свойства, как [int] (см. [enum Variant.Type]);\n"
"- [code]hint[/code] — [i]как[/i] свойство должно редактироваться (см. [enum "
"PropertyHint]);\n"
"- [code]hint_string[/code] зависит от подсказки (см. [enum PropertyHint]);\n"
"- [code]usage[/code] — комбинация [enum PropertyUsageFlags].\n"
"[b]Примечание:[/b] В GDScript все члены класса рассматриваются как свойства. "
"В C# и GDExtension может потребоваться явно пометить члены класса как "
"свойства Godot с помощью декораторов или атрибутов."

msgid ""
"Returns the object's [Script] instance, or [code]null[/code] if no script is "
"attached."
msgstr ""
"Возвращает экземпляр [Script] объекта или [code]null[/code], если скрипт не "
"прикреплен."

msgid ""
"Returns an [Array] of connections for the given [param signal] name. Each "
"connection is represented as a [Dictionary] that contains three entries:\n"
"- [code skip-lint]signal[/code] is a reference to the [Signal];\n"
"- [code]callable[/code] is a reference to the connected [Callable];\n"
"- [code]flags[/code] is a combination of [enum ConnectFlags]."
msgstr ""
"Возвращает [Array] соединений для заданного имени [param signal]. Каждое "
"соединение представлено как [Dictionary], содержащий три записи:\n"
"- [code skip-lint]signal[/code] — ссылка на [Signal];\n"
"- [code]callable[/code] — ссылка на подключенный [Callable];\n"
"- [code]flags[/code] — комбинация [enum ConnectFlags]."

msgid ""
"Returns the list of existing signals as an [Array] of dictionaries.\n"
"[b]Note:[/b] Due of the implementation, each [Dictionary] is formatted very "
"similarly to the returned values of [method get_method_list]."
msgstr ""
"Возвращает список существующих сигналов как [Array] словарей.\n"
"[b]Примечание:[/b] Из-за реализации каждый [Dictionary] форматируется очень "
"похоже на возвращаемые значения [method get_method_list]."

msgid ""
"Returns the name of the translation domain used by [method tr] and [method "
"tr_n]. See also [TranslationServer]."
msgstr ""
"Возвращает имя домена перевода, используемого [method tr] и [method tr_n]. "
"См. также [TranslationServer]."

msgid ""
"Returns [code]true[/code] if any connection exists on the given [param "
"signal] name.\n"
"[b]Note:[/b] In C#, [param signal] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]SignalName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Возвращает [code]true[/code], если существует какое-либо соединение по "
"заданному имени [param signal].\n"
"[b]Примечание:[/b] В C# [param signal] должен быть в snake_case при ссылке на "
"встроенные методы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]SignalName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове."

msgid ""
"Returns [code]true[/code] if a metadata entry is found with the given [param "
"name]. See also [method get_meta], [method set_meta] and [method "
"remove_meta].\n"
"[b]Note:[/b] A metadata's name must be a valid identifier as per [method "
"StringName.is_valid_identifier] method.\n"
"[b]Note:[/b] Metadata that has a name starting with an underscore ([code]_[/"
"code]) is considered editor-only. Editor-only metadata is not displayed in "
"the Inspector and should not be edited, although it can still be found by "
"this method."
msgstr ""
"Возвращает [code]true[/code], если найдена запись метаданных с указанным "
"[param name]. См. также [method get_meta], [method set_meta] и [method "
"remove_meta].\n"
"[b]Примечание:[/b] Имя метаданных должно быть допустимым идентификатором "
"согласно методу [method StringName.is_valid_identifier].\n"
"[b]Примечание:[/b] Метаданные, имя которых начинается с подчеркивания "
"([code]_[/code]), считаются доступными только для редактора. Доступные только "
"для редактора метаданные не отображаются в Инспекторе и не должны "
"редактироваться, хотя их все равно можно найти с помощью этого метода."

msgid ""
"Returns [code]true[/code] if the given [param method] name exists in the "
"object.\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Возвращает [code]true[/code], если заданное имя [param method] существует в "
"объекте.\n"
"[b]Примечание:[/b] В C# [param method] должно быть в snake_case при ссылке на "
"встроенные методы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]MethodName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове."

msgid ""
"Returns [code]true[/code] if the given [param signal] name exists in the "
"object.\n"
"[b]Note:[/b] In C#, [param signal] must be in snake_case when referring to "
"built-in Godot signals. Prefer using the names exposed in the "
"[code]SignalName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Возвращает [code]true[/code], если заданное имя [param signal] существует в "
"объекте.\n"
"[b]Примечание:[/b] В C# [param signal] должен быть в snake_case при ссылке на "
"встроенные сигналы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]SignalName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове."

msgid ""
"Returns [code]true[/code] if the given user-defined [param signal] name "
"exists. Only signals added with [method add_user_signal] are included. See "
"also [method remove_user_signal]."
msgstr ""
"Возвращает [code]true[/code], если заданное пользователем имя [param signal] "
"существует. Включаются только сигналы, добавленные с помощью [method "
"add_user_signal]. См. также [method remove_user_signal]."

msgid ""
"Returns [code]true[/code] if the object is blocking its signals from being "
"emitted. See [method set_block_signals]."
msgstr ""
"Возвращает [code]true[/code], если объект блокирует передачу своих сигналов. "
"См. [method set_block_signals]."

msgid ""
"Returns [code]true[/code] if the object inherits from the given [param "
"class]. See also [method get_class].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var sprite2d = Sprite2D.new()\n"
"sprite2d.is_class(\"Sprite2D\") # Returns true\n"
"sprite2d.is_class(\"Node\")     # Returns true\n"
"sprite2d.is_class(\"Node3D\")   # Returns false\n"
"[/gdscript]\n"
"[csharp]\n"
"var sprite2D = new Sprite2D();\n"
"sprite2D.IsClass(\"Sprite2D\"); // Returns true\n"
"sprite2D.IsClass(\"Node\");     // Returns true\n"
"sprite2D.IsClass(\"Node3D\");   // Returns false\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method ignores [code]class_name[/code] declarations in the "
"object's script."
msgstr ""
"Возвращает [code]true[/code], если объект наследуется от указанного [param "
"class]. См. также [method get_class].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var sprite2d = Sprite2D.new()\n"
"sprite2d.is_class(\"Sprite2D\") # Возвращает true\n"
"sprite2d.is_class(\"Node\")     # Возвращает true\n"
"sprite2d.is_class(\"Node3D\")   # Возвращает false\n"
"[/gdscript]\n"
"[csharp]\n"
"var sprite2D = new Sprite2D();\n"
"sprite2D.IsClass(\"Sprite2D\"); // Возвращает true\n"
"sprite2D.IsClass(\"Node\");     // Возвращает true\n"
"sprite2D.IsClass(\"Node3D\");   // Возвращает false\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Этот метод игнорирует объявления [code]class_name[/code] в "
"скрипте объекта."

msgid ""
"Returns [code]true[/code] if a connection exists between the given [param "
"signal] name and [param callable].\n"
"[b]Note:[/b] In C#, [param signal] must be in snake_case when referring to "
"built-in Godot signals. Prefer using the names exposed in the "
"[code]SignalName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Возвращает [code]true[/code], если существует связь между заданным именем "
"[param signal] и [param callable].\n"
"[b]Примечание:[/b] В C# [param signal] должен быть в snake_case при ссылке на "
"встроенные сигналы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]SignalName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове."

msgid ""
"Returns [code]true[/code] if the [method Node.queue_free] method was called "
"for the object."
msgstr ""
"Возвращает [code]true[/code], если для объекта был вызван метод [method "
"Node.queue_free]."

msgid ""
"Sends the given [param what] notification to all classes inherited by the "
"object, triggering calls to [method _notification], starting from the highest "
"ancestor (the [Object] class) and going down to the object's script.\n"
"If [param reversed] is [code]true[/code], the call order is reversed.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var player = Node2D.new()\n"
"player.set_script(load(\"res://player.gd\"))\n"
"\n"
"player.notification(NOTIFICATION_ENTER_TREE)\n"
"# The call order is Object -> Node -> Node2D -> player.gd.\n"
"\n"
"player.notification(NOTIFICATION_ENTER_TREE, true)\n"
"# The call order is player.gd -> Node2D -> Node -> Object.\n"
"[/gdscript]\n"
"[csharp]\n"
"var player = new Node2D();\n"
"player.SetScript(GD.Load(\"res://player.gd\"));\n"
"\n"
"player.Notification(NotificationEnterTree);\n"
"// The call order is GodotObject -> Node -> Node2D -> player.gd.\n"
"\n"
"player.Notification(NotificationEnterTree, true);\n"
"// The call order is player.gd -> Node2D -> Node -> GodotObject.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Отправляет заданное уведомление [param what] всем классам, унаследованным "
"объектом, вызывая вызовы [method _notification], начиная с наивысшего предка "
"(класса [Object]) и спускаясь к скрипту объекта.\n"
"Если [param reversed] равен [code]true[/code], порядок вызовов меняется на "
"обратный.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var player = Node2D.new()\n"
"player.set_script(load(\"res://player.gd\"))\n"
"\n"
"player.notification(NOTIFICATION_ENTER_TREE)\n"
"# Порядок вызовов следующий: Object -> Node -> Node2D -> player.gd.\n"
"\n"
"player.notification(NOTIFICATION_ENTER_TREE, true)\n"
"# Порядок вызовов следующий: player.gd -> Node2D -> Node -> Object.\n"
"[/gdscript]\n"
"[csharp]\n"
"var player = new Node2D();\n"
"player.SetScript(GD.Load(\"res://player.gd\"));\n"
"\n"
"player.Notification(NotificationEnterTree);\n"
"// Порядок вызовов следующий: GodotObject -> Node -> Node2D -> player.gd.\n"
"\n"
"player.Notification(NotificationEnterTree, true);\n"
"// Порядок вызовов следующий: player.gd -> Node2D -> Node -> GodotObject.\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Emits the [signal property_list_changed] signal. This is mainly used to "
"refresh the editor, so that the Inspector and editor plugins are properly "
"updated."
msgstr ""
"Выдает сигнал [signal property_list_changed]. В основном он используется для "
"обновления редактора, чтобы плагины Inspector и editor были обновлены должным "
"образом."

msgid ""
"Returns [code]true[/code] if the given [param property] has a custom default "
"value. Use [method property_get_revert] to get the [param property]'s default "
"value.\n"
"[b]Note:[/b] This method is used by the Inspector dock to display a revert "
"icon. The object must implement [method _property_can_revert] to customize "
"the default value. If [method _property_can_revert] is not implemented, this "
"method returns [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если заданное [param property] имеет "
"пользовательское значение по умолчанию. Используйте [method "
"property_get_revert], чтобы получить значение по умолчанию для [param "
"property].\n"
"[b]Примечание:[/b] Этот метод используется панелью инспектора для отображения "
"значка возврата. Объект должен реализовать [method _property_can_revert] для "
"настройки значения по умолчанию. Если [method _property_can_revert] не "
"реализован, этот метод возвращает [code]false[/code]."

msgid ""
"Returns the custom default value of the given [param property]. Use [method "
"property_can_revert] to check if the [param property] has a custom default "
"value.\n"
"[b]Note:[/b] This method is used by the Inspector dock to display a revert "
"icon. The object must implement [method _property_get_revert] to customize "
"the default value. If [method _property_get_revert] is not implemented, this "
"method returns [code]null[/code]."
msgstr ""
"Возвращает пользовательское значение по умолчанию для указанного [param "
"property]. Используйте [method property_can_revert], чтобы проверить, имеет "
"ли [param property] пользовательское значение по умолчанию.\n"
"[b]Примечание:[/b] Этот метод используется панелью инспектора для отображения "
"значка возврата. Объект должен реализовать [method _property_get_revert] для "
"настройки значения по умолчанию. Если [method _property_get_revert] не "
"реализован, этот метод возвращает [code]null[/code]."

msgid ""
"Removes the given entry [param name] from the object's metadata. See also "
"[method has_meta], [method get_meta] and [method set_meta].\n"
"[b]Note:[/b] A metadata's name must be a valid identifier as per [method "
"StringName.is_valid_identifier] method.\n"
"[b]Note:[/b] Metadata that has a name starting with an underscore ([code]_[/"
"code]) is considered editor-only. Editor-only metadata is not displayed in "
"the Inspector and should not be edited, although it can still be found by "
"this method."
msgstr ""
"Удаляет указанную запись [param name] из метаданных объекта. См. также "
"[method has_meta], [method get_meta] и [method set_meta].\n"
"[b]Примечание:[/b] Имя метаданных должно быть допустимым идентификатором "
"согласно методу [method StringName.is_valid_identifier].\n"
"[b]Примечание:[/b] Метаданные, имя которых начинается с подчеркивания "
"([code]_[/code]), считаются доступными только для редактора. Доступные только "
"для редактора метаданные не отображаются в Инспекторе и не должны "
"редактироваться, хотя их все равно можно найти с помощью этого метода."

msgid ""
"Removes the given user signal [param signal] from the object. See also "
"[method add_user_signal] and [method has_user_signal]."
msgstr ""
"Удаляет указанный пользовательский сигнал [param signal] из объекта. См. "
"также [method add_user_signal] и [method has_user_signal]."

msgid ""
"Assigns [param value] to the given [param property]. If the property does not "
"exist or the given [param value]'s type doesn't match, nothing happens.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.set(\"global_scale\", Vector2(8, 2.5))\n"
"print(node.global_scale) # Prints (8.0, 2.5)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Set(Node2D.PropertyName.GlobalScale, new Vector2(8, 2.5f));\n"
"GD.Print(node.GlobalScale); // Prints (8, 2.5)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param property] must be in snake_case when referring to "
"built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Назначает [param value] заданному [param property]. Если свойство не "
"существует или тип заданного [param value] не совпадает, ничего не "
"происходит.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.set(\"global_scale\", Vector2(8, 2.5))\n"
"print(node.global_scale) # Prints (8.0, 2.5)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Set(Node2D.PropertyName.GlobalScale, new Vector2(8, 2.5f));\n"
"GD.Print(node.GlobalScale); // Prints (8, 2.5)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В C# [param property] должно быть в snake_case при ссылке "
"на встроенные свойства Godot. Предпочитайте использовать имена, "
"представленные в классе [code]PropertyName[/code], чтобы избежать выделения "
"нового [StringName] при каждом вызове."

msgid ""
"If set to [code]true[/code], the object becomes unable to emit signals. As "
"such, [method emit_signal] and signal connections will not work, until it is "
"set to [code]false[/code]."
msgstr ""
"Если установлено значение [code]true[/code], объект становится неспособным "
"испускать сигналы. Таким образом, [method emit_signal] и сигнальные "
"соединения не будут работать, пока не будет установлено значение [code]false[/"
"code]."

msgid ""
"Assigns [param value] to the given [param property], at the end of the "
"current frame. This is equivalent to calling [method set] through [method "
"call_deferred].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"add_child(node)\n"
"\n"
"node.rotation = 1.5\n"
"node.set_deferred(\"rotation\", 3.0)\n"
"print(node.rotation) # Prints 1.5\n"
"\n"
"await get_tree().process_frame\n"
"print(node.rotation) # Prints 3.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Rotation = 1.5f;\n"
"node.SetDeferred(Node2D.PropertyName.Rotation, 3f);\n"
"GD.Print(node.Rotation); // Prints 1.5\n"
"\n"
"await ToSignal(GetTree(), SceneTree.SignalName.ProcessFrame);\n"
"GD.Print(node.Rotation); // Prints 3.0\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param property] must be in snake_case when referring to "
"built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Назначает [param value] заданному [param property] в конце текущего кадра. "
"Это эквивалентно вызову [method set] через [method call_deferred].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"add_child(node)\n"
"\n"
"node.rotation = 1.5\n"
"node.set_deferred(\"rotation\", 3.0)\n"
"print(node.rotation) # Prints 1.5\n"
"\n"
"await get_tree().process_frame\n"
"print(node.rotation) # Prints 3.0\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.Rotation = 1.5f;\n"
"node.SetDeferred(Node2D.PropertyName.Rotation, 3f);\n"
"GD.Print(node.Rotation); // Prints 1.5\n"
"\n"
"await ToSignal(GetTree(), SceneTree.SignalName.ProcessFrame);\n"
"GD.Print(node.Rotation); // Prints 3.0\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В C# [param property] должно быть в snake_case при ссылке "
"на встроенные свойства Godot. Предпочитайте использовать имена, "
"представленные в классе [code]PropertyName[/code], чтобы избежать выделения "
"нового [StringName] при каждом вызове."

msgid ""
"Assigns a new [param value] to the property identified by the [param "
"property_path]. The path should be a [NodePath] relative to this object, and "
"can use the colon character ([code]:[/code]) to access nested properties.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.set_indexed(\"position\", Vector2(42, 0))\n"
"node.set_indexed(\"position:y\", -10)\n"
"print(node.position) # Prints (42.0, -10.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.SetIndexed(\"position\", new Vector2(42, 0));\n"
"node.SetIndexed(\"position:y\", -10);\n"
"GD.Print(node.Position); // Prints (42, -10)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, [param property_path] must be in snake_case when "
"referring to built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Назначает новое [param value] свойству, идентифицированному [param "
"property_path]. Путь должен быть [NodePath] относительно этого объекта и "
"может использовать символ двоеточия ([code]:[/code]) для доступа к вложенным "
"свойствам.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var node = Node2D.new()\n"
"node.set_indexed(\"position\", Vector2(42, 0))\n"
"node.set_indexed(\"position:y\", -10)\n"
"print(node.position) # Prints (42.0, -10.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var node = new Node2D();\n"
"node.SetIndexed(\"position\", new Vector2(42, 0));\n"
"node.SetIndexed(\"position:y\", -10);\n"
"GD.Print(node.Position); // Prints (42, -10)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В C# [param property_path] должен быть в snake_case при "
"ссылке на встроенные свойства Godot. Предпочитайте использовать имена, "
"представленные в классе [code]PropertyName[/code], чтобы избежать выделения "
"нового [StringName] при каждом вызове."

msgid ""
"If set to [code]true[/code], allows the object to translate messages with "
"[method tr] and [method tr_n]. Enabled by default. See also [method "
"can_translate_messages]."
msgstr ""
"Если установлено значение [code]true[/code], позволяет объекту переводить "
"сообщения с помощью [method tr] и [method tr_n]. Включено по умолчанию. См. "
"также [method can_translate_messages]."

msgid ""
"Adds or changes the entry [param name] inside the object's metadata. The "
"metadata [param value] can be any [Variant], although some types cannot be "
"serialized correctly.\n"
"If [param value] is [code]null[/code], the entry is removed. This is the "
"equivalent of using [method remove_meta]. See also [method has_meta] and "
"[method get_meta].\n"
"[b]Note:[/b] A metadata's name must be a valid identifier as per [method "
"StringName.is_valid_identifier] method.\n"
"[b]Note:[/b] Metadata that has a name starting with an underscore ([code]_[/"
"code]) is considered editor-only. Editor-only metadata is not displayed in "
"the Inspector and should not be edited, although it can still be found by "
"this method."
msgstr ""
"Добавляет или изменяет запись [param name] внутри метаданных объекта. "
"Метаданные [param value] могут быть любым [Variant], хотя некоторые типы не "
"могут быть сериализованы правильно.\n"
"Если [param value] равно [code]null[/code], запись удаляется. Это "
"эквивалентно использованию [method remove_meta]. См. также [method has_meta] "
"и [method get_meta].\n"
"[b]Примечание:[/b] Имя метаданных должно быть допустимым идентификатором "
"согласно методу [method StringName.is_valid_identifier].\n"
"[b]Примечание:[/b] Метаданные, имя которых начинается с подчеркивания "
"([code]_[/code]), считаются доступными только для редактора. Метаданные, "
"доступные только для редактора, не отображаются в Инспекторе и не должны "
"редактироваться, хотя их все равно можно найти с помощью этого метода."

msgid ""
"Attaches [param script] to the object, and instantiates it. As a result, the "
"script's [method _init] is called. A [Script] is used to extend the object's "
"functionality.\n"
"If a script already exists, its instance is detached, and its property values "
"and state are lost. Built-in property values are still kept."
msgstr ""
"Прикрепляет [param script] к объекту и создает его экземпляр. В результате "
"вызывается [method _init] скрипта. [Script] используется для расширения "
"функциональности объекта.\n"
"Если скрипт уже существует, его экземпляр отсоединяется, а его значения "
"свойств и состояние теряются. Встроенные значения свойств по-прежнему "
"сохраняются."

msgid ""
"Sets the name of the translation domain used by [method tr] and [method "
"tr_n]. See also [TranslationServer]."
msgstr ""
"Устанавливает имя домена перевода, используемого [method tr] и [method tr_n]. "
"См. также [TranslationServer]."

msgid ""
"Returns a [String] representing the object. Defaults to [code]"
"\"<ClassName#RID>\"[/code]. Override [method _to_string] to customize the "
"string representation of the object."
msgstr ""
"Возвращает [String], представляющую объект. По умолчанию [code]"
"\"<ClassName#RID>\"[/code]. Переопределите [method _to_string], чтобы "
"настроить строковое представление объекта."

msgid ""
"Translates a [param message], using the translation catalogs configured in "
"the Project Settings. Further [param context] can be specified to help with "
"the translation. Note that most [Control] nodes automatically translate their "
"strings, so this method is mostly useful for formatted strings or custom "
"drawn text.\n"
"If [method can_translate_messages] is [code]false[/code], or no translation "
"is available, this method returns the [param message] without changes. See "
"[method set_message_translation].\n"
"For detailed examples, see [url=$DOCS_URL/tutorials/i18n/"
"internationalizing_games.html]Internationalizing games[/url].\n"
"[b]Note:[/b] This method can't be used without an [Object] instance, as it "
"requires the [method can_translate_messages] method. To translate strings in "
"a static context, use [method TranslationServer.translate]."
msgstr ""
"Переводит [param message], используя каталоги перевода, настроенные в "
"настройках проекта. Для помощи с переводом можно указать дополнительный "
"[param context]. Обратите внимание, что большинство узлов [Control] "
"автоматически переводят свои строки, поэтому этот метод в основном полезен "
"для форматированных строк или нарисованного текста.\n"
"Если [method can_translate_messages] равен [code]false[/code] или перевод "
"недоступен, этот метод возвращает [param message] без изменений. См. [method "
"set_message_translation].\n"
"Подробные примеры см. в [url=$DOCS_URL/tutorials/i18n/"
"internationalizing_games.html]Интернационализация игр[/url].\n"
"[b]Примечание:[/b] Этот метод нельзя использовать без экземпляра [Object], "
"так как для него требуется метод [method can_translate_messages]. Чтобы "
"перевести строки в статическом контексте, используйте [method "
"TranslationServer.translate]."

msgid ""
"Translates a [param message] or [param plural_message], using the translation "
"catalogs configured in the Project Settings. Further [param context] can be "
"specified to help with the translation.\n"
"If [method can_translate_messages] is [code]false[/code], or no translation "
"is available, this method returns [param message] or [param plural_message], "
"without changes. See [method set_message_translation].\n"
"The [param n] is the number, or amount, of the message's subject. It is used "
"by the translation system to fetch the correct plural form for the current "
"language.\n"
"For detailed examples, see [url=$DOCS_URL/tutorials/i18n/"
"localization_using_gettext.html]Localization using gettext[/url].\n"
"[b]Note:[/b] Negative and [float] numbers may not properly apply to some "
"countable subjects. It's recommended to handle these cases with [method tr].\n"
"[b]Note:[/b] This method can't be used without an [Object] instance, as it "
"requires the [method can_translate_messages] method. To translate strings in "
"a static context, use [method TranslationServer.translate_plural]."
msgstr ""
"Переводит [param message] или [param plural_message], используя каталоги "
"перевода, настроенные в настройках проекта. Для помощи с переводом можно "
"указать дополнительный [param context].\n"
"Если [method can_translate_messages] равен [code]false[/code] или перевод "
"недоступен, этот метод возвращает [param message] или [param plural_message] "
"без изменений. См. [method set_message_translation].\n"
"[param n] — это номер или количество темы сообщения. Он используется системой "
"перевода для получения правильной формы множественного числа для текущего "
"языка.\n"
"Подробные примеры см. в [url=$DOCS_URL/tutorials/i18n/"
"localization_using_gettext.html]Локализация с использованием gettext[/url].\n"
"[b]Примечание:[/b] Отрицательные и [float] числа могут неправильно "
"применяться к некоторым исчисляемым темам. Рекомендуется обрабатывать эти "
"случаи с помощью [method tr].\n"
"[b]Примечание:[/b] Этот метод нельзя использовать без экземпляра [Object], "
"так как он требует метод [method can_translate_messages]. Для перевода строк "
"в статическом контексте используйте [method "
"TranslationServer.translate_plural]."

msgid "Emitted when [method notify_property_list_changed] is called."
msgstr "Вызывается при вызове [method notify_property_list_changed]."

msgid ""
"Emitted when the object's script is changed.\n"
"[b]Note:[/b] When this signal is emitted, the new script is not initialized "
"yet. If you need to access the new script, defer connections to this signal "
"with [constant CONNECT_DEFERRED]."
msgstr ""
"Вызывается при изменении скрипта объекта.\n"
"[b]Примечание:[/b] Когда вызывается этот сигнал, новый скрипт еще не "
"инициализирован. Если вам нужно получить доступ к новому скрипту, отложите "
"подключения к этому сигналу с помощью [constant CONNECT_DEFERRED]."

msgid ""
"Notification received when the object is initialized, before its script is "
"attached. Used internally."
msgstr ""
"Уведомление получено при инициализации объекта, до присоединения его скрипта. "
"Используется внутренне."

msgid ""
"Notification received when the object is about to be deleted. Can be used "
"like destructors in object-oriented programming languages."
msgstr ""
"Уведомление получено, когда объект собирается быть удален. Может "
"использоваться как деструкторы в объектно-ориентированных языках "
"программирования."

msgid ""
"Notification received when the object finishes hot reloading. This "
"notification is only sent for extensions classes and derived."
msgstr ""
"Уведомление получено, когда объект завершает горячую перезагрузку. Это "
"уведомление отправляется только для классов расширений и производных."

msgid ""
"Deferred connections trigger their [Callable]s on idle time (at the end of "
"the frame), rather than instantly."
msgstr ""
"Отложенные соединения активируют свои [Callable] во время простоя (в конце "
"кадра), а не мгновенно."

msgid ""
"Persisting connections are stored when the object is serialized (such as when "
"using [method PackedScene.pack]). In the editor, connections created through "
"the Node dock are always persisting."
msgstr ""
"Сохраняющиеся соединения сохраняются при сериализации объекта (например, при "
"использовании [method PackedScene.pack]). В редакторе соединения, созданные "
"через док-станцию Node, всегда сохраняются."

msgid "One-shot connections disconnect themselves after emission."
msgstr "Одноразовые соединения автоматически отключаются после выброса."

msgid ""
"Reference-counted connections can be assigned to the same [Callable] multiple "
"times. Each disconnection decreases the internal counter. The signal fully "
"disconnects only when the counter reaches 0."
msgstr ""
"Ссылки-подсчетные соединения могут быть назначены одному и тому же [Callable] "
"несколько раз. Каждое отключение уменьшает внутренний счетчик. Сигнал "
"полностью отключается только тогда, когда счетчик достигает 0."

msgid ""
"The source object is automatically bound when a [PackedScene] is "
"instantiated. If this flag bit is enabled, the source object will be appended "
"right after the original arguments of the signal."
msgstr ""
"Исходный объект автоматически привязывается при создании экземпляра "
"[PackedScene]. Если этот флаговый бит включен, исходный объект будет добавлен "
"сразу после исходных аргументов сигнала."

msgid ""
"Occluder shape resource for use with occlusion culling in "
"[OccluderInstance3D]."
msgstr ""
"Ресурс формы окклюдера для использования с отбраковкой окклюзии в "
"[OccluderInstance3D]."

msgid ""
"[Occluder3D] stores an occluder shape that can be used by the engine's "
"occlusion culling system.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[Occluder3D] хранит форму окклюдера, которую может использовать система "
"отсечения окклюзии движка.\n"
"Инструкции по настройке отсечения окклюзии см. в документации "
"[OccluderInstance3D]."

msgid "Returns the occluder shape's vertex indices."
msgstr "Возвращает индексы вершин фигуры окклюдера."

msgid "Returns the occluder shape's vertex positions."
msgstr "Возвращает положения вершин фигуры окклюдера."

msgid ""
"Provides occlusion culling for 3D nodes, which improves performance in closed "
"areas."
msgstr ""
"Обеспечивает отбраковку окклюзии для 3D-узлов, что повышает "
"производительность в закрытых областях."

msgid ""
"Occlusion culling can improve rendering performance in closed/semi-open areas "
"by hiding geometry that is occluded by other objects.\n"
"The occlusion culling system is mostly static. [OccluderInstance3D]s can be "
"moved or hidden at run-time, but doing so will trigger a background "
"recomputation that can take several frames. It is recommended to only move "
"[OccluderInstance3D]s sporadically (e.g. for procedural generation purposes), "
"rather than doing so every frame.\n"
"The occlusion culling system works by rendering the occluders on the CPU in "
"parallel using [url=https://www.embree.org/]Embree[/url], drawing the result "
"to a low-resolution buffer then using this to cull 3D nodes individually. In "
"the 3D editor, you can preview the occlusion culling buffer by choosing "
"[b]Perspective > Display Advanced... > Occlusion Culling Buffer[/b] in the "
"top-left corner of the 3D viewport. The occlusion culling buffer quality can "
"be adjusted in the Project Settings.\n"
"[b]Baking:[/b] Select an [OccluderInstance3D] node, then use the [b]Bake "
"Occluders[/b] button at the top of the 3D editor. Only opaque materials will "
"be taken into account; transparent materials (alpha-blended or alpha-tested) "
"will be ignored by the occluder generation.\n"
"[b]Note:[/b] Occlusion culling is only effective if [member "
"ProjectSettings.rendering/occlusion_culling/use_occlusion_culling] is "
"[code]true[/code]. Enabling occlusion culling has a cost on the CPU. Only "
"enable occlusion culling if you actually plan to use it. Large open scenes "
"with few or no objects blocking the view will generally not benefit much from "
"occlusion culling. Large open scenes generally benefit more from mesh LOD and "
"visibility ranges ([member GeometryInstance3D.visibility_range_begin] and "
"[member GeometryInstance3D.visibility_range_end]) compared to occlusion "
"culling.\n"
"[b]Note:[/b] Due to memory constraints, occlusion culling is not supported by "
"default in Web export templates. It can be enabled by compiling custom Web "
"export templates with [code]module_raycast_enabled=yes[/code]."
msgstr ""
"Отбраковка окклюзии может улучшить производительность рендеринга в закрытых/"
"полуоткрытых областях, скрывая геометрию, которая закрыта другими объектами.\n"
"Система отбраковки окклюзии в основном статична. [OccluderInstance3D]s можно "
"перемещать или скрывать во время выполнения, но это вызовет фоновый "
"перерасчет, который может занять несколько кадров. Рекомендуется перемещать "
"[OccluderInstance3D]s только спорадически (например, для целей процедурной "
"генерации), а не делать это каждый кадр.\n"
"Система отбраковки окклюзии работает путем параллельной визуализации "
"окклюдеров на CPU с использованием [url=https://www.embree.org/]Embree[/url], "
"рисуя результат в буфер с низким разрешением, а затем используя его для "
"индивидуальной отбраковки 3D-узлов. В 3D-редакторе можно предварительно "
"просмотреть буфер отсечения окклюзии, выбрав [b]Perspective > Display "
"Advanced... > Occlusion Culling Buffer[/b] в левом верхнем углу 3D-вида. "
"Качество буфера отсечения окклюзии можно настроить в настройках проекта.\n"
"[b]Запекание:[/b] Выберите узел [OccluderInstance3D], затем нажмите кнопку "
"[b]Bake Occluders[/b] в верхней части 3D-редактора. Будут учитываться только "
"непрозрачные материалы; прозрачные материалы (альфа-смешанные или альфа-"
"тестированные) будут игнорироваться при генерации окклюдера.\n"
"[b]Примечание:[/b] Отсеивание окклюзии эффективно только в том случае, если "
"[member ProjectSettings.rendering/occlusion_culling/use_occlusion_culling] "
"имеет значение [code]true[/code]. Включение отсечения окклюзии влечет за "
"собой затраты на CPU. Включайте отсечение окклюзии только в том случае, если "
"вы действительно планируете его использовать. Большие открытые сцены с "
"небольшим количеством или отсутствием объектов, блокирующих вид, как правило, "
"не получат большой выгоды от отсечения окклюзии. Большие открытые сцены, как "
"правило, получают больше пользы от LOD сетки и диапазонов видимости ([member "
"GeometryInstance3D.visibility_range_begin] и [member "
"GeometryInstance3D.visibility_range_end]) по сравнению с отсечением "
"окклюзии.\n"
"[b]Примечание:[/b] Из-за ограничений памяти отсечение окклюзии по умолчанию "
"не поддерживается в шаблонах веб-экспорта. Его можно включить, скомпилировав "
"пользовательские шаблоны веб-экспорта с помощью "
"[code]module_raycast_enabled=yes[/code]."

msgid ""
"The visual layers to account for when baking for occluders. Only "
"[MeshInstance3D]s whose [member VisualInstance3D.layers] match with this "
"[member bake_mask] will be included in the generated occluder mesh. By "
"default, all objects with [i]opaque[/i] materials are taken into account for "
"the occluder baking.\n"
"To improve performance and avoid artifacts, it is recommended to exclude "
"dynamic objects, small objects and fixtures from the baking process by moving "
"them to a separate visual layer and excluding this layer in [member "
"bake_mask]."
msgstr ""
"Визуальные слои, которые следует учитывать при запекании для окклюдеров. В "
"сгенерированную сетку окклюдера будут включены только [MeshInstance3D], чьи "
"[member VisualInstance3D.layers] соответствуют этому [member bake_mask]. По "
"умолчанию все объекты с [i]непрозрачными[/i] материалами учитываются при "
"запекании окклюдера.\n"
"Для повышения производительности и избежания артефактов рекомендуется "
"исключить динамические объекты, мелкие объекты и приспособления из процесса "
"запекания, переместив их на отдельный визуальный слой и исключив этот слой в "
"[member bake_mask]."

msgid ""
"The simplification distance to use for simplifying the generated occluder "
"polygon (in 3D units). Higher values result in a less detailed occluder mesh, "
"which improves performance but reduces culling accuracy.\n"
"The occluder geometry is rendered on the CPU, so it is important to keep its "
"geometry as simple as possible. Since the buffer is rendered at a low "
"resolution, less detailed occluder meshes generally still work well. The "
"default value is fairly aggressive, so you may have to decrease it if you run "
"into false negatives (objects being occluded even though they are visible by "
"the camera). A value of [code]0.01[/code] will act conservatively, and will "
"keep geometry [i]perceptually[/i] unaffected in the occlusion culling buffer. "
"Depending on the scene, a value of [code]0.01[/code] may still simplify the "
"mesh noticeably compared to disabling simplification entirely.\n"
"Setting this to [code]0.0[/code] disables simplification entirely, but "
"vertices in the exact same position will still be merged. The mesh will also "
"be re-indexed to reduce both the number of vertices and indices.\n"
"[b]Note:[/b] This uses the [url=https://meshoptimizer.org/]meshoptimizer[/"
"url] library under the hood, similar to LOD generation."
msgstr ""
"Расстояние для упрощения, используемое для упрощения сгенерированного "
"полигона окклюдера (в 3D-единицах). Более высокие значения приводят к менее "
"подробной сетке окклюдера, что повышает производительность, но снижает "
"точность отбраковки.\n"
"Геометрия окклюдера визуализируется на CPU, поэтому важно сохранить ее "
"геометрию максимально простой. Поскольку буфер визуализируется с низким "
"разрешением, менее подробные сетки окклюдера, как правило, все равно работают "
"хорошо. Значение по умолчанию довольно агрессивное, поэтому вам, возможно, "
"придется уменьшить его, если вы столкнетесь с ложными отрицательными "
"результатами (объекты будут скрыты, хотя они видны камере). Значение "
"[code]0.01[/code] будет действовать консервативно и сохранит геометрию "
"[i]перцепционно[/i] не затронутой в буфере отбраковки окклюдера. В "
"зависимости от сцены значение [code]0.01[/code] все еще может заметно "
"упростить сетку по сравнению с полным отключением упрощения.\n"
"Установка этого значения в [code]0.0[/code] полностью отключает упрощение, но "
"вершины в точно таком же положении все равно будут объединены. Сетка также "
"будет переиндексирована, чтобы уменьшить как количество вершин, так и "
"индексов.\n"
"[b]Примечание:[/b] Это использует библиотеку [url=https://"
"meshoptimizer.org/]meshoptimizer[/url] под капотом, аналогично генерации LOD."

msgid ""
"The occluder resource for this [OccluderInstance3D]. You can generate an "
"occluder resource by selecting an [OccluderInstance3D] node then using the "
"[b]Bake Occluders[/b] button at the top of the editor.\n"
"You can also draw your own 2D occluder polygon by adding a new "
"[PolygonOccluder3D] resource to the [member occluder] property in the "
"Inspector.\n"
"Alternatively, you can select a primitive occluder to use: [QuadOccluder3D], "
"[BoxOccluder3D] or [SphereOccluder3D]."
msgstr ""
"Ресурс окклюдера для этого [OccluderInstance3D]. Вы можете сгенерировать "
"ресурс окклюдера, выбрав узел [OccluderInstance3D], а затем нажав кнопку "
"[b]Bake Occluders[/b] в верхней части редактора.\n"
"Вы также можете нарисовать свой собственный 2D-полигон окклюдера, добавив "
"новый ресурс [PolygonOccluder3D] к свойству [member occluder] в Инспекторе.\n"
"В качестве альтернативы вы можете выбрать примитивный окклюдер для "
"использования: [QuadOccluder3D], [BoxOccluder3D] или [SphereOccluder3D]."

msgid "Defines a 2D polygon for LightOccluder2D."
msgstr "Определяет 2D-полигон для LightOccluder2D."

msgid ""
"Editor facility that helps you draw a 2D polygon used as resource for "
"[LightOccluder2D]."
msgstr ""
"Редактор, который поможет вам нарисовать 2D-полигон, используемый в качестве "
"ресурса для [LightOccluder2D]."

msgid ""
"If [code]true[/code], closes the polygon. A closed OccluderPolygon2D occludes "
"the light coming from any direction. An opened OccluderPolygon2D occludes the "
"light only at its outline's direction."
msgstr ""
"Если [code]true[/code], закрывает многоугольник. Закрытый OccluderPolygon2D "
"закрывает свет, идущий с любого направления. Открытый OccluderPolygon2D "
"закрывает свет только в направлении своего контура."

msgid "The culling mode to use."
msgstr "Режим отбраковки, который следует использовать."

msgid "A [Vector2] array with the index for polygon's vertices positions."
msgstr "Массив [Vector2] с индексом положений вершин многоугольника."

msgid "Culling is disabled. See [member cull_mode]."
msgstr "Отбраковка отключена. См. [member cull_mode]."

msgid "Culling is performed in the clockwise direction. See [member cull_mode]."
msgstr "Отбраковка производится по часовой стрелке. См. [member cull_mode]."

msgid ""
"Culling is performed in the counterclockwise direction. See [member "
"cull_mode]."
msgstr "Отбраковка производится против часовой стрелки. См. [member cull_mode]."

msgid "A [MultiplayerPeer] which is always connected and acts as a server."
msgstr "[MultiplayerPeer], который всегда подключен и действует как сервер."

msgid ""
"This is the default [member MultiplayerAPI.multiplayer_peer] for the [member "
"Node.multiplayer]. It mimics the behavior of a server with no peers "
"connected.\n"
"This means that the [SceneTree] will act as the multiplayer authority by "
"default. Calls to [method MultiplayerAPI.is_server] will return [code]true[/"
"code], and calls to [method MultiplayerAPI.get_unique_id] will return "
"[constant MultiplayerPeer.TARGET_PEER_SERVER]."
msgstr ""
"Это [member MultiplayerAPI.multiplayer_peer] по умолчанию для [member "
"Node.multiplayer]. Он имитирует поведение сервера без подключенных пиров.\n"
"Это означает, что [SceneTree] будет действовать как многопользовательский по "
"умолчанию. Вызовы [method MultiplayerAPI.is_server] вернут [code]true[/code], "
"а вызовы [method MultiplayerAPI.get_unique_id] вернут [constant "
"MultiplayerPeer.TARGET_PEER_SERVER]."

msgid "A sequence of Ogg packets."
msgstr "Последовательность пакетов Ogg."

msgid "The length of this stream, in seconds."
msgstr "Продолжительность этого потока в секундах."

msgid "Contains the granule positions for each page in this packet sequence."
msgstr ""
"Содержит позиции гранул для каждой страницы в этой последовательности пакетов."

msgid "Contains the raw packets that make up this OggPacketSequence."
msgstr "Содержит необработанные пакеты, составляющие этот OggPacketSequence."

msgid ""
"Holds sample rate information about this sequence. Must be set by another "
"class that actually understands the codec."
msgstr ""
"Содержит информацию о частоте дискретизации этой последовательности. Должен "
"быть установлен другим классом, который фактически понимает кодек."

msgid "Omnidirectional light, such as a light bulb or a candle."
msgstr "Всенаправленный свет, например, от лампочки или свечи."

msgid ""
"An Omnidirectional light is a type of [Light3D] that emits light in all "
"directions. The light is attenuated by distance and this attenuation can be "
"configured by changing its energy, radius, and attenuation parameters.\n"
"[b]Note:[/b] When using the Mobile rendering method, only 8 omni lights can "
"be displayed on each mesh resource. Attempting to display more than 8 omni "
"lights on a single mesh resource will result in omni lights flickering in and "
"out as the camera moves. When using the Compatibility rendering method, only "
"8 omni lights can be displayed on each mesh resource by default, but this can "
"be increased by adjusting [member ProjectSettings.rendering/limits/opengl/"
"max_lights_per_object].\n"
"[b]Note:[/b] When using the Mobile or Compatibility rendering methods, omni "
"lights will only correctly affect meshes whose visibility AABB intersects "
"with the light's AABB. If using a shader to deform the mesh in a way that "
"makes it go outside its AABB, [member GeometryInstance3D.extra_cull_margin] "
"must be increased on the mesh. Otherwise, the light may not be visible on the "
"mesh."
msgstr ""
"Всенаправленный свет — это тип [Light3D], который излучает свет во всех "
"направлениях. Свет ослабевает с расстоянием, и это ослабление можно "
"настроить, изменив его энергию, радиус и параметры затухания.\n"
"[b]Примечание:[/b] При использовании метода рендеринга Mobile на каждом "
"ресурсе сетки может отображаться только 8 источников света omni. Попытка "
"отобразить более 8 источников света omni на одном ресурсе сетки приведет к "
"мерцанию источников света omni при движении камеры. При использовании метода "
"рендеринга Compatibility на каждом ресурсе сетки по умолчанию может "
"отображаться только 8 источников света omni, но это число можно увеличить, "
"настроив [member ProjectSettings.rendering/limits/opengl/"
"max_lights_per_object].\n"
"[b]Примечание:[/b] При использовании методов рендеринга Mobile или "
"Compatibility источники света omni будут правильно влиять только на те сетки, "
"видимость AABB которых пересекается с AABB источника света. Если используется "
"шейдер для деформации сетки таким образом, что она выходит за пределы своего "
"AABB, [member GeometryInstance3D.extra_cull_margin] должен быть увеличен на "
"сетке. В противном случае свет может быть не виден на сетке."

msgid ""
"Controls the distance attenuation function for omnilights.\n"
"A value of [code]0.0[/code] will maintain a constant brightness through most "
"of the range, but smoothly attenuate the light at the edge of the range. Use "
"a value of [code]2.0[/code] for physically accurate lights as it results in "
"the proper inverse square attenutation.\n"
"[b]Note:[/b] Setting attenuation to [code]2.0[/code] or higher may result in "
"distant objects receiving minimal light, even within range. For example, with "
"a range of [code]4096[/code], an object at [code]100[/code] units is "
"attenuated by a factor of [code]0.0001[/code]. With a default brightness of "
"[code]1[/code], the light would not be visible at that distance.\n"
"[b]Note:[/b] Using negative or values higher than [code]10.0[/code] may lead "
"to unexpected results."
msgstr ""
"Управляет функцией затухания на расстоянии для всенаправленных источников "
"света.\n"
"Значение [code]0.0[/code] будет поддерживать постоянную яркость на протяжении "
"большей части диапазона, но плавно ослаблять свет на границе диапазона. "
"Используйте значение [code]2.0[/code] для физически точных источников света, "
"поскольку оно обеспечивает правильное обратноквадратичное затухание.\n"
"[b]Примечание:[/b] Установка затухания на [code]2.0[/code] или выше может "
"привести к тому, что удаленные объекты будут получать минимальный свет, даже "
"в пределах диапазона. Например, при диапазоне [code]4096[/code] объект на "
"[code]100[/code] единиц ослабляется с коэффициентом [code]0.0001[/code]. При "
"яркости по умолчанию [code]1[/code] свет не будет виден на этом расстоянии.\n"
"[b]Примечание:[/b] Использование отрицательных или значений выше [code]10.0[/"
"code] может привести к неожиданным результатам."

msgid ""
"The light's radius. Note that the effectively lit area may appear to be "
"smaller depending on the [member omni_attenuation] in use. No matter the "
"[member omni_attenuation] in use, the light will never reach anything outside "
"this radius.\n"
"[b]Note:[/b] [member omni_range] is not affected by [member Node3D.scale] "
"(the light's scale or its parent's scale)."
msgstr ""
"Радиус света. Обратите внимание, что эффективно освещенная область может "
"казаться меньше в зависимости от используемого [member omni_attenuation]. "
"Независимо от используемого [member omni_attenuation], свет никогда не "
"достигнет ничего за пределами этого радиуса.\n"
"[b]Примечание:[/b] [member omni_range] не зависит от [member Node3D.scale] "
"(масштаба света или масштаба его родителя)."

msgid ""
"Shadows are rendered to a dual-paraboloid texture. Faster than [constant "
"SHADOW_CUBE], but lower-quality."
msgstr ""
"Тени визуализируются в текстуру двойного параболоида. Быстрее, чем [constant "
"SHADOW_CUBE], но хуже по качеству."

msgid ""
"Shadows are rendered to a cubemap. Slower than [constant "
"SHADOW_DUAL_PARABOLOID], but higher-quality."
msgstr ""
"Тени рендерятся в кубическую карту. Медленнее, чем [constant "
"SHADOW_DUAL_PARABOLOID], но качественнее."

msgid "An OpenXR action."
msgstr "Действие OpenXR."

msgid ""
"This resource defines an OpenXR action. Actions can be used both for inputs "
"(buttons, joysticks, triggers, etc.) and outputs (haptics).\n"
"OpenXR performs automatic conversion between action type and input type "
"whenever possible. An analog trigger bound to a boolean action will thus "
"return [code]false[/code] if the trigger is depressed and [code]true[/code] "
"if pressed fully.\n"
"Actions are not directly bound to specific devices, instead OpenXR recognizes "
"a limited number of top level paths that identify devices by usage. We can "
"restrict which devices an action can be bound to by these top level paths. "
"For instance an action that should only be used for hand held controllers can "
"have the top level paths \"/user/hand/left\" and \"/user/hand/right\" "
"associated with them. See the [url=https://www.khronos.org/registry/OpenXR/"
"specs/1.0/html/xrspec.html#semantic-path-reserved]reserved path section in "
"the OpenXR specification[/url] for more info on the top level paths.\n"
"Note that the name of the resource is used to register the action with."
msgstr ""
"Этот ресурс определяет действие OpenXR. Действия могут использоваться как для "
"входов (кнопки, джойстики, триггеры и т. д.), так и для выходов (тактильные "
"сигналы).\n"
"OpenXR выполняет автоматическое преобразование между типом действия и типом "
"ввода, когда это возможно. Аналоговый триггер, привязанный к логическому "
"действию, таким образом вернет [code]false[/code], если триггер нажат, и "
"[code]true[/code], если он нажат полностью.\n"
"Действия не привязаны напрямую к определенным устройствам, вместо этого "
"OpenXR распознает ограниченное количество путей верхнего уровня, которые "
"идентифицируют устройства по использованию. Мы можем ограничить, к каким "
"устройствам может быть привязано действие, этими путями верхнего уровня. "
"Например, действие, которое должно использоваться только для ручных "
"контроллеров, может иметь связанные с ними пути верхнего уровня \"/user/hand/"
"left\" и \"/user/hand/right\". Дополнительную информацию о путях верхнего "
"уровня см. в разделе [url=https://www.khronos.org/registry/OpenXR/specs/1.0/"
"html/xrspec.html#semantic-path-reserved]зарезервированный путь в спецификации "
"OpenXR[/url].\n"
"Обратите внимание, что для регистрации действия используется имя ресурса."

msgid "The type of action."
msgstr "Тип действия."

msgid "The localized description of this action."
msgstr "Локализованное описание этого действия."

msgid "A collections of toplevel paths to which this action can be bound."
msgstr ""
"Набор путей верхнего уровня, к которым может быть привязано это действие."

msgid "This action provides a boolean value."
msgstr "Это действие возвращает логическое значение."

msgid ""
"This action provides a float value between [code]0.0[/code] and [code]1.0[/"
"code] for any analog input such as triggers."
msgstr ""
"Это действие предоставляет плавающее значение между [code]0.0[/code] и "
"[code]1.0[/code] для любого аналогового входа, такого как триггеры."

msgid ""
"This action provides a [Vector2] value and can be bound to embedded trackpads "
"and joysticks."
msgstr ""
"Это действие предоставляет значение [Vector2] и может быть привязано к "
"встроенным трекпадам и джойстикам."

msgid ""
"Binding modifier that applies on individual actions related to an interaction "
"profile."
msgstr ""
"Модификатор привязки, применяемый к отдельным действиям, связанным с профилем "
"взаимодействия."

msgid ""
"Collection of [OpenXRActionSet] and [OpenXRInteractionProfile] resources for "
"the OpenXR module."
msgstr ""
"Коллекция ресурсов [OpenXRActionSet] и [OpenXRInteractionProfile] для модуля "
"OpenXR."

msgid ""
"OpenXR uses an action system similar to Godots Input map system to bind "
"inputs and outputs on various types of XR controllers to named actions. "
"OpenXR specifies more detail on these inputs and outputs than Godot "
"supports.\n"
"Another important distinction is that OpenXR offers no control over these "
"bindings. The bindings we register are suggestions, it is up to the XR "
"runtime to offer users the ability to change these bindings. This allows the "
"XR runtime to fill in the gaps if new hardware becomes available.\n"
"The action map therefore needs to be loaded at startup and can't be changed "
"afterwards. This resource is a container for the entire action map."
msgstr ""
"OpenXR использует систему действий, похожую на систему карт ввода Godots, для "
"привязки входов и выходов на различных типах контроллеров XR к именованным "
"действиям. OpenXR определяет больше подробностей об этих входах и выходах, "
"чем поддерживает Godot.\n"
"Еще одно важное отличие заключается в том, что OpenXR не предлагает контроля "
"над этими привязками. Привязки, которые мы регистрируем, являются "
"предложениями, среда выполнения XR должна предоставить пользователям "
"возможность изменять эти привязки. Это позволяет среде выполнения XR "
"заполнять пробелы, если появляется новое оборудование.\n"
"Поэтому карту действий необходимо загружать при запуске, и ее нельзя изменить "
"впоследствии. Этот ресурс является контейнером для всей карты действий."

msgid "Add an action set."
msgstr "Добавить набор действий."

msgid "Add an interaction profile."
msgstr "Добавить профиль взаимодействия."

msgid "Setup this action set with our default actions."
msgstr "Настройте этот набор действий с помощью наших действий по умолчанию."

msgid "Retrieve an action set by name."
msgstr "Получить набор действий по имени."

msgid "Find an interaction profile by its name (path)."
msgstr "Найдите профиль взаимодействия по его названию (пути)."

msgid "Retrieve the action set at this index."
msgstr "Получить набор действий по этому индексу."

msgid "Retrieve the number of actions sets in our action map."
msgstr "Получите количество наборов действий в нашей карте действий."

msgid "Get the interaction profile at this index."
msgstr "Получите профиль взаимодействия по этому индексу."

msgid "Retrieve the number of interaction profiles in our action map."
msgstr "Получите количество профилей взаимодействия на нашей карте действий."

msgid "Remove an action set."
msgstr "Удалить набор действий."

msgid "Remove an interaction profile."
msgstr "Удалить профиль взаимодействия."

msgid "Collection of [OpenXRActionSet]s that are part of this action map."
msgstr ""
"Коллекция [OpenXRActionSet], которые являются частью этой карты действий."

msgid ""
"Collection of [OpenXRInteractionProfile]s that are part of this action map."
msgstr ""
"Коллекция [OpenXRInteractionProfile], которые являются частью этой карты "
"действий."

msgid "Collection of [OpenXRAction] resources that make up an action set."
msgstr "Коллекция ресурсов [OpenXRAction], составляющих набор действий."

msgid ""
"Action sets in OpenXR define a collection of actions that can be activated in "
"unison. This allows games to easily change between different states that "
"require different inputs or need to reinterpret inputs. For instance we could "
"have an action set that is active when a menu is open, an action set that is "
"active when the player is freely walking around and an action set that is "
"active when the player is controlling a vehicle.\n"
"Action sets can contain the same action with the same name, if such action "
"sets are active at the same time the action set with the highest priority "
"defines which binding is active."
msgstr ""
"Наборы действий в OpenXR определяют набор действий, которые могут быть "
"активированы одновременно. Это позволяет играм легко переключаться между "
"различными состояниями, требующими разных входов или переосмысления входов. "
"Например, у нас может быть набор действий, который активен, когда открыто "
"меню, набор действий, который активен, когда игрок свободно ходит, и набор "
"действий, который активен, когда игрок управляет транспортным средством.\n"
"Наборы действий могут содержать одно и то же действие с одним и тем же "
"именем, если такие наборы действий активны одновременно, набор действий с "
"наивысшим приоритетом определяет, какая привязка активна."

msgid "Add an action to this action set."
msgstr "Добавьте действие в этот набор действий."

msgid "Retrieve the number of actions in our action set."
msgstr "Получите количество действий в нашем наборе действий."

msgid "Remove an action from this action set."
msgstr "Удалить действие из этого набора действий."

msgid "Collection of actions for this action set."
msgstr "Коллекция действий для этого набора действий."

msgid "The localized name of this action set."
msgstr "Локализованное название этого набора действий."

msgid "The priority for this action set."
msgstr "Приоритет для этого действия установлен."

msgid ""
"The analog threshold binding modifier can modify a float input to a boolean "
"input with specified thresholds."
msgstr ""
"Модификатор привязки аналогового порога может преобразовать плавающий входной "
"сигнал в логический входной сигнал с указанными пороговыми значениями."

msgid ""
"The analog threshold binding modifier can modify a float input to a boolean "
"input with specified thresholds.\n"
"See [url=https://registry.khronos.org/OpenXR/specs/1.1/html/"
"xrspec.html#XR_VALVE_analog_threshold]XR_VALVE_analog_threshold[/url] for in-"
"depth details."
msgstr ""
"Модификатор привязки аналогового порога может преобразовать вход с плавающей "
"точкой в логический вход с указанными порогами.\n"
"Подробные сведения см. в [url=https://registry.khronos.org/OpenXR/specs/1.1/"
"html/xrspec.html#XR_VALVE_analog_threshold]XR_VALVE_analog_threshold[/url]."

msgid "Haptic pulse to emit when the user releases the input."
msgstr ""
"Тактильный импульс, генерируемый, когда пользователь отпускает клавишу ввода."

msgid ""
"When our input value falls below this, our output becomes [code]false[/code]."
msgstr ""
"Когда наше входное значение падает ниже этого значения, наш выход становится "
"[code]false[/code]."

msgid "Haptic pulse to emit when the user presses the input."
msgstr ""
"Тактильный импульс, генерируемый при нажатии пользователем кнопки ввода."

msgid ""
"When our input value is equal or larger than this value, our output becomes "
"[code]true[/code]. It stays [code]true[/code] until it falls under the "
"[member off_threshold] value."
msgstr ""
"Когда наше входное значение равно или больше этого значения, наш выход "
"становится [code]true[/code]. Он остается [code]true[/code] до тех пор, пока "
"не станет ниже значения [member off_threshold]."

msgid "Makes the OpenXR API available for GDExtension."
msgstr "Делает API OpenXR доступным для GDExtension."

msgid ""
"[OpenXRAPIExtension] makes OpenXR available for GDExtension. It provides the "
"OpenXR API to GDExtension through the [method get_instance_proc_addr] method, "
"and the OpenXR instance through [method get_instance].\n"
"It also provides methods for querying the status of OpenXR initialization, "
"and helper methods for ease of use of the API with GDExtension."
msgstr ""
"[OpenXRAPIExtension] делает OpenXR доступным для GDExtension. Он "
"предоставляет API OpenXR для GDExtension через метод [method "
"get_instance_proc_addr] и экземпляр OpenXR через [method get_instance]. \n"
"Он также предоставляет методы для запроса статуса инициализации OpenXR и "
"вспомогательные методы для простоты использования API с GDExtension."

msgid "XrResult documentation"
msgstr "Документация XrResult"

msgid "XrInstance documentation"
msgstr "Документация XrInstance"

msgid "XrSpace documentation"
msgstr "Документация XrSpace"

msgid "XrSession documentation"
msgstr "Документация XrSession"

msgid "XrSystemId documentation"
msgstr "Документация XrSystemId"

msgid "xrBeginSession documentation"
msgstr "Документация xrBeginSession"

msgid "XrPosef documentation"
msgstr "Документация XrPosef"

msgid ""
"Returns the corresponding [code]XrAction[/code] OpenXR handle for the given "
"action RID."
msgstr ""
"Возвращает соответствующий дескриптор OpenXR [code]XrAction[/code] для "
"указанного RID действия."

msgid ""
"Begins a new debug label region, this label will be reported in debug "
"messages for any calls following this until [method end_debug_label_region] "
"is called. Debug labels can be stacked."
msgstr ""
"Начинает новую область отладочной метки, эта метка будет сообщаться в "
"отладочных сообщениях для любых вызовов, следующих за этим, пока не будет "
"вызван [method end_debug_label_region]. Отладочные метки могут быть сложены."

msgid ""
"Returns [code]true[/code] if OpenXR is initialized for rendering with an XR "
"viewport."
msgstr ""
"Возвращает [code]true[/code], если OpenXR инициализирован для рендеринга с "
"областью просмотра XR."

msgid ""
"Marks the end of a debug label region. Removes the latest debug label region "
"added by calling [method begin_debug_label_region]."
msgstr ""
"Отмечает конец области отладочной метки. Удаляет последнюю область отладочной "
"метки, добавленную вызовом [method begin_debug_label_region]."

msgid ""
"Returns the [RID] corresponding to an [code]Action[/code] of a matching name, "
"optionally limited to a specified action set."
msgstr ""
"Возвращает [RID], соответствующий [code]Действию[/code] совпадающего имени, "
"при необходимости ограниченному указанным набором действий."

msgid ""
"Returns an error string for the given [url=https://registry.khronos.org/"
"OpenXR/specs/1.0/man/html/XrResult.html]XrResult[/url]."
msgstr ""
"Возвращает строку ошибки для указанного [url=https://registry.khronos.org/"
"OpenXR/specs/1.0/man/html/XrResult.html]XrResult[/url]."

msgid ""
"Returns the corresponding [code]XRHandTrackerEXT[/code] handle for the given "
"hand index value."
msgstr ""
"Возвращает соответствующий дескриптор [code]XRHandTrackerEXT[/code] для "
"заданного значения индекса руки."

msgid ""
"Returns the [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/"
"XrInstance.html]XrInstance[/url] created during the initialization of the "
"OpenXR API."
msgstr ""
"Возвращает [url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/"
"XrInstance.html]XrInstance[/url], созданный во время инициализации API OpenXR."

msgid ""
"Returns the function pointer of the OpenXR function with the specified name, "
"cast to an integer. If the function with the given name does not exist, the "
"method returns [code]0[/code].\n"
"[b]Note:[/b] [code]openxr/util.h[/code] contains utility macros for acquiring "
"OpenXR functions, e.g. [code]GDEXTENSION_INIT_XR_FUNC_V(xrCreateAction)[/"
"code]."
msgstr ""
"Возвращает указатель функции OpenXR с указанным именем, приведенный к целому "
"числу. Если функция с указанным именем не существует, метод возвращает "
"[code]0[/code].\n"
"[b]Примечание:[/b] [code]openxr/util.h[/code] содержит служебные макросы для "
"получения функций OpenXR, например, "
"[code]GDEXTENSION_INIT_XR_FUNC_V(xrCreateAction)[/code]."

msgid "Returns the predicted display timing for the next frame."
msgstr "Возвращает прогнозируемое время отображения следующего кадра."

msgid ""
"Returns the play space, which is an [url=https://registry.khronos.org/OpenXR/"
"specs/1.0/man/html/XrSpace.html]XrSpace[/url] cast to an integer."
msgstr ""
"Возвращает игровое пространство, которое представляет собой [url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/XrSpace.html]XrSpace[/url], "
"приведенное к целому числу."

msgid "Returns the predicted display timing for the current frame."
msgstr "Возвращает прогнозируемое время отображения текущего кадра."

msgid ""
"Returns a pointer to the render state's [code]XrCompositionLayerProjection[/"
"code] struct.\n"
"[b]Note:[/b] This method should only be called from the rendering thread."
msgstr ""
"Возвращает указатель на структуру [code]XrCompositionLayerProjection[/code] "
"состояния рендеринга.\n"
"[b]Примечание:[/b] Этот метод следует вызывать только из потока рендеринга."

msgid ""
"Returns the far boundary value of the camera frustum.\n"
"[b]Note:[/b] This is only accessible in the render thread."
msgstr ""
"Возвращает значение дальней границы усеченной пирамиды видимости камеры.\n"
"[b]Примечание:[/b] Это доступно только в потоке рендеринга."

msgid ""
"Returns the near boundary value of the camera frustum.\n"
"[b]Note:[/b] This is only accessible in the render thread."
msgstr ""
"Возвращает ближнее граничное значение пирамиды видимости камеры.\n"
"[b]Примечание:[/b] Это доступно только в потоке рендеринга."

msgid ""
"Returns the OpenXR session, which is an [url=https://registry.khronos.org/"
"OpenXR/specs/1.0/man/html/XrSession.html]XrSession[/url] cast to an integer."
msgstr ""
"Возвращает сеанс OpenXR, который представляет собой [url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/XrSession.html]XrSession[/"
"url], преобразованный в целое число."

msgid "Returns an array of supported swapchain formats."
msgstr "Возвращает массив поддерживаемых форматов цепочки обмена."

msgid "Returns the name of the specified swapchain format."
msgstr "Возвращает имя указанного формата цепочки обмена."

msgid ""
"Returns the id of the system, which is an [url=https://registry.khronos.org/"
"OpenXR/specs/1.0/man/html/XrSystemId.html]XrSystemId[/url] cast to an integer."
msgstr ""
"Возвращает идентификатор системы, который представляет собой [url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/XrSystemId.html]XrSystemId[/"
"url], преобразованный в целое число."

msgid ""
"Inserts a debug label, this label is reported in any debug message resulting "
"from the OpenXR calls that follows, until any of [method "
"begin_debug_label_region], [method end_debug_label_region], or [method "
"insert_debug_label] is called."
msgstr ""
"Вставляет метку отладки, эта метка отображается в любом отладочном сообщении, "
"полученном в результате последующих вызовов OpenXR, пока не будет вызван "
"любой из методов [method begin_debug_label_region], [method "
"end_debug_label_region] или [method insert_debug_label]."

msgid ""
"Returns [enum OpenXRAPIExtension.OpenXRAlphaBlendModeSupport] denoting if "
"[constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] is really supported, "
"emulated or not supported at all."
msgstr ""
"Возвращает [enum OpenXRAPIExtension.OpenXRAlphaBlendModeSupport], "
"указывающий, поддерживается ли [constant "
"XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] на самом деле, эмулируется или не "
"поддерживается вообще."

msgid "Returns [code]true[/code] if OpenXR is initialized."
msgstr "Возвращает [code]true[/code], если OpenXR инициализирован."

msgid ""
"Returns [code]true[/code] if OpenXR is running ([url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/"
"xrBeginSession.html]xrBeginSession[/url] was successfully called and the "
"swapchains were created)."
msgstr ""
"Возвращает [code]true[/code], если OpenXR запущен ([url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/"
"xrBeginSession.html]xrBeginSession[/url] был успешно вызван и цепочки обмена "
"были созданы)."

msgid "Returns [code]true[/code] if OpenXR is enabled."
msgstr "Возвращает [code]true[/code], если OpenXR включен."

msgid "Acquires the image of the provided swapchain."
msgstr "Получает изображение предоставленной цепочки обмена."

msgid ""
"Returns a pointer to a new swapchain created using the provided parameters."
msgstr ""
"Возвращает указатель на новую цепочку обмена, созданную с использованием "
"предоставленных параметров."

msgid "Destroys the provided swapchain and frees it from memory."
msgstr "Уничтожает предоставленную цепочку обмена и освобождает ее из памяти."

msgid "Returns the RID of the provided swapchain's image."
msgstr "Возвращает RID предоставленного образа цепочки обмена."

msgid "Returns the [code]XrSwapchain[/code] handle of the provided swapchain."
msgstr ""
"Возвращает дескриптор [code]XrSwapchain[/code] предоставленной цепочки обмена."

msgid "Releases the image of the provided swapchain."
msgstr "Выпускает образ предоставленной цепочки обмена."

msgid "Registers the given extension as a composition layer provider."
msgstr "Регистрирует указанное расширение как поставщик слоя композиции."

msgid ""
"Registers the given extension as modifying frame info via the [method "
"OpenXRExtensionWrapper._set_frame_wait_info_and_get_next_pointer], [method "
"OpenXRExtensionWrapper._set_view_locate_info_and_get_next_pointer], or "
"[method OpenXRExtensionWrapper._set_frame_end_info_and_get_next_pointer] "
"virtual methods."
msgstr ""
"Регистрирует заданное расширение как изменяющее информацию о кадре с помощью "
"виртуальных методов [method "
"OpenXRExtensionWrapper._set_frame_wait_info_and_get_next_pointer], [method "
"OpenXRExtensionWrapper._set_view_locate_info_and_get_next_pointer] или "
"[method OpenXRExtensionWrapper._set_frame_end_info_and_get_next_pointer]."

msgid ""
"Registers the given extension as a provider of additional data structures to "
"projections views."
msgstr ""
"Регистрирует указанное расширение как поставщик дополнительных структур "
"данных для представлений проекций."

msgid ""
"Sets the reference space used by OpenXR to the given [url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/XrSpace.html]XrSpace[/url] "
"(cast to a [code]void *[/code])."
msgstr ""
"Устанавливает ссылочное пространство, используемое OpenXR, на указанное "
"[url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/"
"XrSpace.html]XrSpace[/url] (приводится к [code]void *[/code])."

msgid ""
"If set to [code]true[/code], an OpenXR extension is loaded which is capable "
"of emulating the [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] blend "
"mode."
msgstr ""
"Если установлено значение [code]true[/code], загружается расширение OpenXR, "
"способное эмулировать режим смешивания [constant "
"XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND]."

msgid ""
"Set the object name of an OpenXR object, used for debug output. [param "
"object_type] must be a valid OpenXR [code]XrObjectType[/code] enum and [param "
"object_handle] must be a valid OpenXR object handle."
msgstr ""
"Задайте имя объекта OpenXR, используемого для отладочного вывода. [param "
"object_type] должен быть допустимым перечислением OpenXR [code]XrObjectType[/"
"code], а [param object_handle] должен быть допустимым дескриптором объекта "
"OpenXR."

msgid ""
"Sets the render region to [param render_region], overriding the normal render "
"target's rect."
msgstr ""
"Устанавливает область рендеринга на [param render_region], переопределяя "
"прямоугольник обычной цели рендеринга."

msgid "Sets the render target of the velocity depth texture."
msgstr "Устанавливает цель рендеринга текстуры глубины скорости."

msgid "Sets the target size of the velocity and velocity depth textures."
msgstr "Устанавливает целевой размер текстур скорости и глубины скорости."

msgid "Sets the render target of the velocity texture."
msgstr "Устанавливает цель рендеринга текстуры скорости."

msgid ""
"Creates a [Transform3D] from an [url=https://registry.khronos.org/OpenXR/"
"specs/1.0/man/html/XrPosef.html]XrPosef[/url]."
msgstr ""
"Создает [Transform3D] из [url=https://registry.khronos.org/OpenXR/specs/1.0/"
"man/html/XrPosef.html]XrPosef[/url]."

msgid "Unregisters the given extension as a composition layer provider."
msgstr ""
"Отменяет регистрацию указанного расширения как поставщика слоя композиции."

msgid "Unregisters the given extension as modifying frame info."
msgstr ""
"Отменяет регистрацию указанного расширения как изменяющего информацию о кадре."

msgid ""
"Unregisters the given extension as a provider of additional data structures "
"to projections views."
msgstr ""
"Отменяет регистрацию указанного расширения как поставщика дополнительных "
"структур данных для проекционных представлений."

msgid ""
"Returns [code]true[/code] if the provided [url=https://registry.khronos.org/"
"OpenXR/specs/1.0/man/html/XrResult.html]XrResult[/url] (cast to an integer) "
"is successful. Otherwise returns [code]false[/code] and prints the "
"[url=https://registry.khronos.org/OpenXR/specs/1.0/man/html/"
"XrResult.html]XrResult[/url] converted to a string, with the specified "
"additional information."
msgstr ""
"Возвращает [code]true[/code], если предоставленный [url=https://"
"registry.khronos.org/OpenXR/specs/1.0/man/html/XrResult.html]XrResult[/url] "
"(приведенный к целому числу) успешен. В противном случае возвращает "
"[code]false[/code] и печатает [url=https://registry.khronos.org/OpenXR/specs/"
"1.0/man/html/XrResult.html]XrResult[/url], преобразованный в строку, с "
"указанной дополнительной информацией."

msgid ""
"Means that [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] isn't "
"supported at all."
msgstr ""
"Означает, что [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] вообще не "
"поддерживается."

msgid ""
"Means that [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] is really "
"supported."
msgstr ""
"Означает, что [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] "
"действительно поддерживается."

msgid ""
"Means that [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] is emulated."
msgstr ""
"Означает, что [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] "
"эмулируется."

msgid "Binding modifier base class."
msgstr "Базовый класс модификатора привязки."

msgid ""
"Binding modifier base class. Subclasses implement various modifiers that "
"alter how an OpenXR runtime processes inputs."
msgstr ""
"Базовый класс модификатора привязки. Подклассы реализуют различные "
"модификаторы, которые изменяют способ обработки входных данных средой "
"выполнения OpenXR."

msgid ""
"Return the description of this class that is used for the title bar of the "
"binding modifier editor."
msgstr ""
"Верните описание этого класса, которое используется для строки заголовка "
"редактора модификаторов привязки."

msgid ""
"Returns the data that is sent to OpenXR when submitting the suggested "
"interacting bindings this modifier is a part of.\n"
"[b]Note:[/b] This must be data compatible with an "
"[code]XrBindingModificationBaseHeaderKHR[/code] structure."
msgstr ""
"Возвращает данные, отправляемые в OpenXR при отправке предлагаемых "
"взаимодействующих привязок, частью которых является этот модификатор.\n"
"[b]Примечание:[/b] Данные должны быть совместимы со структурой "
"[code]XrBindingModificationBaseHeaderKHR[/code]."

msgid "Binding modifier editor."
msgstr "Редактор модификаторов привязки."

msgid ""
"This is the default binding modifier editor used in the OpenXR action map."
msgstr ""
"Это редактор модификаторов привязки по умолчанию, используемый в карте "
"действий OpenXR."

msgid "Returns the [OpenXRBindingModifier] currently being edited."
msgstr ""
"Возвращает [OpenXRBindingModifier], который в данный момент редактируется."

msgid ""
"Setup this editor for the provided [param action_map] and [param "
"binding_modifier]."
msgstr ""
"Настройте этот редактор для предоставленных [param action_map] и [param "
"binding_modifier]."

msgid ""
"Signal emitted when the user presses the delete binding modifier button for "
"this modifier."
msgstr ""
"Сигнал издается, когда пользователь нажимает кнопку удаления модификатора "
"привязки для данного модификатора."

msgid "The parent class of all OpenXR composition layer nodes."
msgstr "Родительский класс всех узлов композиционного слоя OpenXR."

msgid ""
"Composition layers allow 2D viewports to be displayed inside of the headset "
"by the XR compositor through special projections that retain their quality. "
"This allows for rendering clear text while keeping the layer at a native "
"resolution.\n"
"[b]Note:[/b] If the OpenXR runtime doesn't support the given composition "
"layer type, a fallback mesh can be generated with a [ViewportTexture], in "
"order to emulate the composition layer."
msgstr ""
"Слои композиции позволяют отображать 2D-окна просмотра внутри гарнитуры с "
"помощью XR-композитора с помощью специальных проекций, которые сохраняют свое "
"качество. Это позволяет визуализировать чистый текст, сохраняя при этом "
"исходное разрешение слоя.\n"
"[b]Примечание:[/b] Если среда выполнения OpenXR не поддерживает заданный тип "
"слоя композиции, можно сгенерировать резервную сетку с помощью "
"[ViewportTexture], чтобы эмулировать слой композиции."

msgid ""
"Returns a [JavaObject] representing an [code]android.view.Surface[/code] if "
"[member use_android_surface] is enabled and OpenXR has created the surface. "
"Otherwise, this will return [code]null[/code].\n"
"[b]Note:[/b] The surface can only be created during an active OpenXR session. "
"So, if [member use_android_surface] is enabled outside of an OpenXR session, "
"it won't be created until a new session fully starts."
msgstr ""
"Возвращает [JavaObject], представляющий [code]android.view.Surface[/code], "
"если [member use_android_surface] включен и OpenXR создал поверхность. В "
"противном случае будет возвращен [code]null[/code].\n"
"[b]Примечание:[/b] Поверхность может быть создана только во время активного "
"сеанса OpenXR. Таким образом, если [member use_android_surface] включен вне "
"сеанса OpenXR, она не будет создана, пока полностью не начнется новый сеанс."

msgid ""
"Returns UV coordinates where the given ray intersects with the composition "
"layer. [param origin] and [param direction] must be in global space.\n"
"Returns [code]Vector2(-1.0, -1.0)[/code] if the ray doesn't intersect."
msgstr ""
"Возвращает UV-координаты, где заданный луч пересекается со слоем композиции. "
"[param origin] и [param direction] должны быть в глобальном пространстве.\n"
"Возвращает [code]Vector2(-1.0, -1.0)[/code], если луч не пересекается."

msgid ""
"Returns [code]true[/code] if the OpenXR runtime natively supports this "
"composition layer type.\n"
"[b]Note:[/b] This will only return an accurate result after the OpenXR "
"session has started."
msgstr ""
"Возвращает [code]true[/code], если среда выполнения OpenXR изначально "
"поддерживает этот тип слоя композиции.\n"
"[b]Примечание:[/b] Это вернет точный результат только после начала сеанса "
"OpenXR."

msgid ""
"Enables the blending the layer using its alpha channel.\n"
"Can be combined with [member Viewport.transparent_bg] to give the layer a "
"transparent background."
msgstr ""
"Позволяет смешивать слой с использованием его альфа-канала.\n"
"Можно комбинировать с [member Viewport.transparent_bg], чтобы придать слою "
"прозрачный фон."

msgid ""
"The size of the Android surface to create if [member use_android_surface] is "
"enabled."
msgstr ""
"Размер создаваемой поверхности Android, если включен [member "
"use_android_surface]."

msgid ""
"Enables a technique called \"hole punching\", which allows putting the "
"composition layer behind the main projection layer (i.e. setting [member "
"sort_order] to a negative value) while \"punching a hole\" through everything "
"rendered by Godot so that the layer is still visible.\n"
"This can be used to create the illusion that the composition layer exists in "
"the same 3D space as everything rendered by Godot, allowing objects to appear "
"to pass both behind or in front of the composition layer."
msgstr ""
"Позволяет использовать технику, называемую «дырокол», которая позволяет "
"размещать слой композиции за основным проекционным слоем (т. е. устанавливать "
"[member sort_order] на отрицательное значение), одновременно «пробивая дыру» "
"через все, что визуализируется Godot, так что слой все еще виден. \n"
"Это можно использовать для создания иллюзии того, что слой композиции "
"существует в том же трехмерном пространстве, что и все, что визуализируется "
"Godot, позволяя объектам казаться проходящими как позади, так и перед слоем "
"композиции."

msgid "The [SubViewport] to render on the composition layer."
msgstr "[SubViewport] для рендеринга на слое композиции."

msgid ""
"The sort order for this composition layer. Higher numbers will be shown in "
"front of lower numbers.\n"
"[b]Note:[/b] This will have no effect if a fallback mesh is being used."
msgstr ""
"Порядок сортировки для этого слоя композиции. Более высокие числа будут "
"показаны перед более низкими числами.\n"
"[b]Примечание:[/b] Это не будет иметь никакого эффекта, если используется "
"резервная сетка."

msgid ""
"The swizzle value for the alpha channel of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Значение swizzle для альфа-канала состояния swapchain.\n"
"[b]Примечание:[/b] Это свойство влияет только на устройства, которые "
"поддерживают расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The swizzle value for the blue channel of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Значение swizzle для синего канала состояния swapchain.\n"
"[b]Примечание:[/b] Это свойство влияет только на устройства, которые "
"поддерживают расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The border color of the swapchain state that is used when the wrap mode "
"clamps to the border.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Цвет границы состояния цепочки обмена, который используется, когда режим "
"переноса привязывается к границе.\n"
"[b]Примечание:[/b] Это свойство действует только на устройствах, "
"поддерживающих расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The swizzle value for the green channel of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Значение swizzle для зеленого канала состояния swapchain.\n"
"[b]Примечание:[/b] Это свойство влияет только на устройства, которые "
"поддерживают расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The horizontal wrap mode of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Режим горизонтального переноса состояния цепочки обмена.\n"
"[b]Примечание:[/b] Это свойство действует только на устройствах, которые "
"поддерживают расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The magnification filter of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Фильтр увеличения состояния цепочки обмена.\n"
"[b]Примечание:[/b] Это свойство действует только на устройствах, которые "
"поддерживают расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The max anisotropy of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Максимальная анизотропия состояния swapchain.\n"
"[b]Примечание:[/b] Это свойство влияет только на устройства, которые "
"поддерживают расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The minification filter of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Фильтр минификации состояния swapchain.\n"
"[b]Примечание:[/b] Это свойство действует только на устройствах, которые "
"поддерживают расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The mipmap mode of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Режим mipmap состояния swapchain.\n"
"[b]Примечание:[/b] Это свойство действует только на устройствах, которые "
"поддерживают расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The swizzle value for the red channel of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Значение swizzle для красного канала состояния swapchain.\n"
"[b]Примечание:[/b] Это свойство влияет только на устройства, которые "
"поддерживают расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"The vertical wrap mode of the swapchain state.\n"
"[b]Note:[/b] This property only has an effect on devices that support the "
"OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan extensions."
msgstr ""
"Режим вертикального переноса состояния цепочки обмена.\n"
"[b]Примечание:[/b] Это свойство действует только на устройствах, которые "
"поддерживают расширения OpenXR XR_FB_swapchain_update_state OpenGLES/Vulkan."

msgid ""
"If enabled, an Android surface will be created (with the dimensions from "
"[member android_surface_size]) which will provide the 2D content for the "
"composition layer, rather than using [member layer_viewport].\n"
"See [method get_android_surface] for information about how to get the surface "
"so that your application can draw to it.\n"
"[b]Note:[/b] This will only work in Android builds."
msgstr ""
"Если включено, будет создана поверхность Android (с размерами из [member "
"android_surface_size]), которая предоставит 2D-контент для слоя композиции, а "
"не будет использовать [member layer_viewport].\n"
"См. [method get_android_surface] для получения информации о том, как получить "
"поверхность, чтобы ваше приложение могло рисовать на ней.\n"
"[b]Примечание:[/b] Это будет работать только в сборках Android."

msgid "Perform nearest-neighbor filtering when sampling the texture."
msgstr "При выборке текстуры следует выполнять фильтрацию ближайшего соседа."

msgid "Perform linear filtering when sampling the texture."
msgstr "Выполняйте линейную фильтрацию при выборке текстуры."

msgid "Perform cubic filtering when sampling the texture."
msgstr "При выборке текстуры выполняйте кубическую фильтрацию."

msgid ""
"Disable mipmapping.\n"
"[b]Note:[/b] Mipmapping can only be disabled in the Compatibility renderer."
msgstr ""
"Отключить MIP-текстурирование.\n"
"[b]Примечание:[/b] MIP-текстурирование можно отключить только в режиме "
"совместимости."

msgid "Use the mipmap of the nearest resolution."
msgstr "Используйте mipmap ближайшего разрешения."

msgid "Use linear interpolation of the two mipmaps of the nearest resolution."
msgstr "Использовать линейную интерполяцию двух MIP-карт ближайшего разрешения."

msgid "Clamp the texture to its specified border color."
msgstr "Закрепите текстуру по указанному цвету границы."

msgid "Clamp the texture to its edge color."
msgstr "Закрепите текстуру по цвету ее кромки."

msgid "Repeat the texture infinitely."
msgstr "Повторяйте текстуру бесконечно."

msgid "Repeat the texture infinitely, mirroring it on each repeat."
msgstr ""
"Повторяйте текстуру бесконечно, зеркально отображая ее при каждом повторе."

msgid ""
"Mirror the texture once and then clamp the texture to its edge color.\n"
"[b]Note:[/b] This wrap mode is not available in the Compatibility renderer."
msgstr ""
"Отразите текстуру один раз, а затем прикрепите её к цвету края.\n"
"[b]Примечание:[/b] Этот режим обтекания недоступен в рендере совместимости."

msgid "Maps a color channel to the value of the red channel."
msgstr "Сопоставляет цветовой канал со значением красного канала."

msgid "Maps a color channel to the value of the green channel."
msgstr "Сопоставляет цветовой канал со значением зеленого канала."

msgid "Maps a color channel to the value of the blue channel."
msgstr "Сопоставляет цветовой канал со значением синего канала."

msgid "Maps a color channel to the value of the alpha channel."
msgstr "Сопоставляет цветовой канал со значением альфа-канала."

msgid "Maps a color channel to the value of zero."
msgstr "Сопоставляет цветовой канал со значением ноль."

msgid "Maps a color channel to the value of one."
msgstr "Сопоставляет цветовой канал со значением единицы."

msgid ""
"An OpenXR composition layer that is rendered as an internal slice of a "
"cylinder."
msgstr ""
"Слой композиции OpenXR, который визуализируется как внутренний срез цилиндра."

msgid ""
"An OpenXR composition layer that allows rendering a [SubViewport] on an "
"internal slice of a cylinder."
msgstr ""
"Слой композиции OpenXR, позволяющий визуализировать [SubViewport] на "
"внутреннем срезе цилиндра."

msgid ""
"The aspect ratio of the slice. Used to set the height relative to the width."
msgstr ""
"Соотношение сторон среза. Используется для установки высоты относительно "
"ширины."

msgid "The central angle of the cylinder. Used to set the width."
msgstr "Центральный угол цилиндра. Используется для установки ширины."

msgid "The number of segments to use in the fallback mesh."
msgstr "Количество сегментов, используемых в резервной сетке."

msgid ""
"An OpenXR composition layer that is rendered as an internal slice of a sphere."
msgstr ""
"Слой композиции OpenXR, который визуализируется как внутренний срез сферы."

msgid ""
"An OpenXR composition layer that allows rendering a [SubViewport] on an "
"internal slice of a sphere."
msgstr ""
"Слой композиции OpenXR, позволяющий визуализировать [SubViewport] на "
"внутреннем срезе сферы."

msgid "The central horizontal angle of the sphere. Used to set the width."
msgstr ""
"Центральный горизонтальный угол сферы. Используется для установки ширины."

msgid ""
"The lower vertical angle of the sphere. Used (together with [member "
"upper_vertical_angle]) to set the height."
msgstr ""
"Нижний вертикальный угол сферы. Используется (вместе с [member "
"upper_vertical_angle]) для установки высоты."

msgid "The radius of the sphere."
msgstr "Радиус сферы."

msgid ""
"The upper vertical angle of the sphere. Used (together with [member "
"lower_vertical_angle]) to set the height."
msgstr ""
"Верхний вертикальный угол сферы. Используется (вместе с [member "
"lower_vertical_angle]) для установки высоты."

msgid "An OpenXR composition layer that is rendered as a quad."
msgstr "Слой композиции OpenXR, отображаемый как четырехугольник."

msgid ""
"An OpenXR composition layer that allows rendering a [SubViewport] on a quad."
msgstr ""
"Слой композиции OpenXR, позволяющий визуализировать [SubViewport] на "
"четырехугольнике."

msgid "The dimensions of the quad."
msgstr "Размеры квадроцикла (четырехугольника)."

msgid "The DPad binding modifier converts an axis input to a dpad output."
msgstr ""
"Модификатор привязки DPad преобразует входные данные оси в выходные данные "
"dpad."

msgid ""
"The DPad binding modifier converts an axis input to a dpad output, emulating "
"a DPad. New input paths for each dpad direction will be added to the "
"interaction profile. When bound to actions the DPad emulation will be "
"activated. You should [b]not[/b] combine dpad inputs with normal inputs in "
"the same action set for the same control, this will result in an error being "
"returned when suggested bindings are submitted to OpenXR.\n"
"See [url=https://registry.khronos.org/OpenXR/specs/1.1/html/"
"xrspec.html#XR_EXT_dpad_binding]XR_EXT_dpad_binding[/url] for in-depth "
"details.\n"
"[b]Note:[/b] If the DPad binding modifier extension is enabled, all dpad "
"binding paths will be available in the action map. Adding the modifier to an "
"interaction profile allows you to further customize the behavior."
msgstr ""
"Модификатор привязки DPad преобразует ввод оси в вывод dpad, эмулируя DPad. "
"Новые пути ввода для каждого направления dpad будут добавлены в профиль "
"взаимодействия. При привязке к действиям будет активирована эмуляция DPad. "
"Вам [b]не[/b] следует объединять вводы dpad с обычными вводами в одном наборе "
"действий для одного и того же элемента управления, это приведет к возврату "
"ошибки при отправке предлагаемых привязок в OpenXR.\n"
"Подробные сведения см. на [url=https://registry.khronos.org/OpenXR/specs/1.1/"
"html/xrspec.html#XR_EXT_dpad_binding]XR_EXT_dpad_binding[/url].\n"
"[b]Примечание:[/b] Если расширение модификатора привязки DPad включено, все "
"пути привязки dpad будут доступны в карте действий. Добавление модификатора в "
"профиль взаимодействия позволяет дополнительно настроить поведение."

msgid "Action set for which this dpad binding modifier is active."
msgstr "Набор действий, для которых активен этот модификатор привязки dpad."

msgid ""
"Center region in which our center position of our dpad return [code]true[/"
"code]."
msgstr ""
"Центральная область, в которой центральное положение нашего dpad возвращает "
"[code]true[/code]."

msgid "Input path for this dpad binding modifier."
msgstr "Входной путь для этого модификатора привязки dpad."

msgid ""
"If [code]false[/code], when the joystick enters a new dpad zone this becomes "
"[code]true[/code].\n"
"If [code]true[/code], when the joystick remains in active dpad zone, this "
"remains [code]true[/code] even if we overlap with another zone."
msgstr ""
"Если [code]false[/code], когда джойстик входит в новую зону dpad, это "
"становится [code]true[/code]. \n"
"Если [code]true[/code], когда джойстик остается в активной зоне dpad, тогда "
"остается [code]true[/code], даже если мы пересекаемся с другой зоной."

msgid ""
"When our input value is equal or larger than this value, our dpad in that "
"direction becomes [code]true[/code]. It stays [code]true[/code] until it "
"falls under the [member threshold_released] value."
msgstr ""
"Когда наше входное значение равно или больше этого значения, наш dpad в этом "
"направлении становится [code]true[/code]. Он остается [code]true[/code] до "
"тех пор, пока не станет ниже значения [member threshold_released]."

msgid ""
"The angle of each wedge that identifies the 4 directions of the emulated dpad."
msgstr "Угол каждого клина, определяющий 4 направления эмулируемого dpad."

msgid "Allows implementing OpenXR extensions with GDExtension."
msgstr "Позволяет реализовывать расширения OpenXR с помощью GDExtension."

msgid ""
"[OpenXRExtensionWrapper] allows implementing OpenXR extensions with "
"GDExtension. The extension should be registered with [method "
"register_extension_wrapper]."
msgstr ""
"[OpenXRExtensionWrapper] позволяет реализовать расширения OpenXR с помощью "
"GDExtension. Расширение должно быть зарегистрировано с помощью [method "
"register_extension_wrapper]."

msgid ""
"Returns a pointer to an [code]XrCompositionLayerBaseHeader[/code] struct to "
"provide the given composition layer.\n"
"This will only be called if the extension previously registered itself with "
"[method OpenXRAPIExtension.register_composition_layer_provider]."
msgstr ""
"Возвращает указатель на структуру [code]XrCompositionLayerBaseHeader[/code] "
"для предоставления указанного слоя композиции. \n"
"Это будет вызвано только в том случае, если расширение ранее зарегистрировало "
"себя с помощью [method "
"OpenXRAPIExtension.register_composition_layer_provider]."

msgid ""
"Returns the number of composition layers this extension wrapper provides via "
"[method _get_composition_layer].\n"
"This will only be called if the extension previously registered itself with "
"[method OpenXRAPIExtension.register_composition_layer_provider]."
msgstr ""
"Возвращает количество слоев композиции, которые эта оболочка расширения "
"предоставляет через [method _get_composition_layer]. \n"
"Это будет вызвано только в том случае, если расширение ранее зарегистрировало "
"себя с помощью [method "
"OpenXRAPIExtension.register_composition_layer_provider]."

msgid ""
"Returns an integer that will be used to sort the given composition layer "
"provided via [method _get_composition_layer]. Lower numbers will move the "
"layer to the front of the list, and higher numbers to the end. The default "
"projection layer has an order of [code]0[/code], so layers provided by this "
"method should probably be above or below (but not exactly) [code]0[/code].\n"
"This will only be called if the extension previously registered itself with "
"[method OpenXRAPIExtension.register_composition_layer_provider]."
msgstr ""
"Возвращает целое число, которое будет использоваться для сортировки "
"указанного слоя композиции, предоставленного через [method "
"_get_composition_layer]. Меньшие числа переместят слой в начало списка, а "
"большие числа — в конец. Слой проекции по умолчанию имеет порядок [code]0[/"
"code], поэтому слои, предоставленные этим методом, вероятно, должны быть выше "
"или ниже (но не точно) [code]0[/code]. \n"
"Это будет вызвано только в том случае, если расширение ранее зарегистрировало "
"себя с помощью [method "
"OpenXRAPIExtension.register_composition_layer_provider]."

msgid ""
"Returns a [Dictionary] of OpenXR extensions related to this extension. The "
"[Dictionary] should contain the name of the extension, mapped to a [code]bool "
"*[/code] cast to an integer:\n"
"- If the [code]bool *[/code] is a [code]nullptr[/code] this extension is "
"mandatory.\n"
"- If the [code]bool *[/code] points to a boolean, the boolean will be updated "
"to [code]true[/code] if the extension is enabled."
msgstr ""
"Возвращает [Словарь] расширений OpenXR, связанных с этим расширением. "
"[Dictionary] должен содержать имя расширения, сопоставленное с [code]bool *[/"
"code], приведенное к целому числу:\n"
"- Если [code]bool *[/code] является [code]nullptr[/code], это расширение "
"является обязательным.\n"
"- Если [code]bool *[/code] указывает на логическое значение, логическое "
"значение будет обновлено до [code]true[/code], если расширение включено."

msgid ""
"Returns a [PackedStringArray] of positional tracker names that are used "
"within the extension wrapper."
msgstr ""
"Возвращает [PackedStringArray] имен позиционных трекеров, которые "
"используются внутри оболочки расширения."

msgid ""
"Gets an array of [Dictionary]s that represent properties, just like [method "
"Object._get_property_list], that will be added to [OpenXRCompositionLayer] "
"nodes."
msgstr ""
"Получает массив [Dictionary], представляющих свойства, такие как [method "
"Object._get_property_list], которые будут добавлены к узлам "
"[OpenXRCompositionLayer]."

msgid ""
"Gets a [Dictionary] containing the default values for the properties returned "
"by [method _get_viewport_composition_layer_extension_properties]."
msgstr ""
"Получает [Dictionary], содержащий значения по умолчанию для свойств, "
"возвращаемых [method _get_viewport_composition_layer_extension_properties]."

msgid "Called before the OpenXR instance is created."
msgstr "Вызывается перед созданием экземпляра OpenXR."

msgid ""
"Called when there is an OpenXR event to process. When implementing, return "
"[code]true[/code] if the event was handled, return [code]false[/code] "
"otherwise."
msgstr ""
"Вызывается, когда есть событие OpenXR для обработки. При реализации верните "
"[code]true[/code], если событие было обработано, в противном случае верните "
"[code]false[/code]."

msgid "Called right after the OpenXR instance is created."
msgstr "Вызывается сразу после создания экземпляра OpenXR."

msgid "Called right before the OpenXR instance is destroyed."
msgstr "Вызывается непосредственно перед уничтожением экземпляра OpenXR."

msgid "Called right after the main swapchains are (re)created."
msgstr "Вызывается сразу после (пере)создания основных цепочек обмена."

msgid ""
"Called right after the given viewport is rendered.\n"
"[b]Note:[/b] The draw commands might only be queued at this point, not "
"executed."
msgstr ""
"Вызывается сразу после того, как указанная область просмотра отрисована.\n"
"[b]Примечание:[/b] Команды отрисовки могут быть только поставлены в очередь "
"на этом этапе, но не выполнены."

msgid "Called right before the given viewport is rendered."
msgstr ""
"Вызывается непосредственно перед визуализацией заданной области просмотра."

msgid "Called right before the XR viewports begin their rendering step."
msgstr ""
"Вызывается непосредственно перед тем, как вьюпорты XR начинают этап "
"рендеринга."

msgid ""
"Called as part of the OpenXR process handling. This happens right before "
"general and physics processing steps of the main loop. During this step "
"controller data is queried and made available to game logic."
msgstr ""
"Вызывается как часть обработки процесса OpenXR. Это происходит прямо перед "
"общими и физическими этапами обработки основного цикла. Во время этого этапа "
"данные контроллера запрашиваются и становятся доступными для игровой логики."

msgid ""
"Allows extensions to register additional controller metadata. This function "
"is called even when the OpenXR API is not constructed as the metadata needs "
"to be available to the editor.\n"
"Extensions should also provide metadata regardless of whether they are "
"supported on the host system. The controller data is used to setup action "
"maps for users who may have access to the relevant hardware."
msgstr ""
"Позволяет расширениям регистрировать дополнительные метаданные контроллера. "
"Эта функция вызывается даже тогда, когда API OpenXR не создан, так как "
"метаданные должны быть доступны редактору.\n"
"Расширения также должны предоставлять метаданные независимо от того, "
"поддерживаются ли они в хост-системе. Данные контроллера используются для "
"настройки карт действий для пользователей, которые могут иметь доступ к "
"соответствующему оборудованию."

msgid "Called right after the OpenXR session is created."
msgstr "Вызывается сразу после создания сеанса OpenXR."

msgid "Called right before the OpenXR session is destroyed."
msgstr "Вызывается непосредственно перед уничтожением сеанса OpenXR."

msgid "Called when the OpenXR session state is changed to exiting."
msgstr "Вызывается, когда состояние сеанса OpenXR изменяется на выход."

msgid ""
"Called when the OpenXR session state is changed to focused. This state is the "
"active state when the game runs."
msgstr ""
"Вызывается, когда состояние сеанса OpenXR меняется на сфокусированное. Это "
"состояние является активным, когда игра запущена."

msgid "Called when the OpenXR session state is changed to idle."
msgstr ""
"Вызывается, когда состояние сеанса OpenXR изменяется на состояние ожидания."

msgid "Called when the OpenXR session state is changed to loss pending."
msgstr ""
"Вызывается, когда состояние сеанса OpenXR изменяется на «ожидание потери»."

msgid ""
"Called when the OpenXR session state is changed to ready. This means OpenXR "
"is ready to set up the session."
msgstr ""
"Вызывается, когда состояние сеанса OpenXR меняется на ready. Это означает, "
"что OpenXR готов настроить сеанс."

msgid "Called when the OpenXR session state is changed to stopping."
msgstr "Вызывается, когда состояние сеанса OpenXR изменяется на остановку."

msgid ""
"Called when the OpenXR session state is changed to synchronized. OpenXR also "
"returns to this state when the application loses focus."
msgstr ""
"Вызывается, когда состояние сеанса OpenXR меняется на синхронизированное. "
"OpenXR также возвращается в это состояние, когда приложение теряет фокус."

msgid ""
"Called when the OpenXR session state is changed to visible. This means OpenXR "
"is now ready to receive frames."
msgstr ""
"Вызывается, когда состояние сеанса OpenXR меняется на видимое. Это означает, "
"что OpenXR теперь готов принимать кадры."

msgid "Called when OpenXR has performed its action sync."
msgstr "Вызывается, когда OpenXR выполнил свое действие синхронизации."

msgid ""
"Called when a composition layer created via [OpenXRCompositionLayer] is "
"destroyed.\n"
"[param layer] is a pointer to an [code]XrCompositionLayerBaseHeader[/code] "
"struct."
msgstr ""
"Вызывается, когда слой композиции, созданный через [OpenXRCompositionLayer], "
"уничтожается.\n"
"[param layer] — это указатель на структуру "
"[code]XrCompositionLayerBaseHeader[/code]."

msgid ""
"Adds additional data structures to Android surface swapchains created by "
"[OpenXRCompositionLayer].\n"
"[param property_values] contains the values of the properties returned by "
"[method _get_viewport_composition_layer_extension_properties]."
msgstr ""
"Добавляет дополнительные структуры данных в цепочки обмена поверхностей "
"Android, созданные [OpenXRCompositionLayer].\n"
"[param property_values] содержит значения свойств, возвращаемых [method "
"_get_viewport_composition_layer_extension_properties]."

msgid ""
"Adds additional data structures to [code]XrFrameEndInfo[/code].\n"
"This will only be called if the extension previously registered itself with "
"[method OpenXRAPIExtension.register_frame_info_extension]."
msgstr ""
"Добавляет дополнительные структуры данных в [code]XrFrameEndInfo[/code].\n"
"Это будет вызвано только в том случае, если расширение ранее зарегистрировало "
"себя с помощью [method OpenXRAPIExtension.register_frame_info_extension]."

msgid ""
"Adds additional data structures to [code]XrFrameWaitInfo[/code].\n"
"This will only be called if the extension previously registered itself with "
"[method OpenXRAPIExtension.register_frame_info_extension]."
msgstr ""
"Добавляет дополнительные структуры данных в [code]XrFrameWaitInfo[/code].\n"
"Это будет вызвано только в том случае, если расширение ранее зарегистрировало "
"себя с помощью [method OpenXRAPIExtension.register_frame_info_extension]."

msgid "Adds additional data structures when each hand tracker is created."
msgstr ""
"Добавляет дополнительные структуры данных при создании каждого трекера рук."

msgid "Adds additional data structures when the OpenXR instance is created."
msgstr ""
"Добавляет дополнительные структуры данных при создании экземпляра OpenXR."

msgid ""
"Adds additional data structures to the projection view of the given [param "
"view_index]."
msgstr ""
"Добавляет дополнительные структуры данных к представлению проекции указанного "
"[param view_index]."

msgid ""
"Adds additional data structures to [code]XrReferenceSpaceCreateInfo[/code]."
msgstr ""
"Добавляет дополнительные структуры данных в [code]XrReferenceSpaceCreateInfo[/"
"code]."

msgid "Adds additional data structures when the OpenXR session is created."
msgstr "Добавляет дополнительные структуры данных при создании сеанса OpenXR."

msgid "Adds additional data structures when creating OpenXR swapchains."
msgstr ""
"Добавляет дополнительные структуры данных при создании цепочек обмена OpenXR."

msgid "Adds additional data structures when querying OpenXR system abilities."
msgstr ""
"Добавляет дополнительные структуры данных при запросе возможностей системы "
"OpenXR."

msgid ""
"Adds additional data structures to [code]XrViewLocateInfo[/code].\n"
"This will only be called if the extension previously registered itself with "
"[method OpenXRAPIExtension.register_frame_info_extension]."
msgstr ""
"Добавляет дополнительные структуры данных в [code]XrViewLocateInfo[/code].\n"
"Это будет вызвано только в том случае, если расширение ранее зарегистрировало "
"себя с помощью [method OpenXRAPIExtension.register_frame_info_extension]."

msgid ""
"Adds additional data structures to composition layers created by "
"[OpenXRCompositionLayer].\n"
"[param property_values] contains the values of the properties returned by "
"[method _get_viewport_composition_layer_extension_properties].\n"
"[param layer] is a pointer to an [code]XrCompositionLayerBaseHeader[/code] "
"struct."
msgstr ""
"Добавляет дополнительные структуры данных в слои композиции, созданные "
"[OpenXRCompositionLayer].\n"
"[param property_values] содержит значения свойств, возвращаемых [method "
"_get_viewport_composition_layer_extension_properties].\n"
"[param layer] — это указатель на структуру "
"[code]XrCompositionLayerBaseHeader[/code]."

msgid ""
"Returns the created [OpenXRAPIExtension], which can be used to access the "
"OpenXR API."
msgstr ""
"Возвращает созданный [OpenXRAPIExtension], который можно использовать для "
"доступа к API OpenXR."

msgid ""
"Registers the extension. This should happen at core module initialization "
"level."
msgstr ""
"Регистрирует расширение. Это должно произойти на уровне инициализации "
"основного модуля."

msgid "Use [OpenXRExtensionWrapper] instead."
msgstr "Вместо этого используйте [OpenXRExtensionWrapper]."

msgid ""
"[OpenXRExtensionWrapperExtension] allows implementing OpenXR extensions with "
"GDExtension. The extension should be registered with [method "
"OpenXRExtensionWrapper.register_extension_wrapper]."
msgstr ""
"[OpenXRExtensionWrapperExtension] позволяет реализовать расширения OpenXR с "
"помощью GDExtension. Расширение должно быть зарегистрировано с помощью "
"[method OpenXRExtensionWrapper.register_extension_wrapper]."

msgid "The OpenXR Future extension allows for asynchronous APIs to be used."
msgstr "Расширение OpenXR Future позволяет использовать асинхронные API."

msgid ""
"This is a support extension in OpenXR that allows other OpenXR extensions to "
"start asynchronous functions and get a callback after this function finishes. "
"It is not intended for consumption within GDScript but can be accessed from "
"GDExtension."
msgstr ""
"Это расширение поддержки в OpenXR, которое позволяет другим расширениям "
"OpenXR запускать асинхронные функции и получать обратный вызов после "
"завершения этой функции. Оно не предназначено для использования в GDScript, "
"но к нему можно получить доступ из GDExtension."

msgid ""
"Cancels an in-progress future. [param future] must be an [code]XrFutureEXT[/"
"code] value previously returned by an API that started an asynchronous "
"function."
msgstr ""
"Отменяет выполняемое будущее. [param future] должен быть значением "
"[code]XrFutureEXT[/code], ранее возвращенным API, запустившим асинхронную "
"функцию."

msgid ""
"Returns [code]true[/code] if futures are available in the OpenXR runtime "
"used. This function will only return a usable result after OpenXR has been "
"initialized."
msgstr ""
"Возвращает [code]true[/code], если в используемой среде выполнения OpenXR "
"доступны фьючерсы (futures). Эта функция вернет пригодный для использования "
"результат только после инициализации OpenXR."

msgid ""
"Register an OpenXR Future object so we monitor for completion. [param future] "
"must be an [code]XrFutureEXT[/code] value previously returned by an API that "
"started an asynchronous function.\n"
"You can optionally specify [param on_success], it will be invoked on "
"successful completion of the future.\n"
"Or you can use the returned [OpenXRFutureResult] object to [code]await[/code] "
"its [signal OpenXRFutureResult.completed] signal.\n"
"[codeblock]\n"
"var future_result = OpenXRFutureExtension.register_future(future)\n"
"await future_result.completed\n"
"if future_result.get_status() == OpenXRFutureResult.RESULT_FINISHED:\n"
"\t# Handle your success\n"
"\tpass\n"
"[/codeblock]"
msgstr ""
"Зарегистрируйте объект OpenXR Future, чтобы мы могли отслеживать завершение. "
"[param future] должен быть значением [code]XrFutureEXT[/code], ранее "
"возвращенным API, который запустил асинхронную функцию.\n"
"Вы можете дополнительно указать [param on_success], он будет вызван при "
"успешном завершении future.\n"
"Или вы можете использовать возвращенный объект [OpenXRFutureResult], чтобы "
"[code]await[/code] его сигнала [signal OpenXRFutureResult.completed].\n"
"[codeblock]\n"
"var future_result = OpenXRFutureExtension.register_future(future)\n"
"await future_result.completed\n"
"if future_result.get_status() == OpenXRFutureResult.RESULT_FINISHED:\n"
"\t# Управляйте своим успехом\n"
"\tpass\n"
"[/codeblock]"

msgid ""
"Result object tracking the asynchronous result of an OpenXR Future object."
msgstr ""
"Объект результата, отслеживающий асинхронный результат объекта OpenXR Future."

msgid ""
"Result object tracking the asynchronous result of an OpenXR Future object, "
"you can use this object to track the result status."
msgstr ""
"Объект результата, отслеживающий асинхронный результат объекта OpenXR Future. "
"Этот объект можно использовать для отслеживания статуса результата."

msgid ""
"Cancel this future, this will interrupt and stop the asynchronous function."
msgstr "Отмена этого будущего прервет и остановит асинхронную функцию."

msgid "Return the [code]XrFutureEXT[/code] value this result relates to."
msgstr ""
"Верните значение [code]XrFutureEXT[/code], к которому относится этот "
"результат."

msgid ""
"Returns the result value of our asynchronous function (if set by the "
"extension). The type of this result value depends on the function being "
"called. Consult the documentation of the relevant function."
msgstr ""
"Возвращает результирующее значение нашей асинхронной функции (если "
"установлено расширением). Тип этого результирующего значения зависит от "
"вызываемой функции. Обратитесь к документации соответствующей функции."

msgid "Returns the status of this result."
msgstr "Возвращает статус этого результата."

msgid ""
"Stores the result value we expose to the user.\n"
"[b]Note:[/b] This method should only be called by an OpenXR extension that "
"implements an asynchronous function."
msgstr ""
"Сохраняет значение результата, которое мы предоставляем пользователю.\n"
"[b]Примечание:[/b] Этот метод должен вызываться только расширением OpenXR, "
"реализующим асинхронную функцию."

msgid ""
"Emitted when the asynchronous function is finished or has been cancelled."
msgstr "Испускается, когда асинхронная функция завершена или отменена."

msgid "The asynchronous function is running."
msgstr "Асинхронная функция работает."

msgid "The asynchronous function has finished."
msgstr "Асинхронная функция завершена."

msgid "The asynchronous function has been cancelled."
msgstr "Асинхронная функция отменена."

msgid "Use [XRHandModifier3D] instead."
msgstr "Вместо этого используйте [XRHandModifier3D]."

msgid "Node supporting hand and finger tracking in OpenXR."
msgstr "Узел, поддерживающий отслеживание рук и пальцев в OpenXR."

msgid ""
"This node enables OpenXR's hand tracking functionality. The node should be a "
"child node of an [XROrigin3D] node, tracking will update its position to the "
"player's tracked hand Palm joint location (the center of the middle finger's "
"metacarpal bone). This node also updates the skeleton of a properly skinned "
"hand or avatar model.\n"
"If the skeleton is a hand (one of the hand bones is the root node of the "
"skeleton), then the skeleton will be placed relative to the hand palm "
"location and the hand mesh and skeleton should be children of the OpenXRHand "
"node.\n"
"If the hand bones are part of a full skeleton, then the root of the hand will "
"keep its location with the assumption that IK is used to position the hand "
"and arm.\n"
"By default the skeleton hand bones are repositioned to match the size of the "
"tracked hand. To preserve the modeled bone sizes change [member bone_update] "
"to apply rotation only."
msgstr ""
"Этот узел включает функцию отслеживания рук OpenXR. Узел должен быть дочерним "
"узлом узла [XROrigin3D], отслеживание обновит его положение в соответствии с "
"отслеживаемым положением сустава ладони руки игрока (центр пястной кости "
"среднего пальца). Этот узел также обновляет скелет правильно скинированной "
"руки или модели аватара.\n"
"Если скелет — это рука (одна из костей руки — корневой узел скелета), то "
"скелет будет размещен относительно положения ладони руки, а сетка руки и "
"скелет должны быть дочерними узлами OpenXRHand.\n"
"Если кости руки являются частью полного скелета, то корень руки сохранит свое "
"местоположение с предположением, что для позиционирования руки и руки "
"используется IK.\n"
"По умолчанию кости скелета руки изменяются в соответствии с размером "
"отслеживаемой руки. Чтобы сохранить смоделированные размеры костей, измените "
"[member bone_update] на применение только вращения."

msgid "Specify the type of updates to perform on the bone."
msgstr "Укажите тип обновлений, которые необходимо выполнить для кости."

msgid "Specifies whether this node tracks the left or right hand of the player."
msgstr "Указывает, отслеживает ли этот узел левую или правую руку игрока."

msgid "Set a [Skeleton3D] node for which the pose positions will be updated."
msgstr ""
"Установите узел [Skeleton3D], для которого будут обновлены положения поз."

msgid "Set the motion range (if supported) limiting the hand motion."
msgstr ""
"Установите диапазон движения (если поддерживается), ограничивающий движение "
"руки."

msgid ""
"Set the type of skeleton rig the [member hand_skeleton] is compliant with."
msgstr ""
"Установите тип скелетной оснастки, с которой совместим [member hand_skeleton]."

msgid "Tracking the player's left hand."
msgstr "Отслеживание левой руки игрока."

msgid "Tracking the player's right hand."
msgstr "Отслеживание правой руки игрока."

msgid "Maximum supported hands."
msgstr "Максимально поддерживаемые руки."

msgid "When player grips, hand skeleton will form a full fist."
msgstr "При захвате скелет руки игрока сформирует полный кулак."

msgid ""
"When player grips, hand skeleton conforms to the controller the player is "
"holding."
msgstr ""
"Когда игрок держит контроллер, скелет руки принимает форму контроллера, "
"который он держит."

msgid "Maximum supported motion ranges."
msgstr "Максимально поддерживаемые диапазоны движения."

msgid "An OpenXR compliant skeleton."
msgstr "Скелет, совместимый с OpenXR."

msgid "A [SkeletonProfileHumanoid] compliant skeleton."
msgstr "Скелет, соответствующий [SkeletonProfileHumanoid]."

msgid ""
"The skeletons bones are fully updated (both position and rotation) to match "
"the tracked bones."
msgstr ""
"Кости скелета полностью обновлены (как положение, так и поворот) для "
"соответствия отслеживаемым костям."

msgid ""
"The skeletons bones are only rotated to align with the tracked bones, "
"preserving bone length."
msgstr ""
"Кости скелета поворачиваются только для того, чтобы выровняться с "
"отслеживаемыми костями, сохраняя длину костей."

msgid "Maximum supported bone update mode."
msgstr "Максимально поддерживаемый режим обновления костей."

msgid "OpenXR Haptic feedback base class."
msgstr "Базовый класс тактильной обратной связи OpenXR."

msgid "This is a base class for haptic feedback resources."
msgstr "Это базовый класс для ресурсов тактильной обратной связи."

msgid "Vibration haptic feedback."
msgstr "Вибрационная тактильная обратная связь."

msgid ""
"This haptic feedback resource makes it possible to define a vibration based "
"haptic feedback pulse that can be triggered through actions in the OpenXR "
"action map."
msgstr ""
"Этот ресурс тактильной обратной связи позволяет определить импульс тактильной "
"обратной связи на основе вибрации, который может быть запущен с помощью "
"действий на карте действий OpenXR."

msgid ""
"The amplitude of the pulse between [code]0.0[/code] and [code]1.0[/code]."
msgstr "Амплитуда импульса между [code]0.0[/code] и [code]1.0[/code]."

msgid ""
"The duration of the pulse in nanoseconds. Use [code]-1[/code] for a minimum "
"duration pulse for the current XR runtime."
msgstr ""
"Длительность импульса в наносекундах. Используйте [code]-1[/code] для "
"минимальной длительности импульса для текущего времени выполнения XR."

msgid ""
"The frequency of the pulse in Hz. [code]0.0[/code] will let the XR runtime "
"chose an optimal frequency for the device used."
msgstr ""
"Частота импульса в Гц. [code]0.0[/code] позволит среде выполнения XR выбрать "
"оптимальную частоту для используемого устройства."

msgid "Suggested bindings object for OpenXR."
msgstr "Предлагаемый объект привязки для OpenXR."

msgid ""
"This object stores suggested bindings for an interaction profile. Interaction "
"profiles define the metadata for a tracked XR device such as an XR "
"controller.\n"
"For more information see the [url=https://www.khronos.org/registry/OpenXR/"
"specs/1.0/html/xrspec.html#semantic-path-interaction-profiles]interaction "
"profiles info in the OpenXR specification[/url]."
msgstr ""
"Этот объект хранит предлагаемые привязки для профиля взаимодействия. Профили "
"взаимодействия определяют метаданные для отслеживаемого устройства XR, такого "
"как контроллер XR.\n"
"Для получения дополнительной информации см. [url=https://www.khronos.org/"
"registry/OpenXR/specs/1.0/html/xrspec.html#semantic-path-interaction-"
"profiles]информацию о профилях взаимодействия в спецификации OpenXR[/url]."

msgid "Retrieve the binding at this index."
msgstr "Получить привязку по этому индексу."

msgid "Get the number of bindings in this interaction profile."
msgstr "Получите количество привязок в этом профиле взаимодействия."

msgid "Get the [OpenXRBindingModifier] at this index."
msgstr "Получите [OpenXRBindingModifier] по этому индексу."

msgid "Get the number of binding modifiers in this interaction profile."
msgstr ""
"Получите количество модификаторов привязки в этом профиле взаимодействия."

msgid "Binding modifiers for this interaction profile."
msgstr "Модификаторы привязки для этого профиля взаимодействия."

msgid "Action bindings for this interaction profile."
msgstr "Привязки действий для этого профиля взаимодействия."

msgid "The interaction profile path identifying the XR device."
msgstr "Путь профиля взаимодействия, идентифицирующий устройство XR."

msgid "Default OpenXR interaction profile editor."
msgstr "Редактор профиля взаимодействия OpenXR по умолчанию."

msgid ""
"This is the default OpenXR interaction profile editor that provides a generic "
"interface for editing any interaction profile for which no custom editor has "
"been defined."
msgstr ""
"Это редактор профилей взаимодействия OpenXR по умолчанию, который "
"предоставляет универсальный интерфейс для редактирования любого профиля "
"взаимодействия, для которого не определен пользовательский редактор."

msgid "Base class for editing interaction profiles."
msgstr "Базовый класс для редактирования профилей взаимодействия."

msgid ""
"This is a base class for interaction profile editors used by the OpenXR "
"action map editor. It can be used to create bespoke editors for specific "
"interaction profiles."
msgstr ""
"Это базовый класс для редакторов профилей взаимодействия, используемых "
"редактором карты действий OpenXR. Его можно использовать для создания "
"специальных редакторов для определенных профилей взаимодействия."

msgid ""
"Setup this editor for the provided [param action_map] and [param "
"interaction_profile]."
msgstr ""
"Настройте этот редактор для предоставленных [param action_map] и [param "
"interaction_profile]."

msgid "Meta class registering supported devices in OpenXR."
msgstr "Метакласс, регистрирующий поддерживаемые устройства в OpenXR."

msgid ""
"This class allows OpenXR core and extensions to register metadata relating to "
"supported interaction devices such as controllers, trackers, haptic devices, "
"etc. It is primarily used by the action map editor and to sanitize any action "
"map by removing extension-dependent entries when applicable."
msgstr ""
"Этот класс позволяет ядру и расширениям OpenXR регистрировать метаданные, "
"относящиеся к поддерживаемым устройствам взаимодействия, таким как "
"контроллеры, трекеры, тактильные устройства и т. д. Он в основном "
"используется редактором карты действий и для очистки любой карты действий "
"путем удаления записей, зависящих от расширения, когда это применимо."

msgid ""
"Registers an interaction profile using its OpenXR designation (e.g. [code]/"
"interaction_profiles/khr/simple_controller[/code] is the profile for OpenXR's "
"simple controller profile).\n"
"[param display_name] is the description shown to the user. [param "
"openxr_path] is the interaction profile path being registered. [param "
"openxr_extension_name] optionally restricts this profile to the given "
"extension being enabled/available. If the extension is not available, the "
"profile and all related entries used in an action map are filtered out."
msgstr ""
"Регистрирует профиль взаимодействия, используя его обозначение OpenXR "
"(например, [code]/interaction_profiles/khr/simple_controller[/code] — это "
"профиль для профиля простого контроллера OpenXR).\n"
"[param display_name] — это описание, отображаемое пользователю. [param "
"openxr_path] — это регистрируемый путь профиля взаимодействия. [param "
"openxr_extension_name] опционально ограничивает этот профиль указанным "
"расширением, которое включено/доступно. Если расширение недоступно, профиль и "
"все связанные записи, используемые в карте действий, отфильтровываются."

msgid ""
"Registers an input/output path for the given [param interaction_profile]. The "
"profile should previously have been registered using [method "
"register_interaction_profile]. [param display_name] is the description shown "
"to the user. [param toplevel_path] specifies the bind path this input/output "
"can be bound to (e.g. [code]/user/hand/left[/code] or [code]/user/hand/right[/"
"code]). [param openxr_path] is the action input/output being registered (e.g. "
"[code]/user/hand/left/input/aim/pose[/code]). [param openxr_extension_name] "
"restricts this input/output to an enabled/available extension, this doesn't "
"need to repeat the extension on the profile but relates to overlapping "
"extension (e.g. [code]XR_EXT_palm_pose[/code] that introduces [code]…/input/"
"palm_ext/pose[/code] input paths). [param action_type] defines the type of "
"input or output provided by OpenXR."
msgstr ""
"Регистрирует путь ввода/вывода для указанного [param interaction_profile]. "
"Профиль должен был быть предварительно зарегистрирован с помощью [method "
"register_interaction_profile]. [param display_name] — это описание, "
"показываемое пользователю. [param toplevel_path] указывает путь привязки, к "
"которому может быть привязан этот ввод/вывод (например, [code]/user/hand/"
"left[/code] или [code]/user/hand/right[/code]). [param openxr_path] — это "
"регистрируемый ввод/вывод действия (например, [code]/user/hand/left/input/aim/"
"pose[/code]). [param openxr_extension_name] ограничивает этот ввод/вывод "
"включенным/доступным расширением, это не обязательно должно повторять "
"расширение в профиле, но относится к перекрывающемуся расширению (например, "
"[code]XR_EXT_palm_pose[/code], которое вводит [code]…/input/palm_ext/pose[/"
"code] входные пути). [param action_type] определяет тип ввода или вывода, "
"предоставляемый OpenXR."

msgid ""
"Allows for renaming old interaction profile paths to new paths to maintain "
"backwards compatibility with older action maps."
msgstr ""
"Позволяет переименовывать старые пути профиля взаимодействия в новые пути для "
"сохранения обратной совместимости со старыми картами действий."

msgid ""
"Registers a top level path to which profiles can be bound. For instance "
"[code]/user/hand/left[/code] refers to the bind point for the player's left "
"hand. Extensions can register additional top level paths, for instance a "
"haptic vest extension might register [code]/user/body/vest[/code].\n"
"[param display_name] is the name shown to the user. [param openxr_path] is "
"the top level path being registered. [param openxr_extension_name] is "
"optional and ensures the top level path is only used if the specified "
"extension is available/enabled.\n"
"When a top level path ends up being bound by OpenXR, an [XRPositionalTracker] "
"is instantiated to manage the state of the device."
msgstr ""
"Регистрирует путь верхнего уровня, к которому можно привязать профили. "
"Например, [code]/user/hand/left[/code] указывает на точку привязки для левой "
"руки игрока. Расширения могут регистрировать дополнительные пути верхнего "
"уровня, например, расширение для тактильного жилета может зарегистрировать "
"[code]/user/body/vest[/code].\n"
"[param display_name] — имя, отображаемое пользователю. [param openxr_path] — "
"регистрируемый путь верхнего уровня. [param openxr_extension_name] "
"необязателен и гарантирует, что путь верхнего уровня будет использоваться "
"только при наличии/включении указанного расширения.\n"
"Когда путь верхнего уровня привязывается OpenXR, создаётся экземпляр "
"[XRPositionalTracker] для управления состоянием устройства."

msgid "Our OpenXR interface."
msgstr "Интерфейс OpenXR."

msgid ""
"The OpenXR interface allows Godot to interact with OpenXR runtimes and make "
"it possible to create XR experiences and games.\n"
"Due to the needs of OpenXR this interface works slightly different than other "
"plugin based XR interfaces. It needs to be initialized when Godot starts. You "
"need to enable OpenXR, settings for this can be found in your games project "
"settings under the XR heading. You do need to mark a viewport for use with XR "
"in order for Godot to know which render result should be output to the "
"headset."
msgstr ""
"Интерфейс OpenXR позволяет Godot взаимодействовать со средами выполнения "
"OpenXR и создавать игры и приложения XR.\n"
"Из-за потребностей OpenXR этот интерфейс работает немного иначе, чем другие "
"XR-интерфейсы на основе плагинов. Его необходимо инициализировать при запуске "
"Godot. Вам необходимо включить OpenXR, настройки для этого можно найти в "
"настройках вашего игрового проекта под заголовком XR. Вам необходимо отметить "
"область просмотра для использования с XR, чтобы Godot знал, какой результат "
"рендеринга следует выводить на гарнитуру."

msgid "Setting up XR"
msgstr "Настройка XR"

msgid ""
"Returns a list of action sets registered with Godot (loaded from the action "
"map at runtime)."
msgstr ""
"Возвращает список наборов действий, зарегистрированных в Godot (загружаемых "
"из карты действий во время выполнения)."

msgid ""
"Returns display refresh rates supported by the current HMD. Only returned if "
"this feature is supported by the OpenXR runtime and after the interface has "
"been initialized."
msgstr ""
"Возвращает частоты обновления дисплея, поддерживаемые текущим HMD. "
"Возвращается только в том случае, если эта функция поддерживается средой "
"выполнения OpenXR и после инициализации интерфейса."

msgid ""
"Use [method XRHandTracker.get_hand_joint_angular_velocity] obtained from "
"[method XRServer.get_tracker] instead."
msgstr ""
"Вместо этого используйте [method "
"XRHandTracker.get_hand_joint_angular_velocity], полученный из [method "
"XRServer.get_tracker]."

msgid ""
"If handtracking is enabled, returns the angular velocity of a joint ([param "
"joint]) of a hand ([param hand]) as provided by OpenXR. This is relative to "
"[XROrigin3D]!"
msgstr ""
"Если включено отслеживание рук, возвращает угловую скорость сустава ([param "
"joint]) руки ([param hand]), как предоставлено OpenXR. Это относительно "
"[XROrigin3D]!"

msgid ""
"Use [method XRHandTracker.get_hand_joint_flags] obtained from [method "
"XRServer.get_tracker] instead."
msgstr ""
"Вместо этого используйте [method XRHandTracker.get_hand_joint_flags], "
"полученный из [method XRServer.get_tracker]."

msgid ""
"If handtracking is enabled, returns flags that inform us of the validity of "
"the tracking data."
msgstr ""
"Если ручное отслеживание включено, возвращает флаги, информирующие нас о "
"достоверности данных отслеживания."

msgid ""
"Use [method XRHandTracker.get_hand_joint_linear_velocity] obtained from "
"[method XRServer.get_tracker] instead."
msgstr ""
"Вместо этого используйте [method "
"XRHandTracker.get_hand_joint_linear_velocity], полученный из [method "
"XRServer.get_tracker]."

msgid ""
"If handtracking is enabled, returns the linear velocity of a joint ([param "
"joint]) of a hand ([param hand]) as provided by OpenXR. This is relative to "
"[XROrigin3D] without worldscale applied!"
msgstr ""
"Если включено отслеживание рук, возвращает линейную скорость сустава ([param "
"joint]) руки ([param hand]), как предоставлено OpenXR. Это относительно "
"[XROrigin3D] без применения мирового масштаба!"

msgid ""
"Use [method XRHandTracker.get_hand_joint_transform] obtained from [method "
"XRServer.get_tracker] instead."
msgstr ""
"Вместо этого используйте [method XRHandTracker.get_hand_joint_transform], "
"полученный из [method XRServer.get_tracker]."

msgid ""
"If handtracking is enabled, returns the position of a joint ([param joint]) "
"of a hand ([param hand]) as provided by OpenXR. This is relative to "
"[XROrigin3D] without worldscale applied!"
msgstr ""
"Если включено отслеживание рук, возвращает положение сустава ([param joint]) "
"руки ([param hand]), как указано в OpenXR. Это относительно [XROrigin3D] без "
"применения мирового масштаба!"

msgid ""
"Use [method XRHandTracker.get_hand_joint_radius] obtained from [method "
"XRServer.get_tracker] instead."
msgstr ""
"Вместо этого используйте [method XRHandTracker.get_hand_joint_radius], "
"полученный из [method XRServer.get_tracker]."

msgid ""
"If handtracking is enabled, returns the radius of a joint ([param joint]) of "
"a hand ([param hand]) as provided by OpenXR. This is without worldscale "
"applied!"
msgstr ""
"Если включено отслеживание рук, возвращает радиус сочленения ([param joint]) "
"руки ([param hand]), как предоставлено OpenXR. Это без применения мирового "
"масштаба!"

msgid ""
"If handtracking is enabled, returns the rotation of a joint ([param joint]) "
"of a hand ([param hand]) as provided by OpenXR."
msgstr ""
"Если отслеживание рук включено, возвращает вращение сустава ([param joint]) "
"руки ([param hand]), как предусмотрено OpenXR."

msgid ""
"Use [member XRHandTracker.hand_tracking_source] obtained from [method "
"XRServer.get_tracker] instead."
msgstr ""
"Вместо этого используйте [member XRHandTracker.hand_tracking_source], "
"полученный из [method XRServer.get_tracker]."

msgid ""
"If handtracking is enabled and hand tracking source is supported, gets the "
"source of the hand tracking data for [param hand]."
msgstr ""
"Если отслеживание рук включено и поддерживается источник отслеживания рук, "
"получает источник данных отслеживания рук для [param hand]."

msgid ""
"If handtracking is enabled and motion range is supported, gets the currently "
"configured motion range for [param hand]."
msgstr ""
"Если отслеживание рук включено и поддерживается диапазон движения, получает "
"текущий настроенный диапазон движения для [param hand]."

msgid "Returns the current state of our OpenXR session."
msgstr "Возвращает текущее состояние нашего сеанса OpenXR."

msgid "Returns [code]true[/code] if the given action set is active."
msgstr "Возвращает [code]true[/code], если указанный набор действий активен."

msgid ""
"Returns the capabilities of the eye gaze interaction extension.\n"
"[b]Note:[/b] This only returns a valid value after OpenXR has been "
"initialized."
msgstr ""
"Возвращает возможности расширения взаимодействия взгляда.\n"
"[b]Примечание:[/b] Это возвращает допустимое значение только после "
"инициализации OpenXR."

msgid ""
"Returns [code]true[/code] if OpenXR's foveation extension is supported, the "
"interface must be initialized before this returns a valid value.\n"
"[b]Note:[/b] This feature is only available on the Compatibility renderer and "
"currently only available on some stand alone headsets. For Vulkan set [member "
"Viewport.vrs_mode] to [code]VRS_XR[/code] on desktop."
msgstr ""
"Возвращает [code]true[/code], если поддерживается расширение фовеации OpenXR. "
"Перед возвратом допустимого значения интерфейс должен быть инициализирован.\n"
"[b]Примечание:[/b] Эта функция доступна только в модуле визуализации "
"совместимости и в настоящее время доступна только на некоторых автономных "
"гарнитурах. Для Vulkan установите [member Viewport.vrs_mode] в значение "
"[code]VRS_XR[/code] на десктопе."

msgid ""
"Returns [code]true[/code] if OpenXR's hand interaction profile is supported "
"and enabled.\n"
"[b]Note:[/b] This only returns a valid value after OpenXR has been "
"initialized."
msgstr ""
"Возвращает [code]true[/code], если профиль взаимодействия рук OpenXR "
"поддерживается и включен.\n"
"[b]Примечание:[/b] Это возвращает допустимое значение только после "
"инициализации OpenXR."

msgid ""
"Returns [code]true[/code] if OpenXR's hand tracking is supported and "
"enabled.\n"
"[b]Note:[/b] This only returns a valid value after OpenXR has been "
"initialized."
msgstr ""
"Возвращает [code]true[/code], если отслеживание рук OpenXR поддерживается и "
"включено.\n"
"[b]Примечание:[/b] Это возвращает допустимое значение только после "
"инициализации OpenXR."

msgid "Sets the given action set as active or inactive."
msgstr "Устанавливает заданный набор действий как активный или неактивный."

msgid "Sets the CPU performance level of the OpenXR device."
msgstr "Устанавливает уровень производительности ЦП устройства OpenXR."

msgid "Sets the GPU performance level of the OpenXR device."
msgstr ""
"Устанавливает уровень производительности графического процессора (GPU) "
"устройства OpenXR."

msgid ""
"If handtracking is enabled and motion range is supported, sets the currently "
"configured motion range for [param hand] to [param motion_range]."
msgstr ""
"Если отслеживание рук включено и поддерживается диапазон движения, "
"устанавливает текущий настроенный диапазон движения для [param hand] на "
"[param motion_range]."

msgid ""
"The display refresh rate for the current HMD. Only functional if this feature "
"is supported by the OpenXR runtime and after the interface has been "
"initialized."
msgstr ""
"Частота обновления дисплея для текущего HMD. Работает только в том случае, "
"если эта функция поддерживается средой выполнения OpenXR и после "
"инициализации интерфейса."

msgid ""
"Enable dynamic foveation adjustment, the interface must be initialized before "
"this is accessible. If enabled foveation will automatically adjusted between "
"low and [member foveation_level].\n"
"[b]Note:[/b] Only works on the Compatibility renderer."
msgstr ""
"Включить динамическую регулировку фовеации. Для доступа к интерфейсу "
"необходимо инициализировать его. При включении фовеация будет автоматически "
"регулироваться в диапазоне от низкого до [member foveation_level].\n"
"[b]Примечание:[/b] Работает только в режиме рендеринга совместимости."

msgid ""
"Set foveation level from 0 (off) to 3 (high), the interface must be "
"initialized before this is accessible.\n"
"[b]Note:[/b] Only works on the Compatibility renderer."
msgstr ""
"Установите уровень фовеации от 0 (выкл.) до 3 (высокий). Перед этим "
"необходимо инициализировать интерфейс.\n"
"[b]Примечание:[/b] Работает только при использовании рендера совместимости."

msgid ""
"The render size multiplier for the current HMD. Must be set before the "
"interface has been initialized."
msgstr ""
"Множитель размера рендера для текущего HMD. Должен быть установлен до "
"инициализации интерфейса."

msgid ""
"Informs the device CPU performance level has changed in the specified "
"subdomain."
msgstr ""
"Информирует об изменении уровня производительности CPU устройства в указанном "
"поддомене (subdomain)."

msgid ""
"Informs the device GPU performance level has changed in the specified "
"subdomain."
msgstr ""
"Информирует об изменении уровня производительности графического процессора "
"устройства в указанном поддомене (subdomain)."

msgid "Informs our OpenXR instance is exiting."
msgstr "Сообщает, что наш экземпляр OpenXR завершает работу."

msgid "Informs the user queued a recenter of the player position."
msgstr "Информирует пользователя, находящегося в очереди, о положении игрока."

msgid ""
"Informs the user the HMD refresh rate has changed.\n"
"[b]Note:[/b] Only emitted if XR runtime supports the refresh rate extension."
msgstr ""
"Сообщает пользователю об изменении частоты обновления HMD.\n"
"[b]Примечание:[/b] Выдается только в том случае, если среда выполнения XR "
"поддерживает расширение частоты обновления."

msgid "Informs our OpenXR session has been started."
msgstr "Сообщает о начале сеанса OpenXR."

msgid ""
"Informs our OpenXR session now has focus, for example output is sent to the "
"HMD and we're receiving XR input."
msgstr ""
"Информирует, что сеанс OpenXR теперь имеет фокус, например, выходные данные "
"отправляются на HMD, и мы получаем входные данные XR."

msgid "Informs our OpenXR session is in the process of being lost."
msgstr "Сообщает, что наш сеанс OpenXR находится в процессе потери."

msgid "Informs our OpenXR session is stopping."
msgstr "Сообщает, что наш сеанс OpenXR останавливается."

msgid "Informs our OpenXR session has been synchronized."
msgstr "Сообщает, что наш сеанс OpenXR синхронизирован."

msgid ""
"Informs our OpenXR session is now visible, for example output is sent to the "
"HMD but we don't receive XR input."
msgstr ""
"Сообщает, что наш сеанс OpenXR теперь виден, например, выходные данные "
"отправляются на HMD, но мы не получаем входные данные XR."

msgid ""
"The state of the session is unknown, we haven't tried setting up OpenXR yet."
msgstr "Состояние сеанса неизвестно, мы еще не пробовали настраивать OpenXR."

msgid ""
"The initial state after the OpenXR session is created or after the session is "
"destroyed."
msgstr ""
"Начальное состояние после создания сеанса OpenXR или после его уничтожения."

msgid ""
"OpenXR is ready to begin our session. [signal session_begun] is emitted when "
"we change to this state."
msgstr ""
"OpenXR готов начать наш сеанс. Сигнал [signal session_begun] испускается, "
"когда мы переходим в это состояние."

msgid ""
"The application has synched its frame loop with the runtime but we're not "
"rendering anything. [signal session_synchronized] is emitted when we change "
"to this state."
msgstr ""
"Приложение синхронизировало свой цикл кадров со средой выполнения, но мы "
"ничего не отображаем. [signal session_synchronized] испускается, когда мы "
"переходим в это состояние."

msgid ""
"The application has synched its frame loop with the runtime and we're "
"rendering output to the user, however we receive no user input. [signal "
"session_visible] is emitted when we change to this state.\n"
"[b]Note:[/b] This is the current state just before we get the focused state, "
"whenever the user opens a system menu, switches to another application, or "
"takes off their headset."
msgstr ""
"Приложение синхронизировало свой цикл кадров со временем выполнения, и мы "
"рендерируем вывод пользователю, однако мы не получаем пользовательского "
"ввода. [signal session_visible] испускается при переходе на это состояние.\n"
"[b] Примечание: [/b] Это текущее состояние непосредственно перед тем, как мы "
"получим сфокусированное состояние, всякий раз, когда пользователь открывает "
"меню системы, переключается на другое приложение или снимает их гарнитуру."

msgid ""
"The application has synched its frame loop with the runtime, we're rendering "
"output to the user and we're receiving XR input. [signal session_focussed] is "
"emitted when we change to this state.\n"
"[b]Note:[/b] This is the state OpenXR will be in when the user can fully "
"interact with your game."
msgstr ""
"Приложение синхронизировало свой цикл кадров со временем выполнения, мы "
"рендерируем вывод пользователю и получаем вход XR. [signal session_focussed] "
"испускается при переходе на это состояние.\n"
"[b] Примечание: [/b] Это состояние OpenXR, когда пользователь может полностью "
"взаимодействовать с вашей игрой."

msgid ""
"Our session is being stopped. [signal session_stopping] is emitted when we "
"change to this state."
msgstr ""
"Наш сеанс останавливается. [signal session_stopping] испускается, когда мы "
"переходим в это состояние."

msgid ""
"The session is about to be lost. [signal session_loss_pending] is emitted "
"when we change to this state."
msgstr ""
"Сеанс скоро будет потерян. [signal session_loss_pending] испускается, когда "
"мы переходим в это состояние."

msgid ""
"The OpenXR instance is about to be destroyed and we're existing. [signal "
"instance_exiting] is emitted when we change to this state."
msgstr ""
"Экземпляр OpenXR скоро будет уничтожен, а мы существуем. [signal "
"instance_exiting] испускается, когда мы переходим в это состояние."

msgid "Left hand."
msgstr "Левая рука."

msgid "Right hand."
msgstr "Правая рука."

msgid "Maximum value for the hand enum."
msgstr "Максимальное значение для перечисления рук."

msgid "Full hand range, if user closes their hands, we make a full fist."
msgstr ""
"Полный диапазон рук, если пользователь сжимает руки в кулак, мы делаем полный "
"кулак."

msgid ""
"Conform to controller, if user closes their hands, the tracked data conforms "
"to the shape of the controller."
msgstr ""
"Соответствует форме контроллера: если пользователь закрывает руки, "
"отслеживаемые данные соответствуют форме контроллера."

msgid "Maximum value for the motion range enum."
msgstr "Максимальное значение для перечисления диапазона движения."

msgid ""
"The source of hand tracking data is unknown (the extension is likely "
"unsupported)."
msgstr ""
"Источник данных отслеживания рук неизвестен (расширение, вероятно, не "
"поддерживается)."

msgid ""
"The source of hand tracking is unobstructed, this means that an accurate "
"method of hand tracking is used, e.g. optical hand tracking, data gloves, etc."
msgstr ""
"Источник отслеживания рук не имеет препятствий, это означает, что "
"используется точный метод отслеживания рук, например, оптическое отслеживание "
"рук, перчатки с данными и т. д."

msgid ""
"The source of hand tracking is a controller, bone positions are inferred from "
"controller inputs."
msgstr ""
"Источником отслеживания руки является контроллер, положения костей "
"определяются на основе входных данных контроллера."

msgid "Represents the size of the [enum HandTrackedSource] enum."
msgstr "Представляет размер перечисления [enum HandTrackedSource]."

msgid "Palm joint."
msgstr "Ладонный сустав."

msgid "Wrist joint."
msgstr "Лучезапястный сустав."

msgid "Thumb metacarpal joint."
msgstr "Пястно-запястный сустав большого пальца."

msgid "Thumb proximal joint."
msgstr "Проксимальный сустав большого пальца."

msgid "Thumb distal joint."
msgstr "Дистальный сустав большого пальца."

msgid "Thumb tip joint."
msgstr "Сустав кончика большого пальца."

msgid "Index finger metacarpal joint."
msgstr "Пястно-запястный сустав указательного пальца."

msgid "Index finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги указательного пальца."

msgid "Index finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги указательного пальца."

msgid "Index finger phalanx distal joint."
msgstr "Дистальный сустав фаланги указательного пальца."

msgid "Index finger tip joint."
msgstr "Кончик указательного пальца."

msgid "Middle finger metacarpal joint."
msgstr "Пястно-запястный сустав среднего пальца."

msgid "Middle finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги среднего пальца."

msgid "Middle finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги среднего пальца."

msgid "Middle finger phalanx distal joint."
msgstr "Дистальный сустав фаланги среднего пальца."

msgid "Middle finger tip joint."
msgstr "Кончик среднего пальца."

msgid "Ring finger metacarpal joint."
msgstr "Пястно-запястный сустав безымянного пальца."

msgid "Ring finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги безымянного пальца."

msgid "Ring finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги безымянного пальца."

msgid "Ring finger phalanx distal joint."
msgstr "Дистальный сустав фаланги безымянного пальца."

msgid "Ring finger tip joint."
msgstr "Сустав кончика безымянного пальца."

msgid "Pinky finger metacarpal joint."
msgstr "Пястно-запястный сустав мизинца."

msgid "Pinky finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги мизинца."

msgid "Pinky finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги мизинца."

msgid "Pinky finger phalanx distal joint."
msgstr "Дистальный сустав фаланги мизинца."

msgid "Pinky finger tip joint."
msgstr "Сустав кончика мизинца."

msgid "Represents the size of the [enum HandJoints] enum."
msgstr "Представляет размер перечисления [enum HandJoints]."

msgid ""
"The application has entered a non-XR section (head-locked / static screen), "
"during which power savings are to be prioritized."
msgstr ""
"Приложение вошло в раздел non-XR (head-locked / static screen), в течение "
"которого приоритет отдается энергосбережению."

msgid ""
"The application has entered a low and stable complexity section, during which "
"reducing power is more important than occasional late rendering frames."
msgstr ""
"Приложение вошло в стадию низкой и стабильной сложности, в течение которой "
"снижение мощности важнее, чем случайные задержки рендеринга кадров."

msgid ""
"The application has entered a high or dynamic complexity section, during "
"which the XR Runtime strives for consistent XR compositing and frame "
"rendering within a thermally sustainable range."
msgstr ""
"Приложение вошло в раздел высокой или динамической сложности, в ходе которого "
"XR Runtime стремится к последовательному XR-композитингу и рендерингу кадров "
"в термически устойчивом диапазоне."

msgid ""
"The application has entered a section with very high complexity, during which "
"the XR Runtime is allowed to step up beyond the thermally sustainable range."
msgstr ""
"Приложение вошло в раздел с очень высокой сложностью, в ходе которого XR "
"Runtime может выйти за пределы термически устойчивого диапазона."

msgid "The compositing performance within the runtime has reached a new level."
msgstr ""
"Производительность compositing в среде выполнения достигла нового уровня."

msgid "The application rendering performance has reached a new level."
msgstr "Производительность рендеринга приложений вышла на новый уровень."

msgid "The temperature of the device has reached a new level."
msgstr "Температура устройства достигла нового уровня."

msgid ""
"The sub-domain has reached a level where no further actions other than "
"currently applied are necessary."
msgstr ""
"Поддомен достиг уровня, на котором не требуется никаких дополнительных "
"действий, кроме применяемых в настоящее время."

msgid ""
"The sub-domain has reached an early warning level where the application "
"should start proactive mitigation actions."
msgstr ""
"Поддомен достиг уровня раннего предупреждения, на котором приложение должно "
"начать упреждающие действия по смягчению последствий."

msgid ""
"The sub-domain has reached a critical level where the application should "
"start drastic mitigation actions."
msgstr ""
"Sub-domain достиг критического уровня, при котором приложение должно начать "
"радикальные действия по смягчению последствий."

msgid "No flags are set."
msgstr "Флаги не установлены."

msgid ""
"If set, the orientation data is valid, otherwise, the orientation data is "
"unreliable and should not be used."
msgstr ""
"Если установлено, данные об ориентации действительны, в противном случае "
"данные об ориентации ненадежны и не должны использоваться."

msgid ""
"If set, the orientation data comes from tracking data, otherwise, the "
"orientation data contains predicted data."
msgstr ""
"Если установлено, данные об ориентации берутся из данных отслеживания, в "
"противном случае данные об ориентации содержат прогнозируемые данные."

msgid ""
"If set, the positional data is valid, otherwise, the positional data is "
"unreliable and should not be used."
msgstr ""
"Если установлено, позиционные данные действительны, в противном случае "
"позиционные данные ненадежны и не должны использоваться."

msgid ""
"If set, the positional data comes from tracking data, otherwise, the "
"positional data contains predicted data."
msgstr ""
"Если установлено, позиционные данные берутся из данных отслеживания, в "
"противном случае позиционные данные содержат прогнозируемые данные."

msgid ""
"If set, our linear velocity data is valid, otherwise, the linear velocity "
"data is unreliable and should not be used."
msgstr ""
"Если установлено, наши данные о линейной скорости действительны, в противном "
"случае данные о линейной скорости ненадежны и не должны использоваться."

msgid ""
"If set, our angular velocity data is valid, otherwise, the angular velocity "
"data is unreliable and should not be used."
msgstr ""
"Если установлено, наши данные об угловой скорости действительны, в противном "
"случае данные об угловой скорости ненадежны и не должны использоваться."

msgid "Defines a binding between an [OpenXRAction] and an XR input or output."
msgstr "Определяет привязку между [OpenXRAction] и входом или выходом XR."

msgid ""
"This binding resource binds an [OpenXRAction] to an input or output. As most "
"controllers have left hand and right versions that are handled by the same "
"interaction profile we can specify multiple bindings. For instance an action "
"\"Fire\" could be bound to both \"/user/hand/left/input/trigger\" and \"/user/"
"hand/right/input/trigger\". This would require two binding entries."
msgstr ""
"Этот ресурс привязки привязывает [OpenXRAction] к входу или выходу. Поскольку "
"большинство контроллеров имеют левосторонние и правосторонние версии, которые "
"обрабатываются одним и тем же профилем взаимодействия, мы можем указать "
"несколько привязок. Например, действие \"Fire\" может быть привязано как к \"/"
"user/hand/left/input/trigger\", так и к \"/user/hand/right/input/trigger\". "
"Для этого потребуются две записи привязки."

msgid "Binding is for a single path."
msgstr "Привязка выполняется к одному пути."

msgid "Add an input/output path to this binding."
msgstr "Добавьте к этой привязке путь ввода/вывода."

msgid "Get the number of binding modifiers for this binding."
msgstr "Получите количество модификаторов привязки для этой привязки."

msgid "Get the number of input/output paths in this binding."
msgstr "Получите количество путей ввода/вывода в этой привязке."

msgid ""
"Returns [code]true[/code] if this input/output path is part of this binding."
msgstr ""
"Возвращает [code]true[/code], если этот путь ввода/вывода является частью "
"этой привязки."

msgid "Removes this input/output path from this binding."
msgstr "Удаляет этот путь ввода/вывода из этой привязки."

msgid "[OpenXRAction] that is bound to [member binding_path]."
msgstr "[OpenXRAction], связанное с [member binding_path]."

msgid "Binding modifiers for this binding."
msgstr "Модификаторы привязки для данной привязки."

msgid ""
"Binding path that defines the input or output bound to [member action].\n"
"[b]Note:[/b] Binding paths are suggestions, an XR runtime may choose to bind "
"the action to a different input or output emulating this input or output."
msgstr ""
"Путь привязки, который определяет ввод или вывод, привязанный к [member "
"action].\n"
"[b]Примечание:[/b] Пути привязки являются предложениями, среда выполнения XR "
"может выбрать привязку действия к другому вводу или выводу, эмулирующему этот "
"ввод или вывод."

msgid "Use [member binding_path] instead."
msgstr "Вместо этого используйте [member binding_path]."

msgid "Paths that define the inputs or outputs bound on the device."
msgstr "Пути, определяющие входы или выходы, привязанные к устройству."

msgid "Binding modifier that applies directly on an interaction profile."
msgstr ""
"Модификатор привязки, который применяется непосредственно к профилю "
"взаимодействия."

msgid "This node will display an OpenXR render model."
msgstr "Этот узел будет отображать модель рендеринга OpenXR."

msgid ""
"This node will display an OpenXR render model by accessing the associated "
"GLTF and processes all animation data (if supported by the XR runtime).\n"
"Render models were introduced to allow showing the correct model for the "
"controller (or other device) the user has in hand, since the OpenXR action "
"map does not provide information about the hardware used by the user. Note "
"that while the controller (or device) can be somewhat inferred by the bound "
"action map profile, this is a dangerous approach as the user may be using "
"hardware not known at time of development and OpenXR will simply simulate an "
"available interaction profile."
msgstr ""
"Этот узел отобразит модель рендеринга OpenXR, получив доступ к "
"соответствующему GLTF и обрабатывает все данные анимации (если подтверждается "
"временем выполнения XR).\n"
"Модели рендеринга были введены, чтобы позволить показать правильную модель "
"для контроллера (или другого устройства), который пользователь имеет в руках, "
"поскольку карта действия OpenXR не предоставляет информацию об аппаратном "
"обеспечении, используемом пользователем. Обратите внимание, что, хотя "
"контроллер (или устройство) может быть несколько выведен в соответствии с "
"профилем карты связанных действий, это опасный подход, поскольку пользователь "
"может использовать аппаратное обеспечение, не известное во время разработки, "
"а OpenXR будет просто моделировать доступный профиль взаимодействия."

msgid "Returns the top level path related to this render model."
msgstr "Возвращает путь верхнего уровня, связанный с этой моделью рендеринга."

msgid ""
"The render model RID for the render model to load, as returned by [method "
"OpenXRRenderModelExtension.render_model_create] or [method "
"OpenXRRenderModelExtension.render_model_get_all]."
msgstr ""
"RID модели рендеринга для загрузки модели рендеринга, возвращаемый методом "
"[method OpenXRRenderModelExtension.render_model_create] или [method "
"OpenXRRenderModelExtension.render_model_get_all]."

msgid "Emitted when the top level path of this render model has changed."
msgstr "Выдается при изменении пути верхнего уровня данной модели рендеринга."

msgid "This class implements the OpenXR Render Model Extension."
msgstr "Этот класс реализует расширение модели рендеринга OpenXR."

msgid ""
"This class implements the OpenXR Render Model Extension, if enabled it will "
"maintain a list of active render models and provides an interface to the "
"render model data."
msgstr ""
"Этот класс реализует расширение модели рендеринга OpenXR. Если оно включено, "
"оно будет поддерживать список активных моделей рендеринга и предоставлять "
"интерфейс к данным модели рендеринга."

msgid ""
"Returns [code]true[/code] if OpenXR's render model extension is supported and "
"enabled.\n"
"[b]Note:[/b] This only returns a valid value after OpenXR has been "
"initialized."
msgstr ""
"Возвращает [code]true[/code], если расширение модели рендеринга OpenXR "
"поддерживается и включено.\n"
"[b]Примечание:[/b] Возвращает допустимое значение только после инициализации "
"OpenXR."

msgid ""
"Creates a render model object within OpenXR using a render model id.\n"
"[b]Note:[/b] This function is exposed for dependent OpenXR extensions that "
"provide render model ids to be used with the render model extension."
msgstr ""
"Создаёт объект модели рендеринга в OpenXR, используя идентификатор модели "
"рендеринга.\n"
"[b]Примечание:[/b] Эта функция доступна для зависимых расширений OpenXR, "
"которые предоставляют идентификаторы моделей рендеринга для использования с "
"расширением модели рендеринга."

msgid ""
"Destroys a render model object within OpenXR that was previously created with "
"[method render_model_create].\n"
"[b]Note:[/b] This function is exposed for dependent OpenXR extensions that "
"provide render model ids to be used with the render model extension."
msgstr ""
"Уничтожает объект модели рендеринга в OpenXR, ранее созданный с помощью "
"[method render_model_create].\n"
"[b]Примечание:[/b] Эта функция доступна для зависимых расширений OpenXR, "
"которые предоставляют идентификаторы моделей рендеринга для использования с "
"расширением модели рендеринга."

msgid ""
"Returns an array of all currently active render models registered with this "
"extension."
msgstr ""
"Возвращает массив всех активных в данный момент моделей рендеринга, "
"зарегистрированных с помощью этого расширения."

msgid "Returns the number of animatable nodes this render model has."
msgstr "Возвращает количество анимируемых узлов в этой модели рендеринга."

msgid "Returns the name of the given animatable node."
msgstr "Возвращает имя заданного анимируемого узла."

msgid ""
"Returns the current local transform for an animatable node. This is updated "
"every frame."
msgstr ""
"Возвращает текущее локальное преобразование для анимируемого узла. "
"Обновляется в каждом кадре."

msgid ""
"Returns the tracking confidence of the tracking data for the render model."
msgstr ""
"Возвращает достоверность отслеживания данных отслеживания для модели "
"рендеринга."

msgid ""
"Returns the root transform of a render model. This is the tracked position "
"relative to our [XROrigin3D] node."
msgstr ""
"Возвращает корневое преобразование модели рендеринга. Это отслеживаемое "
"положение относительно узла [XROrigin3D]."

msgid ""
"Returns a list of active subaction paths for this [param render_model].\n"
"[b]Note:[/b] If different devices are bound to your actions than available in "
"suggested interaction bindings, this information shows paths related to the "
"interaction bindings being mimicked by that device."
msgstr ""
"Возвращает список активных путей поддействий для этого [param render_model].\n"
"[b]Примечание:[/b] Если к вашим действиям привязаны устройства, отличные от "
"доступных в предлагаемых привязках взаимодействия, эта информация показывает "
"пути, связанные с привязками взаимодействия, имитируемыми этим устройством."

msgid ""
"Returns the top level path associated with this [param render_model]. If "
"provided this identifies whether the render model is associated with the "
"player's hands or other body part."
msgstr ""
"Возвращает путь верхнего уровня, связанный с этим [param render_model]. Если "
"этот параметр указан, он определяет, связана ли модель рендеринга с руками "
"игрока или другими частями тела."

msgid "Returns [code]true[/code] if this animatable node should be visible."
msgstr ""
"Возвращает [code]true[/code], если этот анимируемый узел должен быть видимым."

msgid ""
"Returns an instance of a subscene that contains all [MeshInstance3D] nodes "
"that allow you to visualize the render model."
msgstr ""
"Возвращает экземпляр подсцены, содержащей все узлы [MeshInstance3D], "
"позволяющие визуализировать модель рендеринга."

msgid "Emitted when a new render model is added."
msgstr "Вызывается при добавлении новой модели рендеринга."

msgid "Emitted when a render model is removed."
msgstr "Возникает при удалении модели рендеринга."

msgid "Emitted when the top level path associated with a render model changed."
msgstr ""
"Вызывается при изменении пути верхнего уровня, связанного с моделью "
"рендеринга."

msgid "Helper node that will automatically manage displaying render models."
msgstr ""
"Вспомогательный узел, который будет автоматически управлять отображением "
"моделей рендеринга."

msgid ""
"This helper node will automatically manage displaying render models. It will "
"create new [OpenXRRenderModel] nodes as controllers and other hand held "
"devices are detected, and remove those nodes when they are deactivated.\n"
"[b]Note:[/b] If you want more control over this logic you can alternatively "
"call [method OpenXRRenderModelExtension.render_model_get_all] to obtain a "
"list of active render model ids and create [OpenXRRenderModel] instances for "
"each render model id provided."
msgstr ""
"Этот вспомогательный узел будет автоматически управлять отображением моделей "
"рендеринга. Он будет создавать новые узлы [OpenXRRenderModel] при обнаружении "
"контроллеров и других портативных устройств и удалять их при их деактивации.\n"
"[b]Примечание:[/b] Если вам нужен более полный контроль над этой логикой, вы "
"можете вызвать [method OpenXRRenderModelExtension.render_model_get_all], "
"чтобы получить список идентификаторов активных моделей рендеринга и создать "
"экземпляры [OpenXRRenderModel] для каждого предоставленного идентификатора "
"модели рендеринга."

msgid ""
"Position render models local to this pose (this will adjust the position of "
"the render models container node)."
msgstr ""
"Расположите модели рендеринга локально по отношению к этой позе (это изменит "
"положение узла-контейнера моделей рендеринга)."

msgid ""
"Limits render models to the specified tracker. Include: 0 = All render "
"models, 1 = Render models not related to a tracker, 2 = Render models related "
"to the left hand tracker, 3 = Render models related to the right hand tracker."
msgstr ""
"Ограничивает рендеринг моделей указанным трекером. Включить: 0 = Все "
"рендеринг моделей, 1 = Рендеринг моделей, не связанных с трекером, 2 = "
"Рендеринг моделей, связанных с левым трекером, 3 = Рендеринг моделей, "
"связанных с правым трекером."

msgid "Emitted when a render model node is added as a child to this node."
msgstr ""
"Вызывается, когда узел модели рендеринга добавляется в качестве дочернего к "
"данному узлу."

msgid ""
"Emitted when a render model child node is about to be removed from this node."
msgstr ""
"Вызывается, когда дочерний узел модели рендеринга собирается быть удален из "
"данного узла."

msgid ""
"All active render models are shown regardless of what tracker they relate to."
msgstr ""
"Все активные модели рендеринга отображаются независимо от того, к какому "
"трекеру они относятся."

msgid ""
"Only active render models are shown that are not related to any tracker we "
"manage."
msgstr ""
"Показаны только активные модели рендеринга, не связанные ни с одним трекером, "
"которым мы управляем."

msgid ""
"Only active render models are shown that are related to the left hand tracker."
msgstr ""
"Показаны только активные модели рендеринга, относящиеся к левому трекеру."

msgid ""
"Only active render models are shown that are related to the right hand "
"tracker."
msgstr ""
"Показаны только активные модели рендеринга, относящиеся к правому трекеру."

msgid "Draws a stereo correct visibility mask."
msgstr "Рисует стерео-маску корректной видимости."

msgid ""
"The visibility mask allows us to black out the part of the render result that "
"is invisible due to lens distortion.\n"
"As this is rendered first, it prevents fragments with expensive lighting "
"calculations to be processed as they are discarded through z-checking."
msgstr ""
"Маска видимости позволяет нам затемнить часть результата рендеринга, которая "
"невидима из-за искажения объектива.\n"
"Поскольку она рендерится первой, она предотвращает обработку фрагментов с "
"дорогими расчетами освещения, поскольку они отбрасываются при z-проверке."

msgid "An optimized translation, used by default for CSV Translations."
msgstr "Оптимизированный перевод, используемый по умолчанию для переводов CSV."

msgid ""
"An optimized translation, used by default for CSV Translations. Uses real-"
"time compressed translations, which results in very small dictionaries."
msgstr ""
"Оптимизированный перевод, используемый по умолчанию для CSV Translations. "
"Использует сжатые переводы в реальном времени, что приводит к очень маленьким "
"словарям."

msgid ""
"Generates and sets an optimized translation from the given [Translation] "
"resource.\n"
"[b]Note:[/b] This method is intended to be used in the editor. It does "
"nothing when called from an exported project."
msgstr ""
"Генерирует и устанавливает оптимизированный перевод из указанного ресурса "
"[Translation].\n"
"[b]Примечание:[/b] Этот метод предназначен для использования в редакторе. Он "
"ничего не делает при вызове из экспортированного проекта."

msgid "A button that brings up a dropdown with selectable options when pressed."
msgstr ""
"Кнопка, при нажатии на которую открывается раскрывающийся список с вариантами "
"выбора."

msgid ""
"[OptionButton] is a type of button that brings up a dropdown with selectable "
"items when pressed. The item selected becomes the \"current\" item and is "
"displayed as the button text.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node.\n"
"[b]Note:[/b] The IDs used for items are limited to signed 32-bit integers, "
"not the full 64 bits of [int]. These have a range of [code]-2^31[/code] to "
"[code]2^31 - 1[/code], that is, [code]-2147483648[/code] to [code]2147483647[/"
"code].\n"
"[b]Note:[/b] The [member Button.text] and [member Button.icon] properties are "
"set automatically based on the selected item. They shouldn't be changed "
"manually."
msgstr ""
"[OptionButton] — это тип кнопки, при нажатии на которую открывается "
"раскрывающийся список с доступными для выбора элементами. Выбранный элемент "
"становится текущим и отображается в виде текста кнопки.\n"
"См. также [BaseButton], содержащий общие свойства и методы, связанные с этим "
"узлом.\n"
"[b]Примечание:[/b] Идентификаторы элементов ограничены 32-битными целыми "
"числами со знаком, а не полными 64 битами [int]. Диапазон значений — от "
"[code]-2^31[/code] до [code]2^31 - 1[/code], то есть от [code]-2147483648[/"
"code] до [code]2147483647[/code].\n"
"[b]Примечание:[/b] Свойства [member Button.text] и [member Button.icon] "
"устанавливаются автоматически в зависимости от выбранного элемента. Их не "
"следует изменять вручную."

msgid ""
"Adds an item, with a [param texture] icon, text [param label] and "
"(optionally) [param id]. If no [param id] is passed, the item index will be "
"used as the item's ID. New items are appended at the end.\n"
"[b]Note:[/b] The item will be selected if there are no other items."
msgstr ""
"Добавляет элемент с иконкой [param texture], текстом [param label] и "
"(необязательно) [param id]. Если [param id] не передан, в качестве "
"идентификатора элемента будет использоваться индекс элемента. Новые элементы "
"добавляются в конец.\n"
"[b]Примечание:[/b] Элемент будет выбран, если других элементов нет."

msgid ""
"Adds an item, with text [param label] and (optionally) [param id]. If no "
"[param id] is passed, the item index will be used as the item's ID. New items "
"are appended at the end.\n"
"[b]Note:[/b] The item will be selected if there are no other items."
msgstr ""
"Добавляет элемент с текстом [param label] и (необязательно) [param id]. Если "
"[param id] не передан, в качестве идентификатора элемента будет "
"использоваться индекс элемента. Новые элементы добавляются в конец.\n"
"[b]Примечание:[/b] Элемент будет выбран, если других элементов нет."

msgid ""
"Adds a separator to the list of items. Separators help to group items, and "
"can optionally be given a [param text] header. A separator also gets an index "
"assigned, and is appended at the end of the item list."
msgstr ""
"Добавляет разделитель в список элементов. Разделители помогают группировать "
"элементы и могут быть дополнительно заданы заголовком [param text]. "
"Разделителю также назначается индекс, и он добавляется в конец списка "
"элементов."

msgid "Clears all the items in the [OptionButton]."
msgstr "Очищает все элементы в [OptionButton]."

msgid "Returns the auto translate mode of the item at index [param idx]."
msgstr ""
"Возвращает режим автоматического перевода элемента по индексу [param idx]."

msgid "Returns the icon of the item at index [param idx]."
msgstr "Возвращает значок элемента по индексу [param idx]."

msgid "Returns the ID of the item at index [param idx]."
msgstr "Возвращает идентификатор элемента по индексу [param idx]."

msgid "Returns the index of the item with the given [param id]."
msgstr "Возвращает индекс элемента с указанным [param id]."

msgid ""
"Retrieves the metadata of an item. Metadata may be any type and can be used "
"to store extra information about an item, such as an external string ID."
msgstr ""
"Извлекает метаданные элемента. Метаданные могут быть любого типа и могут "
"использоваться для хранения дополнительной информации об элементе, например "
"внешнего строкового идентификатора."

msgid "Returns the text of the item at index [param idx]."
msgstr "Возвращает текст элемента по индексу [param idx]."

msgid "Returns the tooltip of the item at index [param idx]."
msgstr "Возвращает подсказку элемента с индексом [param idx]."

msgid ""
"Returns the index of the first item which is not disabled, or marked as a "
"separator. If [param from_last] is [code]true[/code], the items will be "
"searched in reverse order.\n"
"Returns [code]-1[/code] if no item is found."
msgstr ""
"Возвращает индекс первого элемента, который не отключен или не помечен как "
"разделитель. Если [param from_last] равен [code]true[/code], элементы будут "
"искаться в обратном порядке.\n"
"Возвращает [code]-1[/code], если элемент не найден."

msgid ""
"Returns the ID of the selected item, or [code]-1[/code] if no item is "
"selected."
msgstr ""
"Возвращает идентификатор выбранного элемента или [code]-1[/code], если ни "
"один элемент не выбран."

msgid ""
"Gets the metadata of the selected item. Metadata for items can be set using "
"[method set_item_metadata]."
msgstr ""
"Получает метаданные выбранного элемента. Метаданные для элементов можно "
"задать с помощью [method set_item_metadata]."

msgid ""
"Returns [code]true[/code] if this button contains at least one item which is "
"not disabled, or marked as a separator."
msgstr ""
"Возвращает [code]true[/code], если эта кнопка содержит хотя бы один элемент, "
"который не отключен или не помечен как разделитель."

msgid "Returns [code]true[/code] if the item at index [param idx] is disabled."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] отключен."

msgid ""
"Returns [code]true[/code] if the item at index [param idx] is marked as a "
"separator."
msgstr ""
"Возвращает [code]true[/code], если элемент с индексом [param idx] помечен как "
"разделитель."

msgid "Removes the item at index [param idx]."
msgstr "Удаляет элемент с индексом [param idx]."

msgid ""
"Selects an item by index and makes it the current item. This will work even "
"if the item is disabled.\n"
"Passing [code]-1[/code] as the index deselects any currently selected item."
msgstr ""
"Выбирает элемент по индексу и делает его текущим элементом. Это будет "
"работать, даже если элемент отключен.\n"
"Передача [code]-1[/code] в качестве индекса отменяет выбор любого выбранного "
"в данный момент элемента."

msgid ""
"Sets the auto translate mode of the item at index [param idx].\n"
"Items use [constant Node.AUTO_TRANSLATE_MODE_INHERIT] by default, which uses "
"the same auto translate mode as the [OptionButton] itself."
msgstr ""
"Устанавливает режим автоматического перевода элемента с индексом [param "
"idx].\n"
"Элементы используют [constant Node.AUTO_TRANSLATE_MODE_INHERIT] по умолчанию, "
"который использует тот же режим автоматического перевода, что и сам "
"[OptionButton]."

msgid ""
"Sets whether the item at index [param idx] is disabled.\n"
"Disabled items are drawn differently in the dropdown and are not selectable "
"by the user. If the current selected item is set as disabled, it will remain "
"selected."
msgstr ""
"Устанавливает, отключен ли элемент с индексом [param idx].\n"
"Отключенные элементы отображаются в раскрывающемся списке по-другому и не "
"могут быть выбраны пользователем. Если текущий выбранный элемент установлен "
"как отключенный, он останется выбранным."

msgid "Sets the icon of the item at index [param idx]."
msgstr "Устанавливает значок элемента по индексу [param idx]."

msgid "Sets the ID of the item at index [param idx]."
msgstr "Устанавливает идентификатор (ID) элемента по индексу [param idx]."

msgid ""
"Sets the metadata of an item. Metadata may be of any type and can be used to "
"store extra information about an item, such as an external string ID."
msgstr ""
"Устанавливает метаданные элемента. Метаданные могут быть любого типа и могут "
"использоваться для хранения дополнительной информации об элементе, например "
"внешнего строкового идентификатора."

msgid "Sets the text of the item at index [param idx]."
msgstr "Устанавливает текст элемента по индексу [param idx]."

msgid "Sets the tooltip of the item at index [param idx]."
msgstr "Устанавливает подсказку для элемента с индексом [param idx]."

msgid ""
"Adjusts popup position and sizing for the [OptionButton], then shows the "
"[PopupMenu]. Prefer this over using [code]get_popup().popup()[/code]."
msgstr ""
"Настраивает положение и размер всплывающего окна для [OptionButton], затем "
"показывает [PopupMenu]. Предпочтительнее использовать этот метод, чем "
"[code]get_popup().popup()[/code]."

msgid ""
"If [code]true[/code], minimum size will be determined by the longest item's "
"text, instead of the currently selected one's.\n"
"[b]Note:[/b] For performance reasons, the minimum size doesn't update "
"immediately when adding, removing or modifying items."
msgstr ""
"Если [code]true[/code], минимальный размер будет определяться текстом самого "
"длинного элемента, а не текущего выбранного.\n"
"[b]Примечание:[/b] Из соображений производительности минимальный размер не "
"обновляется немедленно при добавлении, удалении или изменении элементов."

msgid "The number of items to select from."
msgstr "Количество элементов для выбора."

msgid ""
"The index of the currently selected item, or [code]-1[/code] if no item is "
"selected."
msgstr ""
"Индекс текущего выбранного элемента или [code]-1[/code] , если элемент не "
"выбран."

msgid ""
"Emitted when the user navigates to an item using the [member "
"ProjectSettings.input/ui_up] or [member ProjectSettings.input/ui_down] input "
"actions. The index of the item selected is passed as argument."
msgstr ""
"Вызывается, когда пользователь переходит к элементу с помощью действий ввода "
"[member ProjectSettings.input/ui_up] или [member ProjectSettings.input/"
"ui_down]. Индекс выбранного элемента передается как аргумент."

msgid ""
"Emitted when the current item has been changed by the user. The index of the "
"item selected is passed as argument.\n"
"[member allow_reselect] must be enabled to reselect an item."
msgstr ""
"Вызывается, когда текущий элемент был изменен пользователем. Индекс "
"выбранного элемента передается как аргумент.\n"
"[member allow_reselect] должен быть включен для повторного выбора элемента."

msgid ""
"The horizontal space between the arrow icon and the right edge of the button."
msgstr ""
"Горизонтальное пространство между значком стрелки и правым краем кнопки."

msgid ""
"If different than [code]0[/code], the arrow icon will be modulated to the "
"font color."
msgstr ""
"Если значение отличается от [code]0[/code], значок стрелки будет изменен в "
"соответствии с цветом шрифта."

msgid "The arrow icon to be drawn on the right end of the button."
msgstr "Значок стрелки, который будет нарисован на правом конце кнопки."

msgid ""
"A PBR (Physically Based Rendering) material to be used on 3D objects. Uses an "
"ORM texture."
msgstr ""
"Материал PBR (физически обоснованный рендеринг) для использования на 3D-"
"объектах. Использует текстуру ORM."

msgid ""
"ORMMaterial3D's properties are inherited from [BaseMaterial3D]. Unlike "
"[StandardMaterial3D], ORMMaterial3D uses a single texture for ambient "
"occlusion, roughness and metallic maps, known as an ORM texture."
msgstr ""
"Свойства ORMMaterial3D унаследованы от [BaseMaterial3D]. В отличие от "
"[StandardMaterial3D], ORMMaterial3D использует одну текстуру для окклюзии "
"окружающего пространства, шероховатости и металлических карт, известную как "
"текстура ORM."

msgid "Provides access to common operating system functionalities."
msgstr "Предоставляет доступ к общим функциям операционной системы."

msgid ""
"The [OS] class wraps the most common functionalities for communicating with "
"the host operating system, such as the video driver, delays, environment "
"variables, execution of binaries, command line, etc.\n"
"[b]Note:[/b] In Godot 4, [OS] functions related to window management, "
"clipboard, and TTS were moved to the [DisplayServer] singleton (and the "
"[Window] class). Functions related to time were removed and are only "
"available in the [Time] class."
msgstr ""
"Класс [OS] охватывает наиболее распространенные функции для взаимодействия с "
"операционной системой хоста, такие как видеодрайвер, задержки, переменные "
"среды, выполнение двоичных файлов, командная строка и т. д.\n"
"[b]Примечание:[/b] В Godot 4 функции [OS], связанные с управлением окнами, "
"буфером обмена и TTS, были перемещены в синглтон [DisplayServer] (и класс "
"[Window]). Функции, связанные со временем, были удалены и доступны только в "
"классе [Time]."

msgid "Add a custom logger to intercept the internal message stream."
msgstr ""
"Добавьте пользовательский регистратор для перехвата внутреннего потока "
"сообщений."

msgid ""
"Displays a modal dialog box using the host platform's implementation. The "
"engine execution is blocked until the dialog is closed."
msgstr ""
"Отображает модальное диалоговое окно, используя реализацию хост-платформы. "
"Выполнение движка блокируется до тех пор, пока диалог не будет закрыт."

msgid ""
"Shuts down the system MIDI driver. Godot will no longer receive "
"[InputEventMIDI]. See also [method open_midi_inputs] and [method "
"get_connected_midi_inputs].\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, Windows, and Web."
msgstr ""
"Отключает системный драйвер MIDI. Godot больше не будет получать "
"[InputEventMIDI]. См. также [method open_midi_inputs] и [method "
"get_connected_midi_inputs].\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS, Windows и Web."

msgid ""
"Crashes the engine (or the editor if called within a [code]@tool[/code] "
"script). See also [method kill].\n"
"[b]Note:[/b] This method should [i]only[/i] be used for testing the system's "
"crash handler, not for any other purpose. For general error reporting, use "
"(in order of preference) [method @GDScript.assert], [method "
"@GlobalScope.push_error], or [method alert]."
msgstr ""
"Вызывает сбой движка (или редактора, если он вызван в скрипте [code]@tool[/"
"code]. См. также [method kill].\n"
"[b]Примечание:[/b] Этот метод следует использовать [i]только[/i] для "
"тестирования обработчика сбоев системы, а не для каких-либо других целей. Для "
"общего сообщения об ошибках используйте (в порядке предпочтения) [method "
"@GDScript.assert], [method @GlobalScope.push_error] или [method alert]."

msgid ""
"Creates a new instance of Godot that runs independently. The [param "
"arguments] are used in the given order and separated by a space.\n"
"If the process is successfully created, this method returns the new process' "
"ID, which you can use to monitor the process (and potentially terminate it "
"with [method kill]). If the process cannot be created, this method returns "
"[code]-1[/code].\n"
"See [method create_process] if you wish to run a different process.\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
"Создает новый экземпляр Godot, который запускается независимо. [param "
"arguments] используются в указанном порядке и разделяются пробелом.\n"
"Если процесс успешно создан, этот метод возвращает идентификатор нового "
"процесса, который можно использовать для мониторинга процесса (и "
"потенциального завершения его с помощью [method kill]). Если процесс не может "
"быть создан, этот метод возвращает [code]-1[/code].\n"
"См. [method create_process], если вы хотите запустить другой процесс.\n"
"[b]Примечание:[/b] Этот метод реализован в Android, Linux, macOS и Windows."

msgid ""
"Creates a new process that runs independently of Godot. It will not terminate "
"when Godot terminates. The path specified in [param path] must exist and be "
"an executable file or macOS [code].app[/code] bundle. The path is resolved "
"based on the current platform. The [param arguments] are used in the given "
"order and separated by a space.\n"
"On Windows, if [param open_console] is [code]true[/code] and the process is a "
"console app, a new terminal window will be opened.\n"
"If the process is successfully created, this method returns its process ID, "
"which you can use to monitor the process (and potentially terminate it with "
"[method kill]). Otherwise, this method returns [code]-1[/code].\n"
"[b]Example:[/b] Run another instance of the project:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var pid = OS.create_process(OS.get_executable_path(), [])\n"
"[/gdscript]\n"
"[csharp]\n"
"var pid = OS.CreateProcess(OS.GetExecutablePath(), []);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See [method execute] if you wish to run an external command and retrieve the "
"results.\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS, and "
"Windows.\n"
"[b]Note:[/b] On macOS, sandboxed applications are limited to run only "
"embedded helper executables, specified during export or system .app bundle, "
"system .app bundles will ignore arguments."
msgstr ""
"Создает новый процесс, который выполняется независимо от Godot. Он не будет "
"завершен при завершении Godot. Путь, указанный в [param path], должен "
"существовать и быть исполняемым файлом или пакетом macOS [code].app[/code]. "
"Путь определяется на основе текущей платформы. [param arguments] используются "
"в указанном порядке и разделяются пробелом.\n"
"В Windows, если [param open_console] равен [code]true[/code] и процесс "
"является консольным приложением, будет открыто новое окно терминала.\n"
"Если процесс успешно создан, этот метод возвращает его идентификатор "
"процесса, который можно использовать для мониторинга процесса (и потенциально "
"завершить его с помощью [method kill]). В противном случае этот метод "
"возвращает [code]-1[/code].\n"
"[b]Пример:[/b] Запуск другого экземпляра проекта:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var pid = OS.create_process(OS.get_executable_path(), [])\n"
"[/gdscript]\n"
"[csharp]\n"
"var pid = OS.CreateProcess(OS.GetExecutablePath(), []);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. [method execute], если вы хотите запустить внешнюю команду и получить "
"результаты.\n"
"[b]Примечание:[/b] Этот метод реализован в Android, Linux, macOS и Windows.\n"
"[b]Примечание:[/b] В macOS изолированные приложения ограничены запуском "
"только встроенных вспомогательных исполняемых файлов, указанных во время "
"экспорта или системного пакета .app, системные пакеты .app будут игнорировать "
"аргументы."

msgid ""
"Delays execution of the current thread by [param msec] milliseconds. [param "
"msec] must be greater than or equal to [code]0[/code]. Otherwise, [method "
"delay_msec] does nothing and prints an error message.\n"
"[b]Note:[/b] [method delay_msec] is a [i]blocking[/i] way to delay code "
"execution. To delay code execution in a non-blocking way, you may use [method "
"SceneTree.create_timer]. Awaiting with [SceneTreeTimer] delays the execution "
"of code placed below the [code]await[/code] without affecting the rest of the "
"project (or editor, for [EditorPlugin]s and [EditorScript]s).\n"
"[b]Note:[/b] When [method delay_msec] is called on the main thread, it will "
"freeze the project and will prevent it from redrawing and registering input "
"until the delay has passed. When using [method delay_msec] as part of an "
"[EditorPlugin] or [EditorScript], it will freeze the editor but won't freeze "
"the project if it is currently running (since the project is an independent "
"child process)."
msgstr ""
"Задерживает выполнение текущего потока на [param msec] миллисекунд. [param "
"msec] должен быть больше или равен [code]0[/code]. В противном случае [method "
"delay_msec] ничего не делает и выводит сообщение об ошибке.\n"
"[b]Примечание:[/b] [method delay_msec] — это [i]блокирующий[/i] способ "
"задержки выполнения кода. Чтобы задержать выполнение кода неблокирующим "
"способом, можно использовать [method SceneTree.create_timer]. Ожидание с "
"[SceneTreeTimer] задерживает выполнение кода, размещенного под [code]await[/"
"code], не влияя на остальную часть проекта (или редактора для [EditorPlugin] "
"и [EditorScript]).\n"
"[b]Примечание:[/b] Когда [method delay_msec] вызывается в основном потоке, он "
"замораживает проект и не позволяет ему перерисовывать и регистрировать ввод, "
"пока не пройдет задержка. При использовании [method delay_msec] как части "
"[EditorPlugin] или [EditorScript] редактор будет заморожен, но проект не "
"будет заморожен, если он в данный момент запущен (поскольку проект является "
"независимым дочерним процессом)."

msgid ""
"Delays execution of the current thread by [param usec] microseconds. [param "
"usec] must be greater than or equal to [code]0[/code]. Otherwise, [method "
"delay_usec] does nothing and prints an error message.\n"
"[b]Note:[/b] [method delay_usec] is a [i]blocking[/i] way to delay code "
"execution. To delay code execution in a non-blocking way, you may use [method "
"SceneTree.create_timer]. Awaiting with a [SceneTreeTimer] delays the "
"execution of code placed below the [code]await[/code] without affecting the "
"rest of the project (or editor, for [EditorPlugin]s and [EditorScript]s).\n"
"[b]Note:[/b] When [method delay_usec] is called on the main thread, it will "
"freeze the project and will prevent it from redrawing and registering input "
"until the delay has passed. When using [method delay_usec] as part of an "
"[EditorPlugin] or [EditorScript], it will freeze the editor but won't freeze "
"the project if it is currently running (since the project is an independent "
"child process)."
msgstr ""
"Задерживает выполнение текущего потока на [param usec] микросекунд. [param "
"usec] должен быть больше или равен [code]0[/code]. В противном случае [method "
"delay_usec] ничего не делает и выводит сообщение об ошибке.\n"
"[b]Примечание:[/b] [method delay_usec] — это [i]блокирующий[/i] способ "
"задержки выполнения кода. Чтобы задержать выполнение кода неблокирующим "
"способом, можно использовать [method SceneTree.create_timer]. Ожидание с "
"[SceneTreeTimer] задерживает выполнение кода, размещенного под [code]await[/"
"code], не влияя на остальную часть проекта (или редактора для [EditorPlugin] "
"и [EditorScript]).\n"
"[b]Примечание:[/b] Когда [method delay_usec] вызывается в основном потоке, он "
"замораживает проект и не позволяет ему перерисовывать и регистрировать ввод, "
"пока не пройдет задержка. При использовании [method delay_usec] как части "
"[EditorPlugin] или [EditorScript] редактор будет заморожен, но проект не "
"будет заморожен, если он в данный момент запущен (поскольку проект является "
"независимым дочерним процессом)."

msgid ""
"Executes the given process in a [i]blocking[/i] way. The file specified in "
"[param path] must exist and be executable. The system path resolution will be "
"used. The [param arguments] are used in the given order, separated by spaces, "
"and wrapped in quotes.\n"
"If an [param output] array is provided, the complete shell output of the "
"process is appended to [param output] as a single [String] element. If [param "
"read_stderr] is [code]true[/code], the output to the standard error stream is "
"also appended to the array.\n"
"On Windows, if [param open_console] is [code]true[/code] and the process is a "
"console app, a new terminal window is opened.\n"
"This method returns the exit code of the command, or [code]-1[/code] if the "
"process fails to execute.\n"
"[b]Note:[/b] The main thread will be blocked until the executed command "
"terminates. Use [Thread] to create a separate thread that will not block the "
"main thread, or use [method create_process] to create a completely "
"independent process.\n"
"For example, to retrieve a list of the working directory's contents:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var output = []\n"
"var exit_code = OS.execute(\"ls\", [\"-l\", \"/tmp\"], output)\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array output = [];\n"
"int exitCode = OS.Execute(\"ls\", [\"-l\", \"/tmp\"], output);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you wish to access a shell built-in or execute a composite command, a "
"platform-specific shell can be invoked. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var output = []\n"
"OS.execute(\"CMD.exe\", [\"/C\", \"cd %TEMP% && dir\"], output)\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array output = [];\n"
"OS.Execute(\"CMD.exe\", [\"/C\", \"cd %TEMP% && dir\"], output);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS, and "
"Windows.\n"
"[b]Note:[/b] To execute a Windows command interpreter built-in command, "
"specify [code]cmd.exe[/code] in [param path], [code]/c[/code] as the first "
"argument, and the desired command as the second argument.\n"
"[b]Note:[/b] To execute a PowerShell built-in command, specify "
"[code]powershell.exe[/code] in [param path], [code]-Command[/code] as the "
"first argument, and the desired command as the second argument.\n"
"[b]Note:[/b] To execute a Unix shell built-in command, specify shell "
"executable name in [param path], [code]-c[/code] as the first argument, and "
"the desired command as the second argument.\n"
"[b]Note:[/b] On macOS, sandboxed applications are limited to run only "
"embedded helper executables, specified during export.\n"
"[b]Note:[/b] On Android, system commands such as [code]dumpsys[/code] can "
"only be run on a rooted device."
msgstr ""
"Выполняет заданный процесс [i]блокирующим[/i] способом. Файл, указанный в "
"[param path], должен существовать и быть исполняемым. Будет использоваться "
"системное разрешение пути. [param arguments] используются в заданном порядке, "
"разделяются пробелами и заключаются в кавычки.\n"
"Если указан массив [param output], полный вывод оболочки процесса добавляется "
"к [param output] как один элемент [String]. Если [param read_stderr] равен "
"[code]true[/code], вывод в стандартный поток ошибок также добавляется к "
"массиву.\n"
"В Windows, если [param open_console] равен [code]true[/code] и процесс "
"является консольным приложением, открывается новое окно терминала.\n"
"Этот метод возвращает код завершения команды или [code]-1[/code], если "
"процесс не выполняется.\n"
"[b]Примечание:[/b] Основной поток будет заблокирован до тех пор, пока не "
"завершится выполненная команда. Используйте [Thread], чтобы создать отдельный "
"поток, который не будет блокировать основной поток, или используйте [method "
"create_process], чтобы создать полностью независимый процесс.\n"
"Например, чтобы получить список содержимого рабочего каталога:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var output = []\n"
"var exit_code = OS.execute(\"ls\", [\"-l\", \"/tmp\"], output)\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array output = [];\n"
"int exitCode = OS.Execute(\"ls\", [\"-l\", \"/tmp\"], output);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Если вы хотите получить доступ к встроенной оболочке или выполнить составную "
"команду, можно вызвать платформенно-зависимую оболочку. Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var output = []\n"
"OS.execute(\"CMD.exe\", [\"/C\", \"cd %TEMP% && dir\"], output)\n"
"[/gdscript]\n"
"[csharp]\n"
"Godot.Collections.Array output = [];\n"
"OS.Execute(\"CMD.exe\", [\"/C\", \"cd %TEMP% && dir\"], output);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Этот метод реализован в Android, Linux, macOS и Windows.\n"
"[b]Примечание:[/b] Чтобы выполнить встроенную команду интерпретатора команд "
"Windows, укажите [code]cmd.exe[/code] в [param path], [code]/c[/code] в "
"качестве первого аргумента и нужную команду в качестве второго аргумента.\n"
"[b]Примечание:[/b] Чтобы выполнить встроенную команду PowerShell, укажите "
"[code]powershell.exe[/code] в [param path], [code]-Command[/code] в качестве "
"первого аргумента и нужную команду в качестве второго аргумента.\n"
"[b]Примечание:[/b] Чтобы выполнить встроенную команду оболочки Unix, укажите "
"имя исполняемого файла оболочки в [param path], [code]-c[/code] в качестве "
"первого аргумента и нужную команду в качестве второго аргумента.\n"
"[b]Примечание:[/b] В macOS изолированные приложения ограничены запуском "
"только встроенных вспомогательных исполняемых файлов, указанных во время "
"экспорта.\n"
"[b]Примечание:[/b] В Android системные команды, такие как [code]dumpsys[/"
"code], могут быть запущены только на устройстве с правами root."

msgid ""
"Creates a new process that runs independently of Godot with redirected IO. It "
"will not terminate when Godot terminates. The path specified in [param path] "
"must exist and be an executable file or macOS [code].app[/code] bundle. The "
"path is resolved based on the current platform. The [param arguments] are "
"used in the given order and separated by a space.\n"
"If [param blocking] is [code]false[/code], created pipes work in non-blocking "
"mode, i.e. read and write operations will return immediately. Use [method "
"FileAccess.get_error] to check if the last read/write operation was "
"successful.\n"
"If the process cannot be created, this method returns an empty [Dictionary]. "
"Otherwise, this method returns a [Dictionary] with the following keys:\n"
"- [code]\"stdio\"[/code] - [FileAccess] to access the process stdin and "
"stdout pipes (read/write).\n"
"- [code]\"stderr\"[/code] - [FileAccess] to access the process stderr pipe "
"(read only).\n"
"- [code]\"pid\"[/code] - Process ID as an [int], which you can use to monitor "
"the process (and potentially terminate it with [method kill]).\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS, and "
"Windows.\n"
"[b]Note:[/b] To execute a Windows command interpreter built-in command, "
"specify [code]cmd.exe[/code] in [param path], [code]/c[/code] as the first "
"argument, and the desired command as the second argument.\n"
"[b]Note:[/b] To execute a PowerShell built-in command, specify "
"[code]powershell.exe[/code] in [param path], [code]-Command[/code] as the "
"first argument, and the desired command as the second argument.\n"
"[b]Note:[/b] To execute a Unix shell built-in command, specify shell "
"executable name in [param path], [code]-c[/code] as the first argument, and "
"the desired command as the second argument.\n"
"[b]Note:[/b] On macOS, sandboxed applications are limited to run only "
"embedded helper executables, specified during export or system .app bundle, "
"system .app bundles will ignore arguments."
msgstr ""
"Создает новый процесс, который выполняется независимо от Godot с "
"перенаправленным вводом-выводом. Он не будет завершен при завершении Godot. "
"Путь, указанный в [param path], должен существовать и быть исполняемым файлом "
"или пакетом macOS [code].app[/code]. Путь определяется на основе текущей "
"платформы. [param arguments] используются в указанном порядке и разделяются "
"пробелом.\n"
"Если [param blocking] равно [code]false[/code], созданные каналы работают в "
"неблокируемом режиме, т. е. операции чтения и записи будут возвращаться "
"немедленно. Используйте [method FileAccess.get_error], чтобы проверить, была "
"ли последняя операция чтения/записи успешной.\n"
"Если процесс не может быть создан, этот метод возвращает пустой [Dictionary]. "
"В противном случае этот метод возвращает [Dictionary] со следующими ключами:\n"
"- [code]\"stdio\"[/code] - [FileAccess] для доступа к каналам stdin и stdout "
"процесса (чтение/запись).\n"
"- [code]\"stderr\"[/code] - [FileAccess] для доступа к каналу stderr процесса "
"(только для чтения).\n"
"- [code]\"pid\"[/code] - идентификатор процесса как [int], который можно "
"использовать для мониторинга процесса (и потенциального его завершения с "
"помощью [method kill]).\n"
"[b]Примечание:[/b] Этот метод реализован в Android, Linux, macOS и Windows.\n"
"[b]Примечание:[/b] Чтобы выполнить встроенную команду интерпретатора команд "
"Windows, укажите [code]cmd.exe[/code] в [param path], [code]/c[/code] в "
"качестве первого аргумента и нужную команду в качестве второго аргумента.\n"
"[b]Примечание:[/b] Чтобы выполнить встроенную команду PowerShell, укажите "
"[code]powershell.exe[/code] в [param path], [code]-Command[/code] в качестве "
"первого аргумента и нужную команду в качестве второго аргумента.\n"
"[b]Примечание:[/b] Чтобы выполнить встроенную команду оболочки Unix, укажите "
"имя исполняемого файла оболочки в [param path], [code]-c[/code] в качестве "
"первого аргумента и нужную команду в качестве второго аргумента.\n"
"[b]Примечание:[/b] В macOS изолированные приложения ограничены запуском "
"только встроенных вспомогательных исполняемых файлов, указанных во время "
"экспорта или системного пакета .app, системные пакеты .app будут игнорировать "
"аргументы."

msgid ""
"Finds the keycode for the given string. The returned values are equivalent to "
"the [enum Key] constants.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(OS.find_keycode_from_string(\"C\"))         # Prints 67 (KEY_C)\n"
"print(OS.find_keycode_from_string(\"Escape\"))    # Prints 4194305 "
"(KEY_ESCAPE)\n"
"print(OS.find_keycode_from_string(\"Shift+Tab\")) # Prints 37748738 "
"(KEY_MASK_SHIFT | KEY_TAB)\n"
"print(OS.find_keycode_from_string(\"Unknown\"))   # Prints 0 (KEY_NONE)\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(OS.FindKeycodeFromString(\"C\"));         // Prints C (Key.C)\n"
"GD.Print(OS.FindKeycodeFromString(\"Escape\"));    // Prints Escape "
"(Key.Escape)\n"
"GD.Print(OS.FindKeycodeFromString(\"Shift+Tab\")); // Prints 37748738 "
"(KeyModifierMask.MaskShift | Key.Tab)\n"
"GD.Print(OS.FindKeycodeFromString(\"Unknown\"));   // Prints None (Key.None)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method get_keycode_string]."
msgstr ""
"Находит код клавиши для заданной строки. Возвращаемые значения эквивалентны "
"константам [enum Key].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(OS.find_keycode_from_string(\"C\"))         # Выводит 67 (KEY_C)\n"
"print(OS.find_keycode_from_string(\"Escape\"))    # Выводит 4194305 "
"(KEY_ESCAPE)\n"
"print(OS.find_keycode_from_string(\"Shift+Tab\")) # Выводит 37748738 "
"(KEY_MASK_SHIFT | KEY_TAB)\n"
"print(OS.find_keycode_from_string(\"Unknown\"))   # Выводит 0 (KEY_NONE)\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(OS.FindKeycodeFromString(\"C\"));         // Выводит C (Key.C)\n"
"GD.Print(OS.FindKeycodeFromString(\"Escape\"));    // Выводит Escape "
"(Key.Escape)\n"
"GD.Print(OS.FindKeycodeFromString(\"Shift+Tab\")); // Выводит 37748738 "
"(KeyModifierMask.MaskShift | Key.Tab)\n"
"GD.Print(OS.FindKeycodeFromString(\"Unknown\"));   // Выводит None "
"(Key.None)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. также [method get_keycode_string]."

msgid ""
"Returns the [i]global[/i] cache data directory according to the operating "
"system's standards.\n"
"On the Linux/BSD platform, this path can be overridden by setting the "
"[code]XDG_CACHE_HOME[/code] environment variable before starting the project. "
"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot projects[/"
"url] in the documentation for more information. See also [method "
"get_config_dir] and [method get_data_dir].\n"
"Not to be confused with [method get_user_data_dir], which returns the "
"[i]project-specific[/i] user data path."
msgstr ""
"Возвращает [i]глобальный[/i] каталог данных кэша в соответствии со "
"стандартами операционной системы.\n"
"На платформе Linux/BSD этот путь можно переопределить, установив переменную "
"среды [code]XDG_CACHE_HOME[/code] перед запуском проекта. Для получения "
"дополнительной информации см. [url=$DOCS_URL/tutorials/io/"
"data_paths.html]Пути к файлам в проектах Godot[/url] в документации. См. "
"также [method get_config_dir] и [method get_data_dir].\n"
"Не путать с [method get_user_data_dir], который возвращает [i]специфичный для "
"проекта[/i] путь к данным пользователя."

msgid ""
"Returns the command-line arguments passed to the engine.\n"
"Command-line arguments can be written in any form, including both [code]--key "
"value[/code] and [code]--key=value[/code] forms so they can be properly "
"parsed, as long as custom command-line arguments do not conflict with engine "
"arguments.\n"
"You can also incorporate environment variables using the [method "
"get_environment] method.\n"
"You can set [member ProjectSettings.editor/run/main_run_args] to define "
"command-line arguments to be passed by the editor when running the project.\n"
"[b]Example:[/b] Parse command-line arguments into a [Dictionary] using the "
"[code]--key=value[/code] form for arguments:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var arguments = {}\n"
"for argument in OS.get_cmdline_args():\n"
"\tif argument.contains(\"=\"):\n"
"\t\tvar key_value = argument.split(\"=\")\n"
"\t\targuments[key_value[0].trim_prefix(\"--\")] = key_value[1]\n"
"\telse:\n"
"\t\t# Options without an argument will be present in the dictionary,\n"
"\t\t# with the value set to an empty string.\n"
"\t\targuments[argument.trim_prefix(\"--\")] = \"\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var arguments = new Dictionary<string, string>();\n"
"foreach (var argument in OS.GetCmdlineArgs())\n"
"{\n"
"\tif (argument.Contains('='))\n"
"\t{\n"
"\t\tstring[] keyValue = argument.Split(\"=\");\n"
"\t\targuments[keyValue[0].TrimPrefix(\"--\")] = keyValue[1];\n"
"\t}\n"
"\telse\n"
"\t{\n"
"\t\t// Options without an argument will be present in the dictionary,\n"
"\t\t// with the value set to an empty string.\n"
"\t\targuments[argument.TrimPrefix(\"--\")] = \"\";\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Passing custom user arguments directly is not recommended, as "
"the engine may discard or modify them. Instead, pass the standard UNIX double "
"dash ([code]--[/code]) and then the custom arguments, which the engine will "
"ignore by design. These can be read via [method get_cmdline_user_args]."
msgstr ""
"Возвращает аргументы командной строки, переданные движку.\n"
"Аргументы командной строки могут быть записаны в любой форме, включая формы "
"[code]--key value[/code] и [code]--key=value[/code], чтобы их можно было "
"правильно проанализировать, пока пользовательские аргументы командной строки "
"не конфликтуют с аргументами движка.\n"
"Вы также можете включить переменные среды, используя метод [method "
"get_environment].\n"
"Вы можете задать [member ProjectSettings.editor/run/main_run_args], чтобы "
"определить аргументы командной строки, которые будут переданы редактором при "
"запуске проекта.\n"
"[b]Пример:[/b] Анализ аргументов командной строки в [Dictionary], используя "
"форму [code]--key=value[/code] для аргументов:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var arguments = {}\n"
"for argument in OS.get_cmdline_args():\n"
"\tif argument.contains(\"=\"):\n"
"\t\tvar key_value = argument.split(\"=\")\n"
"\t\targuments[key_value[0].trim_prefix(\"--\")] = key_value[1]\n"
"\telse:\n"
"\t\t# Варианты без аргумента будут присутствовать в словаре,\n"
"\t\t# со значением, равным пустой строке.\n"
"\t\targuments[argument.trim_prefix(\"--\")] = \"\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var arguments = new Dictionary<string, string>();\n"
"foreach (var argument in OS.GetCmdlineArgs())\n"
"{\n"
"\tif (argument.Contains('='))\n"
"\t{\n"
"\t\tstring[] keyValue = argument.Split(\"=\");\n"
"\t\targuments[keyValue[0].TrimPrefix(\"--\")] = keyValue[1];\n"
"\t}\n"
"\telse\n"
"\t{\n"
"\t\t// Варианты без аргумента будут присутствовать в словаре,\n"
"\t\t// со значением, равным пустой строке.\n"
"\t\targuments[argument.TrimPrefix(\"--\")] = \"\";\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Передача пользовательских аргументов напрямую не "
"рекомендуется, так как движок может отбросить или изменить их. Вместо этого "
"передайте стандартный двойной дефис UNIX ([code]--[/code]), а затем "
"пользовательские аргументы, которые движок будет игнорировать по умолчанию. "
"Их можно прочитать с помощью [method get_cmdline_user_args]."

msgid ""
"Returns the command-line user arguments passed to the engine. User arguments "
"are ignored by the engine and reserved for the user. They are passed after "
"the double dash [code]--[/code] argument. [code]++[/code] may be used when "
"[code]--[/code] is intercepted by another program (such as [code]startx[/"
"code]).\n"
"[codeblock]\n"
"# Godot has been executed with the following command:\n"
"# godot --fullscreen -- --level=2 --hardcore\n"
"\n"
"OS.get_cmdline_args()      # Returns [\"--fullscreen\", \"--level=2\", \"--"
"hardcore\"]\n"
"OS.get_cmdline_user_args() # Returns [\"--level=2\", \"--hardcore\"]\n"
"[/codeblock]\n"
"To get all passed arguments, use [method get_cmdline_args]."
msgstr ""
"Возвращает аргументы пользователя командной строки, переданные движку. "
"Аргументы пользователя игнорируются движком и зарезервированы для "
"пользователя. Они передаются после аргумента с двойным тире [code]--[/code]. "
"[code]++[/code] может использоваться, когда [code]--[/code] перехватывается "
"другой программой (например, [code]startx[/code]).\n"
"[codeblock]\n"
"# Godot был приведен в исполнение с помощью следующей команды:\n"
"# godot --fullscreen -- --level=2 --hardcore\n"
"\n"
"OS.get_cmdline_args()      # Возвращает [\"--fullscreen\", \"--level=2\", \"--"
"hardcore\"]\n"
"OS.get_cmdline_user_args() # Возвращает [\"--level=2\", \"--hardcore\"]\n"
"[/codeblock]\n"
"Чтобы получить все переданные аргументы, используйте [method "
"get_cmdline_args]."

msgid ""
"Returns the [i]global[/i] user configuration directory according to the "
"operating system's standards.\n"
"On the Linux/BSD platform, this path can be overridden by setting the "
"[code]XDG_CONFIG_HOME[/code] environment variable before starting the "
"project. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot "
"projects[/url] in the documentation for more information. See also [method "
"get_cache_dir] and [method get_data_dir].\n"
"Not to be confused with [method get_user_data_dir], which returns the "
"[i]project-specific[/i] user data path."
msgstr ""
"Возвращает [i]глобальный[/i] каталог конфигурации пользователя в соответствии "
"со стандартами операционной системы.\n"
"На платформе Linux/BSD этот путь можно переопределить, установив переменную "
"среды [code]XDG_CONFIG_HOME[/code] перед запуском проекта. Для получения "
"дополнительной информации см. [url=$DOCS_URL/tutorials/io/"
"data_paths.html]Пути к файлам в проектах Godot[/url] в документации. См. "
"также [method get_cache_dir] и [method get_data_dir].\n"
"Не путать с [method get_user_data_dir], который возвращает [i]специфичный для "
"проекта[/i] путь к данным пользователя."

msgid ""
"Returns an array of connected MIDI device names, if they exist. Returns an "
"empty array if the system MIDI driver has not previously been initialized "
"with [method open_midi_inputs]. See also [method close_midi_inputs].\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, Windows, and Web.\n"
"[b]Note:[/b] On the Web platform, Web MIDI needs to be supported by the "
"browser. [url=https://caniuse.com/midi]For the time being[/url], it is "
"currently supported by all major browsers, except Safari.\n"
"[b]Note:[/b] On the Web platform, using MIDI input requires a browser "
"permission to be granted first. This permission request is performed when "
"calling [method open_midi_inputs]. The browser will refrain from processing "
"MIDI input until the user accepts the permission request."
msgstr ""
"Возвращает массив имен подключенных устройств MIDI, если они существуют. "
"Возвращает пустой массив, если системный драйвер MIDI ранее не был "
"инициализирован с помощью [method open_midi_inputs]. См. также [method "
"close_midi_inputs].\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS, Windows и Web.\n"
"[b]Примечание:[/b] На веб-платформе веб-MIDI должен поддерживаться браузером. "
"[url=https://caniuse.com/midi]На данный момент[/url] он поддерживается всеми "
"основными браузерами, кроме Safari.\n"
"[b]Примечание:[/b] На веб-платформе использование ввода MIDI требует "
"предварительного предоставления разрешения браузеру. Этот запрос разрешения "
"выполняется при вызове [method open_midi_inputs]. Браузер воздержится от "
"обработки ввода MIDI, пока пользователь не примет запрос разрешения."

msgid ""
"Returns the [i]global[/i] user data directory according to the operating "
"system's standards.\n"
"On the Linux/BSD platform, this path can be overridden by setting the "
"[code]XDG_DATA_HOME[/code] environment variable before starting the project. "
"See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in Godot projects[/"
"url] in the documentation for more information. See also [method "
"get_cache_dir] and [method get_config_dir].\n"
"Not to be confused with [method get_user_data_dir], which returns the "
"[i]project-specific[/i] user data path."
msgstr ""
"Возвращает [i]глобальный[/i] каталог пользовательских данных в соответствии "
"со стандартами операционной системы.\n"
"На платформе Linux/BSD этот путь можно переопределить, установив переменную "
"среды [code]XDG_DATA_HOME[/code] перед запуском проекта. Для получения "
"дополнительной информации см. [url=$DOCS_URL/tutorials/io/"
"data_paths.html]Пути к файлам в проектах Godot[/url] в документации. См. "
"также [method get_cache_dir] и [method get_config_dir].\n"
"Не путать с [method get_user_data_dir], который возвращает [i]специфичный для "
"проекта[/i] путь к пользовательским данным."

msgid ""
"Returns the name of the distribution for Linux and BSD platforms (e.g. "
"\"Ubuntu\", \"Manjaro\", \"OpenBSD\", etc.).\n"
"Returns the same value as [method get_name] for stock Android ROMs, but "
"attempts to return the custom ROM name for popular Android derivatives such "
"as \"LineageOS\".\n"
"Returns the same value as [method get_name] for other platforms.\n"
"[b]Note:[/b] This method is not supported on the Web platform. It returns an "
"empty string."
msgstr ""
"Возвращает имя дистрибутива для платформ Linux и BSD (например, \"Ubuntu\", "
"\"Manjaro\", \"OpenBSD\" и т. д.).\n"
"Возвращает то же значение, что и [method get_name] для стандартных Android "
"ROM, но пытается вернуть пользовательское имя ROM для популярных производных "
"Android, таких как \"LineageOS\".\n"
"Возвращает то же значение, что и [method get_name] для других платформ.\n"
"[b]Примечание:[/b] Этот метод не поддерживается на веб-платформе. Он "
"возвращает пустую строку."

msgid ""
"Generates a [PackedByteArray] of cryptographically secure random bytes with "
"given [param size].\n"
"[b]Note:[/b] Generating large quantities of bytes using this method can "
"result in locking and entropy of lower quality on most platforms. Using "
"[method Crypto.generate_random_bytes] is preferred in most cases."
msgstr ""
"Генерирует [PackedByteArray] криптографически безопасных случайных байтов с "
"заданным [param size].\n"
"[b]Примечание:[/b] Генерация больших объемов байтов с использованием этого "
"метода может привести к блокировке и энтропии более низкого качества на "
"большинстве платформ. Использование [method Crypto.generate_random_bytes] "
"является предпочтительным в большинстве случаев."

msgid ""
"Returns the value of the given environment variable, or an empty string if "
"[param variable] doesn't exist.\n"
"[b]Note:[/b] Double-check the casing of [param variable]. Environment "
"variable names are case-sensitive on all platforms except Windows.\n"
"[b]Note:[/b] On macOS, applications do not have access to shell environment "
"variables."
msgstr ""
"Возвращает значение заданной переменной среды или пустую строку, если [param "
"variable] не существует.\n"
"[b]Примечание:[/b] Дважды проверьте регистр [param variable]. Имена "
"переменных среды чувствительны к регистру на всех платформах, кроме Windows.\n"
"[b]Примечание:[/b] В macOS приложения не имеют доступа к переменным среды "
"оболочки."

msgid ""
"Returns the file path to the current engine executable.\n"
"[b]Note:[/b] On macOS, if you want to launch another instance of Godot, "
"always use [method create_instance] instead of relying on the executable path."
msgstr ""
"Возвращает путь к текущему исполняемому файлу движка.\n"
"[b]Примечание:[/b] В macOS, если вы хотите запустить другой экземпляр Godot, "
"всегда используйте [method create_instance] вместо того, чтобы полагаться на "
"путь к исполняемому файлу."

msgid ""
"On Android devices: Returns the list of dangerous permissions that have been "
"granted.\n"
"On macOS: Returns the list of granted permissions and user selected folders "
"accessible to the application (sandboxed applications only). Use the native "
"file dialog to request folder access permission.\n"
"On iOS, visionOS: Returns the list of granted permissions."
msgstr ""
"На устройствах Android: возвращает список предоставленных опасных "
"разрешений.\n"
"На macOS: возвращает список предоставленных разрешений и выбранных "
"пользователем папок, доступных приложению (только для изолированных "
"приложений). Используйте встроенный диалог файлов для запроса разрешения на "
"доступ к папке.\n"
"На iOS, visionOS: возвращает список предоставленных разрешений."

msgid ""
"Returns the given keycode as a [String].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(OS.get_keycode_string(KEY_C))                    # Prints \"C\"\n"
"print(OS.get_keycode_string(KEY_ESCAPE))               # Prints \"Escape\"\n"
"print(OS.get_keycode_string(KEY_MASK_SHIFT | KEY_TAB)) # Prints "
"\"Shift+Tab\"\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(OS.GetKeycodeString(Key.C));                                    // "
"Prints \"C\"\n"
"GD.Print(OS.GetKeycodeString(Key.Escape));                               // "
"Prints \"Escape\"\n"
"GD.Print(OS.GetKeycodeString((Key)KeyModifierMask.MaskShift | Key.Tab)); // "
"Prints \"Shift+Tab\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See also [method find_keycode_from_string], [member InputEventKey.keycode], "
"and [method InputEventKey.get_keycode_with_modifiers]."
msgstr ""
"Возвращает заданный код клавиши как [String].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(OS.get_keycode_string(KEY_C))                    # Выводит \"C\"\n"
"print(OS.get_keycode_string(KEY_ESCAPE))               # Выводит \"Escape\"\n"
"print(OS.get_keycode_string(KEY_MASK_SHIFT | KEY_TAB)) # Выводит "
"\"Shift+Tab\"\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(OS.GetKeycodeString(Key.C));                                    // "
"Выводит \"C\"\n"
"GD.Print(OS.GetKeycodeString(Key.Escape));                               // "
"Выводит \"Escape\"\n"
"GD.Print(OS.GetKeycodeString((Key)KeyModifierMask.MaskShift | Key.Tab)); // "
"Выводит \"Shift+Tab\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. также [method find_keycode_from_string], [member InputEventKey.keycode] и "
"[method InputEventKey.get_keycode_with_modifiers]."

msgid ""
"Returns the host OS locale as a [String] of the form "
"[code]language_Script_COUNTRY_VARIANT@extra[/code]. Every substring after "
"[code]language[/code] is optional and may not exist.\n"
"- [code]language[/code] - 2 or 3-letter [url=https://en.wikipedia.org/wiki/"
"List_of_ISO_639-1_codes]language code[/url], in lower case.\n"
"- [code skip-lint]Script[/code] - 4-letter [url=https://en.wikipedia.org/wiki/"
"ISO_15924]script code[/url], in title case.\n"
"- [code]COUNTRY[/code] - 2 or 3-letter [url=https://en.wikipedia.org/wiki/"
"ISO_3166-1]country code[/url], in upper case.\n"
"- [code]VARIANT[/code] - language variant, region and sort order. The variant "
"can have any number of underscored keywords.\n"
"- [code]extra[/code] - semicolon separated list of additional key words. This "
"may include currency, calendar, sort order and numbering system information.\n"
"If you want only the language code and not the fully specified locale from "
"the OS, you can use [method get_locale_language]."
msgstr ""
"Возвращает локаль ОС хоста как [String] в форме "
"[code]language_Script_COUNTRY_VARIANT@extra[/code]. Каждая подстрока после "
"[code]language[/code] является необязательной и может отсутствовать.\n"
"- [code]language[/code] - 2-х или 3-х буквенный [url=https://en.wikipedia.org/"
"wiki/List_of_ISO_639-1_codes]код языка[/url] в нижнем регистре.\n"
"- [code skip-lint]Script[/code] - 4-х буквенный [url=https://en.wikipedia.org/"
"wiki/ISO_15924]код скрипта[/url] в верхнем регистре.\n"
"- [code]COUNTRY[/code] - 2-х или 3-х буквенный [url=https://en.wikipedia.org/"
"wiki/ISO_3166-1]код страны[/url] в верхнем регистре.\n"
"- [code]VARIANT[/code] - языковой вариант, регион и порядок сортировки. "
"Вариант может иметь любое количество подчеркнутых ключевых слов.\n"
"- [code]extra[/code] - список дополнительных ключевых слов, разделенных "
"точкой с запятой. Это может включать информацию о валюте, календаре, порядке "
"сортировки и системе нумерации.\n"
"Если вам нужен только код языка, а не полностью указанная локаль из ОС, вы "
"можете использовать [method get_locale_language]."

msgid ""
"Returns the host OS locale's 2 or 3-letter [url=https://en.wikipedia.org/wiki/"
"List_of_ISO_639-1_codes]language code[/url] as a string which should be "
"consistent on all platforms. This is equivalent to extracting the "
"[code]language[/code] part of the [method get_locale] string.\n"
"This can be used to narrow down fully specified locale strings to only the "
"\"common\" language code, when you don't need the additional information "
"about country code or variants. For example, for a French Canadian user with "
"[code]fr_CA[/code] locale, this would return [code]fr[/code]."
msgstr ""
"Возвращает 2-х или 3-буквенный [url=https://en.wikipedia.org/wiki/"
"List_of_ISO_639-1_codes]код языка[/url] операционной системы хоста в виде "
"строки, которая должна быть единообразной на всех платформах. Это "
"эквивалентно извлечению части [code]language[/code] строки [method "
"get_locale].\n"
"Это можно использовать для сужения полностью указанных строк локали только до "
"«общего» кода языка, когда вам не нужна дополнительная информация о коде "
"страны или вариантах. Например, для франкоканадского пользователя с локалью "
"[code]fr_CA[/code] это вернет [code]fr[/code]."

msgid ""
"Returns the ID of the main thread. See [method get_thread_caller_id].\n"
"[b]Note:[/b] Thread IDs are not deterministic and may be reused across "
"application restarts."
msgstr ""
"Возвращает идентификатор основного потока. См. [method "
"get_thread_caller_id].\n"
"[b]Примечание:[/b] Идентификаторы потоков не являются детерминированными и "
"могут повторно использоваться при перезапусках приложения."

msgid ""
"Returns a [Dictionary] containing information about the current memory with "
"the following entries:\n"
"- [code]\"physical\"[/code] - total amount of usable physical memory in "
"bytes. This value can be slightly less than the actual physical memory "
"amount, since it does not include memory reserved by the kernel and devices.\n"
"- [code]\"free\"[/code] - amount of physical memory, that can be immediately "
"allocated without disk access or other costly operations, in bytes. The "
"process might be able to allocate more physical memory, but this action will "
"require moving inactive pages to disk, which can be expensive.\n"
"- [code]\"available\"[/code] - amount of memory that can be allocated without "
"extending the swap file(s), in bytes. This value includes both physical "
"memory and swap.\n"
"- [code]\"stack\"[/code] - size of the current thread stack in bytes.\n"
"[b]Note:[/b] Each entry's value may be [code]-1[/code] if it is unknown."
msgstr ""
"Возвращает [Dictionary], содержащий информацию о текущей памяти со следующими "
"записями:\n"
"- [code]\"physical\"[/code] - общий объем используемой физической памяти в "
"байтах. Это значение может быть немного меньше фактического объема физической "
"памяти, поскольку оно не включает память, зарезервированную ядром и "
"устройствами.\n"
"- [code]\"free\"[/code] - объем физической памяти, который может быть "
"немедленно выделен без доступа к диску или других затратных операций, в "
"байтах. Процесс может выделить больше физической памяти, но это действие "
"потребует перемещения неактивных страниц на диск, что может быть затратно.\n"
"- [code]\"available\"[/code] - объем памяти, который может быть выделен без "
"расширения файла(ов) подкачки, в байтах. Это значение включает как физическую "
"память, так и подкачку.\n"
"- [code]\"stack\"[/code] - размер стека текущего потока в байтах.\n"
"[b]Примечание:[/b] Значение каждой записи может быть [code]-1[/code], если "
"оно неизвестно."

msgid ""
"Returns the model name of the current device.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, macOS, and Windows. "
"Returns [code]\"GenericDevice\"[/code] on unsupported platforms."
msgstr ""
"Возвращает название модели текущего устройства.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, macOS и Windows. "
"Возвращает [code]\"GenericDevice\"[/code] на неподдерживаемых платформах."

msgid ""
"Returns the name of the host platform.\n"
"- On Windows, this is [code]\"Windows\"[/code].\n"
"- On macOS, this is [code]\"macOS\"[/code].\n"
"- On Linux-based operating systems, this is [code]\"Linux\"[/code].\n"
"- On BSD-based operating systems, this is [code]\"FreeBSD\"[/code], [code]"
"\"NetBSD\"[/code], [code]\"OpenBSD\"[/code], or [code]\"BSD\"[/code] as a "
"fallback.\n"
"- On Android, this is [code]\"Android\"[/code].\n"
"- On iOS, this is [code]\"iOS\"[/code].\n"
"- On Web, this is [code]\"Web\"[/code].\n"
"[b]Note:[/b] Custom builds of the engine may support additional platforms, "
"such as consoles, possibly returning other names.\n"
"[codeblocks]\n"
"[gdscript]\n"
"match OS.get_name():\n"
"\t\"Windows\":\n"
"\t\tprint(\"Welcome to Windows!\")\n"
"\t\"macOS\":\n"
"\t\tprint(\"Welcome to macOS!\")\n"
"\t\"Linux\", \"FreeBSD\", \"NetBSD\", \"OpenBSD\", \"BSD\":\n"
"\t\tprint(\"Welcome to Linux/BSD!\")\n"
"\t\"Android\":\n"
"\t\tprint(\"Welcome to Android!\")\n"
"\t\"iOS\":\n"
"\t\tprint(\"Welcome to iOS!\")\n"
"\t\"Web\":\n"
"\t\tprint(\"Welcome to the Web!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"switch (OS.GetName())\n"
"{\n"
"\tcase \"Windows\":\n"
"\t\tGD.Print(\"Welcome to Windows\");\n"
"\t\tbreak;\n"
"\tcase \"macOS\":\n"
"\t\tGD.Print(\"Welcome to macOS!\");\n"
"\t\tbreak;\n"
"\tcase \"Linux\":\n"
"\tcase \"FreeBSD\":\n"
"\tcase \"NetBSD\":\n"
"\tcase \"OpenBSD\":\n"
"\tcase \"BSD\":\n"
"\t\tGD.Print(\"Welcome to Linux/BSD!\");\n"
"\t\tbreak;\n"
"\tcase \"Android\":\n"
"\t\tGD.Print(\"Welcome to Android!\");\n"
"\t\tbreak;\n"
"\tcase \"iOS\":\n"
"\t\tGD.Print(\"Welcome to iOS!\");\n"
"\t\tbreak;\n"
"\tcase \"Web\":\n"
"\t\tGD.Print(\"Welcome to the Web!\");\n"
"\t\tbreak;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] On Web platforms, it is still possible to determine the host "
"platform's OS with feature tags. See [method has_feature]."
msgstr ""
"Возвращает имя хост-платформы.\n"
"- В Windows это [code]\"Windows\"[/code].\n"
"- В macOS это [code]\"macOS\"[/code].\n"
"- В операционных системах на базе Linux это [code]\"Linux\"[/code].\n"
"- В операционных системах на базе BSD это [code]\"FreeBSD\"[/code], [code]"
"\"NetBSD\"[/code], [code]\"OpenBSD\"[/code] или [code]\"BSD\"[/code] в "
"качестве резерва.\n"
"- В Android это [code]\"Android\"[/code].\n"
"- В iOS это [code]\"iOS\"[/code].\n"
"- В Web это [code]\"Web\"[/code].\n"
"[b]Примечание:[/b] Пользовательские сборки движка могут поддерживать "
"дополнительные платформы, такие как консоли, возможно, возвращая другие "
"имена.\n"
"[codeblocks]\n"
"[gdscript]\n"
"match OS.get_name():\n"
"\t\"Windows\":\n"
"\t\tprint(\"Welcome to Windows!\")\n"
"\t\"macOS\":\n"
"\t\tprint(\"Welcome to macOS!\")\n"
"\t\"Linux\", \"FreeBSD\", \"NetBSD\", \"OpenBSD\", \"BSD\":\n"
"\t\tprint(\"Welcome to Linux/BSD!\")\n"
"\t\"Android\":\n"
"\t\tprint(\"Welcome to Android!\")\n"
"\t\"iOS\":\n"
"\t\tprint(\"Welcome to iOS!\")\n"
"\t\"Web\":\n"
"\t\tprint(\"Welcome to the Web!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"switch (OS.GetName())\n"
"{\n"
"\tcase \"Windows\":\n"
"\t\tGD.Print(\"Welcome to Windows\");\n"
"\t\tbreak;\n"
"\tcase \"macOS\":\n"
"\t\tGD.Print(\"Welcome to macOS!\");\n"
"\t\tbreak;\n"
"\tcase \"Linux\":\n"
"\tcase \"FreeBSD\":\n"
"\tcase \"NetBSD\":\n"
"\tcase \"OpenBSD\":\n"
"\tcase \"BSD\":\n"
"\t\tGD.Print(\"Welcome to Linux/BSD!\");\n"
"\t\tbreak;\n"
"\tcase \"Android\":\n"
"\t\tGD.Print(\"Welcome to Android!\");\n"
"\t\tbreak;\n"
"\tcase \"iOS\":\n"
"\t\tGD.Print(\"Welcome to iOS!\");\n"
"\t\tbreak;\n"
"\tcase \"Web\":\n"
"\t\tGD.Print(\"Welcome to the Web!\");\n"
"\t\tbreak;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] На веб-платформах по-прежнему возможно определить ОС хост-"
"платформы с помощью тегов функций. См. [method has_feature]."

msgid ""
"Returns the exit code of a spawned process once it has finished running (see "
"[method is_process_running]).\n"
"Returns [code]-1[/code] if the [param pid] is not a PID of a spawned child "
"process, the process is still running, or the method is not implemented for "
"the current platform.\n"
"[b]Note:[/b] Returns [code]-1[/code] if the [param pid] is a macOS bundled "
"app process.\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and Windows."
msgstr ""
"Возвращает код выхода порожденного процесса после завершения его выполнения "
"(см. [method is_process_running]).\n"
"Возвращает [code]-1[/code], если [param pid] не является PID порожденного "
"дочернего процесса, процесс все еще выполняется или метод не реализован для "
"текущей платформы.\n"
"[b]Примечание:[/b] Возвращает [code]-1[/code], если [param pid] является "
"процессом приложения, связанным с macOS.\n"
"[b]Примечание:[/b] Этот метод реализован в Android, Linux, macOS и Windows."

msgid ""
"Returns the number used by the host machine to uniquely identify this "
"application.\n"
"[b]Note:[/b] On Web, this method always returns [code]0[/code]."
msgstr ""
"Возвращает номер, используемый хост-машиной для уникальной идентификации "
"этого приложения.\n"
"[b]Примечание:[/b] В Интернете этот метод всегда возвращает [code]0[/code]."

msgid ""
"Returns the number of [i]logical[/i] CPU cores available on the host machine. "
"On CPUs with HyperThreading enabled, this number will be greater than the "
"number of [i]physical[/i] CPU cores."
msgstr ""
"Возвращает количество [i]логических[/i] ядер ЦП, доступных на хост-машине. На "
"ЦП с включенной функцией HyperThreading это число будет больше количества "
"[i]физических[/i] ядер ЦП."

msgid ""
"Returns the full name of the CPU model on the host machine (e.g. [code]"
"\"Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz\"[/code]).\n"
"[b]Note:[/b] This method is only implemented on Windows, macOS, Linux and "
"iOS. On Android and Web, [method get_processor_name] returns an empty string."
msgstr ""
"Возвращает полное имя модели ЦП на хост-компьютере (например, [code]"
"\"Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz\"[/code]).\n"
"[b]Примечание:[/b] Этот метод реализован только в Windows, macOS, Linux и "
"iOS. На Android и в Интернете [method get_processor_name] возвращает пустую "
"строку."

msgid ""
"Returns the list of command line arguments that will be used when the project "
"automatically restarts using [method set_restart_on_exit]. See also [method "
"is_restart_on_exit_set]."
msgstr ""
"Возвращает список аргументов командной строки, которые будут использоваться "
"при автоматическом перезапуске проекта с использованием [method "
"set_restart_on_exit]. См. также [method is_restart_on_exit_set]."

msgid ""
"Returns the maximum amount of static memory used. Only works in debug builds."
msgstr ""
"Возвращает максимальный объем используемой статической памяти. Работает "
"только в отладочных сборках."

msgid ""
"Returns the amount of static memory being used by the program in bytes. Only "
"works in debug builds."
msgstr ""
"Возвращает объем статической памяти, используемой программой в байтах. "
"Работает только в отладочных сборках."

msgid ""
"Returns the type of the standard error device.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, and Windows."
msgstr ""
"Возвращает тип стандартного устройства ошибок.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS и Windows."

msgid ""
"Returns the type of the standard input device.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, and Windows.\n"
"[b]Note:[/b] On exported Windows builds, run the console wrapper executable "
"to access the standard input. If you need a single executable with full "
"console support, use a custom build compiled with the "
"[code]windows_subsystem=console[/code] flag."
msgstr ""
"Возвращает тип стандартного устройства ввода.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS и Windows.\n"
"[b]Примечание:[/b] В экспортированных сборках Windows запустите исполняемый "
"файл оболочки консоли для доступа к стандартному вводу. Если вам нужен один "
"исполняемый файл с полной поддержкой консоли, используйте пользовательскую "
"сборку, скомпилированную с флагом [code]windows_subsystem=console[/code]."

msgid ""
"Returns the type of the standard output device.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, and Windows."
msgstr ""
"Возвращает тип стандартного устройства вывода.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS и Windows."

msgid ""
"Returns the list of certification authorities trusted by the operating system "
"as a string of concatenated certificates in PEM format."
msgstr ""
"Возвращает список центров сертификации, которым доверяет операционная "
"система, в виде строки объединенных сертификатов в формате PEM."

msgid ""
"Returns the path to commonly used folders across different platforms, as "
"defined by [param dir]. See the [enum SystemDir] constants for available "
"locations.\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and "
"Windows.\n"
"[b]Note:[/b] Shared storage is implemented on Android and allows to "
"differentiate between app specific and shared directories, if [param "
"shared_storage] is [code]true[/code]. Shared directories have additional "
"restrictions on Android."
msgstr ""
"Возвращает путь к часто используемым папкам на разных платформах, как "
"определено [param dir]. См. константы [enum SystemDir] для доступных "
"расположений.\n"
"[b]Примечание:[/b] Этот метод реализован в Android, Linux, macOS и Windows.\n"
"[b]Примечание:[/b] Общее хранилище реализовано в Android и позволяет "
"различать каталоги, специфичные для приложения, и общие каталоги, если [param "
"shared_storage] имеет значение [code]true[/code]. Общие каталоги имеют "
"дополнительные ограничения в Android."

msgid ""
"Returns the path to the system font file with [param font_name] and style. "
"Returns an empty string if no matching fonts found.\n"
"The following aliases can be used to request default fonts: \"sans-serif\", "
"\"serif\", \"monospace\", \"cursive\", and \"fantasy\".\n"
"[b]Note:[/b] Returned font might have different style if the requested style "
"is not available.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
"Возвращает путь к системному файлу шрифта с [param font_name] и стилем. "
"Возвращает пустую строку, если соответствующие шрифты не найдены.\n"
"Для запроса шрифтов по умолчанию можно использовать следующие псевдонимы: "
"\"sans-serif\", \"serif\", \"monospace\", \"cursive\" и \"fantasy\".\n"
"[b]Примечание:[/b] Возвращаемый шрифт может иметь другой стиль, если "
"запрошенный стиль недоступен.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Linux, macOS и "
"Windows."

msgid ""
"Returns an array of the system substitute font file paths, which are similar "
"to the font with [param font_name] and style for the specified text, locale, "
"and script. Returns an empty array if no matching fonts found.\n"
"The following aliases can be used to request default fonts: \"sans-serif\", "
"\"serif\", \"monospace\", \"cursive\", and \"fantasy\".\n"
"[b]Note:[/b] Depending on OS, it's not guaranteed that any of the returned "
"fonts will be suitable for rendering specified text. Fonts should be loaded "
"and checked in the order they are returned, and the first suitable one used.\n"
"[b]Note:[/b] Returned fonts might have different style if the requested style "
"is not available or belong to a different font family.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
"Возвращает массив путей к файлам системных подстановочных шрифтов, которые "
"похожи на шрифт с [param font_name] и стилем для указанного текста, локали и "
"скрипта. Возвращает пустой массив, если соответствующие шрифты не найдены.\n"
"Следующие псевдонимы можно использовать для запроса шрифтов по умолчанию: "
"\"sans-serif\", \"serif\", \"monospace\", \"cursive\" и \"fantasy\".\n"
"[b]Примечание:[/b] В зависимости от ОС не гарантируется, что какой-либо из "
"возвращенных шрифтов подойдет для рендеринга указанного текста. Шрифты "
"следует загружать и проверять в том порядке, в котором они возвращаются, и "
"использовать первый подходящий.\n"
"[b]Примечание:[/b] Возвращенные шрифты могут иметь другой стиль, если "
"запрошенный стиль недоступен или принадлежит к другому семейству шрифтов.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Linux, macOS и "
"Windows."

msgid ""
"Returns the list of font family names available.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
"Возвращает список доступных имен семейств шрифтов.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Linux, macOS и "
"Windows."

msgid ""
"Returns the [i]global[/i] temporary data directory according to the operating "
"system's standards."
msgstr ""
"Возвращает [i]глобальный[/i] временный каталог данных в соответствии со "
"стандартами операционной системы."

msgid ""
"Returns the ID of the current thread. This can be used in logs to ease "
"debugging of multi-threaded applications.\n"
"[b]Note:[/b] Thread IDs are not deterministic and may be reused across "
"application restarts."
msgstr ""
"Возвращает идентификатор текущего потока. Его можно использовать в журналах "
"для упрощения отладки многопоточных приложений.\n"
"[b]Примечание:[/b] Идентификаторы потоков не являются детерминированными и "
"могут повторно использоваться при перезапусках приложения."

msgid ""
"Returns a string that is unique to the device.\n"
"[b]Note:[/b] This string may change without notice if the user reinstalls "
"their operating system, upgrades it, or modifies their hardware. This means "
"it should generally not be used to encrypt persistent data, as the data saved "
"before an unexpected ID change would become inaccessible. The returned string "
"may also be falsified using external programs, so do not rely on the string "
"returned by this method for security purposes.\n"
"[b]Note:[/b] On Web, returns an empty string and generates an error, as this "
"method cannot be implemented for security reasons."
msgstr ""
"Возвращает строку, которая уникальна для устройства.\n"
"[b]Примечание:[/b] Эта строка может измениться без уведомления, если "
"пользователь переустановит свою операционную систему, обновит ее или изменит "
"свое оборудование. Это означает, что ее, как правило, не следует использовать "
"для шифрования постоянных данных, поскольку данные, сохраненные до "
"неожиданного изменения идентификатора, станут недоступными. Возвращаемая "
"строка также может быть подделана с помощью внешних программ, поэтому не "
"полагайтесь на строку, возвращаемую этим методом, в целях безопасности.\n"
"[b]Примечание:[/b] В Интернете возвращает пустую строку и генерирует ошибку, "
"поскольку этот метод не может быть реализован по соображениям безопасности."

msgid ""
"Returns the absolute directory path where user data is written (the "
"[code]user://[/code] directory in Godot). The path depends on the project "
"name and [member ProjectSettings.application/config/use_custom_user_dir].\n"
"- On Windows, this is [code]%AppData%\\Godot\\app_userdata\\[project_name][/"
"code], or [code]%AppData%\\[custom_name][/code] if [code]use_custom_user_dir[/"
"code] is set. [code]%AppData%[/code] expands to [code]%UserProfile%"
"\\AppData\\Roaming[/code].\n"
"- On macOS, this is [code]~/Library/Application Support/Godot/app_userdata/"
"[project_name][/code], or [code]~/Library/Application Support/[custom_name][/"
"code] if [code]use_custom_user_dir[/code] is set.\n"
"- On Linux and BSD, this is [code]~/.local/share/godot/app_userdata/"
"[project_name][/code], or [code]~/.local/share/[custom_name][/code] if "
"[code]use_custom_user_dir[/code] is set.\n"
"- On Android and iOS, this is a sandboxed directory in either internal or "
"external storage, depending on the user's configuration.\n"
"- On Web, this is a virtual directory managed by the browser.\n"
"If the project name is empty, [code][project_name][/code] falls back to [code]"
"[unnamed project][/code].\n"
"Not to be confused with [method get_data_dir], which returns the [i]global[/"
"i] (non-project-specific) user home directory."
msgstr ""
"Возвращает абсолютный путь к каталогу, в который записываются "
"пользовательские данные (каталог [code]user://[/code] в Godot). Путь зависит "
"от имени проекта и [member ProjectSettings.application/config/"
"use_custom_user_dir].\n"
"- В Windows это [code]%AppData%\\Godot\\app_userdata\\[project_name][/code] "
"или [code]%AppData%\\[custom_name][/code], если задано "
"[code]use_custom_user_dir[/code]. [code]%AppData%[/code] расширяется до [code]"
"%UserProfile%\\AppData\\Roaming[/code].\n"
"- В macOS это [code]~/Library/Application Support/Godot/app_userdata/"
"[project_name][/code] или [code]~/Library/Application Support/[custom_name][/"
"code], если задано [code]use_custom_user_dir[/code].\n"
"- В Linux и BSD это [code]~/.local/share/godot/app_userdata/[project_name][/"
"code] или [code]~/.local/share/[custom_name][/code], если задано "
"[code]use_custom_user_dir[/code].\n"
"- В Android и iOS это изолированный каталог во внутреннем или внешнем "
"хранилище в зависимости от конфигурации пользователя.\n"
"- В Web это виртуальный каталог, управляемый браузером.\n"
"Если имя проекта пустое, [code][project_name][/code] возвращается к [code]"
"[unnamed project][/code].\n"
"Не путать с [method get_data_dir], который возвращает [i]глобальный[/i] (не "
"относящийся к проекту) домашний каталог пользователя."

msgid ""
"Returns the exact production and build version of the operating system. This "
"is different from the branded version used in marketing. This helps to "
"distinguish between different releases of operating systems, including minor "
"versions, and insider and custom builds.\n"
"- For Windows, the major and minor version are returned, as well as the build "
"number. For example, the returned string may look like [code]10.0.9926[/code] "
"for a build of Windows 10.\n"
"- For rolling distributions, such as Arch Linux, an empty string is "
"returned.\n"
"- For macOS and iOS, the major and minor version are returned, as well as the "
"patch number.\n"
"- For Android, the SDK version and the incremental build number are returned. "
"If it's a custom ROM, it attempts to return its version instead.\n"
"[b]Note:[/b] This method is not supported on the Web platform. It returns an "
"empty string."
msgstr ""
"Возвращает точную производственную и сборочную версию операционной системы. "
"Она отличается от фирменной версии, используемой в маркетинге. Это помогает "
"различать разные выпуски операционных систем, включая второстепенные версии, "
"а также внутренние и пользовательские сборки.\n"
"- Для Windows возвращаются основная и второстепенная версии, а также номер "
"сборки. Например, возвращаемая строка может выглядеть как [code]10.0.9926[/"
"code] для сборки Windows 10.\n"
"- Для скользящих дистрибутивов, таких как Arch Linux, возвращается пустая "
"строка.\n"
"- Для macOS и iOS возвращаются основная и второстепенная версии, а также "
"номер патча.\n"
"- Для Android возвращаются версия SDK и инкрементный номер сборки. Если это "
"пользовательская прошивка, она пытается вернуть свою версию.\n"
"[b]Примечание:[/b] Этот метод не поддерживается на веб-платформе. Он "
"возвращает пустую строку."

msgid ""
"Returns the branded version used in marketing, followed by the build number "
"(on Windows), the version number (on macOS), or the SDK version and "
"incremental build number (on Android). Examples include [code]11 (build 22000)"
"[/code], [code]Sequoia (15.0.0)[/code], and [code]15 (SDK 35 build "
"abc528-11988f)[/code].\n"
"This value can then be appended to [method get_name] to get a full, human-"
"readable operating system name and version combination for the operating "
"system. Windows feature updates such as 24H2 are not contained in the "
"resulting string, but Windows Server is recognized as such (e.g. [code]2025 "
"(build 26100)[/code] for Windows Server 2025).\n"
"[b]Note:[/b] This method is only supported on Windows, macOS, and Android. On "
"other operating systems, it returns the same value as [method get_version]."
msgstr ""
"Возвращает фирменную версию, используемую в маркетинге, за которой следует "
"номер сборки (в Windows), номер версии (в macOS) или версия SDK и "
"инкрементный номер сборки (в Android). Примеры включают [code]11 (build 22000)"
"[/code], [code]Sequoia (15.0.0)[/code] и [code]15 (SDK 35 build abc528-11988f)"
"[/code].\n"
"Затем это значение можно добавить к [method get_name], чтобы получить полное, "
"понятное человеку имя операционной системы и комбинацию версии для "
"операционной системы. Обновления функций Windows, такие как 24H2, не "
"содержатся в результирующей строке, но Windows Server распознается как "
"таковой (например, [code]2025 (build 26100)[/code] для Windows Server 2025).\n"
"[b]Примечание:[/b] Этот метод поддерживается только в Windows, macOS и "
"Android. В других операционных системах он возвращает то же значение, что и "
"[method get_version]."

msgid ""
"Returns the video adapter driver name and version for the user's currently "
"active graphics card, as a [PackedStringArray]. See also [method "
"RenderingServer.get_video_adapter_api_version].\n"
"The first element holds the driver name, such as [code]nvidia[/code], "
"[code]amdgpu[/code], etc.\n"
"The second element holds the driver version. For example, on the "
"[code]nvidia[/code] driver on a Linux/BSD platform, the version is in the "
"format [code]510.85.02[/code]. For Windows, the driver's format is "
"[code]31.0.15.1659[/code].\n"
"[b]Note:[/b] This method is only supported on Linux/BSD and Windows when not "
"running in headless mode. On other platforms, it returns an empty array.\n"
"[b]Note:[/b] This method will run slowly the first time it is called in a "
"session; it can take several seconds depending on the operating system and "
"hardware. It is blocking if called on the main thread, so it's recommended to "
"call it on a separate thread using [Thread]. This allows the engine to keep "
"running while the information is being retrieved. However, [method "
"get_video_adapter_driver_info] is [i]not[/i] thread-safe, so it should not be "
"called from multiple threads at the same time.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var thread = Thread.new()\n"
"\n"
"func _ready():\n"
"\tthread.start(\n"
"\t\tfunc():\n"
"\t\t\tvar driver_info = OS.get_video_adapter_driver_info()\n"
"\t\t\tif not driver_info.is_empty():\n"
"\t\t\t\tprint(\"Driver: %s %s\" % [driver_info[0], driver_info[1]])\n"
"\t\t\telse:\n"
"\t\t\t\tprint(\"Driver: (unknown)\")\n"
"\t)\n"
"\n"
"func _exit_tree():\n"
"\tthread.wait_to_finish()\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Возвращает имя и версию драйвера видеоадаптера для текущей активной "
"видеокарты пользователя в виде [PackedStringArray]. См. также [method "
"RenderingServer.get_video_adapter_api_version].\n"
"Первый элемент содержит имя драйвера, например, [code]nvidia[/code], "
"[code]amdgpu[/code] и т. д.\n"
"Второй элемент содержит версию драйвера. Например, для драйвера [code]nvidia[/"
"code] на платформе Linux/BSD версия имеет формат [code]510.85.02[/code]. Для "
"Windows формат драйвера — [code]31.0.15.1659[/code].\n"
"[b]Примечание:[/b] Этот метод поддерживается только в Linux/BSD и Windows, "
"если он не запущен в режиме headless. На других платформах он возвращает "
"пустой массив.\n"
"[b]Примечание:[/b] Этот метод будет выполняться медленно при первом вызове в "
"сеансе; его выполнение может занять несколько секунд в зависимости от "
"операционной системы и оборудования. Он блокируется при вызове в основном "
"потоке, поэтому рекомендуется вызывать его в отдельном потоке с помощью "
"[Thread]. Это позволяет движку продолжать работу во время получения "
"информации. Однако [method get_video_adapter_driver_info] [i]не[/i] "
"потокобезопасен, поэтому его не следует вызывать из нескольких потоков "
"одновременно.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var thread = Thread.new()\n"
"\n"
"func _ready():\n"
"\tthread.start(\n"
"\t\tfunc():\n"
"\t\t\tvar driver_info = OS.get_video_adapter_driver_info()\n"
"\t\t\tif not driver_info.is_empty():\n"
"\t\t\t\tprint(\"Драйвер: %s %s\" % [driver_info[0], driver_info[1]])\n"
"\t\t\telse:\n"
"\t\t\t\tprint(\"Драйвер: (неизвестный)\")\n"
"\t)\n"
"\n"
"func _exit_tree():\n"
"\tthread.wait_to_finish()\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if the environment variable with the name [param "
"variable] exists.\n"
"[b]Note:[/b] Double-check the casing of [param variable]. Environment "
"variable names are case-sensitive on all platforms except Windows."
msgstr ""
"Возвращает [code]true[/code], если переменная среды с именем [param variable] "
"существует.\n"
"[b]Примечание:[/b] Дважды проверьте регистр [param variable]. Имена "
"переменных среды чувствительны к регистру на всех платформах, кроме Windows."

msgid ""
"Returns [code]true[/code] if the feature for the given feature tag is "
"supported in the currently running instance, depending on the platform, "
"build, etc. Can be used to check whether you're currently running a debug "
"build, on a certain platform or arch, etc. Refer to the [url=$DOCS_URL/"
"tutorials/export/feature_tags.html]Feature Tags[/url] documentation for more "
"details.\n"
"[b]Note:[/b] Tag names are case-sensitive.\n"
"[b]Note:[/b] On the Web platform, one of the following additional tags is "
"defined to indicate the host platform: [code]web_android[/code], "
"[code]web_ios[/code], [code]web_linuxbsd[/code], [code]web_macos[/code], or "
"[code]web_windows[/code]."
msgstr ""
"Возвращает [code]true[/code], если функция для данного тега функции "
"поддерживается в текущем запущенном экземпляре, в зависимости от платформы, "
"сборки и т. д. Может использоваться для проверки того, запущена ли в данный "
"момент отладочная сборка на определенной платформе или архитектуре и т. д. "
"Более подробную информацию см. в документации [url=$DOCS_URL/tutorials/export/"
"feature_tags.html]Теги функций[/url].\n"
"[b]Примечание:[/b] Имена тегов чувствительны к регистру.\n"
"[b]Примечание:[/b] На веб-платформе для указания платформы хоста определен "
"один из следующих дополнительных тегов: [code]web_android[/code], "
"[code]web_ios[/code], [code]web_linuxbsd[/code], [code]web_macos[/code] или "
"[code]web_windows[/code]."

msgid ""
"Returns [code]true[/code] if the Godot binary used to run the project is a "
"[i]debug[/i] export template, or when running in the editor.\n"
"Returns [code]false[/code] if the Godot binary used to run the project is a "
"[i]release[/i] export template.\n"
"[b]Note:[/b] To check whether the Godot binary used to run the project is an "
"export template (debug or release), use [code]OS.has_feature(\"template\")[/"
"code] instead."
msgstr ""
"Возвращает [code]true[/code], если двоичный файл Godot, используемый для "
"запуска проекта, является шаблоном экспорта [i]debug[/i], или при запуске в "
"редакторе.\n"
"Возвращает [code]false[/code], если двоичный файл Godot, используемый для "
"запуска проекта, является шаблоном экспорта [i]release[/i].\n"
"[b]Примечание:[/b] Чтобы проверить, является ли двоичный файл Godot, "
"используемый для запуска проекта, шаблоном экспорта (отладки или выпуска), "
"используйте вместо этого [code]OS.has_feature(\"template\")[/code]."

msgid ""
"Returns [code]true[/code] if the input keycode corresponds to a Unicode "
"character. For a list of codes, see the [enum Key] constants.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(OS.is_keycode_unicode(KEY_G))      # Prints true\n"
"print(OS.is_keycode_unicode(KEY_KP_4))   # Prints true\n"
"print(OS.is_keycode_unicode(KEY_TAB))    # Prints false\n"
"print(OS.is_keycode_unicode(KEY_ESCAPE)) # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(OS.IsKeycodeUnicode((long)Key.G));      // Prints True\n"
"GD.Print(OS.IsKeycodeUnicode((long)Key.Kp4));    // Prints True\n"
"GD.Print(OS.IsKeycodeUnicode((long)Key.Tab));    // Prints False\n"
"GD.Print(OS.IsKeycodeUnicode((long)Key.Escape)); // Prints False\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [code]true[/code], если входной keycode соответствует символу "
"Unicode. Список кодов см. в константах [enum Key].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(OS.is_keycode_unicode(KEY_G))      # Выводит true\n"
"print(OS.is_keycode_unicode(KEY_KP_4))   # Выводит true\n"
"print(OS.is_keycode_unicode(KEY_TAB))    # Выводит false\n"
"print(OS.is_keycode_unicode(KEY_ESCAPE)) # Выводит false\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(OS.IsKeycodeUnicode((long)Key.G));      // Выводит True\n"
"GD.Print(OS.IsKeycodeUnicode((long)Key.Kp4));    // Выводит True\n"
"GD.Print(OS.IsKeycodeUnicode((long)Key.Tab));    // Выводит False\n"
"GD.Print(OS.IsKeycodeUnicode((long)Key.Escape)); // Выводит False\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if the child process ID ([param pid]) is still "
"running or [code]false[/code] if it has terminated. [param pid] must be a "
"valid ID generated from [method create_process].\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS, and "
"Windows."
msgstr ""
"Возвращает [code]true[/code], если идентификатор дочернего процесса ([param "
"pid]) все еще выполняется, или [code]false[/code], если он был завершен. "
"[param pid] должен быть допустимым идентификатором, сгенерированным из "
"[method create_process].\n"
"[b]Примечание:[/b] Этот метод реализован в Android, iOS, Linux, macOS и "
"Windows."

msgid ""
"Returns [code]true[/code] if the project will automatically restart when it "
"exits for any reason, [code]false[/code] otherwise. See also [method "
"set_restart_on_exit] and [method get_restart_on_exit_arguments]."
msgstr ""
"Возвращает [code]true[/code], если проект автоматически перезапустится при "
"выходе из него по любой причине, [code]false[/code] в противном случае. См. "
"также [method set_restart_on_exit] и [method get_restart_on_exit_arguments]."

msgid ""
"Returns [code]true[/code] if the application is running in the sandbox.\n"
"[b]Note:[/b] This method is only implemented on macOS and Linux."
msgstr ""
"Возвращает [code]true[/code], если приложение запущено в песочнице.\n"
"[b]Примечание:[/b] Этот метод реализован только в macOS и Linux."

msgid ""
"Returns [code]true[/code] if the engine was executed with the [code]--"
"verbose[/code] or [code]-v[/code] command line argument, or if [member "
"ProjectSettings.debug/settings/stdout/verbose_stdout] is [code]true[/code]. "
"See also [method @GlobalScope.print_verbose]."
msgstr ""
"Возвращает [code]true[/code], если движок был запущен с аргументом командной "
"строки [code]--verbose[/code] или [code]-v[/code], или если [member "
"ProjectSettings.debug/settings/stdout/verbose_stdout] равен [code]true[/"
"code]. См. также [method @GlobalScope.print_verbose]."

msgid ""
"Returns [code]true[/code] if the [code]user://[/code] file system is "
"persistent, that is, its state is the same after a player quits and starts "
"the game again. Relevant to the Web platform, where this persistence may be "
"unavailable."
msgstr ""
"Возвращает [code]true[/code], если файловая система [code]user://[/code] "
"является постоянной, то есть ее состояние остается прежним после того, как "
"игрок выходит из игры и снова ее запускает. Относится к веб-платформе, где "
"эта постоянная возможность может быть недоступна."

msgid ""
"Kill (terminate) the process identified by the given process ID ([param "
"pid]), such as the ID returned by [method execute] in non-blocking mode. See "
"also [method crash].\n"
"[b]Note:[/b] This method can also be used to kill processes that were not "
"spawned by the engine.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Linux, macOS and "
"Windows."
msgstr ""
"Убить (завершить) процесс, идентифицированный заданным идентификатором "
"процесса ([param pid]), например, идентификатором, возвращаемым [method "
"execute] в неблокируемом режиме. См. также [method crash].\n"
"[b]Примечание:[/b] Этот метод также можно использовать для уничтожения "
"процессов, которые не были порождены движком.\n"
"[b]Примечание:[/b] Этот метод реализован в Android, iOS, Linux, macOS и "
"Windows."

msgid ""
"Moves the file or directory at the given [param path] to the system's recycle "
"bin. See also [method DirAccess.remove].\n"
"The method takes only global paths, so you may need to use [method "
"ProjectSettings.globalize_path]. Do not use it for files in [code]res://[/"
"code] as it will not work in exported projects.\n"
"Returns [constant FAILED] if the file or directory cannot be found, or the "
"system does not support this method.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var file_to_remove = \"user://slot1.save\"\n"
"OS.move_to_trash(ProjectSettings.globalize_path(file_to_remove))\n"
"[/gdscript]\n"
"[csharp]\n"
"var fileToRemove = \"user://slot1.save\";\n"
"OS.MoveToTrash(ProjectSettings.GlobalizePath(fileToRemove));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method is implemented on Android, Linux, macOS and "
"Windows.\n"
"[b]Note:[/b] If the user has disabled the recycle bin on their system, the "
"file will be permanently deleted instead."
msgstr ""
"Перемещает файл или каталог по указанному [param path] в системную корзину. "
"См. также [method DirAccess.remove].\n"
"Метод принимает только глобальные пути, поэтому вам может потребоваться "
"использовать [method ProjectSettings.globalize_path]. Не используйте его для "
"файлов в [code]res://[/code], так как он не будет работать в экспортированных "
"проектах.\n"
"Возвращает [constant FAILED], если файл или каталог не могут быть найдены или "
"система не поддерживает этот метод.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var file_to_remove = \"user://slot1.save\"\n"
"OS.move_to_trash(ProjectSettings.globalize_path(file_to_remove))\n"
"[/gdscript]\n"
"[csharp]\n"
"var fileToRemove = \"user://slot1.save\";\n"
"OS.MoveToTrash(ProjectSettings.GlobalizePath(fileToRemove));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Этот метод реализован на Android, Linux, macOS и Windows.\n"
"[b]Примечание:[/b] Если пользователь отключил корзину в своей системе, файл "
"будет удален навсегда."

msgid ""
"Initializes the singleton for the system MIDI driver, allowing Godot to "
"receive [InputEventMIDI]. See also [method get_connected_midi_inputs] and "
"[method close_midi_inputs].\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, Windows, and Web.\n"
"[b]Note:[/b] On the Web platform, Web MIDI needs to be supported by the "
"browser. [url=https://caniuse.com/midi]For the time being[/url], it is "
"currently supported by all major browsers, except Safari.\n"
"[b]Note:[/b] On the Web platform, using MIDI input requires a browser "
"permission to be granted first. This permission request is performed when "
"calling [method open_midi_inputs]. The browser will refrain from processing "
"MIDI input until the user accepts the permission request."
msgstr ""
"Инициализирует синглтон для системного драйвера MIDI, позволяя Godot получать "
"[InputEventMIDI]. См. также [method get_connected_midi_inputs] и [method "
"close_midi_inputs].\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS, Windows и Web.\n"
"[b]Примечание:[/b] На веб-платформе веб-MIDI должен поддерживаться браузером. "
"[url=https://caniuse.com/midi]На данный момент[/url] он поддерживается всеми "
"основными браузерами, кроме Safari.\n"
"[b]Примечание:[/b] На веб-платформе использование ввода MIDI требует "
"предварительного предоставления разрешения браузеру. Этот запрос разрешения "
"выполняется при вызове [method open_midi_inputs]. Браузер воздержится от "
"обработки ввода MIDI, пока пользователь не примет запрос разрешения."

msgid ""
"Opens one or more files/directories with the specified application. The "
"[param program_path] specifies the path to the application to use for opening "
"the files, and [param paths] contains an array of file/directory paths to "
"open.\n"
"[b]Note:[/b] This method is mostly only relevant for macOS, where opening "
"files using [method create_process] might fail. On other platforms, this "
"falls back to using [method create_process].\n"
"[b]Note:[/b] On macOS, [param program_path] should ideally be the path to a "
"[code].app[/code] bundle."
msgstr ""
"Открывает один или несколько файлов/каталогов с помощью указанного "
"приложения. Параметр [param program_path] задаёт путь к приложению, "
"используемому для открытия файлов, а [param paths] содержит массив путей к "
"файлам/каталогам, которые нужно открыть.\n"
"[b]Примечание:[/b] Этот метод в основном актуален только для macOS, где "
"открытие файлов с помощью [method create_process] может завершиться ошибкой. "
"На других платформах используется [method create_process].\n"
"[b]Примечание:[/b] В macOS параметр [param program_path] в идеале должен быть "
"путём к пакету [code].app[/code]."

msgid ""
"Reads a user input as raw data from the standard input. This operation can be "
"[i]blocking[/i], which causes the window to freeze if [method "
"read_buffer_from_stdin] is called on the main thread.\n"
"- If standard input is console, this method will block until the program "
"receives a line break in standard input (usually by the user pressing "
"[kbd]Enter[/kbd]).\n"
"- If standard input is pipe, this method will block until a specific amount "
"of data is read or pipe is closed.\n"
"- If standard input is a file, this method will read a specific amount of "
"data (or less if end-of-file is reached) and return immediately.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, and Windows.\n"
"[b]Note:[/b] On exported Windows builds, run the console wrapper executable "
"to access the terminal. If standard input is console, calling this method "
"without console wrapped will freeze permanently. If standard input is pipe or "
"file, it can be used without console wrapper. If you need a single executable "
"with full console support, use a custom build compiled with the "
"[code]windows_subsystem=console[/code] flag."
msgstr ""
"Считывает пользовательский ввод как необработанные данные из стандартного "
"ввода. Эта операция может быть [i]блокирующей[/i], что приводит к "
"замораживанию окна, если [method read_buffer_from_stdin] вызывается в "
"основном потоке.\n"
"- Если стандартный ввод — консоль, этот метод будет блокироваться до тех пор, "
"пока программа не получит разрыв строки в стандартном вводе (обычно нажатием "
"пользователем [kbd]Enter[/kbd]).\n"
"- Если стандартный ввод — канал, этот метод будет блокироваться до тех пор, "
"пока не будет прочитано определенное количество данных или канал не будет "
"закрыт.\n"
"- Если стандартный ввод — файл, этот метод прочитает определенное количество "
"данных (или меньше, если достигнут конец файла) и немедленно вернется.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS и Windows.\n"
"[b]Примечание:[/b] В экспортированных сборках Windows запустите исполняемый "
"файл оболочки консоли для доступа к терминалу. Если стандартный ввод — "
"консоль, вызов этого метода без оболочки консоли приведет к постоянной "
"заморозке. Если стандартный ввод — это канал или файл, его можно использовать "
"без оболочки консоли. Если вам нужен один исполняемый файл с полной "
"поддержкой консоли, используйте пользовательскую сборку, скомпилированную с "
"флагом [code]windows_subsystem=console[/code]."

msgid ""
"Reads a user input as a UTF-8 encoded string from the standard input. This "
"operation can be [i]blocking[/i], which causes the window to freeze if "
"[method read_string_from_stdin] is called on the main thread.\n"
"- If standard input is console, this method will block until the program "
"receives a line break in standard input (usually by the user pressing "
"[kbd]Enter[/kbd]).\n"
"- If standard input is pipe, this method will block until a specific amount "
"of data is read or pipe is closed.\n"
"- If standard input is a file, this method will read a specific amount of "
"data (or less if end-of-file is reached) and return immediately.\n"
"[b]Note:[/b] This method automatically replaces [code]\\r\\n[/code] line "
"breaks with [code]\\n[/code] and removes them from the end of the string. Use "
"[method read_buffer_from_stdin] to read the unprocessed data.\n"
"[b]Note:[/b] This method is implemented on Linux, macOS, and Windows.\n"
"[b]Note:[/b] On exported Windows builds, run the console wrapper executable "
"to access the terminal. If standard input is console, calling this method "
"without console wrapped will freeze permanently. If standard input is pipe or "
"file, it can be used without console wrapper. If you need a single executable "
"with full console support, use a custom build compiled with the "
"[code]windows_subsystem=console[/code] flag."
msgstr ""
"Считывает пользовательский ввод как строку в кодировке UTF-8 из стандартного "
"ввода. Эта операция может быть [i]блокирующей[/i], что приводит к "
"замораживанию окна, если [method read_string_from_stdin] вызывается в "
"основном потоке.\n"
"- Если стандартный ввод — консоль, этот метод будет блокироваться до тех пор, "
"пока программа не получит разрыв строки в стандартном вводе (обычно нажатием "
"пользователем [kbd]Enter[/kbd]).\n"
"- Если стандартный ввод — канал, этот метод будет блокироваться до тех пор, "
"пока не будет прочитано определенное количество данных или канал не будет "
"закрыт.\n"
"- Если стандартный ввод — файл, этот метод прочитает определенное количество "
"данных (или меньше, если достигнут конец файла) и немедленно вернет "
"управление.\n"
"[b]Примечание:[/b] Этот метод автоматически заменяет разрывы строк [code]"
"\\r\\n[/code] на [code]\\n[/code] и удаляет их из конца строки. Используйте "
"[method read_buffer_from_stdin] для чтения необработанных данных.\n"
"[b]Примечание:[/b] Этот метод реализован в Linux, macOS и Windows.\n"
"[b]Примечание:[/b] В экспортированных сборках Windows запустите исполняемый "
"файл оболочки консоли, чтобы получить доступ к терминалу. Если стандартный "
"ввод — консоль, вызов этого метода без оболочки консоли зависнет навсегда. "
"Если стандартный ввод — канал или файл, его можно использовать без оболочки "
"консоли. Если вам нужен один исполняемый файл с полной поддержкой консоли, "
"используйте пользовательскую сборку, скомпилированную с флагом "
"[code]windows_subsystem=console[/code]."

msgid "Remove a custom logger added by [method add_logger]."
msgstr "Удалить пользовательский логер, добавленный [method add_logger]."

msgid ""
"Requests permission from the OS for the given [param name]. Returns "
"[code]true[/code] if the permission has already been granted. See also "
"[signal MainLoop.on_request_permissions_result].\n"
"The [param name] must be the full permission name. For example:\n"
"- [code]OS.request_permission(\"android.permission.READ_EXTERNAL_STORAGE\")[/"
"code]\n"
"- [code]OS.request_permission(\"android.permission.POST_NOTIFICATIONS\")[/"
"code]\n"
"- [code]OS.request_permission(\"macos.permission.RECORD_SCREEN\")[/code]\n"
"- [code]OS.request_permission(\"appleembedded.permission.AUDIO_RECORD\")[/"
"code]\n"
"[b]Note:[/b] On Android, permission must be checked during export.\n"
"[b]Note:[/b] This method is implemented on Android, macOS, and visionOS "
"platforms."
msgstr ""
"Запрашивает разрешение у ОС для указанного [param name]. Возвращает "
"[code]true[/code], если разрешение уже предоставлено. См. также [signal "
"MainLoop.on_request_permissions_result].\n"
"[param name] должно быть полным именем разрешения. Например:\n"
"- [code]OS.request_permission(\"android.permission.READ_EXTERNAL_STORAGE\")[/"
"code]\n"
"- [code]OS.request_permission(\"android.permission.POST_NOTIFICATIONS\")[/"
"code]\n"
"- [code]OS.request_permission(\"macos.permission.RECORD_SCREEN\")[/code]\n"
"- [code]OS.request_permission(\"appleembedded.permission.AUDIO_RECORD\")[/"
"code]\n"
"[b]Примечание:[/b] На Android разрешение необходимо проверять во время "
"экспорта.\n"
"[b]Примечание:[/b] Этот метод реализован на платформах Android, macOS и "
"visionOS."

msgid ""
"Requests [i]dangerous[/i] permissions from the OS. Returns [code]true[/code] "
"if permissions have already been granted. See also [signal "
"MainLoop.on_request_permissions_result].\n"
"[b]Note:[/b] Permissions must be checked during export.\n"
"[b]Note:[/b] This method is only implemented on Android. Normal permissions "
"are automatically granted at install time in Android applications."
msgstr ""
"Запрашивает [i]опасные[/i] разрешения от ОС. Возвращает [code]true[/code], "
"если разрешения уже предоставлены. См. также [signal "
"MainLoop.on_request_permissions_result].\n"
"[b]Примечание:[/b] Разрешения должны быть проверены во время экспорта.\n"
"[b]Примечание:[/b] Этот метод реализован только на Android. Обычные "
"разрешения автоматически предоставляются во время установки в приложениях "
"Android."

msgid ""
"On macOS (sandboxed applications only), this function clears list of user "
"selected folders accessible to the application."
msgstr ""
"В macOS (только для изолированных приложений) эта функция очищает список "
"выбранных пользователем папок, доступных приложению."

msgid ""
"Sets the value of the environment variable [param variable] to [param value]. "
"The environment variable will be set for the Godot process and any process "
"executed with [method execute] after running [method set_environment]. The "
"environment variable will [i]not[/i] persist to processes run after the Godot "
"process was terminated.\n"
"[b]Note:[/b] Environment variable names are case-sensitive on all platforms "
"except Windows. The [param variable] name cannot be empty or include the "
"[code]=[/code] character. On Windows, there is a 32767 characters limit for "
"the combined length of [param variable], [param value], and the [code]=[/"
"code] and null terminator characters that will be registered in the "
"environment block."
msgstr ""
"Устанавливает значение переменной среды [param variable] на [param value]. "
"Переменная среды будет установлена для процесса Godot и любого процесса, "
"выполняемого с помощью [method execute] после запуска [method "
"set_environment]. Переменная среды [i]не[/i] сохранится в процессах, "
"запущенных после завершения процесса Godot.\n"
"[b]Примечание:[/b] Имена переменных среды чувствительны к регистру на всех "
"платформах, кроме Windows. Имя [param variable] не может быть пустым или "
"включать символ [code]=[/code]. В Windows существует ограничение в 32767 "
"символов для общей длины [param variable], [param value], а также [code]=[/"
"code] и нулевого терминатора, которые будут зарегистрированы в блоке среды."

msgid ""
"If [param restart] is [code]true[/code], restarts the project automatically "
"when it is exited with [method SceneTree.quit] or [constant "
"Node.NOTIFICATION_WM_CLOSE_REQUEST]. Command-line [param arguments] can be "
"supplied. To restart the project with the same command line arguments as "
"originally used to run the project, pass [method get_cmdline_args] as the "
"value for [param arguments].\n"
"This method can be used to apply setting changes that require a restart. See "
"also [method is_restart_on_exit_set] and [method "
"get_restart_on_exit_arguments].\n"
"[b]Note:[/b] This method is only effective on desktop platforms, and only "
"when the project isn't started from the editor. It will have no effect on "
"mobile and Web platforms, or when the project is started from the editor.\n"
"[b]Note:[/b] If the project process crashes or is [i]killed[/i] by the user "
"(by sending [code]SIGKILL[/code] instead of the usual [code]SIGTERM[/code]), "
"the project won't restart automatically."
msgstr ""
"Если [param restart] равен [code]true[/code], автоматически перезапускает "
"проект при выходе из него с помощью [method SceneTree.quit] или [constant "
"Node.NOTIFICATION_WM_CLOSE_REQUEST]. Можно указать [param arguments] "
"командной строки. Чтобы перезапустить проект с теми же аргументами командной "
"строки, которые изначально использовались для запуска проекта, передайте "
"[method get_cmdline_args] в качестве значения для [param arguments].\n"
"Этот метод можно использовать для применения изменений настроек, требующих "
"перезапуска. См. также [method is_restart_on_exit_set] и [method "
"get_restart_on_exit_arguments].\n"
"[b]Примечание:[/b] Этот метод эффективен только на настольных платформах и "
"только когда проект не запущен из редактора. Он не будет иметь никакого "
"эффекта на мобильных и веб-платформах или когда проект запущен из "
"редактора. \n"
"[b]Примечание:[/b] Если процесс проекта аварийно завершается или [i]завершен[/"
"i] пользователем (путем отправки [code]SIGKILL[/code] вместо обычного "
"[code]SIGTERM[/code]), проект не будет перезапущен автоматически."

msgid ""
"Assigns the given name to the current thread. Returns [constant "
"ERR_UNAVAILABLE] if unavailable on the current platform."
msgstr ""
"Назначает заданное имя текущему потоку. Возвращает [constant "
"ERR_UNAVAILABLE], если недоступно на текущей платформе."

msgid ""
"If [param enabled] is [code]true[/code], when opening a file for writing, a "
"temporary file is used in its place. When closed, it is automatically applied "
"to the target file.\n"
"This can useful when files may be opened by other applications, such as "
"antiviruses, text editors, or even the Godot editor itself."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], при открытии файла для "
"записи вместо него используется временный файл. При закрытии он автоматически "
"применяется к целевому файлу.\n"
"Это может быть полезно, когда файлы могут быть открыты другими приложениями, "
"такими как антивирусы, текстовые редакторы или даже сам редактор Godot."

msgid ""
"Requests the OS to open a resource identified by [param uri] with the most "
"appropriate program. For example:\n"
"- [code]OS.shell_open(\"C:\\\\Users\\\\name\\\\Downloads\")[/code] on Windows "
"opens the file explorer at the user's Downloads folder.\n"
"- [code]OS.shell_open(\"C:/Users/name/Downloads\")[/code] also works on "
"Windows and opens the file explorer at the user's Downloads folder.\n"
"- [code]OS.shell_open(\"https://godotengine.org\")[/code] opens the default "
"web browser on the official Godot website.\n"
"- [code]OS.shell_open(\"mailto:example@example.com\")[/code] opens the "
"default email client with the \"To\" field set to [code]example@example.com[/"
"code]. See [url=https://datatracker.ietf.org/doc/html/rfc2368]RFC 2368 - The "
"[code]mailto[/code] URL scheme[/url] for a list of fields that can be added.\n"
"Use [method ProjectSettings.globalize_path] to convert a [code]res://[/code] "
"or [code]user://[/code] project path into a system path for use with this "
"method.\n"
"[b]Note:[/b] Use [method String.uri_encode] to encode characters within URLs "
"in a URL-safe, portable way. This is especially required for line breaks. "
"Otherwise, [method shell_open] may not work correctly in a project exported "
"to the Web platform.\n"
"[b]Note:[/b] This method is implemented on Android, iOS, Web, Linux, macOS "
"and Windows."
msgstr ""
"Запрашивает у ОС открытие ресурса, указанного [param uri], с помощью наиболее "
"подходящей программы. Например:\n"
"- [code]OS.shell_open(\"C:\\\\Users\\\\name\\\\Downloads\")[/code] в Windows "
"открывает файловый менеджер в папке \"Загрузки\" пользователя.\n"
"- [code]OS.shell_open(\"C:/Users/name/Downloads\")[/code] также работает в "
"Windows и открывает файловый менеджер в папке \"Загрузки\" пользователя.\n"
"- [code]OS.shell_open(\"https://godotengine.org\")[/code] открывает веб-"
"браузер по умолчанию на официальном сайте Godot.\n"
"- [code]OS.shell_open(\"mailto:example@example.com\")[/code] открывает "
"почтовый клиент по умолчанию с полем \"Кому\" в значении "
"[code]example@example.com[/code]. См. [url=https://datatracker.ietf.org/doc/"
"html/rfc2368]RFC 2368 — Схема URL [code]mailto[/code][/url] для списка полей, "
"которые можно добавить.\n"
"Используйте [method ProjectSettings.globalize_path] для преобразования пути "
"проекта [code]res://[/code] или [code]user://[/code] в системный путь для "
"использования с этим методом.\n"
"[b]Примечание:[/b] Используйте [method String.uri_encode] для кодирования "
"символов в URL-адресах безопасным для URL-адресов, переносимым способом. Это "
"особенно необходимо для переносов строк. В противном случае [method "
"shell_open] может работать некорректно в проекте, экспортированном на веб-"
"платформу.\n"
"[b]Примечание:[/b] Этот метод реализован на Android, iOS, Web, Linux, macOS и "
"Windows."

msgid ""
"Requests the OS to open the file manager, navigate to the given [param "
"file_or_dir_path] and select the target file or folder.\n"
"If [param open_folder] is [code]true[/code] and [param file_or_dir_path] is a "
"valid directory path, the OS will open the file manager and navigate to the "
"target folder without selecting anything.\n"
"Use [method ProjectSettings.globalize_path] to convert a [code]res://[/code] "
"or [code]user://[/code] project path into a system path to use with this "
"method.\n"
"[b]Note:[/b] This method is currently only implemented on Windows and macOS. "
"On other platforms, it will fallback to [method shell_open] with a directory "
"path of [param file_or_dir_path] prefixed with [code]file://[/code]."
msgstr ""
"Запрашивает у ОС открытие файлового менеджера, переход к указанному [param "
"file_or_dir_path] и выбор целевого файла или папки.\n"
"Если [param open_folder] равно [code]true[/code] и [param file_or_dir_path] "
"является допустимым путем к каталогу, ОС откроет файловый менеджер и перейдет "
"к целевой папке, ничего не выбирая.\n"
"Используйте [method ProjectSettings.globalize_path] для преобразования пути "
"проекта [code]res://[/code] или [code]user://[/code] в системный путь для "
"использования с этим методом.\n"
"[b]Примечание:[/b] Этот метод в настоящее время реализован только в Windows и "
"macOS. На других платформах он будет возвращаться к [method shell_open] с "
"путем к каталогу [param file_or_dir_path] с префиксом [code]file://[/code]."

msgid ""
"Removes the given environment variable from the current environment, if it "
"exists. The [param variable] name cannot be empty or include the [code]=[/"
"code] character. The environment variable will be removed for the Godot "
"process and any process executed with [method execute] after running [method "
"unset_environment]. The removal of the environment variable will [i]not[/i] "
"persist to processes run after the Godot process was terminated.\n"
"[b]Note:[/b] Environment variable names are case-sensitive on all platforms "
"except Windows."
msgstr ""
"Удаляет указанную переменную среды из текущей среды, если она существует. Имя "
"[param variable] не может быть пустым или включать символ [code]=[/code]. "
"Переменная среды будет удалена для процесса Godot и любого процесса, "
"выполняемого с [method execute] после запуска [method unset_environment]. "
"Удаление переменной среды [i]не[/i] сохранится для процессов, запущенных "
"после завершения процесса Godot.\n"
"[b]Примечание:[/b] Имена переменных среды чувствительны к регистру на всех "
"платформах, кроме Windows."

msgid ""
"If [code]true[/code], the engine filters the time delta measured between each "
"frame, and attempts to compensate for random variation. This only works on "
"systems where V-Sync is active.\n"
"[b]Note:[/b] On start-up, this is the same as [member "
"ProjectSettings.application/run/delta_smoothing]."
msgstr ""
"Если [code]true[/code], движок фильтрует временную дельту, измеренную между "
"каждым кадром, и пытается компенсировать случайные отклонения. Это работает "
"только в системах, где активна V-Sync.\n"
"[b]Примечание:[/b] При запуске это то же самое, что и [member "
"ProjectSettings.application/run/delta_smoothing]."

msgid ""
"If [code]true[/code], the engine optimizes for low processor usage by only "
"refreshing the screen if needed. Can improve battery consumption on mobile.\n"
"[b]Note:[/b] On start-up, this is the same as [member "
"ProjectSettings.application/run/low_processor_mode]."
msgstr ""
"Если [code]true[/code], движок оптимизируется для низкого использования "
"процессора, обновляя экран только при необходимости. Может улучшить расход "
"батареи на мобильных устройствах.\n"
"[b]Примечание:[/b] При запуске это то же самое, что и [member "
"ProjectSettings.application/run/low_processor_mode]."

msgid ""
"The amount of sleeping between frames when the low-processor usage mode is "
"enabled, in microseconds. Higher values will result in lower CPU usage. See "
"also [member low_processor_usage_mode].\n"
"[b]Note:[/b] On start-up, this is the same as [member "
"ProjectSettings.application/run/low_processor_mode_sleep_usec]."
msgstr ""
"Количество сна между кадрами при включенном режиме низкой загрузки процессора "
"в микросекундах. Более высокие значения приведут к снижению загрузки ЦП. См. "
"также [member low_processor_usage_mode].\n"
"[b]Примечание:[/b] При запуске это то же самое, что и [member "
"ProjectSettings.application/run/low_processor_mode_sleep_usec]."

msgid ""
"The Vulkan rendering driver. It requires Vulkan 1.0 support and automatically "
"uses features from Vulkan 1.1 and 1.2 if available."
msgstr ""
"Драйвер рендеринга Vulkan. Он требует поддержки Vulkan 1.0 и автоматически "
"использует функции из Vulkan 1.1 и 1.2, если они доступны."

msgid ""
"The OpenGL 3 rendering driver. It uses OpenGL 3.3 Core Profile on desktop "
"platforms, OpenGL ES 3.0 on mobile devices, and WebGL 2.0 on Web."
msgstr ""
"Драйвер рендеринга OpenGL 3. Он использует OpenGL 3.3 Core Profile на "
"настольных платформах, OpenGL ES 3.0 на мобильных устройствах и WebGL 2.0 на "
"веб-устройствах."

msgid "The Direct3D 12 rendering driver."
msgstr "Драйвер рендеринга Direct3D 12."

msgid "The Metal rendering driver."
msgstr "Драйвер рендеринга Metal."

msgid "Refers to the Desktop directory path."
msgstr "Относится к пути к каталогу рабочего стола."

msgid "Refers to the DCIM (Digital Camera Images) directory path."
msgstr "Относится к пути к каталогу DCIM (изображения с цифровой камеры)."

msgid "Refers to the Documents directory path."
msgstr "Относится к пути к каталогу документов."

msgid "Refers to the Downloads directory path."
msgstr "Относится к пути к каталогу загрузок."

msgid "Refers to the Movies (or Videos) directory path."
msgstr "Относится к пути к каталогу фильмов (или видео)."

msgid "Refers to the Music directory path."
msgstr "Относится к пути к каталогу «Музыка»."

msgid "Refers to the Pictures directory path."
msgstr "Относится к пути к каталогу изображений."

msgid "Refers to the Ringtones directory path."
msgstr "Относится к пути к каталогу рингтонов."

msgid ""
"Standard I/O device is invalid. No data can be received from or sent to these "
"standard I/O devices."
msgstr ""
"Стандартное устройство ввода-вывода (I/O) недействительно. Невозможно "
"получить или отправить данные с этих стандартных устройств ввода-вывода."

msgid ""
"Standard I/O device is a console. This typically occurs when Godot is run "
"from a terminal with no redirection. This is also used for all standard I/O "
"devices when running Godot from the editor, at least on desktop platforms."
msgstr ""
"Стандартное устройство ввода-вывода — это консоль. Обычно это происходит, "
"когда Godot запускается из терминала без перенаправления. Это также "
"используется для всех стандартных устройств ввода-вывода при запуске Godot из "
"редактора, по крайней мере на настольных платформах."

msgid ""
"Standard I/O device is a regular file. This typically occurs with redirection "
"from a terminal, e.g. [code]godot > stdout.txt[/code], [code]godot < "
"stdin.txt[/code] or [code]godot > stdout_stderr.txt 2>&1[/code]."
msgstr ""
"Стандартное устройство ввода-вывода — это обычный файл. Обычно это происходит "
"при перенаправлении с терминала, например, [code]godot > stdout.txt[/code], "
"[code]godot < stdin.txt[/code] или [code]godot > stdout_stderr.txt 2>&1[/"
"code]."

msgid ""
"Standard I/O device is a FIFO/pipe. This typically occurs with pipe usage "
"from a terminal, e.g. [code]echo \"Hello\" | godot[/code]."
msgstr ""
"Стандартное устройство ввода-вывода — FIFO/pipe. Обычно это происходит при "
"использовании pipe с терминала, например [code]echo \"Hello\" | godot[/code]."

msgid "Standard I/O device type is unknown."
msgstr "Тип стандартного устройства ввода-вывода неизвестен."

msgid "A packed array of bytes."
msgstr "Упакованный массив байтов."

msgid ""
"An array specifically designed to hold bytes. Packs data tightly, so it saves "
"memory for large array sizes.\n"
"[PackedByteArray] also provides methods to encode/decode various types to/"
"from bytes. The way values are encoded is an implementation detail and "
"shouldn't be relied upon when interacting with external apps.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Массив, специально разработанный для хранения байтов. Плотно упаковывает "
"данные, поэтому экономит память для больших размеров массива.\n"
"[PackedByteArray] также предоставляет методы для кодирования/декодирования "
"различных типов в/из байтов. Способ кодирования значений является деталью "
"реализации и не должен использоваться при взаимодействии с внешними "
"приложениями.\n"
"[b]Примечание:[/b] Упакованные массивы всегда передаются по ссылке. Чтобы "
"получить копию массива, которую можно изменять независимо от исходного "
"массива, используйте [method duplicate]. Это [i]не[/i] касается встроенных "
"свойств и методов. В этих случаях возвращаемый упакованный массив является "
"копией, и его изменение [i]не[/i] повлияет на исходное значение. Чтобы "
"обновить встроенное свойство этого типа, измените возвращаемый массив, а "
"затем снова назначьте его свойству."

msgid "Constructs an empty [PackedByteArray]."
msgstr "Создает пустой [PackedByteArray]."

msgid "Constructs a [PackedByteArray] as a copy of the given [PackedByteArray]."
msgstr "Создает [PackedByteArray] как копию заданного [PackedByteArray]."

msgid ""
"Constructs a new [PackedByteArray]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Создает новый [PackedByteArray]. При желании можно передать общий [Array], "
"который будет преобразован."

msgid ""
"Appends an element at the end of the array (alias of [method push_back])."
msgstr "Добавляет элемент в конец массива (псевдоним [method push_back])."

msgid "Appends a [PackedByteArray] at the end of this array."
msgstr "Добавляет [PackedByteArray] в конец этого массива."

msgid ""
"Finds the index of an existing value (or the insertion index that maintains "
"sorting order, if the value is not yet present in the array) using binary "
"search. Optionally, a [param before] specifier can be passed. If [code]false[/"
"code], the returned index comes after all existing entries of the value in "
"the array.\n"
"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
"unexpected behavior."
msgstr ""
"Находит индекс существующего значения (или индекс вставки, который "
"поддерживает порядок сортировки, если значение еще не присутствует в массиве) "
"с помощью бинарного поиска. При желании можно передать спецификатор [param "
"before]. Если [code]false[/code], возвращаемый индекс следует после всех "
"существующих записей значения в массиве.\n"
"[b]Примечание:[/b] Вызов [method bsearch] для несортированного массива "
"приводит к неожиданному поведению."

msgid ""
"Swaps the byte order of [param count] 16-bit segments of the array starting "
"at [param offset]. Swap is done in-place. If [param count] is less than zero, "
"all segments to the end of array are processed, if processed data size is not "
"a multiple of 2, the byte after the last processed 16-bit segment is not "
"modified."
msgstr ""
"Меняет порядок байтов [param count] 16-битных сегментов массива, начиная с "
"[param offset]. Обмен выполняется на месте. Если [param count] меньше нуля, "
"обрабатываются все сегменты до конца массива, если размер обработанных данных "
"не кратен 2, байт после последнего обработанного 16-битного сегмента не "
"изменяется."

msgid ""
"Swaps the byte order of [param count] 32-bit segments of the array starting "
"at [param offset]. Swap is done in-place. If [param count] is less than zero, "
"all segments to the end of array are processed, if processed data size is not "
"a multiple of 4, bytes after the last processed 32-bit segment are not "
"modified."
msgstr ""
"Меняет порядок байтов [param count] 32-битных сегментов массива, начиная с "
"[param offset]. Обмен выполняется на месте. Если [param count] меньше нуля, "
"обрабатываются все сегменты до конца массива, если размер обработанных данных "
"не кратен 4, байты после последнего обработанного 32-битного сегмента не "
"изменяются."

msgid ""
"Swaps the byte order of [param count] 64-bit segments of the array starting "
"at [param offset]. Swap is done in-place. If [param count] is less than zero, "
"all segments to the end of array are processed, if processed data size is not "
"a multiple of 8, bytes after the last processed 64-bit segment are not "
"modified."
msgstr ""
"Меняет порядок байтов [param count] 64-битных сегментов массива, начиная с "
"[param offset]. Обмен выполняется на месте. Если [param count] меньше нуля, "
"обрабатываются все сегменты до конца массива, если размер обработанных данных "
"не кратен 8, байты после последнего обработанного 64-битного сегмента не "
"изменяются."

msgid ""
"Clears the array. This is equivalent to using [method resize] with a size of "
"[code]0[/code]."
msgstr ""
"Очищает массив. Это эквивалентно использованию [method resize] с размером "
"[code]0[/code]."

msgid ""
"Returns a new [PackedByteArray] with the data compressed. Set the compression "
"mode using one of [enum FileAccess.CompressionMode]'s constants."
msgstr ""
"Возвращает новый [PackedByteArray] со сжатыми данными. Установите режим "
"сжатия, используя одну из констант [enum FileAccess.CompressionMode]."

msgid "Returns the number of times an element is in the array."
msgstr "Возвращает количество раз когда элемент встречается в массиве."

msgid ""
"Decodes a 64-bit floating-point number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0.0[/"
"code] if a valid number can't be decoded."
msgstr ""
"Декодирует 64-битное число с плавающей точкой из байтов, начиная с [param "
"byte_offset]. Завершается ошибкой, если количество байтов недостаточно. "
"Возвращает [code]0.0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a 32-bit floating-point number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0.0[/"
"code] if a valid number can't be decoded."
msgstr ""
"Декодирует 32-битное число с плавающей точкой из байтов, начиная с [param "
"byte_offset]. Завершается неудачей, если количество байтов недостаточно. "
"Возвращает [code]0.0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a 16-bit floating-point number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0.0[/"
"code] if a valid number can't be decoded."
msgstr ""
"Декодирует 16-битное число с плавающей точкой из байтов, начиная с [param "
"byte_offset]. Завершается неудачей, если количество байтов недостаточно. "
"Возвращает [code]0.0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a 8-bit signed integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Декодирует 8-битное целое число со знаком из байтов, начиная с [param "
"byte_offset]. Завершается ошибкой, если количество байтов недостаточно. "
"Возвращает [code]0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a 16-bit signed integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Декодирует 16-битное целое число со знаком из байтов, начиная с [param "
"byte_offset]. Завершается ошибкой, если количество байтов недостаточно. "
"Возвращает [code]0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a 32-bit signed integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Декодирует 32-битное целое число со знаком из байтов, начиная с [param "
"byte_offset]. Завершается ошибкой, если количество байтов недостаточно. "
"Возвращает [code]0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a 64-bit signed integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Декодирует 64-битное целое число со знаком из байтов, начиная с [param "
"byte_offset]. Завершается ошибкой, если количество байтов недостаточно. "
"Возвращает [code]0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a 8-bit unsigned integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Декодирует 8-битное целое число без знака из байтов, начиная с [param "
"byte_offset]. Завершается ошибкой, если количество байтов недостаточно. "
"Возвращает [code]0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a 16-bit unsigned integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Декодирует 16-битное целое число без знака из байтов, начиная с [param "
"byte_offset]. Завершается ошибкой, если количество байтов недостаточно. "
"Возвращает [code]0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a 32-bit unsigned integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Декодирует 32-битное целое число без знака из байтов, начиная с [param "
"byte_offset]. Завершается ошибкой, если количество байтов недостаточно. "
"Возвращает [code]0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a 64-bit unsigned integer number from the bytes starting at [param "
"byte_offset]. Fails if the byte count is insufficient. Returns [code]0[/code] "
"if a valid number can't be decoded."
msgstr ""
"Декодирует 64-битное целое число без знака из байтов, начиная с [param "
"byte_offset]. Завершается ошибкой, если количество байтов недостаточно. "
"Возвращает [code]0[/code], если допустимое число не может быть декодировано."

msgid ""
"Decodes a [Variant] from the bytes starting at [param byte_offset]. Returns "
"[code]null[/code] if a valid variant can't be decoded or the value is "
"[Object]-derived and [param allow_objects] is [code]false[/code]."
msgstr ""
"Декодирует [Variant] из байтов, начиная с [param byte_offset]. Возвращает "
"[code]null[/code], если допустимый вариант не может быть декодирован или "
"значение получено из [Object], а [param allow_objects] равен [code]false[/"
"code]."

msgid ""
"Decodes a size of a [Variant] from the bytes starting at [param byte_offset]. "
"Requires at least 4 bytes of data starting at the offset, otherwise fails."
msgstr ""
"Декодирует размер [Variant] из байтов, начиная с [param byte_offset]. "
"Требуется не менее 4 байтов данных, начиная со смещения, в противном случае "
"происходит сбой."

msgid ""
"Returns a new [PackedByteArray] with the data decompressed. Set [param "
"buffer_size] to the size of the uncompressed data. Set the compression mode "
"using one of [enum FileAccess.CompressionMode]'s constants.\n"
"[b]Note:[/b] Decompression is not guaranteed to work with data not compressed "
"by Godot, for example if data compressed with the deflate compression mode "
"lacks a checksum or header."
msgstr ""
"Возвращает новый [PackedByteArray] с распакованными данными. Установите "
"[param buffer_size] на размер несжатых данных. Установите режим сжатия, "
"используя одну из констант [enum FileAccess.CompressionMode].\n"
"[b]Примечание:[/b] Распаковка не гарантирует работу с данными, не сжатыми "
"Godot, например, если данные, сжатые с помощью режима сжатия deflate, не "
"имеют контрольной суммы или заголовка."

msgid ""
"Returns a new [PackedByteArray] with the data decompressed. Set the "
"compression mode using one of [enum FileAccess.CompressionMode]'s constants. "
"[b]This method only accepts brotli, gzip, and deflate compression modes.[/b]\n"
"This method is potentially slower than [method decompress], as it may have to "
"re-allocate its output buffer multiple times while decompressing, whereas "
"[method decompress] knows it's output buffer size from the beginning.\n"
"GZIP has a maximal compression ratio of 1032:1, meaning it's very possible "
"for a small compressed payload to decompress to a potentially very large "
"output. To guard against this, you may provide a maximum size this function "
"is allowed to allocate in bytes via [param max_output_size]. Passing -1 will "
"allow for unbounded output. If any positive value is passed, and the "
"decompression exceeds that amount in bytes, then an error will be returned.\n"
"[b]Note:[/b] Decompression is not guaranteed to work with data not compressed "
"by Godot, for example if data compressed with the deflate compression mode "
"lacks a checksum or header."
msgstr ""
"Возвращает новый [PackedByteArray] с распакованными данными. Установите режим "
"сжатия, используя одну из констант [enum FileAccess.CompressionMode]. [b]Этот "
"метод принимает только режимы сжатия brotli, gzip и deflate.[/b]\n"
"Этот метод потенциально медленнее, чем [method decompress], так как ему может "
"потребоваться повторно выделить свой выходной буфер несколько раз во время "
"распаковки, тогда как [method decompress] знает размер своего выходного "
"буфера с самого начала.\n"
"GZIP имеет максимальный коэффициент сжатия 1032:1, что означает, что вполне "
"возможно, что небольшая сжатая полезная нагрузка распакуется в потенциально "
"очень большой вывод. Чтобы защититься от этого, вы можете указать "
"максимальный размер, который эта функция может выделить в байтах, с помощью "
"[param max_output_size]. Передача -1 разрешит неограниченный вывод. Если "
"передано любое положительное значение, и распаковка превысит это количество в "
"байтах, будет возвращена ошибка.\n"
"[b]Примечание:[/b] Не гарантируется, что декомпрессия будет работать с "
"данными, не сжатыми Godot, например, если данные, сжатые с помощью режима "
"сжатия deflate, не имеют контрольной суммы или заголовка."

msgid "Creates a copy of the array, and returns it."
msgstr "Создает копию массива и возвращает ее."

msgid ""
"Encodes a 64-bit floating-point number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 8 bytes of allocated space, "
"starting at the offset."
msgstr ""
"Кодирует 64-битное число с плавающей точкой как байты по индексу [param "
"byte_offset] байт. Массив должен иметь не менее 8 байт выделенного "
"пространства, начиная со смещения."

msgid ""
"Encodes a 32-bit floating-point number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 4 bytes of space, starting "
"at the offset."
msgstr ""
"Кодирует 32-битное число с плавающей точкой как байты по индексу [param "
"byte_offset] байт. Массив должен иметь не менее 4 байт пространства, начиная "
"со смещения."

msgid ""
"Encodes a 16-bit floating-point number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 2 bytes of space, starting "
"at the offset."
msgstr ""
"Кодирует 16-битное число с плавающей точкой как байты по индексу [param "
"byte_offset] байт. Массив должен иметь не менее 2 байт пространства, начиная "
"со смещения."

msgid ""
"Encodes a 8-bit signed integer number (signed byte) at the index of [param "
"byte_offset] bytes. The array must have at least 1 byte of space, starting at "
"the offset."
msgstr ""
"Кодирует 8-битное целое число со знаком (знаковый байт) по индексу [param "
"byte_offset] байт. Массив должен иметь не менее 1 байта пространства, начиная "
"со смещения."

msgid ""
"Encodes a 16-bit signed integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 2 bytes of space, starting "
"at the offset."
msgstr ""
"Кодирует 16-битное целое число со знаком как байты по индексу [param "
"byte_offset] байт. Массив должен иметь не менее 2 байт пространства, начиная "
"со смещения."

msgid ""
"Encodes a 32-bit signed integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 4 bytes of space, starting "
"at the offset."
msgstr ""
"Кодирует 32-битное целое число со знаком как байты по индексу [param "
"byte_offset] байт. Массив должен иметь не менее 4 байт пространства, начиная "
"со смещения."

msgid ""
"Encodes a 64-bit signed integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 8 bytes of space, starting "
"at the offset."
msgstr ""
"Кодирует 64-битное целое число со знаком как байты по индексу [param "
"byte_offset] байт. Массив должен иметь не менее 8 байт пространства, начиная "
"со смещения."

msgid ""
"Encodes a 8-bit unsigned integer number (byte) at the index of [param "
"byte_offset] bytes. The array must have at least 1 byte of space, starting at "
"the offset."
msgstr ""
"Кодирует 8-битное целое число без знака (байт) по индексу [param byte_offset] "
"байт. Массив должен иметь не менее 1 байта пространства, начиная со смещения."

msgid ""
"Encodes a 16-bit unsigned integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 2 bytes of space, starting "
"at the offset."
msgstr ""
"Кодирует 16-битное целое число без знака как байты по индексу [param "
"byte_offset] байт. Массив должен иметь не менее 2 байт пространства, начиная "
"со смещения."

msgid ""
"Encodes a 32-bit unsigned integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 4 bytes of space, starting "
"at the offset."
msgstr ""
"Кодирует 32-битное целое число без знака как байты по индексу [param "
"byte_offset] байт. Массив должен иметь не менее 4 байт пространства, начиная "
"со смещения."

msgid ""
"Encodes a 64-bit unsigned integer number as bytes at the index of [param "
"byte_offset] bytes. The array must have at least 8 bytes of space, starting "
"at the offset."
msgstr ""
"Кодирует 64-битное целое число без знака как байты по индексу [param "
"byte_offset] байт. Массив должен иметь не менее 8 байт пространства, начиная "
"со смещения."

msgid ""
"Encodes a [Variant] at the index of [param byte_offset] bytes. A sufficient "
"space must be allocated, depending on the encoded variant's size. If [param "
"allow_objects] is [code]false[/code], [Object]-derived values are not "
"permitted and will instead be serialized as ID-only."
msgstr ""
"Кодирует [Variant] по индексу [param byte_offset] байт. Должно быть выделено "
"достаточно места в зависимости от размера закодированного варианта. Если "
"[param allow_objects] равно [code]false[/code], значения, полученные из "
"[Object], не допускаются и будут сериализованы как только идентификаторы."

msgid ""
"Removes the first occurrence of a value from the array and returns "
"[code]true[/code]. If the value does not exist in the array, nothing happens "
"and [code]false[/code] is returned. To remove an element by index, use "
"[method remove_at] instead."
msgstr ""
"Удаляет первое вхождение значения из массива и возвращает [code]true[/code]. "
"Если значение не существует в массиве, ничего не происходит и возвращается "
"[code]false[/code]. Чтобы удалить элемент по индексу, используйте [method "
"remove_at]."

msgid ""
"Assigns the given value to all elements in the array. This can typically be "
"used together with [method resize] to create an array with a given size and "
"initialized elements."
msgstr ""
"Присваивает заданное значение всем элементам массива. Обычно это можно "
"использовать вместе с [method resize] для создания массива с заданным "
"размером и инициализированными элементами."

msgid ""
"Searches the array for a value and returns its index or [code]-1[/code] if "
"not found. Optionally, the initial search index can be passed."
msgstr ""
"Ищет в массиве значение и возвращает его индекс или [code]-1[/code], если не "
"найдено. При желании можно передать начальный индекс поиска."

msgid ""
"Returns the byte at the given [param index] in the array. If [param index] "
"out-of-bounds or negative, this method fails and returns [code]0[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Возвращает байт по указанному [param index] в массиве. Если [param index] "
"выходит за пределы или отрицателен, этот метод завершается ошибкой и "
"возвращает [code]0[/code].\n"
"Этот метод похож (но не идентичен) оператору [code][][/code]. В частности, "
"когда этот метод завершается ошибкой, он не приостанавливает выполнение "
"проекта, если запущен из редактора."

msgid ""
"Converts ASCII/Latin-1 encoded array to [String]. Fast alternative to [method "
"get_string_from_utf8] if the content is ASCII/Latin-1 only. Unlike the UTF-8 "
"function this function maps every byte to a character in the array. Multibyte "
"sequences will not be interpreted correctly. For parsing user input always "
"use [method get_string_from_utf8]. This is the inverse of [method "
"String.to_ascii_buffer]."
msgstr ""
"Преобразует массив в кодировке ASCII/Latin-1 в [String]. Быстрая альтернатива "
"[method get_string_from_utf8], если содержимое только в кодировке ASCII/"
"Latin-1. В отличие от функции UTF-8 эта функция сопоставляет каждый байт с "
"символом в массиве. Многобайтовые последовательности не будут "
"интерпретироваться правильно. Для анализа пользовательского ввода всегда "
"используйте [method get_string_from_utf8]. Это обратный метод [method "
"String.to_ascii_buffer]."

msgid ""
"Converts system multibyte code page encoded array to [String]. If conversion "
"fails, empty string is returned. This is the inverse of [method "
"String.to_multibyte_char_buffer].\n"
"The values permitted for [param encoding] are system dependent. If [param "
"encoding] is empty string, system default encoding is used.\n"
"- For Windows, see [url=https://learn.microsoft.com/en-us/windows/win32/Intl/"
"code-page-identifiers]Code Page Identifiers[/url] .NET names.\n"
"- For macOS and Linux/BSD, see [code]libiconv[/code] library documentation "
"and [code]iconv --list[/code] for a list of supported encodings."
msgstr ""
"Преобразует системный многобайтовый кодовый массив в [String]. Если "
"преобразование не удалось, возвращается пустая строка. Это обратный метод "
"[method String.to_multibyte_char_buffer].\n"
"Допустимые значения для [param encoding] зависят от системы. Если [param "
"encoding] — пустая строка, используется системная кодировка по умолчанию.\n"
"- Для Windows см. [url=https://learn.microsoft.com/en-us/windows/win32/Intl/"
"code-page-identifiers]Идентификаторы кодовых страниц[/url] .NET-имена.\n"
"- Для macOS и Linux/BSD см. документацию библиотеки [code]libiconv[/code] и "
"[code]iconv --list[/code] для списка поддерживаемых кодировок."

msgid ""
"Converts UTF-8 encoded array to [String]. Slower than [method "
"get_string_from_ascii] but supports UTF-8 encoded data. Use this function if "
"you are unsure about the source of the data. For user input this function "
"should always be preferred. Returns empty string if source array is not valid "
"UTF-8 string. This is the inverse of [method String.to_utf8_buffer]."
msgstr ""
"Преобразует массив в кодировке UTF-8 в [String]. Медленнее, чем [method "
"get_string_from_ascii], но поддерживает данные в кодировке UTF-8. Используйте "
"эту функцию, если вы не уверены в источнике данных. Для пользовательского "
"ввода эта функция всегда должна быть предпочтительной. Возвращает пустую "
"строку, если исходный массив не является допустимой строкой UTF-8. Это "
"обратный метод [method String.to_utf8_buffer]."

msgid ""
"Converts UTF-16 encoded array to [String]. If the BOM is missing, little-"
"endianness is assumed. Returns empty string if source array is not valid "
"UTF-16 string. This is the inverse of [method String.to_utf16_buffer]."
msgstr ""
"Преобразует массив в кодировке UTF-16 в [String]. Если BOM отсутствует, "
"предполагается прямой порядок байтов. Возвращает пустую строку, если исходный "
"массив не является допустимой строкой UTF-16. Это обратный метод [method "
"String.to_utf16_buffer]."

msgid ""
"Converts UTF-32 encoded array to [String]. Returns empty string if source "
"array is not valid UTF-32 string. This is the inverse of [method "
"String.to_utf32_buffer]."
msgstr ""
"Преобразует массив в кодировке UTF-32 в [String]. Возвращает пустую строку, "
"если исходный массив не является допустимой строкой UTF-32. Это обратный "
"метод [method String.to_utf32_buffer]."

msgid ""
"Converts wide character ([code]wchar_t[/code], UTF-16 on Windows, UTF-32 on "
"other platforms) encoded array to [String]. Returns empty string if source "
"array is not valid wide string. This is the inverse of [method "
"String.to_wchar_buffer]."
msgstr ""
"Преобразует массив широких символов ([code]wchar_t[/code], UTF-16 в Windows, "
"UTF-32 на других платформах) в [String]. Возвращает пустую строку, если "
"исходный массив не является допустимой широкой строкой. Это обратный метод "
"[method String.to_wchar_buffer]."

msgid "Returns [code]true[/code] if the array contains [param value]."
msgstr "Возвращает [code]true[/code], если массив содержит [param value]."

msgid ""
"Returns [code]true[/code] if a valid [Variant] value can be decoded at the "
"[param byte_offset]. Returns [code]false[/code] otherwise or when the value "
"is [Object]-derived and [param allow_objects] is [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если допустимое значение [Variant] может быть "
"декодировано в [param byte_offset]. Возвращает [code]false[/code] в противном "
"случае или когда значение получено из [Object], а [param allow_objects] равен "
"[code]false[/code]."

msgid ""
"Returns a hexadecimal representation of this array as a [String].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array = PackedByteArray([11, 46, 255])\n"
"print(array.hex_encode()) # Prints \"0b2eff\"\n"
"[/gdscript]\n"
"[csharp]\n"
"byte[] array = [11, 46, 255];\n"
"GD.Print(array.HexEncode()); // Prints \"0b2eff\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает шестнадцатеричное представление этого массива в виде [String].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var array = PackedByteArray([11, 46, 255])\n"
"print(array.hex_encode()) # Выводит \"0b2eff\"\n"
"[/gdscript]\n"
"[csharp]\n"
"byte[] array = [11, 46, 255];\n"
"GD.Print(array.HexEncode()); // Выводит \"0b2eff\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Inserts a new element at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
"Вставляет новый элемент в указанную позицию в массиве. Позиция должна быть "
"допустимой или в конце массива ([code]idx == size()[/code])."

msgid "Returns [code]true[/code] if the array is empty."
msgstr "Возвращает [code]true[/code] если массив пустой."

msgid "Appends an element at the end of the array."
msgstr "Добавляет элемент в конец массива."

msgid "Removes an element from the array by index."
msgstr "Удаляет элемент из массива по индексу."

msgid ""
"Sets the size of the array. If the array is grown, reserves elements at the "
"end of the array. If the array is shrunk, truncates the array to the new "
"size. Calling [method resize] once and assigning the new values is faster "
"than adding new elements one by one.\n"
"Returns [constant OK] on success, or one of the following [enum Error] "
"constants if this method fails: [constant ERR_INVALID_PARAMETER] if the size "
"is negative, or [constant ERR_OUT_OF_MEMORY] if allocations fail. Use [method "
"size] to find the actual size of the array after resize."
msgstr ""
"Устанавливает размер массива. Если массив увеличивается, резервирует элементы "
"в конце массива. Если массив уменьшается, усекает массив до нового размера. "
"Вызов [method resize] один раз и назначение новых значений быстрее, чем "
"добавление новых элементов по одному. \n"
"Возвращает [constant OK] в случае успеха или одну из следующих констант [enum "
"Error], если этот метод не удался: [constant ERR_INVALID_PARAMETER], если "
"размер отрицательный, или [constant ERR_OUT_OF_MEMORY], если выделение памяти "
"не удается. Используйте [method size], чтобы узнать фактический размер "
"массива после изменения размера."

msgid "Reverses the order of the elements in the array."
msgstr "Инвертирует порядок элементов в массиве."

msgid ""
"Searches the array in reverse order. Optionally, a start search index can be "
"passed. If negative, the start index is considered relative to the end of the "
"array."
msgstr ""
"Поиск в массиве в обратном порядке. При желании можно передать начальный "
"индекс поиска. Если отрицательный, начальный индекс считается относительно "
"конца массива."

msgid "Changes the byte at the given index."
msgstr "Изменяет байт по указанному индексу."

msgid "Returns the number of elements in the array."
msgstr "Возвращает число элементов в массиве."

msgid ""
"Returns the slice of the [PackedByteArray], from [param begin] (inclusive) to "
"[param end] (exclusive), as a new [PackedByteArray].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Возвращает срез [PackedByteArray] от [param begin] (включительно) до [param "
"end] (исключительно) как новый [PackedByteArray].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено размером "
"массива, поэтому значение по умолчанию для [param end] делает его срезом по "
"размеру массива по умолчанию (т. е. [code]arr.slice(1)[/code] является "
"сокращением для [code]arr.slice(1, arr.size())[/code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу массива (т. е. [code]arr.slice(0, -2)[/code] является сокращением для "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid "Sorts the elements of the array in ascending order."
msgstr "Сортирует элементы массива в порядке возрастания."

msgid ""
"Returns a copy of the data converted to a [PackedColorArray], where each "
"block of 16 bytes has been converted to a [Color] variant.\n"
"[b]Note:[/b] The size of the input array must be a multiple of 16 (size of "
"four 32-bit float variables). The size of the new array will be "
"[code]byte_array.size() / 16[/code]. If the original data can't be converted "
"to [Color] variants, the resulting data is undefined."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedColorArray], где каждый "
"блок из 16 байтов преобразован в вариант [Color].\n"
"[b]Примечание:[/b] Размер входного массива должен быть кратен 16 (размеру "
"четырёх 32-битных переменных с плавающей точкой). Размер нового массива будет "
"равен [code]byte_array.size() / 16[/code]. Если исходные данные невозможно "
"преобразовать в варианты [Color], результирующие данные не определены."

msgid ""
"Returns a copy of the data converted to a [PackedFloat32Array], where each "
"block of 4 bytes has been converted to a 32-bit float (C++ [code skip-"
"lint]float[/code]).\n"
"The size of the input array must be a multiple of 4 (size of 32-bit float). "
"The size of the new array will be [code]byte_array.size() / 4[/code].\n"
"If the original data can't be converted to 32-bit floats, the resulting data "
"is undefined."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedFloat32Array], где каждый "
"блок из 4 байтов был преобразован в 32-битное число с плавающей точкой (C++ "
"[code skip-lint]float[/code]).\n"
"Размер входного массива должен быть кратен 4 (размер 32-битного числа с "
"плавающей точкой). Размер нового массива будет [code]byte_array.size() / 4[/"
"code].\n"
"Если исходные данные не могут быть преобразованы в 32-битные числа с "
"плавающей точкой, результирующие данные не определены."

msgid ""
"Returns a copy of the data converted to a [PackedFloat64Array], where each "
"block of 8 bytes has been converted to a 64-bit float (C++ [code]double[/"
"code], Godot [float]).\n"
"The size of the input array must be a multiple of 8 (size of 64-bit double). "
"The size of the new array will be [code]byte_array.size() / 8[/code].\n"
"If the original data can't be converted to 64-bit floats, the resulting data "
"is undefined."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedFloat64Array], где каждый "
"блок из 8 байтов был преобразован в 64-битное число с плавающей точкой (C++ "
"[code]double[/code], Godot [float]).\n"
"Размер входного массива должен быть кратен 8 (размер 64-битного числа с "
"плавающей точкой). Размер нового массива будет [code]byte_array.size() / 8[/"
"code].\n"
"Если исходные данные не могут быть преобразованы в 64-битные числа с "
"плавающей точкой, результирующие данные не определены."

msgid ""
"Returns a copy of the data converted to a [PackedInt32Array], where each "
"block of 4 bytes has been converted to a signed 32-bit integer (C++ "
"[code]int32_t[/code]).\n"
"The size of the input array must be a multiple of 4 (size of 32-bit integer). "
"The size of the new array will be [code]byte_array.size() / 4[/code].\n"
"If the original data can't be converted to signed 32-bit integers, the "
"resulting data is undefined."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedInt32Array], где каждый "
"блок из 4 байтов был преобразован в 32-битное целое число со знаком (C++ "
"[code]int32_t[/code]).\n"
"Размер входного массива должен быть кратен 4 (размер 32-битного целого "
"числа). Размер нового массива будет [code]byte_array.size() / 4[/code].\n"
"Если исходные данные не могут быть преобразованы в 32-битные целые числа со "
"знаком, результирующие данные не определены."

msgid ""
"Returns a copy of the data converted to a [PackedInt64Array], where each "
"block of 8 bytes has been converted to a signed 64-bit integer (C++ "
"[code]int64_t[/code], Godot [int]).\n"
"The size of the input array must be a multiple of 8 (size of 64-bit integer). "
"The size of the new array will be [code]byte_array.size() / 8[/code].\n"
"If the original data can't be converted to signed 64-bit integers, the "
"resulting data is undefined."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedInt64Array], где каждый "
"блок из 8 байтов был преобразован в знаковое 64-битное целое число (C++ "
"[code]int64_t[/code], Godot [int]).\n"
"Размер входного массива должен быть кратен 8 (размер 64-битного целого "
"числа). Размер нового массива будет [code]byte_array.size() / 8[/code].\n"
"Если исходные данные не могут быть преобразованы в знаковые 64-битные целые "
"числа, результирующие данные не определены."

msgid ""
"Returns a copy of the data converted to a [PackedVector2Array], where each "
"block of 8 bytes or 16 bytes (32-bit or 64-bit) has been converted to a "
"[Vector2] variant.\n"
"[b]Note:[/b] The size of the input array must be a multiple of 8 or 16 "
"(depending on the build settings, see [Vector2] for more details). The size "
"of the new array will be [code]byte_array.size() / (8 or 16)[/code]. If the "
"original data can't be converted to [Vector2] variants, the resulting data is "
"undefined."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedVector2Array], где каждый "
"блок из 8 или 16 байт (32-бит или 64-бит) преобразован в вариант [Vector2].\n"
"[b]Примечание:[/b] Размер входного массива должен быть кратен 8 или 16 (в "
"зависимости от настроек сборки, см. [Vector2] для получения дополнительной "
"информации). Размер нового массива будет равен [code]byte_array.size() / (8 "
"или 16)[/code]. Если исходные данные не могут быть преобразованы в варианты "
"[Vector2], результирующие данные не определены."

msgid ""
"Returns a copy of the data converted to a [PackedVector3Array], where each "
"block of 12 or 24 bytes (32-bit or 64-bit) has been converted to a [Vector3] "
"variant.\n"
"[b]Note:[/b] The size of the input array must be a multiple of 12 or 24 "
"(depending on the build settings, see [Vector3] for more details). The size "
"of the new array will be [code]byte_array.size() / (12 or 24)[/code]. If the "
"original data can't be converted to [Vector3] variants, the resulting data is "
"undefined."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedVector3Array], где каждый "
"блок из 12 или 24 байт (32-бит или 64-бит) преобразован в вариант [Vector3].\n"
"[b]Примечание:[/b] Размер входного массива должен быть кратен 12 или 24 (в "
"зависимости от настроек сборки, см. [Vector3] для получения дополнительной "
"информации). Размер нового массива будет равен [code]byte_array.size() / (12 "
"или 24)[/code]. Если исходные данные не могут быть преобразованы в варианты "
"[Vector3], результирующие данные не определены."

msgid ""
"Returns a copy of the data converted to a [PackedVector4Array], where each "
"block of 16 or 32 bytes (32-bit or 64-bit) has been converted to a [Vector4] "
"variant.\n"
"[b]Note:[/b] The size of the input array must be a multiple of 16 or 32 "
"(depending on the build settings, see [Vector4] for more details). The size "
"of the new array will be [code]byte_array.size() / (16 or 32)[/code]. If the "
"original data can't be converted to [Vector4] variants, the resulting data is "
"undefined."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedVector4Array], где каждый "
"блок из 16 или 32 байт (32-бит или 64-бит) преобразован в вариант [Vector4].\n"
"[b]Примечание:[/b] Размер входного массива должен быть кратен 16 или 32 (в "
"зависимости от настроек сборки, см. [Vector4] для получения дополнительной "
"информации). Размер нового массива будет равен [code]byte_array.size() / (16 "
"или 32)[/code]. Если исходные данные не могут быть преобразованы в варианты "
"[Vector4], результирующие данные не определены."

msgid "Returns [code]true[/code] if contents of the arrays differ."
msgstr "Возвращает [code]true[/code], если содержимое массивов различается."

msgid ""
"Returns a new [PackedByteArray] with contents of [param right] added at the "
"end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Возвращает новый [PackedByteArray] с содержимым [param right], добавленным в "
"конец этого массива. Для лучшей производительности рассмотрите возможность "
"использования [method append_array] вместо этого."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal bytes at the corresponding indices."
msgstr ""
"Возвращает [code]true[/code], если содержимое обоих массивов одинаково, т.е. "
"все байты в соответствующих индексах одинаковы."

msgid ""
"Returns the byte at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error.\n"
"Note that the byte is returned as a 64-bit [int]."
msgstr ""
"Возвращает байт по индексу [param index]. Отрицательные индексы можно "
"использовать для доступа к элементам, начиная с конца. Использование индекса "
"за пределами массива приведет к ошибке.\n"
"Обратите внимание, что байт возвращается как 64-битное [int]."

msgid "A packed array of [Color]s."
msgstr "Упакованный массив [Color]."

msgid ""
"An array specifically designed to hold [Color]. Packs data tightly, so it "
"saves memory for large array sizes.\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedColorArray] versus "
"[code]Array[Color][/code]). Also, packed arrays consume less memory. As a "
"downside, packed arrays are less flexible as they don't offer as many "
"convenience methods such as [method Array.map]. Typed arrays are in turn "
"faster to iterate on and modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Массив, специально разработанный для хранения [Color]. Плотно упаковывает "
"данные, поэтому экономит память для больших размеров массива.\n"
"[b]Различия между упакованными массивами, типизированными массивами и "
"нетипизированными массивами:[/b] Упакованные массивы, как правило, быстрее "
"перебирать и изменять по сравнению с типизированным массивом того же типа "
"(например, [PackedColorArray] по сравнению с [code]Array[Color][/code]). "
"Кроме того, упакованные массивы потребляют меньше памяти. С другой стороны, "
"упакованные массивы менее гибкие, поскольку они не предлагают столько удобных "
"методов, как [method Array.map]. Типизированные массивы, в свою очередь, "
"быстрее перебирать и изменять, чем нетипизированные массивы.\n"
"[b]Примечание:[/b] Упакованные массивы всегда передаются по ссылке. Чтобы "
"получить копию массива, которую можно изменять независимо от исходного "
"массива, используйте [method duplicate]. Это [i]не[/i] касается встроенных "
"свойств и методов. В этих случаях возвращаемый упакованный массив является "
"копией, и его изменение [i]не[/i] повлияет на исходное значение. Чтобы "
"обновить встроенное свойство этого типа, измените возвращаемый массив, а "
"затем снова присвойте его свойству."

msgid "Constructs an empty [PackedColorArray]."
msgstr "Создает пустой [PackedColorArray]."

msgid ""
"Constructs a [PackedColorArray] as a copy of the given [PackedColorArray]."
msgstr "Создает [PackedColorArray] как копию заданного [PackedColorArray]."

msgid ""
"Constructs a new [PackedColorArray]. Optionally, you can pass in a generic "
"[Array] that will be converted.\n"
"[b]Note:[/b] When initializing a [PackedColorArray] with elements, it must be "
"initialized with an [Array] of [Color] values:\n"
"[codeblock]\n"
"var array = PackedColorArray([Color(0.1, 0.2, 0.3), Color(0.4, 0.5, 0.6)])\n"
"[/codeblock]"
msgstr ""
"Создает новый [PackedColorArray]. При желании вы можете передать общий "
"[Array], который будет преобразован.\n"
"[b]Примечание:[/b] При инициализации [PackedColorArray] с элементами он "
"должен быть инициализирован [Array] значений [Color]:\n"
"[codeblock]\n"
"var array = PackedColorArray([Color(0.1, 0.2, 0.3), Color(0.4, 0.5, 0.6)])\n"
"[/codeblock]"

msgid "Appends a [PackedColorArray] at the end of this array."
msgstr "Добавляет [PackedColorArray] в конец этого массива."

msgid ""
"Returns the [Color] at the given [param index] in the array. If [param index] "
"out-of-bounds or negative, this method fails and returns [code]Color(0, 0, 0, "
"1)[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Возвращает [Color] по указанному [param index] в массиве. Если [param index] "
"выходит за пределы или отрицателен, этот метод завершается ошибкой и "
"возвращает [code]Color(0, 0, 0, 1)[/code]. \n"
"Этот метод похож (но не идентичен) оператору [code][][/code]. В частности, "
"когда этот метод завершается ошибкой, он не приостанавливает выполнение "
"проекта, если запущен из редактора."

msgid "Appends a value to the array."
msgstr "Добавляет значение в массив."

msgid "Changes the [Color] at the given index."
msgstr "Изменяет [Color] по указанному индексу."

msgid ""
"Returns the slice of the [PackedColorArray], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedColorArray].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Возвращает срез [PackedColorArray] от [param begin] (включительно) до [param "
"end] (исключительно) как новый [PackedColorArray].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено размером "
"массива, поэтому значение по умолчанию для [param end] делает его срезом по "
"размеру массива по умолчанию (т. е. [code]arr.slice(1)[/code] является "
"сокращением для [code]arr.slice(1, arr.size())[/code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу массива (т. е. [code]arr.slice(0, -2)[/code] является сокращением для "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid "Returns a [PackedByteArray] with each color encoded as bytes."
msgstr ""
"Возвращает [PackedByteArray], в котором каждый цвет закодирован в байтах."

msgid ""
"Returns a new [PackedColorArray] with contents of [param right] added at the "
"end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Возвращает новый [PackedColorArray] с содержимым [param right], добавленным в "
"конец этого массива. Для лучшей производительности рассмотрите возможность "
"использования [method append_array] вместо этого."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal [Color]s at the corresponding indices."
msgstr ""
"Возвращает [code]true[/code], если содержимое обоих массивов одинаково, т.е. "
"они имеют все одинаковые [Color] в соответствующих индексах."

msgid ""
"Returns the [Color] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Возвращает [Color] по индексу [param index]. Отрицательные индексы можно "
"использовать для доступа к элементам, начиная с конца. Использование индекса "
"за пределами массива приведет к ошибке."

msgid ""
"Use [method @GlobalScope.var_to_bytes] or [method FileAccess.store_var] "
"instead. To enable data compression, use [method PackedByteArray.compress] or "
"[method FileAccess.open_compressed]."
msgstr ""
"Вместо этого используйте [method @GlobalScope.var_to_bytes] или [method "
"FileAccess.store_var]. Чтобы включить сжатие данных, используйте [method "
"PackedByteArray.compress] или [method FileAccess.open_compressed]."

msgid "Efficiently packs and serializes [Array] or [Dictionary]."
msgstr "Эффективно упаковывает и сериализует [Array] или [Dictionary]."

msgid ""
"[PackedDataContainer] can be used to efficiently store data from untyped "
"containers. The data is packed into raw bytes and can be saved to file. Only "
"[Array] and [Dictionary] can be stored this way.\n"
"You can retrieve the data by iterating on the container, which will work as "
"if iterating on the packed data itself. If the packed container is a "
"[Dictionary], the data can be retrieved by key names ([String]/[StringName] "
"only).\n"
"[codeblock]\n"
"var data = { \"key\": \"value\", \"another_key\": 123, \"lock\": Vector2() }\n"
"var packed = PackedDataContainer.new()\n"
"packed.pack(data)\n"
"ResourceSaver.save(packed, \"packed_data.res\")\n"
"[/codeblock]\n"
"[codeblock]\n"
"var container = load(\"packed_data.res\")\n"
"for key in container:\n"
"\tprints(key, container[key])\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"key value\n"
"lock (0, 0)\n"
"another_key 123\n"
"[/codeblock]\n"
"Nested containers will be packed recursively. While iterating, they will be "
"returned as [PackedDataContainerRef]."
msgstr ""
"[PackedDataContainer] можно использовать для эффективного хранения данных из "
"нетипизированных контейнеров. Данные упаковываются в необработанные байты и "
"могут быть сохранены в файл. Только [Array] и [Dictionary] можно хранить "
"таким образом.\n"
"Вы можете извлечь данные, итерируя по контейнеру, что будет работать так же, "
"как и итерация по самим упакованным данным. Если упакованный контейнер — это "
"[Dictionary], данные можно извлечь по именам ключей (только [String]/"
"[StringName]).\n"
"[codeblock]\n"
"var data = { \"key\": \"value\", \"another_key\": 123, \"lock\": Vector2() }\n"
"var packed = PackedDataContainer.new()\n"
"packed.pack(data)\n"
"ResourceSaver.save(packed, \"packed_data.res\")\n"
"[/codeblock]\n"
"[codeblock]\n"
"var container = load(\"packed_data.res\")\n"
"for key in container:\n"
"\tprints(key, container[key])\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"key value\n"
"lock (0, 0)\n"
"another_key 123\n"
"[/codeblock]\n"
"Вложенные контейнеры будут упакованы рекурсивно. При итерации они будут "
"возвращены как [PackedDataContainerRef]."

msgid ""
"Packs the given container into a binary representation. The [param value] "
"must be either [Array] or [Dictionary], any other type will result in invalid "
"data error.\n"
"[b]Note:[/b] Subsequent calls to this method will overwrite the existing data."
msgstr ""
"Упаковывает заданный контейнер в двоичное представление. [param value] должно "
"быть либо [Array], либо [Dictionary], любой другой тип приведет к ошибке "
"недопустимых данных.\n"
"[b]Примечание:[/b] Последующие вызовы этого метода перезапишут существующие "
"данные."

msgid ""
"Returns the size of the packed container (see [method Array.size] and [method "
"Dictionary.size])."
msgstr ""
"Возвращает размер упакованного контейнера (см. [method Array.size] и [method "
"Dictionary.size])."

msgid ""
"An internal class used by [PackedDataContainer] to pack nested arrays and "
"dictionaries."
msgstr ""
"Внутренний класс, используемый [PackedDataContainer] для упаковки вложенных "
"массивов и словарей."

msgid ""
"When packing nested containers using [PackedDataContainer], they are "
"recursively packed into [PackedDataContainerRef] (only applies to [Array] and "
"[Dictionary]). Their data can be retrieved the same way as from "
"[PackedDataContainer].\n"
"[codeblock]\n"
"var packed = PackedDataContainer.new()\n"
"packed.pack([1, 2, 3, [\"nested1\", \"nested2\"], 4, 5, 6])\n"
"\n"
"for element in packed:\n"
"\tif element is PackedDataContainerRef:\n"
"\t\tfor subelement in element:\n"
"\t\t\tprint(\"::\", subelement)\n"
"\telse:\n"
"\t\tprint(element)\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"1\n"
"2\n"
"3\n"
"::nested1\n"
"::nested2\n"
"4\n"
"5\n"
"6\n"
"[/codeblock]"
msgstr ""
"При упаковке вложенных контейнеров с помощью [PackedDataContainer] они "
"рекурсивно упаковываются в [PackedDataContainerRef] (применимо только к "
"[Array] и [Dictionary]). Их данные могут быть извлечены так же, как и из "
"[PackedDataContainer].\n"
"[codeblock]\n"
"var packed = PackedDataContainer.new()\n"
"packed.pack([1, 2, 3, [\"nested1\", \"nested2\"], 4, 5, 6])\n"
"\n"
"for element in packed:\n"
"\tif element is PackedDataContainerRef:\n"
"\t\tfor subelement in element:\n"
"\t\t\tprint(\"::\", subelement)\n"
"\telse:\n"
"\t\tprint(element)\n"
"[/codeblock]\n"
"Prints:\n"
"[codeblock lang=text]\n"
"1\n"
"2\n"
"3\n"
"::nested1\n"
"::nested2\n"
"4\n"
"5\n"
"6\n"
"[/codeblock]"

msgid "A packed array of 32-bit floating-point values."
msgstr "Упакованный массив 32-битных значений с плавающей точкой."

msgid ""
"An array specifically designed to hold 32-bit floating-point values (float). "
"Packs data tightly, so it saves memory for large array sizes.\n"
"If you need to pack 64-bit floats tightly, see [PackedFloat64Array].\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Массив, специально разработанный для хранения 32-битных значений с плавающей "
"точкой (float). Плотно упаковывает данные, поэтому экономит память для "
"больших размеров массива.\n"
"Если вам нужно плотно упаковать 64-битные значения с плавающей точкой, см. "
"[PackedFloat64Array].\n"
"[b]Примечание:[/b] Упакованные массивы всегда передаются по ссылке. Чтобы "
"получить копию массива, которую можно изменять независимо от исходного "
"массива, используйте [method duplicate]. Это [i]не[/i] касается встроенных "
"свойств и методов. В этих случаях возвращаемый упакованный массив является "
"копией, и его изменение [i]не[/i] повлияет на исходное значение. Чтобы "
"обновить встроенное свойство этого типа, измените возвращаемый массив, а "
"затем снова назначьте его свойству."

msgid "Constructs an empty [PackedFloat32Array]."
msgstr "Создает пустой [PackedFloat32Array]."

msgid ""
"Constructs a [PackedFloat32Array] as a copy of the given [PackedFloat32Array]."
msgstr "Создает [PackedFloat32Array] как копию заданного [PackedFloat32Array]."

msgid ""
"Constructs a new [PackedFloat32Array]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Создает новый [PackedFloat32Array]. При желании можно передать общий [Array], "
"который будет преобразован."

msgid "Appends a [PackedFloat32Array] at the end of this array."
msgstr "Добавляет [PackedFloat32Array] в конец этого массива."

msgid ""
"Finds the index of an existing value (or the insertion index that maintains "
"sorting order, if the value is not yet present in the array) using binary "
"search. Optionally, a [param before] specifier can be passed. If [code]false[/"
"code], the returned index comes after all existing entries of the value in "
"the array.\n"
"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
"unexpected behavior.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Находит индекс существующего значения (или индекс вставки, который "
"поддерживает порядок сортировки, если значение еще не присутствует в массиве) "
"с помощью бинарного поиска. При желании можно передать спецификатор [param "
"before]. Если [code]false[/code], возвращаемый индекс следует после всех "
"существующих записей значения в массиве.\n"
"[b]Примечание:[/b] Вызов [method bsearch] для несортированного массива "
"приводит к неожиданному поведению.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого метода могут быть неточными, если включены "
"NaN."

msgid ""
"Returns the number of times an element is in the array.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Возвращает количество раз, когда элемент находится в массиве.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого метода могут быть неточными, если включены "
"NaN."

msgid ""
"Removes the first occurrence of a value from the array and returns "
"[code]true[/code]. If the value does not exist in the array, nothing happens "
"and [code]false[/code] is returned. To remove an element by index, use "
"[method remove_at] instead.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Удаляет первое вхождение значения из массива и возвращает [code]true[/code]. "
"Если значение не существует в массиве, ничего не происходит и возвращается "
"[code]false[/code]. Чтобы удалить элемент по индексу, используйте [method "
"remove_at].\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого метода могут быть неточными, если включены "
"NaN."

msgid ""
"Searches the array for a value and returns its index or [code]-1[/code] if "
"not found. Optionally, the initial search index can be passed.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Ищет в массиве значение и возвращает его индекс или [code]-1[/code], если не "
"найдено. При желании можно передать начальный индекс поиска.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого метода могут быть неточными, если включены "
"NaN."

msgid ""
"Returns the 32-bit float at the given [param index] in the array. If [param "
"index] out-of-bounds or negative, this method fails and returns [code]0.0[/"
"code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Возвращает 32-битное число с плавающей точкой по указанному [param index] в "
"массиве. Если [param index] выходит за пределы или отрицателен, этот метод "
"завершается ошибкой и возвращает [code]0.0[/code]. \n"
"Этот метод похож (но не идентичен) оператору [code][][/code]. В частности, "
"когда этот метод завершается ошибкой, он не приостанавливает выполнение "
"проекта, если запущен из редактора."

msgid ""
"Returns [code]true[/code] if the array contains [param value].\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Возвращает [code]true[/code], если массив содержит [param value].\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого метода могут быть неточными, если включены "
"NaN."

msgid ""
"Searches the array in reverse order. Optionally, a start search index can be "
"passed. If negative, the start index is considered relative to the end of the "
"array.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Выполняет поиск в массиве в обратном порядке. При желании можно передать "
"начальный индекс поиска. Если он отрицательный, начальный индекс считается "
"относительно конца массива.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого метода могут быть неточными, если включены "
"NaN."

msgid "Changes the float at the given index."
msgstr "Изменяет число с плавающей точкой по указанному индексу."

msgid ""
"Returns the slice of the [PackedFloat32Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedFloat32Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Возвращает срез [PackedFloat32Array] от [param begin] (включительно) до "
"[param end] (исключительно) как новый [PackedFloat32Array].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено размером "
"массива, поэтому значение по умолчанию для [param end] делает его срезом по "
"размеру массива по умолчанию (т. е. [code]arr.slice(1)[/code] является "
"сокращением для [code]arr.slice(1, arr.size())[/code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу массива (т. е. [code]arr.slice(0, -2)[/code] является сокращением для "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Sorts the elements of the array in ascending order.\n"
"[b]Note:[/b] [constant @GDScript.NAN] doesn't behave the same as other "
"numbers. Therefore, the results from this method may not be accurate if NaNs "
"are included."
msgstr ""
"Сортирует элементы массива в порядке возрастания.\n"
"[b]Примечание:[/b] [constant @GDScript.NAN] ведет себя не так, как другие "
"числа. Поэтому результаты этого метода могут быть неточными, если включены "
"NaN."

msgid ""
"Returns a copy of the data converted to a [PackedByteArray], where each "
"element has been encoded as 4 bytes.\n"
"The size of the new array will be [code]float32_array.size() * 4[/code]."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedByteArray], где каждый "
"элемент закодирован как 4 байта.\n"
"Размер нового массива будет [code]float32_array.size() * 4[/code]."

msgid ""
"Returns a new [PackedFloat32Array] with contents of [param right] added at "
"the end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Возвращает новый [PackedFloat32Array] с содержимым [param right], добавленным "
"в конец этого массива. Для лучшей производительности рассмотрите возможность "
"использования [method append_array]."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal floats at the corresponding indices."
msgstr ""
"Возвращает [code]true[/code], если содержимое обоих массивов одинаково, т.е. "
"все они имеют одинаковые числа с плавающей точкой в соответствующих индексах."

msgid ""
"Returns the [float] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error.\n"
"Note that [float] type is 64-bit, unlike the values stored in the array."
msgstr ""
"Возвращает [float] по индексу [param index]. Отрицательные индексы можно "
"использовать для доступа к элементам, начиная с конца. Использование индекса "
"за пределами массива приведет к ошибке.\n"
"Обратите внимание, что тип [float] является 64-битным, в отличие от значений, "
"хранящихся в массиве."

msgid "A packed array of 64-bit floating-point values."
msgstr "Упакованный массив 64-битных значений с плавающей точкой."

msgid ""
"An array specifically designed to hold 64-bit floating-point values (double). "
"Packs data tightly, so it saves memory for large array sizes.\n"
"If you only need to pack 32-bit floats tightly, see [PackedFloat32Array] for "
"a more memory-friendly alternative.\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedFloat64Array] versus "
"[code]Array[float][/code]). Also, packed arrays consume less memory. As a "
"downside, packed arrays are less flexible as they don't offer as many "
"convenience methods such as [method Array.map]. Typed arrays are in turn "
"faster to iterate on and modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Массив, специально разработанный для хранения 64-битных значений с плавающей "
"точкой (double). Плотно упаковывает данные, поэтому экономит память для "
"больших размеров массива.\n"
"Если вам нужно плотно упаковать только 32-битные значения с плавающей точкой, "
"см. [PackedFloat32Array] для более удобной для памяти альтернативы.\n"
"[b] Различия между упакованными массивами, типизированными массивами и "
"нетипизированными массивами:[/b] Упакованные массивы, как правило, быстрее "
"итерируются и изменяются по сравнению с типизированным массивом того же типа "
"(например, [PackedFloat64Array] по сравнению с [code]Array[float][/code]). "
"Кроме того, упакованные массивы потребляют меньше памяти. Недостатком "
"является то, что упакованные массивы менее гибкие, поскольку они не "
"предлагают столько удобных методов, как [method Array.map]. Типизированные "
"массивы, в свою очередь, быстрее итерируются и изменяются, чем "
"нетипизированные массивы.\n"
"[b]Примечание:[/b] Упакованные массивы всегда передаются по ссылке. Чтобы "
"получить копию массива, которую можно изменять независимо от исходного "
"массива, используйте [method duplicate]. Это [i]не[/i] касается встроенных "
"свойств и методов. В этих случаях возвращаемый упакованный массив является "
"копией, и его изменение [i]не[/i] повлияет на исходное значение. Чтобы "
"обновить встроенное свойство этого типа, измените возвращаемый массив, а "
"затем снова присвойте его свойству."

msgid "Constructs an empty [PackedFloat64Array]."
msgstr "Создает пустой [PackedFloat64Array]."

msgid ""
"Constructs a [PackedFloat64Array] as a copy of the given [PackedFloat64Array]."
msgstr "Создает [PackedFloat64Array] как копию заданного [PackedFloat64Array]."

msgid ""
"Constructs a new [PackedFloat64Array]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Создает новый [PackedFloat64Array]. При желании можно передать универсальный "
"[Array], который будет преобразован."

msgid "Appends a [PackedFloat64Array] at the end of this array."
msgstr "Добавляет [PackedFloat64Array] в конец этого массива."

msgid ""
"Returns the 64-bit float at the given [param index] in the array. If [param "
"index] out-of-bounds or negative, this method fails and returns [code]0.0[/"
"code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Возвращает 64-битное число с плавающей точкой по указанному [param index] в "
"массиве. Если [param index] выходит за пределы или отрицателен, этот метод "
"завершается ошибкой и возвращает [code]0.0[/code]. \n"
"Этот метод похож (но не идентичен) оператору [code][][/code]. В частности, "
"когда этот метод завершается ошибкой, он не приостанавливает выполнение "
"проекта, если запущен из редактора."

msgid ""
"Returns the slice of the [PackedFloat64Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedFloat64Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Возвращает срез [PackedFloat64Array] от [param begin] (включительно) до "
"[param end] (исключительно) как новый [PackedFloat64Array].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено размером "
"массива, поэтому значение по умолчанию для [param end] делает его срезом по "
"размеру массива по умолчанию (т. е. [code]arr.slice(1)[/code] является "
"сокращением для [code]arr.slice(1, arr.size())[/code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу массива (т. е. [code]arr.slice(0, -2)[/code] является сокращением для "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a copy of the data converted to a [PackedByteArray], where each "
"element has been encoded as 8 bytes.\n"
"The size of the new array will be [code]float64_array.size() * 8[/code]."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedByteArray], где каждый "
"элемент закодирован как 8 байтов.\n"
"Размер нового массива будет [code]float64_array.size() * 8[/code]."

msgid ""
"Returns a new [PackedFloat64Array] with contents of [param right] added at "
"the end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Возвращает новый [PackedFloat64Array] с содержимым [param right], добавленным "
"в конец этого массива. Для лучшей производительности рассмотрите возможность "
"использования [method append_array] вместо этого."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal doubles at the corresponding indices."
msgstr ""
"Возвращает [code]true[/code], если содержимое обоих массивов одинаково, т.е. "
"все они имеют одинаковые значения double в соответствующих индексах."

msgid ""
"Returns the [float] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Возвращает [float] по индексу [param index]. Отрицательные индексы можно "
"использовать для доступа к элементам, начиная с конца. Использование индекса "
"за пределами массива приведет к ошибке."

msgid "A packed array of 32-bit integers."
msgstr "Упакованный массив 32-битных целых чисел."

msgid ""
"An array specifically designed to hold 32-bit integer values. Packs data "
"tightly, so it saves memory for large array sizes.\n"
"[b]Note:[/b] This type stores signed 32-bit integers, which means it can take "
"values in the interval [code][-2^31, 2^31 - 1][/code], i.e. [code]"
"[-2147483648, 2147483647][/code]. Exceeding those bounds will wrap around. In "
"comparison, [int] uses signed 64-bit integers which can hold much larger "
"values. If you need to pack 64-bit integers tightly, see [PackedInt64Array].\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Массив, специально разработанный для хранения 32-битных целочисленных "
"значений. Плотно упаковывает данные, поэтому экономит память для больших "
"размеров массива.\n"
"[b]Примечание:[/b] Этот тип хранит 32-битные целые числа со знаком, что "
"означает, что он может принимать значения в интервале [code][-2^31, 2^31 - 1]"
"[/code], т. е. [code][-2147483648, 2147483647][/code]. Превышение этих границ "
"приведет к циклическому переносу. Для сравнения, [int] использует 64-битные "
"целые числа со знаком, которые могут хранить гораздо большие значения. Если "
"вам нужно плотно упаковать 64-битные целые числа, см. [PackedInt64Array].\n"
"[b]Примечание:[/b] Упакованные массивы всегда передаются по ссылке. Чтобы "
"получить копию массива, которую можно изменять независимо от исходного "
"массива, используйте [method duplicate]. Это [i]не[/i] касается встроенных "
"свойств и методов. В этих случаях возвращаемый упакованный массив является "
"копией, и его изменение [i]не[/i] повлияет на исходное значение. Чтобы "
"обновить встроенное свойство этого типа, измените возвращаемый массив, а "
"затем снова присвойте его свойству."

msgid "Constructs an empty [PackedInt32Array]."
msgstr "Создает пустой [PackedInt32Array]."

msgid ""
"Constructs a [PackedInt32Array] as a copy of the given [PackedInt32Array]."
msgstr "Создает [PackedInt32Array] как копию заданного [PackedInt32Array]."

msgid ""
"Constructs a new [PackedInt32Array]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Создает новый [PackedInt32Array]. При желании можно передать универсальный "
"[Array], который будет преобразован."

msgid "Appends a [PackedInt32Array] at the end of this array."
msgstr "Добавляет [PackedInt32Array] в конец этого массива."

msgid ""
"Returns the 32-bit integer at the given [param index] in the array. If [param "
"index] out-of-bounds or negative, this method fails and returns [code]0[/"
"code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Возвращает 32-битное целое число по указанному [param index] в массиве. Если "
"[param index] выходит за пределы или отрицателен, этот метод завершается "
"ошибкой и возвращает [code]0[/code]. \n"
"Этот метод похож (но не идентичен) оператору [code][][/code]. В частности, "
"когда этот метод завершается ошибкой, он не приостанавливает выполнение "
"проекта, если запущен из редактора."

msgid ""
"Inserts a new integer at a given position in the array. The position must be "
"valid, or at the end of the array ([code]idx == size()[/code])."
msgstr ""
"Вставляет новое целое число в указанную позицию в массиве. Позиция должна "
"быть допустимой или находиться в конце массива ([code]idx == size()[/code])."

msgid "Changes the integer at the given index."
msgstr "Изменяет целое число по указанному индексу."

msgid ""
"Returns the slice of the [PackedInt32Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedInt32Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Возвращает срез [PackedInt32Array] от [param begin] (включительно) до [param "
"end] (исключительно) как новый [PackedInt32Array].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено размером "
"массива, поэтому значение по умолчанию для [param end] делает его срезом по "
"размеру массива по умолчанию (т. е. [code]arr.slice(1)[/code] является "
"сокращением для [code]arr.slice(1, arr.size())[/code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу массива (т. е. [code]arr.slice(0, -2)[/code] является сокращением для "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a copy of the data converted to a [PackedByteArray], where each "
"element has been encoded as 4 bytes.\n"
"The size of the new array will be [code]int32_array.size() * 4[/code]."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedByteArray], где каждый "
"элемент закодирован как 4 байта.\n"
"Размер нового массива будет [code]int32_array.size() * 4[/code]."

msgid ""
"Returns a new [PackedInt32Array] with contents of [param right] added at the "
"end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Возвращает новый [PackedInt32Array] с содержимым [param right], добавленным в "
"конец этого массива. Для лучшей производительности рассмотрите возможность "
"использования [method append_array] вместо этого."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal ints at the corresponding indices."
msgstr ""
"Возвращает [code]true[/code], если содержимое обоих массивов одинаково, т. е. "
"все они имеют одинаковые целые числа по соответствующим индексам."

msgid ""
"Returns the [int] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error.\n"
"Note that [int] type is 64-bit, unlike the values stored in the array."
msgstr ""
"Возвращает [int] по индексу [param index]. Отрицательные индексы можно "
"использовать для доступа к элементам, начиная с конца. Использование индекса "
"за пределами массива приведет к ошибке.\n"
"Обратите внимание, что тип [int] является 64-битным, в отличие от значений, "
"хранящихся в массиве."

msgid "A packed array of 64-bit integers."
msgstr "Упакованный массив 64-битных целых чисел."

msgid ""
"An array specifically designed to hold 64-bit integer values. Packs data "
"tightly, so it saves memory for large array sizes.\n"
"[b]Note:[/b] This type stores signed 64-bit integers, which means it can take "
"values in the interval [code][-2^63, 2^63 - 1][/code], i.e. [code]"
"[-9223372036854775808, 9223372036854775807][/code]. Exceeding those bounds "
"will wrap around. If you only need to pack 32-bit integers tightly, see "
"[PackedInt32Array] for a more memory-friendly alternative.\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedInt64Array] versus [code]Array[int]"
"[/code]). Also, packed arrays consume less memory. As a downside, packed "
"arrays are less flexible as they don't offer as many convenience methods such "
"as [method Array.map]. Typed arrays are in turn faster to iterate on and "
"modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Массив, специально разработанный для хранения 64-битных целых чисел. Плотно "
"упаковывает данные, поэтому экономит память для больших размеров массива.\n"
"[b]Примечание:[/b] Этот тип хранит 64-битные целые числа со знаком, что "
"означает, что он может принимать значения в интервале [code][-2^63, 2^63 - 1]"
"[/code], т. е. [code][-9223372036854775808, 9223372036854775807][/code]. "
"Превышение этих границ приведет к циклическому переносу. Если вам нужно "
"плотно упаковать только 32-битные целые числа, см. [PackedInt32Array] для "
"более удобной для памяти альтернативы.\n"
"[b]Различия между упакованными массивами, типизированными массивами и "
"нетипизированными массивами:[/b] Упакованные массивы обычно быстрее "
"итерируются и изменяются по сравнению с типизированным массивом того же типа "
"(например, [PackedInt64Array] по сравнению с [code]Array[int][/code]). Кроме "
"того, упакованные массивы потребляют меньше памяти. С другой стороны, "
"упакованные массивы менее гибкие, поскольку они не предлагают столько удобных "
"методов, как [method Array.map]. Типизированные массивы, в свою очередь, "
"быстрее итерируются и изменяются, чем нетипизированные массивы.\n"
"[b]Примечание:[/b] Упакованные массивы всегда передаются по ссылке. Чтобы "
"получить копию массива, которую можно изменить независимо от исходного "
"массива, используйте [method duplicate]. Это [i]не[/i] касается встроенных "
"свойств и методов. В этих случаях возвращаемый упакованный массив является "
"копией, и ее изменение [i]не[/i] повлияет на исходное значение. Чтобы "
"обновить встроенное свойство этого типа, измените возвращаемый массив, а "
"затем снова присвойте его свойству."

msgid "Constructs an empty [PackedInt64Array]."
msgstr "Создает пустой [PackedInt64Array]."

msgid ""
"Constructs a [PackedInt64Array] as a copy of the given [PackedInt64Array]."
msgstr "Создает [PackedInt64Array] как копию заданного [PackedInt64Array]."

msgid ""
"Constructs a new [PackedInt64Array]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Создает новый [PackedInt32Array]. При желании можно передать универсальный "
"[Array], который будет преобразован."

msgid "Appends a [PackedInt64Array] at the end of this array."
msgstr "Добавляет [PackedInt64Array] в конец этого массива."

msgid ""
"Returns the 64-bit integer at the given [param index] in the array. If [param "
"index] out-of-bounds or negative, this method fails and returns [code]0[/"
"code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Возвращает 64-битное целое число по указанному [param index] в массиве. Если "
"[param index] выходит за пределы или отрицателен, этот метод завершается "
"ошибкой и возвращает [code]0[/code]. \n"
"Этот метод похож (но не идентичен) оператору [code][][/code]. В частности, "
"когда этот метод завершается ошибкой, он не приостанавливает выполнение "
"проекта, если запущен из редактора."

msgid ""
"Returns the slice of the [PackedInt64Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedInt64Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Возвращает срез [PackedInt64Array] от [param begin] (включительно) до [param "
"end] (исключительно) как новый [PackedInt64Array].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено размером "
"массива, поэтому значение по умолчанию для [param end] делает его срезом по "
"размеру массива по умолчанию (т. е. [code]arr.slice(1)[/code] является "
"сокращением для [code]arr.slice(1, arr.size())[/code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу массива (т. е. [code]arr.slice(0, -2)[/code] является сокращением для "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a copy of the data converted to a [PackedByteArray], where each "
"element has been encoded as 8 bytes.\n"
"The size of the new array will be [code]int64_array.size() * 8[/code]."
msgstr ""
"Возвращает копию данных, преобразованных в [PackedByteArray], где каждый "
"элемент закодирован как 8 байтов.\n"
"Размер нового массива будет [code]int64_array.size() * 8[/code]."

msgid ""
"Returns a new [PackedInt64Array] with contents of [param right] added at the "
"end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Возвращает новый [PackedInt64Array] с содержимым [param right], добавленным в "
"конец этого массива. Для лучшей производительности рассмотрите возможность "
"использования [method append_array] вместо этого."

msgid ""
"Returns the [int] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Возвращает [int] по индексу [param index]. Отрицательные индексы можно "
"использовать для доступа к элементам, начиная с конца. Использование индекса "
"за пределами массива приведет к ошибке."

msgid "An abstraction of a serialized scene."
msgstr "Абстракция сериализованной сцены."

msgid ""
"A simplified interface to a scene file. Provides access to operations and "
"checks that can be performed on the scene resource itself.\n"
"Can be used to save a node to a file. When saving, the node as well as all "
"the nodes it owns get saved (see [member Node.owner] property).\n"
"[b]Note:[/b] The node doesn't need to own itself.\n"
"[b]Example:[/b] Load a saved scene:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Use load() instead of preload() if the path isn't known at compile-time.\n"
"var scene = preload(\"res://scene.tscn\").instantiate()\n"
"# Add the node as a child of the node the script is attached to.\n"
"add_child(scene)\n"
"[/gdscript]\n"
"[csharp]\n"
"// C# has no preload, so you have to always use "
"ResourceLoader.Load<PackedScene>().\n"
"var scene = ResourceLoader.Load<PackedScene>(\"res://"
"scene.tscn\").Instantiate();\n"
"// Add the node as a child of the node the script is attached to.\n"
"AddChild(scene);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Save a node with different owners. The following example "
"creates 3 objects: [Node2D] ([code]node[/code]), [RigidBody2D] ([code]body[/"
"code]) and [CollisionObject2D] ([code]collision[/code]). [code]collision[/"
"code] is a child of [code]body[/code] which is a child of [code]node[/code]. "
"Only [code]body[/code] is owned by [code]node[/code] and [method pack] will "
"therefore only save those two nodes, but not [code]collision[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Create the objects.\n"
"var node = Node2D.new()\n"
"var body = RigidBody2D.new()\n"
"var collision = CollisionShape2D.new()\n"
"\n"
"# Create the object hierarchy.\n"
"body.add_child(collision)\n"
"node.add_child(body)\n"
"\n"
"# Change owner of `body`, but not of `collision`.\n"
"body.owner = node\n"
"var scene = PackedScene.new()\n"
"\n"
"# Only `node` and `body` are now packed.\n"
"var result = scene.pack(node)\n"
"if result == OK:\n"
"\tvar error = ResourceSaver.save(scene, \"res://path/name.tscn\")  # Or "
"\"user://...\"\n"
"\tif error != OK:\n"
"\t\tpush_error(\"An error occurred while saving the scene to disk.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Create the objects.\n"
"var node = new Node2D();\n"
"var body = new RigidBody2D();\n"
"var collision = new CollisionShape2D();\n"
"\n"
"// Create the object hierarchy.\n"
"body.AddChild(collision);\n"
"node.AddChild(body);\n"
"\n"
"// Change owner of `body`, but not of `collision`.\n"
"body.Owner = node;\n"
"var scene = new PackedScene();\n"
"\n"
"// Only `node` and `body` are now packed.\n"
"Error result = scene.Pack(node);\n"
"if (result == Error.Ok)\n"
"{\n"
"\tError error = ResourceSaver.Save(scene, \"res://path/name.tscn\"); // Or "
"\"user://...\"\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"An error occurred while saving the scene to disk.\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Упрощенный интерфейс к файлу сцены. Предоставляет доступ к операциям и "
"проверкам, которые могут быть выполнены над самим ресурсом сцены.\n"
"Может использоваться для сохранения узла в файл. При сохранении узел, а также "
"все узлы, которыми он владеет, сохраняются (см. свойство [member "
"Node.owner]).\n"
"[b]Примечание:[/b] Узел не обязательно должен владеть собой.\n"
"[b]Пример:[/b] Загрузка сохраненной сцены:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Используйте load() вместо preload(), если путь неизвестен во время "
"компиляции.\n"
"var scene = preload(\"res://scene.tscn\").instantiate()\n"
"# Добавьте узел как дочерний узел узла, к которому прикреплен скрипт.\n"
"add_child(scene)\n"
"[/gdscript]\n"
"[csharp]\n"
"// В C# нет предварительной загрузки, поэтому вам всегда придется "
"использовать ResourceLoader.Load<PackedScene>().\n"
"var scene = ResourceLoader.Load<PackedScene>(\"res://"
"scene.tscn\").Instantiate();\n"
"// Добавьте узел как дочерний узел узла, к которому прикреплен скрипт.\n"
"AddChild(scene);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Пример:[/b] Сохраните узел с разными владельцами. Следующий пример создает "
"3 объекта: [Node2D] ([code]node[/code]), [RigidBody2D] ([code]body[/code]) и "
"[CollisionObject2D] ([code]collision[/code]). [code]collision[/code] является "
"дочерним элементом [code]body[/code], который является дочерним элементом "
"[code]node[/code]. Только [code]body[/code] принадлежит [code]node[/code], и "
"[method pack] сохранит только эти два узла, но не [code]collision[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Создайте объекты.\n"
"var node = Node2D.new()\n"
"var body = RigidBody2D.new()\n"
"var collision = CollisionShape2D.new()\n"
"\n"
"# Создайте иерархию объектов.\n"
"body.add_child(collision)\n"
"node.add_child(body)\n"
"\n"
"# Измените владельца `body`, но не `collision`.\n"
"body.owner = node\n"
"var scene = PackedScene.new()\n"
"\n"
"# Теперь упакованы только `node` и `body`.\n"
"var result = scene.pack(node)\n"
"if result == OK:\n"
"\tvar error = ResourceSaver.save(scene, \"res://path/name.tscn\")  # Или "
"\"user://...\"\n"
"\tif error != OK:\n"
"\t\tpush_error(\"Произошла ошибка при сохранении сцены на диск.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"// Создайте объекты.\n"
"var node = new Node2D();\n"
"var body = new RigidBody2D();\n"
"var collision = new CollisionShape2D();\n"
"\n"
"// Создайте иерархию объектов.\n"
"body.AddChild(collision);\n"
"node.AddChild(body);\n"
"\n"
"// Измените владельца `body`, но не `collision`.\n"
"body.Owner = node;\n"
"var scene = new PackedScene();\n"
"\n"
"// Теперь упакованы только `node` и `body`.\n"
"Error result = scene.Pack(node);\n"
"if (result == Error.Ok)\n"
"{\n"
"\tError error = ResourceSaver.Save(scene, \"res://path/name.tscn\"); // Или "
"\"user://...\"\n"
"\tif (error != Error.Ok)\n"
"\t{\n"
"\t\tGD.PushError(\"Произошла ошибка при сохранении сцены на диск.\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns [code]true[/code] if the scene file has nodes."
msgstr "Возвращает [code]true[/code], если файл сцены содержит узлы."

msgid "Returns the [SceneState] representing the scene file contents."
msgstr "Возвращает [SceneState], представляющий содержимое файла сцены."

msgid ""
"Instantiates the scene's node hierarchy. Triggers child scene "
"instantiation(s). Triggers a [constant Node.NOTIFICATION_SCENE_INSTANTIATED] "
"notification on the root node."
msgstr ""
"Создает экземпляр иерархии узлов сцены. Запускает создание дочерних "
"экземпляров сцен. Запускает уведомление [constant "
"Node.NOTIFICATION_SCENE_INSTANTIATED] на корневом узле."

msgid ""
"Packs the [param path] node, and all owned sub-nodes, into this "
"[PackedScene]. Any existing data will be cleared. See [member Node.owner]."
msgstr ""
"Упаковывает узел [param path] и все принадлежащие ему подузлы в этот "
"[PackedScene]. Все существующие данные будут очищены. См. [member Node.owner]."

msgid "If passed to [method instantiate], blocks edits to the scene state."
msgstr ""
"При передаче в [method instantiate] блокирует редактирование состояния сцены."

msgid ""
"If passed to [method instantiate], provides local scene resources to the "
"local scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"Если передано в [method instanceiate], предоставляет локальные ресурсы сцены "
"локальной сцене.\n"
"[b]Примечание:[/b] Доступно только в сборках редактора."

msgid ""
"If passed to [method instantiate], provides local scene resources to the "
"local scene. Only the main scene should receive the main edit state.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"Если передано в [method instanceiate], предоставляет локальные ресурсы сцены "
"локальной сцене. Только основная сцена должна получать основное состояние "
"редактирования.\n"
"[b]Примечание:[/b] Доступно только в сборках редактора."

msgid ""
"It's similar to [constant GEN_EDIT_STATE_MAIN], but for the case where the "
"scene is being instantiated to be the base of another one.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"Это похоже на [constant GEN_EDIT_STATE_MAIN], но для случая, когда сцена "
"создается как основа для другой.\n"
"[b]Примечание:[/b] Доступно только в сборках редактора."

msgid "A packed array of [String]s."
msgstr "Упакованный массив [String]."

msgid ""
"An array specifically designed to hold [String]s. Packs data tightly, so it "
"saves memory for large array sizes.\n"
"If you want to join the strings in the array, use [method String.join].\n"
"[codeblock]\n"
"var string_array = PackedStringArray([\"hello\", \"world\"])\n"
"var string = \" \".join(string_array)\n"
"print(string) # \"hello world\"\n"
"[/codeblock]\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedStringArray] versus "
"[code]Array[String][/code]). Also, packed arrays consume less memory. As a "
"downside, packed arrays are less flexible as they don't offer as many "
"convenience methods such as [method Array.map]. Typed arrays are in turn "
"faster to iterate on and modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Массив, специально разработанный для хранения [String]. Плотно упаковывает "
"данные, поэтому экономит память для больших размеров массива.\n"
"Если вы хотите объединить строки в массиве, используйте [method "
"String.join].\n"
"[codeblock]\n"
"var string_array = PackedStringArray([\"hello\", \"world\"])\n"
"var string = \" \".join(string_array)\n"
"print(string) # \"hello world\"\n"
"[/codeblock]\n"
"[b]Различия между упакованными массивами, типизированными массивами и "
"нетипизированными массивами:[/b] Упакованные массивы, как правило, быстрее "
"итерируются и изменяются по сравнению с типизированным массивом того же типа "
"(например, [PackedStringArray] по сравнению с [code]Array[String][/code]). "
"Кроме того, упакованные массивы потребляют меньше памяти. Недостатком "
"упакованных массивов является то, что они менее гибкие, поскольку не "
"предлагают столько удобных методов, как [method Array.map]. Типизированные "
"массивы, в свою очередь, быстрее перебирать и изменять, чем нетипизированные "
"массивы.\n"
"[b]Примечание:[/b] Упакованные массивы всегда передаются по ссылке. Чтобы "
"получить копию массива, которую можно изменить независимо от исходного "
"массива, используйте [method duplicate]. Это [i]не[/i] касается встроенных "
"свойств и методов. В этих случаях возвращаемый упакованный массив является "
"копией, и его изменение [i]не[/i] повлияет на исходное значение. Чтобы "
"обновить встроенное свойство этого типа, измените возвращаемый массив, а "
"затем снова назначьте его свойству."

msgid "Constructs an empty [PackedStringArray]."
msgstr "Создает пустой [PackedStringArray]."

msgid ""
"Constructs a [PackedStringArray] as a copy of the given [PackedStringArray]."
msgstr "Создает [PackedStringArray] как копию заданного [PackedStringArray]."

msgid ""
"Constructs a new [PackedStringArray]. Optionally, you can pass in a generic "
"[Array] that will be converted."
msgstr ""
"Создает новый [PackedStringArray]. При желании можно передать универсальный "
"[Array], который будет преобразован."

msgid "Appends a [PackedStringArray] at the end of this array."
msgstr "Добавляет [PackedStringArray] в конец этого массива."

msgid ""
"Returns the [String] at the given [param index] in the array. Returns an "
"empty string and prints an error if the access is out of bounds. Negative "
"indices are not supported; they will always consider the value to be out of "
"bounds and return an empty string.\n"
"This is similar to using the [code][][/code] operator ([code]array[index][/"
"code]), except that operator supports negative indices and causes a debugger "
"break if out-of-bounds access is performed."
msgstr ""
"Возвращает [String] по указанному [param index] в массиве. Возвращает пустую "
"строку и выводит ошибку, если доступ выходит за пределы. Отрицательные "
"индексы не поддерживаются; они всегда будут считать значение выходящим за "
"пределы и возвращать пустую строку. \n"
"Это похоже на использование оператора [code][][/code] ([code]array[index][/"
"code]), за исключением того, что оператор поддерживает отрицательные индексы "
"и вызывает остановку отладчика, если выполняется доступ за пределы."

msgid "Appends a string element at end of the array."
msgstr "Добавляет строковый элемент в конец массива."

msgid "Changes the [String] at the given index."
msgstr "Изменяет [String] по указанному индексу."

msgid ""
"Returns the slice of the [PackedStringArray], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedStringArray].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Возвращает срез [PackedStringArray] от [param begin] (включительно) до [param "
"end] (исключительно) как новый [PackedStringArray].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено размером "
"массива, поэтому значение по умолчанию для [param end] делает его срезом по "
"размеру массива по умолчанию (т. е. [code]arr.slice(1)[/code] является "
"сокращением для [code]arr.slice(1, arr.size())[/code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу массива (т. е. [code]arr.slice(0, -2)[/code] является сокращением для "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a [PackedByteArray] with each string encoded as UTF-8. Strings are "
"[code]null[/code] terminated."
msgstr ""
"Возвращает [PackedByteArray] с каждой строкой, закодированной как UTF-8. "
"Строки заканчиваются [code]null[/code]."

msgid ""
"Returns a new [PackedStringArray] with contents of [param right] added at the "
"end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Возвращает новый [PackedStringArray] с содержимым [param right], добавленным "
"в конец этого массива. Для лучшей производительности рассмотрите возможность "
"использования [method append_array] вместо этого."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal [String]s at the corresponding indices."
msgstr ""
"Возвращает [code]true[/code], если содержимое обоих массивов одинаково, т.е. "
"они имеют все одинаковые [String] в соответствующих индексах."

msgid ""
"Returns the [String] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Возвращает [String] по индексу [param index]. Отрицательные индексы можно "
"использовать для доступа к элементам, начиная с конца. Использование индекса "
"за пределами массива приведет к ошибке."

msgid "A packed array of [Vector2]s."
msgstr "Упакованный массив [Vector2]."

msgid ""
"An array specifically designed to hold [Vector2]. Packs data tightly, so it "
"saves memory for large array sizes.\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedVector2Array] versus "
"[code]Array[Vector2][/code]). Also, packed arrays consume less memory. As a "
"downside, packed arrays are less flexible as they don't offer as many "
"convenience methods such as [method Array.map]. Typed arrays are in turn "
"faster to iterate on and modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Массив, специально разработанный для хранения [Vector2]. Плотно упаковывает "
"данные, поэтому экономит память для больших размеров массива.\n"
"[b]Различия между упакованными массивами, типизированными массивами и "
"нетипизированными массивами:[/b] Упакованные массивы, как правило, быстрее "
"итерируются и изменяются по сравнению с типизированным массивом того же типа "
"(например, [PackedVector2Array] по сравнению с [code]Array[Vector2][/code]). "
"Кроме того, упакованные массивы потребляют меньше памяти. С другой стороны, "
"упакованные массивы менее гибкие, поскольку они не предлагают столько удобных "
"методов, как [method Array.map]. Типизированные массивы, в свою очередь, "
"быстрее итерируются и изменяются, чем нетипизированные массивы.\n"
"[b]Примечание:[/b] Упакованные массивы всегда передаются по ссылке. Чтобы "
"получить копию массива, которую можно изменять независимо от исходного "
"массива, используйте [method duplicate]. Это [i]не[/i] касается встроенных "
"свойств и методов. В этих случаях возвращаемый упакованный массив является "
"копией, и его изменение [i]не[/i] повлияет на исходное значение. Чтобы "
"обновить встроенное свойство этого типа, измените возвращаемый массив, а "
"затем снова присвойте его свойству."

msgid "Constructs an empty [PackedVector2Array]."
msgstr "Создает пустой [PackedVector2Array]."

msgid ""
"Constructs a [PackedVector2Array] as a copy of the given [PackedVector2Array]."
msgstr "Создает [PackedVector2Array] как копию заданного [PackedVector2Array]."

msgid ""
"Constructs a new [PackedVector2Array]. Optionally, you can pass in a generic "
"[Array] that will be converted.\n"
"[b]Note:[/b] When initializing a [PackedVector2Array] with elements, it must "
"be initialized with an [Array] of [Vector2] values:\n"
"[codeblock]\n"
"var array = PackedVector2Array([Vector2(12, 34), Vector2(56, 78)])\n"
"[/codeblock]"
msgstr ""
"Создает новый [PackedVector2Array]. При желании вы можете передать общий "
"[Array], который будет преобразован.\n"
"[b]Примечание:[/b] При инициализации [PackedVector2Array] элементами он "
"должен быть инициализирован [Array] значений [Vector2]:\n"
"[codeblock]\n"
"var array = PackedVector2Array([Vector2(12, 34), Vector2(56, 78)])\n"
"[/codeblock]"

msgid "Appends a [PackedVector2Array] at the end of this array."
msgstr "Добавляет [PackedVector2Array] в конец этого массива."

msgid ""
"Finds the index of an existing value (or the insertion index that maintains "
"sorting order, if the value is not yet present in the array) using binary "
"search. Optionally, a [param before] specifier can be passed. If [code]false[/"
"code], the returned index comes after all existing entries of the value in "
"the array.\n"
"[b]Note:[/b] Calling [method bsearch] on an unsorted array results in "
"unexpected behavior.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Находит индекс существующего значения (или индекс вставки, который "
"поддерживает порядок сортировки, если значение еще не присутствует в массиве) "
"с помощью бинарного поиска. При желании можно передать спецификатор [param "
"before]. Если [code]false[/code], возвращаемый индекс следует после всех "
"существующих записей значения в массиве.\n"
"[b]Примечание:[/b] Вызов [method bsearch] для несортированного массива "
"приводит к неожиданному поведению.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого метода могут быть "
"неточными, если включены NaN."

msgid ""
"Returns the number of times an element is in the array.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Возвращает количество раз, когда элемент находится в массиве.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого метода могут быть "
"неточными, если включены NaN."

msgid ""
"Removes the first occurrence of a value from the array and returns "
"[code]true[/code]. If the value does not exist in the array, nothing happens "
"and [code]false[/code] is returned. To remove an element by index, use "
"[method remove_at] instead.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Удаляет первое вхождение значения из массива и возвращает [code]true[/code]. "
"Если значение не существует в массиве, ничего не происходит и возвращается "
"[code]false[/code]. Чтобы удалить элемент по индексу, используйте [method "
"remove_at].\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого метода могут быть "
"неточными, если включены NaN."

msgid ""
"Searches the array for a value and returns its index or [code]-1[/code] if "
"not found. Optionally, the initial search index can be passed.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Выполняет поиск значения в массиве и возвращает его индекс или [code]-1[/"
"code], если не найдено. При желании можно передать начальный индекс поиска.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого метода могут быть "
"неточными, если включены NaN."

msgid ""
"Returns the [Vector2] at the given [param index] in the array. If [param "
"index] out-of-bounds or negative, this method fails and returns "
"[code]Vector2(0, 0)[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Возвращает [Vector2] по указанному [param index] в массиве. Если [param "
"index] выходит за границы или отрицателен, этот метод завершается ошибкой и "
"возвращает [code]Vector2(0, 0)[/code].\n"
"Этот метод похож (но не идентичен) оператору [code][][/code]. В частности, "
"когда этот метод завершается ошибкой, он не приостанавливает выполнение "
"проекта, если запущен из редактора."

msgid ""
"Returns [code]true[/code] if the array contains [param value].\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Возвращает [code]true[/code], если массив содержит [param value].\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого метода могут быть "
"неточными, если включены NaN."

msgid "Inserts a [Vector2] at the end."
msgstr "Вставляет [Vector2] в конец."

msgid ""
"Searches the array in reverse order. Optionally, a start search index can be "
"passed. If negative, the start index is considered relative to the end of the "
"array.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Выполняет поиск в массиве в обратном порядке. При желании можно передать "
"начальный индекс поиска. Если он отрицательный, начальный индекс считается "
"относительно конца массива.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого метода могут быть "
"неточными, если включены NaN."

msgid "Changes the [Vector2] at the given index."
msgstr "Изменяет [Vector2] по указанному индексу."

msgid ""
"Returns the slice of the [PackedVector2Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedVector2Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Возвращает срез [PackedVector2Array] от [param begin] (включительно) до "
"[param end] (исключительно) как новый [PackedVector2Array].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено размером "
"массива, поэтому значение по умолчанию для [param end] делает его срезом по "
"размеру массива по умолчанию (т. е. [code]arr.slice(1)[/code] является "
"сокращением для [code]arr.slice(1, arr.size())[/code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу массива (т. е. [code]arr.slice(0, -2)[/code] является сокращением для "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Sorts the elements of the array in ascending order.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this method may not be "
"accurate if NaNs are included."
msgstr ""
"Сортирует элементы массива в порядке возрастания.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого метода могут быть "
"неточными, если включены NaN."

msgid "Returns a [PackedByteArray] with each vector encoded as bytes."
msgstr "Возвращает [PackedByteArray], где каждый вектор закодирован в байтах."

msgid ""
"Returns a new [PackedVector2Array] with all vectors in this array inversely "
"transformed (multiplied) by the given [Transform2D] transformation matrix, "
"under the assumption that the transformation basis is orthonormal (i.e. "
"rotation/reflection is fine, scaling/skew is not).\n"
"[code]array * transform[/code] is equivalent to [code]transform.inverse() * "
"array[/code]. See [method Transform2D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * array[/code] can be used instead. See "
"[method Transform2D.affine_inverse]."
msgstr ""
"Возвращает новый [PackedVector2Array] со всеми векторами в этом массиве, "
"обратно преобразованными (умноженными) на заданную матрицу преобразования "
"[Transform2D], при условии, что базис преобразования ортонормальный (т. е. "
"поворот/отражение в порядке, масштабирование/перекос — нет).\n"
"[code]array * transform[/code] эквивалентно [code]transform.inverse() * "
"array[/code]. См. [method Transform2D.inverse].\n"
"Для преобразования с помощью обратного аффинного преобразования (например, с "
"масштабированием) вместо этого можно использовать "
"[code]transform.affine_inverse() * array[/code]. См. [method "
"Transform2D.affine_inverse]."

msgid ""
"Returns a new [PackedVector2Array] with contents of [param right] added at "
"the end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Возвращает новый [PackedVector2Array] с содержимым [param right], добавленным "
"в конец этого массива. Для лучшей производительности рассмотрите возможность "
"использования [method append_array] вместо этого."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal [Vector2]s at the corresponding indices."
msgstr ""
"Возвращает [code]true[/code], если содержимое обоих массивов одинаково, т.е. "
"они имеют все одинаковые [Vector2] в соответствующих индексах."

msgid ""
"Returns the [Vector2] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Возвращает [Vector2] по индексу [param index]. Отрицательные индексы можно "
"использовать для доступа к элементам, начиная с конца. Использование индекса "
"за пределами массива приведет к ошибке."

msgid "A packed array of [Vector3]s."
msgstr "Упакованный массив [Vector3]."

msgid ""
"An array specifically designed to hold [Vector3]. Packs data tightly, so it "
"saves memory for large array sizes.\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedVector3Array] versus "
"[code]Array[Vector3][/code]). Also, packed arrays consume less memory. As a "
"downside, packed arrays are less flexible as they don't offer as many "
"convenience methods such as [method Array.map]. Typed arrays are in turn "
"faster to iterate on and modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Массив, специально разработанный для хранения [Vector3]. Плотно упаковывает "
"данные, поэтому экономит память для больших размеров массива.\n"
"[b]Различия между упакованными массивами, типизированными массивами и "
"нетипизированными массивами:[/b] Упакованные массивы, как правило, быстрее "
"итерируются и изменяются по сравнению с типизированным массивом того же типа "
"(например, [PackedVector3Array] по сравнению с [code]Array[Vector3][/code]). "
"Кроме того, упакованные массивы потребляют меньше памяти. С другой стороны, "
"упакованные массивы менее гибкие, поскольку они не предлагают столько удобных "
"методов, как [method Array.map]. Типизированные массивы, в свою очередь, "
"быстрее итерируются и изменяются, чем нетипизированные массивы.\n"
"[b]Примечание:[/b] Упакованные массивы всегда передаются по ссылке. Чтобы "
"получить копию массива, которую можно изменять независимо от исходного "
"массива, используйте [method duplicate]. Это [i]не[/i] касается встроенных "
"свойств и методов. В этих случаях возвращаемый упакованный массив является "
"копией, и его изменение [i]не[/i] повлияет на исходное значение. Чтобы "
"обновить встроенное свойство этого типа, измените возвращаемый массив, а "
"затем снова присвойте его свойству."

msgid "Constructs an empty [PackedVector3Array]."
msgstr "Создает пустой [PackedVector3Array]."

msgid ""
"Constructs a [PackedVector3Array] as a copy of the given [PackedVector3Array]."
msgstr "Создает [PackedVector3Array] как копию заданного [PackedVector3Array]."

msgid ""
"Constructs a new [PackedVector3Array]. Optionally, you can pass in a generic "
"[Array] that will be converted.\n"
"[b]Note:[/b] When initializing a [PackedVector3Array] with elements, it must "
"be initialized with an [Array] of [Vector3] values:\n"
"[codeblock]\n"
"var array = PackedVector3Array([Vector3(12, 34, 56), Vector3(78, 90, 12)])\n"
"[/codeblock]"
msgstr ""
"Создает новый [PackedVector3Array]. При желании вы можете передать общий "
"[Array], который будет преобразован.\n"
"[b]Примечание:[/b] При инициализации [PackedVector3Array] элементами он "
"должен быть инициализирован [Array] значений [Vector3]:\n"
"[codeblock]\n"
"var array = PackedVector3Array([Vector3(12, 34, 56), Vector3(78, 90, 12)])\n"
"[/codeblock]"

msgid "Appends a [PackedVector3Array] at the end of this array."
msgstr "Добавляет [PackedVector3Array] в конец этого массива."

msgid ""
"Returns the [Vector3] at the given [param index] in the array. If [param "
"index] out-of-bounds or negative, this method fails and returns "
"[code]Vector3(0, 0, 0)[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Возвращает [Vector3] по указанному [param index] в массиве. Если [param "
"index] выходит за пределы или отрицателен, этот метод завершается ошибкой и "
"возвращает [code]Vector3(0, 0, 0)[/code].\n"
"Этот метод похож (но не идентичен) оператору [code][][/code]. В частности, "
"когда этот метод завершается ошибкой, он не приостанавливает выполнение "
"проекта, если запущен из редактора."

msgid "Inserts a [Vector3] at the end."
msgstr "Вставляет [Vector3] в конец."

msgid "Changes the [Vector3] at the given index."
msgstr "Изменяет [Vector3] по указанному индексу."

msgid ""
"Returns the slice of the [PackedVector3Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedVector3Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Возвращает срез [PackedVector3Array] от [param begin] (включительно) до "
"[param end] (исключительно) как новый [PackedVector3Array].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено размером "
"массива, поэтому значение по умолчанию для [param end] делает его срезом по "
"размеру массива по умолчанию (т. е. [code]arr.slice(1)[/code] является "
"сокращением для [code]arr.slice(1, arr.size())[/code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу массива (т. е. [code]arr.slice(0, -2)[/code] является сокращением для "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a new [PackedVector3Array] with all vectors in this array inversely "
"transformed (multiplied) by the given [Transform3D] transformation matrix, "
"under the assumption that the transformation basis is orthonormal (i.e. "
"rotation/reflection is fine, scaling/skew is not).\n"
"[code]array * transform[/code] is equivalent to [code]transform.inverse() * "
"array[/code]. See [method Transform3D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * array[/code] can be used instead. See "
"[method Transform3D.affine_inverse]."
msgstr ""
"Возвращает новый [PackedVector3Array] со всеми векторами в этом массиве, "
"обратно преобразованными (умноженными) на заданную матрицу преобразования "
"[Transform3D], при условии, что базис преобразования ортонормальный (т. е. "
"поворот/отражение в порядке, масштабирование/перекос — нет).\n"
"[code]array * transform[/code] эквивалентно [code]transform.inverse() * "
"array[/code]. См. [method Transform3D.inverse].\n"
"Для преобразования с помощью обратного аффинного преобразования (например, с "
"масштабированием) вместо этого можно использовать "
"[code]transform.affine_inverse() * array[/code]. См. [method "
"Transform3D.affine_inverse]."

msgid ""
"Returns a new [PackedVector3Array] with contents of [param right] added at "
"the end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Возвращает новый [PackedVector3Array] с содержимым [param right], добавленным "
"в конец этого массива. Для лучшей производительности рассмотрите возможность "
"использования [method append_array] вместо этого."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal [Vector3]s at the corresponding indices."
msgstr ""
"Возвращает [code]true[/code], если содержимое обоих массивов одинаково, т.е. "
"они имеют все одинаковые [Vector3] в соответствующих индексах."

msgid ""
"Returns the [Vector3] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Возвращает [Vector3] по индексу [param index]. Отрицательные индексы можно "
"использовать для доступа к элементам, начиная с конца. Использование индекса "
"за пределами массива приведет к ошибке."

msgid "A packed array of [Vector4]s."
msgstr "Упакованный массив [Vector4]."

msgid ""
"An array specifically designed to hold [Vector4]. Packs data tightly, so it "
"saves memory for large array sizes.\n"
"[b]Differences between packed arrays, typed arrays, and untyped arrays:[/b] "
"Packed arrays are generally faster to iterate on and modify compared to a "
"typed array of the same type (e.g. [PackedVector4Array] versus "
"[code]Array[Vector4][/code]). Also, packed arrays consume less memory. As a "
"downside, packed arrays are less flexible as they don't offer as many "
"convenience methods such as [method Array.map]. Typed arrays are in turn "
"faster to iterate on and modify than untyped arrays.\n"
"[b]Note:[/b] Packed arrays are always passed by reference. To get a copy of "
"an array that can be modified independently of the original array, use "
"[method duplicate]. This is [i]not[/i] the case for built-in properties and "
"methods. In these cases the returned packed array is a copy, and changing it "
"will [i]not[/i] affect the original value. To update a built-in property of "
"this type, modify the returned array and then assign it to the property again."
msgstr ""
"Массив, специально разработанный для хранения [Vector4]. Плотно упаковывает "
"данные, поэтому экономит память для больших размеров массива.\n"
"[b]Различия между упакованными массивами, типизированными массивами и "
"нетипизированными массивами:[/b] Упакованные массивы, как правило, быстрее "
"итерируются и изменяются по сравнению с типизированным массивом того же типа "
"(например, [PackedVector4Array] по сравнению с [code]Array[Vector4][/code]). "
"Кроме того, упакованные массивы потребляют меньше памяти. С другой стороны, "
"упакованные массивы менее гибкие, поскольку они не предлагают столько удобных "
"методов, как [method Array.map]. Типизированные массивы, в свою очередь, "
"быстрее итерируются и изменяются, чем нетипизированные массивы.\n"
"[b]Примечание:[/b] Упакованные массивы всегда передаются по ссылке. Чтобы "
"получить копию массива, которую можно изменять независимо от исходного "
"массива, используйте [method duplicate]. Это [i]не[/i] касается встроенных "
"свойств и методов. В этих случаях возвращаемый упакованный массив является "
"копией, и его изменение [i]не[/i] повлияет на исходное значение. Чтобы "
"обновить встроенное свойство этого типа, измените возвращаемый массив, а "
"затем снова присвойте его свойству."

msgid "Constructs an empty [PackedVector4Array]."
msgstr "Создает пустой [PackedVector4Array]."

msgid ""
"Constructs a [PackedVector4Array] as a copy of the given [PackedVector4Array]."
msgstr "Создает [PackedVector4Array] как копию заданного [PackedVector4Array]."

msgid ""
"Constructs a new [PackedVector4Array]. Optionally, you can pass in a generic "
"[Array] that will be converted.\n"
"[b]Note:[/b] When initializing a [PackedVector4Array] with elements, it must "
"be initialized with an [Array] of [Vector4] values:\n"
"[codeblock]\n"
"var array = PackedVector4Array([Vector4(12, 34, 56, 78), Vector4(90, 12, 34, "
"56)])\n"
"[/codeblock]"
msgstr ""
"Создает новый [PackedVector4Array]. При желании вы можете передать общий "
"[Array], который будет преобразован.\n"
"[b]Примечание:[/b] При инициализации [PackedVector4Array] элементами он "
"должен быть инициализирован [Array] значений [Vector4]:\n"
"[codeblock]\n"
"var array = PackedVector4Array([Vector4(12, 34, 56, 78), Vector4(90, 12, 34, "
"56)])\n"
"[/codeblock]"

msgid "Appends a [PackedVector4Array] at the end of this array."
msgstr "Добавляет [PackedVector4Array] в конец этого массива."

msgid ""
"Returns the [Vector4] at the given [param index] in the array. If [param "
"index] out-of-bounds or negative, this method fails and returns "
"[code]Vector4(0, 0, 0, 0)[/code].\n"
"This method is similar (but not identical) to the [code][][/code] operator. "
"Most notably, when this method fails, it doesn't pause project execution if "
"run from the editor."
msgstr ""
"Возвращает [Vector4] по указанному [param index] в массиве. Если [param "
"index] выходит за пределы или отрицателен, этот метод завершается ошибкой и "
"возвращает [code]Vector4(0, 0, 0, 0)[/code].\n"
"Этот метод похож (но не идентичен) оператору [code][][/code]. В частности, "
"когда этот метод завершается ошибкой, он не приостанавливает выполнение "
"проекта, если запущен из редактора."

msgid "Inserts a [Vector4] at the end."
msgstr "Вставляет [Vector4] в конец."

msgid "Changes the [Vector4] at the given index."
msgstr "Изменяет [Vector4] по указанному индексу."

msgid ""
"Returns the slice of the [PackedVector4Array], from [param begin] (inclusive) "
"to [param end] (exclusive), as a new [PackedVector4Array].\n"
"The absolute value of [param begin] and [param end] will be clamped to the "
"array size, so the default value for [param end] makes it slice to the size "
"of the array by default (i.e. [code]arr.slice(1)[/code] is a shorthand for "
"[code]arr.slice(1, arr.size())[/code]).\n"
"If either [param begin] or [param end] are negative, they will be relative to "
"the end of the array (i.e. [code]arr.slice(0, -2)[/code] is a shorthand for "
"[code]arr.slice(0, arr.size() - 2)[/code])."
msgstr ""
"Возвращает срез [PackedVector4Array] от [param begin] (включительно) до "
"[param end] (исключительно) как новый [PackedVector4Array].\n"
"Абсолютное значение [param begin] и [param end] будет ограничено размером "
"массива, поэтому значение по умолчанию для [param end] делает его срезом по "
"размеру массива по умолчанию (т. е. [code]arr.slice(1)[/code] является "
"сокращением для [code]arr.slice(1, arr.size())[/code]).\n"
"Если [param begin] или [param end] отрицательны, они будут относительными к "
"концу массива (т. е. [code]arr.slice(0, -2)[/code] является сокращением для "
"[code]arr.slice(0, arr.size() - 2)[/code])."

msgid ""
"Returns a new [PackedVector4Array] with contents of [param right] added at "
"the end of this array. For better performance, consider using [method "
"append_array] instead."
msgstr ""
"Возвращает новый [PackedVector4Array] с содержимым [param right], добавленным "
"в конец этого массива. Для лучшей производительности рассмотрите возможность "
"использования [method append_array] вместо этого."

msgid ""
"Returns [code]true[/code] if contents of both arrays are the same, i.e. they "
"have all equal [Vector4]s at the corresponding indices."
msgstr ""
"Возвращает [code]true[/code], если содержимое обоих массивов одинаково, т.е. "
"они имеют все одинаковые [Vector4] в соответствующих индексах."

msgid ""
"Returns the [Vector4] at index [param index]. Negative indices can be used to "
"access the elements starting from the end. Using index out of array's bounds "
"will result in an error."
msgstr ""
"Возвращает [Vector4] по индексу [param index]. Отрицательные индексы можно "
"использовать для доступа к элементам, начиная с конца. Использование индекса "
"за пределами массива приведет к ошибке."

msgid "Abstraction and base class for packet-based protocols."
msgstr "Абстракция и базовый класс для пакетных протоколов."

msgid ""
"PacketPeer is an abstraction and base class for packet-based protocols (such "
"as UDP). It provides an API for sending and receiving packets both as raw "
"data or variables. This makes it easy to transfer data over a protocol, "
"without having to encode data as low-level bytes or having to worry about "
"network ordering.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"PacketPeer — это абстракция и базовый класс для пакетных протоколов "
"(например, UDP). Он предоставляет API для отправки и получения пакетов как в "
"виде необработанных данных, так и в виде переменных. Это упрощает передачу "
"данных по протоколу, без необходимости кодировать данные как низкоуровневые "
"байты или беспокоиться о порядке сети.\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid "Returns the number of packets currently available in the ring-buffer."
msgstr ""
"Возвращает количество пакетов, доступных в данный момент в кольцевом буфере."

msgid "Gets a raw packet."
msgstr "Получает необработанный пакет."

msgid ""
"Returns the error state of the last packet received (via [method get_packet] "
"and [method get_var])."
msgstr ""
"Возвращает состояние ошибки последнего полученного пакета (через [method "
"get_packet] и [method get_var])."

msgid ""
"Gets a Variant. If [param allow_objects] is [code]true[/code], decoding "
"objects is allowed.\n"
"Internally, this uses the same decoding mechanism as the [method "
"@GlobalScope.bytes_to_var] method.\n"
"[b]Warning:[/b] Deserialized objects can contain code which gets executed. Do "
"not use this option if the serialized object comes from untrusted sources to "
"avoid potential security threats such as remote code execution."
msgstr ""
"Получает Variant. Если [param allow_objects] равен [code]true[/code], "
"декодирование объектов разрешено.\n"
"Внутренне это использует тот же механизм декодирования, что и метод [method "
"@GlobalScope.bytes_to_var].\n"
"[b]Предупреждение:[/b] Десериализованные объекты могут содержать код, который "
"выполняется. Не используйте эту опцию, если сериализованный объект поступает "
"из ненадежных источников, чтобы избежать потенциальных угроз безопасности, "
"таких как удаленное выполнение кода."

msgid "Sends a raw packet."
msgstr "Отправляет необработанный пакет."

msgid ""
"Sends a [Variant] as a packet. If [param full_objects] is [code]true[/code], "
"encoding objects is allowed (and can potentially include code).\n"
"Internally, this uses the same encoding mechanism as the [method "
"@GlobalScope.var_to_bytes] method."
msgstr ""
"Отправляет [Variant] как пакет. Если [param full_objects] равен [code]true[/"
"code], кодирование объектов разрешено (и потенциально может включать код).\n"
"Внутри это использует тот же механизм кодирования, что и метод [method "
"@GlobalScope.var_to_bytes]."

msgid ""
"Maximum buffer size allowed when encoding [Variant]s. Raise this value to "
"support heavier memory allocations.\n"
"The [method put_var] method allocates memory on the stack, and the buffer "
"used will grow automatically to the closest power of two to match the size of "
"the [Variant]. If the [Variant] is bigger than [member "
"encode_buffer_max_size], the method will error out with [constant "
"ERR_OUT_OF_MEMORY]."
msgstr ""
"Максимальный размер буфера, разрешенный при кодировании [Variant]. Увеличьте "
"это значение для поддержки более интенсивного выделения памяти.\n"
"Метод [method put_var] выделяет память в стеке, и используемый буфер будет "
"автоматически увеличиваться до ближайшей степени двойки, чтобы "
"соответствовать размеру [Variant]. Если [Variant] больше, чем [member "
"encode_buffer_max_size], метод выдаст ошибку с [constant ERR_OUT_OF_MEMORY]."

msgid "DTLS packet peer."
msgstr "Пакетный пир DTLS."

msgid ""
"This class represents a DTLS peer connection. It can be used to connect to a "
"DTLS server, and is returned by [method DTLSServer.take_connection].\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android.\n"
"[b]Warning:[/b] TLS certificate revocation and certificate pinning are "
"currently not supported. Revoked certificates are accepted as long as they "
"are otherwise valid. If this is a concern, you may want to use automatically "
"managed certificates with a short validity period."
msgstr ""
"Этот класс представляет одноранговое соединение DTLS. Его можно использовать "
"для подключения к серверу DTLS, и он возвращается [method "
"DTLSServer.take_connection].\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android.\n"
"[b]Предупреждение:[/b] Отзыв сертификата TLS и закрепление сертификата в "
"настоящее время не поддерживаются. Отозванные сертификаты принимаются, если "
"они в остальном действительны. Если это вызывает беспокойство, вы можете "
"использовать автоматически управляемые сертификаты с коротким сроком действия."

msgid ""
"Connects a [param packet_peer] beginning the DTLS handshake using the "
"underlying [PacketPeerUDP] which must be connected (see [method "
"PacketPeerUDP.connect_to_host]). You can optionally specify the [param "
"client_options] to be used while verifying the TLS connections. See [method "
"TLSOptions.client] and [method TLSOptions.client_unsafe]."
msgstr ""
"Подключает [param packet_peer], начиная рукопожатие DTLS, используя базовый "
"[PacketPeerUDP], который должен быть подключен (см. [method "
"PacketPeerUDP.connect_to_host]). При желании можно указать [param "
"client_options], которые будут использоваться при проверке соединений TLS. "
"См. [method TLSOptions.client] и [method TLSOptions.client_unsafe]."

msgid "Disconnects this peer, terminating the DTLS session."
msgstr "Отключает данный одноранговый узел, завершая сеанс DTLS."

msgid "Returns the status of the connection."
msgstr "Возвращает статус соединения."

msgid ""
"Poll the connection to check for incoming packets. Call this frequently to "
"update the status and keep the connection working."
msgstr ""
"Опросите соединение для проверки входящих пакетов. Вызывайте его часто, чтобы "
"обновить статус и поддерживать работоспособность соединения."

msgid "A status representing a [PacketPeerDTLS] that is disconnected."
msgstr "Статус, представляющий отключенный [PacketPeerDTLS]."

msgid ""
"A status representing a [PacketPeerDTLS] that is currently performing the "
"handshake with a remote peer."
msgstr ""
"Статус, представляющий [PacketPeerDTLS], который в данный момент выполняет "
"рукопожатие с удаленным партнером."

msgid ""
"A status representing a [PacketPeerDTLS] that is connected to a remote peer."
msgstr ""
"Статус, представляющий [PacketPeerDTLS], который подключен к удаленному "
"одноранговому узлу."

msgid "A status representing a [PacketPeerDTLS] in a generic error state."
msgstr "Статус, представляющий [PacketPeerDTLS] в состоянии общей ошибки."

msgid ""
"An error status that shows a mismatch in the DTLS certificate domain "
"presented by the host and the domain requested for validation."
msgstr ""
"Статус ошибки, указывающий на несоответствие домена сертификата DTLS, "
"представленного хостом, и домена, запрошенного для проверки."

msgid "Wrapper to use a PacketPeer over a StreamPeer."
msgstr "Оболочка для использования PacketPeer поверх StreamPeer."

msgid ""
"PacketStreamPeer provides a wrapper for working using packets over a stream. "
"This allows for using packet based code with StreamPeers. PacketPeerStream "
"implements a custom protocol over the StreamPeer, so the user should not read "
"or write to the wrapped StreamPeer directly.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"PacketStreamPeer предоставляет оболочку для работы с использованием пакетов "
"через поток. Это позволяет использовать пакетный код с StreamPeers. "
"PacketPeerStream реализует пользовательский протокол через StreamPeer, "
"поэтому пользователь не должен напрямую читать или писать в обернутый "
"StreamPeer.\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid "The wrapped [StreamPeer] object."
msgstr "Обернутый объект [StreamPeer]."

msgid "UDP packet peer."
msgstr "Одноранговый UDP-пакет."

msgid ""
"UDP packet peer. Can be used to send and receive raw UDP packets as well as "
"[Variant]s.\n"
"[b]Example:[/b] Send a packet:\n"
"[codeblock]\n"
"var peer = PacketPeerUDP.new()\n"
"\n"
"# Optionally, you can select the local port used to send the packet.\n"
"peer.bind(4444)\n"
"\n"
"peer.set_dest_address(\"1.1.1.1\", 4433)\n"
"peer.put_packet(\"hello\".to_utf8_buffer())\n"
"[/codeblock]\n"
"[b]Example:[/b] Listen for packets:\n"
"[codeblock]\n"
"var peer\n"
"\n"
"func _ready():\n"
"\tpeer = PacketPeerUDP.new()\n"
"\tpeer.bind(4433)\n"
"\n"
"\n"
"func _process(_delta):\n"
"\tif peer.get_available_packet_count() > 0:\n"
"\t\tvar array_bytes = peer.get_packet()\n"
"\t\tvar packet_string = array_bytes.get_string_from_ascii()\n"
"\t\tprint(\"Received message: \", packet_string)\n"
"[/codeblock]\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"UDP-пакетный узел. Может использоваться для отправки и получения "
"необработанных UDP-пакетов, а также [Variant]-ы.\n"
"[b]Пример:[/b] Отправка пакета:\n"
"[codeblock]\n"
"var peer = PacketPeerUDP.new()\n"
"\n"
"# При желании вы можете выбрать локальный порт, используемый для отправки "
"пакета.\n"
"peer.bind(4444)\n"
"\n"
"peer.set_dest_address(\"1.1.1.1\", 4433)\n"
"peer.put_packet(\"hello\".to_utf8_buffer())\n"
"[/codeblock]\n"
"[b]Пример:[/b] Прослушивание пакетов:\n"
"[codeblock]\n"
"var peer\n"
"\n"
"func _ready():\n"
"\tpeer = PacketPeerUDP.new()\n"
"\tpeer.bind(4433)\n"
"\n"
"\n"
"func _process(_delta):\n"
"\tif peer.get_available_packet_count() > 0:\n"
"\t\tvar array_bytes = peer.get_packet()\n"
"\t\tvar packet_string = array_bytes.get_string_from_ascii()\n"
"\t\tprint(\"Received message: \", packet_string)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] При экспорте в Android убедитесь, что в настройках "
"экспорта Android включено разрешение [code]INTERNET[/code] перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid ""
"Binds this [PacketPeerUDP] to the specified [param port] and [param "
"bind_address] with a buffer size [param recv_buf_size], allowing it to "
"receive incoming packets.\n"
"If [param bind_address] is set to [code]\"*\"[/code] (default), the peer will "
"be bound on all available addresses (both IPv4 and IPv6).\n"
"If [param bind_address] is set to [code]\"0.0.0.0\"[/code] (for IPv4) or "
"[code]\"::\"[/code] (for IPv6), the peer will be bound to all available "
"addresses matching that IP type.\n"
"If [param bind_address] is set to any valid address (e.g. [code]"
"\"192.168.1.101\"[/code], [code]\"::1\"[/code], etc.), the peer will only be "
"bound to the interface with that address (or fail if no interface with the "
"given address exists)."
msgstr ""
"Связывает этот [PacketPeerUDP] с указанным [param port] и [param "
"bind_address] с размером буфера [param recv_buf_size], что позволяет ему "
"принимать входящие пакеты.\n"
"Если [param bind_address] установлен на [code]\"*\"[/code] (по умолчанию), "
"одноранговый узел будет привязан ко всем доступным адресам (как IPv4, так и "
"IPv6).\n"
"Если [param bind_address] установлен на [code]\"0.0.0.0\"[/code] (для IPv4) "
"или [code]\"::\"[/code] (для IPv6), одноранговый узел будет привязан ко всем "
"доступным адресам, соответствующим этому типу IP.\n"
"Если [param bind_address] установлен на любой допустимый адрес (например, "
"[code]\"192.168.1.101\"[/code], [code]\"::1\"[/code] и т. д.), одноранговый "
"узел будет привязан только к интерфейсу с этим адресом (или потерпит неудачу, "
"если интерфейс с указанным адресом не существует)."

msgid "Closes the [PacketPeerUDP]'s underlying UDP socket."
msgstr "Закрывает базовый UDP-сокет [PacketPeerUDP]."

msgid ""
"Calling this method connects this UDP peer to the given [param host]/[param "
"port] pair. UDP is in reality connectionless, so this option only means that "
"incoming packets from different addresses are automatically discarded, and "
"that outgoing packets are always sent to the connected address (future calls "
"to [method set_dest_address] are not allowed). This method does not send any "
"data to the remote peer, to do that, use [method PacketPeer.put_var] or "
"[method PacketPeer.put_packet] as usual. See also [UDPServer].\n"
"[b]Note:[/b] Connecting to the remote peer does not help to protect from "
"malicious attacks like IP spoofing, etc. Think about using an encryption "
"technique like TLS or DTLS if you feel like your application is transferring "
"sensitive information."
msgstr ""
"Вызов этого метода подключает этот одноранговый узел UDP к заданной паре "
"[param host]/[param port]. UDP на самом деле не требует установления "
"соединения, поэтому эта опция означает только то, что входящие пакеты с "
"разных адресов автоматически отбрасываются, а исходящие пакеты всегда "
"отправляются на подключенный адрес (будущие вызовы [method set_dest_address] "
"не разрешены). Этот метод не отправляет никаких данных удаленному "
"одноранговому узлу, для этого используйте [method PacketPeer.put_var] или "
"[method PacketPeer.put_packet], как обычно. См. также [UDPServer].\n"
"[b]Примечание:[/b] Подключение к удаленному одноранговому узлу не помогает "
"защититься от вредоносных атак, таких как подмена IP-адреса и т. д. Подумайте "
"об использовании метода шифрования, такого как TLS или DTLS, если вы "
"чувствуете, что ваше приложение передает конфиденциальную информацию."

msgid ""
"Returns the IP of the remote peer that sent the last packet(that was received "
"with [method PacketPeer.get_packet] or [method PacketPeer.get_var])."
msgstr ""
"Возвращает IP-адрес удаленного узла, отправившего последний пакет (который "
"был получен с помощью [method PacketPeer.get_packet] или [method "
"PacketPeer.get_var])."

msgid ""
"Returns the port of the remote peer that sent the last packet(that was "
"received with [method PacketPeer.get_packet] or [method PacketPeer.get_var])."
msgstr ""
"Возвращает порт удаленного узла, отправившего последний пакет (который был "
"получен с помощью [method PacketPeer.get_packet] или [method "
"PacketPeer.get_var])."

msgid ""
"Returns whether this [PacketPeerUDP] is bound to an address and can receive "
"packets."
msgstr ""
"Возвращает, привязан ли этот [PacketPeerUDP] к адресу и может ли он принимать "
"пакеты."

msgid ""
"Returns [code]true[/code] if the UDP socket is open and has been connected to "
"a remote address. See [method connect_to_host]."
msgstr ""
"Возвращает [code]true[/code], если сокет UDP открыт и подключен к удаленному "
"адресу. См. [method connect_to_host]."

msgid ""
"Joins the multicast group specified by [param multicast_address] using the "
"interface identified by [param interface_name].\n"
"You can join the same multicast group with multiple interfaces. Use [method "
"IP.get_local_interfaces] to know which are available.\n"
"[b]Note:[/b] Some Android devices might require the "
"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission for multicast to work."
msgstr ""
"Присоединяется к группе многоадресной рассылки, указанной [param "
"multicast_address], используя интерфейс, идентифицированный [param "
"interface_name].\n"
"Вы можете присоединиться к той же группе многоадресной рассылки с несколькими "
"интерфейсами. Используйте [method IP.get_local_interfaces], чтобы узнать, "
"какие из них доступны.\n"
"[b]Примечание:[/b] Для работы многоадресной рассылки некоторым устройствам "
"Android может потребоваться разрешение [code]CHANGE_WIFI_MULTICAST_STATE[/"
"code]."

msgid ""
"Removes the interface identified by [param interface_name] from the multicast "
"group specified by [param multicast_address]."
msgstr ""
"Удаляет интерфейс, идентифицированный [param interface_name], из группы "
"многоадресной рассылки, указанной [param multicast_address]."

msgid ""
"Enable or disable sending of broadcast packets (e.g. "
"[code]set_dest_address(\"255.255.255.255\", 4343)[/code]. This option is "
"disabled by default.\n"
"[b]Note:[/b] Some Android devices might require the "
"[code]CHANGE_WIFI_MULTICAST_STATE[/code] permission and this option to be "
"enabled to receive broadcast packets too."
msgstr ""
"Включите или отключите отправку широковещательных пакетов (например, "
"[code]set_dest_address(\"255.255.255.255\", 4343)[/code]. Эта опция отключена "
"по умолчанию.\n"
"[b]Примечание:[/b] Для некоторых устройств Android может потребоваться "
"разрешение [code]CHANGE_WIFI_MULTICAST_STATE[/code] и включение этой опции "
"для приема широковещательных пакетов."

msgid ""
"Sets the destination address and port for sending packets and variables. A "
"hostname will be resolved using DNS if needed.\n"
"[b]Note:[/b] [method set_broadcast_enabled] must be enabled before sending "
"packets to a broadcast address (e.g. [code]255.255.255.255[/code])."
msgstr ""
"Устанавливает адрес назначения и порт для отправки пакетов и переменных. Имя "
"хоста будет разрешено с помощью DNS, если необходимо.\n"
"[b]Примечание:[/b] [method set_broadcast_enabled] должен быть включен перед "
"отправкой пакетов на широковещательный адрес (например, "
"[code]255.255.255.255[/code])."

msgid ""
"Waits for a packet to arrive on the bound address. See [method bind].\n"
"[b]Note:[/b] [method wait] can't be interrupted once it has been called. This "
"can be worked around by allowing the other party to send a specific \"death "
"pill\" packet like this:\n"
"[codeblocks]\n"
"[gdscript]\n"
"socket = PacketPeerUDP.new()\n"
"# Server\n"
"socket.set_dest_address(\"127.0.0.1\", 789)\n"
"socket.put_packet(\"Time to stop\".to_ascii_buffer())\n"
"\n"
"# Client\n"
"while socket.wait() == OK:\n"
"\tvar data = socket.get_packet().get_string_from_ascii()\n"
"\tif data == \"Time to stop\":\n"
"\t\treturn\n"
"[/gdscript]\n"
"[csharp]\n"
"var socket = new PacketPeerUdp();\n"
"// Server\n"
"socket.SetDestAddress(\"127.0.0.1\", 789);\n"
"socket.PutPacket(\"Time to stop\".ToAsciiBuffer());\n"
"\n"
"// Client\n"
"while (socket.Wait() == OK)\n"
"{\n"
"\tstring data = socket.GetPacket().GetStringFromASCII();\n"
"\tif (data == \"Time to stop\")\n"
"\t{\n"
"\t\treturn;\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Ожидает прибытия пакета на привязанный адрес. См. [method bind].\n"
"[b]Примечание:[/b] [method wait] не может быть прерван после вызова. Это "
"можно обойти, разрешив другой стороне отправить определенный пакет «пилюли "
"смерти», например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"socket = PacketPeerUDP.new()\n"
"# Server\n"
"socket.set_dest_address(\"127.0.0.1\", 789)\n"
"socket.put_packet(\"Time to stop\".to_ascii_buffer())\n"
"\n"
"# Client\n"
"while socket.wait() == OK:\n"
"\tvar data = socket.get_packet().get_string_from_ascii()\n"
"\tif data == \"Time to stop\":\n"
"\t\treturn\n"
"[/gdscript]\n"
"[csharp]\n"
"var socket = new PacketPeerUdp();\n"
"// Server\n"
"socket.SetDestAddress(\"127.0.0.1\", 789);\n"
"socket.PutPacket(\"Time to stop\".ToAsciiBuffer());\n"
"\n"
"// Client\n"
"while (socket.Wait() == OK)\n"
"{\n"
"\tstring data = socket.GetPacket().GetStringFromASCII();\n"
"\tif (data == \"Time to stop\")\n"
"\t{\n"
"\t\treturn;\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "A GUI control that displays a [StyleBox]."
msgstr "Элемент GUI , отображающий [StyleBox]."

msgid ""
"[Panel] is a GUI control that displays a [StyleBox]. See also "
"[PanelContainer]."
msgstr ""
"[Panel] — это элемент управления GUI, отображающий [StyleBox]. См. также "
"[PanelContainer]."

msgid "Hierarchical Finite State Machine Demo"
msgstr "Демонстрация иерархического конечного автомата"

msgid "The [StyleBox] of this control."
msgstr "[StyleBox] этого элемента управления."

msgid ""
"A container that keeps its child controls within the area of a [StyleBox]."
msgstr ""
"Контейнер, который хранит свои дочерние элементы управления в области "
"[StyleBox]."

msgid ""
"A container that keeps its child controls within the area of a [StyleBox]. "
"Useful for giving controls an outline."
msgstr ""
"Контейнер, который хранит свои дочерние элементы управления в области "
"[StyleBox]. Полезно для придания элементам управления контура."

msgid "The style of [PanelContainer]'s background."
msgstr "Стиль фона [PanelContainer]."

msgid ""
"A material that provides a special texture to a [Sky], usually an HDR "
"panorama."
msgstr ""
"Материал, который придает [Sky] особую текстуру, обычно это панорама HDR."

msgid ""
"A resource referenced in a [Sky] that is used to draw a background. "
"[PanoramaSkyMaterial] functions similar to skyboxes in other engines, except "
"it uses an equirectangular sky map instead of a [Cubemap].\n"
"Using an HDR panorama is strongly recommended for accurate, high-quality "
"reflections. Godot supports the Radiance HDR ([code].hdr[/code]) and OpenEXR "
"([code].exr[/code]) image formats for this purpose.\n"
"You can use [url=https://danilw.github.io/GLSL-howto/cubemap_to_panorama_js/"
"cubemap_to_panorama.html]this tool[/url] to convert a cubemap to an "
"equirectangular sky map."
msgstr ""
"Ресурс, на который ссылается [Sky], который используется для рисования фона. "
"[PanoramaSkyMaterial] функционирует аналогично скайбоксам в других движках, "
"за исключением того, что он использует равнопрямоугольную карту неба вместо "
"[Cubemap].\n"
"Использование HDR-панорамы настоятельно рекомендуется для точных "
"высококачественных отражений. Godot поддерживает форматы изображений Radiance "
"HDR ([code].hdr[/code]) и OpenEXR ([code].exr[/code]) для этой цели.\n"
"Вы можете использовать [url=https://danilw.github.io/GLSL-howto/"
"cubemap_to_panorama_js/cubemap_to_panorama.html]этот инструмент[/url] для "
"преобразования кубической карты в равнопрямоугольную карту неба."

msgid ""
"The sky's overall brightness multiplier. Higher values result in a brighter "
"sky."
msgstr ""
"Множитель общей яркости неба. Более высокие значения дают более яркое небо."

msgid ""
"A boolean value to determine if the background texture should be filtered or "
"not."
msgstr ""
"Логическое значение, определяющее, следует ли фильтровать текстуру фона."

msgid "[Texture2D] to be applied to the [PanoramaSkyMaterial]."
msgstr "[Texture2D] для применения к [PanoramaSkyMaterial]."

msgid "A node used to create a parallax scrolling background."
msgstr "Узел, используемый для создания параллаксного прокручиваемого фона."

msgid ""
"A [Parallax2D] is used to create a parallax effect. It can move at a "
"different speed relative to the camera movement using [member scroll_scale]. "
"This creates an illusion of depth in a 2D game. If manual scrolling is "
"desired, the [Camera2D] position can be ignored with [member "
"ignore_camera_scroll].\n"
"[b]Note:[/b] Any changes to this node's position made after it enters the "
"scene tree will be overridden if [member ignore_camera_scroll] is "
"[code]false[/code] or [member screen_offset] is modified."
msgstr ""
"[Parallax2D] используется для создания эффекта параллакса. Он может двигаться "
"с разной скоростью относительно движения камеры с помощью [member "
"scroll_scale]. Это создает иллюзию глубины в 2D-игре. Если требуется ручная "
"прокрутка, положение [Camera2D] можно игнорировать с помощью [member "
"ignore_camera_scroll].\n"
"[b]Примечание:[/b] Любые изменения положения этого узла, внесенные после "
"того, как он вошел в дерево сцены, будут переопределены, если [member "
"ignore_camera_scroll] равно [code]false[/code] или [member screen_offset] "
"изменено."

msgid "2D Parallax"
msgstr "2D Параллакс"

msgid ""
"Velocity at which the offset scrolls automatically, in pixels per second."
msgstr ""
"Скорость, с которой смещение прокручивается автоматически, в пикселях в "
"секунду."

msgid ""
"If [code]true[/code], this [Parallax2D] is offset by the current camera's "
"position. If the [Parallax2D] is in a [CanvasLayer] separate from the current "
"camera, it may be desired to match the value with [member "
"CanvasLayer.follow_viewport_enabled]."
msgstr ""
"Если [code]true[/code], этот [Parallax2D] смещен на текущую позицию камеры. "
"Если [Parallax2D] находится в [CanvasLayer] отдельно от текущей камеры, может "
"быть желательно сопоставить значение с [member "
"CanvasLayer.follow_viewport_enabled]."

msgid ""
"If [code]true[/code], [Parallax2D]'s position is not affected by the position "
"of the camera."
msgstr ""
"Если [code]true[/code], положение [Parallax2D] не зависит от положения камеры."

msgid ""
"Top-left limits for scrolling to begin. If the camera is outside of this "
"limit, the [Parallax2D] stops scrolling. Must be lower than [member "
"limit_end] minus the viewport size to work."
msgstr ""
"Верхний левый предел для начала прокрутки. Если камера выходит за пределы "
"этого предела, [Parallax2D] останавливает прокрутку. Должно быть меньше, чем "
"[member limit_end] минус размер области просмотра, чтобы работать."

msgid ""
"Bottom-right limits for scrolling to end. If the camera is outside of this "
"limit, the [Parallax2D] will stop scrolling. Must be higher than [member "
"limit_begin] and the viewport size combined to work."
msgstr ""
"Нижний правый предел для прокрутки до конца. Если камера находится за "
"пределами этого предела, [Parallax2D] остановит прокрутку. Должно быть "
"больше, чем [member limit_begin] и размер области просмотра, объединенные для "
"работы."

msgid ""
"Repeats the [Texture2D] of each of this node's children and offsets them by "
"this value. When scrolling, the node's position loops, giving the illusion of "
"an infinite scrolling background if the values are larger than the screen "
"size. If an axis is set to [code]0[/code], the [Texture2D] will not be "
"repeated."
msgstr ""
"Повторяет [Texture2D] каждого из дочерних узлов этого узла и смещает их на "
"это значение. При прокрутке положение узла зацикливается, создавая иллюзию "
"бесконечного прокручивающегося фона, если значения больше размера экрана. "
"Если ось установлена на [code]0[/code], [Texture2D] не будет повторяться."

msgid ""
"Overrides the amount of times the texture repeats. Each texture copy spreads "
"evenly from the original by [member repeat_size]. Useful for when zooming out "
"with a camera."
msgstr ""
"Переопределяет количество повторений текстуры. Каждая копия текстуры "
"равномерно распространяется от оригинала на [member repeat_size]. Полезно при "
"уменьшении масштаба с помощью камеры."

msgid ""
"Offset used to scroll this [Parallax2D]. This value is updated automatically "
"unless [member ignore_camera_scroll] is [code]true[/code]."
msgstr ""
"Смещение, используемое для прокрутки этого [Parallax2D]. Это значение "
"обновляется автоматически, если только [member ignore_camera_scroll] не равен "
"[code]true[/code]."

msgid ""
"The [Parallax2D]'s offset. Similar to [member screen_offset] and [member "
"Node2D.position], but will not be overridden.\n"
"[b]Note:[/b] Values will loop if [member repeat_size] is set higher than "
"[code]0[/code]."
msgstr ""
"Смещение [Parallax2D]. Аналогично [member screen_offset] и [member "
"Node2D.position], но не будет переопределено.\n"
"[b]Примечание:[/b] Значения будут цикличными, если [member repeat_size] будет "
"установлен выше, чем [code]0[/code]."

msgid ""
"Multiplier to the final [Parallax2D]'s offset. Can be used to simulate "
"distance from the camera.\n"
"For example, a value of [code]1[/code] scrolls at the same speed as the "
"camera. A value greater than [code]1[/code] scrolls faster, making objects "
"appear closer. Less than [code]1[/code] scrolls slower, making objects appear "
"further, and a value of [code]0[/code] stops the objects completely."
msgstr ""
"Множитель для конечного смещения [Parallax2D]. Может использоваться для "
"имитации расстояния от камеры.\n"
"Например, значение [code]1[/code] прокручивает с той же скоростью, что и "
"камера. Значение больше [code]1[/code] прокручивает быстрее, делая объекты "
"ближе. Меньше [code]1[/code] прокручивает медленнее, делая объекты дальше, а "
"значение [code]0[/code] полностью останавливает объекты."

msgid "Use the [Parallax2D] node instead."
msgstr "Вместо этого используйте узел [Parallax2D]."

msgid ""
"A ParallaxBackground uses one or more [ParallaxLayer] child nodes to create a "
"parallax effect. Each [ParallaxLayer] can move at a different speed using "
"[member ParallaxLayer.motion_offset]. This creates an illusion of depth in a "
"2D game. If not used with a [Camera2D], you must manually calculate the "
"[member scroll_offset].\n"
"[b]Note:[/b] Each [ParallaxBackground] is drawn on one specific [Viewport] "
"and cannot be shared between multiple [Viewport]s, see [member "
"CanvasLayer.custom_viewport]. When using multiple [Viewport]s, for example in "
"a split-screen game, you need create an individual [ParallaxBackground] for "
"each [Viewport] you want it to be drawn on."
msgstr ""
"ParallaxBackground использует один или несколько дочерних узлов "
"[ParallaxLayer] для создания эффекта параллакса. Каждый [ParallaxLayer] может "
"двигаться с разной скоростью с помощью [member ParallaxLayer.motion_offset]. "
"Это создает иллюзию глубины в 2D-игре. Если не используется с [Camera2D], "
"необходимо вручную рассчитать [member scroll_offset].\n"
"[b]Примечание:[/b] Каждый [ParallaxBackground] рисуется на одном определенном "
"[Viewport] и не может совместно использоваться несколькими [Viewport], см. "
"[member CanvasLayer.custom_viewport]. При использовании нескольких "
"[Viewport], например, в игре с разделенным экраном, необходимо создать "
"отдельный [ParallaxBackground] для каждого [Viewport], на котором вы хотите "
"его нарисовать."

msgid "The base position offset for all [ParallaxLayer] children."
msgstr "Смещение базовой позиции для всех дочерних элементов [ParallaxLayer]."

msgid "The base motion scale for all [ParallaxLayer] children."
msgstr "Базовый масштаб движения для всех дочерних элементов [ParallaxLayer]."

msgid ""
"If [code]true[/code], elements in [ParallaxLayer] child aren't affected by "
"the zoom level of the camera."
msgstr ""
"Если [code]true[/code], элементы в дочернем элементе [ParallaxLayer] не "
"подвержены влиянию уровня масштабирования камеры."

msgid ""
"Top-left limits for scrolling to begin. If the camera is outside of this "
"limit, the background will stop scrolling. Must be lower than [member "
"scroll_limit_end] to work."
msgstr ""
"Верхний левый предел для начала прокрутки. Если камера находится за пределами "
"этого предела, фон перестанет прокручиваться. Для работы должно быть ниже "
"[member scroll_limit_end]."

msgid ""
"Bottom-right limits for scrolling to end. If the camera is outside of this "
"limit, the background will stop scrolling. Must be higher than [member "
"scroll_limit_begin] to work."
msgstr ""
"Нижний правый предел прокрутки до конца. Если камера находится за пределами "
"этого предела, фон перестанет прокручиваться. Для работы должно быть больше "
"[member scroll_limit_begin]."

msgid ""
"The ParallaxBackground's scroll value. Calculated automatically when using a "
"[Camera2D], but can be used to manually manage scrolling when no camera is "
"present."
msgstr ""
"Значение прокрутки ParallaxBackground. Рассчитывается автоматически при "
"использовании [Camera2D], но может использоваться для ручного управления "
"прокруткой при отсутствии камеры."

msgid "A parallax scrolling layer to be used with [ParallaxBackground]."
msgstr ""
"Слой параллакс-прокрутки, который будет использоваться с [ParallaxBackground]."

msgid ""
"A ParallaxLayer must be the child of a [ParallaxBackground] node. Each "
"ParallaxLayer can be set to move at different speeds relative to the camera "
"movement or the [member ParallaxBackground.scroll_offset] value.\n"
"This node's children will be affected by its scroll offset.\n"
"[b]Note:[/b] Any changes to this node's position and scale made after it "
"enters the scene will be ignored."
msgstr ""
"ParallaxLayer должен быть дочерним элементом узла [ParallaxBackground]. "
"Каждый ParallaxLayer может быть настроен на движение с разной скоростью "
"относительно движения камеры или значения [member "
"ParallaxBackground.scroll_offset].\n"
"На дочерние элементы этого узла будет влиять его смещение прокрутки.\n"
"[b]Примечание:[/b] Любые изменения положения и масштаба этого узла, внесенные "
"после его попадания на сцену, будут игнорироваться."

msgid ""
"The interval, in pixels, at which the [ParallaxLayer] is drawn repeatedly. "
"Useful for creating an infinitely scrolling background. If an axis is set to "
"[code]0[/code], the [ParallaxLayer] will be drawn only once along that "
"direction.\n"
"[b]Note:[/b] If you want the repetition to pixel-perfect match a [Texture2D] "
"displayed by a child node, you should account for any scale applied to the "
"texture when defining this interval. For example, if you use a child "
"[Sprite2D] scaled to [code]0.5[/code] to display a 600x600 texture, and want "
"this sprite to be repeated continuously horizontally, you should set the "
"mirroring to [code]Vector2(300, 0)[/code].\n"
"[b]Note:[/b] If the length of the viewport axis is bigger than twice the "
"repeated axis size, it will not repeat infinitely, as the parallax layer only "
"draws 2 instances of the layer at any given time. The visibility window is "
"calculated from the parent [ParallaxBackground]'s position, not the layer's "
"own position. So, if you use mirroring, [b]do not[/b] change the "
"[ParallaxLayer] position relative to its parent. Instead, if you need to "
"adjust the background's position, set the [member CanvasLayer.offset] "
"property in the parent [ParallaxBackground].\n"
"[b]Note:[/b] Despite the name, the layer will not be mirrored, it will only "
"be repeated."
msgstr ""
"Интервал в пикселях, с которым [ParallaxLayer] отрисовывается повторно. "
"Полезно для создания бесконечно прокручивающегося фона. Если ось установлена "
"на [code]0[/code], [ParallaxLayer] будет отрисован только один раз вдоль "
"этого направления.\n"
"[b]Примечание:[/b] Если вы хотите, чтобы повторение с точностью до пикселя "
"соответствовало [Texture2D], отображаемому дочерним узлом, вы должны "
"учитывать любой масштаб, примененный к текстуре при определении этого "
"интервала. Например, если вы используете дочерний [Sprite2D], "
"масштабированный до [code]0.5[/code], для отображения текстуры 600x600 и "
"хотите, чтобы этот спрайт непрерывно повторялся по горизонтали, вы должны "
"установить зеркалирование на [code]Vector2(300, 0)[/code].\n"
"[b]Примечание:[/b] Если длина оси области просмотра больше, чем в два раза "
"превышает размер повторяющейся оси, она не будет повторяться бесконечно, "
"поскольку слой параллакса рисует только 2 экземпляра слоя в любой момент "
"времени. Окно видимости рассчитывается на основе позиции родительского "
"элемента [ParallaxBackground], а не собственной позиции слоя. Поэтому, если "
"вы используете зеркалирование, [b]не[/b] изменяйте позицию [ParallaxLayer] "
"относительно его родителя. Вместо этого, если вам нужно настроить позицию "
"фона, задайте свойство [member CanvasLayer.offset] в родительском элементе "
"[ParallaxBackground].\n"
"[b]Примечание:[/b] Несмотря на название, слой не будет зеркальным, он будет "
"только повторяться."

msgid ""
"The ParallaxLayer's offset relative to the parent ParallaxBackground's "
"[member ParallaxBackground.scroll_offset]."
msgstr ""
"Смещение ParallaxLayer относительно родительского ParallaxBackground [member "
"ParallaxBackground.scroll_offset]."

msgid ""
"Multiplies the ParallaxLayer's motion. If an axis is set to [code]0[/code], "
"it will not scroll."
msgstr ""
"Умножает движение ParallaxLayer. Если ось установлена на [code]0[/code], она "
"не будет прокручиваться."

msgid ""
"Holds a particle configuration for [GPUParticles2D] or [GPUParticles3D] nodes."
msgstr ""
"Содержит конфигурацию частиц для узлов [GPUParticles2D] или [GPUParticles3D]."

msgid ""
"[ParticleProcessMaterial] defines particle properties and behavior. It is "
"used in the [code]process_material[/code] of the [GPUParticles2D] and "
"[GPUParticles3D] nodes. Some of this material's properties are applied to "
"each particle when emitted, while others can have a [CurveTexture] or a "
"[GradientTexture1D] applied to vary numerical or color values over the "
"lifetime of the particle."
msgstr ""
"[ParticleProcessMaterial] определяет свойства и поведение частиц. Он "
"используется в [code]process_material[/code] узлов [GPUParticles2D] и "
"[GPUParticles3D]. Некоторые из свойств этого материала применяются к каждой "
"частице при испускании, в то время как другие могут иметь [CurveTexture] или "
"[GradientTexture1D], применяемые для изменения числовых или цветовых значений "
"в течение жизненного цикла частицы."

msgid ""
"Returns the minimum and maximum values of the given [param param] as a "
"vector.\n"
"The [code]x[/code] component of the returned vector corresponds to minimum "
"and the [code]y[/code] component corresponds to maximum."
msgstr ""
"Возвращает минимальное и максимальное значения указанного [param param] в "
"виде вектора. \n"
"Компонент [code]x[/code] возвращаемого вектора соответствует минимуму, а "
"компонент [code]y[/code] соответствует максимуму."

msgid "Returns the [Texture2D] used by the specified parameter."
msgstr "Возвращает [Texture2D], используемую указанным параметром."

msgid "Returns [code]true[/code] if the specified particle flag is enabled."
msgstr "Возвращает [code]true[/code], если указанный флаг частицы включен."

msgid ""
"Sets the minimum and maximum values of the given [param param].\n"
"The [code]x[/code] component of the argument vector corresponds to minimum "
"and the [code]y[/code] component corresponds to maximum."
msgstr ""
"Устанавливает минимальное и максимальное значения указанного [param param]. \n"
"Компонент [code]x[/code] вектора аргумента соответствует минимуму, а "
"компонент [code]y[/code] соответствует максимуму."

msgid "Sets the maximum value range for the given parameter."
msgstr "Устанавливает максимальный диапазон значений для данного параметра."

msgid "Sets the minimum value range for the given parameter."
msgstr "Устанавливает минимальный диапазон значений для данного параметра."

msgid "Sets the [Texture2D] for the specified [enum Parameter]."
msgstr "Устанавливает [Texture2D] для указанного [enum Parameter]."

msgid "Sets the [param particle_flag] to [param enable]."
msgstr "Устанавливает [param partial_flag] в значение [param enable]."

msgid ""
"The alpha value of each particle's color will be multiplied by this "
"[CurveTexture] over its lifetime.\n"
"[b]Note:[/b] [member alpha_curve] multiplies the particle mesh's vertex "
"colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member "
"alpha_curve] will have no visible effect."
msgstr ""
"Значение альфа цвета каждой частицы будет умножаться на эту [CurveTexture] в "
"течение ее жизненного цикла.\n"
"[b]Примечание:[/b] [member alpha_curve] умножает цвета вершин сетки частицы. "
"Чтобы иметь видимый эффект на [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]должен[/i] быть [code]true[/"
"code]. Для [ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] должен быть "
"вставлен в функцию шейдера [code]fragment()[/code]. В противном случае "
"[member alpha_curve] не будет иметь видимого эффекта."

msgid "Each particle's rotation will be animated along this [CurveTexture]."
msgstr "Вращение каждой частицы будет анимировано вдоль этой [CurveTexture]."

msgid ""
"Maximum initial rotation applied to each particle, in degrees.\n"
"Only applied when [member particle_flag_disable_z] or [member "
"particle_flag_rotate_y] are [code]true[/code] or the [BaseMaterial3D] being "
"used to draw the particle is using [constant "
"BaseMaterial3D.BILLBOARD_PARTICLES]."
msgstr ""
"Максимальное начальное вращение, применяемое к каждой частице, в градусах.\n"
"Применяется только тогда, когда [member partial_flag_disable_z] или [member "
"partial_flag_rotate_y] равны [code]true[/code] или [BaseMaterial3D], "
"используемый для рисования частицы, использует [constant "
"BaseMaterial3D.BILLBOARD_PARTICLES]."

msgid ""
"Each particle's angular velocity (rotation speed) will vary along this "
"[CurveTexture] over its lifetime."
msgstr ""
"Угловая скорость каждой частицы (скорость вращения) будет изменяться вдоль "
"этой [CurveTexture] в течение ее жизни."

msgid ""
"Maximum initial angular velocity (rotation speed) applied to each particle in "
"[i]degrees[/i] per second.\n"
"Only applied when [member particle_flag_disable_z] or [member "
"particle_flag_rotate_y] are [code]true[/code] or the [BaseMaterial3D] being "
"used to draw the particle is using [constant "
"BaseMaterial3D.BILLBOARD_PARTICLES]."
msgstr ""
"Максимальная начальная угловая скорость (ск. вращения), применяемая к каждой "
"частице в [i]градусах[/i] в секунду.\n"
"Применяется только тогда, когда [member partial_flag_disable_z] или [member "
"partial_flag_rotate_y] имеют значение [code]true[/code] или [BaseMaterial3D], "
"используемый для рисования частицы, использует [constant "
"BaseMaterial3D.BILLBOARD_PARTICLES]."

msgid "Each particle's animation offset will vary along this [CurveTexture]."
msgstr ""
"Смещение анимации каждой частицы будет меняться в зависимости от "
"[CurveTexture]."

msgid "Each particle's animation speed will vary along this [CurveTexture]."
msgstr ""
"Скорость анимации каждой частицы будет меняться в зависимости от "
"[CurveTexture]."

msgid ""
"If [code]true[/code], interaction with particle attractors is enabled. In 3D, "
"attraction only occurs within the area defined by the [GPUParticles3D] node's "
"[member GPUParticles3D.visibility_aabb]."
msgstr ""
"Если [code]true[/code], взаимодействие с аттракторами частиц включено. В 3D "
"притяжение происходит только в области, определяемой [member "
"GPUParticles3D.visibility_aabb] узла [GPUParticles3D]."

msgid ""
"The particles' bounciness. Values range from [code]0[/code] (no bounce) to "
"[code]1[/code] (full bounciness). Only effective if [member collision_mode] "
"is [constant COLLISION_RIGID]."
msgstr ""
"Отскок частиц. Значения варьируются от [code]0[/code] (без отскока) до "
"[code]1[/code] (полная упругость). Действует только если [member "
"collision_mode] равен [constant COLLISION_RIGID]."

msgid ""
"The particles' friction. Values range from [code]0[/code] (frictionless) to "
"[code]1[/code] (maximum friction). Only effective if [member collision_mode] "
"is [constant COLLISION_RIGID]."
msgstr ""
"Трение частиц. Значения варьируются от [code]0[/code] (без трения) до "
"[code]1[/code] (максимальное трение). Действует только если [member "
"collision_mode] равен [constant COLLISION_RIGID]."

msgid ""
"The particles' collision mode.\n"
"[b]Note:[/b] 3D Particles can only collide with [GPUParticlesCollision3D] "
"nodes, not [PhysicsBody3D] nodes. To make particles collide with various "
"objects, you can add [GPUParticlesCollision3D] nodes as children of "
"[PhysicsBody3D] nodes. In 3D, collisions only occur within the area defined "
"by the [GPUParticles3D] node's [member GPUParticles3D.visibility_aabb].\n"
"[b]Note:[/b] 2D Particles can only collide with [LightOccluder2D] nodes, not "
"[PhysicsBody2D] nodes."
msgstr ""
"Режим столкновения частиц.\n"
"[b]Примечание:[/b] 3D-частицы могут сталкиваться только с узлами "
"[GPUParticlesCollision3D], а не с узлами [PhysicsBody3D]. Чтобы частицы "
"сталкивались с различными объектами, можно добавить узлы "
"[GPUParticlesCollision3D] в качестве дочерних узлов [PhysicsBody3D]. В 3D-"
"среде столкновения происходят только в области, определяемой [member "
"GPUParticles3D.visibility_aabb] узла [GPUParticles3D].\n"
"[b]Примечание:[/b] 2D-частицы могут сталкиваться только с узлами "
"[LightOccluder2D], а не с узлами [PhysicsBody2D]."

msgid ""
"If [code]true[/code], [member GPUParticles3D.collision_base_size] is "
"multiplied by the particle's effective scale (see [member scale_min], [member "
"scale_max], [member scale_curve], and [member scale_over_velocity_curve])."
msgstr ""
"Если [code]true[/code], [member GPUParticles3D.collision_base_size] "
"умножается на эффективный масштаб частицы (см. [member scale_min], [member "
"scale_max], [member scale_curve] и [member scale_over_velocity_curve])."

msgid ""
"Each particle's initial color. If the [GPUParticles2D]'s [code]texture[/code] "
"is defined, it will be multiplied by this color.\n"
"[b]Note:[/b] [member color] multiplies the particle mesh's vertex colors. To "
"have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member color] will "
"have no visible effect."
msgstr ""
"Начальный цвет каждой частицы. Если [code]текстуры[/code] [GPUParticles2D] "
"определен, он будет умножен на этот цвет.\n"
"[b]Примечание:[/b] [member color] умножает цвета вершин сетки частиц. Чтобы "
"иметь видимый эффект на [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]должен[/i] быть [code]истинным[/"
"code]. Для [ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] должен быть "
"вставлен в функцию [code]fragment()[/code] шейдера. В противном случае "
"[member color] не будет иметь видимого эффекта."

msgid ""
"Each particle's initial color will vary along this [GradientTexture1D] "
"(multiplied with [member color]).\n"
"[b]Note:[/b] [member color_initial_ramp] multiplies the particle mesh's "
"vertex colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member "
"color_initial_ramp] will have no visible effect."
msgstr ""
"Начальный цвет каждой частицы будет меняться вдоль этого [GradientTexture1D] "
"(умножается на [member color]).\n"
"[b]Примечание:[/b] [member color_initial_ramp] умножает цвета вершин сетки "
"частиц. Чтобы иметь видимый эффект на [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]должен[/i] быть [code]true[/"
"code]. Для [ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] должен быть "
"вставлен в функцию шейдера [code]fragment()[/code]. В противном случае "
"[member color_initial_ramp] не будет иметь видимого эффекта."

msgid ""
"Each particle's color will vary along this [GradientTexture1D] over its "
"lifetime (multiplied with [member color]).\n"
"[b]Note:[/b] [member color_ramp] multiplies the particle mesh's vertex "
"colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member color_ramp] "
"will have no visible effect."
msgstr ""
"Цвет каждой частицы будет меняться вдоль этого [GradientTexture1D] в течение "
"ее жизненного цикла (умножается на [member color]).\n"
"[b]Примечание:[/b] [member color_ramp] умножает цвета вершин сетки частиц. "
"Чтобы иметь видимый эффект на [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]должен[/i] быть [code]true[/"
"code]. Для [ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] должен быть "
"вставлен в функцию шейдера [code]fragment()[/code]. В противном случае "
"[member color_ramp] не будет иметь видимого эффекта."

msgid "Damping will vary along this [CurveTexture]."
msgstr "Затухание будет меняться вдоль [CurveTexture]."

msgid ""
"A curve that specifies the velocity along each of the axes of the particle "
"system along its lifetime.\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Кривая, которая определяет скорость вдоль каждой из осей системы частиц на "
"протяжении ее жизненного цикла.\n"
"[b]Примечание:[/b] Анимированные скорости не будут подвержены затуханию, "
"вместо этого используйте [member velocity_limit_curve]."

msgid ""
"Maximum directional velocity value, which is multiplied by [member "
"directional_velocity_curve].\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Максимальное значение направленной скорости, умноженное на [member "
"directional_velocity_curve].\n"
"[b]Примечание:[/b] Анимированные скорости не будут подвержены демпфированию, "
"вместо этого используйте [member velocity_limit_curve]."

msgid ""
"Minimum directional velocity value, which is multiplied by [member "
"directional_velocity_curve].\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Минимальное значение направленной скорости, умноженное на [member "
"directional_velocity_curve].\n"
"[b]Примечание:[/b] Анимированные скорости не будут подвержены демпфированию, "
"вместо этого используйте [member velocity_limit_curve]."

msgid ""
"The box's extents if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_BOX].\n"
"[b]Note:[/b] [member emission_box_extents] starts from the center point and "
"applies the X, Y, and Z values in both directions. The size is twice the area "
"of the extents."
msgstr ""
"Размеры коробки, если [member emission_shape] установлен на [constant "
"EMISSION_SHAPE_BOX].\n"
"[b]Примечание:[/b] [member emission_box_extents] начинается с центральной "
"точки и применяет значения X, Y и Z в обоих направлениях. Размер в два раза "
"больше площади размеров."

msgid ""
"Particle color will be modulated by color determined by sampling this texture "
"at the same point as the [member emission_point_texture].\n"
"[b]Note:[/b] [member emission_color_texture] multiplies the particle mesh's "
"vertex colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member "
"emission_color_texture] will have no visible effect."
msgstr ""
"Цвет частицы будет модулироваться цветом, определенным путем выборки этой "
"текстуры в той же точке, что и [member emission_point_texture].\n"
"[b]Примечание:[/b] [member emission_color_texture] умножает цвета вершин "
"сетки частицы. Чтобы иметь видимый эффект на [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]должен[/i] быть [code]true[/"
"code]. Для [ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] должен быть "
"вставлен в функцию шейдера [code]fragment()[/code]. В противном случае "
"[member emission_color_texture] не будет иметь видимого эффекта."

msgid ""
"Each particle's color will be multiplied by this [CurveTexture] over its "
"lifetime.\n"
"[b]Note:[/b] [member emission_curve] multiplies the particle mesh's vertex "
"colors. To have a visible effect on a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]must[/i] be [code]true[/code]. "
"For a [ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in "
"the shader's [code]fragment()[/code] function. Otherwise, [member "
"emission_curve] will have no visible effect."
msgstr ""
"Цвет каждой частицы будет умножен на эту [CurveTexture] в течение ее "
"жизненного цикла.\n"
"[b]Примечание:[/b] [member emission_curve] умножает цвета вершин сетки "
"частицы. Чтобы иметь видимый эффект на [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] [i]должен[/i] быть [code]true[/"
"code]. Для [ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] должен быть "
"вставлен в функцию шейдера [code]fragment()[/code]. В противном случае "
"[member emission_curve] не будет иметь видимого эффекта."

msgid ""
"Particle velocity and rotation will be set by sampling this texture at the "
"same point as the [member emission_point_texture]. Used only in [constant "
"EMISSION_SHAPE_DIRECTED_POINTS]. Can be created automatically from mesh or "
"node by selecting \"Create Emission Points from Mesh/Node\" under the "
"\"Particles\" tool in the toolbar."
msgstr ""
"Скорость и вращение частиц будут установлены путем выборки этой текстуры в "
"той же точке, что и [member emission_point_texture]. Используется только в "
"[constant EMISSION_SHAPE_DIRECTED_POINTS]. Может быть создан автоматически из "
"сетки или узла путем выбора «Создать точки излучения из сетки/узла» под "
"инструментом «Частицы» на панели инструментов."

msgid ""
"The number of emission points if [member emission_shape] is set to [constant "
"EMISSION_SHAPE_POINTS] or [constant EMISSION_SHAPE_DIRECTED_POINTS]."
msgstr ""
"Количество точек эмиссии, если [member emission_shape] установлен на "
"[constant EMISSION_SHAPE_POINTS] или [constant "
"EMISSION_SHAPE_DIRECTED_POINTS]."

msgid ""
"Particles will be emitted at positions determined by sampling this texture at "
"a random position. Used with [constant EMISSION_SHAPE_POINTS] and [constant "
"EMISSION_SHAPE_DIRECTED_POINTS]. Can be created automatically from mesh or "
"node by selecting \"Create Emission Points from Mesh/Node\" under the "
"\"Particles\" tool in the toolbar."
msgstr ""
"Частицы будут испускаться в позициях, определяемых путем выборки этой "
"текстуры в случайной позиции. Используется с [constant EMISSION_SHAPE_POINTS] "
"и [constant EMISSION_SHAPE_DIRECTED_POINTS]. Может быть создан автоматически "
"из сетки или узла путем выбора «Создать точки излучения из сетки/узла» под "
"инструментом «Частицы» на панели инструментов."

msgid "The offset for the [member emission_shape], in local space."
msgstr "Смещение для [member emission_shape] в локальном пространстве."

msgid "The scale of the [member emission_shape], in local space."
msgstr "Масштаб [member emission_shape] в локальном пространстве."

msgid "Amount of [member spread] along the Y axis."
msgstr "Величина [member spread] по оси Y."

msgid "Each particle's hue will vary along this [CurveTexture]."
msgstr "Оттенок каждой частицы будет меняться в зависимости от [CurveTexture]."

msgid ""
"Percentage of the velocity of the respective [GPUParticles2D] or "
"[GPUParticles3D] inherited by each particle when spawning."
msgstr ""
"Процент скорости соответствующих [GPUParticles2D] или [GPUParticles3D], "
"унаследованный каждой частицей при создании."

msgid ""
"Particle lifetime randomness ratio. The equation for the lifetime of a "
"particle is [code]lifetime * (1.0 - randf() * lifetime_randomness)[/code]. "
"For example, a [member lifetime_randomness] of [code]0.4[/code] scales the "
"lifetime between [code]0.6[/code] to [code]1.0[/code] of its original value."
msgstr ""
"Коэффициент случайности времени жизни частицы. Уравнение для времени жизни "
"частицы: [code]lifetime * (1.0 - randf() * life_randomness)[/code]. Например, "
"[member life_randomness] из [code]0.4[/code] масштабирует время жизни между "
"[code]0.6[/code] и [code]1.0[/code] от его исходного значения."

msgid "Each particle's linear acceleration will vary along this [CurveTexture]."
msgstr ""
"Линейное ускорение каждой частицы будет меняться вдоль этой [CurveTexture]."

msgid ""
"Each particle's orbital velocity will vary along this [CurveTexture].\n"
"[b]Note:[/b] For 3D orbital velocity, use a [CurveXYZTexture].\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Орбитальная скорость каждой частицы будет меняться вдоль этой "
"[CurveTexture].\n"
"[b]Примечание:[/b] Для 3D-орбитальной скорости используйте "
"[CurveXYZTexture].\n"
"[b]Примечание:[/b] Анимированные скорости не будут подвержены затуханию, "
"вместо этого используйте [member velocity_limit_curve]."

msgid ""
"Maximum orbital velocity applied to each particle. Makes the particles circle "
"around origin. Specified in number of full rotations around origin per "
"second.\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Максимальная орбитальная скорость, применяемая к каждой частице. Заставляет "
"частицы вращаться вокруг начала координат. Указывается в количестве полных "
"оборотов вокруг начала координат в секунду.\n"
"[b]Примечание:[/b] Анимированные скорости не будут затронуты затуханием, "
"вместо этого используйте [member velocity_limit_curve]."

msgid ""
"Minimum equivalent of [member orbit_velocity_max].\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Минимальный эквивалент [member orbit_velocity_max].\n"
"[b]Примечание:[/b] Анимированные скорости не будут подвержены демпфированию, "
"вместо этого используйте [member velocity_limit_curve]."

msgid ""
"Changes the behavior of the damping properties from a linear deceleration to "
"a deceleration based on speed percentage."
msgstr ""
"Изменяет поведение свойств демпфирования с линейного замедления на замедление "
"на основе процента скорости."

msgid "If [code]true[/code], particles will not move on the z axis."
msgstr "Если [code]true[/code], частицы не будут двигаться по оси z."

msgid "Each particle's radial acceleration will vary along this [CurveTexture]."
msgstr ""
"Радиальное ускорение каждой частицы будет меняться вдоль [CurveTexture]."

msgid ""
"A [CurveTexture] that defines the velocity over the particle's lifetime away "
"(or toward) the [member velocity_pivot].\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"[CurveTexture], которая определяет скорость в течение жизни частицы от (или "
"к) [member velocity_pivot].\n"
"[b]Примечание:[/b] Анимированные скорости не будут затронуты затуханием, "
"вместо этого используйте [member velocity_limit_curve]."

msgid ""
"Maximum radial velocity applied to each particle. Makes particles move away "
"from the [member velocity_pivot], or toward it if negative.\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Максимальная радиальная скорость, применяемая к каждой частице. Заставляет "
"частицы двигаться от [member velocity_pivot] или к нему, если отрицательно.\n"
"[b]Примечание:[/b] Анимированные скорости не будут затронуты затуханием, "
"вместо этого используйте [member velocity_limit_curve]."

msgid ""
"Minimum radial velocity applied to each particle. Makes particles move away "
"from the [member velocity_pivot], or toward it if negative.\n"
"[b]Note:[/b] Animated velocities will not be affected by damping, use [member "
"velocity_limit_curve] instead."
msgstr ""
"Минимальная радиальная скорость, применяемая к каждой частице. Заставляет "
"частицы двигаться от [member velocity_pivot] или к нему, если отрицательно.\n"
"[b]Примечание:[/b] Анимированные скорости не будут затронуты затуханием, "
"вместо этого используйте [member velocity_limit_curve]."

msgid ""
"Each particle's scale will vary along this [CurveTexture] over its lifetime. "
"If a [CurveXYZTexture] is supplied instead, the scale will be separated per-"
"axis."
msgstr ""
"Масштаб каждой частицы будет меняться вдоль этой [CurveTexture] в течение ее "
"жизни. Если вместо этого предоставлено [CurveXYZTexture], масштаб будет "
"разделен по осям."

msgid "Minimum equivalent of [member scale_max]."
msgstr "Минимальный эквивалент [member scale_max]."

msgid ""
"Either a [CurveTexture] or a [CurveXYZTexture] that scales each particle "
"based on its velocity."
msgstr ""
"Либо [CurveTexture], либо [CurveXYZTexture], которые масштабируют каждую "
"частицу на основе ее скорости."

msgid ""
"Maximum velocity value reference for [member scale_over_velocity_curve].\n"
"[member scale_over_velocity_curve] will be interpolated between [member "
"scale_over_velocity_min] and [member scale_over_velocity_max]."
msgstr ""
"Максимальное опорное значение скорости для [member "
"scale_over_velocity_curve].\n"
"[member scale_over_velocity_curve] будет интерполировано между [member "
"scale_over_velocity_min] и [member scale_over_velocity_max]."

msgid ""
"Minimum velocity value reference for [member scale_over_velocity_curve].\n"
"[member scale_over_velocity_curve] will be interpolated between [member "
"scale_over_velocity_min] and [member scale_over_velocity_max]."
msgstr ""
"Минимальное значение скорости для [member scale_over_velocity_curve].\n"
"[member scale_over_velocity_curve] будет интерполировано между [member "
"scale_over_velocity_min] и [member scale_over_velocity_max]."

msgid ""
"The amount of particles to spawn from the subemitter node when a collision "
"occurs. When combined with [constant COLLISION_HIDE_ON_CONTACT] on the main "
"particles material, this can be used to achieve effects such as raindrops "
"hitting the ground.\n"
"[b]Note:[/b] This value shouldn't exceed [member GPUParticles2D.amount] or "
"[member GPUParticles3D.amount] defined on the [i]subemitter node[/i] (not the "
"main node), relative to the subemitter's particle lifetime. If the number of "
"particles is exceeded, no new particles will spawn from the subemitter until "
"enough particles have expired."
msgstr ""
"Количество частиц, которые будут созданы из узла субэмиттера при "
"столкновении. В сочетании с [constant COLLISION_HIDE_ON_CONTACT] на основном "
"материале частиц это может быть использовано для достижения таких эффектов, "
"как капли дождя, падающие на землю.\n"
"[b]Примечание:[/b] Это значение не должно превышать [member "
"GPUParticles2D.amount] или [member GPUParticles3D.amount], определенных в "
"[i]узле субэмиттера[/i] (не главном узле), относительно времени жизни частиц "
"субэмиттера. Если количество частиц превышено, новые частицы не будут созданы "
"из субэмиттера, пока не истечет достаточное количество частиц."

msgid ""
"The amount of particles to spawn from the subemitter node when the particle "
"expires.\n"
"[b]Note:[/b] This value shouldn't exceed [member GPUParticles2D.amount] or "
"[member GPUParticles3D.amount] defined on the [i]subemitter node[/i] (not the "
"main node), relative to the subemitter's particle lifetime. If the number of "
"particles is exceeded, no new particles will spawn from the subemitter until "
"enough particles have expired."
msgstr ""
"Количество частиц, которые будут созданы из узла субэмиттера (subemitter), "
"когда частица истекает.\n"
"[b]Примечание:[/b] Это значение не должно превышать [member "
"GPUParticles2D.amount] или [member GPUParticles3D.amount], определенных на "
"[i]узле субэмиттера[/i] (не главном узле), относительно времени жизни частиц "
"субэмиттера. Если количество частиц превышено, новые частицы не будут созданы "
"из субэмиттера, пока не истекло достаточное количество частиц."

msgid ""
"The amount of particles to spawn from the subemitter node when the particle "
"spawns.\n"
"[b]Note:[/b] This value shouldn't exceed [member GPUParticles2D.amount] or "
"[member GPUParticles3D.amount] defined on the [i]subemitter node[/i] (not the "
"main node), relative to the subemitter's particle lifetime. If the number of "
"particles is exceeded, no new particles will spawn from the subemitter until "
"enough particles have expired."
msgstr ""
"Количество частиц, которые будут созданы из узла субэмиттера при создании "
"частицы.\n"
"[b]Примечание:[/b] Это значение не должно превышать [member "
"GPUParticles2D.amount] или [member GPUParticles3D.amount], определенных на "
"[i]узле субэмиттера[/i] (не главном узле), относительно времени жизни частиц "
"субэмиттера. Если количество частиц превышено, новые частицы не будут созданы "
"из субэмиттера, пока не истечет достаточное количество частиц."

msgid ""
"The frequency at which particles should be emitted from the subemitter node. "
"One particle will be spawned every [member sub_emitter_frequency] seconds.\n"
"[b]Note:[/b] This value shouldn't exceed [member GPUParticles2D.amount] or "
"[member GPUParticles3D.amount] defined on the [i]subemitter node[/i] (not the "
"main node), relative to the subemitter's particle lifetime. If the number of "
"particles is exceeded, no new particles will spawn from the subemitter until "
"enough particles have expired."
msgstr ""
"Частота, с которой частицы должны испускаться из узла субэмиттера. Одна "
"частица будет порождаться каждые [member sub_emitter_frequency] секунд.\n"
"[b]Примечание:[/b] Это значение не должно превышать [member "
"GPUParticles2D.amount] или [member GPUParticles3D.amount], определенные на "
"[i]узле субэмиттера[/i] (не главном узле), относительно времени жизни частиц "
"субэмиттера. Если количество частиц превышено, новые частицы не будут "
"порождаться из субэмиттера, пока не истечет достаточное количество частиц."

msgid ""
"If [code]true[/code], the subemitter inherits the parent particle's velocity "
"when it spawns."
msgstr ""
"Если [code]true[/code], субэмиттер наследует скорость родительской частицы "
"при появлении."

msgid ""
"The particle subemitter mode (see [member GPUParticles2D.sub_emitter] and "
"[member GPUParticles3D.sub_emitter])."
msgstr ""
"Режим субэмиттера частиц (см. [member GPUParticles2D.sub_emitter] и [member "
"GPUParticles3D.sub_emitter])."

msgid ""
"Each particle's tangential acceleration will vary along this [CurveTexture]."
msgstr ""
"Тангенциальное ускорение каждой частицы будет меняться вдоль этой "
"[CurveTexture]."

msgid ""
"If [code]true[/code], enables turbulence for the particle system. Turbulence "
"can be used to vary particle movement according to its position (based on a "
"3D noise pattern). In 3D, [GPUParticlesAttractorVectorField3D] with "
"[NoiseTexture3D] can be used as an alternative to turbulence that works in "
"world space and with multiple particle systems reacting in the same way.\n"
"[b]Note:[/b] Enabling turbulence has a high performance cost on the GPU. Only "
"enable turbulence on a few particle systems at once at most, and consider "
"disabling it when targeting mobile/web platforms."
msgstr ""
"Если [code]true[/code], включает турбулентность для системы частиц. "
"Турбулентность может использоваться для изменения движения частиц в "
"зависимости от их положения (на основе шаблона 3D-шума). В 3D "
"[GPUParticlesAttractorVectorField3D] с [NoiseTexture3D] можно использовать в "
"качестве альтернативы турбулентности, которая работает в мировом пространстве "
"и с несколькими системами частиц, реагирующими одинаково.\n"
"[b]Примечание:[/b] Включение турбулентности имеет высокие затраты "
"производительности на GPU. Включайте турбулентность только на нескольких "
"системах частиц одновременно и рассмотрите возможность ее отключения при "
"ориентации на мобильные/веб-платформы."

msgid ""
"Maximum turbulence influence on each particle.\n"
"The actual amount of turbulence influence on each particle is calculated as a "
"random value between [member turbulence_influence_min] and [member "
"turbulence_influence_max] and multiplied by the amount of turbulence "
"influence from [member turbulence_influence_over_life]."
msgstr ""
"Максимальное влияние турбулентности на каждую частицу.\n"
"Фактическое количество влияния турбулентности на каждую частицу "
"рассчитывается как случайное значение между [member turbulence_influence_min] "
"и [member turbulence_influence_max] и умножается на количество влияния "
"турбулентности из [member turbulence_influence_over_life]."

msgid ""
"Minimum turbulence influence on each particle.\n"
"The actual amount of turbulence influence on each particle is calculated as a "
"random value between [member turbulence_influence_min] and [member "
"turbulence_influence_max] and multiplied by the amount of turbulence "
"influence from [member turbulence_influence_over_life]."
msgstr ""
"Минимальное влияние турбулентности на каждую частицу.\n"
"Фактическое количество влияния турбулентности на каждую частицу "
"рассчитывается как случайное значение между [member turbulence_influence_min] "
"и [member turbulence_influence_max] и умножается на количество влияния "
"турбулентности из [member turbulence_influence_over_life]."

msgid ""
"Each particle's amount of turbulence will be influenced along this "
"[CurveTexture] over its life time."
msgstr ""
"Степень турбулентности каждой частицы будет зависеть от [CurveTexture] в "
"течение ее жизненного цикла."

msgid ""
"Maximum displacement of each particle's spawn position by the turbulence.\n"
"The actual amount of displacement will be a factor of the underlying "
"turbulence multiplied by a random value between [member "
"turbulence_initial_displacement_min] and [member "
"turbulence_initial_displacement_max]."
msgstr ""
"Максимальное смещение положения появления каждой частицы турбулентностью.\n"
"Фактическая величина смещения будет коэффициентом базовой турбулентности, "
"умноженным на случайное значение между [member "
"turbulence_initial_displacement_min] и [member "
"turbulence_initial_displacement_max]."

msgid ""
"Minimum displacement of each particle's spawn position by the turbulence.\n"
"The actual amount of displacement will be a factor of the underlying "
"turbulence multiplied by a random value between [member "
"turbulence_initial_displacement_min] and [member "
"turbulence_initial_displacement_max]."
msgstr ""
"Минимальное смещение положения появления каждой частицы турбулентностью.\n"
"Фактическая величина смещения будет коэффициентом базовой турбулентности, "
"умноженным на случайное значение между [member "
"turbulence_initial_displacement_min] и [member "
"turbulence_initial_displacement_max]."

msgid ""
"This value controls the overall scale/frequency of the turbulence noise "
"pattern.\n"
"A small scale will result in smaller features with more detail while a high "
"scale will result in smoother noise with larger features."
msgstr ""
"Это значение контролирует общий масштаб/частоту картины шума турбулентности.\n"
"Малый масштаб приведет к более мелким деталям с большей детализацией, тогда "
"как большой масштаб приведет к более плавному шуму с более крупными деталями."

msgid ""
"A scrolling velocity for the turbulence field. This sets a directional trend "
"for the pattern to move in over time.\n"
"The default value of [code]Vector3(0, 0, 0)[/code] turns off the scrolling."
msgstr ""
"Скорость прокрутки для поля турбулентности. Это задает направленный тренд для "
"движения узора со временем.\n"
"Значение по умолчанию [code]Vector3(0, 0, 0)[/code] отключает прокрутку."

msgid ""
"The in-place rate of change of the turbulence field. This defines how quickly "
"the noise pattern varies over time.\n"
"A value of 0.0 will result in a fixed pattern."
msgstr ""
"Скорость изменения поля турбулентности на месте. Это определяет, насколько "
"быстро меняется картина шума со временем.\n"
"Значение 0,0 приведет к фиксированной картине."

msgid ""
"The turbulence noise strength. Increasing this will result in a stronger, "
"more contrasting, flow pattern."
msgstr ""
"Сила шума турбулентности. Увеличение этого параметра приведет к более "
"сильной, контрастной картине потока."

msgid ""
"A [CurveTexture] that defines the maximum velocity of a particle during its "
"lifetime."
msgstr ""
"[CurveTexture], определяющий максимальную скорость частицы за время ее жизни."

msgid ""
"A pivot point used to calculate radial and orbital velocity of particles."
msgstr ""
"Точка опоры, используемая для расчета радиальной и орбитальной скорости "
"частиц."

msgid ""
"Emitted when this material's emission shape is changed in any way. This "
"includes changes to [member emission_shape], [member emission_shape_scale], "
"or [member emission_sphere_radius], and any other property that affects the "
"emission shape's offset, size, scale, or orientation.\n"
"[b]Note:[/b] This signal is only emitted inside the editor for performance "
"reasons."
msgstr ""
"Выпускается, когда форма излучения этого материала каким-либо образом "
"изменяется. Это включает изменения [member emission_shape], [member "
"emission_shape_scale] или [member emission_sphere_radius], а также любые "
"другие свойства, которые влияют на смещение, размер, масштаб или ориентацию "
"формы излучения.\n"
"[b]Примечание:[/b] Этот сигнал выдается только внутри редактора по "
"соображениям производительности."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set initial velocity properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки начальных свойств скорости."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set angular velocity properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств угловой скорости."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set orbital velocity properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств орбитальной скорости."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set linear acceleration properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств линейного ускорения."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set radial acceleration properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств радиального ускорения."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set tangential acceleration properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств тангенциального ускорения."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set damping properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств затухания."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set angle properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств угла."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set scale properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств масштаба."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set hue variation properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств изменения оттенка."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set animation speed properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств скорости анимации."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set animation offset properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств смещения анимации."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set radial velocity properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств радиальной скорости."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set directional velocity properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки свойств направленной скорости."

msgid ""
"Use with [method set_param_min], [method set_param_max], and [method "
"set_param_texture] to set scale over velocity properties."
msgstr ""
"Используйте с [method set_param_min], [method set_param_max] и [method "
"set_param_texture] для установки масштаба по свойствам скорости."

msgid ""
"Particles will be emitted at a position determined by sampling a random point "
"on the [member emission_point_texture]. Particle color will be modulated by "
"[member emission_color_texture]."
msgstr ""
"Частицы будут испускаться в позиции, определяемой путем выборки случайной "
"точки на [member emission_point_texture]. Цвет частиц будет модулироваться "
"[member emission_color_texture]."

msgid ""
"Particles will be emitted at a position determined by sampling a random point "
"on the [member emission_point_texture]. Particle velocity and rotation will "
"be set based on [member emission_normal_texture]. Particle color will be "
"modulated by [member emission_color_texture]."
msgstr ""
"Частицы будут испускаться в позиции, определяемой путем выборки случайной "
"точки на [member emission_point_texture]. Скорость и вращение частиц будут "
"установлены на основе [member emission_normal_texture]. Цвет частиц будет "
"модулироваться [member emission_color_texture]."

msgid ""
"Use with [method set_param_min] and [method set_param_max] to set the "
"turbulence minimum und maximum influence on each particles velocity."
msgstr ""
"Используйте с [method set_param_min] и [method set_param_max] для установки "
"минимального и максимального влияния турбулентности на скорость каждой "
"частицы."

msgid ""
"Use with [method set_param_min] and [method set_param_max] to set the "
"turbulence minimum and maximum displacement of the particles spawn position."
msgstr ""
"Используйте с [method set_param_min] и [method set_param_max] для установки "
"минимального и максимального смещения турбулентности положения появления "
"частиц."

msgid ""
"Use with [method set_param_texture] to set the turbulence influence over the "
"particles life time."
msgstr ""
"Используйте с [method set_param_texture] для установки влияния турбулентности "
"на время жизни частиц."

msgid "Represents the size of the [enum SubEmitterMode] enum."
msgstr "Представляет размер перечисления [enum SubEmitterMode]."

msgid ""
"No collision for particles. Particles will go through "
"[GPUParticlesCollision3D] nodes."
msgstr ""
"Никаких столкновений для частиц. Частицы будут проходить через узлы "
"[GPUParticlesCollision3D]."

msgid ""
"[RigidBody3D]-style collision for particles using [GPUParticlesCollision3D] "
"nodes."
msgstr ""
"Столкновение в стиле [RigidBody3D] для частиц с использованием узлов "
"[GPUParticlesCollision3D]."

msgid ""
"Hide particles instantly when colliding with a [GPUParticlesCollision3D] "
"node. This can be combined with a subemitter that uses the [constant "
"COLLISION_RIGID] collision mode to \"replace\" the parent particle with the "
"subemitter on impact."
msgstr ""
"Скрыть частицы мгновенно при столкновении с узлом [GPUParticlesCollision3D]. "
"Это можно объединить с субэмиттером, который использует режим столкновения "
"[constant COLLISION_RIGID] для «замены» родительской частицы субэмиттером при "
"столкновении."

msgid "Represents the size of the [enum CollisionMode] enum."
msgstr "Представляет размер перечисления [enum CollisionMode]."

msgid "Contains a [Curve2D] path for [PathFollow2D] nodes to follow."
msgstr "Содержит путь [Curve2D] для следования узлов [PathFollow2D]."

msgid ""
"Can have [PathFollow2D] child nodes moving along the [Curve2D]. See "
"[PathFollow2D] for more information on usage.\n"
"[b]Note:[/b] The path is considered as relative to the moved nodes (children "
"of [PathFollow2D]). As such, the curve should usually start with a zero "
"vector ([code](0, 0)[/code])."
msgstr ""
"Может иметь [PathFollow2D] дочерних узлов, перемещающихся вдоль [Curve2D]. "
"См. [PathFollow2D] для получения дополнительной информации об использовании.\n"
"[b]Примечание:[/b] Путь рассматривается как относительный к перемещенным "
"узлам (дочерним элементам [PathFollow2D]). Таким образом, кривая обычно "
"должна начинаться с нулевого вектора ([code](0, 0)[/code])."

msgid "A [Curve2D] describing the path."
msgstr "[Curve2D], описывающая путь."

msgid "Contains a [Curve3D] path for [PathFollow3D] nodes to follow."
msgstr "Содержит путь [Curve3D] для следования узлов [PathFollow3D]."

msgid ""
"Can have [PathFollow3D] child nodes moving along the [Curve3D]. See "
"[PathFollow3D] for more information on the usage.\n"
"Note that the path is considered as relative to the moved nodes (children of "
"[PathFollow3D]). As such, the curve should usually start with a zero vector "
"[code](0, 0, 0)[/code]."
msgstr ""
"Может иметь [PathFollow3D] дочерних узлов, перемещающихся вдоль [Curve3D]. "
"См. [PathFollow3D] для получения дополнительной информации об использовании.\n"
"Обратите внимание, что путь рассматривается как относительный к перемещенным "
"узлам (дочерним элементам [PathFollow3D]). Таким образом, кривая обычно "
"должна начинаться с нулевого вектора [code](0, 0, 0)[/code]."

msgid "A [Curve3D] describing the path."
msgstr "[Curve3D], описывающая путь."

msgid ""
"The custom color to use to draw the shape in the editor.\n"
"If set to [code]Color(0.0, 0.0, 0.0)[/code] (by default), the color set in "
"EditorSettings is used."
msgstr ""
"Пользовательский цвет, используемый для рисования фигуры в редакторе.\n"
"Если задано значение [code]Color(0.0, 0.0, 0.0)[/code] (по умолчанию), "
"используется цвет, заданный в EditorSettings."

msgid "Emitted when the [member curve] changes."
msgstr "Выпускается при изменении [member curve]."

msgid "Emitted when the [member debug_custom_color] changes."
msgstr "Испускается при изменении [member debug_custom_color]."

msgid "Point sampler for a [Path2D]."
msgstr "Точечный сэмплер для [Path2D]."

msgid ""
"This node takes its parent [Path2D], and returns the coordinates of a point "
"within it, given a distance from the first vertex.\n"
"It is useful for making other nodes follow a path, without coding the "
"movement pattern. For that, the nodes must be children of this node. The "
"descendant nodes will then move accordingly when setting the [member "
"progress] in this node."
msgstr ""
"Этот узел берет своего родителя [Path2D] и возвращает координаты точки внутри "
"него, учитывая расстояние от первой вершины.\n"
"Это полезно для того, чтобы заставить другие узлы следовать по пути, без "
"кодирования шаблона движения. Для этого узлы должны быть дочерними по "
"отношению к этому узлу. Узлы-потомки затем будут двигаться соответственно при "
"установке [member progress] в этом узле."

msgid ""
"If [code]true[/code], the position between two cached points is interpolated "
"cubically, and linearly otherwise.\n"
"The points along the [Curve2D] of the [Path2D] are precomputed before use, "
"for faster calculations. The point at the requested offset is then calculated "
"interpolating between two adjacent cached points. This may present a problem "
"if the curve makes sharp turns, as the cached points may not follow the curve "
"closely enough.\n"
"There are two answers to this problem: either increase the number of cached "
"points and increase memory consumption, or make a cubic interpolation between "
"two points at the cost of (slightly) slower calculations."
msgstr ""
"Если [code]true[/code], положение между двумя кэшированными точками "
"интерполируется кубически, а в противном случае — линейно.\n"
"Точки вдоль [Curve2D] [Path2D] предварительно вычисляются перед "
"использованием для более быстрых вычислений. Затем точка с запрошенным "
"смещением вычисляется путем интерполяции между двумя соседними кэшированными "
"точками. Это может представлять проблему, если кривая делает резкие повороты, "
"так как кэшированные точки могут недостаточно точно следовать кривой.\n"
"Есть два решения этой проблемы: либо увеличить количество кэшированных точек "
"и увеличить потребление памяти, либо выполнить кубическую интерполяцию между "
"двумя точками за счет (немного) более медленных вычислений."

msgid "The node's offset along the curve."
msgstr "Смещение узла вдоль кривой."

msgid ""
"If [code]true[/code], any offset outside the path's length will wrap around, "
"instead of stopping at the ends. Use it for cyclic paths."
msgstr ""
"Если [code]true[/code], любое смещение за пределами длины пути будет "
"зацикливаться, а не останавливаться на концах. Используйте его для "
"циклических путей."

msgid ""
"The distance along the path, in pixels. Changing this value sets this node's "
"position to a point within the path."
msgstr ""
"Расстояние вдоль пути в пикселях. Изменение этого значения устанавливает "
"положение этого узла в точке внутри пути."

msgid ""
"The distance along the path as a number in the range 0.0 (for the first "
"vertex) to 1.0 (for the last). This is just another way of expressing the "
"progress within the path, as the offset supplied is multiplied internally by "
"the path's length.\n"
"It can be set or get only if the [PathFollow2D] is the child of a [Path2D] "
"which is part of the scene tree, and that this [Path2D] has a [Curve2D] with "
"a non-zero length. Otherwise, trying to set this field will print an error, "
"and getting this field will return [code]0.0[/code]."
msgstr ""
"Расстояние вдоль пути как число в диапазоне от 0,0 (для первой вершины) до "
"1,0 (для последней). Это просто другой способ выражения прогресса внутри "
"пути, поскольку предоставленное смещение умножается внутренне на длину пути.\n"
"Его можно установить или получить, только если [PathFollow2D] является "
"дочерним элементом [Path2D], который является частью дерева сцены, и что этот "
"[Path2D] имеет [Curve2D] с ненулевой длиной. В противном случае попытка "
"установить это поле выведет ошибку, а получение этого поля вернет [code]0.0[/"
"code]."

msgid ""
"If [code]true[/code], this node rotates to follow the path, with the +X "
"direction facing forward on the path."
msgstr ""
"Если [code]true[/code], этот узел вращается, следуя по пути, при этом "
"направление +X обращено вперед по пути."

msgid "The node's offset perpendicular to the curve."
msgstr "Смещение узла перпендикулярно кривой."

msgid "Point sampler for a [Path3D]."
msgstr "Точечный сэмплер для [Path3D]."

msgid ""
"This node takes its parent [Path3D], and returns the coordinates of a point "
"within it, given a distance from the first vertex.\n"
"It is useful for making other nodes follow a path, without coding the "
"movement pattern. For that, the nodes must be children of this node. The "
"descendant nodes will then move accordingly when setting the [member "
"progress] in this node."
msgstr ""
"Этот узел берет свой родительский [Path3D] и возвращает координаты точки "
"внутри него, учитывая расстояние от первой вершины.\n"
"Это полезно для того, чтобы заставить другие узлы следовать по пути, без "
"кодирования шаблона движения. Для этого узлы должны быть дочерними по "
"отношению к этому узлу. Узлы-потомки затем будут двигаться соответственно при "
"установке [member progress] в этом узле."

msgid ""
"Correct the [param transform]. [param rotation_mode] implicitly specifies how "
"posture (forward, up and sideway direction) is calculated."
msgstr ""
"Исправьте [param transform]. [param rotation_mode] неявно указывает, как "
"рассчитывается поза (вперед, вверх и вбок)."

msgid ""
"If [code]true[/code], the position between two cached points is interpolated "
"cubically, and linearly otherwise.\n"
"The points along the [Curve3D] of the [Path3D] are precomputed before use, "
"for faster calculations. The point at the requested offset is then calculated "
"interpolating between two adjacent cached points. This may present a problem "
"if the curve makes sharp turns, as the cached points may not follow the curve "
"closely enough.\n"
"There are two answers to this problem: either increase the number of cached "
"points and increase memory consumption, or make a cubic interpolation between "
"two points at the cost of (slightly) slower calculations."
msgstr ""
"Если [code]true[/code], положение между двумя кэшированными точками "
"интерполируется кубически, а в противном случае — линейно.\n"
"Точки вдоль [Curve3D] [Path3D] предварительно вычисляются перед "
"использованием для более быстрых вычислений. Затем точка с запрошенным "
"смещением вычисляется путем интерполяции между двумя соседними кэшированными "
"точками. Это может представлять проблему, если кривая делает резкие повороты, "
"так как кэшированные точки могут недостаточно точно следовать кривой.\n"
"Есть два решения этой проблемы: либо увеличить количество кэшированных точек "
"и увеличить потребление памяти, либо выполнить кубическую интерполяцию между "
"двумя точками за счет (немного) более медленных вычислений."

msgid ""
"The distance from the first vertex, measured in 3D units along the path. "
"Changing this value sets this node's position to a point within the path."
msgstr ""
"Расстояние от первой вершины, измеренное в 3D-единицах вдоль пути. Изменение "
"этого значения устанавливает положение этого узла в точке внутри пути."

msgid ""
"The distance from the first vertex, considering 0.0 as the first vertex and "
"1.0 as the last. This is just another way of expressing the progress within "
"the path, as the progress supplied is multiplied internally by the path's "
"length.\n"
"It can be set or get only if the [PathFollow3D] is the child of a [Path3D] "
"which is part of the scene tree, and that this [Path3D] has a [Curve3D] with "
"a non-zero length. Otherwise, trying to set this field will print an error, "
"and getting this field will return [code]0.0[/code]."
msgstr ""
"Расстояние от первой вершины, считая 0.0 первой вершиной, а 1.0 последней. "
"Это просто другой способ выражения прогресса в пределах пути, поскольку "
"предоставленный прогресс умножается внутренне на длину пути.\n"
"Его можно установить или получить, только если [PathFollow3D] является "
"дочерним элементом [Path3D], который является частью дерева сцены, и что этот "
"[Path3D] имеет [Curve3D] с ненулевой длиной. В противном случае попытка "
"установить это поле выведет ошибку, а получение этого поля вернет [code]0.0[/"
"code]."

msgid ""
"Allows or forbids rotation on one or more axes, depending on the [enum "
"RotationMode] constants being used."
msgstr ""
"Разрешает или запрещает вращение по одной или нескольким осям в зависимости "
"от используемых констант [enum RotationMode]."

msgid "If [code]true[/code], the tilt property of [Curve3D] takes effect."
msgstr "Если [code]true[/code], свойство наклона [Curve3D] вступает в силу."

msgid ""
"If [code]true[/code], the node moves on the travel path with orienting the +Z "
"axis as forward. See also [constant Vector3.FORWARD] and [constant "
"Vector3.MODEL_FRONT]."
msgstr ""
"Если [code]true[/code], узел перемещается по траектории перемещения с "
"ориентацией оси +Z вперед. См. также [constant Vector3.FORWARD] и [constant "
"Vector3.MODEL_FRONT]."

msgid "Forbids the PathFollow3D to rotate."
msgstr "Запрещает PathFollow3D вращаться."

msgid "Allows the PathFollow3D to rotate in the Y axis only."
msgstr "Позволяет PathFollow3D вращаться только по оси Y."

msgid "Allows the PathFollow3D to rotate in both the X, and Y axes."
msgstr "Позволяет PathFollow3D вращаться по осям X и Y."

msgid "Allows the PathFollow3D to rotate in any axis."
msgstr "Позволяет PathFollow3D вращаться вокруг любой оси."

msgid ""
"Uses the up vector information in a [Curve3D] to enforce orientation. This "
"rotation mode requires the [Path3D]'s [member Curve3D.up_vector_enabled] "
"property to be set to [code]true[/code]."
msgstr ""
"Использует информацию о векторе вверх в [Curve3D] для обеспечения ориентации. "
"Этот режим вращения требует, чтобы свойство [member "
"Curve3D.up_vector_enabled] [Path3D] было установлено в [code]true[/code]."

msgid "Creates packages that can be loaded into a running project."
msgstr "Создает пакеты, которые можно загрузить в работающий проект."

msgid ""
"The [PCKPacker] is used to create packages that can be loaded into a running "
"project using [method ProjectSettings.load_resource_pack].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var packer = PCKPacker.new()\n"
"packer.pck_start(\"test.pck\")\n"
"packer.add_file(\"res://text.txt\", \"text.txt\")\n"
"packer.flush()\n"
"[/gdscript]\n"
"[csharp]\n"
"var packer = new PckPacker();\n"
"packer.PckStart(\"test.pck\");\n"
"packer.AddFile(\"res://text.txt\", \"text.txt\");\n"
"packer.Flush();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The above [PCKPacker] creates package [code]test.pck[/code], then adds a file "
"named [code]text.txt[/code] at the root of the package.\n"
"[b]Note:[/b] PCK is Godot's own pack file format. To create ZIP archives that "
"can be read by any program, use [ZIPPacker] instead."
msgstr ""
"[PCKPacker] используется для создания пакетов, которые можно загрузить в "
"работающий проект с помощью [method ProjectSettings.load_resource_pack].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var packer = PCKPacker.new()\n"
"packer.pck_start(\"test.pck\")\n"
"packer.add_file(\"res://text.txt\", \"text.txt\")\n"
"packer.flush()\n"
"[/gdscript]\n"
"[csharp]\n"
"var packer = new PckPacker();\n"
"packer.PckStart(\"test.pck\");\n"
"packer.AddFile(\"res://text.txt\", \"text.txt\");\n"
"packer.Flush();\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Вышеуказанный [PCKPacker] создает пакет [code]test.pck[/code], затем "
"добавляет файл с именем [code]text.txt[/code] в корень пакета.\n"
"[b]Примечание:[/b] PCK — это собственный формат файла пакета Godot. Чтобы "
"создать архивы ZIP, которые может прочитать любая программа, используйте "
"вместо этого [ZIPPacker]."

msgid ""
"Adds the [param source_path] file to the current PCK package at the [param "
"target_path] internal path. The [code]res://[/code] prefix for [param "
"target_path] is optional and stripped internally. File content is immediately "
"written to the PCK."
msgstr ""
"Добавляет файл [param source_path] в текущий пакет PCK по внутреннему пути "
"[param target_path]. Префикс [code]res://[/code] для [param target_path] "
"является необязательным и удаляется внутренне. Содержимое файла немедленно "
"записывается в PCK."

msgid ""
"Registers a file removal of the [param target_path] internal path to the PCK. "
"This is mainly used for patches. If the file at this path has been loaded "
"from a previous PCK, it will be removed. The [code]res://[/code] prefix for "
"[param target_path] is optional and stripped internally."
msgstr ""
"Регистрирует удаление файла внутреннего пути [param target_path] в PCK. Это в "
"основном используется для исправлений. Если файл по этому пути был загружен "
"из предыдущего PCK, он будет удален. Префикс [code]res://[/code] для [param "
"target_path] является необязательным и удаляется внутренне."

msgid ""
"Writes the file directory and closes the PCK. If [param verbose] is "
"[code]true[/code], a list of files added will be printed to the console for "
"easier debugging.\n"
"[b]Note:[/b] [PCKPacker] will automatically flush when it's freed, which "
"happens when it goes out of scope or when it gets assigned with [code]null[/"
"code]. In C# the reference must be disposed after use, either with the "
"[code]using[/code] statement or by calling the [code]Dispose[/code] method "
"directly."
msgstr ""
"Записывает каталог файлов и закрывает PCK. Если [param verbose] равен "
"[code]true[/code], список добавленных файлов будет выведен на консоль для "
"упрощения отладки.\n"
"[b]Примечание:[/b] [PCKPacker] автоматически сбрасывается при освобождении, "
"что происходит, когда он выходит из области действия или когда ему "
"присваивается [code]null[/code]. В C# ссылка должна быть удалена после "
"использования либо с помощью оператора [code]using[/code], либо путем прямого "
"вызова метода [code]Dispose[/code]."

msgid ""
"Creates a new PCK file at the file path [param pck_path]. The [code].pck[/"
"code] file extension isn't added automatically, so it should be part of "
"[param pck_path] (even though it's not required)."
msgstr ""
"Создает новый файл PCK по пути к файлу [param pck_path]. Расширение файла "
"[code].pck[/code] не добавляется автоматически, поэтому оно должно быть "
"частью [param pck_path] (хотя это не обязательно)."

msgid "Exposes performance-related data."
msgstr "Раскрытие данных о производительности."

msgid ""
"This class provides access to a number of different monitors related to "
"performance, such as memory usage, draw calls, and FPS. These are the same as "
"the values displayed in the [b]Monitor[/b] tab in the editor's [b]Debugger[/"
"b] panel. By using the [method get_monitor] method of this class, you can "
"access this data from your code.\n"
"You can add custom monitors using the [method add_custom_monitor] method. "
"Custom monitors are available in [b]Monitor[/b] tab in the editor's "
"[b]Debugger[/b] panel together with built-in monitors.\n"
"[b]Note:[/b] Some of the built-in monitors are only available in debug mode "
"and will always return [code]0[/code] when used in a project exported in "
"release mode.\n"
"[b]Note:[/b] Some of the built-in monitors are not updated in real-time for "
"performance reasons, so there may be a delay of up to 1 second between "
"changes.\n"
"[b]Note:[/b] Custom monitors do not support negative values. Negative values "
"are clamped to 0."
msgstr ""
"Этот класс предоставляет доступ к ряду различных мониторов, связанных с "
"производительностью, таких как использование памяти, вызовы отрисовки и FPS. "
"Они совпадают со значениями, отображаемыми на вкладке [b]Монитор[/b] на "
"панели [b]Отладчик[/b] редактора. Используя метод [method get_monitor] этого "
"класса, вы можете получить доступ к этим данным из своего кода.\n"
"Вы можете добавлять пользовательские мониторы с помощью метода [method "
"add_custom_monitor]. Пользовательские мониторы доступны на вкладке "
"[b]Монитор[/b] на панели [b]Отладчик[/b] редактора вместе со встроенными "
"мониторами.\n"
"[b]Примечание:[/b] Некоторые встроенные мониторы доступны только в режиме "
"отладки и всегда возвращают [code]0[/code] при использовании в проекте, "
"экспортированном в режиме выпуска.\n"
"[b]Примечание:[/b] Некоторые встроенные мониторы не обновляются в режиме "
"реального времени по соображениям производительности, поэтому между "
"изменениями может быть задержка до 1 секунды.\n"
"[b]Примечание:[/b] Пользовательские мониторы не поддерживают отрицательные "
"значения. Отрицательные значения ограничиваются 0."

msgid ""
"Adds a custom monitor with the name [param id]. You can specify the category "
"of the monitor using slash delimiters in [param id] (for example: [code]"
"\"Game/NumberOfNPCs\"[/code]). If there is more than one slash delimiter, "
"then the default category is used. The default category is [code]\"Custom\"[/"
"code]. Prints an error if given [param id] is already present.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar monitor_value = Callable(self, \"get_monitor_value\")\n"
"\n"
"\t# Adds monitor with name \"MyName\" to category \"MyCategory\".\n"
"\tPerformance.add_custom_monitor(\"MyCategory/MyMonitor\", monitor_value)\n"
"\n"
"\t# Adds monitor with name \"MyName\" to category \"Custom\".\n"
"\t# Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
"different IDs, so the code is valid.\n"
"\tPerformance.add_custom_monitor(\"MyMonitor\", monitor_value)\n"
"\n"
"\t# Adds monitor with name \"MyName\" to category \"Custom\".\n"
"\t# Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
"category but different IDs, so the code is valid.\n"
"\tPerformance.add_custom_monitor(\"Custom/MyMonitor\", monitor_value)\n"
"\n"
"\t# Adds monitor with name \"MyCategoryOne/MyCategoryTwo/MyMonitor\" to "
"category \"Custom\".\n"
"\tPerformance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
"monitor_value)\n"
"\n"
"func get_monitor_value():\n"
"\treturn randi() % 25\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar monitorValue = new Callable(this, MethodName.GetMonitorValue);\n"
"\n"
"\t// Adds monitor with name \"MyName\" to category \"MyCategory\".\n"
"\tPerformance.AddCustomMonitor(\"MyCategory/MyMonitor\", monitorValue);\n"
"\t// Adds monitor with name \"MyName\" to category \"Custom\".\n"
"\t// Note: \"MyCategory/MyMonitor\" and \"MyMonitor\" have same name but "
"different ids so the code is valid.\n"
"\tPerformance.AddCustomMonitor(\"MyMonitor\", monitorValue);\n"
"\n"
"\t// Adds monitor with name \"MyName\" to category \"Custom\".\n"
"\t// Note: \"MyMonitor\" and \"Custom/MyMonitor\" have same name and same "
"category but different ids so the code is valid.\n"
"\tPerformance.AddCustomMonitor(\"Custom/MyMonitor\", monitorValue);\n"
"\n"
"\t// Adds monitor with name \"MyCategoryOne/MyCategoryTwo/MyMonitor\" to "
"category \"Custom\".\n"
"\tPerformance.AddCustomMonitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
"monitorValue);\n"
"}\n"
"\n"
"public int GetMonitorValue()\n"
"{\n"
"\treturn GD.Randi() % 25;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The debugger calls the callable to get the value of custom monitor. The "
"callable must return a zero or positive integer or floating-point number.\n"
"Callables are called with arguments supplied in argument array."
msgstr ""
"Добавляет пользовательский монитор с именем [param id]. Вы можете указать "
"категорию монитора, используя разделители косой черты в [param id] (например: "
"[code]\"Game/NumberOfNPCs\"[/code]). Если есть более одного разделителя косой "
"черты, то используется категория по умолчанию. Категория по умолчанию - [code]"
"\"Custom\"[/code]. Выводит ошибку, если указанный [param id] уже "
"присутствует.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar monitor_value = Callable(self, \"get_monitor_value\")\n"
"\n"
"\t# Добавляет монитор с именем \"MyName\" в категорию \"MyCategory\".\n"
"\tPerformance.add_custom_monitor(\"MyCategory/MyMonitor\", monitor_value)\n"
"\n"
"\t# Добавляет монитор с именем \"MyName\" в категорию \"Custom\".\n"
"\t# Примечание: \"MyCategory/MyMonitor\" и \"MyMonitor\" имеют одинаковое "
"имя, но разные идентификаторы, поэтому код действителен.\n"
"\tPerformance.add_custom_monitor(\"MyMonitor\", monitor_value)\n"
"\n"
"\t#Добавляет монитор с именем \"MyName\" в категорию \"Custom\".\n"
"\t# Примечание: \"MyMonitor\"и \"Custom/MyMonitor\" имеют одинаковое имя и "
"одну и ту же категорию, но разные идентификаторы, поэтому код действителен.\n"
"\tPerformance.add_custom_monitor(\"Custom/MyMonitor\", monitor_value)\n"
"\n"
"\t# Добавляет монитор с именем \"MyCategoryOne/MyCategoryTwo/MyMonitor\" в "
"категорию \"Custom\".\n"
"\tPerformance.add_custom_monitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
"monitor_value)\n"
"\n"
"func get_monitor_value():\n"
"\treturn randi() % 25\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar monitorValue = new Callable(this, MethodName.GetMonitorValue);\n"
"\n"
"\t//Добавляет монитор с именем \"MyName\" в категорию \"MyCategory\".\n"
"\tPerformance.AddCustomMonitor(\"MyCategory/MyMonitor\", monitorValue);\n"
"\t// Добавляет монитор с именем \"MyName\" в категорию \"Custom\".\n"
"\t// Примечание: \"MyCategory/MyMonitor\" и \"MyMonitor\" имеют одинаковое "
"имя, но разные идентификаторы, поэтому код действителен.\n"
"\tPerformance.AddCustomMonitor(\"MyMonitor\", monitorValue);\n"
"\n"
"\t// Добавляет монитор с именем \"MyName\" в категорию \"Custom\".\n"
"\t// Примечание: \"MyMonitor\"и \"Custom/MyMonitor\" имеют одинаковое имя и "
"одну и ту же категорию, но разные идентификаторы, поэтому код действителен.\n"
"\tPerformance.AddCustomMonitor(\"Custom/MyMonitor\", monitorValue);\n"
"\n"
"\t// Добавляет монитор с именем \"MyCategoryOne/MyCategoryTwo/MyMonitor\" в "
"категорию \"Custom\".\n"
"\tPerformance.AddCustomMonitor(\"MyCategoryOne/MyCategoryTwo/MyMonitor\", "
"monitorValue);\n"
"}\n"
"\n"
"public int GetMonitorValue()\n"
"{\n"
"\treturn GD.Randi() % 25;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Отладчик вызывает вызываемый объект, чтобы получить значение "
"пользовательского монитора. Вызываемый объект должен возвращать ноль или "
"положительное целое число или число с плавающей точкой. \n"
"Вызываемые объекты вызываются с аргументами, указанными в массиве аргументов."

msgid ""
"Returns the value of custom monitor with given [param id]. The callable is "
"called to get the value of custom monitor. See also [method "
"has_custom_monitor]. Prints an error if the given [param id] is absent."
msgstr ""
"Возвращает значение пользовательского монитора с заданным [param id]. "
"Вызываемый объект вызывается для получения значения пользовательского "
"монитора. Смотрите также [method has_custom_monitor]. Выводит сообщение об "
"ошибке, если заданный [param id] отсутствует."

msgid "Returns the names of active custom monitors in an [Array]."
msgstr "Возвращает имена активных пользовательских мониторов в [Array]."

msgid ""
"Returns the value of one of the available built-in monitors. You should "
"provide one of the [enum Monitor] constants as the argument, like this:\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(Performance.get_monitor(Performance.TIME_FPS)) # Prints the FPS to the "
"console.\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(Performance.GetMonitor(Performance.Monitor.TimeFps)); // Prints the "
"FPS to the console.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See [method get_custom_monitor] to query custom performance monitors' values."
msgstr ""
"Возвращает значение одного из доступных встроенных мониторов. В качестве "
"аргумента следует указать одну из констант [enum Monitor], например, такую:\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(Performance.get_monitor(Performance.TIME_FPS)) # Выводит значение FPS "
"на консоль.\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(Производительность.Получить "
"монитор(Performance.Monitor.TimeFps)); // Выводит значение FPS на консоль.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Смотрите [method get_custom_monitor] для запроса значений пользовательских "
"мониторов производительности."

msgid ""
"Returns the last tick in which custom monitor was added/removed (in "
"microseconds since the engine started). This is set to [method "
"Time.get_ticks_usec] when the monitor is updated."
msgstr ""
"Возвращает последний тик, в течение которого пользовательский монитор был "
"добавлен/удален (в микросекундах с момента запуска движка). При обновлении "
"монитора устанавливается значение [method Time.get_ticks_usec]."

msgid ""
"Returns [code]true[/code] if custom monitor with the given [param id] is "
"present, [code]false[/code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если присутствует пользовательский монитор с "
"указанным [param id], в противном случае — [code]false[/code]."

msgid ""
"Removes the custom monitor with given [param id]. Prints an error if the "
"given [param id] is already absent."
msgstr ""
"Удаляет пользовательский монитор с указанным [param id]. Выводит ошибку, если "
"указанный [param id] уже отсутствует."

msgid ""
"The number of frames rendered in the last second. This metric is only updated "
"once per second, even if queried more often. [i]Higher is better.[/i]"
msgstr ""
"Количество кадров, отрисованных за последнюю секунду. Эта метрика обновляется "
"только один раз в секунду, даже если запрашивается чаще. [i]Чем выше, тем "
"лучше.[/i]"

msgid "Time it took to complete one frame, in seconds. [i]Lower is better.[/i]"
msgstr ""
"Время, необходимое для завершения одного кадра, в секундах. [i]Чем меньше, "
"тем лучше.[/i]"

msgid ""
"Time it took to complete one physics frame, in seconds. [i]Lower is better.[/"
"i]"
msgstr ""
"Время, необходимое для завершения одного физического кадра, в секундах. "
"[i]Чем меньше, тем лучше.[/i]"

msgid ""
"Time it took to complete one navigation step, in seconds. This includes "
"navigation map updates as well as agent avoidance calculations. [i]Lower is "
"better.[/i]"
msgstr ""
"Время, необходимое для завершения одного шага навигации, в секундах. Сюда "
"входят обновления навигационной карты, а также расчеты избегания агента. "
"[i]Чем меньше, тем лучше.[/i]"

msgid ""
"Static memory currently used, in bytes. Not available in release builds. "
"[i]Lower is better.[/i]"
msgstr ""
"Статическая память, используемая в настоящее время, в байтах. Недоступно в "
"сборках релиза. [i]Чем меньше, тем лучше.[/i]"

msgid ""
"Available static memory. Not available in release builds. [i]Lower is better."
"[/i]"
msgstr ""
"Доступная статическая память. Недоступно в релизных сборках. [i]Чем меньше, "
"тем лучше.[/i]"

msgid ""
"Largest amount of memory the message queue buffer has used, in bytes. The "
"message queue is used for deferred functions calls and notifications. "
"[i]Lower is better.[/i]"
msgstr ""
"Наибольший объем памяти, который буфер очереди сообщений использовал, в "
"байтах. Очередь сообщений используется для отложенных вызовов функций и "
"уведомлений. [i]Чем меньше, тем лучше.[/i]"

msgid ""
"Number of objects currently instantiated (including nodes). [i]Lower is "
"better.[/i]"
msgstr ""
"Количество объектов, экземпляры которых в данный момент созданы (включая "
"узлы). [i]Чем меньше, тем лучше.[/i]"

msgid "Number of resources currently used. [i]Lower is better.[/i]"
msgstr ""
"Количество используемых в данный момент ресурсов. [i]Чем меньше, тем лучше.[/"
"i]"

msgid ""
"Number of nodes currently instantiated in the scene tree. This also includes "
"the root node. [i]Lower is better.[/i]"
msgstr ""
"Количество узлов, которые в данный момент инстанцированы в дереве сцены. Сюда "
"также входит корневой узел. [i]Чем меньше, тем лучше.[/i]"

msgid ""
"Number of orphan nodes, i.e. nodes which are not parented to a node of the "
"scene tree. [i]Lower is better.[/i]"
msgstr ""
"Количество узлов-сирот, т.е. узлов, которые не являются родительскими по "
"отношению к узлу дерева сцены. [i]Чем меньше, тем лучше.[/i]"

msgid ""
"The total number of objects in the last rendered frame. This metric doesn't "
"include culled objects (either via hiding nodes, frustum culling or occlusion "
"culling). [i]Lower is better.[/i]"
msgstr ""
"Общее количество объектов в последнем отрисованном кадре. Эта метрика не "
"включает отбракованные объекты (через скрытие узлов, отбраковку по усеченной "
"области или отбраковку по окклюзии). [i]Чем меньше, тем лучше.[/i]"

msgid ""
"The total number of vertices or indices rendered in the last rendered frame. "
"This metric doesn't include primitives from culled objects (either via hiding "
"nodes, frustum culling or occlusion culling). Due to the depth prepass and "
"shadow passes, the number of primitives is always higher than the actual "
"number of vertices in the scene (typically double or triple the original "
"vertex count). [i]Lower is better.[/i]"
msgstr ""
"Общее количество вершин или индексов, отрендеренных в последнем отрендеренном "
"кадре. Эта метрика не включает примитивы из отбракованных объектов (через "
"скрытие узлов, отбраковку по усеченной пирамиде или отбраковку по окклюзии). "
"Из-за предварительного прохода глубины и проходов теней количество примитивов "
"всегда больше фактического количества вершин в сцене (обычно вдвое или втрое "
"больше исходного количества вершин). [i]Чем меньше, тем лучше.[/i]"

msgid ""
"The total number of draw calls performed in the last rendered frame. This "
"metric doesn't include culled objects (either via hiding nodes, frustum "
"culling or occlusion culling), since they do not result in draw calls. "
"[i]Lower is better.[/i]"
msgstr ""
"Общее количество вызовов отрисовки, выполненных в последнем отрендеренном "
"кадре. Эта метрика не включает отбракованные объекты (через скрытие узлов, "
"отбраковку по усеченной пирамиде или отбраковку по окклюзии), поскольку они "
"не приводят к вызовам отрисовки. [i]Чем ниже, тем лучше.[/i]"

msgid ""
"The amount of video memory used (texture and vertex memory combined, in "
"bytes). Since this metric also includes miscellaneous allocations, this value "
"is always greater than the sum of [constant RENDER_TEXTURE_MEM_USED] and "
"[constant RENDER_BUFFER_MEM_USED]. [i]Lower is better.[/i]"
msgstr ""
"Объем используемой видеопамяти (объединенная память текстур и вершин, в "
"байтах). Поскольку эта метрика также включает в себя различные выделения, это "
"значение всегда больше суммы [constant RENDER_TEXTURE_MEM_USED] и [constant "
"RENDER_BUFFER_MEM_USED]. [i]Чем меньше, тем лучше.[/i]"

msgid "The amount of texture memory used (in bytes). [i]Lower is better.[/i]"
msgstr ""
"Объем используемой памяти текстур (в байтах). [i]Чем меньше, тем лучше.[/i]"

msgid ""
"The amount of render buffer memory used (in bytes). [i]Lower is better.[/i]"
msgstr ""
"Объем используемой памяти буфера рендеринга (в байтах). [i]Чем меньше, тем "
"лучше.[/i]"

msgid ""
"Number of active [RigidBody2D] nodes in the game. [i]Lower is better.[/i]"
msgstr ""
"Количество активных узлов [RigidBody2D] в игре. [i]Чем меньше, тем лучше.[/i]"

msgid ""
"Number of collision pairs in the 2D physics engine. [i]Lower is better.[/i]"
msgstr ""
"Количество пар столкновений в 2D физическом движке. [i]Чем меньше, тем лучше."
"[/i]"

msgid "Number of islands in the 2D physics engine. [i]Lower is better.[/i]"
msgstr ""
"Количество островов в 2D физическом движке. [i]Чем меньше, тем лучше.[/i]"

msgid ""
"Number of active [RigidBody3D] and [VehicleBody3D] nodes in the game. "
"[i]Lower is better.[/i]"
msgstr ""
"Количество активных узлов [RigidBody3D] и [VehicleBody3D] в игре. [i]Чем "
"меньше, тем лучше.[/i]"

msgid ""
"Number of collision pairs in the 3D physics engine. [i]Lower is better.[/i]"
msgstr ""
"Количество пар столкновений в 3D физическом движке. [i]Чем меньше, тем лучше."
"[/i]"

msgid "Number of islands in the 3D physics engine. [i]Lower is better.[/i]"
msgstr ""
"Количество островов в 3D физическом движке. [i]Чем меньше, тем лучше.[/i]"

msgid ""
"Output latency of the [AudioServer]. Equivalent to calling [method "
"AudioServer.get_output_latency], it is not recommended to call this every "
"frame."
msgstr ""
"Задержка вывода [AudioServer]. Эквивалентно вызову [method "
"AudioServer.get_output_latency], не рекомендуется вызывать его каждый кадр."

msgid ""
"Number of active navigation maps in [NavigationServer2D] and "
"[NavigationServer3D]. This also includes the two empty default navigation "
"maps created by World2D and World3D."
msgstr ""
"Количество активных навигационных карт в [NavigationServer2D] и "
"[NavigationServer3D]. Сюда также входят две пустые навигационные карты по "
"умолчанию, созданные World2D и World3D."

msgid ""
"Number of active navigation regions in [NavigationServer2D] and "
"[NavigationServer3D]."
msgstr ""
"Количество активных навигационных регионов в [NavigationServer2D] и "
"[NavigationServer3D]."

msgid ""
"Number of active navigation agents processing avoidance in "
"[NavigationServer2D] and [NavigationServer3D]."
msgstr ""
"Количество активных навигационных агентов, обрабатывающих избегание в "
"[NavigationServer2D] и [NavigationServer3D]."

msgid ""
"Number of active navigation links in [NavigationServer2D] and "
"[NavigationServer3D]."
msgstr ""
"Количество активных навигационных ссылок (link) в [NavigationServer2D] и "
"[NavigationServer3D]."

msgid ""
"Number of navigation mesh polygons in [NavigationServer2D] and "
"[NavigationServer3D]."
msgstr ""
"Количество полигонов навигационной сетки в [NavigationServer2D] и "
"[NavigationServer3D]."

msgid ""
"Number of navigation mesh polygon edges in [NavigationServer2D] and "
"[NavigationServer3D]."
msgstr ""
"Количество ребер полигонов навигационной сетки в [NavigationServer2D] и "
"[NavigationServer3D]."

msgid ""
"Number of navigation mesh polygon edges that were merged due to edge key "
"overlap in [NavigationServer2D] and [NavigationServer3D]."
msgstr ""
"Количество ребер полигонов навигационной сетки, которые были объединены из-за "
"перекрытия ключей ребер в [NavigationServer2D] и [NavigationServer3D]."

msgid ""
"Number of polygon edges that are considered connected by edge proximity "
"[NavigationServer2D] and [NavigationServer3D]."
msgstr ""
"Количество ребер полигона, которые считаются соединенными по близости ребер "
"[NavigationServer2D] и [NavigationServer3D]."

msgid ""
"Number of navigation mesh polygon edges that could not be merged in "
"[NavigationServer2D] and [NavigationServer3D]. The edges still may be "
"connected by edge proximity or with links."
msgstr ""
"Количество ребер полигонов навигационной сетки, которые не удалось объединить "
"в [NavigationServer2D] и [NavigationServer3D]. Ребра по-прежнему могут быть "
"соединены близостью ребер или связями (Link)."

msgid ""
"Number of active navigation obstacles in the [NavigationServer2D] and "
"[NavigationServer3D]."
msgstr ""
"Количество активных навигационных препятствий в [NavigationServer2D] и "
"[NavigationServer3D]."

msgid ""
"Number of pipeline compilations that were triggered by the 2D canvas renderer."
msgstr ""
"Количество компиляций конвейера, которые были запущены рендерером 2D Canvas."

msgid ""
"Number of pipeline compilations that were triggered by loading meshes. These "
"compilations will show up as longer loading times the first time a user runs "
"the game and the pipeline is required."
msgstr ""
"Количество компиляций конвейера, которые были вызваны загрузкой сеток. Эти "
"компиляции будут отображаться как более длительное время загрузки при первом "
"запуске игры пользователем, и конвейер требуется."

msgid ""
"Number of pipeline compilations that were triggered by building the surface "
"cache before rendering the scene. These compilations will show up as a "
"stutter when loading a scene the first time a user runs the game and the "
"pipeline is required."
msgstr ""
"Количество компиляций конвейера, запущенных при создании кэша поверхности "
"перед рендерингом сцены. Эти компиляции будут проявляться в виде "
"подтормаживаний при загрузке сцены при первом запуске игры пользователем, "
"когда требуется конвейер."

msgid ""
"Number of pipeline compilations that were triggered while drawing the scene. "
"These compilations will show up as stutters during gameplay the first time a "
"user runs the game and the pipeline is required."
msgstr ""
"Количество компиляций конвейера, которые были запущены при отрисовке сцены. "
"Эти компиляции будут отображаться как подтормаживания во время игрового "
"процесса, когда пользователь впервые запускает игру и требуется конвейер."

msgid ""
"Number of pipeline compilations that were triggered to optimize the current "
"scene. These compilations are done in the background and should not cause any "
"stutters whatsoever."
msgstr ""
"Количество компиляций конвейера, которые были запущены для оптимизации "
"текущей сцены. Эти компиляции выполняются в фоновом режиме и не должны "
"вызывать никаких задержек."

msgid ""
"Number of active navigation maps in the [NavigationServer2D]. This also "
"includes the two empty default navigation maps created by World2D."
msgstr ""
"Количество активных навигационных карт в [NavigationServer2D]. Сюда также "
"входят две пустые навигационные карты по умолчанию, созданные World2D."

msgid "Number of active navigation regions in the [NavigationServer2D]."
msgstr "Количество активных навигационных регионов в [NavigationServer2D]."

msgid ""
"Number of active navigation agents processing avoidance in the "
"[NavigationServer2D]."
msgstr ""
"Количество активных навигационных агентов, обрабатывающих избегание в "
"[NavigationServer2D]."

msgid "Number of active navigation links in the [NavigationServer2D]."
msgstr "Количество активных навигационных ссылок в [NavigationServer2D]."

msgid "Number of navigation mesh polygons in the [NavigationServer2D]."
msgstr "Количество полигонов навигационной сетки в [NavigationServer2D]."

msgid "Number of navigation mesh polygon edges in the [NavigationServer2D]."
msgstr "Количество ребер полигонов навигационной сетки в [NavigationServer2D]."

msgid ""
"Number of navigation mesh polygon edges that were merged due to edge key "
"overlap in the [NavigationServer2D]."
msgstr ""
"Количество ребер полигонов навигационной сетки, которые были объединены из-за "
"перекрытия ключей ребер в [NavigationServer2D]."

msgid ""
"Number of polygon edges that are considered connected by edge proximity "
"[NavigationServer2D]."
msgstr ""
"Количество ребер полигона, которые считаются соединенными по близости ребер "
"[NavigationServer2D]."

msgid ""
"Number of navigation mesh polygon edges that could not be merged in the "
"[NavigationServer2D]. The edges still may be connected by edge proximity or "
"with links."
msgstr ""
"Количество ребер полигонов навигационной сетки, которые не удалось объединить "
"в [NavigationServer2D]. Ребра по-прежнему могут быть соединены близостью "
"ребер или ссылками."

msgid "Number of active navigation obstacles in the [NavigationServer2D]."
msgstr "Количество активных навигационных препятствий в [NavigationServer2D]."

msgid ""
"Number of active navigation maps in the [NavigationServer3D]. This also "
"includes the two empty default navigation maps created by World3D."
msgstr ""
"Количество активных навигационных карт в [NavigationServer3D]. Сюда также "
"входят две пустые навигационные карты по умолчанию, созданные World3D."

msgid "Number of active navigation regions in the [NavigationServer3D]."
msgstr "Количество активных навигационных регионов в [NavigationServer3D]."

msgid ""
"Number of active navigation agents processing avoidance in the "
"[NavigationServer3D]."
msgstr ""
"Количество активных навигационных агентов, обрабатывающих избегание в "
"[NavigationServer3D]."

msgid "Number of active navigation links in the [NavigationServer3D]."
msgstr "Количество активных навигационных ссылок в [NavigationServer3D]."

msgid "Number of navigation mesh polygons in the [NavigationServer3D]."
msgstr "Количество полигонов навигационной сетки в [NavigationServer3D]."

msgid "Number of navigation mesh polygon edges in the [NavigationServer3D]."
msgstr "Количество ребер полигонов навигационной сетки в [NavigationServer3D]."

msgid ""
"Number of navigation mesh polygon edges that were merged due to edge key "
"overlap in the [NavigationServer3D]."
msgstr ""
"Количество ребер полигонов навигационной сетки, которые были объединены из-за "
"перекрытия ключей ребер в [NavigationServer3D]."

msgid ""
"Number of polygon edges that are considered connected by edge proximity "
"[NavigationServer3D]."
msgstr ""
"Количество ребер полигона, которые считаются соединенными по близости ребер "
"[NavigationServer3D]."

msgid ""
"Number of navigation mesh polygon edges that could not be merged in the "
"[NavigationServer3D]. The edges still may be connected by edge proximity or "
"with links."
msgstr ""
"Количество ребер полигонов навигационной сетки, которые не удалось объединить "
"в [NavigationServer3D]. Ребра по-прежнему могут быть соединены близостью "
"ребер или связями."

msgid "Number of active navigation obstacles in the [NavigationServer3D]."
msgstr "Количество активных навигационных препятствий в [NavigationServer3D]."

msgid "Represents the size of the [enum Monitor] enum."
msgstr "Представляет размер перечисления [enum Monitor]."

msgid ""
"A [RigidBody2D]-derived node used to make [Bone2D]s in a [Skeleton2D] react "
"to physics."
msgstr ""
"Узел, производный от [RigidBody2D], используемый для того, чтобы заставить "
"[Bone2D] в [Skeleton2D] реагировать на физику."

msgid ""
"The [PhysicalBone2D] node is a [RigidBody2D]-based node that can be used to "
"make [Bone2D]s in a [Skeleton2D] react to physics.\n"
"[b]Note:[/b] To make the [Bone2D]s visually follow the [PhysicalBone2D] node, "
"use a [SkeletonModification2DPhysicalBones] modification on the [Skeleton2D] "
"parent.\n"
"[b]Note:[/b] The [PhysicalBone2D] node does not automatically create a "
"[Joint2D] node to keep [PhysicalBone2D] nodes together. They must be created "
"manually. For most cases, you want to use a [PinJoint2D] node. The "
"[PhysicalBone2D] node will automatically configure the [Joint2D] node once "
"it's been added as a child node."
msgstr ""
"Узел [PhysicalBone2D] — это узел на основе [RigidBody2D], который можно "
"использовать для того, чтобы [Bone2D] в [Skeleton2D] реагировали на физику.\n"
"[b]Примечание:[/b] Чтобы [Bone2D] визуально следовали за узлом "
"[PhysicalBone2D], используйте модификацию "
"[SkeletonModification2DPhysicalBones] в родительском [Skeleton2D].\n"
"[b]Примечание:[/b] Узел [PhysicalBone2D] не создает автоматически узел "
"[Joint2D] для сохранения узлов [PhysicalBone2D] вместе. Их необходимо "
"создавать вручную. В большинстве случаев следует использовать узел "
"[PinJoint2D]. Узел [PhysicalBone2D] автоматически настроит узел [Joint2D] "
"после его добавления в качестве дочернего узла."

msgid ""
"Returns the first [Joint2D] child node, if one exists. This is mainly a "
"helper function to make it easier to get the [Joint2D] that the "
"[PhysicalBone2D] is autoconfiguring."
msgstr ""
"Возвращает первый дочерний узел [Joint2D], если он существует. Это в основном "
"вспомогательная функция, упрощающая получение [Joint2D], который "
"[PhysicalBone2D] автоматически настраивает."

msgid ""
"Returns a boolean that indicates whether the [PhysicalBone2D] is running and "
"simulating using the Godot 2D physics engine. When [code]true[/code], the "
"PhysicalBone2D node is using physics."
msgstr ""
"Возвращает логическое значение, указывающее, запущен ли [PhysicalBone2D] и "
"выполняет ли он симуляцию с использованием физического движка Godot 2D. Когда "
"[code]true[/code], узел PhysicalBone2D использует физику."

msgid ""
"If [code]true[/code], the [PhysicalBone2D] will automatically configure the "
"first [Joint2D] child node. The automatic configuration is limited to setting "
"up the node properties and positioning the [Joint2D]."
msgstr ""
"Если [code]true[/code], [PhysicalBone2D] автоматически настроит первый "
"дочерний узел [Joint2D]. Автоматическая настройка ограничивается настройкой "
"свойств узла и позиционированием [Joint2D]."

msgid "The index of the [Bone2D] that this [PhysicalBone2D] should simulate."
msgstr "Индекс [Bone2D], который должен моделировать [PhysicalBone2D]."

msgid ""
"The [NodePath] to the [Bone2D] that this [PhysicalBone2D] should simulate."
msgstr "[NodePath] к [Bone2D], который должен имитировать [PhysicalBone2D]."

msgid ""
"If [code]true[/code], the [PhysicalBone2D] will keep the transform of the "
"bone it is bound to when simulating physics."
msgstr ""
"Если [code]true[/code], [PhysicalBone2D] сохранит преобразование кости, к "
"которой он привязан, при моделировании физики."

msgid ""
"If [code]true[/code], the [PhysicalBone2D] will start simulating using "
"physics. If [code]false[/code], the [PhysicalBone2D] will follow the "
"transform of the [Bone2D] node.\n"
"[b]Note:[/b] To have the [Bone2D]s visually follow the [PhysicalBone2D], use "
"a [SkeletonModification2DPhysicalBones] modification on the [Skeleton2D] node "
"with the [Bone2D] nodes."
msgstr ""
"Если [code]true[/code], [PhysicalBone2D] начнет симуляцию с использованием "
"физики. Если [code]false[/code], [PhysicalBone2D] будет следовать "
"преобразованию узла [Bone2D].\n"
"[b]Примечание:[/b] Чтобы [Bone2D] визуально следовали за [PhysicalBone2D], "
"используйте модификацию [SkeletonModification2DPhysicalBones] на узле "
"[Skeleton2D] с узлами [Bone2D]."

msgid "A physics body used to make bones in a [Skeleton3D] react to physics."
msgstr ""
"Физическое тело, используемое для того, чтобы кости в [Skeleton3D] "
"реагировали на физику."

msgid ""
"The [PhysicalBone3D] node is a physics body that can be used to make bones in "
"a [Skeleton3D] react to physics.\n"
"[b]Note:[/b] In order to detect physical bones with raycasts, the [member "
"SkeletonModifier3D.active] property of the parent [PhysicalBoneSimulator3D] "
"must be [code]true[/code] and the [Skeleton3D]'s bone must be assigned to "
"[PhysicalBone3D] correctly; it means that [method get_bone_id] should return "
"a valid id ([code]>= 0[/code])."
msgstr ""
"Узел [PhysicalBone3D] — это физическое тело, которое можно использовать для "
"того, чтобы кости в [Skeleton3D] реагировали на физику.\n"
"[b]Примечание:[/b] Для обнаружения физических костей с помощью raycasts "
"свойство [member SkeletonModifier3D.active] родительского "
"[PhysicalBoneSimulator3D] должно быть [code]true[/code], а кость [Skeleton3D] "
"должна быть правильно назначена [PhysicalBone3D]; это означает, что [method "
"get_bone_id] должен возвращать действительный идентификатор ([code]>= 0[/"
"code])."

msgid ""
"Called during physics processing, allowing you to read and safely modify the "
"simulation state for the object. By default, it is called before the standard "
"force integration, but the [member custom_integrator] property allows you to "
"disable the standard force integration and do fully custom force integration "
"for a body."
msgstr ""
"Вызывается во время обработки физики, позволяя вам читать и безопасно "
"изменять состояние симуляции для объекта. По умолчанию он вызывается перед "
"стандартной интеграцией силы, но свойство [member custom_integrator] "
"позволяет вам отключить стандартную интеграцию силы и выполнить полностью "
"настраиваемую интеграцию силы для тела."

msgid ""
"Applies a directional impulse without affecting rotation.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_integrate_forces\" functions "
"otherwise).\n"
"This is equivalent to using [method apply_impulse] at the body's center of "
"mass."
msgstr ""
"Применяет направленный импульс, не влияя на вращение.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_integrate_forces\").\n"
"Это эквивалентно использованию [method apply_impulse] в центре масс тела."

msgid ""
"Applies a positioned impulse to the PhysicsBone3D.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_integrate_forces\" functions "
"otherwise).\n"
"[param position] is the offset from the PhysicsBone3D origin in global "
"coordinates."
msgstr ""
"Применяет позиционированный импульс к PhysicsBone3D.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_integrate_forces\").\n"
"[param position] — это смещение от начала координат PhysicsBone3D в "
"глобальных координатах."

msgid "Returns the unique identifier of the PhysicsBone3D."
msgstr "Возвращает уникальный идентификатор PhysicsBone3D."

msgid ""
"Returns [code]true[/code] if the PhysicsBone3D is allowed to simulate physics."
msgstr ""
"Возвращает [code]true[/code], если PhysicsBone3D разрешено моделировать "
"физику."

msgid ""
"Returns [code]true[/code] if the PhysicsBone3D is currently simulating "
"physics."
msgstr ""
"Возвращает [code]true[/code], если PhysicsBone3D в данный момент моделирует "
"физику."

msgid ""
"Damps the body's rotation. By default, the body will use the [member "
"ProjectSettings.physics/3d/default_angular_damp] project setting or any value "
"override set by an [Area3D] the body is in. Depending on [member "
"angular_damp_mode], you can set [member angular_damp] to be added to or to "
"replace the body's damping value.\n"
"See [member ProjectSettings.physics/3d/default_angular_damp] for more details "
"about damping."
msgstr ""
"Демпфирует вращение тела. По умолчанию тело будет использовать настройку "
"проекта [member ProjectSettings.physics/3d/default_angular_damp] или любое "
"переопределение значения, заданное [Area3D], в котором находится тело. В "
"зависимости от [member angular_damp_mode] вы можете задать [member "
"angular_damp] для добавления или замены значения демпфирования тела.\n"
"Подробнее о демпфировании см. в [member ProjectSettings.physics/3d/"
"default_angular_damp]."

msgid "Defines how [member angular_damp] is applied."
msgstr "Определяет, как применяется [member angular_damp]."

msgid "The PhysicalBone3D's rotational velocity in [i]radians[/i] per second."
msgstr "Скорость вращения PhysicalBone3D в [i]радианах[/i] в секунду."

msgid "Sets the body's transform."
msgstr "Устанавливает трансформацию тела."

msgid ""
"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
"[code]1[/code] (full bounciness).\n"
"[b]Note:[/b] Even with [member bounce] set to [code]1.0[/code], some energy "
"will be lost over time due to linear and angular damping. To have a "
"[PhysicalBone3D] that preserves all its energy over time, set [member bounce] "
"to [code]1.0[/code], [member linear_damp_mode] to [constant "
"DAMP_MODE_REPLACE], [member linear_damp] to [code]0.0[/code], [member "
"angular_damp_mode] to [constant DAMP_MODE_REPLACE], and [member angular_damp] "
"to [code]0.0[/code]."
msgstr ""
"Упругость тела. Значения варьируются от [code]0[/code] (без отскока) до "
"[code]1[/code] (полная упругость).\n"
"[b]Примечание:[/b] Даже если [member bounce] установлен на [code]1.0[/code], "
"часть энергии будет потеряна со временем из-за линейного и углового "
"затухания. Чтобы иметь [PhysicalBone3D], который сохраняет всю свою энергию с "
"течением времени, установите [member bounce] на [code]1.0[/code], [member "
"linear_damp_mode] на [constant DAMP_MODE_REPLACE], [member linear_damp] на "
"[code]0.0[/code], [member angular_damp_mode] на [constant DAMP_MODE_REPLACE] "
"и [member angular_damp] на [code]0.0[/code]."

msgid ""
"If [code]true[/code], the body is deactivated when there is no movement, so "
"it will not take part in the simulation until it is awakened by an external "
"force."
msgstr ""
"Если [code]true[/code], тело деактивируется при отсутствии движения, поэтому "
"оно не будет участвовать в симуляции, пока не будет разбужено внешней силой."

msgid ""
"If [code]true[/code], the standard force integration (like gravity or "
"damping) will be disabled for this body. Other than collision response, the "
"body will only move as determined by the [method _integrate_forces] method, "
"if that virtual method is overridden.\n"
"Setting this property will call the method [method "
"PhysicsServer3D.body_set_omit_force_integration] internally."
msgstr ""
"Если [code]true[/code], стандартная интеграция силы (например, гравитация или "
"демпфирование) будет отключена для этого тела. За исключением реакции на "
"столкновение, тело будет двигаться только так, как определено методом [method "
"_integrate_forces], если этот виртуальный метод переопределен.\n"
"Установка этого свойства вызовет метод [method "
"PhysicsServer3D.body_set_omit_force_integration] внутренне."

msgid ""
"The body's friction, from [code]0[/code] (frictionless) to [code]1[/code] "
"(max friction)."
msgstr ""
"Трение тела от [code]0[/code] (отсутствие трения) до [code]1[/code] "
"(максимальное трение)."

msgid ""
"This is multiplied by [member ProjectSettings.physics/3d/default_gravity] to "
"produce this body's gravity. For example, a value of [code]1.0[/code] will "
"apply normal gravity, [code]2.0[/code] will apply double the gravity, and "
"[code]0.5[/code] will apply half the gravity to this body."
msgstr ""
"Это умножается на [member ProjectSettings.physics/3d/default_gravity], чтобы "
"получить гравитацию этого тела. Например, значение [code]1.0[/code] применит "
"нормальную гравитацию, [code]2.0[/code] применит двойную гравитацию, а "
"[code]0.5[/code] применит половину гравитации к этому телу."

msgid "Sets the joint's transform."
msgstr "Устанавливает преобразование сочленения."

msgid "Sets the joint's rotation in radians."
msgstr "Задает угол поворота сочленения в радианах."

msgid "Sets the joint type."
msgstr "Устанавливает тип соединения."

msgid ""
"Damps the body's movement. By default, the body will use [member "
"ProjectSettings.physics/3d/default_linear_damp] or any value override set by "
"an [Area3D] the body is in. Depending on [member linear_damp_mode], [member "
"linear_damp] may be added to or replace the body's damping value.\n"
"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
"about damping."
msgstr ""
"Демпфирует движение тела. По умолчанию тело будет использовать [member "
"ProjectSettings.physics/3d/default_linear_damp] или любое переопределение "
"значения, заданное [Area3D], в котором находится тело. В зависимости от "
"[member linear_damp_mode], [member linear_damp] может быть добавлен или "
"заменен значением демпфирования тела.\n"
"Подробнее о демпфировании см. [member ProjectSettings.physics/3d/"
"default_linear_damp]."

msgid "Defines how [member linear_damp] is applied."
msgstr "Определяет, как применяется [member linear_damp]."

msgid ""
"The body's linear velocity in units per second. Can be used sporadically, but "
"[b]don't set this every frame[/b], because physics may run in another thread "
"and runs at a different granularity. Use [method _integrate_forces] as your "
"process loop for precise control of the body state."
msgstr ""
"Линейная скорость тела в единицах в секунду. Может использоваться "
"спорадически, но [b]не устанавливайте это в каждом кадре[/b], потому что "
"физика может работать в другом потоке и работать с другой гранулярностью. "
"Используйте [method _integrate_forces] в качестве цикла процесса для точного "
"управления состоянием тела."

msgid "The body's mass."
msgstr "Масса тела."

msgid ""
"In this mode, the body's damping value is added to any value set in areas or "
"the default value."
msgstr ""
"В этом режиме значение демпфирования тела добавляется к любому значению, "
"заданному в областях, или к значению по умолчанию."

msgid ""
"In this mode, the body's damping value replaces any value set in areas or the "
"default value."
msgstr ""
"В этом режиме значение демпфирования тела заменяет любое значение, заданное в "
"областях, или значение по умолчанию."

msgid "No joint is applied to the PhysicsBone3D."
msgstr "К PhysicsBone3D не применяется ни одного сочленения."

msgid "A pin joint is applied to the PhysicsBone3D."
msgstr "К PhysicsBone3D применено штифтовое соединение."

msgid "A cone joint is applied to the PhysicsBone3D."
msgstr "К PhysicsBone3D применено коническое соединение."

msgid "A hinge joint is applied to the PhysicsBone3D."
msgstr "К PhysicsBone3D применено шарнирное соединение."

msgid "A slider joint is applied to the PhysicsBone3D."
msgstr "К PhysicsBone3D применено скользящее соединение."

msgid "A 6 degrees of freedom joint is applied to the PhysicsBone3D."
msgstr "К PhysicsBone3D применено соединение с 6 степенями свободы."

msgid ""
"Node that can be the parent of [PhysicalBone3D] and can apply the simulation "
"results to [Skeleton3D]."
msgstr ""
"Узел, который может быть родительским для [PhysicalBone3D] и может применять "
"результаты моделирования к [Skeleton3D]."

msgid ""
"Returns a boolean that indicates whether the [PhysicalBoneSimulator3D] is "
"running and simulating."
msgstr ""
"Возвращает логическое значение, указывающее, запущен ли "
"[PhysicalBoneSimulator3D] и выполняет ли он моделирование."

msgid ""
"Adds a collision exception to the physical bone.\n"
"Works just like the [RigidBody3D] node."
msgstr ""
"Добавляет исключение столкновения к физической кости.\n"
"Работает так же, как узел [RigidBody3D]."

msgid ""
"Removes a collision exception to the physical bone.\n"
"Works just like the [RigidBody3D] node."
msgstr ""
"Удаляет исключение столкновения с физической костью.\n"
"Работает так же, как узел [RigidBody3D]."

msgid ""
"Tells the [PhysicalBone3D] nodes in the Skeleton to start simulating and "
"reacting to the physics world.\n"
"Optionally, a list of bone names can be passed-in, allowing only the passed-"
"in bones to be simulated."
msgstr ""
"Сообщает узлам [PhysicalBone3D] в скелете начать симуляцию и реагировать на "
"физический мир.\n"
"При желании можно передать список имен костей, что позволит моделировать "
"только переданные кости."

msgid "Tells the [PhysicalBone3D] nodes in the Skeleton to stop simulating."
msgstr ""
"Сообщает узлам [PhysicalBone3D] в скелете о необходимости прекратить "
"симуляцию."

msgid ""
"A material that defines a sky for a [Sky] resource by a set of physical "
"properties."
msgstr ""
"Материал, определяющий небо для ресурса [Sky] с помощью набора физических "
"свойств."

msgid ""
"The [PhysicalSkyMaterial] uses the Preetham analytic daylight model to draw a "
"sky based on physical properties. This results in a substantially more "
"realistic sky than the [ProceduralSkyMaterial], but it is slightly slower and "
"less flexible.\n"
"The [PhysicalSkyMaterial] only supports one sun. The color, energy, and "
"direction of the sun are taken from the first [DirectionalLight3D] in the "
"scene tree."
msgstr ""
"[PhysicalSkyMaterial] использует аналитическую модель дневного света Preetham "
"для рисования неба на основе физических свойств. Это приводит к существенно "
"более реалистичному небу, чем [ProceduralSkyMaterial], но он немного "
"медленнее и менее гибкий.\n"
"[PhysicalSkyMaterial] поддерживает только одно солнце. Цвет, энергия и "
"направление солнца берутся из первого [DirectionalLight3D] в дереве сцены."

msgid ""
"Modulates the [Color] on the bottom half of the sky to represent the ground."
msgstr "Изменяет [Color] в нижней половине неба, чтобы отобразить землю."

msgid ""
"Controls the strength of [url=https://en.wikipedia.org/wiki/"
"Mie_scattering]Mie scattering[/url] for the sky. Mie scattering results from "
"light colliding with larger particles (like water). On earth, Mie scattering "
"results in a whitish color around the sun and horizon."
msgstr ""
"Управляет силой [url=https://en.wikipedia.org/wiki/Mie_scattering]Mie "
"scattering[/url] для неба. Рассеивание Ми (Mie scattering) происходит при "
"столкновении света с более крупными частицами (например, водой). На Земле "
"рассеивание Ми приводит к появлению белесого цвета вокруг солнца и горизонта."

msgid ""
"Controls the [Color] of the [url=https://en.wikipedia.org/wiki/"
"Mie_scattering]Mie scattering[/url] effect. While not physically accurate, "
"this allows for the creation of alien-looking planets."
msgstr ""
"Управляет [Color] эффекта [url=https://en.wikipedia.org/wiki/"
"Mie_scattering]рассеивания Ми[/url]. Хотя это и не является физически точным, "
"это позволяет создавать планеты, похожие на инопланетян."

msgid ""
"Controls the direction of the [url=https://en.wikipedia.org/wiki/"
"Mie_scattering]Mie scattering[/url]. A value of [code]1[/code] means that "
"when light hits a particle it's passing through straight forward. A value of "
"[code]-1[/code] means that all light is scatter backwards."
msgstr ""
"Управляет направлением [url=https://en.wikipedia.org/wiki/Mie_scattering]Mie "
"scattering[/url]. Значение [code]1[/code] означает, что когда свет попадает "
"на частицу, он проходит прямо вперед. Значение [code]-1[/code] означает, что "
"весь свет рассеивается назад."

msgid ""
"[Texture2D] for the night sky. This is added to the sky, so if it is bright "
"enough, it may be visible during the day."
msgstr ""
"[Texture2D] для ночного неба. Это добавляется к небу, так что если оно "
"достаточно яркое, то может быть видно днем."

msgid ""
"Controls the strength of the [url=https://en.wikipedia.org/wiki/"
"Rayleigh_scattering]Rayleigh scattering[/url]. Rayleigh scattering results "
"from light colliding with small particles. It is responsible for the blue "
"color of the sky."
msgstr ""
"Управляет силой [url=https://en.wikipedia.org/wiki/"
"Rayleigh_scattering]Рэлеевского рассеяния[/url]. Рэлеевское рассеяние "
"возникает при столкновении света с мелкими частицами. Оно отвечает за голубой "
"цвет неба."

msgid ""
"Controls the [Color] of the [url=https://en.wikipedia.org/wiki/"
"Rayleigh_scattering]Rayleigh scattering[/url]. While not physically accurate, "
"this allows for the creation of alien-looking planets. For example, setting "
"this to a red [Color] results in a Mars-looking atmosphere with a "
"corresponding blue sunset."
msgstr ""
"Управляет [Color] [url=https://en.wikipedia.org/wiki/"
"Rayleigh_scattering]рэлеевского рассеяния[/url]. Хотя это и не является "
"физически точным, это позволяет создавать планеты, похожие на инопланетян. "
"Например, если установить для этого параметра красный [Color], то получится "
"атмосфера, похожая на Марс, с соответствующим синим закатом."

msgid ""
"Sets the size of the sun disk. Default value is based on Sol's perceived size "
"from Earth."
msgstr ""
"Устанавливает размер солнечного диска. Значение по умолчанию основано на "
"воспринимаемом размере Солнца с Земли."

msgid ""
"Sets the thickness of the atmosphere. High turbidity creates a foggy-looking "
"atmosphere, while a low turbidity results in a clearer atmosphere."
msgstr ""
"Устанавливает толщину атмосферы. Высокая мутность создает туманную атмосферу, "
"а низкая мутность приводит к более чистой атмосфере."

msgid ""
"If [code]true[/code], enables debanding. Debanding adds a small amount of "
"noise which helps reduce banding that appears from the smooth changes in "
"color in the sky."
msgstr ""
"Если [code]true[/code], включается размытие полос. Размытие полос добавляет "
"небольшое количество шума, что помогает уменьшить полосатость, которая "
"появляется из-за плавных изменений цвета в небе."

msgid "Abstract base class for 2D game objects affected by physics."
msgstr ""
"Абстрактный базовый класс для 2D-игровых объектов, на которые влияет физика."

msgid ""
"[PhysicsBody2D] is an abstract base class for 2D game objects affected by "
"physics. All 2D physics bodies inherit from it."
msgstr ""
"[PhysicsBody2D] — абстрактный базовый класс для 2D-игровых объектов, на "
"которые влияет физика. Все 2D-физические тела наследуются от него."

msgid "Adds a body to the list of bodies that this body can't collide with."
msgstr ""
"Добавляет тело в список тел, с которыми данное тело не может столкнуться."

msgid ""
"Returns an array of nodes that were added as collision exceptions for this "
"body."
msgstr ""
"Возвращает массив узлов, которые были добавлены как исключения столкновений "
"для этого тела."

msgid ""
"Returns the gravity vector computed from all sources that can affect the "
"body, including all gravity overrides from [Area2D] nodes and the global "
"world gravity."
msgstr ""
"Возвращает вектор гравитации, вычисленный из всех источников, которые могут "
"влиять на тело, включая все переопределения гравитации из узлов [Area2D] и "
"глобальную мировую гравитацию."

msgid ""
"Moves the body along the vector [param motion]. In order to be frame rate "
"independent in [method Node._physics_process] or [method Node._process], "
"[param motion] should be computed using [code]delta[/code].\n"
"Returns a [KinematicCollision2D], which contains information about the "
"collision when stopped, or when touching another body along the motion.\n"
"If [param test_only] is [code]true[/code], the body does not move but the "
"would-be collision information is given.\n"
"[param safe_margin] is the extra margin used for collision recovery (see "
"[member CharacterBody2D.safe_margin] for more details).\n"
"If [param recovery_as_collision] is [code]true[/code], any depenetration from "
"the recovery phase is also reported as a collision; this is used e.g. by "
"[CharacterBody2D] for improving floor detection during floor snapping."
msgstr ""
"Перемещает тело вдоль вектора [param motion]. Чтобы не зависеть от частоты "
"кадров в [method Node._physics_process] или [method Node._process], [param "
"motion] следует вычислять с помощью [code]delta[/code].\n"
"Возвращает [KinematicCollision2D], который содержит информацию о столкновении "
"при остановке или при касании другого тела по ходу движения.\n"
"Если [param test_only] равен [code]true[/code], тело не движется, но "
"предоставляется информация о возможном столкновении.\n"
"[param safe_margin] — это дополнительный запас, используемый для "
"восстановления после столкновения (см. [member CharacterBody2D.safe_margin] "
"для получения более подробной информации).\n"
"Если [param recovery_as_collision] равен [code]true[/code], любое отклонение "
"от фазы восстановления также сообщается как столкновение; это используется, "
"например, [CharacterBody2D] для улучшения обнаружения пола во время привязки "
"к полу."

msgid ""
"Removes a body from the list of bodies that this body can't collide with."
msgstr ""
"Удаляет тело из списка тел, с которыми данное тело не может столкнуться."

msgid ""
"Checks for collisions without moving the body. In order to be frame rate "
"independent in [method Node._physics_process] or [method Node._process], "
"[param motion] should be computed using [code]delta[/code].\n"
"Virtually sets the node's position, scale and rotation to that of the given "
"[Transform2D], then tries to move the body along the vector [param motion]. "
"Returns [code]true[/code] if a collision would stop the body from moving "
"along the whole path.\n"
"[param collision] is an optional object of type [KinematicCollision2D], which "
"contains additional information about the collision when stopped, or when "
"touching another body along the motion.\n"
"[param safe_margin] is the extra margin used for collision recovery (see "
"[member CharacterBody2D.safe_margin] for more details).\n"
"If [param recovery_as_collision] is [code]true[/code], any depenetration from "
"the recovery phase is also reported as a collision; this is useful for "
"checking whether the body would [i]touch[/i] any other bodies."
msgstr ""
"Проверяет наличие столкновений без перемещения тела. Чтобы не зависеть от "
"частоты кадров в [method Node._physics_process] или [method Node._process], "
"[param motion] следует вычислять с помощью [code]delta[/code].\n"
"Виртуально устанавливает положение, масштаб и поворот узла в соответствии с "
"заданным [Transform2D], затем пытается переместить тело по вектору [param "
"motion]. Возвращает [code]true[/code], если столкновение остановит движение "
"тела по всему пути.\n"
"[param collision] — необязательный объект типа [KinematicCollision2D], "
"который содержит дополнительную информацию о столкновении при остановке или "
"при касании другого тела по ходу движения.\n"
"[param safe_margin] — дополнительный запас, используемый для восстановления "
"при столкновении (подробнее см. в [member CharacterBody2D.safe_margin]).\n"
"Если [param recovery_as_collision] имеет значение [code]true[/code], любое "
"отклонение от фазы восстановления также считается столкновением; это полезно "
"для проверки того, будет ли тело [i]касаться[/i] других тел."

msgid "Abstract base class for 3D game objects affected by physics."
msgstr ""
"Абстрактный базовый класс для игровых 3D-объектов, на которые влияет физика."

msgid ""
"[PhysicsBody3D] is an abstract base class for 3D game objects affected by "
"physics. All 3D physics bodies inherit from it.\n"
"[b]Warning:[/b] With a non-uniform scale, this node will likely not behave as "
"expected. It is advised to keep its scale the same on all axes and adjust its "
"collision shape(s) instead."
msgstr ""
"[PhysicsBody3D] — абстрактный базовый класс для 3D-объектов игры, на которые "
"влияет физика. Все 3D-физические тела наследуются от него.\n"
"[b]Предупреждение:[/b] При неравномерном масштабе этот узел, скорее всего, "
"будет вести себя не так, как ожидалось. Рекомендуется сохранять его масштаб "
"одинаковым по всем осям и вместо этого корректировать его форму(ы) "
"столкновения."

msgid ""
"Returns [code]true[/code] if the specified linear or rotational [param axis] "
"is locked."
msgstr ""
"Возвращает [code]true[/code], если указанная линейная или вращательная [param "
"axis] заблокирована."

msgid ""
"Returns the gravity vector computed from all sources that can affect the "
"body, including all gravity overrides from [Area3D] nodes and the global "
"world gravity."
msgstr ""
"Возвращает вектор гравитации, вычисленный из всех источников, которые могут "
"влиять на тело, включая все переопределения гравитации из узлов [Area3D] и "
"глобальную мировую гравитацию."

msgid ""
"Moves the body along the vector [param motion]. In order to be frame rate "
"independent in [method Node._physics_process] or [method Node._process], "
"[param motion] should be computed using [code]delta[/code].\n"
"The body will stop if it collides. Returns a [KinematicCollision3D], which "
"contains information about the collision when stopped, or when touching "
"another body along the motion.\n"
"If [param test_only] is [code]true[/code], the body does not move but the "
"would-be collision information is given.\n"
"[param safe_margin] is the extra margin used for collision recovery (see "
"[member CharacterBody3D.safe_margin] for more details).\n"
"If [param recovery_as_collision] is [code]true[/code], any depenetration from "
"the recovery phase is also reported as a collision; this is used e.g. by "
"[CharacterBody3D] for improving floor detection during floor snapping.\n"
"[param max_collisions] allows to retrieve more than one collision result."
msgstr ""
"Перемещает тело вдоль вектора [param motion]. Чтобы не зависеть от частоты "
"кадров в [method Node._physics_process] или [method Node._process], [param "
"motion] следует вычислять с помощью [code]delta[/code].\n"
"Тело остановится, если столкнется. Возвращает [KinematicCollision3D], который "
"содержит информацию о столкновении при остановке или при касании другого тела "
"по ходу движения.\n"
"Если [param test_only] равен [code]true[/code], тело не движется, но "
"предоставляется информация о возможном столкновении.\n"
"[param safe_margin] — это дополнительный запас, используемый для "
"восстановления после столкновения (см. [member CharacterBody3D.safe_margin] "
"для получения более подробной информации).\n"
"Если [param recovery_as_collision] равен [code]true[/code], любое отклонение "
"от фазы восстановления также сообщается как столкновение; это используется, "
"например, от [CharacterBody3D] для улучшения обнаружения пола во время "
"привязки к полу.\n"
"[param max_collisions] позволяет получить более одного результата "
"столкновения."

msgid ""
"Locks or unlocks the specified linear or rotational [param axis] depending on "
"the value of [param lock]."
msgstr ""
"Блокирует или разблокирует указанную линейную или вращательную [param axis] в "
"зависимости от значения [param lock]."

msgid ""
"Checks for collisions without moving the body. In order to be frame rate "
"independent in [method Node._physics_process] or [method Node._process], "
"[param motion] should be computed using [code]delta[/code].\n"
"Virtually sets the node's position, scale and rotation to that of the given "
"[Transform3D], then tries to move the body along the vector [param motion]. "
"Returns [code]true[/code] if a collision would stop the body from moving "
"along the whole path.\n"
"[param collision] is an optional object of type [KinematicCollision3D], which "
"contains additional information about the collision when stopped, or when "
"touching another body along the motion.\n"
"[param safe_margin] is the extra margin used for collision recovery (see "
"[member CharacterBody3D.safe_margin] for more details).\n"
"If [param recovery_as_collision] is [code]true[/code], any depenetration from "
"the recovery phase is also reported as a collision; this is useful for "
"checking whether the body would [i]touch[/i] any other bodies.\n"
"[param max_collisions] allows to retrieve more than one collision result."
msgstr ""
"Проверяет наличие столкновений без перемещения тела. Чтобы не зависеть от "
"частоты кадров в [method Node._physics_process] или [method Node._process], "
"[param motion] следует вычислять с помощью [code]delta[/code].\n"
"Виртуально устанавливает положение, масштаб и поворот узла в соответствии с "
"заданным [Transform3D], затем пытается переместить тело по вектору [param "
"motion]. Возвращает [code]true[/code], если столкновение остановит движение "
"тела по всему пути.\n"
"[param collision] — необязательный объект типа [KinematicCollision3D], "
"который содержит дополнительную информацию о столкновении при остановке или "
"при касании другого тела по ходу движения.\n"
"[param safe_margin] — дополнительный запас, используемый для восстановления "
"столкновений (подробнее см. в [member CharacterBody3D.safe_margin]).\n"
"Если [param recovery_as_collision] равен [code]true[/code], любое отклонение "
"от фазы восстановления также сообщается как столкновение; это полезно для "
"проверки того, будет ли тело [i]касаться[/i] других тел. \n"
"[param max_collisions] позволяет получить более одного результата "
"столкновения."

msgid "Lock the body's rotation in the X axis."
msgstr "Зафиксируйте вращение тела по оси X."

msgid "Lock the body's rotation in the Y axis."
msgstr "Зафиксируйте вращение тела по оси Y."

msgid "Lock the body's rotation in the Z axis."
msgstr "Зафиксируйте вращение тела по оси Z."

msgid "Lock the body's linear movement in the X axis."
msgstr "Зафиксируйте линейное движение тела по оси X."

msgid "Lock the body's linear movement in the Y axis."
msgstr "Зафиксируйте линейное движение тела по оси Y."

msgid "Lock the body's linear movement in the Z axis."
msgstr "Зафиксируйте линейное движение тела по оси Z."

msgid "Provides direct access to a physics body in the [PhysicsServer2D]."
msgstr "Предоставляет прямой доступ к физическому телу в [PhysicsServer2D]."

msgid ""
"Provides direct access to a physics body in the [PhysicsServer2D], allowing "
"safe changes to physics properties. This object is passed via the direct "
"state callback of [RigidBody2D], and is intended for changing the direct "
"state of that body. See [method RigidBody2D._integrate_forces]."
msgstr ""
"Предоставляет прямой доступ к физическому телу в [PhysicsServer2D], позволяя "
"безопасно изменять физические свойства. Этот объект передается через прямой "
"обратный вызов состояния [RigidBody2D] и предназначен для изменения прямого "
"состояния этого тела. См. [method RigidBody2D._integrate_forces]."

msgid "Ray-casting"
msgstr "Трассировка лучей"

msgid ""
"Adds a constant directional force without affecting rotation that keeps being "
"applied over time until cleared with [code]constant_force = Vector2(0, 0)[/"
"code].\n"
"This is equivalent to using [method add_constant_force] at the body's center "
"of mass."
msgstr ""
"Добавляет постоянную направленную силу, не влияя на вращение, которая "
"продолжает применяться с течением времени, пока не будет очищена с помощью "
"[code]constant_force = Vector2(0, 0)[/code]. \n"
"Это эквивалентно использованию [method add_constant_force] в центре масс тела."

msgid ""
"Adds a constant positioned force to the body that keeps being applied over "
"time until cleared with [code]constant_force = Vector2(0, 0)[/code].\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Добавляет к телу постоянную позиционную силу, которая продолжает применяться "
"с течением времени, пока не будет очищена с помощью [code]constant_force = "
"Vector2(0, 0)[/code].\n"
"[param position] — это смещение от начала координат тела в глобальных "
"координатах."

msgid ""
"Adds a constant rotational force without affecting position that keeps being "
"applied over time until cleared with [code]constant_torque = 0[/code]."
msgstr ""
"Добавляет постоянную вращательную силу, не влияя на положение, которая "
"продолжает применяться с течением времени, пока не будет очищена с помощью "
"[code]constant_torque = 0[/code]."

msgid ""
"Applies a directional force without affecting rotation. A force is time "
"dependent and meant to be applied every physics update.\n"
"This is equivalent to using [method apply_force] at the body's center of mass."
msgstr ""
"Применяет направленную силу, не влияя на вращение. Сила зависит от времени и "
"должна применяться при каждом обновлении физики. \n"
"Это эквивалентно использованию [method apply_force] в центре масс тела."

msgid ""
"Applies a directional impulse without affecting rotation.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"This is equivalent to using [method apply_impulse] at the body's center of "
"mass."
msgstr ""
"Применяет направленный импульс, не влияя на вращение.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\").\n"
"Это эквивалентно использованию [method apply_impulse] в центре масс тела."

msgid ""
"Applies a positioned force to the body. A force is time dependent and meant "
"to be applied every physics update.\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Применяет позиционированную силу к телу. Сила зависит от времени и должна "
"применяться при каждом обновлении физики.\n"
"[param position] — это смещение от начала координат тела в глобальных "
"координатах."

msgid ""
"Applies a positioned impulse to the body.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Применяет позиционированный импульс к телу.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\").\n"
"[param position] — это смещение от начала координат тела в глобальных "
"координатах."

msgid ""
"Applies a rotational force without affecting position. A force is time "
"dependent and meant to be applied every physics update.\n"
"[b]Note:[/b] [member inverse_inertia] is required for this to work. To have "
"[member inverse_inertia], an active [CollisionShape2D] must be a child of the "
"node, or you can manually set [member inverse_inertia]."
msgstr ""
"Применяет вращательную силу, не влияя на положение. Сила зависит от времени и "
"должна применяться при каждом обновлении физики.\n"
"[b]Примечание:[/b] для работы требуется [member inverse_inertia]. Чтобы иметь "
"[member inverse_inertia], активный [CollisionShape2D] должен быть дочерним "
"элементом узла, или вы можете вручную задать [member inverse_inertia]."

msgid ""
"Applies a rotational impulse to the body without affecting the position.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[b]Note:[/b] [member inverse_inertia] is required for this to work. To have "
"[member inverse_inertia], an active [CollisionShape2D] must be a child of the "
"node, or you can manually set [member inverse_inertia]."
msgstr ""
"Применяет вращательный импульс к телу, не влияя на положение.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\").\n"
"[b]Примечание:[/b] для работы требуется [member inverse_inertia]. Чтобы иметь "
"[member inverse_inertia], активный [CollisionShape2D] должен быть дочерним "
"элементом узла, или вы можете вручную задать [member inverse_inertia]."

msgid ""
"Returns the body's total constant positional forces applied during each "
"physics update.\n"
"See [method add_constant_force] and [method add_constant_central_force]."
msgstr ""
"Возвращает общие постоянные позиционные силы тела, применяемые во время "
"каждого обновления физики.\n"
"См. [method add_constant_force] и [method add_constant_central_force]."

msgid ""
"Returns the body's total constant rotational forces applied during each "
"physics update.\n"
"See [method add_constant_torque]."
msgstr ""
"Возвращает общие постоянные вращательные силы тела, применяемые во время "
"каждого обновления физики.\n"
"См. [method add_constant_torque]."

msgid "Returns the collider's [RID]."
msgstr "Возвращает [RID] коллайдера (collider)."

msgid "Returns the collider's object id."
msgstr "Возвращает идентификатор объекта коллайдера."

msgid ""
"Returns the collider object. This depends on how it was created (will return "
"a scene node if such was used to create it)."
msgstr ""
"Возвращает объект коллайдера. Это зависит от того, как он был создан "
"(возвращает узел сцены, если таковой использовался для его создания)."

msgid ""
"Returns the position of the contact point on the collider in the global "
"coordinate system."
msgstr ""
"Возвращает положение точки контакта на коллайдере в глобальной системе "
"координат."

msgid "Returns the collider's shape index."
msgstr "Возвращает индекс формы коллайдера."

msgid "Returns the velocity vector at the collider's contact point."
msgstr "Возвращает вектор скорости в точке контакта коллайдера."

msgid ""
"Returns the number of contacts this body has with other bodies.\n"
"[b]Note:[/b] By default, this returns 0 unless bodies are configured to "
"monitor contacts. See [member RigidBody2D.contact_monitor]."
msgstr ""
"Возвращает количество контактов этого тела с другими телами.\n"
"[b]Примечание:[/b] По умолчанию возвращается 0, если тела не настроены на "
"мониторинг контактов. См. [member RigidBody2D.contact_monitor]."

msgid "Returns the impulse created by the contact."
msgstr "Возвращает импульс, созданный контактом."

msgid "Returns the local normal at the contact point."
msgstr "Возвращает локальную нормаль в точке контакта."

msgid ""
"Returns the position of the contact point on the body in the global "
"coordinate system."
msgstr ""
"Возвращает положение точки контакта на теле в глобальной системе координат."

msgid "Returns the local shape index of the collision."
msgstr "Возвращает локальный индекс формы столкновения."

msgid "Returns the velocity vector at the body's contact point."
msgstr "Возвращает вектор скорости в точке контакта тела."

msgid "Returns the current state of the space, useful for queries."
msgstr "Возвращает текущее состояние пространства, полезно для запросов."

msgid ""
"Returns the body's velocity at the given relative position, including both "
"translation and rotation."
msgstr ""
"Возвращает скорость тела в заданном относительном положении, включая как "
"перемещение, так и вращение."

msgid ""
"Updates the body's linear and angular velocity by applying gravity and "
"damping for the equivalent of one physics tick."
msgstr ""
"Обновляет линейную и угловую скорость тела, применяя гравитацию и "
"демпфирование в течение эквивалента одного физического тика."

msgid ""
"Sets the body's total constant positional forces applied during each physics "
"update.\n"
"See [method add_constant_force] and [method add_constant_central_force]."
msgstr ""
"Устанавливает общие постоянные позиционные силы тела, применяемые во время "
"каждого обновления физики.\n"
"См. [method add_constant_force] и [method add_constant_central_force]."

msgid ""
"Sets the body's total constant rotational forces applied during each physics "
"update.\n"
"See [method add_constant_torque]."
msgstr ""
"Устанавливает общие постоянные вращательные силы тела, применяемые во время "
"каждого обновления физики.\n"
"См. [method add_constant_torque]."

msgid "The body's rotational velocity in [i]radians[/i] per second."
msgstr "Скорость вращения тела в [i]радианах[/i] в секунду."

msgid ""
"The body's center of mass position relative to the body's center in the "
"global coordinate system."
msgstr ""
"Положение центра масс тела относительно центра тела в глобальной системе "
"координат."

msgid ""
"The body's center of mass position in the body's local coordinate system."
msgstr "Положение центра масс тела в локальной системе координат тела."

msgid "The body's collision layer."
msgstr "Слой столкновений тела."

msgid "The body's collision mask."
msgstr "Маска столкновения тела."

msgid "The inverse of the inertia of the body."
msgstr "Величина, обратная инерции тела."

msgid "The inverse of the mass of the body."
msgstr "Величина, обратная массе тела."

msgid "The body's linear velocity in pixels per second."
msgstr "Линейная скорость тела в пикселях в секунду."

msgid "If [code]true[/code], this body is currently sleeping (not active)."
msgstr "Если [code]true[/code], это тело в данный момент спит (не активно)."

msgid "The timestep (delta) used for the simulation."
msgstr "Временной шаг (дельта), используемый для симуляции."

msgid ""
"The rate at which the body stops rotating, if there are not any other forces "
"moving it."
msgstr ""
"Скорость, при которой тело прекращает вращение, если на него не действуют "
"никакие другие силы."

msgid "The total gravity vector being currently applied to this body."
msgstr "Суммарный вектор гравитации, действующий в данный момент на это тело."

msgid ""
"The rate at which the body stops moving, if there are not any other forces "
"moving it."
msgstr ""
"Скорость, с которой тело прекращает движение, если на него не действуют "
"никакие другие силы."

msgid "The body's transformation matrix."
msgstr "Матрица трансформации тела."

msgid ""
"Provides virtual methods that can be overridden to create custom "
"[PhysicsDirectBodyState2D] implementations."
msgstr ""
"Предоставляет виртуальные методы, которые можно переопределить для создания "
"пользовательских реализаций [PhysicsDirectBodyState2D]."

msgid ""
"This class extends [PhysicsDirectBodyState2D] by providing additional virtual "
"methods that can be overridden. When these methods are overridden, they will "
"be called instead of the internal methods of the physics server.\n"
"Intended for use with GDExtension to create custom implementations of "
"[PhysicsDirectBodyState2D]."
msgstr ""
"Этот класс расширяет [PhysicsDirectBodyState2D], предоставляя дополнительные "
"виртуальные методы, которые можно переопределить. Когда эти методы "
"переопределяются, они будут вызываться вместо внутренних методов физического "
"сервера.\n"
"Предназначено для использования с GDExtension для создания пользовательских "
"реализаций [PhysicsDirectBodyState2D]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.add_constant_central_force]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.add_constant_central_force]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.add_constant_force]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.add_constant_force]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.add_constant_torque]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.add_constant_torque]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.apply_central_force]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.apply_central_force]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.apply_central_impulse]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.apply_central_impulse]."

msgid "Overridable version of [method PhysicsDirectBodyState2D.apply_force]."
msgstr "Переопределяемая версия [method PhysicsDirectBodyState2D.apply_force]."

msgid "Overridable version of [method PhysicsDirectBodyState2D.apply_impulse]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.apply_impulse]."

msgid "Overridable version of [method PhysicsDirectBodyState2D.apply_torque]."
msgstr "Переопределяемая версия [method PhysicsDirectBodyState2D.apply_torque]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.apply_torque_impulse]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.apply_torque_impulse]."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.angular_velocity] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.angular_velocity] и его соответствующего геттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.center_of_mass] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.center_of_mass] и его соответствующего геттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.center_of_mass_local] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.center_of_mass_local] и его соответствующего геттера."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_constant_force]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.get_constant_force]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_constant_torque]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.get_constant_torque]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_contact_collider]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_contact_collider]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_collider_id]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_contact_collider_id]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_collider_object]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_contact_collider_object]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_collider_position]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_contact_collider_position]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_collider_shape]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_contact_collider_shape]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_collider_velocity_at_position]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_contact_collider_velocity_at_position]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_contact_count]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.get_contact_count]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_contact_impulse]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.get_contact_impulse]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_local_normal]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_contact_local_normal]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_local_position]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_contact_local_position]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_local_shape]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_contact_local_shape]."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_contact_local_velocity_at_position]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_contact_local_velocity_at_position]."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.inverse_inertia] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.inverse_inertia] и его соответствующего геттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.inverse_mass] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.inverse_mass] и его соответствующего геттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.linear_velocity] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.linear_velocity] и его соответствующего геттера."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.get_space_state]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.get_space_state]."

msgid ""
"Implement to override the behavior of [member PhysicsDirectBodyState2D.step] "
"and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member PhysicsDirectBodyState2D.step] и "
"его соответствующего геттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.total_angular_damp] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.total_angular_damp] и его соответствующего геттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.total_gravity] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.total_gravity] и его соответствующего геттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.total_linear_damp] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.total_linear_damp] и его соответствующего геттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.transform] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.transform] и его соответствующего геттера."

msgid ""
"Overridable version of [method "
"PhysicsDirectBodyState2D.get_velocity_at_local_position]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsDirectBodyState2D.get_velocity_at_local_position]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.integrate_forces]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.integrate_forces]."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.sleeping] and its respective getter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.sleeping] и его соответствующего геттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.angular_velocity] and its respective setter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.angular_velocity] и его соответствующего сеттера."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.set_constant_force]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.set_constant_force]."

msgid ""
"Overridable version of [method PhysicsDirectBodyState2D.set_constant_torque]."
msgstr ""
"Переопределяемая версия [method PhysicsDirectBodyState2D.set_constant_torque]."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.linear_velocity] and its respective setter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.linear_velocity] и его соответствующего сеттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.sleeping] and its respective setter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.sleeping] и его соответствующего сеттера."

msgid ""
"Implement to override the behavior of [member "
"PhysicsDirectBodyState2D.transform] and its respective setter."
msgstr ""
"Реализуйте переопределение поведения [member "
"PhysicsDirectBodyState2D.transform] и его соответствующего сеттера."

msgid "Provides direct access to a physics body in the [PhysicsServer3D]."
msgstr "Предоставляет прямой доступ к физическому телу в [PhysicsServer3D]."

msgid ""
"Provides direct access to a physics body in the [PhysicsServer3D], allowing "
"safe changes to physics properties. This object is passed via the direct "
"state callback of [RigidBody3D], and is intended for changing the direct "
"state of that body. See [method RigidBody3D._integrate_forces]."
msgstr ""
"Предоставляет прямой доступ к физическому телу в [PhysicsServer3D], позволяя "
"безопасно изменять физические свойства. Этот объект передается через прямой "
"обратный вызов состояния [RigidBody3D] и предназначен для изменения прямого "
"состояния этого тела. См. [method RigidBody3D._integrate_forces]."

msgid ""
"Adds a constant directional force without affecting rotation that keeps being "
"applied over time until cleared with [code]constant_force = Vector3(0, 0, 0)[/"
"code].\n"
"This is equivalent to using [method add_constant_force] at the body's center "
"of mass."
msgstr ""
"Добавляет постоянную направленную силу, не влияя на вращение, которая "
"продолжает применяться с течением времени, пока не будет очищена с помощью "
"[code]constant_force = Vector3(0, 0, 0)[/code]. \n"
"Это эквивалентно использованию [method add_constant_force] в центре масс тела."

msgid ""
"Adds a constant positioned force to the body that keeps being applied over "
"time until cleared with [code]constant_force = Vector3(0, 0, 0)[/code].\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Добавляет к телу постоянную позиционную силу, которая продолжает применяться "
"с течением времени, пока не будет очищена с помощью [code]constant_force = "
"Vector3(0, 0, 0)[/code].\n"
"[param position] — это смещение от начала координат тела в глобальных "
"координатах."

msgid ""
"Adds a constant rotational force without affecting position that keeps being "
"applied over time until cleared with [code]constant_torque = Vector3(0, 0, 0)"
"[/code]."
msgstr ""
"Добавляет постоянную вращательную силу, не влияя на положение, которая "
"продолжает применяться с течением времени, пока не будет очищена с помощью "
"[code]constant_torque = Vector3(0, 0, 0)[/code]."

msgid ""
"Applies a rotational force without affecting position. A force is time "
"dependent and meant to be applied every physics update.\n"
"[b]Note:[/b] [member inverse_inertia] is required for this to work. To have "
"[member inverse_inertia], an active [CollisionShape3D] must be a child of the "
"node, or you can manually set [member inverse_inertia]."
msgstr ""
"Применяет вращательную силу, не влияя на положение. Сила зависит от времени и "
"должна применяться при каждом обновлении физики.\n"
"[b]Примечание:[/b] для работы требуется [member inverse_inertia]. Чтобы иметь "
"[member inverse_inertia], активный [CollisionShape3D] должен быть дочерним "
"элементом узла, или вы можете вручную задать [member inverse_inertia]."

msgid ""
"Applies a rotational impulse to the body without affecting the position.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[b]Note:[/b] [member inverse_inertia] is required for this to work. To have "
"[member inverse_inertia], an active [CollisionShape3D] must be a child of the "
"node, or you can manually set [member inverse_inertia]."
msgstr ""
"Применяет вращательный импульс к телу, не влияя на положение.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\").\n"
"[b]Примечание:[/b] для работы требуется [member inverse_inertia]. Чтобы иметь "
"[member inverse_inertia], активный [CollisionShape3D] должен быть дочерним "
"элементом узла, или вы можете вручную задать [member inverse_inertia]."

msgid "Returns the collider object."
msgstr "Возвращает объект коллайдера."

msgid "Returns the linear velocity vector at the collider's contact point."
msgstr "Возвращает вектор линейной скорости в точке контакта коллайдера."

msgid ""
"Returns the number of contacts this body has with other bodies.\n"
"[b]Note:[/b] By default, this returns 0 unless bodies are configured to "
"monitor contacts. See [member RigidBody3D.contact_monitor]."
msgstr ""
"Возвращает количество контактов этого тела с другими телами.\n"
"[b]Примечание:[/b] По умолчанию возвращается 0, если тела не настроены на "
"мониторинг контактов. См. [member RigidBody3D.contact_monitor]."

msgid "Impulse created by the contact."
msgstr "Импульс, создаваемый контактом."

msgid "Returns the linear velocity vector at the body's contact point."
msgstr "Возвращает вектор линейной скорости в точке контакта тела."

msgid "The inverse of the inertia tensor of the body."
msgstr "Обратная величина тензора инерции тела."

msgid "The body's linear velocity in units per second."
msgstr "Линейная скорость тела в единицах в секунду."

msgid ""
"Provides virtual methods that can be overridden to create custom "
"[PhysicsDirectBodyState3D] implementations."
msgstr ""
"Предоставляет виртуальные методы, которые можно переопределить для создания "
"пользовательских реализаций [PhysicsDirectBodyState3D]."

msgid ""
"This class extends [PhysicsDirectBodyState3D] by providing additional virtual "
"methods that can be overridden. When these methods are overridden, they will "
"be called instead of the internal methods of the physics server.\n"
"Intended for use with GDExtension to create custom implementations of "
"[PhysicsDirectBodyState3D]."
msgstr ""
"Этот класс расширяет [PhysicsDirectBodyState3D], предоставляя дополнительные "
"виртуальные методы, которые можно переопределить. Когда эти методы "
"переопределяются, они будут вызываться вместо внутренних методов физического "
"сервера.\n"
"Предназначено для использования с GDExtension для создания пользовательских "
"реализаций [PhysicsDirectBodyState3D]."

msgid "Provides direct access to a physics space in the [PhysicsServer2D]."
msgstr ""
"Предоставляет прямой доступ к физическому пространству в [PhysicsServer2D]."

msgid ""
"Provides direct access to a physics space in the [PhysicsServer2D]. It's used "
"mainly to do queries against objects and areas residing in a given space.\n"
"[b]Note:[/b] This class is not meant to be instantiated directly. Use [member "
"World2D.direct_space_state] to get the world's physics 2D space state."
msgstr ""
"Предоставляет прямой доступ к физическому пространству в [PhysicsServer2D]. "
"Используется в основном для выполнения запросов к объектам и областям, "
"находящимся в заданном пространстве.\n"
"[b]Примечание:[/b] Этот класс не предназначен для непосредственного создания "
"экземпляра. Используйте [member World2D.direct_space_state], чтобы получить "
"состояние физического 2D-пространства мира."

msgid ""
"Checks how far a [Shape2D] can move without colliding. All the parameters for "
"the query, including the shape and the motion, are supplied through a "
"[PhysicsShapeQueryParameters2D] object.\n"
"Returns an array with the safe and unsafe proportions (between 0 and 1) of "
"the motion. The safe proportion is the maximum fraction of the motion that "
"can be made without a collision. The unsafe proportion is the minimum "
"fraction of the distance that must be moved for a collision. If no collision "
"is detected a result of [code][1.0, 1.0][/code] will be returned.\n"
"[b]Note:[/b] Any [Shape2D]s that the shape is already colliding with e.g. "
"inside of, will be ignored. Use [method collide_shape] to determine the "
"[Shape2D]s that the shape is already colliding with."
msgstr ""
"Проверяет, насколько далеко [Shape2D] может двигаться без столкновений. Все "
"параметры для запроса, включая форму и движение, предоставляются через объект "
"[PhysicsShapeQueryParameters2D].\n"
"Возвращает массив с безопасными и небезопасными пропорциями (от 0 до 1) "
"движения. Безопасная пропорция — это максимальная часть движения, которую "
"можно выполнить без столкновений. Небезопасная пропорция — это минимальная "
"часть расстояния, которое необходимо пройти для столкновения. Если "
"столкновение не обнаружено, будет возвращен результат [code][1.0, 1.0][/"
"code].\n"
"[b]Примечание:[/b] Любые [Shape2D], с которыми фигура уже сталкивается, "
"например, внутри, будут игнорироваться. Используйте [method collide_shape], "
"чтобы определить [Shape2D], с которыми фигура уже сталкивается."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters2D] object, against the space. The resulting "
"array contains a list of points where the shape intersects another. Like with "
"[method intersect_shape], the number of returned results can be limited to "
"save processing time.\n"
"Returned points are a list of pairs of contact points. For each pair the "
"first one is in the shape passed in [PhysicsShapeQueryParameters2D] object, "
"second one is in the collided shape from the physics space."
msgstr ""
"Проверяет пересечения формы, заданной через объект "
"[PhysicsShapeQueryParameters2D], с пространством. Результирующий массив "
"содержит список точек, где форма пересекает другую. Как и в случае с [method "
"intersect_shape], количество возвращаемых результатов может быть ограничено "
"для экономии времени обработки.\n"
"Возвращаемые точки представляют собой список пар точек контакта. Для каждой "
"пары первая находится в форме, переданной в объект "
"[PhysicsShapeQueryParameters2D], вторая находится в столкновенной форме из "
"физического пространства."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters2D] object, against the space. If it collides "
"with more than one shape, the nearest one is selected. The returned object is "
"a dictionary containing the following fields:\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]linear_velocity[/code]: The colliding object's velocity [Vector2]. If "
"the object is an [Area2D], the result is [code](0, 0)[/code].\n"
"[code]normal[/code]: The collision normal of the query shape at the "
"intersection point, pointing away from the intersecting object.\n"
"[code]point[/code]: The intersection point.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"If the shape did not intersect anything, then an empty dictionary is returned "
"instead."
msgstr ""
"Проверяет пересечения фигуры, заданной через объект "
"[PhysicsShapeQueryParameters2D], с пространством. Если она сталкивается с "
"несколькими фигурами, выбирается ближайшая. Возвращаемый объект представляет "
"собой словарь, содержащий следующие поля:\n"
"[code]collider_id[/code]: идентификатор сталкивающегося объекта.\n"
"[code]linear_velocity[/code]: скорость сталкивающегося объекта [Vector2]. "
"Если объект является [Area2D], результатом будет [code](0, 0)[/code].\n"
"[code]normal[/code]: нормаль столкновения фигуры запроса в точке пересечения, "
"направленная от пересекающегося объекта.\n"
"[code]point[/code]: точка пересечения.\n"
"[code]rid[/code]: [RID] пересекающегося объекта.\n"
"[code]shape[/code]: индекс фигуры сталкивающейся фигуры.\n"
"Если фигура ничего не пересекает, то возвращается пустой словарь."

msgid ""
"Checks whether a point is inside any solid shape. Position and other "
"parameters are defined through [PhysicsPointQueryParameters2D]. The shapes "
"the point is inside of are returned in an array containing dictionaries with "
"the following fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"The number of intersections can be limited with the [param max_results] "
"parameter, to reduce the processing time.\n"
"[b]Note:[/b] [ConcavePolygonShape2D]s and [CollisionPolygon2D]s in "
"[code]Segments[/code] build mode are not solid shapes. Therefore, they will "
"not be detected."
msgstr ""
"Проверяет, находится ли точка внутри какой-либо сплошной фигуры. Положение и "
"другие параметры определяются через [PhysicsPointQueryParameters2D]. Фигуры, "
"внутри которых находится точка, возвращаются в массиве, содержащем словари со "
"следующими полями:\n"
"[code]collider[/code]: сталкивающийся объект.\n"
"[code]collider_id[/code]: идентификатор сталкивающегося объекта.\n"
"[code]rid[/code]: [RID] пересекающегося объекта.\n"
"[code]shape[/code]: индекс формы сталкивающейся фигуры.\n"
"Количество пересечений можно ограничить с помощью параметра [param "
"max_results], чтобы сократить время обработки.\n"
"[b]Примечание:[/b] [ConcavePolygonShape2D] и [CollisionPolygon2D] в режиме "
"построения [code]Segments[/code] не являются сплошными фигурами. Поэтому они "
"не будут обнаружены."

msgid ""
"Intersects a ray in a given space. Ray position and other parameters are "
"defined through [PhysicsRayQueryParameters2D]. The returned object is a "
"dictionary with the following fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]normal[/code]: The object's surface normal at the intersection point, "
"or [code]Vector2(0, 0)[/code] if the ray starts inside the shape and [member "
"PhysicsRayQueryParameters2D.hit_from_inside] is [code]true[/code].\n"
"[code]position[/code]: The intersection point.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"If the ray did not intersect anything, then an empty dictionary is returned "
"instead."
msgstr ""
"Пересекает луч в заданном пространстве. Положение луча и другие параметры "
"определяются через [PhysicsRayQueryParameters2D]. Возвращаемый объект "
"представляет собой словарь со следующими полями:\n"
"[code]collider[/code]: сталкивающийся объект.\n"
"[code]collider_id[/code]: идентификатор сталкивающегося объекта.\n"
"[code]normal[/code]: нормаль поверхности объекта в точке пересечения или "
"[code]Vector2(0, 0)[/code], если луч начинается внутри фигуры и [member "
"PhysicsRayQueryParameters2D.hit_from_inside] равен [code]true[/code].\n"
"[code]position[/code]: точка пересечения.\n"
"[code]rid[/code]: [RID] пересекающегося объекта.\n"
"[code]shape[/code]: индекс фигуры сталкивающейся фигуры.\n"
"Если луч ничего не пересек, то возвращается пустой словарь."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters2D] object, against the space. The intersected "
"shapes are returned in an array containing dictionaries with the following "
"fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"The number of intersections can be limited with the [param max_results] "
"parameter, to reduce the processing time."
msgstr ""
"Проверяет пересечения формы, заданной через объект "
"[PhysicsShapeQueryParameters2D], с пространством. Пересеченные формы "
"возвращаются в массиве, содержащем словари со следующими полями:\n"
"[code]collider[/code]: сталкивающийся объект.\n"
"[code]collider_id[/code]: идентификатор сталкивающегося объекта.\n"
"[code]rid[/code]: [RID] пересекающегося объекта.\n"
"[code]shape[/code]: индекс формы сталкивающейся формы.\n"
"Количество пересечений можно ограничить параметром [param max_results], чтобы "
"сократить время обработки."

msgid ""
"Provides virtual methods that can be overridden to create custom "
"[PhysicsDirectSpaceState2D] implementations."
msgstr ""
"Предоставляет виртуальные методы, которые можно переопределить для создания "
"пользовательских реализаций [PhysicsDirectSpaceState2D]."

msgid ""
"This class extends [PhysicsDirectSpaceState2D] by providing additional "
"virtual methods that can be overridden. When these methods are overridden, "
"they will be called instead of the internal methods of the physics server.\n"
"Intended for use with GDExtension to create custom implementations of "
"[PhysicsDirectSpaceState2D]."
msgstr ""
"Этот класс расширяет [PhysicsDirectSpaceState2D], предоставляя дополнительные "
"виртуальные методы, которые можно переопределить. Когда эти методы "
"переопределяются, они будут вызываться вместо внутренних методов физического "
"сервера.\n"
"Предназначено для использования с GDExtension для создания пользовательских "
"реализаций [PhysicsDirectSpaceState2D]."

msgid "Provides direct access to a physics space in the [PhysicsServer3D]."
msgstr ""
"Предоставляет прямой доступ к физическому пространству в [PhysicsServer3D]."

msgid ""
"Provides direct access to a physics space in the [PhysicsServer3D]. It's used "
"mainly to do queries against objects and areas residing in a given space.\n"
"[b]Note:[/b] This class is not meant to be instantiated directly. Use [member "
"World3D.direct_space_state] to get the world's physics 3D space state."
msgstr ""
"Предоставляет прямой доступ к физическому пространству в [PhysicsServer3D]. "
"Используется в основном для выполнения запросов к объектам и областям, "
"находящимся в заданном пространстве.\n"
"[b]Примечание:[/b] Этот класс не предназначен для непосредственного создания "
"экземпляра. Используйте [member World3D.direct_space_state], чтобы получить "
"состояние физического трехмерного пространства мира."

msgid ""
"Checks how far a [Shape3D] can move without colliding. All the parameters for "
"the query, including the shape and the motion, are supplied through a "
"[PhysicsShapeQueryParameters3D] object.\n"
"Returns an array with the safe and unsafe proportions (between 0 and 1) of "
"the motion. The safe proportion is the maximum fraction of the motion that "
"can be made without a collision. The unsafe proportion is the minimum "
"fraction of the distance that must be moved for a collision. If no collision "
"is detected a result of [code][1.0, 1.0][/code] will be returned.\n"
"[b]Note:[/b] Any [Shape3D]s that the shape is already colliding with e.g. "
"inside of, will be ignored. Use [method collide_shape] to determine the "
"[Shape3D]s that the shape is already colliding with."
msgstr ""
"Проверяет, насколько далеко [Shape3D] может двигаться без столкновений. Все "
"параметры для запроса, включая форму и движение, предоставляются через объект "
"[PhysicsShapeQueryParameters3D].\n"
"Возвращает массив с безопасными и небезопасными пропорциями (от 0 до 1) "
"движения. Безопасная пропорция — это максимальная часть движения, которую "
"можно выполнить без столкновений. Небезопасная пропорция — это минимальная "
"часть расстояния, которое необходимо пройти для столкновения. Если "
"столкновение не обнаружено, будет возвращен результат [code][1.0, 1.0][/"
"code].\n"
"[b]Примечание:[/b] Любые [Shape3D], с которыми фигура уже сталкивается, "
"например, внутри, будут игнорироваться. Используйте [method collide_shape], "
"чтобы определить [Shape3D], с которыми фигура уже сталкивается."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters3D] object, against the space. The resulting "
"array contains a list of points where the shape intersects another. Like with "
"[method intersect_shape], the number of returned results can be limited to "
"save processing time.\n"
"Returned points are a list of pairs of contact points. For each pair the "
"first one is in the shape passed in [PhysicsShapeQueryParameters3D] object, "
"second one is in the collided shape from the physics space.\n"
"[b]Note:[/b] This method does not take into account the [code]motion[/code] "
"property of the object."
msgstr ""
"Проверяет пересечения формы, заданной через объект "
"[PhysicsShapeQueryParameters3D], с пространством. Результирующий массив "
"содержит список точек, в которых форма пересекает другую. Как и в случае с "
"[method intersect_shape], количество возвращаемых результатов может быть "
"ограничено для экономии времени обработки.\n"
"Возвращаемые точки представляют собой список пар точек контакта. Для каждой "
"пары первая находится в форме, переданной в объект "
"[PhysicsShapeQueryParameters3D], вторая — в столкновенной форме из "
"физического пространства.\n"
"[b]Примечание:[/b] Этот метод не учитывает свойство [code]motion[/code] "
"объекта."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters3D] object, against the space. If it collides "
"with more than one shape, the nearest one is selected. The returned object is "
"a dictionary containing the following fields:\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]linear_velocity[/code]: The colliding object's velocity [Vector3]. If "
"the object is an [Area3D], the result is [code](0, 0, 0)[/code].\n"
"[code]normal[/code]: The collision normal of the query shape at the "
"intersection point, pointing away from the intersecting object.\n"
"[code]point[/code]: The intersection point.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"If the shape did not intersect anything, then an empty dictionary is returned "
"instead.\n"
"[b]Note:[/b] This method does not take into account the [code]motion[/code] "
"property of the object."
msgstr ""
"Проверяет пересечения фигуры, заданной через объект "
"[PhysicsShapeQueryParameters3D], с пространством. Если она сталкивается с "
"несколькими фигурами, выбирается ближайшая. Возвращаемый объект представляет "
"собой словарь, содержащий следующие поля:\n"
"[code]collider_id[/code]: идентификатор сталкивающегося объекта.\n"
"[code]linear_velocity[/code]: скорость сталкивающегося объекта [Vector3]. "
"Если объект является [Area3D], результатом будет [code](0, 0, 0)[/code].\n"
"[code]normal[/code]: нормаль столкновения фигуры запроса в точке пересечения, "
"направленная от пересекающегося объекта.\n"
"[code]point[/code]: точка пересечения.\n"
"[code]rid[/code]: [RID] пересекающегося объекта.\n"
"[code]shape[/code]: индекс фигуры сталкивающейся фигуры.\n"
"Если фигура ничего не пересекла, то вместо этого возвращается пустой "
"словарь.\n"
"[b]Примечание:[/b] Этот метод не учитывает свойство [code]motion[/code] "
"объекта."

msgid ""
"Checks whether a point is inside any solid shape. Position and other "
"parameters are defined through [PhysicsPointQueryParameters3D]. The shapes "
"the point is inside of are returned in an array containing dictionaries with "
"the following fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"The number of intersections can be limited with the [param max_results] "
"parameter, to reduce the processing time."
msgstr ""
"Проверяет, находится ли точка внутри какой-либо сплошной фигуры. Положение и "
"другие параметры определяются через [PhysicsPointQueryParameters3D]. Фигуры, "
"внутри которых находится точка, возвращаются в массиве, содержащем словари со "
"следующими полями:\n"
"[code]collider[/code]: сталкивающийся объект.\n"
"[code]collider_id[/code]: идентификатор сталкивающегося объекта.\n"
"[code]rid[/code]: [RID] пересекающегося объекта.\n"
"[code]shape[/code]: индекс сталкивающейся фигуры.\n"
"Количество пересечений можно ограничить параметром [param max_results], чтобы "
"сократить время обработки."

msgid ""
"Intersects a ray in a given space. Ray position and other parameters are "
"defined through [PhysicsRayQueryParameters3D]. The returned object is a "
"dictionary with the following fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]normal[/code]: The object's surface normal at the intersection point, "
"or [code]Vector3(0, 0, 0)[/code] if the ray starts inside the shape and "
"[member PhysicsRayQueryParameters3D.hit_from_inside] is [code]true[/code].\n"
"[code]position[/code]: The intersection point.\n"
"[code]face_index[/code]: The face index at the intersection point.\n"
"[b]Note:[/b] Returns a valid number only if the intersected shape is a "
"[ConcavePolygonShape3D]. Otherwise, [code]-1[/code] is returned.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"If the ray did not intersect anything, then an empty dictionary is returned "
"instead."
msgstr ""
"Пересекает луч в заданном пространстве. Положение луча и другие параметры "
"определяются через [PhysicsRayQueryParameters3D]. Возвращаемый объект "
"представляет собой словарь со следующими полями:\n"
"[code]collider[/code]: сталкивающийся объект.\n"
"[code]collider_id[/code]: идентификатор сталкивающегося объекта.\n"
"[code]normal[/code]: нормаль поверхности объекта в точке пересечения или "
"[code]Vector3(0, 0, 0)[/code], если луч начинается внутри фигуры и [member "
"PhysicsRayQueryParameters3D.hit_from_inside] равен [code]true[/code].\n"
"[code]position[/code]: точка пересечения.\n"
"[code]face_index[/code]: индекс грани в точке пересечения.\n"
"[b]Примечание:[/b] Возвращает допустимое число, только если пересекаемая "
"фигура является [ConcavePolygonShape3D]. В противном случае возвращается "
"[code]-1[/code].\n"
"[code]rid[/code]: [RID] пересекающегося объекта.\n"
"[code]shape[/code]: Индекс формы сталкивающейся фигуры.\n"
"Если луч ничего не пересек, то вместо этого возвращается пустой словарь."

msgid ""
"Checks the intersections of a shape, given through a "
"[PhysicsShapeQueryParameters3D] object, against the space. The intersected "
"shapes are returned in an array containing dictionaries with the following "
"fields:\n"
"[code]collider[/code]: The colliding object.\n"
"[code]collider_id[/code]: The colliding object's ID.\n"
"[code]rid[/code]: The intersecting object's [RID].\n"
"[code]shape[/code]: The shape index of the colliding shape.\n"
"The number of intersections can be limited with the [param max_results] "
"parameter, to reduce the processing time.\n"
"[b]Note:[/b] This method does not take into account the [code]motion[/code] "
"property of the object."
msgstr ""
"Проверяет пересечения формы, заданной через объект "
"[PhysicsShapeQueryParameters3D], с пространством. Пересеченные формы "
"возвращаются в массиве, содержащем словари со следующими полями:\n"
"[code]collider[/code]: сталкивающийся объект.\n"
"[code]collider_id[/code]: идентификатор сталкивающегося объекта.\n"
"[code]rid[/code]: [RID] пересекающегося объекта.\n"
"[code]shape[/code]: индекс формы сталкивающейся формы.\n"
"Количество пересечений можно ограничить параметром [param max_results], чтобы "
"сократить время обработки.\n"
"[b]Примечание:[/b] Этот метод не учитывает свойство [code]motion[/code] "
"объекта."

msgid ""
"Provides virtual methods that can be overridden to create custom "
"[PhysicsDirectSpaceState3D] implementations."
msgstr ""
"Предоставляет виртуальные методы, которые можно переопределить для создания "
"пользовательских реализаций [PhysicsDirectSpaceState3D]."

msgid ""
"This class extends [PhysicsDirectSpaceState3D] by providing additional "
"virtual methods that can be overridden. When these methods are overridden, "
"they will be called instead of the internal methods of the physics server.\n"
"Intended for use with GDExtension to create custom implementations of "
"[PhysicsDirectSpaceState3D]."
msgstr ""
"Этот класс расширяет [PhysicsDirectSpaceState3D], предоставляя дополнительные "
"виртуальные методы, которые можно переопределить. Когда эти методы "
"переопределяются, они будут вызываться вместо внутренних методов физического "
"сервера.\n"
"Предназначено для использования с GDExtension для создания пользовательских "
"реализаций [PhysicsDirectSpaceState3D]."

msgid ""
"Holds physics-related properties of a surface, namely its roughness and "
"bounciness."
msgstr ""
"Содержит физические свойства поверхности, а именно ее шероховатость и "
"упругость."

msgid ""
"Holds physics-related properties of a surface, namely its roughness and "
"bounciness. This class is used to apply these properties to a physics body."
msgstr ""
"Содержит физические свойства поверхности, а именно ее шероховатость и "
"упругость. Этот класс используется для применения этих свойств к физическому "
"телу."

msgid ""
"If [code]true[/code], subtracts the bounciness from the colliding object's "
"bounciness instead of adding it."
msgstr ""
"Если [code]true[/code], то вычитает упругость из упругости сталкивающегося "
"объекта, а не прибавляет ее."

msgid ""
"The body's bounciness. Values range from [code]0[/code] (no bounce) to "
"[code]1[/code] (full bounciness).\n"
"[b]Note:[/b] Even with [member bounce] set to [code]1.0[/code], some energy "
"will be lost over time due to linear and angular damping. To have a physics "
"body that preserves all its energy over time, set [member bounce] to "
"[code]1.0[/code], the body's linear damp mode to [b]Replace[/b] (if "
"applicable), its linear damp to [code]0.0[/code], its angular damp mode to "
"[b]Replace[/b] (if applicable), and its angular damp to [code]0.0[/code]."
msgstr ""
"Упругость тела. Значения варьируются от [code]0[/code] (без отскока) до "
"[code]1[/code] (полная упругость).\n"
"[b]Примечание:[/b] Даже если [member bounce] установлен на [code]1.0[/code], "
"часть энергии будет потеряна со временем из-за линейного и углового "
"затухания. Чтобы иметь физическое тело, которое сохраняет всю свою энергию с "
"течением времени, установите [member bounce] на [code]1.0[/code], режим "
"линейного затухания тела на [b]Replace[/b] (если применимо), его линейное "
"затухание на [code]0.0[/code], его режим углового затухания на [b]Replace[/b] "
"(если применимо), а его угловое затухание на [code]0.0[/code]."

msgid ""
"The body's friction. Values range from [code]0[/code] (frictionless) to "
"[code]1[/code] (maximum friction)."
msgstr ""
"Трение тела. Значения варьируются от [code]0[/code] (без трения) до [code]1[/"
"code] (максимальное трение)."

msgid ""
"If [code]true[/code], the physics engine will use the friction of the object "
"marked as \"rough\" when two objects collide. If [code]false[/code], the "
"physics engine will use the lowest friction of all colliding objects instead. "
"If [code]true[/code] for both colliding objects, the physics engine will use "
"the highest friction."
msgstr ""
"Если [code]true[/code], физический движок будет использовать трение объекта, "
"помеченного как «грубый», при столкновении двух объектов. Если [code]false[/"
"code], физический движок будет использовать самое низкое трение среди всех "
"сталкивающихся объектов. Если [code]true[/code] для обоих сталкивающихся "
"объектов, физический движок будет использовать самое высокое трение."

msgid ""
"Provides parameters for [method PhysicsDirectSpaceState2D.intersect_point]."
msgstr ""
"Предоставляет параметры для [method "
"PhysicsDirectSpaceState2D.intersect_point]."

msgid ""
"By changing various properties of this object, such as the point position, "
"you can configure the parameters for [method "
"PhysicsDirectSpaceState2D.intersect_point]."
msgstr ""
"Изменяя различные свойства этого объекта, такие как положение точки, вы "
"можете настроить параметры для [method "
"PhysicsDirectSpaceState2D.intersect_point]."

msgid ""
"If different from [code]0[/code], restricts the query to a specific canvas "
"layer specified by its instance ID. See [method Object.get_instance_id].\n"
"If [code]0[/code], restricts the query to the Viewport's default canvas layer."
msgstr ""
"Если отличается от [code]0[/code], ограничивает запрос определенным слоем "
"холста, указанным его идентификатором экземпляра. См. [method "
"Object.get_instance_id].\n"
"Если [code]0[/code], ограничивает запрос слоем холста по умолчанию Viewport."

msgid "If [code]true[/code], the query will take [Area2D]s into account."
msgstr "Если [code]true[/code], запрос будет учитывать [Area2D]."

msgid "If [code]true[/code], the query will take [PhysicsBody2D]s into account."
msgstr "Если [code]true[/code], запрос будет учитывать [PhysicsBody2D]."

msgid ""
"The physics layers the query will detect (as a bitmask). By default, all "
"collision layers are detected. See [url=$DOCS_URL/tutorials/physics/"
"physics_introduction.html#collision-layers-and-masks]Collision layers and "
"masks[/url] in the documentation for more information."
msgstr ""
"Слои физики, которые запрос обнаружит (как битовую маску). По умолчанию "
"обнаруживаются все слои столкновений. Для получения дополнительной информации "
"см. [url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-"
"layers-and-masks]Слои и маски столкновений[/url] в документации."

msgid ""
"The list of object [RID]s that will be excluded from collisions. Use [method "
"CollisionObject2D.get_rid] to get the [RID] associated with a "
"[CollisionObject2D]-derived node.\n"
"[b]Note:[/b] The returned array is copied and any changes to it will not "
"update the original property value. To update the value you need to modify "
"the returned array, and then assign it to the property again."
msgstr ""
"Список [RID] объектов, которые будут исключены из столкновений. Используйте "
"[method CollisionObject2D.get_rid], чтобы получить [RID], связанный с узлом, "
"производным от [CollisionObject2D].\n"
"[b]Примечание:[/b] Возвращаемый массив копируется, и любые изменения в нем не "
"обновят исходное значение свойства. Чтобы обновить значение, вам нужно "
"изменить возвращаемый массив, а затем снова назначить его свойству."

msgid "The position being queried for, in global coordinates."
msgstr "Запрашиваемая позиция в глобальных координатах."

msgid ""
"Provides parameters for [method PhysicsDirectSpaceState3D.intersect_point]."
msgstr ""
"Предоставляет параметры для [method "
"PhysicsDirectSpaceState3D.intersect_point]."

msgid ""
"By changing various properties of this object, such as the point position, "
"you can configure the parameters for [method "
"PhysicsDirectSpaceState3D.intersect_point]."
msgstr ""
"Изменяя различные свойства этого объекта, такие как положение точки, вы "
"можете настроить параметры для [method "
"PhysicsDirectSpaceState3D.intersect_point]."

msgid "If [code]true[/code], the query will take [Area3D]s into account."
msgstr "Если [code]true[/code], запрос будет учитывать [Area3D]."

msgid "If [code]true[/code], the query will take [PhysicsBody3D]s into account."
msgstr "Если [code]true[/code], запрос будет учитывать [PhysicsBody3D]."

msgid ""
"The list of object [RID]s that will be excluded from collisions. Use [method "
"CollisionObject3D.get_rid] to get the [RID] associated with a "
"[CollisionObject3D]-derived node.\n"
"[b]Note:[/b] The returned array is copied and any changes to it will not "
"update the original property value. To update the value you need to modify "
"the returned array, and then assign it to the property again."
msgstr ""
"Список [RID] объектов, которые будут исключены из столкновений. Используйте "
"[method CollisionObject3D.get_rid], чтобы получить [RID], связанный с узлом, "
"производным от [CollisionObject3D].\n"
"[b]Примечание:[/b] Возвращаемый массив копируется, и любые изменения в нем не "
"обновят исходное значение свойства. Чтобы обновить значение, вам нужно "
"изменить возвращаемый массив, а затем снова назначить его свойству."

msgid ""
"Provides parameters for [method PhysicsDirectSpaceState2D.intersect_ray]."
msgstr ""
"Предоставляет параметры для [method PhysicsDirectSpaceState2D.intersect_ray]."

msgid ""
"By changing various properties of this object, such as the ray position, you "
"can configure the parameters for [method "
"PhysicsDirectSpaceState2D.intersect_ray]."
msgstr ""
"Изменяя различные свойства этого объекта, такие как положение луча, можно "
"настроить параметры для [method PhysicsDirectSpaceState2D.intersect_ray]."

msgid ""
"Returns a new, pre-configured [PhysicsRayQueryParameters2D] object. Use it to "
"quickly create query parameters using the most common options.\n"
"[codeblock]\n"
"var query = PhysicsRayQueryParameters2D.create(global_position, "
"global_position + Vector2(0, 100))\n"
"var collision = get_world_2d().direct_space_state.intersect_ray(query)\n"
"[/codeblock]"
msgstr ""
"Возвращает новый, предварительно настроенный объект "
"[PhysicsRayQueryParameters2D]. Используйте его для быстрого создания "
"параметров запроса с использованием наиболее распространенных опций.\n"
"[codeblock]\n"
"var query = PhysicsRayQueryParameters2D.create(global_position, "
"global_position + Vector2(0, 100))\n"
"var collision = get_world_2d().direct_space_state.intersect_ray(query)\n"
"[/codeblock]"

msgid "The starting point of the ray being queried for, in global coordinates."
msgstr "Начальная точка запрашиваемого луча в глобальных координатах."

msgid ""
"If [code]true[/code], the query will detect a hit when starting inside "
"shapes. In this case the collision normal will be [code]Vector2(0, 0)[/code]. "
"Does not affect concave polygon shapes."
msgstr ""
"Если [code]true[/code], запрос обнаружит попадание при запуске внутри фигур. "
"В этом случае нормаль столкновения будет [code]Vector2(0, 0)[/code]. Не "
"влияет на вогнутые полигоны фигур."

msgid "The ending point of the ray being queried for, in global coordinates."
msgstr "Конечная точка запрашиваемого луча в глобальных координатах."

msgid ""
"Provides parameters for [method PhysicsDirectSpaceState3D.intersect_ray]."
msgstr ""
"Предоставляет параметры для [method PhysicsDirectSpaceState3D.intersect_ray]."

msgid ""
"By changing various properties of this object, such as the ray position, you "
"can configure the parameters for [method "
"PhysicsDirectSpaceState3D.intersect_ray]."
msgstr ""
"Изменяя различные свойства этого объекта, такие как положение луча, можно "
"настроить параметры для [method PhysicsDirectSpaceState3D.intersect_ray]."

msgid ""
"Returns a new, pre-configured [PhysicsRayQueryParameters3D] object. Use it to "
"quickly create query parameters using the most common options.\n"
"[codeblock]\n"
"var query = PhysicsRayQueryParameters3D.create(position, position + "
"Vector3(0, -10, 0))\n"
"var collision = get_world_3d().direct_space_state.intersect_ray(query)\n"
"[/codeblock]"
msgstr ""
"Возвращает новый, предварительно настроенный объект "
"[PhysicsRayQueryParameters3D]. Используйте его для быстрого создания "
"параметров запроса с использованием наиболее распространенных опций.\n"
"[codeblock]\n"
"var query = PhysicsRayQueryParameters3D.create(position, position + "
"Vector3(0, -10, 0))\n"
"var collision = get_world_3d().direct_space_state.intersect_ray(query)\n"
"[/codeblock]"

msgid ""
"If [code]true[/code], the query will hit back faces with concave polygon "
"shapes with back face enabled or heightmap shapes."
msgstr ""
"Если [code]true[/code], запрос будет попадать на задние грани с вогнутыми "
"многоугольными формами с включенной задней гранью или формами карты высот."

msgid ""
"If [code]true[/code], the query will detect a hit when starting inside "
"shapes. In this case the collision normal will be [code]Vector3(0, 0, 0)[/"
"code]. Does not affect concave polygon shapes or heightmap shapes."
msgstr ""
"Если [code]true[/code], запрос обнаружит попадание при запуске внутри фигур. "
"В этом случае нормаль столкновения будет [code]Vector3(0, 0, 0)[/code]. Не "
"влияет на вогнутые многоугольные фигуры или фигуры карты высот."

msgid "A server interface for low-level 2D physics access."
msgstr "Серверный интерфейс для низкоуровневого доступа к 2D-физике."

msgid ""
"PhysicsServer2D is the server responsible for all 2D physics. It can directly "
"create and manipulate all physics objects:\n"
"- A [i]space[/i] is a self-contained world for a physics simulation. It "
"contains bodies, areas, and joints. Its state can be queried for collision "
"and intersection information, and several parameters of the simulation can be "
"modified.\n"
"- A [i]shape[/i] is a geometric shape such as a circle, a rectangle, a "
"capsule, or a polygon. It can be used for collision detection by adding it to "
"a body/area, possibly with an extra transformation relative to the body/"
"area's origin. Bodies/areas can have multiple (transformed) shapes added to "
"them, and a single shape can be added to bodies/areas multiple times with "
"different local transformations.\n"
"- A [i]body[/i] is a physical object which can be in static, kinematic, or "
"rigid mode. Its state (such as position and velocity) can be queried and "
"updated. A force integration callback can be set to customize the body's "
"physics.\n"
"- An [i]area[/i] is a region in space which can be used to detect bodies and "
"areas entering and exiting it. A body monitoring callback can be set to "
"report entering/exiting body shapes, and similarly an area monitoring "
"callback can be set. Gravity and damping can be overridden within the area by "
"setting area parameters.\n"
"- A [i]joint[/i] is a constraint, either between two bodies or on one body "
"relative to a point. Parameters such as the joint bias and the rest length of "
"a spring joint can be adjusted.\n"
"Physics objects in [PhysicsServer2D] may be created and manipulated "
"independently; they do not have to be tied to nodes in the scene tree.\n"
"[b]Note:[/b] All the 2D physics nodes use the physics server internally. "
"Adding a physics node to the scene tree will cause a corresponding physics "
"object to be created in the physics server. A rigid body node registers a "
"callback that updates the node's transform with the transform of the "
"respective body object in the physics server (every physics update). An area "
"node registers a callback to inform the area node about overlaps with the "
"respective area object in the physics server. The raycast node queries the "
"direct state of the relevant space in the physics server."
msgstr ""
"PhysicsServer2D — сервер, отвечающий за всю 2D-физику. Он может напрямую "
"создавать и управлять всеми физическими объектами:\n"
"- [i]пространство[/i] — это самодостаточный мир для физического "
"моделирования. Оно содержит тела, области и сочленения. Его состояние может "
"быть запрошено для получения информации о столкновениях и пересечениях, и "
"можно изменить несколько параметров моделирования.\n"
"- [i]форма[/i] — это геометрическая форма, такая как круг, прямоугольник, "
"капсула или многоугольник. Ее можно использовать для обнаружения "
"столкновений, добавив ее к телу/области, возможно, с дополнительным "
"преобразованием относительно начала координат тела/области. Тела/области "
"могут иметь несколько (преобразованных) форм, добавленных к ним, и одна форма "
"может быть добавлена к телам/областям несколько раз с различными локальными "
"преобразованиями.\n"
"- [i]тело[/i] — это физический объект, который может находиться в "
"статическом, кинематическом или жестком режиме. Его состояние (такое как "
"положение и скорость) можно запрашивать и обновлять. Обратный вызов "
"интеграции силы может быть установлен для настройки физики тела.\n"
"- [i]область[/i] - это область в пространстве, которая может использоваться "
"для обнаружения тел и областей, входящих и выходящих из нее. Обратный вызов "
"мониторинга тела может быть установлен для сообщения о входе/выходе форм "
"тела, и аналогичным образом может быть установлен обратный вызов мониторинга "
"области. Гравитация и демпфирование могут быть переопределены в области путем "
"установки параметров области.\n"
"- [i]соединение[/i] - это ограничение, либо между двумя телами, либо на одном "
"теле относительно точки. Такие параметры, как смещение сочленения и "
"остаточная длина пружинного соединения, могут быть скорректированы.\n"
"Физические объекты в [PhysicsServer2D] могут быть созданы и изменены "
"независимо; они не должны быть привязаны к узлам в дереве сцены.\n"
"[b]Примечание:[/b] Все узлы 2D-физики используют физический сервер внутренне. "
"Добавление физического узла в дерево сцены приведет к созданию "
"соответствующего физического объекта на физическом сервере. Узел твердого "
"тела регистрирует обратный вызов, который обновляет преобразование узла с "
"преобразованием соответствующего объекта тела на физическом сервере (каждое "
"обновление физики). Узел области регистрирует обратный вызов, чтобы "
"информировать узел области о перекрытиях с соответствующим объектом области "
"на физическом сервере. Узел raycast запрашивает прямое состояние "
"соответствующего пространства на физическом сервере."

msgid ""
"Adds a shape to the area, with the given local transform. The shape (together "
"with its [param transform] and [param disabled] properties) is added to an "
"array of shapes, and the shapes of an area are usually referenced by their "
"index in this array."
msgstr ""
"Добавляет фигуру к области с заданным локальным преобразованием. Фигура "
"(вместе со своими свойствами [param transform] и [param disabled]) "
"добавляется в массив фигур, а фигуры области обычно ссылаются по их индексу в "
"этом массиве."

msgid ""
"Attaches the [code]ObjectID[/code] of a canvas to the area. Use [method "
"Object.get_instance_id] to get the [code]ObjectID[/code] of a [CanvasLayer]."
msgstr ""
"Прикрепляет [code]ObjectID[/code] холста к области. Используйте [method "
"Object.get_instance_id], чтобы получить [code]ObjectID[/code] для "
"[CanvasLayer]."

msgid ""
"Attaches the [code]ObjectID[/code] of an [Object] to the area. Use [method "
"Object.get_instance_id] to get the [code]ObjectID[/code] of a "
"[CollisionObject2D]."
msgstr ""
"Прикрепляет [code]ObjectID[/code] [Object] к области. Используйте [method "
"Object.get_instance_id], чтобы получить [code]ObjectID[/code] для "
"[CollisionObject2D]."

msgid ""
"Removes all shapes from the area. This does not delete the shapes themselves, "
"so they can continue to be used elsewhere or added back later."
msgstr ""
"Удаляет все фигуры из области. Это не удаляет сами фигуры, поэтому их можно "
"продолжать использовать в другом месте или добавлять обратно позже."

msgid ""
"Creates a 2D area object in the physics server, and returns the [RID] that "
"identifies it. The default settings for the created area include a collision "
"layer and mask set to [code]1[/code], and [code]monitorable[/code] set to "
"[code]false[/code].\n"
"Use [method area_add_shape] to add shapes to it, use [method "
"area_set_transform] to set its transform, and use [method area_set_space] to "
"add the area to a space. If you want the area to be detectable use [method "
"area_set_monitorable]."
msgstr ""
"Создает объект 2D-области на физическом сервере и возвращает [RID], который "
"его идентифицирует. Настройки по умолчанию для созданной области включают "
"слой столкновений и маску, установленные на [code]1[/code], и "
"[code]monitorable[/code], установленные на [code]false[/code].\n"
"Используйте [method area_add_shape], чтобы добавить к нему формы, используйте "
"[method area_set_transform], чтобы задать его преобразование, и используйте "
"[method area_set_space], чтобы добавить область в пространство. Если вы "
"хотите, чтобы область была обнаруживаемой, используйте [method "
"area_set_monitorable]."

msgid ""
"Returns the [code]ObjectID[/code] of the canvas attached to the area. Use "
"[method @GlobalScope.instance_from_id] to retrieve a [CanvasLayer] from a "
"nonzero [code]ObjectID[/code]."
msgstr ""
"Возвращает [code]ObjectID[/code] холста, прикрепленного к области. "
"Используйте [method @GlobalScope.instance_from_id], чтобы получить "
"[CanvasLayer] из ненулевого [code]ObjectID[/code]."

msgid "Returns the physics layer or layers the area belongs to, as a bitmask."
msgstr ""
"Возвращает физический слой или слои, к которым принадлежит область, в виде "
"битовой маски."

msgid ""
"Returns the physics layer or layers the area can contact with, as a bitmask."
msgstr ""
"Возвращает физический слой или слои, с которыми может контактировать область, "
"в виде битовой маски."

msgid ""
"Returns the [code]ObjectID[/code] attached to the area. Use [method "
"@GlobalScope.instance_from_id] to retrieve an [Object] from a nonzero "
"[code]ObjectID[/code]."
msgstr ""
"Возвращает [code]ObjectID[/code], прикрепленный к области. Используйте "
"[method @GlobalScope.instance_from_id], чтобы извлечь [Object] из ненулевого "
"[code]ObjectID[/code]."

msgid "Returns the value of the given area parameter."
msgstr "Возвращает значение заданного параметра площади."

msgid ""
"Returns the [RID] of the shape with the given index in the area's array of "
"shapes."
msgstr "Возвращает [RID] фигуры с указанным индексом в массиве фигур области."

msgid "Returns the number of shapes added to the area."
msgstr "Возвращает количество фигур, добавленных в область."

msgid ""
"Returns the local transform matrix of the shape with the given index in the "
"area's array of shapes."
msgstr ""
"Возвращает матрицу локального преобразования фигуры с заданным индексом в "
"массиве фигур области."

msgid ""
"Returns the [RID] of the space assigned to the area. Returns an empty [RID] "
"if no space is assigned."
msgstr ""
"Возвращает [RID] пространства, назначенного области. Возвращает пустой [RID], "
"если пространство не назначено."

msgid "Returns the transform matrix of the area."
msgstr "Возвращает матрицу преобразования области."

msgid ""
"Removes the shape with the given index from the area's array of shapes. The "
"shape itself is not deleted, so it can continue to be used elsewhere or added "
"back later. As a result of this operation, the area's shapes which used to "
"have indices higher than [param shape_idx] will have their index decreased by "
"one."
msgstr ""
"Удаляет фигуру с указанным индексом из массива фигур области. Сама фигура не "
"удаляется, поэтому ее можно использовать в другом месте или добавить обратно "
"позже. В результате этой операции у фигур области, которые имели индексы выше "
"[param shape_idx], индекс будет уменьшен на единицу."

msgid ""
"Sets the area's area monitor callback. This callback will be called when any "
"other (shape of an) area enters or exits (a shape of) the given area, and "
"must take the following five parameters:\n"
"1. an integer [code]status[/code]: either [constant AREA_BODY_ADDED] or "
"[constant AREA_BODY_REMOVED] depending on whether the other area's shape "
"entered or exited the area,\n"
"2. an [RID] [code]area_rid[/code]: the [RID] of the other area that entered "
"or exited the area,\n"
"3. an integer [code]instance_id[/code]: the [code]ObjectID[/code] attached to "
"the other area,\n"
"4. an integer [code]area_shape_idx[/code]: the index of the shape of the "
"other area that entered or exited the area,\n"
"5. an integer [code]self_shape_idx[/code]: the index of the shape of the area "
"where the other area entered or exited.\n"
"By counting (or keeping track of) the shapes that enter and exit, it can be "
"determined if an area (with all its shapes) is entering for the first time or "
"exiting for the last time."
msgstr ""
"Устанавливает обратный вызов монитора области. Этот обратный вызов будет "
"вызван, когда любая другая (форма) области входит или выходит из (формы) "
"заданной области, и должен принимать следующие пять параметров:\n"
"1. целое число [code]status[/code]: либо [constant AREA_BODY_ADDED] или "
"[constant AREA_BODY_REMOVED] в зависимости от того, вошла или вышла из "
"области форма другой области,\n"
"2. [RID] [code]area_rid[/code]: [RID] другой области, которая вошла или вышла "
"из области,\n"
"3. целое число [code]instance_id[/code]: [code]ObjectID[/code], прикрепленный "
"к другой области,\n"
"4. целое число [code]area_shape_idx[/code]: индекс формы другой области, "
"которая вошла или вышла из области,\n"
"5. целое число [code]self_shape_idx[/code]: индекс формы области, в которую "
"вошла или вышла другая область.\n"
"Подсчитывая (или отслеживая) входящие и выходящие фигуры, можно определить, "
"входит ли область (со всеми ее фигурами) в первый раз или выходит в последний "
"раз."

msgid "Assigns the area to one or many physics layers, via a bitmask."
msgstr ""
"Назначает область одному или нескольким физическим слоям с помощью битовой "
"маски."

msgid "Sets which physics layers the area will monitor, via a bitmask."
msgstr ""
"Устанавливает, какие физические слои будет отслеживать область, с помощью "
"битовой маски."

msgid ""
"Sets the area's body monitor callback. This callback will be called when any "
"other (shape of a) body enters or exits (a shape of) the given area, and must "
"take the following five parameters:\n"
"1. an integer [code]status[/code]: either [constant AREA_BODY_ADDED] or "
"[constant AREA_BODY_REMOVED] depending on whether the other body shape "
"entered or exited the area,\n"
"2. an [RID] [code]body_rid[/code]: the [RID] of the body that entered or "
"exited the area,\n"
"3. an integer [code]instance_id[/code]: the [code]ObjectID[/code] attached to "
"the body,\n"
"4. an integer [code]body_shape_idx[/code]: the index of the shape of the body "
"that entered or exited the area,\n"
"5. an integer [code]self_shape_idx[/code]: the index of the shape of the area "
"where the body entered or exited.\n"
"By counting (or keeping track of) the shapes that enter and exit, it can be "
"determined if a body (with all its shapes) is entering for the first time or "
"exiting for the last time."
msgstr ""
"Устанавливает обратный вызов монитора тела области. Этот обратный вызов будет "
"вызван, когда любое другое (форма) тело входит или выходит (форма) из "
"заданной области, и должен принимать следующие пять параметров:\n"
"1. целое число [code]status[/code]: либо [constant AREA_BODY_ADDED] или "
"[constant AREA_BODY_REMOVED] в зависимости от того, вошла или вышла из "
"области другая форма тела,\n"
"2. [RID] [code]body_rid[/code]: [RID] тела, которое вошло или вышло из "
"области,\n"
"3. целое число [code]instance_id[/code]: [code]ObjectID[/code], прикрепленный "
"к телу,\n"
"4. целое число [code]body_shape_idx[/code]: индекс формы тела, которое вошло "
"или вышло из области,\n"
"5. целое число [code]self_shape_idx[/code]: индекс формы области, в которую "
"тело вошло или вышло. \n"
"Подсчитывая (или отслеживая) входящие и выходящие формы, можно определить, "
"входит ли тело (со всеми его формами) в первый раз или выходит в последний "
"раз."

msgid ""
"Sets whether the area is monitorable or not. If [param monitorable] is "
"[code]true[/code], the area monitoring callback of other areas will be called "
"when this area enters or exits them."
msgstr ""
"Устанавливает, является ли область контролируемой или нет. Если [param "
"monitorable] имеет значение [code]true[/code], обратный вызов мониторинга "
"области других областей будет вызван, когда эта область входит в них или "
"выходит из них."

msgid "Sets the value of the given area parameter."
msgstr "Устанавливает значение заданного параметра области."

msgid ""
"Replaces the area's shape at the given index by another shape, while not "
"affecting the [code]transform[/code] and [code]disabled[/code] properties at "
"the same index."
msgstr ""
"Заменяет форму области по указанному индексу на другую форму, не влияя на "
"свойства [code]transform[/code] и [code]disabled[/code] по тому же индексу."

msgid ""
"Sets the disabled property of the area's shape with the given index. If "
"[param disabled] is [code]true[/code], then the shape will not detect any "
"other shapes entering or exiting it."
msgstr ""
"Устанавливает отключенное свойство формы области с заданным индексом. Если "
"[param disabled] равен [code]true[/code], то форма не будет обнаруживать "
"никакие другие формы, входящие или выходящие из нее."

msgid ""
"Sets the local transform matrix of the area's shape with the given index."
msgstr ""
"Задает матрицу локального преобразования формы области с заданным индексом."

msgid ""
"Adds the area to the given space, after removing the area from the previously "
"assigned space (if any).\n"
"[b]Note:[/b] To remove an area from a space without immediately adding it "
"back elsewhere, use [code]PhysicsServer2D.area_set_space(area, RID())[/code]."
msgstr ""
"Добавляет область к указанному пространству после удаления области из ранее "
"назначенного пространства (если таковое имеется).\n"
"[b]Примечание:[/b] Чтобы удалить область из пространства без немедленного "
"добавления ее обратно в другое место, используйте "
"[code]PhysicsServer2D.area_set_space(area, RID())[/code]."

msgid "Sets the transform matrix of the area."
msgstr "Задает матрицу преобразования области."

msgid ""
"Adds [param excepted_body] to the body's list of collision exceptions, so "
"that collisions with it are ignored."
msgstr ""
"Добавляет [param exceptioned_body] в список исключений столкновений тела, "
"чтобы столкновения с ним игнорировались."

msgid ""
"Adds a constant directional force to the body. The force does not affect "
"rotation. The force remains applied over time until cleared with "
"[code]PhysicsServer2D.body_set_constant_force(body, Vector2(0, 0))[/code].\n"
"This is equivalent to using [method body_add_constant_force] at the body's "
"center of mass."
msgstr ""
"Добавляет постоянную направленную силу к телу. Сила не влияет на вращение. "
"Сила остается приложенной с течением времени, пока не будет очищена с помощью "
"[code]PhysicsServer2D.body_set_constant_force(body, Vector2(0, 0))[/code]. \n"
"Это эквивалентно использованию [method body_add_constant_force] в центре масс "
"тела."

msgid ""
"Adds a constant positioned force to the body. The force can affect rotation "
"if [param position] is different from the body's center of mass. The force "
"remains applied over time until cleared with "
"[code]PhysicsServer2D.body_set_constant_force(body, Vector2(0, 0))[/code].\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Добавляет постоянную позиционную силу к телу. Сила может влиять на вращение, "
"если [param position] отличается от центра масс тела. Сила остается "
"приложенной с течением времени, пока не будет очищена с помощью "
"[code]PhysicsServer2D.body_set_constant_force(body, Vector2(0, 0))[/code].\n"
"[param position] — это смещение от начала координат тела в глобальных "
"координатах."

msgid ""
"Adds a constant rotational force to the body. The force does not affect "
"position. The force remains applied over time until cleared with "
"[code]PhysicsServer2D.body_set_constant_torque(body, 0)[/code]."
msgstr ""
"Добавляет постоянную вращательную силу к телу. Сила не влияет на положение. "
"Сила остается приложенной с течением времени, пока не будет очищена с помощью "
"[code]PhysicsServer2D.body_set_constant_torque(body, 0)[/code]."

msgid ""
"Adds a shape to the area, with the given local transform. The shape (together "
"with its [param transform] and [param disabled] properties) is added to an "
"array of shapes, and the shapes of a body are usually referenced by their "
"index in this array."
msgstr ""
"Добавляет фигуру к области с заданным локальным преобразованием. Фигура "
"(вместе со своими свойствами [param transform] и [param disabled]) "
"добавляется в массив фигур, а фигуры тела обычно ссылаются по их индексу в "
"этом массиве."

msgid ""
"Applies a directional force to the body, at the body's center of mass. The "
"force does not affect rotation. A force is time dependent and meant to be "
"applied every physics update.\n"
"This is equivalent to using [method body_apply_force] at the body's center of "
"mass."
msgstr ""
"Применяет направленную силу к телу в центре масс тела. Сила не влияет на "
"вращение. Сила зависит от времени и должна применяться при каждом обновлении "
"физики.\n"
"Это эквивалентно использованию [method body_apply_force] в центре масс тела."

msgid ""
"Applies a directional impulse to the body, at the body's center of mass. The "
"impulse does not affect rotation.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"This is equivalent to using [method body_apply_impulse] at the body's center "
"of mass."
msgstr ""
"Применяет направленный импульс к телу в центре масс тела. Импульс не влияет "
"на вращение.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\").\n"
"Это эквивалентно использованию [method body_apply_impulse] в центре масс тела."

msgid ""
"Applies a positioned force to the body. The force can affect rotation if "
"[param position] is different from the body's center of mass. A force is time "
"dependent and meant to be applied every physics update.\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Применяет позиционированную силу к телу. Сила может влиять на вращение, если "
"[param position] отличается от центра масс тела. Сила зависит от времени и "
"должна применяться при каждом обновлении физики.\n"
"[param position] — это смещение от начала координат тела в глобальных "
"координатах."

msgid ""
"Applies a positioned impulse to the body. The impulse can affect rotation if "
"[param position] is different from the body's center of mass.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Применяет позиционированный импульс к телу. Импульс может влиять на вращение, "
"если [param position] отличается от центра масс тела.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\").\n"
"[param position] — это смещение от начала координат тела в глобальных "
"координатах."

msgid ""
"Applies a rotational force to the body. The force does not affect position. A "
"force is time dependent and meant to be applied every physics update."
msgstr ""
"Применяет вращательную силу к телу. Сила не влияет на положение. Сила зависит "
"от времени и должна применяться при каждом обновлении физики."

msgid ""
"Applies a rotational impulse to the body. The impulse does not affect "
"position.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise)."
msgstr ""
"Применяет вращательный импульс к телу. Импульс не влияет на положение. \n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\")."

msgid ""
"Attaches the [code]ObjectID[/code] of a canvas to the body. Use [method "
"Object.get_instance_id] to get the [code]ObjectID[/code] of a [CanvasLayer]."
msgstr ""
"Прикрепляет [code]ObjectID[/code] холста к телу. Используйте [method "
"Object.get_instance_id], чтобы получить [code]ObjectID[/code] [CanvasLayer]."

msgid ""
"Attaches the [code]ObjectID[/code] of an [Object] to the body. Use [method "
"Object.get_instance_id] to get the [code]ObjectID[/code] of a "
"[CollisionObject2D]."
msgstr ""
"Прикрепляет [code]ObjectID[/code], из [Object], к телу. Используйте [method "
"Object.get_instance_id], чтобы получить [code]ObjectID[/code] "
"[CollisionObject2D]."

msgid ""
"Removes all shapes from the body. This does not delete the shapes themselves, "
"so they can continue to be used elsewhere or added back later."
msgstr ""
"Удаляет все фигуры из тела. Это не удаляет сами фигуры, поэтому их можно "
"продолжать использовать в другом месте или добавлять обратно позже."

msgid ""
"Creates a 2D body object in the physics server, and returns the [RID] that "
"identifies it. The default settings for the created area include a collision "
"layer and mask set to [code]1[/code], and body mode set to [constant "
"BODY_MODE_RIGID].\n"
"Use [method body_add_shape] to add shapes to it, use [method body_set_state] "
"to set its transform, and use [method body_set_space] to add the body to a "
"space."
msgstr ""
"Создает объект 2D-тела на физическом сервере и возвращает [RID], который его "
"идентифицирует. Настройки по умолчанию для созданной области включают слой "
"столкновения и маску, установленные на [code]1[/code], и режим тела, "
"установленный на [constant BODY_MODE_RIGID].\n"
"Используйте [method body_add_shape], чтобы добавить к нему формы, используйте "
"[method body_set_state], чтобы задать его преобразование, и используйте "
"[method body_set_space], чтобы добавить тело в пространство."

msgid ""
"Returns the [code]ObjectID[/code] of the canvas attached to the body. Use "
"[method @GlobalScope.instance_from_id] to retrieve a [CanvasLayer] from a "
"nonzero [code]ObjectID[/code]."
msgstr ""
"Возвращает [code]ObjectID[/code] холста, прикрепленного к телу. Используйте "
"[method @GlobalScope.instance_from_id], чтобы получить [CanvasLayer] из "
"ненулевого [code]ObjectID[/code]."

msgid "Returns the physics layer or layers the body belongs to, as a bitmask."
msgstr ""
"Возвращает физический слой или слои, к которым принадлежит тело, в виде "
"битовой маски."

msgid ""
"Returns the physics layer or layers the body can collide with, as a bitmask."
msgstr ""
"Возвращает физический слой или слои, с которыми может сталкиваться тело, в "
"виде битовой маски."

msgid ""
"Returns the body's collision priority. This is used in the depenetration "
"phase of [method body_test_motion]. The higher the priority is, the lower the "
"penetration into the body will be."
msgstr ""
"Возвращает приоритет столкновения тела. Используется в фазе депенетирования "
"[method body_test_motion]. Чем выше приоритет, тем ниже будет проникновение в "
"тело."

msgid ""
"Returns the body's total constant positional force applied during each "
"physics update.\n"
"See [method body_add_constant_force] and [method "
"body_add_constant_central_force]."
msgstr ""
"Возвращает общую постоянную позиционную силу тела, применяемую во время "
"каждого обновления физики.\n"
"См. [method body_add_constant_force] и [method "
"body_add_constant_central_force]."

msgid ""
"Returns the body's total constant rotational force applied during each "
"physics update.\n"
"See [method body_add_constant_torque]."
msgstr ""
"Возвращает общую постоянную вращательную силу тела, применяемую во время "
"каждого обновления физики.\n"
"См. [method body_add_constant_torque]."

msgid "Returns the body's continuous collision detection mode."
msgstr "Возвращает режим непрерывного обнаружения столкновений тела."

msgid ""
"Returns the [PhysicsDirectBodyState2D] of the body. Returns [code]null[/code] "
"if the body is destroyed or not assigned to a space."
msgstr ""
"Возвращает [PhysicsDirectBodyState2D] тела. Возвращает [code]null[/code], "
"если тело уничтожено или не назначено пространству."

msgid ""
"Returns the maximum number of contacts that the body can report. See [method "
"body_set_max_contacts_reported]."
msgstr ""
"Возвращает максимальное количество контактов, о которых может сообщить тело. "
"См. [method body_set_max_contacts_reported]."

msgid "Returns the body's mode."
msgstr "Возвращает режим тела."

msgid ""
"Returns the [code]ObjectID[/code] attached to the body. Use [method "
"@GlobalScope.instance_from_id] to retrieve an [Object] from a nonzero "
"[code]ObjectID[/code]."
msgstr ""
"Возвращает [code]ObjectID[/code], прикрепленный к телу. Используйте [method "
"@GlobalScope.instance_from_id], чтобы извлечь [Object] из ненулевого "
"[code]ObjectID[/code]."

msgid "Returns the value of the given body parameter."
msgstr "Возвращает значение указанного параметра тела."

msgid ""
"Returns the [RID] of the shape with the given index in the body's array of "
"shapes."
msgstr "Возвращает [RID] фигуры с указанным индексом в массиве фигур тела."

msgid "Returns the number of shapes added to the body."
msgstr "Возвращает количество фигур, добавленных к телу."

msgid ""
"Returns the [RID] of the space assigned to the body. Returns an empty [RID] "
"if no space is assigned."
msgstr ""
"Возвращает [RID] пространства, назначенного телу. Возвращает пустой [RID], "
"если пространство не назначено."

msgid "Returns the value of the given state of the body."
msgstr "Возвращает значение заданного состояния тела."

msgid ""
"Returns [code]true[/code] if the body is omitting the standard force "
"integration. See [method body_set_omit_force_integration]."
msgstr ""
"Возвращает [code]true[/code], если тело пропускает стандартную интеграцию "
"силы. См. [method body_set_omit_force_integration]."

msgid ""
"Removes [param excepted_body] from the body's list of collision exceptions, "
"so that collisions with it are no longer ignored."
msgstr ""
"Удаляет [param exceptioned_body] из списка исключений столкновений тела, так "
"что столкновения с ним больше не игнорируются."

msgid ""
"Removes the shape with the given index from the body's array of shapes. The "
"shape itself is not deleted, so it can continue to be used elsewhere or added "
"back later. As a result of this operation, the body's shapes which used to "
"have indices higher than [param shape_idx] will have their index decreased by "
"one."
msgstr ""
"Удаляет фигуру с указанным индексом из массива фигур тела. Сама фигура не "
"удаляется, поэтому ее можно использовать в другом месте или добавить обратно "
"позже. В результате этой операции у фигур тела, которые имели индексы выше "
"[param shape_idx], индекс будет уменьшен на единицу."

msgid ""
"Restores the default inertia and center of mass of the body based on its "
"shapes. This undoes any custom values previously set using [method "
"body_set_param]."
msgstr ""
"Восстанавливает инерцию и центр масс тела по умолчанию на основе его форм. "
"Это отменяет любые пользовательские значения, ранее заданные с помощью "
"[method body_set_param]."

msgid ""
"Modifies the body's linear velocity so that its projection to the axis "
"[code]axis_velocity.normalized()[/code] is exactly "
"[code]axis_velocity.length()[/code]. This is useful for jumping behavior."
msgstr ""
"Изменяет линейную скорость тела таким образом, что ее проекция на ось "
"[code]axis_velocity.normalized()[/code] равна в точности "
"[code]axis_velocity.length()[/code]. Это полезно для прыжкового поведения."

msgid "Sets the physics layer or layers the body belongs to, via a bitmask."
msgstr ""
"Устанавливает физический слой или слои, к которым принадлежит тело, с помощью "
"битовой маски."

msgid ""
"Sets the physics layer or layers the body can collide with, via a bitmask."
msgstr ""
"Устанавливает физический слой или слои, с которыми может сталкиваться тело, с "
"помощью битовой маски."

msgid ""
"Sets the body's collision priority. This is used in the depenetration phase "
"of [method body_test_motion]. The higher the priority is, the lower the "
"penetration into the body will be."
msgstr ""
"Устанавливает приоритет столкновения тела. Используется в фазе "
"депенетирования [method body_test_motion]. Чем выше приоритет, тем ниже будет "
"проникновение в тело."

msgid ""
"Sets the body's total constant positional force applied during each physics "
"update.\n"
"See [method body_add_constant_force] and [method "
"body_add_constant_central_force]."
msgstr ""
"Устанавливает общую постоянную позиционную силу тела, применяемую во время "
"каждого обновления физики.\n"
"См. [method body_add_constant_force] и [method "
"body_add_constant_central_force]."

msgid ""
"Sets the body's total constant rotational force applied during each physics "
"update.\n"
"See [method body_add_constant_torque]."
msgstr ""
"Устанавливает общую постоянную вращательную силу тела, применяемую во время "
"каждого обновления физики.\n"
"См. [method body_add_constant_torque]."

msgid ""
"Sets the continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body would "
"collide in between physics updates, instead of moving it and correcting its "
"movement if it collided."
msgstr ""
"Устанавливает режим непрерывного обнаружения столкновений.\n"
"Непрерывное обнаружение столкновений пытается предсказать, где движущееся "
"тело столкнется между обновлениями физики, вместо того, чтобы перемещать его "
"и корректировать его движение в случае столкновения."

msgid ""
"Sets the body's custom force integration callback function to [param "
"callable]. Use an empty [Callable] ([code skip-lint]Callable()[/code]) to "
"clear the custom callback.\n"
"The function [param callable] will be called every physics tick, before the "
"standard force integration (see [method body_set_omit_force_integration]). It "
"can be used for example to update the body's linear and angular velocity "
"based on contact with other bodies.\n"
"If [param userdata] is not [code]null[/code], the function [param callable] "
"must take the following two parameters:\n"
"1. [code]state[/code]: a [PhysicsDirectBodyState2D] used to retrieve and "
"modify the body's state,\n"
"2. [code skip-lint]userdata[/code]: a [Variant]; its value will be the [param "
"userdata] passed into this method.\n"
"If [param userdata] is [code]null[/code], then [param callable] must take "
"only the [code]state[/code] parameter."
msgstr ""
"Устанавливает функцию обратного вызова интегрирования силы тела на [param "
"callable]. Используйте пустой [Callable] ([code skip-lint]Callable()[/code]), "
"чтобы очистить пользовательский обратный вызов.\n"
"Функция [param callable] будет вызываться каждый физический тик перед "
"стандартным интегрированием силы (см. [method "
"body_set_omit_force_integration]). Ее можно использовать, например, для "
"обновления линейной и угловой скорости тела на основе контакта с другими "
"телами.\n"
"Если [param userdata] не является [code]null[/code], функция [param callable] "
"должна принимать следующие два параметра:\n"
"1. [code]state[/code]: [PhysicsDirectBodyState2D], используемый для получения "
"и изменения состояния тела,\n"
"2. [code skip-lint]userdata[/code]: [Variant]; ее значением будет [param "
"userdata], переданный в этот метод.\n"
"Если [param userdata] равен [code]null[/code], то [param callable] должен "
"принимать только параметр [code]state[/code]."

msgid ""
"Sets the maximum number of contacts that the body can report. If [param "
"amount] is greater than zero, then the body will keep track of at most this "
"many contacts with other bodies."
msgstr ""
"Устанавливает максимальное количество контактов, о которых может сообщить "
"тело. Если [param amount] больше нуля, то тело будет отслеживать не более "
"этого количества контактов с другими телами."

msgid "Sets the body's mode."
msgstr "Устанавливает режим тела."

msgid ""
"Sets whether the body omits the standard force integration. If [param enable] "
"is [code]true[/code], the body will not automatically use applied forces, "
"torques, and damping to update the body's linear and angular velocity. In "
"this case, [method body_set_force_integration_callback] can be used to "
"manually update the linear and angular velocity instead.\n"
"This method is called when the property [member "
"RigidBody2D.custom_integrator] is set."
msgstr ""
"Устанавливает, будет ли тело пропускать стандартную интеграцию силы. Если "
"[param enable] равно [code]true[/code], тело не будет автоматически "
"использовать приложенные силы, крутящие моменты и демпфирование для "
"обновления линейной и угловой скорости тела. В этом случае [method "
"body_set_force_integration_callback] можно использовать для ручного "
"обновления линейной и угловой скорости.\n"
"Этот метод вызывается, когда задано свойство [member "
"RigidBody2D.custom_integrator]."

msgid "Sets the value of the given body parameter."
msgstr "Устанавливает значение указанного параметра тела."

msgid ""
"Replaces the body's shape at the given index by another shape, while not "
"affecting the [code]transform[/code], [code]disabled[/code], and one-way "
"collision properties at the same index."
msgstr ""
"Заменяет форму тела по указанному индексу на другую форму, не влияя на "
"свойства [code]transform[/code], [code]disabled[/code] и одностороннего "
"столкновения по тому же индексу."

msgid ""
"Sets the one-way collision properties of the body's shape with the given "
"index. If [param enable] is [code]true[/code], the one-way collision "
"direction given by the shape's local upward axis "
"[code]body_get_shape_transform(body, shape_idx).y[/code] will be used to "
"ignore collisions with the shape in the opposite direction, and to ensure "
"depenetration of kinematic bodies happens in this direction."
msgstr ""
"Устанавливает свойства одностороннего столкновения формы тела с заданным "
"индексом. Если [param enable] равен [code]true[/code], направление "
"одностороннего столкновения, заданное локальной восходящей осью формы "
"[code]body_get_shape_transform(body, shape_idx).y[/code], будет "
"использоваться для игнорирования столкновений с формой в противоположном "
"направлении и для обеспечения того, чтобы депенетрация кинематических тел "
"происходила в этом направлении."

msgid ""
"Sets the disabled property of the body's shape with the given index. If "
"[param disabled] is [code]true[/code], then the shape will be ignored in all "
"collision detection."
msgstr ""
"Устанавливает отключенное свойство формы тела с заданным индексом. Если "
"[param disabled] равен [code]true[/code], то форма будет игнорироваться при "
"всех обнаружениях столкновений."

msgid ""
"Sets the local transform matrix of the body's shape with the given index."
msgstr "Задает локальную матрицу преобразования формы тела с заданным индексом."

msgid ""
"Adds the body to the given space, after removing the body from the previously "
"assigned space (if any). If the body's mode is set to [constant "
"BODY_MODE_RIGID], then adding the body to a space will have the following "
"additional effects:\n"
"- If the parameter [constant BODY_PARAM_CENTER_OF_MASS] has never been set "
"explicitly, then the value of that parameter will be recalculated based on "
"the body's shapes.\n"
"- If the parameter [constant BODY_PARAM_INERTIA] is set to a value [code]<= "
"0.0[/code], then the value of that parameter will be recalculated based on "
"the body's shapes, mass, and center of mass.\n"
"[b]Note:[/b] To remove a body from a space without immediately adding it back "
"elsewhere, use [code]PhysicsServer2D.body_set_space(body, RID())[/code]."
msgstr ""
"Добавляет тело в заданное пространство после удаления тела из ранее "
"назначенного пространства (если оно есть). Если режим тела установлен на "
"[constant BODY_MODE_RIGID], то добавление тела в пространство будет иметь "
"следующие дополнительные эффекты:\n"
"- Если параметр [constant BODY_PARAM_CENTER_OF_MASS] никогда не был задан "
"явно, то значение этого параметра будет пересчитано на основе форм тела.\n"
"- Если параметр [constant BODY_PARAM_INERTIA] установлен на значение [code]<= "
"0.0[/code], то значение этого параметра будет пересчитано на основе форм "
"тела, массы и центра масс.\n"
"[b]Примечание:[/b] Чтобы удалить тело из пространства, не добавляя его "
"обратно в другое место, используйте "
"[code]PhysicsServer2D.body_set_space(body, RID())[/code]."

msgid ""
"Sets the value of a body's state.\n"
"[b]Note:[/b] The state change doesn't take effect immediately. The state will "
"change on the next physics frame."
msgstr ""
"Устанавливает значение состояния тела.\n"
"[b]Примечание:[/b] Изменение состояния не вступает в силу немедленно. "
"Состояние изменится в следующем физическом кадре."

msgid ""
"Sets the body's state synchronization callback function to [param callable]. "
"Use an empty [Callable] ([code skip-lint]Callable()[/code]) to clear the "
"callback.\n"
"The function [param callable] will be called every physics frame, assuming "
"that the body was active during the previous physics tick, and can be used to "
"fetch the latest state from the physics server.\n"
"The function [param callable] must take the following parameters:\n"
"1. [code]state[/code]: a [PhysicsDirectBodyState2D], used to retrieve the "
"body's state."
msgstr ""
"Устанавливает функцию обратного вызова синхронизации состояния тела на [param "
"callable]. Используйте пустой [Callable] ([code skip-lint]Callable()[/code]), "
"чтобы очистить обратный вызов.\n"
"Функция [param callable] будет вызываться каждый физический кадр, "
"предполагая, что тело было активно во время предыдущего физического тика, и "
"может использоваться для получения последнего состояния с физического "
"сервера.\n"
"Функция [param callable] должна принимать следующие параметры:\n"
"1. [code]state[/code]: [PhysicsDirectBodyState2D], используемый для получения "
"состояния тела."

msgid ""
"Returns [code]true[/code] if a collision would result from moving the body "
"along a motion vector from a given point in space. See "
"[PhysicsTestMotionParameters2D] for the available motion parameters. "
"Optionally a [PhysicsTestMotionResult2D] object can be passed, which will be "
"used to store the information about the resulting collision."
msgstr ""
"Возвращает [code]true[/code], если столкновение возникнет в результате "
"перемещения тела по вектору движения из заданной точки в пространстве. См. "
"[PhysicsTestMotionParameters2D] для доступных параметров движения. При "
"желании можно передать объект [PhysicsTestMotionResult2D], который будет "
"использоваться для хранения информации о полученном столкновении."

msgid ""
"Creates a 2D capsule shape in the physics server, and returns the [RID] that "
"identifies it. Use [method shape_set_data] to set the capsule's height and "
"radius."
msgstr ""
"Создает форму капсулы 2D на физическом сервере и возвращает [RID], который ее "
"идентифицирует. Используйте [method shape_set_data], чтобы задать высоту и "
"радиус капсулы."

msgid ""
"Creates a 2D circle shape in the physics server, and returns the [RID] that "
"identifies it. Use [method shape_set_data] to set the circle's radius."
msgstr ""
"Создает 2D-круг на физическом сервере и возвращает [RID], который его "
"идентифицирует. Используйте [method shape_set_data], чтобы задать радиус "
"круга."

msgid ""
"Creates a 2D concave polygon shape in the physics server, and returns the "
"[RID] that identifies it. Use [method shape_set_data] to set the concave "
"polygon's segments."
msgstr ""
"Создает 2D вогнутую многоугольную форму на физическом сервере и возвращает "
"[RID], который ее идентифицирует. Используйте [method shape_set_data], чтобы "
"задать сегменты вогнутого многоугольника."

msgid ""
"Creates a 2D convex polygon shape in the physics server, and returns the "
"[RID] that identifies it. Use [method shape_set_data] to set the convex "
"polygon's points."
msgstr ""
"Создает 2D выпуклую многоугольную форму на физическом сервере и возвращает "
"[RID], который ее идентифицирует. Используйте [method shape_set_data] для "
"установки точек выпуклого многоугольника."

msgid "Returns the value of the given damped spring joint parameter."
msgstr ""
"Возвращает значение заданного параметра демпфированного пружинного соединения "
"(spring joint)."

msgid "Sets the value of the given damped spring joint parameter."
msgstr ""
"Устанавливает значение заданного параметра демпфированного пружинного "
"соединения (spring joint)."

msgid ""
"Destroys any of the objects created by PhysicsServer2D. If the [RID] passed "
"is not one of the objects that can be created by PhysicsServer2D, an error "
"will be printed to the console."
msgstr ""
"Уничтожает любой из объектов, созданных PhysicsServer2D. Если переданный "
"[RID] не является одним из объектов, которые могут быть созданы "
"PhysicsServer2D, на консоль будет выведена ошибка."

msgid ""
"Returns the value of a physics engine state specified by [param process_info]."
msgstr ""
"Возвращает значение состояния физического движка, заданное [param "
"process_info]."

msgid ""
"Destroys the joint with the given [RID], creates a new uninitialized joint, "
"and makes the [RID] refer to this new joint."
msgstr ""
"Уничтожает соединение с указанным [RID], создает новое неинициализированное "
"соединение и заставляет [RID] ссылаться на это новое соединение."

msgid ""
"Creates a 2D joint in the physics server, and returns the [RID] that "
"identifies it. To set the joint type, use [method joint_make_damped_spring], "
"[method joint_make_groove] or [method joint_make_pin]. Use [method "
"joint_set_param] to set generic joint parameters."
msgstr ""
"Создает 2D-соединение на физическом сервере и возвращает [RID], который его "
"идентифицирует. Чтобы задать тип соединения, используйте [method "
"joint_make_damped_spring], [method joint_make_groove] или [method "
"joint_make_pin]. Используйте [method joint_set_param] для задания общих "
"параметров соединения."

msgid ""
"Sets whether the bodies attached to the [Joint2D] will collide with each "
"other."
msgstr ""
"Устанавливает, будут ли тела, прикрепленные к [Joint2D], сталкиваться друг с "
"другом."

msgid "Returns the value of the given joint parameter."
msgstr "Возвращает значение указанного параметра соединения."

msgid "Returns the joint's type."
msgstr "Возвращает тип соединения."

msgid ""
"Returns whether the bodies attached to the [Joint2D] will collide with each "
"other."
msgstr ""
"Возвращает, будут ли тела, прикрепленные к [Joint2D], сталкиваться друг с "
"другом."

msgid ""
"Makes the joint a damped spring joint, attached at the point [param anchor_a] "
"(given in global coordinates) on the body [param body_a] and at the point "
"[param anchor_b] (given in global coordinates) on the body [param body_b]. To "
"set the parameters which are specific to the damped spring, see [method "
"damped_spring_joint_set_param]."
msgstr ""
"Делает сочленение демпфированным пружинным сочленением, прикрепленным в точке "
"[param anchor_a] (заданной в глобальных координатах) на теле [param body_a] и "
"в точке [param anchor_b] (заданной в глобальных координатах) на теле [param "
"body_b]. Чтобы задать параметры, специфичные для демпфированной пружины, см. "
"[method damped_spring_joint_set_param]."

msgid "Makes the joint a groove joint."
msgstr "Делает соединение пазовым."

msgid ""
"Makes the joint a pin joint. If [param body_b] is an empty [RID], then [param "
"body_a] is pinned to the point [param anchor] (given in global coordinates); "
"otherwise, [param body_a] is pinned to [param body_b] at the point [param "
"anchor] (given in global coordinates). To set the parameters which are "
"specific to the pin joint, see [method pin_joint_set_param]."
msgstr ""
"Делает сочленение штифтовым. Если [param body_b] — пустой [RID], то [param "
"body_a] прикрепляется к точке [param anchor] (заданной в глобальных "
"координатах); в противном случае [param body_a] прикрепляется к [param "
"body_b] в точке [param anchor] (заданной в глобальных координатах). Чтобы "
"задать параметры, специфичные для штифтового сочленения, см. [method "
"pin_joint_set_param]."

msgid "Sets the value of the given joint parameter."
msgstr "Устанавливает значение указанного параметра соединения."

msgid "Gets a pin joint flag."
msgstr "Получает флаг штифтового соединения (pin joint)."

msgid "Returns the value of a pin joint parameter."
msgstr "Возвращает значение параметра штифтового соединения (pin joint)."

msgid "Sets a pin joint flag."
msgstr "Устанавливает флаг штифтового соединения (pin joint)."

msgid "Sets a pin joint parameter."
msgstr "Устанавливает параметр штифтового соединения."

msgid ""
"Creates a 2D rectangle shape in the physics server, and returns the [RID] "
"that identifies it. Use [method shape_set_data] to set the rectangle's half-"
"extents."
msgstr ""
"Создает 2D-прямоугольную форму на физическом сервере и возвращает [RID], "
"который ее идентифицирует. Используйте [method shape_set_data], чтобы задать "
"половинные размеры прямоугольника."

msgid ""
"Creates a 2D segment shape in the physics server, and returns the [RID] that "
"identifies it. Use [method shape_set_data] to set the segment's start and end "
"points."
msgstr ""
"Создает форму 2D-сегмента на физическом сервере и возвращает [RID], который "
"его идентифицирует. Используйте [method shape_set_data], чтобы задать "
"начальную и конечную точки сегмента."

msgid ""
"Creates a 2D separation ray shape in the physics server, and returns the "
"[RID] that identifies it. Use [method shape_set_data] to set the shape's "
"[code]length[/code] and [code]slide_on_slope[/code] properties."
msgstr ""
"Создает форму луча разделения 2D на физическом сервере и возвращает [RID], "
"который ее идентифицирует. Используйте [method shape_set_data], чтобы задать "
"свойства формы [code]length[/code] и [code]slide_on_slope[/code]."

msgid ""
"Activates or deactivates the 2D physics server. If [param active] is "
"[code]false[/code], then the physics server will not do anything in its "
"physics step."
msgstr ""
"Активирует или деактивирует сервер 2D-физики. Если [param active] равен "
"[code]false[/code], то сервер физики не будет ничего делать на своем шаге "
"физики."

msgid ""
"Returns the shape data that defines the configuration of the shape, such as "
"the half-extents of a rectangle or the segments of a concave shape. See "
"[method shape_set_data] for the precise format of this data in each case."
msgstr ""
"Возвращает данные формы, которые определяют конфигурацию формы, например, "
"полупространства прямоугольника или сегменты вогнутой формы. См. [method "
"shape_set_data] для точного формата этих данных в каждом случае."

msgid "Returns the shape's type."
msgstr "Возвращает тип фигуры."

msgid ""
"Sets the shape data that defines the configuration of the shape. The [param "
"data] to be passed depends on the shape's type (see [method "
"shape_get_type]):\n"
"- [constant SHAPE_WORLD_BOUNDARY]: an array of length two containing a "
"[Vector2] [code]normal[/code] direction and a [float] distance [code]d[/"
"code],\n"
"- [constant SHAPE_SEPARATION_RAY]: a dictionary containing the key "
"[code]length[/code] with a [float] value and the key [code]slide_on_slope[/"
"code] with a [bool] value,\n"
"- [constant SHAPE_SEGMENT]: a [Rect2] [code]rect[/code] containing the first "
"point of the segment in [code]rect.position[/code] and the second point of "
"the segment in [code]rect.size[/code],\n"
"- [constant SHAPE_CIRCLE]: a [float] [code]radius[/code],\n"
"- [constant SHAPE_RECTANGLE]: a [Vector2] [code]half_extents[/code],\n"
"- [constant SHAPE_CAPSULE]: an array of length two (or a [Vector2]) "
"containing a [float] [code]height[/code] and a [float] [code]radius[/code],\n"
"- [constant SHAPE_CONVEX_POLYGON]: either a [PackedVector2Array] of points "
"defining a convex polygon in counterclockwise order (the clockwise outward "
"normal of each segment formed by consecutive points is calculated "
"internally), or a [PackedFloat32Array] of length divisible by four so that "
"every 4-tuple of [float]s contains the coordinates of a point followed by the "
"coordinates of the clockwise outward normal vector to the segment between the "
"current point and the next point,\n"
"- [constant SHAPE_CONCAVE_POLYGON]: a [PackedVector2Array] of length "
"divisible by two (each pair of points forms one segment).\n"
"[b]Warning:[/b] In the case of [constant SHAPE_CONVEX_POLYGON], this method "
"does not check if the points supplied actually form a convex polygon (unlike "
"the [member CollisionPolygon2D.polygon] property)."
msgstr ""
"Устанавливает данные формы, которые определяют конфигурацию формы. [param "
"data], которые необходимо передать, зависят от типа формы (см. [method "
"shape_get_type]):\n"
"- [constant SHAPE_WORLD_BOUNDARY]: массив длины два, содержащий направление "
"[Vector2] [code]normal[/code] и расстояние [float] [code]d[/code],\n"
"- [constant SHAPE_SEPARATION_RAY]: словарь, содержащий ключ [code]length[/"
"code] со значением [float] и ключ [code]slide_on_slope[/code] со значением "
"[bool],\n"
"- [constant SHAPE_SEGMENT]: [Rect2] [code]rect[/code], содержащий первую "
"точку сегмента в [code]rect.position[/code] и вторую точку сегмента в "
"[code]rect.size[/code],\n"
"- [constant SHAPE_CIRCLE]: [float] [code]radius[/code],\n"
"- [constant SHAPE_RECTANGLE]: [Vector2] [code]half_extents[/code],\n"
"- [constant SHAPE_CAPSULE]: массив длиной два (или [Vector2]), содержащий "
"[float] [code]height (высоту)[/code] и [float] [code]radius (радиус)[/code],\n"
"- [constant SHAPE_CONVEX_POLYGON]: либо [PackedVector2Array] точек, "
"определяющих выпуклый многоугольник в порядке против часовой стрелки (внешняя "
"нормаль по часовой стрелке каждого сегмента, образованного последовательными "
"точками, вычисляется внутренне), либо [PackedFloat32Array] длины, кратной "
"четырем, так что каждый кортеж из 4 [float] содержит координаты точки, за "
"которыми следуют координаты вектора внешней нормали по часовой стрелке к "
"сегменту между текущей точкой и следующей точкой,\n"
"- [constant SHAPE_CONCAVE_POLYGON]: [PackedVector2Array] длины, делящейся на "
"два (каждая пара точек образует один сегмент).\n"
"[b]Предупреждение:[/b] В случае [constant SHAPE_CONVEX_POLYGON] этот метод не "
"проверяет, действительно ли предоставленные точки образуют выпуклый "
"многоугольник (в отличие от свойства [member CollisionPolygon2D.polygon])."

msgid ""
"Creates a 2D space in the physics server, and returns the [RID] that "
"identifies it. A space contains bodies and areas, and controls the stepping "
"of the physics simulation of the objects in it."
msgstr ""
"Создает 2D-пространство на физическом сервере и возвращает [RID], который его "
"идентифицирует. Пространство содержит тела и области и управляет пошаговым "
"выполнением физической симуляции объектов в нем."

msgid ""
"Returns the state of a space, a [PhysicsDirectSpaceState2D]. This object can "
"be used for collision/intersection queries."
msgstr ""
"Возвращает состояние пространства, [PhysicsDirectSpaceState2D]. Этот объект "
"может использоваться для запросов на столкновение/пересечение."

msgid "Returns the value of the given space parameter."
msgstr "Возвращает значение указанного параметра пространства."

msgid "Returns [code]true[/code] if the space is active."
msgstr "Возвращает [code]true[/code], если пространство активно."

msgid ""
"Activates or deactivates the space. If [param active] is [code]false[/code], "
"then the physics server will not do anything with this space in its physics "
"step."
msgstr ""
"Активирует или деактивирует пространство. Если [param active] равен "
"[code]false[/code], то физический сервер не будет ничего делать с этим "
"пространством на своем физическом шаге."

msgid "Sets the value of the given space parameter."
msgstr "Устанавливает значение указанного параметра пространства."

msgid ""
"Creates a 2D world boundary shape in the physics server, and returns the "
"[RID] that identifies it. Use [method shape_set_data] to set the shape's "
"normal direction and distance properties."
msgstr ""
"Создает форму границы 2D-мира на физическом сервере и возвращает [RID], "
"который ее идентифицирует. Используйте [method shape_set_data], чтобы задать "
"нормальное направление формы и свойства расстояния."

msgid ""
"Constant to set/get the maximum distance a pair of bodies has to move before "
"their collision status has to be recalculated. The default value of this "
"parameter is [member ProjectSettings.physics/2d/solver/"
"contact_recycle_radius]."
msgstr ""
"Константа для установки/получения максимального расстояния, на которое должна "
"переместиться пара тел, прежде чем их статус столкновения придется "
"пересчитать. Значение этого параметра по умолчанию — [member "
"ProjectSettings.physics/2d/solver/contact_recycle_radius]."

msgid ""
"Constant to set/get the maximum distance a shape can be from another before "
"they are considered separated and the contact is discarded. The default value "
"of this parameter is [member ProjectSettings.physics/2d/solver/"
"contact_max_separation]."
msgstr ""
"Константа для установки/получения максимального расстояния между фигурами, на "
"котором они могут находиться, прежде чем они будут считаться разделенными, а "
"контакт будет отброшен. Значение этого параметра по умолчанию — [member "
"ProjectSettings.physics/2d/solver/contact_max_separation]."

msgid ""
"Constant to set/get the maximum distance a shape can penetrate another shape "
"before it is considered a collision. The default value of this parameter is "
"[member ProjectSettings.physics/2d/solver/contact_max_allowed_penetration]."
msgstr ""
"Константа для установки/получения максимального расстояния, на которое фигура "
"может проникнуть в другую фигуру, прежде чем это будет считаться "
"столкновением. Значение этого параметра по умолчанию — [member "
"ProjectSettings.physics/2d/solver/contact_max_allowed_penetration]."

msgid ""
"Constant to set/get the default solver bias for all physics contacts. A "
"solver bias is a factor controlling how much two objects \"rebound\", after "
"overlapping, to avoid leaving them in that state because of numerical "
"imprecision. The default value of this parameter is [member "
"ProjectSettings.physics/2d/solver/default_contact_bias]."
msgstr ""
"Константа для установки/получения смещения решателя по умолчанию для всех "
"физических контактов. Смещение решателя — это фактор, контролирующий, "
"насколько два объекта «отскакивают» после наложения, чтобы избежать их "
"оставления в этом состоянии из-за числовой неточности. Значение этого "
"параметра по умолчанию — [member ProjectSettings.physics/2d/solver/"
"default_contact_bias]."

msgid ""
"Constant to set/get the threshold linear velocity of activity. A body marked "
"as potentially inactive for both linear and angular velocity will be put to "
"sleep after the time given. The default value of this parameter is [member "
"ProjectSettings.physics/2d/sleep_threshold_linear]."
msgstr ""
"Константа для установки/получения пороговой линейной скорости активности. "
"Тело, отмеченное как потенциально неактивное как для линейной, так и для "
"угловой скорости, будет переведено в спящий режим по истечении указанного "
"времени. Значение этого параметра по умолчанию — [member "
"ProjectSettings.physics/2d/sleep_threshold_linear]."

msgid ""
"Constant to set/get the threshold angular velocity of activity. A body marked "
"as potentially inactive for both linear and angular velocity will be put to "
"sleep after the time given. The default value of this parameter is [member "
"ProjectSettings.physics/2d/sleep_threshold_angular]."
msgstr ""
"Константа для установки/получения пороговой угловой скорости активности. "
"Тело, отмеченное как потенциально неактивное как для линейной, так и для "
"угловой скорости, будет переведено в спящий режим по истечении указанного "
"времени. Значение этого параметра по умолчанию — [member "
"ProjectSettings.physics/2d/sleep_threshold_angular]."

msgid ""
"Constant to set/get the maximum time of activity. A body marked as "
"potentially inactive for both linear and angular velocity will be put to "
"sleep after this time. The default value of this parameter is [member "
"ProjectSettings.physics/2d/time_before_sleep]."
msgstr ""
"Константа для установки/получения максимального времени активности. Тело, "
"отмеченное как потенциально неактивное как для линейной, так и для угловой "
"скорости, будет переведено в спящий режим по истечении этого времени. "
"Значение этого параметра по умолчанию — [member ProjectSettings.physics/2d/"
"time_before_sleep]."

msgid ""
"Constant to set/get the default solver bias for all physics constraints. A "
"solver bias is a factor controlling how much two objects \"rebound\", after "
"violating a constraint, to avoid leaving them in that state because of "
"numerical imprecision. The default value of this parameter is [member "
"ProjectSettings.physics/2d/solver/default_constraint_bias]."
msgstr ""
"Константа для установки/получения смещения решателя по умолчанию для всех "
"физических ограничений. Смещение решателя — это фактор, контролирующий, "
"насколько два объекта «отскакивают» после нарушения ограничения, чтобы не "
"оставлять их в этом состоянии из-за числовой неточности. Значение этого "
"параметра по умолчанию — [member ProjectSettings.physics/2d/solver/"
"default_constraint_bias]."

msgid ""
"Constant to set/get the number of solver iterations for all contacts and "
"constraints. The greater the number of iterations, the more accurate the "
"collisions will be. However, a greater number of iterations requires more CPU "
"power, which can decrease performance. The default value of this parameter is "
"[member ProjectSettings.physics/2d/solver/solver_iterations]."
msgstr ""
"Константа для установки/получения количества итераций решателя для всех "
"контактов и ограничений. Чем больше количество итераций, тем точнее будут "
"столкновения. Однако большее количество итераций требует большей мощности ЦП, "
"что может снизить производительность. Значение этого параметра по умолчанию — "
"[member ProjectSettings.physics/2d/solver/solver_iterations]."

msgid ""
"This is the constant for creating world boundary shapes. A world boundary "
"shape is an [i]infinite[/i] line with an origin point, and a normal. Thus, it "
"can be used for front/behind checks."
msgstr ""
"Это константа для создания форм границ мира. Форма границ мира — это "
"[i]бесконечная[/i] линия с начальной точкой и нормалью. Таким образом, ее "
"можно использовать для проверок спереди/сзади."

msgid ""
"This is the constant for creating separation ray shapes. A separation ray is "
"defined by a length and separates itself from what is touching its far "
"endpoint. Useful for character controllers."
msgstr ""
"Это константа для создания форм разделительного луча. Разделительный луч "
"определяется длиной и отделяет себя от того, что касается его дальней "
"конечной точки. Полезно для контроллеров персонажей."

msgid ""
"This is the constant for creating segment shapes. A segment shape is a "
"[i]finite[/i] line from a point A to a point B. It can be checked for "
"intersections."
msgstr ""
"Это константа для создания сегментных форм. Сегментная форма — это "
"[i]конечная[/i] линия от точки A до точки B. Ее можно проверить на "
"пересечения."

msgid ""
"This is the constant for creating circle shapes. A circle shape only has a "
"radius. It can be used for intersections and inside/outside checks."
msgstr ""
"Это константа для создания круговых форм. Круговая форма имеет только радиус. "
"Ее можно использовать для пересечений и внутренних/внешних проверок."

msgid ""
"This is the constant for creating rectangle shapes. A rectangle shape is "
"defined by a width and a height. It can be used for intersections and inside/"
"outside checks."
msgstr ""
"Это константа для создания прямоугольных форм. Прямоугольная форма "
"определяется шириной и высотой. Ее можно использовать для пересечений и "
"внутренних/внешних проверок."

msgid ""
"This is the constant for creating capsule shapes. A capsule shape is defined "
"by a radius and a length. It can be used for intersections and inside/outside "
"checks."
msgstr ""
"Это константа для создания форм капсул. Форма капсулы определяется радиусом и "
"длиной. Ее можно использовать для пересечений и внутренних/внешних проверок."

msgid ""
"This is the constant for creating convex polygon shapes. A polygon is defined "
"by a list of points. It can be used for intersections and inside/outside "
"checks."
msgstr ""
"Это константа для создания выпуклых многоугольных фигур. Многоугольник "
"определяется списком точек. Его можно использовать для пересечений и "
"внутренних/внешних проверок."

msgid ""
"This is the constant for creating concave polygon shapes. A polygon is "
"defined by a list of points. It can be used for intersections checks, but not "
"for inside/outside checks."
msgstr ""
"Это константа для создания вогнутых многоугольных фигур. Многоугольник "
"определяется списком точек. Его можно использовать для проверки пересечений, "
"но не для проверки внутри/снаружи."

msgid ""
"This constant is used internally by the engine. Any attempt to create this "
"kind of shape results in an error."
msgstr ""
"Эта константа используется внутри движка. Любая попытка создать такую форму "
"приведет к ошибке."

msgid ""
"Constant to set/get gravity override mode in an area. See [enum "
"AreaSpaceOverrideMode] for possible values. The default value of this "
"parameter is [constant AREA_SPACE_OVERRIDE_DISABLED]."
msgstr ""
"Константа для установки/получения режима переопределения гравитации в "
"области. См. [enum AreaSpaceOverrideMode] для возможных значений. Значение "
"этого параметра по умолчанию — [constant AREA_SPACE_OVERRIDE_DISABLED]."

msgid ""
"Constant to set/get gravity strength in an area. The default value of this "
"parameter is [code]9.80665[/code]."
msgstr ""
"Константа для установки/получения силы гравитации в области. Значение этого "
"параметра по умолчанию [code]9.80665[/code]."

msgid ""
"Constant to set/get gravity vector/center in an area. The default value of "
"this parameter is [code]Vector2(0, -1)[/code]."
msgstr ""
"Константа для установки/получения вектора/центра гравитации в области. "
"Значение этого параметра по умолчанию: [code]Vector2(0, -1)[/code]."

msgid ""
"Constant to set/get whether the gravity vector of an area is a direction, or "
"a center point. The default value of this parameter is [code]false[/code]."
msgstr ""
"Константа для установки/получения того, является ли вектор гравитации области "
"направлением или центральной точкой. Значение этого параметра по умолчанию — "
"[code]false[/code]."

msgid ""
"Constant to set/get the distance at which the gravity strength is equal to "
"the gravity controlled by [constant AREA_PARAM_GRAVITY]. For example, on a "
"planet 100 pixels in radius with a surface gravity of 4.0 px/s², set the "
"gravity to 4.0 and the unit distance to 100.0. The gravity will have falloff "
"according to the inverse square law, so in the example, at 200 pixels from "
"the center the gravity will be 1.0 px/s² (twice the distance, 1/4th the "
"gravity), at 50 pixels it will be 16.0 px/s² (half the distance, 4x the "
"gravity), and so on.\n"
"The above is true only when the unit distance is a positive number. When the "
"unit distance is set to 0.0, the gravity will be constant regardless of "
"distance. The default value of this parameter is [code]0.0[/code]."
msgstr ""
"Константа для установки/получения расстояния, на котором сила гравитации "
"равна силе гравитации, контролируемой [constant AREA_PARAM_GRAVITY]. "
"Например, на планете радиусом 100 пикселей с поверхностной гравитацией 4,0 px/"
"s² установите гравитацию 4,0 и единичное расстояние 100,0. Гравитация будет "
"спадать в соответствии с законом обратных квадратов, поэтому в этом примере "
"на расстоянии 200 пикселей от центра гравитация будет 1,0 px/s² (в два раза "
"больше расстояния, 1/4 гравитации), на расстоянии 50 пикселей она будет 16,0 "
"px/s² (в два раза больше расстояния, 4x гравитации) и т. д.\n"
"Вышеуказанное верно только тогда, когда единичное расстояние является "
"положительным числом. Когда единичное расстояние установлено равным 0,0, "
"гравитация будет постоянной независимо от расстояния. Значение этого "
"параметра по умолчанию равно [code]0.0[/code]."

msgid ""
"Constant to set/get linear damping override mode in an area. See [enum "
"AreaSpaceOverrideMode] for possible values. The default value of this "
"parameter is [constant AREA_SPACE_OVERRIDE_DISABLED]."
msgstr ""
"Константа для установки/получения режима переопределения линейного затухания "
"в области. См. [enum AreaSpaceOverrideMode] для возможных значений. Значение "
"этого параметра по умолчанию — [constant AREA_SPACE_OVERRIDE_DISABLED]."

msgid ""
"Constant to set/get the linear damping factor of an area. The default value "
"of this parameter is [code]0.1[/code]."
msgstr ""
"Константа для установки/получения линейного коэффициента затухания области. "
"Значение этого параметра по умолчанию [code]0.1[/code]."

msgid ""
"Constant to set/get angular damping override mode in an area. See [enum "
"AreaSpaceOverrideMode] for possible values. The default value of this "
"parameter is [constant AREA_SPACE_OVERRIDE_DISABLED]."
msgstr ""
"Константа для установки/получения режима переопределения углового "
"демпфирования в области. См. [enum AreaSpaceOverrideMode] для возможных "
"значений. Значение этого параметра по умолчанию — [constant "
"AREA_SPACE_OVERRIDE_DISABLED]."

msgid ""
"Constant to set/get the angular damping factor of an area. The default value "
"of this parameter is [code]1.0[/code]."
msgstr ""
"Константа для установки/получения углового коэффициента затухания области. "
"Значение этого параметра по умолчанию [code]1.0[/code]."

msgid ""
"Constant to set/get the priority (order of processing) of an area. The "
"default value of this parameter is [code]0[/code]."
msgstr ""
"Константа для установки/получения приоритета (порядка обработки) области. "
"Значение этого параметра по умолчанию [code]0[/code]."

msgid ""
"This area does not affect gravity/damp. These are generally areas that exist "
"only to detect collisions, and objects entering or exiting them."
msgstr ""
"Эта область не влияет на гравитацию/влажность. Это, как правило, области, "
"которые существуют только для обнаружения столкновений и объектов, входящих "
"или выходящих из них."

msgid ""
"This area adds its gravity/damp values to whatever has been calculated so "
"far. This way, many overlapping areas can combine their physics to make "
"interesting effects."
msgstr ""
"Эта область добавляет свои значения гравитации/влажности к тому, что было "
"рассчитано до сих пор. Таким образом, многие перекрывающиеся области могут "
"объединить свою физику, чтобы создать интересные эффекты."

msgid ""
"This area adds its gravity/damp values to whatever has been calculated so "
"far. Then stops taking into account the rest of the areas, even the default "
"one."
msgstr ""
"Эта область добавляет свои значения гравитации/влажности ко всему, что было "
"рассчитано до сих пор. Затем перестает учитывать остальные области, даже "
"область по умолчанию."

msgid ""
"This area replaces any gravity/damp, even the default one, and stops taking "
"into account the rest of the areas."
msgstr ""
"Эта область заменяет любую гравитацию/влажность, даже заданную по умолчанию, "
"и прекращает учитывать остальные области."

msgid ""
"This area replaces any gravity/damp calculated so far, but keeps calculating "
"the rest of the areas, down to the default one."
msgstr ""
"Эта область заменяет все рассчитанные до сих пор значения гравитации/"
"влажности, но продолжает рассчитывать остальные области, вплоть до области по "
"умолчанию."

msgid ""
"Constant for static bodies. In this mode, a body can be only moved by user "
"code and doesn't collide with other bodies along its path when moved."
msgstr ""
"Константа для статических тел. В этом режиме тело может перемещаться только "
"пользовательским кодом и не сталкивается с другими телами на своем пути при "
"перемещении."

msgid ""
"Constant for kinematic bodies. In this mode, a body can be only moved by user "
"code and collides with other bodies along its path."
msgstr ""
"Константа для кинематических тел. В этом режиме тело может перемещаться "
"только пользовательским кодом и сталкиваться с другими телами на своем пути."

msgid ""
"Constant for rigid bodies. In this mode, a body can be pushed by other bodies "
"and has forces applied."
msgstr ""
"Постоянная для твердых тел. В этом режиме тело может толкаться другими телами "
"и к нему могут быть приложены силы."

msgid ""
"Constant for linear rigid bodies. In this mode, a body can not rotate, and "
"only its linear velocity is affected by external forces."
msgstr ""
"Постоянная для линейных твердых тел. В этом режиме тело не может вращаться, и "
"только его линейная скорость подвержена влиянию внешних сил."

msgid ""
"Constant to set/get a body's bounce factor. The default value of this "
"parameter is [code]0.0[/code]."
msgstr ""
"Константа для установки/получения коэффициента отскока тела. Значение этого "
"параметра по умолчанию [code]0.0[/code]."

msgid ""
"Constant to set/get a body's friction. The default value of this parameter is "
"[code]1.0[/code]."
msgstr ""
"Константа для установки/получения трения тела. Значение этого параметра по "
"умолчанию [code]1.0[/code]."

msgid ""
"Constant to set/get a body's mass. The default value of this parameter is "
"[code]1.0[/code]. If the body's mode is set to [constant BODY_MODE_RIGID], "
"then setting this parameter will have the following additional effects:\n"
"- If the parameter [constant BODY_PARAM_CENTER_OF_MASS] has never been set "
"explicitly, then the value of that parameter will be recalculated based on "
"the body's shapes.\n"
"- If the parameter [constant BODY_PARAM_INERTIA] is set to a value [code]<= "
"0.0[/code], then the value of that parameter will be recalculated based on "
"the body's shapes, mass, and center of mass."
msgstr ""
"Константа для установки/получения массы тела. Значение этого параметра по "
"умолчанию — [code]1.0[/code]. Если режим тела установлен на [constant "
"BODY_MODE_RIGID], то установка этого параметра будет иметь следующие "
"дополнительные эффекты:\n"
"- Если параметр [constant BODY_PARAM_CENTER_OF_MASS] никогда не был задан "
"явно, то значение этого параметра будет пересчитано на основе форм тела.\n"
"- Если параметр [constant BODY_PARAM_INERTIA] установлен на значение [code]<= "
"0.0[/code], то значение этого параметра будет пересчитано на основе форм "
"тела, массы и центра масс."

msgid ""
"Constant to set/get a body's inertia. The default value of this parameter is "
"[code]0.0[/code]. If the body's inertia is set to a value [code]<= 0.0[/"
"code], then the inertia will be recalculated based on the body's shapes, "
"mass, and center of mass."
msgstr ""
"Константа для установки/получения инерции тела. Значение этого параметра по "
"умолчанию [code]0.0[/code]. Если инерция тела установлена на значение "
"[code]<= 0.0[/code], то инерция будет пересчитана на основе формы тела, массы "
"и центра масс."

msgid ""
"Constant to set/get a body's center of mass position in the body's local "
"coordinate system. The default value of this parameter is [code]Vector2(0, 0)"
"[/code]. If this parameter is never set explicitly, then it is recalculated "
"based on the body's shapes when setting the parameter [constant "
"BODY_PARAM_MASS] or when calling [method body_set_space]."
msgstr ""
"Константа для установки/получения положения центра масс тела в его локальной "
"системе координат. Значение этого параметра по умолчанию — [code]Vector2(0, 0)"
"[/code]. Если этот параметр не задан явно, он пересчитывается на основе формы "
"тела при установке параметра [constant BODY_PARAM_MASS] или при вызове "
"[method body_set_space]."

msgid ""
"Constant to set/get a body's gravity multiplier. The default value of this "
"parameter is [code]1.0[/code]."
msgstr ""
"Константа для установки/получения множителя гравитации тела. Значение этого "
"параметра по умолчанию [code]1.0[/code]."

msgid ""
"Constant to set/get a body's linear damping mode. See [enum BodyDampMode] for "
"possible values. The default value of this parameter is [constant "
"BODY_DAMP_MODE_COMBINE]."
msgstr ""
"Константа для установки/получения линейного режима демпфирования тела. См. "
"[enum BodyDampMode] для возможных значений. Значение этого параметра по "
"умолчанию — [constant BODY_DAMP_MODE_COMBINE]."

msgid ""
"Constant to set/get a body's angular damping mode. See [enum BodyDampMode] "
"for possible values. The default value of this parameter is [constant "
"BODY_DAMP_MODE_COMBINE]."
msgstr ""
"Константа для установки/получения режима углового демпфирования тела. См. "
"[enum BodyDampMode] для возможных значений. Значение этого параметра по "
"умолчанию — [constant BODY_DAMP_MODE_COMBINE]."

msgid ""
"Constant to set/get a body's linear damping factor. The default value of this "
"parameter is [code]0.0[/code]."
msgstr ""
"Константа для установки/получения линейного коэффициента затухания тела. "
"Значение этого параметра по умолчанию [code]0.0[/code]."

msgid ""
"Constant to set/get a body's angular damping factor. The default value of "
"this parameter is [code]0.0[/code]."
msgstr ""
"Константа для установки/получения углового коэффициента демпфирования тела. "
"Значение этого параметра по умолчанию [code]0.0[/code]."

msgid "Represents the size of the [enum BodyParameter] enum."
msgstr "Представляет размер перечисления [enum BodyParameter]."

msgid ""
"The body's damping value is added to any value set in areas or the default "
"value."
msgstr ""
"Значение демпфирования тела добавляется к любому значению, заданному в "
"областях, или к значению по умолчанию."

msgid ""
"The body's damping value replaces any value set in areas or the default value."
msgstr ""
"Значение демпфирования тела заменяет любое значение, заданное в областях, или "
"значение по умолчанию."

msgid "Constant to set/get the current transform matrix of the body."
msgstr "Константа для установки/получения текущей матрицы преобразования тела."

msgid "Constant to set/get the current linear velocity of the body."
msgstr "Константа для установки/получения текущей линейной скорости тела."

msgid "Constant to set/get the current angular velocity of the body."
msgstr "Константа для установки/получения текущей угловой скорости тела."

msgid "Constant to sleep/wake up a body, or to get whether it is sleeping."
msgstr "Постоянно, чтобы заснуть/разбудить тело или узнать, спит ли оно."

msgid "Constant to set/get whether the body can sleep."
msgstr ""
"Константа для установки/получения информации о том, может ли тело спать."

msgid "Constant to create pin joints."
msgstr "Константа для создания штифтовых соединений."

msgid "Constant to create groove joints."
msgstr "Константа для создания пазов."

msgid "Constant to create damped spring joints."
msgstr "Константа для создания демпфирующих пружинных соединений."

msgid "Represents the size of the [enum JointType] enum."
msgstr "Представляет размер перечисления [enum JointType]."

msgid ""
"Constant to set/get how fast the joint pulls the bodies back to satisfy the "
"joint constraint. The lower the value, the more the two bodies can pull on "
"the joint. The default value of this parameter is [code]0.0[/code].\n"
"[b]Note:[/b] In Godot Physics, this parameter is only used for pin joints and "
"groove joints."
msgstr ""
"Константа для установки/получения того, насколько быстро сочленение тянет "
"тела назад, чтобы удовлетворить ограничение сочленения. Чем ниже значение, "
"тем больше два тела могут тянуть сочленение. Значение этого параметра по "
"умолчанию — [code]0.0[/code].\n"
"[b]Примечание:[/b] В физике Godot этот параметр используется только для "
"штифтовых и пазовых соединений."

msgid ""
"Constant to set/get the maximum speed with which the joint can apply "
"corrections. The default value of this parameter is [code]3.40282e+38[/"
"code].\n"
"[b]Note:[/b] In Godot Physics, this parameter is only used for groove joints."
msgstr ""
"Константа для установки/получения максимальной скорости, с которой сочленение "
"может применять исправления. Значение этого параметра по умолчанию — "
"[code]3.40282e+38[/code].\n"
"[b]Примечание:[/b] В физике Godot этот параметр используется только для "
"сочленений с канавками."

msgid ""
"Constant to set/get the maximum force that the joint can use to act on the "
"two bodies. The default value of this parameter is [code]3.40282e+38[/code].\n"
"[b]Note:[/b] In Godot Physics, this parameter is only used for groove joints."
msgstr ""
"Константа для установки/получения максимальной силы, которую может "
"использовать соединение для воздействия на два тела. Значение этого параметра "
"по умолчанию — [code]3.40282e+38[/code].\n"
"[b]Примечание:[/b] В физике Годо этот параметр используется только для пазов."

msgid ""
"Constant to set/get a how much the bond of the pin joint can flex. The "
"default value of this parameter is [code]0.0[/code]."
msgstr ""
"Константа для установки/получения того, насколько может изгибаться соединение "
"штифтового соединения. Значение этого параметра по умолчанию — [code]0.0[/"
"code]."

msgid "The maximum rotation around the pin."
msgstr "Максимальное вращение вокруг штифта."

msgid "The minimum rotation around the pin."
msgstr "Минимальное вращение вокруг штифта."

msgid "Target speed for the motor. In radians per second."
msgstr "Целевая скорость двигателя. В радианах в секунду."

msgid "If [code]true[/code], the pin has a maximum and a minimum rotation."
msgstr ""
"Если [code]true[/code], штифт имеет максимальное и минимальное вращение."

msgid "If [code]true[/code], a motor turns the pin."
msgstr "Если [code]true[/code], двигатель поворачивает штифт."

msgid ""
"Sets the resting length of the spring joint. The joint will always try to go "
"to back this length when pulled apart. The default value of this parameter is "
"the distance between the joint's anchor points."
msgstr ""
"Устанавливает длину покоя пружинного соединения. Соединение всегда будет "
"пытаться вернуться на эту длину при раздвижении. Значение этого параметра по "
"умолчанию — расстояние между точками крепления соединения."

msgid ""
"Sets the stiffness of the spring joint. The joint applies a force equal to "
"the stiffness times the distance from its resting length. The default value "
"of this parameter is [code]20.0[/code]."
msgstr ""
"Устанавливает жесткость пружинного соединения. Соединение прикладывает силу, "
"равную жесткости, умноженной на расстояние от его длины покоя. Значение этого "
"параметра по умолчанию — [code]20.0[/code]."

msgid ""
"Sets the damping ratio of the spring joint. A value of 0 indicates an "
"undamped spring, while 1 causes the system to reach equilibrium as fast as "
"possible (critical damping). The default value of this parameter is "
"[code]1.5[/code]."
msgstr ""
"Устанавливает коэффициент демпфирования пружинного соединения. Значение 0 "
"указывает на недемпфированную пружину, а значение 1 заставляет систему "
"достигать равновесия как можно быстрее (критическое демпфирование). Значение "
"этого параметра по умолчанию — [code]1.5[/code]."

msgid ""
"Disables continuous collision detection. This is the fastest way to detect "
"body collisions, but it can miss small and/or fast-moving objects."
msgstr ""
"Отключает непрерывное обнаружение столкновений. Это самый быстрый способ "
"обнаружения столкновений тел, но он может пропустить небольшие и/или быстро "
"движущиеся объекты."

msgid ""
"Enables continuous collision detection by raycasting. It is faster than "
"shapecasting, but less precise."
msgstr ""
"Позволяет непрерывно обнаруживать столкновения с помощью raycasting. Это "
"быстрее, чем shapecasting, но менее точно."

msgid ""
"Enables continuous collision detection by shapecasting. It is the slowest CCD "
"method, and the most precise."
msgstr ""
"Позволяет непрерывно обнаруживать столкновения с помощью шейпкастинга. Это "
"самый медленный метод ПЗС, но и самый точный."

msgid ""
"The value of the first parameter and area callback function receives, when an "
"object enters one of its shapes."
msgstr ""
"Значение первого параметра и функция обратного вызова области получает, когда "
"объект входит в одну из ее фигур."

msgid ""
"The value of the first parameter and area callback function receives, when an "
"object exits one of its shapes."
msgstr ""
"Значение первого параметра и функция обратного вызова области получает, когда "
"объект выходит из одной из своих фигур."

msgid "Constant to get the number of objects that are not sleeping."
msgstr "Константа для получения количества объектов, которые не спят."

msgid "Constant to get the number of possible collisions."
msgstr "Константа для получения количества возможных столкновений."

msgid ""
"Constant to get the number of space regions where a collision could occur."
msgstr ""
"Константа для получения количества областей пространства, где может произойти "
"столкновение."

msgid ""
"Provides virtual methods that can be overridden to create custom "
"[PhysicsServer2D] implementations."
msgstr ""
"Предоставляет виртуальные методы, которые можно переопределить для создания "
"пользовательских реализаций [PhysicsServer2D]."

msgid ""
"This class extends [PhysicsServer2D] by providing additional virtual methods "
"that can be overridden. When these methods are overridden, they will be "
"called instead of the internal methods of the physics server.\n"
"Intended for use with GDExtension to create custom implementations of "
"[PhysicsServer2D]."
msgstr ""
"Этот класс расширяет [PhysicsServer2D], предоставляя дополнительные "
"виртуальные методы, которые можно переопределить. Когда эти методы "
"переопределяются, они будут вызываться вместо внутренних методов физического "
"сервера.\n"
"Предназначено для использования с GDExtension для создания пользовательских "
"реализаций [PhysicsServer2D]."

msgid "Overridable version of [method PhysicsServer2D.area_add_shape]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_add_shape]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.area_attach_canvas_instance_id]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.area_attach_canvas_instance_id]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.area_attach_object_instance_id]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.area_attach_object_instance_id]."

msgid "Overridable version of [method PhysicsServer2D.area_clear_shapes]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_clear_shapes]."

msgid "Overridable version of [method PhysicsServer2D.area_create]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_get_canvas_instance_id]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.area_get_canvas_instance_id]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_get_collision_layer]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.area_get_collision_layer]."

msgid "Overridable version of [method PhysicsServer2D.area_get_collision_mask]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.area_get_collision_mask]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_get_object_instance_id]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.area_get_object_instance_id]."

msgid "Overridable version of [method PhysicsServer2D.area_get_param]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_get_param]."

msgid "Overridable version of [method PhysicsServer2D.area_get_shape]."
msgstr "Переопределяемая версия[method PhysicsServer2D.area_get_shape]."

msgid "Overridable version of [method PhysicsServer2D.area_get_shape_count]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_get_shape_count]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_get_shape_transform]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.area_get_shape_transform]."

msgid "Overridable version of [method PhysicsServer2D.area_get_space]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_get_space]."

msgid "Overridable version of [method PhysicsServer2D.area_get_transform]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_get_transform]."

msgid "Overridable version of [method PhysicsServer2D.area_remove_shape]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_remove_shape]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.area_set_area_monitor_callback]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.area_set_area_monitor_callback]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_set_collision_layer]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.area_set_collision_layer]."

msgid "Overridable version of [method PhysicsServer2D.area_set_collision_mask]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.area_set_collision_mask]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_set_monitor_callback]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.area_set_monitor_callback]."

msgid "Overridable version of [method PhysicsServer2D.area_set_monitorable]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_set_monitorable]."

msgid "Overridable version of [method PhysicsServer2D.area_set_param]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_set_param]."

msgid ""
"If set to [code]true[/code], allows the area with the given [RID] to detect "
"mouse inputs when the mouse cursor is hovering on it.\n"
"Overridable version of [PhysicsServer2D]'s internal [code]area_set_pickable[/"
"code] method. Corresponds to [member CollisionObject2D.input_pickable]."
msgstr ""
"Если установлено значение [code]true[/code], позволяет области с заданным "
"[RID] обнаруживать ввод мыши, когда курсор мыши наведен на нее.\n"
"Переопределяемая версия внутреннего метода [code]area_set_pickable[/code] "
"[PhysicsServer2D]. Соответствует [member CollisionObject2D.input_pickable]."

msgid "Overridable version of [method PhysicsServer2D.area_set_shape]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_set_shape]."

msgid "Overridable version of [method PhysicsServer2D.area_set_shape_disabled]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.area_set_shape_disabled]."

msgid ""
"Overridable version of [method PhysicsServer2D.area_set_shape_transform]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.area_set_shape_transform]."

msgid "Overridable version of [method PhysicsServer2D.area_set_space]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_set_space]."

msgid "Overridable version of [method PhysicsServer2D.area_set_transform]."
msgstr "Переопределяемая версия [method PhysicsServer2D.area_set_transform]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_add_collision_exception]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_add_collision_exception]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_add_constant_central_force]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_add_constant_central_force]."

msgid "Overridable version of [method PhysicsServer2D.body_add_constant_force]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_add_constant_force]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_add_constant_torque]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_add_constant_torque]."

msgid "Overridable version of [method PhysicsServer2D.body_add_shape]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_add_shape]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_apply_central_force]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_apply_central_force]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_apply_central_impulse]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_apply_central_impulse]."

msgid "Overridable version of [method PhysicsServer2D.body_apply_force]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_apply_force]."

msgid "Overridable version of [method PhysicsServer2D.body_apply_impulse]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_apply_impulse]."

msgid "Overridable version of [method PhysicsServer2D.body_apply_torque]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_apply_torque]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_apply_torque_impulse]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_apply_torque_impulse]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_attach_canvas_instance_id]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_attach_canvas_instance_id]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_attach_object_instance_id]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_attach_object_instance_id]."

msgid "Overridable version of [method PhysicsServer2D.body_clear_shapes]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_clear_shapes]."

msgid ""
"Given a [param body], a [param shape], and their respective parameters, this "
"method should return [code]true[/code] if a collision between the two would "
"occur, with additional details passed in [param results].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]shape_collide[/"
"code] method. Corresponds to [method PhysicsDirectSpaceState2D.collide_shape]."
msgstr ""
"При наличии [param body], [param shape] и их соответствующих параметров этот "
"метод должен возвращать [code]true[/code], если произойдет столкновение между "
"ними, с дополнительными подробностями, переданными в [param results].\n"
"Переопределяемая версия внутреннего метода [code]shape_collide[/code] "
"[PhysicsServer2D]. Соответствует [method "
"PhysicsDirectSpaceState2D.collide_shape]."

msgid "Overridable version of [method PhysicsServer2D.body_create]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_canvas_instance_id]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_get_canvas_instance_id]."

msgid ""
"Returns the [RID]s of all bodies added as collision exceptions for the given "
"[param body]. See also [method _body_add_collision_exception] and [method "
"_body_remove_collision_exception].\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]body_get_collision_exceptions[/code] method. Corresponds to [method "
"PhysicsBody2D.get_collision_exceptions]."
msgstr ""
"Возвращает [RID] всех тел, добавленных как исключения столкновений для "
"заданного [param body]. См. также [method _body_add_collision_exception] и "
"[method _body_remove_collision_exception].\n"
"Переопределяемая версия внутреннего метода "
"[code]body_get_collision_exceptions[/code] [PhysicsServer2D]. Соответствует "
"[method PhysicsBody2D.get_collision_exceptions]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_collision_layer]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_get_collision_layer]."

msgid "Overridable version of [method PhysicsServer2D.body_get_collision_mask]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_get_collision_mask]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_collision_priority]."
msgstr ""
"Это действительно - Переопределяемая версия [method "
"PhysicsServer2D.body_get_collision_priority]."

msgid "Overridable version of [method PhysicsServer2D.body_get_constant_force]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_get_constant_force]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_constant_torque]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_get_constant_torque]."

msgid ""
"Overridable version of [PhysicsServer2D]'s internal "
"[code]body_get_contacts_reported_depth_threshold[/code] method.\n"
"[b]Note:[/b] This method is currently unused by Godot's default physics "
"implementation."
msgstr ""
"Переопределяемая версия внутреннего метода "
"[code]body_get_contacts_reported_depth_threshold[/code] [PhysicsServer2D].\n"
"[b]Примечание:[/b] Этот метод в настоящее время не используется в стандартной "
"реализации физики Godot."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_get_continuous_collision_detection_mode]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_get_continuous_collision_detection_mode]."

msgid "Overridable version of [method PhysicsServer2D.body_get_direct_state]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_get_direct_state]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_get_max_contacts_reported]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_get_max_contacts_reported]."

msgid "Overridable version of [method PhysicsServer2D.body_get_mode]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_get_mode]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_object_instance_id]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_get_object_instance_id]."

msgid "Overridable version of [method PhysicsServer2D.body_get_param]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_get_param]."

msgid "Overridable version of [method PhysicsServer2D.body_get_shape]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_get_shape]."

msgid "Overridable version of [method PhysicsServer2D.body_get_shape_count]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_get_shape_count]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_get_shape_transform]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_get_shape_transform]."

msgid "Overridable version of [method PhysicsServer2D.body_get_space]."
msgstr "Переопределяемая версияf [method PhysicsServer2D.body_get_space]."

msgid "Overridable version of [method PhysicsServer2D.body_get_state]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_get_state]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_is_omitting_force_integration]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_is_omitting_force_integration]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_remove_collision_exception]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_remove_collision_exception]."

msgid "Overridable version of [method PhysicsServer2D.body_remove_shape]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_remove_shape]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_reset_mass_properties]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_reset_mass_properties]."

msgid "Overridable version of [method PhysicsServer2D.body_set_axis_velocity]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_set_axis_velocity]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_set_collision_layer]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_set_collision_layer]."

msgid "Overridable version of [method PhysicsServer2D.body_set_collision_mask]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_set_collision_mask]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_set_collision_priority]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_set_collision_priority]."

msgid "Overridable version of [method PhysicsServer2D.body_set_constant_force]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_set_constant_force]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_set_constant_torque]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_set_constant_torque]."

msgid ""
"Overridable version of [PhysicsServer2D]'s internal "
"[code]body_set_contacts_reported_depth_threshold[/code] method.\n"
"[b]Note:[/b] This method is currently unused by Godot's default physics "
"implementation."
msgstr ""
"Переопределяемая версия внутреннего метода "
"[code]body_set_contacts_reported_depth_threshold[/code] [PhysicsServer2D].\n"
"[b]Примечание:[/b] Этот метод в настоящее время не используется в стандартной "
"реализации физики Godot."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_set_continuous_collision_detection_mode]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_set_continuous_collision_detection_mode]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_set_force_integration_callback]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_set_force_integration_callback]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_set_max_contacts_reported]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_set_max_contacts_reported]."

msgid "Overridable version of [method PhysicsServer2D.body_set_mode]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_set_mode]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_set_omit_force_integration]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_set_omit_force_integration]."

msgid "Overridable version of [method PhysicsServer2D.body_set_param]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_set_param]."

msgid ""
"If set to [code]true[/code], allows the body with the given [RID] to detect "
"mouse inputs when the mouse cursor is hovering on it.\n"
"Overridable version of [PhysicsServer2D]'s internal [code]body_set_pickable[/"
"code] method. Corresponds to [member CollisionObject2D.input_pickable]."
msgstr ""
"Если установлено значение [code]true[/code], позволяет телу с заданным [RID] "
"обнаруживать ввод мыши, когда курсор мыши наведен на него.\n"
"Переопределяемая версия внутреннего метода [code]body_set_pickable[/code] "
"[PhysicsServer2D]. Соответствует [member CollisionObject2D.input_pickable]."

msgid "Overridable version of [method PhysicsServer2D.body_set_shape]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_set_shape]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.body_set_shape_as_one_way_collision]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.body_set_shape_as_one_way_collision]."

msgid "Overridable version of [method PhysicsServer2D.body_set_shape_disabled]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_set_shape_disabled]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_set_shape_transform]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_set_shape_transform]."

msgid "Overridable version of [method PhysicsServer2D.body_set_space]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_set_space]."

msgid "Overridable version of [method PhysicsServer2D.body_set_state]."
msgstr "Переопределяемая версия [method PhysicsServer2D.body_set_state]."

msgid ""
"Assigns the [param body] to call the given [param callable] during the "
"synchronization phase of the loop, before [method _step] is called. See also "
"[method _sync].\n"
"Overridable version of [method PhysicsServer2D.body_set_state_sync_callback]."
msgstr ""
"Назначает [param body] для вызова указанного [param callable] во время фазы "
"синхронизации цикла, перед вызовом [method _step]. См. также [method _sync].\n"
"Переопределяемая версия [method PhysicsServer2D.body_set_state_sync_callback]."

msgid ""
"Overridable version of [method PhysicsServer2D.body_test_motion]. Unlike the "
"exposed implementation, this method does not receive all of the arguments "
"inside a [PhysicsTestMotionParameters2D]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.body_test_motion]. В отличие "
"от открытой реализации, этот метод не получает все аргументы внутри "
"[PhysicsTestMotionParameters2D]."

msgid "Overridable version of [method PhysicsServer2D.capsule_shape_create]."
msgstr "Переопределяемая версия [method PhysicsServer2D.capsule_shape_create]."

msgid "Overridable version of [method PhysicsServer2D.circle_shape_create]."
msgstr "Переопределяемая версия [method PhysicsServer2D.circle_shape_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.concave_polygon_shape_create]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.concave_polygon_shape_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.convex_polygon_shape_create]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.convex_polygon_shape_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.damped_spring_joint_get_param]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.damped_spring_joint_get_param]."

msgid ""
"Overridable version of [method PhysicsServer2D.damped_spring_joint_set_param]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.damped_spring_joint_set_param]."

msgid ""
"Called to indicate that the physics server has stopped synchronizing. It is "
"in the loop's iteration/physics phase, and can access physics objects even if "
"running on a separate thread. See also [method _sync].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]end_sync[/code] "
"method."
msgstr ""
"Вызывается для указания того, что физический сервер прекратил синхронизацию. "
"Он находится в фазе итерации/физики цикла и может получить доступ к "
"физическим объектам, даже если запущен в отдельном потоке. См. также [method "
"_sync].\n"
"Переопределяемая версия внутреннего метода [code]end_sync[/code] "
"[PhysicsServer2D]."

msgid ""
"Called when the main loop finalizes to shut down the physics server. See also "
"[method MainLoop._finalize] and [method _init].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]finish[/code] "
"method."
msgstr ""
"Вызывается, когда основной цикл завершается для выключения физического "
"сервера. См. также [method MainLoop._finalize] и [method _init].\n"
"Переопределяемая версия внутреннего метода [code]finish[/code] "
"[PhysicsServer2D]."

msgid ""
"Called every physics step before [method _step] to process all remaining "
"queries.\n"
"Overridable version of [PhysicsServer2D]'s internal [code]flush_queries[/"
"code] method."
msgstr ""
"Вызывается каждый шаг физики перед [method _step] для обработки всех "
"оставшихся запросов.\n"
"Переопределяемая версия внутреннего метода [code]flush_queries[/code] "
"[PhysicsServer2D]."

msgid "Overridable version of [method PhysicsServer2D.free_rid]."
msgstr "Переопределяемая версия [method PhysicsServer2D.free_rid]."

msgid "Overridable version of [method PhysicsServer2D.get_process_info]."
msgstr "Переопределяемая версия [method PhysicsServer2D.get_process_info]."

msgid ""
"Called when the main loop is initialized and creates a new instance of this "
"physics server. See also [method MainLoop._initialize] and [method _finish].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]init[/code] method."
msgstr ""
"Вызывается при инициализации основного цикла и создает новый экземпляр этого "
"физического сервера. См. также [method MainLoop._initialize] и [method "
"_finish].\n"
"Переопределяемая версия внутреннего метода [code]init[/code] "
"[PhysicsServer2D]."

msgid ""
"Overridable method that should return [code]true[/code] when the physics "
"server is processing queries. See also [method _flush_queries].\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]is_flushing_queries[/code] method."
msgstr ""
"Переопределяемый метод, который должен возвращать [code]true[/code], когда "
"физический сервер обрабатывает запросы. См. также [method _flush_queries].\n"
"Переопределяемая версия внутреннего метода [code]is_flushing_queries[/code] "
"[PhysicsServer2D]."

msgid "Overridable version of [method PhysicsServer2D.joint_clear]."
msgstr "Переопределяемая версия [method PhysicsServer2D.joint_clear]."

msgid "Overridable version of [method PhysicsServer2D.joint_create]."
msgstr "Переопределяемая версия [method PhysicsServer2D.joint_create]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.joint_disable_collisions_between_bodies]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.joint_disable_collisions_between_bodies]."

msgid "Overridable version of [method PhysicsServer2D.joint_get_param]."
msgstr "Переопределяемая версия [method PhysicsServer2D.joint_get_param]."

msgid "Overridable version of [method PhysicsServer2D.joint_get_type]."
msgstr "Переопределяемая версия [method PhysicsServer2D.joint_get_type]."

msgid ""
"Overridable version of [method "
"PhysicsServer2D.joint_is_disabled_collisions_between_bodies]."
msgstr ""
"Переопределяемая версия [method "
"PhysicsServer2D.joint_is_disabled_collisions_between_bodies]."

msgid ""
"Overridable version of [method PhysicsServer2D.joint_make_damped_spring]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.joint_make_damped_spring]."

msgid "Overridable version of [method PhysicsServer2D.joint_make_groove]."
msgstr "Переопределяемая версия [method PhysicsServer2D.joint_make_groove]."

msgid "Overridable version of [method PhysicsServer2D.joint_make_pin]."
msgstr "Переопределяемая версия [method PhysicsServer2D.joint_make_pin]."

msgid "Overridable version of [method PhysicsServer2D.joint_set_param]."
msgstr "Переопределяемая версия [method PhysicsServer2D.joint_set_param]."

msgid "Overridable version of [method PhysicsServer2D.pin_joint_get_flag]."
msgstr "Переопределяемая версия [method PhysicsServer2D.pin_joint_get_flag]."

msgid "Overridable version of [method PhysicsServer2D.pin_joint_get_param]."
msgstr "Переопределяемая версия [method PhysicsServer2D.pin_joint_get_param]."

msgid "Overridable version of [method PhysicsServer2D.pin_joint_set_flag]."
msgstr "Переопределяемая версия [method PhysicsServer2D.pin_joint_set_flag]."

msgid "Overridable version of [method PhysicsServer2D.pin_joint_set_param]."
msgstr "Переопределяемая версия [method PhysicsServer2D.pin_joint_set_param]."

msgid "Overridable version of [method PhysicsServer2D.rectangle_shape_create]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.rectangle_shape_create]."

msgid "Overridable version of [method PhysicsServer2D.segment_shape_create]."
msgstr "Переопределяемая версия [method PhysicsServer2D.segment_shape_create]."

msgid ""
"Overridable version of [method PhysicsServer2D.separation_ray_shape_create]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.separation_ray_shape_create]."

msgid "Overridable version of [method PhysicsServer2D.set_active]."
msgstr "Переопределяемая версия [method PhysicsServer2D.set_active]."

msgid ""
"Given two shapes and their parameters, should return [code]true[/code] if a "
"collision between the two would occur, with additional details passed in "
"[param results].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]shape_collide[/"
"code] method. Corresponds to [method PhysicsDirectSpaceState2D.collide_shape]."
msgstr ""
"При наличии двух фигур и их параметров следует вернуть [code]true[/code], "
"если произойдет столкновение между ними, с дополнительными подробностями, "
"переданными в [param results].\n"
"Переопределяемая версия внутреннего метода [code]shape_collide[/code] "
"[PhysicsServer2D]. Соответствует [method "
"PhysicsDirectSpaceState2D.collide_shape]."

msgid ""
"Should return the custom solver bias of the given [param shape], which "
"defines how much bodies are forced to separate on contact when this shape is "
"involved.\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]shape_get_custom_solver_bias[/code] method. Corresponds to [member "
"Shape2D.custom_solver_bias]."
msgstr ""
"Должен возвращать пользовательское смещение решателя заданной [param shape], "
"которое определяет, насколько тела вынуждены разделяться при контакте, когда "
"задействована эта форма.\n"
"Переопределяемая версия внутреннего метода "
"[code]shape_get_custom_solver_bias[/code] [PhysicsServer2D]. Соответствует "
"[member Shape2D.custom_solver_bias]."

msgid "Overridable version of [method PhysicsServer2D.shape_get_data]."
msgstr "Переопределяемая версия [method PhysicsServer2D.shape_get_data]."

msgid "Overridable version of [method PhysicsServer2D.shape_get_type]."
msgstr "Переопределяемая версия [method PhysicsServer2D.shape_get_type]."

msgid ""
"Should set the custom solver bias for the given [param shape]. It defines how "
"much bodies are forced to separate on contact.\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]shape_get_custom_solver_bias[/code] method. Corresponds to [member "
"Shape2D.custom_solver_bias]."
msgstr ""
"Следует задать смещение пользовательского решателя для заданного [param "
"shape]. Он определяет, насколько тела вынуждены разделяться при контакте.\n"
"Переопределяемая версия внутреннего метода "
"[code]shape_get_custom_solver_bias[/code] [PhysicsServer2D]. Соответствует "
"[member Shape2D.custom_solver_bias]."

msgid "Overridable version of [method PhysicsServer2D.shape_set_data]."
msgstr "Переопределяемая версия [method PhysicsServer2D.shape_set_data]."

msgid "Overridable version of [method PhysicsServer2D.space_create]."
msgstr "Переопределяемая версия [method PhysicsServer2D.space_create]."

msgid ""
"Should return how many contacts have occurred during the last physics step in "
"the given [param space]. See also [method _space_get_contacts] and [method "
"_space_set_debug_contacts].\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]space_get_contact_count[/code] method."
msgstr ""
"Должен возвращать количество контактов, произошедших во время последнего шага "
"физики в заданном [param space]. См. также [method _space_get_contacts] и "
"[method _space_set_debug_contacts].\n"
"Переопределяемая версия внутреннего метода [code]space_get_contact_count[/"
"code] [PhysicsServer2D]."

msgid ""
"Should return the positions of all contacts that have occurred during the "
"last physics step in the given [param space]. See also [method "
"_space_get_contact_count] and [method _space_set_debug_contacts].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]space_get_contacts[/"
"code] method."
msgstr ""
"Должны возвращать позиции всех контактов, которые произошли во время "
"последнего шага физики в заданном [param space]. См. также "
"[method_space_get_contact_count] и [method_space_set_debug_contacts].\n"
"Переопределяемая версия внутреннего метода [code]space_get_contacts[/code] "
"[PhysicsServer2D]."

msgid "Overridable version of [method PhysicsServer2D.space_get_direct_state]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.space_get_direct_state]."

msgid "Overridable version of [method PhysicsServer2D.space_get_param]."
msgstr "Переопределяемая версия [method PhysicsServer2D.space_get_param]."

msgid "Overridable version of [method PhysicsServer2D.space_is_active]."
msgstr "Переопределяемая версия [method PhysicsServer2D.space_is_active]."

msgid "Overridable version of [method PhysicsServer2D.space_set_active]."
msgstr "Переопределяемая версия [method PhysicsServer2D.space_set_active]."

msgid ""
"Used internally to allow the given [param space] to store contact points, up "
"to [param max_contacts]. This is automatically set for the main [World2D]'s "
"space when [member SceneTree.debug_collisions_hint] is [code]true[/code], or "
"by checking \"Visible Collision Shapes\" in the editor. Only works in debug "
"builds.\n"
"Overridable version of [PhysicsServer2D]'s internal "
"[code]space_set_debug_contacts[/code] method."
msgstr ""
"Используется внутренне, чтобы разрешить данному [param space] хранить точки "
"контакта, до [param max_contacts]. Это автоматически устанавливается для "
"основного пространства [World2D], когда [member "
"SceneTree.debug_collisions_hint] имеет значение [code]true[/code], или путем "
"проверки \"Visible Collision Shapes\" в редакторе. Работает только в "
"отладочных сборках.\n"
"Переопределяемая версия внутреннего метода [code]space_set_debug_contacts[/"
"code] [PhysicsServer2D]."

msgid "Overridable version of [method PhysicsServer2D.space_set_param]."
msgstr "Переопределяемая версия [method PhysicsServer2D.space_set_param]."

msgid ""
"Called every physics step to process the physics simulation. [param step] is "
"the time elapsed since the last physics step, in seconds. It is usually the "
"same as the value returned by [method Node.get_physics_process_delta_time].\n"
"Overridable version of [PhysicsServer2D]'s internal [code skip-lint]step[/"
"code] method."
msgstr ""
"Вызывается каждый шаг физики для обработки моделирования физики. [param step] "
"— это время, прошедшее с момента последнего шага физики, в секундах. Обычно "
"оно совпадает со значением, возвращаемым [method "
"Node.get_physics_process_delta_time].\n"
"Переопределяемая версия внутреннего метода [code skip-lint]step[/code] "
"[PhysicsServer2D]."

msgid ""
"Called to indicate that the physics server is synchronizing and cannot access "
"physics states if running on a separate thread. See also [method _end_sync].\n"
"Overridable version of [PhysicsServer2D]'s internal [code]sync[/code] method."
msgstr ""
"Вызывается для указания того, что физический сервер синхронизируется и не "
"может получить доступ к физическим состояниям, если работает в отдельном "
"потоке. См. также [method _end_sync].\n"
"Переопределяемая версия внутреннего метода [code]sync[/code] "
"[PhysicsServer2D]."

msgid ""
"Overridable version of [method PhysicsServer2D.world_boundary_shape_create]."
msgstr ""
"Переопределяемая версия [method PhysicsServer2D.world_boundary_shape_create]."

msgid ""
"Returns [code]true[/code] if the body with the given [RID] is being excluded "
"from [method _body_test_motion]. See also [method Object.get_instance_id]."
msgstr ""
"Возвращает [code]true[/code], если тело с указанным [RID] исключается из "
"[method _body_test_motion]. См. также [method Object.get_instance_id]."

msgid ""
"Returns [code]true[/code] if the object with the given instance ID is being "
"excluded from [method _body_test_motion]. See also [method "
"Object.get_instance_id]."
msgstr ""
"Возвращает [code]true[/code], если объект с указанным идентификатором "
"экземпляра исключается из [method _body_test_motion]. См. также [method "
"Object.get_instance_id]."

msgid "A singleton for managing [PhysicsServer2D] implementations."
msgstr "Синглтон для управления реализациями [PhysicsServer2D]."

msgid ""
"[PhysicsServer2DManager] is the API for registering [PhysicsServer2D] "
"implementations and for setting the default implementation.\n"
"[b]Note:[/b] It is not possible to switch physics servers at runtime. This "
"class is only used on startup at the server initialization level, by Godot "
"itself and possibly by GDExtensions."
msgstr ""
"[PhysicsServer2DManager] — это API для регистрации реализаций "
"[PhysicsServer2D] и для установки реализации по умолчанию.\n"
"[b]Примечание:[/b] Невозможно переключать физические серверы во время "
"выполнения. Этот класс используется только при запуске на уровне "
"инициализации сервера, самим Godot и, возможно, GDExtensions."

msgid ""
"Register a [PhysicsServer2D] implementation by passing a [param name] and a "
"[Callable] that returns a [PhysicsServer2D] object."
msgstr ""
"Зарегистрируйте реализацию [PhysicsServer2D], передав [param name] и "
"[Callable], который возвращает объект [PhysicsServer2D]."

msgid ""
"Set the default [PhysicsServer2D] implementation to the one identified by "
"[param name], if [param priority] is greater than the priority of the current "
"default implementation."
msgstr ""
"Установите реализацию [PhysicsServer2D] по умолчанию на ту, которая "
"определена [param name], если [param priority] больше приоритета текущей "
"реализации по умолчанию."

msgid "A server interface for low-level 3D physics access."
msgstr "Серверный интерфейс для низкоуровневого доступа к трехмерной физике."

msgid ""
"PhysicsServer3D is the server responsible for all 3D physics. It can directly "
"create and manipulate all physics objects:\n"
"- A [i]space[/i] is a self-contained world for a physics simulation. It "
"contains bodies, areas, and joints. Its state can be queried for collision "
"and intersection information, and several parameters of the simulation can be "
"modified.\n"
"- A [i]shape[/i] is a geometric shape such as a sphere, a box, a cylinder, or "
"a polygon. It can be used for collision detection by adding it to a body/"
"area, possibly with an extra transformation relative to the body/area's "
"origin. Bodies/areas can have multiple (transformed) shapes added to them, "
"and a single shape can be added to bodies/areas multiple times with different "
"local transformations.\n"
"- A [i]body[/i] is a physical object which can be in static, kinematic, or "
"rigid mode. Its state (such as position and velocity) can be queried and "
"updated. A force integration callback can be set to customize the body's "
"physics.\n"
"- An [i]area[/i] is a region in space which can be used to detect bodies and "
"areas entering and exiting it. A body monitoring callback can be set to "
"report entering/exiting body shapes, and similarly an area monitoring "
"callback can be set. Gravity and damping can be overridden within the area by "
"setting area parameters.\n"
"- A [i]joint[/i] is a constraint, either between two bodies or on one body "
"relative to a point. Parameters such as the joint bias and the rest length of "
"a spring joint can be adjusted.\n"
"Physics objects in [PhysicsServer3D] may be created and manipulated "
"independently; they do not have to be tied to nodes in the scene tree.\n"
"[b]Note:[/b] All the 3D physics nodes use the physics server internally. "
"Adding a physics node to the scene tree will cause a corresponding physics "
"object to be created in the physics server. A rigid body node registers a "
"callback that updates the node's transform with the transform of the "
"respective body object in the physics server (every physics update). An area "
"node registers a callback to inform the area node about overlaps with the "
"respective area object in the physics server. The raycast node queries the "
"direct state of the relevant space in the physics server."
msgstr ""
"PhysicsServer3D — сервер, отвечающий за всю трехмерную физику. Он может "
"напрямую создавать и управлять всеми физическими объектами:\n"
"- [i]пространство[/i] — это автономный мир для моделирования физики. Оно "
"содержит тела, области и сочленения. Его состояние может быть запрошено для "
"получения информации о столкновениях и пересечениях, и можно изменить "
"несколько параметров моделирования.\n"
"- [i]форма[/i] — это геометрическая форма, такая как сфера, параллелепипед, "
"цилиндр или многоугольник. Ее можно использовать для обнаружения "
"столкновений, добавив ее к телу/области, возможно, с дополнительным "
"преобразованием относительно начала координат тела/области. Тела/области "
"могут иметь несколько (преобразованных) форм, добавленных к ним, и одна форма "
"может быть добавлена к телам/областям несколько раз с различными локальными "
"преобразованиями.\n"
"- [i]тело[/i] — это физический объект, который может находиться в "
"статическом, кинематическом или жестком режиме. Его состояние (такое как "
"положение и скорость) можно запрашивать и обновлять. Обратный вызов "
"интеграции силы может быть установлен для настройки физики тела.\n"
"- [i]область[/i] - это область в пространстве, которая может использоваться "
"для обнаружения тел и областей, входящих и выходящих из нее. Обратный вызов "
"мониторинга тела может быть установлен для сообщения о входе/выходе форм "
"тела, и аналогичным образом может быть установлен обратный вызов мониторинга "
"области. Гравитация и демпфирование могут быть переопределены в области путем "
"установки параметров области.\n"
"- [i]соединение[/i] - это ограничение, либо между двумя телами, либо на одном "
"теле относительно точки. Такие параметры, как смещение сочленения и "
"остаточная длина пружинного соединения, могут быть скорректированы.\n"
"Физические объекты в [PhysicsServer3D] могут быть созданы и изменены "
"независимо; они не должны быть привязаны к узлам в дереве сцены.\n"
"[b]Примечание:[/b] Все узлы 3D-физики используют физический сервер внутренне. "
"Добавление физического узла в дерево сцены приведет к созданию "
"соответствующего физического объекта на физическом сервере. Узел твердого "
"тела регистрирует обратный вызов, который обновляет преобразование узла с "
"преобразованием соответствующего объекта тела на физическом сервере (каждое "
"обновление физики). Узел области регистрирует обратный вызов, чтобы "
"информировать узел области о перекрытиях с соответствующим объектом области "
"на физическом сервере. Узел raycast запрашивает прямое состояние "
"соответствующего пространства на физическом сервере."

msgid ""
"Adds a shape to the area, along with a transform matrix. Shapes are usually "
"referenced by their index, so you should track which shape has a given index."
msgstr ""
"Добавляет форму к области вместе с матрицей преобразования. Формы обычно "
"ссылаются по индексу, поэтому следует отслеживать, какая форма имеет заданный "
"индекс."

msgid ""
"Assigns the area to a descendant of [Object], so it can exist in the node "
"tree."
msgstr ""
"Назначает область потомку [Object], чтобы она могла существовать в дереве "
"узлов."

msgid ""
"Removes all shapes from an area. It does not delete the shapes, so they can "
"be reassigned later."
msgstr ""
"Удаляет все фигуры из области. Фигуры не удаляются, поэтому их можно "
"переназначить позже."

msgid ""
"Creates a 3D area object in the physics server, and returns the [RID] that "
"identifies it. The default settings for the created area include a collision "
"layer and mask set to [code]1[/code], and [code]monitorable[/code] set to "
"[code]false[/code].\n"
"Use [method area_add_shape] to add shapes to it, use [method "
"area_set_transform] to set its transform, and use [method area_set_space] to "
"add the area to a space. If you want the area to be detectable use [method "
"area_set_monitorable]."
msgstr ""
"Создает объект 3D-области на физическом сервере и возвращает [RID], который "
"его идентифицирует. Настройки по умолчанию для созданной области включают "
"слой столкновений и маску, установленные на [code]1[/code], и "
"[code]monitorable[/code], установленные на [code]false[/code].\n"
"Используйте [method area_add_shape], чтобы добавить к нему формы, используйте "
"[method area_set_transform], чтобы задать его преобразование, и используйте "
"[method area_set_space], чтобы добавить область в пространство. Если вы "
"хотите, чтобы область была обнаруживаемой, используйте [method "
"area_set_monitorable]."

msgid "Returns the physics layer or layers an area belongs to."
msgstr "Возвращает физический слой или слои, к которым принадлежит область."

msgid "Returns the physics layer or layers an area can contact with."
msgstr ""
"Возвращает физический слой или слои, с которыми может контактировать область."

msgid "Gets the instance ID of the object the area is assigned to."
msgstr "Получает идентификатор экземпляра объекта, которому назначена область."

msgid ""
"Returns an area parameter value. A list of available parameters is on the "
"[enum AreaParameter] constants."
msgstr ""
"Возвращает значение параметра области. Список доступных параметров находится "
"в константах [enum AreaParameter]."

msgid "Returns the [RID] of the nth shape of an area."
msgstr "Возвращает [RID] n-й формы области."

msgid "Returns the number of shapes assigned to an area."
msgstr "Возвращает количество фигур, назначенных области."

msgid "Returns the transform matrix of a shape within an area."
msgstr "Возвращает матрицу преобразования фигуры внутри области."

msgid "Returns the space assigned to the area."
msgstr "Возвращает пространство, назначенное области."

msgid "Returns the transform matrix for an area."
msgstr "Возвращает матрицу преобразования для области."

msgid ""
"Removes a shape from an area. It does not delete the shape, so it can be "
"reassigned later."
msgstr ""
"Удаляет фигуру из области. Она не удаляет фигуру, поэтому ее можно назначить "
"повторно позже."

msgid "Assigns the area to one or many physics layers."
msgstr "Назначает область одному или нескольким физическим слоям."

msgid "Sets which physics layers the area will monitor."
msgstr "Устанавливает, какие физические слои будет отслеживать область."

msgid ""
"Sets the value for an area parameter. A list of available parameters is on "
"the [enum AreaParameter] constants."
msgstr ""
"Устанавливает значение параметра области. Список доступных параметров "
"находится в константах [enum AreaParameter]."

msgid "Sets object pickable with rays."
msgstr "Позволяет выбирать объекты с помощью лучей."

msgid ""
"Substitutes a given area shape by another. The old shape is selected by its "
"index, the new one by its [RID]."
msgstr ""
"Заменяет заданную форму области другой. Старая форма выбирается по ее "
"индексу, новая — по ее [RID]."

msgid "Sets the transform matrix for an area shape."
msgstr "Задает матрицу преобразования для формы области."

msgid "Assigns a space to the area."
msgstr "Назначает пространство области."

msgid "Sets the transform matrix for an area."
msgstr "Задает матрицу преобразования для области."

msgid "Adds a body to the list of bodies exempt from collisions."
msgstr "Добавляет тело в список тел, освобожденных от столкновений."

msgid ""
"Adds a constant directional force without affecting rotation that keeps being "
"applied over time until cleared with [code]body_set_constant_force(body, "
"Vector3(0, 0, 0))[/code].\n"
"This is equivalent to using [method body_add_constant_force] at the body's "
"center of mass."
msgstr ""
"Добавляет постоянную направленную силу, не влияя на вращение, которая "
"продолжает применяться с течением времени, пока не будет очищена с помощью "
"[code]body_set_constant_force(body, Vector3(0, 0, 0))[/code].\n"
"Это эквивалентно использованию [method body_add_constant_force] в центре масс "
"тела."

msgid ""
"Adds a constant positioned force to the body that keeps being applied over "
"time until cleared with [code]body_set_constant_force(body, Vector3(0, 0, 0))"
"[/code].\n"
"[param position] is the offset from the body origin in global coordinates."
msgstr ""
"Добавляет к телу постоянную позиционную силу, которая продолжает применяться "
"с течением времени, пока не будет очищена с помощью "
"[code]body_set_constant_force(body, Vector3(0, 0, 0))[/code].\n"
"[param position] — это смещение от начала координат тела в глобальных "
"координатах."

msgid ""
"Adds a constant rotational force without affecting position that keeps being "
"applied over time until cleared with [code]body_set_constant_torque(body, "
"Vector3(0, 0, 0))[/code]."
msgstr ""
"Добавляет постоянную вращательную силу, не влияя на положение, которая "
"продолжает применяться с течением времени, пока не будет очищена с помощью "
"[code]body_set_constant_torque(body, Vector3(0, 0, 0))[/code]."

msgid ""
"Adds a shape to the body, along with a transform matrix. Shapes are usually "
"referenced by their index, so you should track which shape has a given index."
msgstr ""
"Добавляет форму к телу вместе с матрицей преобразования. Формы обычно "
"ссылаются по их индексу, поэтому следует отслеживать, какая форма имеет "
"заданный индекс."

msgid ""
"Applies a directional force without affecting rotation. A force is time "
"dependent and meant to be applied every physics update.\n"
"This is equivalent to using [method body_apply_force] at the body's center of "
"mass."
msgstr ""
"Применяет направленную силу, не влияя на вращение. Сила зависит от времени и "
"должна применяться при каждом обновлении физики.\n"
"Это эквивалентно использованию [method body_apply_force] в центре масс тела."

msgid ""
"Applies a directional impulse without affecting rotation.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"This is equivalent to using [method body_apply_impulse] at the body's center "
"of mass."
msgstr ""
"Применяет направленный импульс, не влияя на вращение.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\").\n"
"Это эквивалентно использованию [method body_apply_impulse] в центре масс тела."

msgid ""
"Applies a rotational force without affecting position. A force is time "
"dependent and meant to be applied every physics update."
msgstr ""
"Применяет вращательную силу, не влияя на положение. Сила зависит от времени и "
"должна применяться при каждом обновлении физики."

msgid ""
"Applies a rotational impulse to the body without affecting the position.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise)."
msgstr ""
"Применяет вращательный импульс к телу, не влияя на положение.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\")."

msgid "Removes all shapes from a body."
msgstr "Удаляет все формы из тела."

msgid ""
"Creates a 3D body object in the physics server, and returns the [RID] that "
"identifies it. The default settings for the created area include a collision "
"layer and mask set to [code]1[/code], and body mode set to [constant "
"BODY_MODE_RIGID].\n"
"Use [method body_add_shape] to add shapes to it, use [method body_set_state] "
"to set its transform, and use [method body_set_space] to add the body to a "
"space."
msgstr ""
"Создает объект 3D-тела на физическом сервере и возвращает [RID], который его "
"идентифицирует. Настройки по умолчанию для созданной области включают слой "
"столкновения и маску, установленные на [code]1[/code], и режим тела, "
"установленный на [constant BODY_MODE_RIGID].\n"
"Используйте [method body_add_shape], чтобы добавить к нему формы, используйте "
"[method body_set_state], чтобы задать его преобразование, и используйте "
"[method body_set_space], чтобы добавить тело в пространство."

msgid "Returns the physics layer or layers a body belongs to."
msgstr "Возвращает физический слой или слои, к которым принадлежит тело."

msgid "Returns the physics layer or layers a body can collide with."
msgstr ""
"Возвращает физический слой или слои, с которыми может сталкиваться тело."

msgid "Returns the body's collision priority."
msgstr "Возвращает приоритет столкновения тела."

msgid ""
"Returns the body's total constant positional forces applied during each "
"physics update.\n"
"See [method body_add_constant_force] and [method "
"body_add_constant_central_force]."
msgstr ""
"Возвращает общие постоянные позиционные силы тела, применяемые во время "
"каждого обновления физики.\n"
"См. [method body_add_constant_force] и [method "
"body_add_constant_central_force]."

msgid ""
"Returns the body's total constant rotational forces applied during each "
"physics update.\n"
"See [method body_add_constant_torque]."
msgstr ""
"Возвращает общие постоянные вращательные силы тела, применяемые во время "
"каждого обновления физики.\n"
"См. [method body_add_constant_torque]."

msgid ""
"Returns the [PhysicsDirectBodyState3D] of the body. Returns [code]null[/code] "
"if the body is destroyed or removed from the physics space."
msgstr ""
"Возвращает [PhysicsDirectBodyState3D] тела. Возвращает [code]null[/code], "
"если тело уничтожено или удалено из физического пространства."

msgid ""
"Returns the maximum contacts that can be reported. See [method "
"body_set_max_contacts_reported]."
msgstr ""
"Возвращает максимальное количество контактов, которые могут быть сообщены. "
"См. [method body_set_max_contacts_reported]."

msgid "Returns the body mode."
msgstr "Возвращает режим тела."

msgid ""
"Returns the value of a body parameter. A list of available parameters is on "
"the [enum BodyParameter] constants."
msgstr ""
"Возвращает значение параметра тела. Список доступных параметров находится в "
"константах [enum BodyParameter]."

msgid "Returns the [RID] of the nth shape of a body."
msgstr "Возвращает [RID] n-й формы тела."

msgid "Returns the number of shapes assigned to a body."
msgstr "Возвращает количество фигур, назначенных телу."

msgid "Returns the transform matrix of a body shape."
msgstr "Возвращает матрицу преобразования формы тела."

msgid "Returns the [RID] of the space assigned to a body."
msgstr "Возвращает [RID] пространства, назначенного телу."

msgid "Returns a body state."
msgstr "Возвращает состояние тела."

msgid ""
"If [code]true[/code], the continuous collision detection mode is enabled."
msgstr ""
"Если [code]true[/code], включен режим непрерывного обнаружения столкновений."

msgid ""
"Removes a body from the list of bodies exempt from collisions.\n"
"Continuous collision detection tries to predict where a moving body will "
"collide, instead of moving it and correcting its movement if it collided."
msgstr ""
"Удаляет тело из списка тел, освобожденных от столкновений.\n"
"Непрерывное обнаружение столкновений пытается предсказать, где движущееся "
"тело столкнется, вместо того, чтобы перемещать его и корректировать его "
"движение в случае столкновения."

msgid ""
"Removes a shape from a body. The shape is not deleted, so it can be reused "
"afterwards."
msgstr ""
"Удаляет форму из тела. Сама форма не удаляется, поэтому ее можно использовать "
"повторно."

msgid ""
"Restores the default inertia and center of mass based on shapes to cancel any "
"custom values previously set using [method body_set_param]."
msgstr ""
"Восстанавливает инерцию и центр масс по умолчанию на основе форм, чтобы "
"отменить любые пользовательские значения, ранее установленные с помощью "
"[method body_set_param]."

msgid ""
"Sets an axis velocity. The velocity in the given vector axis will be set as "
"the given vector length. This is useful for jumping behavior."
msgstr ""
"Устанавливает скорость оси. Скорость в данной векторной оси будет установлена "
"как заданная длина вектора. Это полезно для поведения прыжка."

msgid "Sets the physics layer or layers a body belongs to."
msgstr "Устанавливает физический слой или слои, к которым принадлежит тело."

msgid "Sets the physics layer or layers a body can collide with."
msgstr ""
"Устанавливает физический слой или слои, с которыми может сталкиваться тело."

msgid "Sets the body's collision priority."
msgstr "Устанавливает приоритет столкновения тела."

msgid ""
"Sets the body's total constant positional forces applied during each physics "
"update.\n"
"See [method body_add_constant_force] and [method "
"body_add_constant_central_force]."
msgstr ""
"Устанавливает общие постоянные позиционные силы тела, применяемые во время "
"каждого обновления физики.\n"
"См. [method body_add_constant_force] и [method "
"body_add_constant_central_force]."

msgid ""
"Sets the body's total constant rotational forces applied during each physics "
"update.\n"
"See [method body_add_constant_torque]."
msgstr ""
"Устанавливает общие постоянные вращательные силы тела, применяемые во время "
"каждого обновления физики.\n"
"См. [method body_add_constant_torque]."

msgid ""
"If [code]true[/code], the continuous collision detection mode is enabled.\n"
"Continuous collision detection tries to predict where a moving body will "
"collide, instead of moving it and correcting its movement if it collided."
msgstr ""
"Если [code]true[/code], режим непрерывного обнаружения столкновений включен.\n"
"Непрерывное обнаружение столкновений пытается предсказать, где движущееся "
"тело столкнется, вместо того, чтобы перемещать его и корректировать его "
"движение в случае столкновения."

msgid ""
"Sets the body's custom force integration callback function to [param "
"callable]. Use an empty [Callable] ([code skip-lint]Callable()[/code]) to "
"clear the custom callback.\n"
"The function [param callable] will be called every physics tick, before the "
"standard force integration (see [method body_set_omit_force_integration]). It "
"can be used for example to update the body's linear and angular velocity "
"based on contact with other bodies.\n"
"If [param userdata] is not [code]null[/code], the function [param callable] "
"must take the following two parameters:\n"
"1. [code]state[/code]: a [PhysicsDirectBodyState3D], used to retrieve and "
"modify the body's state,\n"
"2. [code skip-lint]userdata[/code]: a [Variant]; its value will be the [param "
"userdata] passed into this method.\n"
"If [param userdata] is [code]null[/code], then [param callable] must take "
"only the [code]state[/code] parameter."
msgstr ""
"Устанавливает функцию обратного вызова интегрирования силы тела на [param "
"callable]. Используйте пустой [Callable] ([code skip-lint]Callable()[/code]), "
"чтобы очистить пользовательский обратный вызов.\n"
"Функция [param callable] будет вызываться каждый физический тик перед "
"стандартным интегрированием силы (см. [method "
"body_set_omit_force_integration]). Ее можно использовать, например, для "
"обновления линейной и угловой скорости тела на основе контакта с другими "
"телами.\n"
"Если [param userdata] не является [code]null[/code], функция [param callable] "
"должна принимать следующие два параметра:\n"
"1. [code]state[/code]: [PhysicsDirectBodyState3D], используемый для получения "
"и изменения состояния тела,\n"
"2. [code skip-lint]userdata[/code]: [Variant]; ее значением будет [param "
"userdata], переданный в этот метод.\n"
"Если [param userdata] равен [code]null[/code], то [param callable] должен "
"принимать только параметр [code]state[/code]."

msgid ""
"Sets the maximum contacts to report. Bodies can keep a log of the contacts "
"with other bodies. This is enabled by setting the maximum number of contacts "
"reported to a number greater than 0."
msgstr ""
"Устанавливает максимальное количество контактов для отчета. Органы могут "
"вести журнал контактов с другими органами. Это включается путем установки "
"максимального количества сообщаемых контактов на число больше 0."

msgid "Sets the body mode."
msgstr "Устанавливает режим тела."

msgid ""
"Sets whether the body omits the standard force integration. If [param enable] "
"is [code]true[/code], the body will not automatically use applied forces, "
"torques, and damping to update the body's linear and angular velocity. In "
"this case, [method body_set_force_integration_callback] can be used to "
"manually update the linear and angular velocity instead.\n"
"This method is called when the property [member "
"RigidBody3D.custom_integrator] is set."
msgstr ""
"Устанавливает, будет ли тело пропускать стандартную интеграцию силы. Если "
"[param enable] равно [code]true[/code], тело не будет автоматически "
"использовать приложенные силы, крутящие моменты и демпфирование для "
"обновления линейной и угловой скорости тела. В этом случае [method "
"body_set_force_integration_callback] можно использовать для ручного "
"обновления линейной и угловой скорости.\n"
"Этот метод вызывается, когда задано свойство [member "
"RigidBody3D.custom_integrator]."

msgid ""
"Sets a body parameter. A list of available parameters is on the [enum "
"BodyParameter] constants."
msgstr ""
"Устанавливает параметр тела. Список доступных параметров находится в "
"константах [enum BodyParameter]."

msgid "Sets the body pickable with rays if [param enable] is set."
msgstr ""
"Устанавливает возможность выбора тела лучами, если установлен [param enable]."

msgid ""
"Substitutes a given body shape by another. The old shape is selected by its "
"index, the new one by its [RID]."
msgstr ""
"Заменяет заданную форму тела другой. Старая форма выбирается по ее индексу, "
"новая — по ее [RID]."

msgid "Sets the transform matrix for a body shape."
msgstr "Задает матрицу преобразования для формы тела."

msgid "Assigns a space to the body (see [method space_create])."
msgstr "Назначает пространство телу (см. [method space_create])."

msgid "Sets a body state."
msgstr "Устанавливает состояние тела."

msgid ""
"Sets the body's state synchronization callback function to [param callable]. "
"Use an empty [Callable] ([code skip-lint]Callable()[/code]) to clear the "
"callback.\n"
"The function [param callable] will be called every physics frame, assuming "
"that the body was active during the previous physics tick, and can be used to "
"fetch the latest state from the physics server.\n"
"The function [param callable] must take the following parameters:\n"
"1. [code]state[/code]: a [PhysicsDirectBodyState3D], used to retrieve the "
"body's state."
msgstr ""
"Устанавливает функцию обратного вызова синхронизации состояния тела на [param "
"callable]. Используйте пустой [Callable] ([code skip-lint]Callable()[/code]), "
"чтобы очистить обратный вызов.\n"
"Функция [param callable] будет вызываться каждый физический кадр, "
"предполагая, что тело было активно во время предыдущего физического тика, и "
"может использоваться для получения последнего состояния с физического "
"сервера.\n"
"Функция [param callable] должна принимать следующие параметры:\n"
"1. [code]state[/code]: [PhysicsDirectBodyState3D], используемый для получения "
"состояния тела."

msgid ""
"Returns [code]true[/code] if a collision would result from moving along a "
"motion vector from a given point in space. [PhysicsTestMotionParameters3D] is "
"passed to set motion parameters. [PhysicsTestMotionResult3D] can be passed to "
"return additional information."
msgstr ""
"Возвращает [code]true[/code], если столкновение возникнет в результате "
"движения по вектору движения из заданной точки в пространстве. "
"[PhysicsTestMotionParameters3D] передается для установки параметров движения. "
"[PhysicsTestMotionResult3D] может быть передан для возврата дополнительной "
"информации."

msgid "Gets a cone twist joint parameter."
msgstr "Получает параметр конусного скручивающего соединения (twist joint)."

msgid "Sets a cone twist joint parameter."
msgstr "Устанавливает параметр конусного скручивания (twist joint)."

msgid ""
"Destroys any of the objects created by PhysicsServer3D. If the [RID] passed "
"is not one of the objects that can be created by PhysicsServer3D, an error "
"will be sent to the console."
msgstr ""
"Уничтожает любой из объектов, созданных PhysicsServer3D. Если переданный "
"[RID] не является одним из объектов, которые могут быть созданы "
"PhysicsServer3D, на консоль будет отправлена ошибка."

msgid "Returns the value of a generic 6DOF joint flag."
msgstr "Возвращает значение универсального флага соединения 6DOF."

msgid "Returns the value of a generic 6DOF joint parameter."
msgstr "Возвращает значение универсального параметра соединения 6DOF."

msgid "Sets the value of a given generic 6DOF joint flag."
msgstr "Устанавливает значение заданного универсального флага соединения 6DOF."

msgid "Sets the value of a given generic 6DOF joint parameter."
msgstr ""
"Устанавливает значение заданного универсального параметра соединения 6DOF."

msgid "Gets a hinge joint flag."
msgstr "Получает флаг шарнирного соединения."

msgid "Gets a hinge joint parameter."
msgstr "Получает параметр шарнирного соединения."

msgid "Sets a hinge joint flag."
msgstr "Устанавливает флаг шарнирного соединения."

msgid "Sets a hinge joint parameter."
msgstr "Устанавливает параметр шарнирного соединения."

msgid ""
"Sets whether the bodies attached to the [Joint3D] will collide with each "
"other."
msgstr ""
"Устанавливает, будут ли тела, прикрепленные к [Joint3D], сталкиваться друг с "
"другом."

msgid "Gets the priority value of the Joint3D."
msgstr "Получает значение приоритета Joint3D."

msgid "Returns the type of the Joint3D."
msgstr "Возвращает тип Joint3D."

msgid ""
"Returns whether the bodies attached to the [Joint3D] will collide with each "
"other."
msgstr ""
"Возвращает, будут ли тела, прикрепленные к [Joint3D], сталкиваться друг с "
"другом."

msgid ""
"Make the joint a generic six degrees of freedom (6DOF) joint. Use [method "
"generic_6dof_joint_set_flag] and [method generic_6dof_joint_set_param] to set "
"the joint's flags and parameters respectively."
msgstr ""
"Сделайте шарнир универсальным с шестью степенями свободы (6DOF). Используйте "
"[method generic_6dof_joint_set_flag] и [method generic_6dof_joint_set_param] "
"для установки флагов и параметров шарнира соответственно."

msgid "Sets the priority value of the Joint3D."
msgstr "Устанавливает значение приоритета Joint3D."

msgid "Returns position of the joint in the local space of body a of the joint."
msgstr "Возвращает положение сустава в локальном пространстве тела a сустава."

msgid "Returns position of the joint in the local space of body b of the joint."
msgstr ""
"Возвращает положение сочленения в локальном пространстве тела b сочленения."

msgid "Gets a pin joint parameter."
msgstr "Получает параметр штифтового соединения (pin joint)."

msgid "Sets position of the joint in the local space of body a of the joint."
msgstr ""
"Устанавливает положение сустава в локальном пространстве тела a сустава."

msgid "Sets position of the joint in the local space of body b of the joint."
msgstr ""
"Устанавливает положение сустава в локальном пространстве тела b сустава."

msgid "Activates or deactivates the 3D physics engine."
msgstr "Активирует или деактивирует 3D физический движок."

msgid "Returns the shape data."
msgstr "Возвращает данные формы."

msgid ""
"Returns the collision margin for the shape.\n"
"[b]Note:[/b] This is not used in Godot Physics, so will always return "
"[code]0[/code]."
msgstr ""
"Возвращает границу столкновения для формы.\n"
"[b]Примечание:[/b] Это не используется в Godot Physics, поэтому всегда будет "
"возвращать [code]0[/code]."

msgid "Returns the type of shape."
msgstr "Возвращает тип фигуры."

msgid ""
"Sets the shape data that defines its shape and size. The data to be passed "
"depends on the kind of shape created [method shape_get_type]."
msgstr ""
"Устанавливает данные формы, определяющие ее форму и размер. Передаваемые "
"данные зависят от типа созданной формы [method shape_get_type]."

msgid ""
"Sets the collision margin for the shape.\n"
"[b]Note:[/b] This is not used in Godot Physics."
msgstr ""
"Устанавливает границу столкновения для формы.\n"
"[b]Примечание:[/b] Это не используется в Godot Physics."

msgid "Gets a slider joint parameter."
msgstr "Получает параметр скользящего соединения."

msgid "Adds the given body to the list of bodies exempt from collisions."
msgstr "Добавляет указанное тело в список тел, освобожденных от столкновений."

msgid ""
"Distributes and applies a force to all points. A force is time dependent and "
"meant to be applied every physics update."
msgstr ""
"Распределяет и применяет силу ко всем точкам. Сила зависит от времени и "
"должна применяться при каждом обновлении физики."

msgid ""
"Distributes and applies an impulse to all points.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise)."
msgstr ""
"Распределяет и применяет импульс ко всем точкам.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\")."

msgid ""
"Applies a force to a point. A force is time dependent and meant to be applied "
"every physics update."
msgstr ""
"Прикладывает силу к точке. Сила зависит от времени и должна применяться при "
"каждом обновлении физики."

msgid ""
"Applies an impulse to a point.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise)."
msgstr ""
"Применяет импульс к точке.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\")."

msgid "Creates a new soft body and returns its internal [RID]."
msgstr "Создает новое мягкое тело и возвращает его внутренний [RID]."

msgid "Returns the bounds of the given soft body in global coordinates."
msgstr "Возвращает границы заданного мягкого тела в глобальных координатах."

msgid "Returns the physics layer or layers that the given soft body belongs to."
msgstr ""
"Возвращает физический слой или слои, к которым принадлежит заданное мягкое "
"тело."

msgid ""
"Returns the physics layer or layers that the given soft body can collide with."
msgstr ""
"Возвращает физический слой или слои, с которыми может сталкиваться заданное "
"мягкое тело."

msgid "Returns the damping coefficient of the given soft body."
msgstr "Возвращает коэффициент затухания заданного мягкого тела."

msgid "Returns the drag coefficient of the given soft body."
msgstr "Возвращает коэффициент сопротивления заданного мягкого тела."

msgid "Returns the linear stiffness of the given soft body."
msgstr "Возвращает линейную жесткость заданного мягкого тела."

msgid ""
"Returns the current position of the given soft body point in global "
"coordinates."
msgstr ""
"Возвращает текущее положение заданной точки мягкого тела в глобальных "
"координатах."

msgid "Returns the pressure coefficient of the given soft body."
msgstr "Возвращает коэффициент давления заданного мягкого тела."

msgid "Returns the shrinking factor of the given soft body."
msgstr "Возвращает коэффициент сжатия заданного мягкого тела (soft body)."

msgid "Returns the simulation precision of the given soft body."
msgstr "Возвращает точность моделирования заданного мягкого тела."

msgid "Returns the [RID] of the space assigned to the given soft body."
msgstr "Возвращает [RID] пространства, назначенного данному мягкому телу."

msgid ""
"Returns the given soft body state.\n"
"[b]Note:[/b] Godot's default physics implementation does not support "
"[constant BODY_STATE_LINEAR_VELOCITY], [constant "
"BODY_STATE_ANGULAR_VELOCITY], [constant BODY_STATE_SLEEPING], or [constant "
"BODY_STATE_CAN_SLEEP]."
msgstr ""
"Возвращает заданное состояние мягкого тела.\n"
"[b]Примечание:[/b] Реализация физики Godot по умолчанию не поддерживает "
"[constant BODY_STATE_LINEAR_VELOCITY], [constant "
"BODY_STATE_ANGULAR_VELOCITY], [constant BODY_STATE_SLEEPING] или [constant "
"BODY_STATE_CAN_SLEEP]."

msgid "Returns the total mass assigned to the given soft body."
msgstr "Возвращает общую массу, присвоенную данному мягкому телу."

msgid "Returns whether the given soft body point is pinned."
msgstr "Возвращает, закреплённую ли заданную точку мягкого тела."

msgid "Moves the given soft body point to a position in global coordinates."
msgstr ""
"Перемещает заданную точку мягкого тела в положение в глобальных координатах."

msgid ""
"Pins or unpins the given soft body point based on the value of [param pin].\n"
"[b]Note:[/b] Pinning a point effectively makes it kinematic, preventing it "
"from being affected by forces, but you can still move it using [method "
"soft_body_move_point]."
msgstr ""
"Прикрепляет или открепляет заданную точку мягкого тела на основе значения "
"[param pin].\n"
"[b]Примечание:[/b] Прикрепление точки фактически делает ее кинематической, "
"предотвращая воздействие на нее сил, но вы все равно можете перемещать ее с "
"помощью [method soft_body_move_point]."

msgid "Unpins all points of the given soft body."
msgstr "Открепляет все точки заданного мягкого тела."

msgid "Removes the given body from the list of bodies exempt from collisions."
msgstr "Удаляет указанное тело из списка тел, освобожденных от столкновений."

msgid "Sets the physics layer or layers the given soft body belongs to."
msgstr ""
"Устанавливает физический слой или слои, к которым принадлежит заданное мягкое "
"тело."

msgid "Sets the physics layer or layers the given soft body can collide with."
msgstr ""
"Устанавливает физический слой или слои, с которыми может сталкиваться "
"заданное мягкое тело."

msgid ""
"Sets the damping coefficient of the given soft body. Higher values will slow "
"down the body more noticeably when forces are applied."
msgstr ""
"Устанавливает коэффициент затухания данного мягкого тела. Более высокие "
"значения будут замедлять тело более заметно при приложении сил."

msgid ""
"Sets the drag coefficient of the given soft body. Higher values increase this "
"body's air resistance.\n"
"[b]Note:[/b] This value is currently unused by Godot's default physics "
"implementation."
msgstr ""
"Устанавливает коэффициент сопротивления данного мягкого тела. Более высокие "
"значения увеличивают сопротивление воздуха этого тела.\n"
"[b]Примечание:[/b] Это значение в настоящее время не используется в "
"стандартной реализации физики Godot."

msgid ""
"Sets the linear stiffness of the given soft body. Higher values will result "
"in a stiffer body, while lower values will increase the body's ability to "
"bend. The value can be between [code]0.0[/code] and [code]1.0[/code] "
"(inclusive)."
msgstr ""
"Устанавливает линейную жесткость заданного мягкого тела. Более высокие "
"значения приведут к более жесткому телу, а более низкие значения увеличат "
"способность тела изгибаться. Значение может быть между [code]0.0[/code] и "
"[code]1.0[/code] (включительно)."

msgid "Sets the mesh of the given soft body."
msgstr "Устанавливает сетку заданного мягкого тела."

msgid ""
"Sets the pressure coefficient of the given soft body. Simulates pressure "
"build-up from inside this body. Higher values increase the strength of this "
"effect."
msgstr ""
"Устанавливает коэффициент давления данного мягкого тела. Имитирует нарастание "
"давления изнутри этого тела. Более высокие значения увеличивают силу этого "
"эффекта."

msgid ""
"Sets whether the given soft body will be pickable when using object picking."
msgstr ""
"Устанавливает, будет ли заданное мягкое тело доступно для выбора при "
"использовании выбора объекта."

msgid "Sets the shrinking factor of the given soft body."
msgstr "Устанавливает коэффициент сжатия заданного мягкого тела."

msgid ""
"Sets the simulation precision of the given soft body. Increasing this value "
"will improve the resulting simulation, but can affect performance. Use with "
"care."
msgstr ""
"Устанавливает точность моделирования данного мягкого тела. Увеличение этого "
"значения улучшит результирующее моделирование, но может повлиять на "
"производительность. Используйте с осторожностью."

msgid "Assigns a space to the given soft body (see [method space_create])."
msgstr ""
"Назначает пространство данному мягкому телу (см. [method space_create])."

msgid ""
"Sets the given body state for the given body.\n"
"[b]Note:[/b] Godot's default physics implementation does not support "
"[constant BODY_STATE_LINEAR_VELOCITY], [constant "
"BODY_STATE_ANGULAR_VELOCITY], [constant BODY_STATE_SLEEPING], or [constant "
"BODY_STATE_CAN_SLEEP]."
msgstr ""
"Устанавливает заданное состояние тела для заданного тела.\n"
"[b]Примечание:[/b] Реализация физики Godot по умолчанию не поддерживает "
"[constant BODY_STATE_LINEAR_VELOCITY], [constant "
"BODY_STATE_ANGULAR_VELOCITY], [constant BODY_STATE_SLEEPING] или [constant "
"BODY_STATE_CAN_SLEEP]."

msgid "Sets the total mass for the given soft body."
msgstr "Устанавливает общую массу для данного мягкого тела."

msgid "Sets the global transform of the given soft body."
msgstr "Устанавливает глобальное преобразование заданного мягкого тела."

msgid ""
"Requests that the physics server updates the rendering server with the latest "
"positions of the given soft body's points through the [param "
"rendering_server_handler] interface."
msgstr ""
"Запрашивает, чтобы физический сервер обновлял сервер рендеринга последними "
"позициями точек заданного мягкого тела через интерфейс [param "
"rendering_server_handler]."

msgid ""
"Creates a space. A space is a collection of parameters for the physics engine "
"that can be assigned to an area or a body. It can be assigned to an area with "
"[method area_set_space], or to a body with [method body_set_space]."
msgstr ""
"Создает пространство. Пространство — это набор параметров для физического "
"движка, которые можно назначить области или телу. Его можно назначить области "
"с помощью [method area_set_space] или телу с помощью [method body_set_space]."

msgid ""
"Returns the state of a space, a [PhysicsDirectSpaceState3D]. This object can "
"be used to make collision/intersection queries."
msgstr ""
"Возвращает состояние пространства, [PhysicsDirectSpaceState3D]. Этот объект "
"можно использовать для создания запросов на столкновение/пересечение."

msgid "Returns the value of a space parameter."
msgstr "Возвращает значение параметра пространства."

msgid "Returns whether the space is active."
msgstr "Возвращает, активно ли пространство."

msgid ""
"Marks a space as active. It will not have an effect, unless it is assigned to "
"an area or body."
msgstr ""
"Отмечает пространство как активное. Не будет иметь эффекта, если не назначено "
"области или телу."

msgid ""
"Sets the value for a space parameter. A list of available parameters is on "
"the [enum SpaceParameter] constants."
msgstr ""
"Устанавливает значение для параметра пространства. Список доступных "
"параметров находится в константах [enum SpaceParameter]."

msgid "The [Joint3D] is a [PinJoint3D]."
msgstr "[Joint3D] — это [PinJoint3D]."

msgid "The [Joint3D] is a [HingeJoint3D]."
msgstr "[Joint3D] — это [HingeJoint3D]."

msgid "The [Joint3D] is a [SliderJoint3D]."
msgstr "[Joint3D] — это [SliderJoint3D]."

msgid "The [Joint3D] is a [ConeTwistJoint3D]."
msgstr "[Joint3D] — это [ConeTwistJoint3D]."

msgid "The [Joint3D] is a [Generic6DOFJoint3D]."
msgstr "[Joint3D] — это [Generic6DOFJoint3D]."

msgid ""
"The strength with which the pinned objects try to stay in positional relation "
"to each other.\n"
"The higher, the stronger."
msgstr ""
"Сила, с которой закрепленные объекты пытаются удержаться в позиционном "
"отношении друг к другу. \n"
"Чем выше, тем сильнее."

msgid ""
"The strength with which the pinned objects try to stay in velocity relation "
"to each other.\n"
"The higher, the stronger."
msgstr ""
"Сила, с которой закрепленные объекты пытаются удерживаться в скоростном "
"отношении друг к другу. \n"
"Чем выше, тем сильнее."

msgid ""
"If above 0, this value is the maximum value for an impulse that this Joint3D "
"puts on its ends."
msgstr ""
"Если значение больше 0, то это максимальное значение импульса, который "
"Joint3D подает на свои концы."

msgid "The maximum rotation across the Hinge."
msgstr "Максимальный угол поворота Шарнира."

msgid "The minimum rotation across the Hinge."
msgstr "Минимальное вращение вокруг Шарнира."

msgid "If [code]true[/code], the Hinge has a maximum and a minimum rotation."
msgstr ""
"Если [code]true[/code], шарнир имеет максимальное и минимальное вращение."

msgid "If [code]true[/code], a motor turns the Hinge."
msgstr "Если [code]true[/code], двигатель вращает шарнир."

msgid ""
"The maximum difference between the pivot points on their X axis before "
"damping happens."
msgstr ""
"Максимальная разница между точками поворота по оси X до наступления "
"амортизации."

msgid ""
"The minimum difference between the pivot points on their X axis before "
"damping happens."
msgstr ""
"Минимальная разница между точками поворота по оси X до наступления "
"амортизации."

msgid ""
"A factor applied to the movement across the slider axis once the limits get "
"surpassed. The lower, the slower the movement."
msgstr ""
"Фактор, применяемый к движению по оси ползунка после превышения пределов. Чем "
"ниже, тем медленнее движение."

msgid ""
"The amount of restitution once the limits are surpassed. The lower, the more "
"velocity-energy gets lost."
msgstr ""
"Величина возмещения после превышения пределов. Чем ниже, тем больше теряется "
"энергия скорости."

msgid "The amount of damping once the slider limits are surpassed."
msgstr "Величина демпфирования после превышения пределов ползунка."

msgid ""
"A factor applied to the movement across the slider axis as long as the slider "
"is in the limits. The lower, the slower the movement."
msgstr ""
"Фактор, применяемый к движению по оси ползунка, пока ползунок находится в "
"пределах. Чем ниже, тем медленнее движение."

msgid "The amount of restitution inside the slider limits."
msgstr "Сумма возмещения в пределах ползунка."

msgid "The amount of damping inside the slider limits."
msgstr "Величина демпфирования внутри пределов ползунка."

msgid "A factor applied to the movement across axes orthogonal to the slider."
msgstr "Коэффициент, применяемый к движению по осям, ортогональным ползунку."

msgid ""
"The amount of restitution when movement is across axes orthogonal to the "
"slider."
msgstr "Величина восстановления при движении по осям, ортогональным ползунку."

msgid ""
"The amount of damping when movement is across axes orthogonal to the slider."
msgstr "Величина демпфирования при движении по осям, перпендикулярным ползунку."

msgid "The upper limit of rotation in the slider."
msgstr "Верхний предел поворота ползунка."

msgid "The lower limit of rotation in the slider."
msgstr "Нижний предел поворота ползунка."

msgid "A factor applied to the all rotation once the limit is surpassed."
msgstr "Коэффициент, применяемый ко всему вращению после превышения предела."

msgid "The amount of restitution of the rotation when the limit is surpassed."
msgstr "Сумма возмещения за вращение при превышении лимита."

msgid "The amount of damping of the rotation when the limit is surpassed."
msgstr "Величина затухания вращения при превышении предела."

msgid "A factor that gets applied to the all rotation in the limits."
msgstr "Фактор, который применяется ко всем вращениям в пределах."

msgid "The amount of restitution of the rotation in the limits."
msgstr "Сумма возмещения ротации в пределах."

msgid "The amount of damping of the rotation in the limits."
msgstr "Величина затухания вращения в пределах."

msgid ""
"A factor that gets applied to the all rotation across axes orthogonal to the "
"slider."
msgstr ""
"Коэффициент, который применяется ко всем вращениям по осям, ортогональным "
"ползунку."

msgid ""
"The amount of restitution of the rotation across axes orthogonal to the "
"slider."
msgstr "Величина восстановления вращения по осям, ортогональным ползунку."

msgid ""
"The amount of damping of the rotation across axes orthogonal to the slider."
msgstr "Величина демпфирования вращения по осям, ортогональным ползунку."

msgid "Represents the size of the [enum SliderJointParam] enum."
msgstr "Представляет размер перечисления [enum SliderJointParam]."

msgid ""
"The ease with which the Joint3D twists, if it's too low, it takes more force "
"to twist the joint."
msgstr ""
"Легкость, с которой Joint3D скручивается, если она слишком низкая, "
"потребуется больше силы для скручивания соединения."

msgid ""
"A factor that gets applied to the movement across the axes. The lower, the "
"slower the movement."
msgstr ""
"Фактор, который применяется к движению по осям. Чем ниже, тем медленнее "
"движение."

msgid ""
"The amount of restitution on the axes movement. The lower, the more velocity-"
"energy gets lost."
msgstr ""
"Величина восстановления движения по осям. Чем ниже, тем больше теряется "
"скорость-энергия."

msgid "The velocity that the joint's linear motor will attempt to reach."
msgstr "Скорость, которую будет пытаться достичь линейный двигатель сочленения."

msgid ""
"The maximum force that the linear motor can apply while trying to reach the "
"target velocity."
msgstr ""
"Максимальная сила, которую может приложить линейный двигатель, пытаясь "
"достичь целевой скорости."

msgid "A factor that gets multiplied onto all rotations across the axes."
msgstr "Коэффициент, который умножается на все вращения вокруг осей."

msgid ""
"When correcting the crossing of limits in rotation across the axes, this "
"error tolerance factor defines how much the correction gets slowed down. The "
"lower, the slower."
msgstr ""
"При коррекции пересечения пределов при вращении по осям этот коэффициент "
"допуска погрешности определяет, насколько замедляется коррекция. Чем ниже, "
"тем медленнее."

msgid "Represents the size of the [enum G6DOFJointAxisParam] enum."
msgstr "Представляет размер перечисления [enum G6DOFJointAxisParam]."

msgid "If set, linear motion is possible within the given limits."
msgstr "Если установлено, то линейное движение возможно в заданных пределах."

msgid "If set, rotational motion is possible."
msgstr "Если установлено, возможно вращательное движение."

msgid "If set, there is a rotational motor across these axes."
msgstr "Если установлено, по этим осям имеется вращательный двигатель."

msgid ""
"If set, there is a linear motor on this axis that targets a specific velocity."
msgstr ""
"Если установлено, на этой оси имеется линейный двигатель, который "
"нацеливается на определенную скорость."

msgid "Represents the size of the [enum G6DOFJointAxisFlag] enum."
msgstr "Представляет размер перечисления [enum G6DOFJointAxisFlag]."

msgid "The [Shape3D] is a [WorldBoundaryShape3D]."
msgstr "[Shape3D] — это [WorldBoundaryShape3D]."

msgid "The [Shape3D] is a [SeparationRayShape3D]."
msgstr "[Shape3D] — это [SeparationRayShape3D]."

msgid "The [Shape3D] is a [SphereShape3D]."
msgstr "[Shape3D] — это [SphereShape3D]."

msgid "The [Shape3D] is a [BoxShape3D]."
msgstr "[Shape3D] — это [BoxShape3D]."

msgid "The [Shape3D] is a [CapsuleShape3D]."
msgstr "[Shape3D] — это [CapsuleShape3D]."

msgid "The [Shape3D] is a [CylinderShape3D]."
msgstr "[Shape3D] — это [CylinderShape3D]."

msgid "The [Shape3D] is a [ConvexPolygonShape3D]."
msgstr "[Shape3D] — это [ConvexPolygonShape3D]."

msgid "The [Shape3D] is a [ConcavePolygonShape3D]."
msgstr "[Shape3D] — это [ConcavePolygonShape3D]."

msgid "The [Shape3D] is a [HeightMapShape3D]."
msgstr "[Shape3D] — это [HeightMapShape3D]."

msgid ""
"The [Shape3D] is used internally for a soft body. Any attempt to create this "
"kind of shape results in an error."
msgstr ""
"[Shape3D] используется внутри для создания мягкого тела. Любая попытка "
"создать подобную фигуру приводит к ошибке."

msgid ""
"Constant to set/get gravity override mode in an area. See [enum "
"AreaSpaceOverrideMode] for possible values."
msgstr ""
"Константа для установки/получения режима переопределения гравитации в "
"области. См. [enum AreaSpaceOverrideMode] для возможных значений."

msgid "Constant to set/get gravity strength in an area."
msgstr ""
"Константа для установки/получения силы гравитации в определенной области."

msgid "Constant to set/get gravity vector/center in an area."
msgstr "Константа для установки/получения вектора/центра гравитации в области."

msgid ""
"Constant to set/get whether the gravity vector of an area is a direction, or "
"a center point."
msgstr ""
"Константа для установки/получения информации о том, является ли вектор силы "
"тяжести области направлением или центральной точкой."

msgid ""
"Constant to set/get the distance at which the gravity strength is equal to "
"the gravity controlled by [constant AREA_PARAM_GRAVITY]. For example, on a "
"planet 100 meters in radius with a surface gravity of 4.0 m/s², set the "
"gravity to 4.0 and the unit distance to 100.0. The gravity will have falloff "
"according to the inverse square law, so in the example, at 200 meters from "
"the center the gravity will be 1.0 m/s² (twice the distance, 1/4th the "
"gravity), at 50 meters it will be 16.0 m/s² (half the distance, 4x the "
"gravity), and so on.\n"
"The above is true only when the unit distance is a positive number. When this "
"is set to 0.0, the gravity will be constant regardless of distance."
msgstr ""
"Константа для установки/получения расстояния, на котором сила гравитации "
"равна силе гравитации, контролируемой [constant AREA_PARAM_GRAVITY]. "
"Например, на планете радиусом 100 метров с поверхностной гравитацией 4,0 м/с² "
"установите гравитацию на 4,0, а единичное расстояние на 100,0. Гравитация "
"будет спадать в соответствии с законом обратных квадратов, поэтому в этом "
"примере на расстоянии 200 метров от центра гравитация будет составлять 1,0 м/"
"с² (в два раза больше расстояния, 1/4 гравитации), на расстоянии 50 метров "
"она будет составлять 16,0 м/с² (в два раза больше расстояния, 4x гравитации) "
"и т. д.\n"
"Вышесказанное верно только в том случае, если единичное расстояние является "
"положительным числом. Если установлено значение 0,0, гравитация будет "
"постоянной независимо от расстояния."

msgid ""
"Constant to set/get linear damping override mode in an area. See [enum "
"AreaSpaceOverrideMode] for possible values."
msgstr ""
"Константа для установки/получения режима переопределения линейного затухания "
"в области. См. [enum AreaSpaceOverrideMode] для возможных значений."

msgid "Constant to set/get the linear damping factor of an area."
msgstr ""
"Константа для установки/получения линейного коэффициента затухания области."

msgid ""
"Constant to set/get angular damping override mode in an area. See [enum "
"AreaSpaceOverrideMode] for possible values."
msgstr ""
"Константа для установки/получения режима переопределения углового "
"демпфирования в области. См. [enum AreaSpaceOverrideMode] для возможных "
"значений."

msgid "Constant to set/get the angular damping factor of an area."
msgstr ""
"Константа для установки/получения углового коэффициента затухания области."

msgid "Constant to set/get the priority (order of processing) of an area."
msgstr ""
"Константа для установки/получения приоритета (порядка обработки) области."

msgid ""
"Constant to set/get the magnitude of area-specific wind force. This wind "
"force only applies to [SoftBody3D] nodes. Other physics bodies are currently "
"not affected by wind."
msgstr ""
"Константа для установки/получения величины силы ветра, специфичной для "
"области. Эта сила ветра применяется только к узлам [SoftBody3D]. Другие "
"физические тела в настоящее время не подвержены влиянию ветра."

msgid ""
"Constant to set/get the 3D vector that specifies the origin from which an "
"area-specific wind blows."
msgstr ""
"Константа для установки/получения трехмерного вектора, определяющего начало "
"координат, откуда дует ветер в определенной области."

msgid ""
"Constant to set/get the 3D vector that specifies the direction in which an "
"area-specific wind blows."
msgstr ""
"Константа для установки/получения трехмерного вектора, определяющего "
"направление, в котором дует ветер в определенной местности."

msgid ""
"Constant to set/get the exponential rate at which wind force decreases with "
"distance from its origin."
msgstr ""
"Константа для установки/получения экспоненциальной скорости, с которой сила "
"ветра уменьшается с расстоянием от источника."

msgid "Constant to set/get a body's bounce factor."
msgstr "Константа для установки/получения коэффициента упругости тела."

msgid "Constant to set/get a body's friction."
msgstr "Постоянная величина, устанавливающая/получающая трение тела."

msgid "Constant to set/get a body's mass."
msgstr "Константа для установки/получения массы тела."

msgid "Constant to set/get a body's inertia."
msgstr "Константа для задания/получения инерции тела."

msgid ""
"Constant to set/get a body's center of mass position in the body's local "
"coordinate system."
msgstr ""
"Константа для установки/получения положения центра масс тела в локальной "
"системе координат тела."

msgid "Constant to set/get a body's gravity multiplier."
msgstr "Константа для установки/получения множителя силы тяжести тела."

msgid ""
"Constant to set/get a body's linear damping mode. See [enum BodyDampMode] for "
"possible values."
msgstr ""
"Константа для установки/получения линейного режима демпфирования тела. См. "
"[enum BodyDampMode] для возможных значений."

msgid ""
"Constant to set/get a body's angular damping mode. See [enum BodyDampMode] "
"for possible values."
msgstr ""
"Константа для установки/получения режима углового демпфирования тела. См. "
"[enum BodyDampMode] для возможных значений."

msgid "Constant to set/get a body's linear damping factor."
msgstr ""
"Константа для установки/получения линейного коэффициента затухания тела."

msgid "Constant to set/get a body's angular damping factor."
msgstr "Константа для установки/получения коэффициента углового затухания тела."

msgid ""
"Constant to set/get the maximum distance a pair of bodies has to move before "
"their collision status has to be recalculated."
msgstr ""
"Константа для установки/получения максимального расстояния, которое должна "
"пройти пара тел, прежде чем их статус столкновения придется пересчитывать."

msgid ""
"Constant to set/get the maximum distance a shape can be from another before "
"they are considered separated and the contact is discarded."
msgstr ""
"Константа для установки/получения максимального расстояния между фигурами, на "
"котором они могут находиться, прежде чем они будут считаться разделенными и "
"контакт будет отменен."

msgid ""
"Constant to set/get the maximum distance a shape can penetrate another shape "
"before it is considered a collision."
msgstr ""
"Константа для установки/получения максимального расстояния, на которое одна "
"фигура может проникнуть в другую, прежде чем это будет считаться "
"столкновением."

msgid ""
"Constant to set/get the default solver bias for all physics contacts. A "
"solver bias is a factor controlling how much two objects \"rebound\", after "
"overlapping, to avoid leaving them in that state because of numerical "
"imprecision."
msgstr ""
"Константа для установки/получения смещения решателя по умолчанию для всех "
"физических контактов. Смещение решателя — это фактор, контролирующий, "
"насколько два объекта «отскакивают» после наложения, чтобы избежать их "
"оставления в этом состоянии из-за числовой неточности."

msgid ""
"Constant to set/get the threshold linear velocity of activity. A body marked "
"as potentially inactive for both linear and angular velocity will be put to "
"sleep after the time given."
msgstr ""
"Константа для установки/получения пороговой линейной скорости активности. "
"Тело, отмеченное как потенциально неактивное как для линейной, так и для "
"угловой скорости, будет переведено в режим сна по истечении указанного "
"времени."

msgid ""
"Constant to set/get the threshold angular velocity of activity. A body marked "
"as potentially inactive for both linear and angular velocity will be put to "
"sleep after the time given."
msgstr ""
"Константа для установки/получения пороговой угловой скорости активности. "
"Тело, отмеченное как потенциально неактивное как для линейной, так и для "
"угловой скорости, будет переведено в спящий режим по истечении указанного "
"времени."

msgid ""
"Constant to set/get the maximum time of activity. A body marked as "
"potentially inactive for both linear and angular velocity will be put to "
"sleep after this time."
msgstr ""
"Константа для установки/получения максимального времени активности. Тело, "
"отмеченное как потенциально неактивное как для линейной, так и для угловой "
"скорости, будет переведено в спящий режим по истечении этого времени."

msgid ""
"Constant to set/get the number of solver iterations for contacts and "
"constraints. The greater the number of iterations, the more accurate the "
"collisions and constraints will be. However, a greater number of iterations "
"requires more CPU power, which can decrease performance."
msgstr ""
"Константа для установки/получения количества итераций решателя для контактов "
"и ограничений. Чем больше количество итераций, тем точнее будут столкновения "
"и ограничения. Однако большее количество итераций требует большей мощности "
"ЦП, что может снизить производительность."

msgid ""
"Provides virtual methods that can be overridden to create custom "
"[PhysicsServer3D] implementations."
msgstr ""
"Предоставляет виртуальные методы, которые можно переопределить для создания "
"пользовательских реализаций [PhysicsServer3D]."

msgid ""
"This class extends [PhysicsServer3D] by providing additional virtual methods "
"that can be overridden. When these methods are overridden, they will be "
"called instead of the internal methods of the physics server.\n"
"Intended for use with GDExtension to create custom implementations of "
"[PhysicsServer3D]."
msgstr ""
"Этот класс расширяет [PhysicsServer3D], предоставляя дополнительные "
"виртуальные методы, которые можно переопределить. Когда эти методы "
"переопределяются, они будут вызываться вместо внутренних методов физического "
"сервера.\n"
"Предназначено для использования с GDExtension для создания пользовательских "
"реализаций [PhysicsServer3D]."

msgid "A singleton for managing [PhysicsServer3D] implementations."
msgstr "Синглтон для управления реализациями [PhysicsServer3D]."

msgid ""
"[PhysicsServer3DManager] is the API for registering [PhysicsServer3D] "
"implementations and for setting the default implementation.\n"
"[b]Note:[/b] It is not possible to switch physics servers at runtime. This "
"class is only used on startup at the server initialization level, by Godot "
"itself and possibly by GDExtensions."
msgstr ""
"[PhysicsServer3DManager] — это API для регистрации реализаций "
"[PhysicsServer3D] и для установки реализации по умолчанию.\n"
"[b]Примечание:[/b] Невозможно переключать физические серверы во время "
"выполнения. Этот класс используется только при запуске на уровне "
"инициализации сервера, самим Godot и, возможно, GDExtensions."

msgid ""
"Register a [PhysicsServer3D] implementation by passing a [param name] and a "
"[Callable] that returns a [PhysicsServer3D] object."
msgstr ""
"Зарегистрируйте реализацию [PhysicsServer3D], передав [param name] и "
"[Callable], который возвращает объект [PhysicsServer3D]."

msgid ""
"Set the default [PhysicsServer3D] implementation to the one identified by "
"[param name], if [param priority] is greater than the priority of the current "
"default implementation."
msgstr ""
"Установите реализацию [PhysicsServer3D] по умолчанию на ту, которая "
"определена [param name], если [param priority] больше приоритета текущей "
"реализации по умолчанию."

msgid ""
"A class used to provide [method "
"PhysicsServer3DExtension._soft_body_update_rendering_server] with a rendering "
"handler for soft bodies."
msgstr ""
"Класс, используемый для предоставления [method "
"PhysicsServer3DExtension._soft_body_update_rendering_server] обработчика "
"рендеринга для мягких тел."

msgid ""
"Called by the [PhysicsServer3D] to set the bounding box for the [SoftBody3D]."
msgstr ""
"Вызывается [PhysicsServer3D] для установки ограничивающей рамки для "
"[SoftBody3D]."

msgid ""
"Called by the [PhysicsServer3D] to set the normal for the [SoftBody3D] vertex "
"at the index specified by [param vertex_id].\n"
"[b]Note:[/b] The [param normal] parameter used to be of type [code]const "
"void*[/code] prior to Godot 4.2."
msgstr ""
"Вызывается [PhysicsServer3D] для установки нормали для вершины [SoftBody3D] "
"по индексу, указанному [param vertex_id].\n"
"[b]Примечание:[/b] Параметр [param normal] имел тип [code]const void*[/code] "
"до Godot 4.2."

msgid ""
"Called by the [PhysicsServer3D] to set the position for the [SoftBody3D] "
"vertex at the index specified by [param vertex_id].\n"
"[b]Note:[/b] The [param vertex] parameter used to be of type [code]const "
"void*[/code] prior to Godot 4.2."
msgstr ""
"Вызывается [PhysicsServer3D] для установки позиции вершины [SoftBody3D] по "
"индексу, указанному [param vertex_id].\n"
"[b]Примечание:[/b] Параметр [param vertex] имел тип [code]const void*[/code] "
"до Godot 4.2."

msgid "Sets the bounding box for the [SoftBody3D]."
msgstr "Устанавливает ограничивающую рамку для [SoftBody3D]."

msgid ""
"Sets the normal for the [SoftBody3D] vertex at the index specified by [param "
"vertex_id]."
msgstr ""
"Устанавливает нормаль для вершины [SoftBody3D] по индексу, указанному [param "
"vertex_id]."

msgid ""
"Sets the position for the [SoftBody3D] vertex at the index specified by "
"[param vertex_id]."
msgstr ""
"Устанавливает положение вершины [SoftBody3D] по индексу, указанному "
"параметром [param vertex_id]."

msgid "Provides parameters for [PhysicsDirectSpaceState2D]'s methods."
msgstr "Предоставляет параметры для методов [PhysicsDirectSpaceState2D]."

msgid ""
"By changing various properties of this object, such as the shape, you can "
"configure the parameters for [PhysicsDirectSpaceState2D]'s methods."
msgstr ""
"Изменяя различные свойства этого объекта, такие как форма, вы можете "
"настраивать параметры методов [PhysicsDirectSpaceState2D]."

msgid "The collision margin for the shape."
msgstr "Граница столкновения для формы."

msgid "The motion of the shape being queried for."
msgstr "Движение запрашиваемой формы."

msgid ""
"The [Shape2D] that will be used for collision/intersection queries. This "
"stores the actual reference which avoids the shape to be released while being "
"used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
"[Shape2D], который будет использоваться для запросов на столкновение/"
"пересечение. Он хранит фактическую ссылку, которая позволяет избежать "
"освобождения формы при использовании для запросов, поэтому всегда "
"предпочитайте использовать его вместо [member shape_rid]."

msgid ""
"The queried shape's [RID] that will be used for collision/intersection "
"queries. Use this over [member shape] if you want to optimize for performance "
"using the Servers API:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
"var radius = 64\n"
"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
"\n"
"var params = PhysicsShapeQueryParameters2D.new()\n"
"params.shape_rid = shape_rid\n"
"\n"
"# Execute physics queries here...\n"
"\n"
"# Release the shape when done with physics queries.\n"
"PhysicsServer2D.free_rid(shape_rid)\n"
"[/gdscript]\n"
"[csharp]\n"
"RID shapeRid = PhysicsServer2D.CircleShapeCreate();\n"
"int radius = 64;\n"
"PhysicsServer2D.ShapeSetData(shapeRid, radius);\n"
"\n"
"var params = new PhysicsShapeQueryParameters2D();\n"
"params.ShapeRid = shapeRid;\n"
"\n"
"// Execute physics queries here...\n"
"\n"
"// Release the shape when done with physics queries.\n"
"PhysicsServer2D.FreeRid(shapeRid);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[RID] запрошенной формы, которая будет использоваться для запросов на "
"столкновение/пересечение. Используйте это вместо [member shape], если вы "
"хотите оптимизировать производительность с помощью API серверов:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var shape_rid = PhysicsServer2D.circle_shape_create()\n"
"var radius = 64\n"
"PhysicsServer2D.shape_set_data(shape_rid, radius)\n"
"\n"
"var params = PhysicsShapeQueryParameters2D.new()\n"
"params.shape_rid = shape_rid\n"
"\n"
"# Выполняйте физические запросы здесь...\n"
"\n"
"# Освободите форму после завершения физических запросов.\n"
"PhysicsServer2D.free_rid(shape_rid)\n"
"[/gdscript]\n"
"[csharp]\n"
"RID shapeRid = PhysicsServer2D.CircleShapeCreate();\n"
"int radius = 64;\n"
"PhysicsServer2D.ShapeSetData(shapeRid, radius);\n"
"\n"
"var params = new PhysicsShapeQueryParameters2D();\n"
"params.ShapeRid = shapeRid;\n"
"\n"
"// Выполняйте физические запросы здесь...\n"
"\n"
"// Освободите форму после завершения физических запросов.\n"
"PhysicsServer2D.FreeRid(shapeRid);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "The queried shape's transform matrix."
msgstr "Матрица преобразования запрашиваемой формы."

msgid "Provides parameters for [PhysicsDirectSpaceState3D]'s methods."
msgstr "Предоставляет параметры для методов [PhysicsDirectSpaceState3D]."

msgid ""
"By changing various properties of this object, such as the shape, you can "
"configure the parameters for [PhysicsDirectSpaceState3D]'s methods."
msgstr ""
"Изменяя различные свойства этого объекта, такие как форма, вы можете "
"настраивать параметры методов [PhysicsDirectSpaceState3D]."

msgid ""
"The [Shape3D] that will be used for collision/intersection queries. This "
"stores the actual reference which avoids the shape to be released while being "
"used for queries, so always prefer using this over [member shape_rid]."
msgstr ""
"[Shape3D], который будет использоваться для запросов на столкновение/"
"пересечение. Он хранит фактическую ссылку, которая позволяет избежать "
"освобождения формы при использовании для запросов, поэтому всегда "
"предпочитайте использовать его вместо [member shape_rid]."

msgid ""
"The queried shape's [RID] that will be used for collision/intersection "
"queries. Use this over [member shape] if you want to optimize for performance "
"using the Servers API:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var shape_rid = PhysicsServer3D.sphere_shape_create()\n"
"var radius = 2.0\n"
"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
"\n"
"var params = PhysicsShapeQueryParameters3D.new()\n"
"params.shape_rid = shape_rid\n"
"\n"
"# Execute physics queries here...\n"
"\n"
"# Release the shape when done with physics queries.\n"
"PhysicsServer3D.free_rid(shape_rid)\n"
"[/gdscript]\n"
"[csharp]\n"
"RID shapeRid = PhysicsServer3D.SphereShapeCreate();\n"
"float radius = 2.0f;\n"
"PhysicsServer3D.ShapeSetData(shapeRid, radius);\n"
"\n"
"var params = new PhysicsShapeQueryParameters3D();\n"
"params.ShapeRid = shapeRid;\n"
"\n"
"// Execute physics queries here...\n"
"\n"
"// Release the shape when done with physics queries.\n"
"PhysicsServer3D.FreeRid(shapeRid);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Идентификатор [RID] запрашиваемой фигуры, который будет использоваться для "
"запросов на столкновения/пересечения. Используйте его вместо [member shape], "
"если хотите оптимизировать производительность с помощью API серверов:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var shape_rid = PhysicsServer3D.sphere_shape_create()\n"
"var radius = 2.0\n"
"PhysicsServer3D.shape_set_data(shape_rid, radius)\n"
"\n"
"var params = PhysicsShapeQueryParameters3D.new()\n"
"params.shape_rid = shape_rid\n"
"\n"
"# Выполняйте физические запросы здесь...\n"
"\n"
"# После завершения выполнения физических запросов освободите форму.\n"
"PhysicsServer3D.free_rid(shape_rid)\n"
"[/gdscript]\n"
"[csharp]\n"
"RID shapeRid = PhysicsServer3D.SphereShapeCreate();\n"
"float radius = 2.0f;\n"
"PhysicsServer3D.ShapeSetData(shapeRid, radius);\n"
"\n"
"var params = new PhysicsShapeQueryParameters3D();\n"
"params.ShapeRid = shapeRid;\n"
"\n"
"// Выполняйте физические запросы здесь...\n"
"\n"
"// После завершения выполнения физических запросов освободите форму.\n"
"PhysicsServer3D.FreeRid(shapeRid);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Provides parameters for [method PhysicsServer2D.body_test_motion]."
msgstr "Предоставляет параметры для [method PhysicsServer2D.body_test_motion]."

msgid ""
"By changing various properties of this object, such as the motion, you can "
"configure the parameters for [method PhysicsServer2D.body_test_motion]."
msgstr ""
"Изменяя различные свойства этого объекта, такие как движение, вы можете "
"настроить параметры для [method PhysicsServer2D.body_test_motion]."

msgid ""
"If set to [code]true[/code], shapes of type [constant "
"PhysicsServer2D.SHAPE_SEPARATION_RAY] are used to detect collisions and can "
"stop the motion. Can be useful when snapping to the ground.\n"
"If set to [code]false[/code], shapes of type [constant "
"PhysicsServer2D.SHAPE_SEPARATION_RAY] are only used for separation when "
"overlapping with other bodies. That's the main use for separation ray shapes."
msgstr ""
"Если установлено значение [code]true[/code], формы типа [constant "
"PhysicsServer2D.SHAPE_SEPARATION_RAY] используются для обнаружения "
"столкновений и могут остановить движение. Может быть полезно при привязке к "
"земле.\n"
"Если установлено значение [code]false[/code], формы типа [constant "
"PhysicsServer2D.SHAPE_SEPARATION_RAY] используются только для разделения при "
"перекрытии с другими телами. Это основное применение форм лучей разделения."

msgid ""
"Optional array of body [RID] to exclude from collision. Use [method "
"CollisionObject2D.get_rid] to get the [RID] associated with a "
"[CollisionObject2D]-derived node."
msgstr ""
"Необязательный массив тела [RID] для исключения из столкновения. Используйте "
"[method CollisionObject2D.get_rid], чтобы получить [RID], связанный с узлом, "
"производным от [CollisionObject2D]."

msgid ""
"Optional array of object unique instance ID to exclude from collision. See "
"[method Object.get_instance_id]."
msgstr ""
"Необязательный массив уникальных идентификаторов экземпляров объектов для "
"исключения из коллизии. См. [method Object.get_instance_id]."

msgid ""
"Transform in global space where the motion should start. Usually set to "
"[member Node2D.global_transform] for the current body's transform."
msgstr ""
"Преобразование в глобальном пространстве, где должно начаться движение. "
"Обычно устанавливается на [member Node2D.global_transform] для преобразования "
"текущего тела."

msgid "Increases the size of the shapes involved in the collision detection."
msgstr "Увеличивает размер фигур, участвующих в обнаружении столкновений."

msgid "Motion vector to define the length and direction of the motion to test."
msgstr ""
"Вектор движения для определения длины и направления проверяемого движения."

msgid ""
"If set to [code]true[/code], any depenetration from the recovery phase is "
"reported as a collision; this is used e.g. by [CharacterBody2D] for improving "
"floor detection during floor snapping.\n"
"If set to [code]false[/code], only collisions resulting from the motion are "
"reported, which is generally the desired behavior."
msgstr ""
"Если установлено значение [code]true[/code], любое отклонение от фазы "
"восстановления сообщается как столкновение; это используется, например, "
"[CharacterBody2D] для улучшения обнаружения пола во время привязки к полу.\n"
"Если установлено значение [code]false[/code], сообщаются только столкновения, "
"возникающие в результате движения, что обычно является желаемым поведением."

msgid "Provides parameters for [method PhysicsServer3D.body_test_motion]."
msgstr "Предоставляет параметры для [method PhysicsServer3D.body_test_motion]."

msgid ""
"By changing various properties of this object, such as the motion, you can "
"configure the parameters for [method PhysicsServer3D.body_test_motion]."
msgstr ""
"Изменяя различные свойства этого объекта, такие как движение, вы можете "
"настроить параметры для [method PhysicsServer3D.body_test_motion]."

msgid ""
"If set to [code]true[/code], shapes of type [constant "
"PhysicsServer3D.SHAPE_SEPARATION_RAY] are used to detect collisions and can "
"stop the motion. Can be useful when snapping to the ground.\n"
"If set to [code]false[/code], shapes of type [constant "
"PhysicsServer3D.SHAPE_SEPARATION_RAY] are only used for separation when "
"overlapping with other bodies. That's the main use for separation ray shapes."
msgstr ""
"Если установлено значение [code]true[/code], формы типа [constant "
"PhysicsServer3D.SHAPE_SEPARATION_RAY] используются для обнаружения "
"столкновений и могут остановить движение. Может быть полезно при привязке к "
"земле.\n"
"Если установлено значение [code]false[/code], формы типа [constant "
"PhysicsServer3D.SHAPE_SEPARATION_RAY] используются только для разделения при "
"перекрытии с другими телами. Это основное применение форм лучей разделения."

msgid ""
"Optional array of body [RID] to exclude from collision. Use [method "
"CollisionObject3D.get_rid] to get the [RID] associated with a "
"[CollisionObject3D]-derived node."
msgstr ""
"Необязательный массив тела [RID] для исключения из столкновения. Используйте "
"[method CollisionObject3D.get_rid], чтобы получить [RID], связанный с узлом, "
"производным от [CollisionObject3D]."

msgid ""
"Transform in global space where the motion should start. Usually set to "
"[member Node3D.global_transform] for the current body's transform."
msgstr ""
"Преобразование в глобальном пространстве, где должно начаться движение. "
"Обычно устанавливается на [member Node3D.global_transform] для преобразования "
"текущего тела."

msgid ""
"Maximum number of returned collisions, between [code]1[/code] and [code]32[/"
"code]. Always returns the deepest detected collisions."
msgstr ""
"Максимальное количество возвращаемых столкновений, между [code]1[/code] и "
"[code]32[/code]. Всегда возвращает самые глубокие обнаруженные столкновения."

msgid ""
"If set to [code]true[/code], any depenetration from the recovery phase is "
"reported as a collision; this is used e.g. by [CharacterBody3D] for improving "
"floor detection during floor snapping.\n"
"If set to [code]false[/code], only collisions resulting from the motion are "
"reported, which is generally the desired behavior."
msgstr ""
"Если установлено значение [code]true[/code], любое отклонение от фазы "
"восстановления сообщается как столкновение; это используется, например, "
"[CharacterBody3D] для улучшения обнаружения пола во время привязки к полу.\n"
"Если установлено значение [code]false[/code], сообщаются только столкновения, "
"возникающие в результате движения, что обычно является желаемым поведением."

msgid ""
"Describes the motion and collision result from [method "
"PhysicsServer2D.body_test_motion]."
msgstr ""
"Описывает результат движения и столкновения из [method "
"PhysicsServer2D.body_test_motion]."

msgid "Returns the colliding body's attached [Object], if a collision occurred."
msgstr ""
"Возвращает прикрепленный [Object] сталкивающегося тела, если столкновение "
"произошло."

msgid ""
"Returns the unique instance ID of the colliding body's attached [Object], if "
"a collision occurred. See [method Object.get_instance_id]."
msgstr ""
"Возвращает уникальный идентификатор экземпляра [Object], прикрепленного к "
"сталкивающемуся телу, если столкновение произошло. См. [method "
"Object.get_instance_id]."

msgid ""
"Returns the colliding body's [RID] used by the [PhysicsServer2D], if a "
"collision occurred."
msgstr ""
"Возвращает [RID] сталкивающегося тела, используемый [PhysicsServer2D], если "
"столкновение произошло."

msgid ""
"Returns the colliding body's shape index, if a collision occurred. See "
"[CollisionObject2D]."
msgstr ""
"Возвращает индекс формы сталкивающегося тела, если столкновение произошло. "
"См. [CollisionObject2D]."

msgid "Returns the colliding body's velocity, if a collision occurred."
msgstr "Возвращает скорость сталкивающегося тела, если столкновение произошло."

msgid ""
"Returns the length of overlap along the collision normal, if a collision "
"occurred."
msgstr ""
"Возвращает длину перекрытия вдоль нормали столкновения, если столкновение "
"произошло."

msgid "Returns the moving object's colliding shape, if a collision occurred."
msgstr ""
"Возвращает форму столкновения движущегося объекта, если столкновение "
"произошло."

msgid ""
"Returns the colliding body's shape's normal at the point of collision, if a "
"collision occurred."
msgstr ""
"Возвращает нормаль формы сталкивающегося тела в точке столкновения, если "
"столкновение произошло."

msgid ""
"Returns the point of collision in global coordinates, if a collision occurred."
msgstr ""
"Возвращает точку столкновения в глобальных координатах, если столкновение "
"произошло."

msgid ""
"Returns the maximum fraction of the motion that can occur without a "
"collision, between [code]0[/code] and [code]1[/code]."
msgstr ""
"Возвращает максимальную долю движения, которая может происходить без "
"столкновения, между [code]0[/code] и [code]1[/code]."

msgid ""
"Returns the minimum fraction of the motion needed to collide, if a collision "
"occurred, between [code]0[/code] and [code]1[/code]."
msgstr ""
"Возвращает минимальную долю движения, необходимую для столкновения, если "
"столкновение произошло, между [code]0[/code] и [code]1[/code]."

msgid ""
"Describes the motion and collision result from [method "
"PhysicsServer3D.body_test_motion]."
msgstr ""
"Описывает результат движения и столкновения из [method "
"PhysicsServer3D.body_test_motion]."

msgid ""
"Returns the colliding body's attached [Object] given a collision index (the "
"deepest collision by default), if a collision occurred."
msgstr ""
"Возвращает прикрепленный к сталкивающемуся телу [Object] с учетом индекса "
"столкновения (по умолчанию — самое глубокое столкновение), если столкновение "
"произошло."

msgid ""
"Returns the unique instance ID of the colliding body's attached [Object] "
"given a collision index (the deepest collision by default), if a collision "
"occurred. See [method Object.get_instance_id]."
msgstr ""
"Возвращает уникальный идентификатор экземпляра прикрепленного [Object] "
"сталкивающегося тела, заданный индексом столкновения (по умолчанию — самое "
"глубокое столкновение), если столкновение произошло. См. [method "
"Object.get_instance_id]."

msgid ""
"Returns the colliding body's [RID] used by the [PhysicsServer3D] given a "
"collision index (the deepest collision by default), if a collision occurred."
msgstr ""
"Возвращает [RID] сталкивающегося тела, используемый [PhysicsServer3D] с "
"учетом индекса столкновения (по умолчанию — самое глубокое столкновение), "
"если столкновение произошло."

msgid ""
"Returns the colliding body's shape index given a collision index (the deepest "
"collision by default), if a collision occurred. See [CollisionObject3D]."
msgstr ""
"Возвращает индекс формы сталкивающегося тела, заданный индексом столкновения "
"(по умолчанию — самое глубокое столкновение), если столкновение произошло. "
"См. [CollisionObject3D]."

msgid ""
"Returns the colliding body's velocity given a collision index (the deepest "
"collision by default), if a collision occurred."
msgstr ""
"Возвращает скорость сталкивающегося тела с учетом индекса столкновения (по "
"умолчанию — самое глубокое столкновение), если столкновение произошло."

msgid ""
"Returns the length of overlap along the collision normal given a collision "
"index (the deepest collision by default), if a collision occurred."
msgstr ""
"Возвращает длину перекрытия вдоль нормали столкновения с учетом индекса "
"столкновения (по умолчанию — самое глубокое столкновение), если столкновение "
"произошло."

msgid ""
"Returns the moving object's colliding shape given a collision index (the "
"deepest collision by default), if a collision occurred."
msgstr ""
"Возвращает форму столкновения движущегося объекта с учетом индекса "
"столкновения (по умолчанию — самое глубокое столкновение), если столкновение "
"произошло."

msgid ""
"Returns the colliding body's shape's normal at the point of collision given a "
"collision index (the deepest collision by default), if a collision occurred."
msgstr ""
"Возвращает нормаль формы сталкивающегося тела в точке столкновения с учетом "
"индекса столкновения (по умолчанию — самое глубокое столкновение), если "
"столкновение произошло."

msgid ""
"Returns the point of collision in global coordinates given a collision index "
"(the deepest collision by default), if a collision occurred."
msgstr ""
"Возвращает точку столкновения в глобальных координатах с учетом индекса "
"столкновения (по умолчанию — самое глубокое столкновение), если столкновение "
"произошло."

msgid ""
"A physics joint that attaches two 2D physics bodies at a single point, "
"allowing them to freely rotate."
msgstr ""
"Физический шарнир, который соединяет два двухмерных физических тела в одной "
"точке, позволяя им свободно вращаться."

msgid ""
"A physics joint that attaches two 2D physics bodies at a single point, "
"allowing them to freely rotate. For example, a [RigidBody2D] can be attached "
"to a [StaticBody2D] to create a pendulum or a seesaw."
msgstr ""
"Физический сустав, который соединяет два 2D физических тела в одной точке, "
"позволяя им свободно вращаться. Например, [RigidBody2D] можно присоединить к "
"[StaticBody2D], чтобы создать маятник или качели."

msgid ""
"If [code]true[/code], the pin maximum and minimum rotation, defined by "
"[member angular_limit_lower] and [member angular_limit_upper] are applied."
msgstr ""
"Если [code]true[/code], применяются максимальное и минимальное вращение "
"штифта, определяемое [member angular_limit_lower] и [member "
"angular_limit_upper]."

msgid ""
"The minimum rotation. Only active if [member angular_limit_enabled] is "
"[code]true[/code]."
msgstr ""
"Минимальное вращение. Активно только если [member angular_limit_enabled] "
"равен [code]true[/code]."

msgid ""
"The maximum rotation. Only active if [member angular_limit_enabled] is "
"[code]true[/code]."
msgstr ""
"Максимальное вращение. Активно только если [member angular_limit_enabled] "
"равен [code]true[/code]."

msgid "When activated, a motor turns the pin."
msgstr "При активации двигатель поворачивает штифт."

msgid "The higher this value, the more the bond to the pinned partner can flex."
msgstr ""
"Чем выше это значение, тем сильнее может быть гибка связь с закрепленным "
"партнером."

msgid ""
"A physics joint that attaches two 3D physics bodies at a single point, "
"allowing them to freely rotate."
msgstr ""
"Физический шарнир, который соединяет два трехмерных физических тела в одной "
"точке, позволяя им свободно вращаться."

msgid ""
"A physics joint that attaches two 3D physics bodies at a single point, "
"allowing them to freely rotate. For example, a [RigidBody3D] can be attached "
"to a [StaticBody3D] to create a pendulum or a seesaw."
msgstr ""
"Физический сустав, который соединяет два 3D физических тела в одной точке, "
"позволяя им свободно вращаться. Например, [RigidBody3D] можно присоединить к "
"[StaticBody3D], чтобы создать маятник или качели."

msgid ""
"The force with which the pinned objects stay in positional relation to each "
"other. The higher, the stronger."
msgstr ""
"Сила, с которой прижатые объекты удерживаются в позиционном отношении друг к "
"другу. Чем выше, тем сильнее."

msgid ""
"The force with which the pinned objects stay in velocity relation to each "
"other. The higher, the stronger."
msgstr ""
"Сила, с которой прижатые объекты удерживаются в скоростном отношении друг к "
"другу. Чем выше, тем сильнее."

msgid ""
"If above 0, this value is the maximum value for an impulse that this Joint3D "
"produces."
msgstr ""
"Если значение больше 0, то это максимальное значение импульса, создаваемого "
"данным Joint3D."

msgid "A [Cubemap] without image data."
msgstr "[Cubemap] без данных изображения."

msgid ""
"This class replaces a [Cubemap] or a [Cubemap]-derived class in 2 "
"conditions:\n"
"- In dedicated server mode, where the image data shouldn't affect game logic. "
"This allows reducing the exported PCK's size significantly.\n"
"- When the [Cubemap]-derived class is missing, for example when using a "
"different engine version.\n"
"[b]Note:[/b] This class is not intended for rendering or for use in shaders. "
"Operations like calculating UV are not guaranteed to work."
msgstr ""
"Этот класс заменяет [Cubemap] или производный от [Cubemap] класс в 2 "
"условиях:\n"
"- В режиме выделенного сервера, где данные изображения не должны влиять на "
"игровую логику. Это позволяет значительно уменьшить размер экспортируемого "
"PCK.\n"
"- Когда производный от [Cubemap] класс отсутствует, например, при "
"использовании другой версии движка.\n"
"[b]Примечание:[/b] Этот класс не предназначен для рендеринга или "
"использования в шейдерах. Такие операции, как расчет UV, не гарантируют свою "
"работоспособность."

msgid "A [CubemapArray] without image data."
msgstr "[CubemapArray] без данных изображения."

msgid ""
"This class replaces a [CubemapArray] or a [CubemapArray]-derived class in 2 "
"conditions:\n"
"- In dedicated server mode, where the image data shouldn't affect game logic. "
"This allows reducing the exported PCK's size significantly.\n"
"- When the [CubemapArray]-derived class is missing, for example when using a "
"different engine version.\n"
"[b]Note:[/b] This class is not intended for rendering or for use in shaders. "
"Operations like calculating UV are not guaranteed to work."
msgstr ""
"Этот класс заменяет [CubemapArray] или производный от [CubemapArray] класс в "
"2 условиях:\n"
"- В режиме выделенного сервера, где данные изображения не должны влиять на "
"игровую логику. Это позволяет значительно уменьшить размер экспортируемого "
"PCK.\n"
"- Когда производный от [CubemapArray] класс отсутствует, например, при "
"использовании другой версии движка.\n"
"[b]Примечание:[/b] Этот класс не предназначен для рендеринга или "
"использования в шейдерах. Такие операции, как расчет UV, не гарантируют свою "
"работоспособность."

msgid "Placeholder class for a material."
msgstr "Класс-заполнитель для материала."

msgid ""
"This class is used when loading a project that uses a [Material] subclass in "
"2 conditions:\n"
"- When running the project exported in dedicated server mode, only the "
"texture's dimensions are kept (as they may be relied upon for gameplay "
"purposes or positioning of other elements). This allows reducing the exported "
"PCK's size significantly.\n"
"- When this subclass is missing due to using a different engine version or "
"build (e.g. modules disabled)."
msgstr ""
"Этот класс используется при загрузке проекта, использующего подкласс "
"[Material] в 2 условиях:\n"
"- При запуске проекта, экспортированного в режиме выделенного сервера, "
"сохраняются только размеры текстуры (так как они могут быть использованы для "
"игровых целей или позиционирования других элементов). Это позволяет "
"значительно уменьшить размер экспортируемого PCK.\n"
"- Когда этот подкласс отсутствует из-за использования другой версии движка "
"или сборки (например, отключены модули)."

msgid "Placeholder class for a mesh."
msgstr "Класс-заполнитель для сетки."

msgid ""
"This class is used when loading a project that uses a [Mesh] subclass in 2 "
"conditions:\n"
"- When running the project exported in dedicated server mode, only the "
"texture's dimensions are kept (as they may be relied upon for gameplay "
"purposes or positioning of other elements). This allows reducing the exported "
"PCK's size significantly.\n"
"- When this subclass is missing due to using a different engine version or "
"build (e.g. modules disabled)."
msgstr ""
"Этот класс используется при загрузке проекта, использующего подкласс [Mesh] в "
"2 условиях:\n"
"- При запуске проекта, экспортированного в режиме выделенного сервера, "
"сохраняются только размеры текстуры (так как они могут быть использованы для "
"игровых целей или позиционирования других элементов). Это позволяет "
"значительно уменьшить размер экспортируемого PCK.\n"
"- Когда этот подкласс отсутствует из-за использования другой версии движка "
"или сборки (например, отключены модули)."

msgid "The smallest [AABB] enclosing this mesh in local space."
msgstr "Наименьший [AABB], охватывающий эту сетку в локальном пространстве."

msgid "Placeholder class for a 2-dimensional texture."
msgstr "Класс-заполнитель для двухмерной текстуры."

msgid ""
"This class is used when loading a project that uses a [Texture2D] subclass in "
"2 conditions:\n"
"- When running the project exported in dedicated server mode, only the "
"texture's dimensions are kept (as they may be relied upon for gameplay "
"purposes or positioning of other elements). This allows reducing the exported "
"PCK's size significantly.\n"
"- When this subclass is missing due to using a different engine version or "
"build (e.g. modules disabled).\n"
"[b]Note:[/b] This is not intended to be used as an actual texture for "
"rendering. It is not guaranteed to work like one in shaders or materials (for "
"example when calculating UV)."
msgstr ""
"Этот класс используется при загрузке проекта, который использует подкласс "
"[Texture2D] в 2 условиях:\n"
"- При запуске проекта, экспортированного в режиме выделенного сервера, "
"сохраняются только размеры текстуры (так как они могут использоваться для "
"игровых целей или позиционирования других элементов). Это позволяет "
"значительно уменьшить размер экспортируемого PCK.\n"
"- Когда этот подкласс отсутствует из-за использования другой версии движка "
"или сборки (например, отключены модули).\n"
"[b]Примечание:[/b] Это не предназначено для использования в качестве "
"фактической текстуры для рендеринга. Не гарантируется, что она будет работать "
"как текстура в шейдерах или материалах (например, при расчете UV)."

msgid "The texture's size (in pixels)."
msgstr "Размер текстуры (в пикселях)."

msgid "Placeholder class for a 2-dimensional texture array."
msgstr "Класс-заполнитель для двумерного массива текстур."

msgid "Placeholder class for a 3-dimensional texture."
msgstr "Класс-заполнитель для трехмерной текстуры."

msgid ""
"This class is used when loading a project that uses a [Texture3D] subclass in "
"2 conditions:\n"
"- When running the project exported in dedicated server mode, only the "
"texture's dimensions are kept (as they may be relied upon for gameplay "
"purposes or positioning of other elements). This allows reducing the exported "
"PCK's size significantly.\n"
"- When this subclass is missing due to using a different engine version or "
"build (e.g. modules disabled).\n"
"[b]Note:[/b] This is not intended to be used as an actual texture for "
"rendering. It is not guaranteed to work like one in shaders or materials (for "
"example when calculating UV)."
msgstr ""
"Этот класс используется при загрузке проекта, который использует подкласс "
"[Texture3D] в 2 условиях:\n"
"- При запуске проекта, экспортированного в режиме выделенного сервера, "
"сохраняются только размеры текстуры (так как они могут использоваться для "
"игровых целей или позиционирования других элементов). Это позволяет "
"значительно уменьшить размер экспортируемого PCK.\n"
"- Когда этот подкласс отсутствует из-за использования другой версии движка "
"или сборки (например, отключены модули).\n"
"[b]Примечание:[/b] Это не предназначено для использования в качестве "
"фактической текстуры для рендеринга. Не гарантируется, что она будет работать "
"как текстура в шейдерах или материалах (например, при расчете UV)."

msgid ""
"This class is used when loading a project that uses a [TextureLayered] "
"subclass in 2 conditions:\n"
"- When running the project exported in dedicated server mode, only the "
"texture's dimensions are kept (as they may be relied upon for gameplay "
"purposes or positioning of other elements). This allows reducing the exported "
"PCK's size significantly.\n"
"- When this subclass is missing due to using a different engine version or "
"build (e.g. modules disabled).\n"
"[b]Note:[/b] This is not intended to be used as an actual texture for "
"rendering. It is not guaranteed to work like one in shaders or materials (for "
"example when calculating UV)."
msgstr ""
"Этот класс используется при загрузке проекта, который использует подкласс "
"[TextureLayered] в 2 условиях:\n"
"- При запуске проекта, экспортированного в режиме выделенного сервера, "
"сохраняются только размеры текстуры (так как они могут использоваться для "
"игровых целей или позиционирования других элементов). Это позволяет "
"значительно уменьшить размер экспортируемого PCK.\n"
"- Когда этот подкласс отсутствует из-за использования другой версии движка "
"или сборки (например, отключены модули).\n"
"[b]Примечание:[/b] Это не предназначено для использования в качестве "
"фактической текстуры для рендеринга. Не гарантируется, что она будет работать "
"как текстура в шейдерах или материалах (например, при расчете UV)."

msgid "The number of layers in the texture array."
msgstr "Количество слоев в массиве текстур."

msgid "The size of each texture layer (in pixels)."
msgstr "Размер каждого слоя текстуры (в пикселях)."

msgid "A plane in Hessian normal form."
msgstr "Плоскость в нормальной форме Гессе (Hessian)."

msgid ""
"Represents a normalized plane equation. [member normal] is the normal of the "
"plane (a, b, c normalized), and [member d] is the distance from the origin to "
"the plane (in the direction of \"normal\"). \"Over\" or \"Above\" the plane "
"is considered the side of the plane towards where the normal is pointing."
msgstr ""
"Представляет собой нормализованное уравнение плоскости. [member normal] — "
"нормаль плоскости (a, b, c нормализованы), а [member d] — расстояние от "
"начала координат до плоскости (в направлении «нормали»). «Над» или «Выше» "
"плоскости считается сторона плоскости, в сторону которой направлена нормаль."

msgid ""
"Constructs a default-initialized [Plane] with all components set to [code]0[/"
"code]."
msgstr ""
"Создает инициализированную по умолчанию [Plane] со всеми компонентами, "
"установленными на [code]0[/code]."

msgid "Constructs a [Plane] as a copy of the given [Plane]."
msgstr "Создает [Plane] как копию заданной [Plane]."

msgid ""
"Creates a plane from the four parameters. The three components of the "
"resulting plane's [member normal] are [param a], [param b] and [param c], and "
"the plane has a distance of [param d] from the origin."
msgstr ""
"Создает плоскость из четырех параметров. Три компонента [member normal] "
"результирующей плоскости — [param a], [param b] и [param c], а плоскость "
"имеет расстояние [param d] от начала координат."

msgid ""
"Creates a plane from the normal vector. The plane will intersect the origin.\n"
"The [param normal] of the plane must be a unit vector."
msgstr ""
"Создает плоскость из вектора нормали. Плоскость пересечет начало координат.\n"
"[param normal] плоскости должен быть единичным вектором."

msgid ""
"Creates a plane from the normal vector and the plane's distance from the "
"origin.\n"
"The [param normal] of the plane must be a unit vector."
msgstr ""
"Создает плоскость из вектора нормали и расстояния плоскости от начала "
"координат.\n"
"[param normal] плоскости должен быть единичным вектором."

msgid ""
"Creates a plane from the normal vector and a point on the plane.\n"
"The [param normal] of the plane must be a unit vector."
msgstr ""
"Создает плоскость из вектора нормали и точки на плоскости.\n"
"[param normal] плоскости должен быть единичным вектором."

msgid "Creates a plane from the three points, given in clockwise order."
msgstr "Создает плоскость из трех точек, указанных по часовой стрелке."

msgid ""
"Returns the shortest distance from the plane to the position [param point]. "
"If the point is above the plane, the distance will be positive. If below, the "
"distance will be negative."
msgstr ""
"Возвращает кратчайшее расстояние от плоскости до позиции [param point]. Если "
"точка находится выше плоскости, расстояние будет положительным. Если ниже, "
"расстояние будет отрицательным."

msgid "Returns the center of the plane."
msgstr "Возвращает центр плоскости."

msgid ""
"Returns [code]true[/code] if [param point] is inside the plane. Comparison "
"uses a custom minimum [param tolerance] threshold."
msgstr ""
"Возвращает [code]true[/code], если [param point] находится внутри плоскости. "
"Сравнение использует пользовательский минимальный порог [param allowance]."

msgid ""
"Returns the intersection point of the three planes [param b], [param c] and "
"this plane. If no intersection is found, [code]null[/code] is returned."
msgstr ""
"Возвращает точку пересечения трех плоскостей [param b], [param c] и этой "
"плоскости. Если пересечение не найдено, возвращается [code]null[/code]."

msgid ""
"Returns the intersection point of a ray consisting of the position [param "
"from] and the direction normal [param dir] with this plane. If no "
"intersection is found, [code]null[/code] is returned."
msgstr ""
"Возвращает точку пересечения луча, состоящего из позиции [param from] и "
"направления нормали [param dir] с этой плоскостью. Если пересечение не "
"найдено, возвращается [code]null[/code]."

msgid ""
"Returns the intersection point of a segment from position [param from] to "
"position [param to] with this plane. If no intersection is found, [code]null[/"
"code] is returned."
msgstr ""
"Возвращает точку пересечения сегмента от позиции [param from] до позиции "
"[param to] с этой плоскостью. Если пересечение не найдено, возвращается "
"[code]null[/code]."

msgid ""
"Returns [code]true[/code] if this plane and [param to_plane] are "
"approximately equal, by running [method @GlobalScope.is_equal_approx] on each "
"component."
msgstr ""
"Возвращает [code]true[/code], если эта плоскость и [param to_plane] "
"приблизительно равны, путем запуска [method @GlobalScope.is_equal_approx] для "
"каждого компонента."

msgid ""
"Returns [code]true[/code] if this plane is finite, by calling [method "
"@GlobalScope.is_finite] on each component."
msgstr ""
"Возвращает [code]true[/code], если эта плоскость конечна, вызывая [method "
"@GlobalScope.is_finite] для каждого компонента."

msgid "Returns [code]true[/code] if [param point] is located above the plane."
msgstr ""
"Возвращает [code]true[/code], если [param point] расположена над плоскостью."

msgid ""
"Returns a copy of the plane, with normalized [member normal] (so it's a unit "
"vector). Returns [code]Plane(0, 0, 0, 0)[/code] if [member normal] can't be "
"normalized (it has zero length)."
msgstr ""
"Возвращает копию плоскости с нормализованным [member normal] (то есть это "
"единичный вектор). Возвращает [code]Plane(0, 0, 0, 0)[/code], если [member "
"normal] не может быть нормализован (он имеет нулевую длину)."

msgid ""
"Returns the orthogonal projection of [param point] into a point in the plane."
msgstr "Возвращает ортогональную проекцию [param point] на точку на плоскости."

msgid ""
"The distance from the origin to the plane, expressed in terms of [member "
"normal] (according to its direction and magnitude). Actual absolute distance "
"from the origin to the plane can be calculated as [code]abs(d) / "
"normal.length()[/code] (if [member normal] has zero length then this [Plane] "
"does not represent a valid plane).\n"
"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
"[code skip-lint]d[/code], while the [code](a, b, c)[/code] coordinates are "
"represented by the [member normal] property."
msgstr ""
"Расстояние от начала координат до плоскости, выраженное через [member normal] "
"(в соответствии с его направлением и величиной). Фактическое абсолютное "
"расстояние от начала координат до плоскости можно вычислить как "
"[code]abs(d) / normal.length()[/code] (если [member normal] имеет нулевую "
"длину, то эта [Plane] не представляет допустимую плоскость).\n"
"В скалярном уравнении плоскости [code]ax + by + cz = d[/code] это [code skip-"
"lint]d[/code], тогда как координаты [code](a, b, c)[/code] представлены "
"свойством [member normal]."

msgid ""
"The normal of the plane, typically a unit vector. Shouldn't be a zero vector "
"as [Plane] with such [member normal] does not represent a valid plane.\n"
"In the scalar equation of the plane [code]ax + by + cz = d[/code], this is "
"the vector [code](a, b, c)[/code], where [code skip-lint]d[/code] is the "
"[member d] property."
msgstr ""
"Нормаль плоскости, обычно единичный вектор. Не должен быть нулевым вектором, "
"так как [Plane] с такой [member normal] не представляет допустимую "
"плоскость.\n"
"В скалярном уравнении плоскости [code]ax + by + cz = d[/code] это вектор "
"[code](a, b, c)[/code], где [code skip-lint]d[/code] — свойство [member d]."

msgid "The X component of the plane's [member normal] vector."
msgstr "Компонент X вектора [member normal] плоскости."

msgid "The Y component of the plane's [member normal] vector."
msgstr "Компонент Y вектора [member normal] плоскости."

msgid "The Z component of the plane's [member normal] vector."
msgstr "Компонент Z вектора [member normal] плоскости."

msgid "A plane that extends in the Y and Z axes (normal vector points +X)."
msgstr "Плоскость, простирающаяся по осям Y и Z (нормальный вектор точек +X)."

msgid "A plane that extends in the X and Z axes (normal vector points +Y)."
msgstr "Плоскость, простирающаяся по осям X и Z (нормальный вектор точек +Y)."

msgid "A plane that extends in the X and Y axes (normal vector points +Z)."
msgstr "Плоскость, простирающаяся по осям X и Y (нормальный вектор точек +Z)."

msgid ""
"Returns [code]true[/code] if the planes are not equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если плоскости не равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx] вместо этого, что более "
"надежно."

msgid ""
"Inversely transforms (multiplies) the [Plane] by the given [Transform3D] "
"transformation matrix.\n"
"[code]plane * transform[/code] is equivalent to "
"[code]transform.affine_inverse() * plane[/code]. See [method "
"Transform3D.affine_inverse]."
msgstr ""
"Обратно преобразует (умножает) [Plane] на заданную матрицу преобразования "
"[Transform3D].\n"
"[code]plane * transform[/code] эквивалентно [code]transform.affine_inverse() "
"* plane[/code]. См. [method Transform3D.affine_inverse]."

msgid ""
"Returns [code]true[/code] if the planes are exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если плоскости точно равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx], который более надежен."

msgid ""
"Returns the negative value of the [Plane]. This is the same as writing "
"[code]Plane(-p.normal, -p.d)[/code]. This operation flips the direction of "
"the normal vector and also flips the distance value, resulting in a Plane "
"that is in the same place, but facing the opposite direction."
msgstr ""
"Возвращает отрицательное значение [Plane]. Это то же самое, что и запись "
"[code]Plane(-p.normal, -p.d)[/code]. Эта операция меняет направление вектора "
"нормали, а также меняет значение расстояния, в результате чего Plane "
"находится в том же месте, но смотрит в противоположном направлении."

msgid "Class representing a planar [PrimitiveMesh]."
msgstr "Класс, представляющий плоскую [PrimitiveMesh]."

msgid ""
"Class representing a planar [PrimitiveMesh]. This flat mesh does not have a "
"thickness. By default, this mesh is aligned on the X and Z axes; this default "
"rotation isn't suited for use with billboarded materials. For billboarded "
"materials, change [member orientation] to [constant FACE_Z].\n"
"[b]Note:[/b] When using a large textured [PlaneMesh] (e.g. as a floor), you "
"may stumble upon UV jittering issues depending on the camera angle. To solve "
"this, increase [member subdivide_depth] and [member subdivide_width] until "
"you no longer notice UV jittering."
msgstr ""
"Класс, представляющий плоскую [PrimitiveMesh]. Эта плоская сетка не имеет "
"толщины. По умолчанию эта сетка выровнена по осям X и Z; это вращение по "
"умолчанию не подходит для использования с материалами для рекламных щитов. "
"Для материалов для рекламных щитов измените [member orientation] на [constant "
"FACE_Z].\n"
"[b]Примечание:[/b] При использовании большой текстурированной [PlaneMesh] "
"(например, в качестве пола) вы можете столкнуться с проблемами дрожания UV в "
"зависимости от угла камеры. Чтобы решить эту проблему, увеличивайте [member "
"subdivide_depth] и [member subdivide_width] до тех пор, пока вы не "
"перестанете замечать дрожание UV."

msgid "Offset of the generated plane. Useful for particles."
msgstr "Смещение сгенерированной плоскости. Полезно для частиц."

msgid "Direction that the [PlaneMesh] is facing."
msgstr "Направление, в котором смотрит [PlaneMesh]."

msgid "Size of the generated plane."
msgstr "Размер создаваемой плоскости."

msgid "Number of subdivision along the Z axis."
msgstr "Количество делений по оси Z."

msgid "Number of subdivision along the X axis."
msgstr "Количество делений по оси X."

msgid "[PlaneMesh] will face the positive X-axis."
msgstr "[PlaneMesh] будет направлен в сторону положительной оси X."

msgid ""
"[PlaneMesh] will face the positive Y-axis. This matches the behavior of the "
"[PlaneMesh] in Godot 3.x."
msgstr ""
"[PlaneMesh] будет направлен в положительную сторону оси Y. Это соответствует "
"поведению [PlaneMesh] в Godot 3.x."

msgid ""
"[PlaneMesh] will face the positive Z-axis. This matches the behavior of the "
"QuadMesh in Godot 3.x."
msgstr ""
"[PlaneMesh] будет направлен в сторону положительной оси Z. Это соответствует "
"поведению QuadMesh в Godot 3.x."

msgid "Positional 2D light source."
msgstr "Позиционный 2D-источник света."

msgid ""
"Casts light in a 2D environment. This light's shape is defined by a (usually "
"grayscale) texture."
msgstr ""
"Проливает свет в 2D-среде. Форма этого света определяется текстурой (обычно в "
"оттенках серого)."

msgid ""
"The height of the light. Used with 2D normal mapping. The units are in "
"pixels, e.g. if the height is 100, then it will illuminate an object 100 "
"pixels away at a 45° angle to the plane."
msgstr ""
"Высота источника света. Используется с 2D-нормальным отображением. Единицы "
"измерения — пиксели, например, если высота равна 100, то объект будет "
"освещаться на расстоянии 100 пикселей под углом 45° к плоскости."

msgid "The offset of the light's [member texture]."
msgstr "Смещение [member texture] источника света."

msgid "[Texture2D] used for the light's appearance."
msgstr "[Texture2D] используется для создания внешнего вида света."

msgid "The [member texture]'s scale factor."
msgstr "Коэффициент масштабирования [member texture]."

msgid "Mesh with a single point primitive."
msgstr "Сетка с одноточечным примитивом."

msgid ""
"A [PointMesh] is a primitive mesh composed of a single point. Instead of "
"relying on triangles, points are rendered as a single rectangle on the screen "
"with a constant size. They are intended to be used with particle systems, but "
"can also be used as a cheap way to render billboarded sprites (for example in "
"a point cloud).\n"
"In order to be displayed, point meshes must be used with a material that has "
"a point size. The point size can be accessed in a shader with the "
"[code]POINT_SIZE[/code] built-in, or in a [BaseMaterial3D] by setting the "
"[member BaseMaterial3D.use_point_size] and [member BaseMaterial3D.point_size] "
"properties.\n"
"[b]Note:[/b] When using point meshes, properties that normally affect "
"vertices will be ignored, including [member BaseMaterial3D.billboard_mode], "
"[member BaseMaterial3D.grow], and [member BaseMaterial3D.cull_mode]."
msgstr ""
"[PointMesh] — это примитивная сетка, состоящая из одной точки. Вместо "
"треугольников точки отображаются на экране как один прямоугольник постоянного "
"размера. Они предназначены для использования с системами частиц, но также "
"могут использоваться как экономичный способ рендеринга спрайтов в виде "
"билбордов (например, в облаке точек).\n"
"Для отображения точечные сетки должны использоваться с материалом, имеющим "
"размер точки. Размер точки можно получить в шейдере со встроенным параметром "
"[code]POINT_SIZE[/code] или в [BaseMaterial3D], установив свойства [member "
"BaseMaterial3D.use_point_size] и [member BaseMaterial3D.point_size].\n"
"[b]Примечание:[/b] При использовании точечных сеток, свойства которые обычно "
"влияют на вершины, будут игнорироваться, включая [member "
"BaseMaterial3D.billboard_mode], [member BaseMaterial3D.grow] и [member "
"BaseMaterial3D.cull_mode]."

msgid "A 2D polygon."
msgstr "Двумерный полигон."

msgid ""
"A Polygon2D is defined by a set of points. Each point is connected to the "
"next, with the final point being connected to the first, resulting in a "
"closed polygon. Polygon2Ds can be filled with color (solid or gradient) or "
"filled with a given texture."
msgstr ""
"Polygon2D определяется набором точек. Каждая точка соединена со следующей, а "
"последняя точка соединена с первой, в результате чего получается замкнутый "
"многоугольник. Polygon2D можно заполнить цветом (сплошным или градиентным) "
"или заданной текстурой."

msgid "Adds a bone with the specified [param path] and [param weights]."
msgstr "Добавляет кость с указанными [param path] и [param weights]."

msgid "Removes all bones from this [Polygon2D]."
msgstr "Удаляет все кости из этого [Polygon2D]."

msgid "Removes the specified bone from this [Polygon2D]."
msgstr "Удаляет указанную кость из этого [Polygon2D]."

msgid "Returns the number of bones in this [Polygon2D]."
msgstr "Возвращает количество костей в этом [Polygon2D]."

msgid "Returns the path to the node associated with the specified bone."
msgstr "Возвращает путь к узлу, связанному с указанной костью."

msgid "Returns the weight values of the specified bone."
msgstr "Возвращает значения веса указанной кости."

msgid "Sets the path to the node associated with the specified bone."
msgstr "Устанавливает путь к узлу, связанному с указанной костью."

msgid "Sets the weight values for the specified bone."
msgstr "Устанавливает значения веса для указанной кости."

msgid "If [code]true[/code], polygon edges will be anti-aliased."
msgstr "Если [code]true[/code], края полигонов будут сглажены."

msgid ""
"The polygon's fill color. If [member texture] is set, it will be multiplied "
"by this color. It will also be the default color for vertices not set in "
"[member vertex_colors]."
msgstr ""
"Цвет заливки полигона. Если задано [member texture], оно будет умножено на "
"этот цвет. Это также будет цвет по умолчанию для вершин, не заданных в "
"[member vertex_colors]."

msgid "Number of internal vertices, used for UV mapping."
msgstr "Количество внутренних вершин, используемых для UV-развертки."

msgid ""
"Added padding applied to the bounding box when [member invert_enabled] is set "
"to [code]true[/code]. Setting this value too small may result in a \"Bad "
"Polygon\" error."
msgstr ""
"Добавлен отступ, применяемый к ограничивающему прямоугольнику, когда [member "
"invert_enabled] установлен на [code]true[/code]. Установка слишком маленького "
"значения может привести к ошибке «Bad Polygon»."

msgid ""
"If [code]true[/code], the polygon will be inverted, containing the area "
"outside the defined points and extending to the [member invert_border]."
msgstr ""
"Если [code]true[/code], многоугольник будет инвертирован, включая область за "
"пределами определенных точек и простираясь до [member invert_border]."

msgid "The offset applied to each vertex."
msgstr "Смещение, примененное к каждой вершине."

msgid ""
"The polygon's list of vertices. The final point will be connected to the "
"first."
msgstr "Список вершин полигона. Конечная точка будет соединена с первой."

msgid ""
"The list of polygons, in case more than one is being represented. Every "
"individual polygon is stored as a [PackedInt32Array] where each [int] is an "
"index to a point in [member polygon]. If empty, this property will be "
"ignored, and the resulting single polygon will be composed of all points in "
"[member polygon], using the order they are stored in."
msgstr ""
"Список полигонов, в случае если представлено более одного. Каждый отдельный "
"полигон хранится как [PackedInt32Array], где каждое [int] — это индекс точки "
"в [member polygon]. Если пусто, это свойство будет проигнорировано, и "
"полученный один полигон будет составлен из всех точек в [member polygon] в "
"том порядке, в котором они хранятся."

msgid ""
"Path to a [Skeleton2D] node used for skeleton-based deformations of this "
"polygon. If empty or invalid, skeletal deformations will not be used."
msgstr ""
"Путь к узлу [Skeleton2D], используемому для скелетных деформаций этого "
"полигона. Если пусто или недействительно, скелетные деформации не будут "
"использоваться."

msgid "The polygon's fill texture. Use [member uv] to set texture coordinates."
msgstr ""
"Текстура заливки полигона. Используйте [member uv] для установки координат "
"текстуры."

msgid ""
"Amount to offset the polygon's [member texture]. If set to [code]Vector2(0, 0)"
"[/code], the texture's origin (its top-left corner) will be placed at the "
"polygon's position."
msgstr ""
"Величина смещения [member texture] полигона. Если установлено значение "
"[code]Vector2(0, 0)[/code], начало координат текстуры (ее верхний левый угол) "
"будет размещено в позиции полигона."

msgid "The texture's rotation in radians."
msgstr "Вращение текстуры в радианах."

msgid ""
"Amount to multiply the [member uv] coordinates when using [member texture]. "
"Larger values make the texture smaller, and vice versa."
msgstr ""
"Величина для умножения координат [member uv] при использовании [member "
"texture]. Большие значения делают текстуру меньше, и наоборот."

msgid ""
"Texture coordinates for each vertex of the polygon. There should be one UV "
"value per polygon vertex. If there are fewer, undefined vertices will use "
"[code]Vector2(0, 0)[/code]."
msgstr ""
"Координаты текстуры для каждой вершины полигона. Должно быть одно значение UV "
"на вершину полигона. Если их меньше, неопределенные вершины будут "
"использовать [code]Vector2(0, 0)[/code]."

msgid ""
"Color for each vertex. Colors are interpolated between vertices, resulting in "
"smooth gradients. There should be one per polygon vertex. If there are fewer, "
"undefined vertices will use [member color]."
msgstr ""
"Цвет для каждой вершины. Цвета интерполируются между вершинами, что приводит "
"к плавным градиентам. Должен быть один на вершину полигона. Если их меньше, "
"неопределенные вершины будут использовать [member color]."

msgid ""
"Flat 2D polygon shape for use with occlusion culling in [OccluderInstance3D]."
msgstr ""
"Плоская 2D-многоугольная форма для использования с отбраковкой окклюзии в "
"[OccluderInstance3D]."

msgid ""
"[PolygonOccluder3D] stores a polygon shape that can be used by the engine's "
"occlusion culling system. When an [OccluderInstance3D] with a "
"[PolygonOccluder3D] is selected in the editor, an editor will appear at the "
"top of the 3D viewport so you can add/remove points. All points must be "
"placed on the same 2D plane, which means it is not possible to create "
"arbitrary 3D shapes with a single [PolygonOccluder3D]. To use arbitrary 3D "
"shapes as occluders, use [ArrayOccluder3D] or [OccluderInstance3D]'s baking "
"feature instead.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[PolygonOccluder3D] хранит форму многоугольника, которую может использовать "
"система отсечения окклюзии движка. Когда в редакторе выбран "
"[OccluderInstance3D] с [PolygonOccluder3D], редактор появится в верхней части "
"3D-окна просмотра, чтобы вы могли добавлять/удалять точки. Все точки должны "
"быть размещены на одной 2D-плоскости, что означает, что невозможно создать "
"произвольные 3D-формы с помощью одного [PolygonOccluder3D]. Чтобы "
"использовать произвольные 3D-формы в качестве окклюдеров, используйте вместо "
"этого функцию запекания [ArrayOccluder3D] или [OccluderInstance3D].\n"
"Инструкции по настройке отсечения окклюзии см. в документации "
"[OccluderInstance3D]."

msgid ""
"The polygon to use for occlusion culling. The polygon can be convex or "
"concave, but it should have as few points as possible to maximize "
"performance.\n"
"The polygon must [i]not[/i] have intersecting lines. Otherwise, triangulation "
"will fail (with an error message printed)."
msgstr ""
"Полигон, который будет использоваться для отбраковки окклюзии. Полигон может "
"быть выпуклым или вогнутым, но он должен иметь как можно меньше точек для "
"максимальной производительности.\n"
"Полигон [i]неt[/i] должен иметь пересекающихся линий. В противном случае "
"триангуляция не будет выполнена (с выводом сообщения об ошибке)."

msgid ""
"Returns [code]true[/code] if [param point] falls inside the polygon area.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon_path_finder = PolygonPathFinder.new()\n"
"var points = [Vector2(0.0, 0.0), Vector2(1.0, 0.0), Vector2(0.0, 1.0)]\n"
"var connections = [0, 1, 1, 2, 2, 0]\n"
"polygon_path_finder.setup(points, connections)\n"
"print(polygon_path_finder.is_point_inside(Vector2(0.2, 0.2))) # Prints true\n"
"print(polygon_path_finder.is_point_inside(Vector2(1.0, 1.0))) # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"var polygonPathFinder = new PolygonPathFinder();\n"
"Vector2[] points =\n"
"[\n"
"\tnew Vector2(0.0f, 0.0f),\n"
"\tnew Vector2(1.0f, 0.0f),\n"
"\tnew Vector2(0.0f, 1.0f)\n"
"];\n"
"int[] connections = [0, 1, 1, 2, 2, 0];\n"
"polygonPathFinder.Setup(points, connections);\n"
"GD.Print(polygonPathFinder.IsPointInside(new Vector2(0.2f, 0.2f))); // Prints "
"True\n"
"GD.Print(polygonPathFinder.IsPointInside(new Vector2(1.0f, 1.0f))); // Prints "
"False\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [code]true[/code], если [param point] попадает внутрь области "
"многоугольника.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon_path_finder = PolygonPathFinder.new()\n"
"var points = [Vector2(0.0, 0.0), Vector2(1.0, 0.0), Vector2(0.0, 1.0)]\n"
"var connections = [0, 1, 1, 2, 2, 0]\n"
"polygon_path_finder.setup(points, connections)\n"
"print(polygon_path_finder.is_point_inside(Vector2(0.2, 0.2))) # Выводит true\n"
"print(polygon_path_finder.is_point_inside(Vector2(1.0, 1.0))) # Выводит "
"false\n"
"[/gdscript]\n"
"[csharp]\n"
"var polygonPathFinder = new PolygonPathFinder();\n"
"Vector2[] points =\n"
"[\n"
"\tnew Vector2(0.0f, 0.0f),\n"
"\tnew Vector2(1.0f, 0.0f),\n"
"\tnew Vector2(0.0f, 1.0f)\n"
"];\n"
"int[] connections = [0, 1, 1, 2, 2, 0];\n"
"polygonPathFinder.Setup(points, connections);\n"
"GD.Print(polygonPathFinder.IsPointInside(new Vector2(0.2f, 0.2f))); // "
"Выводит True\n"
"GD.Print(polygonPathFinder.IsPointInside(new Vector2(1.0f, 1.0f))); // "
"Выводит False\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Sets up [PolygonPathFinder] with an array of points that define the vertices "
"of the polygon, and an array of indices that determine the edges of the "
"polygon.\n"
"The length of [param connections] must be even, returns an error if odd.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon_path_finder = PolygonPathFinder.new()\n"
"var points = [Vector2(0.0, 0.0), Vector2(1.0, 0.0), Vector2(0.0, 1.0)]\n"
"var connections = [0, 1, 1, 2, 2, 0]\n"
"polygon_path_finder.setup(points, connections)\n"
"[/gdscript]\n"
"[csharp]\n"
"var polygonPathFinder = new PolygonPathFinder();\n"
"Vector2[] points =\n"
"[\n"
"\tnew Vector2(0.0f, 0.0f),\n"
"\tnew Vector2(1.0f, 0.0f),\n"
"\tnew Vector2(0.0f, 1.0f)\n"
"];\n"
"int[] connections = [0, 1, 1, 2, 2, 0];\n"
"polygonPathFinder.Setup(points, connections);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Устанавливает [PolygonPathFinder] с массивом точек, которые определяют "
"вершины многоугольника, и массивом индексов, которые определяют ребра "
"многоугольника.\n"
"Длина [param connections] должна быть четной, возвращает ошибку, если "
"нечетная.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var polygon_path_finder = PolygonPathFinder.new()\n"
"var points = [Vector2(0.0, 0.0), Vector2(1.0, 0.0), Vector2(0.0, 1.0)]\n"
"var connections = [0, 1, 1, 2, 2, 0]\n"
"polygon_path_finder.setup(points, connections)\n"
"[/gdscript]\n"
"[csharp]\n"
"var polygonPathFinder = new PolygonPathFinder();\n"
"Vector2[] points =\n"
"[\n"
"\tnew Vector2(0.0f, 0.0f),\n"
"\tnew Vector2(1.0f, 0.0f),\n"
"\tnew Vector2(0.0f, 1.0f)\n"
"];\n"
"int[] connections = [0, 1, 1, 2, 2, 0];\n"
"polygonPathFinder.Setup(points, connections);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Base class for contextual windows and panels with fixed position."
msgstr ""
"Базовый класс для контекстных окон и панелей с фиксированным положением."

msgid ""
"[Popup] is a base class for contextual windows and panels with fixed "
"position. It's a modal by default (see [member Window.popup_window]) and "
"provides methods for implementing custom popup behavior."
msgstr ""
"[Popup] — базовый класс для контекстных окон и панелей с фиксированным "
"положением. Он модальный по умолчанию (см. [member Window.popup_window]) и "
"предоставляет методы для реализации пользовательского поведения всплывающих "
"окон."

msgid "Emitted when the popup is hidden."
msgstr "Выдается, когда всплывающее окно скрыто."

msgid "A modal window used to display a list of options."
msgstr "Модальное окно, используемое для отображения списка опций."

msgid ""
"[PopupMenu] is a modal window used to display a list of options. Useful for "
"toolbars and context menus.\n"
"The size of a [PopupMenu] can be limited by using [member Window.max_size]. "
"If the height of the list of items is larger than the maximum height of the "
"[PopupMenu], a [ScrollContainer] within the popup will allow the user to "
"scroll the contents. If no maximum size is set, or if it is set to [code]0[/"
"code], the [PopupMenu] height will be limited by its parent rect.\n"
"All [code]set_*[/code] methods allow negative item indices, i.e. [code]-1[/"
"code] to access the last item, [code]-2[/code] to select the second-to-last "
"item, and so on.\n"
"[b]Incremental search:[/b] Like [ItemList] and [Tree], [PopupMenu] supports "
"searching within the list while the control is focused. Press a key that "
"matches the first letter of an item's name to select the first item starting "
"with the given letter. After that point, there are two ways to perform "
"incremental search: 1) Press the same key again before the timeout duration "
"to select the next item starting with the same letter. 2) Press letter keys "
"that match the rest of the word before the timeout duration to match to "
"select the item in question directly. Both of these actions will be reset to "
"the beginning of the list if the timeout duration has passed since the last "
"keystroke was registered. You can adjust the timeout duration by changing "
"[member ProjectSettings.gui/timers/incremental_search_max_interval_msec].\n"
"[b]Note:[/b] The ID values used for items are limited to 32 bits, not full 64 "
"bits of [int]. This has a range of [code]-2^32[/code] to [code]2^32 - 1[/"
"code], i.e. [code]-2147483648[/code] to [code]2147483647[/code]."
msgstr ""
"[PopupMenu] — это модальное окно, используемое для отображения списка опций. "
"Полезно для панелей инструментов и контекстных меню.\n"
"Размер [PopupMenu] можно ограничить с помощью [member Window.max_size]. Если "
"высота списка элементов больше максимальной высоты [PopupMenu], "
"[ScrollContainer] во всплывающем окне позволит пользователю прокручивать "
"содержимое. Если максимальный размер не установлен или установлен на [code]0[/"
"code], высота [PopupMenu] будет ограничена его родительским прямоугольником.\n"
"Все методы [code]set_*[/code] допускают отрицательные индексы элементов, т. "
"е. [code]-1[/code] для доступа к последнему элементу, [code]-2[/code] для "
"выбора предпоследнего элемента и т. д.\n"
"[b]Инкрементный поиск:[/b] Подобно [ItemList] и [Tree], [PopupMenu] "
"поддерживает поиск в списке, пока элемент управления находится в фокусе. "
"Нажмите клавишу, которая соответствует первой букве имени элемента, чтобы "
"выбрать первый элемент, начинающийся с заданной буквы. После этого есть два "
"способа выполнить инкрементный поиск: 1) Нажмите ту же клавишу еще раз до "
"истечения времени ожидания, чтобы выбрать следующий элемент, начинающийся с "
"той же буквы. 2) Нажмите клавиши с буквами, которые соответствуют оставшейся "
"части слова до истечения времени ожидания, чтобы напрямую выбрать нужный "
"элемент. Оба эти действия будут сброшены к началу списка, если время ожидания "
"истекло с момента регистрации последнего нажатия клавиши. Вы можете настроить "
"время ожидания, изменив [member ProjectSettings.gui/timers/"
"incremental_search_max_interval_msec].\n"
"[b]Примечание:[/b] Значения идентификаторов, используемые для элементов, "
"ограничены 32 битами, а не полными 64 битами [int]. Диапазон значений: от "
"[code]-2^32[/code] до [code]2^32 - 1[/code], т. е. от [code]-2147483648[/"
"code] до [code]2147483647[/code]."

msgid ""
"Checks the provided [param event] against the [PopupMenu]'s shortcuts and "
"accelerators, and activates the first item with matching events. If [param "
"for_global_only] is [code]true[/code], only shortcuts and accelerators with "
"[code]global[/code] set to [code]true[/code] will be called.\n"
"Returns [code]true[/code] if an item was successfully activated.\n"
"[b]Note:[/b] Certain [Control]s, such as [MenuButton], will call this method "
"automatically."
msgstr ""
"Проверяет предоставленное [param event] на соответствие сочетаниям клавиш и "
"ускорителям [PopupMenu] и активирует первый элемент с соответствующими "
"событиями. Если [param for_global_only] равно [code]true[/code], будут "
"вызваны только сочетания клавиш и ускорители с [code]global[/code], "
"установленными на [code]true[/code].\n"
"Возвращает [code]true[/code], если элемент был успешно активирован.\n"
"[b]Примечание:[/b] Некоторые [Control], такие как [MenuButton], будут "
"вызывать этот метод автоматически."

msgid ""
"Adds a new checkable item with text [param label].\n"
"An [param id] can optionally be provided, as well as an accelerator ([param "
"accel]). If no [param id] is provided, one will be created from the index. If "
"no [param accel] is provided, then the default value of 0 (corresponding to "
"[constant @GlobalScope.KEY_NONE]) will be assigned to the item (which means "
"it won't have any accelerator). See [method get_item_accelerator] for more "
"info on accelerators.\n"
"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
"built-in checking behavior and must be checked/unchecked manually. See "
"[method set_item_checked] for more info on how to control it."
msgstr ""
"Добавляет новый отмечаемый элемент с текстом [param label].\n"
"[param id] может быть указан дополнительно, а также ускоритель ([param "
"accel]). Если [param id] не указан, он будет создан из индекса. Если [param "
"accel] не указан, то элементу будет назначено значение по умолчанию 0 "
"(соответствующее [constant @GlobalScope.KEY_NONE]) (что означает, что у него "
"не будет ускорителя). См. [method get_item_accelerator] для получения "
"дополнительной информации об ускорителях.\n"
"[b]Примечание:[/b] Отмечаемые элементы просто отображают галочку, но не имеют "
"встроенного поведения проверки и должны быть отмечены/сняты вручную. См. "
"[method set_item_checked] для получения дополнительной информации о том, как "
"управлять этим."

msgid ""
"Adds a new checkable item and assigns the specified [Shortcut] to it. Sets "
"the label of the checkbox to the [Shortcut]'s name.\n"
"An [param id] can optionally be provided. If no [param id] is provided, one "
"will be created from the index.\n"
"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
"built-in checking behavior and must be checked/unchecked manually. See "
"[method set_item_checked] for more info on how to control it."
msgstr ""
"Добавляет новый отмечаемый элемент и назначает ему указанный [Shortcut]. "
"Устанавливает метку флажка на имя [Shortcut].\n"
"[param id] может быть указан по желанию. Если [param id] не указан, он будет "
"создан из индекса.\n"
"[b]Примечание:[/b] Отмечаемые элементы просто отображают галочку, но не имеют "
"встроенного поведения проверки и должны быть отмечены/сняты вручную. См. "
"[method set_item_checked] для получения дополнительной информации о том, как "
"управлять этим."

msgid ""
"Adds a new checkable item with text [param label] and icon [param texture].\n"
"An [param id] can optionally be provided, as well as an accelerator ([param "
"accel]). If no [param id] is provided, one will be created from the index. If "
"no [param accel] is provided, then the default value of 0 (corresponding to "
"[constant @GlobalScope.KEY_NONE]) will be assigned to the item (which means "
"it won't have any accelerator). See [method get_item_accelerator] for more "
"info on accelerators.\n"
"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
"built-in checking behavior and must be checked/unchecked manually. See "
"[method set_item_checked] for more info on how to control it."
msgstr ""
"Добавляет новый отмечаемый элемент с текстом [param label] и значком [param "
"texture].\n"
"[param id] может быть указан дополнительно, а также ускоритель ([param "
"accel]). Если [param id] не указан, он будет создан из индекса. Если [param "
"accel] не указан, то элементу будет назначено значение по умолчанию 0 "
"(соответствующее [constant @GlobalScope.KEY_NONE]) (что означает, что у него "
"не будет ускорителя). См. [method get_item_accelerator] для получения "
"дополнительной информации об ускорителях.\n"
"[b]Примечание:[/b] Отмечаемые элементы просто отображают галочку, но не имеют "
"встроенного поведения проверки и должны быть отмечены/сняты вручную. См. "
"[method set_item_checked] для получения дополнительной информации о том, как "
"управлять этим."

msgid ""
"Adds a new checkable item and assigns the specified [Shortcut] and icon "
"[param texture] to it. Sets the label of the checkbox to the [Shortcut]'s "
"name.\n"
"An [param id] can optionally be provided. If no [param id] is provided, one "
"will be created from the index.\n"
"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
"built-in checking behavior and must be checked/unchecked manually. See "
"[method set_item_checked] for more info on how to control it."
msgstr ""
"Добавляет новый отмечаемый элемент и назначает ему указанный [Shortcut] и "
"значок [param texture]. Устанавливает метку флажка на имя [Shortcut].\n"
"[param id] может быть указан по желанию. Если [param id] не указан, он будет "
"создан из индекса.\n"
"[b]Примечание:[/b] Отмечаемые элементы просто отображают галочку, но не имеют "
"встроенного поведения проверки и должны быть отмечены/сняты вручную. См. "
"[method set_item_checked] для получения дополнительной информации о том, как "
"управлять этим."

msgid ""
"Adds a new item with text [param label] and icon [param texture].\n"
"An [param id] can optionally be provided, as well as an accelerator ([param "
"accel]). If no [param id] is provided, one will be created from the index. If "
"no [param accel] is provided, then the default value of 0 (corresponding to "
"[constant @GlobalScope.KEY_NONE]) will be assigned to the item (which means "
"it won't have any accelerator). See [method get_item_accelerator] for more "
"info on accelerators."
msgstr ""
"Добавляет новый элемент с текстом [param label] и значком [param texture].\n"
"[param id] может быть указан дополнительно, а также ускоритель ([param "
"accel]). Если [param id] не указан, он будет создан из индекса. Если [param "
"accel] не указан, то элементу будет назначено значение по умолчанию 0 "
"(соответствующее [constant @GlobalScope.KEY_NONE]) (что означает, что у него "
"не будет ускорителя). Подробнее об ускорителях см. [method "
"get_item_accelerator]."

msgid "Same as [method add_icon_check_item], but uses a radio check button."
msgstr ""
"То же, что и [method add_icon_check_item], но использует кнопку-переключатель."

msgid "Same as [method add_icon_check_shortcut], but uses a radio check button."
msgstr ""
"То же, что и [method add_icon_check_shortcut], но использует кнопку-"
"переключатель."

msgid ""
"Adds a new item and assigns the specified [Shortcut] and icon [param texture] "
"to it. Sets the label of the checkbox to the [Shortcut]'s name.\n"
"An [param id] can optionally be provided. If no [param id] is provided, one "
"will be created from the index.\n"
"If [param allow_echo] is [code]true[/code], the shortcut can be activated "
"with echo events."
msgstr ""
"Добавляет новый элемент и назначает ему указанный [Shortcut] и значок [param "
"texture]. Устанавливает метку флажка на имя [Shortcut].\n"
"[param id] может быть указан по желанию. Если [param id] не указан, он будет "
"создан из индекса.\n"
"Если [param allow_echo] равен [code]true[/code], ярлык может быть активирован "
"с помощью событий echo (эхо, подражатель)."

msgid ""
"Adds a new item with text [param label].\n"
"An [param id] can optionally be provided, as well as an accelerator ([param "
"accel]). If no [param id] is provided, one will be created from the index. If "
"no [param accel] is provided, then the default value of 0 (corresponding to "
"[constant @GlobalScope.KEY_NONE]) will be assigned to the item (which means "
"it won't have any accelerator). See [method get_item_accelerator] for more "
"info on accelerators.\n"
"[b]Note:[/b] The provided [param id] is used only in [signal id_pressed] and "
"[signal id_focused] signals. It's not related to the [code]index[/code] "
"arguments in e.g. [method set_item_checked]."
msgstr ""
"Добавляет новый элемент с текстом [param label].\n"
"[param id] может быть указан дополнительно, а также ускоритель ([param "
"accel]). Если [param id] не указан, он будет создан из индекса. Если [param "
"accel] не указан, то элементу будет назначено значение по умолчанию 0 "
"(соответствующее [constant @GlobalScope.KEY_NONE]) (что означает, что у него "
"не будет ускорителя). Подробнее об ускорителях см. [method "
"get_item_accelerator].\n"
"[b]Примечание:[/b] Указанный [param id] используется только в сигналах "
"[signal id_pressed] и [signal id_focused]. Он не связан с аргументами "
"[code]index[/code], например, в [method set_item_checked]."

msgid ""
"Adds a new multistate item with text [param label].\n"
"Contrarily to normal binary items, multistate items can have more than two "
"states, as defined by [param max_states]. The default value is defined by "
"[param default_state].\n"
"An [param id] can optionally be provided, as well as an accelerator ([param "
"accel]). If no [param id] is provided, one will be created from the index. If "
"no [param accel] is provided, then the default value of 0 (corresponding to "
"[constant @GlobalScope.KEY_NONE]) will be assigned to the item (which means "
"it won't have any accelerator). See [method get_item_accelerator] for more "
"info on accelerators.\n"
"[codeblock]\n"
"func _ready():\n"
"\tadd_multistate_item(\"Item\", 3, 0)\n"
"\n"
"\tindex_pressed.connect(func(index: int):\n"
"\t\t\ttoggle_item_multistate(index)\n"
"\t\t\tmatch get_item_multistate(index):\n"
"\t\t\t\t0:\n"
"\t\t\t\t\tprint(\"First state\")\n"
"\t\t\t\t1:\n"
"\t\t\t\t\tprint(\"Second state\")\n"
"\t\t\t\t2:\n"
"\t\t\t\t\tprint(\"Third state\")\n"
"\t\t)\n"
"[/codeblock]\n"
"[b]Note:[/b] Multistate items don't update their state automatically and must "
"be done manually. See [method toggle_item_multistate], [method "
"set_item_multistate] and [method get_item_multistate] for more info on how to "
"control it."
msgstr ""
"Добавляет новый элемент с несколькими состояниями с текстом [param label].\n"
"В отличие от обычных бинарных элементов, элементы с несколькими состояниями "
"могут иметь более двух состояний, как определено [param max_states]. Значение "
"по умолчанию определяется [param default_state].\n"
"[param id] может быть предоставлен дополнительно, а также ускоритель ([param "
"accel]). Если [param id] не указан, он будет создан из индекса. Если [param "
"accel] не указан, то элементу будет назначено значение по умолчанию 0 "
"(соответствующее [constant @GlobalScope.KEY_NONE]) (что означает, что у него "
"не будет ускорителя). См. [method get_item_accelerator] для получения "
"дополнительной информации об ускорителях.\n"
"[codeblock]\n"
"func _ready():\n"
"\tadd_multistate_item(\"Item\", 3, 0)\n"
"\n"
"\tindex_pressed.connect(func(index: int):\n"
"\t\t\ttoggle_item_multistate(index)\n"
"\t\t\tmatch get_item_multistate(index):\n"
"\t\t\t\t0:\n"
"\t\t\t\t\tprint(\"Первое состояние\")\n"
"\t\t\t\t1:\n"
"\t\t\t\t\tprint(\"Второе состояние\")\n"
"\t\t\t\t2:\n"
"\t\t\t\t\tprint(\"Третье состояние\")\n"
"\t\t)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Элементы с несколькими состояниями не обновляют свое "
"состояние автоматически и это должно быть сделано вручную. См. [method "
"toggle_item_multistate], [method set_item_multistate] и [method "
"get_item_multistate] для получения дополнительной информации о том, как "
"управлять этим."

msgid ""
"Adds a new radio check button with text [param label].\n"
"An [param id] can optionally be provided, as well as an accelerator ([param "
"accel]). If no [param id] is provided, one will be created from the index. If "
"no [param accel] is provided, then the default value of 0 (corresponding to "
"[constant @GlobalScope.KEY_NONE]) will be assigned to the item (which means "
"it won't have any accelerator). See [method get_item_accelerator] for more "
"info on accelerators.\n"
"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
"built-in checking behavior and must be checked/unchecked manually. See "
"[method set_item_checked] for more info on how to control it."
msgstr ""
"Добавляет новую кнопку выбора радио с текстом [param label].\n"
"[param id] может быть необязательно указан, а также ускоритель ([param "
"accel]). Если [param id] не указан, он будет создан из индекса. Если [param "
"accel] не указан, то элементу будет назначено значение по умолчанию 0 "
"(соответствующее [constant @GlobalScope.KEY_NONE]) (что означает, что у него "
"не будет ускорителя). См. [method get_item_accelerator] для получения "
"дополнительной информации об ускорителях.\n"
"[b]Примечание:[/b] Отмечаемые элементы просто отображают галочку, но не имеют "
"встроенного поведения проверки и должны быть отмечены/сняты вручную. См. "
"[method set_item_checked] для получения дополнительной информации о том, как "
"управлять этим."

msgid ""
"Adds a new radio check button and assigns a [Shortcut] to it. Sets the label "
"of the checkbox to the [Shortcut]'s name.\n"
"An [param id] can optionally be provided. If no [param id] is provided, one "
"will be created from the index.\n"
"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
"built-in checking behavior and must be checked/unchecked manually. See "
"[method set_item_checked] for more info on how to control it."
msgstr ""
"Добавляет новую кнопку-переключатель и назначает ей [Shortcut]. Устанавливает "
"метку флажка на имя [Shortcut].\n"
"Можно указать [param id] по желанию. Если [param id] не указан, он будет "
"создан из индекса.\n"
"[b]Примечание:[/b] Отмечаемые элементы просто отображают галочку, но не имеют "
"встроенного поведения проверки и должны быть отмечены/сняты вручную. См. "
"[method set_item_checked] для получения дополнительной информации о том, как "
"управлять этим."

msgid ""
"Adds a separator between items. Separators also occupy an index, which you "
"can set by using the [param id] parameter.\n"
"A [param label] can optionally be provided, which will appear at the center "
"of the separator."
msgstr ""
"Добавляет разделитель между элементами. Разделители также занимают индекс, "
"который можно задать с помощью параметра [param id].\n"
"[param label] может быть дополнительно предоставлен, который будет "
"отображаться в центре разделителя."

msgid ""
"Adds a [Shortcut].\n"
"An [param id] can optionally be provided. If no [param id] is provided, one "
"will be created from the index.\n"
"If [param allow_echo] is [code]true[/code], the shortcut can be activated "
"with echo events."
msgstr ""
"Добавляет [Shortcut].\n"
"[param id] может быть предоставлен по желанию. Если [param id] не "
"предоставлен, он будет создан из индекса.\n"
"Если [param allow_echo] равен [code]true[/code], ярлык может быть активирован "
"с помощью событий echo."

msgid "Prefer using [method add_submenu_node_item] instead."
msgstr ""
"Вместо этого предпочтительнее использовать [method add_submenu_node_item]."

msgid ""
"Adds an item that will act as a submenu of the parent [PopupMenu] node when "
"clicked. The [param submenu] argument must be the name of an existing "
"[PopupMenu] that has been added as a child to this node. This submenu will be "
"shown when the item is clicked, hovered for long enough, or activated using "
"the [code]ui_select[/code] or [code]ui_right[/code] input actions.\n"
"An [param id] can optionally be provided. If no [param id] is provided, one "
"will be created from the index."
msgstr ""
"Добавляет элемент, который будет действовать как подменю родительского узла "
"[PopupMenu] при щелчке. Аргумент [param submenu] должен быть именем "
"существующего [PopupMenu], который был добавлен как дочерний к этому узлу. "
"Это подменю будет показано при щелчке элемента, наведении на него достаточно "
"долго или активации с помощью действий ввода [code]ui_select[/code] или "
"[code]ui_right[/code].\n"
"[param id] может быть необязательно указан. Если [param id] не указан, он "
"будет создан из индекса."

msgid ""
"Adds an item that will act as a submenu of the parent [PopupMenu] node when "
"clicked. This submenu will be shown when the item is clicked, hovered for "
"long enough, or activated using the [code]ui_select[/code] or [code]ui_right[/"
"code] input actions.\n"
"[param submenu] must be either child of this [PopupMenu] or has no parent "
"node (in which case it will be automatically added as a child). If the [param "
"submenu] popup has another parent, this method will fail.\n"
"An [param id] can optionally be provided. If no [param id] is provided, one "
"will be created from the index."
msgstr ""
"Добавляет элемент, который будет действовать как подменю родительского узла "
"[PopupMenu] при щелчке. Это подменю будет показано, когда элемент щелкают, "
"наводят достаточно долго или активируют с помощью действий ввода "
"[code]ui_select[/code] или [code]ui_right[/code].\n"
"[param submenu] должен быть либо дочерним элементом этого [PopupMenu], либо "
"не иметь родительского узла (в этом случае он будет автоматически добавлен "
"как дочерний элемент). Если у всплывающего окна [param submenu] есть другой "
"родитель, этот метод не сработает.\n"
"При необходимости можно указать [param id]. Если [param id] не указан, он "
"будет создан из индекса."

msgid ""
"Removes all items from the [PopupMenu]. If [param free_submenus] is "
"[code]true[/code], the submenu nodes are automatically freed."
msgstr ""
"Удаляет все элементы из [PopupMenu]. Если [param free_submenus] равен "
"[code]true[/code], узлы подменю автоматически освобождаются."

msgid ""
"Returns the index of the currently focused item. Returns [code]-1[/code] if "
"no item is focused."
msgstr ""
"Возвращает индекс текущего сфокусированного элемента. Возвращает [code]-1[/"
"code], если ни один элемент не сфокусирован."

msgid ""
"Returns the accelerator of the item at the given [param index]. An "
"accelerator is a keyboard shortcut that can be pressed to trigger the menu "
"button even if it's not currently open. The return value is an integer which "
"is generally a combination of [enum KeyModifierMask]s and [enum Key]s using "
"bitwise OR such as [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd]). "
"If no accelerator is defined for the specified [param index], [method "
"get_item_accelerator] returns [code]0[/code] (corresponding to [constant "
"@GlobalScope.KEY_NONE])."
msgstr ""
"Возвращает акселератор элемента по указанному [param index]. Акселератор "
"(ускоритель) — это сочетание клавиш, которое можно нажать для вызова кнопки "
"меню, даже если оно в данный момент не открыто. Возвращаемое значение — целое "
"число, которое обычно является комбинацией [enum KeyModifierMask] и [enum "
"Key] с использованием побитового ИЛИ, например [code]KEY_MASK_CTRL | KEY_A[/"
"code] ([kbd]Ctrl + A[/kbd]). Если для указанного [param index] акселератор не "
"определен, [method get_item_accelerator] возвращает [code]0[/code] "
"(соответствует [constant @GlobalScope.KEY_NONE])."

msgid "Returns the auto translate mode of the item at the given [param index]."
msgstr ""
"Возвращает режим автоматического перевода элемента по указанному [param "
"index]."

msgid "Returns the icon of the item at the given [param index]."
msgstr "Возвращает значок элемента по указанному [param index]."

msgid ""
"Returns the maximum allowed width of the icon for the item at the given "
"[param index]."
msgstr ""
"Возвращает максимально допустимую ширину значка для элемента по указанному "
"[param index]."

msgid "Returns a [Color] modulating the item's icon at the given [param index]."
msgstr ""
"Возвращает [Color], модулирующий значок элемента по указанному [param index]."

msgid ""
"Returns the ID of the item at the given [param index]. [code]id[/code] can be "
"manually assigned, while index can not."
msgstr ""
"Возвращает идентификатор элемента по заданному [param index]. [code]id[/code] "
"можно назначить вручную, а индекс — нет."

msgid "Returns the horizontal offset of the item at the given [param index]."
msgstr ""
"Возвращает горизонтальное смещение элемента по указанному [param index]."

msgid ""
"Returns the index of the item containing the specified [param id]. Index is "
"automatically assigned to each item by the engine and can not be set manually."
msgstr ""
"Возвращает индекс элемента, содержащего указанный [param id]. Индекс "
"автоматически назначается каждому элементу движком и не может быть установлен "
"вручную."

msgid ""
"Returns the metadata of the specified item, which might be of any type. You "
"can set it with [method set_item_metadata], which provides a simple way of "
"assigning context data to items."
msgstr ""
"Возвращает метаданные указанного элемента, которые могут быть любого типа. Вы "
"можете задать их с помощью [method set_item_metadata], который обеспечивает "
"простой способ назначения контекстных данных элементам."

msgid "Returns the state of the item at the given [param index]."
msgstr "Возвращает состояние элемента по указанному [param index]."

msgid "Returns the max states of the item at the given [param index]."
msgstr "Возвращает максимальные состояния элемента по указанному [param index]."

msgid ""
"Returns the [Shortcut] associated with the item at the given [param index]."
msgstr ""
"Возвращает [Shortcut], связанный с элементом по указанному [param index]."

msgid "Prefer using [method get_item_submenu_node] instead."
msgstr ""
"Вместо этого предпочтительнее использовать [method get_item_submenu_node]."

msgid ""
"Returns the submenu name of the item at the given [param index]. See [method "
"add_submenu_item] for more info on how to add a submenu."
msgstr ""
"Возвращает имя подменю элемента по указанному [param index]. См. [method "
"add_submenu_item] для получения дополнительной информации о том, как добавить "
"подменю."

msgid ""
"Returns the submenu of the item at the given [param index], or [code]null[/"
"code] if no submenu was added. See [method add_submenu_node_item] for more "
"info on how to add a submenu."
msgstr ""
"Возвращает подменю элемента по указанному [param index] или [code]null[/"
"code], если подменю не было добавлено. См. [method add_submenu_node_item] для "
"получения дополнительной информации о том, как добавить подменю."

msgid "Returns the text of the item at the given [param index]."
msgstr "Возвращает текст элемента по указанному [param index]."

msgid "Returns the tooltip associated with the item at the given [param index]."
msgstr ""
"Возвращает подсказку, связанную с элементом по указанному [param index]."

msgid ""
"Returns [code]true[/code] if the item at the given [param index] is checkable "
"in some way, i.e. if it has a checkbox or radio button.\n"
"[b]Note:[/b] Checkable items just display a checkmark or radio button, but "
"don't have any built-in checking behavior and must be checked/unchecked "
"manually."
msgstr ""
"Возвращает [code]true[/code], если элемент с указанным [param index] можно "
"отметить каким-либо образом, например, если у него есть флажок или "
"переключатель.\n"
"[b]Примечание:[/b] Отмечаемые элементы просто отображают галочку или "
"переключатель, но не имеют встроенного поведения проверки и должны быть "
"отмечены/сняты вручную."

msgid ""
"Returns [code]true[/code] if the item at the given [param index] is checked."
msgstr ""
"Возвращает [code]true[/code], если элемент с указанным [param index] отмечен."

msgid ""
"Returns [code]true[/code] if the item at the given [param index] is disabled. "
"When it is disabled it can't be selected, or its action invoked.\n"
"See [method set_item_disabled] for more info on how to disable an item."
msgstr ""
"Возвращает [code]true[/code], если элемент с указанным [param index] "
"отключен. Когда он отключен, его нельзя выбрать или вызвать его действие.\n"
"См. [method set_item_disabled] для получения дополнительной информации о том, "
"как отключить элемент."

msgid ""
"Returns [code]true[/code] if the item at the given [param index] has radio "
"button-style checkability.\n"
"[b]Note:[/b] This is purely cosmetic; you must add the logic for checking/"
"unchecking items in radio groups."
msgstr ""
"Возвращает [code]true[/code], если элемент с указанным [param index] имеет "
"возможность отмечать в стиле радиокнопки.\n"
"[b]Примечание:[/b] Это чисто косметическое действие; необходимо добавить "
"логику для отметки/снятия отметки элементов в радио-группах."

msgid ""
"Returns [code]true[/code] if the item is a separator. If it is, it will be "
"displayed as a line. See [method add_separator] for more info on how to add a "
"separator."
msgstr ""
"Возвращает [code]true[/code], если элемент является разделителем. Если это "
"так, он будет отображен в виде линии. См. [method add_separator] для "
"получения дополнительной информации о том, как добавить разделитель."

msgid "Returns [code]true[/code] if the specified item's shortcut is disabled."
msgstr "Возвращает [code]true[/code], если ярлык указанного элемента отключен."

msgid ""
"Returns [code]true[/code] if the system native menu is supported and "
"currently used by this [PopupMenu]."
msgstr ""
"Возвращает [code]true[/code], если системное собственное меню поддерживается "
"и в данный момент используется этим [PopupMenu]."

msgid ""
"Returns [code]true[/code] if the menu is bound to the special system menu."
msgstr ""
"Возвращает [code]true[/code], если меню привязано к специальному системному "
"меню."

msgid ""
"Removes the item at the given [param index] from the menu.\n"
"[b]Note:[/b] The indices of items after the removed item will be shifted by "
"one."
msgstr ""
"Удаляет элемент с указанным [param index] из меню.\n"
"[b]Примечание:[/b] Индексы элементов после удаленного элемента будут смещены "
"на единицу."

msgid ""
"Moves the scroll view to make the item at the given [param index] visible."
msgstr ""
"Перемещает вид прокрутки, делая видимым элемент с указанным [param index]."

msgid ""
"Sets the currently focused item as the given [param index].\n"
"Passing [code]-1[/code] as the index makes so that no item is focused."
msgstr ""
"Устанавливает текущий сфокусированный элемент как заданный [param index].\n"
"Передача [code]-1[/code] в качестве индекса делает так, что ни один элемент "
"не будет сфокусирован."

msgid ""
"Sets the accelerator of the item at the given [param index]. An accelerator "
"is a keyboard shortcut that can be pressed to trigger the menu button even if "
"it's not currently open. [param accel] is generally a combination of [enum "
"KeyModifierMask]s and [enum Key]s using bitwise OR such as "
"[code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/kbd])."
msgstr ""
"Устанавливает акселератор элемента по указанному [param index]. Акселератор "
"(ускоритель) — это сочетание клавиш, которое можно нажать для вызова кнопки "
"меню, даже если оно в данный момент не открыто. [param accel] — это, как "
"правило, комбинация [enum KeyModifierMask] и [enum Key] с использованием "
"побитового ИЛИ, например, [code]KEY_MASK_CTRL | KEY_A[/code] ([kbd]Ctrl + A[/"
"kbd])."

msgid ""
"Sets whether the item at the given [param index] has a checkbox. If "
"[code]false[/code], sets the type of the item to plain text.\n"
"[b]Note:[/b] Checkable items just display a checkmark, but don't have any "
"built-in checking behavior and must be checked/unchecked manually."
msgstr ""
"Устанавливает, есть ли у элемента с указанным [param index] флажок. Если "
"[code]false[/code], задает тип элемента как обычный текст.\n"
"[b]Примечание:[/b] Отмечаемые элементы просто отображают галочку, но не имеют "
"встроенного поведения проверки и должны быть отмечены/сняты вручную."

msgid ""
"Sets the type of the item at the given [param index] to radio button. If "
"[code]false[/code], sets the type of the item to plain text."
msgstr ""
"Устанавливает тип элемента в указанном [param index] на радиокнопку. Если "
"[code]false[/code], тип элемента устанавливается в виде обычного текста."

msgid ""
"Mark the item at the given [param index] as a separator, which means that it "
"would be displayed as a line. If [code]false[/code], sets the type of the "
"item to plain text."
msgstr ""
"Отметить элемент с указанным [param index] как разделитель, что означает, что "
"он будет отображаться как строка. Если [code]false[/code], устанавливается "
"тип элемента в виде обычного текста."

msgid ""
"Sets the auto translate mode of the item at the given [param index].\n"
"Items use [constant Node.AUTO_TRANSLATE_MODE_INHERIT] by default, which uses "
"the same auto translate mode as the [PopupMenu] itself."
msgstr ""
"Устанавливает режим автоматического перевода элемента по указанному [param "
"index].\n"
"Элементы используют [constant Node.AUTO_TRANSLATE_MODE_INHERIT] по умолчанию, "
"которая использует тот же режим автоматического перевода, что и само "
"[PopupMenu]."

msgid "Sets the checkstate status of the item at the given [param index]."
msgstr "Устанавливает состояние проверки элемента по указанному [param index]."

msgid ""
"Enables/disables the item at the given [param index]. When it is disabled, it "
"can't be selected and its action can't be invoked."
msgstr ""
"Включает/отключает элемент с указанным [param index]. Когда он отключен, его "
"нельзя выбрать и его действие нельзя вызвать."

msgid "Replaces the [Texture2D] icon of the item at the given [param index]."
msgstr "Заменяет значок [Texture2D] элемента с указанным [param index]."

msgid ""
"Sets the maximum allowed width of the icon for the item at the given [param "
"index]. This limit is applied on top of the default size of the icon and on "
"top of [theme_item icon_max_width]. The height is adjusted according to the "
"icon's ratio."
msgstr ""
"Устанавливает максимально допустимую ширину значка для элемента с указанным "
"[param index]. Это ограничение применяется поверх размера значка по умолчанию "
"и поверх [theme_item icon_max_width]. Высота регулируется в соответствии с "
"соотношением сторон значка."

msgid "Sets a modulating [Color] of the item's icon at the given [param index]."
msgstr ""
"Устанавливает модулирующий цвет [Color] значка элемента по указанному [param "
"index]."

msgid ""
"Sets the [param id] of the item at the given [param index].\n"
"The [param id] is used in [signal id_pressed] and [signal id_focused] signals."
msgstr ""
"Устанавливает [param id] элемента по указанному [param index]. \n"
"[param id] используется в сигналах [signal id_pressed] и [signal id_focused]."

msgid "Sets the horizontal offset of the item at the given [param index]."
msgstr ""
"Устанавливает горизонтальное смещение элемента по указанному [param index]."

msgid ""
"Sets the metadata of an item, which may be of any type. You can later get it "
"with [method get_item_metadata], which provides a simple way of assigning "
"context data to items."
msgstr ""
"Устанавливает метаданные элемента, которые могут быть любого типа. Позже вы "
"можете получить их с помощью [method get_item_metadata], который обеспечивает "
"простой способ назначения контекстных данных элементам."

msgid ""
"Sets the state of a multistate item. See [method add_multistate_item] for "
"details."
msgstr ""
"Устанавливает состояние элемента с несколькими состояниями. Подробности см. в "
"[method add_multistate_item]."

msgid ""
"Sets the max states of a multistate item. See [method add_multistate_item] "
"for details."
msgstr ""
"Устанавливает максимальные состояния элемента с несколькими состояниями. "
"Подробности см. в [method add_multistate_item]."

msgid "Sets a [Shortcut] for the item at the given [param index]."
msgstr "Устанавливает [Shortcut] для элемента с указанным [param index]."

msgid "Disables the [Shortcut] of the item at the given [param index]."
msgstr "Отключает [Shortcut] элемента с указанным [param index]."

msgid "Prefer using [method set_item_submenu_node] instead."
msgstr ""
"Вместо этого предпочтительнее использовать [method set_item_submenu_node]."

msgid ""
"Sets the submenu of the item at the given [param index]. The submenu is the "
"name of a child [PopupMenu] node that would be shown when the item is clicked."
msgstr ""
"Устанавливает подменю элемента с указанным [param index]. Подменю — это имя "
"дочернего узла [PopupMenu], который будет показан при щелчке по элементу."

msgid ""
"Sets the submenu of the item at the given [param index]. The submenu is a "
"[PopupMenu] node that would be shown when the item is clicked. It must either "
"be a child of this [PopupMenu] or has no parent (in which case it will be "
"automatically added as a child). If the [param submenu] popup has another "
"parent, this method will fail."
msgstr ""
"Устанавливает подменю элемента с указанным [param index]. Подменю — это узел "
"[PopupMenu], который будет показан при щелчке по элементу. Он должен быть "
"либо дочерним элементом этого [PopupMenu], либо не иметь родителя (в этом "
"случае он будет автоматически добавлен как дочерний элемент). Если у "
"всплывающего элемента [param submenu] есть другой родитель, этот метод "
"завершится ошибкой."

msgid "Sets the text of the item at the given [param index]."
msgstr "Устанавливает текст элемента по указанному [param index]."

msgid "Sets the [String] tooltip of the item at the given [param index]."
msgstr ""
"Устанавливает подсказку [String] для элемента с указанным [param index]."

msgid "Toggles the check state of the item at the given [param index]."
msgstr "Переключает состояние проверки элемента по указанному [param index]."

msgid ""
"Cycle to the next state of a multistate item. See [method "
"add_multistate_item] for details."
msgstr ""
"Перейти к следующему состоянию элемента с несколькими состояниями. "
"Подробности см. в [method add_multistate_item]."

msgid "If [code]true[/code], allows navigating [PopupMenu] with letter keys."
msgstr ""
"Если [code]true[/code], позволяет осуществлять навигацию по [PopupMenu] с "
"помощью буквенных клавиш."

msgid ""
"If [code]true[/code], hides the [PopupMenu] when a checkbox or radio button "
"is selected."
msgstr ""
"Если [code]true[/code], скрывает [PopupMenu] при выборе флажка или "
"переключателя."

msgid "If [code]true[/code], hides the [PopupMenu] when an item is selected."
msgstr "Если [code]true[/code], скрывает [PopupMenu] при выборе элемента."

msgid ""
"If [code]true[/code], hides the [PopupMenu] when a state item is selected."
msgstr ""
"Если [code]true[/code], скрывает [PopupMenu] при выборе элемента состояния."

msgid ""
"If [code]true[/code], [MenuBar] will use native menu when supported.\n"
"[b]Note:[/b] If [PopupMenu] is linked to [StatusIndicator], [MenuBar], or "
"another [PopupMenu] item it can use native menu regardless of this property, "
"use [method is_native_menu] to check it."
msgstr ""
"Если [code]true[/code], [MenuBar] будет использовать собственное меню, если "
"поддерживается.\n"
"[b]Примечание:[/b] Если [PopupMenu] связан с [StatusIndicator], [MenuBar] или "
"другим элементом [PopupMenu], он может использовать собственное меню "
"независимо от этого свойства, используйте [method is_native_menu], чтобы "
"проверить это."

msgid ""
"Sets the delay time in seconds for the submenu item to popup on mouse "
"hovering. If the popup menu is added as a child of another (acting as a "
"submenu), it will inherit the delay time of the parent menu item."
msgstr ""
"Устанавливает время задержки в секундах для всплывающего элемента подменю при "
"наведении мыши. Если всплывающее меню добавляется как дочернее по отношению к "
"другому (выступая в качестве подменю), оно унаследует время задержки "
"родительского элемента меню."

msgid ""
"If set to one of the values of [enum NativeMenu.SystemMenus], this "
"[PopupMenu] is bound to the special system menu. Only one [PopupMenu] can be "
"bound to each special menu at a time."
msgstr ""
"Если установлено одно из значений [enum NativeMenu.SystemMenus], это "
"[PopupMenu] привязано к специальному системному меню. Только одно [PopupMenu] "
"может быть привязано к каждому специальному меню одновременно."

msgid ""
"Emitted when the user navigated to an item of some [param id] using the "
"[member ProjectSettings.input/ui_up] or [member ProjectSettings.input/"
"ui_down] input action."
msgstr ""
"Вызывается, когда пользователь перешел к элементу с некоторым [param id] с "
"помощью действия ввода [member ProjectSettings.input/ui_up] или [member "
"ProjectSettings.input/ui_down]."

msgid ""
"Emitted when an item of some [param id] is pressed or its accelerator is "
"activated.\n"
"[b]Note:[/b] If [param id] is negative (either explicitly or due to "
"overflow), this will return the corresponding index instead."
msgstr ""
"Выдается при нажатии элемента некоторого [param id] или активации его "
"ускорителя.\n"
"[b]Примечание:[/b] Если [param id] отрицательный (явно или из-за "
"переполнения), вместо этого будет возвращен соответствующий индекс."

msgid ""
"Emitted when an item of some [param index] is pressed or its accelerator is "
"activated."
msgstr ""
"Вызывается при нажатии элемента некоторого [param index] или активации его "
"ускорителя."

msgid "Emitted when any item is added, modified or removed."
msgstr "Генерируется при добавлении, изменении или удалении любого элемента."

msgid ""
"The text [Color] used for shortcuts and accelerators that show next to the "
"menu item name when defined. See [method get_item_accelerator] for more info "
"on accelerators."
msgstr ""
"Текст [Color], используемый для ярлыков и ускорителей, которые отображаются "
"рядом с именем пункта меню при определении. См. [method get_item_accelerator] "
"для получения дополнительной информации об ускорителях (accelerators)."

msgid "The default text [Color] for menu items' names."
msgstr "Текст по умолчанию [Color] для названий пунктов меню."

msgid "[Color] used for disabled menu items' text."
msgstr "[Color] используется для текста, в отключенных пунктах меню."

msgid "[Color] used for the hovered text."
msgstr "[Color] используется для наведенного текста."

msgid "[Color] used for labeled separators' text. See [method add_separator]."
msgstr ""
"[Color] используется для текста маркированных разделителей. См. [method "
"add_separator]."

msgid "The tint of text outline of the labeled separator."
msgstr "Оттенок контура текста маркированного разделителя."

msgid "The horizontal space between the item's elements."
msgstr "Горизонтальное пространство между элементами."

msgid ""
"The maximum allowed width of the item's icon. This limit is applied on top of "
"the default size of the icon, but before the value set with [method "
"set_item_icon_max_width]. The height is adjusted according to the icon's "
"ratio."
msgstr ""
"Максимально допустимая ширина значка элемента. Это ограничение применяется "
"поверх размера значка по умолчанию, но до значения, установленного с помощью "
"[method set_item_icon_max_width]. Высота регулируется в соответствии с "
"соотношением значка."

msgid "Width of the single indentation level."
msgstr "Ширина одного уровня отступа."

msgid "Horizontal padding to the right of the items (or left, in RTL layout)."
msgstr ""
"Горизонтальный отступ справа от элементов (или слева в макете с написанием "
"справа налево)."

msgid "Horizontal padding to the left of the items (or right, in RTL layout)."
msgstr ""
"Горизонтальный отступ слева от элементов (или справа в макете с написанием "
"справа налево)."

msgid "The size of the labeled separator text outline."
msgstr "Размер контура текста маркированного разделителя."

msgid "The vertical space between each menu item."
msgstr "Вертикальное расстояние между каждым пунктом меню."

msgid "[Font] used for the menu items."
msgstr "[Font] используемый для пунктов меню."

msgid "[Font] used for the labeled separator."
msgstr "[Font], используемый для маркированного разделителя."

msgid "Font size of the labeled separator."
msgstr "Размер шрифта маркированного разделителя."

msgid "Font size of the menu items."
msgstr "Размер шрифта пунктов меню."

msgid "[Texture2D] icon for the checked checkbox items."
msgstr "Значок [Texture2D] для отмеченных флажками элементов."

msgid "[Texture2D] icon for the checked checkbox items when they are disabled."
msgstr ""
"Значок [Texture2D] для отмеченных флажками элементов, когда они отключены."

msgid "[Texture2D] icon for the checked radio button items."
msgstr "Значок [Texture2D] для отмеченных элементов переключателя."

msgid ""
"[Texture2D] icon for the checked radio button items when they are disabled."
msgstr ""
"Значок [Texture2D] для отмеченных элементов переключателя, когда они "
"отключены."

msgid "[Texture2D] icon for the unchecked radio button items."
msgstr "Значок [Texture2D] для неотмеченных элементов переключателя."

msgid ""
"[Texture2D] icon for the unchecked radio button items when they are disabled."
msgstr ""
"Значок [Texture2D] для неотмеченных элементов переключателя, когда они "
"отключены."

msgid "[Texture2D] icon for the submenu arrow (for left-to-right layouts)."
msgstr "Значок [Texture2D] для стрелки подменю (для макетов слева направо)."

msgid "[Texture2D] icon for the submenu arrow (for right-to-left layouts)."
msgstr "Значок [Texture2D] для стрелки подменю (для макетов справа налево)."

msgid "[Texture2D] icon for the unchecked checkbox items."
msgstr "Значок [Texture2D] для неотмеченных флажков."

msgid ""
"[Texture2D] icon for the unchecked checkbox items when they are disabled."
msgstr ""
"Значок [Texture2D] для неотмеченных элементов флажка, когда они отключены."

msgid "[StyleBox] displayed when the [PopupMenu] item is hovered."
msgstr "[StyleBox] отображается при наведении курсора на элемент [PopupMenu]."

msgid ""
"[StyleBox] for the left side of labeled separator. See [method add_separator]."
msgstr ""
"[StyleBox] для левой стороны маркированного разделителя. См. [method "
"add_separator]."

msgid ""
"[StyleBox] for the right side of labeled separator. See [method "
"add_separator]."
msgstr ""
"[StyleBox] для правой стороны маркированного разделителя. См. [method "
"add_separator]."

msgid "[StyleBox] for the background panel."
msgstr "[StyleBox] для фоновой панели."

msgid "[StyleBox] used for the separators. See [method add_separator]."
msgstr "[StyleBox] используется для разделителей. См. [method add_separator]."

msgid "A popup with a panel background."
msgstr "Всплывающее окно с фоном панели."

msgid ""
"A popup with a configurable panel background. Any child controls added to "
"this node will be stretched to fit the panel's size (similar to how "
"[PanelContainer] works). If you are making windows, see [Window]."
msgstr ""
"Всплывающее окно с настраиваемым фоном панели. Любые дочерние элементы "
"управления, добавленные в этот узел, будут растянуты в соответствии с "
"размером панели (аналогично тому, как работает [PanelContainer]). Если вы "
"создаете окна, см. [Window]."

msgid ""
"Provides a compressed texture for disk and/or VRAM in a way that is portable."
msgstr ""
"Предоставляет сжатую текстуру для диска и/или видеопамяти в переносимом виде."

msgid ""
"This class allows storing compressed textures as self contained (not "
"imported) resources.\n"
"For 2D usage (compressed on disk, uncompressed on VRAM), the lossy and "
"lossless modes are recommended. For 3D usage (compressed on VRAM) it depends "
"on the target platform.\n"
"If you intend to only use desktop, S3TC or BPTC are recommended. For only "
"mobile, ETC2 is recommended.\n"
"For portable, self contained 3D textures that work on both desktop and "
"mobile, Basis Universal is recommended (although it has a small quality cost "
"and longer compression time as a tradeoff).\n"
"This resource is intended to be created from code."
msgstr ""
"Этот класс позволяет хранить сжатые текстуры как автономные (не "
"импортируемые) ресурсы.\n"
"Для 2D-использования (сжатые на диске, несжатые в VRAM) рекомендуются режимы "
"с потерями и без потерь. Для 3D-использования (сжатые в VRAM) это зависит от "
"целевой платформы.\n"
"Если вы собираетесь использовать только настольные компьютеры, рекомендуются "
"S3TC или BPTC. Только для мобильных устройств рекомендуется ETC2.\n"
"Для портативных автономных 3D-текстур, которые работают как на настольных "
"компьютерах, так и на мобильных устройствах, рекомендуется Basis Universal "
"(хотя он имеет небольшую стоимость качества и более длительное время сжатия в "
"качестве компромисса).\n"
"Этот ресурс предназначен для создания из кода."

msgid ""
"Initializes the compressed texture from a base image. The compression mode "
"must be provided.\n"
"[param normal_map] is recommended to ensure optimum quality if this image "
"will be used as a normal map.\n"
"If lossy compression is requested, the quality setting can optionally be "
"provided. This maps to Lossy WebP compression quality."
msgstr ""
"Инициализирует сжатую текстуру из базового изображения. Необходимо указать "
"режим сжатия.\n"
"[param normal_map] рекомендуется для обеспечения оптимального качества, если "
"это изображение будет использоваться как карта нормалей.\n"
"Если запрашивается сжатие с потерями, можно указать настройку качества. Это "
"соответствует качеству сжатия WebP с потерями."

msgid "Return the compression mode used (valid after initialized)."
msgstr ""
"Возвращает используемый режим сжатия (действителен после инициализации)."

msgid "Return the image format used (valid after initialized)."
msgstr ""
"Возвращает используемый формат изображения (действителен после инициализации)."

msgid "Return whether the flag is overridden for all textures of this type."
msgstr "Возвращает, переопределен ли флаг для всех текстур этого типа."

msgid ""
"Sets the compressor parameters for Basis Universal compression. See also the "
"settings in [ResourceImporterTexture].\n"
"[b]Note:[/b] This must be set before [method create_from_image] to take "
"effect."
msgstr ""
"Устанавливает параметры компрессора для сжатия Basis Universal. См. также "
"настройки в [ResourceImporterTexture].\n"
"[b]Примечание:[/b] Это должно быть установлено до [method create_from_image], "
"чтобы вступило в силу."

msgid ""
"Overrides the flag globally for all textures of this type. This is used "
"primarily by the editor."
msgstr ""
"Переопределяет флаг глобально для всех текстур этого типа. Используется в "
"основном редактором."

msgid ""
"When running on the editor, this class will keep the source compressed data "
"in memory. Otherwise, the source compressed data is lost after loading and "
"the resource can't be re saved.\n"
"This flag allows to keep the compressed data in memory if you intend it to "
"persist after loading.\n"
"[b]Note:[/b] This must be set before [method create_from_image] to take "
"effect."
msgstr ""
"При запуске в редакторе этот класс будет сохранять исходные сжатые данные в "
"памяти. В противном случае исходные сжатые данные будут потеряны после "
"загрузки, и ресурс не может быть повторно сохранен.\n"
"Этот флаг позволяет сохранять сжатые данные в памяти, если вы хотите, чтобы "
"они сохранялись после загрузки.\n"
"[b]Примечание:[/b] Это должно быть установлено до [method create_from_image], "
"чтобы вступило в силу."

msgid "Allow overriding the texture size (for 2D only)."
msgstr "Разрешить переопределение размера текстуры (только для 2D)."

msgid ""
"Base class for all primitive meshes. Handles applying a [Material] to a "
"primitive mesh."
msgstr ""
"Базовый класс для всех примитивных сеток. Обрабатывает и применяет [Material] "
"к примитивной сетке."

msgid ""
"Base class for all primitive meshes. Handles applying a [Material] to a "
"primitive mesh. Examples include [BoxMesh], [CapsuleMesh], [CylinderMesh], "
"[PlaneMesh], [PrismMesh], and [SphereMesh]."
msgstr ""
"Базовый класс для всех примитивных сеток. Обрабатывает и применяет [Material] "
"к примитивной сетке. Примеры включают [BoxMesh], [CapsuleMesh], "
"[CylinderMesh], [PlaneMesh], [PrismMesh] и [SphereMesh]."

msgid ""
"Override this method to customize how this primitive mesh should be "
"generated. Should return an [Array] where each element is another Array of "
"values required for the mesh (see the [enum Mesh.ArrayType] constants)."
msgstr ""
"Переопределите этот метод, чтобы настроить, как должна генерироваться эта "
"примитивная сетка. Должен возвращать [Array], где каждый элемент — это другой "
"массив значений, требуемых для сетки (см. константы [enum Mesh.ArrayType])."

msgid ""
"Returns the mesh arrays used to make up the surface of this primitive mesh.\n"
"[b]Example:[/b] Pass the result to [method ArrayMesh.add_surface_from_arrays] "
"to create a new surface:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var c = CylinderMesh.new()\n"
"var arr_mesh = ArrayMesh.new()\n"
"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, "
"c.get_mesh_arrays())\n"
"[/gdscript]\n"
"[csharp]\n"
"var c = new CylinderMesh();\n"
"var arrMesh = new ArrayMesh();\n"
"arrMesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, "
"c.GetMeshArrays());\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает массивы сеток, используемые для создания поверхности этой "
"примитивной сетки.\n"
"[b]Пример:[/b] Передайте результат в [method "
"ArrayMesh.add_surface_from_arrays], чтобы создать новую поверхность:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var c = CylinderMesh.new()\n"
"var arr_mesh = ArrayMesh.new()\n"
"arr_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, "
"c.get_mesh_arrays())\n"
"[/gdscript]\n"
"[csharp]\n"
"var c = new CylinderMesh();\n"
"var arrMesh = new ArrayMesh();\n"
"arrMesh.AddSurfaceFromArrays(Mesh.PrimitiveType.Triangles, "
"c.GetMeshArrays());\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Request an update of this primitive mesh based on its properties."
msgstr "Запросите обновление этой примитивной сетки на основе ее свойств."

msgid ""
"If set, generates UV2 UV coordinates applying a padding using the [member "
"uv2_padding] setting. UV2 is needed for lightmapping."
msgstr ""
"Если установлено, генерирует UV2 UV-координаты, применяя заполнение с помощью "
"настройки [member uv2_padding]. UV2 необходим для светового отображения."

msgid ""
"If [code]true[/code], the order of the vertices in each triangle is reversed, "
"resulting in the backside of the mesh being drawn.\n"
"This gives the same result as using [constant BaseMaterial3D.CULL_FRONT] in "
"[member BaseMaterial3D.cull_mode]."
msgstr ""
"Если [code]true[/code], порядок вершин в каждом треугольнике меняется на "
"обратный, в результате чего рисуется задняя сторона сетки. \n"
"Это дает тот же результат, что и использование [constant "
"BaseMaterial3D.CULL_FRONT] в [member BaseMaterial3D.cull_mode]."

msgid "The current [Material] of the primitive mesh."
msgstr "Текущий [Material] примитивной сетки."

msgid ""
"If [member add_uv2] is set, specifies the padding in pixels applied along "
"seams of the mesh. Lower padding values allow making better use of the "
"lightmap texture (resulting in higher texel density), but may introduce "
"visible lightmap bleeding along edges.\n"
"If the size of the lightmap texture can't be determined when generating the "
"mesh, UV2 is calculated assuming a texture size of 1024x1024."
msgstr ""
"Если задан [member add_uv2], задает отступ в пикселях, применяемый вдоль швов "
"сетки. Более низкие значения отступа позволяют лучше использовать текстуру "
"карты освещения (что приводит к более высокой плотности текселей), но могут "
"привести к видимому кровотечению карты освещения вдоль краев.\n"
"Если размер текстуры карты освещения не может быть определен при генерации "
"сетки, UV2 рассчитывается с учетом размера текстуры 1024x1024."

msgid "Class representing a prism-shaped [PrimitiveMesh]."
msgstr "Класс, представляющий призматическую форму [PrimitiveMesh]."

msgid ""
"Displacement of the upper edge along the X axis. 0.0 positions edge straight "
"above the bottom-left edge."
msgstr ""
"Смещение верхнего края вдоль оси X. 0,0 располагает край прямо над нижним "
"левым краем."

msgid "Size of the prism."
msgstr "Размер призмы."

msgid "Number of added edge loops along the Z axis."
msgstr "Количество добавленных краевых петель по оси Z."

msgid "Number of added edge loops along the Y axis."
msgstr "Количество добавленных краевых петель по оси Y."

msgid "Number of added edge loops along the X axis."
msgstr "Количество добавленных краевых петель по оси X."

msgid "A material that defines a simple sky for a [Sky] resource."
msgstr "Материал, определяющий простое небо для ресурса [Sky]."

msgid ""
"[ProceduralSkyMaterial] provides a way to create an effective background "
"quickly by defining procedural parameters for the sun, the sky and the "
"ground. The sky and ground are defined by a main color, a color at the "
"horizon, and an easing curve to interpolate between them. Suns are described "
"by a position in the sky, a color, and a max angle from the sun at which the "
"easing curve ends. The max angle therefore defines the size of the sun in the "
"sky.\n"
"[ProceduralSkyMaterial] supports up to 4 suns, using the color, and energy, "
"direction, and angular distance of the first four [DirectionalLight3D] nodes "
"in the scene. This means that the suns are defined individually by the "
"properties of their corresponding [DirectionalLight3D]s and globally by "
"[member sun_angle_max] and [member sun_curve].\n"
"[ProceduralSkyMaterial] uses a lightweight shader to draw the sky and is "
"therefore suited for real-time updates. This makes it a great option for a "
"sky that is simple and computationally cheap, but unrealistic. If you need a "
"more realistic procedural option, use [PhysicalSkyMaterial]."
msgstr ""
"[ProceduralSkyMaterial] предоставляет способ быстрого создания эффективного "
"фона путем определения процедурных параметров для солнца, неба и земли. Небо "
"и земля определяются основным цветом, цветом на горизонте и кривой смягчения "
"для интерполяции между ними. Солнца описываются положением на небе, цветом и "
"максимальным углом от солнца, на котором заканчивается кривая смягчения. "
"Таким образом, максимальный угол определяет размер солнца на небе.\n"
"[ProceduralSkyMaterial] поддерживает до 4 солнц, используя цвет, энергию, "
"направление и угловое расстояние первых четырех узлов [DirectionalLight3D] в "
"сцене. Это означает, что солнца определяются индивидуально свойствами "
"соответствующих им [DirectionalLight3D] и глобально [member sun_angle_max] и "
"[member sun_curve].\n"
"[ProceduralSkyMaterial] использует легкий шейдер для отрисовки неба и поэтому "
"подходит для обновлений в реальном времени. Это делает его отличным вариантом "
"для неба, которое простое и дешевое в вычислительном отношении, но "
"нереалистичное. Если вам нужен более реалистичный процедурный вариант, "
"используйте [PhysicalSkyMaterial]."

msgid ""
"Color of the ground at the bottom. Blends with [member ground_horizon_color]."
msgstr "Цвет земли внизу. Смешивается с [member ground_horizon_color]."

msgid ""
"How quickly the [member ground_horizon_color] fades into the [member "
"ground_bottom_color]."
msgstr ""
"Насколько быстро [member ground_horizon_color] переходит в [member "
"ground_bottom_color]."

msgid ""
"Multiplier for ground color. A higher value will make the ground brighter."
msgstr "Множитель для цвета земли. Более высокое значение сделает землю ярче."

msgid ""
"Color of the ground at the horizon. Blends with [member ground_bottom_color]."
msgstr "Цвет земли на горизонте. Смешивается с [member ground_bottom_color]."

msgid ""
"The sky cover texture to use. This texture must use an equirectangular "
"projection (similar to [PanoramaSkyMaterial]). The texture's colors will be "
"[i]added[/i] to the existing sky color, and will be multiplied by [member "
"sky_energy_multiplier] and [member sky_cover_modulate]. This is mainly suited "
"to displaying stars at night, but it can also be used to display clouds at "
"day or night (with a non-physically-accurate look)."
msgstr ""
"Текстура покрытия неба для использования. Эта текстура должна использовать "
"равнопромежуточную проекцию (похожую на [PanoramaSkyMaterial]). Цвета "
"текстуры будут [i]добавлены[/i] к существующему цвету неба и умножены на "
"[member sky_energy_multiplier] и [member sky_cover_modulate]. Это в основном "
"подходит для отображения звезд ночью, но также может использоваться для "
"отображения облаков днем или ночью (с нефизически точным видом)."

msgid ""
"The tint to apply to the [member sky_cover] texture. This can be used to "
"change the sky cover's colors or opacity independently of the sky energy, "
"which is useful for day/night or weather transitions. Only effective if a "
"texture is defined in [member sky_cover]."
msgstr ""
"Оттенок, применяемый к текстуре [member sky_cover]. Это можно использовать "
"для изменения цветов или непрозрачности небесного покрова независимо от "
"энергии неба, что полезно для перехода день/ночь или погодных условий. "
"Действует только в том случае, если текстура определена в [member sky_cover]."

msgid ""
"How quickly the [member sky_horizon_color] fades into the [member "
"sky_top_color]."
msgstr ""
"Как быстро [member sky_horizon_color] переходит в [member sky_top_color]."

msgid "Multiplier for sky color. A higher value will make the sky brighter."
msgstr "Множитель для цвета неба. Более высокое значение сделает небо ярче."

msgid "Color of the sky at the horizon. Blends with [member sky_top_color]."
msgstr "Цвет неба на горизонте. Смешивается с [member sky_top_color]."

msgid "Color of the sky at the top. Blends with [member sky_horizon_color]."
msgstr "Цвет неба вверху. Смешивается с [member sky_horizon_color]."

msgid "Distance from center of sun where it fades out completely."
msgstr "Расстояние от центра Солнца, где оно полностью исчезает."

msgid ""
"How quickly the sun fades away between the edge of the sun disk and [member "
"sun_angle_max]."
msgstr ""
"Как быстро солнце исчезает между краем солнечного диска и [member "
"sun_angle_max]."

msgid "A control used for visual representation of a percentage."
msgstr ""
"Элемент управления, используемый для визуального представления процента."

msgid ""
"A control used for visual representation of a percentage. Shows the fill "
"percentage in the center. Can also be used to show indeterminate progress. "
"For more fill modes, use [TextureProgressBar] instead."
msgstr ""
"Элемент управления, используемый для визуального представления процента. "
"Показывает процент заполнения в центре. Может также использоваться для "
"отображения неопределенного прогресса. Для большего количества режимов "
"заполнения используйте [TextureProgressBar]."

msgid ""
"If [code]false[/code], the [member indeterminate] animation will be paused in "
"the editor."
msgstr ""
"Если [code]false[/code], анимация [member indeterminate] будет приостановлена "
"в редакторе."

msgid "The fill direction. See [enum FillMode] for possible values."
msgstr "Направление заполнения. См. [enum FillMode] для возможных значений."

msgid ""
"When set to [code]true[/code], the progress bar indicates that something is "
"happening with an animation, but does not show the fill percentage or value."
msgstr ""
"Если установлено значение [code]true[/code], индикатор выполнения показывает, "
"что с анимацией что-то происходит, но не показывает процент или значение "
"заполнения."

msgid "If [code]true[/code], the fill percentage is displayed on the bar."
msgstr "Если [code]true[/code], процент заполнения отображается на панели."

msgid ""
"The progress bar fills from begin to end horizontally, according to the "
"language direction. If [method Control.is_layout_rtl] returns [code]false[/"
"code], it fills from left to right, and if it returns [code]true[/code], it "
"fills from right to left."
msgstr ""
"Полоса прогресса заполняется от начала до конца горизонтально, в соответствии "
"с направлением языка. Если [method Control.is_layout_rtl] возвращает "
"[code]false[/code], она заполняется слева направо, а если возвращает "
"[code]true[/code], она заполняется справа налево."

msgid ""
"The progress bar fills from end to begin horizontally, according to the "
"language direction. If [method Control.is_layout_rtl] returns [code]false[/"
"code], it fills from right to left, and if it returns [code]true[/code], it "
"fills from left to right."
msgstr ""
"Полоса прогресса заполняется от конца к началу горизонтально, в соответствии "
"с направлением языка. Если [method Control.is_layout_rtl] возвращает "
"[code]false[/code], она заполняется справа налево, а если возвращает "
"[code]true[/code], она заполняется слева направо."

msgid "The progress fills from top to bottom."
msgstr "Прогресс заполняется сверху вниз."

msgid "The progress fills from bottom to top."
msgstr "Прогресс заполняется снизу вверх."

msgid "The color of the text."
msgstr "Цвет текста."

msgid "The tint of text outline of the [ProgressBar]."
msgstr "Оттенок контура текста [ProgressBar]."

msgid ""
"Font used to draw the fill percentage if [member show_percentage] is "
"[code]true[/code]."
msgstr ""
"Шрифт, используемый для отображения процента заполнения, если [member "
"show_percentage] имеет значение [code]true[/code]."

msgid ""
"Font size used to draw the fill percentage if [member show_percentage] is "
"[code]true[/code]."
msgstr ""
"Размер шрифта, используемый для отображения процента заполнения, если [member "
"show_percentage] имеет значение [code]true[/code]."

msgid "The style of the background."
msgstr "Стиль фона."

msgid "The style of the progress (i.e. the part that fills the bar)."
msgstr "Стиль прогресса (То есть та часть, которая заполняет полосу)."

msgid "A 4×4 matrix for 3D projective transformations."
msgstr "Матрица 4×4 для трехмерных проективных преобразований."

msgid ""
"A 4×4 matrix used for 3D projective transformations. It can represent "
"transformations such as translation, rotation, scaling, shearing, and "
"perspective division. It consists of four [Vector4] columns.\n"
"For purely linear transformations (translation, rotation, and scale), it is "
"recommended to use [Transform3D], as it is more performant and requires less "
"memory.\n"
"Used internally as [Camera3D]'s projection matrix."
msgstr ""
"Матрица 4×4, используемая для 3D-проективных преобразований. Она может "
"представлять такие преобразования, как перемещение, вращение, "
"масштабирование, сдвиг и перспективное деление. Она состоит из четырех "
"столбцов [Vector4].\n"
"Для чисто линейных преобразований (перемещение, вращение и масштабирование) "
"рекомендуется использовать [Transform3D], так как она более производительна и "
"требует меньше памяти.\n"
"Используется внутренне как матрица проекции [Camera3D]."

msgid ""
"Constructs a default-initialized [Projection] identical to [constant "
"IDENTITY].\n"
"[b]Note:[/b] In C#, this constructs a [Projection] identical to [constant "
"ZERO]."
msgstr ""
"Создает инициализированную по умолчанию [Projection], идентичную [constant "
"IDENTITY].\n"
"[b]Примечание:[/b] В C# это создает [Projection], идентичную [constant ZERO]."

msgid "Constructs a [Projection] as a copy of the given [Projection]."
msgstr "Создает [Projection] как копию заданной [Projection]."

msgid "Constructs a Projection as a copy of the given [Transform3D]."
msgstr "Создает проекцию как копию заданного [Transform3D]."

msgid "Constructs a Projection from four [Vector4] values (matrix columns)."
msgstr "Создает проекцию из четырех значений [Vector4] (столбцов матрицы)."

msgid ""
"Creates a new [Projection] that projects positions from a depth range of "
"[code]-1[/code] to [code]1[/code] to one that ranges from [code]0[/code] to "
"[code]1[/code], and flips the projected positions vertically, according to "
"[param flip_y]."
msgstr ""
"Создает новую [Projection], которая проецирует позиции из диапазона глубины "
"от [code]-1[/code] до [code]1[/code] в диапазон от [code]0[/code] до [code]1[/"
"code], и переворачивает спроецированные позиции вертикально в соответствии с "
"[param flip_y]."

msgid ""
"Creates a new [Projection] that scales a given projection to fit around a "
"given [AABB] in projection space."
msgstr ""
"Создает новую [Projection], которая масштабирует заданную проекцию так, чтобы "
"она соответствовала заданному [AABB] в пространстве проекции."

msgid ""
"Creates a new [Projection] for projecting positions onto a head-mounted "
"display with the given X:Y aspect ratio, distance between eyes, display "
"width, distance to lens, oversampling factor, and depth clipping planes.\n"
"[param eye] creates the projection for the left eye when set to 1, or the "
"right eye when set to 2."
msgstr ""
"Создает новую [Projection] для проецирования позиций на шлем виртуальной "
"реальности с заданным соотношением сторон X:Y, расстоянием между глазами, "
"шириной дисплея, расстоянием до линзы, коэффициентом передискретизации и "
"плоскостями отсечения глубины.\n"
"[param eye] создает проекцию для левого глаза, если установлено значение 1, "
"или для правого глаза, если установлено значение 2."

msgid ""
"Creates a new [Projection] that projects positions in a frustum with the "
"given clipping planes."
msgstr ""
"Создает новую [Projection], которая проецирует положения в усеченной пирамиде "
"с заданными плоскостями отсечения."

msgid ""
"Creates a new [Projection] that projects positions in a frustum with the "
"given size, X:Y aspect ratio, offset, and clipping planes.\n"
"[param flip_fov] determines whether the projection's field of view is flipped "
"over its diagonal."
msgstr ""
"Создает новую [Projection], которая проецирует позиции в усеченном "
"пространстве с заданным размером, соотношением сторон X:Y, смещением и "
"плоскостями отсечения.\n"
"[param flip_fov] определяет, переворачивается ли поле зрения проекции по "
"диагонали."

msgid ""
"Creates a new [Projection] that projects positions into the given [Rect2]."
msgstr ""
"Создает новую [Projection], которая проецирует позиции в заданный [Rect2]."

msgid ""
"Creates a new [Projection] that projects positions using an orthogonal "
"projection with the given clipping planes."
msgstr ""
"Создает новую [Projection], которая проецирует положения с использованием "
"ортогональной проекции с заданными плоскостями отсечения."

msgid ""
"Creates a new [Projection] that projects positions using an orthogonal "
"projection with the given size, X:Y aspect ratio, and clipping planes.\n"
"[param flip_fov] determines whether the projection's field of view is flipped "
"over its diagonal."
msgstr ""
"Создает новую [Projection], которая проецирует позиции с использованием "
"ортогональной проекции с заданным размером, соотношением сторон X:Y и "
"плоскостями отсечения.\n"
"[param flip_fov] определяет, перевернуто ли поле зрения проекции по диагонали."

msgid ""
"Creates a new [Projection] that projects positions using a perspective "
"projection with the given Y-axis field of view (in degrees), X:Y aspect "
"ratio, and clipping planes.\n"
"[param flip_fov] determines whether the projection's field of view is flipped "
"over its diagonal."
msgstr ""
"Создает новую [Projection], которая проецирует позиции с использованием "
"перспективной проекции с заданным полем зрения оси Y (в градусах), "
"соотношением сторон X:Y и плоскостями отсечения.\n"
"[param flip_fov] определяет, перевернуто ли поле зрения проекции по диагонали."

msgid ""
"Creates a new [Projection] that projects positions using a perspective "
"projection with the given Y-axis field of view (in degrees), X:Y aspect "
"ratio, and clipping distances. The projection is adjusted for a head-mounted "
"display with the given distance between eyes and distance to a point that can "
"be focused on.\n"
"[param eye] creates the projection for the left eye when set to 1, or the "
"right eye when set to 2.\n"
"[param flip_fov] determines whether the projection's field of view is flipped "
"over its diagonal."
msgstr ""
"Создает новую [Projection], которая проецирует положения с использованием "
"перспективной проекции с заданным полем зрения оси Y (в градусах), "
"соотношением сторон X:Y и расстояниями отсечения. Проекция настраивается для "
"головного дисплея с заданным расстоянием между глазами и расстоянием до "
"точки, на которой можно сфокусироваться.\n"
"[param eye] создает проекцию для левого глаза, если установлено значение 1, "
"или для правого глаза, если установлено значение 2.\n"
"[param flip_fov] определяет, переворачивается ли поле зрения проекции по "
"диагонали."

msgid ""
"Returns a scalar value that is the signed factor by which areas are scaled by "
"this matrix. If the sign is negative, the matrix flips the orientation of the "
"area.\n"
"The determinant can be used to calculate the invertibility of a matrix or "
"solve linear systems of equations involving the matrix, among other "
"applications."
msgstr ""
"Возвращает скалярное значение, которое является знаковым множителем, на "
"который масштабируются площади этой матрицей. Если знак отрицательный, "
"матрица меняет ориентацию площади.\n"
"Определитель можно использовать для вычисления обратимости матрицы или "
"решения линейных систем уравнений, включающих матрицу, среди других "
"приложений."

msgid ""
"Returns a copy of this [Projection] with the signs of the values of the Y "
"column flipped."
msgstr ""
"Возвращает копию этой [Projection] с перевернутыми знаками значений столбца Y."

msgid "Returns the X:Y aspect ratio of this [Projection]'s viewport."
msgstr "Возвращает соотношение сторон X:Y области просмотра [Projection]."

msgid ""
"Returns the dimensions of the far clipping plane of the projection, divided "
"by two."
msgstr ""
"Возвращает размеры дальней плоскости отсечения проекции, деленные на два."

msgid "Returns the horizontal field of view of the projection (in degrees)."
msgstr "Возвращает горизонтальное поле зрения проекции (в градусах)."

msgid ""
"Returns the vertical field of view of the projection (in degrees) associated "
"with the given horizontal field of view (in degrees) and aspect ratio.\n"
"[b]Note:[/b] Unlike most methods of [Projection], [param aspect] is expected "
"to be 1 divided by the X:Y aspect ratio."
msgstr ""
"Возвращает вертикальное поле зрения проекции (в градусах), связанное с "
"заданным горизонтальным полем зрения (в градусах) и соотношением сторон.\n"
"[b]Примечание:[/b] В отличие от большинства методов [Projection], [param "
"aspects] ожидается равным 1, деленной на соотношение сторон X:Y."

msgid ""
"Returns the factor by which the visible level of detail is scaled by this "
"[Projection]."
msgstr ""
"Возвращает коэффициент, на который масштабируется видимый уровень детализации "
"этой [Projection]."

msgid ""
"Returns [param for_pixel_width] divided by the viewport's width measured in "
"meters on the near plane, after this [Projection] is applied."
msgstr ""
"Возвращает [param for_pixel_width], деленный на ширину области просмотра, "
"измеренную в метрах на ближней плоскости, после применения этой [Projection]."

msgid ""
"Returns the clipping plane of this [Projection] whose index is given by "
"[param plane].\n"
"[param plane] should be equal to one of [constant PLANE_NEAR], [constant "
"PLANE_FAR], [constant PLANE_LEFT], [constant PLANE_TOP], [constant "
"PLANE_RIGHT], or [constant PLANE_BOTTOM]."
msgstr ""
"Возвращает плоскость отсечения этой [Projection], индекс которой задан [param "
"plane].\n"
"[param plane] должен быть равен одному из [constant PLANE_NEAR], [constant "
"PLANE_FAR], [constant PLANE_LEFT], [constant PLANE_TOP], [constant "
"PLANE_RIGHT] или [constant PLANE_BOTTOM]."

msgid ""
"Returns the dimensions of the viewport plane that this [Projection] projects "
"positions onto, divided by two."
msgstr ""
"Возвращает размеры плоскости области просмотра, на которую проецируются "
"позиции этой [Projection], деленные на два."

msgid ""
"Returns the distance for this [Projection] beyond which positions are clipped."
msgstr ""
"Возвращает расстояние для данной [Projection], за пределами которого позиции "
"обрезаются."

msgid ""
"Returns the distance for this [Projection] before which positions are clipped."
msgstr ""
"Возвращает расстояние для данной [Projection], перед которым позиции "
"обрезаются."

msgid ""
"Returns a [Projection] that performs the inverse of this [Projection]'s "
"projective transformation."
msgstr ""
"Возвращает [Projection], которая выполняет обратное проективное "
"преобразование данной [Projection]."

msgid ""
"Returns [code]true[/code] if this [Projection] performs an orthogonal "
"projection."
msgstr ""
"Возвращает [code]true[/code], если эта [Projection] выполняет ортогональную "
"проекцию."

msgid ""
"Returns a [Projection] with the X and Y values from the given [Vector2] added "
"to the first and second values of the final column respectively."
msgstr ""
"Возвращает [Projection] со значениями X и Y из заданного [Vector2], "
"добавленными к первому и второму значениям конечного столбца соответственно."

msgid ""
"Returns a [Projection] with the near clipping distance adjusted to be [param "
"new_znear].\n"
"[b]Note:[/b] The original [Projection] must be a perspective projection."
msgstr ""
"Возвращает [Projection] с ближним расстоянием отсечения, настроенным на "
"[param new_znear].\n"
"[b]Примечание:[/b] Исходная [Projection] должна быть перспективной проекцией."

msgid ""
"The projection matrix's W vector (column 3). Equivalent to array index "
"[code]3[/code]."
msgstr ""
"Вектор W матрицы проекции (столбец 3). Эквивалентно индексу массива [code]3[/"
"code]."

msgid ""
"The projection matrix's X vector (column 0). Equivalent to array index "
"[code]0[/code]."
msgstr ""
"Вектор X матрицы проекции (столбец 0). Эквивалентно индексу массива [code]0[/"
"code]."

msgid ""
"The projection matrix's Y vector (column 1). Equivalent to array index "
"[code]1[/code]."
msgstr ""
"Вектор Y матрицы проекции (столбец 1). Эквивалентно индексу массива [code]1[/"
"code]."

msgid ""
"The projection matrix's Z vector (column 2). Equivalent to array index "
"[code]2[/code]."
msgstr ""
"Вектор Z матрицы проекции (столбец 2). Эквивалентно индексу массива [code]2[/"
"code]."

msgid "The index value of the projection's near clipping plane."
msgstr "Значение индекса ближней плоскости отсечения проекции."

msgid "The index value of the projection's far clipping plane."
msgstr "Значение индекса дальней плоскости отсечения проекции."

msgid "The index value of the projection's left clipping plane."
msgstr "Значение индекса левой плоскости отсечения проекции."

msgid "The index value of the projection's top clipping plane."
msgstr "Значение индекса левой плоскости отсечения проекции."

msgid "The index value of the projection's right clipping plane."
msgstr "Значение индекса правой плоскости отсечения проекции."

msgid "The index value of the projection bottom clipping plane."
msgstr "Значение индекса нижней плоскости отсечения проекции."

msgid ""
"A [Projection] with no transformation defined. When applied to other data "
"structures, no transformation is performed."
msgstr ""
"[Projection] без определенного преобразования. При применении к другим "
"структурам данных преобразование не выполняется."

msgid ""
"A [Projection] with all values initialized to 0. When applied to other data "
"structures, they will be zeroed."
msgstr ""
"[Projection] со всеми значениями, инициализированными до 0. При применении к "
"другим структурам данных они будут обнулены."

msgid ""
"Returns [code]true[/code] if the projections are not equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, this may return "
"[code]true[/code], even if the projections are virtually equal. An "
"[code]is_equal_approx[/code] method may be added in a future version of Godot."
msgstr ""
"Возвращает [code]true[/code], если проекции не равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой это может вернуть "
"[code]true[/code], даже если проекции фактически равны. Метод "
"[code]is_equal_approx[/code] может быть добавлен в будущей версии Godot."

msgid ""
"Returns a [Projection] that applies the combined transformations of this "
"[Projection] and [param right]."
msgstr ""
"Возвращает [Projection], которая применяет комбинированные преобразования "
"этой [Projection] и [param right]."

msgid "Projects (multiplies) the given [Vector4] by this [Projection] matrix."
msgstr ""
"Проецирует (умножает) заданный [Vector4] на данную матрицу [Projection]."

msgid ""
"Returns [code]true[/code] if the projections are equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, this may return "
"[code]false[/code], even if the projections are virtually equal. An "
"[code]is_equal_approx[/code] method may be added in a future version of Godot."
msgstr ""
"Возвращает [code]true[/code], если проекции равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой это может вернуть "
"[code]false[/code], даже если проекции фактически равны. Метод "
"[code]is_equal_approx[/code] может быть добавлен в будущей версии Godot."

msgid ""
"Returns the column of the [Projection] with the given index.\n"
"Indices are in the following order: x, y, z, w."
msgstr ""
"Возвращает столбец [Projection] с заданным индексом.\n"
"Индексы имеют следующий порядок: x, y, z, w."

msgid "Stores globally-accessible variables."
msgstr "Хранит глобально доступные переменные."

msgid ""
"Stores variables that can be accessed from everywhere. Use [method "
"get_setting], [method set_setting] or [method has_setting] to access them. "
"Variables stored in [code]project.godot[/code] are also loaded into "
"[ProjectSettings], making this object very useful for reading custom game "
"configuration options.\n"
"When naming a Project Settings property, use the full path to the setting "
"including the category. For example, [code]\"application/config/name\"[/code] "
"for the project name. Category and property names can be viewed in the "
"Project Settings dialog.\n"
"[b]Feature tags:[/b] Project settings can be overridden for specific "
"platforms and configurations (debug, release, ...) using [url=$DOCS_URL/"
"tutorials/export/feature_tags.html]feature tags[/url].\n"
"[b]Overriding:[/b] Any project setting can be overridden by creating a file "
"named [code]override.cfg[/code] in the project's root directory. This can "
"also be used in exported projects by placing this file in the same directory "
"as the project binary. Overriding will still take the base project settings' "
"[url=$DOCS_URL/tutorials/export/feature_tags.html]feature tags[/url] in "
"account. Therefore, make sure to [i]also[/i] override the setting with the "
"desired feature tags if you want them to override base project settings on "
"all platforms and configurations."
msgstr ""
"Сохраняет переменные, к которым можно получить доступ отовсюду. Используйте "
"[method get_setting], [method set_setting] или [method has_setting] для "
"доступа к ним. Переменные, хранящиеся в [code]project.godot[/code], также "
"загружаются в [ProjectSettings], что делает этот объект очень полезным для "
"чтения пользовательских параметров конфигурации игры.\n"
"При именовании свойства Project Settings используйте полный путь к настройке, "
"включая категорию. Например, [code]\"application/config/name\"[/code] для "
"имени проекта. Имена категорий и свойств можно просмотреть в диалоговом окне "
"Project Settings.\n"
"[b]Теги функций:[/b] Настройки проекта можно переопределить для определенных "
"платформ и конфигураций (отладка, выпуск, ...) с помощью [url=$DOCS_URL/"
"tutorials/export/feature_tags.html]тегов функций[/url].\n"
"[b]Переопределение:[/b] Любую настройку проекта можно переопределить, создав "
"файл с именем [code]override.cfg[/code] в корневом каталоге проекта. Это "
"также можно использовать в экспортированных проектах, поместив этот файл в "
"тот же каталог, что и двоичный файл проекта. Переопределение по-прежнему "
"будет учитывать [url=$DOCS_URL/tutorials/export/feature_tags.html]теги "
"функций[/url] базовых настроек проекта в учетной записи. Поэтому не забудьте "
"[i]также[/i] переопределить настройку с помощью нужных тегов функций, если вы "
"хотите, чтобы они переопределяли базовые настройки проекта на всех платформах "
"и конфигурациях."

msgid "Project Settings"
msgstr "Настройки проекта"

msgid ""
"Adds a custom property info to a property. The dictionary must contain:\n"
"- [code]\"name\"[/code]: [String] (the property's name)\n"
"- [code]\"type\"[/code]: [int] (see [enum Variant.Type])\n"
"- optionally [code]\"hint\"[/code]: [int] (see [enum PropertyHint]) and [code]"
"\"hint_string\"[/code]: [String]\n"
"[codeblocks]\n"
"[gdscript]\n"
"ProjectSettings.set(\"category/property_name\", 0)\n"
"\n"
"var property_info = {\n"
"\t\"name\": \"category/property_name\",\n"
"\t\"type\": TYPE_INT,\n"
"\t\"hint\": PROPERTY_HINT_ENUM,\n"
"\t\"hint_string\": \"one,two,three\"\n"
"}\n"
"\n"
"ProjectSettings.add_property_info(property_info)\n"
"[/gdscript]\n"
"[csharp]\n"
"ProjectSettings.Singleton.Set(\"category/property_name\", 0);\n"
"\n"
"var propertyInfo = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"name\", \"category/propertyName\" },\n"
"\t{ \"type\", (int)Variant.Type.Int },\n"
"\t{ \"hint\", (int)PropertyHint.Enum },\n"
"\t{ \"hint_string\", \"one,two,three\" },\n"
"};\n"
"\n"
"ProjectSettings.AddPropertyInfo(propertyInfo);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] Setting [code]\"usage\"[/code] for the property is not "
"supported. Use [method set_as_basic], [method set_restart_if_changed], and "
"[method set_as_internal] to modify usage flags."
msgstr ""
"Добавляет информацию о пользовательском свойстве к свойству. Словарь должен "
"содержать:\n"
"- [code]\"name\"[/code]: [String] (имя свойства)\n"
"- [code]\"type\"[/code]: [int] (см. [enum Variant.Type])\n"
"- опционально [code]\"hint\"[/code]: [int] (см. [enum PropertyHint]) и [code]"
"\"hint_string\"[/code]: [String]\n"
"[codeblocks]\n"
"[gdscript]\n"
"ProjectSettings.set(\"category/property_name\", 0)\n"
"\n"
"var property_info = {\n"
"\t\"name\": \"category/property_name\",\n"
"\t\"type\": TYPE_INT,\n"
"\t\"hint\": PROPERTY_HINT_ENUM,\n"
"\t\"hint_string\": \"one,two,three\"\n"
"}\n"
"\n"
"ProjectSettings.add_property_info(property_info)\n"
"[/gdscript]\n"
"[csharp]\n"
"ProjectSettings.Singleton.Set(\"category/property_name\", 0);\n"
"\n"
"var propertyInfo = new Godot.Collections.Dictionary\n"
"{\n"
"\t{ \"name\", \"category/propertyName\" },\n"
"\t{ \"type\", (int)Variant.Type.Int },\n"
"\t{ \"hint\", (int)PropertyHint.Enum },\n"
"\t{ \"hint_string\", \"one,two,three\" },\n"
"};\n"
"\n"
"ProjectSettings.AddPropertyInfo(propertyInfo);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Установка [code]\"usage\"[/code] для свойства не "
"поддерживается. Для изменения флагов \"usage\", используйте [method "
"set_as_basic], [method set_restart_if_changed] и [method set_as_internal]."

msgid "Clears the whole configuration (not recommended, may break things)."
msgstr "Очищает всю конфигурацию (не рекомендуется, может что-то сломать)."

msgid ""
"Returns an [Array] of registered global classes. Each global class is "
"represented as a [Dictionary] that contains the following entries:\n"
"- [code]base[/code] is a name of the base class;\n"
"- [code]class[/code] is a name of the registered global class;\n"
"- [code]icon[/code] is a path to a custom icon of the global class, if it has "
"any;\n"
"- [code]language[/code] is a name of a programming language in which the "
"global class is written;\n"
"- [code]path[/code] is a path to a file containing the global class.\n"
"[b]Note:[/b] Both the script and the icon paths are local to the project "
"filesystem, i.e. they start with [code]res://[/code]."
msgstr ""
"Возвращает [Array] зарегистрированных глобальных классов. Каждый глобальный "
"класс представлен как [Dictionary], который содержит следующие записи:\n"
"- [code]base[/code] — имя базового класса;\n"
"- [code]class[/code] — имя зарегистрированного глобального класса;\n"
"- [code]icon[/code] — путь к пользовательскому значку глобального класса, "
"если он есть;\n"
"- [code]language[/code] — имя языка программирования, на котором написан "
"глобальный класс;\n"
"- [code]path[/code] — путь к файлу, содержащему глобальный класс.\n"
"[b]Примечание:[/b] Пути к скрипту и значку являются локальными для файловой "
"системы проекта, т. е. они начинаются с [code]res://[/code]."

msgid ""
"Returns the order of a configuration value (influences when saved to the "
"config file)."
msgstr ""
"Возвращает порядок значения конфигурации (влияет при сохранении в файле "
"конфигурации)."

msgid ""
"Returns the value of the setting identified by [param name]. If the setting "
"doesn't exist and [param default_value] is specified, the value of [param "
"default_value] is returned. Otherwise, [code]null[/code] is returned.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(ProjectSettings.get_setting(\"application/config/name\"))\n"
"print(ProjectSettings.get_setting(\"application/config/custom_description\", "
"\"No description specified.\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(ProjectSettings.GetSetting(\"application/config/name\"));\n"
"GD.Print(ProjectSettings.GetSetting(\"application/config/"
"custom_description\", \"No description specified.\"));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method doesn't take potential feature overrides into "
"account automatically. Use [method get_setting_with_override] to handle "
"seamlessly.\n"
"See also [method has_setting] to check whether a setting exists."
msgstr ""
"Возвращает значение параметра, идентифицированного [param name]. Если "
"параметр не существует и указано [param default_value], возвращается значение "
"[param default_value]. В противном случае возвращается [code]null[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(ProjectSettings.get_setting(\"application/config/name\"))\n"
"print(ProjectSettings.get_setting(\"application/config/custom_description\", "
"\"Описание не указано.\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(ProjectSettings.GetSetting(\"application/config/name\"));\n"
"GD.Print(ProjectSettings.GetSetting(\"application/config/"
"custom_description\", \"Описание не указано.\"));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Этот метод не учитывает потенциальные переопределения "
"функций автоматически. Используйте [method get_setting_with_override] для "
"бесшовной обработки.\n"
"См. также [method has_setting] для проверки существования настройки."

msgid ""
"Similar to [method get_setting], but applies feature tag overrides if any "
"exists and is valid.\n"
"[b]Example:[/b] If the setting override [code]\"application/config/"
"name.windows\"[/code] exists, and the following code is executed on a "
"[i]Windows[/i] operating system, the overridden setting is printed instead:\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(ProjectSettings.get_setting_with_override(\"application/config/"
"name\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(ProjectSettings.GetSettingWithOverride(\"application/config/"
"name\"));\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Аналогично [method get_setting], но применяет переопределения тегов функций, "
"если таковые существуют и допустимы.\n"
"[b]Пример:[/b] Если переопределение настройки [code]\"application/config/"
"name.windows\"[/code] существует, и следующий код выполняется в операционной "
"системе [i]Windows[/i], вместо этого выводится переопределенная настройка:\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(ProjectSettings.get_setting_with_override(\"application/config/"
"name\"))\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(ProjectSettings.GetSettingWithOverride(\"application/config/"
"name\"));\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Similar to [method get_setting_with_override], but applies feature tag "
"overrides instead of current OS features."
msgstr ""
"Аналогично [method get_setting_with_override], но применяет переопределения "
"тегов функций вместо текущих функций ОС."

msgid ""
"Returns the absolute, native OS path corresponding to the localized [param "
"path] (starting with [code]res://[/code] or [code]user://[/code]). The "
"returned path will vary depending on the operating system and user "
"preferences. See [url=$DOCS_URL/tutorials/io/data_paths.html]File paths in "
"Godot projects[/url] to see what those paths convert to. See also [method "
"localize_path].\n"
"[b]Note:[/b] [method globalize_path] with [code]res://[/code] will not work "
"in an exported project. Instead, prepend the executable's base directory to "
"the path when running from an exported project:\n"
"[codeblock]\n"
"var path = \"\"\n"
"if OS.has_feature(\"editor\"):\n"
"\t# Running from an editor binary.\n"
"\t# `path` will contain the absolute path to `hello.txt` located in the "
"project root.\n"
"\tpath = ProjectSettings.globalize_path(\"res://hello.txt\")\n"
"else:\n"
"\t# Running from an exported project.\n"
"\t# `path` will contain the absolute path to `hello.txt` next to the "
"executable.\n"
"\t# This is *not* identical to using `ProjectSettings.globalize_path()` with "
"a `res://` path,\n"
"\t# but is close enough in spirit.\n"
"\tpath = OS.get_executable_path().get_base_dir().path_join(\"hello.txt\")\n"
"[/codeblock]"
msgstr ""
"Возвращает абсолютный, собственный путь ОС, соответствующий локализованному "
"[param path] (начинающемуся с [code]res://[/code] или [code]user://[/code]). "
"Возвращаемый путь будет зависеть от операционной системы и предпочтений "
"пользователя. См. [url=$DOCS_URL/tutorials/io/data_paths.html]Пути к файлам в "
"проектах Godot[/url], чтобы узнать, во что преобразуются эти пути. См. также "
"[method localize_path].\n"
"[b]Примечание:[/b] [method globalize_path] с [code]res://[/code] не будет "
"работать в экспортированном проекте. Вместо этого добавьте базовый каталог "
"исполняемого файла к пути при запуске из экспортированного проекта:\n"
"[codeblock]\n"
"var path = \"\"\n"
"if OS.has_feature(\"editor\"):\n"
"\t# Запуск из двоичного редактора.\n"
"\t# `path` будет содержать абсолютный путь к `hello.txt`, расположенному в "
"корне проекта.\n"
"\tpath = ProjectSettings.globalize_path(\"res://hello.txt\")\n"
"else:\n"
"\t# Запуск из экспортированного проекта.\n"
"\t# `path` будет содержать абсолютный путь к `hello.txt` рядом с исполняемым "
"файлом.\n"
"\t# Это *не* идентично использованию `ProjectSettings.globalize_path()` с "
"путем `res://`,\n"
"\t# но достаточно близок по духу.\n"
"\tpath = OS.get_executable_path().get_base_dir().path_join(\"hello.txt\")\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if a configuration value is present.\n"
"[b]Note:[/b] In order to be be detected, custom settings have to be either "
"defined with [method set_setting], or exist in the [code]project.godot[/code] "
"file. This is especially relevant when using [method set_initial_value]."
msgstr ""
"Возвращает [code]true[/code], если присутствует значение конфигурации.\n"
"[b]Примечание:[/b] Для обнаружения пользовательские настройки должны быть "
"либо определены с помощью [method set_setting], либо существовать в файле "
"[code]project.godot[/code]. Это особенно актуально при использовании [method "
"set_initial_value]."

msgid ""
"Loads the contents of the .pck or .zip file specified by [param pack] into "
"the resource filesystem ([code]res://[/code]). Returns [code]true[/code] on "
"success.\n"
"[b]Note:[/b] If a file from [param pack] shares the same path as a file "
"already in the resource filesystem, any attempts to load that file will use "
"the file from [param pack] unless [param replace_files] is set to "
"[code]false[/code].\n"
"[b]Note:[/b] The optional [param offset] parameter can be used to specify the "
"offset in bytes to the start of the resource pack. This is only supported "
"for .pck files.\n"
"[b]Note:[/b] [DirAccess] will not show changes made to the contents of "
"[code]res://[/code] after calling this function."
msgstr ""
"Загружает содержимое файла .pck или .zip, указанного [param pack], в файловую "
"систему ресурсов ([code]res://[/code]). Возвращает [code]true[/code] в случае "
"успеха.\n"
"[b]Примечание:[/b] Если файл из [param pack] имеет тот же путь, что и файл, "
"уже находящийся в файловой системе ресурсов, любые попытки загрузить этот "
"файл будут использовать файл из [param pack], если только [param "
"replace_files] не установлен в [code]false[/code].\n"
"[b]Примечание:[/b] Необязательный параметр [param offset] можно использовать "
"для указания смещения в байтах до начала пакета ресурсов. Это поддерживается "
"только для файлов .pck.\n"
"[b]Примечание:[/b] [DirAccess] не будет отображать изменения, внесенные в "
"содержимое [code]res://[/code] после вызова этой функции."

msgid ""
"Returns the localized path (starting with [code]res://[/code]) corresponding "
"to the absolute, native OS [param path]. See also [method globalize_path]."
msgstr ""
"Возвращает локализованный путь (начинающийся с [code]res://[/code]), "
"соответствующий абсолютному, нативному пути ОС [param path]. См. также "
"[method globalize_path]."

msgid ""
"Saves the configuration to the [code]project.godot[/code] file.\n"
"[b]Note:[/b] This method is intended to be used by editor plugins, as "
"modified [ProjectSettings] can't be loaded back in the running app. If you "
"want to change project settings in exported projects, use [method "
"save_custom] to save [code]override.cfg[/code] file."
msgstr ""
"Сохраняет конфигурацию в файле [code]project.godot[/code].\n"
"[b]Примечание:[/b] Этот метод предназначен для использования плагинами "
"редактора, поскольку измененные [ProjectSettings] не могут быть загружены "
"обратно в работающее приложение. Если вы хотите изменить настройки проекта в "
"экспортированных проектах, используйте [method save_custom] для сохранения "
"файла [code]override.cfg[/code]."

msgid ""
"Saves the configuration to a custom file. The file extension must be "
"[code].godot[/code] (to save in text-based [ConfigFile] format) or "
"[code].binary[/code] (to save in binary format). You can also save "
"[code]override.cfg[/code] file, which is also text, but can be used in "
"exported projects unlike other formats."
msgstr ""
"Сохраняет конфигурацию в пользовательский файл. Расширение файла должно быть "
"[code].godot[/code] (для сохранения в текстовом формате [ConfigFile]) или "
"[code].binary[/code] (для сохранения в двоичном формате). Вы также можете "
"сохранить файл [code]override.cfg[/code], который также является текстовым, "
"но может использоваться в экспортированных проектах в отличие от других "
"форматов."

msgid ""
"Defines if the specified setting is considered basic or advanced. Basic "
"settings will always be shown in the project settings. Advanced settings will "
"only be shown if the user enables the \"Advanced Settings\" option."
msgstr ""
"Определяет, считается ли указанная настройка базовой или расширенной. Базовые "
"настройки всегда будут отображаться в настройках проекта. Расширенные "
"настройки будут отображаться только в том случае, если пользователь включит "
"опцию «Расширенные настройки»."

msgid ""
"Defines if the specified setting is considered internal. An internal setting "
"won't show up in the Project Settings dialog. This is mostly useful for "
"addons that need to store their own internal settings without exposing them "
"directly to the user."
msgstr ""
"Определяет, считается ли указанная настройка внутренней. Внутренняя настройка "
"не будет отображаться в диалоговом окне «Параметры проекта». Это в основном "
"полезно для дополнений, которым необходимо хранить собственные внутренние "
"настройки, не предоставляя их напрямую пользователю."

msgid ""
"Sets the specified setting's initial value. This is the value the setting "
"reverts to. The setting should already exist before calling this method. Note "
"that project settings equal to their default value are not saved, so your "
"code needs to account for that.\n"
"[codeblock]\n"
"extends EditorPlugin\n"
"\n"
"const SETTING_NAME = \"addons/my_setting\"\n"
"const SETTING_DEFAULT = 10.0\n"
"\n"
"func _enter_tree():\n"
"\tif not ProjectSettings.has_setting(SETTING_NAME):\n"
"\t\tProjectSettings.set_setting(SETTING_NAME, SETTING_DEFAULT)\n"
"\n"
"\tProjectSettings.set_initial_value(SETTING_NAME, SETTING_DEFAULT)\n"
"[/codeblock]\n"
"If you have a project setting defined by an [EditorPlugin], but want to use "
"it in a running project, you will need a similar code at runtime."
msgstr ""
"Устанавливает начальное значение указанного параметра. Это значение, к "
"которому возвращается параметр. Параметр должен уже существовать до вызова "
"этого метода. Обратите внимание, что параметры проекта, равные их значению по "
"умолчанию, не сохраняются, поэтому ваш код должен это учитывать.\n"
"[codeblock]\n"
"extends EditorPlugin\n"
"\n"
"const SETTING_NAME = \"addons/my_setting\"\n"
"const SETTING_DEFAULT = 10.0\n"
"\n"
"func _enter_tree():\n"
"\tif not ProjectSettings.has_setting(SETTING_NAME):\n"
"\t\tProjectSettings.set_setting(SETTING_NAME, SETTING_DEFAULT)\n"
"\n"
"\tProjectSettings.set_initial_value(SETTING_NAME, SETTING_DEFAULT)\n"
"[/codeblock]\n"
"Если у вас есть настройка проекта, определенная с помощью [EditorPlugin], но "
"вы хотите использовать ее в работающем проекте, вам понадобится аналогичный "
"код во время выполнения."

msgid ""
"Sets the order of a configuration value (influences when saved to the config "
"file)."
msgstr ""
"Устанавливает порядок значения конфигурации (влияет при сохранении в файле "
"конфигурации)."

msgid ""
"Sets whether a setting requires restarting the editor to properly take "
"effect.\n"
"[b]Note:[/b] This is just a hint to display to the user that the editor must "
"be restarted for changes to take effect. Enabling [method "
"set_restart_if_changed] does [i]not[/i] delay the setting being set when "
"changed."
msgstr ""
"Устанавливает, требуется ли перезапуск редактора для правильного вступления в "
"силу настройки.\n"
"[b]Примечание:[/b] Это просто подсказка для отображения пользователю того, "
"что редактор необходимо перезапустить для вступления изменений в силу. "
"Включение [method set_restart_if_changed] [i]не[/i] задерживает установку "
"настройки при ее изменении."

msgid ""
"Sets the value of a setting.\n"
"[codeblocks]\n"
"[gdscript]\n"
"ProjectSettings.set_setting(\"application/config/name\", \"Example\")\n"
"[/gdscript]\n"
"[csharp]\n"
"ProjectSettings.SetSetting(\"application/config/name\", \"Example\");\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This can also be used to erase custom project settings. To do this change the "
"setting value to [code]null[/code]."
msgstr ""
"Устанавливает значение настройки.\n"
"[codeblocks]\n"
"[gdscript]\n"
"ProjectSettings.set_setting(\"application/config/name\", \"Example\")\n"
"[/gdscript]\n"
"[csharp]\n"
"ProjectSettings.SetSetting(\"application/config/name\", \"Example\");\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Это также можно использовать для удаления пользовательских настроек проекта. "
"Для этого измените значение настройки на [code]null[/code]."

msgid ""
"Accessibility support mode:\n"
"- [b]Auto[/b] ([code]0[/code]): Accessibility support is enabled, but updates "
"to the accessibility information are processed only if an assistive app (such "
"as a screen reader or a Braille display) is active (default).\n"
"- [b]Always Active[/b] ([code]1[/code]): Accessibility support is enabled, "
"and updates to the accessibility information are always processed, regardless "
"of the status of assistive apps.\n"
"- [b]Disabled[/b] ([code]2[/code]): Accessibility support is fully disabled.\n"
"[b]Note:[/b] Accessibility debugging tools, such as Accessibility Insights "
"for Windows, Accessibility Inspector (macOS), or AT-SPI Browser (Linux/BSD) "
"do not count as assistive apps. To test your project with these tools, use "
"[b]Always Active[/b]."
msgstr ""
"Режим поддержки доступности:\n"
"- [b]Auto[/b] ([code]0[/code]): Поддержка специальных возможностей включена, "
"но обновления информации о специальных возможностях обрабатываются только в "
"том случае, если активно вспомогательное приложение (например, программа "
"чтения с экрана или дисплей Брайля) (по умолчанию).\n"
"- [b]Always Active[/b] ([code]1[/code]): Поддержка специальных возможностей "
"включена, и обновления информации о специальных возможностях всегда "
"обрабатываются независимо от статуса вспомогательных приложений.\n"
"- [b]Disabled[/b] ([code]2[/code]): Поддержка специальных возможностей "
"полностью отключена.\n"
"[b]Примечание:[/b] Инструменты отладки доступности, такие как Accessibility "
"Insights для Windows, Accessibility Inspector (macOS) или AT-SPI Browser "
"(Linux/BSD), не считаются вспомогательными приложениями. Чтобы протестировать "
"свой проект с помощью этих инструментов, используйте [b]Always Active[/b]."

msgid "The number of accessibility information updates per second."
msgstr "Количество обновлений информации о доступности в секунду."

msgid ""
"If [code]true[/code], [AnimationMixer] prints the warning of interpolation "
"being forced to choose the shortest rotation path due to multiple angle "
"interpolation types being mixed in the [AnimationMixer] cache."
msgstr ""
"Если [code]true[/code], [AnimationMixer] выводит предупреждение о том, что "
"интерполяция вынуждена выбирать кратчайший путь вращения из-за смешивания "
"нескольких типов угловой интерполяции в кэше [AnimationMixer]."

msgid ""
"If [code]true[/code], [AnimationMixer] prints the warning of no matching "
"object of the track path in the scene."
msgstr ""
"Если [code]true[/code], [AnimationMixer] выводит предупреждение об отсутствии "
"соответствующего объекта траектории дорожки в сцене."

msgid "Background color for the boot splash."
msgstr "Цвет фона для заставки."

msgid ""
"If [code]true[/code], scale the boot splash image to the full window size "
"(preserving the aspect ratio) when the engine starts. If [code]false[/code], "
"the engine will leave it at the default pixel size."
msgstr ""
"Если [code]true[/code], масштабировать изображение заставки загрузки до "
"полного размера окна (сохраняя соотношение сторон) при запуске движка. Если "
"[code]false[/code], движок оставит его с размером пикселей по умолчанию."

msgid ""
"Path to an image used as the boot splash. If left empty, the default Godot "
"Engine splash will be displayed instead.\n"
"[b]Note:[/b] Only effective if [member application/boot_splash/show_image] is "
"[code]true[/code].\n"
"[b]Note:[/b] The only supported format is PNG. Using another image format "
"will result in an error.\n"
"[b]Note:[/b] The image will also show when opening the project in the editor. "
"If you want to display the default splash image in the editor, add an empty "
"override for [code]editor_hint[/code] feature."
msgstr ""
"Путь к изображению, используемому в качестве заставки загрузки. Если оставить "
"пустым, вместо нее будет отображаться заставка Godot Engine по умолчанию.\n"
"[b]Примечание:[/b] Эффективно только если [member application/boot_splash/"
"show_image] равно [code]true[/code].\n"
"[b]Примечание:[/b] Поддерживается только формат PNG. Использование другого "
"формата изображения приведет к ошибке.\n"
"[b]Примечание:[/b] Изображение также будет отображаться при открытии проекта "
"в редакторе. Если вы хотите отобразить заставку по умолчанию в редакторе, "
"добавьте пустое переопределение для функции [code]editor_hint[/code]."

msgid ""
"Minimum boot splash display time (in milliseconds). It is not recommended to "
"set too high values for this setting."
msgstr ""
"Минимальное время отображения заставки загрузки (в миллисекундах). Не "
"рекомендуется устанавливать слишком высокие значения для этого параметра."

msgid ""
"If [code]true[/code], displays the image specified in [member application/"
"boot_splash/image] when the engine starts. If [code]false[/code], only "
"displays the plain color specified in [member application/boot_splash/"
"bg_color]."
msgstr ""
"Если [code]true[/code], при запуске двигателя отображается изображение, "
"указанное в [member application/boot_splash/image]. Если [code]false[/code], "
"отображается только простой цвет, указанный в [member application/boot_splash/"
"bg_color]."

msgid ""
"If [code]true[/code], applies linear filtering when scaling the image "
"(recommended for high-resolution artwork). If [code]false[/code], uses "
"nearest-neighbor interpolation (recommended for pixel art)."
msgstr ""
"Если [code]true[/code], применяет линейную фильтрацию при масштабировании "
"изображения (рекомендуется для произведений искусства с высоким разрешением). "
"Если [code]false[/code], использует интерполяцию по ближайшему соседу "
"(рекомендуется для пиксельной графики)."

msgid ""
"If [code]true[/code], the application automatically accepts quitting requests."
msgstr ""
"Если [code]включено[/code], приложение будет автоматически подтверждать выход."

msgid ""
"This user directory is used for storing persistent data ([code]user://[/code] "
"filesystem). If a custom directory name is defined, this name will be "
"appended to the system-specific user data directory (same parent folder as "
"the Godot configuration folder documented in [method OS.get_user_data_dir]).\n"
"The [member application/config/use_custom_user_dir] setting must be enabled "
"for this to take effect.\n"
"[b]Note:[/b] If [member application/config/custom_user_dir_name] contains "
"trailing periods, they will be stripped as folder names ending with a period "
"are not allowed on Windows."
msgstr ""
"Этот пользовательский каталог используется для хранения постоянных данных "
"(файловая система [code]user://[/code]). Если определено имя "
"пользовательского каталога, это имя будет добавлено к системному каталогу "
"пользовательских данных (та же родительская папка, что и папка конфигурации "
"Godot, описанная в [method OS.get_user_data_dir]).\n"
"Для того чтобы это вступило в силу, необходимо включить параметр [member "
"application/config/use_custom_user_dir].\n"
"[b]Примечание:[/b] Если [member application/config/custom_user_dir_name] "
"содержит конечные точки, они будут удалены, поскольку имена папок, "
"заканчивающиеся на точку, не допускаются в Windows."

msgid ""
"The project's description, displayed as a tooltip in the Project Manager when "
"hovering the project."
msgstr ""
"Описание проекта, отображаемое в виде всплывающей подсказки в Менеджере "
"Проектов при наведении на проект."

msgid ""
"Icon used for the project, set when project loads. Exporters will also use "
"this icon as a fallback if necessary."
msgstr ""
"Иконка, используемая для проекта, устанавливается при загрузке проекта. При "
"необходимости экспортеры также будут использовать этот значок в качестве "
"запасного варианта."

msgid ""
"Icon set in [code].icns[/code] format used on macOS to set the game's icon. "
"This is done automatically on start by calling [method "
"DisplayServer.set_native_icon]."
msgstr ""
"Установить иконку в формате [code].icns[/code], используемую в macOS в "
"качестве иконки приложения. Это делается автоматически при запуске путем "
"вызова метода [method DisplayServer.set_native_icon]."

msgid ""
"The project's name. It is used both by the Project Manager and by exporters. "
"The project name can be translated by translating its value in localization "
"files. The window title will be set to match the project name automatically "
"on startup.\n"
"[b]Note:[/b] Changing this value will also change the user data folder's path "
"if [member application/config/use_custom_user_dir] is [code]false[/code]. "
"After renaming the project, you will no longer be able to access existing "
"data in [code]user://[/code] unless you rename the old folder to match the "
"new project name. See [url=$DOCS_URL/tutorials/io/data_paths.html]Data paths[/"
"url] in the documentation for more information."
msgstr ""
"Название проекта. Используется как менеджером проекта, так и при экспорте. "
"Имя проекта может быть переведено путем перевода его названия в файлах "
"локализации. При запуске заголовок окна автоматически устанавливается в "
"соответствии с названием проекта.\n"
"[b]Примечание:[/b] Изменение этого значения также изменит путь к папке данных "
"пользователя, если параметр [member application/config/use_custom_user_dir] "
"имеет значение [code]выключен[/code]. После переименования проекта вы больше "
"не сможете получить доступ к существующим данным в [code]user://[/code], если "
"не переименуете старую папку в соответствии с новым именем проекта. "
"Дополнительные сведения см. в разделе [url=$DOCS_URL/tutorials/io/"
"data_paths.html]Пути данных[/url] в документации."

msgid ""
"Translations of the project's name. This setting is used by OS tools to "
"translate application name on Android, iOS and macOS."
msgstr ""
"Локализированное названия проекта. Эта настройка используется инструментами "
"ОС для перевода названия приложения на Android, iOS и macOS."

msgid ""
"Specifies a file to override project settings. For example: [code]user://"
"custom_settings.cfg[/code]. See \"Overriding\" in the [ProjectSettings] class "
"description at the top for more information.\n"
"[b]Note:[/b] Regardless of this setting's value, [code]res://override.cfg[/"
"code] will still be read to override the project settings."
msgstr ""
"Указывает файл для переопределения настроек проекта. Например: [code]user://"
"custom_settings.cfg[/code]. См. «Переопределение» в описании класса "
"[ProjectSettings] вверху для получения дополнительной информации.\n"
"[b]Примечание:[/b] Независимо от значения этого параметра, [code]res://"
"override.cfg[/code] все равно будет прочитан для переопределения настроек "
"проекта."

msgid ""
"If [code]true[/code], the application quits automatically when navigating "
"back (e.g. using the system \"Back\" button on Android)."
msgstr ""
"Если [code]включено[/code], приложение автоматически закроется при переходе "
"назад (например, с помощью системной кнопки \"Назад\" на Android)."

msgid ""
"If [code]true[/code], the project will save user data to its own user "
"directory. If [member application/config/custom_user_dir_name] is empty, "
"[code]<OS user data directory>/<project name>[/code] directory will be used. "
"If [code]false[/code], the project will save user data to [code]<OS user data "
"directory>/Godot/app_userdata/<project name>[/code].\n"
"See also [url=$DOCS_URL/tutorials/io/data_paths.html#accessing-persistent-"
"user-data-user]File paths in Godot projects[/url]. This setting is only "
"effective on desktop platforms."
msgstr ""
"Если [code]включено[/code], проект будет сохранять данные пользователя в свою "
"собственную директорию. Если поле [member application/config/"
"custom_user_dir_name] пусто, будет использоваться директория [code]<OS user "
"data directory>/<project name>[/code]. Если [code]выключено[/code], проект "
"будет сохранять данные пользователя в [code]<OS user data directory>/Godot/"
"app_userdata/<project name>[/code].\n"
"См. также [url=$DOCS_URL/tutorials/io/data_paths.html#accessing-persistent-"
"user-data-user]Пути к файлам в проектах Godot[/url]. Эта настройка действует "
"только на настольных платформах."

msgid ""
"If [code]true[/code], the project will use a hidden directory ([code].godot[/"
"code]) for storing project-specific data (metadata, shader cache, etc.).\n"
"If [code]false[/code], a non-hidden directory ([code]godot[/code]) will be "
"used instead.\n"
"[b]Note:[/b] Restart the application after changing this setting.\n"
"[b]Note:[/b] Changing this value can help on platforms or with third-party "
"tools where hidden directory patterns are disallowed. Only modify this "
"setting if you know that your environment requires it, as changing the "
"default can impact compatibility with some external tools or plugins which "
"expect the default [code].godot[/code] folder."
msgstr ""
"Если [code]true[/code], проект будет использовать скрытый каталог "
"([code].godot[/code]) для хранения данных, специфичных для проекта "
"(метаданные, кэш шейдеров и т. д.).\n"
"Если [code]false[/code], вместо него будет использоваться нескрытый каталог "
"([code]godot[/code]).\n"
"[b]Примечание:[/b] Перезапустите приложение после изменения этого параметра.\n"
"[b]Примечание:[/b] Изменение этого значения может помочь на платформах или со "
"сторонними инструментами, где шаблоны скрытых каталогов запрещены. Изменяйте "
"этот параметр только в том случае, если вы знаете, что это требуется вашей "
"среде, так как изменение значения по умолчанию может повлиять на "
"совместимость с некоторыми внешними инструментами или плагинами, которые "
"ожидают папку по умолчанию [code].godot[/code]."

msgid ""
"The project's human-readable version identifier. This is used by exporters if "
"the version identifier isn't overridden there. If [member application/config/"
"version] is an empty string and the version identifier isn't overridden in an "
"exporter, the exporter will use [code]1.0.0[/code] as a version identifier."
msgstr ""
"Идентификатор версии проекта. Он используется экспортерами, если версия не "
"настроена в них. Если в [member application/config/version] - пустая строка и "
"версия не настроена в экспортере, экспортер будет использовать [code]1.0.0[/"
"code] в качестве версии."

msgid ""
"Icon set in [code].ico[/code] format used on Windows to set the game's icon. "
"This is done automatically on start by calling [method "
"DisplayServer.set_native_icon]."
msgstr ""
"Установить иконку в формате [code].ico[/code], используемую в Windows в "
"качестве иконки приложения. Это делается автоматически при запуске путем "
"вызова метода [method DisplayServer.set_native_icon]."

msgid ""
"Time samples for frame deltas are subject to random variation introduced by "
"the platform, even when frames are displayed at regular intervals thanks to V-"
"Sync. This can lead to jitter. Delta smoothing can often give a better result "
"by filtering the input deltas to correct for minor fluctuations from the "
"refresh rate.\n"
"[b]Note:[/b] Delta smoothing is only attempted when [member display/window/"
"vsync/vsync_mode] is set to [code]enabled[/code], as it does not work well "
"without V-Sync.\n"
"It may take several seconds at a stable frame rate before the smoothing is "
"initially activated. It will only be active on machines where performance is "
"adequate to render frames at the refresh rate."
msgstr ""
"Временные выборки для дельт кадров подвержены случайным изменениям, вносимым "
"платформой, даже когда кадры отображаются с регулярными интервалами благодаря "
"V-Sync. Это может привести к дрожанию. Дельта-сглаживание часто может дать "
"лучший результат, отфильтровывая входные дельты для коррекции незначительных "
"колебаний частоты обновления.\n"
"[b]Примечание:[/b] Дельта-сглаживание предпринимается только тогда, когда "
"[member display/window/vsync/vsync_mode] установлен на [code]enabled[/code], "
"поскольку без V-Sync оно работает некорректно.\n"
"Может пройти несколько секунд при стабильной частоте кадров, прежде чем "
"сглаживание будет первоначально активировано. Оно будет активно только на "
"машинах, производительность которых достаточна для рендеринга кадров с "
"частотой обновления."

msgid ""
"If [code]true[/code], disables printing to standard error. If [code]true[/"
"code], this also hides error and warning messages printed by [method "
"@GlobalScope.push_error] and [method @GlobalScope.push_warning]. See also "
"[member application/run/disable_stdout].\n"
"Changes to this setting will only be applied upon restarting the application. "
"To control this at runtime, use [member Engine.print_error_messages]."
msgstr ""
"Если [code]true[/code], отключает вывод на стандартный вывод ошибок. Если "
"[code]true[/code], это также скрывает сообщения об ошибках и предупреждения, "
"выводимые [method @GlobalScope.push_error] и [method "
"@GlobalScope.push_warning]. См. также [member application/run/"
"disable_stdout].\n"
"Изменения этого параметра будут применены только после перезапуска "
"приложения. Чтобы управлять этим во время выполнения, используйте [member "
"Engine.print_error_messages]."

msgid ""
"If [code]true[/code], disables printing to standard output. This is "
"equivalent to starting the editor or project with the [code]--quiet[/code] "
"[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command line "
"argument[/url]. See also [member application/run/disable_stderr].\n"
"Changes to this setting will only be applied upon restarting the application. "
"To control this at runtime, use [member Engine.print_to_stdout]."
msgstr ""
"Если [code]true[/code], отключает печать на стандартный вывод. Это "
"эквивалентно запуску редактора или проекта с [code]--quiet[/code] "
"[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]аргументом "
"командной строки[/url]. См. также [member application/run/disable_stderr].\n"
"Изменения этого параметра будут применены только после перезапуска "
"приложения. Чтобы управлять этим во время выполнения, используйте [member "
"Engine.print_to_stdout]."

msgid ""
"If [code]true[/code], allows the [kbd]Alt + Space[/kbd] keys to display the "
"window menu. This menu allows the user to perform various window management "
"operations such as moving, resizing, or minimizing the window.\n"
"[b]Note:[/b] When the menu is displayed, project execution will pause until "
"the menu is [i]fully[/i] closed due to Windows behavior. Consider this when "
"enabling this setting in a networked multiplayer game. The menu is only "
"considered fully closed when an option is selected, when the user clicks "
"outside, or when [kbd]Escape[/kbd] is pressed after bringing up the window "
"menu [i]and[/i] another key is pressed afterwards.\n"
"[b]Note:[/b] This setting is implemented only on Windows."
msgstr ""
"Если [code]true[/code], позволяет клавишам [kbd]Alt + Space[/kbd] отображать "
"меню окна. Это меню позволяет пользователю выполнять различные операции по "
"управлению окнами, такие как перемещение, изменение размера или сворачивание "
"окна.\n"
"[b]Примечание:[/b] Когда меню отображается, выполнение проекта будет "
"приостановлено до тех пор, пока меню не будет [i]полностью[/i] закрыто из-за "
"поведения Windows. Учитывайте это при включении этого параметра в сетевой "
"многопользовательской игре. Меню считается полностью закрытым только при "
"выборе опции, когда пользователь щелкает за ее пределами или когда нажата "
"[kbd]Escape[/kbd] после вызова меню окна [i]и[/i] после этого нажата другая "
"клавиша.\n"
"[b]Примечание:[/b] Этот параметр реализован только в Windows."

msgid ""
"If [code]true[/code], flushes the standard output stream every time a line is "
"printed. This affects both terminal logging and file logging.\n"
"When running a project, this setting must be enabled if you want logs to be "
"collected by service managers such as systemd/journalctl. This setting is "
"disabled by default on release builds, since flushing on every printed line "
"will negatively affect performance if lots of lines are printed in a rapid "
"succession. Also, if this setting is enabled, logged files will still be "
"written successfully if the application crashes or is otherwise killed by the "
"user (without being closed \"normally\").\n"
"[b]Note:[/b] Regardless of this setting, the standard error stream "
"([code]stderr[/code]) is always flushed when a line is printed to it.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
"Если [code]true[/code], то поток стандартного вывода очищается каждый раз, "
"когда печатается строка. Это влияет как на ведение журналов в терминале, так "
"и на ведение журналов в файлах.\n"
"При запуске проекта этот параметр должен быть включен, если вы хотите, чтобы "
"журналы собирались менеджерами служб, такими как systemd/journalctl. Эта "
"настройка отключена по умолчанию в сборках релизов, поскольку промывка каждой "
"напечатанной строки негативно скажется на производительности, если много "
"строк печатается в быстрой последовательности. Кроме того, если эта настройка "
"включена, файлы журналов будут успешно записаны, если приложение аварийно "
"завершено или иным образом убито пользователем (не будучи закрытым "
"\"нормально\").\n"
"[b]Примечание:[/b] Независимо от этой настройки, стандартный поток ошибок "
"([code]stderr[/code]) всегда промывается, когда в него печатается строка.\n"
"Изменения в этой настройке будут применены только после перезапуска "
"приложения."

msgid ""
"Debug build override for [member application/run/flush_stdout_on_print], as "
"performance is less important during debugging.\n"
"Changes to this setting will only be applied upon restarting the application."
msgstr ""
"Отладочная сборка переопределена для [member application/run/"
"flush_stdout_on_print], так как производительность менее важна во время "
"отладки.\n"
"Изменения этого параметра будут применены только после перезапуска приложения."

msgid ""
"Forces a [i]constant[/i] delay between frames in the main loop (in "
"milliseconds). In most situations, [member application/run/max_fps] should be "
"preferred as an FPS limiter as it's more precise.\n"
"This setting can be overridden using the [code]--frame-delay <ms;>[/code] "
"command line argument."
msgstr ""
"Устанавливает [i]постоянную[/i] задержку между кадрами в основном цикле (в "
"миллисекундах). В большинстве случаев [member application/run/max_fps] "
"следует предпочесть в качестве ограничителя FPS, поскольку он более точен.\n"
"Эту настройку можно переопределить с помощью аргумента командной строки "
"[code]--frame-delay <ms;>[/code]."

msgid ""
"If [code]true[/code], loads the default shell and copies environment "
"variables set by the shell startup scripts to the app environment.\n"
"[b]Note:[/b] This setting is implemented on macOS for non-sandboxed "
"applications only."
msgstr ""
"Если [code]true[/code], загружает оболочку по умолчанию и копирует переменные "
"среды, заданные скриптами запуска оболочки, в среду приложения.\n"
"[b]Примечание:[/b] Этот параметр реализован в macOS только для приложений, не "
"находящихся в песочнице."

msgid ""
"If [code]true[/code], enables low-processor usage mode. When enabled, the "
"engine takes longer to redraw, but only redraws the screen if necessary. This "
"may lower power consumption, and is intended for editors or mobile "
"applications. For most games, because the screen needs to be redrawn every "
"frame, it is recommended to keep this setting disabled."
msgstr ""
"Если [code]true[/code], включается режим низкой загрузки процессора. При "
"включении движку требуется больше времени на перерисовку, но он "
"перерисовывает экран только при необходимости. Это может снизить "
"энергопотребление и предназначено для редакторов или мобильных приложений. "
"Для большинства игр, поскольку экран должен перерисовываться в каждом кадре, "
"рекомендуется отключать эту настройку."

msgid ""
"Amount of sleeping between frames when the low-processor usage mode is "
"enabled (in microseconds). Higher values will result in lower CPU usage."
msgstr ""
"Количество сна между кадрами при включенном режиме низкой загрузки процессора "
"(в микросекундах). Более высокие значения приведут к снижению загрузки "
"процессора."

msgid "The name of the type implementing the engine's main loop."
msgstr "Имя типа, реализующего основной цикл движка."

msgid "Path to the main scene file that will be loaded when the project runs."
msgstr "Путь к главной сцене, которая будет загружена при запуске проекта."

msgid ""
"Maximum number of frames per second allowed. A value of [code]0[/code] means "
"\"no limit\". The actual number of frames per second may still be below this "
"value if the CPU or GPU cannot keep up with the project logic and rendering.\n"
"Limiting the FPS can be useful to reduce system power consumption, which "
"reduces heat and noise emissions (and improves battery life on mobile "
"devices).\n"
"If [member display/window/vsync/vsync_mode] is set to [code]Enabled[/code] or "
"[code]Adaptive[/code], it takes precedence and the forced FPS number cannot "
"exceed the monitor's refresh rate.\n"
"If [member display/window/vsync/vsync_mode] is [code]Enabled[/code], on "
"monitors with variable refresh rate enabled (G-Sync/FreeSync), using an FPS "
"limit a few frames lower than the monitor's refresh rate will [url=https://"
"blurbusters.com/howto-low-lag-vsync-on/]reduce input lag while avoiding "
"tearing[/url].\n"
"If [member display/window/vsync/vsync_mode] is [code]Disabled[/code], "
"limiting the FPS to a high value that can be consistently reached on the "
"system can reduce input lag compared to an uncapped framerate. Since this "
"works by ensuring the GPU load is lower than 100%, this latency reduction is "
"only effective in GPU-bottlenecked scenarios, not CPU-bottlenecked "
"scenarios.\n"
"See also [member physics/common/physics_ticks_per_second].\n"
"This setting can be overridden using the [code]--max-fps <fps>[/code] command "
"line argument (including with a value of [code]0[/code] for unlimited "
"framerate).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the rendering FPS cap at runtime, set [member Engine.max_fps] instead."
msgstr ""
"Максимально допустимое количество кадров в секунду. Значение [code]0[/code] "
"означает «без ограничений». Фактическое количество кадров в секунду может "
"быть ниже этого значения, если CPU или GPU не справляются с логикой проекта и "
"рендерингом.\n"
"Ограничение FPS может быть полезным для снижения энергопотребления системы, "
"что снижает тепловыделение и шумовое излучение (и увеличивает срок службы "
"батареи на мобильных устройствах).\n"
"Если [member display/window/vsync/vsync_mode] установлен на [code]Enabled[/"
"code] или [code]Adaptive[/code], он имеет приоритет, и принудительное число "
"FPS не может превышать частоту обновления монитора.\n"
"Если [member display/window/vsync/vsync_mode] [code]Enabled[/code], на "
"мониторах с включенной переменной частотой обновления (G-Sync/FreeSync) "
"использование ограничения FPS на несколько кадров ниже частоты обновления "
"монитора [url=https://blurbusters.com/howto-low-lag-vsync-on/]уменьшит "
"задержку ввода, избежав при этом разрывов[/url].\n"
"Если [member display/window/vsync/vsync_mode] [code]Disabled[/code], "
"ограничение FPS до высокого значения, которое может быть последовательно "
"достигнуто в системе, может уменьшить задержку ввода по сравнению с "
"неограниченной частотой кадров. Поскольку это работает, гарантируя, что "
"загрузка GPU будет ниже 100%, это снижение задержки эффективно только в "
"сценариях с узким местом GPU, но не в сценариях с узким местом CPU.\n"
"См. также [member physics/common/physics_ticks_per_second].\n"
"Эту настройку можно переопределить с помощью аргумента командной строки "
"[code]--max-fps <fps>[/code] (включая значение [code]0[/code] для "
"неограниченной частоты кадров).\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить ограничение FPS рендеринга во время выполнения, вместо этого задайте "
"[member Engine.max_fps]."

msgid ""
"If [code]true[/code], the engine header is printed in the console on startup. "
"This header describes the current version of the engine, as well as the "
"renderer being used. This behavior can also be disabled on the command line "
"with the [code]--no-header[/code] option."
msgstr ""
"Если [code]true[/code], заголовок движка выводится в консоли при запуске. "
"Этот заголовок описывает текущую версию движка, а также используемый "
"рендерер. Это поведение также можно отключить в командной строке с помощью "
"параметра [code]--no-header[/code]."

msgid ""
"Audio buses will disable automatically when sound goes below a given dB "
"threshold for a given time. This saves CPU as effects assigned to that bus "
"will no longer do any processing."
msgstr ""
"Аудиошины автоматически отключаются, когда звук опускается ниже заданного "
"порога dB на заданное время. Это экономит ресурсы CPU, поскольку эффекты, "
"назначенные на эту шину, больше не будут выполнять никакой обработки."

msgid ""
"Default [AudioBusLayout] resource file to use in the project, unless "
"overridden by the scene."
msgstr ""
"Файл ресурсов [AudioBusLayout] по умолчанию для использования в проекте, если "
"он не переопределен сценой."

msgid ""
"Specifies the audio driver to use. This setting is platform-dependent as each "
"platform supports different audio drivers. If left empty, the default audio "
"driver will be used.\n"
"The [code]Dummy[/code] audio driver disables all audio playback and "
"recording, which is useful for non-game applications as it reduces CPU usage. "
"It also prevents the engine from appearing as an application playing audio in "
"the OS' audio mixer.\n"
"To query the value that is being used at run-time (which may be overridden by "
"command-line arguments or headless mode), use [method "
"AudioServer.get_driver_name].\n"
"[b]Note:[/b] The driver in use can be overridden at runtime via the [code]--"
"audio-driver[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]."
msgstr ""
"Указывает используемый аудиодрайвер. Этот параметр зависит от платформы, так "
"как каждая платформа поддерживает разные аудиодрайверы. Если оставить пустым, "
"будет использоваться аудиодрайвер по умолчанию.\n"
"Аудиодрайвер [code]Dummy[/code] отключает все воспроизведение и запись звука, "
"что полезно для неигровых приложений, так как снижает загрузку CPU. Он также "
"предотвращает появление движка в качестве приложения, воспроизводящего звук в "
"аудиомикшере ОС.\n"
"Чтобы запросить значение, используемое во время выполнения (которое может "
"быть переопределено аргументами командной строки или режимом headless), "
"используйте [method AudioServer.get_driver_name].\n"
"[b]Примечание:[/b] Используемый драйвер можно переопределить во время "
"выполнения с помощью [code]--audio-driver[/code] [url=$DOCS_URL/tutorials/"
"editor/command_line_tutorial.html]аргумента командной строки[/url]."

msgid ""
"If [code]true[/code], microphone input will be allowed. This requires "
"appropriate permissions to be set when exporting to Android or iOS.\n"
"[b]Note:[/b] If the operating system blocks access to audio input devices "
"(due to the user's privacy settings), audio capture will only return silence. "
"On Windows, make sure that apps are allowed to access the microphone in the "
"OS' privacy settings."
msgstr ""
"Если [code]true[/code], вход микрофона будет разрешен. Для этого необходимо "
"установить соответствующие разрешения при экспорте в Android или iOS.\n"
"[b]Примечание:[/b] Если операционная система блокирует доступ к устройствам "
"ввода звука (из-за настроек конфиденциальности пользователя), захват звука "
"вернет только тишину. В Windows убедитесь, что приложениям разрешен доступ к "
"микрофону в настройках конфиденциальности ОС."

msgid ""
"Target mixing rate used for audio (in Hz). In general, it's better to not "
"touch this and leave it to the host operating system.\n"
"[b]Note:[/b] On iOS and macOS, mixing rate is determined by audio driver, "
"this value is ignored.\n"
"[b]Note:[/b] Input and output mixing rates might be different. Use [method "
"AudioServer.get_mix_rate] and [method AudioServer.get_input_mix_rate] to get "
"actual values."
msgstr ""
"Целевая скорость смешивания, используемая для звука (в Гц). В общем случае "
"лучше не трогать это и оставить это на усмотрение операционной системы "
"хоста.\n"
"[b]Примечание:[/b] В iOS и macOS скорость смешивания определяется "
"аудиодрайвером, это значение игнорируется.\n"
"[b]Примечание:[/b] Скорости смешивания на входе и выходе могут отличаться. "
"Используйте [method AudioServer.get_mix_rate] и [method "
"AudioServer.get_input_mix_rate], чтобы получить фактические значения."

msgid ""
"Safer override for [member audio/driver/mix_rate] in the Web platform. Here "
"[code]0[/code] means \"let the browser choose\" (since some browsers do not "
"like forcing the mix rate)."
msgstr ""
"Более безопасное переопределение для [member audio/driver/mix_rate] в веб-"
"платформе. Здесь [code]0[/code] означает \"позволить браузеру выбирать\" (так "
"как некоторые браузеры не любят принудительно задавать скорость смешивания)."

msgid ""
"Specifies the preferred output latency in milliseconds for audio. Lower "
"values will result in lower audio latency at the cost of increased CPU usage. "
"Low values may result in audible crackling on slower hardware.\n"
"Audio output latency may be constrained by the host operating system and "
"audio hardware drivers. If the host can not provide the specified audio "
"output latency then Godot will attempt to use the nearest latency allowed by "
"the host. As such you should always use [method "
"AudioServer.get_output_latency] to determine the actual audio output "
"latency.\n"
"Audio output latency can be overridden using the [code]--audio-output-latency "
"<ms>[/code] command line argument.\n"
"[b]Note:[/b] This setting is ignored on Android."
msgstr ""
"Указывает предпочтительную задержку вывода в миллисекундах для звука. Более "
"низкие значения приведут к меньшей задержке звука за счет увеличения загрузки "
"CPU. Низкие значения могут привести к слышимому треску на более медленном "
"оборудовании.\n"
"Задержка вывода звука может быть ограничена операционной системой хоста и "
"драйверами аудиооборудования. Если хост не может обеспечить указанную "
"задержку вывода звука, Godot попытается использовать ближайшую задержку, "
"разрешенную хостом. Таким образом, вы всегда должны использовать [method "
"AudioServer.get_output_latency] для определения фактической задержки вывода "
"звука.\n"
"Задержка вывода звука может быть переопределена с помощью аргумента командной "
"строки [code]--audio-output-latency <ms>[/code].\n"
"[b]Примечание:[/b] Этот параметр игнорируется на Android."

msgid ""
"Safer override for [member audio/driver/output_latency] in the Web platform, "
"to avoid audio issues especially on mobile devices."
msgstr ""
"Более безопасное переопределение [member audio/driver/output_latency] на веб-"
"платформе, позволяющее избежать проблем со звуком, особенно на мобильных "
"устройствах."

msgid ""
"The base strength of the panning effect for all [AudioStreamPlayer2D] nodes. "
"The panning strength can be further scaled on each Node using [member "
"AudioStreamPlayer2D.panning_strength]. A value of [code]0.0[/code] disables "
"stereo panning entirely, leaving only volume attenuation in place. A value of "
"[code]1.0[/code] completely mutes one of the channels if the sound is located "
"exactly to the left (or right) of the listener.\n"
"The default value of [code]0.5[/code] is tuned for headphones. When using "
"speakers, you may find lower values to sound better as speakers have a lower "
"stereo separation compared to headphones."
msgstr ""
"Базовая сила эффекта панорамирования для всех узлов [AudioStreamPlayer2D]. "
"Силу панорамирования можно дополнительно масштабировать на каждом узле с "
"помощью [member AudioStreamPlayer2D.panning_strength]. Значение [code]0.0[/"
"code] полностью отключает стереопанорамирование, оставляя только ослабление "
"громкости. Значение [code]1.0[/code] полностью отключает один из каналов, "
"если звук расположен точно слева (или справа) от слушателя.\n"
"Значение по умолчанию [code]0.5[/code] настроено для наушников. При "
"использовании динамиков вы можете обнаружить, что более низкие значения "
"звучат лучше, поскольку динамики имеют более низкое стереоразделение по "
"сравнению с наушниками."

msgid ""
"The base strength of the panning effect for all [AudioStreamPlayer3D] nodes. "
"The panning strength can be further scaled on each Node using [member "
"AudioStreamPlayer3D.panning_strength]. A value of [code]0.0[/code] disables "
"stereo panning entirely, leaving only volume attenuation in place. A value of "
"[code]1.0[/code] completely mutes one of the channels if the sound is located "
"exactly to the left (or right) of the listener.\n"
"The default value of [code]0.5[/code] is tuned for headphones which means "
"that the opposite side channel goes no lower than 50% of the volume of the "
"nearside channel. You may find that you can set this value higher for "
"speakers to have the same effect since both ears can hear from each speaker."
msgstr ""
"Базовая сила эффекта панорамирования для всех узлов [AudioStreamPlayer3D]. "
"Силу панорамирования можно дополнительно масштабировать на каждом узле с "
"помощью [member AudioStreamPlayer3D.panning_strength]. Значение [code]0.0[/"
"code] полностью отключает стереопанорамирование, оставляя только ослабление "
"громкости. Значение [code]1.0[/code] полностью отключает один из каналов, "
"если звук находится точно слева (или справа) от слушателя.\n"
"Значение по умолчанию [code]0.5[/code] настроено для наушников, что означает, "
"что противоположный боковой канал не опускается ниже 50% громкости ближнего "
"канала. Вы можете обнаружить, что можете установить это значение выше для "
"динамиков, чтобы получить тот же эффект, поскольку оба уха могут слышать из "
"каждого динамика."

msgid ""
"Specifies the default playback type of the platform.\n"
"The default value is set to [b]Stream[/b], as most platforms have no issues "
"mixing streams."
msgstr ""
"Указывает тип воспроизведения по умолчанию для платформы.\n"
"Значение по умолчанию установлено на [b]Stream[/b], так как у большинства "
"платформ нет проблем с микшированием потоков."

msgid ""
"Specifies the default playback type of the Web platform.\n"
"The default value is set to [b]Sample[/b] as the Web platform is not suited "
"to mix audio streams outside of the Web Audio API, especially when exporting "
"a single-threaded game. [b]Sample[/b] allows for lower latency on the web "
"platform at the cost of flexibility ([AudioEffect]s are not supported).\n"
"[b]Warning:[/b] Forcing [b]Stream[/b] on the Web platform may cause high "
"audio latency and crackling, especially when exporting a multi-threaded game."
msgstr ""
"Указывает тип воспроизведения по умолчанию для веб-платформы.\n"
"Значение по умолчанию установлено на [b]Sample[/b], так как веб-платформа не "
"подходит для микширования аудиопотоков за пределами API веб-аудио, особенно "
"при экспорте однопоточной игры. [b]Sample[/b] позволяет снизить задержку на "
"веб-платформе за счет гибкости ([AudioEffect]-ы не поддерживаются).\n"
"[b]Предупреждение:[/b] Принудительное использование [b]Stream[/b] на веб-"
"платформе может привести к высокой задержке звука и потрескиванию, особенно "
"при экспорте многопоточной игры."

msgid ""
"Sets the [url=https://developer.apple.com/documentation/avfaudio/"
"avaudiosession/categoryoptions/1616611-mixwithothers]mixWithOthers[/url] "
"option for the AVAudioSession on iOS. This will override the mix behavior, if "
"the category is set to [code]Play and Record[/code], [code]Playback[/code], "
"or [code]Multi Route[/code].\n"
"[code]Ambient[/code] always has this set per default."
msgstr ""
"Устанавливает параметр [url=https://developer.apple.com/documentation/"
"avfaudio/avaudiosession/categoryoptions/1616611-mixwithothers]mixWithOthers[/"
"url] для AVAudioSession на iOS. Это переопределит поведение микширования, "
"если категория установлена на [code]Play and Record[/code] (Воспроизведение и "
"запись), [code]Playback[/code] (Воспроизведение) или [code]Multi Route[/code] "
"(Мультимаршрут). \n"
"[code]Ambient[/code] всегда имеет этот набор по умолчанию."

msgid ""
"Sets the [url=https://developer.apple.com/documentation/avfaudio/"
"avaudiosessioncategory]AVAudioSessionCategory[/url] on iOS. Use the "
"[code]Playback[/code] category to get sound output, even if the phone is in "
"silent mode."
msgstr ""
"Устанавливает [url=https://developer.apple.com/documentation/avfaudio/"
"avaudiosessioncategory]AVAudioSessionCategory[/url] на iOS. Используйте "
"категорию [code]Playback[/code] (Воспроизведение), чтобы получить вывод "
"звука, даже если телефон находится в беззвучном режиме."

msgid ""
"If [code]true[/code], text-to-speech support is enabled on startup, otherwise "
"it is enabled first time TTS method is used, see [method "
"DisplayServer.tts_get_voices] and [method DisplayServer.tts_speak].\n"
"[b]Note:[/b] Enabling TTS can cause addition idle CPU usage and interfere "
"with the sleep mode, so consider disabling it if TTS is not used."
msgstr ""
"Если [code]true[/code], поддержка преобразования текста в речь включается при "
"запуске, в противном случае она включается при первом использовании метода "
"TTS, см. [method DisplayServer.tts_get_voices] и [method "
"DisplayServer.tts_speak].\n"
"[b]Примечание:[/b] Включение TTS может привести к дополнительному "
"использованию CPU в режиме ожидания и помешать спящему режиму, поэтому "
"рассмотрите возможность его отключения, если TTS не используется."

msgid ""
"Setting to hardcode audio delay when playing video. Best to leave this "
"unchanged unless you know what you are doing."
msgstr ""
"Настройка жесткой задержки звука при воспроизведении видео. Лучше оставить "
"это без изменений, если вы не знаете, что делаете."

msgid ""
"If [code]true[/code], ambient lights will be imported from COLLADA models as "
"[DirectionalLight3D]. If [code]false[/code], ambient lights will be ignored."
msgstr ""
"Если [code]true[/code], окружающее освещение будет импортировано из моделей "
"COLLADA как [DirectionalLight3D]. Если [code]false[/code], окружающее "
"освещение будет проигнорировано."

msgid ""
"The default compression level for gzip. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level. "
"[code]-1[/code] uses the default gzip compression level, which is identical "
"to [code]6[/code] but could change in the future due to underlying zlib "
"updates."
msgstr ""
"Уровень сжатия по умолчанию для gzip. Влияет на сжатые сцены и ресурсы. Более "
"высокие уровни приводят к уменьшению размера файлов за счет скорости сжатия. "
"Скорость распаковки в основном не зависит от уровня сжатия. [code]-1[/code] "
"использует уровень сжатия gzip по умолчанию, который идентичен [code]6[/"
"code], но может измениться в будущем из-за базовых обновлений zlib."

msgid ""
"The default compression level for Zlib. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level. "
"[code]-1[/code] uses the default gzip compression level, which is identical "
"to [code]6[/code] but could change in the future due to underlying zlib "
"updates."
msgstr ""
"Уровень сжатия по умолчанию для Zlib. Влияет на сжатые сцены и ресурсы. Более "
"высокие уровни приводят к уменьшению размера файлов за счет скорости сжатия. "
"Скорость распаковки в основном не зависит от уровня сжатия. [code]-1[/code] "
"использует уровень сжатия gzip по умолчанию, который идентичен [code]6[/"
"code], но может измениться в будущем из-за базовых обновлений zlib."

msgid ""
"The default compression level for Zstandard. Affects compressed scenes and "
"resources. Higher levels result in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression level."
msgstr ""
"Уровень сжатия по умолчанию для Zstandard. Влияет на сжатые сцены и ресурсы. "
"Более высокие уровни приводят к меньшим файлам за счет скорости сжатия. "
"Скорость распаковки в основном не зависит от уровня сжатия."

msgid ""
"Enables [url=https://github.com/facebook/zstd/releases/tag/v1.3.2]long-"
"distance matching[/url] in Zstandard."
msgstr ""
"Включает [url=https://github.com/facebook/zstd/releases/tag/"
"v1.3.2]Сопоставление на большом расстоянии[/url] в Zstandard."

msgid ""
"Largest size limit (in power of 2) allowed when compressing using long-"
"distance matching with Zstandard. Higher values can result in better "
"compression, but will require more memory when compressing and decompressing."
msgstr ""
"Наибольший предел размера (в степени 2), разрешенный при сжатии с "
"использованием сопоставления на большом расстоянии с Zstandard. Более высокие "
"значения могут привести к лучшему сжатию, но потребуют больше памяти при "
"сжатии и распаковке."

msgid ""
"If canvas item redraw debugging is active, this color will be flashed on "
"canvas items when they redraw."
msgstr ""
"Если отладка перерисовки элементов холста активна, этот цвет будет мигать на "
"элементах холста при их перерисовке."

msgid ""
"If canvas item redraw debugging is active, this will be the time the flash "
"will last each time they redraw."
msgstr ""
"Если отладка перерисовки элементов холста активна, это будет время, в течение "
"которого будет длиться вспышка при каждой перерисовке."

msgid ""
"If [code]true[/code], logs all output and error messages to files. See also "
"[member debug/file_logging/log_path], [member debug/file_logging/"
"max_log_files], and [member application/run/flush_stdout_on_print]."
msgstr ""
"Если [code]true[/code], регистрирует все выходные данные и сообщения об "
"ошибках в файлах. См. также [member debug/file_logging/log_path], [member "
"debug/file_logging/max_log_files] и [member application/run/"
"flush_stdout_on_print]."

msgid ""
"Desktop override for [member debug/file_logging/enable_file_logging], as log "
"files are not readily accessible on mobile/Web platforms."
msgstr ""
"Переопределение для настольного компьютера для [member debug/file_logging/"
"enable_file_logging], поскольку файлы журналов не всегда доступны на "
"мобильных/веб-платформах."

msgid ""
"Path at which to store log files for the project. Using a path under "
"[code]user://[/code] is recommended.\n"
"This can be specified manually on the command line using the [code]--log-file "
"<file>[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]. If this command line "
"argument is specified, log rotation is automatically disabled (see [member "
"debug/file_logging/max_log_files])."
msgstr ""
"Путь, по которому следует хранить файлы журналов для проекта. Рекомендуется "
"использовать путь в [code]user://[/code].\n"
"Это можно указать вручную в командной строке с помощью [code]--log-file "
"<file>[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]аргумента командной строки[/url]. Если указан этот "
"аргумент командной строки, ротация журналов автоматически отключается (см. "
"[member debug/file_logging/max_log_files])."

msgid ""
"Specifies the maximum number of log files allowed (used for rotation). Set to "
"[code]1[/code] to disable log file rotation.\n"
"If the [code]--log-file <file>[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url] is used, log rotation "
"is always disabled."
msgstr ""
"Указывает максимально допустимое количество файлов журнала (используется для "
"ротации). Установите на [code]1[/code], чтобы отключить ротацию файлов "
"журнала.\n"
"Если используется [code]--log-file <file>[/code] [url=$DOCS_URL/tutorials/"
"editor/command_line_tutorial.html]аргумент командной строки[/url], ротация "
"журнала всегда отключена."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an [code]assert[/code] call always evaluates to "
"[code]false[/code]."
msgstr ""
"Если установлено значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда вызов [code]assert[/code] "
"всегда оценивается как [code]false[/code]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an [code]assert[/code] call always evaluates to "
"[code]true[/code]."
msgstr ""
"Если установлено значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда вызов [code]assert[/code] "
"всегда оценивается как [code]true[/code]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a local variable captured by a lambda is reassigned, "
"since this does not modify the outer local variable."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при переназначении локальной "
"переменной, захваченной лямбда-выражением, поскольку это не изменяет внешнюю "
"локальную переменную."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an identifier contains characters that can be "
"confused with something else, like when mixing different alphabets."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, если идентификатор содержит "
"символы, которые можно спутать с чем-то другим, например, при смешивании "
"разных алфавитов."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an identifier declared in the nested block has the "
"same name as an identifier declared below in the parent block."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда идентификатор, объявленный во "
"вложенном блоке, имеет то же имя, что и идентификатор, объявленный ниже в "
"родительском блоке."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an identifier that will be shadowed below in the "
"block is used."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, если используется идентификатор, "
"который будет скрыт ниже в блоке."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when deprecated keywords are used.\n"
"[b]Note:[/b] There are currently no deprecated keywords, so this warning is "
"never produced."
msgstr ""
"Если установлено значение [code]warn[/code] или [code]error[/code], выводится "
"предупреждение или ошибка соответственно при использовании устаревших "
"ключевых слов.\n"
"[b]Примечание:[/b] В настоящее время устаревших ключевых слов нет, поэтому "
"это предупреждение никогда не выводится."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an empty file is parsed."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], при анализе "
"пустого файла выдается предупреждение или ошибка соответственно."

msgid ""
"If [code]true[/code], enables specific GDScript warnings (see [code]debug/"
"gdscript/warnings/*[/code] settings). If [code]false[/code], disables all "
"GDScript warnings."
msgstr ""
"Если [code]true[/code], включает определенные предупреждения GDScript (см. "
"настройки [code]debug/gdscript/warnings/*[/code]). Если [code]false[/code], "
"отключает все предупреждения GDScript."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a variable has an enum type but no explicit default "
"value, but only if the enum does not contain [code]0[/code] as a valid value."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда переменная имеет тип "
"перечисления, но не имеет явного значения по умолчанию, но только если "
"перечисление не содержит [code]0[/code] в качестве допустимого значения."

msgid ""
"If [code]true[/code], scripts in the [code]res://addons[/code] folder will "
"not generate warnings."
msgstr ""
"Если [code]true[/code], скрипты в папке [code]res://addons[/code] не будут "
"генерировать предупреждения."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when [method Node.get_node] (or the shorthand [code]$[/"
"code]) is used as default value of a class variable without the "
"[code]@onready[/code] annotation."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда [method Node.get_node] (или "
"сокращенная запись [code]$[/code]) используется в качестве значения по "
"умолчанию переменной класса без аннотации [code]@onready[/code]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a ternary operator may emit values with incompatible "
"types."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда тернарный оператор может "
"выдавать значения с несовместимыми типами."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a static inferred type uses a [Variant] as initial "
"value, which makes the static type to also be Variant."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда статический выводимый тип "
"использует [Variant] в качестве начального значения, что делает статический "
"тип также Variant."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a variable, constant, or parameter has an implicitly "
"inferred static type. In GDScript, type inference is performed by declaring a "
"variable with [code]:=[/code] instead of [code]=[/code] and leaving out the "
"type specifier. For example, [code]var x := 1[/code] will [i]infer[/i] the "
"[int] type, while [code]var x: int = 1[/code] explicitly declares the "
"variable as [int].\n"
"[b]Note:[/b] This warning is recommended [i]in addition[/i] to [member debug/"
"gdscript/warnings/untyped_declaration] if you want to always specify the type "
"explicitly. Having [code]INFERRED_DECLARATION[/code] warning level higher "
"than [code]UNTYPED_DECLARATION[/code] warning level makes little sense and is "
"not recommended."
msgstr ""
"При установке [code]warn[/code] или [code]error[/code] выдаёт предупреждение "
"или ошибку соответственно, если переменная, константа или параметр имеют "
"неявно выведенный статический тип. В GDScript вывод типа выполняется путём "
"объявления переменной с [code]:=[/code] вместо [code]=[/code] и без указания "
"спецификатора типа. Например, [code]var x := 1[/code] [i]выведёт[/i] тип "
"[int], тогда как [code]var x: int = 1[/code] явно объявляет переменную как "
"[int].\n"
"[b]Примечание:[/b] Это предупреждение рекомендуется [i]в дополнение[/i] к "
"[member debug/gdscript/warnings/untyped_declaration], если вы хотите всегда "
"явно указывать тип. Наличие уровня предупреждения [code]INFERRED_DECLARATION[/"
"code] выше уровня предупреждения [code]UNTYPED_DECLARATION[/code] не имеет "
"смысла и не рекомендуется."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when trying to use an integer as an enum without an "
"explicit cast."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при попытке использовать целое число "
"в качестве перечисления без явного приведения."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when trying to use an integer as an enum when there is no "
"matching enum member for that numeric value."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при попытке использовать целое число "
"в качестве перечисления, когда для этого числового значения нет "
"соответствующего члена перечисления."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when dividing an integer by another integer (the decimal "
"part will be discarded)."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при делении целого числа на другое "
"целое число (десятичная часть будет отброшена)."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when the base class script has the [code]@tool[/code] "
"annotation, but the current class script does not have it."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда скрипт базового класса имеет "
"аннотацию [code]@tool[/code], но скрипт текущего класса ее не имеет."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when passing a floating-point value to a function that "
"expects an integer (it will be converted and lose precision)."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при передаче значения с плавающей "
"точкой в функцию, которая ожидает целое число (оно будет преобразовано и "
"потеряет точность)."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a method in the script overrides a native method, "
"because it may not behave as expected."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выводится "
"предупреждение или ошибка соответственно, когда метод в скрипте "
"переопределяет собственный метод, поскольку он может вести себя не так, как "
"ожидалось."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when the [code]@onready[/code] annotation is used together "
"with the [code]@export[/code] annotation, since it may not behave as expected."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда аннотация [code]@onready[/"
"code] используется вместе с аннотацией [code]@export[/code], поскольку она "
"может вести себя не так, как ожидается."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a function that is not a coroutine is called with "
"await."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда функция, не являющаяся "
"сопрограммой, вызывается с await."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when the [code]@static_unload[/code] annotation is used in "
"a script without any static variables."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, если аннотация "
"[code]@static_unload[/code] используется в скрипте без каких-либо статических "
"переменных."

msgid ""
"When enabled, using a property, enum, or function that was renamed since "
"Godot 3 will produce a hint if an error occurs."
msgstr ""
"Если эта опция включена, использование свойства, перечисления или функции, "
"которые были переименованы с момента выхода Godot 3, приведет к появлению "
"подсказки в случае возникновения ошибки."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when calling a function without using its return value (by "
"assigning it to a variable or using it as a function argument). These return "
"values are sometimes used to indicate possible errors using the [enum Error] "
"enum."
msgstr ""
"Если установлено значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при вызове функции без использования "
"ее возвращаемого значения (путем присвоения его переменной или использования "
"его в качестве аргумента функции). Эти возвращаемые значения иногда "
"используются для указания возможных ошибок с помощью перечисления [enum "
"Error]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when defining a local or member variable, signal, or enum "
"that would have the same name as a built-in function or global class name, "
"thus shadowing it."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при определении локальной или "
"переменной-члена, сигнала или перечисления, которые имели бы то же имя, что и "
"встроенная функция или глобальное имя класса, тем самым затеняя их."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a local variable or local constant shadows a member "
"declared in the current class."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда локальная переменная или "
"локальная константа затеняет член, объявленный в текущем классе."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a local variable or local constant shadows a member "
"declared in a base class."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда локальная переменная или "
"локальная константа затеняет член, объявленный в базовом классе."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when calling an expression that may have no effect on the "
"surrounding code, such as writing [code]2 + 2[/code] as a statement."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при вызове выражения, которое может "
"не оказать никакого влияния на окружающий код, например, при записи [code]2 + "
"2[/code] в качестве оператора."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when calling a ternary expression that may have no effect "
"on the surrounding code, such as writing [code]42 if active else 0[/code] as "
"a statement."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при вызове тернарного выражения, "
"которое может не оказать никакого влияния на окружающий код, например, при "
"записи [code]42 if active else 0[/code] в качестве оператора."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when calling a static method from an instance of a class "
"instead of from the class directly."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при вызове статического метода из "
"экземпляра класса, а не из класса напрямую."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when using a variable that wasn't previously assigned."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при использовании переменной, "
"которая ранее не была назначена."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when assigning a variable using an assignment operator "
"like [code]+=[/code] if the variable wasn't previously assigned."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при назначении переменной с "
"использованием оператора присваивания, например [code]+=[/code], если "
"переменная ранее не была назначена."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when unreachable code is detected (such as after a "
"[code]return[/code] statement that will always be executed)."
msgstr ""
"Если установлено значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при обнаружении недостижимого кода "
"(например, после оператора [code]return[/code], который всегда будет "
"выполняться)."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when an unreachable [code]match[/code] pattern is detected."
msgstr ""
"Если установлено значение [code]warn[/code] или [code]error[/code], выводится "
"предупреждение или ошибка соответственно при обнаружении недостижимого "
"шаблона [code]match[/code]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when using an expression whose type may not be compatible "
"with the function parameter expected."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при использовании выражения, тип "
"которого может быть несовместим с ожидаемым параметром функции."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a [Variant] value is cast to a non-Variant."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда значение [Variant] "
"преобразуется в не-Variant."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when calling a method whose presence is not guaranteed at "
"compile-time in the class."
msgstr ""
"Если установлено значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при вызове метода, наличие которого "
"не гарантируется во время компиляции в классе."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when accessing a property whose presence is not guaranteed "
"at compile-time in the class."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при доступе к свойству, наличие "
"которого не гарантируется во время компиляции в классе."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when returning a call from a [code]void[/code] function "
"when such call cannot be guaranteed to be also [code]void[/code]."
msgstr ""
"Если установлено значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно при возврате вызова из функции "
"[code]void[/code], когда нельзя гарантировать, что такой вызов также будет "
"[code]void[/code]."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a variable or parameter has no static type, or if a "
"function has no static return type.\n"
"[b]Note:[/b] This warning is recommended together with [member "
"EditorSettings.text_editor/completion/add_type_hints] to help achieve type "
"safety."
msgstr ""
"Если установлено значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда переменная или параметр не "
"имеют статического типа или если функция не имеет статического возвращаемого "
"типа.\n"
"[b]Примечание:[/b] Это предупреждение рекомендуется использовать вместе с "
"[member EditorSettings.text_editor/completion/add_type_hints] для обеспечения "
"безопасности типов."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a local constant is never used."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, если локальная константа никогда не "
"используется."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a function parameter is never used."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, если параметр функции никогда не "
"используется."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a private member variable is never used."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, если закрытая переменная-член "
"никогда не используется."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a signal is declared but never explicitly used in the "
"class."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, когда сигнал объявлен, но явно не "
"используется в классе."

msgid ""
"When set to [code]warn[/code] or [code]error[/code], produces a warning or an "
"error respectively when a local variable is unused."
msgstr ""
"Если задано значение [code]warn[/code] или [code]error[/code], выдается "
"предупреждение или ошибка соответственно, если локальная переменная не "
"используется."

msgid ""
"Message to be displayed before the backtrace when the engine crashes. By "
"default, this message is only used in exported projects due to the editor-"
"only override applied to this setting."
msgstr ""
"Сообщение, которое будет отображаться перед обратной трассировкой при сбое "
"движка. По умолчанию это сообщение используется только в экспортированных "
"проектах из-за переопределения, доступного только редактору, примененного к "
"этой настройке."

msgid ""
"Editor-only override for [member debug/settings/crash_handler/message]. Does "
"not affect exported projects in debug or release mode."
msgstr ""
"Переопределение только для редактора для [member debug/settings/crash_handler/"
"message]. Не влияет на экспортированные проекты в режиме отладки или выпуска."

msgid ""
"Whether GDScript call stacks will be tracked in release builds, thus allowing "
"[method Engine.capture_script_backtraces] to function.\n"
"[b]Note:[/b] This setting has no effect on editor builds or debug builds, "
"where GDScript call stacks are tracked regardless."
msgstr ""
"Будет ли отслеживаться стек вызовов GDScript в релизных сборках, что позволит "
"функционировать [method Engine.capture_script_backtraces].\n"
"[b]Примечание:[/b] Этот параметр не влияет на сборки редактора или отладочные "
"сборки, где стек вызовов GDScript отслеживается независимо."

msgid ""
"Whether GDScript local variables will be tracked in all builds, including "
"export builds, thus allowing [method Engine.capture_script_backtraces] to "
"capture them when enabling its [code]include_variables[/code] parameter.\n"
"Enabling this comes at the cost of roughly 50 bytes of memory per local "
"variable, for every compiled class in the entire project, so can be several "
"MiB in larger projects.\n"
"[b]Note:[/b] This setting has no effect when running the game from the "
"editor, where GDScript local variables are tracked regardless."
msgstr ""
"Будут ли отслеживаться локальные переменные GDScript во всех сборках, включая "
"экспортные сборки, что позволит [method Engine.capture_script_backtraces] "
"захватывать их при включении параметра [code]include_variables[/code].\n"
"Включение этого параметра обходится примерно в 50 байт памяти на локальную "
"переменную для каждого скомпилированного класса во всем проекте, поэтому в "
"более крупных проектах может потребоваться несколько МБ.\n"
"[b]Примечание:[/b] Этот параметр не действует при запуске игры из редактора, "
"где локальные переменные GDScript отслеживаются независимо."

msgid "Maximum call stack allowed for debugging GDScript."
msgstr "Максимальный стек вызовов, разрешенный для отладки GDScript."

msgid ""
"If [code]true[/code], enables warnings which can help pinpoint where nodes "
"are being incorrectly updated, which will result in incorrect interpolation "
"and visual glitches.\n"
"When a node is being interpolated, it is essential that the transform is set "
"during [method Node._physics_process] (during a physics tick) rather than "
"[method Node._process] (during a frame)."
msgstr ""
"Если [code]true[/code], включаются предупреждения, которые могут помочь "
"определить, где узлы обновляются неправильно, что приведет к неправильной "
"интерполяции и визуальным сбоям.\n"
"Когда узел интерполируется, важно, чтобы преобразование было установлено во "
"время [method Node._physics_process] (во время физического тика), а не "
"[method Node._process] (во время кадра)."

msgid "Maximum number of functions per frame allowed when profiling."
msgstr "Максимально допустимое количество функций на кадр при профилировании."

msgid ""
"Maximum number of timestamp query elements allowed per frame for visual "
"profiling."
msgstr ""
"Максимально допустимое количество элементов запроса временной метки на кадр "
"для визуального профилирования."

msgid "Print frames per second to standard output every second."
msgstr "Выводить кадры в секунду на стандартный вывод каждую секунду."

msgid ""
"Print GPU profile information to standard output every second. This includes "
"how long each frame takes the GPU to render on average, broken down into "
"different steps of the render pipeline, such as CanvasItems, shadows, glow, "
"etc."
msgstr ""
"Выводить информацию о профиле GPU на стандартный вывод каждую секунду. Сюда "
"входит, сколько времени в среднем требуется GPU для рендеринга каждого кадра, "
"разбитая на различные этапы конвейера рендеринга, такие как CanvasItems, "
"тени, свечение и т. д."

msgid ""
"Print more information to standard output when running. It displays "
"information such as memory leaks, which scenes and resources are being "
"loaded, etc. This can also be enabled using the [code]--verbose[/code] or "
"[code]-v[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url], even on an exported "
"project. See also [method OS.is_stdout_verbose] and [method "
"@GlobalScope.print_verbose]."
msgstr ""
"Выводить больше информации на стандартный вывод при запуске. Он отображает "
"информацию, такую как утечки памяти, какие сцены и ресурсы загружаются и т. "
"д. Это также можно включить с помощью [code]--verbose[/code] или [code]-v[/"
"code] [url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]аргумента "
"командной строки[/url], даже в экспортированном проекте. См. также [method "
"OS.is_stdout_verbose] и [method @GlobalScope.print_verbose]."

msgid ""
"When set to [code]true[/code], produces a warning when the shader exceeds "
"certain device limits. Currently, the only device limit checked is the limit "
"on uniform buffer size. More device limits will be added in the future."
msgstr ""
"Если установлено значение [code]true[/code], выводится предупреждение, когда "
"шейдер превышает определенные ограничения устройства. В настоящее время "
"единственным проверяемым ограничением устройства является ограничение на "
"размер однородного буфера. В будущем будут добавлены дополнительные "
"ограничения устройства."

msgid ""
"If [code]true[/code], enables specific shader warnings (see [code]debug/"
"shader_language/warnings/*[/code] settings). If [code]false[/code], disables "
"all shader warnings."
msgstr ""
"Если [code]true[/code], включает определенные предупреждения шейдера (см. "
"настройки [code]debug/shader_language/warnings/*[/code]. Если [code]false[/"
"code], отключает все предупреждения шейдера."

msgid ""
"When set to [code]true[/code], produces a warning when two floating-point "
"numbers are compared directly with the [code]==[/code] operator or the [code]!"
"=[/code] operator."
msgstr ""
"Если установлено значение [code]true[/code], выводится предупреждение при "
"непосредственном сравнении двух чисел с плавающей точкой с помощью оператора "
"[code]==[/code] или оператора [code]!=[/code]."

msgid ""
"When set to [code]true[/code], produces a warning upon encountering certain "
"formatting errors. Currently this only checks for empty statements. More "
"formatting errors may be added over time."
msgstr ""
"Если установлено значение [code]true[/code], выводится предупреждение при "
"обнаружении определенных ошибок форматирования. В настоящее время это "
"проверяет только пустые операторы. Со временем могут быть добавлены новые "
"ошибки форматирования."

msgid ""
"When set to [code]true[/code], produces a warning when the shader contains "
"[code]POSITION = vec4(vertex,[/code] as this was very common code written in "
"Godot 4.2 and earlier that was paired with a QuadMesh to produce a full "
"screen post processes pass. With the switch to reversed z in 4.3, this trick "
"no longer works, as it implicitly relied on the [code]VERTEX.z[/code] being 0."
msgstr ""
"При установке на [code]true[/code] выдается предупреждение, когда шейдер "
"содержит [code]POSITION = vec4(vertex,[/code], поскольку это был очень "
"распространенный код, написанный в Godot 4.2 и более ранних версиях, который "
"использовался в паре с QuadMesh для создания полноэкранного прохода "
"постобработки. С переключением на обратное z в 4.3 этот трюк больше не "
"работает, поскольку он неявно полагался на [code]VERTEX.z[/code], равный 0."

msgid "When set to [code]true[/code], warnings are treated as errors."
msgstr ""
"Если задано значение [code]true[/code], предупреждения рассматриваются как "
"ошибки."

msgid ""
"When set to [code]true[/code], produces a warning when a constant is never "
"used."
msgstr ""
"Если установлено значение [code]true[/code], выводится предупреждение, если "
"константа никогда не используется."

msgid ""
"When set to [code]true[/code], produces a warning when a function is never "
"used."
msgstr ""
"Если установлено значение [code]true[/code], выводится предупреждение, если "
"функция никогда не используется."

msgid ""
"When set to [code]true[/code], produces a warning when a local variable is "
"never used."
msgstr ""
"Если установлено значение [code]true[/code], выводится предупреждение, если "
"локальная переменная никогда не используется."

msgid ""
"When set to [code]true[/code], produces a warning when a struct is never used."
msgstr ""
"Если установлено значение [code]true[/code], выводится предупреждение, если "
"структура никогда не используется."

msgid ""
"When set to [code]true[/code], produces a warning when a uniform is never "
"used."
msgstr ""
"Если установлено значение [code]true[/code], выводится предупреждение, если "
"униформа никогда не используется."

msgid ""
"When set to [code]true[/code], produces a warning when a varying is never "
"used."
msgstr ""
"Если установлено значение [code]true[/code], выводится предупреждение, если "
"переменная никогда не используется."

msgid ""
"Color of the avoidance agents radius, visible when \"Visible Avoidance\" is "
"enabled in the Debug menu."
msgstr ""
"Цвет радиуса агентов избегания, видимый, если в меню «Отладка» включен "
"параметр «Видимое избегание»."

msgid ""
"If enabled, displays avoidance agents radius when \"Visible Avoidance\" is "
"enabled in the Debug menu."
msgstr ""
"Если включено, отображает радиус агентов избегания, когда в меню «Отладка» "
"включен параметр «Видимое избегание» (\"Visible Avoidance\")."

msgid ""
"If enabled, displays avoidance obstacles radius when \"Visible Avoidance\" is "
"enabled in the Debug menu."
msgstr ""
"Если включено, отображает радиус препятствий для избегания, когда в меню "
"«Отладка» включен параметр «Видимое избегание» (\"Visible Avoidance\")."

msgid ""
"If enabled, displays static avoidance obstacles when \"Visible Avoidance\" is "
"enabled in the Debug menu."
msgstr ""
"Если этот параметр включен, отображаются статические препятствия для "
"избегания, если в меню «Отладка» включен параметр «Видимое избегание» "
"(\"Visible Avoidance\")."

msgid ""
"Color of the avoidance obstacles radius, visible when \"Visible Avoidance\" "
"is enabled in the Debug menu."
msgstr ""
"Цвет радиуса препятствий для избегания, видимый, если в меню «Отладка» "
"включен параметр «Видимое избегание»."

msgid ""
"Color of the static avoidance obstacles edges when their vertices are winded "
"in order to push agents in, visible when \"Visible Avoidance\" is enabled in "
"the Debug menu."
msgstr ""
"Цвет кромок статических препятствий для избегания, когда их вершины "
"закручены, чтобы втолкнуть агентов; виден, если в меню «Отладка» включен "
"параметр «Видимое избегание»."

msgid ""
"Color of the static avoidance obstacles edges when their vertices are winded "
"in order to push agents out, visible when \"Visible Avoidance\" is enabled in "
"the Debug menu."
msgstr ""
"Цвет кромок статических препятствий для избегания, когда их вершины закручены "
"с целью выталкивания агентов; виден, если в меню «Отладка» включен параметр "
"«Видимое избегание»."

msgid ""
"Color of the static avoidance obstacles faces when their vertices are winded "
"in order to push agents in, visible when \"Visible Avoidance\" is enabled in "
"the Debug menu."
msgstr ""
"Цвет статичных препятствий для избегания, когда их вершины закручены, чтобы "
"втолкнуть агентов; виден, если в меню «Отладка» включен параметр «Видимое "
"избегание»."

msgid ""
"Color of the static avoidance obstacles faces when their vertices are winded "
"in order to push agents out, visible when \"Visible Avoidance\" is enabled in "
"the Debug menu."
msgstr ""
"Цвет статичных препятствий для избегания, когда их вершины закручены, чтобы "
"вытолкнуть агентов; виден, если в меню «Отладка» включен параметр «Видимое "
"избегание»."

msgid ""
"Color of the contact points between collision shapes, visible when \"Visible "
"Collision Shapes\" is enabled in the Debug menu."
msgstr ""
"Цвет точек контакта между фигурами столкновений, видимый, если в меню "
"«Отладка» включен параметр «Видимые фигуры столкновений»."

msgid ""
"Sets whether 2D physics will display collision outlines in game when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
"Устанавливает, будет ли 2D-физика отображать контуры столкновений в игре, "
"если в меню «Отладка» включен параметр «Видимые формы столкновений»."

msgid ""
"Maximum number of contact points between collision shapes to display when "
"\"Visible Collision Shapes\" is enabled in the Debug menu."
msgstr ""
"Максимальное количество точек контакта между фигурами столкновений, "
"отображаемых при включении параметра «Видимые фигуры столкновений» в меню "
"«Отладка»."

msgid ""
"Color of the collision shapes, visible when \"Visible Collision Shapes\" is "
"enabled in the Debug menu."
msgstr ""
"Цвет фигур столкновений, видимый, если в меню «Отладка» включен параметр "
"«Видимые фигуры столкновений»."

msgid ""
"Color to display enabled navigation agent paths when an agent has debug "
"enabled."
msgstr ""
"Цвет для отображения путей включенного агента навигации, когда у агента "
"включена отладка."

msgid ""
"Rasterized size (pixel) used to render navigation agent path points when an "
"agent has debug enabled."
msgstr ""
"Растровый размер (в пикселях), используемый для визуализации точек пути "
"агента навигации, когда у агента включена отладка."

msgid ""
"Color to display edge connections between navigation regions, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Цвет для отображения граничных соединений между областями навигации, видимый, "
"если в меню «Отладка» включен параметр «Видимая навигация»."

msgid ""
"If enabled, displays navigation agent paths when an agent has debug enabled."
msgstr ""
"Если включено, отображает пути агента навигации, когда у агента включена "
"отладка."

msgid ""
"If enabled, displays edge connections between navigation regions when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Если включено, отображает граничные соединения между областями навигации, "
"когда в меню «Отладка» включен параметр «Видимая навигация»."

msgid ""
"If enabled, displays navigation mesh polygon edges when \"Visible "
"Navigation\" is enabled in the Debug menu."
msgstr ""
"Если включено, отображает края полигонов навигационной сетки, когда в меню "
"«Отладка» включен параметр «Видимая навигация»."

msgid ""
"If enabled, colorizes each navigation mesh polygon face with a random color "
"when \"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Если включено, окрашивает каждую грань полигона навигационной сетки случайным "
"цветом, когда в меню «Отладка» включен параметр «Видимая навигация»."

msgid ""
"If enabled, displays navigation link connections when \"Visible Navigation\" "
"is enabled in the Debug menu."
msgstr ""
"Если включено, отображает соединения навигационных ссылок, когда в меню "
"«Отладка» включена опция «Видимая навигация»."

msgid ""
"Color to display enabled navigation mesh polygon edges, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Цвет для отображения включенных кромок полигонов сетки навигации, видимых, "
"если в меню «Отладка» включена опция «Видимая навигация»."

msgid ""
"Color to display disabled navigation mesh polygon edges, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Цвет для отображения отключенных краев полигонов сетки навигации, видимых, "
"если в меню «Отладка» включен параметр «Видимая навигация»."

msgid ""
"Color to display enabled navigation mesh polygon faces, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Цвет для отображения включенных граней полигонов сетки навигации, видимых, "
"если в меню «Отладка» включена опция «Видимая навигация»."

msgid ""
"Color to display disabled navigation mesh polygon faces, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Цвет для отображения отключенных граней полигонов сетки навигации, видимых, "
"если в меню «Отладка» включен параметр «Видимая навигация»."

msgid ""
"Color to use to display navigation link connections, visible when \"Visible "
"Navigation\" is enabled in the Debug menu."
msgstr ""
"Цвет, используемый для отображения связей навигационных ссылок, видимый, если "
"в меню «Отладка» включен параметр «Видимая навигация»."

msgid ""
"Color to use to display disabled navigation link connections, visible when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Цвет, используемый для отображения отключенных навигационных ссылок, видимых, "
"если в меню «Отладка» включен параметр «Видимая навигация»."

msgid ""
"If enabled, displays navigation agent paths through geometry when an agent "
"has debug enabled."
msgstr ""
"Если включено, отображает пути агента навигации, когда у агента включена "
"отладка."

msgid ""
"If enabled, displays edge connections between navigation regions through "
"geometry when \"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Если включено, отображает граничные соединения между областями навигации "
"через геометрию, когда в меню «Отладка» включен параметр «Видимая навигация»."

msgid ""
"If enabled, displays navigation mesh polygon edges through geometry when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Если включено, отображает ребра полигонов навигационной сетки через "
"геометрию, когда в меню «Отладка» включен параметр «Видимая навигация»."

msgid ""
"If enabled, displays navigation link connections through geometry when "
"\"Visible Navigation\" is enabled in the Debug menu."
msgstr ""
"Если включено, отображает соединения навигационных ссылок через геометрию, "
"когда в меню «Отладка» включена опция «Видимая навигация»."

msgid ""
"Color of the curve path geometry, visible when \"Visible Paths\" is enabled "
"in the Debug menu."
msgstr ""
"Цвет геометрии кривой траектории, видимый, если в меню «Отладка» включен "
"параметр «Видимые пути»."

msgid ""
"Line width of the curve path geometry, visible when \"Visible Paths\" is "
"enabled in the Debug menu."
msgstr ""
"Ширина линии геометрии траектории кривой, видимая, если в меню «Отладка» "
"включен параметр «Видимые пути»."

msgid ""
"Sets the driver to be used by the display server. This property can not be "
"edited directly, instead, set the driver using the platform-specific "
"overrides."
msgstr ""
"Устанавливает драйвер, который будет использоваться сервером отображения. Это "
"свойство нельзя редактировать напрямую, вместо этого установите драйвер с "
"помощью переопределений, зависящих от платформы."

msgid "Android override for [member display/display_server/driver]."
msgstr "Переопределение Android для [member display/display_server/driver]."

msgid "iOS override for [member display/display_server/driver]."
msgstr "Переопределение iOS для [member display/display_server/driver]."

msgid "LinuxBSD override for [member display/display_server/driver]."
msgstr "Переопределение LinuxBSD для [member display/display_server/driver]."

msgid "MacOS override for [member display/display_server/driver]."
msgstr "Переопределение MacOS для [member display/display_server/driver]."

msgid "visionOS override for [member display/display_server/driver]."
msgstr "Переопределение visionOS для [member display/display_server/driver]."

msgid "Windows override for [member display/display_server/driver]."
msgstr "Переопределение Windows для [member display/display_server/driver]."

msgid "Custom image for the mouse cursor (limited to 256×256)."
msgstr "Ваше собственное изображение для курсора мыши (макс. размер 256×256)."

msgid "Hotspot for the custom mouse cursor image."
msgstr "Горячая точка для пользовательского изображения курсора мыши."

msgid "Position offset for tooltips, relative to the mouse cursor's hotspot."
msgstr ""
"Смещение позиции всплывающих подсказок относительно активной точки курсора "
"мыши."

msgid ""
"If [code]true[/code], allows HiDPI display on Windows, macOS, Android, iOS "
"and Web. If [code]false[/code], the platform's low-DPI fallback will be used "
"on HiDPI displays, which causes the window to be displayed in a blurry or "
"pixelated manner (and can cause various window management bugs). Therefore, "
"it is recommended to make your project scale to [url=$DOCS_URL/tutorials/"
"rendering/multiple_resolutions.html]multiple resolutions[/url] instead of "
"disabling this setting.\n"
"[b]Note:[/b] This setting has no effect on Linux as DPI-awareness fallbacks "
"are not supported there."
msgstr ""
"Если [code]true[/code], разрешается отображение HiDPI на Windows, macOS, "
"Android, iOS и Web. Если [code]false[/code], резервный вариант платформы с "
"низким DPI будет использоваться на дисплеях HiDPI, что приводит к тому, что "
"окно отображается размытым или пикселизированным (и может вызывать различные "
"ошибки управления окнами). Поэтому рекомендуется масштабировать ваш проект до "
"[url=$DOCS_URL/tutorials/rendering/multiple_resolutions.html]нескольких "
"разрешений[/url] вместо отключения этого параметра.\n"
"[b]Примечание:[/b] Этот параметр не влияет на Linux, так как резервные "
"варианты с учетом DPI там не поддерживаются."

msgid ""
"Enable Swappy for stable frame pacing on Android. Highly recommended.\n"
"[b]Note:[/b] This option will be forced off when using OpenXR."
msgstr ""
"Включите Swappy для стабильной рамочной регуляции на Android. Настоятельно "
"рекомендуется.\n"
"[b]Примечание:[/b] Эта опция будет принудительно отключена при использовании "
"OpenXR."

msgid ""
"Swappy mode to use. The options are:\n"
"- [code]pipeline_forced_on[/code]: Try to honor [member Engine.max_fps]. "
"Pipelining is always on. This is the same behavior as a desktop PC.\n"
"- [code]auto_fps_pipeline_forced_on[/code]: Calculate the max FPS "
"automatically. The actual max FPS will be between [code]0[/code] and [member "
"Engine.max_fps]. While this sounds convenient, beware that Swappy will often "
"downgrade the max FPS until it finds a value that can be maintained. That "
"means, if your game runs between 40fps and 60fps on a 60hz screen, after some "
"time Swappy will downgrade the max FPS so that the game renders at a perfect "
"30fps.\n"
"- [code]auto_fps_auto_pipeline[/code]: Same as "
"[code]auto_fps_pipeline_forced_on[/code], but if Swappy detects that "
"rendering is very fast (for example it takes less than 8ms to render on a "
"60hz screen), Swappy will disable pipelining to minimize input latency. This "
"is the default.\n"
"[b]Note:[/b] If [member Engine.max_fps] is [code]0[/code], the actual max FPS "
"will be considered to be the screen's refresh rate (often 60hz, 90hz, or "
"120hz, depending on device model and OS settings)."
msgstr ""
"Режим Swappy для использования. Варианты: \n"
"- [code]pipeline_forced_on[/code]: Попытаться соблюдать [member "
"Engine.max_fps]. Конвейерная обработка всегда включена. Аналогично поведению "
"настольного ПК. \n"
"- [code]auto_fps_pipeline_forced_on[/code]: Автоматически рассчитывать "
"максимальный FPS. Фактический FPS будет между [code]0[/code] и [member "
"Engine.max_fps]. Хотя это удобно, учтите: Swappy часто будет снижать FPS до "
"достижения стабильного значения. Например, если игра работает на 40-60 FPS "
"при 60 Гц, со временем Swappy снизит FPS для стабильной отрисовки на 30 "
"FPS. \n"
"- [code]auto_fps_auto_pipeline[/code]: Аналогично "
"[code]auto_fps_pipeline_forced_on[/code], но если отрисовка очень быстрая "
"(например, занимает <8 мс при 60 Гц), Swappy отключит конвейер для "
"минимизации задержки ввода. Режим по умолчанию. \n"
"[b]Примечание:[/b] Если [member Engine.max_fps] равен [code]0[/code], "
"максимальным FPS будет считаться частота обновления экрана (обычно 60 Гц, 90 "
"Гц или 120 Гц в зависимости от устройства и настроек ОС)."

msgid ""
"The default screen orientation to use on mobile devices. See [enum "
"DisplayServer.ScreenOrientation] for possible values.\n"
"[b]Note:[/b] When set to a portrait orientation, this project setting does "
"not flip the project resolution's width and height automatically. Instead, "
"you have to set [member display/window/size/viewport_width] and [member "
"display/window/size/viewport_height] accordingly."
msgstr ""
"Ориентация экрана по умолчанию для использования на мобильных устройствах. "
"См. [enum DisplayServer.ScreenOrientation] для возможных значений.\n"
"[b]Примечание:[/b] При установке портретной ориентации эта настройка проекта "
"не меняет ширину и высоту разрешения проекта автоматически. Вместо этого вам "
"нужно установить [member display/window/size/viewport_width] и [member "
"display/window/size/viewport_height] соответственно."

msgid ""
"If [code]true[/code], iOS devices that support high refresh rate/"
"\"ProMotion\" will be allowed to render at up to 120 frames per second."
msgstr ""
"Если [code]true[/code], устройства iOS, поддерживающие высокую частоту "
"обновления/\"ProMotion\", смогут выполнять рендеринг со скоростью до 120 "
"кадров в секунду."

msgid ""
"If [code]true[/code], the home indicator is hidden automatically. This only "
"affects iOS devices without a physical home button."
msgstr ""
"Если [code]true[/code], индикатор «Домой» автоматически скрывается. Это "
"касается только устройств iOS без физической кнопки «Домой»."

msgid "If [code]true[/code], the status bar is hidden while the app is running."
msgstr ""
"Если [code]true[/code], строка состояния скрыта во время работы приложения."

msgid ""
"If [code]true[/code], it will require two swipes to access iOS UI that uses "
"gestures.\n"
"[b]Note:[/b] This setting has no effect on the home indicator if "
"[code]hide_home_indicator[/code] is [code]true[/code]."
msgstr ""
"Если [code]true[/code], для доступа к пользовательскому интерфейсу iOS, "
"использующему жесты, потребуется два свайпа.\n"
"[b]Примечание:[/b] Эта настройка не влияет на индикатор «Домой», если "
"[code]hide_home_indicator[/code] имеет значение [code]true[/code]."

msgid ""
"If [code]true[/code], allows per-pixel transparency for the window "
"background. This affects performance, so leave it on [code]false[/code] "
"unless you need it. See also [member display/window/size/transparent] and "
"[member rendering/viewport/transparent_background]."
msgstr ""
"Если [code]true[/code], разрешает попиксельную прозрачность для фона окна. "
"Это влияет на производительность, поэтому оставьте его на [code]false[/code], "
"если вам это не нужно. См. также [member display/window/size/transparent] и "
"[member rendering/viewport/transparent_background]."

msgid ""
"Forces the main window to be always on top.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and Web."
msgstr ""
"Заставляет главное окно всегда быть поверх остальных.\n"
"[b]Примечание:[/b] Этот параметр игнорируется в iOS, Android и Web."

msgid ""
"Forces the main window to be borderless.\n"
"[b]Note:[/b] This setting is ignored on iOS, Android, and Web."
msgstr ""
"Заставляет главное окно быть безрамочным.\n"
"[b]Примечание:[/b] Этот параметр игнорируется в iOS, Android и Web."

msgid ""
"Main window content is expanded to the full size of the window. Unlike a "
"borderless window, the frame is left intact and can be used to resize the "
"window, and the title bar is transparent, but has minimize/maximize/close "
"buttons.\n"
"[b]Note:[/b] This setting is implemented only on macOS."
msgstr ""
"Содержимое главного окна расширяется до полного размера окна. В отличие от "
"окна без рамки, рамка остается нетронутой и может использоваться для "
"изменения размера окна, а строка заголовка прозрачна, но имеет кнопки "
"свернуть/развернуть/закрыть.\n"
"[b]Примечание:[/b] Эта настройка реализована только в macOS."

msgid ""
"Main window initial position (in virtual desktop coordinates), this setting "
"is used only if [member display/window/size/initial_position_type] is set to "
"\"Absolute\" ([code]0[/code]).\n"
"[b]Note:[/b] This setting only affects the exported project, or when the "
"project is run from the command line. In the editor, the value of [member "
"EditorSettings.run/window_placement/rect_custom_position] is used instead."
msgstr ""
"Начальное положение главного окна (в координатах виртуального рабочего "
"стола), этот параметр используется только если [member display/window/size/"
"initial_position_type] установлен на \"Absolute\" ([code]0[/code]).\n"
"[b]Примечание:[/b] Этот параметр влияет только на экспортированный проект или "
"когда проект запускается из командной строки. В редакторе вместо этого "
"используется значение [member EditorSettings.run/window_placement/"
"rect_custom_position]."

msgid ""
"Main window initial position.\n"
"[code]0[/code] - \"Absolute\", [member display/window/size/initial_position] "
"is used to set window position.\n"
"[code]1[/code] - \"Primary Screen Center\".\n"
"[code]2[/code] - \"Other Screen Center\", [member display/window/size/"
"initial_screen] is used to set the screen.\n"
"[b]Note:[/b] This setting only affects the exported project, or when the "
"project is run from the command line. In the editor, the value of [member "
"EditorSettings.run/window_placement/rect] is used instead."
msgstr ""
"Начальное положение главного окна.\n"
"[code]0[/code] - \"Абсолютное\", [member display/window/size/"
"initial_position] используется для установки положения окна.\n"
"[code]1[/code] - \"Центр основного экрана\".\n"
"[code]2[/code] - \"Центр другого экрана\", [member display/window/size/"
"initial_screen] используется для установки экрана.\n"
"[b]Примечание:[/b] Эта настройка влияет только на экспортированный проект или "
"на запуск проекта из командной строки. В редакторе вместо этого используется "
"значение [member EditorSettings.run/window_placement/rect]."

msgid ""
"Main window initial screen, this setting is used only if [member display/"
"window/size/initial_position_type] is set to \"Other Screen Center\" "
"([code]2[/code]).\n"
"[b]Note:[/b] This setting only affects the exported project, or when the "
"project is run from the command line. In the editor, the value of [member "
"EditorSettings.run/window_placement/screen] is used instead."
msgstr ""
"Начальный экран главного окна, эта настройка используется только если [member "
"display/window/size/initial_position_type] установлен на \"Other Screen "
"Center\" ([code]2[/code]).\n"
"[b]Примечание:[/b] Эта настройка влияет только на экспортированный проект или "
"когда проект запускается из командной строки. В редакторе вместо этого "
"используется значение [member EditorSettings.run/window_placement/screen]."

msgid "If [code]true[/code], the main window's maximize button is disabled."
msgstr "Если [code]true[/code], кнопка развертывания главного окна отключена."

msgid "If [code]true[/code], the main window's minimize button is disabled."
msgstr "Если [code]true[/code], кнопка сворачивания главного окна отключена."

msgid ""
"Main window mode. See [enum DisplayServer.WindowMode] for possible values and "
"how each mode behaves.\n"
"[b]Note:[/b] Game embedding is available only in the \"Windowed\" mode."
msgstr ""
"Режим главного окна. См. [enum DisplayServer.WindowMode] для возможных "
"значений и того, как ведет себя каждый режим.\n"
"[b]Примечание:[/b] Встраивание игры доступно только в режиме «Оконный»."

msgid ""
"Main window can't be focused. No-focus window will ignore all input, except "
"mouse clicks."
msgstr ""
"Главное окно не может быть сфокусировано. Окно без фокуса будет игнорировать "
"весь ввод, кроме щелчков мыши."

msgid ""
"If [code]true[/code], allows the window to be resizable by default.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"whether the window is resizable at runtime, set [member Window.unresizable] "
"instead on the root Window, which can be retrieved using "
"[code]get_viewport().get_window()[/code]. [member Window.unresizable] takes "
"the opposite value of this setting.\n"
"[b]Note:[/b] Certain window managers can be configured to ignore the non-"
"resizable status of a window. Do not rely on this setting as a guarantee that "
"the window will [i]never[/i] be resizable.\n"
"[b]Note:[/b] This setting is ignored on iOS."
msgstr ""
"Если [code]true[/code], позволяет изменять размер окна по умолчанию.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить, можно ли изменять размер окна во время выполнения, установите "
"[member Window.unresizable] вместо этого в корневом окне, которое можно "
"получить с помощью [code]get_viewport().get_window()[/code]. [member "
"Window.unresizable] принимает противоположное значение этого параметра.\n"
"[b]Примечание:[/b] Некоторые менеджеры окон можно настроить так, чтобы они "
"игнорировали статус неизменяемого размера окна. Не полагайтесь на этот "
"параметр как на гарантию того, что окно [i]никогда[/i] не будет изменять "
"размер.\n"
"[b]Примечание:[/b] Этот параметр игнорируется в iOS."

msgid ""
"If [code]true[/code], the main window uses sharp corners by default.\n"
"[b]Note:[/b] This property is implemented only on Windows (11)."
msgstr ""
"Если [code]true[/code], главное окно по умолчанию использует острые углы.\n"
"[b]Примечание:[/b] Это свойство реализовано только в Windows (11)."

msgid ""
"If [code]true[/code], enables a window manager hint that the main window "
"background [i]can[/i] be transparent. This does not make the background "
"actually transparent. For the background to be transparent, the root viewport "
"must also be made transparent by enabling [member rendering/viewport/"
"transparent_background].\n"
"[b]Note:[/b] To use a transparent splash screen, set [member application/"
"boot_splash/bg_color] to [code]Color(0, 0, 0, 0)[/code].\n"
"[b]Note:[/b] This setting has no effect if [member display/window/"
"per_pixel_transparency/allowed] is set to [code]false[/code].\n"
"[b]Note:[/b] This setting has no effect on Android as transparency is "
"controlled only via [member display/window/per_pixel_transparency/allowed]."
msgstr ""
"Если [code]true[/code], включается подсказка оконного менеджера о том, что "
"фон главного окна [i]может[/i] быть прозрачным. Это не делает фон фактически "
"прозрачным. Для прозрачности фона необходимо также сделать прозрачным "
"корневую область просмотра, включив [member rendering/viewport/"
"transparent_background].\n"
"[b]Примечание:[/b] Чтобы использовать прозрачный экран-заставку, установите "
"для [member application/boot_splash/bg_color] значение [code]Color(0, 0, 0, 0)"
"[/code].\n"
"[b]Примечание:[/b] Этот параметр не действует, если для [member display/"
"window/per_pixel_transparency/allowed] установлено значение [code]false[/"
"code].\n"
"[b]Примечание:[/b] Этот параметр не действует на Android, поскольку "
"прозрачность контролируется только через [member display/window/"
"per_pixel_transparency/allowed]."

msgid ""
"Sets the game's main viewport height. On desktop platforms, this is also the "
"initial window height, represented by an indigo-colored rectangle in the 2D "
"editor. Stretch mode settings also use this as a reference when using the "
"[code]canvas_items[/code] or [code]viewport[/code] stretch modes. See also "
"[member display/window/size/viewport_width], [member display/window/size/"
"window_width_override] and [member display/window/size/"
"window_height_override]."
msgstr ""
"Устанавливает высоту основного окна просмотра игры. На настольных платформах "
"это также начальная высота окна, представленная прямоугольником цвета индиго "
"в 2D-редакторе. Настройки режима растяжения также используют это в качестве "
"ссылки при использовании режимов растяжения [code]canvas_items[/code] или "
"[code]viewport[/code]. См. также [member display/window/size/viewport_width], "
"[member display/window/size/window_width_override] и [member display/window/"
"size/window_height_override]."

msgid ""
"Sets the game's main viewport width. On desktop platforms, this is also the "
"initial window width, represented by an indigo-colored rectangle in the 2D "
"editor. Stretch mode settings also use this as a reference when using the "
"[code]canvas_items[/code] or [code]viewport[/code] stretch modes. See also "
"[member display/window/size/viewport_height], [member display/window/size/"
"window_width_override] and [member display/window/size/"
"window_height_override]."
msgstr ""
"Устанавливает ширину основного окна просмотра игры. На настольных платформах "
"это также начальная ширина окна, представленная прямоугольником цвета индиго "
"в 2D-редакторе. Настройки режима растяжения также используют это в качестве "
"ссылки при использовании режимов растяжения [code]canvas_items[/code] или "
"[code]viewport[/code]. См. также [member display/window/size/"
"viewport_height], [member display/window/size/window_width_override] и "
"[member display/window/size/window_height_override]."

msgid ""
"On desktop platforms, overrides the game's initial window height. See also "
"[member display/window/size/window_width_override], [member display/window/"
"size/viewport_width] and [member display/window/size/viewport_height].\n"
"[b]Note:[/b] By default, or when set to [code]0[/code], the initial window "
"height is the [member display/window/size/viewport_height]. This setting is "
"ignored on iOS, Android, and Web."
msgstr ""
"На настольных платформах переопределяет начальную высоту окна игры. См. также "
"[member display/window/size/window_width_override], [member display/window/"
"size/viewport_width] и [member display/window/size/viewport_height].\n"
"[b]Примечание:[/b] По умолчанию или при установке на [code]0[/code] начальная "
"высота окна равна [member display/window/size/viewport_height]. Этот параметр "
"игнорируется в iOS, Android и Web."

msgid ""
"On desktop platforms, overrides the game's initial window width. See also "
"[member display/window/size/window_height_override], [member display/window/"
"size/viewport_width] and [member display/window/size/viewport_height].\n"
"[b]Note:[/b] By default, or when set to [code]0[/code], the initial window "
"width is the [member display/window/size/viewport_width]. This setting is "
"ignored on iOS, Android, and Web."
msgstr ""
"На настольных платформах переопределяет начальную ширину окна игры. См. также "
"[member display/window/size/window_height_override], [member display/window/"
"size/viewport_width] и [member display/window/size/viewport_height].\n"
"[b]Примечание:[/b] По умолчанию или при установке на [code]0[/code] начальная "
"ширина окна равна [member display/window/size/viewport_width]. Этот параметр "
"игнорируется на iOS, Android и в Web."

msgid ""
"Defines how the base size is stretched to fit the resolution of the window or "
"screen.\n"
"[b]\"disabled\"[/b]: No stretching happens. One unit in the scene corresponds "
"to one pixel on the screen. In this mode, [member display/window/stretch/"
"aspect] has no effect. Recommended for non-game applications.\n"
"[b]\"canvas_items\"[/b]: The base size specified in width and height in the "
"project settings is stretched to cover the whole screen (taking [member "
"display/window/stretch/aspect] into account). This means that everything is "
"rendered directly at the target resolution. 3D is unaffected, while in 2D, "
"there is no longer a 1:1 correspondence between sprite pixels and screen "
"pixels, which may result in scaling artifacts. Recommended for most games "
"that don't use a pixel art aesthetic, although it is possible to use this "
"stretch mode for pixel art games too (especially in 3D).\n"
"[b]\"viewport\"[/b]: The size of the root [Viewport] is set precisely to the "
"base size specified in the Project Settings' Display section. The scene is "
"rendered to this viewport first. Finally, this viewport is scaled to fit the "
"screen (taking [member display/window/stretch/aspect] into account). "
"Recommended for games that use a pixel art aesthetic."
msgstr ""
"Определяет, как базовый размер растягивается для соответствия разрешению окна "
"или экрана.\n"
"[b]\"disabled\"[/b]: Растягивания не происходит. Одна единица в сцене "
"соответствует одному пикселю на экране. В этом режиме [member display/window/"
"stretch/aspect] не имеет никакого эффекта. Рекомендуется для неигровых "
"приложений.\n"
"[b]\"canvas_items\"[/b]: Базовый размер, указанный в ширине и высоте в "
"настройках проекта, растягивается для покрытия всего экрана (с учетом [member "
"display/window/stretch/aspect]). Это означает, что все отображается "
"непосредственно в целевом разрешении. 3D не затрагивается, тогда как в 2D "
"больше нет соответствия 1:1 между пикселями спрайта и пикселями экрана, что "
"может привести к артефактам масштабирования. Рекомендуется для большинства "
"игр, не использующих эстетику пиксельной графики, хотя этот режим растяжения "
"можно использовать и для игр с пиксельной графикой (особенно в 3D).\n"
"[b]\"viewport\"[/b]: Размер корневого [Viewport] устанавливается точно по "
"базовому размеру, указанному в разделе Display настроек проекта. Сначала "
"сцена визуализируется в этом viewport. Наконец, этот viewport масштабируется "
"для заполнения экрана (принимая во внимание [member display/window/stretch/"
"aspect]). Рекомендуется для игр, использующих эстетику пиксельной графики."

msgid ""
"The scale factor multiplier to use for 2D elements. This multiplies the final "
"scale factor determined by [member display/window/stretch/mode]. If using the "
"[b]Disabled[/b] stretch mode, this scale factor is applied as-is. This can be "
"adjusted to make the UI easier to read on certain displays."
msgstr ""
"Множитель масштабного коэффициента для использования для 2D-элементов. Он "
"умножает конечный масштабный коэффициент, определяемый [member display/window/"
"stretch/mode]. Если используется режим растяжения [b]Disabled[/b], этот "
"масштабный коэффициент применяется как есть. Его можно настроить, чтобы "
"сделать пользовательский интерфейс более удобным для чтения на определенных "
"дисплеях."

msgid ""
"The policy to use to determine the final scale factor for 2D elements. This "
"affects how [member display/window/stretch/scale] is applied, in addition to "
"the automatic scale factor determined by [member display/window/stretch/"
"mode].\n"
"[b]\"fractional\"[/b]: The scale factor will not be modified.\n"
"[b]\"integer\"[/b]: The scale factor will be floored to an integer value, "
"which means that the screen size will always be an integer multiple of the "
"base viewport size. This provides a crisp pixel art appearance.\n"
"[b]Note:[/b] When using integer scaling with a stretch mode, resizing the "
"window to be smaller than the base viewport size will clip the contents. "
"Consider preventing that by setting [member Window.min_size] to the same "
"value as the base viewport size defined in [member display/window/size/"
"viewport_width] and [member display/window/size/viewport_height]."
msgstr ""
"Политика, используемая для определения окончательного масштабного "
"коэффициента для 2D-элементов. Это влияет на то, как применяется [member "
"display/window/stretch/scale], в дополнение к автоматическому масштабному "
"коэффициенту, определяемому [member display/window/stretch/mode].\n"
"[b]\"fractional\"[/b]: масштабный коэффициент не будет изменен.\n"
"[b]\"integer\"[/b]: масштабный коэффициент будет уменьшен до целочисленного "
"значения, что означает, что размер экрана всегда будет целым числом, кратным "
"базовому размеру области просмотра. Это обеспечивает четкий вид пиксельной "
"графики.\n"
"[b]Примечание:[/b] При использовании целочисленного масштабирования с режимом "
"растяжения изменение размера окна до размера меньше базового размера области "
"просмотра приведет к обрезке содержимого. Рассмотрите возможность "
"предотвращения этого, установив [member Window.min_size] на то же значение, "
"что и базовый размер области просмотра, определенный в [member display/window/"
"size/viewport_width] и [member display/window/size/viewport_height]."

msgid ""
"If [code]true[/code], subwindows are embedded in the main window (this is "
"also called single-window mode). Single-window mode can be faster as it does "
"not need to create a separate window for every popup and tooltip, which can "
"be a slow operation depending on the operating system and rendering method in "
"use.\n"
"If [code]false[/code], subwindows are created as separate windows (this is "
"also called multi-window mode). This allows them to be moved outside the main "
"window and use native operating system window decorations.\n"
"This is equivalent to [member EditorSettings.interface/editor/"
"single_window_mode] in the editor, except the setting's value is inverted."
msgstr ""
"Если [code]true[/code], подокна встраиваются в главное окно (это также "
"называется однооконный режим). Однооконный режим может быть быстрее, так как "
"ему не нужно создавать отдельное окно для каждого всплывающего окна и "
"подсказки, что может быть медленной операцией в зависимости от операционной "
"системы и используемого метода рендеринга.\n"
"Если [code]false[/code], подокна создаются как отдельные окна (это также "
"называется многооконный режим). Это позволяет перемещать их за пределы "
"главного окна и использовать собственные декорации окон операционной "
"системы.\n"
"Это эквивалентно [member EditorSettings.interface/editor/single_window_mode] "
"в редакторе, за исключением того, что значение настройки инвертировано."

msgid ""
"Sets the V-Sync mode for the main game window. The editor's own V-Sync mode "
"can be set using [member EditorSettings.interface/editor/vsync_mode].\n"
"See [enum DisplayServer.VSyncMode] for possible values and how they affect "
"the behavior of your application.\n"
"Depending on the platform and rendering method, the engine will fall back to "
"[b]Enabled[/b] if the desired mode is not supported.\n"
"V-Sync can be disabled on the command line using the [code]--disable-vsync[/"
"code] [url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command line "
"argument[/url].\n"
"[b]Note:[/b] The [b]Adaptive[/b] and [b]Mailbox[/b] V-Sync modes are only "
"supported in the Forward+ and Mobile rendering methods, not Compatibility.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the V-Sync mode at runtime, call [method DisplayServer.window_set_vsync_mode] "
"instead."
msgstr ""
"Устанавливает режим V-Sync для главного окна игры. Собственный режим V-Sync "
"редактора можно установить с помощью [member EditorSettings.interface/editor/"
"vsync_mode].\n"
"См. [enum DisplayServer.VSyncMode] для возможных значений и того, как они "
"влияют на поведение вашего приложения.\n"
"В зависимости от платформы и метода рендеринга, движок вернется к [b]Enabled[/"
"b], если нужный режим не поддерживается.\n"
"V-Sync можно отключить в командной строке с помощью [code]--disable-vsync[/"
"code] [url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]аргумента "
"командной строки[/url].\n"
"[b]Примечание:[/b] Режимы [b]Adaptive[/b] и [b]Mailbox[/b] V-Sync "
"поддерживаются только в методах рендеринга Forward+ и Mobile, но не "
"Compatibility.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить режим V-Sync во время выполнения, вместо этого вызовите [method "
"DisplayServer.window_set_vsync_mode]."

msgid ""
"Name of the .NET assembly. This name is used as the name of the "
"[code].csproj[/code] and [code].sln[/code] files. By default, it's set to the "
"name of the project ([member application/config/name]) allowing to change it "
"in the future without affecting the .NET assembly."
msgstr ""
"Имя сборки .NET. Это имя используется в качестве имени файлов [code].csproj[/"
"code] и [code].sln[/code]. По умолчанию оно установлено на имя проекта "
"([member application/config/name]), что позволяет изменить его в будущем, не "
"затрагивая сборку .NET."

msgid ""
"Number of times to attempt assembly reloading after rebuilding .NET "
"assemblies. Effectively also the timeout in seconds to wait for unloading of "
"script assemblies to finish."
msgstr ""
"Количество попыток перезагрузки сборки после пересборки сборок .NET. "
"Фактически также тайм-аут в секундах для ожидания завершения выгрузки сборок "
"скриптов."

msgid ""
"Directory that contains the [code].sln[/code] file. By default, the "
"[code].sln[/code] files is in the root of the project directory, next to the "
"[code]project.godot[/code] and [code].csproj[/code] files.\n"
"Changing this value allows setting up a multi-project scenario where there "
"are multiple [code].csproj[/code]. Keep in mind that the Godot project is "
"considered one of the C# projects in the workspace and it's root directory "
"should contain the [code]project.godot[/code] and [code].csproj[/code] next "
"to each other."
msgstr ""
"Каталог, содержащий файл [code].sln[/code]. По умолчанию файлы [code].sln[/"
"code] находятся в корне каталога проекта, рядом с файлами "
"[code]project.godot[/code] и [code].csproj[/code].\n"
"Изменение этого значения позволяет настроить многопроектный сценарий, в "
"котором есть несколько [code].csproj[/code]. Имейте в виду, что проект Godot "
"считается одним из проектов C# в рабочей области, и его корневой каталог "
"должен содержать [code]project.godot[/code] и [code].csproj[/code] рядом друг "
"с другом."

msgid ""
"If [code]true[/code], text resource ([code]tres[/code]) and text scene "
"([code]tscn[/code]) files are converted to their corresponding binary format "
"on export. This decreases file sizes and speeds up loading slightly.\n"
"[b]Note:[/b] Because a resource's file extension may change in an exported "
"project, it is heavily recommended to use [method @GDScript.load] or "
"[ResourceLoader] instead of [FileAccess] to load resources dynamically.\n"
"[b]Note:[/b] The project settings file ([code]project.godot[/code]) will "
"always be converted to binary on export, regardless of this setting."
msgstr ""
"Если [code]true[/code], файлы текстового ресурса ([code]tres[/code]) и "
"текстовой сцены ([code]tscn[/code]) преобразуются в соответствующий двоичный "
"формат при экспорте. Это уменьшает размеры файлов и немного ускоряет "
"загрузку.\n"
"[b]Примечание:[/b] Поскольку расширение файла ресурса может измениться в "
"экспортированном проекте, настоятельно рекомендуется использовать [method "
"@GDScript.load] или [ResourceLoader] вместо [FileAccess] для динамической "
"загрузки ресурсов.\n"
"[b]Примечание:[/b] Файл настроек проекта ([code]project.godot[/code]) всегда "
"будет преобразован в двоичный формат при экспорте, независимо от этой "
"настройки."

msgid ""
"The maximum width to use when importing textures as an atlas. The value will "
"be rounded to the nearest power of two when used. Use this to prevent "
"imported textures from growing too large in the other direction."
msgstr ""
"Максимальная ширина, используемая при импорте текстур в качестве атласа. "
"Значение будет округлено до ближайшей степени двойки при использовании. "
"Используйте это, чтобы предотвратить слишком большой рост импортированных "
"текстур в другом направлении."

msgid "If [code]true[/code] importing of resources is run on multiple threads."
msgstr ""
"Если [code]true[/code], импорт ресурсов выполняется в несколько потоков."

msgid ""
"If [code]true[/code], requests V-Sync to be disabled when writing a movie "
"(similar to setting [member display/window/vsync/vsync_mode] to [b]Disabled[/"
"b]). This can speed up video writing if the hardware is fast enough to "
"render, encode and save the video at a framerate higher than the monitor's "
"refresh rate.\n"
"[b]Note:[/b] [member editor/movie_writer/disable_vsync] has no effect if the "
"operating system or graphics driver forces V-Sync with no way for "
"applications to disable it."
msgstr ""
"Если [code]true[/code], запрашивает отключение V-Sync при записи фильма "
"(аналогично установке [member display/window/vsync/vsync_mode] в [b]Disabled[/"
"b]). Это может ускорить запись видео, если оборудование достаточно быстрое "
"для рендеринга, кодирования и сохранения видео с частотой кадров выше частоты "
"обновления монитора.\n"
"[b]Примечание:[/b] [member editor/movie_writer/disable_vsync] не имеет "
"никакого эффекта, если операционная система или графический драйвер "
"принудительно включают V-Sync и у приложений нет возможности отключить его."

msgid ""
"The number of frames per second to record in the video when writing a movie. "
"Simulation speed will adjust to always match the specified framerate, which "
"means the engine will appear to run slower at higher [member editor/"
"movie_writer/fps] values. Certain FPS values will require you to adjust "
"[member editor/movie_writer/mix_rate] to prevent audio from desynchronizing "
"over time.\n"
"This can be specified manually on the command line using the [code]--fixed-"
"fps <fps>[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]."
msgstr ""
"Количество кадров в секунду для записи в видео при записи фильма. Скорость "
"симуляции будет подстраиваться так, чтобы всегда соответствовать указанной "
"частоте кадров, что означает, что движок будет работать медленнее при более "
"высоких значениях [member editor/movie_writer/fps]. Определенные значения FPS "
"потребуют от вас настройки [member editor/movie_writer/mix_rate], чтобы "
"предотвратить рассинхронизацию звука с течением времени. \n"
"Это можно указать вручную в командной строке с помощью [code]--fixed-fps "
"<fps>[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]аргумента командной строки[/url]."

msgid ""
"The audio mix rate to use in the recorded audio when writing a movie (in Hz). "
"This can be different from [member audio/driver/mix_rate], but this value "
"must be divisible by [member editor/movie_writer/fps] to prevent audio from "
"desynchronizing over time."
msgstr ""
"Скорость аудиомикса, используемая в записанном аудио при записи фильма (в "
"Гц). Может отличаться от [member audio/driver/mix_rate], но это значение "
"должно делиться на [member editor/movie_writer/fps], чтобы предотвратить "
"рассинхронизацию звука с течением времени."

msgid ""
"The output path for the movie. The file extension determines the "
"[MovieWriter] that will be used.\n"
"Godot has 3 built-in [MovieWriter]s:\n"
"- OGV container with Theora for video and Vorbis for audio ([code].ogv[/code] "
"file extension). Lossy compression, medium file sizes, fast encoding. The "
"lossy compression quality can be adjusted by changing [member "
"ProjectSettings.editor/movie_writer/video_quality] and [member "
"ProjectSettings.editor/movie_writer/ogv/audio_quality]. The resulting file "
"can be viewed in Godot with [VideoStreamPlayer] and most video players, but "
"not web browsers as they don't support Theora.\n"
"- AVI container with MJPEG for video and uncompressed audio ([code].avi[/"
"code] file extension). Lossy compression, medium file sizes, fast encoding. "
"The lossy compression quality can be adjusted by changing [member "
"ProjectSettings.editor/movie_writer/video_quality]. The resulting file can be "
"viewed in most video players, but it must be converted to another format for "
"viewing on the web or by Godot with [VideoStreamPlayer]. MJPEG does not "
"support transparency. AVI output is currently limited to a file of 4 GB in "
"size at most.\n"
"- PNG image sequence for video and WAV for audio ([code].png[/code] file "
"extension). Lossless compression, large file sizes, slow encoding. Designed "
"to be encoded to a video file with another tool such as [url=https://"
"ffmpeg.org/]FFmpeg[/url] after recording. Transparency is currently not "
"supported, even if the root viewport is set to be transparent.\n"
"If you need to encode to a different format or pipe a stream through third-"
"party software, you can extend this [MovieWriter] class to create your own "
"movie writers.\n"
"When using PNG output, the frame number will be appended at the end of the "
"file name. It starts from 0 and is padded with 8 digits to ensure correct "
"sorting and easier processing. For example, if the output path is [code]/tmp/"
"hello.png[/code], the first two frames will be [code]/tmp/hello00000000.png[/"
"code] and [code]/tmp/hello00000001.png[/code]. The audio will be saved at "
"[code]/tmp/hello.wav[/code]."
msgstr ""
"Путь к выходу фильма. Расширение файла определяет используемый "
"[MovieWriter].\n"
"Godot имеет 3 встроенных [MovieWriter]:\n"
"- Контейнер OGV с Theora для видео и Vorbis для аудио (расширение файла "
"[code].ogv[/code]). Сжатие с потерями, файлы среднего размера, быстрое "
"кодирование. Качество сжатия с потерями можно регулировать, изменяя [member "
"ProjectSettings.editor/movie_writer/video_quality] и [member "
"ProjectSettings.editor/movie_writer/ogv/audio_quality]. Полученный файл можно "
"просмотреть в Godot с помощью [VideoStreamPlayer] и большинства видеоплееров, "
"но не в веб-браузерах, поскольку они не поддерживают Theora.\n"
"- Контейнер AVI с MJPEG для видео и несжатого аудио (расширение файла "
"[code].avi[/code]). Сжатие с потерями, средние размеры файлов, быстрое "
"кодирование. Качество сжатия с потерями можно настроить, изменив [member "
"ProjectSettings.editor/movie_writer/video_quality]. Полученный файл можно "
"просмотреть в большинстве видеоплееров, но для просмотра в Интернете или с "
"помощью Godot его необходимо конвертировать в другой формат "
"[VideoStreamPlayer]. MJPEG не поддерживает прозрачность. В настоящее время "
"размер выходного файла AVI ограничен 4 ГБ.\n"
"- PNG Последовательность изображений для видео и WAV для аудио (расширение "
"файла [code].png[/code]). Сжатие без потерь, большой размер файлов, медленное "
"кодирование. Разработано для кодирования в видеофайл с помощью другой "
"программы, например, [url=https://ffmpeg.org/]FFmpeg[/url] после записи. "
"Прозрачность в настоящее время не поддерживается, даже если корневая область "
"просмотра настроена как прозрачная.\n"
"Если вам необходимо выполнить кодирование в другой формат или передать поток "
"через стороннее программное обеспечение, вы можете расширить этот класс "
"[MovieWriter] для создания собственных средств записи фильмов.\n"
"При использовании вывода в формате PNG номер кадра будет добавлен в конец "
"имени файла. Он начинается с 0 и дополняется 8 цифрами для обеспечения "
"правильной сортировки и более легкой обработки. Например, если путь вывода — "
"[code]/tmp/hello.png[/code], первые два кадра будут [code]/tmp/"
"hello00000000.png[/code] и [code]/tmp/hello00000001.png[/code]. Аудио будет "
"сохранено в [code]/tmp/hello.wav[/code]."

msgid ""
"The audio encoding quality to use when writing Vorbis audio to a file, "
"between [code]-0.1[/code] and [code]1.0[/code] (inclusive). Higher "
"[code]quality[/code] values result in better-sounding output at the cost of "
"larger file sizes. Even at quality [code]1.0[/code], compression remains "
"lossy.\n"
"[b]Note:[/b] This does not affect video quality, which is controlled by "
"[member editor/movie_writer/video_quality] instead."
msgstr ""
"Качество кодирования звука, используемое при записи звука Vorbis в файл, "
"находится в диапазоне от [code]-0.1[/code] до [code]1.0[/code] "
"(включительно). Более высокие значения [code]quality[/code] обеспечивают "
"лучшее звучание за счёт увеличения размера файла. Даже при качестве "
"[code]1.0[/code] сжатие остаётся с потерями.\n"
"[b]Примечание:[/b] Это не влияет на качество видео, которым управляет [member "
"editor/movie_writer/video_quality]."

msgid ""
"The tradeoff between encoding speed and compression efficiency. Speed "
"[code]1[/code] is the slowest but provides the best compression. Speed "
"[code]4[/code] is the fastest but provides the worst compression. Video "
"quality is generally not affected significantly by this setting."
msgstr ""
"Компромисс между скоростью кодирования и эффективностью сжатия. Скорость "
"[code]1[/code] — самая медленная, но обеспечивает наилучшее сжатие. Скорость "
"[code]4[/code] — самая быстрая, но обеспечивает наихудшее сжатие. Качество "
"видео обычно не сильно зависит от этого параметра."

msgid ""
"Forces keyframes at the specified interval (in frame count). Higher values "
"can improve compression up to a certain level at the expense of higher "
"latency when seeking."
msgstr ""
"Принудительно устанавливает ключевые кадры с заданным интервалом (в "
"количестве кадров). Более высокие значения могут улучшить сжатие до "
"определённого уровня за счёт увеличения задержки при поиске."

msgid ""
"The speaker mode to use in the recorded audio when writing a movie. See [enum "
"AudioServer.SpeakerMode] for possible values."
msgstr ""
"Режим динамика, который будет использоваться в записанном звуке при записи "
"фильма. См. [enum AudioServer.SpeakerMode] для возможных значений."

msgid ""
"The video encoding quality to use when writing a Theora or AVI (MJPEG) video "
"to a file, between [code]0.0[/code] and [code]1.0[/code] (inclusive). Higher "
"[code]quality[/code] values result in better-looking output at the cost of "
"larger file sizes. Recommended [code]quality[/code] values are between "
"[code]0.75[/code] and [code]0.9[/code]. Even at quality [code]1.0[/code], "
"compression remains lossy."
msgstr ""
"Качество кодирования видео, используемое при записи видео Theora или AVI "
"(MJPEG) в файл, находится в диапазоне от [code]0.0[/code] до [code]1.0[/code] "
"(включительно). Более высокие значения [code]quality[/code] обеспечивают "
"более качественное изображение за счёт увеличения размера файла. "
"Рекомендуемые значения [code]quality[/code] находятся в диапазоне от "
"[code]0.75[/code] до [code]0.9[/code]. Даже при качестве [code]1.0[/code] "
"сжатие остаётся с потерями."

msgid ""
"The format of the default signal callback name (in the Signal Connection "
"Dialog). The following substitutions are available: [code]{NodeName}[/code], "
"[code]{nodeName}[/code], [code]{node_name}[/code], [code]{SignalName}[/code], "
"[code]{signalName}[/code], and [code]{signal_name}[/code]."
msgstr ""
"Формат имени обратного вызова сигнала по умолчанию (в диалоге подключения "
"сигнала). Доступны следующие подстановки: [code]{NodeName}[/code], [code]"
"{nodeName}[/code], [code]{node_name}[/code], [code]{SignalName}[/code], [code]"
"{signalName}[/code] и [code]{signal_name}[/code]."

msgid ""
"The format of the default signal callback name when a signal connects to the "
"same node that emits it (in the Signal Connection Dialog). The following "
"substitutions are available: [code]{NodeName}[/code], [code]{nodeName}[/"
"code], [code]{node_name}[/code], [code]{SignalName}[/code], [code]{signalName}"
"[/code], and [code]{signal_name}[/code]."
msgstr ""
"Формат имени обратного вызова сигнала по умолчанию, когда сигнал подключается "
"к тому же узлу, который его испускает (в диалоге подключения сигнала). "
"Доступны следующие подстановки: [code]{NodeName}[/code], [code]{nodeName}[/"
"code], [code]{node_name}[/code], [code]{SignalName}[/code], [code]{signalName}"
"[/code] и [code]{signal_name}[/code]."

msgid ""
"When creating node names automatically, set the type of casing to use in this "
"project. This is mostly an editor setting."
msgstr ""
"При автоматическом создании имен узлов установите тип регистра, который будет "
"использоваться в этом проекте. Это в основном настройка редактора."

msgid ""
"What to use to separate node name from number. This is mostly an editor "
"setting."
msgstr ""
"Что использовать для отделения имени узла от номера. Это в основном настройка "
"редактора."

msgid ""
"When generating scene file names from scene root node, set the type of casing "
"to use in this project. This is mostly an editor setting."
msgstr ""
"При генерации имен файлов сцен из корневого узла сцены установите тип "
"регистра для использования в этом проекте. Это в основном настройка редактора."

msgid ""
"When generating script file names from the selected node, set the type of "
"casing to use in this project. This is mostly an editor setting."
msgstr ""
"При генерации имен файлов скриптов из выбранного узла задайте тип регистра "
"для использования в этом проекте. Это в основном настройка редактора."

msgid ""
"The command-line arguments to append to Godot's own command line when running "
"the project. This doesn't affect the editor itself.\n"
"It is possible to make another executable run Godot by using the [code]"
"%command%[/code] placeholder. The placeholder will be replaced with Godot's "
"own command line. Program-specific arguments should be placed [i]before[/i] "
"the placeholder, whereas Godot-specific arguments should be placed [i]after[/"
"i] the placeholder.\n"
"For example, this can be used to force the project to run on the dedicated "
"GPU in an NVIDIA Optimus system on Linux:\n"
"[codeblock lang=text]\n"
"prime-run %command%\n"
"[/codeblock]"
msgstr ""
"Аргументы командной строки для добавления к собственной командной строке "
"Godot при запуске проекта. Это не влияет на сам редактор.\n"
"Можно заставить другой исполняемый файл запустить Godot, используя "
"заполнитель [code]%command%[/code]. Заполнитель будет заменен собственной "
"командной строкой Godot. Аргументы, специфичные для программы, должны быть "
"размещены [i]перед[/i] заполнителем, тогда как аргументы, специфичные для "
"Godot, должны быть размещены [i]после[/i] заполнителя.\n"
"Например, это можно использовать для принудительного запуска проекта на "
"выделенном GPU в системе NVIDIA Optimus на Linux:\n"
"[codeblock lang=text]\n"
"prime-run %command%\n"
"[/codeblock]"

msgid ""
"Text-based file extensions to include in the script editor's \"Find in "
"Files\" feature. You can add e.g. [code]tscn[/code] if you wish to also parse "
"your scene files, especially if you use built-in scripts which are serialized "
"in the scene files."
msgstr ""
"Расширения текстовых файлов для включения в функцию \"Найти в файлах\" "
"редактора сценариев. Вы можете добавить, например, [code]tscn[/code], если "
"хотите также анализировать файлы сцен, особенно если вы используете "
"встроенные скрипты, которые сериализуются в файлах сцен."

msgid ""
"Search path for project-specific script templates. Godot will search for "
"script templates both in the editor-specific path and in this project-"
"specific path."
msgstr ""
"Путь поиска шаблонов скриптов, специфичных для проекта. Godot будет искать "
"шаблоны скриптов как в пути, специфичном для редактора, так и в этом пути, "
"специфичном для проекта."

msgid ""
"If [code]true[/code], Blender 3D scene files with the [code].blend[/code] "
"extension will be imported by converting them to glTF 2.0.\n"
"This requires configuring a path to a Blender executable in the [member "
"EditorSettings.filesystem/import/blender/blender_path] setting. Blender 3.0 "
"or later is required."
msgstr ""
"Если [code]true[/code], файлы сцен Blender 3D с расширением [code].blend[/"
"code] будут импортированы путем преобразования их в glTF 2.0. \n"
"Для этого требуется настроить путь к исполняемому файлу Blender в настройке "
"[member EditorSettings.filesystem/import/blender/blender_path]. Требуется "
"Blender 3.0 или более поздняя версия."

msgid ""
"Override for [member filesystem/import/blender/enabled] on Android where "
"Blender can't easily be accessed from Godot."
msgstr ""
"Переопределение для [member filesystem/import/blender/enabled] на Android, "
"где к Blender невозможно легко получить доступ из Godot."

msgid ""
"Override for [member filesystem/import/blender/enabled] on the Web where "
"Blender can't easily be accessed from Godot."
msgstr ""
"Переопределите [member filesystem/import/blender/enabled] в Интернете, где к "
"Blender невозможно легко получить доступ из Godot."

msgid ""
"If [code]true[/code], Autodesk FBX 3D scene files with the [code].fbx[/code] "
"extension will be imported by converting them to glTF 2.0.\n"
"This requires configuring a path to an FBX2glTF executable in the editor "
"settings at [member EditorSettings.filesystem/import/fbx/fbx2gltf_path]."
msgstr ""
"Если [code]true[/code], файлы сцен Autodesk FBX 3D с расширением [code].fbx[/"
"code] будут импортированы путем преобразования их в glTF 2.0.\n"
"Для этого необходимо настроить путь к исполняемому файлу FBX2glTF в "
"настройках редактора в [member EditorSettings.filesystem/import/fbx/"
"fbx2gltf_path]."

msgid ""
"Override for [member filesystem/import/fbx2gltf/enabled] on Android where "
"FBX2glTF can't easily be accessed from Godot."
msgstr ""
"Переопределение для [member filesystem/import/fbx2gltf/enabled] на Android, "
"где FBX2glTF не может быть легко доступен из Godot."

msgid ""
"Override for [member filesystem/import/fbx2gltf/enabled] on the Web where "
"FBX2glTF can't easily be accessed from Godot."
msgstr ""
"Переопределите [member filesystem/import/fbx2gltf/enabled] в Web, где к "
"FBX2glTF невозможно легко получить доступ из Godot."

msgid ""
"Default value for [member ScrollContainer.scroll_deadzone], which will be "
"used for all [ScrollContainer]s unless overridden."
msgstr ""
"Значение по умолчанию для [member ScrollContainer.scroll_deadzone], которое "
"будет использоваться для всех [ScrollContainer], если не будет переопределено."

msgid ""
"If [code]true[/code], snaps [Control] node vertices to the nearest pixel to "
"ensure they remain crisp even when the camera moves or zooms."
msgstr ""
"Если [code]true[/code], привязывает вершины узла [Control] к ближайшему "
"пикселю, чтобы они оставались четкими даже при перемещении или "
"масштабировании камеры."

msgid ""
"How to position the Cancel and OK buttons in the project's [AcceptDialog]s. "
"Different platforms have different standard behaviors for this, which can be "
"overridden using this setting.\n"
"- [b]Auto[/b] ([code]0[/code]) follows the platform convention: OK first on "
"Windows, KDE, and LXQt, Cancel first on macOS and other Linux desktop "
"environments. [method DisplayServer.get_swap_cancel_ok] can be used to query "
"whether buttons are swapped at run-time.\n"
"- [b]Cancel First[/b] ([code]1[/code]) forces the ordering Cancel/OK.\n"
"- [b]OK First[/b] ([code]2[/code]) forces the ordering OK/Cancel.\n"
"[b]Note:[/b] This doesn't affect native dialogs such as the ones spawned by "
"[method DisplayServer.dialog_show]."
msgstr ""
"Как расположить кнопки «Отмена» и «ОК» в [AcceptDialog] проекта. Разные "
"платформы имеют разные стандартные поведения для этого, которые можно "
"переопределить с помощью этого параметра.\n"
"- [b]Auto[/b] ([code]0[/code]) следует соглашению платформы: сначала OK в "
"Windows, KDE и LXQt, сначала Cancel в macOS и других средах рабочего стола "
"Linux. [method DisplayServer.get_swap_cancel_ok] можно использовать для "
"запроса того, меняются ли кнопки местами во время выполнения.\n"
"- [b]Cancel First[/b] ([code]1[/code]) принудительно устанавливает порядок "
"Cancel/OK.\n"
"- [b]OK First[/b] ([code]2[/code]) принудительно устанавливает порядок OK/"
"Cancel.\n"
"[b]Примечание:[/b] Это не влияет на собственные диалоговые окна, такие как "
"те, которые создаются [method DisplayServer.dialog_show]."

msgid "Maximum undo/redo history size for [TextEdit] fields."
msgstr "Максимальный размер истории отмен/повторов для полей [TextEdit]."

msgid ""
"If set to [code]true[/code] and [member display/window/stretch/mode] is set "
"to [b]\"canvas_items\"[/b], font and [DPITexture] oversampling is enabled in "
"the main window. Use [member Viewport.oversampling] to control oversampling "
"in other viewports and windows."
msgstr ""
"Если задано значение [code]true[/code] и [member display/window/stretch/mode] "
"задано значение [b]\"canvas_items\"[/b], в главном окне включается "
"передискретизация шрифтов и [DPITexture]. Используйте [member "
"Viewport.oversampling] для управления передискретизацией в других областях "
"просмотра и окнах."

msgid ""
"Path to a custom [Theme] resource file to use for the project ([code].theme[/"
"code] or generic [code].tres[/code]/[code].res[/code] extension)."
msgstr ""
"Путь к пользовательскому файлу ресурсов [Theme] для использования в проекте "
"([code].theme[/code] или общее расширение [code].tres[/code]/[code].res[/"
"code])."

msgid ""
"Path to a custom [Font] resource to use as default for all GUI elements of "
"the project."
msgstr ""
"Путь к пользовательскому ресурсу [Font], который будет использоваться по "
"умолчанию для всех элементов графического интерфейса проекта."

msgid ""
"Font anti-aliasing mode for the default project font. See [member "
"FontFile.antialiasing].\n"
"[b]Note:[/b] This setting does not affect custom [Font]s used within the "
"project. Use the [b]Import[/b] dock for that instead (see [member "
"ResourceImporterDynamicFont.antialiasing])."
msgstr ""
"Режим сглаживания шрифта для шрифта проекта по умолчанию. См. [member "
"FontFile.antialiasing].\n"
"[b]Примечание:[/b] Этот параметр не влияет на пользовательские [Font], "
"используемые в проекте. Вместо этого используйте док-станцию [b]Import[/b] "
"(см. [member ResourceImporterDynamicFont.antialiasing])."

msgid ""
"If set to [code]true[/code], the default font will have mipmaps generated. "
"This prevents text from looking grainy when a [Control] is scaled down, or "
"when a [Label3D] is viewed from a long distance (if [member "
"Label3D.texture_filter] is set to a mode that displays mipmaps).\n"
"Enabling [member gui/theme/default_font_generate_mipmaps] increases font "
"generation time and memory usage. Only enable this setting if you actually "
"need it.\n"
"[b]Note:[/b] This setting does not affect custom [Font]s used within the "
"project. Use the [b]Import[/b] dock for that instead (see [member "
"ResourceImporterDynamicFont.generate_mipmaps])."
msgstr ""
"Если установлено значение [code]true[/code], шрифт по умолчанию будет иметь "
"сгенерированные mip-карты. Это предотвращает зернистость текста при "
"уменьшении масштаба [Control] или при просмотре [Label3D] с большого "
"расстояния (если [member Label3D.texture_filter] установлен в режим, который "
"отображает mip-карты).\n"
"Включение [member gui/theme/default_font_generate_mipmaps] увеличивает время "
"генерации шрифта и использование памяти. Включайте этот параметр только в том "
"случае, если он вам действительно нужен.\n"
"[b]Примечание:[/b] Этот параметр не влияет на пользовательские [Font], "
"используемые в проекте. Вместо этого используйте док-станцию [b]Import[/b] "
"(см. [member ResourceImporterDynamicFont.generate_mipmaps])."

msgid ""
"Font hinting mode for the default project font. See [member "
"FontFile.hinting].\n"
"[b]Note:[/b] This setting does not affect custom [Font]s used within the "
"project. Use the [b]Import[/b] dock for that instead (see [member "
"ResourceImporterDynamicFont.hinting])."
msgstr ""
"Режим хинтинга шрифта для шрифта проекта по умолчанию. См. [member "
"FontFile.hinting].\n"
"[b]Примечание:[/b] Этот параметр не влияет на пользовательские [Font], "
"используемые в проекте. Вместо этого используйте док-станцию [b]Import[/b] "
"(см. [member ResourceImporterDynamicFont.hinting])."

msgid ""
"If set to [code]true[/code], the default font will use multichannel signed "
"distance field (MSDF) for crisp rendering at any size. Since this approach "
"does not rely on rasterizing the font every time its size changes, this "
"allows for resizing the font in real-time without any performance penalty. "
"Text will also not look grainy for [Control]s that are scaled down (or for "
"[Label3D]s viewed from a long distance).\n"
"MSDF font rendering can be combined with [member gui/theme/"
"default_font_generate_mipmaps] to further improve font rendering quality when "
"scaled down.\n"
"[b]Note:[/b] This setting does not affect custom [Font]s used within the "
"project. Use the [b]Import[/b] dock for that instead (see [member "
"ResourceImporterDynamicFont.multichannel_signed_distance_field])."
msgstr ""
"Если установлено значение [code]true[/code], шрифт по умолчанию будет "
"использовать многоканальное поле знакового расстояния (MSDF) для четкой "
"визуализации при любом размере. Поскольку этот подход не предполагает "
"растеризацию шрифта каждый раз при изменении его размера, это позволяет "
"изменять размер шрифта в реальном времени без потери производительности. "
"Текст также не будет выглядеть зернистым для [Control], которые "
"масштабируются в уменьшенном масштабе (или для [Label3D], просматриваемых с "
"большого расстояния).\n"
"Рендеринг шрифта MSDF можно объединить с [member gui/theme/"
"default_font_generate_mipmaps] для дальнейшего улучшения качества "
"визуализации шрифта при уменьшении масштаба.\n"
"[b]Примечание:[/b] Этот параметр не влияет на пользовательские [Font], "
"используемые в проекте. Вместо этого используйте док-станцию [b]Import[/b] "
"(см. [member ResourceImporterDynamicFont.multichannel_signed_distance_field])."

msgid ""
"Font glyph subpixel positioning mode for the default project font. See "
"[member FontFile.subpixel_positioning].\n"
"[b]Note:[/b] This setting does not affect custom [Font]s used within the "
"project. Use the [b]Import[/b] dock for that instead (see [member "
"ResourceImporterDynamicFont.subpixel_positioning])."
msgstr ""
"Режим субпиксельного позиционирования глифа шрифта для шрифта проекта по "
"умолчанию. См. [member FontFile.subpixel_positioning].\n"
"[b]Примечание:[/b] Этот параметр не влияет на пользовательские [Font], "
"используемые в проекте. Вместо этого используйте док-станцию [b]Import[/b] "
"(см. [member ResourceImporterDynamicFont.subpixel_positioning])."

msgid ""
"The default scale factor for [Control]s, when not overridden by a [Theme].\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the default scale at runtime, set [member ThemeDB.fallback_base_scale] "
"instead."
msgstr ""
"Коэффициент масштабирования по умолчанию для [Control], если не переопределен "
"[Theme].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить масштаб по умолчанию во время выполнения, вместо этого установите "
"[member ThemeDB.fallback_base_scale]."

msgid ""
"LCD subpixel layout used for font anti-aliasing. See [enum "
"TextServer.FontLCDSubpixelLayout]."
msgstr ""
"Субпиксельная раскладка ЖК-дисплея, используемая для сглаживания шрифтов. См. "
"[enum TextServer.FontLCDSubpixelLayout]."

msgid ""
"When [member BaseButton.shortcut_feedback] is enabled, this is the time the "
"[BaseButton] will remain highlighted after a shortcut."
msgstr ""
"Если [member BaseButton.shortcut_feedback] включен, это время, в течение "
"которого [BaseButton] будет оставаться выделенным после нажатия сочетания "
"клавиш."

msgid ""
"Timer setting for incremental search in [Tree], [ItemList], etc. controls (in "
"milliseconds)."
msgstr ""
"Настройка таймера для инкрементного поиска в элементах управления [Tree], "
"[ItemList] и т. д. (в миллисекундах)."

msgid "Timer for detecting idle in [TextEdit] (in seconds)."
msgstr "Таймер для определения простоя в [TextEdit] (в секундах)."

msgid "Default delay for tooltips (in seconds)."
msgstr "Задержка по умолчанию для всплывающих подсказок (в секундах)."

msgid "Delay for tooltips in the editor."
msgstr "Задержка всплывающих подсказок в редакторе."

msgid ""
"Default [InputEventAction] to confirm a focused button, menu or list item, or "
"validate input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для подтверждения сфокусированной кнопки, "
"меню или элемента списка или проверки ввода.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to start or end a drag-and-drop operation without "
"using mouse.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для запуска или завершения операции "
"перетаскивания без использования мыши.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to discard a modal or pending input.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для отмены модального или ожидающего ввода.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to delete a color preset in a [ColorPicker].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для удаления предустановки цвета в "
"[ColorPicker].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to copy a selection to the clipboard.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для копирования выделения в буфер обмена.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]-"
"ов. Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to cut a selection to the clipboard.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для вырезания выделения в буфер обмена.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to move down in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения вниз в пользовательском "
"интерфейсе.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to go to the end position of a [Control] (e.g. "
"last item in an [ItemList] or a [Tree]), matching the behavior of [constant "
"KEY_END] on typical desktop UI systems.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перехода к конечной позиции [Control] "
"(например, последний элемент в [ItemList] или [Tree]), что соответствует "
"поведению [constant KEY_END] в типичных системах пользовательского интерфейса "
"для настольных компьютеров.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to refresh the contents of the current directory "
"of a [FileDialog].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для обновления содержимого текущего каталога "
"[FileDialog].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]-"
"ов. Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to toggle showing hidden files and directories in "
"a [FileDialog].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для переключения отображения скрытых файлов и "
"каталогов в [FileDialog].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to go up one directory in a [FileDialog].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перехода на один каталог вверх в "
"[FileDialog].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to switch [TextEdit] [member input/ui_text_indent] "
"between moving keyboard focus to the next [Control] in the scene and "
"inputting a [code]Tab[/code] character.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для переключения [TextEdit] [member input/"
"ui_text_indent] между перемещением фокуса клавиатуры на следующий [Control] в "
"сцене и вводом символа [code]Tab[/code].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to focus the next [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_next].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для фокусировки на следующем [Control] в "
"сцене. Поведение фокусировки можно настроить через [member "
"Control.focus_next].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to focus the previous [Control] in the scene. The "
"focus behavior can be configured via [member Control.focus_previous].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для фокусировки на предыдущем [Control] в "
"сцене. Поведение фокусировки можно настроить через [member "
"Control.focus_previous].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to delete a [GraphNode] in a [GraphEdit].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для удаления [GraphNode] в [GraphEdit].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]-"
"ов. Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to duplicate a [GraphNode] in a [GraphEdit].\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для дублирования [GraphNode] в [GraphEdit].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to follow a [GraphNode] input port connection.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для отслеживания соединения порта ввода "
"[GraphNode].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"macOS specific override for the shortcut to follow a [GraphNode] input port "
"connection."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для отслеживания "
"подключения к входному порту [GraphNode]."

msgid ""
"Default [InputEventAction] to follow a [GraphNode] output port connection.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для отслеживания соединения выходного порта "
"[GraphNode].\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"macOS specific override for the shortcut to follow a [GraphNode] output port "
"connection."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для отслеживания "
"выходного порта [GraphNode]."

msgid ""
"Default [InputEventAction] to go to the start position of a [Control] (e.g. "
"first item in an [ItemList] or a [Tree]), matching the behavior of [constant "
"KEY_HOME] on typical desktop UI systems.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перехода к начальной позиции [Control] "
"(например, первый элемент в [ItemList] или [Tree]), что соответствует "
"поведению [constant KEY_HOME] в типичных системах пользовательского "
"интерфейса для настольных компьютеров.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to move left in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения влево в пользовательском "
"интерфейсе.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to open a context menu in a text field.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для открытия контекстного меню в текстовом "
"поле.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to go down a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEDOWN] on "
"typical desktop UI systems.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перехода на страницу вниз в [Control] "
"(например, в [ItemList] или [Tree]), что соответствует поведению [constant "
"KEY_PAGEDOWN] в типичных системах пользовательского интерфейса для настольных "
"компьютеров.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to go up a page in a [Control] (e.g. in an "
"[ItemList] or a [Tree]), matching the behavior of [constant KEY_PAGEUP] on "
"typical desktop UI systems.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перехода на страницу вверх в [Control] "
"(например, в [ItemList] или [Tree]), что соответствует поведению [constant "
"KEY_PAGEUP] в типичных системах пользовательского интерфейса для настольных "
"компьютеров.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to paste from the clipboard.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для вставки из буфера обмена.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]-"
"ов. Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to redo an undone action.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для повтора отмененного действия.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to move right in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения вправо в пользовательском "
"интерфейсе.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to select an item in a [Control] (e.g. in an "
"[ItemList] or a [Tree]).\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для выбора элемента в [Control] (например, в "
"[ItemList] или [Tree]).\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]-"
"ов. Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to swap input direction, i.e. change between left-"
"to-right to right-to-left modes. Affects text-editing controls ([LineEdit], "
"[TextEdit])."
msgstr ""
"По умолчанию [InputEventAction] для смены направления ввода, т.е. "
"переключения между режимами слева направо и справа налево. Влияет на элементы "
"управления редактированием текста ([LineEdit], [TextEdit])."

msgid ""
"If a selection is currently active with the last caret in text fields, "
"searches for the next occurrence of the selection, adds a caret and selects "
"the next occurrence.\n"
"If no selection is currently active with the last caret in text fields, "
"selects the word currently under the caret.\n"
"The action can be performed sequentially for all occurrences of the selection "
"of the last caret and for all existing carets.\n"
"The viewport is adjusted to the latest newly added caret.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"Если в текстовых полях в данный момент активно выделение с последним "
"курсором, выполняется поиск следующего вхождения выделения, добавление "
"курсора и выбор следующего вхождения.\n"
"Если в данный момент нет активного выделения с последним курсором в текстовых "
"полях, выполняется выбор слова, находящегося под курсором.\n"
"Действие может быть выполнено последовательно для всех вхождений выделения "
"последнего курсора и для всех существующих курсоров.\n"
"Область просмотра настраивается на последний добавленный курсор.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to delete the character before the text cursor.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для удаления символа перед текстовым "
"курсором.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]-"
"ов. Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to delete [b]all[/b] text before the text cursor.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для удаления [b]всего[/b] текста перед "
"текстовым курсором.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]-"
"ов. Однако события, назначенные действию, могут быть изменены."

msgid ""
"macOS specific override for the shortcut to delete all text before the text "
"cursor."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для удаления всего "
"текста перед текстовым курсором."

msgid ""
"Default [InputEventAction] to delete all characters before the cursor up "
"until a whitespace or punctuation character.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для удаления всех символов перед курсором до "
"пробела или знака пунктуации.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]-"
"ов. Однако события, назначенные действию, можно изменить."

msgid "macOS specific override for the shortcut to delete a word."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для удаления слова."

msgid ""
"Default [InputEventAction] to add an additional caret above every caret of a "
"text."
msgstr ""
"По умолчанию [InputEventAction] добавляет дополнительный символ над каждым "
"символом в тексте."

msgid ""
"macOS specific override for the shortcut to add a caret above every caret."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для добавления "
"курсора над каждым курсором."

msgid ""
"Default [InputEventAction] to add an additional caret below every caret of a "
"text."
msgstr ""
"По умолчанию [InputEventAction] добавляет дополнительный курсор под каждым "
"курсором текста."

msgid ""
"macOS specific override for the shortcut to add a caret below every caret."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для добавления "
"курсора под каждым курсором."

msgid ""
"Default [InputEventAction] to move the text cursor to the end of the text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора в конец "
"текста.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"macOS specific override for the shortcut to move the text cursor to the end "
"of the text."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для перемещения "
"текстового курсора в конец текста."

msgid ""
"Default [InputEventAction] to move the text cursor to the start of the text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора в начало "
"текста.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"macOS specific override for the shortcut to move the text cursor to the start "
"of the text."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для перемещения "
"текстового курсора в начало текста."

msgid ""
"Default [InputEventAction] to move the text cursor down.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора вниз.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to move the text cursor left.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора влево.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to move the text cursor to the end of the line.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора в конец "
"строки.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"macOS specific override for the shortcut to move the text cursor to the end "
"of the line."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для перемещения "
"текстового курсора в конец строки."

msgid ""
"Default [InputEventAction] to move the text cursor to the start of the line.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора в начало "
"строки.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"macOS specific override for the shortcut to move the text cursor to the start "
"of the line."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для перемещения "
"текстового курсора в начало строки."

msgid ""
"Default [InputEventAction] to move the text cursor down one page.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора вниз на "
"одну страницу.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]-ов. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to move the text cursor up one page.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора на одну "
"страницу вверх.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to move the text cursor right.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора вправо.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to move the text cursor up.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора вверх.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to move the text cursor left to the next "
"whitespace or punctuation.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора влево к "
"следующему пробелу или знаку препинания.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"macOS specific override for the shortcut to move the text cursor back one "
"word."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для перемещения "
"текстового курсора на одно слово назад."

msgid ""
"Default [InputEventAction] to move the text cursor right to the next "
"whitespace or punctuation.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения текстового курсора вправо к "
"следующему пробелу или знаку препинания.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"macOS specific override for the shortcut to move the text cursor forward one "
"word."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для перемещения "
"текстового курсора вперед на одно слово."

msgid ""
"If there's only one caret active and with a selection, clears the selection.\n"
"In case there's more than one caret active, removes the secondary carets and "
"clears their selections.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"Если активен только один кареточный курсор с выбором, отменяет выбор.\n"
"Если активно несколько кареточных курсоров, удаляет вторичные каретки и "
"отменяет их выбор.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to accept an autocompletion hint.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для приема подсказки автодополнения.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to request autocompletion.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для запроса автодополнения.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to accept an autocompletion hint, replacing "
"existing text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию принимает подсказку автодополнения, заменяя "
"существующий текст.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to unindent text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для удаления отступа текста.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to delete the character after the text cursor.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для удаления символа после текстового "
"курсора.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to delete [b]all[/b] text after the text cursor.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для удаления [b]всего[/b] текста после "
"текстового курсора.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, могут быть изменены."

msgid ""
"macOS specific override for the shortcut to delete all text after the text "
"cursor."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для удаления всего "
"текста после текстового курсора."

msgid ""
"Default [InputEventAction] to delete all characters after the cursor up until "
"a whitespace or punctuation character.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для удаления всех символов после курсора до "
"пробела или знака пунктуации.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, можно изменить."

msgid ""
"macOS specific override for the shortcut to delete a word after the text "
"cursor."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для удаления слова "
"после текстового курсора."

msgid ""
"Default [InputEventAction] to indent the current line.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для отступа текущей строки.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to insert a new line at the position of the text "
"cursor.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для вставки новой строки в позицию текстового "
"курсора.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to insert a new line before the current one.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для вставки новой строки перед текущей.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to insert a new line after the current one.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для вставки новой строки после текущей.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to scroll down one line of text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для прокрутки вниз на одну строку текста.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid "macOS specific override for the shortcut to scroll down one line."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для прокрутки на "
"одну строку вниз."

msgid ""
"Default [InputEventAction] to scroll up one line of text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для прокрутки текста на одну строку вверх.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid "macOS specific override for the shortcut to scroll up one line."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для прокрутки на "
"одну строку вверх."

msgid ""
"Default [InputEventAction] to select all text.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для выбора всего текста.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"If no selection is currently active, selects the word currently under the "
"caret in text fields. If a selection is currently active, deselects the "
"current selection.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"Если в данный момент нет активного выделения, выделяет слово, находящееся под "
"курсором в текстовых полях. Если в данный момент активно выделение, отменяет "
"текущее выделение.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"macOS specific override for the shortcut to select the word currently under "
"the caret."
msgstr ""
"Специфическое для macOS переопределение сочетания клавиш для выбора слова, "
"находящегося под курсором."

msgid ""
"If no selection is currently active with the last caret in text fields, "
"searches for the next occurrence of the word currently under the caret and "
"moves the caret to the next occurrence. The action can be performed "
"sequentially for other occurrences of the word under the last caret.\n"
"If a selection is currently active with the last caret in text fields, "
"searches for the next occurrence of the selection, adds a caret, selects the "
"next occurrence then deselects the previous selection and its associated "
"caret. The action can be performed sequentially for other occurrences of the "
"selection of the last caret.\n"
"The viewport is adjusted to the latest newly added caret.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"Если в текстовых полях нет активного выделения с последним курсором, "
"выполняется поиск следующего вхождения слова, находящегося под курсором, и "
"перемещение курсора на следующее вхождение. Действие может быть выполнено "
"последовательно для других вхождений слова под последним курсором.\n"
"Если в текстовых полях активно выделение с последним курсором, выполняется "
"поиск следующего вхождения выделения, добавляет курсор, выбирает следующее "
"вхождение, затем отменяет выделение предыдущего выделения и связанного с ним "
"курсора. Действие может быть выполнено последовательно для других вхождений "
"выделения последнего курсора.\n"
"Область просмотра настраивается на последний добавленный курсор.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, поскольку они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to submit a text field.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для отправки текстового поля.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] не могут быть "
"удалены, так как они необходимы для внутренней логики нескольких [Control]. "
"Однако события, назначенные действию, могут быть изменены."

msgid ""
"Default [InputEventAction] to toggle [i]insert mode[/i] in a text field. "
"While in insert mode, inserting new text overrides the character after the "
"cursor, unless the next character is a new line.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для переключения [i]режима вставки[/i] в "
"текстовое поле. В режиме вставки вставка нового текста переопределяет символ "
"после курсора, если только следующий символ не является новой строкой.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to undo the most recent action.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для отмены последнего действия.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to start Unicode character hexadecimal code input "
"in a text field.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для начала ввода шестнадцатеричного кода "
"символа Unicode в текстовое поле.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"Default [InputEventAction] to move up in the UI.\n"
"[b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are "
"necessary for the internal logic of several [Control]s. The events assigned "
"to the action can however be modified."
msgstr ""
"[InputEventAction] по умолчанию для перемещения вверх в пользовательском "
"интерфейсе.\n"
"[b]Примечание:[/b] Действия по умолчанию [code]ui_*[/code] нельзя удалить, "
"так как они необходимы для внутренней логики нескольких [Control]. Однако "
"события, назначенные действию, можно изменить."

msgid ""
"If [code]true[/code], key/touch/joystick events will be flushed just before "
"every idle and physics frame.\n"
"If [code]false[/code], such events will be flushed only once per process "
"frame, between iterations of the engine.\n"
"Enabling this can greatly improve the responsiveness to input, specially in "
"devices that need to run multiple physics frames per visible (process) frame, "
"because they can't run at the target frame rate.\n"
"[b]Note:[/b] Currently implemented only on Android."
msgstr ""
"Если [code]true[/code], события клавиш/касания/джойстика будут сбрасываться "
"непосредственно перед каждым кадром бездействия и физики.\n"
"Если [code]false[/code], такие события будут сбрасываться только один раз за "
"кадр процесса, между итерациями движка.\n"
"Включение этого может значительно улучшить отклик на ввод, особенно на "
"устройствах, которым необходимо запускать несколько кадров физики на видимый "
"(процессный) кадр, поскольку они не могут работать с целевой частотой "
"кадров.\n"
"[b]Примечание:[/b] В настоящее время реализовано только на Android."

msgid ""
"If [code]true[/code], [method Input.is_action_just_pressed] and [method "
"Input.is_action_just_released] will only return [code]true[/code] if the "
"action is still in the respective state, i.e. an action that is pressed "
"[i]and[/i] released on the same frame will be missed.\n"
"If [code]false[/code], no input will be lost.\n"
"[b]Note:[/b] You should in nearly all cases prefer the [code]false[/code] "
"setting. The legacy behavior is to enable supporting old projects that rely "
"on the old logic, without changes to script."
msgstr ""
"Если [code]true[/code], [method Input.is_action_just_pressed] и [method "
"Input.is_action_just_released] вернут [code]true[/code] только если действие "
"все еще находится в соответствующем состоянии, т. е. действие, нажатое [i]и[/"
"i] отпущенное в одном кадре, будет пропущено.\n"
"Если [code]false[/code], ввод не будет потерян.\n"
"[b]Примечание:[/b] Почти во всех случаях следует предпочесть настройку "
"[code]false[/code]. Устаревшее поведение заключается в том, чтобы включить "
"поддержку старых проектов, которые полагаются на старую логику, без внесения "
"изменений в скрипт."

msgid ""
"Specifies the tablet driver to use. If left empty, the default driver will be "
"used.\n"
"[b]Note:[/b] The driver in use can be overridden at runtime via the [code]--"
"tablet-driver[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url].\n"
"[b]Note:[/b] Use [method DisplayServer.tablet_set_current_driver] to switch "
"tablet driver in runtime."
msgstr ""
"Указывает используемый драйвер планшета. Если оставить пустым, будет "
"использоваться драйвер по умолчанию.\n"
"[b]Примечание:[/b] Используемый драйвер можно переопределить во время "
"выполнения с помощью [code]--tablet-driver[/code] [url=$DOCS_URL/tutorials/"
"editor/command_line_tutorial.html]аргумента командной строки[/url].\n"
"[b]Примечание:[/b] Используйте [method "
"DisplayServer.tablet_set_current_driver] для переключения драйвера планшета "
"во время выполнения."

msgid ""
"Override for [member input_devices/pen_tablet/driver] on Windows. Supported "
"values are:\n"
"- [code]auto[/code] (default), uses [code]wintab[/code] if Windows Ink is "
"disabled in the Wacom Tablet Properties or system settings, [code]winink[/"
"code] otherwise.\n"
"- [code]winink[/code], uses Windows native \"Windows Ink\" driver.\n"
"- [code]wintab[/code], uses Wacom \"WinTab\" driver.\n"
"- [code]dummy[/code], tablet input is disabled."
msgstr ""
"Переопределить для [member input_devices/pen_tablet/driver] в Windows. "
"Поддерживаемые значения:\n"
"- [code]auto[/code] (по умолчанию), использует [code]wintab[/code], если "
"Windows Ink отключен в свойствах планшета Wacom или системных настройках, в "
"противном случае [code]winink[/code].\n"
"- [code]winink[/code], использует собственный драйвер Wind. \"Windows Ink\".\n"
"- [code]wintab[/code], использует драйвер Wacom \"WinTab\".\n"
"- [code]dummy[/code], ввод с планшета отключен."

msgid ""
"If [code]true[/code], disables the scroll deadzone on Android, allowing even "
"very small scroll movements to be registered. This may increase scroll "
"sensitivity but can also lead to unintended scrolling from slight finger "
"movements."
msgstr ""
"Если [code]true[/code], отключает мертвую зону прокрутки на Android, позволяя "
"регистрировать даже очень маленькие движения прокрутки. Это может повысить "
"чувствительность прокрутки, но также может привести к непреднамеренной "
"прокрутке от легких движений пальцев."

msgid ""
"If [code]true[/code], long press events on an Android touchscreen are "
"transformed into right click events."
msgstr ""
"Если [code]true[/code], события длительного нажатия на сенсорном экране "
"Android преобразуются в события щелчка правой кнопкой мыши."

msgid ""
"If [code]true[/code], multi-touch pan and scale gestures are enabled on "
"Android devices."
msgstr ""
"Если [code]true[/code], на устройствах Android включены мультисенсорные жесты "
"панорамирования и масштабирования."

msgid ""
"If [code]true[/code], system volume changes are disabled when the buttons are "
"used within the app."
msgstr ""
"Если [code]true[/code], изменение громкости системы отключено при "
"использовании кнопок в приложении."

msgid ""
"On Wear OS devices, defines which axis of the mouse wheel rotary input is "
"mapped to. This rotary input is usually performed by rotating the physical or "
"virtual (touch-based) bezel on a smartwatch."
msgstr ""
"На устройствах Wear OS определяет, к какой оси колеса мыши относится "
"вращательный ввод. Этот вращательный ввод обычно выполняется путем вращения "
"физического или виртуального (сенсорного) безеля на смарт-часах."

msgid ""
"If [code]true[/code], sends mouse input events when tapping or swiping on the "
"touchscreen."
msgstr ""
"Если [code]true[/code], отправляет события ввода мыши при нажатии или "
"проведении по сенсорному экрану."

msgid ""
"If [code]true[/code], sends touch input events when clicking or dragging the "
"mouse."
msgstr ""
"Если [code]true[/code], отправляет события сенсорного ввода при щелчке или "
"перетаскивании мыши."

msgid ""
"If [code]true[/code], the accelerometer sensor is enabled and [method "
"Input.get_accelerometer] returns valid data."
msgstr ""
"Если [code]true[/code], датчик акселерометра включен и [method "
"Input.get_accelerometer] возвращает действительные данные."

msgid ""
"If [code]true[/code], the gravity sensor is enabled and [method "
"Input.get_gravity] returns valid data."
msgstr ""
"Если [code]true[/code], датчик гравитации включен и [method "
"Input.get_gravity] возвращает действительные данные."

msgid ""
"If [code]true[/code], the gyroscope sensor is enabled and [method "
"Input.get_gyroscope] returns valid data."
msgstr ""
"Если [code]true[/code], датчик гироскопа включен и [method "
"Input.get_gyroscope] возвращает действительные данные."

msgid ""
"If [code]true[/code], the magnetometer sensor is enabled and [method "
"Input.get_magnetometer] returns valid data."
msgstr ""
"Если [code]true[/code], датчик магнитометра включен и [method "
"Input.get_magnetometer] возвращает действительные данные."

msgid ""
"The locale to fall back to if a translation isn't available in a given "
"language. If left empty, [code]en[/code] (English) will be used.\n"
"[b]Note:[/b] Not to be confused with [TextServerFallback]."
msgstr ""
"Локаль, к которой следует вернуться, если перевод на заданном языке "
"недоступен. Если оставить пустым, будет использоваться [code]en[/code] "
"(английский).\n"
"[b]Примечание:[/b] Не путать с [TextServerFallback]."

msgid ""
"If [code]true[/code], text server break iteration rule sets, dictionaries and "
"other optional data are included in the exported project.\n"
"[b]Note:[/b] \"ICU / HarfBuzz / Graphite\" text server data includes "
"dictionaries for Burmese, Chinese, Japanese, Khmer, Lao and Thai as well as "
"Unicode Standard Annex #29 and Unicode Standard Annex #14 word and line "
"breaking rules. Data is about 4 MB large.\n"
"[b]Note:[/b] [TextServerFallback] does not use additional data."
msgstr ""
"Если [code]true[/code], наборы правил итерации прерывания текстового сервера, "
"словари и другие дополнительные данные включаются в экспортируемый проект.\n"
"[b]Примечание:[/b] Данные текстового сервера \"ICU / HarfBuzz / Graphite\" "
"включают словари для Бирманского, Китайского, Японского, Кхмерского, "
"Лаосского и Тайского языков, а также правила переноса слов и строк Unicode "
"Standard Annex #29 и Unicode Standard Annex #14. Размер данных составляет "
"около 4 МБ.\n"
"[b]Примечание:[/b] [TextServerFallback] не использует дополнительные данные."

msgid ""
"Default strictness of line-breaking rules. Can be overridden by adding "
"[code]@lb={auto,loose,normal,strict}[/code] to the language code.\n"
"- [b]Auto[/b] ([code]0[/code]) - strictness is based on the length of the "
"line.\n"
"- [b]Loose[/b] ([code]1[/code]) - the least restrictive set of line-breaking "
"rules. Typically used for short lines.\n"
"- [b]Normal[/b] ([code]2[/code]) - the most common set of line-breaking "
"rules.\n"
"- [b]Strict[/b] ([code]3[/code]) - the most stringent set of line-breaking "
"rules.\n"
"See [url=https://www.w3.org/TR/css-text-3/#line-break-property]Line Breaking "
"Strictness: the line-break property[/url] for more info."
msgstr ""
"Строгость правил переноса строк по умолчанию. Можно переопределить, добавив "
"[code]@lb={auto,loose,normal,strict}[/code] к коду языка.\n"
"- [b]Auto[/b] ([code]0[/code]) - строгость зависит от длины очереди.\n"
"- [b]Loose[/b] ([code]1[/code]) - наименее строгий набор правил переноса "
"строк. Обычно используется для коротких строк.\n"
"- [b]Normal[/b] ([code]2[/code]) - наиболее распространенный набор правил "
"разрыва строк.\n"
"- [b]Strict[/b] ([code]3[/code]) - самый строгий набор правил разрыва строк.\n"
"См. [url=https://www.w3.org/TR/css-text-3/#line-break-property]Строгость "
"переноса строк: свойство переноса строк[/url] для получения дополнительной "
"информации."

msgid ""
"If non-empty, this locale will be used instead of the automatically detected "
"system locale.\n"
"[b]Note:[/b] This setting also applies to the exported project. To only "
"affect testing within the editor, override this setting with an [code]editor[/"
"code] [url=$DOCS_URL/tutorials/export/feature_tags.html]feature tag[/url] for "
"localization testing purposes."
msgstr ""
"Если не пусто, эта локаль будет использоваться вместо автоматически "
"обнаруженной системной локали.\n"
"[b]Примечание:[/b] Эта настройка также применяется к экспортированному "
"проекту. Чтобы повлиять только на тестирование в редакторе, переопределите "
"эту настройку с помощью [code]редактора[/code] [url=$DOCS_URL/tutorials/"
"export/feature_tags.html]тега функции[/url] для целей тестирования "
"локализации."

msgid ""
"Double vowels in strings during pseudolocalization to simulate the "
"lengthening of text due to localization."
msgstr ""
"Двойные гласные в строках во время псевдолокализации для имитации удлинения "
"текста из-за локализации."

msgid ""
"The expansion ratio to use during pseudolocalization. A value of [code]0.3[/"
"code] is sufficient for most practical purposes, and will increase the length "
"of each string by 30%."
msgstr ""
"Коэффициент расширения, используемый при псевдолокализации. Значение "
"[code]0.3[/code] достаточно для большинства практических целей и увеличит "
"длину каждой строки на 30%."

msgid ""
"If [code]true[/code], emulate bidirectional (right-to-left) text when "
"pseudolocalization is enabled. This can be used to spot issues with RTL "
"layout and UI mirroring that will crop up if the project is localized to RTL "
"languages such as Arabic or Hebrew. See also [member internationalization/"
"rendering/force_right_to_left_layout_direction]."
msgstr ""
"Если [code]true[/code], эмулировать двунаправленный (справа налево) текст при "
"включенной псевдолокализации. Это можно использовать для обнаружения проблем "
"с RTL-макетом и зеркалированием пользовательского интерфейса, которые "
"возникнут, если проект локализован для языков RTL, таких как арабский или "
"иврит. См. также [member internationalization/rendering/"
"force_right_to_left_layout_direction]."

msgid ""
"Replace all characters in the string with [code]*[/code]. Useful for finding "
"non-localizable strings."
msgstr ""
"Заменить все символы в строке на [code]*[/code]. Полезно для поиска "
"нелокализуемых строк."

msgid "Prefix that will be prepended to the pseudolocalized string."
msgstr "Префикс, который будет добавлен к псевдолокализованной строке."

msgid ""
"Replace all characters with their accented variants during pseudolocalization."
msgstr ""
"Заменить все символы на их акцентированные варианты во время "
"псевдолокализации."

msgid ""
"Skip placeholders for string formatting like [code]%s[/code] or [code]%f[/"
"code] during pseudolocalization. Useful to identify strings which need "
"additional control characters to display correctly."
msgstr ""
"Пропустить заполнители для форматирования строк, например [code]%s[/code] или "
"[code]%f[/code] во время псевдолокализации. Полезно для определения строк, "
"которым нужны дополнительные управляющие символы для правильного отображения."

msgid "Suffix that will be appended to the pseudolocalized string."
msgstr "Суффикс, который будет добавлен к псевдолокализованной строке."

msgid ""
"If [code]true[/code], enables pseudolocalization for the project. This can be "
"used to spot untranslatable strings or layout issues that may occur once the "
"project is localized to languages that have longer strings than the source "
"language.\n"
"[b]Note:[/b] This property is only read when the project starts. To toggle "
"pseudolocalization at run-time, use [member "
"TranslationServer.pseudolocalization_enabled] instead."
msgstr ""
"Если [code]true[/code], включает псевдолокализацию для проекта. Это можно "
"использовать для обнаружения непереводимых строк или проблем с макетом, "
"которые могут возникнуть после локализации проекта на языках, имеющих более "
"длинные строки, чем исходный язык.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"включить псевдолокализацию во время выполнения, используйте вместо этого "
"[member TranslationServer.pseudolocalization_enabled]."

msgid ""
"Force layout direction and text writing direction to RTL for all controls, "
"even if the current locale is intended to use a left-to-right layout and text "
"writing direction. This should be enabled for testing purposes only. See also "
"[member internationalization/pseudolocalization/fake_bidi]."
msgstr ""
"Принудительно устанавливать направление макета и направление написания текста "
"RTL для всех элементов управления, даже если текущая локаль предназначена для "
"использования макета слева направо и направления написания текста. Это "
"следует включать только для целей тестирования. См. также [member "
"internationalization/pseudolocalization/fake_bidi]."

msgid ""
"If [code]true[/code], root node will use [constant "
"Node.AUTO_TRANSLATE_MODE_ALWAYS], otherwise [constant "
"Node.AUTO_TRANSLATE_MODE_DISABLED] will be used.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the auto translate mode at runtime, set [member Node.auto_translate_mode] of "
"[member SceneTree.root] instead."
msgstr ""
"Если [code]true[/code], корневой узел будет использовать [constant "
"Node.AUTO_TRANSLATE_MODE_ALWAYS], в противном случае будет использоваться "
"[constant Node.AUTO_TRANSLATE_MODE_DISABLED].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить режим автоматического перевода во время выполнения, вместо этого "
"установите [member Node.auto_translate_mode] [member SceneTree.root]."

msgid "Root node default layout direction."
msgstr "Направление компоновки корневого узла по умолчанию."

msgid ""
"Specifies the [TextServer] to use. If left empty, the default will be used.\n"
"\"ICU / HarfBuzz / Graphite\" ([TextServerAdvanced]) is the most advanced "
"text driver, supporting right-to-left typesetting and complex scripts (for "
"languages like Arabic, Hebrew, etc.). The \"Fallback\" text driver "
"([TextServerFallback]) does not support right-to-left typesetting and complex "
"scripts.\n"
"[b]Note:[/b] The driver in use can be overridden at runtime via the [code]--"
"text-driver[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url].\n"
"[b]Note:[/b] There is an additional [code]Dummy[/code] text driver available, "
"which disables all text rendering and font-related functionality. This driver "
"is not listed in the project settings, but it can be enabled when running the "
"editor or project using the [code]--text-driver Dummy[/code] [url=$DOCS_URL/"
"tutorials/editor/command_line_tutorial.html]command line argument[/url]."
msgstr ""
"Указывает [TextServer] для использования. Если оставить пустым, будет "
"использоваться значение по умолчанию.\n"
"\"ICU / HarfBuzz / Graphite\" ([TextServerAdvanced]) — самый продвинутый "
"текстовый драйвер, поддерживающий набор текста справа налево и сложные "
"сценарии (для таких языков, как арабский, иврит и т. д.). Текстовый драйвер "
"\"Fallback\" ([TextServerFallback]) не поддерживает набор текста справа "
"налево и сложные сценарии.\n"
"[b]Примечание:[/b] Используемый драйвер можно переопределить во время "
"выполнения с помощью [code]--text-driver[/code] [url=$DOCS_URL/tutorials/"
"editor/command_line_tutorial.html]аргумента командной строки[/url].\n"
"[b]Примечание:[/b] Доступен дополнительный текстовый драйвер [code]Dummy[/"
"code], который отключает всю отрисовку текста и функциональность, связанную "
"со шрифтами. Этот драйвер не указан в настройках проекта, но его можно "
"включить при запуске редактора или проекта с помощью [code]--text-driver "
"Dummy[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]аргумента командной строки[/url]."

msgid ""
"Optional name for the 2D navigation layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 1. Если оставить пустым, слой будет "
"отображаться как \"Layer 1\"."

msgid ""
"Optional name for the 2D navigation layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 2. Если оставить пустым, слой будет "
"отображаться как \"Layer 2\"."

msgid ""
"Optional name for the 2D navigation layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 3. Если оставить пустым, слой будет "
"отображаться как \"Layer 3\"."

msgid ""
"Optional name for the 2D navigation layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 4. Если оставить пустым, слой будет "
"отображаться как \"Layer 4\"."

msgid ""
"Optional name for the 2D navigation layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 5. Если оставить пустым, слой будет "
"отображаться как \"Layer 5\"."

msgid ""
"Optional name for the 2D navigation layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 6. Если оставить пустым, слой будет "
"отображаться как \"Layer 6\"."

msgid ""
"Optional name for the 2D navigation layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 7. Если оставить пустым, слой будет "
"отображаться как \"Layer 7\"."

msgid ""
"Optional name for the 2D navigation layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 8. Если оставить пустым, слой будет "
"отображаться как \"Layer 8\"."

msgid ""
"Optional name for the 2D navigation layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 9. Если оставить пустым, слой будет "
"отображаться как \"Layer 9\"."

msgid ""
"Optional name for the 2D navigation layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 10. Если оставить пустым, слой будет "
"отображаться как \"Layer 10\"."

msgid ""
"Optional name for the 2D navigation layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 11. Если оставить пустым, слой будет "
"отображаться как \"Layer 11\"."

msgid ""
"Optional name for the 2D navigation layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 12. Если оставить пустым, слой будет "
"отображаться как \"Layer 12\"."

msgid ""
"Optional name for the 2D navigation layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 13. Если оставить пустым, слой будет "
"отображаться как \"Layer 13\"."

msgid ""
"Optional name for the 2D navigation layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 14. Если оставить пустым, слой будет "
"отображаться как \"Layer 14\"."

msgid ""
"Optional name for the 2D navigation layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 15. Если оставить пустым, слой будет "
"отображаться как \"Layer 15\"."

msgid ""
"Optional name for the 2D navigation layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 16. Если оставить пустым, слой будет "
"отображаться как \"Layer 16\"."

msgid ""
"Optional name for the 2D navigation layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 17. Если оставить пустым, слой будет "
"отображаться как \"Layer 17\"."

msgid ""
"Optional name for the 2D navigation layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 18. Если оставить пустым, слой будет "
"отображаться как \"Layer 18\"."

msgid ""
"Optional name for the 2D navigation layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 19. Если оставить пустым, слой будет "
"отображаться как \"Layer 19\"."

msgid ""
"Optional name for the 2D navigation layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 20. Если оставить пустым, слой будет "
"отображаться как \"Layer 20\"."

msgid ""
"Optional name for the 2D navigation layer 21. If left empty, the layer will "
"display as \"Layer 21\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 21. Если оставить пустым, слой будет "
"отображаться как \"Layer 21\"."

msgid ""
"Optional name for the 2D navigation layer 22. If left empty, the layer will "
"display as \"Layer 22\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 22. Если оставить пустым, слой будет "
"отображаться как \"Layer 22\"."

msgid ""
"Optional name for the 2D navigation layer 23. If left empty, the layer will "
"display as \"Layer 23\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 23. Если оставить пустым, слой будет "
"отображаться как \"Layer 23\"."

msgid ""
"Optional name for the 2D navigation layer 24. If left empty, the layer will "
"display as \"Layer 24\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 24. Если оставить пустым, слой будет "
"отображаться как \"Layer 24\"."

msgid ""
"Optional name for the 2D navigation layer 25. If left empty, the layer will "
"display as \"Layer 25\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 25. Если оставить пустым, слой будет "
"отображаться как \"Layer 25\"."

msgid ""
"Optional name for the 2D navigation layer 26. If left empty, the layer will "
"display as \"Layer 26\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 26. Если оставить пустым, слой будет "
"отображаться как \"Layer 26\"."

msgid ""
"Optional name for the 2D navigation layer 27. If left empty, the layer will "
"display as \"Layer 27\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 27. Если оставить пустым, слой будет "
"отображаться как \"Layer 27\"."

msgid ""
"Optional name for the 2D navigation layer 28. If left empty, the layer will "
"display as \"Layer 28\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 28. Если оставить пустым, слой будет "
"отображаться как \"Layer 28\"."

msgid ""
"Optional name for the 2D navigation layer 29. If left empty, the layer will "
"display as \"Layer 29\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 29. Если оставить пустым, слой будет "
"отображаться как \"Layer 29\"."

msgid ""
"Optional name for the 2D navigation layer 30. If left empty, the layer will "
"display as \"Layer 30\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 30. Если оставить пустым, слой будет "
"отображаться как \"Layer 30\"."

msgid ""
"Optional name for the 2D navigation layer 31. If left empty, the layer will "
"display as \"Layer 31\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 31. Если оставить пустым, слой будет "
"отображаться как \"Layer 31\"."

msgid ""
"Optional name for the 2D navigation layer 32. If left empty, the layer will "
"display as \"Layer 32\"."
msgstr ""
"Необязательное имя для слоя 2D-навигации 32. Если оставить пустым, слой будет "
"отображаться как \"Layer 32\"."

msgid ""
"Optional name for the 2D physics layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 1. Если оставить пустым, слой будет "
"отображаться как \"Layer 1\"."

msgid ""
"Optional name for the 2D physics layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 2. Если оставить пустым, слой будет "
"отображаться как \"Layer 2\"."

msgid ""
"Optional name for the 2D physics layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 3. Если оставить пустым, слой будет "
"отображаться как \"Layer 3\"."

msgid ""
"Optional name for the 2D physics layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 4. Если оставить пустым, слой будет "
"отображаться как \"Layer 4\"."

msgid ""
"Optional name for the 2D physics layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 5. Если оставить пустым, слой будет "
"отображаться как \"Layer 5\"."

msgid ""
"Optional name for the 2D physics layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 6. Если оставить пустым, слой будет "
"отображаться как \"Layer 6\"."

msgid ""
"Optional name for the 2D physics layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 7. Если оставить пустым, слой будет "
"отображаться как \"Layer 7\"."

msgid ""
"Optional name for the 2D physics layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 8. Если оставить пустым, слой будет "
"отображаться как \"Layer 8\"."

msgid ""
"Optional name for the 2D physics layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 9. Если оставить пустым, слой будет "
"отображаться как \"Layer 9\"."

msgid ""
"Optional name for the 2D physics layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 10. Если оставить пустым, слой будет "
"отображаться как \"Layer 10\"."

msgid ""
"Optional name for the 2D physics layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 11. Если оставить пустым, слой будет "
"отображаться как \"Layer 11\"."

msgid ""
"Optional name for the 2D physics layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 12. Если оставить пустым, слой будет "
"отображаться как \"Layer 12\"."

msgid ""
"Optional name for the 2D physics layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 13. Если оставить пустым, слой будет "
"отображаться как \"Layer 13\"."

msgid ""
"Optional name for the 2D physics layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 14. Если оставить пустым, слой будет "
"отображаться как \"Layer 14\"."

msgid ""
"Optional name for the 2D physics layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 15. Если оставить пустым, слой будет "
"отображаться как \"Layer 15\"."

msgid ""
"Optional name for the 2D physics layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 16. Если оставить пустым, слой будет "
"отображаться как \"Layer 16\"."

msgid ""
"Optional name for the 2D physics layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 17. Если оставить пустым, слой будет "
"отображаться как \"Layer 17\"."

msgid ""
"Optional name for the 2D physics layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 18. Если оставить пустым, слой будет "
"отображаться как \"Layer 18\"."

msgid ""
"Optional name for the 2D physics layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 19. Если оставить пустым, слой будет "
"отображаться как \"Layer 19\"."

msgid ""
"Optional name for the 2D physics layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 20. Если оставить пустым, слой будет "
"отображаться как \"Layer 20\"."

msgid ""
"Optional name for the 2D physics layer 21. If left empty, the layer will "
"display as \"Layer 21\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 21. Если оставить пустым, слой будет "
"отображаться как \"Layer 21\"."

msgid ""
"Optional name for the 2D physics layer 22. If left empty, the layer will "
"display as \"Layer 22\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 22. Если оставить пустым, слой будет "
"отображаться как \"Layer 22\"."

msgid ""
"Optional name for the 2D physics layer 23. If left empty, the layer will "
"display as \"Layer 23\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 23. Если оставить пустым, слой будет "
"отображаться как \"Layer 23\"."

msgid ""
"Optional name for the 2D physics layer 24. If left empty, the layer will "
"display as \"Layer 24\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 24. Если оставить пустым, слой будет "
"отображаться как \"Layer 24\"."

msgid ""
"Optional name for the 2D physics layer 25. If left empty, the layer will "
"display as \"Layer 25\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 25. Если оставить пустым, слой будет "
"отображаться как \"Layer 25\"."

msgid ""
"Optional name for the 2D physics layer 26. If left empty, the layer will "
"display as \"Layer 26\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 26. Если оставить пустым, слой будет "
"отображаться как \"Layer 26\"."

msgid ""
"Optional name for the 2D physics layer 27. If left empty, the layer will "
"display as \"Layer 27\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 27. Если оставить пустым, слой будет "
"отображаться как \"Layer 27\"."

msgid ""
"Optional name for the 2D physics layer 28. If left empty, the layer will "
"display as \"Layer 28\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 28. Если оставить пустым, слой будет "
"отображаться как \"Layer 28\"."

msgid ""
"Optional name for the 2D physics layer 29. If left empty, the layer will "
"display as \"Layer 29\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 29. Если оставить пустым, слой будет "
"отображаться как \"Layer 29\"."

msgid ""
"Optional name for the 2D physics layer 30. If left empty, the layer will "
"display as \"Layer 30\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 30. Если оставить пустым, слой будет "
"отображаться как \"Layer 30\"."

msgid ""
"Optional name for the 2D physics layer 31. If left empty, the layer will "
"display as \"Layer 31\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 31. Если оставить пустым, слой будет "
"отображаться как \"Layer 31\"."

msgid ""
"Optional name for the 2D physics layer 32. If left empty, the layer will "
"display as \"Layer 32\"."
msgstr ""
"Необязательное имя для слоя 2D-физики 32. Если оставить пустым, слой будет "
"отображаться как \"Layer 32\"."

msgid ""
"Optional name for the 2D render layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 1. Если оставить пустым, слой будет "
"отображаться как \"Layer 1\"."

msgid ""
"Optional name for the 2D render layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 2. Если оставить пустым, слой будет "
"отображаться как \"Layer 2\"."

msgid ""
"Optional name for the 2D render layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 3. Если оставить пустым, слой будет "
"отображаться как \"Layer 3\"."

msgid ""
"Optional name for the 2D render layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 4. Если оставить пустым, слой будет "
"отображаться как \"Layer 4\"."

msgid ""
"Optional name for the 2D render layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 5. Если оставить пустым, слой будет "
"отображаться как \"Layer 5\"."

msgid ""
"Optional name for the 2D render layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 6. Если оставить пустым, слой будет "
"отображаться как \"Layer 6\"."

msgid ""
"Optional name for the 2D render layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 7. Если оставить пустым, слой будет "
"отображаться как \"Layer 7\"."

msgid ""
"Optional name for the 2D render layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 8. Если оставить пустым, слой будет "
"отображаться как \"Layer 8\"."

msgid ""
"Optional name for the 2D render layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 9. Если оставить пустым, слой будет "
"отображаться как \"Layer 9\"."

msgid ""
"Optional name for the 2D render layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 10. Если оставить пустым, слой "
"будет отображаться как \"Layer 10\"."

msgid ""
"Optional name for the 2D render layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 11. Если оставить пустым, слой "
"будет отображаться как \"Layer 11\"."

msgid ""
"Optional name for the 2D render layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 12. Если оставить пустым, слой "
"будет отображаться как \"Layer 12\"."

msgid ""
"Optional name for the 2D render layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 13. Если оставить пустым, слой "
"будет отображаться как \"Layer 13\"."

msgid ""
"Optional name for the 2D render layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 14. Если оставить пустым, слой "
"будет отображаться как \"Layer 14\"."

msgid ""
"Optional name for the 2D render layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 15. Если оставить пустым, слой "
"будет отображаться как \"Layer 15\"."

msgid ""
"Optional name for the 2D render layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 16. Если оставить пустым, слой "
"будет отображаться как \"Layer 16\"."

msgid ""
"Optional name for the 2D render layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 17. Если оставить пустым, слой "
"будет отображаться как \"Layer 17\"."

msgid ""
"Optional name for the 2D render layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 18. Если оставить пустым, слой "
"будет отображаться как \"Layer 18\"."

msgid ""
"Optional name for the 2D render layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 19. Если оставить пустым, слой "
"будет отображаться как \"Layer 19\"."

msgid ""
"Optional name for the 2D render layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Необязательное имя для слоя 2D-рендеринга 20. Если оставить пустым, слой "
"будет отображаться как \"Layer 20\"."

msgid ""
"Optional name for the 3D navigation layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 1. Если оставить пустым, слой будет "
"отображаться как \"Layer 1\"."

msgid ""
"Optional name for the 3D navigation layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 2. Если оставить пустым, слой будет "
"отображаться как \"Layer 2\"."

msgid ""
"Optional name for the 3D navigation layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 3. Если оставить пустым, слой будет "
"отображаться как \"Layer 3\"."

msgid ""
"Optional name for the 3D navigation layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 4. Если оставить пустым, слой будет "
"отображаться как \"Layer 4\"."

msgid ""
"Optional name for the 3D navigation layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 5. Если оставить пустым, слой будет "
"отображаться как \"Layer 5\"."

msgid ""
"Optional name for the 3D navigation layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 6. Если оставить пустым, слой будет "
"отображаться как \"Layer 6\"."

msgid ""
"Optional name for the 3D navigation layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 7. Если оставить пустым, слой будет "
"отображаться как \"Layer 7\"."

msgid ""
"Optional name for the 3D navigation layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 8. Если оставить пустым, слой будет "
"отображаться как \"Layer 8\"."

msgid ""
"Optional name for the 3D navigation layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 9. Если оставить пустым, слой будет "
"отображаться как \"Layer 9\"."

msgid ""
"Optional name for the 3D navigation layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 10. Если оставить пустым, слой будет "
"отображаться как \"Layer 10\"."

msgid ""
"Optional name for the 3D navigation layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 11. Если оставить пустым, слой будет "
"отображаться как \"Layer 11\"."

msgid ""
"Optional name for the 3D navigation layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 12. Если оставить пустым, слой будет "
"отображаться как \"Layer 12\"."

msgid ""
"Optional name for the 3D navigation layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 13. Если оставить пустым, слой будет "
"отображаться как \"Layer 13\"."

msgid ""
"Optional name for the 3D navigation layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 14. Если оставить пустым, слой будет "
"отображаться как \"Layer 14\"."

msgid ""
"Optional name for the 3D navigation layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 15. Если оставить пустым, слой будет "
"отображаться как \"Layer 15\"."

msgid ""
"Optional name for the 3D navigation layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 16. Если оставить пустым, слой будет "
"отображаться как \"Layer 16\"."

msgid ""
"Optional name for the 3D navigation layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 17. Если оставить пустым, слой будет "
"отображаться как \"Layer 17\"."

msgid ""
"Optional name for the 3D navigation layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 18. Если оставить пустым, слой будет "
"отображаться как \"Layer 18\"."

msgid ""
"Optional name for the 3D navigation layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 19. Если оставить пустым, слой будет "
"отображаться как \"Layer 19\"."

msgid ""
"Optional name for the 3D navigation layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 20. Если оставить пустым, слой будет "
"отображаться как \"Layer 20\"."

msgid ""
"Optional name for the 3D navigation layer 21. If left empty, the layer will "
"display as \"Layer 21\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 21. Если оставить пустым, слой будет "
"отображаться как \"Layer 21\"."

msgid ""
"Optional name for the 3D navigation layer 22. If left empty, the layer will "
"display as \"Layer 22\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 22. Если оставить пустым, слой будет "
"отображаться как \"Layer 22\"."

msgid ""
"Optional name for the 3D navigation layer 23. If left empty, the layer will "
"display as \"Layer 23\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 23. Если оставить пустым, слой будет "
"отображаться как \"Layer 23\"."

msgid ""
"Optional name for the 3D navigation layer 24. If left empty, the layer will "
"display as \"Layer 24\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 24. Если оставить пустым, слой будет "
"отображаться как \"Layer 24\"."

msgid ""
"Optional name for the 3D navigation layer 25. If left empty, the layer will "
"display as \"Layer 25\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 25. Если оставить пустым, слой будет "
"отображаться как \"Layer 25\"."

msgid ""
"Optional name for the 3D navigation layer 26. If left empty, the layer will "
"display as \"Layer 26\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 26. Если оставить пустым, слой будет "
"отображаться как \"Layer 26\"."

msgid ""
"Optional name for the 3D navigation layer 27. If left empty, the layer will "
"display as \"Layer 27\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 27. Если оставить пустым, слой будет "
"отображаться как \"Layer 27\"."

msgid ""
"Optional name for the 3D navigation layer 28. If left empty, the layer will "
"display as \"Layer 28\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 28. Если оставить пустым, слой будет "
"отображаться как \"Layer 28\"."

msgid ""
"Optional name for the 3D navigation layer 29. If left empty, the layer will "
"display as \"Layer 29\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 29. Если оставить пустым, слой будет "
"отображаться как \"Layer 29\"."

msgid ""
"Optional name for the 3D navigation layer 30. If left empty, the layer will "
"display as \"Layer 30\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 30. Если оставить пустым, слой будет "
"отображаться как \"Layer 30\"."

msgid ""
"Optional name for the 3D navigation layer 31. If left empty, the layer will "
"display as \"Layer 31\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 31. Если оставить пустым, слой будет "
"отображаться как \"Layer 31\"."

msgid ""
"Optional name for the 3D navigation layer 32. If left empty, the layer will "
"display as \"Layer 32\"."
msgstr ""
"Необязательное имя для слоя 3D-навигации 32. Если оставить пустым, слой будет "
"отображаться как \"Layer 32\"."

msgid ""
"Optional name for the 3D physics layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 1. Если оставить пустым, слой будет "
"отображаться как \"Layer 1\"."

msgid ""
"Optional name for the 3D physics layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 2. Если оставить пустым, слой будет "
"отображаться как \"Layer 2\"."

msgid ""
"Optional name for the 3D physics layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 3. Если оставить пустым, слой будет "
"отображаться как \"Layer 3\"."

msgid ""
"Optional name for the 3D physics layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 4. Если оставить пустым, слой будет "
"отображаться как \"Layer 4\"."

msgid ""
"Optional name for the 3D physics layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 5. Если оставить пустым, слой будет "
"отображаться как \"Layer 5\"."

msgid ""
"Optional name for the 3D physics layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 6. Если оставить пустым, слой будет "
"отображаться как \"Layer 6\"."

msgid ""
"Optional name for the 3D physics layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 7. Если оставить пустым, слой будет "
"отображаться как \"Layer 7\"."

msgid ""
"Optional name for the 3D physics layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 8. Если оставить пустым, слой будет "
"отображаться как \"Layer 8\"."

msgid ""
"Optional name for the 3D physics layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 9. Если оставить пустым, слой будет "
"отображаться как \"Layer 9\"."

msgid ""
"Optional name for the 3D physics layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 10. Если оставить пустым, слой будет "
"отображаться как \"Layer 10\"."

msgid ""
"Optional name for the 3D physics layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 11. Если оставить пустым, слой будет "
"отображаться как \"Layer 11\"."

msgid ""
"Optional name for the 3D physics layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 12. Если оставить пустым, слой будет "
"отображаться как \"Layer 12\"."

msgid ""
"Optional name for the 3D physics layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 13. Если оставить пустым, слой будет "
"отображаться как \"Layer 13\"."

msgid ""
"Optional name for the 3D physics layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 14. Если оставить пустым, слой будет "
"отображаться как \"Layer 14\"."

msgid ""
"Optional name for the 3D physics layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 15. Если оставить пустым, слой будет "
"отображаться как \"Layer 15\"."

msgid ""
"Optional name for the 3D physics layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 16. Если оставить пустым, слой будет "
"отображаться как \"Layer 16\"."

msgid ""
"Optional name for the 3D physics layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 17. Если оставить пустым, слой будет "
"отображаться как \"Layer 17\"."

msgid ""
"Optional name for the 3D physics layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 18. Если оставить пустым, слой будет "
"отображаться как \"Layer 18\"."

msgid ""
"Optional name for the 3D physics layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 19. Если оставить пустым, слой будет "
"отображаться как \"Layer 19\"."

msgid ""
"Optional name for the 3D physics layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 20. Если оставить пустым, слой будет "
"отображаться как \"Layer 20\"."

msgid ""
"Optional name for the 3D physics layer 21. If left empty, the layer will "
"display as \"Layer 21\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 21. Если оставить пустым, слой будет "
"отображаться как \"Layer 21\"."

msgid ""
"Optional name for the 3D physics layer 22. If left empty, the layer will "
"display as \"Layer 22\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 22. Если оставить пустым, слой будет "
"отображаться как \"Layer 22\"."

msgid ""
"Optional name for the 3D physics layer 23. If left empty, the layer will "
"display as \"Layer 23\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 23. Если оставить пустым, слой будет "
"отображаться как \"Layer 23\"."

msgid ""
"Optional name for the 3D physics layer 24. If left empty, the layer will "
"display as \"Layer 24\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 24. Если оставить пустым, слой будет "
"отображаться как \"Layer 24\"."

msgid ""
"Optional name for the 3D physics layer 25. If left empty, the layer will "
"display as \"Layer 25\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 25. Если оставить пустым, слой будет "
"отображаться как \"Layer 25\"."

msgid ""
"Optional name for the 3D physics layer 26. If left empty, the layer will "
"display as \"Layer 26\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 26. Если оставить пустым, слой будет "
"отображаться как \"Layer 26\"."

msgid ""
"Optional name for the 3D physics layer 27. If left empty, the layer will "
"display as \"Layer 27\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 27. Если оставить пустым, слой будет "
"отображаться как \"Layer 27\"."

msgid ""
"Optional name for the 3D physics layer 28. If left empty, the layer will "
"display as \"Layer 28\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 28. Если оставить пустым, слой будет "
"отображаться как \"Layer 28\"."

msgid ""
"Optional name for the 3D physics layer 29. If left empty, the layer will "
"display as \"Layer 29\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 29. Если оставить пустым, слой будет "
"отображаться как \"Layer 29\"."

msgid ""
"Optional name for the 3D physics layer 30. If left empty, the layer will "
"display as \"Layer 30\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 30. Если оставить пустым, слой будет "
"отображаться как \"Layer 30\"."

msgid ""
"Optional name for the 3D physics layer 31. If left empty, the layer will "
"display as \"Layer 31\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 31. Если оставить пустым, слой будет "
"отображаться как \"Layer 31\"."

msgid ""
"Optional name for the 3D physics layer 32. If left empty, the layer will "
"display as \"Layer 32\"."
msgstr ""
"Необязательное имя для слоя 3D-физики 32. Если оставить пустым, слой будет "
"отображаться как \"Layer 32\"."

msgid ""
"Optional name for the 3D render layer 1. If left empty, the layer will "
"display as \"Layer 1\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 1. Если оставить пустым, слой будет "
"отображаться как \"Layer 1\"."

msgid ""
"Optional name for the 3D render layer 2. If left empty, the layer will "
"display as \"Layer 2\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 2. Если оставить пустым, слой будет "
"отображаться как \"Layer 2\"."

msgid ""
"Optional name for the 3D render layer 3. If left empty, the layer will "
"display as \"Layer 3\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 3. Если оставить пустым, слой будет "
"отображаться как \"Layer 3\"."

msgid ""
"Optional name for the 3D render layer 4. If left empty, the layer will "
"display as \"Layer 4\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 4. Если оставить пустым, слой будет "
"отображаться как \"Layer 4\"."

msgid ""
"Optional name for the 3D render layer 5. If left empty, the layer will "
"display as \"Layer 5\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 5. Если оставить пустым, слой будет "
"отображаться как \"Layer 5\"."

msgid ""
"Optional name for the 3D render layer 6. If left empty, the layer will "
"display as \"Layer 6\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 6. Если оставить пустым, слой будет "
"отображаться как \"Layer 6\"."

msgid ""
"Optional name for the 3D render layer 7. If left empty, the layer will "
"display as \"Layer 7\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 7. Если оставить пустым, слой будет "
"отображаться как \"Layer 7\"."

msgid ""
"Optional name for the 3D render layer 8. If left empty, the layer will "
"display as \"Layer 8\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 8. Если оставить пустым, слой будет "
"отображаться как \"Layer 8\"."

msgid ""
"Optional name for the 3D render layer 9. If left empty, the layer will "
"display as \"Layer 9\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 9. Если оставить пустым, слой будет "
"отображаться как \"Layer 9\"."

msgid ""
"Optional name for the 3D render layer 10. If left empty, the layer will "
"display as \"Layer 10\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 10. Если оставить пустым, слой "
"будет отображаться как \"Layer 10\"."

msgid ""
"Optional name for the 3D render layer 11. If left empty, the layer will "
"display as \"Layer 11\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 11. Если оставить пустым, слой "
"будет отображаться как \"Layer 11\"."

msgid ""
"Optional name for the 3D render layer 12. If left empty, the layer will "
"display as \"Layer 12\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 12. Если оставить пустым, слой "
"будет отображаться как \"Layer 12\"."

msgid ""
"Optional name for the 3D render layer 13. If left empty, the layer will "
"display as \"Layer 13\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 13. Если оставить пустым, слой "
"будет отображаться как \"Layer 13\"."

msgid ""
"Optional name for the 3D render layer 14. If left empty, the layer will "
"display as \"Layer 14\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 14. Если оставить пустым, слой "
"будет отображаться как \"Layer 14\"."

msgid ""
"Optional name for the 3D render layer 15. If left empty, the layer will "
"display as \"Layer 15\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 15. Если оставить пустым, слой "
"будет отображаться как \"Layer 15\"."

msgid ""
"Optional name for the 3D render layer 16. If left empty, the layer will "
"display as \"Layer 16\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 16. Если оставить пустым, слой "
"будет отображаться как \"Layer 16\"."

msgid ""
"Optional name for the 3D render layer 17. If left empty, the layer will "
"display as \"Layer 17\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 17. Если оставить пустым, слой "
"будет отображаться как \"Layer 17\"."

msgid ""
"Optional name for the 3D render layer 18. If left empty, the layer will "
"display as \"Layer 18\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 18. Если оставить пустым, слой "
"будет отображаться как \"Слой 18\"."

msgid ""
"Optional name for the 3D render layer 19. If left empty, the layer will "
"display as \"Layer 19\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 19. Если оставить пустым, слой "
"будет отображаться как \"Слой 19\"."

msgid ""
"Optional name for the 3D render layer 20. If left empty, the layer will "
"display as \"Layer 20\"."
msgstr ""
"Необязательное имя для слоя 3D-рендеринга 20. Если оставить пустым, слой "
"будет отображаться как \"Слой 20\"."

msgid ""
"Optional name for the navigation avoidance layer 1. If left empty, the layer "
"will display as \"Layer 1\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 1. Если оставить пустым, слой "
"будет отображаться как \"Слой 1\"."

msgid ""
"Optional name for the navigation avoidance layer 2. If left empty, the layer "
"will display as \"Layer 2\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 2. Если оставить пустым, слой "
"будет отображаться как \"Слой 2\"."

msgid ""
"Optional name for the navigation avoidance layer 3. If left empty, the layer "
"will display as \"Layer 3\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 3. Если оставить пустым, слой "
"будет отображаться как \"Слой 3\"."

msgid ""
"Optional name for the navigation avoidance layer 4. If left empty, the layer "
"will display as \"Layer 4\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 4. Если оставить пустым, слой "
"будет отображаться как \"Слой 4\"."

msgid ""
"Optional name for the navigation avoidance layer 5. If left empty, the layer "
"will display as \"Layer 5\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 5. Если оставить пустым, слой "
"будет отображаться как \"Слой 5\"."

msgid ""
"Optional name for the navigation avoidance layer 6. If left empty, the layer "
"will display as \"Layer 6\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 6. Если оставить пустым, слой "
"будет отображаться как \"Слой 6\"."

msgid ""
"Optional name for the navigation avoidance layer 7. If left empty, the layer "
"will display as \"Layer 7\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 7. Если оставить пустым, слой "
"будет отображаться как \"Слой 7\"."

msgid ""
"Optional name for the navigation avoidance layer 8. If left empty, the layer "
"will display as \"Layer 8\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 8. Если оставить пустым, слой "
"будет отображаться как \"Слой 8\"."

msgid ""
"Optional name for the navigation avoidance layer 9. If left empty, the layer "
"will display as \"Layer 9\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 9. Если оставить пустым, слой "
"будет отображаться как \"Слой 9\"."

msgid ""
"Optional name for the navigation avoidance layer 10. If left empty, the layer "
"will display as \"Layer 10\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 10. Если оставить пустым, "
"слой будет отображаться как \"Слой 10\"."

msgid ""
"Optional name for the navigation avoidance layer 11. If left empty, the layer "
"will display as \"Layer 11\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 11. Если оставить пустым, "
"слой будет отображаться как \"Слой 11\"."

msgid ""
"Optional name for the navigation avoidance layer 12. If left empty, the layer "
"will display as \"Layer 12\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 12. Если оставить пустым, "
"слой будет отображаться как \"Слой 12\"."

msgid ""
"Optional name for the navigation avoidance layer 13. If left empty, the layer "
"will display as \"Layer 13\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 13. Если оставить пустым, "
"слой будет отображаться как \"Слой 13\"."

msgid ""
"Optional name for the navigation avoidance layer 14. If left empty, the layer "
"will display as \"Layer 14\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 14. Если оставить пустым, "
"слой будет отображаться как \"Слой 14\"."

msgid ""
"Optional name for the navigation avoidance layer 15. If left empty, the layer "
"will display as \"Layer 15\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 15. Если оставить пустым, "
"слой будет отображаться как \"Слой 15\"."

msgid ""
"Optional name for the navigation avoidance layer 16. If left empty, the layer "
"will display as \"Layer 16\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 16. Если оставить пустым, "
"слой будет отображаться как \"Слой 16\"."

msgid ""
"Optional name for the navigation avoidance layer 17. If left empty, the layer "
"will display as \"Layer 17\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 17. Если оставить пустым, "
"слой будет отображаться как \"Слой 17\"."

msgid ""
"Optional name for the navigation avoidance layer 18. If left empty, the layer "
"will display as \"Layer 18\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 18. Если оставить пустым, "
"слой будет отображаться как \"Слой 18\"."

msgid ""
"Optional name for the navigation avoidance layer 19. If left empty, the layer "
"will display as \"Layer 19\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 19. Если оставить пустым, "
"слой будет отображаться как \"Слой 19\"."

msgid ""
"Optional name for the navigation avoidance layer 20. If left empty, the layer "
"will display as \"Layer 20\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 20. Если оставить пустым, "
"слой будет отображаться как \"Слой 20\"."

msgid ""
"Optional name for the navigation avoidance layer 21. If left empty, the layer "
"will display as \"Layer 21\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 21. Если оставить пустым, "
"слой будет отображаться как \"Слой 21\"."

msgid ""
"Optional name for the navigation avoidance layer 22. If left empty, the layer "
"will display as \"Layer 22\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 22. Если оставить пустым, "
"слой будет отображаться как \"Слой 22\"."

msgid ""
"Optional name for the navigation avoidance layer 23. If left empty, the layer "
"will display as \"Layer 23\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 23. Если оставить пустым, "
"слой будет отображаться как \"Слой 23\"."

msgid ""
"Optional name for the navigation avoidance layer 24. If left empty, the layer "
"will display as \"Layer 24\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 24. Если оставить пустым, "
"слой будет отображаться как \"Слой 24\"."

msgid ""
"Optional name for the navigation avoidance layer 25. If left empty, the layer "
"will display as \"Layer 25\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 25. Если оставить пустым, "
"слой будет отображаться как \"Слой 25\"."

msgid ""
"Optional name for the navigation avoidance layer 26. If left empty, the layer "
"will display as \"Layer 26\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 26. Если оставить пустым, "
"слой будет отображаться как \"Слой 26\"."

msgid ""
"Optional name for the navigation avoidance layer 27. If left empty, the layer "
"will display as \"Layer 27\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 27. Если оставить пустым, "
"слой будет отображаться как \"Слой 27\"."

msgid ""
"Optional name for the navigation avoidance layer 28. If left empty, the layer "
"will display as \"Layer 28\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 28. Если оставить пустым, "
"слой будет отображаться как \"Слой 28\"."

msgid ""
"Optional name for the navigation avoidance layer 29. If left empty, the layer "
"will display as \"Layer 29\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 29. Если оставить пустым, "
"слой будет отображаться как \"Слой 29\"."

msgid ""
"Optional name for the navigation avoidance layer 30. If left empty, the layer "
"will display as \"Layer 30\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 30. Если оставить пустым, "
"слой будет отображаться как \"Слой 30\"."

msgid ""
"Optional name for the navigation avoidance layer 31. If left empty, the layer "
"will display as \"Layer 31\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 31. Если оставить пустым, "
"слой будет отображаться как \"Слой 31\"."

msgid ""
"Optional name for the navigation avoidance layer 32. If left empty, the layer "
"will display as \"Layer 32\"."
msgstr ""
"Необязательное имя для слоя избегания навигации 31. Если оставить пустым, "
"слой будет отображаться как \"Слой 31\"."

msgid ""
"Godot uses a message queue to defer some function calls. If you run out of "
"space on it (you will see an error), you can increase the size here."
msgstr ""
"Godot использует очередь сообщений для отсрочки некоторых вызовов функций. "
"Если у вас закончилось место на ней (вы увидите ошибку), вы можете увеличить "
"размер здесь."

msgid ""
"Default cell size for 2D navigation maps. See [method "
"NavigationServer2D.map_set_cell_size]."
msgstr ""
"Размер ячейки по умолчанию для навигационных карт 2D. См. [method "
"NavigationServer2D.map_set_cell_size]."

msgid ""
"Default edge connection margin for 2D navigation maps. See [method "
"NavigationServer2D.map_set_edge_connection_margin]."
msgstr ""
"Поле соединения ребер по умолчанию для навигационных карт 2D. См. [method "
"NavigationServer2D.map_set_edge_connection_margin]."

msgid ""
"Default link connection radius for 2D navigation maps. See [method "
"NavigationServer2D.map_set_link_connection_radius]."
msgstr ""
"Радиус соединения ссылок по умолчанию для навигационных карт 2D. См. [method "
"NavigationServer2D.map_set_link_connection_radius]."

msgid ""
"Default merge rasterizer cell scale for 2D navigation maps. See [method "
"NavigationServer2D.map_set_merge_rasterizer_cell_scale]."
msgstr ""
"Масштаб ячеек растеризатора слияния по умолчанию, для 2D-навигационных карт. "
"См. [method NavigationServer2D.map_set_merge_rasterizer_cell_scale]."

msgid ""
"If enabled 2D navigation regions will use edge connections to connect with "
"other navigation regions within proximity of the navigation map edge "
"connection margin. This setting only affects World2D default navigation maps."
msgstr ""
"Если включено, навигационные регионы 2D будут использовать соединения по "
"краям для соединения с другими навигационными регионами в непосредственной "
"близости от границы соединения по краям навигационной карты. Эта настройка "
"влияет только на навигационные карты World2D по умолчанию."

msgid ""
"Default cell height for 3D navigation maps. See [method "
"NavigationServer3D.map_set_cell_height]."
msgstr ""
"Высота ячейки по умолчанию для 3D-карт навигации. См. [method "
"NavigationServer3D.map_set_cell_height]."

msgid ""
"Default cell size for 3D navigation maps. See [method "
"NavigationServer3D.map_set_cell_size]."
msgstr ""
"Размер ячейки по умолчанию для 3D-карт навигации. См. [method "
"NavigationServer3D.map_set_cell_size]."

msgid ""
"Default edge connection margin for 3D navigation maps. See [method "
"NavigationServer3D.map_set_edge_connection_margin]."
msgstr ""
"Поле соединения краев по умолчанию для 3D-навигационных карт. See [method "
"NavigationServer3D.map_set_edge_connection_margin]."

msgid ""
"Default link connection radius for 3D navigation maps. See [method "
"NavigationServer3D.map_set_link_connection_radius]."
msgstr ""
"Радиус соединения ссылок по умолчанию для 3D-навигационных карт. See [method "
"NavigationServer3D.map_set_link_connection_radius]."

msgid ""
"Default up orientation for 3D navigation maps. See [method "
"NavigationServer3D.map_set_up]."
msgstr ""
"Ориентация вверх по умолчанию для 3D-карт навигации. См. [method "
"NavigationServer3D.map_set_up]."

msgid ""
"Default merge rasterizer cell scale for 3D navigation maps. See [method "
"NavigationServer3D.map_set_merge_rasterizer_cell_scale]."
msgstr ""
"Масштаб ячеек слияния растеризатора по умолчанию для 3D-карт навигации. См. "
"[method NavigationServer3D.map_set_merge_rasterizer_cell_scale]."

msgid ""
"If enabled 3D navigation regions will use edge connections to connect with "
"other navigation regions within proximity of the navigation map edge "
"connection margin. This setting only affects World3D default navigation maps."
msgstr ""
"Если включено, регионы навигации 3D будут использовать соединения по краям "
"для соединения с другими регионами навигации в пределах границы соединения по "
"краям карты навигации. Эта настройка , по умолчанию, влияет только на карты "
"навигации World3D."

msgid ""
"If enabled and avoidance calculations use multiple threads the threads run "
"with high priority."
msgstr ""
"Если включено и расчеты избегания используют несколько потоков, потоки "
"выполняются с высоким приоритетом."

msgid "If enabled the avoidance calculations use multiple threads."
msgstr "Если включено, расчеты избегания используют несколько потоков."

msgid ""
"If enabled and async navmesh baking uses multiple threads the threads run "
"with high priority."
msgstr ""
"Если включено и асинхронное запекание навигационной сетки использует "
"несколько потоков, потоки выполняются с высоким приоритетом."

msgid "If enabled the async navmesh baking uses multiple threads."
msgstr ""
"Если включено, асинхронное запекание навигационной сетки использует несколько "
"потоков."

msgid ""
"If enabled, and baking would potentially lead to an engine crash, the baking "
"will be interrupted and an error message with explanation will be raised."
msgstr ""
"Если эта функция включена и запекание может привести к сбою двигателя, "
"запекание будет прервано и появится сообщение об ошибке с пояснением."

msgid ""
"Maximum number of threads that can run pathfinding queries simultaneously on "
"the same pathfinding graph, for example the same navigation map. Additional "
"threads increase memory consumption and synchronization time due to the need "
"for extra data copies prepared for each thread. A value of [code]-1[/code] "
"means unlimited and the maximum available OS processor count is used. "
"Defaults to [code]1[/code] when the OS does not support threads."
msgstr ""
"Максимальное количество потоков, которые могут одновременно выполнять запросы "
"поиска пути на одном и том же графе поиска пути, например, на одной и той же "
"навигационной карте. Дополнительные потоки увеличивают потребление памяти и "
"время синхронизации из-за необходимости подготовки дополнительных копий "
"данных для каждого потока. Значение [code]-1[/code] означает "
"неограниченность, и используется максимально доступное количество процессоров "
"ОС. По умолчанию [code]1[/code], когда ОС не поддерживает потоки."

msgid ""
"If enabled, navigation map synchronization uses an async process that runs on "
"a background thread. This avoids stalling the main thread but adds an "
"additional delay to any navigation map change."
msgstr ""
"Если включено, синхронизация навигационной карты использует асинхронный "
"процесс, который выполняется в фоновом потоке. Это позволяет избежать "
"остановки основного потока, но добавляет дополнительную задержку к любому "
"изменению навигационной карты."

msgid ""
"If enabled, navigation region synchronization uses an async process that runs "
"on a background thread. This avoids stalling the main thread but adds an "
"additional delay to any navigation region change."
msgstr ""
"Если эта опция включена, синхронизация областей навигации использует "
"асинхронный процесс, работающий в фоновом потоке. Это позволяет избежать "
"остановки основного потока, но добавляет дополнительную задержку к любым "
"изменениям областей навигации."

msgid ""
"Maximum number of characters allowed to send as output from the debugger. "
"Over this value, content is dropped. This helps not to stall the debugger "
"connection."
msgstr ""
"Максимальное количество символов, разрешенных для отправки в качестве вывода "
"отладчика. При превышении этого значения содержимое отбрасывается. Это "
"помогает не останавливать соединение отладчика."

msgid ""
"Maximum number of errors allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
"Максимальное количество ошибок, которые разрешено отправлять отладчику. При "
"превышении этого значения контент отбрасывается. Это помогает не "
"останавливать соединение отладчика."

msgid ""
"Maximum number of messages in the debugger queue. Over this value, content is "
"dropped. This helps to limit the debugger memory usage."
msgstr ""
"Максимальное количество сообщений в очереди отладчика. При превышении этого "
"значения содержимое отбрасывается. Это помогает ограничить использование "
"памяти отладчика."

msgid ""
"Maximum number of warnings allowed to be sent from the debugger. Over this "
"value, content is dropped. This helps not to stall the debugger connection."
msgstr ""
"Максимальное количество предупреждений, которые разрешено отправлять "
"отладчику. При превышении этого значения контент отбрасывается. Это помогает "
"не останавливать соединение отладчика."

msgid ""
"Default size of packet peer stream for deserializing Godot data (in bytes, "
"specified as a power of two). The default value [code]16[/code] is equal to "
"65,536 bytes. Over this size, data is dropped."
msgstr ""
"Размер пакета peer-потока по умолчанию для десериализации данных Godot (в "
"байтах, указывается как степень двойки). Значение по умолчанию [code]16[/"
"code] равно 65 536 байтам. При превышении этого размера данные отбрасываются."

msgid "Timeout (in seconds) for connection attempts using TCP."
msgstr "Тайм-аут (в секундах) для попыток подключения по протоколу TCP."

msgid "Maximum size (in kiB) for the [WebRTCDataChannel] input buffer."
msgstr "Максимальный размер (в КБ) для входного буфера [WebRTCDataChannel]."

msgid ""
"The CA certificates bundle to use for TLS connections. If this is set to a "
"non-empty value, this will [i]override[/i] Godot's default [url=https://"
"github.com/godotengine/godot/blob/master/thirdparty/certs/ca-"
"certificates.crt]Mozilla certificate bundle[/url]. If left empty, the default "
"certificate bundle will be used.\n"
"If in doubt, leave this setting empty."
msgstr ""
"Пакет сертификатов CA для использования в соединениях TLS. Если задано "
"непустое значение, это [i]переопределит[/i] пакет сертификатов Mozilla по "
"умолчанию Godot [url=https://github.com/godotengine/godot/blob/master/"
"thirdparty/certs/ca-certificates.crt]. Если оставить пустым, будет "
"использоваться пакет сертификатов по умолчанию.\n"
"Если есть сомнения, оставьте этот параметр пустым."

msgid ""
"The default rotational motion damping in 2D. Damping is used to gradually "
"slow down physical objects over time. RigidBodies will fall back to this "
"value when combining their own damping values and no area damping value is "
"present.\n"
"Suggested values are in the range [code]0[/code] to [code]30[/code]. At value "
"[code]0[/code] objects will keep moving with the same velocity. Greater "
"values will stop the object faster. A value equal to or greater than the "
"physics tick rate ([member physics/common/physics_ticks_per_second]) will "
"bring the object to a stop in one iteration.\n"
"[b]Note:[/b] Godot damping calculations are velocity-dependent, meaning "
"bodies moving faster will take a longer time to come to rest. They do not "
"simulate inertia, friction, or air resistance. Therefore heavier or larger "
"bodies will lose speed at the same proportional rate as lighter or smaller "
"bodies.\n"
"During each physics tick, Godot will multiply the linear velocity of "
"RigidBodies by [code]1.0 - combined_damp / physics_ticks_per_second[/code]. "
"By default, bodies combine damp factors: [code]combined_damp[/code] is the "
"sum of the damp value of the body and this value or the area's value the body "
"is in. See [enum RigidBody2D.DampMode].\n"
"[b]Warning:[/b] Godot's damping calculations are simulation tick rate "
"dependent. Changing [member physics/common/physics_ticks_per_second] may "
"significantly change the outcomes and feel of your simulation. This is true "
"for the entire range of damping values greater than 0. To get back to a "
"similar feel, you also need to change your damp values. This needed change is "
"not proportional and differs from case to case."
msgstr ""
"Амортизация вращательного движения по умолчанию в 2D. Амортизация "
"используется для постепенного замедления физических объектов с течением "
"времени. RigidBodie-ы вернутся к этому значению при сочетании своих "
"собственных значений амортизации и никакого значения амортизации области.\n"
"Предлагаемые значения находятся в диапазоне [code] 0 [/code] до [code] 30 [/"
"code]. В значении [code] 0 [/code] объекты будут продолжать перемещаться с "
"той же скоростью. Большие значения остановят объект быстрее. Значение, равное "
"или превышающему скорость тика физики ([member physics/common/"
"physics_ticks_per_second]) доведет объект в одну итерацию.\n"
"[b] Примечание: [/b] Расчеты амортизации Godot являются зависимыми от "
"скорости, это означает, что если тела движутся быстрее, потребуется больше "
"времени, чтобы остановиться. Они не имитируют инерцию, трение или "
"сопротивление воздуха. Поэтому более тяжелые или более крупные тела будут "
"терять скорость с той же пропорциональной скоростью, что и более легкие или "
"меньшие тела.\n"
"Во время каждого тика физики Godot умножат линейную скорость RigidBodies на "
"[code]1.0 - combined_damp / physics_ticks_per_second[/code]. По умолчанию "
"тела объединяют сырые коэффициенты: [code]combined_damp[/code] - это сумма "
"сырого значения тела, и это значение или значение площади, в котором "
"находится тело. См. [enum RigidBody2D.DampMode].\n"
"[b]Предупреждение:[/b] Расчеты затухания Godot зависят от частоты тиков "
"симуляции. Изменение [member physics/common/physics_ticks_per_second] может "
"существенно изменить результаты и ощущения от вашей симуляции. Это "
"справедливо для всего диапазона значений амортизации больше 0. Чтобы "
"вернуться к похожим ощущениям, вам также нужно изменить значения амортизации. "
"Это необходимое изменение не пропорционально и отличается от случая к случаю."

msgid ""
"The default gravity strength in 2D (in pixels per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the default gravity at runtime, use the following code sample:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set the default gravity strength to 980.\n"
"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().space, "
"PhysicsServer2D.AREA_PARAM_GRAVITY, 980)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set the default gravity strength to 980.\n"
"PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2D().Space, "
"PhysicsServer2D.AreaParameter.Gravity, 980);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Сила гравитации по умолчанию в 2D (в пикселях в секунду в квадрате).\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить силу гравитации по умолчанию во время выполнения, используйте "
"следующий пример кода:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Установить силу гравитации по умолчанию на 980.\n"
"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().space, "
"PhysicsServer2D.AREA_PARAM_GRAVITY, 980)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Установить силу гравитации по умолчанию на 980.\n"
"PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2D().Space, "
"PhysicsServer2D.AreaParameter.Gravity, 980);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The default gravity direction in 2D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the default gravity vector at runtime, use the following code sample:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set the default gravity direction to `Vector2(0, 1)`.\n"
"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().space, "
"PhysicsServer2D.AREA_PARAM_GRAVITY_VECTOR, Vector2.DOWN)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set the default gravity direction to `Vector2(0, 1)`.\n"
"PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2D().Space, "
"PhysicsServer2D.AreaParameter.GravityVector, Vector2.Down)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Направление гравитации по умолчанию в 2D.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить вектор гравитации по умолчанию во время выполнения, используйте "
"следующий пример кода:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Установить направление гравитации по умолчанию на `Vector2(0, 1)`.\n"
"PhysicsServer2D.area_set_param(get_viewport().find_world_2d().space, "
"PhysicsServer2D.AREA_PARAM_GRAVITY_VECTOR, Vector2.DOWN)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Установить направление гравитации по умолчанию на `Vector2(0, 1)`.\n"
"PhysicsServer2D.AreaSetParam(GetViewport().FindWorld2D().Space, "
"PhysicsServer2D.AreaParameter.GravityVector, Vector2.Down)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The default linear motion damping in 2D. Damping is used to gradually slow "
"down physical objects over time. RigidBodies will fall back to this value "
"when combining their own damping values and no area damping value is "
"present.\n"
"Suggested values are in the range [code]0[/code] to [code]30[/code]. At value "
"[code]0[/code] objects will keep moving with the same velocity. Greater "
"values will stop the object faster. A value equal to or greater than the "
"physics tick rate ([member physics/common/physics_ticks_per_second]) will "
"bring the object to a stop in one iteration.\n"
"[b]Note:[/b] Godot damping calculations are velocity-dependent, meaning "
"bodies moving faster will take a longer time to come to rest. They do not "
"simulate inertia, friction, or air resistance. Therefore heavier or larger "
"bodies will lose speed at the same proportional rate as lighter or smaller "
"bodies.\n"
"During each physics tick, Godot will multiply the linear velocity of "
"RigidBodies by [code]1.0 - combined_damp / physics_ticks_per_second[/code], "
"where [code]combined_damp[/code] is the sum of the linear damp of the body "
"and this value, or the area's value the body is in, assuming the body "
"defaults to combine damp values. See [enum RigidBody2D.DampMode].\n"
"[b]Warning:[/b] Godot's damping calculations are simulation tick rate "
"dependent. Changing [member physics/common/physics_ticks_per_second] may "
"significantly change the outcomes and feel of your simulation. This is true "
"for the entire range of damping values greater than 0. To get back to a "
"similar feel, you also need to change your damp values. This needed change is "
"not proportional and differs from case to case."
msgstr ""
"Амортизация (damping) линейного движения по умолчанию в 2D. Амортизация "
"используется для постепенного замедления физических объектов с течением "
"времени. RigidBodies вернется к этому значению при объединении собственных "
"значений амортизации, а значение амортизации области отсутствует.\n"
"Предлагаемые значения находятся в диапазоне от [code]0[/code] до [code]30[/"
"code]. При значении [code]0[/code] объекты будут продолжать двигаться с той "
"же скоростью. Большие значения остановят объект быстрее. Значение, равное или "
"большее скорости физических тиков ([member physics/common/"
"physics_ticks_per_second]), остановит объект за одну итерацию.\n"
"[b]Примечание:[/b] Расчеты амортизации Godot зависят от скорости, то есть "
"телам, движущимся быстрее, потребуется больше времени, чтобы прийти в "
"состояние покоя. Они не моделируют инерцию, трение или сопротивление воздуха. "
"Поэтому более тяжелые или большие тела будут терять скорость с той же "
"пропорциональной скоростью, что и более легкие или меньшие тела.\n"
"Во время каждого физического тика Godot умножает линейную скорость "
"RigidBodies на [code]1.0 - combined_damp / physics_ticks_per_second[/code], "
"где [code]combined_damp[/code] - это сумма линейной амортизации тела и этого "
"значения или значения области, в которой находится тело, предполагая, что "
"тело по умолчанию объединяет значения амортизации. См. [enum "
"RigidBody2D.DampMode].\n"
"[b]Предупреждение:[/b] Расчеты затухания Godot зависят от частоты тиков "
"симуляции. Изменение [member physics/common/physics_ticks_per_second] может "
"существенно изменить результаты и ощущения от вашей симуляции. Это "
"справедливо для всего диапазона значений амортизации больше 0. Чтобы "
"вернуться к похожим ощущениям, вам также нужно изменить значения амортизации. "
"Это необходимое изменение не пропорционально и отличается от случая к случаю."

msgid ""
"Sets which physics engine to use for 2D physics.\n"
"[b]DEFAULT[/b] is currently equivalent to [b]GodotPhysics2D[/b], but may "
"change in future releases. Select an explicit implementation if you want to "
"ensure that your project stays on the same engine.\n"
"[b]GodotPhysics2D[/b] is Godot's internal 2D physics engine.\n"
"[b]Dummy[/b] is a 2D physics server that does nothing and returns only dummy "
"values, effectively disabling all 2D physics functionality.\n"
"Third-party extensions and modules can add other physics engines to select "
"with this setting."
msgstr ""
"Устанавливает, какой физический движок использовать для 2D-физики.\n"
"[b]DEFAULT[/b] в настоящее время эквивалентно [b]GodotPhysics2D[/b], но может "
"измениться в будущих выпусках. Выберите явную реализацию, если хотите, чтобы "
"ваш проект оставался на том же движке.\n"
"[b]GodotPhysics2D[/b] — это внутренний 2D-физический движок Godot.\n"
"[b]Dummy[/b] — это 2D-физический сервер, который ничего не делает и "
"возвращает только фиктивные значения, фактически отключая все функции 2D-"
"физики.\n"
"Сторонние расширения и модули могут добавлять другие физические движки для "
"выбора с помощью этой настройки."

msgid ""
"If [code]true[/code], the 2D physics server runs on a separate thread, making "
"better use of multi-core CPUs. If [code]false[/code], the 2D physics server "
"runs on the main thread. Running the physics server on a separate thread can "
"increase performance, but restricts API access to only physics process."
msgstr ""
"Если [code]true[/code], сервер 2D-физики работает в отдельном потоке, что "
"позволяет эффективнее использовать многоядерные процессоры. Если [code]false[/"
"code], сервер 2D-физики работает в основном потоке. Запуск сервера физики в "
"отдельном потоке может повысить производительность, но ограничивает доступ к "
"API только физическим процессом."

msgid ""
"Threshold angular velocity under which a 2D physics body will be considered "
"inactive. See [constant "
"PhysicsServer2D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
"Пороговая угловая скорость, ниже которой физическое тело 2D будет считаться "
"неактивным. См. [constant "
"PhysicsServer2D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."

msgid ""
"Threshold linear velocity under which a 2D physics body will be considered "
"inactive. See [constant "
"PhysicsServer2D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
"Пороговая линейная скорость, ниже которой физическое тело 2D будет считаться "
"неактивным. Смотреть [constant "
"PhysicsServer2D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."

msgid ""
"Maximum distance a shape can penetrate another shape before it is considered "
"a collision. See [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_MAX_ALLOWED_PENETRATION]."
msgstr ""
"Максимальное расстояние, на которое может проникнуть одна фигура в другую, "
"прежде чем это будет считаться столкновением. Смотреть [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_MAX_ALLOWED_PENETRATION]."

msgid ""
"Maximum distance a shape can be from another before they are considered "
"separated and the contact is discarded. See [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_MAX_SEPARATION]."
msgstr ""
"Максимальное расстояние, на которое может быть разделена одна фигура от "
"другой, прежде чем они будут считаться разделенными, а контакт будет "
"отброшен. См. [constant PhysicsServer2D.SPACE_PARAM_CONTACT_MAX_SEPARATION]."

msgid ""
"Maximum distance a pair of bodies has to move before their collision status "
"has to be recalculated. See [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_RECYCLE_RADIUS]."
msgstr ""
"Максимальное расстояние, которое должна пройти пара тел, прежде чем их статус "
"столкновения придется пересчитывать. См. [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_RECYCLE_RADIUS]."

msgid ""
"Default solver bias for all physics constraints. Defines how much bodies "
"react to enforce constraints. See [constant "
"PhysicsServer2D.SPACE_PARAM_CONSTRAINT_DEFAULT_BIAS].\n"
"Individual constraints can have a specific bias value (see [member "
"Joint2D.bias])."
msgstr ""
"Смещение решателя по умолчанию для всех физических ограничений. Определяет, "
"насколько тела реагируют на соблюдение ограничений. См.[constant "
"PhysicsServer2D.SPACE_PARAM_CONSTRAINT_DEFAULT_BIAS].\n"
"Отдельные ограничения могут иметь определенное значение смещения (См. [member "
"Joint2D.bias])."

msgid ""
"Default solver bias for all physics contacts. Defines how much bodies react "
"to enforce contact separation. See [constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_DEFAULT_BIAS].\n"
"Individual shapes can have a specific bias value (see [member "
"Shape2D.custom_solver_bias])."
msgstr ""
"Смещение решателя по умолчанию для всех физических контактов. Определяет, "
"насколько тела реагируют, чтобы обеспечить разделение контактов. См.[constant "
"PhysicsServer2D.SPACE_PARAM_CONTACT_DEFAULT_BIAS].\n"
"Отдельные фигуры могут иметь определенное значение смещения (см. [member "
"Shape2D.custom_solver_bias])."

msgid ""
"Number of solver iterations for all contacts and constraints. The greater the "
"number of iterations, the more accurate the collisions will be. However, a "
"greater number of iterations requires more CPU power, which can decrease "
"performance. See [constant PhysicsServer2D.SPACE_PARAM_SOLVER_ITERATIONS]."
msgstr ""
"Количество итераций решателя для всех контактов и ограничений. Чем больше "
"количество итераций, тем точнее будут столкновения. Однако большее количество "
"итераций требует больше мощности ЦП, что может снизить производительность. См."
"[constant PhysicsServer2D.SPACE_PARAM_SOLVER_ITERATIONS]."

msgid ""
"Time (in seconds) of inactivity before which a 2D physics body will put to "
"sleep. See [constant PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
"Время (в секундах) бездействия, по истечении которого физическое тело 2D "
"перейдет в спящий режим. См.[constant "
"PhysicsServer2D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."

msgid ""
"The default rotational motion damping in 3D. Damping is used to gradually "
"slow down physical objects over time. RigidBodies will fall back to this "
"value when combining their own damping values and no area damping value is "
"present.\n"
"Suggested values are in the range [code]0[/code] to [code]30[/code]. At value "
"[code]0[/code] objects will keep moving with the same velocity. Greater "
"values will stop the object faster. A value equal to or greater than the "
"physics tick rate ([member physics/common/physics_ticks_per_second]) will "
"bring the object to a stop in one iteration.\n"
"[b]Note:[/b] Godot damping calculations are velocity-dependent, meaning "
"bodies moving faster will take a longer time to come to rest. They do not "
"simulate inertia, friction, or air resistance. Therefore heavier or larger "
"bodies will lose speed at the same proportional rate as lighter or smaller "
"bodies.\n"
"During each physics tick, Godot will multiply the angular velocity of "
"RigidBodies by [code]1.0 - combined_damp / physics_ticks_per_second[/code]. "
"By default, bodies combine damp factors: [code]combined_damp[/code] is the "
"sum of the damp value of the body and this value or the area's value the body "
"is in. See [enum RigidBody3D.DampMode].\n"
"[b]Warning:[/b] Godot's damping calculations are simulation tick rate "
"dependent. Changing [member physics/common/physics_ticks_per_second] may "
"significantly change the outcomes and feel of your simulation. This is true "
"for the entire range of damping values greater than 0. To get back to a "
"similar feel, you also need to change your damp values. This needed change is "
"not proportional and differs from case to case."
msgstr ""
"Амортизация вращательного движения по умолчанию в 3D. Амортизация "
"используется для постепенного замедления физических объектов с течением "
"времени. RigidBodies вернется к этому значению при объединении собственных "
"значений демпфирования, а значение амортизации области отсутствует.\n"
"Предлагаемые значения находятся в диапазоне от [code]0[/code] до [code]30[/"
"code]. При значении [code]0[/code] объекты будут продолжать двигаться с той "
"же скоростью. Большие значения остановят объект быстрее. Значение, равное или "
"большее скорости физических тиков ([member physics/common/"
"physics_ticks_per_second]), остановит объект за одну итерацию (повторение).\n"
"[b]Примечание:[/b] Расчеты амортизации Godot зависят от скорости, то есть "
"телам, движущимся быстрее, потребуется больше времени, чтобы прийти в "
"состояние покоя. Они не моделируют инерцию, трение или сопротивление воздуха. "
"Поэтому более тяжелые или большие тела будут терять скорость с той же "
"пропорциональной скоростью, что и более легкие или меньшие тела.\n"
"Во время каждого физического тика Godot умножает угловую скорость RigidBodies "
"на [code]1.0 - combined_damp / physics_ticks_per_second[/code]. По умолчанию "
"тела объединяют коэффициенты демпфирования: [code]combined_damp[/code] - это "
"сумма значения демпфирования тела и этого значения или значения области, в "
"которой находится тело. См. [enum RigidBody3D.DampMode].\n"
"[b]Предупреждение:[/b] Расчеты амортизации Godot зависят от частоты тиков "
"симуляции. Изменение [member physics/common/physics_ticks_per_second] может "
"существенно изменить результаты и ощущения от вашей симуляции. Это "
"справедливо для всего диапазона значений затухания больше 0. Чтобы вернуться "
"к похожим ощущениям, вам также нужно изменить значения затухания. Это "
"необходимое изменение не пропорционально и отличается от случая к случаю."

msgid ""
"The default gravity strength in 3D (in meters per second squared).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the default gravity at runtime, use the following code sample:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set the default gravity strength to 9.8.\n"
"PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, "
"PhysicsServer3D.AREA_PARAM_GRAVITY, 9.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set the default gravity strength to 9.8.\n"
"PhysicsServer3D.AreaSetParam(GetViewport().FindWorld3D().Space, "
"PhysicsServer3D.AreaParameter.Gravity, 9.8);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Сила гравитации по умолчанию в 3D (в метрах в секунду в квадрате).\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить силу гравитации по умолчанию во время выполнения, используйте "
"следующий пример кода:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Установить силу гравитации по умолчанию на 9.8.\n"
"PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, "
"PhysicsServer3D.AREA_PARAM_GRAVITY, 9.8)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Установить силу гравитации по умолчанию на 9.8.\n"
"PhysicsServer3D.AreaSetParam(GetViewport().FindWorld3D().Space, "
"PhysicsServer3D.AreaParameter.Gravity, 9.8);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The default gravity direction in 3D.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the default gravity vector at runtime, use the following code sample:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set the default gravity direction to `Vector3(0, -1, 0)`.\n"
"PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, "
"PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, Vector3.DOWN)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set the default gravity direction to `Vector3(0, -1, 0)`.\n"
"PhysicsServer3D.AreaSetParam(GetViewport().FindWorld3D().Space, "
"PhysicsServer3D.AreaParameter.GravityVector, Vector3.Down)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Направление гравитации по умолчанию в 3D.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить вектор гравитации по умолчанию во время выполнения, используйте "
"следующий пример кода:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Установить направление гравитации по умолчанию на `Vector3(0, -1, 0)`.\n"
"PhysicsServer3D.area_set_param(get_viewport().find_world_3d().space, "
"PhysicsServer3D.AREA_PARAM_GRAVITY_VECTOR, Vector3.DOWN)\n"
"[/gdscript]\n"
"[csharp]\n"
"// Установить направление гравитации по умолчанию на `Vector3(0, -1, 0)`.\n"
"PhysicsServer3D.AreaSetParam(GetViewport().FindWorld3D().Space, "
"PhysicsServer3D.AreaParameter.GravityVector, Vector3.Down)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"The default linear motion damping in 3D. Damping is used to gradually slow "
"down physical objects over time. RigidBodies will fall back to this value "
"when combining their own damping values and no area damping value is "
"present.\n"
"Suggested values are in the range [code]0[/code] to [code]30[/code]. At value "
"[code]0[/code] objects will keep moving with the same velocity. Greater "
"values will stop the object faster. A value equal to or greater than the "
"physics tick rate ([member physics/common/physics_ticks_per_second]) will "
"bring the object to a stop in one iteration.\n"
"[b]Note:[/b] Godot damping calculations are velocity-dependent, meaning "
"bodies moving faster will take a longer time to come to rest. They do not "
"simulate inertia, friction, or air resistance. Therefore heavier or larger "
"bodies will lose speed at the same proportional rate as lighter or smaller "
"bodies.\n"
"During each physics tick, Godot will multiply the linear velocity of "
"RigidBodies by [code]1.0 - combined_damp / physics_ticks_per_second[/code]. "
"By default, bodies combine damp factors: [code]combined_damp[/code] is the "
"sum of the damp value of the body and this value or the area's value the body "
"is in. See [enum RigidBody3D.DampMode].\n"
"[b]Warning:[/b] Godot's damping calculations are simulation tick rate "
"dependent. Changing [member physics/common/physics_ticks_per_second] may "
"significantly change the outcomes and feel of your simulation. This is true "
"for the entire range of damping values greater than 0. To get back to a "
"similar feel, you also need to change your damp values. This needed change is "
"not proportional and differs from case to case."
msgstr ""
"Амортизация линейного движения по умолчанию в 3D. Амортизация используется "
"для постепенного замедления физических объектов с течением времени. "
"RigidBodies вернется к этому значению при объединении собственных "
"амортизаций, а значение амортизации области отсутствует.\n"
"Предлагаемые значения находятся в диапазоне от [code]0[/code] до [code]30[/"
"code]. При значении [code]0[/code] объекты будут продолжать двигаться с той "
"же скоростью. Большие значения остановят объект быстрее. Значение, равное или "
"большее скорости физических тиков ([member physics/common/"
"physics_ticks_per_second]), остановит объект за одну итерацию.\n"
"[b]Примечание:[/b] Расчеты амортизации Godot зависят от скорости, то есть "
"телам, движущимся быстрее, потребуется больше времени, чтобы прийти в "
"состояние покоя. Они не моделируют инерцию, трение или сопротивление воздуха. "
"Поэтому более тяжелые или большие тела будут терять скорость с той же "
"пропорциональной скоростью, что и более легкие или меньшие тела.\n"
"Во время каждого физического тика Godot умножает линейную скорость "
"RigidBodies на [code]1.0 - combined_damp / physics_ticks_per_second[/code]. "
"По умолчанию тела объединяют коэффициенты амортизации: [code]combined_damp[/"
"code] - это сумма значения амортизации тела и этого значения или значения "
"области, в которой находится тело. См. [enum RigidBody3D.DampMode].\n"
"[b]Предупреждение:[/b] Расчеты амортизации Godot зависят от частоты тиков "
"симуляции. Изменение [member physics/common/physics_ticks_per_second] может "
"существенно изменить результаты и ощущения от вашей симуляции. Это "
"справедливо для всего диапазона значений затухания больше 0. Чтобы вернуться "
"к похожим ощущениям, вам также нужно изменить значения амортизации. Это "
"необходимое изменение не пропорционально и отличается от случая к случаю."

msgid ""
"Sets which physics engine to use for 3D physics.\n"
"[b]DEFAULT[/b] is currently equivalent to [b]GodotPhysics3D[/b], but may "
"change in future releases. Select an explicit implementation if you want to "
"ensure that your project stays on the same engine.\n"
"[b]GodotPhysics3D[/b] is Godot's internal 3D physics engine.\n"
"[b]Jolt Physics[/b] is an alternative physics engine that is generally faster "
"and more reliable than [b]GodotPhysics3D[/b]. As it was recently implemented, "
"it is currently considered experimental and its behavior may change in future "
"releases.\n"
"[b]Dummy[/b] is a 3D physics server that does nothing and returns only dummy "
"values, effectively disabling all 3D physics functionality.\n"
"Third-party extensions and modules can add other physics engines to select "
"with this setting."
msgstr ""
"Устанавливает, какой физический движок использовать для трехмерной физики.\n"
"[b]DEFAULT[/b] в настоящее время эквивалентен [b]GodotPhysics3D[/b], но может "
"измениться в будущих выпусках. Выберите явную реализацию, если вы хотите "
"гарантировать, что ваш проект останется на том же движке.\n"
"[b]GodotPhysics3D[/b] — это внутренний 3D-физический движок Godot.\n"
"[b]Jolt Physics[/b] — это альтернативный физический движок, который в целом "
"быстрее и надежнее, чем [b]GodotPhysics3D[/b]. Поскольку он был недавно "
"реализован, в настоящее время он считается экспериментальным, и его поведение "
"может измениться в будущих выпусках.\n"
"[b]Dummy[/b] — это 3D-физический сервер, который ничего не делает и "
"возвращает только фиктивные значения, фактически отключая все функции 3D-"
"физики.\n"
"Сторонние расширения и модули могут добавлять другие физические движки для "
"выбора с помощью этой настройки."

msgid ""
"The approach used for 3D scene traversal when physics interpolation is "
"enabled.\n"
"- [code]DEFAULT[/code]: The default optimized method.\n"
"- [code]Legacy[/code]: The previous reference method used for scene tree "
"traversal, which is slower.\n"
"- [code]Debug[/code]: Swaps between [code]DEFAULT[/code] and [code]Legacy[/"
"code] methods on alternating frames, and provides logging information (which "
"in turn makes it slower). Intended for debugging only; you should use the "
"[code]DEFAULT[/code] method in most cases."
msgstr ""
"Подход, используемый для обхода 3D-сцены при включенной интерполяции физики.\n"
"- [code]DEFAULT[/code]: Оптимизированный метод по умолчанию.\n"
"- [code]Legacy[/code]: Предыдущий справочный метод, используемый для обхода "
"дерева сцены, который медленнее.\n"
"- [code]Debug[/code]: Переключает между методами [code]DEFAULT[/code] и "
"[code]Legacy[/code] в чередующихся кадрах и предоставляет информацию о "
"журнале (что, в свою очередь, делает его медленнее). Предназначен только для "
"отладки; в большинстве случаев следует использовать метод [code]DEFAULT[/"
"code]."

msgid ""
"If [code]true[/code], the 3D physics server runs on a separate thread, making "
"better use of multi-core CPUs. If [code]false[/code], the 3D physics server "
"runs on the main thread. Running the physics server on a separate thread can "
"increase performance, but restricts API access to only physics process.\n"
"[b]Note:[/b] When [member physics/3d/physics_engine] is set to [code]Jolt "
"Physics[/code], enabling this setting will prevent the 3D physics server from "
"being able to provide any context when reporting errors and warnings, and "
"will instead always refer to nodes as [code]<unknown>[/code]."
msgstr ""
"Если [code]true[/code], сервер 3D-физики работает в отдельном потоке, что "
"позволяет эффективнее использовать многоядерные процессоры. Если [code]false[/"
"code], сервер 3D-физики работает в основном потоке. Запуск сервера физики в "
"отдельном потоке может повысить производительность, но ограничивает доступ "
"API только физическим процессом.\n"
"[b]Примечание:[/b] Когда [member physics/3d/physics_engine] установлен на "
"[code]Jolt Physics[/code], включение этого параметра не позволит серверу 3D-"
"физики предоставлять какой-либо контекст при сообщении об ошибках и "
"предупреждениях, и вместо этого всегда будет ссылаться на узлы как "
"[code]<unknown>[/code]."

msgid ""
"Threshold angular velocity under which a 3D physics body will be considered "
"inactive. See [constant "
"PhysicsServer3D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
"Пороговая угловая скорость, ниже которой физическое тело 3D будет считаться "
"неактивным. См. [constant "
"PhysicsServer3D.SPACE_PARAM_BODY_ANGULAR_VELOCITY_SLEEP_THRESHOLD]."

msgid ""
"Threshold linear velocity under which a 3D physics body will be considered "
"inactive. See [constant "
"PhysicsServer3D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."
msgstr ""
"Пороговая линейная скорость, ниже которой физическое тело 3D будет считаться "
"неактивным. См. [constant "
"PhysicsServer3D.SPACE_PARAM_BODY_LINEAR_VELOCITY_SLEEP_THRESHOLD]."

msgid ""
"Maximum distance a shape can penetrate another shape before it is considered "
"a collision. See [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_MAX_ALLOWED_PENETRATION]."
msgstr ""
"Максимальное расстояние, на которое форма может проникнуть в другую форму, "
"прежде чем это будет считаться столкновением. См. [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_MAX_ALLOWED_PENETRATION]."

msgid ""
"Maximum distance a shape can be from another before they are considered "
"separated and the contact is discarded. See [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_MAX_SEPARATION]."
msgstr ""
"Максимальное расстояние между фигурами, на котором они могут находиться, "
"прежде чем они будут считаться разделенными, а контакт будет отброшен. См. "
"[constant PhysicsServer3D.SPACE_PARAM_CONTACT_MAX_SEPARATION]."

msgid ""
"Maximum distance a pair of bodies has to move before their collision status "
"has to be recalculated. See [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_RECYCLE_RADIUS]."
msgstr ""
"Максимальное расстояние, которое должна пройти пара тел, прежде чем их статус "
"столкновения придется пересчитывать. См. [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_RECYCLE_RADIUS]."

msgid ""
"Default solver bias for all physics contacts. Defines how much bodies react "
"to enforce contact separation. See [constant "
"PhysicsServer3D.SPACE_PARAM_CONTACT_DEFAULT_BIAS].\n"
"Individual shapes can have a specific bias value (see [member "
"Shape3D.custom_solver_bias])."
msgstr ""
"Смещение решателя по умолчанию для всех физических контактов. Определяет, "
"насколько тела реагируют, чтобы обеспечить разделение контактов. См. "
"[constant PhysicsServer3D.SPACE_PARAM_CONTACT_DEFAULT_BIAS].\n"
"Отдельные формы могут иметь определенное значение смещения (см. [member "
"Shape3D.custom_solver_bias])."

msgid ""
"Number of solver iterations for all contacts and constraints. The greater the "
"number of iterations, the more accurate the collisions will be. However, a "
"greater number of iterations requires more CPU power, which can decrease "
"performance. See [constant PhysicsServer3D.SPACE_PARAM_SOLVER_ITERATIONS]."
msgstr ""
"Количество итераций решателя для всех контактов и ограничений. Чем больше "
"количество итераций, тем точнее будут столкновения. Однако большее количество "
"итераций требует больше мощности ЦП, что может снизить производительность. "
"См. [constant PhysicsServer3D.SPACE_PARAM_SOLVER_ITERATIONS]."

msgid ""
"Time (in seconds) of inactivity before which a 3D physics body will put to "
"sleep. See [constant PhysicsServer3D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."
msgstr ""
"Время (в секундах) бездействия, до которого 3D физическое тело перейдет в "
"спящий режим. См. [constant PhysicsServer3D.SPACE_PARAM_BODY_TIME_TO_SLEEP]."

msgid "Enables [member Viewport.physics_object_picking] on the root viewport."
msgstr ""
"Включает [member Viewport.physics_object_picking] в корневом окне просмотра."

msgid ""
"Controls the maximum number of physics steps that can be simulated each "
"rendered frame. The default value is tuned to avoid situations where the "
"framerate suddenly drops to a very low value beyond a certain amount of "
"physics simulation. This occurs because the physics engine can't keep up with "
"the expected simulation rate. In this case, the framerate will start "
"dropping, but the engine is only allowed to simulate a certain number of "
"physics steps per rendered frame. This snowballs into a situation where "
"framerate keeps dropping until it reaches a very low framerate (typically 1-2 "
"FPS) and is called the [i]physics spiral of death[/i].\n"
"However, the game will appear to slow down if the rendering FPS is less than "
"[code]1 / max_physics_steps_per_frame[/code] of [member physics/common/"
"physics_ticks_per_second]. This occurs even if [code]delta[/code] is "
"consistently used in physics calculations. To avoid this, increase [member "
"physics/common/max_physics_steps_per_frame] if you have increased [member "
"physics/common/physics_ticks_per_second] significantly above its default "
"value.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the maximum number of simulated physics steps per frame at runtime, set "
"[member Engine.max_physics_steps_per_frame] instead."
msgstr ""
"Управляет максимальным количеством шагов физики, которые можно моделировать в "
"каждом визуализированном кадре. Значение по умолчанию настроено таким "
"образом, чтобы избежать ситуаций, когда частота кадров внезапно падает до "
"очень низкого значения за пределами определенного объема моделирования "
"физики. Это происходит из-за того, что физический движок не справляется с "
"ожидаемой скоростью моделирования. В этом случае частота кадров начнет "
"падать, но движку разрешено моделировать только определенное количество шагов "
"физики на каждый отрисованный кадр. Это приводит к ситуации, когда частота "
"кадров продолжает падать, пока не достигнет очень низкого значения (обычно "
"1-2 FPS), что называется [i]физической спиралью смерти[/i].\n"
"Однако игра будет тормозить, если FPS рендеринга меньше [code]1 / "
"max_physics_steps_per_frame[/code] от [member physics/common/"
"physics_ticks_per_second]. Это происходит, даже если [code]delta[/code] "
"постоянно используется в физических расчетах. Чтобы избежать этого, увеличьте "
"[member physics/common/max_physics_steps_per_frame], если вы увеличили "
"[member physics/common/physics_ticks_per_second] значительно выше его "
"значения по умолчанию.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить максимальное количество шагов моделирования физики на кадр во время "
"выполнения, задайте [member Engine.max_physics_steps_per_frame]."

msgid ""
"If [code]true[/code], the renderer will interpolate the transforms of objects "
"(both physics and non-physics) between the last two transforms, so that "
"smooth motion is seen even when physics ticks do not coincide with rendered "
"frames. See also [method Node.reset_physics_interpolation].\n"
"[b]Note:[/b] Although this is a global setting, finer control of individual "
"branches of the [SceneTree] is possible using [member "
"Node.physics_interpolation_mode].\n"
"[b]Note:[/b] This property is only read when the project starts. To toggle "
"physics interpolation at runtime, set [member "
"SceneTree.physics_interpolation] instead.\n"
"[b]Note:[/b] Property [member physics/common/physics_jitter_fix] is "
"automatically disabled if [member physics/common/physics_interpolation] is "
"set to [code]true[/code], as the two methods are incompatible."
msgstr ""
"Если [code]true[/code], рендерер будет интерполировать преобразования "
"объектов (как физических, так и нефизических) между двумя последними "
"преобразованиями, так что плавное движение будет видно даже тогда, когда "
"физические тики не совпадают с отрисованными кадрами. См. также [method "
"Node.reset_physics_interpolation].\n"
"[b]Примечание:[/b] Хотя это глобальная настройка, более тонкий контроль "
"отдельных ветвей [SceneTree] возможен с помощью [member "
"Node.physics_interpolation_mode].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"переключить интерполяцию физики во время выполнения, вместо этого установите "
"[member SceneTree.physics_interpolation].\n"
"[b]Примечание:[/b] Свойство [member physics/common/physics_jitter_fix] "
"автоматически отключается, если [member physics/common/physics_interpolation] "
"имеет значение [code]true[/code], поскольку эти два метода несовместимы."

msgid ""
"Controls how much physics ticks are synchronized with real time. For 0 or "
"less, the ticks are synchronized. Such values are recommended for network "
"games, where clock synchronization matters. Higher values cause higher "
"deviation of in-game clock and real clock, but allows smoothing out framerate "
"jitters. The default value of 0.5 should be good enough for most; values "
"above 2 could cause the game to react to dropped frames with a noticeable "
"delay and are not recommended.\n"
"[b]Note:[/b] Jitter fix is automatically disabled at runtime when [member "
"physics/common/physics_interpolation] is enabled.\n"
"[b]Note:[/b] When using a custom physics interpolation solution, the physics "
"jitter fix should be disabled by setting [member physics/common/"
"physics_jitter_fix] to [code]0.0[/code].\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the physics jitter fix at runtime, set [member Engine.physics_jitter_fix] "
"instead."
msgstr ""
"Управляет тем, насколько тики физики синхронизированы с реальным временем. "
"При значении 0 или меньше тики синхронизируются. Такие значения рекомендуются "
"для сетевых игр, где важна синхронизация часов. Более высокие значения "
"вызывают большее отклонение внутриигровых часов от реальных часов, но "
"позволяют сглаживать колебания частоты кадров. Значение по умолчанию 0,5 "
"должно быть достаточно для большинства; значения выше 2 могут привести к "
"тому, что игра будет реагировать на пропущенные кадры с заметной задержкой и "
"не рекомендуются.\n"
"[b]Примечание:[/b] Исправление дрожания автоматически отключается во время "
"выполнения, когда включен [member physics/common/physics_interpolation].\n"
"[b]Примечание:[/b] При использовании пользовательского решения интерполяции "
"физики исправление дрожания физики следует отключить, установив [member "
"physics/common/physics_jitter_fix] на [code]0.0[/code].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить исправление дрожания физики во время выполнения, вместо этого "
"установите [member Engine.physics_jitter_fix]."

msgid ""
"The number of fixed iterations per second. This controls how often physics "
"simulation and [method Node._physics_process] methods are run. See also "
"[member application/run/max_fps].\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the physics FPS at runtime, set [member Engine.physics_ticks_per_second] "
"instead.\n"
"[b]Note:[/b] Only [member physics/common/max_physics_steps_per_frame] physics "
"ticks may be simulated per rendered frame at most. If more physics ticks have "
"to be simulated per rendered frame to keep up with rendering, the project "
"will appear to slow down (even if [code]delta[/code] is used consistently in "
"physics calculations). Therefore, it is recommended to also increase [member "
"physics/common/max_physics_steps_per_frame] if increasing [member physics/"
"common/physics_ticks_per_second] significantly above its default value."
msgstr ""
"Число фиксированных итераций в секунду. Это контролирует, как часто "
"запускаются методы моделирования физики и [method Node._physics_process]. См. "
"также [member application/run/max_fps].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить FPS физики во время выполнения, вместо этого установите [member "
"Engine.physics_ticks_per_second].\n"
"[b]Примечание:[/b] Только [member physics/common/max_physics_steps_per_frame] "
"тактов физики могут моделироваться максимум на один отрендеренный кадр. Если "
"для отрендеринга требуется моделировать больше тактов физики, проект будет "
"замедляться (даже если [code]delta[/code] используется последовательно в "
"физических расчетах). Поэтому рекомендуется также увеличить [member physics/"
"common/max_physics_steps_per_frame], если увеличение [member physics/common/"
"physics_ticks_per_second] значительно превышает его значение по умолчанию."

msgid ""
"The maximum angle, in radians, between two adjacent triangles in a "
"[ConcavePolygonShape3D] or [HeightMapShape3D] for which the edge between "
"those triangles is considered inactive.\n"
"Collisions against an inactive edge will have its normal overridden to "
"instead be the surface normal of the triangle. This can help alleviate ghost "
"collisions.\n"
"[b]Note:[/b] Setting this too high can result in objects not depenetrating "
"properly.\n"
"[b]Note:[/b] This applies to all shape queries, as well as physics bodies "
"within the simulation.\n"
"[b]Note:[/b] This does not apply when enabling Jolt's enhanced internal edge "
"removal, which supersedes this."
msgstr ""
"Максимальный угол в радианах между двумя соседними треугольниками в "
"[ConcavePolygonShape3D] или [HeightMapShape3D], для которого ребро между "
"этими треугольниками считается неактивным.\n"
"Столкновения с неактивным ребром будут иметь его нормаль, переопределенную на "
"нормаль поверхности треугольника. Это может помочь смягчить призрачные "
"столкновения.\n"
"[b]Примечание:[/b] Установка слишком большого значения может привести к тому, "
"что объекты не будут правильно проникать.\n"
"[b]Примечание:[/b] Это применимо ко всем запросам формы, а также к физическим "
"телам в симуляции.\n"
"[b]Примечание:[/b] Это не применимо при включении улучшенного удаления "
"внутренних ребер Jolt, которое заменяет это."

msgid ""
"The amount of collision margin to use for certain convex collision shapes, "
"such as [BoxShape3D], [CylinderShape3D] and [ConvexPolygonShape3D], as a "
"fraction of the shape's shortest axis, with [member Shape3D.margin] as the "
"upper bound. This is mainly used to speed up collision detection with convex "
"shapes.\n"
"[b]Note:[/b] Collision margins in Jolt do not add any extra size to the "
"shape. Instead the shape is first shrunk by the margin and then expanded by "
"the same amount, resulting in a shape with rounded corners.\n"
"[b]Note:[/b] Setting this value too close to [code]0.0[/code] may also "
"negatively affect the accuracy of the collision detection with convex shapes."
msgstr ""
"Величина поля столкновения, используемого для определенных выпуклых форм "
"столкновения, таких как [BoxShape3D], [CylinderShape3D] и "
"[ConvexPolygonShape3D], как доля самой короткой оси формы, с [member "
"Shape3D.margin] в качестве верхней границы. Это в основном используется для "
"ускорения обнаружения столкновений с выпуклыми формами.\n"
"[b]Примечание:[/b] Поля столкновения в Jolt не добавляют никакого "
"дополнительного размера к форме. Вместо этого форма сначала сжимается на "
"величину поля, а затем расширяется на ту же величину, в результате чего "
"получается форма со скругленными углами.\n"
"[b]Примечание:[/b] Установка этого значения слишком близко к [code]0.0[/code] "
"также может отрицательно повлиять на точность обнаружения столкновений с "
"выпуклыми формами."

msgid ""
"Which of the two nodes bound by a joint should represent the world when one "
"of the two is omitted, as either [member Joint3D.node_a] or [member "
"Joint3D.node_b]. This can be thought of as having the omitted node be a "
"[StaticBody3D] at the joint's position. Joint limits are more easily "
"expressed when [member Joint3D.node_a] represents the world.\n"
"[b]Note:[/b] In Godot Physics, only [member Joint3D.node_b] can represent the "
"world."
msgstr ""
"Какой из двух узлов, связанных сочленением, должен представлять мир, когда "
"один из двух опущен, как [member Joint3D.node_a] или [member Joint3D.node_b]. "
"Это можно представить как опущенный узел, являющийся [StaticBody3D] в позиции "
"сочленения. Пределы сочленения легче выразить, когда [member Joint3D.node_a] "
"представляет мир.\n"
"[b]Примечание:[/b] В физике Годо только [member Joint3D.node_b] может "
"представлять мир."

msgid ""
"The maximum angular velocity that a [RigidBody3D] can reach, in radians per "
"second.\n"
"This is mainly used as a fail-safe, to prevent the simulation from exploding, "
"as fast-moving objects colliding with complex physics structures can "
"otherwise cause them to go out of control. Fast-moving objects can also cause "
"a lot of stress on the collision detection system, which can slow down the "
"simulation considerably."
msgstr ""
"Максимальная угловая скорость, которую может достичь [RigidBody3D], в "
"радианах в секунду.\n"
"Это в основном используется в качестве защиты от сбоев, чтобы предотвратить "
"взрыв симуляции, поскольку быстро движущиеся объекты, сталкивающиеся со "
"сложными физическими структурами, в противном случае могут привести к выходу "
"их из-под контроля. Быстро движущиеся объекты также могут вызывать большую "
"нагрузку на систему обнаружения столкновений, что может значительно замедлить "
"симуляцию."

msgid ""
"The maximum number of [PhysicsBody3D] to support at the same time, awake or "
"sleeping. When this limit is exceeded, an error is reported and anything past "
"that point is undefined behavior.\n"
"[b]Note:[/b] This limit also applies within the editor."
msgstr ""
"Максимальное количество [PhysicsBody3D] для поддержки одновременно, "
"бодрствующих или спящих. При превышении этого предела выдается сообщение об "
"ошибке, а все, что выходит за эту точку, является неопределенным поведением.\n"
"[b]Примечание:[/b] Это ограничение также применяется в редакторе."

msgid ""
"The maximum number of body pairs to allow processing of. When this limit is "
"exceeded, a warning is reported and collisions will randomly be ignored while "
"bodies pass through each other."
msgstr ""
"Максимальное количество пар тел, разрешенных для обработки. При превышении "
"этого предела выдается предупреждение, а столкновения будут случайным образом "
"игнорироваться, пока тела проходят друг сквозь друга."

msgid ""
"The maximum number of contact constraints to allow processing of. When this "
"limit is exceeded, a warning is reported and collisions will randomly be "
"ignored while bodies pass through each other."
msgstr ""
"Максимальное количество ограничений контакта, разрешенных для обработки. При "
"превышении этого предела выдается предупреждение, а столкновения будут "
"случайным образом игнорироваться, пока тела проходят друг сквозь друга."

msgid ""
"The maximum linear velocity that a [RigidBody3D] can reach, in meters per "
"second.\n"
"This is mainly used as a fail-safe, to prevent the simulation from exploding, "
"as fast-moving objects colliding with complex physics structures can "
"otherwise cause them to go out of control. Fast-moving objects can also cause "
"a lot of stress on the collision detection system, which can slow down the "
"simulation considerably."
msgstr ""
"Максимальная линейная скорость, которую может достичь [RigidBody3D], в метрах "
"в секунду.\n"
"Это в основном используется в качестве защиты от сбоев, чтобы предотвратить "
"взрыв симуляции, поскольку быстро движущиеся объекты, сталкивающиеся со "
"сложными физическими структурами, в противном случае могут привести к выходу "
"их из-под контроля. Быстро движущиеся объекты также могут вызывать большую "
"нагрузку на систему обнаружения столкновений, что может значительно замедлить "
"симуляцию."

msgid ""
"The amount of memory to pre-allocate for the stack allocator used within "
"Jolt, in MiB. This allocator is used within the physics step to store things "
"that are only needed during it, like which bodies are in contact, how they "
"form islands and the data needed to solve the contacts."
msgstr ""
"Объем памяти для предварительного выделения для стекового распределителя, "
"используемого в Jolt, в MiB. Этот распределитель используется в физическом "
"шаге для хранения вещей, которые нужны только во время него, например, какие "
"тела находятся в контакте, как они образуют острова и данные, необходимые для "
"решения контактов."

msgid ""
"The size of [WorldBoundaryShape3D] boundaries, for all three dimensions. The "
"plane is effectively centered within a box of this size, and anything outside "
"of the box will not collide with it. This is necessary as "
"[WorldBoundaryShape3D] is not unbounded when using Jolt, in order to prevent "
"precision issues.\n"
"[b]Note:[/b] Setting this value too high can make collision detection less "
"accurate.\n"
"[b]Note:[/b] Collisions against the effective edges of a "
"[WorldBoundaryShape3D] will be inconsistent."
msgstr ""
"Размер границ [WorldBoundaryShape3D] для всех трех измерений. Плоскость "
"фактически центрирована в пределах рамки этого размера, и все, что находится "
"за пределами рамки, не будет с ней сталкиваться. Это необходимо, поскольку "
"[WorldBoundaryShape3D] не является неограниченным при использовании Jolt, "
"чтобы предотвратить проблемы с точностью.\n"
"[b]Примечание:[/b] Установка слишком большого значения может сделать "
"обнаружение столкновений менее точным.\n"
"[b]Примечание:[/b] Столкновения с эффективными краями [WorldBoundaryShape3D] "
"будут непоследовательными."

msgid ""
"Fraction of the total penetration to depenetrate per iteration during motion "
"queries.\n"
"[b]Note:[/b] This affects methods [method CharacterBody3D.move_and_slide], "
"[method PhysicsBody3D.move_and_collide], [method PhysicsBody3D.test_move] and "
"[method PhysicsServer3D.body_test_motion]."
msgstr ""
"Доля общего проникновения, устраняемая за итерацию при запросах движения.\n"
"[b]Примечание:[/b] Влияет на методы [method CharacterBody3D.move_and_slide], "
"[method PhysicsBody3D.move_and_collide], [method PhysicsBody3D.test_move] и "
"[method PhysicsServer3D.body_test_motion]."

msgid ""
"The number of iterations to run when depenetrating during motion queries.\n"
"[b]Note:[/b] This affects methods [method CharacterBody3D.move_and_slide], "
"[method PhysicsBody3D.move_and_collide], [method PhysicsBody3D.test_move] and "
"[method PhysicsServer3D.body_test_motion]."
msgstr ""
"Количество итераций для устранения проникновения при запросах движения. \n"
"[b]Примечание:[/b] Влияет на методы [method CharacterBody3D.move_and_slide], "
"[method PhysicsBody3D.move_and_collide], [method PhysicsBody3D.test_move] и "
"[method PhysicsServer3D.body_test_motion]."

msgid ""
"If [code]true[/code], enables Jolt's enhanced internal edge removal during "
"motion queries. This can help alleviate ghost collisions, but only with edges "
"within a single body, meaning edges between separate bodies can still cause "
"ghost collisions.\n"
"[b]Note:[/b] This affects methods [method CharacterBody3D.move_and_slide], "
"[method PhysicsBody3D.move_and_collide], [method PhysicsBody3D.test_move] and "
"[method PhysicsServer3D.body_test_motion]."
msgstr ""
"Если [code]true[/code], включает улучшенное удаление внутренних рёбер в Jolt "
"при запросах движения. Это помогает уменьшить фантомные столкновения, но "
"только для рёбер внутри одного тела — рёбра между отдельными телами всё ещё "
"могут вызывать фантомные столкновения. \n"
"[b]Примечание:[/b] Влияет на методы [method CharacterBody3D.move_and_slide], "
"[method PhysicsBody3D.move_and_collide], [method PhysicsBody3D.test_move] и "
"[method PhysicsServer3D.body_test_motion]."

msgid ""
"If [code]true[/code], populates the [code]face_index[/code] field in the "
"results of [method PhysicsDirectSpaceState3D.intersect_ray], also accessed "
"through [method RayCast3D.get_collision_face_index]. If [code]false[/code], "
"the [code]face_index[/code] field will be left at its default value of "
"[code]-1[/code].\n"
"[b]Note:[/b] Enabling this setting will increase Jolt's memory usage for "
"[ConcavePolygonShape3D] by around 25%."
msgstr ""
"Если [code]true[/code], заполняет поле [code]face_index[/code] в результатах "
"[method PhysicsDirectSpaceState3D.intersect_ray] (также доступно через "
"[method RayCast3D.get_collision_face_index]). Если [code]false[/code], поле "
"[code]face_index[/code] останется со значением по умолчанию [code]-1[/"
"code]. \n"
"[b]Примечание:[/b] Включение этой настройки увеличит использование памяти "
"Jolt для [ConcavePolygonShape3D] примерно на 25%."

msgid ""
"If [code]true[/code], enables Jolt's enhanced internal edge removal during "
"shape queries. This can help alleviate ghost collisions when using shape "
"queries for things like character movement, but only with edges within a "
"single body, meaning edges between separate bodies can still cause ghost "
"collisions.\n"
"[b]Note:[/b] This affects methods [method "
"PhysicsDirectSpaceState3D.cast_motion], [method "
"PhysicsDirectSpaceState3D.collide_shape], [method "
"PhysicsDirectSpaceState3D.get_rest_info] and [method "
"PhysicsDirectSpaceState3D.intersect_shape].\n"
"[b]Note:[/b] Enabling this setting can cause certain shapes to be culled from "
"the results entirely, but you will get at least one intersection per body."
msgstr ""
"Если [code]true[/code], включает улучшенное удаление внутренних рёбер в Jolt "
"при запросах формы. Это помогает уменьшить фантомные столкновения при "
"использовании запросов формы (например, для перемещения персонажа), но только "
"для рёбер внутри одного тела — рёбра между отдельными телами всё ещё могут "
"вызывать фантомные столкновения.\n"
"[b]Примечание:[/b] Влияет на методы [method "
"PhysicsDirectSpaceState3D.cast_motion], [method "
"PhysicsDirectSpaceState3D.collide_shape], [method "
"PhysicsDirectSpaceState3D.get_rest_info] и [method "
"PhysicsDirectSpaceState3D.intersect_shape].\n"
"[b]Примечание:[/b] Включение этой настройки может приводить к полному "
"исключению некоторых форм из результатов, но вы получите как минимум одно "
"пересечение на тело."

msgid ""
"If [code]true[/code], [RigidBody3D] nodes are allowed to go to sleep if their "
"velocity is below the threshold defined in [member physics/jolt_physics_3d/"
"simulation/sleep_velocity_threshold] for the duration set in [member physics/"
"jolt_physics_3d/simulation/sleep_time_threshold]. This can improve physics "
"simulation performance when there are non-moving [RigidBody3D] nodes, at the "
"cost of some nodes possibly failing to wake up in certain scenarios. Consider "
"disabling this temporarily to troubleshoot [RigidBody3D] nodes not moving "
"when they should."
msgstr ""
"Если [code]true[/code], узлам [RigidBody3D] разрешено переходить в спящий "
"режим, если их скорость ниже порогового значения, определенного в [member "
"physics/jolt_physics_3d/simulation/sleep_velocity_threshold] на время, "
"заданное в [member physics/jolt_physics_3d/simulation/sleep_time_threshold]. "
"Это может улучшить производительность моделирования физики при наличии "
"неподвижных узлов [RigidBody3D], за счет того, что некоторые узлы могут не "
"просыпаться в определенных сценариях. Рассмотрите возможность временного "
"отключения этого параметра для устранения неполадок, связанных с тем, что "
"узлы [RigidBody3D] не двигаются, когда должны."

msgid ""
"How much of the position error of a [RigidBody3D] to fix during a physics "
"step, where [code]0.0[/code] is none and [code]1.0[/code] is the full amount. "
"This affects things like how quickly bodies depenetrate.\n"
"[b]Note:[/b] Setting this value too high can make [RigidBody3D] nodes "
"unstable."
msgstr ""
"Сколько ошибки положения [RigidBody3D] нужно исправить во время шага физики, "
"где [code]0.0[/code] — это отсутствие, а [code]1.0[/code] — это полная сумма. "
"Это влияет на такие вещи, как скорость проникновения тел.\n"
"[b]Примечание:[/b] Установка слишком высокого значения может сделать узлы "
"[RigidBody3D] нестабильными."

msgid ""
"The maximum relative angle by which a body pair can move and still reuse the "
"collision results from the previous physics step, in radians."
msgstr ""
"Максимальный относительный угол, на который может перемещаться пара тел и при "
"этом повторно использовать результаты столкновения из предыдущего шага "
"физики, в радианах."

msgid ""
"The maximum relative distance by which a body pair can move and still reuse "
"the collision results from the previous physics step, in meters."
msgstr ""
"Максимальное относительное расстояние, на которое может переместиться пара "
"тел и при этом повторно использовать столкновение, полученное на предыдущем "
"шаге физики, в метрах."

msgid ""
"If [code]true[/code], enables the body pair contact cache, which removes the "
"need for potentially expensive collision detection when the relative "
"orientation between two bodies hasn't changed much."
msgstr ""
"Если [code]true[/code], включается кэш контактов пар тел, что устраняет "
"необходимость в потенциально дорогостоящем обнаружении столкновений, когда "
"относительная ориентация между двумя телами не сильно изменилась."

msgid ""
"The minimum velocity needed before a collision can be bouncy, in meters per "
"second."
msgstr ""
"Минимальная скорость, необходимая для столкновения, может быть выражена в "
"метрах в секунду."

msgid ""
"Fraction of a body's inner radius that may penetrate another body while using "
"continuous collision detection."
msgstr ""
"Доля внутреннего радиуса тела, которая может проникнуть в другое тело при "
"использовании непрерывного обнаружения столкновений."

msgid ""
"Fraction of a body's inner radius that the body must move per step to make "
"use of continuous collision detection."
msgstr ""
"Доля внутреннего радиуса тела, которую тело должно переместить за один шаг, "
"чтобы использовать непрерывное обнаружение столкновений."

msgid ""
"If [code]true[/code], a [RigidBody3D] frozen with [constant "
"RigidBody3D.FREEZE_MODE_KINEMATIC] is able to collide with other kinematic "
"and static bodies, and therefore generate contacts for them.\n"
"[b]Note:[/b] This setting can come at a heavy CPU and memory cost if you "
"allow many/large frozen kinematic bodies with a non-zero [member "
"RigidBody3D.max_contacts_reported] to overlap with complex static geometry, "
"such as [ConcavePolygonShape3D] or [HeightMapShape3D]."
msgstr ""
"Если [code]true[/code], [RigidBody3D], замороженный с [constant "
"RigidBody3D.FREEZE_MODE_KINEMATIC], может сталкиваться с другими "
"кинематическими и статическими телами и, следовательно, генерировать для них "
"контакты.\n"
"[b]Примечание:[/b] Эта настройка может привести к высоким затратам ресурсов "
"CPU и памяти, если вы позволяете многим/большим замороженным кинематическим "
"телам с ненулевым [member RigidBody3D.max_contacts_reported] перекрываться со "
"сложной статической геометрией, такой как [ConcavePolygonShape3D] или "
"[HeightMapShape3D]."

msgid "How much bodies are allowed to penetrate each other, in meters."
msgstr "На какое расстояние телам разрешено проникать друг в друга, в метрах."

msgid ""
"Number of solver position iterations. The greater the number of iterations, "
"the more accurate the simulation will be, at the cost of CPU performance."
msgstr ""
"Количество итераций позиции решателя. Чем больше количество итераций, тем "
"точнее будет моделирование, за счет производительности CPU."

msgid ""
"Time in seconds a [RigidBody3D] will spend below the sleep velocity threshold "
"before going to sleep."
msgstr ""
"Время в секундах, которое [RigidBody3D] проведет ниже порога скорости сна, "
"прежде чем заснуть."

msgid ""
"The linear velocity of specific points on the bounding box of a "
"[RigidBody3D], below which it can be put to sleep, in meters per second. "
"These points help capture both the linear and angular motion of a "
"[RigidBody3D]."
msgstr ""
"Линейная скорость определенных точек на ограничивающем прямоугольнике "
"[RigidBody3D], ниже которой он может быть переведен в спящий режим, в метрах "
"в секунду. Эти точки помогают захватить как линейное, так и угловое движение "
"[RigidBody3D]."

msgid ""
"How big the points of a [SoftBody3D] are, in meters. A higher value can "
"prevent behavior such as cloth laying perfectly flush against other surfaces "
"and causing Z-fighting."
msgstr ""
"Насколько велики точки [SoftBody3D] в метрах. Более высокое значение может "
"предотвратить такое поведение, как идеальное расположение ткани вплотную к "
"другим поверхностям и возникновение Z-борьбы."

msgid ""
"Radius around physics bodies, inside which speculative contact points will be "
"detected, in meters. This is mainly used to prevent tunneling/penetration for "
"[RigidBody3D] nodes during simulation.\n"
"[b]Note:[/b] Setting this too high may result in ghost collisions, as "
"speculative contacts are based on the closest points during the collision "
"detection step which may not be the actual closest points by the time the two "
"bodies hit."
msgstr ""
"Радиус вокруг физических тел, внутри которого будут обнаружены предполагаемые "
"точки контакта, в метрах. В основном это используется для предотвращения "
"туннелирования/проникновения для узлов [RigidBody3D] во время моделирования.\n"
"[b]Примечание:[/b] Установка слишком большого значения может привести к "
"фантомным столкновениям, поскольку предполагаемые контакты основаны на "
"ближайших точках на этапе обнаружения столкновений, которые могут не быть "
"фактическими ближайшими точками к моменту столкновения двух тел."

msgid ""
"If [code]true[/code], enables Jolt's enhanced internal edge removal for "
"[RigidBody3D]. This can help alleviate ghost collisions when, for example, a "
"[RigidBody3D] collides with the edges of two perfectly joined [BoxShape3D]. "
"The removal only applies to edges internal to a single body, meaning edges "
"between separate bodies can still cause ghost collisions."
msgstr ""
"Если [code]true[/code], включается улучшенное удаление внутренних ребер Jolt "
"для [RigidBody3D]. Это может помочь уменьшить фантомные столкновения, когда, "
"например, [RigidBody3D] сталкивается с краями двух идеально соединенных "
"[BoxShape3D]. Удаление применяется только к внутренним краям одного тела, то "
"есть края между отдельными телами все еще могут вызывать фантомные "
"столкновения."

msgid ""
"Number of solver velocity iterations. The greater the number of iterations, "
"the more accurate the simulation will be, at the cost of CPU performance.\n"
"[b]Note:[/b] This needs to be at least [code]2[/code] in order for friction "
"to work, as friction is applied using the non-penetration impulse from the "
"previous iteration."
msgstr ""
"Количество итераций скорости решателя. Чем больше количество итераций, тем "
"точнее будет моделирование, за счет производительности ЦП.\n"
"[b]Примечание:[/b] Это должно быть не менее [code]2[/code], чтобы трение "
"работало, поскольку трение применяется с использованием импульса "
"непроникновения из предыдущей итерации."

msgid ""
"Maximum number of canvas item commands that can be batched into a single draw "
"call."
msgstr ""
"Максимальное количество команд элемента холста, которые можно объединить в "
"один вызов отрисовки."

msgid ""
"Maximum number of uniform sets that will be cached by the 2D renderer when "
"batching draw calls.\n"
"[b]Note:[/b] Increasing this value can improve performance if the project "
"renders many unique sprite textures every frame."
msgstr ""
"Максимальное количество наборов униформ, которые будут кэшироваться 2D-"
"рендерером при пакетной отрисовке.\n"
"[b]Примечание:[/b] Увеличение этого значения может повысить "
"производительность, если проект рендерит множество уникальных текстур "
"спрайтов в каждом кадре."

msgid ""
"Controls how much of the original viewport size should be covered by the 2D "
"signed distance field. This SDF can be sampled in [CanvasItem] shaders and is "
"used for [GPUParticles2D] collision. Higher values allow portions of "
"occluders located outside the viewport to still be taken into account in the "
"generated signed distance field, at the cost of performance. If you notice "
"particles falling through [LightOccluder2D]s as the occluders leave the "
"viewport, increase this setting.\n"
"The percentage specified is added on each axis and on both sides. For "
"example, with the default setting of 120%, the signed distance field will "
"cover 20% of the viewport's size outside the viewport on each side (top, "
"right, bottom, left).\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the 2D SDF oversizing percentage at runtime, use [method "
"RenderingServer.viewport_set_sdf_oversize_and_scale] instead."
msgstr ""
"Управляет тем, какая часть исходного размера области просмотра должна быть "
"покрыта 2D-полем расстояния со знаком. Этот SDF может быть выбран в шейдерах "
"[CanvasItem] и используется для столкновения [GPUParticles2D]. Более высокие "
"значения позволяют учитывать части окклюдеров, расположенных за пределами "
"области просмотра, в сгенерированном поле расстояния со знаком, за счет "
"производительности. Если вы заметили, что частицы падают через "
"[LightOccluder2D], когда окклюдеры покидают область просмотра, увеличьте этот "
"параметр.\n"
"Указанный процент добавляется по каждой оси и с обеих сторон. Например, при "
"настройке по умолчанию 120% поле расстояния со знаком будет покрывать 20% "
"размера области просмотра за пределами области просмотра с каждой стороны "
"(сверху, справа, снизу, слева).\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить процент превышения размера 2D SDF во время выполнения, используйте "
"вместо этого [method RenderingServer.viewport_set_sdf_oversize_and_scale]."

msgid ""
"The resolution scale to use for the 2D signed distance field. Higher values "
"lead to a more precise and more stable signed distance field as the camera "
"moves, at the cost of performance. The default value (50%) renders at half "
"the resolution of the viewport size on each axis, which means the SDF is "
"generated with 25% of the viewport's pixel count.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the 2D SDF resolution scale at runtime, use [method "
"RenderingServer.viewport_set_sdf_oversize_and_scale] instead."
msgstr ""
"Масштаб разрешения для использования для поля расстояния со знаком 2D. Более "
"высокие значения приводят к более точному и стабильному полю расстояния со "
"знаком при перемещении камеры за счет производительности. Значение по "
"умолчанию (50%) отображает изображение с разрешением, равным половине размера "
"области просмотра по каждой оси, что означает, что SDF генерируется с 25% от "
"количества пикселей области просмотра.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить масштаб разрешения SDF 2D во время выполнения, используйте вместо "
"этого [method RenderingServer.viewport_set_sdf_oversize_and_scale]."

msgid ""
"The size of the 2D shadow atlas in pixels. Higher values result in more "
"precise [Light2D] shadows, at the cost of performance and video memory usage. "
"The specified value is rounded up to the nearest power of 2.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the 2D shadow atlas size at runtime, use [method "
"RenderingServer.canvas_set_shadow_texture_size] instead."
msgstr ""
"Размер атласа теней 2D в пикселях. Более высокие значения приводят к более "
"точным теням [Light2D] за счет производительности и использования "
"видеопамяти. Указанное значение округляется до ближайшей степени 2.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить размер атласа теней 2D во время выполнения, используйте вместо этого "
"[method RenderingServer.canvas_set_shadow_texture_size]."

msgid ""
"If [code]true[/code], [CanvasItem] nodes will internally snap to full pixels. "
"Useful for low-resolution pixel art games. Their position can still be sub-"
"pixel, but the decimals will not have effect as the position is rounded. This "
"can lead to a crisper appearance at the cost of less smooth movement, "
"especially when [Camera2D] smoothing is enabled.\n"
"[b]Note:[/b] This property is only read when the project starts. To toggle 2D "
"transform snapping at runtime, use [method "
"RenderingServer.viewport_set_snap_2d_transforms_to_pixel] on the root "
"[Viewport] instead.\n"
"[b]Note:[/b] [Control] nodes are snapped to the nearest pixel by default. "
"This is controlled by [member gui/common/snap_controls_to_pixels].\n"
"[b]Note:[/b] It is not recommended to use this setting together with [member "
"rendering/2d/snap/snap_2d_vertices_to_pixel], as movement may appear even "
"less smooth. Prefer only enabling this setting instead."
msgstr ""
"Если [code]true[/code], узлы [CanvasItem] будут внутренне привязаны к полным "
"пикселям. Полезно для игр с пиксельной графикой с низким разрешением. Их "
"положение все еще может быть субпиксельным, но десятичные знаки не будут "
"иметь эффекта, так как положение округлено. Это может привести к более "
"четкому виду за счет менее плавного движения, особенно если включено "
"сглаживание [Camera2D].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"переключить привязку 2D-преобразования во время выполнения, вместо этого "
"используйте [method RenderingServer.viewport_set_snap_2d_transforms_to_pixel] "
"на корневом [Viewport].\n"
"[b]Примечание:[/b] Узлы [Control] по умолчанию привязаны к ближайшему "
"пикселю. Это контролируется [member gui/common/snap_controls_to_pixels].\n"
"[b]Примечание:[/b] Не рекомендуется использовать эту настройку вместе с "
"[member rendering/2d/snap/snap_2d_vertices_to_pixel], так как движение может "
"выглядеть еще менее плавным. Вместо этого предпочитайте включать только эту "
"настройку."

msgid ""
"If [code]true[/code], vertices of [CanvasItem] nodes will snap to full "
"pixels. Useful for low-resolution pixel art games. Only affects the final "
"vertex positions, not the transforms. This can lead to a crisper appearance "
"at the cost of less smooth movement, especially when [Camera2D] smoothing is "
"enabled.\n"
"[b]Note:[/b] This property is only read when the project starts. To toggle 2D "
"vertex snapping at runtime, use [method "
"RenderingServer.viewport_set_snap_2d_vertices_to_pixel] on the root "
"[Viewport] instead.\n"
"[b]Note:[/b] [Control] nodes are snapped to the nearest pixel by default. "
"This is controlled by [member gui/common/snap_controls_to_pixels].\n"
"[b]Note:[/b] It is not recommended to use this setting together with [member "
"rendering/2d/snap/snap_2d_transforms_to_pixel], as movement may appear even "
"less smooth. Prefer only enabling that setting instead."
msgstr ""
"Если [code]true[/code], вершины узлов [CanvasItem] будут привязаны к полным "
"пикселям. Полезно для игр с пиксельной графикой с низким разрешением. Влияет "
"только на конечные положения вершин, а не на преобразования. Это может "
"привести к более четкому внешнему виду за счет менее плавного движения, "
"особенно если включено сглаживание [Camera2D].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"переключить привязку 2D-вершин во время выполнения, используйте вместо этого "
"[method RenderingServer.viewport_set_snap_2d_vertices_to_pixel] на корневом "
"[Viewport].\n"
"[b]Примечание:[/b] Узлы [Control] по умолчанию привязаны к ближайшему "
"пикселю. Это контролируется [member gui/common/snap_controls_to_pixels].\n"
"[b]Примечание:[/b] Не рекомендуется использовать эту настройку вместе с "
"[member rendering/2d/snap/snap_2d_transforms_to_pixel], так как движение "
"может выглядеть еще менее плавным. Вместо этого предпочитайте включать только "
"эту настройку."

msgid ""
"Sets the number of multisample antialiasing (MSAA) samples to use for 2D/"
"Canvas rendering (as a power of two). MSAA is used to reduce aliasing around "
"the edges of polygons. A higher MSAA value results in smoother edges but can "
"be significantly slower on some hardware, especially integrated graphics due "
"to their limited memory bandwidth. This has no effect on shader-induced "
"aliasing or texture aliasing.\n"
"[b]Note:[/b] MSAA is only supported in the Forward+ and Mobile rendering "
"methods, not Compatibility.\n"
"[b]Note:[/b] This property is only read when the project starts. To set the "
"number of 2D MSAA samples at runtime, set [member Viewport.msaa_2d] or use "
"[method RenderingServer.viewport_set_msaa_2d]."
msgstr ""
"Устанавливает количество выборок сглаживания мультивыборки (MSAA), "
"используемых для рендеринга 2D/Canvas (как степень двойки). MSAA используется "
"для уменьшения сглаживания по краям полигонов. Более высокое значение MSAA "
"приводит к более гладким краям, но может быть значительно медленнее на "
"некотором оборудовании, особенно на интегрированной графике из-за "
"ограниченной пропускной способности памяти. Это не влияет на сглаживание, "
"вызванное шейдером, или на сглаживание текстур.\n"
"[b]Примечание:[/b] MSAA поддерживается только в методах рендеринга Forward+ и "
"Mobile, но не Compatibility.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"задать количество выборок 2D MSAA во время выполнения, установите [member "
"Viewport.msaa_2d] или используйте [method "
"RenderingServer.viewport_set_msaa_2d]."

msgid ""
"Sets the number of multisample antialiasing (MSAA) samples to use for 3D "
"rendering (as a power of two). MSAA is used to reduce aliasing around the "
"edges of polygons. A higher MSAA value results in smoother edges but can be "
"significantly slower on some hardware, especially integrated graphics due to "
"their limited memory bandwidth. See also [member rendering/scaling_3d/mode] "
"for supersampling, which provides higher quality but is much more expensive. "
"This has no effect on shader-induced aliasing or texture aliasing.\n"
"[b]Note:[/b] This property is only read when the project starts. To set the "
"number of 3D MSAA samples at runtime, set [member Viewport.msaa_3d] or use "
"[method RenderingServer.viewport_set_msaa_3d]."
msgstr ""
"Устанавливает количество выборок мультисэмплового сглаживания (MSAA) для "
"использования при 3D-рендеринге (как степень двойки). MSAA используется для "
"уменьшения сглаживания по краям полигонов. Более высокое значение MSAA "
"приводит к более гладким краям, но может быть значительно медленнее на "
"некотором оборудовании, особенно на интегрированной графике из-за "
"ограниченной пропускной способности памяти. См. также [member rendering/"
"scaling_3d/mode] для суперсэмплинга, который обеспечивает более высокое "
"качество, но намного дороже. Это не влияет на сглаживание, вызванное "
"шейдером, или сглаживание текстур.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"задать количество выборок 3D MSAA во время выполнения, установите [member "
"Viewport.msaa_3d] или используйте [method "
"RenderingServer.viewport_set_msaa_3d]."

msgid ""
"Sets the screen-space antialiasing mode for the default screen [Viewport]. "
"Screen-space antialiasing works by selectively blurring edges in a post-"
"process shader. It differs from MSAA which takes multiple coverage samples "
"while rendering objects. Screen-space AA methods are typically faster than "
"MSAA and will smooth out specular aliasing, but tend to make scenes appear "
"blurry. The blurriness is partially counteracted by automatically using a "
"negative mipmap LOD bias (see [member rendering/textures/default_filters/"
"texture_mipmap_bias]).\n"
"Another way to combat specular aliasing is to enable [member rendering/"
"anti_aliasing/screen_space_roughness_limiter/enabled].\n"
"[b]Note:[/b] Screen-space antialiasing is only supported in the Forward+ and "
"Mobile rendering methods, not Compatibility.\n"
"[b]Note:[/b] This property is only read when the project starts. To set the "
"screen-space antialiasing mode at runtime, set [member "
"Viewport.screen_space_aa] on the root [Viewport] instead, or use [method "
"RenderingServer.viewport_set_screen_space_aa]."
msgstr ""
"Устанавливает режим сглаживания экранного пространства для экрана по "
"умолчанию [Viewport]. Сглаживание экранного пространства работает путем "
"выборочного размытия краев в шейдере постобработки. Оно отличается от MSAA, "
"который берет несколько образцов покрытия при рендеринге объектов. Методы "
"сглаживания экранного пространства обычно быстрее, чем MSAA, и сглаживают "
"зеркальное сглаживание, но, как правило, делают сцены размытыми. Размытость "
"частично нейтрализуется автоматическим использованием отрицательного смещения "
"LOD mipmap (см. [member rendering/textures/default_filters/"
"texture_mipmap_bias]).\n"
"Другой способ борьбы с зеркальным сглаживанием — включить [member rendering/"
"anti_aliasing/screen_space_roughness_limiter/enabled].\n"
"[b]Примечание:[/b] Сглаживание экранного пространства поддерживается только в "
"методах рендеринга Forward+ и Mobile, а не Compatibility.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"установить режим сглаживания экранного пространства во время выполнения, "
"вместо этого установите [member Viewport.screen_space_aa] в корне [Viewport] "
"или используйте [method RenderingServer.viewport_set_screen_space_aa]."

msgid ""
"Sets the sensitivity to edges when using SMAA for antialiasing. Lower values "
"will catch more edges, at a potentially higher performance cost.\n"
"[b]Note:[/b] This property is only read when the project starts. There is "
"currently no way to change this setting at run-time."
msgstr ""
"Устанавливает чувствительность к краям при использовании SMAA для "
"сглаживания. Более низкие значения будут захватывать больше краев, что может "
"привести к более высоким потерям производительности.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. В "
"настоящее время нет возможности изменить эту настройку во время выполнения."

msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. If [member rendering/viewport/hdr_2d] is "
"[code]false[/code], 2D rendering is [i]not[/i] affected by debanding unless "
"the [member Environment.background_mode] is [constant Environment.BG_CANVAS]. "
"If [member rendering/viewport/hdr_2d] is [code]true[/code], debanding will "
"affect all 2D and 3D rendering, including canvas items.\n"
"In some cases, debanding may introduce a slightly noticeable dithering "
"pattern. It's recommended to enable debanding only when actually needed since "
"the dithering pattern will make lossless-compressed screenshots larger.\n"
"[b]Note:[/b] This property is only read when the project starts. To set "
"debanding at runtime, set [member Viewport.use_debanding] on the root "
"[Viewport] instead, or use [method "
"RenderingServer.viewport_set_use_debanding]."
msgstr ""
"Если [code]true[/code], используется быстрый фильтр постобработки, "
"значительно снижающий видимость полос. Если [member rendering/viewport/"
"hdr_2d] имеет значение [code]false[/code], 2D-рендеринг [i]не[/i] подвержен "
"дебаффингу, если только [member Environment.background_mode] не имеет "
"значение [constant Environment.BG_CANVAS]. Если [member rendering/viewport/"
"hdr_2d] имеет значение [code]true[/code], дебаффинг повлияет на весь 2D- и 3D-"
"рендеринг, включая элементы холста.\n"
"В некоторых случаях дебаффинг может привести к появлению слегка заметного "
"эффекта дизеринга. Рекомендуется включать дебаффинг только при необходимости, "
"поскольку он увеличит размер сжатых без потерь скриншотов.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"задать дебандинг во время выполнения, вместо этого установите [member "
"Viewport.use_debanding] в корне [Viewport] или используйте [method "
"RenderingServer.viewport_set_use_debanding]."

msgid ""
"Enables temporal antialiasing for the default screen [Viewport]. TAA works by "
"jittering the camera and accumulating the images of the last rendered frames, "
"motion vector rendering is used to account for camera and object motion. "
"Enabling TAA can make the image blurrier, which is partially counteracted by "
"automatically using a negative mipmap LOD bias (see [member rendering/"
"textures/default_filters/texture_mipmap_bias]).\n"
"[b]Note:[/b] The implementation is not complete yet. Some visual instances "
"such as particles and skinned meshes may show ghosting artifacts in motion.\n"
"[b]Note:[/b] TAA is only supported in the Forward+ rendering method, not "
"Mobile or Compatibility.\n"
"[b]Note:[/b] This property is only read when the project starts. To set TAA "
"at runtime, set [member Viewport.use_taa] on the root [Viewport] instead, or "
"use [method RenderingServer.viewport_set_use_taa]."
msgstr ""
"Включает временное сглаживание для экрана по умолчанию [Viewport]. TAA "
"работает путем дрожания камеры и накопления изображений последних "
"отрисованных кадров, рендеринг вектора движения используется для учета "
"движения камеры и объекта. Включение TAA может сделать изображение более "
"размытым, что частично компенсируется автоматическим использованием "
"отрицательного смещения LOD mipmap (см. [member rendering/textures/"
"default_filters/texture_mipmap_bias]).\n"
"[b]Примечание:[/b] Реализация еще не завершена. Некоторые визуальные "
"экземпляры, такие как частицы и сетки со скинами, могут показывать артефакты "
"ореола в движении.\n"
"[b]Примечание:[/b] TAA поддерживается только в методе рендеринга Forward+, а "
"не Mobile или Compatibility.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"установить TAA во время выполнения, вместо этого установите [member "
"Viewport.use_taa] в корне [Viewport] или используйте [method "
"RenderingServer.viewport_set_use_taa]."

msgid ""
"[b]Note:[/b] This property is only read when the project starts. To control "
"the screen-space roughness limiter at runtime, call [method "
"RenderingServer.screen_space_roughness_limiter_set_active] instead."
msgstr ""
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"управлять ограничителем шероховатости экранного пространства во время "
"выполнения, вместо этого вызовите [method "
"RenderingServer.screen_space_roughness_limiter_set_active]."

msgid ""
"If [code]true[/code], enables a spatial filter to limit roughness in areas "
"with high-frequency detail. This can help reduce specular aliasing to an "
"extent, though not as much as enabling [member rendering/anti_aliasing/"
"quality/use_taa]. This filter has a small performance cost, so consider "
"disabling it if it doesn't benefit your scene noticeably.\n"
"[b]Note:[/b] The screen-space roughness limiter is only supported in the "
"Forward+ and Mobile rendering methods, not Compatibility.\n"
"[b]Note:[/b] This property is only read when the project starts. To control "
"the screen-space roughness limiter at runtime, call [method "
"RenderingServer.screen_space_roughness_limiter_set_active] instead."
msgstr ""
"Если [code]true[/code], включает пространственный фильтр для ограничения "
"шероховатости в областях с высокочастотной детализацией. Это может помочь "
"уменьшить зеркальное наложение в некоторой степени, хотя и не так сильно, как "
"включение [member rendering/anti_aliasing/quality/use_taa]. Этот фильтр имеет "
"небольшие затраты производительности, поэтому рассмотрите возможность его "
"отключения, если он не приносит заметной пользы вашей сцене.\n"
"[b]Примечание:[/b] Ограничитель шероховатости экранного пространства "
"поддерживается только в методах рендеринга Forward+ и Mobile, но не "
"Compatibility.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"управлять ограничителем шероховатости экранного пространства во время "
"выполнения, вместо этого вызовите [method "
"RenderingServer.screen_space_roughness_limiter_set_active]."

msgid ""
"Sets the quality of the depth of field effect. Higher quality takes more "
"samples, which is slower but looks smoother."
msgstr ""
"Устанавливает качество эффекта глубины резкости. Более высокое качество "
"требует больше сэмплов, что медленнее, но выглядит более плавно."

msgid ""
"Sets the depth of field shape. Can be Box, Hexagon, or Circle. Box is the "
"fastest. Circle is the most realistic, but also the most expensive to compute."
msgstr ""
"Задает форму глубины резкости. Может быть Box, Hexagon или Circle. Box — "
"самый быстрый. Circle — самый реалистичный, но и самый дорогой в вычислении."

msgid ""
"If [code]true[/code], jitters DOF samples to make effect slightly blurrier "
"and hide lines created from low sample rates. This can result in a slightly "
"grainy appearance when used with a low number of samples."
msgstr ""
"Если [code]true[/code], колеблется выборка DOF, чтобы сделать эффект немного "
"более размытым и скрыть линии, созданные при низкой частоте выборки. Это "
"может привести к слегка зернистому виду при использовании с небольшим "
"количеством выборок."

msgid ""
"Disables [member rendering/driver/depth_prepass/enable] conditionally for "
"certain vendors. By default, disables the depth prepass for mobile devices as "
"mobile devices do not benefit from the depth prepass due to their unique "
"architecture."
msgstr ""
"Отключает [member rendering/driver/depth_prepass/enable] условно для "
"определенных поставщиков. По умолчанию отключает предварительный проход "
"глубины для мобильных устройств, поскольку мобильные устройства не получают "
"выгоды от предварительного прохода глубины из-за своей уникальной архитектуры."

msgid ""
"If [code]true[/code], performs a previous depth pass before rendering 3D "
"materials. This increases performance significantly in scenes with high "
"overdraw, when complex materials and lighting are used. However, in scenes "
"with few occluded surfaces, the depth prepass may reduce performance. If your "
"game is viewed from a fixed angle that makes it easy to avoid overdraw (such "
"as top-down or side-scrolling perspective), consider disabling the depth "
"prepass to improve performance. This setting can be changed at run-time to "
"optimize performance depending on the scene currently being viewed.\n"
"[b]Note:[/b] Depth prepass is only supported when using the Forward+ or "
"Compatibility rendering method. When using the Mobile rendering method, there "
"is no depth prepass performed."
msgstr ""
"Если [code]true[/code], выполняет предыдущий проход глубины перед рендерингом "
"3D-материалов. Это значительно увеличивает производительность в сценах с "
"высокой перерисовкой, когда используются сложные материалы и освещение. "
"Однако в сценах с небольшим количеством перекрытых поверхностей "
"предварительный проход глубины может снизить производительность. Если ваша "
"игра просматривается с фиксированного угла, что позволяет легко избежать "
"перерисовки (например, сверху вниз или сбоку), рассмотрите возможность "
"отключения предварительного прохода глубины для повышения производительности. "
"Этот параметр можно изменить во время выполнения, чтобы оптимизировать "
"производительность в зависимости от просматриваемой в данный момент сцены.\n"
"[b]Примечание:[/b] Предварительный проход глубины поддерживается только при "
"использовании метода рендеринга Forward+ или Compatibility. При использовании "
"метода рендеринга Mobile предварительный проход глубины не выполняется."

msgid ""
"This setting has several known bugs which can lead to crashing, especially "
"when using particles or resizing the window. Not recommended for use in "
"production at this stage."
msgstr ""
"Эта настройка имеет несколько известных ошибок, которые могут привести к "
"сбоям, особенно при использовании частиц или изменении размера окна. Не "
"рекомендуется для использования в производстве на данном этапе."

msgid ""
"The thread model to use for rendering. Rendering on a thread may improve "
"performance, but synchronizing to the main thread can cause a bit more jitter."
msgstr ""
"Модель потока, используемая для рендеринга. Рендеринг в потоке может улучшить "
"производительность, но синхронизация с основным потоком может вызвать немного "
"больше дрожания."

msgid ""
"Default background clear color. Overridable per [Viewport] using its "
"[Environment]. See [member Environment.background_mode] and [member "
"Environment.background_color] in particular. To change this default color "
"programmatically, use [method RenderingServer.set_default_clear_color]."
msgstr ""
"Цвет очистки фона по умолчанию. Переопределяется для [Viewport] с помощью его "
"[Environment]. См. [member Environment.background_mode] и [member "
"Environment.background_color] в частности. Чтобы изменить этот цвет по "
"умолчанию программно, используйте [method "
"RenderingServer.set_default_clear_color]."

msgid ""
"[Environment] that will be used as a fallback environment in case a scene "
"does not specify its own environment. The default environment is loaded in at "
"scene load time regardless of whether you have set an environment or not. If "
"you do not rely on the fallback environment, you do not need to set this "
"property."
msgstr ""
"[Environment], который будет использоваться как резервная среда в случае, "
"если сцена не указывает свою собственную среду. Среда по умолчанию "
"загружается во время загрузки сцены независимо от того, установили ли вы "
"среду или нет. Если вы не полагаетесь на резервную среду, вам не нужно "
"устанавливать это свойство."

msgid ""
"Sets how the glow effect is upscaled before being copied onto the screen. "
"Linear is faster, but looks blocky. Bicubic is slower but looks smooth.\n"
"[b]Note:[/b] [member rendering/environment/glow/upscale_mode] is only "
"effective when using the Forward+ or Mobile rendering methods, as "
"Compatibility uses a different glow implementation."
msgstr ""
"Устанавливает, как эффект свечения масштабируется перед копированием на "
"экран. Линейный быстрее, но выглядит блочным. Бикубический медленнее, но "
"выглядит плавно.\n"
"[b]Примечание:[/b] [member rendering/environment/glow/upscale_mode] "
"эффективен только при использовании методов рендеринга Forward+ или Mobile, "
"так как Compatibility использует другую реализацию свечения."

msgid ""
"Lower-end override for [member rendering/environment/glow/upscale_mode] on "
"mobile devices, due to performance concerns or driver support."
msgstr ""
"Переопределение нижнего уровня для [member rendering/environment/glow/"
"upscale_mode] на мобильных устройствах из-за проблем с производительностью "
"или поддержкой драйверов."

msgid ""
"Sets the quality for rough screen-space reflections. Turning off will make "
"all screen space reflections sharp, while higher values make rough "
"reflections look better."
msgstr ""
"Устанавливает качество для грубых отражений в пространстве экрана. Отключение "
"сделает все отражения в пространстве экрана резкими, в то время как более "
"высокие значения заставят грубые отражения выглядеть лучше."

msgid ""
"Quality target to use when [member rendering/environment/ssao/quality] is set "
"to [code]Ultra[/code]. A value of [code]0.0[/code] provides a quality and "
"speed similar to [code]Medium[/code] while a value of [code]1.0[/code] "
"provides much higher quality than any of the other settings at the cost of "
"performance."
msgstr ""
"Целевое качество, используемое, когда [member rendering/environment/ssao/"
"quality] установлено на [code]Ultra[/code]. Значение [code]0.0[/code] "
"обеспечивает качество и скорость, аналогичные [code]Medium[/code], тогда как "
"значение [code]1.0[/code] обеспечивает гораздо более высокое качество, чем "
"любые другие настройки, за счет производительности."

msgid ""
"Number of blur passes to use when computing screen-space ambient occlusion. A "
"higher number will result in a smoother look, but will be slower to compute "
"and will have less high-frequency detail."
msgstr ""
"Число проходов размытия, используемых при вычислении экранного пространства "
"окружающего затенения. Более высокое число приведет к более плавному виду, но "
"будет медленнее вычисляться и будет иметь меньше высокочастотных деталей."

msgid ""
"Distance at which the screen-space ambient occlusion effect starts to fade "
"out. Use this hide ambient occlusion from far away."
msgstr ""
"Расстояние, на котором эффект экранного пространства окружающего пространства "
"начинает исчезать. Используйте это, чтобы скрыть окружающее затенение "
"издалека."

msgid ""
"Distance at which the screen-space ambient occlusion is fully faded out. Use "
"this hide ambient occlusion from far away."
msgstr ""
"Расстояние, на котором экранное пространство окружающего пространства "
"полностью исчезает. Используйте это, чтобы скрыть окружающее пространство "
"издалека."

msgid ""
"If [code]true[/code], screen-space ambient occlusion will be rendered at half "
"size and then upscaled before being added to the scene. This is significantly "
"faster but may miss small details. If [code]false[/code], screen-space "
"ambient occlusion will be rendered at full size."
msgstr ""
"Если [code]true[/code], экранное пространство окружающего затенения будет "
"визуализировано в половинном размере, а затем масштабировано перед "
"добавлением в сцену. Это значительно быстрее, но может привести к потере "
"мелких деталей. Если [code]false[/code], экранное пространство окружающего "
"затенения будет визуализировано в полном размере."

msgid ""
"Sets the quality of the screen-space ambient occlusion effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance. Setting to [code]Ultra[/code] will use the [member rendering/"
"environment/ssao/adaptive_target] setting."
msgstr ""
"Устанавливает качество эффекта экранного пространства Ambient Occlusion. "
"Более высокие значения берут больше образцов и, таким образом, приводят к "
"лучшему качеству за счет производительности. Установка [code]Ultra[/code] "
"будет использовать настройку [member rendering/environment/ssao/"
"adaptive_target]."

msgid ""
"Quality target to use when [member rendering/environment/ssil/quality] is set "
"to [code]Ultra[/code]. A value of [code]0.0[/code] provides a quality and "
"speed similar to [code]Medium[/code] while a value of [code]1.0[/code] "
"provides much higher quality than any of the other settings at the cost of "
"performance. When using the adaptive target, the performance cost scales with "
"the complexity of the scene."
msgstr ""
"Цель качества, используемая, когда [member rendering/environment/ssil/"
"quality] установлена на [code]Ultra[/code]. Значение [code]0.0[/code] "
"обеспечивает качество и скорость, аналогичные [code]Medium[/code], тогда как "
"значение [code]1.0[/code] обеспечивает гораздо более высокое качество, чем "
"любые другие настройки, за счет производительности. При использовании "
"адаптивной цели стоимость производительности масштабируется со сложностью "
"сцены."

msgid ""
"Number of blur passes to use when computing screen-space indirect lighting. A "
"higher number will result in a smoother look, but will be slower to compute "
"and will have less high-frequency detail."
msgstr ""
"Число проходов размытия, используемых при вычислении непрямого освещения в "
"экранном пространстве. Более высокое число приведет к более плавному виду, но "
"будет медленнее вычисляться и будет иметь меньше высокочастотных деталей."

msgid ""
"Distance at which the screen-space indirect lighting effect starts to fade "
"out. Use this to hide screen-space indirect lighting from far away."
msgstr ""
"Расстояние, на котором эффект непрямого освещения экранного пространства "
"начинает затухать. Используйте это, чтобы скрыть непрямое освещение экранного "
"пространства издалека."

msgid ""
"Distance at which the screen-space indirect lighting is fully faded out. Use "
"this to hide screen-space indirect lighting from far away."
msgstr ""
"Расстояние, на котором непрямое освещение экранного пространства полностью "
"исчезает. Используйте это, чтобы скрыть непрямое освещение экранного "
"пространства издалека."

msgid ""
"If [code]true[/code], screen-space indirect lighting will be rendered at half "
"size and then upscaled before being added to the scene. This is significantly "
"faster but may miss small details and may result in some objects appearing to "
"glow at their edges."
msgstr ""
"Если [code]true[/code], непрямое освещение в экранном пространстве будет "
"визуализироваться в половинном размере, а затем масштабироваться перед "
"добавлением в сцену. Это значительно быстрее, но может привести к потере "
"мелких деталей и может привести к тому, что некоторые объекты будут светиться "
"по краям."

msgid ""
"Sets the quality of the screen-space indirect lighting effect. Higher values "
"take more samples and so will result in better quality, at the cost of "
"performance. Setting to [code]Ultra[/code] will use the [member rendering/"
"environment/ssil/adaptive_target] setting."
msgstr ""
"Устанавливает качество эффекта непрямого освещения экранного пространства. "
"Более высокие значения требуют больше сэмплов и поэтому дают лучшее качество "
"за счет производительности. Установка на [code]Ultra[/code] будет "
"использовать настройку [member rendering/environment/ssil/adaptive_target]."

msgid ""
"Scales the depth over which the subsurface scattering effect is applied. A "
"high value may allow light to scatter into a part of the mesh or another mesh "
"that is close in screen space but far in depth. See also [member rendering/"
"environment/subsurface_scattering/subsurface_scattering_scale].\n"
"[b]Note:[/b] This property is only read when the project starts. To set the "
"subsurface scattering depth scale at runtime, call [method "
"RenderingServer.sub_surface_scattering_set_scale] instead."
msgstr ""
"Масштабирует глубину, на которой применяется эффект подповерхностного "
"рассеивания. Высокое значение может позволить свету рассеиваться в части "
"сетки или другой сетке, которая находится близко в пространстве экрана, но "
"далеко в глубину. См. также [member rendering/environment/"
"subsurface_scattering/subsurface_scattering_scale].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"задать масштаб глубины подповерхностного рассеивания во время выполнения, "
"вместо этого вызовите [method "
"RenderingServer.sub_surface_scattering_set_scale]."

msgid ""
"Sets the quality of the subsurface scattering effect. Higher values are "
"slower but look nicer. This affects the rendering of materials that have "
"[member BaseMaterial3D.subsurf_scatter_enabled] set to [code]true[/code], "
"along with [ShaderMaterial]s that set [code]SSS_STRENGTH[/code].\n"
"[b]Note:[/b] This property is only read when the project starts. To set the "
"subsurface scattering quality at runtime, call [method "
"RenderingServer.sub_surface_scattering_set_quality] instead."
msgstr ""
"Устанавливает качество эффекта подповерхностного рассеивания. Более высокие "
"значения медленнее, но выглядят лучше. Это влияет на рендеринг материалов, у "
"которых [member BaseMaterial3D.subsurf_scatter_enabled] установлен на "
"[code]true[/code], а также [ShaderMaterial], которые устанавливают "
"[code]SSS_STRENGTH[/code].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"установить качество подповерхностного рассеивания во время выполнения, вместо "
"этого вызовите [method RenderingServer.sub_surface_scattering_set_quality]."

msgid ""
"Scales the distance over which samples are taken for subsurface scattering "
"effect. Changing this does not impact performance, but higher values will "
"result in significant artifacts as the samples will become obviously spread "
"out. A lower value results in a smaller spread of scattered light. See also "
"[member rendering/environment/subsurface_scattering/"
"subsurface_scattering_depth_scale].\n"
"[b]Note:[/b] This property is only read when the project starts. To set the "
"subsurface scattering scale at runtime, call [method "
"RenderingServer.sub_surface_scattering_set_scale] instead."
msgstr ""
"Масштабирует расстояние, на котором берутся образцы для эффекта "
"подповерхностного рассеивания. Изменение этого значения не влияет на "
"производительность, но более высокие значения приведут к значительным "
"артефактам, поскольку образцы станут явно разбросанными. Более низкое "
"значение приводит к меньшему распространению рассеянного света. См. также "
"[member rendering/environment/subsurface_scattering/"
"subsurface_scattering_depth_scale].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"задать масштаб подповерхностного рассеивания во время выполнения, вместо "
"этого вызовите [method RenderingServer.sub_surface_scattering_set_scale]."

msgid ""
"Enables filtering of the volumetric fog effect prior to integration. This "
"substantially blurs the fog which reduces fine details but also smooths out "
"harsh edges and aliasing artifacts. Disable when more detail is required."
msgstr ""
"Включает фильтрацию эффекта объемного тумана перед интеграцией. Это "
"существенно размывает туман, что снижает мелкие детали, но также сглаживает "
"резкие края и артефакты наложения. Отключайте, когда требуется больше деталей."

msgid ""
"Number of slices to use along the depth of the froxel buffer for volumetric "
"fog. A lower number will be more efficient but may result in artifacts "
"appearing during camera movement. See also [member "
"Environment.volumetric_fog_length]."
msgstr ""
"Количество срезов для использования по глубине буфера froxel для объемного "
"тумана. Меньшее число будет более эффективным, но может привести к появлению "
"артефактов во время движения камеры. См. также [member "
"Environment.volumetric_fog_length]."

msgid ""
"Base size used to determine size of froxel buffer in the camera X-axis and Y-"
"axis. The final size is scaled by the aspect ratio of the screen, so actual "
"values may differ from what is set. Set a larger size for more detailed fog, "
"set a smaller size for better performance."
msgstr ""
"Базовый размер используется для определения размера буфера froxel по осям X и "
"Y камеры. Окончательный размер масштабируется в соответствии с соотношением "
"сторон экрана, поэтому фактические значения могут отличаться от "
"установленных. Установите больший размер для более детального тумана, меньший "
"размер для лучшей производительности."

msgid ""
"Sets the driver to be used by the renderer when using the Compatibility "
"renderer. Editing this property has no effect in the default configuration, "
"as first-party platforms each have platform-specific overrides. Use those "
"overrides to configure the driver for each platform.\n"
"This can be overridden using the [code]--rendering-driver <driver>[/code] "
"command line argument.\n"
"Supported values are:\n"
"- [code]opengl3[/code], OpenGL 3.3 on desktop platforms, OpenGL ES 3.0 on "
"mobile platforms, WebGL 2.0 on web.\n"
"- [code]opengl3_angle[/code], OpenGL ES 3.0 using the ANGLE compatibility "
"layer, supported on macOS (over native OpenGL) and Windows (over Direct3D "
"11).\n"
"- [code]opengl3_es[/code], OpenGL ES 3.0 on Linux/BSD.\n"
"[b]Note:[/b] The availability of these options depends on whether the engine "
"was compiled with support for them (determined by SCons options "
"[code]opengl3[/code] and [code]angle_libs[/code]).\n"
"[b]Note:[/b] The actual rendering driver may be automatically changed by the "
"engine as a result of a fallback, or a user-specified command line argument. "
"To get the actual rendering driver that is used at runtime, use [method "
"RenderingServer.get_current_rendering_driver_name] instead of reading this "
"project setting's value."
msgstr ""
"Устанавливает драйвер, который будет использоваться рендерером при "
"использовании рендерера Compatibility. Изменение этого свойства не влияет на "
"конфигурацию по умолчанию, так как у каждой из платформ первой стороны есть "
"переопределения, специфичные для платформы. Используйте эти переопределения "
"для настройки драйвера для каждой платформы.\n"
"Это можно переопределить с помощью аргумента командной строки [code]--"
"rendering-driver <driver>[/code].\n"
"Поддерживаемые значения:\n"
"- [code]opengl3[/code], OpenGL 3.3 на настольных платформах, OpenGL ES 3.0 на "
"мобильных платформах, WebGL 2.0 в веб-приложениях.\n"
"- [code]opengl3_angle[/code], OpenGL ES 3.0 с использованием уровня "
"совместимости ANGLE, поддерживается в macOS (поверх собственного OpenGL) и "
"Windows (поверх Direct3D 11).\n"
"- [code]opengl3_es[/code], OpenGL ES 3.0 в Linux/BSD.\n"
"[b]Примечание:[/b] Доступность этих параметров зависит от того, был ли движок "
"скомпилирован с поддержкой для них (определяется параметрами SCons "
"[code]opengl3[/code] и [code]angle_libs[/code]).\n"
"[b]Примечание:[/b] Фактический драйвер рендеринга может быть автоматически "
"изменен движком в результате отката или указанного пользователем аргумента "
"командной строки. Чтобы получить фактический драйвер рендеринга, который "
"используется во время выполнения, используйте [method "
"RenderingServer.get_current_rendering_driver_name] вместо чтения значения "
"этого параметра проекта."

msgid ""
"Android override for [member rendering/gl_compatibility/driver].\n"
"Only one option is supported:\n"
"- [code]opengl3[/code], OpenGL ES 3.0 from native drivers."
msgstr ""
"Переопределение Android для [member rendering/gl_compatibility/driver].\n"
"Поддерживается только один вариант:\n"
"- [code]opengl3[/code], OpenGL ES 3.0 из собственных драйверов."

msgid ""
"iOS override for [member rendering/gl_compatibility/driver].\n"
"Only one option is supported:\n"
"- [code]opengl3[/code], OpenGL ES 3.0 from native drivers."
msgstr ""
"Переопределение iOS для [member rendering/gl_compatibility/driver].\n"
"Поддерживается только один вариант:\n"
"- [code]opengl3[/code], OpenGL ES 3.0 из собственных драйверов."

msgid ""
"LinuxBSD override for [member rendering/gl_compatibility/driver].\n"
"Two options are supported:\n"
"- [code]opengl3[/code] (default), OpenGL 3.3 from native drivers.\n"
"- [code]opengl3_es[/code], OpenGL ES 3.0 from native drivers. If [member "
"rendering/gl_compatibility/fallback_to_gles] is enabled, this is used as a "
"fallback if OpenGL 3.3 is not supported."
msgstr ""
"LinuxBSD переопределяет [member rendering/gl_compatibility/driver].\n"
"Поддерживаются два варианта:\n"
"- [code]opengl3[/code] (по умолчанию), OpenGL 3.3 из собственных драйверов.\n"
"- [code]opengl3_es[/code], OpenGL ES 3.0 из собственных драйверов. Если "
"включено [member rendering/gl_compatibility/fallback_to_gles], это "
"используется как запасной вариант, если OpenGL 3.3 не поддерживается."

msgid ""
"macOS override for [member rendering/gl_compatibility/driver].\n"
"Two options are supported:\n"
"- [code]opengl3[/code] (default), OpenGL 3.3 from native drivers. If [member "
"rendering/gl_compatibility/fallback_to_native] is enabled, this is used as a "
"fallback if ANGLE is configured as the preferred driver but not supported.\n"
"- [code]opengl3_angle[/code], OpenGL ES 3.0 using the ANGLE compatibility "
"layer over native OpenGL drivers. If [member rendering/gl_compatibility/"
"fallback_to_angle] is enabled, this is used as a fallback if OpenGL 3.3 is "
"not supported."
msgstr ""
"macOS переопределяет [member rendering/gl_compatibility/driver].\n"
"Поддерживаются два варианта:\n"
"- [code]opengl3[/code] (по умолчанию), OpenGL 3.3 из собственных драйверов. "
"Если включен [member rendering/gl_compatibility/fallback_to_native], это "
"используется как резервный вариант, если ANGLE настроен как предпочтительный "
"драйвер, но не поддерживается.\n"
"- [code]opengl3_angle[/code], OpenGL ES 3.0 с использованием уровня "
"совместимости ANGLE поверх собственных драйверов OpenGL. Если включен [member "
"rendering/gl_compatibility/fallback_to_angle], это используется как резервный "
"вариант, если OpenGL 3.3 не поддерживается."

msgid ""
"Web override for [member rendering/gl_compatibility/driver].\n"
"Only one option is supported:\n"
"- [code]opengl3[/code], WebGL 2.0. The underlying native API depends on the "
"target OS, browser, and browser configuration."
msgstr ""
"Web-переопределение для [member rendering/gl_compatibility/driver].\n"
"Поддерживается только один вариант:\n"
"- [code]opengl3[/code], WebGL 2.0. Базовый собственный API зависит от целевой "
"ОС, браузера и конфигурации браузера."

msgid ""
"Windows override for [member rendering/gl_compatibility/driver].\n"
"Two options are supported:\n"
"- [code]opengl3[/code] (default), OpenGL 3.3 from native drivers. If [member "
"rendering/gl_compatibility/fallback_to_native] is enabled, this is used as a "
"fallback if ANGLE is configured as the preferred driver but not supported.\n"
"- [code]opengl3_angle[/code], OpenGL ES 3.0 using the ANGLE compatibility "
"layer over native Direct3D 11 drivers. If [member rendering/gl_compatibility/"
"fallback_to_angle] is enabled, this is used as a fallback if OpenGL 3.3 is "
"not supported. By default, ANGLE is used as the default driver for some "
"devices listed in [member rendering/gl_compatibility/force_angle_on_devices]."
msgstr ""
"Переопределение Windows для [member rendering/gl_compatibility/driver].\n"
"Поддерживаются два варианта:\n"
"- [code]opengl3[/code] (по умолчанию), OpenGL 3.3 из собственных драйверов. "
"Если включено [member rendering/gl_compatibility/fallback_to_native], это "
"используется как резервный вариант, если ANGLE настроен как предпочтительный "
"драйвер, но не поддерживается.\n"
"- [code]opengl3_angle[/code], OpenGL ES 3.0 с использованием уровня "
"совместимости ANGLE поверх собственных драйверов Direct3D 11. Если включено "
"[member rendering/gl_compatibility/fallback_to_angle], это используется как "
"резервный вариант, если OpenGL 3.3 не поддерживается. По умолчанию ANGLE "
"используется как драйвер по умолчанию для некоторых устройств, перечисленных "
"в [member rendering/gl_compatibility/force_angle_on_devices]."

msgid ""
"If [code]true[/code], the Compatibility renderer will fall back to ANGLE if "
"native OpenGL is not supported or the device is listed in [member rendering/"
"gl_compatibility/force_angle_on_devices].\n"
"[b]Note:[/b] This setting is implemented only on Windows."
msgstr ""
"Если [code]true[/code], то совместимый рендерер будет использовать ANGLE, "
"если нативный OpenGL не поддерживается или устройство указано в [member "
"rendering/gl_compatibility/force_angle_on_devices].\n"
"[b]Примечание:[/b] Этот параметр реализован только в Windows."

msgid ""
"If [code]true[/code], the Compatibility renderer will fall back to OpenGLES "
"if desktop OpenGL is not supported.\n"
"[b]Note:[/b] This setting is implemented only on Linux/X11."
msgstr ""
"Если [code]true[/code], то модуль рендеринга совместимости будет использовать "
"OpenGL ES, если десктопный OpenGL не поддерживается.\n"
"[b]Примечание:[/b] Этот параметр реализован только в Linux/X11."

msgid ""
"If [code]true[/code], the Compatibility renderer will fall back to native "
"OpenGL if ANGLE is not supported, or ANGLE dynamic libraries aren't found.\n"
"[b]Note:[/b] This setting is implemented on macOS and Windows."
msgstr ""
"Если [code]true[/code], то совместимый рендерер будет использовать нативный "
"OpenGL, если ANGLE не поддерживается или динамические библиотеки ANGLE не "
"найдены.\n"
"[b]Примечание:[/b] Этот параметр реализован в macOS и Windows."

msgid ""
"An [Array] of devices which should always use the ANGLE renderer.\n"
"Each entry is a [Dictionary] with the following keys: [code]vendor[/code] and "
"[code]name[/code]. [code]name[/code] can be set to [code]*[/code] to add all "
"devices with the specified [code]vendor[/code].\n"
"[b]Note:[/b] This setting is implemented only on Windows."
msgstr ""
"[Array] устройств, которые всегда должны использовать рендерер ANGLE.\n"
"Каждая запись — это [Dictionary] со следующими ключами: [code]vendor[/code] "
"(поставщик) и [code]name[/code] (имя). [code]name[/code] можно установить на "
"[code]*[/code], чтобы добавить все устройства с указанным [code]vendor[/"
"code].\n"
"[b]Примечание:[/b] Этот параметр реализован только в Windows."

msgid ""
"Maximum number of canvas items commands that can be drawn in a single "
"viewport update. If more render commands are issued they will be ignored. "
"Decreasing this limit may improve performance on bandwidth limited devices. "
"Increase this limit if you find that not all objects are being drawn in a "
"frame."
msgstr ""
"Максимальное количество команд элементов холста, которые можно нарисовать за "
"одно обновление области просмотра. Если будет выдано больше команд "
"рендеринга, они будут проигнорированы. Уменьшение этого предела может "
"улучшить производительность на устройствах с ограниченной пропускной "
"способностью. Увеличьте этот предел, если вы обнаружите, что не все объекты "
"рисуются в кадре."

msgid ""
"If [code]true[/code], disables the threaded optimization feature from the "
"NVIDIA drivers, which are known to cause stuttering in most OpenGL "
"applications.\n"
"[b]Note:[/b] This setting only works on Windows, as threaded optimization is "
"disabled by default on other platforms."
msgstr ""
"Если [code]true[/code], отключает функцию потоковой оптимизации из драйверов "
"NVIDIA, которые, как известно, вызывают подтормаживания в большинстве "
"приложений OpenGL.\n"
"[b]Примечание:[/b] Эта настройка работает только в Windows, так как на других "
"платформах потоковая оптимизация по умолчанию отключена."

msgid ""
"If [code]true[/code], renders [VoxelGI] and SDFGI ([member "
"Environment.sdfgi_enabled]) buffers at halved resolution (e.g. 960×540 when "
"the viewport size is 1920×1080). This improves performance significantly when "
"VoxelGI or SDFGI is enabled, at the cost of artifacts that may be visible on "
"polygon edges. The loss in quality becomes less noticeable as the viewport "
"resolution increases. [LightmapGI] rendering is not affected by this "
"setting.\n"
"[b]Note:[/b] This property is only read when the project starts. To set half-"
"resolution GI at run-time, call [method "
"RenderingServer.gi_set_use_half_resolution] instead."
msgstr ""
"Если [code]true[/code], рендерит буферы [VoxelGI] и SDFGI ([member "
"Environment.sdfgi_enabled]) с половинным разрешением (например, 960×540 при "
"размере области просмотра 1920×1080). Это значительно повышает "
"производительность при включении VoxelGI или SDFGI за счет артефактов, "
"которые могут быть видны на краях полигонов. Потеря качества становится менее "
"заметной по мере увеличения разрешения области просмотра. Рендеринг "
"[LightmapGI] не зависит от этой настройки.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"установить половинное разрешение GI во время выполнения, вместо этого "
"вызовите [method RenderingServer.gi_set_use_half_resolution]."

msgid ""
"The number of frames to use for converging signed distance field global "
"illumination. Higher values lead to a less noisy result, at the cost of "
"taking a longer time to fully converge. This means the scene's global "
"illumination will be too dark for a longer period of time, especially when "
"the camera moves fast. The actual convergence speed depends on rendered "
"framerate. For example, with the default setting of 30 frames, rendering at "
"60 FPS will make SDFGI fully converge after 0.5 seconds. See also [member "
"rendering/global_illumination/sdfgi/frames_to_update_lights] and [member "
"rendering/global_illumination/sdfgi/probe_ray_count].\n"
"[b]Note:[/b] This property is only read when the project starts. To control "
"SDFGI convergence speed at runtime, call [method "
"RenderingServer.environment_set_sdfgi_frames_to_converge] instead."
msgstr ""
"Количество кадров, используемых для сходимости глобального освещения поля "
"расстояний со знаком. Более высокие значения приводят к менее шумному "
"результату за счет более длительного времени для полной сходимости. Это "
"означает, что глобальное освещение сцены будет слишком темным в течение более "
"длительного периода времени, особенно когда камера быстро движется. "
"Фактическая скорость сходимости зависит от частоты кадров визуализации. "
"Например, при настройке по умолчанию 30 кадров, рендеринг со скоростью 60 "
"кадров в секунду приведет к полной сходимости SDFGI через 0,5 секунды. См. "
"также [member rendering/global_illumination/sdfgi/frames_to_update_lights] и "
"[member rendering/global_illumination/sdfgi/probe_ray_count].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"управлять скоростью сходимости SDFGI во время выполнения, вместо этого "
"вызовите [method RenderingServer.environment_set_sdfgi_frames_to_converge]."

msgid ""
"The number of frames over which dynamic lights should be updated in signed "
"distance field global illumination. Higher values take more time to update "
"indirect lighting coming from dynamic lights, but result in better "
"performance when many dynamic lights are present. See also [member rendering/"
"global_illumination/sdfgi/frames_to_converge] and [member rendering/"
"global_illumination/sdfgi/probe_ray_count].\n"
"[b]Note:[/b] This only affects [Light3D] nodes whose [member "
"Light3D.light_bake_mode] is [constant Light3D.BAKE_DYNAMIC] (which is the "
"default). Consider making non-moving lights use the [constant "
"Light3D.BAKE_STATIC] bake mode to improve performance.\n"
"[b]Note:[/b] This property is only read when the project starts. To control "
"SDFGI light update speed at runtime, call [method "
"RenderingServer.environment_set_sdfgi_frames_to_update_light] instead."
msgstr ""
"Количество кадров, в течение которых динамические источники света должны "
"обновляться в глобальном освещении поля со знаком расстояния. Более высокие "
"значения требуют больше времени для обновления непрямого освещения, "
"исходящего от динамических источников света, но приводят к лучшей "
"производительности при наличии большого количества динамических источников "
"света. См. также [member rendering/global_illumination/sdfgi/"
"frames_to_converge] и [member rendering/global_illumination/sdfgi/"
"probe_ray_count].\n"
"[b]Примечание:[/b] Это влияет только на узлы [Light3D], у которых [member "
"Light3D.light_bake_mode] равен [constant Light3D.BAKE_DYNAMIC] (что является "
"значением по умолчанию). Рассмотрите возможность использования неподвижных "
"источников света в режиме запекания [constant Light3D.BAKE_STATIC] для "
"повышения производительности.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"управлять скоростью обновления освещения SDFGI во время выполнения, вместо "
"этого вызовите [method "
"RenderingServer.environment_set_sdfgi_frames_to_update_light]."

msgid ""
"The number of rays to throw per frame when computing signed distance field "
"global illumination. Higher values lead to a less noisy result, at the cost "
"of performance. See also [member rendering/global_illumination/sdfgi/"
"frames_to_converge] and [member rendering/global_illumination/sdfgi/"
"frames_to_update_lights].\n"
"[b]Note:[/b] This property is only read when the project starts. To control "
"SDFGI quality at runtime, call [method "
"RenderingServer.environment_set_sdfgi_ray_count] instead."
msgstr ""
"Количество лучей, которые нужно отбросить за кадр при вычислении глобального "
"освещения поля расстояний со знаком. Более высокие значения приводят к менее "
"шумному результату за счет производительности. См. также [member rendering/"
"global_illumination/sdfgi/frames_to_converge] и [member rendering/"
"global_illumination/sdfgi/frames_to_update_lights].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"контролировать качество SDFGI во время выполнения, вместо этого вызовите "
"[method RenderingServer.environment_set_sdfgi_ray_count]."

msgid ""
"The VoxelGI quality to use. High quality leads to more precise lighting and "
"better reflections, but is slower to render. This setting does not affect the "
"baked data and doesn't require baking the [VoxelGI] again to apply.\n"
"[b]Note:[/b] This property is only read when the project starts. To control "
"VoxelGI quality at runtime, call [method "
"RenderingServer.voxel_gi_set_quality] instead."
msgstr ""
"Качество VoxelGI для использования. Высокое качество приводит к более точному "
"освещению и лучшим отражениям, но медленнее рендерится. Эта настройка не "
"влияет на запеченные данные и не требует повторного запекания [VoxelGI] для "
"применения.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"управлять качеством VoxelGI во время выполнения, вместо этого вызовите "
"[method RenderingServer.voxel_gi_set_quality]."

msgid ""
"The maximum number of rays that can be thrown per pass when baking lightmaps "
"with [LightmapGI]. Depending on the scene, adjusting this value may result in "
"higher GPU utilization when baking lightmaps, leading to faster bake times.\n"
"[b]Note:[/b] Using a value that is too high for your system can cause crashes "
"due to the GPU being unresponsive for long periods of time, and the graphics "
"driver being reset by the OS."
msgstr ""
"Максимальное количество лучей, которые можно выбросить за один проход при "
"запекании карт освещения с помощью [LightmapGI]. В зависимости от сцены, "
"изменение этого значения может привести к более высокой загрузке графического "
"процессора при запекании карт освещения, что приведет к более быстрому "
"времени запекания.\n"
"[b]Примечание:[/b] Использование слишком высокого для вашей системы значения "
"может привести к сбоям из-за того, что графический процессор не будет "
"отвечать в течение длительного времени, а графический драйвер будет сброшен "
"ОС."

msgid ""
"The maximum number of rays that can be thrown per pass when baking dynamic "
"object lighting in [LightmapProbe]s with [LightmapGI]. Depending on the "
"scene, adjusting this value may result in higher GPU utilization when baking "
"lightmaps, leading to faster bake times.\n"
"[b]Note:[/b] Using a value that is too high for your system can cause crashes "
"due to the GPU being unresponsive for long periods of time, and the graphics "
"driver being reset by the OS."
msgstr ""
"Максимальное количество лучей, которые могут быть выброшены за один проход "
"при запекании динамического освещения объектов в [LightmapProbe]s с "
"[LightmapGI]. В зависимости от сцены, изменение этого значения может привести "
"к более высокой загрузке графического процессора при запекании карт "
"освещения, что приведет к более быстрому времени запекания.\n"
"[b]Примечание:[/b] Использование слишком высокого для вашей системы значения "
"может привести к сбоям из-за того, что графический процессор не будет "
"отвечать в течение длительного времени, а графический драйвер будет сброшен "
"ОС."

msgid ""
"The maximum number of retry rays that can be thrown per pass when hitting a "
"transparent surface when baking lightmaps with [LightmapGI]. Depending on the "
"scene, reducing this value may lead to faster bake times.\n"
"[b]Note:[/b] Using a value that is too high for your system can cause crashes "
"due to the GPU being unresponsive for long periods of time, and the graphics "
"driver being reset by the OS."
msgstr ""
"Максимальное количество повторных лучей, которые могут быть выброшены за "
"проход при попадании на прозрачную поверхность при запекании карт освещения с "
"помощью [LightmapGI]. В зависимости от сцены, уменьшение этого значения может "
"привести к более быстрому времени запекания.\n"
"[b]Примечание:[/b] Использование слишком высокого для вашей системы значения "
"может привести к сбоям из-за того, что графический процессор не отвечает в "
"течение длительного времени, а графический драйвер сбрасывается ОС."

msgid ""
"The region size to use when baking lightmaps with [LightmapGI]. The specified "
"value is rounded up to the nearest power of 2.\n"
"[b]Note:[/b] Using a value that is too high for your system can cause crashes "
"due to the GPU being unresponsive for long periods of time, and the graphics "
"driver being reset by the OS."
msgstr ""
"Размер области, используемый при запекании карт освещения с помощью "
"[LightmapGI]. Указанное значение округляется до ближайшей степени 2.\n"
"[b]Примечание:[/b] Использование слишком большого для вашей системы значения "
"может привести к сбоям из-за того, что графический процессор не будет "
"отвечать в течение длительного времени, а графический драйвер будет сброшен "
"ОС."

msgid ""
"The number of rays to use for baking dynamic object lighting in "
"[LightmapProbe]s when [member LightmapGI.quality] is [constant "
"LightmapGI.BAKE_QUALITY_HIGH]."
msgstr ""
"Количество лучей, используемых для запекания динамического освещения объектов "
"в [LightmapProbe], когда [member LightmapGI.quality] равен [constant "
"LightmapGI.BAKE_QUALITY_HIGH]."

msgid ""
"The number of rays to use for baking lightmaps with [LightmapGI] when [member "
"LightmapGI.quality] is [constant LightmapGI.BAKE_QUALITY_HIGH]."
msgstr ""
"Количество лучей, используемых для запекания карт освещения с помощью "
"[LightmapGI], когда [member LightmapGI.quality] равен [constant "
"LightmapGI.BAKE_QUALITY_HIGH]."

msgid ""
"The number of rays to use for baking dynamic object lighting in "
"[LightmapProbe]s when [member LightmapGI.quality] is [constant "
"LightmapGI.BAKE_QUALITY_LOW]."
msgstr ""
"Количество лучей, используемых для запекания динамического освещения объектов "
"в [LightmapProbe], когда [member LightmapGI.quality] равен [constant "
"LightmapGI.BAKE_QUALITY_LOW]."

msgid ""
"The number of rays to use for baking lightmaps with [LightmapGI] when [member "
"LightmapGI.quality] is [constant LightmapGI.BAKE_QUALITY_LOW]."
msgstr ""
"Количество лучей, используемых для запекания карт освещения с помощью "
"[LightmapGI], когда [member LightmapGI.quality] равен [constant "
"LightmapGI.BAKE_QUALITY_LOW]."

msgid ""
"The number of rays to use for baking dynamic object lighting in "
"[LightmapProbe]s when [member LightmapGI.quality] is [constant "
"LightmapGI.BAKE_QUALITY_MEDIUM]."
msgstr ""
"Количество лучей, используемых для запекания динамического освещения объектов "
"в [LightmapProbe], когда [member LightmapGI.quality] равен [constant "
"LightmapGI.BAKE_QUALITY_MEDIUM]."

msgid ""
"The number of rays to use for baking lightmaps with [LightmapGI] when [member "
"LightmapGI.quality] is [constant LightmapGI.BAKE_QUALITY_MEDIUM]."
msgstr ""
"Количество лучей, используемых для запекания карт освещения с помощью "
"[LightmapGI], когда [member LightmapGI.quality] равен [constant "
"LightmapGI.BAKE_QUALITY_MEDIUM]."

msgid ""
"The number of rays to use for baking dynamic object lighting in "
"[LightmapProbe]s when [member LightmapGI.quality] is [constant "
"LightmapGI.BAKE_QUALITY_ULTRA]."
msgstr ""
"Количество лучей, используемых для запекания динамического освещения объектов "
"в [LightmapProbe]-ов, когда [member LightmapGI.quality] равен [constant "
"LightmapGI.BAKE_QUALITY_ULTRA]."

msgid ""
"The number of rays to use for baking lightmaps with [LightmapGI] when [member "
"LightmapGI.quality] is [constant LightmapGI.BAKE_QUALITY_ULTRA]."
msgstr ""
"Количество лучей, используемых для запекания карт освещения с помощью "
"[LightmapGI], когда [member LightmapGI.quality] равен [constant "
"LightmapGI.BAKE_QUALITY_ULTRA]."

msgid ""
"Denoiser tool used for denoising lightmaps.\n"
"Using [url=https://www.openimagedenoise.org/]OpenImageDenoise[/url] (OIDN) "
"requires configuring a path to an OIDN executable in the editor settings at "
"[member EditorSettings.filesystem/tools/oidn/oidn_denoise_path]. OIDN can be "
"downloaded from [url=https://www.openimagedenoise.org/"
"downloads.html]OpenImageDenoise's downloads page[/url].\n"
"OIDN will use GPU acceleration when available. Unlike JNLM which uses compute "
"shaders for acceleration, OIDN uses vendor-specific acceleration methods. For "
"GPU acceleration to be available, the following libraries must be installed "
"on the system depending on your GPU:\n"
"- NVIDIA GPUs: CUDA libraries\n"
"- AMD GPUs: HIP libraries\n"
"- Intel GPUs: SYCL libraries\n"
"If no GPU acceleration is configured on the system, multi-threaded CPU-based "
"denoising will be performed instead. This CPU-based denoising is "
"significantly slower than the JNLM denoiser in most cases."
msgstr ""
"Инструмент Denoiser, используемый для шумоподавления карт освещения.\n"
"Использование [url=https://www.openimagedenoise.org/]OpenImageDenoise[/url] "
"(OIDN) требует настройки пути к исполняемому файлу OIDN в настройках "
"редактора в [member EditorSettings.filesystem/tools/oidn/oidn_denoise_path]. "
"OIDN можно загрузить со [url=https://www.openimagedenoise.org/"
"downloads.html]страницы загрузок OpenImageDenoise[/url].\n"
"OIDN будет использовать ускорение GPU, если оно доступно. В отличие от JNLM, "
"который использует вычислительные шейдеры для ускорения, OIDN использует "
"методы ускорения, специфичные для поставщика. Для ускорения GPU в системе "
"должны быть установлены следующие библиотеки в зависимости от вашего GPU:\n"
"- Графические процессоры NVIDIA: библиотеки CUDA\n"
"- Графические процессоры AMD: библиотеки HIP\n"
"- Графические процессоры Intel: библиотеки SYCL\n"
"Если в системе не настроено ускорение GPU, вместо этого будет выполняться "
"многопоточное шумоподавление на базе CPU. В большинстве случаев "
"шумоподавление на базе CPU значительно медленнее шумоподавителя JNLM."

msgid ""
"If [code]true[/code], applies a bicubic filter during lightmap sampling. This "
"makes lightmaps look much smoother, at a moderate performance cost.\n"
"[b]Note:[/b] The bicubic filter exaggerates the 'bleeding' effect that occurs "
"when a lightmap's resolution is low enough."
msgstr ""
"Если [code]true[/code], применяет бикубический фильтр во время выборки карты "
"освещения. Это делает карты освещения более гладкими при умеренных затратах "
"производительности.\n"
"[b]Примечание:[/b] Бикубический фильтр усиливает эффект «протекания», который "
"возникает, когда разрешение карты освещения достаточно низкое."

msgid ""
"The texel_size that is used to calculate the [member Mesh.lightmap_size_hint] "
"on [PrimitiveMesh] resources if [member PrimitiveMesh.add_uv2] is enabled."
msgstr ""
"Texel_size, который используется для расчета [member Mesh.lightmap_size_hint] "
"для ресурсов [PrimitiveMesh], если включен [member PrimitiveMesh.add_uv2]."

msgid ""
"The framerate-independent update speed when representing dynamic object "
"lighting from [LightmapProbe]s. Higher values make dynamic object lighting "
"update faster. Higher values can prevent fast-moving objects from having "
"\"outdated\" indirect lighting displayed on them, at the cost of possible "
"flickering when an object moves from a bright area to a shaded area."
msgstr ""
"Независимая от частоты кадров скорость обновления при отображении "
"динамического освещения объектов из [LightmapProbe]. Более высокие значения "
"ускоряют обновление динамического освещения объектов. Более высокие значения "
"могут предотвратить отображение \"устаревшего\" непрямого освещения на быстро "
"движущихся объектах за счет возможного мерцания при перемещении объекта из "
"яркой области в затененную."

msgid ""
"Use 16 bits for the directional shadow depth map. Enabling this results in "
"shadows having less precision and may result in shadow acne, but can lead to "
"performance improvements on some devices."
msgstr ""
"Используйте 16 бит для карты глубины направленной тени. Включение этого "
"параметра приводит к снижению точности теней и может привести к появлению "
"акне в тенях, но может привести к повышению производительности на некоторых "
"устройствах."

msgid ""
"The directional shadow's size in pixels. Higher values will result in sharper "
"shadows, at the cost of performance. The value is rounded up to the nearest "
"power of 2."
msgstr ""
"Размер направленной тени в пикселях. Более высокие значения приведут к более "
"резким теням за счет производительности. Значение округляется до ближайшей "
"степени 2."

msgid ""
"Lower-end override for [member rendering/lights_and_shadows/"
"directional_shadow/size] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
"Переопределение нижнего уровня для [member rendering/lights_and_shadows/"
"directional_shadow/size] на мобильных устройствах из-за проблем с "
"производительностью или поддержкой драйвера."

msgid ""
"Quality setting for shadows cast by [DirectionalLight3D]s. Higher quality "
"settings use more samples when reading from shadow maps and are thus slower. "
"Low quality settings may result in shadows looking grainy.\n"
"[b]Note:[/b] The Soft Very Low setting will automatically multiply "
"[i]constant[/i] shadow blur by 0.75x to reduce the amount of noise visible. "
"This automatic blur change only affects the constant blur factor defined in "
"[member Light3D.shadow_blur], not the variable blur performed by "
"[DirectionalLight3D]s' [member Light3D.light_angular_distance].\n"
"[b]Note:[/b] The Soft High and Soft Ultra settings will automatically "
"multiply [i]constant[/i] shadow blur by 1.5× and 2× respectively to make "
"better use of the increased sample count. This increased blur also improves "
"stability of dynamic object shadows."
msgstr ""
"Настройка качества для теней, отбрасываемых [DirectionalLight3D]. Настройки "
"более высокого качества используют больше выборок при чтении из карт теней и, "
"таким образом, работают медленнее. Настройки низкого качества могут привести "
"к тому, что тени будут выглядеть зернистыми.\n"
"[b]Примечание:[/b] Настройка Soft Very Low автоматически умножит [i]constant[/"
"i] размытие тени на 0,75x, чтобы уменьшить количество видимого шума. Это "
"автоматическое изменение размытия влияет только на постоянный коэффициент "
"размытия, определенный в [member Light3D.shadow_blur], а не на переменное "
"размытие, выполняемое [member Light3D.light_angular_distance] "
"[DirectionalLight3D].\n"
"[b]Примечание:[/b] Настройки Soft High и Soft Ultra автоматически умножат "
"[i]constant[/i] размытие тени на 1,5× и 2× соответственно, чтобы лучше "
"использовать увеличенное количество выборок. Это повышенное размытие также "
"улучшает стабильность динамических теней объектов."

msgid ""
"Lower-end override for [member rendering/lights_and_shadows/"
"directional_shadow/soft_shadow_filter_quality] on mobile devices, due to "
"performance concerns or driver support."
msgstr ""
"Переопределение нижнего уровня для [member rendering/lights_and_shadows/"
"directional_shadow/soft_shadow_filter_quality] на мобильных устройствах из-за "
"проблем с производительностью или поддержкой драйверов."

msgid ""
"Use 16 bits for the omni/spot shadow depth map. Enabling this results in "
"shadows having less precision and may result in shadow acne, but can lead to "
"performance improvements on some devices."
msgstr ""
"Используйте 16 бит для карты глубины тени omni/spot. Включение этого "
"параметра приводит к снижению точности теней и может привести к появлению "
"акне в тенях, но может привести к повышению производительности на некоторых "
"устройствах."

msgid ""
"The subdivision amount of the first quadrant on the shadow atlas. See the "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] for more information."
msgstr ""
"Степень подразделения первого квадранта атласа теней. Подробнее см. в "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]документации[/url]."

msgid ""
"The subdivision amount of the second quadrant on the shadow atlas. See the "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] for more information."
msgstr ""
"Степень подразделения второго квадранта на атласе теней. Подробнее см. в "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]документации[/url]."

msgid ""
"The subdivision amount of the third quadrant on the shadow atlas. See the "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] for more information."
msgstr ""
"Степень подразделения третьего квадранта на атласе теней. Подробнее см. в "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]документации[/url]."

msgid ""
"The subdivision amount of the fourth quadrant on the shadow atlas. See the "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] for more information."
msgstr ""
"Степень подразделения четвёртого квадранта на атласе теней. Подробнее см. в "
"[url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]документации[/url]."

msgid ""
"The size of the shadow atlas used for [OmniLight3D] and [SpotLight3D] nodes. "
"See the [url=$DOCS_URL/tutorials/tutorials/3d/lights_and_shadows.html#shadow-"
"atlas]documentation[/url] for more information."
msgstr ""
"Размер атласа теней, используемого для узлов [OmniLight3D] и [SpotLight3D]. "
"Подробнее см. в [url=$DOCS_URL/tutorials/tutorials/3d/"
"lights_and_shadows.html#shadow-atlas]документации[/url]."

msgid ""
"Lower-end override for [member rendering/lights_and_shadows/positional_shadow/"
"atlas_size] on mobile devices, due to performance concerns or driver support."
msgstr ""
"Переопределение нижнего уровня для [member rendering/lights_and_shadows/"
"positional_shadow/atlas_size] на мобильных устройствах из-за проблем с "
"производительностью или поддержкой драйверов."

msgid ""
"Quality setting for shadows cast by [OmniLight3D]s and [SpotLight3D]s. Higher "
"quality settings use more samples when reading from shadow maps and are thus "
"slower. Low quality settings may result in shadows looking grainy.\n"
"[b]Note:[/b] The Soft Very Low setting will automatically multiply "
"[i]constant[/i] shadow blur by 0.75x to reduce the amount of noise visible. "
"This automatic blur change only affects the constant blur factor defined in "
"[member Light3D.shadow_blur], not the variable blur performed by "
"[DirectionalLight3D]s' [member Light3D.light_angular_distance].\n"
"[b]Note:[/b] The Soft High and Soft Ultra settings will automatically "
"multiply shadow blur by 1.5× and 2× respectively to make better use of the "
"increased sample count. This increased blur also improves stability of "
"dynamic object shadows."
msgstr ""
"Настройка качества для теней, отбрасываемых [OmniLight3D] и [SpotLight3D]. "
"Настройки более высокого качества используют больше выборок при чтении карт "
"теней и, таким образом, работают медленнее. Настройки низкого качества могут "
"привести к тому, что тени будут выглядеть зернистыми.\n"
"[b]Примечание:[/b] Настройка Soft Very Low автоматически умножит "
"[i]постоянное[/i] размытие тени на 0,75x, чтобы уменьшить количество видимого "
"шума. Это автоматическое изменение размытия влияет только на постоянный "
"коэффициент размытия, определенный в [member Light3D.shadow_blur], а не на "
"переменное размытие, выполняемое [member Light3D.light_angular_distance] "
"[DirectionalLight3D].\n"
"[b]Примечание:[/b] Настройки Soft High и Soft Ultra автоматически умножат "
"размытие тени на 1,5× и 2× соответственно, чтобы лучше использовать "
"увеличенное количество выборок. Это повышенное размытие также улучшает "
"стабильность динамических теней объектов."

msgid ""
"Lower-end override for [member rendering/lights_and_shadows/positional_shadow/"
"soft_shadow_filter_quality] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
"Переопределение нижнего уровня для [member rendering/lights_and_shadows/"
"positional_shadow/soft_shadow_filter_quality] на мобильных устройствах из-за "
"проблем с производительностью или поддержкой драйвера."

msgid ""
"If [code]true[/code], items that cannot cast shadows into the view frustum "
"will not be rendered into shadow maps.\n"
"This can increase performance."
msgstr ""
"Если [code]true[/code], элементы, которые не могут отбрасывать тени в "
"пирамиду видимости, не будут отображаться в картах теней. \n"
"Это может повысить производительность."

msgid ""
"Enables the use of physically based units for light sources. Physically based "
"units tend to be much larger than the arbitrary units used by Godot, but they "
"can be used to match lighting within Godot to real-world lighting. Due to the "
"large dynamic range of lighting conditions present in nature, Godot bakes "
"exposure into the various lighting quantities before rendering. Most light "
"sources bake exposure automatically at run time based on the active "
"[CameraAttributes] resource, but [LightmapGI] and [VoxelGI] require a "
"[CameraAttributes] resource to be set at bake time to reduce the dynamic "
"range. At run time, Godot will automatically reconcile the baked exposure "
"with the active exposure to ensure lighting remains consistent."
msgstr ""
"Позволяет использовать физически обоснованные единицы для источников света. "
"Физически обоснованные единицы, как правило, намного больше произвольных "
"единиц, используемых Godot, но их можно использовать для соответствия "
"освещения в Godot реальному освещению. Из-за большого динамического диапазона "
"условий освещения, присутствующих в природе, Godot запекает экспозицию в "
"различные величины освещения перед рендерингом. Большинство источников света "
"запекают экспозицию автоматически во время выполнения на основе активного "
"ресурса [CameraAttributes], но [LightmapGI] и [VoxelGI] требуют установки "
"ресурса [CameraAttributes] во время запекания для уменьшения динамического "
"диапазона. Во время выполнения Godot автоматически согласует запеченную "
"экспозицию с активной экспозицией, чтобы гарантировать, что освещение "
"остается постоянным."

msgid ""
"The maximum number of clustered elements ([OmniLight3D] + [SpotLight3D] + "
"[Decal] + [ReflectionProbe]) that can be rendered at once in the camera view. "
"If there are more clustered elements present in the camera view, some of them "
"will not be rendered (leading to pop-in during camera movement). Enabling "
"distance fade on lights and decals ([member Light3D.distance_fade_enabled], "
"[member Decal.distance_fade_enabled]) can help avoid reaching this limit.\n"
"Decreasing this value may improve GPU performance on certain setups, even if "
"the maximum number of clustered elements is never reached in the project.\n"
"[b]Note:[/b] This setting is only effective when using the Forward+ rendering "
"method, not Mobile and Compatibility."
msgstr ""
"Максимальное количество кластеризованных элементов ([OmniLight3D] + "
"[SpotLight3D] + [Decal] + [ReflectionProbe]), которые могут быть отрисованы "
"одновременно в поле зрения камеры. Если в поле зрения камеры присутствует "
"больше кластеризованных элементов, некоторые из них не будут отрисованы (что "
"приведет к появлению во время движения камеры). Включение затухания на "
"расстоянии для источников света и декалей ([member "
"Light3D.distance_fade_enabled], [member Decal.distance_fade_enabled]) может "
"помочь избежать достижения этого предела.\n"
"Уменьшение этого значения может повысить производительность графического "
"процессора на определенных настройках, даже если максимальное количество "
"кластеризованных элементов никогда не будет достигнуто в проекте.\n"
"[b]Примечание:[/b] Этот параметр эффективен только при использовании метода "
"рендеринга Forward+, а не Mobile и Compatibility."

msgid ""
"The maximum number of uniforms that can be used by the global shader uniform "
"buffer. Each item takes up one slot. In other words, a single uniform float "
"and a uniform vec4 will take the same amount of space in the buffer.\n"
"[b]Note:[/b] When using the Compatibility renderer, most mobile devices (and "
"all web exports) will be limited to a maximum size of 1024 due to hardware "
"constraints."
msgstr ""
"Максимальное количество юниформ, которые может использовать глобальный "
"юниформ-буфер шейдера. Каждый элемент занимает один слот. Другими словами, "
"один юниформ float и юниформ vec4 займут одинаковое количество места в "
"буфере.\n"
"[b]Примечание:[/b] При использовании рендерера совместимости большинство "
"мобильных устройств (и все веб-экспорты) будут ограничены максимальным "
"размером 1024 из-за аппаратных ограничений."

msgid ""
"Max number of omnilights and spotlights renderable per object. At the default "
"value of 8, this means that each surface can be affected by up to 8 "
"omnilights and 8 spotlights. This is further limited by hardware support and "
"[member rendering/limits/opengl/max_renderable_lights]. Setting this low will "
"slightly reduce memory usage, may decrease shader compile times, and may "
"result in faster rendering on low-end, mobile, or web devices.\n"
"[b]Note:[/b] This setting is only effective when using the Compatibility "
"rendering method, not Forward+ and Mobile."
msgstr ""
"Максимальное количество omnilights и spotlights, которые можно "
"визуализировать на объект. При значении по умолчанию 8 это означает, что на "
"каждую поверхность может влиять до 8 omnilights и 8 spotlights. Это "
"дополнительно ограничивается аппаратной поддержкой и [member rendering/limits/"
"opengl/max_renderable_lights]. Установка этого низкого значения немного "
"сократит использование памяти, может сократить время компиляции шейдера и "
"может привести к более быстрому рендерингу на бюджетных, мобильных или веб-"
"устройствах.\n"
"[b]Примечание:[/b] Этот параметр эффективен только при использовании метода "
"рендеринга Compatibility, а не Forward+ и Mobile."

msgid ""
"Max number of elements renderable in a frame. If more elements than this are "
"visible per frame, they will not be drawn. Keep in mind elements refer to "
"mesh surfaces and not meshes themselves. Setting this low will slightly "
"reduce memory usage and may decrease shader compile times, particularly on "
"web. For most uses, the default value is suitable, but consider lowering as "
"much as possible on web export.\n"
"[b]Note:[/b] This setting is only effective when using the Compatibility "
"rendering method, not Forward+ and Mobile."
msgstr ""
"Максимальное количество элементов, отображаемых в кадре. Если в кадре "
"отображается больше элементов, чем это значение, они не будут отрисованы. "
"Помните, что элементы относятся к поверхностям сеток, а не к самим сеткам. "
"Установка этого низкого значения немного сократит использование памяти и "
"может сократить время компиляции шейдера, особенно в веб-приложениях. Для "
"большинства случаев подходит значение по умолчанию, но рассмотрите "
"возможность его максимального снижения при экспорте в веб-приложениях.\n"
"[b]Примечание:[/b] Этот параметр эффективен только при использовании метода "
"рендеринга Compatibility, а не Forward+ и Mobile."

msgid ""
"Max number of positional lights renderable in a frame. If more lights than "
"this number are used, they will be ignored. Setting this low will slightly "
"reduce memory usage and may decrease shader compile times, particularly on "
"web. For most uses, the default value is suitable, but consider lowering as "
"much as possible on web export.\n"
"[b]Note:[/b] This setting is only effective when using the Compatibility "
"rendering method, not Forward+ and Mobile."
msgstr ""
"Максимальное количество позиционных источников света, которые можно "
"визуализировать в кадре. Если используется больше источников света, чем это "
"число, они будут игнорироваться. Установка этого низкого значения немного "
"снизит использование памяти и может уменьшить время компиляции шейдера, "
"особенно в веб-приложениях. Для большинства случаев подходит значение по "
"умолчанию, но рассмотрите возможность его максимального снижения при экспорте "
"в веб-приложениях.\n"
"[b]Примечание:[/b] Этот параметр эффективен только при использовании метода "
"визуализации Compatibility, а не Forward+ и Mobile."

msgid ""
"The minimum number of instances that must be present in a scene to enable "
"culling computations on multiple threads. If a scene has fewer instances than "
"this number, culling is done on a single thread."
msgstr ""
"Минимальное количество экземпляров, которые должны присутствовать в сцене, "
"чтобы включить вычисления отбраковки в нескольких потоках. Если в сцене "
"меньше экземпляров, чем это число, отбраковка выполняется в одном потоке."

msgid ""
"Maximum time (in seconds) before the [code]TIME[/code] shader built-in "
"variable rolls over. The [code]TIME[/code] variable increments by "
"[code]delta[/code] each frame, and when it exceeds this value, it rolls over "
"to [code]0.0[/code]. Since large floating-point values are less precise than "
"small floating-point values, this should be set as low as possible to "
"maximize the precision of the [code]TIME[/code] built-in variable in shaders. "
"This is especially important on mobile platforms where precision in shaders "
"is significantly reduced. However, if this is set too low, shader animations "
"may appear to restart from the beginning while the project is running.\n"
"On desktop platforms, values below [code]4096[/code] are recommended, ideally "
"below [code]2048[/code]. On mobile platforms, values below [code]64[/code] "
"are recommended, ideally below [code]32[/code]."
msgstr ""
"Максимальное время (в секундах) до переключения встроенной переменной шейдера "
"[code]TIME[/code]. Переменная [code]TIME[/code] увеличивается на [code]delta[/"
"code] каждый кадр, и когда она превышает это значение, она переходит на "
"[code]0.0[/code]. Поскольку большие значения с плавающей точкой менее точны, "
"чем маленькие значения с плавающей точкой, это значение следует установить "
"как можно ниже, чтобы максимизировать точность встроенной переменной "
"[code]TIME[/code] в шейдерах. Это особенно важно на мобильных платформах, где "
"точность в шейдерах значительно снижена. Однако, если это значение "
"установлено слишком низко, анимация шейдера может перезапускаться с самого "
"начала во время выполнения проекта.\n"
"На настольных платформах рекомендуются значения ниже [code]4096[/code], в "
"идеале ниже [code]2048[/code]. На мобильных платформах рекомендуются значения "
"ниже [code]64[/code], в идеале ниже [code]32[/code]."

msgid ""
"The automatic LOD bias to use for meshes rendered within the "
"[ReflectionProbe]. Higher values will use less detailed versions of meshes "
"that have LOD variations generated. If set to [code]0.0[/code], automatic LOD "
"is disabled. Increase [member rendering/mesh_lod/lod_change/threshold_pixels] "
"to improve performance at the cost of geometry detail.\n"
"[b]Note:[/b] [member rendering/mesh_lod/lod_change/threshold_pixels] does not "
"affect [GeometryInstance3D] visibility ranges (also known as \"manual\" LOD "
"or hierarchical LOD).\n"
"[b]Note:[/b] This property is only read when the project starts. To adjust "
"the automatic LOD threshold at runtime, set [member "
"Viewport.mesh_lod_threshold] on the root [Viewport]."
msgstr ""
"Автоматическое смещение LOD для использования сеток, визуализируемых в "
"[ReflectionProbe]. Более высокие значения будут использовать менее подробные "
"версии сеток, которые имеют сгенерированные вариации LOD. Если установлено "
"значение [code]0.0[/code], автоматическое LOD отключено. Увеличьте [member "
"rendering/mesh_lod/lod_change/threshold_pixels], чтобы повысить "
"производительность за счет детализации геометрии.\n"
"[b]Примечание:[/b] [member rendering/mesh_lod/lod_change/threshold_pixels] не "
"влияет на диапазоны видимости [GeometryInstance3D] (также известные как "
"«ручной» LOD или иерархический LOD).\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"настроить автоматический порог LOD во время выполнения, установите [member "
"Viewport.mesh_lod_threshold] в корне [Viewport]."

msgid ""
"The [url=https://en.wikipedia.org/wiki/Bounding_volume_hierarchy]Bounding "
"Volume Hierarchy[/url] quality to use when rendering the occlusion culling "
"buffer. Higher values will result in more accurate occlusion culling, at the "
"cost of higher CPU usage. See also [member rendering/occlusion_culling/"
"occlusion_rays_per_thread].\n"
"[b]Note:[/b] This property is only read when the project starts. To adjust "
"the BVH build quality at runtime, use [method "
"RenderingServer.viewport_set_occlusion_culling_build_quality]."
msgstr ""
"[url=https://en.wikipedia.org/wiki/Bounding_volume_hierarchy]Иерархия "
"ограничивающего объема[/url] для использования при рендеринге буфера "
"отсечения окклюзии. Более высокие значения приведут к более точному отсечению "
"окклюзии за счет более высокой загрузки ЦП. См. также [member rendering/"
"occlusion_culling/occlusion_rays_per_thread].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"настроить качество сборки BVH во время выполнения, используйте [method "
"RenderingServer.viewport_set_occlusion_culling_build_quality]."

msgid ""
"If [code]true[/code], the projection used for rendering the occlusion buffer "
"will be jittered. This can help prevent objects being incorrectly culled when "
"visible through small gaps."
msgstr ""
"Если [code]true[/code], проекция, используемая для рендеринга буфера "
"окклюзии, будет дергаться. Это может помочь предотвратить некорректное "
"отсечение объектов, видимых через небольшие зазоры."

msgid ""
"The number of occlusion rays traced per CPU thread. Higher values will result "
"in more accurate occlusion culling, at the cost of higher CPU usage. The "
"occlusion culling buffer's pixel count is roughly equal to "
"[code]occlusion_rays_per_thread * number_of_logical_cpu_cores[/code], so it "
"will depend on the system's CPU. Therefore, CPUs with fewer cores will use a "
"lower resolution to attempt keeping performance costs even across devices. "
"See also [member rendering/occlusion_culling/bvh_build_quality].\n"
"[b]Note:[/b] This property is only read when the project starts. To adjust "
"the number of occlusion rays traced per thread at runtime, use [method "
"RenderingServer.viewport_set_occlusion_rays_per_thread]."
msgstr ""
"Количество лучей окклюзии, трассируемых на поток ЦП. Более высокие значения "
"приведут к более точному отсечению окклюзии за счет более высокой загрузки "
"ЦП. Количество пикселей буфера отсечения окклюзии примерно равно "
"[code]occlusion_rays_per_thread * number_of_logical_cpu_cores[/code], поэтому "
"оно будет зависеть от ЦП системы. Поэтому ЦП с меньшим количеством ядер будут "
"использовать более низкое разрешение, чтобы попытаться сохранить затраты "
"производительности на всех устройствах. См. также [member rendering/"
"occlusion_culling/bvh_build_quality].\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"настроить количество лучей окклюзии, трассируемых на поток во время "
"выполнения, используйте [method "
"RenderingServer.viewport_set_occlusion_rays_per_thread]."

msgid ""
"If [code]true[/code], [OccluderInstance3D] nodes will be usable for occlusion "
"culling in 3D in the root viewport. In custom viewports, [member "
"Viewport.use_occlusion_culling] must be set to [code]true[/code] instead.\n"
"[b]Note:[/b] Enabling occlusion culling has a cost on the CPU. Only enable "
"occlusion culling if you actually plan to use it. Large open scenes with few "
"or no objects blocking the view will generally not benefit much from "
"occlusion culling. Large open scenes generally benefit more from mesh LOD and "
"visibility ranges ([member GeometryInstance3D.visibility_range_begin] and "
"[member GeometryInstance3D.visibility_range_end]) compared to occlusion "
"culling.\n"
"[b]Note:[/b] Due to memory constraints, occlusion culling is not supported by "
"default in Web export templates. It can be enabled by compiling custom Web "
"export templates with [code]module_raycast_enabled=yes[/code]."
msgstr ""
"Если [code]true[/code], узлы [OccluderInstance3D] будут использоваться для "
"отсечения окклюзии в 3D в корневом окне просмотра. В пользовательских окнах "
"просмотра [member Viewport.use_occlusion_culling] вместо этого должен быть "
"установлен на [code]true[/code].\n"
"[b]Примечание:[/b] Включение отсечения окклюзии имеет затраты на ЦП. "
"Включайте отсечение окклюзии только в том случае, если вы действительно "
"планируете его использовать. Большие открытые сцены с небольшим количеством "
"или без объектов, блокирующих вид, как правило, не получат большой выгоды от "
"отсечения окклюзии. Большие открытые сцены, как правило, больше выигрывают от "
"LOD сетки и диапазонов видимости ([member "
"GeometryInstance3D.visibility_range_begin] и [member "
"GeometryInstance3D.visibility_range_end]) по сравнению с отсечением "
"окклюзии.\n"
"[b]Примечание:[/b] Из-за ограничений памяти occlusion culling не "
"поддерживается по умолчанию в шаблонах веб-экспорта. Его можно включить, "
"скомпилировав пользовательские шаблоны веб-экспорта с "
"[code]module_raycast_enabled=yes[/code]."

msgid ""
"Number of cubemaps to store in the reflection atlas. The number of "
"[ReflectionProbe]s in a scene will be limited by this amount. A higher number "
"requires more VRAM."
msgstr ""
"Количество кубических карт для хранения в атласе отражений. Количество "
"[ReflectionProbe] в сцене будет ограничено этим количеством. Большее "
"количество требует больше VRAM."

msgid ""
"Size of cubemap faces for [ReflectionProbe]s. A higher number requires more "
"VRAM and may make reflection probe updating slower."
msgstr ""
"Размер граней кубической карты для [ReflectionProbe]. Большее число требует "
"больше VRAM и может замедлить обновление зонда отражения."

msgid ""
"Lower-end override for [member rendering/reflections/reflection_atlas/"
"reflection_size] on mobile devices, due to performance concerns or driver "
"support."
msgstr ""
"Нижнее значение переопределения для [member rendering/reflections/"
"reflection_atlas/reflection_size] на мобильных устройствах из-за проблем с "
"производительностью или поддержкой драйвера."

msgid ""
"Use a higher quality variant of the fast filtering algorithm. Significantly "
"slower than using default quality, but results in smoother reflections. "
"Should only be used when the scene is especially detailed."
msgstr ""
"Используйте более качественный вариант алгоритма быстрой фильтрации. "
"Значительно медленнее, чем при использовании качества по умолчанию, но дает "
"более плавные отражения. Следует использовать только в случае особой "
"детализации сцены."

msgid ""
"Sets the number of samples to take when using importance sampling for [Sky]s "
"and [ReflectionProbe]s. A higher value will result in smoother, higher "
"quality reflections, but increases time to calculate radiance maps. In "
"general, fewer samples are needed for simpler, low dynamic range environments "
"while more samples are needed for HDR environments and environments with a "
"high level of detail."
msgstr ""
"Устанавливает количество образцов, которые следует взять при использовании "
"выборки важности для [Sky]-ов и [ReflectionProbe]-ов. Более высокое значение "
"приведет к более плавным, высококачественным отражениям, но увеличит время "
"расчета карт яркости. В целом, для более простых сред с низким динамическим "
"диапазоном требуется меньше образцов, тогда как для сред HDR и сред с высоким "
"уровнем детализации требуется больше образцов."

msgid ""
"Lower-end override for [member rendering/reflections/sky_reflections/"
"ggx_samples] on mobile devices, due to performance concerns or driver support."
msgstr ""
"Переопределение нижнего уровня для [member rendering/reflections/"
"sky_reflections/ggx_samples] на мобильных устройствах из-за проблем с "
"производительностью или поддержкой драйверов."

msgid ""
"Limits the number of layers to use in radiance maps when using importance "
"sampling. A lower number will be slightly faster and take up less VRAM."
msgstr ""
"Ограничивает количество слоев для использования в картах сияния при "
"использовании выборки важности. Меньшее число будет немного быстрее и займет "
"меньше VRAM."

msgid ""
"If [code]true[/code], uses texture arrays instead of mipmaps for reflection "
"probes and panorama backgrounds (sky). This reduces jitter noise and "
"upscaling artifacts on reflections, but is significantly slower to compute "
"and uses [member rendering/reflections/sky_reflections/roughness_layers] "
"times more memory.\n"
"[b]Note:[/b] Texture array reflections are always disabled on macOS on Intel "
"GPUs due to driver bugs."
msgstr ""
"Если [code]true[/code], то вместо mip-карт используются массивы текстур для "
"зондов отражений и панорамных фонов (небо). Это снижает шум дрожания и "
"артефакты масштабирования при отражениях, но вычисляется значительно "
"медленнее и использует в [member rendering/reflections/sky_reflections/"
"roughness_layers] раз больше памяти.\n"
"[b]Примечание:[/b] Отражения массивов текстур всегда отключены в macOS на "
"графических процессорах Intel из-за ошибок драйвера."

msgid ""
"Lower-end override for [member rendering/reflections/sky_reflections/"
"texture_array_reflections] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
"Переопределение нижнего уровня для [member rendering/reflections/"
"sky_reflections/texture_array_reflections] на мобильных устройствах из-за "
"проблем с производительностью или поддержкой драйвера."

msgid "If [code]true[/code], reduces reflections based on ambient light."
msgstr ""
"Если [code]true[/code], то уменьшаются отражения в зависимости от окружающего "
"освещения."

msgid ""
"Sets the renderer that will be used by the project. Options are:\n"
"[b]forward_plus[/b] (Forward+): High-end renderer designed for desktop "
"devices. Has a higher base overhead, but scales well with complex scenes. Not "
"suitable for older devices or mobile.\n"
"[b]mobile[/b] (Mobile): Modern renderer designed for mobile devices. Has a "
"lower base overhead than Forward+, but does not scale as well to large scenes "
"with many elements.\n"
"[b]gl_compatibility[/b] (Compatibility): Low-end renderer designed for older "
"devices. Based on the limitations of the OpenGL 3.3 / OpenGL ES 3.0 / WebGL 2 "
"APIs.\n"
"This can be overridden using the [code]--rendering-method <method>[/code] "
"command line argument.\n"
"[b]Note:[/b] The actual rendering method may be automatically changed by the "
"engine as a result of a fallback, or a user-specified command line argument. "
"To get the actual rendering method that is used at runtime, use [method "
"RenderingServer.get_current_rendering_method] instead of reading this project "
"setting's value."
msgstr ""
"Устанавливает рендерер, который будет использоваться в проекте. Варианты:\n"
"[b]forward_plus[/b] (Forward+): Высокопроизводительный рендерер, "
"разработанный для настольных устройств. Имеет более высокие базовые накладные "
"расходы, но хорошо масштабируется со сложными сценами. Не подходит для старых "
"устройств или мобильных устройств.\n"
"[b]mobile[/b] (Mobile): Современный рендерер, разработанный для мобильных "
"устройств. Имеет более низкие базовые накладные расходы, чем Forward+, но не "
"так хорошо масштабируется для больших сцен со множеством элементов.\n"
"[b]gl_compatibility[/b] (Compatibility): Низкопроизводительный рендерер, "
"разработанный для старых устройств. Основан на ограничениях API OpenGL 3.3 / "
"OpenGL ES 3.0 / WebGL 2.\n"
"Это можно переопределить с помощью аргумента командной строки [code]--"
"rendering-method <method>[/code].\n"
"[b]Примечание:[/b] Фактический метод рендеринга может быть автоматически "
"изменен движком в результате отката или указанного пользователем аргумента "
"командной строки. Чтобы получить фактический метод рендеринга, который "
"используется во время выполнения, используйте [method "
"RenderingServer.get_current_rendering_method] вместо чтения значения этого "
"параметра проекта."

msgid ""
"Override for [member rendering/renderer/rendering_method] on mobile devices."
msgstr ""
"Переопределение для [member rendering/renderer/rendering_method] на мобильных "
"устройствах."

msgid "Override for [member rendering/renderer/rendering_method] on web."
msgstr ""
"Переопределение для [member rendering/renderer/rendering_method] на веб-сайте."

msgid ""
"Version code of the [url=https://devblogs.microsoft.com/directx/"
"directx12agility/]Direct3D 12 Agility SDK[/url] to use "
"([code]D3D12SDKVersion[/code]). This must match the [i]minor[/i] version that "
"is installed next to the editor binary and in the export templates directory "
"for the current editor version. For example, if you have [code]1.613.3[/code] "
"installed, you need to input [code]613[/code] here."
msgstr ""
"Код версии [url=https://devblogs.microsoft.com/directx/"
"directx12agility/]Direct3D 12 Agility SDK[/url] для использования "
"([code]D3D12SDKVersion[/code]). Он должен соответствовать [i]minor[/i] "
"версии, установленной рядом с двоичным файлом редактора и в каталоге шаблонов "
"экспорта для текущей версии редактора. Например, если у вас установлен "
"[code]1.613.3[/code], вам нужно ввести здесь [code]613[/code]."

msgid ""
"The number of entries in the miscellaneous descriptors heap the Direct3D 12 "
"rendering driver uses each frame, used for various operations like clearing a "
"texture.\n"
"Depending on the complexity of scenes, this value may be lowered or may need "
"to be raised."
msgstr ""
"Количество записей в куче различных дескрипторов, которые драйвер рендеринга "
"Direct3D 12 использует в каждом кадре, используется для различных операций, "
"таких как очистка текстуры.\n"
"В зависимости от сложности сцен это значение может быть уменьшено или может "
"потребоваться его увеличение."

msgid ""
"The number of entries in the resource descriptors heap the Direct3D 12 "
"rendering driver uses each frame, used for most rendering operations.\n"
"Depending on the complexity of scenes, this value may be lowered or may need "
"to be raised."
msgstr ""
"Количество записей в куче дескрипторов ресурсов, которые драйвер рендеринга "
"Direct3D 12 использует в каждом кадре, используется для большинства операций "
"рендеринга.\n"
"В зависимости от сложности сцен это значение может быть уменьшено или может "
"потребоваться его увеличение."

msgid ""
"The number of entries in the sampler descriptors heap the Direct3D 12 "
"rendering driver uses each frame, used for most rendering operations.\n"
"Depending on the complexity of scenes, this value may be lowered or may need "
"to be raised."
msgstr ""
"Количество записей в куче дескрипторов сэмплера, которые драйвер рендеринга "
"Direct3D 12 использует в каждом кадре, используется для большинства операций "
"рендеринга.\n"
"В зависимости от сложности сцен это значение может быть уменьшено или может "
"потребоваться его увеличение."

msgid ""
"Sets the driver to be used by the renderer when using a RenderingDevice-based "
"renderer like the Forward+ or Mobile renderers. Editing this property has no "
"effect in the default configuration, as first-party platforms each have "
"platform-specific overrides. Use those overrides to configure the driver for "
"each platform.\n"
"This can be overridden using the [code]--rendering-driver <driver>[/code] "
"command line argument.\n"
"Supported values are:\n"
"- [code]metal[/code], Metal (supported on Apple Silicon Macs and iOS).\n"
"- [code]vulkan[/code], Vulkan (supported on all desktop and mobile "
"platforms).\n"
"- [code]d3d12[/code], Direct3D 12 (supported on Windows).\n"
"[b]Note:[/b] The availability of these options depends on whether the engine "
"was compiled with support for them (determined by SCons options [code]vulkan[/"
"code], [code]metal[/code], and [code]d3d12[/code]).\n"
"[b]Note:[/b] If a given platform has no registered drivers, it can fall back "
"to the Compatibility renderer (OpenGL 3) if [member rendering/"
"rendering_device/fallback_to_opengl3] is enabled. This fallback happens "
"automatically for the Web platform regardless of that property.\n"
"[b]Note:[/b] The actual rendering driver may be automatically changed by the "
"engine as a result of a fallback, or a user-specified command line argument. "
"To get the actual rendering driver that is used at runtime, use [method "
"RenderingServer.get_current_rendering_driver_name] instead of reading this "
"project setting's value."
msgstr ""
"Устанавливает драйвер, который будет использоваться рендерером при "
"использовании рендерера на основе RenderingDevice, например, рендереров "
"Forward+ или Mobile. Редактирование этого свойства не влияет на конфигурацию "
"по умолчанию, так как у каждой из платформ есть переопределения, зависящие от "
"платформы. Используйте эти переопределения для настройки драйвера для каждой "
"платформы.\n"
"Это можно переопределить с помощью аргумента командной строки [code]--"
"rendering-driver <driver>[/code].\n"
"Поддерживаемые значения:\n"
"- [code]metal[/code], Metal (поддерживается на компьютерах Mac и iOS от Apple "
"Silicon).\n"
"- [code]vulkan[/code], Vulkan (поддерживается на всех настольных и мобильных "
"платформах).\n"
"- [code]d3d12[/code], Direct3D 12 (поддерживается в Windows).\n"
"[b]Примечание:[/b] Доступность этих параметров зависит от того, был ли движок "
"скомпилирован с поддержкой для них (определяется параметрами SCons "
"[code]vulkan[/code], [code]metal[/code] и [code]d3d12[/code]).\n"
"[b]Примечание:[/b] Если на данной платформе нет зарегистрированных драйверов, "
"она может вернуться к рендереру совместимости (OpenGL 3), если включен "
"[member rendering/rendering_device/fallback_to_opengl3]. Этот откат "
"происходит автоматически для веб-платформы независимо от этого свойства.\n"
"[b]Примечание:[/b] Фактический драйвер рендеринга может быть автоматически "
"изменен движком в результате отката или указанного пользователем аргумента "
"командной строки. Чтобы получить фактический драйвер рендеринга, который "
"используется во время выполнения, используйте [method "
"RenderingServer.get_current_rendering_driver_name] вместо чтения значения "
"этого параметра проекта."

msgid ""
"Android override for [member rendering/rendering_device/driver].\n"
"Only one option is supported:\n"
"- [code]vulkan[/code], Vulkan from native drivers.\n"
"[b]Note:[/b] If Vulkan was disabled at compile time, there is no alternative "
"RenderingDevice driver."
msgstr ""
"Переопределение Android для [member rendering/rendering_device/driver].\n"
"Поддерживается только один вариант:\n"
"- [code]vulkan[/code], Vulkan из собственных драйверов.\n"
"[b]Примечание:[/b] Если Vulkan был отключен во время компиляции, "
"альтернативного драйвера RenderingDevice нет."

msgid ""
"iOS override for [member rendering/rendering_device/driver].\n"
"Two options are supported:\n"
"- [code]metal[/code] (default), Metal from native drivers.\n"
"- [code]vulkan[/code], Vulkan over Metal via MoltenVK."
msgstr ""
"Переопределение iOS для [member rendering/rendering_device/driver].\n"
"Поддерживаются два варианта:\n"
"- [code]metal[/code] (по умолчанию), Metal из собственных драйверов.\n"
"- [code]vulkan[/code], Vulkan поверх Metal через MoltenVK."

msgid ""
"LinuxBSD override for [member rendering/rendering_device/driver].\n"
"Only one option is supported:\n"
"- [code]vulkan[/code], Vulkan from native drivers.\n"
"[b]Note:[/b] If Vulkan was disabled at compile time, there is no alternative "
"RenderingDevice driver."
msgstr ""
"Переопределение LinuxBSD для [member rendering/rendering_device/driver].\n"
"Поддерживается только один вариант:\n"
"- [code]vulkan[/code], Vulkan из собственных драйверов.\n"
"[b]Примечание:[/b] Если Vulkan был отключен во время компиляции, "
"альтернативного драйвера RenderingDevice нет."

msgid ""
"macOS override for [member rendering/rendering_device/driver].\n"
"Two options are supported:\n"
"- [code]metal[/code] (default), Metal from native drivers, only supported on "
"Apple Silicon Macs. On Intel Macs, it will automatically fall back to "
"[code]vulkan[/code] as Metal support is not implemented.\n"
"- [code]vulkan[/code], Vulkan over Metal via MoltenVK, supported on both "
"Apple Silicon and Intel Macs."
msgstr ""
"macOS переопределяет [member rendering/rendering_device/driver].\n"
"Поддерживаются два варианта:\n"
"- [code]metal[/code] (по умолчанию), Metal из собственных драйверов, "
"поддерживается только на компьютерах Mac с процессорами Apple Silicon. На "
"компьютерах Mac с процессорами Intel он автоматически перейдет на "
"[code]vulkan[/code], поскольку поддержка Metal не реализована.\n"
"- [code]vulkan[/code], Vulkan поверх Metal через MoltenVK, поддерживается как "
"на компьютерах Mac с процессорами Apple Silicon, так и на компьютерах Mac с "
"процессорами Intel."

msgid ""
"visionOS override for [member rendering/rendering_device/driver].\n"
"Only one option is supported:\n"
"- [code]metal[/code] (default), Metal from native drivers."
msgstr ""
"Переопределение visionOS для [member rendering/rendering_device/driver].\n"
"Поддерживается только один параметр:\n"
"- [code]metal[/code] (по умолчанию), Metal из собственных драйверов."

msgid ""
"Windows override for [member rendering/rendering_device/driver].\n"
"Two options are supported:\n"
"- [code]vulkan[/code] (default), Vulkan from native drivers. If [member "
"rendering/rendering_device/fallback_to_vulkan] is enabled, this is used as a "
"fallback if Direct3D 12 is not supported.\n"
"- [code]d3d12[/code], Direct3D 12 from native drivers. If [member rendering/"
"rendering_device/fallback_to_d3d12] is enabled, this is used as a fallback if "
"Vulkan is not supported."
msgstr ""
"Переопределение Windows для [member rendering/rendering_device/driver].\n"
"Поддерживаются два варианта:\n"
"- [code]vulkan[/code] (по умолчанию), Vulkan из собственных драйверов. Если "
"включен [member rendering/rendering_device/fallback_to_vulkan], это "
"используется как резервный вариант, если Direct3D 12 не поддерживается.\n"
"- [code]d3d12[/code], Direct3D 12 из собственных драйверов. Если включен "
"[member rendering/rendering_device/fallback_to_d3d12], это используется как "
"резервный вариант, если Vulkan не поддерживается."

msgid ""
"If [code]true[/code], the forward renderer will fall back to Direct3D 12 if "
"Vulkan is not supported. The fallback is always attempted regardless of this "
"setting if Vulkan driver support was disabled at compile time.\n"
"[b]Note:[/b] This setting is implemented only on Windows."
msgstr ""
"Если [code]true[/code], прямой рендерер вернется к Direct3D 12, если Vulkan "
"не поддерживается. Откат всегда предпринимается независимо от этой настройки, "
"если поддержка драйвера Vulkan была отключена во время компиляции.\n"
"[b]Примечание:[/b] Этот параметр реализован только в Windows."

msgid ""
"If [code]true[/code], the forward renderer will fall back to OpenGL 3 if "
"Direct3D 12, Metal, and Vulkan are not supported.\n"
"[b]Note:[/b] This setting is implemented on Windows, Android, macOS, iOS, and "
"Linux/X11."
msgstr ""
"Если [code]true[/code], прямой forward рендерер вернется к OpenGL 3, если "
"Direct3D 12, Metal и Vulkan не поддерживаются.\n"
"[b]Примечание:[/b] Этот параметр реализован в Windows, Android, macOS, iOS и "
"Linux/X11."

msgid ""
"If [code]true[/code], the forward renderer will fall back to Vulkan if "
"Direct3D 12 (on Windows) or Metal (on macOS x86_64) are not supported. The "
"fallback is always attempted regardless of this setting if Direct3D 12 "
"(Windows) or Metal (macOS) driver support was disabled at compile time.\n"
"[b]Note:[/b] This setting is implemented on Windows and macOS."
msgstr ""
"Если [code]true[/code], прямой forward рендерер вернется к Vulkan, если "
"Direct3D 12 (в Windows) или Metal (в macOS x86_64) не поддерживаются. Откат "
"всегда выполняется независимо от этой настройки, если поддержка драйверов "
"Direct3D 12 (Windows) или Metal (macOS) была отключена во время компиляции.\n"
"[b]Примечание:[/b] Этот параметр реализован в Windows и macOS."

msgid ""
"Enable the pipeline cache that is saved to disk if the graphics API supports "
"it.\n"
"[b]Note:[/b] This property is unable to control the pipeline caching the GPU "
"driver itself does. Only turn this off along with deleting the contents of "
"the driver's cache if you wish to simulate the experience a user will get "
"when starting the game for the first time."
msgstr ""
"Включите кэш конвейера, который сохраняется на диске, если графический API "
"поддерживает его.\n"
"[b]Примечание:[/b] Это свойство не может управлять кэшированием конвейера, "
"которое делает сам драйвер GPU. Отключайте его только вместе с удалением "
"содержимого кэша драйвера, если вы хотите смоделировать опыт, который получит "
"пользователь при первом запуске игры."

msgid ""
"Determines at which interval pipeline cache is saved to disk. The lower the "
"value, the more often it is saved."
msgstr ""
"Определяет, с каким интервалом кэш конвейера сохраняется на диск. Чем меньше "
"значение, тем чаще он сохраняется."

msgid ""
"The size of a block allocated in the staging buffers. Staging buffers are the "
"intermediate resources the engine uses to upload or download data to the GPU. "
"This setting determines the max amount of data that can be transferred in a "
"copy operation. Increasing this will result in faster data transfers at the "
"cost of extra memory.\n"
"[b]Note:[/b] This property is only read when the project starts. There is "
"currently no way to change this value at run-time."
msgstr ""
"Размер блока, выделенного в буферах промежуточного хранения. Буферы "
"промежуточного хранения — это промежуточные ресурсы, которые движок "
"использует для загрузки или скачивания данных в графический процессор. Этот "
"параметр определяет максимальный объем данных, которые могут быть переданы в "
"операции копирования. Увеличение этого параметра приведет к более быстрой "
"передаче данных за счет дополнительной памяти.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. В "
"настоящее время нет возможности изменить это значение во время выполнения."

msgid ""
"The maximum amount of memory allowed to be used by staging buffers. If the "
"amount of data being uploaded or downloaded exceeds this amount, the GPU will "
"stall and wait for previous frames to finish.\n"
"[b]Note:[/b] This property is only read when the project starts. There is "
"currently no way to change this value at run-time."
msgstr ""
"Максимальный объем памяти, разрешенный для использования буферами "
"промежуточного хранения. Если объем загружаемых или скачиваемых данных "
"превышает этот объем, графический процессор остановится и будет ждать "
"завершения предыдущих кадров.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. В "
"настоящее время нет возможности изменить это значение во время выполнения."

msgid ""
"The region size in pixels used to download texture data from the GPU when "
"using methods like [method RenderingDevice.texture_get_data_async].\n"
"[b]Note:[/b] This property's upper limit is controlled by [member rendering/"
"rendering_device/staging_buffer/block_size_kb] and whether it's possible to "
"allocate a single block of texture data with this region size in the format "
"that is requested.\n"
"[b]Note:[/b] This property is only read when the project starts. There is "
"currently no way to change this value at run-time."
msgstr ""
"Размер области в пикселях, используемый для загрузки данных текстуры из "
"графического процессора при использовании таких методов, как [method "
"RenderingDevice.texture_get_data_async].\n"
"[b]Примечание:[/b] Верхний предел этого свойства контролируется [member "
"rendering/rendering_device/staging_buffer/block_size_kb] и тем, возможно ли "
"выделить один блок данных текстуры с этим размером области в запрошенном "
"формате.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. В "
"настоящее время нет способа изменить это значение во время выполнения."

msgid ""
"The region size in pixels used to upload texture data from the GPU when using "
"methods like [method RenderingDevice.texture_update].\n"
"[b]Note:[/b] This property's upper limit is controlled by [member rendering/"
"rendering_device/staging_buffer/block_size_kb] and whether it's possible to "
"allocate a single block of texture data with this region size in the format "
"that is requested.\n"
"[b]Note:[/b] This property is only read when the project starts. There is "
"currently no way to change this value at run-time."
msgstr ""
"Размер области в пикселях, используемый для загрузки данных текстуры из "
"графического процессора при использовании таких методов, как [method "
"RenderingDevice.texture_update].\n"
"[b]Примечание:[/b] Верхний предел этого свойства контролируется [member "
"rendering/rendering_device/staging_buffer/block_size_kb] и тем, возможно ли "
"выделить один блок данных текстуры с этим размером области в запрошенном "
"формате.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. В "
"настоящее время нет возможности изменить это значение во время выполнения."

msgid ""
"The number of frames to track on the CPU side before stalling to wait for the "
"GPU.\n"
"Try the [url=https://darksylinc.github.io/vsync_simulator/]V-Sync Simulator[/"
"url], an interactive interface that simulates presentation to better "
"understand how it is affected by different variables under various "
"conditions.\n"
"[b]Note:[/b] This property is only read when the project starts. There is "
"currently no way to change this value at run-time."
msgstr ""
"Количество кадров для отслеживания на стороне CPU перед остановкой в ожидании "
"GPU.\n"
"Попробуйте [url=https://darksylinc.github.io/vsync_simulator/]V-Sync "
"Simulator[/url], интерактивный интерфейс, который имитирует представление, "
"чтобы лучше понять, как на него влияют различные переменные при различных "
"условиях.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. В "
"настоящее время нет способа изменить это значение во время выполнения."

msgid ""
"The number of images the swapchain will consist of (back buffers + front "
"buffer).\n"
"[code]2[/code] corresponds to double-buffering and [code]3[/code] to triple-"
"buffering.\n"
"Double-buffering may give you the lowest lag/latency but if V-Sync is on and "
"the system can't render at 60 fps, the framerate will go down in multiples of "
"it (e.g. 30 fps, 15, 7.5, etc.). Triple buffering gives you higher framerate "
"(specially if the system can't reach a constant 60 fps) at the cost of up to "
"1 frame of latency, with [constant DisplayServer.VSYNC_ENABLED] (FIFO).\n"
"Use double-buffering with [constant DisplayServer.VSYNC_ENABLED]. Triple-"
"buffering is a must if you plan on using [constant "
"DisplayServer.VSYNC_MAILBOX] mode.\n"
"Try the [url=https://darksylinc.github.io/vsync_simulator/]V-Sync Simulator[/"
"url], an interactive interface that simulates presentation to better "
"understand how it is affected by different variables under various "
"conditions.\n"
"[b]Note:[/b] This property is only read when the project starts. There is "
"currently no way to change this value at run-time.\n"
"[b]Note:[/b] Some platforms may restrict the actual value."
msgstr ""
"Количество изображений, из которых будет состоять цепочка обмена (задние "
"буферы + передний буфер).\n"
"[code]2[/code] соответствует двойной буферизации, а [code]3[/code] — тройной "
"буферизации.\n"
"Двойная буферизация может дать вам наименьшую задержку/отставание, но если "
"включена вертикальная синхронизация и система не может выполнять рендеринг со "
"скоростью 60 кадров в секунду, частота кадров будет падать кратно ей "
"(например, 30 кадров в секунду, 15, 7,5 и т. д.). Тройная буферизация дает "
"вам более высокую частоту кадров (особенно если система не может достичь "
"постоянных 60 кадров в секунду) ценой задержки до 1 кадра с [constant "
"DisplayServer.VSYNC_ENABLED] (FIFO).\n"
"Используйте двойную буферизацию с [constant DisplayServer.VSYNC_ENABLED]. "
"Тройная буферизация обязательна, если вы планируете использовать режим "
"[constant DisplayServer.VSYNC_MAILBOX].\n"
"Попробуйте [url=https://darksylinc.github.io/vsync_simulator/]V-Sync "
"Simulator[/url], интерактивный интерфейс, который имитирует представление, "
"чтобы лучше понять, как на него влияют различные переменные при различных "
"условиях.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. В "
"настоящее время нет возможности изменить это значение во время выполнения.\n"
"[b]Примечание:[/b] Некоторые платформы могут ограничивать фактическое "
"значение."

msgid ""
"The number of descriptors per pool. Godot's Vulkan backend uses linear pools "
"for descriptors that will be created and destroyed within a single frame. "
"Instead of destroying every single descriptor every frame, they all can be "
"destroyed at once by resetting the pool they belong to.\n"
"A larger number is more efficient up to a limit, after that it will only "
"waste RAM (maximum efficiency is achieved when there is no more than 1 pool "
"per frame). A small number could end up with one pool per descriptor, which "
"negatively impacts performance.\n"
"[b]Note:[/b] Changing this property requires a restart to take effect."
msgstr ""
"Количество дескрипторов на пул. В бэкэнде Godot Vulkan используются линейные "
"пулы для дескрипторов, которые будут создаваться и уничтожаться в одном "
"кадре. Вместо того, чтобы уничтожать каждый отдельный дескриптор в каждом "
"кадре, их все можно уничтожить одновременно, сбросив пул, к которому они "
"принадлежат.\n"
"Большее число более эффективно до определенного предела, после этого оно "
"будет только тратить оперативную память (максимальная эффективность "
"достигается, когда на кадр приходится не более 1 пула). Небольшое число может "
"привести к одному пулу на дескриптор, что отрицательно скажется на "
"производительности.\n"
"[b]Примечание:[/b] Изменение этого свойства требует перезапуска для "
"вступления в силу."

msgid ""
"Determines how sharp the upscaled image will be when using the FSR upscaling "
"mode. Sharpness halves with every whole number. Values go from 0.0 (sharpest) "
"to 2.0. Values above 2.0 won't make a visible difference."
msgstr ""
"Определяет, насколько резким будет увеличенное изображение при использовании "
"режима увеличения FSR. Резкость уменьшается вдвое с каждым целым числом. "
"Значения варьируются от 0,0 (максимальная резкость) до 2,0. Значения выше 2,0 "
"не будут иметь видимого значения."

msgid ""
"Sets the scaling 3D mode. Bilinear scaling renders at different resolution to "
"either undersample or supersample the viewport. FidelityFX Super Resolution "
"1.0, abbreviated to FSR, is an upscaling technology that produces high "
"quality images at fast framerates by using a spatially-aware upscaling "
"algorithm. FSR is slightly more expensive than bilinear, but it produces "
"significantly higher image quality. On particularly low-end GPUs, the added "
"cost of FSR may not be worth it (compared to using bilinear scaling with a "
"slightly higher resolution scale to match performance).\n"
"[b]Note:[/b] FSR is only effective when using the Forward+ rendering method, "
"not Mobile or Compatibility. If using an incompatible rendering method, FSR "
"will fall back to bilinear scaling."
msgstr ""
"Устанавливает режим масштабирования 3D. Билинейный масштаб рендерит с разным "
"разрешением, чтобы либо недовыбрать, либо перевыбрать область просмотра. "
"FidelityFX Super Resolution 1.0, сокращенно FSR, — это технология "
"масштабирования, которая создает высококачественные изображения с высокой "
"частотой кадров с помощью алгоритма масштабирования с учетом пространства. "
"FSR немного дороже, чем билинейный, но обеспечивает значительно более высокое "
"качество изображения. На особенно недорогих графических процессорах "
"дополнительные затраты на FSR могут не окупиться (по сравнению с "
"использованием билинейного масштабирования с немного более высоким "
"разрешением для соответствия производительности).\n"
"[b]Примечание:[/b] FSR эффективен только при использовании метода рендеринга "
"Forward+, а не Mobile или Compatibility. При использовании несовместимого "
"метода рендеринга FSR вернется к билинейному масштабированию."

msgid ""
"iOS override for [member rendering/scaling_3d/mode]. This allows selecting "
"the MetalFX spatial and MetalFX temporal scaling modes, which are exclusive "
"to platforms where the Metal rendering driver is used."
msgstr ""
"Переопределение iOS для [member rendering/scaling_3d/mode]. Это позволяет "
"выбирать пространственные и временные режимы масштабирования MetalFX, которые "
"являются эксклюзивными для платформ, где используется драйвер рендеринга "
"Metal."

msgid ""
"macOS override for [member rendering/scaling_3d/mode]. This allows selecting "
"the MetalFX spatial and MetalFX temporal scaling modes, which are exclusive "
"to platforms where the Metal rendering driver is used."
msgstr ""
"Переопределение macOS для [member rendering/scaling_3d/mode]. Это позволяет "
"выбирать пространственные и временные режимы масштабирования MetalFX, которые "
"являются эксклюзивными для платформ, где используется драйвер рендеринга "
"Metal."

msgid ""
"Scales the 3D render buffer based on the viewport size uses an image filter "
"specified in [member rendering/scaling_3d/mode] to scale the output image to "
"the full viewport size. Values lower than [code]1.0[/code] can be used to "
"speed up 3D rendering at the cost of quality (undersampling). Values greater "
"than [code]1.0[/code] are only valid for bilinear mode and can be used to "
"improve 3D rendering quality at a high performance cost (supersampling). See "
"also [member rendering/anti_aliasing/quality/msaa_3d] for multi-sample "
"antialiasing, which is significantly cheaper but only smooths the edges of "
"polygons."
msgstr ""
"Масштабирует буфер 3D-рендеринга на основе размера области просмотра, "
"использует фильтр изображения, указанный в [member rendering/scaling_3d/"
"mode], для масштабирования выходного изображения до полного размера области "
"просмотра. Значения ниже [code]1.0[/code] можно использовать для ускорения 3D-"
"рендеринга за счет качества (недостаточная выборка). Значения выше [code]1.0[/"
"code] допустимы только для билинейного режима и могут использоваться для "
"улучшения качества 3D-рендеринга за счет высокой производительности "
"(суперсэмплинг). См. также [member rendering/anti_aliasing/quality/msaa_3d] "
"для сглаживания с несколькими выборками, которое значительно дешевле, но "
"сглаживает только края полигонов."

msgid ""
"Enable the shader cache, which stores compiled shaders to disk to prevent "
"stuttering from shader compilation the next time the shader is needed."
msgstr ""
"Включите кэш шейдеров, который сохраняет скомпилированные шейдеры на диске, "
"чтобы предотвратить подтормаживания при компиляции шейдеров в следующий раз, "
"когда шейдер понадобится."

msgid ""
"If [code]true[/code], uses faster but lower-quality Lambert material lighting "
"model instead of Burley."
msgstr ""
"Если [code]true[/code], используется более быстрая, но менее качественная "
"модель освещения материалов Ламберта вместо Берли."

msgid ""
"Lower-end override for [member rendering/shading/overrides/"
"force_lambert_over_burley] on mobile devices, due to performance concerns or "
"driver support."
msgstr ""
"Переопределение нижнего уровня для [member rendering/shading/overrides/"
"force_lambert_over_burley] на мобильных устройствах из-за проблем с "
"производительностью или поддержкой драйверов."

msgid ""
"If [code]true[/code], forces vertex shading for all rendering. This can "
"increase performance a lot, but also reduces quality immensely. Can be used "
"to optimize performance on low-end mobile devices."
msgstr ""
"Если [code]true[/code], принудительно затеняет вершины для всего рендеринга. "
"Это может значительно повысить производительность, но также значительно "
"снижает качество. Может использоваться для оптимизации производительности на "
"недорогих мобильных устройствах."

msgid ""
"The dictionary size for Rate-Distortion Optimization (RDO) when importing "
"textures as Basis Universal and when RDO is enabled, ranging from [code]64[/"
"code] to [code]65536[/code]. Higher values reduce the file sizes further, but "
"make encoding times significantly longer."
msgstr ""
"Размер словаря для оптимизации скорости-искажения (RDO) при импорте текстур "
"как Basis Universal и при включении RDO, варьируется от [code]64[/code] до "
"[code]65536[/code]. Более высокие значения еще больше уменьшают размер файла, "
"но значительно увеличивают время кодирования."

msgid ""
"If [code]true[/code], enables Zstandard supercompression to reduce file size "
"when importing textures as Basis Universal.\n"
"[b]Note:[/b] Basis Universal textures need to be compressed to gain the "
"benefit of smaller file sizes, otherwise they are as large as VRAM-compressed "
"textures."
msgstr ""
"Если [code]true[/code], включается суперсжатие Zstandard для уменьшения "
"размера файла при импорте текстур как Basis Universal.\n"
"[b]Примечание:[/b] Текстуры Basis Universal необходимо сжимать, чтобы "
"получить преимущество от меньших размеров файлов, в противном случае они "
"будут такими же большими, как текстуры, сжатые VRAM."

msgid ""
"Specify the compression level for Basis Universal Zstandard supercompression, "
"ranging from [code]1[/code] to [code]22[/code]."
msgstr ""
"Укажите уровень сжатия для стандартного суперсжатия Basis Universal Zstandard "
"в диапазоне от [code]1[/code] до [code]22[/code]."

msgid ""
"The default texture filtering mode to use for [CanvasItem]s built-in texture. "
"In shaders, this texture is accessed as [code]TEXTURE[/code].\n"
"[b]Note:[/b] For pixel art aesthetics, see also [member rendering/2d/snap/"
"snap_2d_vertices_to_pixel] and [member rendering/2d/snap/"
"snap_2d_transforms_to_pixel]."
msgstr ""
"Режим фильтрации текстур по умолчанию для встроенной текстуры [CanvasItem]. В "
"шейдерах доступ к этой текстуре осуществляется как [code]TEXTURE[/code].\n"
"[b]Примечание:[/b] Для эстетики пиксельной графики см. также [member "
"rendering/2d/snap/snap_2d_vertices_to_pixel] и [member rendering/2d/snap/"
"snap_2d_transforms_to_pixel]."

msgid ""
"The default texture repeating mode to use for [CanvasItem]s built-in texture. "
"In shaders, this texture is accessed as [code]TEXTURE[/code]."
msgstr ""
"Режим повторения текстуры по умолчанию для встроенной текстуры [CanvasItem]. "
"В шейдерах доступ к этой текстуре осуществляется как [code]TEXTURE[/code]."

msgid ""
"The filtering quality to use for [Decal] nodes. When using one of the "
"anisotropic filtering modes, the anisotropic filtering level is controlled by "
"[member rendering/textures/default_filters/anisotropic_filtering_level]."
msgstr ""
"Качество фильтрации для узлов [Decal]. При использовании одного из режимов "
"анизотропной фильтрации уровень анизотропной фильтрации контролируется "
"[member rendering/textures/default_filters/anisotropic_filtering_level]."

msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in sharper "
"textures at oblique angles, but is more expensive to compute. A value of "
"[code]0[/code] forcibly disables anisotropic filtering, even on materials "
"where it is enabled.\n"
"The anisotropic filtering level also affects decals and light projectors if "
"they are configured to use anisotropic filtering. See [member rendering/"
"textures/decals/filter] and [member rendering/textures/light_projectors/"
"filter].\n"
"[b]Note:[/b] In 3D, for this setting to have an effect, set [member "
"BaseMaterial3D.texture_filter] to [constant "
"BaseMaterial3D.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] or [constant "
"BaseMaterial3D.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] on "
"materials.\n"
"[b]Note:[/b] In 2D, for this setting to have an effect, set [member "
"CanvasItem.texture_filter] to [constant "
"CanvasItem.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] or [constant "
"CanvasItem.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] on the "
"[CanvasItem] node displaying the texture (or in [CanvasTexture]). However, "
"anisotropic filtering is rarely useful in 2D, so only enable it for textures "
"in 2D if it makes a meaningful visual difference.\n"
"[b]Note:[/b] This property is only read when the project starts. To change "
"the anisotropic filtering level at runtime, set [member "
"Viewport.anisotropic_filtering_level] on the root [Viewport] instead."
msgstr ""
"Устанавливает максимальное количество выборок при использовании анизотропной "
"фильтрации текстур (как степень двойки). Большее количество выборок приведет "
"к более резким текстурам под косыми углами, но его вычисление более затратно. "
"Значение [code]0[/code] принудительно отключает анизотропную фильтрацию, даже "
"для материалов, где она включена.\n"
"Уровень анизотропной фильтрации также влияет на декали и проекторы света, "
"если они настроены на использование анизотропной фильтрации. См. [member "
"rendering/textures/decals/filter] и [member rendering/textures/"
"light_projectors/filter].\n"
"[b]Примечание:[/b] В 3D, чтобы эта настройка имела эффект, установите [member "
"BaseMaterial3D.texture_filter] на [constant "
"BaseMaterial3D.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] или [constant "
"BaseMaterial3D.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] для "
"материалов.\n"
"[b]Примечание:[/b] В 2D, чтобы эта настройка имела эффект, установите [member "
"CanvasItem.texture_filter] на [constant "
"CanvasItem.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] или [constant "
"CanvasItem.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] на узле "
"[CanvasItem], отображающем текстуру (или в [CanvasTexture]). Однако "
"анизотропная фильтрация редко бывает полезна в 2D, поэтому включайте ее "
"только для текстур в 2D, если это создает значимую визуальную разницу.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"изменить уровень анизотропной фильтрации во время выполнения, вместо этого "
"установите [member Viewport.anisotropic_filtering_level] на корневом "
"[Viewport]."

msgid ""
"Affects the final texture sharpness by reading from a lower or higher mipmap "
"(also called \"texture LOD bias\"). Negative values make mipmapped textures "
"sharper but grainier when viewed at a distance, while positive values make "
"mipmapped textures blurrier (even when up close).\n"
"Enabling temporal antialiasing ([member rendering/anti_aliasing/quality/"
"use_taa]) will automatically apply a [code]-0.5[/code] offset to this value, "
"while enabling FXAA ([member rendering/anti_aliasing/quality/"
"screen_space_aa]) will automatically apply a [code]-0.25[/code] offset to "
"this value. If both TAA and FXAA are enabled at the same time, an offset of "
"[code]-0.75[/code] is applied to this value.\n"
"[b]Note:[/b] If [member rendering/scaling_3d/scale] is lower than [code]1.0[/"
"code] (exclusive), [member rendering/textures/default_filters/"
"texture_mipmap_bias] is used to adjust the automatic mipmap bias which is "
"calculated internally based on the scale factor. The formula for this is "
"[code]log2(scaling_3d_scale) + mipmap_bias[/code]."
msgstr ""
"Влияет на окончательную резкость текстуры, считывая с более низкой или более "
"высокой mip-карты (также называется «смещением уровня детализации текстуры»). "
"Отрицательные значения делают текстуры с mip-картой более резкими, но "
"зернистыми при просмотре на расстоянии, тогда как положительные значения "
"делают текстуры с mip-картой более размытыми (даже при просмотре вблизи).\n"
"Включение временного сглаживания ([member rendering/anti_aliasing/quality/"
"use_taa]) автоматически применит смещение [code]-0.5[/code] к этому значению, "
"а включение FXAA ([member rendering/anti_aliasing/quality/screen_space_aa]) "
"автоматически применит смещение [code]-0.25[/code] к этому значению. Если TAA "
"и FXAA включены одновременно, к этому значению применяется смещение "
"[code]-0.75[/code].\n"
"[b]Примечание:[/b] Если [member rendering/scaling_3d/scale] ниже, чем "
"[code]1.0[/code] (исключительно), [member rendering/textures/default_filters/"
"texture_mipmap_bias] используется для настройки автоматического смещения "
"mipmap, которое рассчитывается внутренне на основе коэффициента "
"масштабирования. Формула для этого: [code]log2(scaling_3d_scale) + "
"mipmap_bias[/code]."

msgid ""
"If [code]true[/code], uses nearest-neighbor mipmap filtering when using "
"mipmaps (also called \"bilinear filtering\"), which will result in visible "
"seams appearing between mipmap stages. This may increase performance in "
"mobile as less memory bandwidth is used. If [code]false[/code], linear mipmap "
"filtering (also called \"trilinear filtering\") is used.\n"
"[b]Note:[/b] This property is only read when the project starts. There is "
"currently no way to change this setting at run-time."
msgstr ""
"Если [code]true[/code], используется фильтрация mipmap ближайшего соседа при "
"использовании mipmap (также называемая «билинейная фильтрация»), что приведет "
"к появлению видимых швов между этапами mipmap. Это может повысить "
"производительность на мобильных устройствах, поскольку используется меньшая "
"пропускная способность памяти. Если [code]false[/code], используется линейная "
"фильтрация mipmap (также называемая «трилинейной фильтрацией»).\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. В "
"настоящее время нет возможности изменить эту настройку во время выполнения."

msgid ""
"The filtering quality to use for [OmniLight3D] and [SpotLight3D] projectors. "
"When using one of the anisotropic filtering modes, the anisotropic filtering "
"level is controlled by [member rendering/textures/default_filters/"
"anisotropic_filtering_level]."
msgstr ""
"Качество фильтрации для проекторов [OmniLight3D] и [SpotLight3D]. При "
"использовании одного из режимов анизотропной фильтрации уровень анизотропной "
"фильтрации контролируется [member rendering/textures/default_filters/"
"anisotropic_filtering_level]."

msgid ""
"If [code]true[/code], the texture importer will import lossless textures "
"using the PNG format. Otherwise, it will default to using WebP."
msgstr ""
"Если [code]true[/code], импортер текстур будет импортировать текстуры без "
"потерь, используя формат PNG. В противном случае он будет по умолчанию "
"использовать WebP."

msgid ""
"If [code]true[/code], the GPU texture compressor will cache the local "
"RenderingDevice and its resources (shaders and pipelines), allowing for "
"faster subsequent imports at a memory cost."
msgstr ""
"Если [code]true[/code], компрессор текстур графического процессора будет "
"кэшировать локальное RenderingDevice и его ресурсы (шейдеры и конвейеры), что "
"позволит ускорить последующий импорт за счет памяти."

msgid ""
"If [code]true[/code], the texture importer will utilize the GPU for "
"compressing textures, improving the import time of large images.\n"
"[b]Note:[/b] This only functions on a device which supports either Vulkan, "
"Direct3D 12, or Metal as a rendering driver.\n"
"[b]Note:[/b] Currently this only affects certain compressed formats (BC1, "
"BC3, BC4, BC5, and BC6), all of which are exclusive to desktop platforms and "
"consoles."
msgstr ""
"Если [code]true[/code], импортер текстур будет использовать графический "
"процессор для сжатия текстур, что улучшит время импорта больших изображений.\n"
"[b]Примечание:[/b] Это работает только на устройстве, которое поддерживает "
"Vulkan, Direct3D 12 или Metal в качестве драйвера рендеринга.\n"
"[b]Примечание:[/b] В настоящее время это влияет только на определенные сжатые "
"форматы (BC1, BC3, BC4, BC5 и BC6), все из которых являются эксклюзивными для "
"настольных платформ и консолей."

msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the Ericsson Texture Compression 2 algorithm for lower quality "
"textures and normal maps and Adaptable Scalable Texture Compression algorithm "
"for high quality textures (in 4×4 block size).\n"
"[b]Note:[/b] This setting is an override. The texture importer will always "
"import the format the host platform needs, even if this is set to "
"[code]false[/code].\n"
"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].godot/imported/[/code] "
"folder located inside the project folder then restart the editor (see [member "
"application/config/use_hidden_project_data_directory])."
msgstr ""
"Если [code]true[/code], импортер текстур будет импортировать сжатые VRAM "
"текстуры с использованием алгоритма Ericsson Texture Compression 2 для "
"текстур и карт нормалей низкого качества и алгоритма Adaptable Scalable "
"Texture Compression для текстур высокого качества (в размере блока 4×4).\n"
"[b]Примечание:[/b] Этот параметр переопределяет. Импортер текстур всегда "
"будет импортировать формат, необходимый хост-платформе, даже если он "
"установлен на [code]false[/code].\n"
"[b]Примечание:[/b] Изменение этого параметра [i]не[/i] влияет на текстуры, "
"которые уже были импортированы ранее. Чтобы этот параметр применился к "
"текстурам, которые уже были импортированы, выйдите из редактора, удалите "
"папку [code].godot/imported/[/code], расположенную внутри папки проекта, "
"затем перезапустите редактор (см. [member application/config/"
"use_hidden_project_data_directory])."

msgid ""
"If [code]true[/code], the texture importer will import VRAM-compressed "
"textures using the S3 Texture Compression algorithm (DXT1-5) for lower "
"quality textures and the BPTC algorithm (BC6H and BC7) for high quality "
"textures. This algorithm is only supported on PC desktop platforms and "
"consoles.\n"
"[b]Note:[/b] This setting is an override. The texture importer will always "
"import the format the host platform needs, even if this is set to "
"[code]false[/code].\n"
"[b]Note:[/b] Changing this setting does [i]not[/i] impact textures that were "
"already imported before. To make this setting apply to textures that were "
"already imported, exit the editor, remove the [code].godot/imported/[/code] "
"folder located inside the project folder then restart the editor (see [member "
"application/config/use_hidden_project_data_directory])."
msgstr ""
"Если [code]true[/code], импортер текстур будет импортировать сжатые VRAM "
"текстуры с использованием алгоритма сжатия текстур S3 (DXT1-5) для текстур "
"низкого качества и алгоритма BPTC (BC6H и BC7) для текстур высокого качества. "
"Этот алгоритм поддерживается только на настольных ПК-платформах и консолях.\n"
"[b]Примечание:[/b] Этот параметр переопределяет. Импортер текстур всегда "
"будет импортировать формат, необходимый хост-платформе, даже если он "
"установлен на [code]false[/code].\n"
"[b]Примечание:[/b] Изменение этого параметра [i]не[/i] влияет на текстуры, "
"которые уже были импортированы ранее. Чтобы этот параметр применялся к "
"текстурам, которые уже были импортированы, выйдите из редактора, удалите "
"папку [code].godot/imported/[/code], расположенную внутри папки проекта, "
"затем перезапустите редактор (см. [member application/config/"
"use_hidden_project_data_directory])."

msgid ""
"The default compression method for WebP. Affects both lossy and lossless "
"WebP. A higher value results in smaller files at the cost of compression "
"speed. Decompression speed is mostly unaffected by the compression method. "
"Supported values are 0 to 6. Note that compression methods above 4 are very "
"slow and offer very little savings."
msgstr ""
"Метод сжатия по умолчанию для WebP. Влияет как на WebP с потерями, так и на "
"WebP без потерь. Более высокое значение приводит к уменьшению размера файлов "
"за счет скорости сжатия. Скорость распаковки в основном не зависит от метода "
"сжатия. Поддерживаемые значения: от 0 до 6. Обратите внимание, что методы "
"сжатия выше 4 очень медленные и обеспечивают очень небольшую экономию."

msgid ""
"The default compression factor for lossless WebP. Decompression speed is "
"mostly unaffected by the compression factor. Supported values are 0 to 100."
msgstr ""
"Коэффициент сжатия по умолчанию для WebP без потерь. Скорость распаковки в "
"основном не зависит от коэффициента сжатия. Поддерживаемые значения от 0 до "
"100."

msgid ""
"If [code]true[/code], enables [member Viewport.use_hdr_2d] on the root "
"viewport. 2D rendering will use a high dynamic range (HDR) format framebuffer "
"matching the bit depth of the 3D framebuffer. When using the Forward+ or "
"Compatibility renderer, this will be an [code]RGBA16[/code] framebuffer. When "
"using the Mobile renderer, it will be an [code]RGB10_A2[/code] framebuffer.\n"
"Additionally, 2D rendering will take place in linear color space and will be "
"converted to sRGB space immediately before blitting to the screen (if the "
"Viewport is attached to the screen).\n"
"Practically speaking, this means that the end result of the Viewport will not "
"be clamped to the [code]0-1[/code] range and can be used in 3D rendering "
"without color space adjustments. This allows 2D rendering to take advantage "
"of effects requiring high dynamic range (e.g. 2D glow) as well as "
"substantially improves the appearance of effects requiring highly detailed "
"gradients.\n"
"[b]Note:[/b] This property is only read when the project starts. To toggle "
"HDR 2D at runtime, set [member Viewport.use_hdr_2d] on the root [Viewport]."
msgstr ""
"Если [code]true[/code], включается [member Viewport.use_hdr_2d] на корневом "
"вьюпорте. 2D-рендеринг будет использовать кадровый буфер формата HDR, "
"соответствующий битовой глубине 3D-кадра. При использовании рендерера "
"Forward+ или Compatibility это будет кадровый буфер [code]RGBA16[/code]. При "
"использовании мобильного рендерера это будет кадровый буфер [code]RGB10_A2[/"
"code].\n"
"Кроме того, 2D-рендеринг будет выполняться в линейном цветовом пространстве и "
"будет преобразован в пространство sRGB непосредственно перед выводом на экран "
"(если вьюпорт прикреплён к экрану).\n"
"На практике это означает, что конечный результат вьюпорта не будет ограничен "
"диапазоном [code]0-1[/code] и может использоваться в 3D-рендеринге без "
"корректировки цветового пространства. Это позволяет использовать 2D-рендеринг "
"для создания эффектов, требующих широкого динамического диапазона (например, "
"2D-свечения), а также значительно улучшает внешний вид эффектов, требующих "
"высокодетализированных градиентов.\n"
"[b]Примечание:[/b] Это свойство считывается только при запуске проекта. Чтобы "
"включить HDR 2D во время выполнения, установите [member Viewport.use_hdr_2d] "
"в корневом [Viewport]."

msgid ""
"If [code]true[/code], enables [member Viewport.transparent_bg] on the root "
"viewport. This allows per-pixel transparency to be effective after also "
"enabling [member display/window/size/transparent] and [member display/window/"
"per_pixel_transparency/allowed]."
msgstr ""
"Если [code]true[/code], включает [member Viewport.transparent_bg] на корневом "
"окне просмотра. Это позволяет прозрачности по пикселям быть эффективной после "
"включения [member display/window/size/transparent] и [member display/window/"
"per_pixel_transparency/allowed]."

msgid ""
"Set the default Variable Rate Shading (VRS) mode for the main viewport. See "
"[member Viewport.vrs_mode] to change this at runtime, and [enum "
"Viewport.VRSMode] for possible values."
msgstr ""
"Установите режим Variable Rate Shading (VRS) по умолчанию для главного окна "
"просмотра. См. [member Viewport.vrs_mode], чтобы изменить это во время "
"выполнения, и [enum Viewport.VRSMode] для возможных значений."

msgid ""
"If [member rendering/vrs/mode] is set to [b]Texture[/b], this is the path to "
"default texture loaded as the VRS image.\n"
"The texture [i]must[/i] use a lossless compression format so that colors can "
"be matched precisely. The following VRS densities are mapped to various "
"colors, with brighter colors representing a lower level of shading "
"precision:\n"
"[codeblock lang=text]\n"
"- 1×1 = rgb(0, 0, 0)     - #000000\n"
"- 1×2 = rgb(0, 85, 0)    - #005500\n"
"- 2×1 = rgb(85, 0, 0)    - #550000\n"
"- 2×2 = rgb(85, 85, 0)   - #555500\n"
"- 2×4 = rgb(85, 170, 0)  - #55aa00\n"
"- 4×2 = rgb(170, 85, 0)  - #aa5500\n"
"- 4×4 = rgb(170, 170, 0) - #aaaa00\n"
"- 4×8 = rgb(170, 255, 0) - #aaff00 - Not supported on most hardware\n"
"- 8×4 = rgb(255, 170, 0) - #ffaa00 - Not supported on most hardware\n"
"- 8×8 = rgb(255, 255, 0) - #ffff00 - Not supported on most hardware\n"
"[/codeblock]"
msgstr ""
"Если [member rendering/vrs/mode] установлен на [b]Texture[/b], это путь к "
"текстуре по умолчанию, загруженной как изображение VRS.\n"
"Текстура [i]должна[/i] использовать формат сжатия без потерь, чтобы цвета "
"можно было точно сопоставить. Следующие плотности VRS сопоставляются с "
"различными цветами, причем более яркие цвета представляют более низкий "
"уровень точности затенения:\n"
"[codeblock lang=text]\n"
"- 1×1 = rgb(0, 0, 0)     - #000000\n"
"- 1×2 = rgb(0, 85, 0)    - #005500\n"
"- 2×1 = rgb(85, 0, 0)    - #550000\n"
"- 2×2 = rgb(85, 85, 0)   - #555500\n"
"- 2×4 = rgb(85, 170, 0)  - #55aa00\n"
"- 4×2 = rgb(170, 85, 0)  - #aa5500\n"
"- 4×4 = rgb(170, 170, 0) - #aaaa00\n"
"- 4×8 = rgb(170, 255, 0) - #aaff00 - Не поддерживается на большинстве "
"аппаратных средств\n"
"- 8×4 = rgb(255, 170, 0) - #ffaa00 - Не поддерживается на большинстве "
"аппаратных средств\n"
"- 8×8 = rgb(255, 255, 0) - #ffff00 - Не поддерживается на большинстве "
"аппаратных средств\n"
"[/codeblock]"

msgid ""
"The ratio of [WorkerThreadPool]'s threads that will be reserved for low-"
"priority tasks. For example, if 10 threads are available and this value is "
"set to [code]0.3[/code], 3 of the worker threads will be reserved for low-"
"priority tasks. The actual value won't exceed the number of CPU cores minus "
"one, and if possible, at least one worker thread will be dedicated to low-"
"priority tasks."
msgstr ""
"Соотношение потоков [WorkerThreadPool], которые будут зарезервированы для "
"низкоприоритетных задач. Например, если доступно 10 потоков и это значение "
"установлено как [code]0.3[/code], 3 рабочих потока будут зарезервированы для "
"низкоприоритетных задач. Фактическое значение не будет превышать количество "
"ядер ЦП минус один, и, если возможно, по крайней мере один рабочий поток "
"будет выделен для низкоприоритетных задач."

msgid ""
"Maximum number of threads to be used by [WorkerThreadPool]. Value of "
"[code]-1[/code] means [code]1[/code] on Web, or a number of [i]logical[/i] "
"CPU cores available on other platforms (see [method OS.get_processor_count])."
msgstr ""
"Максимальное количество потоков, которые может использовать "
"[WorkerThreadPool]. Значение [code]-1[/code] означает [code]1[/code] на Web "
"или количество [i]логических[/i] ядер CPU, доступных на других платформах "
"(см. [method OS.get_processor_count])."

msgid ""
"If [code]true[/code], enables the analog threshold binding modifier if "
"supported by the XR runtime."
msgstr ""
"Если [code]true[/code], включает модификатор привязки аналогового порога, "
"если он поддерживается средой выполнения XR."

msgid ""
"If [code]true[/code], enables the D-pad binding modifier if supported by the "
"XR runtime."
msgstr ""
"Если [code]true[/code], включается модификатор привязки D-pad, если "
"поддерживается средой выполнения XR."

msgid "Action map configuration to load by default."
msgstr "Конфигурация карты действий для загрузки по умолчанию."

msgid "If [code]true[/code], Godot will setup and initialize OpenXR on startup."
msgstr ""
"Если [code]true[/code], Godot настроит и инициализирует OpenXR при запуске."

msgid ""
"Specify how OpenXR should blend in the environment. This is specific to "
"certain AR and passthrough devices where camera images are blended in by the "
"XR compositor."
msgstr ""
"Укажите, как OpenXR должен вписываться в окружающую среду. Это относится к "
"определенным устройствам дополненной реальности и сквозным устройствам, где "
"изображения с камер вводятся в среду компоновщиком XR."

msgid ""
"Specifies the message types for which we request debug messages. Requires "
"[member xr/openxr/extensions/debug_utils] to be set and the extension to be "
"supported by the XR runtime."
msgstr ""
"Указывает типы сообщений, для которых мы запрашиваем отладочные сообщения. "
"Требует установки [member xr/openxr/extensions/debug_utils] и поддержки "
"расширения средой выполнения XR."

msgid ""
"Enables debug utilities on XR runtimes that supports the debug utils "
"extension. Sets the maximum severity being reported (0 = disabled, 1 = error, "
"2 = warning, 3 = info, 4 = verbose)."
msgstr ""
"Включает отладочные утилиты в средах выполнения XR, которые поддерживают "
"расширение debug utils. Устанавливает максимальную серьезность сообщаемых "
"сообщений (0 = отключено, 1 = ошибка, 2 = предупреждение, 3 = информация, 4 = "
"подробно)."

msgid ""
"Specify whether to enable eye tracking for this project. Depending on the "
"platform, additional export configuration may be needed."
msgstr ""
"Укажите, следует ли включить отслеживание глаз для этого проекта. В "
"зависимости от платформы может потребоваться дополнительная конфигурация "
"экспорта."

msgid ""
"If [code]true[/code] the hand interaction profile extension will be activated "
"if supported by the platform."
msgstr ""
"Если [code]true[/code], расширение профиля взаимодействия рук будет "
"активировано, если поддерживается платформой."

msgid ""
"If [code]true[/code], the hand tracking extension is enabled if available.\n"
"[b]Note:[/b] By default hand tracking will only work for data sources chosen "
"by the XR runtime. For SteamVR this is the controller inferred data source, "
"for most other runtimes this is the unobstructed data source. There is no way "
"to query this. If a runtime supports the OpenXR data source extension you can "
"use the [member xr/openxr/extensions/hand_tracking_controller_data_source] "
"and/or [member xr/openxr/extensions/hand_tracking_unobstructed_data_source] "
"to indicate you wish to enable these data sources. If neither is selected the "
"data source extension is not enabled and the XR runtimes default behavior "
"persists."
msgstr ""
"Если [code]true[/code], расширение отслеживания рук включено, если доступно.\n"
"[b]Примечание:[/b] По умолчанию отслеживание рук будет работать только для "
"источников данных, выбранных средой выполнения XR. Для SteamVR это "
"предполагаемый контроллером источник данных, для большинства других сред "
"выполнения это беспрепятственный источник данных. Нет способа запросить это. "
"Если среда выполнения поддерживает расширение источника данных OpenXR, вы "
"можете использовать [member xr/openxr/extensions/"
"hand_tracking_controller_data_source] и/или [member xr/openxr/extensions/"
"hand_tracking_unobstructed_data_source], чтобы указать, что вы хотите "
"включить эти источники данных. Если ни один из них не выбран, расширение "
"источника данных не включено, и поведение среды выполнения XR по умолчанию "
"сохраняется."

msgid ""
"If [code]true[/code], support for the controller inferred data source is "
"requested. If supported, you will receive hand tracking data even if the user "
"has a controller in hand, with finger positions automatically inferred from "
"controller input and/or sensors.\n"
"[b]Note:[/b] This requires the OpenXR data source extension and controller "
"inferred handtracking to be supported by the XR runtime. If not supported "
"this setting will be ignored. [member xr/openxr/extensions/hand_tracking] "
"must be enabled for this setting to be used."
msgstr ""
"Если [code]true[/code], запрашивается поддержка источника данных, выводимого "
"контроллером. Если поддерживается, вы будете получать данные отслеживания "
"рук, даже если пользователь держит контроллер, при этом положения пальцев "
"автоматически выводятся из входных данных контроллера и/или датчиков.\n"
"[b]Примечание:[/b] Для этого требуется поддержка расширения источника данных "
"OpenXR и выводимого отслеживания рук от контроллера средой выполнения XR. "
"Если не поддерживается, эта настройка будет игнорироваться. Для использования "
"этой настройки должно быть включено [member xr/openxr/extensions/"
"hand_tracking]."

msgid ""
"If [code]true[/code], support for the unobstructed data source is requested. "
"If supported, you will receive hand tracking data based on the actual finger "
"positions of the user often determined by optical tracking.\n"
"[b]Note:[/b] This requires the OpenXR data source extension and unobstructed "
"handtracking to be supported by the XR runtime. If not supported this setting "
"will be ignored. [member xr/openxr/extensions/hand_tracking] must be enabled "
"for this setting to be used."
msgstr ""
"Если [code]true[/code], запрашивается поддержка источника данных с прямым "
"отслеживанием. Если поддерживается, вы будете получать данные отслеживания "
"рук на основе фактических положений пальцев пользователя, обычно определяемых "
"оптическим отслеживанием.\n"
"[b]Примечание:[/b] Для этого требуется поддержка расширения источника данных "
"OpenXR и прямого отслеживания рук средой выполнения XR. Если не "
"поддерживается, эта настройка будет игнорироваться. Для использования этой "
"настройки должно быть включено [member xr/openxr/extensions/hand_tracking]."

msgid ""
"If [code]true[/code] we enable the render model extension if available.\n"
"[b]Note:[/b] This relates to the core OpenXR render model extension and has "
"no relation to any vendor render model extensions."
msgstr ""
"Если [code]true[/code], мы включаем расширение модели рендеринга, если оно "
"доступно.\n"
"[b]Примечание:[/b] Это относится к базовому расширению модели рендеринга "
"OpenXR и не имеет отношения к расширениям модели рендеринга других "
"поставщиков."

msgid ""
"Specify whether OpenXR should be configured for an HMD or a hand held device."
msgstr ""
"Укажите, следует ли настраивать OpenXR для HMD или портативного устройства."

msgid ""
"If [code]true[/code] and foveation is supported, will automatically adjust "
"foveation level based on framerate up to the level set on [member xr/openxr/"
"foveation_level]."
msgstr ""
"Если [code]true[/code] и поддерживается фовеация, будет автоматически "
"регулироваться уровень фовеации на основе частоты кадров до уровня, "
"установленного в [member xr/openxr/foveation_level]."

msgid ""
"Applied foveation level if supported: 0 = off, 1 = low, 2 = medium, 3 = "
"high.\n"
"[b]Note:[/b] On platforms other than Android, if [member rendering/"
"anti_aliasing/quality/msaa_3d] is enabled, this feature will be disabled."
msgstr ""
"Применяемый уровень фовеации, если поддерживается: 0 = выключено, 1 = низкое, "
"2 = среднее, 3 = высокое.\n"
"[b]Примечание:[/b] На платформах, отличных от Android, если включен [member "
"rendering/anti_aliasing/quality/msaa_3d], эта функция будет отключена."

msgid "Specify the default reference space."
msgstr "Укажите ссылочное пространство по умолчанию."

msgid ""
"If [code]true[/code], Godot will display an alert modal when OpenXR "
"initialization fails on startup."
msgstr ""
"Если [code]true[/code], Godot отобразит модальное окно предупреждения, если "
"инициализация OpenXR завершится неудачно при запуске."

msgid ""
"If [code]true[/code], OpenXR will manage the depth buffer and use the depth "
"buffer for advanced reprojection provided this is supported by the XR "
"runtime. Note that some rendering features in Godot can't be used with this "
"feature."
msgstr ""
"Если [code]true[/code], OpenXR будет управлять буфером глубины и использовать "
"буфер глубины для расширенного повторного проецирования, если это "
"поддерживается средой выполнения XR. Обратите внимание, что некоторые функции "
"рендеринга в Godot не могут использоваться с этой функцией."

msgid ""
"Specify the view configuration with which to configure OpenXR setting up "
"either Mono or Stereo rendering."
msgstr ""
"Укажите конфигурацию представления, с помощью которой будет настроена "
"настройка OpenXR для моно или стереорендеринга."

msgid "If [code]true[/code], Godot will compile shaders required for XR."
msgstr "Если [code]true[/code], Godot скомпилирует шейдеры, необходимые для XR."

msgid "Emitted when any setting is changed, up to once per process frame."
msgstr ""
"Выдается при изменении любой настройки, до одного раза за кадр процесса."

msgid "Interpolates an [Object]'s property over time."
msgstr "Интерполирует свойство [Object] с течением времени."

msgid ""
"[PropertyTweener] is used to interpolate a property in an object. See [method "
"Tween.tween_property] for more usage information.\n"
"The tweener will finish automatically if the target object is freed.\n"
"[b]Note:[/b] [method Tween.tween_property] is the only correct way to create "
"[PropertyTweener]. Any [PropertyTweener] created manually will not function "
"correctly."
msgstr ""
"[PropertyTweener] используется для интерполяции свойства в объекте. См. "
"[method Tween.tween_property] для получения дополнительной информации об "
"использовании.\n"
"Tweener завершится автоматически, если целевой объект будет освобожден.\n"
"[b]Примечание:[/b] [method Tween.tween_property] — единственный правильный "
"способ создания [PropertyTweener]. Любой [PropertyTweener], созданный "
"вручную, не будет работать правильно."

msgid ""
"When called, the final value will be used as a relative value instead.\n"
"[b]Example:[/b] Move the node by [code]100[/code] pixels to the right.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property(self, \"position\", Vector2.RIGHT * 100, "
"1).as_relative()\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(this, \"position\", Vector2.Right * 100.0f, "
"1.0f).AsRelative();\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"При вызове окончательное значение будет использоваться как относительное "
"значение.\n"
"[b]Пример:[/b] Переместить узел на [code]100[/code] пикселей вправо.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property(self, \"position\", Vector2.RIGHT * 100, "
"1).as_relative()\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(this, \"position\", Vector2.Right * 100.0f, "
"1.0f).AsRelative();\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Sets a custom initial value to the [PropertyTweener].\n"
"[b]Example:[/b] Move the node from position [code](100, 100)[/code] to [code]"
"(200, 100)[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from(Vector2(100, 100))\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).From(new Vector2(100.0f, 100.0f));\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Устанавливает пользовательское начальное значение для [PropertyTweener].\n"
"[b]Пример:[/b] Переместить узел из позиции [code](100, 100)[/code] в [code]"
"(200, 100)[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from(Vector2(100, 100))\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).From(new Vector2(100.0f, 100.0f));\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Makes the [PropertyTweener] use the current property value (i.e. at the time "
"of creating this [PropertyTweener]) as a starting point. This is equivalent "
"of using [method from] with the current value. These two calls will do the "
"same:\n"
"[codeblocks]\n"
"[gdscript]\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from(position)\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from_current()\n"
"[/gdscript]\n"
"[csharp]\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).From(Position);\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).FromCurrent();\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Заставляет [PropertyTweener] использовать текущее значение свойства (т.е. на "
"момент создания этого [PropertyTweener]) в качестве отправной точки. Это "
"эквивалентно использованию [method from] с текущим значением. Эти два вызова "
"сделают то же самое:\n"
"[codeblocks]\n"
"[gdscript]\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from(position)\n"
"tween.tween_property(self, \"position\", Vector2(200, 100), "
"1).from_current()\n"
"[/gdscript]\n"
"[csharp]\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).From(Position);\n"
"tween.TweenProperty(this, \"position\", new Vector2(200.0f, 100.0f), "
"1.0f).FromCurrent();\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Allows interpolating the value with a custom easing function. The provided "
"[param interpolator_method] will be called with a value ranging from "
"[code]0.0[/code] to [code]1.0[/code] and is expected to return a value within "
"the same range (values outside the range can be used for overshoot). The "
"return value of the method is then used for interpolation between initial and "
"final value. Note that the parameter passed to the method is still subject to "
"the tweener's own easing.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@export var curve: Curve\n"
"\n"
"func _ready():\n"
"\tvar tween = create_tween()\n"
"\t# Interpolate the value using a custom curve.\n"
"\ttween.tween_property(self, \"position:x\", 300, "
"1).as_relative().set_custom_interpolator(tween_curve)\n"
"\n"
"func tween_curve(v):\n"
"\treturn curve.sample_baked(v)\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export]\n"
"public Curve Curve { get; set; }\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tTween tween = CreateTween();\n"
"\t// Interpolate the value using a custom curve.\n"
"\tCallable tweenCurveCallable = Callable.From<float, float>(TweenCurve);\n"
"\ttween.TweenProperty(this, \"position:x\", 300.0f, "
"1.0f).AsRelative().SetCustomInterpolator(tweenCurveCallable);\n"
"}\n"
"\n"
"private float TweenCurve(float value)\n"
"{\n"
"\treturn Curve.SampleBaked(value);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Позволяет интерполировать значение с помощью пользовательской функции "
"смягчения. Предоставленный [param interpolator_method] будет вызван со "
"значением в диапазоне от [code]0.0[/code] до [code]1.0[/code] и, как "
"ожидается, вернет значение в том же диапазоне (значения вне диапазона могут "
"использоваться для превышения). Возвращаемое значение метода затем "
"используется для интерполяции между начальным и конечным значением. Обратите "
"внимание, что параметр, переданный методу, по-прежнему зависит от "
"собственного смягчения tweener.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@export var curve: Curve\n"
"\n"
"func _ready():\n"
"\tvar tween = create_tween()\n"
"\t# Интерполируйте значение, используя пользовательскую кривую.\n"
"\ttween.tween_property(self, \"position:x\", 300, "
"1).as_relative().set_custom_interpolator(tween_curve)\n"
"\n"
"func tween_curve(v):\n"
"\treturn curve.sample_baked(v)\n"
"[/gdscript]\n"
"[csharp]\n"
"[Export]\n"
"public Curve Curve { get; set; }\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\tTween tween = CreateTween();\n"
"\t// Интерполируйте значение, используя пользовательскую кривую.\n"
"\tCallable tweenCurveCallable = Callable.From<float, float>(TweenCurve);\n"
"\ttween.TweenProperty(this, \"position:x\", 300.0f, "
"1.0f).AsRelative().SetCustomInterpolator(tweenCurveCallable);\n"
"}\n"
"\n"
"private float TweenCurve(float value)\n"
"{\n"
"\treturn Curve.SampleBaked(value);\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Sets the time in seconds after which the [PropertyTweener] will start "
"interpolating. By default there's no delay."
msgstr ""
"Устанавливает время в секундах, после которого [PropertyTweener] начнет "
"интерполяцию. По умолчанию задержки нет."

msgid "Class representing a square mesh facing the camera."
msgstr "Класс, представляющий собой квадратную сетку, обращенную к камере."

msgid ""
"Class representing a square [PrimitiveMesh]. This flat mesh does not have a "
"thickness. By default, this mesh is aligned on the X and Y axes; this "
"rotation is more suited for use with billboarded materials. A [QuadMesh] is "
"equivalent to a [PlaneMesh] except its default [member PlaneMesh.orientation] "
"is [constant PlaneMesh.FACE_Z]."
msgstr ""
"Класс, представляющий квадрат [PrimitiveMesh]. Эта плоская сетка не имеет "
"толщины. По умолчанию эта сетка выровнена по осям X и Y; такое вращение "
"больше подходит для использования с материалами для рекламных щитов "
"(billboard). [QuadMesh] эквивалентен [PlaneMesh], за исключением того, что "
"его [member PlaneMesh.orientation] по умолчанию равен [constant "
"PlaneMesh.FACE_Z]."

msgid "2D in 3D Viewport Demo"
msgstr "Демонстрация 2D в 3D-виде"

msgid "Flat plane shape for use with occlusion culling in [OccluderInstance3D]."
msgstr ""
"Форма плоской плоскости для использования с отбраковкой окклюзии в "
"[OccluderInstance3D]."

msgid ""
"[QuadOccluder3D] stores a flat plane shape that can be used by the engine's "
"occlusion culling system. See also [PolygonOccluder3D] if you need to "
"customize the quad's shape.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[QuadOccluder3D] хранит форму плоской плоскости, которую может использовать "
"система отсечения окклюзии движка. См. также [PolygonOccluder3D], если вам "
"нужно настроить форму квадрата.\n"
"См. документацию [OccluderInstance3D] для получения инструкций по настройке "
"отсечения окклюзии."

msgid "The quad's size in 3D units."
msgstr "Размер квадрата в 3D-единицах."

msgid "A unit quaternion used for representing 3D rotations."
msgstr ""
"Единичный кватернион, используемый для представления трехмерных вращений."

msgid ""
"The [Quaternion] built-in [Variant] type is a 4D data structure that "
"represents rotation in the form of a [url=https://en.wikipedia.org/wiki/"
"Quaternions_and_spatial_rotation]Hamilton convention quaternion[/url]. "
"Compared to the [Basis] type which can store both rotation and scale, "
"quaternions can [i]only[/i] store rotation.\n"
"A [Quaternion] is composed by 4 floating-point components: [member w], "
"[member x], [member y], and [member z]. These components are very compact in "
"memory, and because of this some operations are more efficient and less "
"likely to cause floating-point errors. Methods such as [method get_angle], "
"[method get_axis], and [method slerp] are faster than their [Basis] "
"counterparts.\n"
"For a great introduction to quaternions, see [url=https://www.youtube.com/"
"watch?v=d4EgbgTm0Bg]this video by 3Blue1Brown[/url]. You do not need to know "
"the math behind quaternions, as Godot provides several helper methods that "
"handle it for you. These include [method slerp] and [method "
"spherical_cubic_interpolate], as well as the [code]*[/code] operator.\n"
"[b]Note:[/b] Quaternions must be normalized before being used for rotation "
"(see [method normalized]).\n"
"[b]Note:[/b] Similarly to [Vector2] and [Vector3], the components of a "
"quaternion use 32-bit precision by default, unlike [float] which is always 64-"
"bit. If double precision is needed, compile the engine with the option "
"[code]precision=double[/code]."
msgstr ""
"Встроенный тип [Variant] [Quaternion] — это 4D-структура данных, которая "
"представляет вращение в виде [url=https://en.wikipedia.org/wiki/"
"Quaternions_and_spatial_rotation]кватерниона соглашения Гамильтона[/url]. По "
"сравнению с типом [Basis], который может хранить как вращение, так и масштаб, "
"кватернионы могут хранить [i]только[/i] вращение.\n"
"[Quaternion] состоит из 4 компонентов с плавающей точкой: [member w], [member "
"x], [member y] и [member z]. Эти компоненты очень компактны в памяти, и из-за "
"этого некоторые операции более эффективны и менее склонны вызывать ошибки с "
"плавающей точкой. Такие методы, как [method get_angle], [method get_axis] и "
"[method slerp], быстрее своих аналогов из [Basis].\n"
"Для отличного введения в кватернионы посмотрите [url=https://www.youtube.com/"
"watch?v=d4EgbgTm0Bg]это видео от 3Blue1Brown[/url]. Вам не нужно знать "
"математику, лежащую в основе кватернионов, так как Godot предоставляет "
"несколько вспомогательных методов, которые справляются с этим за вас. К ним "
"относятся [method slerp] и [method spheric_cubic_interpolate], а также "
"оператор [code]*[/code].\n"
"[b]Примечание:[/b] Кватернионы должны быть нормализованы перед использованием "
"для вращения (см. [method normalized]).\n"
"[b]Примечание:[/b] Аналогично [Vector2] и [Vector3], компоненты кватерниона "
"по умолчанию используют 32-битную точность, в отличие от [float], который "
"всегда 64-битный. Если требуется двойная точность, скомпилируйте движок с "
"опцией [code]precision=double[/code]."

msgid "3Blue1Brown's video on Quaternions"
msgstr "Видео 3Blue1Brown о кватернионах"

msgid "Online Quaternion Visualization"
msgstr "Онлайн-визуализация кватерниона"

msgid "Advanced Quaternion Visualization"
msgstr "Расширенная визуализация кватерниона"

msgid ""
"Constructs a [Quaternion] identical to [constant IDENTITY].\n"
"[b]Note:[/b] In C#, this constructs a [Quaternion] with all of its components "
"set to [code]0.0[/code]."
msgstr ""
"Создает [Quaternion], идентичный [constant IDENTITY].\n"
"[b]Примечание:[/b] В C# это создает [Quaternion], все компоненты которого "
"установлены в [code]0.0[/code]."

msgid "Constructs a [Quaternion] as a copy of the given [Quaternion]."
msgstr "Создает [Quaternion] как копию заданного [Quaternion]."

msgid ""
"Constructs a [Quaternion] representing the shortest arc between [param "
"arc_from] and [param arc_to]. These can be imagined as two points "
"intersecting a sphere's surface, with a radius of [code]1.0[/code]."
msgstr ""
"Создает [Quaternion], представляющий кратчайшую дугу между [param arc_from] и "
"[param arc_to]. Их можно представить как две точки, пересекающие поверхность "
"сферы, с радиусом [code]1.0[/code]."

msgid ""
"Constructs a [Quaternion] representing rotation around the [param axis] by "
"the given [param angle], in radians. The axis must be a normalized vector."
msgstr ""
"Создает [Quaternion], представляющий вращение вокруг [param axis] на заданный "
"[param angle] в радианах. Ось должна быть нормализованным вектором."

msgid ""
"Constructs a [Quaternion] from the given rotation [Basis].\n"
"This constructor is faster than [method Basis.get_rotation_quaternion], but "
"the given basis must be [i]orthonormalized[/i] (see [method "
"Basis.orthonormalized]). Otherwise, the constructor fails and returns "
"[constant IDENTITY]."
msgstr ""
"Создает [Quaternion] из заданного вращения [Basis].\n"
"Этот конструктор быстрее, чем [method Basis.get_rotation_quaternion], но "
"заданный базис должен быть [i]ортонормализован[/i] (см. [method "
"Basis.orthonormalized]). В противном случае конструктор завершается неудачей "
"и возвращает [constant IDENTITY]."

msgid ""
"Constructs a [Quaternion] defined by the given values.\n"
"[b]Note:[/b] Only normalized quaternions represent rotation; if these values "
"are not normalized, the new [Quaternion] will not be a valid rotation."
msgstr ""
"Создает [Quaternion], определенный заданными значениями.\n"
"[b]Примечание:[/b] Только нормализованные кватернионы представляют вращение; "
"если эти значения не нормализованы, новый [Quaternion] не будет допустимым "
"для вращения."

msgid ""
"Returns the angle between this quaternion and [param to]. This is the "
"magnitude of the angle you would need to rotate by to get from one to the "
"other.\n"
"[b]Note:[/b] The magnitude of the floating-point error for this method is "
"abnormally high, so methods such as [code]is_zero_approx[/code] will not work "
"reliably."
msgstr ""
"Возвращает угол между этим кватернионом и [param to]. Это величина угла, на "
"который вам нужно повернуть, чтобы перейти от одного к другому.\n"
"[b]Примечание:[/b] Величина ошибки с плавающей точкой для этого метода "
"аномально высока, поэтому такие методы, как [code]is_zero_approx[/code], не "
"будут работать надежно."

msgid ""
"Returns the dot product between this quaternion and [param with].\n"
"This is equivalent to [code](quat.x * with.x) + (quat.y * with.y) + (quat.z * "
"with.z) + (quat.w * with.w)[/code]."
msgstr ""
"Возвращает скалярное произведение между этим кватернионом и [param with].\n"
"Это эквивалентно [code](quat.x * with.x) + (quat.y * with.y) + (quat.z * "
"with.z) + (quat.w * with.w)[/code]."

msgid ""
"Returns the exponential of this quaternion. The rotation axis of the result "
"is the normalized rotation axis of this quaternion, the angle of the result "
"is the length of the vector part of this quaternion."
msgstr ""
"Возвращает экспоненту этого кватерниона. Ось вращения результата — "
"нормализованная ось вращения этого кватерниона, угол результата — длина "
"векторной части этого кватерниона."

msgid ""
"Constructs a new [Quaternion] from the given [Vector3] of [url=https://"
"en.wikipedia.org/wiki/Euler_angles]Euler angles[/url], in radians. This "
"method always uses the YXZ convention ([constant EULER_ORDER_YXZ])."
msgstr ""
"Создает новый [Quaternion] из заданного [Vector3] [url=https://"
"en.wikipedia.org/wiki/Euler_angles]углов Эйлера[/url], в радианах. Этот метод "
"всегда использует соглашение YXZ ([constant EULER_ORDER_YXZ])."

msgid ""
"Returns the angle of the rotation represented by this quaternion.\n"
"[b]Note:[/b] The quaternion must be normalized."
msgstr ""
"Возвращает угол поворота, представленный этим кватернионом.\n"
"[b]Примечание:[/b] Кватернион должен быть нормализован."

msgid ""
"Returns the rotation axis of the rotation represented by this quaternion."
msgstr "Возвращает ось вращения, представленную этим кватернионом."

msgid ""
"Returns this quaternion's rotation as a [Vector3] of [url=https://"
"en.wikipedia.org/wiki/Euler_angles]Euler angles[/url], in radians.\n"
"The order of each consecutive rotation can be changed with [param order] (see "
"[enum EulerOrder] constants). By default, the YXZ convention is used "
"([constant EULER_ORDER_YXZ]): Z (roll) is calculated first, then X (pitch), "
"and lastly Y (yaw). When using the opposite method [method from_euler], this "
"order is reversed."
msgstr ""
"Возвращает вращение этого кватерниона как [Vector3] [url=https://"
"en.wikipedia.org/wiki/Euler_angles]углов Эйлера[/url] в радианах.\n"
"Порядок каждого последовательного вращения можно изменить с помощью [param "
"order] (см. константы [enum EulerOrder]). По умолчанию используется "
"соглашение YXZ ([constant EULER_ORDER_YXZ]): сначала вычисляется Z (roll), "
"затем X (pitch) и, наконец, Y (yaw). При использовании противоположного "
"метода [method from_euler] этот порядок меняется на обратный."

msgid ""
"Returns the inverse version of this quaternion, inverting the sign of every "
"component except [member w]."
msgstr ""
"Возвращает обратную версию этого кватерниона, инвертируя знак каждого "
"компонента, кроме [member w]."

msgid ""
"Returns [code]true[/code] if this quaternion and [param to] are approximately "
"equal, by calling [method @GlobalScope.is_equal_approx] on each component."
msgstr ""
"Возвращает [code]true[/code], если этот кватернион и [param to] "
"приблизительно равны, вызывая [method @GlobalScope.is_equal_approx] для "
"каждого компонента."

msgid ""
"Returns [code]true[/code] if this quaternion is finite, by calling [method "
"@GlobalScope.is_finite] on each component."
msgstr ""
"Возвращает [code]true[/code], если этот кватернион конечен, вызывая [method "
"@GlobalScope.is_finite] для каждого компонента."

msgid ""
"Returns [code]true[/code] if this quaternion is normalized. See also [method "
"normalized]."
msgstr ""
"Возвращает [code]true[/code], если этот кватернион нормализован. См. также "
"[method normalized]."

msgid "Returns this quaternion's length, also called magnitude."
msgstr "Возвращает длину этого кватерниона, также называемую величиной."

msgid ""
"Returns this quaternion's length, squared.\n"
"[b]Note:[/b] This method is faster than [method length], so prefer it if you "
"only need to compare quaternion lengths."
msgstr ""
"Возвращает длину этого кватерниона, возведенную в квадрат.\n"
"[b]Примечание:[/b] Этот метод быстрее, чем [method length], поэтому "
"предпочитайте его, если вам нужно только сравнить длины кватернионов."

msgid ""
"Returns the logarithm of this quaternion. Multiplies this quaternion's "
"rotation axis by its rotation angle, and stores the result in the returned "
"quaternion's vector part ([member x], [member y], and [member z]). The "
"returned quaternion's real part ([member w]) is always [code]0.0[/code]."
msgstr ""
"Возвращает логарифм этого кватерниона. Умножает ось вращения этого "
"кватерниона на его угол вращения и сохраняет результат в векторной части "
"возвращаемого кватерниона ([member x], [member y] и [member z]). "
"Действительная часть возвращаемого кватерниона ([member w]) всегда равна "
"[code]0.0[/code]."

msgid ""
"Returns a copy of this quaternion, normalized so that its length is "
"[code]1.0[/code]. See also [method is_normalized]."
msgstr ""
"Возвращает копию этого кватерниона, нормализованную так, что ее длина равна "
"[code]1.0[/code]. См. также [method is_normalized]."

msgid ""
"Performs a spherical-linear interpolation with the [param to] quaternion, "
"given a [param weight] and returns the result. Both this quaternion and "
"[param to] must be normalized."
msgstr ""
"Выполняет сферически-линейную интерполяцию с кватернионом [param to], "
"заданным [param weight] и возвращает результат. И этот кватернион, и [param "
"to] должны быть нормализованы."

msgid ""
"Performs a spherical-linear interpolation with the [param to] quaternion, "
"given a [param weight] and returns the result. Unlike [method slerp], this "
"method does not check if the rotation path is smaller than 90 degrees. Both "
"this quaternion and [param to] must be normalized."
msgstr ""
"Выполняет сферически-линейную интерполяцию с кватернионом [param to], "
"заданным [param weight] и возвращает результат. В отличие от [method slerp], "
"этот метод не проверяет, является ли путь вращения меньше 90 градусов. И этот "
"кватернион, и [param to] должны быть нормализованы."

msgid ""
"Performs a spherical cubic interpolation between quaternions [param pre_a], "
"this vector, [param b], and [param post_b], by the given amount [param "
"weight]."
msgstr ""
"Выполняет сферическую кубическую интерполяцию между кватернионами [param "
"pre_a], данным вектором, [param b] и [param post_b] на заданную величину "
"[param weight]."

msgid ""
"Performs a spherical cubic interpolation between quaternions [param pre_a], "
"this vector, [param b], and [param post_b], by the given amount [param "
"weight].\n"
"It can perform smoother interpolation than [method "
"spherical_cubic_interpolate] by the time values."
msgstr ""
"Выполняет сферическую кубическую интерполяцию между кватернионами [param "
"pre_a], этим вектором, [param b] и [param post_b] на заданную величину [param "
"weight].\n"
"Он может выполнять более плавную интерполяцию, чем "
"[methodspheric_cubic_interpolate] по значениям времени."

msgid ""
"W component of the quaternion. This is the \"real\" part.\n"
"[b]Note:[/b] Quaternion components should usually not be manipulated directly."
msgstr ""
"Компонент W кватерниона. Это «реальная» часть.\n"
"[b]Примечание:[/b] Компоненты кватерниона обычно не следует изменять напрямую."

msgid ""
"X component of the quaternion. This is the value along the \"imaginary\" "
"[code]i[/code] axis.\n"
"[b]Note:[/b] Quaternion components should usually not be manipulated directly."
msgstr ""
"X-компонента кватерниона. Это значение вдоль «мнимой» оси [code]i[/code].\n"
"[b]Примечание:[/b] Компоненты кватерниона обычно не следует изменять напрямую."

msgid ""
"Y component of the quaternion. This is the value along the \"imaginary\" "
"[code]j[/code] axis.\n"
"[b]Note:[/b] Quaternion components should usually not be manipulated directly."
msgstr ""
"Компонент Y кватерниона. Это значение вдоль «мнимой» оси [code]j[/code].\n"
"[b]Примечание:[/b] Компоненты кватерниона обычно не следует изменять напрямую."

msgid ""
"Z component of the quaternion. This is the value along the \"imaginary\" "
"[code]k[/code] axis.\n"
"[b]Note:[/b] Quaternion components should usually not be manipulated directly."
msgstr ""
"Z-компонента кватерниона. Это значение вдоль «мнимой» оси [code]k[/code].\n"
"[b]Примечание:[/b] Компоненты кватерниона обычно не следует изменять напрямую."

msgid ""
"The identity quaternion, representing no rotation. This has the same rotation "
"as [constant Basis.IDENTITY].\n"
"If a [Vector3] is rotated (multiplied) by this quaternion, it does not "
"change.\n"
"[b]Note:[/b] In GDScript, this constant is equivalent to creating a "
"[constructor Quaternion] without any arguments. It can be used to make your "
"code clearer, and for consistency with C#."
msgstr ""
"Кватернион идентичности, представляющий отсутствие вращения. Имеет такое же "
"вращение, как и [constant Basis.IDENTITY].\n"
"Если [Vector3] вращается (умножается) на этот кватернион, он не изменяется.\n"
"[b]Примечание:[/b] В GDScript эта константа эквивалентна созданию "
"[constructor Quaternion] без каких-либо аргументов. Ее можно использовать для "
"того, чтобы сделать ваш код более понятным и для согласованности с C#."

msgid ""
"Returns [code]true[/code] if the components of both quaternions are not "
"exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если компоненты обоих кватернионов не совсем "
"равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx] вместо этого, что более "
"надежно."

msgid ""
"Composes (multiplies) two quaternions. This rotates the [param right] "
"quaternion (the child) by this quaternion (the parent)."
msgstr ""
"Составляет (умножает) два кватерниона. Это вращает кватернион [param right] "
"(потомок) этим кватернионом (родитель)."

msgid ""
"Rotates (multiplies) the [param right] vector by this quaternion, returning a "
"[Vector3]."
msgstr ""
"Поворачивает (умножает) вектор [param right] на этот кватернион, возвращая "
"[Vector3]."

msgid ""
"Multiplies each component of the [Quaternion] by the right [float] value.\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression."
msgstr ""
"Умножает каждый компонент [Quaternion] на правильное значение [float].\n"
"Эта операция сама по себе не имеет смысла, но ее можно использовать как часть "
"большего выражения."

msgid ""
"Multiplies each component of the [Quaternion] by the right [int] value.\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression."
msgstr ""
"Умножает каждый компонент [Quaternion] на правильное значение [int].\n"
"Эта операция сама по себе не имеет смысла, но ее можно использовать как часть "
"более крупного выражения."

msgid ""
"Adds each component of the left [Quaternion] to the right [Quaternion].\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression, such as approximating an intermediate rotation between "
"two nearby rotations."
msgstr ""
"Добавляет каждый компонент левого [Quaternion] к правому [Quaternion].\n"
"Эта операция сама по себе не имеет смысла, но ее можно использовать как часть "
"большего выражения, например, аппроксимации промежуточного поворота между "
"двумя соседними поворотами."

msgid ""
"Subtracts each component of the left [Quaternion] by the right [Quaternion].\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression."
msgstr ""
"Вычитает каждый компонент левого [Quaternion] из правого [Quaternion].\n"
"Эта операция сама по себе не имеет смысла, но ее можно использовать как часть "
"большего выражения."

msgid ""
"Divides each component of the [Quaternion] by the right [float] value.\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression."
msgstr ""
"Делит каждый компонент [Quaternion] на правое значение [float].\n"
"Эта операция сама по себе не имеет смысла, но ее можно использовать как часть "
"более крупного выражения."

msgid ""
"Divides each component of the [Quaternion] by the right [int] value.\n"
"This operation is not meaningful on its own, but it can be used as a part of "
"a larger expression."
msgstr ""
"Делит каждый компонент [Quaternion] на правое значение [int].\n"
"Эта операция сама по себе не имеет смысла, но ее можно использовать как часть "
"более крупного выражения."

msgid ""
"Returns [code]true[/code] if the components of both quaternions are exactly "
"equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если компоненты обоих кватернионов в точности "
"равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx] вместо этого, что более "
"надежно."

msgid ""
"Accesses each component of this quaternion by their index.\n"
"Index [code]0[/code] is the same as [member x], index [code]1[/code] is the "
"same as [member y], index [code]2[/code] is the same as [member z], and index "
"[code]3[/code] is the same as [member w]."
msgstr ""
"Доступ к каждому компоненту этого кватерниона по их индексу.\n"
"Индекс [code]0[/code] такой же, как [member x], индекс [code]1[/code] такой "
"же, как [member y], индекс [code]2[/code] такой же, как [member z], а индекс "
"[code]3[/code] такой же, как [member w]."

msgid ""
"Returns the negative value of the [Quaternion]. This is the same as "
"multiplying all components by [code]-1[/code]. This operation results in a "
"quaternion that represents the same rotation."
msgstr ""
"Возвращает отрицательное значение [Quaternion]. Это то же самое, что умножить "
"все компоненты на [code]-1[/code]. Эта операция приводит к кватерниону, "
"который представляет то же вращение."

msgid "Provides methods for generating pseudo-random numbers."
msgstr "Предоставляет методы генерации псевдослучайных чисел."

msgid ""
"RandomNumberGenerator is a class for generating pseudo-random numbers. It "
"currently uses [url=https://www.pcg-random.org/]PCG32[/url].\n"
"[b]Note:[/b] The underlying algorithm is an implementation detail and should "
"not be depended upon.\n"
"To generate a random float number (within a given range) based on a time-"
"dependent seed:\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"func _ready():\n"
"\tvar my_random_number = rng.randf_range(-10.0, 10.0)\n"
"[/codeblock]"
msgstr ""
"RandomNumberGenerator — это класс для генерации псевдослучайных чисел. В "
"настоящее время он использует [url=https://www.pcg-random.org/]PCG32[/url].\n"
"[b]Примечание:[/b] Базовый алгоритм является деталью реализации и не должен "
"зависеть от него.\n"
"Для генерации случайного числа с плавающей точкой (в заданном диапазоне) на "
"основе зависящего от времени начального числа:\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"func _ready():\n"
"var my_random_number = rng.randf_range(-10.0, 10.0)\n"
"[/codeblock]"

msgid ""
"Returns a random index with non-uniform weights. Prints an error and returns "
"[code]-1[/code] if the array is empty.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rng = RandomNumberGenerator.new()\n"
"\n"
"var my_array = [\"one\", \"two\", \"three\", \"four\"]\n"
"var weights = PackedFloat32Array([0.5, 1, 1, 2])\n"
"\n"
"# Prints one of the four elements in `my_array`.\n"
"# It is more likely to print \"four\", and less likely to print \"one\".\n"
"print(my_array[rng.rand_weighted(weights)])\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Возвращает случайный индекс с неравномерными весами. Выводит ошибку и "
"возвращает [code]-1[/code], если массив пуст.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rng = RandomNumberGenerator.new()\n"
"\n"
"var my_array = [\"one\", \"two\", \"three\", \"four\"]\n"
"var weights = PackedFloat32Array([0.5, 1, 1, 2])\n"
"\n"
"# Выводит один из четырех элементов в `my_array`.\n"
"# Скорее всего, выведется \"four\", и менее вероятно, что выведется \"one\".\n"
"print(my_array[rng.rand_weighted(weights)])\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Returns a pseudo-random float between [code]0.0[/code] and [code]1.0[/code] "
"(inclusive)."
msgstr ""
"Возвращает псевдослучайное число с плавающей точкой между [code]0.0[/code] и "
"[code]1.0[/code] (включительно)."

msgid ""
"Returns a pseudo-random float between [param from] and [param to] (inclusive)."
msgstr ""
"Возвращает псевдослучайное число с плавающей точкой между [param from] и "
"[param to] (включительно)."

msgid ""
"Returns a [url=https://en.wikipedia.org/wiki/Normal_distribution]normally-"
"distributed[/url], pseudo-random floating-point number from the specified "
"[param mean] and a standard [param deviation]. This is also known as a "
"Gaussian distribution.\n"
"[b]Note:[/b] This method uses the [url=https://en.wikipedia.org/wiki/"
"Box%E2%80%93Muller_transform]Box-Muller transform[/url] algorithm."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/Normal_distribution]нормально "
"распределенное[/url], псевдослучайное число с плавающей точкой из указанного "
"[param mean] и стандартного [param offset]. Это также известно как "
"распределение Гаусса.\n"
"[b]Примечание:[/b] Этот метод использует алгоритм [url=https://"
"en.wikipedia.org/wiki/Box%E2%80%93Muller_transform]преобразование Box-Muller[/"
"url]."

msgid ""
"Returns a pseudo-random 32-bit unsigned integer between [code]0[/code] and "
"[code]4294967295[/code] (inclusive)."
msgstr ""
"Возвращает псевдослучайное 32-битное целое число без знака в диапазоне от "
"[code]0[/code] до [code]4294967295[/code] (включительно)."

msgid ""
"Returns a pseudo-random 32-bit signed integer between [param from] and [param "
"to] (inclusive)."
msgstr ""
"Возвращает псевдослучайное 32-битное целое число со знаком в диапазоне от "
"[param from] до [param to] (включительно)."

msgid ""
"Sets up a time-based seed for this [RandomNumberGenerator] instance. Unlike "
"the [@GlobalScope] random number generation functions, different "
"[RandomNumberGenerator] instances can use different seeds."
msgstr ""
"Устанавливает основанное на времени начальное значение для этого экземпляра "
"[RandomNumberGenerator]. В отличие от функций генерации случайных чисел "
"[@GlobalScope], разные экземпляры [RandomNumberGenerator] могут использовать "
"разные начальные значения."

msgid ""
"Initializes the random number generator state based on the given seed value. "
"A given seed will give a reproducible sequence of pseudo-random numbers.\n"
"[b]Note:[/b] The RNG does not have an avalanche effect, and can output "
"similar random streams given similar seeds. Consider using a hash function to "
"improve your seed quality if they're sourced externally.\n"
"[b]Note:[/b] Setting this property produces a side effect of changing the "
"internal [member state], so make sure to initialize the seed [i]before[/i] "
"modifying the [member state]:\n"
"[b]Note:[/b] The default value of this property is pseudo-random, and changes "
"when calling [method randomize]. The [code]0[/code] value documented here is "
"a placeholder, and not the actual default seed.\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"rng.seed = hash(\"Godot\")\n"
"rng.state = 100 # Restore to some previously saved state.\n"
"[/codeblock]"
msgstr ""
"Инициализирует состояние генератора случайных чисел на основе заданного "
"начального значения. Заданное начальное значение даст воспроизводимую "
"последовательность псевдослучайных чисел.\n"
"[b]Примечание:[/b] RNG не имеет лавинного эффекта и может выводить похожие "
"случайные потоки при наличии похожих начальных значений. Рассмотрите "
"возможность использования хэш-функции для улучшения качества начальных "
"значений, если они получены извне.\n"
"[b]Примечание:[/b] Установка этого свойства приводит к побочному эффекту "
"изменения внутреннего [member state], поэтому обязательно инициализируйте "
"начальное значение [i]перед[/i] изменением [member state]:\n"
"[b]Примечание:[/b] Значение этого свойства по умолчанию — псевдослучайное и "
"изменяется при вызове [method randomize]. Значение [code]0[/code], "
"задокументированное здесь, является заполнителем, а не фактическим начальным "
"числом по умолчанию.\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"rng.seed = hash(\"Godot\")\n"
"rng.state = 100 # Restore to some previously saved state.\n"
"[/codeblock]"

msgid ""
"The current state of the random number generator. Save and restore this "
"property to restore the generator to a previous state:\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"print(rng.randf())\n"
"var saved_state = rng.state # Store current state.\n"
"print(rng.randf()) # Advance internal state.\n"
"rng.state = saved_state # Restore the state.\n"
"print(rng.randf()) # Prints the same value as previously.\n"
"[/codeblock]\n"
"[b]Note:[/b] Do not set state to arbitrary values, since the random number "
"generator requires the state to have certain qualities to behave properly. It "
"should only be set to values that came from the state property itself. To "
"initialize the random number generator with arbitrary input, use [member "
"seed] instead.\n"
"[b]Note:[/b] The default value of this property is pseudo-random, and changes "
"when calling [method randomize]. The [code]0[/code] value documented here is "
"a placeholder, and not the actual default state."
msgstr ""
"Текущее состояние генератора случайных чисел. Сохраните и восстановите это "
"свойство, чтобы восстановить генератор в предыдущее состояние:\n"
"[codeblock]\n"
"var rng = RandomNumberGenerator.new()\n"
"print(rng.randf())\n"
"var saved_state = rng.state # Сохранить текущее состояние.\n"
"print(rng.randf()) # Продвинутое внутреннее состояние.\n"
"rng.state = saved_state # Восстановите состояние.\n"
"print(rng.randf()) # Печатает то же значение, что и ранее.\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Не устанавливайте state в произвольные значения, так как "
"генератор случайных чисел требует, чтобы состояние имело определенные "
"качества для правильного поведения. Его следует устанавливать только в "
"значения, которые получены из самого свойства state. Чтобы инициализировать "
"генератор случайных чисел с произвольным вводом, используйте вместо этого "
"[member seed].\n"
"[b]Примечание:[/b] Значение этого свойства по умолчанию — псевдослучайное и "
"изменяется при вызове [method randomize]. Значение [code]0[/code], "
"задокументированное здесь, является заполнителем, а не фактическим состоянием "
"по умолчанию."

msgid "Abstract base class for controls that represent a number within a range."
msgstr ""
"Абстрактный базовый класс для элементов управления, представляющих число в "
"диапазоне."

msgid ""
"Range is an abstract base class for controls that represent a number within a "
"range, using a configured [member step] and [member page] size. See e.g. "
"[ScrollBar] and [Slider] for examples of higher-level nodes using Range."
msgstr ""
"Range — абстрактный базовый класс для элементов управления, представляющих "
"число в диапазоне, с использованием настроенного размера [member step] и "
"[member page]. См. например, [ScrollBar] и [Slider] для примеров узлов более "
"высокого уровня, использующих Range."

msgid ""
"Called when the [Range]'s value is changed (following the same conditions as "
"[signal value_changed])."
msgstr ""
"Вызывается при изменении значения [Range] (при соблюдении тех же условий, что "
"и [signal value_changed])."

msgid ""
"Sets the [Range]'s current value to the specified [param value], without "
"emitting the [signal value_changed] signal."
msgstr ""
"Устанавливает текущее значение [Range] на указанное [param value] без "
"передачи сигнала [signal value_changed]."

msgid ""
"Binds two [Range]s together along with any ranges previously grouped with "
"either of them. When any of range's member variables change, it will share "
"the new value with all other ranges in its group."
msgstr ""
"Связывает два [Range] вместе с любыми диапазонами, ранее сгруппированными с "
"любым из них. Когда любая из переменных-членов диапазона изменяется, она "
"поделится новым значением со всеми другими диапазонами в своей группе."

msgid "Stops the [Range] from sharing its member variables with any other."
msgstr ""
"Запрещает [Range] совместно использовать свои переменные-члены с другими."

msgid ""
"If [code]true[/code], [member value] may be greater than [member max_value]."
msgstr ""
"Если [code]true[/code], [member value] может быть больше, чем [member "
"max_value]."

msgid ""
"If [code]true[/code], [member value] may be less than [member min_value]."
msgstr ""
"Если [code]true[/code], [member value] может быть меньше, чем [member "
"min_value]."

msgid ""
"If [code]true[/code], and [member min_value] is greater or equal to [code]0[/"
"code], [member value] will be represented exponentially rather than linearly."
msgstr ""
"Если [code]true[/code], а [member min_value] больше или равно [code]0[/code], "
"[member value] будет представлено экспоненциально, а не линейно."

msgid ""
"Maximum value. Range is clamped if [member value] is greater than [member "
"max_value]."
msgstr ""
"Максимальное значение. Диапазон ограничивается, если [member value] больше, "
"чем [member max_value]."

msgid ""
"Minimum value. Range is clamped if [member value] is less than [member "
"min_value]."
msgstr ""
"Минимальное значение. Диапазон ограничивается, если [member value] меньше "
"[member min_value]."

msgid ""
"Page size. Used mainly for [ScrollBar]. A [ScrollBar]'s grabber length is the "
"[ScrollBar]'s size multiplied by [member page] over the difference between "
"[member min_value] and [member max_value]."
msgstr ""
"Размер страницы. Используется в основном для [ScrollBar]. Длина захвата "
"[ScrollBar] — это размер [ScrollBar], умноженный на [member page] и на "
"разницу между [member min_value] и [member max_value]."

msgid "The value mapped between 0 and 1."
msgstr "Значение отображается в диапазоне от 0 до 1."

msgid ""
"If [code]true[/code], [member value] will always be rounded to the nearest "
"integer."
msgstr ""
"Если [code]true[/code], [member value] всегда будет округляться до ближайшего "
"целого числа."

msgid ""
"If greater than 0, [member value] will always be rounded to a multiple of "
"this property's value above [member min_value]. For example, if [member "
"min_value] is [code]0.1[/code] and step is 0.2, then [member value] is "
"limited to [code]0.1[/code], [code]0.3[/code], [code]0.5[/code], and so on. "
"If [member rounded] is also [code]true[/code], [member value] will first be "
"rounded to a multiple of this property's value, then rounded to the nearest "
"integer."
msgstr ""
"Если значение больше 0, [member value] всегда будет округляться до значения, "
"кратного значению этого свойства, превышающего [member min_value]. Например, "
"если [member min_value] равно [code]0.1[/code], а шаг равен 0.2, то [member "
"value] будет ограничено значениями [code]0.1[/code], [code]0.3[/code], "
"[code]0.5[/code] и т. д. Если [member rounded] также равно [code]true[/code], "
"[member value] сначала будет округлено до значения, кратного значению этого "
"свойства, а затем до ближайшего целого числа."

msgid ""
"Range's current value. Changing this property (even via code) will trigger "
"[signal value_changed] signal. Use [method set_value_no_signal] if you want "
"to avoid it."
msgstr ""
"Текущее значение диапазона. Изменение этого свойства (даже через код) вызовет "
"сигнал [signal value_changed]. Используйте [method set_value_no_signal], если "
"хотите этого избежать."

msgid ""
"Emitted when [member min_value], [member max_value], [member page], or "
"[member step] change."
msgstr ""
"Выдается при изменении [member min_value], [member max_value], [member page] "
"или [member step]."

msgid ""
"Emitted when [member value] changes. When used on a [Slider], this is called "
"continuously while dragging (potentially every frame). If you are performing "
"an expensive operation in a function connected to [signal value_changed], "
"consider using a [i]debouncing[/i] [Timer] to call the function less often.\n"
"[b]Note:[/b] Unlike signals such as [signal LineEdit.text_changed], [signal "
"value_changed] is also emitted when [param value] is set directly via code."
msgstr ""
"Вызывается при изменении [member value]. При использовании на [Slider] "
"вызывается непрерывно во время перетаскивания (потенциально каждый кадр). "
"Если вы выполняете затратную операцию в функции, подключенной к [signal "
"value_changed], рассмотрите возможность использования [i]debouncing[/i] "
"[Timer], чтобы вызывать функцию реже.\n"
"[b]Примечание:[/b] В отличие от сигналов, таких как [signal "
"LineEdit.text_changed], [signal value_changed] также вызывается, когда [param "
"value] устанавливается напрямую через код."

msgid ""
"A ray in 2D space, used to find the first collision object it intersects."
msgstr ""
"Луч в 2D пространстве, используемый для нахождения первого объекта "
"столкновения, который он пересекает."

msgid ""
"A raycast represents a ray from its origin to its [member target_position] "
"that finds the closest object along its path, if it intersects any.\n"
"[RayCast2D] can ignore some objects by adding them to an exception list, by "
"making its detection reporting ignore [Area2D]s ([member collide_with_areas]) "
"or [PhysicsBody2D]s ([member collide_with_bodies]), or by configuring physics "
"layers.\n"
"[RayCast2D] calculates intersection every physics frame, and it holds the "
"result until the next physics frame. For an immediate raycast, or if you want "
"to configure a [RayCast2D] multiple times within the same physics frame, use "
"[method force_raycast_update].\n"
"To sweep over a region of 2D space, you can approximate the region with "
"multiple [RayCast2D]s or use [ShapeCast2D]."
msgstr ""
"Рейкаст представляет собой луч от начала до [member target_position], который "
"находит ближайший объект на своём пути, если пересекает какой-либо объект.\n"
"[RayCast2D] может игнорировать некоторые объекты, добавляя их в список "
"исключений, заставляя отчёты об обнаружении игнорировать [Area2D] ([member "
"collide_with_areas]) или [PhysicsBody2D] ([member collide_with_bodies]), или "
"настраивая физические слои.\n"
"[RayCast2D] вычисляет пересечение в каждом физическом кадре и сохраняет "
"результат до следующего физического кадра. Для немедленного рейкаста или если "
"вы хотите настроить [RayCast2D] несколько раз в одном физическом кадре, "
"используйте [method force_raycast_update].\n"
"Чтобы охватить область двумерного пространства, можно аппроксимировать её "
"несколькими [RayCast2D] или использовать [ShapeCast2D]."

msgid ""
"Adds a collision exception so the ray does not report collisions with the "
"specified [param node]."
msgstr ""
"Добавляет исключение столкновений, чтобы луч не сообщал о столкновениях с "
"указанным узлом [param node]."

msgid ""
"Adds a collision exception so the ray does not report collisions with the "
"specified [RID]."
msgstr ""
"Добавляет исключение столкновений, чтобы луч не сообщал о столкновениях с "
"указанным [RID]."

msgid "Removes all collision exceptions for this ray."
msgstr "Удаляет все исключения столкновений для этого луча."

msgid ""
"Updates the collision information for the ray immediately, without waiting "
"for the next [code]_physics_process[/code] call. Use this method, for "
"example, when the ray or its parent has changed state.\n"
"[b]Note:[/b] [member enabled] does not need to be [code]true[/code] for this "
"to work."
msgstr ""
"Обновляет информацию о столкновении для луча немедленно, не дожидаясь "
"следующего вызова [code]_physics_process[/code]. Используйте этот метод, "
"например, когда луч или его родительский элемент изменили состояние.\n"
"[b]Примечание:[/b] [member enabled] не обязательно должен быть [code]true[/"
"code], чтобы это работало."

msgid ""
"Returns the first object that the ray intersects, or [code]null[/code] if no "
"object is intersecting the ray (i.e. [method is_colliding] returns "
"[code]false[/code]).\n"
"[b]Note:[/b] This object is not guaranteed to be a [CollisionObject2D]. For "
"example, if the ray intersects a [TileMapLayer], the method will return a "
"[TileMapLayer] instance."
msgstr ""
"Возвращает первый объект, пересекаемый лучом, или [code]null[/code], если ни "
"один объект не пересекает луч (т.е. [method is_colliding] возвращает "
"[code]false[/code]).\n"
"[b]Примечание:[/b] Этот объект не обязательно является [CollisionObject2D]. "
"Например, если луч пересекает [TileMapLayer], метод вернет экземпляр "
"[TileMapLayer]."

msgid ""
"Returns the [RID] of the first object that the ray intersects, or an empty "
"[RID] if no object is intersecting the ray (i.e. [method is_colliding] "
"returns [code]false[/code])."
msgstr ""
"Возвращает [RID] первого объекта, который пересекает луч, или пустой [RID], "
"если ни один объект не пересекает луч (т. е. [method is_colliding] возвращает "
"[code]false[/code])."

msgid ""
"Returns the shape ID of the first object that the ray intersects, or [code]0[/"
"code] if no object is intersecting the ray (i.e. [method is_colliding] "
"returns [code]false[/code]).\n"
"To get the intersected shape node, for a [CollisionObject2D] target, use:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var target = get_collider() # A CollisionObject2D.\n"
"var shape_id = get_collider_shape() # The shape index in the collider.\n"
"var owner_id = target.shape_find_owner(shape_id) # The owner ID in the "
"collider.\n"
"var shape = target.shape_owner_get_owner(owner_id)\n"
"[/gdscript]\n"
"[csharp]\n"
"var target = (CollisionObject2D)GetCollider(); // A CollisionObject2D.\n"
"var shapeId = GetColliderShape(); // The shape index in the collider.\n"
"var ownerId = target.ShapeFindOwner(shapeId); // The owner ID in the "
"collider.\n"
"var shape = target.ShapeOwnerGetOwner(ownerId);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает идентификатор формы первого объекта, который пересекает луч, или "
"[code]0[/code], если ни один объект не пересекает луч (т. е. [method "
"is_colliding] возвращает [code]false[/code]).\n"
"Чтобы получить узел пересекаемой формы для цели [CollisionObject2D], "
"используйте:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var target = get_collider() # CollisionObject2D.\n"
"var shape_id = get_collider_shape() # Индекс формы в коллайдере.\n"
"var owner_id = target.shape_find_owner(shape_id) # Идентификатор владельца в "
"коллайдере.\n"
"var shape = target.shape_owner_get_owner(owner_id)\n"
"[/gdscript]\n"
"[csharp]\n"
"var target = (CollisionObject2D)GetCollider(); // CollisionObject2D.\n"
"var shapeId = GetColliderShape(); // Индекс формы в коллайдере.\n"
"var ownerId = target.ShapeFindOwner(shapeId); // Идентификатор владельца в "
"коллайдере.\n"
"var shape = target.ShapeOwnerGetOwner(ownerId);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the normal of the intersecting object's shape at the collision point, "
"or [code]Vector2(0, 0)[/code] if the ray starts inside the shape and [member "
"hit_from_inside] is [code]true[/code].\n"
"[b]Note:[/b] Check that [method is_colliding] returns [code]true[/code] "
"before calling this method to ensure the returned normal is valid and up-to-"
"date."
msgstr ""
"Возвращает нормаль формы пересекающегося объекта в точке столкновения, или "
"[code]Vector2(0, 0)[/code], если луч начинается внутри формы и [member "
"hit_from_inside] равен [code]true[/code].\n"
"[b]Примечание:[/b] Проверьте, что [method is_colliding] возвращает "
"[code]true[/code] перед вызовом этого метода, чтобы убедиться, что "
"возвращаемая нормаль является допустимой и актуальной."

msgid ""
"Returns the collision point at which the ray intersects the closest object, "
"in the global coordinate system. If [member hit_from_inside] is [code]true[/"
"code] and the ray starts inside of a collision shape, this function will "
"return the origin point of the ray.\n"
"[b]Note:[/b] Check that [method is_colliding] returns [code]true[/code] "
"before calling this method to ensure the returned point is valid and up-to-"
"date."
msgstr ""
"Возвращает точку столкновения, в которой луч пересекает ближайший объект в "
"глобальной системе координат. Если [member hit_from_inside] равен [code]true[/"
"code] и луч начинается внутри формы столкновения, эта функция вернет исходную "
"точку луча.\n"
"[b]Примечание:[/b] Проверьте, что [method is_colliding] возвращает "
"[code]true[/code] перед вызовом этого метода, чтобы убедиться, что "
"возвращаемая точка является допустимой и актуальной."

msgid ""
"Returns whether any object is intersecting with the ray's vector (considering "
"the vector length)."
msgstr ""
"Возвращает, пересекается ли какой-либо объект с вектором луча (с учетом длины "
"вектора)."

msgid ""
"Removes a collision exception so the ray can report collisions with the "
"specified specified [param node]."
msgstr ""
"Удаляет исключение столкновений, чтобы луч мог сообщать о столкновениях с "
"указанным [param node]."

msgid ""
"Removes a collision exception so the ray can report collisions with the "
"specified [RID]."
msgstr ""
"Удаляет исключение столкновений, чтобы луч мог сообщать о столкновениях с "
"указанным [RID]."

msgid "If [code]true[/code], collisions with [Area2D]s will be reported."
msgstr "Если [code]true[/code], будут сообщаться столкновения с [Area2D]."

msgid "If [code]true[/code], collisions with [PhysicsBody2D]s will be reported."
msgstr ""
"Если [code]true[/code], будут сообщаться столкновения с [PhysicsBody2D]."

msgid ""
"The ray's collision mask. Only objects in at least one collision layer "
"enabled in the mask will be detected. See [url=$DOCS_URL/tutorials/physics/"
"physics_introduction.html#collision-layers-and-masks]Collision layers and "
"masks[/url] in the documentation for more information."
msgstr ""
"Маска столкновений луча. Будут обнаружены только объекты, находящиеся хотя бы "
"в одном слое столкновений, включенном в маске. Для получения дополнительной "
"информации см. [url=$DOCS_URL/tutorials/physics/"
"physics_introduction.html#collision-layers-and-masks]Слои и маски "
"столкновений[/url] в документации."

msgid "If [code]true[/code], collisions will be reported."
msgstr "Если [code]true[/code], будут сообщаться столкновения."

msgid ""
"If [code]true[/code], this raycast will not report collisions with its parent "
"node. This property only has an effect if the parent node is a "
"[CollisionObject2D]. See also [method Node.get_parent] and [method "
"add_exception]."
msgstr ""
"Если [code]true[/code], этот луч не будет сообщать о столкновениях с "
"родительским узлом. Это свойство действует только в том случае, если "
"родительский узел — [CollisionObject2D]. См. также [method Node.get_parent] и "
"[method add_exception]."

msgid ""
"If [code]true[/code], the ray will detect a hit when starting inside shapes. "
"In this case the collision normal will be [code]Vector2(0, 0)[/code]. Does "
"not affect concave polygon shapes."
msgstr ""
"Если [code]true[/code], луч обнаружит попадание при запуске внутри фигур. В "
"этом случае нормаль столкновения будет [code]Vector2(0, 0)[/code]. Не влияет "
"на вогнутые полигоны фигуры."

msgid ""
"The ray's destination point, relative to this raycast's [member "
"Node2D.position]."
msgstr "Точка назначения луча относительно [member Node2D.position] этого луча."

msgid ""
"A ray in 3D space, used to find the first collision object it intersects."
msgstr ""
"Луч в 3D пространстве, используемый для нахождения первого объекта "
"столкновения, который он пересекает."

msgid ""
"A raycast represents a ray from its origin to its [member target_position] "
"that finds the closest object along its path, if it intersects any.\n"
"[RayCast3D] can ignore some objects by adding them to an exception list, by "
"making its detection reporting ignore [Area3D]s ([member collide_with_areas]) "
"or [PhysicsBody3D]s ([member collide_with_bodies]), or by configuring physics "
"layers.\n"
"[RayCast3D] calculates intersection every physics frame, and it holds the "
"result until the next physics frame. For an immediate raycast, or if you want "
"to configure a [RayCast3D] multiple times within the same physics frame, use "
"[method force_raycast_update].\n"
"To sweep over a region of 3D space, you can approximate the region with "
"multiple [RayCast3D]s or use [ShapeCast3D]."
msgstr ""
"Raycast представляет собой луч от его начала до [member target_position], "
"который находит ближайший объект на своем пути, если он пересекает какой-"
"либо.\n"
"[RayCast3D] может игнорировать некоторые объекты, добавляя их в список "
"исключений, заставляя свой отчет об обнаружении игнорировать [Area3D] "
"([member collide_with_areas]) или [PhysicsBody3D] ([member "
"collide_with_bodies]), или настраивая физические слои.\n"
"[RayCast3D] вычисляет пересечение в каждом физическом кадре и сохраняет "
"результат до следующего физического кадра. Для немедленного raycast или если "
"вы хотите настроить [RayCast3D] несколько раз в одном физическом кадре, "
"используйте [method force_raycast_update].\n"
"Чтобы охватить область трехмерного пространства, вы можете аппроксимировать "
"область несколькими [RayCast3D] или использовать [ShapeCast3D]."

msgid ""
"Returns the first object that the ray intersects, or [code]null[/code] if no "
"object is intersecting the ray (i.e. [method is_colliding] returns "
"[code]false[/code]).\n"
"[b]Note:[/b] This object is not guaranteed to be a [CollisionObject3D]. For "
"example, if the ray intersects a [CSGShape3D] or a [GridMap], the method will "
"return a [CSGShape3D] or [GridMap] instance."
msgstr ""
"Возвращает первый объект, который пересекает луч, или [code]null[/code], если "
"ни один объект не пересекает луч (т. е. [method is_colliding] возвращает "
"[code]false[/code]).\n"
"[b]Примечание:[/b] Этот объект не обязательно является [CollisionObject3D]. "
"Например, если луч пересекает [CSGShape3D] или [GridMap], метод вернет "
"экземпляр [CSGShape3D] или [GridMap]."

msgid ""
"Returns the shape ID of the first object that the ray intersects, or [code]0[/"
"code] if no object is intersecting the ray (i.e. [method is_colliding] "
"returns [code]false[/code]).\n"
"To get the intersected shape node, for a [CollisionObject3D] target, use:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var target = get_collider() # A CollisionObject3D.\n"
"var shape_id = get_collider_shape() # The shape index in the collider.\n"
"var owner_id = target.shape_find_owner(shape_id) # The owner ID in the "
"collider.\n"
"var shape = target.shape_owner_get_owner(owner_id)\n"
"[/gdscript]\n"
"[csharp]\n"
"var target = (CollisionObject3D)GetCollider(); // A CollisionObject3D.\n"
"var shapeId = GetColliderShape(); // The shape index in the collider.\n"
"var ownerId = target.ShapeFindOwner(shapeId); // The owner ID in the "
"collider.\n"
"var shape = target.ShapeOwnerGetOwner(ownerId);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает идентификатор формы первого объекта, который пересекает луч, или "
"[code]0[/code], если ни один объект не пересекает луч (т. е. [method "
"is_colliding] возвращает [code]false[/code]).\n"
"Чтобы получить узел пересекаемой формы для цели [CollisionObject3D], "
"используйте:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var target = get_collider() # A CollisionObject3D.\n"
"var shape_id = get_collider_shape() # Индекс формы в коллайдере.\n"
"var owner_id = target.shape_find_owner(shape_id) # Идентификатор владельца в "
"коллайдере.\n"
"var shape = target.shape_owner_get_owner(owner_id)\n"
"[/gdscript]\n"
"[csharp]\n"
"var target = (CollisionObject3D)GetCollider(); // A CollisionObject3D.\n"
"var shapeId = GetColliderShape(); // Индекс формы в коллайдере.\n"
"var ownerId = target.ShapeFindOwner(shapeId); // Идентификатор владельца в "
"коллайдере.\n"
"var shape = target.ShapeOwnerGetOwner(ownerId);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the collision object's face index at the collision point, or "
"[code]-1[/code] if the shape intersecting the ray is not a "
"[ConcavePolygonShape3D]."
msgstr ""
"Возвращает индекс грани объекта столкновения в точке столкновения или "
"[code]-1[/code], если фигура, пересекающая луч, не является "
"[ConcavePolygonShape3D]."

msgid ""
"Returns the normal of the intersecting object's shape at the collision point, "
"or [code]Vector3(0, 0, 0)[/code] if the ray starts inside the shape and "
"[member hit_from_inside] is [code]true[/code].\n"
"[b]Note:[/b] Check that [method is_colliding] returns [code]true[/code] "
"before calling this method to ensure the returned normal is valid and up-to-"
"date."
msgstr ""
"Возвращает нормаль формы пересекающегося объекта в точке столкновения или "
"[code]Vector3(0, 0, 0)[/code], если луч начинается внутри формы и [member "
"hit_from_inside] равен [code]true[/code].\n"
"[b]Примечание:[/b] Проверьте, что [method is_colliding] возвращает "
"[code]true[/code] перед вызовом этого метода, чтобы убедиться, что "
"возвращаемая нормаль является допустимой и актуальной."

msgid ""
"Removes a collision exception so the ray can report collisions with the "
"specified [param node]."
msgstr ""
"Удаляет исключение столкновений, чтобы луч мог сообщать о столкновениях с "
"указанным [param node]."

msgid "If [code]true[/code], collisions with [Area3D]s will be reported."
msgstr "Если [code]true[/code], будут сообщаться о столкновениях с [Area3D]-ми."

msgid "If [code]true[/code], collisions with [PhysicsBody3D]s will be reported."
msgstr ""
"Если [code]true[/code], будут сообщаться о столкновениях с [PhysicsBody3D]-ми."

msgid ""
"The custom color to use to draw the shape in the editor and at run-time if "
"[b]Visible Collision Shapes[/b] is enabled in the [b]Debug[/b] menu. This "
"color will be highlighted at run-time if the [RayCast3D] is colliding with "
"something.\n"
"If set to [code]Color(0.0, 0.0, 0.0)[/code] (by default), the color set in "
"[member ProjectSettings.debug/shapes/collision/shape_color] is used."
msgstr ""
"Пользовательский цвет, используемый для рисования фигуры в редакторе и во "
"время выполнения, если [b]Видимые формы столкновения[/b] включены в меню "
"[b]Отладка[/b]. Этот цвет будет выделен во время выполнения, если [RayCast3D] "
"сталкивается с чем-то.\n"
"Если установлено значение [code]Цвет(0.0, 0.0, 0.0)[/code] (по умолчанию), "
"используется цвет, заданный в [member ProjectSettings.debug/shapes/collision/"
"shape_color]."

msgid ""
"If set to [code]1[/code], a line is used as the debug shape. Otherwise, a "
"truncated pyramid is drawn to represent the [RayCast3D]. Requires [b]Visible "
"Collision Shapes[/b] to be enabled in the [b]Debug[/b] menu for the debug "
"shape to be visible at run-time."
msgstr ""
"Если установлено значение [code]1[/code], в качестве отладочной формы "
"используется линия. В противном случае рисуется усеченная пирамида для "
"представления [RayCast3D]. Требует включения [b]Visible Collision Shapes[/b] "
"в меню [b]Debug[/b], чтобы отладочная форма была видна во время выполнения."

msgid ""
"If [code]true[/code], this raycast will not report collisions with its parent "
"node. This property only has an effect if the parent node is a "
"[CollisionObject3D]. See also [method Node.get_parent] and [method "
"add_exception]."
msgstr ""
"Если [code]true[/code], этот луч не будет сообщать о столкновениях с "
"родительским узлом. Это свойство действует только в том случае, если "
"родительский узел — [CollisionObject3D]. См. также [method Node.get_parent] и "
"[method add_exception]."

msgid ""
"If [code]true[/code], the ray will hit back faces with concave polygon shapes "
"with back face enabled or heightmap shapes."
msgstr ""
"Если [code]true[/code], луч попадет на задние грани с вогнутыми "
"многоугольными формами с включенной задней гранью или на формы карты высот."

msgid ""
"If [code]true[/code], the ray will detect a hit when starting inside shapes. "
"In this case the collision normal will be [code]Vector3(0, 0, 0)[/code]. Does "
"not affect shapes with no volume like concave polygon or heightmap."
msgstr ""
"Если [code]true[/code], луч обнаружит попадание при запуске внутри фигур. В "
"этом случае нормаль столкновения будет [code]Vector3(0, 0, 0)[/code]. Не "
"влияет на фигуры без объема, такие как вогнутый многоугольник или карта высот."

msgid ""
"The ray's destination point, relative to this raycast's [member "
"Node3D.position]."
msgstr "Точка назначения луча относительно [member Node3D.position] этого луча."

msgid "Attachment format (used by [RenderingDevice])."
msgstr "Формат вложения (используется [RenderingDevice])."

msgid "This object is used by [RenderingDevice]."
msgstr "Этот объект используется [RenderingDevice]."

msgid "The attachment's data format."
msgstr "Формат данных вложения."

msgid "The number of samples used when sampling the attachment."
msgstr ""
"Количество образцов, использованных при отборе образцов навесного "
"оборудования."

msgid "The attachment's usage flags, which determine what can be done with it."
msgstr ""
"Флаги использования вложения, которые определяют, что с ним можно делать."

msgid "Framebuffer pass attachment description (used by [RenderingDevice])."
msgstr ""
"Описание прикрепления прохода кадрового буфера (используется "
"[RenderingDevice])."

msgid ""
"This class contains the list of attachment descriptions for a framebuffer "
"pass. Each points with an index to a previously supplied list of texture "
"attachments.\n"
"Multipass framebuffers can optimize some configurations in mobile. On "
"desktop, they provide little to no advantage.\n"
"This object is used by [RenderingDevice]."
msgstr ""
"Этот класс содержит список описаний прикреплений для прохода буфера кадра. "
"Каждый указывает с индексом на ранее предоставленный список прикреплений "
"текстур.\n"
"Многопроходные буферы кадра могут оптимизировать некоторые конфигурации на "
"мобильных устройствах. На настольных компьютерах они дают мало преимуществ "
"или вообще не дают их.\n"
"Этот объект используется [RenderingDevice]."

msgid ""
"Color attachments in order starting from 0. If this attachment is not used by "
"the shader, pass ATTACHMENT_UNUSED to skip."
msgstr ""
"Цветовые вложения в порядке, начиная с 0. Если это вложение не используется "
"шейдером, передайте ATTACHMENT_UNUSED для пропуска."

msgid ""
"Depth attachment. ATTACHMENT_UNUSED should be used if no depth buffer is "
"required for this pass."
msgstr ""
"Прикрепление глубины. ATTACHMENT_UNUSED следует использовать, если для этого "
"прохода не требуется буфер глубины."

msgid ""
"Used for multipass framebuffers (more than one render pass). Converts an "
"attachment to an input. Make sure to also supply it properly in the "
"[RDUniform] for the uniform set."
msgstr ""
"Используется для многопроходных кадровых буферов (более одного прохода "
"рендеринга). Преобразует вложение во входные данные. Убедитесь, что вы также "
"правильно указали его в [RDUniform] для набора uniform."

msgid "Attachments to preserve in this pass (otherwise they are erased)."
msgstr ""
"Вложения, которые необходимо сохранить в этом проходе (в противном случае они "
"будут стерты)."

msgid ""
"If the color attachments are multisampled, non-multisampled resolve "
"attachments can be provided."
msgstr ""
"Если цветовые вложения являются мультисэмплированными, могут быть "
"предоставлены немультисэмплированные разрешающие вложения."

msgid "Attachment is unused."
msgstr "Вложение не используется."

msgid "Pipeline color blend state (used by [RenderingDevice])."
msgstr "Состояние смешивания цветов конвейера (используется [RenderingDevice])."

msgid "The attachments that are blended together."
msgstr "Вложения, которые смешаны вместе."

msgid ""
"The constant color to blend with. See also [method "
"RenderingDevice.draw_list_set_blend_constants]."
msgstr ""
"Константа цвета для смешивания. См. также [method "
"RenderingDevice.draw_list_set_blend_constants]."

msgid ""
"If [code]true[/code], performs the logic operation defined in [member "
"logic_op]."
msgstr ""
"Если [code]true[/code], выполняет логическую операцию, определенную в [member "
"logic_op]."

msgid ""
"The logic operation to perform for blending. Only effective if [member "
"enable_logic_op] is [code]true[/code]."
msgstr ""
"Логическая операция для выполнения смешивания. Действует только если [member "
"enable_logic_op] равен [code]true[/code]."

msgid "Pipeline color blend state attachment (used by [RenderingDevice])."
msgstr ""
"Присоединение состояния смешивания цветов конвейера (используется "
"[RenderingDevice])."

msgid ""
"Controls how blending between source and destination fragments is performed "
"when using [RenderingDevice].\n"
"For reference, this is how common user-facing blend modes are implemented in "
"Godot's 2D renderer:\n"
"[b]Mix:[/b]\n"
"[codeblock]\n"
"var attachment = RDPipelineColorBlendStateAttachment.new()\n"
"attachment.enable_blend = true\n"
"attachment.color_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.src_color_blend_factor = RenderingDevice.BLEND_FACTOR_SRC_ALPHA\n"
"attachment.dst_color_blend_factor = "
"RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA\n"
"attachment.alpha_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.src_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"attachment.dst_alpha_blend_factor = "
"RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA\n"
"[/codeblock]\n"
"[b]Add:[/b]\n"
"[codeblock]\n"
"var attachment = RDPipelineColorBlendStateAttachment.new()\n"
"attachment.enable_blend = true\n"
"attachment.alpha_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.color_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.src_color_blend_factor = RenderingDevice.BLEND_FACTOR_SRC_ALPHA\n"
"attachment.dst_color_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"attachment.src_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_SRC_ALPHA\n"
"attachment.dst_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"[/codeblock]\n"
"[b]Subtract:[/b]\n"
"[codeblock]\n"
"var attachment = RDPipelineColorBlendStateAttachment.new()\n"
"attachment.enable_blend = true\n"
"attachment.alpha_blend_op = RenderingDevice.BLEND_OP_REVERSE_SUBTRACT\n"
"attachment.color_blend_op = RenderingDevice.BLEND_OP_REVERSE_SUBTRACT\n"
"attachment.src_color_blend_factor = RenderingDevice.BLEND_FACTOR_SRC_ALPHA\n"
"attachment.dst_color_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"attachment.src_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_SRC_ALPHA\n"
"attachment.dst_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"[/codeblock]\n"
"[b]Multiply:[/b]\n"
"[codeblock]\n"
"var attachment = RDPipelineColorBlendStateAttachment.new()\n"
"attachment.enable_blend = true\n"
"attachment.alpha_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.color_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.src_color_blend_factor = RenderingDevice.BLEND_FACTOR_DST_COLOR\n"
"attachment.dst_color_blend_factor = RenderingDevice.BLEND_FACTOR_ZERO\n"
"attachment.src_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_DST_ALPHA\n"
"attachment.dst_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_ZERO\n"
"[/codeblock]\n"
"[b]Pre-multiplied alpha:[/b]\n"
"[codeblock]\n"
"var attachment = RDPipelineColorBlendStateAttachment.new()\n"
"attachment.enable_blend = true\n"
"attachment.alpha_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.color_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.src_color_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"attachment.dst_color_blend_factor = "
"RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA\n"
"attachment.src_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"attachment.dst_alpha_blend_factor = "
"RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA\n"
"[/codeblock]"
msgstr ""
"Управляет тем, как выполняется смешивание между исходными и целевыми "
"фрагментами при использовании [RenderingDevice].\n"
"Для справки, вот как реализованы общие пользовательские режимы смешивания в "
"2D-рендерере Godot:\n"
"[b]Mix:[/b]\n"
"[codeblock]\n"
"var attachment = RDPipelineColorBlendStateAttachment.new()\n"
"attachment.enable_blend = true\n"
"attachment.color_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.src_color_blend_factor = RenderingDevice.BLEND_FACTOR_SRC_ALPHA\n"
"attachment.dst_color_blend_factor = "
"RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA\n"
"attachment.alpha_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.src_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"attachment.dst_alpha_blend_factor = "
"RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA\n"
"[/codeblock]\n"
"[b]Add:[/b]\n"
"[codeblock]\n"
"var attachment = RDPipelineColorBlendStateAttachment.new()\n"
"attachment.enable_blend = true\n"
"attachment.alpha_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.color_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.src_color_blend_factor = RenderingDevice.BLEND_FACTOR_SRC_ALPHA\n"
"attachment.dst_color_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"attachment.src_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_SRC_ALPHA\n"
"attachment.dst_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"[/codeblock]\n"
"[b]Subtract:[/b]\n"
"[codeblock]\n"
"var attachment = RDPipelineColorBlendStateAttachment.new()\n"
"attachment.enable_blend = true\n"
"attachment.alpha_blend_op = RenderingDevice.BLEND_OP_REVERSE_SUBTRACT\n"
"attachment.color_blend_op = RenderingDevice.BLEND_OP_REVERSE_SUBTRACT\n"
"attachment.src_color_blend_factor = RenderingDevice.BLEND_FACTOR_SRC_ALPHA\n"
"attachment.dst_color_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"attachment.src_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_SRC_ALPHA\n"
"attachment.dst_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"[/codeblock]\n"
"[b]Multiply:[/b]\n"
"[codeblock]\n"
"var attachment = RDPipelineColorBlendStateAttachment.new()\n"
"attachment.enable_blend = true\n"
"attachment.alpha_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.color_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.src_color_blend_factor = RenderingDevice.BLEND_FACTOR_DST_COLOR\n"
"attachment.dst_color_blend_factor = RenderingDevice.BLEND_FACTOR_ZERO\n"
"attachment.src_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_DST_ALPHA\n"
"attachment.dst_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_ZERO\n"
"[/codeblock]\n"
"[b]Pre-multiplied alpha:[/b]\n"
"[codeblock]\n"
"var attachment = RDPipelineColorBlendStateAttachment.new()\n"
"attachment.enable_blend = true\n"
"attachment.alpha_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.color_blend_op = RenderingDevice.BLEND_OP_ADD\n"
"attachment.src_color_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"attachment.dst_color_blend_factor = "
"RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA\n"
"attachment.src_alpha_blend_factor = RenderingDevice.BLEND_FACTOR_ONE\n"
"attachment.dst_alpha_blend_factor = "
"RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA\n"
"[/codeblock]"

msgid ""
"Convenience method to perform standard mix blending with straight (non-"
"premultiplied) alpha. This sets [member enable_blend] to [code]true[/code], "
"[member src_color_blend_factor] to [constant "
"RenderingDevice.BLEND_FACTOR_SRC_ALPHA], [member dst_color_blend_factor] to "
"[constant RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA], [member "
"src_alpha_blend_factor] to [constant RenderingDevice.BLEND_FACTOR_SRC_ALPHA] "
"and [member dst_alpha_blend_factor] to [constant "
"RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA]."
msgstr ""
"Удобный метод для выполнения стандартного смешивания с прямой (не "
"предварительно умноженной) альфой. Это устанавливает [member enable_blend] в "
"[code]true[/code], [member src_color_blend_factor] в [constant "
"RenderingDevice.BLEND_FACTOR_SRC_ALPHA], [member dst_color_blend_factor] в "
"[constant RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA], [member "
"src_alpha_blend_factor] в [constant RenderingDevice.BLEND_FACTOR_SRC_ALPHA] и "
"[member dst_alpha_blend_factor] в [constant "
"RenderingDevice.BLEND_FACTOR_ONE_MINUS_SRC_ALPHA]."

msgid "The blend mode to use for the alpha channel."
msgstr "Режим смешивания, используемый для альфа-канала."

msgid "The blend mode to use for the red/green/blue color channels."
msgstr ""
"Режим смешивания, используемый для цветовых каналов красного/зеленого/синего."

msgid ""
"Controls how the blend factor for the alpha channel is determined based on "
"the destination's fragments."
msgstr ""
"Управляет тем, как определяется коэффициент смешивания для альфа-канала на "
"основе фрагментов назначения."

msgid ""
"Controls how the blend factor for the color channels is determined based on "
"the destination's fragments."
msgstr ""
"Управляет тем, как определяется коэффициент смешивания для цветовых каналов "
"на основе фрагментов назначения."

msgid ""
"If [code]true[/code], performs blending between the source and destination "
"according to the factors defined in [member src_color_blend_factor], [member "
"dst_color_blend_factor], [member src_alpha_blend_factor] and [member "
"dst_alpha_blend_factor]. The blend modes [member color_blend_op] and [member "
"alpha_blend_op] are also taken into account, with [member write_r], [member "
"write_g], [member write_b] and [member write_a] controlling the output."
msgstr ""
"Если [code]true[/code], выполняет смешивание между источником и назначением в "
"соответствии с факторами, определенными в [member src_color_blend_factor], "
"[member dst_color_blend_factor], [member src_alpha_blend_factor] и [member "
"dst_alpha_blend_factor]. Режимы смешивания [member color_blend_op] и [member "
"alpha_blend_op] также учитываются, при этом [member write_r], [member "
"write_g], [member write_b] и [member write_a] управляют выводом."

msgid ""
"Controls how the blend factor for the alpha channel is determined based on "
"the source's fragments."
msgstr ""
"Управляет тем, как определяется коэффициент смешивания для альфа-канала на "
"основе фрагментов источника."

msgid ""
"Controls how the blend factor for the color channels is determined based on "
"the source's fragments."
msgstr ""
"Управляет тем, как определяется коэффициент смешивания цветовых каналов на "
"основе фрагментов источника."

msgid "If [code]true[/code], writes the new alpha channel to the final result."
msgstr ""
"Если [code]true[/code], записывает новый альфа-канал в конечный результат."

msgid ""
"If [code]true[/code], writes the new blue color channel to the final result."
msgstr ""
"Если [code]true[/code], записывает новый канал синего цвета в конечный "
"результат."

msgid ""
"If [code]true[/code], writes the new green color channel to the final result."
msgstr ""
"Если [code]true[/code], записывает новый канал зеленого цвета в конечный "
"результат."

msgid ""
"If [code]true[/code], writes the new red color channel to the final result."
msgstr ""
"Если [code]true[/code], записывает новый канал красного цвета в конечный "
"результат."

msgid "Pipeline depth/stencil state (used by [RenderingDevice])."
msgstr "Глубина конвейера/состояние трафарета (используется [RenderingDevice])."

msgid ""
"[RDPipelineDepthStencilState] controls the way depth and stencil comparisons "
"are performed when sampling those values using [RenderingDevice]."
msgstr ""
"[RDPipelineDepthStencilState] управляет способом выполнения сравнений глубины "
"и трафарета при выборке этих значений с помощью [RenderingDevice]."

msgid ""
"The method used for comparing the previous back stencil value and [member "
"back_op_reference]."
msgstr ""
"Метод, используемый для сравнения предыдущего значения обратного трафарета и "
"[member back_op_reference]."

msgid "Selects which bits from the back stencil value will be compared."
msgstr "Выбирает, какие биты из значения заднего трафарета будут сравниваться."

msgid ""
"The operation to perform on the stencil buffer for back pixels that pass the "
"stencil test but fail the depth test."
msgstr ""
"Операция, выполняемая над буфером трафарета для пикселей заднего плана, "
"которые прошли тест трафарета, но не прошли тест глубины."

msgid ""
"The operation to perform on the stencil buffer for back pixels that fail the "
"stencil test."
msgstr ""
"Операция, выполняемая над буфером трафарета для пикселей заднего плана, не "
"прошедших тест трафарета."

msgid ""
"The operation to perform on the stencil buffer for back pixels that pass the "
"stencil test."
msgstr ""
"Операция, выполняемая над буфером трафарета для пикселей заднего плана, "
"прошедших тест трафарета."

msgid "The value the previous back stencil value will be compared to."
msgstr ""
"Значение, с которым будет сравниваться предыдущее значение обратного "
"трафарета."

msgid "Selects which bits from the back stencil value will be changed."
msgstr "Выбирает, какие биты из значения заднего трафарета будут изменены."

msgid "The method used for comparing the previous and current depth values."
msgstr ""
"Метод, используемый для сравнения предыдущих и текущих значений глубины."

msgid ""
"The maximum depth that returns [code]true[/code] for [member "
"enable_depth_range]."
msgstr ""
"Максимальная глубина, которая возвращает [code]true[/code] для [member "
"enable_depth_range]."

msgid ""
"The minimum depth that returns [code]true[/code] for [member "
"enable_depth_range]."
msgstr ""
"Минимальная глубина, которая возвращает [code]true[/code] для [member "
"enable_depth_range]."

msgid ""
"If [code]true[/code], each depth value will be tested to see if it is between "
"[member depth_range_min] and [member depth_range_max]. If it is outside of "
"these values, it is discarded."
msgstr ""
"Если [code]true[/code], каждое значение глубины будет проверено, чтобы "
"увидеть, находится ли оно между [member depth_range_min] и [member "
"depth_range_max]. Если оно выходит за пределы этих значений, оно "
"отбрасывается."

msgid ""
"If [code]true[/code], enables depth testing which allows objects to be "
"automatically occluded by other objects based on their depth. This also "
"allows objects to be partially occluded by other objects. If [code]false[/"
"code], objects will appear in the order they were drawn (like in Godot's 2D "
"renderer)."
msgstr ""
"Если [code]true[/code], включается проверка глубины, которая позволяет "
"объектам автоматически перекрываться другими объектами на основе их глубины. "
"Это также позволяет объектам частично перекрываться другими объектами. Если "
"[code]false[/code], объекты будут отображаться в том порядке, в котором они "
"были нарисованы (как в 2D-рендере Godot)."

msgid ""
"If [code]true[/code], writes to the depth buffer whenever the depth test "
"returns [code]true[/code]. Only works when enable_depth_test is also "
"[code]true[/code]."
msgstr ""
"Если [code]true[/code], записывает в буфер глубины всякий раз, когда тест "
"глубины возвращает [code]true[/code]. Работает только тогда, когда "
"enable_depth_test также [code]true[/code]."

msgid ""
"If [code]true[/code], enables stencil testing. There are separate stencil "
"buffers for front-facing triangles and back-facing triangles. See properties "
"that begin with \"front_op\" and properties with \"back_op\" for each."
msgstr ""
"Если [code]true[/code], включается тестирование трафарета. Существуют "
"отдельные буферы трафарета для треугольников, обращенных вперед, и для "
"треугольников, обращенных назад. См. свойства, начинающиеся с \"front_op\", и "
"свойства с \"back_op\" для каждого из них."

msgid ""
"The method used for comparing the previous front stencil value and [member "
"front_op_reference]."
msgstr ""
"Метод, используемый для сравнения предыдущего значения трафарета front и "
"[member front_op_reference]."

msgid "Selects which bits from the front stencil value will be compared."
msgstr ""
"Выбирает, какие биты из значения переднего трафарета будут сравниваться."

msgid ""
"The operation to perform on the stencil buffer for front pixels that pass the "
"stencil test but fail the depth test."
msgstr ""
"Операция, выполняемая над буфером трафарета для передних пикселей, которые "
"прошли тест трафарета, но не прошли тест глубины."

msgid ""
"The operation to perform on the stencil buffer for front pixels that fail the "
"stencil test."
msgstr ""
"Операция, выполняемая над буфером трафарета для передних пикселей, не "
"прошедших тест трафарета."

msgid ""
"The operation to perform on the stencil buffer for front pixels that pass the "
"stencil test."
msgstr ""
"Операция, выполняемая над буфером трафарета для передних пикселей, прошедших "
"тест трафарета."

msgid "The value the previous front stencil value will be compared to."
msgstr "Значение, с которым будет сравниваться предыдущее значение трафарета."

msgid "Selects which bits from the front stencil value will be changed."
msgstr "Выбирает, какие биты из значения переднего трафарета будут изменены."

msgid "Pipeline multisample state (used by [RenderingDevice])."
msgstr ""
"Состояние мультисэмплирования конвейера (используется [RenderingDevice])."

msgid ""
"[RDPipelineMultisampleState] is used to control how multisample or "
"supersample antialiasing is being performed when rendering using "
"[RenderingDevice]."
msgstr ""
"[RDPipelineMultisampleState] используется для управления тем, как выполняется "
"мультисэмпловое или суперсэмпловое сглаживание при рендеринге с "
"использованием [RenderingDevice]."

msgid ""
"If [code]true[/code], alpha to coverage is enabled. This generates a "
"temporary coverage value based on the alpha component of the fragment's first "
"color output. This allows alpha transparency to make use of multisample "
"antialiasing."
msgstr ""
"Если [code]true[/code], включено альфа-покрытие. Это генерирует временное "
"значение покрытия на основе альфа-компоненты первого цветового вывода "
"фрагмента. Это позволяет альфа-прозрачности использовать многовыборочное "
"сглаживание."

msgid ""
"If [code]true[/code], alpha is forced to either [code]0.0[/code] or "
"[code]1.0[/code]. This allows hardening the edges of antialiased alpha "
"transparencies. Only relevant if [member enable_alpha_to_coverage] is "
"[code]true[/code]."
msgstr ""
"Если [code]true[/code], альфа принудительно устанавливается на [code]0.0[/"
"code] или [code]1.0[/code]. Это позволяет усилить края сглаженных альфа-"
"прозрачностей. Имеет значение только если [member enable_alpha_to_coverage] "
"имеет значение [code]true[/code]."

msgid ""
"If [code]true[/code], enables per-sample shading which replaces MSAA by SSAA. "
"This provides higher quality antialiasing that works with transparent (alpha "
"scissor) edges. This has a very high performance cost. See also [member "
"min_sample_shading]. See the [url=https://registry.khronos.org/vulkan/specs/"
"1.3-extensions/html/vkspec.html#primsrast-sampleshading]per-sample shading "
"Vulkan documentation[/url] for more details."
msgstr ""
"Если [code]true[/code], включается повыборочное затенение, которое заменяет "
"MSAA на SSAA. Это обеспечивает более качественное сглаживание, которое "
"работает с прозрачными (альфа-ножницы) краями. Это имеет очень высокие "
"затраты производительности. См. также [member min_sample_shading]. См. "
"[url=https://registry.khronos.org/vulkan/specs/1.3-extensions/html/"
"vkspec.html#primsrast-sampleshading]документацию Vulkan по повыборочному "
"затенению[/url] для получения более подробной информации."

msgid ""
"The multiplier of [member sample_count] that determines how many samples are "
"performed for each fragment. Must be between [code]0.0[/code] and [code]1.0[/"
"code] (inclusive). Only effective if [member enable_sample_shading] is "
"[code]true[/code]. If [member min_sample_shading] is [code]1.0[/code], "
"fragment invocation must only read from the coverage index sample. Tile image "
"access must not be used if [member enable_sample_shading] is [i]not[/i] "
"[code]1.0[/code]."
msgstr ""
"Множитель для [member sample_count], определяющий количество сэмплов на "
"фрагмент. Должен находиться в диапазоне [code]0.0[/code]–[code]1.0[/code] "
"(включительно). Работает только при значении [code]true[/code] у [member "
"enable_sample_shading]. Если [member min_sample_shading] равно [code]1.0[/"
"code], вызов фрагмента должен читать только из сэмпла индекса покрытия. "
"Доступ к тайловому изображению запрещён, если [member enable_sample_shading] "
"[i]не[/i] равно [code]1.0[/code]."

msgid ""
"The number of MSAA samples (or SSAA samples if [member enable_sample_shading] "
"is [code]true[/code]) to perform. Higher values result in better "
"antialiasing, at the cost of performance."
msgstr ""
"Количество выборок MSAA (или выборок SSAA, если [member "
"enable_sample_shading] имеет значение [code]true[/code]) для выполнения. "
"Более высокие значения приводят к лучшему сглаживанию за счет "
"производительности."

msgid ""
"The sample mask array. See the [url=https://registry.khronos.org/vulkan/specs/"
"1.3-extensions/html/vkspec.html#fragops-samplemask]sample mask Vulkan "
"documentation[/url] for more details."
msgstr ""
"Массив масок-примеров. Подробности см. в [url=https://registry.khronos.org/"
"vulkan/specs/1.3-extensions/html/vkspec.html#fragops-samplemask]документации "
"Vulkan по маскам-примерам[/url]."

msgid "Pipeline rasterization state (used by [RenderingDevice])."
msgstr "Состояние растеризации конвейера (используется [RenderingDevice])."

msgid ""
"The cull mode to use when drawing polygons, which determines whether front "
"faces or backfaces are hidden."
msgstr ""
"Режим отбраковки, используемый при рисовании полигонов, который определяет, "
"будут ли скрыты передние или задние грани."

msgid ""
"A limit for how much each depth value can be offset. If negative, it serves "
"as a minimum value, but if positive, it serves as a maximum value."
msgstr ""
"Предел того, насколько может быть смещено каждое значение глубины. Если "
"отрицательно, то служит минимальным значением, а если положительно, то служит "
"максимальным значением."

msgid ""
"A constant offset added to each depth value. Applied after [member "
"depth_bias_slope_factor]."
msgstr ""
"Постоянное смещение, добавляемое к каждому значению глубины. Применяется "
"после [member depth_bias_slope_factor]."

msgid ""
"If [code]true[/code], each generated depth value will by offset by some "
"amount. The specific amount is generated per polygon based on the values of "
"[member depth_bias_slope_factor] and [member depth_bias_constant_factor]."
msgstr ""
"Если [code]true[/code], каждое сгенерированное значение глубины будет смещено "
"на некоторую величину. Конкретная величина генерируется для каждого полигона "
"на основе значений [member depth_bias_slope_factor] и [member "
"depth_bias_constant_factor]."

msgid ""
"A constant scale applied to the slope of each polygons' depth. Applied before "
"[member depth_bias_constant_factor]."
msgstr ""
"Постоянная шкала, применяемая к наклону глубины каждого полигона. Применялась "
"до [member depth_bias_constant_factor]."

msgid ""
"If [code]true[/code], primitives are discarded immediately before the "
"rasterization stage."
msgstr ""
"Если [code]true[/code], примитивы отбрасываются непосредственно перед этапом "
"растеризации."

msgid ""
"If [code]true[/code], clamps depth values according to the minimum and "
"maximum depth of the associated viewport."
msgstr ""
"Если [code]true[/code], значения глубины ограничиваются минимальной и "
"максимальной глубиной соответствующего окна просмотра."

msgid ""
"The winding order to use to determine which face of a triangle is considered "
"its front face."
msgstr ""
"Порядок намотки, используемый для определения того, какая грань треугольника "
"считается его передней гранью."

msgid ""
"The line width to use when drawing lines (in pixels). Thick lines may not be "
"supported on all hardware."
msgstr ""
"Ширина линии, используемая при рисовании линий (в пикселях). Толстые линии "
"могут не поддерживаться на всех аппаратных средствах."

msgid ""
"The number of control points to use when drawing a patch with tessellation "
"enabled. Higher values result in higher quality at the cost of performance."
msgstr ""
"Количество контрольных точек, используемых при рисовании патча с включенной "
"тесселяцией. Более высокие значения приводят к более высокому качеству за "
"счет производительности."

msgid ""
"If [code]true[/code], performs wireframe rendering for triangles instead of "
"flat or textured rendering."
msgstr ""
"Если [code]true[/code], выполняется каркасная визуализация треугольников "
"вместо плоской или текстурированной визуализации."

msgid "Pipeline specialization constant (used by [RenderingDevice])."
msgstr "Константа специализации конвейера (используется [RenderingDevice])."

msgid ""
"A [i]specialization constant[/i] is a way to create additional variants of "
"shaders without actually increasing the number of shader versions that are "
"compiled. This allows improving performance by reducing the number of shader "
"versions and reducing [code]if[/code] branching, while still allowing shaders "
"to be flexible for different use cases.\n"
"This object is used by [RenderingDevice]."
msgstr ""
"[i]Константа специализации[/i] — это способ создания дополнительных вариантов "
"шейдеров без фактического увеличения количества компилируемых версий "
"шейдеров. Это позволяет повысить производительность за счет сокращения "
"количества версий шейдеров и сокращения ветвления [code]if[/code], при этом "
"сохраняя гибкость шейдеров для различных вариантов использования.\n"
"Этот объект используется [RenderingDevice]."

msgid ""
"The identifier of the specialization constant. This is a value starting from "
"[code]0[/code] and that increments for every different specialization "
"constant for a given shader."
msgstr ""
"Идентификатор константы специализации. Это значение, начинающееся с [code]0[/"
"code] и увеличивающееся для каждой другой константы специализации для данного "
"шейдера."

msgid ""
"The specialization constant's value. Only [bool], [int] and [float] types are "
"valid for specialization constants."
msgstr ""
"Значение константы специализации. Для констант специализации допустимы только "
"типы [bool], [int] и [float]."

msgid "Sampler state (used by [RenderingDevice])."
msgstr "Состояние сэмплера (используется [RenderingDevice])."

msgid ""
"Maximum anisotropy that can be used when sampling. Only effective if [member "
"use_anisotropy] is [code]true[/code]. Higher values result in a sharper "
"sampler at oblique angles, at the cost of performance (due to memory "
"bandwidth). This value may be limited by the graphics hardware in use. Most "
"graphics hardware only supports values up to [code]16.0[/code].\n"
"If [member anisotropy_max] is [code]1.0[/code], forcibly disables anisotropy "
"even if [member use_anisotropy] is [code]true[/code]."
msgstr ""
"Максимальная анизотропия, которая может использоваться при сэмплировании. "
"Эффективно только если [member use_anisotropy] равно [code]true[/code]. Более "
"высокие значения приводят к более резкому сэмплеру на косых углах за счет "
"производительности (из-за пропускной способности памяти). Это значение может "
"быть ограничено используемым графическим оборудованием. Большинство "
"графических устройств поддерживают только значения до [code]16.0[/code].\n"
"Если [member anisotropy_max] равно [code]1.0[/code], принудительно отключает "
"анизотропию, даже если [member use_anisotropy] равно [code]true[/code]."

msgid ""
"The border color that will be returned when sampling outside the sampler's "
"bounds and the [member repeat_u], [member repeat_v] or [member repeat_w] "
"modes have repeating disabled."
msgstr ""
"Цвет границы, который будет возвращен при выборке за пределами границ "
"сэмплера, а также в режимах [member repeat_u], [member repeat_v] или [member "
"repeat_w] повторение отключено."

msgid ""
"The compare operation to use. Only effective if [member enable_compare] is "
"[code]true[/code]."
msgstr ""
"Операция сравнения для использования. Действует только если [member "
"enable_compare] равно [code]true[/code]."

msgid ""
"If [code]true[/code], returned values will be based on the comparison "
"operation defined in [member compare_op]. This is a hardware-based approach "
"and is therefore faster than performing this manually in a shader. For "
"example, compare operations are used for shadow map rendering by comparing "
"depth values from a shadow sampler."
msgstr ""
"Если [code]true[/code], возвращаемые значения будут основаны на операции "
"сравнения, определенной в [member compare_op]. Это аппаратный подход, поэтому "
"он быстрее, чем выполнение этого вручную в шейдере. Например, операции "
"сравнения используются для рендеринга карты теней путем сравнения значений "
"глубины из сэмплера теней."

msgid ""
"The mipmap LOD bias to use. Positive values will make the sampler blurrier at "
"a given distance, while negative values will make the sampler sharper at a "
"given distance (at the risk of looking grainy). Recommended values are "
"between [code]-0.5[/code] and [code]0.0[/code]. Only effective if the sampler "
"has mipmaps available."
msgstr ""
"Смещение LOD mipmap для использования. Положительные значения сделают сэмплер "
"более размытым на заданном расстоянии, а отрицательные значения сделают "
"сэмплер более резким на заданном расстоянии (с риском выглядеть зернистым). "
"Рекомендуемые значения находятся в диапазоне от [code]-0.5[/code] до "
"[code]0.0[/code]. Эффективно только в том случае, если у сэмплера есть "
"доступные mip-карты."

msgid ""
"The sampler's magnification filter. It is the filtering method used when "
"sampling texels that appear bigger than on-screen pixels."
msgstr ""
"Фильтр увеличения сэмплера. Это метод фильтрации, используемый при "
"сэмплировании текселей, которые кажутся больше пикселей на экране."

msgid ""
"The maximum mipmap LOD bias to display (lowest resolution). Only effective if "
"the sampler has mipmaps available."
msgstr ""
"Максимальное смещение LOD mipmap для отображения (минимальное разрешение). "
"Действует только в том случае, если у сэмплера есть доступные mipmaps."

msgid ""
"The sampler's minification filter. It is the filtering method used when "
"sampling texels that appear smaller than on-screen pixels."
msgstr ""
"Фильтр минификации сэмплера. Это метод фильтрации, используемый при "
"сэмплировании текселей, которые кажутся меньше пикселей на экране."

msgid ""
"The minimum mipmap LOD bias to display (highest resolution). Only effective "
"if the sampler has mipmaps available."
msgstr ""
"Минимальное смещение LOD mipmap для отображения (максимальное разрешение). "
"Действует только в том случае, если у сэмплера есть доступные mipmaps."

msgid "The filtering method to use for mipmaps."
msgstr "Метод фильтрации, используемый для MIP-текстур."

msgid ""
"The repeat mode to use along the U axis of UV coordinates. This affects the "
"returned values if sampling outside the UV bounds."
msgstr ""
"Режим повтора для использования вдоль оси U координат UV. Это влияет на "
"возвращаемые значения, если выборка выполняется за пределами границ UV."

msgid ""
"The repeat mode to use along the V axis of UV coordinates. This affects the "
"returned values if sampling outside the UV bounds."
msgstr ""
"Режим повтора для использования вдоль оси V координат UV. Это влияет на "
"возвращаемые значения, если выборка выполняется за пределами границ UV."

msgid ""
"The repeat mode to use along the W axis of UV coordinates. This affects the "
"returned values if sampling outside the UV bounds. Only effective for 3D "
"samplers."
msgstr ""
"Режим повтора для использования вдоль оси W координат UV. Это влияет на "
"возвращаемые значения, если выборка происходит за пределами границ UV. "
"Действует только для 3D-сэмплеров."

msgid ""
"If [code]true[/code], the texture will be sampled with coordinates ranging "
"from 0 to the texture's resolution. Otherwise, the coordinates will be "
"normalized and range from 0 to 1."
msgstr ""
"Если [code]true[/code], текстура будет сэмплироваться с координатами в "
"диапазоне от 0 до разрешения текстуры. В противном случае координаты будут "
"нормализованы и будут находиться в диапазоне от 0 до 1."

msgid ""
"If [code]true[/code], perform anisotropic sampling. See [member "
"anisotropy_max]."
msgstr ""
"Если [code]true[/code], выполнить анизотропную выборку. См. [member "
"anisotropy_max]."

msgid ""
"Compiled shader file in SPIR-V form (used by [RenderingDevice]). Not to be "
"confused with Godot's own [Shader]."
msgstr ""
"Скомпилированный файл шейдера в формате SPIR-V (используется "
"[RenderingDevice]). Не путать с собственным [Shader] Годо."

msgid ""
"Compiled shader file in SPIR-V form.\n"
"See also [RDShaderSource]. [RDShaderFile] is only meant to be used with the "
"[RenderingDevice] API. It should not be confused with Godot's own [Shader] "
"resource, which is what Godot's various nodes use for high-level shader "
"programming."
msgstr ""
"Скомпилированный файл шейдера в форме SPIR-V.\n"
"См. также [RDShaderSource]. [RDShaderFile] предназначен только для "
"использования с API [RenderingDevice]. Его не следует путать с собственным "
"ресурсом Godot [Shader], который различные узлы Godot используют для "
"высокоуровневого программирования шейдеров."

msgid ""
"Returns the SPIR-V intermediate representation for the specified shader "
"[param version]."
msgstr ""
"Возвращает промежуточное представление SPIR-V для указанного шейдера [param "
"version]."

msgid "Returns the list of compiled versions for this shader."
msgstr "Возвращает список скомпилированных версий для этого шейдера."

msgid ""
"Sets the SPIR-V [param bytecode] that will be compiled for the specified "
"[param version]."
msgstr ""
"Устанавливает SPIR-V [param bytecode], который будет скомпилирован для "
"указанной [param version]."

msgid ""
"The base compilation error message, which indicates errors not related to a "
"specific shader stage if non-empty. If empty, shader compilation is not "
"necessarily successful (check [RDShaderSPIRV]'s error message members)."
msgstr ""
"Базовое сообщение об ошибке компиляции, которое указывает на ошибки, не "
"связанные с определенным этапом шейдера, если не пусто. Если пусто, "
"компиляция шейдера не обязательно успешна (проверьте члены сообщения об "
"ошибке [RDShaderSPIRV])."

msgid "Shader source code (used by [RenderingDevice])."
msgstr "Исходный код шейдера (используется [RenderingDevice])."

msgid ""
"Shader source code in text form.\n"
"See also [RDShaderFile]. [RDShaderSource] is only meant to be used with the "
"[RenderingDevice] API. It should not be confused with Godot's own [Shader] "
"resource, which is what Godot's various nodes use for high-level shader "
"programming."
msgstr ""
"Исходный код шейдера в текстовой форме.\n"
"См. также [RDShaderFile]. [RDShaderSource] предназначен только для "
"использования с API [RenderingDevice]. Его не следует путать с собственным "
"ресурсом Godot [Shader], который различные узлы Godot используют для "
"высокоуровневого программирования шейдеров."

msgid ""
"Returns source code for the specified shader [param stage]. Equivalent to "
"getting one of [member source_compute], [member source_fragment], [member "
"source_tesselation_control], [member source_tesselation_evaluation] or "
"[member source_vertex]."
msgstr ""
"Возвращает исходный код для указанного шейдера [param stage]. Эквивалентно "
"получению одного из [member source_compute], [member source_fragment], "
"[member source_tesselation_control], [member source_tesselation_evaluation] "
"или [member source_vertex]."

msgid ""
"Sets [param source] code for the specified shader [param stage]. Equivalent "
"to setting one of [member source_compute], [member source_fragment], [member "
"source_tesselation_control], [member source_tesselation_evaluation] or "
"[member source_vertex].\n"
"[b]Note:[/b] If you set the compute shader source code using this method "
"directly, remember to remove the Godot-specific hint [code]#[compute][/code]."
msgstr ""
"Устанавливает код [param source] для указанного шейдера [param stage]. "
"Эквивалентно установке одного из [member source_compute], [member "
"source_fragment], [member source_tesselation_control], [member "
"source_tesselation_evaluation] или [member source_vertex].\n"
"[b]Примечание:[/b] Если вы устанавливаете исходный код вычислительного "
"шейдера, используя этот метод напрямую, не забудьте удалить специфичную для "
"Godot подсказку [code]#[compute][/code]."

msgid "The language the shader is written in."
msgstr "Язык, на котором написан шейдер."

msgid "Source code for the shader's compute stage."
msgstr "Исходный код для этапа вычислений (compute) шейдера."

msgid "Source code for the shader's fragment stage."
msgstr "Исходный код для фрагментной стадии шейдера."

msgid "Source code for the shader's tessellation control stage."
msgstr "Исходный код для этапа управления тесселяцией шейдера."

msgid "Source code for the shader's tessellation evaluation stage."
msgstr "Исходный код для этапа оценки тесселяции шейдера."

msgid "Source code for the shader's vertex stage."
msgstr "Исходный код для вершинного этапа шейдера."

msgid ""
"SPIR-V intermediate representation as part of an [RDShaderFile] (used by "
"[RenderingDevice])."
msgstr ""
"Промежуточное представление SPIR-V как часть [RDShaderFile] (используется в "
"[RenderingDevice])."

msgid ""
"[RDShaderSPIRV] represents an [RDShaderFile]'s [url=https://www.khronos.org/"
"spir/]SPIR-V[/url] code for various shader stages, as well as possible "
"compilation error messages. SPIR-V is a low-level intermediate shader "
"representation. This intermediate representation is not used directly by GPUs "
"for rendering, but it can be compiled into binary shaders that GPUs can "
"understand. Unlike compiled shaders, SPIR-V is portable across GPU models and "
"driver versions.\n"
"This object is used by [RenderingDevice]."
msgstr ""
"[RDShaderSPIRV] представляет код [url=https://www.khronos.org/spir/]SPIR-V[/"
"url] файла [RDShaderFile] для различных этапов шейдера, а также возможные "
"сообщения об ошибках компиляции. SPIR-V — это низкоуровневое промежуточное "
"представление шейдера. Это промежуточное представление не используется "
"напрямую графическими процессорами для рендеринга, но может быть "
"скомпилировано в двоичные шейдеры, понятные графическим процессорам. В "
"отличие от скомпилированных шейдеров, SPIR-V переносим между моделями "
"графических процессоров и версиями драйверов.\n"
"Этот объект используется в [RenderingDevice]."

msgid ""
"Equivalent to getting one of [member bytecode_compute], [member "
"bytecode_fragment], [member bytecode_tesselation_control], [member "
"bytecode_tesselation_evaluation], [member bytecode_vertex]."
msgstr ""
"Эквивалентно получению одного из [member bytecode_compute], [member "
"bytecode_fragment], [member bytecode_tesselation_control], [member "
"bytecode_tesselation_evaluation], [member bytecode_vertex]."

msgid ""
"Returns the compilation error message for the given shader [param stage]. "
"Equivalent to getting one of [member compile_error_compute], [member "
"compile_error_fragment], [member compile_error_tesselation_control], [member "
"compile_error_tesselation_evaluation], [member compile_error_vertex]."
msgstr ""
"Возвращает сообщение об ошибке компиляции для указанного шейдера [param "
"stage]. Эквивалентно получению одного из [member compile_error_compute], "
"[member compile_error_fragment], [member compile_error_tesselation_control], "
"[member compile_error_tesselation_evaluation], [member compile_error_vertex]."

msgid ""
"Sets the SPIR-V [param bytecode] for the given shader [param stage]. "
"Equivalent to setting one of [member bytecode_compute], [member "
"bytecode_fragment], [member bytecode_tesselation_control], [member "
"bytecode_tesselation_evaluation], [member bytecode_vertex]."
msgstr ""
"Устанавливает SPIR-V [param bytecode] для заданного шейдера [param stage]. "
"Эквивалентно установке одного из [member bytecode_compute], [member "
"bytecode_fragment], [member bytecode_tesselation_control], [member "
"bytecode_tesselation_evaluation], [member bytecode_vertex]."

msgid ""
"Sets the compilation error message for the given shader [param stage] to "
"[param compile_error]. Equivalent to setting one of [member "
"compile_error_compute], [member compile_error_fragment], [member "
"compile_error_tesselation_control], [member "
"compile_error_tesselation_evaluation], [member compile_error_vertex]."
msgstr ""
"Устанавливает сообщение об ошибке компиляции для заданного шейдера [param "
"stage] на [param compile_error]. Эквивалентно установке одного из [member "
"compile_error_compute], [member compile_error_fragment], [member "
"compile_error_tesselation_control], [member "
"compile_error_tesselation_evaluation], [member compile_error_vertex]."

msgid "The SPIR-V bytecode for the compute shader stage."
msgstr "Байт-код SPIR-V для этапа вычислительного шейдера."

msgid "The SPIR-V bytecode for the fragment shader stage."
msgstr "Байт-код SPIR-V для этапа фрагментного шейдера."

msgid "The SPIR-V bytecode for the tessellation control shader stage."
msgstr "Байт-код SPIR-V для этапа шейдера управления тесселяцией."

msgid "The SPIR-V bytecode for the tessellation evaluation shader stage."
msgstr "Байт-код SPIR-V для этапа шейдера оценки тесселяции."

msgid "The SPIR-V bytecode for the vertex shader stage."
msgstr "Байт-код SPIR-V для этапа вершинного шейдера."

msgid ""
"The compilation error message for the compute shader stage (set by the SPIR-V "
"compiler and Godot). If empty, shader compilation was successful."
msgstr ""
"Сообщение об ошибке компиляции для этапа вычислительного шейдера "
"(устанавливается компилятором SPIR-V и Godot). Если пусто, компиляция шейдера "
"прошла успешно."

msgid ""
"The compilation error message for the fragment shader stage (set by the SPIR-"
"V compiler and Godot). If empty, shader compilation was successful."
msgstr ""
"Сообщение об ошибке компиляции для этапа фрагментного шейдера "
"(устанавливается компилятором SPIR-V и Godot). Если пусто, компиляция шейдера "
"прошла успешно."

msgid ""
"The compilation error message for the tessellation control shader stage (set "
"by the SPIR-V compiler and Godot). If empty, shader compilation was "
"successful."
msgstr ""
"Сообщение об ошибке компиляции для этапа шейдера управления тесселяцией "
"(устанавливается компилятором SPIR-V и Godot). Если пусто, компиляция шейдера "
"прошла успешно."

msgid ""
"The compilation error message for the tessellation evaluation shader stage "
"(set by the SPIR-V compiler and Godot). If empty, shader compilation was "
"successful."
msgstr ""
"Сообщение об ошибке компиляции для этапа шейдера оценки тесселяции "
"(устанавливается компилятором SPIR-V и Godot). Если пусто, компиляция шейдера "
"прошла успешно."

msgid ""
"The compilation error message for the vertex shader stage (set by the SPIR-V "
"compiler and Godot). If empty, shader compilation was successful."
msgstr ""
"Сообщение об ошибке компиляции для этапа вершинного шейдера (устанавливается "
"компилятором SPIR-V и Godot). Если пусто, компиляция шейдера прошла успешно."

msgid "Texture format (used by [RenderingDevice])."
msgstr "Формат текстуры (используется [RenderingDevice])."

msgid ""
"Adds [param format] as a valid format for the corresponding [RDTextureView]'s "
"[member RDTextureView.format_override] property. If any format is added as "
"shareable, then the main [member format] must also be added."
msgstr ""
"Добавляет [param format] как допустимый формат для соответствующего свойства "
"[member RDTextureView.format_override] [RDTextureView]. Если какой-либо "
"формат добавляется как общий, то основной [member format] также должен быть "
"добавлен."

msgid ""
"Removes [param format] from the list of valid formats that the corresponding "
"[RDTextureView]'s [member RDTextureView.format_override] property can be set "
"to."
msgstr ""
"Удаляет [param format] из списка допустимых форматов, которые могут быть "
"установлены для соответствующего свойства [member RDTextureView]."

msgid ""
"The number of layers in the texture. Only relevant for 2D texture arrays."
msgstr "Количество слоев в текстуре. Актуально только для массивов 2D-текстур."

msgid ""
"The texture's depth (in pixels). This is always [code]1[/code] for 2D "
"textures."
msgstr ""
"Глубина текстуры (в пикселях). Для 2D-текстур это всегда [code]1[/code]."

msgid "The texture's pixel data format."
msgstr "Формат пиксельных данных текстуры."

msgid "The texture's height (in pixels)."
msgstr "Высота текстуры (в пикселях)."

msgid ""
"If a texture is discardable, its contents do not need to be preserved between "
"frames. This flag is only relevant when the texture is used as target in a "
"draw list.\n"
"This information is used by [RenderingDevice] to figure out if a texture's "
"contents can be discarded, eliminating unnecessary writes to memory and "
"boosting performance."
msgstr ""
"Если текстура может быть отброшена, ее содержимое не нужно сохранять между "
"кадрами. Этот флаг имеет значение только тогда, когда текстура используется "
"как цель в списке отрисовки.\n"
"Эта информация используется [RenderingDevice] для определения того, можно ли "
"отбросить содержимое текстуры, что исключает ненужные записи в память и "
"повышает производительность."

msgid "The texture will be used as the destination of a resolve operation."
msgstr ""
"Текстура будет использоваться в качестве назначения операции разрешения."

msgid "The number of mipmaps available in the texture."
msgstr "Количество MIP-текстур, доступных в текстуре."

msgid "The number of samples used when sampling the texture."
msgstr "Количество образцов, использованных при отборе проб текстуры."

msgid "The texture type."
msgstr "Тип текстуры."

msgid ""
"The texture's usage bits, which determine what can be done using the texture."
msgstr ""
"Биты использования текстуры, которые определяют, что можно сделать с "
"использованием текстуры."

msgid "The texture's width (in pixels)."
msgstr "Ширина текстуры (в пикселях)."

msgid "Texture view (used by [RenderingDevice])."
msgstr "Вид текстуры (используется [RenderingDevice])."

msgid ""
"Optional override for the data format to return sampled values in. The "
"corresponding [RDTextureFormat] must have had this added as a shareable "
"format. The default value of [constant RenderingDevice.DATA_FORMAT_MAX] does "
"not override the format."
msgstr ""
"Необязательное переопределение формата данных для возврата выборочных "
"значений. Соответствующий [RDTextureFormat] должен иметь это добавленным как "
"общий формат. Значение по умолчанию [constant "
"RenderingDevice.DATA_FORMAT_MAX] не переопределяет формат."

msgid "The channel to sample when sampling the alpha channel."
msgstr "Канал для выборки при выборке альфа-канала."

msgid "The channel to sample when sampling the blue color channel."
msgstr "Канал для выборки при выборке канала синего цвета."

msgid "The channel to sample when sampling the green color channel."
msgstr "Канал для выборки при выборке канала зеленого цвета."

msgid "The channel to sample when sampling the red color channel."
msgstr "Канал для выборки при выборке канала красного цвета."

msgid "Shader uniform (used by [RenderingDevice])."
msgstr "Униформа шейдера (используется [RenderingDevice])."

msgid ""
"Binds the given id to the uniform. The data associated with the id is then "
"used when the uniform is passed to a shader."
msgstr ""
"Связывает заданный идентификатор с униформой. Данные, связанные с "
"идентификатором, затем используются при передаче униформы в шейдер."

msgid "Unbinds all ids currently bound to the uniform."
msgstr "Отменяет привязку всех идентификаторов, привязанных к униформе."

msgid "Returns an array of all ids currently bound to the uniform."
msgstr ""
"Возвращает массив всех идентификаторов, привязанных в данный момент к "
"униформе."

msgid "The uniform's binding."
msgstr "Привязка униформы."

msgid "The uniform's data type."
msgstr "Тип данных униформы."

msgid "Vertex attribute (used by [RenderingDevice])."
msgstr "Атрибут вершины (используется [RenderingDevice])."

msgid "The way that this attribute's data is interpreted when sent to a shader."
msgstr "Способ интерпретации данных этого атрибута при отправке в шейдер."

msgid "The rate at which this attribute is pulled from its vertex buffer."
msgstr "Скорость, с которой этот атрибут извлекается из буфера вершин."

msgid "The location in the shader that this attribute is bound to."
msgstr "Местоположение в шейдере, к которому привязан этот атрибут."

msgid ""
"The number of bytes between the start of the vertex buffer and the first "
"instance of this attribute."
msgstr ""
"Количество байтов между началом буфера вершин и первым экземпляром этого "
"атрибута."

msgid ""
"The number of bytes between the starts of consecutive instances of this "
"attribute."
msgstr ""
"Количество байтов между началами последовательных экземпляров этого атрибута."

msgid "A 2D axis-aligned bounding box using floating-point coordinates."
msgstr ""
"Двумерная ограничивающая рамка, выровненная по осям, с использованием "
"координат с плавающей точкой."

msgid ""
"The [Rect2] built-in [Variant] type represents an axis-aligned rectangle in a "
"2D space. It is defined by its [member position] and [member size], which are "
"[Vector2]. It is frequently used for fast overlap tests (see [method "
"intersects]). Although [Rect2] itself is axis-aligned, it can be combined "
"with [Transform2D] to represent a rotated or skewed rectangle.\n"
"For integer coordinates, use [Rect2i]. The 3D equivalent to [Rect2] is "
"[AABB].\n"
"[b]Note:[/b] Negative values for [member size] are not supported. With "
"negative size, most [Rect2] methods do not work correctly. Use [method abs] "
"to get an equivalent [Rect2] with a non-negative size.\n"
"[b]Note:[/b] In a boolean context, a [Rect2] evaluates to [code]false[/code] "
"if both [member position] and [member size] are zero (equal to [constant "
"Vector2.ZERO]). Otherwise, it always evaluates to [code]true[/code]."
msgstr ""
"Встроенный тип [Variant] [Rect2] представляет собой выровненный по осям "
"прямоугольник в 2D-пространстве. Он определяется его [member position] и "
"[member size], которые являются [Vector2]. Он часто используется для быстрых "
"тестов на перекрытие (см. [method intersects]). Хотя сам [Rect2] выровнен по "
"осям, его можно объединить с [Transform2D] для представления повернутого или "
"наклоненного прямоугольника.\n"
"Для целочисленных координат используйте [Rect2i]. 3D-эквивалент [Rect2] — "
"[AABB].\n"
"[b]Примечание:[/b] Отрицательные значения для [member size] не "
"поддерживаются. При отрицательном размере большинство методов [Rect2] "
"работают неправильно. Используйте [method abs], чтобы получить эквивалентный "
"[Rect2] с неотрицательным размером.\n"
"[b]Примечание:[/b] В булевом контексте [Rect2] оценивается как [code]false[/"
"code], если и [member position], и [member size] равны нулю (равны [constant "
"Vector2.ZERO]). В противном случае он всегда оценивается как [code]true[/"
"code]."

msgid ""
"Constructs a [Rect2] with its [member position] and [member size] set to "
"[constant Vector2.ZERO]."
msgstr ""
"Создает [Rect2] с его [member position] и [member size], установленными на "
"[constant Vector2.ZERO]."

msgid "Constructs a [Rect2] as a copy of the given [Rect2]."
msgstr "Создает [Rect2] как копию заданного [Rect2]."

msgid "Constructs a [Rect2] from a [Rect2i]."
msgstr "Создает [Rect2] из [Rect2i]."

msgid "Constructs a [Rect2] by [param position] and [param size]."
msgstr "Создает [Rect2] по [param position] и [param size]."

msgid ""
"Constructs a [Rect2] by setting its [member position] to ([param x], [param "
"y]), and its [member size] to ([param width], [param height])."
msgstr ""
"Создает [Rect2], устанавливая его [member position] на ([param x], [param "
"y]), а его [member size] на ([param width], [param height])."

msgid ""
"Returns a [Rect2] equivalent to this rectangle, with its width and height "
"modified to be non-negative values, and with its [member position] being the "
"top-left corner of the rectangle.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2(25, 25, -100, -50)\n"
"var absolute = rect.abs() # absolute is Rect2(-75, -25, 100, 50)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2(25, 25, -100, -50);\n"
"var absolute = rect.Abs(); // absolute is Rect2(-75, -25, 100, 50)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] It's recommended to use this method when [member size] is "
"negative, as most other methods in Godot assume that the [member position] is "
"the top-left corner, and the [member end] is the bottom-right corner."
msgstr ""
"Возвращает [Rect2], эквивалентный данному прямоугольнику, с измененной "
"шириной и высотой, которые стали неотрицательными значениями, и с [member "
"position], являющейся верхним левым углом прямоугольника.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2(25, 25, -100, -50)\n"
"var absolute = rect.abs() # абсолютный — Rect2(-75, -25, 100, 50)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2(25, 25, -100, -50);\n"
"var absolute = rect.Abs(); // абсолютный — Rect2(-75, -25, 100, 50)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Рекомендуется использовать этот метод, когда [member size] "
"отрицательный, так как большинство других методов в Godot предполагают, что "
"[member position] — это верхний левый угол, а [member end] — нижний правый "
"угол."

msgid ""
"Returns [code]true[/code] if this rectangle [i]completely[/i] encloses the "
"[param b] rectangle."
msgstr ""
"Возвращает [code]true[/code], если этот прямоугольник [i]полностью[/i] "
"охватывает прямоугольник [param b]."

msgid ""
"Returns a copy of this rectangle expanded to align the edges with the given "
"[param to] point, if necessary.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2(0, 0, 5, 2)\n"
"\n"
"rect = rect.expand(Vector2(10, 0)) # rect is Rect2(0, 0, 10, 2)\n"
"rect = rect.expand(Vector2(-5, 5)) # rect is Rect2(-5, 0, 15, 5)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2(0, 0, 5, 2);\n"
"\n"
"rect = rect.Expand(new Vector2(10, 0)); // rect is Rect2(0, 0, 10, 2)\n"
"rect = rect.Expand(new Vector2(-5, 5)); // rect is Rect2(-5, 0, 15, 5)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает копию этого прямоугольника, расширенную для выравнивания краев с "
"заданной точкой [param to], если это необходимо.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2(0, 0, 5, 2)\n"
"\n"
"rect = rect.expand(Vector2(10, 0)) # прямоугольник равен Rect2(0, 0, 10, 2)\n"
"rect = rect.expand(Vector2(-5, 5)) # прямоугольник равен Rect2(-5, 0, 15, 5)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2(0, 0, 5, 2);\n"
"\n"
"rect = rect.Expand(new Vector2(10, 0)); // прямоугольник равен Rect2(0, 0, "
"10, 2)\n"
"rect = rect.Expand(new Vector2(-5, 5)); // прямоугольник равен Rect2(-5, 0, "
"15, 5)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the rectangle's area. This is equivalent to [code]size.x * size.y[/"
"code]. See also [method has_area]."
msgstr ""
"Возвращает площадь прямоугольника. Это эквивалентно [code]size.x * size.y[/"
"code]. См. также [method has_area]."

msgid ""
"Returns the center point of the rectangle. This is the same as [code]position "
"+ (size / 2.0)[/code]."
msgstr ""
"Возвращает центральную точку прямоугольника. Это то же самое, что "
"[code]position + (size / 2.0)[/code]."

msgid ""
"Returns the vertex's position of this rect that's the farthest in the given "
"direction. This point is commonly known as the support point in collision "
"detection algorithms."
msgstr ""
"Возвращает позицию вершины этого прямоугольника, которая является самой "
"дальней в заданном направлении. Эта точка обычно известна как опорная точка в "
"алгоритмах обнаружения столкновений."

msgid ""
"Returns a copy of this rectangle extended on all sides by the given [param "
"amount]. A negative [param amount] shrinks the rectangle instead. See also "
"[method grow_individual] and [method grow_side].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = Rect2(4, 4, 8, 8).grow(4) # a is Rect2(0, 0, 16, 16)\n"
"var b = Rect2(0, 0, 8, 4).grow(2) # b is Rect2(-2, -2, 12, 8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Rect2(4, 4, 8, 8).Grow(4); // a is Rect2(0, 0, 16, 16)\n"
"var b = new Rect2(0, 0, 8, 4).Grow(2); // b is Rect2(-2, -2, 12, 8)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает копию этого прямоугольника, расширенного со всех сторон на "
"заданный [param amount]. Отрицательное [param amount] вместо этого сжимает "
"прямоугольник. См. также [method grow_individual] и [method grow_side].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = Rect2(4, 4, 8, 8).grow(4) # а — это Rect2(0, 0, 16, 16)\n"
"var b = Rect2(0, 0, 8, 4).grow(2) # b — это Rect2(-2, -2, 12, 8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Rect2(4, 4, 8, 8).Grow(4); // а — это Rect2(0, 0, 16, 16)\n"
"var b = new Rect2(0, 0, 8, 4).Grow(2); // b — это Rect2(-2, -2, 12, 8)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a copy of this rectangle with its [param left], [param top], [param "
"right], and [param bottom] sides extended by the given amounts. Negative "
"values shrink the sides, instead. See also [method grow] and [method "
"grow_side]."
msgstr ""
"Возвращает копию этого прямоугольника со сторонами [param left], [param top], "
"[param right] и [param bottom], расширенными на заданные значения. "
"Отрицательные значения вместо этого сжимают стороны. См. также [method grow] "
"и [method grow_side]."

msgid ""
"Returns a copy of this rectangle with its [param side] extended by the given "
"[param amount] (see [enum Side] constants). A negative [param amount] shrinks "
"the rectangle, instead. See also [method grow] and [method grow_individual]."
msgstr ""
"Возвращает копию этого прямоугольника с его [param side], расширенным на "
"заданное [param amount] (см. константы [enum Side]). Отрицательное [param "
"amount] вместо этого сжимает прямоугольник. См. также [method grow] и [method "
"grow_individual]."

msgid ""
"Returns [code]true[/code] if this rectangle has positive width and height. "
"See also [method get_area]."
msgstr ""
"Возвращает [code]true[/code], если этот прямоугольник имеет положительную "
"ширину и высоту. См. также [method get_area]."

msgid ""
"Returns [code]true[/code] if the rectangle contains the given [param point]. "
"By convention, points on the right and bottom edges are [b]not[/b] included.\n"
"[b]Note:[/b] This method is not reliable for [Rect2] with a [i]negative[/i] "
"[member size]. Use [method abs] first to get a valid rectangle."
msgstr ""
"Возвращает [code]true[/code], если прямоугольник содержит заданный [param "
"point]. По соглашению, точки на правом и нижнем краях [b]не[/b] включены.\n"
"[b]Примечание:[/b] Этот метод ненадежен для [Rect2] с [i]отрицательным[/i] "
"[member size]. Сначала используйте [method abs], чтобы получить допустимый "
"прямоугольник."

msgid ""
"Returns the intersection between this rectangle and [param b]. If the "
"rectangles do not intersect, returns an empty [Rect2].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect1 = Rect2(0, 0, 5, 10)\n"
"var rect2 = Rect2(2, 0, 8, 4)\n"
"\n"
"var a = rect1.intersection(rect2) # a is Rect2(2, 0, 3, 4)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect1 = new Rect2(0, 0, 5, 10);\n"
"var rect2 = new Rect2(2, 0, 8, 4);\n"
"\n"
"var a = rect1.Intersection(rect2); // a is Rect2(2, 0, 3, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you only need to know whether two rectangles are overlapping, "
"use [method intersects], instead."
msgstr ""
"Возвращает пересечение между этим прямоугольником и [param b]. Если "
"прямоугольники не пересекаются, возвращает пустой [Rect2].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect1 = Rect2(0, 0, 5, 10)\n"
"var rect2 = Rect2(2, 0, 8, 4)\n"
"\n"
"var a = rect1.intersection(rect2) #а — это Rect2(2, 0, 3, 4)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect1 = new Rect2(0, 0, 5, 10);\n"
"var rect2 = new Rect2(2, 0, 8, 4);\n"
"\n"
"var a = rect1.Intersection(rect2); // а — это Rect2(2, 0, 3, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Если вам нужно только узнать, перекрываются ли два "
"прямоугольника, используйте вместо этого [method intersects]."

msgid ""
"Returns [code]true[/code] if this rectangle overlaps with the [param b] "
"rectangle. The edges of both rectangles are excluded, unless [param "
"include_borders] is [code]true[/code]."
msgstr ""
"Возвращает [code]true[/code], если этот прямоугольник перекрывается с "
"прямоугольником [param b]. Края обоих прямоугольников исключаются, если "
"только [param include_borders] не равен [code]true[/code]."

msgid ""
"Returns [code]true[/code] if this rectangle and [param rect] are "
"approximately equal, by calling [method Vector2.is_equal_approx] on the "
"[member position] and the [member size]."
msgstr ""
"Возвращает [code]true[/code], если этот прямоугольник и [param rect] "
"приблизительно равны, вызывая [method Vector2.is_equal_approx] для [member "
"position] и [member size]."

msgid ""
"Returns [code]true[/code] if this rectangle's values are finite, by calling "
"[method Vector2.is_finite] on the [member position] and the [member size]."
msgstr ""
"Возвращает [code]true[/code], если значения этого прямоугольника конечны, "
"вызывая [method Vector2.is_finite] для [member position] и [member size]."

msgid ""
"Returns a [Rect2] that encloses both this rectangle and [param b] around the "
"edges. See also [method encloses]."
msgstr ""
"Возвращает [Rect2], который охватывает этот прямоугольник и [param b] по "
"краям. См. также [method encludes]."

msgid ""
"The ending point. This is usually the bottom-right corner of the rectangle, "
"and is equivalent to [code]position + size[/code]. Setting this point affects "
"the [member size]."
msgstr ""
"Конечная точка. Обычно это нижний правый угол прямоугольника, и эквивалентно "
"[code]position + size[/code]. Установка этой точки влияет на [member size]."

msgid "The origin point. This is usually the top-left corner of the rectangle."
msgstr "Начальная точка. Обычно это верхний левый угол прямоугольника."

msgid ""
"The rectangle's width and height, starting from [member position]. Setting "
"this value also affects the [member end] point.\n"
"[b]Note:[/b] It's recommended setting the width and height to non-negative "
"values, as most methods in Godot assume that the [member position] is the top-"
"left corner, and the [member end] is the bottom-right corner. To get an "
"equivalent rectangle with non-negative size, use [method abs]."
msgstr ""
"Ширина и высота прямоугольника, начиная с [member position]. Установка этого "
"значения также влияет на точку [member end].\n"
"[b]Примечание:[/b] Рекомендуется устанавливать ширину и высоту на "
"неотрицательные значения, так как большинство методов в Godot предполагают, "
"что [member position] — это верхний левый угол, а [member end] — это нижний "
"правый угол. Чтобы получить эквивалентный прямоугольник с неотрицательным "
"размером, используйте [method abs]."

msgid ""
"Returns [code]true[/code] if the [member position] or [member size] of both "
"rectangles are not equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если [member position] или [member size] обоих "
"прямоугольников не равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx], который более надежен."

msgid ""
"Inversely transforms (multiplies) the [Rect2] by the given [Transform2D] "
"transformation matrix, under the assumption that the transformation basis is "
"orthonormal (i.e. rotation/reflection is fine, scaling/skew is not).\n"
"[code]rect * transform[/code] is equivalent to [code]transform.inverse() * "
"rect[/code]. See [method Transform2D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * rect[/code] can be used instead. See "
"[method Transform2D.affine_inverse]."
msgstr ""
"Обратно преобразует (умножает) [Rect2] на заданную матрицу преобразования "
"[Transform2D], при условии, что базис преобразования ортонормален (т. е. "
"поворот/отражение хороши, масштабирование/перекос — нет).\n"
"[code]rect * transform[/code] эквивалентно [code]transform.inverse() * rect[/"
"code]. См. [method Transform2D.inverse].\n"
"Для преобразования с помощью обратного аффинного преобразования (например, с "
"масштабированием) вместо этого можно использовать "
"[code]transform.affine_inverse() * rect[/code]. См. [method "
"Transform2D.affine_inverse]."

msgid ""
"Returns [code]true[/code] if both [member position] and [member size] of the "
"rectangles are exactly equal, respectively.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если [member position] и [member size] "
"прямоугольников в точности равны соответственно.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx], который более надежен."

msgid "A 2D axis-aligned bounding box using integer coordinates."
msgstr ""
"Двумерная ограничивающая рамка, выровненная по осям, с использованием "
"целочисленных координат."

msgid ""
"The [Rect2i] built-in [Variant] type represents an axis-aligned rectangle in "
"a 2D space, using integer coordinates. It is defined by its [member position] "
"and [member size], which are [Vector2i]. Because it does not rotate, it is "
"frequently used for fast overlap tests (see [method intersects]).\n"
"For floating-point coordinates, see [Rect2].\n"
"[b]Note:[/b] Negative values for [member size] are not supported. With "
"negative size, most [Rect2i] methods do not work correctly. Use [method abs] "
"to get an equivalent [Rect2i] with a non-negative size.\n"
"[b]Note:[/b] In a boolean context, a [Rect2i] evaluates to [code]false[/code] "
"if both [member position] and [member size] are zero (equal to [constant "
"Vector2i.ZERO]). Otherwise, it always evaluates to [code]true[/code]."
msgstr ""
"Встроенный тип [Variant] [Rect2i] представляет собой выровненный по осям "
"прямоугольник в двумерном пространстве с использованием целочисленных "
"координат. Он определяется его [member position] и [member size], которые "
"являются [Vector2i]. Поскольку он не вращается, он часто используется для "
"быстрых тестов на перекрытие (см. [method intersects]).\n"
"Для координат с плавающей точкой см. [Rect2].\n"
"[b]Примечание:[/b] Отрицательные значения для [member size] не "
"поддерживаются. При отрицательном размере большинство методов [Rect2i] "
"работают некорректно. Используйте [method abs], чтобы получить эквивалентный "
"[Rect2i] с неотрицательным размером.\n"
"[b]Примечание:[/b] В булевом контексте [Rect2i] оценивается как [code]false[/"
"code], если и [member position], и [member size] равны нулю (равно [constant "
"Vector2i.ZERO]). В противном случае всегда принимается значение [code]true[/"
"code]."

msgid ""
"Constructs a [Rect2i] with its [member position] and [member size] set to "
"[constant Vector2i.ZERO]."
msgstr ""
"Создает [Rect2i] с его [member position] и [member size], установленными на "
"[constant Vector2i.ZERO]."

msgid "Constructs a [Rect2i] as a copy of the given [Rect2i]."
msgstr "Создает [Rect2i] как копию заданного [Rect2i]."

msgid ""
"Constructs a [Rect2i] from a [Rect2]. The floating-point coordinates are "
"truncated."
msgstr "Создает [Rect2i] из [Rect2]. Координаты с плавающей точкой усекаются."

msgid "Constructs a [Rect2i] by [param position] and [param size]."
msgstr "Создает [Rect2i] по [param position] и [param size]."

msgid ""
"Constructs a [Rect2i] by setting its [member position] to ([param x], [param "
"y]), and its [member size] to ([param width], [param height])."
msgstr ""
"Создает [Rect2i], устанавливая его [member position] на ([param x], [param "
"y]), а его [member size] на ([param width], [param height])."

msgid ""
"Returns a [Rect2i] equivalent to this rectangle, with its width and height "
"modified to be non-negative values, and with its [member position] being the "
"top-left corner of the rectangle.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2i(25, 25, -100, -50)\n"
"var absolute = rect.abs() # absolute is Rect2i(-75, -25, 100, 50)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2I(25, 25, -100, -50);\n"
"var absolute = rect.Abs(); // absolute is Rect2I(-75, -25, 100, 50)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] It's recommended to use this method when [member size] is "
"negative, as most other methods in Godot assume that the [member position] is "
"the top-left corner, and the [member end] is the bottom-right corner."
msgstr ""
"Возвращает [Rect2i], эквивалентный данному прямоугольнику, с измененной "
"шириной и высотой, которые стали неотрицательными значениями, и с [member "
"position], являющейся верхним левым углом прямоугольника.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2i(25, 25, -100, -50)\n"
"var absolute = rect.abs() # абсолютный — Rect2i(-75, -25, 100, 50)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2I(25, 25, -100, -50);\n"
"var absolute = rect.Abs(); // абсолютный — Rect2i(-75, -25, 100, 50)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Рекомендуется использовать этот метод, когда [member size] "
"отрицательный, так как большинство других методов в Godot предполагают, что "
"[member position] — это верхний левый угол, а [member end] — нижний правый "
"угол."

msgid ""
"Returns [code]true[/code] if this [Rect2i] completely encloses another one."
msgstr ""
"Возвращает [code]true[/code], если этот [Rect2i] полностью охватывает другой."

msgid ""
"Returns a copy of this rectangle expanded to align the edges with the given "
"[param to] point, if necessary.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2i(0, 0, 5, 2)\n"
"\n"
"rect = rect.expand(Vector2i(10, 0)) # rect is Rect2i(0, 0, 10, 2)\n"
"rect = rect.expand(Vector2i(-5, 5)) # rect is Rect2i(-5, 0, 15, 5)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2I(0, 0, 5, 2);\n"
"\n"
"rect = rect.Expand(new Vector2I(10, 0)); // rect is Rect2I(0, 0, 10, 2)\n"
"rect = rect.Expand(new Vector2I(-5, 5)); // rect is Rect2I(-5, 0, 15, 5)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает копию этого прямоугольника, расширенную для выравнивания краев с "
"заданной точкой [param to], если это необходимо.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var rect = Rect2i(0, 0, 5, 2)\n"
"\n"
"rect = rect.expand(Vector2i(10, 0)) # прямоугольник равен Rect2i(0, 0, 10, "
"2)\n"
"rect = rect.expand(Vector2i(-5, 5)) # прямоугольник равен Rect2i(-5, 0, 15, "
"5)\n"
"[/gdscript]\n"
"[csharp]\n"
"var rect = new Rect2I(0, 0, 5, 2);\n"
"\n"
"rect = rect.Expand(new Vector2I(10, 0)); // прямоугольник равен Rect2i(0, 0, "
"10, 2)\n"
"rect = rect.Expand(new Vector2I(-5, 5)); // прямоугольник равен Rect2i(-5, 0, "
"15, 5)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the center point of the rectangle. This is the same as [code]position "
"+ (size / 2)[/code].\n"
"[b]Note:[/b] If the [member size] is odd, the result will be rounded towards "
"[member position]."
msgstr ""
"Возвращает центральную точку прямоугольника. Это то же самое, что "
"[code]position + (size / 2)[/code].\n"
"[b]Примечание:[/b] Если [member size] нечетный, результат будет округлен в "
"сторону member position]."

msgid ""
"Returns a copy of this rectangle extended on all sides by the given [param "
"amount]. A negative [param amount] shrinks the rectangle instead. See also "
"[method grow_individual] and [method grow_side].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = Rect2i(4, 4, 8, 8).grow(4) # a is Rect2i(0, 0, 16, 16)\n"
"var b = Rect2i(0, 0, 8, 4).grow(2) # b is Rect2i(-2, -2, 12, 8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Rect2I(4, 4, 8, 8).Grow(4); // a is Rect2I(0, 0, 16, 16)\n"
"var b = new Rect2I(0, 0, 8, 4).Grow(2); // b is Rect2I(-2, -2, 12, 8)\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает копию этого прямоугольника, расширенного со всех сторон на "
"заданный [param amount]. Отрицательное [param amount] вместо этого сжимает "
"прямоугольник. См. также [method grow_individual] и [method grow_side].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = Rect2i(4, 4, 8, 8).grow(4) # а — это Rect2i(0, 0, 16, 16)\n"
"var b = Rect2i(0, 0, 8, 4).grow(2) # b — это Rect2i(-2, -2, 12, 8)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Rect2I(4, 4, 8, 8).Grow(4); // а — это Rect2i(0, 0, 16, 16)\n"
"var b = new Rect2I(0, 0, 8, 4).Grow(2); // b — это Rect2i(-2, -2, 12, 8)\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if the rectangle contains the given [param point]. "
"By convention, points on the right and bottom edges are [b]not[/b] included.\n"
"[b]Note:[/b] This method is not reliable for [Rect2i] with a [i]negative[/i] "
"[member size]. Use [method abs] first to get a valid rectangle."
msgstr ""
"Возвращает [code]true[/code], если прямоугольник содержит заданный [param "
"point]. По соглашению, точки на правом и нижнем краях [b]не[/b] включены.\n"
"[b]Примечание:[/b] Этот метод ненадежен для [Rect2i] с [i]отрицательным[/i] "
"[member size]. Сначала используйте [method abs], чтобы получить допустимый "
"прямоугольник."

msgid ""
"Returns the intersection between this rectangle and [param b]. If the "
"rectangles do not intersect, returns an empty [Rect2i].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = Rect2i(0, 0, 5, 10)\n"
"var b = Rect2i(2, 0, 8, 4)\n"
"\n"
"var c = a.intersection(b) # c is Rect2i(2, 0, 3, 4)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Rect2I(0, 0, 5, 10);\n"
"var b = new Rect2I(2, 0, 8, 4);\n"
"\n"
"var c = rect1.Intersection(rect2); // c is Rect2I(2, 0, 3, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you only need to know whether two rectangles are overlapping, "
"use [method intersects], instead."
msgstr ""
"Возвращает пересечение между этим прямоугольником и [param b]. Если "
"прямоугольники не пересекаются, возвращает пустой [Rect2i].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var a = Rect2i(0, 0, 5, 10)\n"
"var b = Rect2i(2, 0, 8, 4)\n"
"\n"
"var c = a.intersection(b) # c — это Rect2i(2, 0, 3, 4)\n"
"[/gdscript]\n"
"[csharp]\n"
"var a = new Rect2I(0, 0, 5, 10);\n"
"var b = new Rect2I(2, 0, 8, 4);\n"
"\n"
"var c = rect1.Intersection(rect2); // c — это Rect2i(2, 0, 3, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Если вам нужно только узнать, перекрываются ли два "
"прямоугольника, используйте вместо этого [method intersects]."

msgid ""
"Returns [code]true[/code] if this rectangle overlaps with the [param b] "
"rectangle. The edges of both rectangles are excluded."
msgstr ""
"Возвращает [code]true[/code], если этот прямоугольник перекрывается с "
"прямоугольником [param b]. Края обоих прямоугольников исключаются."

msgid ""
"Returns a [Rect2i] that encloses both this rectangle and [param b] around the "
"edges. See also [method encloses]."
msgstr ""
"Возвращает [Rect2i], который охватывает этот прямоугольник и [param b] по "
"краям. См. также [method encludes]."

msgid ""
"Returns [code]true[/code] if the [member position] or [member size] of both "
"rectangles are not equal."
msgstr ""
"Возвращает [code]true[/code], если [member position] или [member size] обоих "
"прямоугольников не равны."

msgid ""
"Returns [code]true[/code] if both [member position] and [member size] of the "
"rectangles are equal, respectively."
msgstr ""
"Возвращает [code]true[/code], если [member position] и [member size] "
"прямоугольников равны."

msgid "A 2D rectangle shape used for physics collision."
msgstr ""
"Двумерная прямоугольная форма, используемая для физического столкновения."

msgid ""
"A 2D rectangle shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape2D].\n"
"[b]Performance:[/b] [RectangleShape2D] is fast to check collisions against. "
"It is faster than [CapsuleShape2D], but slower than [CircleShape2D]."
msgstr ""
"Форма 2D-прямоугольника, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape2D].\n"
"[b]Производительность:[/b] [RectangleShape2D] быстро проверяет столкновения. "
"Он быстрее, чем [CapsuleShape2D], но медленнее, чем [CircleShape2D]."

msgid "The rectangle's width and height."
msgstr "Ширина и высота прямоугольника."

msgid "Base class for reference-counted objects."
msgstr "Базовый класс для объектов с подсчетом ссылок."

msgid ""
"Base class for any object that keeps a reference count. [Resource] and many "
"other helper objects inherit this class.\n"
"Unlike other [Object] types, [RefCounted]s keep an internal reference counter "
"so that they are automatically released when no longer in use, and only then. "
"[RefCounted]s therefore do not need to be freed manually with [method "
"Object.free].\n"
"[RefCounted] instances caught in a cyclic reference will [b]not[/b] be freed "
"automatically. For example, if a node holds a reference to instance [code]A[/"
"code], which directly or indirectly holds a reference back to [code]A[/code], "
"[code]A[/code]'s reference count will be 2. Destruction of the node will "
"leave [code]A[/code] dangling with a reference count of 1, and there will be "
"a memory leak. To prevent this, one of the references in the cycle can be "
"made weak with [method @GlobalScope.weakref].\n"
"In the vast majority of use cases, instantiating and using [RefCounted]-"
"derived types is all you need to do. The methods provided in this class are "
"only for advanced users, and can cause issues if misused.\n"
"[b]Note:[/b] In C#, reference-counted objects will not be freed instantly "
"after they are no longer in use. Instead, garbage collection will run "
"periodically and will free reference-counted objects that are no longer in "
"use. This means that unused ones will remain in memory for a while before "
"being removed."
msgstr ""
"Базовый класс для любого объекта, который хранит счетчик ссылок. [Resource] и "
"многие другие вспомогательные объекты наследуют этот класс.\n"
"В отличие от других типов [Object], [RefCounted] сохраняют внутренний счетчик "
"ссылок, чтобы они автоматически освобождались, когда больше не используются, "
"и только тогда. Поэтому [RefCounted] не нужно освобождать вручную с помощью "
"[method Object.free].\n"
"Экземпляры [RefCounted], пойманные в циклической ссылке, [b]не[/b] будут "
"освобождены автоматически. Например, если узел содержит ссылку на экземпляр "
"[code]A[/code], который напрямую или косвенно содержит ссылку на [code]A[/"
"code], счетчик ссылок [code]A[/code] будет равен 2. Уничтожение узла оставит "
"[code]A[/code] висящим со счетчиком ссылок 1, и произойдет утечка памяти. "
"Чтобы предотвратить это, одну из ссылок в цикле можно сделать слабой с "
"помощью [method @GlobalScope.weakref].\n"
"В подавляющем большинстве случаев использования создание экземпляра и "
"использование производных от [RefCounted] типов — это все, что вам нужно "
"сделать. Методы, предоставленные в этом классе, предназначены только для "
"продвинутых пользователей и могут вызывать проблемы при неправильном "
"использовании.\n"
"[b]Примечание:[/b] В C# объекты с подсчетом ссылок не будут освобождаться "
"мгновенно после того, как они больше не используются. Вместо этого сборка "
"мусора будет запускаться периодически и освобождать объекты с подсчетом "
"ссылок, которые больше не используются. Это означает, что неиспользуемые "
"объекты будут оставаться в памяти некоторое время, прежде чем будут удалены."

msgid "Returns the current reference count."
msgstr "Возвращает текущее количество ссылок."

msgid ""
"Initializes the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns whether the initialization was successful."
msgstr ""
"Инициализирует внутренний счетчик ссылок. Используйте это только если вы "
"действительно знаете, что делаете.\n"
"Возвращает, была ли инициализация успешной."

msgid ""
"Increments the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns [code]true[/code] if the increment was successful, [code]false[/code] "
"otherwise."
msgstr ""
"Увеличивает внутренний счетчик ссылок. Используйте это только если вы "
"действительно знаете, что делаете.\n"
"Возвращает [code]true[/code], если приращение прошло успешно, [code]false[/"
"code] в противном случае."

msgid ""
"Decrements the internal reference counter. Use this only if you really know "
"what you are doing.\n"
"Returns [code]true[/code] if the object should be freed after the decrement, "
"[code]false[/code] otherwise."
msgstr ""
"Уменьшает внутренний счетчик ссылок. Используйте это, только если вы "
"действительно знаете, что делаете.\n"
"Возвращает [code]true[/code], если объект должен быть освобожден после "
"уменьшения, [code]false[/code] в противном случае."

msgid "A rectangular box for designing UIs."
msgstr "Прямоугольный блок для проектирования пользовательских интерфейсов."

msgid ""
"A rectangular box that displays only a colored border around its rectangle "
"(see [method Control.get_rect]). It can be used to visualize the extents of a "
"[Control] node, for testing purposes."
msgstr ""
"Прямоугольный блок, отображающий только цветную рамку вокруг себя (см. "
"[method Control.get_rect]). Его можно использовать для визуализации границ "
"узла [Control] в целях тестирования."

msgid "Sets the border color of the [ReferenceRect]."
msgstr "Устанавливает цвет границы [ReferenceRect]."

msgid ""
"Sets the border width of the [ReferenceRect]. The border grows both inwards "
"and outwards with respect to the rectangle box."
msgstr ""
"Устанавливает ширину границы [ReferenceRect]. Граница увеличивается как "
"внутрь, так и наружу относительно прямоугольного блока."

msgid ""
"If [code]true[/code], the [ReferenceRect] will only be visible while in "
"editor. Otherwise, [ReferenceRect] will be visible in the running project."
msgstr ""
"Если [code]true[/code], [ReferenceRect] будет виден только в редакторе. В "
"противном случае [ReferenceRect] будет виден в запущенном проекте."

msgid ""
"Captures its surroundings to create fast, accurate reflections from a given "
"point."
msgstr ""
"Фиксирует окружающую обстановку для создания быстрых и точных отражений из "
"заданной точки."

msgid ""
"Captures its surroundings as a cubemap, and stores versions of it with "
"increasing levels of blur to simulate different material roughnesses.\n"
"The [ReflectionProbe] is used to create high-quality reflections at a low "
"performance cost (when [member update_mode] is [constant UPDATE_ONCE]). "
"[ReflectionProbe]s can be blended together and with the rest of the scene "
"smoothly. [ReflectionProbe]s can also be combined with [VoxelGI], SDFGI "
"([member Environment.sdfgi_enabled]) and screen-space reflections ([member "
"Environment.ssr_enabled]) to get more accurate reflections in specific areas. "
"[ReflectionProbe]s render all objects within their [member cull_mask], so "
"updating them can be quite expensive. It is best to update them once with the "
"important static objects and then leave them as-is.\n"
"[b]Note:[/b] Unlike [VoxelGI] and SDFGI, [ReflectionProbe]s only source their "
"environment from a [WorldEnvironment] node. If you specify an [Environment] "
"resource within a [Camera3D] node, it will be ignored by the "
"[ReflectionProbe]. This can lead to incorrect lighting within the "
"[ReflectionProbe].\n"
"[b]Note:[/b] When using the Mobile rendering method, only [code]8[/code] "
"reflection probes can be displayed on each mesh resource, while the "
"Compatibility rendering method only supports up to [code]2[/code] reflection "
"probes on each mesh. Attempting to display more than [code]8[/code] "
"reflection probes on a single mesh resource using the Mobile renderer will "
"result in reflection probes flickering in and out as the camera moves, while "
"the Compatibility renderer will not render any additional probes if more than "
"[code]2[/code] reflection probes are being used.\n"
"[b]Note:[/b] When using the Mobile rendering method, reflection probes will "
"only correctly affect meshes whose visibility AABB intersects with the "
"reflection probe's AABB. If using a shader to deform the mesh in a way that "
"makes it go outside its AABB, [member GeometryInstance3D.extra_cull_margin] "
"must be increased on the mesh. Otherwise, the reflection probe may not be "
"visible on the mesh."
msgstr ""
"Захватывает свое окружение в виде кубической карты и сохраняет ее версии с "
"увеличивающимися уровнями размытия для имитации различных шероховатостей "
"материалов.\n"
"[ReflectionProbe] используется для создания высококачественных отражений при "
"низких затратах производительности (когда [member update_mode] равно "
"[constant UPDATE_ONCE]). [ReflectionProbe]-ы можно плавно смешивать друг с "
"другом и с остальной частью сцены. [ReflectionProbe]-ы также могут "
"комбинироваться с [VoxelGI], SDFGI ([member Environment.sdfgi_enabled]) и "
"отражениями в экранном пространстве ([member Environment.ssr_enabled]) для "
"получения более точных отражений в определенных областях. [ReflectionProbe]-ы "
"визуализируют все объекты в пределах [member cull_mask], поэтому их "
"обновление может быть довольно затратным. Лучше всего обновить их один раз, "
"добавив важные статические объекты, и больше не трогать.\n"
"[b]Примечание:[/b] В отличие от [VoxelGI] и SDFGI, [ReflectionProbe] получают "
"свою среду только из узла [WorldEnvironment]. Если указать ресурс "
"[Environment] в узле [Camera3D], он будет проигнорирован [ReflectionProbe]. "
"Это может привести к неправильному освещению внутри [ReflectionProbe].\n"
"[b]Примечание:[/b] При использовании метода Mobile рендеринга на каждом "
"ресурсе сетки могут отображаться только [code]8[/code] reflection отражения, "
"тогда как метод Compatibility рендеринга поддерживает только до [code]2[/"
"code] Reflection Probe на каждой сетке. Попытка отобразить более [code]8[/"
"code] reflection отражения на одном ресурсе сетки с помощью Mobile рендеринга "
"приведет к мерцанию зондов отражения при движении камеры, в то время как "
"Compatibility рендеринга не будет отображать никаких дополнительных зондов, "
"если используется более [code]2[/code] Reflection Probe.\n"
"[b]Примечание:[/b] При использовании метода Mobile рендеринга Reflection "
"Probe будут правильно воздействовать только на те сетки, видимость AABB "
"которых пересекается с AABB Reflection Probe. При использовании шейдера для "
"деформации сетки, выходящей за пределы AABB, необходимо увеличить [member "
"GeometryInstance3D.extra_cull_margin] сетки. В противном случае Reflection "
"Probe может быть не виден на сетке."

msgid "Reflection probes"
msgstr "Датчики отражения"

msgid ""
"The custom ambient color to use within the [ReflectionProbe]'s box defined by "
"its [member size]. Only effective if [member ambient_mode] is [constant "
"AMBIENT_COLOR]."
msgstr ""
"Пользовательский цвет окружения для использования в поле [ReflectionProbe], "
"определенном его [member size]. Действует только если [member ambient_mode] — "
"[constant AMBIENT_COLOR]."

msgid ""
"The custom ambient color energy to use within the [ReflectionProbe]'s box "
"defined by its [member size]. Only effective if [member ambient_mode] is "
"[constant AMBIENT_COLOR]."
msgstr ""
"Пользовательская энергия окружающего цвета для использования в поле "
"[ReflectionProbe], определенном его [member size]. Действует только если "
"[member ambient_mode] равно [constant AMBIENT_COLOR]."

msgid ""
"The ambient color to use within the [ReflectionProbe]'s box defined by its "
"[member size]. The ambient color will smoothly blend with other "
"[ReflectionProbe]s and the rest of the scene (outside the [ReflectionProbe]'s "
"box defined by its [member size])."
msgstr ""
"Цвет окружающего пространства для использования в поле [ReflectionProbe], "
"определенном его [member size]. Цвет окружающего пространства будет плавно "
"смешиваться с другими [ReflectionProbe] и остальной частью сцены (за "
"пределами поля [ReflectionProbe], определенного его [member size])."

msgid "Defines the distance in meters over which a probe blends into the scene."
msgstr "Определяет расстояние в метрах, на котором зонд сливается с сценой."

msgid ""
"If [code]true[/code], enables box projection. This makes reflections look "
"more correct in rectangle-shaped rooms by offsetting the reflection center "
"depending on the camera's location.\n"
"[b]Note:[/b] To better fit rectangle-shaped rooms that are not aligned to the "
"grid, you can rotate the [ReflectionProbe] node."
msgstr ""
"Если [code]true[/code], включает проекцию коробки. Это делает отражения более "
"правильными в прямоугольных комнатах, смещая центр отражения в зависимости от "
"расположения камеры.\n"
"[b]Примечание:[/b] Чтобы лучше подогнать прямоугольные комнаты, которые не "
"выровнены по сетке, можно повернуть узел [ReflectionProbe]."

msgid ""
"Sets the cull mask which determines what objects are drawn by this probe. "
"Every [VisualInstance3D] with a layer included in this cull mask will be "
"rendered by the probe. It is best to only include large objects which are "
"likely to take up a lot of space in the reflection in order to save on "
"rendering cost.\n"
"This can also be used to prevent an object from reflecting upon itself (for "
"instance, a [ReflectionProbe] centered on a vehicle)."
msgstr ""
"Устанавливает маску отбраковки, которая определяет, какие объекты рисуются "
"этим зондом. Каждый [VisualInstance3D] со слоем, включенным в эту маску "
"отбраковки, будет визуализирован зондом. Лучше всего включать только крупные "
"объекты, которые, вероятно, займут много места в отражении, чтобы сэкономить "
"на стоимости рендеринга.\n"
"Это также можно использовать для предотвращения отражения объекта от самого "
"себя (например, [ReflectionProbe], центрированный на транспортном средстве)."

msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection probe slower to render; you may want to disable this if using "
"the [constant UPDATE_ALWAYS] [member update_mode]."
msgstr ""
"Если [code]true[/code], вычисляет тени в зонде отражения. Это замедляет "
"рендеринг зонда отражения; вы можете отключить это, если используете "
"[constant UPDATE_ALWAYS] [member update_mode]."

msgid ""
"Defines the reflection intensity. Intensity modulates the strength of the "
"reflection."
msgstr ""
"Определяет интенсивность отражения. Интенсивность модулирует силу отражения."

msgid "If [code]true[/code], reflections will ignore sky contribution."
msgstr "Если [code]true[/code], отражения будут игнорировать влияние неба."

msgid ""
"The maximum distance away from the [ReflectionProbe] an object can be before "
"it is culled. Decrease this to improve performance, especially when using the "
"[constant UPDATE_ALWAYS] [member update_mode].\n"
"[b]Note:[/b] The maximum reflection distance is always at least equal to the "
"probe's extents. This means that decreasing [member max_distance] will not "
"always cull objects from reflections, especially if the reflection probe's "
"box defined by its [member size] is already large."
msgstr ""
"Максимальное расстояние от [ReflectionProbe], на котором может находиться "
"объект, прежде чем он будет отсечен. Уменьшите это значение, чтобы улучшить "
"производительность, особенно при использовании [constant UPDATE_ALWAYS] "
"[member update_mode].\n"
"[b]Примечание:[/b] Максимальное расстояние отражения всегда по крайней мере "
"равно протяженности зонда. Это означает, что уменьшение [member max_distance] "
"не всегда будет отсеивать объекты из отражений, особенно если область зонда "
"отражения, определяемая его [member size], уже велика."

msgid ""
"The automatic LOD bias to use for meshes rendered within the "
"[ReflectionProbe] (this is analog to [member Viewport.mesh_lod_threshold]). "
"Higher values will use less detailed versions of meshes that have LOD "
"variations generated. If set to [code]0.0[/code], automatic LOD is disabled. "
"Increase [member mesh_lod_threshold] to improve performance at the cost of "
"geometry detail, especially when using the [constant UPDATE_ALWAYS] [member "
"update_mode].\n"
"[b]Note:[/b] [member mesh_lod_threshold] does not affect [GeometryInstance3D] "
"visibility ranges (also known as \"manual\" LOD or hierarchical LOD)."
msgstr ""
"Автоматическое смещение LOD для использования сеток, визуализируемых в "
"[ReflectionProbe] (это аналог [member Viewport.mesh_lod_threshold]). Более "
"высокие значения будут использовать менее подробные версии сеток, которые "
"имеют сгенерированные вариации LOD. Если установлено значение [code]0.0[/"
"code], автоматический LOD отключен. Увеличьте [member mesh_lod_threshold], "
"чтобы улучшить производительность за счет детализации геометрии, особенно при "
"использовании [constant UPDATE_ALWAYS] [member update_mode].\n"
"[b]Примечание:[/b] [member mesh_lod_threshold] не влияет на диапазоны "
"видимости [GeometryInstance3D] (также известные как «ручной» LOD или "
"иерархический LOD)."

msgid ""
"Sets the origin offset to be used when this [ReflectionProbe] is in [member "
"box_projection] mode. This can be set to a non-zero value to ensure a "
"reflection fits a rectangle-shaped room, while reducing the number of objects "
"that \"get in the way\" of the reflection."
msgstr ""
"Устанавливает смещение начала координат, которое будет использоваться, когда "
"этот [ReflectionProbe] находится в режиме [member box_projection]. Это может "
"быть установлено на ненулевое значение, чтобы гарантировать, что отражение "
"вписывается в прямоугольную комнату, одновременно уменьшая количество "
"объектов, которые «мешают» отражению."

msgid ""
"Sets the reflection mask which determines what objects have reflections "
"applied from this probe. Every [VisualInstance3D] with a layer included in "
"this reflection mask will have reflections applied from this probe. See also "
"[member cull_mask], which can be used to exclude objects from appearing in "
"the reflection while still making them affected by the [ReflectionProbe]."
msgstr ""
"Устанавливает маску отражения, которая определяет, какие объекты имеют "
"отражения, примененные этим зондом. Каждый [VisualInstance3D] со слоем, "
"включенным в эту маску отражения, будет иметь отражения, примененные этим "
"зондом. См. также [member cull_mask], который можно использовать для "
"исключения объектов из отражения, при этом оставляя их под воздействием "
"[ReflectionProbe]."

msgid ""
"The size of the reflection probe. The larger the size, the more space covered "
"by the probe, which will lower the perceived resolution. It is best to keep "
"the size only as large as you need it.\n"
"[b]Note:[/b] To better fit areas that are not aligned to the grid, you can "
"rotate the [ReflectionProbe] node."
msgstr ""
"Размер зонда отражения. Чем больше размер, тем больше пространства охватывает "
"зонд, что снижает воспринимаемое разрешение. Лучше всего сохранять размер "
"только настолько большим, насколько это необходимо.\n"
"[b]Примечание:[/b] Чтобы лучше подогнать области, которые не выровнены по "
"сетке, можно вращать узел [ReflectionProbe]."

msgid ""
"Sets how frequently the [ReflectionProbe] is updated. Can be [constant "
"UPDATE_ONCE] or [constant UPDATE_ALWAYS]."
msgstr ""
"Устанавливает частоту обновления [ReflectionProbe]. Может быть [constant "
"UPDATE_ONCE] или [constant UPDATE_ALWAYS]."

msgid ""
"Update the probe once on the next frame (recommended for most objects). The "
"corresponding radiance map will be generated over the following six frames. "
"This takes more time to update than [constant UPDATE_ALWAYS], but it has a "
"lower performance cost and can result in higher-quality reflections. The "
"ReflectionProbe is updated when its transform changes, but not when nearby "
"geometry changes. You can force a [ReflectionProbe] update by moving the "
"[ReflectionProbe] slightly in any direction."
msgstr ""
"Обновите зонд один раз в следующем кадре (рекомендуется для большинства "
"объектов). Соответствующая карта яркости будет сгенерирована в течение "
"следующих шести кадров. Это занимает больше времени для обновления, чем "
"[constant UPDATE_ALWAYS], но имеет меньшие затраты производительности и может "
"привести к более качественным отражениям. ReflectionProbe обновляется, когда "
"изменяется его преобразование, но не когда изменяется близлежащая геометрия. "
"Вы можете принудительно обновить [ReflectionProbe], слегка переместив "
"[ReflectionProbe] в любом направлении."

msgid ""
"Update the probe every frame. This provides better results for fast-moving "
"dynamic objects (such as cars). However, it has a significant performance "
"cost. Due to the cost, it's recommended to only use one ReflectionProbe with "
"[constant UPDATE_ALWAYS] at most per scene. For all other use cases, use "
"[constant UPDATE_ONCE]."
msgstr ""
"Обновлять зонд каждый кадр. Это обеспечивает лучшие результаты для быстро "
"движущихся динамических объектов (например, автомобилей). Однако это имеет "
"значительные затраты производительности. Из-за затрат рекомендуется "
"использовать только один ReflectionProbe с [constant UPDATE_ALWAYS] максимум "
"на сцену. Для всех других случаев использования используйте [constant "
"UPDATE_ONCE]."

msgid ""
"Do not apply any ambient lighting inside the [ReflectionProbe]'s box defined "
"by its [member size]."
msgstr ""
"Не применяйте никакого окружающего освещения внутри поля [ReflectionProbe], "
"определенного его [member size]."

msgid ""
"Apply automatically-sourced environment lighting inside the "
"[ReflectionProbe]'s box defined by its [member size]."
msgstr ""
"Применить автоматически генерируемое окружающее освещение внутри поля "
"[ReflectionProbe], определяемого его [member size]."

msgid ""
"Apply custom ambient lighting inside the [ReflectionProbe]'s box defined by "
"its [member size]. See [member ambient_color] and [member "
"ambient_color_energy]."
msgstr ""
"Применить пользовательское окружающее освещение внутри поля "
"[ReflectionProbe], определяемого его [member size]. См. [member "
"ambient_color] и [member ambient_color_energy]."

msgid "Class for searching text for patterns using regular expressions."
msgstr ""
"Класс для поиска в тексте шаблонов с использованием регулярных выражений."

msgid ""
"A regular expression (or regex) is a compact language that can be used to "
"recognize strings that follow a specific pattern, such as URLs, email "
"addresses, complete sentences, etc. For example, a regex of [code]ab[0-9][/"
"code] would find any string that is [code]ab[/code] followed by any number "
"from [code]0[/code] to [code]9[/code]. For a more in-depth look, you can "
"easily find various tutorials and detailed explanations on the Internet.\n"
"To begin, the RegEx object needs to be compiled with the search pattern using "
"[method compile] before it can be used.\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
"[/codeblock]\n"
"The search pattern must be escaped first for GDScript before it is escaped "
"for the expression. For example, [code]compile(\"\\\\d+\")[/code] would be "
"read by RegEx as [code]\\d+[/code]. Similarly, [code]compile(\"\\\"(?:\\\\\\"
"\\.|[^\\\"])*\\\"\")[/code] would be read as [code]\"(?:\\\\.|[^\"])*\"[/"
"code]. In GDScript, you can also use raw string literals (r-strings). For "
"example, [code]compile(r'\"(?:\\\\.|[^\"])*\"')[/code] would be read the "
"same.\n"
"Using [method search], you can find the pattern within the given text. If a "
"pattern is found, [RegExMatch] is returned and you can retrieve details of "
"the results using methods such as [method RegExMatch.get_string] and [method "
"RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
"var result = regex.search(\"abc n-0123\")\n"
"if result:\n"
"\tprint(result.get_string()) # Prints \"n-0123\"\n"
"[/codeblock]\n"
"The results of capturing groups [code]()[/code] can be retrieved by passing "
"the group number to the various methods in [RegExMatch]. Group 0 is the "
"default and will always refer to the entire pattern. In the above example, "
"calling [code]result.get_string(1)[/code] would give you [code]0123[/code].\n"
"This version of RegEx also supports named capturing groups, and the names can "
"be used to retrieve the results. If two or more groups have the same name, "
"the name would only refer to the first one with a match.\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"d(?<digit>[0-9]+)|x(?<digit>[0-9a-f]+)\")\n"
"var result = regex.search(\"the number is x2f\")\n"
"if result:\n"
"\tprint(result.get_string(\"digit\")) # Prints \"2f\"\n"
"[/codeblock]\n"
"If you need to process multiple results, [method search_all] generates a list "
"of all non-overlapping results. This can be combined with a [code]for[/code] "
"loop for convenience.\n"
"[codeblock]\n"
"# Prints \"01 03 0 3f 42\"\n"
"for result in regex.search_all(\"d01, d03, d0c, x3f and x42\"):\n"
"\tprint(result.get_string(\"digit\"))\n"
"[/codeblock]\n"
"[b]Example:[/b] Split a string using a RegEx:\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\S+\") # Negated whitespace character class.\n"
"var results = []\n"
"for result in regex.search_all(\"One  Two \\n\\tThree\"):\n"
"\tresults.push_back(result.get_string())\n"
"print(results) # Prints [\"One\", \"Two\", \"Three\"]\n"
"[/codeblock]\n"
"[b]Note:[/b] Godot's regex implementation is based on the [url=https://"
"www.pcre.org/]PCRE2[/url] library. You can view the full pattern reference "
"[url=https://www.pcre.org/current/doc/html/pcre2pattern.html]here[/url].\n"
"[b]Tip:[/b] You can use [url=https://regexr.com/]Regexr[/url] to test regular "
"expressions online."
msgstr ""
"Регулярное выражение (или regex) — это компактный язык, который можно "
"использовать для распознавания строк, следующих определённому шаблону, "
"например, URL-адресов, адресов электронной почты, полных предложений и т. д. "
"Например, регулярное выражение [code]ab[0-9][/code] найдёт любую строку, "
"которая содержит [code]ab[/code] и за которой следует любое число от [code]0[/"
"code] до [code]9[/code]. Для более подробного изучения вы можете легко найти "
"различные руководства и подробные объяснения в Интернете.\n"
"Для начала объект RegEx необходимо скомпилировать с шаблоном поиска с помощью "
"[method compile], прежде чем его можно будет использовать.\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
"[/codeblock]\n"
"Шаблон поиска должен быть экранирован для GDScript, прежде чем он будет "
"экранирован для выражения. Например, [code]compile(\"\\\\d+\")[/code] будет "
"прочитан RegEx как [code]\\d+[/code]. Аналогично, [code]compile(\"\\\"(?:\\\\"
"\\\\.|[^\\\"])*\\\"\")[/code] будет прочитан как [code]\"(?:\\\\.|[^\"])*\"[/"
"code]. В GDScript также можно использовать необработанные строковые литералы "
"(r-строки). Например, [code]compile(r'\"(?:\\\\.|[^\"])*\"')[/code] будет "
"читаться одинаково.\n"
"Используя [method search], вы можете найти шаблон в заданном тексте. Если "
"шаблон найден, возвращается [RegExMatch], и вы можете получить подробную "
"информацию о результатах, используя такие методы, как [method "
"RegExMatch.get_string] и [method RegExMatch.get_start].\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\w-(\\\\d+)\")\n"
"var result = regex.search(\"abc n-0123\")\n"
"if result:\n"
"\tprint(result.get_string()) # Выводит \"n-0123\"\n"
"[/codeblock]\n"
"Результаты захвата групп [code]()[/code] можно получить, передав номер группы "
"различным методам [RegExMatch]. Группа 0 используется по умолчанию и всегда "
"будет ссылаться на весь шаблон. В приведенном выше примере вызов "
"[code]result.get_string(1)[/code] вернет [code]0123[/code].\n"
"Эта версия RegEx также поддерживает именованные захваты групп, и эти имена "
"можно использовать для получения результатов. Если две или более групп имеют "
"одинаковое имя, это имя будет ссылаться только на первую из них, совпавшую с "
"шаблоном.\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"d(?<digit>[0-9]+)|x(?<digit>[0-9a-f]+)\")\n"
"var result = regex.search(\"число равно x2f\")\n"
"if result:\n"
"\tprint(result.get_string(\"digit\")) # Выводит \"2f\"\n"
"[/codeblock]\n"
"Если вам нужно обработать несколько результатов, [method search_all] "
"сгенерирует список всех непересекающихся результатов. Для удобства этот метод "
"можно объединить с циклом [code]for[/code].\n"
"[codeblock]\n"
"# Выводит \"01 03 0 3f 42\"\n"
"for result in regex.search_all(\"d01, d03, d0c, x3f and x42\"):\n"
"\tprint(result.get_string(\"digit\"))\n"
"[/codeblock]\n"
"[b]Пример:[/b] Разделение строки с помощью регулярного выражения:\n"
"[codeblock]\n"
"var regex = RegEx.new()\n"
"regex.compile(\"\\\\S+\") # Отрицательный класс символов пробела.\n"
"var results = []\n"
"for result in regex.search_all(\"One  Two \\n\\tThree\"):\n"
"\tresults.push_back(result.get_string())\n"
"print(results) # Выводит [\"One\", \"Two\", \"Three\"]\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Реализация регулярных выражений Godot основана на "
"библиотеке [url=https://www.pcre.org/]PCRE2[/url]. Полную версию шаблона "
"можно найти [url=https://www.pcre.org/current/doc/html/"
"pcre2pattern.html]здесь[/url].\n"
"[b]Совет:[/b] Вы можете использовать [url=https://regexr.com/]Regexr[/url] "
"для проверки регулярных выражений в Интернете."

msgid ""
"This method resets the state of the object, as if it was freshly created. "
"Namely, it unassigns the regular expression of this object."
msgstr ""
"Этот метод сбрасывает состояние объекта, как будто он был только что создан. "
"А именно, он отменяет назначение регулярного выражения этому объекту."

msgid ""
"Compiles and assign the search pattern to use. Returns [constant OK] if the "
"compilation is successful. If compilation fails, returns [constant FAILED] "
"and when [param show_error] is [code]true[/code], details are printed to "
"standard output."
msgstr ""
"Компилирует и назначает шаблон поиска для использования. Возвращает [constant "
"OK], если компиляция прошла успешно. Если компиляция не удалась, возвращает "
"[constant FAILED], а когда [param show_error] равен [code]true[/code], "
"подробности выводятся на стандартный вывод."

msgid "Creates and compiles a new [RegEx] object. See also [method compile]."
msgstr "Создает и компилирует новый объект [RegEx]. См. также [method compile]."

msgid "Returns the number of capturing groups in compiled pattern."
msgstr "Возвращает количество групп захвата в скомпилированном шаблоне."

msgid ""
"Returns an array of names of named capturing groups in the compiled pattern. "
"They are ordered by appearance."
msgstr ""
"Возвращает массив имен именованных групп захвата в скомпилированном шаблоне. "
"Они упорядочены по внешнему виду."

msgid "Returns the original search pattern that was compiled."
msgstr "Возвращает исходный шаблон поиска, который был скомпилирован."

msgid "Returns whether this object has a valid search pattern assigned."
msgstr "Возвращает, назначен ли этому объекту допустимый шаблон поиска."

msgid ""
"Searches the text for the compiled pattern. Returns a [RegExMatch] container "
"of the first matching result if found, otherwise [code]null[/code].\n"
"The region to search within can be specified with [param offset] and [param "
"end]. This is useful when searching for another match in the same [param "
"subject] by calling this method again after a previous success. Note that "
"setting these parameters differs from passing over a shortened string. For "
"example, the start anchor [code]^[/code] is not affected by [param offset], "
"and the character before [param offset] will be checked for the word boundary "
"[code]\\b[/code]."
msgstr ""
"Выполняет поиск скомпилированного шаблона в тексте. Возвращает контейнер "
"[RegExMatch] первого совпадающего результата, если он найден, в противном "
"случае [code]null[/code].\n"
"Область поиска можно указать с помощью [param offset] и [param end]. Это "
"полезно при поиске другого совпадения в том же [param subject] путем "
"повторного вызова этого метода после предыдущего успешного выполнения. "
"Обратите внимание, что установка этих параметров отличается от передачи "
"сокращенной строки. Например, начальный якорь [code]^[/code] не зависит от "
"[param offset], а символ перед [param offset] будет проверяться на границу "
"слова [code]\\b[/code]."

msgid ""
"Searches the text for the compiled pattern. Returns an array of [RegExMatch] "
"containers for each non-overlapping result. If no results were found, an "
"empty array is returned instead.\n"
"The region to search within can be specified with [param offset] and [param "
"end]. This is useful when searching for another match in the same [param "
"subject] by calling this method again after a previous success. Note that "
"setting these parameters differs from passing over a shortened string. For "
"example, the start anchor [code]^[/code] is not affected by [param offset], "
"and the character before [param offset] will be checked for the word boundary "
"[code]\\b[/code]."
msgstr ""
"Выполняет поиск скомпилированного шаблона в тексте. Возвращает массив "
"контейнеров [RegExMatch] для каждого неперекрывающегося результата. Если "
"результаты не найдены, вместо этого возвращается пустой массив.\n"
"Область для поиска можно указать с помощью [param offset] и [param end]. Это "
"полезно при поиске другого совпадения в том же [param subject] путем "
"повторного вызова этого метода после предыдущего успешного выполнения. "
"Обратите внимание, что установка этих параметров отличается от передачи "
"сокращенной строки. Например, начальный якорь [code]^[/code] не зависит от "
"[param offset], а символ перед [param offset] будет проверяться на границу "
"слова [code]\\b[/code]."

msgid ""
"Searches the text for the compiled pattern and replaces it with the specified "
"string. Escapes and backreferences such as [code]$1[/code] and [code]$name[/"
"code] are expanded and resolved. By default, only the first instance is "
"replaced, but it can be changed for all instances (global replacement).\n"
"The region to search within can be specified with [param offset] and [param "
"end]. This is useful when searching for another match in the same [param "
"subject] by calling this method again after a previous success. Note that "
"setting these parameters differs from passing over a shortened string. For "
"example, the start anchor [code]^[/code] is not affected by [param offset], "
"and the character before [param offset] will be checked for the word boundary "
"[code]\\b[/code]."
msgstr ""
"Выполняет поиск скомпилированного шаблона в тексте и заменяет его указанной "
"строкой. Экранированные символы и обратные ссылки, такие как [code]$1[/code] "
"и [code]$name[/code], раскрываются и разрешаются. По умолчанию заменяется "
"только первый экземпляр, но его можно изменить для всех экземпляров "
"(глобальная замена).\n"
"Область поиска можно указать с помощью [param offset] и [param end]. Это "
"полезно при поиске другого совпадения в том же [param subject] путем "
"повторного вызова этого метода после предыдущего успешного выполнения. "
"Обратите внимание, что установка этих параметров отличается от передачи "
"сокращенной строки. Например, начальный якорь [code]^[/code] не зависит от "
"[param offset], а символ перед [param offset] будет проверяться на границу "
"слова [code]\\b[/code]."

msgid "Contains the results of a [RegEx] search."
msgstr "Содержит результаты поиска [RegEx]."

msgid ""
"Contains the results of a single [RegEx] match returned by [method "
"RegEx.search] and [method RegEx.search_all]. It can be used to find the "
"position and range of the match and its capturing groups, and it can extract "
"its substring for you."
msgstr ""
"Содержит результаты одного совпадения [RegEx], возвращаемого [method "
"RegEx.search] и [method RegEx.search_all]. Его можно использовать для поиска "
"позиции и диапазона совпадения и его групп захвата, а также для извлечения "
"его подстроки."

msgid ""
"Returns the end position of the match within the source string. The end "
"position of capturing groups can be retrieved by providing its group number "
"as an integer or its string name (if it's a named group). The default value "
"of 0 refers to the whole pattern.\n"
"Returns -1 if the group did not match or doesn't exist."
msgstr ""
"Возвращает конечную позицию совпадения в исходной строке. Конечную позицию "
"групп захвата можно получить, указав номер группы как целое число или имя "
"строки (если это именованная группа). Значение по умолчанию 0 относится ко "
"всему шаблону.\n"
"Возвращает -1, если группа не совпала или не существует."

msgid "Returns the number of capturing groups."
msgstr "Возвращает количество групп захвата."

msgid ""
"Returns the starting position of the match within the source string. The "
"starting position of capturing groups can be retrieved by providing its group "
"number as an integer or its string name (if it's a named group). The default "
"value of 0 refers to the whole pattern.\n"
"Returns -1 if the group did not match or doesn't exist."
msgstr ""
"Возвращает начальную позицию совпадения в исходной строке. Начальную позицию "
"групп захвата можно получить, указав номер группы как целое число или имя "
"строки (если это именованная группа). Значение по умолчанию 0 относится ко "
"всему шаблону.\n"
"Возвращает -1, если группа не совпала или не существует."

msgid ""
"Returns the substring of the match from the source string. Capturing groups "
"can be retrieved by providing its group number as an integer or its string "
"name (if it's a named group). The default value of 0 refers to the whole "
"pattern.\n"
"Returns an empty string if the group did not match or doesn't exist."
msgstr ""
"Возвращает подстроку совпадения из исходной строки. Группы захвата можно "
"получить, указав номер группы как целое число или имя строки (если это "
"именованная группа). Значение по умолчанию 0 относится ко всему шаблону.\n"
"Возвращает пустую строку, если группа не совпала или не существует."

msgid ""
"A dictionary of named groups and its corresponding group number. Only groups "
"that were matched are included. If multiple groups have the same name, that "
"name would refer to the first matching one."
msgstr ""
"Словарь именованных групп и соответствующий номер группы. Включаются только "
"совпавшие группы. Если несколько групп имеют одинаковое имя, это имя будет "
"ссылаться на первую совпавшую."

msgid "An [Array] of the match and its capturing groups."
msgstr "[Array] матча и его групп захвата."

msgid ""
"The source string used with the search pattern to find this matching result."
msgstr ""
"Исходная строка, используемая с шаблоном поиска для нахождения этого "
"совпадающего результата."

msgid ""
"RemoteTransform2D pushes its own [Transform2D] to another [Node2D] derived "
"node in the scene."
msgstr ""
"RemoteTransform2D помещает свой собственный [Transform2D] в другой "
"производный узел [Node2D] в сцене."

msgid ""
"RemoteTransform2D pushes its own [Transform2D] to another [Node2D] derived "
"node (called the remote node) in the scene.\n"
"It can be set to update another node's position, rotation and/or scale. It "
"can use either global or local coordinates."
msgstr ""
"RemoteTransform2D помещает свой собственный [Transform2D] в другой "
"производный узел [Node2D] (называемый удаленным узлом) в сцене.\n"
"Его можно настроить на обновление положения, поворота и/или масштаба другого "
"узла. Он может использовать как глобальные, так и локальные координаты."

msgid ""
"[RemoteTransform2D] caches the remote node. It may not notice if the remote "
"node disappears; [method force_update_cache] forces it to update the cache "
"again."
msgstr ""
"[RemoteTransform2D] кэширует удаленный узел. Он может не заметить, если "
"удаленный узел исчезнет; [method force_update_cache] заставляет его обновить "
"кэш снова."

msgid ""
"The [NodePath] to the remote node, relative to the RemoteTransform2D's "
"position in the scene."
msgstr ""
"[NodePath] к удаленному узлу относительно положения RemoteTransform2D на "
"сцене."

msgid "If [code]true[/code], the remote node's position is updated."
msgstr "Если [code]true[/code], позиция удаленного узла обновляется."

msgid "If [code]true[/code], the remote node's rotation is updated."
msgstr "Если [code]true[/code], вращение удаленного узла обновляется."

msgid "If [code]true[/code], the remote node's scale is updated."
msgstr "Если [code]true[/code], масштаб удаленного узла обновляется."

msgid ""
"If [code]true[/code], global coordinates are used. If [code]false[/code], "
"local coordinates are used."
msgstr ""
"Если [code]true[/code], используются глобальные координаты. Если [code]false[/"
"code], используются локальные координаты."

msgid ""
"RemoteTransform3D pushes its own [Transform3D] to another [Node3D] derived "
"Node in the scene."
msgstr ""
"RemoteTransform3D помещает свой собственный [Transform3D] в другой "
"производный узел [Node3D] в сцене."

msgid ""
"RemoteTransform3D pushes its own [Transform3D] to another [Node3D] derived "
"Node (called the remote node) in the scene.\n"
"It can be set to update another Node's position, rotation and/or scale. It "
"can use either global or local coordinates."
msgstr ""
"RemoteTransform3D помещает свой собственный [Transform3D] в другой "
"производный узел [Node3D] (называемый удаленным узлом) в сцене.\n"
"Его можно настроить на обновление положения, поворота и/или масштаба другого "
"узла. Он может использовать как глобальные, так и локальные координаты."

msgid ""
"[RemoteTransform3D] caches the remote node. It may not notice if the remote "
"node disappears; [method force_update_cache] forces it to update the cache "
"again."
msgstr ""
"[RemoteTransform3D] кэширует удаленный узел. Он может не заметить, если "
"удаленный узел исчезнет; [method force_update_cache] заставляет его обновить "
"кэш снова."

msgid ""
"The [NodePath] to the remote node, relative to the RemoteTransform3D's "
"position in the scene."
msgstr ""
"[NodePath] к удаленному узлу относительно положения RemoteTransform3D на "
"сцене."

msgid ""
"Abstract render data object, holds frame data related to rendering a single "
"frame of a viewport."
msgstr ""
"Абстрактный объект данных рендеринга, содержит данные кадра, относящиеся к "
"рендерингу одного кадра области просмотра."

msgid ""
"Abstract render data object, exists for the duration of rendering a single "
"viewport.\n"
"[b]Note:[/b] This is an internal rendering server object, do not instantiate "
"this from script."
msgstr ""
"Абстрактный объект данных рендеринга, существует на протяжении рендеринга "
"одного окна просмотра.\n"
"[b]Примечание:[/b] Это внутренний объект сервера рендеринга, не создавайте "
"его из скрипта."

msgid ""
"Returns the [RID] of the camera attributes object in the [RenderingServer] "
"being used to render this viewport."
msgstr ""
"Возвращает [RID] объекта атрибутов камеры в [RenderingServer], используемом "
"для рендеринга этой области просмотра."

msgid ""
"Returns the [RID] of the environment object in the [RenderingServer] being "
"used to render this viewport."
msgstr ""
"Возвращает [RID] объекта среды в [RenderingServer], используемого для "
"рендеринга этой области просмотра."

msgid ""
"Returns the [RenderSceneBuffers] object managing the scene buffers for "
"rendering this viewport."
msgstr ""
"Возвращает объект [RenderSceneBuffers], управляющий буферами сцены для "
"рендеринга этой области просмотра."

msgid "Returns the [RenderSceneData] object managing this frames scene data."
msgstr ""
"Возвращает объект [RenderSceneData], управляющий данными сцены этих кадров."

msgid ""
"This class allows for a RenderData implementation to be made in GDExtension."
msgstr "Этот класс позволяет реализовать RenderData в GDExtension."

msgid ""
"Implement this in GDExtension to return the [RID] for the implementation's "
"camera attributes object."
msgstr ""
"Реализуйте это в GDExtension, чтобы вернуть [RID] для объекта атрибутов "
"камеры реализации."

msgid ""
"Implement this in GDExtension to return the [RID] of the implementation's "
"environment object."
msgstr ""
"Реализуйте это в GDExtension, чтобы вернуть [RID] объекта среды реализации."

msgid ""
"Implement this in GDExtension to return the implementation's "
"[RenderSceneBuffers] object."
msgstr ""
"Реализуйте это в GDExtension, чтобы вернуть объект реализации "
"[RenderSceneBuffers]."

msgid ""
"Implement this in GDExtension to return the implementation's "
"[RenderSceneDataExtension] object."
msgstr ""
"Реализуйте это в GDExtension, чтобы вернуть объект реализации "
"[RenderSceneDataExtension]."

msgid ""
"Render data implementation for the RenderingDevice based renderers.\n"
"[b]Note:[/b] This is an internal rendering server object, do not instantiate "
"this from script."
msgstr ""
"Реализация данных рендеринга для рендереров на основе RenderingDevice.\n"
"[b]Примечание:[/b] Это внутренний объект сервера рендеринга, не создавайте "
"его из скрипта."

msgid ""
"This object manages all render data for the rendering device based "
"renderers.\n"
"[b]Note:[/b] This is an internal rendering server object only exposed for "
"GDExtension plugins."
msgstr ""
"Этот объект управляет всеми данными рендеринга для рендереров на основе "
"устройств рендеринга.\n"
"[b]Примечание:[/b] Это внутренний объект сервера рендеринга, доступный только "
"для плагинов GDExtension."

msgid "Abstraction for working with modern low-level graphics APIs."
msgstr "Абстракция для работы с современными низкоуровневыми графическими API."

msgid ""
"[RenderingDevice] is an abstraction for working with modern low-level "
"graphics APIs such as Vulkan. Compared to [RenderingServer] (which works with "
"Godot's own rendering subsystems), [RenderingDevice] is much lower-level and "
"allows working more directly with the underlying graphics APIs. "
"[RenderingDevice] is used in Godot to provide support for several modern low-"
"level graphics APIs while reducing the amount of code duplication required. "
"[RenderingDevice] can also be used in your own projects to perform things "
"that are not exposed by [RenderingServer] or high-level nodes, such as using "
"compute shaders.\n"
"On startup, Godot creates a global [RenderingDevice] which can be retrieved "
"using [method RenderingServer.get_rendering_device]. This global "
"[RenderingDevice] performs drawing to the screen.\n"
"[b]Local RenderingDevices:[/b] Using [method "
"RenderingServer.create_local_rendering_device], you can create \"secondary\" "
"rendering devices to perform drawing and GPU compute operations on separate "
"threads.\n"
"[b]Note:[/b] [RenderingDevice] assumes intermediate knowledge of modern "
"graphics APIs such as Vulkan, Direct3D 12, Metal or WebGPU. These graphics "
"APIs are lower-level than OpenGL or Direct3D 11, requiring you to perform "
"what was previously done by the graphics driver itself. If you have "
"difficulty understanding the concepts used in this class, follow the "
"[url=https://vulkan-tutorial.com/]Vulkan Tutorial[/url] or [url=https://"
"vkguide.dev/]Vulkan Guide[/url]. It's recommended to have existing modern "
"OpenGL or Direct3D 11 knowledge before attempting to learn a low-level "
"graphics API.\n"
"[b]Note:[/b] [RenderingDevice] is not available when running in headless mode "
"or when using the Compatibility rendering method."
msgstr ""
"[RenderingDevice] — это абстракция для работы с современными низкоуровневыми "
"графическими API, такими как Vulkan. По сравнению с [RenderingServer] "
"(который работает с собственными подсистемами рендеринга Godot), "
"[RenderingDevice] гораздо более низкого уровня и позволяет работать более "
"напрямую с базовыми графическими API. [RenderingDevice] используется в Godot "
"для поддержки нескольких современных низкоуровневых графических API, "
"одновременно уменьшая объем требуемого дублирования кода. [RenderingDevice] "
"также можно использовать в ваших собственных проектах для выполнения вещей, "
"которые не отображаются [RenderingServer] или высокоуровневыми узлами, "
"например, с использованием вычислительных шейдеров.\n"
"При запуске Godot создает глобальный [RenderingDevice], который можно "
"получить с помощью [method RenderingServer.get_rendering_device]. Этот "
"глобальный [RenderingDevice] выполняет отрисовку на экране.\n"
"[b]Локальные устройства рендеринга:[/b] Используя [method "
"RenderingServer.create_local_rendering_device], вы можете создать «вторичные» "
"устройства рендеринга для выполнения операций рисования и вычислений GPU в "
"отдельных потоках.\n"
"[b]Примечание:[/b] [RenderingDevice] предполагает промежуточные знания "
"современных графических API, таких как Vulkan, Direct3D 12, Metal или WebGPU. "
"Эти графические API являются более низкоуровневыми, чем OpenGL или Direct3D "
"11, требуя от вас выполнения того, что ранее выполнялось самим графическим "
"драйвером. Если у вас возникли трудности с пониманием концепций, используемых "
"в этом классе, следуйте [url=https://vulkan-tutorial.com/]Учебнику Vulkan[/"
"url] или [url=https://vkguide.dev/]Руководству Vulkan[/url]. Рекомендуется "
"иметь существующие знания современных OpenGL или Direct3D 11, прежде чем "
"пытаться изучить низкоуровневый графический API.\n"
"[b]Примечание:[/b] [RenderingDevice] недоступно при работе в режиме headless "
"или при использовании метода рендеринга Compatibility."

msgid "Using compute shaders"
msgstr "Применение вычислительных шейдеров"

msgid "Barriers are automatically inserted by RenderingDevice."
msgstr "Барьеры автоматически вставляются RenderingDevice."

msgid ""
"Clears the contents of the [param buffer], clearing [param size_bytes] bytes, "
"starting at [param offset].\n"
"Prints an error if:\n"
"- the size isn't a multiple of four\n"
"- the region specified by [param offset] + [param size_bytes] exceeds the "
"buffer\n"
"- a draw list is currently active (created by [method draw_list_begin])\n"
"- a compute list is currently active (created by [method compute_list_begin])"
msgstr ""
"Очищает содержимое [param buffer], очищая [param size_bytes] байт, начиная с "
"[param offset].\n"
"Выводит ошибку, если:\n"
"- размер не кратен четырем\n"
"- область, указанная [param offset] + [param size_bytes], превышает буфер\n"
"- в данный момент активен список отрисовки (создан [method draw_list_begin])\n"
"- в данный момент активен список вычислений (создан [method "
"compute_list_begin])"

msgid ""
"Copies [param size] bytes from the [param src_buffer] at [param src_offset] "
"into [param dst_buffer] at [param dst_offset].\n"
"Prints an error if:\n"
"- [param size] exceeds the size of either [param src_buffer] or [param "
"dst_buffer] at their corresponding offsets\n"
"- a draw list is currently active (created by [method draw_list_begin])\n"
"- a compute list is currently active (created by [method compute_list_begin])"
msgstr ""
"Копирует [param size] байт из [param src_buffer] в [param src_offset] в "
"[param dst_buffer] в [param dst_offset].\n"
"Выводит ошибку, если:\n"
"- [param size] превышает размер [param src_buffer] или [param dst_buffer] в "
"соответствующих смещениях\n"
"- в данный момент активен список отрисовки (создан методом [method "
"draw_list_begin])\n"
"- в данный момент активен список вычислений (создан методом [method "
"compute_list_begin])"

msgid ""
"Returns a copy of the data of the specified [param buffer], optionally [param "
"offset_bytes] and [param size_bytes] can be set to copy only a portion of the "
"buffer.\n"
"[b]Note:[/b] This method will block the GPU from working until the data is "
"retrieved. Refer to [method buffer_get_data_async] for an alternative that "
"returns the data in more performant way."
msgstr ""
"Возвращает копию данных указанного [param buffer], опционально [param "
"offset_bytes] и [param size_bytes] могут быть установлены для копирования "
"только части буфера.\n"
"[b]Примечание:[/b] Этот метод заблокирует работу GPU, пока данные не будут "
"извлечены. Обратитесь к [method buffer_get_data_async] для альтернативы, "
"которая возвращает данные более производительным способом."

msgid ""
"Asynchronous version of [method buffer_get_data]. RenderingDevice will call "
"[param callback] in a certain amount of frames with the data the buffer had "
"at the time of the request.\n"
"[b]Note:[/b] At the moment, the delay corresponds to the amount of frames "
"specified by [member ProjectSettings.rendering/rendering_device/vsync/"
"frame_queue_size].\n"
"[b]Note:[/b] Downloading large buffers can have a prohibitive cost for real-"
"time even when using the asynchronous method due to hardware bandwidth "
"limitations. When dealing with large resources, you can adjust settings such "
"as [member ProjectSettings.rendering/rendering_device/staging_buffer/"
"block_size_kb] to improve the transfer speed at the cost of extra memory.\n"
"[codeblock]\n"
"func _buffer_get_data_callback(array):\n"
"\tvalue = array.decode_u32(0)\n"
"\n"
"...\n"
"\n"
"rd.buffer_get_data_async(buffer, _buffer_get_data_callback)\n"
"[/codeblock]"
msgstr ""
"Асинхронная версия [method buffer_get_data]. RenderingDevice вызовет [param "
"callback] в определенном количестве кадров с данными, которые были в буфере "
"на момент запроса.\n"
"[b]Примечание:[/b] На данный момент задержка соответствует количеству кадров, "
"указанному [member ProjectSettings.rendering/rendering_device/vsync/"
"frame_queue_size].\n"
"[b]Примечание:[/b] Загрузка больших буферов может иметь непомерно высокую "
"стоимость для реального времени даже при использовании асинхронного метода из-"
"за ограничений пропускной способности оборудования. При работе с большими "
"ресурсами вы можете настроить такие параметры, как [member "
"ProjectSettings.rendering/rendering_device/staging_buffer/block_size_kb], "
"чтобы улучшить скорость передачи за счет дополнительной памяти.\n"
"[codeblock]\n"
"func _buffer_get_data_callback(array):\n"
"\tvalue = array.decode_u32(0)\n"
"\n"
"...\n"
"\n"
"rd.buffer_get_data_async(buffer, _buffer_get_data_callback)\n"
"[/codeblock]"

msgid ""
"Returns the address of the given [param buffer] which can be passed to "
"shaders in any way to access underlying data. Buffer must have been created "
"with this feature enabled.\n"
"[b]Note:[/b] You must check that the GPU supports this functionality by "
"calling [method has_feature] with [constant SUPPORTS_BUFFER_DEVICE_ADDRESS] "
"as a parameter."
msgstr ""
"Возвращает адрес указанного [param buffer], который может быть передан "
"шейдерам любым способом для доступа к базовым данным. Буфер должен быть "
"создан с включенной этой функцией.\n"
"[b]Примечание:[/b] Вы должны проверить, поддерживает ли графический процессор "
"эту функцию, вызвав [method has_feature] с [constant "
"SUPPORTS_BUFFER_DEVICE_ADDRESS] в качестве параметра."

msgid ""
"Updates a region of [param size_bytes] bytes, starting at [param offset], in "
"the buffer, with the specified [param data].\n"
"Prints an error if:\n"
"- the region specified by [param offset] + [param size_bytes] exceeds the "
"buffer\n"
"- a draw list is currently active (created by [method draw_list_begin])\n"
"- a compute list is currently active (created by [method compute_list_begin])"
msgstr ""
"Обновляет область размером [param size_bytes] байт, начиная с [param offset], "
"в буфере с указанными [param data].\n"
"Выводит ошибку, если:\n"
"- область, указанная [param offset] + [param size_bytes], превышает буфер\n"
"- в данный момент активен список отрисовки (создан [method draw_list_begin])\n"
"- в данный момент активен список вычислений (создан [method "
"compute_list_begin])"

msgid ""
"Creates a timestamp marker with the specified [param name]. This is used for "
"performance reporting with the [method get_captured_timestamp_cpu_time], "
"[method get_captured_timestamp_gpu_time] and [method "
"get_captured_timestamp_name] methods."
msgstr ""
"Создает маркер временной метки с указанным [param name]. Используется для "
"отчетов о производительности с методами [method "
"get_captured_timestamp_cpu_time], [method get_captured_timestamp_gpu_time] и "
"[method get_captured_timestamp_name]."

msgid "Raises a Vulkan compute barrier in the specified [param compute_list]."
msgstr "Повышает вычислительный барьер Vulkan в указанном [param compute_list]."

msgid ""
"Starts a list of compute commands created with the [code]compute_*[/code] "
"methods. The returned value should be passed to other [code]compute_list_*[/"
"code] functions.\n"
"Multiple compute lists cannot be created at the same time; you must finish "
"the previous compute list first using [method compute_list_end].\n"
"A simple compute operation might look like this (code is not a complete "
"example):\n"
"[codeblock]\n"
"var rd = RenderingDevice.new()\n"
"var compute_list = rd.compute_list_begin()\n"
"\n"
"rd.compute_list_bind_compute_pipeline(compute_list, "
"compute_shader_dilate_pipeline)\n"
"rd.compute_list_bind_uniform_set(compute_list, compute_base_uniform_set, 0)\n"
"rd.compute_list_bind_uniform_set(compute_list, dilate_uniform_set, 1)\n"
"\n"
"for i in atlas_slices:\n"
"\trd.compute_list_set_push_constant(compute_list, push_constant, "
"push_constant.size())\n"
"\trd.compute_list_dispatch(compute_list, group_size.x, group_size.y, "
"group_size.z)\n"
"\t# No barrier, let them run all together.\n"
"\n"
"rd.compute_list_end()\n"
"[/codeblock]"
msgstr ""
"Начинает список команд вычислений, созданных с помощью методов "
"[code]compute_*[/code]. Возвращаемое значение должно быть передано другим "
"функциям [code]compute_list_*[/code].\n"
"Нельзя одновременно создавать несколько списков вычислений; сначала "
"необходимо завершить предыдущий список вычислений с помощью [method "
"compute_list_end].\n"
"Простая операция вычислений может выглядеть следующим образом (код не "
"является полным примером):\n"
"[codeblock]\n"
"var rd = RenderingDevice.new()\n"
"var compute_list = rd.compute_list_begin()\n"
"\n"
"rd.compute_list_bind_compute_pipeline(compute_list, "
"compute_shader_dilate_pipeline)\n"
"rd.compute_list_bind_uniform_set(compute_list, compute_base_uniform_set, 0)\n"
"rd.compute_list_bind_uniform_set(compute_list, dilate_uniform_set, 1)\n"
"\n"
"for i in atlas_slices:\n"
"\trd.compute_list_set_push_constant(compute_list, push_constant, "
"push_constant.size())\n"
"\trd.compute_list_dispatch(compute_list, group_size.x, group_size.y, "
"group_size.z)\n"
"\t# No barrier, let them run all together.\n"
"\n"
"rd.compute_list_end()\n"
"[/codeblock]"

msgid ""
"Tells the GPU what compute pipeline to use when processing the compute list. "
"If the shader has changed since the last time this function was called, Godot "
"will unbind all descriptor sets and will re-bind them inside [method "
"compute_list_dispatch]."
msgstr ""
"Сообщает GPU, какой вычислительный конвейер использовать при обработке списка "
"вычислений. Если шейдер изменился с момента последнего вызова этой функции, "
"Godot отвяжет все наборы дескрипторов и заново привяжет их внутри [method "
"compute_list_dispatch]."

msgid ""
"Binds the [param uniform_set] to this [param compute_list]. Godot ensures "
"that all textures in the uniform set have the correct Vulkan access masks. If "
"Godot had to change access masks of textures, it will raise a Vulkan image "
"memory barrier."
msgstr ""
"Связывает [param uniform_set] с этим [param compute_list]. Godot гарантирует, "
"что все текстуры в uniform set имеют правильные маски доступа Vulkan. Если "
"Godot пришлось бы изменить маски доступа текстур, он поднимет барьер памяти "
"изображений Vulkan."

msgid ""
"Submits the compute list for processing on the GPU. This is the compute "
"equivalent to [method draw_list_draw]."
msgstr ""
"Отправляет список вычислений для обработки на GPU. Это эквивалент вычислений "
"[method draw_list_draw]."

msgid ""
"Submits the compute list for processing on the GPU with the given group "
"counts stored in the [param buffer] at [param offset]. Buffer must have been "
"created with [constant STORAGE_BUFFER_USAGE_DISPATCH_INDIRECT] flag."
msgstr ""
"Отправляет список вычислений для обработки на GPU с заданными числами групп, "
"сохраненными в [param buffer] по адресу [param offset]. Буфер должен быть "
"создан с флагом [constant STORAGE_BUFFER_USAGE_DISPATCH_INDIRECT]."

msgid ""
"Finishes a list of compute commands created with the [code]compute_*[/code] "
"methods."
msgstr ""
"Завершает список команд вычисления, созданных с помощью методов "
"[code]compute_*[/code]."

msgid ""
"Sets the push constant data to [param buffer] for the specified [param "
"compute_list]. The shader determines how this binary data is used. The "
"buffer's size in bytes must also be specified in [param size_bytes] (this can "
"be obtained by calling the [method PackedByteArray.size] method on the passed "
"[param buffer])."
msgstr ""
"Устанавливает данные константы push в [param buffer] для указанного [param "
"compute_list]. Шейдер определяет, как используются эти двоичные данные. "
"Размер буфера в байтах также должен быть указан в [param size_bytes] (его "
"можно получить, вызвав метод [method PackedByteArray.size] для переданного "
"[param buffer])."

msgid ""
"Creates a new compute pipeline. It can be accessed with the RID that is "
"returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый вычислительный конвейер. К нему можно получить доступ с помощью "
"возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Returns [code]true[/code] if the compute pipeline specified by the [param "
"compute_pipeline] RID is valid, [code]false[/code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если вычислительный конвейер, указанный RID "
"[param compute_pipeline], действителен, в противном случае — [code]false[/"
"code]."

msgid ""
"Create a new local [RenderingDevice]. This is most useful for performing "
"compute operations on the GPU independently from the rest of the engine."
msgstr ""
"Создайте новый локальный [RenderingDevice]. Это наиболее полезно для "
"выполнения вычислительных операций на GPU независимо от остального движка."

msgid ""
"Create a command buffer debug label region that can be displayed in third-"
"party tools such as [url=https://renderdoc.org/]RenderDoc[/url]. All regions "
"must be ended with a [method draw_command_end_label] call. When viewed from "
"the linear series of submissions to a single queue, calls to [method "
"draw_command_begin_label] and [method draw_command_end_label] must be matched "
"and balanced.\n"
"The [code]VK_EXT_DEBUG_UTILS_EXTENSION_NAME[/code] Vulkan extension must be "
"available and enabled for command buffer debug label region to work. See also "
"[method draw_command_end_label]."
msgstr ""
"Создайте область метки отладки буфера команд, которая может отображаться в "
"сторонних инструментах, таких как [url=https://renderdoc.org/]RenderDoc[/"
"url]. Все области должны заканчиваться вызовом [method "
"draw_command_end_label]. При просмотре линейной серии отправок в одну очередь "
"вызовы [method draw_command_begin_label] и [method draw_command_end_label] "
"должны быть согласованы и сбалансированы.\n"
"Расширение Vulkan [code]VK_EXT_DEBUG_UTILS_EXTENSION_NAME[/code] должно быть "
"доступно и включено для работы области метки отладки буфера команд. См. также "
"[method draw_command_end_label]."

msgid ""
"Ends the command buffer debug label region started by a [method "
"draw_command_begin_label] call."
msgstr ""
"Завершает область метки отладки буфера команд, начатую вызовом [method "
"draw_command_begin_label]."

msgid "Inserting labels no longer applies due to command reordering."
msgstr "Вставка меток больше не применяется из-за переупорядочивания команд."

msgid ""
"Starts a list of raster drawing commands created with the [code]draw_*[/code] "
"methods. The returned value should be passed to other [code]draw_list_*[/"
"code] functions.\n"
"Multiple draw lists cannot be created at the same time; you must finish the "
"previous draw list first using [method draw_list_end].\n"
"A simple drawing operation might look like this (code is not a complete "
"example):\n"
"[codeblock]\n"
"var rd = RenderingDevice.new()\n"
"var clear_colors = PackedColorArray([Color(0, 0, 0, 0), Color(0, 0, 0, 0), "
"Color(0, 0, 0, 0)])\n"
"var draw_list = rd.draw_list_begin(framebuffers[i], "
"RenderingDevice.CLEAR_COLOR_ALL, clear_colors, true, 1.0f, true, 0, Rect2(), "
"RenderingDevice.OPAQUE_PASS)\n"
"\n"
"# Draw opaque.\n"
"rd.draw_list_bind_render_pipeline(draw_list, raster_pipeline)\n"
"rd.draw_list_bind_uniform_set(draw_list, raster_base_uniform, 0)\n"
"rd.draw_list_set_push_constant(draw_list, raster_push_constant, "
"raster_push_constant.size())\n"
"rd.draw_list_draw(draw_list, false, 1, slice_triangle_count[i] * 3)\n"
"# Draw wire.\n"
"rd.draw_list_bind_render_pipeline(draw_list, raster_pipeline_wire)\n"
"rd.draw_list_bind_uniform_set(draw_list, raster_base_uniform, 0)\n"
"rd.draw_list_set_push_constant(draw_list, raster_push_constant, "
"raster_push_constant.size())\n"
"rd.draw_list_draw(draw_list, false, 1, slice_triangle_count[i] * 3)\n"
"\n"
"rd.draw_list_end()\n"
"[/codeblock]\n"
"The [param draw_flags] indicates if the texture attachments of the "
"framebuffer should be cleared or ignored. Only one of the two flags can be "
"used for each individual attachment. Ignoring an attachment means that any "
"contents that existed before the draw list will be completely discarded, "
"reducing the memory bandwidth used by the render pass but producing garbage "
"results if the pixels aren't replaced. The default behavior allows the engine "
"to figure out the right operation to use if the texture is discardable, which "
"can result in increased performance. See [RDTextureFormat] or [method "
"texture_set_discardable].\n"
"The [param breadcrumb] parameter can be an arbitrary 32-bit integer that is "
"useful to diagnose GPU crashes. If Godot is built in dev or debug mode; when "
"the GPU crashes Godot will dump all shaders that were being executed at the "
"time of the crash and the breadcrumb is useful to diagnose what passes did "
"those shaders belong to.\n"
"It does not affect rendering behavior and can be set to 0. It is recommended "
"to use [enum BreadcrumbMarker] enumerations for consistency but it's not "
"required. It is also possible to use bitwise operations to add extra data. "
"e.g.\n"
"[codeblock]\n"
"rd.draw_list_begin(fb[i], RenderingDevice.CLEAR_COLOR_ALL, clear_colors, "
"true, 1.0f, true, 0, Rect2(), RenderingDevice.OPAQUE_PASS | 5)\n"
"[/codeblock]"
msgstr ""
"Начинает список команд растрового рисования, созданных с помощью методов "
"[code]draw_*[/code]. Возвращаемое значение должно быть передано другим "
"функциям [code]draw_list_*[/code].\n"
"Нельзя одновременно создавать несколько списков рисования; сначала необходимо "
"завершить предыдущий список рисования с помощью [method draw_list_end].\n"
"Простая операция рисования может выглядеть так (код не является полным "
"примером):\n"
"[codeblock]\n"
"var rd = RenderingDevice.new()\n"
"var clear_colors = PackedColorArray([Color(0, 0, 0, 0), Color(0, 0, 0, 0), "
"Color(0, 0, 0, 0)])\n"
"var draw_list = rd.draw_list_begin(framebuffers[i], "
"RenderingDevice.CLEAR_COLOR_ALL, clear_colors, true, 1.0f, true, 0, Rect2(), "
"RenderingDevice.OPAQUE_PASS)\n"
"\n"
"# Рисовать непрозрачно.\n"
"rd.draw_list_bind_render_pipeline(draw_list, raster_pipeline)\n"
"rd.draw_list_bind_uniform_set(draw_list, raster_base_uniform, 0)\n"
"rd.draw_list_set_push_constant(draw_list, raster_push_constant, "
"raster_push_constant.size())\n"
"rd.draw_list_draw(draw_list, false, 1, slice_triangle_count[i] * 3)\n"
"# Нарисовать проволоку.\n"
"rd.draw_list_bind_render_pipeline(draw_list, raster_pipeline_wire)\n"
"rd.draw_list_bind_uniform_set(draw_list, raster_base_uniform, 0)\n"
"rd.draw_list_set_push_constant(draw_list, raster_push_constant, "
"raster_push_constant.size())\n"
"rd.draw_list_draw(draw_list, false, 1, slice_triangle_count[i] * 3)\n"
"\n"
"rd.draw_list_end()\n"
"[/codeblock]\n"
"[param draw_flags] указывает, следует ли очищать или игнорировать "
"прикрепленные текстуры буфера кадра. Для каждого отдельного прикрепления "
"можно использовать только один из двух флагов. Игнорирование прикрепления "
"означает, что любое содержимое, существовавшее до списка отрисовки, будет "
"полностью отброшено, что снижает пропускную способность памяти, используемую "
"проходом рендеринга, но приводит к мусорным результатам, если пиксели не "
"заменяются. Поведение по умолчанию позволяет движку определять правильную "
"операцию для использования, если текстура отбрасывается, что может привести к "
"повышению производительности. См. [RDTextureFormat] или [method "
"texture_set_discardable].\n"
"Параметр [param breadcrumb] может быть произвольным 32-битным целым числом, "
"полезным для диагностики сбоев GPU. Если Godot собран в режиме разработки или "
"отладки; при сбое GPU Godot выведет дамп всех шейдеров, которые выполнялись "
"во время сбоя, а breadcrumb полезен для диагностики того, к каким проходам "
"относятся эти шейдеры.\n"
"Он не влияет на поведение рендеринга и может быть установлен на 0. "
"Рекомендуется использовать перечисления [enum BreadcrumbMarker] для "
"согласованности, но это не обязательно. Также возможно использовать побитовые "
"операции для добавления дополнительных данных. Пример:\n"
"[codeblock]\n"
"rd.draw_list_begin(fb[i], RenderingDevice.CLEAR_COLOR_ALL, clear_colors, "
"true, 1.0f, true, 0, Rect2(), RenderingDevice.OPAQUE_PASS | 5)\n"
"[/codeblock]"

msgid ""
"High-level variant of [method draw_list_begin], with the parameters "
"automatically being adjusted for drawing onto the window specified by the "
"[param screen] ID.\n"
"[b]Note:[/b] Cannot be used with local RenderingDevices, as these don't have "
"a screen. If called on a local RenderingDevice, [method "
"draw_list_begin_for_screen] returns [constant INVALID_ID]."
msgstr ""
"Высокоуровневый вариант [method draw_list_begin], с параметрами, "
"автоматически настраиваемыми для рисования в окне, указанном идентификатором "
"[param screen].\n"
"[b]Примечание:[/b] Не может использоваться с локальными RenderingDevices, так "
"как у них нет экрана. При вызове на локальном RenderingDevice [method "
"draw_list_begin_for_screen] возвращает [constant INVALID_ID]."

msgid "Split draw lists are used automatically by RenderingDevice."
msgstr ""
"Разделенные списки отрисовки автоматически используются RenderingDevice."

msgid "This method does nothing and always returns an empty [PackedInt64Array]."
msgstr ""
"Этот метод ничего не делает и всегда возвращает пустой [PackedInt64Array]."

msgid "Binds [param index_array] to the specified [param draw_list]."
msgstr "Связывает [param index_array] с указанным [param draw_list]."

msgid "Binds [param render_pipeline] to the specified [param draw_list]."
msgstr "Связывает [param render_pipeline] с указанным [param draw_list]."

msgid ""
"Binds [param uniform_set] to the specified [param draw_list]. A [param "
"set_index] must also be specified, which is an identifier starting from "
"[code]0[/code] that must match the one expected by the draw list."
msgstr ""
"Связывает [param uniform_set] с указанным [param draw_list]. Также необходимо "
"указать [param set_index], который представляет собой идентификатор, "
"начинающийся с [code]0[/code], который должен соответствовать ожидаемому "
"списку отрисовки."

msgid "Binds [param vertex_array] to the specified [param draw_list]."
msgstr "Связывает [param vertex_array] с указанным [param draw_list]."

msgid ""
"Removes and disables the scissor rectangle for the specified [param "
"draw_list]. See also [method draw_list_enable_scissor]."
msgstr ""
"Удаляет и отключает прямоугольник ножниц для указанного [param draw_list]. "
"См. также [method draw_list_enable_scissor]."

msgid ""
"Submits [param draw_list] for rendering on the GPU. This is the raster "
"equivalent to [method compute_list_dispatch]."
msgstr ""
"Отправляет [param draw_list] для рендеринга на GPU. Это растровый эквивалент "
"[method compute_list_dispatch]."

msgid ""
"Submits [param draw_list] for rendering on the GPU with the given parameters "
"stored in the [param buffer] at [param offset]. Parameters being integers: "
"vertex count, instance count, first vertex, first instance. And when using "
"indices: index count, instance count, first index, vertex offset, first "
"instance. Buffer must have been created with [constant "
"STORAGE_BUFFER_USAGE_DISPATCH_INDIRECT] flag."
msgstr ""
"Отправляет [param draw_list] для рендеринга на GPU с заданными параметрами, "
"сохраненными в [param buffer] по адресу [param offset]. Параметры являются "
"целыми числами: количество вершин, количество экземпляров, первая вершина, "
"первый экземпляр. А при использовании индексов: количество индексов, "
"количество экземпляров, первый индекс, смещение вершин, первый экземпляр. "
"Буфер должен быть создан с флагом [constant "
"STORAGE_BUFFER_USAGE_DISPATCH_INDIRECT]."

msgid ""
"Creates a scissor rectangle and enables it for the specified [param "
"draw_list]. Scissor rectangles are used for clipping by discarding fragments "
"that fall outside a specified rectangular portion of the screen. See also "
"[method draw_list_disable_scissor].\n"
"[b]Note:[/b] The specified [param rect] is automatically intersected with the "
"screen's dimensions, which means it cannot exceed the screen's dimensions."
msgstr ""
"Создает прямоугольник-ножницы и включает его для указанного [param "
"draw_list]. Прямоугольники-ножницы используются для обрезки путем "
"отбрасывания фрагментов, которые выходят за пределы указанной прямоугольной "
"части экрана. См. также [method draw_list_disable_scissor].\n"
"[b]Примечание:[/b] Указанный [param rect] автоматически пересекается с "
"размерами экрана, что означает, что он не может превышать размеры экрана."

msgid ""
"Finishes a list of raster drawing commands created with the [code]draw_*[/"
"code] methods."
msgstr ""
"Завершает список команд растрового рисования, созданных с помощью методов "
"[code]draw_*[/code]."

msgid ""
"Sets blend constants for the specified [param draw_list] to [param color]. "
"Blend constants are used only if the graphics pipeline is created with "
"[constant DYNAMIC_STATE_BLEND_CONSTANTS] flag set."
msgstr ""
"Устанавливает константы смешивания для указанного [param draw_list] в [param "
"color]. Константы смешивания используются только в том случае, если "
"графический конвейер создан с установленным флагом [constant "
"DYNAMIC_STATE_BLEND_CONSTANTS]."

msgid ""
"Sets the push constant data to [param buffer] for the specified [param "
"draw_list]. The shader determines how this binary data is used. The buffer's "
"size in bytes must also be specified in [param size_bytes] (this can be "
"obtained by calling the [method PackedByteArray.size] method on the passed "
"[param buffer])."
msgstr ""
"Устанавливает данные константы push в [param buffer] для указанного [param "
"draw_list]. Шейдер определяет, как используются эти двоичные данные. Размер "
"буфера в байтах также должен быть указан в [param size_bytes] (его можно "
"получить, вызвав метод [method PackedByteArray.size] для переданного [param "
"buffer])."

msgid "Switches to the next draw pass."
msgstr "Переключается на следующий проход розыгрыша."

msgid ""
"Creates a new framebuffer. It can be accessed with the RID that is returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый буфер кадра. К нему можно получить доступ с помощью "
"возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Creates a new empty framebuffer. It can be accessed with the RID that is "
"returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый пустой буфер кадра. К нему можно получить доступ с помощью "
"возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Creates a new multipass framebuffer. It can be accessed with the RID that is "
"returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый многопроходный буфер кадров. К нему можно получить доступ с "
"помощью возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Creates a new framebuffer format with the specified [param attachments] and "
"[param view_count]. Returns the new framebuffer's unique framebuffer format "
"ID.\n"
"If [param view_count] is greater than or equal to [code]2[/code], enables "
"multiview which is used for VR rendering. This requires support for the "
"Vulkan multiview extension."
msgstr ""
"Создает новый формат буфера кадра с указанными [param attacheds] и [param "
"view_count]. Возвращает уникальный идентификатор формата буфера кадра нового "
"буфера кадра.\n"
"Если [param view_count] больше или равно [code]2[/code], включает multiview, "
"который используется для рендеринга VR. Для этого требуется поддержка "
"расширения Vulkan multiview."

msgid ""
"Creates a new empty framebuffer format with the specified number of [param "
"samples] and returns its ID."
msgstr ""
"Создает новый пустой формат буфера кадра с указанным числом [param samples] и "
"возвращает его идентификатор."

msgid ""
"Creates a multipass framebuffer format with the specified [param "
"attachments], [param passes] and [param view_count] and returns its ID. If "
"[param view_count] is greater than or equal to [code]2[/code], enables "
"multiview which is used for VR rendering. This requires support for the "
"Vulkan multiview extension."
msgstr ""
"Создает многопроходный формат буфера кадров с указанными [param attacheds], "
"[param pass] и [param view_count] и возвращает его идентификатор. Если [param "
"view_count] больше или равно [code]2[/code], включает multiview, который "
"используется для рендеринга VR. Для этого требуется поддержка расширения "
"Vulkan multiview."

msgid ""
"Returns the number of texture samples used for the given framebuffer [param "
"format] ID (returned by [method framebuffer_get_format])."
msgstr ""
"Возвращает количество образцов текстуры, используемых для заданного "
"идентификатора буфера кадра [param format] (возвращается [method "
"framebuffer_get_format])."

msgid ""
"Returns the format ID of the framebuffer specified by the [param framebuffer] "
"RID. This ID is guaranteed to be unique for the same formats and does not "
"need to be freed."
msgstr ""
"Возвращает идентификатор формата буфера кадра, заданного RID [param "
"framebuffer]. Этот идентификатор гарантированно уникален для тех же форматов "
"и не требует освобождения."

msgid ""
"Returns [code]true[/code] if the framebuffer specified by the [param "
"framebuffer] RID is valid, [code]false[/code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если буфер кадра, указанный в RID [param "
"framebuffer], действителен, в противном случае — [code]false[/code]."

msgid ""
"Tries to free an object in the RenderingDevice. To avoid memory leaks, this "
"should be called after using an object as memory management does not occur "
"automatically when using RenderingDevice directly."
msgstr ""
"Пытается освободить объект в RenderingDevice. Чтобы избежать утечек памяти, "
"это следует вызывать после использования объекта, поскольку управление "
"памятью не происходит автоматически при прямом использовании RenderingDevice."

msgid ""
"Returns the timestamp in CPU time for the rendering step specified by [param "
"index] (in microseconds since the engine started). See also [method "
"get_captured_timestamp_gpu_time] and [method capture_timestamp]."
msgstr ""
"Возвращает временную метку в процессорном времени для шага рендеринга, "
"указанного [param index] (в микросекундах с момента запуска движка). См. "
"также [method get_captured_timestamp_gpu_time] и [method capture_timestamp]."

msgid ""
"Returns the timestamp in GPU time for the rendering step specified by [param "
"index] (in microseconds since the engine started). See also [method "
"get_captured_timestamp_cpu_time] and [method capture_timestamp]."
msgstr ""
"Возвращает временную метку в графическом процессоре для шага рендеринга, "
"указанного [param index] (в микросекундах с момента запуска движка). См. "
"также [method get_captured_timestamp_cpu_time] и [method capture_timestamp]."

msgid ""
"Returns the timestamp's name for the rendering step specified by [param "
"index]. See also [method capture_timestamp]."
msgstr ""
"Возвращает имя временной метки для шага рендеринга, указанного [param index]. "
"См. также [method capture_timestamp]."

msgid ""
"Returns the total number of timestamps (rendering steps) available for "
"profiling."
msgstr ""
"Возвращает общее количество временных меток (шагов рендеринга), доступных для "
"профилирования."

msgid ""
"Returns the index of the last frame rendered that has rendering timestamps "
"available for querying."
msgstr ""
"Возвращает индекс последнего отрисованного кадра, временные метки которого "
"доступны для запроса."

msgid ""
"Returns how many allocations the GPU has performed for internal driver "
"structures.\n"
"This is only used by Vulkan in debug builds and can return 0 when this "
"information is not tracked or unknown."
msgstr ""
"Возвращает количество выделений, выполненных графическим процессором для "
"внутренних структур драйвера.\n"
"Используется Vulkan только в отладочных сборках и может возвращать 0, если "
"эта информация не отслеживается или неизвестна."

msgid ""
"Same as [method get_device_allocation_count] but filtered for a given object "
"type.\n"
"The type argument must be in range [code][0; get_tracked_object_type_count - "
"1][/code]. If [method get_tracked_object_type_count] is 0, then type argument "
"is ignored and always returns 0.\n"
"This is only used by Vulkan in debug builds and can return 0 when this "
"information is not tracked or unknown."
msgstr ""
"То же, что и [method get_device_allocation_count], но отфильтровано для "
"заданного типа объекта.\n"
"Аргумент типа должен быть в диапазоне [code][0; get_tracked_object_type_count "
"- 1][/code]. Если [method get_tracked_object_type_count] равен 0, то аргумент "
"типа игнорируется и всегда возвращает 0.\n"
"Это используется только Vulkan в отладочных сборках и может возвращать 0, "
"когда эта информация не отслеживается или неизвестна."

msgid ""
"Same as [method get_device_total_memory] but filtered for a given object "
"type.\n"
"The type argument must be in range [code][0; get_tracked_object_type_count - "
"1][/code]. If [method get_tracked_object_type_count] is 0, then type argument "
"is ignored and always returns 0.\n"
"This is only used by Vulkan in debug builds and can return 0 when this "
"information is not tracked or unknown."
msgstr ""
"То же, что и [method get_device_total_memory], но отфильтровано для заданного "
"типа объекта.\n"
"Аргумент типа должен быть в диапазоне [code][0; get_tracked_object_type_count "
"- 1][/code]. Если [method get_tracked_object_type_count] равен 0, то аргумент "
"типа игнорируется и всегда возвращает 0.\n"
"Это используется только Vulkan в отладочных сборках и может возвращать 0, "
"когда эта информация не отслеживается или неизвестна."

msgid ""
"Returns the name of the video adapter (e.g. \"GeForce GTX 1080/PCIe/SSE2\"). "
"Equivalent to [method RenderingServer.get_video_adapter_name]. See also "
"[method get_device_vendor_name]."
msgstr ""
"Возвращает имя видеоадаптера (например, \"GeForce GTX 1080/PCIe/SSE2\"). "
"Эквивалентно [method RenderingServer.get_video_adapter_name]. См. также "
"[method get_device_vendor_name]."

msgid ""
"Returns the universally unique identifier for the pipeline cache. This is "
"used to cache shader files on disk, which avoids shader recompilations on "
"subsequent engine runs. This UUID varies depending on the graphics card "
"model, but also the driver version. Therefore, updating graphics drivers will "
"invalidate the shader cache."
msgstr ""
"Возвращает универсальный уникальный идентификатор для кэша конвейера. Он "
"используется для кэширования файлов шейдеров на диске, что позволяет избежать "
"перекомпиляции шейдеров при последующих запусках движка. Этот UUID зависит от "
"модели видеокарты, а также от версии драйвера. Поэтому обновление графических "
"драйверов сделает кэш шейдеров недействительным."

msgid ""
"Returns how much bytes the GPU is using.\n"
"This is only used by Vulkan in debug builds and can return 0 when this "
"information is not tracked or unknown."
msgstr ""
"Возвращает, сколько байт использует графический процессор.\n"
"Используется только Vulkan в отладочных сборках и может возвращать 0, если "
"эта информация не отслеживается или неизвестна."

msgid ""
"Returns the vendor of the video adapter (e.g. \"NVIDIA Corporation\"). "
"Equivalent to [method RenderingServer.get_video_adapter_vendor]. See also "
"[method get_device_name]."
msgstr ""
"Возвращает поставщика видеоадаптера (например, \"NVIDIA Corporation\"). "
"Эквивалентно [method RenderingServer.get_video_adapter_vendor]. См. также "
"[method get_device_name]."

msgid ""
"Returns how many allocations the GPU driver has performed for internal driver "
"structures.\n"
"This is only used by Vulkan in debug builds and can return 0 when this "
"information is not tracked or unknown."
msgstr ""
"Возвращает количество выделений, выполненных драйвером GPU для внутренних "
"структур драйвера.\n"
"Используется Vulkan только в отладочных сборках и может возвращать 0, если "
"эта информация не отслеживается или неизвестна."

msgid ""
"Same as [method get_driver_allocation_count] but filtered for a given object "
"type.\n"
"The type argument must be in range [code][0; get_tracked_object_type_count - "
"1][/code]. If [method get_tracked_object_type_count] is 0, then type argument "
"is ignored and always returns 0.\n"
"This is only used by Vulkan in debug builds and can return 0 when this "
"information is not tracked or unknown."
msgstr ""
"То же, что и [method get_driver_allocation_count], но отфильтровано для "
"заданного типа объекта.\n"
"Аргумент типа должен быть в диапазоне [code][0; get_tracked_object_type_count "
"- 1][/code]. Если [method get_tracked_object_type_count] равен 0, то аргумент "
"типа игнорируется и всегда возвращает 0.\n"
"Это используется только Vulkan в отладочных сборках и может возвращать 0, "
"когда эта информация не отслеживается или неизвестна."

msgid ""
"Returns string report in CSV format using the following methods:\n"
"- [method get_tracked_object_name]\n"
"- [method get_tracked_object_type_count]\n"
"- [method get_driver_total_memory]\n"
"- [method get_driver_allocation_count]\n"
"- [method get_driver_memory_by_object_type]\n"
"- [method get_driver_allocs_by_object_type]\n"
"- [method get_device_total_memory]\n"
"- [method get_device_allocation_count]\n"
"- [method get_device_memory_by_object_type]\n"
"- [method get_device_allocs_by_object_type]\n"
"This is only used by Vulkan in debug builds. Godot must also be started with "
"the [code]--extra-gpu-memory-tracking[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]."
msgstr ""
"Возвращает строковый отчет в формате CSV, используя следующие методы:\n"
"- [method get_tracked_object_name]\n"
"- [method get_tracked_object_type_count]\n"
"- [method get_driver_total_memory]\n"
"- [method get_driver_allocation_count]\n"
"- [method get_driver_memory_by_object_type]\n"
"- [method get_driver_allocs_by_object_type]\n"
"- [method get_device_total_memory]\n"
"- [method get_device_allocation_count]\n"
"- [method get_device_memory_by_object_type]\n"
"- [method get_device_allocs_by_object_type]\n"
"Это используется только Vulkan в отладочных сборках. Godot также должен быть "
"запущен с [code]--extra-gpu-memory-tracking[/code] [url=$DOCS_URL/tutorials/"
"editor/command_line_tutorial.html]command line argument[/url]."

msgid ""
"Same as [method get_driver_total_memory] but filtered for a given object "
"type.\n"
"The type argument must be in range [code][0; get_tracked_object_type_count - "
"1][/code]. If [method get_tracked_object_type_count] is 0, then type argument "
"is ignored and always returns 0.\n"
"This is only used by Vulkan in debug builds and can return 0 when this "
"information is not tracked or unknown."
msgstr ""
"То же, что и [method get_driver_total_memory], но отфильтровано для заданного "
"типа объекта.\n"
"Аргумент типа должен быть в диапазоне [code][0; get_tracked_object_type_count "
"- 1][/code]. Если [method get_tracked_object_type_count] равен 0, то аргумент "
"типа игнорируется и всегда возвращает 0.\n"
"Это используется только Vulkan в отладочных сборках и может возвращать 0, "
"когда эта информация не отслеживается или неизвестна."

msgid ""
"Returns the unique identifier of the driver [param resource] for the "
"specified [param rid]. Some driver resource types ignore the specified [param "
"rid]. [param index] is always ignored but must be specified anyway."
msgstr ""
"Возвращает уникальный ID идентификатор драйвера [param resource] для "
"указанного [param rid]. Некоторые типы ресурсов драйвера игнорируют указанный "
"[param rid]. [param index] всегда игнорируется, но должен быть указан в любом "
"случае."

msgid ""
"Returns how much bytes the GPU driver is using for internal driver "
"structures.\n"
"This is only used by Vulkan in debug builds and can return 0 when this "
"information is not tracked or unknown."
msgstr ""
"Возвращает, сколько байтов драйвер GPU использует для внутренних структур "
"драйвера.\n"
"Используется только Vulkan в отладочных сборках и может возвращать 0, если "
"эта информация не отслеживается или неизвестна."

msgid ""
"Returns the frame count kept by the graphics API. Higher values result in "
"higher input lag, but with more consistent throughput. For the main "
"[RenderingDevice], frames are cycled (usually 3 with triple-buffered V-Sync "
"enabled). However, local [RenderingDevice]s only have 1 frame."
msgstr ""
"Возвращает количество кадров, хранящееся в графическом API. Более высокие "
"значения приводят к более высокой задержке ввода, но с более стабильной "
"пропускной способностью. Для основного [RenderingDevice] кадры циклически "
"повторяются (обычно 3 с включенной тройной буферизацией V-Sync). Однако "
"локальные [RenderingDevice] имеют только 1 кадр."

msgid ""
"Returns the memory usage in bytes corresponding to the given [param type]. "
"When using Vulkan, these statistics are calculated by [url=https://github.com/"
"GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator]Vulkan Memory Allocator[/url]."
msgstr ""
"Возвращает использование памяти в байтах, соответствующих указанному [param "
"type]. При использовании Vulkan эта статистика рассчитывается с помощью "
"[url=https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator]Vulkan "
"Memory Allocator[/url]."

msgid ""
"Returns a string with a performance report from the past frame. Updates every "
"frame."
msgstr ""
"Возвращает строку с отчетом о производительности из прошлого кадра. Обновляет "
"каждый кадр."

msgid ""
"Returns the name of the type of object for the given [param type_index]. This "
"value must be in range [code][0; get_tracked_object_type_count - 1][/code]. "
"If [method get_tracked_object_type_count] is 0, then type argument is ignored "
"and always returns the same string.\n"
"The return value is important because it gives meaning to the types passed to "
"[method get_driver_memory_by_object_type], [method "
"get_driver_allocs_by_object_type], [method get_device_memory_by_object_type], "
"and [method get_device_allocs_by_object_type]. Examples of strings it can "
"return (not exhaustive):\n"
"- DEVICE_MEMORY\n"
"- PIPELINE_CACHE\n"
"- SWAPCHAIN_KHR\n"
"- COMMAND_POOL\n"
"Thus if e.g. [code]get_tracked_object_name(5)[/code] returns "
"\"COMMAND_POOL\", then [code]get_device_memory_by_object_type(5)[/code] "
"returns the bytes used by the GPU for command pools.\n"
"This is only used by Vulkan in debug builds. Godot must also be started with "
"the [code]--extra-gpu-memory-tracking[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]."
msgstr ""
"Возвращает имя типа объекта для заданного [param type_index]. Это значение "
"должно быть в диапазоне [code][0; get_tracked_object_type_count - 1][/code]. "
"Если [method get_tracked_object_type_count] равен 0, то аргумент type "
"игнорируется и всегда возвращает одну и ту же строку.\n"
"Возвращаемое значение важно, поскольку оно придает смысл типам, переданным в "
"[method get_driver_memory_by_object_type], [method "
"get_driver_allocs_by_object_type], [method get_device_memory_by_object_type] "
"и [method get_device_allocs_by_object_type]. Примеры строк, которые он может "
"возвращать (не исчерпывающие):\n"
"- DEVICE_MEMORY\n"
"- PIPELINE_CACHE\n"
"- SWAPCHAIN_KHR\n"
"- COMMAND_POOL\n"
"Таким образом, если, например, [code]get_tracked_object_name(5)[/code] "
"возвращает \"COMMAND_POOL\", затем [code]get_device_memory_by_object_type(5)[/"
"code] возвращает байты, используемые GPU для пулов команд. \n"
"Это используется только Vulkan в отладочных сборках. Godot также должен быть "
"запущен с [code]--extra-gpu-memory-tracking[/code] [url=$DOCS_URL/tutorials/"
"editor/command_line_tutorial.html]аргументом командной строки[/url]."

msgid ""
"Returns how many types of trackable objects there are.\n"
"This is only used by Vulkan in debug builds. Godot must also be started with "
"the [code]--extra-gpu-memory-tracking[/code] [url=$DOCS_URL/tutorials/editor/"
"command_line_tutorial.html]command line argument[/url]."
msgstr ""
"Возвращает количество типов отслеживаемых объектов.\n"
"Используется только Vulkan в отладочных сборках. Godot также должен быть "
"запущен с [code]--extra-gpu-memory-tracking[/code] [url=$DOCS_URL/tutorials/"
"editor/command_line_tutorial.html]аргументом командной строки[/url]."

msgid ""
"Returns [code]true[/code] if the [param feature] is supported by the GPU."
msgstr ""
"Возвращает [code]true[/code], если [param feature] поддерживается графическим "
"процессором."

msgid ""
"Creates a new index array. It can be accessed with the RID that is returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый массив индексов. К нему можно получить доступ с помощью "
"возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Creates a new index buffer. It can be accessed with the RID that is "
"returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый буфер индекса. К нему можно получить доступ с помощью "
"возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Returns the value of the specified [param limit]. This limit varies depending "
"on the current graphics hardware (and sometimes the driver version). If the "
"given limit is exceeded, rendering errors will occur.\n"
"Limits for various graphics hardware can be found in the [url=https://"
"vulkan.gpuinfo.org/]Vulkan Hardware Database[/url]."
msgstr ""
"Возвращает значение указанного [param limit]. Этот предел зависит от текущего "
"графического оборудования (а иногда и от версии драйвера). Если указанный "
"предел будет превышен, возникнут ошибки рендеринга.\n"
"Ограничения для различного графического оборудования можно найти в "
"[url=https://vulkan.gpuinfo.org/]База данных оборудования Vulkan[/url]."

msgid ""
"Creates a new render pipeline. It can be accessed with the RID that is "
"returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый конвейер рендеринга. К нему можно получить доступ с помощью "
"возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Returns [code]true[/code] if the render pipeline specified by the [param "
"render_pipeline] RID is valid, [code]false[/code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если конвейер рендеринга, указанный в [param "
"render_pipeline] RID, действителен, в противном случае [code]false[/code]."

msgid ""
"Creates a new sampler. It can be accessed with the RID that is returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый сэмплер. К нему можно получить доступ с помощью возвращаемого "
"RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Returns [code]true[/code] if implementation supports using a texture of "
"[param format] with the given [param sampler_filter]."
msgstr ""
"Возвращает [code]true[/code], если реализация поддерживает использование "
"текстуры [param format] с заданным [param sampler_filter]."

msgid ""
"Returns the framebuffer format of the given screen.\n"
"[b]Note:[/b] Only the main [RenderingDevice] returned by [method "
"RenderingServer.get_rendering_device] has a format. If called on a local "
"[RenderingDevice], this method prints an error and returns [constant "
"INVALID_ID]."
msgstr ""
"Возвращает формат буфера кадра заданного экрана.\n"
"[b]Примечание:[/b] Только основной [RenderingDevice], возвращаемый [method "
"RenderingServer.get_rendering_device], имеет формат. При вызове на локальном "
"[RenderingDevice] этот метод выводит ошибку и возвращает [constant "
"INVALID_ID]."

msgid ""
"Returns the window height matching the graphics API context for the given "
"window ID (in pixels). Despite the parameter being named [param screen], this "
"returns the [i]window[/i] size. See also [method screen_get_width].\n"
"[b]Note:[/b] Only the main [RenderingDevice] returned by [method "
"RenderingServer.get_rendering_device] has a height. If called on a local "
"[RenderingDevice], this method prints an error and returns [constant "
"INVALID_ID]."
msgstr ""
"Возвращает высоту окна, соответствующую графическому API-контексту для "
"заданного идентификатора окна (в пикселях). Несмотря на то, что параметр "
"назван [param screen], он возвращает размер [i]window[/i]. См. также [method "
"screen_get_width].\n"
"[b]Примечание:[/b] Только основной [RenderingDevice], возвращаемый [method "
"RenderingServer.get_rendering_device], имеет высоту. При вызове на локальном "
"[RenderingDevice] этот метод выводит ошибку и возвращает [constant "
"INVALID_ID]."

msgid ""
"Returns the window width matching the graphics API context for the given "
"window ID (in pixels). Despite the parameter being named [param screen], this "
"returns the [i]window[/i] size. See also [method screen_get_height].\n"
"[b]Note:[/b] Only the main [RenderingDevice] returned by [method "
"RenderingServer.get_rendering_device] has a width. If called on a local "
"[RenderingDevice], this method prints an error and returns [constant "
"INVALID_ID]."
msgstr ""
"Возвращает ширину окна, соответствующую графическому API-контексту для "
"заданного идентификатора окна (в пикселях). Несмотря на то, что параметр "
"назван [param screen], он возвращает размер [i]window[/i]. См. также [method "
"screen_get_height].\n"
"[b]Примечание:[/b] Только основной [RenderingDevice], возвращаемый [method "
"RenderingServer.get_rendering_device], имеет ширину. При вызове на локальном "
"[RenderingDevice] этот метод выводит ошибку и возвращает [constant "
"INVALID_ID]."

msgid ""
"Sets the resource name for [param id] to [param name]. This is used for "
"debugging with third-party tools such as [url=https://"
"renderdoc.org/]RenderDoc[/url].\n"
"The following types of resources can be named: texture, sampler, vertex "
"buffer, index buffer, uniform buffer, texture buffer, storage buffer, uniform "
"set buffer, shader, render pipeline and compute pipeline. Framebuffers cannot "
"be named. Attempting to name an incompatible resource type will print an "
"error.\n"
"[b]Note:[/b] Resource names are only set when the engine runs in verbose mode "
"([method OS.is_stdout_verbose] = [code]true[/code]), or when using an engine "
"build compiled with the [code]dev_mode=yes[/code] SCons option. The graphics "
"driver must also support the [code]VK_EXT_DEBUG_UTILS_EXTENSION_NAME[/code] "
"Vulkan extension for named resources to work."
msgstr ""
"Устанавливает имя ресурса для [param id] на [param name]. Это используется "
"для отладки с помощью сторонних инструментов, таких как [url=https://"
"renderdoc.org/]RenderDoc[/url].\n"
"Можно назвать следующие типы ресурсов: текстура, сэмплер, буфер вершин, буфер "
"индексов, униформный буфер, буфер текстур, буфер хранения, униформный буфер "
"набора, шейдер, конвейер рендеринга и вычислительный конвейер. Кадровые "
"буферы не могут быть названы. Попытка назвать несовместимый тип ресурса "
"приведет к ошибке.\n"
"[b]Примечание:[/b] Имена ресурсов задаются только тогда, когда движок "
"работает в режиме verbose ([method OS.is_stdout_verbose] = [code]true[/code]) "
"или при использовании сборки движка, скомпилированной с опцией "
"[code]dev_mode=yes[/code] SCons. Для работы именованных ресурсов графический "
"драйвер также должен поддерживать расширение Vulkan "
"[code]VK_EXT_DEBUG_UTILS_EXTENSION_NAME[/code]."

msgid ""
"Compiles a binary shader from [param spirv_data] and returns the compiled "
"binary data as a [PackedByteArray]. This compiled shader is specific to the "
"GPU model and driver version used; it will not work on different GPU models "
"or even different driver versions. See also [method "
"shader_compile_spirv_from_source].\n"
"[param name] is an optional human-readable name that can be given to the "
"compiled shader for organizational purposes."
msgstr ""
"Компилирует двоичный шейдер из [param spirv_data] и возвращает "
"скомпилированные двоичные данные как [PackedByteArray]. Этот скомпилированный "
"шейдер специфичен для используемой модели GPU и версии драйвера; он не будет "
"работать на других моделях GPU или даже на других версиях драйверов. См. "
"также [method shader_compile_spirv_from_source].\n"
"[param name] — необязательное понятное человеку имя, которое можно дать "
"скомпилированному шейдеру в организационных целях."

msgid ""
"Compiles a SPIR-V from the shader source code in [param shader_source] and "
"returns the SPIR-V as an [RDShaderSPIRV]. This intermediate language shader "
"is portable across different GPU models and driver versions, but cannot be "
"run directly by GPUs until compiled into a binary shader using [method "
"shader_compile_binary_from_spirv].\n"
"If [param allow_cache] is [code]true[/code], make use of the shader cache "
"generated by Godot. This avoids a potentially lengthy shader compilation step "
"if the shader is already in cache. If [param allow_cache] is [code]false[/"
"code], Godot's shader cache is ignored and the shader will always be "
"recompiled."
msgstr ""
"Компилирует SPIR-V из исходного кода шейдера в [param shader_source] и "
"возвращает SPIR-V как [RDShaderSPIRV]. Этот шейдер на промежуточном языке "
"переносим между различными моделями видеокарт и версиями драйверов, но не "
"может быть запущен непосредственно видеокартами, пока не будет скомпилирован "
"в двоичный шейдер с помощью [method shader_compile_binary_from_spirv].\n"
"Если [param allow_cache] имеет значение [code]true[/code], используется кэш "
"шейдера, сгенерированный Godot. Это позволяет избежать потенциально "
"длительного этапа компиляции шейдера, если шейдер уже находится в кэше. Если "
"[param allow_cache] имеет значение [code]false[/code], кэш шейдера Godot "
"игнорируется, и шейдер всегда будет перекомпилироваться."

msgid ""
"Creates a new shader instance from a binary compiled shader. It can be "
"accessed with the RID that is returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method. See also [method "
"shader_compile_binary_from_spirv] and [method shader_create_from_spirv]."
msgstr ""
"Создает новый экземпляр шейдера из скомпилированного двоичного шейдера. К "
"нему можно получить доступ с помощью возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice. См. также [method "
"shader_compile_binary_from_spirv] и [method shader_create_from_spirv]."

msgid ""
"Creates a new shader instance from SPIR-V intermediate code. It can be "
"accessed with the RID that is returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method. See also [method "
"shader_compile_spirv_from_source] and [method shader_create_from_bytecode]."
msgstr ""
"Создает новый экземпляр шейдера из промежуточного кода SPIR-V. К нему можно "
"получить доступ с помощью возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice. См. также [method "
"shader_compile_spirv_from_source] и [method shader_create_from_bytecode]."

msgid ""
"Create a placeholder RID by allocating an RID without initializing it for use "
"in [method shader_create_from_bytecode]. This allows you to create an RID for "
"a shader and pass it around, but defer compiling the shader to a later time."
msgstr ""
"Создайте RID-заполнитель, выделив RID без его инициализации для использования "
"в [method shader_create_from_bytecode]. Это позволяет вам создать RID для "
"шейдера и передать его, но отложить компиляцию шейдера на более позднее время."

msgid ""
"Returns the internal vertex input mask. Internally, the vertex input mask is "
"an unsigned integer consisting of the locations (specified in GLSL via. "
"[code]layout(location = ...)[/code]) of the input variables (specified in "
"GLSL by the [code]in[/code] keyword)."
msgstr ""
"Возвращает внутреннюю входную маску вершин. Внутри входная маска вершин "
"представляет собой беззнаковое целое число, состоящее из местоположений "
"(указанных в GLSL через [code]layout(location = ...)[/code]) входных "
"переменных (указанных в GLSL ключевым словом [code]in[/code])."

msgid ""
"Creates a [url=https://vkguide.dev/docs/chapter-4/storage_buffers/]storage "
"buffer[/url] with the specified [param data] and [param usage]. It can be "
"accessed with the RID that is returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает [url=https://vkguide.dev/docs/chapter-4/storage_buffers/]буфер "
"хранения[/url] с указанными [param data] и [param usage]. К нему можно "
"получить доступ с помощью возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Pushes the frame setup and draw command buffers then marks the local device "
"as currently processing (which allows calling [method sync]).\n"
"[b]Note:[/b] Only available in local RenderingDevices."
msgstr ""
"Выталкивает буферы команд настройки кадра и отрисовки, затем отмечает "
"локальное устройство как обрабатывающее в данный момент (что позволяет "
"вызывать [method sync]).\n"
"[b]Примечание:[/b] Доступно только в локальных RenderingDevices."

msgid ""
"Forces a synchronization between the CPU and GPU, which may be required in "
"certain cases. Only call this when needed, as CPU-GPU synchronization has a "
"performance cost.\n"
"[b]Note:[/b] Only available in local RenderingDevices.\n"
"[b]Note:[/b] [method sync] can only be called after a [method submit]."
msgstr ""
"Запускает синхронизацию между ЦП и ГП, что может потребоваться в определенных "
"случаях. Вызывайте это только при необходимости, так как синхронизация ЦП-ГП "
"имеет стоимость производительности.\n"
"[b]Примечание:[/b] Доступно только в локальных RenderingDevices.\n"
"[b]Примечание:[/b] [method sync] может быть вызван только после [method "
"submit]."

msgid ""
"Creates a new texture buffer. It can be accessed with the RID that is "
"returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый буфер текстуры. К нему можно получить доступ с помощью "
"возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Clears the specified [param texture] by replacing all of its pixels with the "
"specified [param color]. [param base_mipmap] and [param mipmap_count] "
"determine which mipmaps of the texture are affected by this clear operation, "
"while [param base_layer] and [param layer_count] determine which layers of a "
"3D texture (or texture array) are affected by this clear operation. For 2D "
"textures (which only have one layer by design), [param base_layer] must be "
"[code]0[/code] and [param layer_count] must be [code]1[/code].\n"
"[b]Note:[/b] [param texture] can't be cleared while a draw list that uses it "
"as part of a framebuffer is being created. Ensure the draw list is finalized "
"(and that the color/depth texture using it is not set to [constant "
"FINAL_ACTION_CONTINUE]) to clear this texture."
msgstr ""
"Очищает указанный [param texture], заменяя все его пиксели указанным [param "
"color]. [param base_mipmap] и [param mipmap_count] определяют, какие mip-"
"карты текстуры затронуты этой операцией очистки, в то время как [param "
"base_layer] и [param layer_count] определяют, какие слои 3D-текстуры (или "
"массива текстур) затронуты этой операцией очистки. Для 2D-текстур (которые "
"имеют только один слой по замыслу), [param base_layer] должен быть [code]0[/"
"code], а [param layer_count] должен быть [code]1[/code].\n"
"[b]Примечание:[/b] [param texture] нельзя очистить, пока создается список "
"отрисовки, который использует его как часть буфера кадра. Убедитесь, что "
"список отрисовки финализирован (и что текстура цвета/глубины, использующая "
"его, не установлена на [constant FINAL_ACTION_CONTINUE]), чтобы очистить эту "
"текстуру."

msgid ""
"Copies the [param from_texture] to [param to_texture] with the specified "
"[param from_pos], [param to_pos] and [param size] coordinates. The Z axis of "
"the [param from_pos], [param to_pos] and [param size] must be [code]0[/code] "
"for 2-dimensional textures. Source and destination mipmaps/layers must also "
"be specified, with these parameters being [code]0[/code] for textures without "
"mipmaps or single-layer textures. Returns [constant @GlobalScope.OK] if the "
"texture copy was successful or [constant @GlobalScope.ERR_INVALID_PARAMETER] "
"otherwise.\n"
"[b]Note:[/b] [param from_texture] texture can't be copied while a draw list "
"that uses it as part of a framebuffer is being created. Ensure the draw list "
"is finalized (and that the color/depth texture using it is not set to "
"[constant FINAL_ACTION_CONTINUE]) to copy this texture.\n"
"[b]Note:[/b] [param from_texture] texture requires the [constant "
"TEXTURE_USAGE_CAN_COPY_FROM_BIT] to be retrieved.\n"
"[b]Note:[/b] [param to_texture] can't be copied while a draw list that uses "
"it as part of a framebuffer is being created. Ensure the draw list is "
"finalized (and that the color/depth texture using it is not set to [constant "
"FINAL_ACTION_CONTINUE]) to copy this texture.\n"
"[b]Note:[/b] [param to_texture] requires the [constant "
"TEXTURE_USAGE_CAN_COPY_TO_BIT] to be retrieved.\n"
"[b]Note:[/b] [param from_texture] and [param to_texture] must be of the same "
"type (color or depth)."
msgstr ""
"Копирует [param from_texture] в [param to_texture] с указанными координатами "
"[param from_pos], [param to_pos] и [param size]. Ось Z [param from_pos], "
"[param to_pos] и [param size] должна быть [code]0[/code] для 2-мерных "
"текстур. Исходные и целевые mip-карты/слои также должны быть указаны, причем "
"эти параметры будут [code]0[/code] для текстур без mip-карт или однослойных "
"текстур. Возвращает [constant @GlobalScope.OK], если копирование текстуры "
"прошло успешно, или [constant @GlobalScope.ERR_INVALID_PARAMETER] в противном "
"случае.\n"
"[b]Примечание:[/b] Текстуру [param from_texture] нельзя копировать, пока "
"создается список отрисовки, который использует ее как часть буфера кадра. "
"Убедитесь, что список отрисовки финализирован (и что текстура цвета/глубины, "
"использующая его, не установлена на [constant FINAL_ACTION_CONTINUE]), чтобы "
"скопировать эту текстуру.\n"
"[b]Примечание:[/b] [param from_texture] требует извлечения [constant "
"TEXTURE_USAGE_CAN_COPY_FROM_BIT].\n"
"[b]Примечание:[/b] [param to_texture] не может быть скопирован, пока "
"создается список отрисовки, использующий его как часть буфера кадра. "
"Убедитесь, что список отрисовки финализирован (и что текстура цвета/глубины, "
"использующая его, не установлена на [constant FINAL_ACTION_CONTINUE]), чтобы "
"скопировать эту текстуру.\n"
"[b]Примечание:[/b] [param to_texture] требует извлечения [constant "
"TEXTURE_USAGE_CAN_COPY_TO_BIT].\n"
"[b]Примечание:[/b] [param from_texture] и [param to_texture] должны быть "
"одного типа (цвет или глубина)."

msgid ""
"Creates a new texture. It can be accessed with the RID that is returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method.\n"
"[b]Note:[/b] [param data] takes an [Array] of [PackedByteArray]s. For "
"[constant TEXTURE_TYPE_1D], [constant TEXTURE_TYPE_2D], and [constant "
"TEXTURE_TYPE_3D] types, this array should only have one element, a "
"[PackedByteArray] containing all the data for the texture. For [code]_ARRAY[/"
"code] and [code]_CUBE[/code] types, the length should be the same as the "
"number of [member RDTextureFormat.array_layers] in [param format].\n"
"[b]Note:[/b] Not to be confused with [method "
"RenderingServer.texture_2d_create], which creates the Godot-specific "
"[Texture2D] resource as opposed to the graphics API's own texture type."
msgstr ""
"Создаёт новую текстуру. Доступ к ней осуществляется по возвращаемому RID.\n"
"После завершения работы с RID необходимо освободить RID с помощью метода "
"[method free_rid] объекта RenderingDevice.\n"
"[b]Примечание:[/b] [param data] принимает [Array] из [PackedByteArray]. Для "
"типов [constant TEXTURE_TYPE_1D], [constant TEXTURE_TYPE_2D] и [constant "
"TEXTURE_TYPE_3D] этот массив должен содержать только один элемент — "
"[PackedByteArray], содержащий все данные текстуры. Для типов [code]_ARRAY[/"
"code] и [code]_CUBE[/code] длина должна быть равна количеству [member "
"RDTextureFormat.array_layers] в [param format].\n"
"[b]Примечание:[/b] Не путать с [method RenderingServer.texture_2d_create], "
"который создает специфичный для Godot ресурс [Texture2D], а не собственный "
"тип текстуры графического API."

msgid ""
"Returns an RID for an existing [param image] ([code]VkImage[/code]) with the "
"given [param type], [param format], [param samples], [param usage_flags], "
"[param width], [param height], [param depth], [param layers], and [param "
"mipmaps]. This can be used to allow Godot to render onto foreign images."
msgstr ""
"Возвращает RID для существующего [param image] ([code]VkImage[/code]) с "
"заданными [param type], [param format], [param samples], [param usage_flags], "
"[param width], [param height], [param depth], [param layers] и [param "
"mipmaps]. Это можно использовать, чтобы разрешить Godot выполнять рендеринг "
"на сторонних изображениях."

msgid ""
"Creates a shared texture using the specified [param view] and the texture "
"information from [param with_texture]."
msgstr ""
"Создает общую текстуру, используя указанный [param view] и информацию о "
"текстуре из [param with_texture]."

msgid ""
"Creates a shared texture using the specified [param view] and the texture "
"information from [param with_texture]'s [param layer] and [param mipmap]. The "
"number of included mipmaps from the original texture can be controlled using "
"the [param mipmaps] parameter. Only relevant for textures with multiple "
"layers, such as 3D textures, texture arrays and cubemaps. For single-layer "
"textures, use [method texture_create_shared].\n"
"For 2D textures (which only have one layer), [param layer] must be [code]0[/"
"code].\n"
"[b]Note:[/b] Layer slicing is only supported for 2D texture arrays, not 3D "
"textures or cubemaps."
msgstr ""
"Создает общую текстуру, используя указанный [param view] и информацию о "
"текстуре из [param with_texture] [param layer] и [param mipmap]. Количество "
"включенных mip-карт из исходной текстуры можно контролировать с помощью "
"параметра [param mipmaps]. Относится только к текстурам с несколькими слоями, "
"таким как 3D-текстуры, массивы текстур и кубические карты. Для однослойных "
"текстур используйте [method texture_create_shared].\n"
"Для 2D-текстур (имеющих только один слой) [param layer] должен быть [code]0[/"
"code].\n"
"[b]Примечание:[/b] Нарезка слоев поддерживается только для массивов 2D-"
"текстур, но не для 3D-текстур или кубических карт."

msgid ""
"Returns the [param texture] data for the specified [param layer] as raw "
"binary data. For 2D textures (which only have one layer), [param layer] must "
"be [code]0[/code].\n"
"[b]Note:[/b] [param texture] can't be retrieved while a draw list that uses "
"it as part of a framebuffer is being created. Ensure the draw list is "
"finalized (and that the color/depth texture using it is not set to [constant "
"FINAL_ACTION_CONTINUE]) to retrieve this texture. Otherwise, an error is "
"printed and an empty [PackedByteArray] is returned.\n"
"[b]Note:[/b] [param texture] requires the [constant "
"TEXTURE_USAGE_CAN_COPY_FROM_BIT] to be retrieved. Otherwise, an error is "
"printed and an empty [PackedByteArray] is returned.\n"
"[b]Note:[/b] This method will block the GPU from working until the data is "
"retrieved. Refer to [method texture_get_data_async] for an alternative that "
"returns the data in more performant way."
msgstr ""
"Возвращает данные [param texture] для указанного [param layer] в виде "
"необработанных двоичных данных. Для 2D-текстур (с одним слоем) [param layer] "
"должен быть равен [code]0[/code].\n"
"[b]Примечание:[/b] [param texture] невозможно получить, пока создаётся список "
"отрисовки, использующий его как часть буфера кадра. Убедитесь, что список "
"отрисовки завершен (и что используемая им текстура цвета/глубины не "
"установлена в [constant FINAL_ACTION_CONTINUE]), чтобы получить эту текстуру. "
"В противном случае выводится ошибка и возвращается пустой [PackedByteArray].\n"
"[b]Примечание:[/b] [param texture] требует получения [constant "
"TEXTURE_USAGE_CAN_COPY_FROM_BIT]. В противном случае выводится ошибка и "
"возвращается пустой [PackedByteArray].\n"
"[b]Примечание:[/b] Этот метод блокирует работу графического процессора до тех "
"пор, пока данные не будут получены. Альтернативный метод, возвращающий данные "
"более производительным способом, описан в [method texture_get_data_async]."

msgid ""
"Asynchronous version of [method texture_get_data]. RenderingDevice will call "
"[param callback] in a certain amount of frames with the data the texture had "
"at the time of the request.\n"
"[b]Note:[/b] At the moment, the delay corresponds to the amount of frames "
"specified by [member ProjectSettings.rendering/rendering_device/vsync/"
"frame_queue_size].\n"
"[b]Note:[/b] Downloading large textures can have a prohibitive cost for real-"
"time even when using the asynchronous method due to hardware bandwidth "
"limitations. When dealing with large resources, you can adjust settings such "
"as [member ProjectSettings.rendering/rendering_device/staging_buffer/"
"texture_download_region_size_px] and [member ProjectSettings.rendering/"
"rendering_device/staging_buffer/block_size_kb] to improve the transfer speed "
"at the cost of extra memory.\n"
"[codeblock]\n"
"func _texture_get_data_callback(array):\n"
"\tvalue = array.decode_u32(0)\n"
"\n"
"...\n"
"\n"
"rd.texture_get_data_async(texture, 0, _texture_get_data_callback)\n"
"[/codeblock]"
msgstr ""
"Асинхронная версия [method texture_get_data]. RenderingDevice вызовет [param "
"callback] в определенном количестве кадров с данными, которые были у текстуры "
"на момент запроса.\n"
"[b]Примечание:[/b] На данный момент задержка соответствует количеству кадров, "
"указанному [member ProjectSettings.rendering/rendering_device/vsync/"
"frame_queue_size].\n"
"[b]Примечание:[/b] Загрузка больших текстур может иметь непомерно высокую "
"стоимость для реального времени даже при использовании асинхронного метода из-"
"за ограничений пропускной способности оборудования. При работе с большими "
"ресурсами вы можете настроить такие параметры, как [member "
"ProjectSettings.rendering/rendering_device/staging_buffer/"
"texture_download_region_size_px] и [member ProjectSettings.rendering/"
"rendering_device/staging_buffer/block_size_kb], чтобы улучшить скорость "
"передачи за счет дополнительной памяти.\n"
"[codeblock]\n"
"func _texture_get_data_callback(array):\n"
"\tvalue = array.decode_u32(0)\n"
"\n"
"...\n"
"\n"
"rd.texture_get_data_async(texture, 0, _texture_get_data_callback)\n"
"[/codeblock]"

msgid "Returns the data format used to create this texture."
msgstr "Возвращает формат данных, использованный для создания этой текстуры."

msgid ""
"Use [method get_driver_resource] with [constant DRIVER_RESOURCE_TEXTURE] "
"instead."
msgstr ""
"Вместо этого используйте [method get_driver_resource] с [constant "
"DRIVER_RESOURCE_TEXTURE]."

msgid ""
"Returns the internal graphics handle for this texture object. For use when "
"communicating with third-party APIs mostly with GDExtension.\n"
"[b]Note:[/b] This function returns a [code]uint64_t[/code] which internally "
"maps to a [code]GLuint[/code] (OpenGL) or [code]VkImage[/code] (Vulkan)."
msgstr ""
"Возвращает внутренний графический дескриптор для этого объекта текстуры. Для "
"использования при взаимодействии со сторонними API, в основном с "
"GDExtension.\n"
"[b]Примечание:[/b] Эта функция возвращает [code]uint64_t[/code], который "
"внутренне сопоставляется с [code]GLuint[/code] (OpenGL) или [code]VkImage[/"
"code] (Vulkan)."

msgid ""
"Returns [code]true[/code] if the [param texture] is discardable, [code]false[/"
"code] otherwise. See [RDTextureFormat] or [method texture_set_discardable]."
msgstr ""
"Возвращает [code]true[/code], если [param texture] можно отбросить, "
"[code]false[/code] в противном случае. См. [RDTextureFormat] или [method "
"texture_set_discardable]."

msgid ""
"Returns [code]true[/code] if the specified [param format] is supported for "
"the given [param usage_flags], [code]false[/code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если указанный [param format] поддерживается "
"для заданных [param usage_flags], в противном случае [code]false[/code]."

msgid ""
"Returns [code]true[/code] if the [param texture] is shared, [code]false[/"
"code] otherwise. See [RDTextureView]."
msgstr ""
"Возвращает [code]true[/code], если [param texture] является общей, "
"[code]false[/code] в противном случае. См. [RDTextureView]."

msgid ""
"Returns [code]true[/code] if the [param texture] is valid, [code]false[/code] "
"otherwise."
msgstr ""
"Возвращает [code]true[/code], если [param texture] действителен, в противном "
"случае [code]false[/code]."

msgid ""
"Resolves the [param from_texture] texture onto [param to_texture] with "
"multisample antialiasing enabled. This must be used when rendering a "
"framebuffer for MSAA to work. Returns [constant @GlobalScope.OK] if "
"successful, [constant @GlobalScope.ERR_INVALID_PARAMETER] otherwise.\n"
"[b]Note:[/b] [param from_texture] and [param to_texture] textures must have "
"the same dimension, format and type (color or depth).\n"
"[b]Note:[/b] [param from_texture] can't be copied while a draw list that uses "
"it as part of a framebuffer is being created. Ensure the draw list is "
"finalized (and that the color/depth texture using it is not set to [constant "
"FINAL_ACTION_CONTINUE]) to resolve this texture.\n"
"[b]Note:[/b] [param from_texture] requires the [constant "
"TEXTURE_USAGE_CAN_COPY_FROM_BIT] to be retrieved.\n"
"[b]Note:[/b] [param from_texture] must be multisampled and must also be 2D "
"(or a slice of a 3D/cubemap texture).\n"
"[b]Note:[/b] [param to_texture] can't be copied while a draw list that uses "
"it as part of a framebuffer is being created. Ensure the draw list is "
"finalized (and that the color/depth texture using it is not set to [constant "
"FINAL_ACTION_CONTINUE]) to resolve this texture.\n"
"[b]Note:[/b] [param to_texture] texture requires the [constant "
"TEXTURE_USAGE_CAN_COPY_TO_BIT] to be retrieved.\n"
"[b]Note:[/b] [param to_texture] texture must [b]not[/b] be multisampled and "
"must also be 2D (or a slice of a 3D/cubemap texture)."
msgstr ""
"Разрешает текстуру [param from_texture] на [param to_texture] с включенным "
"сглаживанием multisample. Это необходимо использовать при рендеринге буфера "
"кадра для работы MSAA. Возвращает [constant @GlobalScope.OK] в случае успеха, "
"[constant @GlobalScope.ERR_INVALID_PARAMETER] в противном случае.\n"
"[b]Примечание:[/b] Текстуры [param from_texture] и [param to_texture] должны "
"иметь одинаковый размер, формат и тип (цвет или глубина).\n"
"[b]Примечание:[/b] [param from_texture] нельзя копировать, пока создается "
"список отрисовки, который использует его как часть буфера кадра. Убедитесь, "
"что список отрисовки финализирован (и что текстура цвета/глубины, "
"использующая его, не установлена на [constant FINAL_ACTION_CONTINUE]), чтобы "
"разрешить эту текстуру.\n"
"[b]Примечание:[/b] [param from_texture] требует получения [constant "
"TEXTURE_USAGE_CAN_COPY_FROM_BIT].\n"
"[b]Примечание:[/b] [param from_texture] должен быть мультисэмплированным и "
"также должен быть 2D (или частью 3D/cubemap текстуры).\n"
"[b]Примечание:[/b] [param to_texture] нельзя копировать, пока создается "
"список отрисовки, который использует его как часть буфера кадра. Убедитесь, "
"что список отрисовки финализирован (и что текстура цвета/глубины, "
"использующая его, не установлена на [constant FINAL_ACTION_CONTINUE]), чтобы "
"разрешить эту текстуру.\n"
"[b]Примечание:[/b] Текстура [param to_texture] требует получения [constant "
"TEXTURE_USAGE_CAN_COPY_TO_BIT].\n"
"[b]Примечание:[/b] Текстура [param to_texture] не должна [b][/b] быть "
"мультисэмплированной и должна быть 2D (или фрагментом 3D/кубической текстуры)."

msgid ""
"Updates the discardable property of [param texture].\n"
"If a texture is discardable, its contents do not need to be preserved between "
"frames. This flag is only relevant when the texture is used as target in a "
"draw list.\n"
"This information is used by [RenderingDevice] to figure out if a texture's "
"contents can be discarded, eliminating unnecessary writes to memory and "
"boosting performance."
msgstr ""
"Обновляет свойство discardable [param texture].\n"
"Если текстура является discardable, ее содержимое не нужно сохранять между "
"кадрами. Этот флаг имеет значение только тогда, когда текстура используется в "
"качестве цели в списке отрисовки.\n"
"Эта информация используется [RenderingDevice] для определения того, можно ли "
"отбросить содержимое текстуры, что исключает ненужные записи в память и "
"повышает производительность."

msgid ""
"Updates texture data with new data, replacing the previous data in place. The "
"updated texture data must have the same dimensions and format. For 2D "
"textures (which only have one layer), [param layer] must be [code]0[/code]. "
"Returns [constant @GlobalScope.OK] if the update was successful, [constant "
"@GlobalScope.ERR_INVALID_PARAMETER] otherwise.\n"
"[b]Note:[/b] Updating textures is forbidden during creation of a draw or "
"compute list.\n"
"[b]Note:[/b] The existing [param texture] can't be updated while a draw list "
"that uses it as part of a framebuffer is being created. Ensure the draw list "
"is finalized (and that the color/depth texture using it is not set to "
"[constant FINAL_ACTION_CONTINUE]) to update this texture.\n"
"[b]Note:[/b] The existing [param texture] requires the [constant "
"TEXTURE_USAGE_CAN_UPDATE_BIT] to be updatable."
msgstr ""
"Обновляет данные текстуры новыми данными, заменяя предыдущие данные на месте. "
"Обновленные данные текстуры должны иметь те же размеры и формат. Для 2D-"
"текстур (которые имеют только один слой) [param layer] должен быть [code]0[/"
"code]. Возвращает [constant @GlobalScope.OK], если обновление прошло успешно, "
"[constant @GlobalScope.ERR_INVALID_PARAMETER] в противном случае.\n"
"[b]Примечание:[/b] Обновление текстур запрещено во время создания списка "
"отрисовки или вычисления.\n"
"[b]Примечание:[/b] Существующая [param texture] не может быть обновлена, пока "
"создается список отрисовки, который использует ее как часть буфера кадра. "
"Убедитесь, что список отрисовки финализирован (и что текстура цвета/глубины, "
"использующая его, не установлена на [constant FINAL_ACTION_CONTINUE]), чтобы "
"обновить эту текстуру. \n"
"[b]Примечание:[/b] Для существующей [param texture] требуется, чтобы "
"[constant TEXTURE_USAGE_CAN_UPDATE_BIT] была обновляемой."

msgid ""
"Creates a new uniform buffer. It can be accessed with the RID that is "
"returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый унифицированный буфер. К нему можно получить доступ с помощью "
"возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Creates a new uniform set. It can be accessed with the RID that is returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый набор униформ. К нему можно получить доступ с помощью "
"возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid "Checks if the [param uniform_set] is valid, i.e. is owned."
msgstr ""
"Проверяет, является ли [param uniform_set] допустимым, т.е. принадлежит ли он "
"кому-либо."

msgid ""
"Creates a vertex array based on the specified buffers. Optionally, [param "
"offsets] (in bytes) may be defined for each buffer."
msgstr ""
"Создает массив вершин на основе указанных буферов. При желании для каждого "
"буфера можно определить [param offsets] (в байтах)."

msgid ""
"Creates a new vertex buffer. It can be accessed with the RID that is "
"returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingDevice's [method free_rid] method."
msgstr ""
"Создает новый буфер вершин. К нему можно получить доступ с помощью "
"возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingDevice."

msgid ""
"Creates a new vertex format with the specified [param vertex_descriptions]. "
"Returns a unique vertex format ID corresponding to the newly created vertex "
"format."
msgstr ""
"Создает новый формат вершины с указанным [param vertex_descriptions]. "
"Возвращает уникальный идентификатор формата вершины, соответствующий вновь "
"созданному формату вершины."

msgid ""
"Rendering device type does not match any of the other enum values or is "
"unknown."
msgstr ""
"Тип устройства рендеринга не соответствует ни одному из других значений "
"перечисления или неизвестен."

msgid ""
"Rendering device is an integrated GPU, which is typically [i](but not always)"
"[/i] slower than dedicated GPUs ([constant DEVICE_TYPE_DISCRETE_GPU]). On "
"Android and iOS, the rendering device type is always considered to be "
"[constant DEVICE_TYPE_INTEGRATED_GPU]."
msgstr ""
"Устройство рендеринга — это интегрированный графический процессор, который "
"обычно [i](но не всегда)[/i] медленнее, чем выделенные графические процессоры "
"([constant DEVICE_TYPE_DISCRETE_GPU]). На Android и iOS тип устройства "
"рендеринга всегда считается [constant DEVICE_TYPE_INTEGRATED_GPU]."

msgid ""
"Rendering device is a dedicated GPU, which is typically [i](but not always)[/"
"i] faster than integrated GPUs ([constant DEVICE_TYPE_INTEGRATED_GPU])."
msgstr ""
"Устройство рендеринга — это выделенный графический процессор, который обычно "
"[i](но не всегда)[/i] быстрее интегрированных графических процессоров "
"([constant DEVICE_TYPE_INTEGRATED_GPU])."

msgid ""
"Rendering device is an emulated GPU in a virtual environment. This is "
"typically much slower than the host GPU, which means the expected performance "
"level on a dedicated GPU will be roughly equivalent to [constant "
"DEVICE_TYPE_INTEGRATED_GPU]. Virtual machine GPU passthrough (such as VFIO) "
"will not report the device type as [constant DEVICE_TYPE_VIRTUAL_GPU]. "
"Instead, the host GPU's device type will be reported as if the GPU was not "
"emulated."
msgstr ""
"Устройство рендеринга — это эмулированный GPU в виртуальной среде. Обычно он "
"намного медленнее, чем хост-GPU, что означает, что ожидаемый уровень "
"производительности на выделенном GPU будет примерно эквивалентен [constant "
"DEVICE_TYPE_INTEGRATED_GPU]. Сквозной GPU виртуальной машины (например, VFIO) "
"не будет сообщать тип устройства как [constant DEVICE_TYPE_VIRTUAL_GPU]. "
"Вместо этого тип устройства хост-GPU будет сообщаться так, как если бы GPU не "
"был эмулирован."

msgid ""
"Rendering device is provided by software emulation (such as Lavapipe or "
"[url=https://github.com/google/swiftshader]SwiftShader[/url]). This is the "
"slowest kind of rendering device available; it's typically much slower than "
"[constant DEVICE_TYPE_INTEGRATED_GPU]."
msgstr ""
"Устройство рендеринга обеспечивается программной эмуляцией (например, "
"Lavapipe или [url=https://github.com/google/swiftshader]SwiftShader[/url]). "
"Это самый медленный тип доступного устройства рендеринга; обычно он намного "
"медленнее, чем [constant DEVICE_TYPE_INTEGRATED_GPU]."

msgid "Represents the size of the [enum DeviceType] enum."
msgstr "Представляет размер перечисления [enum DeviceType]."

msgid ""
"Specific device object based on a physical device ([code]rid[/code] parameter "
"is ignored).\n"
"- Vulkan: Vulkan device driver resource ([code]VkDevice[/code]).\n"
"- D3D12: D3D12 device driver resource ([code]ID3D12Device[/code]).\n"
"- Metal: Metal device driver resource ([code]MTLDevice[/code])."
msgstr ""
"Объект конкретного устройства, основанный на физическом устройстве (параметр "
"[code]rid[/code] игнорируется).\n"
"- Vulkan: Ресурс драйвера устройства Vulkan ([code]VkDevice[/code]).\n"
"- D3D12: Ресурс драйвера устройства D3D12 ([code]ID3D12Device[/code]).\n"
"- Metal: Ресурс драйвера устройства Metal ([code]MTLDevice[/code])."

msgid ""
"Physical device the specific logical device is based on ([code]rid[/code] "
"parameter is ignored).\n"
"- Vulkan: [code]VkPhysicalDevice[/code].\n"
"- D3D12: [code]IDXGIAdapter[/code]."
msgstr ""
"Физическое устройство, на котором основано конкретное логическое устройство "
"(параметр [code]rid[/code] игнорируется).\n"
"- Vulkan: [code]VkPhysicalDevice[/code].\n"
"- D3D12: [code]IDXGIAdapter[/code]."

msgid ""
"Top-most graphics API entry object ([code]rid[/code] parameter is ignored).\n"
"- Vulkan: [code]VkInstance[/code]."
msgstr ""
"Самый верхний объект записи графического API (параметр [code]rid[/code] "
"игнорируется).\n"
"- Vulkan: [code]VkInstance[/code]."

msgid ""
"The main graphics-compute command queue ([code]rid[/code] parameter is "
"ignored).\n"
"- Vulkan: [code]VkQueue[/code].\n"
"- Metal: [code]MTLCommandQueue[/code]."
msgstr ""
"Основная очередь команд графических вычислений (параметр [code]rid[/code] "
"игнорируется).\n"
"- Vulkan: [code]VkQueue[/code].\n"
"- Metal: [code]MTLCommandQueue[/code]."

msgid ""
"The specific family the main queue belongs to ([code]rid[/code] parameter is "
"ignored).\n"
"- Vulkan: The queue family index, a [code]uint32_t[/code]."
msgstr ""
"Конкретное семейство, к которому принадлежит основная очередь (параметр "
"[code]rid[/code] игнорируется).\n"
"- Vulkan: Индекс семейства очереди, [code]uint32_t[/code]."

msgid "- Vulkan: [code]VkImage[/code]."
msgstr "- Vulkan (Вулкан): [code]VkImage[/code]."

msgid ""
"The view of an owned or shared texture.\n"
"- Vulkan: [code]VkImageView[/code].\n"
"- D3D12: [code]ID3D12Resource[/code]."
msgstr ""
"Вид собственной или общей текстуры.\n"
"- Vulkan: [code]VkImageView[/code].\n"
"- D3D12: [code]ID3D12Resource[/code]."

msgid ""
"The native id of the data format of the texture.\n"
"- Vulkan: [code]VkFormat[/code].\n"
"- D3D12: [code]DXGI_FORMAT[/code]."
msgstr ""
"Собственный идентификатор формата данных текстуры.\n"
"- Vulkan: [code]VkFormat[/code].\n"
"- D3D12: [code]DXGI_FORMAT[/code]."

msgid "- Vulkan: [code]VkSampler[/code]."
msgstr "- Вулкан: [code]VkSampler[/code]."

msgid "- Vulkan: [code]VkDescriptorSet[/code]."
msgstr "- Вулкан: [code]VkDescriptorSet[/code]."

msgid ""
"Buffer of any kind of (storage, vertex, etc.).\n"
"- Vulkan: [code]VkBuffer[/code].\n"
"- D3D12: [code]ID3D12Resource[/code]."
msgstr ""
"Буфер любого типа (хранилище, вершинный и т. д.).\n"
"- Vulkan: [code]VkBuffer[/code].\n"
"- D3D12: [code]ID3D12Resource[/code]."

msgid ""
"- Vulkan: [code]VkPipeline[/code].\n"
"- Metal: [code]MTLComputePipelineState[/code]."
msgstr ""
"- Vulkan: [code]VkPipeline[/code].\n"
"- Metal: [code]MTLComputePipelineState[/code]."

msgid ""
"- Vulkan: [code]VkPipeline[/code].\n"
"- Metal: [code]MTLRenderPipelineState[/code]."
msgstr ""
"- Vulkan: [code]VkPipeline[/code].\n"
"- Metal: [code]MTLRenderPipelineState[/code]."

msgid "Use [constant DRIVER_RESOURCE_LOGICAL_DEVICE] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_LOGICAL_DEVICE]."

msgid "Use [constant DRIVER_RESOURCE_PHYSICAL_DEVICE] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_PHYSICAL_DEVICE]."

msgid "Use [constant DRIVER_RESOURCE_TOPMOST_OBJECT] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_TOPMOST_OBJECT]."

msgid "Use [constant DRIVER_RESOURCE_COMMAND_QUEUE] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_COMMAND_QUEUE]."

msgid "Use [constant DRIVER_RESOURCE_QUEUE_FAMILY] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_QUEUE_FAMILY]."

msgid "Use [constant DRIVER_RESOURCE_TEXTURE] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_TEXTURE]."

msgid "Use [constant DRIVER_RESOURCE_TEXTURE_VIEW] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_TEXTURE_VIEW]."

msgid "Use [constant DRIVER_RESOURCE_TEXTURE_DATA_FORMAT] instead."
msgstr ""
"Вместо этого используйте [constant DRIVER_RESOURCE_TEXTURE_DATA_FORMAT]."

msgid "Use [constant DRIVER_RESOURCE_SAMPLER] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_SAMPLER]."

msgid "Use [constant DRIVER_RESOURCE_UNIFORM_SET] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_UNIFORM_SET]."

msgid "Use [constant DRIVER_RESOURCE_BUFFER] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_BUFFER]."

msgid "Use [constant DRIVER_RESOURCE_COMPUTE_PIPELINE] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_COMPUTE_PIPELINE]."

msgid "Use [constant DRIVER_RESOURCE_RENDER_PIPELINE] instead."
msgstr "Вместо этого используйте [constant DRIVER_RESOURCE_RENDER_PIPELINE]."

msgid ""
"4-bit-per-channel red/green channel data format, packed into 8 bits. Values "
"are in the [code][0.0, 1.0][/code] range.\n"
"[b]Note:[/b] More information on all data formats can be found on the "
"[url=https://registry.khronos.org/vulkan/specs/1.1/html/"
"vkspec.html#_identification_of_formats]Identification of formats[/url] "
"section of the Vulkan specification, as well as the [url=https://"
"registry.khronos.org/vulkan/specs/1.3-extensions/man/html/"
"VkFormat.html]VkFormat[/url] enum."
msgstr ""
"Формат данных красного/зеленого каналов 4 бита на канал, упакованный в 8 бит. "
"Значения находятся в диапазоне [code][0.0, 1.0][/code].\n"
"[b]Примечание:[/b] Более подробную информацию обо всех форматах данных можно "
"найти в разделе [url=https://registry.khronos.org/vulkan/specs/1.1/html/"
"vkspec.html#_identification_of_formats]Идентификация форматов[/url] "
"спецификации Vulkan, а также в перечислении [url=https://registry.khronos.org/"
"vulkan/specs/1.3-extensions/man/html/VkFormat.html]VkFormat[/url]."

msgid ""
"4-bit-per-channel red/green/blue/alpha channel data format, packed into 16 "
"bits. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа по 4 бита на канал, "
"упакованный в 16 бит. Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"4-bit-per-channel blue/green/red/alpha channel data format, packed into 16 "
"bits. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных 4-битного канала синего/зеленого/красного/альфа-канала, "
"упакованный в 16 бит. Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"Red/green/blue channel data format with 5 bits of red, 6 bits of green and 5 "
"bits of blue, packed into 16 bits. Values are in the [code][0.0, 1.0][/code] "
"range."
msgstr ""
"Формат данных канала красный/зеленый/синий с 5 битами красного, 6 битами "
"зеленого и 5 битами синего, упакованными в 16 бит. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]."

msgid ""
"Blue/green/red channel data format with 5 bits of blue, 6 bits of green and 5 "
"bits of red, packed into 16 bits. Values are in the [code][0.0, 1.0][/code] "
"range."
msgstr ""
"Формат данных канала синий/зеленый/красный с 5 битами синего, 6 битами "
"зеленого и 5 битами красного, упакованными в 16 бит. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]."

msgid ""
"Red/green/blue/alpha channel data format with 5 bits of red, 6 bits of green, "
"5 bits of blue and 1 bit of alpha, packed into 16 bits. Values are in the "
"[code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных канала красный/зеленый/синий/альфа с 5 битами красного, 6 "
"битами зеленого, 5 битами синего и 1 битом альфа, упакованными в 16 бит. "
"Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"Blue/green/red/alpha channel data format with 5 bits of blue, 6 bits of "
"green, 5 bits of red and 1 bit of alpha, packed into 16 bits. Values are in "
"the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных канала синий/зеленый/красный/альфа с 5 битами синего, 6 битами "
"зеленого, 5 битами красного и 1 битом альфа, упакованными в 16 бит. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"Alpha/red/green/blue channel data format with 1 bit of alpha, 5 bits of red, "
"6 bits of green and 5 bits of blue, packed into 16 bits. Values are in the "
"[code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных канала альфа/красный/зеленый/синий с 1 битом альфа, 5 битами "
"красного, 6 битами зеленого и 5 битами синего, упакованными в 16 бит. "
"Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red channel data format with "
"normalized value. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных красного канала без знака с плавающей точкой, 8 бит на канал, с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]."

msgid ""
"8-bit-per-channel signed floating-point red channel data format with "
"normalized value. Values are in the [code][-1.0, 1.0][/code] range."
msgstr ""
"Формат данных красного канала с плавающей точкой и знаком 8 бит на канал с "
"нормализованным значением. Значения находятся в диапазоне [code][-1.0, 1.0][/"
"code]."

msgid ""
"8-bit-per-channel unsigned floating-point red channel data format with scaled "
"value (value is converted from integer to float). Values are in the [code]"
"[0.0, 255.0][/code] range."
msgstr ""
"Формат данных красного канала без знака с плавающей точкой, 8 бит на канал, с "
"масштабированным значением (значение преобразуется из целого числа в число с "
"плавающей точкой). Значения находятся в диапазоне [code][0.0, 255.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point red channel data format with scaled "
"value (value is converted from integer to float). Values are in the [code]"
"[-127.0, 127.0][/code] range."
msgstr ""
"Формат данных красного канала с плавающей точкой и знаком 8 бит на канал с "
"масштабированным значением (значение преобразуется из целого числа в число с "
"плавающей точкой). Значения находятся в диапазоне [code][-127.0, 127.0][/"
"code]."

msgid ""
"8-bit-per-channel unsigned integer red channel data format. Values are in the "
"[code][0, 255][/code] range."
msgstr ""
"Формат данных красного канала без знака 8-бит на канал. Значения находятся в "
"диапазоне [code][0, 255][/code]."

msgid ""
"8-bit-per-channel signed integer red channel data format. Values are in the "
"[code][-127, 127][/code] range."
msgstr ""
"Формат данных красного канала со знаком 8 бит на канал. Значения находятся в "
"диапазоне [code][-127, 127][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red channel data format with "
"normalized value and non-linear sRGB encoding. Values are in the [code][0.0, "
"1.0][/code] range."
msgstr ""
"Формат данных красного канала без знака с плавающей точкой, 8 бит на канал, с "
"нормализованным значением и нелинейным кодированием sRGB. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red/green channel data format with "
"normalized value. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных красного/зеленого канала без знака с плавающей точкой, 8 бит на "
"канал, с нормализованным значением. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point red/green channel data format with "
"normalized value. Values are in the [code][-1.0, 1.0][/code] range."
msgstr ""
"Формат данных красного/зеленого канала с плавающей точкой и знаком 8 бит на "
"канал с нормализованным значением. Значения находятся в диапазоне [code]"
"[-1.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red/green channel data format with "
"scaled value (value is converted from integer to float). Values are in the "
"[code][0.0, 255.0][/code] range."
msgstr ""
"Формат данных красного/зеленого канала без знака с плавающей точкой, 8 бит на "
"канал, с масштабированным значением (значение преобразуется из целого числа в "
"число с плавающей точкой). Значения находятся в диапазоне [code][0.0, 255.0][/"
"code]."

msgid ""
"8-bit-per-channel signed floating-point red/green channel data format with "
"scaled value (value is converted from integer to float). Values are in the "
"[code][-127.0, 127.0][/code] range."
msgstr ""
"Формат данных красного/зеленого канала с плавающей точкой, 8 бит на канал, со "
"знаком, с масштабированным значением (значение преобразуется из целого числа "
"в число с плавающей точкой). Значения находятся в диапазоне [code][-127.0, "
"127.0][/code]."

msgid ""
"8-bit-per-channel unsigned integer red/green channel data format. Values are "
"in the [code][0, 255][/code] range."
msgstr ""
"Формат данных красного/зеленого канала без знака 8-бит на канал. Значения "
"находятся в диапазоне [code][0, 255][/code]."

msgid ""
"8-bit-per-channel signed integer red/green channel data format. Values are in "
"the [code][-127, 127][/code] range."
msgstr ""
"Формат данных красного/зеленого канала со знаком 8 бит на канал. Значения "
"находятся в диапазоне [code][-127, 127][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red/green channel data format with "
"normalized value and non-linear sRGB encoding. Values are in the [code][0.0, "
"1.0][/code] range."
msgstr ""
"Формат данных красного/зеленого канала без знака с плавающей точкой, 8 бит на "
"канал, с нормализованным значением и нелинейным кодированием sRGB. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red/green/blue channel data format "
"with normalized value. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета с плавающей точкой и "
"беззнаковым 8-битным каналом с нормализованным значением. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point red/green/blue channel data format "
"with normalized value. Values are in the [code][-1.0, 1.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета с плавающей точкой и 8 "
"битами на канал с нормализованным значением. Значения находятся в диапазоне "
"[code][-1.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red/green/blue channel data format "
"with scaled value (value is converted from integer to float). Values are in "
"the [code][0.0, 255.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета с плавающей точкой и "
"беззнаковым 8-битным каналом с масштабированным значением (значение "
"преобразуется из целого числа в число с плавающей точкой). Значения находятся "
"в диапазоне [code][0.0, 255.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point red/green/blue channel data format "
"with scaled value (value is converted from integer to float). Values are in "
"the [code][-127.0, 127.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета с плавающей точкой, 8 бит "
"на канал, со знаком, с масштабированным значением (значение преобразуется из "
"целого числа в число с плавающей точкой). Значения находятся в диапазоне "
"[code][-127.0, 127.0][/code]."

msgid ""
"8-bit-per-channel unsigned integer red/green/blue channel data format. Values "
"are in the [code][0, 255][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета без знака 8 бит на канал. "
"Значения находятся в диапазоне [code][0, 255][/code]."

msgid ""
"8-bit-per-channel signed integer red/green/blue channel data format. Values "
"are in the [code][-127, 127][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета со знаком 8 бит на канал. "
"Значения находятся в диапазоне [code][-127, 127][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red/green/blue channel data format "
"with normalized value and non-linear sRGB encoding. Values are in the [code]"
"[0.0, 1.0][/code] range."
msgstr ""
"8-битный на канал формат данных красного/зелёного/синего каналов с плавающей "
"точкой без знака, нормализованными значениями и нелинейным кодированием sRGB. "
"Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point blue/green/red channel data format "
"with normalized value. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных синего/зеленого/красного канала с плавающей точкой и "
"беззнаковым 8-битным каналом с нормализованным значением. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point blue/green/red channel data format "
"with normalized value. Values are in the [code][-1.0, 1.0][/code] range."
msgstr ""
"Формат данных синего/зеленого/красного канала с плавающей точкой, 8 бит на "
"канал, со знаком, с нормализованным значением. Значения находятся в диапазоне "
"[code][-1.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point blue/green/red channel data format "
"with scaled value (value is converted from integer to float). Values are in "
"the [code][0.0, 255.0][/code] range."
msgstr ""
"Формат данных синего/зеленого/красного каналов с плавающей точкой и "
"беззнаковым разрешением 8 бит на канал с масштабированным значением (значение "
"преобразуется из целого числа в число с плавающей точкой). Значения находятся "
"в диапазоне [code][0.0, 255.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point blue/green/red channel data format "
"with scaled value (value is converted from integer to float). Values are in "
"the [code][-127.0, 127.0][/code] range."
msgstr ""
"Формат данных синего/зеленого/красного канала с плавающей точкой, 8 бит на "
"канал, со знаком, с масштабированным значением (значение преобразуется из "
"целого числа в число с плавающей точкой). Значения находятся в диапазоне "
"[code][-127.0, 127.0][/code]."

msgid ""
"8-bit-per-channel unsigned integer blue/green/red channel data format. Values "
"are in the [code][0, 255][/code] range."
msgstr ""
"Формат данных 8-битного на канал беззнакового целого числа синего/зеленого/"
"красного канала. Значения находятся в диапазоне [code][0, 255][/code]."

msgid ""
"8-bit-per-channel signed integer blue/green/red channel data format. Values "
"are in the [code][-127, 127][/code] range."
msgstr ""
"Формат данных 8-битного на канал знакового целого числа синего/зеленого/"
"красного канала. Значения находятся в диапазоне [code][-127, 127][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point blue/green/red data format with "
"normalized value and non-linear sRGB encoding. Values are in the [code][0.0, "
"1.0][/code] range."
msgstr ""
"Формат данных синего/зеленого/красного цвета с плавающей точкой, без знака, 8 "
"бит на канал, с нормализованным значением и нелинейным кодированием sRGB. "
"Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red/green/blue/alpha channel data "
"format with normalized value. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с 8 битами на канал без "
"знака и плавающей точкой с нормализованным значением. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point red/green/blue/alpha channel data "
"format with normalized value. Values are in the [code][-1.0, 1.0][/code] "
"range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа со знаком 8 бит на канал "
"и плавающей точкой с нормализованным значением. Значения находятся в "
"диапазоне [code][-1.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red/green/blue/alpha channel data "
"format with scaled value (value is converted from integer to float). Values "
"are in the [code][0.0, 255.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с плавающей точкой, без "
"знака, 8 бит на канал, с масштабированным значением (значение преобразуется "
"из целого числа в число с плавающей точкой). Значения находятся в диапазоне "
"[code][0.0, 255.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point red/green/blue/alpha channel data "
"format with scaled value (value is converted from integer to float). Values "
"are in the [code][-127.0, 127.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с плавающей точкой, 8 бит "
"на канал, со знаком, с масштабированным значением (значение преобразуется из "
"целого числа в число с плавающей точкой). Значения находятся в диапазоне "
"[code][-127.0, 127.0][/code]."

msgid ""
"8-bit-per-channel unsigned integer red/green/blue/alpha channel data format. "
"Values are in the [code][0, 255][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с 8-битным беззнаковым "
"целым числом. Значения находятся в диапазоне [code][0, 255][/code]."

msgid ""
"8-bit-per-channel signed integer red/green/blue/alpha channel data format. "
"Values are in the [code][-127, 127][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа со знаком 8 бит на канал. "
"Значения находятся в диапазоне [code][-127, 127][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point red/green/blue/alpha channel data "
"format with normalized value and non-linear sRGB encoding. Values are in the "
"[code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с 8 битами на канал без "
"знака и плавающей точкой, с нормализованным значением и нелинейным "
"кодированием sRGB. Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point blue/green/red/alpha channel data "
"format with normalized value. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных 8-битного канала без знака с плавающей точкой синего/зеленого/"
"красного/альфа с нормализованным значением. Значения находятся в диапазоне "
"[code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point blue/green/red/alpha channel data "
"format with normalized value. Values are in the [code][-1.0, 1.0][/code] "
"range."
msgstr ""
"Формат данных канала синего/зеленого/красного/альфа со знаком 8 бит на канал "
"и плавающей точкой с нормализованным значением. Значения находятся в "
"диапазоне [code][-1.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point blue/green/red/alpha channel data "
"format with scaled value (value is converted from integer to float). Values "
"are in the [code][0.0, 255.0][/code] range."
msgstr ""
"Формат данных канала синего/зеленого/красного/альфа с плавающей точкой, без "
"знака, 8 бит на канал, с масштабированным значением (значение преобразуется "
"из целого числа в число с плавающей точкой). Значения находятся в диапазоне "
"[code][0.0, 255.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point blue/green/red/alpha channel data "
"format with scaled value (value is converted from integer to float). Values "
"are in the [code][-127.0, 127.0][/code] range."
msgstr ""
"Формат данных канала синего/зеленого/красного/альфа с плавающей точкой, 8 бит "
"на канал, со знаком, с масштабированным значением (значение преобразуется из "
"целого числа в число с плавающей точкой). Значения находятся в диапазоне "
"[code][-127.0, 127.0][/code]."

msgid ""
"8-bit-per-channel unsigned integer blue/green/red/alpha channel data format. "
"Values are in the [code][0, 255][/code] range."
msgstr ""
"Формат данных 8-битного на канал беззнакового целого числа синего/зеленого/"
"красного/альфа-канала. Значения находятся в диапазоне [code][0, 255][/code]."

msgid ""
"8-bit-per-channel signed integer blue/green/red/alpha channel data format. "
"Values are in the [code][-127, 127][/code] range."
msgstr ""
"Формат данных 8-битного на канал знакового целого числа синего/зеленого/"
"красного/альфа-канала. Значения находятся в диапазоне [code][-127, 127][/"
"code]."

msgid ""
"8-bit-per-channel unsigned floating-point blue/green/red/alpha channel data "
"format with normalized value and non-linear sRGB encoding. Values are in the "
"[code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных 8-битного на канал беззнакового с плавающей точкой синего/"
"зеленого/красного/альфа-канала с нормализованным значением и нелинейным "
"кодированием sRGB. Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point alpha/red/green/blue channel data "
"format with normalized value, packed in 32 bits. Values are in the [code]"
"[0.0, 1.0][/code] range."
msgstr ""
"Формат данных альфа/красного/зеленого/синего каналов с плавающей точкой и "
"беззнаковым 8-битным каналом с нормализованным значением, упакованным в 32 "
"бита. Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point alpha/red/green/blue channel data "
"format with normalized value, packed in 32 bits. Values are in the [code]"
"[-1.0, 1.0][/code] range."
msgstr ""
"Формат данных альфа/красного/зеленого/синего каналов с плавающей точкой и 8 "
"битами на канал с нормализованным значением, упакованным в 32 бита. Значения "
"находятся в диапазоне [code][-1.0, 1.0][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point alpha/red/green/blue channel data "
"format with scaled value (value is converted from integer to float), packed "
"in 32 bits. Values are in the [code][0.0, 255.0][/code] range."
msgstr ""
"Формат данных канала альфа/красный/зеленый/синий с плавающей точкой, без "
"знака, 8 бит на канал, с масштабированным значением (значение преобразуется "
"из целого числа в число с плавающей точкой), упакованный в 32 бита. Значения "
"находятся в диапазоне [code][0.0, 255.0][/code]."

msgid ""
"8-bit-per-channel signed floating-point alpha/red/green/blue channel data "
"format with scaled value (value is converted from integer to float), packed "
"in 32 bits. Values are in the [code][-127.0, 127.0][/code] range."
msgstr ""
"Формат данных альфа/красного/зеленого/синего каналов с плавающей точкой, 8 "
"бит на канал, со знаком, с масштабированным значением (значение преобразуется "
"из целого числа в число с плавающей точкой), упакованное в 32 бита. Значения "
"находятся в диапазоне [code][-127.0, 127.0][/code]."

msgid ""
"8-bit-per-channel unsigned integer alpha/red/green/blue channel data format, "
"packed in 32 bits. Values are in the [code][0, 255][/code] range."
msgstr ""
"Формат данных канала альфа/красный/зеленый/синий без знака, 8 бит на канал, "
"упакованный в 32 бита. Значения находятся в диапазоне [code][0, 255][/code]."

msgid ""
"8-bit-per-channel signed integer alpha/red/green/blue channel data format, "
"packed in 32 bits. Values are in the [code][-127, 127][/code] range."
msgstr ""
"Формат данных 8-битного на канал знакового целого числа альфа/красного/"
"зеленого/синего каналов, упакованный в 32 бита. Значения находятся в "
"диапазоне [code][-127, 127][/code]."

msgid ""
"8-bit-per-channel unsigned floating-point alpha/red/green/blue channel data "
"format with normalized value and non-linear sRGB encoding, packed in 32 bits. "
"Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных каналов альфа/красный/зеленый/синий с плавающей точкой, без "
"знака, 8 бит на канал, с нормализованным значением и нелинейным кодированием "
"sRGB, упакованный в 32 бита. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]."

msgid ""
"Unsigned floating-point alpha/red/green/blue channel data format with "
"normalized value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits "
"of red, 10 bits of green and 10 bits of blue. Values are in the [code][0.0, "
"1.0][/code] range."
msgstr ""
"Формат данных канала альфа/красный/зеленый/синий без знака с плавающей точкой "
"с нормализованным значением, упакованным в 32 бита. Формат содержит 2 бита "
"альфа, 10 бит красного, 10 бит зеленого и 10 бит синего. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]."

msgid ""
"Signed floating-point alpha/red/green/blue channel data format with "
"normalized value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits "
"of red, 10 bits of green and 10 bits of blue. Values are in the [code][-1.0, "
"1.0][/code] range."
msgstr ""
"Формат данных канала альфа/красный/зеленый/синий со знаком и плавающей точкой "
"с нормализованным значением, упакованным в 32 бита. Формат содержит 2 бита "
"альфа, 10 бит красного, 10 бит зеленого и 10 бит синего. Значения находятся в "
"диапазоне [code][-1.0, 1.0][/code]."

msgid ""
"Unsigned floating-point alpha/red/green/blue channel data format with "
"normalized value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits "
"of red, 10 bits of green and 10 bits of blue. Values are in the [code][0.0, "
"1023.0][/code] range for red/green/blue and [code][0.0, 3.0][/code] for alpha."
msgstr ""
"Формат данных канала альфа/красный/зеленый/синий без знака с плавающей точкой "
"с нормализованным значением, упакованным в 32 бита. Формат содержит 2 бита "
"альфа, 10 бит красного, 10 бит зеленого и 10 бит синего. Значения находятся в "
"диапазоне [code][0.0, 1023.0][/code] для красного/зеленого/синего и [code]"
"[0.0, 3.0][/code] для альфа."

msgid ""
"Signed floating-point alpha/red/green/blue channel data format with "
"normalized value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits "
"of red, 10 bits of green and 10 bits of blue. Values are in the [code]"
"[-511.0, 511.0][/code] range for red/green/blue and [code][-1.0, 1.0][/code] "
"for alpha."
msgstr ""
"Формат данных канала альфа/красный/зеленый/синий со знаком и плавающей точкой "
"с нормализованным значением, упакованным в 32 бита. Формат содержит 2 бита "
"альфа, 10 бит красного, 10 бит зеленого и 10 бит синего. Значения находятся в "
"диапазоне [code][-511.0, 511.0][/code] для красного/зеленого/синего и [code]"
"[-1.0, 1.0][/code] для альфа."

msgid ""
"Unsigned integer alpha/red/green/blue channel data format with normalized "
"value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits of red, 10 "
"bits of green and 10 bits of blue. Values are in the [code][0, 1023][/code] "
"range for red/green/blue and [code][0, 3][/code] for alpha."
msgstr ""
"Формат данных канала альфа/красный/зеленый/синий без знака с нормализованным "
"значением, упакованный в 32 бита. Формат содержит 2 бита альфа, 10 бит "
"красного, 10 бит зеленого и 10 бит синего. Значения находятся в диапазоне "
"[code][0, 1023][/code] для красного/зеленого/синего и [code][0, 3][/code] для "
"альфа."

msgid ""
"Signed integer alpha/red/green/blue channel data format with normalized "
"value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits of red, 10 "
"bits of green and 10 bits of blue. Values are in the [code][-511, 511][/code] "
"range for red/green/blue and [code][-1, 1][/code] for alpha."
msgstr ""
"Формат данных канала альфа/красный/зеленый/синий со знаком в виде целого "
"числа с нормализованным значением, упакованным в 32 бита. Формат содержит 2 "
"бита альфа, 10 бит красного, 10 бит зеленого и 10 бит синего. Значения "
"находятся в диапазоне [code][-511, 511][/code] для красного/зеленого/синего и "
"[code][-1, 1][/code] для альфа."

msgid ""
"Unsigned floating-point alpha/blue/green/red channel data format with "
"normalized value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits "
"of blue, 10 bits of green and 10 bits of red. Values are in the [code][0.0, "
"1.0][/code] range."
msgstr ""
"Формат данных канала альфа/синий/зеленый/красный без знака с плавающей точкой "
"с нормализованным значением, упакованным в 32 бита. Формат содержит 2 бита "
"альфа, 10 бит синего, 10 бит зеленого и 10 бит красного. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]."

msgid ""
"Signed floating-point alpha/blue/green/red channel data format with "
"normalized value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits "
"of blue, 10 bits of green and 10 bits of red. Values are in the [code][-1.0, "
"1.0][/code] range."
msgstr ""
"Формат данных альфа/синего/зеленого/красного канала со знаком и плавающей "
"точкой с нормализованным значением, упакованным в 32 бита. Формат содержит 2 "
"бита альфа, 10 бит синего, 10 бит зеленого и 10 бит красного. Значения "
"находятся в диапазоне [code][-1.0, 1.0][/code]."

msgid ""
"Unsigned floating-point alpha/blue/green/red channel data format with "
"normalized value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits "
"of blue, 10 bits of green and 10 bits of red. Values are in the [code][0.0, "
"1023.0][/code] range for blue/green/red and [code][0.0, 3.0][/code] for alpha."
msgstr ""
"Формат данных канала альфа/синий/зеленый/красный без знака с плавающей точкой "
"с нормализованным значением, упакованным в 32 бита. Формат содержит 2 бита "
"альфа, 10 бит синего, 10 бит зеленого и 10 бит красного. Значения находятся в "
"диапазоне [code][0.0, 1023.0][/code] для синего/зеленого/красного и [code]"
"[0.0, 3.0][/code] для альфа."

msgid ""
"Signed floating-point alpha/blue/green/red channel data format with "
"normalized value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits "
"of blue, 10 bits of green and 10 bits of red. Values are in the [code]"
"[-511.0, 511.0][/code] range for blue/green/red and [code][-1.0, 1.0][/code] "
"for alpha."
msgstr ""
"Формат данных канала альфа/синий/зеленый/красный со знаком и плавающей точкой "
"с нормализованным значением, упакованным в 32 бита. Формат содержит 2 бита "
"альфа, 10 бит синего, 10 бит зеленого и 10 бит красного. Значения находятся в "
"диапазоне [code][-511.0, 511.0][/code] для синего/зеленого/красного и [code]"
"[-1.0, 1.0][/code] для альфа."

msgid ""
"Unsigned integer alpha/blue/green/red channel data format with normalized "
"value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits of blue, "
"10 bits of green and 10 bits of red. Values are in the [code][0, 1023][/code] "
"range for blue/green/red and [code][0, 3][/code] for alpha."
msgstr ""
"Формат данных канала альфа/синий/зеленый/красный без знака с нормализованным "
"значением, упакованный в 32 бита. Формат содержит 2 бита альфа, 10 бит "
"синего, 10 бит зеленого и 10 бит красного. Значения находятся в диапазоне "
"[code][0, 1023][/code] для синего/зеленого/красного и [code][0, 3][/code] для "
"альфа."

msgid ""
"Signed integer alpha/blue/green/red channel data format with normalized "
"value, packed in 32 bits. Format contains 2 bits of alpha, 10 bits of blue, "
"10 bits of green and 10 bits of red. Values are in the [code][-511, 511][/"
"code] range for blue/green/red and [code][-1, 1][/code] for alpha."
msgstr ""
"Формат данных канала альфа/синий/зеленый/красный со знаком в виде целого "
"числа с нормализованным значением, упакованным в 32 бита. Формат содержит 2 "
"бита альфа, 10 бит синего, 10 бит зеленого и 10 бит красного. Значения "
"находятся в диапазоне [code][-511, 511][/code] для синего/зеленого/красного и "
"[code][-1, 1][/code] для альфа."

msgid ""
"16-bit-per-channel unsigned floating-point red channel data format with "
"normalized value. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"16-битный на канал беззнаковый формат данных с плавающей точкой красного "
"канала с нормализованным значением. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]."

msgid ""
"16-bit-per-channel signed floating-point red channel data format with "
"normalized value. Values are in the [code][-1.0, 1.0][/code] range."
msgstr ""
"Формат данных красного канала с плавающей точкой и 16 битами на канал со "
"знаком и нормализованным значением. Значения находятся в диапазоне [code]"
"[-1.0, 1.0][/code]."

msgid ""
"16-bit-per-channel unsigned floating-point red channel data format with "
"scaled value (value is converted from integer to float). Values are in the "
"[code][0.0, 65535.0][/code] range."
msgstr ""
"Формат данных красного канала без знака с плавающей точкой, 16 бит на канал, "
"с масштабированным значением (значение преобразуется из целого числа в число "
"с плавающей точкой). Значения находятся в диапазоне [code][0.0, 65535.0][/"
"code]."

msgid ""
"16-bit-per-channel signed floating-point red channel data format with scaled "
"value (value is converted from integer to float). Values are in the [code]"
"[-32767.0, 32767.0][/code] range."
msgstr ""
"Формат данных красного канала с плавающей точкой и знаком 16 бит на канал с "
"масштабированным значением (значение преобразуется из целого числа в число с "
"плавающей точкой). Значения находятся в диапазоне [code][-32767.0, 32767.0][/"
"code]."

msgid ""
"16-bit-per-channel unsigned integer red channel data format. Values are in "
"the [code][0.0, 65535][/code] range."
msgstr ""
"Формат данных красного канала без знака 16 бит на канал. Значения находятся в "
"диапазоне [code][0.0, 65535][/code]."

msgid ""
"16-bit-per-channel signed integer red channel data format. Values are in the "
"[code][-32767, 32767][/code] range."
msgstr ""
"Формат данных красного канала со знаком 16 бит на канал. Значения находятся в "
"диапазоне [code][-32767, 32767][/code]."

msgid ""
"16-bit-per-channel signed floating-point red channel data format with the "
"value stored as-is."
msgstr ""
"Формат данных красного канала с плавающей точкой и знаком, 16 бит на канал, "
"значение сохраняется «как есть»."

msgid ""
"16-bit-per-channel unsigned floating-point red/green channel data format with "
"normalized value. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"16-битный на канал беззнаковый формат данных с плавающей точкой красного/"
"зеленого канала с нормализованным значением. Значения находятся в диапазоне "
"[code][0.0, 1.0][/code]."

msgid ""
"16-bit-per-channel signed floating-point red/green channel data format with "
"normalized value. Values are in the [code][-1.0, 1.0][/code] range."
msgstr ""
"Формат данных красного/зеленого канала с плавающей точкой и 16 битами на "
"канал, со знаком, с нормализованным значением. Значения находятся в диапазоне "
"[code][-1.0, 1.0][/code]."

msgid ""
"16-bit-per-channel unsigned floating-point red/green channel data format with "
"scaled value (value is converted from integer to float). Values are in the "
"[code][0.0, 65535.0][/code] range."
msgstr ""
"Формат данных красного/зеленого канала без знака с плавающей точкой, 16 бит "
"на канал, с масштабированным значением (значение преобразуется из целого "
"числа в число с плавающей точкой). Значения находятся в диапазоне [code][0.0, "
"65535.0][/code]."

msgid ""
"16-bit-per-channel signed floating-point red/green channel data format with "
"scaled value (value is converted from integer to float). Values are in the "
"[code][-32767.0, 32767.0][/code] range."
msgstr ""
"Формат данных красного/зеленого канала с плавающей точкой, 16 бит на канал, "
"со знаком, с масштабированным значением (значение преобразуется из целого "
"числа в число с плавающей точкой). Значения находятся в диапазоне [code]"
"[-32767.0, 32767.0][/code]."

msgid ""
"16-bit-per-channel unsigned integer red/green channel data format. Values are "
"in the [code][0.0, 65535][/code] range."
msgstr ""
"Формат данных красного/зеленого канала без знака 16 бит на канал. Значения "
"находятся в диапазоне [code][0.0, 65535][/code]."

msgid ""
"16-bit-per-channel signed integer red/green channel data format. Values are "
"in the [code][-32767, 32767][/code] range."
msgstr ""
"Формат данных красного/зеленого канала со знаком 16 бит на канал. Значения "
"находятся в диапазоне [code][-32767, 32767][/code]."

msgid ""
"16-bit-per-channel signed floating-point red/green channel data format with "
"the value stored as-is."
msgstr ""
"Формат данных красного/зеленого каналов с плавающей точкой и 16-битным знаком "
"на канал, значение сохраняется «как есть»."

msgid ""
"16-bit-per-channel unsigned floating-point red/green/blue channel data format "
"with normalized value. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"16-битный на канал беззнаковый формат данных с плавающей точкой красного/"
"зеленого/синего канала с нормализованным значением. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]."

msgid ""
"16-bit-per-channel signed floating-point red/green/blue channel data format "
"with normalized value. Values are in the [code][-1.0, 1.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета с плавающей точкой и 16 "
"битами на канал, со знаком, с нормализованным значением. Значения находятся в "
"диапазоне [code][-1.0, 1.0][/code]."

msgid ""
"16-bit-per-channel unsigned floating-point red/green/blue channel data format "
"with scaled value (value is converted from integer to float). Values are in "
"the [code][0.0, 65535.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета с плавающей точкой и "
"беззнаковым 16-битным каналом с масштабированным значением (значение "
"преобразуется из целого числа в число с плавающей точкой). Значения находятся "
"в диапазоне [code][0.0, 65535.0][/code]."

msgid ""
"16-bit-per-channel signed floating-point red/green/blue channel data format "
"with scaled value (value is converted from integer to float). Values are in "
"the [code][-32767.0, 32767.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета с плавающей точкой, 16 "
"бит на канал, со знаком, с масштабированным значением (значение преобразуется "
"из целого числа в число с плавающей точкой). Значения находятся в диапазоне "
"[code][-32767.0, 32767.0][/code]."

msgid ""
"16-bit-per-channel unsigned integer red/green/blue channel data format. "
"Values are in the [code][0.0, 65535][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета без знака, 16 бит на "
"канал. Значения находятся в диапазоне [code][0.0, 65535][/code]."

msgid ""
"16-bit-per-channel signed integer red/green/blue channel data format. Values "
"are in the [code][-32767, 32767][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета со знаком 16 бит на "
"канал. Значения находятся в диапазоне [code][-32767, 32767][/code]."

msgid ""
"16-bit-per-channel signed floating-point red/green/blue channel data format "
"with the value stored as-is."
msgstr ""
"Формат данных красного/зеленого/синего каналов с плавающей точкой и 16 битами "
"на канал, со значением, сохраняемым «как есть»."

msgid ""
"16-bit-per-channel unsigned floating-point red/green/blue/alpha channel data "
"format with normalized value. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с 16 битами на канал без "
"знака и плавающей точкой с нормализованным значением. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]."

msgid ""
"16-bit-per-channel signed floating-point red/green/blue/alpha channel data "
"format with normalized value. Values are in the [code][-1.0, 1.0][/code] "
"range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа со знаком и плавающей "
"точкой, 16 бит на канал, с нормализованным значением. Значения находятся в "
"диапазоне [code][-1.0, 1.0][/code]."

msgid ""
"16-bit-per-channel unsigned floating-point red/green/blue/alpha channel data "
"format with scaled value (value is converted from integer to float). Values "
"are in the [code][0.0, 65535.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с плавающей точкой, без "
"знака, 16 бит на канал, с масштабированным значением (значение преобразуется "
"из целого числа в число с плавающей точкой). Значения находятся в диапазоне "
"[code][0.0, 65535.0][/code]."

msgid ""
"16-bit-per-channel signed floating-point red/green/blue/alpha channel data "
"format with scaled value (value is converted from integer to float). Values "
"are in the [code][-32767.0, 32767.0][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с плавающей точкой, 16 "
"бит на канал, со знаком, с масштабированным значением (значение преобразуется "
"из целого числа в число с плавающей точкой). Значения находятся в диапазоне "
"[code][-32767.0, 32767.0][/code]."

msgid ""
"16-bit-per-channel unsigned integer red/green/blue/alpha channel data format. "
"Values are in the [code][0.0, 65535][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с 16-битным беззнаковым "
"целым числом. Значения находятся в диапазоне [code][0.0, 65535][/code]."

msgid ""
"16-bit-per-channel signed integer red/green/blue/alpha channel data format. "
"Values are in the [code][-32767, 32767][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа со знаком 16 бит на "
"канал. Значения находятся в диапазоне [code][-32767, 32767][/code]."

msgid ""
"16-bit-per-channel signed floating-point red/green/blue/alpha channel data "
"format with the value stored as-is."
msgstr ""
"Формат данных красного, зеленого, синего и альфа-канала с плавающей точкой и "
"16-битным знаком, значение сохраняется «как есть»."

msgid ""
"32-bit-per-channel unsigned integer red channel data format. Values are in "
"the [code][0, 2^32 - 1][/code] range."
msgstr ""
"Формат данных красного канала без знака, 32 бита на канал. Значения находятся "
"в диапазоне [code][0, 2^32 - 1][/code]."

msgid ""
"32-bit-per-channel signed integer red channel data format. Values are in the "
"[code][2^31 + 1, 2^31 - 1][/code] range."
msgstr ""
"Формат данных красного канала со знаком 32 бита на канал. Значения находятся "
"в диапазоне [code][2^31 + 1, 2^31 - 1][/code]."

msgid ""
"32-bit-per-channel signed floating-point red channel data format with the "
"value stored as-is."
msgstr ""
"Формат данных красного канала с плавающей точкой и 32-битным знаком на канал, "
"значение сохраняется «как есть»."

msgid ""
"32-bit-per-channel unsigned integer red/green channel data format. Values are "
"in the [code][0, 2^32 - 1][/code] range."
msgstr ""
"Формат данных канала красного/зеленого цвета без знака, 32 бита на канал. "
"Значения находятся в диапазоне [code][0, 2^32 - 1][/code]."

msgid ""
"32-bit-per-channel signed integer red/green channel data format. Values are "
"in the [code][2^31 + 1, 2^31 - 1][/code] range."
msgstr ""
"Формат данных красного/зеленого канала со знаком 32 бита на канал. Значения "
"находятся в диапазоне [code][2^31 + 1, 2^31 - 1][/code]."

msgid ""
"32-bit-per-channel signed floating-point red/green channel data format with "
"the value stored as-is."
msgstr ""
"Формат данных красного/зеленого каналов с плавающей точкой и 32-битным знаком "
"на канал, значение сохраняется «как есть»."

msgid ""
"32-bit-per-channel unsigned integer red/green/blue channel data format. "
"Values are in the [code][0, 2^32 - 1][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета без знака, 32 бита на "
"канал. Значения находятся в диапазоне [code][0, 2^32 - 1][/code]."

msgid ""
"32-bit-per-channel signed integer red/green/blue channel data format. Values "
"are in the [code][2^31 + 1, 2^31 - 1][/code] range."
msgstr ""
"Формат данных 32-битного на канал знакового целого числа красного/зеленого/"
"синего канала. Значения находятся в диапазоне [code][2^31 + 1, 2^31 - 1][/"
"code]."

msgid ""
"32-bit-per-channel signed floating-point red/green/blue channel data format "
"with the value stored as-is."
msgstr ""
"Формат данных красного/зеленого/синего каналов с плавающей точкой и 32-битным "
"знаком, значение сохраняется «как есть»."

msgid ""
"32-bit-per-channel unsigned integer red/green/blue/alpha channel data format. "
"Values are in the [code][0, 2^32 - 1][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с 32-битным беззнаковым "
"целым числом. Значения находятся в диапазоне [code][0, 2^32 - 1][/code]."

msgid ""
"32-bit-per-channel signed integer red/green/blue/alpha channel data format. "
"Values are in the [code][2^31 + 1, 2^31 - 1][/code] range."
msgstr ""
"Формат данных 32-битного на канал знакового целого числа красного/зеленого/"
"синего/альфа-канала. Значения находятся в диапазоне [code][2^31 + 1, 2^31 - 1]"
"[/code]."

msgid ""
"32-bit-per-channel signed floating-point red/green/blue/alpha channel data "
"format with the value stored as-is."
msgstr ""
"Формат данных красного, зеленого, синего и альфа-канала с плавающей точкой и "
"32-битным знаком, значение сохраняется «как есть»."

msgid ""
"64-bit-per-channel unsigned integer red channel data format. Values are in "
"the [code][0, 2^64 - 1][/code] range."
msgstr ""
"Формат данных красного канала без знака 64-бит на канал. Значения находятся в "
"диапазоне [code][0, 2^64 - 1][/code]."

msgid ""
"64-bit-per-channel signed integer red channel data format. Values are in the "
"[code][2^63 + 1, 2^63 - 1][/code] range."
msgstr ""
"Формат данных красного канала со знаком 64 бита на канал. Значения находятся "
"в диапазоне [code][2^63 + 1, 2^63 - 1][/code]."

msgid ""
"64-bit-per-channel signed floating-point red channel data format with the "
"value stored as-is."
msgstr ""
"Формат данных красного канала с плавающей точкой и знаком, 64 бита на канал, "
"значение сохраняется «как есть»."

msgid ""
"64-bit-per-channel unsigned integer red/green channel data format. Values are "
"in the [code][0, 2^64 - 1][/code] range."
msgstr ""
"Формат данных 64-битного на канал беззнакового целого числа красного/зеленого "
"канала. Значения находятся в диапазоне [code][0, 2^64 - 1][/code]."

msgid ""
"64-bit-per-channel signed integer red/green channel data format. Values are "
"in the [code][2^63 + 1, 2^63 - 1][/code] range."
msgstr ""
"Формат данных красного/зеленого канала со знаком 64 бита на канал. Значения "
"находятся в диапазоне [code][2^63 + 1, 2^63 - 1][/code]."

msgid ""
"64-bit-per-channel signed floating-point red/green channel data format with "
"the value stored as-is."
msgstr ""
"Формат данных красного/зеленого каналов с плавающей точкой и 64-битным "
"знаком, значение сохраняется «как есть»."

msgid ""
"64-bit-per-channel unsigned integer red/green/blue channel data format. "
"Values are in the [code][0, 2^64 - 1][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего цвета без знака 64 бита на "
"канал. Значения находятся в диапазоне [code][0, 2^64 - 1][/code]."

msgid ""
"64-bit-per-channel signed integer red/green/blue channel data format. Values "
"are in the [code][2^63 + 1, 2^63 - 1][/code] range."
msgstr ""
"Формат данных 64-битного на канал знакового целого числа красного/зеленого/"
"синего канала. Значения находятся в диапазоне [code][2^63 + 1, 2^63 - 1][/"
"code]."

msgid ""
"64-bit-per-channel signed floating-point red/green/blue channel data format "
"with the value stored as-is."
msgstr ""
"Формат данных красного/зеленого/синего каналов с плавающей точкой и 64-битным "
"знаком, значение сохраняется «как есть»."

msgid ""
"64-bit-per-channel unsigned integer red/green/blue/alpha channel data format. "
"Values are in the [code][0, 2^64 - 1][/code] range."
msgstr ""
"Формат данных канала красного/зеленого/синего/альфа с 64-битным беззнаковым "
"целым числом. Значения находятся в диапазоне [code][0, 2^64 - 1][/code]."

msgid ""
"64-bit-per-channel signed integer red/green/blue/alpha channel data format. "
"Values are in the [code][2^63 + 1, 2^63 - 1][/code] range."
msgstr ""
"Формат данных 64-битного на канал знакового целого числа красного/зеленого/"
"синего/альфа-канала. Значения находятся в диапазоне [code][2^63 + 1, 2^63 - 1]"
"[/code]."

msgid ""
"64-bit-per-channel signed floating-point red/green/blue/alpha channel data "
"format with the value stored as-is."
msgstr ""
"Формат данных красного, зеленого, синего и альфа-каналов с плавающей точкой и "
"64-битным знаком, значение сохраняется «как есть»."

msgid ""
"Unsigned floating-point blue/green/red data format with the value stored as-"
"is, packed in 32 bits. The format's precision is 10 bits of blue channel, 11 "
"bits of green channel and 11 bits of red channel."
msgstr ""
"Формат данных без знака с плавающей точкой blue/green/red, значение которого "
"хранится как есть, упаковано в 32 бита. Точность формата составляет 10 бит "
"синего канала, 11 бит зеленого канала и 11 бит красного канала."

msgid ""
"Unsigned floating-point exposure/blue/green/red data format with the value "
"stored as-is, packed in 32 bits. The format's precision is 5 bits of "
"exposure, 9 bits of blue channel, 9 bits of green channel and 9 bits of red "
"channel."
msgstr ""
"Формат данных экспозиции/синего/зеленого/красного без знака с плавающей "
"точкой, значение хранится как есть, упаковано в 32 бита. Точность формата "
"составляет 5 бит экспозиции, 9 бит синего канала, 9 бит зеленого канала и 9 "
"бит красного канала."

msgid ""
"16-bit unsigned floating-point depth data format with normalized value. "
"Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"16-битный беззнаковый формат данных с плавающей точкой глубины с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]."

msgid ""
"24-bit unsigned floating-point depth data format with normalized value, plus "
"8 unused bits, packed in 32 bits. Values for depth are in the [code][0.0, 1.0]"
"[/code] range."
msgstr ""
"24-битный беззнаковый формат данных глубины с плавающей точкой с "
"нормализованным значением, плюс 8 неиспользуемых бит, упакованных в 32 бита. "
"Значения глубины находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"32-bit signed floating-point depth data format with the value stored as-is."
msgstr ""
"32-битный знаковый формат данных глубины с плавающей точкой, значение "
"которого сохраняется «как есть»."

msgid "8-bit unsigned integer stencil data format."
msgstr "Формат данных трафарета 8-битного беззнакового целого числа."

msgid ""
"16-bit unsigned floating-point depth data format with normalized value, plus "
"8 bits of stencil in unsigned integer format. Values for depth are in the "
"[code][0.0, 1.0][/code] range. Values for stencil are in the [code][0, 255][/"
"code] range."
msgstr ""
"16-битный беззнаковый формат данных с плавающей точкой глубины с "
"нормализованным значением, плюс 8 бит трафарета в беззнаковом целочисленном "
"формате. Значения для глубины находятся в диапазоне [code][0.0, 1.0][/code]. "
"Значения для трафарета находятся в диапазоне [code][0, 255][/code]."

msgid ""
"24-bit unsigned floating-point depth data format with normalized value, plus "
"8 bits of stencil in unsigned integer format. Values for depth are in the "
"[code][0.0, 1.0][/code] range. Values for stencil are in the [code][0, 255][/"
"code] range."
msgstr ""
"24-битный беззнаковый формат данных с плавающей точкой глубины с "
"нормализованным значением, плюс 8 бит трафарета в беззнаковом целочисленном "
"формате. Значения для глубины находятся в диапазоне [code][0.0, 1.0][/code]. "
"Значения для трафарета находятся в диапазоне [code][0, 255][/code]."

msgid ""
"32-bit signed floating-point depth data format with the value stored as-is, "
"plus 8 bits of stencil in unsigned integer format. Values for stencil are in "
"the [code][0, 255][/code] range."
msgstr ""
"32-битный знаковый формат данных глубины с плавающей точкой, значение "
"которого хранится как есть, плюс 8 бит трафарета в формате беззнакового "
"целого числа. Значения для трафарета находятся в диапазоне [code][0, 255][/"
"code]."

msgid ""
"VRAM-compressed unsigned red/green/blue channel data format with normalized "
"value. Values are in the [code][0.0, 1.0][/code] range. The format's "
"precision is 5 bits of red channel, 6 bits of green channel and 5 bits of "
"blue channel. Using BC1 texture compression (also known as S3TC DXT1)."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего канала с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Точность формата составляет 5 бит красного канала, 6 бит зеленого "
"канала и 5 бит синего канала. Используется сжатие текстур BC1 (также "
"известное как S3TC DXT1)."

msgid ""
"VRAM-compressed unsigned red/green/blue channel data format with normalized "
"value and non-linear sRGB encoding. Values are in the [code][0.0, 1.0][/code] "
"range. The format's precision is 5 bits of red channel, 6 bits of green "
"channel and 5 bits of blue channel. Using BC1 texture compression (also known "
"as S3TC DXT1)."
msgstr ""
"Сжатый VRAM беззнаковый формат данных каналов красного/зеленого/синего с "
"нормализованным значением и нелинейным кодированием sRGB. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]. Точность формата составляет 5 бит "
"красного канала, 6 бит зеленого канала и 5 бит синего канала. Используется "
"сжатие текстур BC1 (также известное как S3TC DXT1)."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value. Values are in the [code][0.0, 1.0][/code] range. The "
"format's precision is 5 bits of red channel, 6 bits of green channel, 5 bits "
"of blue channel and 1 bit of alpha channel. Using BC1 texture compression "
"(also known as S3TC DXT1)."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Точность формата составляет 5 бит красного канала, 6 бит зеленого "
"канала, 5 бит синего канала и 1 бит альфа-канала. Используется сжатие текстур "
"BC1 (также известное как S3TC DXT1)."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value and non-linear sRGB encoding. Values are in the [code][0.0, "
"1.0][/code] range. The format's precision is 5 bits of red channel, 6 bits of "
"green channel, 5 bits of blue channel and 1 bit of alpha channel. Using BC1 "
"texture compression (also known as S3TC DXT1)."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением и нелинейным кодированием sRGB. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]. Точность формата составляет 5 бит "
"красного канала, 6 бит зеленого канала, 5 бит синего канала и 1 бит альфа-"
"канала. Используется сжатие текстур BC1 (также известное как S3TC DXT1)."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value. Values are in the [code][0.0, 1.0][/code] range. The "
"format's precision is 5 bits of red channel, 6 bits of green channel, 5 bits "
"of blue channel and 4 bits of alpha channel. Using BC2 texture compression "
"(also known as S3TC DXT3)."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Точность формата составляет 5 бит красного канала, 6 бит зеленого "
"канала, 5 бит синего канала и 4 бита альфа-канала. Используется сжатие "
"текстур BC2 (также известное как S3TC DXT3)."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value and non-linear sRGB encoding. Values are in the [code][0.0, "
"1.0][/code] range. The format's precision is 5 bits of red channel, 6 bits of "
"green channel, 5 bits of blue channel and 4 bits of alpha channel. Using BC2 "
"texture compression (also known as S3TC DXT3)."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением и нелинейным кодированием sRGB. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]. Точность формата составляет 5 бит "
"красного канала, 6 бит зеленого канала, 5 бит синего канала и 4 бита альфа-"
"канала. Используется сжатие текстур BC2 (также известное как S3TC DXT3)."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value. Values are in the [code][0.0, 1.0][/code] range. The "
"format's precision is 5 bits of red channel, 6 bits of green channel, 5 bits "
"of blue channel and 8 bits of alpha channel. Using BC3 texture compression "
"(also known as S3TC DXT5)."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Точность формата составляет 5 бит красного канала, 6 бит зеленого "
"канала, 5 бит синего канала и 8 бит альфа-канала. Используется сжатие текстур "
"BC3 (также известное как S3TC DXT5)."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value and non-linear sRGB encoding. Values are in the [code][0.0, "
"1.0][/code] range. The format's precision is 5 bits of red channel, 6 bits of "
"green channel, 5 bits of blue channel and 8 bits of alpha channel. Using BC3 "
"texture compression (also known as S3TC DXT5)."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением и нелинейным кодированием sRGB. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]. Точность формата составляет 5 бит "
"красного канала, 6 бит зеленого канала, 5 бит синего канала и 8 бит альфа-"
"канала. Используется сжатие текстур BC3 (также известное как S3TC DXT5)."

msgid ""
"VRAM-compressed unsigned red channel data format with normalized value. "
"Values are in the [code][0.0, 1.0][/code] range. The format's precision is 8 "
"bits of red channel. Using BC4 texture compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного канала с нормализованным "
"значением. Значения находятся в диапазоне [code][0.0, 1.0][/code]. Точность "
"формата составляет 8 бит красного канала. Используется сжатие текстур BC4."

msgid ""
"VRAM-compressed signed red channel data format with normalized value. Values "
"are in the [code][-1.0, 1.0][/code] range. The format's precision is 8 bits "
"of red channel. Using BC4 texture compression."
msgstr ""
"Формат данных красного канала со знаком, сжатый VRAM, с нормализованным "
"значением. Значения находятся в диапазоне [code][-1.0, 1.0][/code]. Точность "
"формата составляет 8 бит красного канала. Используется сжатие текстур BC4."

msgid ""
"VRAM-compressed unsigned red/green channel data format with normalized value. "
"Values are in the [code][0.0, 1.0][/code] range. The format's precision is 8 "
"bits of red channel and 8 bits of green channel. Using BC5 texture "
"compression (also known as S3TC RGTC)."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого канала с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Точность формата составляет 8 бит красного канала и 8 бит зеленого "
"канала. Используется сжатие текстур BC5 (также известное как S3TC RGTC)."

msgid ""
"VRAM-compressed signed red/green channel data format with normalized value. "
"Values are in the [code][-1.0, 1.0][/code] range. The format's precision is 8 "
"bits of red channel and 8 bits of green channel. Using BC5 texture "
"compression (also known as S3TC RGTC)."
msgstr ""
"Формат данных канала красного/зеленого со знаком, сжатый VRAM, с "
"нормализованным значением. Значения находятся в диапазоне [code][-1.0, 1.0][/"
"code]. Точность формата составляет 8 бит красного канала и 8 бит зеленого "
"канала. Используется сжатие текстур BC5 (также известное как S3TC RGTC)."

msgid ""
"VRAM-compressed unsigned red/green/blue channel data format with the floating-"
"point value stored as-is. The format's precision is between 10 and 13 bits "
"for the red/green/blue channels. Using BC6H texture compression (also known "
"as BPTC HDR)."
msgstr ""
"Формат данных каналов красного/зеленого/синего цвета без знака, сжатый VRAM, "
"с плавающей точкой, сохраненной как есть. Точность формата составляет от 10 "
"до 13 бит для каналов красного/зеленого/синего цвета. Используется сжатие "
"текстур BC6H (также известное как BPTC HDR)."

msgid ""
"VRAM-compressed signed red/green/blue channel data format with the floating-"
"point value stored as-is. The format's precision is between 10 and 13 bits "
"for the red/green/blue channels. Using BC6H texture compression (also known "
"as BPTC HDR)."
msgstr ""
"Формат данных канала красного/зеленого/синего со знаком, сжатый VRAM, с "
"плавающей точкой, сохраненной как есть. Точность формата составляет от 10 до "
"13 бит для каналов красного/зеленого/синего. Используется сжатие текстур BC6H "
"(также известное как BPTC HDR)."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value. Values are in the [code][0.0, 1.0][/code] range. The "
"format's precision is between 4 and 7 bits for the red/green/blue channels "
"and between 0 and 8 bits for the alpha channel. Also known as BPTC LDR."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Точность формата составляет от 4 до 7 бит для красного/зеленого/синего "
"каналов и от 0 до 8 бит для альфа-канала. Также известен как BPTC LDR."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value and non-linear sRGB encoding. Values are in the [code][0.0, "
"1.0][/code] range. The format's precision is between 4 and 7 bits for the red/"
"green/blue channels and between 0 and 8 bits for the alpha channel. Also "
"known as BPTC LDR."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением и нелинейным кодированием sRGB. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]. Точность формата составляет от 4 до 7 "
"бит для красного/зеленого/синего каналов и от 0 до 8 бит для альфа-канала. "
"Также известен как BPTC LDR."

msgid ""
"VRAM-compressed unsigned red/green/blue channel data format with normalized "
"value. Values are in the [code][0.0, 1.0][/code] range. Using ETC2 texture "
"compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных каналов красного/зеленого/синего с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Используется сжатие текстур ETC2."

msgid ""
"VRAM-compressed unsigned red/green/blue channel data format with normalized "
"value and non-linear sRGB encoding. Values are in the [code][0.0, 1.0][/code] "
"range. Using ETC2 texture compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных канала красного/зеленого/синего с "
"нормализованным значением и нелинейным кодированием sRGB. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]. Используется сжатие текстур ETC2."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value. Values are in the [code][0.0, 1.0][/code] range. Red/green/"
"blue use 8 bit of precision each, with alpha using 1 bit of precision. Using "
"ETC2 texture compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Красный/зеленый/синий используют 8-битную точность каждый, а альфа "
"использует 1-битную точность. Используется сжатие текстур ETC2."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value and non-linear sRGB encoding. Values are in the [code][0.0, "
"1.0][/code] range. Red/green/blue use 8 bit of precision each, with alpha "
"using 1 bit of precision. Using ETC2 texture compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением и нелинейным кодированием sRGB. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]. Красный/зеленый/синий используют 8-"
"битную точность каждый, а альфа использует 1-битную точность. Используется "
"сжатие текстур ETC2."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value. Values are in the [code][0.0, 1.0][/code] range. Red/green/"
"blue use 8 bits of precision each, with alpha using 8 bits of precision. "
"Using ETC2 texture compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных красного/зеленого/синего/альфа-канала с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Красный/зеленый/синий используют 8 бит точности каждый, а альфа "
"использует 8 бит точности. Используется сжатие текстур ETC2."

msgid ""
"VRAM-compressed unsigned red/green/blue/alpha channel data format with "
"normalized value and non-linear sRGB encoding. Values are in the [code][0.0, "
"1.0][/code] range. Red/green/blue use 8 bits of precision each, with alpha "
"using 8 bits of precision. Using ETC2 texture compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных канала красного/зеленого/синего/альфа с "
"нормализованным значением и нелинейным кодированием sRGB. Значения находятся "
"в диапазоне [code][0.0, 1.0][/code]. Красный/зеленый/синий используют 8 бит "
"точности каждый, а альфа использует 8 бит точности. Используется сжатие "
"текстур ETC2."

msgid ""
"11-bit VRAM-compressed unsigned red channel data format with normalized "
"value. Values are in the [code][0.0, 1.0][/code] range. Using ETC2 texture "
"compression."
msgstr ""
"11-битный сжатый VRAM беззнаковый формат данных красного канала с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Используется сжатие текстур ETC2."

msgid ""
"11-bit VRAM-compressed signed red channel data format with normalized value. "
"Values are in the [code][-1.0, 1.0][/code] range. Using ETC2 texture "
"compression."
msgstr ""
"11-битный сжатый VRAM-компрессированный формат данных красного канала со "
"знаком и нормализованным значением. Значения находятся в диапазоне [code]"
"[-1.0, 1.0][/code]. Используется сжатие текстур ETC2."

msgid ""
"11-bit VRAM-compressed unsigned red/green channel data format with normalized "
"value. Values are in the [code][0.0, 1.0][/code] range. Using ETC2 texture "
"compression."
msgstr ""
"11-битный сжатый VRAM беззнаковый формат данных красного/зеленого канала с "
"нормализованным значением. Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Используется сжатие текстур ETC2."

msgid ""
"11-bit VRAM-compressed signed red/green channel data format with normalized "
"value. Values are in the [code][-1.0, 1.0][/code] range. Using ETC2 texture "
"compression."
msgstr ""
"11-битный сжатый VRAM-компрессированный формат данных красного/зеленого "
"канала с нормализованным значением. Значения находятся в диапазоне [code]"
"[-1.0, 1.0][/code]. Используется сжатие текстур ETC2."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 4×4 blocks (highest quality). Values are in the [code][0.0, 1.0][/"
"code] range. Using ASTC compression."
msgstr ""
"Формат данных без знака с плавающей точкой, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 4×4 (наивысшее качество). Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 4×4 blocks (highest quality). Values are "
"in the [code][0.0, 1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 4×4 (наивысшее "
"качество). Значения находятся в диапазоне [code][0.0, 1.0][/code]. "
"Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 5×4 blocks. Values are in the [code][0.0, 1.0][/code] range. Using "
"ASTC compression."
msgstr ""
"Формат данных с плавающей точкой без знака, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 5×4. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 5×4 blocks. Values are in the [code][0.0, "
"1.0][/code] range. Using ASTC compression."
msgstr ""
"Формат данных с плавающей точкой без знака, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 5×4. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 5×5 blocks. Values are in the [code][0.0, 1.0][/code] range. Using "
"ASTC compression."
msgstr ""
"Формат данных без знака с плавающей точкой, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 5×5. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 5×5 blocks. Values are in the [code][0.0, "
"1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 5×5. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 6×5 blocks. Values are in the [code][0.0, 1.0][/code] range. Using "
"ASTC compression."
msgstr ""
"Формат данных без знака с плавающей точкой, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 6×5. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 6×5 blocks. Values are in the [code][0.0, "
"1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 6×5. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 6×6 blocks. Values are in the [code][0.0, 1.0][/code] range. Using "
"ASTC compression."
msgstr ""
"Формат данных без знака с плавающей точкой, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 6×6. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 6×6 blocks. Values are in the [code][0.0, "
"1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 6×6. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 8×5 blocks. Values are in the [code][0.0, 1.0][/code] range. Using "
"ASTC compression."
msgstr ""
"Формат данных без знака с плавающей точкой, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 8×5. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 8×5 blocks. Values are in the [code][0.0, "
"1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 8×5. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 8×6 blocks. Values are in the [code][0.0, 1.0][/code] range. Using "
"ASTC compression."
msgstr ""
"Формат данных с плавающей точкой без знака, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 8×6. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 8×6 blocks. Values are in the [code][0.0, "
"1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 8×6. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 8×8 blocks. Values are in the [code][0.0, 1.0][/code] range. Using "
"ASTC compression."
msgstr ""
"Формат данных с плавающей точкой без знака, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 8×8. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 8×8 blocks. Values are in the [code][0.0, "
"1.0][/code] range. Using ASTC compression."
msgstr ""
"Формат данных без знака с плавающей точкой, сжатый VRAM, с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 8×8. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 10×5 blocks. Values are in the [code][0.0, 1.0][/code] range. Using "
"ASTC compression."
msgstr ""
"Формат данных с плавающей точкой без знака, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 10×5. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 10×5 blocks. Values are in the [code]"
"[0.0, 1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 10×5. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 10×6 blocks. Values are in the [code][0.0, 1.0][/code] range. Using "
"ASTC compression."
msgstr ""
"Формат данных без знака с плавающей точкой, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 10×6. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 10×6 blocks. Values are in the [code]"
"[0.0, 1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 10×6. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 10×8 blocks. Values are in the [code][0.0, 1.0][/code] range. Using "
"ASTC compression."
msgstr ""
"Формат данных без знака с плавающей точкой, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 10×8. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 10×8 blocks. Values are in the [code]"
"[0.0, 1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 10×8. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 10×10 blocks. Values are in the [code][0.0, 1.0][/code] range. "
"Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением, упакованный в блоки 10×10. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 10×10 blocks. Values are in the [code]"
"[0.0, 1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 10×10. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 12×10 blocks. Values are in the [code][0.0, 1.0][/code] range. "
"Using ASTC compression."
msgstr ""
"Формат данных с плавающей точкой без знака, сжатый VRAM, с нормализованным "
"значением, упакованный в блоки 12×10. Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 12×10 blocks. Values are in the [code]"
"[0.0, 1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в блоки 12×10. Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value, "
"packed in 12 blocks (lowest quality). Values are in the [code][0.0, 1.0][/"
"code] range. Using ASTC compression."
msgstr ""
"Формат данных без знака с плавающей точкой, сжатый VRAM, с нормализованным "
"значением, упакованный в 12 блоков (самое низкое качество). Значения "
"находятся в диапазоне [code][0.0, 1.0][/code]. Используется сжатие ASTC."

msgid ""
"VRAM-compressed unsigned floating-point data format with normalized value and "
"non-linear sRGB encoding, packed in 12 blocks (lowest quality). Values are in "
"the [code][0.0, 1.0][/code] range. Using ASTC compression."
msgstr ""
"Сжатый VRAM беззнаковый формат данных с плавающей точкой с нормализованным "
"значением и нелинейным кодированием sRGB, упакованный в 12 блоков (самое "
"низкое качество). Значения находятся в диапазоне [code][0.0, 1.0][/code]. "
"Используется сжатие ASTC."

msgid ""
"8-bit-per-channel unsigned floating-point green/blue/red channel data format "
"with normalized value. Values are in the [code][0.0, 1.0][/code] range. Blue "
"and red channel data is stored at halved horizontal resolution (i.e. 2 "
"horizontally adjacent pixels will share the same value for the blue/red "
"channel)."
msgstr ""
"Формат данных зеленого/синего/красного каналов без знака с плавающей точкой, "
"8 бит на канал, с нормализованным значением. Значения находятся в диапазоне "
"[code][0.0, 1.0][/code]. Данные синего и красного каналов хранятся с "
"уменьшенным вдвое горизонтальным разрешением (т. е. 2 горизонтально смежных "
"пикселя будут иметь одинаковое значение для синего/красного канала)."

msgid ""
"8-bit-per-channel unsigned floating-point blue/green/red channel data format "
"with normalized value. Values are in the [code][0.0, 1.0][/code] range. Blue "
"and red channel data is stored at halved horizontal resolution (i.e. 2 "
"horizontally adjacent pixels will share the same value for the blue/red "
"channel)."
msgstr ""
"Формат данных синего/зеленого/красного канала без знака с плавающей точкой 8 "
"бит на канал с нормализованным значением. Значения находятся в диапазоне "
"[code][0.0, 1.0][/code]. Данные синего и красного каналов хранятся с "
"уменьшенным вдвое горизонтальным разрешением (т. е. 2 горизонтально смежных "
"пикселя будут иметь одинаковое значение для синего/красного канала)."

msgid ""
"8-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, stored across 3 separate planes (green + blue + red). "
"Values are in the [code][0.0, 1.0][/code] range. Blue and red channel data is "
"stored at halved horizontal and vertical resolution (i.e. 2×2 adjacent pixels "
"will share the same value for the blue/red channel)."
msgstr ""
"8-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, хранящиеся в 3 отдельных "
"плоскостях (зеленый + синий + красный). Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Данные синего и красного каналов хранятся с уменьшенным "
"вдвое горизонтальным и вертикальным разрешением (т. е. 2×2 соседних пикселя "
"будут иметь одинаковое значение для синего/красного канала)."

msgid ""
"8-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, stored across 2 separate planes (green + blue/red). Values "
"are in the [code][0.0, 1.0][/code] range. Blue and red channel data is stored "
"at halved horizontal and vertical resolution (i.e. 2×2 adjacent pixels will "
"share the same value for the blue/red channel)."
msgstr ""
"8-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, хранящиеся в 2 отдельных "
"плоскостях (зеленый + синий/красный). Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Данные синего и красного каналов хранятся с уменьшенным "
"вдвое горизонтальным и вертикальным разрешением (т. е. 2×2 соседних пикселя "
"будут иметь одинаковое значение для синего/красного канала)."

msgid ""
"8-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, stored across 2 separate planes (green + blue + red). "
"Values are in the [code][0.0, 1.0][/code] range. Blue and red channel data is "
"stored at halved horizontal resolution (i.e. 2 horizontally adjacent pixels "
"will share the same value for the blue/red channel)."
msgstr ""
"8-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, хранящиеся в 2 отдельных "
"плоскостях (зеленый + синий + красный). Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Данные синего и красного каналов хранятся с уменьшенным "
"вдвое горизонтальным разрешением (т. е. 2 горизонтально смежных пикселя будут "
"иметь одинаковое значение для синего/красного канала)."

msgid ""
"8-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, stored across 2 separate planes (green + blue/red). Values "
"are in the [code][0.0, 1.0][/code] range. Blue and red channel data is stored "
"at halved horizontal resolution (i.e. 2 horizontally adjacent pixels will "
"share the same value for the blue/red channel)."
msgstr ""
"8-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, хранящиеся в 2 отдельных "
"плоскостях (зеленый + синий/красный). Значения находятся в диапазоне [code]"
"[0.0, 1.0][/code]. Данные синего и красного каналов хранятся с уменьшенным "
"вдвое горизонтальным разрешением (т. е. 2 горизонтально смежных пикселя будут "
"иметь одинаковое значение для синего/красного канала)."

msgid ""
"8-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, stored across 3 separate planes. Values are in the [code]"
"[0.0, 1.0][/code] range."
msgstr ""
"8-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, хранящиеся в 3 отдельных "
"плоскостях. Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"10-bit-per-channel unsigned floating-point red channel data with normalized "
"value, plus 6 unused bits, packed in 16 bits. Values are in the [code][0.0, "
"1.0][/code] range."
msgstr ""
"10-бит на канал беззнаковых данных с плавающей точкой красного канала с "
"нормализованным значением, плюс 6 неиспользуемых бит, упакованных в 16 бит. "
"Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"10-bit-per-channel unsigned floating-point red/green channel data with "
"normalized value, plus 6 unused bits after each channel, packed in 2×16 bits. "
"Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"10-бит на канал беззнаковых данных с плавающей точкой красного/зеленого "
"каналов с нормализованным значением, плюс 6 неиспользуемых бит после каждого "
"канала, упакованных в 2×16 бит. Значения находятся в диапазоне [code][0.0, "
"1.0][/code]."

msgid ""
"10-bit-per-channel unsigned floating-point red/green/blue/alpha channel data "
"with normalized value, plus 6 unused bits after each channel, packed in 4×16 "
"bits. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"10-бит на канал беззнаковых данных с плавающей точкой красного/зеленого/"
"синего/альфа-канала с нормализованным значением, плюс 6 неиспользуемых бит "
"после каждого канала, упакованных в 4×16 бит. Значения находятся в диапазоне "
"[code][0.0, 1.0][/code]."

msgid ""
"10-bit-per-channel unsigned floating-point green/blue/green/red channel data "
"with normalized value, plus 6 unused bits after each channel, packed in 4×16 "
"bits. Values are in the [code][0.0, 1.0][/code] range. Blue and red channel "
"data is stored at halved horizontal resolution (i.e. 2 horizontally adjacent "
"pixels will share the same value for the blue/red channel). The green channel "
"is listed twice, but contains different values to allow it to be represented "
"at full resolution."
msgstr ""
"10-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"зеленого/красного каналов с нормализованным значением, плюс 6 неиспользуемых "
"бит после каждого канала, упакованные в 4×16 бит. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]. Данные синего и красного каналов хранятся "
"с уменьшенным вдвое горизонтальным разрешением (т. е. 2 горизонтально смежных "
"пикселя будут иметь одинаковое значение для синего/красного канала). Зеленый "
"канал указан дважды, но содержит разные значения, что позволяет представить "
"его в полном разрешении."

msgid ""
"10-bit-per-channel unsigned floating-point blue/green/red/green channel data "
"with normalized value, plus 6 unused bits after each channel, packed in 4×16 "
"bits. Values are in the [code][0.0, 1.0][/code] range. Blue and red channel "
"data is stored at halved horizontal resolution (i.e. 2 horizontally adjacent "
"pixels will share the same value for the blue/red channel). The green channel "
"is listed twice, but contains different values to allow it to be represented "
"at full resolution."
msgstr ""
"10-битные на канал беззнаковые данные с плавающей точкой синего/зеленого/"
"красного/зеленого каналов с нормализованным значением, плюс 6 неиспользуемых "
"бит после каждого канала, упакованные в 4×16 бит. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]. Данные синего и красного каналов хранятся "
"с уменьшенным вдвое горизонтальным разрешением (т. е. 2 горизонтально смежных "
"пикселя будут иметь одинаковое значение для синего/красного канала). Зеленый "
"канал указан дважды, но содержит разные значения, что позволяет представить "
"его в полном разрешении."

msgid ""
"10-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Packed in 3×16 bits "
"and stored across 2 separate planes (green + blue + red). Values are in the "
"[code][0.0, 1.0][/code] range. Blue and red channel data is stored at halved "
"horizontal and vertical resolution (i.e. 2×2 adjacent pixels will share the "
"same value for the blue/red channel)."
msgstr ""
"10-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Упакованы в 3×16 бит и хранятся в 2 отдельных плоскостях "
"(зеленый + синий + красный). Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Данные синего и красного каналов хранятся с уменьшенным вдвое "
"горизонтальным и вертикальным разрешением (т. е. 2×2 соседних пикселя будут "
"иметь одинаковое значение для синего/красного канала)."

msgid ""
"10-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Packed in 3×16 bits "
"and stored across 2 separate planes (green + blue/red). Values are in the "
"[code][0.0, 1.0][/code] range. Blue and red channel data is stored at halved "
"horizontal and vertical resolution (i.e. 2×2 adjacent pixels will share the "
"same value for the blue/red channel)."
msgstr ""
"10-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Упакованы в 3×16 бит и хранятся в 2 отдельных плоскостях "
"(зеленый + синий/красный). Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Данные синего и красного каналов хранятся с уменьшенным вдвое "
"горизонтальным и вертикальным разрешением (т. е. 2×2 соседних пикселя будут "
"иметь одинаковое значение для синего/красного канала)."

msgid ""
"10-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Packed in 3×16 bits "
"and stored across 3 separate planes (green + blue + red). Values are in the "
"[code][0.0, 1.0][/code] range. Blue and red channel data is stored at halved "
"horizontal resolution (i.e. 2 horizontally adjacent pixels will share the "
"same value for the blue/red channel)."
msgstr ""
"10-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Упакованы в 3×16 бит и хранятся в 3 отдельных плоскостях "
"(зеленый + синий + красный). Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Данные синего и красного каналов хранятся с уменьшенным вдвое "
"горизонтальным разрешением (т. е. 2 горизонтально смежных пикселя будут иметь "
"одинаковое значение для синего/красного канала)."

msgid ""
"10-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Packed in 3×16 bits "
"and stored across 3 separate planes (green + blue/red). Values are in the "
"[code][0.0, 1.0][/code] range. Blue and red channel data is stored at halved "
"horizontal resolution (i.e. 2 horizontally adjacent pixels will share the "
"same value for the blue/red channel)."
msgstr ""
"10-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Упакованы в 3×16 бит и хранятся в 3 отдельных плоскостях "
"(зеленый + синий/красный). Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Данные синего и красного каналов хранятся с уменьшенным вдвое "
"горизонтальным разрешением (т. е. 2 горизонтально смежных пикселя будут иметь "
"одинаковое значение для синего/красного канала)."

msgid ""
"10-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Packed in 3×16 bits "
"and stored across 3 separate planes (green + blue + red). Values are in the "
"[code][0.0, 1.0][/code] range."
msgstr ""
"10-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Упакованы в 3×16 бит и хранятся в 3 отдельных плоскостях "
"(зеленый + синий + красный). Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]."

msgid ""
"12-bit-per-channel unsigned floating-point red channel data with normalized "
"value, plus 6 unused bits, packed in 16 bits. Values are in the [code][0.0, "
"1.0][/code] range."
msgstr ""
"12-бит на канал беззнаковых данных с плавающей точкой красного канала с "
"нормализованным значением, плюс 6 неиспользуемых бит, упакованных в 16 бит. "
"Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"12-bit-per-channel unsigned floating-point red/green channel data with "
"normalized value, plus 6 unused bits after each channel, packed in 2×16 bits. "
"Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"12-бит на канал беззнаковых данных с плавающей точкой красного/зеленого "
"каналов с нормализованным значением, плюс 6 неиспользуемых бит после каждого "
"канала, упакованных в 2×16 бит. Значения находятся в диапазоне [code][0.0, "
"1.0][/code]."

msgid ""
"12-bit-per-channel unsigned floating-point red/green/blue/alpha channel data "
"with normalized value, plus 6 unused bits after each channel, packed in 4×16 "
"bits. Values are in the [code][0.0, 1.0][/code] range."
msgstr ""
"12-битные на канал беззнаковые данные с плавающей точкой красного/зеленого/"
"синего/альфа-канала с нормализованным значением, плюс 6 неиспользуемых бит "
"после каждого канала, упакованные в 4×16 бит. Значения находятся в диапазоне "
"[code][0.0, 1.0][/code]."

msgid ""
"12-bit-per-channel unsigned floating-point green/blue/green/red channel data "
"with normalized value, plus 6 unused bits after each channel, packed in 4×16 "
"bits. Values are in the [code][0.0, 1.0][/code] range. Blue and red channel "
"data is stored at halved horizontal resolution (i.e. 2 horizontally adjacent "
"pixels will share the same value for the blue/red channel). The green channel "
"is listed twice, but contains different values to allow it to be represented "
"at full resolution."
msgstr ""
"12-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"зеленого/красного каналов с нормализованным значением, плюс 6 неиспользуемых "
"бит после каждого канала, упакованные в 4×16 бит. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]. Данные синего и красного каналов хранятся "
"с уменьшенным вдвое горизонтальным разрешением (т. е. 2 горизонтально смежных "
"пикселя будут иметь одинаковое значение для синего/красного канала). Зеленый "
"канал указан дважды, но содержит разные значения, что позволяет представить "
"его в полном разрешении."

msgid ""
"12-bit-per-channel unsigned floating-point blue/green/red/green channel data "
"with normalized value, plus 6 unused bits after each channel, packed in 4×16 "
"bits. Values are in the [code][0.0, 1.0][/code] range. Blue and red channel "
"data is stored at halved horizontal resolution (i.e. 2 horizontally adjacent "
"pixels will share the same value for the blue/red channel). The green channel "
"is listed twice, but contains different values to allow it to be represented "
"at full resolution."
msgstr ""
"12-битные на канал беззнаковые данные с плавающей точкой синего/зеленого/"
"красного/зеленого каналов с нормализованным значением, плюс 6 неиспользуемых "
"бит после каждого канала, упакованные в 4×16 бит. Значения находятся в "
"диапазоне [code][0.0, 1.0][/code]. Данные синего и красного каналов хранятся "
"с уменьшенным вдвое горизонтальным разрешением (т. е. 2 горизонтально смежных "
"пикселя будут иметь одинаковое значение для синего/красного канала). Зеленый "
"канал указан дважды, но содержит разные значения, что позволяет представить "
"его в полном разрешении."

msgid ""
"12-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Packed in 3×16 bits "
"and stored across 2 separate planes (green + blue + red). Values are in the "
"[code][0.0, 1.0][/code] range. Blue and red channel data is stored at halved "
"horizontal and vertical resolution (i.e. 2×2 adjacent pixels will share the "
"same value for the blue/red channel)."
msgstr ""
"12-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Упакованы в 3×16 бит и хранятся в 2 отдельных плоскостях "
"(зеленый + синий + красный). Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Данные синего и красного каналов хранятся с уменьшенным вдвое "
"горизонтальным и вертикальным разрешением (т. е. 2×2 соседних пикселя будут "
"иметь одинаковое значение для синего/красного канала)."

msgid ""
"12-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Packed in 3×16 bits "
"and stored across 2 separate planes (green + blue/red). Values are in the "
"[code][0.0, 1.0][/code] range. Blue and red channel data is stored at halved "
"horizontal and vertical resolution (i.e. 2×2 adjacent pixels will share the "
"same value for the blue/red channel)."
msgstr ""
"12-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Упакованы в 3×16 бит и хранятся в 2 отдельных плоскостях "
"(зеленый + синий/красный). Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Данные синего и красного каналов хранятся с уменьшенным вдвое "
"горизонтальным и вертикальным разрешением (т. е. 2×2 соседних пикселя будут "
"иметь одинаковое значение для синего/красного канала)."

msgid ""
"12-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Packed in 3×16 bits "
"and stored across 3 separate planes (green + blue + red). Values are in the "
"[code][0.0, 1.0][/code] range. Blue and red channel data is stored at halved "
"horizontal resolution (i.e. 2 horizontally adjacent pixels will share the "
"same value for the blue/red channel)."
msgstr ""
"12-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Упакованы в 3×16 бит и хранятся в 3 отдельных плоскостях "
"(зеленый + синий + красный). Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Данные синего и красного каналов хранятся с уменьшенным вдвое "
"горизонтальным разрешением (т. е. 2 горизонтально смежных пикселя будут иметь "
"одинаковое значение для синего/красного канала)."

msgid ""
"12-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Packed in 3×16 bits "
"and stored across 3 separate planes (green + blue/red). Values are in the "
"[code][0.0, 1.0][/code] range. Blue and red channel data is stored at halved "
"horizontal resolution (i.e. 2 horizontally adjacent pixels will share the "
"same value for the blue/red channel)."
msgstr ""
"12-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Упакованы в 3×16 бит и хранятся в 3 отдельных плоскостях "
"(зеленый + синий/красный). Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]. Данные синего и красного каналов хранятся с уменьшенным вдвое "
"горизонтальным разрешением (т. е. 2 горизонтально смежных пикселя будут иметь "
"одинаковое значение для синего/красного канала)."

msgid ""
"12-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Packed in 3×16 bits "
"and stored across 3 separate planes (green + blue + red). Values are in the "
"[code][0.0, 1.0][/code] range."
msgstr ""
"12-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Упакованы в 3×16 бит и хранятся в 3 отдельных плоскостях "
"(зеленый + синий + красный). Значения находятся в диапазоне [code][0.0, 1.0][/"
"code]."

msgid ""
"16-bit-per-channel unsigned floating-point green/blue/red channel data format "
"with normalized value. Values are in the [code][0.0, 1.0][/code] range. Blue "
"and red channel data is stored at halved horizontal resolution (i.e. 2 "
"horizontally adjacent pixels will share the same value for the blue/red "
"channel)."
msgstr ""
"Формат данных зеленого/синего/красного каналов без знака с плавающей точкой "
"16 бит на канал с нормализованным значением. Значения находятся в диапазоне "
"[code][0.0, 1.0][/code]. Данные синего и красного каналов хранятся с "
"уменьшенным вдвое горизонтальным разрешением (т. е. 2 горизонтально смежных "
"пикселя будут иметь одинаковое значение для синего/красного канала)."

msgid ""
"16-bit-per-channel unsigned floating-point blue/green/red channel data format "
"with normalized value. Values are in the [code][0.0, 1.0][/code] range. Blue "
"and red channel data is stored at halved horizontal resolution (i.e. 2 "
"horizontally adjacent pixels will share the same value for the blue/red "
"channel)."
msgstr ""
"Формат данных синего/зеленого/красного каналов без знака с плавающей точкой "
"16 бит на канал с нормализованным значением. Значения находятся в диапазоне "
"[code][0.0, 1.0][/code]. Данные синего и красного каналов хранятся с "
"уменьшенным вдвое горизонтальным разрешением (т. е. 2 горизонтально смежных "
"пикселя будут иметь одинаковое значение для синего/красного канала)."

msgid ""
"16-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Stored across 2 "
"separate planes (green + blue + red). Values are in the [code][0.0, 1.0][/"
"code] range. Blue and red channel data is stored at halved horizontal and "
"vertical resolution (i.e. 2×2 adjacent pixels will share the same value for "
"the blue/red channel)."
msgstr ""
"16-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Хранятся в 2 отдельных плоскостях (зеленый + синий + "
"красный). Значения находятся в диапазоне [code][0.0, 1.0][/code]. Данные "
"синего и красного каналов хранятся с уменьшенным вдвое горизонтальным и "
"вертикальным разрешением (т. е. 2×2 соседних пикселя будут иметь одинаковое "
"значение для синего/красного канала)."

msgid ""
"16-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Stored across 2 "
"separate planes (green + blue/red). Values are in the [code][0.0, 1.0][/code] "
"range. Blue and red channel data is stored at halved horizontal and vertical "
"resolution (i.e. 2×2 adjacent pixels will share the same value for the blue/"
"red channel)."
msgstr ""
"16-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Хранятся в 2 отдельных плоскостях (зеленый + синий/красный). "
"Значения находятся в диапазоне [code][0.0, 1.0][/code]. Данные синего и "
"красного каналов хранятся с уменьшенным вдвое горизонтальным и вертикальным "
"разрешением (т. е. 2×2 соседних пикселя будут иметь одинаковое значение для "
"синего/красного канала)."

msgid ""
"16-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Stored across 3 "
"separate planes (green + blue + red). Values are in the [code][0.0, 1.0][/"
"code] range. Blue and red channel data is stored at halved horizontal "
"resolution (i.e. 2 horizontally adjacent pixels will share the same value for "
"the blue/red channel)."
msgstr ""
"16-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Хранятся в 3 отдельных плоскостях (зеленый + синий + "
"красный). Значения находятся в диапазоне [code][0.0, 1.0][/code]. Данные "
"синего и красного каналов хранятся с уменьшенным вдвое горизонтальным "
"разрешением (т. е. 2 горизонтально смежных пикселя будут иметь одинаковое "
"значение для синего/красного канала)."

msgid ""
"16-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Stored across 3 "
"separate planes (green + blue/red). Values are in the [code][0.0, 1.0][/code] "
"range. Blue and red channel data is stored at halved horizontal resolution "
"(i.e. 2 horizontally adjacent pixels will share the same value for the blue/"
"red channel)."
msgstr ""
"16-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Хранятся в 3 отдельных плоскостях (зеленый + синий/красный). "
"Значения находятся в диапазоне [code][0.0, 1.0][/code]. Данные синего и "
"красного каналов хранятся с уменьшенным вдвое горизонтальным разрешением (т. "
"е. 2 горизонтально смежных пикселя будут иметь одинаковое значение для синего/"
"красного канала)."

msgid ""
"16-bit-per-channel unsigned floating-point green/blue/red channel data with "
"normalized value, plus 6 unused bits after each channel. Stored across 3 "
"separate planes (green + blue + red). Values are in the [code][0.0, 1.0][/"
"code] range."
msgstr ""
"16-битные на канал беззнаковые данные с плавающей точкой зеленого/синего/"
"красного каналов с нормализованным значением, плюс 6 неиспользуемых бит после "
"каждого канала. Хранятся в 3 отдельных плоскостях (зеленый + синий + "
"красный). Значения находятся в диапазоне [code][0.0, 1.0][/code]."

msgid "Represents the size of the [enum DataFormat] enum."
msgstr "Представляет размер перечисления [enum DataFormat]."

msgid "Vertex shader barrier mask."
msgstr "Барьерная маска вершинного шейдера."

msgid "Fragment shader barrier mask."
msgstr "Маска барьера фрагментного шейдера."

msgid "Compute barrier mask."
msgstr "Вычислить барьерную маску."

msgid "Transfer barrier mask."
msgstr "Перенос барьерной маски."

msgid ""
"Raster barrier mask (vertex and fragment). Equivalent to "
"[code]BARRIER_MASK_VERTEX | BARRIER_MASK_FRAGMENT[/code]."
msgstr ""
"Маска растрового барьера (вершина и фрагмент). Эквивалентно "
"[code]BARRIER_MASK_VERTEX | BARRIER_MASK_FRAGMENT[/code]."

msgid "Barrier mask for all types (vertex, fragment, compute, transfer)."
msgstr ""
"Барьерная маска для всех типов (вершинная, фрагментная, вычислительная, "
"трансферная)."

msgid "No barrier for any type."
msgstr "Никаких барьеров для любого типа."

msgid "1-dimensional texture."
msgstr "Одномерная текстура."

msgid "2-dimensional texture."
msgstr "2-мерная текстура."

msgid "3-dimensional texture."
msgstr "3-мерная текстура."

msgid "[Cubemap] texture."
msgstr "Текстура [Cubemap]."

msgid "Array of 1-dimensional textures."
msgstr "Массив одномерных текстур."

msgid "Array of 2-dimensional textures."
msgstr "Массив двумерных текстур."

msgid "Array of [Cubemap] textures."
msgstr "Массив текстур [Cubemap]."

msgid "Represents the size of the [enum TextureType] enum."
msgstr "Представляет размер перечисления [enum TextureType]."

msgid ""
"Perform 1 texture sample (this is the fastest but lowest-quality for "
"antialiasing)."
msgstr ""
"Выполнить 1 выборку текстуры (это самый быстрый, но и самый низкокачественный "
"способ сглаживания)."

msgid "Perform 2 texture samples."
msgstr "Выполните 2 образца текстуры."

msgid "Perform 4 texture samples."
msgstr "Выполните 4 образца текстуры."

msgid ""
"Perform 8 texture samples. Not supported on mobile GPUs (including Apple "
"Silicon)."
msgstr ""
"Выполнить 8 выборок текстур. Не поддерживается на мобильных GPU (включая "
"Apple Silicon)."

msgid ""
"Perform 16 texture samples. Not supported on mobile GPUs and many desktop "
"GPUs."
msgstr ""
"Выполнить 16 выборок текстур. Не поддерживается на мобильных GPU и многих "
"настольных GPU."

msgid "Perform 32 texture samples. Not supported on most GPUs."
msgstr ""
"Выполнить 32 выборки текстур. Не поддерживается большинством графических "
"процессоров."

msgid ""
"Perform 64 texture samples (this is the slowest but highest-quality for "
"antialiasing). Not supported on most GPUs."
msgstr ""
"Выполнить 64 выборки текстур (это самый медленный, но самый качественный "
"способ сглаживания). Не поддерживается большинством графических процессоров."

msgid "Represents the size of the [enum TextureSamples] enum."
msgstr "Представляет размер перечисления [enum TextureSamples]."

msgid "Texture can be sampled."
msgstr "Текстуру можно отобрать (взять на пробу)."

msgid "Texture can be used as a color attachment in a framebuffer."
msgstr ""
"Текстуру можно использовать в качестве цветового приложения в буфере кадра."

msgid "Texture can be used as a depth/stencil attachment in a framebuffer."
msgstr ""
"Текстуру можно использовать в качестве глубинного/трафаретного приложения в "
"буфере кадра."

msgid ""
"Texture can be used as a [url=https://registry.khronos.org/vulkan/specs/1.3-"
"extensions/html/vkspec.html#descriptorsets-storageimage]storage image[/url]."
msgstr ""
"Текстуру можно использовать как [url=https://registry.khronos.org/vulkan/"
"specs/1.3-extensions/html/vkspec.html#descriptorsets-storageimage]образ для "
"хранения[/url]."

msgid ""
"Texture can be used as a [url=https://registry.khronos.org/vulkan/specs/1.3-"
"extensions/html/vkspec.html#descriptorsets-storageimage]storage image[/url] "
"with support for atomic operations."
msgstr ""
"Текстуру можно использовать как [url=https://registry.khronos.org/vulkan/"
"specs/1.3-extensions/html/vkspec.html#descriptorsets-storageimage]образ "
"хранилища[/url] с поддержкой атомарных операций."

msgid ""
"Texture can be read back on the CPU using [method texture_get_data] faster "
"than without this bit, since it is always kept in the system memory."
msgstr ""
"Текстуру можно считать обратно на ЦП с помощью [method texture_get_data] "
"быстрее, чем без этого бита, поскольку она всегда хранится в системной памяти."

msgid "Texture can be updated using [method texture_update]."
msgstr "Текстуру можно обновить с помощью [method texture_update]."

msgid "Texture can be a source for [method texture_copy]."
msgstr "Текстура может быть источником для [method texture_copy]."

msgid "Texture can be a destination for [method texture_copy]."
msgstr "Текстура может быть местом назначения для [method texture_copy]."

msgid ""
"Texture can be used as a [url=https://registry.khronos.org/vulkan/specs/1.3-"
"extensions/html/vkspec.html#descriptorsets-inputattachment]input attachment[/"
"url] in a framebuffer."
msgstr ""
"Текстуру можно использовать как [url=https://registry.khronos.org/vulkan/"
"specs/1.3-extensions/html/vkspec.html#descriptorsets-inputattachment]входное "
"вложение[/url] в буфере кадра."

msgid "Return the sampled value as-is."
msgstr "Верните выбранное значение как есть."

msgid "Always return [code]0.0[/code] when sampling."
msgstr "Всегда возвращайте [code]0.0[/code] при выборке."

msgid "Always return [code]1.0[/code] when sampling."
msgstr "Всегда возвращайте [code]1.0[/code] при выборке."

msgid "Sample the red color channel."
msgstr "Возьмите образец красного цветового канала."

msgid "Sample the green color channel."
msgstr "Возьмите образец зеленого цветового канала."

msgid "Sample the blue color channel."
msgstr "Возьмите образец синего цветового канала."

msgid "Sample the alpha channel."
msgstr "Образец альфа-канала."

msgid "Represents the size of the [enum TextureSwizzle] enum."
msgstr "Представляет размер перечисления [enum TextureSwizzle]."

msgid "2-dimensional texture slice."
msgstr "Двухмерный срез текстуры."

msgid "Cubemap texture slice."
msgstr "Кусочек текстуры кубической карты."

msgid "3-dimensional texture slice."
msgstr "Трехмерный срез текстуры."

msgid ""
"Nearest-neighbor sampler filtering. Sampling at higher resolutions than the "
"source will result in a pixelated look."
msgstr ""
"Фильтрация сэмплера ближайшего соседа. Выборка с более высоким разрешением, "
"чем у источника, приведет к пикселизированному виду."

msgid ""
"Bilinear sampler filtering. Sampling at higher resolutions than the source "
"will result in a blurry look."
msgstr ""
"Фильтрация билинейного сэмплера. Выборка с более высоким разрешением, чем у "
"источника, приведет к размытому виду."

msgid "Sample with repeating enabled."
msgstr "Образец с включенным повторением."

msgid ""
"Sample with mirrored repeating enabled. When sampling outside the [code][0.0, "
"1.0][/code] range, return a mirrored version of the sampler. This mirrored "
"version is mirrored again if sampling further away, with the pattern "
"repeating indefinitely."
msgstr ""
"Сэмпл с включенным зеркальным повторением. При сэмплировании за пределами "
"диапазона [code][0.0, 1.0][/code] возвращает зеркальную версию сэмплера. Эта "
"зеркальная версия зеркалируется снова, если сэмплирование происходит дальше, "
"при этом шаблон повторяется бесконечно."

msgid ""
"Sample with repeating disabled. When sampling outside the [code][0.0, 1.0][/"
"code] range, return the color of the last pixel on the edge."
msgstr ""
"Образец с отключенным повторением. При выборке за пределами диапазона [code]"
"[0.0, 1.0][/code] вернуть цвет последнего пикселя на краю."

msgid ""
"Sample with repeating disabled. When sampling outside the [code][0.0, 1.0][/"
"code] range, return the specified [member RDSamplerState.border_color]."
msgstr ""
"Образец с отключенным повторением. При выборке за пределами диапазона [code]"
"[0.0, 1.0][/code] верните указанный элемент [member "
"RDSamplerState.border_color]."

msgid ""
"Sample with mirrored repeating enabled, but only once. When sampling in the "
"[code][-1.0, 0.0][/code] range, return a mirrored version of the sampler. "
"When sampling outside the [code][-1.0, 1.0][/code] range, return the color of "
"the last pixel on the edge."
msgstr ""
"Выборка с включенным зеркальным повторением, но только один раз. При выборке "
"в диапазоне [code][-1.0, 0.0][/code] вернуть зеркальную версию выборки. При "
"выборке за пределами диапазона [code][-1.0, 1.0][/code] вернуть цвет "
"последнего пикселя на краю."

msgid "Represents the size of the [enum SamplerRepeatMode] enum."
msgstr "Представляет размер перечисления [enum SamplerRepeatMode]."

msgid ""
"Return a floating-point transparent black color when sampling outside the "
"[code][0.0, 1.0][/code] range. Only effective if the sampler repeat mode is "
"[constant SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."
msgstr ""
"Возвращает прозрачный черный цвет с плавающей точкой при выборке за пределами "
"диапазона [code][0.0, 1.0][/code]. Эффективно только в том случае, если режим "
"повтора сэмплера равен [constant SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."

msgid ""
"Return an integer transparent black color when sampling outside the [code]"
"[0.0, 1.0][/code] range. Only effective if the sampler repeat mode is "
"[constant SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."
msgstr ""
"Возвращает целочисленный прозрачный чёрный цвет при сэмплировании вне "
"диапазона [code][0.0, 1.0][/code]. Действует только если режим повторения "
"сэмплера — [constant SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."

msgid ""
"Return a floating-point opaque black color when sampling outside the [code]"
"[0.0, 1.0][/code] range. Only effective if the sampler repeat mode is "
"[constant SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."
msgstr ""
"Возвращает непрозрачный черный цвет с плавающей точкой при выборке за "
"пределами диапазона [code][0.0, 1.0][/code]. Эффективно только в том случае, "
"если режим повтора сэмплера равен [constant "
"SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."

msgid ""
"Return an integer opaque black color when sampling outside the [code][0.0, "
"1.0][/code] range. Only effective if the sampler repeat mode is [constant "
"SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."
msgstr ""
"Возвращает целочисленный непрозрачный чёрный цвет при выборке за пределами "
"диапазона [code][0.0, 1.0][/code]. Действует только если режим повторения "
"сэмплера — [constant SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."

msgid ""
"Return a floating-point opaque white color when sampling outside the [code]"
"[0.0, 1.0][/code] range. Only effective if the sampler repeat mode is "
"[constant SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."
msgstr ""
"Возвращает непрозрачный белый цвет с плавающей точкой при выборке за "
"пределами диапазона [code][0.0, 1.0][/code]. Эффективно только в том случае, "
"если режим повтора сэмплера равен [constant "
"SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."

msgid ""
"Return an integer opaque white color when sampling outside the [code][0.0, "
"1.0][/code] range. Only effective if the sampler repeat mode is [constant "
"SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."
msgstr ""
"Возвращает целочисленный непрозрачный белый цвет при выборке за пределами "
"диапазона [code][0.0, 1.0][/code]. Действует только если режим повторения "
"сэмплера — [constant SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER]."

msgid "Represents the size of the [enum SamplerBorderColor] enum."
msgstr "Представляет размер перечисления [enum SamplerBorderColor]."

msgid ""
"Vertex attribute addressing is a function of the vertex. This is used to "
"specify the rate at which vertex attributes are pulled from buffers."
msgstr ""
"Адресация атрибутов вершин является функцией вершины. Это используется для "
"указания скорости, с которой атрибуты вершин извлекаются из буферов."

msgid ""
"Vertex attribute addressing is a function of the instance index. This is used "
"to specify the rate at which vertex attributes are pulled from buffers."
msgstr ""
"Адресация атрибутов вершин является функцией индекса экземпляра. Это "
"используется для указания скорости, с которой атрибуты вершин извлекаются из "
"буферов."

msgid ""
"Index buffer in 16-bit unsigned integer format. This limits the maximum index "
"that can be specified to [code]65535[/code]."
msgstr ""
"Буфер индекса в формате 16-битного целого числа без знака. Это ограничивает "
"максимальный индекс, который может быть указан, до [code]65535[/code]."

msgid ""
"Index buffer in 32-bit unsigned integer format. This limits the maximum index "
"that can be specified to [code]4294967295[/code]."
msgstr ""
"Буфер индекса в формате 32-битного целого числа без знака. Это ограничивает "
"максимальный индекс, который может быть указан, до [code]4294967295[/code]."

msgid ""
"Optionally, set this flag if you wish to use [method "
"buffer_get_device_address] functionality. You must first check the GPU "
"supports it:\n"
"[codeblocks]\n"
"[gdscript]\n"
"rd = RenderingServer.get_rendering_device()\n"
"\n"
"if rd.has_feature(RenderingDevice.SUPPORTS_BUFFER_DEVICE_ADDRESS):\n"
"\tstorage_buffer = rd.storage_buffer_create(bytes.size(), bytes, "
"RenderingDevice.STORAGE_BUFFER_USAGE_SHADER_DEVICE_ADDRESS)\n"
"\tstorage_buffer_address = rd.buffer_get_device_address(storage_buffer)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"При желании установите этот флаг, если хотите использовать функционал [method "
"buffer_get_device_address]. Сначала необходимо проверить, поддерживает ли его "
"графический процессор:\n"
"[codeblocks]\n"
"[gdscript]\n"
"rd = RenderingServer.get_rendering_device()\n"
"\n"
"if rd.has_feature(RenderingDevice.SUPPORTS_BUFFER_DEVICE_ADDRESS):\n"
"\tstorage_buffer = rd.storage_buffer_create(bytes.size(), bytes, "
"RenderingDevice.STORAGE_BUFFER_USAGE_SHADER_DEVICE_ADDRESS)\n"
"\tstorage_buffer_address = rd.buffer_get_device_address(storage_buffer)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Set this flag so that it is created as storage. This is useful if Compute "
"Shaders need access (for reading or writing) to the buffer, e.g. skeletal "
"animations are processed in Compute Shaders which need access to vertex "
"buffers, to be later consumed by vertex shaders as part of the regular "
"rasterization pipeline."
msgstr ""
"Установите этот флаг, чтобы он был создан как хранилище. Это полезно, если "
"Compute Shaders требуется доступ (для чтения или записи) к буферу, например, "
"скелетные анимации обрабатываются в Compute Shaders, которым требуется доступ "
"к вершинным буферам, чтобы впоследствии использоваться вершинными шейдерами "
"как часть обычного конвейера растеризации."

msgid "Sampler uniform."
msgstr "Образец униформы."

msgid "Sampler uniform with a texture."
msgstr "Образец униформы с текстурой."

msgid "Texture uniform."
msgstr "Текстура однородная."

msgid "Image uniform."
msgstr "Изображение однородное."

msgid "Texture buffer uniform."
msgstr "Текстурный буфер равномерный."

msgid "Sampler uniform with a texture buffer."
msgstr "Униформа сэмплера с текстурным буфером."

msgid "Image buffer uniform."
msgstr "Буфер изображения равномерный."

msgid "Uniform buffer uniform."
msgstr "Унифицированная буферная униформа."

msgid ""
"[url=https://vkguide.dev/docs/chapter-4/storage_buffers/]Storage buffer[/url] "
"uniform."
msgstr ""
"[url=https://vkguide.dev/docs/chapter-4/storage_buffers/]Буфер хранения[/url] "
"униформа."

msgid "Input attachment uniform."
msgstr "вставка для ввода униформы."

msgid "Represents the size of the [enum UniformType] enum."
msgstr "Представляет размер перечисления [enum UniformType]."

msgid ""
"Point rendering primitive (with constant size, regardless of distance from "
"camera)."
msgstr ""
"Примитив рендеринга точки (с постоянным размером, независимо от расстояния до "
"камеры)."

msgid ""
"Line list rendering primitive. Lines are drawn separated from each other."
msgstr ""
"Примитив рендеринга списка линий. Линии рисуются отдельно друг от друга."

msgid ""
"[url=https://registry.khronos.org/vulkan/specs/1.3-extensions/html/"
"vkspec.html#drawing-line-lists-with-adjacency]Line list rendering primitive "
"with adjacency.[/url]\n"
"[b]Note:[/b] Adjacency is only useful with geometry shaders, which Godot does "
"not expose."
msgstr ""
"[url=https://registry.khronos.org/vulkan/specs/1.3-extensions/html/"
"vkspec.html#drawing-line-lists-with-adjacency]Примитив рендеринга списка "
"линий с соседством.[/url]\n"
"[b]Примечание:[/b] Смежность полезна только с геометрическими шейдерами, "
"которые Godot не раскрывает."

msgid ""
"Line strip rendering primitive. Lines drawn are connected to the previous "
"vertex."
msgstr ""
"Примитив рендеринга полосовой линии. Нарисованные линии соединяются с "
"предыдущей вершиной."

msgid ""
"[url=https://registry.khronos.org/vulkan/specs/1.3-extensions/html/"
"vkspec.html#drawing-line-strips-with-adjacency]Line strip rendering primitive "
"with adjacency.[/url]\n"
"[b]Note:[/b] Adjacency is only useful with geometry shaders, which Godot does "
"not expose."
msgstr ""
"[url=https://registry.khronos.org/vulkan/specs/1.3-extensions/html/"
"vkspec.html#drawing-line-strips-with-adjacency]Примитив рендеринга полос "
"линий с соседством.[/url]\n"
"[b]Примечание:[/b] Смежность полезна только с геометрическими шейдерами, "
"которые Godot не раскрывает."

msgid ""
"Triangle list rendering primitive. Triangles are drawn separated from each "
"other."
msgstr ""
"Примитив рендеринга списка треугольников. Треугольники рисуются отдельно друг "
"от друга."

msgid ""
"[url=https://registry.khronos.org/vulkan/specs/1.3-extensions/html/"
"vkspec.html#drawing-triangle-lists-with-adjacency]Triangle list rendering "
"primitive with adjacency.[/url]\n"
"[b]Note:[/b] Adjacency is only useful with geometry shaders, which Godot does "
"not expose."
msgstr ""
"[url=https://registry.khronos.org/vulkan/specs/1.3-extensions/html/"
"vkspec.html#drawing-triangle-lists-with-adjacency]Примитив рендеринга списка "
"треугольников с соседством.[/url]\n"
"[b]Примечание:[/b] Смежность полезна только с геометрическими шейдерами, "
"которые Godot не раскрывает."

msgid ""
"Triangle strip rendering primitive. Triangles drawn are connected to the "
"previous triangle."
msgstr ""
"Примитив рендеринга полосы треугольника. Нарисованные треугольники "
"соединяются с предыдущим треугольником."

msgid ""
"[url=https://registry.khronos.org/vulkan/specs/1.3-extensions/html/"
"vkspec.html#drawing-triangle-strips-with-adjacency]Triangle strip rendering "
"primitive with adjacency.[/url]\n"
"[b]Note:[/b] Adjacency is only useful with geometry shaders, which Godot does "
"not expose."
msgstr ""
"[url=https://registry.khronos.org/vulkan/specs/1.3-extensions/html/"
"vkspec.html#drawing-triangle-strips-with-adjacency]Примитив рендеринга "
"полоски треугольника с соседством.[/url]\n"
"[b]Примечание:[/b] Смежность полезна только с геометрическими шейдерами, "
"которые Godot не раскрывает."

msgid ""
"Triangle strip rendering primitive with [i]primitive restart[/i] enabled. "
"Triangles drawn are connected to the previous triangle, but a primitive "
"restart index can be specified before drawing to create a second triangle "
"strip after the specified index.\n"
"[b]Note:[/b] Only compatible with indexed draws."
msgstr ""
"Примитив рендеринга полосы треугольников с включенным [i]перезапуском "
"примитива[/i]. Нарисованные треугольники связаны с предыдущим треугольником, "
"но индекс перезапуска примитива может быть указан перед рисованием, чтобы "
"создать вторую полосу треугольников после указанного индекса.\n"
"[b]Примечание:[/b] Совместимо только с индексированными рисунками."

msgid ""
"Tessellation patch rendering primitive. Only useful with tessellation "
"shaders, which can be used to deform these patches."
msgstr ""
"Примитив рендеринга патчей тесселяции. Полезно только с шейдерами тесселяции, "
"которые можно использовать для деформации этих патчей."

msgid "Represents the size of the [enum RenderPrimitive] enum."
msgstr "Представляет размер перечисления [enum RenderPrimitive]."

msgid "Do not use polygon front face or backface culling."
msgstr "Не используйте отбраковку передней или задней поверхности полигона."

msgid ""
"Use polygon frontface culling (faces pointing towards the camera are hidden)."
msgstr ""
"Использовать отсечение фронтальных граней полигонов (грани, направленные в "
"сторону камеры, скрыты)."

msgid ""
"Use polygon backface culling (faces pointing away from the camera are hidden)."
msgstr ""
"Использовать отсечение обратных граней полигонов (грани, направленные в "
"сторону от камеры, скрыты)."

msgid ""
"Clockwise winding order to determine which face of a polygon is its front "
"face."
msgstr ""
"Порядок поворота по часовой стрелке позволяет определить, какая грань "
"многоугольника является его передней гранью."

msgid ""
"Counter-clockwise winding order to determine which face of a polygon is its "
"front face."
msgstr ""
"Порядок вращения против часовой стрелки для определения того, какая грань "
"многоугольника является его передней гранью."

msgid "Keep the current stencil value."
msgstr "Сохранить текущее значение трафарета."

msgid "Set the stencil value to [code]0[/code]."
msgstr "Установите значение трафарета на [code]0[/code]."

msgid "Replace the existing stencil value with the new one."
msgstr "Замените существующее значение трафарета новым."

msgid ""
"Increment the existing stencil value and clamp to the maximum representable "
"unsigned value if reached. Stencil bits are considered as an unsigned integer."
msgstr ""
"Увеличить существующее значение трафарета и зафиксировать его на максимально "
"представимом беззнаковом значении, если оно достигнуто. Биты трафарета "
"рассматриваются как беззнаковое целое число."

msgid ""
"Decrement the existing stencil value and clamp to the minimum value if "
"reached. Stencil bits are considered as an unsigned integer."
msgstr ""
"Уменьшить существующее значение трафарета и зафиксировать его на минимальном "
"значении, если оно достигнуто. Биты трафарета рассматриваются как беззнаковое "
"целое число."

msgid "Bitwise-invert the existing stencil value."
msgstr "Побитовое инвертирование существующего значения трафарета."

msgid ""
"Increment the stencil value and wrap around to [code]0[/code] if reaching the "
"maximum representable unsigned. Stencil bits are considered as an unsigned "
"integer."
msgstr ""
"Увеличить значение трафарета и перейти к [code]0[/code] при достижении "
"максимального представимого беззнакового значения. Биты трафарета "
"рассматриваются как беззнаковое целое число."

msgid ""
"Decrement the stencil value and wrap around to the maximum representable "
"unsigned if reaching the minimum. Stencil bits are considered as an unsigned "
"integer."
msgstr ""
"Уменьшить значение трафарета и вернуться к максимально представимому "
"беззнаковому значению, если достигнуто минимум. Биты трафарета "
"рассматриваются как беззнаковое целое число."

msgid "Represents the size of the [enum StencilOperation] enum."
msgstr "Представляет размер перечисления [enum StencilOperation]."

msgid "\"Never\" comparison (opposite of [constant COMPARE_OP_ALWAYS])."
msgstr "Сравнение «Никогда» (противоположно [constant COMPARE_OP_ALWAYS])."

msgid "\"Less than\" comparison."
msgstr "Сравнение \"меньше, чем\"."

msgid "\"Equal\" comparison."
msgstr "\"Равноценное\" сравнение."

msgid "\"Less than or equal\" comparison."
msgstr "Сравнение \"меньше или равно\"."

msgid "\"Greater than\" comparison."
msgstr "Сравнение \"больше, чем\"."

msgid "\"Not equal\" comparison."
msgstr "Сравнение \"Не равно\"."

msgid "\"Greater than or equal\" comparison."
msgstr "Сравнение «больше или равно»."

msgid "\"Always\" comparison (opposite of [constant COMPARE_OP_NEVER])."
msgstr "Сравнение «Всегда» (противоположно [constant COMPARE_OP_NEVER])."

msgid "Represents the size of the [enum CompareOperator] enum."
msgstr "Представляет размер перечисления [enum CompareOperator]."

msgid ""
"Clear logic operation (result is always [code]0[/code]). See also [constant "
"LOGIC_OP_SET]."
msgstr ""
"Очистить логическую операцию (результат всегда [code]0[/code]). См. также "
"[constant LOGIC_OP_SET]."

msgid "AND logic operation."
msgstr "Логическая операция И."

msgid ""
"AND logic operation with the [i]destination[/i] operand being inverted. See "
"also [constant LOGIC_OP_AND_INVERTED]."
msgstr ""
"Логическая операция И с инвертируемым операндом [i]destination[/i] "
"(назначение). См. также [constant LOGIC_OP_AND_INVERTED]."

msgid ""
"Copy logic operation (keeps the [i]source[/i] value as-is). See also "
"[constant LOGIC_OP_COPY_INVERTED] and [constant LOGIC_OP_NO_OP]."
msgstr ""
"Операция копирования логики (сохраняет значение [i]source[/i] (источник) как "
"есть). См. также [constant LOGIC_OP_COPY_INVERTED] и [constant "
"LOGIC_OP_NO_OP]."

msgid ""
"AND logic operation with the [i]source[/i] operand being inverted. See also "
"[constant LOGIC_OP_AND_REVERSE]."
msgstr ""
"Логическая операция И с инвертируемым операндом [i]source[/i]. См. также "
"[constant LOGIC_OP_AND_REVERSE]."

msgid ""
"No-op logic operation (keeps the [i]destination[/i] value as-is). See also "
"[constant LOGIC_OP_COPY]."
msgstr ""
"Логическая операция без операции (сохраняет значение [i]destination[/i] как "
"есть). См. также [constant LOGIC_OP_COPY]."

msgid "Exclusive or (XOR) logic operation."
msgstr "Логическая операция «исключающее ИЛИ» (XOR)."

msgid "OR logic operation."
msgstr "Логическая операция ИЛИ."

msgid "Not-OR (NOR) logic operation."
msgstr "Логическая операция «НЕ-ИЛИ» (NOR)."

msgid "Not-XOR (XNOR) logic operation."
msgstr "Логическая операция «не-исключающее ИЛИ» (XNOR)."

msgid "Invert logic operation."
msgstr "Инвертировать логическую операцию."

msgid ""
"OR logic operation with the [i]destination[/i] operand being inverted. See "
"also [constant LOGIC_OP_OR_REVERSE]."
msgstr ""
"Логическая операция ИЛИ с инвертируемым операндом [i]destination[/i]. См. "
"также [constant LOGIC_OP_OR_REVERSE]."

msgid ""
"NOT logic operation (inverts the value). See also [constant LOGIC_OP_COPY]."
msgstr ""
"Логическая операция НЕ (инвертирует значение). См. также [constant "
"LOGIC_OP_COPY]."

msgid ""
"OR logic operation with the [i]source[/i] operand being inverted. See also "
"[constant LOGIC_OP_OR_REVERSE]."
msgstr ""
"Логическая операция ИЛИ с инвертируемым операндом [i]source[/i]. См. также "
"[constant LOGIC_OP_OR_REVERSE]."

msgid "Not-AND (NAND) logic operation."
msgstr "Логическая операция НЕ-И (NAND)."

msgid ""
"SET logic operation (result is always [code]1[/code]). See also [constant "
"LOGIC_OP_CLEAR]."
msgstr ""
"Логическая операция SET (результат всегда [code]1[/code]). См. также "
"[constant LOGIC_OP_CLEAR]."

msgid "Represents the size of the [enum LogicOperation] enum."
msgstr "Представляет размер перечисления [enum LogicOperation]."

msgid "Constant [code]0.0[/code] blend factor."
msgstr "Постоянный коэффициент смешивания [code]0,0[/code]."

msgid "Constant [code]1.0[/code] blend factor."
msgstr "Постоянный коэффициент смешивания [code]1.0[/code]."

msgid ""
"Color blend factor is [code]source color[/code]. Alpha blend factor is "
"[code]source alpha[/code]."
msgstr ""
"Коэффициент смешивания цветов — это [code]source color[/code]. Фактор альфа-"
"смешивания — это [code]source alpha[/code]."

msgid ""
"Color blend factor is [code]1.0 - source color[/code]. Alpha blend factor is "
"[code]1.0 - source alpha[/code]."
msgstr ""
"Коэффициент смешивания цветов составляет [code]1,0 - source color[/code]. "
"Коэффициент смешивания альфа составляет [code]1,0 - source alpha[/code]."

msgid ""
"Color blend factor is [code]destination color[/code]. Alpha blend factor is "
"[code]destination alpha[/code]."
msgstr ""
"Коэффициент смешивания цветов — [code]destination color[/code]. Коэффициент "
"смешивания альфа — [code]destination alpha[/code]."

msgid ""
"Color blend factor is [code]1.0 - destination color[/code]. Alpha blend "
"factor is [code]1.0 - destination alpha[/code]."
msgstr ""
"Коэффициент смешивания цветов составляет[code]1.0 - destination color[/code]. "
"Коэффициент смешивания альфа составляет [code]1.0 - destination alpha[/code]."

msgid "Color and alpha blend factor is [code]source alpha[/code]."
msgstr ""
"Коэффициент смешивания цвета и альфа-канала — [code]source alpha[/code]."

msgid "Color and alpha blend factor is [code]1.0 - source alpha[/code]."
msgstr ""
"Коэффициент смешивания цвета и альфа-канала составляет [code]1.0 - source "
"alpha[/code]."

msgid "Color and alpha blend factor is [code]destination alpha[/code]."
msgstr ""
"Коэффициент смешивания цвета и альфа-канала — [code]destination alpha[/code]."

msgid "Color and alpha blend factor is [code]1.0 - destination alpha[/code]."
msgstr ""
"Коэффициент смешивания цвета и альфа-канала составляет [code]1.0 - "
"destination alpha[/code]."

msgid ""
"Color blend factor is [code]blend constant color[/code]. Alpha blend factor "
"is [code]blend constant alpha[/code] (see [method "
"draw_list_set_blend_constants])."
msgstr ""
"Фактор смешивания цветов — [code]blend constant color[/code].. Фактор "
"смешивания альфа —[code]blend constant alpha[/code] (см. [method "
"draw_list_set_blend_constants])."

msgid ""
"Color blend factor is [code]1.0 - blend constant color[/code]. Alpha blend "
"factor is [code]1.0 - blend constant alpha[/code] (see [method "
"draw_list_set_blend_constants])."
msgstr ""
"Коэффициент смешивания цветов равен [code]1.0 - blend constant color[/code]. "
"Коэффициент смешивания альфа равен [code]1.0 - blend constant alpha[/code] "
"(см. [method draw_list_set_blend_constants])."

msgid ""
"Color and alpha blend factor is [code]blend constant alpha[/code] (see "
"[method draw_list_set_blend_constants])."
msgstr ""
"Коэффициент смешивания цвета и альфа-канала — [code]blend constant alpha[/"
"code] (см. [method draw_list_set_blend_constants])."

msgid ""
"Color and alpha blend factor is [code]1.0 - blend constant alpha[/code] (see "
"[method draw_list_set_blend_constants])."
msgstr ""
"Коэффициент смешивания цвета и альфа-канала равен [code]1.0 - blend constant "
"alpha[/code] (см. [method draw_list_set_blend_constants])."

msgid ""
"Color blend factor is [code]min(source alpha, 1.0 - destination alpha)[/"
"code]. Alpha blend factor is [code]1.0[/code]."
msgstr ""
"Коэффициент смешивания цветов равен [code]min(source alpha, 1.0 - destination "
"alpha)[/code]. Коэффициент смешивания альфа равен [code]1.0[/code]."

msgid ""
"Color blend factor is [code]second source color[/code]. Alpha blend factor is "
"[code]second source alpha[/code]. Only relevant for dual-source blending."
msgstr ""
"Фактор смешивания цветов — [code]second source color[/code]. Фактор "
"смешивания альфа — [code]second source alpha[/code]. Актуально только для "
"смешивания двух источников."

msgid ""
"Color blend factor is [code]1.0 - second source color[/code]. Alpha blend "
"factor is [code]1.0 - second source alpha[/code]. Only relevant for dual-"
"source blending."
msgstr ""
"Коэффициент смешивания цветов равен [code]1.0 - second source color[/code]. "
"Коэффициент смешивания альфа равен [code]1.0 - second source alpha[/code]. "
"Актуально только для смешивания двух источников."

msgid ""
"Color and alpha blend factor is [code]second source alpha[/code]. Only "
"relevant for dual-source blending."
msgstr ""
"Фактор смешивания цвета и альфа-канала — [code]second source alpha[/code]. "
"Актуально только для смешивания двух источников."

msgid ""
"Color and alpha blend factor is [code]1.0 - second source alpha[/code]. Only "
"relevant for dual-source blending."
msgstr ""
"Коэффициент смешивания цвета и альфа-канала составляет [code]1.0 - second "
"source alpha[/code]. Актуально только для смешивания двух источников."

msgid "Represents the size of the [enum BlendFactor] enum."
msgstr "Представляет размер перечисления [enum BlendFactor]."

msgid "Additive blending operation ([code]source + destination[/code])."
msgstr "Операция аддитивного смешивания ([code]source + destination[/code])."

msgid "Subtractive blending operation ([code]source - destination[/code])."
msgstr "Операция субтрактивного смешивания ([code]source - destination[/code])."

msgid ""
"Reverse subtractive blending operation ([code]destination - source[/code])."
msgstr ""
"Операция обратного вычитающего смешивания([code]destination - source[/code])."

msgid "Minimum blending operation (keep the lowest value of the two)."
msgstr ""
"Минимальная операция смешивания (сохранить наименьшее значение из двух)."

msgid "Maximum blending operation (keep the highest value of the two)."
msgstr "Максимальное смешивание (сохранить наибольшее значение из двух)."

msgid "Represents the size of the [enum BlendOperation] enum."
msgstr "Представляет размер перечисления [enum BlendOperation]."

msgid "Allows dynamically changing the width of rendering lines."
msgstr "Позволяет динамически изменять ширину линий рендеринга."

msgid "Allows dynamically changing the depth bias."
msgstr "Позволяет динамически изменять смещение глубины."

msgid "Initial actions are solved automatically by RenderingDevice."
msgstr ""
"Первоначальные действия выполняются автоматически с помощью RenderingDevice."

msgid "Load the previous contents of the framebuffer."
msgstr "Загрузите предыдущее содержимое буфера кадра."

msgid "Clear the whole framebuffer or its specified region."
msgstr "Очистить весь буфер кадра или его указанную область."

msgid ""
"Ignore the previous contents of the framebuffer. This is the fastest option "
"if you'll overwrite all of the pixels and don't need to read any of them."
msgstr ""
"Игнорировать предыдущее содержимое буфера кадра. Это самый быстрый вариант, "
"если вы перезапишете все пиксели и вам не нужно их считывать."

msgid "Represents the size of the [enum InitialAction] enum."
msgstr "Представляет размер перечисления [enum InitialAction]."

msgid "Final actions are solved automatically by RenderingDevice."
msgstr ""
"Окончательные действия выполняются автоматически с помощью RenderingDevice."

msgid ""
"Store the result of the draw list in the framebuffer. This is generally what "
"you want to do."
msgstr ""
"Сохраните результат списка отрисовки в буфере кадра. Это то, что вы обычно "
"хотите сделать."

msgid ""
"Discard the contents of the framebuffer. This is the fastest option if you "
"don't need to use the results of the draw list."
msgstr ""
"Отменить содержимое буфера кадра. Это самый быстрый вариант, если вам не "
"нужно использовать результаты списка розыгрыша."

msgid "Represents the size of the [enum FinalAction] enum."
msgstr "Представляет размер перечисления [enum FinalAction]."

msgid ""
"Vertex shader stage. This can be used to manipulate vertices from a shader "
"(but not create new vertices)."
msgstr ""
"Стадия вершинного шейдера. Это можно использовать для манипулирования "
"вершинами из шейдера (но не для создания новых вершин)."

msgid ""
"Fragment shader stage (called \"pixel shader\" in Direct3D). This can be used "
"to manipulate pixels from a shader."
msgstr ""
"Этап фрагментного шейдера (называемый «пиксельным шейдером» в Direct3D). Его "
"можно использовать для манипулирования пикселями из шейдера."

msgid ""
"Tessellation control shader stage. This can be used to create additional "
"geometry from a shader."
msgstr ""
"Этап шейдера управления тесселяцией. Это можно использовать для создания "
"дополнительной геометрии из шейдера."

msgid ""
"Tessellation evaluation shader stage. This can be used to create additional "
"geometry from a shader."
msgstr ""
"Этап шейдера оценки тесселяции. Это можно использовать для создания "
"дополнительной геометрии из шейдера."

msgid ""
"Compute shader stage. This can be used to run arbitrary computing tasks in a "
"shader, performing them on the GPU instead of the CPU."
msgstr ""
"Этап вычислительного шейдера. Это может быть использовано для запуска "
"произвольных вычислительных задач в шейдере, выполняя их на GPU вместо CPU."

msgid "Represents the size of the [enum ShaderStage] enum."
msgstr "Представляет размер перечисления [enum ShaderStage]."

msgid "Vertex shader stage bit (see also [constant SHADER_STAGE_VERTEX])."
msgstr ""
"Бит этапа вершинного шейдера (см. также [constant SHADER_STAGE_VERTEX])."

msgid "Fragment shader stage bit (see also [constant SHADER_STAGE_FRAGMENT])."
msgstr ""
"Бит этапа фрагментного шейдера (см. также [constant SHADER_STAGE_FRAGMENT])."

msgid ""
"Tessellation control shader stage bit (see also [constant "
"SHADER_STAGE_TESSELATION_CONTROL])."
msgstr ""
"Бит этапа шейдера управления тесселяцией (см. также [constant "
"SHADER_STAGE_TESSELATION_CONTROL])."

msgid ""
"Tessellation evaluation shader stage bit (see also [constant "
"SHADER_STAGE_TESSELATION_EVALUATION])."
msgstr ""
"Бит этапа шейдера оценки тесселяции (см. также [constant "
"SHADER_STAGE_TESSELATION_EVALUATION])."

msgid "Compute shader stage bit (see also [constant SHADER_STAGE_COMPUTE])."
msgstr ""
"Вычислить бит этапа шейдера (см. также [constant SHADER_STAGE_COMPUTE])."

msgid ""
"Khronos' GLSL shading language (used natively by OpenGL and Vulkan). This is "
"the language used for core Godot shaders."
msgstr ""
"Язык шейдеров Khronos GLSL (используется изначально OpenGL и Vulkan). Это "
"язык, используемый для основных шейдеров Godot."

msgid ""
"Microsoft's High-Level Shading Language (used natively by Direct3D, but can "
"also be used in Vulkan)."
msgstr ""
"Язык шейдеров высокого уровня от Microsoft (используется изначально в "
"Direct3D, но может также использоваться в Vulkan)."

msgid "Boolean specialization constant."
msgstr "Константа логической специализации."

msgid "Integer specialization constant."
msgstr "Целочисленная константа специализации."

msgid "Floating-point specialization constant."
msgstr "Константа специализации с плавающей точкой."

msgid "Support for MetalFX spatial upscaling."
msgstr "Поддержка пространственного (spatial) увеличения разрешения MetalFX."

msgid "Support for MetalFX temporal upscaling."
msgstr "Поддержка MetalFX temporal upscaling."

msgid "Features support for buffer device address extension."
msgstr "Поддерживает расширение адреса буферного устройства."

msgid "Support for 32-bit image atomic operations."
msgstr "Поддержка 32-разрядных атомных операций изображения."

msgid "Maximum number of uniform sets that can be bound at a given time."
msgstr ""
"Максимальное количество комплектов униформы, которые можно связать "
"одновременно."

msgid ""
"Maximum number of color framebuffer attachments that can be used at a given "
"time."
msgstr ""
"Максимальное количество подключений цветного кадрового буфера, которые можно "
"использовать одновременно."

msgid "Maximum number of textures that can be used per uniform set."
msgstr ""
"Максимальное количество текстур, которые можно использовать в одном наборе "
"униформы."

msgid "Maximum number of samplers that can be used per uniform set."
msgstr ""
"Максимальное количество пробоотборников, которые можно использовать в одном "
"наборе."

msgid ""
"Maximum number of [url=https://vkguide.dev/docs/chapter-4/"
"storage_buffers/]storage buffers[/url] per uniform set."
msgstr ""
"Максимальное количество [url=https://vkguide.dev/docs/chapter-4/"
"storage_buffers/]буферов хранения[/url] на унифицированный набор."

msgid "Maximum number of storage images per uniform set."
msgstr ""
"Максимальное количество хранимых изображений на один унифицированный набор."

msgid "Maximum number of uniform buffers per uniform set."
msgstr "Максимальное количество однородных буферов на однородный набор."

msgid "Maximum index for an indexed draw command."
msgstr "Максимальный индекс для индексированной команды рисования."

msgid "Maximum height of a framebuffer (in pixels)."
msgstr "Максимальная высота буфера кадра (в пикселях)."

msgid "Maximum width of a framebuffer (in pixels)."
msgstr "Максимальная ширина буфера кадра (в пикселях)."

msgid "Maximum number of texture array layers."
msgstr "Максимальное количество слоев массива текстур."

msgid ""
"Maximum supported 1-dimensional texture size (in pixels on a single axis)."
msgstr ""
"Максимальный поддерживаемый размер одномерной текстуры (в пикселях по одной "
"оси)."

msgid ""
"Maximum supported 2-dimensional texture size (in pixels on a single axis)."
msgstr ""
"Максимальный поддерживаемый размер двумерной текстуры (в пикселях по одной "
"оси)."

msgid ""
"Maximum supported 3-dimensional texture size (in pixels on a single axis)."
msgstr ""
"Максимальный поддерживаемый размер трёхмерной текстуры (в пикселях по одной "
"оси)."

msgid ""
"Maximum supported cubemap texture size (in pixels on a single axis of a "
"single face)."
msgstr ""
"Максимальный поддерживаемый размер текстуры cubemap (в пикселях на одной оси "
"одной грани)."

msgid "Maximum number of textures per shader stage."
msgstr "Максимальное количество текстур на этап шейдера."

msgid "Maximum number of samplers per shader stage."
msgstr "Максимальное количество сэмплеров на одну стадию шейдера."

msgid ""
"Maximum number of [url=https://vkguide.dev/docs/chapter-4/"
"storage_buffers/]storage buffers[/url] per shader stage."
msgstr ""
"Максимальное количество [url=https://vkguide.dev/docs/chapter-4/"
"storage_buffers/]буферов хранения[/url] на этап шейдера."

msgid "Maximum number of storage images per shader stage."
msgstr "Максимальное количество хранимых изображений на каждом этапе шейдера."

msgid ""
"Maximum size of a push constant. A lot of devices are limited to 128 bytes, "
"so try to avoid exceeding 128 bytes in push constants to ensure compatibility "
"even if your GPU is reporting a higher value."
msgstr ""
"Максимальный размер константы push. Многие устройства ограничены 128 байтами, "
"поэтому старайтесь избегать превышения 128 байт в константах push, чтобы "
"обеспечить совместимость, даже если ваш графический процессор сообщает более "
"высокое значение."

msgid "Maximum size of a uniform buffer."
msgstr "Максимальный размер равномерного буфера."

msgid "Maximum vertex input attribute offset."
msgstr "Максимальное смещение атрибута входной вершины."

msgid "Maximum number of vertex input attributes."
msgstr "Максимальное количество входных атрибутов вершин."

msgid "Maximum number of vertex input bindings."
msgstr "Максимальное количество входных привязок вершин."

msgid "Maximum vertex input binding stride."
msgstr "Максимальный шаг привязки входных вершин."

msgid "Minimum uniform buffer offset alignment."
msgstr "Минимальное равномерное выравнивание смещения буфера."

msgid "Maximum shared memory size for compute shaders."
msgstr "Максимальный размер разделяемой памяти для вычислительных шейдеров."

msgid "Maximum number of workgroups for compute shaders on the X axis."
msgstr ""
"Максимальное количество рабочих групп для вычислительных шейдеров по оси X."

msgid "Maximum number of workgroups for compute shaders on the Y axis."
msgstr ""
"Максимальное количество рабочих групп для вычислительных шейдеров по оси Y."

msgid "Maximum number of workgroups for compute shaders on the Z axis."
msgstr ""
"Максимальное количество рабочих групп для вычислительных шейдеров по оси Z."

msgid "Maximum number of workgroup invocations for compute shaders."
msgstr ""
"Максимальное количество вызовов рабочей группы для вычислительных шейдеров."

msgid "Maximum workgroup size for compute shaders on the X axis."
msgstr ""
"Максимальный размер рабочей группы для вычислительных шейдеров по оси X."

msgid "Maximum workgroup size for compute shaders on the Y axis."
msgstr ""
"Максимальный размер рабочей группы для вычислительных шейдеров по оси Y."

msgid "Maximum workgroup size for compute shaders on the Z axis."
msgstr ""
"Максимальный размер рабочей группы для вычислительных шейдеров по оси Z."

msgid "Maximum viewport width (in pixels)."
msgstr "Максимальная ширина области просмотра (в пикселях)."

msgid "Maximum viewport height (in pixels)."
msgstr "Максимальная высота области просмотра (в пикселях)."

msgid ""
"Returns the smallest value for [member ProjectSettings.rendering/scaling_3d/"
"scale] when using the MetalFX temporal upscaler.\n"
"[b]Note:[/b] The returned value is multiplied by a factor of [code]1000000[/"
"code] to preserve 6 digits of precision. It must be divided by "
"[code]1000000.0[/code] to convert the value to a floating point number."
msgstr ""
"Возвращает наименьшее значение для [member ProjectSettings.rendering/"
"scaling_3d/scale] при использовании временного апскейлера MetalFX.\n"
"[b]Примечание:[/b] Возвращаемое значение умножается на коэффициент "
"[code]1000000[/code] для сохранения 6 цифр точности. Его необходимо разделить "
"на [code]1000000.0[/code] для преобразования значения в число с плавающей "
"точкой."

msgid ""
"Returns the largest value for [member ProjectSettings.rendering/scaling_3d/"
"scale] when using the MetalFX temporal upscaler.\n"
"[b]Note:[/b] The returned value is multiplied by a factor of [code]1000000[/"
"code] to preserve 6 digits of precision. It must be divided by "
"[code]1000000.0[/code] to convert the value to a floating point number."
msgstr ""
"Возвращает наибольшее значение для [member ProjectSettings.rendering/"
"scaling_3d/scale] при использовании временного апскейлера MetalFX.\n"
"[b]Примечание:[/b] Возвращаемое значение умножается на коэффициент "
"[code]1000000[/code] для сохранения 6 цифр точности. Его необходимо разделить "
"на [code]1000000.0[/code] для преобразования значения в число с плавающей "
"точкой."

msgid "Memory taken by textures."
msgstr "Память занята текстурами."

msgid "Memory taken by buffers."
msgstr "Память, занятая буферами."

msgid ""
"Total memory taken. This is greater than the sum of [constant "
"MEMORY_TEXTURES] and [constant MEMORY_BUFFERS], as it also includes "
"miscellaneous memory usage."
msgstr ""
"Общая занятая память. Это больше, чем сумма [constant MEMORY_TEXTURES] и "
"[constant MEMORY_BUFFERS], так как включает в себя также прочее использование "
"памяти."

msgid "Returned by functions that return an ID if a value is invalid."
msgstr ""
"Возвращается функциями, которые возвращают идентификатор, если значение "
"недействительно."

msgid "Returned by functions that return a format ID if a value is invalid."
msgstr ""
"Возвращается функциями, которые возвращают идентификатор формата, если "
"значение недопустимо."

msgid "No breadcrumb marker will be added."
msgstr "Маркер хлебной крошки (breadcrumb) не будет добавлен."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"REFLECTION_PROBES\"[/code] for added context as to when the crash "
"occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"REFLECTION_PROBES\"[/code] для добавленного контекста в "
"отношении того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"SKY_PASS\"[/code] for added context as to when the crash occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"SKY_PASS\"[/code] для добавленного контекста в отношении "
"того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"LIGHTMAPPER_PASS\"[/code] for added context as to when the crash "
"occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"LIGHTMAPPER_PASS\"[/code] для добавленного контекста в "
"отношении того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"SHADOW_PASS_DIRECTIONAL\"[/code] for added context as to when the "
"crash occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"SHADOW_PASS_DIRECTIONAL\"[/code] для добавленного контекста "
"в отношении того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"SHADOW_PASS_CUBE\"[/code] for added context as to when the crash "
"occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"SHADOW_PASS_CUBE\"[/code] для добавленного контекста в "
"отношении того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"OPAQUE_PASS\"[/code] for added context as to when the crash occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"OPAQUE_PASS\"[/code] для добавленного контекста в отношении "
"того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"ALPHA_PASS\"[/code] for added context as to when the crash occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"ALPHA_PASS\"[/code] для добавленного контекста в отношении "
"того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"TRANSPARENT_PASS\"[/code] for added context as to when the crash "
"occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"TRANSPARENT_PASS\"[/code] для добавленного контекста в "
"отношении того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"POST_PROCESSING_PASS\"[/code] for added context as to when the crash "
"occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"POST_PROCESSING_PASS\"[/code] для добавленного контекста в "
"отношении того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"BLIT_PASS\"[/code] for added context as to when the crash occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"BLIT_PASS\"[/code] для добавленного контекста в отношении "
"того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"UI_PASS\"[/code] for added context as to when the crash occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"UI_PASS\"[/code] для добавленного контекста в отношении "
"того, когда произошел сбой."

msgid ""
"During a GPU crash in dev or debug mode, Godot's error message will include "
"[code]\"DEBUG_PASS\"[/code] for added context as to when the crash occurred."
msgstr ""
"Во время сбоя GPU в dev или режиме отладки, сообщение об ошибке Godot будет "
"включать [code]\"DEBUG_PASS\"[/code] для добавленного контекста в отношении "
"того, когда произошел сбой."

msgid "Do not clear or ignore any attachments."
msgstr "Не удаляет и не игнорирует никакие вложения."

msgid "Clear the first color attachment."
msgstr "Очистит первую цветовую вставку."

msgid "Clear the second color attachment."
msgstr "Очистит вторую цветную вставку."

msgid "Clear the third color attachment."
msgstr "Очистит третью цветовую вставку."

msgid "Clear the fourth color attachment."
msgstr "Очистит четвертую цветовую вставку."

msgid "Clear the fifth color attachment."
msgstr "Очистит пятую цветовую насадку."

msgid "Clear the sixth color attachment."
msgstr "Очистит шестую цветовую вставку."

msgid "Clear the seventh color attachment."
msgstr "Очистите седьмую цветовую насадку."

msgid "Clear the eighth color attachment."
msgstr "Очистит восьмую цветовую насадку."

msgid "Mask for clearing all color attachments."
msgstr "Маска для очистки всех цветных насадок."

msgid "Clear all color attachments."
msgstr "Удалить все цветные вложения."

msgid "Ignore the previous contents of the first color attachment."
msgstr "Игнорируйте предыдущее содержимое первого цветного вложения."

msgid "Ignore the previous contents of the second color attachment."
msgstr "Игнорируйте предыдущее содержимое второго цветного вложения."

msgid "Ignore the previous contents of the third color attachment."
msgstr ""
"Не обращайте внимания на предыдущее содержимое третьего цветного вложения."

msgid "Ignore the previous contents of the fourth color attachment."
msgstr ""
"Не обращайте внимания на предыдущее содержимое четвертого цветного вложения."

msgid "Ignore the previous contents of the fifth color attachment."
msgstr ""
"Не обращайте внимания на предыдущее содержимое пятого цветного вложения."

msgid "Ignore the previous contents of the sixth color attachment."
msgstr ""
"Не обращайте внимания на предыдущее содержимое шестого цветного вложения."

msgid "Ignore the previous contents of the seventh color attachment."
msgstr ""
"Не обращайте внимания на предыдущее содержимое седьмого цветного вложения."

msgid "Ignore the previous contents of the eighth color attachment."
msgstr ""
"Не обращайте внимания на предыдущее содержимое восьмого цветного вложения."

msgid "Mask for ignoring all the previous contents of the color attachments."
msgstr "Маска для игнорирования всего предыдущего содержимого цветных вложений."

msgid "Ignore the previous contents of all color attachments."
msgstr "Игнорируйте предыдущее содержимое всех цветных вложений."

msgid "Clear the depth attachment."
msgstr "Очистите насадку для измерения глубины."

msgid "Ignore the previous contents of the depth attachment."
msgstr "Игнорируйте предыдущее содержимое вложения глубины."

msgid "Clear the stencil attachment."
msgstr "Снимите трафаретную насадку."

msgid "Ignore the previous contents of the stencil attachment."
msgstr "Не обращайте внимания на предыдущее содержимое трафарета."

msgid "Clear all attachments."
msgstr "Удалить все вложения."

msgid "Ignore the previous contents of all attachments."
msgstr "Игнорируйте предыдущее содержимое всех вложений."

msgid "Server for anything visible."
msgstr "Сервер для всего видимого."

msgid ""
"The rendering server is the API backend for everything visible. The whole "
"scene system mounts on it to display. The rendering server is completely "
"opaque: the internals are entirely implementation-specific and cannot be "
"accessed.\n"
"The rendering server can be used to bypass the scene/[Node] system entirely. "
"This can improve performance in cases where the scene system is the "
"bottleneck, but won't improve performance otherwise (for instance, if the GPU "
"is already fully utilized).\n"
"Resources are created using the [code]*_create[/code] functions. These "
"functions return [RID]s which are not references to the objects themselves, "
"but opaque [i]pointers[/i] towards these objects.\n"
"All objects are drawn to a viewport. You can use the [Viewport] attached to "
"the [SceneTree] or you can create one yourself with [method viewport_create]. "
"When using a custom scenario or canvas, the scenario or canvas needs to be "
"attached to the viewport using [method viewport_set_scenario] or [method "
"viewport_attach_canvas].\n"
"[b]Scenarios:[/b] In 3D, all visual objects must be associated with a "
"scenario. The scenario is a visual representation of the world. If accessing "
"the rendering server from a running game, the scenario can be accessed from "
"the scene tree from any [Node3D] node with [method Node3D.get_world_3d]. "
"Otherwise, a scenario can be created with [method scenario_create].\n"
"Similarly, in 2D, a canvas is needed to draw all canvas items.\n"
"[b]3D:[/b] In 3D, all visible objects are comprised of a resource and an "
"instance. A resource can be a mesh, a particle system, a light, or any other "
"3D object. In order to be visible resources must be attached to an instance "
"using [method instance_set_base]. The instance must also be attached to the "
"scenario using [method instance_set_scenario] in order to be visible. "
"RenderingServer methods that don't have a prefix are usually 3D-specific (but "
"not always).\n"
"[b]2D:[/b] In 2D, all visible objects are some form of canvas item. In order "
"to be visible, a canvas item needs to be the child of a canvas attached to a "
"viewport, or it needs to be the child of another canvas item that is "
"eventually attached to the canvas. 2D-specific RenderingServer methods "
"generally start with [code]canvas_*[/code].\n"
"[b]Headless mode:[/b] Starting the engine with the [code]--headless[/code] "
"[url=$DOCS_URL/tutorials/editor/command_line_tutorial.html]command line "
"argument[/url] disables all rendering and window management functions. Most "
"functions from [RenderingServer] will return dummy values in this case."
msgstr ""
"Сервер рендеринга — это API backend для всего видимого. Вся система сцены "
"монтируется на нем для отображения. Сервер рендеринга полностью непрозрачен: "
"внутренности полностью зависят от реализации и не могут быть доступны.\n"
"Сервер рендеринга может быть использован для полного обхода системы сцены/"
"[Node]. Это может улучшить производительность в случаях, когда система сцены "
"является узким местом, но не улучшит производительность в противном случае "
"(например, если GPU уже полностью загружен).\n"
"Ресурсы создаются с помощью функций [code]*_create[/code]. Эти функции "
"возвращают [RID]-ы, которые не являются ссылками на сами объекты, а являются "
"непрозрачными [i]указателями[/i] на эти объекты..\n"
"Все объекты рисуются в области просмотра. Вы можете использовать [Viewport], "
"прикрепленный к [SceneTree], или создать его самостоятельно с помощью [method "
"viewport_create]. При использовании пользовательского сценария или холста "
"сценарий или холст необходимо прикрепить к области просмотра с помощью "
"[method viewport_set_scenario] или [method viewport_attach_canvas].\n"
"[b]Сценарии:[/b] В 3D все визуальные объекты должны быть связаны со "
"сценарием. Сценарий — это визуальное представление мира. При доступе к "
"серверу рендеринга из запущенной игры доступ к сценарию можно получить из "
"дерева сцены из любого узла [Node3D] с помощью [method Node3D.get_world_3d]. "
"В противном случае сценарий можно создать с помощью [method "
"scenario_create].\n"
"Аналогично, в 2D для прорисовки всех элементов холста необходим холст.\n"
"[b]3D:[/b] В 3D все видимые объекты состоят из ресурса и экземпляра. Ресурс "
"может быть сеткой, системой частиц, источником света или любым другим 3D-"
"объектом. Чтобы быть видимыми, ресурсы должны быть прикреплены к экземпляру с "
"помощью [method instance_set_base]. Экземпляр также должен быть прикреплен к "
"сценарию с помощью [method instance_set_scenario], чтобы быть видимым. Методы "
"RenderingServer, не имеющие префикса, обычно специфичны для 3D (но не "
"всегда).\n"
"[b]2D:[/b] В 2D все видимые объекты являются некоторой формой элемента "
"холста. Чтобы быть видимым, элемент холста должен быть дочерним элементом "
"холста, прикрепленного к окну просмотра, или он должен быть дочерним "
"элементом другого элемента холста, который в конечном итоге прикреплен к "
"холсту. Методы RenderingServer, специфичные для 2D, обычно начинаются с "
"[code]canvas_*[/code].\n"
"[b]Режим Headless:[/b] Запуск движка с [code]--headless[/code] [url=$DOCS_URL/"
"tutorials/editor/command_line_tutorial.html]аргументом командной строки[/url] "
"отключает все функции рендеринга и управления окнами. Большинство функций из "
"[RenderingServer] в этом случае будут возвращать фиктивные значения."

msgid "Optimization using Servers"
msgstr "Оптимизация с помощью серверов"

msgid ""
"Bakes the material data of the Mesh passed in the [param base] parameter with "
"optional [param material_overrides] to a set of [Image]s of size [param "
"image_size]. Returns an array of [Image]s containing material properties as "
"specified in [enum BakeChannels]."
msgstr ""
"Запекает данные материала сетки, переданные в параметре [param base] с "
"необязательным [param material_overrides], в набор [Image]-ов размером [param "
"image_size]. Возвращает массив [Image], содержащий свойства материала, "
"указанные в [enum BakeChannels]."

msgid ""
"As the RenderingServer actual logic may run on a separate thread, accessing "
"its internals from the main (or any other) thread will result in errors. To "
"make it easier to run code that can safely access the rendering internals "
"(such as [RenderingDevice] and similar RD classes), push a callable via this "
"function so it will be executed on the render thread."
msgstr ""
"Поскольку реальная логика RenderingServer может выполняться в отдельном "
"потоке, доступ к его внутренним функциям из основного (или любого другого) "
"потока приведёт к ошибкам. Чтобы упростить запуск кода, который может "
"безопасно обращаться к внутренним функциям рендеринга (например, "
"[RenderingDevice] и аналогичным классам RD), передайте вызываемый объект "
"через эту функцию, чтобы он выполнялся в потоке рендеринга."

msgid ""
"Creates a camera attributes object and adds it to the RenderingServer. It can "
"be accessed with the RID that is returned. This RID will be used in all "
"[code]camera_attributes_[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent resource is [CameraAttributes]."
msgstr ""
"Создает объект атрибутов камеры и добавляет его в RenderingServer. К нему "
"можно получить доступ с помощью возвращаемого RID. Этот RID будет "
"использоваться во всех функциях [code]camera_attributes_[/code] "
"RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [CameraAttributes]."

msgid ""
"Sets the parameters to use with the auto-exposure effect. These parameters "
"take on the same meaning as their counterparts in [CameraAttributes] and "
"[CameraAttributesPractical]."
msgstr ""
"Устанавливает параметры для использования с эффектом автоэкспозиции. Эти "
"параметры имеют то же значение, что и их аналоги в [CameraAttributes] и "
"[CameraAttributesPractical]."

msgid ""
"Sets the parameters to use with the DOF blur effect. These parameters take on "
"the same meaning as their counterparts in [CameraAttributesPractical]."
msgstr ""
"Устанавливает параметры, которые будут использоваться с эффектом размытия "
"глубины резкости (DOF). Эти параметры имеют то же значение, что и их аналоги "
"в [CameraAttributesPractical]."

msgid ""
"Sets the shape of the DOF bokeh pattern to [param shape]. Different shapes "
"may be used to achieve artistic effect, or to meet performance targets."
msgstr ""
"Устанавливает форму узора боке DOF на [param shape]. Различные формы могут "
"использоваться для достижения художественного эффекта или для достижения "
"целевых показателей производительности."

msgid ""
"Sets the quality level of the DOF blur effect to [param quality]. [param "
"use_jitter] can be used to jitter samples taken during the blur pass to hide "
"artifacts at the cost of looking more fuzzy."
msgstr ""
"Устанавливает уровень качества эффекта размытия DOF на [param quality]. "
"[param use_jitter] можно использовать для дрожания образцов, взятых во время "
"прохода размытия, чтобы скрыть артефакты за счет большей размытости."

msgid ""
"Sets the exposure values that will be used by the renderers. The "
"normalization amount is used to bake a given Exposure Value (EV) into "
"rendering calculations to reduce the dynamic range of the scene.\n"
"The normalization factor can be calculated from exposure value (EV100) as "
"follows:\n"
"[codeblock]\n"
"func get_exposure_normalization(ev100: float):\n"
"\treturn 1.0 / (pow(2.0, ev100) * 1.2)\n"
"[/codeblock]\n"
"The exposure value can be calculated from aperture (in f-stops), shutter "
"speed (in seconds), and sensitivity (in ISO) as follows:\n"
"[codeblock]\n"
"func get_exposure(aperture: float, shutter_speed: float, sensitivity: "
"float):\n"
"\treturn log((aperture * aperture) / shutter_speed * (100.0 / sensitivity)) / "
"log(2)\n"
"[/codeblock]"
msgstr ""
"Устанавливает значения экспозиции, которые будут использоваться рендерерами. "
"Величина нормализации используется для включения заданного значения "
"экспозиции (EV) в расчеты рендеринга для уменьшения динамического диапазона "
"сцены. \n"
"Коэффициент нормализации можно рассчитать из значения экспозиции (EV100) "
"следующим образом:\n"
"[codeblock]\n"
"func get_exposure_normalization(ev100: float):\n"
"\treturn 1.0 / (pow(2.0, ev100) * 1.2)\n"
"[/codeblock]\n"
"Значение экспозиции можно рассчитать на основе диафрагмы (в ступенях), "
"выдержки (в секундах) и чувствительности (в ISO) следующим образом:\n"
"[codeblock]\n"
"func get_exposure(aperture: float, shutter_speed: float, sensitivity: "
"float):\n"
"\treturn log((aperture * aperture) / shutter_speed * (100.0 / sensitivity)) / "
"log(2)\n"
"[/codeblock]"

msgid ""
"Creates a 3D camera and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]camera_*[/"
"code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent node is [Camera3D]."
msgstr ""
"Создает 3D-камеру и добавляет ее в RenderingServer. Доступ к ней можно "
"получить с помощью возвращаемого RID. Этот RID будет использоваться во всех "
"функциях [code]camera_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный узел — [Camera3D]."

msgid ""
"Sets the camera_attributes created with [method camera_attributes_create] to "
"the given camera."
msgstr ""
"Устанавливает camera_attributes, созданные с помощью [method "
"camera_attributes_create], для указанной камеры."

msgid ""
"Sets the compositor used by this camera. Equivalent to [member "
"Camera3D.compositor]."
msgstr ""
"Устанавливает композитор, используемый этой камерой. Эквивалентно [member "
"Camera3D.compositor]."

msgid ""
"Sets the cull mask associated with this camera. The cull mask describes which "
"3D layers are rendered by this camera. Equivalent to [member "
"Camera3D.cull_mask]."
msgstr ""
"Устанавливает маску отбраковки, связанную с этой камерой. Маска отбраковки "
"описывает, какие 3D-слои визуализируются этой камерой. Эквивалентно [member "
"Camera3D.cull_mask]."

msgid ""
"Sets the environment used by this camera. Equivalent to [member "
"Camera3D.environment]."
msgstr ""
"Устанавливает среду, используемую этой камерой. Эквивалентно [member "
"Camera3D.environment]."

msgid ""
"Sets camera to use frustum projection. This mode allows adjusting the [param "
"offset] argument to create \"tilted frustum\" effects."
msgstr ""
"Устанавливает камеру для использования проекции усеченной пирамиды. Этот "
"режим позволяет настраивать аргумент [param offset] для создания эффектов "
"\"наклонной пирамиды\"."

msgid ""
"Sets camera to use orthogonal projection, also known as orthographic "
"projection. Objects remain the same size on the screen no matter how far away "
"they are."
msgstr ""
"Устанавливает камеру на использование ортогональной проекции, также известной "
"как ортографическая проекция. Объекты остаются того же размера на экране, "
"независимо от того, как далеко они находятся."

msgid ""
"Sets camera to use perspective projection. Objects on the screen becomes "
"smaller when they are far away."
msgstr ""
"Устанавливает камеру на использование перспективной проекции. Объекты на "
"экране становятся меньше, когда они находятся далеко."

msgid "Sets [Transform3D] of camera."
msgstr "Устанавливает [Transform3D] камеры."

msgid ""
"If [code]true[/code], preserves the horizontal aspect ratio which is "
"equivalent to [constant Camera3D.KEEP_WIDTH]. If [code]false[/code], "
"preserves the vertical aspect ratio which is equivalent to [constant "
"Camera3D.KEEP_HEIGHT]."
msgstr ""
"Если [code]true[/code], сохраняет горизонтальное соотношение сторон, которое "
"эквивалентно [constant Camera3D.KEEP_WIDTH]. Если [code]false[/code], "
"сохраняет вертикальное соотношение сторон, которое эквивалентно [constant "
"Camera3D.KEEP_HEIGHT]."

msgid ""
"Creates a canvas and returns the assigned [RID]. It can be accessed with the "
"RID that is returned. This RID will be used in all [code]canvas_*[/code] "
"RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"Canvas has no [Resource] or [Node] equivalent."
msgstr ""
"Создает холст и возвращает назначенный [RID]. К нему можно получить доступ с "
"помощью возвращаемого RID. Этот RID будет использоваться во всех функциях "
"[code]canvas_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"У холста нет эквивалента [Resource] или [Node]."

msgid ""
"Draws a circle on the [CanvasItem] pointed to by the [param item] [RID]. See "
"also [method CanvasItem.draw_circle]."
msgstr ""
"Рисует круг на [CanvasItem], на который указывает [param item] [RID]. См. "
"также [method CanvasItem.draw_circle]."

msgid ""
"If [param ignore] is [code]true[/code], ignore clipping on items drawn with "
"this canvas item until this is called again with [param ignore] set to "
"[code]false[/code]."
msgstr ""
"Если [param ignore] имеет значение [code]true[/code], игнорировать обрезку "
"элементов, нарисованных с помощью этого элемента холста, пока это не будет "
"вызвано снова с [param ignore], установленным на [code]false[/code]."

msgid "See also [method CanvasItem.draw_lcd_texture_rect_region]."
msgstr "См. также [method CanvasItem.draw_lcd_texture_rect_region]."

msgid ""
"Draws a line on the [CanvasItem] pointed to by the [param item] [RID]. See "
"also [method CanvasItem.draw_line]."
msgstr ""
"Рисует линию на [CanvasItem], на которую указывает [param item] [RID]. См. "
"также [method CanvasItem.draw_line]."

msgid ""
"Draws a mesh created with [method mesh_create] with given [param transform], "
"[param modulate] color, and [param texture]. This is used internally by "
"[MeshInstance2D]."
msgstr ""
"Рисует сетку, созданную с помощью [method mesh_create] с заданными [param "
"transform], [param modulate] color и [param texture]. Используется внутренне "
"[MeshInstance2D]."

msgid "See also [method CanvasItem.draw_msdf_texture_rect_region]."
msgstr "См. также [method CanvasItem.draw_msdf_texture_rect_region]."

msgid ""
"Draws a 2D multiline on the [CanvasItem] pointed to by the [param item] "
"[RID]. See also [method CanvasItem.draw_multiline] and [method "
"CanvasItem.draw_multiline_colors]."
msgstr ""
"Рисует 2D-мультилинию на [CanvasItem], на которую указывает [param item] "
"[RID]. См. также [method CanvasItem.draw_multiline] и [method "
"CanvasItem.draw_multiline_colors]."

msgid ""
"Draws a 2D [MultiMesh] on the [CanvasItem] pointed to by the [param item] "
"[RID]. See also [method CanvasItem.draw_multimesh]."
msgstr ""
"Рисует 2D [MultiMesh] на [CanvasItem], на который указывает [param item] "
"[RID]. См. также [method CanvasItem.draw_multimesh]."

msgid ""
"Draws a nine-patch rectangle on the [CanvasItem] pointed to by the [param "
"item] [RID]."
msgstr ""
"Рисует прямоугольник из девяти частей на [CanvasItem], на который указывает "
"[param item] [RID]."

msgid ""
"Draws particles on the [CanvasItem] pointed to by the [param item] [RID]."
msgstr ""
"Рисует частицы на [CanvasItem], на который указывает [param item] [RID]."

msgid ""
"Draws a 2D polygon on the [CanvasItem] pointed to by the [param item] [RID]. "
"If you need more flexibility (such as being able to use bones), use [method "
"canvas_item_add_triangle_array] instead. See also [method "
"CanvasItem.draw_polygon].\n"
"[b]Note:[/b] If you frequently redraw the same polygon with a large number of "
"vertices, consider pre-calculating the triangulation with [method "
"Geometry2D.triangulate_polygon] and using [method CanvasItem.draw_mesh], "
"[method CanvasItem.draw_multimesh], or [method "
"canvas_item_add_triangle_array]."
msgstr ""
"Рисует 2D-полигон на [CanvasItem], на который указывает [param item] [RID]. "
"Если вам нужна большая гибкость (например, возможность использовать кости), "
"используйте [method canvas_item_add_triangle_array]. См. также [method "
"CanvasItem.draw_polygon].\n"
"[b]Примечание:[/b] Если вы часто перерисовываете один и тот же полигон с "
"большим количеством вершин, рассмотрите возможность предварительного расчета "
"триангуляции с помощью [method Geometry2D.triangulate_polygon] и "
"использования [method CanvasItem.draw_mesh], [method "
"CanvasItem.draw_multimesh] или [method canvas_item_add_triangle_array]."

msgid ""
"Draws a 2D polyline on the [CanvasItem] pointed to by the [param item] [RID]. "
"See also [method CanvasItem.draw_polyline] and [method "
"CanvasItem.draw_polyline_colors]."
msgstr ""
"Рисует 2D-полилинию на [CanvasItem], на который указывает [param item] [RID]. "
"См. также [method CanvasItem.draw_polyline] и [method "
"CanvasItem.draw_polyline_colors]."

msgid ""
"Draws a 2D primitive on the [CanvasItem] pointed to by the [param item] "
"[RID]. See also [method CanvasItem.draw_primitive]."
msgstr ""
"Рисует 2D-примитив на [CanvasItem], на который указывает [param item] [RID]. "
"См. также [method CanvasItem.draw_primitive]."

msgid ""
"Draws a rectangle on the [CanvasItem] pointed to by the [param item] [RID]. "
"See also [method CanvasItem.draw_rect]."
msgstr ""
"Рисует прямоугольник на [CanvasItem], на который указывает [param item] "
"[RID]. См. также [method CanvasItem.draw_rect]."

msgid ""
"Sets a [Transform2D] that will be used to transform subsequent canvas item "
"commands."
msgstr ""
"Устанавливает [Transform2D], который будет использоваться для преобразования "
"последующих команд элемента холста."

msgid ""
"Draws a 2D textured rectangle on the [CanvasItem] pointed to by the [param "
"item] [RID]. See also [method CanvasItem.draw_texture_rect] and [method "
"Texture2D.draw_rect]."
msgstr ""
"Рисует 2D-текстурированный прямоугольник на [CanvasItem], на который "
"указывает [param item] [RID]. См. также [method CanvasItem.draw_texture_rect] "
"и [method Texture2D.draw_rect]."

msgid ""
"Draws the specified region of a 2D textured rectangle on the [CanvasItem] "
"pointed to by the [param item] [RID]. See also [method "
"CanvasItem.draw_texture_rect_region] and [method Texture2D.draw_rect_region]."
msgstr ""
"Рисует указанную область 2D-текстурированного прямоугольника на [CanvasItem], "
"на который указывает [param item] [RID]. См. также [method "
"CanvasItem.draw_texture_rect_region] и [method Texture2D.draw_rect_region]."

msgid ""
"Draws a triangle array on the [CanvasItem] pointed to by the [param item] "
"[RID]. This is internally used by [Line2D] and [StyleBoxFlat] for rendering. "
"[method canvas_item_add_triangle_array] is highly flexible, but more complex "
"to use than [method canvas_item_add_polygon].\n"
"[b]Note:[/b] If [param count] is set to a non-negative value, only the first "
"[code]count * 3[/code] indices (corresponding to [code skip-lint]count[/code] "
"triangles) will be drawn. Otherwise, all indices are drawn."
msgstr ""
"Рисует массив треугольников на [CanvasItem], на который указывает [param "
"item] [RID]. Он используется внутренне [Line2D] и [StyleBoxFlat] для "
"рендеринга. [method canvas_item_add_triangle_array] очень гибкий, но более "
"сложный в использовании, чем [method canvas_item_add_polygon].\n"
"[b]Примечание:[/b] Если [param count] установлен на неотрицательное значение, "
"будут нарисованы только первые [code]count * 3[/code] индексы "
"(соответствующие [code skip-lint]count[/code] треугольников). В противном "
"случае нарисованы все индексы."

msgid "Attaches a skeleton to the [CanvasItem]. Removes the previous skeleton."
msgstr "Прикрепляет скелет к [CanvasItem]. Удаляет предыдущий скелет."

msgid "Clears the [CanvasItem] and removes all commands in it."
msgstr "Очищает [CanvasItem] и удаляет все команды в нем."

msgid ""
"Creates a new CanvasItem instance and returns its [RID]. It can be accessed "
"with the RID that is returned. This RID will be used in all "
"[code]canvas_item_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent node is [CanvasItem]."
msgstr ""
"Создает новый экземпляр CanvasItem и возвращает его [RID]. К нему можно "
"получить доступ с помощью возвращаемого RID. Этот RID будет использоваться во "
"всех функциях [code]canvas_item_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный узел — [CanvasItem]."

msgid ""
"Returns the value of the per-instance shader uniform from the specified "
"canvas item instance. Equivalent to [method "
"CanvasItem.get_instance_shader_parameter]."
msgstr ""
"Возвращает значение униформы шейдера для каждого экземпляра из указанного "
"экземпляра элемента холста. Эквивалентно [method "
"CanvasItem.get_instance_shader_parameter]."

msgid ""
"Returns the default value of the per-instance shader uniform from the "
"specified canvas item instance. Equivalent to [method "
"CanvasItem.get_instance_shader_parameter]."
msgstr ""
"Возвращает значение по умолчанию для шейдера-единообразного экземпляра из "
"указанного экземпляра элемента холста. Эквивалентно [method "
"CanvasItem.get_instance_shader_parameter]."

msgid ""
"Returns a dictionary of per-instance shader uniform names of the per-instance "
"shader uniform from the specified canvas item instance.\n"
"The returned dictionary is in PropertyInfo format, with the keys [code]name[/"
"code], [code]class_name[/code], [code]type[/code], [code]hint[/code], "
"[code]hint_string[/code], and [code]usage[/code]."
msgstr ""
"Возвращает словарь имен униформ шейдера для каждого экземпляра униформ "
"шейдера для каждого экземпляра из указанного экземпляра элемента холста.\n"
"Возвращаемый словарь находится в формате PropertyInfo с ключами [code]name[/"
"code], [code]class_name[/code], [code]type[/code], [code]hint[/code], "
"[code]hint_string[/code] и [code]usage[/code]."

msgid ""
"Prevents physics interpolation for the current physics tick.\n"
"This is useful when moving a canvas item to a new location, to give an "
"instantaneous change rather than interpolation from the previous location."
msgstr ""
"Предотвращает интерполяцию физики для текущего физического тика. \n"
"Это полезно при перемещении элемента холста в новое место, чтобы обеспечить "
"мгновенное изменение, а не интерполяцию из предыдущего места."

msgid ""
"Sets the canvas group mode used during 2D rendering for the canvas item "
"specified by the [param item] RID. For faster but more limited clipping, use "
"[method canvas_item_set_clip] instead.\n"
"[b]Note:[/b] The equivalent node functionality is found in [CanvasGroup] and "
"[member CanvasItem.clip_children]."
msgstr ""
"Устанавливает режим группы холста, используемый во время 2D-рендеринга для "
"элемента холста, указанного в [param item] RID. Для более быстрой, но более "
"ограниченной обрезки используйте [method canvas_item_set_clip].\n"
"[b]Примечание:[/b] Эквивалентная функциональность узла находится в "
"[CanvasGroup] и [member CanvasItem.clip_children]."

msgid ""
"If [param clip] is [code]true[/code], makes the canvas item specified by the "
"[param item] RID not draw anything outside of its rect's coordinates. This "
"clipping is fast, but works only with axis-aligned rectangles. This means "
"that rotation is ignored by the clipping rectangle. For more advanced "
"clipping shapes, use [method canvas_item_set_canvas_group_mode] instead.\n"
"[b]Note:[/b] The equivalent node functionality is found in [member "
"Label.clip_text], [RichTextLabel] (always enabled) and more."
msgstr ""
"Если [param clip] равен [code]true[/code], элемент холста, указанный RID "
"[param item], не будет рисовать ничего за пределами координат его "
"прямоугольника. Это отсечение быстрое, но работает только с прямоугольниками, "
"выровненными по осям. Это означает, что вращение игнорируется прямоугольником "
"отсечения. Для более сложных форм отсечения используйте вместо этого [method "
"canvas_item_set_canvas_group_mode].\n"
"[b]Примечание:[/b] Эквивалентная функциональность узла находится в [member "
"Label.clip_text], [RichTextLabel] (всегда включен) и других."

msgid "Sets the [CanvasItem] to copy a rect to the backbuffer."
msgstr ""
"Устанавливает [CanvasItem] для копирования прямоугольника в фоновый буфер."

msgid ""
"If [param use_custom_rect] is [code]true[/code], sets the custom visibility "
"rectangle (used for culling) to [param rect] for the canvas item specified by "
"[param item]. Setting a custom visibility rect can reduce CPU load when "
"drawing lots of 2D instances. If [param use_custom_rect] is [code]false[/"
"code], automatically computes a visibility rectangle based on the canvas "
"item's draw commands."
msgstr ""
"Если [param use_custom_rect] равен [code]true[/code], устанавливает "
"пользовательский прямоугольник видимости (используемый для отбраковки) на "
"[param rect] для элемента холста, указанного [param item]. Установка "
"пользовательского прямоугольника видимости может снизить нагрузку на ЦП при "
"рисовании большого количества 2D-экземпляров. Если [param use_custom_rect] "
"равен [code]false[/code], автоматически вычисляет прямоугольник видимости на "
"основе команд рисования элемента холста."

msgid ""
"Sets the default texture filter mode for the canvas item specified by the "
"[param item] RID. Equivalent to [member CanvasItem.texture_filter]."
msgstr ""
"Устанавливает режим фильтра текстуры по умолчанию для элемента холста, "
"указанного в [param item] RID. Эквивалентно [member "
"CanvasItem.texture_filter]."

msgid ""
"Sets the default texture repeat mode for the canvas item specified by the "
"[param item] RID. Equivalent to [member CanvasItem.texture_repeat]."
msgstr ""
"Устанавливает режим повторения текстуры по умолчанию для элемента холста, "
"указанного в [param item] RID. Эквивалентно [member "
"CanvasItem.texture_repeat]."

msgid ""
"If [param enabled] is [code]true[/code], enables multichannel signed distance "
"field rendering mode for the canvas item specified by the [param item] RID. "
"This is meant to be used for font rendering, or with specially generated "
"images using [url=https://github.com/Chlumsky/msdfgen]msdfgen[/url]."
msgstr ""
"Если [param enabled] равно [code]true[/code], включает режим многоканальной "
"визуализации поля расстояний со знаком для элемента холста, указанного в "
"[param item] RID. Это предназначено для использования при визуализации "
"шрифтов или специально сгенерированных изображений с помощью [url=https://"
"github.com/Chlumsky/msdfgen]msdfgen[/url]."

msgid ""
"If [param enabled] is [code]true[/code], draws the canvas item specified by "
"the [param item] RID behind its parent. Equivalent to [member "
"CanvasItem.show_behind_parent]."
msgstr ""
"Если [param enabled] равно [code]true[/code], рисует элемент холста, "
"указанный RID [param item], позади его родителя. Эквивалентно [member "
"CanvasItem.show_behind_parent]."

msgid "Sets the index for the [CanvasItem]."
msgstr "Устанавливает индекс для [CanvasItem]."

msgid ""
"Sets the per-instance shader uniform on the specified canvas item instance. "
"Equivalent to [method CanvasItem.set_instance_shader_parameter]."
msgstr ""
"Устанавливает униформу шейдера для каждого экземпляра на указанном экземпляре "
"элемента холста. Эквивалентно [method "
"CanvasItem.set_instance_shader_parameter]."

msgid ""
"If [param interpolated] is [code]true[/code], turns on physics interpolation "
"for the canvas item."
msgstr ""
"Если [param interpolated] равен [code]true[/code], включается интерполяция "
"физики для элемента холста."

msgid ""
"Sets the light [param mask] for the canvas item specified by the [param item] "
"RID. Equivalent to [member CanvasItem.light_mask]."
msgstr ""
"Устанавливает свет [param mask] для элемента холста, указанного в [param "
"item] RID. Эквивалентно [member CanvasItem.light_mask]."

msgid ""
"Sets a new [param material] to the canvas item specified by the [param item] "
"RID. Equivalent to [member CanvasItem.material]."
msgstr ""
"Устанавливает новый [param material] для элемента холста, указанного в [param "
"item] RID. Эквивалентно [member CanvasItem.material]."

msgid ""
"Multiplies the color of the canvas item specified by the [param item] RID, "
"while affecting its children. See also [method "
"canvas_item_set_self_modulate]. Equivalent to [member CanvasItem.modulate]."
msgstr ""
"Умножает цвет элемента холста, указанного RID [param item], влияя на его "
"дочерние элементы. См. также [method canvas_item_set_self_modulate]. "
"Эквивалентно [member CanvasItem.modulate]."

msgid ""
"Sets a parent [CanvasItem] to the [CanvasItem]. The item will inherit "
"transform, modulation and visibility from its parent, like [CanvasItem] nodes "
"in the scene tree."
msgstr ""
"Устанавливает родительский [CanvasItem] для [CanvasItem]. Элемент унаследует "
"преобразование, модуляцию и видимость от своего родителя, как узлы "
"[CanvasItem] в дереве сцены."

msgid ""
"Multiplies the color of the canvas item specified by the [param item] RID, "
"without affecting its children. See also [method canvas_item_set_modulate]. "
"Equivalent to [member CanvasItem.self_modulate]."
msgstr ""
"Умножает цвет элемента холста, указанного RID [param item], не влияя на его "
"дочерние элементы. См. также [method canvas_item_set_modulate]. Эквивалентно "
"[member CanvasItem.self_modulate]."

msgid ""
"If [param enabled] is [code]true[/code], child nodes with the lowest Y "
"position are drawn before those with a higher Y position. Y-sorting only "
"affects children that inherit from the canvas item specified by the [param "
"item] RID, not the canvas item itself. Equivalent to [member "
"CanvasItem.y_sort_enabled]."
msgstr ""
"Если [param enabled] равно [code]true[/code], дочерние узлы с самой низкой "
"позицией Y рисуются перед узлами с более высокой позицией Y. Сортировка по Y "
"влияет только на дочерние элементы, которые наследуются от элемента холста, "
"указанного в [param item] RID, а не на сам элемент холста. Эквивалентно "
"[member CanvasItem.y_sort_enabled]."

msgid ""
"Sets the [param transform] of the canvas item specified by the [param item] "
"RID. This affects where and how the item will be drawn. Child canvas items' "
"transforms are multiplied by their parent's transform. Equivalent to [member "
"Node2D.transform]."
msgstr ""
"Устанавливает [param transform] элемента холста, указанного RID [param item]. "
"Это влияет на то, где и как будет нарисован элемент. Преобразования дочерних "
"элементов холста умножаются на преобразование их родительского элемента. "
"Эквивалентно [member Node2D.transform]."

msgid "Sets if the [CanvasItem] uses its parent's material."
msgstr "Устанавливает, использует ли [CanvasItem] материал своего родителя."

msgid ""
"Sets the rendering visibility layer associated with this [CanvasItem]. Only "
"[Viewport] nodes with a matching rendering mask will render this [CanvasItem]."
msgstr ""
"Устанавливает слой видимости рендеринга, связанный с этим [CanvasItem]. "
"Только узлы [Viewport] с соответствующей маской рендеринга будут рендерить "
"этот [CanvasItem]."

msgid ""
"Sets the given [CanvasItem] as visibility notifier. [param area] defines the "
"area of detecting visibility. [param enter_callable] is called when the "
"[CanvasItem] enters the screen, [param exit_callable] is called when the "
"[CanvasItem] exits the screen. If [param enable] is [code]false[/code], the "
"item will no longer function as notifier.\n"
"This method can be used to manually mimic [VisibleOnScreenNotifier2D]."
msgstr ""
"Устанавливает заданный [CanvasItem] как уведомитель видимости. [param area] "
"определяет область обнаружения видимости. [param enter_callable] вызывается, "
"когда [CanvasItem] попадает на экран, [param exit_callable] вызывается, когда "
"[CanvasItem] покидает экран. Если [param enable] равен [code]false[/code], "
"элемент больше не будет функционировать как уведомитель.\n"
"Этот метод можно использовать для ручной имитации [VisibleOnScreenNotifier2D]."

msgid "Sets the visibility of the [CanvasItem]."
msgstr "Устанавливает видимость [CanvasItem]."

msgid ""
"If this is enabled, the Z index of the parent will be added to the children's "
"Z index."
msgstr ""
"Если эта опция включена, Z-индекс родителя будет добавлен к Z-индексу "
"дочернего элемента."

msgid ""
"Sets the [CanvasItem]'s Z index, i.e. its draw order (lower indexes are drawn "
"first)."
msgstr ""
"Устанавливает индекс Z [CanvasItem], т. е. порядок его отрисовки (меньшие "
"индексы отрисовываются первыми)."

msgid ""
"Transforms both the current and previous stored transform for a canvas item.\n"
"This allows transforming a canvas item without creating a \"glitch\" in the "
"interpolation, which is particularly useful for large worlds utilizing a "
"shifting origin."
msgstr ""
"Преобразует как текущее, так и предыдущее сохраненное преобразование для "
"элемента холста. \n"
"Это позволяет преобразовывать элемент холста, не создавая «сбоев» в "
"интерполяции, что особенно полезно для больших миров, использующих "
"смещающееся начало координат."

msgid ""
"Attaches the canvas light to the canvas. Removes it from its previous canvas."
msgstr "Прикрепляет подсветку холста к холсту. Удаляет ее с предыдущего холста."

msgid ""
"Creates a canvas light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
"[code]canvas_light_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent node is [Light2D]."
msgstr ""
"Создает источник света на холсте и добавляет его в RenderingServer. Доступ к "
"нему можно получить с помощью возвращаемого RID. Этот RID будет "
"использоваться во всех функциях RenderingServer [code]canvas_light_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"[b]Примечание:[/b] Эквивалентный узел — [Light2D]."

msgid ""
"Attaches a light occluder to the canvas. Removes it from its previous canvas."
msgstr ""
"Прикрепляет к холсту светозащитный элемент. Удаляет его с предыдущего холста."

msgid ""
"Creates a light occluder and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
"[code]canvas_light_occluder_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent node is [LightOccluder2D]."
msgstr ""
"Создает световой окклюдер и добавляет его в RenderingServer. Доступ к нему "
"можно получить с помощью возвращаемого RID. Этот RID будет использоваться во "
"всех функциях RenderingServer [code]canvas_light_occluder_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"[b]Примечание:[/b] Эквивалентный узел — [LightOccluder2D]."

msgid ""
"Prevents physics interpolation for the current physics tick.\n"
"This is useful when moving an occluder to a new location, to give an "
"instantaneous change rather than interpolation from the previous location."
msgstr ""
"Предотвращает интерполяцию физики для текущего физического тика. \n"
"Это полезно при перемещении окклюдера в новое место, чтобы обеспечить "
"мгновенное изменение, а не интерполяцию из предыдущего места."

msgid "Enables or disables light occluder."
msgstr "Включает или выключает светозащитный экран."

msgid ""
"If [param interpolated] is [code]true[/code], turns on physics interpolation "
"for the light occluder."
msgstr ""
"Если [param interpolated] равен [code]true[/code], включается физическая "
"интерполяция для светового окклюдера."

msgid ""
"The light mask. See [LightOccluder2D] for more information on light masks."
msgstr ""
"Световая маска. Более подробную информацию о световых масках см. в "
"[LightOccluder2D]."

msgid "Sets a light occluder's polygon."
msgstr "Устанавливает полигон окклюдера света."

msgid "Sets a light occluder's [Transform2D]."
msgstr "Устанавливает [Transform2D] светового окклюдера."

msgid ""
"Transforms both the current and previous stored transform for a light "
"occluder.\n"
"This allows transforming an occluder without creating a \"glitch\" in the "
"interpolation, which is particularly useful for large worlds utilizing a "
"shifting origin."
msgstr ""
"Преобразует как текущее, так и предыдущее сохраненное преобразование для "
"светового окклюдера. \n"
"Это позволяет преобразовывать окклюдер, не создавая «сбоев» в интерполяции, "
"что особенно полезно для больших миров, использующих смещающееся начало "
"координат."

msgid ""
"Sets the blend mode for the given canvas light to [param mode]. Equivalent to "
"[member Light2D.blend_mode]."
msgstr ""
"Устанавливает режим смешивания для данного источника света на холсте на "
"[param mode]. Эквивалентно [member Light2D.blend_mode]."

msgid "Sets the color for a light."
msgstr "Устанавливает цвет света."

msgid "Enables or disables a canvas light."
msgstr "Включает или выключает подсветку холста."

msgid "Sets a canvas light's energy."
msgstr "Устанавливает энергию полотняного светильника."

msgid "Sets a canvas light's height."
msgstr "Устанавливает высоту холста-светильника."

msgid ""
"If [param interpolated] is [code]true[/code], turns on physics interpolation "
"for the canvas light."
msgstr ""
"Если [param interpolated] равен [code]true[/code], включается физическая "
"интерполяция для источника света на холсте."

msgid ""
"The binary mask used to determine which layers this canvas light's shadows "
"affects. See [LightOccluder2D] for more information on light masks."
msgstr ""
"Двоичная маска, используемая для определения того, на какие слои влияют тени "
"этого источника света. См. [LightOccluder2D] для получения дополнительной "
"информации о масках света."

msgid "The layer range that gets rendered with this light."
msgstr ""
"Диапазон слоев, который визуализируется с помощью этого источника света."

msgid "Sets the mode of the canvas light."
msgstr "Устанавливает режим light холста."

msgid "Sets the color of the canvas light's shadow."
msgstr "Устанавливает цвет тени источника света на холсте."

msgid "Enables or disables the canvas light's shadow."
msgstr "Включает или отключает тень от источника света на холсте."

msgid "Sets the canvas light's shadow's filter."
msgstr "Устанавливает фильтр тени света холста."

msgid "Smoothens the shadow. The lower, the smoother."
msgstr "Сглаживает тень. Чем ниже, тем глаже."

msgid ""
"Sets the texture to be used by a [PointLight2D]. Equivalent to [member "
"PointLight2D.texture]."
msgstr ""
"Устанавливает текстуру, используемую [PointLight2D]. Эквивалентно [member "
"PointLight2D.texture]."

msgid ""
"Sets the offset of a [PointLight2D]'s texture. Equivalent to [member "
"PointLight2D.offset]."
msgstr ""
"Устанавливает смещение текстуры [PointLight2D]. Эквивалентно [member "
"PointLight2D.offset]."

msgid ""
"Sets the scale factor of a [PointLight2D]'s texture. Equivalent to [member "
"PointLight2D.texture_scale]."
msgstr ""
"Устанавливает масштабный коэффициент текстуры [PointLight2D]. Эквивалентно "
"[member PointLight2D.texture_scale]."

msgid "Sets the canvas light's [Transform2D]."
msgstr "Устанавливает [Transform2D] источника света на холсте."

msgid ""
"Sets the Z range of objects that will be affected by this light. Equivalent "
"to [member Light2D.range_z_min] and [member Light2D.range_z_max]."
msgstr ""
"Устанавливает диапазон Z объектов, на которые будет воздействовать этот свет. "
"Эквивалентно [member Light2D.range_z_min] и [member Light2D.range_z_max]."

msgid ""
"Transforms both the current and previous stored transform for a canvas "
"light.\n"
"This allows transforming a light without creating a \"glitch\" in the "
"interpolation, which is particularly useful for large worlds utilizing a "
"shifting origin."
msgstr ""
"Преобразует как текущее, так и предыдущее сохраненное преобразование для "
"источника света на холсте. \n"
"Это позволяет преобразовывать источник света, не создавая «сбоев» в "
"интерполяции, что особенно полезно для больших миров, использующих "
"смещающееся начало координат."

msgid ""
"Creates a new light occluder polygon and adds it to the RenderingServer. It "
"can be accessed with the RID that is returned. This RID will be used in all "
"[code]canvas_occluder_polygon_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent resource is [OccluderPolygon2D]."
msgstr ""
"Создает новый многоугольник окклюдера света и добавляет его в "
"RenderingServer. К нему можно получить доступ с помощью возвращаемого RID. "
"Этот RID будет использоваться во всех функциях RenderingServer "
"[code]canvas_occluder_polygon_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [OccluderPolygon2D]."

msgid "Sets an occluder polygon's cull mode."
msgstr "Устанавливает режим отбраковки полигона окклюдера."

msgid "Sets the shape of the occluder polygon."
msgstr "Задает форму многоугольника окклюдера."

msgid ""
"A copy of the canvas item will be drawn with a local offset of the [param "
"mirroring].\n"
"[b]Note:[/b] This is equivalent to calling [method canvas_set_item_repeat] "
"like [code]canvas_set_item_repeat(item, mirroring, 1)[/code], with an "
"additional check ensuring [param canvas] is a parent of [param item]."
msgstr ""
"Копия элемента холста будет нарисована с локальным смещением [param "
"mirroring].\n"
"[b]Примечание:[/b] Это эквивалентно вызову [method canvas_set_item_repeat] "
"как [code]canvas_set_item_repeat(item, mirroring, 1)[/code], с дополнительной "
"проверкой, гарантирующей, что [param canvas] является родителем [param item]."

msgid ""
"A copy of the canvas item will be drawn with a local offset of the [param "
"repeat_size] by the number of times of the [param repeat_times]. As the "
"[param repeat_times] increases, the copies will spread away from the origin "
"texture."
msgstr ""
"Копия элемента холста будет нарисована с локальным смещением [param "
"repeat_size] на количество раз [param repeat_times]. По мере увеличения "
"[param repeat_times] копии будут расходиться от исходной текстуры."

msgid "Modulates all colors in the given canvas."
msgstr "Модулирует все цвета на заданном холсте."

msgid ""
"Sets the [member ProjectSettings.rendering/2d/shadow_atlas/size] to use for "
"[Light2D] shadow rendering (in pixels). The value is rounded up to the "
"nearest power of 2."
msgstr ""
"Устанавливает [member ProjectSettings.rendering/2d/shadow_atlas/size] для "
"использования при рендеринге тени [Light2D] (в пикселях). Значение "
"округляется до ближайшей степени 2."

msgid ""
"Creates a canvas texture and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
"[code]canvas_texture_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method. See also [method "
"texture_2d_create].\n"
"[b]Note:[/b] The equivalent resource is [CanvasTexture] and is only meant to "
"be used in 2D rendering, not 3D."
msgstr ""
"Создает текстуру холста и добавляет ее в RenderingServer. Доступ к ней можно "
"получить с помощью возвращаемого RID. Этот RID будет использоваться во всех "
"функциях RenderingServer [code]canvas_texture_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid]. См. также [method texture_2d_create].\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [CanvasTexture], и он предназначен "
"только для использования в 2D-рендеринге, а не в 3D."

msgid ""
"Sets the [param channel]'s [param texture] for the canvas texture specified "
"by the [param canvas_texture] RID. Equivalent to [member "
"CanvasTexture.diffuse_texture], [member CanvasTexture.normal_texture] and "
"[member CanvasTexture.specular_texture]."
msgstr ""
"Устанавливает [param texture] [param channel] для текстуры холста, указанной "
"RID [param canvas_texture]. Эквивалентно [member "
"CanvasTexture.diffuse_texture], [member CanvasTexture.normal_texture] и "
"[member CanvasTexture.specular_texture]."

msgid ""
"Sets the [param base_color] and [param shininess] to use for the canvas "
"texture specified by the [param canvas_texture] RID. Equivalent to [member "
"CanvasTexture.specular_color] and [member CanvasTexture.specular_shininess]."
msgstr ""
"Устанавливает [param base_color] и [param shininess] для использования в "
"текстуре холста, указанной в [param canvas_texture] RID. Эквивалентно [member "
"CanvasTexture.specular_color] и [member CanvasTexture.specular_shininess]."

msgid ""
"Sets the texture [param filter] mode to use for the canvas texture specified "
"by the [param canvas_texture] RID."
msgstr ""
"Устанавливает режим текстуры [param filter], который будет использоваться для "
"текстуры холста, указанной в RID [param canvas_texture]."

msgid ""
"Sets the texture [param repeat] mode to use for the canvas texture specified "
"by the [param canvas_texture] RID."
msgstr ""
"Устанавливает режим текстуры [param repeat], который будет использоваться для "
"текстуры холста, указанной в RID [param canvas_texture]."

msgid ""
"Creates a new compositor and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method."
msgstr ""
"Создает новый композитор и добавляет его в RenderingServer. К нему можно "
"получить доступ с помощью возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer."

msgid ""
"Creates a new rendering effect and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method."
msgstr ""
"Создает новый эффект рендеринга и добавляет его в RenderingServer. К нему "
"можно получить доступ с помощью возвращаемого RID.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer."

msgid ""
"Sets the callback type ([param callback_type]) and callback method([param "
"callback]) for this rendering effect."
msgstr ""
"Устанавливает тип обратного вызова ([param callback_type]) и метод обратного "
"вызова ([param callback]) для этого эффекта рендеринга."

msgid "Enables/disables this rendering effect."
msgstr "Включает/отключает этот эффект рендеринга."

msgid ""
"Sets the flag ([param flag]) for this rendering effect to [code]true[/code] "
"or [code]false[/code] ([param set])."
msgstr ""
"Устанавливает флаг ([param flag]) для этого эффекта рендеринга на [code]true[/"
"code] или [code]false[/code] ([param set])."

msgid ""
"Sets the compositor effects for the specified compositor RID. [param effects] "
"should be an array containing RIDs created with [method "
"compositor_effect_create]."
msgstr ""
"Устанавливает эффекты композитора для указанного RID композитора. [param "
"effects] должен быть массивом, содержащим RID, созданные с помощью [method "
"compositor_effect_create]."

msgid ""
"Creates a RenderingDevice that can be used to do draw and compute operations "
"on a separate thread. Cannot draw to the screen nor share data with the "
"global RenderingDevice.\n"
"[b]Note:[/b] When using the OpenGL rendering driver or when running in "
"headless mode, this function always returns [code]null[/code]."
msgstr ""
"Создает RenderingDevice, который можно использовать для выполнения операций "
"рисования и вычисления в отдельном потоке. Не может рисовать на экране или "
"обмениваться данными с глобальным RenderingDevice.\n"
"[b]Примечание:[/b] При использовании драйвера рендеринга OpenGL или при "
"работе в режиме headless эта функция всегда возвращает [code]null[/code]."

msgid ""
"Returns the bounding rectangle for a canvas item in local space, as "
"calculated by the renderer. This bound is used internally for culling.\n"
"[b]Warning:[/b] This function is intended for debugging in the editor, and "
"will pass through and return a zero [Rect2] in exported projects."
msgstr ""
"Возвращает ограничивающий прямоугольник для элемента холста в локальном "
"пространстве, рассчитанный рендерером. Эта граница используется внутренне для "
"отбраковки.\n"
"[b]Предупреждение:[/b] Эта функция предназначена для отладки в редакторе и "
"будет проходить и возвращать ноль [Rect2] в экспортированных проектах."

msgid ""
"Creates a decal and adds it to the RenderingServer. It can be accessed with "
"the RID that is returned. This RID will be used in all [code]decal_*[/code] "
"RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"To place in a scene, attach this decal to an instance using [method "
"instance_set_base] using the returned RID.\n"
"[b]Note:[/b] The equivalent node is [Decal]."
msgstr ""
"Создает декаль и добавляет ее в RenderingServer. Доступ к ней можно получить "
"с помощью возвращаемого RID. Этот RID будет использоваться во всех функциях "
"RenderingServer [code]decal_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"Чтобы разместить на сцене, прикрепите эту декаль к экземпляру с помощью "
"[method instance_set_base], используя возвращаемый RID.\n"
"[b]Примечание:[/b] Эквивалентный узел — [Decal]."

msgid ""
"Sets the [param albedo_mix] in the decal specified by the [param decal] RID. "
"Equivalent to [member Decal.albedo_mix]."
msgstr ""
"Устанавливает [param albedo_mix] в декале, указанном [param decal] RID. "
"Эквивалентно [member Decal.albedo_mix]."

msgid ""
"Sets the cull [param mask] in the decal specified by the [param decal] RID. "
"Equivalent to [member Decal.cull_mask]."
msgstr ""
"Устанавливает отбраковку [param mask] в декале, указанном [param decal] RID. "
"Эквивалентно [member Decal.cull_mask]."

msgid ""
"Sets the distance fade parameters in the decal specified by the [param decal] "
"RID. Equivalent to [member Decal.distance_fade_enabled], [member "
"Decal.distance_fade_begin] and [member Decal.distance_fade_length]."
msgstr ""
"Устанавливает параметры затухания расстояния в декале, указанном в [param "
"decal] RID. Эквивалентно [member Decal.distance_fade_enabled], [member "
"Decal.distance_fade_begin] и [member Decal.distance_fade_length]."

msgid ""
"Sets the emission [param energy] in the decal specified by the [param decal] "
"RID. Equivalent to [member Decal.emission_energy]."
msgstr ""
"Устанавливает эмиссию [param energy] в наклейке, указанной [param decal] RID. "
"Эквивалентно [member Decal.emission_energy]."

msgid ""
"Sets the upper fade ([param above]) and lower fade ([param below]) in the "
"decal specified by the [param decal] RID. Equivalent to [member "
"Decal.upper_fade] and [member Decal.lower_fade]."
msgstr ""
"Устанавливает верхний затухание ([param above]) и нижний затухание ([param "
"below]) в декале, указанном в [param decal] RID. Эквивалентно [member "
"Decal.upper_fade] и [member Decal.lower_fade]."

msgid ""
"Sets the color multiplier in the decal specified by the [param decal] RID to "
"[param color]. Equivalent to [member Decal.modulate]."
msgstr ""
"Устанавливает множитель цвета в декале, указанный в [param decal] RID, на "
"[param color]. Эквивалентно [member Decal.modulate]."

msgid ""
"Sets the normal [param fade] in the decal specified by the [param decal] RID. "
"Equivalent to [member Decal.normal_fade]."
msgstr ""
"Устанавливает нормальный [param fade] в декале, указанном [param decal] RID. "
"Эквивалентно [member Decal.normal_fade]."

msgid ""
"Sets the [param size] of the decal specified by the [param decal] RID. "
"Equivalent to [member Decal.size]."
msgstr ""
"Устанавливает [param size] декали, указанный в [param decal] RID. "
"Эквивалентно [member Decal.size]."

msgid ""
"Sets the [param texture] in the given texture [param type] slot for the "
"specified decal. Equivalent to [method Decal.set_texture]."
msgstr ""
"Устанавливает [param texture] в указанном слоте текстуры [param type] для "
"указанной декали. Эквивалентно [method Decal.set_texture]."

msgid ""
"Sets the texture [param filter] mode to use when rendering decals. This "
"parameter is global and cannot be set on a per-decal basis."
msgstr ""
"Устанавливает режим текстуры [param filter] для использования при рендеринге "
"декалей. Этот параметр является глобальным и не может быть установлен для "
"каждой декали."

msgid ""
"Creates a directional light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
"[code]light_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"To place in a scene, attach this directional light to an instance using "
"[method instance_set_base] using the returned RID.\n"
"[b]Note:[/b] The equivalent node is [DirectionalLight3D]."
msgstr ""
"Создает направленный свет и добавляет его в RenderingServer. Доступ к нему "
"можно получить с помощью возвращаемого RID. Этот RID можно использовать в "
"большинстве функций RenderingServer [code]light_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"Чтобы разместить в сцене, прикрепите этот направленный свет к экземпляру с "
"помощью [method instance_set_base], используя возвращаемый RID.\n"
"[b]Примечание:[/b] Эквивалентный узел — [DirectionalLight3D]."

msgid ""
"Sets the [param size] of the directional light shadows in 3D. See also "
"[member ProjectSettings.rendering/lights_and_shadows/directional_shadow/"
"size]. This parameter is global and cannot be set on a per-viewport basis."
msgstr ""
"Устанавливает [param size] направленных световых теней в 3D. См. также "
"[member ProjectSettings.rendering/lights_and_shadows/directional_shadow/"
"size]. Этот параметр является глобальным и не может быть установлен для "
"каждого окна просмотра."

msgid ""
"Sets the filter [param quality] for directional light shadows in 3D. See also "
"[member ProjectSettings.rendering/lights_and_shadows/directional_shadow/"
"soft_shadow_filter_quality]. This parameter is global and cannot be set on a "
"per-viewport basis."
msgstr ""
"Устанавливает фильтр [param quality] для направленных световых теней в 3D. "
"См. также [member ProjectSettings.rendering/lights_and_shadows/"
"directional_shadow/soft_shadow_filter_quality]. Этот параметр является "
"глобальным и не может быть установлен для каждого окна просмотра."

msgid ""
"Generates and returns an [Image] containing the radiance map for the "
"specified [param environment] RID's sky. This supports built-in sky material "
"and custom sky shaders. If [param bake_irradiance] is [code]true[/code], the "
"irradiance map is saved instead of the radiance map. The radiance map is used "
"to render reflected light, while the irradiance map is used to render ambient "
"light. See also [method sky_bake_panorama].\n"
"[b]Note:[/b] The image is saved in linear color space without any tonemapping "
"performed, which means it will look too dark if viewed directly in an image "
"editor.\n"
"[b]Note:[/b] [param size] should be a 2:1 aspect ratio for the generated "
"panorama to have square pixels. For radiance maps, there is no point in using "
"a height greater than [member Sky.radiance_size], as it won't increase "
"detail. Irradiance maps only contain low-frequency data, so there is usually "
"no point in going past a size of 128×64 pixels when saving an irradiance map."
msgstr ""
"Генерирует и возвращает [Image], содержащий карту сияния для указанного "
"[param environment] RID неба. Это поддерживает встроенный материал неба и "
"пользовательские шейдеры неба. Если [param bake_irradiance] имеет значение "
"[code]true[/code], карта сияния сохраняется вместо карты сияния. Карта сияния "
"используется для рендеринга отраженного света, а карта сияния используется "
"для рендеринга окружающего света. См. также [method sky_bake_panorama].\n"
"[b]Примечание:[/b] Изображение сохраняется в линейном цветовом пространстве "
"без выполнения тональной компрессии, что означает, что оно будет выглядеть "
"слишком темным при просмотре напрямую в редакторе изображений.\n"
"[b]Примечание:[/b] [param size] должен иметь соотношение сторон 2:1, чтобы "
"сгенерированная панорама имела квадратные пиксели. Для карт сияния нет смысла "
"использовать высоту больше, чем [member Sky.radiance_size], так как это не "
"увеличит детализацию. Карты освещенности содержат только низкочастотные "
"данные, поэтому обычно нет смысла выходить за пределы размера 128×64 пикселей "
"при сохранении карты освещенности."

msgid ""
"Creates an environment and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all "
"[code]environment_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent resource is [Environment]."
msgstr ""
"Создает среду и добавляет ее в RenderingServer. Доступ к ней можно получить с "
"помощью возвращаемого RID. Этот RID будет использоваться во всех функциях "
"[code]environment_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [Environment]."

msgid ""
"If [param enable] is [code]true[/code], enables bicubic upscaling for glow "
"which improves quality at the cost of performance. Equivalent to [member "
"ProjectSettings.rendering/environment/glow/upscale_mode].\n"
"[b]Note:[/b] This setting is only effective when using the Forward+ or Mobile "
"rendering methods, as Compatibility uses a different glow implementation."
msgstr ""
"Если [param enable] имеет значение [code]true[/code], включается бикубический "
"upscaling для свечения, что улучшает качество за счет производительности. "
"Эквивалентно [member ProjectSettings.rendering/environment/glow/"
"upscale_mode].\n"
"[b]Примечание:[/b] Этот параметр эффективен только при использовании методов "
"рендеринга Forward+ или Mobile, так как Compatibility использует другую "
"реализацию свечения."

msgid ""
"Sets the values to be used with the \"adjustments\" post-process effect. See "
"[Environment] for more details."
msgstr ""
"Устанавливает значения, которые будут использоваться с эффектом постобработки "
"\"adjustments\". Подробнее см. [Environment]."

msgid ""
"Sets the values to be used for ambient light rendering. See [Environment] for "
"more details."
msgstr ""
"Устанавливает значения, которые будут использоваться для рендеринга "
"окружающего освещения. Подробнее см. в [Environment]."

msgid ""
"Sets the environment's background mode. Equivalent to [member "
"Environment.background_mode]."
msgstr ""
"Устанавливает фоновый режим среды. Эквивалентно [member "
"Environment.background_mode]."

msgid ""
"Color displayed for clear areas of the scene. Only effective if using the "
"[constant ENV_BG_COLOR] background mode."
msgstr ""
"Цвет, отображаемый для чистых областей сцены. Действует только при "
"использовании режима фона [constant ENV_BG_COLOR]."

msgid "Sets the intensity of the background color."
msgstr "Устанавливает интенсивность цвета фона."

msgid "Sets the camera ID to be used as environment background."
msgstr ""
"Устанавливает идентификатор камеры, который будет использоваться в качестве "
"фона среды."

msgid "Sets the maximum layer to use if using Canvas background mode."
msgstr ""
"Устанавливает максимальный слой, который будет использоваться при "
"использовании режима фона Canvas."

msgid ""
"Configures fog for the specified environment RID. See [code]fog_*[/code] "
"properties in [Environment] for more information."
msgstr ""
"Настраивает туман для указанного RID среды. См. свойства [code]fog_*[/code] в "
"[Environment] для получения дополнительной информации."

msgid ""
"Configures fog depth for the specified environment RID. Only has an effect "
"when the fog mode of the environment is [constant ENV_FOG_MODE_DEPTH]. See "
"[code]fog_depth_*[/code] properties in [Environment] for more information."
msgstr ""
"Настраивает глубину тумана для указанного RID среды. Действует только тогда, "
"когда режим тумана среды равен [constant ENV_FOG_MODE_DEPTH]. Для получения "
"дополнительной информации см. свойства [code]fog_depth_*[/code] в "
"[Environment]."

msgid ""
"Configures glow for the specified environment RID. See [code]glow_*[/code] "
"properties in [Environment] for more information."
msgstr ""
"Настраивает свечение для указанного RID среды. См. свойства [code]glow_*[/"
"code] в [Environment] для получения дополнительной информации."

msgid ""
"Configures signed distance field global illumination for the specified "
"environment RID. See [code]sdfgi_*[/code] properties in [Environment] for "
"more information."
msgstr ""
"Настраивает глобальное освещение поля расстояний со знаком для указанного RID "
"окружения. Для получения дополнительной информации см. свойства "
"[code]sdfgi_*[/code] в [Environment]."

msgid ""
"Sets the number of frames to use for converging signed distance field global "
"illumination. Equivalent to [member ProjectSettings.rendering/"
"global_illumination/sdfgi/frames_to_converge]."
msgstr ""
"Устанавливает количество кадров, используемых для сходящегося знакового поля "
"расстояний глобального освещения. Эквивалентно [member "
"ProjectSettings.rendering/global_illumination/sdfgi/frames_to_converge]."

msgid ""
"Sets the update speed for dynamic lights' indirect lighting when computing "
"signed distance field global illumination. Equivalent to [member "
"ProjectSettings.rendering/global_illumination/sdfgi/frames_to_update_lights]."
msgstr ""
"Устанавливает скорость обновления для непрямого освещения динамических "
"источников света при вычислении глобального освещения поля расстояний со "
"знаком. Эквивалентно [member ProjectSettings.rendering/global_illumination/"
"sdfgi/frames_to_update_lights]."

msgid ""
"Sets the number of rays to throw per frame when computing signed distance "
"field global illumination. Equivalent to [member ProjectSettings.rendering/"
"global_illumination/sdfgi/probe_ray_count]."
msgstr ""
"Устанавливает количество лучей, которые нужно отбросить за кадр при "
"вычислении глобального освещения поля расстояний со знаком. Эквивалентно "
"[member Project Settings.rendering/global lighting/sdfgi/probe_ray_count]."

msgid ""
"Sets the [Sky] to be used as the environment's background when using "
"[i]BGMode[/i] sky. Equivalent to [member Environment.sky]."
msgstr ""
"Устанавливает [Sky] для использования в качестве фона окружающей среды при "
"использовании неба [i]BGMode[/i]. Эквивалентно [member Environment.sky]."

msgid ""
"Sets a custom field of view for the background [Sky]. Equivalent to [member "
"Environment.sky_custom_fov]."
msgstr ""
"Устанавливает пользовательское поле зрения для фона [Sky]. Эквивалентно "
"[member Environment.sky_custom_fov]."

msgid ""
"Sets the rotation of the background [Sky] expressed as a [Basis]. Equivalent "
"to [member Environment.sky_rotation], where the rotation vector is used to "
"construct the [Basis]."
msgstr ""
"Устанавливает вращение фона [Sky], выраженное как [Basis]. Эквивалентно "
"[member Environment.sky_rotation], где вектор вращения используется для "
"построения [Basis]."

msgid ""
"Sets the variables to be used with the screen-space ambient occlusion (SSAO) "
"post-process effect. See [Environment] for more details."
msgstr ""
"Устанавливает переменные, которые будут использоваться с эффектом "
"постобработки экранного пространства окружающего света (SSAO). Подробнее см. "
"[Environment]."

msgid ""
"Sets the quality level of the screen-space ambient occlusion (SSAO) post-"
"process effect. See [Environment] for more details."
msgstr ""
"Устанавливает уровень качества эффекта постобработки экранного пространства "
"Ambient Occlusion (SSAO). Подробнее см. [Environment]."

msgid ""
"Sets the quality level of the screen-space indirect lighting (SSIL) post-"
"process effect. See [Environment] for more details."
msgstr ""
"Устанавливает уровень качества эффекта постобработки непрямого освещения "
"экранного пространства (SSIL). Подробнее см. в разделе [Environment]."

msgid ""
"Sets the variables to be used with the screen-space reflections (SSR) post-"
"process effect. See [Environment] for more details."
msgstr ""
"Устанавливает переменные, которые будут использоваться с эффектом "
"постобработки screen-space reflections (SSR). Подробнее см. [Environment]."

msgid ""
"Sets the variables to be used with the \"tonemap\" post-process effect. See "
"[Environment] for more details."
msgstr ""
"Устанавливает переменные, которые будут использоваться с эффектом "
"постобработки \"tonemap\". Подробнее см. [Environment]."

msgid ""
"Sets the variables to be used with the volumetric fog post-process effect. "
"See [Environment] for more details."
msgstr ""
"Устанавливает переменные, которые будут использоваться с эффектом "
"постобработки объемного тумана. Подробнее см. [Environment]."

msgid ""
"Enables filtering of the volumetric fog scattering buffer. This results in "
"much smoother volumes with very few under-sampling artifacts."
msgstr ""
"Позволяет фильтровать объемный буфер рассеивания тумана. Это приводит к "
"гораздо более гладким объемам с очень небольшим количеством артефактов "
"недостаточной выборки."

msgid ""
"Sets the resolution of the volumetric fog's froxel buffer. [param size] is "
"modified by the screen's aspect ratio and then used to set the width and "
"height of the buffer. While [param depth] is directly used to set the depth "
"of the buffer."
msgstr ""
"Устанавливает разрешение буфера froxel объемного тумана. [param size] "
"изменяется в зависимости от соотношения сторон экрана и затем используется "
"для установки ширины и высоты буфера. В то время как [param depth] напрямую "
"используется для установки глубины буфера."

msgid ""
"Creates a new fog volume and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
"[code]fog_volume_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent node is [FogVolume]."
msgstr ""
"Создает новый объем тумана и добавляет его в RenderingServer. К нему можно "
"получить доступ с помощью возвращаемого RID. Этот RID будет использоваться во "
"всех функциях [code]fog_volume_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный узел — [FogVolume]."

msgid ""
"Sets the [Material] of the fog volume. Can be either a [FogMaterial] or a "
"custom [ShaderMaterial]."
msgstr ""
"Устанавливает [Material] объема тумана. Может быть [FogMaterial] или "
"пользовательским [ShaderMaterial]."

msgid ""
"Sets the shape of the fog volume to either [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX] or [constant "
"RenderingServer.FOG_VOLUME_SHAPE_WORLD]."
msgstr ""
"Устанавливает форму объема тумана на [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX] или [constant "
"RenderingServer.FOG_VOLUME_SHAPE_WORLD]."

msgid ""
"Sets the size of the fog volume when shape is [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER] or [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX]."
msgstr ""
"Устанавливает размер объема тумана, когда форма имеет значение [constant "
"RenderingServer.FOG_VOLUME_SHAPE_ELLIPSOID], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CONE], [constant "
"RenderingServer.FOG_VOLUME_SHAPE_CYLINDER] или [constant "
"RenderingServer.FOG_VOLUME_SHAPE_BOX]."

msgid ""
"Forces redrawing of all viewports at once. Must be called from the main "
"thread."
msgstr ""
"Вызывает одновременную перерисовку всех вьюпортов. Должен вызываться из "
"основного потока."

msgid ""
"Forces a synchronization between the CPU and GPU, which may be required in "
"certain cases. Only call this when needed, as CPU-GPU synchronization has a "
"performance cost."
msgstr ""
"Запускает синхронизацию между CPU и GPU, которая может потребоваться в "
"определенных случаях. Вызывайте это только при необходимости, так как "
"синхронизация CPU-GPU имеет эксплуатационные издержки."

msgid ""
"Tries to free an object in the RenderingServer. To avoid memory leaks, this "
"should be called after using an object as memory management does not occur "
"automatically when using RenderingServer directly."
msgstr ""
"Пытается освободить объект в RenderingServer. Чтобы избежать утечек памяти, "
"это следует вызывать после использования объекта, поскольку управление "
"памятью не происходит автоматически при прямом использовании RenderingServer."

msgid ""
"Returns the name of the current rendering driver. This can be [code]vulkan[/"
"code], [code]d3d12[/code], [code]metal[/code], [code]opengl3[/code], "
"[code]opengl3_es[/code], or [code]opengl3_angle[/code]. See also [method "
"get_current_rendering_method].\n"
"When [member ProjectSettings.rendering/renderer/rendering_method] is "
"[code]forward_plus[/code] or [code]mobile[/code], the rendering driver is "
"determined by [member ProjectSettings.rendering/rendering_device/driver].\n"
"When [member ProjectSettings.rendering/renderer/rendering_method] is "
"[code]gl_compatibility[/code], the rendering driver is determined by [member "
"ProjectSettings.rendering/gl_compatibility/driver].\n"
"The rendering driver is also determined by the [code]--rendering-driver[/"
"code] command line argument that overrides this project setting, or an "
"automatic fallback that is applied depending on the hardware."
msgstr ""
"Возвращает имя текущего драйвера рендеринга. Это могут быть [code]vulkan[/"
"code], [code]d3d12[/code], [code]metal[/code], [code]opengl3[/code], "
"[code]opengl3_es[/code] или [code]opengl3_angle[/code]. См. также [method "
"get_current_rendering_method].\n"
"Если [member ProjectSettings.rendering/renderer/rendering_method] равен "
"[code]forward_plus[/code] или [code]mobile[/code], драйвер рендеринга "
"определяется [member ProjectSettings.rendering/rendering_device/driver]. \n"
"Если [member ProjectSettings.rendering/renderer/rendering_method] имеет "
"значение [code]gl_compatibility[/code], драйвер рендеринга определяется "
"параметром [member ProjectSettings.rendering/gl_compatibility/driver].\n"
"Драйвер рендеринга также определяется аргументом командной строки [code]--"
"rendering-driver[/code], который переопределяет этот параметр проекта, или "
"автоматическим резервным вариантом, применяемым в зависимости от оборудования."

msgid ""
"Returns the name of the current rendering method. This can be "
"[code]forward_plus[/code], [code]mobile[/code], or [code]gl_compatibility[/"
"code]. See also [method get_current_rendering_driver_name].\n"
"The rendering method is determined by [member ProjectSettings.rendering/"
"renderer/rendering_method], the [code]--rendering-method[/code] command line "
"argument that overrides this project setting, or an automatic fallback that "
"is applied depending on the hardware."
msgstr ""
"Возвращает имя текущего метода рендеринга. Это может быть [code]forward_plus[/"
"code], [code]mobile[/code] или [code]gl_compatibility[/code]. См. также "
"[method get_current_rendering_driver_name].\n"
"Метод рендеринга определяется [member ProjectSettings.rendering/renderer/"
"rendering_method], аргументом командной строки [code]--rendering-method[/"
"code], который переопределяет этот параметр проекта, или автоматическим "
"резервным вариантом, который применяется в зависимости от оборудования."

msgid ""
"Returns the default clear color which is used when a specific clear color has "
"not been selected. See also [method set_default_clear_color]."
msgstr ""
"Возвращает цвет очистки по умолчанию, который используется, когда не выбран "
"определенный цвет очистки. См. также [method set_default_clear_color]."

msgid ""
"Returns the time taken to setup rendering on the CPU in milliseconds. This "
"value is shared across all viewports and does [i]not[/i] require [method "
"viewport_set_measure_render_time] to be enabled on a viewport to be queried. "
"See also [method viewport_get_measured_render_time_cpu]."
msgstr ""
"Возвращает время, необходимое для настройки рендеринга на ЦП в миллисекундах. "
"Это значение является общим для всех вьюпортов и [i]не[/i] требует, чтобы "
"[method viewport_set_measure_render_time] был включен на запрашиваемом "
"вьюпорте. См. также [method viewport_get_measured_render_time_cpu]."

msgid ""
"Returns the global RenderingDevice.\n"
"[b]Note:[/b] When using the OpenGL rendering driver or when running in "
"headless mode, this function always returns [code]null[/code]."
msgstr ""
"Возвращает глобальный RenderingDevice.\n"
"[b]Примечание:[/b] При использовании драйвера рендеринга OpenGL или при "
"работе в режиме headless эта функция всегда возвращает [code]null[/code]."

msgid ""
"Returns a statistic about the rendering engine which can be used for "
"performance profiling. See also [method viewport_get_render_info], which "
"returns information specific to a viewport.\n"
"[b]Note:[/b] Only 3D rendering is currently taken into account by some of "
"these values, such as the number of draw calls.\n"
"[b]Note:[/b] Rendering information is not available until at least 2 frames "
"have been rendered by the engine. If rendering information is not available, "
"[method get_rendering_info] returns [code]0[/code]. To print rendering "
"information in [code]_ready()[/code] successfully, use the following:\n"
"[codeblock]\n"
"func _ready():\n"
"\tfor _i in 2:\n"
"\t\tawait get_tree().process_frame\n"
"\n"
"\tprint(RenderingServer.get_rendering_info(RENDERING_INFO_TOTAL_DRAW_CALLS_IN_FRAME))\n"
"[/codeblock]"
msgstr ""
"Возвращает статистику о движке рендеринга, которую можно использовать для "
"профилирования производительности. См. также [method "
"viewport_get_render_info], который возвращает информацию, специфичную для "
"области просмотра.\n"
"[b]Примечание:[/b] В настоящее время только 3D-рендеринг учитывается "
"некоторыми из этих значений, такими как количество вызовов отрисовки.\n"
"[b]Примечание:[/b] Информация о рендеринге недоступна, пока движок не "
"отрисует хотя бы 2 кадра. Если информация о рендеринге недоступна, [method "
"get_rendering_info] возвращает [code]0[/code]. Чтобы успешно вывести "
"информацию о рендеринге в [code]_ready()[/code], используйте следующее:\n"
"[codeblock]\n"
"func _ready():\n"
"\tfor _i in 2:\n"
"\t\tawait get_tree().process_frame\n"
"\n"
"\tprint(RenderingServer.get_rendering_info(RENDERING_INFO_TOTAL_DRAW_CALLS_IN_FRAME))\n"
"[/codeblock]"

msgid "Returns the parameters of a shader."
msgstr "Возвращает параметры шейдера."

msgid ""
"Returns the RID of the test cube. This mesh will be created and returned on "
"the first call to [method get_test_cube], then it will be cached for "
"subsequent calls. See also [method make_sphere_mesh]."
msgstr ""
"Возвращает RID тестового куба. Эта сетка будет создана и возвращена при "
"первом вызове [method get_test_cube], затем она будет кэширована для "
"последующих вызовов. См. также [method make_sphere_mesh]."

msgid ""
"Returns the RID of a 256×256 texture with a testing pattern on it (in "
"[constant Image.FORMAT_RGB8] format). This texture will be created and "
"returned on the first call to [method get_test_texture], then it will be "
"cached for subsequent calls. See also [method get_white_texture].\n"
"[b]Example:[/b] Get the test texture and apply it to a [Sprite2D] node:\n"
"[codeblock]\n"
"var texture_rid = RenderingServer.get_test_texture()\n"
"var texture = "
"ImageTexture.create_from_image(RenderingServer.texture_2d_get(texture_rid))\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]"
msgstr ""
"Возвращает RID текстуры 256×256 с тестовым узором на ней (в формате [constant "
"Image.FORMAT_RGB8]). Эта текстура будет создана и возвращена при первом "
"вызове [method get_test_texture], затем она будет кэширована для последующих "
"вызовов. См. также [method get_white_texture].\n"
"[b]Пример:[/b] Получите тестовую текстуру и примените ее к узлу [Sprite2D]:\n"
"[codeblock]\n"
"var texture_rid = RenderingServer.get_test_texture()\n"
"var texture = "
"ImageTexture.create_from_image(RenderingServer.texture_2d_get(texture_rid))\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]"

msgid ""
"Returns the version of the graphics video adapter [i]currently in use[/i] "
"(e.g. \"1.2.189\" for Vulkan, \"3.3.0 NVIDIA 510.60.02\" for OpenGL). This "
"version may be different from the actual latest version supported by the "
"hardware, as Godot may not always request the latest version. See also "
"[method OS.get_video_adapter_driver_info].\n"
"[b]Note:[/b] When running a headless or server binary, this function returns "
"an empty string."
msgstr ""
"Возвращает версию графического видеоадаптера [i]используемого в данный "
"момент[/i] (например, \"1.2.189\" для Vulkan, \"3.3.0 NVIDIA 510.60.02\" для "
"OpenGL). Эта версия может отличаться от фактической последней версии, "
"поддерживаемой оборудованием, так как Godot не всегда может запрашивать "
"последнюю версию. См. также [method OS.get_video_adapter_driver_info].\n"
"[b]Примечание:[/b] При запуске headless или server binary эта функция "
"возвращает пустую строку."

msgid ""
"Returns the name of the video adapter (e.g. \"GeForce GTX 1080/PCIe/SSE2\").\n"
"[b]Note:[/b] When running a headless or server binary, this function returns "
"an empty string.\n"
"[b]Note:[/b] On the web platform, some browsers such as Firefox may report a "
"different, fixed GPU name such as \"GeForce GTX 980\" (regardless of the "
"user's actual GPU model). This is done to make fingerprinting more difficult."
msgstr ""
"Возвращает имя видеоадаптера (например, \"GeForce GTX 1080/PCIe/SSE2\").\n"
"[b]Примечание:[/b] При запуске headless или серверного двоичного файла эта "
"функция возвращает пустую строку.\n"
"[b]Примечание:[/b] На веб-платформе некоторые браузеры, такие как Firefox, "
"могут сообщать другое, фиксированное имя графического процессора, например "
"\"GeForce GTX 980\" (независимо от фактической модели графического процессора "
"пользователя). Это делается для того, чтобы затруднить отпечатки пальцев."

msgid ""
"Returns the type of the video adapter. Since dedicated graphics cards from a "
"given generation will [i]usually[/i] be significantly faster than integrated "
"graphics made in the same generation, the device type can be used as a basis "
"for automatic graphics settings adjustment. However, this is not always true, "
"so make sure to provide users with a way to manually override graphics "
"settings.\n"
"[b]Note:[/b] When using the OpenGL rendering driver or when running in "
"headless mode, this function always returns [constant "
"RenderingDevice.DEVICE_TYPE_OTHER]."
msgstr ""
"Возвращает тип видеоадаптера. Поскольку выделенные графические карты "
"определенного поколения [i]обычно[/i] будут значительно быстрее "
"интегрированных графических карт того же поколения, тип устройства можно "
"использовать в качестве основы для автоматической регулировки графических "
"настроек. Однако это не всегда так, поэтому обязательно предоставьте "
"пользователям возможность вручную переопределять графические настройки.\n"
"[b]Примечание:[/b] При использовании драйвера рендеринга OpenGL или при "
"работе в режиме headless эта функция всегда возвращает [constant "
"RenderingDevice.DEVICE_TYPE_OTHER]."

msgid ""
"Returns the vendor of the video adapter (e.g. \"NVIDIA Corporation\").\n"
"[b]Note:[/b] When running a headless or server binary, this function returns "
"an empty string."
msgstr ""
"Возвращает поставщика видеоадаптера (например, «NVIDIA Corporation»).\n"
"[b]Примечание:[/b] При запуске headless или серверного двоичного файла эта "
"функция возвращает пустую строку."

msgid ""
"Returns the ID of a 4×4 white texture (in [constant Image.FORMAT_RGB8] "
"format). This texture will be created and returned on the first call to "
"[method get_white_texture], then it will be cached for subsequent calls. See "
"also [method get_test_texture].\n"
"[b]Example:[/b] Get the white texture and apply it to a [Sprite2D] node:\n"
"[codeblock]\n"
"var texture_rid = RenderingServer.get_white_texture()\n"
"var texture = "
"ImageTexture.create_from_image(RenderingServer.texture_2d_get(texture_rid))\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]"
msgstr ""
"Возвращает идентификатор белой текстуры 4×4 (в формате [constant "
"Image.FORMAT_RGB8]). Эта текстура будет создана и возвращена при первом "
"вызове [method get_white_texture], затем она будет кэширована для последующих "
"вызовов. См. также [method get_test_texture].\n"
"[b]Пример:[/b] Получите белую текстуру и примените ее к узлу [Sprite2D]:\n"
"[codeblock]\n"
"var texture_rid = RenderingServer.get_white_texture()\n"
"var texture = "
"ImageTexture.create_from_image(RenderingServer.texture_2d_get(texture_rid))\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]"

msgid ""
"If [param half_resolution] is [code]true[/code], renders [VoxelGI] and SDFGI "
"([member Environment.sdfgi_enabled]) buffers at halved resolution on each "
"axis (e.g. 960×540 when the viewport size is 1920×1080). This improves "
"performance significantly when VoxelGI or SDFGI is enabled, at the cost of "
"artifacts that may be visible on polygon edges. The loss in quality becomes "
"less noticeable as the viewport resolution increases. [LightmapGI] rendering "
"is not affected by this setting. Equivalent to [member "
"ProjectSettings.rendering/global_illumination/gi/use_half_resolution]."
msgstr ""
"Если [param half_resolution] равен [code]true[/code], рендеринг буферов "
"[VoxelGI] и SDFGI ([member Environment.sdfgi_enabled]) с уменьшенным вдвое "
"разрешением по каждой оси (например, 960×540 при размере области просмотра "
"1920×1080). Это значительно повышает производительность при включении VoxelGI "
"или SDFGI за счет артефактов, которые могут быть видны на краях полигонов. "
"Потеря качества становится менее заметной по мере увеличения разрешения "
"области просмотра. Рендеринг [LightmapGI] не зависит от этой настройки. "
"Эквивалентно [member ProjectSettings.rendering/global_illumination/gi/"
"use_half_resolution]."

msgid ""
"Creates a new global shader uniform.\n"
"[b]Note:[/b] Global shader parameter names are case-sensitive."
msgstr ""
"Создает новый глобальный шейдер.\n"
"[b]Примечание:[/b] Имена глобальных параметров шейдера чувствительны к "
"регистру."

msgid ""
"Returns the value of the global shader uniform specified by [param name].\n"
"[b]Note:[/b] [method global_shader_parameter_get] has a large performance "
"penalty as the rendering thread needs to synchronize with the calling thread, "
"which is slow. Do not use this method during gameplay to avoid stuttering. If "
"you need to read values in a script after setting them, consider creating an "
"autoload where you store the values you need to query at the same time you're "
"setting them as global parameters."
msgstr ""
"Возвращает значение глобальной шейдерной формы, указанной [param name].\n"
"[b]Примечание:[/b] [method global_shader_parameter_get] имеет большое падение "
"производительности, так как поток рендеринга должен синхронизироваться с "
"вызывающим потоком, что медленно. Не используйте этот метод во время игры, "
"чтобы избежать заиканий. Если вам нужно прочитать значения в скрипте после их "
"установки, рассмотрите возможность создания автозагрузки, в которой вы будете "
"хранить значения, которые вам нужно запросить, одновременно с установкой их в "
"качестве глобальных параметров."

msgid ""
"Returns the list of global shader uniform names.\n"
"[b]Note:[/b] [method global_shader_parameter_get] has a large performance "
"penalty as the rendering thread needs to synchronize with the calling thread, "
"which is slow. Do not use this method during gameplay to avoid stuttering. If "
"you need to read values in a script after setting them, consider creating an "
"autoload where you store the values you need to query at the same time you're "
"setting them as global parameters."
msgstr ""
"Возвращает список имен глобальных униформ шейдеров.\n"
"[b]Примечание:[/b] [method global_shader_parameter_get] имеет большое падение "
"производительности, так как поток рендеринга должен синхронизироваться с "
"вызывающим потоком, что медленно. Не используйте этот метод во время игры, "
"чтобы избежать заиканий. Если вам нужно прочитать значения в скрипте после их "
"установки, рассмотрите возможность создания автозагрузки, в которой вы будете "
"хранить значения, которые вам нужно запросить, одновременно с установкой их в "
"качестве глобальных параметров."

msgid ""
"Returns the type associated to the global shader uniform specified by [param "
"name].\n"
"[b]Note:[/b] [method global_shader_parameter_get] has a large performance "
"penalty as the rendering thread needs to synchronize with the calling thread, "
"which is slow. Do not use this method during gameplay to avoid stuttering. If "
"you need to read values in a script after setting them, consider creating an "
"autoload where you store the values you need to query at the same time you're "
"setting them as global parameters."
msgstr ""
"Возвращает тип, связанный с глобальной шейдерной униформой, указанной [param "
"name].\n"
"[b]Примечание:[/b] [method global_shader_parameter_get] имеет большое падение "
"производительности, так как поток рендеринга должен синхронизироваться с "
"вызывающим потоком, что медленно. Не используйте этот метод во время игры, "
"чтобы избежать заиканий. Если вам нужно прочитать значения в скрипте после их "
"установки, рассмотрите возможность создания автозагрузки, в которой вы будете "
"хранить значения, которые вам нужно запросить, одновременно с установкой их в "
"качестве глобальных параметров."

msgid "Removes the global shader uniform specified by [param name]."
msgstr "Удаляет глобальную униформу шейдера, указанную [param name]."

msgid "Sets the global shader uniform [param name] to [param value]."
msgstr ""
"Устанавливает глобальную униформу шейдера [param name] на [param value]."

msgid ""
"Overrides the global shader uniform [param name] with [param value]. "
"Equivalent to the [ShaderGlobalsOverride] node."
msgstr ""
"Переопределяет глобальную униформу шейдера [param name] на [param value]. "
"Эквивалентно узлу [ShaderGlobalsOverride]."

msgid ""
"Returns [code]true[/code] if changes have been made to the RenderingServer's "
"data. [method force_draw] is usually called if this happens."
msgstr ""
"Возвращает [code]true[/code], если были внесены изменения в данные "
"RenderingServer. В этом случае обычно вызывается [method force_draw]."

msgid "This method has not been used since Godot 3.0."
msgstr "Этот метод не использовался со времен Godot 3.0."

msgid "This method does nothing and always returns [code]false[/code]."
msgstr "Этот метод ничего не делает и всегда возвращает [code]false[/code]."

msgid ""
"Returns [code]true[/code] if the OS supports a certain [param feature]. "
"Features might be [code]s3tc[/code], [code]etc[/code], and [code]etc2[/code]."
msgstr ""
"Возвращает [code]true[/code], если ОС поддерживает определенную [param "
"feature]. Возможно, это [code]s3tc[/code], [code]etc[/code] и [code]etc2[/"
"code]."

msgid ""
"Attaches a unique Object ID to instance. Object ID must be attached to "
"instance for proper culling with [method instances_cull_aabb], [method "
"instances_cull_convex], and [method instances_cull_ray]."
msgstr ""
"Прикрепляет уникальный идентификатор объекта к экземпляру. Идентификатор "
"объекта должен быть прикреплен к экземпляру для правильного отбраковывания с "
"помощью [method instances_cull_aabb], [method instances_cull_convex] и "
"[method instances_cull_ray]."

msgid ""
"Attaches a skeleton to an instance. Removes the previous skeleton from the "
"instance."
msgstr ""
"Прикрепляет скелет к экземпляру. Удаляет предыдущий скелет из экземпляра."

msgid ""
"Creates a visual instance and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
"[code]instance_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"An instance is a way of placing a 3D object in the scenario. Objects like "
"particles, meshes, reflection probes and decals need to be associated with an "
"instance to be visible in the scenario using [method instance_set_base].\n"
"[b]Note:[/b] The equivalent node is [VisualInstance3D]."
msgstr ""
"Создает визуальный экземпляр и добавляет его в RenderingServer. К нему можно "
"получить доступ с помощью возвращаемого RID. Этот RID будет использоваться во "
"всех функциях RenderingServer [code]instance_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"Экземпляр — это способ размещения 3D-объекта в сценарии. Такие объекты, как "
"частицы, сетки, отражающие зонды и декали, должны быть связаны с экземпляром, "
"чтобы быть видимыми в сценарии с помощью [method instance_set_base].\n"
"[b]Примечание:[/b] Эквивалентный узел — [VisualInstance3D]."

msgid ""
"Creates a visual instance, adds it to the RenderingServer, and sets both base "
"and scenario. It can be accessed with the RID that is returned. This RID will "
"be used in all [code]instance_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method. This is a shorthand for using "
"[method instance_create] and setting the base and scenario manually."
msgstr ""
"Создает визуальный экземпляр, добавляет его в RenderingServer и задает как "
"базу, так и сценарий. Доступ к нему можно получить с помощью возвращаемого "
"RID. Этот RID будет использоваться во всех функциях [code]instance_*[/code] "
"RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer. Это сокращение для использования [method "
"instance_create] и установки базы и сценария вручную."

msgid ""
"Returns the value of the per-instance shader uniform from the specified 3D "
"geometry instance. Equivalent to [method "
"GeometryInstance3D.get_instance_shader_parameter].\n"
"[b]Note:[/b] Per-instance shader parameter names are case-sensitive."
msgstr ""
"Возвращает значение шейдерной формы для каждого экземпляра из указанного "
"экземпляра 3D-геометрии. Эквивалентно [method "
"GeometryInstance3D.get_instance_shader_parameter].\n"
"[b]Примечание:[/b] Имена параметров шейдера для каждого экземпляра "
"чувствительны к регистру."

msgid ""
"Returns the default value of the per-instance shader uniform from the "
"specified 3D geometry instance. Equivalent to [method "
"GeometryInstance3D.get_instance_shader_parameter]."
msgstr ""
"Возвращает значение по умолчанию для шейдера-единообразного экземпляра из "
"указанного экземпляра 3D-геометрии. Эквивалентно [method "
"GeometryInstance3D.get_instance_shader_parameter]."

msgid ""
"Returns a dictionary of per-instance shader uniform names of the per-instance "
"shader uniform from the specified 3D geometry instance. The returned "
"dictionary is in PropertyInfo format, with the keys [code]name[/code], "
"[code]class_name[/code], [code]type[/code], [code]hint[/code], "
"[code]hint_string[/code] and [code]usage[/code]. Equivalent to [method "
"GeometryInstance3D.get_instance_shader_parameter]."
msgstr ""
"Возвращает словарь имен униформ шейдера для каждого экземпляра униформ "
"шейдера для каждого экземпляра из указанного экземпляра 3D-геометрии. "
"Возвращаемый словарь находится в формате PropertyInfo с ключами [code]name[/"
"code], [code]class_name[/code], [code]type[/code], [code]hint[/code], "
"[code]hint_string[/code] и [code]usage[/code]. Эквивалентно [method "
"GeometryInstance3D.get_instance_shader_parameter]."

msgid ""
"Sets the shadow casting setting. Equivalent to [member "
"GeometryInstance3D.cast_shadow]."
msgstr ""
"Устанавливает настройку отбрасывания тени. Эквивалентно [member "
"GeometryInstance3D.cast_shadow]."

msgid "Sets the [param flag] for a given [param instance] to [param enabled]."
msgstr ""
"Устанавливает [param flag] для заданного [param instance] на [param enabled]."

msgid ""
"Sets the lightmap GI instance to use for the specified 3D geometry instance. "
"The lightmap UV scale for the specified instance (equivalent to [member "
"GeometryInstance3D.gi_lightmap_scale]) and lightmap atlas slice must also be "
"specified."
msgstr ""
"Устанавливает экземпляр карты освещения GI для использования с указанным "
"экземпляром 3D-геометрии. Масштаб UV карты освещения для указанного "
"экземпляра (эквивалент [member GeometryInstance3D.gi_lightmap_scale]) и срез "
"атласа карты освещения также должны быть указаны."

msgid ""
"Sets the level of detail bias to use when rendering the specified 3D geometry "
"instance. Higher values result in higher detail from further away. Equivalent "
"to [member GeometryInstance3D.lod_bias]."
msgstr ""
"Устанавливает уровень смещения детализации, используемый при рендеринге "
"указанного экземпляра 3D-геометрии. Более высокие значения приводят к более "
"высокой детализации с большего расстояния. Эквивалентно [member "
"GeometryInstance3D.lod_bias]."

msgid ""
"Sets a material that will be rendered for all surfaces on top of active "
"materials for the mesh associated with this instance. Equivalent to [member "
"GeometryInstance3D.material_overlay]."
msgstr ""
"Устанавливает материал, который будет визуализироваться для всех поверхностей "
"поверх активных материалов для сетки, связанной с этим экземпляром. "
"Эквивалентно [member GeometryInstance3D.material_overlay]."

msgid ""
"Sets a material that will override the material for all surfaces on the mesh "
"associated with this instance. Equivalent to [member "
"GeometryInstance3D.material_override]."
msgstr ""
"Устанавливает материал, который переопределит материал для всех поверхностей "
"сетки, связанной с этим экземпляром. Эквивалентно [member "
"GeometryInstance3D.material_override]."

msgid ""
"Sets the per-instance shader uniform on the specified 3D geometry instance. "
"Equivalent to [method GeometryInstance3D.set_instance_shader_parameter]."
msgstr ""
"Устанавливает униформу шейдера для каждого экземпляра на указанном экземпляре "
"3D-геометрии. Эквивалентно "
"[methodGeometryInstance3D.set_instance_shader_parameter]."

msgid ""
"Sets the transparency for the given geometry instance. Equivalent to [member "
"GeometryInstance3D.transparency].\n"
"A transparency of [code]0.0[/code] is fully opaque, while [code]1.0[/code] is "
"fully transparent. Values greater than [code]0.0[/code] (exclusive) will "
"force the geometry's materials to go through the transparent pipeline, which "
"is slower to render and can exhibit rendering issues due to incorrect "
"transparency sorting. However, unlike using a transparent material, setting "
"[param transparency] to a value greater than [code]0.0[/code] (exclusive) "
"will [i]not[/i] disable shadow rendering.\n"
"In spatial shaders, [code]1.0 - transparency[/code] is set as the default "
"value of the [code]ALPHA[/code] built-in.\n"
"[b]Note:[/b] [param transparency] is clamped between [code]0.0[/code] and "
"[code]1.0[/code], so this property cannot be used to make transparent "
"materials more opaque than they originally are."
msgstr ""
"Устанавливает прозрачность для данного экземпляра геометрии. Эквивалентно "
"[member GeometryInstance3D.transparency].\n"
"Прозрачность [code]0.0[/code] полностью непрозрачна, а [code]1.0[/code] "
"полностью прозрачна. Значения больше [code]0.0[/code] (исключительно) "
"заставят материалы геометрии проходить через прозрачный конвейер, который "
"медленнее визуализируется и может вызывать проблемы с визуализацией из-за "
"неправильной сортировки прозрачности. Однако, в отличие от использования "
"прозрачного материала, установка [param transparent] на значение больше "
"[code]0.0[/code] (исключительно) [i]не[/i] отключит визуализацию теней.\n"
"В пространственных шейдерах [code]1.0 - transparent[/code] устанавливается "
"как значение по умолчанию встроенного [code]ALPHA[/code]. \n"
"[b]Примечание:[/b] [param transparency] ограничен значениями между [code]0.0[/"
"code] и [code]1.0[/code], поэтому это свойство нельзя использовать для того, "
"чтобы сделать прозрачные материалы более непрозрачными, чем они есть "
"изначально."

msgid ""
"Sets the visibility range values for the given geometry instance. Equivalent "
"to [member GeometryInstance3D.visibility_range_begin] and related properties."
msgstr ""
"Устанавливает значения диапазона видимости для данного экземпляра геометрии. "
"Эквивалентно [member GeometryInstance3D.visibility_range_begin] и связанным "
"свойствам."

msgid ""
"Sets the base of the instance. A base can be any of the 3D objects that are "
"created in the RenderingServer that can be displayed. For example, any of the "
"light types, mesh, multimesh, particle system, reflection probe, decal, "
"lightmap, voxel GI and visibility notifiers are all types that can be set as "
"the base of an instance in order to be displayed in the scenario."
msgstr ""
"Устанавливает базу экземпляра. Базой может быть любой из 3D-объектов, "
"созданных в RenderingServer, который может быть отображен. Например, любой из "
"типов освещения, сетка, мультисетка, система частиц, зонд отражения, декаль, "
"карта освещения, воксельное GI и уведомители видимости — все это типы, "
"которые можно задать в качестве базы экземпляра для отображения в сценарии."

msgid "Sets the weight for a given blend shape associated with this instance."
msgstr ""
"Устанавливает вес для заданной формы смешивания, связанной с этим экземпляром."

msgid ""
"Sets a custom AABB to use when culling objects from the view frustum. "
"Equivalent to setting [member GeometryInstance3D.custom_aabb]."
msgstr ""
"Устанавливает пользовательский AABB для использования при отбраковке объектов "
"из усеченной пирамиды видимости. Эквивалентно настройке [member "
"GeometryInstance3D.custom_aabb]."

msgid ""
"Sets a margin to increase the size of the AABB when culling objects from the "
"view frustum. This allows you to avoid culling objects that fall outside the "
"view frustum. Equivalent to [member GeometryInstance3D.extra_cull_margin]."
msgstr ""
"Устанавливает поле для увеличения размера AABB при отбраковке объектов из "
"усеченной пирамиды видимости. Это позволяет избежать отбраковки объектов, "
"которые выходят за пределы усеченной пирамиды видимости. Эквивалентно [member "
"GeometryInstance3D.extra_cull_margin]."

msgid ""
"If [code]true[/code], ignores both frustum and occlusion culling on the "
"specified 3D geometry instance. This is not the same as [member "
"GeometryInstance3D.ignore_occlusion_culling], which only ignores occlusion "
"culling and leaves frustum culling intact."
msgstr ""
"Если [code]true[/code], игнорирует как frustum, так и occlusion culling на "
"указанном экземпляре 3D-геометрии. Это не то же самое, что [member "
"GeometryInstance3D.ignore_occlusion_culling], который игнорирует только "
"occlusion culling и оставляет frustum culling нетронутым."

msgid ""
"Sets the render layers that this instance will be drawn to. Equivalent to "
"[member VisualInstance3D.layers]."
msgstr ""
"Устанавливает слои рендеринга, на которых будет отрисован этот экземпляр. "
"Эквивалентно [member VisualInstance3D.layers]."

msgid ""
"Sets the sorting offset and switches between using the bounding box or "
"instance origin for depth sorting."
msgstr ""
"Устанавливает смещение сортировки и переключается между использованием "
"ограничивающей рамки или начала координат экземпляра для сортировки по "
"глубине."

msgid ""
"Sets the scenario that the instance is in. The scenario is the 3D world that "
"the objects will be displayed in."
msgstr ""
"Задает сценарий, в котором находится экземпляр. Сценарий — это трехмерный "
"мир, в котором будут отображаться объекты."

msgid ""
"Sets the override material of a specific surface. Equivalent to [method "
"MeshInstance3D.set_surface_override_material]."
msgstr ""
"Устанавливает переопределяющий материал определенной поверхности. "
"Эквивалентно [method MeshInstance3D.set_surface_override_material]."

msgid ""
"Sets the world space transform of the instance. Equivalent to [member "
"Node3D.global_transform]."
msgstr ""
"Устанавливает преобразование мирового пространства экземпляра. Эквивалентно "
"[member Node3D.global_transform]."

msgid ""
"Sets the visibility parent for the given instance. Equivalent to [member "
"Node3D.visibility_parent]."
msgstr ""
"Устанавливает родительский элемент видимости для данного экземпляра. "
"Эквивалентно [member Node3D.visibility_parent]."

msgid ""
"Sets whether an instance is drawn or not. Equivalent to [member "
"Node3D.visible]."
msgstr ""
"Устанавливает, будет ли экземпляр отрисован или нет. Эквивалентно [member "
"Node3D.visible]."

msgid ""
"Resets motion vectors and other interpolated values. Use this [i]after[/i] "
"teleporting a mesh from one position to another to avoid ghosting artifacts."
msgstr ""
"Сбрасывает векторы движения и другие интерполируемые значения. Используйте "
"этот метод [i]после[/i] телепортации меша из одной позиции в другую, чтобы "
"избежать артефактов размытия в движении (ghosting)."

msgid ""
"Returns an array of object IDs intersecting with the provided AABB. Only 3D "
"nodes that inherit from [VisualInstance3D] are considered, such as "
"[MeshInstance3D] or [DirectionalLight3D]. Use [method "
"@GlobalScope.instance_from_id] to obtain the actual nodes. A scenario RID "
"must be provided, which is available in the [World3D] you want to query. This "
"forces an update for all resources queued to update.\n"
"[b]Warning:[/b] This function is primarily intended for editor usage. For in-"
"game use cases, prefer physics collision."
msgstr ""
"Возвращает массив идентификаторов объектов, пересекающихся с предоставленным "
"AABB. Рассматриваются только 3D-узлы, которые наследуются от "
"[VisualInstance3D], например [MeshInstance3D] или [DirectionalLight3D]. "
"Используйте [method @GlobalScope.instance_from_id] для получения фактических "
"узлов. Необходимо предоставить RID сценария, который доступен в [World3D], "
"который вы хотите запросить. Это принудительно обновит все ресурсы, "
"поставленные в очередь на обновление.\n"
"[b]Предупреждение:[/b] Эта функция в первую очередь предназначена для "
"использования в редакторе. Для внутриигровых случаев использования "
"предпочитайте физическое столкновение."

msgid ""
"Returns an array of object IDs intersecting with the provided convex shape. "
"Only 3D nodes that inherit from [VisualInstance3D] are considered, such as "
"[MeshInstance3D] or [DirectionalLight3D]. Use [method "
"@GlobalScope.instance_from_id] to obtain the actual nodes. A scenario RID "
"must be provided, which is available in the [World3D] you want to query. This "
"forces an update for all resources queued to update.\n"
"[b]Warning:[/b] This function is primarily intended for editor usage. For in-"
"game use cases, prefer physics collision."
msgstr ""
"Возвращает массив идентификаторов объектов, пересекающихся с предоставленной "
"выпуклой формой. Рассматриваются только 3D-узлы, которые наследуются от "
"[VisualInstance3D], такие как [MeshInstance3D] или [DirectionalLight3D]. "
"Используйте [method @GlobalScope.instance_from_id] для получения фактических "
"узлов. Необходимо предоставить RID сценария, который доступен в [World3D], "
"который вы хотите запросить. Это принудительно обновит все ресурсы, "
"поставленные в очередь на обновление.\n"
"[b]Предупреждение:[/b] Эта функция в первую очередь предназначена для "
"использования в редакторе. Для внутриигровых случаев использования "
"предпочитайте физическое столкновение."

msgid ""
"Returns an array of object IDs intersecting with the provided 3D ray. Only 3D "
"nodes that inherit from [VisualInstance3D] are considered, such as "
"[MeshInstance3D] or [DirectionalLight3D]. Use [method "
"@GlobalScope.instance_from_id] to obtain the actual nodes. A scenario RID "
"must be provided, which is available in the [World3D] you want to query. This "
"forces an update for all resources queued to update.\n"
"[b]Warning:[/b] This function is primarily intended for editor usage. For in-"
"game use cases, prefer physics collision."
msgstr ""
"Возвращает массив идентификаторов объектов, пересекающихся с предоставленным "
"3D-лучом. Рассматриваются только 3D-узлы, которые наследуются от "
"[VisualInstance3D], например [MeshInstance3D] или [DirectionalLight3D]. "
"Используйте [method @GlobalScope.instance_from_id] для получения фактических "
"узлов. Необходимо предоставить RID сценария, который доступен в [World3D], "
"который вы хотите запросить. Это принудительно обновит все ресурсы, "
"поставленные в очередь на обновление.\n"
"[b]Предупреждение:[/b] Эта функция в первую очередь предназначена для "
"использования в редакторе. Для внутриигровых случаев использования "
"предпочитайте физическое столкновение."

msgid ""
"Returns [code]true[/code] if our code is currently executing on the rendering "
"thread."
msgstr ""
"Возвращает [code]true[/code], если наш код в данный момент выполняется в "
"потоке рендеринга."

msgid ""
"If [code]true[/code], this directional light will blend between shadow map "
"splits resulting in a smoother transition between them. Equivalent to [member "
"DirectionalLight3D.directional_shadow_blend_splits]."
msgstr ""
"Если [code]true[/code], этот направленный свет будет смешиваться между "
"разделениями карты теней, что приведет к более плавному переходу между ними. "
"Эквивалентно [member DirectionalLight3D.directional_shadow_blend_splits]."

msgid ""
"Sets the shadow mode for this directional light. Equivalent to [member "
"DirectionalLight3D.directional_shadow_mode]."
msgstr ""
"Устанавливает режим тени для этого направленного света. Эквивалентно [member "
"DirectionalLight3D.directional_shadow_mode]."

msgid ""
"If [code]true[/code], this light will not be used for anything except sky "
"shaders. Use this for lights that impact your sky shader that you may want to "
"hide from affecting the rest of the scene. For example, you may want to "
"enable this when the sun in your sky shader falls below the horizon."
msgstr ""
"Если [code]true[/code], этот свет не будет использоваться ни для чего, кроме "
"шейдеров неба. Используйте это для источников света, которые влияют на ваш "
"шейдер неба, и которые вы хотите скрыть от влияния на остальную часть сцены. "
"Например, вы можете захотеть включить это, когда солнце в вашем шейдере неба "
"опускается за горизонт."

msgid ""
"Sets whether to use a dual paraboloid or a cubemap for the shadow map. Dual "
"paraboloid is faster but may suffer from artifacts. Equivalent to [member "
"OmniLight3D.omni_shadow_mode]."
msgstr ""
"Устанавливает, использовать ли двойной параболоид или кубическую карту для "
"карты теней. Двойной параболоид быстрее, но может страдать от артефактов. "
"Эквивалентно [member OmniLight3D.omni_shadow_mode]."

msgid ""
"Sets the texture filter mode to use when rendering light projectors. This "
"parameter is global and cannot be set on a per-light basis."
msgstr ""
"Устанавливает режим фильтра текстуры для использования при рендеринге "
"проекторов света. Этот параметр является глобальным и не может быть "
"установлен для каждого источника света."

msgid ""
"Sets the bake mode to use for the specified 3D light. Equivalent to [member "
"Light3D.light_bake_mode]."
msgstr ""
"Устанавливает режим запекания для указанного 3D-света. Эквивалентно [member "
"Light3D.light_bake_mode]."

msgid "Sets the color of the light. Equivalent to [member Light3D.light_color]."
msgstr "Устанавливает цвет света. Эквивалентно [member Light3D.light_color]."

msgid ""
"Sets the cull mask for this 3D light. Lights only affect objects in the "
"selected layers. Equivalent to [member Light3D.light_cull_mask]."
msgstr ""
"Устанавливает маску отбраковки для этого 3D-света. Свет влияет только на "
"объекты в выбранных слоях. Эквивалентно [member Light3D.light_cull_mask]."

msgid ""
"Sets the distance fade for this 3D light. This acts as a form of level of "
"detail (LOD) and can be used to improve performance. Equivalent to [member "
"Light3D.distance_fade_enabled], [member Light3D.distance_fade_begin], [member "
"Light3D.distance_fade_shadow], and [member Light3D.distance_fade_length]."
msgstr ""
"Устанавливает расстояние затухания для этого 3D-света. Это действует как "
"форма уровня детализации (LOD) и может использоваться для улучшения "
"производительности. Эквивалентно [member Light3D.distance_fade_enabled], "
"[member Light3D.distance_fade_begin], [member Light3D.distance_fade_shadow] и "
"[member Light3D.distance_fade_length]."

msgid ""
"Sets the maximum SDFGI cascade in which the 3D light's indirect lighting is "
"rendered. Higher values allow the light to be rendered in SDFGI further away "
"from the camera."
msgstr ""
"Устанавливает максимальный каскад SDFGI, в котором визуализируется непрямое "
"освещение 3D-света. Более высокие значения позволяют визуализировать свет в "
"SDFGI дальше от камеры."

msgid ""
"If [code]true[/code], the 3D light will subtract light instead of adding "
"light. Equivalent to [member Light3D.light_negative]."
msgstr ""
"Если [code]true[/code], 3D-свет будет вычитать свет вместо добавления света. "
"Эквивалентно [member Light3D.light_negative]."

msgid ""
"Sets the specified 3D light parameter. Equivalent to [method "
"Light3D.set_param]."
msgstr ""
"Устанавливает указанный параметр 3D-освещения. Эквивалентно [method "
"Light3D.set_param]."

msgid ""
"Sets the projector texture to use for the specified 3D light. Equivalent to "
"[member Light3D.light_projector]."
msgstr ""
"Устанавливает текстуру проектора для использования с указанным 3D-освещением. "
"Эквивалентно [member Light3D.light_projector]."

msgid ""
"If [code]true[/code], reverses the backface culling of the mesh. This can be "
"useful when you have a flat mesh that has a light behind it. If you need to "
"cast a shadow on both sides of the mesh, set the mesh to use double-sided "
"shadows with [method instance_geometry_set_cast_shadows_setting]. Equivalent "
"to [member Light3D.shadow_reverse_cull_face]."
msgstr ""
"Если [code]true[/code], то отменяется отбраковка задней поверхности сетки. "
"Это может быть полезно, когда у вас есть плоская сетка, за которой находится "
"свет. Если вам нужно отбросить тень на обе стороны сетки, настройте сетку на "
"использование двухсторонних теней с помощью [method "
"instance_geometry_set_cast_shadows_setting]. Эквивалентно [member "
"Light3D.shadow_reverse_cull_face]."

msgid ""
"If [code]true[/code], light will cast shadows. Equivalent to [member "
"Light3D.shadow_enabled]."
msgstr ""
"Если [code]true[/code], свет будет отбрасывать тени. Эквивалентно [member "
"Light3D.shadow_enabled]."

msgid ""
"Sets the shadow caster mask for this 3D light. Shadows will only be cast "
"using objects in the selected layers. Equivalent to [member "
"Light3D.shadow_caster_mask]."
msgstr ""
"Устанавливает маску отбрасывателя тени для этого 3D-света. Тени будут "
"отбрасываться только с использованием объектов в выбранных слоях. "
"Эквивалентно [member Light3D.shadow_caster_mask]."

msgid ""
"Creates a new lightmap global illumination instance and adds it to the "
"RenderingServer. It can be accessed with the RID that is returned. This RID "
"will be used in all [code]lightmap_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent node is [LightmapGI]."
msgstr ""
"Создает новый экземпляр глобального освещения карты освещения и добавляет его "
"в RenderingServer. Доступ к нему можно получить с помощью возвращаемого RID. "
"Этот RID будет использоваться во всех функциях [code]lightmap_*[/code] "
"RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный узел — [LightmapGI]."

msgid ""
"Used to inform the renderer what exposure normalization value was used while "
"baking the lightmap. This value will be used and modulated at run time to "
"ensure that the lightmap maintains a consistent level of exposure even if the "
"scene-wide exposure normalization is changed at run time. For more "
"information see [method camera_attributes_set_exposure]."
msgstr ""
"Используется для информирования рендерера о том, какое значение нормализации "
"экспозиции использовалось при запекании карты освещения. Это значение будет "
"использоваться и модулироваться во время выполнения, чтобы гарантировать, что "
"карта освещения поддерживает постоянный уровень экспозиции, даже если "
"нормализация экспозиции по всей сцене изменяется во время выполнения. Для "
"получения дополнительной информации см. [method "
"camera_attributes_set_exposure]."

msgid ""
"Set the textures on the given [param lightmap] GI instance to the texture "
"array pointed to by the [param light] RID. If the lightmap texture was baked "
"with [member LightmapGI.directional] set to [code]true[/code], then [param "
"uses_sh] must also be [code]true[/code]."
msgstr ""
"Установите текстуры на данном экземпляре GI [param lightmap] в массив "
"текстур, на который указывает RID [param light]. Если текстура карты "
"освещения была запечена с [member LightmapGI.directional], установленным на "
"[code]true[/code], то [param uses_sh] также должен быть [code]true[/code]."

msgid ""
"Toggles whether a bicubic filter should be used when lightmaps are sampled. "
"This smoothens their appearance at a performance cost."
msgstr ""
"Переключает, следует ли использовать бикубический фильтр при выборке карт "
"освещения. Это сглаживает их внешний вид за счет производительности."

msgid ""
"Returns a mesh of a sphere with the given number of horizontal subdivisions, "
"vertical subdivisions and radius. See also [method get_test_cube]."
msgstr ""
"Возвращает сетку сферы с заданным числом горизонтальных подразделений, "
"вертикальных подразделений и радиусом. См. также [method get_test_cube]."

msgid ""
"Creates an empty material and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
"[code]material_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent resource is [Material]."
msgstr ""
"Создает пустой материал и добавляет его в RenderingServer. К нему можно "
"получить доступ с помощью возвращаемого RID. Этот RID будет использоваться во "
"всех функциях RenderingServer [code]material_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [Material]."

msgid "Returns the value of a certain material's parameter."
msgstr "Возвращает значение определенного параметра материала."

msgid "Sets an object's next material."
msgstr "Устанавливает следующий материал объекта."

msgid "Sets a material's parameter."
msgstr "Устанавливает параметр материала."

msgid "Sets a material's render priority."
msgstr "Устанавливает приоритет рендеринга материала."

msgid "Sets a shader material's shader."
msgstr "Устанавливает шейдер материала шейдера."

msgid "Removes all surfaces from a mesh."
msgstr "Удаляет все поверхности из сетки."

msgid ""
"Creates a new mesh and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]mesh_*[/"
"code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"To place in a scene, attach this mesh to an instance using [method "
"instance_set_base] using the returned RID.\n"
"[b]Note:[/b] The equivalent resource is [Mesh]."
msgstr ""
"Создает новую сетку и добавляет ее в RenderingServer. Доступ к ней можно "
"получить с помощью возвращаемого RID. Этот RID будет использоваться во всех "
"функциях RenderingServer [code]mesh_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"Чтобы разместить в сцене, прикрепите эту сетку к экземпляру с помощью [method "
"instance_set_base], используя возвращаемый RID.\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [Mesh]."

msgid "Returns a mesh's blend shape count."
msgstr "Возвращает количество смешанных форм сетки."

msgid "Returns a mesh's blend shape mode."
msgstr "Возвращает режим смешивания форм сетки."

msgid "Returns a mesh's custom aabb."
msgstr "Возвращает пользовательский aabb сетки."

msgid "Returns a mesh's number of surfaces."
msgstr "Возвращает количество поверхностей сетки."

msgid "Sets a mesh's blend shape mode."
msgstr "Устанавливает режим смешивания форм сетки."

msgid "Sets a mesh's custom aabb."
msgstr "Устанавливает пользовательский aabb сетки."

msgid "Returns a mesh's surface's buffer arrays."
msgstr "Возвращает массивы буферов поверхности сетки."

msgid "Returns a mesh's surface's arrays for blend shapes."
msgstr "Возвращает массивы поверхности сетки для смешанных форм."

msgid ""
"Returns the stride of the attribute buffer for a mesh with given [param "
"format]."
msgstr "Возвращает шаг буфера атрибутов для сетки с заданным [param format]."

msgid ""
"Returns the stride of the index buffer for a mesh with the given [param "
"format]."
msgstr "Возвращает шаг индексного буфера для сетки с заданным [param format]."

msgid ""
"Returns the stride of the combined normals and tangents for a mesh with given "
"[param format]. Note importantly that, while normals and tangents are in the "
"vertex buffer with vertices, they are only interleaved with each other and so "
"have a different stride than vertex positions."
msgstr ""
"Возвращает шаг комбинированных нормалей и касательных для сетки с заданным "
"[param format]. Важно отметить, что, хотя нормали и касательные находятся в "
"буфере вершин с вершинами, они только чередуются друг с другом и поэтому "
"имеют шаг, отличный от позиций вершин."

msgid ""
"Returns the offset of a given attribute by [param array_index] in the start "
"of its respective buffer."
msgstr ""
"Возвращает смещение заданного атрибута на [param array_index] в начале "
"соответствующего буфера."

msgid ""
"Returns the stride of the skin buffer for a mesh with given [param format]."
msgstr "Возвращает шаг буфера кожи для сетки с заданным [param format]."

msgid ""
"Returns the stride of the vertex positions for a mesh with given [param "
"format]. Note importantly that vertex positions are stored consecutively and "
"are not interleaved with the other attributes in the vertex buffer (normals "
"and tangents)."
msgstr ""
"Возвращает шаг позиций вершин для сетки с заданным [param format]. Важно "
"отметить, что позиции вершин сохраняются последовательно и не чередуются с "
"другими атрибутами в буфере вершин (нормалями и касательными)."

msgid "Returns a mesh's surface's material."
msgstr "Возвращает материал поверхности сетки."

msgid "Sets a mesh's surface's material."
msgstr "Устанавливает материал поверхности сетки."

msgid ""
"Updates the index buffer of the mesh surface with the given [param data]. The "
"expected data are 16 or 32-bit unsigned integers, which can be determined "
"with [method mesh_surface_get_format_index_stride]."
msgstr ""
"Обновляет индексный буфер поверхности меша переданными [param data]. "
"Ожидаемые данные — 16- или 32-битные беззнаковые целые числа, что можно "
"определить с помощью [method mesh_surface_get_format_index_stride]."

msgid ""
"Creates a new multimesh on the RenderingServer and returns an [RID] handle. "
"This RID will be used in all [code]multimesh_*[/code] RenderingServer "
"functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"To place in a scene, attach this multimesh to an instance using [method "
"instance_set_base] using the returned RID.\n"
"[b]Note:[/b] The equivalent resource is [MultiMesh]."
msgstr ""
"Создает новую мультисетку на RenderingServer и возвращает дескриптор [RID]. "
"Этот RID будет использоваться во всех функциях RenderingServer "
"[code]multimesh_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"Чтобы разместить в сцене, прикрепите эту мультисетку к экземпляру с помощью "
"[method instance_set_base], используя возвращенный RID.\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [MultiMesh]."

msgid ""
"Calculates and returns the axis-aligned bounding box that encloses all "
"instances within the multimesh."
msgstr ""
"Вычисляет и возвращает выровненную по осям ограничивающую рамку, которая "
"охватывает все экземпляры внутри мультисетки."

msgid ""
"Returns the MultiMesh data (such as instance transforms, colors, etc.). See "
"[method multimesh_set_buffer] for details on the returned data.\n"
"[b]Note:[/b] If the buffer is in the engine's internal cache, it will have to "
"be fetched from GPU memory and possibly decompressed. This means [method "
"multimesh_get_buffer] is potentially a slow operation and should be avoided "
"whenever possible."
msgstr ""
"Возвращает данные MultiMesh (например, преобразования экземпляров, цвета и т. "
"д.). Подробности о возвращаемых данных см. в [method multimesh_set_buffer].\n"
"[b]Примечание:[/b] Если буфер находится во внутреннем кэше движка, его "
"придется извлечь из памяти GPU и, возможно, распаковать. Это означает, что "
"[method multimesh_get_buffer] — потенциально медленная операция, и ее следует "
"избегать, когда это возможно."

msgid ""
"Returns the [RenderingDevice] [RID] handle of the [MultiMesh], which can be "
"used as any other buffer on the Rendering Device."
msgstr ""
"Возвращает дескриптор [RenderingDevice] [RID] [MultiMesh], который можно "
"использовать как любой другой буфер на устройстве рендеринга."

msgid ""
"Returns the [RenderingDevice] [RID] handle of the [MultiMesh] command buffer. "
"This [RID] is only valid if [code]use_indirect[/code] is set to [code]true[/"
"code] when allocating data through [method multimesh_allocate_data]. It can "
"be used to directly modify the instance count via buffer.\n"
"The data structure is dependent on both how many surfaces the mesh contains "
"and whether it is indexed or not, the buffer has 5 integers in it, with the "
"last unused if the mesh is not indexed.\n"
"Each of the values in the buffer correspond to these options:\n"
"[codeblock lang=text]\n"
"Indexed:\n"
"  0 - indexCount;\n"
"  1 - instanceCount;\n"
"  2 - firstIndex;\n"
"  3 - vertexOffset;\n"
"  4 - firstInstance;\n"
"Non Indexed:\n"
"  0 - vertexCount;\n"
"  1 - instanceCount;\n"
"  2 - firstVertex;\n"
"  3 - firstInstance;\n"
"  4 - unused;\n"
"[/codeblock]"
msgstr ""
"Возвращает дескриптор [RenderingDevice] [RID] буфера команд [MultiMesh]. Этот "
"[RID] действителен только в том случае, если [code]use_indirect[/code] "
"установлен в [code]true[/code] при выделении данных через [method "
"multimesh_allocate_data]. Его можно использовать для прямого изменения "
"количества экземпляров через буфер.\n"
"Структура данных зависит как от того, сколько поверхностей содержит сетка, "
"так и от того, индексирована она или нет, в буфере есть 5 целых чисел, "
"последнее из которых не используется, если сетка не индексирована.\n"
"Каждое из значений в буфере соответствует этим параметрам:\n"
"[codeblock lang=text]\n"
"Indexed:\n"
"  0 - indexCount;\n"
"  1 - instanceCount;\n"
"  2 - firstIndex;\n"
"  3 - vertexOffset;\n"
"  4 - firstInstance;\n"
"Non Indexed:\n"
"  0 - vertexCount;\n"
"  1 - instanceCount;\n"
"  2 - firstVertex;\n"
"  3 - firstInstance;\n"
"  4 - unused;\n"
"[/codeblock]"

msgid "Returns the custom AABB defined for this MultiMesh resource."
msgstr ""
"Возвращает пользовательский AABB, определенный для этого ресурса MultiMesh."

msgid "Returns the number of instances allocated for this multimesh."
msgstr "Возвращает количество экземпляров, выделенных для этой мультисетки."

msgid "Returns the RID of the mesh that will be used in drawing this multimesh."
msgstr ""
"Возвращает RID сетки, которая будет использоваться при рисовании этой "
"мультисетки."

msgid "Returns the number of visible instances for this multimesh."
msgstr "Возвращает количество видимых экземпляров для этой мультисетки."

msgid "Returns the color by which the specified instance will be modulated."
msgstr "Возвращает цвет, которым будет модулироваться указанный экземпляр."

msgid "Returns the custom data associated with the specified instance."
msgstr "Возвращает пользовательские данные, связанные с указанным экземпляром."

msgid "Returns the [Transform3D] of the specified instance."
msgstr "Возвращает [Transform3D] указанного экземпляра."

msgid ""
"Returns the [Transform2D] of the specified instance. For use when the "
"multimesh is set to use 2D transforms."
msgstr ""
"Возвращает [Transform2D] указанного экземпляра. Для использования, когда "
"мультисетка настроена на использование 2D-преобразований."

msgid ""
"Prevents physics interpolation for the specified instance during the current "
"physics tick.\n"
"This is useful when moving an instance to a new location, to give an "
"instantaneous change rather than interpolation from the previous location."
msgstr ""
"Предотвращает интерполяцию физики для указанного экземпляра в течение "
"текущего такта физики. \n"
"Это полезно при перемещении экземпляра в новое место, чтобы обеспечить "
"мгновенное изменение, а не интерполяцию из предыдущего места."

msgid ""
"Sets the color by which this instance will be modulated. Equivalent to "
"[method MultiMesh.set_instance_color]."
msgstr ""
"Устанавливает цвет, которым будет модулироваться этот экземпляр. Эквивалентно "
"[method MultiMesh.set_instance_color]."

msgid ""
"Sets the custom data for this instance. Custom data is passed as a [Color], "
"but is interpreted as a [code]vec4[/code] in the shader. Equivalent to "
"[method MultiMesh.set_instance_custom_data]."
msgstr ""
"Устанавливает пользовательские данные для этого экземпляра. Пользовательские "
"данные передаются как [Color], но интерпретируются как [code]vec4[/code] в "
"шейдере. Эквивалентно [method MultiMesh.set_instance_custom_data]."

msgid ""
"Sets the [Transform3D] for this instance. Equivalent to [method "
"MultiMesh.set_instance_transform]."
msgstr ""
"Устанавливает [Transform3D] для этого экземпляра. Эквивалентно [method "
"MultiMesh.set_instance_transform]."

msgid ""
"Sets the [Transform2D] for this instance. For use when multimesh is used in "
"2D. Equivalent to [method MultiMesh.set_instance_transform_2d]."
msgstr ""
"Устанавливает [Transform2D] для этого экземпляра. Для использования, когда "
"multimesh используется в 2D. Эквивалентно [method "
"MultiMesh.set_instance_transform_2d]."

msgid ""
"Set the entire data to use for drawing the [param multimesh] at once to "
"[param buffer] (such as instance transforms and colors). [param buffer]'s "
"size must match the number of instances multiplied by the per-instance data "
"size (which depends on the enabled MultiMesh fields). Otherwise, an error "
"message is printed and nothing is rendered. See also [method "
"multimesh_get_buffer].\n"
"The per-instance data size and expected data order is:\n"
"[codeblock lang=text]\n"
"2D:\n"
"  - Position: 8 floats (8 floats for Transform2D)\n"
"  - Position + Vertex color: 12 floats (8 floats for Transform2D, 4 floats "
"for Color)\n"
"  - Position + Custom data: 12 floats (8 floats for Transform2D, 4 floats of "
"custom data)\n"
"  - Position + Vertex color + Custom data: 16 floats (8 floats for "
"Transform2D, 4 floats for Color, 4 floats of custom data)\n"
"3D:\n"
"  - Position: 12 floats (12 floats for Transform3D)\n"
"  - Position + Vertex color: 16 floats (12 floats for Transform3D, 4 floats "
"for Color)\n"
"  - Position + Custom data: 16 floats (12 floats for Transform3D, 4 floats of "
"custom data)\n"
"  - Position + Vertex color + Custom data: 20 floats (12 floats for "
"Transform3D, 4 floats for Color, 4 floats of custom data)\n"
"[/codeblock]\n"
"Instance transforms are in row-major order. Specifically:\n"
"- For [Transform2D] the float-order is: [code](x.x, y.x, padding_float, "
"origin.x, x.y, y.y, padding_float, origin.y)[/code].\n"
"- For [Transform3D] the float-order is: [code](basis.x.x, basis.y.x, "
"basis.z.x, origin.x, basis.x.y, basis.y.y, basis.z.y, origin.y, basis.x.z, "
"basis.y.z, basis.z.z, origin.z)[/code]."
msgstr ""
"Установите все данные, которые будут использоваться для рисования [param "
"multimesh] сразу в [param buffer] (например, преобразования экземпляров и "
"цвета). Размер [param buffer] должен соответствовать количеству экземпляров, "
"умноженному на размер данных для каждого экземпляра (который зависит от "
"включенных полей MultiMesh). В противном случае выводится сообщение об ошибке "
"и ничего не отображается. См. также [method multimesh_get_buffer].\n"
"Размер данных для каждого экземпляра и ожидаемый порядок данных:\n"
"[codeblock lang=text]\n"
"2D:\n"
"  - Позиция: 8 floats (8 floats for Transform2D)\n"
"  - Позиция+ Vertex color: 12 floats (8 floats for Transform2D, 4 floats for "
"Color)\n"
"  - Позиция+ Custom data: 12 floats (8 floats for Transform2D, 4 floats of "
"custom data)\n"
"  - Позиция+ Vertex color + Custom data: 16 floats (8 floats for Transform2D, "
"4 floats for Color, 4 floats of custom data)\n"
"3D:\n"
"  - Позиция: 12 floats (12 floats for Transform3D)\n"
"  - Позиция+ Vertex color: 16 floats (12 floats for Transform3D, 4 floats for "
"Color)\n"
"  - Позиция+ Custom data: 16 floats (12 floats for Transform3D, 4 floats of "
"custom data)\n"
"  - Позиция+ Vertex color + Custom data: 20 floats (12 floats for "
"Transform3D, 4 floats for Color, 4 floats of custom data)\n"
"[/codeblock]\n"
"Преобразования экземпляров выполняются в порядке приоритета строк. В "
"частности:\n"
"-Для [Transform2D] порядок с плавающей точкой равен: [code](x.x, y.x, "
"padding_float, origin.x, x.y, y.y, padding_float, origin.y)[/code].\n"
"- Для [Transform2D] порядок с плавающей точкой равен: [code](basis.x.x, "
"basis.y.x, basis.z.x, origin.x, basis.x.y, basis.y.y, basis.z.y, origin.y, "
"basis.x.z, basis.y.z, basis.z.z, origin.z)[/code]."

msgid ""
"Alternative version of [method multimesh_set_buffer] for use with physics "
"interpolation.\n"
"Takes both an array of current data and an array of data for the previous "
"physics tick."
msgstr ""
"Альтернативная версия [method multimesh_set_buffer] для использования с "
"интерполяцией физики.\n"
"Принимает как массив текущих данных, так и массив данных для предыдущего тика "
"физики."

msgid "Sets the custom AABB for this MultiMesh resource."
msgstr "Устанавливает пользовательский AABB для этого ресурса MultiMesh."

msgid ""
"Sets the mesh to be drawn by the multimesh. Equivalent to [member "
"MultiMesh.mesh]."
msgstr ""
"Устанавливает сетку, которая будет отрисована мультисеткой. Эквивалентно "
"[member MultiMesh.mesh]."

msgid "Turns on and off physics interpolation for this MultiMesh resource."
msgstr ""
"Включает и выключает физическую интерполяцию для этого ресурса MultiMesh."

msgid ""
"Sets the physics interpolation quality for the [MultiMesh].\n"
"A value of [constant MULTIMESH_INTERP_QUALITY_FAST] gives fast but low "
"quality interpolation, a value of [constant MULTIMESH_INTERP_QUALITY_HIGH] "
"gives slower but higher quality interpolation."
msgstr ""
"Устанавливает качество интерполяции физики для [MultiMesh].\n"
"Значение [constant MULTIMESH_INTERP_QUALITY_FAST] дает быструю, но "
"низкокачественную интерполяцию, значение [constant "
"MULTIMESH_INTERP_QUALITY_HIGH] дает более медленную, но более качественную "
"интерполяцию."

msgid ""
"Sets the number of instances visible at a given time. If -1, all instances "
"that have been allocated are drawn. Equivalent to [member "
"MultiMesh.visible_instance_count]."
msgstr ""
"Устанавливает количество экземпляров, видимых в данный момент времени. Если "
"-1, все выделенные экземпляры отрисовываются. Эквивалентно [member "
"MultiMesh.visible_instance_count]."

msgid ""
"Creates an occluder instance and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
"[code]occluder_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent resource is [Occluder3D] (not to be confused with "
"the [OccluderInstance3D] node)."
msgstr ""
"Создает экземпляр occluder и добавляет его в RenderingServer. К нему можно "
"получить доступ с помощью возвращаемого RID. Этот RID будет использоваться во "
"всех функциях [code]occluder_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [Occluder3D] (не путать с узлом "
"[OccluderInstance3D])."

msgid ""
"Sets the mesh data for the given occluder RID, which controls the shape of "
"the occlusion culling that will be performed."
msgstr ""
"Устанавливает данные сетки для заданного RID окклюдера, который управляет "
"формой отбраковки окклюзии, которая будет выполнена."

msgid ""
"Creates a new omni light and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID can be used in most "
"[code]light_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"To place in a scene, attach this omni light to an instance using [method "
"instance_set_base] using the returned RID.\n"
"[b]Note:[/b] The equivalent node is [OmniLight3D]."
msgstr ""
"Создает новый источник света omni и добавляет его в RenderingServer. Доступ к "
"нему можно получить с помощью возвращаемого RID. Этот RID можно использовать "
"в большинстве функций RenderingServer [code]light_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"Чтобы разместить в сцене, прикрепите этот источник света omni к экземпляру с "
"помощью [method instance_set_base], используя возвращаемый RID.\n"
"[b]Примечание:[/b] Эквивалентный узел — [OmniLight3D]."

msgid ""
"Creates a new 3D GPU particle collision or attractor and adds it to the "
"RenderingServer. It can be accessed with the RID that is returned. This RID "
"can be used in most [code]particles_collision_*[/code] RenderingServer "
"functions.\n"
"[b]Note:[/b] The equivalent nodes are [GPUParticlesCollision3D] and "
"[GPUParticlesAttractor3D]."
msgstr ""
"Создает новое столкновение или аттрактор частиц 3D GPU и добавляет его в "
"RenderingServer. Доступ к нему можно получить с помощью возвращаемого RID. "
"Этот RID можно использовать в большинстве функций "
"[code]particles_collision_*[/code] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентными узлами являются [GPUParticlesCollision3D] и "
"[GPUParticlesAttractor3D]."

msgid ""
"Requests an update for the 3D GPU particle collision heightfield. This may be "
"automatically called by the 3D GPU particle collision heightfield depending "
"on its [member GPUParticlesCollisionHeightField3D.update_mode]."
msgstr ""
"Запрашивает обновление для 3D GPU частица высота столкновения поля. Это может "
"быть автоматически вызвано 3D GPU частица высота столкновения поля в "
"зависимости от его [member GPUParticlesCollisionHeightField3D.update_mode]."

msgid ""
"Sets the attenuation [param curve] for the 3D GPU particles attractor "
"specified by the [param particles_collision] RID. Only used for attractors, "
"not colliders. Equivalent to [member GPUParticlesAttractor3D.attenuation]."
msgstr ""
"Устанавливает затухание [param curve] для аттрактора частиц 3D GPU, "
"указанного в [param parts_collision] RID. Используется только для "
"аттракторов, а не коллайдеров. Эквивалентно [member "
"GPUParticlesAttractor3D.attenuation]."

msgid ""
"Sets the directionality [param amount] for the 3D GPU particles attractor "
"specified by the [param particles_collision] RID. Only used for attractors, "
"not colliders. Equivalent to [member GPUParticlesAttractor3D.directionality]."
msgstr ""
"Устанавливает направленность [param amount] для аттрактора 3D GPU-частиц, "
"указанного в [param parts_collision] RID. Используется только для "
"аттракторов, а не для коллайдеров. Эквивалентно [member "
"GPUParticlesAttractor3D.directionality]."

msgid ""
"Sets the [param strength] for the 3D GPU particles attractor specified by the "
"[param particles_collision] RID. Only used for attractors, not colliders. "
"Equivalent to [member GPUParticlesAttractor3D.strength]."
msgstr ""
"Устанавливает [param strength] для аттрактора частиц 3D GPU, указанного в "
"[param parts_collision] RID. Используется только для аттракторов, а не для "
"коллайдеров. Эквивалентно [member GPUParticlesAttractor3D.strength]."

msgid ""
"Sets the [param extents] for the 3D GPU particles collision by the [param "
"particles_collision] RID. Equivalent to [member "
"GPUParticlesCollisionBox3D.size], [member GPUParticlesCollisionSDF3D.size], "
"[member GPUParticlesCollisionHeightField3D.size], [member "
"GPUParticlesAttractorBox3D.size] or [member "
"GPUParticlesAttractorVectorField3D.size] depending on the [param "
"particles_collision] type."
msgstr ""
"Устанавливает [param extends] для столкновения частиц 3D GPU по [param "
"parts_collision] RID. Эквивалентно [member GPUParticlesCollisionBox3D.size], "
"[member GPUParticlesCollisionSDF3D.size], [member "
"GPUParticlesCollisionHeightField3D.size], [member "
"GPUParticlesAttractorBox3D.size] или [member "
"GPUParticlesAttractorVectorField3D.size] в зависимости от типа [param "
"parts_collision]."

msgid ""
"Sets the collision or attractor shape [param type] for the 3D GPU particles "
"collision or attractor specified by the [param particles_collision] RID."
msgstr ""
"Задает форму столкновения или аттрактора [param type] для столкновения или "
"аттрактора частиц 3D GPU, указанных в RID [param parts_collision]."

msgid ""
"Sets the cull [param mask] for the 3D GPU particles collision or attractor "
"specified by the [param particles_collision] RID. Equivalent to [member "
"GPUParticlesCollision3D.cull_mask] or [member "
"GPUParticlesAttractor3D.cull_mask] depending on the [param "
"particles_collision] type."
msgstr ""
"Устанавливает отбраковку [param mask] для столкновения или аттрактора 3D-"
"частиц GPU, указанных в [param parts_collision] RID. Эквивалентно [member "
"GPUParticlesCollision3D.cull_mask] или [member "
"GPUParticlesAttractor3D.cull_mask] в зависимости от типа [param "
"parts_collision]."

msgid ""
"Sets the signed distance field [param texture] for the 3D GPU particles "
"collision specified by the [param particles_collision] RID. Equivalent to "
"[member GPUParticlesCollisionSDF3D.texture] or [member "
"GPUParticlesAttractorVectorField3D.texture] depending on the [param "
"particles_collision] type."
msgstr ""
"Устанавливает поле расстояния со знаком [param texture] для столкновения "
"частиц 3D GPU, заданного RID [param parts_collision]. Эквивалентно [member "
"GPUParticlesCollisionSDF3D.texture] или [member "
"GPUParticlesAttractorVectorField3D.texture] в зависимости от типа [param "
"parts_collision]."

msgid ""
"Sets the heightfield [param mask] for the 3D GPU particles heightfield "
"collision specified by the [param particles_collision] RID. Equivalent to "
"[member GPUParticlesCollisionHeightField3D.heightfield_mask]."
msgstr ""
"Устанавливает поле высоты [param mask] для столкновения поля высоты частиц 3D "
"GPU, заданного RID [param parts_collision]. Эквивалентно [member "
"GPUParticlesCollisionHeightField3D.heightfield_mask]."

msgid ""
"Sets the heightmap [param resolution] for the 3D GPU particles heightfield "
"collision specified by the [param particles_collision] RID. Equivalent to "
"[member GPUParticlesCollisionHeightField3D.resolution]."
msgstr ""
"Устанавливает карту высот [param resolution] для столкновения полей высот 3D-"
"частиц GPU, заданного RID [param parts_collision]. Эквивалентно [member "
"GPUParticlesCollisionHeightField3D.resolution]."

msgid ""
"Sets the [param radius] for the 3D GPU particles sphere collision or "
"attractor specified by the [param particles_collision] RID. Equivalent to "
"[member GPUParticlesCollisionSphere3D.radius] or [member "
"GPUParticlesAttractorSphere3D.radius] depending on the [param "
"particles_collision] type."
msgstr ""
"Устанавливает [param radius] для столкновения или аттрактора сферы 3D GPU-"
"частиц, указанных в [param parts_collision] RID. Эквивалентно [member "
"GPUParticlesCollisionSphere3D.radius] или [member "
"GPUParticlesAttractorSphere3D.radius] в зависимости от типа [param "
"parts_collision]."

msgid ""
"Creates a GPU-based particle system and adds it to the RenderingServer. It "
"can be accessed with the RID that is returned. This RID will be used in all "
"[code]particles_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"To place in a scene, attach these particles to an instance using [method "
"instance_set_base] using the returned RID.\n"
"[b]Note:[/b] The equivalent nodes are [GPUParticles2D] and [GPUParticles3D].\n"
"[b]Note:[/b] All [code]particles_*[/code] methods only apply to GPU-based "
"particles, not CPU-based particles. [CPUParticles2D] and [CPUParticles3D] do "
"not have equivalent RenderingServer functions available, as these use "
"[MultiMeshInstance2D] and [MultiMeshInstance3D] under the hood (see "
"[code]multimesh_*[/code] methods)."
msgstr ""
"Создает систему частиц на основе GPU и добавляет ее в RenderingServer. Доступ "
"к ней можно получить с помощью возвращаемого RID. Этот RID будет "
"использоваться во всех функциях RenderingServer [code]particles_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"Чтобы разместить в сцене, прикрепите эти частицы к экземпляру с помощью "
"[method instance_set_base] с помощью возвращаемого RID.\n"
"[b]Примечание:[/b] Эквивалентные узлы — [GPUParticles2D] и [GPUParticles3D].\n"
"[b]Примечание:[/b] Все методы [code]particles_*[/code] применяются только к "
"частицам на основе GPU, а не к частицам на основе CPU. [CPUParticles2D] и "
"[CPUParticles3D] не имеют эквивалентных функций RenderingServer, поскольку "
"они используют [MultiMeshInstance2D] и [MultiMeshInstance3D] (см. методы "
"[code]multimesh_*[/code])."

msgid "Manually emits particles from the [param particles] instance."
msgstr "Вручную испускает частицы из экземпляра [param parts]."

msgid ""
"Calculates and returns the axis-aligned bounding box that contains all the "
"particles. Equivalent to [method GPUParticles3D.capture_aabb]."
msgstr ""
"Вычисляет и возвращает выровненный по осям ограничивающий прямоугольник, "
"содержащий все частицы. Эквивалентно [method GPUParticles3D.capture_aabb]."

msgid "Returns [code]true[/code] if particles are currently set to emitting."
msgstr ""
"Возвращает [code]true[/code], если частицы в данный момент настроены на "
"излучение."

msgid ""
"Returns [code]true[/code] if particles are not emitting and particles are set "
"to inactive."
msgstr ""
"Возвращает [code]true[/code], если частицы не испускаются и частицы "
"установлены в неактивное состояние."

msgid ""
"Add particle system to list of particle systems that need to be updated. "
"Update will take place on the next frame, or on the next call to [method "
"instances_cull_aabb], [method instances_cull_convex], or [method "
"instances_cull_ray]."
msgstr ""
"Добавить систему частиц в список систем частиц, которые необходимо обновить. "
"Обновление произойдет в следующем кадре или при следующем вызове [method "
"instances_cull_aabb], [method instances_cull_convex] или [method "
"instances_cull_ray]."

msgid ""
"Requests particles to process for extra process time during a single frame."
msgstr ""
"Запрашивает обработку частиц в течение дополнительного времени в течение "
"одного кадра."

msgid ""
"Reset the particles on the next update. Equivalent to [method "
"GPUParticles3D.restart]."
msgstr ""
"Сбросить частицы при следующем обновлении. Эквивалентно [method "
"GPUParticles3D.restart]."

msgid ""
"Sets the number of particles to be drawn and allocates the memory for them. "
"Equivalent to [member GPUParticles3D.amount]."
msgstr ""
"Устанавливает количество частиц для рисования и выделяет для них память. "
"Эквивалентно [member GPUParticles3D.amount]."

msgid ""
"Sets the amount ratio for particles to be emitted. Equivalent to [member "
"GPUParticles3D.amount_ratio]."
msgstr ""
"Устанавливает соотношение количества испускаемых частиц. Эквивалентно [member "
"GPUParticles3D.amount_ratio]."

msgid ""
"Sets a custom axis-aligned bounding box for the particle system. Equivalent "
"to [member GPUParticles3D.visibility_aabb]."
msgstr ""
"Устанавливает пользовательский ограничивающий прямоугольник, выровненный по "
"осям, для системы частиц. Эквивалентно [member "
"GPUParticles3D.visibility_aabb]."

msgid ""
"Sets the draw order of the particles. Equivalent to [member "
"GPUParticles3D.draw_order]."
msgstr ""
"Устанавливает порядок отрисовки частиц. Эквивалентно [member "
"GPUParticles3D.draw_order]."

msgid ""
"Sets the mesh to be used for the specified draw pass. Equivalent to [member "
"GPUParticles3D.draw_pass_1], [member GPUParticles3D.draw_pass_2], [member "
"GPUParticles3D.draw_pass_3], and [member GPUParticles3D.draw_pass_4]."
msgstr ""
"Устанавливает сетку, которая будет использоваться для указанного прохода "
"отрисовки. Эквивалентно [member GPUParticles3D.draw_pass_1], [member "
"GPUParticles3D.draw_pass_2], [member GPUParticles3D.draw_pass_3] и [member "
"GPUParticles3D.draw_pass_4]."

msgid ""
"Sets the number of draw passes to use. Equivalent to [member "
"GPUParticles3D.draw_passes]."
msgstr ""
"Устанавливает количество используемых проходов отрисовки. Эквивалентно "
"[member GPUParticles3D.draw_passes]."

msgid ""
"Sets the [Transform3D] that will be used by the particles when they first "
"emit."
msgstr ""
"Устанавливает [Transform3D], который будет использоваться частицами при "
"первом излучении."

msgid ""
"Sets the velocity of a particle node, that will be used by [member "
"ParticleProcessMaterial.inherit_velocity_ratio]."
msgstr ""
"Устанавливает скорость узла частицы, которая будет использоваться [member "
"ParticleProcessMaterial.inherit_velocity_ratio]."

msgid ""
"If [code]true[/code], particles will emit over time. Setting to [code]false[/"
"code] does not reset the particles, but only stops their emission. Equivalent "
"to [member GPUParticles3D.emitting]."
msgstr ""
"Если [code]true[/code], частицы будут испускаться с течением времени. "
"Установка [code]false[/code] не сбрасывает частицы, а только останавливает их "
"испускание. Эквивалентно [member GPUParticles3D.emitting]."

msgid ""
"Sets the explosiveness ratio. Equivalent to [member "
"GPUParticles3D.explosiveness]."
msgstr ""
"Устанавливает коэффициент взрывоопасности. Эквивалентно [member "
"GPUParticles3D.explosiveness]."

msgid ""
"Sets the frame rate that the particle system rendering will be fixed to. "
"Equivalent to [member GPUParticles3D.fixed_fps]."
msgstr ""
"Устанавливает частоту кадров, на которой будет зафиксирован рендеринг системы "
"частиц. Эквивалентно [member GPUParticles3D.fixed_fps]."

msgid ""
"If [code]true[/code], uses fractional delta which smooths the movement of the "
"particles. Equivalent to [member GPUParticles3D.fract_delta]."
msgstr ""
"Если [code]true[/code], используется дробная дельта, которая сглаживает "
"движение частиц. Эквивалентно [member GPUParticles3D.fract_delta]."

msgid ""
"Sets the value that informs a [ParticleProcessMaterial] to rush all particles "
"towards the end of their lifetime."
msgstr ""
"Устанавливает значение, сообщающее [ParticleProcessMaterial] о необходимости "
"ускорить движение всех частиц к концу их жизненного цикла."

msgid ""
"Sets the lifetime of each particle in the system. Equivalent to [member "
"GPUParticles3D.lifetime]."
msgstr ""
"Устанавливает время жизни каждой частицы в системе. Эквивалентно [member "
"GPUParticles3D.lifetime]."

msgid ""
"Sets whether the GPU particles specified by the [param particles] RID should "
"be rendered in 2D or 3D according to [param mode]."
msgstr ""
"Устанавливает, должны ли частицы GPU, указанные в [param parts] RID, "
"отображаться в 2D или 3D в соответствии с [param mode]."

msgid ""
"If [code]true[/code], particles will emit once and then stop. Equivalent to "
"[member GPUParticles3D.one_shot]."
msgstr ""
"Если [code]true[/code], частицы испустят один раз и затем остановятся. "
"Эквивалентно [member GPUParticles3D.one_shot]."

msgid ""
"Sets the preprocess time for the particles' animation. This lets you delay "
"starting an animation until after the particles have begun emitting. "
"Equivalent to [member GPUParticles3D.preprocess]."
msgstr ""
"Устанавливает время предварительной обработки для анимации частиц. Это "
"позволяет отложить запуск анимации до тех пор, пока частицы не начнут "
"испускать свет. Эквивалентно [member GPUParticles3D.preprocess]."

msgid ""
"Sets the material for processing the particles.\n"
"[b]Note:[/b] This is not the material used to draw the materials. Equivalent "
"to [member GPUParticles3D.process_material]."
msgstr ""
"Устанавливает материал для обработки частиц.\n"
"[b]Примечание:[/b] Это не материал, используемый для рисования материалов. "
"Эквивалентно [member GPUParticles3D.process_material]."

msgid ""
"Sets the emission randomness ratio. This randomizes the emission of particles "
"within their phase. Equivalent to [member GPUParticles3D.randomness]."
msgstr ""
"Устанавливает коэффициент случайности эмиссии. Это рандомизирует эмиссию "
"частиц в пределах их фазы. Эквивалентно [member GPUParticles3D.randomness]."

msgid ""
"Sets the speed scale of the particle system. Equivalent to [member "
"GPUParticles3D.speed_scale]."
msgstr ""
"Устанавливает шкалу скорости системы частиц. Эквивалентно [member "
"GPUParticles3D.speed_scale]."

msgid ""
"If [param enable] is [code]true[/code], enables trails for the [param "
"particles] with the specified [param length_sec] in seconds. Equivalent to "
"[member GPUParticles3D.trail_enabled] and [member "
"GPUParticles3D.trail_lifetime]."
msgstr ""
"Если [param enable] равно [code]true[/code], включает следы для [param parts] "
"с указанным [param length_sec] в секундах. Эквивалентно [member "
"GPUParticles3D.trail_enabled] и [member GPUParticles3D.trail_lifetime]."

msgid ""
"If [code]true[/code], particles use local coordinates. If [code]false[/code] "
"they use global coordinates. Equivalent to [member "
"GPUParticles3D.local_coords]."
msgstr ""
"Если [code]true[/code], частицы используют локальные координаты. Если "
"[code]false[/code], они используют глобальные координаты. Эквивалентно "
"[member GPUParticles3D.local_coords]."

msgid ""
"Sets the filter quality for omni and spot light shadows in 3D. See also "
"[member ProjectSettings.rendering/lights_and_shadows/positional_shadow/"
"soft_shadow_filter_quality]. This parameter is global and cannot be set on a "
"per-viewport basis."
msgstr ""
"Устанавливает качество фильтра для теней точечного и всенаправленного света в "
"3D. См. также [member ProjectSettings.rendering/lights_and_shadows/"
"positional_shadow/soft_shadow_filter_quality]. Этот параметр является "
"глобальным и не может быть установлен для каждого окна просмотра."

msgid ""
"Creates a reflection probe and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
"[code]reflection_probe_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"To place in a scene, attach this reflection probe to an instance using "
"[method instance_set_base] using the returned RID.\n"
"[b]Note:[/b] The equivalent node is [ReflectionProbe]."
msgstr ""
"Создает зонд отражения и добавляет его в RenderingServer. К нему можно "
"получить доступ с помощью возвращаемого RID. Этот RID будет использоваться во "
"всех функциях RenderingServer [code]reflection_probe_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"Чтобы разместить в сцене, прикрепите этот зонд отражения к экземпляру с "
"помощью [method instance_set_base] с помощью возвращаемого RID.\n"
"[b]Примечание:[/b] Эквивалентный узел — [ReflectionProbe]."

msgid ""
"Sets the reflection probe's custom ambient light color. Equivalent to [member "
"ReflectionProbe.ambient_color]."
msgstr ""
"Устанавливает пользовательский цвет окружающего света отражательного зонда. "
"Эквивалентно [member ReflectionProbe.ambient_color]."

msgid ""
"Sets the reflection probe's custom ambient light energy. Equivalent to "
"[member ReflectionProbe.ambient_color_energy]."
msgstr ""
"Устанавливает пользовательскую энергию окружающего света отражательного "
"зонда. Эквивалентно [member ReflectionProbe.ambient_color_energy]."

msgid ""
"Sets the reflection probe's ambient light mode. Equivalent to [member "
"ReflectionProbe.ambient_mode]."
msgstr ""
"Устанавливает режим окружающего освещения отражательного зонда. Эквивалентно "
"[member ReflectionProbe.ambient_mode]."

msgid ""
"If [code]true[/code], reflections will ignore sky contribution. Equivalent to "
"[member ReflectionProbe.interior]."
msgstr ""
"Если [code]true[/code], отражения будут игнорировать вклад неба. Эквивалентно "
"[member ReflectionProbe.interior]."

msgid "Sets the distance in meters over which a probe blends into the scene."
msgstr "Устанавливает расстояние в метрах, на котором зонд сливается с сценой."

msgid ""
"Sets the render cull mask for this reflection probe. Only instances with a "
"matching layer will be reflected by this probe. Equivalent to [member "
"ReflectionProbe.cull_mask]."
msgstr ""
"Устанавливает маску отбраковки рендера для этого зонда отражения. Только "
"экземпляры с соответствующим слоем будут отражены этим зондом. Эквивалентно "
"[member ReflectionProbe.cull_mask]."

msgid ""
"If [code]true[/code], uses box projection. This can make reflections look "
"more correct in certain situations. Equivalent to [member "
"ReflectionProbe.box_projection]."
msgstr ""
"Если [code]true[/code], используется проекционный блок. Это может сделать "
"отражения более корректными в определенных ситуациях. Эквивалентно [member "
"ReflectionProbe.box_projection]."

msgid ""
"If [code]true[/code], computes shadows in the reflection probe. This makes "
"the reflection much slower to compute. Equivalent to [member "
"ReflectionProbe.enable_shadows]."
msgstr ""
"Если [code]true[/code], вычисляет тени в зонде отражения. Это делает "
"отражение намного медленнее для вычисления. Эквивалентно [member "
"ReflectionProbe.enable_shadows]."

msgid ""
"Sets the intensity of the reflection probe. Intensity modulates the strength "
"of the reflection. Equivalent to [member ReflectionProbe.intensity]."
msgstr ""
"Устанавливает интенсивность зонда отражения. Интенсивность модулирует силу "
"отражения. Эквивалентно [member ReflectionProbe.intensity]."

msgid ""
"Sets the max distance away from the probe an object can be before it is "
"culled. Equivalent to [member ReflectionProbe.max_distance]."
msgstr ""
"Устанавливает максимальное расстояние от зонда, на котором может находиться "
"объект, прежде чем он будет отбракован. Эквивалентно [member "
"ReflectionProbe.max_distance]."

msgid ""
"Sets the mesh level of detail to use in the reflection probe rendering. "
"Higher values will use less detailed versions of meshes that have LOD "
"variations generated, which can improve performance. Equivalent to [member "
"ReflectionProbe.mesh_lod_threshold]."
msgstr ""
"Устанавливает уровень детализации сетки для использования при рендеринге "
"зонда отражения. Более высокие значения будут использовать менее подробные "
"версии сеток, которые имеют сгенерированные вариации LOD, что может улучшить "
"производительность. Эквивалентно [member ReflectionProbe.mesh_lod_threshold]."

msgid ""
"Sets the origin offset to be used when this reflection probe is in box "
"project mode. Equivalent to [member ReflectionProbe.origin_offset]."
msgstr ""
"Устанавливает смещение начала координат, которое будет использоваться, когда "
"этот зонд отражения находится в режиме проекции ящика. Эквивалентно [member "
"ReflectionProbe.origin_offset]."

msgid ""
"Sets the render reflection mask for this reflection probe. Only instances "
"with a matching layer will have reflections applied from this probe. "
"Equivalent to [member ReflectionProbe.reflection_mask]."
msgstr ""
"Устанавливает маску отражения рендеринга для этого зонда отражения. Только "
"экземпляры с соответствующим слоем будут иметь отражения, примененные от "
"этого зонда. Эквивалентно [member ReflectionProbe.reflection_mask]."

msgid ""
"Sets the resolution to use when rendering the specified reflection probe. The "
"[param resolution] is specified for each cubemap face: for instance, "
"specifying [code]512[/code] will allocate 6 faces of 512×512 each (plus "
"mipmaps for roughness levels)."
msgstr ""
"Устанавливает разрешение, используемое при рендеринге указанного зонда "
"отражения. [Param Resolution] указывается для каждой грани кубической карты: "
"например, указание [code]512[/code] выделит 6 граней размером 512×512 каждая "
"(плюс mip-карты для уровней шероховатости)."

msgid ""
"Sets the size of the area that the reflection probe will capture. Equivalent "
"to [member ReflectionProbe.size]."
msgstr ""
"Устанавливает размер области, которую будет захватывать отражательный зонд. "
"Эквивалентно [member ReflectionProbe.size]."

msgid ""
"Sets how often the reflection probe updates. Can either be once or every "
"frame."
msgstr ""
"Устанавливает частоту обновления зонда отражения. Может быть один раз или "
"каждый кадр."

msgid "Schedules a callback to the given callable after a frame has been drawn."
msgstr ""
"Планирует обратный вызов указанного вызываемого объекта после отрисовки кадра."

msgid ""
"Creates a scenario and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]scenario_*[/"
"code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"The scenario is the 3D world that all the visual instances exist in."
msgstr ""
"Создает сценарий и добавляет его в RenderingServer. К нему можно получить "
"доступ с помощью возвращаемого RID. Этот RID будет использоваться во всех "
"функциях [code]scenario_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"Сценарий — это трехмерный мир, в котором существуют все визуальные экземпляры."

msgid ""
"Sets the camera attributes ([param effects]) that will be used with this "
"scenario. See also [CameraAttributes]."
msgstr ""
"Устанавливает атрибуты камеры ([param effects]), которые будут использоваться "
"с этим сценарием. См. также [CameraAttributes]."

msgid ""
"Sets the compositor ([param compositor]) that will be used with this "
"scenario. See also [Compositor]."
msgstr ""
"Устанавливает композитор ([param compositor]), который будет использоваться с "
"этим сценарием. См. также [Compositor]."

msgid ""
"Sets the environment that will be used with this scenario. See also "
"[Environment]."
msgstr ""
"Устанавливает среду, которая будет использоваться с этим сценарием. См. также "
"[Environment]."

msgid ""
"Sets the fallback environment to be used by this scenario. The fallback "
"environment is used if no environment is set. Internally, this is used by the "
"editor to provide a default environment."
msgstr ""
"Устанавливает резервную среду для использования этим сценарием. Резервная "
"среда используется, если среда не установлена. Внутри редактора это "
"используется для предоставления среды по умолчанию."

msgid ""
"Sets the screen-space roughness limiter parameters, such as whether it should "
"be enabled and its thresholds. Equivalent to [member "
"ProjectSettings.rendering/anti_aliasing/screen_space_roughness_limiter/"
"enabled], [member ProjectSettings.rendering/anti_aliasing/"
"screen_space_roughness_limiter/amount] and [member ProjectSettings.rendering/"
"anti_aliasing/screen_space_roughness_limiter/limit]."
msgstr ""
"Устанавливает параметры ограничителя шероховатости экранного пространства, "
"например, следует ли его включать и его пороговые значения. Эквивалентно "
"[member ProjectSettings.rendering/anti_aliasing/"
"screen_space_roughness_limiter/enabled], [member ProjectSettings.rendering/"
"anti_aliasing/screen_space_roughness_limiter/amount] и [member "
"ProjectSettings.rendering/anti_aliasing/screen_space_roughness_limiter/limit]."

msgid ""
"Sets a boot image. The color defines the background color. If [param scale] "
"is [code]true[/code], the image will be scaled to fit the screen size. If "
"[param use_filter] is [code]true[/code], the image will be scaled with linear "
"interpolation. If [param use_filter] is [code]false[/code], the image will be "
"scaled with nearest-neighbor interpolation."
msgstr ""
"Устанавливает загрузочное изображение. Цвет определяет цвет фона. Если [param "
"scale] равен [code]true[/code], изображение будет масштабировано в "
"соответствии с размером экрана. Если [param use_filter] равен [code]true[/"
"code], изображение будет масштабировано с линейной интерполяцией. Если [param "
"use_filter] равен [code]false[/code], изображение будет масштабировано с "
"интерполяцией ближайшего соседа."

msgid ""
"If [param generate] is [code]true[/code], generates debug wireframes for all "
"meshes that are loaded when using the Compatibility renderer. By default, the "
"engine does not generate debug wireframes at runtime, since they slow down "
"loading of assets and take up VRAM.\n"
"[b]Note:[/b] You must call this method before loading any meshes when using "
"the Compatibility renderer, otherwise wireframes will not be used."
msgstr ""
"Если [param generate] равен [code]true[/code], генерирует каркасы отладки для "
"всех сеток, которые загружаются при использовании рендерера Compatibility. По "
"умолчанию движок не генерирует каркасы отладки во время выполнения, так как "
"они замедляют загрузку ресурсов и занимают VRAM.\n"
"[b]Примечание:[/b] Вы должны вызвать этот метод перед загрузкой любых сеток "
"при использовании рендерера Compatibility, в противном случае каркасы не "
"будут использоваться."

msgid ""
"Sets the default clear color which is used when a specific clear color has "
"not been selected. See also [method get_default_clear_color]."
msgstr ""
"Устанавливает цвет очистки по умолчанию, который используется, когда не "
"выбран определенный цвет очистки. См. также [method get_default_clear_color]."

msgid ""
"Creates an empty shader and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
"[code]shader_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent resource is [Shader]."
msgstr ""
"Создает пустой шейдер и добавляет его в RenderingServer. К нему можно "
"получить доступ с помощью возвращаемого RID. Этот RID будет использоваться во "
"всех функциях [code]shader_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [Shader]."

msgid "Returns a shader's source code as a string."
msgstr "Возвращает исходный код шейдера в виде строки."

msgid ""
"Returns a default texture from a shader searched by name.\n"
"[b]Note:[/b] If the sampler array is used use [param index] to access the "
"specified texture."
msgstr ""
"Возвращает текстуру по умолчанию из шейдера, найденного по имени.\n"
"[b]Примечание:[/b] Если используется массив сэмплера, используйте [param "
"index] для доступа к указанной текстуре."

msgid ""
"Returns the default value for the specified shader uniform. This is usually "
"the value written in the shader source code."
msgstr ""
"Возвращает значение по умолчанию для указанного шейдера uniform. Обычно это "
"значение, записанное в исходном коде шейдера."

msgid ""
"Sets the shader's source code (which triggers recompilation after being "
"changed)."
msgstr ""
"Устанавливает исходный код шейдера (который запускает перекомпиляцию после "
"изменения)."

msgid ""
"Sets a shader's default texture. Overwrites the texture given by name.\n"
"[b]Note:[/b] If the sampler array is used use [param index] to access the "
"specified texture."
msgstr ""
"Устанавливает текстуру шейдера по умолчанию. Перезаписывает текстуру, "
"заданную по имени.\n"
"[b]Примечание:[/b] Если используется массив сэмплера, используйте [param "
"index] для доступа к указанной текстуре."

msgid ""
"Sets the path hint for the specified shader. This should generally match the "
"[Shader] resource's [member Resource.resource_path]."
msgstr ""
"Устанавливает подсказку пути для указанного шейдера. Это должно, как правило, "
"соответствовать [member Resource.resource_path] ресурса [Shader]."

msgid "Returns the [Transform3D] set for a specific bone of this skeleton."
msgstr "Возвращает набор [Transform3D] для определенной кости этого скелета."

msgid "Returns the [Transform2D] set for a specific bone of this skeleton."
msgstr "Возвращает набор [Transform2D] для определенной кости этого скелета."

msgid "Sets the [Transform3D] for a specific bone of this skeleton."
msgstr "Устанавливает [Transform3D] для определенной кости этого скелета."

msgid "Sets the [Transform2D] for a specific bone of this skeleton."
msgstr "Устанавливает [Transform2D] для определенной кости этого скелета."

msgid ""
"Creates a skeleton and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]skeleton_*[/"
"code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method."
msgstr ""
"Создает скелет и добавляет его в RenderingServer. К нему можно получить "
"доступ с помощью возвращаемого RID. Этот RID будет использоваться во всех "
"функциях [code]skeleton_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer."

msgid "Returns the number of bones allocated for this skeleton."
msgstr "Возвращает количество костей, выделенных для данного скелета."

msgid ""
"Generates and returns an [Image] containing the radiance map for the "
"specified [param sky] RID. This supports built-in sky material and custom sky "
"shaders. If [param bake_irradiance] is [code]true[/code], the irradiance map "
"is saved instead of the radiance map. The radiance map is used to render "
"reflected light, while the irradiance map is used to render ambient light. "
"See also [method environment_bake_panorama].\n"
"[b]Note:[/b] The image is saved in linear color space without any tonemapping "
"performed, which means it will look too dark if viewed directly in an image "
"editor. [param energy] values above [code]1.0[/code] can be used to brighten "
"the resulting image.\n"
"[b]Note:[/b] [param size] should be a 2:1 aspect ratio for the generated "
"panorama to have square pixels. For radiance maps, there is no point in using "
"a height greater than [member Sky.radiance_size], as it won't increase "
"detail. Irradiance maps only contain low-frequency data, so there is usually "
"no point in going past a size of 128×64 pixels when saving an irradiance map."
msgstr ""
"Генерирует и возвращает [Image], содержащий карту сияния для указанного RID "
"[param sky]. Это поддерживает встроенный материал неба и пользовательские "
"шейдеры неба. Если [param bake_irradiance] имеет значение [code]true[/code], "
"вместо карты сияния сохраняется карта сияния. Карта сияния используется для "
"рендеринга отраженного света, а карта сияния — для рендеринга окружающего "
"света. См. также [method environment_bake_panorama].\n"
"[b]Примечание:[/b] Изображение сохраняется в линейном цветовом пространстве "
"без какой-либо тональной компрессии, что означает, что оно будет выглядеть "
"слишком темным при просмотре напрямую в редакторе изображений. Значения "
"[param energy] выше [code]1.0[/code] можно использовать для осветления "
"полученного изображения.\n"
"[b]Примечание:[/b] [param size] должно иметь соотношение сторон 2:1, чтобы "
"сгенерированная панорама имела квадратные пиксели. Для карт освещенности нет "
"смысла использовать высоту больше [member Sky.radiance_size], так как это не "
"увеличит детализацию. Карты освещенности содержат только низкочастотные "
"данные, поэтому обычно нет смысла выходить за пределы размера 128×64 пикселей "
"при сохранении карты освещенности."

msgid ""
"Creates an empty sky and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID will be used in all [code]sky_*[/"
"code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method."
msgstr ""
"Создает пустое небо и добавляет его в RenderingServer. К нему можно получить "
"доступ с помощью возвращаемого RID. Этот RID будет использоваться во всех "
"функциях [code]sky_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer."

msgid ""
"Sets the material that the sky uses to render the background, ambient and "
"reflection maps."
msgstr ""
"Устанавливает материал, который небо использует для визуализации фона, карт "
"окружения и отражений."

msgid ""
"Sets the process [param mode] of the sky specified by the [param sky] RID. "
"Equivalent to [member Sky.process_mode]."
msgstr ""
"Устанавливает процесс [param mode] неба, указанного RID [param sky]. "
"Эквивалентно [member Sky.process_mode]."

msgid ""
"Sets the [param radiance_size] of the sky specified by the [param sky] RID "
"(in pixels). Equivalent to [member Sky.radiance_size]."
msgstr ""
"Устанавливает [param radiance_size] неба, указанного в [param sky] RID (в "
"пикселях). Эквивалентно [member Sky.radiance_size]."

msgid ""
"Creates a spot light and adds it to the RenderingServer. It can be accessed "
"with the RID that is returned. This RID can be used in most [code]light_*[/"
"code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"To place in a scene, attach this spot light to an instance using [method "
"instance_set_base] using the returned RID."
msgstr ""
"Создает точечный источник света и добавляет его в RenderingServer. К нему "
"можно получить доступ с помощью возвращаемого RID. Этот RID можно "
"использовать в большинстве функций [code]light_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"Чтобы разместить в сцене, прикрепите этот точечный источник света к "
"экземпляру с помощью [method instance_set_base], используя возвращаемый RID."

msgid ""
"Sets [member ProjectSettings.rendering/environment/subsurface_scattering/"
"subsurface_scattering_quality] to use when rendering materials that have "
"subsurface scattering enabled."
msgstr ""
"Устанавливает [member ProjectSettings.rendering/environment/"
"subsurface_scattering/subsurface_scattering_quality] для использования при "
"рендеринге материалов, в которых включено подповерхностное рассеивание."

msgid ""
"Sets the [member ProjectSettings.rendering/environment/subsurface_scattering/"
"subsurface_scattering_scale] and [member ProjectSettings.rendering/"
"environment/subsurface_scattering/subsurface_scattering_depth_scale] to use "
"when rendering materials that have subsurface scattering enabled."
msgstr ""
"Задает [member ProjectSettings.rendering/environment/subsurface_scattering/"
"subsurface_scattering_scale] и [member ProjectSettings.rendering/environment/"
"subsurface_scattering/subsurface_scattering_depth_scale] для использования "
"при рендеринге материалов, в которых включено подповерхностное рассеивание."

msgid ""
"Creates a 2-dimensional texture and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
"[code]texture_2d_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent resource is [Texture2D].\n"
"[b]Note:[/b] Not to be confused with [method RenderingDevice.texture_create], "
"which creates the graphics API's own texture type as opposed to the Godot-"
"specific [Texture2D] resource."
msgstr ""
"Создает 2-мерную текстуру и добавляет ее в RenderingServer. Доступ к ней "
"можно получить с помощью возвращаемого RID. Этот RID будет использоваться во "
"всех функциях RenderingServer [code]texture_2d_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [Texture2D].\n"
"[b]Примечание:[/b] Не путать с [method RenderingDevice.texture_create], "
"который создает собственный тип текстуры графического API в отличие от "
"специфичного для Godot ресурса [Texture2D]."

msgid ""
"Returns an [Image] instance from the given [param texture] [RID].\n"
"[b]Example:[/b] Get the test texture from [method get_test_texture] and apply "
"it to a [Sprite2D] node:\n"
"[codeblock]\n"
"var texture_rid = RenderingServer.get_test_texture()\n"
"var texture = "
"ImageTexture.create_from_image(RenderingServer.texture_2d_get(texture_rid))\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]"
msgstr ""
"Возвращает экземпляр [Image] из заданного [param texture] [RID].\n"
"[b]Пример:[/b] Получите тестовую текстуру из [method get_test_texture] и "
"примените ее к узлу [Sprite2D]:\n"
"[codeblock]\n"
"var texture_rid = RenderingServer.get_test_texture()\n"
"var texture = "
"ImageTexture.create_from_image(RenderingServer.texture_2d_get(texture_rid))\n"
"$Sprite2D.texture = texture\n"
"[/codeblock]"

msgid ""
"Returns an [Image] instance from the given [param texture] [RID] and [param "
"layer]."
msgstr ""
"Возвращает экземпляр [Image] из заданных [param texture] [RID] и [param "
"layer]."

msgid ""
"Creates a 2-dimensional layered texture and adds it to the RenderingServer. "
"It can be accessed with the RID that is returned. This RID will be used in "
"all [code]texture_2d_layered_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent resource is [TextureLayered]."
msgstr ""
"Создает 2-мерную многослойную текстуру и добавляет ее в RenderingServer. "
"Доступ к ней можно получить с помощью возвращаемого RID. Этот RID будет "
"использоваться во всех функциях RenderingServer [code]texture_2d_layered_*[/"
"code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [TextureLayered]."

msgid ""
"Creates a placeholder for a 2-dimensional layered texture and adds it to the "
"RenderingServer. It can be accessed with the RID that is returned. This RID "
"will be used in all [code]texture_2d_layered_*[/code] RenderingServer "
"functions, although it does nothing when used. See also [method "
"texture_2d_placeholder_create].\n"
"[b]Note:[/b] The equivalent resource is [PlaceholderTextureLayered]."
msgstr ""
"Создает заполнитель для двухмерной многослойной текстуры и добавляет его в "
"RenderingServer. Доступ к нему можно получить с помощью возвращаемого RID. "
"Этот RID будет использоваться во всех функциях RenderingServer "
"[code]texture_2d_layered_*[/code], хотя при использовании он ничего не "
"делает. См. также [method texture_2d_placeholder_create].\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [PlaceholderTextureLayered]."

msgid ""
"Creates a placeholder for a 2-dimensional layered texture and adds it to the "
"RenderingServer. It can be accessed with the RID that is returned. This RID "
"will be used in all [code]texture_2d_layered_*[/code] RenderingServer "
"functions, although it does nothing when used. See also [method "
"texture_2d_layered_placeholder_create].\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent resource is [PlaceholderTexture2D]."
msgstr ""
"Создает заполнитель для двухмерной многослойной текстуры и добавляет его в "
"RenderingServer. К нему можно получить доступ с помощью возвращаемого RID. "
"Этот RID будет использоваться во всех функциях RenderingServer "
"[code]texture_2d_layered_*[/code], хотя он ничего не делает при "
"использовании. См. также [method texture_2d_layered_placeholder_create].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [PlaceholderTexture2D]."

msgid ""
"Updates the texture specified by the [param texture] [RID] with the data in "
"[param image]. A [param layer] must also be specified, which should be "
"[code]0[/code] when updating a single-layer texture ([Texture2D]).\n"
"[b]Note:[/b] The [param image] must have the same width, height and format as "
"the current [param texture] data. Otherwise, an error will be printed and the "
"original texture won't be modified. If you need to use different width, "
"height or format, use [method texture_replace] instead."
msgstr ""
"Обновляет текстуру, указанную [param texture] [RID], данными в [param image]. "
"Также необходимо указать [param layer], который должен быть [code]0[/code] "
"при обновлении однослойной текстуры ([Texture2D]).\n"
"[b]Примечание:[/b] [param image] должен иметь ту же ширину, высоту и формат, "
"что и текущие данные [param texture]. В противном случае будет выведена "
"ошибка, и исходная текстура не будет изменена. Если вам нужно использовать "
"другую ширину, высоту или формат, используйте вместо этого [method "
"texture_replace]."

msgid "[b]Note:[/b] The equivalent resource is [Texture3D]."
msgstr "[b]Примечание:[/b] Эквивалентный ресурс — [Texture3D]."

msgid ""
"Returns 3D texture data as an array of [Image]s for the specified texture "
"[RID]."
msgstr ""
"Возвращает данные 3D-текстуры в виде массива [Image] для указанной текстуры "
"[RID]."

msgid ""
"Creates a placeholder for a 3-dimensional texture and adds it to the "
"RenderingServer. It can be accessed with the RID that is returned. This RID "
"will be used in all [code]texture_3d_*[/code] RenderingServer functions, "
"although it does nothing when used.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent resource is [PlaceholderTexture3D]."
msgstr ""
"Создает заполнитель для трехмерной текстуры и добавляет его в "
"RenderingServer. К нему можно получить доступ с помощью возвращаемого RID. "
"Этот RID будет использоваться во всех функциях [code]texture_3d_*[/code] "
"RenderingServer, хотя он ничего не делает при использовании.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный ресурс — [PlaceholderTexture3D]."

msgid ""
"Updates the texture specified by the [param texture] [RID]'s data with the "
"data in [param data]. All the texture's layers must be replaced at once.\n"
"[b]Note:[/b] The [param texture] must have the same width, height, depth and "
"format as the current texture data. Otherwise, an error will be printed and "
"the original texture won't be modified. If you need to use different width, "
"height, depth or format, use [method texture_replace] instead."
msgstr ""
"Обновляет текстуру, указанную данными [param texture] [RID] с данными в "
"[param data]. Все слои текстуры должны быть заменены одновременно.\n"
"[b]Примечание:[/b] [param texture] должна иметь ту же ширину, высоту, глубину "
"и формат, что и текущие данные текстуры. В противном случае будет выведена "
"ошибка, и исходная текстура не будет изменена. Если вам нужно использовать "
"другую ширину, высоту, глубину или формат, используйте вместо этого [method "
"texture_replace]."

msgid ""
"Creates a texture based on a native handle that was created outside of "
"Godot's renderer.\n"
"[b]Note:[/b] If using only the rendering device renderer, it's recommend to "
"use [method RenderingDevice.texture_create_from_extension] together with "
"[method RenderingServer.texture_rd_create], rather than this method. It will "
"give you much more control over the texture's format and usage."
msgstr ""
"Создает текстуру на основе собственного дескриптора, созданного вне рендерера "
"Godot.\n"
"[b]Примечание:[/b] Если используется только рендерер устройства рендеринга, "
"рекомендуется использовать [method "
"RenderingDevice.texture_create_from_extension] вместе с [method "
"RenderingServer.texture_rd_create], а не этот метод. Это даст вам гораздо "
"больше контроля над форматом и использованием текстуры."

msgid "Returns the format for the texture."
msgstr "Возвращает формат текстуры."

msgid "Returns a texture [RID] that can be used with [RenderingDevice]."
msgstr ""
"Возвращает текстуру [RID], которую можно использовать с [RenderingDevice]."

msgid "ProxyTexture was removed in Godot 4."
msgstr "ProxyTexture был удален в Godot 4."

msgid "This method does nothing and always returns an invalid [RID]."
msgstr "Этот метод ничего не делает и всегда возвращает недействительный [RID]."

msgid ""
"Creates a new texture object based on a texture created directly on the "
"[RenderingDevice]. If the texture contains layers, [param layer_type] is used "
"to define the layer type."
msgstr ""
"Создает новый объект текстуры на основе текстуры, созданной непосредственно "
"на [RenderingDevice]. Если текстура содержит слои, [param layer_type] "
"используется для определения типа слоя."

msgid ""
"Replaces [param texture]'s texture data by the texture specified by the "
"[param by_texture] RID, without changing [param texture]'s RID."
msgstr ""
"Заменяет данные текстуры [param texture] текстурой, указанной в RID [param "
"by_texture], не изменяя RID [param texture]."

msgid "Sets a viewport's camera."
msgstr "Устанавливает камеру области просмотра."

msgid "Sets a viewport's canvas."
msgstr "Устанавливает холст области просмотра."

msgid ""
"Copies the viewport to a region of the screen specified by [param rect]. If "
"[method viewport_set_render_direct_to_screen] is [code]true[/code], then the "
"viewport does not use a framebuffer and the contents of the viewport are "
"rendered directly to screen. However, note that the root viewport is drawn "
"last, therefore it will draw over the screen. Accordingly, you must set the "
"root viewport to an area that does not cover the area that you have attached "
"this viewport to.\n"
"For example, you can set the root viewport to not render at all with the "
"following code:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tRenderingServer.viewport_attach_to_screen(get_viewport().get_viewport_rid(), "
"Rect2())\n"
"\tRenderingServer.viewport_attach_to_screen($Viewport.get_viewport_rid(), "
"Rect2(0, 0, 600, 600))\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Using this can result in significant optimization, especially on lower-end "
"devices. However, it comes at the cost of having to manage your viewports "
"manually. For further optimization, see [method "
"viewport_set_render_direct_to_screen]."
msgstr ""
"Копирует область просмотра в область экрана, указанную [param rect]. Если "
"[method viewport_set_render_direct_to_screen] равен [code]true[/code], то "
"область просмотра не использует буфер кадра, и содержимое области просмотра "
"отображается непосредственно на экране. Однако обратите внимание, что "
"корневая область просмотра отображается последней, поэтому она будет "
"отображаться поверх экрана. Соответственно, вы должны установить корневую "
"область просмотра в область, которая не покрывает область, к которой вы "
"прикрепили эту область просмотра.\n"
"Например, вы можете настроить корневую область просмотра так, чтобы она "
"вообще не отображалась, с помощью следующего кода:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tRenderingServer.viewport_attach_to_screen(get_viewport().get_viewport_rid(), "
"Rect2())\n"
"\tRenderingServer.viewport_attach_to_screen($Viewport.get_viewport_rid(), "
"Rect2(0, 0, 600, 600))\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Использование этого может привести к значительной оптимизации, особенно на "
"устройствах начального уровня. Однако это достигается за счет необходимости "
"вручную управлять вашими окнами просмотра. Для дальнейшей оптимизации см. "
"[method viewport_set_render_direct_to_screen]."

msgid ""
"Creates an empty viewport and adds it to the RenderingServer. It can be "
"accessed with the RID that is returned. This RID will be used in all "
"[code]viewport_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent node is [Viewport]."
msgstr ""
"Создает пустую область просмотра и добавляет ее в RenderingServer. Доступ к "
"ней можно получить с помощью возвращаемого RID. Этот RID будет использоваться "
"во всех функциях [code]viewport_*[/code] RenderingServer.\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"[method free_rid] RenderingServer.\n"
"[b]Примечание:[/b] Эквивалентный узел — [Viewport]."

msgid ""
"Returns the CPU time taken to render the last frame in milliseconds. This "
"[i]only[/i] includes time spent in rendering-related operations; scripts' "
"[code]_process[/code] functions and other engine subsystems are not included "
"in this readout. To get a complete readout of CPU time spent to render the "
"scene, sum the render times of all viewports that are drawn every frame plus "
"[method get_frame_setup_time_cpu]. Unlike [method "
"Engine.get_frames_per_second], this method will accurately reflect CPU "
"utilization even if framerate is capped via V-Sync or [member "
"Engine.max_fps]. See also [method viewport_get_measured_render_time_gpu].\n"
"[b]Note:[/b] Requires measurements to be enabled on the specified [param "
"viewport] using [method viewport_set_measure_render_time]. Otherwise, this "
"method returns [code]0.0[/code]."
msgstr ""
"Возвращает время ЦП, затраченное на рендеринг последнего кадра в "
"миллисекундах. Это [i]только[/i] включает время, затраченное на операции, "
"связанные с рендерингом; функции скриптов [code]_process[/code] и другие "
"подсистемы движка не включены в это показание. Чтобы получить полное "
"показание времени ЦП, затраченного на рендеринг сцены, сложите время "
"рендеринга всех областей просмотра, которые отрисовываются в каждом кадре, "
"плюс [method get_frame_setup_time_cpu]. В отличие от [method "
"Engine.get_frames_per_second], этот метод будет точно отражать использование "
"ЦП, даже если частота кадров ограничена с помощью V-Sync или [member "
"Engine.max_fps]. См. также [method viewport_get_measured_render_time_gpu].\n"
"[b]Примечание:[/b] Требует включения измерений на указанном [param viewport] "
"с помощью [method viewport_set_measure_render_time]. В противном случае этот "
"метод возвращает [code]0.0[/code]."

msgid ""
"Returns the GPU time taken to render the last frame in milliseconds. To get a "
"complete readout of GPU time spent to render the scene, sum the render times "
"of all viewports that are drawn every frame. Unlike [method "
"Engine.get_frames_per_second], this method accurately reflects GPU "
"utilization even if framerate is capped via V-Sync or [member "
"Engine.max_fps]. See also [method viewport_get_measured_render_time_cpu].\n"
"[b]Note:[/b] Requires measurements to be enabled on the specified [param "
"viewport] using [method viewport_set_measure_render_time]. Otherwise, this "
"method returns [code]0.0[/code].\n"
"[b]Note:[/b] When GPU utilization is low enough during a certain period of "
"time, GPUs will decrease their power state (which in turn decreases core and "
"memory clock speeds). This can cause the reported GPU time to increase if GPU "
"utilization is kept low enough by a framerate cap (compared to what it would "
"be at the GPU's highest power state). Keep this in mind when benchmarking "
"using [method viewport_get_measured_render_time_gpu]. This behavior can be "
"overridden in the graphics driver settings at the cost of higher power usage."
msgstr ""
"Возвращает время GPU, затраченное на рендеринг последнего кадра в "
"миллисекундах. Чтобы получить полное показание времени GPU, затраченного на "
"рендеринг сцены, суммируйте время рендеринга всех областей просмотра, которые "
"отрисовываются в каждом кадре. В отличие от [method "
"Engine.get_frames_per_second], этот метод точно отражает использование GPU, "
"даже если частота кадров ограничена с помощью V-Sync или [member "
"Engine.max_fps]. См. также [method viewport_get_measured_render_time_cpu].\n"
"[b]Примечание:[/b] Требует включения измерений на указанном [param viewport] "
"с помощью [method viewport_set_measure_render_time]. В противном случае этот "
"метод возвращает [code]0.0[/code].\n"
"[b]Примечание:[/b] Когда использование GPU достаточно низкое в течение "
"определенного периода времени, GPU снижают свое состояние питания (что, в "
"свою очередь, снижает тактовую частоту ядра и памяти). Это может привести к "
"увеличению сообщаемого времени GPU, если загрузка GPU удерживается на "
"достаточно низком уровне с помощью ограничения частоты кадров (по сравнению с "
"тем, что было бы в состоянии максимальной мощности GPU). Помните об этом при "
"бенчмаркинге с использованием [method viewport_get_measured_render_time_gpu]. "
"Это поведение можно переопределить в настройках графического драйвера за счет "
"более высокого энергопотребления."

msgid ""
"Returns a statistic about the rendering engine which can be used for "
"performance profiling. This is separated into render pass [param type]s, each "
"of them having the same [param info]s you can query (different passes will "
"return different values).\n"
"See also [method get_rendering_info], which returns global information across "
"all viewports.\n"
"[b]Note:[/b] Viewport rendering information is not available until at least 2 "
"frames have been rendered by the engine. If rendering information is not "
"available, [method viewport_get_render_info] returns [code]0[/code]. To print "
"rendering information in [code]_ready()[/code] successfully, use the "
"following:\n"
"[codeblock]\n"
"func _ready():\n"
"\tfor _i in 2:\n"
"\t\tawait get_tree().process_frame\n"
"\n"
"\tprint(\n"
"\t\t\tRenderingServer.viewport_get_render_info(get_viewport().get_viewport_rid(),\n"
"\t\t\tRenderingServer.VIEWPORT_RENDER_INFO_TYPE_VISIBLE,\n"
"\t\t\tRenderingServer.VIEWPORT_RENDER_INFO_DRAW_CALLS_IN_FRAME)\n"
"\t)\n"
"[/codeblock]"
msgstr ""
"Возвращает статистику о движке рендеринга, которую можно использовать для "
"профилирования производительности. Она разделена на проходы рендеринга [param "
"type], каждый из которых имеет те же [param info], которые вы можете "
"запросить (разные проходы будут возвращать разные значения).\n"
"См. также [method get_rendering_info], который возвращает глобальную "
"информацию по всем окнам просмотра.\n"
"[b]Примечание:[/b] Информация о рендеринге окна просмотра недоступна, пока "
"движок не отрисует хотя бы 2 кадра. Если информация о рендеринге недоступна, "
"[method viewport_get_render_info] возвращает [code]0[/code]. Чтобы успешно "
"вывести информацию о рендеринге в [code]_ready()[/code], используйте "
"следующее:\n"
"[codeblock]\n"
"func _ready():\n"
"\tfor _i in 2:\n"
"\t\tawait get_tree().process_frame\n"
"\n"
"\tprint(\n"
"\t\t\tRenderingServer.viewport_get_render_info(get_viewport().get_viewport_rid(),\n"
"\t\t\tRenderingServer.VIEWPORT_RENDER_INFO_TYPE_VISIBLE,\n"
"\t\t\tRenderingServer.VIEWPORT_RENDER_INFO_DRAW_CALLS_IN_FRAME)\n"
"\t)\n"
"[/codeblock]"

msgid "Returns the render target for the viewport."
msgstr "Возвращает цель рендеринга для области просмотра."

msgid "Returns the viewport's last rendered frame."
msgstr "Возвращает последний отрисованный кадр области просмотра."

msgid ""
"Returns the viewport's update mode.\n"
"[b]Warning:[/b] Calling this from any thread other than the rendering thread "
"will be detrimental to performance."
msgstr ""
"Возвращает режим обновления области просмотра.\n"
"[b]Предупреждение:[/b] Вызов этого из любого потока, кроме потока рендеринга, "
"отрицательно скажется на производительности."

msgid "Detaches a viewport from a canvas."
msgstr "Отсоединяет область просмотра от холста."

msgid "If [code]true[/code], sets the viewport active, else sets it inactive."
msgstr ""
"Если [code]true[/code], то область просмотра становится активной, в противном "
"случае она становится неактивной."

msgid ""
"Sets the maximum number of samples to take when using anisotropic filtering "
"on textures (as a power of two). A higher sample count will result in sharper "
"textures at oblique angles, but is more expensive to compute. A value of "
"[code]0[/code] forcibly disables anisotropic filtering, even on materials "
"where it is enabled.\n"
"The anisotropic filtering level also affects decals and light projectors if "
"they are configured to use anisotropic filtering. See [member "
"ProjectSettings.rendering/textures/decals/filter] and [member "
"ProjectSettings.rendering/textures/light_projectors/filter].\n"
"[b]Note:[/b] In 3D, for this setting to have an effect, set [member "
"BaseMaterial3D.texture_filter] to [constant "
"BaseMaterial3D.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] or [constant "
"BaseMaterial3D.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] on "
"materials.\n"
"[b]Note:[/b] In 2D, for this setting to have an effect, set [member "
"CanvasItem.texture_filter] to [constant "
"CanvasItem.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] or [constant "
"CanvasItem.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] on the "
"[CanvasItem] node displaying the texture (or in [CanvasTexture]). However, "
"anisotropic filtering is rarely useful in 2D, so only enable it for textures "
"in 2D if it makes a meaningful visual difference."
msgstr ""
"Устанавливает максимальное количество выборок при использовании анизотропной "
"фильтрации текстур (как степень двойки). Большее количество выборок приведет "
"к более резким текстурам под косыми углами, но это более затратно для "
"вычисления. Значение [code]0[/code] принудительно отключает анизотропную "
"фильтрацию, даже для материалов, где она включена.\n"
"Уровень анизотропной фильтрации также влияет на декали и проекторы света, "
"если они настроены на использование анизотропной фильтрации. См. [member "
"ProjectSettings.rendering/textures/decals/filter] и [member "
"ProjectSettings.rendering/textures/light_projectors/filter].\n"
"[b]Примечание:[/b] В 3D, чтобы эта настройка имела эффект, установите [member "
"BaseMaterial3D.texture_filter] на [constant "
"BaseMaterial3D.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] или [constant "
"BaseMaterial3D.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] для "
"материалов.\n"
"[b]Примечание:[/b] В 2D, чтобы эта настройка имела эффект, установите [member "
"CanvasItem.texture_filter] на [constant "
"CanvasItem.TEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC] или [constant "
"CanvasItem.TEXTURE_FILTER_NEAREST_WITH_MIPMAPS_ANISOTROPIC] на узле "
"[CanvasItem], отображающем текстуру (или в [CanvasTexture]). Однако "
"анизотропная фильтрация редко бывает полезна в 2D, поэтому включайте ее для "
"текстур в 2D только в том случае, если это создает значимую визуальную "
"разницу."

msgid ""
"Sets the rendering mask associated with this [Viewport]. Only [CanvasItem] "
"nodes with a matching rendering visibility layer will be rendered by this "
"[Viewport]."
msgstr ""
"Устанавливает маску рендеринга, связанную с этим [Viewport]. Только узлы "
"[CanvasItem] с соответствующим слоем видимости рендеринга будут рендериться "
"этим [Viewport]."

msgid ""
"Sets the stacking order for a viewport's canvas.\n"
"[param layer] is the actual canvas layer, while [param sublayer] specifies "
"the stacking order of the canvas among those in the same layer.\n"
"[b]Note:[/b] [param layer] should be between [constant CANVAS_LAYER_MIN] and "
"[constant CANVAS_LAYER_MAX] (inclusive). Any other value will wrap around."
msgstr ""
"Устанавливает порядок наложения для холста области просмотра.\n"
"[param layer] — это фактический слой холста, а [param sublayer] определяет "
"порядок наложения холста среди тех, что находятся в том же слое.\n"
"[b]Примечание:[/b] [param layer] должен быть между [constant "
"CANVAS_LAYER_MIN] и [constant CANVAS_LAYER_MAX] (включительно). Любое другое "
"значение будет переноситься."

msgid "Sets the transformation of a viewport's canvas."
msgstr "Устанавливает преобразование холста области просмотра."

msgid "Sets the clear mode of a viewport."
msgstr "Устанавливает режим очистки области просмотра."

msgid "Sets the debug draw mode of a viewport."
msgstr "Устанавливает режим отладки отрисовки области просмотра."

msgid ""
"Sets the default texture filtering mode for the specified [param viewport] "
"RID."
msgstr ""
"Устанавливает режим фильтрации текстур по умолчанию для указанного RID [param "
"viewport]."

msgid ""
"Sets the default texture repeat mode for the specified [param viewport] RID."
msgstr ""
"Устанавливает режим повторения текстуры по умолчанию для указанного [param "
"viewport] RID."

msgid ""
"If [code]true[/code], the viewport's canvas (i.e. 2D and GUI elements) is not "
"rendered."
msgstr ""
"Если [code]true[/code], холст области просмотра (т. е. 2D-элементы и элементы "
"графического интерфейса) не отображается."

msgid "If [code]true[/code], the viewport's 3D elements are not rendered."
msgstr "Если [code]true[/code], 3D-элементы области просмотра не отображаются."

msgid ""
"Sets the viewport's environment mode which allows enabling or disabling "
"rendering of 3D environment over 2D canvas. When disabled, 2D will not be "
"affected by the environment. When enabled, 2D will be affected by the "
"environment if the environment background mode is [constant ENV_BG_CANVAS]. "
"The default behavior is to inherit the setting from the viewport's parent. If "
"the topmost parent is also set to [constant VIEWPORT_ENVIRONMENT_INHERIT], "
"then the behavior will be the same as if it was set to [constant "
"VIEWPORT_ENVIRONMENT_ENABLED]."
msgstr ""
"Устанавливает режим среды вьюпорта, который позволяет включать или отключать "
"рендеринг 3D-среды поверх 2D-холста. Если отключено, 2D не будет зависеть от "
"среды. Если включено, 2D будет зависеть от среды, если режим фона среды равен "
"[constant ENV_BG_CANVAS]. Поведение по умолчанию — наследование настройки от "
"родителя вьюпорта. Если самый верхний родитель также установлен на [constant "
"VIEWPORT_ENVIRONMENT_INHERIT], то поведение будет таким же, как если бы он "
"был установлен на [constant VIEWPORT_ENVIRONMENT_ENABLED]."

msgid "Sets the viewport's global transformation matrix."
msgstr "Задает глобальную матрицу преобразования области просмотра."

msgid ""
"Sets the measurement for the given [param viewport] RID (obtained using "
"[method Viewport.get_viewport_rid]). Once enabled, [method "
"viewport_get_measured_render_time_cpu] and [method "
"viewport_get_measured_render_time_gpu] will return values greater than "
"[code]0.0[/code] when queried with the given [param viewport]."
msgstr ""
"Устанавливает измерение для заданного [param viewport] RID (полученного с "
"помощью [method Viewport.get_viewport_rid]). После включения [method "
"viewport_get_measured_render_time_cpu] и [method "
"viewport_get_measured_render_time_gpu] будут возвращать значения больше "
"[code]0.0[/code] при запросе с заданным [param viewport]."

msgid ""
"Sets the multisample antialiasing mode for 2D/Canvas on the specified [param "
"viewport] RID. Equivalent to [member ProjectSettings.rendering/anti_aliasing/"
"quality/msaa_2d] or [member Viewport.msaa_2d]."
msgstr ""
"Устанавливает режим сглаживания мультисэмпла для 2D/Canvas на указанном "
"[param viewport] RID. Эквивалентно [member ProjectSettings.rendering/"
"anti_aliasing/quality/msaa_2d] или [member Viewport.msaa_2d]."

msgid ""
"Sets the multisample antialiasing mode for 3D on the specified [param "
"viewport] RID. Equivalent to [member ProjectSettings.rendering/anti_aliasing/"
"quality/msaa_3d] or [member Viewport.msaa_3d]."
msgstr ""
"Устанавливает режим сглаживания мультисэмпла для 3D на указанном [param "
"viewport] RID. Эквивалентно [member ProjectSettings.rendering/anti_aliasing/"
"quality/msaa_3d] или [member Viewport.msaa_3d]."

msgid ""
"Sets the [member ProjectSettings.rendering/occlusion_culling/"
"bvh_build_quality] to use for occlusion culling. This parameter is global and "
"cannot be set on a per-viewport basis."
msgstr ""
"Устанавливает [member ProjectSettings.rendering/occlusion_culling/"
"bvh_build_quality] для использования при occlusion culling. Этот параметр "
"является глобальным и не может быть установлен для каждого viewport."

msgid ""
"Sets the [member ProjectSettings.rendering/occlusion_culling/"
"occlusion_rays_per_thread] to use for occlusion culling. This parameter is "
"global and cannot be set on a per-viewport basis."
msgstr ""
"Устанавливает [member ProjectSettings.rendering/occlusion_culling/"
"occlusion_rays_per_thread] для использования при occlusion culling. Этот "
"параметр является глобальным и не может быть установлен на основе viewport."

msgid ""
"Sets the viewport's parent to the viewport specified by the [param "
"parent_viewport] RID."
msgstr ""
"Устанавливает родительский элемент области просмотра на область просмотра, "
"указанную в RID [param parent_viewport]."

msgid ""
"Sets the number of subdivisions to use in the specified shadow atlas [param "
"quadrant] for omni and spot shadows. See also [method "
"Viewport.set_positional_shadow_atlas_quadrant_subdiv]."
msgstr ""
"Устанавливает количество подразделений для использования в указанном теневом "
"атласе [param quadrant] для omni и spot теней. См. также [method "
"Viewport.set_positional_shadow_atlas_quadrant_subdiv]."

msgid ""
"Sets the [param size] of the shadow atlas's images (used for omni and spot "
"lights) on the viewport specified by the [param viewport] RID. The value is "
"rounded up to the nearest power of 2. If [param use_16_bits] is [code]true[/"
"code], use 16 bits for the omni/spot shadow depth map. Enabling this results "
"in shadows having less precision and may result in shadow acne, but can lead "
"to performance improvements on some devices.\n"
"[b]Note:[/b] If this is set to [code]0[/code], no positional shadows will be "
"visible at all. This can improve performance significantly on low-end systems "
"by reducing both the CPU and GPU load (as fewer draw calls are needed to draw "
"the scene without shadows)."
msgstr ""
"Устанавливает [param size] изображений атласа теней (используемых для "
"всенаправленных и точечных источников света) на области просмотра, указанной "
"в [param viewport] RID. Значение округляется до ближайшей степени 2. Если "
"[param use_16_bits] равно [code]true[/code], используйте 16 бит для карты "
"глубины всенаправленных/точечных теней. Включение этого параметра приводит к "
"снижению точности теней и может привести к появлению теневых угрей, но может "
"привести к повышению производительности на некоторых устройствах.\n"
"[b]Примечание:[/b] Если установлено значение [code]0[/code], позиционные тени "
"вообще не будут видны. Это может значительно повысить производительность на "
"слабых системах за счет снижения нагрузки как на ЦП, так и на ГП (поскольку "
"для отрисовки сцены без теней требуется меньше вызовов отрисовки)."

msgid ""
"If [code]true[/code], render the contents of the viewport directly to screen. "
"This allows a low-level optimization where you can skip drawing a viewport to "
"the root viewport. While this optimization can result in a significant "
"increase in speed (especially on older devices), it comes at a cost of "
"usability. When this is enabled, you cannot read from the viewport or from "
"the screen_texture. You also lose the benefit of certain window settings, "
"such as the various stretch modes. Another consequence to be aware of is that "
"in 2D the rendering happens in window coordinates, so if you have a viewport "
"that is double the size of the window, and you set this, then only the "
"portion that fits within the window will be drawn, no automatic scaling is "
"possible, even if your game scene is significantly larger than the window "
"size."
msgstr ""
"Если [code]true[/code], отрисовывать содержимое области просмотра "
"непосредственно на экране. Это позволяет выполнить низкоуровневую "
"оптимизацию, при которой можно пропустить рисование области просмотра в "
"корневой области просмотра. Хотя эта оптимизация может привести к "
"значительному увеличению скорости (особенно на старых устройствах), она "
"достигается ценой удобства использования. Когда это включено, вы не можете "
"читать из области просмотра или из screen_texture. Вы также теряете "
"преимущество определенных настроек окна, таких как различные режимы "
"растяжения. Еще одно последствие, о котором следует знать, заключается в том, "
"что в 2D рендеринг происходит в координатах окна, поэтому если у вас область "
"просмотра в два раза больше размера окна, и вы устанавливаете это, то будет "
"отрисована только та часть, которая помещается в окне, автоматическое "
"масштабирование невозможно, даже если ваша игровая сцена значительно больше "
"размера окна."

msgid ""
"Sets the 3D resolution scaling mode. Bilinear scaling renders at different "
"resolution to either undersample or supersample the viewport. FidelityFX "
"Super Resolution 1.0, abbreviated to FSR, is an upscaling technology that "
"produces high quality images at fast framerates by using a spatially aware "
"upscaling algorithm. FSR is slightly more expensive than bilinear, but it "
"produces significantly higher image quality. FSR should be used where "
"possible."
msgstr ""
"Устанавливает режим масштабирования разрешения 3D. Билинейный масштаб "
"рендерит с разным разрешением для либо недостаточной, либо избыточной выборки "
"области просмотра. FidelityFX Super Resolution 1.0, сокращенно FSR, — это "
"технология масштабирования, которая создает высококачественные изображения с "
"высокой частотой кадров с помощью пространственно-чувствительного алгоритма "
"масштабирования. FSR немного дороже билинейного, но обеспечивает значительно "
"более высокое качество изображения. FSR следует использовать везде, где это "
"возможно."

msgid ""
"Scales the 3D render buffer based on the viewport size uses an image filter "
"specified in [enum ViewportScaling3DMode] to scale the output image to the "
"full viewport size. Values lower than [code]1.0[/code] can be used to speed "
"up 3D rendering at the cost of quality (undersampling). Values greater than "
"[code]1.0[/code] are only valid for bilinear mode and can be used to improve "
"3D rendering quality at a high performance cost (supersampling). See also "
"[enum ViewportMSAA] for multi-sample antialiasing, which is significantly "
"cheaper but only smoothens the edges of polygons.\n"
"When using FSR upscaling, AMD recommends exposing the following values as "
"preset options to users \"Ultra Quality: 0.77\", \"Quality: 0.67\", "
"\"Balanced: 0.59\", \"Performance: 0.5\" instead of exposing the entire scale."
msgstr ""
"Масштабирует буфер 3D-рендеринга на основе размера области просмотра, "
"использует фильтр изображения, указанный в [enum ViewportScaling3DMode], для "
"масштабирования выходного изображения до полного размера области просмотра. "
"Значения ниже [code]1.0[/code] можно использовать для ускорения 3D-рендеринга "
"за счет качества (недостаточная выборка). Значения выше [code]1.0[/code] "
"допустимы только для билинейного режима и могут использоваться для улучшения "
"качества 3D-рендеринга за счет высокой производительности (суперсэмплинг). "
"См. также [enum ViewportMSAA] для сглаживания с несколькими выборками, "
"которое значительно дешевле, но сглаживает только края полигонов.\n"
"При использовании масштабирования FSR AMD рекомендует предоставлять "
"пользователям следующие значения в качестве предустановленных параметров "
"«Ультра-качество: 0,77», «Качество: 0,67», «Сбалансированное: 0,59», "
"«Производительность: 0,5» вместо предоставления всего масштаба."

msgid ""
"Sets a viewport's scenario. The scenario contains information about "
"environment information, reflection atlas, etc."
msgstr ""
"Устанавливает сценарий окна просмотра. Сценарий содержит информацию об "
"окружающей среде, атлас отражений и т. д."

msgid ""
"Sets the viewport's screen-space antialiasing mode. Equivalent to [member "
"ProjectSettings.rendering/anti_aliasing/quality/screen_space_aa] or [member "
"Viewport.screen_space_aa]."
msgstr ""
"Устанавливает режим сглаживания экранного пространства области просмотра. "
"Эквивалентно [member ProjectSettings.rendering/anti_aliasing/quality/"
"screen_space_aa] или [member Viewport.screen_space_aa]."

msgid ""
"Sets the viewport's 2D signed distance field [member "
"ProjectSettings.rendering/2d/sdf/oversize] and [member "
"ProjectSettings.rendering/2d/sdf/scale]. This is used when sampling the "
"signed distance field in [CanvasItem] shaders as well as [GPUParticles2D] "
"collision. This is [i]not[/i] used by SDFGI in 3D rendering."
msgstr ""
"Устанавливает поле расстояния со знаком 2D окна просмотра [member "
"ProjectSettings.rendering/2d/sdf/oversize] и [member "
"ProjectSettings.rendering/2d/sdf/scale]. Используется при сэмплировании поля "
"расстояния со знаком в шейдерах [CanvasItem], а также при столкновении "
"[GPUParticles2D]. Это [i]не[/i] используется SDFGI в 3D-рендеринге."

msgid "Sets the viewport's width and height in pixels."
msgstr "Задает ширину и высоту области просмотра в пикселях."

msgid ""
"If [code]true[/code], canvas item transforms (i.e. origin position) are "
"snapped to the nearest pixel when rendering. This can lead to a crisper "
"appearance at the cost of less smooth movement, especially when [Camera2D] "
"smoothing is enabled. Equivalent to [member ProjectSettings.rendering/2d/snap/"
"snap_2d_transforms_to_pixel]."
msgstr ""
"Если [code]true[/code], преобразования элементов холста (т. е. исходное "
"положение) привязываются к ближайшему пикселю при рендеринге. Это может "
"привести к более четкому виду за счет менее плавного движения, особенно если "
"включено сглаживание [Camera2D]. Эквивалентно [member "
"ProjectSettings.rendering/2d/snap/snap_2d_transforms_to_pixel]."

msgid ""
"If [code]true[/code], canvas item vertices (i.e. polygon points) are snapped "
"to the nearest pixel when rendering. This can lead to a crisper appearance at "
"the cost of less smooth movement, especially when [Camera2D] smoothing is "
"enabled. Equivalent to [member ProjectSettings.rendering/2d/snap/"
"snap_2d_vertices_to_pixel]."
msgstr ""
"Если [code]true[/code], вершины элемента холста (т. е. точки полигона) "
"привязываются к ближайшему пикселю при рендеринге. Это может привести к более "
"четкому виду за счет менее плавного движения, особенно если включено "
"сглаживание [Camera2D]. Эквивалентно [member ProjectSettings.rendering/2d/"
"snap/snap_2d_vertices_to_pixel]."

msgid ""
"Affects the final texture sharpness by reading from a lower or higher mipmap "
"(also called \"texture LOD bias\"). Negative values make mipmapped textures "
"sharper but grainier when viewed at a distance, while positive values make "
"mipmapped textures blurrier (even when up close). To get sharper textures at "
"a distance without introducing too much graininess, set this between "
"[code]-0.75[/code] and [code]0.0[/code]. Enabling temporal antialiasing "
"([member ProjectSettings.rendering/anti_aliasing/quality/use_taa]) can help "
"reduce the graininess visible when using negative mipmap bias.\n"
"[b]Note:[/b] When the 3D scaling mode is set to FSR 1.0, this value is used "
"to adjust the automatic mipmap bias which is calculated internally based on "
"the scale factor. The formula for this is [code]-log2(1.0 / scale) + "
"mipmap_bias[/code]."
msgstr ""
"Влияет на окончательную резкость текстуры, считывая с более низкой или более "
"высокой mipmap (также называется «смещением LOD текстуры»). Отрицательные "
"значения делают текстуры с mipmap более резкими, но более зернистыми при "
"просмотре на расстоянии, в то время как положительные значения делают "
"текстуры с mipmap более размытыми (даже при просмотре вблизи). Чтобы получить "
"более резкие текстуры на расстоянии, не внося слишком много зернистости, "
"установите это между [code]-0.75[/code] и [code]0.0[/code]. Включение "
"временного сглаживания ([member ProjectSettings.rendering/anti_aliasing/"
"quality/use_taa]) может помочь уменьшить зернистость, видимую при "
"использовании отрицательного смещения mipmap.\n"
"[b]Примечание:[/b] Когда режим 3D-масштабирования установлен на FSR 1.0, это "
"значение используется для настройки автоматического смещения mipmap, которое "
"рассчитывается внутренне на основе коэффициента масштабирования. Формула для "
"этого: [code]-log2(1.0 / scale) + mipmap_bias[/code]."

msgid ""
"If [code]true[/code], the viewport renders its background as transparent."
msgstr "Если [code]true[/code], область просмотра делает свой фон прозрачным."

msgid "Sets when the viewport should be updated."
msgstr "Устанавливает, когда следует обновлять область просмотра."

msgid ""
"Equivalent to [member Viewport.use_debanding]. See also [member "
"ProjectSettings.rendering/anti_aliasing/quality/use_debanding]."
msgstr ""
"Эквивалентно [member Viewport.use_debanding]. См. также [member "
"ProjectSettings.rendering/anti_aliasing/quality/use_debanding]."

msgid ""
"If [code]true[/code], 2D rendering will use a high dynamic range (HDR) format "
"framebuffer matching the bit depth of the 3D framebuffer. When using the "
"Forward+ or Compatibility renderer, this will be an [code]RGBA16[/code] "
"framebuffer. When using the Mobile renderer, it will be an [code]RGB10_A2[/"
"code] framebuffer.\n"
"Additionally, 2D rendering will take place in linear color space and will be "
"converted to sRGB space immediately before blitting to the screen (if the "
"Viewport is attached to the screen).\n"
"Practically speaking, this means that the end result of the Viewport will not "
"be clamped to the [code]0-1[/code] range and can be used in 3D rendering "
"without color space adjustments. This allows 2D rendering to take advantage "
"of effects requiring high dynamic range (e.g. 2D glow) as well as "
"substantially improves the appearance of effects requiring highly detailed "
"gradients. This setting has the same effect as [member Viewport.use_hdr_2d]."
msgstr ""
"Если [code]true[/code], 2D-рендеринг будет использовать фреймбуфер формата "
"HDR, соответствующий битовой глубине 3D-фреймбуфера. При использовании "
"рендерера Forward+ или Compatibility это будет фреймбуфер [code]RGBA16[/"
"code]. При использовании мобильного рендерера это будет фреймбуфер "
"[code]RGB10_A2[/code].\n"
"Кроме того, 2D-рендеринг будет выполняться в линейном цветовом пространстве и "
"будет преобразован в пространство sRGB непосредственно перед выводом на экран "
"(если область просмотра подключена к экрану).\n"
"На практике это означает, что конечный результат области просмотра не будет "
"ограничен диапазоном [code]0-1[/code] и может использоваться в 3D-рендеринге "
"без корректировки цветового пространства. Это позволяет использовать "
"преимущества 2D-рендеринга для эффектов, требующих широкого динамического "
"диапазона (например, 2D-свечение), а также значительно улучшает внешний вид "
"эффектов, требующих высокодетализированных градиентов. Этот параметр "
"действует так же, как [member Viewport.use_hdr_2d]."

msgid ""
"If [code]true[/code], enables occlusion culling on the specified viewport. "
"Equivalent to [member ProjectSettings.rendering/occlusion_culling/"
"use_occlusion_culling]."
msgstr ""
"Если [code]true[/code], включает occlusion culling на указанном окне "
"просмотра. Эквивалентно [member ProjectSettings.rendering/occlusion_culling/"
"use_occlusion_culling]."

msgid ""
"If [code]true[/code], use temporal antialiasing. Equivalent to [member "
"ProjectSettings.rendering/anti_aliasing/quality/use_taa] or [member "
"Viewport.use_taa]."
msgstr ""
"Если [code]true[/code], использовать временное сглаживание. Эквивалентно "
"[member ProjectSettings.rendering/anti_aliasing/quality/use_taa] или [member "
"Viewport.use_taa]."

msgid ""
"If [code]true[/code], the viewport uses augmented or virtual reality "
"technologies. See [XRInterface]."
msgstr ""
"Если [code]true[/code], область просмотра использует технологии дополненной "
"или виртуальной реальности. См. [XRInterface]."

msgid ""
"Sets the Variable Rate Shading (VRS) mode for the viewport. If the GPU does "
"not support VRS, this property is ignored. Equivalent to [member "
"ProjectSettings.rendering/vrs/mode]."
msgstr ""
"Устанавливает режим Variable Rate Shading (VRS) для области просмотра. Если "
"графический процессор не поддерживает VRS, это свойство игнорируется. "
"Эквивалентно [member ProjectSettings.rendering/vrs/mode]."

msgid ""
"The texture to use when the VRS mode is set to [constant "
"RenderingServer.VIEWPORT_VRS_TEXTURE]. Equivalent to [member "
"ProjectSettings.rendering/vrs/texture]."
msgstr ""
"Текстура, используемая, когда режим VRS установлен на [constant "
"RenderingServer.VIEWPORT_VRS_TEXTURE]. Эквивалентно [member "
"ProjectSettings.rendering/vrs/texture]."

msgid ""
"Sets the update mode for Variable Rate Shading (VRS) for the viewport. VRS "
"requires the input texture to be converted to the format usable by the VRS "
"method supported by the hardware. The update mode defines how often this "
"happens. If the GPU does not support VRS, or VRS is not enabled, this "
"property is ignored.\n"
"If set to [constant RenderingServer.VIEWPORT_VRS_UPDATE_ONCE], the input "
"texture is copied once and the mode is changed to [constant "
"RenderingServer.VIEWPORT_VRS_UPDATE_DISABLED]."
msgstr ""
"Устанавливает режим обновления для Variable Rate Shading (VRS) для области "
"просмотра. VRS требует, чтобы входная текстура была преобразована в формат, "
"используемый методом VRS, поддерживаемым оборудованием. Режим обновления "
"определяет, как часто это происходит. Если графический процессор не "
"поддерживает VRS или VRS не включен, это свойство игнорируется.\n"
"Если установлено значение [constant "
"RenderingServer.VIEWPORT_VRS_UPDATE_ONCE], входная текстура копируется один "
"раз, а режим изменяется на [constant "
"RenderingServer.VIEWPORT_VRS_UPDATE_DISABLED]."

msgid ""
"Creates a new 3D visibility notifier object and adds it to the "
"RenderingServer. It can be accessed with the RID that is returned. This RID "
"will be used in all [code]visibility_notifier_*[/code] RenderingServer "
"functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"To place in a scene, attach this notifier to an instance using [method "
"instance_set_base] using the returned RID.\n"
"[b]Note:[/b] The equivalent node is [VisibleOnScreenNotifier3D]."
msgstr ""
"Создает новый объект уведомителя 3D-видимости и добавляет его в "
"RenderingServer. К нему можно получить доступ с помощью возвращаемого RID. "
"Этот RID будет использоваться во всех функциях RenderingServer "
"[code]visibility_notifier_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"Чтобы разместить в сцене, прикрепите этот уведомитель к экземпляру с помощью "
"[method instance_set_base], используя возвращаемый RID.\n"
"[b]Примечание:[/b] Эквивалентный узел — [VisibleOnScreenNotifier3D]."

msgid ""
"Creates a new voxel-based global illumination object and adds it to the "
"RenderingServer. It can be accessed with the RID that is returned. This RID "
"will be used in all [code]voxel_gi_*[/code] RenderingServer functions.\n"
"Once finished with your RID, you will want to free the RID using the "
"RenderingServer's [method free_rid] method.\n"
"[b]Note:[/b] The equivalent node is [VoxelGI]."
msgstr ""
"Создает новый объект глобального освещения на основе вокселей и добавляет его "
"в RenderingServer. К нему можно получить доступ с помощью возвращаемого RID. "
"Этот RID будет использоваться во всех функциях RenderingServer "
"[code]voxel_gi_*[/code].\n"
"После завершения работы с RID вам нужно будет освободить RID с помощью метода "
"RenderingServer [method free_rid].\n"
"[b]Примечание:[/b] Эквивалентный узел — [VoxelGI]."

msgid ""
"Used to inform the renderer what exposure normalization value was used while "
"baking the voxel gi. This value will be used and modulated at run time to "
"ensure that the voxel gi maintains a consistent level of exposure even if the "
"scene-wide exposure normalization is changed at run time. For more "
"information see [method camera_attributes_set_exposure]."
msgstr ""
"Используется для информирования рендерера о том, какое значение нормализации "
"экспозиции использовалось при запекании voxel gi. Это значение будет "
"использоваться и модулироваться во время выполнения, чтобы гарантировать, что "
"voxel gi поддерживает постоянный уровень экспозиции, даже если нормализация "
"экспозиции всей сцены изменяется во время выполнения. Для получения "
"дополнительной информации см. [method camera_attributes_set_exposure]."

msgid ""
"Sets the [member VoxelGIData.bias] value to use on the specified [param "
"voxel_gi]'s [RID]."
msgstr ""
"Устанавливает значение [member VoxelGIData.bias] для использования в [RID] "
"указанного [param voxel_gi]."

msgid ""
"Sets the [member VoxelGIData.dynamic_range] value to use on the specified "
"[param voxel_gi]'s [RID]."
msgstr ""
"Устанавливает значение [member VoxelGIData.dynamic_range] для использования в "
"[RID] указанного [param voxel_gi]."

msgid ""
"Sets the [member VoxelGIData.energy] value to use on the specified [param "
"voxel_gi]'s [RID]."
msgstr ""
"Устанавливает значение [member VoxelGIData.energy] для использования в [RID] "
"указанного [param voxel_gi]."

msgid ""
"Sets the [member VoxelGIData.interior] value to use on the specified [param "
"voxel_gi]'s [RID]."
msgstr ""
"Устанавливает значение [member VoxelGIData.interior] для использования в "
"[RID] указанного [param voxel_gi]."

msgid ""
"Sets the [member VoxelGIData.normal_bias] value to use on the specified "
"[param voxel_gi]'s [RID]."
msgstr ""
"Устанавливает значение [member VoxelGIData.normal_bias] для использования в "
"[RID] указанного [param voxel_gi]."

msgid ""
"Sets the [member VoxelGIData.propagation] value to use on the specified "
"[param voxel_gi]'s [RID]."
msgstr ""
"Устанавливает значение [member VoxelGIData.propagation] для использования в "
"[RID] указанного [param voxel_gi]."

msgid ""
"Sets the [member ProjectSettings.rendering/global_illumination/voxel_gi/"
"quality] value to use when rendering. This parameter is global and cannot be "
"set on a per-VoxelGI basis."
msgstr ""
"Устанавливает значение [member ProjectSettings.rendering/global_illumination/"
"voxel_gi/quality] для использования при рендеринге. Этот параметр является "
"глобальным и не может быть установлен на основе VoxelGI."

msgid ""
"Sets the [member VoxelGIData.use_two_bounces] value to use on the specified "
"[param voxel_gi]'s [RID]."
msgstr ""
"Устанавливает значение [member VoxelGIData.use_two_bounces] для использования "
"в [RID] указанного [param voxel_gi]."

msgid ""
"If [code]false[/code], disables rendering completely, but the engine logic is "
"still being processed. You can call [method force_draw] to draw a frame even "
"with rendering disabled."
msgstr ""
"Если [code]false[/code], отключает рендеринг полностью, но логика движка все "
"еще обрабатывается. Вы можете вызвать [method force_draw], чтобы нарисовать "
"кадр даже при отключенном рендеринге."

msgid ""
"Emitted at the end of the frame, after the RenderingServer has finished "
"updating all the Viewports."
msgstr ""
"Вызывается в конце кадра, после того как RenderingServer завершил обновление "
"всех Viewports."

msgid ""
"Emitted at the beginning of the frame, before the RenderingServer updates all "
"the Viewports."
msgstr ""
"Вызывается в начале кадра, до того, как RenderingServer обновит все Viewports "
"(области просмотра)."

msgid "Marks an error that shows that the index array is empty."
msgstr "Отмечает ошибку, показывающую, что массив индексов пуст."

msgid "Number of weights/bones per vertex."
msgstr "Количество грузов/костей на вершину."

msgid "The minimum Z-layer for canvas items."
msgstr "Минимальный Z-слой для элементов холста."

msgid "The maximum Z-layer for canvas items."
msgstr "Максимальный Z-слой для элементов холста."

msgid "The minimum canvas layer."
msgstr "Минимальный слой холста."

msgid "The maximum canvas layer."
msgstr "Максимальный слой холста."

msgid ""
"The maximum number of glow levels that can be used with the glow post-"
"processing effect."
msgstr ""
"Максимальное количество уровней свечения, которые можно использовать с "
"эффектом постобработки свечения."

msgid "This constant is not used by the engine."
msgstr "Эта константа не используется движком."

msgid ""
"The maximum number of directional lights that can be rendered at a given time "
"in 2D."
msgstr ""
"Максимальное количество направленных источников света, которые можно "
"визуализировать в 2D-режиме в заданное время."

msgid "The maximum number of surfaces a mesh can have."
msgstr "Максимальное количество поверхностей, которое может иметь сетка."

msgid "2D texture."
msgstr "2D текстура."

msgid "Layered texture."
msgstr "Многослойная текстура."

msgid "3D texture."
msgstr "3D текстура."

msgid "Array of 2-dimensional textures (see [Texture2DArray])."
msgstr "Массив 2-мерных текстур (см. [Texture2DArray])."

msgid "Cubemap texture (see [Cubemap])."
msgstr "Текстура кубической карты (см. [Cubemap])."

msgid "Array of cubemap textures (see [CubemapArray])."
msgstr "Массив текстур кубической карты (см. [CubemapArray])."

msgid "Left face of a [Cubemap]."
msgstr "Левая грань [Cubemap]."

msgid "Right face of a [Cubemap]."
msgstr "Правая грань [Cubemap]."

msgid "Bottom face of a [Cubemap]."
msgstr "Нижняя грань [Cubemap]."

msgid "Top face of a [Cubemap]."
msgstr "Верхняя грань [Cubemap]."

msgid "Front face of a [Cubemap]."
msgstr "Передняя грань [Cubemap]."

msgid "Back face of a [Cubemap]."
msgstr "Задняя грань [Cubemap]."

msgid "Shader is a 3D shader."
msgstr "Шейдер — это 3D-шейдер."

msgid "Shader is a 2D shader."
msgstr "Шейдер — это 2D-шейдер."

msgid "Shader is a particle shader (can be used in both 2D and 3D)."
msgstr "Shader — шейдер частиц (может использоваться как в 2D, так и в 3D)."

msgid "Shader is a 3D sky shader."
msgstr "Шейдер — это 3D-шейдер неба."

msgid "Shader is a 3D fog shader."
msgstr "Шейдер — это 3D-шейдер тумана."

msgid "Represents the size of the [enum ShaderMode] enum."
msgstr "Представляет размер перечисления [enum ShaderMode]."

msgid "The minimum renderpriority of all materials."
msgstr "Минимальный приоритет рендеринга всех материалов."

msgid "The maximum renderpriority of all materials."
msgstr "Максимальный приоритет рендеринга всех материалов."

msgid "Array is a vertex position array."
msgstr "Массив — это массив позиций вершин."

msgid "Array is a normal array."
msgstr "Массив — это обычный массив."

msgid "Array is a tangent array."
msgstr "Массив является касательным массивом."

msgid "Array is a vertex color array."
msgstr "Массив — это массив цветов вершин."

msgid "Array is a UV coordinates array."
msgstr "Массив представляет собой массив UV-координат."

msgid "Array is a UV coordinates array for the second set of UV coordinates."
msgstr ""
"Массив представляет собой массив UV-координат для второго набора UV-координат."

msgid "Array is a custom data array for the first set of custom data."
msgstr ""
"Массив — это пользовательский массив данных для первого набора "
"пользовательских данных."

msgid "Array is a custom data array for the second set of custom data."
msgstr ""
"Массив — это пользовательский массив данных для второго набора "
"пользовательских данных."

msgid "Array is a custom data array for the third set of custom data."
msgstr ""
"Массив — это пользовательский массив данных для третьего набора "
"пользовательских данных."

msgid "Array is a custom data array for the fourth set of custom data."
msgstr ""
"Массив — это пользовательский массив данных для четвертого набора "
"пользовательских данных."

msgid "Array contains bone information."
msgstr "Массив содержит информацию о костях."

msgid "Array is weight information."
msgstr "Массив — это информация о весе."

msgid "Array is an index array."
msgstr "Массив — это индексный массив."

msgid ""
"The number of custom data arrays available ([constant ARRAY_CUSTOM0], "
"[constant ARRAY_CUSTOM1], [constant ARRAY_CUSTOM2], [constant ARRAY_CUSTOM3])."
msgstr ""
"Количество доступных пользовательских массивов данных ([constant "
"ARRAY_CUSTOM0], [constant ARRAY_CUSTOM1], [constant ARRAY_CUSTOM2], [constant "
"ARRAY_CUSTOM3])."

msgid ""
"Custom data array contains 8-bit-per-channel red/green/blue/alpha color data. "
"Values are normalized, unsigned floating-point in the [code][0.0, 1.0][/code] "
"range."
msgstr ""
"Пользовательский массив данных содержит 8-битные на канал данные о цвете "
"красный/зеленый/синий/альфа. Значения нормализованы, беззнаковые с плавающей "
"точкой в диапазоне [code][0.0, 1.0][/code]."

msgid ""
"Custom data array contains 8-bit-per-channel red/green/blue/alpha color data. "
"Values are normalized, signed floating-point in the [code][-1.0, 1.0][/code] "
"range."
msgstr ""
"Пользовательский массив данных содержит 8-битные на канал данные о цвете "
"красный/зеленый/синий/альфа. Значения нормализованы, знаковые с плавающей "
"точкой в диапазоне [code][-1.0, 1.0][/code]."

msgid ""
"Custom data array contains 16-bit-per-channel red/green color data. Values "
"are floating-point in half precision."
msgstr ""
"Пользовательский массив данных содержит 16-битные данные о красном/зеленом "
"цвете на канал. Значения являются числами с плавающей точкой с половинной "
"точностью."

msgid ""
"Custom data array contains 16-bit-per-channel red/green/blue/alpha color "
"data. Values are floating-point in half precision."
msgstr ""
"Пользовательский массив данных содержит 16-битные на канал данные о цвете "
"красный/зеленый/синий/альфа. Значения являются числами с плавающей точкой с "
"половинной точностью."

msgid ""
"Custom data array contains 32-bit-per-channel red color data. Values are "
"floating-point in single precision."
msgstr ""
"Пользовательский массив данных содержит 32-битные данные красного цвета на "
"канал. Значения являются числами с плавающей точкой одинарной точности."

msgid ""
"Custom data array contains 32-bit-per-channel red/green color data. Values "
"are floating-point in single precision."
msgstr ""
"Пользовательский массив данных содержит 32-битные на канал данные красного/"
"зеленого цвета. Значения являются числами с плавающей точкой одинарной "
"точности."

msgid ""
"Custom data array contains 32-bit-per-channel red/green/blue color data. "
"Values are floating-point in single precision."
msgstr ""
"Пользовательский массив данных содержит 32-битные данные о красном/зеленом/"
"синем цвете на канал. Значения являются числами с плавающей точкой одинарной "
"точности."

msgid ""
"Custom data array contains 32-bit-per-channel red/green/blue/alpha color "
"data. Values are floating-point in single precision."
msgstr ""
"Пользовательский массив данных содержит 32-битные на канал данные о цвете "
"красный/зеленый/синий/альфа. Значения являются числами с плавающей точкой "
"одинарной точности."

msgid "Flag used to mark a vertex position array."
msgstr "Флаг, используемый для обозначения массива позиций вершин."

msgid "Flag used to mark a normal array."
msgstr "Флаг, используемый для обозначения обычного массива."

msgid "Flag used to mark a tangent array."
msgstr "Флаг, используемый для обозначения касательного массива."

msgid "Flag used to mark a vertex color array."
msgstr "Флаг, используемый для обозначения массива цветов вершин."

msgid "Flag used to mark a UV coordinates array."
msgstr "Флаг, используемый для обозначения массива UV-координат."

msgid "Flag used to mark a UV coordinates array for the second UV coordinates."
msgstr ""
"Флаг, используемый для обозначения массива UV-координат для вторых UV-"
"координат."

msgid ""
"Flag used to mark an array of custom per-vertex data for the first set of "
"custom data."
msgstr ""
"Флаг, используемый для маркировки массива пользовательских данных по вершинам "
"для первого набора пользовательских данных."

msgid ""
"Flag used to mark an array of custom per-vertex data for the second set of "
"custom data."
msgstr ""
"Флаг, используемый для маркировки массива пользовательских данных по вершинам "
"для второго набора пользовательских данных."

msgid ""
"Flag used to mark an array of custom per-vertex data for the third set of "
"custom data."
msgstr ""
"Флаг, используемый для маркировки массива пользовательских данных по вершинам "
"для третьего набора пользовательских данных."

msgid ""
"Flag used to mark an array of custom per-vertex data for the fourth set of "
"custom data."
msgstr ""
"Флаг, используемый для маркировки массива пользовательских данных по вершинам "
"для четвертого набора пользовательских данных."

msgid "Flag used to mark a bone information array."
msgstr "Флаг, используемый для маркировки массива информации о костях."

msgid "Flag used to mark a weights array."
msgstr "Флаг, используемый для обозначения массива весов."

msgid "Flag used to mark an index array."
msgstr "Флаг, используемый для обозначения индексного массива."

msgid "Flag used to mark that the array uses 8 bone weights instead of 4."
msgstr ""
"Флаг, используемый для обозначения того, что массив использует 8 весов костей "
"вместо 4."

msgid ""
"Flag used to mark that the mesh does not have a vertex array and instead will "
"infer vertex positions in the shader using indices and other information."
msgstr ""
"Флаг, используемый для обозначения того, что сетка не имеет массива вершин и "
"вместо этого будет выводить положения вершин в шейдере с использованием "
"индексов и другой информации."

msgid "Flag used to mark the start of the bits used to store the mesh version."
msgstr ""
"Флаг, используемый для обозначения начала битов, используемых для хранения "
"версии сетки."

msgid ""
"Flag used to shift a mesh format int to bring the version into the lowest "
"digits."
msgstr ""
"Флаг, используемый для сдвига формата сетки int с целью приведения версии к "
"младшим разрядам."

msgid ""
"Flag used to record the format used by prior mesh versions before the "
"introduction of a version."
msgstr ""
"Флаг, используемый для записи формата, использовавшегося в предыдущих версиях "
"сетки до введения новой версии."

msgid ""
"Flag used to record the second iteration of the mesh version flag. The "
"primary difference between this and [constant ARRAY_FLAG_FORMAT_VERSION_1] is "
"that this version supports [constant ARRAY_FLAG_COMPRESS_ATTRIBUTES] and in "
"this version vertex positions are de-interleaved from normals and tangents."
msgstr ""
"Флаг, используемый для записи второй итерации флага версии сетки. Основное "
"различие между этим и [constant ARRAY_FLAG_FORMAT_VERSION_1] заключается в "
"том, что эта версия поддерживает [constant ARRAY_FLAG_COMPRESS_ATTRIBUTES], и "
"в этой версии позиции вершин де-чередуются из нормалей и касательных."

msgid ""
"Flag used to record the current version that the engine expects. Currently "
"this is the same as [constant ARRAY_FLAG_FORMAT_VERSION_2]."
msgstr ""
"Флаг, используемый для записи текущей версии, которую ожидает движок. В "
"настоящее время это то же самое, что и [constant ARRAY_FLAG_FORMAT_VERSION_2]."

msgid ""
"Flag used to isolate the bits used for mesh version after using [constant "
"ARRAY_FLAG_FORMAT_VERSION_SHIFT] to shift them into place."
msgstr ""
"Флаг, используемый для изоляции битов, используемых для версии сетки, после "
"использования [constant ARRAY_FLAG_FORMAT_VERSION_SHIFT] для их смещения на "
"место."

msgid "Primitive to draw consists of points."
msgstr "Примитив для рисования состоящий из точек."

msgid "Primitive to draw consists of lines."
msgstr "Примитив для рисования состоящий из линий."

msgid "Primitive to draw consists of a line strip from start to end."
msgstr "Примитив для рисования состоит из полосы линий от начала до конца."

msgid "Primitive to draw consists of triangles."
msgstr "Примитивный рисунок состоящий из треугольников."

msgid ""
"Primitive to draw consists of a triangle strip (the last 3 vertices are "
"always combined to make a triangle)."
msgstr ""
"Примитив для рисования состоящий из полосы треугольников (последние 3 вершины "
"всегда объединяются, образуя треугольник)."

msgid "Represents the size of the [enum PrimitiveType] enum."
msgstr "Представляет размер перечисления [enum PrimitiveType]."

msgid "Use [Transform2D] to store MultiMesh transform."
msgstr "Используйте [Transform2D] для хранения преобразования MultiMesh."

msgid "Use [Transform3D] to store MultiMesh transform."
msgstr "Используйте [Transform3D] для сохранения преобразования MultiMesh."

msgid "MultiMesh physics interpolation favors speed over quality."
msgstr ""
"Интерполяция физики MultiMesh отдает предпочтение скорости, а не качеству."

msgid "MultiMesh physics interpolation favors quality over speed."
msgstr ""
"Интерполяция физики MultiMesh отдает предпочтение качеству, а не скорости."

msgid ""
"Nearest-neighbor filter for light projectors (use for pixel art light "
"projectors). No mipmaps are used for rendering, which means light projectors "
"at a distance will look sharp but grainy. This has roughly the same "
"performance cost as using mipmaps."
msgstr ""
"Фильтр ближайшего соседа для проекторов света (используется для проекторов "
"света пиксельной графики). Для рендеринга не используются mip-карты, что "
"означает, что проекторы света на расстоянии будут выглядеть резкими, но "
"зернистыми. Это примерно равно затратам на производительность, как и "
"использование mip-карт."

msgid ""
"Linear filter for light projectors (use for non-pixel art light projectors). "
"No mipmaps are used for rendering, which means light projectors at a distance "
"will look smooth but blurry. This has roughly the same performance cost as "
"using mipmaps."
msgstr ""
"Линейный фильтр для проекторов света (используется для проекторов света без "
"пиксельной графики). Для рендеринга не используются mip-карты, что означает, "
"что проекторы света на расстоянии будут выглядеть гладкими, но размытыми. Это "
"примерно равно затратам на производительность, как и использование mip-карт."

msgid ""
"Nearest-neighbor filter for light projectors (use for pixel art light "
"projectors). Isotropic mipmaps are used for rendering, which means light "
"projectors at a distance will look smooth but blurry. This has roughly the "
"same performance cost as not using mipmaps."
msgstr ""
"Фильтр ближайшего соседа для проекторов света (используется для проекторов "
"света пиксельной графики). Для рендеринга используются изотропные mip-карты, "
"что означает, что проекторы света на расстоянии будут выглядеть гладкими, но "
"размытыми. Это примерно равно затратам на производительность, как и без "
"использования mip-карт."

msgid ""
"Linear filter for light projectors (use for non-pixel art light projectors). "
"Isotropic mipmaps are used for rendering, which means light projectors at a "
"distance will look smooth but blurry. This has roughly the same performance "
"cost as not using mipmaps."
msgstr ""
"Линейный фильтр для проекторов света (используется для проекторов света, не "
"использующих пиксельную графику). Для рендеринга используются изотропные mip-"
"карты, что означает, что проекторы света на расстоянии будут выглядеть "
"гладкими, но размытыми. Это примерно равно затратам на производительность, "
"как и без использования mip-карт."

msgid ""
"Nearest-neighbor filter for light projectors (use for pixel art light "
"projectors). Anisotropic mipmaps are used for rendering, which means light "
"projectors at a distance will look smooth and sharp when viewed from oblique "
"angles. This looks better compared to isotropic mipmaps, but is slower. The "
"level of anisotropic filtering is defined by [member "
"ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level]."
msgstr ""
"Фильтр ближайшего соседа для проекторов света (используется для проекторов "
"света в пиксельной графике). Анизотропные MIP-карты используются для "
"рендеринга, что означает, что проекторы света на расстоянии будут выглядеть "
"гладкими и резкими при просмотре под косыми углами. Это выглядит лучше по "
"сравнению с изотропными MIP-картами, но медленнее. Уровень анизотропной "
"фильтрации определяется [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level]."

msgid ""
"Linear filter for light projectors (use for non-pixel art light projectors). "
"Anisotropic mipmaps are used for rendering, which means light projectors at a "
"distance will look smooth and sharp when viewed from oblique angles. This "
"looks better compared to isotropic mipmaps, but is slower. The level of "
"anisotropic filtering is defined by [member ProjectSettings.rendering/"
"textures/default_filters/anisotropic_filtering_level]."
msgstr ""
"Линейный фильтр для проекторов света (используется для проекторов света, не "
"использующих пиксельную графику). Анизотропные mip-текстуры используются для "
"рендеринга, что означает, что проекторы света на расстоянии будут выглядеть "
"гладкими и резкими при просмотре под косыми углами. Это выглядит лучше по "
"сравнению с изотропными mip-текстурами, но медленнее. Уровень анизотропной "
"фильтрации определяется [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level]."

msgid "Directional (sun/moon) light (see [DirectionalLight3D])."
msgstr "Направленный (солнечный/лунный) свет (см. [DirectionalLight3D])."

msgid "Omni light (see [OmniLight3D])."
msgstr "Всенаправленный свет (см. [OmniLight3D])."

msgid "Spot light (see [SpotLight3D])."
msgstr "Точечный свет (см. [SpotLight3D])."

msgid "The light's energy multiplier."
msgstr "Умножитель энергии света."

msgid ""
"The light's indirect energy multiplier (final indirect energy is [constant "
"LIGHT_PARAM_ENERGY] * [constant LIGHT_PARAM_INDIRECT_ENERGY])."
msgstr ""
"Множитель косвенной энергии света (окончательная косвенная энергия равна "
"[constant LIGHT_PARAM_ENERGY] * [constant LIGHT_PARAM_INDIRECT_ENERGY])."

msgid ""
"The light's volumetric fog energy multiplier (final volumetric fog energy is "
"[constant LIGHT_PARAM_ENERGY] * [constant LIGHT_PARAM_VOLUMETRIC_FOG_ENERGY])."
msgstr ""
"Множитель энергии объемного тумана источника света (окончательная энергия "
"объемного тумана равна [constant LIGHT_PARAM_ENERGY] * [constant "
"LIGHT_PARAM_VOLUMETRIC_FOG_ENERGY])."

msgid "The light's influence on specularity."
msgstr "Влияние света на зеркальность."

msgid "The light's range."
msgstr "Радиус охвата света."

msgid ""
"The size of the light when using spot light or omni light. The angular size "
"of the light when using directional light."
msgstr ""
"Размер света при использовании точечного света или всенаправленного света. "
"Угловой размер света при использовании направленного света."

msgid "The light's attenuation."
msgstr "Затухание света."

msgid "The spotlight's angle."
msgstr "Угол освещения."

msgid "The spotlight's attenuation."
msgstr "Ослабление точечного света."

msgid "Proportion of shadow atlas occupied by the first split."
msgstr "Доля теневого атласа, занимаемая первым разделением."

msgid "Proportion of shadow atlas occupied by the second split."
msgstr "Доля теневого атласа, занимаемая вторым разделением."

msgid ""
"Proportion of shadow atlas occupied by the third split. The fourth split "
"occupies the rest."
msgstr ""
"Часть теневого атласа, занимаемая третьим разрезом. Четвертый разрезом "
"занимает все остальное."

msgid ""
"Proportion of shadow max distance where the shadow will start to fade out."
msgstr "Доля максимального расстояния тени, на котором тень начнет исчезать."

msgid ""
"Normal bias used to offset shadow lookup by object normal. Can be used to fix "
"self-shadowing artifacts."
msgstr ""
"Нормальное смещение, используемое для смещения поиска тени по нормали "
"объекта. Может использоваться для исправления артефактов самозатенения."

msgid "Bias for the shadow lookup to fix self-shadowing artifacts."
msgstr ""
"Смещение (Bias) для поиска теней с целью устранения артефактов самозатенения."

msgid ""
"The light's shadow opacity. Values lower than [code]1.0[/code] make the light "
"appear through shadows. This can be used to fake global illumination at a low "
"performance cost."
msgstr ""
"Непрозрачность тени света. Значения ниже [code]1.0[/code] заставляют свет "
"проявляться сквозь тени. Это можно использовать для имитации глобального "
"освещения с низкими затратами производительности."

msgid ""
"Blurs the edges of the shadow. Can be used to hide pixel artifacts in low "
"resolution shadow maps. A high value can make shadows appear grainy and can "
"cause other unwanted artifacts. Try to keep as near default as possible."
msgstr ""
"Размывает края тени. Может использоваться для скрытия пиксельных артефактов в "
"картах теней с низким разрешением. Высокое значение может сделать тени "
"зернистыми и вызвать другие нежелательные артефакты. Постарайтесь сохранить "
"значение как можно ближе к значению по умолчанию."

msgid ""
"Constant representing the intensity of the light, measured in Lumens when "
"dealing with a [SpotLight3D] or [OmniLight3D], or measured in Lux with a "
"[DirectionalLight3D]. Only used when [member ProjectSettings.rendering/"
"lights_and_shadows/use_physical_light_units] is [code]true[/code]."
msgstr ""
"Константа, представляющая интенсивность света, измеряемая в люменах при "
"работе с [SpotLight3D] или [OmniLight3D], или измеряемая в люксах с "
"[DirectionalLight3D]. Используется только тогда, когда [member "
"ProjectSettings.rendering/lights_and_shadows/use_physical_light_units] имеет "
"значение [code]true[/code]."

msgid "Represents the size of the [enum LightParam] enum."
msgstr "Представляет размер перечисления [enum LightParam]."

msgid ""
"Light is ignored when baking. This is the fastest mode, but the light will be "
"taken into account when baking global illumination. This mode should "
"generally be used for dynamic lights that change quickly, as the effect of "
"global illumination is less noticeable on those lights."
msgstr ""
"При запекании свет игнорируется. Это самый быстрый режим, но свет будет "
"учитываться при запекании глобального освещения. Этот режим обычно следует "
"использовать для динамических источников света, которые быстро меняются, так "
"как эффект глобального освещения на таких источниках света менее заметен."

msgid ""
"Light is taken into account in static baking ([VoxelGI], [LightmapGI], SDFGI "
"([member Environment.sdfgi_enabled])). The light can be moved around or "
"modified, but its global illumination will not update in real-time. This is "
"suitable for subtle changes (such as flickering torches), but generally not "
"large changes such as toggling a light on and off."
msgstr ""
"Свет учитывается при статическом запекании ([VoxelGI], [LightmapGI], SDFGI "
"([member Environment.sdfgi_enabled])). Свет можно перемещать или изменять, но "
"его глобальное освещение не будет обновляться в реальном времени. Это "
"подходит для незначительных изменений (например, мерцающих факелов), но, как "
"правило, не для больших изменений, таких как включение и выключение света."

msgid ""
"Light is taken into account in dynamic baking ([VoxelGI] and SDFGI ([member "
"Environment.sdfgi_enabled]) only). The light can be moved around or modified "
"with global illumination updating in real-time. The light's global "
"illumination appearance will be slightly different compared to [constant "
"LIGHT_BAKE_STATIC]. This has a greater performance cost compared to [constant "
"LIGHT_BAKE_STATIC]. When using SDFGI, the update speed of dynamic lights is "
"affected by [member ProjectSettings.rendering/global_illumination/sdfgi/"
"frames_to_update_lights]."
msgstr ""
"Свет учитывается при динамическом запекании (только [VoxelGI] и SDFGI "
"([member Environment.sdfgi_enabled])). Свет можно перемещать или изменять с "
"обновлением глобального освещения в реальном времени. Внешний вид глобального "
"освещения света будет немного отличаться по сравнению с [constant "
"LIGHT_BAKE_STATIC]. Это приводит к большим затратам производительности по "
"сравнению с [constant LIGHT_BAKE_STATIC]. При использовании SDFGI скорость "
"обновления динамического освещения зависит от [member "
"ProjectSettings.rendering/global_illumination/sdfgi/frames_to_update_lights]."

msgid "Use a dual paraboloid shadow map for omni lights."
msgstr ""
"Используйте двойную параболоидную карту теней для всенаправленных источников "
"света."

msgid ""
"Use a cubemap shadow map for omni lights. Slower but better quality than dual "
"paraboloid."
msgstr ""
"Используйте кубическую карту теней для всенаправленного света. Медленнее, но "
"лучше по качеству, чем двойной параболоид."

msgid "Use orthogonal shadow projection for directional light."
msgstr "Использует ортогональную теневую проекцию для направленного света."

msgid "Use 2 splits for shadow projection when using directional light."
msgstr ""
"При использовании направленного света использует 2 прожектора для "
"проецирования тени."

msgid "Use 4 splits for shadow projection when using directional light."
msgstr ""
"При использовании направленного света использует 4 прожектора для проекции "
"тени."

msgid "Use DirectionalLight3D in both sky rendering and scene lighting."
msgstr ""
"Использует DirectionalLight3D как для рендеринга неба, так и для освещения "
"сцены."

msgid "Only use DirectionalLight3D in scene lighting."
msgstr "Используйте DirectionalLight3D только для освещения сцены."

msgid "Only use DirectionalLight3D in sky rendering."
msgstr "Использует DirectionalLight3D только при рендеринге неба."

msgid ""
"Lowest shadow filtering quality (fastest). Soft shadows are not available "
"with this quality setting, which means the [member Light3D.shadow_blur] "
"property is ignored if [member Light3D.light_size] and [member "
"Light3D.light_angular_distance] is [code]0.0[/code].\n"
"[b]Note:[/b] The variable shadow blur performed by [member "
"Light3D.light_size] and [member Light3D.light_angular_distance] is still "
"effective when using hard shadow filtering. In this case, [member "
"Light3D.shadow_blur] [i]is[/i] taken into account. However, the results will "
"not be blurred, instead the blur amount is treated as a maximum radius for "
"the penumbra."
msgstr ""
"Самое низкое качество фильтрации теней (самое быстрое). Мягкие тени "
"недоступны с этой настройкой качества, что означает, что свойство [member "
"Light3D.shadow_blur] игнорируется, если [member Light3D.light_size] и [member "
"Light3D.light_angular_distance] равны [code]0.0[/code].\n"
"[b]Примечание:[/b] Переменное размытие тени, выполняемое [member "
"Light3D.light_size] и [member Light3D.light_angular_distance], по-прежнему "
"эффективно при использовании жесткой фильтрации теней. В этом случае [member "
"Light3D.shadow_blur] [i][/i] учитывается. Однако результаты не будут размыты, "
"вместо этого величина размытия рассматривается как максимальный радиус "
"полутени."

msgid ""
"Very low shadow filtering quality (faster). When using this quality setting, "
"[member Light3D.shadow_blur] is automatically multiplied by 0.75× to avoid "
"introducing too much noise. This division only applies to lights whose "
"[member Light3D.light_size] or [member Light3D.light_angular_distance] is "
"[code]0.0[/code])."
msgstr ""
"Очень низкое качество фильтрации теней (быстрее). При использовании этой "
"настройки качества [member Light3D.shadow_blur] автоматически умножается на "
"0,75×, чтобы избежать появления слишком большого шума. Это деление "
"применяется только к источникам света, у которых [member Light3D.light_size] "
"или [member Light3D.light_angular_distance] равен [code]0.0[/code])."

msgid "Low shadow filtering quality (fast)."
msgstr "Низкое качество фильтрации теней (быстро)."

msgid "Medium low shadow filtering quality (average)."
msgstr "Среднее качество фильтрации теней."

msgid ""
"High low shadow filtering quality (slow). When using this quality setting, "
"[member Light3D.shadow_blur] is automatically multiplied by 1.5× to better "
"make use of the high sample count. This increased blur also improves the "
"stability of dynamic object shadows. This multiplier only applies to lights "
"whose [member Light3D.light_size] or [member Light3D.light_angular_distance] "
"is [code]0.0[/code])."
msgstr ""
"Высокое низкое качество фильтрации теней (медленно). При использовании этой "
"настройки качества [member Light3D.shadow_blur] автоматически умножается на "
"1,5×, чтобы лучше использовать большое количество образцов. Это повышенное "
"размытие также улучшает стабильность динамических теней объектов. Этот "
"множитель применяется только к источникам света, у которых [member "
"Light3D.light_size] или [member Light3D.light_angular_distance] равен "
"[code]0.0[/code])."

msgid ""
"Highest low shadow filtering quality (slowest). When using this quality "
"setting, [member Light3D.shadow_blur] is automatically multiplied by 2× to "
"better make use of the high sample count. This increased blur also improves "
"the stability of dynamic object shadows. This multiplier only applies to "
"lights whose [member Light3D.light_size] or [member "
"Light3D.light_angular_distance] is [code]0.0[/code])."
msgstr ""
"Самое высокое низкое качество фильтрации теней (самое медленное). При "
"использовании этой настройки качества [member Light3D.shadow_blur] "
"автоматически умножается на 2×, чтобы лучше использовать большое количество "
"образцов. Это повышенное размытие также улучшает стабильность динамических "
"теней объектов. Этот множитель применяется только к источникам света, у "
"которых [member Light3D.light_size] или [member "
"Light3D.light_angular_distance] равен [code]0.0[/code])."

msgid "Represents the size of the [enum ShadowQuality] enum."
msgstr "Представляет размер перечисления [enum ShadowQuality]."

msgid "Reflection probe will update reflections once and then stop."
msgstr "Зонд отражения обновит отражения один раз, а затем остановится."

msgid ""
"Reflection probe will update each frame. This mode is necessary to capture "
"moving objects."
msgstr ""
"Зонд отражения будет обновлять каждый кадр. Этот режим необходим для захвата "
"движущихся объектов."

msgid ""
"Do not apply any ambient lighting inside the reflection probe's box defined "
"by its size."
msgstr ""
"Не допускайте попадания внешнего освещения внутрь корпуса отражательного "
"зонда, размер которого определяется его размерами."

msgid ""
"Apply automatically-sourced environment lighting inside the reflection "
"probe's box defined by its size."
msgstr ""
"Примените автоматически источник окружающего освещения внутри корпуса "
"отражательного зонда, определяемого его размером."

msgid ""
"Apply custom ambient lighting inside the reflection probe's box defined by "
"its size. See [method reflection_probe_set_ambient_color] and [method "
"reflection_probe_set_ambient_energy]."
msgstr ""
"Применить пользовательское окружающее освещение внутри поля зонда отражения, "
"определяемого его размером. См. [method reflect_probe_set_ambient_color] и "
"[method reflect_probe_set_ambient_energy]."

msgid "Albedo texture slot in a decal ([member Decal.texture_albedo])."
msgstr "Слот текстуры альбедо в декали ([member Decal.texture_albedo])."

msgid "Normal map texture slot in a decal ([member Decal.texture_normal])."
msgstr "Слот текстуры карты нормалей в декале ([member Decal.texture_normal])."

msgid ""
"Occlusion/Roughness/Metallic texture slot in a decal ([member "
"Decal.texture_orm])."
msgstr ""
"Слот текстуры окклюзии/шероховатости/металла в декали ([member "
"Decal.texture_orm])."

msgid "Emission texture slot in a decal ([member Decal.texture_emission])."
msgstr "Слот текстуры излучения в декале ([member Decal.texture_emission])."

msgid "Represents the size of the [enum DecalTexture] enum."
msgstr "Представляет размер перечисления [enum DecalTexture]."

msgid ""
"Nearest-neighbor filter for decals (use for pixel art decals). No mipmaps are "
"used for rendering, which means decals at a distance will look sharp but "
"grainy. This has roughly the same performance cost as using mipmaps."
msgstr ""
"Фильтр ближайшего соседа для декалей (используется для декалей пиксельной "
"графики). Для рендеринга не используются mip-карты, что означает, что декали "
"на расстоянии будут выглядеть резкими, но зернистыми. Это примерно равно "
"затратам на производительность, как и использование mip-карт."

msgid ""
"Linear filter for decals (use for non-pixel art decals). No mipmaps are used "
"for rendering, which means decals at a distance will look smooth but blurry. "
"This has roughly the same performance cost as using mipmaps."
msgstr ""
"Линейный фильтр для декалей (используется для декалей не пиксельной графики). "
"Для рендеринга не используются mipmaps, что означает, что декали на "
"расстоянии будут выглядеть гладкими, но размытыми. Это примерно равно "
"затратам на производительность, как и использование mipmaps."

msgid ""
"Nearest-neighbor filter for decals (use for pixel art decals). Isotropic "
"mipmaps are used for rendering, which means decals at a distance will look "
"smooth but blurry. This has roughly the same performance cost as not using "
"mipmaps."
msgstr ""
"Фильтр ближайшего соседа для декалей (используется для декалей пиксельной "
"графики). Для рендеринга используются изотропные MIP-карты, что означает, что "
"декали на расстоянии будут выглядеть гладкими, но размытыми. Это примерно "
"равно затратам на производительность, как и без использования MIP-карты."

msgid ""
"Linear filter for decals (use for non-pixel art decals). Isotropic mipmaps "
"are used for rendering, which means decals at a distance will look smooth but "
"blurry. This has roughly the same performance cost as not using mipmaps."
msgstr ""
"Линейный фильтр для декалей (используется для декалей не пиксельного "
"искусства). Для рендеринга используются изотропные mip-карты, что означает, "
"что декали на расстоянии будут выглядеть гладкими, но размытыми. Это примерно "
"равно затратам на производительность, как и без использования mip-карт."

msgid ""
"Nearest-neighbor filter for decals (use for pixel art decals). Anisotropic "
"mipmaps are used for rendering, which means decals at a distance will look "
"smooth and sharp when viewed from oblique angles. This looks better compared "
"to isotropic mipmaps, but is slower. The level of anisotropic filtering is "
"defined by [member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level]."
msgstr ""
"Фильтр ближайшего соседа для декалей (используется для декалей пиксельной "
"графики). Анизотропные MIP-карты используются для рендеринга, что означает, "
"что декали на расстоянии будут выглядеть гладкими и резкими при просмотре под "
"косыми углами. Это выглядит лучше по сравнению с изотропными MIP-картами, но "
"медленнее. Уровень анизотропной фильтрации определяется [member "
"ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level]."

msgid ""
"Linear filter for decals (use for non-pixel art decals). Anisotropic mipmaps "
"are used for rendering, which means decals at a distance will look smooth and "
"sharp when viewed from oblique angles. This looks better compared to "
"isotropic mipmaps, but is slower. The level of anisotropic filtering is "
"defined by [member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level]."
msgstr ""
"Линейный фильтр для декалей (используется для декалей не пиксельной графики). "
"Анизотропные mip-карты используются для рендеринга, что означает, что декали "
"на расстоянии будут выглядеть гладкими и резкими при просмотре под косыми "
"углами. Это выглядит лучше по сравнению с изотропными mip-картами, но "
"медленнее. Уровень анизотропной фильтрации определяется [member "
"ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level]."

msgid "Low [VoxelGI] rendering quality using 4 cones."
msgstr "Низкое качество рендеринга [VoxelGI] при использовании 4 конусов."

msgid "High [VoxelGI] rendering quality using 6 cones."
msgstr "Высокое качество рендеринга [VoxelGI] с использованием 6 конусов."

msgid "2D particles."
msgstr "2D частицы."

msgid "3D particles."
msgstr "3D частицы."

msgid "Draw particles in the order that they appear in the particles array."
msgstr ""
"Рисуйте частицы в том порядке, в котором они появляются в массиве частиц."

msgid ""
"Sort particles based on their lifetime. In other words, the particle with the "
"highest lifetime is drawn at the front."
msgstr ""
"Сортировать частицы по времени их жизни. Другими словами, частица с "
"наибольшим временем жизни вытягивается вперед."

msgid ""
"Sort particles based on the inverse of their lifetime. In other words, the "
"particle with the lowest lifetime is drawn at the front."
msgstr ""
"Сортировать частицы по обратному времени их жизни. Другими словами, частица с "
"наименьшим временем жизни вытягивается вперед."

msgid "Sort particles based on their distance to the camera."
msgstr "Сортировать частицы по их расстоянию до камеры."

msgid ""
"Represents the size of the [enum ParticlesCollisionHeightfieldResolution] "
"enum."
msgstr ""
"Представляет размер перечисления [enum "
"ParticlesCollisionHeightfieldResolution]."

msgid "[FogVolume] will be shaped like an ellipsoid (stretched sphere)."
msgstr "[FogVolume] будет иметь форму эллипсоида (вытянутой сферы)."

msgid ""
"[FogVolume] will be shaped like a cone pointing upwards (in local "
"coordinates). The cone's angle is set automatically to fill the size. The "
"cone will be adjusted to fit within the size. Rotate the [FogVolume] node to "
"reorient the cone. Non-uniform scaling via size is not supported (scale the "
"[FogVolume] node instead)."
msgstr ""
"[FogVolume] будет иметь форму конуса, направленного вверх (в локальных "
"координатах). Угол конуса устанавливается автоматически для заполнения "
"размера. Конус будет скорректирован для соответствия размеру. Поверните узел "
"[FogVolume], чтобы переориентировать конус. Неравномерное масштабирование по "
"размеру не поддерживается (вместо этого масштабируйте узел [FogVolume])."

msgid ""
"[FogVolume] will be shaped like an upright cylinder (in local coordinates). "
"Rotate the [FogVolume] node to reorient the cylinder. The cylinder will be "
"adjusted to fit within the size. Non-uniform scaling via size is not "
"supported (scale the [FogVolume] node instead)."
msgstr ""
"[FogVolume] будет иметь форму вертикального цилиндра (в локальных "
"координатах). Поверните узел [FogVolume], чтобы переориентировать цилиндр. "
"Цилиндр будет скорректирован, чтобы соответствовать размеру. Неравномерное "
"масштабирование по размеру не поддерживается (вместо этого масштабируйте узел "
"[FogVolume])."

msgid "[FogVolume] will be shaped like a box."
msgstr "[FogVolume] будет иметь форму коробки."

msgid ""
"[FogVolume] will have no shape, will cover the whole world and will not be "
"culled."
msgstr ""
"[FogVolume] не будет иметь формы, покроет весь мир и не будет уничтожен."

msgid "Represents the size of the [enum FogVolumeShape] enum."
msgstr "Представляет размер перечисления [enum FogVolumeShape]."

msgid ""
"Use bilinear scaling for the viewport's 3D buffer. The amount of scaling can "
"be set using [member Viewport.scaling_3d_scale]. Values less than [code]1.0[/"
"code] will result in undersampling while values greater than [code]1.0[/code] "
"will result in supersampling. A value of [code]1.0[/code] disables scaling."
msgstr ""
"Используйте билинейное масштабирование для 3D-буфера области просмотра. "
"Величину масштабирования можно задать с помощью [member "
"Viewport.scaling_3d_scale]. Значения меньше [code]1.0[/code] приведут к "
"недостаточной выборке, а значения больше [code]1.0[/code] приведут к "
"избыточной выборке. Значение [code]1.0[/code] отключает масштабирование."

msgid ""
"Use AMD FidelityFX Super Resolution 1.0 upscaling for the viewport's 3D "
"buffer. The amount of scaling can be set using [member "
"Viewport.scaling_3d_scale]. Values less than [code]1.0[/code] will result in "
"the viewport being upscaled using FSR. Values greater than [code]1.0[/code] "
"are not supported and bilinear downsampling will be used instead. A value of "
"[code]1.0[/code] disables scaling."
msgstr ""
"Используйте upscaling - AMD FidelityFX Super Resolution 1.0 для 3D-буфера "
"области просмотра. Величину масштабирования можно задать с помощью [member "
"Viewport.scaling_3d_scale]. Значения меньше [code]1.0[/code] приведут к "
"масштабированию области просмотра с использованием FSR. Значения больше "
"[code]1.0[/code] не поддерживаются, и вместо этого будет использоваться "
"билинейная понижающая дискретизация. Значение [code]1.0[/code] отключает "
"масштабирование."

msgid ""
"Use AMD FidelityFX Super Resolution 2.2 upscaling for the viewport's 3D "
"buffer. The amount of scaling can be set using [member "
"Viewport.scaling_3d_scale]. Values less than [code]1.0[/code] will result in "
"the viewport being upscaled using FSR2. Values greater than [code]1.0[/code] "
"are not supported and bilinear downsampling will be used instead. A value of "
"[code]1.0[/code] will use FSR2 at native resolution as a TAA solution."
msgstr ""
"Используйте масштабирование AMD FidelityFX Super Resolution 2.2 для 3D-буфера "
"области просмотра. Величину масштабирования можно задать с помощью [member "
"Viewport.scaling_3d_scale]. Значения меньше [code]1.0[/code] приведут к "
"масштабированию области просмотра с использованием FSR2. Значения больше "
"[code]1.0[/code] не поддерживаются, и вместо этого будет использоваться "
"билинейная понижающая дискретизация. Значение [code]1.0[/code] будет "
"использовать FSR2 при собственном разрешении в качестве решения TAA."

msgid ""
"Use MetalFX spatial upscaling for the viewport's 3D buffer. The amount of "
"scaling can be set using [member Viewport.scaling_3d_scale]. Values less than "
"[code]1.0[/code] will result in the viewport being upscaled using MetalFX. "
"Values greater than [code]1.0[/code] are not supported and bilinear "
"downsampling will be used instead. A value of [code]1.0[/code] disables "
"scaling.\n"
"[b]Note:[/b] Only supported when the Metal rendering driver is in use, which "
"limits this scaling mode to macOS and iOS."
msgstr ""
"Используйте пространственное масштабирование MetalFX для 3D-буфера области "
"просмотра. Величину масштабирования можно задать с помощью [member "
"Viewport.scaling_3d_scale]. Значения меньше [code]1.0[/code] приведут к "
"масштабированию области просмотра с помощью MetalFX. Значения больше "
"[code]1.0[/code] не поддерживаются, и вместо них будет использоваться "
"билинейная понижающая дискретизация. Значение [code]1.0[/code] отключает "
"масштабирование.\n"
"[b]Примечание:[/b] Поддерживается только при использовании драйвера "
"рендеринга Metal, что ограничивает этот режим масштабирования macOS и iOS."

msgid ""
"Use MetalFX temporal upscaling for the viewport's 3D buffer. The amount of "
"scaling can be set using [member Viewport.scaling_3d_scale]. Values less than "
"[code]1.0[/code] will result in the viewport being upscaled using MetalFX. "
"Values greater than [code]1.0[/code] are not supported and bilinear "
"downsampling will be used instead. A value of [code]1.0[/code] will use "
"MetalFX at native resolution as a TAA solution.\n"
"[b]Note:[/b] Only supported when the Metal rendering driver is in use, which "
"limits this scaling mode to macOS and iOS."
msgstr ""
"Используйте временное масштабирование MetalFX для 3D-буфера области "
"просмотра. Величину масштабирования можно задать с помощью [member "
"Viewport.scaling_3d_scale]. Значения меньше [code]1.0[/code] приведут к "
"масштабированию области просмотра с помощью MetalFX. Значения больше "
"[code]1.0[/code] не поддерживаются, и вместо них будет использоваться "
"билинейная понижающая дискретизация. Значение [code]1.0[/code] будет "
"использовать MetalFX в собственном разрешении в качестве решения TAA.\n"
"[b]Примечание:[/b] Поддерживается только при использовании драйвера "
"рендеринга Metal, что ограничивает этот режим масштабирования macOS и iOS."

msgid "Represents the size of the [enum ViewportScaling3DMode] enum."
msgstr "Представляет размер перечисления [enum ViewportScaling3DMode]."

msgid "Do not update the viewport's render target."
msgstr "Не обновляет цель рендеринга области просмотра."

msgid ""
"Update the viewport's render target once, then switch to [constant "
"VIEWPORT_UPDATE_DISABLED]."
msgstr ""
"Обновите цель рендеринга области просмотра один раз, затем переключитесь на "
"[constant VIEWPORT_UPDATE_DISABLED]."

msgid ""
"Update the viewport's render target only when it is visible. This is the "
"default value."
msgstr ""
"Обновлять цель рендеринга окна просмотра только тогда, когда она видна. Это "
"значение по умолчанию."

msgid "Update the viewport's render target only when its parent is visible."
msgstr ""
"Обновляйте цель рендеринга области просмотра только тогда, когда ее "
"родительский элемент виден."

msgid "Always update the viewport's render target."
msgstr "Всегда обновляет цель рендеринга области просмотра."

msgid "Always clear the viewport's render target before drawing."
msgstr "Перед отображением всегда очищает цель рендеринга области просмотра."

msgid "Never clear the viewport's render target."
msgstr "Никогда не очищайте цель рендеринга области просмотра."

msgid ""
"Clear the viewport's render target on the next frame, then switch to "
"[constant VIEWPORT_CLEAR_NEVER]."
msgstr ""
"Очистите цель рендеринга области просмотра на следующем кадре, затем "
"переключитесь на [constant VIEWPORT_CLEAR_NEVER]."

msgid "Disable rendering of 3D environment over 2D canvas."
msgstr "Отключить рендеринг 3D-среды на 2D-холсте."

msgid "Enable rendering of 3D environment over 2D canvas."
msgstr "Включить рендеринг 3D-среды на 2D-холсте."

msgid ""
"Inherit enable/disable value from parent. If the topmost parent is also set "
"to [constant VIEWPORT_ENVIRONMENT_INHERIT], then this has the same behavior "
"as [constant VIEWPORT_ENVIRONMENT_ENABLED]."
msgstr ""
"Наследовать значение включения/выключения от родителя. Если самый верхний "
"родитель также установлен на [constant VIEWPORT_ENVIRONMENT_INHERIT], то это "
"имеет то же поведение, что и [constant VIEWPORT_ENVIRONMENT_ENABLED]."

msgid "Represents the size of the [enum ViewportEnvironmentMode] enum."
msgstr "Представляет размер перечисления [enum ViewportEnvironmentMode]."

msgid ""
"Do not oversize the 2D signed distance field. Occluders may disappear when "
"touching the viewport's edges, and [GPUParticles3D] collision may stop "
"working earlier than intended. This has the lowest GPU requirements."
msgstr ""
"Не превышайте размер поля расстояния со знаком 2D. Окклюдеры могут исчезнуть "
"при касании краев области просмотра, а столкновение [GPUParticles3D] может "
"перестать работать раньше, чем предполагалось. Это имеет самые низкие "
"требования к графическому процессору."

msgid ""
"2D signed distance field covers 20% of the viewport's size outside the "
"viewport on each side (top, right, bottom, left)."
msgstr ""
"Двумерное знаковое поле расстояний охватывает 20% размера области просмотра "
"за пределами области просмотра с каждой стороны (сверху, справа, снизу, "
"слева)."

msgid ""
"2D signed distance field covers 50% of the viewport's size outside the "
"viewport on each side (top, right, bottom, left)."
msgstr ""
"Двумерное поле расстояний со знаком покрывает 50% размера области просмотра "
"за пределами области просмотра с каждой стороны (сверху, справа, снизу, "
"слева)."

msgid ""
"2D signed distance field covers 100% of the viewport's size outside the "
"viewport on each side (top, right, bottom, left). This has the highest GPU "
"requirements."
msgstr ""
"2D подписанное поле расстояний покрывает 100% размера области просмотра за "
"пределами области просмотра с каждой стороны (сверху, справа, снизу, слева). "
"Это имеет самые высокие требования к графическому процессору."

msgid "Represents the size of the [enum ViewportSDFOversize] enum."
msgstr "Представляет размер перечисления [enum ViewportSDFOversize]."

msgid ""
"Full resolution 2D signed distance field scale. This has the highest GPU "
"requirements."
msgstr ""
"Полное разрешение 2D знаковой шкалы расстояний поля. Это имеет самые высокие "
"требования к графическому процессору."

msgid ""
"Half resolution 2D signed distance field scale on each axis (25% of the "
"viewport pixel count)."
msgstr ""
"Двумерная шкала поля расстояний со знаком и половинным разрешением по каждой "
"оси (25% от количества пикселей в области просмотра)."

msgid ""
"Quarter resolution 2D signed distance field scale on each axis (6.25% of the "
"viewport pixel count). This has the lowest GPU requirements."
msgstr ""
"Разрешение четверти, шкала поля расстояний со знаком 2D на каждой оси (6,25% "
"от количества пикселей окна просмотра). Это имеет самые низкие требования к "
"графическому процессору."

msgid "Represents the size of the [enum ViewportSDFScale] enum."
msgstr "Представляет размер перечисления [enum ViewportSDFScale]."

msgid ""
"Multisample antialiasing for 3D is disabled. This is the default value, and "
"also the fastest setting."
msgstr ""
"Мульти-образец сглаживание для 3D отключено. Это значение по умолчанию, а "
"также самая быстрая настройка."

msgid ""
"Multisample antialiasing uses 2 samples per pixel for 3D. This has a moderate "
"impact on performance."
msgstr ""
"Мультисэмпл сглаживание использует 2 сэмпла на пиксель для 3D. Это оказывает "
"умеренное влияние на производительность."

msgid ""
"Multisample antialiasing uses 4 samples per pixel for 3D. This has a high "
"impact on performance."
msgstr ""
"Мультисэмпл сглаживание использует 4 сэмпла на пиксель для 3D. Это сильно "
"влияет на производительность."

msgid ""
"Multisample antialiasing uses 8 samples per pixel for 3D. This has a very "
"high impact on performance. Likely unsupported on low-end and older hardware."
msgstr ""
"Мультисэмпл сглаживание использует 8 сэмплов на пиксель для 3D. Это очень "
"сильно влияет на производительность. Вероятно, не поддерживается на "
"низкопроизводительном и старом оборудовании."

msgid "Represents the size of the [enum ViewportMSAA] enum."
msgstr "Представляет размер перечисления [enum ViewportMSAA]."

msgid "Anisotropic filtering is disabled."
msgstr "Анизотропная фильтрация отключена."

msgid "Use 2× anisotropic filtering."
msgstr "Используйте 2-кратную анизотропную фильтрацию."

msgid "Use 4× anisotropic filtering. This is the default value."
msgstr "Использовать 4× анизотропную фильтрацию. Это значение по умолчанию."

msgid "Use 8× anisotropic filtering."
msgstr "Используйте 8-кратную анизотропную фильтрацию."

msgid "Use 16× anisotropic filtering."
msgstr "Используйте 16-кратную анизотропную фильтрацию."

msgid "Represents the size of the [enum ViewportAnisotropicFiltering] enum."
msgstr "Представляет размер перечисления [enum ViewportAnisotropicFiltering]."

msgid "Do not perform any antialiasing in the full screen post-process."
msgstr "Не выполняйте сглаживание при полноэкранной постобработке."

msgid ""
"Use fast approximate antialiasing. FXAA is a popular screen-space "
"antialiasing method, which is fast but will make the image look blurry, "
"especially at lower resolutions. It can still work relatively well at large "
"resolutions such as 1440p and 4K."
msgstr ""
"Использует быстрое приблизительное сглаживание. FXAA — популярный метод "
"сглаживания в экранном пространстве, который быстр, но делает изображение "
"размытым, особенно при низком разрешении. Он может работать относительно "
"хорошо при больших разрешениях, таких как 1440p и 4K."

msgid ""
"Use subpixel morphological antialiasing. SMAA may produce clearer results "
"than FXAA, but at a slightly higher performance cost."
msgstr ""
"Использовать субпиксельное морфологическое сглаживание (SMAA). SMAA может "
"давать более чёткие результаты, чем FXAA, но требует несколько больших затрат "
"производительности."

msgid "Represents the size of the [enum ViewportScreenSpaceAA] enum."
msgstr "Представляет размер перечисления [enum ViewportScreenSpaceAA]."

msgid ""
"Low occlusion culling BVH build quality (as defined by Embree). Results in "
"the lowest CPU usage, but least effective culling."
msgstr ""
"Низкое качество сборки occlusion culling BVH (согласно определению Embree). "
"Приводит к наименьшему использованию ЦП, но наименее эффективному culling."

msgid "Medium occlusion culling BVH build quality (as defined by Embree)."
msgstr ""
"Среднее качество сборки BVH с отбраковкой окклюзии (согласно определению "
"Embree)."

msgid ""
"High occlusion culling BVH build quality (as defined by Embree). Results in "
"the highest CPU usage, but most effective culling."
msgstr ""
"Высокое качество сборки occlusion culling BVH (согласно определению Embree). "
"Приводит к наибольшей загрузке ЦП, но наиболее эффективному culling."

msgid "Number of objects drawn in a single frame."
msgstr "Количество объектов, нарисованных в одном кадре."

msgid "Number of points, lines, or triangles drawn in a single frame."
msgstr "Количество точек, линий или треугольников, нарисованных в одном кадре."

msgid "Number of draw calls during this frame."
msgstr "Количество вызовов отрисовки в этом кадре."

msgid "Represents the size of the [enum ViewportRenderInfo] enum."
msgstr "Представляет размер перечисления [enum ViewportRenderInfo]."

msgid "Visible render pass (excluding shadows)."
msgstr "Видимый проход рендеринга (без теней)."

msgid ""
"Shadow render pass. Objects will be rendered several times depending on the "
"number of amounts of lights with shadows and the number of directional shadow "
"splits."
msgstr ""
"Проход рендеринга теней. Объекты будут рендериться несколько раз в "
"зависимости от количества источников света с тенями и количества направленных "
"теневых разделений."

msgid "Canvas item rendering. This includes all 2D rendering."
msgstr "Рендеринг элемента Canvas (холст). Сюда входит весь 2D-рендеринг."

msgid "Represents the size of the [enum ViewportRenderInfoType] enum."
msgstr "Представляет размер перечисления [enum ViewportRenderInfoType]."

msgid "Debug draw is disabled. Default setting."
msgstr "Отладочная отрисовка отключена. Настройка по умолчанию."

msgid "Objects are displayed without light information."
msgstr "Объекты отображаются без световой информации."

msgid ""
"Objects are displayed with only light information.\n"
"[b]Note:[/b] When using this debug draw mode, custom shaders are ignored "
"since all materials in the scene temporarily use a debug material. This means "
"the result from custom shader functions (such as vertex displacement) won't "
"be visible anymore when using this debug draw mode."
msgstr ""
"Объекты отображаются только с информацией об освещении.\n"
"[b]Примечание:[/b] В этом режиме отладки пользовательские шейдеры "
"игнорируются, поскольку все материалы в сцене временно используют отладочный "
"материал. Это означает, что результаты пользовательских шейдерных функций "
"(например, смещения вершин) не будут отображаться в данном режиме отладки."

msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw "
"(represented by brighter colors) means you are wasting performance on drawing "
"pixels that are being hidden behind others.\n"
"[b]Note:[/b] When using this debug draw mode, custom shaders are ignored "
"since all materials in the scene temporarily use a debug material. This means "
"the result from custom shader functions (such as vertex displacement) won't "
"be visible anymore when using this debug draw mode."
msgstr ""
"Объекты отображаются полупрозрачными с аддитивным смешиванием, так что вы "
"можете видеть, где они рисуются друг над другом. Более высокая перерисовка "
"(представленная более яркими цветами) означает, что вы тратите "
"производительность на рисование пикселей, которые скрыты за другими.\n"
"[b]Примечание:[/b] При использовании этого режима отладки отрисовки, "
"пользовательские шейдеры игнорируются, поскольку все материалы в сцене "
"временно используют отладочный материал. Это означает, что результат функций "
"пользовательских шейдеров (например, смещение вершин) больше не будет виден "
"при использовании этого режима отладки отрисовки."

msgid ""
"Debug draw draws objects in wireframe.\n"
"[b]Note:[/b] [method set_debug_generate_wireframes] must be called before "
"loading any meshes for wireframes to be visible when using the Compatibility "
"renderer."
msgstr ""
"Отладка рисования рисует объекты в каркасе.\n"
"[b]Примечание:[/b] [method set_debug_generate_wireframes] необходимо вызывать "
"перед загрузкой любых сеток, чтобы каркасы были видны при использовании "
"рендерера совместимости."

msgid ""
"Normal buffer is drawn instead of regular scene so you can see the per-pixel "
"normals that will be used by post-processing effects."
msgstr ""
"Вместо обычной сцены отрисовывается обычный буфер, чтобы вы могли видеть "
"попиксельные нормали, которые будут использоваться эффектами постобработки."

msgid ""
"Objects are displayed with only the albedo value from [VoxelGI]s. Requires at "
"least one visible [VoxelGI] node that has been baked to have a visible "
"effect.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Объекты отображаются только со значением альбедо из [VoxelGI]. Требуется как "
"минимум один видимый узел [VoxelGI], который был запечен для получения "
"видимого эффекта.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Objects are displayed with only the lighting value from [VoxelGI]s. Requires "
"at least one visible [VoxelGI] node that has been baked to have a visible "
"effect.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Объекты отображаются только со значением освещения из [VoxelGI]. Требуется "
"как минимум один видимый узел [VoxelGI], который был запечен для получения "
"видимого эффекта.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Objects are displayed with only the emission color from [VoxelGI]s. Requires "
"at least one visible [VoxelGI] node that has been baked to have a visible "
"effect.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Объекты отображаются только с цветом излучения (emission) от [VoxelGI]. "
"Требуется как минимум один видимый узел [VoxelGI], который был запечен для "
"получения видимого эффекта.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the shadow atlas that stores shadows from [OmniLight3D]s and "
"[SpotLight3D]s in the upper left quadrant of the [Viewport]."
msgstr ""
"Рисует атлас теней, в котором хранятся тени от [OmniLight3D]-ов и "
"[SpotLight3D]-ов в верхнем левом квадранте [Viewport]."

msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport].\n"
"The slice of the camera frustum related to the shadow map cascade is "
"superimposed to visualize coverage. The color of each slice matches the "
"colors used for [constant VIEWPORT_DEBUG_DRAW_PSSM_SPLITS]. When shadow "
"cascades are blended the overlap is taken into account when drawing the "
"frustum slices.\n"
"The last cascade shows all frustum slices to illustrate the coverage of all "
"slices."
msgstr ""
"Рисует атлас теней, в котором хранятся тени от [DirectionalLight3D] в верхнем "
"левом квадранте [Viewport].\n"
"Срез усеченной пирамиды камеры, связанный с каскадом карты теней, "
"накладывается для визуализации покрытия. Цвет каждого среза соответствует "
"цветам, используемым для [constant VIEWPORT_DEBUG_DRAW_PSSM_SPLITS]. Когда "
"каскады теней смешиваются, перекрытие учитывается при рисовании срезов "
"пирамиды.\n"
"Последний каскад показывает все срезы пирамиды для иллюстрации покрытия всех "
"срезов."

msgid ""
"Draws the estimated scene luminance. This is a 1×1 texture that is generated "
"when autoexposure is enabled to control the scene's exposure.\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Рисует предполагаемую яркость сцены. Это текстура 1×1, которая генерируется "
"при включении автоэкспозиции для управления экспозицией сцены.\n"
"[b]Примечание:[/b] Поддерживается только при использовании методов рендеринга "
"Forward+ или Mobile."

msgid ""
"Draws the screen space ambient occlusion texture instead of the scene so that "
"you can clearly see how it is affecting objects. In order for this display "
"mode to work, you must have [member Environment.ssao_enabled] set in your "
"[WorldEnvironment].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует текстуру экранного пространства Ambient Occlusion вместо сцены, чтобы "
"вы могли четко видеть, как она влияет на объекты. Чтобы этот режим "
"отображения работал, необходимо установить [member Environment.ssao_enabled] "
"в вашем [WorldEnvironment].\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the screen space indirect lighting texture instead of the scene so that "
"you can clearly see how it is affecting objects. In order for this display "
"mode to work, you must have [member Environment.ssil_enabled] set in your "
"[WorldEnvironment].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует текстуру непрямого освещения экранного пространства вместо сцены, "
"чтобы вы могли четко видеть, как она влияет на объекты. Чтобы этот режим "
"отображения работал, необходимо установить [member Environment.ssil_enabled] "
"в вашем [WorldEnvironment].\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Colors each PSSM split for the [DirectionalLight3D]s in the scene a different "
"color so you can see where the splits are. In order (from closest to furthest "
"from the camera), they are colored red, green, blue, and yellow.\n"
"[b]Note:[/b] When using this debug draw mode, custom shaders are ignored "
"since all materials in the scene temporarily use a debug material. This means "
"the result from custom shader functions (such as vertex displacement) won't "
"be visible anymore when using this debug draw mode.\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Окрашивает каждое разделение PSSM для [DirectionalLight3D] в сцене в другой "
"цвет, чтобы вы могли видеть, где находятся разделения. По порядку (от самого "
"близкого к самому дальнему от камеры) они окрашены в красный, зеленый, синий "
"и желтый цвет.\n"
"[b]Примечание:[/b] При использовании этого режима отладки отрисовки, "
"пользовательские шейдеры игнорируются, поскольку все материалы в сцене "
"временно используют отладочный материал. Это означает, что результат функций "
"пользовательских шейдеров (например, смещение вершин) больше не будет виден "
"при использовании этого режима отладки отрисовки.\n"
"[b]Примечание:[/b] Поддерживается только при использовании методов рендеринга "
"Forward+ или Mobile."

msgid ""
"Draws the decal atlas that stores decal textures from [Decal]s.\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Рисует атлас декалей, в котором хранятся текстуры декалей из [Decal].\n"
"[b]Примечание:[/b] Поддерживается только при использовании методов рендеринга "
"Forward+ или Mobile."

msgid ""
"Draws SDFGI cascade data. This is the data structure that is used to bounce "
"lighting against and create reflections.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует каскадные данные SDFGI. Это структура данных, которая используется для "
"отражения света и создания отражений.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws SDFGI probe data. This is the data structure that is used to give "
"indirect lighting dynamic objects moving within the scene.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует данные зонда SDFGI. Это структура данных, которая используется для "
"придания непрямого освещения динамическим объектам, движущимся в пределах "
"сцены.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the global illumination buffer from [VoxelGI] or SDFGI. Requires "
"[VoxelGI] (at least one visible baked VoxelGI node) or SDFGI ([member "
"Environment.sdfgi_enabled]) to be enabled to have a visible effect.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует глобальный буфер освещения из [VoxelGI] или SDFGI. Требует включения "
"[VoxelGI] (по крайней мере одного видимого запеченного узла VoxelGI) или "
"SDFGI ([member Environment.sdfgi_enabled]) для видимого эффекта.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Disable mesh LOD. All meshes are drawn with full detail, which can be used to "
"compare performance."
msgstr ""
"Отключить LOD сетки. Все сетки прорисованы с полной детализацией, что можно "
"использовать для сравнения производительности."

msgid ""
"Draws the [OmniLight3D] cluster. Clustering determines where lights are "
"positioned in screen-space, which allows the engine to only process these "
"portions of the screen for lighting.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует кластер [OmniLight3D]. Кластеризация определяет, где в экранном "
"пространстве располагаются источники света, что позволяет движку обрабатывать "
"только эти части экрана для освещения.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the [SpotLight3D] cluster. Clustering determines where lights are "
"positioned in screen-space, which allows the engine to only process these "
"portions of the screen for lighting.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует кластер [SpotLight3D]. Кластеризация определяет, где в экранном "
"пространстве располагаются источники света, что позволяет движку обрабатывать "
"только эти части экрана для освещения.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the [Decal] cluster. Clustering determines where decals are positioned "
"in screen-space, which allows the engine to only process these portions of "
"the screen for decals.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует кластер [Decal]. Кластеризация определяет, где декали располагаются в "
"пространстве экрана, что позволяет движку обрабатывать только эти части "
"экрана для декалей.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the [ReflectionProbe] cluster. Clustering determines where reflection "
"probes are positioned in screen-space, which allows the engine to only "
"process these portions of the screen for reflection probes.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует кластер [ReflectionProbe]. Кластеризация определяет, где зонды "
"отражения располагаются в пространстве экрана, что позволяет движку "
"обрабатывать только эти части экрана для зондов отражения.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the occlusion culling buffer. This low-resolution occlusion culling "
"buffer is rasterized on the CPU and is used to check whether instances are "
"occluded by other objects.\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Рисует буфер отсечения окклюзии. Этот буфер отсечения окклюзии низкого "
"разрешения растеризуется на CPU и используется для проверки того, перекрыты "
"ли экземпляры другими объектами.\n"
"[b]Примечание:[/b] Поддерживается только при использовании методов рендеринга "
"Forward+ или Mobile."

msgid ""
"Draws the motion vectors buffer. This is used by temporal antialiasing to "
"correct for motion that occurs during gameplay.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует буфер векторов движения. Используется временным сглаживанием для "
"коррекции движения, которое происходит во время игры.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Internal buffer is drawn instead of regular scene so you can see the per-"
"pixel output that will be used by post-processing effects.\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Вместо обычной сцены рисуется внутренний буфер, поэтому вы можете видеть "
"попиксельный вывод, который будет использоваться эффектами постобработки.\n"
"[b]Примечание:[/b] Поддерживается только при использовании методов рендеринга "
"Forward+ или Mobile."

msgid "Variable rate shading is disabled."
msgstr "Затенение с переменной скоростью отключено."

msgid ""
"Variable rate shading uses a texture. Note, for stereoscopic use a texture "
"atlas with a texture for each view."
msgstr ""
"Вариативная скорость затенения использует текстуру. Обратите внимание, для "
"стереоскопического используйте текстурный атлас с текстурой для каждого вида."

msgid ""
"Variable rate shading texture is supplied by the primary [XRInterface]. Note "
"that this may override the update mode."
msgstr ""
"Текстура затенения с переменной скоростью предоставляется первичным "
"[XRInterface]. Обратите внимание, что это может переопределить режим "
"обновления."

msgid "Represents the size of the [enum ViewportVRSMode] enum."
msgstr "Представляет размер перечисления [enum ViewportVRSMode]."

msgid "The input texture for variable rate shading will not be processed."
msgstr ""
"Входная текстура для затенения с переменной скоростью не будет обработана."

msgid "The input texture for variable rate shading will be processed once."
msgstr ""
"Входная текстура для затенения с переменной скоростью будет обработана один "
"раз."

msgid ""
"The input texture for variable rate shading will be processed each frame."
msgstr ""
"Входная текстура для затенения с переменной скоростью будет обрабатываться в "
"каждом кадре."

msgid "Represents the size of the [enum ViewportVRSUpdateMode] enum."
msgstr "Представляет размер перечисления [enum ViewportVRSUpdateMode]."

msgid ""
"Automatically selects the appropriate process mode based on your sky shader. "
"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will use "
"[constant SKY_MODE_REALTIME]. If your shader uses any of the [code]LIGHT_*[/"
"code] variables or any custom uniforms, this uses [constant "
"SKY_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
"SKY_MODE_QUALITY]."
msgstr ""
"Автоматически выбирает подходящий режим обработки на основе вашего шейдера "
"неба. Если ваш шейдер использует [code]TIME[/code] или [code]POSITION[/code], "
"это будет использовать [constant SKY_MODE_REALTIME]. Если ваш шейдер "
"использует любую из переменных [code]LIGHT_*[/code] или любые "
"пользовательские униформы, это будет использовать [constant "
"SKY_MODE_INCREMENTAL]. В противном случае это по умолчанию [constant "
"SKY_MODE_QUALITY]."

msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"SKY_MODE_REALTIME] but takes much longer to generate. This should not be used "
"if you plan on changing the sky at runtime. If you are finding that the "
"reflection is not blurry enough and is showing sparkles or fireflies, try "
"increasing [member ProjectSettings.rendering/reflections/sky_reflections/"
"ggx_samples]."
msgstr ""
"Использует выборку важности высокого качества для обработки карты сияния. В "
"целом, это приводит к гораздо более высокому качеству, чем [constant "
"SKY_MODE_REALTIME], но генерация занимает гораздо больше времени. Это не "
"следует использовать, если вы планируете изменять небо во время выполнения. "
"Если вы обнаружите, что отражение недостаточно размыто и показывает искры или "
"светлячков, попробуйте увеличить [member ProjectSettings.rendering/"
"reflections/sky_reflections/ggx_samples]."

msgid ""
"Uses the same high quality importance sampling to process the radiance map as "
"[constant SKY_MODE_QUALITY], but updates over several frames. The number of "
"frames is determined by [member ProjectSettings.rendering/reflections/"
"sky_reflections/roughness_layers]. Use this when you need highest quality "
"radiance maps, but have a sky that updates slowly."
msgstr ""
"Использует ту же выборку высокого качества для обработки карты сияния, что и "
"[constant SKY_MODE_QUALITY], но обновляет в течение нескольких кадров. "
"Количество кадров определяется [member ProjectSettings.rendering/reflections/"
"sky_reflections/roughness_layers]. Используйте это, когда вам нужны карты "
"сияния самого высокого качества, но у вас есть небо, которое обновляется "
"медленно."

msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times. If you "
"need better quality, but still need to update the sky every frame, consider "
"turning on [member ProjectSettings.rendering/reflections/sky_reflections/"
"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256×256 cubemaps, so "
"[method sky_set_radiance_size] must be set to [code]256[/code]. Otherwise, a "
"warning is printed and the overridden radiance size is ignored."
msgstr ""
"Использует алгоритм быстрой фильтрации для обработки карты сияния. В целом "
"это приводит к снижению качества, но существенному ускорению времени "
"выполнения. Если вам нужно лучшее качество, но при этом необходимо обновлять "
"небо в каждом кадре, рассмотрите возможность включения [member "
"ProjectSettings.rendering/reflections/sky_reflections/"
"fast_filter_high_quality].\n"
"[b]Примечание:[/b] Алгоритм быстрой фильтрации ограничен кубическими картами "
"256×256, поэтому [method sky_set_radiance_size] должен быть установлен на "
"[code]256[/code]. В противном случае выводится предупреждение, а "
"переопределенный размер сияния игнорируется."

msgid ""
"The rendering effect requires the color buffer to be resolved if MSAA is "
"enabled."
msgstr ""
"Эффект рендеринга требует разрешения цветового буфера, если включен MSAA."

msgid ""
"The rendering effect requires the depth buffer to be resolved if MSAA is "
"enabled."
msgstr "Эффект рендеринга требует разрешения буфера глубины, если включен MSAA."

msgid "The rendering effect requires motion vectors to be produced."
msgstr "Эффект рендеринга требует создания векторов движения."

msgid ""
"The rendering effect requires normals and roughness g-buffer to be produced "
"(Forward+ only)."
msgstr ""
"Эффект рендеринга требует создания нормалей и g-буфера шероховатости (только "
"Forward+)."

msgid ""
"The rendering effect requires specular data to be separated out (Forward+ "
"only)."
msgstr ""
"Эффект рендеринга требует разделения зеркальных данных (только Forward+)."

msgid "Use the clear color as background."
msgstr "Используйте прозрачный цвет в качестве фона."

msgid "Use a specified color as the background."
msgstr "Использует указанный цвет в качестве фона."

msgid "Use a sky resource for the background."
msgstr "Использует в качестве фона изображение неба."

msgid ""
"Use a specified canvas layer as the background. This can be useful for "
"instantiating a 2D scene in a 3D world."
msgstr ""
"Использовать указанный слой холста в качестве фона. Это может быть полезно "
"для создания 2D-сцены в 3D-мире."

msgid ""
"Do not clear the background, use whatever was rendered last frame as the "
"background."
msgstr ""
"Не очищает фон, использует в качестве фона то, что было отрендерено в "
"последнем кадре."

msgid "Represents the size of the [enum EnvironmentBG] enum."
msgstr "Представляет размер перечисления [enum EnvironmentBG]."

msgid "Disable ambient light."
msgstr "Отключить внешнее освещение."

msgid "Specify a specific [Color] for ambient light."
msgstr "Укажите определенный [Color] для окружающего освещения."

msgid "Disable reflections."
msgstr "Отключить отражение."

msgid ""
"A simple tonemapping curve that rolls off bright values to prevent clipping. "
"This results in an image that can appear dull and low contrast. Slower than "
"[constant ENV_TONE_MAPPER_LINEAR].\n"
"[b]Note:[/b] When [member Environment.tonemap_white] is left at the default "
"value of [code]1.0[/code], [constant ENV_TONE_MAPPER_REINHARD] produces an "
"identical image to [constant ENV_TONE_MAPPER_LINEAR]."
msgstr ""
"Простая кривая тональной компрессии, которая сглаживает яркие значения, чтобы "
"предотвратить обрезку. Это приводит к изображению, которое может выглядеть "
"тусклым и малоконтрастным. Медленнее, чем [constant ENV_TONE_MAPPER_LINEAR].\n"
"[b]Примечание:[/b] Если [member Environment.tonemap_white] оставить на "
"значении по умолчанию [code]1.0[/code], [constant ENV_TONE_MAPPER_REINHARD] "
"создает изображение, идентичное [constant ENV_TONE_MAPPER_LINEAR]."

msgid ""
"Uses a film-like tonemapping curve to prevent clipping of bright values and "
"provide better contrast than [constant ENV_TONE_MAPPER_REINHARD]. Slightly "
"slower than [constant ENV_TONE_MAPPER_REINHARD]."
msgstr ""
"Использует кривую тональной компрессии, подобную пленочной, для "
"предотвращения обрезки ярких значений и обеспечения лучшего контраста, чем "
"[constant ENV_TONE_MAPPER_REINHARD]. Немного медленнее, чем [constant "
"ENV_TONE_MAPPER_REINHARD]."

msgid ""
"Uses a high-contrast film-like tonemapping curve and desaturates bright "
"values for a more realistic appearance. Slightly slower than [constant "
"ENV_TONE_MAPPER_FILMIC].\n"
"[b]Note:[/b] This tonemapping operator is called \"ACES Fitted\" in Godot 3.x."
msgstr ""
"Использует высококонтрастную кривую тональной компрессии, похожую на "
"кинопленку, и обесцвечивает яркие значения для более реалистичного вида. "
"Немного медленнее, чем [constant ENV_TONE_MAPPER_FILMIC].\n"
"[b]Примечание:[/b] Этот оператор тональной компрессии называется «ACES "
"Fitted» в Godot 3.x."

msgid ""
"Uses a film-like tonemapping curve and desaturates bright values for a more "
"realistic appearance. Better than other tonemappers at maintaining the hue of "
"colors as they become brighter. The slowest tonemapping option.\n"
"[b]Note:[/b] [member Environment.tonemap_white] is fixed at a value of "
"[code]16.29[/code], which makes [constant ENV_TONE_MAPPER_AGX] unsuitable for "
"use with the Mobile rendering method."
msgstr ""
"Использует кривую тональной компрессии, похожую на кинопленку, и "
"обесцвечивает яркие значения для более реалистичного вида. Лучше, чем другие "
"тональные компрессии, сохраняет оттенок цветов по мере их увеличения. Самый "
"медленный вариант тональной компрессии.\n"
"[b]Примечание:[/b] [member Environment.tonemap_white] зафиксирован на "
"значении [code]16.29[/code], что делает [constant ENV_TONE_MAPPER_AGX] "
"непригодным для использования с методом рендеринга Mobile."

msgid ""
"Lowest quality of roughness filter for screen-space reflections. Rough "
"materials will not have blurrier screen-space reflections compared to smooth "
"(non-rough) materials. This is the fastest option."
msgstr ""
"Самое низкое качество фильтра шероховатости для отражений в пространстве "
"экрана. Грубые материалы не будут иметь более размытых отражений в "
"пространстве экрана по сравнению с гладкими (не шероховатыми) материалами. "
"Это самый быстрый вариант."

msgid "Low quality of roughness filter for screen-space reflections."
msgstr ""
"Низкое качество фильтра шероховатости для отражений в экранном пространстве."

msgid "Medium quality of roughness filter for screen-space reflections."
msgstr ""
"Среднее качество фильтра шероховатости для отражений в пространстве экрана."

msgid ""
"High quality of roughness filter for screen-space reflections. This is the "
"slowest option."
msgstr ""
"Высокое качество фильтра шероховатости для отражений в пространстве экрана. "
"Это самый медленный вариант."

msgid "Lowest quality of screen-space ambient occlusion."
msgstr "Самое низкое качество окклюзии окружающего пространства экрана."

msgid "Low quality screen-space ambient occlusion."
msgstr "Низкое качество окклюзии окружающего пространства экрана."

msgid "Medium quality screen-space ambient occlusion."
msgstr "Окклюзия окружающего пространства на экране среднего качества."

msgid "High quality screen-space ambient occlusion."
msgstr "Высококачественная окклюзия окружающего пространства экрана."

msgid ""
"Highest quality screen-space ambient occlusion. Uses the adaptive target "
"setting which can be dynamically adjusted to smoothly balance performance and "
"visual quality."
msgstr ""
"Окружающая окклюзия экранного пространства высочайшего качества. Использует "
"адаптивную целевую настройку, которую можно динамически настраивать для "
"плавного баланса производительности и визуального качества."

msgid "Lowest quality of screen-space indirect lighting."
msgstr "Самое низкое качество непрямого освещения экранного пространства."

msgid "Low quality screen-space indirect lighting."
msgstr "Непрямое освещение экранного пространства низкого качества."

msgid "High quality screen-space indirect lighting."
msgstr "Высококачественное непрямое освещение экранного пространства."

msgid ""
"Highest quality screen-space indirect lighting. Uses the adaptive target "
"setting which can be dynamically adjusted to smoothly balance performance and "
"visual quality."
msgstr ""
"Непрямое освещение экранного пространства высочайшего качества. Использует "
"адаптивную целевую настройку, которую можно динамически регулировать для "
"плавного баланса производительности и визуального качества."

msgid ""
"Throw 4 rays per frame when converging SDFGI. This has the lowest GPU "
"requirements, but creates the most noisy result."
msgstr ""
"Выбрасывать 4 луча на кадр при схождении SDFGI. Это имеет самые низкие "
"требования к GPU, но создает самый шумный результат."

msgid "Throw 8 rays per frame when converging SDFGI."
msgstr "При схождении SDFGI отбрасывать 8 лучей на кадр."

msgid "Throw 16 rays per frame when converging SDFGI."
msgstr "При схождении SDFGI отбрасывать 16 лучей на кадр."

msgid "Throw 32 rays per frame when converging SDFGI."
msgstr "При схождении SDFGI отбрасывать 32 луча на кадр."

msgid "Throw 64 rays per frame when converging SDFGI."
msgstr "При схождении SDFGI отбрасывать 64 луча на кадр."

msgid ""
"Throw 96 rays per frame when converging SDFGI. This has high GPU requirements."
msgstr ""
"Выбрасывать 96 лучей на кадр при схождении SDFGI. Это предъявляет высокие "
"требования к GPU."

msgid ""
"Throw 128 rays per frame when converging SDFGI. This has very high GPU "
"requirements, but creates the least noisy result."
msgstr ""
"Выбрасывать 128 лучей на кадр при схождении SDFGI. Это имеет очень высокие "
"требования к GPU, но создает наименее шумный результат."

msgid "Represents the size of the [enum EnvironmentSDFGIRayCount] enum."
msgstr "Представляет размер перечисления [enum EnvironmentSDFGIRayCount]."

msgid ""
"Converge SDFGI over 5 frames. This is the most responsive, but creates the "
"most noisy result with a given ray count."
msgstr ""
"Сведение SDFGI по 5 кадрам. Это наиболее отзывчивый вариант, но создает "
"наиболее шумный результат при заданном количестве лучей."

msgid "Configure SDFGI to fully converge over 10 frames."
msgstr "Настройте SDFGI для полной конвергенции за 10 кадров."

msgid "Configure SDFGI to fully converge over 15 frames."
msgstr "Настройте SDFGI для полной конвергенции за 15 кадров."

msgid "Configure SDFGI to fully converge over 20 frames."
msgstr "Настройте SDFGI для полной конвергенции более 20 кадров."

msgid "Configure SDFGI to fully converge over 25 frames."
msgstr "Настройте SDFGI для полной конвергенции в течение 25 кадров."

msgid ""
"Configure SDFGI to fully converge over 30 frames. This is the least "
"responsive, but creates the least noisy result with a given ray count."
msgstr ""
"Настройте SDFGI для полной сходимости за 30 кадров. Это наименее отзывчивый "
"вариант, но создает наименее шумный результат при заданном количестве лучей."

msgid "Represents the size of the [enum EnvironmentSDFGIFramesToConverge] enum."
msgstr ""
"Представляет размер перечисления [enum EnvironmentSDFGIFramesToConverge]."

msgid ""
"Update indirect light from dynamic lights in SDFGI over 1 frame. This is the "
"most responsive, but has the highest GPU requirements."
msgstr ""
"Обновить непрямой свет от динамического освещения в SDFGI за 1 кадр. Это "
"самый отзывчивый вариант, но имеет самые высокие требования к GPU."

msgid "Update indirect light from dynamic lights in SDFGI over 2 frames."
msgstr ""
"Обновление непрямого света от динамических источников света в SDFGI на "
"протяжении 2 кадров."

msgid "Update indirect light from dynamic lights in SDFGI over 4 frames."
msgstr ""
"Обновление непрямого света от динамических источников света в SDFGI на "
"протяжении 4 кадров."

msgid "Update indirect light from dynamic lights in SDFGI over 8 frames."
msgstr ""
"Обновление непрямого света от динамических источников света в SDFGI на "
"протяжении 8 кадров."

msgid ""
"Update indirect light from dynamic lights in SDFGI over 16 frames. This is "
"the least responsive, but has the lowest GPU requirements."
msgstr ""
"Обновить непрямой свет из динамического освещения в SDFGI более 16 кадров. "
"Это наименее отзывчивый вариант, но имеет самые низкие требования к GPU."

msgid ""
"Represents the size of the [enum EnvironmentSDFGIFramesToUpdateLight] enum."
msgstr ""
"Представляет размер перечисления [enum EnvironmentSDFGIFramesToUpdateLight]."

msgid ""
"Disables subsurface scattering entirely, even on materials that have [member "
"BaseMaterial3D.subsurf_scatter_enabled] set to [code]true[/code]. This has "
"the lowest GPU requirements."
msgstr ""
"Полностью отключает подповерхностное рассеивание, даже для материалов, у "
"которых [member BaseMaterial3D.subsurf_scatter_enabled] установлен на "
"[code]true[/code]. Это имеет самые низкие требования к графическому "
"процессору."

msgid "Low subsurface scattering quality."
msgstr "Низкое качество подповерхностного рассеяния."

msgid "Medium subsurface scattering quality."
msgstr "Среднее качество подповерхностного рассеяния."

msgid ""
"High subsurface scattering quality. This has the highest GPU requirements."
msgstr ""
"Высокое качество подповерхностного рассеивания. Это имеет самые высокие "
"требования к GPU."

msgid ""
"Calculate the DOF blur using a box filter. The fastest option, but results in "
"obvious lines in blur pattern."
msgstr ""
"Рассчитайте размытие глубины резкости, используя блочный фильтр. Самый "
"быстрый вариант, но приводит к появлению явных линий в шаблоне размытия."

msgid "Calculates DOF blur using a hexagon shaped filter."
msgstr ""
"Вычисляет размытие глубины резкости с помощью фильтра в форме шестиугольника."

msgid ""
"Calculates DOF blur using a circle shaped filter. Best quality and most "
"realistic, but slowest. Use only for areas where a lot of performance can be "
"dedicated to post-processing (e.g. cutscenes)."
msgstr ""
"Вычисляет размытие глубины резкости с помощью фильтра в форме круга. Лучшее "
"качество и наиболее реалистичный, но самый медленный. Используйте только для "
"областей, где большая часть производительности может быть выделена на "
"постобработку (например, катсцены)."

msgid ""
"Lowest quality DOF blur. This is the fastest setting, but you may be able to "
"see filtering artifacts."
msgstr ""
"Размытие глубины резкости самого низкого качества. Это самая быстрая "
"настройка, но вы можете увидеть артефакты фильтрации."

msgid "Low quality DOF blur."
msgstr "Низкое качество размытия глубины резкости."

msgid "Medium quality DOF blur."
msgstr "Среднее качество размытия глубины резкости."

msgid ""
"Highest quality DOF blur. Results in the smoothest looking blur by taking the "
"most samples, but is also significantly slower."
msgstr ""
"Высочайшее качество размытия глубины резкости. Результат — максимально "
"плавное размытие за счет использования наибольшего количества образцов, но "
"также значительно медленнее."

msgid "The instance does not have a type."
msgstr "Экземпляр не имеет типа."

msgid "The instance is a mesh."
msgstr "Экземпляр представляет собой сетку."

msgid "The instance is a multimesh."
msgstr "Экземпляр представляет собой многосетку."

msgid "The instance is a particle emitter."
msgstr "Данный экземпляр - источник частиц."

msgid "The instance is a GPUParticles collision shape."
msgstr "Экземпляр представляет собой форму столкновения GPUParticles."

msgid "The instance is a light."
msgstr "Экземпляр представляет собой свет."

msgid "The instance is a reflection probe."
msgstr "Данный экземпляр - проба отражения."

msgid "The instance is a decal."
msgstr "Экземпляр представляет собой декаль."

msgid "The instance is a VoxelGI."
msgstr "Экземпляр представляет собой VoxelGI."

msgid "The instance is a lightmap."
msgstr "Экземпляр представляет собой карту освещения."

msgid "The instance is an occlusion culling occluder."
msgstr "Экземпляр представляет собой окклюдер, исключающий окклюзию."

msgid "The instance is a visible on-screen notifier."
msgstr "Экземпляр представляет собой видимое на экране уведомление."

msgid "The instance is a fog volume."
msgstr "Экземпляр представляет собой туманный объем."

msgid "Represents the size of the [enum InstanceType] enum."
msgstr "Представляет размер перечисления [enum InstanceType]."

msgid ""
"A combination of the flags of geometry instances (mesh, multimesh, immediate "
"and particles)."
msgstr ""
"Комбинация флагов экземпляров геометрии (сетка, multimesh, immediate и "
"частицы)."

msgid "Allows the instance to be used in baked lighting."
msgstr "Позволяет использовать экземпляр в запеченном освещении."

msgid "Allows the instance to be used with dynamic global illumination."
msgstr "Позволяет использовать экземпляр с динамическим глобальным освещением."

msgid "When set, manually requests to draw geometry on next frame."
msgstr ""
"Если установлено, вручную запрашивает рисование геометрии в следующем кадре."

msgid ""
"Always draw, even if the instance would be culled by occlusion culling. Does "
"not affect view frustum culling."
msgstr ""
"Всегда рисует, даже если экземпляр будет отбракован в результате исключения "
"окклюзии. Не влияет на отсечение усеченного изображения."

msgid "Represents the size of the [enum InstanceFlags] enum."
msgstr "Представляет размер перечисления [enum InstanceFlags]."

msgid "Disable shadows from this instance."
msgstr "Отключает тени в данном экземпляре."

msgid "Cast shadows from this instance."
msgstr "Отбрасывает тени от этого экземпляра."

msgid ""
"Disable backface culling when rendering the shadow of the object. This is "
"slightly slower but may result in more correct shadows."
msgstr ""
"Отключить отбраковку задней поверхности при рендеринге тени объекта. Это "
"немного медленнее, но может привести к более правильным теням."

msgid ""
"Only render the shadows from the object. The object itself will not be drawn."
msgstr "Отрисовывать только тени от объекта. Сам объект не будет отрисован."

msgid "Disable visibility range fading for the given instance."
msgstr "Отключить затухание диапазона видимости для данного экземпляра."

msgid ""
"Fade-out the given instance when it approaches its visibility range limits."
msgstr ""
"Скрыть указанный экземпляр, когда он приближается к границам диапазона "
"видимости."

msgid ""
"Fade-in the given instance's dependencies when reaching its visibility range "
"limits."
msgstr ""
"Показывать зависимости данного экземпляра при достижении пределов его "
"диапазона видимости."

msgid ""
"Index of [Image] in array of [Image]s returned by [method bake_render_uv2]. "
"Image uses [constant Image.FORMAT_RGBA8] and contains albedo color in the "
"[code].rgb[/code] channels and alpha in the [code].a[/code] channel."
msgstr ""
"Индекс [Image] в массиве [Image]-ов, возвращаемом [method bake_render_uv2]. "
"Изображение использует [constant Image.FORMAT_RGBA8] и содержит цвет альбедо "
"в каналах [code].rgb[/code] и альфа в канале [code].a[/code]."

msgid ""
"Index of [Image] in array of [Image]s returned by [method bake_render_uv2]. "
"Image uses [constant Image.FORMAT_RGBA8] and contains the per-pixel normal of "
"the object in the [code].rgb[/code] channels and nothing in the [code].a[/"
"code] channel. The per-pixel normal is encoded as [code]normal * 0.5 + 0.5[/"
"code]."
msgstr ""
"Индекс [Image] в массиве [Image]-ов, возвращаемом [method bake_render_uv2]. "
"Изображение использует [constant Image.FORMAT_RGBA8] и содержит попиксельную "
"нормаль объекта в каналах [code].rgb[/code] и ничего в канале [code].a[/"
"code]. Попиксельная нормаль кодируется как [code]normal * 0.5 + 0.5[/code]."

msgid ""
"Index of [Image] in array of [Image]s returned by [method bake_render_uv2]. "
"Image uses [constant Image.FORMAT_RGBA8] and contains ambient occlusion (from "
"material and decals only) in the [code].r[/code] channel, roughness in the "
"[code].g[/code] channel, metallic in the [code].b[/code] channel and sub "
"surface scattering amount in the [code].a[/code] channel."
msgstr ""
"Индекс [Image] в массиве [Image]-ов, возвращаемом [method bake_render_uv2]. "
"Изображение использует [constant Image.FORMAT_RGBA8] и содержит окружающее "
"затенение (только из материала и декалей) в канале [code].r[/code], "
"шероховатость в канале [code].g[/code], металлик в канале [code].b[/code] и "
"величину подповерхностного рассеивания в канале [code].a[/code]."

msgid ""
"Index of [Image] in array of [Image]s returned by [method bake_render_uv2]. "
"Image uses [constant Image.FORMAT_RGBAH] and contains emission color in the "
"[code].rgb[/code] channels and nothing in the [code].a[/code] channel."
msgstr ""
"Индекс [Image] в массиве [Image]-ов, возвращаемом [method bake_render_uv2]. "
"Изображение использует [constant Image.FORMAT_RGBAH] и содержит цвет "
"излучения в каналах [code].rgb[/code] и ничего в канале [code].a[/code]."

msgid "Diffuse canvas texture ([member CanvasTexture.diffuse_texture])."
msgstr "Рассеянная текстура холста ([member CanvasTexture.diffuse_texture])."

msgid "Normal map canvas texture ([member CanvasTexture.normal_texture])."
msgstr "Текстура холста карты нормалей ([member CanvasTexture.normal_texture])."

msgid "Specular map canvas texture ([member CanvasTexture.specular_texture])."
msgstr ""
"Текстура холста карты отражений ([member CanvasTexture.specular_texture])."

msgid "The nine patch gets stretched where needed."
msgstr "Девятый патч растягивается там, где это необходимо."

msgid "The nine patch gets filled with tiles where needed."
msgstr "Девятый патч заполняются тайлами там, где это необходимо."

msgid ""
"The nine patch gets filled with tiles where needed and stretches them a bit "
"if needed."
msgstr ""
"Девятый патч заполняется тайлами там, где это необходимо, и при необходимости "
"немного их растягивает."

msgid "Uses the default filter mode for this [Viewport]."
msgstr "Использует режим фильтра по умолчанию для этого [Viewport]."

msgid ""
"The texture filter reads from the nearest pixel and blends between 2 mipmaps "
"(or uses the nearest mipmap if [member ProjectSettings.rendering/textures/"
"default_filters/use_nearest_mipmap_filter] is [code]true[/code]) based on the "
"angle between the surface and the camera view. This makes the texture look "
"pixelated from up close, and smooth from a distance. Anisotropic filtering "
"improves texture quality on surfaces that are almost in line with the camera, "
"but is slightly slower. The anisotropic filtering level can be changed by "
"adjusting [member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level].\n"
"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
"CANVAS_ITEM_TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] is usually more appropriate "
"in this case."
msgstr ""
"Текстурный фильтр считывает данные с ближайшего пикселя и смешивает два mip-"
"текстурных отображения (или использует ближайшее mip-текстурное отображение, "
"если [member ProjectSettings.rendering/textures/default_filters/"
"use_nearest_mipmap_filter] имеет значение [code]true[/code]) на основе угла "
"между поверхностью и видом камеры. Это делает текстуру пикселизированной "
"вблизи и гладкой на расстоянии. Анизотропная фильтрация улучшает качество "
"текстуры на поверхностях, которые находятся почти на одной линии с камерой, "
"но работает немного медленнее. Уровень анизотропной фильтрации можно "
"изменить, настроив [member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level].\n"
"[b]Примечание:[/b] Этот текстурный фильтр редко бывает полезен в 2D-проектах. "
"[constant CANVAS_ITEM_TEXTURE_FILTER_NEAREST_WITH_MIPMAPS] обычно более "
"подходит в этом случае."

msgid ""
"The texture filter blends between the nearest 4 pixels and blends between 2 "
"mipmaps (or uses the nearest mipmap if [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] is [code]true[/code]) "
"based on the angle between the surface and the camera view. This makes the "
"texture look smooth from up close, and smooth from a distance. Anisotropic "
"filtering improves texture quality on surfaces that are almost in line with "
"the camera, but is slightly slower. The anisotropic filtering level can be "
"changed by adjusting [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level].\n"
"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
"CANVAS_ITEM_TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] is usually more appropriate "
"in this case."
msgstr ""
"Фильтр текстуры смешивает ближайшие 4 пикселя и смешивает 2 mip-карты (или "
"использует ближайшую mip-карту, если [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] имеет значение "
"[code]true[/code]) на основе угла между поверхностью и видом камеры. Это "
"делает текстуру гладкой вблизи и гладкой на расстоянии. Анизотропная "
"фильтрация улучшает качество текстуры на поверхностях, которые почти "
"совпадают с камерой, но немного медленнее. Уровень анизотропной фильтрации "
"можно изменить, настроив [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level].\n"
"[b]Примечание:[/b] Этот фильтр текстуры редко полезен в 2D-проектах. "
"[constant CANVAS_ITEM_TEXTURE_FILTER_LINEAR_WITH_MIPMAPS] обычно более "
"подходит в этом случае."

msgid "Max value for [enum CanvasItemTextureFilter] enum."
msgstr "Максимальное значение для перечисления [enum CanvasItemTextureFilter]."

msgid "Uses the default repeat mode for this [Viewport]."
msgstr "Использует режим повтора по умолчанию для этого [Viewport]."

msgid ""
"Disables textures repeating. Instead, when reading UVs outside the 0-1 range, "
"the value will be clamped to the edge of the texture, resulting in a "
"stretched out look at the borders of the texture."
msgstr ""
"Отключает повторение текстур. Вместо этого при считывании UV за пределами "
"диапазона 0-1 значение будет прижато к краю текстуры, что приведет к "
"растянутому виду границ текстуры."

msgid ""
"Flip the texture when repeating so that the edge lines up instead of abruptly "
"changing."
msgstr ""
"При повторении переворачивайте текстуру так, чтобы края совпадали, а не резко "
"менялись."

msgid "Max value for [enum CanvasItemTextureRepeat] enum."
msgstr "Максимальное значение для перечисления [enum CanvasItemTextureRepeat]."

msgid "Child draws over parent and is not clipped."
msgstr "Дочерний элемент рисуется поверх родительского и не обрезается."

msgid ""
"Parent is used for the purposes of clipping only. Child is clipped to the "
"parent's visible area, parent is not drawn."
msgstr ""
"Parent используется только для обрезки. Child обрезается до видимой области "
"родителя, родитель не рисуется."

msgid ""
"Parent is used for clipping child, but parent is also drawn underneath child "
"as normal before clipping child to its visible area."
msgstr ""
"Родительский элемент используется для обрезки дочернего элемента, но "
"родительский элемент также рисуется под дочерним элементом, как обычно, перед "
"обрезкой дочернего элемента до его видимой области."

msgid "2D point light (see [PointLight2D])."
msgstr "2D точечный источник света (см. [PointLight2D])."

msgid "2D directional (sun/moon) light (see [DirectionalLight2D])."
msgstr "2D направленный (солнце/луна) свет (см. [DirectionalLight2D])."

msgid "Adds light color additive to the canvas."
msgstr "Добавляет легкую цветовую добавку к холсту."

msgid "Adds light color subtractive to the canvas."
msgstr "Добавляет на холст светлый субтрактивный цвет."

msgid "The light adds color depending on transparency."
msgstr "Свет добавляет цвет в зависимости от прозрачности."

msgid "Do not apply a filter to canvas light shadows."
msgstr "Не применяйте фильтр к светлым теням на холсте."

msgid "Use PCF5 filtering to filter canvas light shadows."
msgstr "Используйте фильтрацию PCF5 для фильтрации теней от света на холсте."

msgid "Use PCF13 filtering to filter canvas light shadows."
msgstr "Используйте фильтрацию PCF13 для фильтрации теней на холсте."

msgid "Max value of the [enum CanvasLightShadowFilter] enum."
msgstr "Максимальное значение перечисления [enum CanvasLightShadowFilter]."

msgid "Culling of the canvas occluder is disabled."
msgstr "Отбраковка окклюдера холста отключена."

msgid "Culling of the canvas occluder is clockwise."
msgstr "Отбраковка холста-окклюдера производится по часовой стрелке."

msgid "Culling of the canvas occluder is counterclockwise."
msgstr "Отбраковка холста-окклюдера производится против часовой стрелки."

msgid "Boolean global shader parameter ([code]global uniform bool ...[/code])."
msgstr ""
"Логический глобальный параметр шейдера ([code]global uniform bool ...[/code])."

msgid ""
"2-dimensional boolean vector global shader parameter ([code]global uniform "
"bvec2 ...[/code])."
msgstr ""
"Глобальный параметр шейдера 2-мерного логического вектора ([code]global "
"uniform bvec2 ...[/code])."

msgid ""
"3-dimensional boolean vector global shader parameter ([code]global uniform "
"bvec3 ...[/code])."
msgstr ""
"Глобальный параметр шейдера 3-мерного логического вектора ([code]global "
"uniform bvec3 ...[/code])."

msgid ""
"4-dimensional boolean vector global shader parameter ([code]global uniform "
"bvec4 ...[/code])."
msgstr ""
"Глобальный параметр шейдера 4-мерного логического вектора ([code]global "
"uniform bvec4 ...[/code])."

msgid "Integer global shader parameter ([code]global uniform int ...[/code])."
msgstr ""
"Целочисленный глобальный параметр шейдера ([code]global uniform int ...[/"
"code])."

msgid ""
"2-dimensional integer vector global shader parameter ([code]global uniform "
"ivec2 ...[/code])."
msgstr ""
"Глобальный параметр шейдера 2-мерного целочисленного вектора ([code]global "
"uniform ivec2 ...[/code])."

msgid ""
"3-dimensional integer vector global shader parameter ([code]global uniform "
"ivec3 ...[/code])."
msgstr ""
"Глобальный параметр шейдера 3-мерного целочисленного вектора ([code]global "
"uniform ivec3 ...[/code])."

msgid ""
"4-dimensional integer vector global shader parameter ([code]global uniform "
"ivec4 ...[/code])."
msgstr ""
"Глобальный параметр шейдера 4-мерного целочисленного вектора ([code]global "
"uniform ivec4 ...[/code])."

msgid ""
"2-dimensional integer rectangle global shader parameter ([code]global uniform "
"ivec4 ...[/code]). Equivalent to [constant GLOBAL_VAR_TYPE_IVEC4] in shader "
"code, but exposed as a [Rect2i] in the editor UI."
msgstr ""
"Глобальный параметр шейдера 2-мерного целого прямоугольника ([code]global "
"uniform ivec4 ...[/code]). Эквивалентно [constant GLOBAL_VAR_TYPE_IVEC4] в "
"коде шейдера, но отображается как [Rect2i] в пользовательском интерфейсе "
"редактора."

msgid ""
"Unsigned integer global shader parameter ([code]global uniform uint ...[/"
"code])."
msgstr ""
"Беззнаковый целочисленный глобальный параметр шейдера ([code]global uniform "
"uint ...[/code])."

msgid ""
"2-dimensional unsigned integer vector global shader parameter ([code]global "
"uniform uvec2 ...[/code])."
msgstr ""
"Глобальный параметр шейдера — двумерный беззнаковый целочисленный вектор "
"([code]global uniform uvec2 ...[/code])."

msgid ""
"3-dimensional unsigned integer vector global shader parameter ([code]global "
"uniform uvec3 ...[/code])."
msgstr ""
"Глобальный параметр шейдера — 3-мерный беззнаковый целочисленный вектор "
"([code]global uniform uvec3 ...[/code])."

msgid ""
"4-dimensional unsigned integer vector global shader parameter ([code]global "
"uniform uvec4 ...[/code])."
msgstr ""
"Глобальный параметр шейдера — 4-мерный беззнаковый целочисленный вектор "
"([code]global uniform uvec4 ...[/code])."

msgid ""
"Single-precision floating-point global shader parameter ([code]global uniform "
"float ...[/code])."
msgstr ""
"Глобальный параметр шейдера с плавающей точкой одинарной точности "
"([code]global uniform float ...[/code])."

msgid ""
"2-dimensional floating-point vector global shader parameter ([code]global "
"uniform vec2 ...[/code])."
msgstr ""
"Глобальный параметр шейдера 2-мерного вектора с плавающей точкой "
"([code]global uniform vec2 ...[/code])."

msgid ""
"3-dimensional floating-point vector global shader parameter ([code]global "
"uniform vec3 ...[/code])."
msgstr ""
"Глобальный параметр шейдера 3-мерного вектора с плавающей точкой "
"([code]global uniform vec3 ...[/code])."

msgid ""
"4-dimensional floating-point vector global shader parameter ([code]global "
"uniform vec4 ...[/code])."
msgstr ""
"Глобальный параметр шейдера 4-мерного вектора с плавающей точкой "
"([code]global uniform vec4 ...[/code])."

msgid ""
"Color global shader parameter ([code]global uniform vec4 ...[/code]). "
"Equivalent to [constant GLOBAL_VAR_TYPE_VEC4] in shader code, but exposed as "
"a [Color] in the editor UI."
msgstr ""
"Глобальный параметр шейдера Color ([code]global uniform vec4 ...[/code]). "
"Эквивалентно [constant GLOBAL_VAR_TYPE_VEC4] в коде шейдера, но отображается "
"как [Color] в пользовательском интерфейсе редактора."

msgid ""
"2-dimensional floating-point rectangle global shader parameter ([code]global "
"uniform vec4 ...[/code]). Equivalent to [constant GLOBAL_VAR_TYPE_VEC4] in "
"shader code, but exposed as a [Rect2] in the editor UI."
msgstr ""
"Глобальный параметр шейдера 2-мерного прямоугольника с плавающей точкой "
"([code]global uniform vec4 ...[/code]). Эквивалентно [constant "
"GLOBAL_VAR_TYPE_VEC4] в коде шейдера, но отображается как [Rect2] в "
"пользовательском интерфейсе редактора."

msgid ""
"2×2 matrix global shader parameter ([code]global uniform mat2 ...[/code]). "
"Exposed as a [PackedInt32Array] in the editor UI."
msgstr ""
"Параметр глобального шейдера матрицы 2×2 ([code]global uniform mat2 ...[/"
"code]). Отображается как [PackedInt32Array] в пользовательском интерфейсе "
"редактора."

msgid ""
"3×3 matrix global shader parameter ([code]global uniform mat3 ...[/code]). "
"Exposed as a [Basis] in the editor UI."
msgstr ""
"Параметр глобального шейдера матрицы 3×3 ([code]global uniform mat3 ...[/"
"code]). Выставлен как [Basis] в пользовательском интерфейсе редактора."

msgid ""
"4×4 matrix global shader parameter ([code]global uniform mat4 ...[/code]). "
"Exposed as a [Projection] in the editor UI."
msgstr ""
"Параметр глобального шейдера матрицы 4×4 ([code]global uniform mat4 ...[/"
"code]). Отображается как [Projection] в пользовательском интерфейсе редактора."

msgid ""
"2-dimensional transform global shader parameter ([code]global uniform "
"mat2x3 ...[/code]). Exposed as a [Transform2D] in the editor UI."
msgstr ""
"Параметр глобального шейдера 2-мерного преобразования ([code]global uniform "
"mat2x3 ...[/code]). Отображается как [Transform2D] в пользовательском "
"интерфейсе редактора."

msgid ""
"3-dimensional transform global shader parameter ([code]global uniform "
"mat3x4 ...[/code]). Exposed as a [Transform3D] in the editor UI."
msgstr ""
"Параметр глобального шейдера 3-мерного преобразования ([code]global uniform "
"mat3x4 ...[/code]). Отображается как [Transform3D] в пользовательском "
"интерфейсе редактора."

msgid ""
"2D sampler global shader parameter ([code]global uniform sampler2D ...[/"
"code]). Exposed as a [Texture2D] in the editor UI."
msgstr ""
"Параметр глобального шейдера 2D-сэмплера ([code]global uniform sampler2D ...[/"
"code]). Отображается как [Texture2D] в пользовательском интерфейсе редактора."

msgid ""
"2D sampler array global shader parameter ([code]global uniform "
"sampler2DArray ...[/code]). Exposed as a [Texture2DArray] in the editor UI."
msgstr ""
"Параметр глобального шейдера 2D-массива сэмплера ([code]global uniform "
"sampler2DArray ...[/code]). Отображается как [Texture2DArray] в "
"пользовательском интерфейсе редактора."

msgid ""
"3D sampler global shader parameter ([code]global uniform sampler3D ...[/"
"code]). Exposed as a [Texture3D] in the editor UI."
msgstr ""
"Параметр глобального шейдера 3D-сэмплера ([code]global uniform sampler3D ...[/"
"code]). Отображается как [Texture3D] в пользовательском интерфейсе редактора."

msgid ""
"Cubemap sampler global shader parameter ([code]global uniform samplerCube ..."
"[/code]). Exposed as a [Cubemap] in the editor UI."
msgstr ""
"Параметр глобального шейдера сэмплера Cubemap ([code]global uniform "
"samplerCube ...[/code]). Отображается как [Cubemap] в пользовательском "
"интерфейсе редактора."

msgid ""
"External sampler global shader parameter ([code]global uniform "
"samplerExternalOES ...[/code]). Exposed as an [ExternalTexture] in the editor "
"UI."
msgstr ""
"Глобальный параметр шейдера внешнего сэмплера ([code]global uniform "
"samplerExternalOES ...[/code]). Отображается как [ExternalTexture] в "
"интерфейсе редактора."

msgid "Represents the size of the [enum GlobalShaderParameterType] enum."
msgstr "Представляет размер перечисления [enum GlobalShaderParameterType]."

msgid ""
"Number of objects rendered in the current 3D scene. This varies depending on "
"camera position and rotation."
msgstr ""
"Количество объектов, визуализированных в текущей 3D-сцене. Это зависит от "
"положения камеры и поворота."

msgid ""
"Number of points, lines, or triangles rendered in the current 3D scene. This "
"varies depending on camera position and rotation."
msgstr ""
"Количество точек, линий или треугольников, визуализированных в текущей 3D-"
"сцене. Это зависит от положения камеры и поворота."

msgid ""
"Number of draw calls performed to render in the current 3D scene. This varies "
"depending on camera position and rotation."
msgstr ""
"Количество вызовов отрисовки, выполненных для рендеринга в текущей 3D-сцене. "
"Это зависит от положения камеры и поворота."

msgid "Texture memory used (in bytes)."
msgstr "Используемая память текстур (в байтах)."

msgid ""
"Buffer memory used (in bytes). This includes vertex data, uniform buffers, "
"and many miscellaneous buffer types used internally."
msgstr ""
"Используемая буферная память (в байтах). Сюда входят данные вершин, "
"однородные буферы и множество различных типов буферов, используемых внутри."

msgid ""
"Video memory used (in bytes). When using the Forward+ or Mobile renderers, "
"this is always greater than the sum of [constant "
"RENDERING_INFO_TEXTURE_MEM_USED] and [constant "
"RENDERING_INFO_BUFFER_MEM_USED], since there is miscellaneous data not "
"accounted for by those two metrics. When using the Compatibility renderer, "
"this is equal to the sum of [constant RENDERING_INFO_TEXTURE_MEM_USED] and "
"[constant RENDERING_INFO_BUFFER_MEM_USED]."
msgstr ""
"Используемая видеопамять (в байтах). При использовании рендереров Forward+ "
"или Mobile это всегда больше суммы [constant RENDERING_INFO_TEXTURE_MEM_USED] "
"и [constant RENDERING_INFO_BUFFER_MEM_USED], поскольку есть разные данные, не "
"учтенные этими двумя метриками. При использовании рендерера Compatibility это "
"равно сумме [constant RENDERING_INFO_TEXTURE_MEM_USED] и [constant "
"RENDERING_INFO_BUFFER_MEM_USED]."

msgid "Pipeline compilation that was triggered by the 2D canvas renderer."
msgstr "Конвейерная компиляция, запущенная рендерером 2D-холста."

msgid "Pipeline compilation that was triggered by loading a mesh."
msgstr "Компиляция конвейера, запущенная загрузкой сетки."

msgid ""
"Pipeline compilation that was triggered by building the surface cache before "
"rendering the scene."
msgstr ""
"Конвейерная компиляция, которая была запущена путем создания кэша поверхности "
"перед рендерингом сцены."

msgid "Pipeline compilation that was triggered while drawing the scene."
msgstr "Компиляция конвейера, запущенная во время отрисовки сцены."

msgid "Pipeline compilation that was triggered to optimize the current scene."
msgstr "Конвейерная компиляция, запущенная для оптимизации текущей сцены."

msgid "Represents the size of the [enum PipelineSource] enum."
msgstr "Представляет размер перечисления [enum PipelineSource]."

msgid "This constant has not been used since Godot 3.0."
msgstr "Эта константа не использовалась с версии Godot 3.0."

msgid ""
"Abstract scene buffers object, created for each viewport for which 3D "
"rendering is done."
msgstr ""
"Объект буфера абстрактной сцены, созданный для каждого окна просмотра, для "
"которого выполняется 3D-рендеринг."

msgid ""
"Abstract scene buffers object, created for each viewport for which 3D "
"rendering is done. It manages any additional buffers used during rendering "
"and will discard buffers when the viewport is resized.\n"
"[b]Note:[/b] This is an internal rendering server object, do not instantiate "
"this from script."
msgstr ""
"Объект буферов абстрактной сцены, созданный для каждого окна просмотра, для "
"которого выполняется 3D-рендеринг. Он управляет любыми дополнительными "
"буферами, используемыми во время рендеринга, и отбрасывает буферы при "
"изменении размера окна просмотра.\n"
"[b]Примечание:[/b] Это внутренний объект сервера рендеринга, не создавайте "
"его из скрипта."

msgid ""
"This method is called by the rendering server when the associated viewport's "
"configuration is changed. It will discard the old buffers and recreate the "
"internal buffers used."
msgstr ""
"Этот метод вызывается сервером рендеринга при изменении конфигурации "
"соответствующей области просмотра. Он удаляет старые буферы и заново создает "
"используемые внутренние буферы."

msgid "Configuration object used to setup a [RenderSceneBuffers] object."
msgstr ""
"Объект конфигурации, используемый для настройки объекта [RenderSceneBuffers]."

msgid ""
"This configuration object is created and populated by the render engine on a "
"viewport change and used to (re)configure a [RenderSceneBuffers] object."
msgstr ""
"Этот объект конфигурации создается и заполняется движком рендеринга при "
"изменении области просмотра и используется для (пере)настройки объекта "
"[RenderSceneBuffers]."

msgid "Level of the anisotropic filter."
msgstr "Уровень анизотропного фильтра."

msgid "FSR Sharpness applicable if FSR upscaling is used."
msgstr "Резкость FSR применима, если используется масштабирование FSR."

msgid "The size of the 3D render buffer used for rendering."
msgstr "Размер буфера 3D-рендеринга, используемого для рендеринга."

msgid "The MSAA mode we're using for 3D rendering."
msgstr "Режим MSAA, который мы используем для 3D-рендеринга."

msgid "The render target associated with these buffer."
msgstr "Цель рендеринга, связанная с этим буфером."

msgid ""
"The requested scaling mode with which we upscale/downscale if [member "
"internal_size] and [member target_size] are not equal."
msgstr ""
"Запрошенный режим масштабирования, с помощью которого мы увеличиваем/"
"уменьшаем масштаб, если [member internal_size] и [member target_size] не "
"равны."

msgid "The requested screen space AA applied in post processing."
msgstr "Запрошенное экранное пространство AA применяется при постобработке."

msgid "The target (upscale) size if scaling is used."
msgstr "Целевой (увеличенный) размер, если используется масштабирование."

msgid "Bias applied to mipmaps."
msgstr "Смещение, применяемое к MIP-текстурам."

msgid "The number of views we're rendering."
msgstr "Количество просмотров, которые мы обрабатываем."

msgid ""
"This class allows for a RenderSceneBuffer implementation to be made in "
"GDExtension."
msgstr "Этот класс позволяет реализовать RenderSceneBuffer в GDExtension."

msgid "Implement this in GDExtension to handle the (re)sizing of a viewport."
msgstr ""
"Реализуйте это в GDExtension для обработки (изменения) размера области "
"просмотра."

msgid "Implement this in GDExtension to change the anisotropic filtering level."
msgstr ""
"Реализуйте это в GDExtension, чтобы изменить уровень анизотропной фильтрации."

msgid "Implement this in GDExtension to record a new FSR sharpness value."
msgstr ""
"Реализуйте это в GDExtension, чтобы записать новое значение резкости FSR."

msgid "Implement this in GDExtension to change the texture mipmap bias."
msgstr ""
"Реализуйте это в GDExtension, чтобы изменить смещение текстуры MIP-карты."

msgid "Implement this in GDExtension to react to the debanding flag changing."
msgstr ""
"Реализуйте это в GDExtension, чтобы реагировать на изменение флага дебандинга."

msgid ""
"Render scene buffer implementation for the RenderingDevice based renderers."
msgstr ""
"Реализация буфера рендеринга сцены для рендереров на основе RenderingDevice."

msgid ""
"This object manages all 3D rendering buffers for the rendering device based "
"renderers. An instance of this object is created for every viewport that has "
"3D rendering enabled.\n"
"All buffers are organized in [b]contexts[/b]. The default context is called "
"[b]render_buffers[/b] and can contain amongst others the color buffer, depth "
"buffer, velocity buffers, VRS density map and MSAA variants of these "
"buffers.\n"
"Buffers are only guaranteed to exist during rendering of the viewport.\n"
"[b]Note:[/b] This is an internal rendering server object, do not instantiate "
"this from script."
msgstr ""
"Этот объект управляет всеми буферами 3D-рендеринга для рендереров на основе "
"устройств рендеринга. Экземпляр этого объекта создается для каждого окна "
"просмотра, в котором включен 3D-рендеринг.\n"
"Все буферы организованы в [b]контексты[/b]. Контекст по умолчанию называется "
"[b]render_buffers[/b] и может содержать, среди прочего, буфер цвета, буфер "
"глубины, буферы скорости, карту плотности VRS и варианты MSAA этих буферов.\n"
"Буферы гарантированно существуют только во время рендеринга окна просмотра.\n"
"[b]Примечание:[/b] Это внутренний объект сервера рендеринга, не создавайте "
"его из скрипта."

msgid "Frees all buffers related to this context."
msgstr "Освобождает все буферы, связанные с этим контекстом."

msgid ""
"Create a new texture with the given definition and cache this under the given "
"name. Will return the existing texture if it already exists."
msgstr ""
"Создать новую текстуру с заданным определением и кэшировать ее под заданным "
"именем. Возвращает существующую текстуру, если она уже существует."

msgid ""
"Create a new texture using the given format and view and cache this under the "
"given name. Will return the existing texture if it already exists."
msgstr ""
"Создать новую текстуру, используя заданный формат, просмотреть и кэшировать "
"ее под заданным именем. Возвращает существующую текстуру, если она уже "
"существует."

msgid ""
"Create a new texture view for an existing texture and cache this under the "
"given [param view_name]. Will return the existing texture view if it already "
"exists. Will error if the source texture doesn't exist."
msgstr ""
"Создать новый вид текстуры для существующей текстуры и кэшировать его под "
"заданным [param view_name]. Возвращает существующий вид текстуры, если он уже "
"существует. Выдает ошибку, если исходная текстура не существует."

msgid ""
"Returns the specified layer from the color texture we are rendering 3D "
"content to.\n"
"If [param msaa] is [code]true[/code] and MSAA is enabled, this returns the "
"MSAA variant of the buffer."
msgstr ""
"Возвращает указанный слой из цветовой текстуры, в которую мы визуализируем 3D-"
"контент.\n"
"Если [param msaa] равен [code]true[/code] и включен MSAA, возвращается "
"вариант MSAA буфера."

msgid ""
"Returns the color texture we are rendering 3D content to. If multiview is "
"used this will be a texture array with all views.\n"
"If [param msaa] is [code]true[/code] and MSAA is enabled, this returns the "
"MSAA variant of the buffer."
msgstr ""
"Возвращает цветовую текстуру, в которую мы визуализируем 3D-контент. Если "
"используется multiview, это будет массив текстур со всеми представлениями.\n"
"Если [param msaa] равен [code]true[/code] и включен MSAA, возвращается "
"вариант MSAA буфера."

msgid ""
"Returns the specified layer from the depth texture we are rendering 3D "
"content to.\n"
"If [param msaa] is [code]true[/code] and MSAA is enabled, this returns the "
"MSAA variant of the buffer."
msgstr ""
"Возвращает указанный слой из текстуры глубины, в которую мы визуализируем 3D-"
"контент.\n"
"Если [param msaa] равен [code]true[/code] и включен MSAA, возвращается "
"вариант MSAA буфера."

msgid ""
"Returns the depth texture we are rendering 3D content to. If multiview is "
"used this will be a texture array with all views.\n"
"If [param msaa] is [code]true[/code] and MSAA is enabled, this returns the "
"MSAA variant of the buffer."
msgstr ""
"Возвращает текстуру глубины, в которую мы визуализируем 3D-контент. Если "
"используется multiview, это будет массив текстур со всеми представлениями.\n"
"Если [param msaa] равен [code]true[/code] и включен MSAA, возвращается "
"вариант MSAA буфера."

msgid ""
"Returns the FSR sharpness value used while rendering the 3D content (if "
"[method get_scaling_3d_mode] is an FSR mode)."
msgstr ""
"Возвращает значение резкости FSR, используемое при рендеринге 3D-контента "
"(если [method get_scaling_3d_mode] является режимом FSR)."

msgid ""
"Returns the internal size of the render buffer (size before upscaling) with "
"which textures are created by default."
msgstr ""
"Возвращает внутренний размер буфера рендеринга (размер до масштабирования), с "
"которым по умолчанию создаются текстуры."

msgid "Returns the applied 3D MSAA mode for this viewport."
msgstr "Возвращает примененный режим 3D MSAA для данного окна просмотра."

msgid "Returns the render target associated with this buffers object."
msgstr "Возвращает цель рендеринга, связанную с этим объектом буферов."

msgid "Returns the scaling mode used for upscaling."
msgstr "Возвращает режим масштабирования, используемый для масштабирования."

msgid "Returns the screen-space antialiasing method applied."
msgstr "Возвращает примененный метод сглаживания экранного пространства."

msgid "Returns the target size of the render buffer (size after upscaling)."
msgstr ""
"Возвращает целевой размер буфера рендеринга (размер после масштабирования)."

msgid "Returns a cached texture with this name."
msgstr "Возвращает кэшированную текстуру с этим именем."

msgid ""
"Returns the texture format information with which a cached texture was "
"created."
msgstr ""
"Возвращает информацию о формате текстуры, с помощью которой была создана "
"кэшированная текстура."

msgid "Returns the number of MSAA samples used."
msgstr "Возвращает количество использованных выборок MSAA."

msgid "Returns a specific slice (layer or mipmap) for a cached texture."
msgstr ""
"Возвращает определенный фрагмент (слой или MIP-карту) для кэшированной "
"текстуры."

msgid "Returns the texture size of a given slice of a cached texture."
msgstr "Возвращает размер текстуры заданного фрагмента кэшированной текстуры."

msgid ""
"Returns a specific view of a slice (layer or mipmap) for a cached texture."
msgstr ""
"Возвращает определенный вид среза (слоя или MIP-карты) для кэшированной "
"текстуры."

msgid "Returns [code]true[/code] if debanding is enabled."
msgstr "Возвращает [code]true[/code], если отключение полос включено."

msgid "Returns [code]true[/code] if TAA is enabled."
msgstr "Возвращает [code]true[/code], если TAA включен."

msgid ""
"Returns the specified layer from the velocity texture we are rendering 3D "
"content to."
msgstr ""
"Возвращает указанный слой из текстуры скорости, в которую мы визуализируем 3D-"
"контент."

msgid ""
"Returns the velocity texture we are rendering 3D content to. If multiview is "
"used this will be a texture array with all views.\n"
"If [param msaa] is [b]true[/b] and MSAA is enabled, this returns the MSAA "
"variant of the buffer."
msgstr ""
"Возвращает текстуру скорости, в которую мы визуализируем 3D-контент. Если "
"используется multiview, это будет массив текстур со всеми представлениями.\n"
"Если [param msaa] равен [b]true[/b] и включен MSAA, возвращается вариант MSAA "
"буфера."

msgid "Returns the view count for the associated viewport."
msgstr "Возвращает количество просмотров для соответствующего окна просмотра."

msgid "Returns [code]true[/code] if a cached texture exists for this name."
msgstr ""
"Возвращает [code]true[/code], если для этого имени существует кэшированная "
"текстура."

msgid ""
"Abstract render data object, holds scene data related to rendering a single "
"frame of a viewport."
msgstr ""
"Абстрактный объект данных рендеринга, содержит данные сцены, связанные с "
"рендерингом одного кадра области просмотра."

msgid ""
"Abstract scene data object, exists for the duration of rendering a single "
"viewport.\n"
"[b]Note:[/b] This is an internal rendering server object, do not instantiate "
"this from script."
msgstr ""
"Объект данных абстрактной сцены, существует на протяжении рендеринга одного "
"окна просмотра.\n"
"[b]Примечание:[/b] Это внутренний объект сервера рендеринга, не создавайте "
"его из скрипта."

msgid ""
"Returns the camera projection used to render this frame.\n"
"[b]Note:[/b] If more than one view is rendered, this will return a combined "
"projection."
msgstr ""
"Возвращает проекцию камеры, используемую для рендеринга этого кадра.\n"
"[b]Примечание:[/b] Если рендерится более одного вида, будет возвращена "
"объединенная проекция."

msgid ""
"Returns the camera transform used to render this frame.\n"
"[b]Note:[/b] If more than one view is rendered, this will return a centered "
"transform."
msgstr ""
"Возвращает преобразование камеры, используемое для рендеринга этого кадра.\n"
"[b]Примечание:[/b] Если рендерится более одного вида, это вернет "
"центрированное преобразование."

msgid ""
"Return the [RID] of the uniform buffer containing the scene data as a UBO."
msgstr "Возвращает [RID] однородного буфера, содержащего данные сцены, как UBO."

msgid "Returns the number of views being rendered."
msgstr "Возвращает количество отображаемых представлений."

msgid ""
"Returns the eye offset per view used to render this frame. This is the offset "
"between our camera transform and the eye transform."
msgstr ""
"Возвращает смещение глаза на вид, используемое для рендеринга этого кадра. "
"Это смещение между нашим преобразованием камеры и преобразованием глаза."

msgid ""
"Returns the view projection per view used to render this frame.\n"
"[b]Note:[/b] If a single view is rendered, this returns the camera "
"projection. If more than one view is rendered, this will return a projection "
"for the given view including the eye offset."
msgstr ""
"Возвращает проекцию вида на вид, используемую для рендеринга этого кадра.\n"
"[b]Примечание:[/b] Если рендерится один вид, возвращается проекция камеры. "
"Если рендерится более одного вида, возвращается проекция для данного вида, "
"включая смещение глаза."

msgid ""
"This class allows for a RenderSceneData implementation to be made in "
"GDExtension."
msgstr "Этот класс позволяет реализовать RenderSceneData в GDExtension."

msgid "Implement this in GDExtension to return the camera [Projection]."
msgstr "Реализуйте это в GDExtension, чтобы вернуть камеру [Projection]."

msgid "Implement this in GDExtension to return the camera [Transform3D]."
msgstr "Реализуйте это в GDExtension, чтобы вернуть камеру [Transform3D]."

msgid ""
"Implement this in GDExtension to return the [RID] of the uniform buffer "
"containing the scene data as a UBO."
msgstr ""
"Реализуйте это в GDExtension, чтобы вернуть [RID] однородного буфера, "
"содержащего данные сцены, как UBO."

msgid "Implement this in GDExtension to return the view count."
msgstr "Реализуйте это в GDExtension, чтобы вернуть количество просмотров."

msgid ""
"Implement this in GDExtension to return the eye offset for the given [param "
"view]."
msgstr ""
"Реализуйте это в GDExtension, чтобы вернуть смещение глаза для заданного "
"[param view]."

msgid ""
"Implement this in GDExtension to return the view [Projection] for the given "
"[param view]."
msgstr ""
"Реализуйте это в GDExtension, чтобы вернуть представление [Projection] для "
"заданного [param view]."

msgid ""
"Render scene data implementation for the RenderingDevice based renderers."
msgstr ""
"Реализация данных рендеринга сцены для рендереров на основе RenderingDevice."

msgid ""
"Object holds scene data related to rendering a single frame of a viewport.\n"
"[b]Note:[/b] This is an internal rendering server object, do not instantiate "
"this from script."
msgstr ""
"Объект содержит данные сцены, связанные с рендерингом одного кадра области "
"просмотра.\n"
"[b]Примечание:[/b] Это внутренний объект сервера рендеринга, не создавайте "
"его из скрипта."

msgid "Base class for serializable objects."
msgstr "Базовый класс для сериализуемых объектов."

msgid ""
"Resource is the base class for all Godot-specific resource types, serving "
"primarily as data containers. Since they inherit from [RefCounted], resources "
"are reference-counted and freed when no longer in use. They can also be "
"nested within other resources, and saved on disk. [PackedScene], one of the "
"most common [Object]s in a Godot project, is also a resource, uniquely "
"capable of storing and instantiating the [Node]s it contains as many times as "
"desired.\n"
"In GDScript, resources can loaded from disk by their [member resource_path] "
"using [method @GDScript.load] or [method @GDScript.preload].\n"
"The engine keeps a global cache of all loaded resources, referenced by paths "
"(see [method ResourceLoader.has_cached]). A resource will be cached when "
"loaded for the first time and removed from cache once all references are "
"released. When a resource is cached, subsequent loads using its path will "
"return the cached reference.\n"
"[b]Note:[/b] In C#, resources will not be freed instantly after they are no "
"longer in use. Instead, garbage collection will run periodically and will "
"free resources that are no longer in use. This means that unused resources "
"will remain in memory for a while before being removed."
msgstr ""
"Resource — это базовый класс для всех типов ресурсов, специфичных для Godot, "
"в первую очередь выступающий в качестве контейнеров данных. Поскольку они "
"наследуются от [RefCounted], ресурсы подсчитываются по ссылкам и "
"освобождаются, когда больше не используются. Их также можно вкладывать в "
"другие ресурсы и сохранять на диске. [PackedScene], один из самых "
"распространенных [Object]-ов в проекте Godot, также является ресурсом, "
"уникальным образом способным хранить и создавать экземпляры [Node], которые "
"он содержит столько раз, сколько необходимо.\n"
"В GDScript ресурсы могут загружаться с диска с помощью их [member "
"resource_path] с помощью [method @GDScript.load] или [method "
"@GDScript.preload].\n"
"Движок хранит глобальный кэш всех загруженных ресурсов, на которые ссылаются "
"пути (см. [method ResourceLoader.has_cached]). Ресурс будет кэшироваться при "
"первой загрузке и удаляться из кэша после освобождения всех ссылок. Когда "
"ресурс кэшируется, последующие загрузки с использованием его пути будут "
"возвращать кэшированную ссылку.\n"
"[b]Примечание:[/b] В C# ресурсы не будут освобождаться мгновенно после того, "
"как они больше не используются. Вместо этого сборка мусора будет выполняться "
"периодически и освобождать ресурсы, которые больше не используются. Это "
"означает, что неиспользуемые ресурсы будут оставаться в памяти некоторое "
"время, прежде чем будут удалены."

msgid ""
"Override this method to return a custom [RID] when [method get_rid] is called."
msgstr ""
"Переопределите этот метод, чтобы возвращать пользовательский [RID] при вызове "
"[method get_rid]."

msgid ""
"For resources that store state in non-exported properties, such as via "
"[method Object._validate_property] or [method Object._get_property_list], "
"this method must be implemented to clear them."
msgstr ""
"Для ресурсов, которые сохраняют состояние в неэкспортированных свойствах, "
"например, через [method Object._validate_property] или [method "
"Object._get_property_list], этот метод должен быть реализован для их очистки."

msgid ""
"Override this method to execute additional logic after [method "
"set_path_cache] is called on this object."
msgstr ""
"Переопределите этот метод для выполнения дополнительной логики после вызова "
"[method set_path_cache] для этого объекта."

msgid ""
"Override this method to customize the newly duplicated resource created from "
"[method PackedScene.instantiate], if the original's [member "
"resource_local_to_scene] is set to [code]true[/code].\n"
"[b]Example:[/b] Set a random [code]damage[/code] value to every local "
"resource from an instantiated scene:\n"
"[codeblock]\n"
"extends Resource\n"
"\n"
"var damage = 0\n"
"\n"
"func _setup_local_to_scene():\n"
"\tdamage = randi_range(10, 40)\n"
"[/codeblock]"
msgstr ""
"Переопределите этот метод, чтобы настроить новый дублированный ресурс, "
"созданный из [method PackedScene.instantiate], если [member "
"resource_local_to_scene] оригинала установлен в [code]true[/code].\n"
"[b]Пример:[/b] Установите случайное значение [code]damage[/code] для каждого "
"локального ресурса из инстанцированной сцены:\n"
"[codeblock]\n"
"extends Resource\n"
"\n"
"var damage = 0\n"
"\n"
"func _setup_local_to_scene():\n"
"\tdamage = randi_range(10, 40)\n"
"[/codeblock]"

msgid ""
"Duplicates this resource, returning a new resource with its [code]export[/"
"code]ed or [constant PROPERTY_USAGE_STORAGE] properties copied from the "
"original.\n"
"If [param deep] is [code]false[/code], a [b]shallow[/b] copy is returned: "
"nested [Array], [Dictionary], and [Resource] properties are not duplicated "
"and are shared with the original resource.\n"
"If [param deep] is [code]true[/code], a [b]deep[/b] copy is returned: all "
"nested arrays, dictionaries, and packed arrays are also duplicated "
"(recursively). Any [Resource] found inside will only be duplicated if it's "
"local, like [constant DEEP_DUPLICATE_INTERNAL] used with [method "
"duplicate_deep].\n"
"The following exceptions apply:\n"
"- Subresource properties with the [constant PROPERTY_USAGE_ALWAYS_DUPLICATE] "
"flag are always duplicated (recursively or not, depending on [param deep]).\n"
"- Subresource properties with the [constant PROPERTY_USAGE_NEVER_DUPLICATE] "
"flag are never duplicated.\n"
"[b]Note:[/b] For custom resources, this method will fail if [method "
"Object._init] has been defined with required parameters.\n"
"[b]Note:[/b] When duplicating with [param deep] set to [code]true[/code], "
"each resource found, including the one on which this method is called, will "
"be only duplicated once and referenced as many times as needed in the "
"duplicate. For instance, if you are duplicating resource A that happens to "
"have resource B referenced twice, you'll get a new resource A' referencing a "
"new resource B' twice."
msgstr ""
"Дублирует этот ресурс, возвращая новый ресурс со свойствами [code]export[/"
"code] или [constant PROPERTY_USAGE_STORAGE], скопированными из исходного.\n"
"Если [param deep] равен [code]false[/code], возвращается [b]поверхностная[/b] "
"копия: вложенные свойства [Array], [Dictionary] и [Resource] не дублируются и "
"используются совместно с исходным ресурсом.\n"
"Если [param deep] равен [code]true[/code], возвращается [b]глубокая[/b] "
"копия: все вложенные массивы, словари и упакованные массивы также дублируются "
"(рекурсивно). Любой найденный внутри [Resource] будет дублироваться только в "
"том случае, если он локальный, например, [constant DEEP_DUPLICATE_INTERNAL], "
"используемый с [method duplicate_deep].\n"
"Действуют следующие исключения:\n"
"- Свойства подресурсов с флагом [constant PROPERTY_USAGE_ALWAYS_DUPLICATE] "
"всегда дублируются (рекурсивно или нет, в зависимости от [param deep]).\n"
"- Свойства подресурсов с флагом [constant PROPERTY_USAGE_NEVER_DUPLICATE] "
"никогда не дублируются.\n"
"[b]Примечание:[/b] Для пользовательских ресурсов этот метод завершится "
"ошибкой, если [method Object._init] был определён с обязательными "
"параметрами.\n"
"[b]Примечание:[/b] При дублировании с [param deep] равным [code]true[/code] "
"каждый найденный ресурс, включая тот, для которого вызывается этот метод, "
"будет дублироваться только один раз и упоминаться в дубликате столько раз, "
"сколько необходимо. Например, если вы дублируете ресурс A, на который дважды "
"ссылается ресурс B, вы получите новый ресурс A', дважды ссылающийся на новый "
"ресурс B'."

msgid ""
"Duplicates this resource, deeply, like [method duplicate][code](true)[/code], "
"with extra control over how subresources are handled.\n"
"[param deep_subresources_mode] must be one of the values from [enum "
"DeepDuplicateMode]."
msgstr ""
"Глубоко дублирует этот ресурс, подобно [method duplicate][code](true)[/code], "
"с дополнительным контролем над обработкой подресурсов.\n"
"[param deep_subresources_mode] должен быть одним из значений [enum "
"DeepDuplicateMode]."

msgid ""
"Emits the [signal changed] signal. This method is called automatically for "
"some built-in resources.\n"
"[b]Note:[/b] For custom resources, it's recommended to call this method "
"whenever a meaningful change occurs, such as a modified property. This "
"ensures that custom [Object]s depending on the resource are properly "
"updated.\n"
"[codeblock]\n"
"var damage:\n"
"\tset(new_value):\n"
"\t\tif damage != new_value:\n"
"\t\t\tdamage = new_value\n"
"\t\t\temit_changed()\n"
"[/codeblock]"
msgstr ""
"Выдает сигнал [signal changed]. Этот метод вызывается автоматически для "
"некоторых встроенных ресурсов.\n"
"[b]Примечание:[/b] Для пользовательских ресурсов рекомендуется вызывать этот "
"метод всякий раз, когда происходит значимое изменение, например, измененное "
"свойство. Это гарантирует, что пользовательские [Object], зависящие от "
"ресурса, будут правильно обновлены.\n"
"[codeblock]\n"
"var damage:\n"
"\tset(new_value):\n"
"\t\tif damage != new_value:\n"
"\t\t\tdamage = new_value\n"
"\t\t\temit_changed()\n"
"[/codeblock]"

msgid ""
"Generates a unique identifier for a resource to be contained inside a "
"[PackedScene], based on the current date, time, and a random value. The "
"returned string is only composed of letters ([code]a[/code] to [code]y[/"
"code]) and numbers ([code]0[/code] to [code]8[/code]). See also [member "
"resource_scene_unique_id]."
msgstr ""
"Генерирует уникальный идентификатор для ресурса, который будет содержаться "
"внутри [PackedScene], на основе текущей даты, времени и случайного значения. "
"Возвращаемая строка состоит только из букв ([code]a[/code] to [code]y[/code]) "
"и цифр ([code]0[/code] to [code]8[/code]). См. также [member "
"resource_scene_unique_id]."

msgid ""
"From the internal cache for scene-unique IDs, returns the ID of this resource "
"for the scene at [param path]. If there is no entry, an empty string is "
"returned. Useful to keep scene-unique IDs the same when implementing a VCS-"
"friendly custom resource format by extending [ResourceFormatLoader] and "
"[ResourceFormatSaver].\n"
"[b]Note:[/b] This method is only implemented when running in an editor "
"context. At runtime, it returns an empty string."
msgstr ""
"Из внутреннего кэша уникальных идентификаторов сцены возвращает идентификатор "
"данного ресурса для сцены по адресу [param path]. Если запись отсутствует, "
"возвращается пустая строка. Полезно для сохранения уникальных идентификаторов "
"сцены при реализации пользовательского формата ресурсов, совместимого с VCS, "
"путём расширения [ResourceFormatLoader] и [ResourceFormatSaver].\n"
"[b]Примечание:[/b] Этот метод реализуется только при запуске в контексте "
"редактора. Во время выполнения он возвращает пустую строку."

msgid ""
"If [member resource_local_to_scene] is set to [code]true[/code] and the "
"resource has been loaded from a [PackedScene] instantiation, returns the root "
"[Node] of the scene where this resource is used. Otherwise, returns "
"[code]null[/code]."
msgstr ""
"Если [member resource_local_to_scene] установлен в [code]true[/code] и ресурс "
"был загружен из экземпляра [PackedScene], возвращает корень [Node] сцены, где "
"этот ресурс используется. В противном случае возвращает [code]null[/code]."

msgid ""
"Returns the [RID] of this resource (or an empty RID). Many resources (such as "
"[Texture2D], [Mesh], and so on) are high-level abstractions of resources "
"stored in a specialized server ([DisplayServer], [RenderingServer], etc.), so "
"this function will return the original [RID]."
msgstr ""
"Возвращает [RID] этого ресурса (или пустой RID). Многие ресурсы (такие как "
"[Texture2D], [Mesh] и т. д.) являются высокоуровневыми абстракциями ресурсов, "
"хранящихся на специализированном сервере ([DisplayServer], [RenderingServer] "
"и т. д.), поэтому эта функция вернет исходный [RID]."

msgid ""
"Returns [code]true[/code] if the resource is saved on disk as a part of "
"another resource's file."
msgstr ""
"Возвращает [code]true[/code], если ресурс сохранен на диске как часть файла "
"другого ресурса."

msgid ""
"Makes the resource clear its non-exported properties. See also [method "
"_reset_state]. Useful when implementing a custom resource format by extending "
"[ResourceFormatLoader] and [ResourceFormatSaver]."
msgstr ""
"Позволяет очистить ресурс от своих неэкспортируемых свойств. См. также "
"[method _reset_state]. Полезно при реализации пользовательского формата "
"ресурсов путем расширения [ResourceFormatLoader] и [ResourceFormatSaver]."

msgid ""
"In the internal cache for scene-unique IDs, sets the ID of this resource to "
"[param id] for the scene at [param path]. If [param id] is empty, the cache "
"entry for [param path] is cleared. Useful to keep scene-unique IDs the same "
"when implementing a VCS-friendly custom resource format by extending "
"[ResourceFormatLoader] and [ResourceFormatSaver].\n"
"[b]Note:[/b] This method is only implemented when running in an editor "
"context."
msgstr ""
"Во внутреннем кэше для уникальных идентификаторов сцены устанавливает "
"идентификатор этого ресурса на [param id] для сцены по адресу [param path]. "
"Если [param id] пуст, запись кэша для [param path] очищается. Полезно для "
"сохранения уникальных идентификаторов сцены при реализации удобного для VCS "
"пользовательского формата ресурсов путем расширения [ResourceFormatLoader] и "
"[ResourceFormatSaver].\n"
"[b]Примечание:[/b] Этот метод реализуется только при запуске в контексте "
"редактора."

msgid ""
"Sets the resource's path to [param path] without involving the resource "
"cache. Useful for handling [enum ResourceFormatLoader.CacheMode] values when "
"implementing a custom resource format by extending [ResourceFormatLoader] and "
"[ResourceFormatSaver]."
msgstr ""
"Устанавливает путь к ресурсу на [param path] без использования кэша ресурсов. "
"Полезно для обработки значений [enum ResourceFormatLoader.CacheMode] при "
"реализации пользовательского формата ресурсов путем расширения "
"[ResourceFormatLoader] и [ResourceFormatSaver]."

msgid "This method should only be called internally."
msgstr "Этот метод следует вызывать только внутренне."

msgid ""
"Calls [method _setup_local_to_scene]. If [member resource_local_to_scene] is "
"set to [code]true[/code], this method is automatically called from [method "
"PackedScene.instantiate] by the newly duplicated resource within the scene "
"instance."
msgstr ""
"Вызывает [method _setup_local_to_scene]. Если [member "
"resource_local_to_scene] установлен в [code]true[/code], этот метод "
"автоматически вызывается из [method PackedScene.instantiate] новым "
"дублированным ресурсом в экземпляре сцены."

msgid ""
"Sets the [member resource_path] to [param path], potentially overriding an "
"existing cache entry for this path. Further attempts to load an overridden "
"resource by path will instead return this resource."
msgstr ""
"Устанавливает [member resource_path] в [param path], потенциально "
"переопределяя существующую запись кэша для этого пути. Дальнейшие попытки "
"загрузить переопределенный ресурс по пути вместо этого вернут этот ресурс."

msgid ""
"If [code]true[/code], the resource is duplicated for each instance of all "
"scenes using it. At run-time, the resource can be modified in one scene "
"without affecting other instances (see [method PackedScene.instantiate]).\n"
"[b]Note:[/b] Changing this property at run-time has no effect on already "
"created duplicate resources."
msgstr ""
"Если [code]true[/code], ресурс дублируется для каждого экземпляра всех сцен, "
"использующих его. Во время выполнения ресурс может быть изменен в одной "
"сцене, не влияя на другие экземпляры (см. [method PackedScene.instantiate]).\n"
"[b]Примечание:[/b] Изменение этого свойства во время выполнения не влияет на "
"уже созданные дублирующие ресурсы."

msgid ""
"An optional name for this resource. When defined, its value is displayed to "
"represent the resource in the Inspector dock. For built-in scripts, the name "
"is displayed as part of the tab name in the script editor.\n"
"[b]Note:[/b] Some resource formats do not support resource names. You can "
"still set the name in the editor or via code, but it will be lost when the "
"resource is reloaded. For example, only built-in scripts can have a resource "
"name, while scripts stored in separate files cannot."
msgstr ""
"Необязательное имя для этого ресурса. Если определено, его значение "
"отображается для представления ресурса в доке Inspector. Для встроенных "
"скриптов имя отображается как часть имени вкладки в редакторе скриптов.\n"
"[b]Примечание:[/b] Некоторые форматы ресурсов не поддерживают имена ресурсов. "
"Вы по-прежнему можете задать имя в редакторе или через код, но оно будет "
"потеряно при перезагрузке ресурса. Например, только встроенные скрипты могут "
"иметь имя ресурса, в то время как скрипты, хранящиеся в отдельных файлах, не "
"могут."

msgid ""
"The unique path to this resource. If it has been saved to disk, the value "
"will be its filepath. If the resource is exclusively contained within a "
"scene, the value will be the [PackedScene]'s filepath, followed by a unique "
"identifier.\n"
"[b]Note:[/b] Setting this property manually may fail if a resource with the "
"same path has already been previously loaded. If necessary, use [method "
"take_over_path]."
msgstr ""
"Уникальный путь к этому ресурсу. Если он был сохранен на диске, значением "
"будет его путь к файлу. Если ресурс содержится исключительно в сцене, "
"значением будет путь к файлу [PackedScene], за которым следует уникальный "
"идентификатор.\n"
"[b]Примечание:[/b] Установка этого свойства вручную может завершиться "
"неудачей, если ресурс с таким же путем уже был загружен ранее. При "
"необходимости используйте [method take_over_path]."

msgid ""
"A unique identifier relative to the this resource's scene. If left empty, the "
"ID is automatically generated when this resource is saved inside a "
"[PackedScene]. If the resource is not inside a scene, this property is empty "
"by default.\n"
"[b]Note:[/b] When the [PackedScene] is saved, if multiple resources in the "
"same scene use the same ID, only the earliest resource in the scene hierarchy "
"keeps the original ID. The other resources are assigned new IDs from [method "
"generate_scene_unique_id].\n"
"[b]Note:[/b] Setting this property does not emit the [signal changed] "
"signal.\n"
"[b]Warning:[/b] When setting, the ID must only consist of letters, numbers, "
"and underscores. Otherwise, it will fail and default to a randomly generated "
"ID."
msgstr ""
"Уникальный идентификатор относительно сцены этого ресурса. Если оставить его "
"пустым, идентификатор автоматически генерируется при сохранении ресурса в "
"[PackedScene]. Если ресурс не находится в сцене, это свойство по умолчанию "
"пусто.\n"
"[b]Примечание:[/b] При сохранении [PackedScene], если несколько ресурсов в "
"одной сцене используют один и тот же идентификатор, исходный идентификатор "
"сохраняется только у самого раннего ресурса в иерархии сцены. Остальным "
"ресурсам назначаются новые идентификаторы с помощью [method "
"generate_scene_unique_id].\n"
"[b]Примечание:[/b] Установка этого свойства не приводит к генерации сигнала "
"[signal changed].\n"
"[b]Предупреждение:[/b] При установке идентификатор должен состоять только из "
"букв, цифр и символов подчёркивания. В противном случае произойдет сбой, и по "
"умолчанию будет использован случайно сгенерированный идентификатор."

msgid ""
"Emitted when the resource changes, usually when one of its properties is "
"modified. See also [method emit_changed].\n"
"[b]Note:[/b] This signal is not emitted automatically for properties of "
"custom resources. If necessary, a setter needs to be created to emit the "
"signal."
msgstr ""
"Выдается при изменении ресурса, обычно при изменении одного из его свойств. "
"См. также [method emit_changed].\n"
"[b]Примечание:[/b] Этот сигнал не выдается автоматически для свойств "
"пользовательских ресурсов. При необходимости необходимо создать сеттер для "
"выдачи сигнала."

msgid ""
"This signal is only emitted when the resource is created. Override [method "
"_setup_local_to_scene] instead."
msgstr ""
"Этот сигнал выдается только при создании ресурса. Вместо этого переопределите "
"[method _setup_local_to_scene]."

msgid ""
"Emitted by a newly duplicated resource with [member resource_local_to_scene] "
"set to [code]true[/code]."
msgstr ""
"Создано новым дублированным ресурсом, у которого [member "
"resource_local_to_scene] установлено значение [code]true[/code]."

msgid ""
"No subresorces at all are duplicated. This is useful even in a deep "
"duplication to have all the arrays and dictionaries duplicated but still "
"pointing to the original resources."
msgstr ""
"Никакие подресурсы не дублируются. Это полезно даже при глубоком "
"дублировании, чтобы все массивы и словари были дублированы, но при этом "
"указывали на исходные ресурсы."

msgid ""
"Only subresources without a path or with a scene-local path will be "
"duplicated."
msgstr ""
"Будут дублироваться только подресурсы без пути или с локальным путем сцены."

msgid ""
"Every subresource found will be duplicated, even if it has a non-local path. "
"In other words, even potentially big resources stored separately will be "
"duplicated."
msgstr ""
"Каждый найденный подресурс будет продублирован, даже если у него нелокальный "
"путь. Другими словами, даже потенциально большие ресурсы, хранящиеся "
"отдельно, будут продублированы."

msgid "Loads a specific resource type from a file."
msgstr "Загружает определенный тип ресурса из файла."

msgid ""
"Godot loads resources in the editor or in exported games using "
"ResourceFormatLoaders. They are queried automatically via the "
"[ResourceLoader] singleton, or when a resource with internal dependencies is "
"loaded. Each file type may load as a different resource type, so multiple "
"ResourceFormatLoaders are registered in the engine.\n"
"Extending this class allows you to define your own loader. Be sure to respect "
"the documented return types and values. You should give it a global class "
"name with [code]class_name[/code] for it to be registered. Like built-in "
"ResourceFormatLoaders, it will be called automatically when loading resources "
"of its handled type(s). You may also implement a [ResourceFormatSaver].\n"
"[b]Note:[/b] You can also extend [EditorImportPlugin] if the resource type "
"you need exists but Godot is unable to load its format. Choosing one way over "
"another depends on if the format is suitable or not for the final exported "
"game. For example, it's better to import [code].png[/code] textures as "
"[code].ctex[/code] ([CompressedTexture2D]) first, so they can be loaded with "
"better efficiency on the graphics card."
msgstr ""
"Godot загружает ресурсы в редакторе или в экспортированных играх с помощью "
"ResourceFormatLoaders. Они запрашиваются автоматически через синглтон "
"[ResourceLoader] или при загрузке ресурса с внутренними зависимостями. Каждый "
"тип файла может загружаться как другой тип ресурса, поэтому в движке "
"регистрируется несколько ResourceFormatLoaders.\n"
"Расширение этого класса позволяет вам определить свой собственный загрузчик. "
"Обязательно соблюдайте задокументированные типы возвращаемых данных и "
"значения. Вам следует дать ему глобальное имя класса с [code]class_name[/"
"code], чтобы он был зарегистрирован. Как и встроенные ResourceFormatLoaders, "
"он будет вызываться автоматически при загрузке ресурсов его обработанных "
"типов. Вы также можете реализовать [ResourceFormatSaver].\n"
"[b]Примечание:[/b] Вы также можете расширить [EditorImportPlugin], если "
"нужный вам тип ресурса существует, но Godot не может загрузить его формат. "
"Выбор одного из способов зависит от того, подходит ли формат для финальной "
"экспортированной игры. Например, лучше сначала импортировать текстуры "
"[code].png[/code] как [code].ctex[/code] ([CompressedTexture2D]), чтобы их "
"можно было загрузить на видеокарту с большей эффективностью."

msgid ""
"Should return the dependencies for the resource at the given [param path]. "
"Each dependency is a string composed of one to three sections separated by "
"[code]::[/code], with trailing empty sections omitted:\n"
"- The first section should contain the UID if the resource has one. "
"Otherwise, it should contain the file path.\n"
"- The second section should contain the class name of the dependency if "
"[param add_types] is [code]true[/code]. Otherwise, it should be empty.\n"
"- The third section should contain the fallback path if the resource has a "
"UID. Otherwise, it should be empty.\n"
"[codeblock]\n"
"func _get_dependencies(path, add_types):\n"
"\treturn [\n"
"\t\t\"uid://fqgvuwrkuixh::Script::res://script.gd\",\n"
"\t\t\"uid://fqgvuwrkuixh::::res://script.gd\",\n"
"\t\t\"res://script.gd::Script\",\n"
"\t\t\"res://script.gd\",\n"
"\t]\n"
"[/codeblock]\n"
"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
"[ClassDB], so [code]\"Resource\"[/code] can be used for the class name."
msgstr ""
"Должен возвращать зависимости для ресурса по указанному пути [param path]. "
"Каждая зависимость представляет собой строку, состоящую из одной-трех секций, "
"разделенных [code]::[/code], при этом конечные пустые секции опускаются:\n"
"- Первый раздел должен содержать UID, если он есть у ресурса. В противном "
"случае он должен содержать путь к файлу.\n"
"- Второй раздел должен содержать имя класса зависимости, если [param "
"add_types] равен [code]true[/code]. В противном случае он должен быть "
"пустым.\n"
"- Третий раздел должен содержать резервный путь, если у ресурса есть UID. В "
"противном случае он должен быть пустым.\n"
"[codeblock]\n"
"func _get_dependencies(path, add_types):\n"
"\treturn [\n"
"\t\t\"uid://fqgvuwrkuixh::Script::res://script.gd\",\n"
"\t\t\"uid://fqgvuwrkuixh::::res://script.gd\",\n"
"\t\t\"res://script.gd::Script\",\n"
"\t\t\"res://script.gd\",\n"
"\t]\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Пользовательские типы ресурсов, определяемые скриптами, не "
"известны [ClassDB], поэтому для имени класса можно использовать [code]"
"\"Resource\"[/code]."

msgid "Gets the list of extensions for files this loader is able to read."
msgstr ""
"Получает список расширений файлов, которые может прочитать этот загрузчик."

msgid ""
"Returns the script class name associated with the [Resource] under the given "
"[param path]. If the resource has no script or the script isn't a named "
"class, it should return [code]\"\"[/code]."
msgstr ""
"Возвращает имя класса скрипта, связанного с [Resource] в заданном [param "
"path]. Если у ресурса нет скрипта или скрипт не является именованным классом, "
"он должен вернуть [code]\"\"[/code]."

msgid ""
"Gets the class name of the resource associated with the given path. If the "
"loader cannot handle it, it should return [code]\"\"[/code].\n"
"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
"[ClassDB], so you might just return [code]\"Resource\"[/code] for them."
msgstr ""
"Получает имя класса ресурса, связанного с указанным путем. Если загрузчик не "
"может его обработать, он должен вернуть [code]\"\"[/code].\n"
"[b]Примечание:[/b] Пользовательские типы ресурсов, определенные скриптами, не "
"известны [ClassDB], поэтому вы можете просто вернуть для них [code]"
"\"Resource\"[/code]."

msgid ""
"Should return the unique ID for the resource associated with the given path. "
"If this method is not overridden, a [code].uid[/code] file is generated along "
"with the resource file, containing the unique ID."
msgstr ""
"Должен возвращать уникальный идентификатор ресурса, связанного с указанным "
"путем. Если этот метод не переопределен, файл [code].uid[/code] генерируется "
"вместе с файлом ресурса, содержащим уникальный идентификатор."

msgid ""
"Tells which resource class this loader can load.\n"
"[b]Note:[/b] Custom resource types defined by scripts aren't known by the "
"[ClassDB], so you might just handle [code]\"Resource\"[/code] for them."
msgstr ""
"Сообщает, какой класс ресурсов может загрузить этот загрузчик.\n"
"[b]Примечание:[/b] Пользовательские типы ресурсов, определенные скриптами, не "
"известны [ClassDB], поэтому вы можете просто обработать [code]\"Resource\"[/"
"code] для них."

msgid ""
"Loads a resource when the engine finds this loader to be compatible. If the "
"loaded resource is the result of an import, [param original_path] will target "
"the source file. Returns a [Resource] object on success, or an [enum Error] "
"constant in case of failure.\n"
"The [param cache_mode] property defines whether and how the cache should be "
"used or updated when loading the resource. See [enum CacheMode] for details."
msgstr ""
"Загружает ресурс, когда движок находит этот загрузчик совместимым. Если "
"загруженный ресурс является результатом импорта, [param original_path] будет "
"нацелен на исходный файл. Возвращает объект [Resource] в случае успеха или "
"константу [enum Error] в случае неудачи.\n"
"Свойство [param cache_mode] определяет, следует ли и как использовать или "
"обновлять кэш при загрузке ресурса. Подробности см. в [enum CacheMode]."

msgid ""
"Tells whether or not this loader should load a resource from its resource "
"path for a given type.\n"
"If it is not implemented, the default behavior returns whether the path's "
"extension is within the ones provided by [method _get_recognized_extensions], "
"and if the type is within the ones provided by [method _get_resource_type]."
msgstr ""
"Сообщает, должен ли этот загрузчик загружать ресурс из своего пути к ресурсам "
"для заданного типа.\n"
"Если он не реализован, поведение по умолчанию возвращает, находится ли "
"расширение пути в пределах, предоставленных [method "
"_get_recognized_extensions], и находится ли тип в пределах, предоставленных "
"[method _get_resource_type]."

msgid ""
"If implemented, renames dependencies within the given resource and saves it. "
"[param renames] is a dictionary [code]{ String => String }[/code] mapping old "
"dependency paths to new paths.\n"
"Returns [constant OK] on success, or an [enum Error] constant in case of "
"failure."
msgstr ""
"Если реализовано, переименовывает зависимости в заданном ресурсе и сохраняет "
"его. [param renames] — это словарь [code]{ String => String }[/code], "
"сопоставляющий старые пути зависимостей с новыми путями.\n"
"Возвращает [constant OK] в случае успеха или константу [enum Error] в случае "
"неудачи."

msgid ""
"Neither the main resource (the one requested to be loaded) nor any of its "
"subresources are retrieved from cache nor stored into it. Dependencies "
"(external resources) are loaded with [constant CACHE_MODE_REUSE]."
msgstr ""
"Ни основной ресурс (тот, который был запрошен для загрузки), ни какой-либо из "
"его подресурсов не извлекается из кэша и не сохраняется в нем. Зависимости "
"(внешние ресурсы) загружаются с [constant CACHE_MODE_REUSE]."

msgid ""
"The main resource (the one requested to be loaded), its subresources, and its "
"dependencies (external resources) are retrieved from cache if present, "
"instead of loaded. Those not cached are loaded and then stored into the "
"cache. The same rules are propagated recursively down the tree of "
"dependencies (external resources)."
msgstr ""
"Основной ресурс (тот, который был запрошен для загрузки), его подресурсы и "
"его зависимости (внешние ресурсы) извлекаются из кэша, если они присутствуют, "
"а не загружаются. Те, которые не кэшируются, загружаются и затем сохраняются "
"в кэше. Те же правила рекурсивно распространяются вниз по дереву зависимостей "
"(внешние ресурсы)."

msgid ""
"Like [constant CACHE_MODE_REUSE], but the cache is checked for the main "
"resource (the one requested to be loaded) as well as for each of its "
"subresources. Those already in the cache, as long as the loaded and cached "
"types match, have their data refreshed from storage into the already existing "
"instances. Otherwise, they are recreated as completely new objects."
msgstr ""
"Как [constant CACHE_MODE_REUSE], но кэш проверяется для основного ресурса "
"(того, который запрашивается для загрузки), а также для каждого из его "
"подресурсов. Те, которые уже находятся в кэше, пока загруженные и "
"кэшированные типы совпадают, обновляют свои данные из хранилища в уже "
"существующие экземпляры. В противном случае они воссоздаются как совершенно "
"новые объекты."

msgid ""
"Like [constant CACHE_MODE_IGNORE], but propagated recursively down the tree "
"of dependencies (external resources)."
msgstr ""
"Подобно [constant CACHE_MODE_IGNORE], но распространяется рекурсивно вниз по "
"дереву зависимостей (внешние ресурсы)."

msgid ""
"Like [constant CACHE_MODE_REPLACE], but propagated recursively down the tree "
"of dependencies (external resources)."
msgstr ""
"Подобно [constant CACHE_MODE_REPLACE], но распространяется рекурсивно вниз по "
"дереву зависимостей (внешние ресурсы)."

msgid "Saves a specific resource type to a file."
msgstr "Сохраняет определенный тип ресурса в файл."

msgid ""
"The engine can save resources when you do it from the editor, or when you use "
"the [ResourceSaver] singleton. This is accomplished thanks to multiple "
"[ResourceFormatSaver]s, each handling its own format and called automatically "
"by the engine.\n"
"By default, Godot saves resources as [code].tres[/code] (text-based), "
"[code].res[/code] (binary) or another built-in format, but you can choose to "
"create your own format by extending this class. Be sure to respect the "
"documented return types and values. You should give it a global class name "
"with [code]class_name[/code] for it to be registered. Like built-in "
"ResourceFormatSavers, it will be called automatically when saving resources "
"of its recognized type(s). You may also implement a [ResourceFormatLoader]."
msgstr ""
"Движок может сохранять ресурсы, когда вы делаете это из редактора или когда "
"вы используете синглтон [ResourceSaver]. Это достигается благодаря нескольким "
"[ResourceFormatSaver], каждый из которых обрабатывает свой собственный формат "
"и автоматически вызывается движком.\n"
"По умолчанию Godot сохраняет ресурсы как [code].tres[/code] (текстовый), "
"[code].res[/code] (двоичный) или другой встроенный формат, но вы можете "
"создать свой собственный формат, расширив этот класс. Обязательно соблюдайте "
"задокументированные типы возвращаемых данных и значения. Вам следует дать ему "
"глобальное имя класса с [code]class_name[/code], чтобы он был "
"зарегистрирован. Как и встроенные ResourceFormatSavers, он будет вызываться "
"автоматически при сохранении ресурсов его распознаваемого типа(ов). Вы также "
"можете реализовать [ResourceFormatLoader]."

msgid ""
"Returns the list of extensions available for saving the resource object, "
"provided it is recognized (see [method _recognize])."
msgstr ""
"Возвращает список расширений, доступных для сохранения объекта ресурса, при "
"условии, что он распознан (см. [method _recognize])."

msgid "Returns whether the given resource object can be saved by this saver."
msgstr ""
"Возвращает, может ли данный объект ресурса быть сохранен этим хранителем."

msgid ""
"Returns [code]true[/code] if this saver handles a given save path and "
"[code]false[/code] otherwise.\n"
"If this method is not implemented, the default behavior returns whether the "
"path's extension is within the ones provided by [method "
"_get_recognized_extensions]."
msgstr ""
"Возвращает [code]true[/code], если этот сейвер обрабатывает заданный путь "
"сохранения, и [code]false[/code] в противном случае.\n"
"Если этот метод не реализован, поведение по умолчанию возвращает, находится "
"ли расширение пути в пределах, предоставленных [method "
"_get_recognized_extensions]."

msgid ""
"Saves the given resource object to a file at the target [param path]. [param "
"flags] is a bitmask composed with [enum ResourceSaver.SaverFlags] constants.\n"
"Returns [constant OK] on success, or an [enum Error] constant in case of "
"failure."
msgstr ""
"Сохраняет заданный объект ресурса в файле по адресу [param path]. [param "
"flags] — это битовая маска, составленная из констант [enum "
"ResourceSaver.SaverFlags]. \n"
"Возвращает [constant OK] в случае успеха или константу [enum Error] в случае "
"неудачи."

msgid ""
"Sets a new UID for the resource at the given [param path]. Returns [constant "
"OK] on success, or an [enum Error] constant in case of failure."
msgstr ""
"Устанавливает новый UID для ресурса по указанному [param path]. Возвращает "
"[constant OK] в случае успеха или константу [enum Error] в случае неудачи."

msgid "Base class for resource importers."
msgstr "Базовый класс для импортеров ресурсов."

msgid ""
"This is the base class for Godot's resource importers. To implement your own "
"resource importers using editor plugins, see [EditorImportPlugin]."
msgstr ""
"Это базовый класс для импортеров ресурсов Godot. Чтобы реализовать "
"собственные импортеры ресурсов с помощью плагинов редактора, см. "
"[EditorImportPlugin]."

msgid ""
"Called when the engine compilation profile editor wants to check what build "
"options an imported resource needs. For example, "
"[ResourceImporterDynamicFont] has a property called [member "
"ResourceImporterDynamicFont.multichannel_signed_distance_field], that depends "
"on the engine to be build with the \"msdfgen\" module. If that resource "
"happened to be a custom one, it would be handled like this:\n"
"[codeblock]\n"
"func _get_build_dependencies(path):\n"
"\tvar resource = load(path)\n"
"\tvar dependencies = PackedStringArray()\n"
"\n"
"\tif resource.multichannel_signed_distance_field:\n"
"\t\tdependencies.push_back(\"module_msdfgen_enabled\")\n"
"\n"
"\treturn dependencies\n"
"[/codeblock]"
msgstr ""
"Вызывается, когда редактор профиля компиляции движка хочет проверить, какие "
"параметры сборки нужны импортированному ресурсу. Например, "
"[ResourceImporterDynamicFont] имеет свойство с именем [member "
"ResourceImporterDynamicFont.multichannel_signed_distance_field], которое "
"зависит от движка, который будет собран с модулем \"msdfgen\". Если бы этот "
"ресурс оказался пользовательским, он бы обрабатывался следующим образом:\n"
"[codeblock]\n"
"func _get_build_dependencies(path):\n"
"\tvar resource = load(path)\n"
"\tvar dependencies = PackedStringArray()\n"
"\n"
"\tif resource.multichannel_signed_distance_field:\n"
"\t\tdependencies.push_back(\"module_msdfgen_enabled\")\n"
"\n"
"\treturn dependencies\n"
"[/codeblock]"

msgid "The default import order."
msgstr "Порядок импорта по умолчанию."

msgid ""
"The import order for scenes, which ensures scenes are imported [i]after[/i] "
"all other core resources such as textures. Custom importers should generally "
"have an import order lower than [code]100[/code] to avoid issues when "
"importing scenes that rely on custom resources."
msgstr ""
"Порядок импорта сцен, который гарантирует, что сцены импортируются [i]после[/"
"i] всех других основных ресурсов, таких как текстуры. Пользовательские "
"импортеры обычно должны иметь порядок импорта ниже [code]100[/code], чтобы "
"избежать проблем при импорте сцен, которые полагаются на пользовательские "
"ресурсы."

msgid "Imports a [BitMap] resource (2D array of boolean values)."
msgstr "Импортирует ресурс [BitMap] (двумерный массив логических значений)."

msgid ""
"[BitMap] resources are typically used as click masks in [TextureButton] and "
"[TouchScreenButton]."
msgstr ""
"Ресурсы [BitMap] обычно используются в качестве масок щелчков (нажфтий) в "
"[TextureButton] и [TouchScreenButton]."

msgid ""
"The data source to use for generating the bitmap.\n"
"[b]Black & White:[/b] Pixels whose HSV value is greater than the [member "
"threshold] will be considered as \"enabled\" (bit is [code]true[/code]). If "
"the pixel is lower than or equal to the threshold, it will be considered as "
"\"disabled\" (bit is [code]false[/code]).\n"
"[b]Alpha:[/b] Pixels whose alpha value is greater than the [member threshold] "
"will be considered as \"enabled\" (bit is [code]true[/code]). If the pixel is "
"lower than or equal to the threshold, it will be considered as \"disabled\" "
"(bit is [code]false[/code])."
msgstr ""
"Источник данных для использования при создании битовой карты.\n"
"[b]Черно-белый:[/b] Пиксели, значение HSV которых больше [member threshold], "
"будут считаться «включенными» (бит равен [code]true[/code]). Если пиксель "
"меньше или равен порогу, он будет считаться «отключенным» (бит равен "
"[code]false[/code]).\n"
"[b]Альфа:[/b] Пиксели, значение альфа которых больше [member threshold], "
"будут считаться «включенными» (бит равен [code]true[/code]). Если пиксель "
"меньше или равен порогу, он будет считаться «отключенным» (бит равен "
"[code]false[/code])."

msgid ""
"The threshold to use to determine which bits should be considered enabled or "
"disabled. See also [member create_from]."
msgstr ""
"Порог, используемый для определения того, какие биты следует считать "
"включенными или выключенными. См. также [member create_from]."

msgid "Imports a bitmap font in the BMFont ([code].fnt[/code]) format."
msgstr "Импортирует растровый шрифт в формате BMFont ([code].fnt[/code])."

msgid ""
"The BMFont format is a format created by the [url=https://www.angelcode.com/"
"products/bmfont/]BMFont[/url] program. Many BMFont-compatible programs also "
"exist, like [url=https://www.bmglyph.com/]BMGlyph[/url].\n"
"Compared to [ResourceImporterImageFont], [ResourceImporterBMFont] supports "
"bitmap fonts with varying glyph widths/heights.\n"
"See also [ResourceImporterDynamicFont]."
msgstr ""
"Формат BMFont — это формат, созданный программой [url=https://"
"www.angelcode.com/products/bmfont/]BMFont[/url]. Существует также множество "
"программ, совместимых с BMFont, например [url=https://"
"www.bmglyph.com/]BMGlyph[/url].\n"
"По сравнению с [ResourceImporterImageFont], [ResourceImporterBMFont] "
"поддерживает растровые шрифты с различной шириной/высотой глифов.\n"
"См. также [ResourceImporterDynamicFont]."

msgid "Bitmap fonts - Using fonts"
msgstr "Растровые шрифты - Использование шрифтов"

msgid "If [code]true[/code], uses lossless compression for the resulting font."
msgstr ""
"Если [code]true[/code], используется сжатие без потерь для результирующего "
"шрифта."

msgid ""
"List of font fallbacks to use if a glyph isn't found in this bitmap font. "
"Fonts at the beginning of the array are attempted first."
msgstr ""
"Список резервных шрифтов для использования, если глиф не найден в этом "
"растровом шрифте. Шрифты в начале массива пробуются первыми."

msgid "Font scaling mode."
msgstr "Режим масштабирования шрифта."

msgid "Imports comma-separated values"
msgstr "Импортирует значения, разделенные запятыми"

msgid ""
"Comma-separated values are a plain text table storage format. The format's "
"simplicity makes it easy to edit in any text editor or spreadsheet software. "
"This makes it a common choice for game localization.\n"
"[b]Example CSV file:[/b]\n"
"[codeblock lang=text]\n"
"keys,en,es,ja\n"
"GREET,\"Hello, friend!\",\"Hola, amigo!\",こんにちは\n"
"ASK,How are you?,Cómo está?,元気ですか\n"
"BYE,Goodbye,Adiós,さようなら\n"
"QUOTE,\"\"\"Hello\"\" said the man.\",\"\"\"Hola\"\" dijo el hombre.\",「こん"
"にちは」男は言いました\n"
"[/codeblock]"
msgstr ""
"Значения, разделенные запятыми, представляют собой формат хранения простой "
"текстовой таблицы. Простота формата позволяет легко редактировать его в любом "
"текстовом редакторе или программном обеспечении для работы с электронными "
"таблицами. Это делает его распространенным выбором для локализации игр.\n"
"[b]Пример CSV file:[/b]\n"
"[codeblock lang=text]\n"
"keys,en,es,ja\n"
"GREET,\"Hello, friend!\",\"Hola, amigo!\",こんにちは\n"
"ASK,How are you?,Cómo está?,元気ですか\n"
"BYE,Goodbye,Adiós,さようなら\n"
"QUOTE,\"\"\"Hello\"\" said the man.\",\"\"\"Hola\"\" dijo el hombre.\",「こん"
"にちは」男は言いました\n"
"[/codeblock]"

msgid "Importing translations"
msgstr "Импорт переводов"

msgid ""
"If [code]true[/code], creates an [OptimizedTranslation] instead of a "
"[Translation]. This makes the resulting file smaller at the cost of a small "
"CPU overhead."
msgstr ""
"Если [code]true[/code], создается [OptimizedTranslation] вместо "
"[Translation]. Это уменьшает размер конечного файла за счет небольшой "
"нагрузки на ЦП."

msgid ""
"The delimiter to use in the CSV file. The default value matches the common "
"CSV convention. Tab-separated values are sometimes called TSV files."
msgstr ""
"Разделитель для использования в файле CSV. Значение по умолчанию "
"соответствует общепринятому соглашению CSV. Значения, разделенные табуляцией, "
"иногда называются файлами TSV."

msgid ""
"Imports a TTF, TTC, OTF, OTC, WOFF or WOFF2 font file for font rendering that "
"adapts to any size."
msgstr ""
"Импортирует файл шрифта TTF, TTC, OTF, OTC, WOFF или WOFF2 для рендеринга "
"шрифта, адаптируемого к любому размеру."

msgid ""
"Unlike bitmap fonts, dynamic fonts can be resized to any size and still look "
"crisp. Dynamic fonts also optionally support MSDF font rendering, which "
"allows for run-time scale changes with no re-rasterization cost.\n"
"While WOFF and especially WOFF2 tend to result in smaller file sizes, there "
"is no universally \"better\" font format. In most situations, it's "
"recommended to use the font format that was shipped on the font developer's "
"website.\n"
"See also [ResourceImporterBMFont] and [ResourceImporterImageFont]."
msgstr ""
"В отличие от растровых шрифтов, динамические шрифты можно изменять до любого "
"размера, и они по-прежнему будут выглядеть четкими. Динамические шрифты также "
"опционально поддерживают рендеринг шрифтов MSDF, что позволяет изменять "
"масштаб во время выполнения без затрат на повторную растеризацию.\n"
"Хотя WOFF и особенно WOFF2, как правило, приводят к меньшим размерам файлов, "
"не существует универсального «лучшего» формата шрифта. В большинстве ситуаций "
"рекомендуется использовать формат шрифта, предоставленный на веб-сайте "
"разработчика шрифта.\n"
"См. также [ResourceImporterBMFont] и [ResourceImporterImageFont]."

msgid "Dynamic fonts - Using fonts"
msgstr "Динамические шрифты - Использование шрифтов"

msgid ""
"If [code]true[/code], automatically use system fonts as a fallback if a glyph "
"isn't found in this dynamic font. This makes supporting CJK characters or "
"emoji more straightforward, as you don't need to include a CJK/emoji font in "
"your project. See also [member fallbacks].\n"
"[b]Note:[/b] The appearance of system fonts varies across platforms. Loading "
"system fonts is only supported on Windows, macOS, Linux, Android and iOS."
msgstr ""
"Если [code]true[/code], автоматически использовать системные шрифты в "
"качестве резерва, если глиф не найден в этом динамическом шрифте. Это "
"упрощает поддержку символов CJK или эмодзи, поскольку вам не нужно включать "
"шрифт CJK/эмодзи в свой проект. См. также [member fallbacks].\n"
"[b]Примечание:[/b] Внешний вид системных шрифтов различается на разных "
"платформах. Загрузка системных шрифтов поддерживается только в Windows, "
"macOS, Linux, Android и iOS."

msgid ""
"The font antialiasing method to use.\n"
"[b]Disabled:[/b] Most suited for pixel art fonts, although you do not "
"[i]have[/i] to change the antialiasing from the default [b]Grayscale[/b] if "
"the font file was well-created and the font is used at an integer multiple of "
"its intended size. If pixel art fonts have a bad appearance at their intended "
"size, try setting [member subpixel_positioning] to [b]Disabled[/b] instead.\n"
"[b]Grayscale:[/b] Use grayscale antialiasing. This is the approach used by "
"the operating system on macOS, Android and iOS.\n"
"[b]LCD Subpixel:[/b] Use antialiasing with subpixel patterns to make fonts "
"sharper on LCD displays. This is the approach used by the operating system on "
"Windows and most Linux distributions. The downside is that this can introduce "
"\"fringing\" on edges, especially on display technologies that don't use "
"standard RGB subpixels (such as OLED displays). The LCD subpixel layout is "
"globally controlled by [member ProjectSettings.gui/theme/"
"lcd_subpixel_layout], which also allows falling back to grayscale "
"antialiasing."
msgstr ""
"Метод сглаживания шрифта, который следует использовать.\n"
"[b]Отключено:[/b] Наиболее подходит для шрифтов пиксельной графики, хотя вам "
"не [i]нужно[/i] менять сглаживание со значения по умолчанию [b]Оттенки "
"серого[/b], если файл шрифта был хорошо создан и шрифт используется в "
"целочисленном кратном от предполагаемого размера. Если шрифты пиксельной "
"графики выглядят плохо при предполагаемом размере, попробуйте вместо этого "
"установить [member subpixel_positioning] на [b]Отключено[/b].\n"
"[b]Оттенки серого:[/b] Использовать сглаживание в оттенках серого. Этот "
"подход используется операционной системой на macOS, Android и iOS.\n"
"[b]Субпиксель ЖК-дисплея:[/b] Использовать сглаживание с субпиксельными "
"шаблонами, чтобы сделать шрифты более четкими на ЖК-дисплеях. Этот подход "
"используется операционной системой на Windows и большинстве дистрибутивов "
"Linux. Недостатком является то, что это может привести к появлению "
"\"окантовки\" на краях, особенно на дисплеях, которые не используют "
"стандартные субпиксели RGB (например, OLED-дисплеи). Макет субпикселей ЖК-"
"дисплея глобально контролируется [member ProjectSettings.gui/theme/"
"lcd_subpixel_layout], что также позволяет вернуться к сглаживанию в оттенках "
"серого."

msgid ""
"List of font fallbacks to use if a glyph isn't found in this dynamic font. "
"Fonts at the beginning of the array are attempted first, but fallback fonts "
"that don't support the glyph's language and script are attempted last (see "
"[member language_support] and [member script_support]). See also [member "
"allow_system_fallback]."
msgstr ""
"Список резервных шрифтов для использования, если глиф не найден в этом "
"динамическом шрифте. Шрифты в начале массива пробуются первыми, но резервные "
"шрифты, которые не поддерживают язык и скрипт глифа, пробуются последними "
"(см. [member language_support] и [member script_support]). См. также [member "
"allow_system_fallback]."

msgid ""
"If [code]true[/code], forces generation of hinting data for the font using "
"[url=https://freetype.org/]FreeType[/url]'s autohinter. This will make "
"[member hinting] effective with fonts that don't include hinting data."
msgstr ""
"Если [code]true[/code], принудительно генерирует данные хинтинга для шрифта с "
"использованием [url=https://freetype.org/]FreeType[/url]'s autohinter. Это "
"сделает [member hinting] эффективным для шрифтов, которые не включают данные "
"хинтинга."

msgid ""
"If [code]true[/code], this font will have mipmaps generated. This prevents "
"text from looking grainy when a [Control] is scaled down, or when a [Label3D] "
"is viewed from a long distance (if [member Label3D.texture_filter] is set to "
"a mode that displays mipmaps).\n"
"Enabling [member generate_mipmaps] increases font generation time and memory "
"usage. Only enable this setting if you actually need it."
msgstr ""
"Если [code]true[/code], этот шрифт будет иметь сгенерированные mip-карты. Это "
"предотвращает зернистость текста при уменьшении масштаба [Control] или при "
"просмотре [Label3D] с большого расстояния (если [member "
"Label3D.texture_filter] установлен в режим, который отображает mip-карты). \n"
"Включение [member generate_mipmaps] увеличивает время генерации шрифта и "
"использование памяти. Включайте этот параметр только в том случае, если он "
"вам действительно нужен."

msgid ""
"The hinting mode to use. This controls how aggressively glyph edges should be "
"snapped to pixels when rasterizing the font. Depending on personal "
"preference, you may prefer using one hinting mode over the other. Hinting "
"modes other than [b]None[/b] are only effective if the font contains hinting "
"data (see [member force_autohinter]).\n"
"[b]None:[/b] Smoothest appearance, which can make the font look blurry at "
"small sizes.\n"
"[b]Light:[/b] Sharp result by snapping glyph edges to pixels on the Y axis "
"only.\n"
"[b]Full:[/b] Sharpest by snapping glyph edges to pixels on both X and Y axes."
msgstr ""
"Режим хинтинга для использования. Он контролирует, насколько агрессивно края "
"глифов должны быть привязаны к пикселям при растрировании шрифта. В "
"зависимости от личных предпочтений вы можете предпочесть использовать один "
"режим хинтинга другому. Режимы хинтинга, отличные от [b]None[/b], эффективны "
"только в том случае, если шрифт содержит данные хинтинга (см. [member "
"force_autohinter]).\n"
"[b]None:[/b] Самый плавный вид, из-за которого шрифт может выглядеть размытым "
"при малых размерах.\n"
"[b]Light:[/b] Резкий результат за счет привязки краев глифов к пикселям "
"только по оси Y.\n"
"[b]Full:[/b] Самый резкий результат за счет привязки краев глифов к пикселям "
"как по оси X, так и по оси Y."

msgid ""
"Override the list of languages supported by this font. If left empty, this is "
"supplied by the font metadata. There is usually no need to change this. See "
"also [member script_support]."
msgstr ""
"Переопределить список языков, поддерживаемых этим шрифтом. Если оставить "
"пустым, это будет предоставлено метаданными шрифта. Обычно нет необходимости "
"менять это. См. также [member script_support]."

msgid ""
"The width of the range around the shape between the minimum and maximum "
"representable signed distance. If using font outlines, [member "
"msdf_pixel_range] must be set to at least [i]twice[/i] the size of the "
"largest font outline. The default [member msdf_pixel_range] value of [code]8[/"
"code] allows outline sizes up to [code]4[/code] to look correct."
msgstr ""
"Ширина диапазона вокруг фигуры между минимальным и максимальным представимым "
"расстоянием со знаком. При использовании контуров шрифта [member "
"msdf_pixel_range] должен быть установлен как минимум в [i]дважды[/i] больше "
"размера самого большого контура шрифта. Значение [member msdf_pixel_range] по "
"умолчанию [code]8[/code] позволяет контурам размером до [code]4[/code] "
"выглядеть правильно."

msgid ""
"Source font size used to generate MSDF textures. Higher values allow for more "
"precision, but are slower to render and require more memory. Only increase "
"this value if you notice a visible lack of precision in glyph rendering. Only "
"effective if [member multichannel_signed_distance_field] is [code]true[/code]."
msgstr ""
"Размер исходного шрифта, используемый для генерации текстур MSDF. Более "
"высокие значения обеспечивают большую точность, но медленнее отрисовываются и "
"требуют больше памяти. Увеличивайте это значение только в том случае, если вы "
"заметили видимую неточность в отрисовке глифов. Эффективно только если "
"[member multichannel_signed_distance_field] имеет значение [code]true[/code]."

msgid ""
"If set to [code]true[/code], the font will use multichannel signed distance "
"field (MSDF) for crisp rendering at any size. Since this approach does not "
"rely on rasterizing the font every time its size changes, this allows for "
"resizing the font in real-time without any performance penalty. Text will "
"also not look grainy for [Control]s that are scaled down (or for [Label3D]s "
"viewed from a long distance).\n"
"MSDF font rendering can be combined with [member generate_mipmaps] to further "
"improve font rendering quality when scaled down."
msgstr ""
"Если установлено значение [code]true[/code], шрифт будет использовать "
"многоканальное поле расстояний со знаком (MSDF) для четкой визуализации при "
"любом размере. Поскольку этот подход не предполагает растеризацию шрифта "
"каждый раз при изменении его размера, это позволяет изменять размер шрифта в "
"реальном времени без потери производительности. Текст также не будет "
"выглядеть зернистым для [Control], которые масштабируются в уменьшенном "
"масштабе (или для [Label3D], просматриваемых с большого расстояния).\n"
"Рендеринг шрифта MSDF можно объединить с [member generate_mipmaps] для "
"дальнейшего улучшения качества визуализации шрифта при уменьшении масштаба."

msgid ""
"The OpenType features to enable, disable or set a value for this font. This "
"can be used to enable optional features provided by the font, such as "
"ligatures or alternative glyphs. The list of supported OpenType features "
"varies on a per-font basis."
msgstr ""
"Функции OpenType для включения, отключения или установки значения для этого "
"шрифта. Это может быть использовано для включения дополнительных функций, "
"предоставляемых шрифтом, таких как лигатуры или альтернативные глифы. Список "
"поддерживаемых функций OpenType зависит от шрифта."

msgid ""
"The glyph ranges to prerender. This can avoid stuttering during gameplay when "
"new characters need to be rendered, especially if [member "
"subpixel_positioning] is enabled. The downside of using preloading is that "
"initial project load times will increase, as well as memory usage."
msgstr ""
"Глиф варьируется в пределах предварительной визуализации. Это позволяет "
"избежать заиканий во время игры, когда необходимо отрисовывать новых "
"персонажей, особенно если включен [member subpixel_positioning]. Недостатком "
"использования preloading является то, что увеличится время начальной загрузки "
"проекта, а также использование памяти."

msgid ""
"Override the list of language scripts supported by this font. If left empty, "
"this is supplied by the font metadata. There is usually no need to change "
"this. See also [member language_support]."
msgstr ""
"Переопределить список поддерживаемых шрифтом языковых скриптов. Если оставить "
"пустым, это будет предоставлено метаданными шрифта. Обычно нет необходимости "
"менять это. См. также [member language_support]."

msgid ""
"Subpixel positioning improves font rendering appearance, especially at "
"smaller font sizes. The downside is that it takes more time to initially "
"render the font, which can cause stuttering during gameplay, especially if "
"used with large font sizes. This should be set to [b]Disabled[/b] for fonts "
"with a pixel art appearance.\n"
"[b]Disabled:[/b] No subpixel positioning. Lowest quality, fastest rendering.\n"
"[b]Auto:[/b] Use subpixel positioning at small font sizes (the chosen quality "
"varies depending on font size). Large fonts will not use subpixel "
"positioning. This is a good tradeoff between performance and quality.\n"
"[b]One Half of a Pixel:[/b] Always perform intermediate subpixel positioning "
"regardless of font size. High quality, slow rendering.\n"
"[b]One Quarter of a Pixel:[/b] Always perform precise subpixel positioning "
"regardless of font size. Highest quality, slowest rendering.\n"
"[b]Auto (Except Pixel Fonts):[/b] [b]Disabled[/b] for the pixel style fonts "
"(each glyph contours contain only straight horizontal and vertical lines), "
"[b]Auto[/b] for the other fonts."
msgstr ""
"Субпиксельное позиционирование улучшает внешний вид рендеринга шрифта, "
"особенно при небольших размерах шрифта. Недостатком является то, что "
"требуется больше времени для первоначальной отрисовки шрифта, что может "
"вызвать заикание во время игры, особенно при использовании больших размеров "
"шрифта. Это должно быть установлено на [b]Отключено[/b] для шрифтов с "
"пиксельным внешним видом.\n"
"[b]Отключено:[/b] Без субпиксельного позиционирования. Самое низкое качество, "
"самая быстрая отрисовка.\n"
"[b]Авто:[/b] Использовать субпиксельное позиционирование при малых размерах "
"шрифта (выбранное качество зависит от размера шрифта). Большие шрифты не "
"будут использовать субпиксельное позиционирование. Это хороший компромисс "
"между производительностью и качеством.\n"
"[b]Половина пикселя:[/b] Всегда выполнять промежуточное субпиксельное "
"позиционирование независимо от размера шрифта. Высокое качество, медленная "
"отрисовка.\n"
"[b]Четверть пикселя:[/b] Всегда выполнять точное субпиксельное "
"позиционирование независимо от размера шрифта. Самое высокое качество, самая "
"медленная отрисовка.\n"
"[b]Авто (кроме пиксельных шрифтов):[/b] [b]Отключено[/b] для шрифтов в "
"пиксельном стиле (контуры каждого глифа содержат только прямые горизонтальные "
"и вертикальные линии), [b]Авто[/b] для остальных шрифтов."

msgid "Imports an image for use in scripting, with no rendering capabilities."
msgstr ""
"Импортирует изображение для использования в скриптах, без возможности "
"рендеринга."

msgid ""
"This importer imports [Image] resources, as opposed to [CompressedTexture2D]. "
"If you need to render the image in 2D or 3D, use [ResourceImporterTexture] "
"instead."
msgstr ""
"Этот импортер импортирует ресурсы [Image], а не [CompressedTexture2D]. Если "
"вам нужно визуализировать изображение в 2D или 3D, используйте вместо этого "
"[ResourceImporterTexture]."

msgid "Imports a bitmap font where all glyphs have the same width and height."
msgstr ""
"Импортирует растровый шрифт, в котором все глифы имеют одинаковую ширину и "
"высоту."

msgid ""
"This image-based workflow can be easier to use than [ResourceImporterBMFont], "
"but it requires all glyphs to have the same width and height, glyph advances "
"and drawing offsets can be customized. This makes [ResourceImporterImageFont] "
"most suited to fixed-width fonts.\n"
"See also [ResourceImporterDynamicFont]."
msgstr ""
"Этот рабочий процесс на основе изображений может быть проще в использовании, "
"чем [ResourceImporterBMFont], но он требует, чтобы все глифы имели одинаковую "
"ширину и высоту, можно настраивать продвижение глифов и смещения рисования. "
"Это делает [ResourceImporterImageFont] наиболее подходящим для шрифтов с "
"фиксированной шириной.\n"
"См. также [ResourceImporterDynamicFont]."

msgid ""
"Font ascent (number of pixels above the baseline). If set to [code]0[/code], "
"half of the character height is used."
msgstr ""
"Подъем шрифта (количество пикселей над базовой линией). Если установлено "
"значение [code]0[/code], используется половина высоты символа."

msgid ""
"Margin applied around every imported glyph. If your font image contains "
"guides (in the form of lines between glyphs) or if spacing between characters "
"appears incorrect, try adjusting [member character_margin]."
msgstr ""
"Margin применяется вокруг каждого импортированного глифа. Если изображение "
"шрифта содержит направляющие (в виде линий между глифами) или если интервал "
"между символами выглядит неправильным, попробуйте настроить [member "
"character_margin]."

msgid ""
"The character ranges to import from the font image. This is an array that "
"maps each position on the image (in tile coordinates, not pixels). The font "
"atlas is traversed from left to right and top to bottom. Characters can be "
"specified with decimal numbers (127), hexadecimal numbers ([code]0x007f[/"
"code], or [code]U+007f[/code]) or between single quotes ([code]'~'[/code]). "
"Ranges can be specified with a hyphen between characters.\n"
"For example, [code]0-127[/code] represents the full ASCII range. It can also "
"be written as [code]0x0000-0x007f[/code] (or [code]U+0000-U+007f[/code]). As "
"another example, [code]' '-'~'[/code] is equivalent to [code]32-127[/code] "
"and represents the range of printable (visible) ASCII characters.\n"
"For any range, the character advance and offset can be customized by "
"appending three space-separated integer values (additional advance, x offset, "
"y offset) to the end. For example [code]'a'-'b' 4 5 2[/code] sets the advance "
"to [code]char_width + 4[/code] and offset to [code]Vector2(5, 2)[/code] for "
"both `a` and `b` characters.\n"
"[b]Note:[/b] The overall number of characters must not exceed the number of "
"[member columns] multiplied by [member rows]. Otherwise, the font will fail "
"to import."
msgstr ""
"Диапазоны символов для импорта из изображения шрифта. Это массив, который "
"отображает каждую позицию на изображении (в координатах плитки, а не в "
"пикселях). Атлас шрифтов просматривается слева направо и сверху вниз. Символы "
"можно указывать десятичными числами (127), шестнадцатеричными числами "
"([code]0x007f[/code] или [code]U+007f[/code]) или в одинарных кавычках "
"([code]'~'[/code]). Диапазоны можно указывать с помощью дефиса между "
"символами.\n"
"Например, [code]0-127[/code] представляет собой полный диапазон ASCII. Его "
"также можно записать как [code]0x0000-0x007f[/code] (или [code]U+0000-U+007f[/"
"code]). Другой пример: [code]' '-'~'[/code] эквивалентно [code]32-127[/code] "
"и представляет собой диапазон печатных (видимых) символов ASCII.\n"
"Для любого диапазона сдвиг и смещение можно настроить, добавив в конец три "
"целочисленных значения, разделенных пробелами (дополнительный сдвиг, смещение "
"по оси x, смещение по оси y). Например, [code]'a'-'b' 4 5 2[/code] "
"устанавливает сдвиг равным [code]char_width + 4[/code] и смещение равным "
"[code]Vector2(5, 2)[/code] для символов `a` и `b`.\n"
"[b]Примечание:[/b] Общее количество символов не должно превышать количество "
"[member columns], умноженное на [member rows]. В противном случае импорт "
"шрифта невозможен."

msgid "Number of columns in the font image. See also [member rows]."
msgstr "Количество столбцов в изображении шрифта. См. также [member rows]."

msgid ""
"Font descent (number of pixels below the baseline). If set to [code]0[/code], "
"half of the character height is used."
msgstr ""
"Снижение шрифта (количество пикселей ниже базовой линии). Если установлено "
"значение [code]0[/code], используется половина высоты символа."

msgid ""
"Margin to cut on the sides of the entire image. This can be used to cut parts "
"of the image that contain attribution information or similar."
msgstr ""
"Поле для обрезки по бокам всего изображения. Это можно использовать для "
"обрезки частей изображения, содержащих информацию об атрибуции или подобную "
"информацию."

msgid ""
"Kerning pairs for the font. Kerning pair adjust the spacing between two "
"characters.\n"
"Each string consist of three space separated values: \"from\" string, \"to\" "
"string and integer offset. Each combination form the two string for a kerning "
"pair, e.g, [code]ab cd -3[/code] will create kerning pairs [code]ac[/code], "
"[code]ad[/code], [code]bc[/code], and [code]bd[/code] with offset [code]-3[/"
"code]. [code]\\uXXXX[/code] escape sequences can be used to add Unicode "
"characters."
msgstr ""
"Кернинговые пары для шрифта. Кернинговые пары регулируют интервал между двумя "
"символами.\n"
"Каждая строка состоит из трех значений, разделенных пробелами: строка «from», "
"строка «to» и смещение целого числа. Каждая комбинация образует две строки "
"для кернинговой пары, например, [code]ab cd -3[/code] создаст кернинговые "
"пары [code]ac[/code], [code]ad[/code], [code]bc[/code] и [code]bd[/code] со "
"смещением [code]-3[/code]. Для добавления символов Unicode можно использовать "
"escape-последовательности [code]\\uXXXX[/code]."

msgid "Number of rows in the font image. See also [member columns]."
msgstr "Количество строк в изображении шрифта. См. также [member columns]."

msgid ""
"Imports a 3-dimensional texture ([Texture3D]), a [Texture2DArray], a "
"[Cubemap] or a [CubemapArray]."
msgstr ""
"Импортирует трехмерную текстуру ([Texture3D]), [Texture2DArray], [Cubemap] "
"или [Cubemap Array]."

msgid ""
"This imports a 3-dimensional texture, which can then be used in custom "
"shaders, as a [FogMaterial] density map or as a "
"[GPUParticlesAttractorVectorField3D]. See also [ResourceImporterTexture] and "
"[ResourceImporterTextureAtlas]."
msgstr ""
"Это импортирует 3-мерную текстуру, которую затем можно использовать в "
"пользовательских шейдерах, как карту плотности [FogMaterial] или как "
"[GPUParticlesAttractorVectorField3D]. См. также [ResourceImporterTexture] и "
"[ResourceImporterTextureAtlas]."

msgid ""
"Controls how color channels should be used in the imported texture.\n"
"[b]sRGB Friendly:[/b], prevents the RG color format from being used, as it "
"does not support sRGB color.\n"
"[b]Optimized:[/b], allows the RG color format to be used if the texture does "
"not use the blue channel. This reduces memory usage if the texture's blue "
"channel can be discarded (all pixels must have a blue value of [code]0[/"
"code]).\n"
"[b]Normal Map (RG Channels):[/b] This forces all layers from the texture to "
"be imported with the RG color format, with only the red and green channels "
"preserved. RGTC (Red-Green Texture Compression) compression is able to "
"preserve its detail much better, while using the same amount of memory as a "
"standard RGBA VRAM-compressed texture. This only has an effect on textures "
"with the VRAM Compressed or Basis Universal compression modes. This mode is "
"only available in layered textures ([Cubemap], [CubemapArray], "
"[Texture2DArray] and [Texture3D])."
msgstr ""
"Управляет тем, как должны использоваться цветовые каналы в импортированной "
"текстуре.\n"
"[b]sRGB Friendly:[/b], предотвращает использование формата цвета RG, так как "
"он не поддерживает цвет sRGB.\n"
"[b]Optimized:[/b], позволяет использовать формат цвета RG, если текстура не "
"использует синий канал. Это уменьшает использование памяти, если синий канал "
"текстуры можно отбросить (все пиксели должны иметь значение синего [code]0[/"
"code]).\n"
"[b]Normal Map (RG Channels):[/b] Это заставляет все слои текстуры "
"импортироваться с форматом цвета RG, сохраняя только красный и зеленый "
"каналы. Сжатие RGTC (Red-Green Texture Compression) позволяет намного лучше "
"сохранять детализацию, используя при этом тот же объем памяти, что и "
"стандартная текстура RGBA, сжатая VRAM. Это влияет только на текстуры с "
"режимами сжатия VRAM Compressed или Basis Universal. Этот режим доступен "
"только в многослойных текстурах ([Cubemap], [CubemapArray], [Texture2DArray] "
"и [Texture3D])."

msgid ""
"Controls how VRAM compression should be performed for HDR images.\n"
"[b]Disabled:[/b] Never use VRAM compression for HDR textures, regardless of "
"whether they're opaque or transparent. Instead, the texture is converted to "
"RGBE9995 (9-bits per channel + 5-bit exponent = 32 bits per pixel) to reduce "
"memory usage compared to a half-float or single-precision float image "
"format.\n"
"[b]Opaque Only:[/b] Only uses VRAM compression for opaque HDR textures. This "
"is due to a limitation of HDR formats, as there is no VRAM-compressed HDR "
"format that supports transparency at the same time.\n"
"[b]Always:[/b] Force VRAM compression even for HDR textures with an alpha "
"channel. To perform this, the alpha channel is discarded on import.\n"
"[b]Note:[/b] Only effective on Radiance HDR ([code].hdr[/code]) and OpenEXR "
"([code].exr[/code]) images."
msgstr ""
"Управляет тем, как должно выполняться сжатие VRAM для HDR-изображений.\n"
"[b]Отключено:[/b] Никогда не использовать сжатие VRAM для HDR-текстур, "
"независимо от того, являются ли они непрозрачными или прозрачными. Вместо "
"этого текстура преобразуется в RGBE9995 (9 бит на канал + 5-битная экспонента "
"= 32 бита на пиксель) для снижения использования памяти по сравнению с "
"форматом изображения с плавающей точкой с половинной или одинарной "
"точностью.\n"
"[b]Только непрозрачные:[/b] Использует сжатие VRAM только для непрозрачных "
"HDR-текстур. Это связано с ограничением форматов HDR, поскольку нет формата "
"HDR со сжатием VRAM, который одновременно поддерживает прозрачность.\n"
"[b]Всегда:[/b] Принудительно применять сжатие VRAM даже для HDR-текстур с "
"альфа-каналом. Для этого альфа-канал отбрасывается при импорте.\n"
"[b]Примечание:[/b] Эффективно только для изображений Radiance HDR "
"([code].hdr[/code]) и OpenEXR ([code].exr[/code])."

msgid ""
"If [code]true[/code], uses BPTC compression on desktop platforms and ASTC "
"compression on mobile platforms. When using BPTC, BC7 is used for SDR "
"textures and BC6H is used for HDR textures.\n"
"If [code]false[/code], uses the faster but lower-quality S3TC compression on "
"desktop platforms and ETC2 on mobile/web platforms. When using S3TC, DXT1 "
"(BC1) is used for opaque textures and DXT5 (BC3) is used for transparent or "
"normal map (RGTC) textures.\n"
"BPTC and ASTC support VRAM compression for HDR textures, but S3TC and ETC2 do "
"not (see [member compress/hdr_compression])."
msgstr ""
"Если [code]true[/code], используется сжатие BPTC на настольных платформах и "
"сжатие ASTC на мобильных платформах. При использовании BPTC для текстур SDR "
"используется BC7, а для текстур HDR — BC6H.\n"
"Если [code]false[/code], используется более быстрое, но менее качественное "
"сжатие S3TC на настольных платформах и ETC2 на мобильных/веб-платформах. При "
"использовании S3TC для непрозрачных текстур используется DXT1 (BC1), а для "
"прозрачных или текстур карты нормалей (RGTC) — DXT5 (BC3).\n"
"BPTC и ASTC поддерживают сжатие VRAM для текстур HDR, но S3TC и ETC2 — нет "
"(см. [member compress/hdr_compression])."

msgid ""
"The quality to use when using the [b]Lossy[/b] compression mode. Higher "
"values result in better quality, at the cost of larger file sizes. Lossy "
"quality does not affect memory usage of the imported texture, only its file "
"size on disk."
msgstr ""
"Качество, используемое при использовании режима сжатия [b]Lossy[/b]. Более "
"высокие значения дают лучшее качество за счет большего размера файла. "
"Качество с потерями не влияет на использование памяти импортированной "
"текстурой, а только на размер файла на диске."

msgid ""
"The compression mode to use. Each compression mode provides a different "
"tradeoff:\n"
"[b]Lossless[/b]: Original quality, high memory usage, high size on disk, fast "
"import.\n"
"[b]Lossy:[/b] Reduced quality, high memory usage, low size on disk, fast "
"import.\n"
"[b]VRAM Compressed:[/b] Reduced quality, low memory usage, low size on disk, "
"slowest import. Only use for textures in 3D scenes, not for 2D elements.\n"
"[b]VRAM Uncompressed:[/b] Original quality, high memory usage, highest size "
"on disk, fastest import.\n"
"[b]Basis Universal:[/b] Reduced quality, low memory usage, lowest size on "
"disk, slow import. Only use for textures in 3D scenes, not for 2D elements.\n"
"See [url=$DOCS_URL/tutorials/assets_pipeline/importing_images.html#compress-"
"mode]Compress mode[/url] in the manual for more details."
msgstr ""
"Режим сжатия для использования. Каждый режим сжатия обеспечивает свой "
"компромисс:\n"
"[b]Без потерь[/b]: Исходное качество, высокое использование памяти, большой "
"размер на диске, быстрый импорт.\n"
"[b]С потерями:[/b] Пониженное качество, высокое использование памяти, малый "
"размер на диске, быстрый импорт.\n"
"[b]Сжатый VRAM:[/b] Пониженное качество, низкое использование памяти, малый "
"размер на диске, самый медленный импорт. Использовать только для текстур в 3D-"
"сценах, но не для 2D-элементов.\n"
"[b]Несжатый VRAM:[/b] Исходное качество, высокое использование памяти, самый "
"большой размер на диске, самый быстрый импорт.\n"
"[b]Базовый универсальный:[/b] Пониженное качество, низкое использование "
"памяти, самый маленький размер на диске, медленный импорт. Использовать "
"только для текстур в 3D-сценах, но не для 2D-элементов.\n"
"Более подробную информацию см. в разделе [url=$DOCS_URL/tutorials/"
"assets_pipeline/importing_images.html#compress-mode]Режим сжатия[/url] в "
"руководстве."

msgid ""
"If greater than or equal to [code]0.01[/code], enables Rate-Distortion "
"Optimization (RDO) to reduce file size. Higher values result in smaller file "
"sizes but lower quality.\n"
"[b]Note:[/b] Enabling RDO makes encoding times significantly longer, "
"especially when the image is large.\n"
"See also [member ProjectSettings.rendering/textures/basis_universal/"
"rdo_dict_size] and [member ProjectSettings.rendering/textures/basis_universal/"
"zstd_supercompression_level] if you want to reduce the file size further."
msgstr ""
"Если больше или равно [code]0.01[/code], включается оптимизация скорости "
"искажения (RDO) для уменьшения размера файла. Более высокие значения приводят "
"к меньшему размеру файла, но к более низкому качеству.\n"
"[b]Примечание:[/b] Включение RDO значительно увеличивает время кодирования, "
"особенно если изображение большое.\n"
"См. также [member ProjectSettings.rendering/textures/basis_universal/"
"rdo_dict_size] и [member ProjectSettings.rendering/textures/basis_universal/"
"zstd_supercompression_level], если вы хотите еще больше уменьшить размер "
"файла."

msgid ""
"The UASTC encoding level. Higher values result in better quality but make "
"encoding times longer."
msgstr ""
"Уровень кодирования UASTC. Более высокие значения обеспечивают лучшее "
"качество, но увеличивают время кодирования."

msgid ""
"If [code]true[/code], smaller versions of the texture are generated on "
"import. For example, a 64×64 texture will generate 6 mipmaps (32×32, 16×16, "
"8×8, 4×4, 2×2, 1×1). This has several benefits:\n"
"- Textures will not become grainy in the distance (in 3D), or if scaled down "
"due to [Camera2D] zoom or [CanvasItem] scale (in 2D).\n"
"- Performance will improve if the texture is displayed in the distance, since "
"sampling smaller versions of the original texture is faster and requires less "
"memory bandwidth.\n"
"The downside of mipmaps is that they increase memory usage by roughly 33% "
"(for [Texture2DArray], [Cubemap] and [CubemapArray]) or 14% (for "
"[Texture3D]).\n"
"It's recommended to enable mipmaps in 3D. However, in 2D, this should only be "
"enabled if your project visibly benefits from having mipmaps enabled. If the "
"camera never zooms out significantly, there won't be a benefit to enabling "
"mipmaps but memory usage will increase."
msgstr ""
"Если [code]true[/code], при импорте генерируются меньшие версии текстуры. "
"Например, текстура 64×64 сгенерирует 6 mip-карт (32×32, 16×16, 8×8, 4×4, 2×2, "
"1×1). Это имеет несколько преимуществ:\n"
"- Текстуры не станут зернистыми на расстоянии (в 3D) или при уменьшении "
"масштаба из-за масштабирования [Camera2D] или масштабирования [CanvasItem] (в "
"2D).\n"
"- Производительность улучшится, если текстура будет отображаться на "
"расстоянии, поскольку выборка меньших версий исходной текстуры выполняется "
"быстрее и требует меньше пропускной способности памяти.\n"
"Недостатком mip-карт является то, что они увеличивают использование памяти "
"примерно на 33% (для [Texture2DArray], [Cubemap] и [CubemapArray]) или на 14% "
"(для [Texture3D]).\n"
"Рекомендуется включить mip-карты в 3D. Однако в 2D это следует включать "
"только в том случае, если ваш проект явно выигрывает от включения mip-карт. "
"Если камера никогда не отдаляется значительно, то включение mip-карт не даст "
"никаких преимуществ, но использование памяти увеличится."

msgid "Unimplemented. This currently has no effect when changed."
msgstr ""
"Не реализовано. В настоящее время это не имеет никакого эффекта при изменении."

msgid ""
"Controls how the cubemap's texture is internally laid out. When using high-"
"resolution cubemaps, [b]2×3[/b] and [b]3×2[/b] are less prone to exceeding "
"hardware texture size limits compared to [b]1×6[/b] and [b]6×1[/b]."
msgstr ""
"Управляет тем, как текстура кубической карты внутренне выложена. При "
"использовании кубических карт высокого разрешения [b]2×3[/b] и [b]3×2[/b] "
"менее склонны к превышению ограничений на размер аппаратной текстуры по "
"сравнению с [b]1×6[/b] и [b]6×1[/b]."

msgid "Imports an MP3 audio file for playback."
msgstr "Импортирует аудиофайл MP3 для воспроизведения."

msgid ""
"MP3 is a lossy audio format, with worse audio quality compared to "
"[ResourceImporterOggVorbis] at a given bitrate.\n"
"In most cases, it's recommended to use Ogg Vorbis over MP3. However, if "
"you're using an MP3 sound source with no higher quality source available, "
"then it's recommended to use the MP3 file directly to avoid double lossy "
"compression.\n"
"MP3 requires more CPU to decode than [ResourceImporterWAV]. If you need to "
"play a lot of simultaneous sounds, it's recommended to use WAV for those "
"sounds instead, especially if targeting low-end devices."
msgstr ""
"MP3 — это формат аудио с потерями, с худшим качеством звука по сравнению с "
"[ResourceImporterOggVorbis] при заданном битрейте.\n"
"В большинстве случаев рекомендуется использовать Ogg Vorbis вместо MP3. "
"Однако, если вы используете источник звука MP3 без более качественного "
"источника, рекомендуется использовать файл MP3 напрямую, чтобы избежать "
"двойного сжатия с потерями.\n"
"MP3 требует больше ресурсов ЦП для декодирования, чем [ResourceImporterWAV]. "
"Если вам нужно воспроизводить много одновременных звуков, рекомендуется "
"использовать для этих звуков WAV, особенно если вы ориентируетесь на "
"бюджетные устройства."

msgid "Importing audio samples"
msgstr "Импорт аудиосэмплов"

msgid ""
"The number of bars within a single beat in the audio track. This is only "
"relevant for music that wishes to make use of interactive music "
"functionality, not sound effects.\n"
"A more convenient editor for [member bar_beats] is provided in the "
"[b]Advanced Import Settings[/b] dialog, as it lets you preview your changes "
"without having to reimport the audio."
msgstr ""
"Количество тактов в пределах одного такта в звуковой дорожке. Это актуально "
"только для музыки, которая хочет использовать интерактивные музыкальные "
"функции, а не звуковые эффекты.\n"
"Более удобный редактор для [member bar_beats] представлен в диалоговом окне "
"[b]Расширенные настройки импорта[/b], поскольку он позволяет вам "
"предварительно просматривать изменения без необходимости повторного импорта "
"аудио."

msgid ""
"The beat count of the audio track. This is only relevant for music that "
"wishes to make use of interactive music functionality, not sound effects.\n"
"A more convenient editor for [member beat_count] is provided in the "
"[b]Advanced Import Settings[/b] dialog, as it lets you preview your changes "
"without having to reimport the audio."
msgstr ""
"Количество ударов аудиодорожки. Это актуально только для музыки, которая "
"хочет использовать интерактивную музыкальную функциональность, а не звуковые "
"эффекты.\n"
"Более удобный редактор для [member beat_count] представлен в диалоговом окне "
"[b]Расширенные настройки импорта[/b], так как он позволяет вам предварительно "
"просматривать изменения без необходимости повторного импорта аудио."

msgid ""
"The beats per minute of the audio track. This should match the BPM measure "
"that was used to compose the track. This is only relevant for music that "
"wishes to make use of interactive music functionality, not sound effects.\n"
"A more convenient editor for [member bpm] is provided in the [b]Advanced "
"Import Settings[/b] dialog, as it lets you preview your changes without "
"having to reimport the audio."
msgstr ""
"Удары в минуту аудиодорожки. Это должно соответствовать показателю BPM, "
"который использовался для создания дорожки. Это актуально только для музыки, "
"которая хочет использовать интерактивную музыкальную функциональность, а не "
"звуковые эффекты.\n"
"Более удобный редактор для [member bpm] предоставляется в диалоговом окне "
"[b]Расширенные настройки импорта[/b], так как он позволяет вам предварительно "
"просматривать ваши изменения без необходимости повторного импорта аудио."

msgid ""
"If enabled, the audio will begin playing at the beginning after playback ends "
"by reaching the end of the audio.\n"
"[b]Note:[/b] In [AudioStreamPlayer], the [signal AudioStreamPlayer.finished] "
"signal won't be emitted for looping audio when it reaches the end of the "
"audio file, as the audio will keep playing indefinitely."
msgstr ""
"Если включено, аудио начнет воспроизводиться с начала после завершения "
"воспроизведения по достижении конца аудио.\n"
"[b]Примечание:[/b] В [AudioStreamPlayer] сигнал [signal "
"AudioStreamPlayer.finished] не будет выдаваться для зацикливания аудио при "
"достижении конца аудиофайла, поскольку аудио будет воспроизводиться "
"бесконечно."

msgid ""
"Determines where audio will start to loop after playback reaches the end of "
"the audio. This can be used to only loop a part of the audio file, which is "
"useful for some ambient sounds or music. The value is determined in seconds "
"relative to the beginning of the audio. A value of [code]0.0[/code] will loop "
"the entire audio file.\n"
"Only has an effect if [member loop] is [code]true[/code].\n"
"A more convenient editor for [member loop_offset] is provided in the "
"[b]Advanced Import Settings[/b] dialog, as it lets you preview your changes "
"without having to reimport the audio."
msgstr ""
"Определяет, где аудио начнет цикл после того, как воспроизведение достигнет "
"конца аудио. Это можно использовать для циклического воспроизведения только "
"части аудиофайла, что полезно для некоторых окружающих звуков или музыки. "
"Значение определяется в секундах относительно начала аудио. Значение "
"[code]0.0[/code] зациклит весь аудиофайл.\n"
"Действует только в том случае, если [member loop] равно [code]true[/code].\n"
"Более удобный редактор для [member loop_offset] представлен в диалоговом окне "
"[b]Расширенные параметры импорта[/b], поскольку он позволяет предварительно "
"просматривать изменения без необходимости повторного импорта аудио."

msgid "Imports an OBJ 3D model as an independent [Mesh] or scene."
msgstr "Импортирует 3D-модель OBJ как независимую [Mesh] или сцену."

msgid ""
"Unlike [ResourceImporterScene], [ResourceImporterOBJ] will import a single "
"[Mesh] resource by default instead of importing a [PackedScene]. This makes "
"it easier to use the [Mesh] resource in nodes that expect direct [Mesh] "
"resources, such as [GridMap], [GPUParticles3D] or [CPUParticles3D]. Note that "
"it is still possible to save mesh resources from 3D scenes using the "
"[b]Advanced Import Settings[/b] dialog, regardless of the source format.\n"
"See also [ResourceImporterScene], which is used for more advanced 3D formats "
"such as glTF."
msgstr ""
"В отличие от [ResourceImporterScene], [ResourceImporterOBJ] импортирует один "
"ресурс [Mesh] по умолчанию вместо импорта [PackedScene]. Это упрощает "
"использование ресурса [Mesh] в узлах, которые ожидают прямые ресурсы [Mesh], "
"такие как [GridMap], [GPUParticles3D] или [CPUParticles3D]. Обратите "
"внимание, что по-прежнему возможно сохранять ресурсы сетки из 3D-сцен с "
"помощью диалогового окна [b]Расширенные параметры импорта[/b], независимо от "
"исходного формата.\n"
"См. также [ResourceImporterScene], который используется для более продвинутых "
"3D-форматов, таких как glTF."

msgid "Importing 3D scenes"
msgstr "Импорт 3D-сцен"

msgid ""
"If [code]true[/code], mesh compression will not be used. Consider enabling if "
"you notice blocky artifacts in your mesh normals or UVs, or if you have "
"meshes that are larger than a few thousand meters in each direction."
msgstr ""
"Если [code]true[/code], сжатие сетки не будет использоваться. Рассмотрите "
"возможность включения, если вы заметили блочные артефакты в нормалях сетки "
"или UV, или если у вас есть сетки, которые больше нескольких тысяч метров в "
"каждом направлении."

msgid "If [code]true[/code], generates UV2 on import for [LightmapGI] baking."
msgstr ""
"Если [code]true[/code], генерирует UV2 при импорте для запекания [LightmapGI]."

msgid ""
"Controls the size of each texel on the baked lightmap. A smaller value "
"results in more precise lightmaps, at the cost of larger lightmap sizes and "
"longer bake times.\n"
"[b]Note:[/b] Only effective if [member generate_lightmap_uv2] is [code]true[/"
"code]."
msgstr ""
"Управляет размером каждого текселя на запеченной карте освещения. Меньшее "
"значение приводит к более точным картам освещения за счет большего размера "
"карты освещения и более длительного времени запекания.\n"
"[b]Примечание:[/b] Эффективно только если [member generate_lightmap_uv2] "
"равен [code]true[/code]."

msgid ""
"If [code]true[/code], generates lower detail variants of the mesh which will "
"be displayed in the distance to improve rendering performance. Not all meshes "
"benefit from LOD, especially if they are never rendered from far away. "
"Disabling this can reduce output file size and speed up importing. See "
"[url=$DOCS_URL/tutorials/3d/mesh_lod.html#doc-mesh-lod]Mesh level of detail "
"(LOD)[/url] for more information."
msgstr ""
"Если [code]true[/code], генерирует варианты сетки с более низкой степенью "
"детализации, которые будут отображаться на расстоянии для повышения "
"производительности рендеринга. Не все сетки выигрывают от LOD, особенно если "
"они никогда не визуализируются издалека. Отключение этого может уменьшить "
"размер выходного файла и ускорить импорт. См. [url=$DOCS_URL/tutorials/3d/"
"mesh_lod.html#doc-mesh-lod]Уровень детализации сетки (LOD)[/url] для "
"получения дополнительной информации."

msgid ""
"If [code]true[/code], enables the generation of shadow meshes on import. This "
"optimizes shadow rendering without reducing quality by welding vertices "
"together when possible. This in turn reduces the memory bandwidth required to "
"render shadows. Shadow mesh generation currently doesn't support using a "
"lower detail level than the source mesh (but shadow rendering will make use "
"of LODs when relevant)."
msgstr ""
"Если [code]true[/code], включает генерацию теневых сеток при импорте. Это "
"оптимизирует рендеринг теней без снижения качества путем объединения вершин, "
"когда это возможно. Это, в свою очередь, снижает пропускную способность "
"памяти, необходимую для рендеринга теней. Генерация теневых сеток в настоящее "
"время не поддерживает использование более низкого уровня детализации, чем "
"исходная сетка (но рендеринг теней будет использовать LOD, когда это уместно)."

msgid ""
"If [code]true[/code], generate vertex tangents using [url=http://"
"www.mikktspace.com/]Mikktspace[/url] if the source mesh doesn't have tangent "
"data. When possible, it's recommended to let the 3D modeling software "
"generate tangents on export instead on relying on this option. Tangents are "
"required for correct display of normal and height maps, along with any "
"material/shader features that require tangents.\n"
"If you don't need material features that require tangents, disabling this can "
"reduce output file size and speed up importing if the source 3D file doesn't "
"contain tangents."
msgstr ""
"Если [code]true[/code], сгенерируйте касательные вершин с помощью [url=http://"
"www.mikktspace.com/]Mikktspace[/url], если исходная сетка не имеет данных "
"касательных. Когда это возможно, рекомендуется позволить программному "
"обеспечению для 3D-моделирования генерировать касательные при экспорте вместо "
"того, чтобы полагаться на эту опцию. Касательные требуются для правильного "
"отображения карт нормалей и высот, а также любых функций материалов/шейдеров, "
"которым требуются касательные.\n"
"Если вам не нужны функции материалов, которым требуются касательные, "
"отключение этого параметра может уменьшить размер выходного файла и ускорить "
"импорт, если исходный 3D-файл не содержит касательных."

msgid ""
"Offsets the mesh's data by the specified value. This can be used to work "
"around misaligned meshes without having to modify the source file."
msgstr ""
"Смещает данные сетки на указанное значение. Это можно использовать для обхода "
"невыровненных сеток без необходимости изменять исходный файл."

msgid ""
"Scales the mesh's data by the specified value. This can be used to work "
"around misscaled meshes without having to modify the source file."
msgstr ""
"Масштабирует данные сетки на указанное значение. Это можно использовать для "
"обхода немасштабированных сеток без необходимости изменять исходный файл."

msgid "Imports an Ogg Vorbis audio file for playback."
msgstr "Импортирует аудиофайл Ogg Vorbis для воспроизведения."

msgid ""
"Ogg Vorbis is a lossy audio format, with better audio quality compared to "
"[ResourceImporterMP3] at a given bitrate.\n"
"In most cases, it's recommended to use Ogg Vorbis over MP3. However, if "
"you're using an MP3 sound source with no higher quality source available, "
"then it's recommended to use the MP3 file directly to avoid double lossy "
"compression.\n"
"Ogg Vorbis requires more CPU to decode than [ResourceImporterWAV]. If you "
"need to play a lot of simultaneous sounds, it's recommended to use WAV for "
"those sounds instead, especially if targeting low-end devices."
msgstr ""
"Ogg Vorbis — это аудиоформат с потерями, с лучшим качеством звука по "
"сравнению с [ResourceImporterMP3] при заданном битрейте.\n"
"В большинстве случаев рекомендуется использовать Ogg Vorbis вместо MP3. "
"Однако, если вы используете источник звука MP3 без более качественного "
"источника, рекомендуется использовать файл MP3 напрямую, чтобы избежать "
"двойного сжатия с потерями.\n"
"Ogg Vorbis требует больше ресурсов ЦП для декодирования, чем "
"[ResourceImporterWAV]. Если вам нужно воспроизводить много одновременных "
"звуков, рекомендуется использовать для этих звуков WAV, особенно если вы "
"ориентируетесь на бюджетные устройства."

msgid "Use [method AudioStreamOggVorbis.load_from_buffer] instead."
msgstr ""
"Вместо этого используйте [method AudioStreamOggVorbis.load_from_buffer]."

msgid "Use [method AudioStreamOggVorbis.load_from_file] instead."
msgstr "Вместо этого используйте [method AudioStreamOggVorbis.load_from_file]."

msgid "Imports a glTF, FBX, COLLADA, or Blender 3D scene."
msgstr "Импортирует сцену glTF, FBX, COLLADA или Blender 3D."

msgid ""
"See also [ResourceImporterOBJ], which is used for OBJ models that can be "
"imported as an independent [Mesh] or a scene.\n"
"Additional options (such as extracting individual meshes or materials to "
"files) are available in the [b]Advanced Import Settings[/b] dialog. This "
"dialog can be accessed by double-clicking a 3D scene in the FileSystem dock "
"or by selecting a 3D scene in the FileSystem dock, going to the Import dock "
"and choosing [b]Advanced[/b].\n"
"[b]Note:[/b] [ResourceImporterScene] is [i]not[/i] used for [PackedScene]s, "
"such as [code].tscn[/code] and [code].scn[/code] files."
msgstr ""
"См. также [ResourceImporterOBJ], который используется для моделей OBJ, "
"которые можно импортировать как независимую [Mesh] или сцену.\n"
"Дополнительные параметры (например, извлечение отдельных сеток или материалов "
"в файлы) доступны в диалоговом окне [b]Расширенные параметры импорта[/b]. "
"Доступ к этому диалоговому окну можно получить, дважды щелкнув 3D-сцену в "
"доке FileSystem или выбрав 3D-сцену в доке FileSystem, перейдя в док Import и "
"выбрав [b]Расширенный[/b].\n"
"[b]Примечание:[/b] [ResourceImporterScene] [i]не[/i] используется для "
"[PackedScene], таких как файлы [code].tscn[/code] и [code].scn[/code]."

msgid ""
"Contains properties for the scene's subresources. This is an internal option "
"which is not visible in the Import dock."
msgstr ""
"Содержит свойства для подресурсов сцены. Это внутренняя опция, которая не "
"видна в Доке импорта."

msgid ""
"The number of frames per second to use for baking animation curves to a "
"series of points with linear interpolation. It's recommended to configure "
"this value to match the value you're using as a baseline in your 3D modeling "
"software. Higher values result in more precise animation with fast movement "
"changes, at the cost of higher file sizes and memory usage. Thanks to "
"interpolation, there is usually not much benefit in going above 30 FPS (as "
"the animation will still appear smooth at higher rendering framerates)."
msgstr ""
"Число кадров в секунду, используемое для запекания кривых анимации в серии "
"точек с линейной интерполяцией. Рекомендуется настроить это значение так, "
"чтобы оно соответствовало значению, которое вы используете в качестве "
"базового в вашем программном обеспечении для 3D-моделирования. Более высокие "
"значения приводят к более точной анимации с быстрыми изменениями движения, за "
"счет более высоких размеров файлов и использования памяти. Благодаря "
"интерполяции обычно нет особой выгоды от перехода выше 30 FPS (поскольку "
"анимация все равно будет выглядеть плавной при более высокой частоте кадров "
"рендеринга)."

msgid "If [code]true[/code], import animations from the 3D scene."
msgstr "Если [code]true[/code], импортировать анимацию из 3D-сцены."

msgid ""
"If [code]true[/code], adds an [Animation] named [code]RESET[/code], "
"containing the [method Skeleton3D.get_bone_rest] from [Skeleton3D] nodes. "
"This can be useful to extract an animation in the reference pose."
msgstr ""
"Если [code]true[/code], добавляет [Animation] с именем [code]RESET[/code], "
"содержащий [method Skeleton3D.get_bone_rest] из узлов [Skeleton3D]. Это может "
"быть полезно для извлечения анимации в опорной позе."

msgid ""
"If [code]true[/code], remove animation tracks that only contain default "
"values. This can reduce output file size and memory usage with certain 3D "
"scenes, depending on the contents of their animation tracks."
msgstr ""
"Если [code]true[/code], удалить дорожки анимации, которые содержат только "
"значения по умолчанию. Это может уменьшить размер выходного файла и "
"использование памяти для определенных 3D-сцен, в зависимости от содержимого "
"их дорожек анимации."

msgid ""
"If [code]true[/code], trim the beginning and end of animations if there are "
"no keyframe changes. This can reduce output file size and memory usage with "
"certain 3D scenes, depending on the contents of their animation tracks."
msgstr ""
"Если [code]true[/code], обрезает начало и конец анимации, если нет изменений "
"ключевых кадров. Это может уменьшить размер выходного файла и использование "
"памяти для определенных 3D-сцен, в зависимости от содержимого их анимационных "
"дорожек."

msgid ""
"Path to an import script, which can run code after the import process has "
"completed for custom processing. See [url=$DOCS_URL/tutorials/assets_pipeline/"
"importing_3d_scenes/import_configuration.html#using-import-scripts-for-"
"automation]Using import scripts for automation[/url] for more information."
msgstr ""
"Путь к скрипту импорта, который может запустить код после завершения процесса "
"импорта для пользовательской обработки. См. [url=$DOCS_URL/tutorials/"
"assets_pipeline/importing_3d_scenes/import_configuration.html#using-import-"
"scripts-for-automation]Использование скриптов импорта для автоматизации[/url] "
"для получения дополнительной информации."

msgid ""
"Material extraction mode.\n"
"- [code]0 (Keep Internal)[/code], materials are not extracted.\n"
"- [code]1 (Extract Once)[/code], materials are extracted once and reused on "
"subsequent import.\n"
"- [code]2 (Extract and Overwrite)[/code], materials are extracted and "
"overwritten on every import."
msgstr ""
"Режим извлечения материала.\n"
"- [code]0 (Keep Internal)[/code], материалы не извлекаются.\n"
"- [code]1 (Extract Once)[/code], Материалы извлекаются один раз и повторно "
"используются при последующем импорте.\n"
"- [code]2 (Extract and Overwrite)[/code], Материалы извлекаются и "
"перезаписываются при каждом импорте."

msgid ""
"Extracted material file format.\n"
"- [code]0 (Text)[/code], text file format ([code]*.tres[/code]).\n"
"- [code]1 (Binary)[/code], binary file format ([code]*.res[/code]).\n"
"- [code]2 (Material)[/code], binary file format ([code]*.material[/code])."
msgstr ""
"Формат файла извлеченного материала.\n"
"- [code]0 (Text)[/code], формат текстового файла ([code]*.tres[/code]).\n"
"- [code]1 (Binary)[/code], двоичный формат файла ([code]*.res[/code]).\n"
"- [code]2 (Material)[/code], двоичный формат файла ([code]*.material[/code])."

msgid ""
"Path extracted materials are saved to. If empty, source scene path is used."
msgstr ""
"Путь, по которому сохраняются извлеченные материалы. Если путь пуст, "
"используется путь к исходной сцене."

msgid ""
"If [code]true[/code], generate vertex tangents using [url=http://"
"www.mikktspace.com/]Mikktspace[/url] if the input meshes don't have tangent "
"data. When possible, it's recommended to let the 3D modeling software "
"generate tangents on export instead on relying on this option. Tangents are "
"required for correct display of normal and height maps, along with any "
"material/shader features that require tangents.\n"
"If you don't need material features that require tangents, disabling this can "
"reduce output file size and speed up importing if the source 3D file doesn't "
"contain tangents."
msgstr ""
"Если [code]true[/code], сгенерируйте касательные вершин с помощью [url=http://"
"www.mikktspace.com/]Mikktspace[/url], если входные сетки не имеют данных "
"касательных. Когда это возможно, рекомендуется позволить программному "
"обеспечению для 3D-моделирования генерировать касательные при экспорте вместо "
"того, чтобы полагаться на эту опцию. Касательные требуются для правильного "
"отображения карт нормалей и высот, а также любых функций материалов/шейдеров, "
"которым требуются касательные.\n"
"Если вам не нужны функции материалов, которым требуются касательные, "
"отключение этого параметра может уменьшить размер выходного файла и ускорить "
"импорт, если исходный 3D-файл не содержит касательных."

msgid ""
"Configures the meshes' [member GeometryInstance3D.gi_mode] in the 3D scene. "
"If set to [b]Static Lightmaps[/b], sets the meshes' GI mode to Static and "
"generates UV2 on import for [LightmapGI] baking."
msgstr ""
"Настраивает [member GeometryInstance3D.gi_mode] сеток в 3D-сцене. Если "
"установлено значение [b]Static Lightmaps[/b], устанавливает режим GI сеток на "
"Static и генерирует UV2 при импорте для запекания [LightmapGI]."

msgid ""
"Controls the size of each texel on the baked lightmap. A smaller value "
"results in more precise lightmaps, at the cost of larger lightmap sizes and "
"longer bake times.\n"
"[b]Note:[/b] Only effective if [member meshes/light_baking] is set to "
"[b]Static Lightmaps[/b]."
msgstr ""
"Управляет размером каждого текселя на запеченной карте освещения. Меньшее "
"значение приводит к более точным картам освещения за счет большего размера "
"карты освещения и более длительного времени запекания.\n"
"[b]Примечание:[/b] Эффективно только если [member meshes/light_baking] "
"установлен на [b]Static Lightmaps[/b]."

msgid ""
"If [code]true[/code], [member nodes/root_scale] will be applied to the "
"descendant nodes, meshes, animations, bones, etc. This means that if you add "
"a child node later on within the imported scene, it won't be scaled. If "
"[code]false[/code], [member nodes/root_scale] will multiply the scale of the "
"root node instead."
msgstr ""
"Если [code]true[/code], [member nodes/root_scale] будет применен к дочерним "
"узлам, сеткам, анимациям, костям и т. д. Это означает, что если вы добавите "
"дочерний узел позже в импортированную сцену, он не будет масштабироваться. "
"Если [code]false[/code], [member nodes/root_scale] вместо этого умножит "
"масштаб корневого узла."

msgid ""
"Treat all nodes in the imported scene as if they are bones within a single "
"[Skeleton3D]. Can be used to guarantee that imported animations target "
"skeleton bones rather than nodes. May also be used to assign the [code]"
"\"Root\"[/code] bone in a [BoneMap]. See [url=$DOCS_URL/tutorials/"
"assets_pipeline/retargeting_3d_skeletons.html]Retargeting 3D Skeletons[/url] "
"for more information."
msgstr ""
"Обрабатывать все узлы в импортированной сцене так, как будто они являются "
"костями в пределах одного [Skeleton3D]. Может использоваться для гарантии "
"того, что импортированные анимации будут нацелены на кости скелета, а не на "
"узлы. Может также использоваться для назначения кости [code]\"Root\"[/code] в "
"[BoneMap]. Для получения дополнительной информации см. [url=$DOCS_URL/"
"tutorials/assets_pipeline/retargeting_3d_skeletons.html]Перенацеливание 3D-"
"скелетов[/url]."

msgid ""
"Override for the root node name. If empty, the root node will use what the "
"scene specifies, or the file name if the scene does not specify a root name."
msgstr ""
"Переопределить имя корневого узла. Если пусто, корневой узел будет "
"использовать то, что указано в сцене, или имя файла, если в сцене не указано "
"корневое имя."

msgid ""
"The uniform scale to use for the scene root. The default value of [code]1.0[/"
"code] will not perform any rescaling. See [member nodes/apply_root_scale] for "
"details of how this scale is applied."
msgstr ""
"Единый масштаб для использования в корне сцены. Значение по умолчанию "
"[code]1.0[/code] не будет выполнять никакого масштабирования. Подробности "
"применения этого масштаба см. в [member nodes/apply_root_scale]."

msgid ""
"If set to a valid script, attaches the script to the root node of the "
"imported scene. If the type of the root node is not compatible with the "
"script, the root node will be replaced with a type that is compatible with "
"the script. This setting can also be used on other non-mesh nodes in the "
"scene to attach scripts to them."
msgstr ""
"Если задан допустимый скрипт, он прикрепляется к корневому узлу "
"импортированной сцены. Если тип корневого узла несовместим со скриптом, "
"корневой узел будет заменён типом, совместимым со скриптом. Этот параметр "
"также можно использовать для других узлов сцены, не являющихся сеткой, для "
"присоединения к ним скриптов."

msgid ""
"Override for the root node type. If empty, the root node will use what the "
"scene specifies, or [Node3D] if the scene does not specify a root type. Using "
"a node type that inherits from [Node3D] is recommended. Otherwise, you'll "
"lose the ability to position the node directly in the 3D editor."
msgstr ""
"Переопределить тип корневого узла. Если пусто, корневой узел будет "
"использовать то, что указано в сцене, или [Node3D], если в сцене не указан "
"корневой тип. Рекомендуется использовать тип узла, который наследуется от "
"[Node3D]. В противном случае вы потеряете возможность позиционировать узел "
"напрямую в 3D-редакторе."

msgid ""
"If [code]true[/code], will use suffixes in the names of imported objects such "
"as nodes and resources to determine types and properties, such as [code]-"
"noimp[/code] to skip import of a node or animation, [code]-alpha[/code] to "
"enable alpha transparency on a material, and [code]-vcol[/code] to enable "
"vertex colors on a material. Disabling this makes editor-imported files more "
"similar to the original files, and more similar to files imported at runtime. "
"See [url=$DOCS_URL/tutorials/assets_pipeline/importing_3d_scenes/"
"node_type_customization.html]Node type customization using name suffixes[/"
"url] for more information."
msgstr ""
"Если [code]true[/code], то будут использоваться суффиксы в именах "
"импортируемых объектов, таких как узлы и ресурсы, для определения типов и "
"свойств, например, [code]-noimp[/code] для пропуска импорта узла или "
"анимации, [code]-alpha[/code] для включения альфа-прозрачности для материала "
"и [code]-vcol[/code] для включения цветов вершин для материала. Отключение "
"этого параметра делает импортированные редактором файлы более похожими на "
"исходные файлы и более похожими на файлы, импортированные во время "
"выполнения. См. [url=$DOCS_URL/tutorials/assets_pipeline/importing_3d_scenes/"
"node_type_customization.html]Настройка типа узла с использованием суффиксов "
"имен[/url] для получения дополнительной информации."

msgid ""
"If [code]true[/code], will use suffixes in the node names to determine the "
"node type, such as [code]-col[/code] for collision shapes. This is only used "
"when [member nodes/use_name_suffixes] is [code]true[/code]. Disabling this "
"makes editor-imported files more similar to the original files, and more "
"similar to files imported at runtime. See [url=$DOCS_URL/tutorials/"
"assets_pipeline/importing_3d_scenes/node_type_customization.html]Node type "
"customization using name suffixes[/url] for more information."
msgstr ""
"Если [code]true[/code], будут использоваться суффиксы в именах узлов для "
"определения типа узла, например, [code]-col[/code] для форм столкновений. Это "
"используется только тогда, когда [member nodes/use_name_suffixes] равно "
"[code]true[/code]. Отключение этого параметра делает импортированные "
"редактором файлы более похожими на исходные файлы и более похожими на файлы, "
"импортированные во время выполнения. Для получения дополнительной информации "
"см. [url=$DOCS_URL/tutorials/assets_pipeline/importing_3d_scenes/"
"node_type_customization.html]Настройка типа узла с использованием суффиксов "
"имен[/url]."

msgid ""
"If checked, use named [Skin]s for animation. The [MeshInstance3D] node "
"contains 3 properties of relevance here: a skeleton [NodePath] pointing to "
"the [Skeleton3D] node (usually [code]..[/code]), a mesh, and a skin:\n"
"- The [Skeleton3D] node contains a list of bones with names, their pose and "
"rest, a name and a parent bone.\n"
"- The mesh is all of the raw vertex data needed to display a mesh. In terms "
"of the mesh, it knows how vertices are weight-painted and uses some internal "
"numbering often imported from 3D modeling software.\n"
"- The skin contains the information necessary to bind this mesh onto this "
"Skeleton3D. For every one of the internal bone IDs chosen by the 3D modeling "
"software, it contains two things. Firstly, a matrix known as the Bind Pose "
"Matrix, Inverse Bind Matrix, or IBM for short. Secondly, the [Skin] contains "
"each bone's name (if [member skins/use_named_skins] is [code]true[/code]), or "
"the bone's index within the [Skeleton3D] list (if [member skins/"
"use_named_skins] is [code]false[/code]).\n"
"Together, this information is enough to tell Godot how to use the bone poses "
"in the [Skeleton3D] node to render the mesh from each [MeshInstance3D]. Note "
"that each [MeshInstance3D] may share binds, as is common in models exported "
"from Blender, or each [MeshInstance3D] may use a separate [Skin] object, as "
"is common in models exported from other tools such as Maya."
msgstr ""
"Если отмечено, используйте именованные [Skin]-ы для анимации. Узел "
"[MeshInstance3D] содержит 3 важных свойства: скелет [NodePath], указывающий "
"на узел [Skeleton3D] (обычно [code]..[/code]), сетку и скин:\n"
"- Узел [Skeleton3D] содержит список костей с именами, их позу и покой, имя и "
"родительскую кость.\n"
"- Сетка — это все необработанные данные вершин, необходимые для отображения "
"сетки. С точки зрения сетки, она знает, как вершины раскрашиваются по весу, и "
"использует некоторую внутреннюю нумерацию, часто импортируемую из "
"программного обеспечения для 3D-моделирования.\n"
"- Скин содержит информацию, необходимую для привязки этой сетки к этому "
"Skeleton3D. Для каждого из внутренних идентификаторов костей, выбранных "
"программным обеспечением для 3D-моделирования, она содержит две вещи. Во-"
"первых, матрицу, известную как матрица позы привязки, обратная матрица "
"привязки или сокращенно IBM. Во-вторых, [Skin] содержит имя каждой кости "
"(если [member skins/use_named_skins] равно [code]true[/code]) или индекс "
"кости в списке [Skeleton3D] (если [member skins/use_named_skins] равно "
"[code]false[/code]).\n"
"Вместе этой информации достаточно, чтобы сообщить Godot, как использовать "
"позы костей в узле [Skeleton3D] для рендеринга сетки из каждого "
"[MeshInstance3D]. Обратите внимание, что каждый [MeshInstance3D] может "
"совместно использовать привязки, как это часто бывает в моделях, "
"экспортированных из Blender, или каждый [MeshInstance3D] может использовать "
"отдельный объект [Skin], как это часто бывает в моделях, экспортированных из "
"других инструментов, таких как Maya."

msgid "Imports native GLSL shaders (not Godot shaders) as an [RDShaderFile]."
msgstr ""
"Импортирует собственные шейдеры GLSL (не шейдеры Godot) как [RDShaderFile]."

msgid ""
"This imports native GLSL shaders as [RDShaderFile] resources, for use with "
"low-level [RenderingDevice] operations. This importer does [i]not[/i] handle "
"[code].gdshader[/code] files."
msgstr ""
"Это импортирует собственные шейдеры GLSL как ресурсы [RDShaderFile] для "
"использования с низкоуровневыми операциями [RenderingDevice]. Этот импортер "
"[i]не[/i] обрабатывает файлы [code].gdshader[/code]."

msgid ""
"Imports an SVG file as an automatically scalable texture for use in UI "
"elements and 2D rendering."
msgstr ""
"Импортирует SVG-файл как автоматически масштабируемую текстуру для "
"использования в элементах пользовательского интерфейса и 2D-рендеринге."

msgid ""
"This importer imports [DPITexture] resources. See also "
"[ResourceImporterTexture] and [ResourceImporterImage]."
msgstr ""
"Этот импортер импортирует ресурсы [DPITexture]. См. также "
"[ResourceImporterTexture] и [ResourceImporterImage]."

msgid "If [code]true[/code], uses lossless compression for the SVG source."
msgstr ""
"Если [code]true[/code], используется сжатие без потерь для исходного SVG."

msgid "Imports an image for use in 2D or 3D rendering."
msgstr "Импортирует изображение для использования в 2D- или 3D-рендеринге."

msgid ""
"This importer imports [CompressedTexture2D] resources. If you need to process "
"the image in scripts in a more convenient way, use [ResourceImporterImage] "
"instead. See also [ResourceImporterLayeredTexture]."
msgstr ""
"Этот импортер импортирует ресурсы [CompressedTexture2D]. Если вам нужно "
"обработать изображение в скриптах более удобным способом, используйте вместо "
"этого [ResourceImporterImage]. См. также [ResourceImporterLayeredTexture]."

msgid ""
"Controls how color channels should be used in the imported texture.\n"
"[b]sRGB Friendly:[/b] Prevents the RG color format from being used, as it "
"does not support sRGB color.\n"
"[b]Optimized:[/b] Allows the RG color format to be used if the texture does "
"not use the blue channel. This reduces memory usage if the texture's blue "
"channel can be discarded (all pixels must have a blue value of [code]0[/"
"code])."
msgstr ""
"Управляет тем, как должны использоваться цветовые каналы в импортированной "
"текстуре.\n"
"[b]Дружественный к sRGB:[/b] Предотвращает использование формата цвета RG, "
"так как он не поддерживает цвет sRGB.\n"
"[b]Оптимизированный:[/b] Позволяет использовать формат цвета RG, если "
"текстура не использует синий канал. Это уменьшает использование памяти, если "
"синий канал текстуры можно отбросить (все пиксели должны иметь значение "
"синего [code]0[/code])."

msgid ""
"When using a texture as normal map, only the red and green channels are "
"required. Given regular texture compression algorithms produce artifacts that "
"don't look that nice in normal maps, the RGTC compression format is the best "
"fit for this data. Forcing this option to Enable will make Godot import the "
"image as RGTC compressed. By default, it's set to Detect. This means that if "
"the texture is ever detected to be used as a normal map, it will be changed "
"to Enable and reimported automatically.\n"
"Note that RGTC compression affects the resulting normal map image. You will "
"have to adjust custom shaders that use the normal map's blue channel to take "
"this into account. Built-in material shaders already ignore the blue channel "
"in a normal map (regardless of the actual normal map's contents)."
msgstr ""
"При использовании текстуры в качестве карты нормалей требуются только красный "
"и зеленый каналы. Учитывая, что обычные алгоритмы сжатия текстур создают "
"артефакты, которые не очень хорошо выглядят на картах нормалей, формат сжатия "
"RGTC лучше всего подходит для этих данных. Принудительное включение этого "
"параметра заставит Godot импортировать изображение как сжатое RGTC. По "
"умолчанию он установлен на Detect. Это означает, что если текстура когда-либо "
"будет обнаружена для использования в качестве карты нормалей, она будет "
"изменена на Enable и автоматически повторно импортирована. \n"
"Обратите внимание, что сжатие RGTC влияет на результирующее изображение карты "
"нормалей. Вам придется настроить пользовательские шейдеры, которые используют "
"синий канал карты нормалей, чтобы учесть это. Встроенные шейдеры материалов "
"уже игнорируют синий канал в карте нормалей (независимо от фактического "
"содержимого карты нормалей)."

msgid ""
"This changes the [member compress/mode] option that is used when a texture is "
"detected as being used in 3D.\n"
"Changing this import option only has an effect if a texture is detected as "
"being used in 3D. Changing this to [b]Disabled[/b] then reimporting will not "
"change the existing compress mode on a texture (if it's detected to be used "
"in 3D), but choosing [b]VRAM Compressed[/b] or [b]Basis Universal[/b] will."
msgstr ""
"Это изменяет параметр [member compress/mode], который используется, когда "
"текстура определяется как используемая в 3D.\n"
"Изменение этого параметра импорта имеет эффект только в том случае, если "
"текстура определяется как используемая в 3D. Изменение этого параметра на "
"[b]Disabled[/b] при повторном импорте не изменит существующий режим сжатия "
"текстуры (если она определяется как используемая в 3D), но выбор [b]VRAM "
"Compressed[/b] или [b]Basis Universal[/b] изменит."

msgid ""
"If [code]true[/code], converts the imported image's colors to match [member "
"EditorSettings.interface/theme/icon_and_font_color]. This assumes the image "
"uses the exact same colors as [url=$DOCS_URL/engine_details/editor/"
"creating_icons.html]Godot's own color palette for editor icons[/url], with "
"the source file designed for a dark editor theme. This should be enabled for "
"editor plugin icons and custom class icons, but should be left disabled "
"otherwise.\n"
"[b]Note:[/b] Only available for SVG images."
msgstr ""
"Если [code]true[/code], цвета импортированного изображения преобразуются в "
"цвета [member EditorSettings.interface/theme/icon_and_font_color]. При этом "
"предполагается, что изображение использует те же цвета, что и [url=$DOCS_URL/"
"engine_details/editor/creating_icons.html]собственная цветовая палитра Godot "
"для значков редактора[/url], а исходный файл разработан для тёмной темы "
"оформления редактора. Эту функцию следует включить для значков плагинов "
"редактора и значков пользовательских классов, в противном случае её следует "
"отключить.\n"
"[b]Примечание:[/b] Доступно только для изображений SVG."

msgid ""
"If [code]true[/code], scales the imported image to match [member "
"EditorSettings.interface/editor/custom_display_scale]. This should be enabled "
"for editor plugin icons and custom class icons, but should be left disabled "
"otherwise.\n"
"[b]Note:[/b] Only available for SVG images."
msgstr ""
"Если [code]true[/code], масштабирует импортированное изображение в "
"соответствии с [member EditorSettings.interface/editor/custom_display_scale]. "
"Это должно быть включено для значков плагинов редактора и значков "
"пользовательских классов, но должно быть отключено в противном случае.\n"
"[b]Примечание:[/b] Доступно только для изображений SVG."

msgid ""
"If [code]true[/code], smaller versions of the texture are generated on "
"import. For example, a 64×64 texture will generate 6 mipmaps (32×32, 16×16, "
"8×8, 4×4, 2×2, 1×1). This has several benefits:\n"
"- Textures will not become grainy in the distance (in 3D), or if scaled down "
"due to [Camera2D] zoom or [CanvasItem] scale (in 2D).\n"
"- Performance will improve if the texture is displayed in the distance, since "
"sampling smaller versions of the original texture is faster and requires less "
"memory bandwidth.\n"
"The downside of mipmaps is that they increase memory usage by roughly 33%.\n"
"It's recommended to enable mipmaps in 3D. However, in 2D, this should only be "
"enabled if your project visibly benefits from having mipmaps enabled. If the "
"camera never zooms out significantly, there won't be a benefit to enabling "
"mipmaps but memory usage will increase."
msgstr ""
"Если [code]true[/code], при импорте генерируются меньшие версии текстуры. "
"Например, текстура 64×64 сгенерирует 6 mip-карт (32×32, 16×16, 8×8, 4×4, 2×2, "
"1×1). Это имеет несколько преимуществ:\n"
"- Текстуры не станут зернистыми на расстоянии (в 3D) или при уменьшении "
"масштаба из-за масштабирования [Camera2D] или масштабирования [CanvasItem] (в "
"2D).\n"
"- Производительность улучшится, если текстура будет отображаться на "
"расстоянии, поскольку выборка меньших версий исходной текстуры выполняется "
"быстрее и требует меньше пропускной способности памяти.\n"
"Недостатком mip-карт является то, что они увеличивают использование памяти "
"примерно на 33%.\n"
"Рекомендуется включать mip-карты в 3D. Однако в 2D это следует включать "
"только в том случае, если ваш проект явно выигрывает от включения mip-карт. "
"Если камера никогда не отдаляет изображение слишком сильно, то включение MIP-"
"текстур не даст никакого преимущества, но увеличится использование памяти."

msgid ""
"Specifies the data source of the output image's alpha channel.\n"
"[b]Red:[/b] Use the values from the source image's red channel.\n"
"[b]Green:[/b] Use the values from the source image's green channel.\n"
"[b]Blue:[/b] Use the values from the source image's blue channel.\n"
"[b]Alpha:[/b] Use the values from the source image's alpha channel.\n"
"[b]Red Inverted:[/b] Use inverted values from the source image's red channel "
"([code]1.0 - R[/code]).\n"
"[b]Green Inverted:[/b] Use inverted values from the source image's green "
"channel ([code]1.0 - G[/code]).\n"
"[b]Blue Inverted:[/b] Use inverted values from the source image's blue "
"channel ([code]1.0 - B[/code]).\n"
"[b]Alpha Inverted:[/b] Use inverted values from the source image's alpha "
"channel ([code]1.0 - A[/code]).\n"
"[b]Unused:[/b] Set the color channel's value to the default ([code]1.0[/code] "
"for alpha, [code]0.0[/code] for red, green or blue).\n"
"[b]Zero:[/b] Set the color channel's value to [code]0.0[/code].\n"
"[b]One:[/b] Set the color channel's value to [code]1.0[/code]."
msgstr ""
"Указывает источник данных альфа-канала выходного изображения.\n"
"[b]Red:[/b] Использовать значения из красного канала исходного изображения.\n"
"[b]Green:[/b] Использовать значения из зеленого канала исходного "
"изображения.\n"
"[b]Blue:[/b] Использовать значения из синего канала исходного изображения.\n"
"[b]Alpha:[/b] Использовать значения из альфа-канала исходного изображения.\n"
"[b]Red Inverted:[/b] Использовать инвертированные значения из красного канала "
"исходного изображения ([code]1.0 - R[/code]).\n"
"[b]Green Inverted:[/b] Использовать инвертированные значения из зеленого "
"канала исходного изображения ([code]1.0 - G[/code]).\n"
"[b]Blue Inverted:[/b] Использовать инвертированные значения из синего канала "
"исходного изображения ([code]1.0 - B[/code]).\n"
"[b]Alpha Inverted:[/b] Использовать инвертированные значения из альфа-канала "
"исходного изображения ([code]1.0 - A[/code]).\n"
"[b]Unused:[/b] Установить значение цветового канала по умолчанию ([code]1.0[/"
"code] для альфа, [code]0.0[/code] для красного, зеленого или синего).\n"
"[b]Zero:[/b] Установить значение цветового канала на [code]0.0[/code].\n"
"[b]One:[/b] Установить значение цветового канала на [code]1.0[/code]."

msgid ""
"Specifies the data source of the output image's blue channel.\n"
"[b]Red:[/b] Use the values from the source image's red channel.\n"
"[b]Green:[/b] Use the values from the source image's green channel.\n"
"[b]Blue:[/b] Use the values from the source image's blue channel.\n"
"[b]Alpha:[/b] Use the values from the source image's alpha channel.\n"
"[b]Red Inverted:[/b] Use inverted values from the source image's red channel "
"([code]1.0 - R[/code]).\n"
"[b]Green Inverted:[/b] Use inverted values from the source image's green "
"channel ([code]1.0 - G[/code]).\n"
"[b]Blue Inverted:[/b] Use inverted values from the source image's blue "
"channel ([code]1.0 - B[/code]).\n"
"[b]Alpha Inverted:[/b] Use inverted values from the source image's alpha "
"channel ([code]1.0 - A[/code]).\n"
"[b]Unused:[/b] Set the color channel's value to the default ([code]1.0[/code] "
"for alpha, [code]0.0[/code] for red, green or blue).\n"
"[b]Zero:[/b] Set the color channel's value to [code]0.0[/code].\n"
"[b]One:[/b] Set the color channel's value to [code]1.0[/code]."
msgstr ""
"Указывает источник данных синего канала выходного изображения.\n"
"[b]Red:[/b] Использовать значения из красного канала исходного изображения.\n"
"[b]Green:[/b] Использовать значения из зеленого канала исходного "
"изображения.\n"
"[b]Blue:[/b] Использовать значения из синего канала исходного изображения.\n"
"[b]Alpha:[/b] Использовать значения из альфа-канала исходного изображения.\n"
"[b]Red Inverted:[/b] Использовать инвертированные значения из красного канала "
"исходного изображения ([code]1.0 - R[/code]).\n"
"[b]Green Inverted:[/b] Использовать инвертированные значения из зеленого "
"канала исходного изображения ([code]1.0 - G[/code]).\n"
"[b]Blue Inverted:[/b] Использовать инвертированные значения из синего канала "
"исходного изображения ([code]1.0 - B[/code]).\n"
"[b]Alpha Inverted:[/b] Использовать инвертированные значения из альфа-канала "
"исходного изображения ([code]1.0 - A[/code]).\n"
"[b]Unused:[/b] Установить значение цветового канала по умолчанию ([code]1.0[/"
"code] для альфа, [code]0.0[/code] для красного, зеленого или синего).\n"
"[b]Zero:[/b] Установить значение цветового канала на [code]0.0[/code].\n"
"[b]One:[/b] Установить значение цветового канала на [code]1.0[/code]."

msgid ""
"Specifies the data source of the output image's green channel.\n"
"[b]Red:[/b] Use the values from the source image's red channel.\n"
"[b]Green:[/b] Use the values from the source image's green channel.\n"
"[b]Blue:[/b] Use the values from the source image's blue channel.\n"
"[b]Alpha:[/b] Use the values from the source image's alpha channel.\n"
"[b]Red Inverted:[/b] Use inverted values from the source image's red channel "
"([code]1.0 - R[/code]).\n"
"[b]Green Inverted:[/b] Use inverted values from the source image's green "
"channel ([code]1.0 - G[/code]).\n"
"[b]Blue Inverted:[/b] Use inverted values from the source image's blue "
"channel ([code]1.0 - B[/code]).\n"
"[b]Alpha Inverted:[/b] Use inverted values from the source image's alpha "
"channel ([code]1.0 - A[/code]).\n"
"[b]Unused:[/b] Set the color channel's value to the default ([code]1.0[/code] "
"for alpha, [code]0.0[/code] for red, green or blue).\n"
"[b]Zero:[/b] Set the color channel's value to [code]0.0[/code].\n"
"[b]One:[/b] Set the color channel's value to [code]1.0[/code]."
msgstr ""
"Указывает источник данных зеленого канала выходного изображения.\n"
"[b]Red:[/b] Использовать значения из красного канала исходного изображения.\n"
"[b]Green:[/b] Использовать значения из зеленого канала исходного "
"изображения.\n"
"[b]Blue:[/b] Использовать значения из синего канала исходного изображения.\n"
"[b]Alpha:[/b] Использовать значения из альфа-канала исходного изображения.\n"
"[b]Red Inverted:[/b] Использовать инвертированные значения из красного канала "
"исходного изображения ([code]1.0 - R[/code]).\n"
"[b]Green Inverted:[/b] Использовать инвертированные значения из зеленого "
"канала исходного изображения ([code]1.0 - G[/code]).\n"
"[b]Blue Inverted:[/b] Использовать инвертированные значения из синего канала "
"исходного изображения ([code]1.0 - B[/code]).\n"
"[b]Alpha Inverted:[/b] Использовать инвертированные значения из альфа-канала "
"исходного изображения ([code]1.0 - A[/code]).\n"
"[b]Unused:[/b] Установить значение цветового канала по умолчанию ([code]1.0[/"
"code] для альфа, [code]0.0[/code] для красного, зеленого или синего).\n"
"[b]Zero:[/b] Установить значение цветового канала на [code]0.0[/code].\n"
"[b]One:[/b] Установить значение цветового канала на [code]1.0[/code]."

msgid ""
"Specifies the data source of the output image's red channel.\n"
"[b]Red:[/b] Use the values from the source image's red channel.\n"
"[b]Green:[/b] Use the values from the source image's green channel.\n"
"[b]Blue:[/b] Use the values from the source image's blue channel.\n"
"[b]Alpha:[/b] Use the values from the source image's alpha channel.\n"
"[b]Red Inverted:[/b] Use inverted values from the source image's red channel "
"([code]1.0 - R[/code]).\n"
"[b]Green Inverted:[/b] Use inverted values from the source image's green "
"channel ([code]1.0 - G[/code]).\n"
"[b]Blue Inverted:[/b] Use inverted values from the source image's blue "
"channel ([code]1.0 - B[/code]).\n"
"[b]Alpha Inverted:[/b] Use inverted values from the source image's alpha "
"channel ([code]1.0 - A[/code]).\n"
"[b]Unused:[/b] Set the color channel's value to the default ([code]1.0[/code] "
"for alpha, [code]0.0[/code] for red, green or blue).\n"
"[b]Zero:[/b] Set the color channel's value to [code]0.0[/code].\n"
"[b]One:[/b] Set the color channel's value to [code]1.0[/code]."
msgstr ""
"Указывает источник данных красного канала выходного изображения.\n"
"[b]Red:[/b] Использовать значения из красного канала исходного изображения.\n"
"[b]Green:[/b] Использовать значения из зеленого канала исходного "
"изображения.\n"
"[b]Blue:[/b] Использовать значения из синего канала исходного изображения.\n"
"[b]Alpha:[/b] Использовать значения из альфа-канала исходного изображения.\n"
"[b]Red Inverted:[/b] Использовать инвертированные значения из красного канала "
"исходного изображения ([code]1.0 - R[/code]).\n"
"[b]Green Inverted:[/b] Использовать инвертированные значения из зеленого "
"канала исходного изображения ([code]1.0 - G[/code]).\n"
"[b]Blue Inverted:[/b] Использовать инвертированные значения из синего канала "
"исходного изображения ([code]1.0 - B[/code]).\n"
"[b]Alpha Inverted:[/b] Использовать инвертированные значения из альфа-канала "
"исходного изображения ([code]1.0 - A[/code]).\n"
"[b]Unused:[/b] Установить значение цветового канала по умолчанию ([code]1.0[/"
"code] для альфа, [code]0.0[/code] для красного, зеленого или синего).\n"
"[b]Zero:[/b] Установить значение цветового канала на [code]0.0[/code].\n"
"[b]One:[/b] Установить значение цветового канала на [code]1.0[/code]."

msgid ""
"If [code]true[/code], puts pixels of the same surrounding color in transition "
"from transparent to opaque areas. For textures displayed with bilinear "
"filtering, this helps to reduce the outline effect when exporting images from "
"an image editor.\n"
"It's recommended to leave this enabled (as it is by default), unless this "
"causes issues for a particular image."
msgstr ""
"Если [code]true[/code], то пиксели того же окружающего цвета переходят из "
"прозрачных областей в непрозрачные. Для текстур, отображаемых с билинейной "
"фильтрацией, это помогает уменьшить эффект контура при экспорте изображений "
"из редактора изображений.\n"
"Рекомендуется оставить это включенным (как по умолчанию), если только это не "
"вызывает проблем для конкретного изображения."

msgid ""
"Some HDR images you can find online may be broken and contain sRGB color data "
"(instead of linear color data). It is advised not to use those files. If you "
"absolutely have to, enabling [member process/hdr_as_srgb] will make them look "
"correct.\n"
"[b]Warning:[/b] Enabling [member process/hdr_as_srgb] on well-formatted HDR "
"images will cause the resulting image to look too dark, so leave this on "
"[code]false[/code] if unsure."
msgstr ""
"Некоторые HDR-изображения, которые вы можете найти в сети, могут быть "
"повреждены и содержать данные о цвете sRGB (вместо линейных данных о цвете). "
"Рекомендуется не использовать эти файлы. Если вам это абсолютно необходимо, "
"включение [member process/hdr_as_srgb] заставит их выглядеть правильно.\n"
"[b]Предупреждение:[/b] Включение [member process/hdr_as_srgb] для хорошо "
"отформатированных HDR-изображений приведет к тому, что полученное изображение "
"будет выглядеть слишком темным, поэтому оставьте это на [code]false[/code], "
"если вы не уверены."

msgid ""
"If [code]true[/code], clamps exposure in the imported high dynamic range "
"images using a smart clamping formula (without introducing [i]visible[/i] "
"clipping).\n"
"Some HDR panorama images you can find online may contain extremely bright "
"pixels, due to being taken from real life sources without any clipping.\n"
"While these HDR panorama images are accurate to real life, this can cause the "
"radiance map generated by Godot to contain sparkles when used as a background "
"sky. This can be seen in material reflections (even on rough materials in "
"extreme cases). Enabling [member process/hdr_clamp_exposure] can resolve this."
msgstr ""
"Если [code]true[/code], экспозиция в импортированных изображениях с высоким "
"динамическим диапазоном фиксируется с помощью интеллектуальной формулы "
"фиксации (без введения [i]видимого[/i] отсечения).\n"
"Некоторые панорамные изображения HDR, которые вы можете найти в сети, могут "
"содержать чрезвычайно яркие пиксели, поскольку они взяты из реальных "
"источников без какого-либо отсечения.\n"
"Хотя эти панорамные изображения HDR соответствуют реальной жизни, это может "
"привести к тому, что карта сияния, созданная Godot, будет содержать искры при "
"использовании в качестве фонового неба. Это можно увидеть в отражениях "
"материалов (даже на грубых материалах в крайних случаях). Включение [member "
"process/hdr_clamp_exposure] может решить эту проблему."

msgid ""
"The same result can be achieved by setting [member process/channel_remap/"
"green] to [code]Green Inverted[/code]."
msgstr ""
"Того же результата можно добиться, установив [member process/channel_remap/"
"green] на [code]Green Inverted[/code]."

msgid ""
"If [code]true[/code], convert the normal map from Y- (DirectX-style) to Y+ "
"(OpenGL-style) by inverting its green color channel. This is the normal map "
"convention expected by Godot.\n"
"More information about normal maps (including a coordinate order table for "
"popular engines) can be found [url=http://wiki.polycount.com/wiki/"
"Normal_Map_Technical_Details]here[/url]."
msgstr ""
"Если [code]true[/code], преобразуйте карту нормалей из Y- (стиль DirectX) в "
"Y+ (стиль OpenGL), инвертируя ее зеленый цветовой канал. Это соглашение о "
"карте нормалей, ожидаемое Godot.\n"
"Более подробную информацию о картах нормалей (включая таблицу порядка "
"координат для популярных движков) можно найти [url=http://wiki.polycount.com/"
"wiki/Normal_Map_Technical_Details]здесь[/url]."

msgid ""
"An alternative to fixing darkened borders with [member process/"
"fix_alpha_border] is to use premultiplied alpha. By enabling this option, the "
"texture will be converted to this format. A premultiplied alpha texture "
"requires specific materials to be displayed correctly:\n"
"- In 2D, a [CanvasItemMaterial] will need to be created and configured to use "
"the [constant CanvasItemMaterial.BLEND_MODE_PREMULT_ALPHA] blend mode on "
"[CanvasItem]s that use this texture. In custom [code]@canvas_item[/code] "
"shaders, [code]render_mode blend_premul_alpha;[/code] should be used.\n"
"- In 3D, a [BaseMaterial3D] will need to be created and configured to use the "
"[constant BaseMaterial3D.BLEND_MODE_PREMULT_ALPHA] blend mode on materials "
"that use this texture. In custom [code]spatial[/code] shaders, "
"[code]render_mode blend_premul_alpha;[/code] should be used."
msgstr ""
"Альтернативой исправлению затемненных границ с помощью [member process/"
"fix_alpha_border] является использование предварительно умноженной альфы. При "
"включении этой опции текстура будет преобразована в этот формат. Для "
"корректного отображения предварительно умноженной альфы требуются "
"определенные материалы:\n"
"- В 2D необходимо создать [CanvasItemMaterial] и настроить его для "
"использования режима смешивания [constant "
"CanvasItemMaterial.BLEND_MODE_PREMULT_ALPHA] на [CanvasItem], которые "
"используют эту текстуру. В пользовательских шейдерах [code]@canvas_item[/"
"code] следует использовать [code]render_mode blend_premul_alpha;[/code].\n"
"- В 3D необходимо создать [BaseMaterial3D] и настроить его для использования "
"режима смешивания [constant BaseMaterial3D.BLEND_MODE_PREMULT_ALPHA] на "
"материалах, которые используют эту текстуру. В пользовательских "
"[code]пространственных[/code] шейдерах следует использовать [code]render_mode "
"blend_premul_alpha;[/code]."

msgid ""
"If set to a value greater than [code]0[/code], the size of the texture is "
"limited on import to a value smaller than or equal to the value specified "
"here. For non-square textures, the size limit affects the longer dimension, "
"with the shorter dimension scaled to preserve aspect ratio. Resizing is "
"performed using cubic interpolation.\n"
"This can be used to reduce memory usage without affecting the source images, "
"or avoid issues with textures not displaying on mobile/web platforms (as "
"these usually can't display textures larger than 4096×4096).\n"
"[b]Note:[/b] Even if this is set to [code]0[/code], import size is limited to "
"the following dimensions for technical reasons. Depending on [member compress/"
"mode], textures will be downsampled on import if necessary:\n"
"- [b]Lossy:[/b] 16383 pixels width or height, whichever is larger;\n"
"- [b]Basis Universal:[/b] 16384 pixels width or height, whichever is larger;\n"
"- [b]All other modes:[/b] 32768 pixels width or height, whichever is larger."
msgstr ""
"Если установлено значение больше [code]0[/code], размер текстуры при импорте "
"ограничивается значением, меньшим или равным значению, указанному здесь. Для "
"неквадратных текстур ограничение размера влияет на большее измерение, а "
"меньшее измерение масштабируется для сохранения соотношения сторон. Изменение "
"размера выполняется с помощью кубической интерполяции.\n"
"Это можно использовать для уменьшения использования памяти, не влияя на "
"исходные изображения, или для избежания проблем с текстурами, которые не "
"отображаются на мобильных/веб-платформах (так как они обычно не могут "
"отображать текстуры размером более 4096×4096).\n"
"[b]Примечание:[/b] Даже если установлено значение [code]0[/code], размер "
"импорта ограничен следующими размерами по техническим причинам. В зависимости "
"от [member compress/mode] текстуры будут при необходимости уменьшены при "
"импорте:\n"
"- [b]Потери:[/b] ширина или высота 16383 пикселей, в зависимости от того, что "
"больше;\n"
"- [b]Basis Universal:[/b] 16384 пикселей в ширину или высоту, в зависимости "
"от того, что больше;\n"
"- [b]Все остальные режимы:[/b] 32768 пикселей в ширину или высоту, в "
"зависимости от того, что больше."

msgid ""
"The color channel to consider as a roughness map in this texture. Only "
"effective if [member roughness/src_normal] is not empty."
msgstr ""
"Цветовой канал, который следует рассматривать как карту шероховатости в этой "
"текстуре. Действует только если [member roughness/src_normal] не пуст."

msgid ""
"The path to the texture to consider as a normal map for roughness filtering "
"on import. Specifying this can help decrease specular aliasing slightly in "
"3D.\n"
"Roughness filtering on import is only used in 3D rendering, not 2D."
msgstr ""
"Путь к текстуре, которую следует рассматривать как карту нормалей для "
"фильтрации шероховатости при импорте. Указание этого параметра может помочь "
"немного уменьшить зеркальное наложение в 3D.\n"
"Фильтрация шероховатости при импорте используется только в 3D-рендеринге, а "
"не в 2D."

msgid ""
"The scale the SVG should be rendered at, with [code]1.0[/code] being the "
"original design size. Higher values result in a larger image. Note that "
"unlike font oversampling, this affects the size the SVG is rendered at in 2D. "
"See also [member editor/scale_with_editor_scale].\n"
"[b]Note:[/b] Only available for SVG images."
msgstr ""
"Масштаб, в котором должен отображаться SVG, при этом [code]1.0[/code] — это "
"исходный размер дизайна. Более высокие значения приводят к большему размеру "
"изображения. Обратите внимание, что в отличие от передискретизации шрифта, "
"это влияет на размер, в котором отображается SVG в 2D. См. также [member "
"editor/scale_with_editor_scale].\n"
"[b]Примечание:[/b] Доступно только для изображений SVG."

msgid ""
"Imports a collection of textures from a PNG image into an optimized "
"[AtlasTexture] for 2D rendering."
msgstr ""
"Импортирует коллекцию текстур из изображения PNG в оптимизированный "
"[AtlasTexture] для 2D-рендеринга."

msgid ""
"This imports a collection of textures from a PNG image into an [AtlasTexture] "
"or 2D [ArrayMesh]. This can be used to save memory when importing 2D "
"animations from spritesheets. Texture atlases are only supported in 2D "
"rendering, not 3D. See also [ResourceImporterTexture] and "
"[ResourceImporterLayeredTexture].\n"
"[b]Note:[/b] [ResourceImporterTextureAtlas] does not handle importing "
"[TileSetAtlasSource], which is created using the [TileSet] editor instead."
msgstr ""
"Это импортирует коллекцию текстур из изображения PNG в [AtlasTexture] или 2D "
"[ArrayMesh]. Это можно использовать для экономии памяти при импорте 2D-"
"анимаций из spritesheets. Текстурные атласы поддерживаются только в 2D-"
"рендеринге, а не в 3D. См. также [ResourceImporterTexture] и "
"[ResourceImporterLayeredTexture].\n"
"[b]Примечание:[/b] [ResourceImporterTextureAtlas] не обрабатывает импорт "
"[TileSetAtlasSource], который создается с помощью редактора [TileSet]."

msgid ""
"Path to the atlas spritesheet. This [i]must[/i] be set to valid path to a PNG "
"image. Otherwise, the atlas will fail to import."
msgstr ""
"Путь к листу спрайтов атласа. Этот путь [i]должен[/i] быть установлен на "
"действительный путь к PNG-изображению. В противном случае атлас не будет "
"импортирован."

msgid ""
"If [code]true[/code], discards empty areas from the atlas. This only affects "
"final sprite positioning, not storage. See also [member "
"trim_alpha_border_from_region].\n"
"[b]Note:[/b] Only effective if [member import_mode] is [b]Region[/b]."
msgstr ""
"Если [code]true[/code], то пустые области удаляются из атласа. Это влияет "
"только на окончательное позиционирование спрайта, а не на хранение. См. также "
"[member trim_alpha_border_from_region].\n"
"[b]Примечание:[/b] Действует только если [member import_mode] — [b]Region[/b]."

msgid ""
"[b]Region:[/b] Imports the atlas in an [AtlasTexture] resource, which is "
"rendered as a rectangle. This is fast to render, but transparent areas still "
"have to be rendered if they can't be trimmed effectively by [member "
"trim_alpha_border_from_region]. This can reduce performance when rendering "
"large sprites on screen.\n"
"[b]Mesh:[/b] Imports the atlas as an [ArrayMesh] resource, keeping the "
"original bitmap visible (but rendered as a polygon). This can be used to "
"reduce fill rate when rendering large transparent sprites, at the cost of "
"slower rendering if there are little to no transparent areas in the sprite."
msgstr ""
"[b]Region:[/b] Импортирует атлас в ресурс [AtlasTexture], который "
"визуализируется как прямоугольник. Это быстро визуализируется, но прозрачные "
"области все равно должны визуализироваться, если их невозможно эффективно "
"обрезать с помощью [member trim_alpha_border_from_region]. Это может снизить "
"производительность при визуализации больших спрайтов на экране.\n"
"[b]Mesh:[/b] Импортирует атлас как ресурс [ArrayMesh], сохраняя исходное "
"растровое изображение видимым (но визуализируя его как многоугольник). Это "
"можно использовать для снижения скорости заполнения при визуализации больших "
"прозрачных спрайтов за счет более медленной визуализации, если в спрайте мало "
"или совсем нет прозрачных областей."

msgid ""
"If [code]true[/code], trims the region to exclude fully transparent pixels "
"using a clipping rectangle (which is never rotated). This can be used to save "
"memory. See also [member crop_to_region].\n"
"[b]Note:[/b] Only effective if [member import_mode] is [b]Region[/b]."
msgstr ""
"Если [code]true[/code], обрезает область, чтобы исключить полностью "
"прозрачные пиксели, используя прямоугольник обрезки (который никогда не "
"поворачивается). Это можно использовать для экономии памяти. См. также "
"[member crop_to_region].\n"
"[b]Примечание:[/b] Действует только если [member import_mode] равно "
"[b]Region[/b]."

msgid "Imports a WAV audio file for playback."
msgstr "Импортирует аудиофайл WAV для воспроизведения."

msgid ""
"WAV is an uncompressed format, which can provide higher quality compared to "
"Ogg Vorbis and MP3. It also has the lowest CPU cost to decode. This means "
"high numbers of WAV sounds can be played at the same time, even on low-end "
"devices.\n"
"By default, Godot imports WAV files using the lossy Quite OK Audio "
"compression. You may change this by setting the [member compress/mode] "
"property."
msgstr ""
"WAV — это несжатый формат, который может обеспечить более высокое качество по "
"сравнению с Ogg Vorbis и MP3. Он также имеет самые низкие затраты ЦП на "
"декодирование. Это означает, что большое количество звуков WAV может "
"воспроизводиться одновременно, даже на устройствах низкого уровня.\n"
"По умолчанию Godot импортирует файлы WAV, используя сжатие Quite OK Audio с "
"потерями. Вы можете изменить это, установив свойство [member compress/mode]."

msgid ""
"The compression mode to use on import.\n"
"- [b]PCM (Uncompressed):[/b] Imports audio data without any form of "
"compression, preserving the highest possible quality. It has the lowest CPU "
"cost, but the highest memory usage.\n"
"- [b]IMA ADPCM:[/b] Applies fast, lossy compression during import, noticeably "
"decreasing the quality, but with low CPU cost and memory usage. Does not "
"support seeking and only Forward loop mode is supported.\n"
"- [b][url=https://qoaformat.org/]Quite OK Audio[/url]:[/b] Also applies lossy "
"compression on import, having a slightly higher CPU cost compared to IMA "
"ADPCM, but much higher quality and the lowest memory usage."
msgstr ""
"Режим сжатия, используемый при импорте.\n"
"- [b]PCM (несжатый):[/b] Импортирует аудиоданные без какой-либо формы сжатия, "
"сохраняя максимально возможное качество. Он имеет самую низкую загрузку ЦП, "
"но самое большое использование памяти.\n"
"- [b]IMA ADPCM:[/b] Применяет быстрое сжатие с потерями во время импорта, "
"заметно снижая качество, но с низкой загрузкой ЦП и использованием памяти. Не "
"поддерживает поиск, поддерживается только режим прямого цикла.\n"
"- [b][url=https://qoaformat.org/]Довольно неплохой звук[/url]:[/b] Также "
"применяет сжатие с потерями при импорте, имея немного большую загрузку ЦП по "
"сравнению с IMA ADPCM, но гораздо более высокое качество и самое низкое "
"использование памяти."

msgid ""
"The begin loop point to use when [member edit/loop_mode] is [b]Forward[/b], "
"[b]Ping-Pong[/b], or [b]Backward[/b]. This is set in samples after the "
"beginning of the audio file."
msgstr ""
"Начальная точка цикла, используемая, когда [member edit/loop_mode] — "
"[b]Forward[/b], [b]Ping-Pong[/b] или [b]Backward[/b]. Это устанавливается в "
"сэмплах после начала аудиофайла."

msgid ""
"The end loop point to use when [member edit/loop_mode] is [b]Forward[/b], "
"[b]Ping-Pong[/b], or [b]Backward[/b]. This is set in samples after the "
"beginning of the audio file. A value of [code]-1[/code] uses the end of the "
"audio file as the end loop point."
msgstr ""
"Конечная точка цикла, используемая, когда [member edit/loop_mode] — "
"[b]Forward[/b], [b]Ping-Pong[/b] или [b]Backward[/b]. Это устанавливается в "
"сэмплах после начала аудиофайла. Значение [code]-1[/code] использует конец "
"аудиофайла в качестве конечной точки цикла."

msgid ""
"Controls how audio should loop.\n"
"- [b]Detect From WAV:[/b] Uses loop information from the WAV metadata.\n"
"- [b]Disabled:[/b] Don't loop audio, even if the metadata indicates the file "
"playback should loop.\n"
"- [b]Forward:[/b] Standard audio looping. Plays the audio forward from the "
"beginning to [member edit/loop_end], then returns to [member edit/loop_begin] "
"and repeats.\n"
"- [b]Ping-Pong:[/b] Plays the audio forward until [member edit/loop_end], "
"then backwards to [member edit/loop_begin], repeating this cycle.\n"
"- [b]Backward:[/b] Plays the audio backwards from [member edit/loop_end] to "
"[member edit/loop_begin], then repeats.\n"
"[b]Note:[/b] In [AudioStreamPlayer], the [signal AudioStreamPlayer.finished] "
"signal won't be emitted for looping audio when it reaches the end of the "
"audio file, as the audio will keep playing indefinitely."
msgstr ""
"Управляет тем, как аудио должно циклически воспроизводиться.\n"
"- [b]Определить из WAV:[/b] Использует информацию о цикле из метаданных WAV.\n"
"- [b]Отключено:[/b] Не зацикливать аудио, даже если метаданные указывают, что "
"воспроизведение файла должно циклически воспроизводиться.\n"
"- [b]Вперед:[/b] Стандартное циклическое воспроизведение аудио. Воспроизводит "
"аудио вперед с начала до [member edit/loop_end], затем возвращается к [member "
"edit/loop_begin] и повторяет.\n"
"- [b]Пинг-понг:[/b] Воспроизводит аудио вперед до [member edit/loop_end], "
"затем назад до [member edit/loop_begin], повторяя этот цикл.\n"
"- [b]Назад:[/b] Воспроизводит аудио назад от [member edit/loop_end] до "
"[member edit/loop_begin], затем повторяет.\n"
"[b]Примечание:[/b] В [AudioStreamPlayer] сигнал [signal "
"AudioStreamPlayer.finished] не будет выдаваться для зацикливания звука при "
"достижении конца аудиофайла, поскольку звук будет воспроизводиться бесконечно."

msgid ""
"If [code]true[/code], normalize the audio volume so that its peak volume is "
"equal to 0 dB. When enabled, normalization will make audio sound louder "
"depending on its original peak volume."
msgstr ""
"Если [code]true[/code], нормализовать громкость звука так, чтобы ее пиковая "
"громкость была равна 0 дБ. При включении нормализация сделает звук громче в "
"зависимости от его исходной пиковой громкости."

msgid ""
"If [code]true[/code], automatically trim the beginning and end of the audio "
"if it's lower than -50 dB after normalization (see [member edit/normalize]). "
"This prevents having files with silence at the beginning or end, which "
"increases their size unnecessarily and adds latency to the moment they are "
"played back. A fade-in/fade-out period of 500 samples is also used during "
"trimming to avoid audible pops."
msgstr ""
"Если [code]true[/code], автоматически обрезает начало и конец аудио, если оно "
"ниже -50 дБ после нормализации (см. [member edit/normalize]). Это "
"предотвращает наличие файлов с тишиной в начале или конце, что увеличивает их "
"размер без необходимости и добавляет задержку к моменту воспроизведения. Во "
"время обрезки также используется период нарастания/затухания, равный 500 "
"сэмплам, чтобы избежать слышимых хлопков."

msgid ""
"If [code]true[/code], forces the imported audio to use 8-bit quantization if "
"the source file is 16-bit or higher.\n"
"Enabling this is generally not recommended, as 8-bit quantization decreases "
"audio quality significantly. If you need smaller file sizes, consider using "
"Ogg Vorbis or MP3 audio instead."
msgstr ""
"Если [code]true[/code], импортированное аудио будет использовать 8-битную "
"квантизацию, если исходный файл 16-битный или выше. \n"
"Включение этого параметра обычно не рекомендуется, так как 8-битная "
"квантизация значительно снижает качество звука. Если вам нужны файлы меньшего "
"размера, рассмотрите возможность использования вместо этого аудио Ogg Vorbis "
"или MP3."

msgid ""
"If set to a value greater than [code]0[/code], forces the audio's sample rate "
"to be reduced to a value lower than or equal to the value specified in "
"[member force/max_rate_hz].\n"
"This can decrease file size noticeably on certain sounds, without impacting "
"quality depending on the actual sound's contents. See [url=$DOCS_URL/"
"tutorials/assets_pipeline/importing_audio_samples.html#doc-importing-audio-"
"samples-best-practices]Best practices[/url] for more information."
msgstr ""
"Если установлено значение больше [code]0[/code], частота дискретизации аудио "
"будет снижена до значения ниже или равного значению, указанному в [member "
"force/max_rate_hz]. \n"
"Это может заметно уменьшить размер файла для определенных звуков, не влияя на "
"качество в зависимости от фактического содержимого звука. См. [url=$DOCS_URL/"
"tutorials/assets_pipeline/importing_audio_samples.html#doc-importing-audio-"
"samples-best-practices]Лучшие практики[/url] для получения дополнительной "
"информации."

msgid ""
"The frequency to limit the imported audio sample to (in Hz). Only effective "
"if [member force/max_rate] is [code]true[/code]."
msgstr ""
"Частота, которой ограничивается импортируемый аудиосэмпл (в Гц). Действует "
"только если [member force/max_rate] равно [code]true[/code]."

msgid ""
"If [code]true[/code], forces the imported audio to be mono if the source file "
"is stereo. This decreases the file size by 50% by merging the two channels "
"into one."
msgstr ""
"Если [code]true[/code], то импортированное аудио становится моно, если "
"исходный файл — стерео. Это уменьшает размер файла на 50% за счет объединения "
"двух каналов в один."

msgid "A singleton for loading resource files."
msgstr "Синглтон для загрузки файлов ресурсов."

msgid ""
"A singleton used to load resource files from the filesystem.\n"
"It uses the many [ResourceFormatLoader] classes registered in the engine "
"(either built-in or from a plugin) to load files into memory and convert them "
"to a format that can be used by the engine.\n"
"[b]Note:[/b] You have to import the files into the engine first to load them "
"using [method load]. If you want to load [Image]s at run-time, you may use "
"[method Image.load]. If you want to import audio files, you can use the "
"snippet described in [member AudioStreamMP3.data].\n"
"[b]Note:[/b] Non-resource files such as plain text files cannot be read using "
"[ResourceLoader]. Use [FileAccess] for those files instead, and be aware that "
"non-resource files are not exported by default (see notes in the [FileAccess] "
"class description for instructions on exporting them)."
msgstr ""
"Одиночный объект, используемый для загрузки файлов ресурсов из файловой "
"системы.\n"
"Он использует множество классов [ResourceFormatLoader], зарегистрированных в "
"движке (встроенных или из плагина), для загрузки файлов в память и "
"преобразования их в формат, который может использоваться движком.\n"
"[b]Примечание:[/b] Сначала необходимо импортировать файлы в движок, чтобы "
"загрузить их с помощью [method load]. Если вы хотите загрузить [Image] во "
"время выполнения, вы можете использовать [method Image.load]. Если вы хотите "
"импортировать аудиофайлы, вы можете использовать фрагмент, описанный в "
"[member AudioStreamMP3.data].\n"
"[b]Примечание:[/b] Нересурсные файлы, такие как текстовые файлы, нельзя "
"прочитать с помощью [ResourceLoader]. Вместо этого используйте [FileAccess] "
"для этих файлов и имейте в виду, что нересурсные файлы по умолчанию не "
"экспортируются (см. примечания в описании класса [FileAccess] для получения "
"инструкций по их экспорту)."

msgid ""
"Registers a new [ResourceFormatLoader]. The ResourceLoader will use the "
"ResourceFormatLoader as described in [method load].\n"
"This method is performed implicitly for ResourceFormatLoaders written in "
"GDScript (see [ResourceFormatLoader] for more information)."
msgstr ""
"Регистрирует новый [ResourceFormatLoader]. ResourceLoader будет использовать "
"ResourceFormatLoader, как описано в [method load]. \n"
"Этот метод выполняется неявно для ResourceFormatLoaders, написанных на "
"GDScript (см. [ResourceFormatLoader] для получения дополнительной информации)."

msgid ""
"Returns whether a recognized resource exists for the given [param path].\n"
"An optional [param type_hint] can be used to further specify the [Resource] "
"type that should be handled by the [ResourceFormatLoader]. Anything that "
"inherits from [Resource] can be used as a type hint, for example [Image].\n"
"[b]Note:[/b] If you use [method Resource.take_over_path], this method will "
"return [code]true[/code] for the taken path even if the resource wasn't saved "
"(i.e. exists only in resource cache)."
msgstr ""
"Возвращает, существует ли распознанный ресурс для указанного [param path].\n"
"Необязательный [param type_hint] может использоваться для дальнейшего "
"указания типа [Resource], который должен обрабатываться "
"[ResourceFormatLoader]. Все, что наследуется от [Resource], может "
"использоваться как подсказка типа, например [Image].\n"
"[b]Примечание:[/b] Если вы используете [method Resource.take_over_path], этот "
"метод вернет [code]true[/code] для принятого пути, даже если ресурс не был "
"сохранен (т. е. существует только в кэше ресурсов)."

msgid ""
"Returns the cached resource reference for the given [param path].\n"
"[b]Note:[/b] If the resource is not cached, the returned [Resource] will be "
"invalid."
msgstr ""
"Возвращает ссылку на кэшированный ресурс для указанного [param path].\n"
"[b]Примечание:[/b] Если ресурс не кэширован, возвращаемый [Resource] будет "
"недействительным."

msgid ""
"Returns the dependencies for the resource at the given [param path].\n"
"Each dependency is a string that can be divided into sections by [code]::[/"
"code]. There can be either one section or three sections, with the second "
"section always being empty. When there is one section, it contains the file "
"path. When there are three sections, the first section contains the UID and "
"the third section contains the fallback path.\n"
"[codeblock]\n"
"for dependency in ResourceLoader.get_dependencies(path):\n"
"\tif dependency.contains(\"::\"):\n"
"\t\tprint(dependency.get_slice(\"::\", 0)) # Prints the UID.\n"
"\t\tprint(dependency.get_slice(\"::\", 2)) # Prints the fallback path.\n"
"\telse:\n"
"\t\tprint(dependency) # Prints the path.\n"
"[/codeblock]"
msgstr ""
"Возвращает зависимости для ресурса по указанному [param path].\n"
"Каждая зависимость — это строка, которую можно разделить на секции с помощью "
"[code]::[/code]. Секция может быть одна или три, при этом вторая секция "
"всегда пуста. Если секция одна, она содержит путь к файлу. Если секции три, "
"первая секция содержит UID, а третья — резервный путь.\n"
"[codeblock]\n"
"for dependency in ResourceLoader.get_dependencies(path):\n"
"\tif dependency.contains(\"::\"):\n"
"\t\tprint(dependency.get_slice(\"::\", 0)) # Печатает UID.\n"
"\t\tprint(dependency.get_slice(\"::\", 2)) # Печатает резервный путь.\n"
"\telse:\n"
"\t\tprint(dependency) # Печатает путь.\n"
"[/codeblock]"

msgid "Returns the list of recognized extensions for a resource type."
msgstr "Возвращает список распознанных расширений для типа ресурса."

msgid ""
"Returns the ID associated with a given resource path, or [code]-1[/code] when "
"no such ID exists."
msgstr ""
"Возвращает идентификатор, связанный с указанным путем к ресурсу, или "
"[code]-1[/code], если такой идентификатор не существует."

msgid ""
"Returns whether a cached resource is available for the given [param path].\n"
"Once a resource has been loaded by the engine, it is cached in memory for "
"faster access, and future calls to the [method load] method will use the "
"cached version. The cached resource can be overridden by using [method "
"Resource.take_over_path] on a new resource for that same path."
msgstr ""
"Возвращает, доступен ли кэшированный ресурс для указанного [param path].\n"
"После загрузки ресурса движком он кэшируется в памяти для более быстрого "
"доступа, и будущие вызовы метода [method load] будут использовать "
"кэшированную версию. Кэшированный ресурс можно переопределить, используя "
"[method Resource.take_over_path] для нового ресурса для того же пути."

msgid ""
"Lists a directory, returning all resources and subdirectories contained "
"within. The resource files have the original file names as visible in the "
"editor before exporting. The directories have [code]\"/\"[/code] appended.\n"
"[codeblock]\n"
"# Prints [\"extra_data/\", \"model.gltf\", \"model.tscn\", "
"\"model_slime.png\"]\n"
"print(ResourceLoader.list_directory(\"res://assets/enemies/slime\"))\n"
"[/codeblock]\n"
"[b]Note:[/b] The order of files and directories returned by this method is "
"not deterministic, and can vary between operating systems.\n"
"[b]Note:[/b] To normally traverse the filesystem, see [DirAccess]."
msgstr ""
"Перечисляет каталог, возвращая все ресурсы и подкаталоги, содержащиеся в нем. "
"Файлы ресурсов имеют исходные имена файлов, которые видны в редакторе перед "
"экспортом. К каталогам добавлены [code]\"/\"[/code].\n"
"[codeblock]\n"
"# Выводит [\"extra_data/\", \"model.gltf\", \"model.tscn\", "
"\"model_slime.png\"]\n"
"print(ResourceLoader.list_directory(\"res://assets/enemies/slime\"))\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Порядок файлов и каталогов, возвращаемых этим методом, не "
"является детерминированным и может различаться в зависимости от операционной "
"системы.\n"
"[b]Примечание:[/b] Чтобы нормально пройти по файловой системе, см. "
"[DirAccess]."

msgid ""
"Loads a resource at the given [param path], caching the result for further "
"access.\n"
"The registered [ResourceFormatLoader]s are queried sequentially to find the "
"first one which can handle the file's extension, and then attempt loading. If "
"loading fails, the remaining ResourceFormatLoaders are also attempted.\n"
"An optional [param type_hint] can be used to further specify the [Resource] "
"type that should be handled by the [ResourceFormatLoader]. Anything that "
"inherits from [Resource] can be used as a type hint, for example [Image].\n"
"The [param cache_mode] property defines whether and how the cache should be "
"used or updated when loading the resource.\n"
"Returns an empty resource if no [ResourceFormatLoader] could handle the file, "
"and prints an error if no file is found at the specified path.\n"
"GDScript has a simplified [method @GDScript.load] built-in method which can "
"be used in most situations, leaving the use of [ResourceLoader] for more "
"advanced scenarios.\n"
"[b]Note:[/b] If [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] is [code]true[/code], [method "
"@GDScript.load] will not be able to read converted files in an exported "
"project. If you rely on run-time loading of files present within the PCK, set "
"[member ProjectSettings.editor/export/convert_text_resources_to_binary] to "
"[code]false[/code].\n"
"[b]Note:[/b] Relative paths will be prefixed with [code]\"res://\"[/code] "
"before loading, to avoid unexpected results make sure your paths are absolute."
msgstr ""
"Загружает ресурс по указанному [param path], кэшируя результат для "
"дальнейшего доступа.\n"
"Зарегистрированные [ResourceFormatLoader] запрашиваются последовательно, "
"чтобы найти первый, который может обработать расширение файла, а затем "
"пытаются загрузить. Если загрузка не удалась, также пытаются загрузить "
"оставшиеся ResourceFormatLoader.\n"
"Необязательный [param type_hint] может использоваться для дальнейшего "
"указания типа [Resource], который должен обрабатываться "
"[ResourceFormatLoader]. Все, что наследуется от [Resource], может "
"использоваться в качестве подсказки типа, например [Image].\n"
"Свойство [param cache_mode] определяет, следует ли и как использовать или "
"обновлять кэш при загрузке ресурса.\n"
"Возвращает пустой ресурс, если ни один [ResourceFormatLoader] не может "
"обработать файл, и выводит ошибку, если файл не найден по указанному пути.\n"
"GDScript имеет упрощенный встроенный метод [method @GDScript.load], который "
"можно использовать в большинстве ситуаций, оставляя использование "
"[ResourceLoader] для более сложных сценариев.\n"
"[b]Примечание:[/b] Если [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] имеет значение [code]true[/code], [method "
"@GDScript.load] не сможет прочитать преобразованные файлы в экспортированном "
"проекте. Если вы полагаетесь на загрузку файлов, присутствующих в PCK, во "
"время выполнения, установите [member ProjectSettings.editor/export/"
"convert_text_resources_to_binary] на [code]false[/code].\n"
"[b]Примечание:[/b] Относительные пути будут иметь префикс [code]\"res://\"[/"
"code] перед загрузкой, чтобы избежать непредвиденных результатов, убедитесь, "
"что ваши пути абсолютные."

msgid ""
"Returns the resource loaded by [method load_threaded_request].\n"
"If this is called before the loading thread is done (i.e. [method "
"load_threaded_get_status] is not [constant THREAD_LOAD_LOADED]), the calling "
"thread will be blocked until the resource has finished loading. However, it's "
"recommended to use [method load_threaded_get_status] to known when the load "
"has actually completed."
msgstr ""
"Возвращает ресурс, загруженный [method load_threaded_request].\n"
"Если это вызывается до завершения потока загрузки (т. е. [method "
"load_threaded_get_status] не является [constant THREAD_LOAD_LOADED]), "
"вызывающий поток будет заблокирован до тех пор, пока ресурс не завершит "
"загрузку. Однако рекомендуется использовать [method "
"load_threaded_get_status], чтобы узнать, когда загрузка фактически завершена."

msgid ""
"Returns the status of a threaded loading operation started with [method "
"load_threaded_request] for the resource at [param path].\n"
"An array variable can optionally be passed via [param progress], and will "
"return a one-element array containing the ratio of completion of the threaded "
"loading (between [code]0.0[/code] and [code]1.0[/code]).\n"
"[b]Note:[/b] The recommended way of using this method is to call it during "
"different frames (e.g., in [method Node._process], instead of a loop)."
msgstr ""
"Возвращает статус операции потоковой загрузки, запущенной с помощью [method "
"load_threaded_request] для ресурса в [param path].\n"
"Переменная массива может быть дополнительно передана через [param progress] и "
"вернет одноэлементный массив, содержащий отношение завершения потоковой "
"загрузки (между [code]0.0[/code] и [code]1.0[/code]).\n"
"[b]Примечание:[/b] Рекомендуемый способ использования этого метода — вызывать "
"его во время разных кадров (например, в [method Node._process], а не в цикле)."

msgid ""
"Loads the resource using threads. If [param use_sub_threads] is [code]true[/"
"code], multiple threads will be used to load the resource, which makes "
"loading faster, but may affect the main thread (and thus cause game "
"slowdowns).\n"
"The [param cache_mode] parameter defines whether and how the cache should be "
"used or updated when loading the resource."
msgstr ""
"Загружает ресурс с помощью потоков. Если [param use_sub_threads] равен "
"[code]true[/code], для загрузки ресурса будет использоваться несколько "
"потоков, что ускоряет загрузку, но может повлиять на основной поток (и, таким "
"образом, вызвать замедление игры).\n"
"Параметр [param cache_mode] определяет, следует ли и как использовать или "
"обновлять кэш при загрузке ресурса."

msgid "Unregisters the given [ResourceFormatLoader]."
msgstr "Отменяет регистрацию указанного [ResourceFormatLoader]."

msgid ""
"Changes the behavior on missing sub-resources. The default behavior is to "
"abort loading."
msgstr ""
"Изменяет поведение при отсутствии подресурсов. Поведение по умолчанию — "
"прерывание загрузки."

msgid ""
"The resource is invalid, or has not been loaded with [method "
"load_threaded_request]."
msgstr ""
"Ресурс недействителен или не был загружен с помощью [method "
"load_threaded_request]."

msgid "The resource is still being loaded."
msgstr "Ресурс все еще загружается."

msgid "Some error occurred during loading and it failed."
msgstr "Вас постигла неудача, во время загрузки произошла ошибка."

msgid ""
"The resource was loaded successfully and can be accessed via [method "
"load_threaded_get]."
msgstr ""
"Ресурс успешно загружен и к нему можно получить доступ через [method "
"load_threaded_get]."

msgid "A node used to preload sub-resources inside a scene."
msgstr ""
"Узел, используемый для предварительной загрузки подресурсов внутри сцены, "
"прикинь."

msgid ""
"This node is used to preload sub-resources inside a scene, so when the scene "
"is loaded, all the resources are ready to use and can be retrieved from the "
"preloader. You can add the resources using the ResourcePreloader tab when the "
"node is selected.\n"
"GDScript has a simplified [method @GDScript.preload] built-in method which "
"can be used in most situations, leaving the use of [ResourcePreloader] for "
"more advanced scenarios."
msgstr ""
"Этот узел используется для предварительной загрузки подресурсов внутри сцены, "
"поэтому, когда сцена загружена, все ресурсы готовы к использованию и могут "
"быть извлечены из предварительного загрузчика. Вы можете добавить ресурсы с "
"помощью вкладки ResourcePreloader, когда выбран узел.\n"
"GDScript имеет упрощенный встроенный метод [method @GDScript.preload], "
"который можно использовать в большинстве ситуаций, оставляя использование "
"[ResourcePreloader] для более сложных сценариев."

msgid ""
"Adds a resource to the preloader with the given [param name]. If a resource "
"with the given [param name] already exists, the new resource will be renamed "
"to \"[param name] N\" where N is an incrementing number starting from 2."
msgstr ""
"Добавляет ресурс в предзагрузчик с указанным [param name]. Если ресурс с "
"указанным [param name] уже существует, новый ресурс будет переименован в "
"\"[param name] N\", где N — это увеличивающееся число, начиная с 2."

msgid "Returns the resource associated to [param name]."
msgstr "Возвращает ресурс, связанный с [param name]."

msgid "Returns the list of resources inside the preloader."
msgstr "Возвращает список ресурсов внутри предварительного загрузчика."

msgid ""
"Returns [code]true[/code] if the preloader contains a resource associated to "
"[param name]."
msgstr ""
"Возвращает [code]true[/code], если предварительный загрузчик содержит ресурс, "
"связанный с [param name]."

msgid "Removes the resource associated to [param name] from the preloader."
msgstr ""
"Удаляет ресурс, связанный с [param name], из предварительного загрузчика."

msgid ""
"Renames a resource inside the preloader from [param name] to [param newname]."
msgstr ""
"Переименовывает ресурс внутри предварительного загрузчика с [param name] на "
"[param newname]."

msgid "A singleton for saving [Resource]s to the filesystem."
msgstr "Синглтон для сохранения [Resource]-ов в файловой системе."

msgid ""
"A singleton for saving resource types to the filesystem.\n"
"It uses the many [ResourceFormatSaver] classes registered in the engine "
"(either built-in or from a plugin) to save resource data to text-based (e.g. "
"[code].tres[/code] or [code].tscn[/code]) or binary files (e.g. [code].res[/"
"code] or [code].scn[/code])."
msgstr ""
"Синглтон для сохранения типов ресурсов в файловой системе.\n"
"Он использует множество классов [ResourceFormatSaver], зарегистрированных в "
"движке (встроенных или из плагина), для сохранения данных ресурсов в "
"текстовых (например, [code].tres[/code] или [code].tscn[/code]) или двоичных "
"файлах (например, [code].res[/code] или [code].scn[/code])."

msgid ""
"Registers a new [ResourceFormatSaver]. The ResourceSaver will use the "
"ResourceFormatSaver as described in [method save].\n"
"This method is performed implicitly for ResourceFormatSavers written in "
"GDScript (see [ResourceFormatSaver] for more information)."
msgstr ""
"Регистрирует новый [ResourceFormatSaver]. ResourceSaver будет использовать "
"ResourceFormatSaver, как описано в [method save]. \n"
"Этот метод выполняется неявно для ResourceFormatSavers, написанных на "
"GDScript (см. [ResourceFormatSaver] для получения дополнительной информации)."

msgid ""
"Returns the list of extensions available for saving a resource of a given "
"type."
msgstr ""
"Возвращает список расширений, доступных для сохранения ресурса заданного типа."

msgid ""
"Returns the resource ID for the given path. If [param generate] is "
"[code]true[/code], a new resource ID will be generated if one for the path is "
"not found. If [param generate] is [code]false[/code] and the path is not "
"found, [constant ResourceUID.INVALID_ID] is returned."
msgstr ""
"Возвращает идентификатор ресурса для указанного пути. Если [param generate] "
"равен [code]true[/code], будет сгенерирован новый идентификатор ресурса, если "
"он для пути не найден. Если [param generate] равен [code]false[/code] и путь "
"не найден, возвращается [constant ResourceUID.INVALID_ID]."

msgid "Unregisters the given [ResourceFormatSaver]."
msgstr "Отменяет регистрацию указанного [ResourceFormatSaver]."

msgid ""
"Saves a resource to disk to the given path, using a [ResourceFormatSaver] "
"that recognizes the resource object. If [param path] is empty, "
"[ResourceSaver] will try to use [member Resource.resource_path].\n"
"The [param flags] bitmask can be specified to customize the save behavior.\n"
"Returns [constant OK] on success.\n"
"[b]Note:[/b] When the project is running, any generated UID associated with "
"the resource will not be saved as the required code is only executed in "
"editor mode."
msgstr ""
"Сохраняет ресурс на диске по указанному пути, используя "
"[ResourceFormatSaver], который распознает объект ресурса. Если [param path] "
"пуст, [ResourceSaver] попытается использовать [member "
"Resource.resource_path].\n"
"Можно указать битовую маску [param flags] для настройки поведения "
"сохранения.\n"
"Возвращает [constant OK] при успешном выполнении.\n"
"[b]Примечание:[/b] Когда проект запущен, любой сгенерированный UID, связанный "
"с ресурсом, не будет сохранен, поскольку требуемый код выполняется только в "
"режиме редактора."

msgid ""
"Sets the UID of the given [param resource] path to [param uid]. You can "
"generate a new UID using [method ResourceUID.create_id].\n"
"Since resources will normally get a UID automatically, this method is only "
"useful in very specific cases."
msgstr ""
"Устанавливает UID указанного пути [param resource] на [param uid]. Вы можете "
"сгенерировать новый UID с помощью [method ResourceUID.create_id].\n"
"Поскольку ресурсы обычно получают UID автоматически, этот метод полезен "
"только в очень особых случаях."

msgid "No resource saving option."
msgstr "Нет возможности экономии ресурсов."

msgid "Save the resource with a path relative to the scene which uses it."
msgstr "Сохраните ресурс с путем относительно сцены, которая его использует."

msgid "Bundles external resources."
msgstr "Пакеты внешних ресурсов."

msgid ""
"Changes the [member Resource.resource_path] of the saved resource to match "
"its new location."
msgstr ""
"Изменяет [member Resource.resource_path] сохраненного ресурса в соответствии "
"с его новым местоположением."

msgid ""
"Do not save editor-specific metadata (identified by their [code]__editor[/"
"code] prefix)."
msgstr ""
"Не сохраняйте метаданные, специфичные для редактора (идентифицируемые "
"префиксом [code]__editor[/code])."

msgid "Save as big endian (see [member FileAccess.big_endian])."
msgstr "Сохранить как big endian (см. [member FileAccess.big_endian])."

msgid ""
"Compress the resource on save using [constant FileAccess.COMPRESSION_ZSTD]. "
"Only available for binary resource types."
msgstr ""
"Сжимать ресурс при сохранении с помощью [constant "
"FileAccess.COMPRESSION_ZSTD]. Доступно только для двоичных типов ресурсов."

msgid ""
"Take over the paths of the saved subresources (see [method "
"Resource.take_over_path])."
msgstr ""
"Перенять пути сохраненных подресурсов (см. [method Resource.take_over_path])."

msgid ""
"A singleton that manages the unique identifiers of all resources within a "
"project."
msgstr ""
"Синглтон, управляющий уникальными идентификаторами всех ресурсов в проекте."

msgid ""
"Resource UIDs (Unique IDentifiers) allow the engine to keep references "
"between resources intact, even if files are renamed or moved. They can be "
"accessed with [code]uid://[/code].\n"
"[ResourceUID] keeps track of all registered resource UIDs in a project, "
"generates new UIDs, and converts between their string and integer "
"representations."
msgstr ""
"UID ресурсов (Уникальные Идентификаторы) позволяют движку сохранять ссылки "
"между ресурсами нетронутыми, даже если файлы переименованы или перемещены. К "
"ним можно получить доступ с помощью [code]uid://[/code].\n"
"[ResourceUID] отслеживает все зарегистрированные UID ресурсов в проекте, "
"генерирует новые UID и преобразует их между строковыми и целочисленными "
"представлениями."

msgid ""
"Adds a new UID value which is mapped to the given resource path.\n"
"Fails with an error if the UID already exists, so be sure to check [method "
"has_id] beforehand, or use [method set_id] instead."
msgstr ""
"Добавляет новое значение UID, которое сопоставляется с указанным путем "
"ресурса.\n"
"Выполняется с ошибкой, если UID уже существует, поэтому обязательно проверьте "
"[method has_id] заранее или используйте вместо него [method set_id]."

msgid ""
"Generates a random resource UID which is guaranteed to be unique within the "
"list of currently loaded UIDs.\n"
"In order for this UID to be registered, you must call [method add_id] or "
"[method set_id]."
msgstr ""
"Генерирует случайный UID ресурса, который гарантированно будет уникальным в "
"списке загруженных в данный момент UID.\n"
"Чтобы зарегистрировать этот UID, необходимо вызвать [method add_id] или "
"[method set_id]."

msgid ""
"Like [method create_id], but the UID is seeded with the provided [param path] "
"and project name. UIDs generated for that path will be always the same within "
"the current project."
msgstr ""
"Как и [method create_id], но UID заполняется предоставленным [param path] и "
"именем проекта. UID сгенерированные для этого пути, всегда будут одинаковыми "
"в текущем проекте."

msgid ""
"Returns a path, converting [param path_or_uid] if necessary. Prints an error "
"if provided an invalid UID."
msgstr ""
"Возвращает путь, при необходимости преобразуя [param path_or_uid]. Выводит "
"ошибку, если указан недопустимый UID."

msgid ""
"Returns the path that the given UID value refers to.\n"
"Fails with an error if the UID does not exist, so be sure to check [method "
"has_id] beforehand."
msgstr ""
"Возвращает путь, на который ссылается заданное значение UID.\n"
"Выполняется с ошибкой, если UID не существует, поэтому обязательно проверьте "
"[method has_id] заранее."

msgid "Returns whether the given UID value is known to the cache."
msgstr "Возвращает, известно ли кэшу заданное значение UID."

msgid "Converts the given UID to a [code]uid://[/code] string value."
msgstr "Преобразует заданный UID в строковое значение [code]uid://[/code]."

msgid ""
"Converts the provided resource [param path] to a UID. Returns the unchanged "
"path if it has no associated UID."
msgstr ""
"Преобразует предоставленный ресурс [param path] в UID. Возвращает "
"неизмененный путь, если у него нет связанного UID."

msgid ""
"Removes a loaded UID value from the cache.\n"
"Fails with an error if the UID does not exist, so be sure to check [method "
"has_id] beforehand."
msgstr ""
"Удаляет загруженное значение UID из кэша.\n"
"Выдает ошибку, если UID не существует, поэтому обязательно проверьте [method "
"has_id] заранее."

msgid ""
"Updates the resource path of an existing UID.\n"
"Fails with an error if the UID does not exist, so be sure to check [method "
"has_id] beforehand, or use [method add_id] instead."
msgstr ""
"Обновляет путь к ресурсу существующего UID.\n"
"Выполняется с ошибкой, если UID не существует, поэтому обязательно проверьте "
"[method has_id] заранее или используйте вместо него [method add_id]."

msgid "Extracts the UID value from the given [code]uid://[/code] string."
msgstr "Извлекает значение UID из заданной строки [code]uid://[/code]."

msgid ""
"Converts the provided [param uid] to a path. Prints an error if the UID is "
"invalid."
msgstr ""
"Преобразует предоставленный [param uid] в путь. Выводит ошибку, если UID "
"недействителен."

msgid ""
"The value to use for an invalid UID, for example if the resource could not be "
"loaded.\n"
"Its text representation is [code]uid://<invalid>[/code]."
msgstr ""
"Значение, которое следует использовать для недопустимого UID, например, если "
"ресурс не удалось загрузить. \n"
"Его текстовое представление — [code]uid://<invalid>[/code]."

msgid ""
"A modifier to transfer parent skeleton poses (or global poses) to child "
"skeletons in model space with different rests."
msgstr ""
"Модификатор для переноса поз родительского скелета (или глобальных поз) на "
"дочерние скелеты в пространстве модели с различными опорами."

msgid ""
"Retrieves the pose (or global pose) relative to the parent Skeleton's rest in "
"model space and transfers it to the child Skeleton.\n"
"This modifier rewrites the pose of the child skeleton directly in the parent "
"skeleton's update process. This means that it overwrites the mapped bone pose "
"set in the normal process on the target skeleton. If you want to set the "
"target skeleton bone pose after retargeting, you will need to add a "
"[SkeletonModifier3D] child to the target skeleton and thereby modify the "
"pose.\n"
"[b]Note:[/b] When the [member use_global_pose] is enabled, even if it is an "
"unmapped bone, it can cause visual problems because the global pose is "
"applied ignoring the parent bone's pose [b]if it has mapped bone children[/"
"b]. See also [member use_global_pose]."
msgstr ""
"Извлекает позу (или глобальную позу) относительно покоя родительского скелета "
"в пространстве модели и переносит ее в дочерний скелет.\n"
"Этот модификатор переписывает позу дочернего скелета непосредственно в "
"процессе обновления родительского скелета. Это означает, что он "
"перезаписывает сопоставленную позу кости, установленную в обычном процессе на "
"целевом скелете. Если вы хотите установить позу кости целевого скелета после "
"перенацеливания, вам нужно будет добавить дочерний элемент "
"[SkeletonModifier3D] к целевому скелету и тем самым изменить позу.\n"
"[b]Примечание:[/b] Когда включен [member use_global_pose], даже если это не "
"сопоставленная кость, это может вызвать визуальные проблемы, поскольку "
"глобальная поза применяется, игнорируя позу родительской кости [b], если у "
"нее есть сопоставленные дочерние кости[/b]. См. также [member "
"use_global_pose]."

msgid ""
"Returns [code]true[/code] if [member enable] has [constant "
"TRANSFORM_FLAG_POSITION]."
msgstr ""
"Возвращает [code]истина[/code], если [member enable имеет [constant "
"TRANSFORM_FLAG_POSITION]."

msgid ""
"Returns [code]true[/code] if [member enable] has [constant "
"TRANSFORM_FLAG_ROTATION]."
msgstr ""
"Возвращает [code]true[/code], если [member Enable] имеет [constant "
"TRANSFORM_FLAG_ROTATION]."

msgid ""
"Returns [code]true[/code] if [member enable] has [constant "
"TRANSFORM_FLAG_SCALE]."
msgstr ""
"Возвращает [code]true[/code], если [member Enable] имеет [constant "
"TRANSFORM_FLAG_SCALE]."

msgid "Sets [constant TRANSFORM_FLAG_POSITION] into [member enable]."
msgstr "Устанавливает [constant TRANSFORM_FLAG_POSITION] в [member enable]."

msgid "Sets [constant TRANSFORM_FLAG_ROTATION] into [member enable]."
msgstr "Устанавливает [constant TRANSFORM_FLAG_ROTATION] в [member enable]."

msgid "Sets [constant TRANSFORM_FLAG_SCALE] into [member enable]."
msgstr "Устанавливает [constant TRANSFORM_FLAG_SCALE] в [member enable]."

msgid ""
"Flags to control the process of the transform elements individually when "
"[member use_global_pose] is disabled."
msgstr ""
"Флаги для индивидуального управления процессом преобразования элементов, "
"когда [member use_global_pose] отключен."

msgid ""
"[SkeletonProfile] for retargeting bones with names matching the bone list."
msgstr ""
"[SkeletonProfile] для перенацеливания костей с названиями, соответствующими "
"списку костей."

msgid ""
"If [code]false[/code], in case the target skeleton has fewer bones than the "
"source skeleton, the source bone parent's transform will be ignored.\n"
"Instead, it is possible to retarget between models with different body "
"shapes, and position, rotation, and scale can be retargeted separately.\n"
"If [code]true[/code], retargeting is performed taking into account global "
"pose.\n"
"In case the target skeleton has fewer bones than the source skeleton, the "
"source bone parent's transform is taken into account. However, bone length "
"between skeletons must match exactly, if not, the bones will be forced to "
"expand or shrink.\n"
"This is useful for using dummy bone with length [code]0[/code] to match "
"postures when retargeting between models with different number of bones."
msgstr ""
"Если [code]false[/code], в случае, если целевой скелет имеет меньше костей, "
"чем исходный скелет, преобразование исходной кости-родителя будет "
"проигнорировано.\n"
"Вместо этого можно перенацеливаться между моделями с разными формами тела, а "
"положение, поворот и масштаб могут перенацеливаться отдельно.\n"
"Если [code]true[/code], перенацеливание выполняется с учетом глобальной "
"позы.\n"
"В случае, если целевой скелет имеет меньше костей, чем исходный скелет, "
"учитывается преобразование исходной кости-родителя. Однако длина костей между "
"скелетами должна точно совпадать, в противном случае кости будут вынуждены "
"расширяться или сжиматься.\n"
"Это полезно для использования фиктивной кости с длиной [code]0[/code] для "
"сопоставления поз при перенацеливании между моделями с разным количеством "
"костей."

msgid "If set, allows to retarget the position."
msgstr "Если установлено, позволяет перенацелить позицию."

msgid "If set, allows to retarget the rotation."
msgstr "Если установлено, позволяет перенацелить ротацию."

msgid "If set, allows to retarget the scale."
msgstr "Если установлено, позволяет перенаправить масштаб."

msgid "If set, allows to retarget the position/rotation/scale."
msgstr "Если установлено, позволяет перенацелить положение/поворот/масштаб."

msgid "Represents a straight ribbon-shaped [PrimitiveMesh] with variable width."
msgstr ""
"Представляет собой прямую лентовидную [PrimitiveMesh] с переменной шириной."

msgid ""
"[RibbonTrailMesh] represents a straight ribbon-shaped mesh with variable "
"width. The ribbon is composed of a number of flat or cross-shaped sections, "
"each with the same [member section_length] and number of [member "
"section_segments]. A [member curve] is sampled along the total length of the "
"ribbon, meaning that the curve determines the size of the ribbon along its "
"length.\n"
"This primitive mesh is usually used for particle trails."
msgstr ""
"[RibbonTrailMesh] представляет собой прямую лентообразную сетку с переменной "
"шириной. Лента состоит из ряда плоских или крестообразных секций, каждая из "
"которых имеет одинаковую [member section_length] и количество [member "
"section_segments]. [Member curve] выбирается по всей длине ленты, что "
"означает, что кривая определяет размер ленты по ее длине.\n"
"Эта примитивная сетка обычно используется для следов частиц."

msgid "3D Particle trails"
msgstr "Трехмерные следы частиц"

msgid ""
"Determines the size of the ribbon along its length. The size of a particular "
"section segment is obtained by multiplying the baseline [member size] by the "
"value of this curve at the given distance. For values smaller than [code]0[/"
"code], the faces will be inverted. Should be a unit [Curve]."
msgstr ""
"Определяет размер ленты по ее длине. Размер конкретного сегмента секции "
"получается путем умножения базовой линии [member size] на значение этой "
"кривой на заданном расстоянии. Для значений, меньших [code]0[/code], грани "
"будут инвертированы. Должна быть единицей [Curve]."

msgid "The length of a section of the ribbon."
msgstr "Длина отрезка ленты."

msgid ""
"The number of segments in a section. The [member curve] is sampled on each "
"segment to determine its size. Higher values result in a more detailed ribbon "
"at the cost of performance."
msgstr ""
"Количество сегментов в секции. [member curve] выбирается на каждом сегменте "
"для определения его размера. Более высокие значения приводят к более "
"подробной ленте за счет производительности."

msgid "The total number of sections on the ribbon."
msgstr "Общее количество разделов на ленте."

msgid "Determines the shape of the ribbon."
msgstr "Определяет форму ленты."

msgid ""
"The baseline size of the ribbon. The size of a particular section segment is "
"obtained by multiplying this size by the value of the [member curve] at the "
"given distance."
msgstr ""
"Базовый размер ленты. Размер конкретного сегмента сечения получается путем "
"умножения этого размера на значение [member curve] на заданном расстоянии."

msgid "Gives the mesh a single flat face."
msgstr "Придает сетке одну плоскую поверхность."

msgid "Gives the mesh two perpendicular flat faces, making a cross shape."
msgstr ""
"Придает сетке две перпендикулярные плоские грани, образуя крестообразную "
"форму."

msgid "A custom effect for a [RichTextLabel]."
msgstr "Пользовательский эффект для [RichTextLabel]."

msgid ""
"A custom effect for a [RichTextLabel], which can be loaded in the "
"[RichTextLabel] inspector or using [method RichTextLabel.install_effect].\n"
"[b]Note:[/b] For a [RichTextEffect] to be usable, a BBCode tag must be "
"defined as a member variable called [code]bbcode[/code] in the script.\n"
"[codeblocks]\n"
"[gdscript skip-lint]\n"
"# The RichTextEffect will be usable like this: `[example]Some text[/"
"example]`\n"
"var bbcode = \"example\"\n"
"[/gdscript]\n"
"[csharp skip-lint]\n"
"// The RichTextEffect will be usable like this: `[example]Some text[/"
"example]`\n"
"string bbcode = \"example\";\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] As soon as a [RichTextLabel] contains at least one "
"[RichTextEffect], it will continuously process the effect unless the project "
"is paused. This may impact battery life negatively."
msgstr ""
"Пользовательский эффект для [RichTextLabel], который можно загрузить в "
"инспекторе [RichTextLabel] или с помощью [method "
"RichTextLabel.install_effect].\n"
"[b]Примечание:[/b] Чтобы [RichTextEffect] можно было использовать, тег BBCode "
"должен быть определен как переменная-член с именем [code]bbcode[/code] в "
"скрипте.\n"
"[codeblocks]\n"
"[gdscript skip-lint]\n"
"# RichTextEffect можно будет использовать следующим образом: `[example]Some "
"text[/example]`\n"
"var bbcode = \"example\"\n"
"[/gdscript]\n"
"[csharp skip-lint]\n"
"// RichTextEffect можно будет использовать следующим образом: `[example]Some "
"text[/example]`\n"
"string bbcode = \"example\";\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Как только [RichTextLabel] содержит хотя бы один "
"[RichTextEffect], он будет непрерывно обрабатывать эффект, если проект не "
"будет приостановлен. Это может негативно повлиять на срок службы батареи "
"(П.П.-?чего?)."

msgid "RichTextEffect test project (third-party)"
msgstr "Тестовый проект RichTextEffect (сторонний)"

msgid ""
"Override this method to modify properties in [param char_fx]. The method must "
"return [code]true[/code] if the character could be transformed successfully. "
"If the method returns [code]false[/code], it will skip transformation to "
"avoid displaying broken text."
msgstr ""
"Переопределите этот метод для изменения свойств в [param char_fx]. Метод "
"должен возвращать [code]true[/code], если символ может быть успешно "
"преобразован. Если метод возвращает [code]false[/code], он пропустит "
"преобразование, чтобы избежать отображения сломанного текста."

msgid ""
"A control for displaying text that can contain different font styles, images, "
"and basic formatting."
msgstr ""
"Элемент управления для отображения текста, который может содержать различные "
"стили шрифтов, изображения и базовое форматирование."

msgid ""
"A control for displaying text that can contain custom fonts, images, and "
"basic formatting. [RichTextLabel] manages these as an internal tag stack. It "
"also adapts itself to given width/heights.\n"
"[b]Note:[/b] [method newline], [method push_paragraph], [code]\"\\n\"[/code], "
"[code]\"\\r\\n\"[/code], [code]p[/code] tag, and alignment tags start a new "
"paragraph. Each paragraph is processed independently, in its own BiDi "
"context. If you want to force line wrapping within paragraph, any other line "
"breaking character can be used, for example, Form Feed (U+000C), Next Line "
"(U+0085), Line Separator (U+2028).\n"
"[b]Note:[/b] Assignments to [member text] clear the tag stack and reconstruct "
"it from the property's contents. Any edits made to [member text] will erase "
"previous edits made from other manual sources such as [method append_text] "
"and the [code]push_*[/code] / [method pop] methods.\n"
"[b]Note:[/b] RichTextLabel doesn't support entangled BBCode tags. For "
"example, instead of using [code skip-lint][b]bold[i]bold italic[/b]italic[/i]"
"[/code], use [code skip-lint][b]bold[i]bold italic[/i][/b][i]italic[/i][/"
"code].\n"
"[b]Note:[/b] [code]push_*/pop_*[/code] functions won't affect BBCode.\n"
"[b]Note:[/b] While [member bbcode_enabled] is enabled, alignment tags such as "
"[code skip-lint][center][/code] will take priority over the [member "
"horizontal_alignment] setting which determines the default text alignment."
msgstr ""
"Элемент управления для отображения текста, который может содержать "
"пользовательские шрифты, изображения и базовое форматирование. "
"[RichTextLabel] управляет ими как внутренним стеком тегов. Он также "
"адаптируется к заданной ширине/высоте.\n"
"[b]Примечание:[/b] [method newline], [method push_paragraph], [code]\"\\n\"[/"
"code], [code]\"\\r\\n\"[/code], тег [code]p[/code] и теги выравнивания "
"начинают новый абзац. Каждый абзац обрабатывается независимо, в своем "
"собственном контексте BiDi. Если вы хотите принудительно перенести строку "
"внутри абзаца, можно использовать любой другой символ разрыва строки, "
"например, Form Feed (U+000C), Next Line (U+0085), Line Separator (U+2028).\n"
"[b]Примечание:[/b] Присвоения [member text] очищают стек тегов и "
"восстанавливают его из содержимого свойства. Любые изменения, внесенные в "
"[member text], удалят предыдущие изменения, внесенные из других ручных "
"источников, таких как [method append_text] и методы [code]push_*[/code] / "
"[method pop].\n"
"[b]Примечание:[/b] RichTextLabel не поддерживает переплетенные теги BBCode. "
"Например, вместо использования [code skip-lint][b]bold[i]bold italic[/"
"b]italic[/i][/code] используйте [code skip-lint][b]bold[i]bold italic[/i][/b]"
"[i]italic[/i][/code].\n"
"[b]Примечание:[/b] Функции [code]push_*/pop_*[/code] не повлияют на BBCode.\n"
"[b]Примечание:[/b] Пока [member bbcode_enabled] включен, теги выравнивания, "
"такие как [code skip-lint][center][/code], будут иметь приоритет над "
"настройкой [member horizontal_alignment], которая определяет выравнивание "
"текста по умолчанию."

msgid "Rich Text Label with BBCode Demo"
msgstr "Ярлык Rich Text с демонстрацией BBCode"

msgid ""
"Adds a horizontal rule that can be used to separate content.\n"
"If [param width_in_percent] is set, [param width] values are percentages of "
"the control width instead of pixels.\n"
"If [param height_in_percent] is set, [param height] values are percentages of "
"the control width instead of pixels."
msgstr ""
"Добавляет горизонтальную линию, которую можно использовать для разделения "
"контента.\n"
"Если задан [param width_in_percent], [param width] значения представляют "
"собой проценты от ширины элемента управления, а не пиксели.\n"
"Если задан [param height_in_percent, [param height] значения представляют "
"собой проценты от ширины элемента управления, а не пиксели."

msgid ""
"Adds an image's opening and closing tags to the tag stack, optionally "
"providing a [param width] and [param height] to resize the image, a [param "
"color] to tint the image and a [param region] to only use parts of the "
"image.\n"
"If [param width] or [param height] is set to 0, the image size will be "
"adjusted in order to keep the original aspect ratio.\n"
"If [param width] and [param height] are not set, but [param region] is, the "
"region's rect will be used.\n"
"[param key] is an optional identifier, that can be used to modify the image "
"via [method update_image].\n"
"If [param pad] is set, and the image is smaller than the size specified by "
"[param width] and [param height], the image padding is added to match the "
"size instead of upscaling.\n"
"If [param width_in_percent] is set, [param width] values are percentages of "
"the control width instead of pixels.\n"
"If [param height_in_percent] is set, [param height] values are percentages of "
"the control width instead of pixels.\n"
"[param alt_text] is used as the image description for assistive apps."
msgstr ""
"Добавляет открывающий и закрывающий теги изображения в стек тегов, при "
"необходимости предоставляя параметры [param width] и [param height] для "
"изменения размера изображения, [param color] для изменения оттенка "
"изображения и [param region] для использования только частей изображения.\n"
"Если [param width] или [param height] равны 0, размер изображения будет "
"скорректирован с сохранением исходного соотношения сторон.\n"
"Если [param width] и [param height] не заданы, а [param region] задан, будет "
"использоваться прямоугольник области.\n"
"[param key] — необязательный идентификатор, который можно использовать для "
"изменения изображения с помощью [method update_image].\n"
"Если задан параметр [param pad], а изображение меньше размера, указанного "
"параметрами [param width] и [param height], вместо масштабирования "
"добавляется отступ изображения для соответствия размеру.\n"
"Если задан параметр [param width_in_percent], значения параметра [param "
"width] представляют собой проценты от ширины элемента управления, а не "
"пиксели.\n"
"Если задан параметр [param height_in_percent], значения параметра [param "
"height] представляют собой проценты от ширины элемента управления, а не "
"пиксели.\n"
"[param alt_text] используется в качестве описания изображения для "
"вспомогательных приложений."

msgid "Adds raw non-BBCode-parsed text to the tag stack."
msgstr ""
"Добавляет необработанный текст, не прошедший анализ с помощью BBCode, в стек "
"тегов."

msgid ""
"Parses [param bbcode] and adds tags to the tag stack as needed.\n"
"[b]Note:[/b] Using this method, you can't close a tag that was opened in a "
"previous [method append_text] call. This is done to improve performance, "
"especially when updating large RichTextLabels since rebuilding the whole "
"BBCode every time would be slower. If you absolutely need to close a tag in a "
"future method call, append the [member text] instead of using [method "
"append_text]."
msgstr ""
"Анализирует [param bbcode] и добавляет теги в стек тегов по мере "
"необходимости.\n"
"[b]Примечание:[/b] Используя этот метод, вы не можете закрыть тег, который "
"был открыт в предыдущем вызове [method append_text]. Это делается для "
"повышения производительности, особенно при обновлении больших RichTextLabels, "
"поскольку перестроение всего BBCode каждый раз будет медленнее. Если вам "
"абсолютно необходимо закрыть тег в будущем вызове метода, добавьте [member "
"text] вместо использования [method append_text]."

msgid ""
"Clears the tag stack, causing the label to display nothing.\n"
"[b]Note:[/b] This method does not affect [member text], and its contents will "
"show again if the label is redrawn. However, setting [member text] to an "
"empty [String] also clears the stack."
msgstr ""
"Очищает стек тегов, в результате чего метка ничего не отображает.\n"
"[b]Примечание:[/b] Этот метод не влияет на [member text], и его содержимое "
"снова отобразится, если метка будет перерисована. Однако установка [member "
"text] на пустую [String] также очищает стек."

msgid ""
"Returns the line number of the character position provided. Line and "
"character numbers are both zero-indexed.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Возвращает номер строки указанной позиции символа. Номера строк и символов "
"индексируются нулем.\n"
"[b]Примечание:[/b] Если включен [member threaded], этот метод возвращает "
"значение для загруженной части документа. Используйте [method is_finished] "
"или [signalfinished], чтобы определить, полностью ли загружен документ."

msgid ""
"Returns the paragraph number of the character position provided. Paragraph "
"and character numbers are both zero-indexed.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Возвращает номер абзаца указанной позиции символа. Номера абзацев и символов "
"индексируются нулем.\n"
"[b]Примечание:[/b] Если включен [member threaded], этот метод возвращает "
"значение для загруженной части документа. Используйте [method is_finished] "
"или [signalfinished], чтобы определить, полностью ли загружен документ."

msgid ""
"Returns the height of the content.\n"
"[b]Note:[/b] This method always returns the full content size, and is not "
"affected by [member visible_ratio] and [member visible_characters]. To get "
"the visible content size, use [method get_visible_content_rect].\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Возвращает высоту содержимого.\n"
"[b]Примечание:[/b] Этот метод всегда возвращает полный размер содержимого и "
"не зависит от [member visible_ratio] и [member visible_characters]. Чтобы "
"получить размер видимого содержимого, используйте [method "
"get_visible_content_rect].\n"
"[b]Примечание:[/b] Если включен [member threaded], этот метод возвращает "
"значение для загруженной части документа. Используйте [method is_finished] "
"или [signal finished], чтобы определить, полностью ли загружен документ."

msgid ""
"Returns the width of the content.\n"
"[b]Note:[/b] This method always returns the full content size, and is not "
"affected by [member visible_ratio] and [member visible_characters]. To get "
"the visible content size, use [method get_visible_content_rect].\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Возвращает ширину содержимого.\n"
"[b]Примечание:[/b] Этот метод всегда возвращает полный размер содержимого и "
"не зависит от [member visible_ratio] и [member visible_characters]. Чтобы "
"получить размер видимого содержимого, используйте [method "
"get_visible_content_rect].\n"
"[b]Примечание:[/b] Если включен [member threaded], этот метод возвращает "
"значение для загруженной части документа. Используйте [method is_finished] "
"или [signal finished], чтобы определить, полностью ли загружен документ."

msgid ""
"Returns the total number of lines in the text. Wrapped text is counted as "
"multiple lines.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Возвращает общее количество строк в тексте. Перенесённый текст считается за "
"несколько строк.\n"
"[b]Примечание:[/b] Если включено [member threaded], этот метод возвращает "
"значение для загруженной части документа. Используйте [method is_finished] "
"или [signal finished], чтобы определить, полностью ли загружен документ."

msgid ""
"Returns the height of the line found at the provided index.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether the document is fully loaded."
msgstr ""
"Возвращает высоту строки, найденной по указанному индексу.\n"
"[b]Примечание:[/b] Если включен [member threaded], этот метод возвращает "
"значение для загруженной части документа. Используйте [method is_finished] "
"или [signal finished], чтобы определить, полностью ли загружен документ."

msgid ""
"Returns the vertical offset of the line found at the provided index.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Возвращает вертикальное смещение строки, найденной по указанному индексу.\n"
"[b]Примечание:[/b] Если включен [member threaded], этот метод возвращает "
"значение для загруженной части документа. Используйте [method is_finished] "
"или [signalfinished], чтобы определить, полностью ли загружен документ."

msgid ""
"Returns the indexes of the first and last visible characters for the given "
"[param line], as a [Vector2i].\n"
"[b]Note:[/b] If [member visible_characters_behavior] is set to [constant "
"TextServer.VC_CHARS_BEFORE_SHAPING] only visible wrapped lines are counted.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Возвращает индексы первого и последнего видимых символов для заданной [param "
"line] в виде [Vector2i].\n"
"[b]Примечание:[/b] Если [member visible_characters_behavior] установлен в "
"[constant TextServer.VC_CHARS_BEFORE_SHAPING], учитываются только видимые "
"перенесенные строки.\n"
"[b]Примечание:[/b] Если [member threaded] включен, этот метод возвращает "
"значение для загруженной части документа. Используйте [method is_finished] "
"или [signalfinished], чтобы определить, полностью ли загружен документ."

msgid ""
"Returns the width of the line found at the provided index.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether the document is fully loaded."
msgstr ""
"Возвращает ширину строки, найденной по указанному индексу.\n"
"[b]Примечание:[/b] Если включен [member threaded], этот метод возвращает "
"значение для загруженной части документа. Используйте [method is_finished] "
"или [signal finished], чтобы определить, полностью ли загружен документ."

msgid ""
"Returns the [PopupMenu] of this [RichTextLabel]. By default, this menu is "
"displayed when right-clicking on the [RichTextLabel].\n"
"You can add custom menu items or remove standard ones. Make sure your IDs "
"don't conflict with the standard ones (see [enum MenuItems]). For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar menu = get_menu()\n"
"\t# Remove \"Select All\" item.\n"
"\tmenu.remove_item(MENU_SELECT_ALL)\n"
"\t# Add custom items.\n"
"\tmenu.add_separator()\n"
"\tmenu.add_item(\"Duplicate Text\", MENU_MAX + 1)\n"
"\t# Connect callback.\n"
"\tmenu.id_pressed.connect(_on_item_pressed)\n"
"\n"
"func _on_item_pressed(id):\n"
"\tif id == MENU_MAX + 1:\n"
"\t\tadd_text(\"\\n\" + get_parsed_text())\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar menu = GetMenu();\n"
"\t// Remove \"Select All\" item.\n"
"\tmenu.RemoveItem(RichTextLabel.MenuItems.SelectAll);\n"
"\t// Add custom items.\n"
"\tmenu.AddSeparator();\n"
"\tmenu.AddItem(\"Duplicate Text\", RichTextLabel.MenuItems.Max + 1);\n"
"\t// Add event handler.\n"
"\tmenu.IdPressed += OnItemPressed;\n"
"}\n"
"\n"
"public void OnItemPressed(int id)\n"
"{\n"
"\tif (id == TextEdit.MenuItems.Max + 1)\n"
"\t{\n"
"\t\tAddText(\"\\n\" + GetParsedText());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member Window.visible] property."
msgstr ""
"Возвращает [PopupMenu] этого [RichTextLabel]. По умолчанию это меню "
"отображается при щелчке правой кнопкой мыши по [RichTextLabel].\n"
"Вы можете добавлять пользовательские пункты меню или удалять стандартные. "
"Убедитесь, что ваши идентификаторы не конфликтуют со стандартными (см. [enum "
"MenuItems]). Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar menu = get_menu()\n"
"\t# Удалить пункт «Выбрать все» (\"Select All\").\n"
"\tmenu.remove_item(MENU_SELECT_ALL)\n"
"\t# Добавить пользовательские элементы.\n"
"\tmenu.add_separator()\n"
"\tmenu.add_item(\"Duplicate Text\", MENU_MAX + 1)\n"
"\t# Подключить обратный звонок.\n"
"\tmenu.id_pressed.connect(_on_item_pressed)\n"
"\n"
"func _on_item_pressed(id):\n"
"\tif id == MENU_MAX + 1:\n"
"\t\tadd_text(\"\\n\" + get_parsed_text())\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar menu = GetMenu();\n"
"\t// Удалить пункт «Выбрать все» (\"Select All\").\n"
"\tmenu.RemoveItem(RichTextLabel.MenuItems.SelectAll);\n"
"\t// Добавить пользовательские элементы.\n"
"\tmenu.AddSeparator();\n"
"\tmenu.AddItem(\"Duplicate Text\", RichTextLabel.MenuItems.Max + 1);\n"
"\t// Подключить обратный звонок.\n"
"\tmenu.IdPressed += OnItemPressed;\n"
"}\n"
"\n"
"public void OnItemPressed(int id)\n"
"{\n"
"\tif (id == TextEdit.MenuItems.Max + 1)\n"
"\t{\n"
"\t\tAddText(\"\\n\" + GetParsedText());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любого из "
"его дочерних элементов, используйте их свойство [member Window.visible]."

msgid ""
"Returns the total number of paragraphs (newlines or [code]p[/code] tags in "
"the tag stack's text tags). Considers wrapped text as one paragraph."
msgstr ""
"Возвращает общее количество абзацев (теги новых строк или [code]p[/code] в "
"текстовых тегах стека тегов). Рассматривает перенесенный текст как один абзац."

msgid ""
"Returns the vertical offset of the paragraph found at the provided index.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Возвращает вертикальное смещение абзаца, найденного по указанному индексу.\n"
"[b]Примечание:[/b] Если включен [member threaded], этот метод возвращает "
"значение для загруженной части документа. Используйте [method is_finished] "
"или [signalfinished], чтобы определить, полностью ли загружен документ."

msgid "Returns the text without BBCode mark-up."
msgstr "Возвращает текст без разметки BBCode."

msgid "Returns the current selection text. Does not include BBCodes."
msgstr "Возвращает текущий выделенный текст. Не включает BBCodes."

msgid ""
"Returns the current selection first character index if a selection is active, "
"[code]-1[/code] otherwise. Does not include BBCodes."
msgstr ""
"Возвращает текущий индекс первого символа выделения, если выделение активно, "
"в противном случае [code]-1[/code]. Не включает BBCodes."

msgid ""
"Returns the current selection vertical line offset if a selection is active, "
"[code]-1.0[/code] otherwise."
msgstr ""
"Возвращает смещение вертикальной линии текущего выделения, если выделение "
"активно, в противном случае [code]-1.0[/code]."

msgid ""
"Returns the current selection last character index if a selection is active, "
"[code]-1[/code] otherwise. Does not include BBCodes."
msgstr ""
"Возвращает последний индекс символа текущего выделения, если выделение "
"активно, в противном случае [code]-1[/code]. Не включает BBCodes."

msgid ""
"Returns the total number of characters from text tags. Does not include "
"BBCodes."
msgstr ""
"Возвращает общее количество символов из текстовых тегов. Не включает BBCodes."

msgid ""
"Returns the bounding rectangle of the visible content.\n"
"[b]Note:[/b] This method returns a correct value only after the label has "
"been drawn.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends RichTextLabel\n"
"\n"
"@export var background_panel: Panel\n"
"\n"
"func _ready():\n"
"\tawait draw\n"
"\tbackground_panel.position = get_visible_content_rect().position\n"
"\tbackground_panel.size = get_visible_content_rect().size\n"
"[/gdscript]\n"
"[csharp]\n"
"public partial class TestLabel : RichTextLabel\n"
"{\n"
"\t[Export]\n"
"\tpublic Panel BackgroundPanel { get; set; }\n"
"\n"
"\tpublic override async void _Ready()\n"
"\t{\n"
"\t\tawait ToSignal(this, Control.SignalName.Draw);\n"
"\t\tBackgroundGPanel.Position = GetVisibleContentRect().Position;\n"
"\t\tBackgroundPanel.Size = GetVisibleContentRect().Size;\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает ограничивающий прямоугольник видимого содержимого.\n"
"[b]Примечание:[/b] Этот метод возвращает правильное значение только после "
"рисования метки.\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends RichTextLabel\n"
"\n"
"@export var background_panel: Panel\n"
"\n"
"func _ready():\n"
"\tawait draw\n"
"\tbackground_panel.position = get_visible_content_rect().position\n"
"\tbackground_panel.size = get_visible_content_rect().size\n"
"[/gdscript]\n"
"[csharp]\n"
"public partial class TestLabel : RichTextLabel\n"
"{\n"
"\t[Export]\n"
"\tpublic Panel BackgroundPanel { get; set; }\n"
"\n"
"\tpublic override async void _Ready()\n"
"\t{\n"
"\t\tawait ToSignal(this, Control.SignalName.Draw);\n"
"\t\tBackgroundGPanel.Position = GetVisibleContentRect().Position;\n"
"\t\tBackgroundPanel.Size = GetVisibleContentRect().Size;\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the number of visible lines.\n"
"[b]Note:[/b] This method returns a correct value only after the label has "
"been drawn.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Возвращает количество видимых строк.\n"
"[b]Примечание:[/b] Этот метод возвращает правильное значение только после "
"отрисовки метки.\n"
"[b]Примечание:[/b] Если включен параметр [member threaded], этот метод "
"возвращает значение для загруженной части документа. Используйте [method "
"is_finished] или [signal finished], чтобы определить, полностью ли загружен "
"документ."

msgid ""
"Returns the number of visible paragraphs. A paragraph is considered visible "
"if at least one of its lines is visible.\n"
"[b]Note:[/b] This method returns a correct value only after the label has "
"been drawn.\n"
"[b]Note:[/b] If [member threaded] is enabled, this method returns a value for "
"the loaded part of the document. Use [method is_finished] or [signal "
"finished] to determine whether document is fully loaded."
msgstr ""
"Возвращает количество видимых абзацев. Абзац считается видимым, если видна "
"хотя бы одна его строка.\n"
"[b]Примечание:[/b] Этот метод возвращает корректное значение только после "
"отрисовки метки.\n"
"[b]Примечание:[/b] Если включен параметр [member threaded], этот метод "
"возвращает значение для загруженной части документа. Используйте [method "
"is_finished] или [signal finished], чтобы определить, полностью ли загружен "
"документ."

msgid ""
"Installs a custom effect. This can also be done in the Inspector through the "
"[member custom_effects] property. [param effect] should be a valid "
"[RichTextEffect].\n"
"[b]Example:[/b] With the following script extending from [RichTextEffect]:\n"
"[codeblock]\n"
"# effect.gd\n"
"class_name MyCustomEffect\n"
"extends RichTextEffect\n"
"\n"
"var bbcode = \"my_custom_effect\"\n"
"\n"
"# ...\n"
"[/codeblock]\n"
"The above effect can be installed in [RichTextLabel] from a script:\n"
"[codeblock]\n"
"# rich_text_label.gd\n"
"extends RichTextLabel\n"
"\n"
"func _ready():\n"
"\tinstall_effect(MyCustomEffect.new())\n"
"\n"
"\t# Alternatively, if not using `class_name` in the script that extends "
"RichTextEffect:\n"
"\tinstall_effect(preload(\"res://effect.gd\").new())\n"
"[/codeblock]"
msgstr ""
"Устанавливает пользовательский эффект. Это также можно сделать в Инспекторе "
"через свойство [member custom_effects]. [param effect] должен быть допустимым "
"[RichTextEffect].\n"
"[b]Пример:[/b] Со следующим скриптом, расширяющим [RichTextEffect]:\n"
"[codeblock]\n"
"# effect.gd\n"
"class_name MyCustomEffect\n"
"extends RichTextEffect\n"
"\n"
"var bbcode = \"my_custom_effect\"\n"
"\n"
"# ...\n"
"[/codeblock]\n"
"Вышеуказанный эффект можно установить в [RichTextLabel] из скрипта:\n"
"[codeblock]\n"
"# rich_text_label.gd\n"
"extends RichTextLabel\n"
"\n"
"func _ready():\n"
"\tinstall_effect(MyCustomEffect.new())\n"
"\n"
"\t# Альтернативный вариант, если не используется `class_name` в скрипте, "
"расширяющем RichTextEffect:\n"
"\tinstall_effect(preload(\"res://effect.gd\").new())\n"
"[/codeblock]"

msgid "Invalidates [param paragraph] and all subsequent paragraphs cache."
msgstr ""
"Делает недействительным [param paragraph] и все последующие кэши абзацев."

msgid ""
"If [member threaded] is enabled, returns [code]true[/code] if the background "
"thread has finished text processing, otherwise always return [code]true[/"
"code]."
msgstr ""
"Делает недействительным [param paragraph] и все последующие абзацы кэша. Если "
"[member threaded] включен, возвращает [code]true[/code], если фоновый поток "
"завершил обработку текста, в противном случае всегда возвращает [code]true[/"
"code]."

msgid "Use [method is_finished] instead."
msgstr "Вместо этого используйте [method is_finished]."

msgid "Adds a newline tag to the tag stack."
msgstr "Добавляет тег новой строки в стек тегов."

msgid ""
"The assignment version of [method append_text]. Clears the tag stack and "
"inserts the new content."
msgstr ""
"Версия назначения [method append_text]. Очищает стек тегов и вставляет новый "
"контент."

msgid "Parses BBCode parameter [param expressions] into a dictionary."
msgstr "Анализирует параметр BBCode [param expressions] в словарь."

msgid ""
"Terminates the current tag. Use after [code]push_*[/code] methods to close "
"BBCodes manually. Does not need to follow [code]add_*[/code] methods."
msgstr ""
"Завершает текущий тег. Используйте после методов [code]push_*[/code], чтобы "
"вручную закрыть BBCodes. Не требуется следовать за методами [code]add_*[/"
"code]."

msgid "Terminates all tags opened by [code]push_*[/code] methods."
msgstr "Завершает все теги, открытые методами [code]push_*[/code]."

msgid ""
"Terminates tags opened after the last [method push_context] call (including "
"context marker), or all tags if there's no context marker on the stack."
msgstr ""
"Завершает теги, открытые после последнего вызова [method push_context] "
"(включая маркер контекста), или все теги, если в стеке нет маркера контекста."

msgid ""
"Adds a [code skip-lint][bgcolor][/code] tag to the tag stack.\n"
"[b]Note:[/b] The background color has padding applied by default, which is "
"controlled using [theme_item text_highlight_h_padding] and [theme_item "
"text_highlight_v_padding]. This can lead to overlapping highlights if "
"background colors are placed on neighboring lines/columns, so consider "
"setting those theme items to [code]0[/code] if you want to avoid this."
msgstr ""
"Добавляет тег [code skip-lint][bgcolor][/code] в стек тегов.\n"
"[b]Примечание:[/b] По умолчанию к фоновому цвету применен отступ, который "
"контролируется с помощью [theme_item text_highlight_h_padding] и [theme_item "
"text_highlight_v_padding]. Это может привести к перекрывающимся выделениям, "
"если фоновые цвета размещены на соседних строках/столбцах, поэтому "
"рассмотрите возможность установки этих элементов темы на [code]0[/code], если "
"вы хотите этого избежать."

msgid ""
"Adds a [code skip-lint][font][/code] tag with a bold font to the tag stack. "
"This is the same as adding a [code skip-lint][b][/code] tag if not currently "
"in a [code skip-lint][i][/code] tag."
msgstr "Добавляет тег [code skip-lint][bgcolor][/code] в стек тегов."

msgid ""
"Adds a [code skip-lint][font][/code] tag with a bold italics font to the tag "
"stack."
msgstr ""
"Добавляет тег [code skip-lint][font][/code] с полужирным курсивным шрифтом в "
"стек тегов."

msgid ""
"Adds a [code skip-lint][cell][/code] tag to the tag stack. Must be inside a "
"[code skip-lint][table][/code] tag. See [method push_table] for details. Use "
"[method set_table_column_expand] to set column expansion ratio, [method "
"set_cell_border_color] to set cell border, [method "
"set_cell_row_background_color] to set cell background, [method "
"set_cell_size_override] to override cell size, and [method set_cell_padding] "
"to set padding."
msgstr ""
"Добавляет тег [code skip-lint][cell][/code] в стек тегов. Должен находиться "
"внутри тега [code skip-lint][table][/code]. Подробности см. в [method "
"push_table]. Используйте [method set_table_column_expand] для установки "
"коэффициента расширения столбца, [method set_cell_border_color] для установки "
"границы ячейки, [method set_cell_row_background_color] для установки фона "
"ячейки, [method set_cell_size_override] для переопределения размера ячейки и "
"[method set_cell_padding] для установки отступа."

msgid "Adds a [code skip-lint][color][/code] tag to the tag stack."
msgstr "Добавляет тег [code skip-lint][color][/code] в стек тегов."

msgid "Adds a context marker to the tag stack. See [method pop_context]."
msgstr "Добавляет маркер контекста в стек тегов. См. [method pop_context]."

msgid ""
"Adds a custom effect tag to the tag stack. The effect does not need to be in "
"[member custom_effects]. The environment is directly passed to the effect."
msgstr ""
"Добавляет пользовательский тег эффекта в стек тегов. Эффект не обязательно "
"должен быть в [member custom_effects]. Окружение напрямую передается эффекту."

msgid ""
"Adds a [code skip-lint][dropcap][/code] tag to the tag stack. Drop cap "
"(dropped capital) is a decorative element at the beginning of a paragraph "
"that is larger than the rest of the text."
msgstr ""
"Добавляет тег [code skip-lint][dropcap][/code] в стек тегов. Буквица "
"(опущенная прописная буква) — декоративный элемент в начале абзаца, "
"превышающий по размеру остальной текст."

msgid ""
"Adds a [code skip-lint][fgcolor][/code] tag to the tag stack.\n"
"[b]Note:[/b] The foreground color has padding applied by default, which is "
"controlled using [theme_item text_highlight_h_padding] and [theme_item "
"text_highlight_v_padding]. This can lead to overlapping highlights if "
"foreground colors are placed on neighboring lines/columns, so consider "
"setting those theme items to [code]0[/code] if you want to avoid this."
msgstr ""
"Добавляет тег [code skip-lint][fgcolor][/code] в стек тегов.\n"
"[b]Примечание:[/b] Цвет переднего плана имеет отступ по умолчанию, который "
"контролируется с помощью [theme_item text_highlight_h_padding] и [theme_item "
"text_highlight_v_padding]. Это может привести к перекрывающимся выделениям, "
"если цвета переднего плана размещены на соседних строках/столбцах, поэтому "
"рассмотрите возможность установки этих элементов темы на [code]0[/code], если "
"вы хотите этого избежать."

msgid ""
"Adds a [code skip-lint][font][/code] tag to the tag stack. Overrides default "
"fonts for its duration.\n"
"Passing [code]0[/code] to [param font_size] will use the existing default "
"font size."
msgstr ""
"Добавляет тег [code skip-lint][font][/code] в стек тегов. Переопределяет "
"шрифты по умолчанию на время его действия.\n"
"Передача [code]0[/code] в [param font_size] будет использовать существующий "
"размер шрифта по умолчанию."

msgid ""
"Adds a [code skip-lint][font_size][/code] tag to the tag stack. Overrides "
"default font size for its duration."
msgstr ""
"Добавляет тег [code skip-lint][font_size][/code] в стек тегов. Переопределяет "
"размер шрифта по умолчанию на время его действия."

msgid ""
"Adds a [code skip-lint][hint][/code] tag to the tag stack. Same as BBCode "
"[code skip-lint][hint=something]{text}[/hint][/code]."
msgstr ""
"Добавляет тег [code skip-lint][hint][/code] в стек тегов. То же, что и BBCode "
"[code skip-lint][hint=something]{text}[/hint][/code]."

msgid ""
"Adds an [code skip-lint][indent][/code] tag to the tag stack. Multiplies "
"[param level] by current [member tab_size] to determine new margin length."
msgstr ""
"Добавляет тег [code skip-lint][indent][/code] в стек тегов. Умножает [param "
"level] на текущий [member tab_size] для определения новой длины поля."

msgid ""
"Adds a [code skip-lint][font][/code] tag with an italics font to the tag "
"stack. This is the same as adding an [code skip-lint][i][/code] tag if not "
"currently in a [code skip-lint][b][/code] tag."
msgstr ""
"Добавляет тег [code skip-lint][font][/code] с курсивным шрифтом в стек тегов. "
"Это то же самое, что добавить тег [code skip-lint][i][/code], если в данный "
"момент он не находится в теге [code skip-lint][b][/code]."

msgid ""
"Adds language code used for text shaping algorithm and Open-Type font "
"features."
msgstr ""
"Добавляет языковой код, используемый для алгоритма формирования текста и "
"функций шрифтов Open-Type."

msgid ""
"Adds [code skip-lint][ol][/code] or [code skip-lint][ul][/code] tag to the "
"tag stack. Multiplies [param level] by current [member tab_size] to determine "
"new margin length."
msgstr ""
"Добавляет тег [code skip-lint][ol][/code] или [code skip-lint][ul][/code] в "
"стек тегов. Умножает [param level] на текущий [member tab_size] для "
"определения новой длины поля."

msgid ""
"Adds a meta tag to the tag stack. Similar to the BBCode [code skip-lint]"
"[url=something]{text}[/url][/code], but supports non-[String] metadata "
"types.\n"
"If [member meta_underlined] is [code]true[/code], meta tags display an "
"underline. This behavior can be customized with [param underline_mode].\n"
"[b]Note:[/b] Meta tags do nothing by default when clicked. To assign behavior "
"when clicked, connect [signal meta_clicked] to a function that is called when "
"the meta tag is clicked."
msgstr ""
"Добавляет метатег (meta tag) в стек тегов. Аналогично BBCode [code skip-lint]"
"[url=something]{text}[/url][/code], но поддерживает не-[String] типы "
"метаданных.\n"
"Если [member meta_underlined] равно [code]true[/code], метатеги отображают "
"подчеркивание. Это поведение можно настроить с помощью [param "
"underline_mode].\n"
"[b]Примечание:[/b] Метатеги по умолчанию ничего не делают при щелчке. Чтобы "
"назначить поведение при щелчке, подключите [signal meta_clicked] к функции, "
"которая вызывается при щелчке по метатегу."

msgid ""
"Adds a [code skip-lint][font][/code] tag with a monospace font to the tag "
"stack."
msgstr ""
"Добавляет тег [code skip-lint][font][/code] с моноширинным шрифтом в стек "
"тегов."

msgid ""
"Adds a [code skip-lint][font][/code] tag with a normal font to the tag stack."
msgstr ""
"Добавляет тег [code skip-lint][font][/code] с обычным шрифтом в стек тегов."

msgid ""
"Adds a [code skip-lint][outline_color][/code] tag to the tag stack. Adds text "
"outline for its duration."
msgstr ""
"Добавляет тег [code skip-lint][outline_color][/code] в стек тегов. Добавляет "
"контур текста на его длительность."

msgid ""
"Adds a [code skip-lint][outline_size][/code] tag to the tag stack. Overrides "
"default text outline size for its duration."
msgstr ""
"Добавляет тег [code skip-lint][outline_size][/code] в стек тегов. "
"Переопределяет размер контура текста по умолчанию на его длительность."

msgid "Adds a [code skip-lint][p][/code] tag to the tag stack."
msgstr "Добавляет тег [code skip-lint][p][/code] в стек тегов."

msgid ""
"Adds a [code skip-lint][s][/code] tag to the tag stack. If [param color] "
"alpha value is zero, current font color with alpha multiplied by [theme_item "
"strikethrough_alpha] is used."
msgstr ""
"Добавляет тег [code skip-lint][s][/code] в стек тегов. Если значение альфа "
"[param color] равно нулю, используется текущий цвет шрифта с альфа, "
"умноженным на [theme_item strikethrough_alpha]."

msgid ""
"Adds a [code skip-lint][table=columns,inline_align][/code] tag to the tag "
"stack. Use [method set_table_column_expand] to set column expansion ratio. "
"Use [method push_cell] to add cells. [param name] is used as the table name "
"for assistive apps."
msgstr ""
"Добавляет тег [code skip-lint][table=columns,inline_align][/code] в стек "
"тегов. Используйте [method set_table_column_expand] для установки "
"коэффициента расширения столбцов. Используйте [method push_cell] для "
"добавления ячеек. [param name] используется в качестве имени таблицы для "
"вспомогательных приложений."

msgid ""
"Adds a [code skip-lint][u][/code] tag to the tag stack. If [param color] "
"alpha value is zero, current font color with alpha multiplied by [theme_item "
"underline_alpha] is used."
msgstr ""
"Добавляет тег [code skip-lint][u][/code] в стек тегов. Если значение альфа "
"[param color] равно нулю, используется текущий цвет шрифта с альфа, "
"умноженным на [theme_item underline_alpha]."

msgid ""
"Reloads custom effects. Useful when [member custom_effects] is modified "
"manually."
msgstr ""
"Перезагружает пользовательские эффекты. Полезно, когда [member "
"custom_effects] изменяется вручную."

msgid ""
"Removes a paragraph of content from the label. Returns [code]true[/code] if "
"the paragraph exists.\n"
"The [param paragraph] argument is the index of the paragraph to remove, it "
"can take values in the interval [code][0, get_paragraph_count() - 1][/code].\n"
"If [param no_invalidate] is set to [code]true[/code], cache for the "
"subsequent paragraphs is not invalidated. Use it for faster updates if "
"deleted paragraph is fully self-contained (have no unclosed tags), or this "
"call is part of the complex edit operation and [method invalidate_paragraph] "
"will be called at the end of operation."
msgstr ""
"Удаляет абзац содержимого из метки. Возвращает [code]true[/code], если абзац "
"существует.\n"
"Аргумент [param paragraph] — это индекс абзаца для удаления, он может "
"принимать значения в интервале [code][0, get_paragraph_count() - 1][/code].\n"
"Если [param no_invalidate] установлен в [code]true[/code], кэш для "
"последующих абзацев не становится недействительным. Используйте его для более "
"быстрых обновлений, если удаленный абзац полностью автономен (не имеет "
"незакрытых тегов) или этот вызов является частью сложной операции "
"редактирования и [method invalidate_paragraph] будет вызван в конце операции."

msgid "Scrolls the window's top line to match [param line]."
msgstr "Прокручивает верхнюю строку окна для соответствия [param line]."

msgid ""
"Scrolls the window's top line to match first line of the [param paragraph]."
msgstr ""
"Прокручивает верхнюю строку окна до соответствия первой строке [param "
"paragraph]."

msgid "Scrolls to the beginning of the current selection."
msgstr "Прокручивает к началу текущего выделения."

msgid ""
"Select all the text.\n"
"If [member selection_enabled] is [code]false[/code], no selection will occur."
msgstr ""
"Выделить весь текст.\n"
"Если [member selection_enabled] равно [code]false[/code], выделение не "
"произойдет."

msgid "Sets color of a table cell border."
msgstr "Устанавливает цвет границы ячейки таблицы."

msgid "Sets inner padding of a table cell."
msgstr "Устанавливает внутренние отступы ячейки таблицы."

msgid ""
"Sets color of a table cell. Separate colors for alternating rows can be "
"specified."
msgstr ""
"Задает цвет ячейки таблицы. Можно указать отдельные цвета для чередующихся "
"строк."

msgid "Sets minimum and maximum size overrides for a table cell."
msgstr ""
"Устанавливает минимальные и максимальные значения размера ячейки таблицы."

msgid ""
"Edits the selected column's expansion options. If [param expand] is "
"[code]true[/code], the column expands in proportion to its expansion ratio "
"versus the other columns' ratios.\n"
"For example, 2 columns with ratios 3 and 4 plus 70 pixels in available width "
"would expand 30 and 40 pixels, respectively.\n"
"If [param expand] is [code]false[/code], the column will not contribute to "
"the total ratio."
msgstr ""
"Редактирует параметры расширения выбранного столбца. Если [param expand] "
"имеет значение [code]true[/code], столбец расширяется пропорционально своему "
"коэффициенту расширения по сравнению с коэффициентами других столбцов.\n"
"Например, 2 столбца с коэффициентами 3 и 4 плюс 70 пикселей доступной ширины "
"расширятся на 30 и 40 пикселей соответственно.\n"
"Если [param expand] имеет значение [code]false[/code], столбец не будет "
"вносить вклад в общий коэффициент."

msgid "Sets table column name for assistive apps."
msgstr "Задает имя столбца таблицы для вспомогательных приложений."

msgid ""
"Updates the existing images with the key [param key]. Only properties "
"specified by [param mask] bits are updated. See [method add_image]."
msgstr ""
"Обновляет существующие изображения с ключом [param key]. Обновляются только "
"свойства, указанные битами [param mask]. См. [method add_image]."

msgid ""
"If [code]true[/code], the label uses BBCode formatting.\n"
"[b]Note:[/b] This only affects the contents of [member text], not the tag "
"stack."
msgstr ""
"Если [code]true[/code], метка использует форматирование BBCode.\n"
"[b]Примечание:[/b] Это влияет только на содержимое [member text], а не на "
"стек тегов."

msgid "If [code]true[/code], a right-click displays the context menu."
msgstr ""
"Если [code]true[/code], щелчок правой кнопкой мыши отображает контекстное "
"меню."

msgid ""
"The currently installed custom effects. This is an array of "
"[RichTextEffect]s.\n"
"To add a custom effect, it's more convenient to use [method install_effect]."
msgstr ""
"Установленные в данный момент пользовательские эффекты. Это массив "
"[RichTextEffect].\n"
"Чтобы добавить пользовательский эффект, удобнее использовать [method "
"install_effect]."

msgid ""
"If [code]true[/code], the label's minimum size will be automatically updated "
"to fit its content, matching the behavior of [Label]."
msgstr ""
"Если [code]true[/code], минимальный размер метки будет автоматически обновлен "
"в соответствии с ее содержимым, соответствуя поведению [Label]."

msgid ""
"If [code]true[/code], the label underlines hint tags such as [code skip-lint]"
"[hint=description]{text}[/hint][/code]."
msgstr ""
"Если [code]true[/code], метка подчеркивает теги подсказок, такие как [code "
"skip-lint][hint=description]{text}[/hint][/code]."

msgid ""
"Controls the text's horizontal alignment. Supports left, center, right, and "
"fill, or justify."
msgstr ""
"Управляет горизонтальным выравниванием текста. Поддерживает выравнивание по "
"левому краю, по центру, по правому краю и заполнение или выравнивание по "
"ширине."

msgid ""
"If [code]true[/code], the label underlines meta tags such as [code skip-lint]"
"[url]{text}[/url][/code]. These tags can call a function when clicked if "
"[signal meta_clicked] is connected to a function."
msgstr ""
"Если [code]true[/code], метка подчеркивает метатеги, такие как [code skip-"
"lint][url]{text}[/url][/code]. Эти теги могут вызывать функцию при щелчке, "
"если [signal meta_clicked] подключен к функции."

msgid ""
"The delay after which the loading progress bar is displayed, in milliseconds. "
"Set to [code]-1[/code] to disable progress bar entirely.\n"
"[b]Note:[/b] Progress bar is displayed only if [member threaded] is enabled."
msgstr ""
"Задержка, после которой отображается индикатор выполнения загрузки, в "
"миллисекундах. Установите [code]-1[/code], чтобы полностью отключить "
"индикатор выполнения.\n"
"[b]Примечание:[/b] Индикатор выполнения отображается только если включен "
"[member threaded]."

msgid ""
"If [code]true[/code], the scrollbar is visible. Setting this to [code]false[/"
"code] does not block scrolling completely. See [method scroll_to_line]."
msgstr ""
"Если [code]true[/code], полоса прокрутки видна. Установка этого значения в "
"[code]false[/code] не блокирует прокрутку полностью. См. [method "
"scroll_to_line]."

msgid ""
"If [code]true[/code], the window scrolls down to display new content "
"automatically."
msgstr ""
"Если [code]true[/code], окно прокручивается вниз для автоматического "
"отображения нового содержимого."

msgid ""
"If [code]true[/code], the window scrolls to display the last visible line "
"when [member visible_characters] or [member visible_ratio] is changed."
msgstr ""
"Если [code]true[/code], окно прокручивается для отображения последней видимой "
"строки при изменении [member visible_characters] или [member visible_ratio]."

msgid "If [code]true[/code], the label allows text selection."
msgstr "Если[code]true[/code], метка позволяет выделить текст."

msgid ""
"The number of spaces associated with a single tab length. Does not affect "
"[code]\\t[/code] in text tags, only indent tags."
msgstr ""
"Количество пробелов, связанных с длиной одной табуляции. Не влияет на [code]"
"\\t[/code] в текстовых тегах, только на теги отступов."

msgid ""
"The label's text in BBCode format. Is not representative of manual "
"modifications to the internal tag stack. Erases changes made by other methods "
"when edited.\n"
"[b]Note:[/b] If [member bbcode_enabled] is [code]true[/code], it is unadvised "
"to use the [code]+=[/code] operator with [member text] (e.g. [code]text += "
"\"some string\"[/code]) as it replaces the whole text and can cause "
"slowdowns. It will also erase all BBCode that was added to stack using "
"[code]push_*[/code] methods. Use [method append_text] for adding text "
"instead, unless you absolutely need to close a tag that was opened in an "
"earlier method call."
msgstr ""
"Текст label в формате BBCode. Не отражает ручные изменения внутреннего стека "
"тегов. Стирает изменения, внесенные другими методами при редактировании.\n"
"[b]Примечание:[/b] Если [member bbcode_enabled] имеет значение [code]true[/"
"code], не рекомендуется использовать оператор [code]+=[/code] с [member text] "
"(например, [code]text += \"some string\"[/code]), так как он заменяет весь "
"текст и может вызвать замедление. Он также сотрет весь BBCode, добавленный в "
"стек с помощью методов [code]push_*[/code]. Вместо этого используйте [method "
"append_text] для добавления текста, если только вам не нужно закрыть тег, "
"открытый в более раннем вызове метода."

msgid "If [code]true[/code], text processing is done in a background thread."
msgstr "Если [code]true[/code], обработка текста выполняется в фоновом потоке."

msgid ""
"Triggered when the document is fully loaded.\n"
"[b]Note:[/b] This can happen before the text is processed for drawing. "
"Scrolling values may not be valid until the document is drawn for the first "
"time after this signal."
msgstr ""
"Срабатывает, когда документ полностью загружен.\n"
"[b]Примечание:[/b] Это может произойти до того, как текст будет обработан для "
"рисования. Значения прокрутки могут быть недействительны, пока документ не "
"будет отрисован в первый раз после этого сигнала."

msgid ""
"Triggered when the user clicks on content between meta (URL) tags. If the "
"meta is defined in BBCode, e.g. [code skip-lint][url={\"key\": "
"\"value\"}]Text[/url][/code], then the parameter for this signal will always "
"be a [String] type. If a particular type or an object is desired, the [method "
"push_meta] method must be used to manually insert the data into the tag "
"stack. Alternatively, you can convert the [String] input to the desired type "
"based on its contents (such as calling [method JSON.parse] on it).\n"
"For example, the following method can be connected to [signal meta_clicked] "
"to open clicked URLs using the user's default web browser:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# This assumes RichTextLabel's `meta_clicked` signal was connected to\n"
"# the function below using the signal connection dialog.\n"
"func _richtextlabel_on_meta_clicked(meta):\n"
"\t# `meta` is of Variant type, so convert it to a String to avoid script "
"errors at run-time.\n"
"\tOS.shell_open(str(meta))\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"Срабатывает, когда пользователь нажимает на содержимое между метатегами "
"(URL). Если мета определена в BBCode, например. [codeskip-lint][url={\"key\": "
"\"value\"}]Text[/url][/code], то параметр для этого сигнала всегда будет типа "
"[String]. Если требуется определенный тип или объект, необходимо использовать "
"метод [method push_meta] для ручной вставки данных в стек тегов. В качестве "
"альтернативы можно преобразовать входные данные [String] в нужный тип на "
"основе их содержимого (например, вызвав [method JSON.parse] для него). \n"
"Например, следующий метод можно подключить к [signal meta_clicked], чтобы "
"открывать нажатые URL-адреса с помощью веб-браузера пользователя по "
"умолчанию:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Это предполагает, что сигнал `meta_clicked` RichTextLabel был подключен\n"
"# к функции ниже с помощью диалогового окна подключения сигнала.\n"
"func _richtextlabel_on_meta_clicked(meta):\n"
"\t# `meta` имеет тип Variant, поэтому преобразуйте его в String, чтобы "
"избежать ошибок скрипта во время выполнения.\n"
"\tOS.shell_open(str(meta))\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid "Triggers when the mouse exits a meta tag."
msgstr "Срабатывает, когда указатель мыши покидает мета-тег."

msgid "Triggers when the mouse enters a meta tag."
msgstr "Срабатывает при попадании мыши на мета-тег."

msgid "Each list item has a number marker."
msgstr "Каждый элемент списка имеет числовой маркер."

msgid "Each list item has a letter marker."
msgstr "Каждый элемент списка имеет буквенный маркер."

msgid "Each list item has a roman number marker."
msgstr "Каждый пункт списка имеет римский номер-маркер."

msgid "Each list item has a filled circle marker."
msgstr "Каждый элемент списка имеет маркер в виде заполненного круга."

msgid "Selects the whole [RichTextLabel] text."
msgstr "Выделяет весь текст [RichTextLabel]."

msgid ""
"Meta tag does not display an underline, even if [member meta_underlined] is "
"[code]true[/code]."
msgstr ""
"Метатег не отображает подчеркивание, даже если [member meta_underlined] имеет "
"значение [code]true[/code]."

msgid ""
"If [member meta_underlined] is [code]true[/code], meta tag always display an "
"underline."
msgstr ""
"Если [member meta_underlined] имеет значение [code]true[/code], метатег "
"всегда отображает подчеркивание."

msgid ""
"If [member meta_underlined] is [code]true[/code], meta tag display an "
"underline when the mouse cursor is over it."
msgstr ""
"Если [member meta_underlined] имеет значение [code]true[/code], метатег "
"отображает подчеркивание при наведении на него курсора мыши."

msgid "If this bit is set, [method update_image] changes image texture."
msgstr ""
"Если этот бит установлен, [method update_image] изменяет текстуру изображения."

msgid "If this bit is set, [method update_image] changes image size."
msgstr ""
"Если этот бит установлен, [method update_image] изменяет размер изображения."

msgid "If this bit is set, [method update_image] changes image color."
msgstr ""
"Если этот бит установлен, [method update_image] изменяет цвет изображения."

msgid ""
"If this bit is set, [method update_image] changes image inline alignment."
msgstr ""
"Если этот бит установлен, [method update_image] изменяет выравнивание "
"изображения по строке."

msgid "If this bit is set, [method update_image] changes image texture region."
msgstr ""
"Если этот бит установлен, [method update_image] изменяет область текстуры "
"изображения."

msgid "If this bit is set, [method update_image] changes image padding."
msgstr ""
"Если этот бит установлен, [method update_image] изменяет заполнение "
"изображения."

msgid "If this bit is set, [method update_image] changes image tooltip."
msgstr ""
"Если этот бит установлен, [method update_image] изменяет всплывающую "
"подсказку изображения."

msgid ""
"If this bit is set, [method update_image] changes image width from/to "
"percents."
msgstr ""
"Если этот бит установлен, [method update_image] изменяет ширину изображения с/"
"на проценты."

msgid "The default text color."
msgstr "Цвет текста по умолчанию."

msgid "The default tint of text outline."
msgstr "Оттенок контура текста по умолчанию."

msgid ""
"The color of selected text, used when [member selection_enabled] is "
"[code]true[/code]. If equal to [code]Color(0, 0, 0, 0)[/code], it will be "
"ignored."
msgstr ""
"Цвет выделенного текста, используемый, когда [member selection_enabled] равен "
"[code]true[/code]. Если равен [code]Color(0, 0, 0, 0)[/code], он будет "
"проигнорирован."

msgid "The color of the font's shadow."
msgstr "Цвет тени шрифта."

msgid "The color of the selection box."
msgstr "Цвет поля выбора."

msgid "The default cell border color."
msgstr "Цвет границы ячейки по умолчанию."

msgid "The default background color for even rows."
msgstr "Цвет фона по умолчанию для четных строк."

msgid "The default background color for odd rows."
msgstr "Цвет фона по умолчанию для нечетных строк."

msgid ""
"Additional vertical spacing between paragraphs (in pixels). Spacing is added "
"after the last line. This value can be negative."
msgstr ""
"Дополнительный вертикальный интервал между абзацами (в пикселях). Интервал "
"добавляется после последней строки. Это значение может быть отрицательным."

msgid "The horizontal offset of the font's shadow."
msgstr "Горизонтальное смещение тени шрифта."

msgid "The vertical offset of the font's shadow."
msgstr "Вертикальное смещение тени шрифта."

msgid ""
"The default strikethrough color transparency (percent). For strikethroughs "
"with a custom color, this theme item is only used if the custom color's alpha "
"is [code]0.0[/code] (fully transparent)."
msgstr ""
"Прозрачность цвета зачеркивания по умолчанию (в процентах). Для зачеркивания "
"с пользовательским цветом этот элемент темы используется только в том случае, "
"если альфа пользовательского цвета равна [code]0.0[/code] (полностью "
"прозрачный)."

msgid "The horizontal separation of elements in a table."
msgstr "Горизонтальное разделение элементов в таблице."

msgid "The vertical separation of elements in a table."
msgstr "Вертикальное разделение элементов в таблице."

msgid ""
"The horizontal padding around boxes drawn by the [code][fgcolor][/code] and "
"[code][bgcolor][/code] tags. This does not affect the appearance of text "
"selection. To avoid any risk of neighboring highlights overlapping each "
"other, set this to [code]0[/code] to disable padding."
msgstr ""
"Горизонтальный отступ вокруг полей, нарисованных тегами [code][fgcolor][/"
"code] и [code][bgcolor][/code]. Это не влияет на внешний вид выделения "
"текста. Чтобы избежать риска перекрытия соседних выделений, установите это "
"значение на [code]0[/code], чтобы отключить отступ."

msgid ""
"The vertical padding around boxes drawn by the [code][fgcolor][/code] and "
"[code][bgcolor][/code] tags. This does not affect the appearance of text "
"selection. To avoid any risk of neighboring highlights overlapping each "
"other, set this to [code]0[/code] to disable padding."
msgstr ""
"Вертикальный отступ вокруг полей, нарисованных тегами [code][fgcolor][/code] "
"и [code][bgcolor][/code]. Это не влияет на внешний вид выделения текста. "
"Чтобы избежать риска перекрытия соседних выделений, установите это значение "
"на [code]0[/code], чтобы отключить отступ."

msgid ""
"The default underline color transparency (percent). For underlines with a "
"custom color, this theme item is only used if the custom color's alpha is "
"[code]0.0[/code] (fully transparent)."
msgstr ""
"Прозрачность цвета подчеркивания по умолчанию (в процентах). Для "
"подчеркиваний с пользовательским цветом этот элемент темы используется только "
"в том случае, если альфа пользовательского цвета равна [code]0.0[/code] "
"(полностью прозрачный)."

msgid "The font used for bold text."
msgstr "Шрифт, используемый для жирного текста."

msgid "The font used for bold italics text."
msgstr "Шрифт, используемый для жирного курсивного текста."

msgid "The font used for italics text."
msgstr "Шрифт, используемый для курсивного текста."

msgid "The font used for monospace text."
msgstr "Шрифт, используемый для моноширинного текста."

msgid "The default text font."
msgstr "Шрифт текста по умолчанию."

msgid "The font size used for bold text."
msgstr "Размер шрифта, используемый для жирного текста."

msgid "The font size used for bold italics text."
msgstr "Размер шрифта, используемый для жирного курсивного текста."

msgid "The font size used for italics text."
msgstr "Размер шрифта, используемый для курсивного текста."

msgid "The font size used for monospace text."
msgstr "Размер шрифта, используемый для моноширинного текста."

msgid "The default text font size."
msgstr "Размер шрифта текста по умолчанию."

msgid "The horizontal rule texture."
msgstr "Текстура горизонтальной линейки."

msgid ""
"The background used when the [RichTextLabel] is focused. The [theme_item "
"focus] [StyleBox] is displayed [i]over[/i] the base [StyleBox], so a "
"partially transparent [StyleBox] should be used to ensure the base [StyleBox] "
"remains visible. A [StyleBox] that represents an outline or an underline "
"works well for this purpose. To disable the focus visual effect, assign a "
"[StyleBoxEmpty] resource. Note that disabling the focus visual effect will "
"harm keyboard/controller navigation usability, so this is not recommended for "
"accessibility reasons."
msgstr ""
"Фон, используемый при фокусировке [RichTextLabel]. Фокус [theme_item focus] "
"[StyleBox] отображается [i]над[/i] базовым [StyleBox], поэтому следует "
"использовать частично прозрачный [StyleBox], чтобы базовый [StyleBox] "
"оставался видимым. Для этой цели хорошо подходит [StyleBox], представляющий "
"контур или подчеркивание. Чтобы отключить визуальный эффект фокуса, назначьте "
"ресурс [StyleBoxEmpty]. Обратите внимание, что отключение визуального эффекта "
"фокуса навредит удобству использования навигации с помощью клавиатуры/"
"контроллера, поэтому это не рекомендуется по соображениям доступности."

msgid "The normal background for the [RichTextLabel]."
msgstr "Обычный фон для [RichTextLabel]."

msgid "A handle for a [Resource]'s unique identifier."
msgstr "Дескриптор уникального идентификатора [Resource]."

msgid ""
"The RID [Variant] type is used to access a low-level resource by its unique "
"ID. RIDs are opaque, which means they do not grant access to the resource by "
"themselves. They are used by the low-level server classes, such as "
"[DisplayServer], [RenderingServer], [TextServer], etc.\n"
"A low-level resource may correspond to a high-level [Resource], such as "
"[Texture] or [Mesh].\n"
"[b]Note:[/b] RIDs are only useful during the current session. It won't "
"correspond to a similar resource if sent over a network, or loaded from a "
"file at a later time."
msgstr ""
"Тип RID [Variant] используется для доступа к низкоуровневому ресурсу по его "
"уникальному идентификатору. RID непрозрачны, то есть сами по себе не "
"предоставляют доступ к ресурсу. Они используются низкоуровневыми серверными "
"классами, такими как [DisplayServer], [RenderingServer], [TextServer] и т. "
"д.\n"
"Низкоуровневый ресурс может соответствовать высокоуровневому [Resource], "
"такому как [Texture] или [Mesh].\n"
"[b]Примечание:[/b] RID полезны только во время текущего сеанса. Он не будет "
"соответствовать похожему ресурсу, если будет отправлен по сети или загружен "
"из файла позднее."

msgid "Constructs an empty [RID] with the invalid ID [code]0[/code]."
msgstr "Создает пустой [RID] с недействительным идентификатором [code]0[/code]."

msgid "Constructs an [RID] as a copy of the given [RID]."
msgstr "Создает [RID] как копию заданного [RID]."

msgid "Returns the ID of the referenced low-level resource."
msgstr "Возвращает идентификатор указанного низкоуровневого ресурса."

msgid "Returns [code]true[/code] if the [RID] is not [code]0[/code]."
msgstr "Возвращает [code]true[/code], если [RID] не равен [code]0[/code]."

msgid "Returns [code]true[/code] if the [RID]s are not equal."
msgstr "Возвращает [code]true[/code], если [RID] не равны."

msgid ""
"Returns [code]true[/code] if the [RID]'s ID is less than [param right]'s ID."
msgstr ""
"Возвращает [code]true[/code], если идентификатор [RID] меньше идентификатора "
"[param right]."

msgid ""
"Returns [code]true[/code] if the [RID]'s ID is less than or equal to [param "
"right]'s ID."
msgstr ""
"Возвращает [code]true[/code], если идентификатор [RID] меньше или равен "
"идентификатору [param right]."

msgid ""
"Returns [code]true[/code] if both [RID]s are equal, which means they both "
"refer to the same low-level resource."
msgstr ""
"Возвращает [code]true[/code], если оба [RID] равны, что означает, что они оба "
"ссылаются на один и тот же низкоуровневый ресурс."

msgid ""
"Returns [code]true[/code] if the [RID]'s ID is greater than [param right]'s "
"ID."
msgstr ""
"Возвращает [code]true[/code], если идентификатор [RID] больше идентификатора "
"[param right]."

msgid ""
"Returns [code]true[/code] if the [RID]'s ID is greater than or equal to "
"[param right]'s ID."
msgstr ""
"Возвращает [code]true[/code], если идентификатор [RID] больше или равен "
"идентификатору [param right]."

msgid "A 2D physics body that is moved by a physics simulation."
msgstr ""
"Двухмерное физическое тело, которое перемещается с помощью симуляции физики."

msgid ""
"[RigidBody2D] implements full 2D physics. It cannot be controlled directly, "
"instead, you must apply forces to it (gravity, impulses, etc.), and the "
"physics simulation will calculate the resulting movement, rotation, react to "
"collisions, and affect other physics bodies in its path.\n"
"The body's behavior can be adjusted via [member lock_rotation], [member "
"freeze], and [member freeze_mode]. By changing various properties of the "
"object, such as [member mass], you can control how the physics simulation "
"acts on it.\n"
"A rigid body will always maintain its shape and size, even when forces are "
"applied to it. It is useful for objects that can be interacted with in an "
"environment, such as a tree that can be knocked over or a stack of crates "
"that can be pushed around.\n"
"If you need to directly affect the body, prefer [method _integrate_forces] as "
"it allows you to directly access the physics state.\n"
"If you need to override the default physics behavior, you can write a custom "
"force integration function. See [member custom_integrator].\n"
"[b]Note:[/b] Changing the 2D transform or [member linear_velocity] of a "
"[RigidBody2D] very often may lead to some unpredictable behaviors. This also "
"happens when a [RigidBody2D] is the descendant of a constantly moving node, "
"like another [RigidBody2D], as that will cause its global transform to be set "
"whenever its ancestor moves."
msgstr ""
"[RigidBody2D] реализует полноценную двумерную физику. Им нельзя управлять "
"напрямую, вместо этого необходимо прикладывать к нему силы (гравитацию, "
"импульсы и т. д.), а физическая симуляция вычисляет результирующее движение, "
"вращение, реагирует на столкновения и влияет на другие физические тела на его "
"пути.\n"
"Поведение тела можно настроить с помощью [member lock_rotation], [member "
"freeze] и [member freeze_mode]. Изменяя различные свойства объекта, такие как "
"[member mass], можно управлять тем, как на него воздействует физическая "
"симуляция.\n"
"Твёрдое тело всегда сохраняет свою форму и размер, даже при приложении к нему "
"сил. Это полезно для объектов, с которыми можно взаимодействовать в "
"окружающей среде, например, для дерева, которое можно опрокинуть, или для "
"штабеля ящиков, которые можно толкать.\n"
"Если вам нужно напрямую воздействовать на тело, предпочтительнее [method "
"_integrate_forces], поскольку он позволяет напрямую получать доступ к "
"физическому состоянию.\n"
"Если вам нужно переопределить физическое поведение по умолчанию, вы можете "
"написать собственную функцию интегрирования сил. См. [member "
"custom_integrator].\n"
"[b]Примечание:[/b] Изменение двумерного преобразования или [member "
"linear_velocity] объекта [RigidBody2D] очень часто может привести к "
"непредсказуемому поведению. Это также происходит, когда [RigidBody2D] "
"является потомком постоянно движущегося узла, например, другого "
"[RigidBody2D], поскольку это приведёт к установке его глобального "
"преобразования при каждом перемещении его предка."

msgid "2D Physics Platformer Demo"
msgstr "Демо-версия 2D-платформера с физикой"

msgid "Instancing Demo"
msgstr "Демонстрация экземпляра"

msgid ""
"Applies a rotational force without affecting position. A force is time "
"dependent and meant to be applied every physics update.\n"
"[b]Note:[/b] [member inertia] is required for this to work. To have [member "
"inertia], an active [CollisionShape2D] must be a child of the node, or you "
"can manually set [member inertia]."
msgstr ""
"Применяет вращательную силу, не влияя на положение. Сила зависит от времени и "
"должна применяться при каждом обновлении физики.\n"
"[b]Примечание:[/b] для работы требуется [member inertia]. Чтобы иметь [member "
"inertia], активный [CollisionShape2D] должен быть дочерним элементом узла, "
"или вы можете вручную задать [member inertia]."

msgid ""
"Applies a rotational impulse to the body without affecting the position.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[b]Note:[/b] [member inertia] is required for this to work. To have [member "
"inertia], an active [CollisionShape2D] must be a child of the node, or you "
"can manually set [member inertia]."
msgstr ""
"Применяет вращательный импульс к телу, не влияя на положение.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\").\n"
"[b]Примечание:[/b] для работы требуется [member inertia]. Чтобы иметь [member "
"inertia], активный [CollisionShape2D] должен быть дочерним элементом узла, "
"или вы можете вручную задать [member inertia]."

msgid ""
"Returns a list of the bodies colliding with this one. Requires [member "
"contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions.\n"
"[b]Note:[/b] The result of this test is not immediate after moving objects. "
"For performance, list of collisions is updated once per frame and before the "
"physics step. Consider using signals instead."
msgstr ""
"Возвращает список тел, сталкивающихся с этим. Требуется, чтобы [member "
"contact_monitor] был установлен на [code]true[/code], а [member "
"max_contacts_reported] был установлен достаточно высоким для обнаружения всех "
"столкновений.\n"
"[b]Примечание:[/b] Результат этого теста не появляется сразу после "
"перемещения объектов. Для повышения производительности список столкновений "
"обновляется один раз за кадр и перед шагом физики. Рассмотрите возможность "
"использования сигналов вместо этого."

msgid ""
"Returns the number of contacts this body has with other bodies. By default, "
"this returns 0 unless bodies are configured to monitor contacts (see [member "
"contact_monitor]).\n"
"[b]Note:[/b] To retrieve the colliding bodies, use [method "
"get_colliding_bodies]."
msgstr ""
"Возвращает количество контактов этого тела с другими телами. По умолчанию "
"возвращается 0, если тела не настроены на отслеживание контактов (см. [member "
"contact_monitor]).\n"
"[b]Примечание:[/b] Чтобы получить сталкивающиеся тела, используйте [method "
"get_colliding_bodies]."

msgid ""
"Sets the body's velocity on the given axis. The velocity in the given vector "
"axis will be set as the given vector length. This is useful for jumping "
"behavior."
msgstr ""
"Устанавливает скорость тела по заданной оси. Скорость по заданной векторной "
"оси будет установлена как заданная длина вектора. Это полезно для прыжкового "
"поведения."

msgid ""
"Damps the body's rotation. By default, the body will use the [member "
"ProjectSettings.physics/2d/default_angular_damp] setting or any value "
"override set by an [Area2D] the body is in. Depending on [member "
"angular_damp_mode], you can set [member angular_damp] to be added to or to "
"replace the body's damping value.\n"
"See [member ProjectSettings.physics/2d/default_angular_damp] for more details "
"about damping."
msgstr ""
"Демпфирует вращение тела. По умолчанию тело будет использовать настройку "
"[member ProjectSettings.physics/2d/default_angular_damp] или любое "
"переопределение значения, заданное [Area2D], в котором находится тело. В "
"зависимости от [member angular_damp_mode] вы можете задать [member "
"angular_damp] для добавления или замены значения демпфирования тела.\n"
"Подробнее о демпфировании см. в [member ProjectSettings.physics/2d/"
"default_angular_damp]."

msgid ""
"If [code]true[/code], the body can enter sleep mode when there is no "
"movement. See [member sleeping]."
msgstr ""
"Если [code]true[/code], тело может войти в режим сна, когда нет движения. "
"Смотрите [member sleep]."

msgid ""
"The body's custom center of mass, relative to the body's origin position, "
"when [member center_of_mass_mode] is set to [constant "
"CENTER_OF_MASS_MODE_CUSTOM]. This is the balanced point of the body, where "
"applied forces only cause linear acceleration. Applying forces outside of the "
"center of mass causes angular acceleration.\n"
"When [member center_of_mass_mode] is set to [constant "
"CENTER_OF_MASS_MODE_AUTO] (default value), the center of mass is "
"automatically determined, but this does not update the value of [member "
"center_of_mass]."
msgstr ""
"Центр масс тела, определяемый пользователем, относительно исходного положения "
"тела, когда [member center_of_mass_mode] имеет значение [constant "
"CENTER_OF_MASS_MODE_CUSTOM]. Это точка равновесия тела, в которой приложенные "
"силы вызывают только линейное ускорение. Приложение сил вне центра масс "
"вызывает угловое ускорение.\n"
"Когда [member center_of_mass_mode] имеет значение [constant "
"CENTER_OF_MASS_MODE_AUTO] (значение по умолчанию), центр масс определяется "
"автоматически, но это не приводит к обновлению значения [member "
"center_of_mass]."

msgid "Defines the way the body's center of mass is set."
msgstr "Определяет способ установки центра массы тела."

msgid ""
"The body's total constant positional forces applied during each physics "
"update.\n"
"See [method add_constant_force] and [method add_constant_central_force]."
msgstr ""
"Общие постоянные позиционные силы тела, применяемые во время каждого "
"обновления физики.\n"
"См. [method add_constant_force] и [method add_constant_central_force]."

msgid ""
"The body's total constant rotational forces applied during each physics "
"update.\n"
"See [method add_constant_torque]."
msgstr ""
"Общие постоянные вращательные силы тела, применяемые во время каждого "
"обновления физики.\n"
"См. [method add_constant_torque]."

msgid ""
"If [code]true[/code], the RigidBody2D will emit signals when it collides with "
"another body.\n"
"[b]Note:[/b] By default the maximum contacts reported is set to 0, meaning "
"nothing will be recorded, see [member max_contacts_reported]."
msgstr ""
"Если [code]true[/code], RigidBody2D будет издавать сигналы при столкновении с "
"другим телом.\n"
"[b]Примечание:[/b] По умолчанию максимальное количество сообщаемых контактов "
"установлено на 0, что означает, что ничего не будет записано, см. [member "
"max_contacts_reported]."

msgid ""
"Continuous collision detection mode.\n"
"Continuous collision detection tries to predict where a moving body will "
"collide instead of moving it and correcting its movement after collision. "
"Continuous collision detection is slower, but more precise and misses fewer "
"collisions with small, fast-moving objects. Raycasting and shapecasting "
"methods are available."
msgstr ""
"Режим непрерывного обнаружения столкновений.\n"
"Непрерывное обнаружение столкновений пытается предсказать, где движущееся "
"тело столкнется, вместо того, чтобы перемещать его и корректировать его "
"движение после столкновения. Непрерывное обнаружение столкновений медленнее, "
"но точнее и пропускает меньше столкновений с небольшими, быстро движущимися "
"объектами. Доступны методы Raycasting и Shapecasting."

msgid ""
"If [code]true[/code], the standard force integration (like gravity or "
"damping) will be disabled for this body. Other than collision response, the "
"body will only move as determined by the [method _integrate_forces] method, "
"if that virtual method is overridden.\n"
"Setting this property will call the method [method "
"PhysicsServer2D.body_set_omit_force_integration] internally."
msgstr ""
"Если [code]true[/code], стандартная интеграция силы (например, гравитация или "
"демпфирование) будет отключена для этого тела. За исключением реакции на "
"столкновение, тело будет двигаться только так, как определено методом [method "
"_integrate_forces], если этот виртуальный метод переопределен.\n"
"Установка этого свойства вызовет метод [method "
"PhysicsServer2D.body_set_omit_force_integration] внутренне."

msgid ""
"If [code]true[/code], the body is frozen. Gravity and forces are not applied "
"anymore.\n"
"See [member freeze_mode] to set the body's behavior when frozen.\n"
"For a body that is always frozen, use [StaticBody2D] or [AnimatableBody2D] "
"instead."
msgstr ""
"Если [code]true[/code], тело заморожено. Гравитация и силы больше не "
"применяются.\n"
"См. [member freeze_mode], чтобы задать поведение тела при заморозке.\n"
"Для тела, которое всегда заморожено, используйте [StaticBody2D] или "
"[AnimatableBody2D]."

msgid ""
"The body's freeze mode. Can be used to set the body's behavior when [member "
"freeze] is enabled.\n"
"For a body that is always frozen, use [StaticBody2D] or [AnimatableBody2D] "
"instead."
msgstr ""
"Режим заморозки тела. Может использоваться для настройки поведения тела, "
"когда включено [member freeze].\n"
"Для тела, которое всегда заморожено, используйте [StaticBody2D] или "
"[AnimatableBody2D]."

msgid ""
"Multiplies the gravity applied to the body. The body's gravity is calculated "
"from the [member ProjectSettings.physics/2d/default_gravity] project setting "
"and/or any additional gravity vector applied by [Area2D]s."
msgstr ""
"Умножает силу тяжести, приложенную к телу. Сила тяжести тела рассчитывается "
"на основе настройки проекта [member ProjectSettings.physics/2d/"
"default_gravity] и/или любого дополнительного вектора силы тяжести, "
"примененных [Area2D]-ов."

msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body. The moment of inertia "
"is usually computed automatically from the mass and the shapes, but this "
"property allows you to set a custom value.\n"
"If set to [code]0[/code], inertia is automatically computed (default value).\n"
"[b]Note:[/b] This value does not change when inertia is automatically "
"computed. Use [PhysicsServer2D] to get the computed inertia.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@onready var ball = $Ball\n"
"\n"
"func get_ball_inertia():\n"
"\treturn 1.0 / "
"PhysicsServer2D.body_get_direct_state(ball.get_rid()).inverse_inertia\n"
"[/gdscript]\n"
"[csharp]\n"
"private RigidBody2D _ball;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_ball = GetNode<RigidBody2D>(\"Ball\");\n"
"}\n"
"\n"
"private float GetBallInertia()\n"
"{\n"
"\treturn 1.0f / "
"PhysicsServer2D.BodyGetDirectState(_ball.GetRid()).InverseInertia;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Момент инерции тела. Это похоже на массу, но для вращения: он определяет, "
"какой крутящий момент требуется для вращения тела. Момент инерции обычно "
"вычисляется автоматически из массы и форм, но это свойство позволяет вам "
"задать пользовательское значение.\n"
"Если установлено значение [code]0[/code], инерция вычисляется автоматически "
"(значение по умолчанию).\n"
"[b]Примечание:[/b] Это значение не изменяется при автоматическом вычислении "
"инерции. Используйте [PhysicsServer2D], чтобы получить вычисленную инерцию.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@onready var ball = $Ball\n"
"\n"
"func get_ball_inertia():\n"
"\treturn 1.0 / "
"PhysicsServer2D.body_get_direct_state(ball.get_rid()).inverse_inertia\n"
"[/gdscript]\n"
"[csharp]\n"
"private RigidBody2D _ball;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_ball = GetNode<RigidBody2D>(\"Ball\");\n"
"}\n"
"\n"
"private float GetBallInertia()\n"
"{\n"
"\treturn 1.0f / "
"PhysicsServer2D.BodyGetDirectState(_ball.GetRid()).InverseInertia;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Damps the body's movement. By default, the body will use the [member "
"ProjectSettings.physics/2d/default_linear_damp] setting or any value override "
"set by an [Area2D] the body is in. Depending on [member linear_damp_mode], "
"you can set [member linear_damp] to be added to or to replace the body's "
"damping value.\n"
"See [member ProjectSettings.physics/2d/default_linear_damp] for more details "
"about damping."
msgstr ""
"Демпфирует движение тела. По умолчанию тело будет использовать настройку "
"[member ProjectSettings.physics/2d/default_linear_damp] или любое "
"переопределение значения, заданное [Area2D], в котором находится тело. В "
"зависимости от [member linear_damp_mode] вы можете задать [member "
"linear_damp] для добавления или замены значения демпфирования тела.\n"
"Подробнее о демпфировании см. в [member ProjectSettings.physics/2d/"
"default_linear_damp]."

msgid ""
"The body's linear velocity in pixels per second. Can be used sporadically, "
"but [b]don't set this every frame[/b], because physics may run in another "
"thread and runs at a different granularity. Use [method _integrate_forces] as "
"your process loop for precise control of the body state."
msgstr ""
"Линейная скорость тела в пикселях в секунду. Может использоваться "
"спорадически, но [b]не устанавливайте это в каждом кадре[/b], потому что "
"физика может работать в другом потоке и работать с другой гранулярностью. "
"Используйте [method _integrate_forces] в качестве цикла процесса для точного "
"управления состоянием тела."

msgid ""
"If [code]true[/code], the body cannot rotate. Gravity and forces only apply "
"linear movement."
msgstr ""
"Если [code]true[/code], тело не может вращаться. Гравитация и силы применяют "
"только линейное движение."

msgid ""
"The maximum number of contacts that will be recorded. Requires a value "
"greater than 0 and [member contact_monitor] to be set to [code]true[/code] to "
"start to register contacts. Use [method get_contact_count] to retrieve the "
"count or [method get_colliding_bodies] to retrieve bodies that have been "
"collided with.\n"
"[b]Note:[/b] The number of contacts is different from the number of "
"collisions. Collisions between parallel edges will result in two contacts "
"(one at each end), and collisions between parallel faces will result in four "
"contacts (one at each corner)."
msgstr ""
"Максимальное количество контактов, которые будут записаны. Требуется значение "
"больше 0 и [member contact_monitor] для установки в [code]true[/code] для "
"начала регистрации контактов. Используйте [method get_contact_count] для "
"получения количества или [method get_colliding_bodies] для получения тел, с "
"которыми произошло столкновение.\n"
"[b]Примечание:[/b] Количество контактов отличается от количества "
"столкновений. Столкновения между параллельными ребрами приведут к двум "
"контактам (по одному на каждом конце), а столкновения между параллельными "
"гранями приведут к четырем контактам (по одному на каждом углу)."

msgid ""
"The physics material override for the body.\n"
"If a material is assigned to this property, it will be used instead of any "
"other physics material, such as an inherited one."
msgstr ""
"Переопределение физического материала для тела.\n"
"Если материал назначен этому свойству, он будет использоваться вместо любого "
"другого физического материала, например унаследованного."

msgid ""
"If [code]true[/code], the body will not move and will not calculate forces "
"until woken up by another body through, for example, a collision, or by using "
"the [method apply_impulse] or [method apply_force] methods."
msgstr ""
"Если [code]true[/code], тело не будет двигаться и не будет вычислять силы, "
"пока не будет разбужено другим телом, например, посредством столкновения или "
"с помощью методов [method apply_impulse] или [method apply_force]."

msgid ""
"Emitted when a collision with another [PhysicsBody2D] or [TileMap] occurs. "
"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody2D] or [TileMap]."
msgstr ""
"Вызывается при столкновении с другим [PhysicsBody2D] или [TileMap]. Требует, "
"чтобы [member contact_monitor] был установлен на [code]true[/code], а [member "
"max_contacts_reported] был установлен достаточно высоким для обнаружения всех "
"столкновений. [TileMap]-ы обнаруживаются, если [TileSet] имеет Столкновение "
"[Shape2D]-ов.\n"
"[param body] [Node], если он существует в дереве, другого [PhysicsBody2D] или "
"[TileMap]."

msgid ""
"Emitted when the collision with another [PhysicsBody2D] or [TileMap] ends. "
"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody2D] or [TileMap]."
msgstr ""
"Вызывается, когда заканчивается столкновение с другим [PhysicsBody2D] или "
"[TileMap]. Требует, чтобы [member contact_monitor] был установлен на "
"[code]true[/code], а [member max_contacts_reported] был установлен достаточно "
"высоким для обнаружения всех столкновений. [TileMap] обнаруживаются, если "
"[TileSet] имеет Столкновение [Shape2D]-ов.\n"
"[param body] [Node], если он существует в дереве, другого [PhysicsBody2D] или "
"[TileMap]."

msgid ""
"Emitted when one of this RigidBody2D's [Shape2D]s collides with another "
"[PhysicsBody2D] or [TileMap]'s [Shape2D]s. Requires [member contact_monitor] "
"to be set to [code]true[/code] and [member max_contacts_reported] to be set "
"high enough to detect all the collisions. [TileMap]s are detected if the "
"[TileSet] has Collision [Shape2D]s.\n"
"[param body_rid] the [RID] of the other [PhysicsBody2D] or [TileSet]'s "
"[CollisionObject2D] used by the [PhysicsServer2D].\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody2D] or [TileMap].\n"
"[param body_shape_index] the index of the [Shape2D] of the other "
"[PhysicsBody2D] or [TileMap] used by the [PhysicsServer2D]. Get the "
"[CollisionShape2D] node with "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] the index of the [Shape2D] of this RigidBody2D used "
"by the [PhysicsServer2D]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."
msgstr ""
"Вызывается, когда один из [Shape2D]-ов этого RigidBody2D сталкивается с "
"[Shape2D]-ами другого [PhysicsBody2D] или [TileMap]. Требует, чтобы [member "
"contact_monitor] был установлен на [code]true[/code], а [member "
"max_contacts_reported] был установлен достаточно высоким для обнаружения всех "
"столкновений. [TileMap]-ы обнаруживаются, если [TileSet] имеет Столкновение "
"[Shape2D]-ов.\n"
"[param body_rid] [RID] другого [PhysicsBody2D] или [TileSet] "
"[CollisionObject2D], используемого [PhysicsServer2D].\n"
"[param body] [Node], если он существует в дереве, другого [PhysicsBody2D] или "
"[TileMap].\n"
"[param body_shape_index] индекс [Shape2D] другого [PhysicsBody2D] или "
"[TileMap], используемого [PhysicsServer2D]. Получите узел [CollisionShape2D] "
"с помощью "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] индекс [Shape2D] этого RigidBody2D, используемый "
"[PhysicsServer2D]. Получите узел [CollisionShape2D] с помощью "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."

msgid ""
"Emitted when the collision between one of this RigidBody2D's [Shape2D]s and "
"another [PhysicsBody2D] or [TileMap]'s [Shape2D]s ends. Requires [member "
"contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[TileMap]s are detected if the [TileSet] has Collision [Shape2D]s.\n"
"[param body_rid] the [RID] of the other [PhysicsBody2D] or [TileSet]'s "
"[CollisionObject2D] used by the [PhysicsServer2D].\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody2D] or [TileMap].\n"
"[param body_shape_index] the index of the [Shape2D] of the other "
"[PhysicsBody2D] or [TileMap] used by the [PhysicsServer2D]. Get the "
"[CollisionShape2D] node with "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] the index of the [Shape2D] of this RigidBody2D used "
"by the [PhysicsServer2D]. Get the [CollisionShape2D] node with "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."
msgstr ""
"Вызывается, когда заканчивается столкновение между одним из [Shape2D]-ов "
"этого RigidBody2D и другим [PhysicsBody2D] или [TileMap] [Shape2D]-ов. "
"Требует, чтобы [member contact_monitor] был установлен на [code]true[/code], "
"а [member max_contacts_reported] был установлен достаточно высоким для "
"обнаружения всех столкновений. [TileMap] обнаруживаются, если [TileSet] имеет "
"Collision [Shape2D]-ов.\n"
"[param body_rid] [RID] другого [PhysicsBody2D] или [TileSet] "
"[CollisionObject2D], используемого [PhysicsServer2D].\n"
"[param body] [Node], если он существует в дереве, другого [PhysicsBody2D] или "
"[TileMap].\n"
"[param body_shape_index] индекс [Shape2D] другого [PhysicsBody2D] или "
"[TileMap], используемого [PhysicsServer2D]. Получите узел [CollisionShape2D] "
"с помощью "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] индекс [Shape2D] этого RigidBody2D, используемого "
"[PhysicsServer2D]. Получите узел [CollisionShape2D] с помощью "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."

msgid ""
"Emitted when the physics engine changes the body's sleeping state.\n"
"[b]Note:[/b] Changing the value [member sleeping] will not trigger this "
"signal. It is only emitted if the sleeping state is changed by the physics "
"engine or [code]emit_signal(\"sleeping_state_changed\")[/code] is used."
msgstr ""
"Выдается, когда физический движок изменяет состояние сна тела.\n"
"[b]Примечание:[/b] Изменение значения [member sleeping] не вызовет этот "
"сигнал. Он выдается только в том случае, если состояние сна изменено "
"физическим движком или используется "
"[code]emit_signal(\"sleeping_state_changed\")[/code]."

msgid ""
"Static body freeze mode (default). The body is not affected by gravity and "
"forces. It can be only moved by user code and doesn't collide with other "
"bodies along its path."
msgstr ""
"Режим статической заморозки тела (по умолчанию). Тело не подвержено влиянию "
"гравитации и сил. Его можно перемещать только с помощью пользовательского "
"кода, и оно не сталкивается с другими телами на своем пути."

msgid ""
"Kinematic body freeze mode. Similar to [constant FREEZE_MODE_STATIC], but "
"collides with other bodies along its path when moved. Useful for a frozen "
"body that needs to be animated."
msgstr ""
"Режим кинематической заморозки тела. Похож на [constant FREEZE_MODE_STATIC], "
"но сталкивается с другими телами на своем пути при перемещении. Полезно для "
"замороженного тела, которое нужно анимировать."

msgid ""
"In this mode, the body's center of mass is calculated automatically based on "
"its shapes. This assumes that the shapes' origins are also their center of "
"mass."
msgstr ""
"В этом режиме центр масс тела вычисляется автоматически на основе его форм. "
"Это предполагает, что начало форм также является их центром масс."

msgid ""
"In this mode, the body's center of mass is set through [member "
"center_of_mass]. Defaults to the body's origin position."
msgstr ""
"В этом режиме центр масс тела задается через [member center_of_mass]. По "
"умолчанию — исходное положение тела."

msgid ""
"Continuous collision detection disabled. This is the fastest way to detect "
"body collisions, but can miss small, fast-moving objects."
msgstr ""
"Непрерывное обнаружение столкновений отключено. Это самый быстрый способ "
"обнаружения столкновений тел, но он может пропускать мелкие быстро движущиеся "
"объекты."

msgid ""
"Continuous collision detection enabled using raycasting. This is faster than "
"shapecasting but less precise."
msgstr ""
"Непрерывное обнаружение столкновений включено с помощью raycasting. Это "
"быстрее, чем shapecasting, но менее точно."

msgid ""
"Continuous collision detection enabled using shapecasting. This is the "
"slowest CCD method and the most precise."
msgstr ""
"Непрерывное обнаружение столкновений, включенное с помощью shapecasting. Это "
"самый медленный метод CCD и самый точный."

msgid "A 3D physics body that is moved by a physics simulation."
msgstr ""
"Трехмерное физическое тело, которое движется посредством физической симуляции."

msgid ""
"[RigidBody3D] implements full 3D physics. It cannot be controlled directly, "
"instead, you must apply forces to it (gravity, impulses, etc.), and the "
"physics simulation will calculate the resulting movement, rotation, react to "
"collisions, and affect other physics bodies in its path.\n"
"The body's behavior can be adjusted via [member lock_rotation], [member "
"freeze], and [member freeze_mode]. By changing various properties of the "
"object, such as [member mass], you can control how the physics simulation "
"acts on it.\n"
"A rigid body will always maintain its shape and size, even when forces are "
"applied to it. It is useful for objects that can be interacted with in an "
"environment, such as a tree that can be knocked over or a stack of crates "
"that can be pushed around.\n"
"If you need to directly affect the body, prefer [method _integrate_forces] as "
"it allows you to directly access the physics state.\n"
"If you need to override the default physics behavior, you can write a custom "
"force integration function. See [member custom_integrator].\n"
"[b]Note:[/b] Changing the 3D transform or [member linear_velocity] of a "
"[RigidBody3D] very often may lead to some unpredictable behaviors. This also "
"happens when a [RigidBody3D] is the descendant of a constantly moving node, "
"like another [RigidBody3D], as that will cause its global transform to be set "
"whenever its ancestor moves."
msgstr ""
"[RigidBody3D] реализует полноценную трёхмерную физику. Им нельзя управлять "
"напрямую, вместо этого необходимо прикладывать к нему силы (гравитацию, "
"импульсы и т. д.), а физическая симуляция вычисляет результирующее движение, "
"вращение, реагирует на столкновения и влияет на другие физические тела на "
"своём пути.\n"
"Поведение тела можно настроить с помощью [member lock_rotation], [member "
"freeze] и [member freeze_mode]. Изменяя различные свойства объекта, такие как "
"[member mass], можно управлять тем, как на него воздействует физическая "
"симуляция.\n"
"Твёрдое тело всегда сохраняет свою форму и размер, даже при приложении к нему "
"сил. Это полезно для объектов, с которыми можно взаимодействовать в "
"окружающей среде, например, для дерева, которое можно опрокинуть, или для "
"штабеля ящиков, которые можно толкать.\n"
"Если вам нужно напрямую воздействовать на тело, предпочтительнее [method "
"_integrate_forces], поскольку он позволяет напрямую получать доступ к "
"физическому состоянию.\n"
"Если вам нужно переопределить физическое поведение по умолчанию, вы можете "
"написать собственную функцию интегрирования сил. См. [member "
"custom_integrator].\n"
"[b]Примечание:[/b] Изменение 3D-преобразования или [member linear_velocity] "
"объекта [RigidBody3D] очень часто может привести к непредсказуемому "
"поведению. Это также происходит, когда [RigidBody3D] является потомком "
"постоянно движущегося узла, например, другого [RigidBody3D], поскольку это "
"приведёт к установке его глобального преобразования при каждом перемещении "
"его предка."

msgid ""
"Applies a rotational force without affecting position. A force is time "
"dependent and meant to be applied every physics update.\n"
"[b]Note:[/b] [member inertia] is required for this to work. To have [member "
"inertia], an active [CollisionShape3D] must be a child of the node, or you "
"can manually set [member inertia]."
msgstr ""
"Применяет вращательную силу, не влияя на положение. Сила зависит от времени и "
"должна применяться при каждом обновлении физики.\n"
"[b]Примечание:[/b] для работы требуется [member inertia]. Чтобы иметь [member "
"inertia], активный [CollisionShape3D] должен быть дочерним элементом узла, "
"или вы можете вручную задать [member inertia]."

msgid ""
"Applies a rotational impulse to the body without affecting the position.\n"
"An impulse is time-independent! Applying an impulse every frame would result "
"in a framerate-dependent force. For this reason, it should only be used when "
"simulating one-time impacts (use the \"_force\" functions otherwise).\n"
"[b]Note:[/b] [member inertia] is required for this to work. To have [member "
"inertia], an active [CollisionShape3D] must be a child of the node, or you "
"can manually set [member inertia]."
msgstr ""
"Применяет вращательный импульс к телу, не влияя на положение.\n"
"Импульс не зависит от времени! Применение импульса в каждом кадре приведет к "
"силе, зависящей от частоты кадров. По этой причине его следует использовать "
"только при моделировании одноразовых ударов (в противном случае используйте "
"функции \"_force\").\n"
"[b]Примечание:[/b] для работы требуется [member inertia]. Чтобы иметь [member "
"inertia], активный [CollisionShape3D] должен быть дочерним элементом узла, "
"или вы можете вручную задать [member inertia]."

msgid ""
"Returns the inverse inertia tensor basis. This is used to calculate the "
"angular acceleration resulting from a torque applied to the [RigidBody3D]."
msgstr ""
"Возвращает обратный базис тензора инерции. Используется для расчета углового "
"ускорения, возникающего в результате крутящего момента, приложенного к "
"[RigidBody3D]."

msgid "The RigidBody3D's rotational velocity in [i]radians[/i] per second."
msgstr "Скорость вращения RigidBody3D в [i]радианах[/i] в секунду."

msgid ""
"If [code]true[/code], the RigidBody3D will emit signals when it collides with "
"another body.\n"
"[b]Note:[/b] By default the maximum contacts reported is set to 0, meaning "
"nothing will be recorded, see [member max_contacts_reported]."
msgstr ""
"Если [code]true[/code], RigidBody3D будет издавать сигналы при столкновении с "
"другим телом.\n"
"[b]Примечание:[/b] По умолчанию максимальное количество сообщаемых контактов "
"установлено на 0, что означает, что ничего не будет записано, см. [member "
"max_contacts_reported]."

msgid ""
"If [code]true[/code], continuous collision detection is used.\n"
"Continuous collision detection tries to predict where a moving body will "
"collide, instead of moving it and correcting its movement if it collided. "
"Continuous collision detection is more precise, and misses fewer impacts by "
"small, fast-moving objects. Not using continuous collision detection is "
"faster to compute, but can miss small, fast-moving objects."
msgstr ""
"Если [code]true[/code], используется непрерывное обнаружение столкновений.\n"
"Непрерывное обнаружение столкновений пытается предсказать, где движущееся "
"тело столкнется, вместо того, чтобы перемещать его и корректировать его "
"движение в случае столкновения. Непрерывное обнаружение столкновений точнее и "
"пропускает меньше ударов небольших быстро движущихся объектов. Если не "
"использовать непрерывное обнаружение столкновений, вычисления выполняются "
"быстрее, но можно пропустить небольшие быстро движущиеся объекты."

msgid ""
"If [code]true[/code], the body is frozen. Gravity and forces are not applied "
"anymore.\n"
"See [member freeze_mode] to set the body's behavior when frozen.\n"
"For a body that is always frozen, use [StaticBody3D] or [AnimatableBody3D] "
"instead."
msgstr ""
"Если [code]true[/code], тело заморожено. Гравитация и силы больше не "
"применяются.\n"
"См. [member freeze_mode], чтобы задать поведение тела при заморозке.\n"
"Для тела, которое всегда заморожено, используйте [StaticBody3D] или "
"[AnimatableBody3D]."

msgid ""
"The body's freeze mode. Can be used to set the body's behavior when [member "
"freeze] is enabled.\n"
"For a body that is always frozen, use [StaticBody3D] or [AnimatableBody3D] "
"instead."
msgstr ""
"Режим заморозки тела. Может использоваться для настройки поведения тела, "
"когда включено [member freeze].\n"
"Для тела, которое всегда заморожено, используйте [StaticBody3D] или "
"[AnimatableBody3D]."

msgid ""
"The body's moment of inertia. This is like mass, but for rotation: it "
"determines how much torque it takes to rotate the body on each axis. The "
"moment of inertia is usually computed automatically from the mass and the "
"shapes, but this property allows you to set a custom value.\n"
"If set to [constant Vector3.ZERO], inertia is automatically computed (default "
"value).\n"
"[b]Note:[/b] This value does not change when inertia is automatically "
"computed. Use [PhysicsServer3D] to get the computed inertia.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@onready var ball = $Ball\n"
"\n"
"func get_ball_inertia():\n"
"\treturn "
"PhysicsServer3D.body_get_direct_state(ball.get_rid()).inverse_inertia.inverse()\n"
"[/gdscript]\n"
"[csharp]\n"
"private RigidBody3D _ball;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_ball = GetNode<RigidBody3D>(\"Ball\");\n"
"}\n"
"\n"
"private Vector3 GetBallInertia()\n"
"{\n"
"\treturn "
"PhysicsServer3D.BodyGetDirectState(_ball.GetRid()).InverseInertia.Inverse();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Момент инерции тела. Это похоже на массу, но для вращения: он определяет, "
"какой крутящий момент требуется для вращения тела по каждой оси. Момент "
"инерции обычно вычисляется автоматически из массы и форм, но это свойство "
"позволяет вам задать пользовательское значение.\n"
"Если установлено значение [constant Vector3.ZERO], инерция вычисляется "
"автоматически (значение по умолчанию).\n"
"[b]Примечание:[/b] Это значение не изменяется при автоматическом вычислении "
"инерции. Используйте [PhysicsServer3D], чтобы получить вычисленную инерцию.\n"
"[codeblocks]\n"
"[gdscript]\n"
"@onready var ball = $Ball\n"
"\n"
"func get_ball_inertia():\n"
"\treturn "
"PhysicsServer3D.body_get_direct_state(ball.get_rid()).inverse_inertia.inverse()\n"
"[/gdscript]\n"
"[csharp]\n"
"private RigidBody3D _ball;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_ball = GetNode<RigidBody3D>(\"Ball\");\n"
"}\n"
"\n"
"private Vector3 GetBallInertia()\n"
"{\n"
"\treturn "
"PhysicsServer3D.BodyGetDirectState(_ball.GetRid()).InverseInertia.Inverse();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Damps the body's movement. By default, the body will use the [member "
"ProjectSettings.physics/3d/default_linear_damp] project setting or any value "
"override set by an [Area3D] the body is in. Depending on [member "
"linear_damp_mode], you can set [member linear_damp] to be added to or to "
"replace the body's damping value.\n"
"See [member ProjectSettings.physics/3d/default_linear_damp] for more details "
"about damping."
msgstr ""
"Демпфирует движение тела. По умолчанию тело будет использовать настройку "
"проекта [member ProjectSettings.physics/3d/default_linear_damp] или любое "
"переопределение значения, заданное [Area3D], в котором находится тело. В "
"зависимости от [member linear_damp_mode] вы можете задать [member "
"linear_damp] для добавления или замены значения демпфирования тела.\n"
"Подробнее о демпфировании см. в [member ProjectSettings.physics/3d/"
"default_linear_damp]."

msgid ""
"Emitted when a collision with another [PhysicsBody3D] or [GridMap] occurs. "
"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape3D]s.\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody3D] or [GridMap]."
msgstr ""
"Вызывается при столкновении с другим [PhysicsBody3D] или [GridMap]. "
"Требуется, чтобы [member contact_monitor] был установлен на [code]true[/"
"code], а [member max_contacts_reported] был установлен достаточно высоким для "
"обнаружения всех столкновений. [GridMap] обнаруживаются, если [MeshLibrary] "
"имеет Collision [Shape3D].\n"
"[param body] [Node], если он существует в дереве, другого [PhysicsBody3D] или "
"[GridMap]."

msgid ""
"Emitted when the collision with another [PhysicsBody3D] or [GridMap] ends. "
"Requires [member contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape3D]s.\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody3D] or [GridMap]."
msgstr ""
"Выдается, когда заканчивается столкновение с другим [PhysicsBody3D] или "
"[GridMap]. Требует, чтобы [member contact_monitor] был установлен на "
"[code]true[/code], а [member max_contacts_reported] был установлен достаточно "
"высоким для обнаружения всех столкновений. [GridMap] обнаруживаются, если "
"[MeshLibrary] имеет Collision [Shape3D].\n"
"[param body] [Node], если он существует в дереве, другого [PhysicsBody3D] или "
"[GridMap]."

msgid ""
"Emitted when one of this RigidBody3D's [Shape3D]s collides with another "
"[PhysicsBody3D] or [GridMap]'s [Shape3D]s. Requires [member contact_monitor] "
"to be set to [code]true[/code] and [member max_contacts_reported] to be set "
"high enough to detect all the collisions. [GridMap]s are detected if the "
"[MeshLibrary] has Collision [Shape3D]s.\n"
"[param body_rid] the [RID] of the other [PhysicsBody3D] or [MeshLibrary]'s "
"[CollisionObject3D] used by the [PhysicsServer3D].\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody3D] or [GridMap].\n"
"[param body_shape_index] the index of the [Shape3D] of the other "
"[PhysicsBody3D] or [GridMap] used by the [PhysicsServer3D]. Get the "
"[CollisionShape3D] node with "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] the index of the [Shape3D] of this RigidBody3D used "
"by the [PhysicsServer3D]. Get the [CollisionShape3D] node with "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."
msgstr ""
"Выдается, когда один из [Shape3D]-ов этого RigidBody3D сталкивается с "
"[Shape3D]-ов другого [PhysicsBody3D] или [GridMap]. Требует, чтобы [member "
"contact_monitor] был установлен на [code]true[/code], а [member "
"max_contacts_reported] был установлен достаточно высоким для обнаружения всех "
"столкновений. [GridMap]-ов обнаруживаются, если [MeshLibrary] имеет Collision "
"[Shape3D]-ов.\n"
"[param body_rid] [RID] другого [PhysicsBody3D] или [MeshLibrary] "
"[CollisionObject3D], используемого [PhysicsServer3D].\n"
"[param body] [Node], если он существует в дереве, другого [PhysicsBody3D] или "
"[GridMap].\n"
"[param body_shape_index] индекс [Shape3D] другого [PhysicsBody3D] или "
"[GridMap], используемого [PhysicsServer3D]. Получите узел [CollisionShape3D] "
"с помощью "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] индекс [Shape3D] этого RigidBody3D, используемого "
"[PhysicsServer3D]. Получите узел [CollisionShape3D] с помощью "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."

msgid ""
"Emitted when the collision between one of this RigidBody3D's [Shape3D]s and "
"another [PhysicsBody3D] or [GridMap]'s [Shape3D]s ends. Requires [member "
"contact_monitor] to be set to [code]true[/code] and [member "
"max_contacts_reported] to be set high enough to detect all the collisions. "
"[GridMap]s are detected if the [MeshLibrary] has Collision [Shape3D]s.\n"
"[param body_rid] the [RID] of the other [PhysicsBody3D] or [MeshLibrary]'s "
"[CollisionObject3D] used by the [PhysicsServer3D]. [GridMap]s are detected if "
"the Meshes have [Shape3D]s.\n"
"[param body] the [Node], if it exists in the tree, of the other "
"[PhysicsBody3D] or [GridMap].\n"
"[param body_shape_index] the index of the [Shape3D] of the other "
"[PhysicsBody3D] or [GridMap] used by the [PhysicsServer3D]. Get the "
"[CollisionShape3D] node with "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] the index of the [Shape3D] of this RigidBody3D used "
"by the [PhysicsServer3D]. Get the [CollisionShape3D] node with "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."
msgstr ""
"Выдается, когда заканчивается столкновение между одним из [Shape3D]-ов этого "
"RigidBody3D и другим [PhysicsBody3D] или [Shape3D]-ов [GridMap]. Требует, "
"чтобы [member contact_monitor] был установлен на [code]true[/code], а [member "
"max_contacts_reported] был установлен достаточно высоким для обнаружения всех "
"столкновений. [GridMap]-ы обнаруживаются, если [MeshLibrary] имеет Collision "
"[Shape3D]-ов.\n"
"[param body_rid] [RID] других [PhysicsBody3D] или [MeshLibrary] "
"[CollisionObject3D], используемых [PhysicsServer3D]. [GridMap]-ы "
"обнаруживаются, если у сеток есть [Shape3D]-ы.\n"
"[param body] [Node], если он существует в дереве, другого [PhysicsBody3D] или "
"[GridMap].\n"
"[param body_shape_index] индекс [Shape3D] другого [PhysicsBody3D] или "
"[GridMap], используемого [PhysicsServer3D]. Получите узел [CollisionShape3D] "
"с помощью "
"[code]body.shape_owner_get_owner(body.shape_find_owner(body_shape_index))[/"
"code].\n"
"[param local_shape_index] индекс [Shape3D] этого RigidBody3D, используемого "
"[PhysicsServer3D]. Получите узел [CollisionShape3D] с помощью "
"[code]self.shape_owner_get_owner(self.shape_find_owner(local_shape_index))[/"
"code]."

msgid "Editor-only helper for setting up root motion in [AnimationMixer]."
msgstr ""
"Помощник, доступный только редактору, для настройки корневого движения в "
"[AnimationMixer]."

msgid ""
"[i]Root motion[/i] refers to an animation technique where a mesh's skeleton "
"is used to give impulse to a character. When working with 3D animations, a "
"popular technique is for animators to use the root skeleton bone to give "
"motion to the rest of the skeleton. This allows animating characters in a way "
"where steps actually match the floor below. It also allows precise "
"interaction with objects during cinematics. See also [AnimationMixer].\n"
"[b]Note:[/b] [RootMotionView] is only visible in the editor. It will be "
"hidden automatically in the running project."
msgstr ""
"[i]Root motion[/i] относится к технике анимации, в которой скелет сетки "
"используется для придания импульса персонажу. При работе с 3D-анимацией "
"популярная техника заключается в том, что аниматоры используют кость "
"корневого скелета для придания движения остальной части скелета. Это "
"позволяет анимировать персонажей таким образом, чтобы шаги фактически "
"соответствовали полу под ними. Это также позволяет точно взаимодействовать с "
"объектами во время кинематографии. См. также [AnimationMixer].\n"
"[b]Примечание:[/b] [RootMotionView] виден только в редакторе. Он будет "
"автоматически скрыт в запущенном проекте."

msgid "Using AnimationTree - Root motion"
msgstr "Использование AnimationTree — Root motion"

msgid "Path to an [AnimationMixer] node to use as a basis for root motion."
msgstr ""
"Путь к узлу [AnimationMixer], который будет использоваться в качестве основы "
"для корневого движения."

msgid "The grid's cell size in 3D units."
msgstr "Размер ячейки сетки в трехмерных единицах."

msgid "The grid's color."
msgstr "Цвет сетки."

msgid ""
"The grid's radius in 3D units. The grid's opacity will fade gradually as the "
"distance from the origin increases until this [member radius] is reached."
msgstr ""
"Радиус сетки в 3D-единицах. Непрозрачность сетки будет постепенно уменьшаться "
"по мере увеличения расстояния от начала координат, пока не будет достигнут "
"этот [member radius]."

msgid ""
"If [code]true[/code], the grid's points will all be on the same Y coordinate "
"([i]local[/i] Y = 0). If [code]false[/code], the points' original Y "
"coordinate is preserved."
msgstr ""
"Если [code]true[/code], то все точки сетки будут иметь одну и ту же "
"координату Y ([i]local[/i] Y = 0). Если [code]false[/code], то исходная "
"координата Y точек сохраняется."

msgid "High-level multiplayer API implementation."
msgstr "Реализация API многопользовательской игры высокого уровня."

msgid ""
"This class is the default implementation of [MultiplayerAPI], used to provide "
"multiplayer functionalities in Godot Engine.\n"
"This implementation supports RPCs via [method Node.rpc] and [method "
"Node.rpc_id] and requires [method MultiplayerAPI.rpc] to be passed a [Node] "
"(it will fail for other object types).\n"
"This implementation additionally provide [SceneTree] replication via the "
"[MultiplayerSpawner] and [MultiplayerSynchronizer] nodes, and the "
"[SceneReplicationConfig] resource.\n"
"[b]Note:[/b] The high-level multiplayer API protocol is an implementation "
"detail and isn't meant to be used by non-Godot servers. It may change without "
"notice.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"Этот класс является реализацией [MultiplayerAPI] по умолчанию, используемой "
"для предоставления многопользовательских функций в Godot Engine.\n"
"Эта реализация поддерживает RPC через [method Node.rpc] и [method "
"Node.rpc_id] и требует, чтобы [method MultiplayerAPI.rpc] был передан в "
"[Node] (для других типов объектов это не сработает).\n"
"Эта реализация дополнительно обеспечивает репликацию [SceneTree] через узлы "
"[MultiplayerSpawner] и [MultiplayerSynchronizer], а также ресурс "
"[SceneReplicationConfig].\n"
"[b]Примечание:[/b] Протокол API многопользовательской игры высокого уровня "
"является деталью реализации и не предназначен для использования серверами, "
"отличными от Godot. Он может измениться без уведомления.\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"Android будет блокировать любые виды сетевого взаимодействия."

msgid ""
"Clears the current SceneMultiplayer network state (you shouldn't call this "
"unless you know what you are doing)."
msgstr ""
"Очищает текущее состояние сети SceneMultiplayer (вызывать эту функцию следует "
"только в том случае, если вы точно знаете, что делаете)."

msgid ""
"Mark the authentication step as completed for the remote peer identified by "
"[param id]. The [signal MultiplayerAPI.peer_connected] signal will be emitted "
"for this peer once the remote side also completes the authentication. No "
"further authentication messages are expected to be received from this peer.\n"
"If a peer disconnects before completing authentication, either due to a "
"network issue, the [member auth_timeout] expiring, or manually calling "
"[method disconnect_peer], the [signal peer_authentication_failed] signal will "
"be emitted instead of [signal MultiplayerAPI.peer_disconnected]."
msgstr ""
"Отметьте шаг аутентификации как завершенный для удаленного однорангового "
"узла, идентифицированного [param id]. Сигнал [signal "
"MultiplayerAPI.peer_connected] будет отправлен для этого однорангового узла, "
"как только удаленная сторона также завершит аутентификацию. Дальнейшие "
"сообщения об аутентификации от этого однорангового узла не ожидаются.\n"
"Если одноранговый узел отключается до завершения аутентификации из-за проблем "
"с сетью, истечения [member auth_timeout] или ручного вызова [method "
"disconnect_peer], вместо [signal MultiplayerAPI.peer_disconnected] будет "
"отправлен сигнал [signal peer_authentication_failed]."

msgid ""
"Disconnects the peer identified by [param id], removing it from the list of "
"connected peers, and closing the underlying connection with it."
msgstr ""
"Отключает одноранговый узел, идентифицированный [param id], удаляя его из "
"списка подключенных одноранговых узлов и закрывая базовое соединение с ним."

msgid ""
"Returns the IDs of the peers currently trying to authenticate with this "
"[MultiplayerAPI]."
msgstr ""
"Возвращает идентификаторы участников, которые в данный момент пытаются пройти "
"аутентификацию с помощью этого [MultiplayerAPI]."

msgid ""
"Sends the specified [param data] to the remote peer identified by [param id] "
"as part of an authentication message. This can be used to authenticate peers, "
"and control when [signal MultiplayerAPI.peer_connected] is emitted (and the "
"remote peer accepted as one of the connected peers)."
msgstr ""
"Отправляет указанные [param data] удаленному пиру, идентифицированному [param "
"id], как часть сообщения аутентификации. Это может использоваться для "
"аутентификации пиров и управления тем, когда выдается [signal "
"MultiplayerAPI.peer_connected] (и удаленный пир принимается как один из "
"подключенных пиров)."

msgid ""
"Sends the given raw [param bytes] to a specific peer identified by [param id] "
"(see [method MultiplayerPeer.set_target_peer]). Default ID is [code]0[/code], "
"i.e. broadcast to all peers."
msgstr ""
"Отправляет заданные необработанные [param bytes] определенному пиру, "
"идентифицированному [param id] (см. [method "
"MultiplayerPeer.set_target_peer]). Идентификатор по умолчанию — [code]0[/"
"code], т.е. транслируется всем пирам."

msgid ""
"If [code]true[/code], the MultiplayerAPI will allow encoding and decoding of "
"object during RPCs.\n"
"[b]Warning:[/b] Deserialized objects can contain code which gets executed. Do "
"not use this option if the serialized object comes from untrusted sources to "
"avoid potential security threat such as remote code execution."
msgstr ""
"Если [code]true[/code], MultiplayerAPI разрешит кодирование и декодирование "
"объекта во время RPC.\n"
"[b]Предупреждение:[/b] Десериализованные объекты могут содержать код, который "
"выполняется. Не используйте эту опцию, если сериализованный объект поступает "
"из ненадежных источников, чтобы избежать потенциальной угрозы безопасности, "
"такой как удаленное выполнение кода."

msgid ""
"The callback to execute when receiving authentication data sent via [method "
"send_auth]. If the [Callable] is empty (default), peers will be automatically "
"accepted as soon as they connect."
msgstr ""
"Обратный вызов, выполняемый при получении данных аутентификации, отправленных "
"через [method send_auth]. Если [Callable] пуст (по умолчанию), одноранговые "
"узлы будут автоматически приняты, как только они подключатся."

msgid ""
"If set to a value greater than [code]0.0[/code], the maximum duration in "
"seconds peers can stay in the authenticating state, after which the "
"authentication will automatically fail. See the [signal peer_authenticating] "
"and [signal peer_authentication_failed] signals."
msgstr ""
"Если установлено значение больше [code]0.0[/code], максимальная "
"продолжительность в секундах, в течение которой одноранговые узлы могут "
"оставаться в состоянии аутентификации, после чего аутентификация "
"автоматически провалится. См. сигналы [signal peer_authenticating] и [signal "
"peer_authentication_failed]."

msgid ""
"Maximum size of each delta packet. Higher values increase the chance of "
"receiving full updates in a single frame, but also the chance of causing "
"networking congestion (higher latency, disconnections). See "
"[MultiplayerSynchronizer]."
msgstr ""
"Максимальный размер каждого дельта-пакета. Более высокие значения увеличивают "
"вероятность получения полных обновлений в одном кадре, но также и вероятность "
"перегрузки сети (более высокая задержка, отключения). См. "
"[MultiplayerSynchronizer]."

msgid ""
"Maximum size of each synchronization packet. Higher values increase the "
"chance of receiving full updates in a single frame, but also the chance of "
"packet loss. See [MultiplayerSynchronizer]."
msgstr ""
"Максимальный размер каждого пакета синхронизации. Более высокие значения "
"увеличивают вероятность получения полных обновлений в одном кадре, но также и "
"вероятность потери пакетов. См. [MultiplayerSynchronizer]."

msgid ""
"If [code]true[/code], the MultiplayerAPI's [member "
"MultiplayerAPI.multiplayer_peer] refuses new incoming connections."
msgstr ""
"Если [code]true[/code], [member MultiplayerAPI.multiplayer_peer] "
"MultiplayerAPI отклоняет новые входящие соединения."

msgid ""
"The root path to use for RPCs and replication. Instead of an absolute path, a "
"relative path will be used to find the node upon which the RPC should be "
"executed.\n"
"This effectively allows to have different branches of the scene tree to be "
"managed by different MultiplayerAPI, allowing for example to run both client "
"and server in the same scene."
msgstr ""
"Корневой путь для использования для RPC-ов и репликации. Вместо абсолютного "
"пути будет использоваться относительный путь для поиска узла, на котором "
"должен быть выполнен RPC. \n"
"Это фактически позволяет иметь разные ветви дерева сцены, которые будут "
"управляться разными MultiplayerAPI, что позволяет, например, запускать как "
"клиент, так и сервер в одной сцене."

msgid ""
"Enable or disable the server feature that notifies clients of other peers' "
"connection/disconnection, and relays messages between them. When this option "
"is [code]false[/code], clients won't be automatically notified of other peers "
"and won't be able to send them packets through the server.\n"
"[b]Note:[/b] Changing this option while other peers are connected may lead to "
"unexpected behaviors.\n"
"[b]Note:[/b] Support for this feature may depend on the current "
"[MultiplayerPeer] configuration. See [method "
"MultiplayerPeer.is_server_relay_supported]."
msgstr ""
"Включить или отключить функцию сервера, которая уведомляет клиентов о "
"подключении/отключении других пиров и ретранслирует сообщения между ними. "
"Если эта опция [code]false[/code], клиенты не будут автоматически "
"уведомляться о других пирах и не смогут отправлять им пакеты через сервер.\n"
"[b]Примечание:[/b] Изменение этой опции при подключенных других пирах может "
"привести к неожиданному поведению.\n"
"[b]Примечание:[/b] Поддержка этой функции может зависеть от текущей "
"конфигурации [MultiplayerPeer]. См. [method "
"MultiplayerPeer.is_server_relay_supported]."

msgid ""
"Emitted when this MultiplayerAPI's [member MultiplayerAPI.multiplayer_peer] "
"connects to a new peer and a valid [member auth_callback] is set. In this "
"case, the [signal MultiplayerAPI.peer_connected] will not be emitted until "
"[method complete_auth] is called with given peer [param id]. While in this "
"state, the peer will not be included in the list returned by [method "
"MultiplayerAPI.get_peers] (but in the one returned by [method "
"get_authenticating_peers]), and only authentication data will be sent or "
"received. See [method send_auth] for sending authentication data."
msgstr ""
"Выдается, когда [member MultiplayerAPI.multiplayer_peer] этого MultiplayerAPI "
"подключается к новому одноранговому узлу и установлен допустимый [member "
"auth_callback]. В этом случае [signal MultiplayerAPI.peer_connected] не будет "
"выдан, пока не будет вызван [method complete_auth] с заданным одноранговым "
"узлом [param id]. В этом состоянии одноранговый узел не будет включен в "
"список, возвращаемый [method MultiplayerAPI.get_peers] (но в тот, который "
"возвращается [method get_authenticating_peers]), и будут отправлены или "
"получены только данные аутентификации. См. [method send_auth] для отправки "
"данных аутентификации."

msgid ""
"Emitted when this MultiplayerAPI's [member MultiplayerAPI.multiplayer_peer] "
"disconnects from a peer for which authentication had not yet completed. See "
"[signal peer_authenticating]."
msgstr ""
"Выдается, когда [member MultiplayerAPI.multiplayer_peer] этого MultiplayerAPI "
"отключается от однорангового узла, для которого аутентификация еще не "
"завершена. См. [signal peer_authenticating]."

msgid ""
"Emitted when this MultiplayerAPI's [member MultiplayerAPI.multiplayer_peer] "
"receives a [param packet] with custom data (see [method send_bytes]). ID is "
"the peer ID of the peer that sent the packet."
msgstr ""
"Вызывается, когда [member MultiplayerAPI.multiplayer_peer] этого "
"MultiplayerAPI получает [param packet] с пользовательскими данными (см. "
"[method send_bytes]). ID — это идентификатор однорангового узла, отправившего "
"пакет."

msgid ""
"Configuration for properties to synchronize with a [MultiplayerSynchronizer]."
msgstr "Конфигурация свойств для синхронизации с [MultiplayerSynchronizer]."

msgid ""
"Adds the property identified by the given [param path] to the list of the "
"properties being synchronized, optionally passing an [param index].\n"
"[b]Note:[/b] For details on restrictions and limitations on property "
"synchronization, see [MultiplayerSynchronizer]."
msgstr ""
"Добавляет свойство, идентифицированное указанным [param path], в список "
"синхронизируемых свойств, при необходимости передавая [param index].\n"
"[b]Примечание:[/b] Подробную информацию об ограничениях и запретах на "
"синхронизацию свойств см. в [MultiplayerSynchronizer]."

msgid "Returns a list of synchronized property [NodePath]s."
msgstr "Возвращает список синхронизированных свойств [NodePath]."

msgid ""
"Returns [code]true[/code] if the given [param path] is configured for "
"synchronization."
msgstr ""
"Возвращает [code]true[/code], если указанный [param path] настроен для "
"синхронизации."

msgid "Finds the index of the given [param path]."
msgstr "Находит индекс указанного [param path]."

msgid ""
"Returns the replication mode for the property identified by the given [param "
"path]."
msgstr ""
"Возвращает режим репликации для свойства, идентифицированного указанным "
"[param path]."

msgid ""
"Returns [code]true[/code] if the property identified by the given [param "
"path] is configured to be synchronized on spawn."
msgstr ""
"Возвращает [code]true[/code], если свойство, идентифицированное указанным "
"[param path], настроено на синхронизацию при появлении."

msgid "Use [method property_get_replication_mode] instead."
msgstr "Вместо этого используйте [method property_get_replication_mode]."

msgid ""
"Returns [code]true[/code] if the property identified by the given [param "
"path] is configured to be synchronized on process."
msgstr ""
"Возвращает [code]true[/code], если свойство, идентифицированное указанным "
"[param path], настроено на синхронизацию в процессе."

msgid ""
"Returns [code]true[/code] if the property identified by the given [param "
"path] is configured to be reliably synchronized when changes are detected on "
"process."
msgstr ""
"Возвращает [code]true[/code], если свойство, идентифицированное указанным "
"[param path], настроено на надежную синхронизацию при обнаружении изменений в "
"процессе."

msgid ""
"Sets the synchronization mode for the property identified by the given [param "
"path]."
msgstr ""
"Устанавливает режим синхронизации для свойства, идентифицированного указанным "
"[param path]."

msgid ""
"Sets whether the property identified by the given [param path] is configured "
"to be synchronized on spawn."
msgstr ""
"Устанавливает, настроено ли свойство, идентифицированное указанным [param "
"path], на синхронизацию при появлении."

msgid ""
"Use [method property_set_replication_mode] with [constant "
"REPLICATION_MODE_ALWAYS] instead."
msgstr ""
"Вместо этого используйте [method property_set_replication_mode] с [constant "
"REPLICATION_MODE_ALWAYS]."

msgid ""
"Sets whether the property identified by the given [param path] is configured "
"to be synchronized on process."
msgstr ""
"Устанавливает, настроено ли свойство, идентифицированное указанным [param "
"path], для синхронизации в процессе."

msgid ""
"Use [method property_set_replication_mode] with [constant "
"REPLICATION_MODE_ON_CHANGE] instead."
msgstr ""
"Вместо этого используйте [method property_set_replication_mode] с [constant "
"REPLICATION_MODE_ON_CHANGE]."

msgid ""
"Sets whether the property identified by the given [param path] is configured "
"to be reliably synchronized when changes are detected on process."
msgstr ""
"Устанавливает, настроено ли свойство, идентифицированное указанным [param "
"path], для надежной синхронизации при обнаружении изменений в процессе."

msgid ""
"Removes the property identified by the given [param path] from the "
"configuration."
msgstr ""
"Удаляет свойство, идентифицированное указанным [param path], из конфигурации."

msgid "Do not keep the given property synchronized."
msgstr "Не синхронизируйте данное свойство."

msgid ""
"Replicate the given property on process by constantly sending updates using "
"unreliable transfer mode."
msgstr ""
"Повторите заданное свойство в процессе, постоянно отправляя обновления, "
"используя ненадежный режим передачи."

msgid ""
"Replicate the given property on process by sending updates using reliable "
"transfer mode when its value changes."
msgstr ""
"Реплицируйте заданное свойство в процессе, отправляя обновления с "
"использованием надежного режима передачи при изменении его значения."

msgid "Provides access to a scene file's information."
msgstr "Предоставляет доступ к информации файла сцены."

msgid ""
"Maintains a list of resources, nodes, exported and overridden properties, and "
"built-in scripts associated with a scene. They cannot be modified from a "
"[SceneState], only accessed. Useful for peeking into what a [PackedScene] "
"contains without instantiating it.\n"
"This class cannot be instantiated directly, it is retrieved for a given scene "
"as the result of [method PackedScene.get_state]."
msgstr ""
"Поддерживает список ресурсов, узлов, экспортированных и переопределенных "
"свойств и встроенных скриптов, связанных со сценой. Их нельзя изменить из "
"[SceneState], к ним можно только получить доступ. Полезно для просмотра "
"содержимого [PackedScene] без создания его экземпляра.\n"
"Этот класс нельзя создать напрямую, он извлекается для заданной сцены как "
"результат [method PackedScene.get_state]."

msgid ""
"Returns the [SceneState] of the scene that this scene inherits from, or "
"[code]null[/code] if it doesn't inherit from any scene."
msgstr ""
"Возвращает [SceneState] сцены, от которой эта сцена наследует, или "
"[code]null[/code], если она не наследует ни от одной сцены."

msgid "Returns the list of bound parameters for the signal at [param idx]."
msgstr "Возвращает список связанных параметров для сигнала в [param idx]."

msgid ""
"Returns the number of signal connections in the scene.\n"
"The [code]idx[/code] argument used to query connection metadata in other "
"[code]get_connection_*[/code] methods in the interval [code][0, "
"get_connection_count() - 1][/code]."
msgstr ""
"Возвращает количество сигнальных соединений в сцене.\n"
"Аргумент [code]idx[/code], используемый для запроса метаданных соединения в "
"других методах [code]get_connection_*[/code] в интервале [code][0, "
"get_connection_count() - 1][/code]."

msgid ""
"Returns the connection flags for the signal at [param idx]. See [enum "
"Object.ConnectFlags] constants."
msgstr ""
"Возвращает флаги соединения для сигнала в [param idx]. См. константы [enum "
"Object.ConnectFlags]."

msgid "Returns the method connected to the signal at [param idx]."
msgstr "Возвращает метод, подключенный к сигналу в [param idx]."

msgid "Returns the name of the signal at [param idx]."
msgstr "Возвращает имя сигнала в [param idx]."

msgid ""
"Returns the path to the node that owns the signal at [param idx], relative to "
"the root node."
msgstr ""
"Возвращает путь к узлу, которому принадлежит сигнал в [param idx], "
"относительно корневого узла."

msgid ""
"Returns the path to the node that owns the method connected to the signal at "
"[param idx], relative to the root node."
msgstr ""
"Возвращает путь к узлу, которому принадлежит метод, подключенный к сигналу в "
"[param idx], относительно корневого узла."

msgid "Returns the number of unbound parameters for the signal at [param idx]."
msgstr "Возвращает количество несвязанных параметров для сигнала в [param idx]."

msgid ""
"Returns the number of nodes in the scene.\n"
"The [code]idx[/code] argument used to query node data in other "
"[code]get_node_*[/code] methods in the interval [code][0, get_node_count() - "
"1][/code]."
msgstr ""
"Возвращает количество узлов в сцене.\n"
"Аргумент [code]idx[/code], используемый для запроса данных узлов в других "
"методах [code]get_node_*[/code] в интервале [code][0, get_node_count() - 1][/"
"code]."

msgid "Returns the list of group names associated with the node at [param idx]."
msgstr "Возвращает список имен групп, связанных с узлом в [param idx]."

msgid ""
"Returns the node's index, which is its position relative to its siblings. "
"This is only relevant and saved in scenes for cases where new nodes are added "
"to an instantiated or inherited scene among siblings from the base scene. "
"Despite the name, this index is not related to the [param idx] argument used "
"here and in other methods."
msgstr ""
"Возвращает индекс узла, который является его позицией относительно его "
"братьев и сестер. Это имеет значение и сохраняется в сценах только в случаях, "
"когда новые узлы добавляются в инстанцированную или унаследованную сцену "
"среди братьев и сестер из базовой сцены. Несмотря на название, этот индекс не "
"связан с аргументом [param idx], используемым здесь и в других методах."

msgid ""
"Returns a [PackedScene] for the node at [param idx] (i.e. the whole branch "
"starting at this node, with its child nodes and resources), or [code]null[/"
"code] if the node is not an instance."
msgstr ""
"Возвращает [PackedScene] для узла в [param idx] (т. е. всю ветвь, "
"начинающуюся с этого узла, с ее дочерними узлами и ресурсами), или "
"[code]null[/code], если узел не является экземпляром."

msgid ""
"Returns the path to the represented scene file if the node at [param idx] is "
"an [InstancePlaceholder]."
msgstr ""
"Возвращает путь к представленному файлу сцены, если узел в [param idx] "
"является [InstancePlaceholder]."

msgid "Returns the name of the node at [param idx]."
msgstr "Возвращает имя узла в [param idx]."

msgid ""
"Returns the path to the owner of the node at [param idx], relative to the "
"root node."
msgstr ""
"Возвращает путь к владельцу узла по адресу [param idx] относительно корневого "
"узла."

msgid ""
"Returns the path to the node at [param idx].\n"
"If [param for_parent] is [code]true[/code], returns the path of the [param "
"idx] node's parent instead."
msgstr ""
"Возвращает путь к узлу в [param idx].\n"
"Если [param for_parent] равен [code]true[/code], вместо этого возвращается "
"путь к родительскому узлу [param idx]."

msgid ""
"Returns the number of exported or overridden properties for the node at "
"[param idx].\n"
"The [code]prop_idx[/code] argument used to query node property data in other "
"[code]get_node_property_*[/code] methods in the interval [code][0, "
"get_node_property_count() - 1][/code]."
msgstr ""
"Возвращает количество экспортированных или переопределенных свойств для узла "
"в [param idx].\n"
"Аргумент [code]prop_idx[/code], используемый для запроса данных свойств узла "
"в других методах [code]get_node_property_*[/code] в интервале [code][0, "
"get_node_property_count() - 1][/code]."

msgid ""
"Returns the name of the property at [param prop_idx] for the node at [param "
"idx]."
msgstr "Возвращает имя свойства в [param prop_idx] для узла в [param idx]."

msgid ""
"Returns the value of the property at [param prop_idx] for the node at [param "
"idx]."
msgstr "Возвращает значение свойства в [param prop_idx] для узла в [param idx]."

msgid "Returns the type of the node at [param idx]."
msgstr "Возвращает тип узла в [param idx]."

msgid "Returns the resource path to the represented [PackedScene]."
msgstr "Возвращает путь к ресурсу представленной [PackedScene]."

msgid ""
"Returns [code]true[/code] if the node at [param idx] is an "
"[InstancePlaceholder]."
msgstr ""
"Возвращает [code]true[/code], если узел в [param idx] является "
"[InstancePlaceholder]."

msgid ""
"If passed to [method PackedScene.instantiate], blocks edits to the scene "
"state."
msgstr ""
"Если передано в [method PackedScene.instantiate], блокирует редактирование "
"состояния сцены."

msgid ""
"If passed to [method PackedScene.instantiate], provides inherited scene "
"resources to the local scene.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"Если передано в [method PackedScene.instantiate], предоставляет "
"унаследованные ресурсы сцены локальной сцене.\n"
"[b]Примечание:[/b] Доступно только в сборках редактора."

msgid ""
"If passed to [method PackedScene.instantiate], provides local scene resources "
"to the local scene. Only the main scene should receive the main edit state.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"Если передано в [method PackedScene.instantiate], предоставляет локальные "
"ресурсы сцены локальной сцене. Только основная сцена должна получать основное "
"состояние редактирования.\n"
"[b]Примечание:[/b] Доступно только в сборках редактора."

msgid ""
"If passed to [method PackedScene.instantiate], it's similar to [constant "
"GEN_EDIT_STATE_MAIN], but for the case where the scene is being instantiated "
"to be the base of another one.\n"
"[b]Note:[/b] Only available in editor builds."
msgstr ""
"Если передано в [method PackedScene.instantiate], то это похоже на [constant "
"GEN_EDIT_STATE_MAIN], но для случая, когда сцена создается как основа для "
"другой.\n"
"[b]Примечание:[/b] Доступно только в сборках редактора."

msgid "Manages the game loop via a hierarchy of nodes."
msgstr "Управляет игровым циклом через иерархию узлов."

msgid ""
"As one of the most important classes, the [SceneTree] manages the hierarchy "
"of nodes in a scene, as well as scenes themselves. Nodes can be added, "
"fetched and removed. The whole scene tree (and thus the current scene) can be "
"paused. Scenes can be loaded, switched and reloaded.\n"
"You can also use the [SceneTree] to organize your nodes into [b]groups[/b]: "
"every node can be added to as many groups as you want to create, e.g. an "
"\"enemy\" group. You can then iterate these groups or even call methods and "
"set properties on all the nodes belonging to any given group.\n"
"[SceneTree] is the default [MainLoop] implementation used by the engine, and "
"is thus in charge of the game loop."
msgstr ""
"Как один из самых важных классов, [SceneTree] управляет иерархией узлов в "
"сцене, а также самими сценами. Узлы можно добавлять, извлекать и удалять. Все "
"дерево сцены (и, следовательно, текущую сцену) можно приостанавливать. Сцены "
"можно загружать, переключать и перезагружать.\n"
"Вы также можете использовать [SceneTree] для организации узлов в [b]groups[/"
"b]: каждый узел можно добавлять в столько групп, сколько вы хотите создать, "
"например, в группу «enemy». Затем вы можете перебирать эти группы или даже "
"вызывать методы и задавать свойства для всех узлов, принадлежащих любой "
"заданной группе.\n"
"[SceneTree] — это реализация [MainLoop] по умолчанию, используемая движком, "
"и, таким образом, отвечает за игровой цикл."

msgid "SceneTree"
msgstr "Дерево сцены"

msgid ""
"Calls [param method] on each node inside this tree added to the given [param "
"group]. You can pass arguments to [param method] by specifying them at the "
"end of this method call. Nodes that cannot call [param method] (either "
"because the method doesn't exist or the arguments do not match) are ignored. "
"See also [method set_group] and [method notify_group].\n"
"[b]Note:[/b] This method acts immediately on all selected nodes at once, "
"which may cause stuttering in some performance-intensive situations.\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Вызывает [param method] для каждого узла внутри этого дерева, добавленного в "
"заданную [param group]. Вы можете передать аргументы в [param method], указав "
"их в конце вызова этого метода. Узлы, которые не могут вызвать [param method] "
"(либо потому, что метод не существует, либо аргументы не совпадают), "
"игнорируются. См. также [method set_group] и [method notify_group].\n"
"[b]Примечание:[/b] Этот метод немедленно действует на все выбранные узлы "
"одновременно, что может вызвать подтормаживание в некоторых ситуациях, "
"требующих высокой производительности.\n"
"[b]Примечание:[/b] В C# [param method] должен быть в snake_case при ссылке на "
"встроенные методы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]MethodName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове."

msgid ""
"Calls the given [param method] on each node inside this tree added to the "
"given [param group]. Use [param flags] to customize this method's behavior "
"(see [enum GroupCallFlags]). Additional arguments for [param method] can be "
"passed at the end of this method. Nodes that cannot call [param method] "
"(either because the method doesn't exist or the arguments do not match) are "
"ignored.\n"
"[codeblock]\n"
"# Calls \"hide\" to all nodes of the \"enemies\" group, at the end of the "
"frame and in reverse tree order.\n"
"get_tree().call_group_flags(\n"
"\t\tSceneTree.GROUP_CALL_DEFERRED | SceneTree.GROUP_CALL_REVERSE,\n"
"\t\t\"enemies\", \"hide\")\n"
"[/codeblock]\n"
"[b]Note:[/b] In C#, [param method] must be in snake_case when referring to "
"built-in Godot methods. Prefer using the names exposed in the "
"[code]MethodName[/code] class to avoid allocating a new [StringName] on each "
"call."
msgstr ""
"Вызывает заданный [param method] для каждого узла внутри этого дерева, "
"добавленного в заданную [param group]. Используйте [param flags] для "
"настройки поведения этого метода (см. [enum GroupCallFlags]). Дополнительные "
"аргументы для [param method] могут быть переданы в конце этого метода. Узлы, "
"которые не могут вызвать [param method] (либо потому, что метод не "
"существует, либо аргументы не совпадают), игнорируются.\n"
"[codeblock]\n"
"# Вызывает \"hide\" для всех узлов группы \"enemies\" в конце кадра и в "
"обратном порядке дерева.\n"
"get_tree().call_group_flags(\n"
"\t\tSceneTree.GROUP_CALL_DEFERRED | SceneTree.GROUP_CALL_REVERSE,\n"
"\t\t\"enemies\", \"hide\")\n"
"[/codeblock]\n"
"[b]Примечание:[/b] В C# [param method] должен быть в snake_case при ссылке на "
"встроенные методы Godot. Предпочитайте использовать имена, представленные в "
"классе [code]MethodName[/code], чтобы избежать выделения нового [StringName] "
"при каждом вызове."

msgid ""
"Changes the running scene to the one at the given [param path], after loading "
"it into a [PackedScene] and creating a new instance.\n"
"Returns [constant OK] on success, [constant ERR_CANT_OPEN] if the [param "
"path] cannot be loaded into a [PackedScene], or [constant ERR_CANT_CREATE] if "
"that scene cannot be instantiated.\n"
"[b]Note:[/b] See [method change_scene_to_packed] for details on the order of "
"operations."
msgstr ""
"Изменяет запущенную сцену на ту, которая находится по указанному [param "
"path], после загрузки ее в [PackedScene] и создания нового экземпляра.\n"
"Возвращает [constant OK] в случае успеха, [constant ERR_CANT_OPEN], если "
"[param path] не может быть загружен в [PackedScene], или [constant "
"ERR_CANT_CREATE], если эта сцена не может быть создана.\n"
"[b]Примечание:[/b] Подробности о порядке операций см. в [method "
"change_scene_to_packed]."

msgid ""
"Changes the running scene to a new instance of the given [PackedScene] (which "
"must be valid).\n"
"Returns [constant OK] on success, [constant ERR_CANT_CREATE] if the scene "
"cannot be instantiated, or [constant ERR_INVALID_PARAMETER] if the scene is "
"invalid.\n"
"[b]Note:[/b] Operations happen in the following order when [method "
"change_scene_to_packed] is called:\n"
"1. The current scene node is immediately removed from the tree. From that "
"point, [method Node.get_tree] called on the current (outgoing) scene will "
"return [code]null[/code]. [member current_scene] will be [code]null[/code], "
"too, because the new scene is not available yet.\n"
"2. At the end of the frame, the formerly current scene, already removed from "
"the tree, will be deleted (freed from memory) and then the new scene will be "
"instantiated and added to the tree. [method Node.get_tree] and [member "
"current_scene] will be back to working as usual.\n"
"This ensures that both scenes aren't running at the same time, while still "
"freeing the previous scene in a safe way similar to [method "
"Node.queue_free].\n"
"If you want to reliably access the new scene, await the [signal "
"scene_changed] signal."
msgstr ""
"Изменяет запущенную сцену на новый экземпляр заданного [PackedScene] (который "
"должен быть допустимым).\n"
"Возвращает [constant OK] в случае успеха, [constant ERR_CANT_CREATE], если "
"сцену невозможно создать, или [constant ERR_INVALID_PARAMETER], если сцена "
"недопустима.\n"
"[b]Примечание:[/b] Операции происходят в следующем порядке при вызове [method "
"change_scene_to_packed]:\n"
"1. Текущий узел сцены немедленно удаляется из дерева. С этого момента [method "
"Node.get_tree], вызванный на текущей (исходящей) сцене, вернет [code]null[/"
"code]. [member current_scene] также будет [code]null[/code], поскольку новая "
"сцена еще недоступна.\n"
"2. В конце кадра ранее текущая сцена, уже удаленная из дерева, будет удалена "
"(освобождена из памяти), а затем новая сцена будет инстанцирована и добавлена "
"в дерево. [method Node.get_tree] и [member current_scene] вернутся к работе в "
"обычном режиме.\n"
"Это гарантирует, что обе сцены не будут запущены одновременно, при этом "
"предыдущая сцена будет безопасно освобождена, аналогично [method "
"Node.queue_free].\n"
"Если вы хотите надежно получить доступ к новой сцене, дождитесь сигнала "
"[signal scene_changed]."

msgid ""
"Returns a new [SceneTreeTimer]. After [param time_sec] in seconds have "
"passed, the timer will emit [signal SceneTreeTimer.timeout] and will be "
"automatically freed.\n"
"If [param process_always] is [code]false[/code], the timer will be paused "
"when setting [member SceneTree.paused] to [code]true[/code].\n"
"If [param process_in_physics] is [code]true[/code], the timer will update at "
"the end of the physics frame, instead of the process frame.\n"
"If [param ignore_time_scale] is [code]true[/code], the timer will ignore "
"[member Engine.time_scale] and update with the real, elapsed time.\n"
"This method is commonly used to create a one-shot delay timer, as in the "
"following example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func some_function():\n"
"\tprint(\"start\")\n"
"\tawait get_tree().create_timer(1.0).timeout\n"
"\tprint(\"end\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async Task SomeFunction()\n"
"{\n"
"\tGD.Print(\"start\");\n"
"\tawait ToSignal(GetTree().CreateTimer(1.0f), "
"SceneTreeTimer.SignalName.Timeout);\n"
"\tGD.Print(\"end\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] The timer is always updated [i]after[/i] all of the nodes in the "
"tree. A node's [method Node._process] method would be called before the timer "
"updates (or [method Node._physics_process] if [param process_in_physics] is "
"set to [code]true[/code])."
msgstr ""
"Возвращает новый [SceneTreeTimer]. По истечении [param time_sec] в секундах "
"таймер выдаст [signal SceneTreeTimer.timeout] и будет автоматически "
"освобожден.\n"
"Если [param process_always] равен [code]false[/code], таймер будет остановлен "
"при установке [member SceneTree.paused] в [code]true[/code].\n"
"Если [param process_in_physics] равен [code]true[/code], таймер обновится в "
"конце кадра физики, а не кадра процесса.\n"
"Если [param ignore_time_scale] равен [code]true[/code], таймер проигнорирует "
"[member Engine.time_scale] и обновится с реальным, прошедшим временем.\n"
"Этот метод обычно используется для создания одноразового таймера задержки, "
"как в следующем примере:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func some_function():\n"
"\tprint(\"начало\")\n"
"\tawait get_tree().create_timer(1.0).timeout\n"
"\tprint(\"конец\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async Task SomeFunction()\n"
"{\n"
"\tGD.Print(\"начало\");\n"
"\tawait ToSignal(GetTree().CreateTimer(1.0f), "
"SceneTreeTimer.SignalName.Timeout);\n"
"\tGD.Print(\"конец\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Таймер всегда обновляется [i]после[/i] всех узлов в "
"дереве. Метод [method Node._process] узла будет вызван до обновления таймера "
"(или [method Node._physics_process], если [param process_in_physics] "
"установлен в [code]true[/code])."

msgid ""
"Creates and returns a new [Tween] processed in this tree. The Tween will "
"start automatically on the next process frame or physics frame (depending on "
"its [enum Tween.TweenProcessMode]).\n"
"[b]Note:[/b] A [Tween] created using this method is not bound to any [Node]. "
"It may keep working until there is nothing left to animate. If you want the "
"[Tween] to be automatically killed when the [Node] is freed, use [method "
"Node.create_tween] or [method Tween.bind_node]."
msgstr ""
"Создает и возвращает новый [Tween], обработанный в этом дереве. Tween "
"автоматически запустится на следующем кадре процесса или физическом кадре (в "
"зависимости от его [enum Tween.TweenProcessMode]).\n"
"[b]Примечание:[/b] [Tween], созданный с помощью этого метода, не привязан ни "
"к одному [Node]. Он может продолжать работать до тех пор, пока не останется "
"ничего для анимации. Если вы хотите, чтобы [Tween] автоматически уничтожался "
"при освобождении [Node], используйте [method Node.create_tween] или [method "
"Tween.bind_node]."

msgid ""
"Returns the first [Node] found inside the tree, that has been added to the "
"given [param group], in scene hierarchy order. Returns [code]null[/code] if "
"no match is found. See also [method get_nodes_in_group]."
msgstr ""
"Возвращает первый [Node], найденный внутри дерева, который был добавлен в "
"заданную [param group] в порядке иерархии сцены. Возвращает [code]null[/"
"code], если совпадений не найдено. См. также [method get_nodes_in_group]."

msgid ""
"Returns how many physics process steps have been processed, since the "
"application started. This is [i]not[/i] a measurement of elapsed time. See "
"also [signal physics_frame]. For the number of frames rendered, see [method "
"Engine.get_process_frames]."
msgstr ""
"Возвращает количество обработанных шагов физического процесса с момента "
"запуска приложения. Это [i]не[/i] измерение прошедшего времени. См. также "
"[signal physics_frame]. Количество отрисованных кадров см. в [method "
"Engine.get_process_frames]."

msgid ""
"Searches for the [MultiplayerAPI] configured for the given path, if one does "
"not exist it searches the parent paths until one is found. If the path is "
"empty, or none is found, the default one is returned. See [method "
"set_multiplayer]."
msgstr ""
"Ищет [MultiplayerAPI], настроенный для указанного пути, если он не "
"существует, он ищет родительские пути, пока не найдет его. Если путь пустой "
"или ничего не найдено, возвращается путь по умолчанию. См. [method "
"set_multiplayer]."

msgid "Returns the number of nodes inside this tree."
msgstr "Возвращает количество узлов внутри этого дерева."

msgid "Returns the number of nodes assigned to the given group."
msgstr "Возвращает количество узлов, назначенных данной группе."

msgid ""
"Returns an [Array] containing all nodes inside this tree, that have been "
"added to the given [param group], in scene hierarchy order."
msgstr ""
"Возвращает [Array], содержащий все узлы внутри этого дерева, которые были "
"добавлены в заданную [param group], в порядке иерархии сцены."

msgid ""
"Returns an [Array] of currently existing [Tween]s in the tree, including "
"paused tweens."
msgstr ""
"Возвращает [Array] существующих в данный момент [Tween]-ов в дереве, включая "
"приостановленные твины."

msgid ""
"Returns [code]true[/code] if a node added to the given group [param name] "
"exists in the tree."
msgstr ""
"Возвращает [code]true[/code], если узел, добавленный в заданную группу [param "
"name], существует в дереве."

msgid ""
"Returns [code]true[/code] if accessibility features are enabled, and "
"accessibility information updates are actively processed."
msgstr ""
"Возвращает [code]true[/code], если функции доступности включены и обновления "
"информации о доступности активно обрабатываются."

msgid ""
"Returns [code]true[/code] if accessibility features are supported by the OS "
"and enabled in project settings."
msgstr ""
"Возвращает [code]true[/code], если специальные возможности поддерживаются ОС "
"и включены в настройках проекта."

msgid ""
"Calls [method Object.notification] with the given [param notification] to all "
"nodes inside this tree added to the [param group]. See also [url=$DOCS_URL/"
"tutorials/best_practices/godot_notifications.html]Godot notifications[/url] "
"and [method call_group] and [method set_group].\n"
"[b]Note:[/b] This method acts immediately on all selected nodes at once, "
"which may cause stuttering in some performance-intensive situations."
msgstr ""
"Вызывает [method Object.notification] с заданным [param notification] для "
"всех узлов внутри этого дерева, добавленных в [param group]. См. также "
"[url=$DOCS_URL/tutorials/best_practices/godot_notifications.html]уведомления "
"Godot[/url] и [method call_group] и [method set_group].\n"
"[b]Примечание:[/b] Этот метод действует немедленно на все выбранные узлы "
"одновременно, что может вызвать заикание в некоторых ситуациях, требующих "
"высокой производительности."

msgid ""
"Calls [method Object.notification] with the given [param notification] to all "
"nodes inside this tree added to the [param group]. Use [param call_flags] to "
"customize this method's behavior (see [enum GroupCallFlags])."
msgstr ""
"Вызывает [method Object.notification] с заданным [param notification] для "
"всех узлов внутри этого дерева, добавленных в [param group]. Используйте "
"[param call_flags] для настройки поведения этого метода (см. [enum "
"GroupCallFlags])."

msgid ""
"Queues the given [param obj] to be deleted, calling its [method Object.free] "
"at the end of the current frame. This method is similar to [method "
"Node.queue_free]."
msgstr ""
"Ставит в очередь указанный [param obj] для удаления, вызывая его [method "
"Object.free] в конце текущего кадра. Этот метод похож на [method "
"Node.queue_free]."

msgid ""
"Quits the application at the end of the current iteration, with the given "
"[param exit_code].\n"
"By convention, an exit code of [code]0[/code] indicates success, whereas any "
"other exit code indicates an error. For portability reasons, it should be "
"between [code]0[/code] and [code]125[/code] (inclusive).\n"
"[b]Note:[/b] On iOS this method doesn't work. Instead, as recommended by the "
"[url=https://developer.apple.com/library/archive/qa/qa1561/_index.html]iOS "
"Human Interface Guidelines[/url], the user is expected to close apps via the "
"Home button."
msgstr ""
"Завершает работу приложения в конце текущей итерации с заданным [param "
"exit_code].\n"
"По соглашению код выхода [code]0[/code] указывает на успех, тогда как любой "
"другой код выхода указывает на ошибку. Из соображений переносимости он должен "
"быть между [code]0[/code] и [code]125[/code] (включительно).\n"
"[b]Примечание:[/b] На iOS этот метод не работает. Вместо этого, как "
"рекомендуется в [url=https://developer.apple.com/library/archive/qa/qa1561/"
"_index.html]iOS Human Interface Guidelines[/url], пользователь должен "
"закрывать приложения с помощью кнопки «Домой»."

msgid ""
"Reloads the currently active scene, replacing [member current_scene] with a "
"new instance of its original [PackedScene].\n"
"Returns [constant OK] on success, [constant ERR_UNCONFIGURED] if no [member "
"current_scene] is defined, [constant ERR_CANT_OPEN] if [member current_scene] "
"cannot be loaded into a [PackedScene], or [constant ERR_CANT_CREATE] if the "
"scene cannot be instantiated."
msgstr ""
"Перезагружает текущую активную сцену, заменяя [member current_scene] новым "
"экземпляром ее исходного [PackedScene].\n"
"Возвращает [constant OK] в случае успеха, [constant ERR_UNCONFIGURED], если "
"[member current_scene] не определен, [constant ERR_CANT_OPEN], если [member "
"current_scene] не может быть загружен в [PackedScene], или [constant "
"ERR_CANT_CREATE], если сцена не может быть создана."

msgid ""
"Sets the given [param property] to [param value] on all nodes inside this "
"tree added to the given [param group]. Nodes that do not have the [param "
"property] are ignored. See also [method call_group] and [method "
"notify_group].\n"
"[b]Note:[/b] This method acts immediately on all selected nodes at once, "
"which may cause stuttering in some performance-intensive situations.\n"
"[b]Note:[/b] In C#, [param property] must be in snake_case when referring to "
"built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Устанавливает заданное [param property] в [param value] для всех узлов внутри "
"этого дерева, добавленных в заданную [param group]. Узлы, не имеющие [param "
"property], игнорируются. См. также [method call_group] и [method "
"notify_group].\n"
"[b]Примечание:[/b] Этот метод немедленно действует на все выбранные узлы "
"одновременно, что может вызвать подтормаживание в некоторых ситуациях, "
"требующих высокой производительности.\n"
"[b]Примечание:[/b] В C# [param property] должно быть в snake_case при ссылке "
"на встроенные свойства Godot. Предпочитайте использовать имена, "
"представленные в классе [code]PropertyName[/code], чтобы избежать выделения "
"нового [StringName] при каждом вызове."

msgid ""
"Sets the given [param property] to [param value] on all nodes inside this "
"tree added to the given [param group]. Nodes that do not have the [param "
"property] are ignored. Use [param call_flags] to customize this method's "
"behavior (see [enum GroupCallFlags]).\n"
"[b]Note:[/b] In C#, [param property] must be in snake_case when referring to "
"built-in Godot properties. Prefer using the names exposed in the "
"[code]PropertyName[/code] class to avoid allocating a new [StringName] on "
"each call."
msgstr ""
"Устанавливает заданное [param property] в [param value] на всех узлах внутри "
"этого дерева, добавленных в заданную [param group]. Узлы, не имеющие [param "
"property], игнорируются. Используйте [param call_flags] для настройки "
"поведения этого метода (см. [enum GroupCallFlags]).\n"
"[b]Примечание:[/b] В C# [param property] должно быть в snake_case при ссылке "
"на встроенные свойства Godot. Предпочитайте использовать имена, "
"представленные в классе [code]PropertyName[/code], чтобы избежать выделения "
"нового [StringName] при каждом вызове."

msgid ""
"Sets a custom [MultiplayerAPI] with the given [param root_path] (controlling "
"also the relative subpaths), or override the default one if [param root_path] "
"is empty.\n"
"[b]Note:[/b] No [MultiplayerAPI] must be configured for the subpath "
"containing [param root_path], nested custom multiplayers are not allowed. "
"I.e. if one is configured for [code]\"/root/Foo\"[/code] setting one for "
"[code]\"/root/Foo/Bar\"[/code] will cause an error.\n"
"[b]Note:[/b] [method set_multiplayer] should be called [i]before[/i] the "
"child nodes are ready at the given [param root_path]. If multiplayer nodes "
"like [MultiplayerSpawner] or [MultiplayerSynchronizer] are added to the tree "
"before the custom multiplayer API is set, they will not work."
msgstr ""
"Устанавливает пользовательский [MultiplayerAPI] с заданным [param root_path] "
"(управляя также относительными подпутями) или переопределяет стандартный, "
"если [param root_path] пуст.\n"
"[b]Примечание:[/b] Не нужно настраивать [MultiplayerAPI] для подпути, "
"содержащей [param root_path], вложенные пользовательские "
"многопользовательские режимы не допускаются. То есть, если один настроен для "
"[code]\"/root/Foo\"[/code], установка одного для [code]\"/root/Foo/Bar\"[/"
"code] приведет к ошибке.\n"
"[b]Примечание:[/b] [method set_multiplayer] следует вызывать [i]до[/i] "
"готовности дочерних узлов в заданном [param root_path]. Если "
"многопользовательские узлы, такие как [MultiplayerSpawner] или "
"[MultiplayerSynchronizer], добавляются в дерево до установки "
"пользовательского многопользовательского API, они не будут работать."

msgid "If a current scene is loaded, calling this method will unload it."
msgstr "Если текущая сцена загружена, вызов этого метода выгрузит ее."

msgid ""
"If [code]true[/code], the application automatically accepts quitting "
"requests.\n"
"For mobile platforms, see [member quit_on_go_back]."
msgstr ""
"Если [code]true[/code], приложение автоматически принимает запросы на выход.\n"
"Для мобильных платформ см. [member quit_on_go_back]."

msgid ""
"The root node of the currently loaded main scene, usually as a direct child "
"of [member root]. See also [method change_scene_to_file], [method "
"change_scene_to_packed], and [method reload_current_scene].\n"
"[b]Warning:[/b] Setting this property directly may not work as expected, as "
"it does [i]not[/i] add or remove any nodes from this tree."
msgstr ""
"Корневой узел текущей загруженной основной сцены, обычно как прямой потомок "
"[member root]. См. также [method change_scene_to_file], [method "
"change_scene_to_packed] и [method reload_current_scene].\n"
"[b]Предупреждение:[/b] Установка этого свойства напрямую может не работать "
"так, как ожидается, поскольку она [i]не[/i] добавляет и не удаляет какие-либо "
"узлы из этого дерева."

msgid ""
"If [code]true[/code], collision shapes will be visible when running the game "
"from the editor for debugging purposes.\n"
"[b]Note:[/b] This property is not designed to be changed at run-time. "
"Changing the value of [member debug_collisions_hint] while the project is "
"running will not have the desired effect."
msgstr ""
"Если [code]true[/code], формы столкновений будут видны при запуске игры из "
"редактора для целей отладки.\n"
"[b]Примечание:[/b] Это свойство не предназначено для изменения во время "
"выполнения. Изменение значения [member debug_collisions_hint] во время "
"выполнения проекта не даст желаемого эффекта."

msgid ""
"If [code]true[/code], navigation polygons will be visible when running the "
"game from the editor for debugging purposes.\n"
"[b]Note:[/b] This property is not designed to be changed at run-time. "
"Changing the value of [member debug_navigation_hint] while the project is "
"running will not have the desired effect."
msgstr ""
"Если [code]true[/code], навигационные полигоны будут видны при запуске игры "
"из редактора для целей отладки.\n"
"[b]Примечание:[/b] Это свойство не предназначено для изменения во время "
"выполнения. Изменение значения [member debug_navigation_hint] во время "
"выполнения проекта не даст желаемого эффекта."

msgid ""
"If [code]true[/code], curves from [Path2D] and [Path3D] nodes will be visible "
"when running the game from the editor for debugging purposes.\n"
"[b]Note:[/b] This property is not designed to be changed at run-time. "
"Changing the value of [member debug_paths_hint] while the project is running "
"will not have the desired effect."
msgstr ""
"Если [code]true[/code], кривые от [Path2D] и [Path3D] будут видимы во время "
"работы игры из редактора для откладки.\n"
"[b]Примечание:[/b] Это свойство не изменяемо по время выполнения. Попытки "
"изменить значение [member debug_paths_hint] пока проект выполняется не "
"приведёт к желательному эффекту."

msgid ""
"The root of the scene currently being edited in the editor. This is usually a "
"direct child of [member root].\n"
"[b]Note:[/b] This property does nothing in release builds."
msgstr ""
"Корень сцены, которая в данный момент редактируется в редакторе. Обычно это "
"прямой потомок [member root].\n"
"[b]Примечание:[/b] Это свойство ничего не делает в сборках релиза."

msgid ""
"If [code]true[/code] (default value), enables automatic polling of the "
"[MultiplayerAPI] for this SceneTree during [signal process_frame].\n"
"If [code]false[/code], you need to manually call [method MultiplayerAPI.poll] "
"to process network packets and deliver RPCs. This allows running RPCs in a "
"different loop (e.g. physics, thread, specific time step) and for manual "
"[Mutex] protection when accessing the [MultiplayerAPI] from threads."
msgstr ""
"Если [code]true[/code] (значение по умолчанию), включает автоматический опрос "
"[MultiplayerAPI] для этого SceneTree во время [signal process_frame].\n"
"Если [code]false[/code], вам необходимо вручную вызвать [method "
"MultiplayerAPI.poll] для обработки сетевых пакетов и доставки RPC. Это "
"позволяет запускать RPC в другом цикле (например, физика, поток, определенный "
"временной шаг) и для ручной защиты [Mutex] при доступе к [MultiplayerAPI] из "
"потоков."

msgid ""
"If [code]true[/code], the scene tree is considered paused. This causes the "
"following behavior:\n"
"- 2D and 3D physics will be stopped, as well as collision detection and "
"related signals.\n"
"- Depending on each node's [member Node.process_mode], their [method "
"Node._process], [method Node._physics_process] and [method Node._input] "
"callback methods may not called anymore."
msgstr ""
"Если [code]true[/code], дерево сцены считается приостановленным. Это приводит "
"к следующему поведению:\n"
"- 2D и 3D физика будут остановлены, а также обнаружение столкновений и "
"связанные с ними сигналы.\n"
"- В зависимости от [member Node.process_mode] каждого узла, их методы "
"обратного вызова [method Node._process], [method Node._physics_process] и "
"[method Node._input] могут больше не вызываться."

msgid ""
"If [code]true[/code], the renderer will interpolate the transforms of objects "
"(both physics and non-physics) between the last two transforms, so that "
"smooth motion is seen even when physics ticks do not coincide with rendered "
"frames.\n"
"The default value of this property is controlled by [member "
"ProjectSettings.physics/common/physics_interpolation].\n"
"[b]Note:[/b] Although this is a global setting, finer control of individual "
"branches of the [SceneTree] is possible using [member "
"Node.physics_interpolation_mode]."
msgstr ""
"Если [code]true[/code], рендерер будет интерполировать преобразования "
"объектов (как физических, так и не физических) между двумя последними "
"преобразованиями, так что плавное движение будет видно даже тогда, когда "
"физические тики не совпадают с отрисованными кадрами.\n"
"Значение этого свойства по умолчанию контролируется [member "
"ProjectSettings.physics/common/physics_interpolation].\n"
"[b]Примечание:[/b] Хотя это глобальная настройка, более точное управление "
"отдельными ветвями [SceneTree] возможно с помощью [member "
"Node.physics_interpolation_mode]."

msgid ""
"If [code]true[/code], the application quits automatically when navigating "
"back (e.g. using the system \"Back\" button on Android).\n"
"To handle 'Go Back' button when this option is disabled, use [constant "
"DisplayServer.WINDOW_EVENT_GO_BACK_REQUEST]."
msgstr ""
"Если [code]true[/code], приложение автоматически завершает работу при "
"возврате назад (например, с помощью системной кнопки «Назад» на Android).\n"
"Для обработки кнопки «Назад», когда эта опция отключена, используйте "
"[constant DisplayServer.WINDOW_EVENT_GO_BACK_REQUEST]."

msgid ""
"The tree's root [Window]. This is top-most [Node] of the scene tree, and is "
"always present. An absolute [NodePath] always starts from this node. Children "
"of the root node may include the loaded [member current_scene], as well as "
"any [url=$DOCS_URL/tutorials/scripting/singletons_autoload.html]AutoLoad[/"
"url] configured in the Project Settings.\n"
"[b]Warning:[/b] Do not delete this node. This will result in unstable "
"behavior, followed by a crash."
msgstr ""
"Корень дерева [Window]. Это самый верхний [Node] дерева сцены, и он всегда "
"присутствует. Абсолютный [NodePath] всегда начинается с этого узла. Потомки "
"корневого узла могут включать загруженный [member current_scene], а также "
"любой [url=$DOCS_URL/tutorials/scripting/singletons_autoload.html]AutoLoad[/"
"url], настроенный в настройках проекта.\n"
"[b]Предупреждение:[/b] Не удаляйте этот узел. Это приведет к нестабильному "
"поведению, за которым последует сбой."

msgid "Emitted when the [param node] enters this tree."
msgstr "Выдается, когда [param node] входит в это дерево."

msgid ""
"Emitted when the [param node]'s [method Node.update_configuration_warnings] "
"is called. Only emitted in the editor."
msgstr ""
"Выдается при вызове [method Node.update_configuration_warnings] [param node]. "
"Выдается только в редакторе."

msgid "Emitted when the [param node] exits this tree."
msgstr "Вызывается, когда [param node] покидает это дерево."

msgid "Emitted when the [param node]'s [member Node.name] is changed."
msgstr "Вызывается при изменении [member Node.name] [param node]."

msgid ""
"Emitted immediately before [method Node._physics_process] is called on every "
"node in this tree."
msgstr ""
"Создается непосредственно перед вызовом [method Node._physics_process] на "
"каждом узле в этом дереве."

msgid ""
"Emitted immediately before [method Node._process] is called on every node in "
"this tree."
msgstr ""
"Создается непосредственно перед вызовом [method Node._process] на каждом узле "
"в этом дереве."

msgid ""
"Emitted after the new scene is added to scene tree and initialized. Can be "
"used to reliably access [member current_scene] when changing scenes.\n"
"[codeblock]\n"
"# This code should be inside an autoload.\n"
"get_tree().change_scene_to_file(other_scene_path)\n"
"await get_tree().scene_changed\n"
"print(get_tree().current_scene) # Prints the new scene.\n"
"[/codeblock]"
msgstr ""
"Выдается после добавления новой сцены в дерево сцен и ее инициализации. Может "
"использоваться для надежного доступа к [member current_scene] при смене "
"сцен.\n"
"[codeblock]\n"
"# Этот код должен быть внутри автозагрузки.\n"
"get_tree().change_scene_to_file(other_scene_path)\n"
"await get_tree().scene_changed\n"
"print(get_tree().current_scene) # Выводит новую сцену.\n"
"[/codeblock]"

msgid ""
"Emitted any time the tree's hierarchy changes (nodes being moved, renamed, "
"etc.)."
msgstr ""
"Генерируется каждый раз при изменении иерархии дерева (перемещении, "
"переименовании узлов и т. д.)."

msgid ""
"Emitted when the [member Node.process_mode] of any node inside the tree is "
"changed. Only emitted in the editor, to update the visibility of disabled "
"nodes."
msgstr ""
"Выдается при изменении [member Node.process_mode] любого узла внутри дерева. "
"Выдается только в редакторе для обновления видимости отключенных узлов."

msgid "Call nodes within a group with no special behavior (default)."
msgstr "Вызов узлов внутри группы без специального поведения (по умолчанию)."

msgid ""
"Call nodes within a group in reverse tree hierarchy order (all nested "
"children are called before their respective parent nodes)."
msgstr ""
"Вызов узлов внутри группы в обратном порядке иерархии дерева (все вложенные "
"дочерние узлы вызываются раньше соответствующих им родительских узлов)."

msgid ""
"Call nodes within a group at the end of the current frame (can be either "
"process or physics frame), similar to [method Object.call_deferred]."
msgstr ""
"Вызов узлов внутри группы в конце текущего кадра (может быть как кадр "
"процесса, так и физический кадр), аналогично [method Object.call_deferred]."

msgid ""
"Call nodes within a group only once, even if the call is executed many times "
"in the same frame. Must be combined with [constant GROUP_CALL_DEFERRED] to "
"work.\n"
"[b]Note:[/b] Different arguments are not taken into account. Therefore, when "
"the same call is executed with different arguments, only the first call will "
"be performed."
msgstr ""
"Вызывайте узлы внутри группы только один раз, даже если вызов выполняется "
"много раз в одном кадре. Для работы необходимо объединить с [constant "
"GROUP_CALL_DEFERRED].\n"
"[b]Примечание:[/b] Различные аргументы не учитываются. Поэтому, когда один и "
"тот же вызов выполняется с разными аргументами, будет выполнен только первый "
"вызов."

msgid "One-shot timer."
msgstr "Таймер на один снимок."

msgid ""
"A one-shot timer managed by the scene tree, which emits [signal timeout] on "
"completion. See also [method SceneTree.create_timer].\n"
"As opposed to [Timer], it does not require the instantiation of a node. "
"Commonly used to create a one-shot delay timer as in the following example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func some_function():\n"
"\tprint(\"Timer started.\")\n"
"\tawait get_tree().create_timer(1.0).timeout\n"
"\tprint(\"Timer ended.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async Task SomeFunction()\n"
"{\n"
"\tGD.Print(\"Timer started.\");\n"
"\tawait ToSignal(GetTree().CreateTimer(1.0f), "
"SceneTreeTimer.SignalName.Timeout);\n"
"\tGD.Print(\"Timer ended.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The timer will be dereferenced after its time elapses. To preserve the timer, "
"you can keep a reference to it. See [RefCounted].\n"
"[b]Note:[/b] The timer is processed after all of the nodes in the current "
"frame, i.e. node's [method Node._process] method would be called before the "
"timer (or [method Node._physics_process] if [code]process_in_physics[/code] "
"in [method SceneTree.create_timer] has been set to [code]true[/code])."
msgstr ""
"Одноразовый таймер, управляемый деревом сцены, который выдает [signal "
"timeout] по завершении. См. также [method SceneTree.create_timer].\n"
"В отличие от [Timer], он не требует создания экземпляра узла. Обычно "
"используется для создания одноразового таймера задержки, как в следующем "
"примере:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func some_function():\n"
"\tprint(\"Таймер запущен.\")\n"
"\tawait get_tree().create_timer(1.0).timeout\n"
"\tprint(\"Таймер закончился.\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async Task SomeFunction()\n"
"{\n"
"\tGD.Print(\"Таймер запущен.\");\n"
"\tawait ToSignal(GetTree().CreateTimer(1.0f), "
"SceneTreeTimer.SignalName.Timeout);\n"
"\tGD.Print(\"Таймер закончился.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Таймер будет разыменован после истечения его времени. Чтобы сохранить таймер, "
"вы можете сохранить ссылку на него. См. [RefCounted].\n"
"[b]Примечание:[/b] Таймер обрабатывается после всех узлов в текущем кадре, т. "
"е. метод узла [method Node._process] будет вызван до таймера (или [method "
"Node._physics_process], если [code]process_in_physics[/code] в [method "
"SceneTree.create_timer] был установлен в [code]true[/code])."

msgid "The time remaining (in seconds)."
msgstr "Оставшееся время (в секундах)."

msgid "Emitted when the timer reaches 0."
msgstr "Выдается, когда таймер достигает 0."

msgid "A class stored as a resource."
msgstr "Класс, хранящийся как ресурс."

msgid ""
"A class stored as a resource. A script extends the functionality of all "
"objects that instantiate it.\n"
"This is the base class for all scripts and should not be used directly. "
"Trying to create a new script with this class will result in an error.\n"
"The [code]new[/code] method of a script subclass creates a new instance. "
"[method Object.set_script] extends an existing object, if that object's class "
"matches one of the script's base classes."
msgstr ""
"Класс, хранящийся как ресурс. Скрипт расширяет функциональность всех "
"объектов, которые его инстанцируют.\n"
"Это базовый класс для всех скриптов, и его не следует использовать напрямую. "
"Попытка создать новый скрипт с этим классом приведет к ошибке.\n"
"Метод [code]new[/code] подкласса скрипта создает новый экземпляр. [method "
"Object.set_script] расширяет существующий объект, если класс этого объекта "
"соответствует одному из базовых классов скрипта."

msgid "Scripting documentation index"
msgstr "Индекс документации по написанию скриптов"

msgid "Returns [code]true[/code] if the script can be instantiated."
msgstr "Возвращает [code]true[/code], если скрипт может быть создан."

msgid "Returns the script directly inherited by this script."
msgstr "Возвращает скрипт, напрямую унаследованный данным скриптом."

msgid ""
"Returns the class name associated with the script, if there is one. Returns "
"an empty string otherwise.\n"
"To give the script a global name, you can use the [code]class_name[/code] "
"keyword in GDScript and the [code][GlobalClass][/code] attribute in C#.\n"
"[codeblocks]\n"
"[gdscript]\n"
"class_name MyNode\n"
"extends Node\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[GlobalClass]\n"
"public partial class MyNode : Node\n"
"{\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает имя класса, связанного со скриптом, если оно есть. В противном "
"случае возвращает пустую строку.\n"
"Чтобы дать скрипту глобальное имя, можно использовать ключевое слово "
"[code]class_name[/code] в GDScript и атрибут [code][GlobalClass][/code] в "
"C#.\n"
"[codeblocks]\n"
"[gdscript]\n"
"class_name MyNode\n"
"extends Node\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"[GlobalClass]\n"
"public partial class MyNode : Node\n"
"{\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns the script's base type."
msgstr "Возвращает базовый тип скрипта."

msgid "Returns the default value of the specified property."
msgstr "Возвращает значение по умолчанию указанного свойства."

msgid ""
"Returns a [Dictionary] mapping method names to their RPC configuration "
"defined by this script."
msgstr ""
"Возвращает [Dictionary], сопоставляющий имена методов с их конфигурацией RPC, "
"определенной этим скриптом."

msgid "Returns a dictionary containing constant names and their values."
msgstr "Возвращает словарь, содержащий имена констант и их значения."

msgid ""
"Returns the list of methods in this [Script].\n"
"[b]Note:[/b] The dictionaries returned by this method are formatted "
"identically to those returned by [method Object.get_method_list]."
msgstr ""
"Возвращает список методов в этом [Script].\n"
"[b]Примечание:[/b] Словари, возвращаемые этим методом, отформатированы так "
"же, как и возвращаемые [method Object.get_method_list]."

msgid ""
"Returns the list of properties in this [Script].\n"
"[b]Note:[/b] The dictionaries returned by this method are formatted "
"identically to those returned by [method Object.get_property_list]."
msgstr ""
"Возвращает список свойств в этом [Script].\n"
"[b]Примечание:[/b] Словари, возвращаемые этим методом, отформатированы так "
"же, как и возвращаемые [method Object.get_property_list]."

msgid ""
"Returns the list of user signals defined in this [Script].\n"
"[b]Note:[/b] The dictionaries returned by this method are formatted "
"identically to those returned by [method Object.get_signal_list]."
msgstr ""
"Возвращает список пользовательских сигналов, определенных в этом [Script].\n"
"[b]Примечание:[/b] Словари, возвращаемые этим методом, отформатированы так "
"же, как и возвращаемые [method Object.get_signal_list]."

msgid ""
"Returns [code]true[/code] if the script, or a base class, defines a signal "
"with the given name."
msgstr ""
"Возвращает [code]true[/code], если скрипт или базовый класс определяет сигнал "
"с указанным именем."

msgid ""
"Returns [code]true[/code] if the script contains non-empty source code.\n"
"[b]Note:[/b] If a script does not have source code, this does not mean that "
"it is invalid or unusable. For example, a [GDScript] that was exported with "
"binary tokenization has no source code, but still behaves as expected and "
"could be instantiated. This can be checked with [method can_instantiate]."
msgstr ""
"Возвращает [code]true[/code], если скрипт содержит непустой исходный код.\n"
"[b]Примечание:[/b] Если у скрипта нет исходного кода, это не означает, что он "
"недействителен или непригоден для использования. Например, [GDScript], "
"который был экспортирован с помощью бинарной токенизации, не имеет исходного "
"кода, но все равно ведет себя так, как ожидалось, и может быть инстанцирован. "
"Это можно проверить с помощью [method can_instantiate]."

msgid ""
"Returns [code]true[/code] if [param base_object] is an instance of this "
"script."
msgstr ""
"Возвращает [code]true[/code], если [param base_object] является экземпляром "
"этого скрипта."

msgid ""
"Returns [code]true[/code] if the script is an abstract script. An abstract "
"script does not have a constructor and cannot be instantiated."
msgstr ""
"Возвращает [code]true[/code], если скрипт является абстрактным. Абстрактный "
"скрипт не имеет конструктора и не может быть создан."

msgid ""
"Returns [code]true[/code] if the script is a tool script. A tool script can "
"run in the editor."
msgstr ""
"Возвращает [code]true[/code], если скрипт является скриптом инструмента. "
"Скрипт инструмента может быть запущен в редакторе."

msgid "Reloads the script's class implementation. Returns an error code."
msgstr "Перезагружает реализацию класса скрипта. Возвращает код ошибки."

msgid ""
"The script source code or an empty string if source code is not available. "
"When set, does not reload the class implementation automatically."
msgstr ""
"Исходный код скрипта или пустая строка, если исходный код недоступен. Если "
"установлено, реализация класса не перезагружается автоматически."

msgid "A captured backtrace of a specific script language."
msgstr "Захваченный обратный след определенного скриптового языка."

msgid ""
"[ScriptBacktrace] holds an already captured backtrace of a specific script "
"language, such as GDScript or C#, which are captured using [method "
"Engine.capture_script_backtraces].\n"
"See [member ProjectSettings.debug/settings/gdscript/always_track_call_stacks] "
"and [member ProjectSettings.debug/settings/gdscript/"
"always_track_local_variables] for ways of controlling the contents of this "
"class."
msgstr ""
"[ScriptBacktrace] содержит уже захваченную обратную трассировку определенного "
"языка скрипта, например GDScript или C#, которые захватываются с помощью "
"[method Engine.capture_script_backtraces].\n"
"См. [member ProjectSettings.debug/settings/gdscript/always_track_call_stacks] "
"и [member ProjectSettings.debug/settings/gdscript/"
"always_track_local_variables] для способов управления содержимым этого класса."

msgid ""
"Converts the backtrace to a [String], where the entire string will be "
"indented by [param indent_all] number of spaces, and the individual stack "
"frames will be additionally indented by [param indent_frames] number of "
"spaces.\n"
"[b]Note:[/b] Calling [method Object.to_string] on a [ScriptBacktrace] will "
"produce the same output as calling [method format] with all parameters left "
"at their default values."
msgstr ""
"Преобразует обратную трассировку в [String], где вся строка будет иметь "
"отступ в [param indent_all] пробелов, а отдельные кадры стека будут "
"дополнительно иметь отступ в [param indent_frames] пробелов.\n"
"[b]Примечание:[/b] Вызов [method Object.to_string] в [ScriptBacktrace] даст "
"тот же вывод, что и вызов [method format] со всеми параметрами, оставленными "
"со значениями по умолчанию."

msgid "Returns the number of stack frames in the backtrace."
msgstr "Возвращает количество кадров стека в обратной трассировке."

msgid ""
"Returns the file name of the call site represented by the stack frame at the "
"specified index."
msgstr ""
"Возвращает имя файла места вызова, представленного стековым кадром по "
"указанному индексу."

msgid ""
"Returns the name of the function called at the stack frame at the specified "
"index."
msgstr "Возвращает имя функции, вызванной в кадре стека по указанному индексу."

msgid ""
"Returns the line number of the call site represented by the stack frame at "
"the specified index."
msgstr ""
"Возвращает номер строки места вызова, представленного стековым кадром по "
"указанному индексу."

msgid ""
"Returns the number of global variables (e.g. autoload singletons) in the "
"backtrace.\n"
"[b]Note:[/b] This will be non-zero only if the [code]include_variables[/code] "
"parameter was [code]true[/code] when capturing the backtrace with [method "
"Engine.capture_script_backtraces]."
msgstr ""
"Возвращает количество глобальных переменных (например, автозагрузочных "
"синглтонов) в обратной трассировке.\n"
"[b]Примечание:[/b] Это будет ненулевым, только если параметр "
"[code]include_variables[/code] был [code]true[/code] при захвате обратной "
"трассировки с помощью [method Engine.capture_script_backtraces]."

msgid "Returns the name of the global variable at the specified index."
msgstr "Возвращает имя глобальной переменной по указанному индексу."

msgid ""
"Returns the value of the global variable at the specified index.\n"
"[b]Warning:[/b] With GDScript backtraces, the returned [Variant] will be the "
"variable's actual value, including any object references. This means that "
"storing the returned [Variant] will prevent any such object from being "
"deallocated, so it's generally recommended not to do so."
msgstr ""
"Возвращает значение глобальной переменной по указанному индексу.\n"
"[b]Предупреждение:[/b] При обратной трассировке GDScript возвращаемый "
"[Variant] будет фактическим значением переменной, включая любые ссылки на "
"объекты. Это означает, что сохранение возвращаемого [Variant] предотвратит "
"освобождение любого такого объекта, поэтому обычно рекомендуется этого не "
"делать."

msgid ""
"Returns the name of the script language that this backtrace was captured from."
msgstr ""
"Возвращает название языка скрипта, с которого была получена эта трассировка."

msgid ""
"Returns the number of local variables in the stack frame at the specified "
"index.\n"
"[b]Note:[/b] This will be non-zero only if the [code]include_variables[/code] "
"parameter was [code]true[/code] when capturing the backtrace with [method "
"Engine.capture_script_backtraces]."
msgstr ""
"Возвращает количество локальных переменных в стековом кадре по указанному "
"индексу.\n"
"[b]Примечание:[/b] Это будет ненулевым, только если параметр "
"[code]include_variables[/code] был [code]true[/code] при захвате обратной "
"трассировки с помощью [method Engine.capture_script_backtraces]."

msgid ""
"Returns the name of the local variable at the specified [param "
"variable_index] in the stack frame at the specified [param frame_index]."
msgstr ""
"Возвращает имя локальной переменной с указанным [param variable_index] в "
"кадре стека с указанным [param frame_index]."

msgid ""
"Returns the value of the local variable at the specified [param "
"variable_index] in the stack frame at the specified [param frame_index].\n"
"[b]Warning:[/b] With GDScript backtraces, the returned [Variant] will be the "
"variable's actual value, including any object references. This means that "
"storing the returned [Variant] will prevent any such object from being "
"deallocated, so it's generally recommended not to do so."
msgstr ""
"Возвращает значение локальной переменной по указанному [param variable_index] "
"в стековом кадре по указанному [param frame_index].\n"
"[b]Предупреждение:[/b] При использовании обратных трассировок GDScript "
"возвращаемый [Variant] будет фактическим значением переменной, включая любые "
"ссылки на объекты. Это означает, что сохранение возвращаемого [Variant] "
"предотвратит освобождение любого такого объекта, поэтому обычно рекомендуется "
"этого не делать."

msgid ""
"Returns the number of member variables in the stack frame at the specified "
"index.\n"
"[b]Note:[/b] This will be non-zero only if the [code]include_variables[/code] "
"parameter was [code]true[/code] when capturing the backtrace with [method "
"Engine.capture_script_backtraces]."
msgstr ""
"Возвращает количество переменных-членов в стековом фрейме по указанному "
"индексу.\n"
"[b]Примечание:[/b] Это будет ненулевым, только если параметр "
"[code]include_variables[/code] был [code]true[/code] при захвате обратной "
"трассировки с помощью [method Engine.capture_script_backtraces]."

msgid ""
"Returns the name of the member variable at the specified [param "
"variable_index] in the stack frame at the specified [param frame_index]."
msgstr ""
"Возвращает имя переменной-члена с указанным [param variable_index] в кадре "
"стека с указанным [param frame_index]."

msgid ""
"Returns the value of the member variable at the specified [param "
"variable_index] in the stack frame at the specified [param frame_index].\n"
"[b]Warning:[/b] With GDScript backtraces, the returned [Variant] will be the "
"variable's actual value, including any object references. This means that "
"storing the returned [Variant] will prevent any such object from being "
"deallocated, so it's generally recommended not to do so."
msgstr ""
"Возвращает значение переменной-члена по указанному [param variable_index] в "
"стековом кадре по указанному [param frame_index].\n"
"[b]Предупреждение:[/b] При обратной трассировке GDScript возвращаемый "
"[Variant] будет фактическим значением переменной, включая любые ссылки на "
"объекты. Это означает, что сохранение возвращаемого [Variant] предотвратит "
"освобождение любого такого объекта, поэтому обычно рекомендуется этого не "
"делать."

msgid "Returns [code]true[/code] if the backtrace has no stack frames."
msgstr ""
"Возвращает [code]true[/code], если обратная трассировка не имеет стековых "
"кадров."

msgid "Godot editor's popup dialog for creating new [Script] files."
msgstr ""
"Всплывающее диалоговое окно редактора Godot для создания новых файлов "
"[Script]."

msgid ""
"The [ScriptCreateDialog] creates script files according to a given template "
"for a given scripting language. The standard use is to configure its fields "
"prior to calling one of the [method Window.popup] methods.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar dialog = ScriptCreateDialog.new();\n"
"\tdialog.config(\"Node\", \"res://new_node.gd\") # For in-engine types.\n"
"\tdialog.config(\"\\\"res://base_node.gd\\\"\", \"res://derived_node.gd\") # "
"For script types.\n"
"\tdialog.popup_centered()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar dialog = new ScriptCreateDialog();\n"
"\tdialog.Config(\"Node\", \"res://NewNode.cs\"); // For in-engine types.\n"
"\tdialog.Config(\"\\\"res://BaseNode.cs\\\"\", \"res://DerivedNode.cs\"); // "
"For script types.\n"
"\tdialog.PopupCentered();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[ScriptCreateDialog] создает файлы скриптов в соответствии с заданным "
"шаблоном для заданного языка скриптов. Стандартное использование — настройка "
"его полей перед вызовом одного из методов [method Window.popup].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar dialog = ScriptCreateDialog.new();\n"
"\tdialog.config(\"Node\", \"res://new_node.gd\") # Для внутри-движкового "
"типа.\n"
"\tdialog.config(\"\\\"res://base_node.gd\\\"\", \"res://derived_node.gd\") # "
"Для типов сценариев.\n"
"\tdialog.popup_centered()\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar dialog = new ScriptCreateDialog();\n"
"\tdialog.Config(\"Node\", \"res://NewNode.cs\"); // Для внутри-движкового "
"типа.\n"
"\tdialog.Config(\"\\\"res://BaseNode.cs\\\"\", \"res://DerivedNode.cs\"); // "
"Для типов сценариев.\n"
"\tdialog.PopupCentered();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Prefills required fields to configure the ScriptCreateDialog for use."
msgstr ""
"Предварительно заполняет обязательные поля для настройки ScriptCreateDialog "
"для использования."

msgid "Emitted when the user clicks the OK button."
msgstr "Вызывается, когда пользователь нажимает кнопку «ОК»."

msgid "Godot editor's script editor."
msgstr "Редактор скриптов редактора Godot."

msgid ""
"Godot editor's script editor.\n"
"[b]Note:[/b] This class shouldn't be instantiated directly. Instead, access "
"the singleton using [method EditorInterface.get_script_editor]."
msgstr ""
"Редактор скриптов редактора Godot.\n"
"[b]Примечание:[/b] Этот класс не следует инстанцировать напрямую. Вместо "
"этого получите доступ к синглтону с помощью [method "
"EditorInterface.get_script_editor]."

msgid ""
"Removes the documentation for the given [param script].\n"
"[b]Note:[/b] This should be called whenever the script is changed to keep the "
"open documentation state up to date."
msgstr ""
"Удаляет документацию для указанного [param script].\n"
"[b]Примечание:[/b] Этот вызов следует выполнять при каждом изменении скрипта, "
"чтобы поддерживать состояние открытой документации в актуальном состоянии."

msgid "Returns array of breakpoints."
msgstr "Возвращает массив точек останова."

msgid ""
"Returns the [ScriptEditorBase] object that the user is currently editing."
msgstr ""
"Возвращает объект [ScriptEditorBase], который пользователь в данный момент "
"редактирует."

msgid "Returns a [Script] that is currently active in editor."
msgstr "Возвращает [Script], который в данный момент активен в редакторе."

msgid ""
"Returns an array with all [ScriptEditorBase] objects which are currently open "
"in editor."
msgstr ""
"Возвращает массив со всеми объектами [ScriptEditorBase], которые в данный "
"момент открыты в редакторе."

msgid ""
"Returns an array with all [Script] objects which are currently open in editor."
msgstr ""
"Возвращает массив со всеми объектами [Script], которые в данный момент "
"открыты в редакторе."

msgid ""
"Opens help for the given topic. The [param topic] is an encoded string that "
"controls which class, method, constant, signal, annotation, property, or "
"theme item should be focused.\n"
"The supported [param topic] formats include [code]class_name:class[/code], "
"[code]class_method:class:method[/code], [code]class_constant:class:constant[/"
"code], [code]class_signal:class:signal[/code], "
"[code]class_annotation:class:@annotation[/code], "
"[code]class_property:class:property[/code], and "
"[code]class_theme_item:class:item[/code], where [code]class[/code] is the "
"class name, [code]method[/code] is the method name, [code]constant[/code] is "
"the constant name, [code]signal[/code] is the signal name, [code]annotation[/"
"code] is the annotation name, [code]property[/code] is the property name, and "
"[code]item[/code] is the theme item.\n"
"[codeblock]\n"
"# Shows help for the Node class.\n"
"class_name:Node\n"
"# Shows help for the global min function.\n"
"# Global objects are accessible in the `@GlobalScope` namespace, shown here.\n"
"class_method:@GlobalScope:min\n"
"# Shows help for get_viewport in the Node class.\n"
"class_method:Node:get_viewport\n"
"# Shows help for the Input constant MOUSE_BUTTON_MIDDLE.\n"
"class_constant:Input:MOUSE_BUTTON_MIDDLE\n"
"# Shows help for the BaseButton signal pressed.\n"
"class_signal:BaseButton:pressed\n"
"# Shows help for the CanvasItem property visible.\n"
"class_property:CanvasItem:visible\n"
"# Shows help for the GDScript annotation export.\n"
"# Annotations should be prefixed with the `@` symbol in the descriptor, as "
"shown here.\n"
"class_annotation:@GDScript:@export\n"
"# Shows help for the GraphNode theme item named panel_selected.\n"
"class_theme_item:GraphNode:panel_selected\n"
"[/codeblock]"
msgstr ""
"Открывает справку по заданной теме. [param topic] — это закодированная "
"строка, которая управляет тем, какой класс, метод, константа, сигнал, "
"аннотация, свойство или элемент темы должны быть в фокусе.\n"
"Поддерживаемые форматы [param topic] включают [code]class_name:class[/code], "
"[code]class_method:class:method[/code], [code]class_constant:class:constant[/"
"code], [code]class_signal:class:signal[/code], "
"[code]class_annotation:class:@annotation[/code], "
"[code]class_property:class:property[/code] и "
"[code]class_theme_item:class:item[/code], где [code]class[/code] — имя "
"класса, [code]method[/code] — имя метода, [code]constant[/code] — имя "
"константы, [code]signal[/code] — имя сигнала, [code]annotation[/code] — имя "
"аннотации, [code]property[/code] — имя свойства, а [code]item[/code] — "
"элемент темы.\n"
"[codeblock]\n"
"# Показывает справку по классу Node.\n"
"class_name:Node\n"
"# Показывает справку по глобальной функции min.\n"
"# Глобальные объекты доступны в пространстве имен `@GlobalScope`, показанном "
"здесь.\n"
"class_method:@GlobalScope:min\n"
"# Показывает справку по get_viewport в классе Node.\n"
"class_method:Node:get_viewport\n"
"# Показывает справку по константе ввода MOUSE_BUTTON_MIDDLE.\n"
"class_constant:Input:MOUSE_BUTTON_MIDDLE\n"
"# Показывает справку по нажатому сигналу BaseButton.\n"
"class_signal:BaseButton:pressed\n"
"# Показывает справку по свойству CanvasItem visible.\n"
"class_property:CanvasItem:visible\n"
"# Показывает справку по экспорту аннотаций GDScript.\n"
"# Аннотации должны начинаться с символа `@` в дескрипторе, как показано "
"здесь.\n"
"class_annotation:@GDScript:@export\n"
"# Показывает справку по элементу темы GraphNode с именем panel_selected.\n"
"class_theme_item:GraphNode:panel_selected\n"
"[/codeblock]"

msgid "Goes to the specified line in the current script."
msgstr "Переход к указанной строке текущего скрипта."

msgid ""
"Opens the script create dialog. The script will extend [param base_name]. The "
"file extension can be omitted from [param base_path]. It will be added based "
"on the selected scripting language."
msgstr ""
"Открывает диалог создания скрипта. Скрипт будет расширять [param base_name]. "
"Расширение файла может быть опущено в [param base_path]. Оно будет добавлено "
"на основе выбранного языка скрипта."

msgid ""
"Registers the [EditorSyntaxHighlighter] to the editor, the "
"[EditorSyntaxHighlighter] will be available on all open scripts.\n"
"[b]Note:[/b] Does not apply to scripts that are already opened."
msgstr ""
"Регистрирует [EditorSyntaxHighlighter] в редакторе, [EditorSyntaxHighlighter] "
"будет доступен во всех открытых скриптах.\n"
"[b]Примечание:[/b] Не применяется к уже открытым скриптам."

msgid ""
"Unregisters the [EditorSyntaxHighlighter] from the editor.\n"
"[b]Note:[/b] The [EditorSyntaxHighlighter] will still be applied to scripts "
"that are already opened."
msgstr ""
"Отменяет регистрацию [EditorSyntaxHighlighter] в редакторе.\n"
"[b]Примечание:[/b] [EditorSyntaxHighlighter] по-прежнему будет применяться к "
"скриптам, которые уже открыты."

msgid ""
"Updates the documentation for the given [param script].\n"
"[b]Note:[/b] This should be called whenever the script is changed to keep the "
"open documentation state up to date."
msgstr ""
"Обновляет документацию для указанного [param script].\n"
"[b]Примечание:[/b] Этот вызов следует выполнять при каждом изменении скрипта, "
"чтобы поддерживать открытую документацию в актуальном состоянии."

msgid ""
"Emitted when user changed active script. Argument is a freshly activated "
"[Script]."
msgstr ""
"Выдается, когда пользователь изменил активный скрипт. Аргумент — недавно "
"активированный [Script]."

msgid ""
"Emitted when editor is about to close the active script. Argument is a "
"[Script] that is going to be closed."
msgstr ""
"Выдается, когда редактор собирается закрыть активный скрипт. Аргумент — "
"[Script], который будет закрыт."

msgid "Base editor for editing scripts in the [ScriptEditor]."
msgstr "Базовый редактор для редактирования скриптов в [ScriptEditor]."

msgid ""
"Base editor for editing scripts in the [ScriptEditor]. This does not include "
"documentation items."
msgstr ""
"Базовый редактор для редактирования скриптов в [ScriptEditor]. Сюда не входят "
"элементы документации."

msgid "Adds an [EditorSyntaxHighlighter] to the open script."
msgstr "Добавляет [EditorSyntaxHighlighter] к открытому скрипту."

msgid ""
"Returns the underlying [Control] used for editing scripts. For text scripts, "
"this is a [CodeEdit]."
msgstr ""
"Возвращает базовый [Control], используемый для редактирования скриптов. Для "
"текстовых скриптов это [CodeEdit]."

msgid "Emitted after script validation."
msgstr "Выдается после проверки скрипта."

msgid "Emitted when the user requests a specific documentation page."
msgstr ""
"Генерируется, когда пользователь запрашивает определенную страницу "
"документации."

msgid ""
"Emitted when the user requests to view a specific method of a script, similar "
"to [signal request_open_script_at_line]."
msgstr ""
"Генерируется, когда пользователь запрашивает просмотр определенного метода "
"скрипта, аналогично [signal request_open_script_at_line]."

msgid "Emitted after script validation or when the edited resource has changed."
msgstr ""
"Выдается после проверки скрипта или при изменении редактируемого ресурса."

msgid ""
"Emitted when the user request to find and replace text in the file system."
msgstr ""
"Генерируется, когда пользователь запрашивает поиск и замену текста в файловой "
"системе."

msgid "Emitted when the user requests contextual help."
msgstr "Генерируется, когда пользователь запрашивает контекстную помощь."

msgid ""
"Emitted when the user requests to view a specific line of a script, similar "
"to [signal go_to_method]."
msgstr ""
"Генерируется, когда пользователь запрашивает просмотр определенной строки "
"скрипта, аналогично [signal go_to_method]."

msgid ""
"Emitted when the user contextual goto and the item is in the same script."
msgstr ""
"Вызывается, когда контекстный переход (goto) пользователя и элемент находятся "
"в одном и том же скрипте."

msgid ""
"Emitted when the user changes current script or moves caret by 10 or more "
"columns within the same script."
msgstr ""
"Вызывается, когда пользователь изменяет текущий скрипт или перемещает курсор "
"на 10 или более столбцов в пределах одного скрипта."

msgid "Emitted when the user request to search text in the file system."
msgstr ""
"Генерируется, когда пользователь запрашивает поиск текста в файловой системе."

msgid ""
"Return the expected argument count for the given [param method], or "
"[code]null[/code] if it can't be determined (which will then fall back to the "
"default behavior)."
msgstr ""
"Возвращает ожидаемое количество аргументов для указанного [param method] или "
"[code]null[/code], если его невозможно определить (что затем вернет поведение "
"по умолчанию)."

msgid ""
"Returns [code]true[/code] if the script is an abstract script. Abstract "
"scripts cannot be instantiated directly, instead other scripts should inherit "
"them. Abstract scripts will be either unselectable or hidden in the Create "
"New Node dialog (unselectable if there are non-abstract classes inheriting "
"it, otherwise hidden)."
msgstr ""
"Возвращает [code]true[/code], если скрипт является абстрактным. Абстрактные "
"скрипты не могут быть созданы напрямую, вместо этого другие скрипты должны "
"наследовать их. Абстрактные скрипты будут либо невыбираемыми, либо скрытыми в "
"диалоговом окне «Создать новый узел» (невыбираемыми, если есть неабстрактные "
"классы, наследующие его, в противном случае скрытыми)."

msgid "Returns the source associated with a given debug stack position."
msgstr "Возвращает источник, связанный с заданной позицией стека отладки."

msgid ""
"Returns the line where the function is defined in the code, or [code]-1[/"
"code] if the function is not present."
msgstr ""
"Возвращает строку, в которой функция определена в коде, или [code]-1[/code], "
"если функция отсутствует."

msgid "This method is not called by the engine."
msgstr "Этот метод не вызывается движком."

msgid "Abstract base class for scrollbars."
msgstr "Абстрактный базовый класс для полос прокрутки."

msgid ""
"Abstract base class for scrollbars, typically used to navigate through "
"content that extends beyond the visible area of a control. Scrollbars are "
"[Range]-based controls."
msgstr ""
"Абстрактный базовый класс для полос прокрутки, обычно используемых для "
"навигации по содержимому, выходящему за пределы видимой области элемента "
"управления. Полосы прокрутки — это элементы управления на основе [Range]."

msgid ""
"Overrides the step used when clicking increment and decrement buttons or when "
"using arrow keys when the [ScrollBar] is focused."
msgstr ""
"Переопределяет шаг, используемый при нажатии кнопок увеличения и уменьшения "
"или при использовании клавиш со стрелками, когда фокус находится на "
"[ScrollBar]."

msgid "Emitted when the scrollbar is being scrolled."
msgstr "Выдается при прокрутке полосы прокрутки."

msgid ""
"Icon used as a button to scroll the [ScrollBar] left/up. Supports custom step "
"using the [member ScrollBar.custom_step] property."
msgstr ""
"Значок используется как кнопка для прокрутки [ScrollBar] влево/вверх. "
"Поддерживает пользовательский шаг с использованием свойства [member "
"ScrollBar.custom_step]."

msgid "Displayed when the mouse cursor hovers over the decrement button."
msgstr "Отображается при наведении курсора мыши на кнопку уменьшения."

msgid "Displayed when the decrement button is being pressed."
msgstr "Отображается при нажатии кнопки уменьшения."

msgid ""
"Icon used as a button to scroll the [ScrollBar] right/down. Supports custom "
"step using the [member ScrollBar.custom_step] property."
msgstr ""
"Значок используется как кнопка для прокрутки [ScrollBar] вправо/вниз. "
"Поддерживает пользовательский шаг с использованием свойства [member "
"ScrollBar.custom_step]."

msgid "Displayed when the mouse cursor hovers over the increment button."
msgstr "Отображается при наведении курсора мыши на кнопку увеличения."

msgid "Displayed when the increment button is being pressed."
msgstr "Отображается при нажатии кнопки увеличения."

msgid ""
"Used as texture for the grabber, the draggable element representing current "
"scroll."
msgstr ""
"Используется в качестве текстуры для граббера, перетаскиваемого элемента, "
"представляющего текущую прокрутку."

msgid "Used when the mouse hovers over the grabber."
msgstr "Используется, когда указатель мыши наведен на захват."

msgid "Used when the grabber is being dragged."
msgstr "Используется при перетаскивании захвата."

msgid "Used as background of this [ScrollBar]."
msgstr "Используется как фон для [ScrollBar]."

msgid "Used as background when the [ScrollBar] has the GUI focus."
msgstr "Используется в качестве фона, когда [ScrollBar] имеет фокус GUI ."

msgid "A container used to provide scrollbars to a child control when needed."
msgstr ""
"Контейнер, используемый для предоставления полос прокрутки дочернему элементу "
"управления при необходимости."

msgid ""
"A container used to provide a child control with scrollbars when needed. "
"Scrollbars will automatically be drawn at the right (for vertical) or bottom "
"(for horizontal) and will enable dragging to move the viewable Control (and "
"its children) within the ScrollContainer. Scrollbars will also automatically "
"resize the grabber based on the [member Control.custom_minimum_size] of the "
"Control relative to the ScrollContainer."
msgstr ""
"Контейнер, используемый для предоставления дочернему элементу управления "
"полос прокрутки при необходимости. Полосы прокрутки будут автоматически "
"отрисованы справа (для вертикали) или снизу (для горизонтали) и позволят "
"перетаскивать видимый элемент управления (и его дочерние элементы) в пределах "
"ScrollContainer. Полосы прокрутки также автоматически изменят размер захвата "
"на основе [member Control.custom_minimum_size] элемента управления "
"относительно ScrollContainer."

msgid ""
"Ensures the given [param control] is visible (must be a direct or indirect "
"child of the ScrollContainer). Used by [member follow_focus].\n"
"[b]Note:[/b] This will not work on a node that was just added during the same "
"frame. If you want to scroll to a newly added child, you must wait until the "
"next frame using [signal SceneTree.process_frame]:\n"
"[codeblock]\n"
"add_child(child_node)\n"
"await get_tree().process_frame\n"
"ensure_control_visible(child_node)\n"
"[/codeblock]"
msgstr ""
"Гарантирует, что заданный [param control] виден (должен быть прямым или "
"косвенным дочерним элементом ScrollContainer). Используется [member "
"follow_focus].\n"
"[b]Примечание:[/b] Это не будет работать на узле, который был только что "
"добавлен в том же кадре. Если вы хотите прокрутить до недавно добавленного "
"дочернего элемента, вы должны дождаться следующего кадра, используя [signal "
"SceneTree.process_frame]:\n"
"[codeblock]\n"
"add_child(child_node)\n"
"await get_tree().process_frame\n"
"ensure_control_visible(child_node)\n"
"[/codeblock]"

msgid ""
"Returns the horizontal scrollbar [HScrollBar] of this [ScrollContainer].\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to disable or hide a scrollbar, you can use "
"[member horizontal_scroll_mode]."
msgstr ""
"Возвращает горизонтальную полосу прокрутки [HScrollBar] этого "
"[ScrollContainer].\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите отключить или скрыть "
"полосу прокрутки, вы можете использовать [member horizontal_scroll_mode]."

msgid ""
"Returns the vertical scrollbar [VScrollBar] of this [ScrollContainer].\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to disable or hide a scrollbar, you can use "
"[member vertical_scroll_mode]."
msgstr ""
"Возвращает вертикальную полосу прокрутки [VScrollBar] этого "
"[ScrollContainer].\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите отключить или скрыть "
"полосу прокрутки, вы можете использовать [member vertical_scroll_mode]."

msgid ""
"If [code]true[/code], [theme_item focus] is drawn when the ScrollContainer or "
"one of its descendant nodes is focused."
msgstr ""
"Если [code]true[/code], [theme_item focus] отрисовывается, когда "
"ScrollContainer или один из его дочерних узлов находится в фокусе."

msgid ""
"If [code]true[/code], the ScrollContainer will automatically scroll to "
"focused children (including indirect children) to make sure they are fully "
"visible."
msgstr ""
"Если [code]true[/code], ScrollContainer автоматически прокрутит до "
"сфокусированных дочерних элементов (включая косвенные дочерние элементы), "
"чтобы убедиться, что они полностью видны."

msgid ""
"Controls whether horizontal scrollbar can be used and when it should be "
"visible."
msgstr ""
"Управляет возможностью использования горизонтальной полосы прокрутки и тем, "
"когда она должна быть видна."

msgid ""
"Deadzone for touch scrolling. Lower deadzone makes the scrolling more "
"sensitive."
msgstr ""
"Мертвая зона для сенсорной прокрутки. Меньшая мертвая зона делает прокрутку "
"более чувствительной."

msgid ""
"The current horizontal scroll value.\n"
"[b]Note:[/b] If you are setting this value in the [method Node._ready] "
"function or earlier, it needs to be wrapped with [method "
"Object.set_deferred], since scroll bar's [member Range.max_value] is not "
"initialized yet.\n"
"[codeblock]\n"
"func _ready():\n"
"\tset_deferred(\"scroll_horizontal\", 600)\n"
"[/codeblock]"
msgstr ""
"Текущее значение горизонтальной прокрутки.\n"
"[b]Примечание:[/b] Если вы устанавливаете это значение в функции [method "
"Node._ready] или более ранней, его необходимо обернуть в [method "
"Object.set_deferred], поскольку [member Range.max_value] полосы прокрутки еще "
"не инициализирован.\n"
"[codeblock]\n"
"func _ready():\n"
"\tset_deferred(\"scroll_horizontal\", 600)\n"
"[/codeblock]"

msgid ""
"Overrides the [member ScrollBar.custom_step] used when clicking the internal "
"scroll bar's horizontal increment and decrement buttons or when using arrow "
"keys when the [ScrollBar] is focused."
msgstr ""
"Переопределяет [member ScrollBar.custom_step], используемый при нажатии "
"кнопок горизонтального увеличения и уменьшения внутренней полосы прокрутки "
"или при использовании клавиш со стрелками, когда [ScrollBar] находится в "
"фокусе."

msgid ""
"The current vertical scroll value.\n"
"[b]Note:[/b] Setting it early needs to be deferred, just like in [member "
"scroll_horizontal].\n"
"[codeblock]\n"
"func _ready():\n"
"\tset_deferred(\"scroll_vertical\", 600)\n"
"[/codeblock]"
msgstr ""
"Текущее значение вертикальной прокрутки.\n"
"[b]Примечание:[/b] Раннюю установку необходимо отложить, как и в [member "
"scroll_horizontal].\n"
"[codeblock]\n"
"func _ready():\n"
"\tset_deferred(\"scroll_vertical\", 600)\n"
"[/codeblock]"

msgid ""
"Overrides the [member ScrollBar.custom_step] used when clicking the internal "
"scroll bar's vertical increment and decrement buttons or when using arrow "
"keys when the [ScrollBar] is focused."
msgstr ""
"Переопределяет [member ScrollBar.custom_step], используемый при нажатии "
"кнопок вертикального увеличения и уменьшения внутренней полосы прокрутки или "
"при использовании клавиш со стрелками, когда [ScrollBar] находится в фокусе."

msgid ""
"Controls whether vertical scrollbar can be used and when it should be visible."
msgstr ""
"Управляет возможностью использования вертикальной полосы прокрутки и тем, "
"когда она должна быть видна."

msgid ""
"Emitted when scrolling stops when dragging the scrollable area [i]with a "
"touch event[/i]. This signal is [i]not[/i] emitted when scrolling by dragging "
"the scrollbar, scrolling with the mouse wheel or scrolling with keyboard/"
"gamepad events.\n"
"[b]Note:[/b] This signal is only emitted on Android or iOS, or on desktop/web "
"platforms when [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse] is enabled."
msgstr ""
"Выдается, когда прокрутка останавливается при перетаскивании прокручиваемой "
"области [i]событием касания[/i]. Этот сигнал [i]не[/i] выдается при прокрутке "
"путем перетаскивания полосы прокрутки, прокрутки колесиком мыши или прокрутки "
"с помощью событий клавиатуры/геймпада.\n"
"[b]Примечание:[/b] Этот сигнал выдается только на Android или iOS, или на "
"настольных/веб-платформах, когда включен [member "
"ProjectSettings.input_devices/pointing/emulate_touch_from_mouse]."

msgid ""
"Emitted when scrolling starts when dragging the scrollable area w[i]ith a "
"touch event[/i]. This signal is [i]not[/i] emitted when scrolling by dragging "
"the scrollbar, scrolling with the mouse wheel or scrolling with keyboard/"
"gamepad events.\n"
"[b]Note:[/b] This signal is only emitted on Android or iOS, or on desktop/web "
"platforms when [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse] is enabled."
msgstr ""
"Выдается при начале прокрутки при перетаскивании прокручиваемой области с "
"[i]событием касания[/i]. Этот сигнал [i]не[/i] выдается при прокрутке путем "
"перетаскивания полосы прокрутки, прокрутки колесиком мыши или прокрутки с "
"помощью событий клавиатуры/геймпада.\n"
"[b]Примечание:[/b] Этот сигнал выдается только на Android или iOS, или на "
"настольных/веб-платформах, когда включен [member "
"ProjectSettings.input_devices/pointing/emulate_touch_from_mouse]."

msgid "Scrolling disabled, scrollbar will be invisible."
msgstr "Прокрутка отключена, полоса прокрутки будет невидима."

msgid ""
"Scrolling enabled, scrollbar will be visible only if necessary, i.e. "
"container's content is bigger than the container."
msgstr ""
"Прокрутка включена, полоса прокрутки будет видна только при необходимости, т. "
"е. если содержимое контейнера больше самого контейнера."

msgid "Scrolling enabled, scrollbar will be always visible."
msgstr "Прокрутка включена, полоса прокрутки всегда будет видна."

msgid "Scrolling enabled, scrollbar will be hidden."
msgstr "Прокрутка включена, полоса прокрутки будет скрыта."

msgid ""
"Combines [constant SCROLL_MODE_AUTO] and [constant SCROLL_MODE_SHOW_ALWAYS]. "
"The scrollbar is only visible if necessary, but the content size is adjusted "
"as if it was always visible. It's useful for ensuring that content size stays "
"the same regardless if the scrollbar is visible."
msgstr ""
"Объединяет [constant SCROLL_MODE_AUTO] и [constant SCROLL_MODE_SHOW_ALWAYS]. "
"Полоса прокрутки видна только при необходимости, но размер контента "
"регулируется так, как если бы он был виден всегда. Это полезно для "
"обеспечения того, чтобы размер контента оставался неизменным независимо от "
"того, видна ли полоса прокрутки."

msgid ""
"The focus border [StyleBox] of the [ScrollContainer]. Only used if [member "
"draw_focus_border] is [code]true[/code]."
msgstr ""
"Граница фокуса [StyleBox] [ScrollContainer]. Используется только если [member "
"draw_focus_border] равен [code]true[/code]."

msgid "The background [StyleBox] of the [ScrollContainer]."
msgstr "Фон [StyleBox] [ScrollContainer]."

msgid "A 2D line segment shape used for physics collision."
msgstr ""
"Форма 2D сегмента двухмерной линии, используемая для физического столкновения."

msgid ""
"A 2D line segment shape, intended for use in physics. Usually used to provide "
"a shape for a [CollisionShape2D]."
msgstr ""
"Форма сегмента 2D-линии, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape2D]."

msgid "The segment's first point position."
msgstr "Первая точка сегмента."

msgid "The segment's second point position."
msgstr "Положение второй точки сегмента."

msgid ""
"A synchronization mechanism used to control access to a shared resource by "
"[Thread]s."
msgstr ""
"Механизм синхронизации, используемый для управления доступом к общему ресурсу "
"потоками [Thread]."

msgid ""
"A synchronization semaphore that can be used to synchronize multiple "
"[Thread]s. Initialized to zero on creation. For a binary version, see "
"[Mutex].\n"
"[b]Warning:[/b] Semaphores must be used carefully to avoid deadlocks.\n"
"[b]Warning:[/b] To guarantee that the operating system is able to perform "
"proper cleanup (no crashes, no deadlocks), these conditions must be met:\n"
"- When a [Semaphore]'s reference count reaches zero and it is therefore "
"destroyed, no threads must be waiting on it.\n"
"- When a [Thread]'s reference count reaches zero and it is therefore "
"destroyed, it must not be waiting on any semaphore."
msgstr ""
"Синхронизирующий семафор, который можно использовать для синхронизации "
"нескольких [Thread]. Инициализируется нулем при создании. Для двоичной версии "
"см. [Mutex].\n"
"[b]Предупреждение:[/b] Семафоры следует использовать осторожно, чтобы "
"избежать взаимоблокировок.\n"
"[b]Предупреждение:[/b] Чтобы гарантировать, что операционная система сможет "
"выполнить надлежащую очистку (без сбоев, без взаимоблокировок), должны быть "
"соблюдены следующие условия:\n"
"- Когда счетчик ссылок [Semaphore] достигает нуля и, следовательно, он "
"уничтожается, ни один поток не должен его ожидать.\n"
"- Когда счетчик ссылок [Thread] достигает нуля и, следовательно, он "
"уничтожается, он не должен ожидать ни одного семафора."

msgid ""
"Lowers the [Semaphore], allowing one thread in, or more if [param count] is "
"specified."
msgstr ""
"Понижает [Semaphore], разрешая вход одному потоку или нескольким, если "
"указано [param count]."

msgid ""
"Like [method wait], but won't block, so if the value is zero, fails "
"immediately and returns [code]false[/code]. If non-zero, it returns "
"[code]true[/code] to report success."
msgstr ""
"Подобно [method wait], но не блокирует, поэтому если значение равно нулю, "
"немедленно завершается ошибкой и возвращается [code]false[/code]. Если не "
"равно нулю, возвращается [code]true[/code], чтобы сообщить об успешном "
"завершении."

msgid "Waits for the [Semaphore], if its value is zero, blocks until non-zero."
msgstr ""
"Ожидает [Semaphore], если его значение равно нулю, блокирует до тех пор, пока "
"не станет ненулевым."

msgid ""
"A 2D ray shape used for physics collision that tries to separate itself from "
"any collider."
msgstr ""
"Форма 2D-луча, используемая для физического столкновения, которая пытается "
"отделиться от любого коллайдера."

msgid ""
"A 2D ray shape, intended for use in physics. Usually used to provide a shape "
"for a [CollisionShape2D]. When a [SeparationRayShape2D] collides with an "
"object, it tries to separate itself from it by moving its endpoint to the "
"collision point. For example, a [SeparationRayShape2D] next to a character "
"can allow it to instantly move up when touching stairs."
msgstr ""
"Форма 2D-луча, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape2D]. Когда "
"[SeparationRayShape2D] сталкивается с объектом, он пытается отделиться от "
"него, перемещая свою конечную точку в точку столкновения. Например, "
"[SeparationRayShape2D] рядом с персонажем может позволить ему мгновенно "
"подняться при касании лестницы."

msgid "The ray's length."
msgstr "Длина луча."

msgid ""
"If [code]false[/code] (default), the shape always separates and returns a "
"normal along its own direction.\n"
"If [code]true[/code], the shape can return the correct normal and separate in "
"any direction, allowing sliding motion on slopes."
msgstr ""
"Если [code]false[/code] (по умолчанию), форма всегда разделяется и возвращает "
"нормаль вдоль своего собственного направления.\n"
"Если [code]true[/code], форма может возвращать правильную нормаль и "
"разделяться в любом направлении, допуская скользящее движение на склонах."

msgid ""
"A 3D ray shape used for physics collision that tries to separate itself from "
"any collider."
msgstr ""
"Форма 3D-луча, используемая для физического столкновения, которая пытается "
"отделиться от любого коллайдера."

msgid ""
"A 3D ray shape, intended for use in physics. Usually used to provide a shape "
"for a [CollisionShape3D]. When a [SeparationRayShape3D] collides with an "
"object, it tries to separate itself from it by moving its endpoint to the "
"collision point. For example, a [SeparationRayShape3D] next to a character "
"can allow it to instantly move up when touching stairs."
msgstr ""
"Форма 3D-луча, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape3D]. Когда "
"[SeparationRayShape3D] сталкивается с объектом, он пытается отделиться от "
"него, перемещая свою конечную точку в точку столкновения. Например, "
"[SeparationRayShape3D] рядом с персонажем может позволить ему мгновенно "
"подняться при касании лестницы."

msgid "Abstract base class for separators."
msgstr "Абстрактный базовый класс для разделителей."

msgid ""
"Abstract base class for separators, used for separating other controls. "
"[Separator]s are purely visual and normally drawn as a [StyleBoxLine]."
msgstr ""
"Абстрактный базовый класс для разделителей, используемых для разделения "
"других элементов управления. [Separator]-ы являются чисто визуальными и "
"обычно рисуются как [StyleBoxLine]."

msgid ""
"The size of the area covered by the separator. Effectively works like a "
"minimum width/height."
msgstr ""
"Размер области, охватываемой разделителем. Фактически работает как "
"минимальная ширина/высота."

msgid ""
"The style for the separator line. Works best with [StyleBoxLine] (remember to "
"enable [member StyleBoxLine.vertical] for [VSeparator])."
msgstr ""
"Стиль для разделительной линии. Лучше всего работает с [StyleBoxLine] (не "
"забудьте включить [member StyleBoxLine.vertical] для [VSeparator])."

msgid "A shader implemented in the Godot shading language."
msgstr "Шейдер, реализованный на языке шейдеров Godot."

msgid ""
"A custom shader program implemented in the Godot shading language, saved with "
"the [code].gdshader[/code] extension.\n"
"This class is used by a [ShaderMaterial] and allows you to write your own "
"custom behavior for rendering visual items or updating particle information. "
"For a detailed explanation and usage, please see the tutorials linked below."
msgstr ""
"Пользовательская программа шейдера, реализованная на языке шейдеров Godot, "
"сохраненная с расширением [code].gdshader[/code].\n"
"Этот класс используется [ShaderMaterial] и позволяет вам писать собственное "
"пользовательское поведение для рендеринга визуальных элементов или обновления "
"информации о частицах. Подробное объяснение и использование см. в "
"руководствах, ссылки на которые приведены ниже."

msgid "Shaders documentation index"
msgstr "Индекс документации по шейдерам"

msgid ""
"Returns the texture that is set as default for the specified parameter.\n"
"[b]Note:[/b] [param name] must match the name of the uniform in the code "
"exactly.\n"
"[b]Note:[/b] If the sampler array is used use [param index] to access the "
"specified texture."
msgstr ""
"Возвращает текстуру, которая установлена по умолчанию для указанного "
"параметра.\n"
"[b]Примечание:[/b] [param name] должно точно соответствовать имени униформы в "
"коде.\n"
"[b]Примечание:[/b] Если используется массив сэмплера, используйте [param "
"index] для доступа к указанной текстуре."

msgid "Returns the shader mode for the shader."
msgstr "Возвращает режим шейдера для шейдера."

msgid ""
"Returns the list of shader uniforms that can be assigned to a "
"[ShaderMaterial], for use with [method ShaderMaterial.set_shader_parameter] "
"and [method ShaderMaterial.get_shader_parameter]. The parameters returned are "
"contained in dictionaries in a similar format to the ones returned by [method "
"Object.get_property_list].\n"
"If argument [param get_groups] is [code]true[/code], parameter grouping hints "
"are also included in the list."
msgstr ""
"Возвращает список шейдерных униформ, которые могут быть назначены "
"[ShaderMaterial], для использования с [method "
"ShaderMaterial.set_shader_parameter] и [method "
"ShaderMaterial.get_shader_parameter]. Возвращаемые параметры содержатся в "
"словарях в формате, аналогичном возвращаемым [method "
"Object.get_property_list].\n"
"Если аргумент [param get_groups] равен [code]true[/code], подсказки по "
"группировке параметров также включаются в список."

msgid ""
"Only available when running in the editor. Opens a popup that visualizes the "
"generated shader code, including all variants and internal shader code. See "
"also [method Material.inspect_native_shader_code]."
msgstr ""
"Доступно только при запуске в редакторе. Открывает всплывающее окно, "
"визуализирующее сгенерированный код шейдера, включая все варианты и "
"внутренний код шейдера. См. также [method "
"Material.inspect_native_shader_code]."

msgid ""
"Sets the default texture to be used with a texture uniform. The default is "
"used if a texture is not set in the [ShaderMaterial].\n"
"[b]Note:[/b] [param name] must match the name of the uniform in the code "
"exactly.\n"
"[b]Note:[/b] If the sampler array is used use [param index] to access the "
"specified texture."
msgstr ""
"Устанавливает текстуру по умолчанию для использования с униформой текстуры. "
"По умолчанию используется текстура, если в [ShaderMaterial] не задана "
"текстура.\n"
"[b]Примечание:[/b] [param name] должно точно соответствовать имени униформы "
"текстуры в коде.\n"
"[b]Примечание:[/b] Если используется массив сэмплера, используйте [param "
"index] для доступа к указанной текстуре."

msgid ""
"Returns the shader's code as the user has written it, not the full generated "
"code used internally."
msgstr ""
"Возвращает код шейдера в том виде, в котором его написал пользователь, а не "
"полный сгенерированный код, используемый внутри."

msgid "Mode used to draw all 3D objects."
msgstr "Режим, используемый для отрисовки всех 3D-объектов."

msgid "Mode used to draw all 2D objects."
msgstr "Режим, используемый для рисования всех 2D-объектов."

msgid ""
"Mode used to calculate particle information on a per-particle basis. Not used "
"for drawing."
msgstr ""
"Режим, используемый для расчета информации о частицах на основе каждой "
"частицы. Не используется для рисования."

msgid ""
"Mode used for drawing skies. Only works with shaders attached to [Sky] "
"objects."
msgstr ""
"Режим, используемый для рисования неба. Работает только с шейдерами, "
"прикрепленными к объектам [Sky]."

msgid "Mode used for setting the color and density of volumetric fog effect."
msgstr ""
"Режим, используемый для настройки цвета и плотности эффекта объемного тумана."

msgid "A node used to override global shader parameters' values in a scene."
msgstr ""
"Узел, используемый для переопределения значений глобальных параметров шейдера "
"в сцене."

msgid ""
"Similar to how a [WorldEnvironment] node can be used to override the "
"environment while a specific scene is loaded, [ShaderGlobalsOverride] can be "
"used to override global shader parameters temporarily. Once the node is "
"removed, the project-wide values for the global shader parameters are "
"restored. See the [RenderingServer] [code]global_shader_parameter_*[/code] "
"methods for more information.\n"
"[b]Note:[/b] Only one [ShaderGlobalsOverride] can be used per scene. If there "
"is more than one [ShaderGlobalsOverride] node in the scene tree, only the "
"first node (in tree order) will be taken into account.\n"
"[b]Note:[/b] All [ShaderGlobalsOverride] nodes are made part of a [code]"
"\"shader_overrides_group\"[/code] group when they are added to the scene "
"tree. The currently active [ShaderGlobalsOverride] node also has a [code]"
"\"shader_overrides_group_active\"[/code] group added to it. You can use this "
"to check which [ShaderGlobalsOverride] node is currently active."
msgstr ""
"Подобно тому, как узел [WorldEnvironment] может использоваться для "
"переопределения среды при загрузке определенной сцены, "
"[ShaderGlobalsOverride] может использоваться для временного переопределения "
"глобальных параметров шейдера. После удаления узла восстанавливаются "
"общепроектные значения глобальных параметров шейдера. Для получения "
"дополнительной информации см. методы [RenderingServer] "
"[code]global_shader_parameter_*[/code].\n"
"[b]Примечание:[/b] Для каждой сцены можно использовать только один узел "
"[ShaderGlobalsOverride]. Если в дереве сцены есть более одного узла "
"[ShaderGlobalsOverride], будет учитываться только первый узел (в порядке "
"дерева).\n"
"[b]Примечание:[/b] Все узлы [ShaderGlobalsOverride] становятся частью группы "
"[code]\"shader_overrides_group\"[/code] при добавлении в дерево сцены. "
"Текущий активный узел [ShaderGlobalsOverride] также имеет добавленную к нему "
"группу [code]\"shader_overrides_group_active\"[/code]. Вы можете использовать "
"это, чтобы проверить, какой узел [ShaderGlobalsOverride] в данный момент "
"активен."

msgid "Shading language"
msgstr "Язык шейдера"

msgid ""
"A snippet of shader code to be included in a [Shader] with [code]#include[/"
"code]."
msgstr ""
"Фрагмент кода шейдера, который необходимо включить в [Shader] с помощью "
"[code]#include[/code]."

msgid ""
"A shader include file, saved with the [code].gdshaderinc[/code] extension. "
"This class allows you to define a custom shader snippet that can be included "
"in a [Shader] by using the preprocessor directive [code]#include[/code], "
"followed by the file path (e.g. [code]#include \"res://"
"shader_lib.gdshaderinc\"[/code]). The snippet doesn't have to be a valid "
"shader on its own."
msgstr ""
"Файл включения шейдера, сохраненный с расширением [code].gdshaderinc[/code]. "
"Этот класс позволяет вам определить пользовательский фрагмент шейдера, "
"который может быть включен в [Shader], используя директиву препроцессора "
"[code]#include[/code], за которой следует путь к файлу (например, "
"[code]#include \"res://shader_lib.gdshaderinc\"[/code]). Фрагмент не "
"обязательно должен быть допустимым шейдером сам по себе."

msgid "Shader preprocessor"
msgstr "Шейдерный препроцессор"

msgid ""
"Returns the code of the shader include file. The returned text is what the "
"user has written, not the full generated code used internally."
msgstr ""
"Возвращает код включаемого файла шейдера. Возвращаемый текст — это то, что "
"написал пользователь, а не полный сгенерированный код, используемый внутри."

msgid "Internal database of built in shader include files."
msgstr "Внутренняя база данных встроенных файлов шейдеров."

msgid ""
"This object contains shader fragments from Godot's internal shaders. These "
"can be used when access to internal uniform buffers and/or internal functions "
"is required for instance when composing compositor effects or compute "
"shaders. Only fragments for the current rendering device are loaded."
msgstr ""
"Этот объект содержит фрагменты шейдеров из внутренних шейдеров Godot. Их "
"можно использовать, когда требуется доступ к внутренним униформным буферам и/"
"или внутренним функциям, например, при составлении эффектов композитора или "
"вычислительных шейдеров. Загружаются только фрагменты для текущего устройства "
"рендеринга."

msgid ""
"Returns the code for the built-in shader fragment. You can also access this "
"in your shader code through [code]#include \"filename\"[/code]."
msgstr ""
"Возвращает код для встроенного фрагмента шейдера. Вы также можете получить к "
"нему доступ в коде шейдера через [code]#include \"filename\"[/code]."

msgid "Returns [code]true[/code] if an include file with this name exists."
msgstr ""
"Возвращает [code]true[/code], если включаемый файл с таким именем существует."

msgid "Returns a list of built-in include files that are currently registered."
msgstr ""
"Возвращает список встроенных включаемых файлов, которые в данный момент "
"зарегистрированы."

msgid ""
"A material defined by a custom [Shader] program and the values of its shader "
"parameters."
msgstr ""
"Материал, определенный пользовательской программой [Shader] и значениями ее "
"параметров шейдера."

msgid ""
"A material that uses a custom [Shader] program to render visual items (canvas "
"items, meshes, skies, fog), or to process particles. Compared to other "
"materials, [ShaderMaterial] gives deeper control over the generated shader "
"code. For more information, see the shaders documentation index below.\n"
"Multiple [ShaderMaterial]s can use the same shader and configure different "
"values for the shader uniforms.\n"
"[b]Note:[/b] For performance reasons, the [signal Resource.changed] signal is "
"only emitted when the [member Resource.resource_name] changes. Only in "
"editor, it is also emitted for [member shader] changes."
msgstr ""
"Материал, который использует пользовательскую программу [Shader] для "
"рендеринга визуальных элементов (эл. холста, сеток, неба, тумана) или для "
"обработки частиц. По сравнению с другими материалами [ShaderMaterial] "
"обеспечивает более глубокий контроль над сгенерированным кодом шейдера. Для "
"получения дополнительной информации см. индекс документации шейдеров ниже.\n"
"Несколько [ShaderMaterial] могут использовать один и тот же шейдер и "
"настраивать разные значения для униформ шейдера.\n"
"[b]Примечание:[/b] Из соображений производительности сигнал [signal "
"Resource.changed] выдается только при изменении [member "
"Resource.resource_name]. Только в редакторе он также выдается при изменении "
"[member shader]."

msgid ""
"Returns the current value set for this material of a uniform in the shader."
msgstr ""
"Возвращает текущее значение, установленное для данного материала униформы в "
"шейдере."

msgid ""
"Changes the value set for this material of a uniform in the shader.\n"
"[b]Note:[/b] [param param] is case-sensitive and must match the name of the "
"uniform in the code exactly (not the capitalized name in the inspector).\n"
"[b]Note:[/b] Changes to the shader uniform will be effective on all instances "
"using this [ShaderMaterial]. To prevent this, use per-instance uniforms with "
"[method GeometryInstance3D.set_instance_shader_parameter] or duplicate the "
"[ShaderMaterial] resource using [method Resource.duplicate]. Per-instance "
"uniforms allow for better shader reuse and are therefore faster, so they "
"should be preferred over duplicating the [ShaderMaterial] when possible."
msgstr ""
"Изменяет значение, заданное для этого материала uniform-переменной в "
"шейдере.\n"
"[b]Примечание:[/b] [param param] чувствителен к регистру и должен точно "
"соответствовать имени uniform-переменной в коде (не заглавному имени в "
"инспекторе).\n"
"[b]Примечание:[/b] Изменения uniform-переменной шейдера будут эффективны для "
"всех экземпляров, использующих этот [ShaderMaterial]. Чтобы предотвратить "
"это, используйте uniform-переменные для каждого экземпляра с [method "
"GeometryInstance3D.set_instance_shader_parameter] или дублируйте ресурс "
"[ShaderMaterial] с помощью [method Resource.duplicate]. uniform-переменные "
"для каждого экземпляра позволяют лучше повторно использовать шейдер и, "
"следовательно, работают быстрее, поэтому их следует предпочесть дублированию "
"[ShaderMaterial], когда это возможно."

msgid "The [Shader] program used to render this material."
msgstr "Программа [Shader], использованная для рендеринга этого материала."

msgid "Abstract base class for 2D shapes used for physics collision."
msgstr ""
"Абстрактный базовый класс для двумерных фигур, используемых для физических "
"столкновений."

msgid ""
"Abstract base class for all 2D shapes, intended for use in physics.\n"
"[b]Performance:[/b] Primitive shapes, especially [CircleShape2D], are fast to "
"check collisions against. [ConvexPolygonShape2D] is slower, and "
"[ConcavePolygonShape2D] is the slowest."
msgstr ""
"Абстрактный базовый класс для всех 2D-фигур, предназначенный для "
"использования в физике.\n"
"[b]Производительность:[/b] Примитивные формы, особенно [CircleShape2D], "
"быстро проверяют столкновения. [ConvexPolygonShape2D] медленнее, а "
"[ConcavePolygonShape2D] — самый медленный."

msgid ""
"Returns [code]true[/code] if this shape is colliding with another.\n"
"This method needs the transformation matrix for this shape ([param "
"local_xform]), the shape to check collisions with ([param with_shape]), and "
"the transformation matrix of that shape ([param shape_xform])."
msgstr ""
"Возвращает [code]true[/code], если эта фигура сталкивается с другой.\n"
"Для этого метода требуется матрица преобразования для этой фигуры ([param "
"local_xform]), фигура для проверки столкновений ([param with_shape]) и "
"матрица преобразования этой фигуры ([param shape_xform])."

msgid ""
"Returns a list of contact point pairs where this shape touches another.\n"
"If there are no collisions, the returned list is empty. Otherwise, the "
"returned list contains contact points arranged in pairs, with entries "
"alternating between points on the boundary of this shape and points on the "
"boundary of [param with_shape].\n"
"A collision pair A, B can be used to calculate the collision normal with "
"[code](B - A).normalized()[/code], and the collision depth with [code](B - "
"A).length()[/code]. This information is typically used to separate shapes, "
"particularly in collision solvers.\n"
"This method needs the transformation matrix for this shape ([param "
"local_xform]), the shape to check collisions with ([param with_shape]), and "
"the transformation matrix of that shape ([param shape_xform])."
msgstr ""
"Возвращает список пар точек контакта, где эта фигура касается с другой.\n"
"Если столкновений нет, возвращаемый список пуст. В противном случае "
"возвращаемый список содержит точки контакта, организованные парами, с "
"записями, чередующимися между точками на границе этой фигуры и точками на "
"границе [param with_shape].\n"
"Пара столкновений A, и B может использоваться для вычисления нормали "
"столкновения с помощью [code](B - A).normalized()[/code] и глубины "
"столкновения с помощью [code](B - A).length()[/code]. Эта информация обычно "
"используется для разделения фигур, особенно в решение столкновений.\n"
"Для этого метода требуется матрица преобразования для этой фигуры ([param "
"local_xform]), фигура для проверки столкновений ([param with_shape]) и "
"матрица преобразования этой фигуры ([param shape_xform])."

msgid ""
"Returns whether this shape would collide with another, if a given movement "
"was applied.\n"
"This method needs the transformation matrix for this shape ([param "
"local_xform]), the movement to test on this shape ([param local_motion]), the "
"shape to check collisions with ([param with_shape]), the transformation "
"matrix of that shape ([param shape_xform]), and the movement to test onto the "
"other object ([param shape_motion])."
msgstr ""
"Возвращает, будет ли эта фигура сталкиваться с другой, если было применено "
"заданное движение.\n"
"Для этого метода требуется матрица преобразования для этой фигуры ([param "
"local_xform]), движение для проверки на этой фигуре ([param local_motion]), "
"фигура для проверки столкновений с ([param with_shape]), матрица "
"преобразования этой фигуры ([param shape_xform]) и движение для проверки на "
"другом объекте ([param shape_motion])."

msgid ""
"Returns a list of contact point pairs where this shape would touch another, "
"if a given movement was applied.\n"
"If there would be no collisions, the returned list is empty. Otherwise, the "
"returned list contains contact points arranged in pairs, with entries "
"alternating between points on the boundary of this shape and points on the "
"boundary of [param with_shape].\n"
"A collision pair A, B can be used to calculate the collision normal with "
"[code](B - A).normalized()[/code], and the collision depth with [code](B - "
"A).length()[/code]. This information is typically used to separate shapes, "
"particularly in collision solvers.\n"
"This method needs the transformation matrix for this shape ([param "
"local_xform]), the movement to test on this shape ([param local_motion]), the "
"shape to check collisions with ([param with_shape]), the transformation "
"matrix of that shape ([param shape_xform]), and the movement to test onto the "
"other object ([param shape_motion])."
msgstr ""
"Возвращает список пар точек контакта, где данная фигура соприкоснется с "
"другой, если будет применено заданное движение.\n"
"Если бы не было столкновений, возвращаемый список был бы пуст. В противном "
"случае возвращаемый список содержит точки контакта, организованные парами, с "
"записями, чередующимися между точками на границе этой формы и точками на "
"границе [param with_shape].\n"
"Пару столкновений A, B можно использовать для расчета нормали столкновения с "
"помощью [code](B - A).normalized()[/code], а глубину столкновения с помощью "
"[code](B - A).length()[/code]. Эта информация обычно используется для "
"разделения фигур, особенно в программах решения столкновений.\n"
"Для этого метода требуется матрица преобразования для этой формы ([param "
"local_xform]), движение для проверки этой формы ([param local_motion]), форма "
"для проверки столкновений с ней ([param with_shape]), матрица преобразования "
"этой формы ([param shape_xform]) и движение для проверки другого объекта "
"([param shape_motion])."

msgid ""
"Draws a solid shape onto a [CanvasItem] with the [RenderingServer] API filled "
"with the specified [param color]. The exact drawing method is specific for "
"each shape and cannot be configured."
msgstr ""
"Рисует сплошную фигуру на [CanvasItem] с API [RenderingServer], заполненную "
"указанным [param color]. Точный метод рисования специфичен для каждой фигуры "
"и не может быть настроен."

msgid "Returns a [Rect2] representing the shapes boundary."
msgstr "Возвращает [Rect2], представляющий границу фигуры."

msgid ""
"The shape's custom solver bias. Defines how much bodies react to enforce "
"contact separation when this shape is involved.\n"
"When set to [code]0[/code], the default value from [member "
"ProjectSettings.physics/2d/solver/default_contact_bias] is used."
msgstr ""
"Пользовательское смещение решателя формы. Определяет, насколько тела "
"реагируют, чтобы обеспечить разделение контактов, когда задействована эта "
"форма.\n"
"Если установлено значение [code]0[/code], используется значение по умолчанию "
"из [member ProjectSettings.physics/2d/solver/default_contact_bias]."

msgid "Abstract base class for 3D shapes used for physics collision."
msgstr ""
"Абстрактный базовый класс для трехмерных фигур, используемых для физических "
"столкновений."

msgid ""
"Abstract base class for all 3D shapes, intended for use in physics.\n"
"[b]Performance:[/b] Primitive shapes, especially [SphereShape3D], are fast to "
"check collisions against. [ConvexPolygonShape3D] and [HeightMapShape3D] are "
"slower, and [ConcavePolygonShape3D] is the slowest."
msgstr ""
"Абстрактный базовый класс для всех 3D-фигур, предназначенный для "
"использования в физике.\n"
"[b]Производительность:[/b] Примитивные формы, особенно [SphereShape3D], "
"быстро проверяются на столкновения. [ConvexPolygonShape3D] и "
"[HeightMapShape3D] медленнее, а [ConcavePolygonShape3D] — самый медленный."

msgid ""
"Returns the [ArrayMesh] used to draw the debug collision for this [Shape3D]."
msgstr ""
"Возвращает [ArrayMesh], используемый для отрисовки отладочного столкновения "
"для этого [Shape3D]."

msgid ""
"The shape's custom solver bias. Defines how much bodies react to enforce "
"contact separation when this shape is involved.\n"
"When set to [code]0[/code], the default value from [member "
"ProjectSettings.physics/3d/solver/default_contact_bias] is used."
msgstr ""
"Пользовательское смещение решателя формы. Определяет, насколько тела "
"реагируют, чтобы обеспечить разделение контактов, когда задействована эта "
"форма.\n"
"Если установлено значение [code]0[/code], используется значение по умолчанию "
"из [member ProjectSettings.physics/3d/solver/default_contact_bias]."

msgid ""
"The collision margin for the shape. This is not used in Godot Physics.\n"
"Collision margins allow collision detection to be more efficient by adding an "
"extra shell around shapes. Collision algorithms are more expensive when "
"objects overlap by more than their margin, so a higher value for margins is "
"better for performance, at the cost of accuracy around edges as it makes them "
"less sharp."
msgstr ""
"Граница столкновения для формы. Это не используется в Godot Physics.\n"
"Граница столкновения позволяет повысить эффективность обнаружения "
"столкновений, добавляя дополнительную оболочку вокруг форм. Алгоритмы "
"столкновений становятся более затратными, когда объекты перекрываются больше, "
"чем их граница, поэтому более высокое значение границ лучше для "
"производительности, за счет точности вокруг краев, поскольку это делает их "
"менее острыми."

msgid "A 2D shape that sweeps a region of space to detect [CollisionObject2D]s."
msgstr ""
"Двумерная фигура, которая прочесывает область пространства для обнаружения "
"[CollisionObject2D]."

msgid ""
"Shape casting allows to detect collision objects by sweeping its [member "
"shape] along the cast direction determined by [member target_position]. This "
"is similar to [RayCast2D], but it allows for sweeping a region of space, "
"rather than just a straight line. [ShapeCast2D] can detect multiple collision "
"objects. It is useful for things like wide laser beams or snapping a simple "
"shape to a floor.\n"
"Immediate collision overlaps can be done with the [member target_position] "
"set to [code]Vector2(0, 0)[/code] and by calling [method "
"force_shapecast_update] within the same physics frame. This helps to overcome "
"some limitations of [Area2D] when used as an instantaneous detection area, as "
"collision information isn't immediately available to it.\n"
"[b]Note:[/b] Shape casting is more computationally expensive than ray casting."
msgstr ""
"Приведение формы позволяет обнаруживать объекты столкновения, перемещая его "
"[member shape] вдоль направления приведения, определяемого [member "
"target_position]. Это похоже на [RayCast2D], но позволяет перемещать область "
"пространства, а не просто прямую линию. [ShapeCast2D] может обнаруживать "
"несколько объектов столкновения. Это полезно для таких вещей, как широкие "
"лазерные лучи или привязка простой формы к полу.\n"
"Немедленное перекрытие столкновений можно выполнить, установив [member "
"target_position] на [code]Vector2(0, 0)[/code] и вызвав [method "
"force_shapecast_update] в том же физическом кадре. Это помогает преодолеть "
"некоторые ограничения [Area2D] при использовании в качестве мгновенной "
"области обнаружения, поскольку информация о столкновении не сразу доступна "
"ему.\n"
"[b]Примечание:[/b] Приведение формы требует больших вычислительных затрат, "
"чем приведение лучей."

msgid ""
"Adds a collision exception so the shape does not report collisions with the "
"specified node."
msgstr ""
"Добавляет исключение столкновений, чтобы фигура не сообщала о столкновениях с "
"указанным узлом."

msgid ""
"Adds a collision exception so the shape does not report collisions with the "
"specified [RID]."
msgstr ""
"Добавляет исключение столкновений, чтобы фигура не сообщала о столкновениях с "
"указанным [RID]."

msgid "Removes all collision exceptions for this shape."
msgstr "Удаляет все исключения столкновений для этой фигуры."

msgid ""
"Updates the collision information for the shape immediately, without waiting "
"for the next [code]_physics_process[/code] call. Use this method, for "
"example, when the shape or its parent has changed state.\n"
"[b]Note:[/b] Setting [member enabled] to [code]true[/code] is not required "
"for this to work."
msgstr ""
"Обновляет информацию о столкновении для фигуры немедленно, не дожидаясь "
"следующего вызова [code]_physics_process[/code]. Используйте этот метод, "
"например, когда фигура или ее родительский элемент изменили состояние.\n"
"[b]Примечание:[/b] Установка [member enabled] на [code]true[/code] не "
"требуется для работы этого."

msgid ""
"Returns the fraction from this cast's origin to its [member target_position] "
"of how far the shape can move without triggering a collision, as a value "
"between [code]0.0[/code] and [code]1.0[/code]."
msgstr ""
"Возвращает долю от начала этого приведения до его [member target_position] "
"того, насколько далеко может переместиться фигура, не вызывая столкновения, в "
"виде значения между [code]0.0[/code] и [code]1.0[/code]."

msgid ""
"Returns the fraction from this cast's origin to its [member target_position] "
"of how far the shape must move to trigger a collision, as a value between "
"[code]0.0[/code] and [code]1.0[/code].\n"
"In ideal conditions this would be the same as [method "
"get_closest_collision_safe_fraction], however shape casting is calculated in "
"discrete steps, so the precise point of collision can occur between two "
"calculated positions."
msgstr ""
"Возвращает долю от начала этого приведения до его [member target_position] "
"того, как далеко должна переместиться фигура, чтобы вызвать столкновение, как "
"значение между [code]0.0[/code] и [code]1.0[/code].\n"
"В идеальных условиях это было бы то же самое, что и [method "
"get_closest_collision_safe_fraction], однако приведение фигуры вычисляется "
"дискретными шагами, поэтому точная точка столкновения может находиться между "
"двумя вычисленными позициями."

msgid ""
"Returns the collided [Object] of one of the multiple collisions at [param "
"index], or [code]null[/code] if no object is intersecting the shape (i.e. "
"[method is_colliding] returns [code]false[/code])."
msgstr ""
"Возвращает столкнувшийся [Object] одного из нескольких столкновений в [param "
"index] или [code]null[/code], если ни один объект не пересекает фигуру (т. е. "
"[method is_colliding] возвращает [code]false[/code])."

msgid ""
"Returns the [RID] of the collided object of one of the multiple collisions at "
"[param index]."
msgstr ""
"Возвращает [RID] столкнувшегося объекта одного из нескольких столкновений в "
"[param index]."

msgid ""
"Returns the shape ID of the colliding shape of one of the multiple collisions "
"at [param index], or [code]0[/code] if no object is intersecting the shape "
"(i.e. [method is_colliding] returns [code]false[/code])."
msgstr ""
"Возвращает идентификатор сталкивающейся фигуры одного из нескольких "
"столкновений в [param index] или [code]0[/code], если ни один объект не "
"пересекает фигуру (т.е. [method is_colliding] возвращает [code]false[/code])."

msgid ""
"The number of collisions detected at the point of impact. Use this to iterate "
"over multiple collisions as provided by [method get_collider], [method "
"get_collider_shape], [method get_collision_point], and [method "
"get_collision_normal] methods."
msgstr ""
"Количество столкновений, обнаруженных в точке удара. Используйте это для "
"итерации по нескольким столкновениям, как предусмотрено методами [method "
"get_collider], [method get_collider_shape], [method get_collision_point] и "
"[method get_collision_normal]."

msgid ""
"Returns the normal of one of the multiple collisions at [param index] of the "
"intersecting object."
msgstr ""
"Возвращает нормаль одного из нескольких столкновений в точке [param index] "
"пересекающегося объекта."

msgid ""
"Returns the collision point of one of the multiple collisions at [param "
"index] where the shape intersects the colliding object.\n"
"[b]Note:[/b] This point is in the [b]global[/b] coordinate system."
msgstr ""
"Возвращает точку столкновения одного из нескольких столкновений в [param "
"index], где фигура пересекает сталкивающийся объект.\n"
"[b]Примечание:[/b] Эта точка находится в [b]глобальной[/b] системе координат."

msgid ""
"Returns whether any object is intersecting with the shape's vector "
"(considering the vector length)."
msgstr ""
"Возвращает, пересекается ли какой-либо объект с вектором фигуры (с учетом "
"длины вектора)."

msgid ""
"Removes a collision exception so the shape does report collisions with the "
"specified node."
msgstr ""
"Удаляет исключение столкновения, чтобы фигура не сообщала о столкновениях с "
"указанным узлом."

msgid ""
"Removes a collision exception so the shape does report collisions with the "
"specified [RID]."
msgstr ""
"Удаляет исключение столкновения, чтобы фигура не сообщала о столкновениях с "
"указанным [RID]."

msgid ""
"The shape's collision mask. Only objects in at least one collision layer "
"enabled in the mask will be detected. See [url=$DOCS_URL/tutorials/physics/"
"physics_introduction.html#collision-layers-and-masks]Collision layers and "
"masks[/url] in the documentation for more information."
msgstr ""
"Маска столкновения формы. Будут обнаружены только те объекты, находящиеся "
"хотя бы в одном из слое столкновения, включенном в маске. Для получения "
"дополнительной информации см. [url=$DOCS_URL/tutorials/physics/"
"physics_introduction.html#collision-layers-and-masks]Слои и маски "
"столкновения[/url] в документации."

msgid ""
"Returns the complete collision information from the collision sweep. The data "
"returned is the same as in the [method "
"PhysicsDirectSpaceState2D.get_rest_info] method."
msgstr ""
"Возвращает полную информацию о столкновениях из столкновительного развертки. "
"Возвращаемые данные такие же, как в методе [method "
"PhysicsDirectSpaceState2D.get_rest_info]."

msgid ""
"If [code]true[/code], the parent node will be excluded from collision "
"detection."
msgstr ""
"Если [code]true[/code], родительский узел будет исключен из обнаружения "
"столкновений."

msgid ""
"The collision margin for the shape. A larger margin helps detecting "
"collisions more consistently, at the cost of precision."
msgstr ""
"Запас на столкновение для формы. Больший запас помогает обнаруживать "
"столкновения более последовательно, за счет точности."

msgid ""
"The number of intersections can be limited with this parameter, to reduce the "
"processing time."
msgstr ""
"С помощью этого параметра можно ограничить количество пересечений, чтобы "
"сократить время обработки."

msgid "The shape to be used for collision queries."
msgstr "Форма, которая будет использоваться для запросов на столкновение."

msgid ""
"The shape's destination point, relative to this node's [member "
"Node2D.position]."
msgstr ""
"Точка назначения фигуры относительно [member Node2D.position] этого узла."

msgid "A 3D shape that sweeps a region of space to detect [CollisionObject3D]s."
msgstr ""
"Трехмерная фигура, охватывающая область пространства для обнаружения "
"[CollisionObject3D]-ов."

msgid ""
"Shape casting allows to detect collision objects by sweeping its [member "
"shape] along the cast direction determined by [member target_position]. This "
"is similar to [RayCast3D], but it allows for sweeping a region of space, "
"rather than just a straight line. [ShapeCast3D] can detect multiple collision "
"objects. It is useful for things like wide laser beams or snapping a simple "
"shape to a floor.\n"
"Immediate collision overlaps can be done with the [member target_position] "
"set to [code]Vector3(0, 0, 0)[/code] and by calling [method "
"force_shapecast_update] within the same physics frame. This helps to overcome "
"some limitations of [Area3D] when used as an instantaneous detection area, as "
"collision information isn't immediately available to it.\n"
"[b]Note:[/b] Shape casting is more computationally expensive than ray casting."
msgstr ""
"Приведение формы позволяет обнаруживать объекты столкновения, перемещая его "
"[member shape] вдоль направления приведения, определяемого [member "
"target_position]. Это похоже на [RayCast3D], но позволяет перемещать область "
"пространства, а не просто прямую линию. [ShapeCast3D] может обнаруживать "
"несколько объектов столкновения. Это полезно для таких вещей, как широкие "
"лазерные лучи или привязка простой формы к полу.\n"
"Немедленное перекрытие столкновений можно выполнить, установив [member "
"target_position] на [code]Vector3(0, 0, 0)[/code] и вызвав [method "
"force_shapecast_update] в том же физическом кадре. Это помогает преодолеть "
"некоторые ограничения [Area3D] при использовании в качестве мгновенной "
"области обнаружения, поскольку информация о столкновении не сразу доступна "
"ему.\n"
"[b]Примечание:[/b] Приведение формы требует больших вычислительных затрат, "
"чем приведение лучей."

msgid ""
"Returns the complete collision information from the collision sweep. The data "
"returned is the same as in the [method "
"PhysicsDirectSpaceState3D.get_rest_info] method."
msgstr ""
"Возвращает полную информацию о столкновении из столкновительного развертки. "
"Возвращаемые данные такие же, как в методе [method "
"PhysicsDirectSpaceState3D.get_rest_info]."

msgid ""
"The custom color to use to draw the shape in the editor and at run-time if "
"[b]Visible Collision Shapes[/b] is enabled in the [b]Debug[/b] menu. This "
"color will be highlighted at run-time if the [ShapeCast3D] is colliding with "
"something.\n"
"If set to [code]Color(0.0, 0.0, 0.0)[/code] (by default), the color set in "
"[member ProjectSettings.debug/shapes/collision/shape_color] is used."
msgstr ""
"Пользовательский цвет для рисования фигуры в редакторе и во время выполнения, "
"если [b]Видимые формы столкновения[/b] включены в меню [b]Отладка[/b]. Этот "
"цвет будет выделен во время выполнения, если [ShapeCast3D] сталкивается с чем-"
"то.\n"
"Если установлено значение [code]Цвет(0.0, 0.0, 0.0)[/code] (по умолчанию), "
"используется цвет, заданный в [member ProjectSettings.debug/shapes/collision/"
"shape_color]."

msgid ""
"The shape's destination point, relative to this node's [member "
"Node3D.position]."
msgstr ""
"Точка назначения фигуры относительно [member Node3D.position] этого узла."

msgid "A shortcut for binding input."
msgstr "Сочетание клавиш для привязки ввода."

msgid ""
"Shortcuts (also known as hotkeys) are containers of [InputEvent] resources. "
"They are commonly used to interact with a [Control] element from an "
"[InputEvent].\n"
"One shortcut can contain multiple [InputEvent] resources, making it possible "
"to trigger one action with multiple different inputs.\n"
"[b]Example:[/b] Capture the [kbd]Ctrl + S[/kbd] shortcut using a [Shortcut] "
"resource:\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"\n"
"var save_shortcut = Shortcut.new()\n"
"func _ready():\n"
"\tvar key_event = InputEventKey.new()\n"
"\tkey_event.keycode = KEY_S\n"
"\tkey_event.ctrl_pressed = true\n"
"\tkey_event.command_or_control_autoremap = true # Swaps Ctrl for Command on "
"Mac.\n"
"\tsave_shortcut.events = [key_event]\n"
"\n"
"func _input(event):\n"
"\tif save_shortcut.matches_event(event) and event.is_pressed() and not "
"event.is_echo():\n"
"\t\tprint(\"Save shortcut pressed!\")\n"
"\t\tget_viewport().set_input_as_handled()\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate readonly Shortcut _saveShortcut = new Shortcut();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tInputEventKey keyEvent = new InputEventKey\n"
"\t\t{\n"
"\t\t\tKeycode = Key.S,\n"
"\t\t\tCtrlPressed = true,\n"
"\t\t\tCommandOrControlAutoremap = true, // Swaps Ctrl for Command on Mac.\n"
"\t\t};\n"
"\n"
"\t\t_saveShortcut.Events = [keyEvent];\n"
"\t}\n"
"\n"
"\tpublic override void _Input(InputEvent @event)\n"
"\t{\n"
"\t\tif (@event is InputEventKey keyEvent &&\n"
"\t\t\t_saveShortcut.MatchesEvent(@event) &&\n"
"\t\t\tkeyEvent.Pressed && !keyEvent.Echo)\n"
"\t\t{\n"
"\t\t\tGD.Print(\"Save shortcut pressed!\");\n"
"\t\t\tGetViewport().SetInputAsHandled();\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Сочетания клавиш (также известные как горячие клавиши) — это контейнеры "
"ресурсов [InputEvent]. Они обычно используются для взаимодействия с элементом "
"[Control] из [InputEvent].\n"
"Один ярлык может содержать несколько ресурсов [InputEvent], что позволяет "
"запускать одно действие с несколькими различными входами.\n"
"[b]Пример:[/b] Захватите сочетание клавиш [kbd]Ctrl + S[/kbd] с помощью "
"ресурса [Shortcut]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"\n"
"var save_shortcut = Shortcut.new()\n"
"func _ready():\n"
"\tvar key_event = InputEventKey.new()\n"
"\tkey_event.keycode = KEY_S\n"
"\tkey_event.ctrl_pressed = true\n"
"\tkey_event.command_or_control_autoremap = true # Заменяет Ctrl на Command на "
"Mac.\n"
"\tsave_shortcut.events = [key_event]\n"
"\n"
"func _input(event):\n"
"\tif save_shortcut.matches_event(event) and event.is_pressed() and not "
"event.is_echo():\n"
"\t\tprint(\"Save shortcut pressed!\")\n"
"\t\tget_viewport().set_input_as_handled()\n"
"[/gdscript]\n"
"[csharp]\n"
"using Godot;\n"
"\n"
"public partial class MyNode : Node\n"
"{\n"
"\tprivate readonly Shortcut _saveShortcut = new Shortcut();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\tInputEventKey keyEvent = new InputEventKey\n"
"\t\t{\n"
"\t\t\tKeycode = Key.S,\n"
"\t\t\tCtrlPressed = true,\n"
"\t\t\tCommandOrControlAutoremap = true, // Заменяет Ctrl на Command на Mac.\n"
"\t\t};\n"
"\n"
"\t\t_saveShortcut.Events = [keyEvent];\n"
"\t}\n"
"\n"
"\tpublic override void _Input(InputEvent @event)\n"
"\t{\n"
"\t\tif (@event is InputEventKey keyEvent &&\n"
"\t\t\t_saveShortcut.MatchesEvent(@event) &&\n"
"\t\t\tkeyEvent.Pressed && !keyEvent.Echo)\n"
"\t\t{\n"
"\t\t\tGD.Print(\"Save shortcut pressed!\");\n"
"\t\t\tGetViewport().SetInputAsHandled();\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns the shortcut's first valid [InputEvent] as a [String]."
msgstr ""
"Возвращает первое допустимое [InputEvent] сочетания клавиш в виде [String]."

msgid "Returns whether [member events] contains an [InputEvent] which is valid."
msgstr "Возвращает, содержит ли [member events] допустимое [InputEvent]."

msgid ""
"Returns whether any [InputEvent] in [member events] equals [param event]. "
"This uses [method InputEvent.is_match] to compare events."
msgstr ""
"Возвращает, равен ли [InputEvent] в [member events] этому [param event]. Для "
"сравнения событий используется [method InputEvent.is_match]."

msgid ""
"The shortcut's [InputEvent] array.\n"
"Generally the [InputEvent] used is an [InputEventKey], though it can be any "
"[InputEvent], including an [InputEventAction]."
msgstr ""
"Массив [InputEvent] ярлыка.\n"
"Обычно используемый [InputEvent] — это [InputEventKey], хотя это может быть "
"любой [InputEvent], включая [InputEventAction]."

msgid "A built-in type representing a signal of an [Object]."
msgstr "Встроенный тип, представляющий сигнал [Object]."

msgid ""
"[Signal] is a built-in [Variant] type that represents a signal of an [Object] "
"instance. Like all [Variant] types, it can be stored in variables and passed "
"to functions. Signals allow all connected [Callable]s (and by extension their "
"respective objects) to listen and react to events, without directly "
"referencing one another. This keeps the code flexible and easier to manage. "
"You can check whether an [Object] has a given signal name using [method "
"Object.has_signal].\n"
"In GDScript, signals can be declared with the [code]signal[/code] keyword. In "
"C#, you may use the [code][Signal][/code] attribute on a delegate.\n"
"[codeblocks]\n"
"[gdscript]\n"
"signal attacked\n"
"\n"
"# Additional arguments may be declared.\n"
"# These arguments must be passed when the signal is emitted.\n"
"signal item_dropped(item_name, amount)\n"
"[/gdscript]\n"
"[csharp]\n"
"[Signal]\n"
"delegate void AttackedEventHandler();\n"
"\n"
"// Additional arguments may be declared.\n"
"// These arguments must be passed when the signal is emitted.\n"
"[Signal]\n"
"delegate void ItemDroppedEventHandler(string itemName, int amount);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Connecting signals is one of the most common operations in Godot and the API "
"gives many options to do so, which are described further down. The code block "
"below shows the recommended approach.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar button = Button.new()\n"
"\t# `button_down` here is a Signal Variant type. We therefore call the "
"Signal.connect() method, not Object.connect().\n"
"\t# See discussion below for a more in-depth overview of the API.\n"
"\tbutton.button_down.connect(_on_button_down)\n"
"\n"
"\t# This assumes that a `Player` class exists, which defines a `hit` signal.\n"
"\tvar player = Player.new()\n"
"\t# We use Signal.connect() again, and we also use the Callable.bind() "
"method,\n"
"\t# which returns a new Callable with the parameter binds.\n"
"\tplayer.hit.connect(_on_player_hit.bind(\"sword\", 100))\n"
"\n"
"func _on_button_down():\n"
"\tprint(\"Button down!\")\n"
"\n"
"func _on_player_hit(weapon_type, damage):\n"
"\tprint(\"Hit with weapon %s for %d damage.\" % [weapon_type, damage])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar button = new Button();\n"
"\t// C# supports passing signals as events, so we can use this idiomatic "
"construct:\n"
"\tbutton.ButtonDown += OnButtonDown;\n"
"\n"
"\t// This assumes that a `Player` class exists, which defines a `Hit` "
"signal.\n"
"\tvar player = new Player();\n"
"\t// We can use lambdas when we need to bind additional parameters.\n"
"\tplayer.Hit += () => OnPlayerHit(\"sword\", 100);\n"
"}\n"
"\n"
"private void OnButtonDown()\n"
"{\n"
"\tGD.Print(\"Button down!\");\n"
"}\n"
"\n"
"private void OnPlayerHit(string weaponType, int damage)\n"
"{\n"
"\tGD.Print($\"Hit with weapon {weaponType} for {damage} damage.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b][code skip-lint]Object.connect()[/code] or [code skip-lint]Signal.connect()"
"[/code]?[/b]\n"
"As seen above, the recommended method to connect signals is not [method "
"Object.connect]. The code block below shows the four options for connecting "
"signals, using either this legacy method or the recommended [method "
"Signal.connect], and using either an implicit [Callable] or a manually "
"defined one.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar button = Button.new()\n"
"\t# Option 1: Object.connect() with an implicit Callable for the defined "
"function.\n"
"\tbutton.connect(\"button_down\", _on_button_down)\n"
"\t# Option 2: Object.connect() with a constructed Callable using a target "
"object and method name.\n"
"\tbutton.connect(\"button_down\", Callable(self, \"_on_button_down\"))\n"
"\t# Option 3: Signal.connect() with an implicit Callable for the defined "
"function.\n"
"\tbutton.button_down.connect(_on_button_down)\n"
"\t# Option 4: Signal.connect() with a constructed Callable using a target "
"object and method name.\n"
"\tbutton.button_down.connect(Callable(self, \"_on_button_down\"))\n"
"\n"
"func _on_button_down():\n"
"\tprint(\"Button down!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar button = new Button();\n"
"\t// Option 1: In C#, we can use signals as events and connect with this "
"idiomatic syntax:\n"
"\tbutton.ButtonDown += OnButtonDown;\n"
"\t// Option 2: GodotObject.Connect() with a constructed Callable from a "
"method group.\n"
"\tbutton.Connect(Button.SignalName.ButtonDown, Callable.From(OnButtonDown));\n"
"\t// Option 3: GodotObject.Connect() with a constructed Callable using a "
"target object and method name.\n"
"\tbutton.Connect(Button.SignalName.ButtonDown, new Callable(this, "
"MethodName.OnButtonDown));\n"
"}\n"
"\n"
"private void OnButtonDown()\n"
"{\n"
"\tGD.Print(\"Button down!\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"While all options have the same outcome ([code]button[/code]'s [signal "
"BaseButton.button_down] signal will be connected to [code]_on_button_down[/"
"code]), [b]option 3[/b] offers the best validation: it will print a compile-"
"time error if either the [code]button_down[/code] [Signal] or the "
"[code]_on_button_down[/code] [Callable] are not defined. On the other hand, "
"[b]option 2[/b] only relies on string names and will only be able to validate "
"either names at runtime: it will generate an error at runtime if [code]"
"\"button_down\"[/code] is not a signal, or if [code]\"_on_button_down\"[/"
"code] is not a method in the object [code]self[/code]. The main reason for "
"using options 1, 2, or 4 would be if you actually need to use strings (e.g. "
"to connect signals programmatically based on strings read from a "
"configuration file). Otherwise, option 3 is the recommended (and fastest) "
"method.\n"
"[b]Binding and passing parameters:[/b]\n"
"The syntax to bind parameters is through [method Callable.bind], which "
"returns a copy of the [Callable] with its parameters bound.\n"
"When calling [method emit] or [method Object.emit_signal], the signal "
"parameters can be also passed. The examples below show the relationship "
"between these signal parameters and bound parameters.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# This assumes that a `Player` class exists, which defines a `hit` signal.\n"
"\tvar player = Player.new()\n"
"\t# Using Callable.bind().\n"
"\tplayer.hit.connect(_on_player_hit.bind(\"sword\", 100))\n"
"\n"
"\t# Parameters added when emitting the signal are passed first.\n"
"\tplayer.hit.emit(\"Dark lord\", 5)\n"
"\n"
"# We pass two arguments when emitting (`hit_by`, `level`),\n"
"# and bind two more arguments when connecting (`weapon_type`, `damage`).\n"
"func _on_player_hit(hit_by, level, weapon_type, damage):\n"
"\tprint(\"Hit by %s (level %d) with weapon %s for %d damage.\" % [hit_by, "
"level, weapon_type, damage])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// This assumes that a `Player` class exists, which defines a `Hit` "
"signal.\n"
"\tvar player = new Player();\n"
"\t// Using lambda expressions that create a closure that captures the "
"additional parameters.\n"
"\t// The lambda only receives the parameters defined by the signal's "
"delegate.\n"
"\tplayer.Hit += (hitBy, level) => OnPlayerHit(hitBy, level, \"sword\", 100);\n"
"\n"
"\t// Parameters added when emitting the signal are passed first.\n"
"\tplayer.EmitSignal(SignalName.Hit, \"Dark lord\", 5);\n"
"}\n"
"\n"
"// We pass two arguments when emitting (`hit_by`, `level`),\n"
"// and bind two more arguments when connecting (`weapon_type`, `damage`).\n"
"private void OnPlayerHit(string hitBy, int level, string weaponType, int "
"damage)\n"
"{\n"
"\tGD.Print($\"Hit by {hitBy} (level {level}) with weapon {weaponType} for "
"{damage} damage.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[Signal] — это встроенный тип [Variant], который представляет сигнал "
"экземпляра [Object]. Как и все типы [Variant], он может храниться в "
"переменных и передаваться в функции. Сигналы позволяют всем подключенным "
"[Callable] (и соответственно, их соответствующим объектам) прослушивать и "
"реагировать на события, не ссылаясь напрямую друг на друга. Это сохраняет код "
"гибким и простым в управлении. Вы можете проверить, имеет ли [Object] "
"заданное имя сигнала, используя [method Object.has_signal].\n"
"В GDScript сигналы можно объявлять с помощью ключевого слова [code]signal[/"
"code]. В C# вы можете использовать атрибут [code][Signal][/code] для "
"делегата.\n"
"[codeblocks]\n"
"[gdscript]\n"
"signal attacked\n"
"\n"
"# Могут быть объявлены дополнительные аргументы.\n"
"# Эти аргументы должны быть переданы при отправке сигнала.\n"
"signal item_dropped(item_name, amount)\n"
"[/gdscript]\n"
"[csharp]\n"
"[Signal]\n"
"delegate void AttackedEventHandler();\n"
"\n"
"// Могут быть объявлены дополнительные аргументы.\n"
"// Эти аргументы должны быть переданы при отправке сигнала.\n"
"[Signal]\n"
"delegate void ItemDroppedEventHandler(string itemName, int amount);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Подключение сигналов — одна из самых распространенных операций в Godot, и API "
"предоставляет множество вариантов для этого, которые описаны ниже. Блок кода "
"ниже показывает рекомендуемый подход.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar button = Button.new()\n"
"\t# `button_down` здесь — тип Signal Variant. Поэтому мы вызываем метод "
"Signal.connect(), а не Object.connect().\n"
"\t# Более подробный обзор API см. в обсуждении ниже.\n"
"\tbutton.button_down.connect(_on_button_down)\n"
"\n"
"\t# Это предполагает, что существует класс `Player`, который определяет "
"сигнал `hit`.\n"
"\tvar player = Player.new()\n"
"\t# Мы снова используем Signal.connect(), а также метод Callable.bind(),\n"
"\t# который возвращает новый Callable с параметром binds.\n"
"\tplayer.hit.connect(_on_player_hit.bind(\"sword\", 100))\n"
"\n"
"func _on_button_down():\n"
"\tprint(\"Кнопка нажата!\")\n"
"\n"
"func _on_player_hit(weapon_type, damage):\n"
"\tprint(\"Hit with weapon %s for %d damage.\" % [weapon_type, damage])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar button = new Button();\n"
"\t// C# поддерживает передачу сигналов как событий, поэтому мы можем "
"использовать следующую идиоматическую конструкцию:\n"
"\tbutton.ButtonDown += OnButtonDown;\n"
"\n"
"\t// Это предполагает, что существует класс `Player`, который определяет "
"сигнал `Hit`.\n"
"\tvar player = new Player();\n"
"\t// Мы можем использовать лямбда-выражения, когда нам нужно привязать "
"дополнительные параметры.\n"
"\tplayer.Hit += () => OnPlayerHit(\"sword\", 100);\n"
"}\n"
"\n"
"private void OnButtonDown()\n"
"{\n"
"\tGD.Print(\"Кнопка нажата!\");\n"
"}\n"
"\n"
"private void OnPlayerHit(string weaponType, int damage)\n"
"{\n"
"\tGD.Print($\"Hit with weapon {weaponType} for {damage} damage.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b][code skip-lint]Object.connect()[/code] или [code skip-"
"lint]Signal.connect()[/code]?[/b]\n"
"Как видно выше, рекомендуемый метод для подключения сигналов — не [method "
"Object.connect]. В блоке кода ниже показаны четыре варианта подключения "
"сигналов с использованием либо этого устаревшего метода, либо рекомендуемого "
"[method Signal.connect], а также с использованием либо неявного [Callable], "
"либо определенного вручную.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar button = Button.new()\n"
"\t# Вариант 1: Object.connect() с неявным вызовом для определенной функции.\n"
"\tbutton.connect(\"button_down\", _on_button_down)\n"
"\t# Вариант 2: Object.connect() с созданным Callable, использующим целевое "
"имя объекта и метода.\n"
"\tbutton.connect(\"button_down\", Callable(self, \"_on_button_down\"))\n"
"\t# Вариант 3: Signal.connect() с неявным вызовом для определенной функции.\n"
"\tbutton.button_down.connect(_on_button_down)\n"
"\t# Вариант 4: Signal.connect() с созданным Callable, использующим целевое "
"имя объекта и метода.\n"
"\tbutton.button_down.connect(Callable(self, \"_on_button_down\"))\n"
"\n"
"func _on_button_down():\n"
"\tprint(\"Кнопка нажата!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar button = new Button();\n"
"\t// Вариант 1: В C# мы можем использовать сигналы как события и подключаться "
"с помощью следующего идиоматического синтаксиса:\n"
"\tbutton.ButtonDown += OnButtonDown;\n"
"\t// Вариант 2: GodotObject.Connect() с созданным Callable из группы "
"методов.\n"
"\tbutton.Connect(Button.SignalName.ButtonDown, Callable.From(OnButtonDown));\n"
"\t// Вариант 3: GodotObject.Connect() с созданным Callable, использующим "
"целевое имя объекта и метода.\n"
"\tbutton.Connect(Button.SignalName.ButtonDown, new Callable(this, "
"MethodName.OnButtonDown));\n"
"}\n"
"\n"
"private void OnButtonDown()\n"
"{\n"
"\tGD.Print(\"Кнопка нажата!\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Хотя все варианты имеют одинаковый результат ([signal BaseButton.button_down] "
"[code]button[/code] будет подключен к [code]_on_button_down[/code]), "
"[b]вариант 3[/b] предлагает лучшую проверку: он выведет ошибку времени "
"компиляции, если [code]button_down[/code] [Signal] или [code]_on_button_down[/"
"code] [Callable] не определены. С другой стороны, [b]вариант 2[/b] полагается "
"только на имена строк и сможет проверить только одно из имен во время "
"выполнения: он выдаст ошибку во время выполнения, если [code]\"button_down\"[/"
"code] не является сигналом или если [code]\"_on_button_down\"[/code] не "
"является методом в объекте [code]self[/code]. Основная причина использования "
"опций 1, 2 или 4 — если вам действительно нужно использовать строки "
"(например, для программного подключения сигналов на основе строк, считанных "
"из файла конфигурации). В противном случае, опция 3 является рекомендуемым (и "
"самым быстрым) методом.\n"
"[b]Связывание и передача параметров:[/b]\n"
"Синтаксис для связывания параметров осуществляется через [method "
"Callable.bind], который возвращает копию [Callable] с привязанными "
"параметрами.\n"
"При вызове [method emit] или [method Object.emit_signal] также могут быть "
"переданы параметры сигнала. В примерах ниже показана связь между этими "
"параметрами сигнала и привязанными параметрами.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t# Это предполагает, что существует класс `Player`, который определяет "
"сигнал `hit`.\n"
"\tvar player = Player.new()\n"
"\t# Использование Callable.bind().\n"
"\tplayer.hit.connect(_on_player_hit.bind(\"sword\", 100))\n"
"\n"
"\t# Параметры, добавленные при передаче сигнала, передаются в первую "
"очередь.\n"
"\tplayer.hit.emit(\"Dark lord\", 5)\n"
"\n"
"# При отправке мы передаем два аргумента (`hit_by`, `level`),\n"
"# и при подключении привязать еще два аргумента (`weapon_type`, `damage`).\n"
"func _on_player_hit(hit_by, level, weapon_type, damage):\n"
"\tprint(\"Hit by %s (level %d) with weapon %s for %d damage.\" % [hit_by, "
"level, weapon_type, damage])\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\t// Это предполагает, что существует класс `Player`, который определяет "
"сигнал `Hit`.\n"
"\tvar player = new Player();\n"
"\t// Использование лямбда-выражений, создающих замыкание, которое захватывает "
"дополнительные параметры.\n"
"\t// Лямбда получает только параметры, определенные делегатом сигнала.\n"
"\tplayer.Hit += (hitBy, level) => OnPlayerHit(hitBy, level, \"sword\", 100);\n"
"\n"
"\t// Параметры, добавленные при передаче сигнала, передаются в первую "
"очередь.\n"
"\tplayer.EmitSignal(SignalName.Hit, \"Dark lord\", 5);\n"
"}\n"
"\n"
"// При отправке мы передаем два аргумента (`hit_by`, `level`),\n"
"// и при подключении привязать еще два аргумента (`weapon_type`, `damage`).\n"
"private void OnPlayerHit(string hitBy, int level, string weaponType, int "
"damage)\n"
"{\n"
"\tGD.Print($\"Hit by {hitBy} (level {level}) with weapon {weaponType} for "
"{damage} damage.\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Using Signals"
msgstr "Использование сигналов"

msgid "GDScript Basics"
msgstr "Основы GDScript"

msgid "Constructs an empty [Signal] with no object nor signal name bound."
msgstr "Создает пустой [Signal] без привязанного имени объекта или сигнала."

msgid "Constructs a [Signal] as a copy of the given [Signal]."
msgstr "Создает [Signal] как копию заданного [Signal]."

msgid ""
"Creates a [Signal] object referencing a signal named [param signal] in the "
"specified [param object]."
msgstr ""
"Создает объект [Signal], ссылающийся на сигнал с именем [param signal] в "
"указанном [param object]."

msgid ""
"Connects this signal to the specified [param callable]. Optional [param "
"flags] can be also added to configure the connection's behavior (see [enum "
"Object.ConnectFlags] constants). You can provide additional arguments to the "
"connected [param callable] by using [method Callable.bind].\n"
"A signal can only be connected once to the same [Callable]. If the signal is "
"already connected, this method returns [constant ERR_INVALID_PARAMETER] and "
"generates an error, unless the signal is connected with [constant "
"Object.CONNECT_REFERENCE_COUNTED]. To prevent this, use [method is_connected] "
"first to check for existing connections.\n"
"[codeblock]\n"
"for button in $Buttons.get_children():\n"
"\tbutton.pressed.connect(_on_pressed.bind(button))\n"
"\n"
"func _on_pressed(button):\n"
"\tprint(button.name, \" was pressed\")\n"
"[/codeblock]\n"
"[b]Note:[/b] If the [param callable]'s object is freed, the connection will "
"be lost."
msgstr ""
"Соединяет этот сигнал с указанным [param callable]. Дополнительно можно "
"указать [param flags] для настройки поведения соединения (см. константы [enum "
"Object.ConnectFlags]). Вы можете передать дополнительные аргументы в "
"связанный [param callable], используя [method Callable.bind]. \n"
"Сигнал может быть соединён с одним и тем же [Callable] только один раз. Если "
"сигнал уже соединён, метод вернёт [constant ERR_INVALID_PARAMETER] и "
"сгенерирует ошибку, за исключением случая, когда сигнал соединён с флагом "
"[constant Object.CONNECT_REFERENCE_COUNTED]. Чтобы избежать этого, сначала "
"используйте [method is_connected] для проверки существующих соединений. \n"
"[codeblock] \n"
"for button in $Buttons.get_children(): \n"
"\tbutton.pressed.connect(_on_pressed.bind(button)) \n"
"\n"
"func _on_pressed(button): \n"
"\tprint(button.name, \" was pressed\") \n"
"[/codeblock] \n"
"[b]Примечание:[/b] Если объект [param callable] освобождён, соединение будет "
"потеряно."

msgid ""
"Disconnects this signal from the specified [Callable]. If the connection does "
"not exist, generates an error. Use [method is_connected] to make sure that "
"the connection exists."
msgstr ""
"Отключает этот сигнал от указанного [Callable]. Если соединение не "
"существует, генерирует ошибку. Используйте [method is_connected], чтобы "
"убедиться, что соединение существует."

msgid ""
"Emits this signal. All [Callable]s connected to this signal will be "
"triggered. This method supports a variable number of arguments, so parameters "
"can be passed as a comma separated list."
msgstr ""
"Выдает этот сигнал. Все [Callable], подключенные к этому сигналу, будут "
"активированы. Этот метод поддерживает переменное количество аргументов, "
"поэтому параметры можно передавать в виде списка, разделенного запятыми."

msgid ""
"Returns an [Array] of connections for this signal. Each connection is "
"represented as a [Dictionary] that contains three entries:\n"
"- [code]signal[/code] is a reference to this signal;\n"
"- [code]callable[/code] is a reference to the connected [Callable];\n"
"- [code]flags[/code] is a combination of [enum Object.ConnectFlags]."
msgstr ""
"Возвращает [Array] соединений для этого сигнала. Каждое соединение "
"представлено как [Dictionary], который содержит три записи:\n"
"- [code]signal[/code] — ссылка на этот сигнал;\n"
"- [code]callable[/code] — ссылка на подключенный [Callable];\n"
"- [code]flags[/code] — комбинация [enum Object.ConnectFlags]."

msgid "Returns the name of this signal."
msgstr "Возвращает имя этого сигнала."

msgid "Returns the object emitting this signal."
msgstr "Возвращает объект, испускающий этот сигнал."

msgid ""
"Returns the ID of the object emitting this signal (see [method "
"Object.get_instance_id])."
msgstr ""
"Возвращает идентификатор объекта, испускающего этот сигнал (см. [method "
"Object.get_instance_id])."

msgid "Returns [code]true[/code] if any [Callable] is connected to this signal."
msgstr ""
"Возвращает [code]true[/code], если к этому сигналу подключен какой-либо "
"[Callable]."

msgid ""
"Returns [code]true[/code] if the specified [Callable] is connected to this "
"signal."
msgstr ""
"Возвращает [code]true[/code], если указанный [Callable] подключен к этому "
"сигналу."

msgid ""
"Returns [code]true[/code] if this [Signal] has no object and the signal name "
"is empty. Equivalent to [code]signal == Signal()[/code]."
msgstr ""
"Возвращает [code]true[/code], если этот [Signal] не имеет объекта и имя "
"сигнала пустое. Эквивалентно [code]signal == Signal()[/code]."

msgid ""
"Returns [code]true[/code] if the signals do not share the same object and "
"name."
msgstr ""
"Возвращает [code]true[/code], если сигналы не имеют одного и того же объекта "
"и имени."

msgid ""
"Returns [code]true[/code] if both signals share the same object and name."
msgstr ""
"Возвращает [code]true[/code], если оба сигнала имеют один и тот же объект и "
"имя."

msgid ""
"The parent of a hierarchy of [Bone2D]s, used to create a 2D skeletal "
"animation."
msgstr ""
"Родительский элемент иерархии [Bone2D], используемый для создания 2D-"
"скелетной анимации."

msgid ""
"[Skeleton2D] parents a hierarchy of [Bone2D] nodes. It holds a reference to "
"each [Bone2D]'s rest pose and acts as a single point of access to its bones.\n"
"To set up different types of inverse kinematics for the given Skeleton2D, a "
"[SkeletonModificationStack2D] should be created. The inverse kinematics be "
"applied by increasing [member SkeletonModificationStack2D.modification_count] "
"and creating the desired number of modifications."
msgstr ""
"[Skeleton2D] является родителем иерархии узлов [Bone2D]. Он содержит ссылку "
"на позу покоя каждого [Bone2D] и действует как единая точка доступа к его "
"костям.\n"
"Чтобы настроить различные типы обратной кинематики для данного Skeleton2D, "
"следует создать [SkeletonModificationStack2D]. Обратная кинематика "
"применяется путем увеличения [member "
"SkeletonModificationStack2D.modification_count] и создания желаемого "
"количества модификаций."

msgid "2D skeletons"
msgstr "2D-скелеты"

msgid ""
"Executes all the modifications on the [SkeletonModificationStack2D], if the "
"Skeleton2D has one assigned."
msgstr ""
"Выполняет все изменения в [SkeletonModificationStack2D], если они назначены "
"Skeleton2D."

msgid ""
"Returns a [Bone2D] from the node hierarchy parented by Skeleton2D. The object "
"to return is identified by the parameter [param idx]. Bones are indexed by "
"descending the node hierarchy from top to bottom, adding the children of each "
"branch before moving to the next sibling."
msgstr ""
"Возвращает [Bone2D] из иерархии узлов, родительской для Skeleton2D. "
"Возвращаемый объект идентифицируется параметром [param idx]. Кости "
"индексируются путем спуска по иерархии узлов сверху вниз, добавляя потомков "
"каждой ветви перед переходом к следующему сестринскому элементу."

msgid ""
"Returns the number of [Bone2D] nodes in the node hierarchy parented by "
"Skeleton2D."
msgstr ""
"Возвращает количество узлов [Bone2D] в иерархии узлов, являющихся "
"родительскими для Skeleton2D."

msgid "Returns the local pose override transform for [param bone_idx]."
msgstr ""
"Возвращает локальное преобразование переопределения позы для [param bone_idx]."

msgid ""
"Returns the [SkeletonModificationStack2D] attached to this skeleton, if one "
"exists."
msgstr ""
"Возвращает [SkeletonModificationStack2D], прикрепленный к данному скелету, "
"если таковой существует."

msgid "Returns the [RID] of a Skeleton2D instance."
msgstr "Возвращает [RID] экземпляра Skeleton2D."

msgid ""
"Sets the local pose transform, [param override_pose], for the bone at [param "
"bone_idx].\n"
"[param strength] is the interpolation strength that will be used when "
"applying the pose, and [param persistent] determines if the applied pose will "
"remain.\n"
"[b]Note:[/b] The pose transform needs to be a local transform relative to the "
"[Bone2D] node at [param bone_idx]!"
msgstr ""
"Устанавливает локальное преобразование позы, [param override_pose], для кости "
"в [param bone_idx].\n"
"[param strength] — это сила интерполяции, которая будет использоваться при "
"применении позы, а [param persistent] определяет, останется ли примененная "
"поза.\n"
"[b]Примечание:[/b] Преобразование позы должно быть локальным преобразованием "
"относительно узла [Bone2D] в [param bone_idx]!"

msgid "Sets the [SkeletonModificationStack2D] attached to this skeleton."
msgstr ""
"Устанавливает [SkeletonModificationStack2D], прикрепленный к этому скелету."

msgid ""
"Emitted when the [Bone2D] setup attached to this skeletons changes. This is "
"primarily used internally within the skeleton."
msgstr ""
"Вызывается при изменении настройки [Bone2D], прикрепленной к этим скелетам. В "
"основном используется внутри скелета."

msgid ""
"A node containing a bone hierarchy, used to create a 3D skeletal animation."
msgstr ""
"Узел, содержащий иерархию костей, используемый для создания трехмерной "
"скелетной анимации."

msgid ""
"[Skeleton3D] provides an interface for managing a hierarchy of bones, "
"including pose, rest and animation (see [Animation]). It can also use ragdoll "
"physics.\n"
"The overall transform of a bone with respect to the skeleton is determined by "
"bone pose. Bone rest defines the initial transform of the bone pose.\n"
"Note that \"global pose\" below refers to the overall transform of the bone "
"with respect to skeleton, so it is not the actual global/world transform of "
"the bone."
msgstr ""
"[Skeleton3D] предоставляет интерфейс для управления иерархией костей, включая "
"позу, покой и анимацию (см. [Animation]). Он также может использовать физику "
"ragdoll.\n"
"Общее преобразование кости относительно скелета определяется позой кости. "
"Остаток кости определяет начальное преобразование позы кости.\n"
"Обратите внимание, что «глобальная поза» ниже относится к общему "
"преобразованию кости относительно скелета, поэтому это не фактическое "
"глобальное/мировое преобразование кости."

msgid ""
"Adds a new bone with the given name. Returns the new bone's index, or "
"[code]-1[/code] if this method fails.\n"
"[b]Note:[/b] Bone names should be unique, non empty, and cannot include the "
"[code]:[/code] and [code]/[/code] characters."
msgstr ""
"Добавляет новую кость с указанным именем. Возвращает индекс новой кости или "
"[code]-1[/code], если этот метод не срабатывает.\n"
"[b]Примечание:[/b] Имена костей должны быть уникальными, непустыми и не могут "
"включать символы [code]:[/code] и [code]/[/code]."

msgid ""
"Manually advance the child [SkeletonModifier3D]s by the specified time (in "
"seconds).\n"
"[b]Note:[/b] The [param delta] is temporarily accumulated in the "
"[Skeleton3D], and the deferred process uses the accumulated value to process "
"the modification."
msgstr ""
"Вручную переместите дочерние [SkeletonModifier3D] на указанное время (в "
"секундах).\n"
"[b]Примечание:[/b] [param delta] временно накапливается в [Skeleton3D], а "
"отложенный процесс использует накопленное значение для обработки модификации."

msgid "Clear all the bones in this skeleton."
msgstr "Очистите этот скелет от всех костей."

msgid "Removes the global pose override on all bones in the skeleton."
msgstr "Удаляет глобальное переопределение позы для всех костей скелета."

msgid ""
"Returns the bone index that matches [param name] as its name. Returns "
"[code]-1[/code] if no bone with this name exists."
msgstr ""
"Возвращает индекс кости, который соответствует [param name] в качестве имени. "
"Возвращает [code]-1[/code], если кости с таким именем не существует."

msgid "Force updates the bone transforms/poses for all bones in the skeleton."
msgstr ""
"Принудительно обновляет трансформации/позы костей для всех костей скелета."

msgid ""
"Force updates the bone transform for the bone at [param bone_idx] and all of "
"its children."
msgstr ""
"Принудительно обновляет преобразование кости для кости с параметром [param "
"bone_idx] и всех ее дочерних элементов."

msgid ""
"Returns an array containing the bone indexes of all the child node of the "
"passed in bone, [param bone_idx]."
msgstr ""
"Возвращает массив, содержащий индексы костей всех дочерних узлов переданной "
"кости, [param bone_idx]."

msgid "Returns the number of bones in the skeleton."
msgstr "Возвращает количество костей в скелете."

msgid ""
"Returns the overall transform of the specified bone, with respect to the "
"skeleton. Being relative to the skeleton frame, this is not the actual "
"\"global\" transform of the bone.\n"
"[b]Note:[/b] This is the global pose you set to the skeleton in the process, "
"the final global pose can get overridden by modifiers in the deferred "
"process, if you want to access the final global pose, use [signal "
"SkeletonModifier3D.modification_processed]."
msgstr ""
"Возвращает общую трансформацию указанной кости относительно скелета. "
"Поскольку это относится к каркасу скелета, это не фактическая «глобальная» "
"трансформация кости.\n"
"[b]Примечание:[/b] Это глобальная поза, которую вы устанавливаете для скелета "
"в процессе, окончательная глобальная поза может быть переопределена "
"модификаторами в отложенном процессе, если вы хотите получить доступ к "
"окончательной глобальной позе, используйте [signal "
"SkeletonModifier3D.modification_processed]."

msgid ""
"Returns the overall transform of the specified bone, with respect to the "
"skeleton, but without any global pose overrides. Being relative to the "
"skeleton frame, this is not the actual \"global\" transform of the bone."
msgstr ""
"Возвращает общую трансформацию указанной кости относительно скелета, но без "
"глобальных переопределений позы. Будучи относительно скелетного кадра, это не "
"фактическая \"глобальная\" трансформация кости."

msgid "Returns the global pose override transform for [param bone_idx]."
msgstr ""
"Возвращает глобальное преобразование переопределения позы для [param "
"bone_idx]."

msgid "Returns the global rest transform for [param bone_idx]."
msgstr "Возвращает глобальное преобразование rest для [param bone_idx]."

msgid ""
"Returns the metadata for the bone at index [param bone_idx] with [param key]."
msgstr ""
"Возвращает метаданные для кости по индексу [param bone_idx] с [param key]."

msgid ""
"Returns the list of all metadata keys for the bone at index [param bone_idx]."
msgstr ""
"Возвращает список всех ключей метаданных для кости по индексу [param "
"bone_idx]."

msgid "Returns the name of the bone at index [param bone_idx]."
msgstr "Возвращает имя кости по индексу [param bone_idx]."

msgid ""
"Returns the bone index which is the parent of the bone at [param bone_idx]. "
"If -1, then bone has no parent.\n"
"[b]Note:[/b] The parent bone returned will always be less than [param "
"bone_idx]."
msgstr ""
"Возвращает индекс кости, которая является родителем кости в [param bone_idx]. "
"Если -1, то у кости нет родителя.\n"
"[b]Примечание:[/b] Возвращаемая родительская кость всегда будет меньше, чем "
"[param bone_idx]."

msgid ""
"Returns the pose transform of the specified bone.\n"
"[b]Note:[/b] This is the pose you set to the skeleton in the process, the "
"final pose can get overridden by modifiers in the deferred process, if you "
"want to access the final pose, use [signal "
"SkeletonModifier3D.modification_processed]."
msgstr ""
"Возвращает преобразование позы указанной кости.\n"
"[b]Примечание:[/b] Это поза, которую вы устанавливаете для скелета в "
"процессе, окончательная поза может быть переопределена модификаторами в "
"отложенном процессе, если вы хотите получить доступ к окончательной позе, "
"используйте [signal SkeletonModifier3D.modification_processed]."

msgid ""
"Returns the pose position of the bone at [param bone_idx]. The returned "
"[Vector3] is in the local coordinate space of the [Skeleton3D] node."
msgstr ""
"Возвращает положение позы кости в [param bone_idx]. Возвращенный [Vector3] "
"находится в локальном координатном пространстве узла [Skeleton3D]."

msgid ""
"Returns the pose rotation of the bone at [param bone_idx]. The returned "
"[Quaternion] is local to the bone with respect to the rotation of any parent "
"bones."
msgstr ""
"Возвращает вращение позы кости в [param bone_idx]. Возвращаемый [Quaternion] "
"является локальным для кости по отношению к вращению любых родительских "
"костей."

msgid "Returns the pose scale of the bone at [param bone_idx]."
msgstr "Возвращает масштаб позы кости в [param bone_idx]."

msgid "Returns the rest transform for a bone [param bone_idx]."
msgstr "Возвращает rest преобразование для кости [param bone_idx]."

msgid ""
"Returns all bone names concatenated with commas ([code],[/code]) as a single "
"[StringName].\n"
"It is useful to set it as a hint for the enum property."
msgstr ""
"Возвращает все имена костей, объединенные запятыми ([code],[/code]) как один "
"[StringName].\n"
"Полезно задать его как подсказку для свойства enum."

msgid ""
"Returns an array with all of the bones that are parentless. Another way to "
"look at this is that it returns the indexes of all the bones that are not "
"dependent or modified by other bones in the Skeleton."
msgstr ""
"Возвращает массив со всеми костями, которые не имеют родителей. Другой способ "
"взглянуть на это — это то, что он возвращает индексы всех костей, которые не "
"зависят или не изменяются другими костями в Скелете."

msgid ""
"Returns the number of times the bone hierarchy has changed within this "
"skeleton, including renames.\n"
"The Skeleton version is not serialized: only use within a single instance of "
"Skeleton3D.\n"
"Use for invalidating caches in IK solvers and other nodes which process bones."
msgstr ""
"Возвращает количество раз, когда иерархия костей изменялась в этом скелете, "
"включая переименования.\n"
"Версия скелета не сериализуется: используется только в одном экземпляре "
"Skeleton3D.\n"
"Используется для аннулирования кэшей в IK и других узлах, которые "
"обрабатывают кости."

msgid ""
"Returns [code]true[/code] if the bone at index [param bone_idx] has metadata "
"with the key [param key]."
msgstr ""
"Возвращает [code]true[/code], если кость с индексом [param bone_idx] имеет "
"метаданные с ключом [param key]."

msgid ""
"Returns whether the bone pose for the bone at [param bone_idx] is enabled."
msgstr "Возвращает, включена ли поза кости для кости в [param bone_idx]."

msgid "Returns all bones in the skeleton to their rest poses."
msgstr "Возвращает все кости скелета в исходное (rest) положение."

msgid "Binds the given Skin to the Skeleton."
msgstr "Привязывает указанный Skin к скелету."

msgid "Sets the bone pose to rest for [param bone_idx]."
msgstr "Устанавливает позу кости в положение покоя для [param bone_idx]."

msgid "Sets all bone poses to rests."
msgstr "Устанавливает все положения костей в положение покоя."

msgid ""
"Disables the pose for the bone at [param bone_idx] if [code]false[/code], "
"enables the bone pose if [code]true[/code]."
msgstr ""
"Отключает позу кости в [param bone_idx] если [code]false[/code], включает "
"позу кости если [code]true[/code]."

msgid ""
"Sets the global pose transform, [param pose], for the bone at [param "
"bone_idx].\n"
"[b]Note:[/b] If other bone poses have been changed, this method executes a "
"dirty poses recalculation and will cause performance to deteriorate. If you "
"know that multiple global poses will be applied, consider using [method "
"set_bone_pose] with precalculation."
msgstr ""
"Устанавливает глобальное преобразование позы, [param pose], для кости в "
"[param bone_idx].\n"
"[b]Примечание:[/b] Если были изменены другие позы костей, этот метод "
"выполняет грязный пересчет поз и приведет к ухудшению производительности. "
"Если вы знаете, что будет применено несколько глобальных поз, рассмотрите "
"возможность использования [method set_bone_pose] с предварительным расчетом."

msgid ""
"Sets the global pose transform, [param pose], for the bone at [param "
"bone_idx].\n"
"[param amount] is the interpolation strength that will be used when applying "
"the pose, and [param persistent] determines if the applied pose will remain.\n"
"[b]Note:[/b] The pose transform needs to be a global pose! To convert a world "
"transform from a [Node3D] to a global bone pose, multiply the [method "
"Transform3D.affine_inverse] of the node's [member Node3D.global_transform] by "
"the desired world transform."
msgstr ""
"Устанавливает глобальное преобразование позы, [param pose], для кости в "
"[param bone_idx].\n"
"[param amount] — это сила интерполяции, которая будет использоваться при "
"применении позы, а [param persistent] определяет, останется ли примененная "
"поза.\n"
"[b]Примечание:[/b] Преобразование позы должно быть глобальным! Чтобы "
"преобразовать мировое преобразование из [Node3D] в глобальную позу кости, "
"умножьте [method Transform3D.affine_inverse] узла [member "
"Node3D.global_transform] на желаемое мировое преобразование."

msgid ""
"Sets the metadata for the bone at index [param bone_idx], setting the [param "
"key] meta to [param value]."
msgstr ""
"Устанавливает метаданные для кости по индексу [param bone_idx], устанавливая "
"метаданные [param key] на [param value]."

msgid "Sets the bone name, [param name], for the bone at [param bone_idx]."
msgstr ""
"Устанавливает имя кости [param name] для кости с параметром [param bone_idx]."

msgid ""
"Sets the bone index [param parent_idx] as the parent of the bone at [param "
"bone_idx]. If -1, then bone has no parent.\n"
"[b]Note:[/b] [param parent_idx] must be less than [param bone_idx]."
msgstr ""
"Устанавливает индекс кости [param parent_idx] как родительский для кости в "
"[param bone_idx]. Если -1, то у кости нет родителя.\n"
"[b]Примечание:[/b] [param parent_idx] должен быть меньше [param bone_idx]."

msgid "Sets the pose transform, [param pose], for the bone at [param bone_idx]."
msgstr ""
"Устанавливает преобразование позы [param pose] для кости с [param bone_idx]."

msgid ""
"Sets the pose position of the bone at [param bone_idx] to [param position]. "
"[param position] is a [Vector3] describing a position local to the "
"[Skeleton3D] node."
msgstr ""
"Устанавливает положение позы кости в [param bone_idx] на [param position]. "
"[param position] — это [Vector3], описывающий положение, локальное по "
"отношению к узлу [Skeleton3D]."

msgid ""
"Sets the pose rotation of the bone at [param bone_idx] to [param rotation]. "
"[param rotation] is a [Quaternion] describing a rotation in the bone's local "
"coordinate space with respect to the rotation of any parent bones."
msgstr ""
"Устанавливает вращение позы кости в [param bone_idx] на [param rotation]. "
"[param rotation] — это [Quaternion], описывающий вращение в локальном "
"координатном пространстве кости относительно вращения любых родительских "
"костей."

msgid "Sets the pose scale of the bone at [param bone_idx] to [param scale]."
msgstr "Устанавливает масштаб позы кости в [param bone_idx] на [param scale]."

msgid "Sets the rest transform for bone [param bone_idx]."
msgstr "Устанавливает rest преобразование для кости [param bone_idx]."

msgid ""
"Unparents the bone at [param bone_idx] and sets its rest position to that of "
"its parent prior to being reset."
msgstr ""
"Делает кость [param bone_idx] без родительской, и устанавливает ее положение "
"покоя в положение родительской кости перед сбросом."

msgid ""
"If you follow the recommended workflow and explicitly have "
"[PhysicalBoneSimulator3D] as a child of [Skeleton3D], you can control whether "
"it is affected by raycasting without running [method "
"physical_bones_start_simulation], by its [member SkeletonModifier3D.active].\n"
"However, for old (deprecated) configurations, [Skeleton3D] has an internal "
"virtual [PhysicalBoneSimulator3D] for compatibility. This property controls "
"the internal virtual [PhysicalBoneSimulator3D]'s [member "
"SkeletonModifier3D.active]."
msgstr ""
"Если вы следуете рекомендуемому рабочему процессу и явно указываете "
"[PhysicalBoneSimulator3D] как дочерний элемент [Skeleton3D], вы можете "
"контролировать, будет ли он затронут raycasting без запуска [method "
"physical_bones_start_simulation], с помощью его [member "
"SkeletonModifier3D.active].\n"
"Однако для старых (устаревших) конфигураций [Skeleton3D] имеет внутренний "
"виртуальный [PhysicalBoneSimulator3D] для совместимости. Это свойство "
"управляет внутренним виртуальным [PhysicalBoneSimulator3D] [member "
"SkeletonModifier3D.active]."

msgid "Sets the processing timing for the Modifier."
msgstr "Устанавливает время обработки для модификатора."

msgid ""
"Multiplies the 3D position track animation.\n"
"[b]Note:[/b] Unless this value is [code]1.0[/code], the key value in "
"animation will not match the actual position value."
msgstr ""
"Умножает анимацию положения трека в 3D.\n"
"[b]Примечание:[/b] Если это значение не равно [code]1.0[/code], ключевое "
"значение в анимации не будет соответствовать фактическому значению положения."

msgid ""
"If [code]true[/code], forces the bones in their default rest pose, regardless "
"of their values. In the editor, this also prevents the bones from being "
"edited."
msgstr ""
"Если [code]true[/code], то кости возвращаются в исходную позу покоя, "
"независимо от их значений. В редакторе это также предотвращает редактирование "
"костей."

msgid ""
"Emitted when the bone at [param bone_idx] is toggled with [method "
"set_bone_enabled]. Use [method is_bone_enabled] to check the new value."
msgstr ""
"Выдается, когда кость в [param bone_idx] переключается с помощью [method "
"set_bone_enabled]. Используйте [method is_bone_enabled] для проверки нового "
"значения."

msgid ""
"Emitted when the list of bones changes, such as when calling [method "
"add_bone], [method set_bone_parent], [method unparent_bone_and_rest], or "
"[method clear_bones]."
msgstr ""
"Вызывается при изменении списка костей, например, при вызове [method "
"add_bone], [method set_bone_parent], [method unparent_bone_and_rest] или "
"[method clear_bones]."

msgid ""
"Emitted when the pose is updated.\n"
"[b]Note:[/b] During the update process, this signal is not fired, so "
"modification by [SkeletonModifier3D] is not detected."
msgstr ""
"Выдается при обновлении позы.\n"
"[b]Примечание:[/b] Во время процесса обновления этот сигнал не срабатывает, "
"поэтому модификация [SkeletonModifier3D] не обнаруживается."

msgid "Emitted when the rest is updated."
msgstr "Выдается при обновлении rest данных."

msgid "Emitted when the value of [member show_rest_only] changes."
msgstr "Вызывается при изменении значения [member show_rest_only]."

msgid ""
"Emitted when the final pose has been calculated will be applied to the skin "
"in the update process.\n"
"This means that all [SkeletonModifier3D] processing is complete. In order to "
"detect the completion of the processing of each [SkeletonModifier3D], use "
"[signal SkeletonModifier3D.modification_processed]."
msgstr ""
"Выдается, когда рассчитана окончательная поза, будет применена к skin'у в "
"процессе обновления.\n"
"Это означает, что вся обработка [SkeletonModifier3D] завершена. Чтобы "
"обнаружить завершение обработки каждого [SkeletonModifier3D], используйте "
"[signal SkeletonModifier3D.modification_processed]."

msgid ""
"Notification received when this skeleton's pose needs to be updated. In that "
"case, this is called only once per frame in a deferred process."
msgstr ""
"Уведомление получено, когда поза этого скелета должна быть обновлена. В этом "
"случае это вызывается только один раз за кадр в отложенном процессе."

msgid ""
"Set a flag to process modification during physics frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."
msgstr ""
"Установите флаг для обработки изменений во время физических кадров (см. "
"[constant Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."

msgid ""
"Set a flag to process modification during process frames (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Установите флаг для модификации процесса во время кадров процесса (см. "
"[constant Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid ""
"Do not process modification. Use [method advance] to process the modification "
"manually."
msgstr ""
"Не обрабатывать модификации. Используйте [method advance] для ручной "
"обработки модификации."

msgid ""
"A node used to rotate all bones of a [Skeleton3D] bone chain a way that "
"places the end bone at a desired 3D position."
msgstr ""
"Узел, используемый для поворота всех костей цепочки костей [Skeleton3D] таким "
"образом, чтобы разместить конечную кость в желаемом трехмерном положении."

msgid ""
"SkeletonIK3D is used to rotate all bones of a [Skeleton3D] bone chain a way "
"that places the end bone at a desired 3D position. A typical scenario for IK "
"in games is to place a character's feet on the ground or a character's hands "
"on a currently held object. SkeletonIK uses FabrikInverseKinematic internally "
"to solve the bone chain and applies the results to the [Skeleton3D] "
"[code]bones_global_pose_override[/code] property for all affected bones in "
"the chain. If fully applied, this overwrites any bone transform from "
"[Animation]s or bone custom poses set by users. The applied amount can be "
"controlled with the [member SkeletonModifier3D.influence] property.\n"
"[codeblock]\n"
"# Apply IK effect automatically on every new frame (not the current)\n"
"skeleton_ik_node.start()\n"
"\n"
"# Apply IK effect only on the current frame\n"
"skeleton_ik_node.start(true)\n"
"\n"
"# Stop IK effect and reset bones_global_pose_override on Skeleton\n"
"skeleton_ik_node.stop()\n"
"\n"
"# Apply full IK effect\n"
"skeleton_ik_node.set_influence(1.0)\n"
"\n"
"# Apply half IK effect\n"
"skeleton_ik_node.set_influence(0.5)\n"
"\n"
"# Apply zero IK effect (a value at or below 0.01 also removes "
"bones_global_pose_override on Skeleton)\n"
"skeleton_ik_node.set_influence(0.0)\n"
"[/codeblock]"
msgstr ""
"SkeletonIK3D используется для вращения всех костей цепочки костей "
"[Skeleton3D] таким образом, чтобы поместить конечную кость в желаемое "
"положение в 3D. Типичный сценарий для IK в играх — поместить ноги персонажа "
"на землю или руки персонажа на удерживаемый в данный момент объект. "
"SkeletonIK использует FabrikInverseKinematic внутренне для решения цепочки "
"костей и применяет результаты к свойству [Skeleton3D] "
"[code]bones_global_pose_override[/code] для всех затронутых костей в цепочке. "
"При полном применении это перезаписывает любое преобразование костей из "
"[Animation] или пользовательских поз костей, установленных пользователями. "
"Применяемое количество можно контролировать с помощью свойства [member "
"SkeletonModifier3D.influence].\n"
"[codeblock]\n"
"# Автоматически применять эффект IK к каждому новому кадру (не к текущему)\n"
"skeleton_ik_node.start()\n"
"\n"
"# Применить эффект IK только к текущему кадру\n"
"skeleton_ik_node.start(true)\n"
"\n"
"# Остановить эффект IK и сбросить bones_global_pose_override на скелете\n"
"skeleton_ik_node.stop()\n"
"\n"
"# Применить полный эффект IK\n"
"skeleton_ik_node.set_influence(1.0)\n"
"\n"
"# Применить половины эффекта IK\n"
"skeleton_ik_node.set_influence(0.5)\n"
"\n"
"# Применить нулевой эффект IK (значение 0,01 или ниже также удаляет "
"bones_global_pose_override для скелета)\n"
"skeleton_ik_node.set_influence(0.0)\n"
"[/codeblock]"

msgid ""
"Returns the parent [Skeleton3D] node that was present when SkeletonIK entered "
"the scene tree. Returns [code]null[/code] if the parent node was not a "
"[Skeleton3D] node when SkeletonIK3D entered the scene tree."
msgstr ""
"Возвращает родительский узел [Skeleton3D], который присутствовал, когда "
"SkeletonIK вошел в дерево сцены. Возвращает [code]null[/code], если "
"родительский узел не был узлом [Skeleton3D], когда SkeletonIK3D вошел в "
"дерево сцены."

msgid ""
"Returns [code]true[/code] if SkeletonIK is applying IK effects on continues "
"frames to the [Skeleton3D] bones. Returns [code]false[/code] if SkeletonIK is "
"stopped or [method start] was used with the [code]one_time[/code] parameter "
"set to [code]true[/code]."
msgstr ""
"Возвращает [code]true[/code], если SkeletonIK применяет эффекты IK на "
"продолжающихся кадрах к костям [Skeleton3D]. Возвращает [code]false[/code], "
"если SkeletonIK остановлен или [method start] был использован с параметром "
"[code]one_time[/code], установленным на [code]true[/code]."

msgid ""
"Starts applying IK effects on each frame to the [Skeleton3D] bones but will "
"only take effect starting on the next frame. If [param one_time] is "
"[code]true[/code], this will take effect immediately but also reset on the "
"next frame."
msgstr ""
"Начинает применять эффекты IK в каждом кадре к костям [Skeleton3D], но "
"вступит в силу только со следующего кадра. Если [param one_time] равен "
"[code]true[/code], это вступит в силу немедленно, но также сбросится в "
"следующем кадре."

msgid ""
"Stops applying IK effects on each frame to the [Skeleton3D] bones and also "
"calls [method Skeleton3D.clear_bones_global_pose_override] to remove existing "
"overrides on all bones."
msgstr ""
"Прекращает применение эффектов IK в каждом кадре к костям [Skeleton3D], а "
"также вызывает [method Skeleton3D.clear_bones_global_pose_override] для "
"удаления существующих переопределений для всех костей."

msgid "Use [member SkeletonModifier3D.influence] instead."
msgstr "Вместо этого используйте [member SkeletonModifier3D.influence]."

msgid ""
"Interpolation value for how much the IK results are applied to the current "
"skeleton bone chain. A value of [code]1.0[/code] will overwrite all skeleton "
"bone transforms completely while a value of [code]0.0[/code] will visually "
"disable the SkeletonIK."
msgstr ""
"Значение интерполяции для того, насколько результаты IK применяются к текущей "
"цепочке костей скелета. Значение [code]1.0[/code] полностью перезапишет все "
"преобразования костей скелета, а значение [code]0.0[/code] визуально отключит "
"SkeletonIK."

msgid ""
"Secondary target position (first is [member target] property or [member "
"target_node]) for the IK chain. Use magnet position (pole target) to control "
"the bending of the IK chain. Only works if the bone chain has more than 2 "
"bones. The middle chain bone position will be linearly interpolated with the "
"magnet position."
msgstr ""
"Вторичное целевое положение (первое — свойство [member target] или [member "
"target_node]) для цепи IK. Используйте положение магнита (целевой полюс) для "
"управления изгибом цепи IK. Работает только в том случае, если в цепочке "
"костей больше 2 костей. Положение кости средней цепи будет линейно "
"интерполировано с положением магнита."

msgid ""
"Number of iteration loops used by the IK solver to produce more accurate (and "
"elegant) bone chain results."
msgstr ""
"Количество итерационных циклов, используемых решателем IK для получения более "
"точных (и элегантных) результатов костной цепи."

msgid ""
"The minimum distance between bone and goal target. If the distance is below "
"this value, the IK solver stops further iterations."
msgstr ""
"Минимальное расстояние между костью и целью. Если расстояние меньше этого "
"значения, решатель IK останавливает дальнейшие итерации."

msgid ""
"If [code]true[/code] overwrites the rotation of the tip bone with the "
"rotation of the [member target] (or [member target_node] if defined)."
msgstr ""
"Если [code]true[/code], то вращение кончика кости перезаписывается вращением "
"[member target] (или [member target_node], если определено)."

msgid "The name of the current root bone, the first bone in the IK chain."
msgstr "Название текущей корневой кости, первой кости в цепочке IK."

msgid ""
"First target of the IK chain where the tip bone is placed and, if [member "
"override_tip_basis] is [code]true[/code], how the tip bone is rotated. If a "
"[member target_node] path is available the nodes transform is used instead "
"and this property is ignored."
msgstr ""
"Первая цель цепи IK, где размещается кончик кости, и, если [member "
"override_tip_basis] равно [code]true[/code], как поворачивается кончик кости. "
"Если доступен путь [member target_node], то вместо этого используется "
"преобразование узлов, а это свойство игнорируется."

msgid ""
"Target node [NodePath] for the IK chain. If available, the node's current "
"[Transform3D] is used instead of the [member target] property."
msgstr ""
"Целевой узел [NodePath] для цепочки IK. Если доступно, вместо свойства "
"[member target] используется текущий [Transform3D] узла."

msgid ""
"The name of the current tip bone, the last bone in the IK chain placed at the "
"[member target] transform (or [member target_node] if defined)."
msgstr ""
"Имя текущей конечной кости, последней кости в цепочке IK, размещенной в "
"преобразовании [member target] (или [member target_node], если оно "
"определено)."

msgid ""
"If [code]true[/code], instructs the IK solver to consider the secondary "
"magnet target (pole target) when calculating the bone chain. Use the magnet "
"position (pole target) to control the bending of the IK chain."
msgstr ""
"Если [code]true[/code], то указывает решателю IK учитывать вторичную цель "
"магнита (цель полюса) при расчете костной цепи. Используйте положение магнита "
"(цель полюса) для управления изгибом цепи IK."

msgid "Base class for resources that operate on [Bone2D]s in a [Skeleton2D]."
msgstr "Базовый класс для ресурсов, работающих с [Bone2D]-ами в [Skeleton2D]."

msgid ""
"This resource provides an interface that can be expanded so code that "
"operates on [Bone2D] nodes in a [Skeleton2D] can be mixed and matched "
"together to create complex interactions.\n"
"This is used to provide Godot with a flexible and powerful Inverse Kinematics "
"solution that can be adapted for many different uses."
msgstr ""
"Этот ресурс предоставляет интерфейс, который можно расширить, чтобы код, "
"работающий с узлами [Bone2D] в [Skeleton2D], можно было смешивать и "
"сопоставлять для создания сложных взаимодействий. \n"
"Это используется для предоставления Godot гибкого и мощного решения обратной "
"кинематики, которое можно адаптировать для множества различных применений."

msgid ""
"Used for drawing [b]editor-only[/b] modification gizmos. This function will "
"only be called in the Godot editor and can be overridden to draw custom "
"gizmos.\n"
"[b]Note:[/b] You will need to use the Skeleton2D from [method "
"SkeletonModificationStack2D.get_skeleton] and it's draw functions, as the "
"[SkeletonModification2D] resource cannot draw on its own."
msgstr ""
"Используется для рисования [b]только редакторских[/b] гизмо модификации. Эта "
"функция будет вызываться только в редакторе Godot и может быть переопределена "
"для рисования пользовательских гизмо.\n"
"[b]Примечание:[/b] Вам нужно будет использовать Skeleton2D из [method "
"SkeletonModificationStack2D.get_skeleton] и его функции рисования, так как "
"ресурс [SkeletonModification2D] не может рисовать сам по себе."

msgid ""
"Executes the given modification. This is where the modification performs "
"whatever function it is designed to do."
msgstr ""
"Выполняет указанную модификацию. Здесь модификация выполняет ту функцию, для "
"которой она предназначена."

msgid ""
"Called when the modification is setup. This is where the modification "
"performs initialization."
msgstr ""
"Вызывается при настройке модификации. Здесь модификация выполняет "
"инициализацию."

msgid ""
"Takes an angle and clamps it so it is within the passed-in [param min] and "
"[param max] range. [param invert] will inversely clamp the angle, clamping it "
"to the range outside of the given bounds."
msgstr ""
"Берет угол и ограничивает его так, чтобы он находился в пределах переданного "
"диапазона [param min] и [param max]. [param invert] будет обратно "
"ограничивать угол, ограничивая его диапазоном за пределами заданных границ."

msgid ""
"Returns whether this modification will call [method _draw_editor_gizmo] in "
"the Godot editor to draw modification-specific gizmos."
msgstr ""
"Возвращает, будет ли эта модификация вызывать [method _draw_editor_gizmo] в "
"редакторе Godot для рисования специфичных для модификации gizmos."

msgid "Returns whether this modification has been successfully setup or not."
msgstr ""
"Возвращает информацию о том, была ли данная модификация успешно установлена "
"или нет."

msgid ""
"Returns the [SkeletonModificationStack2D] that this modification is bound to. "
"Through the modification stack, you can access the Skeleton2D the "
"modification is operating on."
msgstr ""
"Возвращает [SkeletonModificationStack2D], к которому привязана эта "
"модификация. Через стек модификации можно получить доступ к Skeleton2D, над "
"которым работает модификация."

msgid ""
"Sets whether this modification will call [method _draw_editor_gizmo] in the "
"Godot editor to draw modification-specific gizmos."
msgstr ""
"Устанавливает, будет ли эта модификация вызывать [method _draw_editor_gizmo] "
"в редакторе Godot для рисования специфичных для модификации гизмо."

msgid ""
"Manually allows you to set the setup state of the modification. This function "
"should only rarely be used, as the [SkeletonModificationStack2D] the "
"modification is bound to should handle setting the modification up."
msgstr ""
"Вручную позволяет вам установить состояние настройки модификации. Эту функцию "
"следует использовать только в редких случаях, так как "
"[SkeletonModificationStack2D], к которому привязана модификация, должен "
"обрабатывать настройку модификации."

msgid ""
"If [code]true[/code], the modification's [method _execute] function will be "
"called by the [SkeletonModificationStack2D]."
msgstr ""
"Если [code]true[/code], функция модификации [method _execute] будет вызвана "
"[SkeletonModificationStack2D]."

msgid ""
"The execution mode for the modification. This tells the modification stack "
"when to execute the modification. Some modifications have settings that are "
"only available in certain execution modes."
msgstr ""
"Режим выполнения для модификации. Это сообщает стеку модификации, когда "
"выполнять модификацию. Некоторые модификации имеют настройки, которые "
"доступны только в определенных режимах выполнения."

msgid ""
"A modification that uses CCDIK to manipulate a series of bones to reach a "
"target in 2D."
msgstr ""
"Модификация, использующая CCDIK для манипулирования серией костей с целью "
"достижения цели в 2D."

msgid ""
"This [SkeletonModification2D] uses an algorithm called Cyclic Coordinate "
"Descent Inverse Kinematics, or CCDIK, to manipulate a chain of bones in a "
"[Skeleton2D] so it reaches a defined target.\n"
"CCDIK works by rotating a set of bones, typically called a \"bone chain\", on "
"a single axis. Each bone is rotated to face the target from the tip (by "
"default), which over a chain of bones allow it to rotate properly to reach "
"the target. Because the bones only rotate on a single axis, CCDIK [i]can[/i] "
"look more robotic than other IK solvers.\n"
"[b]Note:[/b] The CCDIK modifier has [code]ccdik_joints[/code], which are the "
"data objects that hold the data for each joint in the CCDIK chain. This is "
"different from a bone! CCDIK joints hold the data needed for each bone in the "
"bone chain used by CCDIK.\n"
"CCDIK also fully supports angle constraints, allowing for more control over "
"how a solution is met."
msgstr ""
"Этот [SkeletonModification2D] использует алгоритм, называемый Обратная "
"кинематика циклического спуска по координатам (CCDIK), для управления "
"цепочкой костей в [Skeleton2D] так, чтобы она достигла определенной цели.\n"
"CCDIK работает, вращая набор костей, обычно называемый «цепочкой костей», "
"вокруг одной оси. Каждая кость поворачивается так, чтобы быть обращенной к "
"цели с кончика (по умолчанию), что позволяет ей вращаться правильно, достигая "
"цели, через цепочку костей. Поскольку кости вращаются только вокруг одной "
"оси, CCDIK [i]может[/i] выглядеть более роботизированным, чем другие решатели "
"IK.\n"
"[b]Примечание:[/b] Модификатор CCDIK имеет [code]ccdik_joints[/code], которые "
"являются объектами данных, которые содержат данные для каждого сустава в "
"цепочке CCDIK. Это отличается от кости! Суставы CCDIK содержат данные, "
"необходимые для каждой кости в цепочке костей, используемой CCDIK.\n"
"CCDIK также полностью поддерживает угловые ограничения, что позволяет лучше "
"контролировать выполнение решения."

msgid ""
"Returns the [Bone2D] node assigned to the CCDIK joint at [param joint_idx]."
msgstr ""
"Возвращает узел [Bone2D], назначенный суставу CCDIK в [param joint_idx]."

msgid ""
"Returns the index of the [Bone2D] node assigned to the CCDIK joint at [param "
"joint_idx]."
msgstr ""
"Возвращает индекс узла [Bone2D], назначенного суставу CCDIK в [param "
"joint_idx]."

msgid ""
"Returns whether the CCDIK joint at [param joint_idx] uses an inverted joint "
"constraint. See [method set_ccdik_joint_constraint_angle_invert] for details."
msgstr ""
"Возвращает, использует ли соединение CCDIK в [param joint_idx] "
"инвертированное ограничение соединения. Подробности см. в [method "
"set_ccdik_joint_constraint_angle_invert]."

msgid "Returns the maximum angle constraint for the joint at [param joint_idx]."
msgstr ""
"Возвращает максимальное ограничение угла для сочленения в [param joint_idx]."

msgid "Returns the minimum angle constraint for the joint at [param joint_idx]."
msgstr ""
"Возвращает минимальное ограничение угла для сочленения в [param joint_idx]."

msgid ""
"Returns whether angle constraints on the CCDIK joint at [param joint_idx] are "
"enabled."
msgstr ""
"Возвращает информацию о том, включены ли ограничения угла для соединения "
"CCDIK в [param joint_idx]."

msgid ""
"Returns whether the joint at [param joint_idx] is set to rotate from the "
"joint, [code]true[/code], or to rotate from the tip, [code]false[/code]. The "
"default is to rotate from the tip."
msgstr ""
"Возвращает, установлено ли соединение в [param joint_idx] для вращения от "
"сочленения, [code]true[/code], или для вращения от кончика, [code]false[/"
"code]. По умолчанию вращение происходит от кончика."

msgid "Sets the [Bone2D] node assigned to the CCDIK joint at [param joint_idx]."
msgstr ""
"Устанавливает узел [Bone2D], назначенный суставу CCDIK в [param joint_idx]."

msgid ""
"Sets the bone index, [param bone_idx], of the CCDIK joint at [param "
"joint_idx]. When possible, this will also update the [code]bone2d_node[/code] "
"of the CCDIK joint based on data provided by the linked skeleton."
msgstr ""
"Устанавливает индекс кости [param bone_idx] сустава CCDIK в [param "
"joint_idx]. Когда это возможно, это также обновит [code]bone2d_node[/code] "
"сустава CCDIK на основе данных, предоставленных связанным скелетом."

msgid ""
"Sets whether the CCDIK joint at [param joint_idx] uses an inverted joint "
"constraint.\n"
"An inverted joint constraint only constraints the CCDIK joint to the angles "
"[i]outside of[/i] the inputted minimum and maximum angles. For this reason, "
"it is referred to as an inverted joint constraint, as it constraints the "
"joint to the outside of the inputted values."
msgstr ""
"Устанавливает, использует ли соединение CCDIK в [param joint_idx] "
"инвертированное ограничение соединения.\n"
"Инвертированное ограничение соединения ограничивает соединение CCDIK только "
"углами [i]вне[/i] введенных минимальных и максимальных углов. По этой причине "
"оно называется инвертированным ограничением соединения, так как оно "
"ограничивает соединение снаружи введенных значений."

msgid "Sets the maximum angle constraint for the joint at [param joint_idx]."
msgstr ""
"Устанавливает максимальное ограничение угла для сочленения в [param "
"joint_idx]."

msgid "Sets the minimum angle constraint for the joint at [param joint_idx]."
msgstr ""
"Устанавливает минимальное ограничение угла для сочленения в [param joint_idx]."

msgid ""
"Determines whether angle constraints on the CCDIK joint at [param joint_idx] "
"are enabled. When [code]true[/code], constraints will be enabled and taken "
"into account when solving."
msgstr ""
"Определяет, включены ли ограничения угла на сочленении CCDIK в [param "
"joint_idx]. Когда [code]true[/code], ограничения будут включены и учтены при "
"решении."

msgid ""
"Sets whether the joint at [param joint_idx] is set to rotate from the joint, "
"[code]true[/code], or to rotate from the tip, [code]false[/code]."
msgstr ""
"Устанавливает, будет ли сочленение в [param joint_idx] настроено на вращение "
"от сочленения, [code]true[/code], или на вращение от кончика, [code]false[/"
"code]."

msgid "The number of CCDIK joints in the CCDIK modification."
msgstr "Количество соединений CCDIK в модификации CCDIK."

msgid ""
"The NodePath to the node that is the target for the CCDIK modification. This "
"node is what the CCDIK chain will attempt to rotate the bone chain to."
msgstr ""
"NodePath к узлу, который является целью модификации CCDIK. Это узел, к "
"которому цепь CCDIK попытается повернуть цепочку костей."

msgid ""
"The end position of the CCDIK chain. Typically, this should be a child of a "
"[Bone2D] node attached to the final [Bone2D] in the CCDIK chain."
msgstr ""
"Конечная позиция цепочки CCDIK. Обычно это должен быть дочерний узел "
"[Bone2D], прикрепленный к конечному [Bone2D] в цепочке CCDIK."

msgid ""
"A modification that uses FABRIK to manipulate a series of [Bone2D] nodes to "
"reach a target."
msgstr ""
"Модификация, использующая FABRIK для манипулирования серией узлов [Bone2D] "
"для достижения цели."

msgid ""
"This [SkeletonModification2D] uses an algorithm called Forward And Backward "
"Reaching Inverse Kinematics, or FABRIK, to rotate a bone chain so that it "
"reaches a target.\n"
"FABRIK works by knowing the positions and lengths of a series of bones, "
"typically called a \"bone chain\". It first starts by running a forward pass, "
"which places the final bone at the target's position. Then all other bones "
"are moved towards the tip bone, so they stay at the defined bone length away. "
"Then a backwards pass is performed, where the root/first bone in the FABRIK "
"chain is placed back at the origin. Then all other bones are moved so they "
"stay at the defined bone length away. This positions the bone chain so that "
"it reaches the target when possible, but all of the bones stay the correct "
"length away from each other.\n"
"Because of how FABRIK works, it often gives more natural results than those "
"seen in [SkeletonModification2DCCDIK].\n"
"[b]Note:[/b] The FABRIK modifier has [code]fabrik_joints[/code], which are "
"the data objects that hold the data for each joint in the FABRIK chain. This "
"is different from [Bone2D] nodes! FABRIK joints hold the data needed for each "
"[Bone2D] in the bone chain used by FABRIK.\n"
"To help control how the FABRIK joints move, a magnet vector can be passed, "
"which can nudge the bones in a certain direction prior to solving, giving a "
"level of control over the final result."
msgstr ""
"В [SkeletonModification2D] используется алгоритм, называемый «обратной "
"кинематикой прямого и обратного действия» (FABRIK), для поворота цепочки "
"костей таким образом, чтобы она достигла цели.\n"
"FABRIK работает, зная положение и длину ряда костей, обычно называемых "
"«цепочкой костей». Сначала выполняется прямой проход, который помещает "
"последнюю кость в позицию цели. Затем все остальные кости перемещаются к "
"конечной кости, оставаясь на заданном расстоянии. Затем выполняется обратный "
"проход, в котором корневая/первая кость в цепочке FABRIK возвращается в "
"начало координат. Затем все остальные кости перемещаются, оставаясь на "
"заданном расстоянии. Это позволяет расположить цепочку костей таким образом, "
"чтобы она достигла цели, когда это возможно, но при этом все кости остаются "
"на правильном расстоянии друг от друга.\n"
"Благодаря особенностям работы FABRIK, он часто дает более естественные "
"результаты, чем [SkeletonModification2DCCDIK].\n"
"[b]Примечание:[/b] Модификатор FABRIK содержит [code]fabrik_joints[/code], "
"которые представляют собой объекты данных, хранящие данные для каждого "
"сустава в цепочке FABRIK. Это отличается от узлов [Bone2D]! Суставы FABRIK "
"содержат данные, необходимые для каждого [Bone2D] в цепочке костей, "
"используемой FABRIK.\n"
"Чтобы контролировать движение суставов FABRIK, можно передать вектор магнита, "
"который может подтолкнуть кости в определённом направлении перед решением, "
"что даёт определённый уровень контроля над конечным результатом."

msgid ""
"Returns the [Bone2D] node assigned to the FABRIK joint at [param joint_idx]."
msgstr ""
"Возвращает узел [Bone2D], назначенный суставу FABRIK в [param joint_idx]."

msgid ""
"Returns the index of the [Bone2D] node assigned to the FABRIK joint at [param "
"joint_idx]."
msgstr ""
"Возвращает индекс узла [Bone2D], назначенного суставу FABRIK в [param "
"joint_idx]."

msgid "Returns the magnet position vector for the joint at [param joint_idx]."
msgstr "Возвращает вектор положения магнита для сочленения в [param joint_idx]."

msgid ""
"Returns whether the joint is using the target's rotation rather than allowing "
"FABRIK to rotate the joint. This option only applies to the tip/final joint "
"in the chain."
msgstr ""
"Возвращает, использует ли сочленение вращение цели, а не позволяет FABRIK "
"вращать сочленение. Эта опция применяется только к кончику/конечному "
"сочленению в цепочке."

msgid ""
"Sets the [Bone2D] node assigned to the FABRIK joint at [param joint_idx]."
msgstr ""
"Устанавливает узел [Bone2D], назначенный суставу FABRIK, в [param joint_idx]."

msgid ""
"Sets the bone index, [param bone_idx], of the FABRIK joint at [param "
"joint_idx]. When possible, this will also update the [code]bone2d_node[/code] "
"of the FABRIK joint based on data provided by the linked skeleton."
msgstr ""
"Устанавливает индекс кости [param bone_idx] сустава FABRIK в [param "
"joint_idx]. Когда это возможно, это также обновит [code]bone2d_node[/code] "
"сустава FABRIK на основе данных, предоставленных связанным скелетом."

msgid "Sets the magnet position vector for the joint at [param joint_idx]."
msgstr ""
"Устанавливает вектор положения магнита для сочленения в [param joint_idx]."

msgid ""
"Sets whether the joint at [param joint_idx] will use the target node's "
"rotation rather than letting FABRIK rotate the node.\n"
"[b]Note:[/b] This option only works for the tip/final joint in the chain. For "
"all other nodes, this option will be ignored."
msgstr ""
"Устанавливает, будет ли соединение в [param joint_idx] использовать вращение "
"целевого узла вместо того, чтобы позволить FABRIK вращать узел.\n"
"[b]Примечание:[/b] Эта опция работает только для конечного/последнего "
"соединения в цепочке. Для всех остальных узлов эта опция будет игнорироваться."

msgid "The number of FABRIK joints in the FABRIK modification."
msgstr "Количество соединений FABRIK в модификации FABRIK."

msgid ""
"The NodePath to the node that is the target for the FABRIK modification. This "
"node is what the FABRIK chain will attempt to rotate the bone chain to."
msgstr ""
"NodePath к узлу, который является целью модификации FABRIK. Этот узел — то, к "
"чему цепь FABRIK попытается повернуть цепочку костей."

msgid ""
"A modification that jiggles [Bone2D] nodes as they move towards a target."
msgstr ""
"Модификация, которая покачивает узлы [Bone2D] по мере их движения к цели."

msgid ""
"This modification moves a series of bones, typically called a bone chain, "
"towards a target. What makes this modification special is that it calculates "
"the velocity and acceleration for each bone in the bone chain, and runs a "
"very light physics-like calculation using the inputted values. This allows "
"the bones to overshoot the target and \"jiggle\" around. It can be configured "
"to act more like a spring, or sway around like cloth might.\n"
"This modification is useful for adding additional motion to things like hair, "
"the edges of clothing, and more. It has several settings to that allow "
"control over how the joint moves when the target moves.\n"
"[b]Note:[/b] The Jiggle modifier has [code]jiggle_joints[/code], which are "
"the data objects that hold the data for each joint in the Jiggle chain. This "
"is different from than [Bone2D] nodes! Jiggle joints hold the data needed for "
"each [Bone2D] in the bone chain used by the Jiggle modification."
msgstr ""
"Эта модификация перемещает ряд костей, обычно называемых цепочкой костей, к "
"цели. Что делает эту модификацию особенной, так это то, что она вычисляет "
"скорость и ускорение для каждой кости в цепочке костей и запускает очень "
"легкий физический расчет с использованием введенных значений. Это позволяет "
"костям пролетать мимо цели и «покачиваться» вокруг. Ее можно настроить так, "
"чтобы она действовала больше как пружина или покачивалась вокруг, как ткань.\n"
"Эта модификация полезна для добавления дополнительного движения таким вещам, "
"как волосы, края одежды и многое другое. Она имеет несколько настроек, "
"которые позволяют контролировать, как сустав движется при движении цели.\n"
"[b]Примечание:[/b] Модификатор Jiggle имеет [code]jiggle_joints[/code], "
"которые являются объектами данных, которые содержат данные для каждого "
"сустава в цепочке Jiggle. Это отличается от узлов [Bone2D]! Соединения Jiggle "
"содержат данные, необходимые для каждого [Bone2D] в цепочке костей, "
"используемых модификацией Jiggle."

msgid ""
"Returns the collision mask used by the Jiggle modifier when collisions are "
"enabled."
msgstr ""
"Возвращает маску столкновений, используемую модификатором Jiggle, когда "
"столкновения включены."

msgid ""
"Returns the [Bone2D] node assigned to the Jiggle joint at [param joint_idx]."
msgstr ""
"Возвращает узел [Bone2D], назначенный для сустава Jiggle в [param joint_idx]."

msgid ""
"Returns the index of the [Bone2D] node assigned to the Jiggle joint at [param "
"joint_idx]."
msgstr ""
"Возвращает индекс узла [Bone2D], назначенного для сустава Jiggle в [param "
"joint_idx]."

msgid "Returns the amount of damping of the Jiggle joint at [param joint_idx]."
msgstr ""
"Возвращает величину демпфирования сочленения Jiggle в [param joint_idx]."

msgid ""
"Returns a [Vector2] representing the amount of gravity the Jiggle joint at "
"[param joint_idx] is influenced by."
msgstr ""
"Возвращает [Vector2], представляющий величину силы тяжести, которая влияет на "
"сочленение Jiggle в точке [param joint_idx]."

msgid "Returns the amount of mass of the jiggle joint at [param joint_idx]."
msgstr "Возвращает массу покачивающегося сочленения в [param joint_idx]."

msgid ""
"Returns a boolean that indicates whether the joint at [param joint_idx] is "
"overriding the default Jiggle joint data defined in the modification."
msgstr ""
"Возвращает логическое значение, указывающее, переопределяет ли соединение в "
"[param joint_idx] данные соединения Jiggle по умолчанию, определенные в "
"модификации."

msgid "Returns the stiffness of the Jiggle joint at [param joint_idx]."
msgstr "Возвращает жесткость шарнирного соединения Jiggle в [param joint_idx]."

msgid ""
"Returns a boolean that indicates whether the joint at [param joint_idx] is "
"using gravity or not."
msgstr ""
"Возвращает логическое значение, указывающее, использует ли сочленение с "
"параметром [param joint_idx] силу тяжести или нет."

msgid ""
"Returns whether the jiggle modifier is taking physics colliders into account "
"when solving."
msgstr ""
"Возвращает, учитывает ли модификатор, покачивания физические коллайдеров при "
"решении."

msgid ""
"Sets the collision mask that the Jiggle modifier will use when reacting to "
"colliders, if the Jiggle modifier is set to take colliders into account."
msgstr ""
"Устанавливает маску столкновений, которую модификатор Jiggle будет "
"использовать при реагировании на коллайдеры, если модификатор Jiggle настроен "
"на учет коллайдеров."

msgid ""
"Sets the [Bone2D] node assigned to the Jiggle joint at [param joint_idx]."
msgstr ""
"Устанавливает узел [Bone2D], назначенный для сустава Jiggle в [param "
"joint_idx]."

msgid ""
"Sets the bone index, [param bone_idx], of the Jiggle joint at [param "
"joint_idx]. When possible, this will also update the [code]bone2d_node[/code] "
"of the Jiggle joint based on data provided by the linked skeleton."
msgstr ""
"Устанавливает индекс кости, [param bone_idx], для Jiggle joint в [param "
"joint_idx]. Когда это возможно, это также обновит [code]bone2d_node[/code] "
"для Jiggle joint на основе данных, предоставленных связанным скелетом."

msgid "Sets the amount of damping of the Jiggle joint at [param joint_idx]."
msgstr ""
"Устанавливает величину демпфирования сочленения Jiggle в [param joint_idx]."

msgid "Sets the gravity vector of the Jiggle joint at [param joint_idx]."
msgstr ""
"Устанавливает вектор силы тяжести сочленения Jiggle на [param joint_idx]."

msgid "Sets the of mass of the Jiggle joint at [param joint_idx]."
msgstr "Устанавливает массу шарнира Jiggle в [param joint_idx]."

msgid ""
"Sets whether the Jiggle joint at [param joint_idx] should override the "
"default Jiggle joint settings. Setting this to [code]true[/code] will make "
"the joint use its own settings rather than the default ones attached to the "
"modification."
msgstr ""
"Устанавливает, должен ли Jiggle joint в [param joint_idx] переопределять "
"настройки Jiggle joint по умолчанию. Установка этого значения в [code]true[/"
"code] заставит joint использовать собственные настройки, а не настройки по "
"умолчанию, прикрепленные к модификации."

msgid "Sets the of stiffness of the Jiggle joint at [param joint_idx]."
msgstr "Устанавливает жесткость шарнира Jiggle в [param joint_idx]."

msgid "Sets whether the Jiggle joint at [param joint_idx] should use gravity."
msgstr ""
"Устанавливает, будет ли сочленение Jiggle в [param joint_idx] использовать "
"гравитацию."

msgid ""
"If [code]true[/code], the Jiggle modifier will take colliders into account, "
"keeping them from entering into these collision objects."
msgstr ""
"Если [code]true[/code], модификатор Jiggle будет учитывать коллайдеры, не "
"давая им входить в эти объекты столкновения."

msgid ""
"The default amount of damping applied to the Jiggle joints, if they are not "
"overridden. Higher values lead to more of the calculated velocity being "
"applied."
msgstr ""
"Величина демпфирования по умолчанию, применяемая к сочленениям Jiggle, если "
"они не переопределены. Более высокие значения приводят к применению большего "
"количества вычисленной скорости."

msgid ""
"The default amount of gravity applied to the Jiggle joints, if they are not "
"overridden."
msgstr ""
"Значение силы тяжести по умолчанию, применяемое к сочленениям Jiggle, если "
"они не переопределены."

msgid "The amount of Jiggle joints in the Jiggle modification."
msgstr "Количество шарнирных соединений в модификации Jiggle."

msgid ""
"The default amount of mass assigned to the Jiggle joints, if they are not "
"overridden. Higher values lead to faster movements and more overshooting."
msgstr ""
"Значение массы по умолчанию, назначенное для сочленений Jiggle, если они не "
"переопределены. Более высокие значения приводят к более быстрым движениям и "
"большему перескоку."

msgid ""
"The default amount of stiffness assigned to the Jiggle joints, if they are "
"not overridden. Higher values act more like springs, quickly moving into the "
"correct position."
msgstr ""
"Значение жесткости по умолчанию, назначенное для Jiggle joints, если они не "
"переопределены. Более высокие значения действуют скорее как пружины, быстро "
"перемещаясь в правильное положение."

msgid ""
"The NodePath to the node that is the target for the Jiggle modification. This "
"node is what the Jiggle chain will attempt to rotate the bone chain to."
msgstr ""
"NodePath к узлу, который является целью для модификации Jiggle. Это узел, к "
"которому цепь Jiggle будет пытаться повернуть цепочку костей."

msgid ""
"Whether the gravity vector, [member gravity], should be applied to the Jiggle "
"joints, assuming they are not overriding the default settings."
msgstr ""
"Следует ли применять вектор гравитации [member gravity] к шарнирам Jiggle, "
"предполагая, что они не переопределяют настройки по умолчанию."

msgid "A modification that rotates a [Bone2D] node to look at a target."
msgstr "Модификация, которая вращает узел [Bone2D] для обзора цели."

msgid ""
"This [SkeletonModification2D] rotates a bone to look a target. This is "
"extremely helpful for moving character's head to look at the player, rotating "
"a turret to look at a target, or any other case where you want to make a bone "
"rotate towards something quickly and easily."
msgstr ""
"Этот [SkeletonModification2D] вращает кость, чтобы посмотреть на цель. Это "
"чрезвычайно полезно для перемещения головы персонажа, чтобы посмотреть на "
"игрока, вращения башни, чтобы посмотреть на цель, или любого другого случая, "
"когда вы хотите заставить кость быстро и легко вращаться в сторону чего-то."

msgid ""
"Returns the amount of additional rotation that is applied after the LookAt "
"modification executes."
msgstr ""
"Возвращает величину дополнительного поворота, применяемого после выполнения "
"модификации LookAt."

msgid ""
"Returns whether the constraints to this modification are inverted or not."
msgstr "Возвращает, инвертированы ли ограничения для этой модификации или нет."

msgid "Returns the constraint's maximum allowed angle."
msgstr "Возвращает максимально допустимый угол ограничения."

msgid "Returns the constraint's minimum allowed angle."
msgstr "Возвращает минимально допустимый угол ограничения."

msgid ""
"Returns [code]true[/code] if the LookAt modification is using constraints."
msgstr ""
"Возвращает [code]true[/code], если модификация LookAt использует ограничения."

msgid ""
"Sets the amount of additional rotation that is to be applied after executing "
"the modification. This allows for offsetting the results by the inputted "
"rotation amount."
msgstr ""
"Устанавливает величину дополнительного вращения, которое должно быть "
"применено после выполнения модификации. Это позволяет смещать результаты на "
"введенную величину вращения."

msgid ""
"When [code]true[/code], the modification will use an inverted joint "
"constraint.\n"
"An inverted joint constraint only constraints the [Bone2D] to the angles "
"[i]outside of[/i] the inputted minimum and maximum angles. For this reason, "
"it is referred to as an inverted joint constraint, as it constraints the "
"joint to the outside of the inputted values."
msgstr ""
"Когда [code]true[/code], модификация будет использовать инвертированное "
"ограничение сустава.\n"
"Инвертированное ограничение сустава ограничивает [Bone2D] только углами "
"[i]вне[/i] введенных минимальных и максимальных углов. По этой причине оно "
"называется инвертированным ограничением сустава, так как оно ограничивает "
"сустав снаружи введенных значений."

msgid "Sets the constraint's maximum allowed angle."
msgstr "Устанавливает максимально допустимый угол ограничения."

msgid "Sets the constraint's minimum allowed angle."
msgstr "Устанавливает минимально допустимый угол ограничения."

msgid ""
"Sets whether this modification will use constraints or not. When [code]true[/"
"code], constraints will be applied when solving the LookAt modification."
msgstr ""
"Устанавливает, будет ли эта модификация использовать ограничения или нет. "
"Когда [code]true[/code], ограничения будут применены при решении модификации "
"LookAt."

msgid "The [Bone2D] node that the modification will operate on."
msgstr "Узел [Bone2D], на котором будет работать модификация."

msgid "The index of the [Bone2D] node that the modification will operate on."
msgstr "Индекс узла [Bone2D], на котором будет действовать модификация."

msgid ""
"The NodePath to the node that is the target for the LookAt modification. This "
"node is what the modification will rotate the [Bone2D] to."
msgstr ""
"NodePath к узлу, который является целью модификации LookAt. Это узел, к "
"которому модификация повернет [Bone2D]."

msgid ""
"Physical bones may be changed in the future to perform the position update of "
"[Bone2D] on their own, without needing this resource."
msgstr ""
"Физические кости могут быть изменены в будущем, чтобы выполнять обновление "
"положения [Bone2D] самостоятельно, без необходимости использования этого "
"ресурса."

msgid ""
"A modification that applies the transforms of [PhysicalBone2D] nodes to "
"[Bone2D] nodes."
msgstr ""
"Модификация, которая применяет преобразования узлов [PhysicalBone2D] к узлам "
"[Bone2D]."

msgid ""
"This modification takes the transforms of [PhysicalBone2D] nodes and applies "
"them to [Bone2D] nodes. This allows the [Bone2D] nodes to react to physics "
"thanks to the linked [PhysicalBone2D] nodes."
msgstr ""
"Эта модификация берет преобразования узлов [PhysicalBone2D] и применяет их к "
"узлам [Bone2D]. Это позволяет узлам [Bone2D] реагировать на физику благодаря "
"связанным узлам [PhysicalBone2D]."

msgid ""
"Empties the list of [PhysicalBone2D] nodes and populates it with all "
"[PhysicalBone2D] nodes that are children of the [Skeleton2D]."
msgstr ""
"Очищает список узлов [PhysicalBone2D] и заполняет его всеми узлами "
"[PhysicalBone2D], которые являются дочерними узлами [Skeleton2D]."

msgid "Returns the [PhysicalBone2D] node at [param joint_idx]."
msgstr "Возвращает узел [PhysicalBone2D] в [param joint_idx]."

msgid ""
"Sets the [PhysicalBone2D] node at [param joint_idx].\n"
"[b]Note:[/b] This is just the index used for this modification, not the bone "
"index used in the [Skeleton2D]."
msgstr ""
"Устанавливает узел [PhysicalBone2D] в [param joint_idx].\n"
"[b]Примечание:[/b] Это просто индекс, используемый для этой модификации, а не "
"индекс кости, используемый в [Skeleton2D]."

msgid ""
"Tell the [PhysicalBone2D] nodes to start simulating and interacting with the "
"physics world.\n"
"Optionally, an array of bone names can be passed to this function, and that "
"will cause only [PhysicalBone2D] nodes with those names to start simulating."
msgstr ""
"Сообщите узлам [PhysicalBone2D] начать симуляцию и взаимодействие с "
"физическим миром.\n"
"При желании в эту функцию можно передать массив имен костей, и это приведет к "
"тому, что только узлы [PhysicalBone2D] с этими именами начнут симуляцию."

msgid ""
"Tell the [PhysicalBone2D] nodes to stop simulating and interacting with the "
"physics world.\n"
"Optionally, an array of bone names can be passed to this function, and that "
"will cause only [PhysicalBone2D] nodes with those names to stop simulating."
msgstr ""
"Сообщите узлам [PhysicalBone2D] прекратить симуляцию и взаимодействие с "
"физическим миром.\n"
"При желании в эту функцию можно передать массив имен костей, и это приведет к "
"тому, что только узлы [PhysicalBone2D] с этими именами прекратят симуляцию."

msgid "The number of [PhysicalBone2D] nodes linked in this modification."
msgstr "Количество узлов [PhysicalBone2D], связанных в этой модификации."

msgid "A modification that holds and executes a [SkeletonModificationStack2D]."
msgstr ""
"Модификация, которая содержит и выполняет [SkeletonModificationStack2D]."

msgid ""
"This [SkeletonModification2D] holds a reference to a "
"[SkeletonModificationStack2D], allowing you to use multiple modification "
"stacks on a single [Skeleton2D].\n"
"[b]Note:[/b] The modifications in the held [SkeletonModificationStack2D] will "
"only be executed if their execution mode matches the execution mode of the "
"SkeletonModification2DStackHolder."
msgstr ""
"Этот [SkeletonModification2D] содержит ссылку на "
"[SkeletonModificationStack2D], что позволяет использовать несколько стеков "
"модификаций на одном [Skeleton2D].\n"
"[b]Примечание:[/b] Изменения в удерживаемом [SkeletonModificationStack2D] "
"будут выполнены только в том случае, если их режим выполнения совпадает с "
"режимом выполнения SkeletonModification2DStackHolder."

msgid ""
"Returns the [SkeletonModificationStack2D] that this modification is holding."
msgstr ""
"Возвращает [SkeletonModificationStack2D], который содержит эта модификация."

msgid ""
"Sets the [SkeletonModificationStack2D] that this modification is holding. "
"This modification stack will then be executed when this modification is "
"executed."
msgstr ""
"Устанавливает [SkeletonModificationStack2D], который удерживает эта "
"модификация. Этот стек модификации будет затем выполнен при выполнении этой "
"модификации."

msgid ""
"A modification that rotates two bones using the law of cosines to reach the "
"target."
msgstr ""
"Модификация, которая вращает две кости, используя закон косинусов, чтобы "
"достичь цели."

msgid ""
"This [SkeletonModification2D] uses an algorithm typically called TwoBoneIK. "
"This algorithm works by leveraging the law of cosines and the lengths of the "
"bones to figure out what rotation the bones currently have, and what rotation "
"they need to make a complete triangle, where the first bone, the second bone, "
"and the target form the three vertices of the triangle. Because the algorithm "
"works by making a triangle, it can only operate on two bones.\n"
"TwoBoneIK is great for arms, legs, and really any joints that can be "
"represented by just two bones that bend to reach a target. This solver is "
"more lightweight than [SkeletonModification2DFABRIK], but gives similar, "
"natural looking results."
msgstr ""
"Этот [SkeletonModification2D] использует алгоритм, обычно называемый "
"TwoBoneIK. Этот алгоритм работает, используя закон косинусов и длины костей, "
"чтобы выяснить, какое вращение имеют кости в данный момент, и какое вращение "
"им нужно, чтобы составить полный треугольник, где первая кость, вторая кость "
"и цель образуют три вершины треугольника. Поскольку алгоритм работает, "
"создавая треугольник, он может работать только с двумя костями.\n"
"TwoBoneIK отлично подходит для рук, ног и любых суставов, которые можно "
"представить всего двумя костями, которые сгибаются, чтобы достичь цели. Этот "
"решатель более легкий, чем [SkeletonModification2DFABRIK], но дает похожие, "
"естественно выглядящие результаты."

msgid ""
"Returns the [Bone2D] node that is being used as the first bone in the "
"TwoBoneIK modification."
msgstr ""
"Возвращает узел [Bone2D], который используется в качестве первой кости в "
"модификации TwoBoneIK."

msgid ""
"Returns the index of the [Bone2D] node that is being used as the first bone "
"in the TwoBoneIK modification."
msgstr ""
"Возвращает индекс узла [Bone2D], который используется в качестве первой кости "
"в модификации TwoBoneIK."

msgid ""
"Returns the [Bone2D] node that is being used as the second bone in the "
"TwoBoneIK modification."
msgstr ""
"Возвращает узел [Bone2D], который используется как вторая кость в модификации "
"TwoBoneIK."

msgid ""
"Returns the index of the [Bone2D] node that is being used as the second bone "
"in the TwoBoneIK modification."
msgstr ""
"Возвращает индекс узла [Bone2D], который используется в качестве второй кости "
"в модификации TwoBoneIK."

msgid ""
"Sets the [Bone2D] node that is being used as the first bone in the TwoBoneIK "
"modification."
msgstr ""
"Устанавливает узел [Bone2D], который используется в качестве первой кости в "
"модификации TwoBoneIK."

msgid ""
"Sets the index of the [Bone2D] node that is being used as the first bone in "
"the TwoBoneIK modification."
msgstr ""
"Устанавливает индекс узла [Bone2D], который используется в качестве первой "
"кости в модификации TwoBoneIK."

msgid ""
"Sets the [Bone2D] node that is being used as the second bone in the TwoBoneIK "
"modification."
msgstr ""
"Устанавливает узел [Bone2D], который используется в качестве второй кости в "
"модификации TwoBoneIK."

msgid ""
"Sets the index of the [Bone2D] node that is being used as the second bone in "
"the TwoBoneIK modification."
msgstr ""
"Устанавливает индекс узла [Bone2D], который используется в качестве второй "
"кости в модификации TwoBoneIK."

msgid ""
"If [code]true[/code], the bones in the modification will bend outward as "
"opposed to inwards when contracting. If [code]false[/code], the bones will "
"bend inwards when contracting."
msgstr ""
"Если [code]true[/code], кости в модификации будут изгибаться наружу, а не "
"внутрь при сокращении. Если [code]false[/code], кости будут изгибаться внутрь "
"при сокращении."

msgid ""
"The maximum distance the target can be at. If the target is farther than this "
"distance, the modification will solve as if it's at this maximum distance. "
"When set to [code]0[/code], the modification will solve without distance "
"constraints."
msgstr ""
"Максимальное расстояние, на котором может находиться цель. Если цель "
"находится дальше этого расстояния, модификация будет решаться так, как будто "
"она находится на этом максимальном расстоянии. Если установлено значение "
"[code]0[/code], модификация будет решаться без ограничений по расстоянию."

msgid ""
"The minimum distance the target can be at. If the target is closer than this "
"distance, the modification will solve as if it's at this minimum distance. "
"When set to [code]0[/code], the modification will solve without distance "
"constraints."
msgstr ""
"Минимальное расстояние, на котором может находиться цель. Если цель находится "
"ближе этого расстояния, модификация будет решаться так, как будто она "
"находится на этом минимальном расстоянии. Если установлено значение [code]0[/"
"code], модификация будет решаться без ограничений по расстоянию."

msgid ""
"The NodePath to the node that is the target for the TwoBoneIK modification. "
"This node is what the modification will use when bending the [Bone2D] nodes."
msgstr ""
"NodePath к узлу, который является целью модификации TwoBoneIK. Этот узел "
"будет использоваться модификацией при изгибе узлов [Bone2D]."

msgid "A resource that holds a stack of [SkeletonModification2D]s."
msgstr "Ресурс, содержащий стек [SkeletonModification2D]."

msgid ""
"This resource is used by the Skeleton and holds a stack of "
"[SkeletonModification2D]s.\n"
"This controls the order of the modifications and how they are applied. "
"Modification order is especially important for full-body IK setups, as you "
"need to execute the modifications in the correct order to get the desired "
"results. For example, you want to execute a modification on the spine "
"[i]before[/i] the arms on a humanoid skeleton.\n"
"This resource also controls how strongly all of the modifications are applied "
"to the [Skeleton2D]."
msgstr ""
"Этот ресурс используется Скелетом и содержит стек [SkeletonModification2D].\n"
"Он управляет порядком модификаций и тем, как они применяются. Порядок "
"модификаций особенно важен для настроек IK всего тела, так как вам нужно "
"выполнить модификации в правильном порядке, чтобы получить желаемые "
"результаты. Например, вы хотите выполнить модификацию позвоночника [i]перед[/"
"i] руками гуманоидного скелета.\n"
"Этот ресурс также управляет тем, насколько сильно все модификации применяются "
"к [Skeleton2D]."

msgid "Adds the passed-in [SkeletonModification2D] to the stack."
msgstr "Добавляет переданный [SkeletonModification2D] в стек."

msgid ""
"Deletes the [SkeletonModification2D] at the index position [param mod_idx], "
"if it exists."
msgstr ""
"Удаляет [SkeletonModification2D] в позиции индекса [param mod_idx], если он "
"существует."

msgid "Enables all [SkeletonModification2D]s in the stack."
msgstr "Включает все [SkeletonModification2D] в стеке."

msgid ""
"Executes all of the [SkeletonModification2D]s in the stack that use the same "
"execution mode as the passed-in [param execution_mode], starting from index "
"[code]0[/code] to [member modification_count].\n"
"[b]Note:[/b] The order of the modifications can matter depending on the "
"modifications. For example, modifications on a spine should operate before "
"modifications on the arms in order to get proper results."
msgstr ""
"Выполняет все [SkeletonModification2D] в стеке, которые используют тот же "
"режим выполнения, что и переданный [param execution_mode], начиная с индекса "
"[code]0[/code] до [member modification_count].\n"
"[b]Примечание:[/b] Порядок модификаций может иметь значение в зависимости от "
"модификаций. Например, модификации позвоночника должны выполняться до "
"модификаций рук, чтобы получить правильные результаты."

msgid ""
"Returns a boolean that indicates whether the modification stack is setup and "
"can execute."
msgstr ""
"Возвращает логическое значение, указывающее, настроен ли стек модификации и "
"может ли он быть выполнен."

msgid ""
"Returns the [SkeletonModification2D] at the passed-in index, [param mod_idx]."
msgstr ""
"Возвращает [SkeletonModification2D] по переданному индексу [param mod_idx]."

msgid ""
"Returns the [Skeleton2D] node that the SkeletonModificationStack2D is bound "
"to."
msgstr ""
"Возвращает узел [Skeleton2D], к которому привязан SkeletonModificationStack2D."

msgid ""
"Sets the modification at [param mod_idx] to the passed-in modification, "
"[param modification]."
msgstr ""
"Устанавливает модификацию в [param mod_idx] на переданную модификацию [param "
"modification]."

msgid ""
"Sets up the modification stack so it can execute. This function should be "
"called by [Skeleton2D] and shouldn't be manually called unless you know what "
"you are doing."
msgstr ""
"Настраивает стек модификации, чтобы он мог выполняться. Эта функция должна "
"вызываться [Skeleton2D] и не должна вызываться вручную, если вы не знаете, "
"что делаете."

msgid ""
"If [code]true[/code], the modification's in the stack will be called. This is "
"handled automatically through the [Skeleton2D] node."
msgstr ""
"Если [code]true[/code], то будут вызваны модификации в стеке. Это "
"обрабатывается автоматически через узел [Skeleton2D]."

msgid "The number of modifications in the stack."
msgstr "Количество модификаций в стеке."

msgid ""
"The interpolation strength of the modifications in stack. A value of [code]0[/"
"code] will make it where the modifications are not applied, a strength of "
"[code]0.5[/code] will be half applied, and a strength of [code]1[/code] will "
"allow the modifications to be fully applied and override the [Skeleton2D] "
"[Bone2D] poses."
msgstr ""
"Сила интерполяции модификаций в стеке. Значение [code]0[/code] сделает так, "
"что модификации не будут применены, сила [code]0.5[/code] будет применена "
"наполовину, а сила [code]1[/code] позволит модификациям быть примененными "
"полностью и переопределить позы [Skeleton2D] [Bone2D]."

msgid "A node that may modify a Skeleton3D's bones."
msgstr "Узел, который может модифицировать кости Skeleton3D."

msgid ""
"[SkeletonModifier3D] retrieves a target [Skeleton3D] by having a [Skeleton3D] "
"parent.\n"
"If there is an [AnimationMixer], a modification always performs after "
"playback process of the [AnimationMixer].\n"
"This node should be used to implement custom IK solvers, constraints, or "
"skeleton physics."
msgstr ""
"[SkeletonModifier3D] извлекает целевой [Skeleton3D], имея родителя "
"[Skeleton3D].\n"
"Если есть [AnimationMixer], модификация всегда выполняется после процесса "
"воспроизведения [AnimationMixer].\n"
"Этот узел следует использовать для реализации пользовательских решателей IK, "
"ограничений или физики скелета."

msgid "Design of the Skeleton Modifier 3D"
msgstr "Проектирование скелетного модификатора 3D"

msgid "Use [method _process_modification_with_delta] instead."
msgstr "Вместо этого используйте [method _process_modification_with_delta]."

msgid ""
"Override this virtual method to implement a custom skeleton modifier. You "
"should do things like get the [Skeleton3D]'s current pose and apply the pose "
"here.\n"
"[method _process_modification] must not apply [member influence] to bone "
"poses because the [Skeleton3D] automatically applies influence to all bone "
"poses set by the modifier."
msgstr ""
"Переопределите этот виртуальный метод, чтобы реализовать пользовательский "
"модификатор скелета. Вам следует сделать что-то вроде получения текущей позы "
"[Skeleton3D] и применить позу здесь.\n"
"[method _process_modification] не должен применять [member influence] к позам "
"костей, поскольку [Skeleton3D] автоматически применяет влияние ко всем позам "
"костей, заданным модификатором."

msgid ""
"Override this virtual method to implement a custom skeleton modifier. You "
"should do things like get the [Skeleton3D]'s current pose and apply the pose "
"here.\n"
"[method _process_modification_with_delta] must not apply [member influence] "
"to bone poses because the [Skeleton3D] automatically applies influence to all "
"bone poses set by the modifier.\n"
"[param delta] is passed from parent [Skeleton3D]. See also [method "
"Skeleton3D.advance]."
msgstr ""
"Переопределите этот виртуальный метод для реализации пользовательского "
"модификатора скелета. Вам следует сделать что-то вроде получения текущей позы "
"[Skeleton3D] и применить позу здесь.\n"
"[method _process_modification_with_delta] не должен применять [member "
"influence] к позам костей, поскольку [Skeleton3D] автоматически применяет "
"влияние ко всем позам костей, заданным модификатором.\n"
"[param delta] передается из родительского [Skeleton3D]. См. также [method "
"Skeleton3D.advance]."

msgid "Called when the skeleton is changed."
msgstr "Вызывается при изменении скелета."

msgid ""
"Called when bone name and index need to be validated such as the timing of "
"the entering tree or changing skeleton."
msgstr ""
"Вызывается, когда необходимо проверить имя и индекс кости, например, время "
"входа в дерево или изменение скелета."

msgid "Get parent [Skeleton3D] node if found."
msgstr "Получить родительский узел [Skeleton3D], если он найден."

msgid "If [code]true[/code], the [SkeletonModifier3D] will be processing."
msgstr "Если [code]true[/code], то [SkeletonModifier3D] будет обработан."

msgid ""
"Sets the influence of the modification.\n"
"[b]Note:[/b] This value is used by [Skeleton3D] to blend, so the "
"[SkeletonModifier3D] should always apply only 100% of the result without "
"interpolation."
msgstr ""
"Устанавливает влияние модификации.\n"
"[b]Примечание:[/b] Это значение используется [Skeleton3D] для смешивания, "
"поэтому [SkeletonModifier3D] всегда должен применять только 100% результата "
"без интерполяции."

msgid ""
"Notifies when the modification have been finished.\n"
"[b]Note:[/b] If you want to get the modified bone pose by the modifier, you "
"must use [method Skeleton3D.get_bone_pose] or [method "
"Skeleton3D.get_bone_global_pose] at the moment this signal is fired."
msgstr ""
"Уведомляет о завершении модификации.\n"
"[b]Примечание:[/b] Если вы хотите получить измененную позу кости "
"модификатором, вы должны использовать [method Skeleton3D.get_bone_pose] или "
"[method Skeleton3D.get_bone_global_pose] в момент срабатывания этого сигнала."

msgid "Enumerated value for the +X axis."
msgstr "Перечисленное значение для оси +X."

msgid "Enumerated value for the -X axis."
msgstr "Перечисленное значение для оси -X."

msgid "Enumerated value for the +Y axis."
msgstr "Перечисленное значение для оси +Y."

msgid "Enumerated value for the -Y axis."
msgstr "Перечисленное значение для оси -Y."

msgid "Enumerated value for the +Z axis."
msgstr "Перечисленное значение для оси +Z."

msgid "Enumerated value for the -Z axis."
msgstr "Перечисленное значение для оси -Z."

msgid ""
"Base class for a profile of a virtual skeleton used as a target for "
"retargeting."
msgstr ""
"Базовый класс для профиля виртуального скелета, используемого в качестве цели "
"для перенацеливания."

msgid ""
"This resource is used in [EditorScenePostImport]. Some parameters are "
"referring to bones in [Skeleton3D], [Skin], [Animation], and some other nodes "
"are rewritten based on the parameters of [SkeletonProfile].\n"
"[b]Note:[/b] These parameters need to be set only when creating a custom "
"profile. In [SkeletonProfileHumanoid], they are defined internally as read-"
"only values."
msgstr ""
"Этот ресурс используется в [EditorScenePostImport]. Некоторые параметры "
"ссылаются на кости в [Skeleton3D], [Skin], [Animation], а некоторые другие "
"узлы переписываются на основе параметров [SkeletonProfile].\n"
"[b]Примечание:[/b] Эти параметры необходимо устанавливать только при создании "
"пользовательского профиля. В [SkeletonProfileHumanoid] они определены "
"внутренне как значения, доступные только для чтения."

msgid "Returns the bone index that matches [param bone_name] as its name."
msgstr "Возвращает индекс кости, имя которого совпадает с [param bone_name]."

msgid ""
"Returns the name of the bone at [param bone_idx] that will be the key name in "
"the [BoneMap].\n"
"In the retargeting process, the returned bone name is the bone name of the "
"target skeleton."
msgstr ""
"Возвращает имя кости в [param bone_idx], которое будет ключевым именем в "
"[BoneMap].\n"
"В процессе перенацеливания возвращаемое имя кости является именем кости "
"целевого скелета."

msgid ""
"Returns the name of the bone which is the parent to the bone at [param "
"bone_idx]. The result is empty if the bone has no parent."
msgstr ""
"Возвращает имя кости, которая является родителем кости в [param bone_idx]. "
"Результат пустой, если у кости нет родителя."

msgid ""
"Returns the name of the bone which is the tail of the bone at [param "
"bone_idx]."
msgstr ""
"Возвращает имя кости, которая является хвостом кости по адресу [param "
"bone_idx]."

msgid "Returns the group of the bone at [param bone_idx]."
msgstr "Возвращает группу кости по параметру [param bone_idx]."

msgid ""
"Returns the name of the group at [param group_idx] that will be the drawing "
"group in the [BoneMap] editor."
msgstr ""
"Возвращает имя группы в [param group_idx], которая будет группой рисования в "
"редакторе [BoneMap]."

msgid ""
"Returns the offset of the bone at [param bone_idx] that will be the button "
"position in the [BoneMap] editor.\n"
"This is the offset with origin at the top left corner of the square."
msgstr ""
"Возвращает смещение кости в [param bone_idx], которое будет позицией кнопки в "
"редакторе [BoneMap].\n"
"Это смещение с началом в левом верхнем углу квадрата."

msgid "Returns the reference pose transform for bone [param bone_idx]."
msgstr "Возвращает преобразование опорной позы для кости [param bone_idx]."

msgid "Returns the tail direction of the bone at [param bone_idx]."
msgstr "Возвращает направление хвоста кости в [param bone_idx]."

msgid ""
"Returns the texture of the group at [param group_idx] that will be the "
"drawing group background image in the [BoneMap] editor."
msgstr ""
"Возвращает текстуру группы в [param group_idx], которая будет фоновым "
"изображением группы рисования в редакторе [BoneMap]."

msgid ""
"Returns whether the bone at [param bone_idx] is required for retargeting.\n"
"This value is used by the bone map editor. If this method returns [code]true[/"
"code], and no bone is assigned, the handle color will be red on the bone map "
"editor."
msgstr ""
"Возвращает, требуется ли кость в [param bone_idx] для перенацеливания.\n"
"Это значение используется редактором карты костей. Если этот метод возвращает "
"[code]true[/code] и кость не назначена, цвет ручки будет красным в редакторе "
"карты костей."

msgid ""
"Sets the name of the bone at [param bone_idx] that will be the key name in "
"the [BoneMap].\n"
"In the retargeting process, the setting bone name is the bone name of the "
"target skeleton."
msgstr ""
"Устанавливает имя кости в [param bone_idx], которое будет ключевым именем в "
"[BoneMap].\n"
"В процессе перенацеливания имя кости настройки — это имя кости целевого "
"скелета."

msgid ""
"Sets the bone with name [param bone_parent] as the parent of the bone at "
"[param bone_idx]. If an empty string is passed, then the bone has no parent."
msgstr ""
"Устанавливает кость с именем [param bone_parent] как родительскую для кости с "
"[param bone_idx]. Если передана пустая строка, то у кости нет родителя."

msgid ""
"Sets the bone with name [param bone_tail] as the tail of the bone at [param "
"bone_idx]."
msgstr ""
"Устанавливает кость с именем [param bone_tail] в качестве хвоста кости с "
"координатами [param bone_idx]."

msgid "Sets the group of the bone at [param bone_idx]."
msgstr "Устанавливает группу кости в [param bone_idx]."

msgid ""
"Sets the name of the group at [param group_idx] that will be the drawing "
"group in the [BoneMap] editor."
msgstr ""
"Задает имя группы в [param group_idx], которая будет группой рисования в "
"редакторе [BoneMap]."

msgid ""
"Sets the offset of the bone at [param bone_idx] that will be the button "
"position in the [BoneMap] editor.\n"
"This is the offset with origin at the top left corner of the square."
msgstr ""
"Устанавливает смещение кости в [param bone_idx], которое будет позицией "
"кнопки в редакторе [BoneMap].\n"
"Это смещение с началом в левом верхнем углу квадрата."

msgid "Sets the reference pose transform for bone [param bone_idx]."
msgstr "Устанавливает преобразование опорной позы для кости [param bone_idx]."

msgid "Sets the required status for bone [param bone_idx] to [param required]."
msgstr ""
"Устанавливает требуемый статус для кости [param bone_idx] на [param required]."

msgid ""
"Sets the tail direction of the bone at [param bone_idx].\n"
"[b]Note:[/b] This only specifies the method of calculation. The actual "
"coordinates required should be stored in an external skeleton, so the "
"calculation itself needs to be done externally."
msgstr ""
"Устанавливает направление хвоста кости в [param bone_idx].\n"
"[b]Примечание:[/b] Это только указывает метод расчета. Фактические требуемые "
"координаты должны храниться во внешнем скелете, поэтому сам расчет должен "
"выполняться извне."

msgid ""
"Sets the texture of the group at [param group_idx] that will be the drawing "
"group background image in the [BoneMap] editor."
msgstr ""
"Устанавливает текстуру группы в [param group_idx], которая будет фоновым "
"изображением группы рисования в редакторе [BoneMap]."

msgid ""
"The amount of bones in retargeting section's [BoneMap] editor. For example, "
"[SkeletonProfileHumanoid] has 56 bones.\n"
"The size of elements in [BoneMap] updates when changing this property in it's "
"assigned [SkeletonProfile]."
msgstr ""
"Количество костей в редакторе [BoneMap] раздела перенацеливания. Например, "
"[SkeletonProfileHumanoid] имеет 56 костей.\n"
"Размер элементов в [BoneMap] обновляется при изменении этого свойства в "
"назначенном ему [SkeletonProfile]."

msgid ""
"The amount of groups of bones in retargeting section's [BoneMap] editor. For "
"example, [SkeletonProfileHumanoid] has 4 groups.\n"
"This property exists to separate the bone list into several sections in the "
"editor."
msgstr ""
"Количество групп костей в редакторе [BoneMap] раздела перенацеливания. "
"Например, [SkeletonProfileHumanoid] имеет 4 группы.\n"
"Это свойство существует для разделения списка костей на несколько разделов в "
"редакторе."

msgid ""
"A bone name that will be used as the root bone in [AnimationTree]. This "
"should be the bone of the parent of hips that exists at the world origin."
msgstr ""
"Имя кости, которая будет использоваться как корневая кость в [AnimationTree]. "
"Это должна быть кость родителя бедер, которая существует в начале координат "
"мира."

msgid ""
"A bone name which will use model's height as the coefficient for "
"normalization. For example, [SkeletonProfileHumanoid] defines it as "
"[code]Hips[/code]."
msgstr ""
"Имя кости, которое будет использовать высоту модели как коэффициент для "
"нормализации. Например, [SkeletonProfileHumanoid] определяет ее как "
"[code]Hips[/code]."

msgid ""
"This signal is emitted when change the value in profile. This is used to "
"update key name in the [BoneMap] and to redraw the [BoneMap] editor.\n"
"[b]Note:[/b] This signal is not connected directly to editor to simplify the "
"reference, instead it is passed on to editor through the [BoneMap]."
msgstr ""
"Этот сигнал выдается при изменении значения в профиле. Он используется для "
"обновления имени ключа в [BoneMap] и перерисовки редактора [BoneMap].\n"
"[b]Примечание:[/b] Этот сигнал не подключен напрямую к редактору для "
"упрощения ссылки, вместо этого он передается редактору через [BoneMap]."

msgid "Direction to the average coordinates of bone children."
msgstr "Направление к средним координатам костных детей."

msgid "Direction to the coordinates of specified bone child."
msgstr "Направление к координатам указанного ребенка кости."

msgid "Direction is not calculated."
msgstr "Направление не рассчитано."

msgid "A humanoid [SkeletonProfile] preset."
msgstr "Предустановка гуманоида [SkeletonProfile]."

msgid ""
"A [SkeletonProfile] as a preset that is optimized for the human form. This "
"exists for standardization, so all parameters are read-only.\n"
"A humanoid skeleton profile contains 54 bones divided in 4 groups: [code]"
"\"Body\"[/code], [code]\"Face\"[/code], [code]\"LeftHand\"[/code], and [code]"
"\"RightHand\"[/code]. It is structured as follows:\n"
"[codeblock lang=text]\n"
"Root\n"
"└─ Hips\n"
"    ├─ LeftUpperLeg\n"
"    │  └─ LeftLowerLeg\n"
"    │     └─ LeftFoot\n"
"    │        └─ LeftToes\n"
"    ├─ RightUpperLeg\n"
"    │  └─ RightLowerLeg\n"
"    │     └─ RightFoot\n"
"    │        └─ RightToes\n"
"    └─ Spine\n"
"        └─ Chest\n"
"            └─ UpperChest\n"
"                ├─ Neck\n"
"                │   └─ Head\n"
"                │       ├─ Jaw\n"
"                │       ├─ LeftEye\n"
"                │       └─ RightEye\n"
"                ├─ LeftShoulder\n"
"                │  └─ LeftUpperArm\n"
"                │     └─ LeftLowerArm\n"
"                │        └─ LeftHand\n"
"                │           ├─ LeftThumbMetacarpal\n"
"                │           │  └─ LeftThumbProximal\n"
"                │           │    └─ LeftThumbDistal\n"
"                │           ├─ LeftIndexProximal\n"
"                │           │  └─ LeftIndexIntermediate\n"
"                │           │    └─ LeftIndexDistal\n"
"                │           ├─ LeftMiddleProximal\n"
"                │           │  └─ LeftMiddleIntermediate\n"
"                │           │    └─ LeftMiddleDistal\n"
"                │           ├─ LeftRingProximal\n"
"                │           │  └─ LeftRingIntermediate\n"
"                │           │    └─ LeftRingDistal\n"
"                │           └─ LeftLittleProximal\n"
"                │              └─ LeftLittleIntermediate\n"
"                │                └─ LeftLittleDistal\n"
"                └─ RightShoulder\n"
"                   └─ RightUpperArm\n"
"                      └─ RightLowerArm\n"
"                         └─ RightHand\n"
"                            ├─ RightThumbMetacarpal\n"
"                            │  └─ RightThumbProximal\n"
"                            │     └─ RightThumbDistal\n"
"                            ├─ RightIndexProximal\n"
"                            │  └─ RightIndexIntermediate\n"
"                            │     └─ RightIndexDistal\n"
"                            ├─ RightMiddleProximal\n"
"                            │  └─ RightMiddleIntermediate\n"
"                            │     └─ RightMiddleDistal\n"
"                            ├─ RightRingProximal\n"
"                            │  └─ RightRingIntermediate\n"
"                            │     └─ RightRingDistal\n"
"                            └─ RightLittleProximal\n"
"                               └─ RightLittleIntermediate\n"
"                                 └─ RightLittleDistal\n"
"[/codeblock]"
msgstr ""
"[SkeletonProfile] как предустановка, оптимизированная для человеческой формы. "
"Она существует для стандартизации, поэтому все параметры доступны только для "
"чтения.\n"
"Профиль скелета гуманоида содержит 54 кости, разделенные на 4 группы: [code]"
"\"Body\"[/code], [code]\"Face\"[/code], [code]\"LeftHand\"[/code], и [code]"
"\"RightHand\"[/code]. Он структурирован следующим образом:\n"
"[codeblock lang=text]\n"
"Root\n"
"└─ Hips\n"
"    ├─ LeftUpperLeg\n"
"    │  └─ LeftLowerLeg\n"
"    │     └─ LeftFoot\n"
"    │        └─ LeftToes\n"
"    ├─ RightUpperLeg\n"
"    │  └─ RightLowerLeg\n"
"    │     └─ RightFoot\n"
"    │        └─ RightToes\n"
"    └─ Spine\n"
"        └─ Chest\n"
"            └─ UpperChest\n"
"                ├─ Neck\n"
"                │   └─ Head\n"
"                │       ├─ Jaw\n"
"                │       ├─ LeftEye\n"
"                │       └─ RightEye\n"
"                ├─ LeftShoulder\n"
"                │  └─ LeftUpperArm\n"
"                │     └─ LeftLowerArm\n"
"                │        └─ LeftHand\n"
"                │           ├─ LeftThumbMetacarpal\n"
"                │           │  └─ LeftThumbProximal\n"
"                │           │    └─ LeftThumbDistal\n"
"                │           ├─ LeftIndexProximal\n"
"                │           │  └─ LeftIndexIntermediate\n"
"                │           │    └─ LeftIndexDistal\n"
"                │           ├─ LeftMiddleProximal\n"
"                │           │  └─ LeftMiddleIntermediate\n"
"                │           │    └─ LeftMiddleDistal\n"
"                │           ├─ LeftRingProximal\n"
"                │           │  └─ LeftRingIntermediate\n"
"                │           │    └─ LeftRingDistal\n"
"                │           └─ LeftLittleProximal\n"
"                │              └─ LeftLittleIntermediate\n"
"                │                └─ LeftLittleDistal\n"
"                └─ RightShoulder\n"
"                   └─ RightUpperArm\n"
"                      └─ RightLowerArm\n"
"                         └─ RightHand\n"
"                            ├─ RightThumbMetacarpal\n"
"                            │  └─ RightThumbProximal\n"
"                            │     └─ RightThumbDistal\n"
"                            ├─ RightIndexProximal\n"
"                            │  └─ RightIndexIntermediate\n"
"                            │     └─ RightIndexDistal\n"
"                            ├─ RightMiddleProximal\n"
"                            │  └─ RightMiddleIntermediate\n"
"                            │     └─ RightMiddleDistal\n"
"                            ├─ RightRingProximal\n"
"                            │  └─ RightRingIntermediate\n"
"                            │     └─ RightRingDistal\n"
"                            └─ RightLittleProximal\n"
"                               └─ RightLittleIntermediate\n"
"                                 └─ RightLittleDistal\n"
"[/codeblock]"

msgid ""
"A reference-counted holder object for a skeleton RID used in the "
"[RenderingServer]."
msgstr ""
"Объект-держатель с подсчетом ссылок для скелетного RID, используемого в "
"[RenderingServer]."

msgid ""
"An internal object containing a mapping from a [Skin] used within the context "
"of a particular [MeshInstance3D] to refer to the skeleton's [RID] in the "
"RenderingServer.\n"
"See also [method MeshInstance3D.get_skin_reference] and [method "
"RenderingServer.instance_attach_skeleton].\n"
"Note that despite the similar naming, the skeleton RID used in the "
"[RenderingServer] does not have a direct one-to-one correspondence to a "
"[Skeleton3D] node.\n"
"In particular, a [Skeleton3D] node with no [MeshInstance3D] children may be "
"unknown to the [RenderingServer].\n"
"On the other hand, a [Skeleton3D] with multiple [MeshInstance3D] nodes which "
"each have different [member MeshInstance3D.skin] objects may have multiple "
"SkinReference instances (and hence, multiple skeleton [RID]s)."
msgstr ""
"Внутренний объект, содержащий сопоставление из [Skin], используемый в "
"контексте конкретного [MeshInstance3D] для ссылки на [RID] скелета в "
"RenderingServer.\n"
"См. также [method MeshInstance3D.get_skin_reference] и [method "
"RenderingServer.instance_attach_skeleton].\n"
"Обратите внимание, что несмотря на схожее наименование, RID скелета, "
"используемый в [RenderingServer], не имеет прямого однозначного соответствия "
"узлу [Skeleton3D].\n"
"В частности, узел [Skeleton3D] без дочерних элементов [MeshInstance3D] может "
"быть неизвестен [RenderingServer].\n"
"С другой стороны, [Skeleton3D] с несколькими узлами [MeshInstance3D], каждый "
"из которых имеет различные объекты [member MeshInstance3D.skin], может иметь "
"несколько экземпляров SkinReference (и, следовательно, несколько скелетных "
"[RID])."

msgid ""
"Returns the [RID] owned by this SkinReference, as returned by [method "
"RenderingServer.skeleton_create]."
msgstr ""
"Возвращает [RID], принадлежащий данному SkinReference, возвращаемый [method "
"RenderingServer.skeleton_create]."

msgid ""
"Returns the [Skin] connected to this SkinReference. In the case of "
"[MeshInstance3D] with no [member MeshInstance3D.skin] assigned, this will "
"reference an internal default [Skin] owned by that [MeshInstance3D].\n"
"Note that a single [Skin] may have more than one [SkinReference] in the case "
"that it is shared by meshes across multiple [Skeleton3D] nodes."
msgstr ""
"Возвращает [Skin], подключенный к этой SkinReference. В случае "
"[MeshInstance3D] без назначенного [member MeshInstance3D.skin] это будет "
"ссылаться на внутренний [Skin] по умолчанию, принадлежащий этому "
"[MeshInstance3D].\n"
"Обратите внимание, что один [Skin] может иметь более одного [SkinReference] в "
"случае, если он используется сетками в нескольких узлах [Skeleton3D]."

msgid "Defines a 3D environment's background by using a [Material]."
msgstr "Определяет фон трехмерной среды с помощью [Material]."

msgid ""
"The [Sky] class uses a [Material] to render a 3D environment's background and "
"the light it emits by updating the reflection/radiance cubemaps."
msgstr ""
"Класс [Sky] использует [Material] для визуализации фона трехмерной среды и "
"света, который она излучает, путем обновления кубических карт отражения/"
"сияния."

msgid ""
"The method for generating the radiance map from the sky. The radiance map is "
"a cubemap with increasingly blurry versions of the sky corresponding to "
"different levels of roughness. Radiance maps can be expensive to calculate."
msgstr ""
"Метод генерации карты сияния из неба. Карта сияния представляет собой "
"кубическую карту с все более размытыми версиями неба, соответствующими "
"различным уровням шероховатости. Карты сияния могут быть дорогими для расчета."

msgid ""
"The [Sky]'s radiance map size. The higher the radiance map size, the more "
"detailed the lighting from the [Sky] will be.\n"
"[b]Note:[/b] Some hardware will have trouble with higher radiance sizes, "
"especially [constant RADIANCE_SIZE_512] and above. Only use such high values "
"on high-end hardware."
msgstr ""
"Размер карты сияния [Sky]. Чем больше размер карты сияния, тем более "
"подробным будет освещение от [Sky].\n"
"[b]Примечание:[/b] У некоторого оборудования могут возникнуть проблемы с "
"более высокими размерами сияния, особенно [constant RADIANCE_SIZE_512] и "
"выше. Используйте такие высокие значения только на высокопроизводительном "
"оборудовании."

msgid ""
"[Material] used to draw the background. Can be [PanoramaSkyMaterial], "
"[ProceduralSkyMaterial], [PhysicalSkyMaterial], or even a [ShaderMaterial] if "
"you want to use your own custom shader."
msgstr ""
"[Material] используется для рисования фона. Может быть [PanoramaSkyMaterial], "
"[ProceduralSkyMaterial], [PhysicalSkyMaterial] или даже [ShaderMaterial], "
"если вы хотите использовать свой собственный шейдер."

msgid "Radiance texture size is 32×32 pixels."
msgstr "Размер текстуры Radiance составляет 32×32 пикселя."

msgid "Radiance texture size is 64×64 pixels."
msgstr "Размер текстуры Radiance составляет 64×64 пикселя."

msgid "Radiance texture size is 128×128 pixels."
msgstr "Размер текстуры Radiance составляет 128×128 пикселей."

msgid "Radiance texture size is 256×256 pixels."
msgstr "Размер текстуры Radiance составляет 256×256 пикселей."

msgid "Radiance texture size is 512×512 pixels."
msgstr "Размер текстуры Radiance составляет 512×512 пикселей."

msgid "Radiance texture size is 1024×1024 pixels."
msgstr "Размер текстуры Radiance составляет 1024×1024 пикселей."

msgid "Radiance texture size is 2048×2048 pixels."
msgstr "Размер текстуры Radiance составляет 2048×2048 пикселей."

msgid "Represents the size of the [enum RadianceSize] enum."
msgstr "Представляет размер перечисления [enum RadianceSize]."

msgid ""
"Automatically selects the appropriate process mode based on your sky shader. "
"If your shader uses [code]TIME[/code] or [code]POSITION[/code], this will use "
"[constant PROCESS_MODE_REALTIME]. If your shader uses any of the "
"[code]LIGHT_*[/code] variables or any custom uniforms, this uses [constant "
"PROCESS_MODE_INCREMENTAL]. Otherwise, this defaults to [constant "
"PROCESS_MODE_QUALITY]."
msgstr ""
"Автоматически выбирает подходящий режим обработки на основе вашего шейдера "
"неба. Если ваш шейдер использует [code]TIME[/code] или [code]POSITION[/code], "
"это будет использовать [constant PROCESS_MODE_REALTIME]. Если ваш шейдер "
"использует любую из переменных [code]LIGHT_*[/code] или любые "
"пользовательские униформы, это будет использовать [constant "
"PROCESS_MODE_INCREMENTAL]. В противном случае это по умолчанию [constant "
"PROCESS_MODE_QUALITY]."

msgid ""
"Uses high quality importance sampling to process the radiance map. In "
"general, this results in much higher quality than [constant "
"PROCESS_MODE_REALTIME] but takes much longer to generate. This should not be "
"used if you plan on changing the sky at runtime. If you are finding that the "
"reflection is not blurry enough and is showing sparkles or fireflies, try "
"increasing [member ProjectSettings.rendering/reflections/sky_reflections/"
"ggx_samples]."
msgstr ""
"Использует выборку важности высокого качества для обработки карты сияния. В "
"целом, это приводит к гораздо более высокому качеству, чем [constant "
"PROCESS_MODE_REALTIME], но генерация занимает гораздо больше времени. Это не "
"следует использовать, если вы планируете изменять небо во время выполнения. "
"Если вы обнаружите, что отражение недостаточно размыто и показывает искры или "
"светлячков, попробуйте увеличить [member ProjectSettings.rendering/"
"reflections/sky_reflections/ggx_samples]."

msgid ""
"Uses the same high quality importance sampling to process the radiance map as "
"[constant PROCESS_MODE_QUALITY], but updates over several frames. The number "
"of frames is determined by [member ProjectSettings.rendering/reflections/"
"sky_reflections/roughness_layers]. Use this when you need highest quality "
"radiance maps, but have a sky that updates slowly."
msgstr ""
"Использует ту же выборку высокого качества важности для обработки карты "
"сияния, что и [constant PROCESS_MODE_QUALITY], но обновляет в течение "
"нескольких кадров. Количество кадров определяется [member "
"ProjectSettings.rendering/reflections/sky_reflections/roughness_layers]. "
"Используйте это, когда вам нужны карты сияния самого высокого качества, но у "
"вас есть небо, которое медленно обновляется."

msgid ""
"Uses the fast filtering algorithm to process the radiance map. In general "
"this results in lower quality, but substantially faster run times. If you "
"need better quality, but still need to update the sky every frame, consider "
"turning on [member ProjectSettings.rendering/reflections/sky_reflections/"
"fast_filter_high_quality].\n"
"[b]Note:[/b] The fast filtering algorithm is limited to 256×256 cubemaps, so "
"[member radiance_size] must be set to [constant RADIANCE_SIZE_256]. "
"Otherwise, a warning is printed and the overridden radiance size is ignored."
msgstr ""
"Использует алгоритм быстрой фильтрации для обработки карты сияния. В целом "
"это приводит к снижению качества, но существенному ускорению времени "
"выполнения. Если вам нужно лучшее качество, но при этом нужно обновлять небо "
"в каждом кадре, рассмотрите возможность включения [member "
"ProjectSettings.rendering/reflections/sky_reflections/"
"fast_filter_high_quality].\n"
"[b]Примечание:[/b] Алгоритм быстрой фильтрации ограничен кубическими картами "
"256×256, поэтому [member radiance_size] должен быть установлен на [constant "
"RADIANCE_SIZE_256]. В противном случае выводится предупреждение, а "
"переопределенный размер сияния игнорируется."

msgid "Abstract base class for sliders."
msgstr "Абстрактный базовый класс для ползунков."

msgid ""
"Abstract base class for sliders, used to adjust a value by moving a grabber "
"along a horizontal or vertical axis. Sliders are [Range]-based controls."
msgstr ""
"Абстрактный базовый класс для ползунков, используемых для регулировки "
"значения путем перемещения захвата вдоль горизонтальной или вертикальной оси. "
"Ползунки — это элементы управления на основе [Range]."

msgid ""
"If [code]true[/code], the slider can be interacted with. If [code]false[/"
"code], the value can be changed only by code."
msgstr ""
"Если [code]true[/code], с ползунком можно взаимодействовать. Если "
"[code]false[/code], значение можно изменить только с помощью кода."

msgid "If [code]true[/code], the value can be changed using the mouse wheel."
msgstr ""
"Если [code]true[/code], значение можно изменить с помощью колесика мыши."

msgid ""
"Number of ticks displayed on the slider, including border ticks. Ticks are "
"uniformly-distributed value markers."
msgstr ""
"Количество отметок, отображаемых на ползунке, включая отметки границ. Отметки "
"— это равномерно распределенные маркеры значений."

msgid ""
"If [code]true[/code], the slider will display ticks for minimum and maximum "
"values."
msgstr ""
"Если [code]true[/code], ползунок отобразит отметки для минимальных и "
"максимальных значений."

msgid "Sets the position of the ticks. See [enum TickPosition] for details."
msgstr "Задаёт положение делений. Подробности см. в [enum TickPosition]."

msgid ""
"Emitted when the grabber stops being dragged. If [param value_changed] is "
"[code]true[/code], [member Range.value] is different from the value when the "
"dragging was started."
msgstr ""
"Выдается, когда перестает перетаскиваться граббер. Если [param value_changed] "
"равно [code]true[/code], [member Range.value] отличается от значения, когда "
"перетаскивание было начато."

msgid ""
"Emitted when the grabber starts being dragged. This is emitted before the "
"corresponding [signal Range.value_changed] signal."
msgstr ""
"Выдается, когда начинается перетаскивание захвата. Выдается перед "
"соответствующим сигналом [signal Range.value_changed]."

msgid ""
"Places the ticks at the bottom of the [HSlider], or right of the [VSlider]."
msgstr "Размещает галочки внизу [HSlider] или справа от [VSlider]."

msgid "Places the ticks at the top of the [HSlider], or left of the [VSlider]."
msgstr "Размещает галочки в верхней части [HSlider] или слева от [VSlider]."

msgid "Places the ticks at the both sides of the slider."
msgstr "Устанавливает галочки по обеим сторонам ползунка."

msgid "Places the ticks at the center of the slider."
msgstr "Размещает галочки в центре ползунка."

msgid ""
"Boolean constant. If [code]1[/code], the grabber texture size will be ignored "
"and it will fit within slider's bounds based only on its center position."
msgstr ""
"Булева константа. Если [code]1[/code], размер текстуры граббера будет "
"проигнорирован, и он будет вписываться в границы ползунка, основываясь только "
"на его центральном положении."

msgid "Vertical or horizontal offset of the grabber."
msgstr "Вертикальное или горизонтальное смещение захвата."

msgid ""
"Vertical or horizontal offset of the ticks. The offset is reversed for top or "
"left ticks."
msgstr ""
"Вертикальное или горизонтальное смещение делений. Смещение обратное для "
"верхних или левых делений."

msgid "The texture for the grabber (the draggable element)."
msgstr "Текстура для захвата (перетаскиваемого элемента)."

msgid "The texture for the grabber when it's disabled."
msgstr "Текстура для граббера, когда он отключен."

msgid "The texture for the grabber when it's focused."
msgstr "Текстура для захвата, когда он сфокусирован."

msgid ""
"The texture for the ticks, visible when [member Slider.tick_count] is greater "
"than 0."
msgstr ""
"Текстура для тактов, видимая, когда [member Slider.tick_count] больше 0."

msgid "The background of the area to the left or bottom of the grabber."
msgstr "Фон области слева или снизу от граббера."

msgid ""
"The background of the area to the left or bottom of the grabber that displays "
"when it's being hovered or focused."
msgstr ""
"Фон области слева или снизу от захвата, который отображается при наведении на "
"него курсора или фокусировке."

msgid ""
"The background for the whole slider. Affects the height or width of the "
"[theme_item grabber_area]."
msgstr ""
"Фон для всего слайдера. Влияет на высоту или ширину [theme_item grabber_area]."

msgid ""
"A physics joint that restricts the movement of a 3D physics body along an "
"axis relative to another physics body."
msgstr ""
"Физический сустав, ограничивающий движение трехмерного физического тела вдоль "
"оси относительно другого физического тела."

msgid ""
"A physics joint that restricts the movement of a 3D physics body along an "
"axis relative to another physics body. For example, Body A could be a "
"[StaticBody3D] representing a piston base, while Body B could be a "
"[RigidBody3D] representing the piston head, moving up and down."
msgstr ""
"Физический сустав, ограничивающий движение трехмерного физического тела вдоль "
"оси относительно другого физического тела. Например, тело A может быть "
"[StaticBody3D], представляющим основание поршня, в то время как тело B может "
"быть [RigidBody3D], представляющим головку поршня, движущуюся вверх и вниз."

msgid "Returns the value of the given parameter."
msgstr "Возвращает значение указанного параметра."

msgid "Assigns [param value] to the given parameter."
msgstr "Присваивает [param value] указанному параметру."

msgid ""
"The amount of damping of the rotation when the limit is surpassed.\n"
"A lower damping value allows a rotation initiated by body A to travel to body "
"B slower."
msgstr ""
"Величина затухания вращения при превышении предела.\n"
"Более низкое значение затухания позволяет вращению, инициированному телом A, "
"медленнее распространяться на тело B."

msgid ""
"The amount of restitution of the rotation when the limit is surpassed.\n"
"Does not affect damping."
msgstr ""
"Величина восстановления вращения при превышении предела.\n"
"Не влияет на затухание."

msgid ""
"A factor applied to the all rotation once the limit is surpassed.\n"
"Makes all rotation slower when between 0 and 1."
msgstr ""
"Коэффициент, применяемый ко всему вращению после превышения предела.\n"
"Делает все вращение медленнее, если находится в диапазоне от 0 до 1."

msgid "A factor applied to the all rotation in the limits."
msgstr "Фактор, применяемый ко всем вращениям в пределах лимитов."

msgid ""
"A factor applied to the all rotation across axes orthogonal to the slider."
msgstr ""
"Фактор, применяемый ко всем вращениям вдоль осей, ортогональных слайдеру."

msgid ""
"The amount of damping that happens once the limit defined by [member "
"linear_limit/lower_distance] and [member linear_limit/upper_distance] is "
"surpassed."
msgstr ""
"Количество затухания, которое происходит после превышения предела, "
"определенного [member linear_limit/lower_distance] и [member linear_limit/"
"upper_distance]."

msgid ""
"Constant for accessing [member linear_limit/upper_distance]. The maximum "
"difference between the pivot points on their X axis before damping happens."
msgstr ""
"Константа для доступа к [member linear_limit/upper_distance]. Максимальная "
"разница между точками поворота на их оси X до того, как произойдет "
"амортизация."

msgid ""
"Constant for accessing [member linear_limit/lower_distance]. The minimum "
"difference between the pivot points on their X axis before damping happens."
msgstr ""
"Константа для доступа к [member linear_limit/lower_distance]. Минимальная "
"разница между точками поворота на их оси X до того, как произойдет "
"амортизация."

msgid ""
"Constant for accessing [member linear_limit/softness]. A factor applied to "
"the movement across the slider axis once the limits get surpassed. The lower, "
"the slower the movement."
msgstr ""
"Константа для доступа к [member linear_limit/softness]. Фактор, применяемый к "
"движению по оси ползунка после превышения пределов. Чем ниже, тем медленнее "
"движение."

msgid ""
"Constant for accessing [member linear_limit/restitution]. The amount of "
"restitution once the limits are surpassed. The lower, the more velocity-"
"energy gets lost."
msgstr ""
"Константа для доступа к [member linear_limit/restitution]. Величина "
"восстановления после превышения пределов. Чем ниже, тем больше теряется "
"энергия скорости."

msgid ""
"Constant for accessing [member linear_limit/damping]. The amount of damping "
"once the slider limits are surpassed."
msgstr ""
"Константа для доступа к [member linear_limit/damping]. Величина затухания "
"после превышения пределов ползунка."

msgid ""
"Constant for accessing [member linear_motion/softness]. A factor applied to "
"the movement across the slider axis as long as the slider is in the limits. "
"The lower, the slower the movement."
msgstr ""
"Константа для доступа к [member linear_motion/softness]. Фактор, применяемый "
"к движению по оси ползунка, пока ползунок находится в пределах. Чем ниже, тем "
"медленнее движение."

msgid ""
"Constant for accessing [member linear_motion/restitution]. The amount of "
"restitution inside the slider limits."
msgstr ""
"Константа для доступа к [member linear_motion/restitution]. Величина "
"восстановления в пределах ползунка."

msgid ""
"Constant for accessing [member linear_motion/damping]. The amount of damping "
"inside the slider limits."
msgstr ""
"Константа для доступа к [member linear_motion/damping]. Величина "
"демпфирования внутри пределов ползунка."

msgid ""
"Constant for accessing [member linear_ortho/softness]. A factor applied to "
"the movement across axes orthogonal to the slider."
msgstr ""
"Константа для доступа к [member linear_ortho/softness]. Коэффициент, "
"применяемый к движению по осям, перпендикулярным ползунку."

msgid ""
"Constant for accessing [member linear_motion/restitution]. The amount of "
"restitution when movement is across axes orthogonal to the slider."
msgstr ""
"Константа для доступа к [member linear_motion/restitution]. Величина "
"восстановления, когда движение происходит по осям, перпендикулярным ползунку."

msgid ""
"Constant for accessing [member linear_motion/damping]. The amount of damping "
"when movement is across axes orthogonal to the slider."
msgstr ""
"Константа для доступа к [member linear_motion/damping]. Величина "
"демпфирования при движении по осям, перпендикулярным ползунку."

msgid ""
"Constant for accessing [member angular_limit/upper_angle]. The upper limit of "
"rotation in the slider."
msgstr ""
"Константа для доступа к [member angular_limit/upper_angle]. Верхний предел "
"поворота в ползунке."

msgid ""
"Constant for accessing [member angular_limit/lower_angle]. The lower limit of "
"rotation in the slider."
msgstr ""
"Константа для доступа к [member angular_limit/lower_angle]. Нижний предел "
"поворота в ползунке."

msgid ""
"Constant for accessing [member angular_limit/softness]. A factor applied to "
"the all rotation once the limit is surpassed."
msgstr ""
"Константа для доступа к [member angular_limit/softness]. Фактор, применяемый "
"ко всем вращениям после превышения предела."

msgid ""
"Constant for accessing [member angular_limit/restitution]. The amount of "
"restitution of the rotation when the limit is surpassed."
msgstr ""
"Константа для доступа к [member angular_limit/restitution]. Величина "
"восстановления вращения при превышении предела."

msgid ""
"Constant for accessing [member angular_limit/damping]. The amount of damping "
"of the rotation when the limit is surpassed."
msgstr ""
"Константа для доступа к [member angular_limit/damping]. Величина амортизации "
"вращения при превышении предела."

msgid ""
"Constant for accessing [member angular_motion/softness]. A factor applied to "
"the all rotation in the limits."
msgstr ""
"Константа для доступа к [member angular_motion/softness]. Фактор, применяемый "
"ко всем вращениям в пределах."

msgid ""
"Constant for accessing [member angular_motion/restitution]. The amount of "
"restitution of the rotation in the limits."
msgstr ""
"Константа для доступа к [member angular_motion/restitution]. Величина "
"восстановления вращения в пределах."

msgid ""
"Constant for accessing [member angular_motion/damping]. The amount of damping "
"of the rotation in the limits."
msgstr ""
"Константа для доступа к [member angular_motion/damping]. Величина амортизации "
"вращения в пределах."

msgid ""
"Constant for accessing [member angular_ortho/softness]. A factor applied to "
"the all rotation across axes orthogonal to the slider."
msgstr ""
"Константа для доступа к [member angular_ortho/softness]. Коэффициент, "
"применяемый ко всем вращениям по осям, перпендикулярным ползунку."

msgid ""
"Constant for accessing [member angular_ortho/restitution]. The amount of "
"restitution of the rotation across axes orthogonal to the slider."
msgstr ""
"Константа для доступа к [member angular_ortho/restitution]. Величина "
"восстановления вращения по осям, перпендикулярным ползунку."

msgid ""
"Constant for accessing [member angular_ortho/damping]. The amount of damping "
"of the rotation across axes orthogonal to the slider."
msgstr ""
"Константа для доступа к [member angular_ortho/damping]. Величина "
"демпфирования вращения по осям, перпендикулярным ползунку."

msgid "A deformable 3D physics mesh."
msgstr "Деформируемая 3D физическая сетка."

msgid ""
"A deformable 3D physics mesh. Used to create elastic or deformable objects "
"such as cloth, rubber, or other flexible materials.\n"
"Additionally, [SoftBody3D] is subject to wind forces defined in [Area3D] (see "
"[member Area3D.wind_source_path], [member Area3D.wind_force_magnitude], and "
"[member Area3D.wind_attenuation_factor]).\n"
"[b]Note:[/b] It's recommended to use Jolt Physics when using [SoftBody3D] "
"instead of the default GodotPhysics3D, as Jolt Physics' soft body "
"implementation is faster and more reliable. You can switch the physics engine "
"using the [member ProjectSettings.physics/3d/physics_engine] project setting."
msgstr ""
"Деформируемая 3D-физическая сетка. Используется для создания эластичных или "
"деформируемых объектов, таких как ткань, резина или другие гибкие материалы.\n"
"Кроме того, [SoftBody3D] подвержен влиянию сил ветра, определенных в [Area3D] "
"(см. [member Area3D.wind_source_path], [member Area3D.wind_force_magnitude] и "
"[member Area3D.wind_attenuation_factor]).\n"
"[b]Примечание:[/b] Рекомендуется использовать Jolt Physics при использовании "
"[SoftBody3D] вместо GodotPhysics3D по умолчанию, так как реализация мягкого "
"тела Jolt Physics быстрее и надежнее. Вы можете переключить физический движок "
"с помощью настройки проекта [member ProjectSettings.physics/3d/"
"physics_engine]."

msgid "SoftBody"
msgstr "SoftBody"

msgid "Returns the internal [RID] used by the [PhysicsServer3D] for this body."
msgstr ""
"Возвращает внутренний [RID], используемый [PhysicsServer3D] для этого тела."

msgid "Returns local translation of a vertex in the surface array."
msgstr "Возвращает локальное смещение вершины в массиве поверхности."

msgid "Returns [code]true[/code] if vertex is set to pinned."
msgstr ""
"Возвращает [code]true[/code], если вершина установлена в закрепленное "
"состояние."

msgid ""
"Sets the pinned state of a surface vertex. When set to [code]true[/code], the "
"optional [param attachment_path] can define a [Node3D] the pinned vertex will "
"be attached to."
msgstr ""
"Устанавливает состояние закрепления вершины поверхности. Когда установлено "
"значение [code]true[/code], необязательный параметр [param attachment_path] "
"может определить [Node3D], к которому будет прикреплена закрепленная вершина."

msgid ""
"The physics layers this SoftBody3D [b]is in[/b]. Collision objects can exist "
"in one or more of 32 different layers. See also [member collision_mask].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"Физические слои этого SoftBody3D[b]is in[/b] (находится в). Коллизионные "
"объекты могут существовать в одном или нескольких из 32 различных слоев. См. "
"также [member collision_mask].\n"
"[b]Примечание:[/b] Объект A может обнаружить контакт с объектом B только в "
"том случае, если объект B находится в любом из слоев, которые сканирует "
"объект A. Дополнительную информацию см. в разделе [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Слои и маски "
"столкновений.[/url] в документации."

msgid ""
"The physics layers this SoftBody3D [b]scans[/b]. Collision objects can scan "
"one or more of 32 different layers. See also [member collision_layer].\n"
"[b]Note:[/b] Object A can detect a contact with object B only if object B is "
"in any of the layers that object A scans. See [url=$DOCS_URL/tutorials/"
"physics/physics_introduction.html#collision-layers-and-masks]Collision layers "
"and masks[/url] in the documentation for more information."
msgstr ""
"Физические слои этого SoftBody3D [b]scans[/b]. Коллизионные объекты могут "
"сканировать один или несколько из 32 различных слоев. Смотрите также [member "
"collision_layer].\n"
"[b]Примечание:[/b] Объект A может обнаружить контакт с объектом B только если "
"объект B находится в любом из слоев, которые сканирует объект A. "
"Дополнительную информацию можно посмотреть в документации, перейдя по ссылке "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Collision layers and masks[/url]."

msgid ""
"The body's damping coefficient. Higher values will slow down the body more "
"noticeably when forces are applied."
msgstr ""
"Коэффициент демпфирования тела. Более высокие значения будут более заметно "
"замедлять тело при приложении сил."

msgid ""
"The body's drag coefficient. Higher values increase this body's air "
"resistance.\n"
"[b]Note:[/b] This value is currently unused by Godot's default physics "
"implementation."
msgstr ""
"Коэффициент сопротивления тела. Более высокие значения увеличивают "
"сопротивление воздуха этого тела.\n"
"[b]Примечание:[/b] Это значение в настоящее время не используется реализацией "
"физики Godot по умолчанию."

msgid ""
"Higher values will result in a stiffer body, while lower values will increase "
"the body's ability to bend. The value can be between [code]0.0[/code] and "
"[code]1.0[/code] (inclusive)."
msgstr ""
"Более высокие значения приведут к более жесткому телу, а более низкие "
"значения повысят способность тела гнуться. Значение может быть в диапазоне от "
"[code] 0.0 [/code] до [code] 1.0 [/code] (включительно)."

msgid ""
"[NodePath] to a [CollisionObject3D] this SoftBody3D should avoid clipping."
msgstr ""
"[NodePath] к [CollisionObject3D], из которого SoftBody3D должен избегать "
"пересечения."

msgid ""
"The pressure coefficient of this soft body. Simulate pressure build-up from "
"inside this body. Higher values increase the strength of this effect."
msgstr ""
"Коэффициент давления этого мягкого тела. Имитирует нарастание давления "
"изнутри этого тела. Более высокие значения увеличивают силу этого эффекта."

msgid "If [code]true[/code], the [SoftBody3D] will respond to [RayCast3D]s."
msgstr "Если [code]true[/code], [SoftBody3D] будет реагировать на [RayCast3D]."

msgid ""
"Scales the rest lengths of [SoftBody3D]'s edge constraints. Positive values "
"shrink the mesh, while negative values expand it. For example, a value of "
"[code]0.1[/code] shortens the edges of the mesh by 10%, while [code]-0.1[/"
"code] expands the edges by 10%.\n"
"[b]Note:[/b] [member shrinking_factor] is best used on surface meshes with "
"pinned points."
msgstr ""
"Масштабирует оставшиеся длины ограничений ребер [SoftBody3D]. Положительные "
"значения сжимают сетку, а отрицательные расширяют ее. Например, значение "
"[code]0.1[/code] сокращает края сетки на 10%, а [code]-0.1[/code] расширяет "
"края на 10%.\n"
"[b]Примечание:[/b] [member shrinking_factor] лучше всего использовать на "
"поверхностных сетках с закрепленными точками."

msgid ""
"Increasing this value will improve the resulting simulation, but can affect "
"performance. Use with care."
msgstr ""
"Увеличение этого значения улучшит результаты моделирования, но может повлиять "
"на производительность. Используйте с осторожностью."

msgid "The SoftBody3D's mass."
msgstr "Масса SoftBody3D."

msgid ""
"When [member Node.process_mode] is set to [constant "
"Node.PROCESS_MODE_DISABLED], remove from the physics simulation to stop all "
"physics interactions with this [SoftBody3D].\n"
"Automatically re-added to the physics simulation when the [Node] is processed "
"again."
msgstr ""
"Когда [member Node.process_mode] установлен в [constant "
"Node.PROCESS_MODE_DISABLED], объект [SoftBody3D] удаляется из физического "
"моделирования, чтобы остановить все физические взаимодействия с ним.\n"
"Автоматически добавляется обратно в физическое моделирование, когда [Node] "
"обрабатывается снова."

msgid "Class representing a spherical [PrimitiveMesh]."
msgstr "Класс, представляющий собой сферическую [PrimitiveMesh]."

msgid "Full height of the sphere."
msgstr "Полная высота сферы."

msgid ""
"If [code]true[/code], a hemisphere is created rather than a full sphere.\n"
"[b]Note:[/b] To get a regular hemisphere, the height and radius of the sphere "
"must be equal."
msgstr ""
"Если [code]true[/code], создается полушарие вместо полной сферы.\n"
"[b]Примечание:[/b] Чтобы получить обычное полушарие, высота и радиус сферы "
"должны быть равны."

msgid "Number of radial segments on the sphere."
msgstr "Количество радиальных сегментов на сфере."

msgid "Radius of sphere."
msgstr "Радиус сферы."

msgid "Number of segments along the height of the sphere."
msgstr "Количество сегментов вдоль высоты сферы."

msgid "Spherical shape for use with occlusion culling in [OccluderInstance3D]."
msgstr ""
"Сферическая форма для использования с отсечением окклюзии в "
"[OccluderInstance3D]."

msgid ""
"[SphereOccluder3D] stores a sphere shape that can be used by the engine's "
"occlusion culling system.\n"
"See [OccluderInstance3D]'s documentation for instructions on setting up "
"occlusion culling."
msgstr ""
"[SphereOccluder3D] хранит сферическую форму, которая может быть использована "
"системой отсечения окклюзии движка.\n"
"См. документацию [OccluderInstance3D] для инструкций по настройке отсечения "
"окклюзии."

msgid "The sphere's radius in 3D units."
msgstr "Радиус сферы в 3D единицах."

msgid "A 3D sphere shape used for physics collision."
msgstr "Форма 3D сферы, используемая для физических столкновений."

msgid ""
"A 3D sphere shape, intended for use in physics. Usually used to provide a "
"shape for a [CollisionShape3D].\n"
"[b]Performance:[/b] [SphereShape3D] is fast to check collisions against. It "
"is faster than [BoxShape3D], [CapsuleShape3D], and [CylinderShape3D]."
msgstr ""
"Форма 3D сферы, предназначенная для использования в физике. Обычно "
"используется для предоставления формы для [CollisionShape3D].\n"
"[b]Производительность:[/b] [SphereShape3D] быстро проверяет коллизии. Он "
"быстрее, чем [BoxShape3D], [CapsuleShape3D] и [CylinderShape3D]."

msgid "The sphere's radius. The shape's diameter is double the radius."
msgstr "Радиус сферы. Диаметр формы вдвое больше радиуса."

msgid "An input field for numbers."
msgstr "Поле ввода чисел."

msgid ""
"[SpinBox] is a numerical input text field. It allows entering integers and "
"floating-point numbers. The [SpinBox] also has up and down buttons that can "
"be clicked increase or decrease the value. The value can also be changed by "
"dragging the mouse up or down over the [SpinBox]'s arrows.\n"
"Additionally, mathematical expressions can be entered. These are evaluated "
"when the user presses [kbd]Enter[/kbd] while editing the [SpinBox]'s text "
"field. This uses the [Expression] class to parse and evaluate the expression. "
"The result of the expression is then set as the value of the [SpinBox]. Some "
"examples of valid expressions are [code]5 + 2 * 3[/code], [code]pow(2, 4)[/"
"code], and [code]PI + sin(0.5)[/code]. Expressions are case-sensitive.\n"
"[b]Example:[/b] Create a [SpinBox], disable its context menu and set its text "
"alignment to right.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var spin_box = SpinBox.new()\n"
"add_child(spin_box)\n"
"var line_edit = spin_box.get_line_edit()\n"
"line_edit.context_menu_enabled = false\n"
"spin_box.horizontal_alignment = LineEdit.HORIZONTAL_ALIGNMENT_RIGHT\n"
"[/gdscript]\n"
"[csharp]\n"
"var spinBox = new SpinBox();\n"
"AddChild(spinBox);\n"
"var lineEdit = spinBox.GetLineEdit();\n"
"lineEdit.ContextMenuEnabled = false;\n"
"spinBox.AlignHorizontal = LineEdit.HorizontalAlignEnum.Right;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"See [Range] class for more options over the [SpinBox].\n"
"[b]Note:[/b] With the [SpinBox]'s context menu disabled, you can right-click "
"the bottom half of the spinbox to set the value to its minimum, while right-"
"clicking the top half sets the value to its maximum.\n"
"[b]Note:[/b] [SpinBox] relies on an underlying [LineEdit] node. To theme a "
"[SpinBox]'s background, add theme items for [LineEdit] and customize them. "
"The [LineEdit] has the [code]SpinBoxInnerLineEdit[/code] theme variation, so "
"that you can give it a distinct appearance from regular [LineEdit]s.\n"
"[b]Note:[/b] If you want to implement drag and drop for the underlying "
"[LineEdit], you can use [method Control.set_drag_forwarding] on the node "
"returned by [method get_line_edit]."
msgstr ""
"[[SpinBox] — это числовое текстовое поле ввода. Оно позволяет вводить целые "
"числа и числа с плавающей точкой. [SpinBox] также имеет кнопки вверх и вниз, "
"которые можно нажимать для увеличения или уменьшения значения. Значение также "
"можно изменить, перетаскивая мышь вверх или вниз по стрелкам [SpinBox].\n"
"Кроме того, можно вводить математические выражения. Они вычисляются, когда "
"пользователь нажимает [kbd]Enter[/kbd] во время редактирования текстового "
"поля [SpinBox]. При этом используется класс [Expression] для анализа и оценки "
"выражения. Затем результат выражения устанавливается как значение [SpinBox]. "
"Вот некоторые примеры допустимых выражений: [code]5 + 2 * 3[/code], "
"[code]pow(2, 4)[/code] и [code]PI + sin(0.5)[/code]. Выражения чувствительны "
"к регистру.\n"
"[b]Пример:[/b] Создайте [SpinBox], отключите его контекстное меню и "
"установите выравнивание текста по правому краю.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var spin_box = SpinBox.new()\n"
"add_child(spin_box)\n"
"var line_edit = spin_box.get_line_edit()\n"
"line_edit.context_menu_enabled = false\n"
"spin_box.horizontal_alignment = LineEdit.HORIZONTAL_ALIGNMENT_RIGHT\n"
"[/gdscript]\n"
"[csharp]\n"
"var spinBox = new SpinBox();\n"
"AddChild(spinBox);\n"
"var lineEdit = spinBox.GetLineEdit();\n"
"lineEdit.ContextMenuEnabled = false;\n"
"spinBox.AlignHorizontal = LineEdit.HorizontalAlignEnum.Right;\n"
"[/csharp]\n"
"[/codeblocks]\n"
"См. класс [Range] для получения дополнительных параметров по сравнению с "
"[SpinBox].\n"
"[b]Примечание:[/b] При отключенном контекстном меню [SpinBox] вы можете "
"щелкнуть правой кнопкой мыши по нижней половине счетчика, чтобы установить "
"минимальное значение, а щелчок правой кнопкой мыши по верхней половине "
"устанавливает максимальное значение.\n"
"[b]Примечание:[/b] [SpinBox] опирается на базовый узел [LineEdit]. Чтобы "
"задать тему фона [SpinBox], добавьте элементы темы для [LineEdit] и настройте "
"их. [LineEdit] имеет вариацию темы [code]SpinBoxInnerLineEdit[/code], так что "
"вы можете придать ему отличный внешний вид от обычных [LineEdit].\n"
"[b]Примечание:[/b] Если вы хотите реализовать перетаскивание для базового "
"[LineEdit], вы можете использовать [method Control.set_drag_forwarding] на "
"узле, возвращаемом [method get_line_edit]."

msgid ""
"Applies the current value of this [SpinBox]. This is equivalent to pressing "
"[kbd]Enter[/kbd] while editing the [LineEdit] used by the [SpinBox]. This "
"will cause [signal LineEdit.text_submitted] to be emitted and its currently "
"contained expression to be evaluated."
msgstr ""
"Применяет текущее значение этого [SpinBox]. Это эквивалентно нажатию "
"[kbd]Enter[/kbd] во время редактирования [LineEdit], используемого [SpinBox]. "
"Это приведет к испусканию [signal LineEdit.text_submitted] и оценке его "
"текущего содержащегося выражения."

msgid ""
"Returns the [LineEdit] instance from this [SpinBox]. You can use it to access "
"properties and methods of [LineEdit].\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member CanvasItem.visible] property."
msgstr ""
"Возвращает экземпляр [LineEdit] из этого [SpinBox]. Вы можете использовать "
"его для доступа к свойствам и методам [LineEdit].\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, удаление и "
"освобождение которого может привести к сбою. Если вы хотите скрыть его или "
"любого из его дочерних элементов, используйте свойство [member "
"CanvasItem.visible]."

msgid "Changes the alignment of the underlying [LineEdit]."
msgstr "Изменяет выравнивание базового [LineEdit]."

msgid ""
"If not [code]0[/code], sets the step when interacting with the arrow buttons "
"of the [SpinBox].\n"
"[b]Note:[/b] [member Range.value] will still be rounded to a multiple of "
"[member Range.step]."
msgstr ""
"Если не [code]0[/code], задает шаг при взаимодействии с кнопками со стрелками "
"[SpinBox].\n"
"[b]Примечание:[/b] [member Range.value] по-прежнему будет округляться до "
"значения, кратного [member Range.step]."

msgid ""
"If [code]true[/code], the [SpinBox] will be editable. Otherwise, it will be "
"read only."
msgstr ""
"Если [code]true[/code], [SpinBox] будет доступен для редактирования. В "
"противном случае он будет только для чтения."

msgid ""
"Adds the specified prefix string before the numerical value of the [SpinBox]."
msgstr "Добавляет указанную строку префикса перед числовым значением [SpinBox]."

msgid ""
"If [code]true[/code], the [SpinBox] will select the whole text when the "
"[LineEdit] gains focus. Clicking the up and down arrows won't trigger this "
"behavior."
msgstr ""
"Если [code]true[/code], [SpinBox] будет выбирать весь текст, когда [LineEdit] "
"получает фокус. Нажатие на кнопки вверх и вниз не вызовет это поведение."

msgid ""
"Adds the specified suffix string after the numerical value of the [SpinBox]."
msgstr "Добавляет указанную строку суффикса после числового значения [SpinBox]."

msgid ""
"Sets the value of the [Range] for this [SpinBox] when the [LineEdit] text is "
"[i]changed[/i] instead of [i]submitted[/i]. See [signal "
"LineEdit.text_changed] and [signal LineEdit.text_submitted].\n"
"[b]Note:[/b] If set to [code]true[/code], this will interfere with entering "
"mathematical expressions in the [SpinBox]. The [SpinBox] will try to evaluate "
"the expression as you type, which means symbols like a trailing [code]+[/"
"code] are removed immediately by the expression being evaluated."
msgstr ""
"Устанавливает значение [Range] для этого [SpinBox], когда текст [LineEdit] "
"[i]изменен[/i] а не [i]отправлен[/i]. См. [signal LineEdit.text_changed] и "
"[signal LineEdit.text_submitted].\n"
"[b]Примечание:[/b] Если установлено значение [code]true[/code], это помешает "
"вводу математических выражений в [SpinBox]. [SpinBox] попытается вычислить "
"выражение по мере ввода, что означает, что символы, такие как завершающий "
"[code]+[/code], немедленно удаляются вычисляемым выражением."

msgid "Down button icon modulation color, when the button is disabled."
msgstr "Цвет модуляции значка кнопки «вниз», когда кнопка отключена."

msgid "Down button icon modulation color, when the button is hovered."
msgstr "Цвет модуляции значка кнопки «вниз» при наведении на кнопку."

msgid "Down button icon modulation color."
msgstr "Цвет модуляции значка кнопки «вниз»."

msgid "Down button icon modulation color, when the button is being pressed."
msgstr "Цвет модуляции значка кнопки «вниз» при нажатии кнопки."

msgid "Up button icon modulation color, when the button is disabled."
msgstr "Цвет модуляции значка кнопки «Вверх», когда кнопка отключена."

msgid "Up button icon modulation color, when the button is hovered."
msgstr "Цвет модуляции значка кнопки «Вверх» при наведении на кнопку."

msgid "Up button icon modulation color."
msgstr "Цвет модуляции значка кнопки «Вверх»."

msgid "Up button icon modulation color, when the button is being pressed."
msgstr "Цвет модуляции значка кнопки «Вверх» при нажатии кнопки."

msgid "Vertical separation between the up and down buttons."
msgstr "Вертикальное разделение между кнопками «вверх» и «вниз»."

msgid ""
"Width of the up and down buttons. If smaller than any icon set on the "
"buttons, the respective icon may overlap neighboring elements. If smaller "
"than [code]0[/code], the width is automatically adjusted from the icon size."
msgstr ""
"Ширина кнопок вверх и вниз. Если меньше любого значка, установленного на "
"кнопках, соответствующий значок может перекрывать соседние элементы. Если "
"меньше [code]0[/code], ширина автоматически подстраивается под размер значка."

msgid ""
"Width of the horizontal separation between the text input field ([LineEdit]) "
"and the buttons."
msgstr ""
"Ширина горизонтального разделения между полем ввода текста ([LineEdit]) и "
"кнопками."

msgid ""
"This property exists only for compatibility with older themes. Setting "
"[theme_item buttons_width] to a negative value has the same effect."
msgstr ""
"Это свойство существует только для совместимости со старыми темами. Установка "
"[theme_item buttons_width] на отрицательное значение имеет тот же эффект."

msgid ""
"If not [code]0[/code], the minimum button width corresponds to the widest of "
"all icons set on those buttons, even if [theme_item buttons_width] is smaller."
msgstr ""
"Если не [code]0[/code], минимальная ширина кнопки соответствует самой широкой "
"из всех иконок, установленных на этих кнопках, даже если [theme_item "
"buttons_width] меньше."

msgid ""
"Down button icon, displayed in the middle of the down (value-decreasing) "
"button."
msgstr ""
"Значок кнопки «Вниз», отображаемый в середине кнопки «Вниз» (уменьшение "
"значения)."

msgid "Down button icon when the button is disabled."
msgstr "Значок кнопки «Вниз», когда кнопка отключена."

msgid "Down button icon when the button is hovered."
msgstr "Значок кнопки «Вниз» при наведении на кнопку."

msgid "Down button icon when the button is being pressed."
msgstr "Значок кнопки «Вниз» при нажатии кнопки."

msgid ""
"Up button icon, displayed in the middle of the up (value-increasing) button."
msgstr ""
"Значок кнопки «Вверх», отображаемый в середине кнопки «Вверх» (увеличение "
"значения)."

msgid "Up button icon when the button is disabled."
msgstr "Значок кнопки «Вверх», когда кнопка отключена."

msgid "Up button icon when the button is hovered."
msgstr "Значок кнопки «Вверх» при наведении на кнопку."

msgid "Up button icon when the button is being pressed."
msgstr "Значок кнопки «Вверх» при нажатии кнопки."

msgid "Use [theme_item up] and [theme_item down] instead."
msgstr "Вместо этого используйте [theme_item up] и [theme_item down]."

msgid ""
"Single texture representing both the up and down buttons icons. It is "
"displayed in the middle of the buttons and does not change upon interaction. "
"If a valid icon is assigned, it will replace [theme_item up] and [theme_item "
"down]."
msgstr ""
"Единая текстура, представляющая значки кнопок «вверх» и «вниз». Она "
"отображается посередине кнопок и не меняется при взаимодействии с ними. Если "
"назначен допустимый значок, он заменит [theme_item up] и [theme_item down]."

msgid "Background style of the down button."
msgstr "Стиль фона кнопки «вниз»."

msgid "Background style of the down button when disabled."
msgstr "Стиль фона кнопки «вниз» при отключении."

msgid "Background style of the down button when hovered."
msgstr "Стиль фона кнопки «вниз» при наведении курсора."

msgid "Background style of the down button when being pressed."
msgstr "Стиль фона кнопки «вниз» при нажатии."

msgid ""
"[StyleBox] drawn in the space occupied by the separation between the input "
"field and the buttons."
msgstr ""
"[StyleBox] рисуется в пространстве, занимаемом разделителем между полем ввода "
"и кнопками."

msgid "Background style of the up button."
msgstr "Стиль фона кнопки «вверх»."

msgid "Background style of the up button when disabled."
msgstr "Стиль фона кнопки «вверх» при отключении."

msgid "Background style of the up button when hovered."
msgstr "Стиль фона кнопки «вверх» при наведении курсора."

msgid "Background style of the up button when being pressed."
msgstr "Стиль фона кнопки «вверх» при нажатии."

msgid ""
"[StyleBox] drawn in the space occupied by the separation between the up and "
"down buttons."
msgstr ""
"[StyleBox] рисуется в пространстве, занимаемом разделением между кнопками "
"«вверх» и «вниз»."

msgid ""
"A container that splits two child controls horizontally or vertically and "
"provides a grabber for adjusting the split ratio."
msgstr ""
"Контейнер, который разбивает два дочерних элемента по горизонтали или "
"вертикали и предоставляет захват для настройки отношения разделения."

msgid ""
"A container that accepts only two child controls, then arranges them "
"horizontally or vertically and creates a divisor between them. The divisor "
"can be dragged around to change the size relation between the child controls."
msgstr ""
"Контейнер, который принимает только два дочерних элемента управления, затем "
"размещает их горизонтально или вертикально и создает разделитель между ними. "
"Разделитель можно перетаскивать, чтобы изменить соотношение размеров дочерних "
"элементов управления."

msgid ""
"Clamps the [member split_offset] value to not go outside the currently "
"possible minimal and maximum values."
msgstr ""
"Ограничивает значение [member split_offset], чтобы оно не выходило за пределы "
"текущих возможных минимальных и максимальных значений."

msgid ""
"Returns the drag area [Control]. For example, you can move a pre-configured "
"button into the drag area [Control] so that it rides along with the split "
"bar. Try setting the [Button] anchors to [code]center[/code] prior to the "
"[code]reparent()[/code] call.\n"
"[codeblock]\n"
"$BarnacleButton.reparent($SplitContainer.get_drag_area_control())\n"
"[/codeblock]\n"
"[b]Note:[/b] The drag area [Control] is drawn over the [SplitContainer]'s "
"children, so [CanvasItem] draw objects called from the [Control] and children "
"added to the [Control] will also appear over the [SplitContainer]'s children. "
"Try setting [member Control.mouse_filter] of custom children to [constant "
"Control.MOUSE_FILTER_IGNORE] to prevent blocking the mouse from dragging if "
"desired.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash."
msgstr ""
"Возвращает область перетаскивания [Control]. Например, вы можете переместить "
"предварительно настроенную кнопку в область перетаскивания [Control], чтобы "
"она перемещалась вместе с разделительной полосой. Попробуйте установить якоря "
"[Button] на [code]center[/code] до вызова [code]reparent()[/code].\n"
"[codeblock]\n"
"$BarnacleButton.reparent($SplitContainer.get_drag_area_control())\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Область перетаскивания [Control] рисуется поверх дочерних "
"элементов [SplitContainer], поэтому объекты рисования [CanvasItem], "
"вызываемые из [Control], и дочерние элементы, добавленные в [Control], также "
"будут отображаться поверх дочерних элементов [SplitContainer]. Попробуйте "
"установить [member Control.mouse_filter] пользовательских дочерних элементов "
"на [constant Control.MOUSE_FILTER_IGNORE], чтобы предотвратить блокировку "
"мыши при перетаскивании, если это необходимо.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою."

msgid ""
"If [code]true[/code], the dragger will be disabled and the children will be "
"sized as if the [member split_offset] was [code]0[/code]."
msgstr ""
"Если [code]true[/code], перетаскиватель будет отключен, а дочерние элементы "
"будут иметь такой размер, как если бы [member split_offset] был равен "
"[code]0[/code]."

msgid ""
"Highlights the drag area [Rect2] so you can see where it is during "
"development. The drag area is gold if [member dragging_enabled] is "
"[code]true[/code], and red if [code]false[/code]."
msgstr ""
"Выделяет область перетаскивания [Rect2], чтобы вы могли видеть, где она "
"находится во время разработки. Область перетаскивания золотая, если [member "
"dragging_enabled] равно [code]true[/code], и красная, если [code]false[/code]."

msgid ""
"Reduces the size of the drag area and split bar [theme_item "
"split_bar_background] at the beginning of the container."
msgstr ""
"Уменьшает размер области перетаскивания и разделительной полосы [theme_item "
"split_bar_background] в начале контейнера."

msgid ""
"Reduces the size of the drag area and split bar [theme_item "
"split_bar_background] at the end of the container."
msgstr ""
"Уменьшает размер области перетаскивания и разделительной полосы [theme_item "
"split_bar_background] в конце контейнера."

msgid ""
"Shifts the drag area in the axis of the container to prevent the drag area "
"from overlapping the [ScrollBar] or other selectable [Control] of a child "
"node."
msgstr ""
"Смещает область перетаскивания по оси контейнера, чтобы предотвратить "
"перекрытие области перетаскивания [ScrollBar] или другого выбираемого "
"[Control] дочернего узла."

msgid ""
"Determines the dragger's visibility. This property does not determine whether "
"dragging is enabled or not. Use [member dragging_enabled] for that."
msgstr ""
"Определяет видимость перетаскивателя. Это свойство не определяет, включено ли "
"перетаскивание или нет. Для этого используйте [member dragging_enabled]."

msgid "Enables or disables split dragging."
msgstr "Включает или отключает раздельное перетаскивание."

msgid ""
"The initial offset of the splitting between the two [Control]s, with [code]0[/"
"code] being at the end of the first [Control]."
msgstr ""
"Начальное смещение разделения между двумя [Control], при этом [code]0[/code] "
"находится в конце первого [Control]."

msgid ""
"If [code]true[/code], a touch-friendly drag handle will be enabled for better "
"usability on smaller screens. Unlike the standard grabber, this drag handle "
"overlaps the [SplitContainer]'s children and does not affect their minimum "
"separation. The standard grabber will no longer be drawn when this option is "
"enabled."
msgstr ""
"Если [code]true[/code], сенсорный манипулятор перетаскивания будет включен "
"для лучшего использования на экранах меньшего размера. В отличие от "
"стандартного захвата, этот манипулятор перекрывает дочерние элементы "
"[SplitContainer] и не влияет на их минимальное разделение. Стандартный захват "
"больше не будет отображаться, если эта опция включена."

msgid ""
"If [code]true[/code], the [SplitContainer] will arrange its children "
"vertically, rather than horizontally.\n"
"Can't be changed when using [HSplitContainer] and [VSplitContainer]."
msgstr ""
"Если [code]true[/code], [SplitContainer] расположит свои дочерние элементы "
"вертикально, а не горизонтально.\n"
"Нельзя изменить при использовании [HSplitContainer] и [VSplitContainer]."

msgid "Emitted when the user ends dragging."
msgstr "Генерируется, когда пользователь заканчивает перетаскивание."

msgid "Emitted when the user starts dragging."
msgstr "Генерируется, когда пользователь начинает перетаскивание."

msgid "Emitted when the dragger is dragged by user."
msgstr "Генерируется, когда пользователь перетаскивает курсор."

msgid ""
"The split dragger icon is always visible when [theme_item autohide] is "
"[code]false[/code], otherwise visible only when the cursor hovers it.\n"
"The size of the grabber icon determines the minimum [theme_item separation].\n"
"The dragger icon is automatically hidden if the length of the grabber icon is "
"longer than the split bar."
msgstr ""
"Значок раздельного перетаскивателя всегда виден, когда [theme_item autohide] "
"равно [code]false[/code], в противном случае виден только при наведении "
"курсора на него.\n"
"Размер значка захвата определяет минимальное [theme_item separation].\n"
"Значок перетаскивателя автоматически скрывается, если длина значка захвата "
"больше, чем разделительная полоса."

msgid ""
"The split dragger icon is never visible regardless of the value of "
"[theme_item autohide].\n"
"The size of the grabber icon determines the minimum [theme_item separation]."
msgstr ""
"Значок раздельного перетаскивателя никогда не отображается независимо от "
"значения [theme_item autohide].\n"
"Размер значка перетаскивателя определяет минимальное [theme_item separation]."

msgid ""
"The split dragger icon is not visible, and the split bar is collapsed to zero "
"thickness."
msgstr ""
"Значок перетаскивателя для разделения не отображается, а полоса разделения "
"свернута до нулевой толщины."

msgid "The color of the touch dragger."
msgstr "Цвет сенсорного перетаскивателя."

msgid "The color of the touch dragger when hovered."
msgstr "Цвет сенсорного ползунка при наведении курсора."

msgid "The color of the touch dragger when pressed."
msgstr "Цвет сенсорного ползунка при нажатии."

msgid ""
"Boolean value. If [code]1[/code] ([code]true[/code]), the grabber will hide "
"automatically when it isn't under the cursor. If [code]0[/code] ([code]false[/"
"code]), it's always visible. The [member dragger_visibility] must be "
"[constant DRAGGER_VISIBLE]."
msgstr ""
"Логическое значение. Если [code]1[/code] ([code]true[/code]), захватчик будет "
"автоматически скрываться, когда он не находится под курсором. Если [code]0[/"
"code] ([code]false[/code]), он всегда виден. [Member dragger_visibility] "
"должен быть [constant DRAGGER_VISIBLE]."

msgid ""
"The minimum thickness of the area users can click on to grab the split bar. "
"This ensures that the split bar can still be dragged if [theme_item "
"separation] or [theme_item h_grabber] / [theme_item v_grabber]'s size is too "
"narrow to easily select."
msgstr ""
"Минимальная толщина области, на которую пользователи могут нажать, чтобы "
"захватить разделительную полосу. Это гарантирует, что разделительную полосу "
"все еще можно перетаскивать, если размер [theme_item Separate] или "
"[theme_item h_grabber] / [theme_item v_grabber] слишком узкий для легкого "
"выбора."

msgid ""
"The split bar thickness, i.e., the gap between the two children of the "
"container. This is overridden by the size of the grabber icon if [member "
"dragger_visibility] is set to [constant DRAGGER_VISIBLE], or [constant "
"DRAGGER_HIDDEN], and [theme_item separation] is smaller than the size of the "
"grabber icon in the same axis.\n"
"[b]Note:[/b] To obtain [theme_item separation] values less than the size of "
"the grabber icon, for example a [code]1 px[/code] hairline, set [theme_item "
"h_grabber] or [theme_item v_grabber] to a new [ImageTexture], which "
"effectively sets the grabber icon size to [code]0 px[/code]."
msgstr ""
"Толщина разделительной полосы, т. е. зазор между двумя дочерними элементами "
"контейнера. Это переопределяется размером значка граббера, если [member "
"dragger_visibility] установлен на [constant DRAGGER_VISIBLE] или [constant "
"DRAGGER_HIDDEN], а [theme_item Separate] меньше размера значка граббера на "
"той же оси.\n"
"[b]Примечание:[/b] Чтобы получить значения [theme_item Separate] меньше "
"размера значка граббера, например, [code]1 px[/code] hairline, установите "
"[theme_item h_grabber] или [theme_item v_grabber] на новый [ImageTexture], "
"который фактически устанавливает размер значка граббера на [code]0 px[/code]."

msgid ""
"The icon used for the grabber drawn in the middle area. This is only used in "
"[HSplitContainer] and [VSplitContainer]. For [SplitContainer], see "
"[theme_item h_grabber] and [theme_item v_grabber] instead."
msgstr ""
"Значок, используемый для граббера (перетаскивателя), нарисованного в средней "
"области. Используется только в [HSplitContainer] и [VSplitContainer]. Для "
"[SplitContainer] см. [theme_item h_grabber] и [theme_item v_grabber]."

msgid ""
"The icon used for the grabber drawn in the middle area when [member vertical] "
"is [code]false[/code]."
msgstr ""
"Значок, используемый для захвата, нарисованного в средней области, когда "
"[member vertical] имеет значение [code]false[/code]."

msgid ""
"The icon used for the drag handle when [member touch_dragger_enabled] is "
"[code]true[/code] and [member vertical] is [code]false[/code]."
msgstr ""
"Значок, используемый для маркера перетаскивания, когда [member "
"touch_dragger_enabled] имеет значение [code]true[/code], а [member vertical] "
"имеет значение [code]false[/code]."

msgid ""
"The icon used for the drag handle when [member touch_dragger_enabled] is "
"[code]true[/code]. This is only used in [HSplitContainer] and "
"[VSplitContainer]. For [SplitContainer], see [theme_item h_touch_dragger] and "
"[theme_item v_touch_dragger] instead."
msgstr ""
"Значок, используемый для ручки перетаскивания, когда [member "
"touch_dragger_enabled] равен [code]true[/code]. Используется только в "
"[HSplitContainer] и [VSplitContainer]. Для [SplitContainer] см. [theme_item "
"h_touch_dragger] и [theme_item v_touch_dragger]."

msgid ""
"The icon used for the grabber drawn in the middle area when [member vertical] "
"is [code]true[/code]."
msgstr ""
"Значок, используемый для захвата, нарисованного в средней области, когда "
"[member vertical] имеет значение [code]true[/code]."

msgid ""
"The icon used for the drag handle when [member touch_dragger_enabled] is "
"[code]true[/code] and [member vertical] is [code]true[/code]."
msgstr ""
"Значок, используемый для маркера перетаскивания, когда [member "
"touch_dragger_enabled] имеет значение [code]true[/code] и [member vertical] "
"имеет значение [code]true[/code]."

msgid ""
"Determines the background of the split bar if its thickness is greater than "
"zero."
msgstr "Определяет фон разделенной полосы, если ее толщина больше нуля."

msgid "A spotlight, such as a reflector spotlight or a lantern."
msgstr "Прожектор, например, рефлекторный прожектор или фонарь."

msgid ""
"A Spotlight is a type of [Light3D] node that emits lights in a specific "
"direction, in the shape of a cone. The light is attenuated through the "
"distance. This attenuation can be configured by changing the energy, radius "
"and attenuation parameters of [Light3D].\n"
"Light is emitted in the -Z direction of the node's global basis. For an "
"unrotated light, this means that the light is emitted forwards, illuminating "
"the front side of a 3D model (see [constant Vector3.FORWARD] and [constant "
"Vector3.MODEL_FRONT]).\n"
"[b]Note:[/b] When using the Mobile rendering method, only 8 spot lights can "
"be displayed on each mesh resource. Attempting to display more than 8 spot "
"lights on a single mesh resource will result in spot lights flickering in and "
"out as the camera moves. When using the Compatibility rendering method, only "
"8 spot lights can be displayed on each mesh resource by default, but this can "
"be increased by adjusting [member ProjectSettings.rendering/limits/opengl/"
"max_lights_per_object].\n"
"[b]Note:[/b] When using the Mobile or Compatibility rendering methods, spot "
"lights will only correctly affect meshes whose visibility AABB intersects "
"with the light's AABB. If using a shader to deform the mesh in a way that "
"makes it go outside its AABB, [member GeometryInstance3D.extra_cull_margin] "
"must be increased on the mesh. Otherwise, the light may not be visible on the "
"mesh."
msgstr ""
"Прожектор — это тип узла [Light3D], который излучает свет в определённом "
"направлении в форме конуса. Свет ослабевает с увеличением расстояния. Это "
"ослабление можно настроить, изменив параметры энергии, радиуса и затухания "
"[Light3D].\n"
"Свет излучается в направлении -Z глобального базиса узла. Для невращённого "
"источника света это означает, что свет излучается вперёд, освещая переднюю "
"сторону 3D-модели (см. [constant Vector3.FORWARD] и [constant "
"Vector3.MODEL_FRONT]).\n"
"[b]Примечание:[/b] При использовании метода мобильного рендеринга на каждом "
"ресурсе сетки может отображаться только 8 прожекторов. Попытка отобразить "
"более 8 прожекторов на одном ресурсе сетки приведёт к мерцанию прожекторов "
"при движении камеры. При использовании метода рендеринга Compatibility по "
"умолчанию на каждом ресурсе сетки может отображаться только 8 точечных "
"источников света, но это значение можно увеличить, изменив параметр [member "
"ProjectSettings.rendering/limits/opengl/max_lights_per_object].\n"
"[b]Примечание:[/b] При использовании методов рендеринга Mobile или "
"Compatibility точечные источники света будут корректно воздействовать только "
"на те сетки, видимость которых AABB пересекается с AABB источника света. При "
"использовании шейдера для деформации сетки таким образом, что она выходит за "
"пределы AABB, необходимо увеличить параметр [member "
"GeometryInstance3D.extra_cull_margin] сетки. В противном случае источник "
"света может быть не виден на сетке."

msgid ""
"The spotlight's angle in degrees. This is the angular radius, meaning the "
"angle from the -Z axis, the cone's center, to the edge of the cone. The "
"default angular radius of 45 degrees corresponds to a cone with an angular "
"diameter of 90 degrees.\n"
"[b]Note:[/b] [member spot_angle] is not affected by [member Node3D.scale] "
"(the light's scale or its parent's scale)."
msgstr ""
"Угол прожектора в градусах. Это угловой радиус, то есть угол между осью Z "
"(центром конуса) и его краем. Угловой радиус по умолчанию 45 градусов "
"соответствует конусу с угловым диаметром 90 градусов.\n"
"[b]Примечание:[/b] [member spot_angle] не зависит от [member Node3D.scale] "
"(масштаба источника света или масштаба его родительского объекта)."

msgid ""
"The spotlight's [i]angular[/i] attenuation curve. See also [member "
"spot_attenuation]."
msgstr ""
"[i]Угловая[/i] кривая затухания прожектора. См. также [member "
"spot_attenuation]."

msgid ""
"Controls the distance attenuation function for spotlights.\n"
"A value of [code]0.0[/code] will maintain a constant brightness through most "
"of the range, but smoothly attenuate the light at the edge of the range. Use "
"a value of [code]2.0[/code] for physically accurate lights as it results in "
"the proper inverse square attenutation.\n"
"[b]Note:[/b] Setting attenuation to [code]2.0[/code] or higher may result in "
"distant objects receiving minimal light, even within range. For example, with "
"a range of [code]4096[/code], an object at [code]100[/code] units is "
"attenuated by a factor of [code]0.0001[/code]. With a default brightness of "
"[code]1[/code], the light would not be visible at that distance.\n"
"[b]Note:[/b] Using negative or values higher than [code]10.0[/code] may lead "
"to unexpected results."
msgstr ""
"Управляет функцией затухания на расстоянии для прожекторов.\n"
"Значение [code]0.0[/code] будет поддерживать постоянную яркость на протяжении "
"большей части диапазона, но плавно ослаблять свет на краю диапазона. "
"Используйте значение [code]2.0[/code] для физически точного освещения, так "
"как это приводит к правильному обратному квадрату затухания.\n"
"[b]Примечание:[/b] Установка затухания на [code]2.0[/code] или выше может "
"привести к тому, что удаленные объекты будут получать минимальный свет, даже "
"в пределах диапазона. Например, при диапазоне [code]4096[/code] объект на "
"[code]100[/code] единиц ослабляется с коэффициентом [code]0.0001[/code]. При "
"яркости по умолчанию [code]1[/code] свет не будет виден на этом расстоянии.\n"
"[b]Примечание:[/b] Использование отрицательных или значений выше [code]10.0[/"
"code] может привести к неожиданным результатам."

msgid ""
"The maximal range that can be reached by the spotlight. Note that the "
"effectively lit area may appear to be smaller depending on the [member "
"spot_attenuation] in use. No matter the [member spot_attenuation] in use, the "
"light will never reach anything outside this range.\n"
"[b]Note:[/b] [member spot_range] is not affected by [member Node3D.scale] "
"(the light's scale or its parent's scale)."
msgstr ""
"Максимальный диапазон, который может быть достигнут прожектором. Обратите "
"внимание, что эффективно освещенная область может казаться меньше в "
"зависимости от используемого [member spot_attenuation]. Независимо от "
"используемого [member spot_attenuation], свет никогда не достигнет ничего за "
"пределами этого диапазона.\n"
"[b]Примечание:[/b] [member spot_range] не зависит от [member Node3D.scale] "
"(масштаба источника света или масштаба его родителя)."

msgid ""
"A 3D raycast that dynamically moves its children near the collision point."
msgstr ""
"3D-рейкаст, который динамически перемещает свои дочерние элементы вблизи "
"точки столкновения."

msgid ""
"[SpringArm3D] casts a ray or a shape along its Z axis and moves all its "
"direct children to the collision point, with an optional margin. This is "
"useful for 3rd person cameras that move closer to the player when inside a "
"tight space (you may need to exclude the player's collider from the "
"[SpringArm3D]'s collision check)."
msgstr ""
"[SpringArm3D] проецирует луч или форму вдоль своей оси Z и перемещает всех "
"своих прямых потомков в точку столкновения с необязательным полем. Это "
"полезно для камер от третьего лица, которые приближаются к игроку, когда он "
"находится в тесном пространстве (вам может потребоваться исключить коллайдер "
"игрока из проверки столкновений [SpringArm3D])."

msgid "Third-person camera with spring arm"
msgstr "Камера от третьего лица с пружинным рычагом"

msgid ""
"Adds the [PhysicsBody3D] object with the given [RID] to the list of "
"[PhysicsBody3D] objects excluded from the collision check."
msgstr ""
"Добавляет объект [PhysicsBody3D] с заданным [RID] в список объектов "
"[PhysicsBody3D], исключенных из проверки столкновений."

msgid ""
"Clears the list of [PhysicsBody3D] objects excluded from the collision check."
msgstr ""
"Очищает список объектов [PhysicsBody3D], исключенных из проверки столкновений."

msgid "Returns the spring arm's current length."
msgstr "Возвращает текущую длину пружинного рычага."

msgid ""
"Removes the given [RID] from the list of [PhysicsBody3D] objects excluded "
"from the collision check."
msgstr ""
"Удаляет указанный [RID] из списка объектов [PhysicsBody3D], исключенных из "
"проверки столкновений."

msgid ""
"The layers against which the collision check shall be done. See "
"[url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-"
"and-masks]Collision layers and masks[/url] in the documentation for more "
"information."
msgstr ""
"Слои, по которым должна выполняться проверка столкновений. См. [url=$DOCS_URL/"
"tutorials/physics/physics_introduction.html#collision-layers-and-masks]Слои и "
"маски столкновений[/url] в документации для получения дополнительной "
"информации."

msgid ""
"When the collision check is made, a candidate length for the SpringArm3D is "
"given.\n"
"The margin is then subtracted to this length and the translation is applied "
"to the child objects of the SpringArm3D.\n"
"This margin is useful for when the SpringArm3D has a [Camera3D] as a child "
"node: without the margin, the [Camera3D] would be placed on the exact point "
"of collision, while with the margin the [Camera3D] would be placed close to "
"the point of collision."
msgstr ""
"При проверке столкновения задается длина кандидата для SpringArm3D.\n"
"Затем поле вычитается из этой длины, и перемещение применяется к дочерним "
"объектам SpringArm3D.\n"
"Это поле полезно, когда у SpringArm3D есть [Camera3D] в качестве дочернего "
"узла: без поля [Camera3D] будет размещено точно в точке столкновения, тогда "
"как с полем [Camera3D] будет размещено близко к точке столкновения."

msgid ""
"The [Shape3D] to use for the SpringArm3D.\n"
"When the shape is set, the SpringArm3D will cast the [Shape3D] on its z axis "
"instead of performing a ray cast."
msgstr ""
"[Shape3D] для использования в SpringArm3D.\n"
"Когда форма задана, SpringArm3D будет отбрасывать [Shape3D] на свою ось z "
"вместо выполнения отбрасывания луча."

msgid ""
"The maximum extent of the SpringArm3D. This is used as a length for both the "
"ray and the shape cast used internally to calculate the desired position of "
"the SpringArm3D's child nodes.\n"
"To know more about how to perform a shape cast or a ray cast, please consult "
"the [PhysicsDirectSpaceState3D] documentation."
msgstr ""
"Максимальный размер SpringArm3D. Используется как длина как для луча, так и "
"для приведения формы, используемого внутренне для расчета желаемого положения "
"дочерних узлов SpringArm3D.\n"
"Чтобы узнать больше о том, как выполнить приведение формы или луча, "
"обратитесь к документации [PhysicsDirectSpaceState3D]."

msgid ""
"A base class of the collision that interacts with [SpringBoneSimulator3D]."
msgstr ""
"Базовый класс столкновения, взаимодействующий с [SpringBoneSimulator3D]."

msgid ""
"A collision can be a child of [SpringBoneSimulator3D]. If it is not a child "
"of [SpringBoneSimulator3D], it has no effect.\n"
"The colliding and sliding are done in the [SpringBoneSimulator3D]'s "
"modification process in order of its collision list which is set by [method "
"SpringBoneSimulator3D.set_collision_path]. If [method "
"SpringBoneSimulator3D.are_all_child_collisions_enabled] is [code]true[/code], "
"the order matches [SceneTree].\n"
"If [member bone] is set, it synchronizes with the bone pose of the ancestor "
"[Skeleton3D], which is done in before the [SpringBoneSimulator3D]'s "
"modification process as the pre-process.\n"
"[b]Warning:[/b] A scaled [SpringBoneCollision3D] will likely not behave as "
"expected. Make sure that the parent [Skeleton3D] and its bones are not scaled."
msgstr ""
"Столкновение может быть дочерним элементом [SpringBoneSimulator3D]. Если оно "
"не является дочерним элементом [SpringBoneSimulator3D], оно не оказывает "
"никакого эффекта.\n"
"Столкновение и скольжение выполняются в процессе модификации "
"[SpringBoneSimulator3D] в порядке его списка столкновений, который задается "
"[method SpringBoneSimulator3D.set_collision_path]. Если [method "
"SpringBoneSimulator3D.are_all_child_collisions_enabled] равен [code]true[/"
"code], порядок соответствует [SceneTree].\n"
"Если задан [member bone], он синхронизируется с позой кости предка "
"[Skeleton3D], что выполняется до процесса модификации [SpringBoneSimulator3D] "
"в качестве предварительного процесса.\n"
"[b]Предупреждение:[/b] Масштабированный [SpringBoneCollision3D], скорее "
"всего, не будет вести себя так, как ожидается. Убедитесь, что родительский "
"[Skeleton3D] и его кости не масштабированы."

msgid ""
"Get parent [Skeleton3D] node of the parent [SpringBoneSimulator3D] if found."
msgstr ""
"Получить родительский узел [Skeleton3D] родительского узла "
"[SpringBoneSimulator3D], если он найден."

msgid ""
"The offset of the position from [Skeleton3D]'s [member bone] pose position."
msgstr ""
"Смещение положения относительно положения позы [member bone] [Skeleton3D]."

msgid ""
"The offset of the rotation from [Skeleton3D]'s [member bone] pose rotation."
msgstr ""
"Смещение вращения относительно вращения позы [member bone] [Skeleton3D]."

msgid "A capsule shape collision that interacts with [SpringBoneSimulator3D]."
msgstr ""
"Столкновение формы капсулы, взаимодействующее с [SpringBoneSimulator3D]."

msgid ""
"If [code]true[/code], the collision acts to trap the joint within the "
"collision."
msgstr ""
"Если [code]true[/code], столкновение приводит к захвату сочленения внутри "
"столкновения."

msgid "An infinite plane collision that interacts with [SpringBoneSimulator3D]."
msgstr ""
"Бесконечное столкновение плоскостей, взаимодействующее с "
"[SpringBoneSimulator3D]."

msgid ""
"An infinite plane collision that interacts with [SpringBoneSimulator3D]. It "
"is an infinite size XZ plane, and the +Y direction is treated as normal."
msgstr ""
"Столкновение бесконечной плоскости, взаимодействующей с "
"[SpringBoneSimulator3D]. Это бесконечная плоскость XZ, а направление +Y "
"рассматривается как нормаль."

msgid "A sphere shape collision that interacts with [SpringBoneSimulator3D]."
msgstr ""
"Столкновение в форме сферы, взаимодействующее с [SpringBoneSimulator3D]."

msgid "The sphere's radius."
msgstr "Радиус сферы."

msgid "A [SkeletonModifier3D] to apply inertial wavering to bone chains."
msgstr ""
"[SkeletonModifier3D] для применения инерционных колебаний к цепям костей."

msgid ""
"This [SkeletonModifier3D] can be used to wiggle hair, cloth, and tails. This "
"modifier behaves differently from [PhysicalBoneSimulator3D] as it attempts to "
"return the original pose after modification.\n"
"If you setup [method set_root_bone] and [method set_end_bone], it is treated "
"as one bone chain. Note that it does not support a branched chain like Y-"
"shaped chains.\n"
"When a bone chain is created, an array is generated from the bones that exist "
"in between and listed in the joint list.\n"
"Several properties can be applied to each joint, such as [method "
"set_joint_stiffness], [method set_joint_drag], and [method "
"set_joint_gravity].\n"
"For simplicity, you can set values to all joints at the same time by using a "
"[Curve]. If you want to specify detailed values individually, set [method "
"set_individual_config] to [code]true[/code].\n"
"For physical simulation, [SpringBoneSimulator3D] can have children as self-"
"standing collisions that are not related to [PhysicsServer3D], see also "
"[SpringBoneCollision3D].\n"
"[b]Warning:[/b] A scaled [SpringBoneSimulator3D] will likely not behave as "
"expected. Make sure that the parent [Skeleton3D] and its bones are not scaled."
msgstr ""
"Этот [SkeletonModifier3D] можно использовать для покачивания волос, ткани и "
"хвостов. Этот модификатор ведет себя иначе, чем [PhysicalBoneSimulator3D], "
"поскольку он пытается вернуть исходную позу после модификации.\n"
"Если вы настроите [method set_root_bone] и [method set_end_bone], он будет "
"рассматриваться как одна цепочка костей. Обратите внимание, что он не "
"поддерживает разветвленную цепь, например, Y-образные цепи.\n"
"Когда создается цепочка костей, из костей, которые находятся между ними и "
"перечислены в списке суставов, генерируется массив.\n"
"К каждому суставу можно применить несколько свойств, например [method "
"set_joint_stiffness], [method set_joint_drag] и [method set_joint_gravity].\n"
"Для простоты вы можете задать значения для всех суставов одновременно с "
"помощью [Curve]. Если вы хотите указать подробные значения по отдельности, "
"установите [method set_individual_config] на [code]true[/code].\n"
"Для физического моделирования [SpringBoneSimulator3D] может иметь дочерние "
"элементы для самостоятельного столкновения, не связанным с [PhysicsServer3D], "
"см. также [SpringBoneCollision3D].\n"
"[b]Предупреждение:[/b] Масштабированный [SpringBoneSimulator3D] скорее всего "
"не будет вести себя так, как ожидается. Убедитесь, что родительский "
"[Skeleton3D] и его кости не масштабированы."

msgid ""
"Returns [code]true[/code] if all child [SpringBoneCollision3D]s are contained "
"in the collision list at [param index] in the settings."
msgstr ""
"Возвращает [code]true[/code], если все дочерние [SpringBoneCollision3D] "
"содержатся в списке столкновений по адресу [param index] в настройках."

msgid ""
"Clears all collisions from the collision list at [param index] in the "
"settings when [method are_all_child_collisions_enabled] is [code]false[/code]."
msgstr ""
"Удаляет все столкновения из списка столкновений по адресу [param index] в "
"настройках, когда [method are_all_child_collisions_enabled] имеет значение "
"[code]false[/code]."

msgid ""
"Clears all exclude collisions from the collision list at [param index] in the "
"settings when [method are_all_child_collisions_enabled] is [code]true[/code]."
msgstr ""
"Удаляет все исключенные столкновения из списка столкновений по адресу [param "
"index] в настройках, когда [method are_all_child_collisions_enabled] имеет "
"значение [code]true[/code]."

msgid "Clears all settings."
msgstr "Очищает все настройки."

msgid "Returns the center bone index of the bone chain."
msgstr "Возвращает индекс центральной кости цепочки костей."

msgid "Returns the center bone name of the bone chain."
msgstr "Возвращает имя центральной кости цепочки костей."

msgid "Returns what the center originates from in the bone chain."
msgstr "Возвращает, откуда берёт начало центр в костной цепи."

msgid "Returns the center node path of the bone chain."
msgstr "Возвращает путь центрального узла цепочки костей."

msgid ""
"Returns the collision count of the bone chain's collision list when [method "
"are_all_child_collisions_enabled] is [code]false[/code]."
msgstr ""
"Возвращает количество столкновений в списке столкновений цепочки костей, "
"когда [method are_all_child_collisions_enabled] равен [code]false[/code]."

msgid ""
"Returns the node path of the [SpringBoneCollision3D] at [param collision] in "
"the bone chain's collision list when [method "
"are_all_child_collisions_enabled] is [code]false[/code]."
msgstr ""
"Возвращает путь к узлу [SpringBoneCollision3D] в [param collision] в списке "
"столкновений цепочки костей, когда [method are_all_child_collisions_enabled] "
"имеет значение [code]false[/code]."

msgid "Returns the drag force damping curve of the bone chain."
msgstr "Возвращает кривую затухания силы сопротивления цепи костей."

msgid "Returns the end bone index of the bone chain."
msgstr "Возвращает индекс конечной кости цепочки костей."

msgid ""
"Returns the end bone's tail direction of the bone chain when [method "
"is_end_bone_extended] is [code]true[/code]."
msgstr ""
"Возвращает направление хвоста конечной кости цепочки костей, когда [method "
"is_end_bone_extended] равен [code]true[/code]."

msgid ""
"Returns the end bone's tail length of the bone chain when [method "
"is_end_bone_extended] is [code]true[/code]."
msgstr ""
"Возвращает длину хвоста конечной кости цепочки костей, когда [method "
"is_end_bone_extended] равен [code]true[/code]."

msgid "Returns the end bone name of the bone chain."
msgstr "Возвращает имя конечной кости цепочки костей."

msgid ""
"Returns the exclude collision count of the bone chain's exclude collision "
"list when [method are_all_child_collisions_enabled] is [code]true[/code]."
msgstr ""
"Возвращает количество исключенных столкновений из списка исключенных "
"столкновений цепочки костей, когда [method are_all_child_collisions_enabled] "
"имеет значение [code]true[/code]."

msgid ""
"Returns the node path of the [SpringBoneCollision3D] at [param collision] in "
"the bone chain's exclude collision list when [method "
"are_all_child_collisions_enabled] is [code]true[/code]."
msgstr ""
"Возвращает путь к узлу [SpringBoneCollision3D] в [param collision] в списке "
"исключений столкновений цепочки костей, когда [method "
"are_all_child_collisions_enabled] имеет значение [code]true[/code]."

msgid "Returns the gravity amount of the bone chain."
msgstr "Возвращает величину гравитации костной цепи."

msgid "Returns the gravity amount damping curve of the bone chain."
msgstr "Возвращает кривую затухания величины гравитации костной цепи."

msgid "Returns the gravity direction of the bone chain."
msgstr "Возвращает направление гравитации костной цепи."

msgid "Returns the bone index at [param joint] in the bone chain's joint list."
msgstr ""
"Возвращает индекс кости в [param joint] в списке суставов цепочки костей."

msgid "Returns the bone name at [param joint] in the bone chain's joint list."
msgstr "Возвращает имя кости в [param joint] в списке суставов цепочки костей."

msgid "Returns the joint count of the bone chain's joint list."
msgstr "Возвращает количество суставов в списке суставов цепочки костей."

msgid "Returns the drag force at [param joint] in the bone chain's joint list."
msgstr ""
"Возвращает силу сопротивления в [param joint] в списке суставов цепочки "
"костей."

msgid ""
"Returns the gravity amount at [param joint] in the bone chain's joint list."
msgstr ""
"Возвращает величину гравитации в точке [param joint] в списке суставов цепи "
"костей."

msgid ""
"Returns the gravity direction at [param joint] in the bone chain's joint list."
msgstr ""
"Возвращает направление гравитации в точке [param joint] в списке суставов "
"цепочки костей."

msgid "Returns the radius at [param joint] in the bone chain's joint list."
msgstr ""
"Возвращает радиус в точке [param joint] в списке суставов цепочки костей."

msgid ""
"Returns the rotation axis at [param joint] in the bone chain's joint list."
msgstr ""
"Возвращает ось вращения в [param joint] в списке суставов цепочки костей."

msgid ""
"Returns the rotation axis vector for the specified joint in the bone chain. "
"This vector represents the axis around which the joint can rotate. It is "
"determined based on the rotation axis set for the joint.\n"
"If [method get_joint_rotation_axis] is [constant ROTATION_AXIS_ALL], this "
"method returns [code]Vector3(0, 0, 0)[/code]."
msgstr ""
"Возвращает вектор оси вращения для указанного сустава в цепочке костей. Этот "
"вектор представляет ось, вокруг которой может вращаться сустав. Он "
"определяется на основе оси вращения, установленной для сустава.\n"
"Если [method get_joint_rotation_axis] равен [constant ROTATION_AXIS_ALL], "
"этот метод возвращает [code]Vector3(0, 0, 0)[/code]."

msgid ""
"Returns the stiffness force at [param joint] in the bone chain's joint list."
msgstr ""
"Возвращает силу жесткости в [param joint] в списке суставов цепи костей."

msgid "Returns the joint radius of the bone chain."
msgstr "Возвращает радиус сустава костной цепи."

msgid "Returns the joint radius damping curve of the bone chain."
msgstr "Возвращает кривую демпфирования радиуса сустава цепи костей."

msgid "Returns the root bone index of the bone chain."
msgstr "Возвращает индекс корневой кости цепочки костей."

msgid "Returns the root bone name of the bone chain."
msgstr "Возвращает имя корневой кости цепочки костей."

msgid "Returns the rotation axis of the bone chain."
msgstr "Возвращает ось вращения цепи костей."

msgid ""
"Returns the rotation axis vector of the bone chain. This vector represents "
"the axis around which the bone chain can rotate. It is determined based on "
"the rotation axis set for the bone chain.\n"
"If [method get_rotation_axis] is [constant ROTATION_AXIS_ALL], this method "
"returns [code]Vector3(0, 0, 0)[/code]."
msgstr ""
"Возвращает вектор оси вращения костной цепи. Этот вектор представляет ось, "
"вокруг которой может вращаться костная цепь. Он определяется на основе оси "
"вращения, установленной для костной цепи.\n"
"Если [method get_rotation_axis] равен [constant ROTATION_AXIS_ALL], этот "
"метод возвращает [code]Vector3(0, 0, 0)[/code]."

msgid "Returns the stiffness force of the bone chain."
msgstr "Возвращает силу жесткости костной цепи."

msgid "Returns the stiffness force damping curve of the bone chain."
msgstr "Возвращает кривую демпфирования силы жесткости костной цепи."

msgid ""
"Returns [code]true[/code] if the config can be edited individually for each "
"joint."
msgstr ""
"Возвращает [code]true[/code], если конфигурацию можно редактировать "
"индивидуально для каждого сочленения."

msgid "Returns [code]true[/code] if the end bone is extended to have the tail."
msgstr ""
"Возвращает [code]true[/code], если конечная кость удлинена и имеет хвост."

msgid ""
"Resets a simulating state with respect to the current bone pose.\n"
"It is useful to prevent the simulation result getting violent. For example, "
"calling this immediately after a call to [method AnimationPlayer.play] "
"without a fading, or within the previous [signal "
"SkeletonModifier3D.modification_processed] signal if it's condition changes "
"significantly."
msgstr ""
"Сбрасывает состояние симуляции относительно текущей позы кости.\n"
"Полезно для предотвращения резкого изменения результата симуляции. Например, "
"вызов этого метода сразу после вызова [method AnimationPlayer.play] без "
"затухания или в предыдущем сигнале [signal "
"SkeletonModifier3D.modification_processed], если его состояние существенно "
"изменилось."

msgid "Sets the center bone index of the bone chain."
msgstr "Устанавливает индекс центральной кости в костной цепи."

msgid "Sets the center bone name of the bone chain."
msgstr "Задает имя центральной кости в цепочке костей."

msgid ""
"Sets what the center originates from in the bone chain.\n"
"Bone movement is calculated based on the difference in relative distance "
"between center and bone in the previous and next frames.\n"
"For example, if the parent [Skeleton3D] is used as the center, the bones are "
"considered to have not moved if the [Skeleton3D] moves in the world.\n"
"In this case, only a change in the bone pose is considered to be a bone "
"movement."
msgstr ""
"Устанавливает, откуда в цепочке костей берется центр.\n"
"Движение костей рассчитывается на основе разницы в относительном расстоянии "
"между центром и костью в предыдущем и следующем кадрах.\n"
"Например, если родительский [Skeleton3D] используется в качестве центра, "
"кости считаются не перемещенными, если [Skeleton3D] перемещается в мире.\n"
"В этом случае только изменение позы кости считается перемещением кости."

msgid "Sets the center node path of the bone chain."
msgstr "Устанавливает путь центрального узла цепочки костей."

msgid ""
"Sets the number of collisions in the collision list at [param index] in the "
"settings when [method are_all_child_collisions_enabled] is [code]false[/code]."
msgstr ""
"Устанавливает количество столкновений в списке столкновений в [param index] в "
"настройках, когда [method are_all_child_collisions_enabled] имеет значение "
"[code]false[/code]."

msgid ""
"Sets the node path of the [SpringBoneCollision3D] at [param collision] in the "
"bone chain's collision list when [method are_all_child_collisions_enabled] is "
"[code]false[/code]."
msgstr ""
"Устанавливает путь узла [SpringBoneCollision3D] в [param collision] в списке "
"столкновений цепочки костей, когда [method are_all_child_collisions_enabled] "
"имеет значение [code]false[/code]."

msgid ""
"Sets the drag force of the bone chain. The greater the value, the more "
"suppressed the wiggling.\n"
"The value is scaled by [method set_drag_damping_curve] and cached in each "
"joint setting in the joint list."
msgstr ""
"Устанавливает силу сопротивления цепи костей. Чем больше значение, тем "
"сильнее подавляется покачивание.\n"
"Значение масштабируется [method set_drag_damping_curve] и кэшируется в каждой "
"настройке сустава в списке суставов."

msgid "Sets the drag force damping curve of the bone chain."
msgstr "Устанавливает кривую затухания силы сопротивления цепи костей."

msgid ""
"If [param enabled] is [code]true[/code], all child [SpringBoneCollision3D]s "
"are colliding and [method set_exclude_collision_path] is enabled as an "
"exclusion list at [param index] in the settings.\n"
"If [param enabled] is [code]false[/code], you need to manually register all "
"valid collisions with [method set_collision_path]."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], все дочерние "
"[SpringBoneCollision3D] сталкиваются, а [method set_exclude_collision_path] "
"включен как список исключений в [param index] в настройках.\n"
"Если [param enabled] имеет значение [code]false[/code], вам необходимо "
"вручную зарегистрировать все допустимые столкновения с помощью [method "
"set_collision_path]."

msgid "Sets the end bone index of the bone chain."
msgstr "Устанавливает индекс конечной кости в костной цепи."

msgid ""
"Sets the end bone tail direction of the bone chain when [method "
"is_end_bone_extended] is [code]true[/code]."
msgstr ""
"Устанавливает направление хвоста конечной кости цепочки костей, когда [method "
"is_end_bone_extended] имеет значение [code]true[/code]."

msgid ""
"Sets the end bone tail length of the bone chain when [method "
"is_end_bone_extended] is [code]true[/code]."
msgstr ""
"Устанавливает длину конечной кости цепи костей, когда [method "
"is_end_bone_extended] имеет значение [code]true[/code]."

msgid ""
"Sets the end bone name of the bone chain.\n"
"[b]Note:[/b] End bone must be the root bone or a child of the root bone. If "
"they are the same, the tail must be extended by [method set_extend_end_bone] "
"to jiggle the bone."
msgstr ""
"Задает имя конечной кости цепочки костей.\n"
"[b]Примечание:[/b] Конечная кость должна быть корневой костью или дочерней "
"костью корневой кости. Если они одинаковы, хвост должен быть расширен [method "
"set_extend_end_bone], чтобы покачивать кость."

msgid ""
"Sets the number of exclude collisions in the exclude collision list at [param "
"index] in the settings when [method are_all_child_collisions_enabled] is "
"[code]true[/code]."
msgstr ""
"Устанавливает количество исключаемых столкновений в списке исключаемых "
"столкновений в [param index] в настройках, когда [method "
"are_all_child_collisions_enabled] имеет значение [code]true[/code]."

msgid ""
"Sets the node path of the [SpringBoneCollision3D] at [param collision] in the "
"bone chain's exclude collision list when [method "
"are_all_child_collisions_enabled] is [code]true[/code]."
msgstr ""
"Устанавливает путь узла [SpringBoneCollision3D] в [param collision] в списке "
"исключений столкновений цепочки костей, когда [method "
"are_all_child_collisions_enabled] имеет значение [code]true[/code]."

msgid ""
"If [param enabled] is [code]true[/code], the end bone is extended to have the "
"tail.\n"
"The extended tail config is allocated to the last element in the joint list.\n"
"In other words, if you set [param enabled] is [code]false[/code], the config "
"of last element in the joint list has no effect in the simulated result."
msgstr ""
"Если [param enabled] равно [code]true[/code], конечная кость расширяется, "
"чтобы иметь хвост.\n"
"Конфигурация расширенного хвоста выделяется последнему элементу в списке "
"соединений.\n"
"Другими словами, если вы устанавливаете [param enabled] равным [code]false[/"
"code], конфигурация последнего элемента в списке соединений не влияет на "
"смоделированный результат."

msgid ""
"Sets the gravity amount of the bone chain. This value is not an acceleration, "
"but a constant velocity of movement in [method set_gravity_direction].\n"
"If [param gravity] is not [code]0[/code], the modified pose will not return "
"to the original pose since it is always affected by gravity.\n"
"The value is scaled by [method set_gravity_damping_curve] and cached in each "
"joint setting in the joint list."
msgstr ""
"Устанавливает величину гравитации цепи костей. Это значение не является "
"ускорением, а постоянной скоростью движения в [method "
"set_gravity_direction].\n"
"Если [param gravity] не равен [code]0[/code], измененная поза не вернется к "
"исходной позе, поскольку на нее всегда влияет гравитация.\n"
"Значение масштабируется [method set_gravity_damping_curve] и кэшируется в "
"каждой настройке сочленения в списке сочленений."

msgid "Sets the gravity amount damping curve of the bone chain."
msgstr "Устанавливает кривую затухания величины гравитации костной цепи."

msgid ""
"Sets the gravity direction of the bone chain. This value is internally "
"normalized and then multiplied by [method set_gravity].\n"
"The value is cached in each joint setting in the joint list."
msgstr ""
"Устанавливает направление гравитации цепи костей. Это значение внутренне "
"нормализуется, а затем умножается на [method set_gravity].\n"
"Значение кэшируется в каждой настройке сустава в списке суставов."

msgid ""
"If [param enabled] is [code]true[/code], the config can be edited "
"individually for each joint."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], конфигурацию можно "
"редактировать индивидуально для каждого соединения."

msgid ""
"Sets the drag force at [param joint] in the bone chain's joint list when "
"[method is_config_individual] is [code]true[/code]."
msgstr ""
"Устанавливает силу сопротивления в [param joint] в списке суставов цепочки "
"костей, когда [method is_config_individual] имеет значение [code]true[/code]."

msgid ""
"Sets the gravity amount at [param joint] in the bone chain's joint list when "
"[method is_config_individual] is [code]true[/code]."
msgstr ""
"Устанавливает величину гравитации в [param joint] в списке суставов цепочки "
"костей, когда [method is_config_individual] имеет значение [code]true[/code]."

msgid ""
"Sets the gravity direction at [param joint] in the bone chain's joint list "
"when [method is_config_individual] is [code]true[/code]."
msgstr ""
"Устанавливает направление гравитации в [param joint] в списке суставов "
"цепочки костей, когда [method is_config_individual] имеет значение "
"[code]true[/code]."

msgid ""
"Sets the joint radius at [param joint] in the bone chain's joint list when "
"[method is_config_individual] is [code]true[/code]."
msgstr ""
"Устанавливает радиус сустава в [param joint] в списке суставов цепочки "
"костей, когда [method is_config_individual] имеет значение [code]true[/code]."

msgid ""
"Sets the rotation axis at [param joint] in the bone chain's joint list when "
"[method is_config_individual] is [code]true[/code].\n"
"The axes are based on the [method Skeleton3D.get_bone_rest]'s space, if "
"[param axis] is [constant ROTATION_AXIS_CUSTOM], you can specify any axis.\n"
"[b]Note:[/b] The rotation axis and the forward vector shouldn't be colinear "
"to avoid unintended rotation since [SpringBoneSimulator3D] does not factor in "
"twisting forces."
msgstr ""
"Устанавливает ось вращения в [param joint] в списке суставов цепочки костей, "
"когда [method is_config_individual] равен [code]true[/code].\n"
"Оси основаны на пространстве [method Skeleton3D.get_bone_rest], если [param "
"axis] равен [constant ROTATION_AXIS_CUSTOM], вы можете указать любую ось.\n"
"[b]Примечание:[/b] Ось вращения и прямой вектор не должны быть коллинеарными, "
"чтобы избежать непреднамеренного вращения, поскольку [SpringBoneSimulator3D] "
"не учитывает скручивающие силы."

msgid ""
"Sets the rotation axis vector for the specified joint in the bone chain.\n"
"This vector is normalized by an internal process and represents the axis "
"around which the bone chain can rotate.\n"
"If the vector length is [code]0[/code], it is considered synonymous with "
"[constant ROTATION_AXIS_ALL]."
msgstr ""
"Задает вектор оси вращения для указанного сустава в костной цепи.\n"
"Этот вектор нормализуется внутренним процессом и представляет собой ось, "
"вокруг которой может вращаться костная цепь.\n"
"Если длина вектора равна [code]0[/code], он считается синонимом [constant "
"ROTATION_AXIS_ALL]."

msgid ""
"Sets the stiffness force at [param joint] in the bone chain's joint list when "
"[method is_config_individual] is [code]true[/code]."
msgstr ""
"Устанавливает силу жесткости в [param joint] в списке суставов костной цепи, "
"когда [method is_config_individual] имеет значение [code]true[/code]."

msgid ""
"Sets the joint radius of the bone chain. It is used to move and slide with "
"the [SpringBoneCollision3D] in the collision list.\n"
"The value is scaled by [method set_radius_damping_curve] and cached in each "
"joint setting in the joint list."
msgstr ""
"Устанавливает радиус сочленения цепочки костей. Используется для перемещения "
"и скольжения с [SpringBoneCollision3D] в списке столкновений.\n"
"Значение масштабируется [method set_radius_damping_curve] и кэшируется в "
"каждой настройке сочленения в списке сочленений."

msgid "Sets the joint radius damping curve of the bone chain."
msgstr "Устанавливает кривую демпфирования радиуса сустава костной цепи."

msgid "Sets the root bone index of the bone chain."
msgstr "Устанавливает индекс корневой кости цепочки костей."

msgid "Sets the root bone name of the bone chain."
msgstr "Задает имя корневой кости цепочки костей."

msgid ""
"Sets the rotation axis of the bone chain. If set to a specific axis, it acts "
"like a hinge joint. The value is cached in each joint setting in the joint "
"list.\n"
"The axes are based on the [method Skeleton3D.get_bone_rest]'s space, if "
"[param axis] is [constant ROTATION_AXIS_CUSTOM], you can specify any axis.\n"
"[b]Note:[/b] The rotation axis vector and the forward vector shouldn't be "
"colinear to avoid unintended rotation since [SpringBoneSimulator3D] does not "
"factor in twisting forces."
msgstr ""
"Устанавливает ось вращения цепи костей. Если задана конкретная ось, она "
"действует как шарнирное сочленение. Значение кэшируется в каждой настройке "
"сочленения в списке сочленений.\n"
"Оси основаны на пространстве [method Skeleton3D.get_bone_rest], если [param "
"axis] — это [constant ROTATION_AXIS_CUSTOM], вы можете указать любую ось.\n"
"[b]Примечание:[/b] Вектор оси вращения и прямой вектор не должны быть "
"коллинеарными, чтобы избежать непреднамеренного вращения, поскольку "
"[SpringBoneSimulator3D] не учитывает скручивающие силы."

msgid ""
"Sets the rotation axis vector of the bone chain. The value is cached in each "
"joint setting in the joint list.\n"
"This vector is normalized by an internal process and represents the axis "
"around which the bone chain can rotate.\n"
"If the vector length is [code]0[/code], it is considered synonymous with "
"[constant ROTATION_AXIS_ALL]."
msgstr ""
"Задает вектор оси вращения цепи костей. Значение кэшируется в каждой "
"настройке сустава в списке суставов.\n"
"Этот вектор нормализуется внутренним процессом и представляет собой ось, "
"вокруг которой может вращаться цепь костей.\n"
"Если длина вектора равна [code]0[/code], он считается синонимом [constant "
"ROTATION_AXIS_ALL]."

msgid ""
"Sets the stiffness force of the bone chain. The greater the value, the faster "
"it recovers to its initial pose.\n"
"If [param stiffness] is [code]0[/code], the modified pose will not return to "
"the original pose.\n"
"The value is scaled by [method set_stiffness_damping_curve] and cached in "
"each joint setting in the joint list."
msgstr ""
"Устанавливает силу жесткости цепи костей. Чем больше значение, тем быстрее "
"она восстанавливается до исходной позы.\n"
"Если [param stiffness] равен [code]0[/code], измененная поза не вернется к "
"исходной позе.\n"
"Значение масштабируется [method set_stiffness_damping_curve] и кэшируется в "
"каждой настройке сустава в списке суставов."

msgid "Sets the stiffness force damping curve of the bone chain."
msgstr "Устанавливает кривую демпфирования силы жесткости костной цепи."

msgid ""
"The constant force that always affected bones. It is equal to the result when "
"the parent [Skeleton3D] moves at this speed in the opposite direction.\n"
"This is useful for effects such as wind and anti-gravity."
msgstr ""
"Постоянная сила, которая всегда воздействует на кости. Она равна результату, "
"когда родитель [Skeleton3D] движется с этой скоростью в противоположном "
"направлении.\n"
"Это полезно для таких эффектов, как ветер и антигравитация."

msgid "The number of settings."
msgstr "Количество настроек."

msgid "Enumerated value for the axis from a parent bone to the child bone."
msgstr "Перечисленное значение для оси от родительской кости до дочерней кости."

msgid "The world origin is defined as center."
msgstr "Начало координат мира определяется как центр."

msgid ""
"The [Node3D] specified by [method set_center_node] is defined as center.\n"
"If [Node3D] is not found, the parent [Skeleton3D] is treated as center."
msgstr ""
"[Node3D], указанный [method set_center_node], определяется как центр.\n"
"Если [Node3D] не найден, родительский [Skeleton3D] рассматривается как центр."

msgid ""
"The bone pose origin of the parent [Skeleton3D] specified by [method "
"set_center_bone] is defined as center.\n"
"If [Node3D] is not found, the parent [Skeleton3D] is treated as center."
msgstr ""
"Начало позы кости родителя [Skeleton3D], указанное в [method "
"set_center_bone], определяется как центр.\n"
"Если [Node3D] не найден, родитель [Skeleton3D] рассматривается как центр."

msgid "Enumerated value for the rotation of the X axis."
msgstr "Перечисленное значение для вращения оси X."

msgid "Enumerated value for the rotation of the Y axis."
msgstr "Перечисленное значение для вращения оси Y."

msgid "Enumerated value for the rotation of the Z axis."
msgstr "Перечисленное значение для вращения оси Z."

msgid "Enumerated value for the unconstrained rotation."
msgstr "Перечисленное значение для неограниченного вращения."

msgid ""
"Enumerated value for an optional rotation axis. See also [method "
"set_joint_rotation_axis_vector]."
msgstr ""
"Перечисленное значение для необязательной оси вращения. См. также [method "
"set_joint_rotation_axis_vector]."

msgid "General-purpose sprite node."
msgstr "Универсальный узел спрайта."

msgid ""
"A node that displays a 2D texture. The texture displayed can be a region from "
"a larger atlas texture, or a frame from a sprite sheet animation."
msgstr ""
"Узел, отображающий 2D-текстуру. Отображаемая текстура может быть областью из "
"более крупной текстуры атласа или кадром из анимации спрайт-листа."

msgid ""
"Returns a [Rect2] representing the Sprite2D's boundary in local coordinates.\n"
"[b]Example:[/b] Detect if the Sprite2D was clicked:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _input(event):\n"
"\tif event is InputEventMouseButton and event.pressed and event.button_index "
"== MOUSE_BUTTON_LEFT:\n"
"\t\tif get_rect().has_point(to_local(event.position)):\n"
"\t\t\tprint(\"A click!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Input(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseButton inputEventMouse)\n"
"\t{\n"
"\t\tif (inputEventMouse.Pressed && inputEventMouse.ButtonIndex == "
"MouseButton.Left)\n"
"\t\t{\n"
"\t\t\tif (GetRect().HasPoint(ToLocal(inputEventMouse.Position)))\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print(\"A click!\");\n"
"\t\t\t}\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает [Rect2], представляющий границу Sprite2D в локальных координатах.\n"
"[b]Пример:[/b] Определить, был ли нажат Sprite2D:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _input(event):\n"
"\tif event is InputEventMouseButton and event.pressed and event.button_index "
"== MOUSE_BUTTON_LEFT:\n"
"\t\tif get_rect().has_point(to_local(event.position)):\n"
"\t\t\tprint(\"Нажато!\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Input(InputEvent @event)\n"
"{\n"
"\tif (@event is InputEventMouseButton inputEventMouse)\n"
"\t{\n"
"\t\tif (inputEventMouse.Pressed && inputEventMouse.ButtonIndex == "
"MouseButton.Left)\n"
"\t\t{\n"
"\t\t\tif (GetRect().HasPoint(ToLocal(inputEventMouse.Position)))\n"
"\t\t\t{\n"
"\t\t\t\tGD.Print(\"Нажато!\");\n"
"\t\t\t}\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code], if the pixel at the given position is opaque and "
"[code]false[/code] in other case. The position is in local coordinates.\n"
"[b]Note:[/b] It also returns [code]false[/code], if the sprite's texture is "
"[code]null[/code] or if the given position is invalid."
msgstr ""
"Возвращает [code]true[/code], если пиксель в указанной позиции непрозрачен, и "
"[code]false[/code] в противном случае. Позиция указывается в локальных "
"координатах.\n"
"[b]Примечание:[/b] Также возвращает [code]false[/code], если текстура спрайта "
"равна [code]null[/code] или если указанная позиция недопустима."

msgid ""
"If [code]true[/code], texture is centered.\n"
"[b]Note:[/b] For games with a pixel art aesthetic, textures may appear "
"deformed when centered. This is caused by their position being between "
"pixels. To prevent this, set this property to [code]false[/code], or consider "
"enabling [member ProjectSettings.rendering/2d/snap/snap_2d_vertices_to_pixel] "
"and [member ProjectSettings.rendering/2d/snap/snap_2d_transforms_to_pixel]."
msgstr ""
"Если [code]true[/code], текстура центрирована.\n"
"[b]Примечание:[/b] В играх с пиксельной эстетикой текстуры могут выглядеть "
"деформированными при центрировании. Это вызвано их положением между "
"пикселями. Чтобы предотвратить это, установите это свойство на [code]false[/"
"code] или рассмотрите возможность включения [member ProjectSettings.rendering/"
"2d/snap/snap_2d_vertices_to_pixel] и [member ProjectSettings.rendering/2d/"
"snap/snap_2d_transforms_to_pixel]."

msgid ""
"Current frame to display from sprite sheet. [member hframes] or [member "
"vframes] must be greater than 1. This property is automatically adjusted when "
"[member hframes] or [member vframes] are changed to keep pointing to the same "
"visual frame (same column and row). If that's impossible, this value is reset "
"to [code]0[/code]."
msgstr ""
"Текущий кадр для отображения из таблицы спрайтов. [member hframes] или "
"[member vframes] должны быть больше 1. Это свойство автоматически "
"корректируется, когда [member hframes] или [member vframes] изменяются, чтобы "
"продолжать указывать на тот же визуальный кадр (тот же столбец и строку). "
"Если это невозможно, это значение сбрасывается до [code]0[/code]."

msgid ""
"Coordinates of the frame to display from sprite sheet. This is as an alias "
"for the [member frame] property. [member hframes] or [member vframes] must be "
"greater than 1."
msgstr ""
"Координаты кадра для отображения из таблицы спрайтов. Это псевдоним для "
"свойства [member frame]. [member hframes] или [member vframes] должны быть "
"больше 1."

msgid ""
"The number of columns in the sprite sheet. When this property is changed, "
"[member frame] is adjusted so that the same visual frame is maintained (same "
"row and column). If that's impossible, [member frame] is reset to [code]0[/"
"code]."
msgstr ""
"Количество столбцов в таблице спрайтов. При изменении этого свойства [member "
"frame] корректируется так, чтобы сохранялась та же визуальная рамка (та же "
"строка и столбец). Если это невозможно, [member frame] сбрасывается до "
"[code]0[/code]."

msgid ""
"The texture's drawing offset.\n"
"[b]Note:[/b] When you increase [member offset].y in Sprite2D, the sprite "
"moves downward on screen (i.e., +Y is down)."
msgstr ""
"Смещение отрисовки текстуры.\n"
"[b]Примечание:[/b] При увеличении [member offset].y в Sprite2D спрайт "
"перемещается вниз на экране (т. е. +Y — вниз)."

msgid ""
"If [code]true[/code], texture is cut from a larger atlas texture. See [member "
"region_rect].\n"
"[b]Note:[/b] When using a custom [Shader] on a [Sprite2D], the [code]UV[/"
"code] shader built-in will refer to the entire texture space. Use the "
"[code]REGION_RECT[/code] built-in to get the currently visible region defined "
"in [member region_rect] instead. See [url=$DOCS_URL/tutorials/shaders/"
"shader_reference/canvas_item_shader.html]CanvasItem shaders[/url] for details."
msgstr ""
"Если [code]true[/code], текстура вырезается из более крупной текстуры атласа. "
"См. [member region_rect].\n"
"[b]Примечание:[/b] При использовании пользовательского [Shader] в [Sprite2D] "
"встроенный шейдер [code]UV[/code] будет ссылаться на всё пространство "
"текстуры. Вместо этого используйте встроенный шейдер [code]REGION_RECT[/code] "
"для получения текущей видимой области, заданной в [member region_rect]. "
"Подробнее см. [url=$DOCS_URL/tutorials/shaders/shader_reference/"
"canvas_item_shader.html]Шейдеры CanvasItem[/url]."

msgid ""
"If [code]true[/code], the area outside of the [member region_rect] is clipped "
"to avoid bleeding of the surrounding texture pixels. [member region_enabled] "
"must be [code]true[/code]."
msgstr ""
"Если [code]true[/code], область за пределами [member region_rect] обрезается, "
"чтобы избежать просачивания окружающих пикселей текстуры. [member "
"region_enabled] должно быть [code]true[/code]."

msgid ""
"The region of the atlas texture to display. [member region_enabled] must be "
"[code]true[/code]."
msgstr ""
"Область текстуры атласа для отображения. [member region_enabled] должен быть "
"[code]true[/code]."

msgid "[Texture2D] object to draw."
msgstr "[Texture2D] объект для рисования."

msgid ""
"The number of rows in the sprite sheet. When this property is changed, "
"[member frame] is adjusted so that the same visual frame is maintained (same "
"row and column). If that's impossible, [member frame] is reset to [code]0[/"
"code]."
msgstr ""
"Количество строк в таблице спрайтов. При изменении этого свойства [member "
"frame] корректируется так, чтобы сохранялась та же визуальная рамка (та же "
"строка и столбец). Если это невозможно, [member frame] сбрасывается до "
"[code]0[/code]."

msgid "Emitted when the [member frame] changes."
msgstr "Выдается при изменении [member frame]."

msgid "Emitted when the [member texture] changes."
msgstr "Выдается при изменении [member texture]."

msgid "2D sprite node in a 3D world."
msgstr "Узел 2D-спрайта в 3D-мире."

msgid ""
"A node that displays a 2D texture in a 3D environment. The texture displayed "
"can be a region from a larger atlas texture, or a frame from a sprite sheet "
"animation. See also [SpriteBase3D] where properties such as the billboard "
"mode are defined."
msgstr ""
"Узел, отображающий 2D-текстуру в 3D-среде. Отображаемая текстура может быть "
"областью из более крупной текстуры атласа или кадром из анимации спрайт-"
"листа. См. также [SpriteBase3D], где определены такие свойства, как режим "
"билборда."

msgid ""
"If [code]true[/code], the sprite will use [member region_rect] and display "
"only the specified part of its texture."
msgstr ""
"Если [code]true[/code], спрайт будет использовать [member region_rect] и "
"отображать только указанную часть своей текстуры."

msgid ""
"[Texture2D] object to draw. If [member GeometryInstance3D.material_override] "
"is used, this will be overridden. The size information is still used."
msgstr ""
"[Texture2D] объект для рисования. Если используется [member "
"GeometryInstance3D.material_override], это будет переопределено. Информация о "
"размере по-прежнему используется."

msgid "2D sprite node in 3D environment."
msgstr "Узел 2D-спрайта в 3D-среде."

msgid ""
"A node that displays 2D texture information in a 3D environment. See also "
"[Sprite3D] where many other properties are defined."
msgstr ""
"Узел, который отображает информацию о 2D-текстуре в 3D-среде. См. также "
"[Sprite3D], где определены многие другие свойства."

msgid ""
"Returns a [TriangleMesh] with the sprite's vertices following its current "
"configuration (such as its [member axis] and [member pixel_size])."
msgstr ""
"Возвращает [TriangleMesh] с вершинами спрайта, соответствующими его текущей "
"конфигурации (например, [member axis] и [member pixel_size])."

msgid "Returns the rectangle representing this sprite."
msgstr "Возвращает прямоугольник, представляющий этот спрайт."

msgid "If [code]true[/code], the specified flag will be enabled."
msgstr "Если [code]true[/code], указанный флаг будет включен."

msgid "The direction in which the front of the texture faces."
msgstr "Направление, в котором обращена лицевая сторона текстуры."

msgid ""
"The billboard mode to use for the sprite.\n"
"[b]Note:[/b] When billboarding is enabled and the material also casts "
"shadows, billboards will face [b]the[/b] camera in the scene when rendering "
"shadows. In scenes with multiple cameras, the intended shadow cannot be "
"determined and this will result in undefined behavior. See [url=https://"
"github.com/godotengine/godot/pull/72638]GitHub Pull Request #72638[/url] for "
"details."
msgstr ""
"Режим билборда для использования со спрайтом.\n"
"[b]Примечание:[/b] Когда билбординг включен и материал также отбрасывает "
"тени, билборды будут обращены [b]к[/b] камере в сцене при рендеринге теней. В "
"сценах с несколькими камерами предполагаемая тень не может быть определена, и "
"это приведет к неопределенному поведению. Подробности см. в [url=https://"
"github.com/godotengine/godot/pull/72638]GitHub Pull Request #72638[/url]."

msgid "If [code]true[/code], texture will be centered."
msgstr "Если [code]true[/code], текстура будет центрирована."

msgid ""
"If [code]true[/code], texture can be seen from the back as well, if "
"[code]false[/code], it is invisible when looking at it from behind."
msgstr ""
"Если [code]true[/code], текстуру можно увидеть и сзади, если [code]false[/"
"code], она невидима, если смотреть на нее сзади."

msgid ""
"If [code]true[/code], the texture is rendered at the same size regardless of "
"distance. The texture's size on screen is the same as if the camera was "
"[code]1.0[/code] units away from the texture's origin, regardless of the "
"actual distance from the camera. The [Camera3D]'s field of view (or [member "
"Camera3D.size] when in orthogonal/frustum mode) still affects the size the "
"sprite is drawn at."
msgstr ""
"Если [code]true[/code], текстура отображается с тем же размером, независимо "
"от расстояния. Размер текстуры на экране такой же, как если бы камера "
"находилась на расстоянии [code]1.0[/code] единиц от начала текстуры, "
"независимо от фактического расстояния от камеры. Поле зрения [Camera3D] (или "
"[member Camera3D.size] в ортогональном/усеченном режиме) по-прежнему влияет "
"на размер отрисовываемого спрайта."

msgid ""
"A color value used to [i]multiply[/i] the texture's colors. Can be used for "
"mood-coloring or to simulate the color of ambient light.\n"
"[b]Note:[/b] Unlike [member CanvasItem.modulate] for 2D, colors with values "
"above [code]1.0[/code] (overbright) are not supported.\n"
"[b]Note:[/b] If a [member GeometryInstance3D.material_override] is defined on "
"the [SpriteBase3D], the material override must be configured to take vertex "
"colors into account for albedo. Otherwise, the color defined in [member "
"modulate] will be ignored. For a [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] must be [code]true[/code]. For a "
"[ShaderMaterial], [code]ALBEDO *= COLOR.rgb;[/code] must be inserted in the "
"shader's [code]fragment()[/code] function."
msgstr ""
"Значение цвета, используемое для [i]умножения[/i] цветов текстуры. Может "
"использоваться для придания цвета настроению или для имитации цвета "
"окружающего света.\n"
"[b]Примечание:[/b] В отличие от [member CanvasItem.modulate] для 2D, цвета со "
"значениями выше [code]1.0[/code] (сверхяркий) не поддерживаются.\n"
"[b]Примечание:[/b] Если [member GeometryInstance3D.material_override] "
"определен в [SpriteBase3D], переопределение материала должно быть настроено "
"на учет цветов вершин для альбедо. В противном случае цвет, определенный в "
"[member modulate], будет проигнорирован. Для [BaseMaterial3D], [member "
"BaseMaterial3D.vertex_color_use_as_albedo] должен быть [code]true[/code]. Для "
"[ShaderMaterial] [code]ALBEDO *= COLOR.rgb;[/code] необходимо вставить в "
"функцию шейдера [code]fragment()[/code]."

msgid ""
"The texture's drawing offset.\n"
"[b]Note:[/b] When you increase [member offset].y in Sprite3D, the sprite "
"moves upward in world space (i.e., +Y is up)."
msgstr ""
"Смещение отрисовки текстуры.\n"
"[b]Примечание:[/b] При увеличении [member offset].y в Sprite3D спрайт "
"перемещается вверх в мировом пространстве (т. е. +Y вверх)."

msgid "The size of one pixel's width on the sprite to scale it in 3D."
msgstr "Размер ширины одного пикселя спрайта для его масштабирования в 3D."

msgid ""
"Sets the render priority for the sprite. Higher priority objects will be "
"sorted in front of lower priority objects.\n"
"[b]Note:[/b] This only applies if [member alpha_cut] is set to [constant "
"ALPHA_CUT_DISABLED] (default value).\n"
"[b]Note:[/b] This only applies to sorting of transparent objects. This will "
"not impact how transparent objects are sorted relative to opaque objects. "
"This is because opaque objects are not sorted, while transparent objects are "
"sorted from back to front (subject to priority)."
msgstr ""
"Устанавливает приоритет рендеринга для спрайта. Объекты с более высоким "
"приоритетом будут сортироваться перед объектами с более низким приоритетом.\n"
"[b]Примечание:[/b] Это применимо только в том случае, если [member alpha_cut] "
"установлен на [constant ALPHA_CUT_DISABLED] (значение по умолчанию).\n"
"[b]Примечание:[/b] Это применимо только к сортировке прозрачных объектов. Это "
"не повлияет на то, как прозрачные объекты сортируются относительно "
"непрозрачных объектов. Это связано с тем, что непрозрачные объекты не "
"сортируются, в то время как прозрачные объекты сортируются сзади вперед (в "
"зависимости от приоритета)."

msgid ""
"If [code]true[/code], the [Light3D] in the [Environment] has effects on the "
"sprite."
msgstr ""
"Если [code]true[/code], [Light3D] в [Environment] оказывает влияние на спрайт."

msgid ""
"Filter flags for the texture.\n"
"[b]Note:[/b] Linear filtering may cause artifacts around the edges, which are "
"especially noticeable on opaque textures. To prevent this, use textures with "
"transparent or identical colors around the edges."
msgstr ""
"Флаги фильтра для текстуры.\n"
"[b]Примечание:[/b] Линейная фильтрация может вызывать артефакты по краям, "
"которые особенно заметны на непрозрачных текстурах. Чтобы этого не произошло, "
"используйте текстуры с прозрачными или идентичными цветами по краям."

msgid ""
"If [code]true[/code], the texture's transparency and the opacity are used to "
"make those parts of the sprite invisible."
msgstr ""
"Если [code]true[/code], прозрачность текстуры используются, чтобы сделать эти "
"части спрайта невидимыми."

msgid ""
"If set, the texture's transparency and the opacity are used to make those "
"parts of the sprite invisible."
msgstr ""
"Если задано, прозрачность текстуры используются, чтобы сделать эти части "
"спрайта невидимыми."

msgid "If set, lights in the environment affect the sprite."
msgstr "Если установлено, то освещение в окружающей среде влияет на спрайт."

msgid ""
"If set, texture can be seen from the back as well. If not, the texture is "
"invisible when looking at it from behind."
msgstr ""
"Если установлено, то текстура видна и сзади. Если нет, то текстура не видна, "
"если смотреть сзади."

msgid ""
"This mode performs standard alpha blending. It can display translucent areas, "
"but transparency sorting issues may be visible when multiple transparent "
"materials are overlapping."
msgstr ""
"Этот режим выполняет стандартное альфа-смешивание. Он может отображать "
"полупрозрачные области, но проблемы с сортировкой прозрачности могут быть "
"видны, когда накладываются несколько прозрачных материалов."

msgid ""
"This mode only allows fully transparent or fully opaque pixels. Harsh edges "
"will be visible unless some form of screen-space antialiasing is enabled (see "
"[member ProjectSettings.rendering/anti_aliasing/quality/screen_space_aa]). On "
"the bright side, this mode doesn't suffer from transparency sorting issues "
"when multiple transparent materials are overlapping. This mode is also known "
"as [i]alpha testing[/i] or [i]1-bit transparency[/i]."
msgstr ""
"Этот режим допускает только полностью прозрачные или полностью непрозрачные "
"пиксели. Резкие края будут видны, если не включена какая-либо форма "
"сглаживания экранного пространства (см. [member ProjectSettings.rendering/"
"anti_aliasing/quality/screen_space_aa]). С другой стороны, этот режим не "
"страдает от проблем с сортировкой прозрачности, когда накладываются несколько "
"прозрачных материалов. Этот режим также известен как [i]альфа-тестирование[/"
"i] или [i]1-битная прозрачность[/i]."

msgid ""
"This mode draws fully opaque pixels in the depth prepass. This is slower than "
"[constant ALPHA_CUT_DISABLED] or [constant ALPHA_CUT_DISCARD], but it allows "
"displaying translucent areas and smooth edges while using proper sorting."
msgstr ""
"Этот режим рисует полностью непрозрачные пиксели в предварительном проходе "
"глубины. Это медленнее, чем [constant ALPHA_CUT_DISABLED] или [constant "
"ALPHA_CUT_DISCARD], но позволяет отображать полупрозрачные области и "
"сглаживать края при использовании правильной сортировки."

msgid "Sprite frame library for AnimatedSprite2D and AnimatedSprite3D."
msgstr "Библиотека кадров спрайтов для AnimatedSprite2D и AnimatedSprite3D."

msgid ""
"Sprite frame library for an [AnimatedSprite2D] or [AnimatedSprite3D] node. "
"Contains frames and animation data for playback."
msgstr ""
"Библиотека кадров спрайтов для узла [AnimatedSprite2D] или "
"[AnimatedSprite3D]. Содержит кадры и данные анимации для воспроизведения."

msgid "Adds a new [param anim] animation to the library."
msgstr "Добавляет новую анимацию [param anim] в библиотеку."

msgid ""
"Adds a frame to the [param anim] animation. If [param at_position] is "
"[code]-1[/code], the frame will be added to the end of the animation. [param "
"duration] specifies the relative duration, see [method get_frame_duration] "
"for details."
msgstr ""
"Добавляет кадр к анимации [param anim]. Если [param at_position] равен "
"[code]-1[/code], кадр будет добавлен в конец анимации. [param duration] "
"указывает относительную длительность, подробности см. в [method "
"get_frame_duration]."

msgid "Removes all frames from the [param anim] animation."
msgstr "Удаляет все кадры из анимации [param anim]."

msgid ""
"Removes all animations. An empty [code]default[/code] animation will be "
"created."
msgstr ""
"Удаляет все анимации. Будет создана пустая анимация [code]default[/code]."

msgid ""
"Duplicates the animation [param anim_from] to a new animation named [param "
"anim_to]. Fails if [param anim_to] already exists, or if [param anim_from] "
"does not exist."
msgstr ""
"Дублирует анимацию [param anim_from] в новую анимацию с именем [param "
"anim_to]. Не выполняется, если [param anim_to] уже существует или если [param "
"anim_from] не существует."

msgid ""
"Returns [code]true[/code] if the given animation is configured to loop when "
"it finishes playing. Otherwise, returns [code]false[/code]."
msgstr ""
"Возвращает [code]true[/code], если заданная анимация настроена на цикл после "
"завершения воспроизведения. В противном случае возвращает [code]false[/code]."

msgid ""
"Returns an array containing the names associated to each animation. Values "
"are placed in alphabetical order."
msgstr ""
"Возвращает массив, содержащий имена, связанные с каждой анимацией. Значения "
"располагаются в алфавитном порядке."

msgid "Returns the speed in frames per second for the [param anim] animation."
msgstr "Возвращает скорость в кадрах в секунду для анимации [param anim]."

msgid "Returns the number of frames for the [param anim] animation."
msgstr "Возвращает количество кадров для анимации [param anim]."

msgid ""
"Returns a relative duration of the frame [param idx] in the [param anim] "
"animation (defaults to [code]1.0[/code]). For example, a frame with a "
"duration of [code]2.0[/code] is displayed twice as long as a frame with a "
"duration of [code]1.0[/code]. You can calculate the absolute duration (in "
"seconds) of a frame using the following formula:\n"
"[codeblock]\n"
"absolute_duration = relative_duration / (animation_fps * abs(playing_speed))\n"
"[/codeblock]\n"
"In this example, [code]playing_speed[/code] refers to either [method "
"AnimatedSprite2D.get_playing_speed] or [method "
"AnimatedSprite3D.get_playing_speed]."
msgstr ""
"Возвращает относительную длительность кадра [param idx] в анимации [param "
"anim] (по умолчанию [code]1.0[/code]). Например, кадр с длительностью "
"[code]2.0[/code] отображается в два раза дольше кадра с длительностью "
"[code]1.0[/code]. Вы можете рассчитать абсолютную длительность (в секундах) "
"кадра, используя следующую формулу:\n"
"[codeblock]\n"
"absolute_duration = relative_duration / (animation_fps * abs(playing_speed))\n"
"[/codeblock]\n"
"В этом примере [code]playing_speed[/code] относится либо к [method "
"AnimatedSprite2D.get_playing_speed], либо к [method "
"AnimatedSprite3D.get_playing_speed]."

msgid ""
"Returns the texture of the frame [param idx] in the [param anim] animation."
msgstr "Возвращает текстуру кадра [param idx] в анимации [param anim]."

msgid "Returns [code]true[/code] if the [param anim] animation exists."
msgstr "Возвращает [code]true[/code], если анимация [param anim] существует."

msgid "Removes the [param anim] animation."
msgstr "Удаляет анимацию [param anim]."

msgid "Removes the [param anim] animation's frame [param idx]."
msgstr "Удаляет кадр анимации [param anim] [param idx]."

msgid "Changes the [param anim] animation's name to [param newname]."
msgstr "Изменяет имя анимации [param anim] на [param newname]."

msgid ""
"If [param loop] is [code]true[/code], the [param anim] animation will loop "
"when it reaches the end, or the start if it is played in reverse."
msgstr ""
"Если [param loop] равен [code]true[/code], анимация [param anim] будет "
"повторяться по достижении конца , или начала если она воспроизводится в "
"обратном порядке."

msgid "Sets the speed for the [param anim] animation in frames per second."
msgstr "Устанавливает скорость анимации [param anim] в кадрах в секунду."

msgid ""
"Sets the [param texture] and the [param duration] of the frame [param idx] in "
"the [param anim] animation. [param duration] specifies the relative duration, "
"see [method get_frame_duration] for details."
msgstr ""
"Устанавливает [param texture] и [param duration] кадра [param idx] в анимации "
"[param anim]. [param duration] указывает относительную длительность, "
"подробности см. в [method get_frame_duration]."

msgid "A PBR (Physically Based Rendering) material to be used on 3D objects."
msgstr ""
"Материал PBR (физически обоснованный рендеринг) для использования на 3D-"
"объектах."

msgid ""
"[StandardMaterial3D]'s properties are inherited from [BaseMaterial3D]. "
"[StandardMaterial3D] uses separate textures for ambient occlusion, roughness "
"and metallic maps. To use a single ORM map for all 3 textures, use an "
"[ORMMaterial3D] instead."
msgstr ""
"Свойства [StandardMaterial3D] унаследованы от [BaseMaterial3D]. "
"[StandardMaterial3D] использует отдельные текстуры для карт окклюзии "
"окружающего пространства, шероховатости и металличности. Чтобы использовать "
"одну карту ORM для всех 3 текстур, используйте вместо этого [ORMMaterial3D]."

msgid ""
"A 2D physics body that can't be moved by external forces. When moved "
"manually, it doesn't affect other bodies in its path."
msgstr ""
"Физическое тело 2D, которое не может быть перемещено внешними силами. При "
"перемещении вручную оно не влияет на другие тела на своем пути."

msgid ""
"A static 2D physics body. It can't be moved by external forces or contacts, "
"but can be moved manually by other means such as code, [AnimationMixer]s "
"(with [member AnimationMixer.callback_mode_process] set to [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), and "
"[RemoteTransform2D].\n"
"When [StaticBody2D] is moved, it is teleported to its new position without "
"affecting other physics bodies in its path. If this is not desired, use "
"[AnimatableBody2D] instead.\n"
"[StaticBody2D] is useful for completely static objects like floors and walls, "
"as well as moving surfaces like conveyor belts and circular revolving "
"platforms (by using [member constant_linear_velocity] and [member "
"constant_angular_velocity])."
msgstr ""
"Статическое 2D физическое тело. Его нельзя перемещать внешними силами или "
"контактами, но можно перемещать вручную другими способами, такими как код, "
"[AnimationMixer] (с [member AnimationMixer.callback_mode_process] "
"установленным на [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]) и "
"[RemoteTransform2D].\n"
"При перемещении [StaticBody2D] оно телепортируется в новое положение, не "
"влияя на другие физические тела на своем пути. Если это нежелательно, "
"используйте вместо этого [AnimatableBody2D].\n"
"[StaticBody2D] полезно для полностью статических объектов, таких как полы и "
"стены, а также для движущихся поверхностей, таких как конвейерные ленты и "
"круговые вращающиеся платформы (с использованием [member "
"constant_linear_velocity] и [member constant_angular_velocity])."

msgid ""
"The body's constant angular velocity. This does not rotate the body, but "
"affects touching bodies, as if it were rotating."
msgstr ""
"Постоянная угловая скорость тела. Это не вращает тело, но действует на "
"соприкасающиеся тела, как если бы оно вращалось."

msgid ""
"The body's constant linear velocity. This does not move the body, but affects "
"touching bodies, as if it were moving."
msgstr ""
"Постоянная линейная скорость тела. Она не двигает само тело, но воздействует "
"на соприкасающиеся тела, как если бы оно двигалось."

msgid ""
"A 3D physics body that can't be moved by external forces. When moved "
"manually, it doesn't affect other bodies in its path."
msgstr ""
"Физическое тело 3D, которое не может быть перемещено внешними силами. При "
"перемещении вручную оно не влияет на другие тела на своем пути."

msgid ""
"A static 3D physics body. It can't be moved by external forces or contacts, "
"but can be moved manually by other means such as code, [AnimationMixer]s "
"(with [member AnimationMixer.callback_mode_process] set to [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]), and "
"[RemoteTransform3D].\n"
"When [StaticBody3D] is moved, it is teleported to its new position without "
"affecting other physics bodies in its path. If this is not desired, use "
"[AnimatableBody3D] instead.\n"
"[StaticBody3D] is useful for completely static objects like floors and walls, "
"as well as moving surfaces like conveyor belts and circular revolving "
"platforms (by using [member constant_linear_velocity] and [member "
"constant_angular_velocity])."
msgstr ""
"Статическое трехмерное физическое тело. Его нельзя перемещать внешними силами "
"или контактами, но можно перемещать вручную другими способами, такими как "
"код, [AnimationMixer] (с [member AnimationMixer.callback_mode_process] "
"установленным на [constant "
"AnimationMixer.ANIMATION_CALLBACK_MODE_PROCESS_PHYSICS]) и "
"[RemoteTransform3D].\n"
"При перемещении [StaticBody3D] оно телепортируется в новое положение, не "
"влияя на другие физические тела на своем пути. Если это нежелательно, "
"используйте вместо этого [AnimatableBody3D].\n"
"[StaticBody3D] полезно для полностью статических объектов, таких как полы и "
"стены, а также для движущихся поверхностей, таких как конвейерные ленты и "
"круговые вращающиеся платформы (с использованием [member "
"constant_linear_velocity] и [member constant_angular_velocity])."

msgid ""
"Application status indicator (aka notification area icon).\n"
"[b]Note:[/b] Status indicator is implemented on macOS and Windows."
msgstr ""
"Индикатор состояния приложения (он же значок в области уведомлений).\n"
"[b]Примечание:[/b] Индикатор состояния реализован в macOS и Windows."

msgid ""
"Returns the status indicator rectangle in screen coordinates. If this status "
"indicator is not visible, returns an empty [Rect2]."
msgstr ""
"Возвращает прямоугольник индикатора состояния в экранных координатах. Если "
"этот индикатор состояния не виден, возвращает пустой [Rect2]."

msgid "Status indicator icon."
msgstr "Значок индикатора состояния."

msgid ""
"Status indicator native popup menu. If this is set, the [signal pressed] "
"signal is not emitted.\n"
"[b]Note:[/b] Native popup is only supported if [NativeMenu] supports "
"[constant NativeMenu.FEATURE_POPUP_MENU] feature."
msgstr ""
"Индикатор состояния собственного всплывающего меню. Если это установлено, "
"сигнал [signal press] не выдается.\n"
"[b]Примечание:[/b] Собственное всплывающее меню поддерживается только в том "
"случае, если [NativeMenu] поддерживает функцию [constant "
"NativeMenu.FEATURE_POPUP_MENU]."

msgid "Status indicator tooltip."
msgstr "Подсказка индикатора состояния."

msgid "If [code]true[/code], the status indicator is visible."
msgstr "Если [code]true[/code], индикатор состояния виден."

msgid "Emitted when the status indicator is pressed."
msgstr "Издается при нажатии индикатора состояния."

msgid "Abstract base class for interacting with streams."
msgstr "Абстрактный базовый класс для взаимодействия с потоками."

msgid ""
"StreamPeer is an abstract base class mostly used for stream-based protocols "
"(such as TCP). It provides an API for sending and receiving data through "
"streams as raw data or strings.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"StreamPeer — абстрактный базовый класс, в основном используемый для потоковых "
"протоколов (таких как TCP). Он предоставляет API для отправки и получения "
"данных через потоки в виде необработанных данных или строк.\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid "Gets a signed byte from the stream."
msgstr "Получает знаковый байт из потока."

msgid "Gets a signed 16-bit value from the stream."
msgstr "Получает из потока знаковое 16-битное значение."

msgid "Gets a signed 32-bit value from the stream."
msgstr "Получает из потока знаковое 32-битное значение."

msgid "Gets a signed 64-bit value from the stream."
msgstr "Получает из потока знаковое 64-битное значение."

msgid "Returns the number of bytes this [StreamPeer] has available."
msgstr "Возвращает количество байтов, доступных этому [StreamPeer]."

msgid ""
"Returns a chunk data with the received bytes. The number of bytes to be "
"received can be requested in the [param bytes] argument. If not enough bytes "
"are available, the function will block until the desired amount is received. "
"This function returns two values, an [enum Error] code and a data array."
msgstr ""
"Возвращает фрагмент данных с полученными байтами. Количество байтов для "
"получения можно запросить в аргументе [param bytes]. Если байтов "
"недостаточно, функция заблокируется до получения нужного количества. Эта "
"функция возвращает два значения: код [enum Error] и массив данных."

msgid "Gets a double-precision float from the stream."
msgstr "Получает из потока число с плавающей точкой двойной точности."

msgid "Gets a single-precision float from the stream."
msgstr "Получает из потока число с плавающей точкой одинарной точности."

msgid "Gets a half-precision float from the stream."
msgstr "Получает из потока число с плавающей точкой половинной точности."

msgid ""
"Returns a chunk data with the received bytes. The number of bytes to be "
"received can be requested in the [param bytes] argument. If not enough bytes "
"are available, the function will return how many were actually received. This "
"function returns two values: an [enum Error] code and a data array."
msgstr ""
"Возвращает фрагмент данных с полученными байтами. Количество байтов для "
"получения можно запросить в аргументе [param bytes]. Если доступно "
"недостаточно байтов, функция вернет, сколько их было фактически получено. Эта "
"функция возвращает два значения: код [enum Error] и массив данных."

msgid ""
"Gets an ASCII string with byte-length [param bytes] from the stream. If "
"[param bytes] is negative (default) the length will be read from the stream "
"using the reverse process of [method put_string]."
msgstr ""
"Получает строку ASCII с длиной байта [param bytes] из потока. Если [param "
"bytes] отрицательный (по умолчанию), длина будет считана из потока с "
"использованием обратного процесса [method put_string]."

msgid "Gets an unsigned byte from the stream."
msgstr "Получает беззнаковый байт из потока."

msgid "Gets an unsigned 16-bit value from the stream."
msgstr "Получает из потока беззнаковое 16-битное значение."

msgid "Gets an unsigned 32-bit value from the stream."
msgstr "Получает из потока беззнаковое 32-битное значение."

msgid "Gets an unsigned 64-bit value from the stream."
msgstr "Получает беззнаковое 64-битное значение из потока."

msgid ""
"Gets a UTF-8 string with byte-length [param bytes] from the stream (this "
"decodes the string sent as UTF-8). If [param bytes] is negative (default) the "
"length will be read from the stream using the reverse process of [method "
"put_utf8_string]."
msgstr ""
"Получает строку UTF-8 с длиной байта [param bytes] из потока (это декодирует "
"строку, отправленную как UTF-8). Если [param bytes] отрицательный (по "
"умолчанию), длина будет считана из потока с использованием обратного процесса "
"[method put_utf8_string]."

msgid ""
"Gets a Variant from the stream. If [param allow_objects] is [code]true[/"
"code], decoding objects is allowed.\n"
"Internally, this uses the same decoding mechanism as the [method "
"@GlobalScope.bytes_to_var] method.\n"
"[b]Warning:[/b] Deserialized objects can contain code which gets executed. Do "
"not use this option if the serialized object comes from untrusted sources to "
"avoid potential security threats such as remote code execution."
msgstr ""
"Получает Variant из потока. Если [param allow_objects] равен [code]true[/"
"code], декодирование объектов разрешено.\n"
"Внутренне это использует тот же механизм декодирования, что и метод [method "
"@GlobalScope.bytes_to_var].\n"
"[b]Предупреждение:[/b] Десериализованные объекты могут содержать код, который "
"выполняется. Не используйте эту опцию, если сериализованный объект поступает "
"из ненадежных источников, чтобы избежать потенциальных угроз безопасности, "
"таких как удаленное выполнение кода."

msgid "Puts a signed byte into the stream."
msgstr "Помещает в поток знаковый байт."

msgid "Puts a signed 16-bit value into the stream."
msgstr "Помещает в поток знаковое 16-битное значение."

msgid "Puts a signed 32-bit value into the stream."
msgstr "Помещает в поток 32-битное значение со знаком."

msgid "Puts a signed 64-bit value into the stream."
msgstr "Помещает в поток знаковое 64-битное значение."

msgid ""
"Sends a chunk of data through the connection, blocking if necessary until the "
"data is done sending. This function returns an [enum Error] code."
msgstr ""
"Отправляет часть данных через соединение, блокируя при необходимости, пока "
"данные не будут отправлены. Эта функция возвращает код [enum Error]."

msgid "Puts a double-precision float into the stream."
msgstr "Помещает в поток число с плавающей точкой двойной точности."

msgid "Puts a single-precision float into the stream."
msgstr "Помещает в поток число с плавающей точкой одинарной точности."

msgid "Puts a half-precision float into the stream."
msgstr "Помещает в поток число с плавающей точкой половинной точности."

msgid ""
"Sends a chunk of data through the connection. If all the data could not be "
"sent at once, only part of it will. This function returns two values, an "
"[enum Error] code and an integer, describing how much data was actually sent."
msgstr ""
"Отправляет часть данных через соединение. Если все данные не могут быть "
"отправлены сразу, будет отправлена только часть. Эта функция возвращает два "
"значения: код [enum Error] и целое число, описывающее, сколько данных было "
"фактически отправлено."

msgid ""
"Puts a zero-terminated ASCII string into the stream prepended by a 32-bit "
"unsigned integer representing its size.\n"
"[b]Note:[/b] To put an ASCII string without prepending its size, you can use "
"[method put_data]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"put_data(\"Hello world\".to_ascii_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"PutData(\"Hello World\".ToAsciiBuffer());\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Помещает в поток строку ASCII с нулевым завершением, к которой добавляется 32-"
"битное беззнаковое целое число, представляющее ее размер.\n"
"[b]Примечание:[/b] Чтобы поместить строку ASCII без добавления ее размера, "
"можно использовать [method put_data]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"put_data(\"Hello world\".to_ascii_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"PutData(\"Hello World\".ToAsciiBuffer());\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Puts an unsigned byte into the stream."
msgstr "Помещает в поток беззнаковый байт."

msgid "Puts an unsigned 16-bit value into the stream."
msgstr "Помещает в поток беззнаковое 16-битное значение."

msgid "Puts an unsigned 32-bit value into the stream."
msgstr "Помещает в поток беззнаковое 32-битное значение."

msgid "Puts an unsigned 64-bit value into the stream."
msgstr "Помещает в поток беззнаковое 64-битное значение."

msgid ""
"Puts a zero-terminated UTF-8 string into the stream prepended by a 32 bits "
"unsigned integer representing its size.\n"
"[b]Note:[/b] To put a UTF-8 string without prepending its size, you can use "
"[method put_data]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"put_data(\"Hello world\".to_utf8_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"PutData(\"Hello World\".ToUtf8Buffer());\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Помещает в поток строку UTF-8 с нулевым завершением, к которой добавляется 32-"
"битное беззнаковое целое число, представляющее ее размер.\n"
"[b]Примечание:[/b] Чтобы поместить строку UTF-8 без добавления ее размера, "
"можно использовать [method put_data]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"put_data(\"Hello world\".to_utf8_buffer())\n"
"[/gdscript]\n"
"[csharp]\n"
"PutData(\"Hello World\".ToUtf8Buffer());\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Puts a Variant into the stream. If [param full_objects] is [code]true[/code] "
"encoding objects is allowed (and can potentially include code).\n"
"Internally, this uses the same encoding mechanism as the [method "
"@GlobalScope.var_to_bytes] method."
msgstr ""
"Помещает Variant в поток. Если [param full_objects] равен [code]true[/code], "
"кодирование объектов разрешено (и потенциально может включать код).\n"
"Внутри это использует тот же механизм кодирования, что и метод [method "
"@GlobalScope.var_to_bytes]."

msgid ""
"If [code]true[/code], this [StreamPeer] will using big-endian format for "
"encoding and decoding."
msgstr ""
"Если [code]true[/code], этот [StreamPeer] будет использовать формат big-"
"endian для кодирования и декодирования."

msgid "A stream peer used to handle binary data streams."
msgstr "Потоковый узел, используемый для обработки двоичных потоков данных."

msgid ""
"A data buffer stream peer that uses a byte array as the stream. This object "
"can be used to handle binary data from network sessions. To handle binary "
"data stored in files, [FileAccess] can be used directly.\n"
"A [StreamPeerBuffer] object keeps an internal cursor which is the offset in "
"bytes to the start of the buffer. Get and put operations are performed at the "
"cursor position and will move the cursor accordingly."
msgstr ""
"Одноранговый узел потока буфера данных, который использует массив байтов в "
"качестве потока. Этот объект может использоваться для обработки двоичных "
"данных из сетевых сеансов. Для обработки двоичных данных, хранящихся в "
"файлах, можно использовать [FileAccess] напрямую.\n"
"Объект [StreamPeerBuffer] хранит внутренний курсор, который является "
"смещением в байтах относительно начала буфера. Операции Get и Put выполняются "
"в позиции курсора и перемещают курсор соответствующим образом."

msgid "Clears the [member data_array] and resets the cursor."
msgstr "Очищает [member data_array] и сбрасывает курсор."

msgid ""
"Returns a new [StreamPeerBuffer] with the same [member data_array] content."
msgstr ""
"Возвращает новый [StreamPeerBuffer] с тем же содержимым [member data_array]."

msgid "Returns the current cursor position."
msgstr "Возвращает текущую позицию курсора."

msgid "Returns the size of [member data_array]."
msgstr "Возвращает размер [member data_array]."

msgid "Resizes the [member data_array]. This [i]doesn't[/i] update the cursor."
msgstr "Изменяет размер [member data_array]. Это [i]не[/i] обновляет курсор."

msgid ""
"Moves the cursor to the specified position. [param position] must be a valid "
"index of [member data_array]."
msgstr ""
"Перемещает курсор в указанную позицию. [param position] должен быть "
"допустимым индексом [member data_array]."

msgid "The underlying data buffer. Setting this value resets the cursor."
msgstr "Базовый буфер данных. Установка этого значения сбрасывает курсор."

msgid "A stream peer that handles GZIP and deflate compression/decompression."
msgstr "Потоковый узел, который обрабатывает сжатие/распаковку GZIP и deflate."

msgid ""
"This class allows to compress or decompress data using GZIP/deflate in a "
"streaming fashion. This is particularly useful when compressing or "
"decompressing files that have to be sent through the network without needing "
"to allocate them all in memory.\n"
"After starting the stream via [method start_compression] (or [method "
"start_decompression]), calling [method StreamPeer.put_partial_data] on this "
"stream will compress (or decompress) the data, writing it to the internal "
"buffer. Calling [method StreamPeer.get_available_bytes] will return the "
"pending bytes in the internal buffer, and [method "
"StreamPeer.get_partial_data] will retrieve the compressed (or decompressed) "
"bytes from it. When the stream is over, you must call [method finish] to "
"ensure the internal buffer is properly flushed (make sure to call [method "
"StreamPeer.get_available_bytes] on last time to check if more data needs to "
"be read after that)."
msgstr ""
"Этот класс позволяет сжимать или распаковывать данные с помощью GZIP/deflate "
"в потоковом режиме. Это особенно полезно при сжатии или распаковке файлов, "
"которые должны быть отправлены по сети без необходимости выделения их всех в "
"памяти.\n"
"После запуска потока с помощью [method start_compression] (или [method "
"start_decompression]), вызов [method StreamPeer.put_partial_data] для этого "
"потока сожмет (или распакует) данные, записав их во внутренний буфер. Вызов "
"[method StreamPeer.get_available_bytes] вернет ожидающие байты во внутреннем "
"буфере, а [method StreamPeer.get_partial_data] извлечет из него сжатые (или "
"распакованные) байты. Когда поток завершится, необходимо вызвать [method "
"finish], чтобы убедиться, что внутренний буфер правильно очищен (не забудьте "
"вызвать [method StreamPeer.get_available_bytes] в последний раз, чтобы "
"проверить, нужно ли считывать дополнительные данные после этого)."

msgid "Clears this stream, resetting the internal state."
msgstr "Очищает этот поток, сбрасывая внутреннее состояние."

msgid ""
"Finalizes the stream, compressing any buffered chunk left.\n"
"You must call it only when you are compressing."
msgstr ""
"Завершает поток, сжимая любой оставшийся буферизованный фрагмент. \n"
"Вызвать его нужно только при сжатии."

msgid ""
"Start the stream in compression mode with the given [param buffer_size], if "
"[param use_deflate] is [code]true[/code] uses deflate instead of GZIP."
msgstr ""
"Запустить поток в режиме сжатия с заданным [param buffer_size], если [param "
"use_deflate] равен [code]true[/code], вместо GZIP будет использоваться "
"deflate."

msgid ""
"Start the stream in decompression mode with the given [param buffer_size], if "
"[param use_deflate] is [code]true[/code] uses deflate instead of GZIP."
msgstr ""
"Запустить поток в режиме распаковки с заданным [param buffer_size], если "
"[param use_deflate] равен [code]true[/code], то вместо GZIP будет "
"использоваться deflate."

msgid "A stream peer that handles TCP connections."
msgstr "Потоковый узел, обрабатывающий TCP-соединения."

msgid ""
"A stream peer that handles TCP connections. This object can be used to "
"connect to TCP servers, or also is returned by a TCP server.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"Потоковый одноранговый узел, обрабатывающий TCP-соединения. Этот объект может "
"использоваться для подключения к TCP-серверам или также возвращается TCP-"
"сервером.\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid ""
"Opens the TCP socket, and binds it to the specified local address.\n"
"This method is generally not needed, and only used to force the subsequent "
"call to [method connect_to_host] to use the specified [param host] and [param "
"port] as source address. This can be desired in some NAT punchthrough "
"techniques, or when forcing the source network interface."
msgstr ""
"Открывает сокет TCP и привязывает его к указанному локальному адресу. \n"
"Этот метод обычно не нужен и используется только для принудительного "
"использования последующего вызова [method connect_to_host] указанного [param "
"host] и [param port] в качестве исходного адреса. Это может быть желательно в "
"некоторых методах сквозного NAT или при принудительном использовании "
"исходного сетевого интерфейса."

msgid ""
"Connects to the specified [code]host:port[/code] pair. A hostname will be "
"resolved if valid. Returns [constant OK] on success."
msgstr ""
"Подключается к указанной паре [code]host:port[/code]. Имя хоста будет "
"разрешено, если оно допустимо. Возвращает [constant OK] в случае успеха."

msgid "Disconnects from host."
msgstr "Отключение от хоста."

msgid "Returns the IP of this peer."
msgstr "Возвращает IP-адрес этого однорангового узла."

msgid "Returns the port of this peer."
msgstr "Возвращает порт данного однорангового узла."

msgid "Poll the socket, updating its state. See [method get_status]."
msgstr "Опрос сокета, обновление его состояния. См. [method get_status]."

msgid ""
"If [param enabled] is [code]true[/code], packets will be sent immediately. If "
"[param enabled] is [code]false[/code] (the default), packet transfers will be "
"delayed and combined using [url=https://en.wikipedia.org/wiki/"
"Nagle%27s_algorithm]Nagle's algorithm[/url].\n"
"[b]Note:[/b] It's recommended to leave this disabled for applications that "
"send large packets or need to transfer a lot of data, as enabling this can "
"decrease the total available bandwidth."
msgstr ""
"Если [param enabled] равно [code]true[/code], пакеты будут отправляться "
"немедленно. Если [param enabled] равно [code]false[/code] (по умолчанию), "
"передача пакетов будет отложена и объединена с использованием [url=https://"
"en.wikipedia.org/wiki/Nagle%27s_algorithm]алгоритма Нагля[/url].\n"
"[b]Примечание:[/b] Рекомендуется оставить этот параметр отключенным для "
"приложений, которые отправляют большие пакеты или которым необходимо "
"передавать много данных, так как его включение может уменьшить общую "
"доступную пропускную способность."

msgid ""
"The initial status of the [StreamPeerTCP]. This is also the status after "
"disconnecting."
msgstr "Начальный статус [StreamPeerTCP]. Это также статус после отключения."

msgid "A status representing a [StreamPeerTCP] that is connecting to a host."
msgstr "Статус, представляющий [StreamPeerTCP], который подключается к хосту."

msgid "A status representing a [StreamPeerTCP] that is connected to a host."
msgstr "Статус, представляющий [StreamPeerTCP], подключенный к хосту."

msgid "A status representing a [StreamPeerTCP] in error state."
msgstr "Статус, представляющий [StreamPeerTCP] в состоянии ошибки."

msgid "A stream peer that handles TLS connections."
msgstr "Потоковый узел, обрабатывающий TLS-соединения."

msgid ""
"A stream peer that handles TLS connections. This object can be used to "
"connect to a TLS server or accept a single TLS client connection.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"Потоковый одноранговый узел, который обрабатывает соединения TLS. Этот объект "
"может использоваться для подключения к серверу TLS или принятия одного "
"клиентского соединения TLS.\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid ""
"Accepts a peer connection as a server using the given [param server_options]. "
"See [method TLSOptions.server]."
msgstr ""
"Принимает одноранговое соединение как сервер, используя заданный [param "
"server_options]. См. [method TLSOptions.server]."

msgid ""
"Connects to a peer using an underlying [StreamPeer] [param stream] and "
"verifying the remote certificate is correctly signed for the given [param "
"common_name]. You can pass the optional [param client_options] parameter to "
"customize the trusted certification authorities, or disable the common name "
"verification. See [method TLSOptions.client] and [method "
"TLSOptions.client_unsafe]."
msgstr ""
"Подключается к одноранговому узлу с использованием базового [StreamPeer] "
"[param stream] и проверки того, что удаленный сертификат правильно подписан "
"для заданного [param common_name]. Вы можете передать необязательный параметр "
"[param client_options], чтобы настроить доверенные центры сертификации или "
"отключить проверку общего имени. См. [method TLSOptions.client] и [method "
"TLSOptions.client_unsafe]."

msgid ""
"Returns the underlying [StreamPeer] connection, used in [method "
"accept_stream] or [method connect_to_stream]."
msgstr ""
"Возвращает базовое соединение [StreamPeer], используемое в [method "
"accept_stream] или [method connect_to_stream]."

msgid ""
"Poll the connection to check for incoming bytes. Call this right before "
"[method StreamPeer.get_available_bytes] for it to work properly."
msgstr ""
"Опросите соединение, чтобы проверить входящие байты. Вызовите это прямо перед "
"[method StreamPeer.get_available_bytes], чтобы все работало правильно."

msgid "A status representing a [StreamPeerTLS] that is disconnected."
msgstr "Статус, представляющий [StreamPeerTLS], который отключен."

msgid "A status representing a [StreamPeerTLS] during handshaking."
msgstr "Статус, представляющий [StreamPeerTLS] во время установления связи."

msgid "A status representing a [StreamPeerTLS] that is connected to a host."
msgstr "Статус, представляющий [StreamPeerTLS], подключенный к хосту."

msgid "A status representing a [StreamPeerTLS] in error state."
msgstr "Статус, представляющий [StreamPeerTLS] в состоянии ошибки."

msgid ""
"An error status that shows a mismatch in the TLS certificate domain presented "
"by the host and the domain requested for validation."
msgstr ""
"Статус ошибки, указывающий на несоответствие домена сертификата TLS, "
"представленного хостом, и домена, запрошенного для проверки."

msgid "A built-in type for strings."
msgstr "Встроенный тип для строк."

msgid ""
"This is the built-in string Variant type (and the one used by GDScript). "
"Strings may contain any number of Unicode characters, and expose methods "
"useful for manipulating and generating strings. Strings are reference-counted "
"and use a copy-on-write approach (every modification to a string returns a "
"new [String]), so passing them around is cheap in resources.\n"
"Some string methods have corresponding variations. Variations suffixed with "
"[code]n[/code] ([method countn], [method findn], [method replacen], etc.) are "
"[b]case-insensitive[/b] (they make no distinction between uppercase and "
"lowercase letters). Method variations prefixed with [code]r[/code] ([method "
"rfind], [method rsplit], etc.) are reversed, and start from the end of the "
"string, instead of the beginning.\n"
"To convert any [Variant] to or from a string, see [method @GlobalScope.str], "
"[method @GlobalScope.str_to_var], and [method @GlobalScope.var_to_str].\n"
"[b]Note:[/b] In a boolean context, a string will evaluate to [code]false[/"
"code] if it is empty ([code]\"\"[/code]). Otherwise, a string will always "
"evaluate to [code]true[/code]."
msgstr ""
"Это встроенный тип строки Variant (используемый GDScript). Строки могут "
"содержать любое количество символов Unicode и предоставлять методы, полезные "
"для манипулирования и генерации строк. Строки подсчитываются по ссылкам и "
"используют подход копирования при записи (каждая модификация строки "
"возвращает новую [String]), поэтому их передача обходится дешево с точки "
"зрения ресурсов.\n"
"Некоторые строковые методы имеют соответствующие вариации. Вариации с "
"суффиксом [code]n[/code] ([method countn], [method findn], [method replacen] "
"и т. д.) [b]нечувствительны к регистру[/b] (они не различают заглавные и "
"строчные буквы). Вариации методов с префиксом [code]r[/code] ([method rfind], "
"[method rsplit] и т. д.) меняются местами и начинаются с конца строки, а не с "
"начала.\n"
"Чтобы преобразовать любой [Variant] в строку или из нее, см. [method "
"@GlobalScope.str], [method @GlobalScope.str_to_var] и [method "
"@GlobalScope.var_to_str].\n"
"[b]Примечание:[/b] В булевом контексте строка будет оцениваться как "
"[code]false[/code], если она пустая ([code]\"\"[/code]). В противном случае "
"строка всегда будет оцениваться как [code]true[/code]."

msgid "GDScript format strings"
msgstr "Форматирование строки GDScript"

msgid "Constructs an empty [String] ([code]\"\"[/code])."
msgstr "Создает пустой [String] ([code]\"\"[/code])."

msgid "Constructs a [String] as a copy of the given [String]."
msgstr "Создает [String] как копию заданной [String]."

msgid "Constructs a new [String] from the given [NodePath]."
msgstr "Создает новый [String] из заданного [NodePath]."

msgid "Constructs a new [String] from the given [StringName]."
msgstr "Создает новый [String] из заданной [StringName]."

msgid ""
"Returns [code]true[/code] if the string begins with the given [param text]. "
"See also [method ends_with]."
msgstr ""
"Возвращает [code]true[/code], если строка начинается с указанного [param "
"text]. См. также [method ends_with]."

msgid ""
"Returns an array containing the bigrams (pairs of consecutive characters) of "
"this string.\n"
"[codeblock]\n"
"print(\"Get up!\".bigrams()) # Prints [\"Ge\", \"et\", \"t \", \" u\", "
"\"up\", \"p!\"]\n"
"[/codeblock]"
msgstr ""
"Возвращает массив, содержащий биграммы (пары последовательных символов) "
"данной строки.\n"
"[codeblock]\n"
"print(\"Get up!\".bigrams()) # Prints [\"Ge\", \"et\", \"t \", \" u\", "
"\"up\", \"p!\"]\n"
"[/codeblock]"

msgid ""
"Converts the string representing a binary number into an [int]. The string "
"may optionally be prefixed with [code]\"0b\"[/code], and an additional [code]-"
"[/code] prefix for negative numbers.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"101\".bin_to_int())   # Prints 5\n"
"print(\"0b101\".bin_to_int()) # Prints 5\n"
"print(\"-0b10\".bin_to_int()) # Prints -2\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"101\".BinToInt());   // Prints 5\n"
"GD.Print(\"0b101\".BinToInt()); // Prints 5\n"
"GD.Print(\"-0b10\".BinToInt()); // Prints -2\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Преобразует строку, представляющую двоичное число, в [int]. Строка может "
"иметь необязательный префикс [code]\"0b\"[/code] и дополнительный префикс "
"[code]-[/code] для отрицательных чисел.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"101\".bin_to_int())   # Выводит 5\n"
"print(\"0b101\".bin_to_int()) # Выводит 5\n"
"print(\"-0b10\".bin_to_int()) # Выводит -2\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"101\".BinToInt());   // Выводит 5\n"
"GD.Print(\"0b101\".BinToInt()); // Выводит 5\n"
"GD.Print(\"-0b10\".BinToInt()); // Выводит -2\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a copy of the string with special characters escaped using the C "
"language standard."
msgstr ""
"Возвращает копию строки со специальными символами, экранированными с "
"использованием стандарта языка C."

msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings. Supported escape sequences are [code]\\'[/code], [code]\\\"[/code], "
"[code]\\\\[/code], [code]\\a[/code], [code]\\b[/code], [code]\\f[/code], "
"[code]\\n[/code], [code]\\r[/code], [code]\\t[/code], [code]\\v[/code].\n"
"[b]Note:[/b] Unlike the GDScript parser, this method doesn't support the "
"[code]\\uXXXX[/code] escape sequence."
msgstr ""
"Возвращает копию строки с экранированными символами, замененными их "
"значениями. Поддерживаемые экранированные последовательности: [code]\\'[/"
"code], [code]\\\"[/code], [code]\\\\[/code], [code]\\a[/code], [code]\\b[/"
"code], [code]\\f[/code], [code]\\n[/code], [code]\\r[/code], [code]\\t[/"
"code], [code]\\v[/code].\n"
"[b]Примечание:[/b] В отличие от парсера GDScript, этот метод не поддерживает "
"экранированную последовательность [code]\\uXXXX[/code]."

msgid ""
"Changes the appearance of the string: replaces underscores ([code]_[/code]) "
"with spaces, adds spaces before uppercase letters in the middle of a word, "
"converts all letters to lowercase, then converts the first one and each one "
"following a space to uppercase.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"move_local_x\".capitalize()   # Returns \"Move Local X\"\n"
"\"sceneFile_path\".capitalize() # Returns \"Scene File Path\"\n"
"\"2D, FPS, PNG\".capitalize()   # Returns \"2d, Fps, Png\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"move_local_x\".Capitalize();   // Returns \"Move Local X\"\n"
"\"sceneFile_path\".Capitalize(); // Returns \"Scene File Path\"\n"
"\"2D, FPS, PNG\".Capitalize();   // Returns \"2d, Fps, Png\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Изменяет внешний вид строки: заменяет подчеркивания ([code]_[/code]) "
"пробелами, добавляет пробелы перед заглавными буквами в середине слова, "
"преобразует все буквы в строчные, затем преобразует первую букву и каждую "
"букву после пробела в заглавные.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"move_local_x\".capitalize()   # Возвращает \"Move Local X\"\n"
"\"sceneFile_path\".capitalize() # Возвращает \"Scene File Path\"\n"
"\"2D, FPS, PNG\".capitalize()   # Возвращает \"2d, Fps, Png\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"move_local_x\".Capitalize();   // Возвращает \"Move Local X\"\n"
"\"sceneFile_path\".Capitalize(); // Возвращает \"Scene File Path\"\n"
"\"2D, FPS, PNG\".Capitalize();   // Возвращает \"2d, Fps, Png\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]1[/code] if greater than, or [code]0[/code] if "
"equal. \"Less than\" and \"greater than\" are determined by the [url=https://"
"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of "
"each string, which roughly matches the alphabetical order.\n"
"If the character comparison reaches the end of one string, but the other "
"string contains more characters, then it will use length as the deciding "
"factor: [code]1[/code] will be returned if this string is longer than the "
"[param to] string, or [code]-1[/code] if shorter. Note that the length of "
"empty strings is always [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method nocasecmp_to], [method filecasecmp_to], "
"and [method naturalcasecmp_to]."
msgstr ""
"Выполняет сравнение с другой строкой с учетом регистра. Возвращает [code]-1[/"
"code], если меньше, [code]1[/code], если больше, или [code]0[/code], если "
"равно. «Меньше» и «больше» определяются [url=https://en.wikipedia.org/wiki/"
"List_of_Unicode_characters]кодовыми точками Unicode[/url] каждой строки, что "
"примерно соответствует алфавитному порядку.\n"
"Если сравнение символов достигает конца одной строки, но другая строка "
"содержит больше символов, то в качестве решающего фактора будет использована "
"длина: будет возвращено [code]1[/code], если эта строка длиннее строки [param "
"to], или [code]-1[/code], если короче. Обратите внимание, что длина пустых "
"строк всегда равна [code]0[/code].\n"
"Чтобы получить результат [bool] из сравнения строк, используйте вместо этого "
"оператор [code]==[/code]. См. также [method nocasecmp_to], [method "
"filecasecmp_to] и [method naturalcasecmp_to]."

msgid ""
"Returns a single Unicode character from the integer [param code]. You may use "
"[url=https://unicodelookup.com/]unicodelookup.com[/url] or [url=https://"
"www.unicode.org/charts/]unicode.org[/url] as points of reference.\n"
"[codeblock]\n"
"print(String.chr(65))     # Prints \"A\"\n"
"print(String.chr(129302)) # Prints \"🤖\" (robot face emoji)\n"
"[/codeblock]\n"
"See also [method unicode_at], [method @GDScript.char], and [method "
"@GDScript.ord]."
msgstr ""
"Возвращает один символ Unicode из целого числа [param code]. В качестве "
"отправной точки можно использовать [url=https://"
"unicodelookup.com/]unicodelookup.com[/url] или [url=https://www.unicode.org/"
"charts/]unicode.org[/url].\n"
"[codeblock]\n"
"print(String.chr(65))     # Выводит \"A\"\n"
"print(String.chr(129302)) # Выводит \"🤖\" (эмодзи с лицом робота)\n"
"[/codeblock]\n"
"См. также [method unicode_at], [method @GDScript.char] и [method "
"@GDScript.ord]."

msgid ""
"Returns [code]true[/code] if the string contains [param what]. In GDScript, "
"this corresponds to the [code]in[/code] operator.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"Node\".contains(\"de\")) # Prints true\n"
"print(\"team\".contains(\"I\"))  # Prints false\n"
"print(\"I\" in \"team\")         # Prints false\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"Node\".Contains(\"de\")); // Prints True\n"
"GD.Print(\"team\".Contains(\"I\"));  // Prints False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"If you need to know where [param what] is within the string, use [method "
"find]. See also [method containsn]."
msgstr ""
"Возвращает [code]true[/code], если строка содержит [param what]. В GDScript "
"это соответствует оператору [code]in[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"Node\".contains(\"de\")) # Выводит true\n"
"print(\"team\".contains(\"I\"))  # Выводит false\n"
"print(\"I\" in \"team\")         # Выводит false\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"Node\".Contains(\"de\")); // Выводит True\n"
"GD.Print(\"team\".Contains(\"I\"));  // Выводит False\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Если вам нужно узнать, где в строке находится [param what], используйте "
"[method find]. См. также [method containsn]."

msgid ""
"Returns [code]true[/code] if the string contains [param what], [b]ignoring "
"case[/b].\n"
"If you need to know where [param what] is within the string, use [method "
"findn]. See also [method contains]."
msgstr ""
"Возвращает [code]true[/code], если строка содержит [param what], [b]игнорируя "
"регистр[/b].\n"
"Если вам нужно узнать, где находится [param what] в строке, используйте "
"[method findn]. См. также [method contains]."

msgid ""
"Returns the number of occurrences of the substring [param what] between "
"[param from] and [param to] positions. If [param to] is 0, the search "
"continues until the end of the string."
msgstr ""
"Возвращает количество вхождений подстроки [param what] между позициями [param "
"from] и [param to]. Если [param to] равен 0, поиск продолжается до конца "
"строки."

msgid ""
"Returns the number of occurrences of the substring [param what] between "
"[param from] and [param to] positions, [b]ignoring case[/b]. If [param to] is "
"0, the search continues until the end of the string."
msgstr ""
"Возвращает количество вхождений подстроки [param what] между позициями [param "
"from] и [param to], [b]без учета регистра[/b]. Если [param to] равен 0, поиск "
"продолжается до конца строки."

msgid ""
"Returns a copy of the string with indentation (leading tabs and spaces) "
"removed. See also [method indent] to add indentation."
msgstr ""
"Возвращает копию строки с удаленным отступом (начальные табуляции и пробелы). "
"См. также [method indent] для добавления отступа."

msgid ""
"Returns [code]true[/code] if the string ends with the given [param text]. See "
"also [method begins_with]."
msgstr ""
"Возвращает [code]true[/code], если строка заканчивается указанным [param "
"text]. См. также [method begins_with]."

msgid ""
"Returns a string with [param chars] characters erased starting from [param "
"position]. If [param chars] goes beyond the string's length given the "
"specified [param position], fewer characters will be erased from the returned "
"string. Returns an empty string if either [param position] or [param chars] "
"is negative. Returns the original string unmodified if [param chars] is "
"[code]0[/code]."
msgstr ""
"Возвращает строку с стертыми [param chars] символами, начиная с [param "
"position]. Если [param chars] превышает длину строки, заданную [param "
"position], из возвращаемой строки будет стерто меньше символов. Возвращает "
"пустую строку, если [param position] или [param chars] отрицательны. "
"Возвращает исходную строку без изменений, если [param chars] равен [code]0[/"
"code]."

msgid ""
"Like [method naturalcasecmp_to] but prioritizes strings that begin with "
"periods ([code].[/code]) and underscores ([code]_[/code]) before any other "
"character. Useful when sorting folders or file names.\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method filenocasecmp_to], [method "
"naturalcasecmp_to], and [method casecmp_to]."
msgstr ""
"Как [method naturalcasecmp_to], но отдает приоритет строкам, начинающимся с "
"точек ([code].[/code]) и подчеркиваний ([code]_[/code]) перед любым другим "
"символом. Полезно при сортировке папок или имен файлов.\n"
"Чтобы получить результат [bool] из сравнения строк, используйте вместо этого "
"оператор [code]==[/code]. См. также [method filenocasecmp_to], [method "
"naturalcasecmp_to] и [method casecmp_to]."

msgid ""
"Like [method naturalnocasecmp_to] but prioritizes strings that begin with "
"periods ([code].[/code]) and underscores ([code]_[/code]) before any other "
"character. Useful when sorting folders or file names.\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method filecasecmp_to], [method "
"naturalnocasecmp_to], and [method nocasecmp_to]."
msgstr ""
"Как [method naturalnocasecmp_to], но отдает приоритет строкам, начинающимся с "
"точек ([code].[/code]) и подчеркиваний ([code]_[/code]) перед любым другим "
"символом. Полезно при сортировке папок или имен файлов.\n"
"Чтобы получить результат [bool] из сравнения строк, используйте вместо этого "
"оператор [code]==[/code]. См. также [method filecasecmp_to], [method "
"naturalnocasecmp_to] и [method nocasecmp_to]."

msgid ""
"Returns the index of the [b]first[/b] occurrence of [param what] in this "
"string, or [code]-1[/code] if there are none. The search's start can be "
"specified with [param from], continuing to the end of the string.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"Team\".find(\"I\")) # Prints -1\n"
"\n"
"print(\"Potato\".find(\"t\"))    # Prints 2\n"
"print(\"Potato\".find(\"t\", 3)) # Prints 4\n"
"print(\"Potato\".find(\"t\", 5)) # Prints -1\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"Team\".Find(\"I\")); // Prints -1\n"
"\n"
"GD.Print(\"Potato\".Find(\"t\"));    // Prints 2\n"
"GD.Print(\"Potato\".Find(\"t\", 3)); // Prints 4\n"
"GD.Print(\"Potato\".Find(\"t\", 5)); // Prints -1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you just want to know whether the string contains [param "
"what], use [method contains]. In GDScript, you may also use the [code]in[/"
"code] operator."
msgstr ""
"Возвращает индекс [b]первого[/b] вхождения [param what] в этой строке или "
"[code]-1[/code], если их нет. Начало поиска можно указать с помощью [param "
"from], продолжая до конца строки.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"Team\".find(\"I\")) # Выводит -1\n"
"\n"
"print(\"Potato\".find(\"t\"))    # Выводит 2\n"
"print(\"Potato\".find(\"t\", 3)) # Выводит 4\n"
"print(\"Potato\".find(\"t\", 5)) # Выводит -1\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"Team\".Find(\"I\")); // Выводит -1\n"
"\n"
"GD.Print(\"Potato\".Find(\"t\"));    // Выводит 2\n"
"GD.Print(\"Potato\".Find(\"t\", 3)); // Выводит 4\n"
"GD.Print(\"Potato\".Find(\"t\", 5)); // Выводит -1\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Если вы просто хотите узнать, содержит ли строка [param "
"what], используйте [method contains]. В GDScript вы также можете использовать "
"оператор [code]in[/code]."

msgid ""
"Returns the index of the [b]first[/b] [b]case-insensitive[/b] occurrence of "
"[param what] in this string, or [code]-1[/code] if there are none. The "
"starting search index can be specified with [param from], continuing to the "
"end of the string."
msgstr ""
"Возвращает индекс [b]первого[/b] [b]регистронезависимого[/b] вхождения [param "
"what] в этой строке или [code]-1[/code], если их нет. Начальный индекс поиска "
"можно указать с помощью [param from], продолжая до конца строки."

msgid ""
"Formats the string by replacing all occurrences of [param placeholder] with "
"the elements of [param values].\n"
"[param values] can be a [Dictionary], an [Array], or an [Object]. Any "
"underscores in [param placeholder] will be replaced with the corresponding "
"keys in advance. Array elements use their index as keys.\n"
"[codeblock]\n"
"# Prints \"Waiting for Godot is a play by Samuel Beckett, and Godot Engine is "
"named after it.\"\n"
"var use_array_values = \"Waiting for {0} is a play by {1}, and {0} Engine is "
"named after it.\"\n"
"print(use_array_values.format([\"Godot\", \"Samuel Beckett\"]))\n"
"\n"
"# Prints \"User 42 is Godot.\"\n"
"print(\"User {id} is {name}.\".format({\"id\": 42, \"name\": \"Godot\"}))\n"
"[/codeblock]\n"
"Some additional handling is performed when [param values] is an [Array]. If "
"[param placeholder] does not contain an underscore, the elements of the "
"[param values] array will be used to replace one occurrence of the "
"placeholder in order; If an element of [param values] is another 2-element "
"array, it'll be interpreted as a key-value pair.\n"
"[codeblock]\n"
"# Prints \"User 42 is Godot.\"\n"
"print(\"User {} is {}.\".format([42, \"Godot\"], \"{}\"))\n"
"print(\"User {id} is {name}.\".format([[\"id\", 42], [\"name\", "
"\"Godot\"]]))\n"
"[/codeblock]\n"
"When passing an [Object], the property names from [method "
"Object.get_property_list] are used as keys.\n"
"[codeblock]\n"
"# Prints \"Visible true, position (0, 0)\"\n"
"var node = Node2D.new()\n"
"print(\"Visible {visible}, position {position}\".format(node))\n"
"[/codeblock]\n"
"See also the [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_format_string.html]GDScript format string[/url] tutorial.\n"
"[b]Note:[/b] Each replacement is done sequentially for each element of [param "
"values], [b]not[/b] all at once. This means that if any element is inserted "
"and it contains another placeholder, it may be changed by the next "
"replacement. While this can be very useful, it often causes unexpected "
"results. If not necessary, make sure [param values]'s elements do not contain "
"placeholders.\n"
"[codeblock]\n"
"print(\"{0} {1}\".format([\"{1}\", \"x\"]))           # Prints \"x x\"\n"
"print(\"{0} {1}\".format([\"x\", \"{0}\"]))           # Prints \"x {0}\"\n"
"print(\"{a} {b}\".format({\"a\": \"{b}\", \"b\": \"c\"})) # Prints \"c c\"\n"
"print(\"{a} {b}\".format({\"b\": \"c\", \"a\": \"{b}\"})) # Prints \"{b} c\"\n"
"[/codeblock]\n"
"[b]Note:[/b] In C#, it's recommended to [url=https://learn.microsoft.com/en-"
"us/dotnet/csharp/language-reference/tokens/interpolated]interpolate strings "
"with \"$\"[/url], instead."
msgstr ""
"Форматирует строку, заменяя все вхождения [param placeholder] элементами "
"[param values].\n"
"[param values] может быть [Dictionary], [Array] или [Object]. Любые "
"подчеркивания в [param placeholder] будут заранее заменены соответствующими "
"ключами. Элементы массива используют свои индексы в качестве ключей.\n"
"[codeblock]\n"
"# Выводит \"Waiting for Godot is a play by Samuel Beckett, and Godot Engine "
"is named after it.\"\n"
"var use_array_values = \"Waiting for {0} is a play by {1}, and {0} Engine is "
"named after it.\"\n"
"print(use_array_values.format([\"Godot\", \"Samuel Beckett\"]))\n"
"\n"
"# Выводит \"User 42 is Godot.\"\n"
"print(\"User {id} is {name}.\".format({\"id\": 42, \"name\": \"Godot\"}))\n"
"[/codeblock]\n"
"Некоторая дополнительная обработка выполняется, когда [param values] является "
"[Array]. Если [param placeholder] не содержит подчеркивания, элементы массива "
"[param values] будут использоваться для замены одного вхождения placeholder "
"по порядку; Если элемент [param values] является другим массивом из 2 "
"элементов, он будет интерпретироваться как пара ключ-значение.\n"
"[codeblock]\n"
"# Выводит \"User 42 is Godot.\"\n"
"print(\"User {} is {}.\".format([42, \"Godot\"], \"{}\"))\n"
"print(\"User {id} is {name}.\".format([[\"id\", 42], [\"name\", "
"\"Godot\"]]))\n"
"[/codeblock]\n"
"При передаче [Object] в качестве ключей используются имена свойств из [method "
"Object.get_property_list].\n"
"[codeblock]\n"
"# Выводит \"Visible true, position (0, 0)\"\n"
"var node = Node2D.new()\n"
"print(\"Visible {visible}, position {position}\".format(node))\n"
"[/codeblock]\n"
"См. также [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_format_string.html]Строка формата GDScript[/url] учебник.\n"
"[b]Примечание:[/b] Каждая замена выполняется последовательно для каждого "
"элемента [param values], [b]не[/b] всех сразу. Это означает, что если какой-"
"либо элемент вставлен и содержит другой placeholder, он может быть изменен "
"следующей заменой. Хотя это может быть очень полезно, часто это приводит к "
"неожиданным результатам. Если это не обязательно, убедитесь, что элементы "
"[param values] не содержат placeholder.\n"
"[codeblock]\n"
"print(\"{0} {1}\".format([\"{1}\", \"x\"]))           # Выводит \"x x\"\n"
"print(\"{0} {1}\".format([\"x\", \"{0}\"]))           # Выводит \"x {0}\"\n"
"print(\"{a} {b}\".format({\"a\": \"{b}\", \"b\": \"c\"})) # Выводит \"c c\"\n"
"print(\"{a} {b}\".format({\"b\": \"c\", \"a\": \"{b}\"})) # Выводит \"{b} "
"c\"\n"
"[/codeblock]\n"
"[b]Примечание:[/b] В C# рекомендуется вместо этого [url=https://"
"learn.microsoft.com/en-us/dotnet/csharp/language-reference/tokens/"
"interpolated]интерполировать строки с помощью «$»[/url]."

msgid ""
"If the string is a valid file path, returns the base directory name.\n"
"[codeblock]\n"
"var dir_path = \"/path/to/file.txt\".get_base_dir() # dir_path is \"/path/"
"to\"\n"
"[/codeblock]"
msgstr ""
"Если строка является допустимым путем к файлу, возвращает имя базового "
"каталога.\n"
"[codeblock]\n"
"var dir_path = \"/path/to/file.txt\".get_base_dir() # dir_path равен \"/path/"
"to\"\n"
"[/codeblock]"

msgid ""
"If the string is a valid file path, returns the full file path, without the "
"extension.\n"
"[codeblock]\n"
"var base = \"/path/to/file.txt\".get_basename() # base is \"/path/to/file\"\n"
"[/codeblock]"
msgstr ""
"Если строка является допустимым путем к файлу, возвращает полный путь к файлу "
"без расширения.\n"
"[codeblock]\n"
"var base = \"/path/to/file.txt\".get_basename() # base равен \"/path/to/"
"file\"\n"
"[/codeblock]"

msgid ""
"If the string is a valid file name or path, returns the file extension "
"without the leading period ([code].[/code]). Otherwise, returns an empty "
"string.\n"
"[codeblock]\n"
"var a = \"/path/to/file.txt\".get_extension() # a is \"txt\"\n"
"var b = \"cool.txt\".get_extension()          # b is \"txt\"\n"
"var c = \"cool.font.tres\".get_extension()    # c is \"tres\"\n"
"var d = \".pack1\".get_extension()            # d is \"pack1\"\n"
"\n"
"var e = \"file.txt.\".get_extension()  # e is \"\"\n"
"var f = \"file.txt..\".get_extension() # f is \"\"\n"
"var g = \"txt\".get_extension()        # g is \"\"\n"
"var h = \"\".get_extension()           # h is \"\"\n"
"[/codeblock]"
msgstr ""
"Если строка является допустимым именем файла или путем, возвращает расширение "
"файла без начальной точки ([code].[/code]). В противном случае возвращает "
"пустую строку.\n"
"[codeblock]\n"
"var a = \"/path/to/file.txt\".get_extension() # a равен \"txt\"\n"
"var b = \"cool.txt\".get_extension()          # b равен \"txt\"\n"
"var c = \"cool.font.tres\".get_extension()    # c равен \"tres\"\n"
"var d = \".pack1\".get_extension()            # d равен \"pack1\"\n"
"\n"
"var e = \"file.txt.\".get_extension()  # e равен \"\"\n"
"var f = \"file.txt..\".get_extension() # f равен \"\"\n"
"var g = \"txt\".get_extension()        # g равен \"\"\n"
"var h = \"\".get_extension()           # h равен \"\"\n"
"[/codeblock]"

msgid ""
"If the string is a valid file path, returns the file name, including the "
"extension.\n"
"[codeblock]\n"
"var file = \"/path/to/icon.png\".get_file() # file is \"icon.png\"\n"
"[/codeblock]"
msgstr ""
"Если строка является допустимым путем к файлу, возвращает имя файла, включая "
"расширение.\n"
"[codeblock]\n"
"var file = \"/path/to/icon.png\".get_file() # file равен \"icon.png\"\n"
"[/codeblock]"

msgid ""
"Splits the string using a [param delimiter] and returns the substring at "
"index [param slice]. Returns the original string if [param delimiter] does "
"not occur in the string. Returns an empty string if the [param slice] does "
"not exist.\n"
"This is faster than [method split], if you only need one substring.\n"
"[codeblock]\n"
"print(\"i/am/example/hi\".get_slice(\"/\", 2)) # Prints \"example\"\n"
"[/codeblock]"
msgstr ""
"Разделяет строку с помощью [param delimiter] и возвращает подстроку с "
"индексом [param slice]. Возвращает исходную строку, если [param delimiter] не "
"встречается в строке. Возвращает пустую строку, если [param slice] не "
"существует.\n"
"Это быстрее, чем [method split], если вам нужна только одна подстрока.\n"
"[codeblock]\n"
"print(\"i/am/example/hi\".get_slice(\"/\", 2)) # Выводит \"example\"\n"
"[/codeblock]"

msgid ""
"Returns the total number of slices when the string is split with the given "
"[param delimiter] (see [method split])."
msgstr ""
"Возвращает общее количество фрагментов при разделении строки с заданным "
"[param delimiter] (см. [method split])."

msgid ""
"Splits the string using a Unicode character with code [param delimiter] and "
"returns the substring at index [param slice]. Returns an empty string if the "
"[param slice] does not exist.\n"
"This is faster than [method split], if you only need one substring."
msgstr ""
"Разделяет строку, используя символ Unicode с кодом [param delimiter] и "
"возвращает подстроку с индексом [param slice]. Возвращает пустую строку, если "
"[param slice] не существует.\n"
"Это быстрее, чем [method split], если вам нужна только одна подстрока."

msgid ""
"Returns the 32-bit hash value representing the string's contents.\n"
"[b]Note:[/b] Strings with equal hash values are [i]not[/i] guaranteed to be "
"the same, as a result of hash collisions. On the contrary, strings with "
"different hash values are guaranteed to be different."
msgstr ""
"Возвращает 32-битное хэш-значение, представляющее содержимое строки.\n"
"[b]Примечание:[/b] Строки с одинаковыми хэш-значениями [i]не[/i] "
"гарантированно будут одинаковыми из-за коллизий хэшей. Напротив, строки с "
"разными хэш-значениями гарантированно будут разными."

msgid ""
"Decodes a hexadecimal string as a [PackedByteArray].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var text = \"hello world\"\n"
"var encoded = text.to_utf8_buffer().hex_encode() # outputs "
"\"68656c6c6f20776f726c64\"\n"
"print(encoded.hex_decode().get_string_from_utf8())\n"
"[/gdscript]\n"
"[csharp]\n"
"var text = \"hello world\";\n"
"var encoded = text.ToUtf8Buffer().HexEncode(); // outputs "
"\"68656c6c6f20776f726c64\"\n"
"GD.Print(encoded.HexDecode().GetStringFromUtf8());\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Декодирует шестнадцатеричную строку как [PackedByteArray].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var text = \"hello world\"\n"
"var encoded = text.to_utf8_buffer().hex_encode() # выводит "
"\"68656c6c6f20776f726c64\"\n"
"print(encoded.hex_decode().get_string_from_utf8())\n"
"[/gdscript]\n"
"[csharp]\n"
"var text = \"hello world\";\n"
"var encoded = text.ToUtf8Buffer().HexEncode(); // выводит "
"\"68656c6c6f20776f726c64\"\n"
"GD.Print(encoded.HexDecode().GetStringFromUtf8());\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Converts the string representing a hexadecimal number into an [int]. The "
"string may be optionally prefixed with [code]\"0x\"[/code], and an additional "
"[code]-[/code] prefix for negative numbers.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"0xff\".hex_to_int()) # Prints 255\n"
"print(\"ab\".hex_to_int())   # Prints 171\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"0xff\".HexToInt()); // Prints 255\n"
"GD.Print(\"ab\".HexToInt());   // Prints 171\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Преобразует строку, представляющую шестнадцатеричное число, в [int]. Строка "
"может иметь необязательный префикс [code]\"0x\"[/code] и дополнительный "
"префикс [code]-[/code] для отрицательных чисел.\n"
"[codeblocks]\n"
"[gdscript]\n"
"print(\"0xff\".hex_to_int()) # Выводит 255\n"
"print(\"ab\".hex_to_int())   # Выводит 171\n"
"[/gdscript]\n"
"[csharp]\n"
"GD.Print(\"0xff\".HexToInt()); // Выводит 255\n"
"GD.Print(\"ab\".HexToInt());   // Выводит 171\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Converts [param size] which represents a number of bytes into a human-"
"readable form.\n"
"The result is in [url=https://en.wikipedia.org/wiki/"
"Binary_prefix#IEC_prefixes]IEC prefix format[/url], which may end in either "
"[code]\"B\"[/code], [code]\"KiB\"[/code], [code]\"MiB\"[/code], [code]"
"\"GiB\"[/code], [code]\"TiB\"[/code], [code]\"PiB\"[/code], or [code]\"EiB\"[/"
"code]."
msgstr ""
"Преобразует [param size], представляющий количество байтов, в удобочитаемую "
"форму.\n"
"Результат находится в [url=https://en.wikipedia.org/wiki/"
"Binary_prefix#IEC_prefixes]формате префикса IEC[/url], который может "
"заканчиваться на [code]\"B\"[/code], [code]\"KiB\"[/code], [code]\"MiB\"[/"
"code], [code]\"GiB\"[/code], [code]\"TiB\"[/code], [code]\"PiB\"[/code] или "
"[code]\"EiB\"[/code]."

msgid ""
"Indents every line of the string with the given [param prefix]. Empty lines "
"are not indented. See also [method dedent] to remove indentation.\n"
"For example, the string can be indented with two tabulations using [code]"
"\"\\t\\t\"[/code], or four spaces using [code]\"    \"[/code]."
msgstr ""
"Делает отступ каждой строки с заданным [param prefix]. Пустые строки не имеют "
"отступа. См. также [method dedent] для удаления отступа.\n"
"Например, отступ строки можно сделать двумя табуляциями с помощью [code]"
"\"\\t\\t\"[/code] или четырьмя пробелами с помощью [code]\" \"[/code]."

msgid "Inserts [param what] at the given [param position] in the string."
msgstr "Вставляет [param what] в указанную [param position] в строке."

msgid ""
"Returns [code]true[/code] if the string is a path to a file or directory, and "
"its starting point is explicitly defined. This method is the opposite of "
"[method is_relative_path].\n"
"This includes all paths starting with [code]\"res://\"[/code], [code]\"user://"
"\"[/code], [code]\"C:\\\"[/code], [code]\"/\"[/code], etc."
msgstr ""
"Возвращает [code]true[/code], если строка является путем к файлу или "
"каталогу, и его начальная точка явно определена. Этот метод противоположен "
"[method is_relative_path].\n"
"Это включает все пути, начинающиеся с [code]\"res://\"[/code], [code]\"user://"
"\"[/code], [code]\"C:\\\"[/code], [code]\"/\"[/code] и т. д."

msgid ""
"Returns [code]true[/code] if the string's length is [code]0[/code] ([code]"
"\"\"[/code]). See also [method length]."
msgstr ""
"Возвращает [code]true[/code], если длина строки равна [code]0[/code] ([code]"
"\"\"[/code]), то есть пуста. См. также [method length]."

msgid ""
"Returns [code]true[/code] if the string is a path, and its starting point is "
"dependent on context. The path could begin from the current directory, or the "
"current [Node] (if the string is derived from a [NodePath]), and may "
"sometimes be prefixed with [code]\"./\"[/code]. This method is the opposite "
"of [method is_absolute_path]."
msgstr ""
"Возвращает [code]true[/code], если строка является путем, и ее начальная "
"точка зависит от контекста. Путь может начинаться с текущего каталога или "
"текущего [Node] (если строка получена из [NodePath]), и иногда может иметь "
"префикс [code]\"./\"[/code]. Этот метод противоположен [method "
"is_absolute_path]."

msgid ""
"Returns [code]true[/code] if all characters of this string can be found in "
"[param text] in their original order. This is not the same as [method "
"contains].\n"
"[codeblock]\n"
"var text = \"Wow, incredible!\"\n"
"\n"
"print(\"inedible\".is_subsequence_of(text)) # Prints true\n"
"print(\"Word!\".is_subsequence_of(text))    # Prints true\n"
"print(\"Window\".is_subsequence_of(text))   # Prints false\n"
"print(\"\".is_subsequence_of(text))         # Prints true\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]true[/code], если все символы этой строки можно найти в "
"[param text] в их исходном порядке. Это не то же самое, что [method "
"contains].\n"
"[codeblock]\n"
"var text = \"Wow, incredible!\"\n"
"\n"
"print(\"inedible\".is_subsequence_of(text)) # Выводит true\n"
"print(\"Word!\".is_subsequence_of(text))    # Выводит  true\n"
"print(\"Window\".is_subsequence_of(text))   # Выводит false\n"
"print(\"\".is_subsequence_of(text))         # Выводит true\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if all characters of this string can be found in "
"[param text] in their original order, [b]ignoring case[/b]. This is not the "
"same as [method containsn]."
msgstr ""
"Возвращает [code]true[/code], если все символы этой строки можно найти в "
"[param text] в их исходном порядке, [b]игнорируя регистр[/b]. Это не то же "
"самое, что и [method containsn]."

msgid ""
"Returns [code]true[/code] if this string is a valid ASCII identifier. A valid "
"ASCII identifier may contain only letters, digits, and underscores ([code]_[/"
"code]), and the first character may not be a digit.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_ascii_identifier())    # Prints true\n"
"print(\"TYPE_FLOAT\".is_valid_ascii_identifier()) # Prints true\n"
"print(\"1st_method\".is_valid_ascii_identifier()) # Prints false\n"
"print(\"MyMethod#2\".is_valid_ascii_identifier()) # Prints false\n"
"[/codeblock]\n"
"See also [method is_valid_unicode_identifier]."
msgstr ""
"Возвращает [code]true[/code], если эта строка является допустимым "
"идентификатором ASCII. Допустимый идентификатор ASCII может содержать только "
"буквы, цифры и подчеркивания ([code]_[/code]), а первый символ не может быть "
"цифрой.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_ascii_identifier())    # Выводит true\n"
"print(\"TYPE_FLOAT\".is_valid_ascii_identifier()) # Выводит true\n"
"print(\"1st_method\".is_valid_ascii_identifier()) # Выводит false\n"
"print(\"MyMethod#2\".is_valid_ascii_identifier()) # Выводит false\n"
"[/codeblock]\n"
"См. также [method is_valid_unicode_identifier]."

msgid ""
"Returns [code]true[/code] if this string is a valid file name. A valid file "
"name cannot be empty, begin or end with space characters, or contain "
"characters that are not allowed ([code]:[/code] [code]/[/code] [code]\\[/"
"code] [code]?[/code] [code]*[/code] [code]\"[/code] [code]|[/code] [code]%[/"
"code] [code]<[/code] [code]>[/code])."
msgstr ""
"Возвращает [code]true[/code], если эта строка является допустимым именем "
"файла. Допустимое имя файла не может быть пустым, начинаться или "
"заканчиваться пробелами или содержать недопустимые символы ([code]:[/code] "
"[code]/[/code] [code]\\[/code] [code]?[/code] [code]*[/code] [code]\"[/code] "
"[code]|[/code] [code]%[/code] [code]<[/code] [code]>[/code])."

msgid ""
"Returns [code]true[/code] if this string represents a valid floating-point "
"number. A valid float may contain only digits, one decimal point ([code].[/"
"code]), and the exponent letter ([code]e[/code]). It may also be prefixed "
"with a positive ([code]+[/code]) or negative ([code]-[/code]) sign. Any valid "
"integer is also a valid float (see [method is_valid_int]). See also [method "
"to_float].\n"
"[codeblock]\n"
"print(\"1.7\".is_valid_float())   # Prints true\n"
"print(\"24\".is_valid_float())    # Prints true\n"
"print(\"7e3\".is_valid_float())   # Prints true\n"
"print(\"Hello\".is_valid_float()) # Prints false\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]true[/code], если эта строка представляет допустимое число с "
"плавающей точкой. Допустимое число с плавающей точкой может содержать только "
"цифры, одну десятичную точку ([code].[/code]) и букву экспоненты ([code]e[/"
"code]). Оно также может иметь префикс в виде положительного ([code]+[/code]) "
"или отрицательного ([code]-[/code]) знака. Любое допустимое целое число также "
"является допустимым числом с плавающей точкой (см. [method is_valid_int]). "
"См. также [method to_float].\n"
"[codeblock]\n"
"print(\"1.7\".is_valid_float())   # Выводит true\n"
"print(\"24\".is_valid_float())    # Выводит true\n"
"print(\"7e3\".is_valid_float())   # Выводит true\n"
"print(\"Hello\".is_valid_float()) # Выводит false\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if this string is a valid hexadecimal number. A "
"valid hexadecimal number only contains digits or letters [code]A[/code] to "
"[code]F[/code] (either uppercase or lowercase), and may be prefixed with a "
"positive ([code]+[/code]) or negative ([code]-[/code]) sign.\n"
"If [param with_prefix] is [code]true[/code], the hexadecimal number needs to "
"prefixed by [code]\"0x\"[/code] to be considered valid.\n"
"[codeblock]\n"
"print(\"A08E\".is_valid_hex_number())    # Prints true\n"
"print(\"-AbCdEf\".is_valid_hex_number()) # Prints true\n"
"print(\"2.5\".is_valid_hex_number())     # Prints false\n"
"\n"
"print(\"0xDEADC0DE\".is_valid_hex_number(true)) # Prints true\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]true[/code], если эта строка является допустимым "
"шестнадцатеричным числом. Допустимое шестнадцатеричное число содержит только "
"цифры или буквы от [code]A[/code] до [code]F[/code] (как заглавные, так и "
"строчные) и может иметь префикс в виде положительного ([code]+[/code]) или "
"отрицательного ([code]-[/code]) знака.\n"
"Если [param with_prefix] равен [code]true[/code], шестнадцатеричное число "
"должно иметь префикс [code]\"0x\"[/code], чтобы считаться допустимым.\n"
"[codeblock]\n"
"print(\"A08E\".is_valid_hex_number())    # Выводит true\n"
"print(\"-AbCdEf\".is_valid_hex_number()) # Выводит true\n"
"print(\"2.5\".is_valid_hex_number())     # Выводит false\n"
"\n"
"print(\"0xDEADC0DE\".is_valid_hex_number(true)) # Выводит true\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if this string is a valid color in hexadecimal HTML "
"notation. The string must be a hexadecimal value (see [method "
"is_valid_hex_number]) of either 3, 4, 6 or 8 digits, and may be prefixed by a "
"hash sign ([code]#[/code]). Other HTML notations for colors, such as names or "
"[code]hsl()[/code], are not considered valid. See also [method Color.html]."
msgstr ""
"Возвращает [code]true[/code], если эта строка является допустимым цветом в "
"шестнадцатеричной нотации HTML. Строка должна быть шестнадцатеричным "
"значением (см. [method is_valid_hex_number]) из 3, 4, 6 или 8 цифр и может "
"иметь префикс в виде знака решетки ([code]#[/code]). Другие нотации HTML для "
"цветов, такие как имена или [code]hsl()[/code], не считаются допустимыми. См. "
"также [method Color.html]."

msgid "Use [method is_valid_ascii_identifier] instead."
msgstr "Вместо этого используйте [method is_valid_ascii_identifier]."

msgid ""
"Returns [code]true[/code] if this string is a valid identifier. A valid "
"identifier may contain only letters, digits and underscores ([code]_[/code]), "
"and the first character may not be a digit.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_identifier())    # Prints true\n"
"print(\"TYPE_FLOAT\".is_valid_identifier()) # Prints true\n"
"print(\"1st_method\".is_valid_identifier()) # Prints false\n"
"print(\"MyMethod#2\".is_valid_identifier()) # Prints false\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]true[/code], если эта строка является допустимым "
"идентификатором. Допустимый идентификатор может содержать только буквы, цифры "
"и подчеркивания ([code]_[/code]), а первый символ не может быть цифрой.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_identifier())    # Выводит true\n"
"print(\"TYPE_FLOAT\".is_valid_identifier()) # Выводит true\n"
"print(\"1st_method\".is_valid_identifier()) # Выводит  false\n"
"print(\"MyMethod#2\".is_valid_identifier()) # Выводит false\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if this string represents a valid integer. A valid "
"integer only contains digits, and may be prefixed with a positive ([code]+[/"
"code]) or negative ([code]-[/code]) sign. See also [method to_int].\n"
"[codeblock]\n"
"print(\"7\".is_valid_int())    # Prints true\n"
"print(\"1.65\".is_valid_int()) # Prints false\n"
"print(\"Hi\".is_valid_int())   # Prints false\n"
"print(\"+3\".is_valid_int())   # Prints true\n"
"print(\"-12\".is_valid_int())  # Prints true\n"
"[/codeblock]"
msgstr ""
"Возвращает [code]true[/code], если эта строка представляет допустимое целое "
"число. Допустимое целое число содержит только цифры и может иметь префикс в "
"виде положительного ([code]+[/code]) или отрицательного ([code]-[/code]) "
"знака. См. также [method to_int].\n"
"[codeblock]\n"
"print(\"7\".is_valid_int())    # Выводит true\n"
"print(\"1.65\".is_valid_int()) # Выводит false\n"
"print(\"Hi\".is_valid_int())   # Выводит false\n"
"print(\"+3\".is_valid_int())   # Выводит true\n"
"print(\"-12\".is_valid_int())  # Выводит true\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if this string represents a well-formatted IPv4 or "
"IPv6 address. This method considers [url=https://en.wikipedia.org/wiki/"
"Reserved_IP_addresses]reserved IP addresses[/url] such as [code]\"0.0.0.0\"[/"
"code] and [code]\"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff\"[/code] as valid."
msgstr ""
"Возвращает [code]true[/code], если эта строка представляет собой правильно "
"отформатированный адрес IPv4 или IPv6. Этот метод рассматривает [url=https://"
"en.wikipedia.org/wiki/Reserved_IP_addresses]зарезервированные IP-адреса[/"
"url], такие как [code]\"0.0.0.0\"[/code] и [code]"
"\"ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff\"[/code] как допустимые."

msgid ""
"Returns [code]true[/code] if this string is a valid Unicode identifier.\n"
"A valid Unicode identifier must begin with a Unicode character of class "
"[code]XID_Start[/code] or [code]\"_\"[/code], and may contain Unicode "
"characters of class [code]XID_Continue[/code] in the other positions.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_unicode_identifier())      # Prints true\n"
"print(\"1st_method\".is_valid_unicode_identifier())   # Prints false\n"
"print(\"MyMethod#2\".is_valid_unicode_identifier())   # Prints false\n"
"print(\"állóképesség\".is_valid_unicode_identifier()) # Prints true\n"
"print(\"выносливость\".is_valid_unicode_identifier()) # Prints true\n"
"print(\"体力\".is_valid_unicode_identifier())         # Prints true\n"
"[/codeblock]\n"
"See also [method is_valid_ascii_identifier].\n"
"[b]Note:[/b] This method checks identifiers the same way as GDScript. See "
"[method TextServer.is_valid_identifier] for more advanced checks."
msgstr ""
"Возвращает [code]true[/code], если эта строка является допустимым "
"идентификатором Unicode.\n"
"Допустимый идентификатор Unicode должен начинаться с символа Unicode класса "
"[code]XID_Start[/code] или [code]\"_\"[/code] и может содержать символы "
"Unicode класса [code]XID_Continue[/code] в других позициях.\n"
"[codeblock]\n"
"print(\"node_2d\".is_valid_unicode_identifier())      # Выводит true\n"
"print(\"1st_method\".is_valid_unicode_identifier())   # Выводит false\n"
"print(\"MyMethod#2\".is_valid_unicode_identifier())   # Выводит false\n"
"print(\"állóképesség\".is_valid_unicode_identifier()) # Выводит true\n"
"print(\"выносливость\".is_valid_unicode_identifier()) # Выводит true\n"
"print(\"体力\".is_valid_unicode_identifier())         # Выводит true\n"
"[/codeblock]\n"
"См. также [method is_valid_ascii_identifier].\n"
"[b]Примечание:[/b] Этот метод проверяет идентификаторы так же, как GDScript. "
"См. [method TextServer.is_valid_identifier] для более сложных проверок."

msgid ""
"Returns the concatenation of [param parts]' elements, with each element "
"separated by the string calling this method. This method is the opposite of "
"[method split].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fruits = [\"Apple\", \"Orange\", \"Pear\", \"Kiwi\"]\n"
"\n"
"print(\", \".join(fruits))  # Prints \"Apple, Orange, Pear, Kiwi\"\n"
"print(\"---\".join(fruits)) # Prints \"Apple---Orange---Pear---Kiwi\"\n"
"[/gdscript]\n"
"[csharp]\n"
"string[] fruits = [\"Apple\", \"Orange\", \"Pear\", \"Kiwi\"];\n"
"\n"
"// In C#, this method is static.\n"
"GD.Print(string.Join(\", \", fruits));  // Prints \"Apple, Orange, Pear, "
"Kiwi\"\n"
"GD.Print(string.Join(\"---\", fruits)); // Prints \"Apple---Orange---Pear---"
"Kiwi\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает цепочку элементов [param parts]', где каждый элемент разделен "
"строкой, вызывающей этот метод. Этот метод противоположен [method split].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var fruits = [\"Apple\", \"Orange\", \"Pear\", \"Kiwi\"]\n"
"\n"
"print(\", \".join(fruits))  # Выводит \"Apple, Orange, Pear, Kiwi\"\n"
"print(\"---\".join(fruits)) # Выводит \"Apple---Orange---Pear---Kiwi\"\n"
"[/gdscript]\n"
"[csharp]\n"
"string[] fruits = [\"Apple\", \"Orange\", \"Pear\", \"Kiwi\"];\n"
"\n"
"// В C# этот метод является статическим.\n"
"GD.Print(string.Join(\", \", fruits));  // Выводит \"Apple, Orange, Pear, "
"Kiwi\"\n"
"GD.Print(string.Join(\"---\", fruits)); // Выводит \"Apple---Orange---Pear---"
"Kiwi\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns a copy of the string with special characters escaped using the JSON "
"standard. Because it closely matches the C standard, it is possible to use "
"[method c_unescape] to unescape the string, if necessary."
msgstr ""
"Возвращает копию строки со специальными символами, экранированными с "
"использованием стандарта JSON. Поскольку он близко соответствует стандарту C, "
"можно использовать [method c_unescape] для деэкранирования строки, если это "
"необходимо."

msgid ""
"Returns the first [param length] characters from the beginning of the string. "
"If [param length] is negative, strips the last [param length] characters from "
"the string's end.\n"
"[codeblock]\n"
"print(\"Hello World!\".left(3))  # Prints \"Hel\"\n"
"print(\"Hello World!\".left(-4)) # Prints \"Hello Wo\"\n"
"[/codeblock]"
msgstr ""
"Возвращает первые [param length] символы из начала строки. Если [param "
"length] отрицательный, удаляет последние [param length] символы из конца "
"строки.\n"
"[codeblock]\n"
"print(\"Hello World!\".left(3))  # Выводит \"Hel\"\n"
"print(\"Hello World!\".left(-4)) # Выводит \"Hello Wo\"\n"
"[/codeblock]"

msgid ""
"Returns the number of characters in the string. Empty strings ([code]\"\"[/"
"code]) always return [code]0[/code]. See also [method is_empty]."
msgstr ""
"Возвращает количество символов в строке. Пустые строки ([code]\"\"[/code]) "
"всегда возвращают [code]0[/code]. См. также [method is_empty]."

msgid ""
"Formats the string to be at least [param min_length] long by adding [param "
"character]s to the left of the string, if necessary. See also [method rpad]."
msgstr ""
"Форматирует строку так, чтобы она была длиной не менее [param min_length], "
"добавляя [param character] слева от строки, если необходимо. См. также "
"[method rpad]."

msgid ""
"Removes a set of characters defined in [param chars] from the string's "
"beginning. See also [method rstrip].\n"
"[b]Note:[/b] [param chars] is not a prefix. Use [method trim_prefix] to "
"remove a single prefix, rather than a set of characters."
msgstr ""
"Удаляет набор символов, определенных в [param chars], из начала строки. См. "
"также [method rstrip].\n"
"[b]Примечание:[/b] [param chars] не является префиксом. Используйте [method "
"trim_prefix], чтобы удалить один префикс, а не набор символов."

msgid ""
"Does a simple expression match (also called \"glob\" or \"globbing\"), where "
"[code]*[/code] matches zero or more arbitrary characters and [code]?[/code] "
"matches any single character except a period ([code].[/code]). An empty "
"string or empty expression always evaluates to [code]false[/code]."
msgstr ""
"Соответствует ли простое выражение (также называемое «глоб» или «глоббинг»), "
"где [code]*[/code] соответствует нулю или более произвольным символам, а "
"[code]?[/code] соответствует любому одиночному символу, кроме точки ([code].[/"
"code]). Пустая строка или пустое выражение всегда оценивается как "
"[code]false[/code]."

msgid ""
"Does a simple [b]case-insensitive[/b] expression match, where [code]*[/code] "
"matches zero or more arbitrary characters and [code]?[/code] matches any "
"single character except a period ([code].[/code]). An empty string or empty "
"expression always evaluates to [code]false[/code]."
msgstr ""
"Соответствует ли простое [b]выражение без учета регистра[/b], где [code]*[/"
"code] соответствует нулю или более произвольным символам, а [code]?[/code] "
"соответствует любому одиночному символу, кроме точки ([code].[/code]). Пустая "
"строка или пустое выражение всегда оцениваются как [code]false[/code]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/MD5]MD5 hash[/url] of the "
"string as a [PackedByteArray]."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/MD5]MD5-хэш[/url] строки в виде "
"[PackedByteArray]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/MD5]MD5 hash[/url] of the "
"string as another [String]."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/MD5]MD5-хэш[/url] строки как "
"другую [String]."

msgid ""
"Performs a [b]case-sensitive[/b], [i]natural order[/i] comparison to another "
"string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, "
"or [code]0[/code] if equal. \"Less than\" or \"greater than\" are determined "
"by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode "
"code points[/url] of each string, which roughly matches the alphabetical "
"order.\n"
"When used for sorting, natural order comparison orders sequences of numbers "
"by the combined value of each digit as is often expected, instead of the "
"single digit's value. A sorted sequence of numbered strings will be [code]"
"[\"1\", \"2\", \"3\", ...][/code], not [code][\"1\", \"10\", \"2\", "
"\"3\", ...][/code].\n"
"If the character comparison reaches the end of one string, but the other "
"string contains more characters, then it will use length as the deciding "
"factor: [code]1[/code] will be returned if this string is longer than the "
"[param to] string, or [code]-1[/code] if shorter. Note that the length of "
"empty strings is always [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method naturalnocasecmp_to], [method "
"filecasecmp_to], and [method nocasecmp_to]."
msgstr ""
"Выполняет [b]чувствительное к регистру[/b], [i]естественное[/i] сравнение с "
"другой строкой. Возвращает [code]-1[/code], если меньше, [code]1[/code], если "
"больше, или [code]0[/code], если равно. \"Меньше\" или \"больше\" "
"определяются [url=https://en.wikipedia.org/wiki/"
"List_of_Unicode_characters]кодовыми точками Unicode[/url] каждой строки, что "
"примерно соответствует алфавитному порядку.\n"
"При использовании для сортировки сравнение в естественном порядке "
"упорядочивает последовательности чисел по объединенному значению каждой "
"цифры, как часто ожидается, а не по значению одной цифры. Отсортированная "
"последовательность пронумерованных строк будет [code][\"1\", \"2\", "
"\"3\", ...][/code], а не [code][\"1\", \"10\", \"2\", \"3\", ...][/code].\n"
"Если сравнение символов достигает конца одной строки, но другая строка "
"содержит больше символов, то оно будет использовать длину в качестве "
"решающего фактора: [code]1[/code] будет возвращено, если эта строка длиннее, "
"чем строка [param to], или [code]-1[/code], если короче. Обратите внимание, "
"что длина пустых строк всегда равна [code]0[/code].\n"
"Чтобы получить результат [bool] из сравнения строк, используйте вместо этого "
"оператор [code]==[/code]. См. также [method naturalnocasecmp_to], [method "
"filecasecmp_to] и [method nocasecmp_to]."

msgid ""
"Performs a [b]case-insensitive[/b], [i]natural order[/i] comparison to "
"another string. Returns [code]-1[/code] if less than, [code]1[/code] if "
"greater than, or [code]0[/code] if equal. \"Less than\" or \"greater than\" "
"are determined by the [url=https://en.wikipedia.org/wiki/"
"List_of_Unicode_characters]Unicode code points[/url] of each string, which "
"roughly matches the alphabetical order. Internally, lowercase characters are "
"converted to uppercase for the comparison.\n"
"When used for sorting, natural order comparison orders sequences of numbers "
"by the combined value of each digit as is often expected, instead of the "
"single digit's value. A sorted sequence of numbered strings will be [code]"
"[\"1\", \"2\", \"3\", ...][/code], not [code][\"1\", \"10\", \"2\", "
"\"3\", ...][/code].\n"
"If the character comparison reaches the end of one string, but the other "
"string contains more characters, then it will use length as the deciding "
"factor: [code]1[/code] will be returned if this string is longer than the "
"[param to] string, or [code]-1[/code] if shorter. Note that the length of "
"empty strings is always [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method naturalcasecmp_to], [method "
"filenocasecmp_to], and [method casecmp_to]."
msgstr ""
"Выполняет [b]нечувствительное к регистру[/b], [i]естественное[/i] сравнение с "
"другой строкой. Возвращает [code]-1[/code], если меньше, [code]1[/code], если "
"больше, или [code]0[/code], если равно. \"Меньше\" или \"больше\" "
"определяются [url=https://en.wikipedia.org/wiki/"
"List_of_Unicode_characters]кодовыми точками Unicode[/url] каждой строки, что "
"примерно соответствует алфавитному порядку. Внутренне строчные символы "
"преобразуются в прописные для сравнения.\n"
"При использовании для сортировки сравнение в естественном порядке "
"упорядочивает последовательности чисел по объединенному значению каждой "
"цифры, как часто ожидается, вместо значения одной цифры. Отсортированная "
"последовательность пронумерованных строк будет [code][\"1\", \"2\", "
"\"3\", ...][/code], а не [code][\"1\", \"10\", \"2\", \"3\", ...][/code].\n"
"Если сравнение символов достигает конца одной строки, но другая строка "
"содержит больше символов, то оно будет использовать длину в качестве "
"решающего фактора: [code]1[/code] будет возвращено, если эта строка длиннее, "
"чем строка [param to], или [code]-1[/code], если короче. Обратите внимание, "
"что длина пустых строк всегда равна [code]0[/code].\n"
"Чтобы получить результат [bool] из сравнения строк, используйте вместо этого "
"оператор [code]==[/code]. См. также [method naturalcasecmp_to], [method "
"filenocasecmp_to] и [method casecmp_to]."

msgid ""
"Performs a [b]case-insensitive[/b] comparison to another string. Returns "
"[code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/"
"code] if equal. \"Less than\" or \"greater than\" are determined by the "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code "
"points[/url] of each string, which roughly matches the alphabetical order. "
"Internally, lowercase characters are converted to uppercase for the "
"comparison.\n"
"If the character comparison reaches the end of one string, but the other "
"string contains more characters, then it will use length as the deciding "
"factor: [code]1[/code] will be returned if this string is longer than the "
"[param to] string, or [code]-1[/code] if shorter. Note that the length of "
"empty strings is always [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method casecmp_to], [method filenocasecmp_to], "
"and [method naturalnocasecmp_to]."
msgstr ""
"Выполняет [b]нечувствительное к регистру[/b] сравнение с другой строкой. "
"Возвращает [code]-1[/code], если меньше, [code]1[/code], если больше, или "
"[code]0[/code], если равно. «Меньше» или «больше» определяются [url=https://"
"en.wikipedia.org/wiki/List_of_Unicode_characters]кодовыми точками Unicode[/"
"url] каждой строки, что примерно соответствует алфавитному порядку. Внутренне "
"строчные символы преобразуются в заглавные для сравнения.\n"
"Если сравнение символов достигает конца одной строки, но другая строка "
"содержит больше символов, то в качестве решающего фактора будет использована "
"длина: будет возвращено [code]1[/code], если эта строка длиннее строки [param "
"to], или [code]-1[/code], если короче. Обратите внимание, что длина пустых "
"строк всегда равна [code]0[/code].\n"
"Чтобы получить результат [bool] из сравнения строк, используйте оператор "
"[code]==[/code]. См. также [method casecmp_to], [method filenocasecmp_to] и "
"[method naturalnocasecmp_to]."

msgid ""
"Converts a [float] to a string representation of a decimal number, with the "
"number of decimal places specified in [param decimals].\n"
"If [param decimals] is [code]-1[/code] as by default, the string "
"representation may only have up to 14 significant digits, with digits before "
"the decimal point having priority over digits after.\n"
"Trailing zeros are not included in the string. The last digit is rounded, not "
"truncated.\n"
"[codeblock]\n"
"String.num(3.141593)     # Returns \"3.141593\"\n"
"String.num(3.141593, 3)  # Returns \"3.142\"\n"
"String.num(3.14159300)   # Returns \"3.141593\"\n"
"\n"
"# Here, the last digit will be rounded up,\n"
"# which reduces the total digit count, since trailing zeros are removed:\n"
"String.num(42.129999, 5) # Returns \"42.13\"\n"
"\n"
"# If `decimals` is not specified, the maximum number of significant digits is "
"14:\n"
"String.num(-0.0000012345432123454321)     # Returns \"-0.00000123454321\"\n"
"String.num(-10000.0000012345432123454321) # Returns \"-10000.0000012345\"\n"
"[/codeblock]"
msgstr ""
"Преобразует [float] в строковое представление десятичного числа с количеством "
"десятичных знаков, указанным в [param decimals].\n"
"Если [param decimals] равен [code]-1[/code] по умолчанию, строковое "
"представление может иметь только до 14 значащих цифр, причем цифры до "
"десятичной точки имеют приоритет над цифрами после нее.\n"
"Завершающие нули не включаются в строку. Последняя цифра округляется, а не "
"усекается.\n"
"[codeblock]\n"
"String.num(3.141593)     # Выводит \"3.141593\"\n"
"String.num(3.141593, 3)  # Выводит \"3.142\"\n"
"String.num(3.14159300)   # Выводит \"3.141593\"\n"
"\n"
"# Здесь последняя цифра будет округлена в большую сторону,\n"
"# что уменьшает общее количество цифр, поскольку конечные нули удаляются:\n"
"String.num(42.129999, 5) # Выводит \"42.13\"\n"
"\n"
"# Если `decimals` не указано, максимальное количество значащих цифр равно "
"14:\n"
"String.num(-0.0000012345432123454321)     # Выводит \"-0.00000123454321\"\n"
"String.num(-10000.0000012345432123454321) # Выводит \"-10000.0000012345\"\n"
"[/codeblock]"

msgid ""
"Converts the given [param number] to a string representation, with the given "
"[param base].\n"
"By default, [param base] is set to decimal ([code]10[/code]). Other common "
"bases in programming include binary ([code]2[/code]), [url=https://"
"en.wikipedia.org/wiki/Octal]octal[/url] ([code]8[/code]), hexadecimal "
"([code]16[/code]).\n"
"If [param capitalize_hex] is [code]true[/code], digits higher than 9 are "
"represented in uppercase."
msgstr ""
"Преобразует заданный [param number] в строковое представление с заданным "
"[param base].\n"
"По умолчанию [param base] установлен на десятичное ([code]10[/code]). Другие "
"распространенные основания в программировании включают двоичное ([code]2[/"
"code]), [url=https://en.wikipedia.org/wiki/Octal]восьмеричное[/url] ([code]8[/"
"code]), шестнадцатеричное ([code]16[/code]).\n"
"Если [param capitalize_hex] равен [code]true[/code], цифры выше 9 "
"представлены в верхнем регистре."

msgid ""
"Converts the given [param number] to a string representation, in scientific "
"notation.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var n = -5.2e8\n"
"print(n)                        # Prints -520000000\n"
"print(String.num_scientific(n)) # Prints -5.2e+08\n"
"[/gdscript]\n"
"[csharp]\n"
"// This method is not implemented in C#.\n"
"// Use `string.ToString()` with \"e\" to achieve similar results.\n"
"var n = -5.2e8f;\n"
"GD.Print(n);                // Prints -520000000\n"
"GD.Print(n.ToString(\"e1\")); // Prints -5.2e+008\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] In C#, this method is not implemented. To achieve similar "
"results, see C#'s [url=https://learn.microsoft.com/en-us/dotnet/standard/base-"
"types/standard-numeric-format-strings]Standard numeric format strings[/url]."
msgstr ""
"Преобразует заданный [param number] в строковое представление в научной "
"нотации.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var n = -5.2e8\n"
"print(n)                        # Выводит -520000000\n"
"print(String.num_scientific(n)) # Выводит -5.2e+08\n"
"[/gdscript]\n"
"[csharp]\n"
"// Этот метод не реализован в C#.\n"
"// Используйте `string.ToString()` с \"e\" для достижения аналогичных "
"результатов.\n"
"var n = -5.2e8f;\n"
"GD.Print(n);                // Выводит -520000000\n"
"GD.Print(n.ToString(\"e1\")); // Выводит -5.2e+008\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] В C# этот метод не реализован. Чтобы добиться похожих "
"результатов, см. [url=https://learn.microsoft.com/en-us/dotnet/standard/base-"
"types/standard-numeric-format-strings]Стандартные числовые форматы строк C#[/"
"url]."

msgid ""
"Converts the given unsigned [int] to a string representation, with the given "
"[param base].\n"
"By default, [param base] is set to decimal ([code]10[/code]). Other common "
"bases in programming include binary ([code]2[/code]), [url=https://"
"en.wikipedia.org/wiki/Octal]octal[/url] ([code]8[/code]), hexadecimal "
"([code]16[/code]).\n"
"If [param capitalize_hex] is [code]true[/code], digits higher than 9 are "
"represented in uppercase."
msgstr ""
"Преобразует заданное беззнаковое (unsigned) [int] в строковое представление с "
"заданным [param base].\n"
"По умолчанию [param base] установлено в десятичное ([code]10[/code]). Другие "
"распространенные основания в программировании включают двоичное ([code]2[/"
"code]), [url=https://en.wikipedia.org/wiki/Octal]восьмеричное[/url] ([code]8[/"
"code]), шестнадцатеричное ([code]16[/code]).\n"
"Если [param capitalize_hex] равно [code]true[/code], цифры выше 9 "
"представлены в верхнем регистре."

msgid ""
"Formats the string representing a number to have an exact number of [param "
"digits] [i]after[/i] the decimal point."
msgstr ""
"Форматирует строку, представляющую число, так, чтобы она содержала точное "
"количество цифр [param digits] [i]после[/i] десятичной точки."

msgid ""
"Formats the string representing a number to have an exact number of [param "
"digits] [i]before[/i] the decimal point."
msgstr ""
"Форматирует строку, представляющую число, так, чтобы она содержала точное "
"количество цифр [param digits] [i]перед[/i] десятичной точкой."

msgid ""
"Concatenates [param path] at the end of the string as a subpath, adding "
"[code]/[/code] if necessary.\n"
"[b]Example:[/b] [code]\"this/is\".path_join(\"path\") == \"this/is/path\"[/"
"code]."
msgstr ""
"Объединяет [param path] в конце строки как подпуть, добавляя [code]/[/code] "
"при необходимости.\n"
"[b]Пример:[/b] [code]\"this/is\".path_join(\"path\") == \"this/is/path\"[/"
"code]."

msgid ""
"Removes all occurrences of the Unicode character with code [param what]. "
"Faster version of [method replace] when the key is only one character long "
"and the replacement is [code]\"\"[/code]."
msgstr ""
"Удаляет все вхождения символа Unicode с кодом [param what]. Более быстрая "
"версия [method replace], когда ключ состоит только из одного символа, а "
"замена — [code]\"\"[/code]."

msgid ""
"Removes any occurrence of the characters in [param chars]. See also [method "
"remove_char]."
msgstr ""
"Удаляет все вхождения символов в [param chars]. См. также [method "
"remove_char]."

msgid ""
"Repeats this string a number of times. [param count] needs to be greater than "
"[code]0[/code]. Otherwise, returns an empty string."
msgstr ""
"Повторяет эту строку несколько раз. [param count] должно быть больше, чем "
"[code]0[/code]. В противном случае возвращает пустую строку."

msgid ""
"Replaces all occurrences of [param what] inside the string with the given "
"[param forwhat]."
msgstr ""
"Заменяет все вхождения [param what] внутри строки на указанный [param "
"forwhat]."

msgid ""
"Replaces all occurrences of the Unicode character with code [param key] with "
"the Unicode character with code [param with]. Faster version of [method "
"replace] when the key is only one character long. To get a single character "
"use [code]\"X\".unicode_at(0)[/code] (note that some strings, like compound "
"letters and emoji, can be composed of multiple unicode codepoints, and will "
"not work with this method, use [method length] to make sure)."
msgstr ""
"Заменяет все вхождения символа Unicode с кодом [param key] на символ Unicode "
"с кодом [param with]. Более быстрая версия метода [method replace], когда "
"ключ состоит всего из одного символа. Чтобы получить один символ, используйте "
"[code]\"X\".unicode_at(0)[/code] (обратите внимание, что некоторые строки, "
"например, составные буквы и эмодзи, могут состоять из нескольких кодовых "
"точек Unicode и не будут работать с этим методом, используйте [method length] "
"для уверенности)."

msgid ""
"Replaces any occurrence of the characters in [param keys] with the Unicode "
"character with code [param with]. See also [method replace_char]."
msgstr ""
"Заменяет все вхождения символов в [param keys] на символ Unicode с кодом "
"[param with]. См. также [method replace_char]."

msgid ""
"Replaces all [b]case-insensitive[/b] occurrences of [param what] inside the "
"string with the given [param forwhat]."
msgstr ""
"Заменяет все [b]независимые от регистра[/b] вхождения [param what] внутри "
"строки на заданный [param forwhat]."

msgid ""
"Returns the copy of this string in reverse order. This operation works on "
"unicode codepoints, rather than sequences of codepoints, and may break things "
"like compound letters or emojis."
msgstr ""
"Возвращает копию этой строки в обратном порядке. Эта операция работает с "
"кодовыми точками Unicode, а не с последовательностями кодовых точек, и может "
"сломать такие вещи, как составные буквы или эмодзи."

msgid ""
"Returns the index of the [b]last[/b] occurrence of [param what] in this "
"string, or [code]-1[/code] if there are none. The search's start can be "
"specified with [param from], continuing to the beginning of the string. This "
"method is the reverse of [method find]."
msgstr ""
"Возвращает индекс [b]последнего[/b] вхождения [param what] в этой строке или "
"[code]-1[/code], если их нет. Начало поиска можно указать с помощью [param "
"from], продолжая до начала строки. Этот метод является обратным [method find]."

msgid ""
"Returns the index of the [b]last[/b] [b]case-insensitive[/b] occurrence of "
"[param what] in this string, or [code]-1[/code] if there are none. The "
"starting search index can be specified with [param from], continuing to the "
"beginning of the string. This method is the reverse of [method findn]."
msgstr ""
"Возвращает индекс [b]последнего[/b] [b]регистронезависимого[/b] вхождения "
"[param what] в этой строке или [code]-1[/code], если их нет. Начальный индекс "
"поиска можно указать с помощью [param from], продолжая до начала строки. Этот "
"метод является обратным [method findn]."

msgid ""
"Returns the last [param length] characters from the end of the string. If "
"[param length] is negative, strips the first [param length] characters from "
"the string's beginning.\n"
"[codeblock]\n"
"print(\"Hello World!\".right(3))  # Prints \"ld!\"\n"
"print(\"Hello World!\".right(-4)) # Prints \"o World!\"\n"
"[/codeblock]"
msgstr ""
"Возвращает последние [param length] символы с конца строки. Если [param "
"length] отрицательный, удаляет первые [param length] символы с начала "
"строки.\n"
"[codeblock]\n"
"print(\"Hello World!\".right(3))  # Выводит \"ld!\"\n"
"print(\"Hello World!\".right(-4)) # Вывдит \"o World!\"\n"
"[/codeblock]"

msgid ""
"Formats the string to be at least [param min_length] long, by adding [param "
"character]s to the right of the string, if necessary. See also [method lpad]."
msgstr ""
"Форматирует строку так, чтобы она была длиной не менее [param min_length], "
"добавляя [param character] справа от строки, если необходимо. См. также "
"[method lpad]."

msgid ""
"Splits the string using a [param delimiter] and returns an array of the "
"substrings, starting from the end of the string. The splits in the returned "
"array appear in the same order as the original string. If [param delimiter] "
"is an empty string, each substring will be a single character.\n"
"If [param allow_empty] is [code]false[/code], empty strings between adjacent "
"delimiters are excluded from the array.\n"
"If [param maxsplit] is greater than [code]0[/code], the number of splits may "
"not exceed [param maxsplit]. By default, the entire string is split, which is "
"mostly identical to [method split].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var some_string = \"One,Two,Three,Four\"\n"
"var some_array = some_string.rsplit(\",\", true, 1)\n"
"\n"
"print(some_array.size()) # Prints 2\n"
"print(some_array[0])     # Prints \"One,Two,Three\"\n"
"print(some_array[1])     # Prints \"Four\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// In C#, there is no String.RSplit() method.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Разделяет строку с помощью [param delimiter] и возвращает массив подстрок, "
"начиная с конца строки. Разделения в возвращаемом массиве отображаются в том "
"же порядке, что и исходная строка. Если [param delimiter] — пустая строка, "
"каждая подстрока будет представлять собой один символ.\n"
"Если [param allow_empty] — [code]false[/code], пустые строки между соседними "
"разделителями исключаются из массива.\n"
"Если [param maxsplit] больше [code]0[/code], количество разделений не может "
"превышать [param maxsplit]. По умолчанию разделяется вся строка, что в "
"основном идентично [method split].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var some_string = \"One,Two,Three,Four\"\n"
"var some_array = some_string.rsplit(\",\", true, 1)\n"
"\n"
"print(some_array.size()) # Выводит 2\n"
"print(some_array[0])     # Выводит \"One,Two,Three\"\n"
"print(some_array[1])     # Выводит \"Four\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// В C# нет метода String.RSplit().\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Removes a set of characters defined in [param chars] from the string's end. "
"See also [method lstrip].\n"
"[b]Note:[/b] [param chars] is not a suffix. Use [method trim_suffix] to "
"remove a single suffix, rather than a set of characters."
msgstr ""
"Удаляет набор символов, определенных в [param chars], из конца строки. См. "
"также [method lstrip].\n"
"[b]Примечание:[/b] [param chars] не является суффиксом. Используйте [method "
"trim_suffix], чтобы удалить один суффикс, а не набор символов."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/SHA-1]SHA-1[/url] hash of the "
"string as a [PackedByteArray]."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/SHA-1]SHA-1[/url] хэш строки в "
"виде [PackedByteArray]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/SHA-1]SHA-1[/url] hash of the "
"string as another [String]."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/SHA-1]SHA-1[/url] хэш строки "
"как еще один [String]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/SHA-2]SHA-256[/url] hash of "
"the string as a [PackedByteArray]."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/SHA-2]SHA-256[/url] хэш строки "
"в виде [PackedByteArray]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/SHA-2]SHA-256[/url] hash of "
"the string as another [String]."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/SHA-2]SHA-256[/url] хэш строки "
"как еще один [String]."

msgid ""
"Returns the similarity index ([url=https://en.wikipedia.org/wiki/"
"S%C3%B8rensen%E2%80%93Dice_coefficient]Sørensen-Dice coefficient[/url]) of "
"this string compared to another. A result of [code]1.0[/code] means totally "
"similar, while [code]0.0[/code] means totally dissimilar.\n"
"[codeblock]\n"
"print(\"ABC123\".similarity(\"ABC123\")) # Prints 1.0\n"
"print(\"ABC123\".similarity(\"XYZ456\")) # Prints 0.0\n"
"print(\"ABC123\".similarity(\"123ABC\")) # Prints 0.8\n"
"print(\"ABC123\".similarity(\"abc123\")) # Prints 0.4\n"
"[/codeblock]"
msgstr ""
"Возвращает индекс схожести ([url=https://en.wikipedia.org/wiki/"
"S%C3%B8rensen%E2%80%93Dice_coefficient]коэффициент Сёренсена-Дайса[/url]) "
"этой строки по сравнению с другой. Результат [code]1.0[/code] означает полное "
"сходство, а [code]0.0[/code] означает полное несходство.\n"
"[codeblock]\n"
"print(\"ABC123\".similarity(\"ABC123\")) # Выводит 1.0\n"
"print(\"ABC123\".similarity(\"XYZ456\")) # Выводит 0.0\n"
"print(\"ABC123\".similarity(\"123ABC\")) # Выводит 0.8\n"
"print(\"ABC123\".similarity(\"abc123\")) # Выводит 0.4\n"
"[/codeblock]"

msgid ""
"If the string is a valid file path, converts the string into a canonical "
"path. This is the shortest possible path, without [code]\"./\"[/code], and "
"all the unnecessary [code]\"..\"[/code] and [code]\"/\"[/code].\n"
"[codeblock]\n"
"var simple_path = \"./path/to///../file\".simplify_path()\n"
"print(simple_path) # Prints \"path/file\"\n"
"[/codeblock]"
msgstr ""
"Если строка является допустимым путем к файлу, преобразует строку в "
"канонический путь. Это кратчайший возможный путь, без [code]\"./\"[/code] и "
"всех ненужных [code]\"..\"[/code] и [code]\"/\"[/code].\n"
"[codeblock]\n"
"var simple_path = \"./path/to///../file\".simplify_path()\n"
"print(simple_path) # Выводит \"path/file\"\n"
"[/codeblock]"

msgid ""
"Splits the string using a [param delimiter] and returns an array of the "
"substrings. If [param delimiter] is an empty string, each substring will be a "
"single character. This method is the opposite of [method join].\n"
"If [param allow_empty] is [code]false[/code], empty strings between adjacent "
"delimiters are excluded from the array.\n"
"If [param maxsplit] is greater than [code]0[/code], the number of splits may "
"not exceed [param maxsplit]. By default, the entire string is split.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var some_array = \"One,Two,Three,Four\".split(\",\", true, 2)\n"
"\n"
"print(some_array.size()) # Prints 3\n"
"print(some_array[0])     # Prints \"One\"\n"
"print(some_array[1])     # Prints \"Two\"\n"
"print(some_array[2])     # Prints \"Three,Four\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// C#'s `Split()` does not support the `maxsplit` parameter.\n"
"var someArray = \"One,Two,Three\".Split(\",\");\n"
"\n"
"GD.Print(someArray[0]); // Prints \"One\"\n"
"GD.Print(someArray[1]); // Prints \"Two\"\n"
"GD.Print(someArray[2]); // Prints \"Three\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If you only need one substring from the array, consider using "
"[method get_slice] which is faster. If you need to split strings with more "
"complex rules, use the [RegEx] class instead."
msgstr ""
"Разделяет строку с помощью [param delimiter] и возвращает массив подстрок. "
"Если [param delimiter] — пустая строка, каждая подстрока будет одним "
"символом. Этот метод противоположен [method join].\n"
"Если [param allow_empty] — [code]false[/code], пустые строки между соседними "
"разделителями исключаются из массива.\n"
"Если [param maxsplit] больше [code]0[/code], количество разделений не может "
"превышать [param maxsplit]. По умолчанию разделяется вся строка.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var some_array = \"One,Two,Three,Four\".split(\",\", true, 2)\n"
"\n"
"print(some_array.size()) # Выводит 3\n"
"print(some_array[0])     # Выводит \"One\"\n"
"print(some_array[1])     # Выводит \"Two\"\n"
"print(some_array[2])     # Выводит \"Three,Four\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// `Split()` в C# не поддерживает параметр `maxsplit`.\n"
"var someArray = \"One,Two,Three\".Split(\",\");\n"
"\n"
"GD.Print(someArray[0]); // Выводит \"One\"\n"
"GD.Print(someArray[1]); // Выводит \"Two\"\n"
"GD.Print(someArray[2]); // Выводит \"Three\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Если вам нужна только одна подстрока из массива, "
"рассмотрите возможность использования [method get_slice], который быстрее. "
"Если вам нужно разделить строки с более сложными правилами, используйте "
"вместо этого класс [RegEx]."

msgid ""
"Splits the string into floats by using a [param delimiter] and returns a "
"[PackedFloat64Array].\n"
"If [param allow_empty] is [code]false[/code], empty or invalid [float] "
"conversions between adjacent delimiters are excluded.\n"
"[codeblock]\n"
"var a = \"1,2,4.5\".split_floats(\",\")         # a is [1.0, 2.0, 4.5]\n"
"var c = \"1| ||4.5\".split_floats(\"|\")        # c is [1.0, 0.0, 0.0, 4.5]\n"
"var b = \"1| ||4.5\".split_floats(\"|\", false) # b is [1.0, 4.5]\n"
"[/codeblock]"
msgstr ""
"Разделяет строку на числа с плавающей точкой с помощью [param delimiter] и "
"возвращает [PackedFloat64Array].\n"
"Если [param allow_empty] равен [code]false[/code], пустые или "
"недействительные преобразования [float] между соседними разделителями "
"исключаются.\n"
"[codeblock]\n"
"var a = \"1,2,4.5\".split_floats(\",\")         # a равен [1.0, 2.0, 4.5]\n"
"var c = \"1| ||4.5\".split_floats(\"|\")        # c равен [1.0, 0.0, 0.0, "
"4.5]\n"
"var b = \"1| ||4.5\".split_floats(\"|\", false) # b равен [1.0, 4.5]\n"
"[/codeblock]"

msgid ""
"Strips all non-printable characters from the beginning and the end of the "
"string. These include spaces, tabulations ([code]\\t[/code]), and newlines "
"([code]\\n[/code] [code]\\r[/code]).\n"
"If [param left] is [code]false[/code], ignores the string's beginning. "
"Likewise, if [param right] is [code]false[/code], ignores the string's end."
msgstr ""
"Удаляет все непечатаемые символы из начала и конца строки. К ним относятся "
"пробелы, табуляции ([code]\\t[/code]) и переводы строк ([code]\\n[/code] "
"[code]\\r[/code]).\n"
"Если [param left] равен [code]false[/code], игнорирует начало строки. "
"Аналогично, если [param right] равен [code]false[/code], игнорирует конец "
"строки."

msgid ""
"Strips all escape characters from the string. These include all non-printable "
"control characters of the first page of the ASCII table (values from 0 to "
"31), such as tabulation ([code]\\t[/code]) and newline ([code]\\n[/code], "
"[code]\\r[/code]) characters, but [i]not[/i] spaces."
msgstr ""
"Удаляет все экранированные символы из строки. К ним относятся все "
"непечатаемые управляющие символы первой страницы таблицы ASCII (значения от 0 "
"до 31), такие как символы табуляции ([code]\\t[/code]) и новой строки ([code]"
"\\n[/code], [code]\\r[/code]), но [i]не[/i] пробелы."

msgid ""
"Returns part of the string from the position [param from] with length [param "
"len]. If [param len] is [code]-1[/code] (as by default), returns the rest of "
"the string starting from the given position."
msgstr ""
"Возвращает часть строки из позиции [param from] с длиной [param len]. Если "
"[param len] равен [code]-1[/code] (по умолчанию), возвращает остаток строки, "
"начиная с указанной позиции."

msgid ""
"Converts the string to an [url=https://en.wikipedia.org/wiki/ASCII]ASCII[/"
"url]/Latin-1 encoded [PackedByteArray]. This method is slightly faster than "
"[method to_utf8_buffer], but replaces all unsupported characters with spaces. "
"This is the inverse of [method PackedByteArray.get_string_from_ascii]."
msgstr ""
"Преобразует строку в [url=https://en.wikipedia.org/wiki/ASCII]ASCII[/url]/"
"Latin-1 закодированный [PackedByteArray]. Этот метод немного быстрее, чем "
"[method to_utf8_buffer], но заменяет все неподдерживаемые символы пробелами. "
"Это обратный метод [method PackedByteArray.get_string_from_ascii]."

msgid "Returns the string converted to [code]camelCase[/code]."
msgstr "Возвращает строку, преобразованную в [code]camelCase[/code]."

msgid ""
"Converts the string representing a decimal number into a [float]. This method "
"stops on the first non-number character, except the first decimal point "
"([code].[/code]) and the exponent letter ([code]e[/code]). See also [method "
"is_valid_float].\n"
"[codeblock]\n"
"var a = \"12.35\".to_float()  # a is 12.35\n"
"var b = \"1.2.3\".to_float()  # b is 1.2\n"
"var c = \"12xy3\".to_float()  # c is 12.0\n"
"var d = \"1e3\".to_float()    # d is 1000.0\n"
"var e = \"Hello!\".to_float() # e is 0.0\n"
"[/codeblock]"
msgstr ""
"Преобразует строку, представляющую десятичное число, в [float]. Этот метод "
"останавливается на первом нечисловом символе, за исключением первой "
"десятичной точки ([code].[/code]) и буквы экспоненты ([code]e[/code]). См. "
"также [method is_valid_float].\n"
"[codeblock]\n"
"var a = \"12.35\".to_float()  # a равен 12.35\n"
"var b = \"1.2.3\".to_float()  # b равен 1.2\n"
"var c = \"12xy3\".to_float()  # c равен 12.0\n"
"var d = \"1e3\".to_float()    # d равен  1000.0\n"
"var e = \"Hello!\".to_float() # e равен 0.0\n"
"[/codeblock]"

msgid ""
"Converts the string representing an integer number into an [int]. This method "
"removes any non-number character and stops at the first decimal point ([code]."
"[/code]). See also [method is_valid_int].\n"
"[codeblock]\n"
"var a = \"123\".to_int()    # a is 123\n"
"var b = \"x1y2z3\".to_int() # b is 123\n"
"var c = \"-1.2.3\".to_int() # c is -1\n"
"var d = \"Hello!\".to_int() # d is 0\n"
"[/codeblock]"
msgstr ""
"Преобразует строку, представляющую целое число, в [int]. Этот метод удаляет "
"все нечисловые символы и останавливается на первой десятичной точке ([code].[/"
"code]). См. также [method is_valid_int].\n"
"[codeblock]\n"
"var a = \"123\".to_int()    # a равен 123\n"
"var b = \"x1y2z3\".to_int() # b равен 123\n"
"var c = \"-1.2.3\".to_int() # c равен -1\n"
"var d = \"Hello!\".to_int() # d равен 0\n"
"[/codeblock]"

msgid ""
"Returns the string converted to [code]kebab-case[/code].\n"
"[b]Note:[/b] Numbers followed by a [i]single[/i] letter are not separated in "
"the conversion to keep some words (such as \"2D\") together.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"Node2D\".to_kebab_case()               # Returns \"node-2d\"\n"
"\"2nd place\".to_kebab_case()            # Returns \"2-nd-place\"\n"
"\"Texture3DAssetFolder\".to_kebab_case() # Returns \"texture-3d-asset-"
"folder\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"Node2D\".ToKebabCase();               // Returns \"node-2d\"\n"
"\"2nd place\".ToKebabCase();            // Returns \"2-nd-place\"\n"
"\"Texture3DAssetFolder\".ToKebabCase(); // Returns \"texture-3d-asset-"
"folder\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает строку, преобразованную в [code]kebab-case[/code].\n"
"[b]Примечание:[/b] Цифры, за которыми следует [i]одна[/i] буква, не "
"разделяются при преобразовании, чтобы сохранить некоторые слова (например, "
"«2D») вместе.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"Node2D\".to_kebab_case()               # Возвращает \"node-2d\"\n"
"\"2nd place\".to_kebab_case()            # Возвращает \"2-nd-place\"\n"
"\"Texture3DAssetFolder\".to_kebab_case() # Возвращает \"texture-3d-asset-"
"folder\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"Node2D\".ToKebabCase();               // Возвращает \"node-2d\"\n"
"\"2nd place\".ToKebabCase();            // Возвращает \"2-nd-place\"\n"
"\"Texture3DAssetFolder\".ToKebabCase(); // Возвращает \"texture-3d-asset-"
"folder\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns the string converted to [code]lowercase[/code]."
msgstr "Возвращает строку, преобразованную в [code]строчную[/code]."

msgid ""
"Converts the string to system multibyte code page encoded [PackedByteArray]. "
"If conversion fails, empty array is returned.\n"
"The values permitted for [param encoding] are system dependent. If [param "
"encoding] is empty string, system default encoding is used.\n"
"- For Windows, see [url=https://learn.microsoft.com/en-us/windows/win32/Intl/"
"code-page-identifiers]Code Page Identifiers[/url] .NET names.\n"
"- For macOS and Linux/BSD, see [code]libiconv[/code] library documentation "
"and [code]iconv --list[/code] for a list of supported encodings."
msgstr ""
"Преобразует строку в системную многобайтовую кодовую страницу, закодированную "
"в [PackedByteArray]. Если преобразование не удалось, возвращается пустой "
"массив.\n"
"Допустимые значения для [param encoding] зависят от системы. Если [param "
"encoding] — пустая строка, используется системная кодировка по умолчанию.\n"
"- Для Windows см. [url=https://learn.microsoft.com/en-us/windows/win32/Intl/"
"code-page-identifiers]Идентификаторы кодовых страниц[/url] .NET-имена.\n"
"- Для macOS и Linux/BSD см. документацию библиотеки [code]libiconv[/code] и "
"[code]iconv --list[/code] для списка поддерживаемых кодировок."

msgid "Returns the string converted to [code]PascalCase[/code]."
msgstr "Возвращает строку, преобразованную в [code]PascalCase[/code]."

msgid ""
"Returns the string converted to [code]snake_case[/code].\n"
"[b]Note:[/b] Numbers followed by a [i]single[/i] letter are not separated in "
"the conversion to keep some words (such as \"2D\") together.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"Node2D\".to_snake_case()               # Returns \"node_2d\"\n"
"\"2nd place\".to_snake_case()            # Returns \"2_nd_place\"\n"
"\"Texture3DAssetFolder\".to_snake_case() # Returns "
"\"texture_3d_asset_folder\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"Node2D\".ToSnakeCase();               // Returns \"node_2d\"\n"
"\"2nd place\".ToSnakeCase();            // Returns \"2_nd_place\"\n"
"\"Texture3DAssetFolder\".ToSnakeCase(); // Returns "
"\"texture_3d_asset_folder\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает строку, преобразованную в [code]snake_case[/code].\n"
"[b]Примечание:[/b] Цифры, за которыми следует [i]одна[/i] буква, не "
"разделяются при преобразовании, чтобы сохранить некоторые слова (например, "
"«2D») вместе.\n"
"[codeblocks]\n"
"[gdscript]\n"
"\"Node2D\".to_snake_case()               # Выводит \"node_2d\"\n"
"\"2nd place\".to_snake_case()            # Выводит \"2_nd_place\"\n"
"\"Texture3DAssetFolder\".to_snake_case() # Выводит "
"\"texture_3d_asset_folder\"\n"
"[/gdscript]\n"
"[csharp]\n"
"\"Node2D\".ToSnakeCase();               // Выводит  \"node_2d\"\n"
"\"2nd place\".ToSnakeCase();            // Выводит  \"2_nd_place\"\n"
"\"Texture3DAssetFolder\".ToSnakeCase(); // Выводит "
"\"texture_3d_asset_folder\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns the string converted to [code]UPPERCASE[/code]."
msgstr "Возвращает строку, преобразованную в [code]ВЕРХНИЙ РЕГИСТР[/code]."

msgid ""
"Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-8]UTF-8[/url] "
"encoded [PackedByteArray]. This method is slightly slower than [method "
"to_ascii_buffer], but supports all UTF-8 characters. For most cases, prefer "
"using this method. This is the inverse of [method "
"PackedByteArray.get_string_from_utf8]."
msgstr ""
"Преобразует строку в [url=https://en.wikipedia.org/wiki/UTF-8]UTF-8[/url] "
"закодированный [PackedByteArray]. Этот метод немного медленнее, чем [method "
"to_ascii_buffer], но поддерживает все символы UTF-8. В большинстве случаев "
"предпочтительнее использовать этот метод. Это обратный метод [method "
"PackedByteArray.get_string_from_utf8]."

msgid ""
"Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-16]UTF-16[/"
"url] encoded [PackedByteArray]. This is the inverse of [method "
"PackedByteArray.get_string_from_utf16]."
msgstr ""
"Преобразует строку в [url=https://en.wikipedia.org/wiki/UTF-16]UTF-16[/url] "
"закодированный [PackedByteArray]. Это обратный метод [method "
"PackedByteArray.get_string_from_utf16]."

msgid ""
"Converts the string to a [url=https://en.wikipedia.org/wiki/UTF-32]UTF-32[/"
"url] encoded [PackedByteArray]. This is the inverse of [method "
"PackedByteArray.get_string_from_utf32]."
msgstr ""
"Преобразует строку в [url=https://en.wikipedia.org/wiki/UTF-32]UTF-32[/url] "
"закодированный [PackedByteArray]. Это обратный метод [method "
"PackedByteArray.get_string_from_utf32]."

msgid ""
"Converts the string to a [url=https://en.wikipedia.org/wiki/"
"Wide_character]wide character[/url] ([code]wchar_t[/code], UTF-16 on Windows, "
"UTF-32 on other platforms) encoded [PackedByteArray]. This is the inverse of "
"[method PackedByteArray.get_string_from_wchar]."
msgstr ""
"Преобразует строку в [url=https://en.wikipedia.org/wiki/"
"Wide_character]широкий символ[/url] ([code]wchar_t[/code], UTF-16 в Windows, "
"UTF-32 на других платформах), закодированный [PackedByteArray]. Это обратный "
"метод [method PackedByteArray.get_string_from_wchar]."

msgid ""
"Removes the given [param prefix] from the start of the string, or returns the "
"string unchanged."
msgstr ""
"Удаляет указанный [param prefix] из начала строки или возвращает строку без "
"изменений."

msgid ""
"Removes the given [param suffix] from the end of the string, or returns the "
"string unchanged."
msgstr ""
"Удаляет указанный [param suffix] из конца строки или возвращает строку без "
"изменений."

msgid ""
"Returns the character code at position [param at].\n"
"See also [method chr], [method @GDScript.char], and [method @GDScript.ord]."
msgstr ""
"Возвращает код символа в позиции [param at].\n"
"См. также [method chr], [method @GDScript.char] и [method @GDScript.ord]."

msgid ""
"Decodes the string from its URL-encoded format. This method is meant to "
"properly decode the parameters in a URL when receiving an HTTP request. See "
"also [method uri_encode].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var url = \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"print(url.uri_decode()) # Prints \"$DOCS_URL/?highlight=Godot Engine:docs\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var url = \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"GD.Print(url.URIDecode()) // Prints \"$DOCS_URL/?highlight=Godot "
"Engine:docs\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This method decodes [code]+[/code] as space."
msgstr ""
"Декодирует строку из ее URL-кодированного формата. Этот метод предназначен "
"для правильного декодирования параметров в URL при получении HTTP-запроса. "
"См. также [method uri_encode].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var url = \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"print(url.uri_decode()) # Выводит \"$DOCS_URL/?highlight=Godot Engine:docs\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var url = \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"GD.Print(url.URIDecode()) // Выводит \"$DOCS_URL/?highlight=Godot "
"Engine:docs\"\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Этот метод декодирует [code]+[/code] как пробел."

msgid ""
"Encodes the string to URL-friendly format. This method is meant to properly "
"encode the parameters in a URL when sending an HTTP request. See also [method "
"uri_decode].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prefix = \"$DOCS_URL/?highlight=\"\n"
"var url = prefix + \"Godot Engine:docs\".uri_encode()\n"
"\n"
"print(url) # Prints \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var prefix = \"$DOCS_URL/?highlight=\";\n"
"var url = prefix + \"Godot Engine:docs\".URIEncode();\n"
"\n"
"GD.Print(url); // Prints \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Кодирует строку в формат, удобный для URL. Этот метод предназначен для "
"правильного кодирования параметров в URL при отправке HTTP-запроса. См. также "
"[method uri_decode].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var prefix = \"$DOCS_URL/?highlight=\"\n"
"var url = prefix + \"Godot Engine:docs\".uri_encode()\n"
"\n"
"print(url) # Выводит \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"[/gdscript]\n"
"[csharp]\n"
"var prefix = \"$DOCS_URL/?highlight=\";\n"
"var url = prefix + \"Godot Engine:docs\".URIEncode();\n"
"\n"
"GD.Print(url); // Выводит \"$DOCS_URL/?highlight=Godot%20Engine%3%docs\"\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Decodes the file path from its URL-encoded format. Unlike [method uri_decode] "
"this method leaves [code]+[/code] as is."
msgstr ""
"Декодирует путь к файлу из его URL-кодированного формата. В отличие от "
"[method uri_decode] этот метод оставляет [code]+[/code] как есть."

msgid ""
"Returns a copy of the string with all characters that are not allowed in "
"[method is_valid_filename] replaced with underscores."
msgstr ""
"Возвращает копию строки, в которой все символы, недопустимые в [method "
"is_valid_filename], заменены на подчеркивания."

msgid ""
"Returns a copy of the string with all characters that are not allowed in "
"[member Node.name] ([code].[/code] [code]:[/code] [code]@[/code] [code]/[/"
"code] [code]\"[/code] [code]%[/code]) replaced with underscores."
msgstr ""
"Возвращает копию строки, в которой все символы, недопустимые в [member "
"Node.name] ([code].[/code] [code]:[/code] [code]@[/code] [code]/[/code] [code]"
"\"[/code] [code]%[/code]), заменены на подчеркивания."

msgid ""
"Returns a copy of the string with special characters escaped using the XML "
"standard. If [param escape_quotes] is [code]true[/code], the single quote "
"([code]'[/code]) and double quote ([code]\"[/code]) characters are also "
"escaped."
msgstr ""
"Возвращает копию строки со специальными символами, экранированными с "
"использованием стандарта XML. Если [param escape_quotes] равен [code]true[/"
"code], символы одинарной кавычки ([code]'[/code]) и двойной кавычки ([code]"
"\"[/code]) также экранируются."

msgid ""
"Returns a copy of the string with escaped characters replaced by their "
"meanings according to the XML standard."
msgstr ""
"Возвращает копию строки, в которой экранированные символы заменены их "
"значениями в соответствии со стандартом XML."

msgid ""
"Returns [code]true[/code] if both strings do not contain the same sequence of "
"characters."
msgstr ""
"Возвращает [code]true[/code], если обе строки не содержат одинаковую "
"последовательность символов."

msgid ""
"Returns [code]true[/code] if this [String] is not equivalent to the given "
"[StringName]."
msgstr ""
"Возвращает [code]true[/code], если эта [String] не эквивалентна заданной "
"[StringName]."

msgid ""
"Formats the [String], replacing the placeholders with one or more parameters. "
"To pass multiple parameters, [param right] needs to be an [Array].\n"
"[codeblock]\n"
"print(\"I caught %d fishes!\" % 2) # Prints \"I caught 2 fishes!\"\n"
"\n"
"var my_message = \"Travelling to %s, at %2.2f km/h.\"\n"
"var location = \"Deep Valley\"\n"
"var speed = 40.3485\n"
"print(my_message % [location, speed]) # Prints \"Travelling to Deep Valley, "
"at 40.35 km/h.\"\n"
"[/codeblock]\n"
"For more information, see the [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_format_string.html]GDScript format strings[/url] tutorial.\n"
"[b]Note:[/b] In C#, this operator is not available. Instead, see [url=https://"
"learn.microsoft.com/en-us/dotnet/csharp/language-reference/tokens/"
"interpolated]how to interpolate strings with \"$\"[/url]."
msgstr ""
"Форматирует [String], заменяя заполнители одним или несколькими параметрами. "
"Чтобы передать несколько параметров, [param right] должен быть [Array].\n"
"[codeblock]\n"
"print(\"I caught %d fishes!\" % 2) # Выводит \"I caught 2 fishes!\"\n"
"\n"
"var my_message = \"Travelling to %s, at %2.2f km/h.\"\n"
"var location = \"Deep Valley\"\n"
"var speed = 40.3485\n"
"print(my_message % [location, speed]) # Выводит \"Travelling to Deep Valley, "
"at 40.35 km/h.\"\n"
"[/codeblock]\n"
"Для получения дополнительной информации см. [url=$DOCS_URL/tutorials/"
"scripting/gdscript/gdscript_format_string.html]Строки формата GDScript[/url] "
"учебник.\n"
"[b]Примечание:[/b] В C# этот оператор недоступен. Вместо этого см. "
"[url=https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/"
"tokens/interpolated]как интерполировать строки с помощью \"$\"[/url]."

msgid ""
"Appends [param right] at the end of this [String], also known as a string "
"concatenation."
msgstr ""
"Добавляет [param right] в конец этой [String], что также называется "
"конкатенацией строк."

msgid ""
"Appends [param right] at the end of this [String], returning a [String]. This "
"is also known as a string concatenation."
msgstr ""
"Добавляет [param right] в конец этой [String], возвращая [String]. Это также "
"известно как конкатенация строк."

msgid ""
"Returns [code]true[/code] if the left [String] comes before [param right] in "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url], which roughly matches the alphabetical order. Useful for sorting."
msgstr ""
"Возвращает [code]true[/code], если левая [String] предшествует [param right] "
"в [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]порядке "
"Unicode[/url], что примерно соответствует алфавитному порядку. Полезно для "
"сортировки."

msgid ""
"Returns [code]true[/code] if the left [String] comes before [param right] in "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url], which roughly matches the alphabetical order, or if both are equal."
msgstr ""
"Возвращает [code]true[/code], если левая [String] предшествует [param right] "
"в [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]порядке "
"Unicode[/url], что примерно соответствует алфавитному порядку, или если оба "
"они равны."

msgid ""
"Returns [code]true[/code] if both strings contain the same sequence of "
"characters."
msgstr ""
"Возвращает [code]true[/code], если обе строки содержат одинаковую "
"последовательность символов."

msgid ""
"Returns [code]true[/code] if this [String] is equivalent to the given "
"[StringName]."
msgstr ""
"Возвращает [code]true[/code], если эта [String] эквивалентна заданной "
"[StringName]."

msgid ""
"Returns [code]true[/code] if the left [String] comes after [param right] in "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url], which roughly matches the alphabetical order. Useful for sorting."
msgstr ""
"Возвращает [code]true[/code], если левая [String] следует после [param right] "
"в [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]порядке "
"Unicode[/url], что примерно соответствует алфавитному порядку. Полезно для "
"сортировки."

msgid ""
"Returns [code]true[/code] if the left [String] comes after [param right] in "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url], which roughly matches the alphabetical order, or if both are equal."
msgstr ""
"Возвращает [code]true[/code], если левая [String] следует после [param right] "
"в [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]порядке "
"Unicode[/url], что примерно соответствует алфавитному порядку, или если оба "
"они равны."

msgid ""
"Returns a new [String] that only contains the character at [param index]. "
"Indices start from [code]0[/code]. If [param index] is greater or equal to "
"[code]0[/code], the character is fetched starting from the beginning of the "
"string. If [param index] is a negative value, it is fetched starting from the "
"end. Accessing a string out-of-bounds will cause a run-time error, pausing "
"the project execution if run from the editor."
msgstr ""
"Возвращает новую [String], содержащую только символ в [param index]. Индексы "
"начинаются с [code]0[/code]. Если [param index] больше или равен [code]0[/"
"code], символ извлекается, начиная с начала строки. Если [param index] — "
"отрицательное значение, он извлекается, начиная с конца. Доступ к строке за "
"пределами границ вызовет ошибку времени выполнения, приостанавливая "
"выполнение проекта, если он запущен из редактора."

msgid "A built-in type for unique strings."
msgstr "Встроенный тип для уникальных строк."

msgid ""
"[StringName]s are immutable strings designed for general-purpose "
"representation of unique names (also called \"string interning\"). Two "
"[StringName]s with the same value are the same object. Comparing them is "
"extremely fast compared to regular [String]s.\n"
"You will usually pass a [String] to methods expecting a [StringName] and it "
"will be automatically converted (often at compile time), but in rare cases "
"you can construct a [StringName] ahead of time with the [StringName] "
"constructor or, in GDScript, the literal syntax [code]&\"example\"[/code]. "
"Manually constructing a [StringName] allows you to control when the "
"conversion from [String] occurs or to use the literal and prevent conversions "
"entirely.\n"
"See also [NodePath], which is a similar concept specifically designed to "
"store pre-parsed scene tree paths.\n"
"All of [String]'s methods are available in this class too. They convert the "
"[StringName] into a string, and they also return a string. This is highly "
"inefficient and should only be used if the string is desired.\n"
"[b]Note:[/b] In C#, an explicit conversion to [code]System.String[/code] is "
"required to use the methods listed on this page. Use the [code]ToString()[/"
"code] method to cast a [StringName] to a string, and then use the equivalent "
"methods in [code]System.String[/code] or [code]StringExtensions[/code].\n"
"[b]Note:[/b] In a boolean context, a [StringName] will evaluate to "
"[code]false[/code] if it is empty ([code]StringName(\"\")[/code]). Otherwise, "
"a [StringName] will always evaluate to [code]true[/code]."
msgstr ""
"[StringName] — это неизменяемые строки, предназначенные для универсального "
"представления уникальных имен (также называемого «интернированием строк»). "
"Два [StringName] с одинаковым значением являются одним и тем же объектом. Их "
"сравнение выполняется чрезвычайно быстро по сравнению с обычными [String].\n"
"Обычно вы передаете [String] методам, ожидающим [StringName], и он будет "
"автоматически преобразован (часто во время компиляции), но в редких случаях "
"вы можете заранее создать [StringName] с помощью конструктора [StringName] "
"или, в GDScript, литерального синтаксиса [code]&\"example\"[/code]. Ручное "
"создание [StringName] позволяет вам контролировать, когда происходит "
"преобразование из [String], или использовать литерал и полностью "
"предотвратить преобразования.\n"
"См. также [NodePath], который является похожей концепцией, специально "
"разработанной для хранения предварительно проанализированных путей дерева "
"сцены.\n"
"Все методы [String] также доступны в этом классе. Они преобразуют "
"[StringName] в строку, а также возвращают строку. Это крайне неэффективно и "
"должно использоваться только в том случае, если строка желательна.\n"
"[b]Примечание:[/b] В C# для использования методов, перечисленных на этой "
"странице, требуется явное преобразование в [code]System.String[/code]. "
"Используйте метод [code]ToString()[/code], чтобы преобразовать [StringName] в "
"строку, а затем используйте эквивалентные методы в [code]System.String[/code] "
"или [code]StringExtensions[/code].\n"
"[b]Примечание:[/b] В логическом контексте [StringName] будет оцениваться как "
"[code]false[/code], если он пуст ([code]StringName(\"\")[/code]). В противном "
"случае [StringName] всегда будет оцениваться как [code]true[/code]."

msgid "Constructs an empty [StringName]."
msgstr "Создает пустой [StringName]."

msgid "Constructs a [StringName] as a copy of the given [StringName]."
msgstr "Создает [StringName] как копию заданного [StringName]."

msgid ""
"Creates a new [StringName] from the given [String]. In GDScript, "
"[code]StringName(\"example\")[/code] is equivalent to [code]&\"example\"[/"
"code]."
msgstr ""
"Создает новый [StringName] из заданного [String]. В GDScript "
"[code]StringName(\"example\")[/code] эквивалентно [code]&\"example\"[/code]."

msgid ""
"Performs a case-sensitive comparison to another string. Returns [code]-1[/"
"code] if less than, [code]1[/code] if greater than, or [code]0[/code] if "
"equal. \"Less than\" and \"greater than\" are determined by the [url=https://"
"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code points[/url] of "
"each string, which roughly matches the alphabetical order.\n"
"With different string lengths, returns [code]1[/code] if this string is "
"longer than the [param to] string, or [code]-1[/code] if shorter. Note that "
"the length of empty strings is [i]always[/i] [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method nocasecmp_to], [method filecasecmp_to], "
"and [method naturalcasecmp_to]."
msgstr ""
"Выполняет сравнение с другой строкой с учетом регистра. Возвращает [code]-1[/"
"code] если меньше, [code]1[/code] если больше, или [code]0[/code] если равно. "
"«Меньше» и «больше» определяются [url=https://en.wikipedia.org/wiki/"
"List_of_Unicode_characters]кодовыми точками Unicode[/url] каждой строки, что "
"примерно соответствует алфавитному порядку.\n"
"При разной длине строк возвращает [code]1[/code] если эта строка длиннее "
"строки [param to], или [code]-1[/code] если короче. Обратите внимание, что "
"длина пустых строк [i]всегда [/i] ровна [code]0[/code].\n"
"Чтобы получить результат [bool] из сравнения строк, используйте вместо этого "
"оператор [code]==[/code]. См. также [method nocasecmp_to], [method "
"filecasecmp_to] и [method naturalcasecmp_to]."

msgid ""
"Performs a [b]case-sensitive[/b], [i]natural order[/i] comparison to another "
"string. Returns [code]-1[/code] if less than, [code]1[/code] if greater than, "
"or [code]0[/code] if equal. \"Less than\" or \"greater than\" are determined "
"by the [url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode "
"code points[/url] of each string, which roughly matches the alphabetical "
"order.\n"
"When used for sorting, natural order comparison orders sequences of numbers "
"by the combined value of each digit as is often expected, instead of the "
"single digit's value. A sorted sequence of numbered strings will be [code]"
"[\"1\", \"2\", \"3\", ...][/code], not [code][\"1\", \"10\", \"2\", "
"\"3\", ...][/code].\n"
"With different string lengths, returns [code]1[/code] if this string is "
"longer than the [param to] string, or [code]-1[/code] if shorter. Note that "
"the length of empty strings is [i]always[/i] [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method naturalnocasecmp_to], [method "
"filecasecmp_to], and [method nocasecmp_to]."
msgstr ""
"Выполняет [b]чувствительное к регистру[/b], [i]естественное[/i] сравнение с "
"другой строкой. Возвращает [code]-1[/code] если меньше, [code]1[/code] если "
"больше, или [code]0[/code] если равно. \"Меньше\" или \"больше\" определяются "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]кодовыми "
"точками Unicode[/url] каждой строки, что примерно соответствует алфавитному "
"порядку.\n"
"При использовании для сортировки сравнение в естественном порядке "
"упорядочивает последовательности чисел по объединенному значению каждой "
"цифры, как часто ожидается, а не по значению одной цифры. Отсортированная "
"последовательность пронумерованных строк будет [code][\"1\", \"2\", "
"\"3\", ...][/code], а не [code][\"1\", \"10\", \"2\", \"3\", ...][/code].\n"
"При разной длине строки возвращает [code]1[/code], если эта строка длиннее "
"строки [param to], или [code]-1[/code] если короче. Обратите внимание, что "
"длина пустых строк [i]всегда[/i] равна [code]0[/code].\n"
"Чтобы получить результат [bool] из сравнения строк, используйте вместо этого "
"оператор [code]==[/code]. См. также [method naturalnocasecmp_to], [method "
"filecasecmp_to] и [method nocasecmp_to]."

msgid ""
"Performs a [b]case-insensitive[/b], [i]natural order[/i] comparison to "
"another string. Returns [code]-1[/code] if less than, [code]1[/code] if "
"greater than, or [code]0[/code] if equal. \"Less than\" or \"greater than\" "
"are determined by the [url=https://en.wikipedia.org/wiki/"
"List_of_Unicode_characters]Unicode code points[/url] of each string, which "
"roughly matches the alphabetical order. Internally, lowercase characters are "
"converted to uppercase for the comparison.\n"
"When used for sorting, natural order comparison orders sequences of numbers "
"by the combined value of each digit as is often expected, instead of the "
"single digit's value. A sorted sequence of numbered strings will be [code]"
"[\"1\", \"2\", \"3\", ...][/code], not [code][\"1\", \"10\", \"2\", "
"\"3\", ...][/code].\n"
"With different string lengths, returns [code]1[/code] if this string is "
"longer than the [param to] string, or [code]-1[/code] if shorter. Note that "
"the length of empty strings is [i]always[/i] [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method naturalcasecmp_to], [method "
"filenocasecmp_to], and [method casecmp_to]."
msgstr ""
"Выполняет [b]нечувствительное к регистру[/b], [i]естественное[/i] сравнение с "
"другой строкой. Возвращает [code]-1[/code] если меньше, [code]1[/code] если "
"больше, или [code]0[/code] если равно. \"Меньше\" или \"больше\" определяются "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]кодовыми "
"точками Unicode[/url] каждой строки, что примерно соответствует алфавитному "
"порядку. Внутренне строчные символы преобразуются в прописные для сравнения.\n"
"При использовании для сортировки сравнение в естественном порядке "
"упорядочивает последовательности чисел по объединенному значению каждой "
"цифры, как часто ожидается, вместо значения одной цифры. Отсортированная "
"последовательность пронумерованных строк будет [code][\"1\", \"2\", "
"\"3\", ...][/code], а не [code][\"1\", \"10\", \"2\", \"3\", ...][/code].\n"
"При разной длине строки возвращает [code]1[/code], если эта строка длиннее "
"строки [param to], или [code]-1[/code] если короче. Обратите внимание, что "
"длина пустых строк [i]]всегда[/i] равна [code]0[/code].\n"
"Чтобы получить результат [bool] из сравнения строк, используйте вместо этого "
"оператор [code]==[/code]. См. также [method naturalcasecmp_to], [method "
"filenocasecmp_to] и [method casecmp_to]."

msgid ""
"Performs a [b]case-insensitive[/b] comparison to another string. Returns "
"[code]-1[/code] if less than, [code]1[/code] if greater than, or [code]0[/"
"code] if equal. \"Less than\" or \"greater than\" are determined by the "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode code "
"points[/url] of each string, which roughly matches the alphabetical order. "
"Internally, lowercase characters are converted to uppercase for the "
"comparison.\n"
"With different string lengths, returns [code]1[/code] if this string is "
"longer than the [param to] string, or [code]-1[/code] if shorter. Note that "
"the length of empty strings is [i]always[/i] [code]0[/code].\n"
"To get a [bool] result from a string comparison, use the [code]==[/code] "
"operator instead. See also [method casecmp_to], [method filenocasecmp_to], "
"and [method naturalnocasecmp_to]."
msgstr ""
"Выполняет [b]нечувствительное к регистру[/b] сравнение с другой строкой. "
"Возвращает [code]-1[/code] если меньше, [code]1[/code] если больше, или "
"[code]0[/code] если равно. «Меньше» или «больше» определяются [url=https://"
"en.wikipedia.org/wiki/List_of_Unicode_characters]кодовыми точками Unicode[/"
"url] каждой строки, что примерно соответствует алфавитному порядку. Внутренне "
"строчные символы преобразуются в заглавные для сравнения.\n"
"При разной длине строк возвращает [code]1[/code], если эта строка длиннее "
"строки [param to], или [code]-1[/code] если короче. Обратите внимание, что "
"длина пустых строк [i]всегда[/i] равна [code]0[/code].\n"
"Чтобы получить результат [bool] из сравнения строк, используйте оператор "
"[code]==[/code]. См. также [method casecmp_to], [method filenocasecmp_to] и "
"[method naturalnocasecmp_to]."

msgid ""
"Returns the character code at position [param at].\n"
"See also [method String.chr], [method @GDScript.char], and [method "
"@GDScript.ord]."
msgstr ""
"Возвращает код символа в позиции [param at].\n"
"См. также [method String.chr], [method @GDScript.char] и [method "
"@GDScript.ord]."

msgid ""
"Returns [code]true[/code] if this [StringName] is not equivalent to the given "
"[String]."
msgstr ""
"Возвращает [code]true[/code], если [StringName] не эквивалентно заданной "
"[String]."

msgid ""
"Returns [code]true[/code] if the [StringName] and [param right] do not refer "
"to the same name. Comparisons between [StringName]s are much faster than "
"regular [String] comparisons."
msgstr ""
"Возвращает [code]true[/code], если [StringName] и [param right] не ссылаются "
"на одно и то же имя. Сравнения между [StringName] намного быстрее обычных "
"сравнений [String]."

msgid ""
"Formats the [StringName], replacing the placeholders with one or more "
"parameters, returning a [String]. To pass multiple parameters, [param right] "
"needs to be an [Array].\n"
"For more information, see the [url=$DOCS_URL/tutorials/scripting/gdscript/"
"gdscript_format_string.html]GDScript format strings[/url] tutorial.\n"
"[b]Note:[/b] In C#, this operator is not available. Instead, see [url=https://"
"learn.microsoft.com/en-us/dotnet/csharp/language-reference/tokens/"
"interpolated]how to interpolate strings with \"$\"[/url]."
msgstr ""
"Форматирует [StringName], заменяя заполнители (placeholders) одним или "
"несколькими параметрами, возвращая [String]. Для передачи нескольких "
"параметров [param right] должен быть [Array].\n"
"Дополнительную информацию см. в руководстве [url=$DOCS_URL/tutorials/"
"scripting/gdscript/gdscript_format_string.html]Строки формата GDScript[/"
"url].\n"
"[b]Примечание:[/b] В C# этот оператор недоступен. Вместо этого см. "
"[url=https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/"
"tokens/interpolated]как интерполировать строки с помощью \"$\"[/url]."

msgid ""
"Appends [param right] at the end of this [StringName], returning a [String]. "
"This is also known as a string concatenation."
msgstr ""
"Добавляет [param right] в конец этого [StringName], возвращая [String]. Это "
"также известно как конкатенация строк."

msgid ""
"Returns [code]true[/code] if the left [StringName]'s pointer comes before "
"[param right]. Note that this will not match their [url=https://"
"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url]."
msgstr ""
"Возвращает [code]true[/code], если указатель left [StringName] находится "
"перед [param right]. Обратите внимание, что это не будет соответствовать их "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]порядку "
"Unicode[/url]."

msgid ""
"Returns [code]true[/code] if the left [StringName]'s pointer comes before "
"[param right] or if they are the same. Note that this will not match their "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url]."
msgstr ""
"Возвращает [code]true[/code], если указатель left [StringName] предшествует "
"[param right] или если они одинаковы. Обратите внимание, что это не будет "
"соответствовать их [url=https://en.wikipedia.org/wiki/"
"List_of_Unicode_characters]порядку Unicode[/url]."

msgid ""
"Returns [code]true[/code] if this [StringName] is equivalent to the given "
"[String]."
msgstr ""
"Возвращает [code]true[/code], если [StringName] эквивалентно заданной "
"[String]."

msgid ""
"Returns [code]true[/code] if the [StringName] and [param right] refer to the "
"same name. Comparisons between [StringName]s are much faster than regular "
"[String] comparisons."
msgstr ""
"Возвращает [code]true[/code], если [StringName] и [param right] ссылаются на "
"одно и то же имя. Сравнения между [StringName] намного быстрее обычных "
"сравнений [String]."

msgid ""
"Returns [code]true[/code] if the left [StringName]'s pointer comes after "
"[param right]. Note that this will not match their [url=https://"
"en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/url]."
msgstr ""
"Возвращает [code]true[/code], если указатель left [StringName] находится "
"после [param right]. Обратите внимание, что это не будет соответствовать их "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]порядку "
"Unicode[/url]."

msgid ""
"Returns [code]true[/code] if the left [StringName]'s pointer comes after "
"[param right] or if they are the same. Note that this will not match their "
"[url=https://en.wikipedia.org/wiki/List_of_Unicode_characters]Unicode order[/"
"url]."
msgstr ""
"Возвращает [code]true[/code], если указатель left [StringName] следует за "
"[param right] или они одинаковы. Обратите внимание, что это не будет "
"соответствовать их [url=https://en.wikipedia.org/wiki/"
"List_of_Unicode_characters]порядку Unicode[/url]."

msgid "Abstract base class for defining stylized boxes for UI elements."
msgstr ""
"Абстрактный базовый класс для определения стилизованных рамок для элементов "
"пользовательского интерфейса UI."

msgid ""
"[StyleBox] is an abstract base class for drawing stylized boxes for UI "
"elements. It is used for panels, buttons, [LineEdit] backgrounds, [Tree] "
"backgrounds, etc. and also for testing a transparency mask for pointer "
"signals. If mask test fails on a [StyleBox] assigned as mask to a control, "
"clicks and motion signals will go through it to the one below.\n"
"[b]Note:[/b] For control nodes that have [i]Theme Properties[/i], the "
"[code]focus[/code] [StyleBox] is displayed over the [code]normal[/code], "
"[code]hover[/code] or [code]pressed[/code] [StyleBox]. This makes the "
"[code]focus[/code] [StyleBox] more reusable across different nodes."
msgstr ""
"[StyleBox] — абстрактный базовый класс для рисования стилизованных рамок для "
"элементов пользовательского интерфейса. Он используется для панелей, кнопок, "
"фонов [LineEdit], фонов [Tree] и т. д., а также для тестирования маски "
"прозрачности для сигналов указателя. Если тест маски не пройден на "
"[StyleBox], назначенном в качестве маски для элемента управления, щелчки и "
"сигналы движения будут проходить через него к расположенному ниже.\n"
"[b]Примечание:[/b] Для узлов управления, имеющих [i]Свойства темы[/i], "
"[code]фокус[/code] [StyleBox] отображается поверх [code]нормального[/code], "
"[code]наведенного[/code] или [code]нажатого[/code] [StyleBox]. Это делает "
"[code]фокус[/code] [StyleBox] более пригодным для повторного использования в "
"разных узлах."

msgid ""
"Virtual method to be implemented by the user. Returns a custom minimum size "
"that the stylebox must respect when drawing. By default [method "
"get_minimum_size] only takes content margins into account. This method can be "
"overridden to add another size restriction. A combination of the default "
"behavior and the output of this method will be used, to account for both "
"sizes."
msgstr ""
"Виртуальный метод, реализуемый пользователем. Возвращает минимальный размер, "
"который stylebox должен учитывать при рисовании. По умолчанию [method "
"get_minimum_size] учитывает только поля содержимого. Этот метод можно "
"переопределить, чтобы добавить еще одно ограничение размера. Будет "
"использоваться комбинация поведения по умолчанию и вывода этого метода для "
"учета обоих размеров."

msgid ""
"Draws this stylebox using a canvas item identified by the given [RID].\n"
"The [RID] value can either be the result of [method "
"CanvasItem.get_canvas_item] called on an existing [CanvasItem]-derived node, "
"or directly from creating a canvas item in the [RenderingServer] with [method "
"RenderingServer.canvas_item_create]."
msgstr ""
"Рисует stylebox, используя элемент холста, идентифицированный заданным "
"[RID].\n"
"Значение [RID] может быть либо результатом [method "
"CanvasItem.get_canvas_item], вызванного на существующем узле, производном от "
"[CanvasItem], либо непосредственно в результате создания элемента холста в "
"[RenderingServer] с помощью [method RenderingServer.canvas_item_create]."

msgid "Returns the default margin of the specified [enum Side]."
msgstr "Возвращает поле по умолчанию для указанного [enum Side]."

msgid ""
"Returns the [CanvasItem] that handles its [constant "
"CanvasItem.NOTIFICATION_DRAW] or [method CanvasItem._draw] callback at this "
"moment."
msgstr ""
"Возвращает [CanvasItem], который обрабатывает свой обратный вызов [constant "
"CanvasItem.NOTIFICATION_DRAW] или [method CanvasItem._draw] в данный момент."

msgid ""
"Returns the content margin offset for the specified [enum Side].\n"
"Positive values reduce size inwards, unlike [Control]'s margin values."
msgstr ""
"Возвращает смещение поля содержимого для указанного [enum Side]. \n"
"Положительные значения уменьшают размер внутрь, в отличие от значений полей "
"[Control]."

msgid "Returns the minimum size that this stylebox can be shrunk to."
msgstr ""
"Возвращает минимальный размер, до которого можно уменьшить этот stylebox."

msgid ""
"Returns the \"offset\" of a stylebox. This helper function returns a value "
"equivalent to [code]Vector2(style.get_margin(MARGIN_LEFT), "
"style.get_margin(MARGIN_TOP))[/code]."
msgstr ""
"Возвращает «смещение» stylebox. Эта вспомогательная функция возвращает "
"значение, эквивалентное [code]Vector2(style.get_margin(MARGIN_LEFT), "
"style.get_margin(MARGIN_TOP))[/code]."

msgid ""
"Sets the default value of the specified [enum Side] to [param offset] pixels."
msgstr ""
"Устанавливает значение по умолчанию для указанного [enum Side] на [param "
"offset] пикселей."

msgid "Sets the default margin to [param offset] pixels for all sides."
msgstr ""
"Устанавливает поле по умолчанию на [param offset] пикселей для всех сторон."

msgid "Test a position in a rectangle, return whether it passes the mask test."
msgstr ""
"Проверяем позицию в прямоугольнике и даем ответ, прошла ли она тест на маску."

msgid ""
"The bottom margin for the contents of this style box. Increasing this value "
"reduces the space available to the contents from the bottom.\n"
"If this value is negative, it is ignored and a child-specific margin is used "
"instead. For example, for [StyleBoxFlat], the border thickness (if any) is "
"used instead.\n"
"It is up to the code using this style box to decide what these contents are: "
"for example, a [Button] respects this content margin for the textual contents "
"of the button.\n"
"[method get_margin] should be used to fetch this value as consumer instead of "
"reading these properties directly. This is because it correctly respects "
"negative values and the fallback mentioned above."
msgstr ""
"Нижнее поле для содержимого этого блока стиля. Увеличение этого значения "
"уменьшает доступное для содержимого пространство снизу.\n"
"Если это значение отрицательное, оно игнорируется, и вместо него используется "
"поле, специфичное для дочернего элемента. Например, для [StyleBoxFlat] вместо "
"этого используется толщина границы (если таковая имеется).\n"
"Код, использующий этот блок стиля, должен решить, что это за содержимое: "
"например, [Button] учитывает это поле содержимого для текстового содержимого "
"кнопки.\n"
"[method get_margin] следует использовать для получения этого значения как "
"потребителя вместо прямого чтения этих свойств. Это связано с тем, что он "
"правильно учитывает отрицательные значения и резервный вариант, упомянутый "
"выше."

msgid ""
"The left margin for the contents of this style box. Increasing this value "
"reduces the space available to the contents from the left.\n"
"Refer to [member content_margin_bottom] for extra considerations."
msgstr ""
"Левое поле для содержимого этого блока стиля. Увеличение этого значения "
"уменьшает пространство, доступное для содержимого слева.\n"
"Дополнительные соображения см. в [member content_margin_bottom]."

msgid ""
"The right margin for the contents of this style box. Increasing this value "
"reduces the space available to the contents from the right.\n"
"Refer to [member content_margin_bottom] for extra considerations."
msgstr ""
"Правое поле для содержимого этого блока стиля. Увеличение этого значения "
"уменьшает пространство, доступное для содержимого справа.\n"
"Дополнительные соображения см. в [member content_margin_bottom]."

msgid ""
"The top margin for the contents of this style box. Increasing this value "
"reduces the space available to the contents from the top.\n"
"Refer to [member content_margin_bottom] for extra considerations."
msgstr ""
"Верхнее поле для содержимого этого блока стиля. Увеличение этого значения "
"уменьшает пространство, доступное для содержимого сверху.\n"
"Дополнительные соображения см. в [member content_margin_bottom]."

msgid "An empty [StyleBox] (does not display anything)."
msgstr "Пустой [StyleBox] (ничего не отображает)."

msgid ""
"An empty [StyleBox] that can be used to display nothing instead of the "
"default style (e.g. it can \"disable\" [code]focus[/code] styles)."
msgstr ""
"Пустой [StyleBox], который можно использовать для отображения ничего вместо "
"стиля по умолчанию (например, он может «отключить» стили [code]focus[/code])."

msgid "A customizable [StyleBox] that doesn't use a texture."
msgstr "Настраиваемый [StyleBox], не использующий текстуру."

msgid ""
"By configuring various properties of this style box, you can achieve many "
"common looks without the need of a texture. This includes optionally rounded "
"borders, antialiasing, shadows, and skew.\n"
"Setting corner radius to high values is allowed. As soon as corners overlap, "
"the stylebox will switch to a relative system:\n"
"[codeblock lang=text]\n"
"height = 30\n"
"corner_radius_top_left = 50\n"
"corner_radius_bottom_left = 100\n"
"[/codeblock]\n"
"The relative system now would take the 1:2 ratio of the two left corners to "
"calculate the actual corner width. Both corners added will [b]never[/b] be "
"more than the height. Result:\n"
"[codeblock lang=text]\n"
"corner_radius_top_left: 10\n"
"corner_radius_bottom_left: 20\n"
"[/codeblock]"
msgstr ""
"Настраивая различные свойства этого stylebox'а, вы можете добиться многих "
"общих видов без необходимости использования текстуры. Это включает в себя "
"опциональные скругленные границы, сглаживание, тени и наклон.\n"
"Установка радиуса угла на высокие значения допускается. Как только углы "
"перекрываются, stylebox переключается на относительную систему:\n"
"[codeblock lang=text]\n"
"height = 30\n"
"corner_radius_top_left = 50\n"
"corner_radius_bottom_left = 100\n"
"[/codeblock]\n"
"Относительная система теперь будет использовать соотношение 1:2 двух левых "
"углов для расчета фактической ширины угла. Оба сложенных угла [b]никогда[/b] "
"не будут больше высоты. Результат:\n"
"[codeblock lang=text]\n"
"corner_radius_top_left: 10\n"
"corner_radius_bottom_left: 20\n"
"[/codeblock]"

msgid "Returns the specified [enum Side]'s border width."
msgstr "Возвращает указанную ширину границы [enum Side]."

msgid "Returns the smallest border width out of all four borders."
msgstr "Возвращает наименьшую ширину границы из всех четырех границ."

msgid "Returns the given [param corner]'s radius."
msgstr "Возвращает радиус заданного [param corner]."

msgid "Returns the size of the specified [enum Side]'s expand margin."
msgstr "Возвращает размер указанного поля расширения [enum Side]."

msgid "Sets the specified [enum Side]'s border width to [param width] pixels."
msgstr ""
"Устанавливает ширину границы указанного элемента [enum Side] на [param width] "
"пикселей."

msgid "Sets the border width to [param width] pixels for all sides."
msgstr "Устанавливает ширину границы на [param width] пикселей для всех сторон."

msgid ""
"Sets the corner radius to [param radius] pixels for the given [param corner]."
msgstr ""
"Устанавливает радиус угла равным [param radius] пикселей для заданного [param "
"corner]."

msgid "Sets the corner radius to [param radius] pixels for all corners."
msgstr ""
"Устанавливает радиус угла равным [param radius] пикселей для всех углов."

msgid ""
"Sets the expand margin to [param size] pixels for the specified [enum Side]."
msgstr ""
"Устанавливает поле расширения на [param size] пикселей для указанной [enum "
"Side]."

msgid "Sets the expand margin to [param size] pixels for all sides."
msgstr "Устанавливает поле расширения на [param size] пикселей для всех сторон."

msgid ""
"Antialiasing draws a small ring around the edges, which fades to "
"transparency. As a result, edges look much smoother. This is only noticeable "
"when using rounded corners or [member skew].\n"
"[b]Note:[/b] When using beveled corners with 45-degree angles ([member "
"corner_detail] = 1), it is recommended to set [member anti_aliasing] to "
"[code]false[/code] to ensure crisp visuals and avoid possible visual glitches."
msgstr ""
"Сглаживание рисует небольшое кольцо вокруг краев, которое постепенно "
"переходит в прозрачность. В результате края выглядят намного более гладкими. "
"Это заметно только при использовании скругленных углов или [member skew].\n"
"[b]Примечание:[/b] При использовании скошенных углов с углами в 45 градусов "
"([member corner_detail] = 1) рекомендуется установить [member anti_aliasing] "
"на [code]false[/code], чтобы обеспечить четкость изображения и избежать "
"возможных визуальных сбоев."

msgid ""
"This changes the size of the antialiasing effect. [code]1.0[/code] is "
"recommended for an optimal result at 100% scale, identical to how rounded "
"rectangles are rendered in web browsers and most vector drawing software.\n"
"[b]Note:[/b] Higher values may produce a blur effect but can also create "
"undesired artifacts on small boxes with large-radius corners."
msgstr ""
"Это изменяет размер эффекта сглаживания. [code]1.0[/code] рекомендуется для "
"оптимального результата в масштабе 100%, аналогично тому, как скругленные "
"прямоугольники отображаются в веб-браузерах и большинстве программ для "
"векторной графики.\n"
"[b]Примечание:[/b] Более высокие значения могут привести к эффекту размытия, "
"но также могут создать нежелательные артефакты на небольших полях с углами "
"большого радиуса."

msgid "The background color of the stylebox."
msgstr "Цвет фона stylebox."

msgid "If [code]true[/code], the border will fade into the background color."
msgstr "Если [code]true[/code], граница будет сливаться с цветом фона."

msgid "Sets the color of the border."
msgstr "Устанавливает цвет границы."

msgid "Border width for the bottom border."
msgstr "Ширина нижней границы."

msgid "Border width for the left border."
msgstr "Ширина левой границы."

msgid "Border width for the right border."
msgstr "Ширина границы для правой границы."

msgid "Border width for the top border."
msgstr "Ширина верхней границы."

msgid ""
"This sets the number of vertices used for each corner. Higher values result "
"in rounder corners but take more processing power to compute. When choosing a "
"value, you should take the corner radius ([method set_corner_radius_all]) "
"into account.\n"
"For corner radii less than 10, [code]4[/code] or [code]5[/code] should be "
"enough. For corner radii less than 30, values between [code]8[/code] and "
"[code]12[/code] should be enough.\n"
"A corner detail of [code]1[/code] will result in chamfered corners instead of "
"rounded corners, which is useful for some artistic effects."
msgstr ""
"Это устанавливает количество вершин, используемых для каждого угла. Более "
"высокие значения приводят к более круглым углам, но требуют больше "
"вычислительной мощности для вычисления. При выборе значения следует учитывать "
"радиус угла ([method set_corner_radius_all]).\n"
"Для радиусов угла менее 10 должно быть достаточно [code]4[/code] или [code]5[/"
"code]. Для радиусов угла менее 30 должно быть достаточно значений между "
"[code]8[/code] и [code]12[/code].\n"
"Детализация угла [code]1[/code] приведет к скошенным углам вместо "
"скругленных, что полезно для некоторых художественных эффектов."

msgid ""
"The bottom-left corner's radius. If [code]0[/code], the corner is not rounded."
msgstr "Радиус нижнего левого угла. Если [code]0[/code], угол не закруглен."

msgid ""
"The bottom-right corner's radius. If [code]0[/code], the corner is not "
"rounded."
msgstr "Радиус нижнего правого угла. Если [code]0[/code], угол не закруглен."

msgid ""
"The top-left corner's radius. If [code]0[/code], the corner is not rounded."
msgstr "Радиус верхнего левого угла. Если [code]0[/code], угол не закруглен."

msgid ""
"The top-right corner's radius. If [code]0[/code], the corner is not rounded."
msgstr "Радиус верхнего правого угла. Если [code]0[/code], угол не закруглен."

msgid "Toggles drawing of the inner part of the stylebox."
msgstr "Включает/выключает отрисовку внутренней части stylebox."

msgid ""
"Expands the stylebox outside of the control rect on the bottom edge. Useful "
"in combination with [member border_width_bottom] to draw a border outside the "
"control rect.\n"
"[b]Note:[/b] Unlike [member StyleBox.content_margin_bottom], [member "
"expand_margin_bottom] does [i]not[/i] affect the size of the clickable area "
"for [Control]s. This can negatively impact usability if used wrong, as the "
"user may try to click an area of the StyleBox that cannot actually receive "
"clicks."
msgstr ""
"Расширяет stylebox за пределы прямоугольника управления на нижнем крае. "
"Полезно в сочетании с [member border_width_bottom] для рисования границы за "
"пределами прямоугольника управления.\n"
"[b]Примечание:[/b] В отличие от [member StyleBox.content_margin_bottom], "
"[member expand_margin_bottom] [i]не[/i] влияет на размер области нажатия для "
"[Control]. Это может негативно повлиять на удобство использования при "
"неправильном использовании, так как пользователь может попытаться нажать на "
"область StyleBox, которая фактически не может получать щелчки."

msgid ""
"Expands the stylebox outside of the control rect on the left edge. Useful in "
"combination with [member border_width_left] to draw a border outside the "
"control rect.\n"
"[b]Note:[/b] Unlike [member StyleBox.content_margin_left], [member "
"expand_margin_left] does [i]not[/i] affect the size of the clickable area for "
"[Control]s. This can negatively impact usability if used wrong, as the user "
"may try to click an area of the StyleBox that cannot actually receive clicks."
msgstr ""
"Расширяет stylebox за пределы прямоугольника управления на левом краю. "
"Полезно в сочетании с [member border_width_left] для рисования границы за "
"пределами прямоугольника управления.\n"
"[b]Примечание:[/b] В отличие от [member StyleBox.content_margin_left], "
"[member expand_margin_left] [i]не[/i] влияет на размер области нажатия для "
"[Control]. Это может негативно повлиять на удобство использования при "
"неправильном использовании, так как пользователь может попытаться нажать на "
"область StyleBox, которая фактически не может получать щелчки."

msgid ""
"Expands the stylebox outside of the control rect on the right edge. Useful in "
"combination with [member border_width_right] to draw a border outside the "
"control rect.\n"
"[b]Note:[/b] Unlike [member StyleBox.content_margin_right], [member "
"expand_margin_right] does [i]not[/i] affect the size of the clickable area "
"for [Control]s. This can negatively impact usability if used wrong, as the "
"user may try to click an area of the StyleBox that cannot actually receive "
"clicks."
msgstr ""
"Расширяет stylebox за пределы прямоугольника управления на правом краю. "
"Полезно в сочетании с [member border_width_right] для рисования границы за "
"пределами прямоугольника управления.\n"
"[b]Примечание:[/b] В отличие от [member StyleBox.content_margin_right], "
"[member expand_margin_right] [i]не[/i] влияет на размер области нажатия для "
"[Control]. Это может негативно повлиять на удобство использования при "
"неправильном использовании, так как пользователь может попытаться нажать на "
"область StyleBox, которая фактически не может получать щелчки."

msgid ""
"Expands the stylebox outside of the control rect on the top edge. Useful in "
"combination with [member border_width_top] to draw a border outside the "
"control rect.\n"
"[b]Note:[/b] Unlike [member StyleBox.content_margin_top], [member "
"expand_margin_top] does [i]not[/i] affect the size of the clickable area for "
"[Control]s. This can negatively impact usability if used wrong, as the user "
"may try to click an area of the StyleBox that cannot actually receive clicks."
msgstr ""
"Расширяет stylebox за пределы прямоугольника управления на верхнем крае. "
"Полезно в сочетании с [member border_width_top] для рисования границы за "
"пределами прямоугольника управления.\n"
"[b]Примечание:[/b] В отличие от [member StyleBox.content_margin_top], [member "
"expand_margin_top] [i]не[/i] влияет на размер области нажатия для [Control]. "
"Это может негативно повлиять на удобство использования при неправильном "
"использовании, так как пользователь может попытаться нажать на область "
"StyleBox, которая фактически не может получать щелчки."

msgid ""
"The color of the shadow. This has no effect if [member shadow_size] is lower "
"than 1."
msgstr ""
"Цвет тени. Это не имеет никакого эффекта, если [member shadow_size] меньше 1."

msgid ""
"The shadow offset in pixels. Adjusts the position of the shadow relatively to "
"the stylebox."
msgstr ""
"Смещение тени в пикселях. Регулирует положение тени относительно stylebox."

msgid "The shadow size in pixels."
msgstr "Размер тени в пикселях."

msgid ""
"If set to a non-zero value on either axis, [member skew] distorts the "
"StyleBox horizontally and/or vertically. This can be used for \"futuristic\"-"
"style UIs. Positive values skew the StyleBox towards the right (X axis) and "
"upwards (Y axis), while negative values skew the StyleBox towards the left (X "
"axis) and downwards (Y axis).\n"
"[b]Note:[/b] To ensure text does not touch the StyleBox's edges, consider "
"increasing the [StyleBox]'s content margin (see [member "
"StyleBox.content_margin_bottom]). It is preferable to increase the content "
"margin instead of the expand margin (see [member expand_margin_bottom]), as "
"increasing the expand margin does not increase the size of the clickable area "
"for [Control]s."
msgstr ""
"Если установлено ненулевое значение на любой из осей, [member skew] искажает "
"StyleBox по горизонтали и/или вертикали. Это можно использовать для "
"пользовательских интерфейсов в «футуристическом» стиле. Положительные "
"значения наклоняют StyleBox вправо (ось X) и вверх (ось Y), а отрицательные "
"значения наклоняют StyleBox влево (ось X) и вниз (ось Y).\n"
"[b]Примечание:[/b] Чтобы текст не касался краев StyleBox, рассмотрите "
"возможность увеличения поля содержимого [StyleBox] (см. [member "
"StyleBox.content_margin_bottom]). Предпочтительно увеличить поле содержимого "
"вместо поля расширения (см. [member expand_margin_bottom]), поскольку "
"увеличение поля расширения не увеличивает размер области нажатия для "
"[Control]."

msgid "A [StyleBox] that displays a single line of a given color and thickness."
msgstr "[StyleBox], отображающий одну линию заданного цвета и толщины."

msgid ""
"A [StyleBox] that displays a single line of a given color and thickness. The "
"line can be either horizontal or vertical. Useful for separators."
msgstr ""
"[StyleBox], который отображает одну линию заданного цвета и толщины. Линия "
"может быть как горизонтальной, так и вертикальной. Полезно для разделителей."

msgid "The line's color."
msgstr "Цвет линии."

msgid ""
"The number of pixels the line will extend before the [StyleBoxLine]'s bounds. "
"If set to a negative value, the line will begin inside the [StyleBoxLine]'s "
"bounds."
msgstr ""
"Количество пикселей, на которое линия будет выходить за пределы "
"[StyleBoxLine]. Если задано отрицательное значение, линия начнется внутри "
"границ [StyleBoxLine]."

msgid ""
"The number of pixels the line will extend past the [StyleBoxLine]'s bounds. "
"If set to a negative value, the line will end inside the [StyleBoxLine]'s "
"bounds."
msgstr ""
"Количество пикселей, на которое линия выйдет за пределы границ "
"[StyleBoxLine]. Если задано отрицательное значение, линия закончится внутри "
"границ [StyleBoxLine]."

msgid "The line's thickness in pixels."
msgstr "Толщина линии в пикселях."

msgid ""
"If [code]true[/code], the line will be vertical. If [code]false[/code], the "
"line will be horizontal."
msgstr ""
"Если [code]true[/code], линия будет вертикальной. Если [code]false[/code], "
"линия будет горизонтальной."

msgid "A texture-based nine-patch [StyleBox]."
msgstr "Девяти-сторонний текстурный [StyleBox]."

msgid ""
"A texture-based nine-patch [StyleBox], in a way similar to [NinePatchRect]. "
"This stylebox performs a 3×3 scaling of a texture, where only the center cell "
"is fully stretched. This makes it possible to design bordered styles "
"regardless of the stylebox's size."
msgstr ""
"Текстурный девяти-сторонний [StyleBox], похожий на [NinePatchRect]. Этот "
"stylebox выполняет масштабирование текстуры 3×3, где полностью растягивается "
"только центральная ячейка. Это позволяет разрабатывать ограниченные стили "
"независимо от размера stylebox."

msgid "Returns the expand margin size of the specified [enum Side]."
msgstr "Возвращает размер поля расширения для указанного [enum Side]."

msgid "Returns the margin size of the specified [enum Side]."
msgstr "Возвращает размер поля указанного [enum Side]."

msgid "Sets the margin to [param size] pixels for the specified [enum Side]."
msgstr "Устанавливает поле в [param size] пикселей для указанной [enum Side]."

msgid "Sets the margin to [param size] pixels for all sides."
msgstr "Устанавливает поле в [param size] пикселей для всех сторон."

msgid ""
"Controls how the stylebox's texture will be stretched or tiled horizontally."
msgstr ""
"Управляет тем, как текстура stylebox будет растягиваться или располагаться по "
"горизонтали."

msgid ""
"Controls how the stylebox's texture will be stretched or tiled vertically."
msgstr ""
"Управляет тем, как текстура stylebox будет растягиваться или располагаться по "
"вертикали."

msgid ""
"If [code]true[/code], the nine-patch texture's center tile will be drawn."
msgstr ""
"Если [code]true[/code], будет нарисован центральный элемент текстуры из "
"девяти участков."

msgid ""
"Expands the bottom margin of this style box when drawing, causing it to be "
"drawn larger than requested."
msgstr ""
"Расширяет нижнее поле этого стиля при рисовании, в результате чего оно "
"отображается больше, чем требуется."

msgid ""
"Expands the left margin of this style box when drawing, causing it to be "
"drawn larger than requested."
msgstr ""
"Расширяет левое поле этого стиля при рисовании, в результате чего оно "
"отображается больше, чем требуется."

msgid ""
"Expands the right margin of this style box when drawing, causing it to be "
"drawn larger than requested."
msgstr ""
"Расширяет правое поле этого стиля при рисовании, в результате чего оно "
"отображается больше, чем требуется."

msgid ""
"Expands the top margin of this style box when drawing, causing it to be drawn "
"larger than requested."
msgstr ""
"Расширяет верхнее поле этого стиля при рисовании, в результате чего оно "
"отображается больше, чем требуется."

msgid "Modulates the color of the texture when this style box is drawn."
msgstr "Изменяет цвет текстуры при рисовании этого stylebox."

msgid ""
"The region to use from the [member texture].\n"
"This is equivalent to first wrapping the [member texture] in an "
"[AtlasTexture] with the same region.\n"
"If empty ([code]Rect2(0, 0, 0, 0)[/code]), the whole [member texture] is used."
msgstr ""
"Регион для использования из [member texture].\n"
"Это эквивалентно первой обертке [member texture] в [AtlasTexture] с тем же "
"регионом.\n"
"Если пусто ([code]Rect2(0, 0, 0, 0)[/code]), используется вся текстура "
"[member texture]."

msgid "The texture to use when drawing this style box."
msgstr "Текстура, используемая при рисовании этого stylebox."

msgid ""
"Increases the bottom margin of the 3×3 texture box.\n"
"A higher value means more of the source texture is considered to be part of "
"the bottom border of the 3×3 box.\n"
"This is also the value used as fallback for [member "
"StyleBox.content_margin_bottom] if it is negative."
msgstr ""
"Увеличивает нижнее поле поля текстуры 3×3.\n"
"Более высокое значение означает, что большая часть исходной текстуры "
"считается частью нижней границы поля 3×3.\n"
"Это также значение, используемое в качестве резервного для [member "
"StyleBox.content_margin_bottom], если оно отрицательное."

msgid ""
"Increases the left margin of the 3×3 texture box.\n"
"A higher value means more of the source texture is considered to be part of "
"the left border of the 3×3 box.\n"
"This is also the value used as fallback for [member "
"StyleBox.content_margin_left] if it is negative."
msgstr ""
"Увеличивает левое поле поля текстуры 3×3.\n"
"Более высокое значение означает, что большая часть исходной текстуры "
"считается частью левой границы поля 3×3.\n"
"Это также значение, используемое в качестве резервного варианта для [member "
"StyleBox.content_margin_left], если оно отрицательное."

msgid ""
"Increases the right margin of the 3×3 texture box.\n"
"A higher value means more of the source texture is considered to be part of "
"the right border of the 3×3 box.\n"
"This is also the value used as fallback for [member "
"StyleBox.content_margin_right] if it is negative."
msgstr ""
"Увеличивает правое поле поля текстуры 3×3.\n"
"Более высокое значение означает, что большая часть исходной текстуры "
"считается частью правой границы поля 3×3.\n"
"Это также значение, используемое в качестве резервного для [member "
"StyleBox.content_margin_right], если оно отрицательное."

msgid ""
"Increases the top margin of the 3×3 texture box.\n"
"A higher value means more of the source texture is considered to be part of "
"the top border of the 3×3 box.\n"
"This is also the value used as fallback for [member "
"StyleBox.content_margin_top] if it is negative."
msgstr ""
"Увеличивает верхнее поле поля текстуры 3×3.\n"
"Более высокое значение означает, что большая часть исходной текстуры "
"считается частью верхней границы поля 3×3.\n"
"Это также значение, используемое в качестве резервного для [member "
"StyleBox.content_margin_top], если оно отрицательное."

msgid ""
"Stretch the stylebox's texture. This results in visible distortion unless the "
"texture size matches the stylebox's size perfectly."
msgstr ""
"Растянуть текстуру stylebox. Это приведет к видимым искажениям, если только "
"размер текстуры не будет идеально соответствовать размеру stylebox."

msgid ""
"Repeats the stylebox's texture to match the stylebox's size according to the "
"nine-patch system."
msgstr ""
"Повторяет текстуру stylebox, чтобы она соответствовала размеру stylebox в "
"соответствии с системой девяти частей."

msgid ""
"Repeats the stylebox's texture to match the stylebox's size according to the "
"nine-patch system. Unlike [constant AXIS_STRETCH_MODE_TILE], the texture may "
"be slightly stretched to make the nine-patch texture tile seamlessly."
msgstr ""
"Повторяет текстуру stylebox для соответствия размеру stylebox в соответствии "
"с системой из девяти частей. В отличие от [constant AXIS_STRETCH_MODE_TILE], "
"текстура может быть слегка растянута, чтобы сделать текстуру из девяти частей "
"бесшовной."

msgid "Runs a [Tween] nested within another [Tween]."
msgstr "Запускает [Tween], вложенный в другой [Tween]."

msgid ""
"[SubtweenTweener] is used to execute a [Tween] as one step in a sequence "
"defined by another [Tween]. See [method Tween.tween_subtween] for more usage "
"information.\n"
"[b]Note:[/b] [method Tween.tween_subtween] is the only correct way to create "
"[SubtweenTweener]. Any [SubtweenTweener] created manually will not function "
"correctly."
msgstr ""
"[SubtweenTweener] используется для выполнения [Tween] как одного шага в "
"последовательности, определенной другим [Tween]. См. [method "
"Tween.tween_subtween] для получения дополнительной информации об "
"использовании.\n"
"[b]Примечание:[/b] [method Tween.tween_subtween] — единственный правильный "
"способ создания [SubtweenTweener]. Любой [SubtweenTweener], созданный "
"вручную, не будет работать правильно."

msgid ""
"Sets the time in seconds after which the [SubtweenTweener] will start running "
"the subtween. By default there's no delay."
msgstr ""
"Устанавливает время в секундах, после которого [SubtweenTweener] начнет "
"запускать субтвин. По умолчанию задержки нет."

msgid ""
"An interface to a game world that doesn't create a window or draw to the "
"screen directly."
msgstr ""
"Интерфейс к игровому миру, который не создает окно и не выводит изображение "
"на экран напрямую."

msgid ""
"[SubViewport] Isolates a rectangular region of a scene to be displayed "
"independently. This can be used, for example, to display UI in 3D space.\n"
"[b]Note:[/b] [SubViewport] is a [Viewport] that isn't a [Window], i.e. it "
"doesn't draw anything by itself. To display anything, [SubViewport] must have "
"a non-zero size and be either put inside a [SubViewportContainer] or assigned "
"to a [ViewportTexture].\n"
"[b]Note:[/b] [InputEvent]s are not passed to a standalone [SubViewport] by "
"default. To ensure [InputEvent] propagation, a [SubViewport] can be placed "
"inside of a [SubViewportContainer]."
msgstr ""
"[SubViewport] Изолирует прямоугольную область сцены для независимого "
"отображения. Это можно использовать, например, для отображения "
"пользовательского интерфейса в трехмерном пространстве.\n"
"[b]Примечание:[/b] [SubViewport] — это [Viewport], который не является "
"[Window], т. е. он сам по себе ничего не рисует. Чтобы что-либо отобразить, "
"[SubViewport] должен иметь ненулевой размер и быть либо помещен в "
"[SubViewportContainer], либо назначен [ViewportTexture].\n"
"[b]Примечание:[/b] [InputEvent] по умолчанию не передаются в автономный "
"[SubViewport]. Чтобы обеспечить распространение [InputEvent], [SubViewport] "
"можно поместить внутрь [SubViewportContainer]."

msgid "Using Viewports"
msgstr "Использовать Viewports"

msgid "3D in 2D Viewport Demo"
msgstr "Демонстрация 3D в 2D-виде"

msgid "Screen Capture Demo"
msgstr "Демо-версия захвата экрана"

msgid "Dynamic Split Screen Demo"
msgstr "Демонстрация динамического разделения экрана"

msgid "3D Resolution Scaling Demo"
msgstr "Демонстрация масштабирования 3D-разрешения"

msgid ""
"The clear mode when the sub-viewport is used as a render target.\n"
"[b]Note:[/b] This property is intended for 2D usage."
msgstr ""
"Режим очистки, когда в качестве цели рендеринга используется подокно "
"просмотра.\n"
"[b]Примечание:[/b] Это свойство предназначено для использования в 2D."

msgid "The update mode when the sub-viewport is used as a render target."
msgstr ""
"Режим обновления, когда в качестве цели рендеринга используется подокно "
"просмотра."

msgid ""
"The width and height of the sub-viewport. Must be set to a value greater than "
"or equal to 2 pixels on both dimensions. Otherwise, nothing will be "
"displayed.\n"
"[b]Note:[/b] If the parent node is a [SubViewportContainer] and its [member "
"SubViewportContainer.stretch] is [code]true[/code], the viewport size cannot "
"be changed manually."
msgstr ""
"Ширина и высота подокна просмотра. Должны быть установлены на значение больше "
"или равное 2 пикселям в обоих сторонах. В противном случае ничего не будет "
"отображено.\n"
"[b]Примечание:[/b] Если родительский узел — [SubViewportContainer], а его "
"[member SubViewportContainer.stretch] — [code]true[/code], размер окна "
"просмотра нельзя изменить вручную."

msgid ""
"The 2D size override of the sub-viewport. If either the width or height is "
"[code]0[/code], the override is disabled."
msgstr ""
"Переопределение размера 2D подокна просмотра. Если ширина или высота равна "
"[code]0[/code], переопределение отключено."

msgid "If [code]true[/code], the 2D size override affects stretch as well."
msgstr ""
"Если [code]true[/code], переопределение размера 2D также влияет на растяжение."

msgid "Always clear the render target before drawing."
msgstr "Всегда очищайте цель рендеринга перед рисованием."

msgid "Never clear the render target."
msgstr "Никогда не очищайте цель рендеринга."

msgid ""
"Clear the render target on the next frame, then switch to [constant "
"CLEAR_MODE_NEVER]."
msgstr ""
"Очистите цель рендеринга на следующем кадре, затем переключитесь на [constant "
"CLEAR_MODE_NEVER]."

msgid "Do not update the render target."
msgstr "Не обновляйте цель рендеринга."

msgid ""
"Update the render target once, then switch to [constant UPDATE_DISABLED]."
msgstr ""
"Обновите цель рендеринга один раз, затем переключитесь на [constant "
"UPDATE_DISABLED]."

msgid ""
"Update the render target only when it is visible. This is the default value."
msgstr ""
"Обновлять цель рендеринга только тогда, когда он виден. Это значение по "
"умолчанию."

msgid "Update the render target only when its parent is visible."
msgstr ""
"Обновляйте цель рендеринга только тогда, когда его родительский объект виден."

msgid "Always update the render target."
msgstr "Всегда обновляйте цель рендеринга."

msgid "A container used for displaying the contents of a [SubViewport]."
msgstr "Контейнер, используемый для отображения содержимого [SubViewport]."

msgid ""
"A container that displays the contents of underlying [SubViewport] child "
"nodes. It uses the combined size of the [SubViewport]s as minimum size, "
"unless [member stretch] is enabled.\n"
"[b]Note:[/b] Changing a [SubViewportContainer]'s [member Control.scale] will "
"cause its contents to appear distorted. To change its visual size without "
"causing distortion, adjust the node's margins instead (if it's not already in "
"a container).\n"
"[b]Note:[/b] The [SubViewportContainer] forwards mouse-enter and mouse-exit "
"notifications to its sub-viewports."
msgstr ""
"Контейнер, отображающий содержимое базовых дочерних узлов [SubViewport]. Он "
"использует объединенный размер [SubViewport] в качестве минимального размера, "
"если только не включено [member stretch].\n"
"[b]Примечание:[/b] Изменение [member Control.scale] [SubViewportContainer] "
"приведет к искажению его содержимого. Чтобы изменить его визуальный размер "
"без искажения, вместо этого отрегулируйте поля узла (если он еще не находится "
"в контейнере).\n"
"[b]Примечание:[/b] [SubViewportContainer] пересылает уведомления о входе и "
"выходе мыши в свои подчиненные окна просмотра."

msgid ""
"Virtual method to be implemented by the user. If it returns [code]true[/"
"code], the [param event] is propagated to [SubViewport] children. Propagation "
"doesn't happen if it returns [code]false[/code]. If the function is not "
"implemented, all events are propagated to SubViewports."
msgstr ""
"Виртуальный метод, реализуемый пользователем. Если он возвращает [code]true[/"
"code], события [param event] распространяется на дочерние элементы "
"[SubViewport]. Распространение не происходит, если он возвращает [code]false[/"
"code]. Если функция не реализована, все события распространяются на "
"SubViewports."

msgid ""
"Configure, if either the [SubViewportContainer] or alternatively the "
"[Control] nodes of its [SubViewport] children should be available as targets "
"of mouse-related functionalities, like identifying the drop target in drag-"
"and-drop operations or cursor shape of hovered [Control] node.\n"
"If [code]false[/code], the [Control] nodes inside its [SubViewport] children "
"are considered as targets.\n"
"If [code]true[/code], the [SubViewportContainer] itself will be considered as "
"a target."
msgstr ""
"Настройте, должны ли [SubViewportContainer] или в качестве альтернативы, узлы "
"[Control] его дочерних элементов [SubViewport], быть доступны в качестве "
"целей для функций, связанных с мышью, таких как определение цели "
"перетаскивания в операциях перетаскивания или формы курсора наведенного узла "
"[Control].\n"
"Если [code]false[/code], то узлы [Control] внутри его дочерних элементов "
"[SubViewport] считаются целями.\n"
"Если [code]true[/code], то сам [SubViewportContainer] будет считаться целью."

msgid ""
"If [code]true[/code], the sub-viewport will be automatically resized to the "
"control's size.\n"
"[b]Note:[/b] If [code]true[/code], this will prohibit changing [member "
"SubViewport.size] of its children manually."
msgstr ""
"Если [code]true[/code], размер sub-viewport будет автоматически изменен до "
"размера элемента управления.\n"
"[b]Примечание:[/b] Если [code]true[/code], это запретит изменять [member "
"SubViewport.size] его дочерних элементов вручную."

msgid ""
"Divides the sub-viewport's effective resolution by this value while "
"preserving its scale. This can be used to speed up rendering.\n"
"For example, a 1280×720 sub-viewport with [member stretch_shrink] set to "
"[code]2[/code] will be rendered at 640×360 while occupying the same size in "
"the container.\n"
"[b]Note:[/b] [member stretch] must be [code]true[/code] for this property to "
"work."
msgstr ""
"Делит эффективное разрешение sub-viewport на это значение, сохраняя его "
"масштаб. Это можно использовать для ускорения рендеринга.\n"
"Например, подокно просмотра 1280×720 с [member stretch_shrink], установленным "
"на [code]2[/code], будет отображаться с разрешением 640×360, занимая тот же "
"размер в контейнере.\n"
"[b]Примечание:[/b] [member stretch] должно быть [code]true[/code], чтобы это "
"свойство работало."

msgid "Helper tool to create geometry."
msgstr "Вспомогательный инструмент для создания геометрии."

msgid ""
"The [SurfaceTool] is used to construct a [Mesh] by specifying vertex "
"attributes individually. It can be used to construct a [Mesh] from a script. "
"All properties except indices need to be added before calling [method "
"add_vertex]. For example, to add vertex colors and UVs:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var st = SurfaceTool.new()\n"
"st.begin(Mesh.PRIMITIVE_TRIANGLES)\n"
"st.set_color(Color(1, 0, 0))\n"
"st.set_uv(Vector2(0, 0))\n"
"st.add_vertex(Vector3(0, 0, 0))\n"
"[/gdscript]\n"
"[csharp]\n"
"var st = new SurfaceTool();\n"
"st.Begin(Mesh.PrimitiveType.Triangles);\n"
"st.SetColor(new Color(1, 0, 0));\n"
"st.SetUV(new Vector2(0, 0));\n"
"st.AddVertex(new Vector3(0, 0, 0));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The above [SurfaceTool] now contains one vertex of a triangle which has a UV "
"coordinate and a specified [Color]. If another vertex were added without "
"calling [method set_uv] or [method set_color], then the last values would be "
"used.\n"
"Vertex attributes must be passed [b]before[/b] calling [method add_vertex]. "
"Failure to do so will result in an error when committing the vertex "
"information to a mesh.\n"
"Additionally, the attributes used before the first vertex is added determine "
"the format of the mesh. For example, if you only add UVs to the first vertex, "
"you cannot add color to any of the subsequent vertices.\n"
"See also [ArrayMesh], [ImmediateMesh] and [MeshDataTool] for procedural "
"geometry generation.\n"
"[b]Note:[/b] Godot uses clockwise [url=https://learnopengl.com/Advanced-"
"OpenGL/Face-culling]winding order[/url] for front faces of triangle primitive "
"modes."
msgstr ""
"[SurfaceTool] используется для построения [Mesh] путем указания атрибутов "
"вершин по отдельности. Его можно использовать для построения [Mesh] из "
"скрипта. Все свойства, кроме индексов, необходимо добавить до вызова [method "
"add_vertex]. Например, чтобы добавить цвета вершин и UV:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var st = SurfaceTool.new()\n"
"st.begin(Mesh.PRIMITIVE_TRIANGLES)\n"
"st.set_color(Color(1, 0, 0))\n"
"st.set_uv(Vector2(0, 0))\n"
"st.add_vertex(Vector3(0, 0, 0))\n"
"[/gdscript]\n"
"[csharp]\n"
"var st = new SurfaceTool();\n"
"st.Begin(Mesh.PrimitiveType.Triangles);\n"
"st.SetColor(new Color(1, 0, 0));\n"
"st.SetUV(new Vector2(0, 0));\n"
"st.AddVertex(new Vector3(0, 0, 0));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Вышеуказанный [SurfaceTool] теперь содержит одну вершину треугольника, "
"которая имеет координату UV и указанный [Color]. Если бы была добавлена "
"другая вершина без вызова [method set_uv] или [method set_color], то "
"использовались бы последние значения.\n"
"Атрибуты вершины должны быть переданы [b]перед[/b] вызовом [method "
"add_vertex]. Невыполнение этого требования приведет к ошибке при фиксации "
"информации о вершине в сетке.\n"
"Кроме того, атрибуты, используемые до добавления первой вершины, определяют "
"формат сетки. Например, если вы добавляете UV только к первой вершине, вы не "
"можете добавить цвет ни к одной из последующих вершин.\n"
"См. также [ArrayMesh], [ImmediateMesh] и [MeshDataTool] для процедурной "
"генерации геометрии.\n"
"[b]Примечание:[/b] Годо использует [url=https://learnopengl.com/Advanced-"
"OpenGL/Face-culling]порядок намотки[/url] по часовой стрелке для передних "
"граней примитивных режимов треугольника."

msgid "Using the SurfaceTool"
msgstr "Использование SurfaceTool"

msgid ""
"Adds a vertex to index array if you are using indexed vertices. Does not need "
"to be called before adding vertices."
msgstr ""
"Добавляет вершину в индексный массив, если вы используете индексированные "
"вершины. Не нужно вызывать перед добавлением вершин."

msgid ""
"Inserts a triangle fan made of array data into [Mesh] being constructed.\n"
"Requires the primitive type be set to [constant Mesh.PRIMITIVE_TRIANGLES]."
msgstr ""
"Вставляет треугольный веер, созданный из массива данных, в создаваемую "
"[Mesh].\n"
"Требует, чтобы тип примитива был установлен на [constant "
"Mesh.PRIMITIVE_TRIANGLES]."

msgid ""
"Specifies the position of current vertex. Should be called after specifying "
"other vertex properties (e.g. Color, UV)."
msgstr ""
"Указывает положение текущей вершины. Следует вызывать после указания других "
"свойств вершины (например, цвета, UV)."

msgid ""
"Append vertices from a given [Mesh] surface onto the current vertex array "
"with specified [Transform3D]."
msgstr ""
"Добавить вершины из заданной поверхности [Mesh] в текущий массив вершин с "
"указанным [Transform3D]."

msgid ""
"Called before adding any vertices. Takes the primitive type as an argument "
"(e.g. [constant Mesh.PRIMITIVE_TRIANGLES])."
msgstr ""
"Вызывается перед добавлением вершин. Принимает примитивный тип в качестве "
"аргумента (например, [constant Mesh.PRIMITIVE_TRIANGLES])."

msgid "Clear all information passed into the surface tool so far."
msgstr "Очистите всю информацию, переданную на данный момент в surface tool."

msgid ""
"Returns a constructed [ArrayMesh] from current information passed in. If an "
"existing [ArrayMesh] is passed in as an argument, will add an extra surface "
"to the existing [ArrayMesh].\n"
"The [param flags] argument can be the bitwise OR of [constant "
"Mesh.ARRAY_FLAG_USE_DYNAMIC_UPDATE], [constant "
"Mesh.ARRAY_FLAG_USE_8_BONE_WEIGHTS], or [constant "
"Mesh.ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY]."
msgstr ""
"Возвращает сконструированный [ArrayMesh] из текущей переданной информации. "
"Если существующая [ArrayMesh] передана в качестве аргумента, добавит "
"дополнительную поверхность к существующей [ArrayMesh].\n"
"Аргумент [param flags] может быть побитовым ИЛИ [constant "
"Mesh.ARRAY_FLAG_USE_DYNAMIC_UPDATE], [constant "
"Mesh.ARRAY_FLAG_USE_8_BONE_WEIGHTS] или [constant "
"Mesh.ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY]."

msgid ""
"Commits the data to the same format used by [method "
"ArrayMesh.add_surface_from_arrays], [method ImporterMesh.add_surface], and "
"[method create_from_arrays]. This way you can further process the mesh data "
"using the [ArrayMesh] or [ImporterMesh] APIs."
msgstr ""
"Фиксирует данные в том же формате, который используется [method "
"ArrayMesh.add_surface_from_arrays], [method ImporterMesh.add_surface] и "
"[method create_from_arrays]. Таким образом, вы можете дополнительно "
"обрабатывать данные сетки с помощью API [ArrayMesh] или [ImporterMesh]."

msgid "Creates a vertex array from an existing [Mesh]."
msgstr "Создает массив вершин из существующего [Mesh]'а."

msgid ""
"Creates this SurfaceTool from existing vertex arrays such as returned by "
"[method commit_to_arrays], [method Mesh.surface_get_arrays], [method "
"Mesh.surface_get_blend_shape_arrays], [method "
"ImporterMesh.get_surface_arrays], and [method "
"ImporterMesh.get_surface_blend_shape_arrays]. [param primitive_type] controls "
"the type of mesh data, defaulting to [constant Mesh.PRIMITIVE_TRIANGLES]."
msgstr ""
"Создает этот SurfaceTool из существующих массивов вершин, таких как "
"возвращаемые [method commit_to_arrays], [method Mesh.surface_get_arrays], "
"[method Mesh.surface_get_blend_shape_arrays], [method "
"ImporterMesh.get_surface_arrays] и [method "
"ImporterMesh.get_surface_blend_shape_arrays]. [param primitive_type] "
"управляет типом данных сетки, по умолчанию равным [constant "
"Mesh.PRIMITIVE_TRIANGLES]."

msgid ""
"Creates a vertex array from the specified blend shape of an existing [Mesh]. "
"This can be used to extract a specific pose from a blend shape."
msgstr ""
"Создает массив вершин из указанной формы смешивания (blend shape) "
"существующей в [Mesh]. Это может быть использовано для извлечения "
"определенной позы из формы смешивания."

msgid "Removes the index array by expanding the vertex array."
msgstr "Удаляет массив индексов путем расширения массива вершин."

msgid ""
"This method is unused internally, as it does not preserve normals or UVs. "
"Consider using [method ImporterMesh.generate_lods] instead."
msgstr ""
"Этот метод не используется внутренне, так как он не сохраняет нормали или UV. "
"Рассмотрите возможность использования [method ImporterMesh.generate_lods] "
"вместо этого."

msgid ""
"Generates an LOD for a given [param nd_threshold] in linear units (square "
"root of quadric error metric), using at most [param target_index_count] "
"indices."
msgstr ""
"Генерирует LOD для заданного [param nd_threshold] в линейных единицах "
"(квадратный корень квадратичной метрики ошибки), используя не более [param "
"target_index_count] индексов."

msgid ""
"Generates normals from vertices so you do not have to do it manually. If "
"[param flip] is [code]true[/code], the resulting normals will be inverted. "
"[method generate_normals] should be called [i]after[/i] generating geometry "
"and [i]before[/i] committing the mesh using [method commit] or [method "
"commit_to_arrays]. For correct display of normal-mapped surfaces, you will "
"also have to generate tangents using [method generate_tangents].\n"
"[b]Note:[/b] [method generate_normals] only works if the primitive type is "
"set to [constant Mesh.PRIMITIVE_TRIANGLES].\n"
"[b]Note:[/b] [method generate_normals] takes smooth groups into account. To "
"generate smooth normals, set the smooth group to a value greater than or "
"equal to [code]0[/code] using [method set_smooth_group] or leave the smooth "
"group at the default of [code]0[/code]. To generate flat normals, set the "
"smooth group to [code]-1[/code] using [method set_smooth_group] prior to "
"adding vertices."
msgstr ""
"Генерирует нормали из вершин, поэтому вам не придется делать это вручную. "
"Если [param flip] равен [code]true[/code], результирующие нормали будут "
"инвертированы. [method generate_normals] следует вызывать [i]после[/i] "
"генерации геометрии и [i]до[/i] фиксации сетки с помощью [method commit] или "
"[method commit_to_arrays]. Для корректного отображения поверхностей с "
"отображением нормалей вам также придется генерировать касательные с помощью "
"[method generate_tangents].\n"
"[b]Примечание:[/b] [method generate_normals] работает только в том случае, "
"если тип примитива установлен на [constant Mesh.PRIMITIVE_TRIANGLES].\n"
"[b]Примечание:[/b] [method generate_normals] учитывает группы сглаживания. "
"Для генерации гладких нормалей установите для гладкой группы значение большее "
"или равное [code]0[/code] с помощью [method set_smooth_group] или оставьте "
"для гладкой группы значение по умолчанию [code]0[/code]. Для генерации "
"плоских нормалей установите для гладкой группы значение [code]-1[/code] с "
"помощью [method set_smooth_group] перед добавлением вершин."

msgid ""
"Generates a tangent vector for each vertex. Requires that each vertex already "
"has UVs and normals set (see [method generate_normals])."
msgstr ""
"Генерирует касательный вектор для каждой вершины. Требует, чтобы каждая "
"вершина уже имела UV и нормали (см. [method generate_normals])."

msgid "Returns the axis-aligned bounding box of the vertex positions."
msgstr ""
"Возвращает выровненный по осям ограничивающий прямоугольник позиций вершин."

msgid ""
"Returns the format for custom [param channel_index] (currently up to 4). "
"Returns [constant CUSTOM_MAX] if this custom channel is unused."
msgstr ""
"Возвращает формат для пользовательского [param channel_index] (в настоящее "
"время до 4). Возвращает [constant CUSTOM_MAX], если этот пользовательский "
"канал не используется."

msgid ""
"Returns the type of mesh geometry, such as [constant "
"Mesh.PRIMITIVE_TRIANGLES]."
msgstr ""
"Возвращает тип геометрии сетки, например [constant Mesh.PRIMITIVE_TRIANGLES]."

msgid ""
"By default, returns [constant SKIN_4_WEIGHTS] to indicate only 4 bone "
"influences per vertex are used.\n"
"Returns [constant SKIN_8_WEIGHTS] if up to 8 influences are used.\n"
"[b]Note:[/b] This function returns an enum, not the exact number of weights."
msgstr ""
"По умолчанию возвращает [constant SKIN_4_WEIGHTS], чтобы указать, что "
"используются только 4 влияния костей на вершину.\n"
"Возвращает [constant SKIN_8_WEIGHTS], если используется до 8 влияний.\n"
"[b]Примечание:[/b] Эта функция возвращает перечисление, а не точное "
"количество весов."

msgid ""
"Shrinks the vertex array by creating an index array. This can improve "
"performance by avoiding vertex reuse."
msgstr ""
"Сжимает массив вершин, создавая массив индексов. Это может повысить "
"производительность, избегая повторного использования вершин."

msgid ""
"Optimizes triangle sorting for performance. Requires that [method "
"get_primitive_type] is [constant Mesh.PRIMITIVE_TRIANGLES]."
msgstr ""
"Оптимизирует сортировку треугольников для производительности. Требует, чтобы "
"[method get_primitive_type] был [constant Mesh.PRIMITIVE_TRIANGLES]."

msgid ""
"Specifies an array of bones to use for the [i]next[/i] vertex. [param bones] "
"must contain 4 integers."
msgstr ""
"Указывает массив костей, которые будут использоваться для [i]следующей[/i] "
"вершины. [param bones] должен содержать 4 целых числа."

msgid ""
"Specifies a [Color] to use for the [i]next[/i] vertex. If every vertex needs "
"to have this information set and you fail to submit it for the first vertex, "
"this information may not be used at all.\n"
"[b]Note:[/b] The material must have [member "
"BaseMaterial3D.vertex_color_use_as_albedo] enabled for the vertex color to be "
"visible."
msgstr ""
"Указывает [Color], который будет использоваться для [i]следующей[/i] вершины. "
"Если для каждой вершины необходимо задать эту информацию, а вы не "
"предоставите ее для первой вершины, эта информация может вообще не "
"использоваться.\n"
"[b]Примечание:[/b] Материал должен иметь включенный [member "
"BaseMaterial3D.vertex_color_use_as_albedo], чтобы цвет вершины был виден."

msgid ""
"Sets the custom value on this vertex for [param channel_index].\n"
"[method set_custom_format] must be called first for this [param "
"channel_index]. Formats which are not RGBA will ignore other color channels."
msgstr ""
"Устанавливает пользовательское значение для этой вершины для [param "
"channel_index].\n"
"[method set_custom_format] должен быть вызван первым для этого [param "
"channel_index]. Форматы, которые не являются RGBA, будут игнорировать другие "
"цветовые каналы."

msgid ""
"Sets the color format for this custom [param channel_index]. Use [constant "
"CUSTOM_MAX] to disable.\n"
"Must be invoked after [method begin] and should be set before [method commit] "
"or [method commit_to_arrays]."
msgstr ""
"Устанавливает формат цвета для этого пользовательского [param channel_index]. "
"Используйте [constant CUSTOM_MAX] для отключения.\n"
"Должен вызываться после [method begin] и должен быть установлен до [method "
"commit] или [method commit_to_arrays]."

msgid "Sets [Material] to be used by the [Mesh] you are constructing."
msgstr ""
"Устанавливает [Material], который будет использоваться в создаваемом вами "
"[Mesh]'е."

msgid ""
"Specifies a normal to use for the [i]next[/i] vertex. If every vertex needs "
"to have this information set and you fail to submit it for the first vertex, "
"this information may not be used at all."
msgstr ""
"Указывает нормаль для использования для [i]следующей[/i] вершины. Если для "
"каждой вершины необходимо установить эту информацию, а вы не предоставили ее "
"для первой вершины, эта информация может вообще не использоваться."

msgid ""
"Set to [constant SKIN_8_WEIGHTS] to indicate that up to 8 bone influences per "
"vertex may be used.\n"
"By default, only 4 bone influences are used ([constant SKIN_4_WEIGHTS]).\n"
"[b]Note:[/b] This function takes an enum, not the exact number of weights."
msgstr ""
"Установите [constant SKIN_8_WEIGHTS], чтобы указать, что можно использовать "
"до 8 влияний костей на вершину.\n"
"По умолчанию используются только 4 влияния костей ([constant "
"SKIN_4_WEIGHTS]).\n"
"[b]Примечание:[/b] Эта функция принимает перечисление, а не точное количество "
"весов."

msgid ""
"Specifies the smooth group to use for the [i]next[/i] vertex. If this is "
"never called, all vertices will have the default smooth group of [code]0[/"
"code] and will be smoothed with adjacent vertices of the same group. To "
"produce a mesh with flat normals, set the smooth group to [code]-1[/code].\n"
"[b]Note:[/b] This function actually takes a [code]uint32_t[/code], so C# "
"users should use [code]uint32.MaxValue[/code] instead of [code]-1[/code] to "
"produce a mesh with flat normals."
msgstr ""
"Указывает группу сглаживания, используемую для [i]следующей[/i] вершины. Если "
"эта функция никогда не вызывается, все вершины будут иметь группу сглаживания "
"по умолчанию [code]0[/code] и будут сглажены с соседними вершинами той же "
"группы. Чтобы создать сетку с плоскими нормалями, установите группу "
"сглаживания на [code]-1[/code].\n"
"[b]Примечание:[/b] Эта функция на самом деле принимает [code]uint32_t[/code], "
"поэтому пользователи C# должны использовать [code]uint32.MaxValue[/code] "
"вместо [code]-1[/code] для создания сетки с плоскими нормалями."

msgid ""
"Specifies a tangent to use for the [i]next[/i] vertex. If every vertex needs "
"to have this information set and you fail to submit it for the first vertex, "
"this information may not be used at all."
msgstr ""
"Указывает касательную для использования для [i]следующей[/i] вершины. Если "
"для каждой вершины необходимо установить эту информацию, а вы не предоставили "
"ее для первой вершины, эта информация может вообще не использоваться."

msgid ""
"Specifies a set of UV coordinates to use for the [i]next[/i] vertex. If every "
"vertex needs to have this information set and you fail to submit it for the "
"first vertex, this information may not be used at all."
msgstr ""
"Указывает набор UV-координат для использования в [i]следующей[/i] вершине. "
"Если для каждой вершины необходимо установить эту информацию, а вы не "
"предоставили ее для первой вершины, эта информация может вообще не "
"использоваться."

msgid ""
"Specifies an optional second set of UV coordinates to use for the [i]next[/i] "
"vertex. If every vertex needs to have this information set and you fail to "
"submit it for the first vertex, this information may not be used at all."
msgstr ""
"Указывает необязательный второй набор UV-координат для использования для "
"[i]следующей[/i] вершины. Если для каждой вершины необходимо установить эту "
"информацию, а вы не предоставили ее для первой вершины, эта информация может "
"вообще не использоваться."

msgid ""
"Specifies weight values to use for the [i]next[/i] vertex. [param weights] "
"must contain 4 values. If every vertex needs to have this information set and "
"you fail to submit it for the first vertex, this information may not be used "
"at all."
msgstr ""
"Указывает значения веса для использования для [i]следующей[/i] вершины. "
"[param weights] должен содержать 4 значения. Если для каждой вершины "
"необходимо установить эту информацию, а вы не предоставили ее для первой "
"вершины, эта информация может вообще не использоваться."

msgid ""
"Limits range of data passed to [method set_custom] to unsigned normalized 0 "
"to 1 stored in 8 bits per channel. See [constant "
"Mesh.ARRAY_CUSTOM_RGBA8_UNORM]."
msgstr ""
"Ограничивает диапазон данных, передаваемых в [method set_custom], "
"беззнаковыми нормализованными значениями от 0 до 1, хранящимися в 8 битах на "
"канал. См. [constant Mesh.ARRAY_CUSTOM_RGBA8_UNORM]."

msgid ""
"Limits range of data passed to [method set_custom] to signed normalized -1 to "
"1 stored in 8 bits per channel. See [constant Mesh.ARRAY_CUSTOM_RGBA8_SNORM]."
msgstr ""
"Ограничивает диапазон данных, передаваемых в [method set_custom], до "
"нормализованных со знаком от -1 до 1, хранящихся в 8 битах на канал. См. "
"[constant Mesh.ARRAY_CUSTOM_RGBA8_SNORM]."

msgid ""
"Stores data passed to [method set_custom] as half precision floats, and uses "
"only red and green color channels. See [constant Mesh.ARRAY_CUSTOM_RG_HALF]."
msgstr ""
"Сохраняет данные, переданные в [method set_custom], как числа с плавающей "
"точкой половинной точности (half precision float) и использует только каналы "
"красного и зеленого цветов. См. [constant Mesh.ARRAY_CUSTOM_RG_HALF]."

msgid ""
"Stores data passed to [method set_custom] as half precision floats and uses "
"all color channels. See [constant Mesh.ARRAY_CUSTOM_RGBA_HALF]."
msgstr ""
"Сохраняет данные, переданные в [method set_custom], как числа с плавающей "
"точкой половинной точности (half precision float) и использует все цветовые "
"каналы. См. [constant Mesh.ARRAY_CUSTOM_RGBA_HALF]."

msgid ""
"Stores data passed to [method set_custom] as full precision floats, and uses "
"only red color channel. See [constant Mesh.ARRAY_CUSTOM_R_FLOAT]."
msgstr ""
"Сохраняет данные, переданные в [method set_custom], как числа с плавающей "
"точкой полной точности (full precision float) и использует только красный "
"цветовой канал. См. [constant Mesh.ARRAY_CUSTOM_R_FLOAT]."

msgid ""
"Stores data passed to [method set_custom] as full precision floats, and uses "
"only red and green color channels. See [constant Mesh.ARRAY_CUSTOM_RG_FLOAT]."
msgstr ""
"Сохраняет данные, переданные в [method set_custom], как числа с плавающей "
"точкой полной точности (full precision float) и использует только каналы "
"красного и зеленого цветов. См. [constant Mesh.ARRAY_CUSTOM_RG_FLOAT]."

msgid ""
"Stores data passed to [method set_custom] as full precision floats, and uses "
"only red, green and blue color channels. See [constant "
"Mesh.ARRAY_CUSTOM_RGB_FLOAT]."
msgstr ""
"Сохраняет данные, переданные в [method set_custom], как числа с плавающей "
"точкой полной точности (full precision float) и использует только каналы "
"красного, зеленого и синего цвета. См. [constant Mesh.ARRAY_CUSTOM_RGB_FLOAT]."

msgid ""
"Stores data passed to [method set_custom] as full precision floats, and uses "
"all color channels. See [constant Mesh.ARRAY_CUSTOM_RGBA_FLOAT]."
msgstr ""
"Сохраняет данные, переданные в [methodset_custom], как числа с плавающей "
"точкой полной точности (full precision float) и использует все цветовые "
"каналы. См. [constant Mesh.ARRAY_CUSTOM_RGBA_FLOAT]."

msgid "Used to indicate a disabled custom channel."
msgstr "Используется для обозначения отключенного пользовательского канала."

msgid "Each individual vertex can be influenced by only 4 bone weights."
msgstr "На каждую отдельную вершину могут влиять только 4 веса костей."

msgid "Each individual vertex can be influenced by up to 8 bone weights."
msgstr "На каждую отдельную вершину может влиять до 8 весов костей."

msgid ""
"Base class for syntax highlighters. Provides syntax highlighting data to a "
"[TextEdit]."
msgstr ""
"Базовый класс для подсветки синтаксиса. Предоставляет данные подсветки "
"синтаксиса в [TextEdit]."

msgid ""
"Base class for syntax highlighters. Provides syntax highlighting data to a "
"[TextEdit]. The associated [TextEdit] will call into the [SyntaxHighlighter] "
"on an as-needed basis.\n"
"[b]Note:[/b] A [SyntaxHighlighter] instance should not be used across "
"multiple [TextEdit] nodes."
msgstr ""
"Базовый класс для подсветки синтаксиса. Предоставляет данные подсветки "
"синтаксиса для [TextEdit]. Связанный [TextEdit] будет вызывать "
"[SyntaxHighlighter] по мере необходимости.\n"
"[b]Примечание:[/b] Экземпляр [SyntaxHighlighter] не следует использовать в "
"нескольких узлах [TextEdit]."

msgid "Virtual method which can be overridden to clear any local caches."
msgstr ""
"Виртуальный метод, который можно переопределить для очистки любых локальных "
"кэшей."

msgid ""
"Virtual method which can be overridden to return syntax highlighting data.\n"
"See [method get_line_syntax_highlighting] for more details."
msgstr ""
"Виртуальный метод, который можно переопределить для возврата данных подсветки "
"синтаксиса.\n"
"Подробнее см. [method get_line_syntax_highlighting]."

msgid "Virtual method which can be overridden to update any local caches."
msgstr ""
"Виртуальный метод, который можно переопределить для обновления любых "
"локальных кэшей."

msgid ""
"Clears all cached syntax highlighting data.\n"
"Then calls overridable method [method _clear_highlighting_cache]."
msgstr ""
"Очищает все кэшированные данные подсветки синтаксиса.\n"
"Затем вызывает переопределяемый метод [method _clear_highlighting_cache]."

msgid ""
"Returns the syntax highlighting data for the line at index [param line]. If "
"the line is not cached, calls [method _get_line_syntax_highlighting] first to "
"calculate the data.\n"
"Each entry is a column number containing a nested [Dictionary]. The column "
"number denotes the start of a region, the region will end if another region "
"is found, or at the end of the line. The nested [Dictionary] contains the "
"data for that region. Currently only the key [code]\"color\"[/code] is "
"supported.\n"
"[b]Example:[/b] Possible return value. This means columns [code]0[/code] to "
"[code]4[/code] should be red, and columns [code]5[/code] to the end of the "
"line should be green:\n"
"[codeblock]\n"
"{\n"
"\t0: {\n"
"\t\t\"color\": Color(1, 0, 0)\n"
"\t},\n"
"\t5: {\n"
"\t\t\"color\": Color(0, 1, 0)\n"
"\t}\n"
"}\n"
"[/codeblock]"
msgstr ""
"Возвращает данные подсветки синтаксиса для строки с индексом [param line]. "
"Если строка не кэширована, сначала вызывает [method "
"_get_line_syntax_highlighting] для вычисления данных.\n"
"Каждая запись — это номер столбца, содержащий вложенный [Dictionary]. Номер "
"столбца обозначает начало региона, регион закончится, если будет найден "
"другой регион, или конец строки. Вложенный [Dictionary] содержит данные для "
"этого региона. В настоящее время поддерживается только ключ [code]\"color\"[/"
"code].\n"
"[b]Пример:[/b] Возможное возвращаемое значение. Это означает, что столбцы "
"[code]0[/code] по [code]4[/code] должны быть красными, а столбцы [code]5[/"
"code] до конца строки должны быть зелеными:\n"
"[codeblock]\n"
"{\n"
"\t0: {\n"
"\t\t\"color\": Color(1, 0, 0)\n"
"\t},\n"
"\t5: {\n"
"\t\t\"color\": Color(0, 1, 0)\n"
"\t}\n"
"}\n"
"[/codeblock]"

msgid "Returns the associated [TextEdit] node."
msgstr "Возвращает связанный узел [TextEdit]."

msgid ""
"Clears then updates the [SyntaxHighlighter] caches. Override [method "
"_update_cache] for a callback.\n"
"[b]Note:[/b] This is called automatically when the associated [TextEdit] "
"node, updates its own cache."
msgstr ""
"Очищает, а затем обновляет кэши [SyntaxHighlighter]. Переопределяет [method "
"_update_cache] для обратного вызова.\n"
"[b]Примечание:[/b] Это вызывается автоматически, когда связанный узел "
"[TextEdit] обновляет свой собственный кэш."

msgid ""
"A font loaded from a system font. Falls back to a default theme font if not "
"implemented on the host OS."
msgstr ""
"Шрифт, загруженный из системного шрифта. Возвращается к шрифту темы по "
"умолчанию, если он не реализован в хостовой ОС."

msgid ""
"[SystemFont] loads a font from a system font with the first matching name "
"from [member font_names].\n"
"It will attempt to match font style, but it's not guaranteed.\n"
"The returned font might be part of a font collection or be a variable font "
"with OpenType \"weight\", \"width\" and/or \"italic\" features set.\n"
"You can create [FontVariation] of the system font for precise control over "
"its features.\n"
"[b]Note:[/b] This class is implemented on iOS, Linux, macOS and Windows, on "
"other platforms it will fallback to default theme font."
msgstr ""
"[SystemFont] загружает шрифт из системного шрифта с первым совпадающим именем "
"из [member font_names].\n"
"Он попытается сопоставить стиль шрифта, но это не гарантируется.\n"
"Возвращаемый шрифт может быть частью коллекции шрифтов или быть переменным "
"шрифтом с набором функций OpenType «weight», «width» и/или «italic».\n"
"Вы можете создать [FontVariation] системного шрифта для точного управления "
"его функциями.\n"
"[b]Примечание:[/b] Этот класс реализован в iOS, Linux, macOS и Windows, на "
"других платформах он будет возвращаться к шрифту темы по умолчанию."

msgid "If set to [code]true[/code], italic or oblique font is preferred."
msgstr ""
"Если установлено значение [code]true[/code], предпочтительным будет курсивный "
"или наклонный шрифт."

msgid "Array of font family names to search, first matching font found is used."
msgstr ""
"Массив названий семейств шрифтов для поиска, используется первый найденный "
"совпадающий шрифт."

msgid ""
"Preferred font stretch amount, compared to a normal width. A percentage value "
"between [code]50%[/code] and [code]200%[/code]."
msgstr ""
"Предпочтительная величина растяжения шрифта по сравнению с нормальной "
"шириной. Процентное значение между [code]50%[/code] и [code]200%[/code]."

msgid ""
"Preferred weight (boldness) of the font. A value in the [code]100...999[/"
"code] range, normal font weight is [code]400[/code], bold font weight is "
"[code]700[/code]."
msgstr ""
"Предпочтительная толщина (жирность) шрифта. Значение в диапазоне "
"[code]100...999[/code], нормальная толщина шрифта [code]400[/code], жирная "
"толщина шрифта [code]700[/code]."

msgid ""
"If set to [code]true[/code], auto-hinting is supported and preferred over "
"font built-in hinting."
msgstr ""
"Если установлено значение [code]true[/code], поддерживается автоматическая "
"подсказка (auto-hinting), которая имеет приоритет над встроенной подсказкой "
"шрифта."

msgid "Font hinting mode."
msgstr "Режим подсказки шрифтов."

msgid ""
"If set to [code]true[/code], glyphs of all sizes are rendered using single "
"multichannel signed distance field generated from the dynamic font vector "
"data."
msgstr ""
"Если установлено значение [code]true[/code], глифы всех размеров "
"визуализируются с использованием одного многоканального знакового поля "
"расстояния, созданного из динамических векторных данных шрифта."

msgid ""
"Font glyph subpixel positioning mode. Subpixel positioning provides shaper "
"text and better kerning for smaller font sizes, at the cost of memory usage "
"and font rasterization speed. Use [constant "
"TextServer.SUBPIXEL_POSITIONING_AUTO] to automatically enable it based on the "
"font size."
msgstr ""
"Режим субпиксельного позиционирования глифа шрифта. Субпиксельное "
"позиционирование обеспечивает более четкий текст и лучший кернинг для шрифтов "
"меньшего размера за счет использования памяти и скорости растеризации шрифта. "
"Используйте [constant TextServer.SUBPIXEL_POSITIONING_AUTO] для "
"автоматического включения на основе размера шрифта."

msgid "A control that provides a horizontal bar with tabs."
msgstr ""
"Элемент управления, представляющий собой горизонтальную панель с вкладками."

msgid ""
"A control that provides a horizontal bar with tabs. Similar to [TabContainer] "
"but is only in charge of drawing tabs, not interacting with children."
msgstr ""
"Элемент управления, который предоставляет горизонтальную панель с вкладками. "
"Похож на [TabContainer], но отвечает только за отрисовку вкладок, не "
"взаимодействуя с дочерними элементами."

msgid "Adds a new tab."
msgstr "Добавляет новую вкладку."

msgid "Clears all tabs."
msgstr "Очищает все вкладки."

msgid "Moves the scroll view to make the tab visible."
msgstr "Перемещает вид прокрутки, чтобы сделать вкладку видимой."

msgid ""
"Returns [code]true[/code] if the offset buttons (the ones that appear when "
"there's not enough space for all tabs) are visible."
msgstr ""
"Возвращает [code]true[/code], если кнопки смещения (те, которые появляются, "
"когда недостаточно места для всех вкладок) видны."

msgid "Returns the previously active tab index."
msgstr "Возвращает индекс предыдущей активной вкладки."

msgid ""
"Returns the icon for the right button of the tab at index [param tab_idx] or "
"[code]null[/code] if the right button has no icon."
msgstr ""
"Возвращает значок для правой кнопки вкладки с индексом [param tab_idx] или "
"[code]null[/code], если у правой кнопки нет значка."

msgid ""
"Returns the icon for the tab at index [param tab_idx] or [code]null[/code] if "
"the tab has no icon."
msgstr ""
"Возвращает значок для вкладки с индексом [param tab_idx] или [code]null[/"
"code], если у вкладки нет значка."

msgid ""
"Returns the maximum allowed width of the icon for the tab at index [param "
"tab_idx]."
msgstr ""
"Возвращает максимально допустимую ширину значка для вкладки с индексом [param "
"tab_idx]."

msgid ""
"Returns the index of the tab at local coordinates [param point]. Returns "
"[code]-1[/code] if the point is outside the control boundaries or if there's "
"no tab at the queried position."
msgstr ""
"Возвращает индекс вкладки в локальных координатах [param point]. Возвращает "
"[code]-1[/code], если точка находится за пределами границ элемента управления "
"или если в запрошенной позиции нет вкладки."

msgid "Returns tab title language code."
msgstr "Возвращает код языка заголовка вкладки."

msgid ""
"Returns the metadata value set to the tab at index [param tab_idx] using "
"[method set_tab_metadata]. If no metadata was previously set, returns "
"[code]null[/code] by default."
msgstr ""
"Возвращает значение метаданных, заданное для вкладки с индексом [param "
"tab_idx], используя [method set_tab_metadata]. Если ранее метаданные не были "
"заданы, по умолчанию возвращается [code]null[/code]."

msgid "Returns the number of hidden tabs offsetted to the left."
msgstr "Возвращает количество скрытых вкладок, смещенных влево."

msgid "Returns tab [Rect2] with local position and size."
msgstr "Возвращает [Rect2] вкладки с локальным положением и размером."

msgid "Returns tab title text base writing direction."
msgstr "Возвращает базовое направление написания текста заголовка вкладки."

msgid "Returns the title of the tab at index [param tab_idx]."
msgstr "Возвращает заголовок вкладки по индексу [param tab_idx]."

msgid "Returns the tooltip text of the tab at index [param tab_idx]."
msgstr ""
"Возвращает текст всплывающей подсказки вкладки с индексом [param tab_idx]."

msgid ""
"Returns [code]true[/code] if the tab at index [param tab_idx] is disabled."
msgstr ""
"Возвращает [code]true[/code], если вкладка с индексом [param tab_idx] "
"отключена."

msgid "Returns [code]true[/code] if the tab at index [param tab_idx] is hidden."
msgstr ""
"Возвращает [code]true[/code], если вкладка с индексом [param tab_idx] скрыта."

msgid "Moves a tab from [param from] to [param to]."
msgstr "Перемещает вкладку из [param from] в [param to]."

msgid "Removes the tab at index [param tab_idx]."
msgstr "Удаляет вкладку с индексом [param tab_idx]."

msgid ""
"Selects the first available tab with greater index than the currently "
"selected. Returns [code]true[/code] if tab selection changed."
msgstr ""
"Выбирает первую доступную вкладку с большим индексом, чем выбранная в данный "
"момент. Возвращает [code]true[/code], если выбор вкладки изменился."

msgid ""
"Selects the first available tab with lower index than the currently selected. "
"Returns [code]true[/code] if tab selection changed."
msgstr ""
"Выбирает первую доступную вкладку с индексом ниже текущего выбранного. "
"Возвращает [code]true[/code], если выбор вкладки изменился."

msgid ""
"Sets an [param icon] for the button of the tab at index [param tab_idx] "
"(located to the right, before the close button), making it visible and "
"clickable (See [signal tab_button_pressed]). Giving it a [code]null[/code] "
"value will hide the button."
msgstr ""
"Устанавливает [param icon] для кнопки вкладки с индексом [param tab_idx] "
"(расположенной справа, перед кнопкой закрытия), делая ее видимой и нажимаемой "
"(см. [signal tab_button_pressed]). Присвоение ей значения [code]null[/code] "
"скроет кнопку."

msgid ""
"If [param disabled] is [code]true[/code], disables the tab at index [param "
"tab_idx], making it non-interactable."
msgstr ""
"Если [param disabled] равен [code]true[/code], отключает вкладку с индексом "
"[param tab_idx], делая ее неинтерактивной."

msgid ""
"If [param hidden] is [code]true[/code], hides the tab at index [param "
"tab_idx], making it disappear from the tab area."
msgstr ""
"Если [param hidden] равен [code]true[/code], скрывает вкладку с индексом "
"[param tab_idx], заставляя ее исчезнуть из области вкладок."

msgid "Sets an [param icon] for the tab at index [param tab_idx]."
msgstr "Устанавливает [param icon] для вкладки с индексом [param tab_idx]."

msgid ""
"Sets the maximum allowed width of the icon for the tab at index [param "
"tab_idx]. This limit is applied on top of the default size of the icon and on "
"top of [theme_item icon_max_width]. The height is adjusted according to the "
"icon's ratio."
msgstr ""
"Устанавливает максимально допустимую ширину значка для вкладки с индексом "
"[param tab_idx]. Это ограничение применяется поверх размера значка по "
"умолчанию и поверх [theme_item icon_max_width]. Высота регулируется в "
"соответствии с соотношением значка."

msgid ""
"Sets language code of tab title used for line-breaking and text shaping "
"algorithms, if left empty current locale is used instead."
msgstr ""
"Устанавливает код языка заголовка вкладки, используемый для алгоритмов "
"переноса строк и формирования текста, если оставить пустым, вместо него будет "
"использоваться текущая локаль."

msgid ""
"Sets the metadata value for the tab at index [param tab_idx], which can be "
"retrieved later using [method get_tab_metadata]."
msgstr ""
"Устанавливает значение метаданных для вкладки с индексом [param tab_idx], "
"которое можно получить позже с помощью [method get_tab_metadata]."

msgid "Sets tab title base writing direction."
msgstr "Устанавливает направление написания заголовка вкладки."

msgid "Sets a [param title] for the tab at index [param tab_idx]."
msgstr "Устанавливает [param title] для вкладки с индексом [param tab_idx]."

msgid ""
"Sets a [param tooltip] for tab at index [param tab_idx].\n"
"[b]Note:[/b] By default, if the [param tooltip] is empty and the tab text is "
"truncated (not all characters fit into the tab), the title will be displayed "
"as a tooltip. To hide the tooltip, assign [code]\" \"[/code] as the [param "
"tooltip] text."
msgstr ""
"Устанавливает [param tooltip] для вкладки с индексом [param tab_idx].\n"
"[b]Примечание:[/b] По умолчанию, если [param tooltip] пуст и текст вкладки "
"обрезан (не все символы помещаются во вкладку), заголовок будет отображаться "
"как всплывающая подсказка. Чтобы скрыть всплывающую подсказку, назначьте "
"[code]\" \"[/code] в качестве текста [param tooltip]."

msgid ""
"If [code]true[/code], tabs overflowing this node's width will be hidden, "
"displaying two navigation buttons instead. Otherwise, this node's minimum "
"size is updated so that all tabs are visible."
msgstr ""
"Если [code]true[/code], вкладки, выходящие за пределы ширины этого узла, "
"будут скрыты, отображая вместо этого две кнопки навигации. В противном случае "
"минимальный размер этого узла обновляется так, чтобы все вкладки были видны."

msgid ""
"If [code]true[/code], middle clicking on the mouse will fire the [signal "
"tab_close_pressed] signal."
msgstr ""
"Если [code]true[/code], щелчок средней кнопкой мыши вызовет срабатывание "
"сигнала [signal tab_close_pressed]."

msgid ""
"The index of the current selected tab. A value of [code]-1[/code] means that "
"no tab is selected and can only be set when [member deselect_enabled] is "
"[code]true[/code] or if all tabs are hidden or disabled."
msgstr ""
"Индекс текущей выбранной вкладки. Значение [code]-1[/code] означает, что "
"вкладка не выбрана, и может быть установлено только тогда, когда [member "
"deselect_enabled] равно [code]true[/code] или если все вкладки скрыты или "
"отключены."

msgid ""
"If [code]true[/code], all tabs can be deselected so that no tab is selected. "
"Click on the current tab to deselect it."
msgstr ""
"Если [code]true[/code], все вкладки могут быть отменены, так что ни одна "
"вкладка не будет выбрана. Щелкните по текущей вкладке, чтобы отменить ее "
"выбор."

msgid "If [code]true[/code], tabs can be rearranged with mouse drag."
msgstr ""
"Если [code]true[/code], вкладки можно переставлять перетаскиванием мыши."

msgid ""
"Sets the maximum width which all tabs should be limited to. Unlimited if set "
"to [code]0[/code]."
msgstr ""
"Устанавливает максимальную ширину, которой должны быть ограничены все "
"вкладки. Неограниченно, если установлено значение [code]0[/code]."

msgid ""
"If [code]true[/code], the tab offset will be changed to keep the currently "
"selected tab visible."
msgstr ""
"Если [code]true[/code], смещение вкладки будет изменено, чтобы сохранить "
"видимой текущую выбранную вкладку."

msgid ""
"if [code]true[/code], the mouse's scroll wheel can be used to navigate the "
"scroll view."
msgstr ""
"если [code]true[/code], колесо прокрутки мыши можно использовать для "
"навигации по прокручиваемому виду."

msgid ""
"If [code]true[/code], enables selecting a tab with the right mouse button."
msgstr "Если [code]true[/code], позволяет выбрать вкладку правой кнопкой мыши."

msgid "The position at which tabs will be placed."
msgstr "Позиция, в которой будут размещены вкладки."

msgid "When the close button will appear on the tabs."
msgstr "Когда на вкладках появится кнопка закрытия."

msgid "The number of tabs currently in the bar."
msgstr "Количество вкладок, находящихся в данный момент на панели."

msgid ""
"[TabBar]s with the same rearrange group ID will allow dragging the tabs "
"between them. Enable drag with [member drag_to_rearrange_enabled].\n"
"Setting this to [code]-1[/code] will disable rearranging between [TabBar]s."
msgstr ""
"[TabBar] с одинаковым идентификатором группы перестановки позволят "
"перетаскивать вкладки между ними. Включите перетаскивание с помощью [member "
"drag_to_rearrange_enabled].\n"
"Установка этого значения в [code]-1[/code] отключит перестановку между "
"[TabBar]."

msgid ""
"Emitted when the active tab is rearranged via mouse drag. See [member "
"drag_to_rearrange_enabled]."
msgstr ""
"Выдается, когда активная вкладка перестраивается с помощью перетаскивания "
"мышью. См. [member drag_to_rearrange_enabled]."

msgid ""
"Emitted when a tab's right button is pressed. See [method "
"set_tab_button_icon]."
msgstr ""
"Вызывается при нажатии правой кнопки вкладки. См. [method "
"set_tab_button_icon]."

msgid "Emitted when switching to another tab."
msgstr "Возникает при переключении на другую вкладку."

msgid "Emitted when a tab is clicked, even if it is the current tab."
msgstr "Выдается при нажатии на вкладку, даже если это текущая вкладка."

msgid ""
"Emitted when a tab's close button is pressed or when middle-clicking on a "
"tab, if [member close_with_middle_mouse] is enabled.\n"
"[b]Note:[/b] Tabs are not removed automatically once the close button is "
"pressed, this behavior needs to be programmed manually. For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"$TabBar.tab_close_pressed.connect($TabBar.remove_tab)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode<TabBar>(\"TabBar\").TabClosePressed += "
"GetNode<TabBar>(\"TabBar\").RemoveTab;\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Вызывается при нажатии кнопки закрытия вкладки или при щелчке средней кнопкой "
"мыши по вкладке, если включен [member close_with_middle_mouse].\n"
"[b]Примечание:[/b] Вкладки не удаляются автоматически после нажатия кнопки "
"закрытия, это поведение необходимо запрограммировать вручную. Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"$TabBar.tab_close_pressed.connect($TabBar.remove_tab)\n"
"[/gdscript]\n"
"[csharp]\n"
"GetNode<TabBar>(\"TabBar\").TabClosePressed += "
"GetNode<TabBar>(\"TabBar\").RemoveTab;\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Emitted when a tab is hovered by the mouse."
msgstr "Выдается при наведении указателя мыши на вкладку."

msgid ""
"Emitted when a tab is right-clicked. [member select_with_rmb] must be enabled."
msgstr ""
"Вызывается при щелчке правой кнопкой мыши по вкладке. [member "
"select_with_rmb] должен быть включен."

msgid ""
"Emitted when a tab is selected via click, directional input, or script, even "
"if it is the current tab."
msgstr ""
"Испускается при выборе вкладки с помощью щелчка, направленного ввода или "
"скрипта, даже если это текущая вкладка."

msgid "Places tabs to the left."
msgstr "Размещает вкладки слева."

msgid "Places tabs in the middle."
msgstr "Размещает вкладки посередине."

msgid "Places tabs to the right."
msgstr "Размещает вкладки справа."

msgid "Represents the size of the [enum AlignmentMode] enum."
msgstr "Представляет размер перечисления [enum AlignmentMode]."

msgid "Never show the close buttons."
msgstr "Никогда не показывать кнопки закрытия."

msgid "Only show the close button on the currently active tab."
msgstr "Показывать кнопку закрытия только на активной в данный момент вкладке."

msgid "Show the close button on all tabs."
msgstr "Показывать кнопку закрытия на всех вкладках."

msgid "Represents the size of the [enum CloseButtonDisplayPolicy] enum."
msgstr "Представляет размер перечисления [enum CloseButtonDisplayPolicy]."

msgid "Modulation color for the [theme_item drop_mark] icon."
msgstr "Цвет модуляции для значка [theme_item drop_mark]."

msgid "Font color of disabled tabs."
msgstr "Цвет шрифта отключенных вкладок."

msgid ""
"Font color of the currently hovered tab. Does not apply to the selected tab."
msgstr ""
"Цвет шрифта вкладки, на которую в данный момент наведен курсор. Не "
"применяется к выбранной вкладке."

msgid "The tint of text outline of the tab name."
msgstr "Оттенок контура текста названия вкладки."

msgid "Font color of the currently selected tab."
msgstr "Цвет шрифта текущей выбранной вкладки."

msgid "Font color of the other, unselected tabs."
msgstr "Цвет шрифта остальных, невыбранных вкладок."

msgid "The horizontal separation between the elements inside tabs."
msgstr "Горизонтальное разделение между элементами внутри вкладок."

msgid ""
"The maximum allowed width of the tab's icon. This limit is applied on top of "
"the default size of the icon, but before the value set with [method "
"set_tab_icon_max_width]. The height is adjusted according to the icon's ratio."
msgstr ""
"Максимально допустимая ширина значка вкладки. Это ограничение применяется "
"поверх размера значка по умолчанию, но до значения, установленного с помощью "
"[method set_tab_icon_max_width]. Высота регулируется в соответствии с "
"соотношением значка."

msgid ""
"The size of the tab text outline.\n"
"[b]Note:[/b] If using a font with [member "
"FontFile.multichannel_signed_distance_field] enabled, its [member "
"FontFile.msdf_pixel_range] must be set to at least [i]twice[/i] the value of "
"[theme_item outline_size] for outline rendering to look correct. Otherwise, "
"the outline may appear to be cut off earlier than intended."
msgstr ""
"Размер контура текста вкладки.\n"
"[b]Примечание:[/b] При использовании шрифта с включенным [member "
"FontFile.multichannel_signed_distance_field] его [member "
"FontFile.msdf_pixel_range] должен быть установлен как минимум в [i]дважды[/i] "
"больше значения [theme_item outline_size], чтобы контур выглядел правильно. В "
"противном случае контур может оказаться обрезанным раньше, чем предполагалось."

msgid "The space between tabs in the tab bar."
msgstr "Пространство между вкладками на панели вкладок."

msgid "The font used to draw tab names."
msgstr "Шрифт, используемый для отображения названий вкладок."

msgid "Font size of the tab names."
msgstr "Размер шрифта названий вкладок."

msgid "The icon for the close button (see [member tab_close_display_policy])."
msgstr "Значок для кнопки закрытия (см. [member tab_close_display_policy])."

msgid ""
"Icon for the left arrow button that appears when there are too many tabs to "
"fit in the container width. When the button is disabled (i.e. the first tab "
"is visible), it appears semi-transparent."
msgstr ""
"Значок для кнопки со стрелкой влево, которая появляется, когда вкладок "
"слишком много, чтобы поместиться в ширину контейнера. Когда кнопка отключена "
"(т.е. видна первая вкладка), она выглядит полупрозрачной."

msgid ""
"Icon for the left arrow button that appears when there are too many tabs to "
"fit in the container width. Used when the button is being hovered with the "
"cursor."
msgstr ""
"Значок для кнопки со стрелкой влево, которая появляется, когда вкладок "
"слишком много, чтобы поместиться в ширину контейнера. Используется, когда на "
"кнопку наведен курсор."

msgid ""
"Icon shown to indicate where a dragged tab is gonna be dropped (see [member "
"drag_to_rearrange_enabled])."
msgstr ""
"Значок, показывающий, куда будет перемещена перетаскиваемая вкладка (см. "
"[member drag_to_rearrange_enabled])."

msgid ""
"Icon for the right arrow button that appears when there are too many tabs to "
"fit in the container width. When the button is disabled (i.e. the last tab is "
"visible) it appears semi-transparent."
msgstr ""
"Значок для кнопки со стрелкой вправо, которая появляется, когда вкладок "
"слишком много, чтобы вписаться в ширину контейнера. Когда кнопка отключена "
"(т.е. видна последняя вкладка), она становится полупрозрачной."

msgid ""
"Icon for the right arrow button that appears when there are too many tabs to "
"fit in the container width. Used when the button is being hovered with the "
"cursor."
msgstr ""
"Значок для кнопки со стрелкой вправо, которая появляется, когда вкладок "
"слишком много, чтобы поместиться в ширину контейнера. Используется, когда на "
"кнопку наведен курсор."

msgid ""
"Background of the tab and close buttons when they're being hovered with the "
"cursor."
msgstr "Фон вкладки и кнопок закрытия при наведении на них курсора."

msgid "Background of the tab and close buttons when it's being pressed."
msgstr "Фон вкладки и кнопки закрытия при нажатии."

msgid "The style of disabled tabs."
msgstr "Стиль отключенных вкладок."

msgid ""
"[StyleBox] used when the [TabBar] is focused. The [theme_item tab_focus] "
"[StyleBox] is displayed [i]over[/i] the base [StyleBox] of the selected tab, "
"so a partially transparent [StyleBox] should be used to ensure the base "
"[StyleBox] remains visible. A [StyleBox] that represents an outline or an "
"underline works well for this purpose. To disable the focus visual effect, "
"assign a [StyleBoxEmpty] resource. Note that disabling the focus visual "
"effect will harm keyboard/controller navigation usability, so this is not "
"recommended for accessibility reasons."
msgstr ""
"[StyleBox] используется, когда [TabBar] находится в фокусе. [theme_item "
"tab_focus] [StyleBox] отображается [i]над[/i] базовой [StyleBox] выбранной "
"вкладки, поэтому следует использовать частично прозрачный [StyleBox], чтобы "
"базовый [StyleBox] оставался видимым. [StyleBox] представляющий контур или "
"подчеркивание, хорошо подходит для этой цели. Чтобы отключить визуальный "
"эффект фокуса, назначьте ресурс [StyleBoxEmpty]. Обратите внимание, что "
"отключение визуального эффекта фокуса навредит удобству использования "
"навигации с помощью клавиатуры/контроллера, поэтому это не рекомендуется по "
"соображениям доступности."

msgid ""
"The style of the currently hovered tab. Does not apply to the selected tab.\n"
"[b]Note:[/b] This style will be drawn with the same width as [theme_item "
"tab_unselected] at minimum."
msgstr ""
"Стиль текущей наведенной вкладки. Не применяется к выбранной вкладке.\n"
"[b]Примечание:[/b] Этот стиль будет отрисован с той же шириной, что и "
"[theme_item tab_unselected] как минимум."

msgid "The style of the currently selected tab."
msgstr "Стиль текущей выбранной вкладки."

msgid "The style of the other, unselected tabs."
msgstr "Стиль остальных, невыбранных вкладок."

msgid ""
"A container that creates a tab for each child control, displaying only the "
"active tab's control."
msgstr ""
"Контейнер, который создает вкладку для каждого дочернего элемента управления, "
"отображая только элемент управления активной вкладки."

msgid ""
"Arranges child controls into a tabbed view, creating a tab for each one. The "
"active tab's corresponding control is made visible, while all other child "
"controls are hidden. Ignores non-control children.\n"
"[b]Note:[/b] The drawing of the clickable tabs is handled by this node; "
"[TabBar] is not needed."
msgstr ""
"Упорядочивает дочерние элементы управления в виде вкладок, создавая вкладку "
"для каждого из них. Соответствующий элемент управления активной вкладки "
"становится видимым, а все остальные дочерние элементы управления скрываются. "
"Игнорирует дочерние элементы, не являющиеся элементами управления.\n"
"[b]Примечание:[/b] Отрисовка вкладок, на которые можно нажимать, "
"обрабатывается этим узлом; [TabBar] не требуется."

msgid "Returns the child [Control] node located at the active tab index."
msgstr ""
"Возвращает дочерний узел [Control], расположенный по индексу активной вкладки."

msgid ""
"Returns the [Popup] node instance if one has been set already with [method "
"set_popup].\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member Window.visible] property."
msgstr ""
"Возвращает экземпляр узла [Popup], если он уже был установлен с помощью "
"[method set_popup].\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любой из "
"его дочерних элементов, используйте их свойство [member Window.visible]."

msgid ""
"Returns the [TabBar] contained in this container.\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it or "
"editing its tabs may cause a crash. If you wish to edit the tabs, use the "
"methods provided in [TabContainer]."
msgstr ""
"Возвращает [TabBar], содержащийся в этом контейнере.\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение или редактирование его вкладок может привести к сбою. Если вы "
"хотите редактировать вкладки, используйте методы, предоставленные в "
"[TabContainer]."

msgid "Returns the button icon from the tab at index [param tab_idx]."
msgstr "Возвращает значок кнопки из вкладки с индексом [param tab_idx]."

msgid "Returns the [Control] node from the tab at index [param tab_idx]."
msgstr "Возвращает узел [Control] из вкладки с индексом [param tab_idx]."

msgid "Returns the number of tabs."
msgstr "Возвращает количество вкладок."

msgid ""
"Returns the [Texture2D] for the tab at index [param tab_idx] or [code]null[/"
"code] if the tab has no [Texture2D]."
msgstr ""
"Возвращает [Texture2D] для вкладки с индексом [param tab_idx] или [code]null[/"
"code], если у вкладки нет [Texture2D]."

msgid ""
"Returns the index of the tab tied to the given [param control]. The control "
"must be a child of the [TabContainer]."
msgstr ""
"Возвращает индекс вкладки, привязанной к заданному [param control]. Элемент "
"управления должен быть дочерним для [TabContainer]."

msgid ""
"Returns the title of the tab at index [param tab_idx]. Tab titles default to "
"the name of the indexed child node, but this can be overridden with [method "
"set_tab_title]."
msgstr ""
"Возвращает заголовок вкладки по индексу [param tab_idx]. Заголовки вкладок по "
"умолчанию соответствуют имени индексированного дочернего узла, но это можно "
"переопределить с помощью [method set_tab_title]."

msgid ""
"If set on a [Popup] node instance, a popup menu icon appears in the top-right "
"corner of the [TabContainer] (setting it to [code]null[/code] will make it go "
"away). Clicking it will expand the [Popup] node."
msgstr ""
"Если установлено на экземпляре узла [Popup], в правом верхнем углу "
"[TabContainer] появляется значок всплывающего меню (установка его на "
"[code]null[/code] заставит его исчезнуть). Щелчок по нему развернет узел "
"[Popup]."

msgid "Sets the button icon from the tab at index [param tab_idx]."
msgstr "Устанавливает значок кнопки из вкладки с индексом [param tab_idx]."

msgid "Sets an icon for the tab at index [param tab_idx]."
msgstr "Устанавливает значок для вкладки с индексом [param tab_idx]."

msgid ""
"Sets a custom title for the tab at index [param tab_idx] (tab titles default "
"to the name of the indexed child node). Set it back to the child's name to "
"make the tab default to it again."
msgstr ""
"Устанавливает пользовательский заголовок для вкладки с индексом [param "
"tab_idx] (заголовки вкладок по умолчанию соответствуют имени индексированного "
"дочернего узла). Установите его обратно к имени дочернего узла, чтобы снова "
"сделать вкладку по умолчанию."

msgid ""
"Sets a custom tooltip text for tab at index [param tab_idx].\n"
"[b]Note:[/b] By default, if the [param tooltip] is empty and the tab text is "
"truncated (not all characters fit into the tab), the title will be displayed "
"as a tooltip. To hide the tooltip, assign [code]\" \"[/code] as the [param "
"tooltip] text."
msgstr ""
"Устанавливает пользовательский текст подсказки для вкладки с индексом [param "
"tab_idx].\n"
"[b]Примечание:[/b] По умолчанию, если [param tooltip] пуст и текст вкладки "
"обрезан (не все символы помещаются во вкладку), заголовок будет отображаться "
"как подсказка. Чтобы скрыть подсказку, назначьте [code]\" \"[/code] в "
"качестве текста [param tooltip]."

msgid ""
"If [code]true[/code], all tabs are drawn in front of the panel. If "
"[code]false[/code], inactive tabs are drawn behind the panel."
msgstr ""
"Если [code]true[/code], все вкладки рисуются перед панелью. Если [code]false[/"
"code], неактивные вкладки рисуются за панелью."

msgid ""
"The current tab index. When set, this index's [Control] node's [code]visible[/"
"code] property is set to [code]true[/code] and all others are set to "
"[code]false[/code].\n"
"A value of [code]-1[/code] means that no tab is selected."
msgstr ""
"Текущий индекс вкладки. При установке свойство [code]visible[/code] узла "
"[Control] этого индекса устанавливается в [code]true[/code], а все остальные "
"устанавливаются в [code]false[/code].\n"
"Значение [code]-1[/code] означает, что вкладка не выбрана."

msgid ""
"If [code]true[/code], all tabs can be deselected so that no tab is selected. "
"Click on the [member current_tab] to deselect it.\n"
"Only the tab header will be shown if no tabs are selected."
msgstr ""
"Если [code]true[/code], все вкладки можно отменить, чтобы не было выбрано ни "
"одной вкладки. Щелкните [member current_tab], чтобы отменить его выбор.\n"
"Если не выбрано ни одной вкладки, будет отображаться только заголовок вкладки."

msgid "The focus access mode for the internal [TabBar] node."
msgstr "Режим доступа к фокусу для внутреннего узла [TabBar]."

msgid "The position of the tab bar."
msgstr "Положение панели вкладок."

msgid ""
"[TabContainer]s with the same rearrange group ID will allow dragging the tabs "
"between them. Enable drag with [member drag_to_rearrange_enabled].\n"
"Setting this to [code]-1[/code] will disable rearranging between "
"[TabContainer]s."
msgstr ""
"[TabContainer] с одинаковым идентификатором группы перестановки позволят "
"перетаскивать вкладки между ними. Включите перетаскивание с помощью [member "
"drag_to_rearrange_enabled].\n"
"Установка этого значения в [code]-1[/code] отключит перестановку между "
"[TabContainer]."

msgid ""
"If [code]true[/code], tabs are visible. If [code]false[/code], tabs' content "
"and titles are hidden."
msgstr ""
"Если [code]true[/code], вкладки видны. Если [code]false[/code], содержимое и "
"заголовки вкладок скрыты."

msgid ""
"If [code]true[/code], child [Control] nodes that are hidden have their "
"minimum size take into account in the total, instead of only the currently "
"visible one."
msgstr ""
"Если [code]true[/code], то для скрытых дочерних узлов [Control] в общем "
"размере учитывается их минимальный размер, а не только текущий видимый размер."

msgid ""
"Emitted when the [TabContainer]'s [Popup] button is clicked. See [method "
"set_popup] for details."
msgstr ""
"Вызывается при нажатии кнопки [Popup] в [TabContainer]. Подробности см. в "
"[method set_popup]."

msgid "Emitted when the user clicks on the button icon on this tab."
msgstr ""
"Вызывается, когда пользователь нажимает на значок кнопки на этой вкладке."

msgid "Places the tab bar at the top."
msgstr "Размещает панель вкладок вверху."

msgid ""
"Places the tab bar at the bottom. The tab bar's [StyleBox] will be flipped "
"vertically."
msgstr ""
"Размещает панель вкладок внизу. [StyleBox] панели вкладок будет перевернут по "
"вертикали."

msgid "Represents the size of the [enum TabPosition] enum."
msgstr "Представляет размер перечисления [enum TabPosition]."

msgid "Font color of the currently hovered tab."
msgstr "Цвет шрифта вкладки, на которую в данный момент наведен курсор."

msgid ""
"The maximum allowed width of the tab's icon. This limit is applied on top of "
"the default size of the icon, but before the value set with [method "
"TabBar.set_tab_icon_max_width]. The height is adjusted according to the "
"icon's ratio."
msgstr ""
"Максимально допустимая ширина значка вкладки. Это ограничение применяется "
"поверх размера значка по умолчанию, но до значения, установленного с помощью "
"[method TabBar.set_tab_icon_max_width]. Высота регулируется в соответствии с "
"соотношением значка."

msgid "Space between tab's name and its icon."
msgstr "Пробел между названием вкладки и ее значком."

msgid ""
"The space at the left or right edges of the tab bar, accordingly with the "
"current [member tab_alignment].\n"
"The margin is ignored with [constant TabBar.ALIGNMENT_RIGHT] if the tabs are "
"clipped (see [member clip_tabs]) or a popup has been set (see [method "
"set_popup]). The margin is always ignored with [constant "
"TabBar.ALIGNMENT_CENTER]."
msgstr ""
"Пространство слева или справа от панели вкладок, в соответствии с текущим "
"[member tab_alignment].\n"
"Отступ игнорируется с [constant TabBar.ALIGNMENT_RIGHT], если вкладки "
"обрезаны (см. [member clip_tabs]) или установлено всплывающее окно (см. "
"[method set_popup]). Отступ всегда игнорируется с [constant "
"TabBar.ALIGNMENT_CENTER]."

msgid "The icon for the menu button (see [method set_popup])."
msgstr "Значок для кнопки меню (см. [method set_popup])."

msgid ""
"The icon for the menu button (see [method set_popup]) when it's being hovered "
"with the cursor."
msgstr ""
"Значок кнопки меню (см. [method set_popup]) при наведении на нее курсора."

msgid "The style for the background fill."
msgstr "Стиль заливки фона."

msgid ""
"The style of the currently hovered tab.\n"
"[b]Note:[/b] This style will be drawn with the same width as [theme_item "
"tab_unselected] at minimum."
msgstr ""
"Стиль текущей вкладки, на которую наведен курсор.\n"
"[b]Примечание:[/b] Этот стиль будет отрисован с той же шириной, что и "
"[theme_item tab_unselected] как минимум."

msgid "The style for the background fill of the [TabBar] area."
msgstr "Стиль фоновой заливки области [TabBar]."

msgid "A TCP server."
msgstr "TCP-сервер."

msgid ""
"A TCP server. Listens to connections on a port and returns a [StreamPeerTCP] "
"when it gets an incoming connection.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"TCP-сервер. Слушает соединения на порту и возвращает [StreamPeerTCP] при "
"получении входящего соединения.\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid "Returns the local port this server is listening to."
msgstr "Возвращает локальный порт, который прослушивает этот сервер."

msgid "Returns [code]true[/code] if a connection is available for taking."
msgstr "Возвращает [code]true[/code], если соединение доступно для принятия."

msgid ""
"Returns [code]true[/code] if the server is currently listening for "
"connections."
msgstr ""
"Возвращает [code]true[/code], если сервер в данный момент прослушивает "
"соединения."

msgid ""
"Listen on the [param port] binding to [param bind_address].\n"
"If [param bind_address] is set as [code]\"*\"[/code] (default), the server "
"will listen on all available addresses (both IPv4 and IPv6).\n"
"If [param bind_address] is set as [code]\"0.0.0.0\"[/code] (for IPv4) or "
"[code]\"::\"[/code] (for IPv6), the server will listen on all available "
"addresses matching that IP type.\n"
"If [param bind_address] is set to any valid address (e.g. [code]"
"\"192.168.1.101\"[/code], [code]\"::1\"[/code], etc.), the server will only "
"listen on the interface with that address (or fail if no interface with the "
"given address exists)."
msgstr ""
"Прослушивание на [param port], привязанному к [param bind_address].\n"
"Если [param bind_address] установлен как [code]\"*\"[/code] (по умолчанию), "
"сервер будет прослушивать все доступные адреса (как IPv4, так и IPv6).\n"
"Если [param bind_address] установлен как [code]\"0.0.0.0\"[/code] (для IPv4) "
"или [code]\"::\"[/code] (для IPv6), сервер будет прослушивать все доступные "
"адреса, соответствующие этому типу IP.\n"
"Если [param bind_address] установлен на любой допустимый адрес (например, "
"[code]\"192.168.1.101\"[/code], [code]\"::1\"[/code] и т. д.), сервер будет "
"прослушивать только интерфейс с этим адресом (или выдаст ошибку, если "
"интерфейса с указанным адресом не существует)."

msgid "Stops listening."
msgstr "Перестает слушать."

msgid ""
"If a connection is available, returns a StreamPeerTCP with the connection."
msgstr "Если соединение доступно, возвращает StreamPeerTCP с соединением."

msgid "A multiline text editor."
msgstr "Многострочный текстовый редактор."

msgid ""
"A multiline text editor. It also has limited facilities for editing code, "
"such as syntax highlighting support. For more advanced facilities for editing "
"code, see [CodeEdit].\n"
"While entering text, it is possible to insert special characters using "
"Unicode, OEM or Windows alt codes:\n"
"- To enter Unicode codepoints, hold [kbd]Alt[/kbd] and type the codepoint on "
"the numpad. For example, to enter the character [code]á[/code] (U+00E1), hold "
"[kbd]Alt[/kbd] and type [kbd]+E1[/kbd] on the numpad (the leading zeroes can "
"be omitted).\n"
"- To enter OEM codepoints, hold [kbd]Alt[/kbd] and type the code on the "
"numpad. For example, to enter the character [code]á[/code] (OEM 160), hold "
"[kbd]Alt[/kbd] and type [code]160[/code] on the numpad.\n"
"- To enter Windows codepoints, hold [kbd]Alt[/kbd] and type the code on the "
"numpad. For example, to enter the character [code]á[/code] (Windows 0225), "
"hold [kbd]Alt[/kbd] and type [kbd]0[/kbd], [kbd]2[/kbd], [kbd]2[/kbd], "
"[kbd]5[/kbd] on the numpad. The leading zero here must [b]not[/b] be omitted, "
"as this is how Windows codepoints are distinguished from OEM codepoints.\n"
"[b]Note:[/b] Most viewport, caret, and edit methods contain a "
"[code]caret_index[/code] argument for [member caret_multiple] support. The "
"argument should be one of the following: [code]-1[/code] for all carets, "
"[code]0[/code] for the main caret, or greater than [code]0[/code] for "
"secondary carets in the order they were created.\n"
"[b]Note:[/b] When holding down [kbd]Alt[/kbd], the vertical scroll wheel will "
"scroll 5 times as fast as it would normally do. This also works in the Godot "
"script editor."
msgstr ""
"Многострочный текстовый редактор. Он также имеет ограниченные возможности для "
"редактирования кода, такие как поддержка подсветки синтаксиса. Более "
"продвинутые возможности для редактирования кода см. в [CodeEdit].\n"
"При вводе текста можно вставлять специальные символы с использованием "
"альтернативных кодов Unicode, OEM или Windows:\n"
"- Для ввода кодовых точек Unicode удерживайте [kbd]Alt[/kbd] и введите "
"кодовую точку на цифровой клавиатуре. Например, чтобы ввести символ [code]á[/"
"code] (U+00E1), удерживайте [kbd]Alt[/kbd] и введите [kbd]+E1[/kbd] на "
"цифровой клавиатуре (начальные нули можно опустить).\n"
"- Для ввода кодовых точек OEM удерживайте [kbd]Alt[/kbd] и введите код на "
"цифровой клавиатуре. Например, чтобы ввести символ [code]á[/code] (OEM 160), "
"удерживайте [kbd]Alt[/kbd] и введите [code]160[/code] на цифровой "
"клавиатуре.\n"
"- Чтобы ввести кодовые точки Windows, удерживайте [kbd]Alt[/kbd] и введите "
"код на цифровой клавиатуре. Например, чтобы ввести символ [code]á[/code] "
"(Windows 0225), удерживайте [kbd]Alt[/kbd] и введите [kbd]0[/kbd], [kbd]2[/"
"kbd], [kbd]2[/kbd], [kbd]5[/kbd] на цифровой клавиатуре. Начальный ноль здесь "
"[b]не[/b] должен быть опущен, так как именно так кодовые точки Windows "
"отличаются от кодовых точек OEM.\n"
"[b]Примечание:[/b] Большинство методов viewport, caret и edit содержат "
"аргумент [code]caret_index[/code] для поддержки [member caret_multiple]. "
"Аргумент должен быть одним из следующих: [code]-1[/code] для всех кареток, "
"[code]0[/code] для главной каретки или больше [code]0[/code] для "
"второстепенных кареток в порядке их создания.\n"
"[b]Примечание:[/b] При удерживании [kbd]Alt[/kbd] вертикальное колесо "
"прокрутки будет прокручиваться в 5 раз быстрее, чем обычно. Это также "
"работает в редакторе скриптов Godot."

msgid ""
"Override this method to define what happens when the user presses the "
"backspace key."
msgstr ""
"Переопределите этот метод, чтобы определить, что происходит, когда "
"пользователь нажимает клавишу Backspace."

msgid ""
"Override this method to define what happens when the user performs a copy "
"operation."
msgstr ""
"Переопределите этот метод, чтобы определить, что происходит, когда "
"пользователь выполняет операцию копирования."

msgid ""
"Override this method to define what happens when the user performs a cut "
"operation."
msgstr ""
"Переопределите этот метод, чтобы определить, что происходит, когда "
"пользователь выполняет операцию вырезания."

msgid ""
"Override this method to define what happens when the user types in the "
"provided key [param unicode_char]."
msgstr ""
"Переопределите этот метод, чтобы определить, что произойдет, когда "
"пользователь введет предоставленный ключ [param unicode_char]."

msgid ""
"Override this method to define what happens when the user performs a paste "
"operation."
msgstr ""
"Переопределите этот метод, чтобы определить, что происходит, когда "
"пользователь выполняет операцию вставки."

msgid ""
"Override this method to define what happens when the user performs a paste "
"operation with middle mouse button.\n"
"[b]Note:[/b] This method is only implemented on Linux."
msgstr ""
"Переопределите этот метод, чтобы определить, что происходит, когда "
"пользователь выполняет операцию вставки с помощью средней кнопки мыши.\n"
"[b]Примечание:[/b] Этот метод реализован только в Linux."

msgid ""
"Adds a new caret at the given location. Returns the index of the new caret, "
"or [code]-1[/code] if the location is invalid."
msgstr ""
"Добавляет новый курсор в указанном месте. Возвращает индекс нового курсора "
"или [code]-1[/code], если местоположение недействительно."

msgid ""
"Adds an additional caret above or below every caret. If [param below] is "
"[code]true[/code] the new caret will be added below and above otherwise."
msgstr ""
"Добавляет дополнительный каре выше или ниже каждого каретки. Если [param "
"below] равен [code]true[/code], то новый каре будет добавлен ниже и выше в "
"противном случае."

msgid ""
"Register a new gutter to this [TextEdit]. Use [param at] to have a specific "
"gutter order. A value of [code]-1[/code] appends the gutter to the right."
msgstr ""
"Зарегистрируйте новый желоб в этом [TextEdit]. Используйте [param at], чтобы "
"задать определенный порядок желобов. Значение [code]-1[/code] добавляет желоб "
"справа."

msgid ""
"Adds a selection and a caret for the next occurrence of the current "
"selection. If there is no active selection, selects word under caret."
msgstr ""
"Добавляет выделение и курсор для следующего появления текущего выделения. "
"Если активного выделения нет, выбирает слово под курсором."

msgid "No longer necessary since methods now adjust carets themselves."
msgstr ""
"Больше нет необходимости, поскольку методы теперь сами корректируют курсоры."

msgid "Adjust the viewport so the caret is visible."
msgstr "Отрегулируйте область просмотра так, чтобы курсор был виден."

msgid ""
"Applies text from the [url=https://en.wikipedia.org/wiki/Input_method]Input "
"Method Editor[/url] (IME) to each caret and closes the IME if it is open."
msgstr ""
"Применяет текст из [url=https://en.wikipedia.org/wiki/Input_method]редактора "
"методов ввода[/url] (IME) к каждому курсору и закрывает IME, если он открыт."

msgid ""
"Called when the user presses the backspace key. Can be overridden with "
"[method _backspace]."
msgstr ""
"Вызывается, когда пользователь нажимает клавишу backspace. Может быть "
"переопределено с помощью [method _backspace]."

msgid ""
"Starts a multipart edit. All edits will be treated as one action until "
"[method end_complex_operation] is called."
msgstr ""
"Начинает многокомпонентное редактирование. Все правки будут рассматриваться "
"как одно действие, пока не будет вызван [method end_complex_operation]."

msgid ""
"Starts an edit for multiple carets. The edit must be ended with [method "
"end_multicaret_edit]. Multicaret edits can be used to edit text at multiple "
"carets and delay merging the carets until the end, so the caret indexes "
"aren't affected immediately. [method begin_multicaret_edit] and [method "
"end_multicaret_edit] can be nested, and the merge will happen at the last "
"[method end_multicaret_edit].\n"
"[codeblock]\n"
"begin_complex_operation()\n"
"begin_multicaret_edit()\n"
"for i in range(get_caret_count()):\n"
"\tif multicaret_edit_ignore_caret(i):\n"
"\t\tcontinue\n"
"\t# Logic here.\n"
"end_multicaret_edit()\n"
"end_complex_operation()\n"
"[/codeblock]"
msgstr ""
"Начинает редактирование для нескольких кареток. Редактирование должно быть "
"завершено с помощью [method end_multicaret_edit]. Редактирование с "
"несколькими каретками можно использовать для редактирования текста в "
"нескольких каретках и отложить объединение кареток до конца, чтобы индексы "
"кареток не были затронуты немедленно. [method begin_multicaret_edit] и "
"[method end_multicaret_edit] могут быть вложенными, и объединение произойдет "
"в последнем [method end_multicaret_edit].\n"
"[codeblock]\n"
"begin_complex_operation()\n"
"begin_multicaret_edit()\n"
"for i in range(get_caret_count()):\n"
"\tif multicaret_edit_ignore_caret(i):\n"
"\t\tcontinue\n"
"\t# Logic here.\n"
"end_multicaret_edit()\n"
"end_complex_operation()\n"
"[/codeblock]"

msgid ""
"Centers the viewport on the line the editing caret is at. This also resets "
"the [member scroll_horizontal] value to [code]0[/code]."
msgstr ""
"Центрирует область просмотра на строке, на которой находится курсор "
"редактирования. Это также сбрасывает значение [member scroll_horizontal] на "
"[code]0[/code]."

msgid "Performs a full reset of [TextEdit], including undo history."
msgstr "Выполняет полный сброс [TextEdit], включая историю отмен."

msgid "Clears the undo history."
msgstr "Очищает историю отмен."

msgid ""
"Collapse all carets in the given range to the [param from_line] and [param "
"from_column] position.\n"
"[param inclusive] applies to both ends.\n"
"If [method is_in_mulitcaret_edit] is [code]true[/code], carets that are "
"collapsed will be [code]true[/code] for [method "
"multicaret_edit_ignore_caret].\n"
"[method merge_overlapping_carets] will be called if any carets were collapsed."
msgstr ""
"Свернуть все каретки в указанном диапазоне в позиции [param from_line] и "
"[param from_column].\n"
"[param inclusive] применяется к обоим концам.\n"
"Если [method is_in_mulitcaret_edit] имеет значение [code]true[/code], "
"свернутые каретки будут иметь значение [code]true[/code] для [method "
"multicaret_edit_ignore_caret].\n"
"[method merge_overlapping_carets] будет вызван, если какие-либо каретки были "
"свернуты."

msgid ""
"Copies the current text selection. Can be overridden with [method _copy]."
msgstr ""
"Копирует текущее выделение текста. Может быть переопределено с помощью "
"[method _copy]."

msgid "Cut's the current selection. Can be overridden with [method _cut]."
msgstr "Cut — текущий выбор. Может быть переопределен с помощью [method _cut]."

msgid "Deletes the selected text."
msgstr "Удаляет выделенный текст."

msgid "Deselects the current selection."
msgstr "Отменяет текущий выбор."

msgid ""
"Marks the end of steps in the current action started with [method "
"start_action]."
msgstr ""
"Отмечает конец шагов в текущем действии, начатом с помощью [method "
"start_action]."

msgid ""
"Ends a multipart edit, started with [method begin_complex_operation]. If "
"called outside a complex operation, the current operation is pushed onto the "
"undo/redo stack."
msgstr ""
"Завершает многокомпонентное редактирование, начатое с помощью [method "
"begin_complex_operation]. При вызове вне сложной операции текущая операция "
"помещается в стек отмены/повтора."

msgid ""
"Ends an edit for multiple carets, that was started with [method "
"begin_multicaret_edit]. If this was the last [method end_multicaret_edit] and "
"[method merge_overlapping_carets] was called, carets will be merged."
msgstr ""
"Завершает редактирование для нескольких кареток, начатое с помощью [method "
"begin_multicaret_edit]. Если это был последний [method end_multicaret_edit] и "
"был вызван [method merge_overlapping_carets], каретки будут объединены."

msgid "Returns the column the editing caret is at."
msgstr "Возвращает столбец, в котором находится курсор редактирования."

msgid "Returns the number of carets in this [TextEdit]."
msgstr "Возвращает количество кареток в этом [TextEdit]."

msgid "Returns the caret pixel draw position."
msgstr "Возвращает позицию отрисовки пикселя курсора."

msgid ""
"Carets no longer need to be edited in any specific order. If the carets need "
"to be sorted, use [method get_sorted_carets] instead."
msgstr ""
"Каретки больше не нужно редактировать в каком-то определенном порядке. Если "
"каретки нужно сортировать, используйте вместо этого [method "
"get_sorted_carets]."

msgid ""
"Returns a list of caret indexes in their edit order, this done from bottom to "
"top. Edit order refers to the way actions such as [method "
"insert_text_at_caret] are applied."
msgstr ""
"Возвращает список индексов каретки в порядке их редактирования, это делается "
"снизу вверх. Порядок редактирования относится к способу применения таких "
"действий, как [method insert_text_at_caret]."

msgid "Returns the line the editing caret is on."
msgstr "Возвращает строку, на которой находится курсор редактирования."

msgid "Returns the wrap index the editing caret is on."
msgstr "Возвращает индекс переноса, на котором находится курсор редактирования."

msgid ""
"Returns the first column containing a non-whitespace character on the given "
"line. If there is only whitespace, returns the number of characters."
msgstr ""
"Возвращает первый столбец, содержащий непробельный символ в указанной строке. "
"Если есть только пробелы, возвращает количество символов."

msgid "Returns the first visible line."
msgstr "Возвращает первую видимую строку."

msgid "Returns the number of gutters registered."
msgstr "Возвращает количество зарегистрированных желобов."

msgid "Returns the name of the gutter at the given index."
msgstr "Возвращает имя желоба по указанному индексу."

msgid ""
"Returns the type of the gutter at the given index. Gutters can contain icons, "
"text, or custom visuals."
msgstr ""
"Возвращает тип желоба (gutter) по указанному индексу. Жёлоба могут содержать "
"значки, текст или пользовательские визуальные элементы."

msgid "Returns the width of the gutter at the given index."
msgstr "Возвращает имя желоба по указанному индексу."

msgid "Returns the [HScrollBar] used by [TextEdit]."
msgstr "Возвращает [HScrollBar], используемый [TextEdit]."

msgid ""
"Returns the indent level of the given line. This is the number of spaces and "
"tabs at the beginning of the line, with the tabs taking the tab size into "
"account (see [method get_tab_size])."
msgstr ""
"Возвращает уровень отступа указанной строки. Это количество пробелов и "
"табуляции (tabs) в начале строки, при этом табуляция учитывает размер "
"табуляции (см. [method get_tab_size])."

msgid ""
"Returns the last visible line. Use [method "
"get_last_full_visible_line_wrap_index] for the wrap index."
msgstr ""
"Возвращает последнюю видимую строку. Используйте [method "
"get_last_full_visible_line_wrap_index] для индекса переноса."

msgid "Returns the last visible wrap index of the last visible line."
msgstr "Возвращает последний видимый индекс переноса последней видимой строки."

msgid "Returns the last unhidden line in the entire [TextEdit]."
msgstr "Возвращает последнюю нескрытую строку во всем [TextEdit]."

msgid "Returns the text of a specific line."
msgstr "Возвращает текст определенной строки."

msgid ""
"Returns the custom background color of the given line. If no color is set, "
"returns [code]Color(0, 0, 0, 0)[/code]."
msgstr ""
"Возвращает пользовательский цвет фона заданной строки. Если цвет не "
"установлен, возвращает [code]Color(0, 0, 0, 0)[/code]."

msgid ""
"Returns the line and column at the given position. In the returned vector, "
"[code]x[/code] is the column and [code]y[/code] is the line.\n"
"If [param clamp_line] is [code]false[/code] and [param position] is below the "
"last line, [code]Vector2i(-1, -1)[/code] is returned.\n"
"If [param clamp_column] is [code]false[/code] and [param position] is outside "
"the column range of the line, [code]Vector2i(-1, -1)[/code] is returned."
msgstr ""
"Возвращает строку и столбец в указанной позиции. В возвращаемом векторе "
"[code]x[/code] — столбец, а [code]y[/code] — строка.\n"
"Если [param clamp_line] — [code]false[/code] и [param position] находится "
"ниже последней строки, возвращается [code]Vector2i(-1, -1)[/code].\n"
"Если [param clamp_column] — [code]false[/code] и [param position] находится "
"за пределами диапазона столбцов строки, возвращается [code]Vector2i(-1, -1)[/"
"code]."

msgid "Returns the number of lines in the text."
msgstr "Возвращает количество строк в тексте."

msgid ""
"Returns the icon currently in [param gutter] at [param line]. This only works "
"when the gutter type is [constant GUTTER_TYPE_ICON] (see [method "
"set_gutter_type])."
msgstr ""
"Возвращает значок, который в данный момент находится в [param gutter] в "
"[param line]. Это работает только в том случае, если типом gutter является "
"[constant GUTTER_TYPE_ICON] (см. [method set_gutter_type])."

msgid "Returns the color currently in [param gutter] at [param line]."
msgstr "Возвращает текущий цвет в [param gutter] в [param line]."

msgid "Returns the metadata currently in [param gutter] at [param line]."
msgstr ""
"Возвращает метаданные, которые в данный момент находятся в [param gutter] в "
"[param line]."

msgid ""
"Returns the text currently in [param gutter] at [param line]. This only works "
"when the gutter type is [constant GUTTER_TYPE_STRING] (see [method "
"set_gutter_type])."
msgstr ""
"Возвращает текст, который в данный момент находится в [param gutter] в [param "
"line]. Это работает только в том случае, если типом gutter является [constant "
"GUTTER_TYPE_STRING] (см. [method set_gutter_type])."

msgid ""
"Returns the maximum value of the line height among all lines.\n"
"[b]Note:[/b] The return value is influenced by [theme_item line_spacing] and "
"[theme_item font_size]. And it will not be less than [code]1[/code]."
msgstr ""
"Возвращает максимальное значение высоты строки среди всех строк.\n"
"[b]Примечание:[/b] На возвращаемое значение влияют [theme_item line_spacing] "
"и [theme_item font_size]. И оно не будет меньше [code]1[/code]."

msgid ""
"Returns an [Array] of line ranges where [code]x[/code] is the first line and "
"[code]y[/code] is the last line. All lines within these ranges will have a "
"caret on them or be part of a selection. Each line will only be part of one "
"line range, even if it has multiple carets on it.\n"
"If a selection's end column ([method get_selection_to_column]) is at column "
"[code]0[/code], that line will not be included. If a selection begins on the "
"line after another selection ends and [param merge_adjacent] is [code]true[/"
"code], or they begin and end on the same line, one line range will include "
"both selections."
msgstr ""
"Возвращает [Array] диапазонов строк, где [code]x[/code] — первая строка, а "
"[code]y[/code] — последняя строка. Все строки в этих диапазонах будут иметь "
"курсор или будут частью выделения. Каждая строка будет частью только одного "
"диапазона строк, даже если на ней есть несколько курсоров.\n"
"Если конечный столбец выделения ([method get_selection_to_column]) находится "
"в столбце [code]0[/code], эта строка не будет включена. Если выделение "
"начинается на строке после окончания другого выделения, а [param "
"merge_adjacent] — [code]true[/code], или они начинаются и заканчиваются на "
"одной строке, один диапазон строк будет включать оба выделения."

msgid "Returns the width in pixels of the [param wrap_index] on [param line]."
msgstr "Возвращает ширину в пикселях [param wrap_index] в [param line]."

msgid ""
"Returns line text as it is currently displayed, including IME composition "
"string."
msgstr ""
"Возвращает текст строки в том виде, в котором он отображается в данный "
"момент, включая строку состава IME."

msgid "Returns the number of times the given line is wrapped."
msgstr "Возвращает количество переносов заданной строки."

msgid ""
"Returns the wrap index of the given column on the given line. This ranges "
"from [code]0[/code] to [method get_line_wrap_count]."
msgstr ""
"Возвращает индекс переноса указанного столбца на указанной строке. Диапазон "
"значений от [code]0[/code] до [method get_line_wrap_count]."

msgid "Returns an array of [String]s representing each wrapped index."
msgstr "Возвращает массив [String]-ы, представляющий каждый обернутый индекс."

msgid "Returns the local mouse position adjusted for the text direction."
msgstr ""
"Возвращает локальное положение мыши, скорректированное с учетом направления "
"текста."

msgid ""
"Returns the [PopupMenu] of this [TextEdit]. By default, this menu is "
"displayed when right-clicking on the [TextEdit].\n"
"You can add custom menu items or remove standard ones. Make sure your IDs "
"don't conflict with the standard ones (see [enum MenuItems]). For example:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar menu = get_menu()\n"
"\t# Remove all items after \"Redo\".\n"
"\tmenu.item_count = menu.get_item_index(MENU_REDO) + 1\n"
"\t# Add custom items.\n"
"\tmenu.add_separator()\n"
"\tmenu.add_item(\"Insert Date\", MENU_MAX + 1)\n"
"\t# Connect callback.\n"
"\tmenu.id_pressed.connect(_on_item_pressed)\n"
"\n"
"func _on_item_pressed(id):\n"
"\tif id == MENU_MAX + 1:\n"
"\t\tinsert_text_at_caret(Time.get_date_string_from_system())\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar menu = GetMenu();\n"
"\t// Remove all items after \"Redo\".\n"
"\tmenu.ItemCount = menu.GetItemIndex(TextEdit.MenuItems.Redo) + 1;\n"
"\t// Add custom items.\n"
"\tmenu.AddSeparator();\n"
"\tmenu.AddItem(\"Insert Date\", TextEdit.MenuItems.Max + 1);\n"
"\t// Add event handler.\n"
"\tmenu.IdPressed += OnItemPressed;\n"
"}\n"
"\n"
"public void OnItemPressed(int id)\n"
"{\n"
"\tif (id == TextEdit.MenuItems.Max + 1)\n"
"\t{\n"
"\t\tInsertTextAtCaret(Time.GetDateStringFromSystem());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Warning:[/b] This is a required internal node, removing and freeing it may "
"cause a crash. If you wish to hide it or any of its children, use their "
"[member Window.visible] property."
msgstr ""
"Возвращает [PopupMenu] этого [TextEdit]. По умолчанию это меню отображается "
"при щелчке правой кнопкой мыши по [TextEdit].\n"
"Вы можете добавлять пользовательские пункты меню или удалять стандартные. "
"Убедитесь, что ваши идентификаторы не конфликтуют со стандартными (см. [enum "
"MenuItems]). Например:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar menu = get_menu()\n"
"\t# Удалить все элементы после \"Redo\".\n"
"\tmenu.item_count = menu.get_item_index(MENU_REDO) + 1\n"
"\t# Добавить пользовательские элементы.\n"
"\tmenu.add_separator()\n"
"\tmenu.add_item(\"Insert Date\", MENU_MAX + 1)\n"
"\t#Подключить обратный звонок.\n"
"\tmenu.id_pressed.connect(_on_item_pressed)\n"
"\n"
"func _on_item_pressed(id):\n"
"\tif id == MENU_MAX + 1:\n"
"\t\tinsert_text_at_caret(Time.get_date_string_from_system())\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar menu = GetMenu();\n"
"\t// Удалить все элементы после \"Redo\".\n"
"\tmenu.ItemCount = menu.GetItemIndex(TextEdit.MenuItems.Redo) + 1;\n"
"\t// Добавить пользовательские элементы.\n"
"\tmenu.AddSeparator();\n"
"\tmenu.AddItem(\"Insert Date\", TextEdit.MenuItems.Max + 1);\n"
"\t// Подключить обратный звонок.\n"
"\tmenu.IdPressed += OnItemPressed;\n"
"}\n"
"\n"
"public void OnItemPressed(int id)\n"
"{\n"
"\tif (id == TextEdit.MenuItems.Max + 1)\n"
"\t{\n"
"\t\tInsertTextAtCaret(Time.GetDateStringFromSystem());\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Предупреждение:[/b] Это обязательный внутренний узел, его удаление и "
"освобождение может привести к сбою. Если вы хотите скрыть его или любого из "
"его дочерних элементов, используйте их свойство [member Window.visible]."

msgid "Returns the equivalent minimap line at [param position]."
msgstr "Возвращает эквивалентную строку миникарты в [param position]."

msgid "Returns the number of lines that may be drawn on the minimap."
msgstr ""
"Возвращает количество линий, которые могут быть нарисованы на мини-карте."

msgid ""
"Returns the correct column at the end of a composite character like ❤️‍🩹 "
"(mending heart; Unicode: [code]U+2764 U+FE0F U+200D U+1FA79[/code]) which is "
"comprised of more than one Unicode code point, if the caret is at the start "
"of the composite character. Also returns the correct column with the caret at "
"mid grapheme and for non-composite characters.\n"
"[b]Note:[/b] To check at caret location use "
"[code]get_next_composite_character_column(get_caret_line(), "
"get_caret_column())[/code]"
msgstr ""
"Возвращает правильный столбец в конце составного символа, например ❤️‍🩹 "
"(исцеляющее сердце; Unicode: [code]U+2764 U+FE0F U+200D U+1FA79[/code]), "
"который состоит из более чем одной кодовой точки Unicode, если каретка "
"находится в начале составного символа. Также возвращает правильный столбец с "
"кареткой в середине графемы и для несоставных символов.\n"
"[b]Примечание:[/b] Для проверки местоположения каретки используйте "
"[code]get_next_composite_character_column(get_caret_line(), "
"get_caret_column())[/code]"

msgid ""
"Similar to [method get_next_visible_line_offset_from], but takes into account "
"the line wrap indexes. In the returned vector, [code]x[/code] is the line, "
"[code]y[/code] is the wrap index."
msgstr ""
"Аналогично [method get_next_visible_line_offset_from], но учитывает индексы "
"переноса строк. В возвращаемом векторе [code]x[/code] — строка, [code]y[/"
"code] — индекс переноса."

msgid ""
"Returns the count to the next visible line from [param line] to [code]line + "
"visible_amount[/code]. Can also count backwards. For example if a [TextEdit] "
"has 5 lines with lines 2 and 3 hidden, calling this with [code]line = 1, "
"visible_amount = 1[/code] would return 3."
msgstr ""
"Возвращает количество до следующей видимой строки от [param line] до "
"[code]line + visible_amount[/code]. Также можно вести обратный отсчет. "
"Например, если в [TextEdit] 5 строк, а строки 2 и 3 скрыты, вызов этого с "
"[code]line = 1, visible_amount = 1[/code] вернет 3."

msgid ""
"Returns the local position for the given [param line] and [param column]. If "
"[code]x[/code] or [code]y[/code] of the returned vector equal [code]-1[/"
"code], the position is outside of the viewable area of the control.\n"
"[b]Note:[/b] The Y position corresponds to the bottom side of the line. Use "
"[method get_rect_at_line_column] to get the top side position."
msgstr ""
"Возвращает локальную позицию для заданных [param line] и [param column]. Если "
"[code]x[/code] или [code]y[/code] возвращаемого вектора равны [code]-1[/"
"code], позиция находится за пределами видимой области элемента управления.\n"
"[b]Примечание:[/b] Позиция Y соответствует нижней стороне линии. Используйте "
"[method get_rect_at_line_column], чтобы получить позицию верхней стороны."

msgid ""
"Returns the correct column at the start of a composite character like ❤️‍🩹 "
"(mending heart; Unicode: [code]U+2764 U+FE0F U+200D U+1FA79[/code]) which is "
"comprised of more than one Unicode code point, if the caret is at the end of "
"the composite character. Also returns the correct column with the caret at "
"mid grapheme and for non-composite characters.\n"
"[b]Note:[/b] To check at caret location use "
"[code]get_previous_composite_character_column(get_caret_line(), "
"get_caret_column())[/code]"
msgstr ""
"Возвращает правильный столбец в начале составного символа, например ❤️‍🩹 "
"(исцеляющее сердце; Unicode: [code]U+2764 U+FE0F U+200D U+1FA79[/code]), "
"который состоит из более чем одной кодовой точки Unicode, если каретка "
"находится в конце составного символа. Также возвращает правильный столбец с "
"кареткой в середине графемы и для несоставных символов.\n"
"[b]Примечание:[/b] Для проверки местоположения каретки используйте "
"[code]get_previous_composite_character_column(get_caret_line(), "
"get_caret_column())[/code]"

msgid ""
"Returns the local position and size for the grapheme at the given [param "
"line] and [param column]. If [code]x[/code] or [code]y[/code] position of the "
"returned rect equal [code]-1[/code], the position is outside of the viewable "
"area of the control.\n"
"[b]Note:[/b] The Y position of the returned rect corresponds to the top side "
"of the line, unlike [method get_pos_at_line_column] which returns the bottom "
"side."
msgstr ""
"Возвращает локальную позицию и размер графемы в заданных [param line] и "
"[param column]. Если позиция [code]x[/code] или [code]y[/code] возвращаемого "
"прямоугольника равна [code]-1[/code], позиция находится за пределами видимой "
"области элемента управления.\n"
"[b]Примечание:[/b] Позиция Y возвращаемого прямоугольника соответствует "
"верхней стороне строки, в отличие от [method get_pos_at_line_column], который "
"возвращает нижнюю сторону."

msgid "Returns the last tagged saved version from [method tag_saved_version]."
msgstr ""
"Возвращает последнюю сохраненную версию с тегом из [method tag_saved_version]."

msgid "Returns the scroll position for [param wrap_index] of [param line]."
msgstr "Возвращает позицию прокрутки для [param wrap_index] из [param line]."

msgid ""
"Returns the text inside the selection of a caret, or all the carets if [param "
"caret_index] is its default value [code]-1[/code]."
msgstr ""
"Возвращает текст внутри выделения курсора или всех курсоров, если [param "
"caret_index] имеет значение по умолчанию [code]-1[/code]."

msgid ""
"Returns the caret index of the selection at the given [param line] and [param "
"column], or [code]-1[/code] if there is none.\n"
"If [param include_edges] is [code]false[/code], the position must be inside "
"the selection and not at either end. If [param only_selections] is "
"[code]false[/code], carets without a selection will also be considered."
msgstr ""
"Возвращает индекс каретки выделения в заданных [param line] и [param column] "
"или [code]-1[/code], если его нет.\n"
"Если [param include_edges] равно [code]false[/code], позиция должна быть "
"внутри выделения, а не на каком-либо конце. Если [param only_selections] "
"равно [code]false[/code], каретки без выделения также будут учитываться."

msgid "Use [method get_selection_origin_column] instead."
msgstr "Вместо этого используйте [method get_selection_origin_column]."

msgid "Returns the original start column of the selection."
msgstr "Возвращает исходный начальный столбец выборки."

msgid ""
"Returns the selection begin column. Returns the caret column if there is no "
"selection."
msgstr ""
"Возвращает столбец начала выделения. Возвращает столбец каретки, если "
"выделения нет."

msgid ""
"Returns the selection begin line. Returns the caret line if there is no "
"selection."
msgstr ""
"Возвращает начальную строку выделения. Возвращает строку каретки, если "
"выделения нет."

msgid "Use [method get_selection_origin_line] instead."
msgstr "Вместо этого используйте [method get_selection_origin_line]."

msgid "Returns the original start line of the selection."
msgstr "Возвращает исходную начальную строку выделения."

msgid "Returns the current selection mode."
msgstr "Возвращает текущий режим выбора."

msgid ""
"Returns the origin column of the selection. This is the opposite end from the "
"caret."
msgstr ""
"Возвращает исходный столбец выделения. Это противоположный конец от каретки."

msgid ""
"Returns the origin line of the selection. This is the opposite end from the "
"caret."
msgstr ""
"Возвращает исходную линию выделения. Это противоположный конец от каретки."

msgid ""
"Returns the selection end column. Returns the caret column if there is no "
"selection."
msgstr ""
"Возвращает конечный столбец выделения. Возвращает столбец каретки, если "
"выделения нет."

msgid ""
"Returns the selection end line. Returns the caret line if there is no "
"selection."
msgstr ""
"Возвращает конечную строку выделения. Возвращает строку каретки, если "
"выделения нет."

msgid ""
"Returns the carets sorted by selection beginning from lowest line and column "
"to highest (from top to bottom of text).\n"
"If [param include_ignored_carets] is [code]false[/code], carets from [method "
"multicaret_edit_ignore_caret] will be ignored."
msgstr ""
"Возвращает каретки, отсортированные по выбору, начиная с самой низкой строки "
"и столбца до самого высокого (сверху вниз текста).\n"
"Если [param include_ignored_carets] равен [code]false[/code], каретки из "
"[method multicaret_edit_ignore_caret] будут игнорироваться."

msgid "Returns the [TextEdit]'s' tab size."
msgstr "Возвращает размер табуляции [TextEdit]."

msgid "Returns the total width of all gutters and internal padding."
msgstr "Возвращает общую ширину всех промежутков и внутренних отступов."

msgid ""
"Returns the total number of lines in the text. This includes wrapped lines "
"and excludes folded lines. If [member wrap_mode] is set to [constant "
"LINE_WRAPPING_NONE] and no lines are folded (see [method "
"CodeEdit.is_line_folded]) then this is equivalent to [method get_line_count]. "
"See [method get_visible_line_count_in_range] for a limited range of lines."
msgstr ""
"Возвращает общее количество строк в тексте. Включает перенесенные строки и "
"исключает свернутые строки. Если [member wrap_mode] установлен в [constant "
"LINE_WRAPPING_NONE] и ни одна строка не свернута (см. [method "
"CodeEdit.is_line_folded]), то это эквивалентно [method get_line_count]. См. "
"[method get_visible_line_count_in_range] для ограниченного диапазона строк."

msgid "Returns the [VScrollBar] of the [TextEdit]."
msgstr "Возвращает [VScrollBar] для [TextEdit]."

msgid ""
"Returns the current version of the [TextEdit]. The version is a count of "
"recorded operations by the undo/redo history."
msgstr ""
"Возвращает текущую версию [TextEdit]. Версия представляет собой количество "
"записанных операций в истории отмен/повторов."

msgid ""
"Returns the number of lines that can visually fit, rounded down, based on "
"this control's height."
msgstr ""
"Возвращает количество визуально умещающихся строк, округленное в меньшую "
"сторону, на основе высоты этого элемента управления."

msgid ""
"Returns the total number of lines between [param from_line] and [param "
"to_line] (inclusive) in the text. This includes wrapped lines and excludes "
"folded lines. If the range covers all lines it is equivalent to [method "
"get_total_visible_line_count]."
msgstr ""
"Возвращает общее количество строк между [param from_line] и [param to_line] "
"(включительно) в тексте. Это включает перенесенные строки и исключает "
"свернутые строки. Если диапазон охватывает все строки, это эквивалентно "
"[method get_total_visible_line_count]."

msgid "Returns the word at [param position]."
msgstr "Возвращает слово (текст) в [param position]."

msgid "Returns a [String] text with the word under the caret's location."
msgstr "Возвращает текст [String] со словом, находящимся под курсором."

msgid "Inserts a new line with [param text] at [param line]."
msgstr "Вставляет новую строку с [param text] в [param line]."

msgid ""
"Inserts the [param text] at [param line] and [param column].\n"
"If [param before_selection_begin] is [code]true[/code], carets and selections "
"that begin at [param line] and [param column] will moved to the end of the "
"inserted text, along with all carets after it.\n"
"If [param before_selection_end] is [code]true[/code], selections that end at "
"[param line] and [param column] will be extended to the end of the inserted "
"text. These parameters can be used to insert text inside of or outside of "
"selections."
msgstr ""
"Вставляет [param text] в [param line] и [param column].\n"
"Если [param before_selection_begin] имеет значение [code]true[/code], то "
"каретки и выделения, начинающиеся с [param line] и [param column], будут "
"перемещены в конец вставленного текста вместе со всеми каретками после него.\n"
"Если [param before_selection_end] имеет значение [code]true[/code], то "
"выделения, заканчивающиеся на [param line] и [param column], будут расширены "
"до конца вставленного текста. Эти параметры можно использовать для вставки "
"текста внутри или за пределами выделений."

msgid "Insert the specified text at the caret position."
msgstr "Вставьте указанный текст в позицию курсора."

msgid ""
"Returns [code]true[/code] if the caret of the selection is after the "
"selection origin. This can be used to determine the direction of the "
"selection."
msgstr ""
"Возвращает [code]true[/code], если курсор выделения находится после начала "
"выделения. Это можно использовать для определения направления выделения."

msgid ""
"Returns [code]true[/code] if the caret is visible, [code]false[/code] "
"otherwise. A caret will be considered hidden if it is outside the scrollable "
"area when scrolling is enabled.\n"
"[b]Note:[/b] [method is_caret_visible] does not account for a caret being off-"
"screen if it is still within the scrollable area. It will return [code]true[/"
"code] even if the caret is off-screen as long as it meets [TextEdit]'s own "
"conditions for being visible. This includes uses of [member "
"scroll_fit_content_width] and [member scroll_fit_content_height] that cause "
"the [TextEdit] to expand beyond the viewport's bounds."
msgstr ""
"Возвращает [code]true[/code], если курсор виден, [code]false[/code] в "
"противном случае. Курсор будет считаться скрытым, если он находится за "
"пределами прокручиваемой области, когда прокрутка включена.\n"
"[b]Примечание:[/b] [method is_caret_visible] не учитывает, что курсор "
"находится вне экрана, если он все еще находится в прокручиваемой области. Он "
"вернет [code]true[/code], даже если курсор находится вне экрана, пока он "
"соответствует собственным условиям [TextEdit] для видимости. Это включает "
"использование [member scroll_fit_content_width] и [member "
"scroll_fit_content_height], которые заставляют [TextEdit] расширяться за "
"пределы области просмотра."

msgid ""
"Returns [code]true[/code] if the user is dragging their mouse for scrolling, "
"selecting, or text dragging."
msgstr ""
"Возвращает [code]true[/code], если пользователь перетаскивает мышь для "
"прокрутки, выбора или перетаскивания текста."

msgid ""
"Returns [code]true[/code] if the gutter at the given index is clickable. See "
"[method set_gutter_clickable]."
msgstr ""
"Возвращает [code]true[/code], если разделительная полоса по указанному "
"индексу является кликабельной. См. [method set_gutter_clickable]."

msgid ""
"Returns [code]true[/code] if the gutter at the given index is currently "
"drawn. See [method set_gutter_draw]."
msgstr ""
"Возвращает [code]true[/code], если желоб по указанному индексу в данный "
"момент отрисован. См. [method set_gutter_draw]."

msgid ""
"Returns [code]true[/code] if the gutter at the given index is overwritable. "
"See [method set_gutter_overwritable]."
msgstr ""
"Возвращает [code]true[/code], если желоб по указанному индексу "
"перезаписываемый. См. [method set_gutter_overwritable]."

msgid ""
"Returns [code]true[/code] if a [method begin_multicaret_edit] has been called "
"and [method end_multicaret_edit] has not yet been called."
msgstr ""
"Возвращает [code]true[/code], если был вызван [method begin_multicaret_edit], "
"а [method end_multicaret_edit] еще не был вызван."

msgid ""
"Returns [code]true[/code] if the gutter at the given index on the given line "
"is clickable. See [method set_line_gutter_clickable]."
msgstr ""
"Возвращает [code]true[/code], если разделительная полоса в указанном индексе "
"на указанной строке является кликабельной. См. [method "
"set_line_gutter_clickable]."

msgid "Returns if the given line is wrapped."
msgstr "Возвращает, если заданная строка перенесена."

msgid ""
"Returns [code]true[/code] if the menu is visible. Use this instead of "
"[code]get_menu().visible[/code] to improve performance (so the creation of "
"the menu is avoided). See [method get_menu]."
msgstr ""
"Возвращает [code]true[/code], если меню видимо. Используйте это вместо "
"[code]get_menu().visible[/code] для повышения производительности (чтобы "
"избежать создания меню). См. [method get_menu]."

msgid ""
"Returns [code]true[/code] if the mouse is over a selection. If [param edges] "
"is [code]true[/code], the edges are considered part of the selection."
msgstr ""
"Возвращает [code]true[/code], если мышь находится над выделением. Если [param "
"sides] равно [code]true[/code], края считаются частью выделения."

msgid ""
"Returns [code]true[/code] if overtype mode is enabled. See [method "
"set_overtype_mode_enabled]."
msgstr ""
"Возвращает [code]true[/code], если включен режим замены. См. [method "
"set_overtype_mode_enabled]."

msgid ""
"Merge the gutters from [param from_line] into [param to_line]. Only "
"overwritable gutters will be copied. See [method set_gutter_overwritable]."
msgstr ""
"Объединить желоба из [param from_line] в [param to_line]. Будут скопированы "
"только перезаписываемые желоба. См. [method set_gutter_overwritable]."

msgid ""
"Merges any overlapping carets. Will favor the newest caret, or the caret with "
"a selection.\n"
"If [method is_in_mulitcaret_edit] is [code]true[/code], the merge will be "
"queued to happen at the end of the multicaret edit. See [method "
"begin_multicaret_edit] and [method end_multicaret_edit].\n"
"[b]Note:[/b] This is not called when a caret changes position but after "
"certain actions, so it is possible to get into a state where carets overlap."
msgstr ""
"Объединяет все перекрывающиеся каретки. Отдает предпочтение самой новой "
"каретке или каретке с выделением.\n"
"Если [method is_in_mulitcaret_edit] равно [code]true[/code], объединение "
"будет поставлено в очередь на конец редактирования с несколькими каретками. "
"См. [method begin_multicaret_edit] и [method end_multicaret_edit].\n"
"[b]Примечание:[/b] Это вызывается не при изменении положения каретки, а после "
"определенных действий, поэтому возможно попасть в состояние, когда каретки "
"перекрываются."

msgid ""
"Returns [code]true[/code] if the given [param caret_index] should be ignored "
"as part of a multicaret edit. See [method begin_multicaret_edit] and [method "
"end_multicaret_edit]. Carets that should be ignored are ones that were part "
"of removed text and will likely be merged at the end of the edit, or carets "
"that were added during the edit.\n"
"It is recommended to [code]continue[/code] within a loop iterating on "
"multiple carets if a caret should be ignored."
msgstr ""
"Возвращает [code]true[/code], если заданный [param caret_index] следует "
"игнорировать как часть редактирования с несколькими каретками. См. [method "
"begin_multicaret_edit] и [method end_multicaret_edit]. Каретки, которые "
"следует игнорировать, — это те, которые были частью удаленного текста и, "
"скорее всего, будут объединены в конце редактирования, или каретки, которые "
"были добавлены во время редактирования.\n"
"Рекомендуется [code]continue[/code] в цикле, итерирующем по нескольким "
"кареткам, если каретка должна игнорироваться."

msgid "Paste at the current location. Can be overridden with [method _paste]."
msgstr ""
"Вставить в текущее местоположение. Можно переопределить с помощью [method "
"_paste]."

msgid "Pastes the primary clipboard."
msgstr "Вставляет основной буфер обмена."

msgid "Perform redo operation."
msgstr "Выполните операцию Вперёд."

msgid ""
"Removes the given caret index.\n"
"[b]Note:[/b] This can result in adjustment of all other caret indices."
msgstr ""
"Удаляет указанный индекс каретки.\n"
"[b]Примечание:[/b] Это может привести к корректировке всех остальных индексов "
"каретки."

msgid "Removes the gutter at the given index."
msgstr "Удаляет желоб по указанному индексу."

msgid ""
"Removes the line of text at [param line]. Carets on this line will attempt to "
"match their previous visual x position.\n"
"If [param move_carets_down] is [code]true[/code] carets will move to the next "
"line down, otherwise carets will move up."
msgstr ""
"Удаляет строку текста в [param line]. Каретки на этой строке будут пытаться "
"соответствовать своей предыдущей визуальной позиции x.\n"
"Если [param move_carets_down] равен [code]true[/code], каретки переместятся "
"на следующую строку вниз, в противном случае каретки переместятся вверх."

msgid "Removes all additional carets."
msgstr "Удаляет все дополнительные каретки."

msgid "Removes text between the given positions."
msgstr "Удаляет текст между указанными позициями."

msgid ""
"Perform a search inside the text. Search flags can be specified in the [enum "
"SearchFlags] enum.\n"
"In the returned vector, [code]x[/code] is the column, [code]y[/code] is the "
"line. If no results are found, both are equal to [code]-1[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var result = search(\"print\", SEARCH_WHOLE_WORDS, 0, 0)\n"
"if result.x != -1:\n"
"\t# Result found.\n"
"\tvar line_number = result.y\n"
"\tvar column_number = result.x\n"
"[/gdscript]\n"
"[csharp]\n"
"Vector2I result = Search(\"print\", (uint)TextEdit.SearchFlags.WholeWords, 0, "
"0);\n"
"if (result.X != -1)\n"
"{\n"
"\t// Result found.\n"
"\tint lineNumber = result.Y;\n"
"\tint columnNumber = result.X;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Выполнить поиск внутри текста. Флаги поиска можно указать в перечислении "
"[enum SearchFlags].\n"
"В возвращаемом векторе [code]x[/code] — столбец, [code]y[/code] — строка. "
"Если результаты не найдены, оба равны [code]-1[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var result = search(\"print\", SEARCH_WHOLE_WORDS, 0, 0)\n"
"if result.x != -1:\n"
"\t# Результат найден.\n"
"\tvar line_number = result.y\n"
"\tvar column_number = result.x\n"
"[/gdscript]\n"
"[csharp]\n"
"Vector2I result = Search(\"print\", (uint)TextEdit.SearchFlags.WholeWords, 0, "
"0);\n"
"if (result.X != -1)\n"
"{\n"
"\t// Результат найден.\n"
"\tint lineNumber = result.Y;\n"
"\tint columnNumber = result.X;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Selects text from [param origin_line] and [param origin_column] to [param "
"caret_line] and [param caret_column] for the given [param caret_index]. This "
"moves the selection origin and the caret. If the positions are the same, the "
"selection will be deselected.\n"
"If [member selecting_enabled] is [code]false[/code], no selection will "
"occur.\n"
"[b]Note:[/b] If supporting multiple carets this will not check for any "
"overlap. See [method merge_overlapping_carets]."
msgstr ""
"Выбирает текст из [param origin_line] и [param origin_column] в [param "
"caret_line] и [param caret_column] для заданного [param caret_index]. Это "
"перемещает начало выделения и каретку. Если позиции совпадают, выделение "
"будет отменено.\n"
"Если [member selection_enabled] равно [code]false[/code], выделение не "
"произойдет.\n"
"[b]Примечание:[/b] При поддержке нескольких кареток проверка на перекрытие не "
"выполняется. См. [method merge_overlapping_carets]."

msgid ""
"Select all the text.\n"
"If [member selecting_enabled] is [code]false[/code], no selection will occur."
msgstr ""
"Выделить весь текст.\n"
"Если [member selection_enabled] равно [code]false[/code], выделение не "
"произойдет."

msgid "Selects the word under the caret."
msgstr "Выделяет слово под курсором."

msgid ""
"Moves the caret to the specified [param column] index.\n"
"If [param adjust_viewport] is [code]true[/code], the viewport will center at "
"the caret position after the move occurs.\n"
"[b]Note:[/b] If supporting multiple carets this will not check for any "
"overlap. See [method merge_overlapping_carets]."
msgstr ""
"Перемещает каретку на указанный индекс [param column].\n"
"Если [param adjust_viewport] равен [code]true[/code], область просмотра будет "
"центрирована в позиции каретки после перемещения.\n"
"[b]Примечание:[/b] При поддержке нескольких кареток проверка на перекрытие не "
"выполняется. См. [method merge_overlapping_carets]."

msgid ""
"Moves the caret to the specified [param line] index. The caret column will be "
"moved to the same visual position it was at the last time [method "
"set_caret_column] was called, or clamped to the end of the line.\n"
"If [param adjust_viewport] is [code]true[/code], the viewport will center at "
"the caret position after the move occurs.\n"
"If [param can_be_hidden] is [code]true[/code], the specified [param line] can "
"be hidden.\n"
"If [param wrap_index] is [code]-1[/code], the caret column will be clamped to "
"the [param line]'s length. If [param wrap_index] is greater than [code]-1[/"
"code], the column will be moved to attempt to match the visual x position on "
"the line's [param wrap_index] to the position from the last time [method "
"set_caret_column] was called.\n"
"[b]Note:[/b] If supporting multiple carets this will not check for any "
"overlap. See [method merge_overlapping_carets]."
msgstr ""
"Перемещает курсор на указанный индекс [param line]. Столбец курсора будет "
"перемещен в ту же визуальную позицию, в которой он находился при последнем "
"вызове [method set_caret_column], или закреплен в конце строки.\n"
"Если [param adjust_viewport] имеет значение [code]true[/code], область "
"просмотра будет центрирована в позиции курсора после перемещения.\n"
"Если [param can_be_hidden] имеет значение [code]true[/code], указанная [param "
"line] может быть скрыта.\n"
"Если [param wrap_index] имеет значение [code]-1[/code], столбец курсора будет "
"закреплен по длине [param line]. Если [param wrap_index] больше [code]-1[/"
"code], столбец будет перемещен, чтобы попытаться сопоставить визуальную "
"позицию x на [param wrap_index] строки с позицией с момента последнего вызова "
"[method set_caret_column].\n"
"[b]Примечание:[/b] При поддержке нескольких кареток проверка на перекрытие не "
"производится. См. [method merge_overlapping_carets]."

msgid ""
"If [code]true[/code], the mouse cursor will change to a pointing hand "
"([constant Control.CURSOR_POINTING_HAND]) when hovering over the gutter at "
"the given index. See [method is_gutter_clickable] and [method "
"set_line_gutter_clickable]."
msgstr ""
"Если [code]true[/code], курсор мыши изменится на указывающую руку ([constant "
"Control.CURSOR_POINTING_HAND]) при наведении на желоб по указанному индексу. "
"См. [method is_gutter_clickable] и [method set_line_gutter_clickable]."

msgid ""
"Set a custom draw callback for the gutter at the given index. [param "
"draw_callback] must take the following arguments: A line index [int], a "
"gutter index [int], and an area [Rect2]. This callback only works when the "
"gutter type is [constant GUTTER_TYPE_CUSTOM] (see [method set_gutter_type])."
msgstr ""
"Установите пользовательский обратный вызов отрисовки для желоба по указанному "
"индексу. [param draw_callback] должен принимать следующие аргументы: индекс "
"линии [int], индекс желоба [int] и область [Rect2]. Этот обратный вызов "
"работает только в том случае, если тип желоба — [constant GUTTER_TYPE_CUSTOM] "
"(см. [method set_gutter_type])."

msgid ""
"If [code]true[/code], the gutter at the given index is drawn. The gutter type "
"([method set_gutter_type]) determines how it is drawn. See [method "
"is_gutter_drawn]."
msgstr ""
"Если [code]true[/code], то рисуется желоб по указанному индексу. Тип желоба "
"([method set_gutter_type]) определяет, как он рисуется. См. [method "
"is_gutter_drawn]."

msgid "Sets the name of the gutter at the given index."
msgstr "Устанавливает имя желоба по указанному индексу."

msgid ""
"If [code]true[/code], the line data of the gutter at the given index can be "
"overridden when using [method merge_gutters]. See [method "
"is_gutter_overwritable]."
msgstr ""
"Если [code]true[/code], то данные строки желоба по указанному индексу могут "
"быть переопределены при использовании [method merge_gutters]. См. [method "
"is_gutter_overwritable]."

msgid ""
"Sets the type of gutter at the given index. Gutters can contain icons, text, "
"or custom visuals."
msgstr ""
"Устанавливает тип желоба (gutter) по указанному индексу. Жёлоба могут "
"содержать значки, текст или пользовательские визуальные эффекты."

msgid "Set the width of the gutter at the given index."
msgstr "Установите ширину желоба по указанному индексу."

msgid ""
"Sets the text for a specific [param line].\n"
"Carets on the line will attempt to keep their visual x position."
msgstr ""
"Устанавливает текст для определенной [param line].\n"
"Каретки на строке будут пытаться сохранить свою визуальную позицию x."

msgid ""
"Positions the [param wrap_index] of [param line] at the center of the "
"viewport."
msgstr ""
"Размещает [param wrap_index] параметра [param line] в центре области "
"просмотра."

msgid ""
"Positions the [param wrap_index] of [param line] at the top of the viewport."
msgstr ""
"Размещает [param wrap_index] параметра [param line] в верхней части области "
"просмотра."

msgid ""
"Positions the [param wrap_index] of [param line] at the bottom of the "
"viewport."
msgstr ""
"Размещает [param wrap_index] параметра [param line] в нижней части области "
"просмотра."

msgid ""
"Sets the custom background color of the given line. If transparent, this "
"color is applied on top of the default background color (See [theme_item "
"background_color]). If set to [code]Color(0, 0, 0, 0)[/code], no additional "
"color is applied."
msgstr ""
"Устанавливает пользовательский цвет фона для данной строки. Если прозрачный, "
"этот цвет применяется поверх цвета фона по умолчанию (см. [theme_item "
"background_color]). Если установлено значение [code]Color(0, 0, 0, 0)[/code], "
"дополнительный цвет не применяется."

msgid ""
"If [param clickable] is [code]true[/code], makes the [param gutter] on the "
"given [param line] clickable. This is like [method set_gutter_clickable], but "
"for a single line. If [method is_gutter_clickable] is [code]true[/code], this "
"will not have any effect. See [method is_line_gutter_clickable] and [signal "
"gutter_clicked]."
msgstr ""
"Если [param clickable] равен [code]true[/code], делает [param gutter] на "
"указанной [param line] кликабельным. Это похоже на [method "
"set_gutter_clickable], но для одной строки. Если [method is_gutter_clickable] "
"равен [code]true[/code], это не даст никакого эффекта. Смотрите [method "
"is_line_gutter_clickable] и [signal gutter_clicked]."

msgid ""
"Sets the icon for [param gutter] on [param line] to [param icon]. This only "
"works when the gutter type is [constant GUTTER_TYPE_ICON] (see [method "
"set_gutter_type])."
msgstr ""
"Устанавливает значок для [param gutter] на [param line] на [param icon]. Это "
"работает только в том случае, если тип желоба — [constant GUTTER_TYPE_ICON] "
"(см. [method set_gutter_type])."

msgid "Sets the color for [param gutter] on [param line] to [param color]."
msgstr "Устанавливает цвет для [param gutter] в [param line] на [param color]."

msgid ""
"Sets the metadata for [param gutter] on [param line] to [param metadata]."
msgstr ""
"Устанавливает метаданные для [param gutter] в [param line] на [param "
"metadata]."

msgid ""
"Sets the text for [param gutter] on [param line] to [param text]. This only "
"works when the gutter type is [constant GUTTER_TYPE_STRING] (see [method "
"set_gutter_type])."
msgstr ""
"Устанавливает текст для [param gutter] на [param line] на [param text]. Это "
"работает только в том случае, если типом gutter является [constant "
"GUTTER_TYPE_STRING] (см. [method set_gutter_type])."

msgid ""
"If [code]true[/code], enables overtype mode. In this mode, typing overrides "
"existing text instead of inserting text. The [member ProjectSettings.input/"
"ui_text_toggle_insert_mode] action toggles overtype mode. See [method "
"is_overtype_mode_enabled]."
msgstr ""
"Если [code]true[/code], включает режим замены. В этом режиме ввод текста "
"переопределяет существующий текст вместо вставки текста. Действие [member "
"ProjectSettings.input/ui_text_toggle_insert_mode] переключает режим замены. "
"См. [method is_overtype_mode_enabled]."

msgid ""
"Sets the search [param flags]. This is used with [method set_search_text] to "
"highlight occurrences of the searched text. Search flags can be specified "
"from the [enum SearchFlags] enum."
msgstr ""
"Устанавливает [param flags] поиска. Используется с [method set_search_text] "
"для выделения вхождений искомого текста. Флаги поиска можно указать из "
"перечисления [enum SearchFlags]."

msgid "Sets the search text. See [method set_search_flags]."
msgstr "Устанавливает текст поиска. См. [method set_search_flags]."

msgid "Sets the current selection mode."
msgstr "Устанавливает текущий режим выбора."

msgid ""
"Sets the selection origin column to the [param column] for the given [param "
"caret_index]. If the selection origin is moved to the caret position, the "
"selection will deselect."
msgstr ""
"Устанавливает исходный столбец выбора в [param column] для заданного [param "
"caret_index]. Если исходный столбец выбора перемещается в позицию каретки, "
"выбор будет отменен."

msgid ""
"Sets the selection origin line to the [param line] for the given [param "
"caret_index]. If the selection origin is moved to the caret position, the "
"selection will deselect.\n"
"If [param can_be_hidden] is [code]false[/code], The line will be set to the "
"nearest unhidden line below or above.\n"
"If [param wrap_index] is [code]-1[/code], the selection origin column will be "
"clamped to the [param line]'s length. If [param wrap_index] is greater than "
"[code]-1[/code], the column will be moved to attempt to match the visual x "
"position on the line's [param wrap_index] to the position from the last time "
"[method set_selection_origin_column] or [method select] was called."
msgstr ""
"Устанавливает исходную линию выделения на [param line] для заданного [param "
"caret_index]. Если исходная линия выделения перемещается в позицию каретки, "
"выделение будет отменено.\n"
"Если [param can_be_hidden] равно [code]false[/code], строка будет установлена "
"на ближайшую нескрытую строку ниже или выше.\n"
"Если [param wrap_index] равно [code]-1[/code], столбец исходной линии "
"выделения будет ограничен длиной [param line]. Если [param wrap_index] больше "
"[code]-1[/code], столбец будет перемещен, чтобы попытаться сопоставить "
"визуальную позицию x на [param wrap_index] строки с позицией с момента "
"последнего вызова [method set_selection_origin_column] или [method select]."

msgid "Sets the tab size for the [TextEdit] to use."
msgstr "Устанавливает размер табуляции для [TextEdit]."

msgid ""
"Provide custom tooltip text. The callback method must take the following "
"args: [code]hovered_word: String[/code]."
msgstr ""
"Предоставьте пользовательский текст подсказки. Метод обратного вызова должен "
"принимать следующие аргументы: [code]hovered_word: String[/code]."

msgid ""
"Moves a selection and a caret for the next occurrence of the current "
"selection. If there is no active selection, moves to the next occurrence of "
"the word under caret."
msgstr ""
"Перемещает выделение и курсор на следующее вхождение текущего выделения. Если "
"активного выделения нет, перемещает на следующее вхождение слова под курсором."

msgid ""
"Starts an action, will end the current action if [param action] is "
"different.\n"
"An action will also end after a call to [method end_action], after [member "
"ProjectSettings.gui/timers/text_edit_idle_detect_sec] is triggered or a new "
"undoable step outside the [method start_action] and [method end_action] calls."
msgstr ""
"Начинает действие, завершит текущее действие, если [param action] "
"отличается.\n"
"Действие также завершится после вызова [method end_action], после "
"срабатывания [member ProjectSettings.gui/timers/text_edit_idle_detect_sec] "
"или нового отменяемого шага за пределами вызовов [method start_action] и "
"[method end_action]."

msgid "Swaps the two lines. Carets will be swapped with the lines."
msgstr "Меняет местами две строки. Каретки будут поменяны местами со строками."

msgid "Tag the current version as saved."
msgstr "Отметьте текущую версию как сохраненную."

msgid "Perform undo operation."
msgstr "Выполните операцию Назад."

msgid ""
"If [member wrap_mode] is set to [constant LINE_WRAPPING_BOUNDARY], sets text "
"wrapping mode."
msgstr ""
"Если [member wrap_mode] установлен в [constant LINE_WRAPPING_BOUNDARY], "
"задает режим переноса текста."

msgid ""
"If [code]true[/code], caret will be visible when [member editable] is "
"disabled."
msgstr ""
"Если [code]true[/code], курсор будет виден, когда [member editable] отключен."

msgid ""
"If [code]true[/code], a right-click moves the caret at the mouse position "
"before displaying the context menu.\n"
"If [code]false[/code], the context menu ignores mouse location."
msgstr ""
"Если [code]true[/code], щелчок правой кнопкой мыши перемещает курсор в "
"позицию мыши перед отображением контекстного меню.\n"
"Если [code]false[/code], контекстное меню игнорирует местоположение мыши."

msgid ""
"If [code]true[/code], multiple carets are allowed. Left-clicking with "
"[kbd]Alt[/kbd] adds a new caret. See [method add_caret] and [method "
"get_caret_count]."
msgstr ""
"Если [code]true[/code], разрешено несколько кареток. Щелчок левой кнопкой "
"мыши с [kbd]Alt[/kbd] добавляет новую каретку. См. [method add_caret] и "
"[method get_caret_count]."

msgid "Set the type of caret to draw."
msgstr "Установите тип курсора для рисования."

msgid ""
"The characters to consider as word delimiters if [member "
"use_custom_word_separators] is [code]true[/code]. The characters should be "
"defined without separation, for example [code]#_![/code]."
msgstr ""
"Символы, которые следует рассматривать как разделители слов, если [member "
"use_custom_word_separators] имеет значение [code]true[/code]. Символы следует "
"определять без разделителей, например [code]#_![/code]."

msgid ""
"If [code]true[/code], allow drag and drop of selected text. Text can still be "
"dropped from other sources."
msgstr ""
"Если [code]true[/code], разрешить перетаскивание выделенного текста. Текст по-"
"прежнему можно перетаскивать из других источников."

msgid ""
"If [code]true[/code], the \"space\" character will have a visible "
"representation."
msgstr ""
"Если [code]true[/code], символ «пробел» будет иметь видимое представление."

msgid ""
"If [code]true[/code], the \"tab\" character will have a visible "
"representation."
msgstr ""
"Если [code]true[/code], символ «табуляции» будет иметь видимое представление."

msgid ""
"If [code]true[/code], all occurrences of the selected text will be "
"highlighted."
msgstr "Если [code]true[/code], все вхождения выбранного текста будут выделены."

msgid "If [code]true[/code], the line containing the cursor is highlighted."
msgstr "Если [code]true[/code], то строка, содержащая курсор, будет выделена."

msgid ""
"If [code]true[/code], a minimap is shown, providing an outline of your source "
"code. The minimap uses a fixed-width text size."
msgstr ""
"Если [code]true[/code], отображается мини-карта, предоставляющая схему "
"исходного кода. Мини-карта использует фиксированный размер текста."

msgid "The width, in pixels, of the minimap."
msgstr "Ширина мини-карты в пикселях."

msgid ""
"Text shown when the [TextEdit] is empty. It is [b]not[/b] the [TextEdit]'s "
"default value (see [member text])."
msgstr ""
"Текст, отображаемый, когда [TextEdit] пуст. Это [b]не[/b] значение по "
"умолчанию для [TextEdit] (см. [member text])."

msgid ""
"If [code]true[/code], [TextEdit] will disable vertical scroll and fit minimum "
"height to the number of visible lines. When both this property and [member "
"scroll_fit_content_width] are [code]true[/code], no scrollbars will be "
"displayed."
msgstr ""
"Если [code]true[/code], [TextEdit] отключит вертикальную прокрутку и подгонит "
"минимальную высоту под количество видимых строк. Когда и это свойство, и "
"[member scroll_fit_content_width] равны [code]true[/code], полосы прокрутки "
"отображаться не будут."

msgid ""
"If [code]true[/code], [TextEdit] will disable horizontal scroll and fit "
"minimum width to the widest line in the text. When both this property and "
"[member scroll_fit_content_height] are [code]true[/code], no scrollbars will "
"be displayed."
msgstr ""
"Если [code]true[/code], [TextEdit] отключит горизонтальную прокрутку и "
"подгонит минимальную ширину к самой широкой строке в тексте. Когда и это "
"свойство, и [member scroll_fit_content_height] равны [code]true[/code], "
"полосы прокрутки отображаться не будут."

msgid ""
"If there is a horizontal scrollbar, this determines the current horizontal "
"scroll value in pixels."
msgstr ""
"Если есть горизонтальная полоса прокрутки, это определяет текущее значение "
"горизонтальной прокрутки в пикселях."

msgid "Allow scrolling past the last line into \"virtual\" space."
msgstr ""
"Разрешить прокрутку за пределы последней строки в «виртуальное» пространство."

msgid "Scroll smoothly over the text rather than jumping to the next location."
msgstr "Прокручивайте текст плавно, не переходя к следующему месту."

msgid ""
"Sets the scroll speed with the minimap or when [member scroll_smooth] is "
"enabled."
msgstr ""
"Устанавливает скорость прокрутки с помощью мини-карты или когда включен "
"[member scroll_smooth]."

msgid ""
"If there is a vertical scrollbar, this determines the current vertical scroll "
"value in line numbers, starting at 0 for the top line."
msgstr ""
"Если имеется вертикальная полоса прокрутки, это определяет текущее значение "
"вертикальной прокрутки в номерах строк, начиная с 0 для верхней строки."

msgid ""
"If [code]true[/code], text can be selected.\n"
"If [code]false[/code], text can not be selected by the user or by the [method "
"select] or [method select_all] methods."
msgstr ""
"Если [code]true[/code], текст может быть выбран.\n"
"Если [code]false[/code], текст не может быть выбран пользователем или "
"методами [method select] или [method select_all]."

msgid ""
"The syntax highlighter to use.\n"
"[b]Note:[/b] A [SyntaxHighlighter] instance should not be used across "
"multiple [TextEdit] nodes."
msgstr ""
"Подсветка синтаксиса для использования.\n"
"[b]Примечание:[/b] Экземпляр [SyntaxHighlighter] не следует использовать в "
"нескольких узлах [TextEdit]."

msgid ""
"If [code]true[/code], [member ProjectSettings.input/ui_text_indent] input "
"[code]Tab[/code] character, otherwise it moves keyboard focus to the next "
"[Control] in the scene."
msgstr ""
"Если [code]true[/code], [member ProjectSettings.input/ui_text_indent] вводит "
"символ [code]Tab[/code], в противном случае фокус клавиатуры перемещается на "
"следующий [Control] в сцене."

msgid "String value of the [TextEdit]."
msgstr "Строковое значение [TextEdit]."

msgid ""
"If [code]false[/code], using [kbd]Ctrl + Left[/kbd] or [kbd]Ctrl + Right[/"
"kbd] ([kbd]Cmd + Left[/kbd] or [kbd]Cmd + Right[/kbd] on macOS) bindings will "
"use the behavior of [member use_default_word_separators]. If [code]true[/"
"code], it will also stop the caret if a character within [member "
"custom_word_separators] is detected. Useful for subword moving. This behavior "
"also will be applied to the behavior of text selection."
msgstr ""
"Если [code]false[/code], при использовании [kbd]Ctrl + Left[/kbd] или "
"[kbd]Ctrl + Right[/kbd] ([kbd]Cmd + Left[/kbd] или [kbd]Cmd + Right[/kbd] на "
"macOS) привязки будут использовать поведение [member "
"use_default_word_separators]. Если [code]true[/code], он также остановит "
"курсор, если будет обнаружен символ внутри [member custom_word_separators]. "
"Полезно для перемещения подслов. Это поведение также будет применено к "
"поведению выделения текста."

msgid ""
"If [code]false[/code], using [kbd]Ctrl + Left[/kbd] or [kbd]Ctrl + Right[/"
"kbd] ([kbd]Cmd + Left[/kbd] or [kbd]Cmd + Right[/kbd] on macOS) bindings will "
"stop moving caret only if a space or punctuation is detected. If [code]true[/"
"code], it will also stop the caret if a character is part of [code]!\"#$"
"%&'()*+,-./:;<=>?@[\\]^`{|}~[/code], the Unicode General Punctuation table, "
"or the Unicode CJK Punctuation table. Useful for subword moving. This "
"behavior also will be applied to the behavior of text selection."
msgstr ""
"Если [code]false[/code], привязка [kbd]Ctrl + Left[/kbd] или [kbd]Ctrl + "
"Right[/kbd] ([kbd]Cmd + Left[/kbd] или [kbd]Cmd + Right[/kbd] на macOS) "
"остановит перемещение курсора только в случае обнаружения пробела или знака "
"препинания. Если [code]true[/code], то курсор также остановится, если символ "
"является частью [code]!\"#$%&'()*+,-./:;<=>?@[\\]^`{|}~[/code], таблицы общей "
"пунктуации Unicode или таблицы пунктуации Unicode CJK. Полезно для "
"перемещения подслов. Это поведение также будет применено к поведению "
"выделения текста."

msgid "Sets the line wrapping mode to use."
msgstr "Устанавливает используемый режим переноса строк."

msgid "Emitted when any caret changes position."
msgstr "Вызывается при изменении положения курсора."

msgid "Emitted when a gutter is added."
msgstr "Выделяется при добавлении желоба."

msgid "Emitted when a gutter is clicked."
msgstr "Издается при нажатии на желоб."

msgid "Emitted when a gutter is removed."
msgstr "Выделяется при снятии желоба."

msgid ""
"Emitted immediately when the text changes.\n"
"When text is added [param from_line] will be less than [param to_line]. On a "
"remove [param to_line] will be less than [param from_line]."
msgstr ""
"Выдается немедленно при изменении текста.\n"
"При добавлении текста [param from_line] будет меньше, чем [param to_line]. "
"При удалении [param to_line] будет меньше, чем [param from_line]."

msgid "Emitted when [method clear] is called or [member text] is set."
msgstr "Вызывается при вызове [method clear] или при установке [member text]."

msgid ""
"Pastes the clipboard text over the selected text (or at the cursor's "
"position)."
msgstr ""
"Вставляет текст из буфера обмена поверх выделенного текста (или в позицию "
"курсора)."

msgid "Erases the whole [TextEdit] text."
msgstr "Удаляет весь текст [TextEdit]."

msgid "Selects the whole [TextEdit] text."
msgstr "Выделяет весь текст [TextEdit]."

msgid "Redoes the previous action."
msgstr "Повторяет предыдущее действие."

msgid "No current action."
msgstr "Текущих действий нет."

msgid "A typing action."
msgstr "Действие ввода текста."

msgid "A backwards delete action."
msgstr "Обратное действие удаления."

msgid "A forward delete action."
msgstr "Действие прямого удаления."

msgid "Match case when searching."
msgstr "При поиске учитывайте регистр."

msgid "Match whole words when searching."
msgstr "При поиске сопоставляйте целые слова."

msgid "Search from end to beginning."
msgstr "Поиск от конца к началу."

msgid "Vertical line caret."
msgstr "Вертикальная линия каретки."

msgid "Block caret."
msgstr "Блокировка курсора (каретки)."

msgid "Not selecting."
msgstr "Не выбирать."

msgid "Select as if [code]shift[/code] is pressed."
msgstr "Выбрать так, как будто нажата клавиша [code]shift[/code]."

msgid "Select single characters as if the user single clicked."
msgstr "Выбирайте отдельные символы, как если бы пользователь щелкнул один раз."

msgid "Select whole words as if the user double clicked."
msgstr "Выделяйте целые слова, как если бы пользователь дважды щелкнул по ним."

msgid "Select whole lines as if the user triple clicked."
msgstr "Выделять целые строки, как если бы пользователь щелкнул три раза."

msgid "Line wrapping is disabled."
msgstr "Перенос строк отключен."

msgid ""
"Line wrapping occurs at the control boundary, beyond what would normally be "
"visible."
msgstr ""
"Перенос строк происходит на границе элемента управления, за пределами того, "
"что обычно видно."

msgid ""
"When a gutter is set to string using [method set_gutter_type], it is used to "
"contain text set via the [method set_line_gutter_text] method."
msgstr ""
"Если для поля ввода задано значение строки с помощью метода [method "
"set_gutter_type], оно используется для размещения текста, заданного с помощью "
"метода [method set_line_gutter_text]."

msgid ""
"When a gutter is set to icon using [method set_gutter_type], it is used to "
"contain an icon set via the [method set_line_gutter_icon] method."
msgstr ""
"Если желоб установлен в качестве значка с помощью метода [method "
"set_gutter_type], он используется для размещения значка, установленного с "
"помощью метода [method set_line_gutter_icon]."

msgid ""
"When a gutter is set to custom using [method set_gutter_type], it is used to "
"contain custom visuals controlled by a callback method set via the [method "
"set_gutter_custom_draw] method."
msgstr ""
"Если желоб настроен как пользовательский с помощью [method set_gutter_type], "
"он используется для хранения пользовательских визуальных элементов, "
"управляемых методом обратного вызова, установленным с помощью метода [method "
"set_gutter_custom_draw]."

msgid "Sets the background [Color] of this [TextEdit]."
msgstr "Устанавливает фоновый цвет [Color] этого [TextEdit]."

msgid "[Color] of the text behind the caret when using a block caret."
msgstr "[Color] текста за кареткой при использовании блочной каретки."

msgid ""
"[Color] of the caret. This can be set to a fully transparent color to hide "
"the caret entirely."
msgstr ""
"[Color] каретки. Можно установить полностью прозрачный цвет, чтобы полностью "
"скрыть каретку."

msgid "Background [Color] of the line containing the caret."
msgstr "Фон [Color] строки, содержащей курсор."

msgid "Sets the font [Color]."
msgstr "Устанавливает шрифт [Color]."

msgid "The tint of text outline of the [TextEdit]."
msgstr "Оттенок контура текста [TextEdit]."

msgid "Sets the font [Color] when [member editable] is disabled."
msgstr "Устанавливает шрифт [Color], когда [member editable] отключен."

msgid ""
"Sets the [Color] of the selected text. If equal to [code]Color(0, 0, 0, 0)[/"
"code], it will be ignored."
msgstr ""
"Устанавливает [Color] выделенного текста. Если равно [code]Color(0, 0, 0, 0)[/"
"code], то будет проигнорирован."

msgid "[Color] of the border around text that matches the search query."
msgstr "[Color] границы вокруг текста, соответствующего поисковому запросу."

msgid "[Color] behind the text that matches the search query."
msgstr "[Color] позади текста, соответствующего поисковому запросу."

msgid "Sets the highlight [Color] of text selections."
msgstr "Устанавливает цвет подсветки [Color] выделенного текста."

msgid ""
"Sets the highlight [Color] of multiple occurrences. [member "
"highlight_all_occurrences] has to be enabled."
msgstr ""
"Устанавливает выделение [Color] нескольких вхождений. [member "
"highlight_all_occurrences] должен быть включен."

msgid ""
"The caret's width in pixels. Greater values can be used to improve "
"accessibility by ensuring the caret is easily visible, or to ensure "
"consistency with a large font size. If set to [code]0[/code] or lower, the "
"caret width is automatically set to 1 pixel and multiplied by the display "
"scaling factor."
msgstr ""
"Ширина каретки в пикселях. Большие значения можно использовать для улучшения "
"доступности, обеспечивая легкую видимость каретки или для обеспечения "
"согласованности с большим размером шрифта. Если установлено значение [code]0[/"
"code] или ниже, ширина каретки автоматически устанавливается на 1 пиксель и "
"умножается на коэффициент масштабирования дисплея."

msgid "Sets the default [Font]."
msgstr "Устанавливает [Font] по умолчанию."

msgid "Sets default font size."
msgstr "Устанавливает размер шрифта по умолчанию."

msgid "Sets a custom [Texture2D] for space text characters."
msgstr ""
"Устанавливает пользовательскую [Texture2D] для символов пробельного текста."

msgid "Sets a custom [Texture2D] for tab text characters."
msgstr ""
"Устанавливает пользовательскую [Texture2D] для символов текста табуляции."

msgid ""
"Sets the [StyleBox] when in focus. The [theme_item focus] [StyleBox] is "
"displayed [i]over[/i] the base [StyleBox], so a partially transparent "
"[StyleBox] should be used to ensure the base [StyleBox] remains visible. A "
"[StyleBox] that represents an outline or an underline works well for this "
"purpose. To disable the focus visual effect, assign a [StyleBoxEmpty] "
"resource. Note that disabling the focus visual effect will harm keyboard/"
"controller navigation usability, so this is not recommended for accessibility "
"reasons."
msgstr ""
"Устанавливает [StyleBox], когда находится в фокусе. [Theme_item focus] "
"[StyleBox] отображается [i]над[/i] базовым [StyleBox], поэтому следует "
"использовать частично прозрачный [StyleBox], чтобы базовый [StyleBox] "
"оставался видимым. [StyleBox], представляющий контур или подчеркивание, "
"хорошо подходит для этой цели. Чтобы отключить визуальный эффект фокуса, "
"назначьте ресурс [StyleBoxEmpty]. Обратите внимание, что отключение "
"визуального эффекта фокуса навредит удобству использования навигации с "
"помощью клавиатуры/контроллера, поэтому это не рекомендуется по соображениям "
"доступности."

msgid "Sets the [StyleBox] of this [TextEdit]."
msgstr "Устанавливает [StyleBox] этого [TextEdit]."

msgid ""
"Sets the [StyleBox] of this [TextEdit] when [member editable] is disabled."
msgstr ""
"Устанавливает [StyleBox] этого [TextEdit], когда [member editable] отключен."

msgid "Holds a line of text."
msgstr "Содержит строку текста."

msgid "Abstraction over [TextServer] for handling a single line of text."
msgstr "Абстракция над [TextServer] для обработки одной строки текста."

msgid ""
"Adds inline object to the text buffer, [param key] must be unique. In the "
"text, object is represented as [param length] object replacement characters."
msgstr ""
"Добавляет встроенный объект в текстовый буфер, [param key] должен быть "
"уникальным. В тексте объект представлен как [param length] символов замены "
"объекта."

msgid "Adds text span and font to draw it."
msgstr "Добавляет текстовый диапазон и шрифт для его отрисовки."

msgid "Clears text line (removes text and inline objects)."
msgstr "Очищает текстовую строку (удаляет текст и встроенные объекты)."

msgid ""
"Draw text into a canvas item at a given position, with [param color]. [param "
"pos] specifies the top left corner of the bounding box. If [param "
"oversampling] is greater than zero, it is used as font oversampling factor, "
"otherwise viewport oversampling settings are used."
msgstr ""
"Нарисовать текст на холсте в заданной позиции с [param color]. [param pos] "
"указывает верхний левый угол ограничивающего прямоугольника. Если [param "
"oversampling] больше нуля, он используется как фактор передискретизации "
"шрифта, в противном случае используются настройки передискретизации области "
"просмотра."

msgid "Returns the text writing direction inferred by the BiDi algorithm."
msgstr "Возвращает направление написания текста, выведенное алгоритмом BiDi."

msgid ""
"Returns the text ascent (number of pixels above the baseline for horizontal "
"layout or to the left of baseline for vertical)."
msgstr ""
"Возвращает высоту текста (количество пикселей над базовой линией для "
"горизонтального расположения или слева от базовой линии для вертикального "
"расположения)."

msgid ""
"Returns the text descent (number of pixels below the baseline for horizontal "
"layout or to the right of baseline for vertical)."
msgstr ""
"Возвращает смещение текста (количество пикселей ниже базовой линии для "
"горизонтальной компоновки или справа от базовой линии для вертикальной)."

msgid "Returns thickness of the underline."
msgstr "Возвращает толщину подчеркивания."

msgid ""
"Returns width (for horizontal layout) or height (for vertical) of the text."
msgstr ""
"Возвращает ширину (для горизонтального расположения) или высоту (для "
"вертикального расположения) текста."

msgid "Returns bounding rectangle of the inline object."
msgstr "Возвращает ограничивающий прямоугольник встроенного объекта."

msgid "Returns array of inline objects."
msgstr "Возвращает массив встроенных объектов."

msgid "Returns TextServer buffer RID."
msgstr "Возвращает RID буфера TextServer."

msgid "Returns size of the bounding box of the text."
msgstr "Возвращает размер ограничивающего прямоугольника текста."

msgid ""
"Returns caret character offset at the specified pixel offset at the baseline. "
"This function always returns a valid position."
msgstr ""
"Возвращает смещение символа каретки на указанное смещение пикселей на базовой "
"линии. Эта функция всегда возвращает допустимую позицию."

msgid "Sets new size and alignment of embedded object."
msgstr "Устанавливает новый размер и выравнивание внедренного объекта."

msgid ""
"Overrides BiDi for the structured text.\n"
"Override ranges should cover full source text without overlaps. BiDi "
"algorithm will be used on each range separately."
msgstr ""
"Переопределяет BiDi для структурированного текста.\n"
"Диапазоны переопределения должны охватывать весь исходный текст без "
"перекрытий. Алгоритм BiDi будет использоваться для каждого диапазона отдельно."

msgid "Sets text alignment within the line as if the line was horizontal."
msgstr ""
"Устанавливает выравнивание текста внутри строки так, как если бы строка была "
"горизонтальной."

msgid "Text writing direction."
msgstr "Направление написания текста."

msgid "Line alignment rules. For more info see [TextServer]."
msgstr ""
"Правила выравнивания строк. Для получения дополнительной информации см. "
"[TextServer]."

msgid "Text orientation."
msgstr "Ориентация текста."

msgid "If set to [code]true[/code] text will display control characters."
msgstr ""
"Если установлено значение [code]true[/code], текст будет отображать "
"управляющие символы."

msgid "If set to [code]true[/code] text will display invalid characters."
msgstr ""
"Если установлено значение [code]true[/code], в тексте будут отображаться "
"недопустимые символы."

msgid "The clipping behavior when the text exceeds the text line's set width."
msgstr ""
"Поведение обрезки, когда текст превышает установленную ширину текстовой "
"строки."

msgid "Text line width."
msgstr "Ширина текстовой строки."

msgid "Generate a [PrimitiveMesh] from the text."
msgstr "Создает [PrimitiveMesh] из текста."

msgid ""
"Generate a [PrimitiveMesh] from the text.\n"
"TextMesh can be generated only when using dynamic fonts with vector glyph "
"contours. Bitmap fonts (including bitmap data in the TrueType/OpenType "
"containers, like color emoji fonts) are not supported.\n"
"The UV layout is arranged in 4 horizontal strips, top to bottom: 40% of the "
"height for the front face, 40% for the back face, 10% for the outer edges and "
"10% for the inner edges."
msgstr ""
"Сгенерируйте [PrimitiveMesh] из текста.\n"
"TextMesh можно сгенерировать только при использовании динамических шрифтов с "
"векторными контурами глифов. Растровые шрифты (включая растровые данные в "
"контейнерах TrueType/OpenType, например, цветные шрифты эмодзи) не "
"поддерживаются.\n"
"UV-развёртка состоит из четырёх горизонтальных полос, расположенных сверху "
"вниз: 40% высоты для лицевой стороны, 40% для обратной стороны, 10% для "
"внешних и 10% для внутренних сторон."

msgid "Step (in pixels) used to approximate Bézier curves."
msgstr "Шаг (в пикселях), используемый для аппроксимации кривых Безье."

msgid ""
"Depths of the mesh, if set to [code]0.0[/code] only front surface, is "
"generated, and UV layout is changed to use full texture for the front face "
"only."
msgstr ""
"Если задано значение [code]0.0[/code] для сетки только для передней "
"поверхности, генерируется глубина, а UV-разметка изменяется для использования "
"полной текстуры только для передней поверхности."

msgid "Font size of the [TextMesh]'s text."
msgstr "Размер шрифта текста [TextMesh]."

msgid ""
"Language code used for text shaping algorithms, if left empty current locale "
"is used instead."
msgstr ""
"Код языка, используемый для алгоритмов формирования текста. Если оставить его "
"пустым, вместо него будет использоваться текущая локаль."

msgid "The size of one pixel's width on the text to scale it in 3D."
msgstr "Размер ширины одного пикселя текста для его масштабирования в 3D."

msgid ""
"The text to generate mesh from.\n"
"[b]Note:[/b] Due to being a [Resource], it doesn't follow the rules of "
"[member Node.auto_translate_mode]. If disabling translation is desired, it "
"should be done manually with [method Object.set_message_translation]."
msgstr ""
"Текст для генерации сетки.\n"
"[b]Примечание:[/b] Поскольку он является [Resource], он не следует правилам "
"[member Node.auto_translate_mode]. Если требуется отключить перевод, это "
"следует сделать вручную с помощью [method Object.set_message_translation]."

msgid "Text width (in pixels), used for fill alignment."
msgstr "Ширина текста (в пикселях), используемая для выравнивания заливки."

msgid "Holds a paragraph of text."
msgstr "Содержит абзац текста."

msgid "Abstraction over [TextServer] for handling a single paragraph of text."
msgstr "Абстракция над [TextServer] для обработки одного абзаца текста."

msgid "Clears text paragraph (removes text and inline objects)."
msgstr "Очищает текстовый абзац (удаляет текст и встроенные объекты)."

msgid "Removes dropcap."
msgstr "Удаляет начальную букву капитель (dropcap)."

msgid ""
"Draw all lines of the text and drop cap into a canvas item at a given "
"position, with [param color]. [param pos] specifies the top left corner of "
"the bounding box. If [param oversampling] is greater than zero, it is used as "
"font oversampling factor, otherwise viewport oversampling settings are used."
msgstr ""
"Нарисуйте все строки текста и буквицы в элементе холста в заданной позиции с "
"[param color]. [param pos] указывает верхний левый угол ограничивающего "
"прямоугольника. Если [param oversampling] больше нуля, он используется как "
"фактор передискретизации шрифта, в противном случае используются настройки "
"передискретизации области просмотра."

msgid ""
"Draw drop cap into a canvas item at a given position, with [param color]. "
"[param pos] specifies the top left corner of the bounding box. If [param "
"oversampling] is greater than zero, it is used as font oversampling factor, "
"otherwise viewport oversampling settings are used."
msgstr ""
"Нарисуйте буквицу в элементе холста в заданной позиции с [param color]. "
"[param pos] указывает верхний левый угол ограничивающего прямоугольника. Если "
"[param oversampling] больше нуля, он используется как фактор "
"передискретизации шрифта, в противном случае используются настройки "
"передискретизации области просмотра."

msgid ""
"Draw drop cap outline into a canvas item at a given position, with [param "
"color]. [param pos] specifies the top left corner of the bounding box. If "
"[param oversampling] is greater than zero, it is used as font oversampling "
"factor, otherwise viewport oversampling settings are used."
msgstr ""
"Нарисуйте контур буквицы в элементе холста в заданной позиции с [param "
"color]. [param pos] указывает верхний левый угол ограничивающего "
"прямоугольника. Если [param oversampling] больше нуля, он используется как "
"фактор передискретизации шрифта, в противном случае используются настройки "
"передискретизации области просмотра."

msgid ""
"Draw single line of text into a canvas item at a given position, with [param "
"color]. [param pos] specifies the top left corner of the bounding box. If "
"[param oversampling] is greater than zero, it is used as font oversampling "
"factor, otherwise viewport oversampling settings are used."
msgstr ""
"Нарисуйте одну строку текста в элементе холста в заданной позиции с [param "
"color]. [param pos] указывает верхний левый угол ограничивающего "
"прямоугольника. Если [param oversampling] больше нуля, он используется как "
"фактор передискретизации шрифта, в противном случае используются настройки "
"передискретизации области просмотра."

msgid ""
"Draw outline of the single line of text into a canvas item at a given "
"position, with [param color]. [param pos] specifies the top left corner of "
"the bounding box. If [param oversampling] is greater than zero, it is used as "
"font oversampling factor, otherwise viewport oversampling settings are used."
msgstr ""
"Нарисовать контур одной строки текста в элементе холста в заданной позиции с "
"[param color]. [param pos] указывает верхний левый угол ограничивающего "
"прямоугольника. Если [param oversampling] больше нуля, он используется как "
"фактор передискретизации шрифта, в противном случае используются настройки "
"передискретизации области просмотра."

msgid ""
"Draw outlines of all lines of the text and drop cap into a canvas item at a "
"given position, with [param color]. [param pos] specifies the top left corner "
"of the bounding box. If [param oversampling] is greater than zero, it is used "
"as font oversampling factor, otherwise viewport oversampling settings are "
"used."
msgstr ""
"Нарисовать контуры всех строк текста и буквицы в элементе холста в заданной "
"позиции с [param color]. [param pos] указывает верхний левый угол "
"ограничивающего прямоугольника. Если [param oversampling] больше нуля, он "
"используется как фактор передискретизации шрифта, в противном случае "
"используются настройки передискретизации области просмотра."

msgid "Returns number of lines used by dropcap."
msgstr "Возвращает количество строк, используемых в dropcap (буквицей)."

msgid "Returns drop cap text buffer RID."
msgstr "Возвращает RID текстового буфера буквицы."

msgid "Returns drop cap bounding box size."
msgstr "Возвращает размер ограничивающего прямоугольника буквицы."

msgid ""
"Returns the text line ascent (number of pixels above the baseline for "
"horizontal layout or to the left of baseline for vertical)."
msgstr ""
"Возвращает высоту текстовой строки (количество пикселей над базовой линией "
"для горизонтальной компоновки или слева от базовой линии для вертикальной)."

msgid "Returns number of lines in the paragraph."
msgstr "Возвращает количество строк в абзаце."

msgid ""
"Returns the text line descent (number of pixels below the baseline for "
"horizontal layout or to the right of baseline for vertical)."
msgstr ""
"Возвращает смещение текстовой строки (количество пикселей ниже базовой линии "
"для горизонтальной компоновки или справа от базовой линии для вертикальной)."

msgid "Returns array of inline objects in the line."
msgstr "Возвращает массив встроенных объектов в строке."

msgid "Returns character range of the line."
msgstr "Возвращает диапазон символов строки."

msgid "Returns TextServer line buffer RID."
msgstr "Возвращает RID буфера строки TextServer."

msgid ""
"Returns size of the bounding box of the line of text. Returned size is "
"rounded up."
msgstr ""
"Возвращает размер ограничивающего прямоугольника строки текста. Возвращаемый "
"размер округляется в большую сторону."

msgid ""
"Returns width (for horizontal layout) or height (for vertical) of the line of "
"text."
msgstr ""
"Возвращает ширину (для горизонтального расположения) или высоту (для "
"вертикального расположения) строки текста."

msgid ""
"Returns the size of the bounding box of the paragraph, without line breaks."
msgstr "Возвращает размер ограничивающей рамки абзаца без переносов строк."

msgid "Returns the character range of the paragraph."
msgstr "Возвращает диапазон символов абзаца/параграфа."

msgid "Returns TextServer full string buffer RID."
msgstr "Возвращает полный строковый буфер RID TextServer."

msgid "Returns the size of the bounding box of the paragraph."
msgstr "Возвращает размер ограничивающей рамки абзаца."

msgid ""
"Returns caret character offset at the specified coordinates. This function "
"always returns a valid position."
msgstr ""
"Возвращает смещение символа каретки в указанных координатах. Эта функция "
"всегда возвращает допустимую позицию."

msgid ""
"Sets drop cap, overrides previously set drop cap. Drop cap (dropped capital) "
"is a decorative element at the beginning of a paragraph that is larger than "
"the rest of the text."
msgstr ""
"Устанавливает буквицу, переопределяет ранее установленную буквицу. Буквица — "
"декоративный элемент в начале абзаца, который больше остального текста."

msgid "Aligns paragraph to the given tab-stops."
msgstr "Выравнивает абзац по указанным позициям табуляции."

msgid "Paragraph horizontal alignment."
msgstr "Горизонтальное выравнивание абзаца."

msgid "Line breaking rules. For more info see [TextServer]."
msgstr ""
"Правила переноса строк. Для получения дополнительной информации см. "
"[TextServer]."

msgid ""
"Custom punctuation character list, used for word breaking. If set to empty "
"string, server defaults are used."
msgstr ""
"Пользовательский список знаков препинания, используемый для разбиения слов. "
"Если задана пустая строка, используются значения сервера по умолчанию."

msgid "Limits the lines of text shown."
msgstr "Ограничивает количество отображаемых строк текста."

msgid "The clipping behavior when the text exceeds the paragraph's set width."
msgstr "Поведение обрезки, когда текст превышает заданную ширину абзаца."

msgid "Paragraph width."
msgstr "Ширина абзаца."

msgid "A server interface for font management and text rendering."
msgstr "Серверный интерфейс для управления шрифтами и рендеринга текста."

msgid ""
"[TextServer] is the API backend for managing fonts and rendering text.\n"
"[b]Note:[/b] This is a low-level API, consider using [TextLine], "
"[TextParagraph], and [Font] classes instead.\n"
"This is an abstract class, so to get the currently active [TextServer] "
"instance, use the following code:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var ts = TextServerManager.get_primary_interface()\n"
"[/gdscript]\n"
"[csharp]\n"
"var ts = TextServerManager.GetPrimaryInterface();\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"[TextServer] — это API-бэкэнд для управления шрифтами и рендеринга текста.\n"
"[b]Примечание:[/b] Это API низкого уровня, рассмотрите возможность "
"использования вместо него классов [TextLine], [TextParagraph] и [Font].\n"
"Это абстрактный класс, поэтому для получения текущего активного экземпляра "
"[TextServer] используйте следующий код:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var ts = TextServerManager.get_primary_interface()\n"
"[/gdscript]\n"
"[csharp]\n"
"var ts = TextServerManager.GetPrimaryInterface();\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Creates a new, empty font cache entry resource. To free the resulting "
"resource, use the [method free_rid] method."
msgstr ""
"Создает новый, пустой ресурс записи кэша шрифтов. Чтобы освободить полученный "
"ресурс, используйте метод [method free_rid]."

msgid ""
"Creates a new variation existing font which is reusing the same glyph cache "
"and font data. To free the resulting resource, use the [method free_rid] "
"method."
msgstr ""
"Создает новую вариацию существующего шрифта, которая повторно использует тот "
"же кэш глифов и данные шрифта. Чтобы освободить полученный ресурс, "
"используйте метод [method free_rid]."

msgid ""
"Creates a new buffer for complex text layout, with the given [param "
"direction] and [param orientation]. To free the resulting buffer, use [method "
"free_rid] method.\n"
"[b]Note:[/b] Direction is ignored if server does not support [constant "
"FEATURE_BIDI_LAYOUT] feature (supported by [TextServerAdvanced]).\n"
"[b]Note:[/b] Orientation is ignored if server does not support [constant "
"FEATURE_VERTICAL_LAYOUT] feature (supported by [TextServerAdvanced])."
msgstr ""
"Создает новый буфер для сложного текстового макета с заданными [param "
"direction] и [param orientation]. Чтобы освободить полученный буфер, "
"используйте метод [method free_rid].\n"
"[b]Примечание:[/b] Направление игнорируется, если сервер не поддерживает "
"функцию [constant FEATURE_BIDI_LAYOUT] (поддерживается "
"[TextServerAdvanced]).\n"
"[b]Примечание:[/b] Ориентация игнорируется, если сервер не поддерживает "
"функцию [constant FEATURE_VERTICAL_LAYOUT] (поддерживается "
"[TextServerAdvanced])."

msgid ""
"Draws box displaying character hexadecimal code. Used for replacing missing "
"characters."
msgstr ""
"Рисует поле, отображающее шестнадцатеричный код символа. Используется для "
"замены отсутствующих символов."

msgid ""
"Removes all rendered glyph information from the cache entry.\n"
"[b]Note:[/b] This function will not remove textures associated with the "
"glyphs, use [method font_remove_texture] to remove them manually."
msgstr ""
"Удаляет всю визуализированную информацию о глифах из записи кэша.\n"
"[b]Примечание:[/b] Эта функция не удалит текстуры, связанные с глифами, "
"используйте [method font_remove_texture], чтобы удалить их вручную."

msgid "Frees all automatically loaded system fonts."
msgstr "Освобождает все автоматически загруженные системные шрифты."

msgid ""
"Removes all textures from font cache entry.\n"
"[b]Note:[/b] This function will not remove glyphs associated with the "
"texture, use [method font_remove_glyph] to remove them manually."
msgstr ""
"Удаляет все текстуры из записи кэша шрифтов.\n"
"[b]Примечание:[/b] Эта функция не удалит глифы, связанные с текстурой, "
"используйте [method font_remove_glyph], чтобы удалить их вручную."

msgid ""
"Draws single glyph into a canvas item at the position, using [param font_rid] "
"at the size [param size]. If [param oversampling] is greater than zero, it is "
"used as font oversampling factor, otherwise viewport oversampling settings "
"are used.\n"
"[b]Note:[/b] Glyph index is specific to the font, use glyphs indices returned "
"by [method shaped_text_get_glyphs] or [method font_get_glyph_index].\n"
"[b]Note:[/b] If there are pending glyphs to render, calling this function "
"might trigger the texture cache update."
msgstr ""
"Рисует одиночный глиф на элементе холста в позиции, используя [param "
"font_rid] с размером [param size]. Если [param oversampling] больше нуля, он "
"используется как фактор передискретизации шрифта, в противном случае "
"используются настройки передискретизации области просмотра.\n"
"[b]Примечание:[/b] Индекс глифа зависит от шрифта, используйте индексы "
"глифов, возвращаемые [method shaped_text_get_glyphs] или [method "
"font_get_glyph_index].\n"
"[b]Примечание:[/b] Если есть ожидающие отрисовки глифы, вызов этой функции "
"может запустить обновление кэша текстур."

msgid ""
"Draws single glyph outline of size [param outline_size] into a canvas item at "
"the position, using [param font_rid] at the size [param size]. If [param "
"oversampling] is greater than zero, it is used as font oversampling factor, "
"otherwise viewport oversampling settings are used.\n"
"[b]Note:[/b] Glyph index is specific to the font, use glyphs indices returned "
"by [method shaped_text_get_glyphs] or [method font_get_glyph_index].\n"
"[b]Note:[/b] If there are pending glyphs to render, calling this function "
"might trigger the texture cache update."
msgstr ""
"Рисует контур одного глифа размером [param outline_size] в элементе холста в "
"позиции, используя [param font_rid] размером [param size]. Если [param "
"oversampling] больше нуля, он используется как фактор передискретизации "
"шрифта, в противном случае используются настройки передискретизации области "
"просмотра.\n"
"[b]Примечание:[/b] Индекс глифа зависит от шрифта, используйте индексы "
"глифов, возвращаемые [method shaped_text_get_glyphs] или [method "
"font_get_glyph_index].\n"
"[b]Примечание:[/b] Если есть ожидающие отрисовки глифы, вызов этой функции "
"может запустить обновление кэша текстур."

msgid "Returns font anti-aliasing mode."
msgstr "Возвращает режим сглаживания шрифта."

msgid ""
"Returns character code associated with [param glyph_index], or [code]0[/code] "
"if [param glyph_index] is invalid. See [method font_get_glyph_index]."
msgstr ""
"Возвращает код символа, связанный с [param glyph_index], или [code]0[/code], "
"если [param glyph_index] недействителен. См. [method font_get_glyph_index]."

msgid "Returns whether the font's embedded bitmap loading is disabled."
msgstr ""
"Возвращает значение, отключается ли загрузка встроенного растрового "
"изображения шрифта."

msgid "Returns font embolden strength."
msgstr "Возвращает силу жирности шрифта."

msgid "Returns bitmap font fixed size."
msgstr "Возвращает фиксированный размер растрового шрифта."

msgid "Returns bitmap font scaling mode."
msgstr "Возвращает режим масштабирования растрового шрифта."

msgid "Returns [code]true[/code] if font texture mipmap generation is enabled."
msgstr ""
"Возвращает [code]true[/code], если включена генерация MIP-карты текстуры "
"шрифта."

msgid ""
"Use [Viewport] oversampling, or the [code skip-lint]oversampling[/code] "
"argument of the [code skip-lint]draw_*[/code] methods instead."
msgstr ""
"Вместо этого используйте избыточную выборку [Viewport] или аргумент [code "
"skip-lint]oversampling[/code] методов [code skip-lint]draw_*[/code]."

msgid "Deprecated. This method always returns [code]1.0[/code]."
msgstr "Устарело. Этот метод всегда возвращает [code]1.0[/code]."

msgid ""
"Returns outline contours of the glyph as a [Dictionary] with the following "
"contents:\n"
"[code]points[/code]         - [PackedVector3Array], containing outline "
"points. [code]x[/code] and [code]y[/code] are point coordinates. [code]z[/"
"code] is the type of the point, using the [enum ContourPointTag] values.\n"
"[code]contours[/code]       - [PackedInt32Array], containing indices the end "
"points of each contour.\n"
"[code]orientation[/code]    - [bool], contour orientation. If [code]true[/"
"code], clockwise contours must be filled.\n"
"- Two successive [constant CONTOUR_CURVE_TAG_ON] points indicate a line "
"segment.\n"
"- One [constant CONTOUR_CURVE_TAG_OFF_CONIC] point between two [constant "
"CONTOUR_CURVE_TAG_ON] points indicates a single conic (quadratic) Bézier "
"arc.\n"
"- Two [constant CONTOUR_CURVE_TAG_OFF_CUBIC] points between two [constant "
"CONTOUR_CURVE_TAG_ON] points indicate a single cubic Bézier arc.\n"
"- Two successive [constant CONTOUR_CURVE_TAG_OFF_CONIC] points indicate two "
"successive conic (quadratic) Bézier arcs with a virtual [constant "
"CONTOUR_CURVE_TAG_ON] point at their middle.\n"
"- Each contour is closed. The last point of a contour uses the first point of "
"a contour as its next point, and vice versa. The first point can be [constant "
"CONTOUR_CURVE_TAG_OFF_CONIC] point."
msgstr ""
"Возвращает контуры контура глифа в виде [Dictionary] со следующим "
"содержимым:\n"
"[code]points[/code]         - [PackedVector3Array], содержащий точки контура. "
"[code]x[/code] и [code]y[/code] - координаты точек. [code]z[/code] - тип "
"точки, использующий значения [enum ContourPointTag].\n"
"[code]contours[/code]       - [PackedInt32Array], содержащий индексы конечных "
"точек каждого контура.\n"
"[code]orientation[/code]    - [bool], ориентация контура. Если [code]true[/"
"code], контуры по часовой стрелке должны быть заполнены.\n"
"- Две последовательные точки [constant CONTOUR_CURVE_TAG_ON] указывают на "
"отрезок линии.\n"
"- Одна [constant CONTOUR_CURVE_TAG_OFF_CONIC] точка между двумя [constant "
"CONTOUR_CURVE_TAG_ON] точками указывает на одну коническую (квадратичную) "
"дугу Безье.\n"
"- Две [constant CONTOUR_CURVE_TAG_OFF_CUBIC] точки между двумя [constant "
"CONTOUR_CURVE_TAG_ON] точками указывают на одну кубическую дугу Безье.\n"
"- Две последовательные [constant CONTOUR_CURVE_TAG_OFF_CONIC] точки указывают "
"на две последовательные конические (квадратичные) дуги Безье с виртуальной "
"[constant CONTOUR_CURVE_TAG_ON] точкой в их середине.\n"
"- Каждый контур замкнут. Последняя точка контура использует первую точку "
"контура в качестве своей следующей точки, и наоборот. Первой точкой может "
"быть [constant CONTOUR_CURVE_TAG_OFF_CONIC] точка."

msgid ""
"Returns the glyph index of a [param char], optionally modified by the [param "
"variation_selector]. See [method font_get_char_from_glyph_index]."
msgstr ""
"Возвращает индекс глифа [param char], опционально измененный [param "
"variation_selector]. См. [method font_get_char_from_glyph_index]."

msgid "Returns size of the glyph."
msgstr "Возвращает размер глифа."

msgid ""
"Returns resource ID of the cache texture containing the glyph.\n"
"[b]Note:[/b] If there are pending glyphs to render, calling this function "
"might trigger the texture cache update."
msgstr ""
"Возвращает ID ресурса текстуры кэша, содержащей глиф.\n"
"[b]Примечание:[/b] Если есть ожидающие отрисовки глифы, вызов этой функции "
"может запустить обновление кэша текстур."

msgid ""
"Returns size of the cache texture containing the glyph.\n"
"[b]Note:[/b] If there are pending glyphs to render, calling this function "
"might trigger the texture cache update."
msgstr ""
"Возвращает размер кэшированной текстуры, содержащей глиф.\n"
"[b]Примечание:[/b] Если есть ожидающие отрисовки глифы, вызов этой функции "
"может запустить обновление кэша текстур."

msgid "Returns the font hinting mode. Used by dynamic fonts only."
msgstr ""
"Возвращает режим хинтинга шрифта. Используется только динамическими шрифтами."

msgid ""
"Returns glyph position rounding behavior. If set to [code]true[/code], when "
"aligning glyphs to the pixel boundaries rounding remainders are accumulated "
"to ensure more uniform glyph distribution. This setting has no effect if "
"subpixel positioning is enabled."
msgstr ""
"Возвращает поведение округления позиции глифа. Если установлено значение "
"[code]true[/code], при выравнивании глифов по границам пикселей остатки "
"округления накапливаются для обеспечения более равномерного распределения "
"глифов. Этот параметр не действует, если включено субпиксельное "
"позиционирование."

msgid ""
"Returns the width of the range around the shape between the minimum and "
"maximum representable signed distance."
msgstr ""
"Возвращает ширину диапазона вокруг фигуры между минимальным и максимальным "
"представимым расстоянием со знаком."

msgid "Returns source font size used to generate MSDF textures."
msgstr ""
"Возвращает размер исходного шрифта, используемый для генерации текстур MSDF."

msgid "Returns font OpenType feature set override."
msgstr "Возвращает переопределение набора функций OpenType шрифта."

msgid ""
"Returns oversampling factor override. If set to a positive value, overrides "
"the oversampling factor of the viewport this font is used in. See [member "
"Viewport.oversampling]. This value doesn't override the [code skip-"
"lint]oversampling[/code] parameter of [code skip-lint]draw_*[/code] methods. "
"Used by dynamic fonts only."
msgstr ""
"Возвращает переопределение коэффициента передискретизации (oversampling). "
"Положительное значение переопределяет коэффициент передискретизации области "
"просмотра, в которой используется этот шрифт. См. [member "
"Viewport.oversampling]. Это значение не переопределяет параметр [code skip-"
"lint]oversampling[/code] методов [code skip-lint]draw_*[/code]. Используется "
"только динамическими шрифтами."

msgid ""
"Returns font cache information, each entry contains the following fields: "
"[code]Vector2i size_px[/code] - font size in pixels, [code]float "
"viewport_oversampling[/code] - viewport oversampling factor, [code]int "
"glyphs[/code] - number of rendered glyphs, [code]int textures[/code] - number "
"of used textures, [code]int textures_size[/code] - size of texture data in "
"bytes."
msgstr ""
"Возвращает информацию о кэше шрифтов, каждая запись содержит следующие поля: "
"[code]Vector2i size_px[/code] - размер шрифта в пикселях, [code]float "
"viewport_oversampling[/code] - коэффициент передискретизации области "
"просмотра, [code]int glyphs[/code] - количество отрисованных глифов, "
"[code]int textures[/code] - количество использованных текстур, [code]int "
"textures_size[/code] - размер данных текстуры в байтах."

msgid ""
"Returns the spacing for [param spacing] in pixels (not relative to the font "
"size)."
msgstr ""
"Возвращает интервал для [param spacing] в пикселях (не относительно размера "
"шрифта)."

msgid "Returns font subpixel glyph positioning mode."
msgstr "Возвращает режим позиционирования субпиксельных глифов шрифта."

msgid "Returns a string containing all the characters available in the font."
msgstr "Возвращает строку, содержащую все символы, доступные в шрифте."

msgid "Returns an array containing all glyph indices in the font."
msgstr "Возвращает массив, содержащий все индексы глифов в шрифте."

msgid "Returns font cache texture image data."
msgstr "Возвращает данные изображения текстуры кэша шрифта."

msgid "Returns array containing glyph packing data."
msgstr "Возвращает массив, содержащий данные упаковки глифов."

msgid "Returns 2D transform applied to the font outlines."
msgstr "Возвращает 2D-преобразование, примененное к контурам шрифта."

msgid ""
"Returns variation coordinates for the specified font cache entry. See [method "
"font_supported_variation_list] for more info."
msgstr ""
"Возвращает координаты вариации для указанной записи кэша шрифта. См. [method "
"font_supported_variation_list] для получения дополнительной информации."

msgid ""
"Returns [code]true[/code] if system fonts can be automatically used as "
"fallbacks."
msgstr ""
"Возвращает [code]true[/code], если системные шрифты могут автоматически "
"использоваться в качестве резервных."

msgid ""
"Returns [code]true[/code] if auto-hinting is supported and preferred over "
"font built-in hinting. Used by dynamic fonts only."
msgstr ""
"Возвращает [code]true[/code], если поддерживается автохинтинг и он "
"предпочтительнее встроенного хинтинга шрифта. Используется только "
"динамическими шрифтами."

msgid ""
"Returns [code]true[/code], if color modulation is applied when drawing "
"colored glyphs."
msgstr ""
"Возвращает [code]true[/code], если при рисовании цветных глифов применяется "
"цветовая модуляция."

msgid ""
"Returns [code]true[/code] if glyphs of all sizes are rendered using single "
"multichannel signed distance field generated from the dynamic font vector "
"data."
msgstr ""
"Возвращает [code]true[/code], если глифы всех размеров визуализируются с "
"использованием одного многоканального знакового поля расстояния, "
"сгенерированного из динамических векторных данных шрифта."

msgid ""
"Returns [code]true[/code], if font supports given script (ISO 15924 code)."
msgstr ""
"Возвращает [code]true[/code], если шрифт поддерживает указанный сценарий (ISO "
"15924 code)."

msgid ""
"Removes specified rendered glyph information from the cache entry.\n"
"[b]Note:[/b] This function will not remove textures associated with the "
"glyphs, use [method font_remove_texture] to remove them manually."
msgstr ""
"Удаляет указанную визуализированную информацию о глифе из записи кэша.\n"
"[b]Примечание:[/b] Эта функция не удалит текстуры, связанные с глифами, "
"используйте [method font_remove_texture], чтобы удалить их вручную."

msgid ""
"Removes specified texture from the cache entry.\n"
"[b]Note:[/b] This function will not remove glyphs associated with the "
"texture, remove them manually, using [method font_remove_glyph]."
msgstr ""
"Удаляет указанную текстуру из записи кэша.\n"
"[b]Примечание:[/b] Эта функция не удалит глифы, связанные с текстурой, "
"удалите их вручную, используя [method font_remove_glyph]."

msgid "Sets font anti-aliasing mode."
msgstr "Устанавливает режим сглаживания шрифтов."

msgid "Sets font source data, e.g contents of the dynamic font source file."
msgstr ""
"Устанавливает исходные данные шрифта, например содержимое исходного файла "
"динамического шрифта."

msgid ""
"Sets font embolden strength. If [param strength] is not equal to zero, "
"emboldens the font outlines. Negative values reduce the outline thickness."
msgstr ""
"Устанавливает жирность шрифта. Если [param strength] не равен нулю, жирность "
"контуров шрифта увеличивается. Отрицательные значения уменьшают толщину "
"контура."

msgid ""
"Sets bitmap font fixed size. If set to value greater than zero, same cache "
"entry will be used for all font sizes."
msgstr ""
"Устанавливает фиксированный размер растрового шрифта. Если установлено "
"значение больше нуля, для всех размеров шрифта будет использоваться одна и та "
"же запись кэша."

msgid ""
"Sets bitmap font scaling mode. This property is used only if "
"[code]fixed_size[/code] is greater than zero."
msgstr ""
"Устанавливает режим масштабирования растрового шрифта. Это свойство "
"используется только если [code]fixed_size[/code] больше нуля."

msgid ""
"If set to [code]true[/code] auto-hinting is preferred over font built-in "
"hinting."
msgstr ""
"Если установлено значение [code]true[/code], автоматическая подсказка имеет "
"приоритет над встроенной подсказкой шрифта."

msgid "If set to [code]true[/code] font texture mipmap generation is enabled."
msgstr ""
"Если установлено значение [code]true[/code], генерация MIP-текстуры шрифта "
"включена."

msgid "Deprecated. This method does nothing."
msgstr "Устарело. Этот метод ничего не делает."

msgid "Sets size of the glyph."
msgstr "Устанавливает размер глифа."

msgid "Sets font hinting mode. Used by dynamic fonts only."
msgstr ""
"Устанавливает режим хинтинга шрифта. Используется только динамическими "
"шрифтами."

msgid ""
"Sets glyph position rounding behavior. If set to [code]true[/code], when "
"aligning glyphs to the pixel boundaries rounding remainders are accumulated "
"to ensure more uniform glyph distribution. This setting has no effect if "
"subpixel positioning is enabled."
msgstr ""
"Задает поведение округления позиции глифа. Если установлено значение "
"[code]true[/code], при выравнивании глифов по границам пикселей остатки "
"округления накапливаются для обеспечения более равномерного распределения "
"глифов. Этот параметр не действует, если включено субпиксельное "
"позиционирование."

msgid "Adds override for [method font_is_language_supported]."
msgstr "Добавляет переопределение для [method font_is_language_supported]."

msgid ""
"Sets the width of the range around the shape between the minimum and maximum "
"representable signed distance."
msgstr ""
"Устанавливает ширину диапазона вокруг фигуры между минимальным и максимальным "
"представимым знакомым расстоянием."

msgid "Sets source font size used to generate MSDF textures."
msgstr ""
"Устанавливает размер исходного шрифта, используемого для генерации текстур "
"MSDF."

msgid ""
"If set to [code]true[/code], glyphs of all sizes are rendered using single "
"multichannel signed distance field generated from the dynamic font vector "
"data. MSDF rendering allows displaying the font at any scaling factor without "
"blurriness, and without incurring a CPU cost when the font size changes "
"(since the font no longer needs to be rasterized on the CPU). As a downside, "
"font hinting is not available with MSDF. The lack of font hinting may result "
"in less crisp and less readable fonts at small sizes.\n"
"[b]Note:[/b] MSDF font rendering does not render glyphs with overlapping "
"shapes correctly. Overlapping shapes are not valid per the OpenType standard, "
"but are still commonly found in many font files, especially those converted "
"by Google Fonts. To avoid issues with overlapping glyphs, consider "
"downloading the font file directly from the type foundry instead of relying "
"on Google Fonts."
msgstr ""
"Если установлено значение [code]true[/code], глифы всех размеров "
"визуализируются с использованием одного многоканального знакового поля "
"расстояния, сгенерированного из динамических векторных данных шрифта. "
"Рендеринг MSDF позволяет отображать шрифт с любым коэффициентом "
"масштабирования без размытия и без затрат на ЦП при изменении размера шрифта "
"(поскольку шрифт больше не нужно растеризовать на ЦП). Недостатком является "
"то, что хинтинг шрифтов недоступен в MSDF. Отсутствие хинтингов шрифтов может "
"привести к менее четким и менее читаемым шрифтам при малых размерах.\n"
"[b]Примечание:[/b] Рендеринг шрифтов MSDF некорректно визуализирует глифы с "
"перекрывающимися формами. Перекрывающиеся формы недопустимы в соответствии со "
"стандартом OpenType, но по-прежнему часто встречаются во многих файлах "
"шрифтов, особенно в тех, которые конвертируются Google Fonts. Чтобы избежать "
"проблем с перекрывающимися глифами, рассмотрите возможность загрузки файла "
"шрифта непосредственно из литейного цеха вместо того, чтобы полагаться на "
"Google Fonts."

msgid "Sets the font family name."
msgstr "Задает имя семейства шрифтов."

msgid "Sets font OpenType feature set override."
msgstr "Устанавливает переопределение набора функций OpenType шрифта."

msgid ""
"If set to a positive value, overrides the oversampling factor of the viewport "
"this font is used in. See [member Viewport.oversampling]. This value doesn't "
"override the [code skip-lint]oversampling[/code] parameter of [code skip-"
"lint]draw_*[/code] methods. Used by dynamic fonts only."
msgstr ""
"Положительное значение переопределяет коэффициент передискретизации области "
"просмотра, в которой используется этот шрифт. См. [member "
"Viewport.oversampling]. Это значение не переопределяет параметр [code skip-"
"lint]oversampling[/code] методов [code skip-lint]draw_*[/code]. Используется "
"только динамическими шрифтами."

msgid "Adds override for [method font_is_script_supported]."
msgstr "Добавляет переопределение для [method font_is_script_supported]."

msgid ""
"Sets font stretch amount, compared to a normal width. A percentage value "
"between [code]50%[/code] and [code]200%[/code].\n"
"[b]Note:[/b] This value is used for font matching only and will not affect "
"font rendering. Use [method font_set_face_index], [method "
"font_set_variation_coordinates], or [method font_set_transform] instead."
msgstr ""
"Устанавливает величину растяжения шрифта по сравнению с обычной шириной. "
"Процентное значение между [code]50%[/code] и [code]200%[/code].\n"
"[b]Примечание:[/b] Это значение используется только для сопоставления шрифтов "
"и не повлияет на рендеринг шрифтов. Вместо этого используйте [method "
"font_set_face_index], [method font_set_variation_coordinates] или [method "
"font_set_transform]."

msgid ""
"Sets the font style flags.\n"
"[b]Note:[/b] This value is used for font matching only and will not affect "
"font rendering. Use [method font_set_face_index], [method "
"font_set_variation_coordinates], [method font_set_embolden], or [method "
"font_set_transform] instead."
msgstr ""
"Устанавливает флаги стиля шрифта.\n"
"[b]Примечание:[/b] Это значение используется только для сопоставления шрифтов "
"и не влияет на рендеринг шрифтов. Вместо этого используйте [method "
"font_set_face_index], [method font_set_variation_coordinates], [method "
"font_set_embolden] или [method font_set_transform]."

msgid "Sets the font style name."
msgstr "Задает имя стиля шрифта."

msgid "Sets font subpixel glyph positioning mode."
msgstr "Устанавливает режим позиционирования субпиксельных глифов шрифта."

msgid "Sets font cache texture image data."
msgstr "Устанавливает данные изображения текстуры кэша шрифта."

msgid ""
"Sets 2D transform, applied to the font outlines, can be used for slanting, "
"flipping, and rotating glyphs.\n"
"For example, to simulate italic typeface by slanting, apply the following "
"transform [code]Transform2D(1.0, slant, 0.0, 1.0, 0.0, 0.0)[/code]."
msgstr ""
"Устанавливает 2D-преобразование, применяемое к контурам шрифта, может "
"использоваться для наклона, переворачивания и поворота глифов.\n"
"Например, чтобы имитировать курсивное начертание с помощью наклона, примените "
"следующее преобразование [code]Transform2D(1.0, slant, 0.0, 1.0, 0.0, 0.0)[/"
"code]."

msgid ""
"Sets variation coordinates for the specified font cache entry. See [method "
"font_supported_variation_list] for more info."
msgstr ""
"Устанавливает координаты вариации для указанной записи кэша шрифта. См. "
"[method font_supported_variation_list] для получения дополнительной "
"информации."

msgid ""
"Sets weight (boldness) of the font. A value in the [code]100...999[/code] "
"range, normal font weight is [code]400[/code], bold font weight is [code]700[/"
"code].\n"
"[b]Note:[/b] This value is used for font matching only and will not affect "
"font rendering. Use [method font_set_face_index], [method "
"font_set_variation_coordinates], or [method font_set_embolden] instead."
msgstr ""
"Устанавливает толщину (жирность) шрифта. Значение в диапазоне "
"[code]100...999[/code], нормальная толщина шрифта — [code]400[/code], жирная "
"толщина шрифта — [code]700[/code].\n"
"[b]Примечание:[/b] Это значение используется только для сопоставления шрифтов "
"и не повлияет на рендеринг шрифта. Вместо этого используйте [method "
"font_set_face_index], [method font_set_variation_coordinates] или [method "
"font_set_embolden]."

msgid "Returns the dictionary of the supported OpenType features."
msgstr "Возвращает словарь поддерживаемых функций OpenType."

msgid "Returns the dictionary of the supported OpenType variation coordinates."
msgstr "Возвращает словарь поддерживаемых вариационных координат OpenType."

msgid ""
"Converts a number from the Western Arabic (0..9) to the numeral systems used "
"in [param language].\n"
"If [param language] is omitted, the active locale will be used."
msgstr ""
"Преобразует число из Западно-Арабского (0..9) в числовые системы, "
"используемые в [param language].\n"
"Если [param language] не указан, будет использоваться активная локаль."

msgid "Frees an object created by this [TextServer]."
msgstr "Освобождает объект, созданный этим [TextServer]."

msgid "Returns text server features, see [enum Feature]."
msgstr "Возвращает функции текстового сервера, см. [enum Feature]."

msgid ""
"Returns size of the replacement character (box with character hexadecimal "
"code that is drawn in place of invalid characters)."
msgstr ""
"Возвращает размер заменяющего символа (поле с шестнадцатеричным кодом "
"символа, которое рисуется вместо недопустимых символов)."

msgid "Returns the name of the server interface."
msgstr "Возвращает имя интерфейса сервера."

msgid ""
"Returns default TextServer database (e.g. ICU break iterators and "
"dictionaries)."
msgstr ""
"Возвращает базу данных TextServer по умолчанию (например, итераторы и словари "
"прерываний ICU)."

msgid ""
"Returns default TextServer database (e.g. ICU break iterators and "
"dictionaries) filename."
msgstr ""
"Возвращает имя файла базы данных TextServer по умолчанию (например, итераторы "
"и словари прерываний ICU)."

msgid ""
"Returns TextServer database (e.g. ICU break iterators and dictionaries) "
"description."
msgstr ""
"Возвращает описание базы данных TextServer (например, итераторов и словарей "
"прерываний ICU)."

msgid ""
"Returns [code]true[/code] if [param rid] is valid resource owned by this text "
"server."
msgstr ""
"Возвращает [code]true[/code], если [param rid] является допустимым ресурсом, "
"принадлежащим этому текстовому серверу."

msgid "Returns [code]true[/code] if the server supports a feature."
msgstr "Возвращает [code]true[/code], если сервер поддерживает функцию."

msgid ""
"Returns index of the first string in [param dict] which is visually "
"confusable with the [param string], or [code]-1[/code] if none is found.\n"
"[b]Note:[/b] This method doesn't detect invisible characters, for spoof "
"detection use it in combination with [method spoof_check].\n"
"[b]Note:[/b] Always returns [code]-1[/code] if the server does not support "
"the [constant FEATURE_UNICODE_SECURITY] feature."
msgstr ""
"Возвращает индекс первой строки в [param dict], которую визуально можно "
"спутать с [param string], или [code]-1[/code], если ничего не найдено.\n"
"[b]Примечание:[/b] Этот метод не обнаруживает невидимые символы, для "
"обнаружения подделки используйте его в сочетании с [method spoof_check].\n"
"[b]Примечание:[/b] Всегда возвращает [code]-1[/code], если сервер не "
"поддерживает функцию [constant FEATURE_UNICODE_SECURITY]."

msgid "Returns [code]true[/code] if locale is right-to-left."
msgstr "Возвращает [code]true[/code], если язык написания — справа налево."

msgid ""
"Returns [code]true[/code] if [param string] is a valid identifier.\n"
"If the text server supports the [constant FEATURE_UNICODE_IDENTIFIERS] "
"feature, a valid identifier must:\n"
"- Conform to normalization form C.\n"
"- Begin with a Unicode character of class XID_Start or [code]\"_\"[/code].\n"
"- May contain Unicode characters of class XID_Continue in the other "
"positions.\n"
"- Use UAX #31 recommended scripts only (mixed scripts are allowed).\n"
"If the [constant FEATURE_UNICODE_IDENTIFIERS] feature is not supported, a "
"valid identifier must:\n"
"- Begin with a Unicode character of class XID_Start or [code]\"_\"[/code].\n"
"- May contain Unicode characters of class XID_Continue in the other positions."
msgstr ""
"Возвращает [code]true[/code], если [param string] является допустимым "
"идентификатором.\n"
"Если текстовый сервер поддерживает функцию [constant "
"FEATURE_UNICODE_IDENTIFIERS], допустимый идентификатор должен:\n"
"- Соответствовать форме нормализации C.\n"
"- Начинаться с символа Unicode класса XID_Start или [code]\"_\"[/code].\n"
"- Может содержать символы Unicode класса XID_Continue в других позициях.\n"
"- Использовать только рекомендуемые сценарии UAX #31 (смешанные сценарии "
"разрешены).\n"
"Если функция [constant FEATURE_UNICODE_IDENTIFIERS] не поддерживается, "
"допустимый идентификатор должен:\n"
"- Начинаться с символа Unicode класса XID_Start или [code]\"_\"[/code].\n"
"- Может содержать символы Unicode класса XID_Continue в других позициях."

msgid ""
"Returns [code]true[/code] if the given code point is a valid letter, i.e. it "
"belongs to the Unicode category \"L\"."
msgstr ""
"Возвращает [code]true[/code], если указанная кодовая точка является "
"допустимой буквой, т. е. принадлежит к категории Unicode «L»."

msgid ""
"Loads optional TextServer database (e.g. ICU break iterators and "
"dictionaries).\n"
"[b]Note:[/b] This function should be called before any other TextServer "
"functions used, otherwise it won't have any effect."
msgstr ""
"Загружает необязательную базу данных TextServer (например, итераторы "
"прерываний ICU и словари).\n"
"[b]Примечание:[/b] Эту функцию следует вызывать до использования любых других "
"функций TextServer, в противном случае она не даст никакого эффекта."

msgid ""
"Converts readable feature, variation, script, or language name to OpenType "
"tag."
msgstr ""
"Преобразует читаемое название функции, варианта, сценария или языка в тег "
"OpenType."

msgid ""
"Converts [param number] from the numeral systems used in [param language] to "
"Western Arabic (0..9)."
msgstr ""
"Преобразует [param number] из систем счисления, используемых в [param "
"language], в Западно-Арабскую систему (0..9)."

msgid "Default implementation of the BiDi algorithm override function."
msgstr "Реализация функции переопределения алгоритма BiDi по умолчанию."

msgid "Returns percent sign used in the [param language]."
msgstr "Возвращает знак процента, используемый в [param language]."

msgid ""
"Saves optional TextServer database (e.g. ICU break iterators and "
"dictionaries) to the file.\n"
"[b]Note:[/b] This function is used by during project export, to include "
"TextServer database."
msgstr ""
"Сохраняет необязательную базу данных TextServer (например, итераторы и "
"словари прерываний ICU) в файл.\n"
"[b]Примечание:[/b] Эта функция используется во время экспорта проекта для "
"включения базы данных TextServer."

msgid "Returns the number of uniform text runs in the buffer."
msgstr "Возвращает количество однородных текстовых фрагментов в буфере."

msgid "Returns the direction of the [param index] text run (in visual order)."
msgstr ""
"Возвращает направление выполнения текста [param index] (в визуальном порядке)."

msgid "Returns the font RID of the [param index] text run (in visual order)."
msgstr ""
"Возвращает RID шрифта текстового потока [param index] (в визуальном порядке)."

msgid "Returns the font size of the [param index] text run (in visual order)."
msgstr ""
"Возвращает размер шрифта текстового фрагмента [param index] (в визуальном "
"порядке)."

msgid "Returns the language of the [param index] text run (in visual order)."
msgstr "Возвращает язык текста [param index] (в визуальном порядке)."

msgid ""
"Returns the embedded object of the [param index] text run (in visual order)."
msgstr ""
"Возвращает внедренный объект текстового потока [param index] (в визуальном "
"порядке)."

msgid ""
"Returns the source text range of the [param index] text run (in visual order)."
msgstr ""
"Возвращает диапазон исходного текста для текстового прогона [param index] (в "
"визуальном порядке)."

msgid "Returns the source text of the [param index] text run (in visual order)."
msgstr ""
"Возвращает исходный текст текстового прогона [param index] (в визуальном "
"порядке)."

msgid ""
"Returns number of text spans added using [method shaped_text_add_string] or "
"[method shaped_text_add_object]."
msgstr ""
"Возвращает количество текстовых диапазонов, добавленных с помощью [method "
"shaped_text_add_string] или [method shaped_text_add_object]."

msgid "Returns text embedded object key."
msgstr "Возвращает текстовый встроенный ключ объекта."

msgid "Returns text span metadata."
msgstr "Возвращает метаданные текстового диапазона."

msgid "Returns the text span embedded object key."
msgstr "Возвращает встроенный ключ объекта текстового диапазона."

msgid "Returns the text span source text."
msgstr "Возвращает исходный текст диапазона текста."

msgid ""
"Returns the text buffer source text, including object replacement characters."
msgstr ""
"Возвращает исходный текст текстового буфера, включая символы замены объектов."

msgid ""
"Changes text span font, font size, and OpenType features, without changing "
"the text."
msgstr ""
"Изменяет шрифт текстового диапазона, размер шрифта и функции OpenType, не "
"изменяя текст."

msgid "Adds text span and font to draw it to the text buffer."
msgstr ""
"Добавляет текстовый диапазон и шрифт для его отображения в текстовом буфере."

msgid "Clears text buffer (removes text and inline objects)."
msgstr "Очищает текстовый буфер (удаляет текст и встроенные объекты)."

msgid "Returns composite character position closest to the [param pos]."
msgstr "Возвращает позицию составного символа, ближайшую к [param pos]."

msgid ""
"Draw shaped text into a canvas item at a given position, with [param color]. "
"[param pos] specifies the leftmost point of the baseline (for horizontal "
"layout) or topmost point of the baseline (for vertical layout). If [param "
"oversampling] is greater than zero, it is used as font oversampling factor, "
"otherwise viewport oversampling settings are used.\n"
"[param clip_l] and [param clip_r] are offsets relative to [param pos], going "
"to the right in horizontal layout and downward in vertical layout. If [param "
"clip_l] is not negative, glyphs starting before the offset are clipped. If "
"[param clip_r] is not negative, glyphs ending after the offset are clipped."
msgstr ""
"Нарисуйте фигурный текст на холсте в заданном месте, используя [param color]. "
"[param pos] указывает самую левую точку базовой линии (для горизонтального "
"расположения) или самую верхнюю точку базовой линии (для вертикального "
"расположения). Если [param oversampling] больше нуля, он используется как "
"коэффициент передискретизации шрифта, в противном случае используются "
"настройки передискретизации области просмотра.\n"
"[param clip_l] и[param clip_r] являются смещениями относительно [param pos], "
"направленными вправо при горизонтальном расположении и вниз при вертикальном "
"расположении. Если [param clip_l] не отрицателен, глифы, начинающиеся до "
"смещения, обрезаются. Если [param clip_r] не является отрицательным, глифы, "
"заканчивающиеся после смещения, обрезаются."

msgid ""
"Draw the outline of the shaped text into a canvas item at a given position, "
"with [param color]. [param pos] specifies the leftmost point of the baseline "
"(for horizontal layout) or topmost point of the baseline (for vertical "
"layout). If [param oversampling] is greater than zero, it is used as font "
"oversampling factor, otherwise viewport oversampling settings are used.\n"
"[param clip_l] and [param clip_r] are offsets relative to [param pos], going "
"to the right in horizontal layout and downward in vertical layout. If [param "
"clip_l] is not negative, glyphs starting before the offset are clipped. If "
"[param clip_r] is not negative, glyphs ending after the offset are clipped."
msgstr ""
"Нарисуйте контур сформированного текста на холсте в заданной позиции, "
"используя [param color]. [param pos] указывает самую левую точку базовой "
"линии (для горизонтального расположения) или самую верхнюю точку базовой "
"линии (для вертикального расположения). Если [param oversampling] больше "
"нуля, он используется как коэффициент передискретизации шрифта, в противном "
"случае используются настройки передискретизации области просмотра.\n"
"[param clip_l] и [param clip_r] являются смещениями относительно [param pos], "
"направленными вправо при горизонтальном расположении и вниз при вертикальном "
"расположении. Если [param clip_l] не отрицателен, глифы, начинающиеся до "
"смещения, обрезаются. Если [param clip_r] не является отрицательным, глифы, "
"заканчивающиеся после смещения, обрезаются."

msgid "Adjusts text width to fit to specified width, returns new text width."
msgstr ""
"Изменяет ширину текста до указанной ширины, возвращает новую ширину текста."

msgid ""
"Returns the text ascent (number of pixels above the baseline for horizontal "
"layout or to the left of baseline for vertical).\n"
"[b]Note:[/b] Overall ascent can be higher than font ascent, if some glyphs "
"are displaced from the baseline."
msgstr ""
"Возвращает подъем текста (количество пикселей над базовой линией для "
"горизонтальной компоновки или слева от базовой линии для вертикальной).\n"
"[b]Примечание:[/b] Общий подъем может быть выше подъема шрифта, если "
"некоторые глифы смещены от базовой линии."

msgid ""
"Returns shapes of the carets corresponding to the character offset [param "
"position] in the text. Returned caret shape is 1 pixel wide rectangle."
msgstr ""
"Возвращает формы кареток, соответствующие смещению символа [param position] в "
"тексте. Возвращаемая форма каретки — прямоугольник шириной в 1 пиксель."

msgid "Returns array of the composite character boundaries."
msgstr "Возвращает массив границ составных символов."

msgid "Returns ellipsis character used for text clipping."
msgstr "Возвращает символ многоточия, используемый для обрезки текста."

msgid ""
"Returns custom punctuation character list, used for word breaking. If set to "
"empty string, server defaults are used."
msgstr ""
"Возвращает список пользовательских знаков препинания, используемых для "
"разбиения слов. Если задана пустая строка, используются значения по умолчанию "
"сервера."

msgid ""
"Returns the text descent (number of pixels below the baseline for horizontal "
"layout or to the right of baseline for vertical).\n"
"[b]Note:[/b] Overall descent can be higher than font descent, if some glyphs "
"are displaced from the baseline."
msgstr ""
"Возвращает спуск текста (количество пикселей ниже базовой линии для "
"горизонтальной компоновки или справа от базовой линии для вертикальной).\n"
"[b]Примечание:[/b] Общий спуск может быть выше спуска шрифта, если некоторые "
"глифы смещены от базовой линии."

msgid "Returns direction of the text."
msgstr "Возвращает направление текста."

msgid "Returns dominant direction of in the range of text."
msgstr "Возвращает доминирующее направление в диапазоне текста."

msgid "Returns number of glyphs in the ellipsis."
msgstr "Возвращает количество глифов в многоточии."

msgid "Returns array of the glyphs in the ellipsis."
msgstr "Возвращает массив глифов в многоточии."

msgid "Returns position of the ellipsis."
msgstr "Возвращает положение многоточия."

msgid "Returns number of glyphs in the buffer."
msgstr "Возвращает количество глифов в буфере."

msgid "Returns an array of glyphs in the visual order."
msgstr "Возвращает массив глифов в визуальном порядке."

msgid ""
"Returns composite character's bounds as offsets from the start of the line."
msgstr "Возвращает границы составного символа как смещения от начала строки."

msgid "Returns direction of the text, inferred by the BiDi algorithm."
msgstr "Возвращает направление текста, выведенное алгоритмом BiDi."

msgid "Breaks text to the lines and returns character ranges for each line."
msgstr ""
"Разбивает текст на строки и возвращает диапазоны символов для каждой строки."

msgid ""
"Breaks text to the lines and columns. Returns character ranges for each "
"segment."
msgstr ""
"Разбивает текст на строки и столбцы. Возвращает диапазоны символов для "
"каждого сегмента."

msgid "Returns the glyph index of the inline object."
msgstr "Возвращает индекс глифа встроенного объекта."

msgid "Returns the character range of the inline object."
msgstr "Возвращает диапазон символов встроенного объекта."

msgid "Returns text orientation."
msgstr "Возвращает ориентацию текста."

msgid "Returns the parent buffer from which the substring originates."
msgstr "Возвращает родительский буфер, из которого взята подстрока."

msgid ""
"Returns [code]true[/code] if text buffer is configured to display control "
"characters."
msgstr ""
"Возвращает [code]true[/code], если текстовый буфер настроен для отображения "
"управляющих символов."

msgid ""
"Returns [code]true[/code] if text buffer is configured to display hexadecimal "
"codes in place of invalid characters.\n"
"[b]Note:[/b] If set to [code]false[/code], nothing is displayed in place of "
"invalid characters."
msgstr ""
"Возвращает [code]true[/code], если текстовый буфер настроен на отображение "
"шестнадцатеричных кодов вместо недопустимых символов.\n"
"[b]Примечание:[/b] Если установлено значение [code]false[/code], вместо "
"недопустимых символов ничего не отображается."

msgid "Returns substring buffer character range in the parent buffer."
msgstr "Возвращает диапазон символов буфера подстроки в родительском буфере."

msgid "Returns selection rectangles for the specified character range."
msgstr "Возвращает прямоугольники выделения для указанного диапазона символов."

msgid "Returns size of the text."
msgstr "Возвращает размер текста."

msgid "Returns extra spacing added between glyphs or lines in pixels."
msgstr ""
"Возвращает дополнительный интервал, добавленный между глифами или линиями в "
"пикселях."

msgid "Returns the position of the overrun trim."
msgstr "Возвращает положение обрезки выхода за пределы."

msgid ""
"Breaks text into words and returns array of character ranges. Use [param "
"grapheme_flags] to set what characters are used for breaking."
msgstr ""
"Разбивает текст на слова и возвращает массив диапазонов символов. Используйте "
"[param grapheme_flags], чтобы задать, какие символы используются для "
"разбиения."

msgid ""
"Returns [code]true[/code] if text buffer contains any visible characters."
msgstr ""
"Возвращает [code]true[/code], если текстовый буфер содержит какие-либо "
"видимые символы."

msgid ""
"Returns grapheme index at the specified pixel offset at the baseline, or "
"[code]-1[/code] if none is found."
msgstr ""
"Возвращает индекс графемы с указанным смещением пикселей относительно базовой "
"линии или [code]-1[/code], если ничего не найдено."

msgid "Returns [code]true[/code] if buffer is successfully shaped."
msgstr "Возвращает [code]true[/code], если буфер успешно сформирован."

msgid "Returns composite character end position closest to the [param pos]."
msgstr ""
"Возвращает конечную позицию составного символа, ближайшую к [param pos]."

msgid "Returns grapheme end position closest to the [param pos]."
msgstr "Возвращает конечную позицию графемы, ближайшую к [param pos]."

msgid "Trims text if it exceeds the given width."
msgstr "Обрезает текст, если он превышает заданную ширину."

msgid "Returns composite character start position closest to the [param pos]."
msgstr ""
"Возвращает начальную позицию составного символа, ближайшую к [param pos]."

msgid "Returns grapheme start position closest to the [param pos]."
msgstr "Возвращает начальную позицию графемы, ближайшую к [param pos]."

msgid "Sets ellipsis character used for text clipping."
msgstr "Устанавливает символ многоточия, используемый для обрезки текста."

msgid ""
"Sets custom punctuation character list, used for word breaking. If set to "
"empty string, server defaults are used."
msgstr ""
"Задает список пользовательских знаков препинания, используемых для разрыва "
"слов. Если задана пустая строка, используются значения по умолчанию сервера."

msgid ""
"Sets desired text direction. If set to [constant DIRECTION_AUTO], direction "
"will be detected based on the buffer contents and current locale.\n"
"[b]Note:[/b] Direction is ignored if server does not support [constant "
"FEATURE_BIDI_LAYOUT] feature (supported by [TextServerAdvanced])."
msgstr ""
"Устанавливает желаемое направление текста. Если установлено значение "
"[constant DIRECTION_AUTO], направление будет определяться на основе "
"содержимого буфера и текущей локали.\n"
"[b]Примечание:[/b] Направление игнорируется, если сервер не поддерживает "
"функцию [constant FEATURE_BIDI_LAYOUT] (поддерживается [TextServerAdvanced])."

msgid ""
"Sets desired text orientation.\n"
"[b]Note:[/b] Orientation is ignored if server does not support [constant "
"FEATURE_VERTICAL_LAYOUT] feature (supported by [TextServerAdvanced])."
msgstr ""
"Устанавливает желаемую ориентацию текста.\n"
"[b]Примечание:[/b] Ориентация игнорируется, если сервер не поддерживает "
"функцию [constant FEATURE_VERTICAL_LAYOUT] (поддерживается "
"[TextServerAdvanced])."

msgid "If set to [code]true[/code] text buffer will display control characters."
msgstr ""
"Если установлено значение [code]true[/code], текстовый буфер будет отображать "
"управляющие символы."

msgid ""
"If set to [code]true[/code] text buffer will display invalid characters as "
"hexadecimal codes, otherwise nothing is displayed."
msgstr ""
"Если установлено значение [code]true[/code], текстовый буфер будет отображать "
"недопустимые символы в виде шестнадцатеричных кодов, в противном случае "
"ничего не отображается."

msgid "Sets extra spacing added between glyphs or lines in pixels."
msgstr ""
"Устанавливает дополнительный интервал между глифами или линиями в пикселях."

msgid ""
"Shapes buffer if it's not shaped. Returns [code]true[/code] if the string is "
"shaped successfully.\n"
"[b]Note:[/b] It is not necessary to call this function manually, buffer will "
"be shaped automatically as soon as any of its output data is requested."
msgstr ""
"Формирует буфер, если он не сформирован. Возвращает [code]true[/code], если "
"строка сформирована успешно.\n"
"[b]Примечание:[/b] Нет необходимости вызывать эту функцию вручную, буфер "
"будет сформирован автоматически, как только будут запрошены какие-либо его "
"выходные данные."

msgid "Returns text glyphs in the logical order."
msgstr "Возвращает текстовые глифы в логическом порядке."

msgid ""
"Returns text buffer for the substring of the text in the [param shaped] text "
"buffer (including inline objects)."
msgstr ""
"Возвращает текстовый буфер для подстроки текста в текстовом буфере [param "
"shaped] (включая встроенные объекты)."

msgid "Aligns shaped text to the given tab-stops."
msgstr "Выравнивает сформированный текст по заданным позициям табуляции."

msgid ""
"Returns [code]true[/code] if [param string] is likely to be an attempt at "
"confusing the reader.\n"
"[b]Note:[/b] Always returns [code]false[/code] if the server does not support "
"the [constant FEATURE_UNICODE_SECURITY] feature."
msgstr ""
"Возвращает [code]true[/code], если [param string] скорее всего является "
"попыткой запутать читателя.\n"
"[b]Примечание:[/b] Всегда возвращает [code]false[/code], если сервер не "
"поддерживает функцию [constant FEATURE_UNICODE_SECURITY]."

msgid ""
"Returns array of the composite character boundaries.\n"
"[codeblock]\n"
"var ts = TextServerManager.get_primary_interface()\n"
"print(ts.string_get_character_breaks(\"Test ❤️‍🔥 Test\")) # Prints [1, 2, 3, "
"4, 5, 9, 10, 11, 12, 13, 14]\n"
"[/codeblock]"
msgstr ""
"Возвращает массив границ составных символов.\n"
"[codeblock]\n"
"var ts = TextServerManager.get_primary_interface()\n"
"print(ts.string_get_character_breaks(\"Test ❤️‍🔥 Test\")) # Prints [1, 2, 3, "
"4, 5, 9, 10, 11, 12, 13, 14]\n"
"[/codeblock]"

msgid ""
"Returns an array of the word break boundaries. Elements in the returned array "
"are the offsets of the start and end of words. Therefore the length of the "
"array is always even.\n"
"When [param chars_per_line] is greater than zero, line break boundaries are "
"returned instead.\n"
"[codeblock]\n"
"var ts = TextServerManager.get_primary_interface()\n"
"# Corresponds to the substrings \"The\", \"Godot\", \"Engine\", and \"4\".\n"
"print(ts.string_get_word_breaks(\"The Godot Engine, 4\")) # Prints [0, 3, 4, "
"9, 10, 16, 18, 19]\n"
"# Corresponds to the substrings \"The\", \"Godot\", \"Engin\", and \"e, 4\".\n"
"print(ts.string_get_word_breaks(\"The Godot Engine, 4\", \"en\", 5)) # Prints "
"[0, 3, 4, 9, 10, 15, 15, 19]\n"
"# Corresponds to the substrings \"The Godot\" and \"Engine, 4\".\n"
"print(ts.string_get_word_breaks(\"The Godot Engine, 4\", \"en\", 10)) # "
"Prints [0, 9, 10, 19]\n"
"[/codeblock]"
msgstr ""
"Возвращает массив границ разрывов слов. Элементы в возвращаемом массиве "
"являются смещениями начала и конца слов. Поэтому длина массива всегда "
"четная.\n"
"Когда [param chars_per_line] больше нуля, вместо этого возвращаются границы "
"разрывов строк.\n"
"[codeblock]\n"
"var ts = TextServerManager.get_primary_interface()\n"
"# Соответствует подстрокам \"The\", \"Godot\", \"Engine\", и \"4\".\n"
"print(ts.string_get_word_breaks(\"The Godot Engine, 4\")) # Prints [0, 3, 4, "
"9, 10, 16, 18, 19]\n"
"# Соответствует подстрокам \"The\", \"Godot\", \"Engin\", и\"e, 4\".\n"
"print(ts.string_get_word_breaks(\"The Godot Engine, 4\", \"en\", 5)) # Prints "
"[0, 3, 4, 9, 10, 15, 15, 19]\n"
"# Соответствует подстрокам \"The Godot\" и\"Engine, 4\".\n"
"print(ts.string_get_word_breaks(\"The Godot Engine, 4\", \"en\", 10)) # "
"Prints [0, 9, 10, 19]\n"
"[/codeblock]"

msgid ""
"Returns the string converted to lowercase.\n"
"[b]Note:[/b] Casing is locale dependent and context sensitive if server "
"support [constant FEATURE_CONTEXT_SENSITIVE_CASE_CONVERSION] feature "
"(supported by [TextServerAdvanced]).\n"
"[b]Note:[/b] The result may be longer or shorter than the original."
msgstr ""
"Возвращает строку, преобразованную в нижний регистр.\n"
"[b]Примечание:[/b] Регистр зависит от локали и контекста, если сервер "
"поддерживает функцию [constant FEATURE_CONTEXT_SENSITIVE_CASE_CONVERSION] "
"(поддерживается [TextServerAdvanced]).\n"
"[b]Примечание:[/b] Результат может быть длиннее или короче оригинала."

msgid ""
"Returns the string converted to title case.\n"
"[b]Note:[/b] Casing is locale dependent and context sensitive if server "
"support [constant FEATURE_CONTEXT_SENSITIVE_CASE_CONVERSION] feature "
"(supported by [TextServerAdvanced]).\n"
"[b]Note:[/b] The result may be longer or shorter than the original."
msgstr ""
"Возвращает строку, преобразованную в заглавные буквы.\n"
"[b]Примечание:[/b] Регистр зависит от локали и контекста, если сервер "
"поддерживает функцию [constant FEATURE_CONTEXT_SENSITIVE_CASE_CONVERSION] "
"(поддерживается [TextServerAdvanced]).\n"
"[b]Примечание:[/b] Результат может быть длиннее или короче оригинала."

msgid ""
"Returns the string converted to uppercase.\n"
"[b]Note:[/b] Casing is locale dependent and context sensitive if server "
"support [constant FEATURE_CONTEXT_SENSITIVE_CASE_CONVERSION] feature "
"(supported by [TextServerAdvanced]).\n"
"[b]Note:[/b] The result may be longer or shorter than the original."
msgstr ""
"Возвращает строку, преобразованную в верхний регистр.\n"
"[b]Примечание:[/b] Регистр зависит от локали и контекста, если сервер "
"поддерживает функцию [constant FEATURE_CONTEXT_SENSITIVE_CASE_CONVERSION] "
"(поддерживается [TextServerAdvanced]).\n"
"[b]Примечание:[/b] Результат может быть длиннее или короче оригинала."

msgid ""
"Strips diacritics from the string.\n"
"[b]Note:[/b] The result may be longer or shorter than the original."
msgstr ""
"Удаляет диакритические знаки из строки.\n"
"[b]Примечание:[/b] Результат может быть длиннее или короче оригинала."

msgid ""
"Converts OpenType tag to readable feature, variation, script, or language "
"name."
msgstr ""
"Преобразует тег OpenType в читаемое название функции, варианта, сценария или "
"языка."

msgid "Font glyphs are rasterized as 1-bit bitmaps."
msgstr "Глифы шрифта растрируются как 1-битные битовые изображения."

msgid "Font glyphs are rasterized as 8-bit grayscale anti-aliased bitmaps."
msgstr ""
"Глифы шрифта растрируются как 8-битные сглаженные растровые изображения в "
"оттенках серого."

msgid ""
"Font glyphs are rasterized for LCD screens.\n"
"LCD subpixel layout is determined by the value of the [member "
"ProjectSettings.gui/theme/lcd_subpixel_layout] setting.\n"
"LCD subpixel anti-aliasing mode is suitable only for rendering horizontal, "
"unscaled text in 2D."
msgstr ""
"Шрифтовые глифы растрируются для ЖК-экранов.\n"
"Макет субпикселей ЖК-дисплея определяется значением параметра [member "
"ProjectSettings.gui/theme/lcd_subpixel_layout].\n"
"Режим сглаживания субпикселей ЖК-дисплея подходит только для отображения "
"горизонтального немасштабированного текста в 2D."

msgid ""
"Unknown or unsupported subpixel layout, LCD subpixel antialiasing is disabled."
msgstr ""
"Неизвестная или неподдерживаемая компоновка субпикселей, сглаживание "
"субпикселей ЖК-дисплея отключено."

msgid "Horizontal RGB subpixel layout."
msgstr "Горизонтальная компоновка субпикселей RGB."

msgid "Horizontal BGR subpixel layout."
msgstr "Горизонтальная компоновка субпикселей BGR."

msgid "Vertical RGB subpixel layout."
msgstr "Вертикальная компоновка субпикселей RGB."

msgid "Vertical BGR subpixel layout."
msgstr "Вертикальная компоновка субпикселей BGR."

msgid "Represents the size of the [enum FontLCDSubpixelLayout] enum."
msgstr "Представляет размер перечисления [enum FontLCDSubpixelLayout]."

msgid "Text direction is determined based on contents and current locale."
msgstr "Направление текста определяется на основе содержимого и текущего языка."

msgid "Text is written from left to right."
msgstr "Текст пишется слева направо."

msgid "Text is written from right to left."
msgstr "Текст пишется справа налево."

msgid ""
"Text writing direction is the same as base string writing direction. Used for "
"BiDi override only."
msgstr ""
"Направление написания текста совпадает с направлением написания базовой "
"строки. Используется только для переопределения BiDi."

msgid "Text is written horizontally."
msgstr "Текст написан горизонтально."

msgid ""
"Left to right text is written vertically from top to bottom.\n"
"Right to left text is written vertically from bottom to top."
msgstr ""
"Текст слева направо пишется вертикально сверху вниз.\n"
"Текст справа налево пишется вертикально снизу вверх."

msgid "Do not justify text."
msgstr "Не выравнивайте текст по ширине."

msgid "Justify text by adding and removing kashidas."
msgstr "Выравнивание текста по ширине путем добавления и удаления кашида."

msgid "Justify text by changing width of the spaces between the words."
msgstr "Выровняйте текст по ширине, изменив ширину пробелов между словами."

msgid "Remove trailing and leading spaces from the justified text."
msgstr "Удалите конечные и начальные пробелы из выровненного текста."

msgid "Only apply justification to the part of the text after the last tab."
msgstr ""
"Выравнивание следует применять только к части текста после последней "
"табуляции."

msgid "Apply justification to the trimmed line with ellipsis."
msgstr "Примените выравнивание к обрезанной строке с многоточием."

msgid "Do not apply justification to the last line of the paragraph."
msgstr "Не применяйте выравнивание к последней строке абзаца."

msgid ""
"Do not apply justification to the last line of the paragraph with visible "
"characters (takes precedence over [constant JUSTIFICATION_SKIP_LAST_LINE])."
msgstr ""
"Не применять выравнивание к последней строке абзаца с видимыми символами "
"(имеет приоритет над [constant JUSTIFICATION_SKIP_LAST_LINE])."

msgid ""
"Always apply justification to the paragraphs with a single line ([constant "
"JUSTIFICATION_SKIP_LAST_LINE] and [constant "
"JUSTIFICATION_SKIP_LAST_LINE_WITH_VISIBLE_CHARS] are ignored)."
msgstr ""
"Всегда применяйте выравнивание к абзацам с одной строкой ([constant "
"JUSTIFICATION_SKIP_LAST_LINE] и [constant "
"JUSTIFICATION_SKIP_LAST_LINE_WITH_VISIBLE_CHARS] игнорируются)."

msgid "Autowrap is disabled."
msgstr "Автообертывание отключено."

msgid ""
"Wraps the text inside the node's bounding rectangle by allowing to break "
"lines at arbitrary positions, which is useful when very limited space is "
"available."
msgstr ""
"Оборачивает текст внутри ограничивающего прямоугольника узла, позволяя "
"разрывать строки в произвольных местах, что полезно, когда доступно очень "
"ограниченное пространство."

msgid ""
"Wraps the text inside the node's bounding rectangle by soft-breaking between "
"words."
msgstr ""
"Оборачивает текст внутри ограничивающего прямоугольника узла, используя "
"мягкое разделение между словами."

msgid ""
"Behaves similarly to [constant AUTOWRAP_WORD], but force-breaks a word if "
"that single word does not fit in one line."
msgstr ""
"Действует аналогично [constant AUTOWRAP_WORD], но принудительно разбивает "
"слово, если это отдельное слово не помещается в одну строку."

msgid "Do not break the line."
msgstr "Не прерывайте линию."

msgid ""
"Break the line at the line mandatory break characters (e.g. [code]\"\\n\"[/"
"code])."
msgstr ""
"Разрыв строки выполняется в местах, где присутствуют обязательные символы "
"разрыва строки (например, [code]\"\\n\"[/code])."

msgid "Break the line between the words."
msgstr "Разорвите границу между словами."

msgid "Break the line between any unconnected graphemes."
msgstr "Разорвите линию между любыми не связанными между собой графемами."

msgid ""
"Should be used only in conjunction with [constant BREAK_WORD_BOUND], break "
"the line between any unconnected graphemes, if it's impossible to break it "
"between the words."
msgstr ""
"Следует использовать только в сочетании с [constant BREAK_WORD_BOUND], "
"разрывать линию между любыми не связанными между собой графемами, если разрыв "
"между словами невозможен."

msgid ""
"Use [code]BREAK_TRIM_START_EDGE_SPACES | BREAK_TRIM_END_EDGE_SPACES[/code] "
"instead."
msgstr ""
"Вместо этого используйте [code]BREAK_TRIM_START_EDGE_SPACES | "
"BREAK_TRIM_END_EDGE_SPACES[/code]."

msgid "Remove edge spaces from the broken line segments."
msgstr "Удалите краевые пробелы из ломаных отрезков."

msgid ""
"Subtract first line indentation width from all lines after the first one."
msgstr "Вычтите ширину отступа первой строки из ширины всех строк после первой."

msgid ""
"Remove spaces and line break characters from the start of broken line "
"segments.\n"
"E.g, after line breaking, the second segment of the following text "
"[code]test  \\n  next[/code], is [code]next[/code] if the flag is set, and "
"[code]  next[/code] if it is not."
msgstr ""
"Удалите пробелы и символы переноса строки из начала сегментов разорванной "
"строки.\n"
"Например, после переноса строки второй сегмент следующего текста [code]test "
"\\n next[/code] будет [code]next[/code] если флаг установлен, и [code] next[/"
"code], если он не установлен."

msgid ""
"Remove spaces and line break characters from the end of broken line "
"segments.\n"
"E.g, after line breaking, the first segment of the following text [code]test  "
"\\n  next[/code], is [code]test[/code] if the flag is set, and [code]test  "
"\\n[/code] if it is not."
msgstr ""
"Удалите пробелы и символы переноса строки из конца разорванных сегментов "
"строки.\n"
"Например, после переноса строки первый сегмент следующего текста [code]test "
"\\n next[/code] будет [code]test[/code] если флаг установлен, и [code]test "
"\\n[/code], если он не установлен."

msgid ""
"Trims text before the shaping. e.g, increasing [member "
"Label.visible_characters] or [member RichTextLabel.visible_characters] value "
"is visually identical to typing the text.\n"
"[b]Note:[/b] In this mode, trimmed text is not processed at all. It is not "
"accounted for in line breaking and size calculations."
msgstr ""
"Обрезает текст перед формированием. Например, увеличение значения [member "
"Label.visible_characters] или [member RichTextLabel.visible_characters] "
"визуально идентично вводу текста.\n"
"[b]Примечание:[/b] В этом режиме обрезанный текст вообще не обрабатывается. "
"Он не учитывается при переносе строк и расчетах размера."

msgid ""
"Displays glyphs that are mapped to the first [member "
"Label.visible_characters] or [member RichTextLabel.visible_characters] "
"characters from the beginning of the text."
msgstr ""
"Отображает глифы, сопоставленные с первыми символами [member "
"Label.visible_characters] или [member RichTextLabel.visible_characters] с "
"начала текста."

msgid ""
"Displays [member Label.visible_ratio] or [member RichTextLabel.visible_ratio] "
"glyphs, starting from the left or from the right, depending on [member "
"Control.layout_direction] value."
msgstr ""
"Отображает глифы [member Label.visible_ratio] или [member "
"RichTextLabel.visible_ratio], начиная слева или справа, в зависимости от "
"значения [member Control.layout_direction]."

msgid ""
"Displays [member Label.visible_ratio] or [member RichTextLabel.visible_ratio] "
"glyphs, starting from the left."
msgstr ""
"Отображает глифы [member Label.visible_ratio] или [member "
"RichTextLabel.visible_ratio], начиная слева."

msgid ""
"Displays [member Label.visible_ratio] or [member RichTextLabel.visible_ratio] "
"glyphs, starting from the right."
msgstr ""
"Отображает глифы [member Label.visible_ratio] или [member "
"RichTextLabel.visible_ratio], начиная справа."

msgid "No text trimming is performed."
msgstr "Обрезка текста не производится."

msgid "Trims the text per character."
msgstr "Обрезает текст по символам."

msgid "Trims the text per word."
msgstr "Обрезает текст по словам."

msgid ""
"Trims the text per character and adds an ellipsis to indicate that parts are "
"hidden if trimmed text is 6 characters or longer."
msgstr ""
"Обрезает текст по символам и добавляет многоточие, чтобы указать, что части "
"скрыты, если обрезанный текст содержит 6 символов или длиннее."

msgid ""
"Trims the text per word and adds an ellipsis to indicate that parts are "
"hidden if trimmed text is 6 characters or longer."
msgstr ""
"Обрезает текст по словам и добавляет многоточие, чтобы указать, что части "
"скрыты, если обрезанный текст содержит 6 символов или длиннее."

msgid ""
"Trims the text per character and adds an ellipsis to indicate that parts are "
"hidden regardless of trimmed text length."
msgstr ""
"Обрезает текст по символам и добавляет многоточие, чтобы указать, что части "
"скрыты независимо от длины обрезанного текста."

msgid ""
"Trims the text per word and adds an ellipsis to indicate that parts are "
"hidden regardless of trimmed text length."
msgstr ""
"Обрезает текст по словам и добавляет многоточие, чтобы указать, что части "
"скрыты независимо от длины обрезанного текста."

msgid "No trimming is performed."
msgstr "Обрезка не производится."

msgid "Trims the text when it exceeds the given width."
msgstr "Обрезает текст, если он превышает заданную ширину."

msgid "Trims the text per word instead of per grapheme."
msgstr "Обрезает текст по словам, а не по графемам."

msgid "Determines whether an ellipsis should be added at the end of the text."
msgstr "Определяет, следует ли добавлять многоточие в конце текста."

msgid ""
"Determines whether the ellipsis at the end of the text is enforced and may "
"not be hidden."
msgstr ""
"Определяет, является ли многоточие в конце текста обязательным и не может "
"быть скрыто."

msgid ""
"Accounts for the text being justified before attempting to trim it (see [enum "
"JustificationFlag])."
msgstr ""
"Учитывает выравнивание текста перед попыткой его обрезки (см. [enum "
"JustificationFlag])."

msgid "Grapheme is supported by the font, and can be drawn."
msgstr "Графема поддерживается шрифтом и может быть нарисована."

msgid "Grapheme is part of right-to-left or bottom-to-top run."
msgstr "Графема является частью текста, идущего справа налево или снизу вверх."

msgid ""
"Grapheme is not part of source text, it was added by justification process."
msgstr ""
"Графема не является частью исходного текста, она была добавлена в процессе "
"выравнивания."

msgid "Grapheme is whitespace."
msgstr "Графема - пробел."

msgid "Grapheme is mandatory break point (e.g. [code]\"\\n\"[/code])."
msgstr ""
"Графема является обязательной точкой останова (например, [code]\"\\n\"[/"
"code])."

msgid "Grapheme is optional break point (e.g. space)."
msgstr "Графема — необязательная точка разрыва (например, пробел)."

msgid "Grapheme is the tabulation character."
msgstr "Графема — символ табуляции."

msgid "Grapheme is kashida."
msgstr "Графема - кашида."

msgid "Grapheme is punctuation character."
msgstr "Графема — знак препинания."

msgid "Grapheme is underscore character."
msgstr "Графема — символ подчеркивания."

msgid ""
"Grapheme is connected to the previous grapheme. Breaking line before this "
"grapheme is not safe."
msgstr ""
"Графема связана с предыдущей графемой. Разрыв строки перед этой графемой "
"небезопасен."

msgid "It is safe to insert a U+0640 before this grapheme for elongation."
msgstr "Для удлинения можно безопасно вставить перед этой графемой U+0640."

msgid "Grapheme is an object replacement character for the embedded object."
msgstr "Графема — это символ, заменяющий встроенный объект."

msgid "Grapheme is a soft hyphen."
msgstr "Графема — мягкий дефис."

msgid "Disables font hinting (smoother but less crisp)."
msgstr "Отключить сглаживание шрифтов (более плавно, но менее четко)."

msgid "Use the light font hinting mode."
msgstr "Используйте режим легкого сглаживания шрифта."

msgid ""
"Use the default font hinting mode (crisper but less smooth).\n"
"[b]Note:[/b] This hinting mode changes both horizontal and vertical glyph "
"metrics. If applied to monospace font, some glyphs might have different width."
msgstr ""
"Используйте режим хинтинга (сглаживания) шрифта по умолчанию (более четкий, "
"но менее плавный).\n"
"[b]Примечание:[/b] Этот режим хинтинга изменяет как горизонтальные, так и "
"вертикальные метрики глифов. При применении к моноширинному шрифту некоторые "
"глифы могут иметь разную ширину."

msgid ""
"Glyph horizontal position is rounded to the whole pixel size, each glyph is "
"rasterized once."
msgstr ""
"Горизонтальное положение глифа округляется до целого размера пикселя, каждый "
"глиф растрируется один раз."

msgid ""
"Glyph horizontal position is rounded based on font size.\n"
"- To one quarter of the pixel size if font size is smaller or equal to "
"[constant SUBPIXEL_POSITIONING_ONE_QUARTER_MAX_SIZE].\n"
"- To one half of the pixel size if font size is smaller or equal to [constant "
"SUBPIXEL_POSITIONING_ONE_HALF_MAX_SIZE].\n"
"- To the whole pixel size for larger fonts."
msgstr ""
"Горизонтальное положение глифа округляется в зависимости от размера шрифта.\n"
"- До четверти размера пикселя, если размер шрифта меньше или равен [constant "
"SUBPIXEL_POSITIONING_ONE_QUARTER_MAX_SIZE].\n"
"- До половины размера пикселя, если размер шрифта меньше или равен [constant "
"SUBPIXEL_POSITIONING_ONE_HALF_MAX_SIZE].\n"
"- До целого размера пикселя для более крупных шрифтов."

msgid ""
"Glyph horizontal position is rounded to one half of the pixel size, each "
"glyph is rasterized up to two times."
msgstr ""
"Горизонтальное положение глифа округляется до половины размера пикселя, "
"каждый глиф растрируется до двух раз."

msgid ""
"Glyph horizontal position is rounded to one quarter of the pixel size, each "
"glyph is rasterized up to four times."
msgstr ""
"Горизонтальное положение глифа округляется до четверти размера пикселя, "
"каждый глиф растрируется до четырех раз."

msgid ""
"Maximum font size which will use \"one half of the pixel\" subpixel "
"positioning in [constant SUBPIXEL_POSITIONING_AUTO] mode."
msgstr ""
"Максимальный размер шрифта, при котором будет использоваться субпиксельное "
"позиционирование «половина пикселя» в режиме [constant "
"SUBPIXEL_POSITIONING_AUTO]."

msgid ""
"Maximum font size which will use \"one quarter of the pixel\" subpixel "
"positioning in [constant SUBPIXEL_POSITIONING_AUTO] mode."
msgstr ""
"Максимальный размер шрифта, при котором будет использоваться субпиксельное "
"позиционирование «одна четверть пикселя» в режиме [constant "
"SUBPIXEL_POSITIONING_AUTO]."

msgid "TextServer supports simple text layouts."
msgstr "TextServer поддерживает простые текстовые макеты."

msgid "TextServer supports bidirectional text layouts."
msgstr "TextServer поддерживает двунаправленную текстовую раскладку."

msgid "TextServer supports vertical layouts."
msgstr "TextServer поддерживает вертикальную компоновку."

msgid "TextServer supports complex text shaping."
msgstr "TextServer поддерживает сложное формирование текста."

msgid "TextServer supports justification using kashidas."
msgstr "TextServer поддерживает выравнивание с использованием кашид."

msgid ""
"TextServer supports complex line/word breaking rules (e.g. dictionary based)."
msgstr ""
"TextServer поддерживает сложные правила переноса строк/слов (например, на "
"основе словаря)."

msgid "TextServer supports loading bitmap fonts."
msgstr "TextServer поддерживает загрузку растровых шрифтов."

msgid "TextServer supports loading dynamic (TrueType, OpeType, etc.) fonts."
msgstr ""
"TextServer поддерживает загрузку динамических шрифтов (TrueType, OpeType и т. "
"д.)."

msgid ""
"TextServer supports multichannel signed distance field dynamic font rendering."
msgstr ""
"TextServer поддерживает многоканальную динамическую визуализацию шрифтов со "
"знаком и расстоянием."

msgid "TextServer supports loading system fonts."
msgstr "TextServer поддерживает загрузку системных шрифтов."

msgid "TextServer supports variable fonts."
msgstr "TextServer поддерживает переменные шрифты."

msgid ""
"TextServer supports locale dependent and context sensitive case conversion."
msgstr ""
"TextServer поддерживает преобразование регистра, зависящее от локали и "
"контекста."

msgid ""
"TextServer require external data file for some features, see [method "
"load_support_data]."
msgstr ""
"Для некоторых функций TextServer требуется внешний файл данных, см. [method "
"load_support_data]."

msgid ""
"TextServer supports UAX #31 identifier validation, see [method "
"is_valid_identifier]."
msgstr ""
"TextServer поддерживает проверку идентификатора UAX #31, см. [method "
"is_valid_identifier]."

msgid ""
"TextServer supports [url=https://unicode.org/reports/tr36/]Unicode Technical "
"Report #36[/url] and [url=https://unicode.org/reports/tr39/]Unicode Technical "
"Standard #39[/url] based spoof detection features."
msgstr ""
"TextServer поддерживает функции обнаружения подделок на основе [url=https://"
"unicode.org/reports/tr36/]Технического отчета Unicode № 36[/url] и "
"[url=https://unicode.org/reports/tr39/]Технического стандарта Unicode № 39[/"
"url]."

msgid "Contour point is on the curve."
msgstr "Точка контура находится на кривой."

msgid ""
"Contour point isn't on the curve, but serves as a control point for a conic "
"(quadratic) Bézier arc."
msgstr ""
"Точка контура не находится на кривой, но служит контрольной точкой для "
"конической (квадратичной) дуги Безье (Bézier arc)."

msgid ""
"Contour point isn't on the curve, but serves as a control point for a cubic "
"Bézier arc."
msgstr ""
"Точка контура не находится на кривой, но служит контрольной точкой для "
"кубической дуги Безье (Bézier arc)."

msgid "Spacing for each glyph."
msgstr "Интервал между каждым глифом."

msgid "Spacing for the space character."
msgstr "Интервал для символа пробела."

msgid "Spacing at the top of the line."
msgstr "Интервал в верхней части строки."

msgid "Spacing at the bottom of the line."
msgstr "Интервал в нижней части строки."

msgid "Represents the size of the [enum SpacingType] enum."
msgstr "Представляет размер перечисления [enum SpacingType]."

msgid "Font is bold."
msgstr "Жирный шрифт."

msgid "Font is italic or oblique."
msgstr "Шрифт курсивный или наклонный."

msgid "Font has fixed-width characters (also known as monospace)."
msgstr ""
"Шрифт имеет символы фиксированной ширины (также известные как моноширинные)."

msgid "Use default Unicode BiDi algorithm."
msgstr "Использовать алгоритм Unicode BiDi по умолчанию."

msgid "BiDi override for URI."
msgstr "Переопределение BiDi для URI."

msgid "BiDi override for file path."
msgstr "Переопределение пути к файлу BiDi."

msgid "BiDi override for email."
msgstr "Переопределение BiDi для электронной почты."

msgid ""
"BiDi override for lists. Structured text options: list separator [String]."
msgstr ""
"Переопределение BiDi для списков. Параметры структурированного текста: "
"разделитель списков [String]."

msgid "BiDi override for GDScript."
msgstr "Переопределение BiDi для GDScript."

msgid "User defined structured text BiDi override function."
msgstr ""
"Функция переопределения BiDi структурированного текста, определяемая "
"пользователем."

msgid "Bitmap font is not scaled."
msgstr "Растровый шрифт не масштабируется."

msgid ""
"Bitmap font is scaled to the closest integer multiple of the font's fixed "
"size. This is the recommended option for pixel art fonts."
msgstr ""
"Растровый шрифт масштабируется до ближайшего целого кратного фиксированного "
"размера шрифта. Это рекомендуемый вариант для шрифтов пиксельной графики."

msgid ""
"Bitmap font is scaled to an arbitrary (fractional) size. This is the "
"recommended option for non-pixel art fonts."
msgstr ""
"Растровый шрифт масштабируется до произвольного (дробного) размера. Это "
"рекомендуемый вариант для шрифтов, не относящихся к пиксельной графике."

msgid ""
"An advanced text server with support for BiDi, complex text layout, and "
"contextual OpenType features. Used in Godot by default."
msgstr ""
"Расширенный текстовый сервер с поддержкой BiDi, сложной текстовой компоновки "
"и контекстных функций OpenType. Используется в Godot по умолчанию."

msgid ""
"An implementation of [TextServer] that uses HarfBuzz, ICU and SIL Graphite to "
"support BiDi, complex text layouts and contextual OpenType features. This is "
"Godot's default primary [TextServer] interface."
msgstr ""
"Реализация [TextServer], которая использует HarfBuzz, ICU и SIL Graphite для "
"поддержки BiDi, сложных текстовых макетов и контекстных функций OpenType. Это "
"основной интерфейс [TextServer] Godot по умолчанию."

msgid "A dummy text server that can't render text or manage fonts."
msgstr ""
"Фиктивный текстовый сервер, который не может отображать текст или управлять "
"шрифтами."

msgid ""
"A dummy [TextServer] interface that doesn't do anything. Useful for freeing "
"up memory when rendering text is not needed, as text servers are resource-"
"intensive. It can also be used for performance comparisons in complex GUIs to "
"check the impact of text rendering.\n"
"A dummy text server is always available at the start of a project. Here's how "
"to access it:\n"
"[codeblock]\n"
"var dummy_text_server = TextServerManager.find_interface(\"Dummy\")\n"
"if dummy_text_server != null:\n"
"\tTextServerManager.set_primary_interface(dummy_text_server)\n"
"\t# If the other text servers are unneeded, they can be removed:\n"
"\tfor i in TextServerManager.get_interface_count():\n"
"\t\tvar text_server = TextServerManager.get_interface(i)\n"
"\t\tif text_server != dummy_text_server:\n"
"\t\t\tTextServerManager.remove_interface(text_server)\n"
"[/codeblock]\n"
"The command line argument [code]--text-driver Dummy[/code] (case-sensitive) "
"can be used to force the \"Dummy\" [TextServer] on any project."
msgstr ""
"Фиктивный интерфейс [TextServer], который ничего не делает. Полезен для "
"освобождения памяти, когда рендеринг текста не нужен, так как текстовые "
"серверы ресурсоемки. Его также можно использовать для сравнения "
"производительности в сложных графических интерфейсах, чтобы проверить влияние "
"рендеринга текста. \n"
"Фиктивный текстовый сервер всегда доступен в начале проекта. Вот как получить "
"к нему доступ:\n"
"[codeblock]\n"
"var dummy_text_server = TextServerManager.find_interface(\"Dummy\")\n"
"if dummy_text_server != null:\n"
"\tTextServerManager.set_primary_interface(dummy_text_server)\n"
"\t# If the other text servers are unneeded, they can be removed:\n"
"\tfor i in TextServerManager.get_interface_count():\n"
"\t\tvar text_server = TextServerManager.get_interface(i)\n"
"\t\tif text_server != dummy_text_server:\n"
"\t\t\tTextServerManager.remove_interface(text_server)\n"
"[/codeblock]\n"
"Аргумент командной строки [code]--text-driver Dummy[/code] (с учетом "
"регистра) можно использовать для принудительного использования «Dummy» "
"[TextServer] в любом проекте."

msgid "Base class for custom [TextServer] implementations (plugins)."
msgstr "Базовый класс для пользовательских реализаций [TextServer] (плагинов)."

msgid "External [TextServer] implementations should inherit from this class."
msgstr "Внешние реализации [TextServer] должны наследоваться от этого класса."

msgid "This method is called before text server is unregistered."
msgstr "Этот метод вызывается до отмены регистрации текстового сервера."

msgid "Creates a new, empty font cache entry resource."
msgstr "Создает новый, пустой ресурс записи кэша шрифтов."

msgid ""
"Optional, implement if font supports extra spacing or baseline offset.\n"
"Creates a new variation existing font which is reusing the same glyph cache "
"and font data."
msgstr ""
"Необязательно, реализуйте, если шрифт поддерживает дополнительный интервал "
"или смещение базовой линии.\n"
"Создает новую вариацию существующего шрифта, которая повторно использует тот "
"же кэш глифов и данные шрифта."

msgid ""
"Creates a new buffer for complex text layout, with the given [param "
"direction] and [param orientation]."
msgstr ""
"Создает новый буфер для сложной текстовой компоновки с заданными [param "
"direction] и [param orientation]."

msgid "Draws box displaying character hexadecimal code."
msgstr "Рисует поле, отображающее шестнадцатеричный код символа."

msgid "Removes all rendered glyph information from the cache entry."
msgstr "Удаляет всю визуализированную информацию о глифах из записи кэша."

msgid "Removes all textures from font cache entry."
msgstr "Удаляет все текстуры из записи кэша шрифтов."

msgid ""
"Draws single glyph into a canvas item at the position, using [param font_rid] "
"at the size [param size]. If [param oversampling] is greater than zero, it is "
"used as font oversampling factor, otherwise viewport oversampling settings "
"are used."
msgstr ""
"Рисует одиночный глиф на элементе холста в позиции, используя [param "
"font_rid] с размером [param size]. Если [param oversampling] больше нуля, он "
"используется как фактор передискретизации шрифта, в противном случае "
"используются настройки передискретизации области просмотра."

msgid ""
"Draws single glyph outline of size [param outline_size] into a canvas item at "
"the position, using [param font_rid] at the size [param size]. If [param "
"oversampling] is greater than zero, it is used as font oversampling factor, "
"otherwise viewport oversampling settings are used."
msgstr ""
"Рисует контур одного глифа размером [param outline_size] в элементе холста в "
"позиции, используя [param font_rid] размером [param size]. Если [param "
"oversampling] больше нуля, он используется как фактор передискретизации "
"шрифта, в противном случае используются настройки передискретизации области "
"просмотра."

msgid ""
"Returns character code associated with [param glyph_index], or [code]0[/code] "
"if [param glyph_index] is invalid."
msgstr ""
"Возвращает код символа, связанный с [param glyph_index], или [code]0[/code], "
"если [param glyph_index] недействителен."

msgid ""
"Returns the font oversampling factor, shared by all fonts in the TextServer."
msgstr ""
"Возвращает коэффициент избыточной выборки шрифта, общий для всех шрифтов в "
"TextServer."

msgid "Returns glyph advance (offset of the next glyph)."
msgstr "Возвращает перемещение глифа (смещение до следующего глифа)."

msgid "Returns outline contours of the glyph."
msgstr "Возвращает контуры глифа."

msgid "Returns resource ID of the cache texture containing the glyph."
msgstr ""
"Возвращает ID идентификатор ресурса кэшированной текстуры, содержащей глиф."

msgid "Returns size of the cache texture containing the glyph."
msgstr "Возвращает размер кэшированной текстуры, содержащей глиф."

msgid "Returns variation coordinates for the specified font cache entry."
msgstr "Возвращает координаты варианта для указанной записи кэша шрифта."

msgid ""
"Returns [code]true[/code] if auto-hinting is supported and preferred over "
"font built-in hinting."
msgstr ""
"Возвращает [code]true[/code], если автохинтинг поддерживается и "
"предпочтительнее встроенного в шрифт хинтинга."

msgid "Removes specified rendered glyph information from the cache entry."
msgstr "Удаляет указанную визуализированную информацию о глифе из записи кэша."

msgid "Removes specified texture from the cache entry."
msgstr "Удаляет указанную текстуру из записи кэша."

msgid ""
"Sets pointer to the font source data, e.g contents of the dynamic font source "
"file."
msgstr ""
"Устанавливает указатель на исходные данные шрифта, например, содержимое "
"исходного файла динамического шрифта."

msgid "If set to [code]true[/code], embedded font bitmap loading is disabled."
msgstr ""
"Если установлено значение [code]true[/code], загрузка встроенного растрового "
"изображения шрифта отключена."

msgid "Sets oversampling factor, shared by all font in the TextServer."
msgstr ""
"Устанавливает коэффициент передискретизации, общий для всех шрифтов в "
"TextServer."

msgid "Sets glyph advance (offset of the next glyph)."
msgstr "Устанавливает смещение глифа (смещение до следующего глифа)."

msgid "Adds override for [method _font_is_language_supported]."
msgstr "Добавляет переопределение для [method _font_is_language_supported]."

msgid ""
"If set to [code]true[/code], glyphs of all sizes are rendered using single "
"multichannel signed distance field generated from the dynamic font vector "
"data. MSDF rendering allows displaying the font at any scaling factor without "
"blurriness, and without incurring a CPU cost when the font size changes "
"(since the font no longer needs to be rasterized on the CPU). As a downside, "
"font hinting is not available with MSDF. The lack of font hinting may result "
"in less crisp and less readable fonts at small sizes."
msgstr ""
"Если установлено значение [code]true[/code], глифы всех размеров "
"визуализируются с использованием одного многоканального знакового поля "
"расстояния, сгенерированного из динамических векторных данных шрифта. "
"Рендеринг MSDF позволяет отображать шрифт с любым коэффициентом "
"масштабирования без размытия и без затрат ресурсов CPU при изменении размера "
"шрифта (поскольку шрифт больше не нужно растеризовать на CPU). Недостатком "
"является то, что хинтинг шрифтов недоступен в MSDF. Отсутствие хинтингов в "
"шрифтах может привести к менее четким и менее читаемым шрифтам при малых "
"размерах."

msgid "Adds override for [method _font_is_script_supported]."
msgstr "Добавляет переопределение для [method _font_is_script_supported]."

msgid ""
"Sets font stretch amount, compared to a normal width. A percentage value "
"between [code]50%[/code] and [code]200%[/code]."
msgstr ""
"Устанавливает величину растяжения шрифта по сравнению с нормальной шириной. "
"Процентное значение между [code]50%[/code] и [code]200%[/code]."

msgid "Sets the font style flags."
msgstr "Устанавливает флаги стиля шрифта."

msgid "Sets variation coordinates for the specified font cache entry."
msgstr "Устанавливает координаты вариации для указанной записи кэша шрифта."

msgid ""
"Sets weight (boldness) of the font. A value in the [code]100...999[/code] "
"range, normal font weight is [code]400[/code], bold font weight is [code]700[/"
"code]."
msgstr ""
"Устанавливает толщину (жирность) шрифта. Значение в диапазоне "
"[code]100...999[/code], нормальная толщина шрифта [code]400[/code], жирная "
"толщина шрифта [code]700[/code]."

msgid ""
"Converts a number from the Western Arabic (0..9) to the numeral systems used "
"in [param language]."
msgstr ""
"Преобразует число из западно-арабской системы счисления (0..9) в систему "
"счисления, используемую в [param language]."

msgid "Returns text server features, see [enum TextServer.Feature]."
msgstr "Возвращает функции текстового сервера, см. [enum TextServer.Feature]."

msgid ""
"Returns index of the first string in [param dict] which is visually "
"confusable with the [param string], or [code]-1[/code] if none is found."
msgstr ""
"Возвращает индекс первой строки в [param dict], которую визуально можно "
"спутать с [param string], или [code]-1[/code], если ничего не найдено."

msgid "Returns [code]true[/code] if [param string] is a valid identifier."
msgstr ""
"Возвращает [code]true[/code], если [param string] является допустимым "
"идентификатором."

msgid ""
"Loads optional TextServer database (e.g. ICU break iterators and "
"dictionaries)."
msgstr ""
"Загружает дополнительную базу данных TextServer (например, итераторы "
"прерываний ICU и словари)."

msgid ""
"Increases the reference count of the specified oversampling level. This "
"method is called by [Viewport], and should not be used directly."
msgstr ""
"Увеличивает количество ссылок указанного уровня передискретизации. Этот метод "
"вызывается [Viewport]-ом и не должен использоваться напрямую."

msgid ""
"Saves optional TextServer database (e.g. ICU break iterators and "
"dictionaries) to the file."
msgstr ""
"Сохраняет дополнительную базу данных TextServer (например, итераторы и "
"словари прерываний ICU) в файл."

msgid ""
"Returns number of text spans added using [method _shaped_text_add_string] or "
"[method _shaped_text_add_object]."
msgstr ""
"Возвращает количество текстовых диапазонов, добавленных с помощью [method "
"_shaped_text_add_string] или [method _shaped_text_add_object]."

msgid ""
"Draw shaped text into a canvas item at a given position, with [param color]. "
"[param pos] specifies the leftmost point of the baseline (for horizontal "
"layout) or topmost point of the baseline (for vertical layout). If [param "
"oversampling] is greater than zero, it is used as font oversampling factor, "
"otherwise viewport oversampling settings are used."
msgstr ""
"Нарисуйте сформированный текст на холсте в заданной позиции с [param color]. "
"[param pos] указывает самую левую точку базовой линии (для горизонтальной "
"компоновки) или самую верхнюю точку базовой линии (для вертикальной "
"компоновки). Если [param oversampling] больше нуля, он используется как "
"фактор передискретизации шрифта, в противном случае используются настройки "
"передискретизации области просмотра."

msgid ""
"Draw the outline of the shaped text into a canvas item at a given position, "
"with [param color]. [param pos] specifies the leftmost point of the baseline "
"(for horizontal layout) or topmost point of the baseline (for vertical "
"layout). If [param oversampling] is greater than zero, it is used as font "
"oversampling factor, otherwise viewport oversampling settings are used."
msgstr ""
"Нарисуйте контур сформированного текста в элементе холста в заданной позиции "
"с [param color]. [param pos] указывает самую левую точку базовой линии (для "
"горизонтальной компоновки) или самую верхнюю точку базовой линии (для "
"вертикальной компоновки). Если [param oversampling] больше нуля, он "
"используется как фактор передискретизации шрифта, в противном случае "
"используются настройки передискретизации области просмотра."

msgid ""
"Returns [code]true[/code] if text buffer is configured to display hexadecimal "
"codes in place of invalid characters."
msgstr ""
"Возвращает [code]true[/code], если текстовый буфер настроен на отображение "
"шестнадцатеричных кодов вместо недопустимых символов."

msgid "Overrides BiDi for the structured text."
msgstr "Переопределяет BiDi для структурированного текста."

msgid ""
"Sets desired text direction. If set to [constant TextServer.DIRECTION_AUTO], "
"direction will be detected based on the buffer contents and current locale."
msgstr ""
"Устанавливает желаемое направление текста. Если установлено значение "
"[constant TextServer.DIRECTION_AUTO], направление будет определяться на "
"основе содержимого буфера и текущей локали."

msgid "Sets desired text orientation."
msgstr "Устанавливает желаемую ориентацию текста."

msgid ""
"Shapes buffer if it's not shaped. Returns [code]true[/code] if the string is "
"shaped successfully."
msgstr ""
"Формирует буфер, если он не сформирован. Возвращает [code]true[/code], если "
"строка сформирована успешно."

msgid ""
"Updates break points in the shaped text. This method is called by default "
"implementation of text breaking functions."
msgstr ""
"Обновляет точки разрыва в сформированном тексте. Этот метод вызывается "
"реализацией функций разрыва текста по умолчанию."

msgid ""
"Updates justification points in the shaped text. This method is called by "
"default implementation of text justification functions."
msgstr ""
"Обновляет точки выравнивания в сформированном тексте. Этот метод вызывается "
"реализацией функций выравнивания текста по умолчанию."

msgid ""
"Returns [code]true[/code] if [param string] is likely to be an attempt at "
"confusing the reader."
msgstr ""
"Возвращает [code]true[/code], если [param string] может быть попыткой "
"запутать читателя."

msgid ""
"Returns an array of the word break boundaries. Elements in the returned array "
"are the offsets of the start and end of words. Therefore the length of the "
"array is always even."
msgstr ""
"Возвращает массив границ разрывов слов. Элементы в возвращаемом массиве "
"являются смещениями начала и конца слов. Поэтому длина массива всегда четная."

msgid "Returns the string converted to lowercase."
msgstr "Возвращает строку, преобразованную в нижний регистр."

msgid "Returns the string converted to title case."
msgstr "Возвращает строку, преобразованную в заглавные буквы."

msgid "Returns the string converted to uppercase."
msgstr "Возвращает строку, преобразованную в верхний регистр."

msgid "Strips diacritics from the string."
msgstr "Удаляет диакритические знаки из строки."

msgid ""
"Decreases the reference count of the specified oversampling level, and frees "
"the font cache for oversampling level when the reference count reaches zero. "
"This method is called by [Viewport], and should not be used directly."
msgstr ""
"Уменьшает количество ссылок указанного уровня передискретизации и освобождает "
"кэш шрифтов для уровня передискретизации, когда количество ссылок достигает "
"нуля. Этот метод вызывается в [Viewport] и не должен использоваться напрямую."

msgid ""
"A fallback implementation of Godot's text server, without support for BiDi "
"and complex text layout."
msgstr ""
"Резервная реализация текстового сервера Godot без поддержки BiDi и сложной "
"текстовой компоновки."

msgid ""
"A fallback implementation of Godot's text server. This fallback is faster "
"than [TextServerAdvanced] for processing a lot of text, but it does not "
"support BiDi and complex text layout.\n"
"[b]Note:[/b] This text server is not part of official Godot binaries. If you "
"want to use it, compile the engine with the option "
"[code]module_text_server_fb_enabled=yes[/code]. When building with "
"[TextServerFallback], consider also disabling [TextServerAdvanced] with "
"[code]module_text_server_adv_enabled=no[/code] to reduce binary size."
msgstr ""
"Резервная реализация текстового сервера Godot. Эта резервная реализация "
"быстрее, чем [TextServerAdvanced] для обработки большого количества текста, "
"но она не поддерживает BiDi и сложную текстовую компоновку.\n"
"[b]Примечание:[/b] Этот текстовый сервер не является частью официальных "
"двоичных файлов Godot. Если вы хотите использовать его, скомпилируйте движок "
"с опцией [code]module_text_server_fb_enabled=yes[/code]. При сборке с "
"[TextServerFallback] рассмотрите также отключение [TextServerAdvanced] с "
"помощью [code]module_text_server_adv_enabled=no[/code], чтобы уменьшить "
"размер двоичного файла."

msgid "A singleton for managing [TextServer] implementations."
msgstr "Синглтон для управления реализациями [TextServer]."

msgid ""
"[TextServerManager] is the API backend for loading, enumerating, and "
"switching [TextServer]s.\n"
"[b]Note:[/b] Switching text server at runtime is possible, but will "
"invalidate all fonts and text buffers. Make sure to unload all controls, "
"fonts, and themes before doing so."
msgstr ""
"[TextServerManager] — это API-бэкэнд для загрузки, перечисления и "
"переключения [TextServer].\n"
"[b]Примечание:[/b] Переключение текстового сервера во время выполнения "
"возможно, но сделает недействительными все шрифты и текстовые буферы. Перед "
"этим обязательно выгрузите все элементы управления, шрифты и темы."

msgid "Registers a [TextServer] interface."
msgstr "Регистрирует интерфейс [TextServer]."

msgid "Finds an interface by its [param name]."
msgstr "Находит интерфейс по его [param name]."

msgid "Returns the interface registered at a given index."
msgstr "Возвращает интерфейс, зарегистрированный по указанному индексу."

msgid "Returns the number of interfaces currently registered."
msgstr "Возвращает количество зарегистрированных в данный момент интерфейсов."

msgid ""
"Returns a list of available interfaces, with the index and name of each "
"interface."
msgstr ""
"Возвращает список доступных интерфейсов с индексом и именем каждого "
"интерфейса."

msgid "Returns the primary [TextServer] interface currently in use."
msgstr ""
"Возвращает основной интерфейс [TextServer], используемый в данный момент."

msgid ""
"Removes an interface. All fonts and shaped text caches should be freed before "
"removing an interface."
msgstr ""
"Удаляет интерфейс. Все кэши шрифтов и сформированного текста должны быть "
"освобождены перед удалением интерфейса."

msgid "Sets the primary [TextServer] interface."
msgstr "Устанавливает основной интерфейс [TextServer]."

msgid "Emitted when a new interface has been added."
msgstr "Выдается при добавлении нового интерфейса."

msgid "Emitted when an interface is removed."
msgstr "Выдается при удалении интерфейса."

msgid "Base class for all texture types."
msgstr "Базовый класс для всех типов текстур."

msgid ""
"[Texture] is the base class for all texture types. Common texture types are "
"[Texture2D] and [ImageTexture]. See also [Image]."
msgstr ""
"[Texture] — базовый класс для всех типов текстур. Распространенные типы "
"текстур — [Texture2D] и [ImageTexture]. См. также [Image]."

msgid "Texture for 2D and 3D."
msgstr "Текстура для 2D и 3D."

msgid ""
"A texture works by registering an image in the video hardware, which then can "
"be used in 3D models or 2D [Sprite2D] or GUI [Control].\n"
"Textures are often created by loading them from a file. See [method "
"@GDScript.load].\n"
"[Texture2D] is a base for other resources. It cannot be used directly.\n"
"[b]Note:[/b] The maximum texture size is 16384×16384 pixels due to graphics "
"hardware limitations. Larger textures may fail to import."
msgstr ""
"Текстура работает путем регистрации изображения в видеооборудовании, которое "
"затем может использоваться в 3D-моделях или 2D [Sprite2D] или GUI [Control].\n"
"Текстуры часто создаются путем загрузки их из файла. См. [method "
"@GDScript.load].\n"
"[Texture2D] является базой для других ресурсов. Его нельзя использовать "
"напрямую.\n"
"[b]Примечание:[/b] Максимальный размер текстуры составляет 16384×16384 "
"пикселей из-за ограничений графического оборудования. Большие текстуры могут "
"не импортироваться."

msgid ""
"Called when the entire [Texture2D] is requested to be drawn over a "
"[CanvasItem], with the top-left offset specified in [param pos]. [param "
"modulate] specifies a multiplier for the colors being drawn, while [param "
"transpose] specifies whether drawing should be performed in column-major "
"order instead of row-major order (resulting in 90-degree clockwise "
"rotation).\n"
"[b]Note:[/b] This is only used in 2D rendering, not 3D."
msgstr ""
"Вызывается, когда запрашивается отрисовка всего [Texture2D] поверх "
"[CanvasItem] со смещением в левом верхнем углу, указанным в [param pos]. "
"[param modulate] указывает множитель для отрисовываемых цветов, а [param "
"transpose] указывает, следует ли выполнять отрисовку в порядке столбцов "
"вместо порядка строк (что приводит к повороту на 90 градусов по часовой "
"стрелке).\n"
"[b]Примечание:[/b] Это используется только в 2D-рендеринге, а не в 3D."

msgid ""
"Called when the [Texture2D] is requested to be drawn onto [CanvasItem]'s "
"specified [param rect]. [param modulate] specifies a multiplier for the "
"colors being drawn, while [param transpose] specifies whether drawing should "
"be performed in column-major order instead of row-major order (resulting in "
"90-degree clockwise rotation).\n"
"[b]Note:[/b] This is only used in 2D rendering, not 3D."
msgstr ""
"Вызывается, когда [Texture2D] запрашивается для рисования на указанном [param "
"rect] [CanvasItem]. [param modulate] указывает множитель для рисуемых цветов, "
"а [param transpose] указывает, должно ли рисование выполняться в порядке "
"столбцов вместо порядка строк (что приводит к повороту на 90 градусов по "
"часовой стрелке).\n"
"[b]Примечание:[/b] Это используется только в 2D-рендеринге, а не в 3D."

msgid ""
"Called when a part of the [Texture2D] specified by [param src_rect]'s "
"coordinates is requested to be drawn onto [CanvasItem]'s specified [param "
"rect]. [param modulate] specifies a multiplier for the colors being drawn, "
"while [param transpose] specifies whether drawing should be performed in "
"column-major order instead of row-major order (resulting in 90-degree "
"clockwise rotation).\n"
"[b]Note:[/b] This is only used in 2D rendering, not 3D."
msgstr ""
"Вызывается, когда часть [Texture2D], указанная координатами [param src_rect], "
"запрашивается для рисования на указанном [param rect] [CanvasItem]. [param "
"modulate] указывает множитель для рисуемых цветов, а [param transpose] "
"указывает, должно ли рисование выполняться в порядке столбцов вместо порядка "
"строк (что приводит к повороту на 90 градусов по часовой стрелке).\n"
"[b]Примечание:[/b] Это используется только в 2D-рендеринге, а не в 3D."

msgid "Called when the [Texture2D]'s height is queried."
msgstr "Вызывается при запросе высоты [Texture2D]."

msgid "Called when the [Texture2D]'s width is queried."
msgstr "Вызывается при запросе ширины [Texture2D]."

msgid ""
"Called when the presence of an alpha channel in the [Texture2D] is queried."
msgstr "Вызывается при запросе наличия альфа-канала в [Texture2D]."

msgid ""
"Called when a pixel's opaque state in the [Texture2D] is queried at the "
"specified [code](x, y)[/code] position."
msgstr ""
"Вызывается, когда запрашивается непрозрачное состояние пикселя в [Texture2D] "
"в указанной позиции [code](x, y)[/code]."

msgid "Creates a placeholder version of this resource ([PlaceholderTexture2D])."
msgstr "Создайте замещающую версию этого ресурса ([PlaceholderTexture2D])."

msgid ""
"Draws the texture using a [CanvasItem] with the [RenderingServer] API at the "
"specified [param position]."
msgstr ""
"Рисует текстуру, используя [CanvasItem] с API [RenderingServer] в указанной "
"[param position]."

msgid "Draws the texture using a [CanvasItem] with the [RenderingServer] API."
msgstr "Рисует текстуру, используя [CanvasItem] с API [RenderingServer]."

msgid ""
"Draws a part of the texture using a [CanvasItem] with the [RenderingServer] "
"API."
msgstr "Рисует часть текстуры, используя [CanvasItem] с API [RenderingServer]."

msgid "Returns the texture height in pixels."
msgstr "Возвращает высоту текстуры в пикселях."

msgid ""
"Returns an [Image] that is a copy of data from this [Texture2D] (a new "
"[Image] is created each time). [Image]s can be accessed and manipulated "
"directly.\n"
"[b]Note:[/b] This will return [code]null[/code] if this [Texture2D] is "
"invalid.\n"
"[b]Note:[/b] This will fetch the texture data from the GPU, which might cause "
"performance problems when overused. Avoid calling [method get_image] every "
"frame, especially on large textures."
msgstr ""
"Возвращает [Image], являющийся копией данных из этого [Texture2D] (каждый раз "
"создается новый [Image]). К [Image] можно получать доступ и управлять ими "
"напрямую.\n"
"[b]Примечание:[/b] Это вернет [code]null[/code], если этот [Texture2D] "
"недействителен.\n"
"[b]Примечание:[/b] Это извлечет данные текстуры из графического процессора, "
"что может вызвать проблемы с производительностью при чрезмерном "
"использовании. Избегайте вызова [method get_image] в каждом кадре, особенно "
"на больших текстурах."

msgid "Returns the texture size in pixels."
msgstr "Возвращает размер текстуры в пикселях."

msgid "Returns the texture width in pixels."
msgstr "Возвращает ширину текстуры в пикселях."

msgid "Returns [code]true[/code] if this [Texture2D] has an alpha channel."
msgstr ""
"Возвращает [code]true[/code], если у этого [Texture2D] есть альфа-канал."

msgid ""
"A single texture resource which consists of multiple, separate images. Each "
"image has the same dimensions and number of mipmap levels."
msgstr ""
"Один ресурс текстуры, состоящий из нескольких отдельных изображений. Каждое "
"изображение имеет одинаковые размеры и количество уровней mipmap."

msgid ""
"A Texture2DArray is different from a Texture3D: The Texture2DArray does not "
"support trilinear interpolation between the [Image]s, i.e. no blending. See "
"also [Cubemap] and [CubemapArray], which are texture arrays with specialized "
"cubemap functions.\n"
"A Texture2DArray is also different from an [AtlasTexture]: In a "
"Texture2DArray, all images are treated separately. In an atlas, the regions "
"(i.e. the single images) can be of different sizes. Furthermore, you usually "
"need to add a padding around the regions, to prevent accidental UV mapping to "
"more than one region. The same goes for mipmapping: Mipmap chains are handled "
"separately for each layer. In an atlas, the slicing has to be done manually "
"in the fragment shader.\n"
"To create such a texture file yourself, reimport your image files using the "
"Godot Editor import presets. To create a Texture2DArray from code, use "
"[method ImageTextureLayered.create_from_images] on an instance of the "
"Texture2DArray class."
msgstr ""
"Texture2DArray отличается от Texture3D: Texture2DArray не поддерживает "
"трилинейную интерполяцию между [Image], т. е. смешивание отсутствует. См. "
"также [Cubemap] и [CubemapArray], которые являются массивами текстур со "
"специализированными функциями кубической карты.\n"
"Texture2DArray также отличается от [AtlasTexture]: в Texture2DArray все "
"изображения обрабатываются отдельно. В атласе регионы (т. е. отдельные "
"изображения) могут быть разных размеров. Кроме того, обычно необходимо "
"добавлять отступ вокруг регионов, чтобы предотвратить случайное UV-"
"сопоставление с несколькими регионами. То же самое касается и mip-"
"сопоставления: цепочки Mip-карт обрабатываются отдельно для каждого слоя. В "
"атласе нарезка должна выполняться вручную в шейдере фрагментов.\n"
"Чтобы создать такой файл текстуры самостоятельно, повторно импортируйте файлы "
"изображений с помощью предустановок импорта редактора Godot. Чтобы создать "
"Texture2DArray из кода, используйте [method "
"ImageTextureLayered.create_from_images] для экземпляра класса Texture2DArray."

msgid ""
"Creates a placeholder version of this resource ([PlaceholderTexture2DArray])."
msgstr "Создает версию-заполнитель этого ресурса ([PlaceholderTexture2DArray])."

msgid ""
"Texture Array for 2D that is bound to a texture created on the "
"[RenderingDevice]."
msgstr ""
"Массив текстур для 2D, привязанный к текстуре, созданной на [RenderingDevice]."

msgid ""
"This texture array class allows you to use a 2D array texture created "
"directly on the [RenderingDevice] as a texture for materials, meshes, etc."
msgstr ""
"Этот класс массива текстур позволяет использовать двумерную текстуру массива, "
"созданную непосредственно на [RenderingDevice], в качестве текстуры для "
"материалов, сеток и т. д."

msgid ""
"Texture for 2D that is bound to a texture created on the [RenderingDevice]."
msgstr ""
"Текстура для 2D, привязанная к текстуре, созданной на [RenderingDevice]."

msgid ""
"This texture class allows you to use a 2D texture created directly on the "
"[RenderingDevice] as a texture for materials, meshes, etc."
msgstr ""
"Этот класс текстуры позволяет использовать 2D-текстуру, созданную "
"непосредственно на [RenderingDevice], в качестве текстуры для материалов, "
"сеток и т. д."

msgid "The RID of the texture object created on the [RenderingDevice]."
msgstr "RID объекта текстуры, созданного на [RenderingDevice]."

msgid "Base class for 3-dimensional textures."
msgstr "Базовый класс для трехмерных текстур."

msgid ""
"Base class for [ImageTexture3D] and [CompressedTexture3D]. Cannot be used "
"directly, but contains all the functions necessary for accessing the derived "
"resource types. [Texture3D] is the base class for all 3-dimensional texture "
"types. See also [TextureLayered].\n"
"All images need to have the same width, height and number of mipmap levels.\n"
"To create such a texture file yourself, reimport your image files using the "
"Godot Editor import presets."
msgstr ""
"Базовый класс для [ImageTexture3D] и [CompressedTexture3D]. Не может "
"использоваться напрямую, но содержит все функции, необходимые для доступа к "
"производным типам ресурсов. [Texture3D] — базовый класс для всех типов 3-"
"мерных текстур. См. также [TextureLayered].\n"
"Все изображения должны иметь одинаковую ширину, высоту и количество уровней "
"mipmap.\n"
"Чтобы создать такой файл текстуры самостоятельно, повторно импортируйте файлы "
"изображений с помощью предустановок импорта редактора Godot."

msgid "Called when the [Texture3D]'s data is queried."
msgstr "Вызывается при запросе данных [Texture3D]."

msgid "Called when the [Texture3D]'s depth is queried."
msgstr "Вызывается при запросе глубины [Texture3D]."

msgid "Called when the [Texture3D]'s format is queried."
msgstr "Вызывается при запросе формата [Texture3D]."

msgid "Called when the [Texture3D]'s height is queried."
msgstr "Вызывается при запросе высоты [Texture3D]."

msgid "Called when the [Texture3D]'s width is queried."
msgstr "Вызывается при запросе ширины [Texture3D]."

msgid "Called when the presence of mipmaps in the [Texture3D] is queried."
msgstr "Вызывается при запросе наличия MIP-карт в [Texture3D]."

msgid "Creates a placeholder version of this resource ([PlaceholderTexture3D])."
msgstr "Создает версию-заполнитель этого ресурса ([PlaceholderTexture3D])."

msgid ""
"Returns the [Texture3D]'s data as an array of [Image]s. Each [Image] "
"represents a [i]slice[/i] of the [Texture3D], with different slices mapping "
"to different depth (Z axis) levels."
msgstr ""
"Возвращает данные [Texture3D] в виде массива [Image]. Каждое [Image] "
"представляет [i]срез[/i] [Texture3D], при этом различные срезы отображаются "
"на разных уровнях глубины (ось Z)."

msgid ""
"Returns the [Texture3D]'s depth in pixels. Depth is typically represented by "
"the Z axis (a dimension not present in [Texture2D])."
msgstr ""
"Возвращает глубину [Texture3D] в пикселях. Глубина обычно представлена осью Z "
"(измерение, отсутствующее в [Texture2D])."

msgid "Returns the current format being used by this texture."
msgstr "Возвращает текущий формат, используемый этой текстурой."

msgid ""
"Returns the [Texture3D]'s height in pixels. Width is typically represented by "
"the Y axis."
msgstr ""
"Возвращает высоту [Texture3D] в пикселях. Ширина обычно представлена осью Y."

msgid ""
"Returns the [Texture3D]'s width in pixels. Width is typically represented by "
"the X axis."
msgstr ""
"Возвращает ширину [Texture3D] в пикселях. Ширина обычно представлена осью X."

msgid "Returns [code]true[/code] if the [Texture3D] has generated mipmaps."
msgstr "Возвращает [code]true[/code], если [Texture3D] сгенерировал MIP-карты."

msgid ""
"Texture for 3D that is bound to a texture created on the [RenderingDevice]."
msgstr ""
"Текстура для 3D, привязанная к текстуре, созданной на [RenderingDevice]."

msgid ""
"This texture class allows you to use a 3D texture created directly on the "
"[RenderingDevice] as a texture for materials, meshes, etc."
msgstr ""
"Этот класс текстуры позволяет использовать 3D-текстуру, созданную "
"непосредственно на [RenderingDevice], в качестве текстуры для материалов, "
"сеток и т. д."

msgid ""
"Texture-based button. Supports Pressed, Hover, Disabled and Focused states."
msgstr ""
"Кнопка на основе текстуры. Поддерживает состояния «Нажато», «Наведено», "
"«Отключено» и «Сфокусировано»."

msgid ""
"[TextureButton] has the same functionality as [Button], except it uses "
"sprites instead of Godot's [Theme] resource. It is faster to create, but it "
"doesn't support localization like more complex [Control]s.\n"
"See also [BaseButton] which contains common properties and methods associated "
"with this node.\n"
"[b]Note:[/b] Setting a texture for the \"normal\" state ([member "
"texture_normal]) is recommended. If [member texture_normal] is not set, the "
"[TextureButton] will still receive input events and be clickable, but the "
"user will not be able to see it unless they activate another one of its "
"states with a texture assigned (e.g., hover over it to show [member "
"texture_hover])."
msgstr ""
"[TextureButton] имеет ту же функциональность, что и [Button], за исключением "
"того, что он использует спрайты вместо ресурса Godot [Theme]. Он быстрее в "
"создании, но не поддерживает локализацию, как более сложные [Control].\n"
"См. также [BaseButton], который содержит общие свойства и методы, связанные с "
"этим узлом.\n"
"[b]Примечание:[/b] Рекомендуется установить текстуру для «нормального» "
"состояния ([member texture_normal]). Если [member texture_normal] не задано, "
"[TextureButton] по-прежнему будет получать входные события и будет доступен "
"для нажатия, но пользователь не сможет увидеть его, пока не активирует другое "
"из его состояний с назначенной текстурой (например, наведет на него курсор, "
"чтобы отобразить [member texture_hover])."

msgid ""
"If [code]true[/code], the size of the texture won't be considered for minimum "
"size calculation, so the [TextureButton] can be shrunk down past the texture "
"size."
msgstr ""
"Если [code]true[/code], размер текстуры не будет учитываться при расчете "
"минимального размера, поэтому [TextureButton] можно уменьшить до размера, "
"превышающего размер текстуры."

msgid ""
"Controls the texture's behavior when you resize the node's bounding "
"rectangle. See the [enum StretchMode] constants for available options."
msgstr ""
"Управляет поведением текстуры при изменении размера ограничивающего "
"прямоугольника узла. См. константы [enum StretchMode] для доступных опций."

msgid ""
"Pure black and white [BitMap] image to use for click detection. On the mask, "
"white pixels represent the button's clickable area. Use it to create buttons "
"with curved shapes."
msgstr ""
"Черно-белое изображение [BitMap] для использования при обнаружении щелчка. На "
"маске белые пиксели представляют собой область щелчка кнопки. Используйте ее "
"для создания кнопок с изогнутыми формами."

msgid ""
"Texture to display when the node is disabled. See [member "
"BaseButton.disabled]. If not assigned, the [TextureButton] displays [member "
"texture_normal] instead."
msgstr ""
"Текстура для отображения, когда узел отключен. См. [member "
"BaseButton.disabled]. Если не назначено, [TextureButton] отображает [member "
"texture_normal] вместо этого."

msgid ""
"Texture to [i]overlay on the base texture[/i] when the node has mouse or "
"keyboard focus. Because [member texture_focused] is displayed on top of the "
"base texture, a partially transparent texture should be used to ensure the "
"base texture remains visible. A texture that represents an outline or an "
"underline works well for this purpose. To disable the focus visual effect, "
"assign a fully transparent texture of any size. Note that disabling the focus "
"visual effect will harm keyboard/controller navigation usability, so this is "
"not recommended for accessibility reasons."
msgstr ""
"Текстура для [i]наложения на базовую текстуру[/i], когда узел имеет фокус "
"мыши или клавиатуры. Поскольку [member texture_focused] отображается поверх "
"базовой текстуры, следует использовать частично прозрачную текстуру, чтобы "
"гарантировать, что базовая текстура останется видимой. Текстура, "
"представляющая контур или подчеркивание, хорошо подходит для этой цели. Чтобы "
"отключить визуальный эффект фокуса, назначьте полностью прозрачную текстуру "
"любого размера. Обратите внимание, что отключение визуального эффекта фокуса "
"навредит удобству использования навигации с помощью клавиатуры/контроллера, "
"поэтому это не рекомендуется по соображениям доступности."

msgid ""
"Texture to display when the mouse hovers over the node. If not assigned, the "
"[TextureButton] displays [member texture_normal] instead when hovered over."
msgstr ""
"Текстура, которая будет отображаться при наведении мыши на узел. Если не "
"назначено, [TextureButton] отображает [member texture_normal] вместо этого "
"при наведении."

msgid ""
"Texture to display by default, when the node is [b]not[/b] in the disabled, "
"hover or pressed state. This texture is still displayed in the focused state, "
"with [member texture_focused] drawn on top."
msgstr ""
"Текстура для отображения по умолчанию, когда узел [b]не[/b] в отключенном, "
"наведенном или нажатом состоянии. Эта текстура по-прежнему отображается в "
"сфокусированном состоянии, с [member texture_focused] нарисованным сверху."

msgid ""
"Texture to display on mouse down over the node, if the node has keyboard "
"focus and the player presses the Enter key or if the player presses the "
"[member BaseButton.shortcut] key. If not assigned, the [TextureButton] "
"displays [member texture_hover] instead when pressed."
msgstr ""
"Текстура, которая будет отображаться при наведении мыши на узел, если узел "
"имеет фокус клавиатуры и игрок нажимает клавишу Enter или если игрок нажимает "
"клавишу [member BaseButton.shortcut]. Если не назначено, [TextureButton] "
"отображает [member texture_hover] вместо этого при нажатии."

msgid "Scale to fit the node's bounding rectangle."
msgstr ""
"Масштабируйте так, чтобы он соответствовал ограничивающему прямоугольнику "
"узла."

msgid "Tile inside the node's bounding rectangle."
msgstr "Размещает в виде плиток, внутри ограничивающего прямоугольника узла."

msgid ""
"The texture keeps its original size and stays in the bounding rectangle's top-"
"left corner."
msgstr ""
"Текстура сохраняет свой исходный размер и располагается в верхнем левом углу "
"ограничивающего прямоугольника."

msgid ""
"The texture keeps its original size and stays centered in the node's bounding "
"rectangle."
msgstr ""
"Текстура сохраняет свой исходный размер и остается в центре ограничивающего "
"прямоугольника узла."

msgid ""
"Scale the texture to fit the node's bounding rectangle, but maintain the "
"texture's aspect ratio."
msgstr ""
"Масштабируйте текстуру так, чтобы она вписывалась в ограничивающий "
"прямоугольник узла, но сохраняйте пропорции текстуры."

msgid ""
"Scale the texture to fit the node's bounding rectangle, center it, and "
"maintain its aspect ratio."
msgstr ""
"Масштабируйте текстуру так, чтобы она вписывалась в ограничивающий "
"прямоугольник узла, отцентрируйте ее и сохраните пропорции."

msgid ""
"Scale the texture so that the shorter side fits the bounding rectangle. The "
"other side clips to the node's limits."
msgstr ""
"Масштабируйте текстуру так, чтобы короткая сторона соответствовала "
"ограничивающему прямоугольнику. Другая сторона обрезалась до границ узла."

msgid ""
"Texture Array for Cubemaps that is bound to a texture created on the "
"[RenderingDevice]."
msgstr ""
"Массив текстур для кубических карт, привязанный к текстуре, созданной на "
"[RenderingDevice]."

msgid ""
"This texture class allows you to use a cubemap array texture created directly "
"on the [RenderingDevice] as a texture for materials, meshes, etc."
msgstr ""
"Этот класс текстуры позволяет использовать текстуру массива кубической карты, "
"созданную непосредственно на [RenderingDevice], в качестве текстуры для "
"материалов, сеток и т. д."

msgid ""
"Texture for Cubemap that is bound to a texture created on the "
"[RenderingDevice]."
msgstr ""
"Текстура для Cubemap, привязанная к текстуре, созданной на [RenderingDevice]."

msgid ""
"This texture class allows you to use a cubemap texture created directly on "
"the [RenderingDevice] as a texture for materials, meshes, etc."
msgstr ""
"Этот класс текстуры позволяет использовать текстуру кубической карты, "
"созданную непосредственно на [RenderingDevice], в качестве текстуры для "
"материалов, сеток и т. д."

msgid ""
"Base class for texture types which contain the data of multiple [Image]s. "
"Each image is of the same size and format."
msgstr ""
"Базовый класс для типов текстур, которые содержат данные нескольких [Image]. "
"Каждое изображение имеет одинаковый размер и формат."

msgid ""
"Base class for [ImageTextureLayered] and [CompressedTextureLayered]. Cannot "
"be used directly, but contains all the functions necessary for accessing the "
"derived resource types. See also [Texture3D].\n"
"Data is set on a per-layer basis. For [Texture2DArray]s, the layer specifies "
"the array layer.\n"
"All images need to have the same width, height and number of mipmap levels.\n"
"A [TextureLayered] can be loaded with [method ResourceLoader.load].\n"
"Internally, Godot maps these files to their respective counterparts in the "
"target rendering driver (Vulkan, OpenGL3)."
msgstr ""
"Базовый класс для [ImageTextureLayered] и [CompressedTextureLayered]. Не "
"может использоваться напрямую, но содержит все функции, необходимые для "
"доступа к производным типам ресурсов. См. также [Texture3D].\n"
"Данные задаются на основе каждого слоя. Для [Texture2DArray] слой определяет "
"слой массива.\n"
"Все изображения должны иметь одинаковую ширину, высоту и количество уровней "
"mipmap.\n"
"[TextureLayered] можно загрузить с помощью [method ResourceLoader.load].\n"
"Внутренне Godot сопоставляет эти файлы с их соответствующими аналогами в "
"целевом драйвере рендеринга (Vulkan, OpenGL3)."

msgid "Called when the [TextureLayered]'s format is queried."
msgstr "Вызывается при запросе формата [TextureLayered]."

msgid "Called when the [TextureLayered]'s height is queried."
msgstr "Вызывается при запросе высоты [TextureLayered]."

msgid "Called when the data for a layer in the [TextureLayered] is queried."
msgstr "Вызывается при запросе данных для слоя в [TextureLayered]."

msgid "Called when the layers' type in the [TextureLayered] is queried."
msgstr "Вызывается при запросе типа слоев в [TextureLayered]."

msgid "Called when the number of layers in the [TextureLayered] is queried."
msgstr "Вызывается при запросе количества слоев в [TextureLayered]."

msgid "Called when the [TextureLayered]'s width queried."
msgstr "Вызывается при запросе ширины [TextureLayered]."

msgid "Called when the presence of mipmaps in the [TextureLayered] is queried."
msgstr "Вызывается при запросе наличия MIP-карт в [TextureLayered]."

msgid ""
"Returns the height of the texture in pixels. Height is typically represented "
"by the Y axis."
msgstr ""
"Возвращает высоту текстуры в пикселях. Высота обычно представлена осью Y."

msgid "Returns an [Image] resource with the data from specified [param layer]."
msgstr "Возвращает ресурс [Image] с данными из указанного [param layer]."

msgid ""
"Returns the [TextureLayered]'s type. The type determines how the data is "
"accessed, with cubemaps having special types."
msgstr ""
"Возвращает тип [TextureLayered]. Тип определяет, как осуществляется доступ к "
"данным, при этом кубические карты имеют специальные типы."

msgid "Returns the number of referenced [Image]s."
msgstr "Возвращает количество указанных [Image]-ов."

msgid ""
"Returns the width of the texture in pixels. Width is typically represented by "
"the X axis."
msgstr ""
"Возвращает ширину текстуры в пикселях. Ширина обычно представлена осью X."

msgid "Returns [code]true[/code] if the layers have generated mipmaps."
msgstr "Возвращает [code]true[/code], если слои сгенерировали MIP-карты."

msgid "Texture is a generic [Texture2DArray]."
msgstr "Текстура представляет собой общий массив [Texture2DArray]."

msgid "Texture is a [Cubemap], with each side in its own layer (6 in total)."
msgstr ""
"Текстура представляет собой [Cubemap], где каждая сторона находится в своем "
"собственном слое (всего 6)."

msgid "Texture is a [CubemapArray], with each cubemap being made of 6 layers."
msgstr ""
"Текстура представляет собой [CubemapArray], где каждая кубическая карта "
"состоит из 6 слоев."

msgid "Abstract base class for layered texture RD types."
msgstr "Абстрактный базовый класс для многослойных текстурных типов RD."

msgid ""
"Base class for [Texture2DArrayRD], [TextureCubemapRD] and "
"[TextureCubemapArrayRD]. Cannot be used directly, but contains all the "
"functions necessary for accessing the derived resource types."
msgstr ""
"Базовый класс для [Texture2DArrayRD], [TextureCubemapRD] и "
"[TextureCubemapArrayRD]. Не может использоваться напрямую, но содержит все "
"функции, необходимые для доступа к производным типам ресурсов."

msgid ""
"Texture-based progress bar. Useful for loading screens and life or stamina "
"bars."
msgstr ""
"Текстурная полоса прогресса. Полезно для экранов загрузки и полосок жизни или "
"выносливости."

msgid ""
"TextureProgressBar works like [ProgressBar], but uses up to 3 textures "
"instead of Godot's [Theme] resource. It can be used to create horizontal, "
"vertical and radial progress bars."
msgstr ""
"TextureProgressBar работает как [ProgressBar], но использует до 3 текстур "
"вместо ресурса Godot [Theme]. Его можно использовать для создания "
"горизонтальных, вертикальных и радиальных индикаторов прогресса."

msgid ""
"Returns the stretch margin with the specified index. See [member "
"stretch_margin_bottom] and related properties."
msgstr ""
"Возвращает растягиваемое поле с указанным индексом. См. [member "
"stretch_margin_bottom] и связанные свойства."

msgid ""
"Sets the stretch margin with the specified index. See [member "
"stretch_margin_bottom] and related properties."
msgstr ""
"Устанавливает растягиваемое поле с указанным индексом. См. [member "
"stretch_margin_bottom] и связанные свойства."

msgid ""
"If [code]true[/code], Godot treats the bar's textures like in "
"[NinePatchRect]. Use the [code]stretch_margin_*[/code] properties like "
"[member stretch_margin_bottom] to set up the nine patch's 3×3 grid. When "
"using a radial [member fill_mode], this setting will only enable stretching "
"for [member texture_progress], while [member texture_under] and [member "
"texture_over] will be treated like in [NinePatchRect]."
msgstr ""
"Если [code]true[/code], Godot обрабатывает текстуры полосы как в "
"[NinePatchRect]. Используйте свойства [code]stretch_margin_*[/code], такие "
"как [member stretch_margin_bottom], чтобы настроить сетку 3×3 девяти частей. "
"При использовании радиального [member fill_mode] эта настройка включит "
"растяжение только для [member texture_progress], тогда как [member "
"texture_under] и [member texture_over] будут обрабатываться как в "
"[NinePatchRect]."

msgid ""
"Offsets [member texture_progress] if [member fill_mode] is [constant "
"FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE], or [constant "
"FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE].\n"
"[b]Note:[/b] The effective radial center always stays within the [member "
"texture_progress] bounds. If you need to move it outside the texture's "
"bounds, modify the [member texture_progress] to contain additional empty "
"space where needed."
msgstr ""
"Смещает [member texture_progress], если [member fill_mode] — [constant "
"FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE] или [constant "
"FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE].\n"
"[b]Примечание:[/b] Эффективный радиальный центр всегда остается в пределах "
"[member texture_progress]. Если вам нужно переместить его за пределы границ "
"текстуры, измените [member texture_progress], чтобы он содержал "
"дополнительное пустое пространство там, где это необходимо."

msgid ""
"Upper limit for the fill of [member texture_progress] if [member fill_mode] "
"is [constant FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE], or [constant "
"FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE]. When the node's [code]value[/code] is "
"equal to its [code]max_value[/code], the texture fills up to this angle.\n"
"See [member Range.value], [member Range.max_value]."
msgstr ""
"Верхний предел для заполнения [member texture_progress], если [member "
"fill_mode] — [constant FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE] или "
"[constant FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE]. Когда [code]value[/code] "
"узла равно его [code]max_value[/code], текстура заполняется до этого угла.\n"
"См. [member Range.value], [member Range.max_value]."

msgid ""
"Starting angle for the fill of [member texture_progress] if [member "
"fill_mode] is [constant FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE], "
"or [constant FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE]. When the node's "
"[code]value[/code] is equal to its [code]min_value[/code], the texture "
"doesn't show up at all. When the [code]value[/code] increases, the texture "
"fills and tends towards [member radial_fill_degrees].\n"
"[b]Note:[/b] [member radial_initial_angle] is wrapped between [code]0[/code] "
"and [code]360[/code] degrees (inclusive)."
msgstr ""
"Начальный угол для заполнения [member texture_progress], если [member "
"fill_mode] равен [constant FILL_CLOCKWISE], [constant FILL_COUNTER_CLOCKWISE] "
"или [constant FILL_CLOCKWISE_AND_COUNTER_CLOCKWISE]. Когда [code]value[/code] "
"узла равно его [code]min_value[/code], текстура вообще не отображается. Когда "
"[code]value[/code] увеличивается, текстура заполняется и стремится к [member "
"radial_fill_degrees].\n"
"[b]Примечание:[/b] [member radial_initial_angle] заключен между [code]0[/"
"code] и [code]360[/code] градусами (включительно)."

msgid ""
"The height of the 9-patch's bottom row. A margin of 16 means the 9-slice's "
"bottom corners and side will have a height of 16 pixels. You can set all 4 "
"margin values individually to create panels with non-uniform borders. Only "
"effective if [member nine_patch_stretch] is [code]true[/code]."
msgstr ""
"Высота нижнего ряда 9-частей. Поле 16 означает, что нижние углы и сторона 9-"
"slice будут иметь высоту 16 пикселей. Вы можете задать все 4 значения полей "
"по отдельности, чтобы создать панели с неравномерными границами. Действует "
"только если [member nine_patch_stretch] равен [code]true[/code]."

msgid ""
"The width of the 9-patch's left column. Only effective if [member "
"nine_patch_stretch] is [code]true[/code]."
msgstr ""
"Ширина левого столбца 9-patch. Действует только если [member "
"nine_patch_stretch] равен [code]true[/code]."

msgid ""
"The width of the 9-patch's right column. Only effective if [member "
"nine_patch_stretch] is [code]true[/code]."
msgstr ""
"Ширина правого столбца 9-patch. Действует только если [member "
"nine_patch_stretch] равен [code]true[/code]."

msgid ""
"The height of the 9-patch's top row. Only effective if [member "
"nine_patch_stretch] is [code]true[/code]."
msgstr ""
"Высота верхнего ряда 9-patch. Действует только если [member "
"nine_patch_stretch] равен [code]true[/code]."

msgid ""
"[Texture2D] that draws over the progress bar. Use it to add highlights or an "
"upper-frame that hides part of [member texture_progress]."
msgstr ""
"[Texture2D], которая рисует поверх полосы прогресса. Используйте ее для "
"добавления бликов или верхней рамки, которая скрывает часть [member "
"texture_progress]."

msgid ""
"[Texture2D] that clips based on the node's [code]value[/code] and [member "
"fill_mode]. As [code]value[/code] increased, the texture fills up. It shows "
"entirely when [code]value[/code] reaches [code]max_value[/code]. It doesn't "
"show at all if [code]value[/code] is equal to [code]min_value[/code].\n"
"The [code]value[/code] property comes from [Range]. See [member Range.value], "
"[member Range.min_value], [member Range.max_value]."
msgstr ""
"[Texture2D], которая обрезает на основе [code]value[/code] и [member "
"fill_mode] узла. По мере увеличения [code]value[/code] текстура заполняется. "
"Она отображается полностью, когда [code]value[/code] достигает "
"[code]max_value[/code]. Она не отображается вообще, если [code]value[/code] "
"равно [code]min_value[/code].\n"
"Свойство [code]value[/code] происходит от [Range]. См. [member Range.value], "
"[member Range.min_value], [member Range.max_value]."

msgid ""
"The offset of [member texture_progress]. Useful for [member texture_over] and "
"[member texture_under] with fancy borders, to avoid transparent margins in "
"your progress texture."
msgstr ""
"Смещение [member texture_progress]. Полезно для [member texture_over] и "
"[member texture_under] с причудливыми границами, чтобы избежать прозрачных "
"полей в вашей текстуре прогресса."

msgid "[Texture2D] that draws under the progress bar. The bar's background."
msgstr "[Texture2D] рисуется под полосой прогресса. Фон полосы."

msgid ""
"Multiplies the color of the bar's [member texture_over] texture. The effect "
"is similar to [member CanvasItem.modulate], except it only affects this "
"specific texture instead of the entire node."
msgstr ""
"Умножает цвет текстуры [member texture_over] панели. Эффект похож на [member "
"CanvasItem.modulate], за исключением того, что он влияет только на эту "
"конкретную текстуру, а не на весь узел."

msgid "Multiplies the color of the bar's [member texture_progress] texture."
msgstr "Умножает цвет текстуры [member texture_progress] полосы."

msgid "Multiplies the color of the bar's [member texture_under] texture."
msgstr "Умножает цвет текстуры [member texture_under] панели."

msgid "The [member texture_progress] fills from left to right."
msgstr "[member texture_progress] заполняется слева направо."

msgid "The [member texture_progress] fills from right to left."
msgstr "[member texture_progress] заполняется справа налево."

msgid "The [member texture_progress] fills from top to bottom."
msgstr "[member texture_progress] заполняется сверху вниз."

msgid "The [member texture_progress] fills from bottom to top."
msgstr "[member texture_progress] заполняется снизу вверх."

msgid ""
"Turns the node into a radial bar. The [member texture_progress] fills "
"clockwise. See [member radial_center_offset], [member radial_initial_angle] "
"and [member radial_fill_degrees] to control the way the bar fills up."
msgstr ""
"Превращает узел в радиальный столбец. [member texture_progress] заполняется "
"по часовой стрелке. См. [member radia_center_offset], [member "
"radia_initial_angle] и [member radia_fill_degrees] для управления способом "
"заполнения столбца."

msgid ""
"Turns the node into a radial bar. The [member texture_progress] fills "
"counterclockwise. See [member radial_center_offset], [member "
"radial_initial_angle] and [member radial_fill_degrees] to control the way the "
"bar fills up."
msgstr ""
"Превращает узел в радиальный столбец. [member texture_progress] заполняется "
"против часовой стрелки. См. [member radia_center_offset], [member "
"radia_initial_angle] и [member radia_fill_degrees] для управления способом "
"заполнения столбца."

msgid ""
"The [member texture_progress] fills from the center, expanding both towards "
"the left and the right."
msgstr ""
"[member texture_progress] заполняется от центра, расширяясь как влево, так и "
"вправо."

msgid ""
"The [member texture_progress] fills from the center, expanding both towards "
"the top and the bottom."
msgstr ""
"[member texture_progress] заполняется от центра, расширяясь как вверх, так и "
"вниз."

msgid ""
"Turns the node into a radial bar. The [member texture_progress] fills "
"radially from the center, expanding both clockwise and counterclockwise. See "
"[member radial_center_offset], [member radial_initial_angle] and [member "
"radial_fill_degrees] to control the way the bar fills up."
msgstr ""
"Превращает узел в радиальный столбец. [member texture_progress] заполняется "
"радиально от центра, расширяясь как по часовой стрелке, так и против часовой "
"стрелки. См. [member radia_center_offset], [member radia_initial_angle] и "
"[member radia_fill_degrees] для управления способом заполнения столбца."

msgid "A control that displays a texture."
msgstr "Элемент управления, отображающий текстуру."

msgid ""
"A control that displays a texture, for example an icon inside a GUI. The "
"texture's placement can be controlled with the [member stretch_mode] "
"property. It can scale, tile, or stay centered inside its bounding rectangle."
msgstr ""
"Control, отображающий текстуру (например, иконку в графическом интерфейсе). "
"Размещение текстуры контролируется свойством [member stretch_mode]. Текстура "
"может масштабироваться, повторяться (тайлиться) или оставаться в центре "
"ограничивающего прямоугольника."

msgid ""
"Using [constant EXPAND_FIT_WIDTH], [constant EXPAND_FIT_WIDTH_PROPORTIONAL], "
"[constant EXPAND_FIT_HEIGHT], or [constant EXPAND_FIT_HEIGHT_PROPORTIONAL] "
"may result in unstable behavior in some [Container] controls. This behavior "
"may be re-evaluated and changed in the future."
msgstr ""
"Использование [constant EXPAND_FIT_WIDTH], [constant "
"EXPAND_FIT_WIDTH_PROPORTIONAL], [constant EXPAND_FIT_HEIGHT] или [constant "
"EXPAND_FIT_HEIGHT_PROPORTIONAL] может привести к нестабильному поведению в "
"некоторых элементах управления [Container]. Это поведение может быть "
"переоценено и изменено в будущем."

msgid "Defines how minimum size is determined based on the texture's size."
msgstr ""
"Определяет, как определяется минимальный размер на основе размера текстуры."

msgid ""
"Controls the texture's behavior when resizing the node's bounding rectangle."
msgstr ""
"Управляет поведением текстуры при изменении размера ограничивающего "
"прямоугольника узла."

msgid "The node's [Texture2D] resource."
msgstr "Ресурс узла [Texture2D]."

msgid ""
"The minimum size will be equal to texture size, i.e. [TextureRect] can't be "
"smaller than the texture."
msgstr ""
"Минимальный размер будет равен размеру текстуры, т.е. [TextureRect] не может "
"быть меньше текстуры."

msgid ""
"The size of the texture won't be considered for minimum size calculation, so "
"the [TextureRect] can be shrunk down past the texture size."
msgstr ""
"Размер текстуры не будет учитываться при расчете минимального размера, "
"поэтому [TextureRect] можно уменьшить до размера, превышающего размер "
"текстуры."

msgid ""
"The height of the texture will be ignored. Minimum width will be equal to the "
"current height. Useful for horizontal layouts, e.g. inside [HBoxContainer]."
msgstr ""
"Высота текстуры будет проигнорирована. Минимальная ширина будет равна текущей "
"высоте. Полезно для горизонтальных макетов, например, внутри [HBoxContainer]."

msgid "Same as [constant EXPAND_FIT_WIDTH], but keeps texture's aspect ratio."
msgstr ""
"То же, что и [constant EXPAND_FIT_WIDTH], но сохраняет пропорции текстуры."

msgid ""
"The width of the texture will be ignored. Minimum height will be equal to the "
"current width. Useful for vertical layouts, e.g. inside [VBoxContainer]."
msgstr ""
"Ширина текстуры будет проигнорирована. Минимальная высота будет равна текущей "
"ширине. Полезно для вертикальных макетов, например, внутри [VBoxContainer]."

msgid "Same as [constant EXPAND_FIT_HEIGHT], but keeps texture's aspect ratio."
msgstr ""
"То же, что и [constant EXPAND_FIT_HEIGHT], но сохраняет пропорции текстуры."

msgid ""
"Scale the texture to fit the node's bounding rectangle, center it and "
"maintain its aspect ratio."
msgstr ""
"Масштабируйте текстуру так, чтобы она вписывалась в ограничивающий "
"прямоугольник узла, отцентрируйте ее и сохраните пропорции."

msgid "A resource used for styling/skinning [Control]s and [Window]s."
msgstr ""
"Ресурс, используемый для стилизации/скининга оформления [Control] и [Window]."

msgid ""
"A resource used for styling/skinning [Control] and [Window] nodes. While "
"individual controls can be styled using their local theme overrides (see "
"[method Control.add_theme_color_override]), theme resources allow you to "
"store and apply the same settings across all controls sharing the same type "
"(e.g. style all [Button]s the same). One theme resource can be used for the "
"entire project, but you can also set a separate theme resource to a branch of "
"control nodes. A theme resource assigned to a control applies to the control "
"itself, as well as all of its direct and indirect children (as long as a "
"chain of controls is uninterrupted).\n"
"Use [member ProjectSettings.gui/theme/custom] to set up a project-scope theme "
"that will be available to every control in your project.\n"
"Use [member Control.theme] of any control node to set up a theme that will be "
"available to that control and all of its direct and indirect children."
msgstr ""
"Ресурс, используемый для стилизации/стиля узлов [Control] и [Window]. В то "
"время как отдельные элементы управления могут быть стилизованы с "
"использованием их локальных переопределений темы (см. [method "
"Control.add_theme_color_override]), ресурсы темы позволяют вам хранить и "
"применять одни и те же настройки ко всем элементам управления, разделяющим "
"один и тот же тип (например, стилизовать все [Button] одинаково). Один ресурс "
"темы можно использовать для всего проекта, но вы также можете установить "
"отдельный ресурс темы для ветви узлов управления. Ресурс темы, назначенный "
"элементу управления, применяется к самому элементу управления, а также ко "
"всем его прямым и косвенным дочерним элементам (при условии, что цепочка "
"элементов управления не прерывается).\n"
"Используйте [member ProjectSettings.gui/theme/custom], чтобы настроить тему "
"области проекта, которая будет доступна для каждого элемента управления в "
"вашем проекте.\n"
"Используйте [member Control.theme] любого узла управления, чтобы настроить "
"тему, которая будет доступна для этого элемента управления и всех его прямых "
"и косвенных дочерних элементов."

msgid "GUI skinning"
msgstr "GUI скины"

msgid "Using the theme editor"
msgstr "Использование редактора тем"

msgid ""
"Adds an empty theme type for every valid data type.\n"
"[b]Note:[/b] Empty types are not saved with the theme. This method only "
"exists to perform in-memory changes to the resource. Use available "
"[code]set_*[/code] methods to add theme items."
msgstr ""
"Добавляет пустой тип темы для каждого допустимого типа данных.\n"
"[b]Примечание:[/b] Пустые типы не сохраняются с темой. Этот метод существует "
"только для выполнения изменений в памяти ресурса. Используйте доступные "
"методы [code]set_*[/code] для добавления элементов темы."

msgid "Removes all the theme properties defined on the theme resource."
msgstr "Удаляет все свойства темы, определенные в ресурсе темы."

msgid ""
"Removes the [Color] property defined by [param name] and [param theme_type], "
"if it exists.\n"
"Fails if it doesn't exist. Use [method has_color] to check for existence."
msgstr ""
"Удаляет свойство [Color], определенное [param name] и [param theme_type], "
"если оно существует.\n"
"Не выполняется, если оно не существует. Используйте [method has_color] для "
"проверки существования."

msgid ""
"Removes the constant property defined by [param name] and [param theme_type], "
"if it exists.\n"
"Fails if it doesn't exist. Use [method has_constant] to check for existence."
msgstr ""
"Удаляет константное свойство, определенное [param name] и [param theme_type], "
"если оно существует.\n"
"Не выполняется, если оно не существует. Используйте [method has_constant] для "
"проверки существования."

msgid ""
"Removes the [Font] property defined by [param name] and [param theme_type], "
"if it exists.\n"
"Fails if it doesn't exist. Use [method has_font] to check for existence."
msgstr ""
"Удаляет свойство [Font], определенное [param name] и [param theme_type], если "
"оно существует.\n"
"Не выполняется, если оно не существует. Используйте [method has_font] для "
"проверки существования."

msgid ""
"Removes the font size property defined by [param name] and [param "
"theme_type], if it exists.\n"
"Fails if it doesn't exist. Use [method has_font_size] to check for existence."
msgstr ""
"Удаляет свойство размера шрифта, определенное [param name] и [param "
"theme_type], если оно существует.\n"
"Не выполняется, если оно не существует. Используйте [method has_font_size] "
"для проверки существования."

msgid ""
"Removes the icon property defined by [param name] and [param theme_type], if "
"it exists.\n"
"Fails if it doesn't exist. Use [method has_icon] to check for existence."
msgstr ""
"Удаляет свойство значка, определенное [param name] и [param theme_type], если "
"оно существует.\n"
"Не выполняется, если оно не существует. Используйте [method has_icon] для "
"проверки существования."

msgid ""
"Removes the [StyleBox] property defined by [param name] and [param "
"theme_type], if it exists.\n"
"Fails if it doesn't exist. Use [method has_stylebox] to check for existence."
msgstr ""
"Удаляет свойство [StyleBox], определенное [param name] и [param theme_type], "
"если оно существует.\n"
"Не выполняется, если оно не существует. Используйте [method has_stylebox] для "
"проверки существования."

msgid ""
"Removes the theme property of [param data_type] defined by [param name] and "
"[param theme_type], if it exists.\n"
"Fails if it doesn't exist. Use [method has_theme_item] to check for "
"existence.\n"
"[b]Note:[/b] This method is analogous to calling the corresponding data type "
"specific method, but can be used for more generalized logic."
msgstr ""
"Удаляет свойство темы [param data_type], определенное [param name] и [param "
"theme_type], если оно существует.\n"
"Не выполняется, если оно не существует. Используйте [method has_theme_item] "
"для проверки существования.\n"
"[b]Примечание:[/b] Этот метод аналогичен вызову соответствующего метода, "
"специфичного для типа данных, но может использоваться для более общей логики."

msgid ""
"Unmarks [param theme_type] as being a variation of another theme type. See "
"[method set_type_variation]."
msgstr ""
"Снимает отметку [param theme_type] как вариации другого типа темы. См. "
"[method set_type_variation]."

msgid ""
"Returns the [Color] property defined by [param name] and [param theme_type], "
"if it exists.\n"
"Returns the default color value if the property doesn't exist. Use [method "
"has_color] to check for existence."
msgstr ""
"Возвращает свойство [Color], определенное [param name] и [param theme_type], "
"если оно существует.\n"
"Возвращает значение цвета по умолчанию, если свойство не существует. "
"Используйте [method has_color] для проверки существования."

msgid ""
"Returns a list of names for [Color] properties defined with [param "
"theme_type]. Use [method get_color_type_list] to get a list of possible theme "
"type names."
msgstr ""
"Возвращает список имен для свойств [Color], определенных с помощью [param "
"theme_type]. Используйте [method get_color_type_list], чтобы получить список "
"возможных имен типов темы."

msgid ""
"Returns a list of all unique theme type names for [Color] properties. Use "
"[method get_type_list] to get a list of all unique theme types."
msgstr ""
"Возвращает список всех уникальных названий типов тем для свойств [Color]. "
"Используйте [method get_type_list], чтобы получить список всех уникальных "
"типов тем."

msgid ""
"Returns the constant property defined by [param name] and [param theme_type], "
"if it exists.\n"
"Returns [code]0[/code] if the property doesn't exist. Use [method "
"has_constant] to check for existence."
msgstr ""
"Возвращает константное свойство, определенное [param name] и [param "
"theme_type], если оно существует.\n"
"Возвращает [code]0[/code], если свойство не существует. Используйте [method "
"has_constant] для проверки существования."

msgid ""
"Returns a list of names for constant properties defined with [param "
"theme_type]. Use [method get_constant_type_list] to get a list of possible "
"theme type names."
msgstr ""
"Возвращает список имен для константных свойств, определенных с помощью [param "
"theme_type]. Используйте [method get_constant_type_list] для получения списка "
"возможных имен типов тем."

msgid ""
"Returns a list of all unique theme type names for constant properties. Use "
"[method get_type_list] to get a list of all unique theme types."
msgstr ""
"Возвращает список всех уникальных названий типов тем для константных свойств. "
"Используйте [method get_type_list], чтобы получить список всех уникальных "
"типов тем."

msgid ""
"Returns the [Font] property defined by [param name] and [param theme_type], "
"if it exists.\n"
"Returns the default theme font if the property doesn't exist and the default "
"theme font is set up (see [member default_font]). Use [method has_font] to "
"check for existence of the property and [method has_default_font] to check "
"for existence of the default theme font.\n"
"Returns the engine fallback font value, if neither exist (see [member "
"ThemeDB.fallback_font])."
msgstr ""
"Возвращает свойство [Font], определенное [param name] и [param theme_type], "
"если оно существует.\n"
"Возвращает шрифт темы по умолчанию, если свойство не существует и шрифт темы "
"по умолчанию установлен (см. [member default_font]). Используйте [method "
"has_font] для проверки существования свойства и [method has_default_font] для "
"проверки существования шрифта темы по умолчанию.\n"
"Возвращает значение резервного шрифта движка, если ни один из них не "
"существует (см. [member ThemeDB.fallback_font])."

msgid ""
"Returns a list of names for [Font] properties defined with [param "
"theme_type]. Use [method get_font_type_list] to get a list of possible theme "
"type names."
msgstr ""
"Возвращает список имен для свойств [Font], определенных с помощью [param "
"theme_type]. Используйте [method get_font_type_list], чтобы получить список "
"возможных имен типов темы."

msgid ""
"Returns the font size property defined by [param name] and [param "
"theme_type], if it exists.\n"
"Returns the default theme font size if the property doesn't exist and the "
"default theme font size is set up (see [member default_font_size]). Use "
"[method has_font_size] to check for existence of the property and [method "
"has_default_font_size] to check for existence of the default theme font.\n"
"Returns the engine fallback font size value, if neither exist (see [member "
"ThemeDB.fallback_font_size])."
msgstr ""
"Возвращает свойство размера шрифта, определенное [param name] и [param "
"theme_type], если оно существует.\n"
"Возвращает размер шрифта темы по умолчанию, если свойство не существует и "
"размер шрифта темы по умолчанию установлен (см. [member default_font_size]). "
"Используйте [method has_font_size] для проверки существования свойства и "
"[method has_default_font_size] для проверки существования шрифта темы по "
"умолчанию.\n"
"Возвращает значение резервного размера шрифта движка, если ни то, ни другое "
"не существует (см. [member ThemeDB.fallback_font_size])."

msgid ""
"Returns a list of names for font size properties defined with [param "
"theme_type]. Use [method get_font_size_type_list] to get a list of possible "
"theme type names."
msgstr ""
"Возвращает список имен для свойств размера шрифта, определенных с помощью "
"[param theme_type]. Используйте [method get_font_size_type_list], чтобы "
"получить список возможных имен типов темы."

msgid ""
"Returns a list of all unique theme type names for font size properties. Use "
"[method get_type_list] to get a list of all unique theme types."
msgstr ""
"Возвращает список всех уникальных названий типов тем для свойств размера "
"шрифта. Используйте [method get_type_list], чтобы получить список всех "
"уникальных типов тем."

msgid ""
"Returns a list of all unique theme type names for [Font] properties. Use "
"[method get_type_list] to get a list of all unique theme types."
msgstr ""
"Возвращает список всех уникальных названий типов тем для свойств [Font]. "
"Используйте [method get_type_list], чтобы получить список всех уникальных "
"типов тем."

msgid ""
"Returns the icon property defined by [param name] and [param theme_type], if "
"it exists.\n"
"Returns the engine fallback icon value if the property doesn't exist (see "
"[member ThemeDB.fallback_icon]). Use [method has_icon] to check for existence."
msgstr ""
"Возвращает свойство значка, определенное [param name] и [param theme_type], "
"если оно существует.\n"
"Возвращает значение значка резервного движка, если свойство не существует "
"(см. [member ThemeDB.fallback_icon]). Используйте [method has_icon] для "
"проверки существования."

msgid ""
"Returns a list of names for icon properties defined with [param theme_type]. "
"Use [method get_icon_type_list] to get a list of possible theme type names."
msgstr ""
"Возвращает список имен для свойств значка, определенных с помощью [param "
"theme_type]. Используйте [method get_icon_type_list] для получения списка "
"возможных имен типов темы."

msgid ""
"Returns a list of all unique theme type names for icon properties. Use "
"[method get_type_list] to get a list of all unique theme types."
msgstr ""
"Возвращает список всех уникальных названий типов тем для свойств значка. "
"Используйте [method get_type_list], чтобы получить список всех уникальных "
"типов тем."

msgid ""
"Returns the [StyleBox] property defined by [param name] and [param "
"theme_type], if it exists.\n"
"Returns the engine fallback stylebox value if the property doesn't exist (see "
"[member ThemeDB.fallback_stylebox]). Use [method has_stylebox] to check for "
"existence."
msgstr ""
"Возвращает свойство [StyleBox], определенное [param name] и [param "
"theme_type], если оно существует.\n"
"Возвращает резервное значение stylebox движка, если свойство не существует "
"(см. [member ThemeDB.fallback_stylebox]). Используйте [method has_stylebox] "
"для проверки существования."

msgid ""
"Returns a list of names for [StyleBox] properties defined with [param "
"theme_type]. Use [method get_stylebox_type_list] to get a list of possible "
"theme type names."
msgstr ""
"Возвращает список имен для свойств [StyleBox], определенных с помощью [param "
"theme_type]. Используйте [method get_stylebox_type_list], чтобы получить "
"список возможных имен типов тем."

msgid ""
"Returns a list of all unique theme type names for [StyleBox] properties. Use "
"[method get_type_list] to get a list of all unique theme types."
msgstr ""
"Возвращает список всех уникальных названий типов тем для свойств [StyleBox]. "
"Используйте [method get_type_list], чтобы получить список всех уникальных "
"типов тем."

msgid ""
"Returns the theme property of [param data_type] defined by [param name] and "
"[param theme_type], if it exists.\n"
"Returns the engine fallback value if the property doesn't exist (see "
"[ThemeDB]). Use [method has_theme_item] to check for existence.\n"
"[b]Note:[/b] This method is analogous to calling the corresponding data type "
"specific method, but can be used for more generalized logic."
msgstr ""
"Возвращает свойство темы [param data_type], определенное [param name] и "
"[param theme_type], если оно существует.\n"
"Возвращает резервное значение движка, если свойство не существует (см. "
"[ThemeDB]). Используйте [method has_theme_item] для проверки существования.\n"
"[b]Примечание:[/b] Этот метод аналогичен вызову соответствующего метода, "
"специфичного для типа данных, но может использоваться для более обобщенной "
"логики."

msgid ""
"Returns a list of names for properties of [param data_type] defined with "
"[param theme_type]. Use [method get_theme_item_type_list] to get a list of "
"possible theme type names.\n"
"[b]Note:[/b] This method is analogous to calling the corresponding data type "
"specific method, but can be used for more generalized logic."
msgstr ""
"Возвращает список имен для свойств [param data_type], определенных с помощью "
"[param theme_type]. Используйте [method get_theme_item_type_list], чтобы "
"получить список возможных имен типов темы.\n"
"[b]Примечание:[/b] Этот метод аналогичен вызову соответствующего метода, "
"специфичного для типа данных, но может использоваться для более обобщенной "
"логики."

msgid ""
"Returns a list of all unique theme type names for [param data_type] "
"properties. Use [method get_type_list] to get a list of all unique theme "
"types.\n"
"[b]Note:[/b] This method is analogous to calling the corresponding data type "
"specific method, but can be used for more generalized logic."
msgstr ""
"Возвращает список всех уникальных названий типов тем для свойств [param "
"data_type]. Используйте [method get_type_list], чтобы получить список всех "
"уникальных типов тем.\n"
"[b]Примечание:[/b] Этот метод аналогичен вызову соответствующего метода, "
"специфичного для типа данных, но может использоваться для более обобщенной "
"логики."

msgid ""
"Returns a list of all unique theme type names. Use the appropriate "
"[code]get_*_type_list[/code] method to get a list of unique theme types for a "
"single data type."
msgstr ""
"Возвращает список всех уникальных названий типов тем. Используйте "
"соответствующий метод [code]get_*_type_list[/code], чтобы получить список "
"уникальных типов тем для одного типа данных."

msgid ""
"Returns the name of the base theme type if [param theme_type] is a valid "
"variation type. Returns an empty string otherwise."
msgstr ""
"Возвращает имя базового типа темы, если [param theme_type] является "
"допустимым типом вариации. В противном случае возвращает пустую строку."

msgid "Returns a list of all type variations for the given [param base_type]."
msgstr "Возвращает список всех вариаций типов для заданного [param base_type]."

msgid ""
"Returns [code]true[/code] if the [Color] property defined by [param name] and "
"[param theme_type] exists.\n"
"Returns [code]false[/code] if it doesn't exist. Use [method set_color] to "
"define it."
msgstr ""
"Возвращает [code]true[/code], если свойство [Color], определенное [param "
"name] и [param theme_type], существует. \n"
"Возвращает [code]false[/code], если оно не существует. Используйте [method "
"set_color], чтобы определить его."

msgid ""
"Returns [code]true[/code] if the constant property defined by [param name] "
"and [param theme_type] exists.\n"
"Returns [code]false[/code] if it doesn't exist. Use [method set_constant] to "
"define it."
msgstr ""
"Возвращает [code]true[/code], если константное свойство, определенное [param "
"name] и [param theme_type], существует. \n"
"Возвращает [code]false[/code], если оно не существует. Используйте [method "
"set_constant], чтобы определить его."

msgid ""
"Returns [code]true[/code] if [member default_base_scale] has a valid value.\n"
"Returns [code]false[/code] if it doesn't. The value must be greater than "
"[code]0.0[/code] to be considered valid."
msgstr ""
"Возвращает [code]true[/code], если [member default_base_scale] имеет "
"допустимое значение.\n"
"Возвращает [code]false[/code], если нет. Значение должно быть больше "
"[code]0.0[/code], чтобы считаться допустимым."

msgid ""
"Returns [code]true[/code] if [member default_font] has a valid value.\n"
"Returns [code]false[/code] if it doesn't."
msgstr ""
"Возвращает [code]true[/code], если [member default_font] имеет допустимое "
"значение. \n"
"Возвращает [code]false[/code], если нет."

msgid ""
"Returns [code]true[/code] if [member default_font_size] has a valid value.\n"
"Returns [code]false[/code] if it doesn't. The value must be greater than "
"[code]0[/code] to be considered valid."
msgstr ""
"Возвращает [code]true[/code], если [member default_font_size] имеет "
"допустимое значение.\n"
"Возвращает [code]false[/code], если нет. Значение должно быть больше [code]0[/"
"code], чтобы считаться допустимым."

msgid ""
"Returns [code]true[/code] if the [Font] property defined by [param name] and "
"[param theme_type] exists, or if the default theme font is set up (see "
"[method has_default_font]).\n"
"Returns [code]false[/code] if neither exist. Use [method set_font] to define "
"the property."
msgstr ""
"Возвращает [code]true[/code], если свойство [Font], определенное [param name] "
"и [param theme_type], существует, или если установлен шрифт темы по умолчанию "
"(см. [method has_default_font]).\n"
"Возвращает [code]false[/code], если ни то, ни другое не существует. "
"Используйте [method set_font] для определения свойства."

msgid ""
"Returns [code]true[/code] if the font size property defined by [param name] "
"and [param theme_type] exists, or if the default theme font size is set up "
"(see [method has_default_font_size]).\n"
"Returns [code]false[/code] if neither exist. Use [method set_font_size] to "
"define the property."
msgstr ""
"Возвращает [code]true[/code], если свойство размера шрифта, определенное "
"[param name] и [param theme_type], существует, или если установлен размер "
"шрифта темы по умолчанию (см. [method has_default_font_size]).\n"
"Возвращает [code]false[/code], если ни то, ни другое не существует. "
"Используйте [method set_font_size] для определения свойства."

msgid ""
"Returns [code]true[/code] if the icon property defined by [param name] and "
"[param theme_type] exists.\n"
"Returns [code]false[/code] if it doesn't exist. Use [method set_icon] to "
"define it."
msgstr ""
"Возвращает [code]true[/code], если свойство значка, определенное [param name] "
"и [param theme_type], существует. \n"
"Возвращает [code]false[/code], если оно не существует. Используйте [method "
"set_icon], чтобы определить его."

msgid ""
"Returns [code]true[/code] if the [StyleBox] property defined by [param name] "
"and [param theme_type] exists.\n"
"Returns [code]false[/code] if it doesn't exist. Use [method set_stylebox] to "
"define it."
msgstr ""
"Возвращает [code]true[/code], если свойство [StyleBox], определенное [param "
"name] и [param theme_type], существует. \n"
"Возвращает [code]false[/code], если оно не существует. Используйте [method "
"set_stylebox], чтобы определить его."

msgid ""
"Returns [code]true[/code] if the theme property of [param data_type] defined "
"by [param name] and [param theme_type] exists.\n"
"Returns [code]false[/code] if it doesn't exist. Use [method set_theme_item] "
"to define it.\n"
"[b]Note:[/b] This method is analogous to calling the corresponding data type "
"specific method, but can be used for more generalized logic."
msgstr ""
"Возвращает [code]true[/code], если свойство темы [param data_type], "
"определенное [param name] и [param theme_type], существует.\n"
"Возвращает [code]false[/code], если оно не существует. Используйте [method "
"set_theme_item], чтобы определить его.\n"
"[b]Примечание:[/b] Этот метод аналогичен вызову соответствующего метода, "
"специфичного для типа данных, но может использоваться для более обобщенной "
"логики."

msgid ""
"Returns [code]true[/code] if [param theme_type] is marked as a variation of "
"[param base_type]."
msgstr ""
"Возвращает [code]true[/code], если [param theme_type] отмечен как вариация "
"[param base_type]."

msgid ""
"Adds missing and overrides existing definitions with values from the [param "
"other] theme resource.\n"
"[b]Note:[/b] This modifies the current theme. If you want to merge two themes "
"together without modifying either one, create a new empty theme and merge the "
"other two into it one after another."
msgstr ""
"Добавляет отсутствующие и переопределяет существующие определения значениями "
"из ресурса темы [param other].\n"
"[b]Примечание:[/b] Это изменяет текущую тему. Если вы хотите объединить две "
"темы, не изменяя ни одну из них, создайте новую пустую тему и объедините в "
"нее две другие одну за другой."

msgid ""
"Removes the theme type, gracefully discarding defined theme items. If the "
"type is a variation, this information is also erased. If the type is a base "
"for type variations, those variations lose their base."
msgstr ""
"Удаляет тип темы, изящно отбрасывая определенные элементы темы. Если тип "
"является вариацией, эта информация также стирается. Если тип является базой "
"для вариаций типа, эти вариации теряют свою базу."

msgid ""
"Renames the [Color] property defined by [param old_name] and [param "
"theme_type] to [param name], if it exists.\n"
"Fails if it doesn't exist, or if a similar property with the new name already "
"exists. Use [method has_color] to check for existence, and [method "
"clear_color] to remove the existing property."
msgstr ""
"Переименовывает свойство [Color], определенное [param old_name] и [param "
"theme_type], в [param name], если оно существует.\n"
"Не удается, если оно не существует или если похожее свойство с новым именем "
"уже существует. Используйте [method has_color] для проверки существования и "
"[method clear_color] для удаления существующего свойства."

msgid ""
"Renames the constant property defined by [param old_name] and [param "
"theme_type] to [param name], if it exists.\n"
"Fails if it doesn't exist, or if a similar property with the new name already "
"exists. Use [method has_constant] to check for existence, and [method "
"clear_constant] to remove the existing property."
msgstr ""
"Переименовывает константное свойство, определенное [param old_name] и [param "
"theme_type], в [param name], если оно существует.\n"
"Не удается, если оно не существует или если похожее свойство с новым именем "
"уже существует. Используйте [method has_constant] для проверки существования "
"и [method clear_constant] для удаления существующего свойства."

msgid ""
"Renames the [Font] property defined by [param old_name] and [param "
"theme_type] to [param name], if it exists.\n"
"Fails if it doesn't exist, or if a similar property with the new name already "
"exists. Use [method has_font] to check for existence, and [method clear_font] "
"to remove the existing property."
msgstr ""
"Переименовывает свойство [Font], определенное [param old_name] и [param "
"theme_type], в [param name], если оно существует.\n"
"Не удается, если оно не существует или если похожее свойство с новым именем "
"уже существует. Используйте [method has_font] для проверки существования и "
"[method clear_font] для удаления существующего свойства."

msgid ""
"Renames the font size property defined by [param old_name] and [param "
"theme_type] to [param name], if it exists.\n"
"Fails if it doesn't exist, or if a similar property with the new name already "
"exists. Use [method has_font_size] to check for existence, and [method "
"clear_font_size] to remove the existing property."
msgstr ""
"Переименовывает свойство размера шрифта, определенное [param old_name] и "
"[param theme_type], в [param name], если оно существует.\n"
"Не удается, если оно не существует или если похожее свойство с новым именем "
"уже существует. Используйте [method has_font_size] для проверки существования "
"и [method clear_font_size] для удаления существующего свойства."

msgid ""
"Renames the icon property defined by [param old_name] and [param theme_type] "
"to [param name], if it exists.\n"
"Fails if it doesn't exist, or if a similar property with the new name already "
"exists. Use [method has_icon] to check for existence, and [method clear_icon] "
"to remove the existing property."
msgstr ""
"Переименовывает свойство значка, определенное [param old_name] и [param "
"theme_type], в [param name], если оно существует.\n"
"Не удается, если оно не существует или если похожее свойство с новым именем "
"уже существует. Используйте [method has_icon] для проверки существования и "
"[method clear_icon] для удаления существующего свойства."

msgid ""
"Renames the [StyleBox] property defined by [param old_name] and [param "
"theme_type] to [param name], if it exists.\n"
"Fails if it doesn't exist, or if a similar property with the new name already "
"exists. Use [method has_stylebox] to check for existence, and [method "
"clear_stylebox] to remove the existing property."
msgstr ""
"Переименовывает свойство [StyleBox], определенное [param old_name] и [param "
"theme_type], в [param name], если оно существует.\n"
"Не удается, если оно не существует или если похожее свойство с новым именем "
"уже существует. Используйте [method has_stylebox] для проверки существования "
"и [method clear_stylebox] для удаления существующего свойства."

msgid ""
"Renames the theme property of [param data_type] defined by [param old_name] "
"and [param theme_type] to [param name], if it exists.\n"
"Fails if it doesn't exist, or if a similar property with the new name already "
"exists. Use [method has_theme_item] to check for existence, and [method "
"clear_theme_item] to remove the existing property.\n"
"[b]Note:[/b] This method is analogous to calling the corresponding data type "
"specific method, but can be used for more generalized logic."
msgstr ""
"Переименовывает свойство темы [param data_type], определенное [param "
"old_name] и [param theme_type], в [param name], если оно существует.\n"
"Неудача, если оно не существует или если похожее свойство с новым именем уже "
"существует. Используйте [method has_theme_item] для проверки существования и "
"[method clear_theme_item] для удаления существующего свойства.\n"
"[b]Примечание:[/b] Этот метод аналогичен вызову соответствующего метода, "
"специфичного для типа данных, но может использоваться для более общей логики."

msgid ""
"Renames the theme type [param old_theme_type] to [param theme_type], if the "
"old type exists and the new one doesn't exist.\n"
"[b]Note:[/b] Renaming a theme type to an empty name or a variation to a type "
"associated with a built-in class removes type variation connections in a way "
"that cannot be undone by reversing the rename alone."
msgstr ""
"Переименовывает тип темы [param old_theme_type] в [param theme_type], если "
"старый тип существует, а новый — нет.\n"
"[b]Примечание:[/b] Переименование типа темы в пустое имя или вариации в тип, "
"связанный со встроенным классом, удаляет связи между вариациями типов таким "
"образом, что это нельзя отменить, просто отменив переименование."

msgid ""
"Creates or changes the value of the [Color] property defined by [param name] "
"and [param theme_type]. Use [method clear_color] to remove the property."
msgstr ""
"Создает или изменяет значение свойства [Color], определенного [param name] и "
"[param theme_type]. Используйте [method clear_color] для удаления свойства."

msgid ""
"Creates or changes the value of the constant property defined by [param name] "
"and [param theme_type]. Use [method clear_constant] to remove the property."
msgstr ""
"Создает или изменяет значение константного свойства, определенного [param "
"name] и [param theme_type]. Используйте [method clear_constant] для удаления "
"свойства."

msgid ""
"Creates or changes the value of the [Font] property defined by [param name] "
"and [param theme_type]. Use [method clear_font] to remove the property."
msgstr ""
"Создает или изменяет значение свойства [Font], определенного [param name] и "
"[param theme_type]. Используйте [method clear_font] для удаления свойства."

msgid ""
"Creates or changes the value of the font size property defined by [param "
"name] and [param theme_type]. Use [method clear_font_size] to remove the "
"property."
msgstr ""
"Создает или изменяет значение свойства размера шрифта, определенного [param "
"name] и [param theme_type]. Используйте [method clear_font_size] для удаления "
"свойства."

msgid ""
"Creates or changes the value of the icon property defined by [param name] and "
"[param theme_type]. Use [method clear_icon] to remove the property."
msgstr ""
"Создает или изменяет значение свойства значка, определенного [param name] и "
"[param theme_type]. Используйте [method clear_icon] для удаления свойства."

msgid ""
"Creates or changes the value of the [StyleBox] property defined by [param "
"name] and [param theme_type]. Use [method clear_stylebox] to remove the "
"property."
msgstr ""
"Создает или изменяет значение свойства [StyleBox], определенного [param name] "
"и [param theme_type]. Используйте [method clear_stylebox] для удаления "
"свойства."

msgid ""
"Creates or changes the value of the theme property of [param data_type] "
"defined by [param name] and [param theme_type]. Use [method clear_theme_item] "
"to remove the property.\n"
"Fails if the [param value] type is not accepted by [param data_type].\n"
"[b]Note:[/b] This method is analogous to calling the corresponding data type "
"specific method, but can be used for more generalized logic."
msgstr ""
"Создает или изменяет значение свойства темы [param data_type], определенного "
"[param name] и [param theme_type]. Используйте [method clear_theme_item], "
"чтобы удалить свойство.\n"
"Завершается сбоем, если тип [param value] не принимается [param data_type].\n"
"[b]Примечание:[/b] Этот метод аналогичен вызову соответствующего метода, "
"специфичного для типа данных, но может использоваться для более обобщенной "
"логики."

msgid ""
"Marks [param theme_type] as a variation of [param base_type].\n"
"This adds [param theme_type] as a suggested option for [member "
"Control.theme_type_variation] on a [Control] that is of the [param base_type] "
"class.\n"
"Variations can also be nested, i.e. [param base_type] can be another "
"variation. If a chain of variations ends with a [param base_type] matching "
"the class of the [Control], the whole chain is going to be suggested as "
"options.\n"
"[b]Note:[/b] Suggestions only show up if this theme resource is set as the "
"project default theme. See [member ProjectSettings.gui/theme/custom]."
msgstr ""
"Отмечает [param theme_type] как вариант [param base_type].\n"
"Это добавляет [param theme_type] как предлагаемый вариант для [member "
"Control.theme_type_variation] в [Control], который принадлежит классу [param "
"base_type].\n"
"Вариации также могут быть вложенными, т. е. [param base_type] может быть "
"другим вариантом. Если цепочка вариантов заканчивается [param base_type], "
"соответствующим классу [Control], вся цепочка будет предложена в качестве "
"вариантов.\n"
"[b]Примечание:[/b] Предложения отображаются только в том случае, если этот "
"ресурс темы установлен в качестве темы проекта по умолчанию. См. [member "
"ProjectSettings.gui/theme/custom]."

msgid ""
"The default base scale factor of this theme resource. Used by some controls "
"to scale their visual properties based on the global scale factor. If this "
"value is set to [code]0.0[/code], the global scale factor is used (see "
"[member ThemeDB.fallback_base_scale]).\n"
"Use [method has_default_base_scale] to check if this value is valid."
msgstr ""
"Базовый масштабный коэффициент по умолчанию для этого ресурса темы. "
"Используется некоторыми элементами управления для масштабирования их "
"визуальных свойств на основе глобального масштабного коэффициента. Если это "
"значение установлено на [code]0.0[/code], используется глобальный масштабный "
"коэффициент (см. [member ThemeDB.fallback_base_scale]).\n"
"Используйте [method has_default_base_scale], чтобы проверить, является ли это "
"значение допустимым."

msgid ""
"The default font of this theme resource. Used as the default value when "
"trying to fetch a font resource that doesn't exist in this theme or is in "
"invalid state. If the default font is also missing or invalid, the engine "
"fallback value is used (see [member ThemeDB.fallback_font]).\n"
"Use [method has_default_font] to check if this value is valid."
msgstr ""
"Шрифт по умолчанию этого ресурса темы. Используется как значение по умолчанию "
"при попытке получить ресурс шрифта, который не существует в этой теме или "
"находится в недопустимом состоянии. Если шрифт по умолчанию также отсутствует "
"или недопустим, используется резервное значение движка (см. [member "
"ThemeDB.fallback_font]).\n"
"Используйте [method has_default_font], чтобы проверить, является ли это "
"значение допустимым."

msgid ""
"The default font size of this theme resource. Used as the default value when "
"trying to fetch a font size value that doesn't exist in this theme or is in "
"invalid state. If the default font size is also missing or invalid, the "
"engine fallback value is used (see [member ThemeDB.fallback_font_size]).\n"
"Values below [code]1[/code] are invalid and can be used to unset the "
"property. Use [method has_default_font_size] to check if this value is valid."
msgstr ""
"Размер шрифта по умолчанию для этого ресурса темы. Используется как значение "
"по умолчанию при попытке получить значение размера шрифта, которого нет в "
"этой теме или которое находится в недопустимом состоянии. Если размер шрифта "
"по умолчанию также отсутствует или недопустим, используется резервное "
"значение движка (см. [member ThemeDB.fallback_font_size]).\n"
"Значения ниже [code]1[/code] недействительны и могут использоваться для "
"сброса свойства. Используйте [method has_default_font_size], чтобы проверить, "
"является ли это значение допустимым."

msgid "Theme's [Color] item type."
msgstr "Тип элемента темы [Color]."

msgid "Theme's constant item type."
msgstr "Константный тип элемента темы."

msgid "Theme's [Font] item type."
msgstr "Тип элемента темы [Font]."

msgid "Theme's font size item type."
msgstr "Тип элемента размера шрифта темы."

msgid "Theme's icon [Texture2D] item type."
msgstr "Значок темы [Texture2D] тип элемента."

msgid "Theme's [StyleBox] item type."
msgstr "Тип элемента темы [StyleBox]."

msgid "Maximum value for the DataType enum."
msgstr "Максимальное значение для перечисления DataType."

msgid ""
"A singleton that provides access to static information about [Theme] "
"resources used by the engine and by your project."
msgstr ""
"Синглтон, предоставляющий доступ к статической информации о ресурсах [Theme], "
"используемых движком и вашим проектом."

msgid ""
"This singleton provides access to static information about [Theme] resources "
"used by the engine and by your projects. You can fetch the default engine "
"theme, as well as your project configured theme.\n"
"[ThemeDB] also contains fallback values for theme properties."
msgstr ""
"Этот синглтон обеспечивает доступ к статической информации о ресурсах "
"[Theme], используемых движком и вашими проектами. Вы можете получить тему "
"движка по умолчанию, а также настроенную тему вашего проекта.\n"
"[ThemeDB] также содержит резервные значения для свойств темы."

msgid ""
"Returns a reference to the default engine [Theme]. This theme resource is "
"responsible for the out-of-the-box look of [Control] nodes and cannot be "
"overridden."
msgstr ""
"Возвращает ссылку на [Theme] по умолчанию движка . Этот ресурс темы отвечает "
"за внешний вид узлов [Control] «из коробки» и не может быть переопределен."

msgid ""
"Returns a reference to the custom project [Theme]. This theme resources "
"allows to override the default engine theme for every control node in the "
"project.\n"
"To set the project theme, see [member ProjectSettings.gui/theme/custom]."
msgstr ""
"Возвращает ссылку на пользовательский [Theme] проекта. Эти ресурсы темы "
"позволяют переопределить тему движка по умолчанию для каждого узла управления "
"в проекте.\n"
"Чтобы задать тему проекта, см. [member ProjectSettings.gui/theme/custom]."

msgid ""
"The fallback base scale factor of every [Control] node and [Theme] resource. "
"Used when no other value is available to the control.\n"
"See also [member Theme.default_base_scale]."
msgstr ""
"Резервный базовый масштабный коэффициент каждого узла [Control] и ресурса "
"[Theme]. Используется, когда для элемента управления недоступно другое "
"значение.\n"
"См. также [member Theme.default_base_scale]."

msgid ""
"The fallback font of every [Control] node and [Theme] resource. Used when no "
"other value is available to the control.\n"
"See also [member Theme.default_font]."
msgstr ""
"Резервный шрифт каждого узла [Control] и ресурса [Theme]. Используется, когда "
"для элемента управления недоступно другое значение.\n"
"См. также [member Theme.default_font]."

msgid ""
"The fallback font size of every [Control] node and [Theme] resource. Used "
"when no other value is available to the control.\n"
"See also [member Theme.default_font_size]."
msgstr ""
"Резервный размер шрифта каждого узла [Control] и ресурса [Theme]. "
"Используется, когда для элемента управления недоступно другое значение.\n"
"См. также [member Theme.default_font_size]."

msgid ""
"The fallback icon of every [Control] node and [Theme] resource. Used when no "
"other value is available to the control."
msgstr ""
"Значок (иконка) резервного копирования каждого узла [Control] и ресурса "
"[Theme]. Используется, когда для элемента управления недоступно другое "
"значение."

msgid ""
"The fallback stylebox of every [Control] node and [Theme] resource. Used when "
"no other value is available to the control."
msgstr ""
"Резервный stylebox каждого узла [Control] и ресурса [Theme]. Используется, "
"когда для элемента управления недоступно другое значение."

msgid ""
"Emitted when one of the fallback values had been changed. Use it to refresh "
"the look of controls that may rely on the fallback theme items."
msgstr ""
"Выдается, когда одно из резервных значений было изменено. Используйте его для "
"обновления внешнего вида элементов управления, которые могут полагаться на "
"резервные элементы темы."

msgid "A unit of execution in a process."
msgstr "Единица выполнения в процессе."

msgid ""
"A unit of execution in a process. Can run methods on [Object]s "
"simultaneously. The use of synchronization via [Mutex] or [Semaphore] is "
"advised if working with shared objects.\n"
"[b]Warning:[/b]\n"
"To ensure proper cleanup without crashes or deadlocks, when a [Thread]'s "
"reference count reaches zero and it is therefore destroyed, the following "
"conditions must be met:\n"
"- It must not have any [Mutex] objects locked.\n"
"- It must not be waiting on any [Semaphore] objects.\n"
"- [method wait_to_finish] should have been called on it."
msgstr ""
"Единица выполнения в процессе. Может одновременно запускать методы на "
"[Object]. При работе с общими объектами рекомендуется использовать "
"синхронизацию через [Mutex] или [Semaphore].\n"
"[b]Предупреждение:[/b]\n"
"Чтобы обеспечить правильную очистку без сбоев или взаимоблокировок, когда "
"счетчик ссылок [Thread] достигает нуля и, следовательно, он уничтожается, "
"должны быть выполнены следующие условия:\n"
"- Он не должен иметь заблокированных объектов [Mutex].\n"
"- Он не должен ожидать никаких объектов [Semaphore].\n"
"- Для него должен был быть вызван [method wait_to_finish]."

msgid ""
"Returns the current [Thread]'s ID, uniquely identifying it among all threads. "
"If the [Thread] has not started running or if [method wait_to_finish] has "
"been called, this returns an empty string."
msgstr ""
"Возвращает ID текущего [Thread], уникально идентифицируя его среди всех "
"потоков. Если [Thread] не начал работу или был вызван [method "
"wait_to_finish], возвращается пустая строка."

msgid ""
"Returns [code]true[/code] if this [Thread] is currently running the provided "
"function. This is useful for determining if [method wait_to_finish] can be "
"called without blocking the calling thread.\n"
"To check if a [Thread] is joinable, use [method is_started]."
msgstr ""
"Возвращает [code]true[/code], если этот [Thread] в данный момент выполняет "
"предоставленную функцию. Это полезно для определения того, можно ли вызвать "
"[method wait_to_finish] без блокировки вызывающего потока.\n"
"Чтобы проверить, можно ли присоединиться к [Thread], используйте [method "
"is_started]."

msgid ""
"Returns [code]true[/code] if this [Thread] has been started. Once started, "
"this will return [code]true[/code] until it is joined using [method "
"wait_to_finish]. For checking if a [Thread] is still executing its task, use "
"[method is_alive]."
msgstr ""
"Возвращает [code]true[/code], если этот [Thread] был запущен. После запуска "
"он будет возвращать [code]true[/code], пока не будет присоединен с помощью "
"[method wait_to_finish]. Для проверки того, выполняет ли [Thread] свою "
"задачу, используйте [method is_alive]."

msgid ""
"Sets whether the thread safety checks the engine normally performs in methods "
"of certain classes (e.g., [Node]) should happen [b]on the current thread[/"
"b].\n"
"The default, for every thread, is that they are enabled (as if called with "
"[param enabled] being [code]true[/code]).\n"
"Those checks are conservative. That means that they will only succeed in "
"considering a call thread-safe (and therefore allow it to happen) if the "
"engine can guarantee such safety.\n"
"Because of that, there may be cases where the user may want to disable them "
"([param enabled] being [code]false[/code]) to make certain operations allowed "
"again. By doing so, it becomes the user's responsibility to ensure thread "
"safety (e.g., by using [Mutex]) for those objects that are otherwise "
"protected by the engine.\n"
"[b]Note:[/b] This is an advanced usage of the engine. You are advised to use "
"it only if you know what you are doing and there is no safer way.\n"
"[b]Note:[/b] This is useful for scripts running on either arbitrary [Thread] "
"objects or tasks submitted to the [WorkerThreadPool]. It doesn't apply to "
"code running during [Node] group processing, where the checks will be always "
"performed.\n"
"[b]Note:[/b] Even in the case of having disabled the checks in a "
"[WorkerThreadPool] task, there's no need to re-enable them at the end. The "
"engine will do so."
msgstr ""
"Устанавливает, должны ли проверки безопасности потока, которые движок обычно "
"выполняет в методах определенных классов (например, [Node]), происходить [b]в "
"текущем потоке[/b].\n"
"По умолчанию для каждого потока они включены (как если бы они были вызваны с "
"[param enabled], равным [code]true[/code]).\n"
"Эти проверки консервативны. Это означает, что они будут успешно считать вызов "
"потокобезопасным (и, следовательно, позволят ему произойти), только если "
"движок может гарантировать такую безопасность.\n"
"Из-за этого могут быть случаи, когда пользователь может захотеть отключить их "
"([param enabled], равным [code]false[/code]), чтобы снова разрешить "
"определенные операции. При этом на пользователя ложится ответственность за "
"обеспечение безопасности потока (например, с помощью [Mutex]) для тех "
"объектов, которые в противном случае защищены движком.\n"
"[b]Примечание:[/b] Это расширенное использование движка. Вам рекомендуется "
"использовать его, только если вы знаете, что делаете, и нет более безопасного "
"способа.\n"
"[b]Примечание:[/b] Это полезно для скриптов, работающих либо на произвольных "
"объектах [Thread], либо на задачах, отправленных в [WorkerThreadPool]. Это не "
"относится к коду, работающему во время групповой обработки [Node], где "
"проверки будут выполняться всегда.\n"
"[b]Примечание:[/b] Даже в случае отключения проверок в задаче "
"[WorkerThreadPool] нет необходимости включать их снова в конце. Движок "
"сделает это."

msgid ""
"Starts a new [Thread] that calls [param callable].\n"
"If the method takes some arguments, you can pass them using [method "
"Callable.bind].\n"
"The [param priority] of the [Thread] can be changed by passing a value from "
"the [enum Priority] enum.\n"
"Returns [constant OK] on success, or [constant ERR_CANT_CREATE] on failure."
msgstr ""
"Запускает новый [Thread], который вызывает [param callable].\n"
"Если метод принимает некоторые аргументы, вы можете передать их с помощью "
"[method Callable.bind].\n"
"[param priority] [Thread] можно изменить, передав значение из перечисления "
"[enum Priority].\n"
"Возвращает [constant OK] в случае успеха или [constant ERR_CANT_CREATE] в "
"случае неудачи."

msgid ""
"Joins the [Thread] and waits for it to finish. Returns the output of the "
"[Callable] passed to [method start].\n"
"Should either be used when you want to retrieve the value returned from the "
"method called by the [Thread] or before freeing the instance that contains "
"the [Thread].\n"
"To determine if this can be called without blocking the calling thread, check "
"if [method is_alive] is [code]false[/code]."
msgstr ""
"Присоединяется к [Thread] и ждет его завершения. Возвращает вывод [Callable], "
"переданный в [method start].\n"
"Следует использовать либо когда вы хотите получить значение, возвращаемое из "
"метода, вызванного [Thread], либо перед освобождением экземпляра, содержащего "
"[Thread].\n"
"Чтобы определить, можно ли вызвать это без блокировки вызывающего потока, "
"проверьте, является ли [method is_alive] [code]false[/code]."

msgid "A thread running with lower priority than normally."
msgstr "Поток, работающий с более низким приоритетом, чем обычно."

msgid "A thread with a standard priority."
msgstr "Поток со стандартным приоритетом."

msgid "A thread running with higher priority than normally."
msgstr "Поток, работающий с более высоким приоритетом, чем обычно."

msgid "Settings for a single tile in a [TileSet]."
msgstr "Настройки для одного тайла в [TileSet]."

msgid ""
"[TileData] object represents a single tile in a [TileSet]. It is usually "
"edited using the tileset editor, but it can be modified at runtime using "
"[method TileMapLayer._tile_data_runtime_update]."
msgstr ""
"Объект [TileData] представляет отдельный тайл в [TileSet]. Обычно он "
"редактируется с помощью редактора тайлсетов, но может быть изменён во время "
"выполнения с помощью [method TileMapLayer._tile_data_runtime_update]."

msgid "Adds a collision polygon to the tile on the given TileSet physics layer."
msgstr ""
"Добавляет полигон столкновения к тайлу на указанном физическом слое TileSet."

msgid ""
"Adds an occlusion polygon to the tile on the TileSet occlusion layer with "
"index [param layer_id]."
msgstr ""
"Добавляет многоугольник окклюзии к тайлу на слое окклюзии TileSet с индексом "
"[param layer_id]."

msgid ""
"Returns the one-way margin (for one-way platforms) of the polygon at index "
"[param polygon_index] for TileSet physics layer with index [param layer_id]."
msgstr ""
"Возвращает одностороннее поле (для односторонних платформ) полигона с "
"индексом [param polygon_index] для физического слоя TileSet с индексом [param "
"layer_id]."

msgid ""
"Returns the points of the polygon at index [param polygon_index] for TileSet "
"physics layer with index [param layer_id]."
msgstr ""
"Возвращает точки полигона с индексом [param polygon_index] для физического "
"слоя TileSet с индексом [param layer_id]."

msgid ""
"Returns how many polygons the tile has for TileSet physics layer with index "
"[param layer_id]."
msgstr ""
"Возвращает количество полигонов тайла для физического слоя TileSet с индексом "
"[param layer_id]."

msgid ""
"Returns the constant angular velocity applied to objects colliding with this "
"tile."
msgstr ""
"Возвращает постоянную угловую скорость, применяемую к объектам при "
"столкновении с этим тайлом."

msgid ""
"Returns the constant linear velocity applied to objects colliding with this "
"tile."
msgstr ""
"Возвращает постоянную линейную скорость, применяемую к объектам при "
"столкновении с этим тайлом."

msgid ""
"Returns the custom data value for custom data layer named [param layer_name]. "
"To check if a custom data layer exists, use [method has_custom_data]."
msgstr ""
"Возвращает пользовательское значение данных для пользовательского слоя данных "
"с именем [param layer_name]. Чтобы проверить, существует ли пользовательский "
"слой данных, используйте [method has_custom_data]."

msgid ""
"Returns the custom data value for custom data layer with index [param "
"layer_id]."
msgstr ""
"Возвращает пользовательское значение данных для пользовательского слоя данных "
"с индексом [param layer_id]."

msgid ""
"Returns the navigation polygon of the tile for the TileSet navigation layer "
"with index [param layer_id].\n"
"[param flip_h], [param flip_v], and [param transpose] allow transforming the "
"returned polygon."
msgstr ""
"Возвращает навигационный полигон тайла для навигационного слоя TileSet с "
"индексом [param layer_id].\n"
"[param flip_h], [param flip_v] и [param transpose] позволяют преобразовать "
"возвращаемый полигон."

msgid "Use [method get_occluder_polygon] instead."
msgstr "Вместо этого используйте [method get_occluder_polygon]."

msgid ""
"Returns the occluder polygon of the tile for the TileSet occlusion layer with "
"index [param layer_id].\n"
"[param flip_h], [param flip_v], and [param transpose] allow transforming the "
"returned polygon."
msgstr ""
"Возвращает окклюдерный полигон тайла для слоя окклюзии TileSet с индексом "
"[param layer_id].\n"
"[param flip_h], [param flip_v] и [param transpose] позволяют преобразовать "
"возвращаемый полигон."

msgid ""
"Returns the occluder polygon at index [param polygon_index] from the TileSet "
"occlusion layer with index [param layer_id].\n"
"The [param flip_h], [param flip_v], and [param transpose] parameters can be "
"[code]true[/code] to transform the returned polygon."
msgstr ""
"Возвращает многоугольник окклюдера с индексом [param polygon_index] из слоя "
"окклюзии TileSet с индексом [param layer_id]. \n"
"Параметры [param flip_h], [param flip_v] и [param transpose] могут быть "
"[code]true[/code] для преобразования возвращаемого многоугольника."

msgid ""
"Returns the number of occluder polygons of the tile in the TileSet occlusion "
"layer with index [param layer_id]."
msgstr ""
"Возвращает количество окклюдерных полигонов тайла в слое окклюзии TileSet с "
"индексом [param layer_id]."

msgid ""
"Returns the tile's terrain bit for the given [param peering_bit] direction. "
"To check that a direction is valid, use [method is_valid_terrain_peering_bit]."
msgstr ""
"Возвращает бит ландшафа тайла для заданного направления [param peering_bit]. "
"Для проверки корректности направления используйте [method "
"is_valid_terrain_peering_bit]."

msgid ""
"Returns whether there exists a custom data layer named [param layer_name]."
msgstr ""
"Возвращает информацию о существовании пользовательского слоя данных с именем "
"[param layer_name]."

msgid ""
"Returns whether one-way collisions are enabled for the polygon at index "
"[param polygon_index] for TileSet physics layer with index [param layer_id]."
msgstr ""
"Возвращает информацию о том, включены ли односторонние столкновения для "
"полигона с индексом [param polygon_index] для физического слоя TileSet с "
"индексом [param layer_id]."

msgid ""
"Returns whether the given [param peering_bit] direction is valid for this "
"tile."
msgstr ""
"Возвращает, является ли заданное направление [param peering_bit] допустимым "
"для этого тайла."

msgid ""
"Removes the polygon at index [param polygon_index] for TileSet physics layer "
"with index [param layer_id]."
msgstr ""
"Удаляет полигон с индексом [param polygon_index] для физического слоя TileSet "
"с индексом [param layer_id]."

msgid ""
"Removes the polygon at index [param polygon_index] for TileSet occlusion "
"layer with index [param layer_id]."
msgstr ""
"Удаляет полигон с индексом [param polygon_index] для слоя окклюзии TileSet с "
"индексом [param layer_id]."

msgid ""
"Enables/disables one-way collisions on the polygon at index [param "
"polygon_index] for TileSet physics layer with index [param layer_id]."
msgstr ""
"Включает/отключает односторонние столкновения на полигоне с индексом [param "
"polygon_index] для физического слоя TileSet с индексом [param layer_id]."

msgid ""
"Sets the one-way margin (for one-way platforms) of the polygon at index "
"[param polygon_index] for TileSet physics layer with index [param layer_id]."
msgstr ""
"Устанавливает одностороннюю границу (для односторонних платформ) полигона с "
"индексом [param polygon_index] для физического слоя TileSet с индексом [param "
"layer_id]."

msgid ""
"Sets the points of the polygon at index [param polygon_index] for TileSet "
"physics layer with index [param layer_id]."
msgstr ""
"Устанавливает точки полигона с индексом [param polygon_index] для физического "
"слоя TileSet с индексом [param layer_id]."

msgid ""
"Sets the polygons count for TileSet physics layer with index [param layer_id]."
msgstr ""
"Устанавливает количество полигонов для физического слоя TileSet с индексом "
"[param layer_id]."

msgid ""
"Sets the constant angular velocity. This does not rotate the tile. This "
"angular velocity is applied to objects colliding with this tile."
msgstr ""
"Устанавливает постоянную угловую скорость. Не вращает тайл. Эта угловая "
"скорость применяется к объектам, сталкивающимся с этим тайлом."

msgid ""
"Sets the constant linear velocity. This does not move the tile. This linear "
"velocity is applied to objects colliding with this tile. This is useful to "
"create conveyor belts."
msgstr ""
"Устанавливает постоянную линейную скорость. Не перемещает тайл. Эта линейная "
"скорость применяется к объектам, сталкивающимся с этим тайлом. Это полезно "
"для создания конвейерных лент."

msgid ""
"Sets the tile's custom data value for the TileSet custom data layer with name "
"[param layer_name]."
msgstr ""
"Устанавливает пользовательское значение данных тайла для пользовательского "
"слоя данных TileSet с именем [param layer_name]."

msgid ""
"Sets the tile's custom data value for the TileSet custom data layer with "
"index [param layer_id]."
msgstr ""
"Устанавливает пользовательское значение данных тайла для пользовательского "
"слоя данных TileSet с индексом [param layer_id]."

msgid ""
"Sets the navigation polygon for the TileSet navigation layer with index "
"[param layer_id]."
msgstr ""
"Устанавливает навигационный полигон для навигационного слоя TileSet с "
"индексом [param layer_id]."

msgid "Use [method set_occluder_polygon] instead."
msgstr "Вместо этого используйте [method set_occluder_polygon]."

msgid ""
"Sets the occluder for the TileSet occlusion layer with index [param layer_id]."
msgstr ""
"Устанавливает окклюдер для слоя окклюзии TileSet с индексом [param layer_id]."

msgid ""
"Sets the occluder for polygon with index [param polygon_index] in the TileSet "
"occlusion layer with index [param layer_id]."
msgstr ""
"Устанавливает окклюдер для полигона с индексом [param polygon_index] в слое "
"окклюзии TileSet с индексом [param layer_id]."

msgid ""
"Sets the occluder polygon count in the TileSet occlusion layer with index "
"[param layer_id]."
msgstr ""
"Устанавливает количество полигонов окклюдера в слое окклюзии TileSet с "
"индексом [param layer_id]."

msgid ""
"Sets the tile's terrain bit for the given [param peering_bit] direction. To "
"check that a direction is valid, use [method is_valid_terrain_peering_bit]."
msgstr ""
"Устанавливает бит ландшафта тайла для заданного направления [param "
"peering_bit]. Для проверки корректности направления используйте [method "
"is_valid_terrain_peering_bit]."

msgid ""
"If [code]true[/code], the tile will have its texture flipped horizontally."
msgstr ""
"Если [code]true[/code], текстура тайла будет перевернута по горизонтали."

msgid "If [code]true[/code], the tile will have its texture flipped vertically."
msgstr "Если [code]true[/code], текстура тайла будет перевернута по вертикали."

msgid ""
"The [Material] to use for this [TileData]. This can be a [CanvasItemMaterial] "
"to use the default shader, or a [ShaderMaterial] to use a custom shader."
msgstr ""
"[Material] для использования с этим [TileData]. Это может быть "
"[CanvasItemMaterial] для использования шейдера по умолчанию или "
"[ShaderMaterial] для использования пользовательского шейдера."

msgid "Color modulation of the tile."
msgstr "Цветовая модуляция тайла."

msgid ""
"Relative probability of this tile being selected when drawing a pattern of "
"random tiles."
msgstr ""
"Относительная вероятность выбора этого тайла при рисовании шаблона из "
"случайных тайлов."

msgid "ID of the terrain from the terrain set that the tile uses."
msgstr "Идентификатор ландшафта из набора ландшафта, который использует тайл."

msgid "ID of the terrain set that the tile uses."
msgstr "Идентификатор набора ландшафта, который использует тайл."

msgid "Offsets the position of where the tile is drawn."
msgstr "Смещает позицию, где отображается тайл."

msgid ""
"If [code]true[/code], the tile will display transposed, i.e. with horizontal "
"and vertical texture UVs swapped."
msgstr ""
"Если [code]true[/code], тайл будет отображаться транспонированным, т. е. с "
"поменянными местами горизонтальной и вертикальной текстурой UV."

msgid "Vertical point of the tile used for determining y-sorted order."
msgstr ""
"Вертикальная точка тайла, используемая для определения порядка сортировки по "
"оси Y."

msgid "Ordering index of this tile, relative to [TileMapLayer]."
msgstr "Индекс порядка этого тайла относительно [TileMapLayer]."

msgid "Emitted when any of the properties are changed."
msgstr "Выдается при изменении любого из свойств."

msgid ""
"Use multiple [TileMapLayer] nodes instead. To convert a TileMap to a set of "
"TileMapLayer nodes, open the TileMap bottom panel with the node selected, "
"click the toolbox icon in the top-right corner and choose 'Extract TileMap "
"layers as individual TileMapLayer nodes'."
msgstr ""
"Вместо этого используйте несколько узлов [TileMapLayer]. Чтобы преобразовать "
"TileMap в набор узлов TileMapLayer, откройте нижнюю панель TileMap с "
"выбранным узлом, щелкните значок панели инструментов в правом верхнем углу и "
"выберите «Извлечь слои TileMap как отдельные узлы TileMapLayer»."

msgid "Node for 2D tile-based maps."
msgstr "Узел для 2D-карт на основе плиток."

msgid ""
"Node for 2D tile-based maps. Tilemaps use a [TileSet] which contain a list of "
"tiles which are used to create grid-based maps. A TileMap may have several "
"layers, layouting tiles on top of each other.\n"
"For performance reasons, all TileMap updates are batched at the end of a "
"frame. Notably, this means that scene tiles from a "
"[TileSetScenesCollectionSource] may be initialized after their parent. This "
"is only queued when inside the scene tree.\n"
"To force an update earlier on, call [method update_internals].\n"
"[b]Note:[/b] For performance and compatibility reasons, the coordinates "
"serialized by [TileMap] are limited to 16-bit signed integers, i.e. the range "
"for X and Y coordinates is from [code]-32768[/code] to [code]32767[/code]. "
"When saving tile data, tiles outside this range are wrapped."
msgstr ""
"Узел для создания 2D-карт на основе тайлов. TileMap использует [TileSet], "
"содержащий список тайлов для построения сеточных карт. TileMap может иметь "
"несколько слоёв, размещая тайлы друг над другом.\n"
"Из соображений производительности все обновления TileMap выполняются пакетно "
"в конце кадра. В частности, это означает, что сценовые тайлы из "
"[TileSetScenesCollectionSource] могут инициализироваться после своего "
"родителя. Это происходит только при нахождении в дереве сцены.\n"
"Для принудительного обновления раньше вызовите [method update_internals].\n"
"[b]Примечание:[/b] Для производительности и совместимости координаты, "
"сериализуемые [TileMap], ограничены 16-битными знаковыми целыми числами, т.е. "
"диапазон координат X и Y — от [code]-32768[/code] до [code]32767[/code]. При "
"сохранении данных тайлы вне этого диапазона переносятся."

msgid "Using Tilemaps"
msgstr "Использование тайловых карт"

msgid "2D Hexagonal Demo"
msgstr "2D демонстрация шестиугольных форм"

msgid "2D Grid-based Navigation with AStarGrid2D Demo"
msgstr "Демонстрация навигации на основе 2D-сетки с помощью AStarGrid2D"

msgid "2D Dynamic TileMap Layers Demo"
msgstr "Демонстрация 2D-динамических слоев TileMap"

msgid ""
"Called with a TileData object about to be used internally by the TileMap, "
"allowing its modification at runtime.\n"
"This method is only called if [method _use_tile_data_runtime_update] is "
"implemented and returns [code]true[/code] for the given tile [param coords] "
"and [param layer].\n"
"[b]Warning:[/b] The [param tile_data] object's sub-resources are the same as "
"the one in the TileSet. Modifying them might impact the whole TileSet. "
"Instead, make sure to duplicate those resources.\n"
"[b]Note:[/b] If the properties of [param tile_data] object should change over "
"time, use [method notify_runtime_tile_data_update] to notify the TileMap it "
"needs an update."
msgstr ""
"Вызывается с объектом TileData, который будет использоваться внутри TileMap, "
"что позволяет изменять его во время выполнения.\n"
"Этот метод вызывается только в том случае, если реализован [method "
"_use_tile_data_runtime_update] и возвращает [code]true[/code] для заданных "
"плиток [param coords] и [param layer].\n"
"[b]Предупреждение:[/b] Подресурсы объекта [param tile_data] такие же, как в "
"TileSet. Их изменение может повлиять на весь TileSet. Вместо этого "
"обязательно дублируйте эти ресурсы.\n"
"[b]Примечание:[/b] Если свойства объекта [param tile_data] должны со временем "
"измениться, используйте [method notify_runtime_tile_data_update], чтобы "
"уведомить TileMap о необходимости обновления."

msgid ""
"Should return [code]true[/code] if the tile at coordinates [param coords] on "
"layer [param layer] requires a runtime update.\n"
"[b]Warning:[/b] Make sure this function only return [code]true[/code] when "
"needed. Any tile processed at runtime without a need for it will imply a "
"significant performance penalty.\n"
"[b]Note:[/b] If the result of this function should changed, use [method "
"notify_runtime_tile_data_update] to notify the TileMap it needs an update."
msgstr ""
"Должен возвращать [code]true[/code], если тайл с координатами [param coords] "
"на слое [param layer] требует обновления во время выполнения.\n"
"[b]Предупреждение:[/b] Убедитесь, что эта функция возвращает [code]true[/"
"code] только при необходимости. Любой тайл, обработанный во время выполнения "
"без необходимости, будет означать значительное падение производительности.\n"
"[b]Примечание:[/b] Если результат этой функции должен измениться, используйте "
"[method notify_runtime_tile_data_update], чтобы уведомить TileMap о "
"необходимости обновления."

msgid ""
"Adds a layer at the given position [param to_position] in the array. If "
"[param to_position] is negative, the position is counted from the end, with "
"[code]-1[/code] adding the layer at the end of the array."
msgstr ""
"Добавляет слой в указанную позицию [param to_position] в массиве. Если [param "
"to_position] отрицательный, позиция отсчитывается с конца, при этом [code]-1[/"
"code] добавляет слой в конец массива."

msgid "Clears all cells."
msgstr "Очистка всех ячеек."

msgid ""
"Clears all cells on the given layer.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Очищает все ячейки на указанном слое.\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid ""
"Erases the cell on layer [param layer] at coordinates [param coords].\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Стирает ячейку на слое [param layer] с координатами [param coords].\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid "Clears cells that do not exist in the tileset."
msgstr "Очищает ячейки, которых нет в наборе плиток."

msgid ""
"Use [method notify_runtime_tile_data_update] and/or [method update_internals] "
"instead."
msgstr ""
"Вместо этого используйте [method notify_runtime_tile_data_update] и/или "
"[method update_internals]."

msgid "Forces the TileMap and the layer [param layer] to update."
msgstr "Принудительно обновляет TileMap и слой [param layer]."

msgid ""
"Returns the tile alternative ID of the cell on layer [param layer] at [param "
"coords].\n"
"If [param use_proxies] is [code]false[/code], ignores the [TileSet]'s tile "
"proxies, returning the raw alternative identifier. See [method "
"TileSet.map_tile_proxy].\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает ID альтернативы тайла для ячейки на слое [param layer] по "
"координатам [param coords].\n"
"Если [param use_proxies] равно [code]false[/code], игнорирует прокси тайлов в "
"[TileSet], возвращая исходный идентификатор альтернативы. См. [method "
"TileSet.map_tile_proxy].\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Returns the tile atlas coordinates ID of the cell on layer [param layer] at "
"coordinates [param coords]. Returns [code]Vector2i(-1, -1)[/code] if the cell "
"does not exist.\n"
"If [param use_proxies] is [code]false[/code], ignores the [TileSet]'s tile "
"proxies, returning the raw atlas coordinate identifier. See [method "
"TileSet.map_tile_proxy].\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает координаты тайла в атласе для ячейки на слое [param layer] с "
"координатами [param coords]. Возвращает [code]Vector2i(-1, -1)[/code] если "
"ячейка не существует.\n"
"Если [param use_proxies] равно [code]false[/code], игнорирует тайловые прокси "
"[TileSet], возвращая исходный идентификатор координат атласа. См. [method "
"TileSet.map_tile_proxy].\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Returns the tile source ID of the cell on layer [param layer] at coordinates "
"[param coords]. Returns [code]-1[/code] if the cell does not exist.\n"
"If [param use_proxies] is [code]false[/code], ignores the [TileSet]'s tile "
"proxies, returning the raw source identifier. See [method "
"TileSet.map_tile_proxy].\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает ID источника тайла для ячейки на слое [param layer] с координатами "
"[param coords]. Возвращает [code]-1[/code], если ячейка не существует.\n"
"Если [param use_proxies] равно [code]false[/code], игнорирует прокси тайлов в "
"[TileSet], возвращая исходный идентификатор источника. См. [method "
"TileSet.map_tile_proxy].\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Returns the [TileData] object associated with the given cell, or [code]null[/"
"code] if the cell does not exist or is not a [TileSetAtlasSource].\n"
"If [param layer] is negative, the layers are accessed from the last one.\n"
"[codeblock]\n"
"func get_clicked_tile_power():\n"
"\tvar clicked_cell = "
"tile_map.local_to_map(tile_map.get_local_mouse_position())\n"
"\tvar data = tile_map.get_cell_tile_data(0, clicked_cell)\n"
"\tif data:\n"
"\t\treturn data.get_custom_data(\"power\")\n"
"\telse:\n"
"\t\treturn 0\n"
"[/codeblock]\n"
"If [param use_proxies] is [code]false[/code], ignores the [TileSet]'s tile "
"proxies. See [method TileSet.map_tile_proxy]."
msgstr ""
"Возвращает объект [TileData], связанный с заданной ячейкой, или [code]null[/"
"code], если ячейка не существует или не является [TileSetAtlasSource].\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с "
"последнего.\n"
"[codeblock]\n"
"func get_clicked_tile_power():\n"
"\tvar clicked_cell = "
"tile_map.local_to_map(tile_map.get_local_mouse_position())\n"
"\tvar data = tile_map.get_cell_tile_data(0, clicked_cell)\n"
"\tif data:\n"
"\t\treturn data.get_custom_data(\"power\")\n"
"\telse:\n"
"\t\treturn 0\n"
"[/codeblock]\n"
"Если [param use_proxies] равен [code]false[/code], игнорирует прокси-серверы "
"плиток [TileSet]. См. [method TileSet.map_tile_proxy]."

msgid ""
"Returns the coordinates of the tile for given physics body RID. Such RID can "
"be retrieved from [method KinematicCollision2D.get_collider_rid], when "
"colliding with a tile."
msgstr ""
"Возвращает координаты тайла для заданного RID физического тела. Такой RID "
"можно получить из [method KinematicCollision2D.get_collider_rid] при "
"столкновении с тайлом."

msgid ""
"Returns the tilemap layer of the tile for given physics body RID. Such RID "
"can be retrieved from [method KinematicCollision2D.get_collider_rid], when "
"colliding with a tile."
msgstr ""
"Возвращает слой тайловой карты тайла для заданного физического тела RID. "
"Такой RID может быть получен из [method "
"KinematicCollision2D.get_collider_rid] при столкновении с тайлом."

msgid ""
"Returns a TileMap layer's modulate.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает модуляцию слоя TileMap.\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid ""
"Returns a TileMap layer's name.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает имя слоя TileMap.\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid ""
"Returns the [RID] of the [NavigationServer2D] navigation map assigned to the "
"specified TileMap layer [param layer].\n"
"By default the TileMap uses the default [World2D] navigation map for the "
"first TileMap layer. For each additional TileMap layer a new navigation map "
"is created for the additional layer.\n"
"In order to make [NavigationAgent2D] switch between TileMap layer navigation "
"maps use [method NavigationAgent2D.set_navigation_map] with the navigation "
"map received from [method get_layer_navigation_map].\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает [RID] навигационной карты [NavigationServer2D], назначенной "
"указанному слою TileMap [param layer].\n"
"По умолчанию TileMap использует навигационную карту [World2D] по умолчанию "
"для первого слоя TileMap. Для каждого дополнительного слоя TileMap создается "
"новая навигационная карта для дополнительного слоя.\n"
"Чтобы заставить [NavigationAgent2D] переключаться между навигационными "
"картами слоя TileMap, используйте [method "
"NavigationAgent2D.set_navigation_map] с навигационной картой, полученной из "
"[method get_layer_navigation_map].\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid ""
"Returns a TileMap layer's Y sort origin.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает начало сортировки Y слоя TileMap.\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid ""
"Returns a TileMap layer's Z-index value.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает значение Z-индекса слоя TileMap.\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid "Returns the number of layers in the TileMap."
msgstr "Возвращает количество слоев в TileMap."

msgid "Use [method get_layer_navigation_map] instead."
msgstr "Вместо этого используйте [method get_layer_navigation_map]."

msgid ""
"Returns the [RID] of the [NavigationServer2D] navigation map assigned to the "
"specified TileMap layer [param layer]."
msgstr ""
"Возвращает [RID] навигационной карты [NavigationServer2D], назначенной "
"указанному слою TileMap [param layer]."

msgid ""
"Returns the neighboring cell to the one at coordinates [param coords], "
"identified by the [param neighbor] direction. This method takes into account "
"the different layouts a TileMap can take."
msgstr ""
"Возвращает соседнюю ячейку к ячейке с координатами [param coords], "
"идентифицированной направлением [param neighbor]. Этот метод учитывает "
"различные макеты, которые может принимать TileMap."

msgid ""
"Creates a new [TileMapPattern] from the given layer and set of cells.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Создает новый [TileMapPattern] из указанного слоя и набора ячеек.\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid ""
"Returns the list of all neighbourings cells to the one at [param coords]."
msgstr "Возвращает список всех соседних ячеек для ячейки с [param coords]."

msgid ""
"Returns a [Vector2i] array with the positions of all cells containing a tile "
"in the given layer. A cell is considered empty if its source identifier "
"equals -1, its atlas coordinates identifiers is [code]Vector2(-1, -1)[/code] "
"and its alternative identifier is -1.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает массив [Vector2i] с позициями всех ячеек, содержащих тайл в "
"указанном слое. Ячейка считается пустой, если её идентификатор источника "
"равен -1, координаты атласа — [code]Vector2(-1, -1)[/code], а альтернативный "
"идентификатор — -1.\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Returns a [Vector2i] array with the positions of all cells containing a tile "
"in the given layer. Tiles may be filtered according to their source ([param "
"source_id]), their atlas coordinates ([param atlas_coords]) or alternative id "
"([param alternative_tile]).\n"
"If a parameter has its value set to the default one, this parameter is not "
"used to filter a cell. Thus, if all parameters have their respective default "
"value, this method returns the same result as [method get_used_cells].\n"
"A cell is considered empty if its source identifier equals -1, its atlas "
"coordinates identifiers is [code]Vector2(-1, -1)[/code] and its alternative "
"identifier is -1.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает массив [Vector2i] с позициями всех ячеек, содержащих тайл в "
"указанном слое. Тайлы могут быть отфильтрованы по их источнику ([param "
"source_id]), координатам атласа ([param atlas_coords]) или альтернативному "
"идентификатору ([param alternative_tile]).\n"
"Если параметр имеет значение по умолчанию, он не используется для фильтрации "
"ячеек. Таким образом, если все параметры имеют свои значения по умолчанию, "
"этот метод возвращает тот же результат, что и [method get_used_cells].\n"
"Ячейка считается пустой, если её идентификатор источника равен -1, координаты "
"атласа — [code]Vector2(-1, -1)[/code], а альтернативный идентификатор — -1.\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Returns a rectangle enclosing the used (non-empty) tiles of the map, "
"including all layers."
msgstr ""
"Возвращает прямоугольник, охватывающий используемые (непустые) фрагменты "
"карты, включая все слои."

msgid ""
"Returns [code]true[/code] if the cell on layer [param layer] at coordinates "
"[param coords] is flipped horizontally. The result is valid only for atlas "
"sources."
msgstr ""
"Возвращает [code]true[/code], если ячейка на слое [param layer] с "
"координатами [param coords] перевернута по горизонтали. Результат "
"действителен только для источников атласа."

msgid ""
"Returns [code]true[/code] if the cell on layer [param layer] at coordinates "
"[param coords] is flipped vertically. The result is valid only for atlas "
"sources."
msgstr ""
"Возвращает [code]true[/code], если ячейка на слое [param layer] с "
"координатами [param coords] перевернута вертикально. Результат действителен "
"только для источников атласа."

msgid ""
"Returns [code]true[/code] if the cell on layer [param layer] at coordinates "
"[param coords] is transposed. The result is valid only for atlas sources."
msgstr ""
"Возвращает [code]true[/code], если ячейка на слое [param layer] с "
"координатами [param coords] транспонирована. Результат действителен только "
"для источников атласа."

msgid ""
"Returns if a layer is enabled.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает, включен ли слой.\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid "Returns if a layer's built-in navigation regions generation is enabled."
msgstr ""
"Возвращает значение, если включена генерация встроенных областей навигации "
"слоя."

msgid ""
"Returns if a layer Y-sorts its tiles.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Возвращает, сортирует ли слой свои тайлы по оси Y.\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Returns the map coordinates of the cell containing the given [param "
"local_position]. If [param local_position] is in global coordinates, consider "
"using [method Node2D.to_local] before passing it to this method. See also "
"[method map_to_local]."
msgstr ""
"Возвращает координаты карты ячейки, содержащей заданный [param "
"local_position]. Если [param local_position] находится в глобальных "
"координатах, рассмотрите возможность использования [method Node2D.to_local] "
"перед передачей его этому методу. См. также [method map_to_local]."

msgid ""
"Returns for the given coordinate [param coords_in_pattern] in a "
"[TileMapPattern] the corresponding cell coordinates if the pattern was pasted "
"at the [param position_in_tilemap] coordinates (see [method set_pattern]). "
"This mapping is required as in half-offset tile shapes, the mapping might not "
"work by calculating [code]position_in_tile_map + coords_in_pattern[/code]."
msgstr ""
"Возвращает соответствующие координаты ячейки для заданной координаты [param "
"coords_in_pattern] в [TileMapPattern], если шаблон был вставлен по "
"координатам [param position_in_tilemap] (см. [method set_pattern]). Это "
"сопоставление необходимо, потому что для фигур тайлов со смещением на "
"половину простое вычисление [code]position_in_tile_map + coords_in_pattern[/"
"code] может не сработать."

msgid ""
"Returns the centered position of a cell in the TileMap's local coordinate "
"space. To convert the returned value into global coordinates, use [method "
"Node2D.to_global]. See also [method local_to_map].\n"
"[b]Note:[/b] This may not correspond to the visual position of the tile, i.e. "
"it ignores the [member TileData.texture_origin] property of individual tiles."
msgstr ""
"Возвращает центрированную позицию ячейки в локальном пространстве координат "
"TileMap. Для преобразования возвращаемого значения в глобальные координаты "
"используйте [method Node2D.to_global]. См. также [method local_to_map].\n"
"[b]Примечание:[/b] Это может не соответствовать визуальной позиции тайла, "
"т.е. игнорируется свойство [member TileData.texture_origin] отдельных тайлов."

msgid ""
"Moves the layer at index [param layer] to the given position [param "
"to_position] in the array."
msgstr ""
"Перемещает слой с индексом [param layer] в заданную позицию [param "
"to_position] в массиве."

msgid ""
"Notifies the TileMap node that calls to [method "
"_use_tile_data_runtime_update] or [method _tile_data_runtime_update] will "
"lead to different results. This will thus trigger a TileMap update.\n"
"If [param layer] is provided, only notifies changes for the given layer. "
"Providing the [param layer] argument (when applicable) is usually preferred "
"for performance reasons.\n"
"[b]Warning:[/b] Updating the TileMap is computationally expensive and may "
"impact performance. Try to limit the number of calls to this function to "
"avoid unnecessary update.\n"
"[b]Note:[/b] This does not trigger a direct update of the TileMap, the update "
"will be done at the end of the frame as usual (unless you call [method "
"update_internals])."
msgstr ""
"Уведомляет узел TileMap, который вызывает [method "
"_use_tile_data_runtime_update] или [method _tile_data_runtime_update], что "
"приведет к разным результатам. Таким образом, это вызовет обновление "
"TileMap.\n"
"Если указан [param layer], уведомляет только об изменениях для указанного "
"слоя. Предоставление аргумента [param layer] (когда применимо) обычно "
"предпочтительнее по соображениям производительности.\n"
"[b]Предупреждение:[/b] Обновление TileMap требует больших вычислительных "
"затрат и может повлиять на производительность. Постарайтесь ограничить "
"количество вызовов этой функции, чтобы избежать ненужного обновления.\n"
"[b]Примечание:[/b] Это не запускает прямое обновление TileMap, обновление "
"будет выполнено в конце кадра, как обычно (если вы не вызовете [method "
"update_internals])."

msgid "Removes the layer at index [param layer]."
msgstr "Удаляет слой с индексом [param layer]."

msgid ""
"Sets the tile identifiers for the cell on layer [param layer] at coordinates "
"[param coords]. Each tile of the [TileSet] is identified using three parts:\n"
"- The source identifier [param source_id] identifies a [TileSetSource] "
"identifier. See [method TileSet.set_source_id],\n"
"- The atlas coordinates identifier [param atlas_coords] identifies a tile "
"coordinates in the atlas (if the source is a [TileSetAtlasSource]). For "
"[TileSetScenesCollectionSource] it should always be [code]Vector2i(0, 0)[/"
"code]),\n"
"- The alternative tile identifier [param alternative_tile] identifies a tile "
"alternative in the atlas (if the source is a [TileSetAtlasSource]), and the "
"scene for a [TileSetScenesCollectionSource].\n"
"If [param source_id] is set to [code]-1[/code], [param atlas_coords] to "
"[code]Vector2i(-1, -1)[/code] or [param alternative_tile] to [code]-1[/code], "
"the cell will be erased. An erased cell gets [b]all[/b] its identifiers "
"automatically set to their respective invalid values, namely [code]-1[/code], "
"[code]Vector2i(-1, -1)[/code] and [code]-1[/code].\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Устанавливает идентификаторы тайла для ячейки в слое [param layer] по "
"координатам [param coords]. Каждый тайл [TileSet] идентифицируется тремя "
"частями:\n"
"- Идентификатор источника [param source_id] определяет источник "
"[TileSetSource]. См. [method TileSet.set_source_id],\n"
"- Идентификатор координат атласа [param atlas_coords] определяет координаты "
"тайла в атласе (если источник — [TileSetAtlasSource]). Для "
"[TileSetScenesCollectionSource] всегда должно быть [code]Vector2i(0, 0)[/"
"code]),\n"
"- Идентификатор альтернативного тайла [param alternative_tile] определяет "
"альтернативу тайла в атласе (если источник — [TileSetAtlasSource]) или сцену "
"для [TileSetScenesCollectionSource].\n"
"Если [param source_id] установлен в [code]-1[/code], [param atlas_coords] — в "
"[code]Vector2i(-1, -1)[/code] или [param alternative_tile] — в [code]-1[/"
"code], ячейка стирается. Удалённая ячейка получает [b]все[/b] свои "
"идентификаторы автоматически установленными в недействительные значения: "
"[code]-1[/code], [code]Vector2i(-1, -1)[/code] и [code]-1[/code].\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Update all the cells in the [param cells] coordinates array so that they use "
"the given [param terrain] for the given [param terrain_set]. If an updated "
"cell has the same terrain as one of its neighboring cells, this function "
"tries to join the two. This function might update neighboring tiles if needed "
"to create correct terrain transitions.\n"
"If [param ignore_empty_terrains] is [code]true[/code], empty terrains will be "
"ignored when trying to find the best fitting tile for the given terrain "
"constraints.\n"
"If [param layer] is negative, the layers are accessed from the last one.\n"
"[b]Note:[/b] To work correctly, this method requires the TileMap's TileSet to "
"have terrains set up with all required terrain combinations. Otherwise, it "
"may produce unexpected results."
msgstr ""
"Обновляет все ячейки в массиве координат [param cells], чтобы они "
"использовали заданный [param terrain] для указанного [param terrain_set]. "
"Если обновлённая ячейка имеет тот же террейн, что и соседняя, функция "
"попытается объединить их. При необходимости функция может обновить соседние "
"тайлы для создания корректных переходов между террейнами.\n"
"Если [param ignore_empty_terrains] равно [code]true[/code], пустые террейны "
"будут игнорироваться при поиске наиболее подходящего тайла под заданные "
"ограничения террейнов.\n"
"Если [param layer] отрицательный, слои перебираются с последнего.\n"
"[b]Примечание:[/b] Для корректной работы требуется, чтобы TileSet в TileMap "
"имел настроенные террейны со всеми необходимыми комбинациями террейнов. В "
"противном случае могут возникать непредвиденные результаты."

msgid ""
"Update all the cells in the [param path] coordinates array so that they use "
"the given [param terrain] for the given [param terrain_set]. The function "
"will also connect two successive cell in the path with the same terrain. This "
"function might update neighboring tiles if needed to create correct terrain "
"transitions.\n"
"If [param ignore_empty_terrains] is [code]true[/code], empty terrains will be "
"ignored when trying to find the best fitting tile for the given terrain "
"constraints.\n"
"If [param layer] is negative, the layers are accessed from the last one.\n"
"[b]Note:[/b] To work correctly, this method requires the TileMap's TileSet to "
"have terrains set up with all required terrain combinations. Otherwise, it "
"may produce unexpected results."
msgstr ""
"Обновляет все ячейки в массиве координат [param path], чтобы они использовали "
"заданный [param terrain] для указанного [param terrain_set]. Функция также "
"соединит две последовательные ячейки в пути с одинаковым террейном. При "
"необходимости функция может обновить соседние тайлы для создания корректных "
"переходов между террейнами.\n"
"Если [param ignore_empty_terrains] равно [code]true[/code], пустые террейны "
"будут игнорироваться при поиске наиболее подходящего тайла под заданные "
"ограничения террейнов.\n"
"Если [param layer] отрицательный, слои перебираются с последнего.\n"
"[b]Примечание:[/b] Для корректной работы требуется, чтобы TileSet в TileMap "
"имел настроенные террейны со всеми необходимыми комбинациями террейнов. В "
"противном случае могут возникать непредвиденные результаты."

msgid ""
"Enables or disables the layer [param layer]. A disabled layer is not "
"processed at all (no rendering, no physics, etc.).\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Включает или отключает слой [param layer]. Отключенный слой вообще не "
"обрабатывается (нет рендеринга, нет физики и т. д.).\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid ""
"Sets a layer's color. It will be multiplied by tile's color and TileMap's "
"modulate.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Устанавливает цвет слоя. Он будет умножен на цвет тайла и модуляцию TileMap.\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Sets a layer's name. This is mostly useful in the editor.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Задает имя слоя. Это в основном полезно в редакторе.\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid ""
"Enables or disables a layer's built-in navigation regions generation. Disable "
"this if you need to bake navigation regions from a TileMap using a "
"[NavigationRegion2D] node."
msgstr ""
"Включает или отключает встроенную генерацию областей навигации слоя. "
"Отключите это, если вам нужно запекать области навигации из TileMap с "
"использованием узла [NavigationRegion2D]."

msgid ""
"Assigns [param map] as a [NavigationServer2D] navigation map for the "
"specified TileMap layer [param layer].\n"
"By default the TileMap uses the default [World2D] navigation map for the "
"first TileMap layer. For each additional TileMap layer a new navigation map "
"is created for the additional layer.\n"
"In order to make [NavigationAgent2D] switch between TileMap layer navigation "
"maps use [method NavigationAgent2D.set_navigation_map] with the navigation "
"map received from [method get_layer_navigation_map].\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Назначает [param map] как навигационную карту [NavigationServer2D] для "
"указанного слоя TileMap [param layer].\n"
"По умолчанию TileMap использует навигационную карту по умолчанию [World2D] "
"для первого слоя TileMap. Для каждого дополнительного слоя TileMap создается "
"новая навигационная карта для дополнительного слоя.\n"
"Чтобы [NavigationAgent2D] переключался между навигационными картами слоя "
"TileMap, используйте [method NavigationAgent2D.set_navigation_map] с "
"навигационной картой, полученной из [method get_layer_navigation_map].\n"
"Если [param layer] отрицательный, доступ к слоям осуществляется с последнего."

msgid ""
"Enables or disables a layer's Y-sorting. If a layer is Y-sorted, the layer "
"will behave as a CanvasItem node where each of its tile gets Y-sorted.\n"
"Y-sorted layers should usually be on different Z-index values than not Y-"
"sorted layers, otherwise, each of those layer will be Y-sorted as whole with "
"the Y-sorted one. This is usually an undesired behavior.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Включает или выключает сортировку слоя по оси Y. Если слой сортируется по оси "
"Y, он будет вести себя как узел CanvasItem, в котором каждый тайл сортируется "
"по оси Y.\n"
"Слои с сортировкой по оси Y обычно должны находиться на разных значениях Z-"
"индекса по сравнению со слоями без сортировки по оси Y, иначе каждый из таких "
"слоев будет сортироваться по оси Y целиком вместе с сортируемым слоем. Обычно "
"это нежелательное поведение.\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Sets a layer's Y-sort origin value. This Y-sort origin value is added to each "
"tile's Y-sort origin value.\n"
"This allows, for example, to fake a different height level on each layer. "
"This can be useful for top-down view games.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Устанавливает значение точки отсчёта сортировки по Y для слоя. Это значение "
"добавляется к точке отсчёта сортировки каждого тайла в слое.\n"
"Это позволяет, например, имитировать разную высоту для каждого слоя. Может "
"быть полезно для игр с видом сверху.\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Sets a layers Z-index value. This Z-index is added to each tile's Z-index "
"value.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Устанавливает значение Z-индекса слоя. Это значение Z-индекса добавляется к "
"значению Z-индекса каждого тайла.\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid "Use [method set_layer_navigation_map] instead."
msgstr "Вместо этого используйте [method set_layer_navigation_map]."

msgid ""
"Assigns [param map] as a [NavigationServer2D] navigation map for the "
"specified TileMap layer [param layer]."
msgstr ""
"Назначает [param map] в качестве навигационной карты [NavigationServer2D] для "
"указанного слоя TileMap [param layer]."

msgid ""
"Paste the given [TileMapPattern] at the given [param position] and [param "
"layer] in the tile map.\n"
"If [param layer] is negative, the layers are accessed from the last one."
msgstr ""
"Вставляет заданный [TileMapPattern] в указанную позицию [param position] и "
"слой [param layer] в tilemap.\n"
"Если [param layer] отрицательный, слои перебираются с последнего."

msgid ""
"Triggers a direct update of the TileMap. Usually, calling this function is "
"not needed, as TileMap node updates automatically when one of its properties "
"or cells is modified.\n"
"However, for performance reasons, those updates are batched and delayed to "
"the end of the frame. Calling this function will force the TileMap to update "
"right away instead.\n"
"[b]Warning:[/b] Updating the TileMap is computationally expensive and may "
"impact performance. Try to limit the number of updates and how many tiles "
"they impact."
msgstr ""
"Запускает прямое обновление TileMap. Обычно вызов этой функции не требуется, "
"так как узел TileMap обновляется автоматически при изменении одного из его "
"свойств или ячеек.\n"
"Однако по соображениям производительности эти обновления пакетируются и "
"задерживаются до конца кадра. Вызов этой функции заставит TileMap обновиться "
"немедленно.\n"
"[b]Предупреждение:[/b] Обновление TileMap требует больших вычислительных "
"затрат и может повлиять на производительность. Попробуйте ограничить "
"количество обновлений и количество плиток, на которые они влияют."

msgid ""
"If enabled, the TileMap will see its collisions synced to the physics tick "
"and change its collision type from static to kinematic. This is required to "
"create TileMap-based moving platform.\n"
"[b]Note:[/b] Enabling [member collision_animatable] may have a small "
"performance impact, only do it if the TileMap is moving and has colliding "
"tiles."
msgstr ""
"Если включено, TileMap увидит, что его столкновения синхронизированы с "
"физическим тиком, и изменит тип столкновения со статического на "
"кинематический. Это необходимо для создания движущейся платформы на основе "
"TileMap.\n"
"[b]Примечание:[/b] Включение [member collision_animatable] может оказать "
"небольшое влияние на производительность, делайте это только в том случае, "
"если TileMap движется и имеет сталкивающиеся тайлы."

msgid ""
"Show or hide the TileMap's collision shapes. If set to [constant "
"VISIBILITY_MODE_DEFAULT], this depends on the show collision debug settings."
msgstr ""
"Показать или скрыть формы столкновений TileMap. Если установлено значение "
"[constant VISIBILITY_MODE_DEFAULT], это зависит от настроек отладки "
"столкновений."

msgid ""
"Show or hide the TileMap's navigation meshes. If set to [constant "
"VISIBILITY_MODE_DEFAULT], this depends on the show navigation debug settings."
msgstr ""
"Показать или скрыть навигационные сетки TileMap. Если установлено значение "
"[constant VISIBILITY_MODE_DEFAULT], это зависит от настроек отладки навигации "
"показа."

msgid ""
"The TileMap's quadrant size. A quadrant is a group of tiles to be drawn "
"together on a single canvas item, for optimization purposes. [member "
"rendering_quadrant_size] defines the length of a square's side, in the map's "
"coordinate system, that forms the quadrant. Thus, the default quadrant size "
"groups together [code]16 * 16 = 256[/code] tiles.\n"
"The quadrant size does not apply on Y-sorted layers, as tiles are grouped by "
"Y position instead in that case.\n"
"[b]Note:[/b] As quadrants are created according to the map's coordinate "
"system, the quadrant's \"square shape\" might not look like square in the "
"TileMap's local coordinate system."
msgstr ""
"Размер квадранта TileMap. Квадрант — это группа тайлов, которые нужно "
"нарисовать вместе на одном элементе холста в целях оптимизации. [member "
"rendering_quadrant_size] определяет длину стороны квадрата в системе "
"координат карты, которая образует квадрант. Таким образом, размер квадранта "
"по умолчанию группирует вместе [code]16 * 16 = 256[/code] плиток.\n"
"Размер квадранта не применяется к слоям, отсортированным по Y, так как в этом "
"случае тайлы группируются по положению Y.\n"
"[b]Примечание:[/b] Поскольку квадранты создаются в соответствии с системой "
"координат карты, «квадратная форма» квадранта может не выглядеть как квадрат "
"в локальной системе координат TileMap."

msgid ""
"The [TileSet] used by this [TileMap]. The textures, collisions, and "
"additional behavior of all available tiles are stored here."
msgstr ""
"[TileSet], используемый этим [TileMap]. Здесь хранятся текстуры, столкновения "
"и дополнительное поведение всех доступных плиток."

msgid "Emitted when the [TileSet] of this TileMap changes."
msgstr "Вызывается при изменении [TileSet] данного TileMap."

msgid "Use the debug settings to determine visibility."
msgstr "Используйте настройки отладки для определения видимости."

msgid "Always hide."
msgstr "Всегда скрывается."

msgid "Always show."
msgstr "Всегда показывается."

msgid ""
"Node for 2D tile-based maps. A [TileMapLayer] uses a [TileSet] which contain "
"a list of tiles which are used to create grid-based maps. Unlike the "
"[TileMap] node, which is deprecated, [TileMapLayer] has only one layer of "
"tiles. You can use several [TileMapLayer] to achieve the same result as a "
"[TileMap] node.\n"
"For performance reasons, all TileMap updates are batched at the end of a "
"frame. Notably, this means that scene tiles from a "
"[TileSetScenesCollectionSource] are initialized after their parent. This is "
"only queued when inside the scene tree.\n"
"To force an update earlier on, call [method update_internals].\n"
"[b]Note:[/b] For performance and compatibility reasons, the coordinates "
"serialized by [TileMapLayer] are limited to 16-bit signed integers, i.e. the "
"range for X and Y coordinates is from [code]-32768[/code] to [code]32767[/"
"code]. When saving tile data, tiles outside this range are wrapped."
msgstr ""
"Узел для 2D-карт на основе тайлов. [TileMapLayer] использует [TileSet], "
"содержащий список плиток, которые используются для создания карт на основе "
"сетки. В отличие от узла [TileMap], который устарел, [TileMapLayer] имеет "
"только один слой плиток. Вы можете использовать несколько [TileMapLayer] для "
"достижения того же результата, что и узел [TileMap].\n"
"Из соображений производительности все обновления TileMap группируются в конце "
"кадра. Это означает, что тайлы сцены из [TileSetScenesCollectionSource] "
"инициализируются после своего родительского элемента. Они ставятся в очередь "
"только внутри дерева сцены.\n"
"Чтобы принудительно выполнить обновление раньше, вызовите [method "
"update_internals].\n"
"[b]Примечание:[/b] Для повышения производительности и совместимости "
"координаты, сериализуемые [TileMapLayer], ограничены 16-битными знаковыми "
"целыми числами, то есть диапазон координат X и Y составляет от [code]-32768[/"
"code] до [code]32767[/code]. При сохранении данных, тайлы, выходящие за этот "
"диапазон, переносятся."

msgid ""
"Called with a [TileData] object about to be used internally by the "
"[TileMapLayer], allowing its modification at runtime.\n"
"This method is only called if [method _use_tile_data_runtime_update] is "
"implemented and returns [code]true[/code] for the given tile [param coords].\n"
"[b]Warning:[/b] The [param tile_data] object's sub-resources are the same as "
"the one in the TileSet. Modifying them might impact the whole TileSet. "
"Instead, make sure to duplicate those resources.\n"
"[b]Note:[/b] If the properties of [param tile_data] object should change over "
"time, use [method notify_runtime_tile_data_update] to notify the "
"[TileMapLayer] it needs an update."
msgstr ""
"Вызывается с объектом [TileData], который будет использоваться внутри "
"[TileMapLayer], что позволяет изменять его во время выполнения.\n"
"Этот метод вызывается только в том случае, если реализован [method "
"_use_tile_data_runtime_update] и возвращает [code]true[/code] для заданного "
"тайла [param coords].\n"
"[b]Предупреждение:[/b] Подресурсы объекта [param tile_data] такие же, как в "
"TileSet. Их изменение может повлиять на весь TileSet. Вместо этого "
"обязательно дублируйте эти ресурсы.\n"
"[b]Примечание:[/b] Если свойства объекта [param tile_data] должны со временем "
"измениться, используйте [method notify_runtime_tile_data_update], чтобы "
"уведомить [TileMapLayer], что ему нужно обновление."

msgid ""
"Called when this [TileMapLayer]'s cells need an internal update. This update "
"may be caused from individual cells being modified or by a change in the "
"[member tile_set] (causing all cells to be queued for an update). The first "
"call to this function is always for initializing all the [TileMapLayer]'s "
"cells. [param coords] contains the coordinates of all modified cells, roughly "
"in the order they were modified. [param forced_cleanup] is [code]true[/code] "
"when the [TileMapLayer]'s internals should be fully cleaned up. This is the "
"case when:\n"
"- The layer is disabled;\n"
"- The layer is not visible;\n"
"- [member tile_set] is set to [code]null[/code];\n"
"- The node is removed from the tree;\n"
"- The node is freed.\n"
"Note that any internal update happening while one of these conditions is "
"verified is considered to be a \"cleanup\". See also [method "
"update_internals].\n"
"[b]Warning:[/b] Implementing this method may degrade the [TileMapLayer]'s "
"performance."
msgstr ""
"Вызывается, когда ячейки этого [TileMapLayer] нуждаются во внутреннем "
"обновлении. Это обновление может быть вызвано изменением отдельных ячеек или "
"изменением в [member tile_set] (что приводит к тому, что все ячейки ставятся "
"в очередь на обновление). Первый вызов этой функции всегда предназначен для "
"инициализации всех ячеек [TileMapLayer]. [param coords] содержит координаты "
"всех измененных ячеек, примерно в том порядке, в котором они были изменены. "
"[param force_cleanup] имеет значение [code]true[/code], когда внутренние "
"данные [TileMapLayer] должны быть полностью очищены. Это происходит, когда:\n"
"- Слой отключен;\n"
"- Слой не виден;\n"
"- [member tile_set] имеет значение [code]null[/code];\n"
"- Узел удален из дерева;\n"
"- Узел освобожден.\n"
"Обратите внимание, что любое внутреннее обновление, происходящее при проверке "
"одного из этих условий, считается «очисткой». См. также [method "
"update_internals].\n"
"[b]Предупреждение:[/b] Реализация этого метода может ухудшить "
"производительность [TileMapLayer]."

msgid ""
"Should return [code]true[/code] if the tile at coordinates [param coords] "
"requires a runtime update.\n"
"[b]Warning:[/b] Make sure this function only returns [code]true[/code] when "
"needed. Any tile processed at runtime without a need for it will imply a "
"significant performance penalty.\n"
"[b]Note:[/b] If the result of this function should change, use [method "
"notify_runtime_tile_data_update] to notify the [TileMapLayer] it needs an "
"update."
msgstr ""
"Должен возвращать [code]true[/code], если тайл по координатам [param coords] "
"требует обновления во время выполнения.\n"
"[b]Предупреждение:[/b] Убедитесь, что эта функция возвращает [code]true[/"
"code] только при необходимости. Обработка любого тайла во время выполнения "
"без необходимости приведёт к значительному снижению производительности.\n"
"[b]Примечание:[/b] Если результат этой функции должен измениться, используйте "
"[method notify_runtime_tile_data_update], чтобы уведомить [TileMapLayer] о "
"необходимости обновления."

msgid "Erases the cell at coordinates [param coords]."
msgstr "Стирает ячейку с координатами [param coords]."

msgid ""
"Clears cells containing tiles that do not exist in the [member tile_set]."
msgstr ""
"Очищает ячейки, содержащие тайлы, которые не существуют в [member tile_set]."

msgid ""
"Returns the tile alternative ID of the cell at coordinates [param coords]."
msgstr ""
"Возвращает идентификатор альтернативного тайла ячейки по координатам [param "
"coords]."

msgid ""
"Returns the tile atlas coordinates ID of the cell at coordinates [param "
"coords]. Returns [code]Vector2i(-1, -1)[/code] if the cell does not exist."
msgstr ""
"Возвращает идентификатор координат атласа тайла ячейки с координатами [param "
"coords]. Возвращает [code]Vector2i(-1, -1)[/code], если ячейка не существует."

msgid ""
"Returns the tile source ID of the cell at coordinates [param coords]. Returns "
"[code]-1[/code] if the cell does not exist."
msgstr ""
"Возвращает идентификатор источника тайла ячейки с координатами [param "
"coords]. Возвращает [code]-1[/code], если ячейка не существует."

msgid ""
"Returns the [TileData] object associated with the given cell, or [code]null[/"
"code] if the cell does not exist or is not a [TileSetAtlasSource].\n"
"[codeblock]\n"
"func get_clicked_tile_power():\n"
"\tvar clicked_cell = "
"tile_map_layer.local_to_map(tile_map_layer.get_local_mouse_position())\n"
"\tvar data = tile_map_layer.get_cell_tile_data(clicked_cell)\n"
"\tif data:\n"
"\t\treturn data.get_custom_data(\"power\")\n"
"\telse:\n"
"\t\treturn 0\n"
"[/codeblock]"
msgstr ""
"Возвращает объект [TileData], связанный с заданной ячейкой, или [code]null[/"
"code], если ячейка не существует или не является [TileSetAtlasSource].\n"
"[codeblock]\n"
"func get_clicked_tile_power():\n"
"\tvar clicked_cell = "
"tile_map_layer.local_to_map(tile_map_layer.get_local_mouse_position())\n"
"\tvar data = tile_map_layer.get_cell_tile_data(clicked_cell)\n"
"\tif data:\n"
"\t\treturn data.get_custom_data(\"power\")\n"
"\telse:\n"
"\t\treturn 0\n"
"[/codeblock]"

msgid ""
"Returns the coordinates of the physics quadrant (see [member "
"physics_quadrant_size]) for given physics body [RID]. Such an [RID] can be "
"retrieved from [method KinematicCollision2D.get_collider_rid], when colliding "
"with a tile."
msgstr ""
"Возвращает координаты физического квадранта (см. [member "
"physics_quadrant_size]) для заданного физического тела [RID]. Такой [RID] "
"можно получить из [method KinematicCollision2D.get_collider_rid] при "
"столкновении с тайлом."

msgid ""
"Returns the [RID] of the [NavigationServer2D] navigation used by this "
"[TileMapLayer].\n"
"By default this returns the default [World2D] navigation map, unless a custom "
"map was provided using [method set_navigation_map]."
msgstr ""
"Возвращает [RID] навигации [NavigationServer2D], используемой этим "
"[TileMapLayer].\n"
"По умолчанию возвращается карта навигации [World2D] по умолчанию, если только "
"пользовательская карта не была предоставлена с помощью [method "
"set_navigation_map]."

msgid ""
"Creates and returns a new [TileMapPattern] from the given array of cells. See "
"also [method set_pattern]."
msgstr ""
"Создает и возвращает новый [TileMapPattern] из указанного массива ячеек. См. "
"также [method set_pattern]."

msgid ""
"Returns the list of all neighboring cells to the one at [param coords]. Any "
"neighboring cell is one that is touching edges, so for a square cell 4 cells "
"would be returned, for a hexagon 6 cells are returned."
msgstr ""
"Возвращает список всех соседних ячеек для ячейки с [param coords]. Любая "
"соседняя ячейка — это та, которая касается краев, поэтому для квадратной "
"ячейки будет возвращено 4 ячейки, для шестиугольника — 6 ячеек."

msgid ""
"Returns a [Vector2i] array with the positions of all cells containing a tile. "
"A cell is considered empty if its source identifier equals [code]-1[/code], "
"its atlas coordinate identifier is [code]Vector2(-1, -1)[/code] and its "
"alternative identifier is [code]-1[/code]."
msgstr ""
"Возвращает массив [Vector2i] с позициями всех ячеек, содержащих тайл. Ячейка "
"считается пустой, если ее исходный идентификатор равен [code]-1[/code], ее "
"идентификатор координат атласа равен [code]Vector2(-1, -1)[/code], а ее "
"альтернативный идентификатор равен [code]-1[/code]."

msgid ""
"Returns a [Vector2i] array with the positions of all cells containing a tile. "
"Tiles may be filtered according to their source ([param source_id]), their "
"atlas coordinates ([param atlas_coords]), or alternative id ([param "
"alternative_tile]).\n"
"If a parameter has its value set to the default one, this parameter is not "
"used to filter a cell. Thus, if all parameters have their respective default "
"values, this method returns the same result as [method get_used_cells].\n"
"A cell is considered empty if its source identifier equals [code]-1[/code], "
"its atlas coordinate identifier is [code]Vector2(-1, -1)[/code] and its "
"alternative identifier is [code]-1[/code]."
msgstr ""
"Возвращает массив [Vector2i] с позициями всех ячеек, содержащих тайл. Тайлы "
"могут быть отфильтрованы по их источнику ([param source_id]), координатам "
"атласа ([param atlas_coords]) или альтернативному идентификатору ([param "
"alternative_tile]).\n"
"Если параметр имеет значение по умолчанию, он не используется для фильтрации "
"ячеек. Таким образом, если все параметры имеют свои значения по умолчанию, "
"этот метод возвращает тот же результат, что и [method get_used_cells].\n"
"Ячейка считается пустой, если её идентификатор источника равен [code]-1[/"
"code], координаты атласа — [code]Vector2(-1, -1)[/code], а альтернативный "
"идентификатор — [code]-1[/code]."

msgid "Returns a rectangle enclosing the used (non-empty) tiles of the map."
msgstr ""
"Возвращает прямоугольник, охватывающий использованные (непустые) тайлы карты."

msgid ""
"Returns whether the provided [param body] [RID] belongs to one of this "
"[TileMapLayer]'s cells."
msgstr ""
"Возвращает, принадлежит ли предоставленный [param body] [RID] одной из ячеек "
"[TileMapLayer]."

msgid ""
"Returns [code]true[/code] if the cell at coordinates [param coords] is "
"flipped horizontally. The result is valid only for atlas sources."
msgstr ""
"Возвращает [code]true[/code], если ячейка с координатами [param coords] "
"перевернута по горизонтали. Результат действителен только для источников "
"атласа."

msgid ""
"Returns [code]true[/code] if the cell at coordinates [param coords] is "
"flipped vertically. The result is valid only for atlas sources."
msgstr ""
"Возвращает [code]true[/code], если ячейка с координатами [param coords] "
"перевернута вертикально. Результат действителен только для источников атласа."

msgid ""
"Returns [code]true[/code] if the cell at coordinates [param coords] is "
"transposed. The result is valid only for atlas sources."
msgstr ""
"Возвращает [code]true[/code], если ячейка с координатами [param coords] "
"транспонирована. Результат действителен только для источников атласа."

msgid ""
"Returns for the given coordinates [param coords_in_pattern] in a "
"[TileMapPattern] the corresponding cell coordinates if the pattern was pasted "
"at the [param position_in_tilemap] coordinates (see [method set_pattern]). "
"This mapping is required as in half-offset tile shapes, the mapping might not "
"work by calculating [code]position_in_tile_map + coords_in_pattern[/code]."
msgstr ""
"Возвращает соответствующие координаты ячейки для заданных координат [param "
"coords_in_pattern] в [TileMapPattern], если шаблон был вставлен по "
"координатам [param position_in_tilemap] (см. [method set_pattern]). Это "
"сопоставление необходимо, потому что для фигур тайлов со смещением на "
"половину простое вычисление [code]position_in_tile_map + coords_in_pattern[/"
"code] может не сработать."

msgid ""
"Returns the centered position of a cell in the [TileMapLayer]'s local "
"coordinate space. To convert the returned value into global coordinates, use "
"[method Node2D.to_global]. See also [method local_to_map].\n"
"[b]Note:[/b] This may not correspond to the visual position of the tile, i.e. "
"it ignores the [member TileData.texture_origin] property of individual tiles."
msgstr ""
"Возвращает центрированную позицию ячейки в локальном координатном "
"пространстве [TileMapLayer]. Чтобы преобразовать возвращаемое значение в "
"глобальные координаты, используйте [method Node2D.to_global]. См. также "
"[method local_to_map].\n"
"[b]Примечание:[/b] Это может не соответствовать визуальной позиции тайла, т. "
"е. игнорирует свойство [member TileData.texture_origin] отдельных тайлов."

msgid ""
"Notifies the [TileMapLayer] node that calls to [method "
"_use_tile_data_runtime_update] or [method _tile_data_runtime_update] will "
"lead to different results. This will thus trigger a [TileMapLayer] update.\n"
"[b]Warning:[/b] Updating the [TileMapLayer] is computationally expensive and "
"may impact performance. Try to limit the number of calls to this function to "
"avoid unnecessary update.\n"
"[b]Note:[/b] This does not trigger a direct update of the [TileMapLayer], the "
"update will be done at the end of the frame as usual (unless you call [method "
"update_internals])."
msgstr ""
"Уведомляет узел [TileMapLayer], что вызовы [method "
"_use_tile_data_runtime_update] или [method _tile_data_runtime_update] "
"приведут к разным результатам. Таким образом, это вызовет обновление "
"[TileMapLayer].\n"
"[b]Предупреждение:[/b] Обновление [TileMapLayer] требует больших "
"вычислительных затрат и может повлиять на производительность. Постарайтесь "
"ограничить количество вызовов этой функции, чтобы избежать ненужного "
"обновления.\n"
"[b]Примечание:[/b] Это не запускает прямое обновление [TileMapLayer], "
"обновление будет выполнено в конце кадра, как обычно (если только вы не "
"вызовете [method update_internals])."

msgid ""
"Sets the tile identifiers for the cell at coordinates [param coords]. Each "
"tile of the [TileSet] is identified using three parts:\n"
"- The source identifier [param source_id] identifies a [TileSetSource] "
"identifier. See [method TileSet.set_source_id],\n"
"- The atlas coordinate identifier [param atlas_coords] identifies a tile "
"coordinates in the atlas (if the source is a [TileSetAtlasSource]). For "
"[TileSetScenesCollectionSource] it should always be [code]Vector2i(0, 0)[/"
"code],\n"
"- The alternative tile identifier [param alternative_tile] identifies a tile "
"alternative in the atlas (if the source is a [TileSetAtlasSource]), and the "
"scene for a [TileSetScenesCollectionSource].\n"
"If [param source_id] is set to [code]-1[/code], [param atlas_coords] to "
"[code]Vector2i(-1, -1)[/code], or [param alternative_tile] to [code]-1[/"
"code], the cell will be erased. An erased cell gets [b]all[/b] its "
"identifiers automatically set to their respective invalid values, namely "
"[code]-1[/code], [code]Vector2i(-1, -1)[/code] and [code]-1[/code]."
msgstr ""
"Устанавливает идентификаторы тайла для ячейки с координатами [param coords]. "
"Каждый тайл [TileSet] идентифицируется с помощью трех частей:\n"
"- Идентификатор источника [param source_id] идентифицирует идентификатор "
"[TileSetSource]. См. [method TileSet.set_source_id],\n"
"- Идентификатор координат атласа [param atlas_coords] идентифицирует "
"координаты тайла в атласе (если источником является [TileSetAtlasSource]). "
"Для [TileSetScenesCollectionSource] это всегда должно быть [code]Vector2i(0, "
"0)[/code],\n"
"- Идентификатор альтернативного тайла [param alternative_tile] идентифицирует "
"альтернативный тайл в атласе (если источником является [TileSetAtlasSource]), "
"а для [TileSetScenesCollectionSource] — сцену.\n"
"Если [param source_id] установлен на [code]-1[/code], [param atlas_coords] на "
"[code]Vector2i(-1, -1)[/code] или [param alternative_tile] на [code]-1[/"
"code], ячейка будет стерта. Стертая ячейка получает [b]все[/b] ее "
"идентификаторы, автоматически установленные на соответствующие "
"недействительные значения, а именно [code]-1[/code], [code]Vector2i(-1, -1)[/"
"code] и [code]-1[/code]."

msgid ""
"Update all the cells in the [param cells] coordinates array so that they use "
"the given [param terrain] for the given [param terrain_set]. If an updated "
"cell has the same terrain as one of its neighboring cells, this function "
"tries to join the two. This function might update neighboring tiles if needed "
"to create correct terrain transitions.\n"
"If [param ignore_empty_terrains] is [code]true[/code], empty terrains will be "
"ignored when trying to find the best fitting tile for the given terrain "
"constraints.\n"
"[b]Note:[/b] To work correctly, this method requires the [TileMapLayer]'s "
"TileSet to have terrains set up with all required terrain combinations. "
"Otherwise, it may produce unexpected results."
msgstr ""
"Обновить все ячейки в массиве координат [param cells] так, чтобы они "
"использовали заданный [param terrain] для заданного [param terrain_set]. Если "
"обновленная ячейка имеет тот же рельеф, что и одна из соседних ячеек, эта "
"функция пытается объединить две. Эта функция может обновить соседние тайлы, "
"если это необходимо для создания правильных переходов рельефа.\n"
"Если [param ignore_empty_terrains] имеет значение [code]true[/code], пустые "
"ландшафты будут игнорироваться при попытке найти наиболее подходящий тайл для "
"заданных ограничений рельефа.\n"
"[b]Примечание:[/b] Для корректной работы этот метод требует, чтобы TileSet "
"[TileMapLayer] имел ландшафты (terrain), настроенные со всеми требуемыми "
"комбинациями рельефа. В противном случае это может привести к неожиданным "
"результатам."

msgid ""
"Update all the cells in the [param path] coordinates array so that they use "
"the given [param terrain] for the given [param terrain_set]. The function "
"will also connect two successive cell in the path with the same terrain. This "
"function might update neighboring tiles if needed to create correct terrain "
"transitions.\n"
"If [param ignore_empty_terrains] is [code]true[/code], empty terrains will be "
"ignored when trying to find the best fitting tile for the given terrain "
"constraints.\n"
"[b]Note:[/b] To work correctly, this method requires the [TileMapLayer]'s "
"TileSet to have terrains set up with all required terrain combinations. "
"Otherwise, it may produce unexpected results."
msgstr ""
"Обновите все ячейки в массиве координат [param path], чтобы они использовали "
"заданный [param terrain] для заданного [param terrain_set]. Функция также "
"соединит две последовательные ячейки на пути с тем же рельефом. Эта функция "
"может обновить соседние тайлы, если необходимо создать правильные переходы "
"рельефа.\n"
"Если [param ignore_empty_terrains] имеет значение [code]true[/code], пустые "
"ландшафты будут игнорироваться при попытке найти наиболее подходящий тайл для "
"заданных ограничений рельефа.\n"
"[b]Примечание:[/b] Для корректной работы этот метод требует, чтобы TileSet "
"[TileMapLayer] имел ландшафты, настроенные со всеми требуемыми комбинациями "
"рельефа. В противном случае это может привести к неожиданным результатам."

msgid ""
"Sets a custom [param map] as a [NavigationServer2D] navigation map. If not "
"set, uses the default [World2D] navigation map instead."
msgstr ""
"Устанавливает пользовательскую [param map] как навигационную карту "
"[NavigationServer2D]. Если не установлено, вместо этого используется "
"навигационная карта по умолчанию [World2D]."

msgid ""
"Pastes the [TileMapPattern] at the given [param position] in the tile map. "
"See also [method get_pattern]."
msgstr ""
"Вставляет [TileMapPattern] в указанную [param position] на карте тайлов. См. "
"также [method get_pattern]."

msgid ""
"Triggers a direct update of the [TileMapLayer]. Usually, calling this "
"function is not needed, as [TileMapLayer] node updates automatically when one "
"of its properties or cells is modified.\n"
"However, for performance reasons, those updates are batched and delayed to "
"the end of the frame. Calling this function will force the [TileMapLayer] to "
"update right away instead.\n"
"[b]Warning:[/b] Updating the [TileMapLayer] is computationally expensive and "
"may impact performance. Try to limit the number of updates and how many tiles "
"they impact."
msgstr ""
"Запускает прямое обновление [TileMapLayer]. Обычно вызов этой функции не "
"требуется, так как узел [TileMapLayer] обновляется автоматически при "
"изменении одного из его свойств или ячеек.\n"
"Однако по соображениям производительности эти обновления пакетируются и "
"задерживаются до конца кадра. Вызов этой функции заставит [TileMapLayer] "
"обновиться немедленно.\n"
"[b]Предупреждение:[/b] Обновление [TileMapLayer] требует больших "
"вычислительных затрат и может повлиять на производительность. Попробуйте "
"ограничить количество обновлений и количество плиток, на которые они влияют."

msgid "Enable or disable collisions."
msgstr "Включить или отключить столкновения."

msgid ""
"Show or hide the [TileMapLayer]'s collision shapes. If set to [constant "
"DEBUG_VISIBILITY_MODE_DEFAULT], this depends on the show collision debug "
"settings."
msgstr ""
"Показать или скрыть формы столкновений [TileMapLayer]. Если установлено "
"значение [constant DEBUG_VISIBILITY_MODE_DEFAULT], это зависит от настроек "
"отладки столкновений."

msgid ""
"If [code]false[/code], disables this [TileMapLayer] completely (rendering, "
"collision, navigation, scene tiles, etc.)"
msgstr ""
"Если [code]false[/code], полностью отключает этот [TileMapLayer] (рендеринг, "
"столкновения, навигацию, тайлы сцены и т. д.)"

msgid "If [code]true[/code], navigation regions are enabled."
msgstr "Если [code]true[/code], области навигации включены."

msgid ""
"Show or hide the [TileMapLayer]'s navigation meshes. If set to [constant "
"DEBUG_VISIBILITY_MODE_DEFAULT], this depends on the show navigation debug "
"settings."
msgstr ""
"Показать или скрыть навигационные сетки [TileMapLayer]. Если установлено "
"значение [constant DEBUG_VISIBILITY_MODE_DEFAULT], это зависит от настроек "
"отладки навигации показа."

msgid "Enable or disable light occlusion."
msgstr "Включить или отключить окклюзию света."

msgid ""
"The [TileMapLayer]'s physics quadrant size. Within a physics quadrant, cells "
"with similar physics properties are grouped together and their collision "
"shapes get merged. [member physics_quadrant_size] defines the length of a "
"square's side, in the map's coordinate system, that forms the quadrant. Thus, "
"the default quadrant size groups together [code]16 * 16 = 256[/code] tiles.\n"
"[b]Note:[/b] As quadrants are created according to the map's coordinate "
"system, the quadrant's \"square shape\" might not look like square in the "
"[TileMapLayer]'s local coordinate system.\n"
"[b]Note:[/b] This impacts the value returned by [method "
"get_coords_for_body_rid]."
msgstr ""
"Размер физического квадранта [TileMapLayer]. В физическом квадранте ячейки со "
"схожими физическими свойствами группируются вместе, а их формы столкновений "
"объединяются. [member physics_quadrant_size] определяет длину стороны "
"квадрата в системе координат карты, которая образует квадрант. Таким образом, "
"размер квадранта по умолчанию группирует вместе [code]16 * 16 = 256[/code] "
"тайлов.\n"
"[b]Примечание:[/b] Поскольку квадранты создаются в соответствии с системой "
"координат карты, «квадратная форма» квадранта может не выглядеть как квадрат "
"в локальной системе координат [TileMapLayer].\n"
"[b]Примечание:[/b] Это влияет на значение, возвращаемое [method "
"get_coords_for_body_rid]."

msgid ""
"The [TileMapLayer]'s rendering quadrant size. A quadrant is a group of tiles "
"to be drawn together on a single canvas item, for optimization purposes. "
"[member rendering_quadrant_size] defines the length of a square's side, in "
"the map's coordinate system, that forms the quadrant. Thus, the default "
"quadrant size groups together [code]16 * 16 = 256[/code] tiles.\n"
"The quadrant size does not apply on a Y-sorted [TileMapLayer], as tiles are "
"grouped by Y position instead in that case.\n"
"[b]Note:[/b] As quadrants are created according to the map's coordinate "
"system, the quadrant's \"square shape\" might not look like square in the "
"[TileMapLayer]'s local coordinate system."
msgstr ""
"Размер квадранта рендеринга [TileMapLayer]. Квадрант — это группа тайлов, "
"которые нужно нарисовать вместе на одном элементе холста в целях оптимизации. "
"[member rendering_quadrant_size] определяет длину стороны квадрата в системе "
"координат карты, которая образует квадрант. Таким образом, размер квадранта "
"по умолчанию группирует вместе [code]16 * 16 = 256[/code] тайлов.\n"
"Размер квадранта не применяется к отсортированному по Y [TileMapLayer], так "
"как в этом случае тайлы группируются по положению Y.\n"
"[b]Примечание:[/b] Поскольку квадранты создаются в соответствии с системой "
"координат карты, «квадратная форма» квадранта может не выглядеть как квадрат "
"в локальной системе координат [TileMapLayer]."

msgid "The raw tile map data as a byte array."
msgstr "Необработанные данные карты плиток в виде массива байтов."

msgid ""
"The [TileSet] used by this layer. The textures, collisions, and additional "
"behavior of all available tiles are stored here."
msgstr ""
"[TileSet], используемый этим слоем. Текстуры, столкновения и дополнительное "
"поведение всех доступных плиток хранятся здесь."

msgid ""
"If [code]true[/code], this [TileMapLayer] collision shapes will be "
"instantiated as kinematic bodies. This can be needed for moving "
"[TileMapLayer] nodes (i.e. moving platforms)."
msgstr ""
"Если [code]true[/code], то формы столкновений [TileMapLayer] будут "
"инстанцированы как кинематические тела. Это может понадобиться для "
"перемещения узлов [TileMapLayer] (т. е. перемещения платформ)."

msgid ""
"If [member CanvasItem.y_sort_enabled] is enabled, setting this to [code]true[/"
"code] will reverse the order the tiles are drawn on the X-axis."
msgstr ""
"Если [member CanvasItem.y_sort_enabled] включен, установка этого параметра в "
"[code]true[/code] изменит порядок отрисовки плиток на оси X на обратный."

msgid ""
"This Y-sort origin value is added to each tile's Y-sort origin value. This "
"allows, for example, to fake a different height level. This can be useful for "
"top-down view games."
msgstr ""
"Это значение Y-sort origin добавляется к значению Y-sort origin каждого "
"тайла. Это позволяет, например, подделать другой уровень высоты. Это может "
"быть полезно для игр с видом сверху вниз."

msgid ""
"Emitted when this [TileMapLayer]'s properties changes. This includes modified "
"cells, properties, or changes made to its assigned [TileSet].\n"
"[b]Note:[/b] This signal may be emitted very often when batch-modifying a "
"[TileMapLayer]. Avoid executing complex processing in a connected function, "
"and consider delaying it to the end of the frame instead (i.e. calling "
"[method Object.call_deferred])."
msgstr ""
"Выдается при изменении свойств этого [TileMapLayer]. Сюда входят измененные "
"ячейки, свойства или изменения, внесенные в назначенный ему [TileSet].\n"
"[b]Примечание:[/b] Этот сигнал может выдаваться очень часто при пакетном "
"изменении [TileMapLayer]. Избегайте выполнения сложной обработки в "
"подключенной функции и рассмотрите возможность отсрочки ее до конца кадра (т. "
"е. вызова [method Object.call_deferred])."

msgid ""
"Hide the collisions or navigation debug shapes in the editor, and use the "
"debug settings to determine their visibility in game (i.e. [member "
"SceneTree.debug_collisions_hint] or [member SceneTree.debug_navigation_hint])."
msgstr ""
"Скройте формы отладки столкновений или навигации в редакторе и используйте "
"настройки отладки, чтобы определить их видимость в игре (например, [member "
"SceneTree.debug_collisions_hint] или [member "
"SceneTree.debug_navigation_hint])."

msgid "Always hide the collisions or navigation debug shapes."
msgstr "Всегда скрывайте формы отладки столкновений или навигации."

msgid "Always show the collisions or navigation debug shapes."
msgstr "Всегда показывать формы отладки столкновений или навигации."

msgid "Holds a pattern to be copied from or pasted into [TileMap]s."
msgstr "Содержит шаблон, который можно скопировать или вставить в [TileMap]-ы."

msgid ""
"This resource holds a set of cells to help bulk manipulations of [TileMap].\n"
"A pattern always starts at the [code](0, 0)[/code] coordinates and cannot "
"have cells with negative coordinates."
msgstr ""
"Этот ресурс содержит набор ячеек для пакетной обработки [TileMap].\n"
"Узор всегда начинается с координат [code](0, 0)[/code] и не может содержать "
"ячеек с отрицательными координатами."

msgid "Returns the tile alternative ID of the cell at [param coords]."
msgstr ""
"Возвращает альтернативный идентификатор тайла ячейки с координатами [param "
"coords]."

msgid "Returns the tile atlas coordinates ID of the cell at [param coords]."
msgstr ""
"Возвращает идентификатор координат атласа тайла для ячейки по координатам "
"[param coords]."

msgid "Returns the tile source ID of the cell at [param coords]."
msgstr ""
"Возвращает идентификатор источника тайла для ячейки по координатам [param "
"coords]."

msgid "Returns the size, in cells, of the pattern."
msgstr "Возвращает размер шаблона в ячейках."

msgid "Returns the list of used cell coordinates in the pattern."
msgstr "Возвращает список используемых координат ячеек в шаблоне."

msgid "Returns whether the pattern has a tile at the given coordinates."
msgstr "Возвращает, есть ли в шаблоне тайл с указанными координатами."

msgid "Returns whether the pattern is empty or not."
msgstr "Возвращает, является ли шаблон пустым или нет."

msgid "Remove the cell at the given coordinates."
msgstr "Удалить ячейку по указанным координатам."

msgid ""
"Sets the tile identifiers for the cell at coordinates [param coords]. See "
"[method TileMap.set_cell]."
msgstr ""
"Устанавливает идентификаторы тайла для ячейки с координатами [param coords]. "
"См. [method TileMap.set_cell]."

msgid "Sets the size of the pattern."
msgstr "Устанавливает размер узора."

msgid "Tile library for tilemaps."
msgstr "Библиотека тайлов для тайловых карт."

msgid ""
"A TileSet is a library of tiles for a [TileMapLayer]. A TileSet handles a "
"list of [TileSetSource], each of them storing a set of tiles.\n"
"Tiles can either be from a [TileSetAtlasSource], which renders tiles out of a "
"texture with support for physics, navigation, etc., or from a "
"[TileSetScenesCollectionSource], which exposes scene-based tiles.\n"
"Tiles are referenced by using three IDs: their source ID, their atlas "
"coordinates ID, and their alternative tile ID.\n"
"A TileSet can be configured so that its tiles expose more or fewer "
"properties. To do so, the TileSet resources use property layers, which you "
"can add or remove depending on your needs.\n"
"For example, adding a physics layer allows giving collision shapes to your "
"tiles. Each layer has dedicated properties (physics layer and mask), so you "
"may add several TileSet physics layers for each type of collision you need.\n"
"See the functions to add new layers for more information."
msgstr ""
"TileSet — это библиотека тайлов для [TileMapLayer]. TileSet управляет списком "
"[TileSetSource], каждый из которых хранит набор тайлов.\n"
"Тайлы могут поступать либо из [TileSetAtlasSource] (который рендерит тайлы из "
"текстуры с поддержкой физики, навигации и т.д.), либо из "
"[TileSetScenesCollectionSource] (который предоставляет тайлы на основе "
"сцен).\n"
"Тайлы ссылаются с помощью трёх идентификаторов: source ID (идентификатор "
"источника), atlas coordinates ID (идентификатор координат атласа) и "
"alternative tile ID (идентификатор альтернативного тайла).\n"
"TileSet можно настроить так, чтобы его тайлы предоставляли больше или меньше "
"свойств. Для этого ресурсы TileSet используют слои свойств, которые можно "
"добавлять или удалять по необходимости.\n"
"Например, добавление физического слоя позволяет задавать тайлам формы "
"столкновений. Каждый слой имеет свои свойства (например, слой и маску "
"физики), поэтому можно добавить несколько физических слоёв TileSet для разных "
"типов столкновений.\n"
"Подробнее см. в функциях добавления новых слоёв."

msgid ""
"Adds a custom data layer to the TileSet at the given position [param "
"to_position] in the array. If [param to_position] is -1, adds it at the end "
"of the array.\n"
"Custom data layers allow assigning custom properties to atlas tiles."
msgstr ""
"Добавляет пользовательский слой данных в TileSet в заданной позиции [param "
"to_position] в массиве. Если [param to_position] равен -1, добавляет его в "
"конец массива.\n"
"Пользовательские слои данных позволяют назначать пользовательские свойства "
"тайлам атласа."

msgid ""
"Adds a navigation layer to the TileSet at the given position [param "
"to_position] in the array. If [param to_position] is -1, adds it at the end "
"of the array.\n"
"Navigation layers allow assigning a navigable area to atlas tiles."
msgstr ""
"Добавляет навигационный слой в TileSet в заданной позиции [param to_position] "
"в массиве. Если [param to_position] равен -1, добавляет его в конец массива.\n"
"Навигационные слои позволяют назначать навигационную область тайлам атласа."

msgid ""
"Adds an occlusion layer to the TileSet at the given position [param "
"to_position] in the array. If [param to_position] is -1, adds it at the end "
"of the array.\n"
"Occlusion layers allow assigning occlusion polygons to atlas tiles."
msgstr ""
"Добавляет слой окклюзии в TileSet в заданной позиции [param to_position] в "
"массиве. Если [param to_position] равен -1, добавляет его в конец массива.\n"
"Слои окклюзии позволяют назначать полигоны окклюзии тайлам атласа."

msgid ""
"Adds a [TileMapPattern] to be stored in the TileSet resource. If provided, "
"insert it at the given [param index]."
msgstr ""
"Добавляет [TileMapPattern] для сохранения в ресурсе TileSet. Если указано, "
"вставьте его в указанный [param index]."

msgid ""
"Adds a physics layer to the TileSet at the given position [param to_position] "
"in the array. If [param to_position] is -1, adds it at the end of the array.\n"
"Physics layers allow assigning collision polygons to atlas tiles."
msgstr ""
"Добавляет физический слой в TileSet в заданной позиции [param to_position] в "
"массиве. Если [param to_position] равен -1, добавляет его в конец массива.\n"
"Физические слои позволяют назначать полигоны столкновений тайлам атласа."

msgid ""
"Adds a [TileSetSource] to the TileSet. If [param atlas_source_id_override] is "
"not -1, also set its source ID. Otherwise, a unique identifier is "
"automatically generated.\n"
"The function returns the added source ID or -1 if the source could not be "
"added.\n"
"[b]Warning:[/b] A source cannot belong to two TileSets at the same time. If "
"the added source was attached to another [TileSet], it will be removed from "
"that one."
msgstr ""
"Добавляет [TileSetSource] в TileSet. Если [param atlas_source_id_override] не "
"равен -1, также задайте его идентификатор источника. В противном случае "
"автоматически генерируется уникальный идентификатор.\n"
"Функция возвращает добавленный идентификатор источника или -1, если источник "
"не удалось добавить.\n"
"[b]Предупреждение:[/b] Источник не может принадлежать двум TileSet "
"одновременно. Если добавленный источник был прикреплен к другому [TileSet], "
"он будет удален из него."

msgid ""
"Adds a new terrain to the given terrain set [param terrain_set] at the given "
"position [param to_position] in the array. If [param to_position] is -1, adds "
"it at the end of the array."
msgstr ""
"Добавляет новый ландшафт к заданному набору ландшафтов [param terrain_set] в "
"заданной позиции [param to_position] в массиве. Если [param to_position] "
"равен -1, добавляет его в конец массива."

msgid ""
"Adds a new terrain set at the given position [param to_position] in the "
"array. If [param to_position] is -1, adds it at the end of the array."
msgstr ""
"Добавляет новый набор ландшафтов в заданную позицию [param to_position] в "
"массиве. Если [param to_position] равен -1, добавляет его в конец массива."

msgid "Clears tile proxies pointing to invalid tiles."
msgstr "Очищает прокси тайлов, указывающие на недействительные тайлы."

msgid "Clears all tile proxies."
msgstr "Очищает все прокси-серверы плиток."

msgid ""
"Returns the alternative-level proxy for the given identifiers. The returned "
"array contains the three proxie's target identifiers (source ID, atlas coords "
"ID and alternative tile ID).\n"
"If the TileSet has no proxy for the given identifiers, returns an empty Array."
msgstr ""
"Возвращает альтернативный уровень proxy для указанных идентификаторов. "
"Возвращаемый массив содержит три целевых идентификатора proxy (исходный ID, "
"ID координат atlas и альтернативный ID тайла).\n"
"Если TileSet не имеет proxy для указанных идентификаторов, возвращает пустой "
"массив."

msgid ""
"Returns the coordinate-level proxy for the given identifiers. The returned "
"array contains the two target identifiers of the proxy (source ID and atlas "
"coordinates ID).\n"
"If the TileSet has no proxy for the given identifiers, returns an empty Array."
msgstr ""
"Возвращает прокси-сервер на уровне координат для указанных идентификаторов. "
"Возвращаемый массив содержит два целевых идентификатора прокси-сервера "
"(идентификатор источника и идентификатор координат атласа).\n"
"Если у TileSet нет прокси-сервера для указанных идентификаторов, возвращает "
"пустой Массив."

msgid "Returns the index of the custom data layer identified by the given name."
msgstr ""
"Возвращает индекс пользовательского слоя данных, идентифицированного заданным "
"именем."

msgid "Returns the name of the custom data layer identified by the given index."
msgstr ""
"Возвращает имя пользовательского слоя данных, идентифицированного заданным "
"индексом."

msgid "Returns the type of the custom data layer identified by the given index."
msgstr ""
"Возвращает тип пользовательского слоя данных, идентифицированного заданным "
"индексом."

msgid "Returns the custom data layers count."
msgstr "Возвращает количество пользовательских слоев данных."

msgid ""
"Returns whether or not the specified navigation layer of the TileSet "
"navigation data layer identified by the given [param layer_index] is enabled, "
"given a navigation_layers [param layer_number] between 1 and 32."
msgstr ""
"Возвращает, включен ли указанный навигационный слой слоя навигационных данных "
"TileSet, идентифицированный заданным [param layer_index], при заданном "
"navigation_layers [param layer_number] от 1 до 32."

msgid ""
"Returns the navigation layers (as in the Navigation server) of the given "
"TileSet navigation layer."
msgstr ""
"Возвращает навигационные слои (как на навигационном сервере) заданного "
"навигационного слоя TileSet."

msgid "Returns the navigation layers count."
msgstr "Возвращает количество слоев навигации."

msgid ""
"Returns a new unused source ID. This generated ID is the same that a call to "
"[method add_source] would return."
msgstr ""
"Возвращает новый неиспользованный исходный ID. Этот сгенерированный ID тот "
"же, что вернул бы вызов [method add_source]."

msgid "Returns the light mask of the occlusion layer."
msgstr "Возвращает световую маску слоя окклюзии."

msgid "Returns if the occluders from this layer use [code]sdf_collision[/code]."
msgstr ""
"Возвращает, используют ли окклюдеры из этого слоя [code]sdf_collision[/code]."

msgid "Returns the occlusion layers count."
msgstr "Возвращает количество слоев окклюзии."

msgid "Returns the [TileMapPattern] at the given [param index]."
msgstr "Возвращает [TileMapPattern] по указанному [param index]."

msgid "Returns the number of [TileMapPattern] this tile set handles."
msgstr ""
"Возвращает количество [TileMap Pattern], которые обрабатывает этот набор "
"плиток."

msgid ""
"Returns the collision layer (as in the physics server) bodies on the given "
"TileSet's physics layer are in."
msgstr ""
"Возвращает слой столкновений (как на физическом сервере), в котором находятся "
"тела на физическом слое указанного TileSet."

msgid ""
"Returns the collision mask of bodies on the given TileSet's physics layer."
msgstr ""
"Возвращает маску столкновений тел на физическом слое указанного TileSet."

msgid ""
"Returns the collision priority of bodies on the given TileSet's physics layer."
msgstr ""
"Возвращает приоритет столкновений тел на физическом слое заданного TileSet."

msgid ""
"Returns the physics material of bodies on the given TileSet's physics layer."
msgstr ""
"Возвращает физический материал тел на физическом слое указанного TileSet."

msgid "Returns the physics layers count."
msgstr "Возвращает количество физических слоев."

msgid "Returns the [TileSetSource] with ID [param source_id]."
msgstr "Возвращает [TileSetSource] с идентификатором [param source_id]."

msgid "Returns the number of [TileSetSource] in this TileSet."
msgstr "Возвращает количество [TileSetSource] в данном TileSet."

msgid "Returns the source ID for source with index [param index]."
msgstr ""
"Возвращает идентификатор источника для источника с индексом [param index]."

msgid ""
"Returns the source-level proxy for the given source identifier.\n"
"If the TileSet has no proxy for the given identifier, returns -1."
msgstr ""
"Возвращает прокси-сервер исходного уровня для указанного идентификатора "
"источника.\n"
"Если у TileSet нет прокси-сервера для указанного идентификатора, возвращает "
"-1."

msgid "Returns a terrain's color."
msgstr "Возвращает цвет ландшафта."

msgid "Returns a terrain's name."
msgstr "Возвращает название ландшафта."

msgid "Returns a terrain set mode."
msgstr "Возвращает режим набора ландшафта."

msgid "Returns the terrain sets count."
msgstr "Возвращает количество наборов ландшафта."

msgid "Returns the number of terrains in the given terrain set."
msgstr "Возвращает количество ландшафтов в заданном наборе ландшафтов."

msgid ""
"Returns if there is an alternative-level proxy for the given identifiers."
msgstr ""
"Возвращает, существует ли прокси-сервер альтернативного уровня для указанных "
"идентификаторов."

msgid "Returns if there is a coodinates-level proxy for the given identifiers."
msgstr ""
"Возвращает, существует ли прокси-сервер уровня координат для указанных "
"идентификаторов."

msgid "Returns if there is a custom data layer named [param layer_name]."
msgstr ""
"Возвращает, если существует пользовательский слой данных с именем [param "
"layer_name]."

msgid "Returns if this TileSet has a source for the given source ID."
msgstr ""
"Возвращает, имеет ли этот TileSet источник для указанного идентификатора "
"источника."

msgid "Returns if there is a source-level proxy for the given source ID."
msgstr ""
"Возвращает, существует ли прокси-сервер на уровне источника для указанного "
"идентификатора источника."

msgid ""
"According to the configured proxies, maps the provided identifiers to a new "
"set of identifiers. The source ID, atlas coordinates ID and alternative tile "
"ID are returned as a 3 elements Array.\n"
"This function first look for matching alternative-level proxies, then "
"coordinates-level proxies, then source-level proxies.\n"
"If no proxy corresponding to provided identifiers are found, returns the same "
"values the ones used as arguments."
msgstr ""
"Согласно настроенным прокси, сопоставляет предоставленные идентификаторы с "
"новым набором идентификаторов. Идентификатор источника, координат атласа и "
"альтернативного тайла возвращаются в виде массива из 3 элементов.\n"
"Эта функция сначала ищет совпадения среди прокси на уровне альтернативных "
"тайлов, затем на уровне координат, затем на уровне источников.\n"
"Если не найдено прокси, соответствующих предоставленным идентификаторам, "
"возвращаются те же значения, что были переданы в аргументах."

msgid ""
"Moves the custom data layer at index [param layer_index] to the given "
"position [param to_position] in the array. Also updates the atlas tiles "
"accordingly."
msgstr ""
"Перемещает пользовательский слой данных с индексом [param layer_index] в "
"заданную позицию [param to_position] в массиве. Также обновляет тайлы атласа "
"соответствующим образом."

msgid ""
"Moves the navigation layer at index [param layer_index] to the given position "
"[param to_position] in the array. Also updates the atlas tiles accordingly."
msgstr ""
"Перемещает навигационный слой с индексом [param layer_index] в заданную "
"позицию [param to_position] в массиве. Также обновляет тайлы атласа "
"соответственно."

msgid ""
"Moves the occlusion layer at index [param layer_index] to the given position "
"[param to_position] in the array. Also updates the atlas tiles accordingly."
msgstr ""
"Перемещает слой окклюзии с индексом [param layer_index] в заданную позицию "
"[param to_position] в массиве. Также обновляет тайлы атласа соответственно."

msgid ""
"Moves the physics layer at index [param layer_index] to the given position "
"[param to_position] in the array. Also updates the atlas tiles accordingly."
msgstr ""
"Перемещает физический слой с индексом [param layer_index] в заданную позицию "
"[param to_position] в массиве. Также обновляет тайлы атласа соответственно."

msgid ""
"Moves the terrain at index [param terrain_index] for terrain set [param "
"terrain_set] to the given position [param to_position] in the array. Also "
"updates the atlas tiles accordingly."
msgstr ""
"Перемещает ландшафт с индексом [param terrain_index] для набора ландшафтов "
"[param terrain_set] в заданную позицию [param to_position] в массиве. Также "
"обновляет тайлы атласа соответственно."

msgid ""
"Moves the terrain set at index [param terrain_set] to the given position "
"[param to_position] in the array. Also updates the atlas tiles accordingly."
msgstr ""
"Перемещает набор ландшафтов по индексу [param terrain_set] в заданную позицию "
"[param to_position] в массиве. Также обновляет тайлы атласа соответственно."

msgid "Removes an alternative-level proxy for the given identifiers."
msgstr ""
"Удаляет прокси-сервер альтернативного уровня для указанных идентификаторов."

msgid "Removes a coordinates-level proxy for the given identifiers."
msgstr "Удаляет прокси-сервер уровня координат для указанных идентификаторов."

msgid ""
"Removes the custom data layer at index [param layer_index]. Also updates the "
"atlas tiles accordingly."
msgstr ""
"Удаляет пользовательский слой данных по индексу [param layer_index]. Также "
"обновляет тайлы атласа соответствующим образом."

msgid ""
"Removes the navigation layer at index [param layer_index]. Also updates the "
"atlas tiles accordingly."
msgstr ""
"Удаляет навигационный слой с индексом [param layer_index]. Также обновляет "
"тайлы атласа соответствующим образом."

msgid ""
"Removes the occlusion layer at index [param layer_index]. Also updates the "
"atlas tiles accordingly."
msgstr ""
"Удаляет слой окклюзии с индексом [param layer_index]. Также обновляет тайлы "
"атласа соответствующим образом."

msgid "Remove the [TileMapPattern] at the given index."
msgstr "Удалить [TileMapPattern] по указанному индексу."

msgid ""
"Removes the physics layer at index [param layer_index]. Also updates the "
"atlas tiles accordingly."
msgstr ""
"Удаляет физический слой по индексу [param layer_index]. Также обновляет тайлы "
"атласа соответствующим образом."

msgid "Removes the source with the given source ID."
msgstr "Удаляет источник с указанным идентификатором источника."

msgid "Removes a source-level tile proxy."
msgstr "Удаляет прокси тайла на уровне источника."

msgid ""
"Removes the terrain at index [param terrain_index] in the given terrain set "
"[param terrain_set]. Also updates the atlas tiles accordingly."
msgstr ""
"Удаляет ландшафт с индексом [param terrain_index] в заданном наборе "
"ландшафтов [param terrain_set]. Также обновляет тайлы атласа соответствующим "
"образом."

msgid ""
"Removes the terrain set at index [param terrain_set]. Also updates the atlas "
"tiles accordingly."
msgstr ""
"Удаляет набор ландшафтов по индексу [param terrain_set]. Также обновляет "
"тайлы атласа соответствующим образом."

msgid ""
"Create an alternative-level proxy for the given identifiers. A proxy will map "
"set of tile identifiers to another set of identifiers.\n"
"Proxied tiles can be automatically replaced in TileMapLayer nodes using the "
"editor."
msgstr ""
"Создайте альтернативный уровень proxy для заданных идентификаторов. Прокси "
"сопоставит набор идентификаторов тайлов с другим набором идентификаторов.\n"
"Прокси-тайлы можно автоматически заменить в узлах TileMapLayer с помощью "
"редактора."

msgid ""
"Creates a coordinates-level proxy for the given identifiers. A proxy will map "
"set of tile identifiers to another set of identifiers. The alternative tile "
"ID is kept the same when using coordinates-level proxies.\n"
"Proxied tiles can be automatically replaced in TileMapLayer nodes using the "
"editor."
msgstr ""
"Создает прокси на уровне координат для заданных идентификаторов. Прокси "
"сопоставляет набор идентификаторов тайлов с другим набором идентификаторов. "
"Альтернативный идентификатор тайла остается тем же при использовании прокси "
"на уровне координат.\n"
"Прокси-тайлы можно автоматически заменить в узлах TileMapLayer с помощью "
"редактора."

msgid ""
"Sets the name of the custom data layer identified by the given index. Names "
"are identifiers of the layer therefore if the name is already taken it will "
"fail and raise an error."
msgstr ""
"Устанавливает имя пользовательского слоя данных, идентифицированного заданным "
"индексом. Имена являются идентификаторами слоя, поэтому, если имя уже занято, "
"произойдет сбой и возникнет ошибка."

msgid "Sets the type of the custom data layer identified by the given index."
msgstr ""
"Устанавливает тип пользовательского слоя данных, идентифицированного заданным "
"индексом."

msgid ""
"Based on [param value], enables or disables the specified navigation layer of "
"the TileSet navigation data layer identified by the given [param "
"layer_index], given a navigation_layers [param layer_number] between 1 and 32."
msgstr ""
"На основе [param value] включает или отключает указанный навигационный слой "
"слоя навигационных данных TileSet, идентифицированный заданным [param "
"layer_index], при заданном значении navigation_layers [param layer_number] от "
"1 до 32."

msgid ""
"Sets the navigation layers (as in the navigation server) for navigation "
"regions in the given TileSet navigation layer."
msgstr ""
"Устанавливает навигационные слои (как на навигационном сервере) для "
"навигационных регионов в заданном навигационном слое TileSet."

msgid ""
"Sets the occlusion layer (as in the rendering server) for occluders in the "
"given TileSet occlusion layer."
msgstr ""
"Устанавливает слой окклюзии (как на сервере рендеринга) для окклюдеров в "
"заданном слое окклюзии TileSet."

msgid ""
"Enables or disables SDF collision for occluders in the given TileSet "
"occlusion layer."
msgstr ""
"Включает или отключает столкновение SDF для окклюдеров в заданном слое "
"окклюзии TileSet."

msgid ""
"Sets the collision layer (as in the physics server) for bodies in the given "
"TileSet physics layer."
msgstr ""
"Устанавливает слой столкновений (как на физическом сервере) для тел в "
"заданном физическом слое TileSet."

msgid "Sets the collision mask for bodies in the given TileSet physics layer."
msgstr ""
"Устанавливает маску столкновений для тел в заданном физическом слое TileSet."

msgid ""
"Sets the collision priority for bodies in the given TileSet physics layer."
msgstr ""
"Устанавливает приоритет столкновений для тел в заданном физическом слое "
"TileSet."

msgid "Sets the physics material for bodies in the given TileSet physics layer."
msgstr ""
"Устанавливает физический материал для тел в заданном физическом слое TileSet."

msgid "Changes a source's ID."
msgstr "Изменяет идентификатор источника."

msgid ""
"Creates a source-level proxy for the given source ID. A proxy will map set of "
"tile identifiers to another set of identifiers. Both the atlas coordinates ID "
"and the alternative tile ID are kept the same when using source-level "
"proxies.\n"
"Proxied tiles can be automatically replaced in TileMapLayer nodes using the "
"editor."
msgstr ""
"Создаёт прокси на уровне источника для заданного идентификатора источника. "
"Прокси будет сопоставлять набор идентификаторов тайлов с другим набором "
"идентификаторов. Идентификатор координат атласа и идентификатор "
"альтернативного тайла остаются неизменными при использовании прокси на уровне "
"источника.\n"
"Проксированные тайлы могут автоматически заменяться в узлах TileMapLayer с "
"помощью редактора."

msgid ""
"Sets a terrain's color. This color is used for identifying the different "
"terrains in the TileSet editor."
msgstr ""
"Задает цвет ландшафта. Этот цвет используется для идентификации различных "
"ландшафтов в редакторе TileSet."

msgid "Sets a terrain's name."
msgstr "Устанавливает название местности."

msgid ""
"Sets a terrain mode. Each mode determines which bits of a tile shape is used "
"to match the neighboring tiles' terrains."
msgstr ""
"Устанавливает режим местности. Каждый режим определяет, какие части формы "
"тайла используются для соответствия ландшафтам соседних тайлов."

msgid ""
"For all half-offset shapes (Isometric, Hexagonal and Half-Offset square), "
"changes the way tiles are indexed in the [TileMapLayer] grid."
msgstr ""
"Для всех форм с половинным смещением (изометрическая, шестиугольная и "
"квадратная с половинным смещением) изменяет способ индексации плиток в сетке "
"[TileMapLayer]."

msgid ""
"For all half-offset shapes (Isometric, Hexagonal and Half-Offset square), "
"determines the offset axis."
msgstr ""
"Для всех полусмещенных форм (изометрических, шестиугольных и полусмещенных "
"квадратных) определяет ось смещения."

msgid "The tile shape."
msgstr "Форма тайла."

msgid ""
"The tile size, in pixels. For all tile shapes, this size corresponds to the "
"encompassing rectangle of the tile shape. This is thus the minimal cell size "
"required in an atlas."
msgstr ""
"Размер тайла в пикселях. Для всех форм тайлов этот размер соответствует "
"охватывающему прямоугольнику формы тайла. Таким образом, это минимальный "
"размер ячейки, требуемый в атласе."

msgid "Enables/Disable uv clipping when rendering the tiles."
msgstr "Включает/отключает UV-обрезку при рендеринге плиток."

msgid "Rectangular tile shape."
msgstr "Четырёхугольный тайл."

msgid ""
"Diamond tile shape (for isometric look).\n"
"[b]Note:[/b] Isometric [TileSet] works best if all sibling [TileMapLayer]s "
"and their parent inheriting from [Node2D] have Y-sort enabled."
msgstr ""
"Форма тайла в виде ромба (для изометрического вида).\n"
"[b]Примечание:[/b] Изометрический [TileSet] работает лучше всего, если все "
"родственные [TileMapLayer] и их родитель, унаследованный от [Node2D], имеют "
"включённую сортировку по оси Y."

msgid ""
"Rectangular tile shape with one row/column out of two offset by half a tile."
msgstr ""
"Прямоугольная форма тайла, в которой один ряд/столбец из двух смещен на "
"половину тайла."

msgid "Hexagonal tile shape."
msgstr "Шестиугольная форма тайла."

msgid ""
"Tile coordinates layout where both axis stay consistent with their respective "
"local horizontal and vertical axis."
msgstr ""
"Координатная компоновка тайла, в которой обе оси остаются согласованными с "
"соответствующими им локальными горизонтальными и вертикальными осями."

msgid ""
"Same as [constant TILE_LAYOUT_STACKED], but the first half-offset is negative "
"instead of positive."
msgstr ""
"То же, что и [constant TILE_LAYOUT_STACKED], но первая половина смещения "
"отрицательная, а не положительная."

msgid ""
"Tile coordinates layout where the horizontal axis stay horizontal, and the "
"vertical one goes down-right."
msgstr ""
"Расположение координат тайлов, при котором горизонтальная ось остаётся "
"горизонтальной, а вертикальная ось направлена вниз-вправо."

msgid ""
"Tile coordinates layout where the vertical axis stay vertical, and the "
"horizontal one goes down-right."
msgstr ""
"Расположение координат тайлов, при котором вертикальная ось остаётся "
"вертикальной, а горизонтальная ось направлена вниз-вправо."

msgid ""
"Tile coordinates layout where the horizontal axis goes up-right, and the "
"vertical one goes down-right."
msgstr ""
"Расположение координат тайлов, при котором горизонтальная ось направлена "
"вверх-вправо, а вертикальная ось направлена вниз-вправо."

msgid ""
"Tile coordinates layout where the horizontal axis goes down-right, and the "
"vertical one goes down-left."
msgstr ""
"Расположение координат тайлов, при котором горизонтальная ось направлена вниз-"
"вправо, а вертикальная ось направлена вниз-влево."

msgid "Horizontal half-offset."
msgstr "Горизонтальный полусдвиг."

msgid "Vertical half-offset."
msgstr "Вертикальный полусдвиг."

msgid "Neighbor on the right side."
msgstr "Сосед с правой стороны."

msgid "Neighbor in the right corner."
msgstr "Сосед в правом углу."

msgid "Neighbor on the bottom right side."
msgstr "Сосед снизу справа."

msgid "Neighbor in the bottom right corner."
msgstr "Сосед в правом нижнем углу."

msgid "Neighbor on the bottom side."
msgstr "Сосед снизу."

msgid "Neighbor in the bottom corner."
msgstr "Сосед в нижнем углу."

msgid "Neighbor on the bottom left side."
msgstr "Сосед снизу слева."

msgid "Neighbor in the bottom left corner."
msgstr "Сосед в левом нижнем углу."

msgid "Neighbor on the left side."
msgstr "Сосед слева."

msgid "Neighbor in the left corner."
msgstr "Сосед в левом углу."

msgid "Neighbor on the top left side."
msgstr "Сосед слева вверху."

msgid "Neighbor in the top left corner."
msgstr "Сосед в левом верхнем углу."

msgid "Neighbor on the top side."
msgstr "Сосед сверху."

msgid "Neighbor in the top corner."
msgstr "Сосед в верхнем углу."

msgid "Neighbor on the top right side."
msgstr "Сосед вверху справа."

msgid "Neighbor in the top right corner."
msgstr "Сосед в правом верхнем углу."

msgid ""
"Requires both corners and side to match with neighboring tiles' terrains."
msgstr ""
"Необходимо, чтобы углы и стороны совпадали с ландшафтом соседних плиток."

msgid "Requires corners to match with neighboring tiles' terrains."
msgstr "Необходимо, чтобы углы совпадали с рельефом соседних плиток."

msgid "Requires sides to match with neighboring tiles' terrains."
msgstr "Требует, чтобы стороны совпадали с ландшафтом соседних плиток."

msgid "Exposes a 2D atlas texture as a set of tiles for a [TileSet] resource."
msgstr ""
"Предоставляет 2D-текстуру атласа как набор плиток для ресурса [TileSet]."

msgid ""
"An atlas is a grid of tiles laid out on a texture. Each tile in the grid must "
"be exposed using [method create_tile]. Those tiles are then indexed using "
"their coordinates in the grid.\n"
"Each tile can also have a size in the grid coordinates, making it more or "
"less cells in the atlas.\n"
"Alternatives version of a tile can be created using [method "
"create_alternative_tile], which are then indexed using an alternative ID. The "
"main tile (the one in the grid), is accessed with an alternative ID equal to "
"0.\n"
"Each tile alternate has a set of properties that is defined by the source's "
"[TileSet] layers. Those properties are stored in a TileData object that can "
"be accessed and modified using [method get_tile_data].\n"
"As TileData properties are stored directly in the TileSetAtlasSource "
"resource, their properties might also be set using "
"[code]TileSetAtlasSource.set(\"<coords_x>:<coords_y>/<alternative_id>/"
"<tile_data_property>\")[/code]."
msgstr ""
"Атлас — это сетка тайлов, расположенных на текстуре. Каждый тайл в сетке "
"должен быть создан методом [method create_tile]. Эти тайлы индексируются по "
"их координатам в сетке.\n"
"Каждый тайл также может иметь размер в координатах сетки, занимая больше или "
"меньше ячеек в атласе.\n"
"Альтернативные версии тайла создаются методом [method "
"create_alternative_tile] и индексируются по альтернативному идентификатору. "
"Основной тайл (сеточный) доступен при альтернативном идентификаторе, равном "
"0.\n"
"Каждый альтернативный тайл имеет набор свойств, определяемых слоями [TileSet] "
"источника. Эти свойства хранятся в объекте TileData, доступном для чтения и "
"изменения через [method get_tile_data].\n"
"Поскольку свойства TileData хранятся непосредственно в ресурсе "
"TileSetAtlasSource, их также можно задать через "
"[code]TileSetAtlasSource.set(\"<координата_x>:<координата_y>/"
"<альтернативный_id>/<свойство_tiledata>\")[/code]."

msgid ""
"Removes all tiles that don't fit the available texture area. This method "
"iterates over all the source's tiles, so it's advised to use [method "
"has_tiles_outside_texture] beforehand."
msgstr ""
"Удаляет все тайлы, которые не вписываются в доступную область текстуры. Этот "
"метод перебирает все тайлы источника, поэтому рекомендуется заранее "
"использовать [method has_tiles_outside_texture]."

msgid ""
"Creates an alternative tile for the tile at coordinates [param atlas_coords]. "
"If [param alternative_id_override] is -1, give it an automatically generated "
"unique ID, or assigns it the given ID otherwise.\n"
"Returns the new alternative identifier, or -1 if the alternative could not be "
"created with a provided [param alternative_id_override]."
msgstr ""
"Создает альтернативный тайл для тайла с координатами [param atlas_coords]. "
"Если [param alternative_id_override] равен -1, назначает автоматически "
"сгенерированный уникальный ID, в противном случае использует указанный ID.\n"
"Возвращает новый идентификатор альтернативы или -1, если альтернатива не "
"может быть создана с предоставленным [param alternative_id_override]."

msgid ""
"Creates a new tile at coordinates [param atlas_coords] with the given [param "
"size]."
msgstr ""
"Создает новый тайл с координатами [param atlas_coords] с заданным [param "
"size]."

msgid ""
"Returns the atlas grid size, which depends on how many tiles can fit in the "
"texture. It thus depends on the [member texture]'s size, the atlas [member "
"margins], and the tiles' [member texture_region_size]."
msgstr ""
"Возвращает размер сетки атласа, который зависит от того, сколько плиток может "
"поместиться в текстуре. Таким образом, он зависит от размера [member "
"texture], [member margins] атласа и [member texture_region_size] плиток."

msgid ""
"Returns the alternative ID a following call to [method "
"create_alternative_tile] would return."
msgstr ""
"Возвращает альтернативный идентификатор, который вернет следующий вызов "
"[method create_alternative_tile]."

msgid ""
"If [member use_texture_padding] is [code]false[/code], returns [member "
"texture]. Otherwise, returns and internal [ImageTexture] created that "
"includes the padding."
msgstr ""
"Если [member use_texture_padding] равен [code]false[/code], возвращает "
"[member texture]. В противном случае возвращает и создает внутреннюю "
"[ImageTexture], которая включает отступ."

msgid ""
"Returns the region of the tile at coordinates [param atlas_coords] for the "
"given [param frame] inside the texture returned by [method "
"get_runtime_texture].\n"
"[b]Note:[/b] If [member use_texture_padding] is [code]false[/code], returns "
"the same as [method get_tile_texture_region]."
msgstr ""
"Возвращает область тайла с координатами [param atlas_coords] для заданного "
"[param frame] внутри текстуры, возвращаемой [method get_runtime_texture].\n"
"[b]Примечание:[/b] Если [member use_texture_padding] равен [code]false[/"
"code], возвращает то же, что и [method get_tile_texture_region]."

msgid ""
"Returns how many columns the tile at [param atlas_coords] has in its "
"animation layout."
msgstr ""
"Возвращает количество столбцов, которые тайл в [param atlas_coords] имеет в "
"своем макете анимации."

msgid ""
"Returns the animation frame duration of frame [param frame_index] for the "
"tile at coordinates [param atlas_coords]."
msgstr ""
"Возвращает длительность кадра анимации кадра [param frame_index] для тайла с "
"координатами [param atlas_coords]."

msgid ""
"Returns how many animation frames has the tile at coordinates [param "
"atlas_coords]."
msgstr ""
"Возвращает количество кадров анимации, которые имеет тайл с координатами "
"[param atlas_coords]."

msgid ""
"Returns the tile animation mode of the tile at [param atlas_coords]. See also "
"[method set_tile_animation_mode]."
msgstr ""
"Возвращает режим анимации тайла по координатам [param atlas_coords]. См. "
"также [method set_tile_animation_mode]."

msgid ""
"Returns the separation (as in the atlas grid) between each frame of an "
"animated tile at coordinates [param atlas_coords]."
msgstr ""
"Возвращает расстояние (как в сетке атласа) между кадрами анимированного тайла "
"по координатам [param atlas_coords]."

msgid ""
"Returns the animation speed of the tile at coordinates [param atlas_coords]."
msgstr "Возвращает скорость анимации тайла по координатам [param atlas_coords]."

msgid ""
"Returns the sum of the sum of the frame durations of the tile at coordinates "
"[param atlas_coords]. This value needs to be divided by the animation speed "
"to get the actual animation loop duration."
msgstr ""
"Возвращает общую длительность (sum of the sum) всех кадров анимации тайла по "
"координатам [param atlas_coords]. Это значение необходимо разделить на "
"скорость анимации, чтобы получить фактическую длительность цикла анимации."

msgid ""
"If there is a tile covering the [param atlas_coords] coordinates, returns the "
"top-left coordinates of the tile (thus its coordinate ID). Returns "
"[code]Vector2i(-1, -1)[/code] otherwise."
msgstr ""
"Если есть тайл, покрывающий координаты [param atlas_coords], возвращает "
"верхние левые координаты тайла (следовательно, его идентификатор координат). "
"В противном случае возвращает [code]Vector2i(-1, -1)[/code]."

msgid ""
"Returns the [TileData] object for the given atlas coordinates and alternative "
"ID."
msgstr ""
"Возвращает объект [TileData] для указанных координат атласа и альтернативного "
"идентификатора."

msgid ""
"Returns the size of the tile (in the grid coordinates system) at coordinates "
"[param atlas_coords]."
msgstr ""
"Возвращает размер тайла (в системе координат сетки) в координатах [param "
"atlas_coords]."

msgid ""
"Returns a tile's texture region in the atlas texture. For animated tiles, a "
"[param frame] argument might be provided for the different frames of the "
"animation."
msgstr ""
"Возвращает текстурную область тайла в текстуре атласа. Для анимированных "
"тайлов аргумент [param frame] может быть предоставлен для различных кадров "
"анимации."

msgid ""
"Returns an array of tiles coordinates ID that will be automatically removed "
"when modifying one or several of those properties: [param texture], [param "
"margins], [param separation] or [param texture_region_size]. This can be used "
"to undo changes that would have caused tiles data loss."
msgstr ""
"Возвращает массив идентификаторов координат плиток, которые будут "
"автоматически удалены при изменении одного или нескольких из этих свойств: "
"[param texture], [param margins], [param section] или [param "
"texture_region_size]. Это можно использовать для отмены изменений, которые "
"могли бы привести к потере данных плиток."

msgid ""
"Returns whether there is enough room in an atlas to create/modify a tile with "
"the given properties. If [param ignored_tile] is provided, act as is the "
"given tile was not present in the atlas. This may be used when you want to "
"modify a tile's properties."
msgstr ""
"Возвращает, достаточно ли места в атласе для создания/изменения тайла с "
"заданными свойствами. Если указан [param passed_tile], действовать так, как "
"будто заданный тайл отсутствует в атласе. Это можно использовать, когда вы "
"хотите изменить свойства тайла."

msgid ""
"Checks if the source has any tiles that don't fit the texture area (either "
"partially or completely)."
msgstr ""
"Проверяет, есть ли в источнике тайлы, которые не попадают в область текстуры "
"(частично или полностью)."

msgid ""
"Move the tile and its alternatives at the [param atlas_coords] coordinates to "
"the [param new_atlas_coords] coordinates with the [param new_size] size. This "
"functions will fail if a tile is already present in the given area.\n"
"If [param new_atlas_coords] is [code]Vector2i(-1, -1)[/code], keeps the "
"tile's coordinates. If [param new_size] is [code]Vector2i(-1, -1)[/code], "
"keeps the tile's size.\n"
"To avoid an error, first check if a move is possible using [method "
"has_room_for_tile]."
msgstr ""
"Перемещает тайл и его альтернативы из координат [param atlas_coords] в "
"координаты [param new_atlas_coords] с размером [param new_size]. Функция "
"завершится ошибкой, если в указанной области уже присутствует тайл.\n"
"Если [param new_atlas_coords] равен [code]Vector2i(-1, -1)[/code], "
"сохраняются текущие координаты тайла. Если [param new_size] равен "
"[code]Vector2i(-1, -1)[/code], сохраняется текущий размер тайла.\n"
"Чтобы избежать ошибки, сначала проверьте возможность перемещения с помощью "
"[method has_room_for_tile]."

msgid ""
"Remove a tile's alternative with alternative ID [param alternative_tile].\n"
"Calling this function with [param alternative_tile] equals to 0 will fail, as "
"the base tile alternative cannot be removed."
msgstr ""
"Удалить альтернативу тайла с альтернативным идентификатором [param "
"alternative_tile].\n"
"Вызов этой функции с [param alternative_tile], равным 0, завершится ошибкой, "
"так как базовая альтернатива тайла не может быть удалена."

msgid "Remove a tile and its alternative at coordinates [param atlas_coords]."
msgstr "Удалить тайл и его альтернативу по координатам [param atlas_coords]."

msgid ""
"Change a tile's alternative ID from [param alternative_tile] to [param "
"new_id].\n"
"Calling this function with [param new_id] of 0 will fail, as the base tile "
"alternative cannot be moved."
msgstr ""
"Измените альтернативный идентификатор тайла с [param alternative_tile] на "
"[param new_id].\n"
"Вызов этой функции с [param new_id] равным 0 завершится ошибкой, так как "
"базовую альтернативу тайла нельзя переместить."

msgid ""
"Sets the number of columns in the animation layout of the tile at coordinates "
"[param atlas_coords]. If set to 0, then the different frames of the animation "
"are laid out as a single horizontal line in the atlas."
msgstr ""
"Устанавливает количество столбцов в макете анимации тайла по координатам "
"[param atlas_coords]. Если установлено значение 0, то различные кадры "
"анимации располагаются в атласе как одна горизонтальная линия."

msgid ""
"Sets the animation frame [param duration] of frame [param frame_index] for "
"the tile at coordinates [param atlas_coords]."
msgstr ""
"Устанавливает кадр анимации [param duration] кадра [param frame_index] для "
"тайла по координатам [param atlas_coords]."

msgid ""
"Sets how many animation frames the tile at coordinates [param atlas_coords] "
"has."
msgstr ""
"Устанавливает количество кадров анимации для тайла по координатам [param "
"atlas_coords]."

msgid ""
"Sets the tile animation mode of the tile at [param atlas_coords] to [param "
"mode]. See also [method get_tile_animation_mode]."
msgstr ""
"Устанавливает режим анимации тайла в [param atlas_coords] на [param mode]. "
"См. также [method get_tile_animation_mode]."

msgid ""
"Sets the margin (in grid tiles) between each tile in the animation layout of "
"the tile at coordinates [param atlas_coords] has."
msgstr ""
"Устанавливает отступ (в ячейках сетки) между каждым тайлом в макете анимации "
"тайла по координатам [param atlas_coords]."

msgid ""
"Sets the animation speed of the tile at coordinates [param atlas_coords] has."
msgstr ""
"Устанавливает скорость анимации тайла по координатам [param atlas_coords]."

msgid "Margins, in pixels, to offset the origin of the grid in the texture."
msgstr "Поля в пикселях для смещения начала сетки в текстуре."

msgid "Separation, in pixels, between each tile texture region of the grid."
msgstr "Разделение в пикселях между каждой областью текстуры тайла сетки."

msgid "The atlas texture."
msgstr "Текстура атласа."

msgid ""
"The base tile size in the texture (in pixel). This size must be bigger than "
"or equal to the TileSet's [code]tile_size[/code] value."
msgstr ""
"Базовый размер тайла в текстуре (в пикселях). Этот размер должен быть больше "
"или равен значению [code]tile_size[/code] TileSet."

msgid ""
"If [code]true[/code], generates an internal texture with an additional one "
"pixel padding around each tile. Texture padding avoids a common artifact "
"where lines appear between tiles.\n"
"Disabling this setting might lead a small performance improvement, as "
"generating the internal texture requires both memory and processing time when "
"the TileSetAtlasSource resource is modified."
msgstr ""
"Если [code]true[/code], генерирует внутреннюю текстуру с дополнительным "
"отступом в один пиксель вокруг каждого тайла. Отступ текстуры позволяет "
"избежать распространенного артефакта, когда линии появляются между тайлами.\n"
"Отключение этого параметра может привести к небольшому улучшению "
"производительности, поскольку создание внутренней текстуры требует как "
"памяти, так и времени обработки при изменении ресурса TileSetAtlasSource."

msgid "Tile animations start at same time, looking identical."
msgstr "Анимация плиток запускается одновременно и выглядит идентично."

msgid "Tile animations start at random times, looking varied."
msgstr ""
"Анимация плиток запускается в случайные моменты времени и выглядит "
"разнообразно."

msgid "Represents the size of the [enum TileAnimationMode] enum."
msgstr "Представляет размер перечисления [enum TileAnimationMode]."

msgid ""
"Represents cell's horizontal flip flag. Should be used directly with "
"[TileMapLayer] to flip placed tiles by altering their alternative IDs.\n"
"[codeblock]\n"
"var alternate_id = $TileMapLayer.get_cell_alternative_tile(Vector2i(2, 2))\n"
"if not alternate_id & TileSetAtlasSource.TRANSFORM_FLIP_H:\n"
"\t# If tile is not already flipped, flip it.\n"
"\t$TileMapLayer.set_cell(Vector2i(2, 2), source_id, atlas_coords, "
"alternate_id | TileSetAtlasSource.TRANSFORM_FLIP_H)\n"
"[/codeblock]\n"
"[b]Note:[/b] These transformations can be combined to do the equivalent of 0, "
"90, 180, and 270 degree rotations, as shown below:\n"
"[codeblock]\n"
"enum TileTransform {\n"
"\tROTATE_0 = 0,\n"
"\tROTATE_90 = TileSetAtlasSource.TRANSFORM_TRANSPOSE | "
"TileSetAtlasSource.TRANSFORM_FLIP_H,\n"
"\tROTATE_180 = TileSetAtlasSource.TRANSFORM_FLIP_H | "
"TileSetAtlasSource.TRANSFORM_FLIP_V,\n"
"\tROTATE_270 = TileSetAtlasSource.TRANSFORM_TRANSPOSE | "
"TileSetAtlasSource.TRANSFORM_FLIP_V,\n"
"}\n"
"[/codeblock]"
msgstr ""
"Представляет флаг горизонтального переворота ячейки. Следует использовать "
"напрямую с [TileMapLayer] для переворота размещенных тайлов путем изменения "
"их альтернативных идентификаторов (ID).\n"
"[codeblock]\n"
"var alternate_id = $TileMapLayer.get_cell_alternative_tile(Vector2i(2, 2))\n"
"if not alternate_id & TileSetAtlasSource.TRANSFORM_FLIP_H:\n"
"\t# Если тайл еще не перевернут, переверните его.\n"
"\t$TileMapLayer.set_cell(Vector2i(2, 2), source_id, atlas_coords, "
"alternate_id | TileSetAtlasSource.TRANSFORM_FLIP_H)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Эти преобразования можно объединить для создания "
"эквивалента поворотов на 0, 90, 180 и 270 градусов, как показано ниже:\n"
"[codeblock]\n"
"enum TileTransform {\n"
"\tROTATE_0 = 0,\n"
"\tROTATE_90 = TileSetAtlasSource.TRANSFORM_TRANSPOSE | "
"TileSetAtlasSource.TRANSFORM_FLIP_H,\n"
"\tROTATE_180 = TileSetAtlasSource.TRANSFORM_FLIP_H | "
"TileSetAtlasSource.TRANSFORM_FLIP_V,\n"
"\tROTATE_270 = TileSetAtlasSource.TRANSFORM_TRANSPOSE | "
"TileSetAtlasSource.TRANSFORM_FLIP_V,\n"
"}\n"
"[/codeblock]"

msgid ""
"Represents cell's vertical flip flag. See [constant TRANSFORM_FLIP_H] for "
"usage."
msgstr ""
"Представляет флаг вертикального переворота ячейки. См. [constant "
"TRANSFORM_FLIP_H] для использования."

msgid ""
"Represents cell's transposed flag. See [constant TRANSFORM_FLIP_H] for usage."
msgstr ""
"Представляет транспонированный флаг ячейки. См. [constant TRANSFORM_FLIP_H] "
"для использования."

msgid "Exposes a set of scenes as tiles for a [TileSet] resource."
msgstr "Предоставляет набор сцен в виде плиток для ресурса [TileSet]."

msgid ""
"When placed on a [TileMapLayer], tiles from [TileSetScenesCollectionSource] "
"will automatically instantiate an associated scene at the cell's position in "
"the TileMapLayer.\n"
"Scenes are instantiated as children of the [TileMapLayer] after it enters the "
"tree, at the end of the frame (their creation is deferred). If you add/remove "
"a scene tile in the [TileMapLayer] that is already inside the tree, the "
"[TileMapLayer] will automatically instantiate/free the scene accordingly.\n"
"[b]Note:[/b] Scene tiles all occupy one tile slot and instead use alternate "
"tile ID to identify scene index. [method TileSetSource.get_tiles_count] will "
"always return [code]1[/code]. Use [method get_scene_tiles_count] to get a "
"number of scenes in a [TileSetScenesCollectionSource].\n"
"Use this code if you want to find the scene path at a given tile in "
"[TileMapLayer]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var source_id = tile_map_layer.get_cell_source_id(Vector2i(x, y))\n"
"if source_id > -1:\n"
"\tvar scene_source = tile_map_layer.tile_set.get_source(source_id)\n"
"\tif scene_source is TileSetScenesCollectionSource:\n"
"\t\tvar alt_id = tile_map_layer.get_cell_alternative_tile(Vector2i(x, y))\n"
"\t\t# The assigned PackedScene.\n"
"\t\tvar scene = scene_source.get_scene_tile_scene(alt_id)\n"
"[/gdscript]\n"
"[csharp]\n"
"int sourceId = tileMapLayer.GetCellSourceId(new Vector2I(x, y));\n"
"if (sourceId > -1)\n"
"{\n"
"\tTileSetSource source = tileMapLayer.TileSet.GetSource(sourceId);\n"
"\tif (source is TileSetScenesCollectionSource sceneSource)\n"
"\t{\n"
"\t\tint altId = tileMapLayer.GetCellAlternativeTile(new Vector2I(x, y));\n"
"\t\t// The assigned PackedScene.\n"
"\t\tPackedScene scene = sceneSource.GetSceneTileScene(altId);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"При размещении на [TileMapLayer] плитки из [TileSetScenesCollectionSource] "
"автоматически создают экземпляр связанной сцены в позиции ячейки в "
"TileMapLayer.\n"
"Сцены создаются как дочерние элементы [TileMapLayer] после того, как он "
"попадает в дерево, в конце кадра (их создание откладывается). Если вы "
"добавляете/удаляете плитку сцены в [TileMapLayer], которая уже находится "
"внутри дерева, [TileMapLayer] автоматически создаст/освободит сцену "
"соответствующим образом.\n"
"[b]Примечание:[/b] Все плитки сцены занимают один слот плитки и вместо этого "
"используют альтернативный идентификатор плитки для определения индекса сцены. "
"[method TileSetSource.get_tiles_count] всегда будет возвращать [code]1[/"
"code]. Используйте [method get_scene_tiles_count] для получения количества "
"сцен в [TileSetScenesCollectionSource].\n"
"Используйте этот код, если вы хотите найти путь сцены на заданном тайле в "
"[TileMapLayer]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var source_id = tile_map_layer.get_cell_source_id(Vector2i(x, y))\n"
"if source_id > -1:\n"
"\tvar scene_source = tile_map_layer.tile_set.get_source(source_id)\n"
"\tif scene_source is TileSetScenesCollectionSource:\n"
"\t\tvar alt_id = tile_map_layer.get_cell_alternative_tile(Vector2i(x, y))\n"
"\t\t# The assigned PackedScene.\n"
"\t\tvar scene = scene_source.get_scene_tile_scene(alt_id)\n"
"[/gdscript]\n"
"[csharp]\n"
"int sourceId = tileMapLayer.GetCellSourceId(new Vector2I(x, y));\n"
"if (sourceId > -1)\n"
"{\n"
"\tTileSetSource source = tileMapLayer.TileSet.GetSource(sourceId);\n"
"\tif (source is TileSetScenesCollectionSource sceneSource)\n"
"\t{\n"
"\t\tint altId = tileMapLayer.GetCellAlternativeTile(new Vector2I(x, y));\n"
"\t\t// The assigned PackedScene.\n"
"\t\tPackedScene scene = sceneSource.GetSceneTileScene(altId);\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Creates a scene-based tile out of the given scene.\n"
"Returns a newly generated unique ID."
msgstr ""
"Создает тайл на основе сцены из заданной сцены.\n"
"Возвращает новый сгенерированный уникальный идентификатор."

msgid ""
"Returns the scene ID a following call to [method create_scene_tile] would "
"return."
msgstr ""
"Возвращает идентификатор сцены, который вернет следующий вызов [method "
"create_scene_tile]."

msgid ""
"Returns whether the scene tile with [param id] displays a placeholder in the "
"editor."
msgstr ""
"Возвращает, отображает ли тайл-сцена с идентификатором [param id] заполнитель "
"в редакторе."

msgid "Returns the scene tile ID of the scene tile at [param index]."
msgstr ""
"Возвращает идентификатор фрагмента сцены для фрагмента сцены по адресу [param "
"index]."

msgid "Returns the [PackedScene] resource of scene tile with [param id]."
msgstr "Возвращает ресурс [PackedScene] тайла-сцены с [param id]."

msgid "Returns the number or scene tiles this TileSet source has."
msgstr "Возвращает количество плиток сцены, имеющихся в этом источнике TileSet."

msgid "Returns whether this TileSet source has a scene tile with [param id]."
msgstr "Возвращает, имеет ли этот источник TileSet тайл-сцены с [param id]."

msgid "Remove the scene tile with [param id]."
msgstr "Удалить тайл-сцену с [param id]."

msgid ""
"Sets whether or not the scene tile with [param id] should display a "
"placeholder in the editor. This might be useful for scenes that are not "
"visible."
msgstr ""
"Устанавливает, должен ли тайл-сцена с [param id] отображать заполнитель в "
"редакторе. Это может быть полезно для сцен, которые не видны."

msgid ""
"Changes a scene tile's ID from [param id] to [param new_id]. This will fail "
"if there is already a tile with an ID equal to [param new_id]."
msgstr ""
"Изменяет идентификатор тайла-сцены с [param id] на [param new_id]. Это "
"завершится ошибкой, если уже есть тайл с идентификатором, равным [param "
"new_id]."

msgid ""
"Assigns a [PackedScene] resource to the scene tile with [param id]. This will "
"fail if the scene does not extend [CanvasItem], as positioning properties are "
"needed to place the scene on the [TileMapLayer]."
msgstr ""
"Назначает ресурс [PackedScene] тайлу-сцене с [param id]. Это не сработает, "
"если сцена не расширяет [CanvasItem], поскольку для размещения сцены на "
"[TileMapLayer] необходимы свойства позиционирования."

msgid "Exposes a set of tiles for a [TileSet] resource."
msgstr "Предоставляет набор плиток для ресурса [TileSet]."

msgid ""
"Exposes a set of tiles for a [TileSet] resource.\n"
"Tiles in a source are indexed with two IDs, coordinates ID (of type Vector2i) "
"and an alternative ID (of type int), named according to their use in the "
"[TileSetAtlasSource] class.\n"
"Depending on the TileSet source type, those IDs might have restrictions on "
"their values, this is why the base [TileSetSource] class only exposes getters "
"for them.\n"
"You can iterate over all tiles exposed by a TileSetSource by first iterating "
"over coordinates IDs using [method get_tiles_count] and [method get_tile_id], "
"then over alternative IDs using [method get_alternative_tiles_count] and "
"[method get_alternative_tile_id].\n"
"[b]Warning:[/b] [TileSetSource] can only be added to one TileSet at the same "
"time. Calling [method TileSet.add_source] on a second [TileSet] will remove "
"the source from the first one."
msgstr ""
"Предоставляет набор тайлов для ресурса [TileSet].\n"
"Тайлы в источнике индексируются двумя идентификаторами: координат (типа "
"Vector2i) и альтернативного тайла (типа int), названными в соответствии с их "
"использованием в классе [TileSetAtlasSource].\n"
"В зависимости от типа источника TileSet, эти идентификаторы могут иметь "
"ограничения на свои значения, поэтому базовый класс [TileSetSource] "
"предоставляет только геттеры для них.\n"
"Вы можете перебирать все тайлы, предоставляемые TileSetSource, сначала "
"перебирая идентификаторы координат с помощью [method get_tiles_count] и "
"[method get_tile_id], а затем альтернативные идентификаторы с помощью [method "
"get_alternative_tiles_count] и [method get_alternative_tile_id].\n"
"[b]Предупреждение:[/b] [TileSetSource] можно добавить только в один TileSet "
"одновременно. Вызов [method TileSet.add_source] для второго TileSet удалит "
"источник из первого."

msgid ""
"Returns the alternative ID for the tile with coordinates ID [param "
"atlas_coords] at index [param index]."
msgstr ""
"Возвращает альтернативный идентификатор для тайла с идентификатором координат "
"[param atlas_coords] по индексу [param index]."

msgid ""
"Returns the number of alternatives tiles for the coordinates ID [param "
"atlas_coords].\n"
"For [TileSetAtlasSource], this always return at least 1, as the base tile "
"with ID 0 is always part of the alternatives list.\n"
"Returns -1 if there is not tile at the given coords."
msgstr ""
"Возвращает количество альтернативных тайлов для идентификатора координат "
"[param atlas_coords].\n"
"Для [TileSetAtlasSource] всегда возвращается не менее 1, так как базоваый "
"тайл с идентификатором 0 всегда является частью списка альтернатив.\n"
"Возвращает -1, если тайла по заданным координатами нет."

msgid "Returns the tile coordinates ID of the tile with index [param index]."
msgstr "Возвращает идентификатор координат тайла с индексом [param index]."

msgid ""
"Returns how many tiles this atlas source defines (not including alternative "
"tiles)."
msgstr ""
"Возвращает количество тайлов, определенных в этом источнике атласа (не "
"включая альтернативные тайлы)."

msgid ""
"Returns if the base tile at coordinates [param atlas_coords] has an "
"alternative with ID [param alternative_tile]."
msgstr ""
"Возвращает, имеет ли базовый тайл по координатам [param atlas_coords] "
"альтернативу с идентификатором [param alternative_tile]."

msgid ""
"Returns if this atlas has a tile with coordinates ID [param atlas_coords]."
msgstr ""
"Возвращает, есть ли в этом атласе тайл с идентификатором координат [param "
"atlas_coords]."

msgid "A singleton for working with time data."
msgstr "Синглтон для работы с данными о времени."

msgid ""
"The Time singleton allows converting time between various formats and also "
"getting time information from the system.\n"
"This class conforms with as many of the ISO 8601 standards as possible. All "
"dates follow the Proleptic Gregorian calendar. As such, the day before "
"[code]1582-10-15[/code] is [code]1582-10-14[/code], not [code]1582-10-04[/"
"code]. The year before 1 AD (aka 1 BC) is number [code]0[/code], with the "
"year before that (2 BC) being [code]-1[/code], etc.\n"
"Conversion methods assume \"the same timezone\", and do not handle timezone "
"conversions or DST automatically. Leap seconds are also not handled, they "
"must be done manually if desired. Suffixes such as \"Z\" are not handled, you "
"need to strip them away manually.\n"
"When getting time information from the system, the time can either be in the "
"local timezone or UTC depending on the [code]utc[/code] parameter. However, "
"the [method get_unix_time_from_system] method always uses UTC as it returns "
"the seconds passed since the [url=https://en.wikipedia.org/wiki/"
"Unix_time]Unix epoch[/url].\n"
"[b]Important:[/b] The [code]_from_system[/code] methods use the system clock "
"that the user can manually set. [b]Never use[/b] this method for precise time "
"calculation since its results are subject to automatic adjustments by the "
"user or the operating system. [b]Always use[/b] [method get_ticks_usec] or "
"[method get_ticks_msec] for precise time calculation instead, since they are "
"guaranteed to be monotonic (i.e. never decrease)."
msgstr ""
"Синглтон Time позволяет преобразовывать время между различными форматами, а "
"также получать информацию о времени из системы.\n"
"Этот класс соответствует максимально возможному количеству стандартов ISO "
"8601. Все даты следуют пролептическому григорианскому календарю. Таким "
"образом, день до [code]1582-10-15[/code] — это [code]1582-10-14[/code], а не "
"[code]1582-10-04[/code]. Год до 1 г. н. э. (он же 1 г. до н. э.) имеет номер "
"[code]0[/code], а год до этого (2 г. до н. э.) — это [code]-1[/code] и т. д.\n"
"Методы преобразования предполагают \"один и тот же часовой пояс\" и не "
"обрабатывают преобразования часовых поясов или летнее время автоматически. "
"Високосные секунды также не обрабатываются, их необходимо сделать вручную, "
"если это необходимо. Суффиксы, такие как \"Z\", не обрабатываются, их "
"необходимо удалить вручную.\n"
"При получении информации о времени из системы время может быть либо в "
"локальном часовом поясе, либо в формате UTC в зависимости от параметра "
"[code]utc[/code]. Однако метод [method get_unix_time_from_system] всегда "
"использует UTC, поскольку возвращает количество секунд, прошедших с "
"[url=https://en.wikipedia.org/wiki/Unix_time]эпохи Unix[/url].\n"
"[b]Важно:[/b] Методы [code]_from_system[/code] используют системные часы, "
"которые пользователь может установить вручную. [b]Никогда не используйте[/b] "
"этот метод для точного расчета времени, поскольку его результаты могут быть "
"автоматически скорректированы пользователем или операционной системой. "
"[b]Всегда используйте[/b] [method get_ticks_usec] или [method get_ticks_msec] "
"для точного расчета времени, поскольку они гарантированно будут монотонными "
"(т. е. никогда не уменьшатся)."

msgid ""
"Returns the current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], and [code]weekday[/code].\n"
"The returned values are in the system's local time when [param utc] is "
"[code]false[/code], otherwise they are in UTC."
msgstr ""
"Возвращает текущую дату в виде словаря ключей: [code]год[/code], [code]месяц[/"
"code], [code]день[/code] и [code]день недели[/code]. \n"
"Возвращаемые значения указаны в локальном времени системы, если [param utc] "
"равен [code]false[/code], в противном случае они указаны в формате UTC."

msgid ""
"Converts the given Unix timestamp to a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], and [code]weekday[/code]."
msgstr ""
"Преобразует заданную временную метку Unix в словарь ключей: [code]год[/code], "
"[code]месяц[/code], [code]день[/code] и [code]день недели[/code]."

msgid ""
"Returns the current date as an ISO 8601 date string (YYYY-MM-DD).\n"
"The returned values are in the system's local time when [param utc] is "
"[code]false[/code], otherwise they are in UTC."
msgstr ""
"Возвращает текущую дату в виде строки даты ISO 8601 (ГГГГ-ММ-ДД).\n"
"Возвращаемые значения указаны в локальном времени системы, если [param utc] "
"равен [code]false[/code], в противном случае они указаны в формате UTC."

msgid ""
"Converts the given Unix timestamp to an ISO 8601 date string (YYYY-MM-DD)."
msgstr ""
"Преобразует заданную временную метку Unix в строку даты ISO 8601 (ГГГГ-ММ-ДД)."

msgid ""
"Converts the given ISO 8601 date and time string (YYYY-MM-DDTHH:MM:SS) to a "
"dictionary of keys: [code]year[/code], [code]month[/code], [code]day[/code], "
"[code skip-lint]weekday[/code], [code]hour[/code], [code]minute[/code], and "
"[code]second[/code].\n"
"If [param weekday] is [code]false[/code], then the [code skip-lint]weekday[/"
"code] entry is excluded (the calculation is relatively expensive).\n"
"[b]Note:[/b] Any decimal fraction in the time string will be ignored silently."
msgstr ""
"Преобразует заданную строку даты и времени ISO 8601 (YYYY-MM-DDTHH:MM:SS) в "
"словарь ключей: [code]год[/code], [code]месяц[/code], [code]день[/code], "
"[code skip-lint]день недели[/code], [code]час[/code], [code]минута[/code] и "
"[code]секунда[/code].\n"
"Если [param weekday] равен [code]false[/code], то запись [code skip-lint]день "
"недели[/code] исключается (вычисление относительно затратно).\n"
"[b]Примечание:[/b] Любая десятичная дробь в строке времени будет "
"игнорироваться без уведомления."

msgid ""
"Returns the current date as a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]hour[/"
"code], [code]minute[/code], [code]second[/code], and [code]dst[/code] "
"(Daylight Savings Time)."
msgstr ""
"Возвращает текущую дату в виде словаря ключей: [code]год[/code], [code]месяц[/"
"code], [code]день[/code], [code]день недели[/code], [code]час[/code], "
"[code]минута[/code], [code]секунда[/code] и [code]dst[/code] (летнее время)."

msgid ""
"Converts the given Unix timestamp to a dictionary of keys: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]weekday[/code], [code]hour[/"
"code], [code]minute[/code], and [code]second[/code].\n"
"The returned Dictionary's values will be the same as the [method "
"get_datetime_dict_from_system] if the Unix timestamp is the current time, "
"with the exception of Daylight Savings Time as it cannot be determined from "
"the epoch."
msgstr ""
"Преобразует заданную временную метку Unix в словарь ключей: [code]год[/code], "
"[code]месяц[/code], [code]день[/code], [code]день недели[/code], [code]час[/"
"code], [code]минута[/code] и [code]секунда[/code]. \n"
"Возвращаемые значения словаря будут такими же, как у [method "
"get_datetime_dict_from_system], если временная метка Unix является текущим "
"временем, за исключением летнего времени, поскольку его невозможно определить "
"из эпохи."

msgid ""
"Converts the given dictionary of keys to an ISO 8601 date and time string "
"(YYYY-MM-DDTHH:MM:SS).\n"
"The given dictionary can be populated with the following keys: [code]year[/"
"code], [code]month[/code], [code]day[/code], [code]hour[/code], [code]minute[/"
"code], and [code]second[/code]. Any other entries (including [code]dst[/"
"code]) are ignored.\n"
"If the dictionary is empty, [code]0[/code] is returned. If some keys are "
"omitted, they default to the equivalent values for the Unix epoch timestamp 0 "
"(1970-01-01 at 00:00:00).\n"
"If [param use_space] is [code]true[/code], the date and time bits are "
"separated by an empty space character instead of the letter T."
msgstr ""
"Преобразует указанный словарь ключей в строку даты и времени ISO 8601 (YYYY-"
"MM-DDTHH:MM:SS).\n"
"Указанный словарь может быть заполнен следующими ключами: [code]year[/code], "
"[code]month[/code], [code]day[/code], [code]hour[/code], [code]minute[/code] "
"и [code]second[/code]. Любые другие записи (включая [code]dst[/code]) "
"игнорируются.\n"
"Если словарь пуст, возвращается [code]0[/code]. Если некоторые ключи "
"пропущены, они по умолчанию принимают эквивалентные значения для временной "
"метки эпохи Unix 0 (1970-01-01 в 00:00:00).\n"
"Если [param use_space] равен [code]true[/code], биты даты и времени "
"разделяются пробелом вместо буквы T."

msgid ""
"Returns the current date and time as an ISO 8601 date and time string (YYYY-"
"MM-DDTHH:MM:SS).\n"
"The returned values are in the system's local time when [param utc] is "
"[code]false[/code], otherwise they are in UTC.\n"
"If [param use_space] is [code]true[/code], the date and time bits are "
"separated by an empty space character instead of the letter T."
msgstr ""
"Возвращает текущую дату и время в виде строки даты и времени ISO 8601 (YYYY-"
"MM-DDTHH:MM:SS).\n"
"Возвращаемые значения указаны в локальном времени системы, если [param utc] "
"равен [code]false[/code], в противном случае они указаны в формате UTC.\n"
"Если [param use_space] равен [code]true[/code], биты даты и времени "
"разделяются символом пробела вместо буквы T."

msgid ""
"Converts the given Unix timestamp to an ISO 8601 date and time string (YYYY-"
"MM-DDTHH:MM:SS).\n"
"If [param use_space] is [code]true[/code], the date and time bits are "
"separated by an empty space character instead of the letter T."
msgstr ""
"Преобразует заданную временную метку Unix в строку даты и времени ISO 8601 "
"(YYYY-MM-DDTHH:MM:SS).\n"
"Если [param use_space] равен [code]true[/code], биты даты и времени "
"разделяются символом пустого пространства вместо буквы T."

msgid ""
"Converts the given timezone offset in minutes to a timezone offset string. "
"For example, -480 returns \"-08:00\", 345 returns \"+05:45\", and 0 returns "
"\"+00:00\"."
msgstr ""
"Преобразует заданное смещение часового пояса в минутах в строку смещения "
"часового пояса. Например, -480 возвращает \"-08:00\", 345 возвращает "
"\"+05:45\", а 0 возвращает \"+00:00\"."

msgid ""
"Returns the amount of time passed in milliseconds since the engine started.\n"
"Will always be positive or 0 and uses a 64-bit value (it will wrap after "
"roughly 500 million years)."
msgstr ""
"Возвращает количество времени, прошедшего в миллисекундах с момента запуска "
"двигателя.\n"
"Всегда будет положительным или 0 и использует 64-битное значение (оно будет "
"перенесено примерно через 500 миллионов лет)."

msgid ""
"Returns the amount of time passed in microseconds since the engine started.\n"
"Will always be positive or 0 and uses a 64-bit value (it will wrap after "
"roughly half a million years)."
msgstr ""
"Возвращает количество времени, прошедшего в микросекундах с момента запуска "
"двигателя.\n"
"Всегда будет положительным или 0 и использует 64-битное значение (оно будет "
"перезаписано примерно через полмиллиона лет)."

msgid ""
"Returns the current time as a dictionary of keys: [code]hour[/code], "
"[code]minute[/code], and [code]second[/code].\n"
"The returned values are in the system's local time when [param utc] is "
"[code]false[/code], otherwise they are in UTC."
msgstr ""
"Возвращает текущее время в виде словаря ключей: [code]час[/code], "
"[code]минута[/code] и [code]секунда[/code]. \n"
"Возвращаемые значения указаны в локальном времени системы, если [param utc] "
"равен [code]false[/code], в противном случае они указаны в формате UTC."

msgid ""
"Converts the given time to a dictionary of keys: [code]hour[/code], "
"[code]minute[/code], and [code]second[/code]."
msgstr ""
"Преобразует заданное время в словарь ключей: [code]час[/code], [code]минута[/"
"code] и [code]секунда[/code]."

msgid ""
"Returns the current time as an ISO 8601 time string (HH:MM:SS).\n"
"The returned values are in the system's local time when [param utc] is "
"[code]false[/code], otherwise they are in UTC."
msgstr ""
"Возвращает текущее время в виде строки времени ISO 8601 (ЧЧ:ММ:СС).\n"
"Возвращаемые значения указаны в локальном времени системы, если [param utc] "
"равен [code]false[/code], в противном случае они указаны в формате UTC."

msgid "Converts the given Unix timestamp to an ISO 8601 time string (HH:MM:SS)."
msgstr ""
"Преобразует заданную временную метку Unix в строку времени ISO 8601 "
"(ЧЧ:ММ:СС)."

msgid ""
"Returns the current time zone as a dictionary of keys: [code]bias[/code] and "
"[code]name[/code].\n"
"- [code]bias[/code] is the offset from UTC in minutes, since not all time "
"zones are multiples of an hour from UTC.\n"
"- [code]name[/code] is the localized name of the time zone, according to the "
"OS locale settings of the current user."
msgstr ""
"Возвращает текущий часовой пояс в виде словаря ключей: [code]bias[/code] и "
"[code]name[/code].\n"
"- [code]bias[/code] - это смещение относительно UTC в минутах, поскольку не "
"все часовые пояса кратны часу от UTC.\n"
"- [code]name[/code] - это локализованное название часового пояса в "
"соответствии с настройками локали ОС текущего пользователя."

msgid ""
"Converts a dictionary of time values to a Unix timestamp.\n"
"The given dictionary can be populated with the following keys: [code]year[/"
"code], [code]month[/code], [code]day[/code], [code]hour[/code], [code]minute[/"
"code], and [code]second[/code]. Any other entries (including [code]dst[/"
"code]) are ignored.\n"
"If the dictionary is empty, [code]0[/code] is returned. If some keys are "
"omitted, they default to the equivalent values for the Unix epoch timestamp 0 "
"(1970-01-01 at 00:00:00).\n"
"You can pass the output from [method get_datetime_dict_from_unix_time] "
"directly into this function and get the same as what was put in.\n"
"[b]Note:[/b] Unix timestamps are often in UTC. This method does not do any "
"timezone conversion, so the timestamp will be in the same timezone as the "
"given datetime dictionary."
msgstr ""
"Преобразует словарь значений времени в метку времени Unix.\n"
"Данный словарь может быть заполнен следующими ключами: [code]год[/code], "
"[code]месяц[/code], [code]день[/code], [code]час[/code], [code]минута[/code] "
"и [code]секунда[/code]. Любые другие записи (включая [code]dst[/code]) "
"игнорируются.\n"
"Если словарь пуст, возвращается [code]0[/code]. Если некоторые ключи "
"пропущены, они по умолчанию принимают эквивалентные значения для метки "
"времени эпохи Unix 0 (1970-01-01 в 00:00:00).\n"
"Вы можете передать вывод из [method get_datetime_dict_from_unix_time] "
"непосредственно в эту функцию и получить то же самое, что было введено.\n"
"[b]Примечание:[/b] Метки времени Unix часто указываются в формате UTC. Этот "
"метод не выполняет преобразование часового пояса, поэтому временная метка "
"будет находиться в том же часовом поясе, что и указанный словарь datetime."

msgid ""
"Converts the given ISO 8601 date and/or time string to a Unix timestamp. The "
"string can contain a date only, a time only, or both.\n"
"[b]Note:[/b] Unix timestamps are often in UTC. This method does not do any "
"timezone conversion, so the timestamp will be in the same timezone as the "
"given datetime string.\n"
"[b]Note:[/b] Any decimal fraction in the time string will be ignored silently."
msgstr ""
"Преобразует заданную строку даты и/или времени ISO 8601 в метку времени Unix. "
"Строка может содержать только дату, только время или и то, и другое.\n"
"[b]Примечание:[/b] Метки времени Unix часто указываются в формате UTC. Этот "
"метод не выполняет преобразование часового пояса, поэтому метка времени будет "
"находиться в том же часовом поясе, что и заданная строка даты и времени.\n"
"[b]Примечание:[/b] Любая десятичная дробь в строке времени будет "
"игнорироваться без уведомления."

msgid ""
"Returns the current Unix timestamp in seconds based on the system time in "
"UTC. This method is implemented by the operating system and always returns "
"the time in UTC. The Unix timestamp is the number of seconds passed since "
"1970-01-01 at 00:00:00, the [url=https://en.wikipedia.org/wiki/Unix_time]Unix "
"epoch[/url].\n"
"[b]Note:[/b] Unlike other methods that use integer timestamps, this method "
"returns the timestamp as a [float] for sub-second precision."
msgstr ""
"Возвращает текущую временную метку Unix в секундах на основе системного "
"времени в формате UTC. Этот метод реализуется операционной системой и всегда "
"возвращает время в формате UTC. Временная метка Unix — это количество секунд, "
"прошедших с 1970-01-01 в 00:00:00, [url=https://en.wikipedia.org/wiki/"
"Unix_time]эпохи Unix[/url].\n"
"[b]Примечание:[/b] В отличие от других методов, использующих целочисленные "
"временные метки, этот метод возвращает временную метку как [float] (число с "
"плавающей точкой) для точности до доли секунды."

msgid "The month of January, represented numerically as [code]01[/code]."
msgstr "Месяц январь, представленный в числовом виде как [code]01[/code]."

msgid "The month of February, represented numerically as [code]02[/code]."
msgstr "Месяц февраль, представленный численно как [code]02[/code]."

msgid "The month of March, represented numerically as [code]03[/code]."
msgstr "Март месяц, представленный численно как [code]03[/code]."

msgid "The month of April, represented numerically as [code]04[/code]."
msgstr "Месяц апрель, представленный численно как [code]04[/code]."

msgid "The month of May, represented numerically as [code]05[/code]."
msgstr "Месяц май, представленный численно как [code]05[/code]."

msgid "The month of June, represented numerically as [code]06[/code]."
msgstr "Июнь, числовой формат которого представлен как [code]06[/code]."

msgid "The month of July, represented numerically as [code]07[/code]."
msgstr "Июль месяц, представленный численно как [code]07[/code]."

msgid "The month of August, represented numerically as [code]08[/code]."
msgstr "Август месяц, представленный численно как [code]08[/code]."

msgid "The month of September, represented numerically as [code]09[/code]."
msgstr "Сентябрь, представленный численно как [code]09[/code]."

msgid "The month of October, represented numerically as [code]10[/code]."
msgstr "Месяц октябрь, представленный численно как [code]10[/code]."

msgid "The month of November, represented numerically as [code]11[/code]."
msgstr "Месяц ноябрь, представленный численно как [code]11[/code]."

msgid "The month of December, represented numerically as [code]12[/code]."
msgstr "Декабрь, представленный численно как [code]12[/code]."

msgid "The day of the week Sunday, represented numerically as [code]0[/code]."
msgstr "День недели воскресенье, представленный численно как [code]0[/code]."

msgid "The day of the week Monday, represented numerically as [code]1[/code]."
msgstr ""
"День недели понедельник, представленный в числовом виде как [code]1[/code]."

msgid "The day of the week Tuesday, represented numerically as [code]2[/code]."
msgstr "День недели вторник, представленный в числовом виде как [code]2[/code]."

msgid ""
"The day of the week Wednesday, represented numerically as [code]3[/code]."
msgstr "День недели среда, представленный в числовом виде как [code]3[/code]."

msgid "The day of the week Thursday, represented numerically as [code]4[/code]."
msgstr "День недели четверг, представленный в числовом виде как [code]4[/code]."

msgid "The day of the week Friday, represented numerically as [code]5[/code]."
msgstr "День недели пятница, представленный в числовом виде как [code]5[/code]."

msgid "The day of the week Saturday, represented numerically as [code]6[/code]."
msgstr "День недели суббота, представленный в числовом виде как [code]6[/code]."

msgid "A countdown timer."
msgstr "Обратный таймер."

msgid ""
"The [Timer] node is a countdown timer and is the simplest way to handle time-"
"based logic in the engine. When a timer reaches the end of its [member "
"wait_time], it will emit the [signal timeout] signal.\n"
"After a timer enters the scene tree, it can be manually started with [method "
"start]. A timer node is also started automatically if [member autostart] is "
"[code]true[/code].\n"
"Without requiring much code, a timer node can be added and configured in the "
"editor. The [signal timeout] signal it emits can also be connected through "
"the Node dock in the editor:\n"
"[codeblock]\n"
"func _on_timer_timeout():\n"
"\tprint(\"Time to attack!\")\n"
"[/codeblock]\n"
"[b]Note:[/b] To create a one-shot timer without instantiating a node, use "
"[method SceneTree.create_timer].\n"
"[b]Note:[/b] Timers are affected by [member Engine.time_scale] unless [member "
"ignore_time_scale] is [code]true[/code]. The higher the time scale, the "
"sooner timers will end. How often a timer processes may depend on the "
"framerate or [member Engine.physics_ticks_per_second]."
msgstr ""
"Узел [Timer] представляет собой таймер обратного отсчёта и является "
"простейшим способом реализации логики, основанной на времени, в движке. Когда "
"таймер достигает конца [member wait_time], он выдаёт сигнал [signal "
"timeout].\n"
"После того, как таймер добавлен в дерево сцены, его можно запустить вручную с "
"помощью [method start]. Узел таймера также запускается автоматически, если "
"[member autostart] имеет значение [code]true[/code].\n"
"Узел таймера можно добавить и настроить в редакторе, не написав много кода. "
"Выдаваемый им сигнал [signal timeout] также можно подключить через док-"
"станцию Node в редакторе:\n"
"[codeblock]\n"
"func _on_timer_timeout():\n"
"\tprint(\"Time to attack!\")\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Чтобы создать одноразовый таймер без создания экземпляра "
"узла, используйте [method SceneTree.create_timer].\n"
"[b]Примечание:[/b] На таймеры влияет [member Engine.time_scale], если только "
"[member ignore_time_scale] не равен [code]true[/code]. Чем больше временной "
"масштаб, тем быстрее таймеры будут срабатывать. Частота срабатываний таймера "
"может зависеть от частоты кадров или [member Engine.physics_ticks_per_second]."

msgid "Returns [code]true[/code] if the timer is stopped or has not started."
msgstr "Возвращает [code]true[/code], если таймер остановлен или не запущен."

msgid ""
"Starts the timer, or resets the timer if it was started already. Fails if the "
"timer is not inside the scene tree. If [param time_sec] is greater than "
"[code]0[/code], this value is used for the [member wait_time].\n"
"[b]Note:[/b] This method does not resume a paused timer. See [member paused]."
msgstr ""
"Запускает таймер или сбрасывает его, если он уже был запущен. Завершается "
"сбоем, если таймер не находится внутри дерева сцены. Если [param time_sec] "
"больше [code]0[/code], это значение используется для [member wait_time].\n"
"[b]Примечание:[/b] Этот метод не возобновляет приостановленный таймер. См. "
"[member paused]."

msgid ""
"Stops the timer. See also [member paused]. Unlike [method start], this can "
"safely be called if the timer is not inside the scene tree.\n"
"[b]Note:[/b] Calling [method stop] does not emit the [signal timeout] signal, "
"as the timer is not considered to have timed out. If this is desired, use "
"[code]$Timer.timeout.emit()[/code] after calling [method stop] to manually "
"emit the signal."
msgstr ""
"Останавливает таймер. См. также [member paused]. В отличие от [method start], "
"этот метод можно безопасно вызывать, если таймер не находится внутри дерева "
"сцены.\n"
"[b]Примечание:[/b] Вызов [method stop] не генерирует сигнал [signal timeout], "
"поскольку считается, что таймер не истёк. Если это необходимо, используйте "
"[code]$Timer.timeout.emit()[/code] после вызова [method stop], чтобы вручную "
"сгенерировать сигнал."

msgid ""
"If [code]true[/code], the timer will start immediately when it enters the "
"scene tree.\n"
"[b]Note:[/b] After the timer enters the tree, this property is automatically "
"set to [code]false[/code].\n"
"[b]Note:[/b] This property does nothing when the timer is running in the "
"editor."
msgstr ""
"Если [code]true[/code], таймер запустится немедленно при входе в дерево "
"сцены.\n"
"[b]Примечание:[/b] После того, как таймер входит в дерево, это свойство "
"автоматически устанавливается в [code]false[/code].\n"
"[b]Примечание:[/b] Это свойство ничего не делает, когда таймер работает в "
"редакторе."

msgid ""
"If [code]true[/code], the timer will ignore [member Engine.time_scale] and "
"update with the real, elapsed time."
msgstr ""
"Если [code]true[/code], таймер проигнорирует [member Engine.time_scale] и "
"обновит значение реального прошедшего времени."

msgid ""
"If [code]true[/code], the timer will stop after reaching the end. Otherwise, "
"as by default, the timer will automatically restart."
msgstr ""
"Если [code]true[/code], таймер остановится после достижения конца. В "
"противном случае, как и по умолчанию, таймер автоматически перезапустится."

msgid ""
"If [code]true[/code], the timer is paused. A paused timer does not process "
"until this property is set back to [code]false[/code], even when [method "
"start] is called. See also [method stop]."
msgstr ""
"Если [code]true[/code], таймер приостанавливается. Приостановленный таймер не "
"будет выполняться, пока это свойство не будет возвращено к значению "
"[code]false[/code], даже при вызове [method start]. См. также [method stop]."

msgid "Specifies when the timer is updated during the main loop."
msgstr "Указывает, когда обновляется таймер во время основного цикла."

msgid ""
"The timer's remaining time in seconds. This is always [code]0[/code] if the "
"timer is stopped.\n"
"[b]Note:[/b] This property is read-only and cannot be modified. It is based "
"on [member wait_time]."
msgstr ""
"Оставшееся время таймера в секундах. Это всегда [code]0[/code], если таймер "
"остановлен.\n"
"[b]Примечание:[/b] Это свойство доступно только для чтения и не может быть "
"изменено. Оно основано на [member wait_time]."

msgid ""
"The time required for the timer to end, in seconds. This property can also be "
"set every time [method start] is called.\n"
"[b]Note:[/b] Timers can only process once per physics or process frame "
"(depending on the [member process_callback]). An unstable framerate may cause "
"the timer to end inconsistently, which is especially noticeable if the wait "
"time is lower than roughly [code]0.05[/code] seconds. For very short timers, "
"it is recommended to write your own code instead of using a [Timer] node. "
"Timers are also affected by [member Engine.time_scale]."
msgstr ""
"Время, необходимое для завершения таймера, в секундах. Это свойство также "
"можно устанавливать каждый раз при вызове [method start].\n"
"[b]Примечание:[/b] Таймеры могут обрабатываться только один раз на физический "
"или процессный кадр (в зависимости от [member process_callback]). "
"Нестабильная частота кадров может привести к неравномерному завершению "
"таймера, что особенно заметно, если время ожидания меньше примерно "
"[code]0.05[/code] секунд. Для очень коротких таймеров рекомендуется писать "
"собственный код вместо использования узла [Timer]. На таймеры также влияет "
"[member Engine.time_scale]."

msgid "Emitted when the timer reaches the end."
msgstr "Издается, когда таймер достигает конца."

msgid ""
"Update the timer every physics process frame (see [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."
msgstr ""
"Обновлять таймер каждый кадр физического процесса (см. [constant "
"Node.NOTIFICATION_INTERNAL_PHYSICS_PROCESS])."

msgid ""
"Update the timer every process (rendered) frame (see [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."
msgstr ""
"Обновлять таймер каждый обработанный (отрисованный) кадр (см. [constant "
"Node.NOTIFICATION_INTERNAL_PROCESS])."

msgid "TLS configuration for clients and servers."
msgstr "Конфигурация TLS для клиентов и серверов."

msgid ""
"TLSOptions abstracts the configuration options for the [StreamPeerTLS] and "
"[PacketPeerDTLS] classes.\n"
"Objects of this class cannot be instantiated directly, and one of the static "
"methods [method client], [method client_unsafe], or [method server] should be "
"used instead.\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Create a TLS client configuration which uses our custom trusted CA chain.\n"
"var client_trusted_cas = load(\"res://my_trusted_cas.crt\")\n"
"var client_tls_options = TLSOptions.client(client_trusted_cas)\n"
"\n"
"# Create a TLS server configuration.\n"
"var server_certs = load(\"res://my_server_cas.crt\")\n"
"var server_key = load(\"res://my_server_key.key\")\n"
"var server_tls_options = TLSOptions.server(server_key, server_certs)\n"
"[/gdscript]\n"
"[/codeblocks]"
msgstr ""
"TLSOptions абстрагирует параметры конфигурации для классов [StreamPeerTLS] и "
"[PacketPeerDTLS]. \n"
"Объекты этого класса не могут быть созданы напрямую, и вместо этого следует "
"использовать один из статических методов [method client], [method "
"client_unsafe] или [method server].\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Создаёт конфигурацию клиента TLS, которая использует нашу настраиваемую "
"цепочку доверенных центров сертификации.\n"
"var client_trusted_cas = load(\"res://my_trusted_cas.crt\")\n"
"var client_tls_options = TLSOptions.client(client_trusted_cas)\n"
"\n"
"# Создаёт конфигурацию сервера TLS.\n"
"var server_certs = load(\"res://my_server_cas.crt\")\n"
"var server_key = load(\"res://my_server_key.key\")\n"
"var server_tls_options = TLSOptions.server(server_key, server_certs)\n"
"[/gdscript]\n"
"[/codeblocks]"

msgid ""
"Creates a TLS client configuration which validates certificates and their "
"common names (fully qualified domain names).\n"
"You can specify a custom [param trusted_chain] of certification authorities "
"(the default CA list will be used if [code]null[/code]), and optionally "
"provide a [param common_name_override] if you expect the certificate to have "
"a common name other than the server FQDN.\n"
"[b]Note:[/b] On the Web platform, TLS verification is always enforced against "
"the CA list of the web browser. This is considered a security feature."
msgstr ""
"Создает конфигурацию клиента TLS, которая проверяет сертификаты и их общие "
"имена (полные доменные имена).\n"
"Вы можете указать пользовательский [param trusted_chain] центров сертификации "
"(список CA по умолчанию будет использоваться, если [code]null[/code]), и "
"дополнительно указать [param common_name_override], если вы ожидаете, что "
"сертификат будет иметь общее имя, отличное от FQDN сервера.\n"
"[b]Примечание:[/b] На веб-платформе проверка TLS всегда принудительно "
"выполняется по списку CA веб-браузера. Это считается функцией безопасности."

msgid ""
"Creates an [b]unsafe[/b] TLS client configuration where certificate "
"validation is optional. You can optionally provide a valid [param "
"trusted_chain], but the common name of the certificates will never be "
"checked. Using this configuration for purposes other than testing [b]is not "
"recommended[/b].\n"
"[b]Note:[/b] On the Web platform, TLS verification is always enforced against "
"the CA list of the web browser. This is considered a security feature."
msgstr ""
"Создает [b]небезопасную[/b] конфигурацию клиента TLS, в которой проверка "
"сертификата необязательна. Вы можете дополнительно указать допустимый [param "
"trusted_chain], но общее имя сертификатов никогда не будет проверяться. "
"Использование этой конфигурации для целей, отличных от тестирования [b]не "
"рекомендуется[/b].\n"
"[b]Примечание:[/b] На веб-платформе проверка TLS всегда принудительно "
"выполняется по списку CA веб-браузера. Это считается функцией безопасности."

msgid ""
"Returns the common name (domain name) override specified when creating with "
"[method TLSOptions.client]."
msgstr ""
"Возвращает переопределение общего имени (доменного имени), указанное при "
"создании с помощью [method TLSOptions.client]."

msgid ""
"Returns the [X509Certificate] specified when creating with [method "
"TLSOptions.server]."
msgstr ""
"Возвращает [X509Certificate], указанный при создании с помощью [method "
"TLSOptions.server]."

msgid ""
"Returns the [CryptoKey] specified when creating with [method "
"TLSOptions.server]."
msgstr ""
"Возвращает [CryptoKey], указанный при создании с помощью [method "
"TLSOptions.server]."

msgid ""
"Returns the CA [X509Certificate] chain specified when creating with [method "
"TLSOptions.client] or [method TLSOptions.client_unsafe]."
msgstr ""
"Возвращает цепочку CA [X509Certificate], указанную при создании с помощью "
"[method TLSOptions.client] или [method TLSOptions.client_unsafe]."

msgid ""
"Returns [code]true[/code] if created with [method TLSOptions.server], "
"[code]false[/code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если создано с помощью [method "
"TLSOptions.server], в противном случае [code]false[/code]."

msgid ""
"Returns [code]true[/code] if created with [method TLSOptions.client_unsafe], "
"[code]false[/code] otherwise."
msgstr ""
"Возвращает [code]true[/code], если создано с помощью [method "
"TLSOptions.client_unsafe], в противном случае [code]false[/code]."

msgid ""
"Creates a TLS server configuration using the provided [param key] and [param "
"certificate].\n"
"[b]Note:[/b] The [param certificate] should include the full certificate "
"chain up to the signing CA (certificates file can be concatenated using a "
"general purpose text editor)."
msgstr ""
"Создает конфигурацию сервера TLS с использованием предоставленных [param key] "
"и [param certificate].\n"
"[b]Примечание:[/b] [param certificate] должен включать полную цепочку "
"сертификатов вплоть до подписывающего CA (файл сертификатов можно объединить "
"с помощью текстового редактора общего назначения)."

msgid "Class representing a torus [PrimitiveMesh]."
msgstr "Класс, представляющий тор [PrimitiveMesh]."

msgid "Button for touch screen devices for gameplay use."
msgstr "Кнопка для игрового процесса на устройствах с сенсорным экраном."

msgid ""
"TouchScreenButton allows you to create on-screen buttons for touch devices. "
"It's intended for gameplay use, such as a unit you have to touch to move. "
"Unlike [Button], TouchScreenButton supports multitouch out of the box. "
"Several TouchScreenButtons can be pressed at the same time with touch input.\n"
"This node inherits from [Node2D]. Unlike with [Control] nodes, you cannot set "
"anchors on it. If you want to create menus or user interfaces, you may want "
"to use [Button] nodes instead. To make button nodes react to touch events, "
"you can enable [member ProjectSettings.input_devices/pointing/"
"emulate_mouse_from_touch] in the Project Settings.\n"
"You can configure TouchScreenButton to be visible only on touch devices, "
"helping you develop your game both for desktop and mobile devices."
msgstr ""
"TouchScreenButton позволяет создавать экранные кнопки для сенсорных "
"устройств. Он предназначен для использования в игровом процессе, например, в "
"качестве юнита, которого нужно коснуться для перемещения. В отличие от "
"[Button], TouchScreenButton поддерживает мультитач из коробки. Несколько "
"TouchScreenButton можно нажимать одновременно с помощью сенсорного ввода.\n"
"Этот узел наследуется от [Node2D]. В отличие от узлов [Control], вы не можете "
"устанавливать на нем якоря. Если вы хотите создать меню или пользовательские "
"интерфейсы, вы можете вместо этого использовать узлы [Button]. Чтобы узлы "
"кнопок реагировали на события касания, вы можете включить [member "
"ProjectSettings.input_devices/pointing/emulate_mouse_from_touch] в настройках "
"проекта.\n"
"Вы можете настроить TouchScreenButton так, чтобы он был виден только на "
"сенсорных устройствах, что поможет вам разрабатывать игру как для настольных "
"компьютеров, так и для мобильных устройств."

msgid "Returns [code]true[/code] if this button is currently pressed."
msgstr "Возвращает [code]true[/code], если эта кнопка в данный момент нажата."

msgid "The button's action. Actions can be handled with [InputEventAction]."
msgstr ""
"Действие кнопки. Действия могут быть обработаны с помощью [InputEventAction]."

msgid "The button's bitmask."
msgstr "Битмаска кнопки."

msgid ""
"If [code]true[/code], the [signal pressed] and [signal released] signals are "
"emitted whenever a pressed finger goes in and out of the button, even if the "
"pressure started outside the active area of the button.\n"
"[b]Note:[/b] This is a \"pass-by\" (not \"bypass\") press mode."
msgstr ""
"Если [code]true[/code], сигналы [signal press] и [signal release] издаются "
"всякий раз, когда нажатый палец входит и выходит из кнопки, даже если нажатие "
"началось за пределами активной области кнопки.\n"
"[b]Примечание:[/b] Это режим нажатия «pass-by» (не «bypass»)."

msgid "The button's shape."
msgstr "Форма кнопки."

msgid ""
"If [code]true[/code], the button's shape is centered in the provided texture. "
"If no texture is used, this property has no effect."
msgstr ""
"Если [code]true[/code], форма кнопки центрируется в предоставленной текстуре. "
"Если текстура не используется, это свойство не имеет никакого эффекта."

msgid "If [code]true[/code], the button's shape is visible in the editor."
msgstr "Если [code]true[/code], форма кнопки будет видна в редакторе."

msgid "The button's texture for the normal state."
msgstr "Текстура кнопки для обычного состояния."

msgid "The button's texture for the pressed state."
msgstr "Текстура кнопки в нажатом состоянии."

msgid "The button's visibility mode."
msgstr "Режим видимости кнопки."

msgid "Emitted when the button is pressed (down)."
msgstr "Издается при нажатии кнопки (вниз)."

msgid "Emitted when the button is released (up)."
msgstr "Издается при отпускании кнопки (вверх)."

msgid "Always visible."
msgstr "Всегда видно."

msgid "Visible on touch screens only."
msgstr "Видно только на сенсорных экранах."

msgid "A 2×3 matrix representing a 2D transformation."
msgstr "Матрица 2×3, представляющая двумерное преобразование."

msgid ""
"The [Transform2D] built-in [Variant] type is a 2×3 [url=https://"
"en.wikipedia.org/wiki/Matrix_(mathematics)]matrix[/url] representing a "
"transformation in 2D space. It contains three [Vector2] values: [member x], "
"[member y], and [member origin]. Together, they can represent translation, "
"rotation, scale, and skew.\n"
"The [member x] and [member y] axes form a 2×2 matrix, known as the "
"transform's [b]basis[/b]. The length of each axis ([method Vector2.length]) "
"influences the transform's scale, while the direction of all axes influence "
"the rotation. Usually, both axes are perpendicular to one another. However, "
"when you rotate one axis individually, the transform becomes skewed. Applying "
"a skewed transform to a 2D sprite will make the sprite appear distorted.\n"
"For a general introduction, see the [url=$DOCS_URL/tutorials/math/"
"matrices_and_transforms.html]Matrices and transforms[/url] tutorial.\n"
"[b]Note:[/b] Unlike [Transform3D], there is no 2D equivalent to the [Basis] "
"type. All mentions of \"basis\" refer to the [member x] and [member y] "
"components of [Transform2D]."
msgstr ""
"Встроенный тип [Variant] [Transform2D] — это матрица [url=https://"
"en.wikipedia.org/wiki/Matrix_(mathematics)]2×3[/url], представляющая "
"преобразование в двумерном пространстве. Она содержит три значения [Vector2]: "
"[member x], [member y] и [member origin]. Вместе они могут представлять "
"перемещение, вращение, масштаб и наклон.\n"
"Оси [member x] и [member y] образуют матрицу 2×2, известную как [b]базис[/b] "
"преобразования. Длина каждой оси ([method Vector2.length]) влияет на масштаб "
"преобразования, а направление всех осей влияет на вращение. Обычно обе оси "
"перпендикулярны друг другу. Однако при повороте одной оси по отдельности "
"преобразование становится перекошенным. Применение перекошенного "
"преобразования к двумерному спрайту приведет к искажению спрайта.\n"
"Для общего введения см. [url=$DOCS_URL/tutorials/math/"
"matrices_and_transforms.html]Матрицы и преобразования[/url] учебник.\n"
"[b]Примечание:[/b] В отличие от [Transform3D], нет 2D-эквивалента типу "
"[Basis]. Все упоминания «basis» относятся к компонентам [member x] и [member "
"y] [Transform2D]."

msgid ""
"Constructs a [Transform2D] identical to [constant IDENTITY].\n"
"[b]Note:[/b] In C#, this constructs a [Transform2D] with all of its "
"components set to [constant Vector2.ZERO]."
msgstr ""
"Создает [Transform2D], идентичный [constant IDENTITY].\n"
"[b]Примечание:[/b] В C# это создает [Transform2D], все компоненты которого "
"установлены в [constant Vector2.ZERO]."

msgid "Constructs a [Transform2D] as a copy of the given [Transform2D]."
msgstr "Создает [Transform2D] как копию заданного [Transform2D]."

msgid "Constructs a [Transform2D] from a given angle (in radians) and position."
msgstr "Создает [Transform2D] по заданному углу (в радианах) и положению."

msgid ""
"Constructs a [Transform2D] from a given angle (in radians), scale, skew (in "
"radians), and position."
msgstr ""
"Создает [Transform2D] по заданному углу (в радианах), масштабу, наклону (в "
"радианах) и положению."

msgid ""
"Constructs a [Transform2D] from 3 [Vector2] values representing [member x], "
"[member y], and the [member origin] (the three matrix columns)."
msgstr ""
"Создает [Transform2D] из 3 значений [Vector2], представляющих [member x], "
"[member y] и [member origin] (три столбца матрицы)."

msgid ""
"Returns the inverted version of this transform. Unlike [method inverse], this "
"method works with almost any basis, including non-uniform ones, but is "
"slower.\n"
"[b]Note:[/b] For this method to return correctly, the transform's basis needs "
"to have a determinant that is not exactly [code]0.0[/code] (see [method "
"determinant])."
msgstr ""
"Возвращает инвертированную версию этого преобразования. В отличие от [method "
"inverse], этот метод работает практически с любым базисом, включая "
"неравномерные, но медленнее.\n"
"[b]Примечание:[/b] Чтобы этот метод возвращал правильно, базис преобразования "
"должен иметь определитель, который не равен в точности [code]0.0[/code] (см. "
"[method determinant])."

msgid ""
"Returns a copy of the [param v] vector, transformed (multiplied) by the "
"transform basis's matrix. Unlike the multiplication operator ([code]*[/"
"code]), this method ignores the [member origin]."
msgstr ""
"Возвращает копию вектора [param v], преобразованного (умноженного) на матрицу "
"базиса преобразования. В отличие от оператора умножения ([code]*[/code]), "
"этот метод игнорирует [member origin]."

msgid ""
"Returns a copy of the [param v] vector, transformed (multiplied) by the "
"inverse transform basis's matrix (see [method inverse]). This method ignores "
"the [member origin].\n"
"[b]Note:[/b] This method assumes that this transform's basis is "
"[i]orthonormal[/i] (see [method orthonormalized]). If the basis is not "
"orthonormal, [code]transform.affine_inverse().basis_xform(vector)[/code] "
"should be used instead (see [method affine_inverse])."
msgstr ""
"Возвращает копию вектора [param v], преобразованного (умноженного) на матрицу "
"базиса обратного преобразования (см. [method inverse]). Этот метод игнорирует "
"[member origin].\n"
"[b]Примечание:[/b] Этот метод предполагает, что базис этого преобразования "
"является [i]ортонормальным[/i] (см. [method orthonormalized]). Если базис не "
"является ортонормальным, вместо него следует использовать "
"[code]transform.affine_inverse().basis_xform(vector)[/code] (см. [method "
"affine_inverse])."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Determinant]determinant[/url] "
"of this transform basis's matrix. For advanced math, this number can be used "
"to determine a few attributes:\n"
"- If the determinant is exactly [code]0.0[/code], the basis is not invertible "
"(see [method inverse]).\n"
"- If the determinant is a negative number, the basis represents a negative "
"scale.\n"
"[b]Note:[/b] If the basis's scale is the same for every axis, its determinant "
"is always that scale by the power of 2."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/Determinant]определитель[/url] "
"матрицы этого базиса преобразования. Для продвинутой математики это число "
"может использоваться для определения нескольких атрибутов:\n"
"- Если определитель равен точно [code]0.0[/code], базис необратим (см. "
"[method inverse]).\n"
"- Если определитель — отрицательное число, базис представляет собой "
"отрицательный масштаб.\n"
"[b]Примечание:[/b] Если масштаб базиса одинаков для каждой оси, его "
"определитель всегда равен этому масштабу в степени 2."

msgid "Returns this transform's translation. Equivalent to [member origin]."
msgstr "Возвращает перевод этого преобразования. Эквивалентно [member origin]."

msgid ""
"Returns this transform's rotation (in radians). This is equivalent to [member "
"x]'s angle (see [method Vector2.angle])."
msgstr ""
"Возвращает поворот этого преобразования (в радианах). Это эквивалентно углу "
"[member x] (см. [method Vector2.angle])."

msgid ""
"Returns the length of both [member x] and [member y], as a [Vector2]. If this "
"transform's basis is not skewed, this value is the scaling factor. It is not "
"affected by rotation.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_transform = Transform2D(\n"
"\tVector2(2, 0),\n"
"\tVector2(0, 4),\n"
"\tVector2(0, 0)\n"
")\n"
"# Rotating the Transform2D in any way preserves its scale.\n"
"my_transform = my_transform.rotated(TAU / 2)\n"
"\n"
"print(my_transform.get_scale()) # Prints (2.0, 4.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myTransform = new Transform2D(\n"
"\tVector3(2.0f, 0.0f),\n"
"\tVector3(0.0f, 4.0f),\n"
"\tVector3(0.0f, 0.0f)\n"
");\n"
"// Rotating the Transform2D in any way preserves its scale.\n"
"myTransform = myTransform.Rotated(Mathf.Tau / 2.0f);\n"
"\n"
"GD.Print(myTransform.GetScale()); // Prints (2, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] If the value returned by [method determinant] is negative, the "
"scale is also negative."
msgstr ""
"Возвращает длину [member x] и [member y] как [Vector2]. Если основа этого "
"преобразования не перекошена, это значение является коэффициентом "
"масштабирования. Оно не зависит от вращения.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var my_transform = Transform2D(\n"
"\tVector2(2, 0),\n"
"\tVector2(0, 4),\n"
"\tVector2(0, 0)\n"
")\n"
"# Поворот Transform2D любым способом сохраняет его масштаб.\n"
"my_transform = my_transform.rotated(TAU / 2)\n"
"\n"
"print(my_transform.get_scale()) # Prints (2.0, 4.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"var myTransform = new Transform2D(\n"
"\tVector3(2.0f, 0.0f),\n"
"\tVector3(0.0f, 4.0f),\n"
"\tVector3(0.0f, 0.0f)\n"
");\n"
"// Поворот Transform2D любым способом сохраняет его масштаб.\n"
"myTransform = myTransform.Rotated(Mathf.Tau / 2.0f);\n"
"\n"
"GD.Print(myTransform.GetScale()); // Prints (2, 4)\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Если значение, возвращаемое [method determinant], "
"отрицательное, масштаб также будет отрицательным."

msgid "Returns this transform's skew (in radians)."
msgstr "Возвращает наклон данного преобразования (в радианах)."

msgid ""
"Returns the result of the linear interpolation between this transform and "
"[param xform] by the given [param weight].\n"
"The [param weight] should be between [code]0.0[/code] and [code]1.0[/code] "
"(inclusive). Values outside this range are allowed and can be used to perform "
"[i]extrapolation[/i] instead."
msgstr ""
"Возвращает результат линейной интерполяции между этим преобразованием и "
"[param xform] по заданному [param weight]. \n"
"[param weight] должен быть между [code]0.0[/code] и [code]1.0[/code] "
"(включительно). Значения вне этого диапазона разрешены и могут использоваться "
"для выполнения [i]экстраполяции[/i]."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Invertible_matrix]inverted "
"version of this transform[/url].\n"
"[b]Note:[/b] For this method to return correctly, the transform's basis needs "
"to be [i]orthonormal[/i] (see [method orthonormalized]). That means the basis "
"should only represent a rotation. If it does not, use [method affine_inverse] "
"instead."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/"
"Invertible_matrix]инвертированную версию этого преобразования[/url].\n"
"[b]Примечание:[/b] Чтобы этот метод возвращал правильно, базис преобразования "
"должен быть [i]ортонормальным[/i] (см. [method orthonormalized]). Это "
"означает, что базис должен представлять только поворот. Если это не так, "
"используйте вместо этого [method affine_inverse]."

msgid ""
"Returns [code]true[/code] if this transform's basis is conformal. A conformal "
"basis is both [i]orthogonal[/i] (the axes are perpendicular to each other) "
"and [i]uniform[/i] (the axes share the same length). This method can be "
"especially useful during physics calculations."
msgstr ""
"Возвращает [code]true[/code], если базис этого преобразования конформный. "
"Конформный базис является как [i]ортогональным[/i] (оси перпендикулярны друг "
"другу), так и [i]равномерным[/i] (оси имеют одинаковую длину). Этот метод "
"может быть особенно полезен при физических расчетах."

msgid ""
"Returns [code]true[/code] if this transform and [param xform] are "
"approximately equal, by running [method @GlobalScope.is_equal_approx] on each "
"component."
msgstr ""
"Возвращает [code]true[/code], если это преобразование и [param xform] "
"приблизительно равны, путем запуска [method @GlobalScope.is_equal_approx] для "
"каждого компонента."

msgid ""
"Returns [code]true[/code] if this transform is finite, by calling [method "
"@GlobalScope.is_finite] on each component."
msgstr ""
"Возвращает [code]true[/code], если это преобразование конечно, вызывая "
"[method @GlobalScope.is_finite] для каждого компонента."

msgid ""
"Returns a copy of the transform rotated such that the rotated X-axis points "
"towards the [param target] position, in global space."
msgstr ""
"Возвращает копию преобразования, повернутую таким образом, что повернутая ось "
"X указывает на позицию [param target] в глобальном пространстве."

msgid ""
"Returns a copy of this transform with its basis orthonormalized. An "
"orthonormal basis is both [i]orthogonal[/i] (the axes are perpendicular to "
"each other) and [i]normalized[/i] (the axes have a length of [code]1.0[/"
"code]), which also means it can only represent a rotation."
msgstr ""
"Возвращает копию этого преобразования с ортонормированным базисом. "
"Ортонормированный базис является как [i]ортогональным[/i] (оси "
"перпендикулярны друг другу), так и [i]нормализованным[/i] (оси имеют длину "
"[code]1.0[/code]), что также означает, что он может представлять только "
"поворот."

msgid ""
"Returns a copy of this transform rotated by the given [param angle] (in "
"radians).\n"
"If [param angle] is positive, the transform is rotated clockwise.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding rotation transform [code]R[/code] from "
"the left, i.e., [code]R * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Возвращает копию этого преобразования, повернутую на заданный [param angle] "
"(в радианах).\n"
"Если [param angle] положительно, преобразование поворачивается по часовой "
"стрелке.\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее преобразование поворота "
"[code]R[/code] слева, т. е. [code]R * X[/code].\n"
"Это можно рассматривать как преобразование относительно глобального/"
"родительского кадра."

msgid ""
"Returns a copy of the transform rotated by the given [param angle] (in "
"radians).\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding rotation transform [code]R[/code] from "
"the right, i.e., [code]X * R[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Возвращает копию преобразования, повернутую на заданный [param angle] (в "
"радианах).\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее преобразование поворота "
"[code]R[/code] справа, т. е. [code]X * R[/code].\n"
"Это можно рассматривать как преобразование относительно локального кадра."

msgid ""
"Returns a copy of the transform scaled by the given [param scale] factor.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding scaling transform [code]S[/code] from the "
"left, i.e., [code]S * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Возвращает копию преобразования, масштабированную заданным коэффициентом "
"[param scale].\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее масштабирующее "
"преобразование [code]S[/code] слева, т. е. [code]S * X[/code].\n"
"Это можно рассматривать как преобразование относительно глобального/"
"родительского кадра."

msgid ""
"Returns a copy of the transform scaled by the given [param scale] factor.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding scaling transform [code]S[/code] from the "
"right, i.e., [code]X * S[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Возвращает копию преобразования, масштабированную заданным коэффициентом "
"[param scale].\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее масштабирующее "
"преобразование [code]S[/code] справа, т. е. [code]X * S[/code].\n"
"Это можно рассматривать как преобразование относительно локального кадра."

msgid ""
"Returns a copy of the transform translated by the given [param offset].\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding translation transform [code]T[/code] from "
"the left, i.e., [code]T * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Возвращает копию преобразования, переведенную на заданное [param offset].\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее преобразование перевода "
"[code]T[/code] слева, т. е. [code]T * X[/code].\n"
"Это можно рассматривать как преобразование относительно глобального/"
"родительского фрейма."

msgid ""
"Returns a copy of the transform translated by the given [param offset].\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding translation transform [code]T[/code] from "
"the right, i.e., [code]X * T[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Возвращает копию преобразования, переведенную на заданное [param offset].\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее преобразование перевода "
"[code]T[/code] справа, т. е. [code]X * T[/code].\n"
"Это можно рассматривать как преобразование относительно локального фрейма."

msgid ""
"The translation offset of this transform, and the column [code]2[/code] of "
"the matrix. In 2D space, this can be seen as the position."
msgstr ""
"Смещение перевода этого преобразования и столбец [code]2[/code] матрицы. В "
"двумерном пространстве это можно рассматривать как позицию."

msgid ""
"The transform basis's X axis, and the column [code]0[/code] of the matrix. "
"Combined with [member y], this represents the transform's rotation, scale, "
"and skew.\n"
"On the identity transform, this vector points right ([constant "
"Vector2.RIGHT])."
msgstr ""
"Ось X базиса преобразования и столбец [code]0[/code] матрицы. В сочетании с "
"[member y] это представляет поворот, масштаб и наклон преобразования.\n"
"В тождественном преобразовании этот вектор указывает вправо ([constant "
"Vector2.RIGHT])."

msgid ""
"The transform basis's Y axis, and the column [code]1[/code] of the matrix. "
"Combined with [member x], this represents the transform's rotation, scale, "
"and skew.\n"
"On the identity transform, this vector points down ([constant Vector2.DOWN])."
msgstr ""
"Ось Y базиса преобразования и столбец [code]1[/code] матрицы. В сочетании с "
"[member x] это представляет поворот, масштаб и наклон преобразования.\n"
"В тождественном преобразовании этот вектор указывает вниз ([constant "
"Vector2.DOWN])."

msgid ""
"The identity [Transform2D]. This is a transform with no translation, no "
"rotation, and a scale of [constant Vector2.ONE]. This also means that:\n"
"- The [member x] points right ([constant Vector2.RIGHT]);\n"
"- The [member y] points down ([constant Vector2.DOWN]).\n"
"[codeblock]\n"
"var transform = Transform2D.IDENTITY\n"
"print(\"| X | Y | Origin\")\n"
"print(\"| %.f | %.f | %.f\" % [transform.x.x, transform.y.x, "
"transform.origin.x])\n"
"print(\"| %.f | %.f | %.f\" % [transform.x.y, transform.y.y, "
"transform.origin.y])\n"
"# Prints:\n"
"# | X | Y | Origin\n"
"# | 1 | 0 | 0\n"
"# | 0 | 1 | 0\n"
"[/codeblock]\n"
"If a [Vector2], a [Rect2], a [PackedVector2Array], or another [Transform2D] "
"is transformed (multiplied) by this constant, no transformation occurs.\n"
"[b]Note:[/b] In GDScript, this constant is equivalent to creating a "
"[constructor Transform2D] without any arguments. It can be used to make your "
"code clearer, and for consistency with C#."
msgstr ""
"Тождество [Transform2D]. Это преобразование без перемещения, без вращения и "
"масштабом [constant Vector2.ONE]. Это также означает, что:\n"
"- [member x] указывает вправо ([constant Vector2.RIGHT]);\n"
"- [member y] указывает вниз ([constant Vector2.DOWN]).\n"
"[codeblock]\n"
"var transform = Transform2D.IDENTITY\n"
"print(\"| X | Y | Origin\")\n"
"print(\"| %.f | %.f | %.f\" % [transform.x.x, transform.y.x, "
"transform.origin.x])\n"
"print(\"| %.f | %.f | %.f\" % [transform.x.y, transform.y.y, "
"transform.origin.y])\n"
"# Prints:\n"
"# | X | Y | Origin\n"
"# | 1 | 0 | 0\n"
"# | 0 | 1 | 0\n"
"[/codeblock]\n"
"Если [Vector2], [Rect2], [PackedVector2Array] или другой [Transform2D] "
"преобразуется (умножается) этой константой, то преобразование не происходит.\n"
"[b]Примечание:[/b] В GDScript эта константа эквивалентна созданию [constant "
"Transform2D] без каких-либо аргументов. Ее можно использовать для того, чтобы "
"сделать ваш код более понятным и для согласованности с C#."

msgid ""
"When any transform is multiplied by [constant FLIP_X], it negates all "
"components of the [member x] axis (the X column).\n"
"When [constant FLIP_X] is multiplied by any transform, it negates the [member "
"Vector2.x] component of all axes (the X row)."
msgstr ""
"Когда любое преобразование умножается на [constant FLIP_X], оно инвертирует "
"все компоненты оси [member x] (столбец X).\n"
"Когда [constant FLIP_X] умножается на любое преобразование, оно инвертирует "
"компонент [member Vector2.x] всех осей (строка X)."

msgid ""
"When any transform is multiplied by [constant FLIP_Y], it negates all "
"components of the [member y] axis (the Y column).\n"
"When [constant FLIP_Y] is multiplied by any transform, it negates the [member "
"Vector2.y] component of all axes (the Y row)."
msgstr ""
"Когда любое преобразование умножается на [constant FLIP_Y], оно инвертирует "
"все компоненты оси [member y] (столбец Y).\n"
"Когда [constant FLIP_Y] умножается на любое преобразование, оно инвертирует "
"компонент [member Vector2.y] всех осей (строка Y)."

msgid ""
"Returns [code]true[/code] if the components of both transforms are not "
"equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если компоненты обоих преобразований не равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx] вместо этого, что более "
"надежно."

msgid ""
"Transforms (multiplies) every [Vector2] element of the given "
"[PackedVector2Array] by this transformation matrix.\n"
"On larger arrays, this operation is much faster than transforming each "
"[Vector2] individually."
msgstr ""
"Преобразует (умножает) каждый элемент [Vector2] заданного "
"[PackedVector2Array] на эту матрицу преобразования.\n"
"На больших массивах эта операция выполняется намного быстрее, чем "
"преобразование каждого [Vector2] по отдельности."

msgid "Transforms (multiplies) the [Rect2] by this transformation matrix."
msgstr "Преобразует (умножает) [Rect2] на эту матрицу преобразования."

msgid ""
"Transforms (multiplies) this transform by the [param right] transform.\n"
"This is the operation performed between parent and child [CanvasItem] nodes.\n"
"[b]Note:[/b] If you need to only modify one attribute of this transform, "
"consider using one of the following methods, instead:\n"
"- For translation, see [method translated] or [method translated_local].\n"
"- For rotation, see [method rotated] or [method rotated_local].\n"
"- For scale, see [method scaled] or [method scaled_local]."
msgstr ""
"Преобразует (умножает) это преобразование на преобразование [param right].\n"
"Это операция, выполняемая между родительским и дочерним узлами [CanvasItem].\n"
"[b]Примечание:[/b] Если вам нужно изменить только один атрибут этого "
"преобразования, рассмотрите возможность использования одного из следующих "
"методов:\n"
"- Для перевода см. [method translate] или [method translate_local].\n"
"- Для поворота см. [method rotated] или [method rotated_local].\n"
"- Для масштабирования см. [method scaled] или [method scaled_local]."

msgid "Transforms (multiplies) the [Vector2] by this transformation matrix."
msgstr "Преобразует (умножает) [Vector2] на эту матрицу преобразования."

msgid ""
"Multiplies all components of the [Transform2D] by the given [float], "
"including the [member origin]. This affects the transform's scale uniformly."
msgstr ""
"Умножает все компоненты [Transform2D] на заданный [float], включая [member "
"origin]. Это равномерно влияет на масштаб преобразования."

msgid ""
"Multiplies all components of the [Transform2D] by the given [int], including "
"the [member origin]. This affects the transform's scale uniformly."
msgstr ""
"Умножает все компоненты [Transform2D] на заданное [int], включая [member "
"origin]. Это равномерно влияет на масштаб преобразования."

msgid ""
"Divides all components of the [Transform2D] by the given [float], including "
"the [member origin]. This affects the transform's scale uniformly."
msgstr ""
"Делит все компоненты [Transform2D] на заданный [float], включая [member "
"origin]. Это равномерно влияет на масштаб преобразования."

msgid ""
"Divides all components of the [Transform2D] by the given [int], including the "
"[member origin]. This affects the transform's scale uniformly."
msgstr ""
"Делит все компоненты [Transform2D] на заданное [int], включая [member "
"origin]. Это равномерно влияет на масштаб преобразования."

msgid ""
"Returns [code]true[/code] if the components of both transforms are exactly "
"equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable."
msgstr ""
"Возвращает [code]true[/code], если компоненты обоих преобразований в точности "
"равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx] вместо этого, что более "
"надежно."

msgid ""
"Accesses each axis (column) of this transform by their index. Index [code]0[/"
"code] is the same as [member x], index [code]1[/code] is the same as [member "
"y], and index [code]2[/code] is the same as [member origin]."
msgstr ""
"Доступ к каждой оси (столбцу) этого преобразования по их индексу. Индекс "
"[code]0[/code] совпадает с [member x], индекс [code]1[/code] совпадает с "
"[member y], а индекс [code]2[/code] совпадает с [member origin]."

msgid "A 3×4 matrix representing a 3D transformation."
msgstr "Матрица 3×4, представляющая трехмерное преобразование."

msgid ""
"The [Transform3D] built-in [Variant] type is a 3×4 matrix representing a "
"transformation in 3D space. It contains a [Basis], which on its own can "
"represent rotation, scale, and shear. Additionally, combined with its own "
"[member origin], the transform can also represent a translation.\n"
"For a general introduction, see the [url=$DOCS_URL/tutorials/math/"
"matrices_and_transforms.html]Matrices and transforms[/url] tutorial.\n"
"[b]Note:[/b] Godot uses a [url=https://en.wikipedia.org/wiki/Right-"
"hand_rule]right-handed coordinate system[/url], which is a common standard. "
"For directions, the convention for built-in types like [Camera3D] is for -Z "
"to point forward (+X is right, +Y is up, and +Z is back). Other objects may "
"use different direction conventions. For more information, see the "
"[url=$DOCS_URL/tutorials/assets_pipeline/importing_3d_scenes/"
"model_export_considerations.html#d-asset-direction-conventions]3D asset "
"direction conventions[/url] tutorial."
msgstr ""
"Встроенный тип [Variant] [Transform3D] — это матрица 3×4, представляющая "
"преобразование в трехмерном пространстве. Он содержит [Basis], который сам по "
"себе может представлять вращение, масштаб и сдвиг. Кроме того, в сочетании с "
"собственным [member origin] преобразование также может представлять "
"перемещение.\n"
"Для общего введения см. [url=$DOCS_URL/tutorials/math/"
"matrices_and_transforms.html]Матрицы и преобразования[/url].\n"
"[b]Примечание:[/b] Godot использует [url=https://en.wikipedia.org/wiki/Right-"
"hand_rule]правую систему координат[/url], что является общепринятым "
"стандартом. Для направлений соглашение для встроенных типов, таких как "
"[Camera3D], заключается в том, что -Z указывает вперед (+X — вправо, +Y — "
"вверх, а +Z — назад). Другие объекты могут использовать другие соглашения о "
"направлениях. Для получения дополнительной информации см. руководство "
"[url=$DOCS_URL/tutorials/assets_pipeline/importing_3d_scenes/"
"model_export_considerations.html#d-asset-direction-conventions]Условия "
"направления 3D-активов[/url]."

msgid ""
"Constructs a [Transform3D] identical to [constant IDENTITY].\n"
"[b]Note:[/b] In C#, this constructs a [Transform3D] with its [member origin] "
"and the components of its [member basis] set to [constant Vector3.ZERO]."
msgstr ""
"Создает [Transform3D], идентичный [constant IDENTITY].\n"
"[b]Примечание:[/b] В C# это создает [Transform3D] с его [member origin] и "
"компонентами его [member basic], установленными на [constant Vector3.ZERO]."

msgid "Constructs a [Transform3D] as a copy of the given [Transform3D]."
msgstr "Создает [Transform3D] как копию заданного [Transform3D]."

msgid "Constructs a [Transform3D] from a [Basis] and [Vector3]."
msgstr "Создает [Transform3D] из [Basis] и [Vector3]."

msgid ""
"Constructs a [Transform3D] from a [Projection]. Because [Transform3D] is a "
"3×4 matrix and [Projection] is a 4×4 matrix, this operation trims the last "
"row of the projection matrix ([code]from.x.w[/code], [code]from.y.w[/code], "
"[code]from.z.w[/code], and [code]from.w.w[/code] are not included in the new "
"transform)."
msgstr ""
"Создает [Transform3D] из [Projection]. Поскольку [Transform3D] — это матрица "
"3×4, а [Projection] — это матрица 4×4, эта операция обрезает последнюю строку "
"матрицы проекции ([code]from.x.w[/code], [code]from.y.w[/code], "
"[code]from.z.w[/code] и [code]from.w.w[/code] не включены в новое "
"преобразование)."

msgid ""
"Constructs a [Transform3D] from four [Vector3] values (also called matrix "
"columns).\n"
"The first three arguments are the [member basis]'s axes ([member Basis.x], "
"[member Basis.y], and [member Basis.z])."
msgstr ""
"Создает [Transform3D] из четырех значений [Vector3] (также называемых "
"столбцами матрицы).\n"
"Первые три аргумента — это оси [member basic] ([member Basis.x], [member "
"Basis.y] и [member Basis.z])."

msgid ""
"Returns the inverted version of this transform. Unlike [method inverse], this "
"method works with almost any [member basis], including non-uniform ones, but "
"is slower. See also [method Basis.inverse].\n"
"[b]Note:[/b] For this method to return correctly, the transform's [member "
"basis] needs to have a determinant that is not exactly [code]0.0[/code] (see "
"[method Basis.determinant])."
msgstr ""
"Возвращает инвертированную версию этого преобразования. В отличие от [method "
"inverse], этот метод работает практически с любым [member basis], включая "
"неравномерные, но медленнее. См. также [method Basis.inverse].\n"
"[b]Примечание:[/b] Чтобы этот метод возвращал правильно, [member basis] "
"преобразования должен иметь определитель, который не равен точно [code]0.0[/"
"code] (см. [method Basis.determinant])."

msgid ""
"Returns the [url=https://en.wikipedia.org/wiki/Invertible_matrix]inverted "
"version of this transform[/url]. See also [method Basis.inverse].\n"
"[b]Note:[/b] For this method to return correctly, the transform's [member "
"basis] needs to be [i]orthonormal[/i] (see [method orthonormalized]). That "
"means the basis should only represent a rotation. If it does not, use [method "
"affine_inverse] instead."
msgstr ""
"Возвращает [url=https://en.wikipedia.org/wiki/"
"Invertible_matrix]инвертированную версию этого преобразования[/url]. См. "
"также [method Basis.inverse].\n"
"[b]Примечание:[/b] Чтобы этот метод возвращал правильно, [member basis] "
"преобразования должен быть [i]ортонормальным[/i] (см. [method "
"orthonormalized]). Это означает, что базис должен представлять только "
"поворот. Если это не так, используйте вместо этого [method affine_inverse]."

msgid ""
"Returns a copy of this transform rotated so that the forward axis (-Z) points "
"towards the [param target] position.\n"
"The up axis (+Y) points as close to the [param up] vector as possible while "
"staying perpendicular to the forward axis. The resulting transform is "
"orthonormalized. The existing rotation, scale, and skew information from the "
"original transform is discarded. The [param target] and [param up] vectors "
"cannot be zero, cannot be parallel to each other, and are defined in global/"
"parent space.\n"
"If [param use_model_front] is [code]true[/code], the +Z axis (asset front) is "
"treated as forward (implies +X is left) and points toward the [param target] "
"position. By default, the -Z axis (camera forward) is treated as forward "
"(implies +X is right)."
msgstr ""
"Возвращает копию этого преобразования, повернутую так, чтобы прямая ось (-Z) "
"указывала на позицию [param target].\n"
"Верхняя ось (+Y) указывает как можно ближе к вектору [param up], оставаясь "
"перпендикулярной прямой оси. Результирующее преобразование ортонормализовано. "
"Существующая информация о вращении, масштабе и наклоне из исходного "
"преобразования отбрасывается. Векторы [param target] и [param up] не могут "
"быть нулевыми, не могут быть параллельны друг другу и определены в глобальном/"
"родительском пространстве.\n"
"Если [param use_model_front] равно [code]true[/code], ось +Z (фронт актива) "
"рассматривается как прямая (подразумевается, что +X слева) и указывает на "
"позицию [param target]. По умолчанию ось -Z (камера впереди) рассматривается "
"как прямая (подразумевается, что +X справа)."

msgid ""
"Returns a copy of this transform with its [member basis] orthonormalized. An "
"orthonormal basis is both [i]orthogonal[/i] (the axes are perpendicular to "
"each other) and [i]normalized[/i] (the axes have a length of [code]1.0[/"
"code]), which also means it can only represent a rotation. See also [method "
"Basis.orthonormalized]."
msgstr ""
"Возвращает копию этого преобразования с его [member basis] ортонормированным. "
"Ортонормированный базис является как [i]перпендикулярный[/i] (оси "
"перпендикулярны друг другу), так и [i]нормализованным[/i] (оси имеют длину "
"[code]1.0[/code]), что также означает, что он может представлять только "
"поворот. См. также [method Basis.orthonormalized]."

msgid ""
"Returns a copy of this transform rotated around the given [param axis] by the "
"given [param angle] (in radians).\n"
"The [param axis] must be a normalized vector (see [method "
"Vector3.normalized]). If [param angle] is positive, the basis is rotated "
"counter-clockwise around the axis.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding rotation transform [code]R[/code] from "
"the left, i.e., [code]R * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Возвращает копию этого преобразования, повернутую вокруг заданной [param "
"axis] на заданный [param angle] (в радианах).\n"
"[param axis] должен быть нормализованным вектором (см. [method "
"Vector3.normalized]). Если [param angle] положительный, базис поворачивается "
"против часовой стрелки вокруг оси.\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее преобразование вращения "
"[code]R[/code] слева, т. е. [code]R * X[/code].\n"
"Это можно рассматривать как преобразование относительно глобального/"
"родительского кадра."

msgid ""
"Returns a copy of this transform rotated around the given [param axis] by the "
"given [param angle] (in radians).\n"
"The [param axis] must be a normalized vector in the transform's local "
"coordinate system. For example, to rotate around the local X-axis, use "
"[constant Vector3.RIGHT].\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding rotation transform [code]R[/code] from "
"the right, i.e., [code]X * R[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Возвращает копию этого преобразования, повернутую вокруг заданной [param "
"axis] на заданный [param angle] (в радианах).\n"
"[param axis] должен быть нормализованным вектором в локальной системе "
"координат преобразования. Например, для поворота вокруг локальной оси X "
"используйте [constant Vector3.RIGHT].\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее преобразование поворота "
"[code]R[/code] справа, т. е. [code]X * R[/code].\n"
"Это можно рассматривать как преобразование относительно локальной системы "
"отсчета."

msgid ""
"Returns a copy of this transform scaled by the given [param scale] factor.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding scaling transform [code]S[/code] from the "
"left, i.e., [code]S * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Возвращает копию этого преобразования, масштабированную заданным "
"коэффициентом [param scale].\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее масштабирующее "
"преобразование [code]S[/code] слева, т. е. [code]S * X[/code].\n"
"Это можно рассматривать как преобразование относительно глобального/"
"родительского кадра."

msgid ""
"Returns a copy of this transform scaled by the given [param scale] factor.\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding scaling transform [code]S[/code] from the "
"right, i.e., [code]X * S[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Возвращает копию этого преобразования, масштабированную заданным "
"коэффициентом [param scale].\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее масштабирующее "
"преобразование [code]S[/code] справа, т. е. [code]X * S[/code].\n"
"Это можно рассматривать как преобразование относительно локального кадра."

msgid ""
"Returns a copy of this transform translated by the given [param offset].\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding translation transform [code]T[/code] from "
"the left, i.e., [code]T * X[/code].\n"
"This can be seen as transforming with respect to the global/parent frame."
msgstr ""
"Возвращает копию этого преобразования, переведенную на заданное [param "
"offset].\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее преобразование перевода "
"[code]T[/code] слева, т. е. [code]T * X[/code].\n"
"Это можно рассматривать как преобразование относительно глобального/"
"родительского фрейма."

msgid ""
"Returns a copy of this transform translated by the given [param offset].\n"
"This method is an optimized version of multiplying the given transform "
"[code]X[/code] with a corresponding translation transform [code]T[/code] from "
"the right, i.e., [code]X * T[/code].\n"
"This can be seen as transforming with respect to the local frame."
msgstr ""
"Возвращает копию этого преобразования, переведенную на заданное [param "
"offset].\n"
"Этот метод является оптимизированной версией умножения заданного "
"преобразования [code]X[/code] на соответствующее преобразование перевода "
"[code]T[/code] справа, т. е. [code]X * T[/code].\n"
"Это можно рассматривать как преобразование относительно локального фрейма."

msgid ""
"The [Basis] of this transform. It is composed by 3 axes ([member Basis.x], "
"[member Basis.y], and [member Basis.z]). Together, these represent the "
"transform's rotation, scale, and shear."
msgstr ""
"[Basis] этого преобразования. Он состоит из 3 осей ([member Basis.x], [member "
"Basis.y] и [member Basis.z]). Вместе они представляют вращение, масштаб и "
"сдвиг преобразования."

msgid ""
"The translation offset of this transform. In 3D space, this can be seen as "
"the position."
msgstr ""
"Смещение трансляции этого преобразования. В трехмерном пространстве это можно "
"рассматривать как позицию."

msgid ""
"The identity [Transform3D]. This is a transform with no translation, no "
"rotation, and a scale of [constant Vector3.ONE]. Its [member basis] is equal "
"to [constant Basis.IDENTITY]. This also means that:\n"
"- Its [member Basis.x] points right ([constant Vector3.RIGHT]);\n"
"- Its [member Basis.y] points up ([constant Vector3.UP]);\n"
"- Its [member Basis.z] points back ([constant Vector3.BACK]).\n"
"[codeblock]\n"
"var transform = Transform3D.IDENTITY\n"
"var basis = transform.basis\n"
"print(\"| X | Y | Z | Origin\")\n"
"print(\"| %.f | %.f | %.f | %.f\" % [basis.x.x, basis.y.x, basis.z.x, "
"transform.origin.x])\n"
"print(\"| %.f | %.f | %.f | %.f\" % [basis.x.y, basis.y.y, basis.z.y, "
"transform.origin.y])\n"
"print(\"| %.f | %.f | %.f | %.f\" % [basis.x.z, basis.y.z, basis.z.z, "
"transform.origin.z])\n"
"# Prints:\n"
"# | X | Y | Z | Origin\n"
"# | 1 | 0 | 0 | 0\n"
"# | 0 | 1 | 0 | 0\n"
"# | 0 | 0 | 1 | 0\n"
"[/codeblock]\n"
"If a [Vector3], an [AABB], a [Plane], a [PackedVector3Array], or another "
"[Transform3D] is transformed (multiplied) by this constant, no transformation "
"occurs.\n"
"[b]Note:[/b] In GDScript, this constant is equivalent to creating a "
"[constructor Transform3D] without any arguments. It can be used to make your "
"code clearer, and for consistency with C#."
msgstr ""
"Тождество [Transform3D]. Это преобразование без перемещения, без вращения и "
"масштабом [constant Vector3.ONE]. Его [member basis] равен [constant "
"Basis.IDENTITY]. Это также означает, что:\n"
"- Его [member Basis.x] указывает вправо ([constant Vector3.RIGHT]);\n"
"- Его [member Basis.y] указывает вверх ([constant Vector3.UP]);\n"
"- Его [member Basis.z] указывает назад ([constant Vector3.BACK]).\n"
"[codeblock]\n"
"var transform = Transform3D.IDENTITY\n"
"var basis = transform.basis\n"
"print(\"| X | Y | Z | Origin\")\n"
"print(\"| %.f | %.f | %.f | %.f\" % [basis.x.x, basis.y.x, basis.z.x, "
"transform.origin.x])\n"
"print(\"| %.f | %.f | %.f | %.f\" % [basis.x.y, basis.y.y, basis.z.y, "
"transform.origin.y])\n"
"print(\"| %.f | %.f | %.f | %.f\" % [basis.x.z, basis.y.z, basis.z.z, "
"transform.origin.z])\n"
"# Prints:\n"
"# | X | Y | Z | Origin\n"
"# | 1 | 0 | 0 | 0\n"
"# | 0 | 1 | 0 | 0\n"
"# | 0 | 0 | 1 | 0\n"
"[/codeblock]\n"
"Если [Vector3], [AABB], [Plane], [PackedVector3Array] или другой "
"[Transform3D] преобразуется (умножается) этой константой, то преобразование "
"не происходит.\n"
"[b]Примечание:[/b] В GDScript эта константа эквивалентна созданию "
"[constructor Transform3D] без каких-либо аргументов. Ее можно использовать "
"для того, чтобы сделать ваш код более понятным и для согласованности с C#."

msgid ""
"[Transform3D] with mirroring applied perpendicular to the YZ plane. Its "
"[member basis] is equal to [constant Basis.FLIP_X]."
msgstr ""
"[Transform3D] с зеркальным отражением, примененным перпендикулярно плоскости "
"YZ. Его [member basis] равен [constant Basis.FLIP_X]."

msgid ""
"[Transform3D] with mirroring applied perpendicular to the XZ plane. Its "
"[member basis] is equal to [constant Basis.FLIP_Y]."
msgstr ""
"[Transform3D] с зеркальным отражением, примененным перпендикулярно плоскости "
"XZ. Его [member basis] равен [constant Basis.FLIP_Y]."

msgid ""
"[Transform3D] with mirroring applied perpendicular to the XY plane. Its "
"[member basis] is equal to [constant Basis.FLIP_Z]."
msgstr ""
"[Transform3D] с зеркальным отражением, примененным перпендикулярно плоскости "
"XY. Его [member basis] равен [constant Basis.FLIP_Z]."

msgid "Transforms (multiplies) the [AABB] by this transformation matrix."
msgstr "Преобразует (умножает) [AABB] на эту матрицу преобразования."

msgid ""
"Transforms (multiplies) every [Vector3] element of the given "
"[PackedVector3Array] by this transformation matrix.\n"
"On larger arrays, this operation is much faster than transforming each "
"[Vector3] individually."
msgstr ""
"Преобразует (умножает) каждый элемент [Vector3] заданного "
"[PackedVector3Array] на эту матрицу преобразования.\n"
"На больших массивах эта операция выполняется намного быстрее, чем "
"преобразование каждого [Vector3] по отдельности."

msgid "Transforms (multiplies) the [Plane] by this transformation matrix."
msgstr "Преобразует (умножает) [Plane] на эту матрицу преобразования."

msgid ""
"Transforms (multiplies) this transform by the [param right] transform.\n"
"This is the operation performed between parent and child [Node3D]s.\n"
"[b]Note:[/b] If you need to only modify one attribute of this transform, "
"consider using one of the following methods, instead:\n"
"- For translation, see [method translated] or [method translated_local].\n"
"- For rotation, see [method rotated] or [method rotated_local].\n"
"- For scale, see [method scaled] or [method scaled_local]."
msgstr ""
"Преобразует (умножает) это преобразование на преобразование [param right].\n"
"Это операция, выполняемая между родительским и дочерним [Node3D]-ми.\n"
"[b]Примечание:[/b] Если вам нужно изменить только один атрибут этого "
"преобразования, рассмотрите возможность использования одного из следующих "
"методов:\n"
"- Для перевода см. [method moved] или [method moved_local].\n"
"- Для поворота см. [method rotated] или [method rotated_local].\n"
"- Для масштабирования см. [method scaled] или [method scaled_local]."

msgid "Transforms (multiplies) the [Vector3] by this transformation matrix."
msgstr "Преобразует (умножает) [Vector3] на эту матрицу преобразования."

msgid ""
"Multiplies all components of the [Transform3D] by the given [float], "
"including the [member origin]. This affects the transform's scale uniformly, "
"scaling the [member basis]."
msgstr ""
"Умножает все компоненты [Transform3D] на заданный [float], включая [member "
"origin]. Это влияет на масштаб преобразования равномерно, масштабируя [member "
"basis]."

msgid ""
"Multiplies all components of the [Transform3D] by the given [int], including "
"the [member origin]. This affects the transform's scale uniformly, scaling "
"the [member basis]."
msgstr ""
"Умножает все компоненты [Transform3D] на заданное [int], включая [member "
"origin]. Это влияет на масштаб преобразования равномерно, масштабируя [member "
"basic]."

msgid ""
"Divides all components of the [Transform3D] by the given [float], including "
"the [member origin]. This affects the transform's scale uniformly, scaling "
"the [member basis]."
msgstr ""
"Делит все компоненты [Transform3D] на заданный [float], включая [member "
"origin]. Это равномерно влияет на масштаб преобразования, масштабируя [member "
"basis]."

msgid ""
"Divides all components of the [Transform3D] by the given [int], including the "
"[member origin]. This affects the transform's scale uniformly, scaling the "
"[member basis]."
msgstr ""
"Делит все компоненты [Transform3D] на заданное [int], включая [member "
"origin]. Это равномерно влияет на масштаб преобразования, масштабируя [member "
"basis]."

msgid ""
"A language translation that maps a collection of strings to their individual "
"translations."
msgstr ""
"Перевод языка, который сопоставляет набор строк с их индивидуальными "
"переводами."

msgid ""
"[Translation]s are resources that can be loaded and unloaded on demand. They "
"map a collection of strings to their individual translations, and they also "
"provide convenience methods for pluralization."
msgstr ""
"[Translation] — это ресурсы, которые можно загружать и выгружать по "
"требованию. Они сопоставляют набор строк с их индивидуальными переводами, а "
"также предоставляют удобные методы для плюрализации."

msgid "Internationalizing games"
msgstr "Интернационализация игр"

msgid "Localization using gettext"
msgstr "Локализация с использованием gettext"

msgid "Locales"
msgstr "Локали"

msgid "Virtual method to override [method get_message]."
msgstr "Виртуальный метод для переопределения [method get_message]."

msgid "Virtual method to override [method get_plural_message]."
msgstr "Виртуальный метод для переопределения [method get_plural_message]."

msgid ""
"Adds a message if nonexistent, followed by its translation.\n"
"An additional context could be used to specify the translation context or "
"differentiate polysemic words."
msgstr ""
"Добавляет сообщение, если оно отсутствует, а затем его перевод.\n"
"Дополнительный контекст может использоваться для указания контекста перевода "
"или дифференциации многозначных слов."

msgid ""
"Adds a message involving plural translation if nonexistent, followed by its "
"translation.\n"
"An additional context could be used to specify the translation context or "
"differentiate polysemic words.\n"
"[b]Note:[/b] Plurals are only supported in [url=$DOCS_URL/tutorials/i18n/"
"localization_using_gettext.html]gettext-based translations (PO)[/url], not "
"CSV."
msgstr ""
"Добавляет сообщение с переводом множественного числа, если такового не "
"существует, а затем его перевод.\n"
"Для указания контекста перевода или различения многозначных слов можно "
"использовать дополнительный контекст.\n"
"[b]Примечание:[/b] Множественное число поддерживается только в [url=$DOCS_URL/"
"tutorials/i18n/localization_using_gettext.html]переводах на основе GetText "
"(PO)[/url], но не в CSV-файлах."

msgid "Erases a message."
msgstr "Стереть сообщение."

msgid "Returns a message's translation."
msgstr "Возвращает перевод сообщения."

msgid "Returns the number of existing messages."
msgstr "Возвращает количество существующих сообщений."

msgid "Returns all the messages (keys)."
msgstr "Возвращает все сообщения (ключи)."

msgid ""
"Returns a message's translation involving plurals.\n"
"The number [param n] is the number or quantity of the plural object. It will "
"be used to guide the translation system to fetch the correct plural form for "
"the selected language.\n"
"[b]Note:[/b] Plurals are only supported in [url=$DOCS_URL/tutorials/i18n/"
"localization_using_gettext.html]gettext-based translations (PO)[/url], not "
"CSV."
msgstr ""
"Возвращает перевод сообщения, содержащего формы множественного числа.\n"
"Число [param n] — это количество объектов множественного числа. Оно будет "
"использоваться системой перевода для выбора правильной формы множественного "
"числа для выбранного языка.\n"
"[b]Примечание:[/b] Множественное число поддерживается только в [url=$DOCS_URL/"
"tutorials/i18n/localization_using_gettext.html]переводах на основе GetText "
"(PO)[/url], но не в CSV-файлах."

msgid "Returns all the messages (translated text)."
msgstr "Возвращает все сообщения (переведенный текст)."

msgid "The locale of the translation."
msgstr "Локаль перевода."

msgid "A self-contained collection of [Translation] resources."
msgstr "Автономная коллекция ресурсов [Translation]."

msgid ""
"[TranslationDomain] is a self-contained collection of [Translation] "
"resources. Translations can be added to or removed from it.\n"
"If you're working with the main translation domain, it is more convenient to "
"use the wrap methods on [TranslationServer]."
msgstr ""
"[TranslationDomain] — это самостоятельная коллекция ресурсов [Translation]. "
"Переводы можно добавлять или удалять из нее.\n"
"Если вы работаете с основным доменом перевода, удобнее использовать методы "
"обертывания на [TranslationServer]."

msgid "Adds a translation."
msgstr "Добавляет перевод."

msgid "Removes all translations."
msgstr "Удаляет все переводы."

msgid ""
"Returns the locale override of the domain. Returns an empty string if locale "
"override is disabled."
msgstr ""
"Возвращает переопределение локали домена. Возвращает пустую строку, если "
"переопределение локали отключено."

msgid ""
"Returns the [Translation] instance that best matches [param locale]. Returns "
"[code]null[/code] if there are no matches."
msgstr ""
"Возвращает экземпляр [Translation], который лучше всего соответствует [param "
"locale]. Возвращает [code]null[/code], если совпадений нет."

msgid ""
"Returns the pseudolocalized string based on the [param message] passed in."
msgstr ""
"Возвращает псевдолокализованную строку на основе переданного [param message]."

msgid "Removes the given translation."
msgstr "Удаляет указанный перевод."

msgid ""
"Sets the locale override of the domain.\n"
"If [param locale] is an empty string, locale override is disabled. Otherwise, "
"[param locale] will be standardized to match known locales (e.g. [code]en-US[/"
"code] would be matched to [code]en_US[/code]).\n"
"[b]Note:[/b] Calling this method does not automatically update texts in the "
"scene tree. Please propagate the [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED] signal manually."
msgstr ""
"Устанавливает переопределение локали домена.\n"
"Если [param locale] — пустая строка, переопределение локали отключено. В "
"противном случае [param locale] будет стандартизирован для соответствия "
"известным локалям (например, [code]en-US[/code] будет соответствовать "
"[code]en_US[/code]).\n"
"[b]Примечание:[/b] Вызов этого метода не обновляет автоматически тексты в "
"дереве сцены. Пожалуйста, вручную распространите сигнал [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED]."

msgid ""
"Returns the current locale's translation for the given message and context."
msgstr "Возвращает перевод текущего языка для указанного сообщения и контекста."

msgid ""
"Returns the current locale's translation for the given message, plural "
"message and context.\n"
"The number [param n] is the number or quantity of the plural object. It will "
"be used to guide the translation system to fetch the correct plural form for "
"the selected language."
msgstr ""
"Возвращает перевод текущей локали для указанного сообщения, сообщения во "
"множественном числе и контекста.\n"
"Число [param n] — это число или количество объекта во множественном числе. "
"Оно будет использоваться для того, чтобы направлять систему перевода для "
"извлечения правильной формы множественного числа для выбранного языка."

msgid ""
"If [code]true[/code], translation is enabled. Otherwise, [method translate] "
"and [method translate_plural] will return the input message unchanged "
"regardless of the current locale."
msgstr ""
"Если [code]true[/code], перевод включен. В противном случае [method "
"translate] и [method translate_plural] вернут входящее сообщение без "
"изменений независимо от текущей локали."

msgid ""
"Replace all characters with their accented variants during "
"pseudolocalization.\n"
"[b]Note:[/b] Updating this property does not automatically update texts in "
"the scene tree. Please propagate the [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED] notification manually after you "
"have finished modifying pseudolocalization related options."
msgstr ""
"Замените все символы на их акцентированные варианты во время "
"псевдолокализации.\n"
"[b]Примечание:[/b] Обновление этого свойства не приводит к автоматическому "
"обновлению текстов в дереве сцены. Пожалуйста, вручную распространите "
"уведомление [constant MainLoop.NOTIFICATION_TRANSLATION_CHANGED] после того, "
"как закончите изменять параметры, связанные с псевдолокализацией."

msgid ""
"Double vowels in strings during pseudolocalization to simulate the "
"lengthening of text due to localization.\n"
"[b]Note:[/b] Updating this property does not automatically update texts in "
"the scene tree. Please propagate the [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED] notification manually after you "
"have finished modifying pseudolocalization related options."
msgstr ""
"Двойные гласные в строках во время псевдолокализации для имитации удлинения "
"текста из-за локализации.\n"
"[b]Примечание:[/b] Обновление этого свойства не приводит к автоматическому "
"обновлению текстов в дереве сцены. Пожалуйста, вручную распространите "
"уведомление [constant MainLoop.NOTIFICATION_TRANSLATION_CHANGED] после того, "
"как закончите изменять параметры, связанные с псевдолокализацией."

msgid ""
"If [code]true[/code], enables pseudolocalization for the project. This can be "
"used to spot untranslatable strings or layout issues that may occur once the "
"project is localized to languages that have longer strings than the source "
"language.\n"
"[b]Note:[/b] Updating this property does not automatically update texts in "
"the scene tree. Please propagate the [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED] notification manually after you "
"have finished modifying pseudolocalization related options."
msgstr ""
"Если [code]true[/code], включает псевдолокализацию для проекта. Это можно "
"использовать для обнаружения непереводимых строк или проблем с макетом, "
"которые могут возникнуть после локализации проекта на языки, имеющие более "
"длинные строки, чем исходный язык.\n"
"[b]Примечание:[/b] Обновление этого свойства не приводит к автоматическому "
"обновлению текстов в дереве сцены. Пожалуйста, вручную распространите "
"уведомление [constant MainLoop.NOTIFICATION_TRANSLATION_CHANGED] после того, "
"как вы закончите изменять параметры, связанные с псевдолокализацией."

msgid ""
"The expansion ratio to use during pseudolocalization. A value of [code]0.3[/"
"code] is sufficient for most practical purposes, and will increase the length "
"of each string by 30%.\n"
"[b]Note:[/b] Updating this property does not automatically update texts in "
"the scene tree. Please propagate the [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED] notification manually after you "
"have finished modifying pseudolocalization related options."
msgstr ""
"Коэффициент расширения для использования во время псевдолокализации. Значение "
"[code]0.3[/code] достаточно для большинства практических целей и увеличит "
"длину каждой строки на 30%.\n"
"[b]Примечание:[/b] Обновление этого свойства не приводит к автоматическому "
"обновлению текстов в дереве сцены. Пожалуйста, вручную распространите "
"уведомление [constant MainLoop.NOTIFICATION_TRANSLATION_CHANGED] после того, "
"как закончите изменять параметры, связанные с псевдолокализацией."

msgid ""
"If [code]true[/code], emulate bidirectional (right-to-left) text when "
"pseudolocalization is enabled. This can be used to spot issues with RTL "
"layout and UI mirroring that will crop up if the project is localized to RTL "
"languages such as Arabic or Hebrew.\n"
"[b]Note:[/b] Updating this property does not automatically update texts in "
"the scene tree. Please propagate the [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED] notification manually after you "
"have finished modifying pseudolocalization related options."
msgstr ""
"Если [code]true[/code], эмулировать двунаправленный (справа налево) текст при "
"включенной псевдолокализации. Это можно использовать для выявления проблем с "
"макетом RTL и зеркалированием пользовательского интерфейса, которые "
"возникнут, если проект локализован на языки RTL, такие как арабский или "
"иврит.\n"
"[b]Примечание:[/b] Обновление этого свойства не приводит к автоматическому "
"обновлению текстов в дереве сцены. Пожалуйста, вручную распространите "
"уведомление [constant MainLoop.NOTIFICATION_TRANSLATION_CHANGED] после того, "
"как закончите изменять параметры, связанные с псевдолокализацией."

msgid ""
"Replace all characters in the string with [code]*[/code]. Useful for finding "
"non-localizable strings.\n"
"[b]Note:[/b] Updating this property does not automatically update texts in "
"the scene tree. Please propagate the [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED] notification manually after you "
"have finished modifying pseudolocalization related options."
msgstr ""
"Замените все символы в строке на [code]*[/code]. Полезно для поиска "
"нелокализуемых строк.\n"
"[b]Примечание:[/b] Обновление этого свойства не приводит к автоматическому "
"обновлению текстов в дереве сцены. Пожалуйста, вручную распространите "
"уведомление [constant MainLoop.NOTIFICATION_TRANSLATION_CHANGED] после того, "
"как закончите изменять параметры, связанные с псевдолокализацией."

msgid ""
"Prefix that will be prepended to the pseudolocalized string.\n"
"[b]Note:[/b] Updating this property does not automatically update texts in "
"the scene tree. Please propagate the [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED] notification manually after you "
"have finished modifying pseudolocalization related options."
msgstr ""
"Префикс, который будет добавлен к псевдолокализованной строке.\n"
"[b]Примечание:[/b] Обновление этого свойства не приводит к автоматическому "
"обновлению текстов в дереве сцены. Пожалуйста, вручную распространите "
"уведомление [constant MainLoop.NOTIFICATION_TRANSLATION_CHANGED] после того, "
"как вы закончите изменять параметры, связанные с псевдолокализацией."

msgid ""
"Skip placeholders for string formatting like [code]%s[/code] or [code]%f[/"
"code] during pseudolocalization. Useful to identify strings which need "
"additional control characters to display correctly.\n"
"[b]Note:[/b] Updating this property does not automatically update texts in "
"the scene tree. Please propagate the [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED] notification manually after you "
"have finished modifying pseudolocalization related options."
msgstr ""
"Пропустить заполнители для форматирования строк, например [code]%s[/code] или "
"[code]%f[/code] во время псевдолокализации. Полезно для определения строк, "
"которым требуются дополнительные управляющие символы для правильного "
"отображения.\n"
"[b]Примечание:[/b] Обновление этого свойства не приводит к автоматическому "
"обновлению текстов в дереве сцены. Пожалуйста, вручную распространите "
"уведомление [constant MainLoop.NOTIFICATION_TRANSLATION_CHANGED] после того, "
"как закончите изменять параметры, связанные с псевдолокализацией."

msgid ""
"Suffix that will be appended to the pseudolocalized string.\n"
"[b]Note:[/b] Updating this property does not automatically update texts in "
"the scene tree. Please propagate the [constant "
"MainLoop.NOTIFICATION_TRANSLATION_CHANGED] notification manually after you "
"have finished modifying pseudolocalization related options."
msgstr ""
"Суффикс, который будет добавлен к псевдолокализованной строке.\n"
"[b]Примечание:[/b] Обновление этого свойства не приводит к автоматическому "
"обновлению текстов в дереве сцены. Пожалуйста, вручную распространите "
"уведомление [constant MainLoop.NOTIFICATION_TRANSLATION_CHANGED] после того, "
"как вы закончите изменять параметры, связанные с псевдолокализацией."

msgid "The server responsible for language translations."
msgstr "Сервер, отвечающий за языковые переводы."

msgid ""
"The translation server is the API backend that manages all language "
"translations.\n"
"Translations are stored in [TranslationDomain]s, which can be accessed by "
"name. The most commonly used translation domain is the main translation "
"domain. It always exists and can be accessed using an empty [StringName]. The "
"translation server provides wrapper methods for accessing the main "
"translation domain directly, without having to fetch the translation domain "
"first. Custom translation domains are mainly for advanced usages like editor "
"plugins. Names starting with [code]godot.[/code] are reserved for engine "
"internals."
msgstr ""
"Сервер переводов — это API-бэкэнд, который управляет всеми языковыми "
"переводами.\n"
"Переводы хранятся в [TranslationDomain], к которым можно получить доступ по "
"имени. Наиболее часто используемый домен перевода — это основной домен "
"перевода. Он всегда существует и к нему можно получить доступ с помощью "
"пустого [StringName]. Сервер переводов предоставляет методы-обертки для "
"прямого доступа к основному домену перевода без необходимости "
"предварительного извлечения домена перевода. Пользовательские домены перевода "
"в основном предназначены для расширенных применений, таких как плагины "
"редактора. Имена, начинающиеся с [code]godot.[/code], зарезервированы для "
"внутренних компонентов движка."

msgid "Adds a translation to the main translation domain."
msgstr "Добавляет перевод в основной домен перевода."

msgid "Removes all translations from the main translation domain."
msgstr "Удаляет все переводы из основного домена перевода."

msgid ""
"Compares two locales and returns a similarity score between [code]0[/code] "
"(no match) and [code]10[/code] (full match)."
msgstr ""
"Сравнивает две локализации и возвращает оценку сходства между [code]0[/code] "
"(нет совпадения) и [code]10[/code] (полное совпадение)."

msgid "Returns an array of known country codes."
msgstr "Возвращает массив известных кодов стран."

msgid "Returns array of known language codes."
msgstr "Возвращает массив известных кодов языков."

msgid "Returns an array of known script codes."
msgstr "Возвращает массив известных кодов скриптов."

msgid "Returns a readable country name for the [param country] code."
msgstr "Возвращает читаемое название страны для кода [param country]."

msgid "Returns a readable language name for the [param language] code."
msgstr "Возвращает читаемое название языка для кода [param language]."

msgid "Returns an array of all loaded locales of the project."
msgstr "Возвращает массив всех загруженных локалей проекта."

msgid ""
"Returns the current locale of the project.\n"
"See also [method OS.get_locale] and [method OS.get_locale_language] to query "
"the locale of the user system."
msgstr ""
"Возвращает текущую локаль проекта.\n"
"См. также [method OS.get_locale] и [method OF.get_locale language] для "
"запроса локали пользовательской системы."

msgid ""
"Returns a locale's language and its variant (e.g. [code]\"en_US\"[/code] "
"would return [code]\"English (United States)\"[/code])."
msgstr ""
"Возвращает язык локали и его вариант (например, [code]\"en_US\"[/code] вернет "
"[code]\"Английский (США)\"[/code])."

msgid ""
"Returns the translation domain with the specified name. An empty translation "
"domain will be created and added if it does not exist."
msgstr ""
"Возвращает домен перевода с указанным именем. Пустой домен перевода будет "
"создан и добавлен, если он не существует."

msgid "Returns a readable script name for the [param script] code."
msgstr "Возвращает читаемое имя скрипта для кода [param script]."

msgid ""
"Returns the current locale of the editor.\n"
"[b]Note:[/b] When called from an exported project returns the same value as "
"[method get_locale]."
msgstr ""
"Возвращает текущую локаль редактора.\n"
"[b]Примечание:[/b] При вызове из экспортированного проекта возвращает то же "
"значение, что и [method get_locale]."

msgid ""
"Returns the [Translation] instance that best matches [param locale] in the "
"main translation domain. Returns [code]null[/code] if there are no matches."
msgstr ""
"Возвращает экземпляр [Translation], который лучше всего соответствует [param "
"locale] в основном домене перевода. Возвращает [code]null[/code], если "
"совпадений нет."

msgid ""
"Returns [code]true[/code] if a translation domain with the specified name "
"exists."
msgstr ""
"Возвращает [code]true[/code], если домен перевода с указанным именем "
"существует."

msgid ""
"Returns the pseudolocalized string based on the [param message] passed in.\n"
"[b]Note:[/b] This method always uses the main translation domain."
msgstr ""
"Возвращает псевдолокализованную строку на основе переданного [param "
"message].\n"
"[b]Примечание:[/b] Этот метод всегда использует основной домен перевода."

msgid ""
"Reparses the pseudolocalization options and reloads the translation for the "
"main translation domain."
msgstr ""
"Повторно анализирует параметры псевдолокализации и перезагружает перевод для "
"основного домена перевода."

msgid ""
"Removes the translation domain with the specified name.\n"
"[b]Note:[/b] Trying to remove the main translation domain is an error."
msgstr ""
"Удаляет домен перевода с указанным именем.\n"
"[b]Примечание:[/b] Попытка удалить основной домен перевода является ошибкой."

msgid "Removes the given translation from the main translation domain."
msgstr "Удаляет указанный перевод из основного домена перевода."

msgid ""
"Sets the locale of the project. The [param locale] string will be "
"standardized to match known locales (e.g. [code]en-US[/code] would be matched "
"to [code]en_US[/code]).\n"
"If translations have been loaded beforehand for the new locale, they will be "
"applied."
msgstr ""
"Устанавливает локаль проекта. Строка [param locale] будет стандартизирована "
"для соответствия известным локалям (например, [code]en-US[/code] будет "
"соответствовать [code]en_US[/code]).\n"
"Если переводы были загружены заранее для новой локали, они будут применены."

msgid ""
"Returns a [param locale] string standardized to match known locales (e.g. "
"[code]en-US[/code] would be matched to [code]en_US[/code]). If [param "
"add_defaults] is [code]true[/code], the locale may have a default script or "
"country added."
msgstr ""
"Возвращает строку [param locale], стандартизированную для соответствия "
"известным локалям (например, [code]en-US[/code] будет соответствовать "
"[code]en_US[/code]). Если [param add_defaults] равно [code]true[/code], "
"локаль может иметь добавленный сценарий или страну по умолчанию."

msgid ""
"Returns the current locale's translation for the given message and context.\n"
"[b]Note:[/b] This method always uses the main translation domain."
msgstr ""
"Возвращает перевод текущего языка для указанного сообщения и контекста.\n"
"[b]Примечание:[/b] Этот метод всегда использует основной домен перевода."

msgid ""
"Returns the current locale's translation for the given message, plural "
"message and context.\n"
"The number [param n] is the number or quantity of the plural object. It will "
"be used to guide the translation system to fetch the correct plural form for "
"the selected language.\n"
"[b]Note:[/b] This method always uses the main translation domain."
msgstr ""
"Возвращает перевод текущего языка для указанного сообщения, сообщения во "
"множественном числе и контекста.\n"
"Число [param n] — это число или количество объектов во множественном числе. "
"Оно будет использоваться для того, чтобы система перевода выбрала правильную "
"форму множественного числа для выбранного языка.\n"
"[b]Примечание:[/b] Этот метод всегда использует основной домен перевода."

msgid ""
"If [code]true[/code], enables the use of pseudolocalization on the main "
"translation domain. See [member ProjectSettings.internationalization/"
"pseudolocalization/use_pseudolocalization] for details."
msgstr ""
"Если [code]true[/code], включает использование псевдолокализации на основном "
"домене перевода. Подробности см. в [member "
"ProjectSettings.internationalization/pseudolocalization/"
"use_pseudolocalization]."

msgid ""
"A control used to show a set of internal [TreeItem]s in a hierarchical "
"structure."
msgstr ""
"Элемент управления, используемый для отображения набора внутренних [TreeItem] "
"в иерархической структуре."

msgid ""
"A control used to show a set of internal [TreeItem]s in a hierarchical "
"structure. The tree items can be selected, expanded and collapsed. The tree "
"can have multiple columns with custom controls like [LineEdit]s, buttons and "
"popups. It can be useful for structured displays and interactions.\n"
"Trees are built via code, using [TreeItem] objects to create the structure. "
"They have a single root, but multiple roots can be simulated with [member "
"hide_root]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar tree = Tree.new()\n"
"\tvar root = tree.create_item()\n"
"\ttree.hide_root = true\n"
"\tvar child1 = tree.create_item(root)\n"
"\tvar child2 = tree.create_item(root)\n"
"\tvar subchild1 = tree.create_item(child1)\n"
"\tsubchild1.set_text(0, \"Subchild1\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar tree = new Tree();\n"
"\tTreeItem root = tree.CreateItem();\n"
"\ttree.HideRoot = true;\n"
"\tTreeItem child1 = tree.CreateItem(root);\n"
"\tTreeItem child2 = tree.CreateItem(root);\n"
"\tTreeItem subchild1 = tree.CreateItem(child1);\n"
"\tsubchild1.SetText(0, \"Subchild1\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"To iterate over all the [TreeItem] objects in a [Tree] object, use [method "
"TreeItem.get_next] and [method TreeItem.get_first_child] after getting the "
"root through [method get_root]. You can use [method Object.free] on a "
"[TreeItem] to remove it from the [Tree].\n"
"[b]Incremental search:[/b] Like [ItemList] and [PopupMenu], [Tree] supports "
"searching within the list while the control is focused. Press a key that "
"matches the first letter of an item's name to select the first item starting "
"with the given letter. After that point, there are two ways to perform "
"incremental search: 1) Press the same key again before the timeout duration "
"to select the next item starting with the same letter. 2) Press letter keys "
"that match the rest of the word before the timeout duration to match to "
"select the item in question directly. Both of these actions will be reset to "
"the beginning of the list if the timeout duration has passed since the last "
"keystroke was registered. You can adjust the timeout duration by changing "
"[member ProjectSettings.gui/timers/incremental_search_max_interval_msec]."
msgstr ""
"Элемент управления, используемый для отображения набора внутренних [TreeItem] "
"в иерархической структуре. Элементы дерева можно выбирать, разворачивать и "
"сворачивать. Дерево может иметь несколько столбцов с пользовательскими "
"элементами управления, такими как [LineEdit], кнопки и всплывающие окна. Это "
"может быть полезно для структурированных отображений и взаимодействий.\n"
"Деревья строятся с помощью кода, используя объекты [TreeItem] для создания "
"структуры. У них один корень, но несколько корней можно имитировать с помощью "
"[member hide_root]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar tree = Tree.new()\n"
"\tvar root = tree.create_item()\n"
"\ttree.hide_root = true\n"
"\tvar child1 = tree.create_item(root)\n"
"\tvar child2 = tree.create_item(root)\n"
"\tvar subchild1 = tree.create_item(child1)\n"
"\tsubchild1.set_text(0, \"Subchild1\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tvar tree = new Tree();\n"
"\tTreeItem root = tree.CreateItem();\n"
"\ttree.HideRoot = true;\n"
"\tTreeItem child1 = tree.CreateItem(root);\n"
"\tTreeItem child2 = tree.CreateItem(root);\n"
"\tTreeItem subchild1 = tree.CreateItem(child1);\n"
"\tsubchild1.SetText(0, \"Subchild1\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Чтобы перебрать все объекты [TreeItem] в объекте [Tree], используйте [method "
"TreeItem.get_next] и [method TreeItem.get_first_child] после получения корня "
"с помощью [method get_root]. Вы можете использовать [method Object.free] для "
"[TreeItem], чтобы удалить его из [Tree].\n"
"[b]Инкрементный поиск:[/b] Как и [ItemList] и [PopupMenu], [Tree] "
"поддерживает поиск в списке, пока элемент управления находится в фокусе. "
"Нажмите клавишу, которая совпадает с первой буквой имени элемента, чтобы "
"выбрать первый элемент, начинающийся с данной буквы. После этого есть два "
"способа выполнить инкрементный поиск: 1) Нажмите ту же клавишу еще раз до "
"истечения времени ожидания, чтобы выбрать следующий элемент, начинающийся с "
"той же буквы. 2) Нажмите клавиши с буквами, которые совпадают с остальной "
"частью слова до истечения времени ожидания, чтобы сопоставить, чтобы напрямую "
"выбрать нужный элемент. Оба эти действия будут сброшены в начало списка, если "
"длительность тайм-аута прошла с момента регистрации последнего нажатия "
"клавиши. Вы можете настроить длительность тайм-аута, изменив [member "
"ProjectSettings.gui/timers/incremental_search_max_interval_msec]."

msgid "Clears the tree. This removes all items."
msgstr "Очищает дерево. Удаляет все элементы."

msgid ""
"Creates an item in the tree and adds it as a child of [param parent], which "
"can be either a valid [TreeItem] or [code]null[/code].\n"
"If [param parent] is [code]null[/code], the root item will be the parent, or "
"the new item will be the root itself if the tree is empty.\n"
"The new item will be the [param index]-th child of parent, or it will be the "
"last child if there are not enough siblings."
msgstr ""
"Создает элемент в дереве и добавляет его как дочерний элемент [param parent], "
"который может быть либо допустимым [TreeItem], либо [code]null[/code].\n"
"Если [param parent] равен [code]null[/code], корневой элемент будет "
"родителем, или новый элемент будет сам корнем, если дерево пустое.\n"
"Новый элемент будет [param index]-ым дочерним элементом parent, или он будет "
"последним дочерним элементом, если не хватает родственных элементов."

msgid ""
"Deselects all tree items (rows and columns). In [constant SELECT_MULTI] mode "
"also removes selection cursor."
msgstr ""
"Отменяет выбор всех элементов дерева (строк и столбцов). В режиме [constant "
"SELECT_MULTI] также удаляет курсор выбора."

msgid ""
"Edits the selected tree item as if it was clicked.\n"
"Either the item must be set editable with [method TreeItem.set_editable] or "
"[param force_edit] must be [code]true[/code].\n"
"Returns [code]true[/code] if the item could be edited. Fails if no item is "
"selected."
msgstr ""
"Редактирует выбранный элемент дерева, как будто он был нажат.\n"
"Либо элемент должен быть установлен как редактируемый с помощью [method "
"TreeItem.set_editable], либо [param force_edit] должен быть [code]true[/"
"code].\n"
"Возвращает [code]true[/code], если элемент можно редактировать. Не "
"выполняется, если ни один элемент не выбран."

msgid ""
"Makes the currently focused cell visible.\n"
"This will scroll the tree if necessary. In [constant SELECT_ROW] mode, this "
"will not do horizontal scrolling, as all the cells in the selected row is "
"focused logically.\n"
"[b]Note:[/b] Despite the name of this method, the focus cursor itself is only "
"visible in [constant SELECT_MULTI] mode."
msgstr ""
"Делает текущую сфокусированную ячейку видимой.\n"
"Это прокрутит дерево, если необходимо. В режиме [constant SELECT_ROW] это не "
"будет выполнять горизонтальную прокрутку, так как все ячейки в выбранной "
"строке сфокусированы логически.\n"
"[b]Примечание:[/b] Несмотря на название этого метода, сам курсор фокуса виден "
"только в режиме [constant SELECT_MULTI]."

msgid "Returns the button ID at [param position], or -1 if no button is there."
msgstr ""
"Возвращает идентификатор кнопки в [param position] или -1, если кнопки нет."

msgid "Returns the column index at [param position], or -1 if no item is there."
msgstr "Возвращает индекс столбца в [param position] или -1, если элемента нет."

msgid "Returns the expand ratio assigned to the column."
msgstr "Возвращает коэффициент расширения, назначенный столбцу."

msgid "Returns the column's title."
msgstr "Возвращает заголовок столбца."

msgid "Returns the column title alignment."
msgstr "Возвращает выравнивание заголовка столбца."

msgid "Returns column title base writing direction."
msgstr "Возвращает базовое направление написания заголовка столбца."

msgid "Returns column title language code."
msgstr "Возвращает код языка заголовка столбца."

msgid "Returns the column's width in pixels."
msgstr "Возвращает ширину столбца в пикселях."

msgid ""
"Returns the rectangle for custom popups. Helper to create custom cell "
"controls that display a popup. See [method TreeItem.set_cell_mode]."
msgstr ""
"Возвращает прямоугольник для пользовательских всплывающих окон (popup). "
"Помощник для создания пользовательских элементов управления ячейками, которые "
"отображают всплывающее окно. См. [method TreeItem.set_cell_mode]."

msgid ""
"Returns the drop section at [param position], or -100 if no item is there.\n"
"Values -1, 0, or 1 will be returned for the \"above item\", \"on item\", and "
"\"below item\" drop sections, respectively. See [enum DropModeFlags] for a "
"description of each drop section.\n"
"To get the item which the returned drop section is relative to, use [method "
"get_item_at_position]."
msgstr ""
"Возвращает раздел перетаскивания в [param position] или -100, если элемента "
"нет.\n"
"Значения -1, 0 или 1 будут возвращены для разделов перетаскивания \"выше "
"элемента\", \"на элементе\" и \"ниже элемента\" соответственно. Описание "
"каждого раздела перетаскивания см. в [enum DropModeFlags].\n"
"Чтобы получить элемент, к которому относится возвращаемый раздел "
"перетаскивания, используйте [method get_item_at_position]."

msgid ""
"Returns the currently edited item. Can be used with [signal item_edited] to "
"get the item that was modified.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t$Tree.item_edited.connect(on_Tree_item_edited)\n"
"\n"
"func on_Tree_item_edited():\n"
"\tprint($Tree.get_edited()) # This item just got edited (e.g. checked).\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tGetNode<Tree>(\"Tree\").ItemEdited += OnTreeItemEdited;\n"
"}\n"
"\n"
"public void OnTreeItemEdited()\n"
"{\n"
"\tGD.Print(GetNode<Tree>(\"Tree\").GetEdited()); // This item just got edited "
"(e.g. checked).\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Возвращает текущий редактируемый элемент. Может использоваться с [signal "
"item_edited] для получения измененного элемента.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\t$Tree.item_edited.connect(on_Tree_item_edited)\n"
"\n"
"func on_Tree_item_edited():\n"
"\tprint($Tree.get_edited()) # Этот элемент только что был отредактирован "
"(например, проверен).\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tGetNode<Tree>(\"Tree\").ItemEdited += OnTreeItemEdited;\n"
"}\n"
"\n"
"public void OnTreeItemEdited()\n"
"{\n"
"\tGD.Print(GetNode<Tree>(\"Tree\").GetEdited()); // Этот элемент только что "
"был отредактирован (например, проверен).\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Returns the column for the currently edited item."
msgstr "Возвращает столбец для текущего редактируемого элемента."

msgid ""
"Returns the rectangle area for the specified [TreeItem]. If [param column] is "
"specified, only get the position and size of that column, otherwise get the "
"rectangle containing all columns. If a button index is specified, the "
"rectangle of that button will be returned."
msgstr ""
"Возвращает область прямоугольника для указанного [TreeItem]. Если указан "
"[param column], получить только положение и размер этого столбца, в противном "
"случае получить прямоугольник, содержащий все столбцы. Если указан индекс "
"кнопки, будет возвращен прямоугольник этой кнопки."

msgid ""
"Returns the tree item at the specified position (relative to the tree origin "
"position)."
msgstr ""
"Возвращает элемент дерева в указанной позиции (относительно исходной позиции "
"дерева)."

msgid ""
"Returns the next selected [TreeItem] after the given one, or [code]null[/"
"code] if the end is reached.\n"
"If [param from] is [code]null[/code], this returns the first selected item."
msgstr ""
"Возвращает следующий выбранный [TreeItem] после указанного или [code]null[/"
"code], если достигнут конец.\n"
"Если [param from] равен [code]null[/code], возвращается первый выбранный "
"элемент."

msgid "Returns the last pressed button's index."
msgstr "Возвращает индекс последней нажатой кнопки."

msgid "Returns the tree's root item, or [code]null[/code] if the tree is empty."
msgstr ""
"Возвращает корневой элемент дерева или [code]null[/code], если дерево пустое."

msgid "Returns the current scrolling position."
msgstr "Возвращает текущую позицию прокрутки."

msgid ""
"Returns the currently focused item, or [code]null[/code] if no item is "
"focused.\n"
"In [constant SELECT_ROW] and [constant SELECT_SINGLE] modes, the focused item "
"is same as the selected item. In [constant SELECT_MULTI] mode, the focused "
"item is the item under the focus cursor, not necessarily selected.\n"
"To get the currently selected item(s), use [method get_next_selected]."
msgstr ""
"Возвращает текущий сфокусированный элемент или [code]null[/code], если ни "
"один элемент не сфокусирован.\n"
"В режимах [constant SELECT_ROW] и [constant SELECT_SINGLE] сфокусированный "
"элемент совпадает с выбранным элементом. В режиме [constant SELECT_MULTI] "
"сфокусированный элемент — это элемент под курсором фокуса, не обязательно "
"выбранный.\n"
"Чтобы получить текущий выбранный элемент(ы), используйте [method "
"get_next_selected]."

msgid ""
"Returns the currently focused column, or -1 if no column is focused.\n"
"In [constant SELECT_SINGLE] mode, the focused column is the selected column. "
"In [constant SELECT_ROW] mode, the focused column is always 0 if any item is "
"selected. In [constant SELECT_MULTI] mode, the focused column is the column "
"under the focus cursor, and there are not necessarily any column selected.\n"
"To tell whether a column of an item is selected, use [method "
"TreeItem.is_selected]."
msgstr ""
"Возвращает текущий сфокусированный столбец или -1, если ни один столбец не "
"сфокусирован.\n"
"В режиме [constant SELECT_SINGLE] сфокусированный столбец является выбранным "
"столбцом. В режиме [constant SELECT_ROW] сфокусированный столбец всегда равен "
"0, если выбран какой-либо элемент. В режиме [constant SELECT_MULTI] "
"сфокусированный столбец является столбцом под курсором фокуса, и не "
"обязательно, чтобы был выбран какой-либо столбец.\n"
"Чтобы определить, выбран ли столбец элемента, используйте [method "
"TreeItem.is_selected]."

msgid ""
"Returns [code]true[/code] if the column has enabled clipping (see [method "
"set_column_clip_content])."
msgstr ""
"Возвращает [code]true[/code], если для столбца включено отсечение (см. "
"[method set_column_clip_content])."

msgid ""
"Returns [code]true[/code] if the column has enabled expanding (see [method "
"set_column_expand])."
msgstr ""
"Возвращает [code]true[/code], если столбец поддерживает расширение (см. "
"[method set_column_expand])."

msgid "Causes the [Tree] to jump to the specified [TreeItem]."
msgstr "Заставляет [Tree] перейти к указанному [TreeItem]."

msgid ""
"Allows to enable clipping for column's content, making the content size "
"ignored."
msgstr ""
"Позволяет включить обрезку содержимого столбца, игнорируя размер содержимого."

msgid ""
"Overrides the calculated minimum width of a column. It can be set to [code]0[/"
"code] to restore the default behavior. Columns that have the \"Expand\" flag "
"will use their \"min_width\" in a similar fashion to [member "
"Control.size_flags_stretch_ratio]."
msgstr ""
"Переопределяет вычисленную минимальную ширину столбца. Его можно установить "
"на [code]0[/code], чтобы восстановить поведение по умолчанию. Столбцы с "
"флагом \"Expand\" будут использовать свой \"min_width\" аналогично [member "
"Control.size_flags_stretch_ratio]."

msgid ""
"If [code]true[/code], the column will have the \"Expand\" flag of [Control]. "
"Columns that have the \"Expand\" flag will use their expand ratio in a "
"similar fashion to [member Control.size_flags_stretch_ratio] (see [method "
"set_column_expand_ratio])."
msgstr ""
"Если [code]true[/code], столбец будет иметь флаг «Expand» [Control]. Столбцы, "
"имеющие флаг «Expand», будут использовать свой коэффициент расширения "
"аналогично [member Control.size_flags_stretch_ratio] (см. [method "
"set_column_expand_ratio])."

msgid ""
"Sets the relative expand ratio for a column. See [method set_column_expand]."
msgstr ""
"Устанавливает относительный коэффициент расширения для столбца. См. [method "
"set_column_expand]."

msgid "Sets the title of a column."
msgstr "Задает заголовок столбца."

msgid ""
"Sets the column title alignment. Note that [constant "
"@GlobalScope.HORIZONTAL_ALIGNMENT_FILL] is not supported for column titles."
msgstr ""
"Устанавливает выравнивание заголовка столбца. Обратите внимание, что "
"[constant @GlobalScope.HORIZONTAL_ALIGNMENT_FILL] не поддерживается для "
"заголовков столбцов."

msgid "Sets column title base writing direction."
msgstr "Устанавливает направление написания заголовка столбца."

msgid ""
"Sets language code of column title used for line-breaking and text shaping "
"algorithms, if left empty current locale is used instead."
msgstr ""
"Устанавливает код языка заголовка столбца, используемый для алгоритмов "
"переноса строк и формирования текста, если оставить пустым, вместо него "
"используется текущая локаль."

msgid "Selects the specified [TreeItem] and column."
msgstr "Выбирает указанный [TreeItem] и столбец."

msgid "If [code]true[/code], the currently selected cell may be selected again."
msgstr ""
"Если [code]true[/code], текущая выбранная ячейка может быть выбрана снова."

msgid "If [code]true[/code], a right mouse button click can select items."
msgstr ""
"Если [code]true[/code], щелчок правой кнопкой мыши может выбирать элементы."

msgid ""
"If [code]true[/code], allows navigating the [Tree] with letter keys through "
"incremental search."
msgstr ""
"Если [code]true[/code], позволяет осуществлять навигацию по [Tree] с помощью "
"буквенных клавиш посредством инкрементного поиска."

msgid ""
"If [code]true[/code], tree items with no tooltip assigned display their text "
"as their tooltip. See also [method TreeItem.get_tooltip_text] and [method "
"TreeItem.get_button_tooltip_text]."
msgstr ""
"Если [code]true[/code], элементы дерева без назначенной подсказки отображают "
"свой текст в качестве подсказки. См. также [method TreeItem.get_tooltip_text] "
"и [method TreeItem.get_button_tooltip_text]."

msgid "If [code]true[/code], column titles are visible."
msgstr "Если [code]true[/code], заголовки столбцов видны."

msgid "The number of columns."
msgstr "Количество столбцов."

msgid ""
"The drop mode as an OR combination of flags. See [enum DropModeFlags] "
"constants. Once dropping is done, reverts to [constant DROP_MODE_DISABLED]. "
"Setting this during [method Control._can_drop_data] is recommended.\n"
"This controls the drop sections, i.e. the decision and drawing of possible "
"drop locations based on the mouse position."
msgstr ""
"Режим сброса как комбинация флагов OR. См. константы [enum DropModeFlags]. "
"После сброса возвращается к [constant DROP_MODE_DISABLED]. Рекомендуется "
"устанавливать это во время [method Control._can_drop_data].\n"
"Это управляет разделами сброса, т. е. принятием решения и отрисовкой "
"возможных мест сброса на основе положения мыши."

msgid ""
"If [code]true[/code], recursive folding is enabled for this [Tree]. Holding "
"down [kbd]Shift[/kbd] while clicking the fold arrow or using [code]ui_right[/"
"code]/[code]ui_left[/code] shortcuts collapses or uncollapses the [TreeItem] "
"and all its descendants."
msgstr ""
"Если [code]true[/code], рекурсивное сворачивание включено для этого [Tree]. "
"Удерживание [kbd]Shift[/kbd] при нажатии стрелки сворачивания или "
"использование сочетаний клавиш [code]ui_right[/code]/[code]ui_left[/code] "
"сворачивает или разворачивает [TreeItem] и всех его потомков."

msgid "If [code]true[/code], the folding arrow is hidden."
msgstr "Если [code]true[/code], то складная стрелка скрыта."

msgid "If [code]true[/code], the tree's root is hidden."
msgstr "Если [code]true[/code], корень дерева скрыт."

msgid "If [code]true[/code], enables horizontal scrolling."
msgstr "Если [code]true[/code], включается горизонтальная прокрутка."

msgid "If [code]true[/code], enables vertical scrolling."
msgstr "Если [code]true[/code], включается вертикальная прокрутка."

msgid ""
"Allows single or multiple selection. See the [enum SelectMode] constants."
msgstr ""
"Позволяет сделать один или несколько выборов. См. константы [enum SelectMode]."

msgid ""
"Emitted when a button on the tree was pressed (see [method "
"TreeItem.add_button])."
msgstr ""
"Вызывается при нажатии кнопки на дереве (см. [method TreeItem.add_button])."

msgid "Emitted when a cell is selected."
msgstr "Выдается при выборе ячейки."

msgid ""
"Emitted when [method TreeItem.propagate_check] is called. Connect to this "
"signal to process the items that are affected when [method "
"TreeItem.propagate_check] is invoked. The order that the items affected will "
"be processed is as follows: the item that invoked the method, children of "
"that item, and finally parents of that item."
msgstr ""
"Вызывается при вызове [method TreeItem.propagate_check]. Подключитесь к этому "
"сигналу для обработки элементов, затронутых вызовом [method "
"TreeItem.propagate_check]. Порядок обработки затронутых элементов следующий: "
"элемент, вызвавший метод, дочерние элементы этого элемента и, наконец, "
"родительские элементы этого элемента."

msgid ""
"Emitted when a column's title is clicked with either [constant "
"MOUSE_BUTTON_LEFT] or [constant MOUSE_BUTTON_RIGHT]."
msgstr ""
"Вызывается при щелчке по заголовку столбца с помощью [constant "
"MOUSE_BUTTON_LEFT] или [constant MOUSE_BUTTON_RIGHT]."

msgid ""
"Emitted when an item with [constant TreeItem.CELL_MODE_CUSTOM] is clicked "
"with a mouse button."
msgstr ""
"Вызывается при щелчке кнопкой мыши по элементу с [constant "
"TreeItem.CELL_MODE_CUSTOM]."

msgid ""
"Emitted when a cell with the [constant TreeItem.CELL_MODE_CUSTOM] is clicked "
"to be edited."
msgstr ""
"Вызывается при щелчке по ячейке с [constant TreeItem.CELL_MODE_CUSTOM] для "
"редактирования."

msgid "Emitted when a mouse button is clicked in the empty space of the tree."
msgstr "Вызывается при щелчке кнопкой мыши в пустом месте дерева."

msgid ""
"Emitted when an item is double-clicked, or selected with a [code]ui_accept[/"
"code] input event (e.g. using [kbd]Enter[/kbd] or [kbd]Space[/kbd] on the "
"keyboard)."
msgstr ""
"Вызывается при двойном щелчке по элементу или выборе с помощью события ввода "
"[code]ui_accept[/code] (например, с помощью [kbd]Enter[/kbd] или [kbd]Space[/"
"kbd] на клавиатуре)."

msgid ""
"Emitted when an item is expanded or collapsed by clicking on the folding "
"arrow or through code.\n"
"[b]Note:[/b] Despite its name, this signal is also emitted when an item is "
"expanded."
msgstr ""
"Вызывается при развёртывании или свёртывании элемента путём нажатия на "
"стрелку сворачивания или посредством кода.\n"
"[b]Примечание:[/b] Несмотря на название, этот сигнал также генерируется при "
"развёртывании элемента."

msgid "Emitted when an item is edited."
msgstr "Выдается при редактировании элемента."

msgid ""
"Emitted when an item's icon is double-clicked. For a signal that emits when "
"any part of the item is double-clicked, see [signal item_activated]."
msgstr ""
"Вызывается при двойном щелчке по значку элемента. Для сигнала, который "
"вызывается при двойном щелчке по любой части элемента, см. [signal "
"item_activated]."

msgid "Emitted when an item is selected with a mouse button."
msgstr "Вызывается при выборе элемента кнопкой мыши."

msgid "Emitted when an item is selected."
msgstr "Выдается при выборе элемента."

msgid ""
"Emitted instead of [signal item_selected] if [member select_mode] is set to "
"[constant SELECT_MULTI]."
msgstr ""
"Выдается вместо [signal item_selected], если [member select_mode] установлен "
"на [constant SELECT_MULTI]."

msgid "Emitted when a left mouse button click does not select any item."
msgstr ""
"Генерируется, когда щелчок левой кнопкой мыши не приводит к выбору какого-"
"либо элемента."

msgid ""
"Allows selection of a single cell at a time. From the perspective of items, "
"only a single item is allowed to be selected. And there is only one column "
"selected in the selected item.\n"
"The focus cursor is always hidden in this mode, but it is positioned at the "
"current selection, making the currently selected item the currently focused "
"item."
msgstr ""
"Позволяет выбирать одну ячейку за раз. С точки зрения элементов, разрешено "
"выбирать только один элемент. И в выбранном элементе выбран только один "
"столбец.\n"
"Курсор фокуса всегда скрыт в этом режиме, но он располагается на текущем "
"выборе, делая текущий выбранный элемент текущим сфокусированным элементом."

msgid ""
"Allows selection of a single row at a time. From the perspective of items, "
"only a single items is allowed to be selected. And all the columns are "
"selected in the selected item.\n"
"The focus cursor is always hidden in this mode, but it is positioned at the "
"first column of the current selection, making the currently selected item the "
"currently focused item."
msgstr ""
"Позволяет выбирать одну строку за раз. С точки зрения элементов, разрешено "
"выбирать только один элемент. И все столбцы выбираются в выбранном элементе.\n"
"Курсор фокуса всегда скрыт в этом режиме, но он располагается в первом "
"столбце текущего выбора, делая текущий выбранный элемент текущим "
"сфокусированным элементом."

msgid ""
"Allows selection of multiple cells at the same time. From the perspective of "
"items, multiple items are allowed to be selected. And there can be multiple "
"columns selected in each selected item.\n"
"The focus cursor is visible in this mode, the item or column under the cursor "
"is not necessarily selected."
msgstr ""
"Позволяет выбирать несколько ячеек одновременно. С точки зрения элементов, "
"допускается выбор нескольких элементов. И в каждом выбранном элементе может "
"быть выбрано несколько столбцов.\n"
"Курсор фокуса виден в этом режиме, элемент или столбец под курсором не "
"обязательно выбран."

msgid ""
"Disables all drop sections, but still allows to detect the \"on item\" drop "
"section by [method get_drop_section_at_position].\n"
"[b]Note:[/b] This is the default flag, it has no effect when combined with "
"other flags."
msgstr ""
"Отключает все разделы перетаскивания, но по-прежнему позволяет обнаружить "
"раздел сброса «on item» с помощью [method get_drop_section_at_position].\n"
"[b]Примечание:[/b] Это флаг по умолчанию, он не действует в сочетании с "
"другими флагами."

msgid ""
"Enables the \"on item\" drop section. This drop section covers the entire "
"item.\n"
"When combined with [constant DROP_MODE_INBETWEEN], this drop section halves "
"the height and stays centered vertically."
msgstr ""
"Включает раздел перетаскивания «на элементе». Этот раздел перетаскивания "
"охватывает весь элемент.\n"
"В сочетании с [constant DROP_MODE_INBETWEEN] этот раздел перетаскивания "
"уменьшает высоту вдвое и остается центрированным по вертикали."

msgid ""
"Enables \"above item\" and \"below item\" drop sections. The \"above item\" "
"drop section covers the top half of the item, and the \"below item\" drop "
"section covers the bottom half.\n"
"When combined with [constant DROP_MODE_ON_ITEM], these drop sections halves "
"the height and stays on top / bottom accordingly."
msgstr ""
"Включает разделы выпадения «над элементом» и «под элементом». Раздел "
"выпадения «над элементом» охватывает верхнюю половину элемента, а раздел "
"выпадения «под элементом» охватывает нижнюю половину.\n"
"В сочетании с [constant DROP_MODE_ON_ITEM] эти разделы выпадения уменьшают "
"высоту вдвое и остаются сверху/снизу соответственно."

msgid ""
"The [Color] of the relationship lines between the selected [TreeItem] and its "
"children."
msgstr ""
"[Color] линий связи между выбранным [TreeItem] и его дочерними элементами."

msgid ""
"Text [Color] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when it's "
"hovered."
msgstr ""
"[Color] текста для ячейки режима [constant TreeItem.CELL_MODE_CUSTOM] при "
"наведении на нее курсора."

msgid ""
"[Color] used to draw possible drop locations. See [enum DropModeFlags] "
"constants for further description of drop locations."
msgstr ""
"[Color] используется для рисования возможных мест сброса/перетаскивания. См. "
"константы [enum DropModeFlags] для дальнейшего описания мест сброса."

msgid ""
"Text [Color] for a [constant TreeItem.CELL_MODE_CHECK] mode cell when it's "
"non-editable (see [method TreeItem.set_editable])."
msgstr ""
"[Color] текста для ячейки режима [constant TreeItem.CELL_MODE_CHECK], когда "
"она нередактируема (см. [method TreeItem.set_editable])."

msgid ""
"Text [Color] used when the item is hovered, while a button of the same item "
"is hovered as the same time."
msgstr ""
"[Color] текста, используемый при наведении курсора на элемент, при наведении "
"курсора на кнопку того же элемента в то же время."

msgid "Text [Color] used when the item is selected."
msgstr "[Color] текста, используемый при выборе элемента."

msgid "[Color] of the guideline."
msgstr "[Color] направляющей."

msgid ""
"The [Color] of the relationship lines between the selected [TreeItem] and its "
"parents."
msgstr "[Color] линий связи между выбранным [TreeItem] и его родителями."

msgid "The default [Color] of the relationship lines."
msgstr "[Color] по умолчанию для линий взаимоотношений."

msgid "Default text [Color] of the title button."
msgstr "[Color] текста по умолчанию кнопки заголовка."

msgid "The horizontal space between each button in a cell."
msgstr "Горизонтальное расстояние между каждой кнопкой в ячейке."

msgid ""
"The width of the relationship lines between the selected [TreeItem] and its "
"children."
msgstr ""
"Ширина линий связи между выбранным [TreeItem] и его дочерними элементами."

msgid ""
"Draws the guidelines if not zero, this acts as a boolean. The guideline is a "
"horizontal line drawn at the bottom of each item."
msgstr ""
"Рисует направляющие, если не ноль, это действует как логическое значение. "
"Направляющая представляет собой горизонтальную линию, нарисованную внизу "
"каждого элемента."

msgid ""
"Draws the relationship lines if not zero, this acts as a boolean. "
"Relationship lines are drawn at the start of child items to show hierarchy."
msgstr ""
"Рисует линии отношений, если не ноль, это действует как логическое значение. "
"Линии отношений рисуются в начале дочерних элементов, чтобы показать иерархию."

msgid ""
"The horizontal space between item cells. This is also used as the margin at "
"the start of an item when folding is disabled."
msgstr ""
"Горизонтальное пространство между ячейками элементов. Также используется как "
"поле в начале элемента, когда сворачивание отключено."

msgid ""
"The maximum allowed width of the icon in item's cells. This limit is applied "
"on top of the default size of the icon, but before the value set with [method "
"TreeItem.set_icon_max_width]. The height is adjusted according to the icon's "
"ratio."
msgstr ""
"Максимально допустимая ширина значка в ячейках элемента. Это ограничение "
"применяется поверх размера значка по умолчанию, но до значения, "
"установленного с помощью [method TreeItem.set_icon_max_width]. Высота "
"регулируется в соответствии с соотношением значка."

msgid "The inner bottom margin of a cell."
msgstr "Внутренний нижний край ячейки."

msgid "The inner left margin of a cell."
msgstr "Внутренний левый край ячейки."

msgid "The inner right margin of a cell."
msgstr "Внутренний правый край ячейки."

msgid "The inner top margin of a cell."
msgstr "Внутреннее верхнее поле ячейки."

msgid ""
"The horizontal margin at the start of an item. This is used when folding is "
"enabled for the item."
msgstr ""
"Горизонтальное поле в начале элемента. Используется, когда для элемента "
"включено сворачивание."

msgid ""
"The space between the parent relationship lines for the selected [TreeItem] "
"and the relationship lines to its siblings that are not selected."
msgstr ""
"Пространство между линиями родительских отношений для выбранного [TreeItem] и "
"линиями отношений с его родственными элементами, которые не выбраны."

msgid ""
"The width of the relationship lines between the selected [TreeItem] and its "
"parents."
msgstr "Ширина линий связи между выбранным [TreeItem] и его родителями."

msgid "The default width of the relationship lines."
msgstr "Ширина линий отношений по умолчанию."

msgid ""
"The maximum distance between the mouse cursor and the control's border to "
"trigger border scrolling when dragging."
msgstr ""
"Максимальное расстояние между курсором мыши и границей элемента управления, "
"при котором будет срабатывать прокрутка границы при перетаскивании."

msgid "The speed of border scrolling."
msgstr "Скорость прокрутки границы."

msgid "The horizontal separation of tree content and scrollbar."
msgstr "Горизонтальное разделение содержимого дерева и полосы прокрутки."

msgid ""
"The bottom margin of the scrollbars. When negative, uses [theme_item panel] "
"bottom margin."
msgstr ""
"Нижнее поле полос прокрутки. При отрицательном значении используется нижнее "
"поле [theme_item panel]."

msgid ""
"The left margin of the horizontal scrollbar. When negative, uses [theme_item "
"panel] left margin."
msgstr ""
"Левое поле горизонтальной полосы прокрутки. При отрицательном значении "
"использует левое поле [theme_item panel]."

msgid ""
"The right margin of the scrollbars. When negative, uses [theme_item panel] "
"right margin."
msgstr ""
"Правое поле полос прокрутки. При отрицательном значении использует правое "
"поле [theme_item panel]."

msgid ""
"The top margin of the vertical scrollbar. When negative, uses [theme_item "
"panel] top margin."
msgstr ""
"Верхнее поле вертикальной полосы прокрутки. При отрицательном значении "
"использует верхнее поле [theme_item panel]."

msgid "The vertical separation of tree content and scrollbar."
msgstr "Вертикальное разделение содержимого дерева и полосы прокрутки."

msgid ""
"The vertical padding inside each item, i.e. the distance between the item's "
"content and top/bottom border."
msgstr ""
"Вертикальный отступ внутри каждого элемента, т. е. расстояние между "
"содержимым элемента и верхней/нижней границей."

msgid "[Font] of the title button's text."
msgstr "[Font] текста кнопки заголовка."

msgid "Font size of the title button's text."
msgstr "Размер шрифта текста кнопки заголовка."

msgid "The arrow icon used when a foldable item is not collapsed."
msgstr "Значок стрелки, используемый, когда складной элемент не свёрнут."

msgid ""
"The arrow icon used when a foldable item is collapsed (for left-to-right "
"layouts)."
msgstr ""
"Значок стрелки, используемый, когда складной элемент свёрнут (для макетов "
"слева направо)."

msgid ""
"The arrow icon used when a foldable item is collapsed (for right-to-left "
"layouts)."
msgstr ""
"Значок стрелки, используемый, когда сворачиваемый элемент свёрнут (для "
"макетов с направлением справа налево)."

msgid ""
"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
"cell is checked and editable (see [method TreeItem.set_editable])."
msgstr ""
"Значок галочки, отображаемый, когда ячейка режима [constant "
"TreeItem.CELL_MODE_CHECK] отмечена и доступна для редактирования (см. [method "
"TreeItem.set_editable])."

msgid ""
"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
"cell is checked and non-editable (see [method TreeItem.set_editable])."
msgstr ""
"Значок галочки, отображаемый, когда ячейка режима [constant "
"TreeItem.CELL_MODE_CHECK] отмечена и недоступна для редактирования (см. "
"[method TreeItem.set_editable])."

msgid ""
"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
"cell is indeterminate and editable (see [method TreeItem.set_editable])."
msgstr ""
"Значок галочки, отображаемый, когда ячейка режима [constant "
"TreeItem.CELL_MODE_CHECK] неопределена и доступна для редактирования (см. "
"[method TreeItem.set_editable])."

msgid ""
"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
"cell is indeterminate and non-editable (see [method TreeItem.set_editable])."
msgstr ""
"Значок галочки, отображаемый, когда ячейка режима [constant "
"TreeItem.CELL_MODE_CHECK] неопределена и недоступна для редактирования (см. "
"[method TreeItem.set_editable])."

msgid ""
"The arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] mode "
"cell."
msgstr ""
"Значок стрелки, отображаемый для ячейки режима [constant "
"TreeItem.CELL_MODE_RANGE]."

msgid ""
"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
"cell is unchecked and editable (see [method TreeItem.set_editable])."
msgstr ""
"Значок галочки, отображаемый, когда ячейка режима [constant "
"TreeItem.CELL_MODE_CHECK] не отмечена и доступна для редактирования (см. "
"[method TreeItem.set_editable])."

msgid ""
"The check icon to display when the [constant TreeItem.CELL_MODE_CHECK] mode "
"cell is unchecked and non-editable (see [method TreeItem.set_editable])."
msgstr ""
"Значок галочки, отображаемый, когда ячейка режима [constant "
"TreeItem.CELL_MODE_CHECK] не отмечена и недоступна для редактирования (см. "
"[method TreeItem.set_editable])."

msgid ""
"The updown arrow icon to display for the [constant TreeItem.CELL_MODE_RANGE] "
"mode cell."
msgstr ""
"Значок стрелки вверх-вниз, отображаемый для ячейки режима [constant "
"TreeItem.CELL_MODE_RANGE]."

msgid "[StyleBox] used when a button in the tree is hovered."
msgstr "[StyleBox] используется при наведении курсора на кнопку в дереве."

msgid "[StyleBox] used when a button in the tree is pressed."
msgstr "[StyleBox] используется при нажатии кнопки в дереве."

msgid "[StyleBox] used for the cursor, when the [Tree] is being focused."
msgstr "[StyleBox] используется для курсора, когда фокус находится на [Tree]."

msgid "[StyleBox] used for the cursor, when the [Tree] is not being focused."
msgstr ""
"[StyleBox] используется для курсора, когда [Tree] не находится в фокусе."

msgid ""
"Default [StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode cell when "
"button is enabled with [method TreeItem.set_custom_as_button]."
msgstr ""
"[StyleBox] по умолчанию для ячейки режима [constant "
"TreeItem.CELL_MODE_CUSTOM], когда кнопка включена с помощью [method "
"TreeItem.set_custom_as_button]."

msgid ""
"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode button cell when "
"it's hovered."
msgstr ""
"[StyleBox] для ячейки кнопки режима [constant TreeItem.CELL_MODE_CUSTOM] при "
"наведении на нее курсора."

msgid ""
"[StyleBox] for a [constant TreeItem.CELL_MODE_CUSTOM] mode button cell when "
"it's pressed."
msgstr ""
"[StyleBox] для ячейки кнопки режима [constant TreeItem.CELL_MODE_CUSTOM] при "
"нажатии."

msgid "The focused style for the [Tree], drawn on top of everything."
msgstr "Сфокусированный стиль для [Tree], нарисованного поверх всего."

msgid "[StyleBox] for the item being hovered, but not selected."
msgstr ""
"[StyleBox] для элемента, на который наведен курсор, но который не выбран."

msgid ""
"[StyleBox] for the item being hovered, while a button of the same item is "
"hovered as the same time."
msgstr ""
"[StyleBox] для элемента, на который наведен курсор, в то время как кнопка "
"того же элемента наводится курсором в то же время."

msgid ""
"[StyleBox] for the hovered and selected items, used when the [Tree] is not "
"being focused."
msgstr ""
"[StyleBox] для наведенных и выбранных элементов, используется, когда [Tree] "
"не находится в фокусе."

msgid ""
"[StyleBox] for the hovered and selected items, used when the [Tree] is being "
"focused."
msgstr ""
"[StyleBox] для наведенных и выбранных элементов, используется, когда фокус "
"находится на [Tree]."

msgid "The background style for the [Tree]."
msgstr "Стиль фона для [Tree]."

msgid ""
"[StyleBox] for the selected items, used when the [Tree] is not being focused."
msgstr ""
"[StyleBox] для выбранных элементов, используется, когда [Tree] не находится в "
"фокусе."

msgid ""
"[StyleBox] for the selected items, used when the [Tree] is being focused."
msgstr ""
"[StyleBox] для выбранных элементов, используется, когда фокус находится на "
"[Tree]."

msgid "[StyleBox] used when the title button is being hovered."
msgstr "[StyleBox] используется при наведении курсора на кнопку заголовка."

msgid "Default [StyleBox] for the title button."
msgstr "[StyleBox] по умолчанию для кнопки заголовка."

msgid "[StyleBox] used when the title button is being pressed."
msgstr "[StyleBox] используется при нажатии кнопки заголовка."

msgid "An internal control for a single item inside [Tree]."
msgstr "Внутренний control для одного элемента внутри [Tree]."

msgid ""
"A single item of a [Tree] control. It can contain other [TreeItem]s as "
"children, which allows it to create a hierarchy. It can also contain text and "
"buttons. [TreeItem] is not a [Node], it is internal to the [Tree].\n"
"To create a [TreeItem], use [method Tree.create_item] or [method "
"TreeItem.create_child]. To remove a [TreeItem], use [method Object.free].\n"
"[b]Note:[/b] The ID values used for buttons are 32-bit, unlike [int] which is "
"always 64-bit. They go from [code]-2147483648[/code] to [code]2147483647[/"
"code]."
msgstr ""
"Один элемент элемента управления [Tree]. Он может содержать другие [TreeItem] "
"в качестве дочерних элементов, что позволяет ему создавать иерархию. Он также "
"может содержать текст и кнопки. [TreeItem] не является [Node], он является "
"внутренним для [Tree].\n"
"Чтобы создать [TreeItem], используйте [method Tree.create_item] или [method "
"TreeItem.create_child]. Чтобы удалить [TreeItem], используйте [method "
"Object.free].\n"
"[b]Примечание:[/b] Значения идентификаторов, используемые для кнопок, "
"являются 32-битными, в отличие от [int], который всегда является 64-битным. "
"Они идут от [code]-2147483648[/code] до [code]2147483647[/code]."

msgid ""
"Adds a button with [Texture2D] [param button] to the end of the cell at "
"column [param column]. The [param id] is used to identify the button in the "
"according [signal Tree.button_clicked] signal and can be different from the "
"buttons index. If not specified, the next available index is used, which may "
"be retrieved by calling [method get_button_count] immediately before this "
"method. Optionally, the button can be [param disabled] and have a [param "
"tooltip_text]. [param description] is used as the button description for "
"assistive apps."
msgstr ""
"Добавляет кнопку с [Texture2D] [param button] в конец ячейки в столбце [param "
"column]. Параметр [param id] используется для идентификации кнопки в "
"соответствующем сигнале [signal Tree.button_clicked] и может отличаться от "
"индекса кнопки. Если не указан, используется следующий доступный индекс, "
"который можно получить, вызвав [method get_button_count] непосредственно "
"перед этим методом. При желании кнопка может быть [param disable] и иметь "
"[param tooltip_text]. [param description] используется в качестве описания "
"кнопки для вспомогательных приложений."

msgid ""
"Adds a previously unparented [TreeItem] as a direct child of this one. The "
"[param child] item must not be a part of any [Tree] or parented to any "
"[TreeItem]. See also [method remove_child]."
msgstr ""
"Добавляет ранее не имеющий родителя [TreeItem] как прямой потомок этого "
"элемента. Элемент [param child] не должен быть частью какого-либо [Tree] или "
"быть родителем какого-либо [TreeItem]. См. также [method remove_child]."

msgid ""
"Calls the [param method] on the actual TreeItem and its children recursively. "
"Pass parameters as a comma separated list."
msgstr ""
"Вызывает [param method] для фактического TreeItem и его потомков рекурсивно. "
"Передайте параметры в виде списка, разделенного запятыми."

msgid "Removes all buttons from all columns of this item."
msgstr "Удаляет все кнопки из всех столбцов этого элемента."

msgid "Resets the background color for the given column to default."
msgstr "Сбрасывает цвет фона для указанного столбца на значение по умолчанию."

msgid "Resets the color for the given column to default."
msgstr "Сбрасывает цвет указанного столбца на значение по умолчанию."

msgid ""
"Creates an item and adds it as a child.\n"
"The new item will be inserted as position [param index] (the default value "
"[code]-1[/code] means the last position), or it will be the last child if "
"[param index] is higher than the child count."
msgstr ""
"Создает элемент и добавляет его как дочерний элемент.\n"
"Новый элемент будет вставлен как позиция [param index] (значение по умолчанию "
"[code]-1[/code] означает последнюю позицию), или он будет последним дочерним "
"элементом, если [param index] больше количества дочерних элементов."

msgid "Deselects the given column."
msgstr "Отменяет выбор указанного столбца."

msgid ""
"Removes the button at index [param button_index] in column [param column]."
msgstr ""
"Удаляет кнопку с индексом [param button_index] в столбце [param column]."

msgid "Returns the column's auto translate mode."
msgstr "Возвращает режим автоматического перевода столбца."

msgid ""
"Returns the text autowrap mode in the given [param column]. By default it is "
"[constant TextServer.AUTOWRAP_OFF]."
msgstr ""
"Возвращает режим автопереноса текста в указанном [param column]. По умолчанию "
"это [constant TextServer.AUTOWRAP_OFF]."

msgid ""
"Returns the [Texture2D] of the button at index [param button_index] in column "
"[param column]."
msgstr ""
"Возвращает [Texture2D] кнопки с индексом [param button_index] в столбце "
"[param column]."

msgid ""
"Returns the button index if there is a button with ID [param id] in column "
"[param column], otherwise returns -1."
msgstr ""
"Возвращает индекс кнопки, если в столбце [param column] есть кнопка с "
"идентификатором [param id], в противном случае возвращает -1."

msgid ""
"Returns the color of the button with ID [param id] in column [param column]. "
"If the specified button does not exist, returns [constant Color.BLACK]."
msgstr ""
"Возвращает цвет кнопки с идентификатором [param id] в столбце [param column]. "
"Если указанная кнопка не существует, возвращает [constant Color.BLACK]."

msgid "Returns the number of buttons in column [param column]."
msgstr "Возвращает количество кнопок в столбце [param column]."

msgid ""
"Returns the ID for the button at index [param button_index] in column [param "
"column]."
msgstr ""
"Возвращает идентификатор кнопки с индексом [param button_index] в столбце "
"[param column]."

msgid ""
"Returns the tooltip text for the button at index [param button_index] in "
"column [param column]."
msgstr ""
"Возвращает текст всплывающей подсказки для кнопки с индексом [param "
"button_index] в столбце [param column]."

msgid "Returns the column's cell mode."
msgstr "Возвращает режим ячейки столбца."

msgid ""
"Returns a child item by its [param index] (see [method get_child_count]). "
"This method is often used for iterating all children of an item.\n"
"Negative indices access the children from the last one."
msgstr ""
"Возвращает дочерний элемент по его [param index] (см. [method "
"get_child_count]). Этот метод часто используется для итерации всех дочерних "
"элементов элемента.\n"
"Отрицательные индексы обращаются к дочерним элементам от последнего."

msgid "Returns the number of child items."
msgstr "Возвращает количество дочерних элементов."

msgid "Returns an array of references to the item's children."
msgstr "Возвращает массив ссылок на дочерние элементы элемента."

msgid "Returns the custom background color of column [param column]."
msgstr "Возвращает пользовательский цвет фона столбца [param column]."

msgid "Returns the custom color of column [param column]."
msgstr "Возвращает пользовательский цвет столбца [param column]."

msgid "Returns the custom callback of column [param column]."
msgstr "Возвращает пользовательский обратный вызов столбца [param column]."

msgid "Returns custom font used to draw text in the column [param column]."
msgstr ""
"Возвращает пользовательский шрифт, используемый для отрисовки текста в "
"столбце [param column]."

msgid "Returns custom font size used to draw text in the column [param column]."
msgstr ""
"Возвращает пользовательский размер шрифта, используемый для отрисовки текста "
"в столбце [param column]."

msgid "Returns the given column's description for assistive apps."
msgstr "Возвращает описание заданного столбца для вспомогательных приложений."

msgid "Returns [code]true[/code] if [code]expand_right[/code] is set."
msgstr "Возвращает [code]true[/code], если задано [code]expand_right[/code]."

msgid "Returns the TreeItem's first child."
msgstr "Возвращает первый дочерний элемент TreeItem."

msgid "Returns the given column's icon [Texture2D]. Error if no icon is set."
msgstr ""
"Возвращает значок указанного столбца [Texture2D]. Ошибка, если значок не "
"установлен."

msgid ""
"Returns the maximum allowed width of the icon in the given [param column]."
msgstr ""
"Возвращает максимально допустимую ширину значка в указанном [param column]."

msgid "Returns the [Color] modulating the column's icon."
msgstr "Возвращает [Color], модулирующий значок столбца."

msgid "Returns the given column's icon overlay [Texture2D]."
msgstr "Возвращает наложение значка указанного столбца [Texture2D]."

msgid "Returns the icon [Texture2D] region as [Rect2]."
msgstr "Возвращает область значка [Texture2D] как [Rect2]."

msgid ""
"Returns the node's order in the tree. For example, if called on the first "
"child item the position is [code]0[/code]."
msgstr ""
"Возвращает порядок узла в дереве. Например, если вызывается для первого "
"дочернего элемента, позиция будет [code]0[/code]."

msgid ""
"Returns the metadata value that was set for the given column using [method "
"set_metadata]."
msgstr ""
"Возвращает значение метаданных, которое было установлено для указанного "
"столбца с помощью [method set_metadata]."

msgid ""
"Returns the next sibling TreeItem in the tree or a [code]null[/code] object "
"if there is none."
msgstr ""
"Возвращает следующий родственный элемент TreeItem в дереве или объект "
"[code]null[/code], если такового нет."

msgid ""
"Returns the next TreeItem in the tree (in the context of a depth-first "
"search) or a [code]null[/code] object if there is none.\n"
"If [param wrap] is enabled, the method will wrap around to the first element "
"in the tree when called on the last element, otherwise it returns [code]null[/"
"code]."
msgstr ""
"Возвращает следующий TreeItem в дереве (в контексте поиска в глубину) или "
"объект [code]null[/code], если его нет.\n"
"Если включен [param wrap], метод перейдет к первому элементу в дереве при "
"вызове для последнего элемента, в противном случае он возвращает [code]null[/"
"code]."

msgid ""
"Returns the next visible TreeItem in the tree (in the context of a depth-"
"first search) or a [code]null[/code] object if there is none.\n"
"If [param wrap] is enabled, the method will wrap around to the first visible "
"element in the tree when called on the last visible element, otherwise it "
"returns [code]null[/code]."
msgstr ""
"Возвращает следующий видимый TreeItem в дереве (в контексте поиска в глубину) "
"или объект [code]null[/code], если его нет.\n"
"Если включен [param wrap], метод перейдет к первому видимому элементу в "
"дереве при вызове для последнего видимого элемента, в противном случае он "
"возвращает [code]null[/code]."

msgid ""
"Returns the parent TreeItem or a [code]null[/code] object if there is none."
msgstr ""
"Возвращает родительский TreeItem или объект [code]null[/code], если таковой "
"отсутствует."

msgid ""
"Returns the previous sibling TreeItem in the tree or a [code]null[/code] "
"object if there is none."
msgstr ""
"Возвращает предыдущий родственный элемент TreeItem в дереве или объект "
"[code]null[/code], если такового нет."

msgid ""
"Returns the previous TreeItem in the tree (in the context of a depth-first "
"search) or a [code]null[/code] object if there is none.\n"
"If [param wrap] is enabled, the method will wrap around to the last element "
"in the tree when called on the first visible element, otherwise it returns "
"[code]null[/code]."
msgstr ""
"Возвращает предыдущий TreeItem в дереве (в контексте поиска в глубину) или "
"объект [code]null[/code], если его нет.\n"
"Если включен [param wrap], метод будет переходить к последнему элементу в "
"дереве при вызове для первого видимого элемента, в противном случае он "
"возвращает [code]null[/code]."

msgid ""
"Returns the previous visible sibling TreeItem in the tree (in the context of "
"a depth-first search) or a [code]null[/code] object if there is none.\n"
"If [param wrap] is enabled, the method will wrap around to the last visible "
"element in the tree when called on the first visible element, otherwise it "
"returns [code]null[/code]."
msgstr ""
"Возвращает предыдущий видимый родственный элемент TreeItem в дереве (в "
"контексте поиска в глубину) или объект [code]null[/code], если его нет.\n"
"Если включен [param wrap], метод будет переходить к последнему видимому "
"элементу в дереве при вызове для первого видимого элемента, в противном "
"случае он возвращает [code]null[/code]."

msgid "Returns the value of a [constant CELL_MODE_RANGE] column."
msgstr "Возвращает значение столбца [constant CELL_MODE_RANGE]."

msgid ""
"Returns a dictionary containing the range parameters for a given column. The "
"keys are \"min\", \"max\", \"step\", and \"expr\"."
msgstr ""
"Возвращает словарь, содержащий параметры диапазона для заданного столбца. "
"Ключи: \"min\", \"max\", \"step\" и \"expr\"."

msgid "Returns the BiDi algorithm override set for this cell."
msgstr ""
"Возвращает переопределение алгоритма BiDi, установленное для этой ячейки."

msgid "Returns the additional BiDi options set for this cell."
msgstr ""
"Возвращает дополнительные параметры BiDi, установленные для этой ячейки."

msgid "Gets the suffix string shown after the column value."
msgstr "Получает строку суффикса, отображаемую после значения столбца."

msgid "Returns the given column's text."
msgstr "Возвращает текст указанного столбца."

msgid "Returns the given column's text alignment."
msgstr "Возвращает выравнивание текста указанного столбца."

msgid ""
"Returns the clipping behavior when the text exceeds the item's bounding "
"rectangle in the given [param column]. By default it is [constant "
"TextServer.OVERRUN_TRIM_ELLIPSIS]."
msgstr ""
"Возвращает поведение обрезки, когда текст выходит за пределы ограничивающего "
"прямоугольника элемента в указанном [param column]. По умолчанию это "
"[constant TextServer.OVERRUN_TRIM_ELLIPSIS]."

msgid "Returns the given column's tooltip text."
msgstr "Возвращает текст подсказки указанного столбца."

msgid "Returns the [Tree] that owns this TreeItem."
msgstr "Возвращает [Tree], которому принадлежит данный TreeItem."

msgid ""
"Returns [code]true[/code] if this [TreeItem], or any of its descendants, is "
"collapsed.\n"
"If [param only_visible] is [code]true[/code] it ignores non-visible "
"[TreeItem]s."
msgstr ""
"Возвращает [code]true[/code], если этот [TreeItem] или любой из его потомков "
"свернут.\n"
"Если [param only_visible] равен [code]true[/code], он игнорирует невидимые "
"[TreeItem]."

msgid ""
"Returns [code]true[/code] if the button at index [param button_index] for the "
"given [param column] is disabled."
msgstr ""
"Возвращает [code]true[/code], если кнопка с индексом [param button_index] для "
"указанного [param column] отключена."

msgid "Returns [code]true[/code] if the given [param column] is checked."
msgstr "Возвращает [code]true[/code], если указанный [param column] установлен."

msgid ""
"Returns [code]true[/code] if the cell was made into a button with [method "
"set_custom_as_button]."
msgstr ""
"Возвращает [code]true[/code], если ячейка была преобразована в кнопку с "
"помощью [method set_custom_as_button]."

msgid ""
"Returns [code]true[/code] if the given [param column] is multiline editable."
msgstr ""
"Возвращает [code]true[/code], если указанный [param column] является "
"многострочным редактируемым."

msgid "Returns [code]true[/code] if the given [param column] is editable."
msgstr ""
"Возвращает [code]true[/code], если указанный [param column] доступен для "
"редактирования."

msgid "Returns [code]true[/code] if the given [param column] is indeterminate."
msgstr "Возвращает[code]true[/code], если указанный [param column] неопределен."

msgid "Returns [code]true[/code] if the given [param column] is selectable."
msgstr ""
"Возвращает [code]true[/code], если указанный [param column] доступен для "
"выбора."

msgid "Returns [code]true[/code] if the given [param column] is selected."
msgstr "Возвращает [code]true[/code], если выбран указанный [param column]."

msgid ""
"Returns [code]true[/code] if [member visible] is [code]true[/code] and all "
"its ancestors are also visible."
msgstr ""
"Возвращает [code]true[/code], если [member visible] равен [code]true[/code] и "
"все его предки также видны."

msgid ""
"Moves this TreeItem right after the given [param item].\n"
"[b]Note:[/b] You can't move to the root or move the root."
msgstr ""
"Перемещает этот TreeItem сразу после указанного [param item].\n"
"[b]Примечание:[/b] Вы не можете перейти к корню или переместить корень."

msgid ""
"Moves this TreeItem right before the given [param item].\n"
"[b]Note:[/b] You can't move to the root or move the root."
msgstr ""
"Перемещает этот TreeItem прямо перед указанным [param item].\n"
"[b]Примечание:[/b] Вы не можете перейти к корню или переместить корень."

msgid ""
"Propagates this item's checked status to its children and parents for the "
"given [param column]. It is possible to process the items affected by this "
"method call by connecting to [signal Tree.check_propagated_to_item]. The "
"order that the items affected will be processed is as follows: the item "
"invoking this method, children of that item, and finally parents of that "
"item. If [param emit_signal] is [code]false[/code], then [signal "
"Tree.check_propagated_to_item] will not be emitted."
msgstr ""
"Распространяет отмеченный статус этого элемента на его дочерние и "
"родительские элементы для указанного [param column]. Можно обработать "
"элементы, затронутые вызовом этого метода, подключившись к [signal "
"Tree.check_propagated_to_item]. Порядок обработки затронутых элементов "
"следующий: элемент, вызывающий этот метод, дочерние элементы этого элемента "
"и, наконец, родительские элементы этого элемента. Если [param emit_signal] "
"равен [code]false[/code], то [signal Tree.check_propagated_to_item] не будет "
"передан."

msgid ""
"Removes the given child [TreeItem] and all its children from the [Tree]. Note "
"that it doesn't free the item from memory, so it can be reused later (see "
"[method add_child]). To completely remove a [TreeItem] use [method "
"Object.free].\n"
"[b]Note:[/b] If you want to move a child from one [Tree] to another, then "
"instead of removing and adding it manually you can use [method move_before] "
"or [method move_after]."
msgstr ""
"Удаляет заданный дочерний элемент [TreeItem] и все его дочерние элементы из "
"[Tree]. Обратите внимание, что это не освобождает элемент из памяти, поэтому "
"его можно использовать повторно позже (см. [method add_child]). Чтобы "
"полностью удалить [TreeItem], используйте [method Object.free].\n"
"[b]Примечание:[/b] Если вы хотите переместить дочерний элемент из одного "
"[Tree] в другой, то вместо того, чтобы удалять и добавлять его вручную, вы "
"можете использовать [method move_before] или [method move_after]."

msgid "Selects the given [param column]."
msgstr "Выбирает указанный [param column]."

msgid ""
"Sets the given column's auto translate mode to [param mode].\n"
"All columns use [constant Node.AUTO_TRANSLATE_MODE_INHERIT] by default, which "
"uses the same auto translate mode as the [Tree] itself."
msgstr ""
"Устанавливает режим автоматического перевода указанного столбца на [param "
"mode].\n"
"Все столбцы используют [constant Node.AUTO_TRANSLATE_MODE_INHERIT] по "
"умолчанию, который использует тот же режим автоматического перевода, что и "
"само [Tree]."

msgid ""
"Sets the autowrap mode in the given [param column]. If set to something other "
"than [constant TextServer.AUTOWRAP_OFF], the text gets wrapped inside the "
"cell's bounding rectangle."
msgstr ""
"Устанавливает режим автопереноса в указанном [param column]. Если установлено "
"значение, отличное от [constant TextServer.AUTOWRAP_OFF], текст переносится "
"внутрь ограничивающего прямоугольника ячейки."

msgid ""
"Sets the given column's button [Texture2D] at index [param button_index] to "
"[param button]."
msgstr ""
"Устанавливает кнопку указанного столбца [Texture2D] с индексом [param "
"button_index] в значение [param button]."

msgid ""
"Sets the given column's button color at index [param button_index] to [param "
"color]."
msgstr ""
"Устанавливает цвет кнопки указанного столбца с индексом [param button_index] "
"на [param color]."

msgid ""
"Sets the given column's button description at index [param button_index] for "
"assistive apps."
msgstr ""
"Устанавливает описание кнопки заданного столбца по индексу [param "
"button_index] для вспомогательных приложений."

msgid ""
"If [code]true[/code], disables the button at index [param button_index] in "
"the given [param column]."
msgstr ""
"Если [code]true[/code], отключает кнопку с индексом [param button_index] в "
"указанном [param column]."

msgid ""
"Sets the tooltip text for the button at index [param button_index] in the "
"given [param column]."
msgstr ""
"Устанавливает текст всплывающей подсказки для кнопки с индексом [param "
"button_index] в указанном [param column]."

msgid ""
"Sets the given column's cell mode to [param mode]. This determines how the "
"cell is displayed and edited."
msgstr ""
"Устанавливает режим ячейки указанного столбца на [param mode]. Это "
"определяет, как ячейка отображается и редактируется."

msgid ""
"If [param checked] is [code]true[/code], the given [param column] is checked. "
"Clears column's indeterminate status."
msgstr ""
"Если [param checked] равен [code]true[/code], указанный [param column] "
"отмечается. Очищает неопределенный статус столбца."

msgid ""
"Collapses or uncollapses this [TreeItem] and all the descendants of this item."
msgstr "Сворачивает или разворачивает этот [TreeItem] и всех его потомков."

msgid ""
"Makes a cell with [constant CELL_MODE_CUSTOM] display as a non-flat button "
"with a [StyleBox]."
msgstr ""
"Отображает ячейку с [constant CELL_MODE_CUSTOM] как неплоскую кнопку с "
"[StyleBox]."

msgid ""
"Sets the given column's custom background color and whether to just use it as "
"an outline."
msgstr ""
"Задает пользовательский цвет фона указанного столбца и указывает, "
"использовать ли его только в качестве контура."

msgid "Sets the given column's custom color."
msgstr "Устанавливает пользовательский цвет указанного столбца."

msgid "Use [method TreeItem.set_custom_draw_callback] instead."
msgstr "Вместо этого используйте [method TreeItem.set_custom_draw_callback]."

msgid ""
"Sets the given column's custom draw callback to the [param callback] method "
"on [param object].\n"
"The method named [param callback] should accept two arguments: the [TreeItem] "
"that is drawn and its position and size as a [Rect2]."
msgstr ""
"Устанавливает пользовательский обратный вызов отрисовки заданного столбца на "
"метод [param callback] на [param object].\n"
"Метод с именем [param callback] должен принимать два аргумента: "
"отрисовываемый [TreeItem] и его положение и размер как [Rect2]."

msgid ""
"Sets the given column's custom draw callback. Use an empty [Callable] ([code "
"skip-lint]Callable()[/code]) to clear the custom callback. The cell has to be "
"in [constant CELL_MODE_CUSTOM] to use this feature.\n"
"The [param callback] should accept two arguments: the [TreeItem] that is "
"drawn and its position and size as a [Rect2]."
msgstr ""
"Устанавливает пользовательский обратный вызов отрисовки заданного столбца. "
"Используйте пустой [Callable] ([code skip-lint]Callable()[/code]), чтобы "
"очистить пользовательский обратный вызов. Ячейка должна находиться в "
"[constant CELL_MODE_CUSTOM], чтобы использовать эту функцию.\n"
"[param callback] должен принимать два аргумента: [TreeItem], который "
"отрисовывается, и его положение и размер как [Rect2]."

msgid "Sets custom font used to draw text in the given [param column]."
msgstr ""
"Устанавливает пользовательский шрифт, используемый для отрисовки текста в "
"указанном [param column]."

msgid "Sets custom font size used to draw text in the given [param column]."
msgstr ""
"Устанавливает пользовательский размер шрифта, используемый для отрисовки "
"текста в указанном [param column]."

msgid "Sets the given column's description for assistive apps."
msgstr "Задает описание заданного столбца для вспомогательных приложений."

msgid ""
"If [param multiline] is [code]true[/code], the given [param column] is "
"multiline editable.\n"
"[b]Note:[/b] This option only affects the type of control ([LineEdit] or "
"[TextEdit]) that appears when editing the column. You can set multiline "
"values with [method set_text] even if the column is not multiline editable."
msgstr ""
"Если [param multiline] равно [code]true[/code], заданный [param column] "
"является многострочным редактируемым.\n"
"[b]Примечание:[/b] Этот параметр влияет только на тип элемента управления "
"([LineEdit] или [TextEdit]), который отображается при редактировании столбца. "
"Вы можете задать многострочные значения с помощью [method set_text], даже "
"если столбец не является многострочным редактируемым."

msgid ""
"If [param enabled] is [code]true[/code], the given [param column] is editable."
msgstr ""
"Если [param enabled] имеет значение [code]true[/code], указанный [param "
"column] можно редактировать."

msgid ""
"If [param enable] is [code]true[/code], the given [param column] is expanded "
"to the right."
msgstr ""
"Если [param enable] имеет значение [code]true[/code], указанный [param "
"column] расширяется вправо."

msgid ""
"Sets the given cell's icon [Texture2D]. If the cell is in [constant "
"CELL_MODE_ICON] mode, the icon is displayed in the center of the cell. "
"Otherwise, the icon is displayed before the cell's text. [constant "
"CELL_MODE_RANGE] does not display an icon."
msgstr ""
"Устанавливает значок заданной ячейки [Texture2D]. Если ячейка находится в "
"режиме [constant CELL_MODE_ICON], значок отображается в центре ячейки. В "
"противном случае значок отображается перед текстом ячейки. [constant "
"CELL_MODE_RANGE] не отображает значок."

msgid ""
"Sets the maximum allowed width of the icon in the given [param column]. This "
"limit is applied on top of the default size of the icon and on top of "
"[theme_item Tree.icon_max_width]. The height is adjusted according to the "
"icon's ratio."
msgstr ""
"Устанавливает максимально допустимую ширину значка в указанном [param "
"column]. Это ограничение применяется поверх размера значка по умолчанию и "
"поверх [theme_item Tree.icon_max_width]. Высота регулируется в соответствии с "
"соотношением значка."

msgid "Modulates the given column's icon with [param modulate]."
msgstr "Изменяет цвет значка указанного столбца с помощью [param modulate]."

msgid ""
"Sets the given cell's icon overlay [Texture2D]. The cell has to be in "
"[constant CELL_MODE_ICON] mode, and icon has to be set. Overlay is drawn on "
"top of icon, in the bottom left corner."
msgstr ""
"Устанавливает наложение значка заданной ячейки [Texture2D]. Ячейка должна "
"находиться в режиме [constant CELL_MODE_ICON], а значок должен быть "
"установлен. Наложение рисуется поверх значка, в нижнем левом углу."

msgid "Sets the given column's icon's texture region."
msgstr "Задает область текстуры значка указанного столбца."

msgid ""
"If [param indeterminate] is [code]true[/code], the given [param column] is "
"marked indeterminate.\n"
"[b]Note:[/b] If set [code]true[/code] from [code]false[/code], then column is "
"cleared of checked status."
msgstr ""
"Если [param indeterminate] равно [code]true[/code], данный [param column] "
"помечается как неопределенный.\n"
"[b]Примечание:[/b] Если установить [code]true[/code] из [code]false[/code], "
"то столбец очищается от проверенного статуса."

msgid ""
"Sets the metadata value for the given column, which can be retrieved later "
"using [method get_metadata]. This can be used, for example, to store a "
"reference to the original data."
msgstr ""
"Устанавливает значение метаданных для указанного столбца, которое может быть "
"получено позже с помощью [method get_metadata]. Это может быть использовано, "
"например, для хранения ссылки на исходные данные."

msgid "Sets the value of a [constant CELL_MODE_RANGE] column."
msgstr "Устанавливает значение столбца [constant CELL_MODE_RANGE]."

msgid ""
"Sets the range of accepted values for a column. The column must be in the "
"[constant CELL_MODE_RANGE] mode.\n"
"If [param expr] is [code]true[/code], the edit mode slider will use an "
"exponential scale as with [member Range.exp_edit]."
msgstr ""
"Устанавливает диапазон допустимых значений для столбца. Столбец должен "
"находиться в режиме [constant CELL_MODE_RANGE].\n"
"Если [param expr] равен [code]true[/code], ползунок режима редактирования "
"будет использовать экспоненциальную шкалу, как и в случае с [member "
"Range.exp_edit]."

msgid ""
"If [param selectable] is [code]true[/code], the given [param column] is "
"selectable."
msgstr ""
"Если [param selectable] равно [code]true[/code], то указанный [param column] "
"можно выбрать."

msgid ""
"Set BiDi algorithm override for the structured text. Has effect for cells "
"that display text."
msgstr ""
"Установить переопределение алгоритма BiDi для структурированного текста. "
"Действует для ячеек, отображающих текст."

msgid ""
"Set additional options for BiDi override. Has effect for cells that display "
"text."
msgstr ""
"Установить дополнительные параметры для переопределения BiDi. Действует для "
"ячеек, отображающих текст."

msgid ""
"Sets a string to be shown after a column's value (for example, a unit "
"abbreviation)."
msgstr ""
"Задает строку, которая будет отображаться после значения столбца (например, "
"аббревиатуру единицы измерения)."

msgid "Sets the given column's text value."
msgstr "Устанавливает текстовое значение указанного столбца."

msgid "Sets the given column's text alignment to [param text_alignment]."
msgstr ""
"Устанавливает выравнивание текста указанного столбца на [param "
"text_alignment]."

msgid ""
"Sets the clipping behavior when the text exceeds the item's bounding "
"rectangle in the given [param column]."
msgstr ""
"Устанавливает поведение обрезки, когда текст выходит за пределы "
"ограничивающего прямоугольника элемента в указанном [param column]."

msgid "Sets the given column's tooltip text."
msgstr "Задает текст подсказки для указанного столбца."

msgid ""
"Uncollapses all [TreeItem]s necessary to reveal this [TreeItem], i.e. all "
"ancestor [TreeItem]s."
msgstr ""
"Разворачивает все [TreeItem], необходимые для отображения этого [TreeItem], "
"т.е. все предки [TreeItem]."

msgid "If [code]true[/code], the TreeItem is collapsed."
msgstr "Если [code]true[/code], TreeItem сворачивается."

msgid "The custom minimum height."
msgstr "Минимальная высота, заданная пользователем."

msgid "If [code]true[/code], folding is disabled for this TreeItem."
msgstr "Если [code]true[/code], сворачивание для этого TreeItem отключено."

msgid ""
"If [code]true[/code], the [TreeItem] is visible (default).\n"
"Note that if a [TreeItem] is set to not be visible, none of its children will "
"be visible either."
msgstr ""
"Если [code]true[/code], [TreeItem] виден (по умолчанию).\n"
"Обратите внимание, что если [TreeItem] установлен как невидимый, ни один из "
"его дочерних элементов также не будет виден."

msgid ""
"Cell shows a string label, optionally with an icon. When editable, the text "
"can be edited using a [LineEdit], or a [TextEdit] popup if [method "
"set_edit_multiline] is used."
msgstr ""
"Ячейка показывает строковую метку, опционально со значком. Если текст "
"редактируемый, его можно редактировать с помощью [LineEdit] или всплывающего "
"окна [TextEdit], если используется [method set_edit_multiline]."

msgid ""
"Cell shows a checkbox, optionally with text and an icon. The checkbox can be "
"pressed, released, or indeterminate (via [method set_indeterminate]). The "
"checkbox can't be clicked unless the cell is editable."
msgstr ""
"Ячейка показывает флажок, опционально с текстом и значком. Флажок можно "
"нажать, отпустить или сделать неопределенным (через [method "
"set_indeterminate]). Флажок нельзя нажать, если ячейка не является "
"редактируемой."

msgid ""
"Cell shows a numeric range. When editable, it can be edited using a range "
"slider. Use [method set_range] to set the value and [method set_range_config] "
"to configure the range.\n"
"This cell can also be used in a text dropdown mode when you assign a text "
"with [method set_text]. Separate options with a comma, e.g. [code]"
"\"Option1,Option2,Option3\"[/code]."
msgstr ""
"Ячейка показывает числовой диапазон. Если он доступен для редактирования, его "
"можно редактировать с помощью ползунка диапазона. Используйте [method "
"set_range] для установки значения и [method set_range_config] для настройки "
"диапазона.\n"
"Эту ячейку также можно использовать в режиме раскрывающегося списка текста, "
"когда вы назначаете текст с помощью [method set_text]. Разделяйте параметры "
"запятыми, например, [code]\"Option1,Option2,Option3\"[/code]."

msgid ""
"Cell shows an icon. It can't be edited nor display text. The icon is always "
"centered within the cell."
msgstr ""
"Ячейка показывает значок. Его нельзя редактировать или отображать текст. "
"Значок всегда находится в центре ячейки."

msgid ""
"Cell shows as a clickable button. It will display an arrow similar to "
"[OptionButton], but doesn't feature a dropdown (for that you can use "
"[constant CELL_MODE_RANGE]). Clicking the button emits the [signal "
"Tree.item_edited] signal. The button is flat by default, you can use [method "
"set_custom_as_button] to display it with a [StyleBox].\n"
"This mode also supports custom drawing using [method "
"set_custom_draw_callback]."
msgstr ""
"Ячейка отображается как нажимаемая кнопка. Она будет отображать стрелку, "
"похожую на [OptionButton], но не имеет раскрывающегося списка (для этого вы "
"можете использовать [constant CELL_MODE_RANGE]). Нажатие кнопки испускает "
"сигнал [signal Tree.item_edited]. Кнопка по умолчанию плоская, вы можете "
"использовать [method set_custom_as_button], чтобы отобразить ее с "
"[StyleBox].\n"
"Этот режим также поддерживает пользовательское рисование с помощью [method "
"set_custom_draw_callback]."

msgid "Triangle geometry for efficient, physicsless intersection queries."
msgstr ""
"Геометрия треугольников для эффективных запросов на пересечения без учета "
"физики."

msgid ""
"Creates a bounding volume hierarchy (BVH) tree structure around triangle "
"geometry.\n"
"The triangle BVH tree can be used for efficient intersection queries without "
"involving a physics engine.\n"
"For example, this can be used in editor tools to select objects with complex "
"shapes based on the mouse cursor position.\n"
"[b]Performance:[/b] Creating the BVH tree for complex geometry is a slow "
"process and best done in a background thread."
msgstr ""
"Создает древовидную структуру иерархии ограничивающего объема (BVH) вокруг "
"геометрии треугольника.\n"
"Дерево BVH треугольника можно использовать для эффективных запросов "
"пересечения без привлечения физического движка.\n"
"Например, это можно использовать в инструментах редактора для выбора объектов "
"со сложной формой на основе положения курсора мыши.\n"
"[b]Производительность:[/b] Создание дерева BVH для сложной геометрии — "
"медленный процесс, и лучше всего его выполнять в фоновом потоке."

msgid ""
"Creates the BVH tree from an array of faces. Each 3 vertices of the input "
"[param faces] array represent one triangle (face).\n"
"Returns [code]true[/code] if the tree is successfully built, [code]false[/"
"code] otherwise."
msgstr ""
"Создает дерево BVH из массива граней. Каждые 3 вершины входного массива "
"[param faces] представляют один треугольник (грань).\n"
"Возвращает [code]true[/code], если дерево успешно построено, [code]false[/"
"code] в противном случае."

msgid ""
"Returns a copy of the geometry faces. Each 3 vertices of the array represent "
"one triangle (face)."
msgstr ""
"Возвращает копию граней геометрии. Каждые 3 вершины массива представляют один "
"треугольник (грань)."

msgid ""
"Tests for intersection with a ray starting at [param begin] and facing [param "
"dir] and extending toward infinity.\n"
"If an intersection with a triangle happens, returns a [Dictionary] with the "
"following fields:\n"
"[code]position[/code]: The position on the intersected triangle.\n"
"[code]normal[/code]: The normal of the intersected triangle.\n"
"[code]face_index[/code]: The index of the intersected triangle.\n"
"Returns an empty [Dictionary] if no intersection happens.\n"
"See also [method intersect_segment], which is similar but uses a finite-"
"length segment."
msgstr ""
"Проверяет пересечение с лучом, начинающимся в [param begin], направленным в "
"[param dir] и простирающимся в бесконечность.\n"
"Если происходит пересечение с треугольником, возвращает [Dictionary] со "
"следующими полями:\n"
"[code]position[/code]: Положение на пересекаемом треугольнике.\n"
"[code]normal[/code]: Нормаль пересекаемого треугольника.\n"
"[code]face_index[/code]: Индекс пересекаемого треугольника.\n"
"Возвращает пустой [Dictionary], если пересечения не происходит.\n"
"См. также [method intersect_segment], который похож, но использует сегмент "
"конечной длины."

msgid ""
"Tests for intersection with a segment going from [param begin] to [param "
"end].\n"
"If an intersection with a triangle happens returns a [Dictionary] with the "
"following fields:\n"
"[code]position[/code]: The position on the intersected triangle.\n"
"[code]normal[/code]: The normal of the intersected triangle.\n"
"[code]face_index[/code]: The index of the intersected triangle.\n"
"Returns an empty [Dictionary] if no intersection happens.\n"
"See also [method intersect_ray], which is similar but uses an infinite-length "
"ray."
msgstr ""
"Проверяет пересечение с сегментом, идущим от [param begin] до [param end].\n"
"Если пересечение с треугольником происходит, возвращает [Dictionary] со "
"следующими полями:\n"
"[code]position[/code]: Положение на пересекаемом треугольнике.\n"
"[code]normal[/code]: Нормаль пересекаемого треугольника.\n"
"[code]face_index[/code]: Индекс пересекаемого треугольника.\n"
"Возвращает пустой [Dictionary], если пересечения не происходит.\n"
"См. также [method intersect_ray], который похож, но использует луч "
"бесконечной длины."

msgid "Represents a straight tube-shaped [PrimitiveMesh] with variable width."
msgstr ""
"Представляет собой прямую трубчатую [PrimitiveMesh] с переменной шириной."

msgid ""
"[TubeTrailMesh] represents a straight tube-shaped mesh with variable width. "
"The tube is composed of a number of cylindrical sections, each with the same "
"[member section_length] and number of [member section_rings]. A [member "
"curve] is sampled along the total length of the tube, meaning that the curve "
"determines the radius of the tube along its length.\n"
"This primitive mesh is usually used for particle trails."
msgstr ""
"[TubeTrailMesh] представляет собой прямую трубчатую сетку с переменной "
"шириной. Трубка состоит из ряда цилиндрических секций, каждая из которых "
"имеет одинаковую [member section_length] и количество [member section_rings]. "
"[member curve] выбирается по всей длине трубки, что означает, что кривая "
"определяет радиус трубки по ее длине.\n"
"Эта примитивная сетка обычно используется для следов частиц."

msgid ""
"If [code]true[/code], generates a cap at the bottom of the tube. This can be "
"set to [code]false[/code] to speed up generation and rendering when the cap "
"is never seen by the camera."
msgstr ""
"Если [code]true[/code], генерирует колпачок в нижней части трубки. Это можно "
"установить на [code]false[/code], чтобы ускорить генерацию и рендеринг, когда "
"колпачок никогда не виден камере."

msgid ""
"If [code]true[/code], generates a cap at the top of the tube. This can be set "
"to [code]false[/code] to speed up generation and rendering when the cap is "
"never seen by the camera."
msgstr ""
"Если [code]true[/code], генерирует колпачок в верхней части трубки. Это можно "
"установить на [code]false[/code], чтобы ускорить генерацию и рендеринг, когда "
"колпачок никогда не виден камере."

msgid ""
"Determines the radius of the tube along its length. The radius of a "
"particular section ring is obtained by multiplying the baseline [member "
"radius] by the value of this curve at the given distance. For values smaller "
"than [code]0[/code], the faces will be inverted. Should be a unit [Curve]."
msgstr ""
"Определяет радиус трубы по ее длине. Радиус конкретного кольца сечения "
"получается путем умножения базовой линии [member radius] на значение этой "
"кривой на заданном расстоянии. Для значений, меньших [code]0[/code], грани "
"будут инвертированы. Должна быть единицей [Curve]."

msgid ""
"The number of sides on the tube. For example, a value of [code]5[/code] means "
"the tube will be pentagonal. Higher values result in a more detailed tube at "
"the cost of performance."
msgstr ""
"Количество сторон трубки. Например, значение [code]5[/code] означает, что "
"трубка будет пятиугольной. Более высокие значения приводят к более "
"детализированной трубке за счет производительности."

msgid ""
"The baseline radius of the tube. The radius of a particular section ring is "
"obtained by multiplying this radius by the value of the [member curve] at the "
"given distance."
msgstr ""
"Радиус базовой линии трубы. Радиус конкретного кольца сечения получается "
"путем умножения этого радиуса на значение [member curve] на заданном "
"расстоянии."

msgid "The length of a section of the tube."
msgstr "Длина участка трубы."

msgid ""
"The number of rings in a section. The [member curve] is sampled on each ring "
"to determine its radius. Higher values result in a more detailed tube at the "
"cost of performance."
msgstr ""
"Количество колец в секции. [member curve] выбирается на каждом кольце для "
"определения его радиуса. Более высокие значения приводят к более подробной "
"трубке за счет производительности."

msgid "The total number of sections on the tube."
msgstr "Общее количество секций на трубке."

msgid ""
"Lightweight object used for general-purpose animation via script, using "
"[Tweener]s."
msgstr ""
"Легкий объект, используемый для универсальной анимации через скрипт с "
"использованием [Tweener]."

msgid ""
"Tweens are mostly useful for animations requiring a numerical property to be "
"interpolated over a range of values. The name [i]tween[/i] comes from [i]in-"
"betweening[/i], an animation technique where you specify [i]keyframes[/i] and "
"the computer interpolates the frames that appear between them. Animating "
"something with a [Tween] is called tweening.\n"
"[Tween] is more suited than [AnimationPlayer] for animations where you don't "
"know the final values in advance. For example, interpolating a dynamically-"
"chosen camera zoom value is best done with a [Tween]; it would be difficult "
"to do the same thing with an [AnimationPlayer] node. Tweens are also more "
"light-weight than [AnimationPlayer], so they are very much suited for simple "
"animations or general tasks that don't require visual tweaking provided by "
"the editor. They can be used in a \"fire-and-forget\" manner for some logic "
"that normally would be done by code. You can e.g. make something shoot "
"periodically by using a looped [CallbackTweener] with a delay.\n"
"A [Tween] can be created by using either [method SceneTree.create_tween] or "
"[method Node.create_tween]. [Tween]s created manually (i.e. by using "
"[code]Tween.new()[/code]) are invalid and can't be used for tweening values.\n"
"A tween animation is created by adding [Tweener]s to the [Tween] object, "
"using [method tween_property], [method tween_interval], [method "
"tween_callback] or [method tween_method]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, 1.0)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), 1.0)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, 1.0f);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"This sequence will make the [code]$Sprite[/code] node turn red, then shrink, "
"before finally calling [method Node.queue_free] to free the sprite. "
"[Tweener]s are executed one after another by default. This behavior can be "
"changed using [method parallel] and [method set_parallel].\n"
"When a [Tweener] is created with one of the [code]tween_*[/code] methods, a "
"chained method call can be used to tweak the properties of this [Tweener]. "
"For example, if you want to set a different transition type in the above "
"example, you can use [method set_trans]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, "
"1.0).set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), "
"1.0).set_trans(Tween.TRANS_BOUNCE)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, "
"1.0f).SetTrans(Tween.TransitionType.Sine);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, "
"1.0f).SetTrans(Tween.TransitionType.Bounce);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Most of the [Tween] methods can be chained this way too. In the following "
"example the [Tween] is bound to the running script's node and a default "
"transition is set for its [Tweener]s:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = "
"get_tree().create_tween().bind_node(self).set_trans(Tween.TRANS_ELASTIC)\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, 1.0)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), 1.0)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"var tween = "
"GetTree().CreateTween().BindNode(this).SetTrans(Tween.TransitionType.Elastic);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, 1.0f);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Another interesting use for [Tween]s is animating arbitrary sets of objects:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"for sprite in get_children():\n"
"\ttween.tween_property(sprite, \"position\", Vector2(0, 0), 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"foreach (Node sprite in GetChildren())\n"
"\ttween.TweenProperty(sprite, \"position\", Vector2.Zero, 1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"In the example above, all children of a node are moved one after another to "
"position [code](0, 0)[/code].\n"
"You should avoid using more than one [Tween] per object's property. If two or "
"more tweens animate one property at the same time, the last one created will "
"take priority and assign the final value. If you want to interrupt and "
"restart an animation, consider assigning the [Tween] to a variable:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween\n"
"func animate():\n"
"\tif tween:\n"
"\t\ttween.kill() # Abort the previous animation.\n"
"\ttween = create_tween()\n"
"[/gdscript]\n"
"[csharp]\n"
"private Tween _tween;\n"
"\n"
"public void Animate()\n"
"{\n"
"\tif (_tween != null)\n"
"\t\t_tween.Kill(); // Abort the previous animation\n"
"\t_tween = CreateTween();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Some [Tweener]s use transitions and eases. The first accepts a [enum "
"TransitionType] constant, and refers to the way the timing of the animation "
"is handled (see [url=https://easings.net/]easings.net[/url] for some "
"examples). The second accepts an [enum EaseType] constant, and controls where "
"the [code]trans_type[/code] is applied to the interpolation (in the "
"beginning, the end, or both). If you don't know which transition and easing "
"to pick, you can try different [enum TransitionType] constants with [constant "
"EASE_IN_OUT], and use the one that looks best.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"tween_cheatsheet.webp]Tween easing and transition types cheatsheet[/url]\n"
"[b]Note:[/b] Tweens are not designed to be reused and trying to do so results "
"in an undefined behavior. Create a new Tween for each animation and every "
"time you replay an animation from start. Keep in mind that Tweens start "
"immediately, so only create a Tween when you want to start animating.\n"
"[b]Note:[/b] The tween is processed after all of the nodes in the current "
"frame, i.e. node's [method Node._process] method would be called before the "
"tween (or [method Node._physics_process] depending on the value passed to "
"[method set_process_mode])."
msgstr ""
"Tween, в основном, полезны для анимаций, требующих интерполяции числового "
"свойства по диапазону значений. Название [i]tween[/i] происходит от [i]in-"
"betweening[/i], техники анимации, при которой вы указываете [i]ключевые "
"кадры[/i], а компьютер интерполирует кадры, которые появляются между ними. "
"Анимация чего-либо с помощью [Tween] называется созданием промежуточных "
"кадров.\n"
"[Tween] больше подходит, чем [AnimationPlayer], для анимаций, где заранее "
"неизвестны конечные значения. Например, интерполяцию динамически выбранного "
"значения масштабирования камеры лучше всего осуществлять с помощью [Tween]; "
"сделать то же самое с помощью узла [AnimationPlayer] будет сложно. "
"Анимированные анимации также более легковесны, чем [AnimationPlayer], поэтому "
"они отлично подходят для простых анимаций или общих задач, не требующих "
"визуальной настройки, предоставляемой редактором. Их можно использовать по "
"принципу «запустил и забыл» для некоторой логики, которая обычно выполняется "
"с помощью кода. Например, можно заставить что-то периодически стрелять, "
"используя циклический [CallbackTweener] с задержкой.\n"
"[Tween] можно создать с помощью [method SceneTree.create_tween] или [method "
"Node.create_tween]. [Tween]-ы, созданные вручную (т. е. с помощью "
"[code]Tween.new()[/code]), недействительны и не могут использоваться для "
"значений tween.\n"
"Анимация перехода между кадрами создается путем добавления [Tweener] к "
"объекту [Tween] с помощью [method tween_property], [method tween_interval], "
"[method tween_callback] или [method tween_method]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, 1.0)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), 1.0)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, 1.0f);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Эта последовательность заставит узел [code]$Sprite[/code] стать красным, "
"затем уменьшиться, прежде чем наконец вызвать [method Node.queue_free] для "
"освобождения спрайта. По умолчанию [Tweener]-ы выполняются один за другим. "
"Это поведение можно изменить с помощью [method parallel] и [method "
"set_parallel].\n"
"Когда [Tweener] создается с помощью одного из методов [code]tween_*[/code], "
"можно использовать цепочку вызовов методов для настройки свойств этого "
"[Tweener]. Например, если вы хотите установить другой тип перехода в "
"приведенном выше примере, вы можете использовать [method set_trans]:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, "
"1.0).set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), "
"1.0).set_trans(Tween.TRANS_BOUNCE)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, "
"1.0f).SetTrans(Tween.TransitionType.Sine);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, "
"1.0f).SetTrans(Tween.TransitionType.Bounce);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Большинство методов [Tween] также можно объединить в цепочку подобным "
"образом. В следующем примере [Tween] привязан к узлу работающего скрипта, а "
"для его [Tweener]-ы установлены в переход по умолчанию:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = "
"get_tree().create_tween().bind_node(self).set_trans(Tween.TRANS_ELASTIC)\n"
"tween.tween_property($Sprite, \"modulate\", Color.RED, 1.0)\n"
"tween.tween_property($Sprite, \"scale\", Vector2(), 1.0)\n"
"tween.tween_callback($Sprite.queue_free)\n"
"[/gdscript]\n"
"[csharp]\n"
"var tween = "
"GetTree().CreateTween().BindNode(this).SetTrans(Tween.TransitionType.Elastic);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"modulate\", Colors.Red, 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"scale\", Vector2.Zero, 1.0f);\n"
"tween.TweenCallback(Callable.From(GetNode(\"Sprite\").QueueFree));\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Еще одно интересное применение [Tween]-ов — анимация произвольных наборов "
"объектов:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"for sprite in get_children():\n"
"\ttween.tween_property(sprite, \"position\", Vector2(0, 0), 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"foreach (Node sprite in GetChildren())\n"
"\ttween.TweenProperty(sprite, \"position\", Vector2.Zero, 1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"В приведенном выше примере все дочерние элементы узла перемещаются один за "
"другим в позицию [code](0, 0)[/code].\n"
"Следует избегать использования более одного [Tween] на одно свойство объекта. "
"Если два или более tweens одновременно анимируют одно свойство, то последний "
"созданный tween будет иметь приоритет и назначит окончательное значение. Если "
"вы хотите прервать и возобновить анимацию, рассмотрите возможность назначения "
"[Tween] переменной:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween\n"
"func animate():\n"
"\tif tween:\n"
"\t\ttween.kill() # Отменить предыдущую анимацию.\n"
"\ttween = create_tween()\n"
"[/gdscript]\n"
"[csharp]\n"
"private Tween _tween;\n"
"\n"
"public void Animate()\n"
"{\n"
"\tif (_tween != null)\n"
"\t\t_tween.Kill(); // Отменить предыдущую анимацию.\n"
"\t_tween = CreateTween();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Некоторые [Tweener]-ы используют переходы и замедления. Первый принимает "
"константу [enum TransitionType] и определяет способ обработки времени "
"анимации (см. [url=https://easings.net/]easings.net[/url] для некоторых "
"примеров). Второй принимает константу [enum EaseType] и управляет тем, где "
"[code]trans_type[/code] применяется к интерполяции (в начале, в конце или в "
"обоих случаях). Если вы не знаете, какой переход и замедление выбрать, вы "
"можете попробовать разные константы [enum TransitionType] с [constant "
"EASE_IN_OUT] и использовать ту, которая выглядит лучше всего.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"tween_cheatsheet.webp]Шпаргалка по типам анимации и переходов[/url]\n"
"[b]Примечание:[/b] Tween-ы не предназначены для повторного использования, и "
"попытка сделать это приводит к непредсказуемому поведению. Создавайте новый "
"Tween для каждой анимации и каждый раз, когда вы воспроизводите анимацию с "
"самого начала. Помните, что Tween-ы запускаются немедленно, поэтому "
"создавайте Tween только тогда, когда хотите начать анимацию.\n"
"[b]Примечание:[/b] Анимация обрабатывается после всех узлов в текущем кадре, "
"т.е. метод узла [method Node._process] будет вызван до анимации (или [method "
"Node._physics_process] в зависимости от значения, переданного в [method "
"set_process_mode])."

msgid ""
"Binds this [Tween] with the given [param node]. [Tween]s are processed "
"directly by the [SceneTree], so they run independently of the animated nodes. "
"When you bind a [Node] with the [Tween], the [Tween] will halt the animation "
"when the object is not inside tree and the [Tween] will be automatically "
"killed when the bound object is freed. Also [constant TWEEN_PAUSE_BOUND] will "
"make the pausing behavior dependent on the bound node.\n"
"For a shorter way to create and bind a [Tween], you can use [method "
"Node.create_tween]."
msgstr ""
"Связывает этот [Tween] с заданным [param node]. [Tween] обрабатываются "
"непосредственно [SceneTree], поэтому они запускаются независимо от "
"анимированных узлов. Когда вы связываете [Node] с [Tween], [Tween] остановит "
"анимацию, когда объект не находится внутри дерева, и [Tween] будет "
"автоматически завершен, когда связанный объект будет освобожден. Также "
"[constant TWEEN_PAUSE_BOUND] сделает поведение паузы зависимым от связанного "
"узла.\n"
"Для более короткого способа создания и привязки [Tween] вы можете "
"использовать [method Node.create_tween]."

msgid ""
"Used to chain two [Tweener]s after [method set_parallel] is called with "
"[code]true[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween().set_parallel(true)\n"
"tween.tween_property(...)\n"
"tween.tween_property(...) # Will run parallelly with above.\n"
"tween.chain().tween_property(...) # Will run after two above are finished.\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween().SetParallel(true);\n"
"tween.TweenProperty(...);\n"
"tween.TweenProperty(...); // Will run parallelly with above.\n"
"tween.Chain().TweenProperty(...); // Will run after two above are finished.\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Используется для связывания двух [Tweener] после вызова [method set_parallel] "
"с [code]true[/code].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween().set_parallel(true)\n"
"tween.tween_property(...)\n"
"tween.tween_property(...) # Будет работать параллельно с предыдущим.\n"
"tween.chain().tween_property(...) # Будет запущен после завершения двух "
"вышеуказанных действий.\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween().SetParallel(true);\n"
"tween.TweenProperty(...);\n"
"tween.TweenProperty(...); // Будет работать параллельно с предыдущим.\n"
"tween.Chain().TweenProperty(...); // Будет запущен после завершения двух "
"вышеуказанных действий.\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Processes the [Tween] by the given [param delta] value, in seconds. This is "
"mostly useful for manual control when the [Tween] is paused. It can also be "
"used to end the [Tween] animation immediately, by setting [param delta] "
"longer than the whole duration of the [Tween] animation.\n"
"Returns [code]true[/code] if the [Tween] still has [Tweener]s that haven't "
"finished."
msgstr ""
"Обрабатывает [Tween] по заданному значению [param delta] в секундах. Это в "
"основном полезно для ручного управления, когда [Tween] приостановлен. Его "
"также можно использовать для немедленного завершения анимации [Tween], "
"установив [param delta] больше, чем вся продолжительность анимации [Tween].\n"
"Возвращает [code]true[/code], если [Tween] все еще имеет [Tweener], которые "
"не были завершены."

msgid ""
"Returns the number of remaining loops for this [Tween] (see [method "
"set_loops]). A return value of [code]-1[/code] indicates an infinitely "
"looping [Tween], and a return value of [code]0[/code] indicates that the "
"[Tween] has already finished."
msgstr ""
"Возвращает количество оставшихся циклов для этого [Tween] (см. [method "
"set_loops]). Возвращаемое значение [code]-1[/code] указывает на бесконечно "
"зацикленный [Tween], а возвращаемое значение [code]0[/code] указывает на то, "
"что [Tween] уже завершен."

msgid ""
"Returns the total time in seconds the [Tween] has been animating (i.e. the "
"time since it started, not counting pauses etc.). The time is affected by "
"[method set_speed_scale], and [method stop] will reset it to [code]0[/code].\n"
"[b]Note:[/b] As it results from accumulating frame deltas, the time returned "
"after the [Tween] has finished animating will be slightly greater than the "
"actual [Tween] duration."
msgstr ""
"Возвращает общее время в секундах, в течение которого [Tween] анимировался "
"(т. е. время с момента начала, не считая пауз и т. д.). На время влияет "
"[method set_speed_scale], а [method stop] сбросит его до [code]0[/code].\n"
"[b]Примечание:[/b] Поскольку это происходит из-за накопления кадровых дельт, "
"время, возвращаемое после того, как [Tween] завершил анимацию, будет немного "
"больше фактической длительности [Tween]."

msgid ""
"This method can be used for manual interpolation of a value, when you don't "
"want [Tween] to do animating for you. It's similar to [method "
"@GlobalScope.lerp], but with support for custom transition and easing.\n"
"[param initial_value] is the starting value of the interpolation.\n"
"[param delta_value] is the change of the value in the interpolation, i.e. "
"it's equal to [code]final_value - initial_value[/code].\n"
"[param elapsed_time] is the time in seconds that passed after the "
"interpolation started and it's used to control the position of the "
"interpolation. E.g. when it's equal to half of the [param duration], the "
"interpolated value will be halfway between initial and final values. This "
"value can also be greater than [param duration] or lower than 0, which will "
"extrapolate the value.\n"
"[param duration] is the total time of the interpolation.\n"
"[b]Note:[/b] If [param duration] is equal to [code]0[/code], the method will "
"always return the final value, regardless of [param elapsed_time] provided."
msgstr ""
"Этот метод можно использовать для ручной интерполяции значения, когда вы не "
"хотите, чтобы [Tween] выполнял анимацию за вас. Он похож на [method "
"@GlobalScope.lerp], но с поддержкой настраиваемого перехода и смягчения.\n"
"[param initial_value] — начальное значение интерполяции.\n"
"[param delta_value] — изменение значения при интерполяции, т. е. оно равно "
"[code]final_value - initial_value[/code].\n"
"[param elapsed_time] — время в секундах, прошедшее после начала интерполяции, "
"и оно используется для управления положением интерполяции. Например, когда "
"оно равно половине [param duration], интерполированное значение будет "
"находиться посередине между начальным и конечным значениями. Это значение "
"также может быть больше [param duration] или меньше 0, что приведет к "
"экстраполяции значения.\n"
"[param duration] — общее время интерполяции.\n"
"[b]Примечание:[/b] Если [param duration] равен [code]0[/code], метод всегда "
"будет возвращать конечное значение, независимо от предоставленного [param "
"elapsed_time]."

msgid ""
"Returns whether the [Tween] is currently running, i.e. it wasn't paused and "
"it's not finished."
msgstr ""
"Возвращает, выполняется ли в данный момент [Tween], т.е. не приостановлен ли "
"он и не завершен ли."

msgid ""
"Returns whether the [Tween] is valid. A valid [Tween] is a [Tween] contained "
"by the scene tree (i.e. the array from [method "
"SceneTree.get_processed_tweens] will contain this [Tween]). A [Tween] might "
"become invalid when it has finished tweening, is killed, or when created with "
"[code]Tween.new()[/code]. Invalid [Tween]s can't have [Tweener]s appended."
msgstr ""
"Возвращает, является ли [Tween] допустимым. Допустимый [Tween] — это [Tween], "
"содержащийся в дереве сцены (т. е. массив из [method "
"SceneTree.get_processed_tweens] будет содержать этот [Tween]). [Tween] может "
"стать недопустимым после завершения tween, уничтожения или при создании с "
"помощью [code]Tween.new()[/code]. Недопустимые [Tween] не могут иметь "
"добавленных [Tweener]."

msgid "Aborts all tweening operations and invalidates the [Tween]."
msgstr ""
"Прерывает все операции по созданию промежуточных кадров и делает [Tween] "
"недействительным."

msgid ""
"Makes the next [Tweener] run parallelly to the previous one.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property(...)\n"
"tween.parallel().tween_property(...)\n"
"tween.parallel().tween_property(...)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(...);\n"
"tween.Parallel().TweenProperty(...);\n"
"tween.Parallel().TweenProperty(...);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"All [Tweener]s in the example will run at the same time.\n"
"You can make the [Tween] parallel by default by using [method set_parallel]."
msgstr ""
"Заставляет следующий [Tweener] работать параллельно предыдущему.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property(...)\n"
"tween.parallel().tween_property(...)\n"
"tween.parallel().tween_property(...)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(...);\n"
"tween.Parallel().TweenProperty(...);\n"
"tween.Parallel().TweenProperty(...);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Все [Tween]-ы в примере будут запущены одновременно.\n"
"Вы можете сделать [Tween] параллельным по умолчанию, используя [method "
"set_parallel]."

msgid ""
"Pauses the tweening. The animation can be resumed by using [method play].\n"
"[b]Note:[/b] If a Tween is paused and not bound to any node, it will exist "
"indefinitely until manually started or invalidated. If you lose a reference "
"to such Tween, you can retrieve it using [method "
"SceneTree.get_processed_tweens]."
msgstr ""
"Приостанавливает tween. Анимацию можно возобновить с помощью [method play].\n"
"[b]Примечание:[/b] Если Tween приостановлен и не привязан ни к одному узлу, "
"он будет существовать бесконечно, пока не будет запущен вручную или не станет "
"недействительным. Если вы потеряете ссылку на такой Tween, вы можете "
"восстановить его с помощью [method SceneTree.get_processed_tweens]."

msgid "Resumes a paused or stopped [Tween]."
msgstr "Возобновляет приостановленный или остановленный [Tween]."

msgid ""
"Sets the default ease type for [PropertyTweener]s and [MethodTweener]s "
"appended after this method.\n"
"Before this method is called, the default ease type is [constant "
"EASE_IN_OUT].\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5) # Uses "
"EASE_IN_OUT.\n"
"tween.set_ease(Tween.EASE_IN)\n"
"tween.tween_property(self, \"rotation_degrees\", 45.0, 0.5) # Uses EASE_IN.\n"
"[/codeblock]"
msgstr ""
"Устанавливает тип плавности по умолчанию для [PropertyTweener] и "
"[MethodTweener], добавленных после этого метода.\n"
"Перед вызовом этого метода тип плавности по умолчанию — [constant "
"EASE_IN_OUT].\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5) # Использует "
"EASE_IN_OUT.\n"
"tween.set_ease(Tween.EASE_IN)\n"
"tween.tween_property(self, \"rotation_degrees\", 45.0, 0.5) # Использует "
"EASE_IN.\n"
"[/codeblock]"

msgid ""
"If [param ignore] is [code]true[/code], the tween will ignore [member "
"Engine.time_scale] and update with the real, elapsed time. This affects all "
"[Tweener]s and their delays. Default value is [code]false[/code]."
msgstr ""
"Если [param ignore] равен [code]true[/code], твин будет игнорировать [member "
"Engine.time_scale] и обновляться с реальным, прошедшим временем. Это влияет "
"на все [Tweener] и их задержки. Значение по умолчанию — [code]false[/code]."

msgid ""
"Sets the number of times the tweening sequence will be repeated, i.e. "
"[code]set_loops(2)[/code] will run the animation twice.\n"
"Calling this method without arguments will make the [Tween] run infinitely, "
"until either it is killed with [method kill], the [Tween]'s bound node is "
"freed, or all the animated objects have been freed (which makes further "
"animation impossible).\n"
"[b]Warning:[/b] Make sure to always add some duration/delay when using "
"infinite loops. To prevent the game freezing, 0-duration looped animations "
"(e.g. a single [CallbackTweener] with no delay) are stopped after a small "
"number of loops, which may produce unexpected results. If a [Tween]'s "
"lifetime depends on some node, always use [method bind_node]."
msgstr ""
"Устанавливает количество повторений последовательности tween, т. е. "
"[code]set_loops(2)[/code] запустит анимацию дважды.\n"
"Вызов этого метода без аргументов заставит [Tween] работать бесконечно, пока "
"он не будет убит с помощью [method kill], связанный узел [Tween] не будет "
"освобожден или все анимированные объекты не будут освобождены (что делает "
"дальнейшую анимацию невозможной).\n"
"[b]Предупреждение:[/b] Обязательно всегда добавляйте некоторую длительность/"
"задержку при использовании бесконечных циклов. Чтобы предотвратить зависание "
"игры, циклические анимации с нулевой длительностью (например, один "
"[CallbackTweener] без задержки) останавливаются после небольшого количества "
"циклов, что может привести к неожиданным результатам. Если время жизни "
"[Tween] зависит от какого-либо узла, всегда используйте [method bind_node]."

msgid ""
"If [param parallel] is [code]true[/code], the [Tweener]s appended after this "
"method will by default run simultaneously, as opposed to sequentially.\n"
"[b]Note:[/b] Just like with [method parallel], the tweener added right before "
"this method will also be part of the parallel step.\n"
"[codeblock]\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5)\n"
"tween.set_parallel()\n"
"tween.tween_property(self, \"modulate\", Color.GREEN, 0.5) # Runs together "
"with the position tweener.\n"
"[/codeblock]"
msgstr ""
"Если [param parallel] равен [code]true[/code], то [Tweener], добавленный "
"после этого метода, по умолчанию будет выполняться одновременно, а не "
"последовательно.\n"
"[b]Примечание:[/b] Как и в случае с [method parallel], tweener, добавленный "
"непосредственно перед этим методом, также будет частью параллельного шага.\n"
"[codeblock]\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5)\n"
"tween.set_parallel()\n"
"tween.tween_property(self, \"modulate\", Color.GREEN, 0.5) # Работает вместе "
"с позиционным твином.\n"
"[/codeblock]"

msgid ""
"Determines the behavior of the [Tween] when the [SceneTree] is paused.\n"
"Default value is [constant TWEEN_PAUSE_BOUND]."
msgstr ""
"Определяет поведение [Tween], когда [SceneTree] приостановлен.\n"
"Значение по умолчанию — [constant TWEEN_PAUSE_BOUND]."

msgid ""
"Determines whether the [Tween] should run after process frames (see [method "
"Node._process]) or physics frames (see [method Node._physics_process]).\n"
"Default value is [constant TWEEN_PROCESS_IDLE]."
msgstr ""
"Определяет, должен ли [Tween] запускаться после кадров процесса (см. [method "
"Node._process]) или кадров физики (см. [method Node._physics_process]).\n"
"Значение по умолчанию — [constant TWEEN_PROCESS_IDLE]."

msgid ""
"Scales the speed of tweening. This affects all [Tweener]s and their delays."
msgstr ""
"Масштабирует скорость tweening. Это влияет на все [Tweener] и их задержки."

msgid ""
"Sets the default transition type for [PropertyTweener]s and [MethodTweener]s "
"appended after this method.\n"
"Before this method is called, the default transition type is [constant "
"TRANS_LINEAR].\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5) # Uses "
"TRANS_LINEAR.\n"
"tween.set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property(self, \"rotation_degrees\", 45.0, 0.5) # Uses "
"TRANS_SINE.\n"
"[/codeblock]"
msgstr ""
"Устанавливает тип перехода по умолчанию для [PropertyTweener] и "
"[MethodTweener], добавленных после этого метода.\n"
"Перед вызовом этого метода тип перехода по умолчанию — [constant "
"TRANS_LINEAR].\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position\", Vector2(300, 0), 0.5) # Использует "
"TRANS_LINEAR.\n"
"tween.set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property(self, \"rotation_degrees\", 45.0, 0.5) # Использует "
"TRANS_SINE.\n"
"[/codeblock]"

msgid ""
"Stops the tweening and resets the [Tween] to its initial state. This will not "
"remove any appended [Tweener]s.\n"
"[b]Note:[/b] This does [i]not[/i] reset targets of [PropertyTweener]s to "
"their values when the [Tween] first started.\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"\n"
"# Will move from 0 to 500 over 1 second.\n"
"position.x = 0.0\n"
"tween.tween_property(self, \"position:x\", 500, 1.0)\n"
"\n"
"# Will be at (about) 250 when the timer finishes.\n"
"await get_tree().create_timer(0.5).timeout\n"
"\n"
"# Will now move from (about) 250 to 500 over 1 second,\n"
"# thus at half the speed as before.\n"
"tween.stop()\n"
"tween.play()\n"
"[/codeblock]\n"
"[b]Note:[/b] If a Tween is stopped and not bound to any node, it will exist "
"indefinitely until manually started or invalidated. If you lose a reference "
"to such Tween, you can retrieve it using [method "
"SceneTree.get_processed_tweens]."
msgstr ""
"Останавливает tweening и сбрасывает [Tween] в его начальное состояние. Это не "
"удалит никакие добавленные [Tweener].\n"
"[b]Примечание:[/b] Это [i]не[/i] сбрасывает цели [PropertyTweener] к их "
"значениям, когда [Tween] был запущен впервые.\n"
"[codeblock]\n"
"var tween = create_tween()\n"
"\n"
"# Будет изменяться от 0 до 500 за 1 секунду.\n"
"position.x = 0.0\n"
"tween.tween_property(self, \"position:x\", 500, 1.0)\n"
"\n"
"# Когда таймер закончит отсчет, будет (примерно) 250.\n"
"await get_tree().create_timer(0.5).timeout\n"
"\n"
"# Теперь будет двигаться от (примерно) 250 до 500 за 1 секунду,\n"
"# таким образом, с половинной скоростью, чем раньше.\n"
"tween.stop()\n"
"tween.play()\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Если Tween остановлен и не привязан ни к одному узлу, он "
"будет существовать бесконечно, пока не будет запущен вручную или не станет "
"недействительным. Если вы потеряете ссылку на такой Tween, вы можете "
"восстановить его с помощью [method SceneTree.get_processed_tweens]."

msgid ""
"Creates and appends a [CallbackTweener]. This method can be used to call an "
"arbitrary method in any object. Use [method Callable.bind] to bind additional "
"arguments for the call.\n"
"[b]Example:[/b] Object that keeps shooting every 1 second:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween().set_loops()\n"
"tween.tween_callback(shoot).set_delay(1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween().SetLoops();\n"
"tween.TweenCallback(Callable.From(Shoot)).SetDelay(1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Turning a sprite red and then blue, with 2 second delay:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_callback($Sprite.set_modulate.bind(Color.RED)).set_delay(2)\n"
"tween.tween_callback($Sprite.set_modulate.bind(Color.BLUE)).set_delay(2)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"Sprite2D sprite = GetNode<Sprite2D>(\"Sprite\");\n"
"tween.TweenCallback(Callable.From(() => sprite.Modulate = "
"Colors.Red)).SetDelay(2.0f);\n"
"tween.TweenCallback(Callable.From(() => sprite.Modulate = "
"Colors.Blue)).SetDelay(2.0f);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает и добавляет [CallbackTweener]. Этот метод можно использовать для "
"вызова произвольного метода в любом объекте. Используйте [method "
"Callable.bind] для привязки дополнительных аргументов для вызова.\n"
"[b]Пример:[/b] Объект, который продолжает стрелять каждую секунду:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween().set_loops()\n"
"tween.tween_callback(shoot).set_delay(1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween().SetLoops();\n"
"tween.TweenCallback(Callable.From(Shoot)).SetDelay(1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Пример:[/b] Окрашиваем спрайт в красный, а затем в синий цвет с задержкой "
"в 2 секунды:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = get_tree().create_tween()\n"
"tween.tween_callback($Sprite.set_modulate.bind(Color.RED)).set_delay(2)\n"
"tween.tween_callback($Sprite.set_modulate.bind(Color.BLUE)).set_delay(2)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = GetTree().CreateTween();\n"
"Sprite2D sprite = GetNode<Sprite2D>(\"Sprite\");\n"
"tween.TweenCallback(Callable.From(() => sprite.Modulate = "
"Colors.Red)).SetDelay(2.0f);\n"
"tween.TweenCallback(Callable.From(() => sprite.Modulate = "
"Colors.Blue)).SetDelay(2.0f);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Creates and appends an [IntervalTweener]. This method can be used to create "
"delays in the tween animation, as an alternative to using the delay in other "
"[Tweener]s, or when there's no animation (in which case the [Tween] acts as a "
"timer). [param time] is the length of the interval, in seconds.\n"
"[b]Example:[/b] Creating an interval in code execution:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# ... some code\n"
"await create_tween().tween_interval(2).finished\n"
"# ... more code\n"
"[/gdscript]\n"
"[csharp]\n"
"// ... some code\n"
"await ToSignal(CreateTween().TweenInterval(2.0f), "
"Tween.SignalName.Finished);\n"
"// ... more code\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Creating an object that moves back and forth and jumps every "
"few seconds:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween().set_loops()\n"
"tween.tween_property($Sprite, \"position:x\", 200.0, 1.0).as_relative()\n"
"tween.tween_callback(jump)\n"
"tween.tween_interval(2)\n"
"tween.tween_property($Sprite, \"position:x\", -200.0, 1.0).as_relative()\n"
"tween.tween_callback(jump)\n"
"tween.tween_interval(2)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween().SetLoops();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position:x\", 200.0f, "
"1.0f).AsRelative();\n"
"tween.TweenCallback(Callable.From(Jump));\n"
"tween.TweenInterval(2.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position:x\", -200.0f, "
"1.0f).AsRelative();\n"
"tween.TweenCallback(Callable.From(Jump));\n"
"tween.TweenInterval(2.0f);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает и добавляет [IntervalTweener]. Этот метод можно использовать для "
"создания задержек в анимации tween, как альтернативу использованию задержки в "
"других [Tween] или когда нет анимации (в этом случае [Tween] действует как "
"таймер). [param time] — это длина интервала в секундах.\n"
"[b]Пример:[/b] Создание интервала при выполнении кода:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# ... какой-то код\n"
"await create_tween().tween_interval(2).finished\n"
"# ... больше кода\n"
"[/gdscript]\n"
"[csharp]\n"
"// ... какой-то код\n"
"await ToSignal(CreateTween().TweenInterval(2.0f), "
"Tween.SignalName.Finished);\n"
"// ... больше кода\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Пример:[/b] Создание объекта, который движется вперед и назад и прыгает "
"каждые несколько секунд:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween().set_loops()\n"
"tween.tween_property($Sprite, \"position:x\", 200.0, 1.0).as_relative()\n"
"tween.tween_callback(jump)\n"
"tween.tween_interval(2)\n"
"tween.tween_property($Sprite, \"position:x\", -200.0, 1.0).as_relative()\n"
"tween.tween_callback(jump)\n"
"tween.tween_interval(2)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween().SetLoops();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position:x\", 200.0f, "
"1.0f).AsRelative();\n"
"tween.TweenCallback(Callable.From(Jump));\n"
"tween.TweenInterval(2.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position:x\", -200.0f, "
"1.0f).AsRelative();\n"
"tween.TweenCallback(Callable.From(Jump));\n"
"tween.TweenInterval(2.0f);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Creates and appends a [MethodTweener]. This method is similar to a "
"combination of [method tween_callback] and [method tween_property]. It calls "
"a method over time with a tweened value provided as an argument. The value is "
"tweened between [param from] and [param to] over the time specified by [param "
"duration], in seconds. Use [method Callable.bind] to bind additional "
"arguments for the call. You can use [method MethodTweener.set_ease] and "
"[method MethodTweener.set_trans] to tweak the easing and transition of the "
"value or [method MethodTweener.set_delay] to delay the tweening.\n"
"[b]Example:[/b] Making a 3D object look from one point to another point:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_method(look_at.bind(Vector3.UP), Vector3(-1, 0, -1), Vector3(1, "
"0, -1), 1.0) # The look_at() method takes up vector as second argument.\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenMethod(Callable.From((Vector3 target) => LookAt(target, "
"Vector3.Up)), new Vector3(-1.0f, 0.0f, -1.0f), new Vector3(1.0f, 0.0f, "
"-1.0f), 1.0f); // Use lambdas to bind additional arguments for the call.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Example:[/b] Setting the text of a [Label], using an intermediate method "
"and after a delay:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar tween = create_tween()\n"
"\ttween.tween_method(set_label_text, 0, 10, 1.0).set_delay(1.0)\n"
"\n"
"func set_label_text(value: int):\n"
"\t$Label.text = \"Counting \" + str(value)\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tbase._Ready();\n"
"\n"
"\tTween tween = CreateTween();\n"
"\ttween.TweenMethod(Callable.From<int>(SetLabelText), 0.0f, 10.0f, "
"1.0f).SetDelay(1.0f);\n"
"}\n"
"\n"
"private void SetLabelText(int value)\n"
"{\n"
"\tGetNode<Label>(\"Label\").Text = $\"Counting {value}\";\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает и добавляет [MethodTweener]. Этот метод похож на комбинацию [method "
"tween_callback] и [method tween_property]. Он вызывает метод с течением "
"времени с tween-значением, предоставленным в качестве аргумента. Значение "
"tween-значение между [param from] и [param to] в течение времени, указанного "
"[param duration] в секундах. Используйте [method Callable.bind], чтобы "
"привязать дополнительные аргументы для вызова. Вы можете использовать [method "
"MethodTweener.set_ease] и [method MethodTweener.set_trans], чтобы настроить "
"смягчение и переход значения или [method MethodTweener.set_delay], чтобы "
"задержать tween-значение.\n"
"[b]Пример:[/b] Заставить 3D-объект смотреть из одной точки в другую:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_method(look_at.bind(Vector3.UP), Vector3(-1, 0, -1), Vector3(1, "
"0, -1), 1.0) # Метод look_at() принимает вектор в качестве второго "
"аргумента.\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenMethod(Callable.From((Vector3 target) => LookAt(target, "
"Vector3.Up)), new Vector3(-1.0f, 0.0f, -1.0f), new Vector3(1.0f, 0.0f, "
"-1.0f), 1.0f); // Используйте лямбда-выражения для привязки дополнительных "
"аргументов к вызову.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Пример:[/b] Установка текста [Label] с использованием промежуточного "
"метода и после задержки:\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"\tvar tween = create_tween()\n"
"\ttween.tween_method(set_label_text, 0, 10, 1.0).set_delay(1.0)\n"
"\n"
"func set_label_text(value: int):\n"
"\t$Label.text = \"Counting \" + str(value)\n"
"[/gdscript]\n"
"[csharp]\n"
"public override void _Ready()\n"
"{\n"
"\tbase._Ready();\n"
"\n"
"\tTween tween = CreateTween();\n"
"\ttween.TweenMethod(Callable.From<int>(SetLabelText), 0.0f, 10.0f, "
"1.0f).SetDelay(1.0f);\n"
"}\n"
"\n"
"private void SetLabelText(int value)\n"
"{\n"
"\tGetNode<Label>(\"Label\").Text = $\"Counting {value}\";\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Creates and appends a [PropertyTweener]. This method tweens a [param "
"property] of an [param object] between an initial value and [param final_val] "
"in a span of time equal to [param duration], in seconds. The initial value by "
"default is the property's value at the time the tweening of the "
"[PropertyTweener] starts.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property($Sprite, \"position\", Vector2(100, 200), 1.0)\n"
"tween.tween_property($Sprite, \"position\", Vector2(200, 300), 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", new Vector2(100.0f, "
"200.0f), 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", new Vector2(200.0f, "
"300.0f), 1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"will move the sprite to position (100, 200) and then to (200, 300). If you "
"use [method PropertyTweener.from] or [method PropertyTweener.from_current], "
"the starting position will be overwritten by the given value instead. See "
"other methods in [PropertyTweener] to see how the tweening can be tweaked "
"further.\n"
"[b]Note:[/b] You can find the correct property name by hovering over the "
"property in the Inspector. You can also provide the components of a property "
"directly by using [code]\"property:component\"[/code] (eg. [code]position:x[/"
"code]), where it would only apply to that particular component.\n"
"[b]Example:[/b] Moving an object twice from the same position, with different "
"transition types:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property($Sprite, \"position\", Vector2.RIGHT * 300, "
"1.0).as_relative().set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property($Sprite, \"position\", Vector2.RIGHT * 300, "
"1.0).as_relative().from_current().set_trans(Tween.TRANS_EXPO)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", Vector2.Right * "
"300.0f, 1.0f).AsRelative().SetTrans(Tween.TransitionType.Sine);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", Vector2.Right * "
"300.0f, "
"1.0f).AsRelative().FromCurrent().SetTrans(Tween.TransitionType.Expo);\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Создает и добавляет [PropertyTweener]. Этот метод делает промежуток между "
"[param property] [param object] между начальным значением и [param final_val] "
"в течение промежутка времени, равного [param duration] в секундах. Начальным "
"значением по умолчанию является значение свойства в момент начала "
"промежуточного твина [PropertyTweener].\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property($Sprite, \"position\", Vector2(100, 200), 1.0)\n"
"tween.tween_property($Sprite, \"position\", Vector2(200, 300), 1.0)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", new Vector2(100.0f, "
"200.0f), 1.0f);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", new Vector2(200.0f, "
"300.0f), 1.0f);\n"
"[/csharp]\n"
"[/codeblocks]\n"
"переместит спрайт в позицию (100, 200), а затем в (200, 300). Если вы "
"используете [method PropertyTweener.from] или [method "
"PropertyTweener.from_current], начальная позиция будет перезаписана заданным "
"значением. Смотрите другие методы в [PropertyTweener], чтобы увидеть, как "
"можно дополнительно настроить анимацию.\n"
"[b]Примечание:[/b] Вы можете найти правильное имя свойства, наведя курсор на "
"свойство в Инспекторе. Вы также можете указать компоненты свойства напрямую, "
"используя [code]\"property:component\"[/code] (например, [code]position:x[/"
"code]), где это будет применяться только к этому конкретному компоненту.\n"
"[b]Пример:[/b] Перемещение объекта дважды из одной и той же позиции с разными "
"типами перехода:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var tween = create_tween()\n"
"tween.tween_property($Sprite, \"position\", Vector2.RIGHT * 300, "
"1.0).as_relative().set_trans(Tween.TRANS_SINE)\n"
"tween.tween_property($Sprite, \"position\", Vector2.RIGHT * 300, "
"1.0).as_relative().from_current().set_trans(Tween.TRANS_EXPO)\n"
"[/gdscript]\n"
"[csharp]\n"
"Tween tween = CreateTween();\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", Vector2.Right * "
"300.0f, 1.0f).AsRelative().SetTrans(Tween.TransitionType.Sine);\n"
"tween.TweenProperty(GetNode(\"Sprite\"), \"position\", Vector2.Right * "
"300.0f, "
"1.0f).AsRelative().FromCurrent().SetTrans(Tween.TransitionType.Expo);\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Creates and appends a [SubtweenTweener]. This method can be used to nest "
"[param subtween] within this [Tween], allowing for the creation of more "
"complex and composable sequences.\n"
"[codeblock]\n"
"# Subtween will rotate the object.\n"
"var subtween = create_tween()\n"
"subtween.tween_property(self, \"rotation_degrees\", 45.0, 1.0)\n"
"subtween.tween_property(self, \"rotation_degrees\", 0.0, 1.0)\n"
"\n"
"# Parent tween will execute the subtween as one of its steps.\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position:x\", 500, 3.0)\n"
"tween.tween_subtween(subtween)\n"
"tween.tween_property(self, \"position:x\", 300, 2.0)\n"
"[/codeblock]\n"
"[b]Note:[/b] The methods [method pause], [method stop], and [method "
"set_loops] can cause the parent [Tween] to get stuck on the subtween step; "
"see the documentation for those methods for more information.\n"
"[b]Note:[/b] The pause and process modes set by [method set_pause_mode] and "
"[method set_process_mode] on [param subtween] will be overridden by the "
"parent [Tween]'s settings."
msgstr ""
"Создает и добавляет [SubtweenTweener]. Этот метод можно использовать для "
"вложения [param subtween] в этот [Tween], что позволяет создавать более "
"сложные и компонуемые последовательности.\n"
"[codeblock]\n"
"# Subtween вращает объект.\n"
"var subtween = create_tween()\n"
"subtween.tween_property(self, \"rotation_degrees\", 45.0, 1.0)\n"
"subtween.tween_property(self, \"rotation_degrees\", 0.0, 1.0)\n"
"\n"
"# Родительский tween выполнит subtween как один из своих шагов.\n"
"var tween = create_tween()\n"
"tween.tween_property(self, \"position:x\", 500, 3.0)\n"
"tween.tween_subtween(subtween)\n"
"tween.tween_property(self, \"position:x\", 300, 2.0)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Методы [method pause], [method stop] и [method set_loops] "
"могут привести к тому, что родительский [Tween] застрянет на шаге subtween; "
"для получения дополнительной информации см. документацию по этим методам.\n"
"[b]Примечание:[/b] Режимы паузы и обработки, установленные [method "
"set_pause_mode] и [method set_process_mode] в [param subtween], будут "
"переопределены настройками родительского [Tween]."

msgid ""
"Emitted when the [Tween] has finished all tweening. Never emitted when the "
"[Tween] is set to infinite looping (see [method set_loops])."
msgstr ""
"Срабатывает, когда [Tween] завершил все промежуточные кадры. Никогда не "
"срабатывает, когда [Tween] установлен на бесконечный цикл (см. [method "
"set_loops])."

msgid ""
"Emitted when a full loop is complete (see [method set_loops]), providing the "
"loop index. This signal is not emitted after the final loop, use [signal "
"finished] instead for this case."
msgstr ""
"Срабатывает при завершении полного цикла (см. [method set_loops]), "
"предоставляя индекс цикла. Этот сигнал не срабатывает после последнего цикла, "
"вместо этого используйте [signal finished] для этого случая."

msgid ""
"Emitted when one step of the [Tween] is complete, providing the step index. "
"One step is either a single [Tweener] or a group of [Tweener]s running in "
"parallel."
msgstr ""
"Срабатывает, когда один шаг [Tween] завершен, предоставляя индекс шага. Один "
"шаг — это либо один [Tweener], либо группа [Tweener], работающих параллельно."

msgid ""
"The [Tween] updates after each physics frame (see [method "
"Node._physics_process])."
msgstr ""
"[Tween] обновляется после каждого физического кадра (см. [method "
"Node._physics_process])."

msgid ""
"The [Tween] updates after each process frame (see [method Node._process])."
msgstr ""
"[Tween] обновляется после каждого кадра процесса (см. [method Node._process])."

msgid ""
"If the [Tween] has a bound node, it will process when that node can process "
"(see [member Node.process_mode]). Otherwise it's the same as [constant "
"TWEEN_PAUSE_STOP]."
msgstr ""
"Если [Tween] имеет связанный узел, то он будет обрабатываться, когда этот "
"узел тоже может обрабатываться (см. [member Node.process_mode]). В противном "
"случае это то же самое, что и [constant TWEEN_PAUSE_STOP]."

msgid "If [SceneTree] is paused, the [Tween] will also pause."
msgstr "Если [SceneTree] приостановлен, [Tween] также будет приостановлен."

msgid "The [Tween] will process regardless of whether [SceneTree] is paused."
msgstr ""
"[Tween] будет обрабатываться независимо от того, приостановлено ли "
"[SceneTree]."

msgid "The animation is interpolated linearly."
msgstr "Анимация интерполируется линейно."

msgid "The animation is interpolated using a sine function."
msgstr "Анимация интерполируется с использованием синусоидальной функции."

msgid ""
"The animation is interpolated with a quintic (to the power of 5) function."
msgstr "Анимация интерполируется с помощью функции пятой степени."

msgid ""
"The animation is interpolated with a quartic (to the power of 4) function."
msgstr "Анимация интерполируется с помощью функции четвертой степени."

msgid ""
"The animation is interpolated with a quadratic (to the power of 2) function."
msgstr "Анимация интерполируется с помощью квадратичной (в степени 2) функции."

msgid ""
"The animation is interpolated with an exponential (to the power of x) "
"function."
msgstr ""
"Анимация интерполируется с помощью экспоненциальной (в степени x) функции."

msgid ""
"The animation is interpolated with elasticity, wiggling around the edges."
msgstr "Анимация интерполирована с эластичностью, покачиваясь по краям."

msgid "The animation is interpolated with a cubic (to the power of 3) function."
msgstr "Анимация интерполируется с помощью кубической (в степени 3) функции."

msgid "The animation is interpolated with a function using square roots."
msgstr ""
"Анимация интерполируется с помощью функции, использующей квадратные корни."

msgid "The animation is interpolated by bouncing at the end."
msgstr "Анимация интерполируется путем подпрыгивания в конце."

msgid "The animation is interpolated backing out at ends."
msgstr "Анимация интерполируется с отходом назад на концах."

msgid "The animation is interpolated like a spring towards the end."
msgstr "Анимация к концу интерполируется подобно пружине."

msgid "The interpolation starts slowly and speeds up towards the end."
msgstr "Интерполяция начинается медленно и ускоряется к концу."

msgid "The interpolation starts quickly and slows down towards the end."
msgstr "Интерполяция начинается быстро и замедляется к концу."

msgid ""
"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
"interpolation is slowest at both ends."
msgstr ""
"Комбинация [constant EASE_IN] и [constant EASE_OUT]. Интерполяция самая "
"медленная на обоих концах."

msgid ""
"A combination of [constant EASE_IN] and [constant EASE_OUT]. The "
"interpolation is fastest at both ends."
msgstr ""
"Комбинация [constant EASE_IN] и [constant EASE_OUT]. Интерполяция выполняется "
"быстрее всего на обоих концах."

msgid "Abstract class for all Tweeners used by [Tween]."
msgstr "Абстрактный класс для всех Tweener, используемых в [Tween]."

msgid ""
"Tweeners are objects that perform a specific animating task, e.g. "
"interpolating a property or calling a method at a given time. A [Tweener] "
"can't be created manually, you need to use a dedicated method from [Tween]."
msgstr ""
"Tweeners — это объекты, которые выполняют определенную анимационную задачу, "
"например интерполируют свойство или вызывают метод в заданное время. "
"[Tweener] нельзя создать вручную, нужно использовать специальный метод из "
"[Tween]."

msgid ""
"Emitted when the [Tweener] has just finished its job or became invalid (e.g. "
"due to a freed object)."
msgstr ""
"Генерируется, когда [Tweener] только что завершил свою работу или стал "
"недействительным (например, из-за освобожденного объекта)."

msgid "Helper class to implement a UDP server."
msgstr "Вспомогательный класс для реализации UDP-сервера."

msgid ""
"A simple server that opens a UDP socket and returns connected [PacketPeerUDP] "
"upon receiving new packets. See also [method PacketPeerUDP.connect_to_host].\n"
"After starting the server ([method listen]), you will need to [method poll] "
"it at regular intervals (e.g. inside [method Node._process]) for it to "
"process new packets, delivering them to the appropriate [PacketPeerUDP], and "
"taking new connections.\n"
"Below a small example of how it can be used:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# server_node.gd\n"
"class_name ServerNode\n"
"extends Node\n"
"\n"
"var server = UDPServer.new()\n"
"var peers = []\n"
"\n"
"func _ready():\n"
"\tserver.listen(4242)\n"
"\n"
"func _process(delta):\n"
"\tserver.poll() # Important!\n"
"\tif server.is_connection_available():\n"
"\t\tvar peer = server.take_connection()\n"
"\t\tvar packet = peer.get_packet()\n"
"\t\tprint(\"Accepted peer: %s:%s\" % [peer.get_packet_ip(), "
"peer.get_packet_port()])\n"
"\t\tprint(\"Received data: %s\" % [packet.get_string_from_utf8()])\n"
"\t\t# Reply so it knows we received the message.\n"
"\t\tpeer.put_packet(packet)\n"
"\t\t# Keep a reference so we can keep contacting the remote peer.\n"
"\t\tpeers.append(peer)\n"
"\n"
"\tfor i in range(0, peers.size()):\n"
"\t\tpass # Do something with the connected peers.\n"
"[/gdscript]\n"
"[csharp]\n"
"// ServerNode.cs\n"
"using Godot;\n"
"using System.Collections.Generic;\n"
"\n"
"public partial class ServerNode : Node\n"
"{\n"
"\tprivate UdpServer _server = new UdpServer();\n"
"\tprivate List<PacketPeerUdp> _peers  = new List<PacketPeerUdp>();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_server.Listen(4242);\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\t_server.Poll(); // Important!\n"
"\t\tif (_server.IsConnectionAvailable())\n"
"\t\t{\n"
"\t\t\tPacketPeerUdp peer = _server.TakeConnection();\n"
"\t\t\tbyte[] packet = peer.GetPacket();\n"
"\t\t\tGD.Print($\"Accepted Peer: {peer.GetPacketIP()}:{peer.GetPacketPort()}"
"\");\n"
"\t\t\tGD.Print($\"Received Data: {packet.GetStringFromUtf8()}\");\n"
"\t\t\t// Reply so it knows we received the message.\n"
"\t\t\tpeer.PutPacket(packet);\n"
"\t\t\t// Keep a reference so we can keep contacting the remote peer.\n"
"\t\t\t_peers.Add(peer);\n"
"\t\t}\n"
"\t\tforeach (var peer in _peers)\n"
"\t\t{\n"
"\t\t\t// Do something with the peers.\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[codeblocks]\n"
"[gdscript]\n"
"# client_node.gd\n"
"class_name ClientNode\n"
"extends Node\n"
"\n"
"var udp = PacketPeerUDP.new()\n"
"var connected = false\n"
"\n"
"func _ready():\n"
"\tudp.connect_to_host(\"127.0.0.1\", 4242)\n"
"\n"
"func _process(delta):\n"
"\tif !connected:\n"
"\t\t# Try to contact server\n"
"\t\tudp.put_packet(\"The answer is... 42!\".to_utf8_buffer())\n"
"\tif udp.get_available_packet_count() > 0:\n"
"\t\tprint(\"Connected: %s\" % udp.get_packet().get_string_from_utf8())\n"
"\t\tconnected = true\n"
"[/gdscript]\n"
"[csharp]\n"
"// ClientNode.cs\n"
"using Godot;\n"
"\n"
"public partial class ClientNode : Node\n"
"{\n"
"\tprivate PacketPeerUdp _udp = new PacketPeerUdp();\n"
"\tprivate bool _connected = false;\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_udp.ConnectToHost(\"127.0.0.1\", 4242);\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\tif (!_connected)\n"
"\t\t{\n"
"\t\t\t// Try to contact server\n"
"\t\t\t_udp.PutPacket(\"The Answer Is..42!\".ToUtf8Buffer());\n"
"\t\t}\n"
"\t\tif (_udp.GetAvailablePacketCount() > 0)\n"
"\t\t{\n"
"\t\t\tGD.Print($\"Connected: {_udp.GetPacket().GetStringFromUtf8()}\");\n"
"\t\t\t_connected = true;\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Простой сервер, который открывает сокет UDP и возвращает подключенный "
"[PacketPeerUDP] при получении новых пакетов. См. также [method "
"PacketPeerUDP.connect_to_host].\n"
"После запуска сервера ([method listen]) вам нужно будет [method poll] его "
"через регулярные интервалы (например, внутри [method Node._process]), чтобы "
"он обрабатывал новые пакеты, доставляя их в соответствующий [PacketPeerUDP] и "
"принимая новые соединения.\n"
"Ниже приведен небольшой пример того, как его можно использовать:\n"
"[codeblocks]\n"
"[gdscript]\n"
"# server_node.gd\n"
"class_name ServerNode\n"
"extends Node\n"
"\n"
"var server = UDPServer.new()\n"
"var peers = []\n"
"\n"
"func _ready():\n"
"\tserver.listen(4242)\n"
"\n"
"func _process(delta):\n"
"\tserver.poll() # Важный!\n"
"\tif server.is_connection_available():\n"
"\t\tvar peer = server.take_connection()\n"
"\t\tvar packet = peer.get_packet()\n"
"\t\tprint(\"Accepted peer: %s:%s\" % [peer.get_packet_ip(), "
"peer.get_packet_port()])\n"
"\t\tprint(\"Received data: %s\" % [packet.get_string_from_utf8()])\n"
"\t\t# Ответьте, чтобы он знал, что мы получили сообщение.\n"
"\t\tpeer.put_packet(packet)\n"
"\t\t# Сохраните ссылку, чтобы мы могли продолжать связываться с удаленным "
"партнером.\n"
"\t\tpeers.append(peer)\n"
"\n"
"\tfor i in range(0, peers.size()):\n"
"\t\tpass # Сделайте что-нибудь с подключенными пирами.\n"
"[/gdscript]\n"
"[csharp]\n"
"// ServerNode.cs\n"
"using Godot;\n"
"using System.Collections.Generic;\n"
"\n"
"public partial class ServerNode : Node\n"
"{\n"
"\tprivate UdpServer _server = new UdpServer();\n"
"\tprivate List<PacketPeerUdp> _peers  = new List<PacketPeerUdp>();\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_server.Listen(4242);\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\t_server.Poll(); // Важный!\n"
"\t\tif (_server.IsConnectionAvailable())\n"
"\t\t{\n"
"\t\t\tPacketPeerUdp peer = _server.TakeConnection();\n"
"\t\t\tbyte[] packet = peer.GetPacket();\n"
"\t\t\tGD.Print($\"Accepted Peer: {peer.GetPacketIP()}:{peer.GetPacketPort()}"
"\");\n"
"\t\t\tGD.Print($\"Received Data: {packet.GetStringFromUtf8()}\");\n"
"\t\t\t// Ответьте, чтобы он знал, что мы получили сообщение.\n"
"\t\t\tpeer.PutPacket(packet);\n"
"\t\t\t// Сохраните ссылку, чтобы мы могли продолжать связываться с удаленным "
"партнером.\n"
"\t\t\t_peers.Add(peer);\n"
"\t\t}\n"
"\t\tforeach (var peer in _peers)\n"
"\t\t{\n"
"\t\t\t// Сделайте что-нибудь с подключенными пирами.\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[codeblocks]\n"
"[gdscript]\n"
"# client_node.gd\n"
"class_name ClientNode\n"
"extends Node\n"
"\n"
"var udp = PacketPeerUDP.new()\n"
"var connected = false\n"
"\n"
"func _ready():\n"
"\tudp.connect_to_host(\"127.0.0.1\", 4242)\n"
"\n"
"func _process(delta):\n"
"\tif !connected:\n"
"\t\t# Попробуйте связаться с сервером\n"
"\t\tudp.put_packet(\"The answer is... 42!\".to_utf8_buffer())\n"
"\tif udp.get_available_packet_count() > 0:\n"
"\t\tprint(\"Connected: %s\" % udp.get_packet().get_string_from_utf8())\n"
"\t\tconnected = true\n"
"[/gdscript]\n"
"[csharp]\n"
"// ClientNode.cs\n"
"using Godot;\n"
"\n"
"public partial class ClientNode : Node\n"
"{\n"
"\tprivate PacketPeerUdp _udp = new PacketPeerUdp();\n"
"\tprivate bool _connected = false;\n"
"\n"
"\tpublic override void _Ready()\n"
"\t{\n"
"\t\t_udp.ConnectToHost(\"127.0.0.1\", 4242);\n"
"\t}\n"
"\n"
"\tpublic override void _Process(double delta)\n"
"\t{\n"
"\t\tif (!_connected)\n"
"\t\t{\n"
"\t\t\t// Попробуйте связаться с сервером\n"
"\t\t\t_udp.PutPacket(\"The Answer Is..42!\".ToUtf8Buffer());\n"
"\t\t}\n"
"\t\tif (_udp.GetAvailablePacketCount() > 0)\n"
"\t\t{\n"
"\t\t\tGD.Print($\"Connected: {_udp.GetPacket().GetStringFromUtf8()}\");\n"
"\t\t\t_connected = true;\n"
"\t\t}\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns [code]true[/code] if a packet with a new address/port combination was "
"received on the socket."
msgstr ""
"Возвращает [code]true[/code], если на сокете был получен пакет с новой "
"комбинацией адреса/порта."

msgid "Returns [code]true[/code] if the socket is open and listening on a port."
msgstr "Возвращает [code]true[/code], если сокет открыт и прослушивает порт."

msgid ""
"Starts the server by opening a UDP socket listening on the given [param "
"port]. You can optionally specify a [param bind_address] to only listen for "
"packets sent to that address. See also [method PacketPeerUDP.bind]."
msgstr ""
"Запускает сервер, открывая сокет UDP, прослушивающий указанный [param port]. "
"Вы можете дополнительно указать [param bind_address], чтобы прослушивать "
"только пакеты, отправленные на этот адрес. См. также [method "
"PacketPeerUDP.bind]."

msgid ""
"Call this method at regular intervals (e.g. inside [method Node._process]) to "
"process new packets. Any packet from a known address/port pair will be "
"delivered to the appropriate [PacketPeerUDP], while any packet received from "
"an unknown address/port pair will be added as a pending connection (see "
"[method is_connection_available] and [method take_connection]). The maximum "
"number of pending connections is defined via [member max_pending_connections]."
msgstr ""
"Вызывайте этот метод через регулярные интервалы (например, внутри [method "
"Node._process]) для обработки новых пакетов. Любой пакет из известной пары "
"адрес/порт будет доставлен в соответствующий [PacketPeerUDP], тогда как любой "
"пакет, полученный из неизвестной пары адрес/порт, будет добавлен как "
"ожидающее соединение (см. [method is_connection_available] и [method "
"take_connection]). Максимальное количество ожидающих соединений определяется "
"через [member max_pending_connections]."

msgid ""
"Stops the server, closing the UDP socket if open. Will close all connected "
"[PacketPeerUDP] accepted via [method take_connection] (remote peers will not "
"be notified)."
msgstr ""
"Останавливает сервер, закрывая сокет UDP, если он открыт. Закроет все "
"подключенные [PacketPeerUDP], принятые через [method take_connection] "
"(удаленные пиры не будут уведомлены)."

msgid ""
"Returns the first pending connection (connected to the appropriate address/"
"port). Will return [code]null[/code] if no new connection is available. See "
"also [method is_connection_available], [method PacketPeerUDP.connect_to_host]."
msgstr ""
"Возвращает первое ожидающее соединение (подключенное к соответствующему "
"адресу/порту). Возвращает [code]null[/code], если новое соединение "
"недоступно. См. также [method is_connection_available], [method "
"PacketPeerUDP.connect_to_host]."

msgid ""
"Define the maximum number of pending connections, during [method poll], any "
"new pending connection exceeding that value will be automatically dropped. "
"Setting this value to [code]0[/code] effectively prevents any new pending "
"connection to be accepted (e.g. when all your players have connected)."
msgstr ""
"Определите максимальное количество ожидающих подключений, во время [method "
"poll], любое новое ожидающее подключение, превышающее это значение, будет "
"автоматически сброшено. Установка этого значения на [code]0[/code] фактически "
"предотвращает принятие любого нового ожидающего подключения (например, когда "
"все ваши игроки подключились)."

msgid ""
"Provides a high-level interface for implementing undo and redo operations."
msgstr ""
"Предоставляет высокоуровневый интерфейс для реализации операций отмены и "
"повтора."

msgid ""
"UndoRedo works by registering methods and property changes inside "
"\"actions\". You can create an action, then provide ways to do and undo this "
"action using function calls and property changes, then commit the action.\n"
"When an action is committed, all of the [code]do_*[/code] methods will run. "
"If the [method undo] method is used, the [code]undo_*[/code] methods will "
"run. If the [method redo] method is used, once again, all of the [code]do_*[/"
"code] methods will run.\n"
"Here's an example on how to add an action:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var undo_redo = UndoRedo.new()\n"
"\n"
"func do_something():\n"
"\tpass # Put your code here.\n"
"\n"
"func undo_something():\n"
"\tpass # Put here the code that reverts what's done by \"do_something()\".\n"
"\n"
"func _on_my_button_pressed():\n"
"\tvar node = get_node(\"MyNode2D\")\n"
"\tundo_redo.create_action(\"Move the node\")\n"
"\tundo_redo.add_do_method(do_something)\n"
"\tundo_redo.add_undo_method(undo_something)\n"
"\tundo_redo.add_do_property(node, \"position\", Vector2(100, 100))\n"
"\tundo_redo.add_undo_property(node, \"position\", node.position)\n"
"\tundo_redo.commit_action()\n"
"[/gdscript]\n"
"[csharp]\n"
"private UndoRedo _undoRedo;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_undoRedo = new UndoRedo();\n"
"}\n"
"\n"
"public void DoSomething()\n"
"{\n"
"\t// Put your code here.\n"
"}\n"
"\n"
"public void UndoSomething()\n"
"{\n"
"\t// Put here the code that reverts what's done by \"DoSomething()\".\n"
"}\n"
"\n"
"private void OnMyButtonPressed()\n"
"{\n"
"\tvar node = GetNode<Node2D>(\"MyNode2D\");\n"
"\t_undoRedo.CreateAction(\"Move the node\");\n"
"\t_undoRedo.AddDoMethod(new Callable(this, MethodName.DoSomething));\n"
"\t_undoRedo.AddUndoMethod(new Callable(this, MethodName.UndoSomething));\n"
"\t_undoRedo.AddDoProperty(node, \"position\", new Vector2(100, 100));\n"
"\t_undoRedo.AddUndoProperty(node, \"position\", node.Position);\n"
"\t_undoRedo.CommitAction();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Before calling any of the [code]add_(un)do_*[/code] methods, you need to "
"first call [method create_action]. Afterwards you need to call [method "
"commit_action].\n"
"If you don't need to register a method, you can leave [method add_do_method] "
"and [method add_undo_method] out; the same goes for properties. You can also "
"register more than one method/property.\n"
"If you are making an [EditorPlugin] and want to integrate into the editor's "
"undo history, use [EditorUndoRedoManager] instead.\n"
"If you are registering multiple properties/method which depend on one "
"another, be aware that by default undo operation are called in the same order "
"they have been added. Therefore instead of grouping do operation with their "
"undo operations it is better to group do on one side and undo on the other as "
"shown below.\n"
"[codeblocks]\n"
"[gdscript]\n"
"undo_redo.create_action(\"Add object\")\n"
"\n"
"# DO\n"
"undo_redo.add_do_method(_create_object)\n"
"undo_redo.add_do_method(_add_object_to_singleton)\n"
"\n"
"# UNDO\n"
"undo_redo.add_undo_method(_remove_object_from_singleton)\n"
"undo_redo.add_undo_method(_destroy_that_object)\n"
"\n"
"undo_redo.commit_action()\n"
"[/gdscript]\n"
"[csharp]\n"
"_undo_redo.CreateAction(\"Add object\");\n"
"\n"
"// DO\n"
"_undo_redo.AddDoMethod(new Callable(this, MethodName.CreateObject));\n"
"_undo_redo.AddDoMethod(new Callable(this, MethodName.AddObjectToSingleton));\n"
"\n"
"// UNDO\n"
"_undo_redo.AddUndoMethod(new Callable(this, "
"MethodName.RemoveObjectFromSingleton));\n"
"_undo_redo.AddUndoMethod(new Callable(this, MethodName.DestroyThatObject));\n"
"\n"
"_undo_redo.CommitAction();\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Функция UndoRedo работает, регистрируя методы и изменения свойств внутри "
"\"действий\". Вы можете создать действие, затем предоставить способы его "
"выполнения и отмены с помощью вызовов функций и изменения свойств, а затем "
"зафиксировать действие.\n"
"При фиксации действия будут выполнены все методы [code]do_*[/code]. При "
"использовании метода [method undo] будут выполнены методы [code]undo_*[/"
"code]. Если используется метод [method redo], то снова будут выполнены все "
"методы [code]do_*[/code].\n"
"Вот пример того, как добавить действие:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var undo_redo = UndoRedo.new()\n"
"\n"
"func do_something():\n"
"\tpass # Введите здесь свой код.\n"
"\n"
"func undo_something():\n"
"\tpass # Вставьте сюда код, который отменяет то, что сдел \"do_something()"
"\".\n"
"\n"
"func _on_my_button_pressed():\n"
"\tvar node = get_node(\"MyNode2D\")\n"
"\tundo_redo.create_action(\"Move the node\")\n"
"\tundo_redo.add_do_method(do_something)\n"
"\tundo_redo.add_undo_method(undo_something)\n"
"\tundo_redo.add_do_property(node, \"position\", Vector2(100, 100))\n"
"\tundo_redo.add_undo_property(node, \"position\", node.position)\n"
"\tundo_redo.commit_action()\n"
"[/gdscript]\n"
"[csharp]\n"
"private UndoRedo _undoRedo;\n"
"\n"
"public override void _Ready()\n"
"{\n"
"\t_undoRedo = new UndoRedo();\n"
"}\n"
"\n"
"public void DoSomething()\n"
"{\n"
"\t// Введите здесь свой код.\n"
"}\n"
"\n"
"public void UndoSomething()\n"
"{\n"
"\t// Вставьте сюда код, который отменяет то, что сдел \"DoSomething()\".\n"
"}\n"
"\n"
"private void OnMyButtonPressed()\n"
"{\n"
"\tvar node = GetNode<Node2D>(\"MyNode2D\");\n"
"\t_undoRedo.CreateAction(\"Move the node\");\n"
"\t_undoRedo.AddDoMethod(new Callable(this, MethodName.DoSomething));\n"
"\t_undoRedo.AddUndoMethod(new Callable(this, MethodName.UndoSomething));\n"
"\t_undoRedo.AddDoProperty(node, \"position\", new Vector2(100, 100));\n"
"\t_undoRedo.AddUndoProperty(node, \"position\", node.Position);\n"
"\t_undoRedo.CommitAction();\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Перед вызовом любого из методов [code]add_(un)do_*[/code] необходимо сначала "
"вызвать [method create_action]. А после этого [method commit_action].\n"
"Если вам не нужно регистрировать метод, вы можете не указывать [method "
"add_do_method] и [method add_undo_method]; то же самое относится и к "
"свойствам. Вы также можете зарегистрировать несколько методов/свойств.\n"
"Если вы создаете [EditorPlugin] и хотите интегрировать его в историю отмен "
"редактора, используйте вместо этого [EditorUndoRedoManager].\n"
"Если вы регистрируете несколько свойств/методов, зависящих друг от друга, "
"имейте в виду, что по умолчанию операции отмены вызываются в том же порядке, "
"в котором они были добавлены. Поэтому вместо группировки операций отмены с их "
"операциями отмены лучше сгруппировать do с одной стороны и undo с другой, как "
"показано ниже.\n"
"[codeblocks]\n"
"[gdscript]\n"
"undo_redo.create_action(\"Add object\")\n"
"\n"
"# DO\n"
"undo_redo.add_do_method(_create_object)\n"
"undo_redo.add_do_method(_add_object_to_singleton)\n"
"\n"
"# UNDO\n"
"undo_redo.add_undo_method(_remove_object_from_singleton)\n"
"undo_redo.add_undo_method(_destroy_that_object)\n"
"\n"
"undo_redo.commit_action()\n"
"[/gdscript]\n"
"[csharp]\n"
"_undo_redo.CreateAction(\"Add object\");\n"
"\n"
"// DO\n"
"_undo_redo.AddDoMethod(new Callable(this, MethodName.CreateObject));\n"
"_undo_redo.AddDoMethod(new Callable(this, MethodName.AddObjectToSingleton));\n"
"\n"
"// UNDO\n"
"_undo_redo.AddUndoMethod(new Callable(this, "
"MethodName.RemoveObjectFromSingleton));\n"
"_undo_redo.AddUndoMethod(new Callable(this, MethodName.DestroyThatObject));\n"
"\n"
"_undo_redo.CommitAction();\n"
"[/csharp]\n"
"[/codeblocks]"

msgid "Register a [Callable] that will be called when the action is committed."
msgstr ""
"Зарегистрируйте [Callable], который будет вызван при совершении действия."

msgid ""
"Register a [param property] that would change its value to [param value] when "
"the action is committed."
msgstr ""
"Зарегистрируйте [param property], которое изменит свое значение на [param "
"value] при выполнении действия."

msgid ""
"Register a reference to an object that will be erased if the \"do\" history "
"is deleted. This is useful for objects added by the \"do\" action and removed "
"by the \"undo\" action.\n"
"When the \"do\" history is deleted, if the object is a [RefCounted], it will "
"be unreferenced. Otherwise, it will be freed. Do not use for resources.\n"
"[codeblock]\n"
"var node = Node2D.new()\n"
"undo_redo.create_action(\"Add node\")\n"
"undo_redo.add_do_method(add_child.bind(node))\n"
"undo_redo.add_do_reference(node)\n"
"undo_redo.add_undo_method(remove_child.bind(node))\n"
"undo_redo.commit_action()\n"
"[/codeblock]"
msgstr ""
"Зарегистрируйте ссылку на объект, который будет стерт, если история \"do\" "
"будет удалена. Это полезно для объектов, добавленных действием \"do\" и "
"удаленных действием \"undo\".\n"
"Когда история \"do\" удаляется, если объект является [RefCounted], он будет "
"без ссылок. В противном случае он будет освобожден. Не используйте для "
"ресурсов.\n"
"[codeblock]\n"
"var node = Node2D.new()\n"
"undo_redo.create_action(\"Add node\")\n"
"undo_redo.add_do_method(add_child.bind(node))\n"
"undo_redo.add_do_reference(node)\n"
"undo_redo.add_undo_method(remove_child.bind(node))\n"
"undo_redo.commit_action()\n"
"[/codeblock]"

msgid "Register a [Callable] that will be called when the action is undone."
msgstr "Зарегистрируйте [Callable], который будет вызван при отмене действия."

msgid ""
"Register a [param property] that would change its value to [param value] when "
"the action is undone."
msgstr ""
"Зарегистрируйте [param property], которое изменит свое значение на [param "
"value] при отмене действия."

msgid ""
"Register a reference to an object that will be erased if the \"undo\" history "
"is deleted. This is useful for objects added by the \"undo\" action and "
"removed by the \"do\" action.\n"
"When the \"undo\" history is deleted, if the object is a [RefCounted], it "
"will be unreferenced. Otherwise, it will be freed. Do not use for resources.\n"
"[codeblock]\n"
"var node = $Node2D\n"
"undo_redo.create_action(\"Remove node\")\n"
"undo_redo.add_do_method(remove_child.bind(node))\n"
"undo_redo.add_undo_method(add_child.bind(node))\n"
"undo_redo.add_undo_reference(node)\n"
"undo_redo.commit_action()\n"
"[/codeblock]"
msgstr ""
"Зарегистрируйте ссылку на объект, который будет стерт, если история «отмены» "
"будет удалена. Это полезно для объектов, добавленных действием «отменить» и "
"удаленных действием «do».\n"
"При удалении истории «отмены», если объект является [RefCounted], он будет "
"без ссылок. В противном случае он будет освобожден. Не используйте для "
"ресурсов.\n"
"[codeblock]\n"
"var node = $Node2D\n"
"undo_redo.create_action(\"Remove node\")\n"
"undo_redo.add_do_method(remove_child.bind(node))\n"
"undo_redo.add_undo_method(add_child.bind(node))\n"
"undo_redo.add_undo_reference(node)\n"
"undo_redo.commit_action()\n"
"[/codeblock]"

msgid ""
"Clear the undo/redo history and associated references.\n"
"Passing [code]false[/code] to [param increase_version] will prevent the "
"version number from increasing when the history is cleared."
msgstr ""
"Очистите историю отмены/повтора и связанные ссылки.\n"
"Передача [code]false[/code] в [param increase_version] предотвратит "
"увеличение номера версии при очистке истории."

msgid ""
"Commit the action. If [param execute] is [code]true[/code] (which it is by "
"default), all \"do\" methods/properties are called/set when this function is "
"called."
msgstr ""
"Зафиксируйте действие. Если [param execute] равен [code]true[/code] (что "
"является значением по умолчанию), все методы/свойства «do» вызываются/"
"устанавливаются при вызове этой функции."

msgid ""
"Create a new action. After this is called, do all your calls to [method "
"add_do_method], [method add_undo_method], [method add_do_property], and "
"[method add_undo_property], then commit the action with [method "
"commit_action].\n"
"The way actions are merged is dictated by [param merge_mode].\n"
"The way undo operation are ordered in actions is dictated by [param "
"backward_undo_ops]. When [param backward_undo_ops] is [code]false[/code] undo "
"option are ordered in the same order they were added. Which means the first "
"operation to be added will be the first to be undone."
msgstr ""
"Создайте новое действие. После того, как это будет вызвано, выполните все "
"вызовы [method add_do_method], [method add_undo_method], [method "
"add_do_property] и [method add_undo_property], затем зафиксируйте действие с "
"помощью [method commit_action].\n"
"Способ объединения действий определяется [param merge_mode].\n"
"Способ упорядочивания операций отмены в действиях определяется [param "
"backward_undo_ops]. Когда [param backward_undo_ops] равен [code]false[/code], "
"параметры отмены упорядочиваются в том же порядке, в котором они были "
"добавлены. Это означает, что первая добавленная операция будет первой "
"отмененной."

msgid ""
"Stops marking operations as to be processed even if the action gets merged "
"with another in the [constant MERGE_ENDS] mode. See [method "
"start_force_keep_in_merge_ends]."
msgstr ""
"Прекращает отмечать операции как подлежащие обработке, даже если действие "
"объединяется с другим в режиме [constant MERGE_ENDS]. См. [method "
"start_force_keep_in_merge_ends]."

msgid "Gets the action name from its index."
msgstr "Получает имя действия из его индекса."

msgid "Gets the index of the current action."
msgstr "Получает индекс текущего действия."

msgid ""
"Gets the name of the current action, equivalent to "
"[code]get_action_name(get_current_action())[/code]."
msgstr ""
"Получает имя текущего действия, эквивалентно "
"[code]get_action_name(get_current_action())[/code]."

msgid "Returns how many elements are in the history."
msgstr "Возвращает количество элементов в истории."

msgid ""
"Gets the version. Every time a new action is committed, the [UndoRedo]'s "
"version number is increased automatically.\n"
"This is useful mostly to check if something changed from a saved version."
msgstr ""
"Получает версию. Каждый раз, когда фиксируется новое действие, номер версии "
"[UndoRedo] автоматически увеличивается.\n"
"Это полезно в основном для проверки того, изменилось ли что-то по сравнению с "
"сохраненной версией."

msgid ""
"Returns [code]true[/code] if the [UndoRedo] is currently committing the "
"action, i.e. running its \"do\" method or property change (see [method "
"commit_action])."
msgstr ""
"Возвращает [code]true[/code], если [UndoRedo] в данный момент фиксирует "
"действие, т. е. запускает свой метод «do» или изменение свойства (см. [method "
"commit_action])."

msgid "Redo the last action."
msgstr "Повторите последнее действие."

msgid ""
"Marks the next \"do\" and \"undo\" operations to be processed even if the "
"action gets merged with another in the [constant MERGE_ENDS] mode. Return to "
"normal operation using [method end_force_keep_in_merge_ends]."
msgstr ""
"Отмечает следующие операции \"do\" и \"undo\" для обработки, даже если "
"действие будет объединено с другим в режиме [constant MERGE_ENDS]. Возврат к "
"нормальной работе с помощью [method end_force_keep_in_merge_ends]."

msgid "Undo the last action."
msgstr "Отменить последнее действие."

msgid ""
"The maximum number of steps that can be stored in the undo/redo history. If "
"the number of stored steps exceeds this limit, older steps are removed from "
"history and can no longer be reached by calling [method undo]. A value of "
"[code]0[/code] or lower means no limit."
msgstr ""
"Максимальное количество шагов, которые можно сохранить в истории отмены/"
"повтора. Если количество сохраненных шагов превышает этот предел, более "
"старые шаги удаляются из истории и больше не могут быть вызваны методом "
"[method undo]. Значение [code]0[/code] или ниже означает отсутствие "
"ограничений."

msgid "Called when [method undo] or [method redo] was called."
msgstr "Вызывается при вызове [method undo] или [method redo]."

msgid "Makes \"do\"/\"undo\" operations stay in separate actions."
msgstr "Делает операции «do»/«отменить» отдельными действиями."

msgid ""
"Merges this action with the previous one if they have the same name. Keeps "
"only the first action's \"undo\" operations and the last action's \"do\" "
"operations. Useful for sequential changes to a single value."
msgstr ""
"Объединяет это действие с предыдущим, если у них одинаковое имя. Сохраняет "
"только операции \"отменить\" первого действия и операции \"do\" последнего "
"действия. Полезно для последовательных изменений одного значения."

msgid "Merges this action with the previous one if they have the same name."
msgstr "Объединяет это действие с предыдущим, если у них одинаковое имя."

msgid "Uniform set cache manager for Rendering Device based renderers."
msgstr ""
"Единый набор менеджеров кэша для рендереров на базе устройств рендеринга."

msgid ""
"Uniform set cache manager for Rendering Device based renderers. Provides a "
"way to create a uniform set and reuse it in subsequent calls for as long as "
"the uniform set exists. Uniform set will automatically be cleaned up when "
"dependent objects are freed."
msgstr ""
"Менеджер кэша унифицированных наборов для рендереров на основе устройств "
"рендеринга. Предоставляет способ создания унифицированного набора и "
"повторного использования его в последующих вызовах до тех пор, пока "
"существует унифицированный набор. Унифицированный набор будет автоматически "
"очищен при освобождении зависимых объектов."

msgid ""
"Creates/returns a cached uniform set based on the provided uniforms for a "
"given shader."
msgstr ""
"Создает/возвращает кэшированный набор юниформ на основе предоставленных "
"юниформ для заданного шейдера."

msgid ""
"Universal Plug and Play (UPnP) functions for network device discovery, "
"querying and port forwarding."
msgstr ""
"Функции Universal Plug and Play (UPnP) для обнаружения сетевых устройств, "
"запросов и переадресации портов."

msgid ""
"This class can be used to discover compatible [UPNPDevice]s on the local "
"network and execute commands on them, like managing port mappings (for port "
"forwarding/NAT traversal) and querying the local and remote network IP "
"address. Note that methods on this class are synchronous and block the "
"calling thread.\n"
"To forward a specific port (here [code]7777[/code], note both [method "
"discover] and [method add_port_mapping] can return errors that should be "
"checked):\n"
"[codeblock]\n"
"var upnp = UPNP.new()\n"
"upnp.discover()\n"
"upnp.add_port_mapping(7777)\n"
"[/codeblock]\n"
"To close a specific port (e.g. after you have finished using it):\n"
"[codeblock]\n"
"upnp.delete_port_mapping(port)\n"
"[/codeblock]\n"
"[b]Note:[/b] UPnP discovery blocks the current thread. To perform discovery "
"without blocking the main thread, use [Thread]s like this:\n"
"[codeblock]\n"
"# Emitted when UPnP port mapping setup is completed (regardless of success or "
"failure).\n"
"signal upnp_completed(error)\n"
"\n"
"# Replace this with your own server port number between 1024 and 65535.\n"
"const SERVER_PORT = 3928\n"
"var thread = null\n"
"\n"
"func _upnp_setup(server_port):\n"
"\t# UPNP queries take some time.\n"
"\tvar upnp = UPNP.new()\n"
"\tvar err = upnp.discover()\n"
"\n"
"\tif err != OK:\n"
"\t\tpush_error(str(err))\n"
"\t\tupnp_completed.emit(err)\n"
"\t\treturn\n"
"\n"
"\tif upnp.get_gateway() and upnp.get_gateway().is_valid_gateway():\n"
"\t\tupnp.add_port_mapping(server_port, server_port, "
"ProjectSettings.get_setting(\"application/config/name\"), \"UDP\")\n"
"\t\tupnp.add_port_mapping(server_port, server_port, "
"ProjectSettings.get_setting(\"application/config/name\"), \"TCP\")\n"
"\t\tupnp_completed.emit(OK)\n"
"\n"
"func _ready():\n"
"\tthread = Thread.new()\n"
"\tthread.start(_upnp_setup.bind(SERVER_PORT))\n"
"\n"
"func _exit_tree():\n"
"\t# Wait for thread finish here to handle game exit while the thread is "
"running.\n"
"\tthread.wait_to_finish()\n"
"[/codeblock]\n"
"[b]Terminology:[/b] In the context of UPnP networking, \"gateway\" (or "
"\"internet gateway device\", short IGD) refers to network devices that allow "
"computers in the local network to access the internet (\"wide area network\", "
"WAN). These gateways are often also called \"routers\".\n"
"[b]Pitfalls:[/b]\n"
"- As explained above, these calls are blocking and shouldn't be run on the "
"main thread, especially as they can block for multiple seconds at a time. Use "
"threading!\n"
"- Networking is physical and messy. Packets get lost in transit or get "
"filtered, addresses, free ports and assigned mappings change, and devices may "
"leave or join the network at any time. Be mindful of this, be diligent when "
"checking and handling errors, and handle these gracefully if you can: add "
"clear error UI, timeouts and re-try handling.\n"
"- Port mappings may change (and be removed) at any time, and the remote/"
"external IP address of the gateway can change likewise. You should consider "
"re-querying the external IP and try to update/refresh the port mapping "
"periodically (for example, every 5 minutes and on networking failures).\n"
"- Not all devices support UPnP, and some users disable UPnP support. You need "
"to handle this (e.g. documenting and requiring the user to manually forward "
"ports, or adding alternative methods of NAT traversal, like a relay/mirror "
"server, or NAT hole punching, STUN/TURN, etc.).\n"
"- Consider what happens on mapping conflicts. Maybe multiple users on the "
"same network would like to play your game at the same time, or maybe another "
"application uses the same port. Make the port configurable, and optimally "
"choose a port automatically (re-trying with a different port on failure).\n"
"[b]Further reading:[/b] If you want to know more about UPnP (and the Internet "
"Gateway Device (IGD) and Port Control Protocol (PCP) specifically), "
"[url=https://en.wikipedia.org/wiki/Universal_Plug_and_Play]Wikipedia[/url] is "
"a good first stop, the specification can be found at the [url=https://"
"openconnectivity.org/developer/specifications/upnp-resources/upnp/]Open "
"Connectivity Foundation[/url] and Godot's implementation is based on the "
"[url=https://github.com/miniupnp/miniupnp]MiniUPnP client[/url]."
msgstr ""
"Этот класс можно использовать для обнаружения совместимых [UPNPDevice] в "
"локальной сети и выполнения команд на них, таких как управление "
"сопоставлениями портов (для переадресации портов/обхода NAT) и запрос "
"локального и удаленного сетевого IP-адреса. Обратите внимание, что методы "
"этого класса являются синхронными и блокируют вызывающий поток.\n"
"Чтобы перенаправить определенный порт (здесь [code]7777[/code], обратите "
"внимание, что и [method discover], и [method add_port_mapping] могут "
"возвращать ошибки, которые следует проверить):\n"
"[codeblock]\n"
"var upnp = UPNP.new()\n"
"upnp.discover()\n"
"upnp.add_port_mapping(7777)\n"
"[/codeblock]\n"
"Чтобы закрыть определенный порт (например, после того, как вы закончили его "
"использовать):\n"
"[codeblock]\n"
"upnp.delete_port_mapping(port)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Обнаружение UPnP блокирует текущий поток. Чтобы выполнить "
"обнаружение без блокировки основного потока, используйте [Thread]-ы следующим "
"образом:\n"
"[codeblock]\n"
"# Выдается после завершения настройки сопоставления портов UPnP (независимо "
"от успеха или неудачи).\n"
"signal upnp_completed(error)\n"
"\n"
"# Замените это на ваш собственный номер порта сервера в диапазоне 1024 и "
"65535.\n"
"const SERVER_PORT = 3928\n"
"var thread = null\n"
"\n"
"func _upnp_setup(server_port):\n"
"\t# Запросы UPNP занимают некоторое время.\n"
"\tvar upnp = UPNP.new()\n"
"\tvar err = upnp.discover()\n"
"\n"
"\tif err != OK:\n"
"\t\tpush_error(str(err))\n"
"\t\tupnp_completed.emit(err)\n"
"\t\treturn\n"
"\n"
"\tif upnp.get_gateway() and upnp.get_gateway().is_valid_gateway():\n"
"\t\tupnp.add_port_mapping(server_port, server_port, "
"ProjectSettings.get_setting(\"application/config/name\"), \"UDP\")\n"
"\t\tupnp.add_port_mapping(server_port, server_port, "
"ProjectSettings.get_setting(\"application/config/name\"), \"TCP\")\n"
"\t\tupnp_completed.emit(OK)\n"
"\n"
"func _ready():\n"
"\tthread = Thread.new()\n"
"\tthread.start(_upnp_setup.bind(SERVER_PORT))\n"
"\n"
"func _exit_tree():\n"
"\t# Дождитесь завершения потока, чтобы обработать выход из игры, пока поток "
"выполняется.\n"
"\tthread.wait_to_finish()\n"
"[/codeblock]\n"
"[b]Терминология:[/b] В контексте сетей UPnP «шлюз» (или «устройство интернет-"
"шлюза», сокращенно IGD) относится к сетевым устройствам, которые позволяют "
"компьютерам в локальной сети получать доступ к Интернету («глобальная "
"вычислительная сеть», WAN). Эти шлюзы часто также называют "
"«маршрутизаторами».\n"
"[b]Подводные камни:[/b]\n"
"- Как объяснялось выше, эти вызовы являются блокирующими и не должны "
"выполняться в основном потоке, особенно потому, что они могут блокироваться "
"на несколько секунд за раз. Используйте потоки!\n"
"- Сетевое взаимодействие является физическим и беспорядочным. Пакеты теряются "
"при передаче или фильтруются, адреса, свободные порты и назначенные "
"сопоставления меняются, а устройства могут покинуть сеть или присоединиться к "
"ней в любое время. Помните об этом, будьте внимательны при проверке и "
"обработке ошибок и обрабатывайте их изящно, если можете: добавьте понятный "
"пользовательский интерфейс ошибок, тайм-ауты и повторную обработку.\n"
"- Сопоставления портов могут измениться (и быть удалены) в любое время, и "
"удаленный/внешний IP-адрес шлюза может измениться аналогичным образом. Вам "
"следует рассмотреть возможность повторного запроса внешнего IP-адреса и "
"попытаться периодически обновлять/подкреплять сопоставление портов (например, "
"каждые 5 минут и при сбоях в работе сети).\n"
"- Не все устройства поддерживают UPnP, и некоторые пользователи отключают "
"поддержку UPnP. Вам нужно это урегулировать (например, документировать и "
"требовать от пользователя вручную перенаправлять порты или добавлять "
"альтернативные методы обхода NAT, такие как сервер-ретранслятор/зеркал или "
"пробивка NAT, STUN/TURN и т. д.).\n"
"- Подумайте, что происходит при конфликтах сопоставления. Возможно, несколько "
"пользователей в одной сети захотят играть в вашу игру одновременно, или, "
"может быть, другое приложение использует тот же порт. Сделайте порт "
"настраиваемым и оптимально выбирайте порт автоматически (повторная попытка с "
"другим портом в случае неудачи).\n"
"[b]Дополнительная литература:[/b] Если вы хотите узнать больше о UPnP (и в "
"частности об устройстве интернет-шлюза (IGD) и протоколе управления портами "
"(PCP)), [url=https://en.wikipedia.org/wiki/Universal_Plug_and_Play]Wikipedia[/"
"url] является хорошей первой остановкой, спецификацию можно найти на "
"[url=https://openconnectivity.org/developer/specifications/upnp-resources/"
"upnp/]Open Connectivity Foundation[/url] и реализация Godot основана на "
"[url=https://github.com/miniupnp/miniupnp]MiniUPnP client[/url]."

msgid "Adds the given [UPNPDevice] to the list of discovered devices."
msgstr "Добавляет указанное [UPNPDevice] в список обнаруженных устройств."

msgid ""
"Adds a mapping to forward the external [param port] (between 1 and 65535, "
"although recommended to use port 1024 or above) on the default gateway (see "
"[method get_gateway]) to the [param port_internal] on the local machine for "
"the given protocol [param proto] (either [code]\"TCP\"[/code] or [code]"
"\"UDP\"[/code], with UDP being the default). If a port mapping for the given "
"port and protocol combination already exists on that gateway device, this "
"method tries to overwrite it. If that is not desired, you can retrieve the "
"gateway manually with [method get_gateway] and call [method add_port_mapping] "
"on it, if any. Note that forwarding a well-known port (below 1024) with UPnP "
"may fail depending on the device.\n"
"Depending on the gateway device, if a mapping for that port already exists, "
"it will either be updated or it will refuse this command due to that "
"conflict, especially if the existing mapping for that port wasn't created via "
"UPnP or points to a different network address (or device) than this one.\n"
"If [param port_internal] is [code]0[/code] (the default), the same port "
"number is used for both the external and the internal port (the [param port] "
"value).\n"
"The description ([param desc]) is shown in some routers management UIs and "
"can be used to point out which application added the mapping.\n"
"The mapping's lease [param duration] can be limited by specifying a duration "
"in seconds. The default of [code]0[/code] means no duration, i.e. a permanent "
"lease and notably some devices only support these permanent leases. Note that "
"whether permanent or not, this is only a request and the gateway may still "
"decide at any point to remove the mapping (which usually happens on a reboot "
"of the gateway, when its external IP address changes, or on some models when "
"it detects a port mapping has become inactive, i.e. had no traffic for "
"multiple minutes). If not [code]0[/code] (permanent), the allowed range "
"according to spec is between [code]120[/code] (2 minutes) and [code]86400[/"
"code] seconds (24 hours).\n"
"See [enum UPNPResult] for possible return values."
msgstr ""
"Добавляет сопоставление для переадресации внешнего [param port] (от 1 до "
"65535, хотя рекомендуется использовать порт 1024 или выше) на шлюзе по "
"умолчанию (см. [method get_gateway]) на [param port_internal] на локальной "
"машине для указанного протокола [param proto] (либо [code]\"TCP\"[/code], "
"либо [code]\"UDP\"[/code], где UDP является значением по умолчанию). Если "
"сопоставление портов для указанной комбинации порта и протокола уже "
"существует на этом шлюзовом устройстве, этот метод пытается перезаписать его. "
"Если это нежелательно, вы можете получить шлюз вручную с помощью [method "
"get_gateway] и вызвать [method add_port_mapping] на нем, если таковой "
"имеется. Обратите внимание, что переадресация известного порта (ниже 1024) с "
"помощью UPnP может завершиться неудачей в зависимости от устройства.\n"
"В зависимости от шлюзового устройства, если сопоставление для этого порта уже "
"существует, оно либо будет обновлено, либо отклонит эту команду из-за этого "
"конфликта, особенно если существующее сопоставление для этого порта не было "
"создано через UPnP или указывает на другой сетевой адрес (или устройство), "
"нежели этот.\n"
"Если [param port_internal] равен [code]0[/code] (по умолчанию), то для "
"внешнего и внутреннего порта используется один и тот же номер порта (значение "
"[param port]).\n"
"Описание ([param desc]) отображается в некоторых пользовательских интерфейсах "
"управления маршрутизаторами и может использоваться для указания того, какое "
"приложение добавило сопоставление.\n"
"Аренда [param duration] сопоставления может быть ограничена указанием "
"продолжительности в секундах. Значение по умолчанию [code]0[/code] означает "
"отсутствие продолжительности, т. е. постоянную аренду, и, в частности, "
"некоторые устройства поддерживают только эти постоянные аренды. Обратите "
"внимание, что независимо от того, постоянная она или нет, это всего лишь "
"запрос, и шлюз все равно может в любой момент решить удалить сопоставление "
"(что обычно происходит при перезагрузке шлюза, при изменении его внешнего IP-"
"адреса или на некоторых моделях, когда он обнаруживает, что сопоставление "
"портов стало неактивным, т. е. не имело трафика в течение нескольких минут). "
"Если не [code]0[/code] (постоянно), допустимый диапазон согласно спецификации "
"составляет от [code]120[/code] (2 минуты) до [code]86400[/code] секунд (24 "
"часа).\n"
"Возможные возвращаемые значения см. в [enum UPNPResult]."

msgid "Clears the list of discovered devices."
msgstr "Очищает список обнаруженных устройств."

msgid ""
"Deletes the port mapping for the given port and protocol combination on the "
"default gateway (see [method get_gateway]) if one exists. [param port] must "
"be a valid port between 1 and 65535, [param proto] can be either [code]"
"\"TCP\"[/code] or [code]\"UDP\"[/code]. May be refused for mappings pointing "
"to addresses other than this one, for well-known ports (below 1024), or for "
"mappings not added via UPnP. See [enum UPNPResult] for possible return values."
msgstr ""
"Удаляет сопоставление портов для заданной комбинации порта и протокола на "
"шлюзе по умолчанию (см. [method get_gateway]), если таковое существует. "
"[param port] должен быть допустимым портом от 1 до 65535, [param proto] может "
"быть либо [code]\"TCP\"[/code] либо [code]\"UDP\"[/code]. Может быть "
"отклонено для сопоставлений, указывающих на адреса, отличные от этого, для "
"известных портов (ниже 1024) или для сопоставлений, не добавленных через "
"UPnP. См. [enum UPNPResult] для возможных возвращаемых значений."

msgid ""
"Discovers local [UPNPDevice]s. Clears the list of previously discovered "
"devices.\n"
"Filters for IGD (InternetGatewayDevice) type devices by default, as those "
"manage port forwarding. [param timeout] is the time to wait for responses in "
"milliseconds. [param ttl] is the time-to-live; only touch this if you know "
"what you're doing.\n"
"See [enum UPNPResult] for possible return values."
msgstr ""
"Обнаруживает локальные [UPNPDevice]. Очищает список ранее обнаруженных "
"устройств.\n"
"Фильтры для устройств типа IGD (InternetGatewayDevice) по умолчанию, так как "
"они управляют переадресацией портов. [param timeout] — это время ожидания "
"ответов в миллисекундах. [param ttl] — это время жизни; касайтесь этого, "
"только если вы знаете, что делаете.\n"
"См. [enum UPNPResult] для возможных возвращаемых значений."

msgid "Returns the [UPNPDevice] at the given [param index]."
msgstr "Возвращает [UPNPDevice] по указанному [param index]."

msgid "Returns the number of discovered [UPNPDevice]s."
msgstr "Возвращает количество обнаруженных [UPNPDevice]."

msgid ""
"Returns the default gateway. That is the first discovered [UPNPDevice] that "
"is also a valid IGD (InternetGatewayDevice)."
msgstr ""
"Возвращает шлюз по умолчанию. Это первый обнаруженный [UPNPDevice], который "
"также является допустимым IGD (InternetGatewayDevice)."

msgid ""
"Returns the external [IP] address of the default gateway (see [method "
"get_gateway]) as string. Returns an empty string on error."
msgstr ""
"Возвращает внешний [IP] адрес шлюза по умолчанию (см. [method get_gateway]) в "
"виде строки. Возвращает пустую строку в случае ошибки."

msgid "Removes the device at [param index] from the list of discovered devices."
msgstr ""
"Удаляет устройство с адресом [param index] из списка обнаруженных устройств."

msgid ""
"Sets the device at [param index] from the list of discovered devices to "
"[param device]."
msgstr ""
"Устанавливает устройство с индексом [param index] из списка обнаруженных "
"устройств на [param device]."

msgid "If [code]true[/code], IPv6 is used for [UPNPDevice] discovery."
msgstr "Если [code]true[/code], IPv6 используется для обнаружения [UPNPDevice]."

msgid ""
"If [code]0[/code], the local port to use for discovery is chosen "
"automatically by the system. If [code]1[/code], discovery will be done from "
"the source port 1900 (same as destination port). Otherwise, the value will be "
"used as the port."
msgstr ""
"Если [code]0[/code], локальный порт для использования при обнаружении "
"выбирается системой автоматически. Если [code]1[/code], обнаружение будет "
"выполнено с исходного порта 1900 (тот же, что и порт назначения). В противном "
"случае в качестве порта будет использовано значение."

msgid ""
"Multicast interface to use for discovery. Uses the default multicast "
"interface if empty."
msgstr ""
"Интерфейс многоадресной рассылки для использования при обнаружении. "
"Использует интерфейс многоадресной рассылки по умолчанию, если он пуст."

msgid "UPNP command or discovery was successful."
msgstr "Команда UPNP или обнаружение прошли успешно."

msgid ""
"Not authorized to use the command on the [UPNPDevice]. May be returned when "
"the user disabled UPNP on their router."
msgstr ""
"Не авторизовано для использования команды на [UPNPDevice]. Может быть "
"возвращено, если пользователь отключил UPNP на своем маршрутизаторе."

msgid ""
"No port mapping was found for the given port, protocol combination on the "
"given [UPNPDevice]."
msgstr ""
"Для указанного порта и комбинации протоколов на указанном [UPNPDevice] "
"сопоставление портов не найдено."

msgid "Inconsistent parameters."
msgstr "Несоответствующие параметры."

msgid ""
"No such entry in array. May be returned if a given port, protocol combination "
"is not found on a [UPNPDevice]."
msgstr ""
"Такой записи в массиве нет. Может быть возвращён, если заданная комбинация "
"порта и протокола не найдена на [UPNPDevice]."

msgid "The action failed."
msgstr "Действие не удалось."

msgid ""
"The [UPNPDevice] does not allow wildcard values for the source IP address."
msgstr ""
"[UPNPDevice] не допускает использования подстановочных знаков для исходного "
"IP-адреса."

msgid "The [UPNPDevice] does not allow wildcard values for the external port."
msgstr ""
"[UPNPDevice] не допускает использования подстановочных знаков для внешнего "
"порта."

msgid "The [UPNPDevice] does not allow wildcard values for the internal port."
msgstr ""
"[UPNPDevice] не допускает использования подстановочных знаков для внутреннего "
"порта."

msgid "The remote host value must be a wildcard."
msgstr "Значение удаленного хоста должно быть подстановочным знаком."

msgid "The external port value must be a wildcard."
msgstr "Значение внешнего порта должно быть подстановочным знаком."

msgid ""
"No port maps are available. May also be returned if port mapping "
"functionality is not available."
msgstr ""
"Карты портов недоступны. Также может быть возвращен, если функция "
"сопоставления портов недоступна."

msgid ""
"Conflict with other mechanism. May be returned instead of [constant "
"UPNP_RESULT_CONFLICT_WITH_OTHER_MAPPING] if a port mapping conflicts with an "
"existing one."
msgstr ""
"Конфликт с другим механизмом. Может быть возвращено вместо [constant "
"UPNP_RESULT_CONFLICT_WITH_OTHER_MAPPING], если сопоставление портов "
"конфликтует с существующим."

msgid "Conflict with an existing port mapping."
msgstr "Конфликт с существующим сопоставлением портов."

msgid "External and internal port values must be the same."
msgstr "Значения внешнего и внутреннего порта должны быть одинаковыми."

msgid ""
"Only permanent leases are supported. Do not use the [code]duration[/code] "
"parameter when adding port mappings."
msgstr ""
"Поддерживаются только постоянные аренды. Не используйте параметр "
"[code]duration[/code] при добавлении сопоставлений портов."

msgid "Invalid gateway."
msgstr "Неверный шлюз."

msgid "Invalid port."
msgstr "Неверный порт."

msgid "Invalid protocol."
msgstr "Неверный протокол."

msgid "Invalid duration."
msgstr "Неверная продолжительность."

msgid "Invalid arguments."
msgstr "Недопустимые аргументы."

msgid "Invalid response."
msgstr "Неверный ответ."

msgid "Invalid parameter."
msgstr "Недопустимый параметр."

msgid "HTTP error."
msgstr "Ошибка HTTP."

msgid "Socket error."
msgstr "Ошибка сокета."

msgid "Error allocating memory."
msgstr "Ошибка выделения памяти."

msgid ""
"No gateway available. You may need to call [method discover] first, or "
"discovery didn't detect any valid IGDs (InternetGatewayDevices)."
msgstr ""
"Нет доступного шлюза. Возможно, сначала нужно вызвать [method discover], или "
"discovery не обнаружил ни одного допустимого IGD (InternetGatewayDevices)."

msgid ""
"No devices available. You may need to call [method discover] first, or "
"discovery didn't detect any valid [UPNPDevice]s."
msgstr ""
"Нет доступных устройств. Возможно, сначала нужно вызвать [method discover], "
"или discovery не обнаружил ни одного из допустимых [UPNPDevice]-ов."

msgid "Unknown error."
msgstr "Неизвестная ошибка."

msgid "Universal Plug and Play (UPnP) device."
msgstr "Устройство Universal Plug and Play (UPnP)."

msgid ""
"Universal Plug and Play (UPnP) device. See [UPNP] for UPnP discovery and "
"utility functions. Provides low-level access to UPNP control commands. Allows "
"to manage port mappings (port forwarding) and to query network information of "
"the device (like local and external IP address and status). Note that methods "
"on this class are synchronous and block the calling thread."
msgstr ""
"Устройство Universal Plug and Play (UPnP). См. [UPNP] для обнаружения UPnP и "
"служебных функций. Предоставляет низкоуровневый доступ к командам управления "
"UPNP. Позволяет управлять сопоставлениями портов (переадресацией портов) и "
"запрашивать сетевую информацию устройства (например, локальный и внешний IP-"
"адрес и статус). Обратите внимание, что методы этого класса являются "
"синхронными и блокируют вызывающий поток."

msgid ""
"Adds a port mapping to forward the given external port on this [UPNPDevice] "
"for the given protocol to the local machine. See [method "
"UPNP.add_port_mapping]."
msgstr ""
"Добавляет сопоставление портов для переадресации указанного внешнего порта на "
"этом [UPNPDevice] для указанного протокола на локальную машину. См. [method "
"UPNP.add_port_mapping]."

msgid ""
"Deletes the port mapping identified by the given port and protocol "
"combination on this device. See [method UPNP.delete_port_mapping]."
msgstr ""
"Удаляет сопоставление портов, идентифицированное заданной комбинацией порта и "
"протокола на этом устройстве. См. [method UPNP.delete_port_mapping]."

msgid ""
"Returns [code]true[/code] if this is a valid IGD (InternetGatewayDevice) "
"which potentially supports port forwarding."
msgstr ""
"Возвращает [code]true[/code], если это допустимый IGD "
"(InternetGatewayDevice), который потенциально поддерживает переадресацию "
"портов."

msgid "Returns the external IP address of this [UPNPDevice] or an empty string."
msgstr "Возвращает внешний IP-адрес этого [UPNPDevice] или пустую строку."

msgid "URL to the device description."
msgstr "URL-адрес описания устройства."

msgid "IDG control URL."
msgstr "IDG контрольный URL."

msgid ""
"Address of the local machine in the network connecting it to this "
"[UPNPDevice]."
msgstr "Адрес локальной машины в сети, подключающей ее к этому [UPNPDevice]."

msgid "IGD service type."
msgstr "Тип службы IGD."

msgid "IGD status."
msgstr "Статус IGD."

msgid "Service type."
msgstr "Тип услуг."

msgid "OK."
msgstr "OK."

msgid "Empty HTTP response."
msgstr "Пустой HTTP-ответ."

msgid "This value is no longer used."
msgstr "Это значение больше не используется."

msgid "Returned response contained no URLs."
msgstr "Возвращенный ответ не содержал URL-адресов."

msgid "Not a valid IGD."
msgstr "Недействительный IGD."

msgid "Disconnected."
msgstr "Отключен."

msgid "Unknown device."
msgstr "Неизвестное устройство."

msgid "Invalid control."
msgstr "Неверный контроль."

msgid "Memory allocation error."
msgstr "Ошибка распределения памяти."

msgid "The most important data type in Godot."
msgstr "Самый важный тип данных в Godot."

msgid ""
"In computer programming, a Variant class is a class that is designed to store "
"a variety of other types. Dynamic programming languages like PHP, Lua, "
"JavaScript and GDScript like to use them to store variables' data on the "
"backend. With these Variants, properties are able to change value types "
"freely.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var foo = 2 # foo is dynamically an integer\n"
"foo = \"Now foo is a string!\"\n"
"foo = RefCounted.new() # foo is an Object\n"
"var bar: int = 2 # bar is a statically typed integer.\n"
"# bar = \"Uh oh! I can't make statically typed variables become a different "
"type!\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// C# is statically typed. Once a variable has a type it cannot be changed. "
"You can use the `var` keyword to let the compiler infer the type "
"automatically.\n"
"var foo = 2; // Foo is a 32-bit integer (int). Be cautious, integers in "
"GDScript are 64-bit and the direct C# equivalent is `long`.\n"
"// foo = \"foo was and will always be an integer. It cannot be turned into a "
"string!\";\n"
"var boo = \"Boo is a string!\";\n"
"var ref = new RefCounted(); // var is especially useful when used together "
"with a constructor.\n"
"\n"
"// Godot also provides a Variant type that works like a union of all the "
"Variant-compatible types.\n"
"Variant fooVar = 2; // fooVar is dynamically an integer (stored as a `long` "
"in the Variant type).\n"
"fooVar = \"Now fooVar is a string!\";\n"
"fooVar = new RefCounted(); // fooVar is a GodotObject.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Godot tracks all scripting API variables within Variants. Without even "
"realizing it, you use Variants all the time. When a particular language "
"enforces its own rules for keeping data typed, then that language is applying "
"its own custom logic over the base Variant scripting API.\n"
"- GDScript automatically wrap values in them. It keeps all data in plain "
"Variants by default and then optionally enforces custom static typing rules "
"on variable types.\n"
"- C# is statically typed, but uses its own implementation of the Variant type "
"in place of Godot's [Variant] class when it needs to represent a dynamic "
"value. C# Variant can be assigned any compatible type implicitly but "
"converting requires an explicit cast.\n"
"The global [method @GlobalScope.typeof] function returns the enumerated value "
"of the Variant type stored in the current variable (see [enum "
"Variant.Type]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var foo = 2\n"
"match typeof(foo):\n"
"\tTYPE_NIL:\n"
"\t\tprint(\"foo is null\")\n"
"\tTYPE_INT:\n"
"\t\tprint(\"foo is an integer\")\n"
"\tTYPE_OBJECT:\n"
"\t\t# Note that Objects are their own special category.\n"
"\t\t# To get the name of the underlying Object type, you need the "
"`get_class()` method.\n"
"\t\tprint(\"foo is a(n) %s\" % foo.get_class()) # inject the class name into "
"a formatted string.\n"
"\t\t# Note that this does not get the script's `class_name` global "
"identifier.\n"
"\t\t# If the `class_name` is needed, use `foo.get_script().get_global_name()` "
"instead.\n"
"[/gdscript]\n"
"[csharp]\n"
"Variant foo = 2;\n"
"switch (foo.VariantType)\n"
"{\n"
"\tcase Variant.Type.Nil:\n"
"\t\tGD.Print(\"foo is null\");\n"
"\t\tbreak;\n"
"\tcase Variant.Type.Int:\n"
"\t\tGD.Print(\"foo is an integer\");\n"
"\t\tbreak;\n"
"\tcase Variant.Type.Object:\n"
"\t\t// Note that Objects are their own special category.\n"
"\t\t// You can convert a Variant to a GodotObject and use reflection to get "
"its name.\n"
"\t\tGD.Print($\"foo is a(n) {foo.AsGodotObject().GetType().Name}\");\n"
"\t\tbreak;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"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 moving data around.\n"
"Godot has specifically invested in making its Variant class as flexible as "
"possible; so much so that it is used for a multitude of operations to "
"facilitate communication between all of Godot's systems.\n"
"A Variant:\n"
"- Can store almost any datatype.\n"
"- Can perform operations between many variants. GDScript uses Variant as its "
"atomic/native datatype.\n"
"- Can be hashed, so it can be compared quickly to other variants.\n"
"- Can be used to convert safely between datatypes.\n"
"- Can be used to abstract calling methods and their arguments. Godot exports "
"all its functions through variants.\n"
"- Can be used to defer calls or move data between threads.\n"
"- Can be serialized as binary and stored to disk, or transferred via "
"network.\n"
"- Can be serialized to text and use it for printing values and editable "
"settings.\n"
"- Can work as an exported property, so the editor can edit it universally.\n"
"- Can be used for dictionaries, arrays, parsers, etc.\n"
"[b]Containers (Array and Dictionary):[/b] 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.\n"
"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 ""
"В компьютерном программировании класс Variant — это класс, который "
"предназначен для хранения множества других типов. Динамические языки "
"программирования, такие как PHP, Lua, JavaScript и GDScript, любят "
"использовать их для хранения данных переменных на бэкэнде. С этими Variant "
"свойства могут свободно менять типы значений.\n"
"[codeblocks]\n"
"[gdscript]\n"
"var foo = 2 # foo — это динамическое целое число\n"
"foo = \"Теперь foo — это строка!\"\n"
"foo = RefCounted.new() # foo — это объект\n"
"var bar: int = 2 # bar — статически типизированное целое число.\n"
"# bar = \"Ой-ой! Я не могу сделать так, чтобы статически типизированные "
"переменные стали другим типом!\"\n"
"[/gdscript]\n"
"[csharp]\n"
"// C# статически типизирован. Как только переменная получает тип, ее нельзя "
"изменить. Вы можете использовать ключевое слово `var`, чтобы компилятор "
"автоматически вывел тип.\n"
"var foo = 2; // Foo — это 32-битное целое число (int). Будьте осторожны, "
"целые числа в GDScript — 64-битные, а их прямой эквивалент в C# — `long`.\n"
"// foo = \"foo было и всегда будет целым числом. Его нельзя преобразовать в "
"строку!\";\n"
"var boo = \"Boo — это строка!\";\n"
"var ref = new RefCounted(); // var особенно полезен при использовании вместе "
"с конструктором.\n"
"\n"
"// Godot также предоставляет тип Variant, который работает как объединение "
"всех совместимых с Variant типов.\n"
"Variant fooVar = 2; // fooVar — это динамическое целое число (хранящееся как "
"`long` в типе Variant).\n"
"fooVar = \"Теперь fooVar — это строка!\";\n"
"fooVar = new RefCounted(); // fooVar — это GodotObject.\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Godot отслеживает все переменные API скриптов в Variants. Даже не осознавая "
"этого, вы постоянно используете Variants. Когда определенный язык применяет "
"собственные правила для сохранения типизированных данных, то этот язык "
"применяет собственную логику к базовому API скриптов Variant.\n"
"- GDScript автоматически оборачивает в них значения. Он хранит все данные в "
"простых Variant по умолчанию, а затем опционально применяет пользовательские "
"правила статической типизации к типам переменных.\n"
"- C# является статически типизированным, но использует собственную реализацию "
"типа Variant вместо класса Godot [Variant], когда ему нужно представить "
"динамическое значение. Variant C# может быть назначен любой совместимый тип "
"неявно, но преобразование требует явного приведения.\n"
"Глобальная функция [method @GlobalScope.typeof] возвращает перечислимое "
"значение типа Variant, сохраненного в текущей переменной (см. [enum "
"Variant.Type]).\n"
"[codeblocks]\n"
"[gdscript]\n"
"var foo = 2\n"
"match typeof(foo):\n"
"\tTYPE_NIL:\n"
"\t\tprint(\"foo это null\")\n"
"\tTYPE_INT:\n"
"\t\tprint(\"foo — целое число\")\n"
"\tTYPE_OBJECT:\n"
"\t\t# Обратите внимание, что объекты — это отдельная особая категория.\n"
"\t\t# Чтобы получить имя базового типа объекта, вам понадобится метод "
"`get_class()`.\n"
"\t\tprint(\"foo is a(n) %s\" % foo.get_class()) # вставьте имя класса в "
"отформатированную строку.\n"
"\t\t# Обратите внимание, что при этом не получается глобальный идентификатор "
"`class_name` скрипта.\n"
"\t\t# Если требуется `class_name`, используйте вместо этого "
"`foo.get_script().get_global_name()`.\n"
"[/gdscript]\n"
"[csharp]\n"
"Variant foo = 2;\n"
"switch (foo.VariantType)\n"
"{\n"
"\tcase Variant.Type.Nil:\n"
"\t\tGD.Print(\"foo это null\");\n"
"\t\tbreak;\n"
"\tcase Variant.Type.Int:\n"
"\t\tGD.Print(\"foo — целое число\");\n"
"\t\tbreak;\n"
"\tcase Variant.Type.Object:\n"
"\t\t// Обратите внимание, что объекты — это отдельная особая категория.\n"
"\t\t// Вы можете преобразовать Variant в GodotObject и использовать "
"рефлексию, чтобы получить его имя.\n"
"\t\tGD.Print($\"foo is a(n) {foo.AsGodotObject().GetType().Name}\");\n"
"\t\tbreak;\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Variant занимает всего 20 байт и может хранить внутри себя практически любой "
"тип данных движка. Variant редко используются для хранения информации в "
"течение длительного времени. Вместо этого они используются в основном для "
"связи, редактирования, сериализации и перемещения данных.\n"
"Godot специально инвестировал в то, чтобы сделать свой класс Variant "
"максимально гибким; настолько, что он используется для множества операций, "
"чтобы облегчить связь между всеми системами Godot.\n"
"Variant:\n"
"- Может хранить практически любой тип данных.\n"
"- Может выполнять операции между многими вариантами. GDScript использует "
"Variant в качестве своего атомарного/собственного типа данных.\n"
"- Может быть хеширован, поэтому его можно быстро сравнивать с другими "
"вариантами.\n"
"- Может использоваться для безопасного преобразования между типами данных.\n"
"- Может использоваться для абстрагирования вызывающих методов и их "
"аргументов. Godot экспортирует все свои функции через Variant'ы.\n"
"- Может использоваться для отсрочки вызовов или перемещения данных между "
"потоками.\n"
"- Может быть сериализован как двоичный и сохранен на диске или передан по "
"сети.\n"
"- Может быть сериализован в текст и использован для печати значений и "
"редактируемых настроек.\n"
"- Может работать как экспортируемое свойство, поэтому редактор может "
"редактировать его универсально.\n"
"- Может использоваться для словарей, массивов, парсеров и т. д.\n"
"[b]Контейнеры (Array и Dictionary):[/b] Оба реализованы с использованием "
"вариантов. [Dictionary] может сопоставлять любой тип данных, используемый в "
"качестве ключа к любому другому типу данных. [Array] просто содержит массив "
"вариантов. Конечно, вариант также может содержать [Dictionary] и [Array] "
"внутри, что делает его еще более гибким.\n"
"Изменения контейнера изменят все ссылки на него. [Mutex] следует создать для "
"его блокировки, если требуется многопоточный доступ."

msgid "Variant class introduction"
msgstr "Введение вариативных классов"

msgid "A container that arranges its child controls vertically."
msgstr ""
"Контейнер, который располагает свои дочерние элементы управления вертикально."

msgid ""
"A variant of [BoxContainer] that can only arrange its child controls "
"vertically. Child controls are rearranged automatically when their minimum "
"size changes."
msgstr ""
"Вариант [BoxContainer], который может размещать дочерние элементы управления "
"только вертикально. Дочерние элементы управления автоматически "
"перестраиваются при изменении их минимального размера."

msgid "A 2D vector using floating-point coordinates."
msgstr "Двумерный 2D вектор, использующий координаты с плавающей точкой."

msgid ""
"A 2-element structure that can be used to represent 2D coordinates or any "
"other pair of numeric values.\n"
"It uses floating-point coordinates. By default, these floating-point values "
"use 32-bit precision, unlike [float] which is always 64-bit. If double "
"precision is needed, compile the engine with the option "
"[code]precision=double[/code].\n"
"See [Vector2i] for its integer counterpart.\n"
"[b]Note:[/b] In a boolean context, a Vector2 will evaluate to [code]false[/"
"code] if it's equal to [code]Vector2(0, 0)[/code]. Otherwise, a Vector2 will "
"always evaluate to [code]true[/code]."
msgstr ""
"Структура из 2 элементов, которая может использоваться для представления 2D-"
"координат или любой другой пары числовых значений.\n"
"Она использует координаты с плавающей точкой. По умолчанию эти значения с "
"плавающей точкой используют 32-битную точность, в отличие от [float], который "
"всегда 64-битный. Если требуется двойная точность, скомпилируйте движок с "
"опцией [code]precision=double[/code].\n"
"См. [Vector2i] для его целочисленного аналога.\n"
"[b]Примечание:[/b] В логическом контексте Vector2 будет оцениваться как "
"[code]false[/code], если он равен [code]Vector2(0, 0)[/code]. В противном "
"случае Vector2 всегда будет оцениваться как [code]true[/code]."

msgid "3Blue1Brown Essence of Linear Algebra"
msgstr "3Blue1Brown Суть линейной алгебры"

msgid ""
"Constructs a default-initialized [Vector2] with all components set to "
"[code]0[/code]."
msgstr ""
"Создает инициализированный по умолчанию [Vector2], где все компоненты "
"установлены в [code]0[/code]."

msgid "Constructs a [Vector2] as a copy of the given [Vector2]."
msgstr "Создает [Vector2] как копию заданного [Vector2]."

msgid "Constructs a new [Vector2] from [Vector2i]."
msgstr "Создает новый [Vector2] из [Vector2i]."

msgid "Constructs a new [Vector2] from the given [param x] and [param y]."
msgstr "Создает новый [Vector2] из заданных [param x] и [param y]."

msgid ""
"Returns a new vector with all components in absolute values (i.e. positive)."
msgstr ""
"Возвращает новый вектор в котором все компоненты будут абсолютными значениями "
"(т.е положительными)."

msgid ""
"Returns this vector's angle with respect to the positive X axis, or [code](1, "
"0)[/code] vector, in radians.\n"
"For example, [code]Vector2.RIGHT.angle()[/code] will return zero, "
"[code]Vector2.DOWN.angle()[/code] will return [code]PI / 2[/code] (a quarter "
"turn, or 90 degrees), and [code]Vector2(1, -1).angle()[/code] will return "
"[code]-PI / 4[/code] (a negative eighth turn, or -45 degrees).\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle.png]Illustration of the returned angle.[/url]\n"
"Equivalent to the result of [method @GlobalScope.atan2] when called with the "
"vector's [member y] and [member x] as parameters: [code]atan2(y, x)[/code]."
msgstr ""
"Возвращает угол этого вектора относительно положительной оси X или вектора "
"[code](1, 0)[/code] в радианах.\n"
"Например, [code]Vector2.RIGHT.angle()[/code] вернет ноль, "
"[code]Vector2.DOWN.angle()[/code] вернет [code]PI / 2[/code] (четверть "
"оборота или 90 градусов), а [code]Vector2(1, -1).angle()[/code] вернет [code]-"
"PI / 4[/code] (отрицательная восьмая поворота или -45 градусов).\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle.png]Иллюстрация возвращаемого угла.[/url]\n"
"Эквивалентно результату [method @GlobalScope.atan2] при вызове с [member y] и "
"[member x] вектора в качестве параметров: [code]atan2(y, x)[/code]."

msgid ""
"Returns the signed angle to the given vector, in radians.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle_to.png]Illustration of the returned angle.[/url]"
msgstr ""
"Возвращает знаковый угол к заданному вектору в радианах.\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle_to.png]Иллюстрация возвращаемого угла.[/url]"

msgid ""
"Returns the angle between the line connecting the two points and the X axis, "
"in radians.\n"
"[code]a.angle_to_point(b)[/code] is equivalent of doing [code](b - a).angle()"
"[/code].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle_to_point.png]Illustration of the returned angle.[/url]"
msgstr ""
"Возвращает угол между линией, соединяющей две точки, и осью X в радианах.\n"
"[code]a.angle_to_point(b)[/code] эквивалентно выполнению [code](b - a).angle()"
"[/code].\n"
"[url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/"
"vector2_angle_to_point.png]Иллюстрация возвращаемого угла.[/url]"

msgid ""
"Returns the aspect ratio of this vector, the ratio of [member x] to [member "
"y]."
msgstr ""
"Возвращает соотношение сторон данного вектора, отношение [member x] к [member "
"y]."

msgid ""
"Returns the derivative at the given [param t] on the [url=https://"
"en.wikipedia.org/wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by this "
"vector and the given [param control_1], [param control_2], and [param end] "
"points."
msgstr ""
"Возвращает производную по заданному [param t] на [url=https://"
"en.wikipedia.org/wiki/B%C3%A9zier_curve]кривой Безье[/url], определенной этим "
"вектором и заданными точками [param control_1], [param control_2] и [param "
"end]."

msgid ""
"Returns the point at the given [param t] on the [url=https://en.wikipedia.org/"
"wiki/B%C3%A9zier_curve]Bézier curve[/url] defined by this vector and the "
"given [param control_1], [param control_2], and [param end] points."
msgstr ""
"Возвращает точку с заданным [param t] на [url=https://en.wikipedia.org/wiki/"
"B%C3%A9zier_curve]кривой Безье[/url], определенной этим вектором и заданными "
"точками [param control_1], [param control_2] и [param end]."

msgid ""
"Returns the vector \"bounced off\" from a line defined by the given normal "
"[param n] perpendicular to the line.\n"
"[b]Note:[/b] [method bounce] performs the operation that most engines and "
"frameworks call [code skip-lint]reflect()[/code]."
msgstr ""
"Возвращает вектор, «отскочивший» от линии, определенной заданной нормалью "
"[param n], перпендикулярной линии.\n"
"[b]Примечание:[/b] [method bounce] выполняет операцию, которую большинство "
"движков и фреймворков называют [code skip-lint]reflect()[/code]."

msgid ""
"Returns a new vector with all components rounded up (towards positive "
"infinity)."
msgstr ""
"Возвращает новый вектор, все компоненты которого округлены в большую сторону "
"(в сторону положительной бесконечности)."

msgid ""
"Returns a new vector with all components clamped between the components of "
"[param min] and [param max], by running [method @GlobalScope.clamp] on each "
"component."
msgstr ""
"Возвращает новый вектор со всеми компонентами, зажатыми между компонентами "
"[param min] и [param max], путем запуска [method @GlobalScope.clamp] для "
"каждого компонента."

msgid ""
"Returns a new vector with all components clamped between [param min] and "
"[param max], by running [method @GlobalScope.clamp] on each component."
msgstr ""
"Возвращает новый вектор со всеми компонентами, зажатыми между [param min] и "
"[param max], путем запуска [method @GlobalScope.clamp] для каждого компонента."

msgid ""
"Returns the 2D analog of the cross product for this vector and [param with].\n"
"This is the signed area of the parallelogram formed by the two vectors. If "
"the second vector is clockwise from the first vector, then the cross product "
"is the positive area. If counter-clockwise, the cross product is the negative "
"area. If the two vectors are parallel this returns zero, making it useful for "
"testing if two vectors are parallel.\n"
"[b]Note:[/b] Cross product is not defined in 2D mathematically. This method "
"embeds the 2D vectors in the XY plane of 3D space and uses their cross "
"product's Z component as the analog."
msgstr ""
"Возвращает 2D-аналог векторного произведения для этого вектора и [param "
"with].\n"
"Это знаковая площадь параллелограмма, образованного двумя векторами. Если "
"второй вектор отстоит по часовой стрелке от первого вектора, то векторное "
"произведение будет положительной площадью. Если против часовой стрелки, то "
"векторное произведение будет отрицательной площадью. Если два вектора "
"параллельны, это возвращает ноль, что делает его полезным для проверки "
"параллельности двух векторов.\n"
"[b]Примечание:[/b] Взаимное произведение не определено в 2D математически. "
"Этот метод встраивает 2D-векторы в плоскость XY 3D-пространства и использует "
"компонент Z их векторного произведения в качестве аналога."

msgid ""
"Performs a cubic interpolation between this vector and [param b] using [param "
"pre_a] and [param post_b] as handles, and returns the result at position "
"[param weight]. [param weight] is on the range of 0.0 to 1.0, representing "
"the amount of interpolation."
msgstr ""
"Выполняет кубическую интерполяцию между этим вектором и [param b], используя "
"[param pre_a] и [param post_b] в качестве дескрипторов, и возвращает "
"результат в позиции [param weight]. [param weight] находится в диапазоне от "
"0,0 до 1,0, представляя величину интерполяции."

msgid ""
"Performs a cubic interpolation between this vector and [param b] using [param "
"pre_a] and [param post_b] as handles, and returns the result at position "
"[param weight]. [param weight] is on the range of 0.0 to 1.0, representing "
"the amount of interpolation.\n"
"It can perform smoother interpolation than [method cubic_interpolate] by the "
"time values."
msgstr ""
"Выполняет кубическую интерполяцию между этим вектором и [param b], используя "
"[param pre_a] и [param post_b] в качестве дескрипторов, и возвращает "
"результат в позиции [param weight]. [param weight] находится в диапазоне от "
"0,0 до 1,0, представляя величину интерполяции. \n"
"Он может выполнять более плавную интерполяцию, чем [method cubic_interpolate] "
"по значениям времени."

msgid ""
"Returns the normalized vector pointing from this vector to [param to]. This "
"is equivalent to using [code](b - a).normalized()[/code]."
msgstr ""
"Возвращает нормализованный вектор, указывающий из этого вектора на [param "
"to]. Это эквивалентно использованию [code](b - a).normalized()[/code]."

msgid ""
"Returns the squared distance between this vector and [param to].\n"
"This method runs faster than [method distance_to], so prefer it if you need "
"to compare vectors or need the squared distance for some formula."
msgstr ""
"Возвращает квадрат расстояния между этим вектором и [param to].\n"
"Этот метод работает быстрее, чем [method distance_to], поэтому предпочитайте "
"его, если вам нужно сравнить векторы или вам нужен квадрат расстояния для "
"какой-то формулы."

msgid "Returns the distance between this vector and [param to]."
msgstr "Возвращает расстояние между данным вектором и [param to]."

msgid ""
"Returns the dot product of this vector and [param with]. This can be used to "
"compare the angle between two vectors. For example, this can be used to "
"determine whether an enemy is facing the player.\n"
"The dot product will be [code]0[/code] for a right angle (90 degrees), "
"greater than 0 for angles narrower than 90 degrees and lower than 0 for "
"angles wider than 90 degrees.\n"
"When using unit (normalized) vectors, the result will always be between "
"[code]-1.0[/code] (180 degree angle) when the vectors are facing opposite "
"directions, and [code]1.0[/code] (0 degree angle) when the vectors are "
"aligned.\n"
"[b]Note:[/b] [code]a.dot(b)[/code] is equivalent to [code]b.dot(a)[/code]."
msgstr ""
"Возвращает скалярное произведение этого вектора и [param with]. Это можно "
"использовать для сравнения угла между двумя векторами. Например, это можно "
"использовать для определения того, смотрит ли враг на игрока.\n"
"Скалярное произведение будет равно [code]0[/code] для прямого угла (90 "
"градусов), больше 0 для углов уже 90 градусов и меньше 0 для углов шире 90 "
"градусов.\n"
"При использовании единичных (нормализованных) векторов результат всегда будет "
"между [code]-1.0[/code] (угол 180 градусов), когда векторы смотрят в "
"противоположных направлениях, и [code]1.0[/code] (угол 0 градусов), когда "
"векторы выровнены.\n"
"[b]Примечание:[/b] [code]a.dot(b)[/code] эквивалентно [code]b.dot(a)[/code]."

msgid ""
"Returns a new vector with all components rounded down (towards negative "
"infinity)."
msgstr ""
"Возвращает новый вектор, все компоненты которого округлены в меньшую сторону "
"(в сторону отрицательной бесконечности)."

msgid ""
"Creates a [Vector2] rotated to the given [param angle] in radians. This is "
"equivalent to doing [code]Vector2(cos(angle), sin(angle))[/code] or "
"[code]Vector2.RIGHT.rotated(angle)[/code].\n"
"[codeblock]\n"
"print(Vector2.from_angle(0)) # Prints (1.0, 0.0)\n"
"print(Vector2(1, 0).angle()) # Prints 0.0, which is the angle used above.\n"
"print(Vector2.from_angle(PI / 2)) # Prints (0.0, 1.0)\n"
"[/codeblock]\n"
"[b]Note:[/b] The length of the returned [Vector2] is [i]approximately[/i] "
"[code]1.0[/code], but is is not guaranteed to be exactly [code]1.0[/code] due "
"to floating-point precision issues. Call [method normalized] on the returned "
"[Vector2] if you require a unit vector."
msgstr ""
"Создает [Vector2], повернутый на заданный [param angle] в радианах. Это "
"эквивалентно выполнению [code]Vector2(cos(angle), sin(angle))[/code] или "
"[code]Vector2.RIGHT.rotated(angle)[/code].\n"
"[codeblock]\n"
"print(Vector2.from_angle(0)) # Выводит (1.0, 0.0)\n"
"print(Vector2(1, 0).angle()) # Выводит 0.0, что является углом, "
"использованным выше.\n"
"print(Vector2.from_angle(PI / 2)) # Выводит (0.0, 1.0)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Длина возвращаемого [Vector2] составляет "
"[i]приблизительно[/i] [code]1.0[/code], но не гарантируется, что она будет "
"равна точно [code]1.0[/code] из-за проблем с точностью чисел с плавающей "
"точкой. Вызовите [method normalized] для возвращенного [Vector2], если вам "
"требуется единичный вектор."

msgid ""
"Returns [code]true[/code] if this vector and [param to] are approximately "
"equal, by running [method @GlobalScope.is_equal_approx] on each component."
msgstr ""
"Возвращает [code]true[/code], если этот вектор и [param to] приблизительно "
"равны, путем запуска [method @GlobalScope.is_equal_approx] для каждого "
"компонента."

msgid ""
"Returns [code]true[/code] if this vector is finite, by calling [method "
"@GlobalScope.is_finite] on each component."
msgstr ""
"Возвращает [code]true[/code], если этот вектор конечен, вызывая [method "
"@GlobalScope.is_finite] для каждого компонента."

msgid ""
"Returns [code]true[/code] if the vector is normalized, i.e. its length is "
"approximately equal to 1."
msgstr ""
"Возвращает [code]true[/code], если вектор нормализован, т.е. его длина "
"приблизительно равна 1."

msgid ""
"Returns [code]true[/code] if this vector's values are approximately zero, by "
"running [method @GlobalScope.is_zero_approx] on each component.\n"
"This method is faster than using [method is_equal_approx] with one value as a "
"zero vector."
msgstr ""
"Возвращает [code]true[/code], если значения этого вектора приблизительно "
"равны нулю, выполняя [method @GlobalScope.is_zero_approx] для каждого "
"компонента. \n"
"Этот метод быстрее, чем использование [method is_equal_approx] с одним "
"значением в качестве нулевого вектора."

msgid "Returns the length (magnitude) of this vector."
msgstr "Возвращает длину (величину) данного вектора."

msgid ""
"Returns the squared length (squared magnitude) of this vector.\n"
"This method runs faster than [method length], so prefer it if you need to "
"compare vectors or need the squared distance for some formula."
msgstr ""
"Возвращает длину данного вектора в квадрате.\n"
"Этот метод выполняется быстрее, чем [method length], поэтому он "
"предпочтительнее если вам нужно сравнить векторы или нужно расстояние в "
"квадрате для какой-либо формулы."

msgid ""
"Returns the result of the linear interpolation between this vector and [param "
"to] by amount [param weight]. [param weight] is on the range of [code]0.0[/"
"code] to [code]1.0[/code], representing the amount of interpolation."
msgstr ""
"Возвращает результат линейной интерполяции между данным вектором и [param to] "
"на величину [param weight]. [param weight] находится в диапазоне от "
"[code]0.0[/code] до [code]1.0[/code], что представляет собой величину "
"интерполяции."

msgid ""
"Returns the vector with a maximum length by limiting its length to [param "
"length]. If the vector is non-finite, the result is undefined."
msgstr ""
"Возвращает вектор с максимальной длиной, ограничивая его длину до [param "
"length]. Если вектор не конечен, результат не определен."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector2(maxf(x, with.x), maxf(y, with.y))[/code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector2(maxf(x, with.x), maxf(y, with.y))[/code]."

msgid ""
"Returns the axis of the vector's highest value. See [code]AXIS_*[/code] "
"constants. If all components are equal, this method returns [constant AXIS_X]."
msgstr ""
"Возвращает ось наибольшего значения вектора. См. константы [code]AXIS_*[/"
"code]. Если все компоненты равны, этот метод возвращает [constant AXIS_X]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector2(maxf(x, with), maxf(y, with))[/code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector2(maxf(x, with), maxf(y, with))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector2(minf(x, with.x), minf(y, with.y))[/code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентно "
"[code]Vector2(minf(x, with.x), minf(y, with.y))[/code]."

msgid ""
"Returns the axis of the vector's lowest value. See [code]AXIS_*[/code] "
"constants. If all components are equal, this method returns [constant AXIS_Y]."
msgstr ""
"Возвращает ось наименьшего значения вектора. См. константы [code]AXIS_*[/"
"code]. Если все компоненты равны, этот метод возвращает [constant AXIS_Y]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector2(minf(x, with), minf(y, with))[/code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентно "
"[code]Vector2(minf(x, with), minf(y, with))[/code]."

msgid ""
"Returns a new vector moved toward [param to] by the fixed [param delta] "
"amount. Will not go past the final value."
msgstr ""
"Возвращает новый вектор, смещенный к [param to] на фиксированную величину "
"[param delta]. Не выйдет за пределы конечного значения."

msgid ""
"Returns the result of scaling the vector to unit length. Equivalent to "
"[code]v / v.length()[/code]. Returns [code](0, 0)[/code] if [code]v.length() "
"== 0[/code]. See also [method is_normalized].\n"
"[b]Note:[/b] This function may return incorrect values if the input vector "
"length is near zero."
msgstr ""
"Возвращает результат масштабирования вектора до единичной длины. Эквивалентно "
"[code]v / v.length()[/code]. Возвращает [code](0, 0)[/code], если "
"[code]v.length() == 0[/code]. См. также [method is_normalized].\n"
"[b]Примечание:[/b] Эта функция может возвращать неверные значения, если длина "
"входного вектора близка к нулю."

msgid ""
"Returns a perpendicular vector rotated 90 degrees counter-clockwise compared "
"to the original, with the same length."
msgstr ""
"Возвращает перпендикулярный вектор, повернутый на 90 градусов против часовой "
"стрелки по сравнению с исходным, с той же длиной."

msgid ""
"Returns a vector composed of the [method @GlobalScope.fposmod] of this "
"vector's components and [param mod]."
msgstr ""
"Возвращает вектор, состоящий из [method @GlobalScope.fposmod] компонентов "
"этого вектора и [param mod]."

msgid ""
"Returns a vector composed of the [method @GlobalScope.fposmod] of this "
"vector's components and [param modv]'s components."
msgstr ""
"Возвращает вектор, состоящий из [method @GlobalScope.fposmod] компонентов "
"этого вектора и компонентов [param modv]."

msgid ""
"Returns a new vector resulting from projecting this vector onto the given "
"vector [param b]. The resulting new vector is parallel to [param b]. See also "
"[method slide].\n"
"[b]Note:[/b] If the vector [param b] is a zero vector, the components of the "
"resulting new vector will be [constant @GDScript.NAN]."
msgstr ""
"Возвращает новый вектор, полученный в результате проецирования этого вектора "
"на заданный вектор [param b]. Результирующий новый вектор параллелен [param "
"b]. См. также [method slide].\n"
"[b]Примечание:[/b] Если вектор [param b] является нулевым вектором, "
"компоненты результирующего нового вектора будут [constant @GDScript.NAN]."

msgid ""
"Returns the result of reflecting the vector from a line defined by the given "
"direction vector [param line].\n"
"[b]Note:[/b] [method reflect] differs from what other engines and frameworks "
"call [code skip-lint]reflect()[/code]. In other engines, [code skip-"
"lint]reflect()[/code] takes a normal direction which is a direction "
"perpendicular to the line. In Godot, you specify the direction of the line "
"directly. See also [method bounce] which does what most engines call [code "
"skip-lint]reflect()[/code]."
msgstr ""
"Возвращает результат отражения вектора от линии, заданной заданным вектором "
"направления [param line].\n"
"[b]Примечание:[/b] [method reflect] отличается от того, что другие движки и "
"фреймворки называют [code skip-lint]reflect()[/code]. В других движках [code "
"skip-lint]reflect()[/code] принимает нормальное направление, которое является "
"направлением, перпендикулярным линии. В Godot вы указываете направление линии "
"напрямую. См. также [method bounce], который делает то, что большинство "
"движков называют [code skip-lint]reflect()[/code]."

msgid ""
"Returns the result of rotating this vector by [param angle] (in radians). See "
"also [method @GlobalScope.deg_to_rad]."
msgstr ""
"Возвращает результат поворота этого вектора на [param angle] (в радианах). "
"См. также [method @GlobalScope.deg_to_rad]."

msgid ""
"Returns a new vector with all components rounded to the nearest integer, with "
"halfway cases rounded away from zero."
msgstr ""
"Возвращает новый вектор, все компоненты которого округлены до ближайшего "
"целого числа, а половинные значения округлены от нуля."

msgid ""
"Returns a new vector with each component set to [code]1.0[/code] if it's "
"positive, [code]-1.0[/code] if it's negative, and [code]0.0[/code] if it's "
"zero. The result is identical to calling [method @GlobalScope.sign] on each "
"component."
msgstr ""
"Возвращает новый вектор, в котором каждый компонент установлен на [code]1.0[/"
"code], если он положительный, [code]-1.0[/code], если он отрицательный, и "
"[code]0.0[/code], если он равен нулю. Результат идентичен вызову [method "
"@GlobalScope.sign] для каждого компонента."

msgid ""
"Returns the result of spherical linear interpolation between this vector and "
"[param to], by amount [param weight]. [param weight] is on the range of 0.0 "
"to 1.0, representing the amount of interpolation.\n"
"This method also handles interpolating the lengths if the input vectors have "
"different lengths. For the special case of one or both input vectors having "
"zero length, this method behaves like [method lerp]."
msgstr ""
"Возвращает результат сферической линейной интерполяции между этим вектором и "
"[param to] на величину [param weight]. [param weight] находится в диапазоне "
"от 0,0 до 1,0, представляя величину интерполяции.\n"
"Этот метод также обрабатывает интерполяцию длин, если входные векторы имеют "
"разную длину. Для особого случая, когда один или оба входных вектора имеют "
"нулевую длину, этот метод ведет себя как [method lerp]."

msgid ""
"Returns a new vector resulting from sliding this vector along a line with "
"normal [param n]. The resulting new vector is perpendicular to [param n], and "
"is equivalent to this vector minus its projection on [param n]. See also "
"[method project].\n"
"[b]Note:[/b] The vector [param n] must be normalized. See also [method "
"normalized]."
msgstr ""
"Возвращает новый вектор, полученный в результате скольжения этого вектора "
"вдоль линии с нормалью [param n]. Результирующий новый вектор перпендикулярен "
"[param n] и эквивалентен этому вектору за вычетом его проекции на [param n]. "
"См. также [method project].\n"
"[b]Примечание:[/b] Вектор [param n] должен быть нормализован. См. также "
"[method normalized]."

msgid ""
"Returns a new vector with each component snapped to the nearest multiple of "
"the corresponding component in [param step]. This can also be used to round "
"the components to an arbitrary number of decimals."
msgstr ""
"Возвращает новый вектор, в котором каждый компонент привязан к ближайшему "
"кратному соответствующего компонента в [param step]. Это также можно "
"использовать для округления компонентов до произвольного числа десятичных "
"знаков."

msgid ""
"Returns a new vector with each component snapped to the nearest multiple of "
"[param step]. This can also be used to round the components to an arbitrary "
"number of decimals."
msgstr ""
"Возвращает новый вектор, в котором каждый компонент привязан к ближайшему "
"кратному [param step]. Это также можно использовать для округления "
"компонентов до произвольного числа десятичных знаков."

msgid ""
"The vector's X component. Also accessible by using the index position [code]"
"[0][/code]."
msgstr "X компонент вектора. Может быть доступен через индекс [code][0][/code]."

msgid ""
"The vector's Y component. Also accessible by using the index position [code]"
"[1][/code]."
msgstr "Y компонент вектора. Может быть доступен через индекс [code][1][/code]."

msgid ""
"Enumerated value for the X axis. Returned by [method max_axis_index] and "
"[method min_axis_index]."
msgstr ""
"Перечисленное значение для оси X. Возвращается [method max_axis_index] и "
"[method min_axis_index]."

msgid ""
"Enumerated value for the Y axis. Returned by [method max_axis_index] and "
"[method min_axis_index]."
msgstr ""
"Перечисленное значение для оси Y. Возвращается [method max_axis_index] и "
"[method min_axis_index]."

msgid "Zero vector, a vector with all components set to [code]0[/code]."
msgstr "Нулевой вектор — вектор у которого все координаты равны [code]0[/code]."

msgid "One vector, a vector with all components set to [code]1[/code]."
msgstr "Вектор-единица — вектор у которого все координаты равны [code]1[/code]."

msgid ""
"Infinity vector, a vector with all components set to [constant @GDScript.INF]."
msgstr ""
"Вектор бесконечности, вектор, все компоненты которого установлены в [constant "
"@GDScript.INF]."

msgid "Left unit vector. Represents the direction of left."
msgstr "Левый единичный вектор. Представляет направление влево."

msgid "Right unit vector. Represents the direction of right."
msgstr "Правый единичный вектор. Представляет направление вправо."

msgid "Up unit vector. Y is down in 2D, so this vector points -Y."
msgstr ""
"Up единичный вектор вверх. Y направлен вниз в 2D, поэтому этот вектор "
"указывает на -Y."

msgid "Down unit vector. Y is down in 2D, so this vector points +Y."
msgstr ""
"Down - единичный вектор вниз. Y направлен вниз в 2D, поэтому этот вектор "
"указывает на +Y."

msgid ""
"Returns [code]true[/code] if the vectors are not equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Возвращает [code]true[/code], если векторы не равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx] вместо этого, что более "
"надежно.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN-ы."

msgid ""
"Inversely transforms (multiplies) the [Vector2] by the given [Transform2D] "
"transformation matrix, under the assumption that the transformation basis is "
"orthonormal (i.e. rotation/reflection is fine, scaling/skew is not).\n"
"[code]vector * transform[/code] is equivalent to [code]transform.inverse() * "
"vector[/code]. See [method Transform2D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * vector[/code] can be used instead. See "
"[method Transform2D.affine_inverse]."
msgstr ""
"Обратно преобразует (умножает) [Vector2] на заданную матрицу преобразования "
"[Transform2D], при условии, что базис преобразования ортонормален (т. е. "
"поворот/отражение хороши, масштабирование/перекос — нет).\n"
"[code]vector * transform[/code] эквивалентно [code]transform.inverse() * "
"vector[/code]. См. [method Transform2D.inverse].\n"
"Для преобразования с помощью обратного аффинного преобразования (например, с "
"масштабированием) вместо него можно использовать "
"[code]transform.affine_inverse() * vector[/code]. См. [method "
"Transform2D.affine_inverse]."

msgid ""
"Multiplies each component of the [Vector2] by the components of the given "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) * Vector2(3, 4)) # Prints (30.0, 80.0)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector2] на компоненты заданного [Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) * Vector2(3, 4)) # Prints (30.0, 80.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector2] by the given [float]."
msgstr "Умножает каждый компонент [Vector2] на заданное [float]."

msgid "Multiplies each component of the [Vector2] by the given [int]."
msgstr "Умножает каждый компонент [Vector2] на заданное [int]."

msgid ""
"Adds each component of the [Vector2] by the components of the given "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) + Vector2(3, 4)) # Prints (13.0, 24.0)\n"
"[/codeblock]"
msgstr ""
"Добавляет каждый компонент [Vector2] к компонентам указанного [Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) + Vector2(3, 4)) # Prints (13.0, 24.0)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector2] by the components of the given "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) - Vector2(3, 4)) # Prints (7.0, 16.0)\n"
"[/codeblock]"
msgstr ""
"Вычитает каждый компонент [Vector2] из компонентов заданного [Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) - Vector2(3, 4)) # Print (7.0, 16.0)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector2] by the components of the given "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) / Vector2(2, 5)) # Prints (5.0, 4.0)\n"
"[/codeblock]"
msgstr ""
"Делит каждый компонент [Vector2] на компоненты заданного [Vector2].\n"
"[codeblock]\n"
"print(Vector2(10, 20) / Vector2(2, 5)) # Prints (5.0, 4.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector2] by the given [float]."
msgstr "Делит каждый компонент [Vector2] на заданное [float]."

msgid "Divides each component of the [Vector2] by the given [int]."
msgstr "Делит каждый компонент [Vector2] на заданное [int]."

msgid ""
"Compares two [Vector2] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors. This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector2], сначала проверяя, меньше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов. "
"Этот оператор полезен для сортировки векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN-ы."

msgid ""
"Compares two [Vector2] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors. This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector2], сначала проверяя, меньше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов. Этот оператор полезен для сортировки векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN-ы."

msgid ""
"Returns [code]true[/code] if the vectors are exactly equal.\n"
"[b]Note:[/b] Due to floating-point precision errors, consider using [method "
"is_equal_approx] instead, which is more reliable.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Возвращает [code]true[/code], если векторы точно равны.\n"
"[b]Примечание:[/b] Из-за ошибок точности с плавающей точкой рассмотрите "
"возможность использования [method is_equal_approx] вместо этого, что более "
"надежно.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN."

msgid ""
"Compares two [Vector2] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors. This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector2], сначала проверяя, больше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов. "
"Этот оператор полезен для сортировки векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN-ы."

msgid ""
"Compares two [Vector2] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors. This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector2], сначала проверяя, больше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов. Этот оператор полезен для сортировки векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN."

msgid ""
"Access vector components using their [param index]. [code]v[0][/code] is "
"equivalent to [code]v.x[/code], and [code]v[1][/code] is equivalent to "
"[code]v.y[/code]."
msgstr ""
"Доступ к компонентам вектора осуществляется с помощью их [param index]. "
"[code]v[0][/code] эквивалентно [code]v.x[/code], а [code]v[1][/code] "
"эквивалентно [code]v.y[/code]."

msgid ""
"Returns the negative value of the [Vector2]. This is the same as writing "
"[code]Vector2(-v.x, -v.y)[/code]. This operation flips the direction of the "
"vector while keeping the same magnitude. With floats, the number zero can be "
"either positive or negative."
msgstr ""
"Возвращает отрицательное значение [Vector2]. Это то же самое, что и запись "
"[code]Vector2(-v.x, -v.y)[/code]. Эта операция меняет направление вектора, "
"сохраняя ту же величину. С плавающей точкой число ноль может быть как "
"положительным, так и отрицательным."

msgid "A 2D vector using integer coordinates."
msgstr "Двумерный вектор, использующий целочисленные координаты."

msgid ""
"A 2-element structure that can be used to represent 2D grid coordinates or "
"any other pair of integers.\n"
"It uses integer coordinates and is therefore preferable to [Vector2] when "
"exact precision is required. Note that the values are limited to 32 bits, and "
"unlike [Vector2] this cannot be configured with an engine build option. Use "
"[int] or [PackedInt64Array] if 64-bit values are needed.\n"
"[b]Note:[/b] In a boolean context, a Vector2i will evaluate to [code]false[/"
"code] if it's equal to [code]Vector2i(0, 0)[/code]. Otherwise, a Vector2i "
"will always evaluate to [code]true[/code]."
msgstr ""
"Структура из 2 элементов, которая может использоваться для представления "
"координат 2D-сетки или любой другой пары целых чисел.\n"
"Она использует целочисленные координаты и поэтому предпочтительнее [Vector2], "
"когда требуется наивысшая точность. Обратите внимание, что значения "
"ограничены 32 битами, и в отличие от [Vector2] это нельзя настроить с помощью "
"параметра сборки движка. Используйте [int] или [PackedInt64Array], если "
"требуются 64-битные значения.\n"
"[b]Примечание:[/b] В булевом контексте Vector2i будет оцениваться как "
"[code]false[/code], если он равен [code]Vector2i(0, 0)[/code]. В противном "
"случае Vector2i всегда будет оцениваться как [code]true[/code]."

msgid ""
"Constructs a default-initialized [Vector2i] with all components set to "
"[code]0[/code]."
msgstr ""
"Создает инициализированный по умолчанию [Vector2i] со всеми компонентами, "
"установленными в [code]0[/code]."

msgid "Constructs a [Vector2i] as a copy of the given [Vector2i]."
msgstr "Создает [Vector2i] как копию заданного [Vector2i]."

msgid ""
"Constructs a new [Vector2i] from the given [Vector2] by truncating "
"components' fractional parts (rounding towards zero). For a different "
"behavior consider passing the result of [method Vector2.ceil], [method "
"Vector2.floor] or [method Vector2.round] to this constructor instead."
msgstr ""
"Создает новый [Vector2i] из заданного [Vector2] путем усечения дробных частей "
"компонентов (округление в сторону нуля). Для другого поведения рассмотрите "
"возможность передачи результата [method Vector2.ceil], [method Vector2.floor] "
"или [method Vector2.round] этому конструктору."

msgid "Constructs a new [Vector2i] from the given [param x] and [param y]."
msgstr "Создает новый [Vector2i] из заданных [param x] и [param y]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector2i(maxi(x, with.x), maxi(y, with.y))[/code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector2i(maxi(x, with.x), maxi(y, with.y))[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector2i(maxi(x, with), maxi(y, with))[/code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector2i(maxi(x, with), maxi(y, with))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector2i(mini(x, with.x), mini(y, with.y))[/code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентный "
"[code]Vector2i(mini(x, with.x), mini(y, with.y))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector2i(mini(x, with), mini(y, with))[/code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентно "
"[code]Vector2i(mini(x, with), mini(y, with))[/code]."

msgid ""
"Returns a new vector with each component set to [code]1[/code] if it's "
"positive, [code]-1[/code] if it's negative, and [code]0[/code] if it's zero. "
"The result is identical to calling [method @GlobalScope.sign] on each "
"component."
msgstr ""
"Возвращает новый вектор, в котором каждый компонент установлен на [code]1[/"
"code], если он положительный, [code]-1[/code], если он отрицательный, и "
"[code]0[/code], если он равен нулю. Результат идентичен вызову [method "
"@GlobalScope.sign] для каждого компонента."

msgid ""
"Returns a new vector with each component snapped to the closest multiple of "
"the corresponding component in [param step]."
msgstr ""
"Возвращает новый вектор, в котором каждый компонент привязан к ближайшему "
"кратному соответствующего компонента в [param step]."

msgid ""
"Returns a new vector with each component snapped to the closest multiple of "
"[param step]."
msgstr ""
"Возвращает новый вектор, в котором каждый компонент привязан к ближайшему "
"кратному [param step]."

msgid ""
"Min vector, a vector with all components equal to [code]INT32_MIN[/code]. Can "
"be used as a negative integer equivalent of [constant Vector2.INF]."
msgstr ""
"Вектор Min, вектор, все компоненты которого равны [code]INT32_MIN[/code]. "
"Может использоваться как отрицательный целочисленный эквивалент [constant "
"Vector2.INF]."

msgid ""
"Max vector, a vector with all components equal to [code]INT32_MAX[/code]. Can "
"be used as an integer equivalent of [constant Vector2.INF]."
msgstr ""
"Вектор Max, вектор, все компоненты которого равны [code]INT32_MAX[/code]. "
"Может использоваться как целочисленный эквивалент [constant Vector2.INF]."

msgid "Returns [code]true[/code] if the vectors are not equal."
msgstr "Возвращает [code]true[/code], если векторы не равны."

msgid ""
"Gets the remainder of each component of the [Vector2i] with the components of "
"the given [Vector2i]. This operation uses truncated division, which is often "
"not desired as it does not work well with negative numbers. Consider using "
"[method @GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector2i(10, -20) % Vector2i(7, 8)) # Prints (3, -4)\n"
"[/codeblock]"
msgstr ""
"Получает остаток каждого компонента [Vector2i] с компонентами заданного "
"[Vector2i]. Эта операция использует усеченное деление, которое часто "
"нежелательно, поскольку оно плохо работает с отрицательными числами. "
"Рассмотрите возможность использования [method @GlobalScope.posmod] вместо "
"этого, если вы хотите обрабатывать отрицательные числа.\n"
"[codeblock]\n"
"print(Vector2i(10, -20) % Vector2i(7, 8)) # Prints (3, -4)\n"
"[/codeblock]"

msgid ""
"Gets the remainder of each component of the [Vector2i] with the given [int]. "
"This operation uses truncated division, which is often not desired as it does "
"not work well with negative numbers. Consider using [method "
"@GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector2i(10, -20) % 7) # Prints (3, -6)\n"
"[/codeblock]"
msgstr ""
"Получает остаток каждого компонента [Vector2i] с заданным [int]. Эта операция "
"использует усеченное деление, которое часто нежелательно, поскольку оно плохо "
"работает с отрицательными числами. Рассмотрите возможность использования "
"[method @GlobalScope.posmod] вместо этого, если вы хотите обрабатывать "
"отрицательные числа.\n"
"[codeblock]\n"
"print(Vector2i(10, -20) % 7) # Prints (3, -6)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector2i] by the components of the given "
"[Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) * Vector2i(3, 4)) # Prints (30, 80)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector2i] на компоненты заданного [Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) * Vector2i(3, 4)) # Выводит (30, 80)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector2i] by the given [float]. Returns a "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2i(10, 15) * 0.9) # Prints (9.0, 13.5)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector2i] на заданный [float]. Возвращает "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2i(10, 15) * 0.9) # Prints (9.0, 13.5)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector2i] by the given [int]."
msgstr "Умножает каждый компонент [Vector2i] на заданное [int]."

msgid ""
"Adds each component of the [Vector2i] by the components of the given "
"[Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) + Vector2i(3, 4)) # Prints (13, 24)\n"
"[/codeblock]"
msgstr ""
"Добавляет каждый компонент [Vector2i] к компонентам указанного [Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) + Vector2i(3, 4)) # Prints (13, 24)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector2i] by the components of the given "
"[Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) - Vector2i(3, 4)) # Prints (7, 16)\n"
"[/codeblock]"
msgstr ""
"Вычитает каждый компонент [Vector2i] из компонентов заданного [Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) - Vector2i(3, 4)) # Prints (7, 16)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector2i] by the components of the given "
"[Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) / Vector2i(2, 5)) # Prints (5, 4)\n"
"[/codeblock]"
msgstr ""
"Делит каждый компонент [Vector2i] на компоненты заданного [Vector2i].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) / Vector2i(2, 5)) # Prints (5, 4)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector2i] by the given [float]. Returns a "
"[Vector2].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) / 2.9) # Prints (5.0, 10.0)\n"
"[/codeblock]"
msgstr ""
"Делит каждый компонент [Vector2i] на заданное [float]. Возвращает [Vector2].\n"
"[codeblock]\n"
"print(Vector2i(10, 20) / 2.9) # Prints (5.0, 10.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector2i] by the given [int]."
msgstr "Делит каждый компонент [Vector2i] на заданное [int]."

msgid ""
"Compares two [Vector2i] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors. This operator is useful for sorting vectors."
msgstr ""
"Сравнивает два вектора [Vector2i], сначала проверяя, меньше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов. "
"Этот оператор полезен для сортировки векторов."

msgid ""
"Compares two [Vector2i] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors. This operator is useful for sorting vectors."
msgstr ""
"Сравнивает два вектора [Vector2i], сначала проверяя, меньше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов. Этот оператор полезен для сортировки векторов."

msgid "Returns [code]true[/code] if the vectors are equal."
msgstr "Возвращает [code]true[/code] если векторы равны."

msgid ""
"Compares two [Vector2i] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors. This operator is useful for sorting vectors."
msgstr ""
"Сравнивает два вектора [Vector2i], сначала проверяя, больше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов. "
"Этот оператор полезен для сортировки векторов."

msgid ""
"Compares two [Vector2i] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors. This operator is useful for sorting vectors."
msgstr ""
"Сравнивает два вектора [Vector2i], сначала проверяя, больше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов. Этот оператор полезен для сортировки векторов."

msgid ""
"Returns the negative value of the [Vector2i]. This is the same as writing "
"[code]Vector2i(-v.x, -v.y)[/code]. This operation flips the direction of the "
"vector while keeping the same magnitude."
msgstr ""
"Возвращает отрицательное значение [Vector2i]. Это то же самое, что и запись "
"[code]Vector2i(-v.x, -v.y)[/code]. Эта операция меняет направление вектора, "
"сохраняя ту же величину."

msgid "A 3D vector using floating-point coordinates."
msgstr "Трехмерный вектор, использующий координаты с плавающей точкой."

msgid ""
"A 3-element structure that can be used to represent 3D coordinates or any "
"other triplet of numeric values.\n"
"It uses floating-point coordinates. By default, these floating-point values "
"use 32-bit precision, unlike [float] which is always 64-bit. If double "
"precision is needed, compile the engine with the option "
"[code]precision=double[/code].\n"
"See [Vector3i] for its integer counterpart.\n"
"[b]Note:[/b] In a boolean context, a Vector3 will evaluate to [code]false[/"
"code] if it's equal to [code]Vector3(0, 0, 0)[/code]. Otherwise, a Vector3 "
"will always evaluate to [code]true[/code]."
msgstr ""
"Структура из 3 элементов, которая может использоваться для представления 3D-"
"координат или любого другого триплета числовых значений.\n"
"Она использует координаты с плавающей точкой. По умолчанию эти значения с "
"плавающей точкой используют 32-битную точность, в отличие от [float], который "
"всегда 64-битный. Если требуется двойная точность, скомпилируйте движок с "
"опцией [code]precision=double[/code].\n"
"См. [Vector3i] для его целочисленного аналога.\n"
"[b]Примечание:[/b] В логическом контексте Vector3 будет оцениваться как "
"[code]false[/code], если он равен [code]Vector3(0, 0, 0)[/code]. В противном "
"случае Vector3 всегда будет оцениваться как [code]true[/code]."

msgid ""
"Constructs a default-initialized [Vector3] with all components set to "
"[code]0[/code]."
msgstr ""
"Создает инициализированный по умолчанию [Vector3], где все компоненты "
"установлены в [code]0[/code]."

msgid "Constructs a [Vector3] as a copy of the given [Vector3]."
msgstr "Создает [Vector3] как копию заданного [Vector3]."

msgid "Constructs a new [Vector3] from [Vector3i]."
msgstr "Создает новый [Vector3] из [Vector3i]."

msgid "Returns a [Vector3] with the given components."
msgstr "Возвращает [Vector3] с заданными компонентами."

msgid "Returns the unsigned minimum angle to the given vector, in radians."
msgstr "Возвращает беззнаковый минимальный угол к заданному вектору в радианах."

msgid ""
"Returns the vector \"bounced off\" from a plane defined by the given normal "
"[param n].\n"
"[b]Note:[/b] [method bounce] performs the operation that most engines and "
"frameworks call [code skip-lint]reflect()[/code]."
msgstr ""
"Возвращает вектор, \"отскочивший\" от плоскости, определенной заданной "
"нормалью [param n].\n"
"[b]Примечание:[/b] [method bounce] выполняет операцию, которую большинство "
"движков и фреймворков называют [code skip-lint]reflect()[/code]."

msgid ""
"Returns the cross product of this vector and [param with].\n"
"This returns a vector perpendicular to both this and [param with], which "
"would be the normal vector of the plane defined by the two vectors. As there "
"are two such vectors, in opposite directions, this method returns the vector "
"defined by a right-handed coordinate system. If the two vectors are parallel "
"this returns an empty vector, making it useful for testing if two vectors are "
"parallel."
msgstr ""
"Возвращает векторное произведение этого вектора и [param with].\n"
"Это возвращает вектор, перпендикулярный как этому, так и [param with], "
"который будет нормальным вектором плоскости, определенной двумя векторами. "
"Поскольку есть два таких вектора в противоположных направлениях, этот метод "
"возвращает вектор, определенный правой системой координат. Если два вектора "
"параллельны, это возвращает пустой вектор, что делает его полезным для "
"проверки параллельности двух векторов."

msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector3(1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z)[/code]."
msgstr ""
"Возвращает обратный вектор. Это то же самое, что [code]Vector3(1.0 / v.x, "
"1.0 / v.y, 1.0 / v.z)[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector3(maxf(x, with.x), maxf(y, with.y), maxf(z, with.z))[/code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector3(maxf(x, with.x), maxf(y, with.y), maxf(z, with.z))[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector3(maxf(x, with), maxf(y, with), maxf(z, with))[/code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector3(maxf(x, with), maxf(y, with), maxf(z, with))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector3(minf(x, with.x), minf(y, with.y), minf(z, with.z))[/code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентный "
"[code]Vector3(minf(x, with.x), minf(y, with.y), minf(z, with.z))[/code]."

msgid ""
"Returns the axis of the vector's lowest value. See [code]AXIS_*[/code] "
"constants. If all components are equal, this method returns [constant AXIS_Z]."
msgstr ""
"Возвращает ось наименьшего значения вектора. См. константы [code]AXIS_*[/"
"code]. Если все компоненты равны, этот метод возвращает [constant AXIS_Z]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector3(minf(x, with), minf(y, with), minf(z, with))[/code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентно "
"[code]Vector3(minf(x, with), minf(y, with), minf(z, with))[/code]."

msgid ""
"Returns the result of scaling the vector to unit length. Equivalent to "
"[code]v / v.length()[/code]. Returns [code](0, 0, 0)[/code] if "
"[code]v.length() == 0[/code]. See also [method is_normalized].\n"
"[b]Note:[/b] This function may return incorrect values if the input vector "
"length is near zero."
msgstr ""
"Возвращает результат масштабирования вектора до единичной длины. Эквивалентно "
"[code]v / v.length()[/code]. Возвращает [code](0, 0, 0)[/code], если "
"[code]v.length() == 0[/code]. См. также [method is_normalized].\n"
"[b]Примечание:[/b] Эта функция может возвращать неверные значения, если длина "
"входного вектора близка к нулю."

msgid ""
"Returns the [Vector3] from an octahedral-compressed form created using "
"[method octahedron_encode] (stored as a [Vector2])."
msgstr ""
"Возвращает [Vector3] из октаэдрически сжатой формы, созданной с помощью "
"[method octahedron_encode] (сохраненной как [Vector2])."

msgid ""
"Returns the octahedral-encoded (oct32) form of this [Vector3] as a [Vector2]. "
"Since a [Vector2] occupies 1/3 less memory compared to [Vector3], this form "
"of compression can be used to pass greater amounts of [method normalized] "
"[Vector3]s without increasing storage or memory requirements. See also "
"[method octahedron_decode].\n"
"[b]Note:[/b] [method octahedron_encode] can only be used for [method "
"normalized] vectors. [method octahedron_encode] does [i]not[/i] check whether "
"this [Vector3] is normalized, and will return a value that does not "
"decompress to the original value if the [Vector3] is not normalized.\n"
"[b]Note:[/b] Octahedral compression is [i]lossy[/i], although visual "
"differences are rarely perceptible in real world scenarios."
msgstr ""
"Возвращает октаэдрически закодированную (oct32) форму этого [Vector3] как "
"[Vector2]. Поскольку [Vector2] занимает на 1/3 меньше памяти по сравнению с "
"[Vector3], эта форма сжатия может использоваться для передачи большего "
"количества [method normalized] [Vector3] без увеличения требований к хранению "
"или памяти. См. также [method octahedron_decode].\n"
"[b]Примечание:[/b] [method octahedron_encode] может использоваться только для "
"[method normalized] векторов. [method octahedron_encode] [i]не[/i] проверяет, "
"нормализован ли этот [Vector3], и вернет значение, которое не распаковывается "
"до исходного значения, если [Vector3] не нормализован.\n"
"[b]Примечание:[/b] Октаэдрическое сжатие [i]с потерями[/i], хотя визуальные "
"различия редко заметны в реальных сценариях."

msgid "Returns the outer product with [param with]."
msgstr "Возвращает внешний продукт с [param with]."

msgid ""
"Returns the result of reflecting the vector through a plane defined by the "
"given normal vector [param n].\n"
"[b]Note:[/b] [method reflect] differs from what other engines and frameworks "
"call [code skip-lint]reflect()[/code]. In other engines, [code skip-"
"lint]reflect()[/code] returns the result of the vector reflected by the given "
"plane. The reflection thus passes through the given normal. While in Godot "
"the reflection passes through the plane and can be thought of as bouncing off "
"the normal. See also [method bounce] which does what most engines call [code "
"skip-lint]reflect()[/code]."
msgstr ""
"Возвращает результат отражения вектора через плоскость, определенную заданным "
"вектором нормали [param n].\n"
"[b]Примечание:[/b] [method reflect] отличается от того, что другие движки и "
"фреймворки называют [code skip-lint]reflect()[/code]. В других движках [code "
"skip-lint]reflect()[/code] возвращает результат вектора, отраженного заданной "
"плоскостью. Таким образом, отражение проходит через заданную нормаль. В то "
"время как в Godot отражение проходит через плоскость и может рассматриваться "
"как отскок от нормали. См. также [method bounce], который делает то, что "
"большинство движков называют [code skip-lint]reflect()[/code]."

msgid ""
"Returns the result of rotating this vector around a given axis by [param "
"angle] (in radians). The axis must be a normalized vector. See also [method "
"@GlobalScope.deg_to_rad]."
msgstr ""
"Возвращает результат вращения этого вектора вокруг заданной оси на [param "
"angle] (в радианах). Ось должна быть нормализованным вектором. См. также "
"[method @GlobalScope.deg_to_rad]."

msgid ""
"Returns the signed angle to the given vector, in radians. The sign of the "
"angle is positive in a counter-clockwise direction and negative in a "
"clockwise direction when viewed from the side specified by the [param axis]."
msgstr ""
"Возвращает знаковый угол к заданному вектору в радианах. Знак угла "
"положительный в направлении против часовой стрелки и отрицательный в "
"направлении по часовой стрелке, если смотреть со стороны, указанной [param "
"axis]."

msgid ""
"Returns a new vector resulting from sliding this vector along a plane with "
"normal [param n]. The resulting new vector is perpendicular to [param n], and "
"is equivalent to this vector minus its projection on [param n]. See also "
"[method project].\n"
"[b]Note:[/b] The vector [param n] must be normalized. See also [method "
"normalized]."
msgstr ""
"Возвращает новый вектор, полученный в результате скольжения этого вектора по "
"плоскости с нормалью [param n]. Результирующий новый вектор перпендикулярен "
"[param n] и эквивалентен этому вектору за вычетом его проекции на [param n]. "
"См. также [method project].\n"
"[b]Примечание:[/b] Вектор [param n] должен быть нормализован. См. также "
"[method normalized]."

msgid ""
"The vector's Z component. Also accessible by using the index position [code]"
"[2][/code]."
msgstr ""
"Z компонент вектора. Также может быть доступен по индексу [code][2][/code]."

msgid ""
"Enumerated value for the Z axis. Returned by [method max_axis_index] and "
"[method min_axis_index]."
msgstr ""
"Перечисленное значение для оси Z. Возвращается [method max_axis_index] и "
"[method min_axis_index]."

msgid ""
"Left unit vector. Represents the local direction of left, and the global "
"direction of west."
msgstr ""
"Левый единичный вектор. Представляет локальное направление налево и "
"глобальное направление запад."

msgid ""
"Right unit vector. Represents the local direction of right, and the global "
"direction of east."
msgstr ""
"Правый единичный вектор. Представляет локальное направление вправо и "
"глобальное направление на восток."

msgid "Up unit vector."
msgstr "Верхний единичный вектор."

msgid "Down unit vector."
msgstr "Нижний единичный вектор."

msgid ""
"Forward unit vector. Represents the local direction of forward, and the "
"global direction of north. Keep in mind that the forward direction for "
"lights, cameras, etc is different from 3D assets like characters, which face "
"towards the camera by convention. Use [constant Vector3.MODEL_FRONT] and "
"similar constants when working in 3D asset space."
msgstr ""
"Прямой единичный вектор. Представляет локальное направление вперед и "
"глобальное направление на север. Помните, что прямое направление для "
"источников света, камер и т. д. отличается от 3D-ресурсов, таких как "
"персонажи, которые по соглашению обращены лицом к камере. Используйте "
"[constant Vector3.MODEL_FRONT] и подобные константы при работе в пространстве "
"3D-ресурсов."

msgid ""
"Back unit vector. Represents the local direction of back, and the global "
"direction of south."
msgstr ""
"Вектор единицы назад. Представляет локальное направление назад и глобальное "
"направление юг."

msgid "Unit vector pointing towards the left side of imported 3D assets."
msgstr ""
"Единичный вектор, направленный в левую сторону импортированных 3D-ресурсов."

msgid "Unit vector pointing towards the right side of imported 3D assets."
msgstr ""
"Единичный вектор, направленный в правую сторону импортированных 3D-ресурсов."

msgid "Unit vector pointing towards the top side (up) of imported 3D assets."
msgstr ""
"Единичный вектор, направленный к верхней стороне (up) импортированных 3D-"
"ресурсов."

msgid ""
"Unit vector pointing towards the bottom side (down) of imported 3D assets."
msgstr ""
"Единичный вектор, направленный к нижней стороне (down) импортированных 3D-"
"ресурсов."

msgid ""
"Unit vector pointing towards the front side (facing forward) of imported 3D "
"assets."
msgstr ""
"Единичный вектор, направленный к передней стороне (лицом вперед) "
"импортированных 3D-ресурсов."

msgid "Unit vector pointing towards the rear side (back) of imported 3D assets."
msgstr ""
"Единичный вектор, направленный к задней стороне (back) импортированных 3D-"
"ресурсов."

msgid ""
"Inversely transforms (multiplies) the [Vector3] by the given [Basis] matrix, "
"under the assumption that the basis is orthonormal (i.e. rotation/reflection "
"is fine, scaling/skew is not).\n"
"[code]vector * basis[/code] is equivalent to [code]basis.transposed() * "
"vector[/code]. See [method Basis.transposed].\n"
"For transforming by inverse of a non-orthonormal basis (e.g. with scaling) "
"[code]basis.inverse() * vector[/code] can be used instead. See [method "
"Basis.inverse]."
msgstr ""
"Обратно преобразует (умножает) [Vector3] на заданную матрицу [Basis], "
"предполагая, что базис ортонормальный (т. е. поворот/отражение хороши, "
"масштабирование/перекос — нет).\n"
"[code]vector * basis[/code] эквивалентно [code]basis.transposed() * vector[/"
"code]. См. [method Basis.transposed].\n"
"Для преобразования обратным образом не ортонормального базиса (например, с "
"масштабированием) вместо этого можно использовать [code]basis.inverse() * "
"vector[/code]. См. [method Basis.inverse]."

msgid ""
"Inversely transforms (multiplies) the [Vector3] by the given [Quaternion].\n"
"[code]vector * quaternion[/code] is equivalent to [code]quaternion.inverse() "
"* vector[/code]. See [method Quaternion.inverse]."
msgstr ""
"Обратно преобразует (умножает) [Vector3] на заданный [Quaternion].\n"
"[code]vector * quaternion[/code] эквивалентно [code]quaternion.inverse() * "
"vector[/code]. См. [method Quaternion.inverse]."

msgid ""
"Inversely transforms (multiplies) the [Vector3] by the given [Transform3D] "
"transformation matrix, under the assumption that the transformation basis is "
"orthonormal (i.e. rotation/reflection is fine, scaling/skew is not).\n"
"[code]vector * transform[/code] is equivalent to [code]transform.inverse() * "
"vector[/code]. See [method Transform3D.inverse].\n"
"For transforming by inverse of an affine transformation (e.g. with scaling) "
"[code]transform.affine_inverse() * vector[/code] can be used instead. See "
"[method Transform3D.affine_inverse]."
msgstr ""
"Обратно преобразует (умножает) [Vector3] на заданную матрицу преобразования "
"[Transform3D], предполагая, что базис преобразования ортонормален (т. е. "
"поворот/отражение хороши, масштабирование/перекос — нет).\n"
"[code]vector * transform[/code] эквивалентно [code]transform.inverse() * "
"vector[/code]. См. [method Transform3D.inverse].\n"
"Для преобразования с помощью обратного аффинного преобразования (например, с "
"масштабированием) вместо него можно использовать "
"[code]transform.affine_inverse() * vector[/code]. См. [method "
"Transform3D.affine_inverse]."

msgid ""
"Multiplies each component of the [Vector3] by the components of the given "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) * Vector3(3, 4, 5)) # Prints (30.0, 80.0, 150.0)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector3] на компоненты заданного [Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) * Vector3(3, 4, 5)) # Prints (30.0, 80.0, 150.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector3] by the given [int]."
msgstr "Умножает каждый компонент [Vector3] на заданное [int]."

msgid ""
"Adds each component of the [Vector3] by the components of the given "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) + Vector3(3, 4, 5)) # Prints (13.0, 24.0, 35.0)\n"
"[/codeblock]"
msgstr ""
"Добавляет каждый компонент [Vector3] к компонентам заданного [Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) + Vector3(3, 4, 5)) # Prints (13.0, 24.0, 35.0)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector3] by the components of the given "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) - Vector3(3, 4, 5)) # Prints (7.0, 16.0, 25.0)\n"
"[/codeblock]"
msgstr ""
"Вычитает каждый компонент [Vector3] из компонентов заданного [Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) - Vector3(3, 4, 5)) # Prints (7.0, 16.0, 25.0)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector3] by the components of the given "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) / Vector3(2, 5, 3)) # Prints (5.0, 4.0, 10.0)\n"
"[/codeblock]"
msgstr ""
"Делит каждый компонент [Vector3] на компоненты заданного [Vector3].\n"
"[codeblock]\n"
"print(Vector3(10, 20, 30) / Vector3(2, 5, 3)) # Prints (5.0, 4.0, 10.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector3] by the given [float]."
msgstr "Делит каждый компонент [Vector3] на заданное [float]."

msgid "Divides each component of the [Vector3] by the given [int]."
msgstr "Делит каждый компонент [Vector3] на заданное [int]."

msgid ""
"Compares two [Vector3] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors, and then with the Z values. This operator is useful for sorting "
"vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector3], сначала проверяя, меньше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов, а "
"затем со значениями Z. Этот оператор полезен для сортировки векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN-ы."

msgid ""
"Compares two [Vector3] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors, and then with the Z values. This operator is useful for "
"sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector3], сначала проверяя, меньше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов, а затем со значениями Z. Этот оператор полезен для сортировки "
"векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN-ы."

msgid ""
"Compares two [Vector3] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors, and then with the Z values. This operator is useful for sorting "
"vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector3], сначала проверяя, больше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов, а "
"затем со значениями Z. Этот оператор полезен для сортировки векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN-ы."

msgid ""
"Compares two [Vector3] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors, and then with the Z values. This operator is "
"useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector3], сначала проверяя, больше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов, а затем со значениями Z. Этот оператор полезен для сортировки "
"векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN-ы."

msgid ""
"Access vector components using their [param index]. [code]v[0][/code] is "
"equivalent to [code]v.x[/code], [code]v[1][/code] is equivalent to [code]v.y[/"
"code], and [code]v[2][/code] is equivalent to [code]v.z[/code]."
msgstr ""
"Доступ к компонентам вектора осуществляется с помощью их [param index]. "
"[code]v[0][/code] эквивалентно [code]v.x[/code], [code]v[1][/code] "
"эквивалентно [code]v.y[/code], а [code]v[2][/code] эквивалентно [code]v.z[/"
"code]."

msgid ""
"Returns the negative value of the [Vector3]. This is the same as writing "
"[code]Vector3(-v.x, -v.y, -v.z)[/code]. This operation flips the direction of "
"the vector while keeping the same magnitude. With floats, the number zero can "
"be either positive or negative."
msgstr ""
"Возвращает отрицательное значение [Vector3]. Это то же самое, что и запись "
"[code]Vector3(-v.x, -v.y, -v.z)[/code]. Эта операция меняет направление "
"вектора, сохраняя ту же величину. С плавающей точкой число ноль может быть "
"как положительным, так и отрицательным."

msgid "A 3D vector using integer coordinates."
msgstr "Трехмерный вектор, использующий целочисленные координаты."

msgid ""
"A 3-element structure that can be used to represent 3D grid coordinates or "
"any other triplet of integers.\n"
"It uses integer coordinates and is therefore preferable to [Vector3] when "
"exact precision is required. Note that the values are limited to 32 bits, and "
"unlike [Vector3] this cannot be configured with an engine build option. Use "
"[int] or [PackedInt64Array] if 64-bit values are needed.\n"
"[b]Note:[/b] In a boolean context, a Vector3i will evaluate to [code]false[/"
"code] if it's equal to [code]Vector3i(0, 0, 0)[/code]. Otherwise, a Vector3i "
"will always evaluate to [code]true[/code]."
msgstr ""
"Структура из 3 элементов, которая может использоваться для представления "
"координат сетки 3D или любого другого триплета целых чисел.\n"
"Она использует целочисленные координаты и поэтому предпочтительнее [Vector3], "
"когда требуется точная точность. Обратите внимание, что значения ограничены "
"32 битами, и в отличие от [Vector3] это нельзя настроить с помощью опции "
"сборки движка. Используйте [int] или [PackedInt64Array], если требуются 64-"
"битные значения.\n"
"[b]Примечание:[/b] В булевом контексте Vector3i будет оцениваться как "
"[code]false[/code], если он равен [code]Vector3i(0, 0, 0)[/code]. В противном "
"случае Vector3i всегда будет оцениваться как [code]true[/code]."

msgid ""
"Constructs a default-initialized [Vector3i] with all components set to "
"[code]0[/code]."
msgstr ""
"Создает инициализированный по умолчанию [Vector3i] со всеми компонентами, "
"установленными в [code]0[/code]."

msgid "Constructs a [Vector3i] as a copy of the given [Vector3i]."
msgstr "Создает [Vector3i] как копию заданного [Vector3i]."

msgid ""
"Constructs a new [Vector3i] from the given [Vector3] by truncating "
"components' fractional parts (rounding towards zero). For a different "
"behavior consider passing the result of [method Vector3.ceil], [method "
"Vector3.floor] or [method Vector3.round] to this constructor instead."
msgstr ""
"Создает новый [Vector3i] из заданного [Vector3] путем усечения дробных частей "
"компонентов (округление в сторону нуля). Для другого поведения рассмотрите "
"возможность передачи результата [method Vector3.ceil], [method Vector3.floor] "
"или [method Vector3.round] этому конструктору."

msgid "Returns a [Vector3i] with the given components."
msgstr "Возвращает [Vector3i] с заданными компонентами."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector3i(maxi(x, with.x), maxi(y, with.y), maxi(z, with.z))[/code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], эквивалентно "
"[code]Vector3i(maxi(x, with.x), maxi(y, with.y), maxi(z, with.z))[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector3i(maxi(x, with), maxi(y, with), maxi(z, with))[/code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector3i(maxi(x, with), maxi(y, with), maxi(z, with))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector3i(mini(x, with.x), mini(y, with.y), mini(z, with.z))[/code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентно "
"[code]Vector3i(mini(x, with.x), mini(y, with.y), mini(z, with.z))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector3i(mini(x, with), mini(y, with), mini(z, with))[/code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентно "
"[code]Vector3i(mini(x, with), mini(y, with), mini(z, with))[/code]."

msgid ""
"Min vector, a vector with all components equal to [code]INT32_MIN[/code]. Can "
"be used as a negative integer equivalent of [constant Vector3.INF]."
msgstr ""
"Вектор Min - вектор, все компоненты которого равны [code]INT32_MIN[/code]. "
"Может использоваться как отрицательный целочисленный эквивалент [constant "
"Vector3.INF]."

msgid ""
"Max vector, a vector with all components equal to [code]INT32_MAX[/code]. Can "
"be used as an integer equivalent of [constant Vector3.INF]."
msgstr ""
"Вектор Max - вектор, все компоненты которого равны [code]INT32_MAX[/code]. "
"Может использоваться как целочисленный эквивалент [constant Vector3.INF]."

msgid ""
"Forward unit vector. Represents the local direction of forward, and the "
"global direction of north."
msgstr ""
"Прямой единичный вектор. Представляет локальное направление вперед и "
"глобальное направление на север."

msgid ""
"Gets the remainder of each component of the [Vector3i] with the components of "
"the given [Vector3i]. This operation uses truncated division, which is often "
"not desired as it does not work well with negative numbers. Consider using "
"[method @GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector3i(10, -20, 30) % Vector3i(7, 8, 9)) # Prints (3, -4, 3)\n"
"[/codeblock]"
msgstr ""
"Получает остаток каждого компонента [Vector3i] с компонентами заданного "
"[Vector3i]. Эта операция использует усеченное деление, которое часто "
"нежелательно, так как оно плохо работает с отрицательными числами. "
"Рассмотрите возможность использования [method @GlobalScope.posmod] вместо "
"этого, если вы хотите обрабатывать отрицательные числа.\n"
"[codeblock]\n"
"print(Vector3i(10, -20, 30) % Vector3i(7, 8, 9)) # Prints (3, -4, 3)\n"
"[/codeblock]"

msgid ""
"Gets the remainder of each component of the [Vector3i] with the given [int]. "
"This operation uses truncated division, which is often not desired as it does "
"not work well with negative numbers. Consider using [method "
"@GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector3i(10, -20, 30) % 7) # Prints (3, -6, 2)\n"
"[/codeblock]"
msgstr ""
"Получает остаток каждого компонента [Vector3i] с заданным [int]. Эта операция "
"использует усеченное деление, которое часто нежелательно, поскольку оно плохо "
"работает с отрицательными числами. Рассмотрите возможность использования "
"[method @GlobalScope.posmod] вместо этого, если вы хотите обрабатывать "
"отрицательные числа.\n"
"[codeblock]\n"
"print(Vector3i(10, -20, 30) % 7) # Prints (3, -6, 2)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector3i] by the components of the given "
"[Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) * Vector3i(3, 4, 5)) # Prints (30, 80, 150)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector3i] на компоненты заданного [Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) * Vector3i(3, 4, 5)) # Prints (30, 80, 150)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector3i] by the given [float]. Returns a "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3i(10, 15, 20) * 0.9) # Prints (9.0, 13.5, 18.0)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector3i] на заданный [float]. Возвращает "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3i(10, 15, 20) * 0.9) # Prints (9.0, 13.5, 18.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector3i] by the given [int]."
msgstr "Умножает каждый компонент [Vector3i] на заданное [int]."

msgid ""
"Adds each component of the [Vector3i] by the components of the given "
"[Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) + Vector3i(3, 4, 5)) # Prints (13, 24, 35)\n"
"[/codeblock]"
msgstr ""
"Добавляет каждый компонент [Vector3i] к компонентам указанного [Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) + Vector3i(3, 4, 5)) # Prints (13, 24, 35)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector3i] by the components of the given "
"[Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) - Vector3i(3, 4, 5)) # Prints (7, 16, 25)\n"
"[/codeblock]"
msgstr ""
"Вычитает каждый компонент [Vector3i] из компонентов заданного [Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) - Vector3i(3, 4, 5)) # Prints (7, 16, 25)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector3i] by the components of the given "
"[Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) / Vector3i(2, 5, 3)) # Prints (5, 4, 10)\n"
"[/codeblock]"
msgstr ""
"Делит каждый компонент [Vector3i] на компоненты заданного [Vector3i].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) / Vector3i(2, 5, 3)) # Prints (5, 4, 10)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector3i] by the given [float]. Returns a "
"[Vector3].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) / 2.9) # Prints (5.0, 10.0, 15.0)\n"
"[/codeblock]"
msgstr ""
"Делит каждый компонент [Vector3i] на заданное [float]. Возвращает [Vector3].\n"
"[codeblock]\n"
"print(Vector3i(10, 20, 30) / 2.9) # Prints (5.0, 10.0, 15.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector3i] by the given [int]."
msgstr "Делит каждый компонент [Vector3i] на заданное [int]."

msgid ""
"Compares two [Vector3i] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors, and then with the Z values. This operator is useful for sorting "
"vectors."
msgstr ""
"Сравнивает два вектора [Vector3i], сначала проверяя, меньше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов, а "
"затем со значениями Z. Этот оператор полезен для сортировки векторов."

msgid ""
"Compares two [Vector3i] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors, and then with the Z values. This operator is useful for "
"sorting vectors."
msgstr ""
"Сравнивает два вектора [Vector3i], сначала проверяя, меньше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов, а затем со значениями Z. Этот оператор полезен для сортировки "
"векторов."

msgid ""
"Compares two [Vector3i] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors, and then with the Z values. This operator is useful for sorting "
"vectors."
msgstr ""
"Сравнивает два вектора [Vector3i], сначала проверяя, больше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов, а "
"затем со значениями Z. Этот оператор полезен для сортировки векторов."

msgid ""
"Compares two [Vector3i] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors, and then with the Z values. This operator is "
"useful for sorting vectors."
msgstr ""
"Сравнивает два вектора [Vector3i], сначала проверяя, больше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов, а затем со значениями Z. Этот оператор полезен для сортировки "
"векторов."

msgid ""
"Returns the negative value of the [Vector3i]. This is the same as writing "
"[code]Vector3i(-v.x, -v.y, -v.z)[/code]. This operation flips the direction "
"of the vector while keeping the same magnitude."
msgstr ""
"Возвращает отрицательное значение [Vector3i]. Это то же самое, что и запись "
"[code]Vector3i(-v.x, -v.y, -v.z)[/code]. Эта операция меняет направление "
"вектора, сохраняя ту же величину."

msgid "A 4D vector using floating-point coordinates."
msgstr "Четырехмерный вектор, использующий координаты с плавающей точкой."

msgid ""
"A 4-element structure that can be used to represent 4D coordinates or any "
"other quadruplet of numeric values.\n"
"It uses floating-point coordinates. By default, these floating-point values "
"use 32-bit precision, unlike [float] which is always 64-bit. If double "
"precision is needed, compile the engine with the option "
"[code]precision=double[/code].\n"
"See [Vector4i] for its integer counterpart.\n"
"[b]Note:[/b] In a boolean context, a Vector4 will evaluate to [code]false[/"
"code] if it's equal to [code]Vector4(0, 0, 0, 0)[/code]. Otherwise, a Vector4 "
"will always evaluate to [code]true[/code]."
msgstr ""
"Структура из 4 элементов, которая может использоваться для представления 4D-"
"координат или любой другой четверки числовых значений.\n"
"Она использует координаты с плавающей точкой. По умолчанию эти значения с "
"плавающей точкой используют 32-битную точность, в отличие от [float], который "
"всегда 64-битный. Если требуется двойная точность, скомпилируйте движок с "
"опцией [code]precision=double[/code].\n"
"См. [Vector4i] для его целочисленного аналога.\n"
"[b]Примечание:[/b] В булевом контексте Vector4 будет оцениваться как "
"[code]false[/code], если он равен [code]Vector4(0, 0, 0, 0)[/code]. В "
"противном случае Vector4 всегда будет оцениваться как [code]true[/code]."

msgid ""
"Constructs a default-initialized [Vector4] with all components set to "
"[code]0[/code]."
msgstr ""
"Создает инициализированный по умолчанию [Vector4], где все компоненты "
"установлены в [code]0[/code]."

msgid "Constructs a [Vector4] as a copy of the given [Vector4]."
msgstr "Создает [Vector4] как копию заданного [Vector4]."

msgid "Constructs a new [Vector4] from the given [Vector4i]."
msgstr "Создает новый [Vector4] из заданного [Vector4i]."

msgid "Returns a [Vector4] with the given components."
msgstr "Возвращает [Vector4] с заданными компонентами."

msgid "Returns the dot product of this vector and [param with]."
msgstr "Возвращает скалярное произведение данного вектора и [param with]."

msgid ""
"Returns the inverse of the vector. This is the same as [code]Vector4(1.0 / "
"v.x, 1.0 / v.y, 1.0 / v.z, 1.0 / v.w)[/code]."
msgstr ""
"Возвращает обратный вектор. Это то же самое, что [code]Vector4(1.0 / v.x, "
"1.0 / v.y, 1.0 / v.z, 1.0 / v.w)[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector4(maxf(x, with.x), maxf(y, with.y), maxf(z, with.z), maxf(w, "
"with.w))[/code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector4(maxf(x, with.x), maxf(y, with.y), maxf(z, with.z), maxf(w, "
"with.w))[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector4(maxf(x, with), maxf(y, with), maxf(z, with), maxf(w, with))[/"
"code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector4(maxf(x, with), maxf(y, with), maxf(z, with), maxf(w, with))[/"
"code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector4(minf(x, with.x), minf(y, with.y), minf(z, with.z), minf(w, "
"with.w))[/code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентный "
"[code]Vector4(minf(x, with.x), minf(y, with.y), minf(z, with.z), minf(w, "
"with.w))[/code]."

msgid ""
"Returns the axis of the vector's lowest value. See [code]AXIS_*[/code] "
"constants. If all components are equal, this method returns [constant AXIS_W]."
msgstr ""
"Возвращает ось наименьшего значения вектора. См. константы [code]AXIS_*[/"
"code]. Если все компоненты равны, этот метод возвращает [constant AXIS_W]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector4(minf(x, with), minf(y, with), minf(z, with), minf(w, with))[/"
"code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентно "
"[code]Vector4(minf(x, with), minf(y, with), minf(z, with), minf(w, with))[/"
"code]."

msgid ""
"Returns the result of scaling the vector to unit length. Equivalent to "
"[code]v / v.length()[/code]. Returns [code](0, 0, 0, 0)[/code] if "
"[code]v.length() == 0[/code]. See also [method is_normalized].\n"
"[b]Note:[/b] This function may return incorrect values if the input vector "
"length is near zero."
msgstr ""
"Возвращает результат масштабирования вектора до единичной длины. Эквивалентно "
"[code]v / v.length()[/code]. Возвращает [code](0, 0, 0, 0)[/code], если "
"[code]v.length() == 0[/code]. См. также [method is_normalized].\n"
"[b]Примечание:[/b] Эта функция может возвращать неверные значения, если длина "
"входного вектора близка к нулю."

msgid ""
"The vector's W component. Also accessible by using the index position [code]"
"[3][/code]."
msgstr ""
"Компонент вектора W. Также доступен с помощью индексной позиции [code][3][/"
"code]."

msgid ""
"Enumerated value for the W axis. Returned by [method max_axis_index] and "
"[method min_axis_index]."
msgstr ""
"Перечисленное значение для оси W. Возвращается [method max_axis_index] и "
"[method min_axis_index]."

msgid ""
"Transforms (multiplies) the [Vector4] by the transpose of the given "
"[Projection] matrix.\n"
"For transforming by inverse of a projection [code]projection.inverse() * "
"vector[/code] can be used instead. See [method Projection.inverse]."
msgstr ""
"Преобразует (умножает) [Vector4] на транспонированную заданную матрицу "
"[Projection].\n"
"Для преобразования путем инверсии проекции [code]projection.inverse() * "
"vector[/code] можно использовать вместо этого. См. [method "
"Projection.inverse]."

msgid ""
"Multiplies each component of the [Vector4] by the components of the given "
"[Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) * Vector4(3, 4, 5, 6)) # Prints (30.0, 80.0, "
"150.0, 240.0)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector4] на компоненты заданного [Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) * Vector4(3, 4, 5, 6)) # Prints (30.0, 80.0, "
"150.0, 240.0)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector4] by the given [float].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) * 2) # Prints (20.0, 40.0, 60.0, 80.0)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector4] на заданное [float].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) * 2) # Prints (20.0, 40.0, 60.0, 80.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector4] by the given [int]."
msgstr "Умножает каждый компонент [Vector4] на заданное [int]."

msgid ""
"Adds each component of the [Vector4] by the components of the given "
"[Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) + Vector4(3, 4, 5, 6)) # Prints (13.0, 24.0, "
"35.0, 46.0)\n"
"[/codeblock]"
msgstr ""
"Добавляет каждый компонент [Vector4] к компонентам указанного [Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) + Vector4(3, 4, 5, 6)) # Prints (13.0, 24.0, "
"35.0, 46.0)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector4] by the components of the given "
"[Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) - Vector4(3, 4, 5, 6)) # Prints (7.0, 16.0, "
"25.0, 34.0)\n"
"[/codeblock]"
msgstr ""
"Вычитает каждый компонент [Vector4] из компонентов заданного [Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) - Vector4(3, 4, 5, 6)) # Prints (7.0, 16.0, "
"25.0, 34.0)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector4] by the components of the given "
"[Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) / Vector4(2, 5, 3, 4)) # Prints (5.0, 4.0, "
"10.0, 10.0)\n"
"[/codeblock]"
msgstr ""
"Делит каждый компонент [Vector4] на компоненты заданного [Vector4].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) / Vector4(2, 5, 3, 4)) # Prints (5.0, 4.0, "
"10.0, 10.0)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector4] by the given [float].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) / 2) # Prints (5.0, 10.0, 15.0, 20.0)\n"
"[/codeblock]"
msgstr ""
"Делит каждый компонент [Vector4] на заданное [float].\n"
"[codeblock]\n"
"print(Vector4(10, 20, 30, 40) / 2) # Prints (5.0, 10.0, 15.0, 20.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector4] by the given [int]."
msgstr "Делит каждый компонент [Vector4] на заданное [int]."

msgid ""
"Compares two [Vector4] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors, Z values of the two vectors, and then with the W values. This "
"operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector4], сначала проверяя, меньше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов, "
"значениями Z двух векторов, а затем со значениями W. Этот оператор полезен "
"для сортировки векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN-ы."

msgid ""
"Compares two [Vector4] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors, Z values of the two vectors, and then with the W values. "
"This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector4], сначала проверяя, меньше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов, значениями Z двух векторов, а затем со значениями W. Этот "
"оператор полезен для сортировки векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN."

msgid ""
"Compares two [Vector4] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors, Z values of the two vectors, and then with the W values. This "
"operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector4], сначала проверяя, больше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов, "
"значениями Z двух векторов, а затем со значениями W. Этот оператор полезен "
"для сортировки векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN."

msgid ""
"Compares two [Vector4] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors, Z values of the two vectors, and then with the W "
"values. This operator is useful for sorting vectors.\n"
"[b]Note:[/b] Vectors with [constant @GDScript.NAN] elements don't behave the "
"same as other vectors. Therefore, the results from this operator may not be "
"accurate if NaNs are included."
msgstr ""
"Сравнивает два вектора [Vector4], сначала проверяя, больше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов, значениями Z двух векторов, а затем со значениями W. Этот "
"оператор полезен для сортировки векторов.\n"
"[b]Примечание:[/b] Векторы с элементами [constant @GDScript.NAN] ведут себя "
"не так, как другие векторы. Поэтому результаты этого оператора могут быть "
"неточными, если включены NaN."

msgid ""
"Access vector components using their [param index]. [code]v[0][/code] is "
"equivalent to [code]v.x[/code], [code]v[1][/code] is equivalent to [code]v.y[/"
"code], [code]v[2][/code] is equivalent to [code]v.z[/code], and [code]v[3][/"
"code] is equivalent to [code]v.w[/code]."
msgstr ""
"Доступ к компонентам вектора осуществляется с помощью их [param index]. "
"[code]v[0][/code] эквивалентно [code]v.x[/code], [code]v[1][/code] "
"эквивалентно [code]v.y[/code], [code]v[2][/code] эквивалентно [code]v.z[/"
"code], а [code]v[3][/code] эквивалентно [code]v.w[/code]."

msgid ""
"Returns the negative value of the [Vector4]. This is the same as writing "
"[code]Vector4(-v.x, -v.y, -v.z, -v.w)[/code]. This operation flips the "
"direction of the vector while keeping the same magnitude. With floats, the "
"number zero can be either positive or negative."
msgstr ""
"Возвращает отрицательное значение [Vector4]. Это то же самое, что и запись "
"[code]Vector4(-v.x, -v.y, -v.z, -v.w)[/code]. Эта операция меняет направление "
"вектора, сохраняя ту же величину. С плавающей точкой число ноль может быть "
"как положительным, так и отрицательным."

msgid "A 4D vector using integer coordinates."
msgstr "Четырехмерный вектор, использующий целочисленные координаты."

msgid ""
"A 4-element structure that can be used to represent 4D grid coordinates or "
"any other quadruplet of integers.\n"
"It uses integer coordinates and is therefore preferable to [Vector4] when "
"exact precision is required. Note that the values are limited to 32 bits, and "
"unlike [Vector4] this cannot be configured with an engine build option. Use "
"[int] or [PackedInt64Array] if 64-bit values are needed.\n"
"[b]Note:[/b] In a boolean context, a Vector4i will evaluate to [code]false[/"
"code] if it's equal to [code]Vector4i(0, 0, 0, 0)[/code]. Otherwise, a "
"Vector4i will always evaluate to [code]true[/code]."
msgstr ""
"Структура из 4 элементов, которая может использоваться для представления "
"координат сетки 4D или любой другой четверки целых чисел.\n"
"Она использует целочисленные координаты и поэтому предпочтительнее [Vector4], "
"когда требуется точная точность. Обратите внимание, что значения ограничены "
"32 битами, и в отличие от [Vector4] это нельзя настроить с помощью опции "
"сборки движка. Используйте [int] или [PackedInt64Array], если требуются 64-"
"битные значения.\n"
"[b]Примечание:[/b] В булевом контексте Vector4i будет оцениваться как "
"[code]false[/code], если он равен [code]Vector4i(0, 0, 0, 0)[/code]. В "
"противном случае Vector4i всегда будет оцениваться как [code]true[/code]."

msgid ""
"Constructs a default-initialized [Vector4i] with all components set to "
"[code]0[/code]."
msgstr ""
"Создает инициализированный по умолчанию [Vector4i] со всеми компонентами, "
"установленными в [code]0[/code]."

msgid "Constructs a [Vector4i] as a copy of the given [Vector4i]."
msgstr "Создает [Vector4i] как копию заданного [Vector4i]."

msgid ""
"Constructs a new [Vector4i] from the given [Vector4] by truncating "
"components' fractional parts (rounding towards zero). For a different "
"behavior consider passing the result of [method Vector4.ceil], [method "
"Vector4.floor] or [method Vector4.round] to this constructor instead."
msgstr ""
"Создает новый [Vector4i] из заданного [Vector4] путем усечения дробных частей "
"компонентов (округление в сторону нуля). Для другого поведения рассмотрите "
"возможность передачи результата [method Vector4.ceil], [method Vector4.floor] "
"или [method Vector4.round] этому конструктору."

msgid "Returns a [Vector4i] with the given components."
msgstr "Возвращает [Vector4i] с заданными компонентами."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector4i(maxi(x, with.x), maxi(y, with.y), maxi(z, with.z), maxi(w, "
"with.w))[/code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector4i(maxi(x, with.x), maxi(y, with.y), maxi(z, with.z), maxi(w, "
"with.w))[/code]."

msgid ""
"Returns the component-wise maximum of this and [param with], equivalent to "
"[code]Vector4i(maxi(x, with), maxi(y, with), maxi(z, with), maxi(w, with))[/"
"code]."
msgstr ""
"Возвращает покомпонентный максимум этого и [param with], что эквивалентно "
"[code]Vector4i(maxi(x, with), maxi(y, with), maxi(z, with), maxi(w, with))[/"
"code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector4i(mini(x, with.x), mini(y, with.y), mini(z, with.z), mini(w, "
"with.w))[/code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентно "
"[code]Vector4i(mini(x, with.x), mini(y, with.y), mini(z, with.z), mini(w, "
"with.w))[/code]."

msgid ""
"Returns the component-wise minimum of this and [param with], equivalent to "
"[code]Vector4i(mini(x, with), mini(y, with), mini(z, with), mini(w, with))[/"
"code]."
msgstr ""
"Возвращает покомпонентный минимум этого и [param with], эквивалентный "
"[code]Vector4i(mini(x, with), mini(y, with), mini(z, with), mini(w, with))[/"
"code]."

msgid ""
"Min vector, a vector with all components equal to [code]INT32_MIN[/code]. Can "
"be used as a negative integer equivalent of [constant Vector4.INF]."
msgstr ""
"Вектор Min - вектор, все компоненты которого равны [code]INT32_MIN[/code]. "
"Может использоваться как отрицательный целочисленный эквивалент [constant "
"Vector4.INF]."

msgid ""
"Max vector, a vector with all components equal to [code]INT32_MAX[/code]. Can "
"be used as an integer equivalent of [constant Vector4.INF]."
msgstr ""
"Вектор Max - вектор, все компоненты которого равны [code]INT32_MAX[/code]. "
"Может использоваться как целочисленный эквивалент [constant Vector4.INF]."

msgid ""
"Gets the remainder of each component of the [Vector4i] with the components of "
"the given [Vector4i]. This operation uses truncated division, which is often "
"not desired as it does not work well with negative numbers. Consider using "
"[method @GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector4i(10, -20, 30, -40) % Vector4i(7, 8, 9, 10)) # Prints (3, -4, 3, "
"0)\n"
"[/codeblock]"
msgstr ""
"Получает остаток каждого компонента [Vector4i] с компонентами заданного "
"[Vector4i]. Эта операция использует усеченное деление, которое часто "
"нежелательно, поскольку оно плохо работает с отрицательными числами. "
"Рассмотрите возможность использования [method @GlobalScope.posmod] вместо "
"этого, если вы хотите обрабатывать отрицательные числа.\n"
"[codeblock]\n"
"print(Vector4i(10, -20, 30, -40) % Vector4i(7, 8, 9, 10)) # Prints (3, -4, 3, "
"0)\n"
"[/codeblock]"

msgid ""
"Gets the remainder of each component of the [Vector4i] with the given [int]. "
"This operation uses truncated division, which is often not desired as it does "
"not work well with negative numbers. Consider using [method "
"@GlobalScope.posmod] instead if you want to handle negative numbers.\n"
"[codeblock]\n"
"print(Vector4i(10, -20, 30, -40) % 7) # Prints (3, -6, 2, -5)\n"
"[/codeblock]"
msgstr ""
"Получает остаток каждого компонента [Vector4i] с заданным [int]. Эта операция "
"использует усеченное деление, которое часто нежелательно, поскольку оно плохо "
"работает с отрицательными числами. Рассмотрите возможность использования "
"[method @GlobalScope.posmod] вместо этого, если вы хотите обрабатывать "
"отрицательные числа.\n"
"[codeblock]\n"
"print(Vector4i(10, -20, 30, -40) % 7) # Prints (3, -6, 2, -5)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector4i] by the components of the given "
"[Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) * Vector4i(3, 4, 5, 6)) # Prints (30, 80, 150, "
"240)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector4i] на компоненты заданного [Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) * Vector4i(3, 4, 5, 6)) # Prints (30, 80, 150, "
"240)\n"
"[/codeblock]"

msgid ""
"Multiplies each component of the [Vector4i] by the given [float].\n"
"Returns a Vector4 value due to floating-point operations.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) * 2) # Prints (20.0, 40.0, 60.0, 80.0)\n"
"[/codeblock]"
msgstr ""
"Умножает каждый компонент [Vector4i] на заданный [float].\n"
"Возвращает значение Vector4 из-за операций с плавающей точкой.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) * 2) # Prints (20.0, 40.0, 60.0, 80.0)\n"
"[/codeblock]"

msgid "Multiplies each component of the [Vector4i] by the given [int]."
msgstr "Умножает каждый компонент [Vector4i] на заданное [int]."

msgid ""
"Adds each component of the [Vector4i] by the components of the given "
"[Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) + Vector4i(3, 4, 5, 6)) # Prints (13, 24, 35, "
"46)\n"
"[/codeblock]"
msgstr ""
"Добавляет каждый компонент [Vector4i] к компонентам указанного [Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) + Vector4i(3, 4, 5, 6)) # Prints (13, 24, 35, "
"46)\n"
"[/codeblock]"

msgid ""
"Subtracts each component of the [Vector4i] by the components of the given "
"[Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) - Vector4i(3, 4, 5, 6)) # Prints (7, 16, 25, "
"34)\n"
"[/codeblock]"
msgstr ""
"Вычитает каждый компонент [Vector4i] из компонентов заданного [Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) - Vector4i(3, 4, 5, 6)) # Prints (7, 16, 25, "
"34)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector4i] by the components of the given "
"[Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) / Vector4i(2, 5, 3, 4)) # Prints (5, 4, 10, "
"10)\n"
"[/codeblock]"
msgstr ""
"Делит каждый компонент [Vector4i] на компоненты заданного [Vector4i].\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) / Vector4i(2, 5, 3, 4)) # Prints (5, 4, 10, "
"10)\n"
"[/codeblock]"

msgid ""
"Divides each component of the [Vector4i] by the given [float].\n"
"Returns a Vector4 value due to floating-point operations.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) / 2) # Prints (5.0, 10.0, 15.0, 20.0)\n"
"[/codeblock]"
msgstr ""
"Делит каждый компонент [Vector4i] на заданный [float].\n"
"Возвращает значение Vector4 из-за операций с плавающей точкой.\n"
"[codeblock]\n"
"print(Vector4i(10, 20, 30, 40) / 2) # Prints (5.0, 10.0, 15.0, 20.0)\n"
"[/codeblock]"

msgid "Divides each component of the [Vector4i] by the given [int]."
msgstr "Делит каждый компонент [Vector4i] на заданное [int]."

msgid ""
"Compares two [Vector4i] vectors by first checking if the X value of the left "
"vector is less than the X value of the [param right] vector. If the X values "
"are exactly equal, then it repeats this check with the Y values of the two "
"vectors, Z values of the two vectors, and then with the W values. This "
"operator is useful for sorting vectors."
msgstr ""
"Сравнивает два вектора [Vector4i], сначала проверяя, меньше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов, "
"значениями Z двух векторов, а затем со значениями W. Этот оператор полезен "
"для сортировки векторов."

msgid ""
"Compares two [Vector4i] vectors by first checking if the X value of the left "
"vector is less than or equal to the X value of the [param right] vector. If "
"the X values are exactly equal, then it repeats this check with the Y values "
"of the two vectors, Z values of the two vectors, and then with the W values. "
"This operator is useful for sorting vectors."
msgstr ""
"Сравнивает два вектора [Vector4i], сначала проверяя, меньше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов, значениями Z двух векторов, а затем со значениями W. Этот "
"оператор полезен для сортировки векторов."

msgid "Returns [code]true[/code] if the vectors are exactly equal."
msgstr "Возвращает [code]true[/code], если векторы точно равны."

msgid ""
"Compares two [Vector4i] vectors by first checking if the X value of the left "
"vector is greater than the X value of the [param right] vector. If the X "
"values are exactly equal, then it repeats this check with the Y values of the "
"two vectors, Z values of the two vectors, and then with the W values. This "
"operator is useful for sorting vectors."
msgstr ""
"Сравнивает два вектора [Vector4i], сначала проверяя, больше ли значение X "
"левого вектора, чем значение X вектора [param right]. Если значения X в "
"точности равны, то он повторяет эту проверку со значениями Y двух векторов, "
"значениями Z двух векторов, а затем со значениями W. Этот оператор полезен "
"для сортировки векторов."

msgid ""
"Compares two [Vector4i] vectors by first checking if the X value of the left "
"vector is greater than or equal to the X value of the [param right] vector. "
"If the X values are exactly equal, then it repeats this check with the Y "
"values of the two vectors, Z values of the two vectors, and then with the W "
"values. This operator is useful for sorting vectors."
msgstr ""
"Сравнивает два вектора [Vector4i], сначала проверяя, больше ли значение X "
"левого вектора или равно ли ему значение X вектора [param right]. Если "
"значения X в точности равны, то он повторяет эту проверку со значениями Y "
"двух векторов, значениями Z двух векторов, а затем со значениями W. Этот "
"оператор полезен для сортировки векторов."

msgid ""
"Returns the negative value of the [Vector4i]. This is the same as writing "
"[code]Vector4i(-v.x, -v.y, -v.z, -v.w)[/code]. This operation flips the "
"direction of the vector while keeping the same magnitude."
msgstr ""
"Возвращает отрицательное значение [Vector4i]. Это то же самое, что и запись "
"[code]Vector4i(-v.x, -v.y, -v.z, -v.w)[/code]. Эта операция меняет "
"направление вектора, сохраняя ту же величину."

msgid "A 3D physics body that simulates the behavior of a car."
msgstr "Физическое 3D-тело, имитирующее поведение автомобиля."

msgid ""
"This physics body implements all the physics logic needed to simulate a car. "
"It is based on the raycast vehicle system commonly found in physics engines. "
"Aside from a [CollisionShape3D] for the main body of the vehicle, you must "
"also add a [VehicleWheel3D] node for each wheel. You should also add a "
"[MeshInstance3D] to this node for the 3D model of the vehicle, but this model "
"should generally not include meshes for the wheels. You can control the "
"vehicle by using the [member brake], [member engine_force], and [member "
"steering] properties. The position or orientation of this node shouldn't be "
"changed directly.\n"
"[b]Note:[/b] The local forward for this node is [constant "
"Vector3.MODEL_FRONT].\n"
"[b]Note:[/b] The origin point of your VehicleBody3D will determine the center "
"of gravity of your vehicle. To make the vehicle more grounded, the origin "
"point is usually kept low, moving the [CollisionShape3D] and [MeshInstance3D] "
"upwards.\n"
"[b]Note:[/b] This class has known issues and isn't designed to provide "
"realistic 3D vehicle physics. If you want advanced vehicle physics, you may "
"have to write your own physics integration using [CharacterBody3D] or "
"[RigidBody3D]."
msgstr ""
"Это физическое тело реализует всю физическую логику, необходимую для "
"моделирования автомобиля. Оно основано на системе Raycast Vehicle, обычно "
"используемой в физических движках. Помимо узла [CollisionShape3D] для "
"основного корпуса автомобиля, необходимо также добавить узел [VehicleWheel3D] "
"для каждого колеса. Также следует добавить к этому узлу узел [MeshInstance3D] "
"для 3D-модели автомобиля, но эта модель, как правило, не должна включать "
"сетки для колёс. Вы можете управлять автомобилем, используя свойства [member "
"brake], [member engine_force] и [member steering]. Положение или ориентацию "
"этого узла нельзя изменять напрямую.\n"
"[b]Примечание:[/b] Локальный передний план для этого узла — [constant "
"Vector3.MODEL_FRONT].\n"
"[b]Примечание:[/b] Точка начала координат VehicleBody3D будет определять "
"центр тяжести вашего автомобиля. Чтобы сделать транспортное средство более "
"приземлённым, исходную точку обычно располагают низко, перемещая "
"[CollisionShape3D] и [MeshInstance3D] вверх.\n"
"[b]Примечание:[/b] Этот класс имеет известные проблемы и не предназначен для "
"реализации реалистичной трёхмерной физики транспортного средства. Если вам "
"нужна продвинутая физика транспортного средства, вам, возможно, придётся "
"написать собственную интеграцию физики с использованием [CharacterBody3D] или "
"[RigidBody3D]."

msgid ""
"Slows down the vehicle by applying a braking force. The vehicle is only "
"slowed down if the wheels are in contact with a surface. The force you need "
"to apply to adequately slow down your vehicle depends on the [member "
"RigidBody3D.mass] of the vehicle. For a vehicle with a mass set to 1000, try "
"a value in the 25 - 30 range for hard braking."
msgstr ""
"Замедляет транспортное средство, применяя тормозное усилие. Транспортное "
"средство замедляется только в том случае, если колеса соприкасаются с "
"поверхностью. Сила, которую необходимо применить для адекватного замедления "
"транспортного средства, зависит от [member RigidBody3D.mass] транспортного "
"средства. Для транспортного средства с массой, установленной на 1000, "
"попробуйте значение в диапазоне 25–30 для резкого торможения."

msgid ""
"Accelerates the vehicle by applying an engine force. The vehicle is only sped "
"up if the wheels that have [member VehicleWheel3D.use_as_traction] set to "
"[code]true[/code] and are in contact with a surface. The [member "
"RigidBody3D.mass] of the vehicle has an effect on the acceleration of the "
"vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - 50 "
"range for acceleration.\n"
"[b]Note:[/b] The simulation does not take the effect of gears into account, "
"you will need to add logic for this if you wish to simulate gears.\n"
"A negative value will result in the vehicle reversing."
msgstr ""
"Ускоряет транспортное средство, применяя силу двигателя. Транспортное "
"средство ускоряется только в том случае, если колеса, у которых [member "
"VehicleWheel3D.use_as_traction] установлен на [code]true[/code], "
"соприкасаются с поверхностью. [member RigidBody3D.mass] транспортного "
"средства влияет на ускорение транспортного средства. Для транспортного "
"средства с массой, установленной на 1000, попробуйте значение в диапазоне 25–"
"50 для ускорения.\n"
"[b]Примечание:[/b] Моделирование не учитывает влияние передач, вам нужно "
"будет добавить логику для этого, если вы хотите смоделировать передачи.\n"
"Отрицательное значение приведет к тому, что транспортное средство будет "
"двигаться задним ходом."

msgid ""
"The steering angle for the vehicle. Setting this to a non-zero value will "
"result in the vehicle turning when it's moving. Wheels that have [member "
"VehicleWheel3D.use_as_steering] set to [code]true[/code] will automatically "
"be rotated.\n"
"[b]Note:[/b] This property is edited in the inspector in degrees. In code the "
"property is set in radians."
msgstr ""
"Угол поворота рулевого колеса транспортного средства. Установка этого "
"значения на ненулевое приведет к повороту транспортного средства во время "
"движения. Колеса, у которых [member VehicleWheel3D.use_as_steering] "
"установлен на [code]true[/code], будут автоматически поворачиваться.\n"
"[b]Примечание:[/b] Это свойство редактируется в инспекторе в градусах. В коде "
"свойство задается в радианах."

msgid ""
"A 3D physics body for a [VehicleBody3D] that simulates the behavior of a "
"wheel."
msgstr "Физическое 3D-тело для [VehicleBody3D], имитирующее поведение колеса."

msgid ""
"A node used as a child of a [VehicleBody3D] parent to simulate the behavior "
"of one of its wheels. This node also acts as a collider to detect if the "
"wheel is touching a surface.\n"
"[b]Note:[/b] This class has known issues and isn't designed to provide "
"realistic 3D vehicle physics. If you want advanced vehicle physics, you may "
"need to write your own physics integration using another [PhysicsBody3D] "
"class."
msgstr ""
"Узел, используемый как дочерний элемент родительского элемента "
"[VehicleBody3D] для моделирования поведения одного из его колес. Этот узел "
"также действует как коллайдер для определения, касается ли колесо "
"поверхности.\n"
"[b]Примечание:[/b] Этот класс имеет известные проблемы и не предназначен для "
"предоставления реалистичной трехмерной физики транспортного средства. Если "
"вам нужна расширенная физика транспортного средства, вам может потребоваться "
"написать собственную интеграцию физики с использованием другого класса "
"[PhysicsBody3D]."

msgid ""
"Returns the contacting body node if valid in the tree, as [Node3D]. At the "
"moment, [GridMap] is not supported so the node will be always of type "
"[PhysicsBody3D].\n"
"Returns [code]null[/code] if the wheel is not in contact with a surface, or "
"the contact body is not a [PhysicsBody3D]."
msgstr ""
"Возвращает узел контактирующего тела, если он допустим в дереве, как "
"[Node3D]. В данный момент [GridMap] не поддерживается, поэтому узел всегда "
"будет иметь тип [PhysicsBody3D].\n"
"Возвращает [code]null[/code], если колесо не контактирует с поверхностью или "
"контактирующее тело не является [PhysicsBody3D]."

msgid ""
"Returns the normal of the suspension's collision in world space if the wheel "
"is in contact. If the wheel isn't in contact with anything, returns a vector "
"pointing directly along the suspension axis toward the vehicle in world space."
msgstr ""
"Возвращает нормаль столкновения подвески в мировом пространстве, если колесо "
"находится в контакте. Если колесо не находится в контакте ни с чем, "
"возвращает вектор, направленный прямо вдоль оси подвески к транспортному "
"средству в мировом пространстве."

msgid ""
"Returns the point of the suspension's collision in world space if the wheel "
"is in contact. If the wheel isn't in contact with anything, returns the "
"maximum point of the wheel's ray cast in world space, which is defined by "
"[code]wheel_rest_length + wheel_radius[/code]."
msgstr ""
"Возвращает точку столкновения подвески в мировом пространстве, если колесо "
"находится в контакте. Если колесо не находится в контакте ни с чем, "
"возвращает максимальную точку луча колеса, отбрасываемого в мировом "
"пространстве, которая определяется как [code]wheel_rest_length + "
"wheel_radius[/code]."

msgid "Returns the rotational speed of the wheel in revolutions per minute."
msgstr "Возвращает скорость вращения колеса в оборотах в минуту."

msgid ""
"Returns a value between 0.0 and 1.0 that indicates whether this wheel is "
"skidding. 0.0 is skidding (the wheel has lost grip, e.g. icy terrain), 1.0 "
"means not skidding (the wheel has full grip, e.g. dry asphalt road)."
msgstr ""
"Возвращает значение от 0,0 до 1,0, которое указывает, буксует ли это колесо. "
"0,0 — буксует (колесо потеряло сцепление, например, обледеневшая дорога), 1,0 "
"— не буксует (колесо имеет полное сцепление, например, сухая асфальтовая "
"дорога)."

msgid "Returns [code]true[/code] if this wheel is in contact with a surface."
msgstr ""
"Возвращает [code]true[/code], если это колесо контактирует с поверхностью."

msgid ""
"Slows down the wheel by applying a braking force. The wheel is only slowed "
"down if it is in contact with a surface. The force you need to apply to "
"adequately slow down your vehicle depends on the [member RigidBody3D.mass] of "
"the vehicle. For a vehicle with a mass set to 1000, try a value in the 25 - "
"30 range for hard braking."
msgstr ""
"Замедляет колесо, применяя тормозное усилие. Колесо замедляется только если "
"оно соприкасается с поверхностью. Сила, которую вам нужно применить для "
"адекватного замедления вашего автомобиля, зависит от [member "
"RigidBody3D.mass] автомобиля. Для автомобиля с массой, установленной на 1000, "
"попробуйте значение в диапазоне 25–30 для резкого торможения."

msgid ""
"The damping applied to the suspension spring when being compressed, meaning "
"when the wheel is moving up relative to the vehicle. It is measured in Newton-"
"seconds per millimeter (N⋅s/mm), or megagrams per second (Mg/s). This value "
"should be between 0.0 (no damping) and 1.0, but may be more. A value of 0.0 "
"means the car will keep bouncing as the spring keeps its energy. A good value "
"for this is around 0.3 for a normal car, 0.5 for a race car."
msgstr ""
"Демпфирование, применяемое к пружине подвески при сжатии, то есть когда "
"колесо движется вверх относительно автомобиля. Измеряется в ньютон-секундах "
"на миллиметр (Н⋅с/мм) (N⋅s/mm) или мегаграммах в секунду (Мг/с)(Mg/s). Это "
"значение должно быть между 0,0 (без демпфирования) и 1,0, но может быть и "
"больше. Значение 0,0 означает, что автомобиль будет продолжать подпрыгивать, "
"поскольку пружина сохраняет свою энергию. Хорошее значение для этого "
"составляет около 0,3 для обычного автомобиля, 0,5 для гоночного автомобиля."

msgid ""
"The damping applied to the suspension spring when rebounding or extending, "
"meaning when the wheel is moving down relative to the vehicle. It is measured "
"in Newton-seconds per millimeter (N⋅s/mm), or megagrams per second (Mg/s). "
"This value should be between 0.0 (no damping) and 1.0, but may be more. This "
"value should always be slightly higher than the [member damping_compression] "
"property. For a [member damping_compression] value of 0.3, try a relaxation "
"value of 0.5."
msgstr ""
"Демпфирование, применяемое к пружине подвески при отскоке или выдвижении, то "
"есть когда колесо движется вниз относительно транспортного средства. "
"Измеряется в ньютон-секундах на миллиметр (N⋅s/mm) или мегаграммах в секунду "
"(Mg/s). Это значение должно быть между 0,0 (без демпфирования) и 1,0, но "
"может быть и больше. Это значение всегда должно быть немного выше свойства "
"[member damping_compression]. Для значения [member damping_compression] 0,3 "
"попробуйте значение релаксации 0,5."

msgid ""
"Accelerates the wheel by applying an engine force. The wheel is only sped up "
"if it is in contact with a surface. The [member RigidBody3D.mass] of the "
"vehicle has an effect on the acceleration of the vehicle. For a vehicle with "
"a mass set to 1000, try a value in the 25 - 50 range for acceleration.\n"
"[b]Note:[/b] The simulation does not take the effect of gears into account, "
"you will need to add logic for this if you wish to simulate gears.\n"
"A negative value will result in the wheel reversing."
msgstr ""
"Ускоряет колесо, применяя силу двигателя. Колесо ускоряется только в том "
"случае, если оно соприкасается с поверхностью. [member RigidBody3D.mass] "
"транспортного средства влияет на ускорение транспортного средства. Для "
"транспортного средства с массой, установленной на 1000, попробуйте значение в "
"диапазоне 25–50 для ускорения.\n"
"[b]Примечание:[/b] Моделирование не учитывает влияние передач, вам нужно "
"будет добавить логику для этого, если вы хотите смоделировать передачи.\n"
"Отрицательное значение приведет к реверсированию колеса."

msgid ""
"The steering angle for the wheel, in radians. Setting this to a non-zero "
"value will result in the vehicle turning when it's moving."
msgstr ""
"Угол поворота рулевого колеса в радианах. Установка ненулевого значения "
"приведет к повороту транспортного средства во время движения."

msgid ""
"The maximum force the spring can resist. This value should be higher than a "
"quarter of the [member RigidBody3D.mass] of the [VehicleBody3D] or the spring "
"will not carry the weight of the vehicle. Good results are often obtained by "
"a value that is about 3× to 4× this number."
msgstr ""
"Максимальная сила, которую может выдержать пружина. Это значение должно быть "
"больше четверти [member RigidBody3D.mass] [VehicleBody3D], иначе пружина не "
"выдержит вес транспортного средства. Хорошие результаты часто достигаются при "
"значении, которое примерно в 3-4 раза больше этого числа."

msgid ""
"The stiffness of the suspension, measured in Newtons per millimeter (N/mm), "
"or megagrams per second squared (Mg/s²). Use a value lower than 50 for an off-"
"road car, a value between 50 and 100 for a race car and try something around "
"200 for something like a Formula 1 car."
msgstr ""
"Жесткость подвески, измеряемая в ньютонах на миллиметр (N/mm) или мегаграммах "
"на секунду в квадрате (Mg/s²). Используйте значение ниже 50 для внедорожника, "
"значение от 50 до 100 для гоночного автомобиля и попробуйте что-то около 200 "
"для чего-то вроде болида Формулы-1."

msgid ""
"This is the distance the suspension can travel. As Godot units are equivalent "
"to meters, keep this setting relatively low. Try a value between 0.1 and 0.3 "
"depending on the type of car."
msgstr ""
"Это расстояние, которое может пройти подвеска. Поскольку единицы Godot "
"эквивалентны метрам, установите этот параметр относительно низким. Попробуйте "
"значение от 0,1 до 0,3 в зависимости от типа автомобиля."

msgid ""
"If [code]true[/code], this wheel will be turned when the car steers. This "
"value is used in conjunction with [member VehicleBody3D.steering] and ignored "
"if you are using the per-wheel [member steering] value instead."
msgstr ""
"Если [code]true[/code], это колесо будет поворачиваться, когда автомобиль "
"поворачивается. Это значение используется вместе с [member "
"VehicleBody3D.steering] и игнорируется, если вместо этого вы используете "
"значение [member steering] для каждого колеса."

msgid ""
"If [code]true[/code], this wheel transfers engine force to the ground to "
"propel the vehicle forward. This value is used in conjunction with [member "
"VehicleBody3D.engine_force] and ignored if you are using the per-wheel "
"[member engine_force] value instead."
msgstr ""
"Если [code]true[/code], это колесо передает силу двигателя на землю, чтобы "
"двигать транспортное средство вперед. Это значение используется вместе с "
"[member VehicleBody3D.engine_force] и игнорируется, если вместо этого вы "
"используете значение [member engine_force] для каждого колеса."

msgid ""
"This determines how much grip this wheel has. It is combined with the "
"friction setting of the surface the wheel is in contact with. 0.0 means no "
"grip, 1.0 is normal grip. For a drift car setup, try setting the grip of the "
"rear wheels slightly lower than the front wheels, or use a lower value to "
"simulate tire wear.\n"
"It's best to set this to 1.0 when starting out."
msgstr ""
"Это определяет, насколько сильное сцепление имеет это колесо. Оно сочетается "
"с настройкой трения поверхности, с которой соприкасается колесо. 0,0 означает "
"отсутствие сцепления, 1,0 — нормальное сцепление. Для настройки дрифт-кара "
"попробуйте установить сцепление задних колес немного ниже, чем передних, или "
"используйте меньшее значение для имитации износа шин.\n"
"Лучше всего установить это значение на 1,0 при начале."

msgid "The radius of the wheel in meters."
msgstr "Радиус колеса в метрах."

msgid ""
"This is the distance in meters the wheel is lowered from its origin point. "
"Don't set this to 0.0 and move the wheel into position, instead move the "
"origin point of your wheel (the gizmo in Godot) to the position the wheel "
"will take when bottoming out, then use the rest length to move the wheel down "
"to the position it should be in when the car is in rest."
msgstr ""
"Это расстояние в метрах, на которое опускается колесо от исходной точки. Не "
"устанавливайте это значение на 0,0 и не перемещайте колесо в положение, "
"вместо этого переместите исходную точку вашего колеса (гизмо в Godot) в "
"положение, которое колесо займет при достижении дна, затем используйте длину "
"покоя, чтобы переместить колесо в положение, в котором оно должно быть, когда "
"автомобиль находится в состоянии покоя."

msgid ""
"This value affects the roll of your vehicle. If set to 1.0 for all wheels, "
"your vehicle will resist body roll, while a value of 0.0 will be prone to "
"rolling over."
msgstr ""
"Это значение влияет на крен вашего автомобиля. Если установлено значение 1,0 "
"для всех колес, ваш автомобиль будет сопротивляться крену кузова, в то время "
"как значение 0,0 будет склонно к опрокидыванию."

msgid ""
"A container that arranges its child controls vertically and wraps them around "
"at the borders."
msgstr ""
"Контейнер, который располагает свои дочерние элементы управления вертикально "
"и оборачивает их по краям."

msgid ""
"A variant of [FlowContainer] that can only arrange its child controls "
"vertically, wrapping them around at the borders. This is similar to how text "
"in a book wraps around when no more words can fit on a line, except "
"vertically."
msgstr ""
"Вариант [FlowContainer], который может размещать свои дочерние элементы "
"управления только вертикально, оборачивая их по границам. Это похоже на то, "
"как текст в книге оборачивается, когда на строке не может поместиться больше "
"слов, кроме как по вертикали."

msgid "Base resource for video streams."
msgstr "Базовый ресурс для видеопотоков."

msgid ""
"Base resource type for all video streams. Classes that derive from "
"[VideoStream] can all be used as resource types to play back videos in "
"[VideoStreamPlayer]."
msgstr ""
"Базовый тип ресурса для всех видеопотоков. Классы, производные от "
"[VideoStream], могут использоваться как типы ресурсов для воспроизведения "
"видео в [VideoStreamPlayer]."

msgid "Playing videos"
msgstr "Воспроизведение видео"

msgid ""
"Called when the video starts playing, to initialize and return a subclass of "
"[VideoStreamPlayback]."
msgstr ""
"Вызывается при начале воспроизведения видео для инициализации и возврата "
"подкласса [VideoStreamPlayback]."

msgid ""
"The video file path or URI that this [VideoStream] resource handles.\n"
"For [VideoStreamTheora], this filename should be an Ogg Theora video file "
"with the [code].ogv[/code] extension."
msgstr ""
"Путь к видеофайлу или URI, который обрабатывает этот ресурс [VideoStream].\n"
"Для [VideoStreamTheora] это имя файла должно быть видеофайлом Ogg Theora с "
"расширением [code].ogv[/code]."

msgid ""
"Internal class used by [VideoStream] to manage playback state when played "
"from a [VideoStreamPlayer]."
msgstr ""
"Внутренний класс, используемый [VideoStream] для управления состоянием "
"воспроизведения при воспроизведении из [VideoStreamPlayer]."

msgid ""
"This class is intended to be overridden by video decoder extensions with "
"custom implementations of [VideoStream]."
msgstr ""
"Этот класс предназначен для переопределения расширениями видеодекодера с "
"пользовательскими реализациями [VideoStream]."

msgid "Returns the number of audio channels."
msgstr "Возвращает количество аудиоканалов."

msgid "Returns the video duration in seconds, if known, or 0 if unknown."
msgstr ""
"Возвращает длительность видео в секундах, если она известна, или 0, если "
"неизвестна."

msgid "Returns the audio sample rate used for mixing."
msgstr "Возвращает частоту дискретизации звука, используемую для микширования."

msgid ""
"Return the current playback timestamp. Called in response to the [member "
"VideoStreamPlayer.stream_position] getter."
msgstr ""
"Возвращает текущую временную метку воспроизведения. Вызывается в ответ на "
"геттер [member VideoStreamPlayer.stream_position]."

msgid "Allocates a [Texture2D] in which decoded video frames will be drawn."
msgstr ""
"Выделяет [Texture2D], в котором будут отрисовываться декодированные "
"видеокадры."

msgid "Returns the paused status, as set by [method _set_paused]."
msgstr "Возвращает приостановленный статус, установленный [method _set_paused]."

msgid ""
"Returns the playback state, as determined by calls to [method _play] and "
"[method _stop]."
msgstr ""
"Возвращает состояние воспроизведения, определенное вызовами [method _play] и "
"[method _stop]."

msgid ""
"Called in response to [member VideoStreamPlayer.autoplay] or [method "
"VideoStreamPlayer.play]. Note that manual playback may also invoke [method "
"_stop] multiple times before this method is called. [method _is_playing] "
"should return [code]true[/code] once playing."
msgstr ""
"Вызывается в ответ на [member VideoStreamPlayer.autoplay] или [method "
"VideoStreamPlayer.play]. Обратите внимание, что ручное воспроизведение может "
"также вызывать [method _stop] несколько раз, прежде чем будет вызван этот "
"метод. [method _is_playing] должен возвращать [code]true[/code] после "
"воспроизведения."

msgid ""
"Seeks to [param time] seconds. Called in response to the [member "
"VideoStreamPlayer.stream_position] setter."
msgstr ""
"Ищет [param time] секунд. Вызывается в ответ на сеттер [member "
"VideoStreamPlayer.stream_position]."

msgid ""
"Select the audio track [param idx]. Called when playback starts, and in "
"response to the [member VideoStreamPlayer.audio_track] setter."
msgstr ""
"Выберите звуковую дорожку [param idx]. Вызывается при начале воспроизведения "
"и в ответ на сеттер [member VideoStreamPlayer.audio_track]."

msgid ""
"Set the paused status of video playback. [method _is_paused] must return "
"[param paused]. Called in response to the [member VideoStreamPlayer.paused] "
"setter."
msgstr ""
"Установите приостановленное состояние воспроизведения видео. [method "
"_is_paused] должен возвращать [param paused]. Вызывается в ответ на сеттер "
"[member VideoStreamPlayer.paused]."

msgid ""
"Stops playback. May be called multiple times before [method _play], or in "
"response to [method VideoStreamPlayer.stop]. [method _is_playing] should "
"return [code]false[/code] once stopped."
msgstr ""
"Останавливает воспроизведение. Может вызываться несколько раз перед [method "
"_play] или в ответ на [method VideoStreamPlayer.stop]. [method _is_playing] "
"должен возвращать [code]false[/code] после остановки."

msgid ""
"Ticks video playback for [param delta] seconds. Called every frame as long as "
"both [method _is_paused] and [method _is_playing] return [code]true[/code]."
msgstr ""
"Отмечает воспроизведение видео на [param delta] секунд. Вызывается каждый "
"кадр, пока оба [method _is_paused] и [method _is_playing] возвращают "
"[code]true[/code]."

msgid ""
"Render [param num_frames] audio frames (of [method _get_channels] floats "
"each) from [param buffer], starting from index [param offset] in the array. "
"Returns the number of audio frames rendered, or -1 on error."
msgstr ""
"Рендеринг [param num_frames] аудиокадров (из [method _get_channels] floats "
"каждый) из [param buffer], начиная с индекса [param offset] в массиве. "
"Возвращает количество рендеринговых аудиокадров или -1 в случае ошибки."

msgid "A control used for video playback."
msgstr "Элемент управления, используемый для воспроизведения видео."

msgid ""
"A control used for playback of [VideoStream] resources.\n"
"Supported video formats are [url=https://www.theora.org/]Ogg Theora[/url] "
"([code].ogv[/code], [VideoStreamTheora]) and any format exposed via a "
"GDExtension plugin.\n"
"[b]Warning:[/b] On Web, video playback [i]will[/i] perform poorly due to "
"missing architecture-specific assembly optimizations."
msgstr ""
"Элемент управления, используемый для воспроизведения ресурсов [VideoStream].\n"
"Поддерживаемые форматы видео: [url=https://www.theora.org/]Ogg Theora[/url] "
"([code].ogv[/code], [VideoStreamTheora]) и любой формат, предоставляемый "
"через плагин GDExtension.\n"
"[b]Предупреждение:[/b] В Интернете воспроизведение видео [i]будет[/i] "
"работать плохо из-за отсутствия архитектурно-специфических оптимизаций сборки."

msgid "The length of the current stream, in seconds."
msgstr "Продолжительность текущего потока в секундах."

msgid ""
"Returns the video stream's name, or [code]\"<No Stream>\"[/code] if no video "
"stream is assigned."
msgstr ""
"Возвращает имя видеопотока или [code]\"<No Stream>\"[/code], если видеопоток "
"не назначен."

msgid "Returns the current frame as a [Texture2D]."
msgstr "Возвращает текущий кадр как [Texture2D]."

msgid ""
"Returns [code]true[/code] if the video is playing.\n"
"[b]Note:[/b] The video is still considered playing if paused during playback."
msgstr ""
"Возвращает [code]true[/code], если видео воспроизводится.\n"
"[b]Примечание:[/b] Видео все равно считается воспроизводимым, если оно "
"приостановлено во время воспроизведения."

msgid ""
"Starts the video playback from the beginning. If the video is paused, this "
"will not unpause the video."
msgstr ""
"Начинает воспроизведение видео с начала. Если видео приостановлено, это не "
"возобновит его воспроизведение."

msgid ""
"Stops the video playback and sets the stream position to 0.\n"
"[b]Note:[/b] Although the stream position will be set to 0, the first frame "
"of the video stream won't become the current frame."
msgstr ""
"Останавливает воспроизведение видео и устанавливает позицию потока на 0.\n"
"[b]Примечание:[/b] Хотя позиция потока будет установлена на 0, первый кадр "
"видеопотока не станет текущим кадром."

msgid "The embedded audio track to play."
msgstr "Встроенная звуковая дорожка для воспроизведения."

msgid "If [code]true[/code], playback starts when the scene loads."
msgstr ""
"Если [code]true[/code], воспроизведение начинается после загрузки сцены."

msgid "Amount of time in milliseconds to store in buffer while playing."
msgstr ""
"Количество времени в миллисекундах, которое необходимо сохранить в буфере во "
"время воспроизведения."

msgid "Audio bus to use for sound playback."
msgstr "Аудиошина для воспроизведения звука."

msgid ""
"If [code]true[/code], the video scales to the control size. Otherwise, the "
"control minimum size will be automatically adjusted to match the video "
"stream's dimensions."
msgstr ""
"Если [code]true[/code], видео масштабируется до размера элемента управления. "
"В противном случае минимальный размер элемента управления будет автоматически "
"скорректирован в соответствии с размерами видеопотока."

msgid "If [code]true[/code], the video restarts when it reaches its end."
msgstr "Если [code]true[/code], видео перезапускается по достижении конца."

msgid "If [code]true[/code], the video is paused."
msgstr "Если [code]true[/code], видео приостанавливается."

msgid ""
"The stream's current speed scale. [code]1.0[/code] is the normal speed, while "
"[code]2.0[/code] is double speed and [code]0.5[/code] is half speed. A speed "
"scale of [code]0.0[/code] pauses the video, similar to setting [member "
"paused] to [code]true[/code]."
msgstr ""
"Текущая шкала скорости потока. [code]1.0[/code] — это обычная скорость, "
"[code]2.0[/code] — это двойная скорость, а [code]0.5[/code] — это половинная "
"скорость. Шкала скорости [code]0.0[/code] приостанавливает видео, аналогично "
"установке [member paused] на [code]true[/code]."

msgid "The assigned video stream. See description for supported formats."
msgstr "Назначенный видеопоток. Смотрите описание поддерживаемых форматов."

msgid "The current position of the stream, in seconds."
msgstr "Текущее положение потока в секундах."

msgid "Audio volume as a linear value."
msgstr "Громкость звука как линейная величина."

msgid "Audio volume in dB."
msgstr "Громкость звука в дБ."

msgid "Emitted when playback is finished."
msgstr "Издается после завершения воспроизведения."

msgid "[VideoStream] resource for Ogg Theora videos."
msgstr "[VideoStream] ресурс для видео Ogg Theora."

msgid ""
"[VideoStream] resource handling the [url=https://www.theora.org/]Ogg Theora[/"
"url] video format with [code].ogv[/code] extension. The Theora codec is "
"decoded on the CPU.\n"
"[b]Note:[/b] While Ogg Theora videos can also have a [code].ogg[/code] "
"extension, you will have to rename the extension to [code].ogv[/code] to use "
"those videos within Godot."
msgstr ""
"Ресурс [VideoStream], работающий с видеоформатом [url=https://"
"www.theora.org/]Ogg Theora[/url] с расширением [code].ogv[/code]. Кодек "
"Theora декодируется центральным процессором.\n"
"[b]Примечание:[/b] Хотя видео Ogg Theora также могут иметь расширение "
"[code].ogg[/code], для использования этих видео в Godot вам потребуется "
"переименовать его в [code].ogv[/code]."

msgid ""
"Abstract base class for viewports. Encapsulates drawing and interaction with "
"a game world."
msgstr ""
"Абстрактный базовый класс для вьюпортов (viewports). Инкапсулирует рисование "
"и взаимодействие с игровым миром."

msgid ""
"A [Viewport] creates a different view into the screen, or a sub-view inside "
"another viewport. Child 2D nodes will display on it, and child Camera3D 3D "
"nodes will render on it too.\n"
"Optionally, a viewport can have its own 2D or 3D world, so it doesn't share "
"what it draws with other viewports.\n"
"Viewports can also choose to be audio listeners, so they generate positional "
"audio depending on a 2D or 3D camera child of it.\n"
"Also, viewports can be assigned to different screens in case the devices have "
"multiple screens.\n"
"Finally, viewports can also behave as render targets, in which case they will "
"not be visible unless the associated texture is used to draw."
msgstr ""
"[Viewport] создает другой вид на экране или подвид внутри другого viewport. "
"Дочерние 2D-узлы будут отображаться на нем, и дочерние 3D-узлы Camera3D также "
"будут визуализироваться на нем.\n"
"При желании viewport может иметь свой собственный 2D- или 3D-мир, поэтому он "
"не делится тем, что он рисует, с другими viewport.\n"
"Viewports также могут быть выбраны в качестве аудиослушателей, поэтому они "
"генерируют позиционный звук в зависимости от дочерней 2D- или 3D-камеры.\n"
"Кроме того, viewports можно назначать разным экранам, если у устройств "
"несколько экранов.\n"
"Наконец, viewports также могут вести себя как цели рендеринга, в этом случае "
"они не будут видны, если для рисования не используется связанная текстура."

msgid ""
"Returns the first valid [World2D] for this viewport, searching the [member "
"world_2d] property of itself and any Viewport ancestor."
msgstr ""
"Возвращает первый допустимый [World2D] для данного окна просмотра, выполняя "
"поиск по свойству [member world_2d] самого себя и любого предка окна "
"просмотра."

msgid ""
"Returns the first valid [World3D] for this viewport, searching the [member "
"world_3d] property of itself and any Viewport ancestor."
msgstr ""
"Возвращает первый допустимый [World3D] для данного окна просмотра, выполняя "
"поиск по свойству [member world_3d] самого себя и любого предка окна "
"просмотра."

msgid ""
"Returns the currently active 2D audio listener. Returns [code]null[/code] if "
"there are no active 2D audio listeners, in which case the active 2D camera "
"will be treated as listener."
msgstr ""
"Возвращает текущий активный прослушиватель 2D-аудио. Возвращает [code]null[/"
"code], если нет активных прослушивателей 2D-аудио, в этом случае активная 2D-"
"камера будет рассматриваться как прослушиватель."

msgid ""
"Returns the currently active 3D audio listener. Returns [code]null[/code] if "
"there are no active 3D audio listeners, in which case the active 3D camera "
"will be treated as listener."
msgstr ""
"Возвращает текущий активный прослушиватель 3D-аудио. Возвращает [code]null[/"
"code], если нет активных прослушивателей 3D-аудио, в этом случае активная 3D-"
"камера будет рассматриваться как прослушиватель."

msgid ""
"Returns the currently active 2D camera. Returns [code]null[/code] if there "
"are no active cameras."
msgstr ""
"Возвращает текущую активную 2D-камеру. Возвращает [code]null[/code], если "
"активных камер нет."

msgid "Returns the currently active 3D camera."
msgstr "Возвращает текущую активную 3D-камеру."

msgid "Returns an individual bit on the rendering layer mask."
msgstr "Возвращает отдельный бит в маске слоя рендеринга."

msgid ""
"Returns a list of the visible embedded [Window]s inside the viewport.\n"
"[b]Note:[/b] [Window]s inside other viewports will not be listed."
msgstr ""
"Возвращает список видимых встроенных [Window] внутри области просмотра.\n"
"[b]Примечание:[/b] [Window] внутри других областей просмотра не будут "
"перечислены."

msgid ""
"Returns the transform from the viewport's coordinate system to the embedder's "
"coordinate system."
msgstr ""
"Возвращает преобразование из системы координат области просмотра в систему "
"координат средства внедрения."

msgid ""
"Returns the mouse's position in this [Viewport] using the coordinate system "
"of this [Viewport]."
msgstr ""
"Возвращает положение мыши в этом [Viewport], используя систему координат "
"этого [Viewport]."

msgid "Returns viewport oversampling factor."
msgstr "Возвращает коэффициент передискретизации области просмотра."

msgid ""
"Returns the positional shadow atlas quadrant subdivision of the specified "
"quadrant."
msgstr ""
"Возвращает позиционное подразделение квадранта теневого атласа указанного "
"квадранта."

msgid "Returns rendering statistics of the given type."
msgstr "Возвращает статистику рендеринга указанного типа."

msgid ""
"Returns the transform from the Viewport's coordinates to the screen "
"coordinates of the containing window manager window."
msgstr ""
"Возвращает преобразование из координат области просмотра в экранные "
"координаты содержащего ее окна оконного менеджера."

msgid ""
"Returns the automatically computed 2D stretch transform, taking the "
"[Viewport]'s stretch settings into account. The final value is multiplied by "
"[member Window.content_scale_factor], but only for the root viewport. If this "
"method is called on a [SubViewport] (e.g., in a scene tree with "
"[SubViewportContainer] and [SubViewport]), the scale factor of the root "
"window will not be applied. Using [method Transform2D.get_scale] on the "
"returned value, this can be used to compensate for scaling when zooming a "
"[Camera2D] node, or to scale down a [TextureRect] to be pixel-perfect "
"regardless of the automatically computed scale factor.\n"
"[b]Note:[/b] Due to how pixel scaling works, the returned transform's X and Y "
"scale may differ slightly, even when [member Window.content_scale_aspect] is "
"set to a mode that preserves the pixels' aspect ratio. If [member "
"Window.content_scale_aspect] is [constant "
"Window.CONTENT_SCALE_ASPECT_IGNORE], the X and Y scale may differ "
"[i]significantly[/i]."
msgstr ""
"Возвращает автоматически вычисленное 2D-преобразование растяжения, принимая "
"во внимание настройки растяжения [Viewport]. Конечное значение умножается на "
"[member Window.content_scale_factor], но только для корневого окна просмотра. "
"Если этот метод вызывается для [SubViewport] (например, в дереве сцены с "
"[SubViewportContainer] и [SubViewport]), коэффициент масштабирования "
"корневого окна не будет применен. Используя [method Transform2D.get_scale] "
"для возвращаемого значения, это можно использовать для компенсации "
"масштабирования при масштабировании узла [Camera2D] или для уменьшения "
"масштаба [TextureRect] до пиксельного совершенства независимо от "
"автоматически вычисленного коэффициента масштабирования.\n"
"[b]Примечание:[/b] Из-за того, как работает масштабирование пикселей, масштаб "
"возвращаемого преобразования по осям X и Y может немного отличаться, даже "
"если [member Window.content_scale_aspect] установлен в режим, который "
"сохраняет соотношение сторон пикселей. Если [member "
"Window.content_scale_aspect] равен [constant "
"Window.CONTENT_SCALE_ASPECT_IGNORE], масштабы X и Y могут отличаться "
"[i]значительно[/i]."

msgid ""
"Returns the viewport's texture.\n"
"[b]Note:[/b] When trying to store the current texture (e.g. in a file), it "
"might be completely black or outdated if used too early, especially when used "
"in e.g. [method Node._ready]. To make sure the texture you get is correct, "
"you can await [signal RenderingServer.frame_post_draw] signal.\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"    await RenderingServer.frame_post_draw\n"
"    $Viewport.get_texture().get_image().save_png(\"user://Screenshot.png\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async override void _Ready()\n"
"{\n"
"    await ToSignal(RenderingServer.Singleton, "
"RenderingServer.SignalName.FramePostDraw);\n"
"    var viewport = GetNode<Viewport>(\"Viewport\");\n"
"    viewport.GetTexture().GetImage().SavePng(\"user://Screenshot.png\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] When [member use_hdr_2d] is [code]true[/code] the returned "
"texture will be an HDR image encoded in linear space."
msgstr ""
"Возвращает текстуру области просмотра.\n"
"[b]Примечание:[/b] При попытке сохранить текущую текстуру (например, в файле) "
"она может оказаться полностью чёрной или устаревшей, если использована "
"слишком рано, особенно при использовании, например, в [method Node._ready]. "
"Чтобы убедиться, что полученная текстура верна, можно дождаться сигнала "
"[signal RenderingServer.frame_post_draw].\n"
"[codeblocks]\n"
"[gdscript]\n"
"func _ready():\n"
"    await RenderingServer.frame_post_draw\n"
"    $Viewport.get_texture().get_image().save_png(\"user://Screenshot.png\")\n"
"[/gdscript]\n"
"[csharp]\n"
"public async override void _Ready()\n"
"{\n"
"    await ToSignal(RenderingServer.Singleton, "
"RenderingServer.SignalName.FramePostDraw);\n"
"    var viewport = GetNode<Viewport>(\"Viewport\");\n"
"    viewport.GetTexture().GetImage().SavePng(\"user://Screenshot.png\");\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Если [member use_hdr_2d] равно [code]true[/code], "
"возвращаемая текстура будет HDR-изображением, закодированным в линейном "
"пространстве."

msgid "Returns the viewport's RID from the [RenderingServer]."
msgstr "Возвращает RID области просмотра из [RenderingServer]."

msgid "Returns the visible rectangle in global screen coordinates."
msgstr "Возвращает видимый прямоугольник в глобальных экранных координатах."

msgid ""
"Cancels the drag operation that was previously started through [method "
"Control._get_drag_data] or forced with [method Control.force_drag]."
msgstr ""
"Отменяет операцию перетаскивания, которая была ранее запущена с помощью "
"[method Control._get_drag_data] или принудительно запущена с помощью [method "
"Control.force_drag]."

msgid ""
"Returns the drag data from the GUI, that was previously returned by [method "
"Control._get_drag_data]."
msgstr ""
"Возвращает данные перетаскивания из графического интерфейса пользователя, "
"которые ранее возвращались [method Control._get_drag_data]."

msgid "Returns the drag data human-readable description."
msgstr "Возвращает понятное человеку описание данных перетаскивания."

msgid ""
"Returns the currently focused [Control] within this viewport. If no [Control] "
"is focused, returns [code]null[/code]."
msgstr ""
"Возвращает текущий сфокусированный [Control] в этом окне просмотра. Если нет "
"сфокусированного [Control], возвращает [code]null[/code]."

msgid ""
"Returns the [Control] that the mouse is currently hovering over in this "
"viewport. If no [Control] has the cursor, returns [code]null[/code].\n"
"Typically the leaf [Control] node or deepest level of the subtree which "
"claims hover. This is very useful when used together with [method "
"Node.is_ancestor_of] to find if the mouse is within a control tree."
msgstr ""
"Возвращает [Control], над которым в данный момент находится мышь в этом окне "
"просмотра. Если ни один [Control] не имеет курсора, возвращает [code]null[/"
"code].\n"
"Обычно это листовой узел [Control] или самый глубокий уровень поддерева, "
"который заявляет наведение. Это очень полезно при использовании вместе с "
"[method Node.is_ancestor_of], чтобы определить, находится ли мышь в дереве "
"элементов управления."

msgid "Returns [code]true[/code] if the drag operation is successful."
msgstr ""
"Возвращает [code]true[/code], если операция перетаскивания прошла успешно."

msgid ""
"Returns [code]true[/code] if a drag operation is currently ongoing and where "
"the drop action could happen in this viewport.\n"
"Alternative to [constant Node.NOTIFICATION_DRAG_BEGIN] and [constant "
"Node.NOTIFICATION_DRAG_END] when you prefer polling the value."
msgstr ""
"Возвращает [code]true[/code], если операция перетаскивания в данный момент "
"выполняется и где действие сброса может произойти в этом окне просмотра.\n"
"Альтернатива [constant Node.NOTIFICATION_DRAG_BEGIN] и [constant "
"Node.NOTIFICATION_DRAG_END], когда вы предпочитаете опрос значения."

msgid ""
"Removes the focus from the currently focused [Control] within this viewport. "
"If no [Control] has the focus, does nothing."
msgstr ""
"Удаляет фокус с текущего сфокусированного [Control] в этом окне просмотра. "
"Если фокуса нет ни у одного [Control], ничего не делает."

msgid "Sets the drag data human-readable description."
msgstr "Задает понятное человеку описание данных перетаскивания."

msgid ""
"Returns whether the current [InputEvent] has been handled. Input events are "
"not handled until [method set_input_as_handled] has been called during the "
"lifetime of an [InputEvent].\n"
"This is usually done as part of input handling methods like [method "
"Node._input], [method Control._gui_input] or others, as well as in "
"corresponding signal handlers.\n"
"If [member handle_input_locally] is set to [code]false[/code], this method "
"will try finding the first parent viewport that is set to handle input "
"locally, and return its value for [method is_input_handled] instead."
msgstr ""
"Возвращает, был ли обработан текущий [InputEvent]. События ввода не "
"обрабатываются, пока не будет вызван [method set_input_as_handled] в течение "
"жизненного цикла [InputEvent].\n"
"Обычно это делается как часть методов обработки ввода, таких как [method "
"Node._input], [method Control._gui_input] или других, а также в "
"соответствующих обработчиках сигналов.\n"
"Если [member handle_input_locally] установлен в [code]false[/code], этот "
"метод попытается найти первую родительскую область просмотра, которая "
"настроена на локальную обработку ввода, и вместо этого вернет его значение "
"для [method is_input_handled]."

msgid ""
"Inform the Viewport that the mouse has entered its area. Use this function "
"before sending an [InputEventMouseButton] or [InputEventMouseMotion] to the "
"[Viewport] with [method Viewport.push_input]. See also [method "
"notify_mouse_exited].\n"
"[b]Note:[/b] In most cases, it is not necessary to call this function because "
"[SubViewport] nodes that are children of [SubViewportContainer] are notified "
"automatically. This is only necessary when interacting with viewports in non-"
"default ways, for example as textures in [TextureRect] or with an [Area3D] "
"that forwards input events."
msgstr ""
"Сообщите Viewport, что мышь вошла в его область. Используйте эту функцию "
"перед отправкой [InputEventMouseButton] или [InputEventMouseMotion] в "
"[Viewport] с помощью [method Viewport.push_input]. См. также [method "
"notify_mouse_exited].\n"
"[b]Примечание:[/b] В большинстве случаев нет необходимости вызывать эту "
"функцию, поскольку узлы [SubViewport], которые являются дочерними элементами "
"[SubViewportContainer], уведомляются автоматически. Это необходимо только при "
"взаимодействии с viewport нестандартными способами, например, как текстуры в "
"[TextureRect] или с [Area3D], который пересылает события ввода."

msgid ""
"Inform the Viewport that the mouse has left its area. Use this function when "
"the node that displays the viewport notices the mouse has left the area of "
"the displayed viewport. See also [method notify_mouse_entered].\n"
"[b]Note:[/b] In most cases, it is not necessary to call this function because "
"[SubViewport] nodes that are children of [SubViewportContainer] are notified "
"automatically. This is only necessary when interacting with viewports in non-"
"default ways, for example as textures in [TextureRect] or with an [Area3D] "
"that forwards input events."
msgstr ""
"Сообщить Viewport, что мышь покинула его область. Используйте эту функцию, "
"когда узел, отображающий viewport, замечает, что мышь покинула область "
"отображаемого viewport. См. также [method notify_mouse_entered].\n"
"[b]Примечание:[/b] В большинстве случаев нет необходимости вызывать эту "
"функцию, поскольку узлы [SubViewport], которые являются дочерними элементами "
"[SubViewportContainer], уведомляются автоматически. Это необходимо только при "
"взаимодействии с viewports нестандартными способами, например, как текстуры в "
"[TextureRect] или с [Area3D], который пересылает события ввода."

msgid ""
"Triggers the given [param event] in this [Viewport]. This can be used to pass "
"an [InputEvent] between viewports, or to locally apply inputs that were sent "
"over the network or saved to a file.\n"
"If [param in_local_coords] is [code]false[/code], the event's position is in "
"the embedder's coordinates and will be converted to viewport coordinates. If "
"[param in_local_coords] is [code]true[/code], the event's position is in "
"viewport coordinates.\n"
"While this method serves a similar purpose as [method "
"Input.parse_input_event], it does not remap the specified [param event] based "
"on project settings like [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse].\n"
"Calling this method will propagate calls to child nodes for following methods "
"in the given order:\n"
"- [method Node._input]\n"
"- [method Control._gui_input] for [Control] nodes\n"
"- [method Node._shortcut_input]\n"
"- [method Node._unhandled_key_input]\n"
"- [method Node._unhandled_input]\n"
"If an earlier method marks the input as handled via [method "
"set_input_as_handled], any later method in this list will not be called.\n"
"If none of the methods handle the event and [member physics_object_picking] "
"is [code]true[/code], the event is used for physics object picking."
msgstr ""
"Запускает заданное [param event] в этом [Viewport]. Это можно использовать "
"для передачи [InputEvent] между viewport или для локального применения "
"входных данных, отправленных по сети или сохраненных в файле.\n"
"Если [param in_local_coords] имеет значение [code]false[/code], позиция "
"события находится в координатах встраиваемого устройства и будет "
"преобразована в координаты viewport. Если [param in_local_coords] имеет "
"значение [code]true[/code], позиция события находится в координатах "
"viewport.\n"
"Хотя этот метод служит той же цели, что и [method Input.parse_input_event], "
"он не переназначает указанное [param event] на основе настроек проекта, таких "
"как [member ProjectSettings.input_devices/pointing/"
"emulate_touch_from_mouse].\n"
"Вызов этого метода распространит вызовы на дочерние узлы для следующих "
"методов в указанном порядке:\n"
"- [method Node._input]\n"
"- [method Control._gui_input] для узлов [Control]\n"
"- [method Node._shortcut_input]\n"
"- [method Node._unhandled_key_input]\n"
"- [method Node._unhandled_input]\n"
"Если более ранний метод помечает ввод как обработанный с помощью [method "
"set_input_as_handled], любой более поздний метод в этом списке не будет "
"вызван.\n"
"Если ни один из методов не обрабатывает событие и [member "
"physics_object_picking] равен [code]true[/code], событие используется для "
"выбора физического объекта."

msgid ""
"Helper method which calls the [code]set_text()[/code] method on the currently "
"focused [Control], provided that it is defined (e.g. if the focused Control "
"is [Button] or [LineEdit])."
msgstr ""
"Вспомогательный метод, который вызывает метод [code]set_text()[/code] для "
"текущего сфокусированного элемента управления [Control], при условии, что он "
"определен (например, если сфокусированный элемент управления — [Button] или "
"[LineEdit])."

msgid "Use [method push_input] instead."
msgstr "Вместо этого используйте [method push_input]."

msgid ""
"Triggers the given [param event] in this [Viewport]. This can be used to pass "
"an [InputEvent] between viewports, or to locally apply inputs that were sent "
"over the network or saved to a file.\n"
"If [param in_local_coords] is [code]false[/code], the event's position is in "
"the embedder's coordinates and will be converted to viewport coordinates. If "
"[param in_local_coords] is [code]true[/code], the event's position is in "
"viewport coordinates.\n"
"Calling this method will propagate calls to child nodes for following methods "
"in the given order:\n"
"- [method Node._shortcut_input]\n"
"- [method Node._unhandled_key_input]\n"
"- [method Node._unhandled_input]\n"
"If an earlier method marks the input as handled via [method "
"set_input_as_handled], any later method in this list will not be called.\n"
"If none of the methods handle the event and [member physics_object_picking] "
"is [code]true[/code], the event is used for physics object picking.\n"
"[b]Note:[/b] This method doesn't propagate input events to embedded [Window]s "
"or [SubViewport]s."
msgstr ""
"Запускает заданное [param event] в этом [Viewport]. Это можно использовать "
"для передачи [InputEvent] между viewport или для локального применения "
"входных данных, отправленных по сети или сохраненных в файле.\n"
"Если [param in_local_coords] равно [code]false[/code], позиция события "
"находится в координатах встраиваемого устройства и будет преобразована в "
"координаты viewport. Если [param in_local_coords] равно [code]true[/code], "
"позиция события находится в координатах viewport.\n"
"Вызов этого метода распространит вызовы дочерних узлов для следующих методов "
"в указанном порядке:\n"
"- [method Node._shortcut_input]\n"
"- [method Node._unhandled_key_input]\n"
"- [method Node._unhandled_input]\n"
"Если более ранний метод помечает ввод как обработанный с помощью [method "
"set_input_as_handled], любой более поздний метод в этом списке не будет "
"вызван.\n"
"Если ни один из методов не обрабатывает событие и [member "
"physics_object_picking] равен [code]true[/code], событие используется для "
"выбора физического объекта.\n"
"[b]Примечание:[/b] Этот метод не распространяет события ввода на встроенные "
"[Window] или [SubViewport]."

msgid ""
"Set/clear individual bits on the rendering layer mask. This simplifies "
"editing this [Viewport]'s layers."
msgstr ""
"Установить/снять отдельные биты на маске слоя рендеринга. Это упрощает "
"редактирование слоев этого [Viewport]."

msgid ""
"Stops the input from propagating further down the [SceneTree].\n"
"[b]Note:[/b] This does not affect the methods in [Input], only the way events "
"are propagated."
msgstr ""
"Останавливает распространение ввода дальше по [SceneTree].\n"
"[b]Примечание:[/b] Это не влияет на методы в [Input], а только на способ "
"распространения событий."

msgid ""
"Sets the number of subdivisions to use in the specified quadrant. A higher "
"number of subdivisions allows you to have more shadows in the scene at once, "
"but reduces the quality of the shadows. A good practice is to have quadrants "
"with a varying number of subdivisions and to have as few subdivisions as "
"possible."
msgstr ""
"Устанавливает количество подразделов для использования в указанном квадранте. "
"Большее количество подразделов позволяет иметь больше теней в сцене "
"одновременно, но снижает качество теней. Хорошей практикой является наличие "
"квадрантов с различным количеством подразделов и как можно меньшим "
"количеством подразделов."

msgid ""
"Force instantly updating the display based on the current mouse cursor "
"position. This includes updating the mouse cursor shape and sending necessary "
"[signal Control.mouse_entered], [signal CollisionObject2D.mouse_entered], "
"[signal CollisionObject3D.mouse_entered] and [signal Window.mouse_entered] "
"signals and their respective [code]mouse_exited[/code] counterparts."
msgstr ""
"Принудительно мгновенно обновлять дисплей на основе текущего положения "
"курсора мыши. Это включает обновление формы курсора мыши и отправку "
"необходимых сигналов [signal Control.mouse_entered], [signal "
"CollisionObject2D.mouse_entered], [signal CollisionObject3D.mouse_entered] и "
"[signal Window.mouse_entered] и их соответствующих аналогов "
"[code]mouse_exited[/code]."

msgid ""
"Moves the mouse pointer to the specified position in this [Viewport] using "
"the coordinate system of this [Viewport].\n"
"[b]Note:[/b] [method warp_mouse] is only supported on Windows, macOS and "
"Linux. It has no effect on Android, iOS and Web."
msgstr ""
"Перемещает указатель мыши в указанную позицию в этом [Viewport], используя "
"систему координат этого [Viewport].\n"
"[b]Примечание:[/b] [method warp_mouse] поддерживается только в Windows, macOS "
"и Linux. Он не действует на Android, iOS и Web."

msgid "If [code]true[/code], the viewport will process 2D audio streams."
msgstr ""
"Если [code]true[/code], область просмотра будет обрабатывать 2D-аудиопотоки."

msgid "If [code]true[/code], the viewport will process 3D audio streams."
msgstr ""
"Если [code]true[/code], область просмотра будет обрабатывать 3D-аудиопотоки."

msgid ""
"The rendering layers in which this [Viewport] renders [CanvasItem] nodes."
msgstr "Слои рендеринга, в которых этот [Viewport] рендерит узлы [CanvasItem]."

msgid "Sets the default filter mode used by [CanvasItem]s in this Viewport."
msgstr ""
"Устанавливает режим фильтра по умолчанию, используемый [CanvasItem] в этом "
"окне просмотра."

msgid "Sets the default repeat mode used by [CanvasItem]s in this Viewport."
msgstr ""
"Устанавливает режим повтора по умолчанию, используемый [CanvasItem] в этом "
"окне просмотра."

msgid ""
"The canvas transform of the viewport, useful for changing the on-screen "
"positions of all child [CanvasItem]s. This is relative to the global canvas "
"transform of the viewport."
msgstr ""
"Преобразование холста вьюпорта, полезное для изменения положения на экране "
"всех дочерних [CanvasItem]. Это относительно глобального преобразования "
"холста вьюпорта."

msgid "The overlay mode for test rendered geometry in debug purposes."
msgstr ""
"Режим наложения для тестирования визуализированной геометрии в целях отладки."

msgid "Disable 3D rendering (but keep 2D rendering)."
msgstr "Отключить 3D-рендеринг (но сохранить 2D-рендеринг)."

msgid ""
"Determines how sharp the upscaled image will be when using the FSR upscaling "
"mode. Sharpness halves with every whole number. Values go from 0.0 (sharpest) "
"to 2.0. Values above 2.0 won't make a visible difference.\n"
"To control this property on the root viewport, set the [member "
"ProjectSettings.rendering/scaling_3d/fsr_sharpness] project setting."
msgstr ""
"Определяет, насколько резким будет увеличенное изображение при использовании "
"режима увеличения FSR. Резкость уменьшается вдвое с каждым целым числом. "
"Значения варьируются от 0,0 (максимальная резкость) до 2,0. Значения выше 2,0 "
"не будут иметь видимого значения.\n"
"Чтобы управлять этим свойством в корневом окне просмотра, задайте настройку "
"проекта [member ProjectSettings.rendering/scaling_3d/fsr_sharpness]."

msgid ""
"The global canvas transform of the viewport. The canvas transform is relative "
"to this."
msgstr ""
"Глобальное преобразование холста вьюпорта. Преобразование холста относительно "
"этого."

msgid "If [code]true[/code], the viewport will not receive input events."
msgstr ""
"Если [code]true[/code], область просмотра не будет получать входные (Input) "
"события."

msgid ""
"If [code]true[/code], sub-windows (popups and dialogs) will be embedded "
"inside application window as control-like nodes. If [code]false[/code], they "
"will appear as separate windows handled by the operating system."
msgstr ""
"Если [code]true[/code], подокна (всплывающие окна и диалоги) будут встроены в "
"окно приложения как узлы, подобные элементам управления. Если [code]false[/"
"code], они будут отображаться как отдельные окна, управляемые операционной "
"системой."

msgid ""
"If [code]true[/code], the GUI controls on the viewport will lay pixel "
"perfectly."
msgstr ""
"Если [code]true[/code], элементы управления графическим интерфейсом в области "
"просмотра будут располагаться идеально по пикселям."

msgid ""
"If [code]true[/code], this viewport will mark incoming input events as "
"handled by itself. If [code]false[/code], this is instead done by the first "
"parent viewport that is set to handle input locally.\n"
"A [SubViewportContainer] will automatically set this property to [code]false[/"
"code] for the [Viewport] contained inside of it.\n"
"See also [method set_input_as_handled] and [method is_input_handled]."
msgstr ""
"Если [code]true[/code], эта область просмотра будет отмечать входящие события "
"ввода как обработанные ею самой. Если [code]false[/code], это будет сделано "
"первой родительской областью просмотра, которая настроена на локальную "
"обработку ввода.\n"
"[SubViewportContainer] автоматически установит это свойство в [code]false[/"
"code] для [Viewport], содержащегося внутри него.\n"
"См. также [method set_input_as_handled] и [method is_input_handled]."

msgid ""
"The automatic LOD bias to use for meshes rendered within the [Viewport] (this "
"is analogous to [member ReflectionProbe.mesh_lod_threshold]). Higher values "
"will use less detailed versions of meshes that have LOD variations generated. "
"If set to [code]0.0[/code], automatic LOD is disabled. Increase [member "
"mesh_lod_threshold] to improve performance at the cost of geometry detail.\n"
"To control this property on the root viewport, set the [member "
"ProjectSettings.rendering/mesh_lod/lod_change/threshold_pixels] project "
"setting.\n"
"[b]Note:[/b] [member mesh_lod_threshold] does not affect [GeometryInstance3D] "
"visibility ranges (also known as \"manual\" LOD or hierarchical LOD)."
msgstr ""
"Автоматическое смещение LOD для использования сеток, визуализируемых в "
"[Viewport] (аналогично [member ReflectionProbe.mesh_lod_threshold]). Более "
"высокие значения будут использовать менее подробные версии сеток, которые "
"имеют сгенерированные вариации LOD. Если установлено значение [code]0.0[/"
"code], автоматический LOD отключен. Увеличьте [member mesh_lod_threshold], "
"чтобы повысить производительность за счет детализации геометрии.\n"
"Чтобы управлять этим свойством в корневом viewport, задайте настройку проекта "
"[member ProjectSettings.rendering/mesh_lod/lod_change/threshold_pixels].\n"
"[b]Примечание:[/b] [member mesh_lod_threshold] не влияет на диапазоны "
"видимости [GeometryInstance3D] (также известные как «ручной» LOD или "
"иерархический LOD)."

msgid ""
"The multisample antialiasing mode for 2D/Canvas rendering. A higher number "
"results in smoother edges at the cost of significantly worse performance. A "
"value of [constant Viewport.MSAA_2X] or [constant Viewport.MSAA_4X] is best "
"unless targeting very high-end systems. This has no effect on shader-induced "
"aliasing or texture aliasing.\n"
"See also [member ProjectSettings.rendering/anti_aliasing/quality/msaa_2d] and "
"[method RenderingServer.viewport_set_msaa_2d]."
msgstr ""
"Режим сглаживания с несколькими выборками для рендеринга 2D/Canvas. Более "
"высокое число приводит к более гладким краям за счет значительного ухудшения "
"производительности. Значение [constant Viewport.MSAA_2X] или [constant "
"Viewport.MSAA_4X] является наилучшим, если только вы не нацелены на очень "
"высокопроизводительные системы. Это не влияет на сглаживание, вызванное "
"шейдером, или сглаживание текстур.\n"
"См. также [member ProjectSettings.rendering/anti_aliasing/quality/msaa_2d] и "
"[method RenderingServer.viewport_set_msaa_2d]."

msgid ""
"The multisample antialiasing mode for 3D rendering. A higher number results "
"in smoother edges at the cost of significantly worse performance. A value of "
"[constant Viewport.MSAA_2X] or [constant Viewport.MSAA_4X] is best unless "
"targeting very high-end systems. See also bilinear scaling 3D [member "
"scaling_3d_mode] for supersampling, which provides higher quality but is much "
"more expensive. This has no effect on shader-induced aliasing or texture "
"aliasing.\n"
"See also [member ProjectSettings.rendering/anti_aliasing/quality/msaa_3d] and "
"[method RenderingServer.viewport_set_msaa_3d]."
msgstr ""
"Режим сглаживания мультисэмпла для 3D-рендеринга. Более высокое число "
"приводит к более гладким краям за счет значительного ухудшения "
"производительности. Значение [constant Viewport.MSAA_2X] или [constant "
"Viewport.MSAA_4X] является лучшим, если только вы не нацелены на очень "
"высокопроизводительные системы. См. также билинейное масштабирование 3D "
"[member scaling_3d_mode] для суперсэмплинга, которое обеспечивает более "
"высокое качество, но гораздо более затратно. Это не влияет на сглаживание, "
"вызванное шейдером, или сглаживание текстур.\n"
"См. также [member ProjectSettings.rendering/anti_aliasing/quality/msaa_3d] и "
"[method RenderingServer.viewport_set_msaa_3d]."

msgid ""
"If [code]true[/code] and one of the following conditions are true: [member "
"SubViewport.size_2d_override_stretch] and [member "
"SubViewport.size_2d_override] are set, [member Window.content_scale_factor] "
"is set and scaling is enabled, [member oversampling_override] is set, font "
"and [DPITexture] oversampling are enabled."
msgstr ""
"Если [code]true[/code] и выполняется одно из следующих условий: установлены "
"[member SubViewport.size_2d_override_stretch] и [member "
"SubViewport.size_2d_override], установлен [member "
"Window.content_scale_factor] и включено масштабирование, установлен [member "
"oversampling_override], включены передискретизация шрифта и [DPITexture]."

msgid ""
"If greater than zero, this value is used as the font oversampling factor, "
"otherwise oversampling is equal to viewport scale."
msgstr ""
"Если значение больше нуля, это значение используется как коэффициент "
"передискретизации шрифта, в противном случае передискретизация равна масштабу "
"области просмотра."

msgid ""
"If [code]true[/code], the viewport will use a unique copy of the [World3D] "
"defined in [member world_3d]."
msgstr ""
"Если [code]true[/code], область просмотра будет использовать уникальную копию "
"[World3D], определенную в [member world_3d]."

msgid ""
"If [code]true[/code], the objects rendered by viewport become subjects of "
"mouse picking process.\n"
"[b]Note:[/b] The number of simultaneously pickable objects is limited to 64 "
"and they are selected in a non-deterministic order, which can be different in "
"each picking process."
msgstr ""
"Если [code]true[/code], объекты, отображаемые областью просмотра, становятся "
"предметами процесса выбора мышью.\n"
"[b]Примечание:[/b] Количество одновременно выбираемых объектов ограничено 64, "
"и они выбираются в неопределенном порядке, который может быть разным в каждом "
"процессе выбора."

msgid ""
"If [code]true[/code], the input_event signal will only be sent to one physics "
"object in the mouse picking process. If you want to get the top object only, "
"you must also enable [member physics_object_picking_sort].\n"
"If [code]false[/code], an input_event signal will be sent to all physics "
"objects in the mouse picking process.\n"
"This applies to 2D CanvasItem object picking only."
msgstr ""
"Если [code]true[/code], сигнал input_event будет отправлен только одному "
"физическому объекту в процессе выбора мыши. Если вы хотите получить только "
"верхний объект, вы также должны включить [member "
"physics_object_picking_sort].\n"
"Если [code]false[/code], сигнал input_event будет отправлен всем физическим "
"объектам в процессе выбора мыши.\n"
"Это применимо только к выбору объекта 2D CanvasItem."

msgid ""
"If [code]true[/code], objects receive mouse picking events sorted primarily "
"by their [member CanvasItem.z_index] and secondarily by their position in the "
"scene tree. If [code]false[/code], the order is undetermined.\n"
"[b]Note:[/b] This setting is disabled by default because of its potential "
"expensive computational cost.\n"
"[b]Note:[/b] Sorting happens after selecting the pickable objects. Because of "
"the limitation of 64 simultaneously pickable objects, it is not guaranteed "
"that the object with the highest [member CanvasItem.z_index] receives the "
"picking event."
msgstr ""
"Если [code]true[/code], объекты получают события выбора мыши, отсортированные "
"в первую очередь по их [member CanvasItem.z_index] и во вторую очередь по их "
"положению в дереве сцены. Если [code]false[/code], порядок не определен.\n"
"[b]Примечание:[/b] Этот параметр отключен по умолчанию из-за его потенциально "
"дорогостоящих вычислительных затрат.\n"
"[b]Примечание:[/b] Сортировка происходит после выбора выбираемых объектов. Из-"
"за ограничения в 64 одновременно выбираемых объекта не гарантируется, что "
"объект с наивысшим [member CanvasItem.z_index] получит событие выбора."

msgid "The subdivision amount of the first quadrant on the shadow atlas."
msgstr "Величина подразделения первого квадранта на теневом атласе."

msgid "The subdivision amount of the second quadrant on the shadow atlas."
msgstr "Величина подразделения второго квадранта на теневом атласе."

msgid "The subdivision amount of the third quadrant on the shadow atlas."
msgstr "Величина подразделения третьего квадранта на теневом атласе."

msgid "The subdivision amount of the fourth quadrant on the shadow atlas."
msgstr "Величина подразделения четвертого квадранта на теневом атласе."

msgid ""
"The shadow atlas' resolution (used for omni and spot lights). The value is "
"rounded up to the nearest power of 2.\n"
"[b]Note:[/b] If this is set to [code]0[/code], no positional shadows will be "
"visible at all. This can improve performance significantly on low-end systems "
"by reducing both the CPU and GPU load (as fewer draw calls are needed to draw "
"the scene without shadows)."
msgstr ""
"Разрешение теневого атласа (используется для всенаправленного и точечного "
"освещения). Значение округляется до ближайшей степени 2.\n"
"[b]Примечание:[/b] Если установлено значение [code]0[/code], позиционные тени "
"вообще не будут видны. Это может значительно повысить производительность на "
"слабых системах за счет снижения нагрузки как на ЦП, так и на ГП (поскольку "
"для отрисовки сцены без теней требуется меньше вызовов отрисовки)."

msgid ""
"Sets scaling 3D mode. Bilinear scaling renders at different resolution to "
"either undersample or supersample the viewport. FidelityFX Super Resolution "
"1.0, abbreviated to FSR, is an upscaling technology that produces high "
"quality images at fast framerates by using a spatially aware upscaling "
"algorithm. FSR is slightly more expensive than bilinear, but it produces "
"significantly higher image quality. FSR should be used where possible.\n"
"To control this property on the root viewport, set the [member "
"ProjectSettings.rendering/scaling_3d/mode] project setting."
msgstr ""
"Устанавливает режим масштабирования 3D. Билинейный масштаб рендерит с разным "
"разрешением для либо недостаточной, либо избыточной выборки области "
"просмотра. FidelityFX Super Resolution 1.0, сокращенно FSR, — это технология "
"масштабирования, которая создает высококачественные изображения с высокой "
"частотой кадров с помощью пространственно-ориентированного алгоритма "
"масштабирования. FSR немного дороже билинейного, но обеспечивает значительно "
"более высокое качество изображения. FSR следует использовать там, где это "
"возможно.\n"
"Чтобы управлять этим свойством в корневой области просмотра, задайте "
"настройку проекта [member ProjectSettings.rendering/scaling_3d/mode]."

msgid ""
"Scales the 3D render buffer based on the viewport size uses an image filter "
"specified in [member ProjectSettings.rendering/scaling_3d/mode] to scale the "
"output image to the full viewport size. Values lower than [code]1.0[/code] "
"can be used to speed up 3D rendering at the cost of quality (undersampling). "
"Values greater than [code]1.0[/code] are only valid for bilinear mode and can "
"be used to improve 3D rendering quality at a high performance cost "
"(supersampling). See also [member ProjectSettings.rendering/anti_aliasing/"
"quality/msaa_3d] for multi-sample antialiasing, which is significantly "
"cheaper but only smooths the edges of polygons.\n"
"When using FSR upscaling, AMD recommends exposing the following values as "
"preset options to users \"Ultra Quality: 0.77\", \"Quality: 0.67\", "
"\"Balanced: 0.59\", \"Performance: 0.5\" instead of exposing the entire "
"scale.\n"
"To control this property on the root viewport, set the [member "
"ProjectSettings.rendering/scaling_3d/scale] project setting."
msgstr ""
"Масштабирует буфер 3D-рендеринга на основе размера области просмотра, "
"использует фильтр изображения, указанный в [member ProjectSettings.rendering/"
"scaling_3d/mode], для масштабирования выходного изображения до полного "
"размера области просмотра. Значения ниже [code]1.0[/code] можно использовать "
"для ускорения 3D-рендеринга за счет качества (недостаточная выборка). "
"Значения выше [code]1.0[/code] допустимы только для билинейного режима и "
"могут использоваться для улучшения качества 3D-рендеринга за счет высокой "
"производительности (суперсэмплинг). См. также [member "
"ProjectSettings.rendering/anti_aliasing/quality/msaa_3d] для сглаживания с "
"несколькими выборками, которое значительно дешевле, но сглаживает только края "
"полигонов.\n"
"При использовании масштабирования FSR AMD рекомендует предоставлять "
"пользователям следующие значения в качестве предустановленных параметров "
"«Ультра качество: 0,77», «Качество: 0,67», «Сбалансированное: 0,59», "
"«Производительность: 0,5» вместо предоставления всего масштаба.\n"
"Чтобы управлять этим свойством в корневом окне просмотра, задайте настройку "
"проекта [member ProjectSettings.rendering/scaling_3d/scale]."

msgid ""
"Sets the screen-space antialiasing method used. Screen-space antialiasing "
"works by selectively blurring edges in a post-process shader. It differs from "
"MSAA which takes multiple coverage samples while rendering objects. Screen-"
"space AA methods are typically faster than MSAA and will smooth out specular "
"aliasing, but tend to make scenes appear blurry.\n"
"See also [member ProjectSettings.rendering/anti_aliasing/quality/"
"screen_space_aa] and [method RenderingServer.viewport_set_screen_space_aa]."
msgstr ""
"Устанавливает используемый метод сглаживания экранного пространства. "
"Сглаживание экранного пространства работает путем выборочного размывания "
"краев в шейдере постобработки. Оно отличается от MSAA, который берет "
"несколько образцов покрытия при рендеринге объектов. Методы сглаживания "
"экранного пространства обычно быстрее, чем MSAA, и сглаживают зеркальное "
"сглаживание, но, как правило, делают сцены размытыми.\n"
"См. также [member ProjectSettings.rendering/anti_aliasing/quality/"
"screen_space_aa] и [method RenderingServer.viewport_set_screen_space_aa]."

msgid ""
"Controls how much of the original viewport's size should be covered by the 2D "
"signed distance field. This SDF can be sampled in [CanvasItem] shaders and is "
"also used for [GPUParticles2D] collision. Higher values allow portions of "
"occluders located outside the viewport to still be taken into account in the "
"generated signed distance field, at the cost of performance. If you notice "
"particles falling through [LightOccluder2D]s as the occluders leave the "
"viewport, increase this setting.\n"
"The percentage is added on each axis and on both sides. For example, with the "
"default [constant SDF_OVERSIZE_120_PERCENT], the signed distance field will "
"cover 20% of the viewport's size outside the viewport on each side (top, "
"right, bottom, left)."
msgstr ""
"Управляет тем, какая часть исходного размера области просмотра должна быть "
"покрыта 2D-полем расстояния со знаком. Этот SDF может быть выбран в шейдерах "
"[CanvasItem] и также используется для столкновения [GPUParticles2D]. Более "
"высокие значения позволяют учитывать части окклюдеров, расположенных за "
"пределами области просмотра, в сгенерированном поле расстояния со знаком, за "
"счет производительности. Если вы заметили, что частицы падают через "
"[LightOccluder2D], когда окклюдеры покидают область просмотра, увеличьте этот "
"параметр.\n"
"Процент добавляется на каждой оси и с обеих сторон. Например, при значении по "
"умолчанию [constant SDF_OVERSIZE_120_PERCENT] поле расстояния со знаком будет "
"покрывать 20% размера области просмотра за пределами области просмотра с "
"каждой стороны (сверху, справа, снизу, слева)."

msgid ""
"The resolution scale to use for the 2D signed distance field. Higher values "
"lead to a more precise and more stable signed distance field as the camera "
"moves, at the cost of performance."
msgstr ""
"Масштаб разрешения для использования в 2D-поле расстояний со знаком. Более "
"высокие значения приводят к более точному и стабильному полю расстояний со "
"знаком при движении камеры, за счет производительности."

msgid ""
"If [code]true[/code], [CanvasItem] nodes will internally snap to full pixels. "
"Their position can still be sub-pixel, but the decimals will not have effect. "
"This can lead to a crisper appearance at the cost of less smooth movement, "
"especially when [Camera2D] smoothing is enabled."
msgstr ""
"Если [code]true[/code], узлы [CanvasItem] будут внутренне привязаны к полным "
"пикселям. Их положение все еще может быть субпиксельным, но десятичные знаки "
"не будут иметь эффекта. Это может привести к более четкому виду за счет менее "
"плавного движения, особенно если включено сглаживание [Camera2D]."

msgid ""
"If [code]true[/code], vertices of [CanvasItem] nodes will snap to full "
"pixels. Only affects the final vertex positions, not the transforms. This can "
"lead to a crisper appearance at the cost of less smooth movement, especially "
"when [Camera2D] smoothing is enabled."
msgstr ""
"Если [code]true[/code], вершины узлов [CanvasItem] будут привязаны к полным "
"пикселям. Влияет только на конечные положения вершин, а не на преобразования. "
"Это может привести к более четкому виду за счет менее плавного движения, "
"особенно если включено сглаживание [Camera2D]."

msgid ""
"Affects the final texture sharpness by reading from a lower or higher mipmap "
"(also called \"texture LOD bias\"). Negative values make mipmapped textures "
"sharper but grainier when viewed at a distance, while positive values make "
"mipmapped textures blurrier (even when up close).\n"
"Enabling temporal antialiasing ([member use_taa]) will automatically apply a "
"[code]-0.5[/code] offset to this value, while enabling FXAA ([member "
"screen_space_aa]) will automatically apply a [code]-0.25[/code] offset to "
"this value. If both TAA and FXAA are enabled at the same time, an offset of "
"[code]-0.75[/code] is applied to this value.\n"
"[b]Note:[/b] If [member scaling_3d_scale] is lower than [code]1.0[/code] "
"(exclusive), [member texture_mipmap_bias] is used to adjust the automatic "
"mipmap bias which is calculated internally based on the scale factor. The "
"formula for this is [code]log2(scaling_3d_scale) + mipmap_bias[/code].\n"
"To control this property on the root viewport, set the [member "
"ProjectSettings.rendering/textures/default_filters/texture_mipmap_bias] "
"project setting."
msgstr ""
"Влияет на окончательную резкость текстуры, считывая с более низкой или более "
"высокой mip-карты (также называется «смещением уровня детализации текстуры»). "
"Отрицательные значения делают текстуры с mip-картой более резкими, но более "
"зернистыми при просмотре на расстоянии, в то время как положительные значения "
"делают текстуры с mip-картой более размытыми (даже при просмотре вблизи).\n"
"Включение временного сглаживания ([member use_taa]) автоматически применит "
"смещение [code]-0.5[/code] к этому значению, а включение FXAA ([member "
"screen_space_aa]) автоматически применит смещение [code]-0.25[/code] к этому "
"значению. Если TAA и FXAA включены одновременно, к этому значению применяется "
"смещение [code]-0.75[/code]. \n"
"[b]Примечание:[/b] Если [member scaling_3d_scale] ниже [code]1.0[/code] "
"(исключительно), [member texture_mipmap_bias] используется для настройки "
"автоматического смещения mipmap, которое вычисляется внутренне на основе "
"коэффициента масштабирования. Формула для этого: [code]log2(scaling_3d_scale) "
"+ mipmap_bias[/code].\n"
"Чтобы управлять этим свойством в корневом окне просмотра, задайте настройку "
"проекта [member ProjectSettings.rendering/textures/default_filters/"
"texture_mipmap_bias]."

msgid ""
"If [code]true[/code], the viewport should render its background as "
"transparent."
msgstr ""
"Если [code]true[/code], область просмотра должна сделать свой фон прозрачным."

msgid ""
"If [code]true[/code], uses a fast post-processing filter to make banding "
"significantly less visible. If [member use_hdr_2d] is [code]false[/code], 2D "
"rendering is [i]not[/i] affected by debanding unless the [member "
"Environment.background_mode] is [constant Environment.BG_CANVAS]. If [member "
"use_hdr_2d] is [code]true[/code], debanding will only be applied if this is "
"the root [Viewport] and will affect all 2D and 3D rendering, including canvas "
"items.\n"
"In some cases, debanding may introduce a slightly noticeable dithering "
"pattern. It's recommended to enable debanding only when actually needed since "
"the dithering pattern will make lossless-compressed screenshots larger.\n"
"See also [member ProjectSettings.rendering/anti_aliasing/quality/"
"use_debanding] and [method RenderingServer.viewport_set_use_debanding]."
msgstr ""
"Если [code]true[/code], используется быстрый фильтр постобработки, "
"значительно снижающий видимость полос. Если [member use_hdr_2d] имеет "
"значение [code]false[/code], дебандеринг [i]не[/i] влияет на 2D-рендеринг, "
"если только [member Environment.background_mode] не имеет значение [constant "
"Environment.BG_CANVAS]. Если [member use_hdr_2d] имеет значение [code]true[/"
"code], дебандеринг будет применяться только к корневому [Viewport] и повлияет "
"на весь 2D- и 3D-рендеринг, включая элементы холста.\n"
"В некоторых случаях дебандеринг может привести к появлению слегка заметного "
"эффекта дизеринга. Рекомендуется включать дебандеринг только при "
"необходимости, поскольку он увеличит размер скриншотов, сжатых без потерь. \n"
"См. также [member ProjectSettings.rendering/anti_aliasing/quality/"
"use_debanding] и [method RenderingServer.viewport_set_use_debanding]."

msgid ""
"If [code]true[/code], 2D rendering will use a high dynamic range (HDR) format "
"framebuffer matching the bit depth of the 3D framebuffer. When using the "
"Forward+ or Compatibility renderer, this will be an [code]RGBA16[/code] "
"framebuffer. When using the Mobile renderer, it will be an [code]RGB10_A2[/"
"code] framebuffer.\n"
"Additionally, 2D rendering will take place in linear color space and will be "
"converted to sRGB space immediately before blitting to the screen (if the "
"Viewport is attached to the screen).\n"
"Practically speaking, this means that the end result of the Viewport will not "
"be clamped to the [code]0-1[/code] range and can be used in 3D rendering "
"without color space adjustments. This allows 2D rendering to take advantage "
"of effects requiring high dynamic range (e.g. 2D glow) as well as "
"substantially improves the appearance of effects requiring highly detailed "
"gradients."
msgstr ""
"Если [code]true[/code], 2D-рендеринг будет использовать фреймбуфер формата "
"HDR, соответствующий битовой глубине 3D-фреймбуфера. При использовании "
"рендерера Forward+ или Compatibility это будет фреймбуфер [code]RGBA16[/"
"code]. При использовании мобильного рендерера это будет фреймбуфер "
"[code]RGB10_A2[/code].\n"
"Кроме того, 2D-рендеринг будет выполняться в линейном цветовом пространстве и "
"будет преобразован в пространство sRGB непосредственно перед выводом на экран "
"(если область просмотра подключена к экрану).\n"
"На практике это означает, что конечный результат области просмотра не будет "
"ограничен диапазоном [code]0-1[/code] и может использоваться в 3D-рендеринге "
"без корректировки цветового пространства. Это позволяет использовать "
"преимущества 2D-рендеринга для эффектов, требующих широкого динамического "
"диапазона (например, 2D-свечение), а также существенно улучшает внешний вид "
"эффектов, требующих высокодетализированных градиентов."

msgid ""
"If [code]true[/code], [OccluderInstance3D] nodes will be usable for occlusion "
"culling in 3D for this viewport. For the root viewport, [member "
"ProjectSettings.rendering/occlusion_culling/use_occlusion_culling] must be "
"set to [code]true[/code] instead.\n"
"[b]Note:[/b] Enabling occlusion culling has a cost on the CPU. Only enable "
"occlusion culling if you actually plan to use it, and think whether your "
"scene can actually benefit from occlusion culling. Large, open scenes with "
"few or no objects blocking the view will generally not benefit much from "
"occlusion culling. Large open scenes generally benefit more from mesh LOD and "
"visibility ranges ([member GeometryInstance3D.visibility_range_begin] and "
"[member GeometryInstance3D.visibility_range_end]) compared to occlusion "
"culling.\n"
"[b]Note:[/b] Due to memory constraints, occlusion culling is not supported by "
"default in Web export templates. It can be enabled by compiling custom Web "
"export templates with [code]module_raycast_enabled=yes[/code]."
msgstr ""
"Если [code]true[/code], узлы [OccluderInstance3D] будут использоваться для "
"отсечения окклюзии в 3D для этого окна просмотра. Для корневого окна "
"просмотра [member ProjectSettings.rendering/occlusion_culling/"
"use_occlusion_culling] вместо этого должно быть установлено на [code]true[/"
"code].\n"
"[b]Примечание:[/b] Включение отсечения окклюзии имеет затраты на ЦП. "
"Включайте отсечение окклюзии только в том случае, если вы действительно "
"планируете его использовать, и подумайте, может ли ваша сцена действительно "
"выиграть от отсечения окклюзии. Большие открытые сцены с небольшим "
"количеством или без объектов, блокирующих вид, как правило, не получат "
"большой выгоды от отсечения окклюзии. Большие открытые сцены, как правило, "
"больше выигрывают от LOD сетки и диапазонов видимости ([member "
"GeometryInstance3D.visibility_range_begin] и [member "
"GeometryInstance3D.visibility_range_end]) по сравнению с отсечением "
"окклюзии.\n"
"[b]Примечание:[/b] Из-за ограничений памяти occlusion culling не "
"поддерживается по умолчанию в шаблонах веб-экспорта. Его можно включить, "
"скомпилировав пользовательские шаблоны веб-экспорта с "
"[code]module_raycast_enabled=yes[/code]."

msgid ""
"Enables temporal antialiasing for this viewport. TAA works by jittering the "
"camera and accumulating the images of the last rendered frames, motion vector "
"rendering is used to account for camera and object motion.\n"
"[b]Note:[/b] The implementation is not complete yet, some visual instances "
"such as particles and skinned meshes may show artifacts.\n"
"See also [member ProjectSettings.rendering/anti_aliasing/quality/use_taa] and "
"[method RenderingServer.viewport_set_use_taa]."
msgstr ""
"Включает временное сглаживание для этого окна просмотра. TAA работает путем "
"дрожания камеры и накопления изображений последних отрисованных кадров, "
"рендеринг вектора движения используется для учета движения камеры и объекта.\n"
"[b]Примечание:[/b] Реализация еще не завершена, некоторые визуальные "
"экземпляры, такие как частицы и сетки со скинами, могут показывать "
"артефакты.\n"
"См. также [member ProjectSettings.rendering/anti_aliasing/quality/use_taa] и "
"[method RenderingServer.viewport_set_use_taa]."

msgid ""
"If [code]true[/code], the viewport will use the primary XR interface to "
"render XR output. When applicable this can result in a stereoscopic image and "
"the resulting render being output to a headset."
msgstr ""
"Если [code]true[/code], область просмотра будет использовать основной "
"интерфейс XR для рендеринга вывода XR. Когда это применимо, это может "
"привести к стереоскопическому изображению и полученному рендеру, выводимому "
"на гарнитуру."

msgid ""
"The Variable Rate Shading (VRS) mode that is used for this viewport. Note, if "
"hardware does not support VRS this property is ignored."
msgstr ""
"Режим Variable Rate Shading (VRS), используемый для этого окна просмотра. "
"Обратите внимание, если оборудование не поддерживает VRS, это свойство "
"игнорируется."

msgid ""
"Texture to use when [member vrs_mode] is set to [constant "
"Viewport.VRS_TEXTURE].\n"
"The texture [i]must[/i] use a lossless compression format so that colors can "
"be matched precisely. The following VRS densities are mapped to various "
"colors, with brighter colors representing a lower level of shading "
"precision:\n"
"[codeblock lang=text]\n"
"- 1×1 = rgb(0, 0, 0)     - #000000\n"
"- 1×2 = rgb(0, 85, 0)    - #005500\n"
"- 2×1 = rgb(85, 0, 0)    - #550000\n"
"- 2×2 = rgb(85, 85, 0)   - #555500\n"
"- 2×4 = rgb(85, 170, 0)  - #55aa00\n"
"- 4×2 = rgb(170, 85, 0)  - #aa5500\n"
"- 4×4 = rgb(170, 170, 0) - #aaaa00\n"
"- 4×8 = rgb(170, 255, 0) - #aaff00 - Not supported on most hardware\n"
"- 8×4 = rgb(255, 170, 0) - #ffaa00 - Not supported on most hardware\n"
"- 8×8 = rgb(255, 255, 0) - #ffff00 - Not supported on most hardware\n"
"[/codeblock]"
msgstr ""
"Текстура, используемая, когда [member vrs_mode] установлен на [constant "
"Viewport.VRS_TEXTURE].\n"
"Текстура [i]должна[/i] использовать формат сжатия без потерь, чтобы цвета "
"можно было точно сопоставить. Следующие плотности VRS сопоставляются с "
"различными цветами, причем более яркие цвета представляют более низкий "
"уровень точности затенения:\n"
"[codeblock lang=text]\n"
"- 1×1 = rgb(0, 0, 0) - #000000\n"
"- 1×2 = rgb(0, 85, 0) - #005500\n"
"- 2×1 = rgb(85, 0, 0) - #550000\n"
"- 2×2 = rgb(85, 85, 0) - #555500\n"
"- 2×4 = rgb(85, 170, 0) - #55aa00\n"
"- 4×2 = rgb(170, 85, 0) - #aa5500\n"
"- 4×4 = rgb(170, 170, 0) - #aaaa00\n"
"- 4×8 = rgb(170, 255, 0) - #aaff00 - Не поддерживается на большинстве "
"оборудования\n"
"- 8×4 = rgb(255, 170, 0) - #ffaa00 - Не поддерживается на большинстве "
"оборудования\n"
"- 8×8 = rgb(255, 255, 0) - #ffff00 - Не поддерживается на большинстве "
"оборудования\n"
"[/codeblock]"

msgid ""
"Sets the update mode for Variable Rate Shading (VRS) for the viewport. VRS "
"requires the input texture to be converted to the format usable by the VRS "
"method supported by the hardware. The update mode defines how often this "
"happens. If the GPU does not support VRS, or VRS is not enabled, this "
"property is ignored."
msgstr ""
"Устанавливает режим обновления для Variable Rate Shading (VRS) для области "
"просмотра. VRS требует, чтобы входная текстура была преобразована в формат, "
"используемый методом VRS, поддерживаемым оборудованием. Режим обновления "
"определяет, как часто это происходит. Если графический процессор не "
"поддерживает VRS или VRS не включен, это свойство игнорируется."

msgid "The custom [World2D] which can be used as 2D environment source."
msgstr ""
"Пользовательский [World2D], который можно использовать в качестве источника "
"2D-среды."

msgid "The custom [World3D] which can be used as 3D environment source."
msgstr ""
"Пользовательский [World3D], который можно использовать в качестве источника "
"3D-среды."

msgid ""
"Emitted when a Control node grabs keyboard focus.\n"
"[b]Note:[/b] A Control node losing focus doesn't cause this signal to be "
"emitted."
msgstr ""
"Выдается, когда узел управления захватывает фокус клавиатуры.\n"
"[b]Примечание:[/b] Потеря фокуса узлом управления не приводит к выдаче этого "
"сигнала."

msgid ""
"Emitted when the size of the viewport is changed, whether by resizing of "
"window, or some other means."
msgstr ""
"Выдается при изменении размера области просмотра, будь то изменение размера "
"окна или каким-либо другим способом."

msgid "This quadrant will not be used."
msgstr "Этот квадрант не будет использоваться."

msgid "This quadrant will only be used by one shadow map."
msgstr "Этот квадрант будет использоваться только одной картой теней."

msgid "This quadrant will be split in 4 and used by up to 4 shadow maps."
msgstr "Этот квадрант будет разделен на 4 части и использован для 4 карт теней."

msgid "This quadrant will be split 16 ways and used by up to 16 shadow maps."
msgstr ""
"Этот квадрант будет разделен на 16 частей и будет использоваться для 16 карт "
"теней."

msgid "This quadrant will be split 64 ways and used by up to 64 shadow maps."
msgstr ""
"Этот квадрант будет разделен на 64 части и будет использоваться для 64 карт "
"теней."

msgid ""
"This quadrant will be split 256 ways and used by up to 256 shadow maps. "
"Unless the [member positional_shadow_atlas_size] is very high, the shadows in "
"this quadrant will be very low resolution."
msgstr ""
"Этот квадрант будет разделен на 256 частей и использован до 256 карт теней. "
"Если [member positional_shadow_atlas_size] не очень высок, тени в этом "
"квадранте будут иметь очень низкое разрешение."

msgid ""
"This quadrant will be split 1024 ways and used by up to 1024 shadow maps. "
"Unless the [member positional_shadow_atlas_size] is very high, the shadows in "
"this quadrant will be very low resolution."
msgstr ""
"Этот квадрант будет разделен на 1024 части и использован до 1024 карт теней. "
"Если [member positional_shadow_atlas_size] не очень высок, тени в этом "
"квадранте будут иметь очень низкое разрешение."

msgid ""
"Represents the size of the [enum PositionalShadowAtlasQuadrantSubdiv] enum."
msgstr ""
"Представляет размер перечисления [enum PositionalShadowAtlasQuadrantSubdiv]."

msgid ""
"Use bilinear scaling for the viewport's 3D buffer. The amount of scaling can "
"be set using [member scaling_3d_scale]. Values less than [code]1.0[/code] "
"will result in undersampling while values greater than [code]1.0[/code] will "
"result in supersampling. A value of [code]1.0[/code] disables scaling."
msgstr ""
"Использовать билинейное масштабирование для 3D-буфера области просмотра. "
"Величину масштабирования можно задать с помощью [member scaling_3d_scale]. "
"Значения меньше [code]1.0[/code] приведут к недостаточной выборке, а значения "
"больше [code]1.0[/code] приведут к избыточной выборке. Значение [code]1.0[/"
"code] отключает масштабирование."

msgid ""
"Use AMD FidelityFX Super Resolution 1.0 upscaling for the viewport's 3D "
"buffer. The amount of scaling can be set using [member scaling_3d_scale]. "
"Values less than [code]1.0[/code] will result in the viewport being upscaled "
"using FSR. Values greater than [code]1.0[/code] are not supported and "
"bilinear downsampling will be used instead. A value of [code]1.0[/code] "
"disables scaling."
msgstr ""
"Используйте масштабирование AMD FidelityFX Super Resolution 1.0 для 3D-буфера "
"области просмотра. Величину масштабирования можно задать с помощью [member "
"scaling_3d_scale]. Значения меньше [code]1.0[/code] приведут к "
"масштабированию области просмотра с помощью FSR. Значения больше [code]1.0[/"
"code] не поддерживаются, и вместо этого будет использоваться билинейная "
"понижающая дискретизация. Значение [code]1.0[/code] отключает масштабирование."

msgid ""
"Use the [url=https://developer.apple.com/documentation/metalfx/"
"mtlfxspatialscaler#overview]MetalFX spatial upscaler[/url] for the viewport's "
"3D buffer.\n"
"The amount of scaling can be set using [member scaling_3d_scale].\n"
"Values less than [code]1.0[/code] will result in the viewport being upscaled "
"using MetalFX. Values greater than [code]1.0[/code] are not supported and "
"bilinear downsampling will be used instead. A value of [code]1.0[/code] "
"disables scaling.\n"
"More information: [url=https://developer.apple.com/documentation/"
"metalfx]MetalFX[/url].\n"
"[b]Note:[/b] Only supported when the Metal rendering driver is in use, which "
"limits this scaling mode to macOS and iOS."
msgstr ""
"Используйте [url=https://developer.apple.com/documentation/metalfx/"
"mtlfxspatialscaler#overview]MetalFX spatial upscaler[/url] для 3D-буфера "
"области просмотра.\n"
"Величину масштабирования можно задать с помощью [member scaling_3d_scale].\n"
"Значения меньше [code]1.0[/code] приведут к масштабированию области просмотра "
"с помощью MetalFX. Значения больше [code]1.0[/code] не поддерживаются, и "
"вместо них будет использоваться билинейная понижающая дискретизация. Значение "
"[code]1.0[/code] отключает масштабирование.\n"
"Дополнительная информация: [url=https://developer.apple.com/documentation/"
"metalfx]MetalFX[/url].\n"
"[b]Примечание:[/b] Поддерживается только при использовании драйвера "
"рендеринга Metal, что ограничивает этот режим масштабирования macOS и iOS."

msgid ""
"Use the [url=https://developer.apple.com/documentation/metalfx/"
"mtlfxtemporalscaler#overview]MetalFX temporal upscaler[/url] for the "
"viewport's 3D buffer.\n"
"The amount of scaling can be set using [member scaling_3d_scale]. To "
"determine the minimum input scale, use the [method RenderingDevice.limit_get] "
"method with [constant "
"RenderingDevice.LIMIT_METALFX_TEMPORAL_SCALER_MIN_SCALE].\n"
"Values less than [code]1.0[/code] will result in the viewport being upscaled "
"using MetalFX. Values greater than [code]1.0[/code] are not supported and "
"bilinear downsampling will be used instead. A value of [code]1.0[/code] will "
"use MetalFX at native resolution as a TAA solution.\n"
"More information: [url=https://developer.apple.com/documentation/"
"metalfx]MetalFX[/url].\n"
"[b]Note:[/b] Only supported when the Metal rendering driver is in use, which "
"limits this scaling mode to macOS and iOS."
msgstr ""
"Используйте [url=https://developer.apple.com/documentation/metalfx/"
"mtlfxtemporalscaler#overview]MetalFX temporal upscaler[/url] для 3D-буфера "
"области просмотра.\n"
"Величину масштабирования можно задать с помощью [member scaling_3d_scale]. "
"Чтобы определить минимальный масштаб ввода, используйте метод [method "
"RenderingDevice.limit_get] с [constant "
"RenderingDevice.LIMIT_METALFX_TEMPORAL_SCALER_MIN_SCALE].\n"
"Значения меньше [code]1.0[/code] приведут к масштабированию области просмотра "
"с помощью MetalFX. Значения больше [code]1.0[/code] не поддерживаются, и "
"вместо этого будет использоваться билинейная понижающая дискретизация. "
"Значение [code]1.0[/code] будет использовать MetalFX в собственном разрешении "
"в качестве решения TAA.\n"
"Дополнительная информация: [url=https://developer.apple.com/documentation/"
"metalfx]MetalFX[/url].\n"
"[b]Примечание:[/b] Поддерживается только при использовании драйвера "
"рендеринга Metal, что ограничивает этот режим масштабирования macOS и iOS."

msgid "Represents the size of the [enum Scaling3DMode] enum."
msgstr "Представляет размер перечисления [enum Scaling3DMode]."

msgid ""
"Multisample antialiasing mode disabled. This is the default value, and is "
"also the fastest setting."
msgstr ""
"Режим сглаживания Multisample отключен. Это значение по умолчанию, а также "
"самая быстрая настройка."

msgid ""
"Use 2× Multisample Antialiasing. This has a moderate performance cost. It "
"helps reduce aliasing noticeably, but 4× MSAA still looks substantially "
"better."
msgstr ""
"Используйте 2× Multisample Antialiasing. Это имеет умеренные затраты "
"производительности. Это помогает заметно уменьшить алиасинг, но 4× MSAA все "
"равно выглядит значительно лучше."

msgid ""
"Use 4× Multisample Antialiasing. This has a significant performance cost, and "
"is generally a good compromise between performance and quality."
msgstr ""
"Использовать 4× Multisample Antialiasing. Это значительно снижает "
"производительность и, как правило, является хорошим компромиссом между "
"производительностью и качеством."

msgid ""
"Use 8× Multisample Antialiasing. This has a very high performance cost. The "
"difference between 4× and 8× MSAA may not always be visible in real gameplay "
"conditions. Likely unsupported on low-end and older hardware."
msgstr ""
"Используйте 8× Multisample Antialiasing. Это очень дорого обходится "
"производительности. Разница между 4× и 8× MSAA не всегда может быть видна в "
"реальных игровых условиях. Вероятно, не поддерживается на слабом и старом "
"оборудовании."

msgid "Represents the size of the [enum MSAA] enum."
msgstr "Представляет размер перечисления [enum MSAA]."

msgid "Represents the size of the [enum AnisotropicFiltering] enum."
msgstr "Представляет размер перечисления [enum AnisotropicFiltering]."

msgid "Represents the size of the [enum ScreenSpaceAA] enum."
msgstr "Представляет размер перечисления [enum ScreenSpaceAA]."

msgid "Amount of objects in frame."
msgstr "Количество объектов в кадре."

msgid "Amount of vertices in frame."
msgstr "Количество вершин в кадре."

msgid "Amount of draw calls in frame."
msgstr "Количество вызовов отрисовки в кадре."

msgid "Represents the size of the [enum RenderInfo] enum."
msgstr "Представляет размер перечисления [enum RenderInfo]."

msgid "Represents the size of the [enum RenderInfoType] enum."
msgstr "Представляет размер перечисления [enum RenderInfoType]."

msgid "Objects are displayed normally."
msgstr "Объекты отображаются нормально."

msgid ""
"Objects are displayed without textures and only with lighting information.\n"
"[b]Note:[/b] When using this debug draw mode, custom shaders are ignored "
"since all materials in the scene temporarily use a debug material. This means "
"the result from custom shader functions (such as vertex displacement) won't "
"be visible anymore when using this debug draw mode."
msgstr ""
"Объекты отображаются без текстур и только с информацией об освещении.\n"
"[b]Примечание:[/b] При использовании этого режима отладки рисования, "
"пользовательские шейдеры игнорируются, поскольку все материалы в сцене "
"временно используют отладочный материал. Это означает, что результат функций "
"пользовательских шейдеров (например, смещение вершин) больше не будет виден "
"при использовании этого режима отладки рисования."

msgid ""
"Objects are displayed semi-transparent with additive blending so you can see "
"where they are drawing over top of one another. A higher overdraw means you "
"are wasting performance on drawing pixels that are being hidden behind "
"others.\n"
"[b]Note:[/b] When using this debug draw mode, custom shaders are ignored "
"since all materials in the scene temporarily use a debug material. This means "
"the result from custom shader functions (such as vertex displacement) won't "
"be visible anymore when using this debug draw mode."
msgstr ""
"Объекты отображаются полупрозрачными с аддитивным смешиванием, так что вы "
"можете видеть, где они рисуются друг над другом. Более высокая перерисовка "
"означает, что вы тратите производительность на рисование пикселей, которые "
"скрыты за другими.\n"
"[b]Примечание:[/b] При использовании этого режима отладки отрисовки, "
"пользовательские шейдеры игнорируются, поскольку все материалы в сцене "
"временно используют отладочный материал. Это означает, что результат функций "
"пользовательских шейдеров (например, смещение вершин) больше не будет виден "
"при использовании этого режима отладки отрисовки."

msgid ""
"Objects are displayed as wireframe models.\n"
"[b]Note:[/b] [method RenderingServer.set_debug_generate_wireframes] must be "
"called before loading any meshes for wireframes to be visible when using the "
"Compatibility renderer."
msgstr ""
"Объекты отображаются как каркасные модели.\n"
"[b]Примечание:[/b] [method RenderingServer.set_debug_generate_wireframes] "
"необходимо вызывать перед загрузкой любых сеток, чтобы каркасы были видны при "
"использовании рендерера совместимости."

msgid ""
"Objects are displayed without lighting information and their textures "
"replaced by normal mapping.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Объекты отображаются без информации об освещении, а их текстуры заменяются "
"обычным отображением.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the shadow atlas that stores shadows from [DirectionalLight3D]s in the "
"upper left quadrant of the [Viewport]."
msgstr ""
"Рисует атлас теней, в котором хранятся тени от [DirectionalLight3D] в верхнем "
"левом квадранте [Viewport]."

msgid ""
"Draws the scene luminance buffer (if available) in the upper left quadrant of "
"the [Viewport].\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Рисует буфер яркости сцены (если доступен) в верхнем левом квадранте "
"[Viewport].\n"
"[b]Примечание:[/b] Поддерживается только при использовании методов рендеринга "
"Forward+ или Mobile."

msgid ""
"Draws the screen-space ambient occlusion texture instead of the scene so that "
"you can clearly see how it is affecting objects. In order for this display "
"mode to work, you must have [member Environment.ssao_enabled] set in your "
"[WorldEnvironment].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует текстуру экранного пространства Ambient Occlusion вместо сцены, чтобы "
"вы могли четко видеть, как она влияет на объекты. Чтобы этот режим "
"отображения работал, необходимо установить [member Environment.ssao_enabled] "
"в вашем [WorldEnvironment].\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the screen-space indirect lighting texture instead of the scene so that "
"you can clearly see how it is affecting objects. In order for this display "
"mode to work, you must have [member Environment.ssil_enabled] set in your "
"[WorldEnvironment].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует текстуру непрямого освещения экранного пространства вместо сцены, "
"чтобы вы могли четко видеть, как она влияет на объекты. Чтобы этот режим "
"отображения работал, необходимо установить [member Environment.ssil_enabled] "
"в [WorldEnvironment].\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the decal atlas used by [Decal]s and light projector textures in the "
"upper left quadrant of the [Viewport].\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Рисует атлас декалей, используемый [Decal]-ями и текстурами проектора света в "
"верхнем левом квадранте [Viewport].\n"
"[b]Примечание:[/b] Поддерживается только при использовании методов рендеринга "
"Forward+ или Mobile."

msgid ""
"Draws the cascades used to render signed distance field global illumination "
"(SDFGI).\n"
"Does nothing if the current environment's [member Environment.sdfgi_enabled] "
"is [code]false[/code].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует каскады, используемые для визуализации глобального освещения поля "
"расстояний со знаком (SDFGI).\n"
"Ничего не делает, если [member Environment.sdfgi_enabled] текущей среды имеет "
"значение [code]false[/code].\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода "
"визуализации Forward+."

msgid ""
"Draws the probes used for signed distance field global illumination (SDFGI).\n"
"Does nothing if the current environment's [member Environment.sdfgi_enabled] "
"is [code]false[/code].\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует зонды, используемые для глобального освещения поля расстояний со "
"знаком (SDFGI).\n"
"Ничего не делает, если [member Environment.sdfgi_enabled] текущей среды имеет "
"значение [code]false[/code].\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the buffer used for global illumination from [VoxelGI] or SDFGI. "
"Requires [VoxelGI] (at least one visible baked VoxelGI node) or SDFGI "
"([member Environment.sdfgi_enabled]) to be enabled to have a visible effect.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует буфер, используемый для глобального освещения из [VoxelGI] или SDFGI. "
"Требует включения [VoxelGI] (по крайней мере одного видимого запеченного узла "
"VoxelGI) или SDFGI ([member Environment.sdfgi_enabled]) для видимого "
"эффекта.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws all of the objects at their highest polycount regardless of their "
"distance from the camera. No low level of detail (LOD) is applied."
msgstr ""
"Рисует все объекты с наивысшим полигоном независимо от их расстояния от "
"камеры. Низкий уровень детализации (LOD) не применяется."

msgid ""
"Draws the cluster used by [OmniLight3D] nodes to optimize light rendering.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует кластер, используемый узлами [OmniLight3D] для оптимизации рендеринга "
"света.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the cluster used by [SpotLight3D] nodes to optimize light rendering.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует кластер, используемый узлами [SpotLight3D] для оптимизации рендеринга "
"света.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the cluster used by [Decal] nodes to optimize decal rendering.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует кластер, используемый узлами [Decal] для оптимизации рендеринга "
"декалей.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the cluster used by [ReflectionProbe] nodes to optimize reflection "
"probes.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует кластер, используемый узлами [ReflectionProbe] для оптимизации зондов "
"отражения.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the buffer used for occlusion culling.\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Рисует буфер, используемый для отбраковки окклюзии (occlusion culling).\n"
"[b]Примечание:[/b] Поддерживается только при использовании методов рендеринга "
"Forward+ или Mobile."

msgid ""
"Draws vector lines over the viewport to indicate the movement of pixels "
"between frames.\n"
"[b]Note:[/b] Only supported when using the Forward+ rendering method."
msgstr ""
"Рисует векторные линии на области просмотра, чтобы обозначить движение "
"пикселей между кадрами.\n"
"[b]Примечание:[/b] Поддерживается только при использовании метода рендеринга "
"Forward+."

msgid ""
"Draws the internal resolution buffer of the scene in linear colorspace before "
"tonemapping or post-processing is applied.\n"
"[b]Note:[/b] Only supported when using the Forward+ or Mobile rendering "
"methods."
msgstr ""
"Рисует внутренний буфер разрешения сцены в линейном цветовом пространстве "
"перед применением тональной компрессии или постобработки.\n"
"[b]Примечание:[/b] Поддерживается только при использовании методов рендеринга "
"Forward+ или Mobile."

msgid "Represents the size of the [enum DefaultCanvasItemTextureFilter] enum."
msgstr "Представляет размер перечисления [enum DefaultCanvasItemTextureFilter]."

msgid "Represents the size of the [enum DefaultCanvasItemTextureRepeat] enum."
msgstr "Представляет размер перечисления [enum DefaultCanvasItemTextureRepeat]."

msgid "The signed distance field only covers the viewport's own rectangle."
msgstr ""
"Поле расстояния со знаком охватывает только собственный прямоугольник области "
"просмотра."

msgid ""
"The signed distance field is expanded to cover 20% of the viewport's size "
"around the borders."
msgstr ""
"Поле расстояния со знаком расширяется, охватывая 20% размера области "
"просмотра вокруг границ."

msgid ""
"The signed distance field is expanded to cover 50% of the viewport's size "
"around the borders."
msgstr ""
"Поле расстояния со знаком расширяется, охватывая 50% размера области "
"просмотра вокруг границ."

msgid ""
"The signed distance field is expanded to cover 100% (double) of the "
"viewport's size around the borders."
msgstr ""
"Поле расстояния со знаком расширяется, охватывая 100% (в два раза) размера "
"области просмотра вокруг границ."

msgid "Represents the size of the [enum SDFOversize] enum."
msgstr "Представляет размер перечисления [enum SDFOversize]."

msgid "The signed distance field is rendered at full resolution."
msgstr "Поле знакового расстояния отображается в полном разрешении."

msgid ""
"The signed distance field is rendered at half the resolution of this viewport."
msgstr ""
"Поле знакового расстояния отображается с разрешением, равным половине "
"разрешения этой области просмотра."

msgid ""
"The signed distance field is rendered at a quarter the resolution of this "
"viewport."
msgstr ""
"Поле знакового расстояния отображается с разрешением, равным четверти "
"разрешения этой области просмотра."

msgid "Represents the size of the [enum SDFScale] enum."
msgstr "Представляет размер перечисления [enum SDFScale]."

msgid "Variable Rate Shading is disabled."
msgstr "Функция затенения с переменной скоростью (VRS) отключена."

msgid ""
"Variable Rate Shading uses a texture. Note, for stereoscopic use a texture "
"atlas with a texture for each view."
msgstr ""
"Variable Rate Shading использует текстуру. Обратите внимание, для "
"стереоскопического используйте атлас текстур с текстурой для каждого вида."

msgid ""
"Variable Rate Shading's texture is supplied by the primary [XRInterface]."
msgstr "Текстура Variable Rate Shading предоставляется первичным [XRInterface]."

msgid "Represents the size of the [enum VRSMode] enum."
msgstr "Представляет размер перечисления [enum VRSMode]."

msgid "Represents the size of the [enum VRSUpdateMode] enum."
msgstr "Представляет размер перечисления [enum VRSUpdateMode]."

msgid "Provides the content of a [Viewport] as a dynamic texture."
msgstr "Предоставляет содержимое [Viewport] в виде динамической текстуры."

msgid ""
"A [ViewportTexture] provides the content of a [Viewport] as a dynamic "
"[Texture2D]. This can be used to combine the rendering of [Control], [Node2D] "
"and [Node3D] nodes. For example, you can use this texture to display a 3D "
"scene inside a [TextureRect], or a 2D overlay in a [Sprite3D].\n"
"To get a [ViewportTexture] in code, use the [method Viewport.get_texture] "
"method on the target viewport.\n"
"[b]Note:[/b] A [ViewportTexture] is always local to its scene (see [member "
"Resource.resource_local_to_scene]). If the scene root is not ready, it may "
"return incorrect data (see [signal Node.ready]).\n"
"[b]Note:[/b] Instantiating scenes containing a high-resolution "
"[ViewportTexture] may cause noticeable stutter.\n"
"[b]Note:[/b] When using a [Viewport] with [member Viewport.use_hdr_2d] set to "
"[code]true[/code], the returned texture will be an HDR image encoded in "
"linear space. This may look darker than normal when displayed directly on "
"screen. To convert to gamma space, you can do the following:\n"
"[codeblock]\n"
"img.convert(Image.FORMAT_RGBA8)\n"
"imb.linear_to_srgb()\n"
"[/codeblock]\n"
"[b]Note:[/b] Some nodes such as [Decal], [Light3D], and [PointLight2D] do not "
"support using [ViewportTexture] directly. To use texture data from a "
"[ViewportTexture] in these nodes, you need to create an [ImageTexture] by "
"calling [method Texture2D.get_image] on the [ViewportTexture] and passing the "
"result to [method ImageTexture.create_from_image]. This conversion is a slow "
"operation, so it should not be performed every frame."
msgstr ""
"[ViewportTexture] предоставляет содержимое [Viewport] как динамическую "
"[Texture2D]. Это можно использовать для объединения рендеринга узлов "
"[Control], [Node2D] и [Node3D]. Например, вы можете использовать эту текстуру "
"для отображения 3D-сцены внутри [TextureRect] или 2D-наложения в [Sprite3D].\n"
"Чтобы получить [ViewportTexture] в коде, используйте метод [method "
"Viewport.get_texture] на целевом окне просмотра.\n"
"[b]Примечание:[/b] [ViewportTexture] всегда локальна для своей сцены (см. "
"[member Resource.resource_local_to_scene]). Если корень сцены не готов, он "
"может вернуть неверные данные (см. [signal Node.ready]).\n"
"[b]Примечание:[/b] Создание сцен, содержащих [ViewportTexture] высокого "
"разрешения, может вызвать заметное подтормаживание.\n"
"[b]Примечание:[/b] При использовании [Viewport] с [member "
"Viewport.use_hdr_2d], установленным на [code]true[/code], возвращаемая "
"текстура будет HDR-изображением, закодированным в линейном пространстве. Это "
"может выглядеть темнее обычного при отображении непосредственно на экране. "
"Чтобы преобразовать в гамма-пространство, вы можете сделать следующее:\n"
"[codeblock]\n"
"img.convert(Image.FORMAT_RGBA8)\n"
"imb.linear_to_srgb()\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Некоторые узлы, такие как [Decal], [Light3D] и "
"[PointLight2D], не поддерживают использование [ViewportTexture] напрямую. "
"Чтобы использовать данные текстуры из [ViewportTexture] в этих узлах, вам "
"необходимо создать [ImageTexture], вызвав [method Texture2D.get_image] для "
"[ViewportTexture] и передав результат в [method "
"ImageTexture.create_from_image]. Это преобразование — медленная операция, "
"поэтому ее не следует выполнять в каждом кадре."

msgid ""
"The path to the [Viewport] node to display. This is relative to the local "
"scene root (see [method Resource.get_local_scene]), [b]not[/b] to the nodes "
"that use this texture.\n"
"[b]Note:[/b] In the editor, this path is automatically updated when the "
"target viewport or one of its ancestors is renamed or moved. At runtime, this "
"path may not automatically update if the scene root cannot be found."
msgstr ""
"Путь к узлу [Viewport] для отображения. Это относительно локального корня "
"сцены (см. [method Resource.get_local_scene]), [b]не[/b] к узлам, которые "
"используют эту текстуру.\n"
"[b]Примечание:[/b] В редакторе этот путь автоматически обновляется, когда "
"целевой viewport или один из его предков переименовывается или перемещается. "
"Во время выполнения этот путь может не обновляться автоматически, если корень "
"сцены не может быть найден."

msgid ""
"A rectangular region of 2D space that, when visible on screen, enables a "
"target node."
msgstr ""
"Прямоугольная область двумерного пространства, которая, будучи видимой на "
"экране, активирует целевой узел."

msgid ""
"[VisibleOnScreenEnabler2D] contains a rectangular region of 2D space and a "
"target node. The target node will be automatically enabled (via its [member "
"Node.process_mode] property) when any part of this region becomes visible on "
"the screen, and automatically disabled otherwise. This can for example be "
"used to activate enemies only when the player approaches them.\n"
"See [VisibleOnScreenNotifier2D] if you only want to be notified when the "
"region is visible on screen.\n"
"[b]Note:[/b] [VisibleOnScreenEnabler2D] uses the render culling code to "
"determine whether it's visible on screen, so it won't function unless [member "
"CanvasItem.visible] is set to [code]true[/code]."
msgstr ""
"[VisibleOnScreenEnabler2D] содержит прямоугольную область 2D-пространства и "
"целевой узел. Целевой узел будет автоматически включен (через свойство "
"[member Node.process_mode]), когда любая часть этой области станет видимой на "
"экране, и автоматически отключен в противном случае. Это можно использовать, "
"например, для активации врагов только при приближении к ним игрока.\n"
"См. [VisibleOnScreenNotifier2D], если вы хотите получать уведомления только "
"тогда, когда область видна на экране.\n"
"[b]Примечание:[/b] [VisibleOnScreenEnabler2D] использует код отбраковки "
"рендеринга, чтобы определить, видна ли она на экране, поэтому он не будет "
"работать, если [member CanvasItem.visible] не установлен в [code]true[/code]."

msgid ""
"Determines how the target node is enabled. Corresponds to [enum "
"Node.ProcessMode]. When the node is disabled, it always uses [constant "
"Node.PROCESS_MODE_DISABLED]."
msgstr ""
"Определяет, как включается целевой узел. Соответствует [enum "
"Node.ProcessMode]. Когда узел отключен, он всегда использует [constant "
"Node.PROCESS_MODE_DISABLED]."

msgid ""
"The path to the target node, relative to the [VisibleOnScreenEnabler2D]. The "
"target node is cached; it's only assigned when setting this property (if the "
"[VisibleOnScreenEnabler2D] is inside the scene tree) and every time the "
"[VisibleOnScreenEnabler2D] enters the scene tree. If the path is empty, no "
"node will be affected. If the path is invalid, an error is also generated."
msgstr ""
"Путь к целевому узлу относительно [VisibleOnScreenEnabler2D]. Целевой узел "
"кэшируется; он назначается только при установке этого свойства (если "
"[VisibleOnScreenEnabler2D] находится внутри дерева сцены) и каждый раз, когда "
"[VisibleOnScreenEnabler2D] входит в дерево сцены. Если путь пустой, ни один "
"узел не будет затронут. Если путь недействителен, генерируется ошибка."

msgid "Corresponds to [constant Node.PROCESS_MODE_INHERIT]."
msgstr "Соответствует [constant Node.PROCESS_MODE_INHERIT]."

msgid "Corresponds to [constant Node.PROCESS_MODE_ALWAYS]."
msgstr "Соответствует [constant Node.PROCESS_MODE_ALWAYS]."

msgid "Corresponds to [constant Node.PROCESS_MODE_WHEN_PAUSED]."
msgstr "Соответствует [constant Node.PROCESS_MODE_WHEN_PAUSED]."

msgid ""
"A box-shaped region of 3D space that, when visible on screen, enables a "
"target node."
msgstr ""
"Область трехмерного пространства в форме коробки, которая, будучи видимой на "
"экране, активирует целевой узел."

msgid ""
"[VisibleOnScreenEnabler3D] contains a box-shaped region of 3D space and a "
"target node. The target node will be automatically enabled (via its [member "
"Node.process_mode] property) when any part of this region becomes visible on "
"the screen, and automatically disabled otherwise. This can for example be "
"used to activate enemies only when the player approaches them.\n"
"See [VisibleOnScreenNotifier3D] if you only want to be notified when the "
"region is visible on screen.\n"
"[b]Note:[/b] [VisibleOnScreenEnabler3D] uses an approximate heuristic that "
"doesn't take walls and other occlusion into account, unless occlusion culling "
"is used. It also won't function unless [member Node3D.visible] is set to "
"[code]true[/code]."
msgstr ""
"[VisibleOnScreenEnabler3D] содержит область в форме коробки трехмерного "
"пространства и целевой узел. Целевой узел будет автоматически включен (через "
"свойство [member Node.process_mode]), когда любая часть этой области станет "
"видимой на экране, и автоматически отключен в противном случае. Это можно "
"использовать, например, для активации врагов только при приближении к ним "
"игрока.\n"
"См. [VisibleOnScreenNotifier3D], если вы хотите получать уведомления только "
"тогда, когда область видна на экране.\n"
"[b]Примечание:[/b] [VisibleOnScreenEnabler3D] использует приблизительную "
"эвристику, которая не учитывает стены и другие преграды, если только не "
"используется отбраковка преград. Он также не будет работать, если [member "
"Node3D.visible] не установлен в [code]true[/code]."

msgid ""
"The path to the target node, relative to the [VisibleOnScreenEnabler3D]. The "
"target node is cached; it's only assigned when setting this property (if the "
"[VisibleOnScreenEnabler3D] is inside the scene tree) and every time the "
"[VisibleOnScreenEnabler3D] enters the scene tree. If the path is empty, no "
"node will be affected. If the path is invalid, an error is also generated."
msgstr ""
"Путь к целевому узлу относительно [VisibleOnScreenEnabler3D]. Целевой узел "
"кэшируется; он назначается только при установке этого свойства (если "
"[VisibleOnScreenEnabler3D] находится внутри дерева сцены) и каждый раз, когда "
"[VisibleOnScreenEnabler3D] входит в дерево сцены. Если путь пустой, ни один "
"узел не будет затронут. Если путь недействителен, генерируется ошибка."

msgid ""
"A rectangular region of 2D space that detects whether it is visible on screen."
msgstr ""
"Прямоугольная область двумерного пространства, которая определяет, видна ли "
"она на экране."

msgid ""
"[VisibleOnScreenNotifier2D] represents a rectangular region of 2D space. When "
"any part of this region becomes visible on screen or in a viewport, it will "
"emit a [signal screen_entered] signal, and likewise it will emit a [signal "
"screen_exited] signal when no part of it remains visible.\n"
"If you want a node to be enabled automatically when this region is visible on "
"screen, use [VisibleOnScreenEnabler2D].\n"
"[b]Note:[/b] [VisibleOnScreenNotifier2D] uses the render culling code to "
"determine whether it's visible on screen, so it won't function unless [member "
"CanvasItem.visible] is set to [code]true[/code]."
msgstr ""
"[VisibleOnScreenNotifier2D] представляет собой прямоугольную область "
"двумерного пространства. Когда любая часть этой области становится видимой на "
"экране или в области просмотра, она выдаст сигнал [signal screen_entered], и "
"аналогично она выдаст сигнал [signal screen_exited], когда никакая ее часть "
"не останется видимой.\n"
"Если вы хотите, чтобы узел включался автоматически, когда эта область видна "
"на экране, используйте [VisibleOnScreenEnabler2D].\n"
"[b]Примечание:[/b] [VisibleOnScreenNotifier2D] использует код отбраковки "
"рендеринга, чтобы определить, видна ли она на экране, поэтому она не будет "
"работать, если [member CanvasItem.visible] не установлен в [code]true[/code]."

msgid ""
"If [code]true[/code], the bounding rectangle is on the screen.\n"
"[b]Note:[/b] It takes one frame for the [VisibleOnScreenNotifier2D]'s "
"visibility to be determined once added to the scene tree, so this method will "
"always return [code]false[/code] right after it is instantiated, before the "
"draw pass."
msgstr ""
"Если [code]true[/code], ограничивающий прямоугольник находится на экране.\n"
"[b]Примечание:[/b] Для определения видимости [VisibleOnScreenNotifier2D] "
"после добавления в дерево сцены требуется один кадр, поэтому этот метод "
"всегда будет возвращать [code]false[/code] сразу после его создания, перед "
"проходом отрисовки."

msgid "The VisibleOnScreenNotifier2D's bounding rectangle."
msgstr "Ограничивающий прямоугольник VisibleOnScreenNotifier2D."

msgid ""
"If [code]true[/code], shows the rectangle area of [member rect] in the editor "
"with a translucent magenta fill. Unlike changing the visibility of the "
"VisibleOnScreenNotifier2D, this does not affect the screen culling detection."
msgstr ""
"Если [code]true[/code], показывает область прямоугольника [member rect] в "
"редакторе с полупрозрачной пурпурной заливкой. В отличие от изменения "
"видимости VisibleOnScreenNotifier2D, это не влияет на обнаружение отбраковки "
"экрана."

msgid "Emitted when the VisibleOnScreenNotifier2D enters the screen."
msgstr "Вызывается, когда VisibleOnScreenNotifier2D появляется на экране."

msgid "Emitted when the VisibleOnScreenNotifier2D exits the screen."
msgstr "Вызывается, когда VisibleOnScreenNotifier2D покидает экран."

msgid ""
"A box-shaped region of 3D space that detects whether it is visible on screen."
msgstr ""
"Область трехмерного пространства в форме прямоугольника, которая определяет, "
"видна ли она на экране."

msgid ""
"[VisibleOnScreenNotifier3D] represents a box-shaped region of 3D space. When "
"any part of this region becomes visible on screen or in a [Camera3D]'s view, "
"it will emit a [signal screen_entered] signal, and likewise it will emit a "
"[signal screen_exited] signal when no part of it remains visible.\n"
"If you want a node to be enabled automatically when this region is visible on "
"screen, use [VisibleOnScreenEnabler3D].\n"
"[b]Note:[/b] [VisibleOnScreenNotifier3D] uses an approximate heuristic that "
"doesn't take walls and other occlusion into account, unless occlusion culling "
"is used. It also won't function unless [member Node3D.visible] is set to "
"[code]true[/code]."
msgstr ""
"[VisibleOnScreenNotifier3D] представляет область в форме коробки в трехмерном "
"пространстве. Когда любая часть этой области становится видимой на экране или "
"в поле зрения [Camera3D], она выдаст сигнал [signal screen_entered], и "
"аналогично она выдаст сигнал [signal screen_exited], когда никакая ее часть "
"не остается видимой.\n"
"Если вы хотите, чтобы узел включался автоматически, когда эта область видна "
"на экране, используйте [VisibleOnScreenEnabler3D].\n"
"[b]Примечание:[/b] [VisibleOnScreenNotifier3D] использует приблизительную "
"эвристику, которая не учитывает стены и другие преграды, если только не "
"используется отбраковка преград. Она также не будет работать, если [member "
"Node3D.visible] не установлен в [code]true[/code]."

msgid ""
"Returns [code]true[/code] if the bounding box is on the screen.\n"
"[b]Note:[/b] It takes one frame for the [VisibleOnScreenNotifier3D]'s "
"visibility to be assessed once added to the scene tree, so this method will "
"always return [code]false[/code] right after it is instantiated."
msgstr ""
"Возвращает [code]true[/code], если ограничивающий прямоугольник находится на "
"экране.\n"
"[b]Примечание:[/b] Для оценки видимости [VisibleOnScreenNotifier3D] после "
"добавления в дерево сцены требуется один кадр, поэтому этот метод всегда "
"будет возвращать [code]false[/code] сразу после его создания."

msgid "The [VisibleOnScreenNotifier3D]'s bounding box."
msgstr "Ограничивающий прямоугольник [VisibleOnScreenNotifier3D]."

msgid "Emitted when the [VisibleOnScreenNotifier3D] enters the screen."
msgstr "Вызывается, когда [VisibleOnScreenNotifier3D] появляется на экране."

msgid "Emitted when the [VisibleOnScreenNotifier3D] exits the screen."
msgstr "Вызывается, когда [VisibleOnScreenNotifier3D] покидает экран."

msgid "Parent of all visual 3D nodes."
msgstr "Родительский элемент всех визуальных 3D-узлов."

msgid ""
"The [VisualInstance3D] is used to connect a resource to a visual "
"representation. All visual 3D nodes inherit from the [VisualInstance3D]. In "
"general, you should not access the [VisualInstance3D] properties directly as "
"they are accessed and managed by the nodes that inherit from "
"[VisualInstance3D]. [VisualInstance3D] is the node representation of the "
"[RenderingServer] instance."
msgstr ""
"[VisualInstance3D] используется для подключения ресурса к визуальному "
"представлению. Все визуальные 3D-узлы наследуются от [VisualInstance3D]. В "
"общем случае не следует обращаться к свойствам [VisualInstance3D] напрямую, "
"поскольку к ним обращаются и управляют узлы, наследующие от "
"[VisualInstance3D]. [VisualInstance3D] — это представление узла экземпляра "
"[RenderingServer]."

msgid ""
"Returns the [AABB] (also known as the bounding box) for this "
"[VisualInstance3D]."
msgstr ""
"Возвращает [AABB] (также известный как ограничивающий прямоугольник) для "
"этого [VisualInstance3D]."

msgid ""
"Returns the RID of the resource associated with this [VisualInstance3D]. For "
"example, if the Node is a [MeshInstance3D], this will return the RID of the "
"associated [Mesh]."
msgstr ""
"Возвращает RID ресурса, связанного с этим [VisualInstance3D]. Например, если "
"Node — это [MeshInstance3D], это вернет RID связанного [Mesh]."

msgid ""
"Returns the RID of this instance. This RID is the same as the RID returned by "
"[method RenderingServer.instance_create]. This RID is needed if you want to "
"call [RenderingServer] functions directly on this [VisualInstance3D]."
msgstr ""
"Возвращает RID этого экземпляра. Этот RID совпадает с RID, возвращаемым "
"[method RenderingServer.instance_create]. Этот RID необходим, если вы хотите "
"вызывать функции [RenderingServer] непосредственно на этом [VisualInstance3D]."

msgid ""
"Returns whether or not the specified layer of the [member layers] is enabled, "
"given a [param layer_number] between 1 and 20."
msgstr ""
"Возвращает, включен ли указанный слой из [member layers], учитывая [param "
"layer_number] от 1 до 20."

msgid ""
"Sets the resource that is instantiated by this [VisualInstance3D], which "
"changes how the engine handles the [VisualInstance3D] under the hood. "
"Equivalent to [method RenderingServer.instance_set_base]."
msgstr ""
"Устанавливает ресурс, который инстанцируется этим [VisualInstance3D], что "
"изменяет то, как движок обрабатывает [VisualInstance3D] под капотом. "
"Эквивалентно [method RenderingServer.instance_set_base]."

msgid ""
"Based on [param value], enables or disables the specified layer in the "
"[member layers], given a [param layer_number] between 1 and 20."
msgstr ""
"На основе [param value] включает или отключает указанный слой в [member "
"layers] при заданном [param layer_number] от 1 до 20."

msgid ""
"The render layer(s) this [VisualInstance3D] is drawn on.\n"
"This object will only be visible for [Camera3D]s whose cull mask includes any "
"of the render layers this [VisualInstance3D] is set to.\n"
"For [Light3D]s, this can be used to control which [VisualInstance3D]s are "
"affected by a specific light. For [GPUParticles3D], this can be used to "
"control which particles are effected by a specific attractor. For [Decal]s, "
"this can be used to control which [VisualInstance3D]s are affected by a "
"specific decal.\n"
"To adjust [member layers] more easily using a script, use [method "
"get_layer_mask_value] and [method set_layer_mask_value].\n"
"[b]Note:[/b] [VoxelGI], SDFGI and [LightmapGI] will always take all layers "
"into account to determine what contributes to global illumination. If this is "
"an issue, set [member GeometryInstance3D.gi_mode] to [constant "
"GeometryInstance3D.GI_MODE_DISABLED] for meshes and [member "
"Light3D.light_bake_mode] to [constant Light3D.BAKE_DISABLED] for lights to "
"exclude them from global illumination."
msgstr ""
"Слои рендеринга, на которых нарисован этот [VisualInstance3D].\n"
"Этот объект будет виден только для [Camera3D], чья маска отбраковки включает "
"любой из слоев рендеринга, на который установлен этот [VisualInstance3D].\n"
"Для [Light3D] это можно использовать для управления тем, на какие "
"[VisualInstance3D] влияет определенный свет. Для [GPUParticles3D] это можно "
"использовать для управления тем, на какие частицы влияет определенный "
"аттрактор. Для [Decal] это можно использовать для управления тем, на какие "
"[VisualInstance3D] влияет определенный декаль.\n"
"Чтобы упростить настройку [member layers] с помощью скрипта, используйте "
"[method get_layer_mask_value] и [method set_layer_mask_value].\n"
"[b]Примечание:[/b] [VoxelGI], SDFGI и [LightmapGI] всегда будут учитывать все "
"слои, чтобы определить, что влияет на глобальное освещение. Если это "
"проблема, установите [member GeometryInstance3D.gi_mode] на [constant "
"GeometryInstance3D.GI_MODE_DISABLED] для сеток и [member "
"Light3D.light_bake_mode] на [constant Light3D.BAKE_DISABLED] для источников "
"света, чтобы исключить их из глобального освещения."

msgid ""
"The amount by which the depth of this [VisualInstance3D] will be adjusted "
"when sorting by depth. Uses the same units as the engine (which are typically "
"meters). Adjusting it to a higher value will make the [VisualInstance3D] "
"reliably draw on top of other [VisualInstance3D]s that are otherwise "
"positioned at the same spot. To ensure it always draws on top of other "
"objects around it (not positioned at the same spot), set the value to be "
"greater than the distance between this [VisualInstance3D] and the other "
"nearby [VisualInstance3D]s."
msgstr ""
"Величина, на которую будет скорректирована глубина этого [VisualInstance3D] "
"при сортировке по глубине. Использует те же единицы, что и движок (обычно это "
"метры). Если настроить его на большее значение, [VisualInstance3D] будет "
"надежно рисовать поверх других [VisualInstance3D], которые в противном случае "
"расположены в том же месте. Чтобы гарантировать, что он всегда рисует поверх "
"других объектов вокруг него (не расположенных в том же месте), установите "
"значение больше расстояния между этим [VisualInstance3D] и другими "
"близлежащими [VisualInstance3D]."

msgid ""
"If [code]true[/code], the object is sorted based on the [AABB] center. The "
"object will be sorted based on the global position otherwise.\n"
"The [AABB] center based sorting is generally more accurate for 3D models. The "
"position based sorting instead allows to better control the drawing order "
"when working with [GPUParticles3D] and [CPUParticles3D]."
msgstr ""
"Если [code]true[/code], объект сортируется на основе центра [AABB]. В "
"противном случае объект будет сортироваться на основе глобальной позиции.\n"
"Сортировка на основе центра [AABB] обычно более точна для 3D-моделей. "
"Сортировка на основе позиции вместо этого позволяет лучше контролировать "
"порядок рисования при работе с [GPUParticles3D] и [CPUParticles3D]."

msgid "A custom shader program with a visual editor."
msgstr "Пользовательская шейдерная программа с визуальным редактором."

msgid ""
"This class provides a graph-like visual editor for creating a [Shader]. "
"Although [VisualShader]s do not require coding, they share the same logic "
"with script shaders. They use [VisualShaderNode]s that can be connected to "
"each other to control the flow of the shader. The visual shader graph is "
"converted to a script shader behind the scenes."
msgstr ""
"Этот класс предоставляет графический визуальный редактор для создания "
"[Shader]. Хотя [VisualShader] не требуют кодирования, они разделяют ту же "
"логику с шейдерами скриптов. Они используют [VisualShaderNode], которые могут "
"быть соединены друг с другом для управления потоком шейдера. Граф визуального "
"шейдера преобразуется в шейдер скрипта за кулисами."

msgid "Using VisualShaders"
msgstr "Использование VisualShaders"

msgid "Adds the specified [param node] to the shader."
msgstr "Добавляет указанный [param node] в шейдер."

msgid "Adds a new varying value node to the shader."
msgstr "Добавляет в шейдер новый узел переменного значения."

msgid "Attaches the given node to the given frame."
msgstr "Прикрепляет указанный узел к указанному фрейму."

msgid ""
"Returns [code]true[/code] if the specified nodes and ports can be connected "
"together."
msgstr ""
"Возвращает [code]true[/code], если указанные узлы и порты могут быть "
"соединены вместе."

msgid "Connects the specified nodes and ports."
msgstr "Соединяет указанные узлы и порты."

msgid ""
"Connects the specified nodes and ports, even if they can't be connected. Such "
"connection is invalid and will not function properly."
msgstr ""
"Подключает указанные узлы и порты, даже если они не могут быть подключены. "
"Такое подключение недействительно и не будет работать должным образом."

msgid "Detaches the given node from the frame it is attached to."
msgstr "Отсоединяет указанный узел от фрейма, к которому он прикреплен."

msgid ""
"Returns the shader node instance with specified [param type] and [param id]."
msgstr ""
"Возвращает экземпляр узла шейдера с указанными [param type] и [param id]."

msgid "Returns the list of connected nodes with the specified type."
msgstr "Возвращает список подключенных узлов указанного типа."

msgid "Returns the list of all nodes in the shader with the specified type."
msgstr "Возвращает список всех узлов шейдера указанного типа."

msgid "Returns the position of the specified node within the shader graph."
msgstr "Возвращает положение указанного узла в графе шейдера."

msgid "Returns next valid node ID that can be added to the shader graph."
msgstr ""
"Возвращает следующий действительный ID узла, который можно добавить в граф "
"шейдера."

msgid ""
"Returns [code]true[/code] if the shader has a varying with the given [param "
"name]."
msgstr ""
"Возвращает [code]true[/code], если шейдер имеет переменную с указанным [param "
"name]."

msgid ""
"Returns [code]true[/code] if the specified node and port connection exist."
msgstr "Возвращает [code]true[/code], если указанный узел и порт существуют."

msgid "Removes the specified node from the shader."
msgstr "Удаляет указанный узел из шейдера."

msgid ""
"Removes a varying value node with the given [param name]. Prints an error if "
"a node with this name is not found."
msgstr ""
"Удаляет узел переменного значения с указанным [param name]. Выводит ошибку, "
"если узел с таким именем не найден."

msgid "Replaces the specified node with a node of new class type."
msgstr "Заменяет указанный узел узлом нового типа класса."

msgid "Sets the mode of this shader."
msgstr "Устанавливает режим этого шейдера."

msgid "Sets the position of the specified node."
msgstr "Устанавливает положение указанного узла."

msgid "This property does nothing and always equals to zero."
msgstr "Это свойство ничего не делает и всегда равно нулю."

msgid "Deprecated."
msgstr "Устарело."

msgid "A vertex shader, operating on vertices."
msgstr "Вершинный шейдер, работающий с вершинами."

msgid "A fragment shader, operating on fragments (pixels)."
msgstr "Фрагментный шейдер, работающий с фрагментами (пикселями)."

msgid "A shader for light calculations."
msgstr "Шейдер для расчета освещения."

msgid "A function for the \"start\" stage of particle shader."
msgstr "Функция для «стартового» этапа шейдера частиц."

msgid "A function for the \"process\" stage of particle shader."
msgstr "Функция для этапа «обработки» шейдера частиц."

msgid ""
"A function for the \"collide\" stage (particle collision handler) of particle "
"shader."
msgstr ""
"Функция для этапа «столкновения» (обработчик столкновений частиц) шейдера "
"частиц."

msgid ""
"A function for the \"start\" stage of particle shader, with customized output."
msgstr "Функция для «стартового» этапа шейдера частиц с настраиваемым выводом."

msgid ""
"A function for the \"process\" stage of particle shader, with customized "
"output."
msgstr "Функция для этапа «обработки» шейдера частиц с настраиваемым выводом."

msgid "A shader for 3D environment's sky."
msgstr "Шейдер для неба трехмерной среды."

msgid "A compute shader that runs for each froxel of the volumetric fog map."
msgstr ""
"Вычислительный шейдер, который запускается для каждого фрокселя карты "
"объемного тумана."

msgid "Represents the size of the [enum Type] enum."
msgstr "Представляет размер перечисления [enum Type]."

msgid ""
"Varying is passed from [code]Vertex[/code] function to [code]Fragment[/code] "
"and [code]Light[/code] functions."
msgstr ""
"Переменная передается из функции [code]Vertex[/code] в функции "
"[code]Fragment[/code] и [code]Light[/code]."

msgid ""
"Varying is passed from [code]Fragment[/code] function to [code]Light[/code] "
"function."
msgstr ""
"Переменная передается из функции [code]Fragment[/code] в функцию [code]Light[/"
"code]."

msgid "Represents the size of the [enum VaryingMode] enum."
msgstr "Представляет размер перечисления [enum VaryingMode]."

msgid "Varying is of type [float]."
msgstr "Varying имеет тип [float]."

msgid "Varying is of type [int]."
msgstr "Varying имеет тип [int]."

msgid "Varying is of type unsigned [int]."
msgstr "Varying имеет тип unsigned [int]."

msgid "Varying is of type [Vector2]."
msgstr "Varying имеет тип [Vector2]."

msgid "Varying is of type [Vector3]."
msgstr "Varying имеет тип [Vector3]."

msgid "Varying is of type [Vector4]."
msgstr "Varying имеет тип [Vector4]."

msgid "Varying is of type [bool]."
msgstr "Varying имеет тип [bool]."

msgid "Varying is of type [Transform3D]."
msgstr "Varying имеет тип [Transform3D]."

msgid "Represents the size of the [enum VaryingType] enum."
msgstr "Представляет размер перечисления [enum VaryingType]."

msgid "Indicates an invalid [VisualShader] node."
msgstr "Указывает на недопустимый узел [VisualShader]."

msgid "Indicates an output node of [VisualShader]."
msgstr "Указывает выходной узел [VisualShader]."

msgid "Base class for [VisualShader] nodes. Not related to scene nodes."
msgstr "Базовый класс для узлов [VisualShader]. Не относится к узлам сцены."

msgid ""
"Visual shader graphs consist of various nodes. Each node in the graph is a "
"separate object and they are represented as a rectangular boxes with title "
"and a set of properties. Each node also has connection ports that allow to "
"connect it to another nodes and control the flow of the shader."
msgstr ""
"Графы визуальных шейдеров состоят из различных узлов. Каждый узел в графе "
"является отдельным объектом и представлен в виде прямоугольных блоков с "
"заголовком и набором свойств. Каждый узел также имеет порты соединения, "
"которые позволяют подключать его к другим узлам и управлять потоком шейдера."

msgid "Clears the default input ports value."
msgstr "Очищает значение входных портов по умолчанию."

msgid ""
"Returns the input port which should be connected by default when this node is "
"created as a result of dragging a connection from an existing node to the "
"empty space on the graph."
msgstr ""
"Возвращает входной порт, который должен быть подключен по умолчанию, когда "
"этот узел создается в результате перетаскивания соединения из существующего "
"узла в пустое место на графике."

msgid ""
"Returns an [Array] containing default values for all of the input ports of "
"the node in the form [code][index0, value0, index1, value1, ...][/code]."
msgstr ""
"Возвращает [Array], содержащий значения по умолчанию для всех входных портов "
"узла в форме [code][index0, value0, index1, value1, ...][/code]."

msgid "Returns the default value of the input [param port]."
msgstr "Возвращает значение по умолчанию для входа [param port]."

msgid "Removes the default value of the input [param port]."
msgstr "Удаляет значение по умолчанию для входа [param port]."

msgid ""
"Sets the default input ports values using an [Array] of the form [code]"
"[index0, value0, index1, value1, ...][/code]. For example: [code][0, "
"Vector3(0, 0, 0), 1, Vector3(0, 0, 0)][/code]."
msgstr ""
"Устанавливает значения входных портов по умолчанию с помощью [Array] в форме "
"[code][index0, value0, index1, value1, ...][/code]. Например: [code][0, "
"Vector3(0, 0, 0), 1, Vector3(0, 0, 0)][/code]."

msgid "Sets the default [param value] for the selected input [param port]."
msgstr ""
"Устанавливает значение параметра по умолчанию [param value] для выбранного "
"входа [param port]."

msgid ""
"Represents the index of the frame this node is linked to. If set to [code]-1[/"
"code] the node is not linked to any frame."
msgstr ""
"Представляет индекс фрейма, с которым связан этот узел. Если установлено "
"значение [code]-1[/code], узел не связан ни с одним фреймом."

msgid ""
"Sets the output port index which will be showed for preview. If set to "
"[code]-1[/code] no port will be open for preview."
msgstr ""
"Устанавливает индекс выходного порта, который будет показан для "
"предварительного просмотра. Если установлено значение [code]-1[/code], ни "
"один порт не будет открыт для предварительного просмотра."

msgid ""
"Floating-point scalar. Translated to [code skip-lint]float[/code] type in "
"shader code."
msgstr ""
"Скаляр с плавающей точкой. В коде шейдера преобразуется в тип [code skip-"
"lint]float[/code]."

msgid ""
"Integer scalar. Translated to [code skip-lint]int[/code] type in shader code."
msgstr ""
"Целочисленный скаляр. В коде шейдера переведен в тип [code skip-lint]int[/"
"code]."

msgid ""
"Unsigned integer scalar. Translated to [code skip-lint]uint[/code] type in "
"shader code."
msgstr ""
"Беззнаковый целочисленный скаляр. Переводится в тип [code skip-lint]uint[/"
"code] в коде шейдера."

msgid ""
"2D vector of floating-point values. Translated to [code skip-lint]vec2[/code] "
"type in shader code."
msgstr ""
"2D вектор значений с плавающей точкой. Переведенный в тип [code skip-"
"lint]vec2[/code] в коде шейдера."

msgid ""
"3D vector of floating-point values. Translated to [code skip-lint]vec3[/code] "
"type in shader code."
msgstr ""
"3D вектор значений с плавающей точкой. Переведенный в тип [code skip-"
"lint]vec3[/code] в коде шейдера."

msgid ""
"4D vector of floating-point values. Translated to [code skip-lint]vec4[/code] "
"type in shader code."
msgstr ""
"4D вектор значений с плавающей точкой. Переведено в тип [code skip-lint]vec4[/"
"code] в коде шейдера."

msgid ""
"Boolean type. Translated to [code skip-lint]bool[/code] type in shader code."
msgstr ""
"Тип Boolean. В коде шейдера переведен в тип [code skip-lint]bool[/code]."

msgid ""
"Transform type. Translated to [code skip-lint]mat4[/code] type in shader code."
msgstr ""
"Тип преобразования. Переведено в тип [code skip-lint]mat4[/code] в коде "
"шейдера."

msgid ""
"Sampler type. Translated to reference of sampler uniform in shader code. Can "
"only be used for input ports in non-uniform nodes."
msgstr ""
"Тип сэмплера. Транслируется в ссылку на униформу сэмплера в коде шейдера. "
"Может использоваться только для входных портов в не-унформных узлах."

msgid "Represents the size of the [enum PortType] enum."
msgstr "Представляет размер перечисления [enum PortType]."

msgid ""
"A node that controls how the object faces the camera to be used within the "
"visual shader graph."
msgstr ""
"Узел, который управляет тем, как объект обращен к камере, для использования в "
"графе визуального шейдера."

msgid ""
"The output port of this node needs to be connected to [code]Model View "
"Matrix[/code] port of [VisualShaderNodeOutput]."
msgstr ""
"Выходной порт этого узла должен быть подключен к порту [code]Model View "
"Matrix[/code] [VisualShaderNodeOutput]."

msgid "Controls how the object faces the camera."
msgstr "Управляет направлением объекта к камере."

msgid ""
"If [code]true[/code], the shader will keep the scale set for the mesh. "
"Otherwise, the scale is lost when billboarding."
msgstr ""
"Если [code]true[/code], шейдер сохранит масштаб, установленный для сетки. В "
"противном случае масштаб теряется при билбординге."

msgid "Billboarding is disabled and the node does nothing."
msgstr "Billboarding отключен, и узел ничего не делает."

msgid "A standard billboarding algorithm is enabled."
msgstr "Включен стандартный алгоритм размещения billboard'ов."

msgid "A billboarding algorithm to rotate around Y-axis is enabled."
msgstr "Включен алгоритм вращения билборда вокруг оси Y."

msgid "A billboarding algorithm designed to use on particles is enabled."
msgstr ""
"Включен алгоритм билбординга, предназначенный для использования с частицами."

msgid "Represents the size of the [enum BillboardType] enum."
msgstr "Представляет размер перечисления [enum BillboardType]."

msgid "A boolean constant to be used within the visual shader graph."
msgstr "Булева константа, используемая в графе визуального шейдера."

msgid ""
"Has only one output port and no inputs.\n"
"Translated to [code skip-lint]bool[/code] in the shader language."
msgstr ""
"Имеет только один выходной порт и не имеет входов.\n"
"Переведено в [code skip-lint]bool[/code] на языке шейдеров."

msgid "A boolean constant which represents a state of this node."
msgstr "Булева константа, представляющая состояние этого узла."

msgid "A boolean parameter to be used within the visual shader graph."
msgstr ""
"Логический параметр, который будет использоваться в графе визуального шейдера."

msgid "Translated to [code]uniform bool[/code] in the shader language."
msgstr "Переводится как [code]uniform bool[/code] на языке шейдеров."

msgid "A default value to be assigned within the shader."
msgstr "Значение по умолчанию, назначаемое в шейдере."

msgid "Enables usage of the [member default_value]."
msgstr "Позволяет использовать [member default_value]."

msgid "Clamps a value within the visual shader graph."
msgstr "Фиксирует значение в графе визуального шейдера."

msgid ""
"Constrains a value to lie between [code]min[/code] and [code]max[/code] "
"values."
msgstr ""
"Ограничивает значение, значениями между [code]min[/code] и [code]max[/code]."

msgid "A type of operands and returned value."
msgstr "Тип операндов и возвращаемого значения."

msgid "A floating-point scalar."
msgstr "Скаляр с плавающей запятой."

msgid "An integer scalar."
msgstr "Целочисленный скаляр."

msgid "An unsigned integer scalar."
msgstr "Беззнаковый целочисленный скаляр."

msgid "A 2D vector type."
msgstr "Тип 2D-вектора."

msgid "A 3D vector type."
msgstr "Тип 3D-вектора."

msgid "A 4D vector type."
msgstr "Тип 4D-вектора."

msgid "Represents the size of the [enum OpType] enum."
msgstr "Представляет размер перечисления [enum OpType]."

msgid "A [Color] constant to be used within the visual shader graph."
msgstr "Константа [Color], используемая в графе визуального шейдера."

msgid ""
"Has two output ports representing RGB and alpha channels of [Color].\n"
"Translated to [code]vec3 rgb[/code] and [code]float alpha[/code] in the "
"shader language."
msgstr ""
"Имеет два выходных порта, представляющих каналы RGB и альфа [Color].\n"
"Переведено в [code]vec3 rgb[/code] и [code]float alpha[/code] на языке "
"шейдеров."

msgid "A [Color] constant which represents a state of this node."
msgstr "Константа [Color], которая представляет состояние этого узла."

msgid "A [Color] function to be used within the visual shader graph."
msgstr ""
"Функция [Color], которая будет использоваться в графе визуального шейдера."

msgid ""
"Accept a [Color] to the input port and transform it according to [member "
"function]."
msgstr ""
"Принять [Color] на входной порт и преобразовать его в соответствии с [member "
"function]."

msgid "A function to be applied to the input color."
msgstr "Функция, применяемая к входному цвету."

msgid ""
"Converts the color to grayscale using the following formula:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"float max1 = max(c.r, c.g);\n"
"float max2 = max(max1, c.b);\n"
"float max3 = max(max1, max2);\n"
"return vec3(max3, max3, max3);\n"
"[/codeblock]"
msgstr ""
"Преобразует цвет в оттенки серого, используя следующую формулу:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"float max1 = max(c.r, c.g);\n"
"float max2 = max(max1, c.b);\n"
"float max3 = max(max1, max2);\n"
"return vec3(max3, max3, max3);\n"
"[/codeblock]"

msgid "Converts HSV vector to RGB equivalent."
msgstr "Конвертирует вектор HSV в RGB эквивалент."

msgid "Converts RGB vector to HSV equivalent."
msgstr "Конвертирует вектор RGB в HSV эквивалент."

msgid ""
"Applies sepia tone effect using the following formula:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"float r = (c.r * 0.393) + (c.g * 0.769) + (c.b * 0.189);\n"
"float g = (c.r * 0.349) + (c.g * 0.686) + (c.b * 0.168);\n"
"float b = (c.r * 0.272) + (c.g * 0.534) + (c.b * 0.131);\n"
"return vec3(r, g, b);\n"
"[/codeblock]"
msgstr ""
"Применяет эффект сепии, используя следующую формулу:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"float r = (c.r * 0.393) + (c.g * 0.769) + (c.b * 0.189);\n"
"float g = (c.r * 0.349) + (c.g * 0.686) + (c.b * 0.168);\n"
"float b = (c.r * 0.272) + (c.g * 0.534) + (c.b * 0.131);\n"
"return vec3(r, g, b);\n"
"[/codeblock]"

msgid ""
"Converts color from linear color space to sRGB color space using the "
"following formula:\n"
"[codeblock]\n"
"vec3 c = clamp(c, vec3(0.0), vec3(1.0));\n"
"const vec3 a = vec3(0.055f);\n"
"return mix((vec3(1.0f) + a) * pow(c.rgb, vec3(1.0f / 2.4f)) - a, 12.92f * "
"c.rgb, lessThan(c.rgb, vec3(0.0031308f)));\n"
"[/codeblock]\n"
"The Compatibility renderer uses a simpler formula:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"return max(vec3(1.055) * pow(c, vec3(0.416666667)) - vec3(0.055), "
"vec3(0.0));\n"
"[/codeblock]"
msgstr ""
"Преобразует цвет из линейного цветового пространства в цветовое пространство "
"sRGB, используя следующую формулу:\n"
"[codeblock]\n"
"vec3 c = clamp(c, vec3(0.0), vec3(1.0));\n"
"const vec3 a = vec3(0.055f);\n"
"return mix((vec3(1.0f) + a) * pow(c.rgb, vec3(1.0f / 2.4f)) - a, 12.92f * "
"c.rgb, lessThan(c.rgb, vec3(0.0031308f)));\n"
"[/codeblock]\n"
"Визуализатор Совместимости (Compatibility) использует более простую формулу:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"вернуть max(vec3(1.055) * pow(c, vec3(0.416666667)) - vec3(0.055), "
"vec3(0.0));\n"
"[/codeblock]"

msgid ""
"Converts color from sRGB color space to linear color space using the "
"following formula:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"return mix(pow((c.rgb + vec3(0.055)) * (1.0 / (1.0 + 0.055)), vec3(2.4)), "
"c.rgb * (1.0 / 12.92), lessThan(c.rgb, vec3(0.04045)));\n"
"[/codeblock]\n"
"The Compatibility renderer uses a simpler formula:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"return c * (c * (c * 0.305306011 + 0.682171111) + 0.012522878);\n"
"[/codeblock]"
msgstr ""
"Преобразует цвет из цветового пространства sRGB в линейное цветовое "
"пространство, используя следующую формулу:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"return mix(pow((c.rgb + vec3(0.055)) * (1.0 / (1.0 + 0.055)), vec3(2.4)), "
"c.rgb * (1.0 / 12.92), lessThan(c.rgb, vec3(0.04045)));\n"
"[/codeblock]\n"
"Визуализатор Совместимости (Compatibility) использует более простую формулу:\n"
"[codeblock]\n"
"vec3 c = input;\n"
"return c * (c * (c * 0.305306011 + 0.682171111) + 0.012522878);\n"
"[/codeblock]"

msgid "Represents the size of the [enum Function] enum."
msgstr "Представляет размер перечисления [enum Function]."

msgid "A [Color] operator to be used within the visual shader graph."
msgstr ""
"Оператор [Color], который будет использоваться в графе визуального шейдера."

msgid "Applies [member operator] to two color inputs."
msgstr "Применяет [member operator] к двум цветовым входам."

msgid "An operator to be applied to the inputs."
msgstr "Оператор, применяемый к входным данным."

msgid ""
"Produce a screen effect with the following formula:\n"
"[codeblock]\n"
"result = vec3(1.0) - (vec3(1.0) - a) * (vec3(1.0) - b);\n"
"[/codeblock]"
msgstr ""
"Создайте эффект экрана с помощью следующей формулы:\n"
"[codeblock]\n"
"result = vec3(1.0) - (vec3(1.0) - a) * (vec3(1.0) - b);\n"
"[/codeblock]"

msgid ""
"Produce a difference effect with the following formula:\n"
"[codeblock]\n"
"result = abs(a - b);\n"
"[/codeblock]"
msgstr ""
"Создайте эффект разницы с помощью следующей формулы:\n"
"[codeblock]\n"
"result = abs(a - b);\n"
"[/codeblock]"

msgid ""
"Produce a darken effect with the following formula:\n"
"[codeblock]\n"
"result = min(a, b);\n"
"[/codeblock]"
msgstr ""
"Создайте эффект затемнения с помощью следующей формулы:\n"
"[codeblock]\n"
"result = min(a, b);\n"
"[/codeblock]"

msgid ""
"Produce a lighten effect with the following formula:\n"
"[codeblock]\n"
"result = max(a, b);\n"
"[/codeblock]"
msgstr ""
"Создайте эффект осветления с помощью следующей формулы:\n"
"[codeblock]\n"
"result = max(a, b);\n"
"[/codeblock]"

msgid ""
"Produce an overlay effect with the following formula:\n"
"[codeblock]\n"
"for (int i = 0; i < 3; i++) {\n"
"\tfloat base = a[i];\n"
"\tfloat blend = b[i];\n"
"\tif (base < 0.5) {\n"
"\t\tresult[i] = 2.0 * base * blend;\n"
"\t} else {\n"
"\t\tresult[i] = 1.0 - 2.0 * (1.0 - blend) * (1.0 - base);\n"
"\t}\n"
"}\n"
"[/codeblock]"
msgstr ""
"Создайте эффект наложения с помощью следующей формулы:\n"
"[codeblock]\n"
"for (int i = 0; i < 3; i++) {\n"
"\tfloat base = a[i];\n"
"\tfloat blend = b[i];\n"
"\tif (base < 0.5) {\n"
"\t\tresult[i] = 2.0 * base * blend;\n"
"\t} else {\n"
"\t\tresult[i] = 1.0 - 2.0 * (1.0 - blend) * (1.0 - base);\n"
"\t}\n"
"}\n"
"[/codeblock]"

msgid ""
"Produce a dodge effect with the following formula:\n"
"[codeblock]\n"
"result = a / (vec3(1.0) - b);\n"
"[/codeblock]"
msgstr ""
"Создайте эффект уклонения с помощью следующей формулы:\n"
"[codeblock]\n"
"result = a / (vec3(1.0) - b);\n"
"[/codeblock]"

msgid ""
"Produce a burn effect with the following formula:\n"
"[codeblock]\n"
"result = vec3(1.0) - (vec3(1.0) - a) / b;\n"
"[/codeblock]"
msgstr ""
"Создайте эффект горения с помощью следующей формулы:\n"
"[codeblock]\n"
"result = vec3(1.0) - (vec3(1.0) - a) / b;\n"
"[/codeblock]"

msgid ""
"Produce a soft light effect with the following formula:\n"
"[codeblock]\n"
"for (int i = 0; i < 3; i++) {\n"
"\tfloat base = a[i];\n"
"\tfloat blend = b[i];\n"
"\tif (base < 0.5) {\n"
"\t\tresult[i] = base * (blend + 0.5);\n"
"\t} else {\n"
"\t\tresult[i] = 1.0 - (1.0 - base) * (1.0 - (blend - 0.5));\n"
"\t}\n"
"}\n"
"[/codeblock]"
msgstr ""
"Создайте эффект мягкого света с помощью следующей формулы:\n"
"[codeblock]\n"
"for (int i = 0; i < 3; i++) {\n"
"\tfloat base = a[i];\n"
"\tfloat blend = b[i];\n"
"\tif (base < 0.5) {\n"
"\t\tresult[i] = base * (blend + 0.5);\n"
"\t} else {\n"
"\t\tresult[i] = 1.0 - (1.0 - base) * (1.0 - (blend - 0.5));\n"
"\t}\n"
"}\n"
"[/codeblock]"

msgid ""
"Produce a hard light effect with the following formula:\n"
"[codeblock]\n"
"for (int i = 0; i < 3; i++) {\n"
"\tfloat base = a[i];\n"
"\tfloat blend = b[i];\n"
"\tif (base < 0.5) {\n"
"\t\tresult[i] = base * (2.0 * blend);\n"
"\t} else {\n"
"\t\tresult[i] = 1.0 - (1.0 - base) * (1.0 - 2.0 * (blend - 0.5));\n"
"\t}\n"
"}\n"
"[/codeblock]"
msgstr ""
"Создайте эффект жесткого света с помощью следующей формулы:\n"
"[codeblock]\n"
"for (int i = 0; i < 3; i++) {\n"
"\tfloat base = a[i];\n"
"\tfloat blend = b[i];\n"
"\tif (base < 0.5) {\n"
"\t\tresult[i] = base * (2.0 * blend);\n"
"\t} else {\n"
"\t\tresult[i] = 1.0 - (1.0 - base) * (1.0 - 2.0 * (blend - 0.5));\n"
"\t}\n"
"}\n"
"[/codeblock]"

msgid "Represents the size of the [enum Operator] enum."
msgstr "Представляет размер перечисления [enum Operator]."

msgid "A [Color] parameter to be used within the visual shader graph."
msgstr ""
"Параметр [Color], который будет использоваться в графе визуального шейдера."

msgid "Translated to [code]uniform vec4[/code] in the shader language."
msgstr "Переведено в [code]uniform vec4[/code] на языке шейдеров."

msgid "This class has no function anymore and only exists for compatibility."
msgstr ""
"Этот класс больше не имеет функций и существует только для совместимости."

msgid ""
"Only exists for compatibility. Use [VisualShaderNodeFrame] as a replacement."
msgstr ""
"Существует только для совместимости. Используйте [VisualShaderNodeFrame] в "
"качестве замены."

msgid ""
"This node was replaced by [VisualShaderNodeFrame] and only exists to preserve "
"compatibility. In the [VisualShader] editor it behaves exactly like "
"[VisualShaderNodeFrame]."
msgstr ""
"Этот узел был заменен на [VisualShaderNodeFrame] и существует только для "
"сохранения совместимости. В редакторе [VisualShader] он ведет себя точно так "
"же, как [VisualShaderNodeFrame]."

msgid ""
"This property only exists to preserve data authored in earlier versions of "
"Godot. It has currently no function."
msgstr ""
"Это свойство существует только для сохранения данных, созданных в более "
"ранних версиях Godot. В настоящее время оно не имеет функции."

msgid "A comparison function for common types within the visual shader graph."
msgstr "Функция сравнения для общих типов в графе визуального шейдера."

msgid ""
"Compares [code]a[/code] and [code]b[/code] of [member type] by [member "
"function]. Returns a boolean scalar. Translates to [code]if[/code] "
"instruction in shader code."
msgstr ""
"Сравнивает [code]a[/code] и [code]b[/code] [member type] по [member "
"function]. Возвращает логический скаляр. Преобразует в инструкцию [code]if[/"
"code] в коде шейдера."

msgid ""
"Extra condition which is applied if [member type] is set to [constant "
"CTYPE_VECTOR_3D]."
msgstr ""
"Дополнительное условие, которое применяется, если [member type] установлен на "
"[constant CTYPE_VECTOR_3D]."

msgid "A comparison function."
msgstr "Функция сравнения."

msgid "The type to be used in the comparison."
msgstr "Тип, который будет использоваться при сравнении."

msgid "A boolean type."
msgstr "Логический тип."

msgid "A transform ([code]mat4[/code]) type."
msgstr "Тип преобразования ([code]mat4[/code])."

msgid "Represents the size of the [enum ComparisonType] enum."
msgstr "Представляет размер перечисления [enum ComparisonType]."

msgid "Comparison for equality ([code]a == b[/code])."
msgstr "Сравнение на равенство ([code]a == b[/code])."

msgid "Comparison for inequality ([code]a != b[/code])."
msgstr "Сравнение для неравенства ([code]a != b[/code])."

msgid ""
"Comparison for greater than ([code]a > b[/code]). Cannot be used if [member "
"type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
msgstr ""
"Сравнение на большее, чем ([code]a > b[/code]). Не может использоваться, если "
"[member type] установлен на [constant CTYPE_BOOLEAN] или [constant "
"CTYPE_TRANSFORM]."

msgid ""
"Comparison for greater than or equal ([code]a >= b[/code]). Cannot be used if "
"[member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
msgstr ""
"Сравнение на большее или равное ([code]a >= b[/code]). Не может "
"использоваться, если [member type] установлен на [constant CTYPE_BOOLEAN] или "
"[constant CTYPE_TRANSFORM]."

msgid ""
"Comparison for less than ([code]a < b[/code]). Cannot be used if [member "
"type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
msgstr ""
"Сравнение для меньше чем ([code]a < b[/code]). Не может использоваться, если "
"[member type] установлен на [constant CTYPE_BOOLEAN] или [constant "
"CTYPE_TRANSFORM]."

msgid ""
"Comparison for less than or equal ([code]a <= b[/code]). Cannot be used if "
"[member type] set to [constant CTYPE_BOOLEAN] or [constant CTYPE_TRANSFORM]."
msgstr ""
"Сравнение на «меньше или равно» ([code]a <= b[/code]). Не может "
"использоваться, если [member type] установлен на [constant CTYPE_BOOLEAN] или "
"[constant CTYPE_TRANSFORM]."

msgid ""
"The result will be [code]true[/code] if all components in the vector satisfy "
"the comparison condition."
msgstr ""
"Результат будет [code]true[/code], если все компоненты вектора удовлетворяют "
"условию сравнения."

msgid ""
"The result will be [code]true[/code] if any component in the vector satisfies "
"the comparison condition."
msgstr ""
"Результат будет [code]true[/code], если какой-либо компонент вектора "
"удовлетворяет условию сравнения."

msgid "Represents the size of the [enum Condition] enum."
msgstr "Представляет размер перечисления [enum Condition]."

msgid "A base type for the constants within the visual shader graph."
msgstr "Базовый тип для констант в графе визуального шейдера."

msgid ""
"This is an abstract class. See the derived types for descriptions of the "
"possible values."
msgstr ""
"Это абстрактный класс. Смотрите производные типы для описания возможных "
"значений."

msgid "A [Cubemap] sampling node to be used within the visual shader graph."
msgstr "Узел [Cubemap] для использования в графе визуального шейдера."

msgid ""
"Translated to [code]texture(cubemap, vec3)[/code] in the shader language. "
"Returns a color vector and alpha channel as scalar."
msgstr ""
"Переводится в [code]texture(cubemap, vec3)[/code] на языке шейдеров. "
"Возвращает вектор цвета и альфа-канал как скаляр."

msgid ""
"The [Cubemap] texture to sample when using [constant SOURCE_TEXTURE] as "
"[member source]."
msgstr ""
"Текстура [Cubemap] для выборки при использовании [constant SOURCE_TEXTURE] в "
"качестве [member source]."

msgid "Defines which source should be used for the sampling."
msgstr "Определяет, какой источник следует использовать для выборки."

msgid "Defines the type of data provided by the source texture."
msgstr "Определяет тип данных, предоставляемых исходной текстурой."

msgid ""
"Use the [Cubemap] set via [member cube_map]. If this is set to [member "
"source], the [code]samplerCube[/code] port is ignored."
msgstr ""
"Используйте [Cubemap], установленный через [member cube_map]. Если он "
"установлен на [member source], порт [code]samplerCube[/code] игнорируется."

msgid ""
"Use the [Cubemap] sampler reference passed via the [code]samplerCube[/code] "
"port. If this is set to [member source], the [member cube_map] texture is "
"ignored."
msgstr ""
"Используйте ссылку на сэмплер [Cubemap], переданную через порт "
"[code]samplerCube[/code]. Если установлено значение [member source], текстура "
"[member cube_map] игнорируется."

msgid "Represents the size of the [enum Source] enum."
msgstr "Представляет размер перечисления [enum Source]."

msgid "No hints are added to the uniform declaration."
msgstr "Никаких подсказок в единое заявление не добавляется."

msgid ""
"Adds [code]source_color[/code] as hint to the uniform declaration for proper "
"sRGB to linear conversion."
msgstr ""
"Добавляет [code]source_color[/code] в качестве подсказки к объявлению uniform "
"для правильного преобразования sRGB в линейный."

msgid ""
"Adds [code]hint_normal[/code] as hint to the uniform declaration, which "
"internally converts the texture for proper usage as normal map."
msgstr ""
"Добавляет [code]hint_normal[/code] в качестве подсказки к объявлению uniform, "
"которое внутренне преобразует текстуру для правильного использования в "
"качестве карты нормалей."

msgid "A [Cubemap] parameter node to be used within the visual shader graph."
msgstr "Узел параметра [Cubemap] для использования в графе визуального шейдера."

msgid ""
"Translated to [code]uniform samplerCube[/code] in the shader language. The "
"output value can be used as port for [VisualShaderNodeCubemap]."
msgstr ""
"Переводится в [code]uniform samplerCube[/code] на языке шейдеров. Выходное "
"значение может быть использовано как порт для [VisualShaderNodeCubemap]."

msgid "Performs a [CurveTexture] lookup within the visual shader graph."
msgstr "Выполняет поиск [CurveTexture] в графе визуального шейдера."

msgid "Comes with a built-in editor for texture's curves."
msgstr "Поставляется со встроенным редактором кривых текстур."

msgid "The source texture."
msgstr "Исходная текстура."

msgid "Performs a [CurveXYZTexture] lookup within the visual shader graph."
msgstr "Выполняет поиск [CurveXYZTexture] в графе визуального шейдера."

msgid ""
"Virtual class to define custom [VisualShaderNode]s for use in the Visual "
"Shader Editor."
msgstr ""
"Виртуальный класс для определения пользовательских [VisualShaderNode]-ов для "
"использования в редакторе визуальных шейдеров."

msgid ""
"By inheriting this class you can create a custom [VisualShader] script addon "
"which will be automatically added to the Visual Shader Editor. The "
"[VisualShaderNode]'s behavior is defined by overriding the provided virtual "
"methods.\n"
"In order for the node to be registered as an editor addon, you must use the "
"[code]@tool[/code] annotation and provide a [code]class_name[/code] for your "
"custom script. For example:\n"
"[codeblock]\n"
"@tool\n"
"extends VisualShaderNodeCustom\n"
"class_name VisualShaderNodeNoise\n"
"[/codeblock]"
msgstr ""
"Унаследовав этот класс, вы можете создать пользовательский скриптовый аддон "
"[VisualShader], который будет автоматически добавлен в редактор визуальных "
"шейдеров. Поведение [VisualShaderNode] определяется путем переопределения "
"предоставленных виртуальных методов.\n"
"Чтобы зарегистрировать узел как редакторский аддон, вы должны использовать "
"аннотацию [code]@tool[/code] и указать [code]class_name[/code] для вашего "
"пользовательского скрипта. Например:\n"
"[codeblock]\n"
"@tool\n"
"extends VisualShaderNodeCustom\n"
"class_name VisualShaderNodeNoise\n"
"[/codeblock]"

msgid "Visual Shader plugins"
msgstr "Плагины визуальных шейдеров"

msgid ""
"Override this method to define the path to the associated custom node in the "
"Visual Shader Editor's members dialog. The path may look like [code]\"MyGame/"
"MyFunctions/Noise\"[/code].\n"
"Defining this method is [b]optional[/b]. If not overridden, the node will be "
"filed under the \"Addons\" category."
msgstr ""
"Переопределите этот метод, чтобы определить путь к связанному "
"пользовательскому узлу в диалоговом окне членов Редактора Визуальных "
"Шейдеров. Путь может выглядеть как [code]\"MyGame/MyFunctions/Noise\"[/"
"code].\n"
"Определение этого метода [b]необязательно[/b]. Если не переопределить, узел "
"будет помещен в категорию \"Дополнения\" (\"Addons\")."

msgid ""
"Override this method to define the actual shader code of the associated "
"custom node. The shader code should be returned as a string, which can have "
"multiple lines (the [code]\"\"\"[/code] multiline string construct can be "
"used for convenience).\n"
"The [param input_vars] and [param output_vars] arrays contain the string "
"names of the various input and output variables, as defined by "
"[code]_get_input_*[/code] and [code]_get_output_*[/code] virtual methods in "
"this class.\n"
"The output ports can be assigned values in the shader code. For example, "
"[code]return output_vars[0] + \" = \" + input_vars[0] + \";\"[/code].\n"
"You can customize the generated code based on the shader [param mode] and/or "
"[param type].\n"
"Defining this method is [b]required[/b]."
msgstr ""
"Переопределите этот метод, чтобы определить фактический код шейдера "
"связанного пользовательского узла. Код шейдера должен быть возвращен в виде "
"строки, которая может иметь несколько строк (для удобства можно использовать "
"конструкцию многострочной строки [code]\"\"\"[/code].\n"
"Массивы [param input_vars] и [param output_vars] содержат имена строк "
"различных входных и выходных переменных, как определено виртуальными методами "
"[code]_get_input_*[/code] и [code]_get_output_*[/code] в этом классе.\n"
"Выходным портам могут быть назначены значения в коде шейдера. Например, "
"[code]return output_vars[0] + \" = \" + input_vars[0] + \";\"[/code].\n"
"Вы можете настроить сгенерированный код на основе [param mode] шейдера и/или "
"[param type].\n"
"Определение этого метода [b]обязательно[/b]."

msgid ""
"Override this method to define the input port which should be connected by "
"default when this node is created as a result of dragging a connection from "
"an existing node to the empty space on the graph.\n"
"Defining this method is [b]optional[/b]. If not overridden, the connection "
"will be created to the first valid port."
msgstr ""
"Переопределите этот метод, чтобы определить входной порт, который должен быть "
"подключен по умолчанию, когда этот узел создается в результате перетаскивания "
"соединения из существующего узла в пустое пространство на графике.\n"
"Определение этого метода [b]необязательно[/b]. Если не переопределено, "
"соединение будет создано с первым допустимым портом."

msgid ""
"Override this method to define the description of the associated custom node "
"in the Visual Shader Editor's members dialog.\n"
"Defining this method is [b]optional[/b]."
msgstr ""
"Переопределите этот метод, чтобы определить описание связанного "
"пользовательского узла в диалоговом окне элементов редактора визуальных "
"шейдеров.\n"
"Определение этого метода [b]необязательно[/b]."

msgid ""
"Override this method to add a shader code to the beginning of each shader "
"function (once). The shader code should be returned as a string, which can "
"have multiple lines (the [code]\"\"\"[/code] multiline string construct can "
"be used for convenience).\n"
"If there are multiple custom nodes of different types which use this feature "
"the order of each insertion is undefined.\n"
"You can customize the generated code based on the shader [param mode] and/or "
"[param type].\n"
"Defining this method is [b]optional[/b]."
msgstr ""
"Переопределите этот метод, чтобы добавить код шейдера в начало каждой функции "
"шейдера (один раз). Код шейдера должен быть возвращен в виде строки, которая "
"может иметь несколько строк (для удобства можно использовать конструкцию "
"многострочной строки [code]\"\"\"[/code].\n"
"Если есть несколько пользовательских узлов разных типов, которые используют "
"эту функцию, порядок каждой вставки не определен.\n"
"Вы можете настроить сгенерированный код на основе [param mode] шейдера и/или "
"[param type].\n"
"Определение этого метода [b]необязательно[/b]."

msgid ""
"Override this method to add shader code on top of the global shader, to "
"define your own standard library of reusable methods, varyings, constants, "
"uniforms, etc. The shader code should be returned as a string, which can have "
"multiple lines (the [code]\"\"\"[/code] multiline string construct can be "
"used for convenience).\n"
"Be careful with this functionality as it can cause name conflicts with other "
"custom nodes, so be sure to give the defined entities unique names.\n"
"You can customize the generated code based on the shader [param mode].\n"
"Defining this method is [b]optional[/b]."
msgstr ""
"Переопределите этот метод, чтобы добавить код шейдера поверх глобального "
"шейдера, чтобы определить собственную стандартную библиотеку повторно "
"используемых методов, переменных, констант, униформ и т. д. Код шейдера "
"должен быть возвращен в виде строки, которая может иметь несколько строк (для "
"удобства можно использовать конструкцию многострочной строки [code]\"\"\"[/"
"code].\n"
"Будьте осторожны с этой функциональностью, так как она может вызвать "
"конфликты имен с другими пользовательскими узлами, поэтому обязательно дайте "
"определенным сущностям уникальные имена.\n"
"Вы можете настроить сгенерированный код на основе [param mode] шейдера.\n"
"Определение этого метода [b]необязательно[/b]."

msgid ""
"Override this method to define the number of input ports of the associated "
"custom node.\n"
"Defining this method is [b]required[/b]. If not overridden, the node has no "
"input ports."
msgstr ""
"Переопределите этот метод, чтобы определить количество входных портов "
"связанного пользовательского узла.\n"
"Определение этого метода [b]обязательно[/b]. Если не переопределено, у узла "
"нет входных портов."

msgid ""
"Override this method to define the default value for the specified input "
"port. Prefer use this over [method "
"VisualShaderNode.set_input_port_default_value].\n"
"Defining this method is [b]required[/b]. If not overridden, the node has no "
"default values for their input ports."
msgstr ""
"Переопределите этот метод, чтобы определить значение по умолчанию для "
"указанного входного порта. Предпочтительнее использовать его вместо [method "
"VisualShaderNode.set_input_port_default_value].\n"
"Определение этого метода [b]обязательно[/b]. Если не переопределено, у узла "
"нет значений по умолчанию для входных портов."

msgid ""
"Override this method to define the names of input ports of the associated "
"custom node. The names are used both for the input slots in the editor and as "
"identifiers in the shader code, and are passed in the [code]input_vars[/code] "
"array in [method _get_code].\n"
"Defining this method is [b]optional[/b], but recommended. If not overridden, "
"input ports are named as [code]\"in\" + str(port)[/code]."
msgstr ""
"Переопределите этот метод, чтобы определить имена входных портов связанного "
"пользовательского узла. Имена используются как для входных слотов в "
"редакторе, так и в качестве идентификаторов в коде шейдера и передаются в "
"массиве [code]input_vars[/code] в [method _get_code].\n"
"Определение этого метода [b]необязательно[/b], но рекомендуется. Если не "
"переопределено, входные порты именуются как [code]\"in\" + str(port)[/code]."

msgid ""
"Override this method to define the returned type of each input port of the "
"associated custom node.\n"
"Defining this method is [b]optional[/b], but recommended. If not overridden, "
"input ports will return the [constant VisualShaderNode.PORT_TYPE_SCALAR] type."
msgstr ""
"Переопределите этот метод, чтобы определить возвращаемый тип каждого входного "
"порта связанного пользовательского узла.\n"
"Определение этого метода [b]необязательно[/b], но рекомендуется. Если не "
"переопределить, входные порты вернут тип [constant "
"VisualShaderNode.PORT_TYPE_SCALAR]."

msgid ""
"Override this method to define the name of the associated custom node in the "
"Visual Shader Editor's members dialog and graph.\n"
"Defining this method is [b]optional[/b], but recommended. If not overridden, "
"the node will be named as \"Unnamed\"."
msgstr ""
"Переопределите этот метод, чтобы определить имя связанного пользовательского "
"узла в диалоговом окне и графике членов редактора визуальных шейдеров.\n"
"Определение этого метода [b]необязательно[/b], но рекомендуется. Если не "
"переопределить, узел будет назван как «Безымянный»."

msgid ""
"Override this method to define the number of output ports of the associated "
"custom node.\n"
"Defining this method is [b]required[/b]. If not overridden, the node has no "
"output ports."
msgstr ""
"Переопределите этот метод, чтобы определить количество выходных портов "
"связанного пользовательского узла.\n"
"Определение этого метода [b]обязательно[/b]. Если не переопределено, у узла "
"нет выходных портов."

msgid ""
"Override this method to define the names of output ports of the associated "
"custom node. The names are used both for the output slots in the editor and "
"as identifiers in the shader code, and are passed in the [code]output_vars[/"
"code] array in [method _get_code].\n"
"Defining this method is [b]optional[/b], but recommended. If not overridden, "
"output ports are named as [code]\"out\" + str(port)[/code]."
msgstr ""
"Переопределите этот метод, чтобы определить имена выходных портов связанного "
"пользовательского узла. Имена используются как для выходных слотов в "
"редакторе, так и в качестве идентификаторов в коде шейдера и передаются в "
"массиве [code]output_vars[/code] в [method _get_code].\n"
"Определение этого метода [b]необязательно[/b], но рекомендуется. Если не "
"переопределено, выходные порты именуются как [code]\"out\" + str(port)[/code]."

msgid ""
"Override this method to define the returned type of each output port of the "
"associated custom node.\n"
"Defining this method is [b]optional[/b], but recommended. If not overridden, "
"output ports will return the [constant VisualShaderNode.PORT_TYPE_SCALAR] "
"type."
msgstr ""
"Переопределите этот метод, чтобы определить возвращаемый тип каждого "
"выходного порта связанного пользовательского узла.\n"
"Определение этого метода [b]необязательно[/b], но рекомендуется. Если не "
"переопределить, выходные порты вернут тип [constant "
"VisualShaderNode.PORT_TYPE_SCALAR]."

msgid ""
"Override this method to define the number of the properties.\n"
"Defining this method is [b]optional[/b]."
msgstr ""
"Переопределите этот метод, чтобы определить количество свойств.\n"
"Определение этого метода [b]необязательно[/b]."

msgid ""
"Override this method to define the default index of the property of the "
"associated custom node.\n"
"Defining this method is [b]optional[/b]."
msgstr ""
"Переопределите этот метод, чтобы определить индекс по умолчанию свойства "
"связанного пользовательского узла.\n"
"Определение этого метода [b]необязательно[/b]."

msgid ""
"Override this method to define the names of the property of the associated "
"custom node.\n"
"Defining this method is [b]optional[/b]."
msgstr ""
"Переопределите этот метод, чтобы определить имена свойств связанного "
"пользовательского узла.\n"
"Определение этого метода [b]необязательно[/b]."

msgid ""
"Override this method to define the options inside the drop-down list property "
"of the associated custom node.\n"
"Defining this method is [b]optional[/b]."
msgstr ""
"Переопределите этот метод, чтобы определить параметры внутри раскрывающегося "
"списка свойства связанного пользовательского узла.\n"
"Определение этого метода [b]необязательно[/b]."

msgid ""
"Override this method to define the return icon of the associated custom node "
"in the Visual Shader Editor's members dialog.\n"
"Defining this method is [b]optional[/b]. If not overridden, no return icon is "
"shown."
msgstr ""
"Переопределите этот метод, чтобы определить значок возврата связанного "
"пользовательского узла в диалоговом окне элементов редактора визуальных "
"шейдеров.\n"
"Определение этого метода [b]необязательно[/b]. Если не переопределено, значок "
"возврата не отображается."

msgid ""
"Override this method to prevent the node to be visible in the member dialog "
"for the certain [param mode] and/or [param type].\n"
"Defining this method is [b]optional[/b]. If not overridden, it's [code]true[/"
"code]."
msgstr ""
"Переопределите этот метод, чтобы предотвратить отображение узла в диалоговом "
"окне участника для определенного [param mode] и/или [param type].\n"
"Определение этого метода [b]необязательно[/b]. Если не переопределено, то "
"[code]true[/code]."

msgid ""
"Override this method to enable high-end mark in the Visual Shader Editor's "
"members dialog.\n"
"Defining this method is [b]optional[/b]. If not overridden, it's [code]false[/"
"code]."
msgstr ""
"Переопределите этот метод, чтобы включить высокоуровневую отметку в "
"диалоговом окне членов редактора визуальных шейдеров.\n"
"Определение этого метода [b]необязательно[/b]. Если не переопределено, то "
"[code]false[/code]."

msgid ""
"Returns the selected index of the drop-down list option within a graph. You "
"may use this function to define the specific behavior in the [method "
"_get_code] or [method _get_global_code]."
msgstr ""
"Возвращает выбранный индекс раскрывающегося списка в графе. Вы можете "
"использовать эту функцию для определения конкретного поведения в [method "
"_get_code] или [method _get_global_code]."

msgid "Calculates a derivative within the visual shader graph."
msgstr "Вычисляет производную в графе визуального шейдера."

msgid ""
"This node is only available in [code]Fragment[/code] and [code]Light[/code] "
"visual shaders."
msgstr ""
"Этот узел доступен только в визуальных шейдерах [code]Fragment[/code] и "
"[code]Light[/code]."

msgid "A derivative function type."
msgstr "Тип производной функции."

msgid ""
"Sets the level of precision to use for the derivative function. When using "
"the Compatibility renderer, this setting has no effect."
msgstr ""
"Устанавливает уровень точности для использования производной функции. При "
"использовании Compatibility renderer (Совместимость) эта настройка не имеет "
"эффекта."

msgid "Sum of absolute derivative in [code]x[/code] and [code]y[/code]."
msgstr "Сумма абсолютной производной по [code]x[/code] и [code]y[/code]."

msgid "Derivative in [code]x[/code] using local differencing."
msgstr ""
"Производная в [code]x[/code] с использованием локального дифференцирования."

msgid "Derivative in [code]y[/code] using local differencing."
msgstr ""
"Производная в [code]y[/code] с использованием локального дифференцирования."

msgid ""
"No precision is specified, the GPU driver is allowed to use whatever level of "
"precision it chooses. This is the default option and is equivalent to using "
"[code]dFdx()[/code] or [code]dFdy()[/code] in text shaders."
msgstr ""
"Точность не указана, драйверу ГП разрешено использовать любой уровень "
"точности, который он выберет. Это опция по умолчанию, эквивалентная "
"использованию [code]dFdx()[/code] или [code]dFdy()[/code] в текстовых "
"шейдерах."

msgid ""
"The derivative will be calculated using the current fragment's neighbors "
"(which may not include the current fragment). This tends to be faster than "
"using [constant PRECISION_FINE], but may not be suitable when more precision "
"is needed. This is equivalent to using [code]dFdxCoarse()[/code] or "
"[code]dFdyCoarse()[/code] in text shaders."
msgstr ""
"Производная будет вычислена с использованием соседей текущего фрагмента "
"(которые могут не включать текущий фрагмент). Это, как правило, быстрее, чем "
"использование [constant PRECISION_FINE], но может не подходить, когда "
"требуется большая точность. Это эквивалентно использованию [code]dFdxCoarse()"
"[/code] или [code]dFdyCoarse()[/code] в текстовых шейдерах."

msgid ""
"The derivative will be calculated using the current fragment and its "
"immediate neighbors. This tends to be slower than using [constant "
"PRECISION_COARSE], but may be necessary when more precision is needed. This "
"is equivalent to using [code]dFdxFine()[/code] or [code]dFdyFine()[/code] in "
"text shaders."
msgstr ""
"Производная будет вычислена с использованием текущего фрагмента и его "
"ближайших соседей. Это, как правило, медленнее, чем использование [constant "
"PRECISION_COARSE], но может быть необходимо, когда требуется большая "
"точность. Это эквивалентно использованию [code]dFdxFine()[/code] или "
"[code]dFdyFine()[/code] в текстовых шейдерах."

msgid "Represents the size of the [enum Precision] enum."
msgstr "Представляет размер перечисления [enum Precision]."

msgid ""
"Calculates the determinant of a [Transform3D] within the visual shader graph."
msgstr "Вычисляет определитель [Transform3D] в графе визуального шейдера."

msgid "Translates to [code]determinant(x)[/code] in the shader language."
msgstr "Переводится как [code]determinant(x)[/code] на языке шейдеров."

msgid "A visual shader node representing distance fade effect."
msgstr ""
"Узел визуального шейдера, представляющий эффект затухания на расстоянии."

msgid ""
"The distance fade effect fades out each pixel based on its distance to "
"another object."
msgstr ""
"Эффект затухания от расстояния. Затухает каждый пиксель в зависимости от "
"расстояния до другого объекта."

msgid "Calculates a dot product of two vectors within the visual shader graph."
msgstr ""
"Вычисляет скалярное произведение двух векторов в графе визуального шейдера."

msgid "Translates to [code]dot(a, b)[/code] in the shader language."
msgstr "Переводится как [code]dot(a, b)[/code] на языке шейдеров."

msgid ""
"A custom visual shader graph expression written in Godot Shading Language."
msgstr ""
"Пользовательское выражение графа визуального шейдера, написанное на языке "
"шейдеров Godot."

msgid ""
"Custom Godot Shading Language expression, with a custom number of input and "
"output ports.\n"
"The provided code is directly injected into the graph's matching shader "
"function ([code]vertex[/code], [code]fragment[/code], or [code]light[/code]), "
"so it cannot be used to declare functions, varyings, uniforms, or global "
"constants. See [VisualShaderNodeGlobalExpression] for such global definitions."
msgstr ""
"Пользовательское выражение Godot Shading Language с пользовательским числом "
"входных и выходных портов.\n"
"Предоставленный код напрямую внедряется в соответствующую шейдерную функцию "
"графа ([code]vertex[/code], [code]fragment[/code] или [code]light[/code]), "
"поэтому его нельзя использовать для объявления функций, variationings, "
"uniforms или глобальных констант. См. [VisualShaderNodeGlobalExpression] для "
"таких глобальных определений."

msgid ""
"An expression in Godot Shading Language, which will be injected at the start "
"of the graph's matching shader function ([code]vertex[/code], [code]fragment[/"
"code], or [code]light[/code]), and thus cannot be used to declare functions, "
"varyings, uniforms, or global constants."
msgstr ""
"Выражение на языке шейдеров Godot, которое будет введено в начало "
"соответствующей шейдерной функции графа ([code]vertex[/code], [code]fragment[/"
"code] или [code]light[/code]) и, таким образом, не может использоваться для "
"объявления функций, переменных, униформ или глобальных констант."

msgid ""
"Returns the vector that points in the same direction as a reference vector "
"within the visual shader graph."
msgstr ""
"Возвращает вектор, который указывает в том же направлении, что и опорный "
"вектор в графе визуального шейдера."

msgid ""
"Translates to [code]faceforward(N, I, Nref)[/code] in the shader language. "
"The function has three vector parameters: [code]N[/code], the vector to "
"orient, [code]I[/code], the incident vector, and [code]Nref[/code], the "
"reference vector. If the dot product of [code]I[/code] and [code]Nref[/code] "
"is smaller than zero the return value is [code]N[/code]. Otherwise, [code]-N[/"
"code] is returned."
msgstr ""
"Переводится в [code]faceforward(N, I, Nref)[/code] на языке шейдеров. Функция "
"имеет три векторных параметра: [code]N[/code], вектор для ориентации, "
"[code]I[/code], вектор инцидента и [code]Nref[/code], опорный вектор. Если "
"скалярное произведение [code]I[/code] и [code]Nref[/code] меньше нуля, "
"возвращаемое значение равно [code]N[/code]. В противном случае возвращается "
"[code]-N[/code]."

msgid ""
"A scalar floating-point constant to be used within the visual shader graph."
msgstr ""
"Скалярная константа с плавающей точкой, используемая в графе визуального "
"шейдера."

msgid "Translated to [code skip-lint]float[/code] in the shader language."
msgstr "Переводится на язык шейдеров как [code skip-lint]float[/code]."

msgid "A floating-point constant which represents a state of this node."
msgstr "Константа с плавающей точкой, представляющая состояние этого узла."

msgid ""
"A scalar floating-point function to be used within the visual shader graph."
msgstr ""
"Скалярная функция с плавающей точкой, используемая в графе визуального "
"шейдера."

msgid ""
"Accept a floating-point scalar ([code]x[/code]) to the input port and "
"transform it according to [member function]."
msgstr ""
"Принять скаляр с плавающей точкой ([code]x[/code]) на входной порт и "
"преобразовать его в соответствии с [member function]."

msgid "A function to be applied to the scalar."
msgstr "Функция, применяемая к скаляру."

msgid ""
"Returns the sine of the parameter. Translates to [code]sin(x)[/code] in the "
"Godot Shader Language."
msgstr ""
"Возвращает синус параметра. Переводится в [code]sin(x)[/code] на языке "
"шейдеров Godot."

msgid ""
"Returns the cosine of the parameter. Translates to [code]cos(x)[/code] in the "
"Godot Shader Language."
msgstr ""
"Возвращает косинус параметра. Переводится в [code]cos(x)[/code] на языке "
"шейдеров Godot."

msgid ""
"Returns the tangent of the parameter. Translates to [code]tan(x)[/code] in "
"the Godot Shader Language."
msgstr ""
"Возвращает тангенс параметра. Переводится в [code]tan(x)[/code] на языке "
"шейдеров Godot."

msgid ""
"Returns the arc-sine of the parameter. Translates to [code]asin(x)[/code] in "
"the Godot Shader Language."
msgstr ""
"Возвращает арксинус параметра. Переводится в [code]asin(x)[/code] на языке "
"шейдеров Godot."

msgid ""
"Returns the arc-cosine of the parameter. Translates to [code]acos(x)[/code] "
"in the Godot Shader Language."
msgstr ""
"Возвращает арккосинус параметра. Переводится в [code]acos(x)[/code] на языке "
"шейдеров Godot."

msgid ""
"Returns the arc-tangent of the parameter. Translates to [code]atan(x)[/code] "
"in the Godot Shader Language."
msgstr ""
"Возвращает арктангенс параметра. Переводится в [code]atan(x)[/code] на языке "
"шейдеров Godot."

msgid ""
"Returns the hyperbolic sine of the parameter. Translates to [code]sinh(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Возвращает гиперболический синус параметра. Переводится в [code]sinh(x)[/"
"code] на языке шейдеров Godot."

msgid ""
"Returns the hyperbolic cosine of the parameter. Translates to [code]cosh(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Возвращает гиперболический косинус параметра. Переводится в [code]cosh(x)[/"
"code] на языке шейдеров Godot."

msgid ""
"Returns the hyperbolic tangent of the parameter. Translates to [code]tanh(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Возвращает гиперболический тангенс параметра. Переводится в [code]tanh(x)[/"
"code] на языке шейдеров Godot."

msgid ""
"Returns the natural logarithm of the parameter. Translates to [code]log(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Возвращает натуральный логарифм параметра. Переводится в [code]log(x)[/code] "
"на языке шейдеров Godot."

msgid ""
"Returns the natural exponentiation of the parameter. Translates to "
"[code]exp(x)[/code] in the Godot Shader Language."
msgstr ""
"Возвращает натуральное возведение параметра в степень. Переводится в "
"[code]exp(x)[/code] на языке шейдеров Godot."

msgid ""
"Returns the square root of the parameter. Translates to [code]sqrt(x)[/code] "
"in the Godot Shader Language."
msgstr ""
"Возвращает квадратный корень параметра. Переводится в [code]sqrt(x)[/code] на "
"языке шейдеров Godot."

msgid ""
"Returns the absolute value of the parameter. Translates to [code]abs(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Возвращает абсолютное значение параметра. Переводится в [code]abs(x)[/code] "
"на языке шейдеров Godot."

msgid ""
"Extracts the sign of the parameter. Translates to [code]sign(x)[/code] in the "
"Godot Shader Language."
msgstr ""
"Извлекает знак параметра. Переводится в [code]sign(x)[/code] на языке "
"шейдеров Godot."

msgid ""
"Finds the nearest integer less than or equal to the parameter. Translates to "
"[code]floor(x)[/code] in the Godot Shader Language."
msgstr ""
"Находит ближайшее целое число, меньшее или равное параметру. Переводится в "
"[code]floor(x)[/code] на языке шейдеров Godot."

msgid ""
"Finds the nearest integer to the parameter. Translates to [code]round(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Находит ближайшее целое число к параметру. Переводится в [code]round(x)[/"
"code] на языке шейдеров Godot."

msgid ""
"Finds the nearest integer that is greater than or equal to the parameter. "
"Translates to [code]ceil(x)[/code] in the Godot Shader Language."
msgstr ""
"Находит ближайшее целое число, которое больше или равно параметру. "
"Переводится в [code]ceil(x)[/code] на языке шейдеров Godot."

msgid ""
"Computes the fractional part of the argument. Translates to [code]fract(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Вычисляет дробную часть аргумента. Переводится в [code]fract(x)[/code] на "
"языке шейдеров Godot."

msgid ""
"Clamps the value between [code]0.0[/code] and [code]1.0[/code] using "
"[code]min(max(x, 0.0), 1.0)[/code]."
msgstr ""
"Фиксирует значение между [code]0.0[/code] и [code]1.0[/code] с помощью "
"[code]min(max(x, 0.0), 1.0)[/code]."

msgid "Negates the [code]x[/code] using [code]-(x)[/code]."
msgstr "Отменяет [code]x[/code] с помощью [code]-(x)[/code]."

msgid ""
"Returns the arc-hyperbolic-cosine of the parameter. Translates to "
"[code]acosh(x)[/code] in the Godot Shader Language."
msgstr ""
"Возвращает арк-гиперболический косинус параметра. Переводится в [code]acosh(x)"
"[/code] на языке шейдеров Godot."

msgid ""
"Returns the arc-hyperbolic-sine of the parameter. Translates to [code]asinh(x)"
"[/code] in the Godot Shader Language."
msgstr ""
"Возвращает арк-гиперболический синус параметра. Переводится в [code]asinh(x)[/"
"code] на языке шейдеров Godot."

msgid ""
"Returns the arc-hyperbolic-tangent of the parameter. Translates to "
"[code]atanh(x)[/code] in the Godot Shader Language."
msgstr ""
"Возвращает арк-гиперболический тангенс параметра. Переводится в [code]atanh(x)"
"[/code] на языке шейдеров Godot."

msgid ""
"Convert a quantity in radians to degrees. Translates to [code]degrees(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Преобразовать величину в радианах в градусы. Переводит в [code]degrees(x)[/"
"code] на языке шейдеров Godot."

msgid ""
"Returns 2 raised by the power of the parameter. Translates to [code]exp2(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Возвращает 2, возведенное в степень параметра. Переводится в [code]exp2(x)[/"
"code] на языке шейдеров Godot."

msgid ""
"Returns the inverse of the square root of the parameter. Translates to "
"[code]inversesqrt(x)[/code] in the Godot Shader Language."
msgstr ""
"Возвращает обратный квадратный корень параметра. Переводится в "
"[code]inversesqrt(x)[/code] на языке шейдеров Godot."

msgid ""
"Returns the base 2 logarithm of the parameter. Translates to [code]log2(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Возвращает логарифм параметра по основанию 2. Переводится в [code]log2(x)[/"
"code] на языке шейдеров Godot."

msgid ""
"Convert a quantity in degrees to radians. Translates to [code]radians(x)[/"
"code] in the Godot Shader Language."
msgstr ""
"Преобразовать величину в градусах в радианы. Переводит в [code]radians(x)[/"
"code] на языке шейдеров Godot."

msgid ""
"Finds reciprocal value of dividing 1 by [code]x[/code] (i.e. [code]1 / x[/"
"code])."
msgstr ""
"Находит обратное значение деления 1 на [code]x[/code] (т.е. [code]1 / x[/"
"code])."

msgid ""
"Finds the nearest even integer to the parameter. Translates to "
"[code]roundEven(x)[/code] in the Godot Shader Language."
msgstr ""
"Находит ближайшее четное целое число к параметру. Переводится в "
"[code]roundEven(x)[/code] на языке шейдеров Godot."

msgid ""
"Returns a value equal to the nearest integer to [code]x[/code] whose absolute "
"value is not larger than the absolute value of [code]x[/code]. Translates to "
"[code]trunc(x)[/code] in the Godot Shader Language."
msgstr ""
"Возвращает значение, равное ближайшему целому числу к [code]x[/code], "
"абсолютное значение которого не больше абсолютного значения [code]x[/code]. "
"Переводится в [code]trunc(x)[/code] на языке шейдеров Godot."

msgid "Subtracts scalar [code]x[/code] from 1 (i.e. [code]1 - x[/code])."
msgstr "Вычитает скаляр [code]x[/code] из 1 (т. е. [code]1 - x[/code])."

msgid ""
"A floating-point scalar operator to be used within the visual shader graph."
msgstr ""
"Скалярный оператор с плавающей точкой, который будет использоваться в графе "
"визуального шейдера."

msgid ""
"Applies [member operator] to two floating-point inputs: [code]a[/code] and "
"[code]b[/code]."
msgstr ""
"Применяет [member operator] к двум входам с плавающей точкой: [code]a[/code] "
"и [code]b[/code]."

msgid "Sums two numbers using [code]a + b[/code]."
msgstr "Суммирует два числа, используя [code]a + b[/code]."

msgid "Subtracts two numbers using [code]a - b[/code]."
msgstr "Вычитает два числа, используя [code]a - b[/code]."

msgid "Multiplies two numbers using [code]a * b[/code]."
msgstr "Умножает два числа, используя [code]a * b[/code]."

msgid "Divides two numbers using [code]a / b[/code]."
msgstr "Делит два числа, используя [code]a/b[/code]."

msgid ""
"Calculates the remainder of two numbers. Translates to [code]mod(a, b)[/code] "
"in the Godot Shader Language."
msgstr ""
"Вычисляет остаток двух чисел. Переводится в [code]mod(a, b)[/code] на языке "
"шейдеров Godot."

msgid ""
"Raises the [code]a[/code] to the power of [code]b[/code]. Translates to "
"[code]pow(a, b)[/code] in the Godot Shader Language."
msgstr ""
"Возводит [code]a[/code] в степень [code]b[/code]. Переводится в [code]pow(a, "
"b)[/code] на языке шейдеров Godot."

msgid ""
"Returns the greater of two numbers. Translates to [code]max(a, b)[/code] in "
"the Godot Shader Language."
msgstr ""
"Возвращает большее из двух чисел. Переводится в [code]max(a, b)[/code] на "
"языке шейдеров Godot."

msgid ""
"Returns the lesser of two numbers. Translates to [code]min(a, b)[/code] in "
"the Godot Shader Language."
msgstr ""
"Возвращает меньшее из двух чисел. Переводится в [code]min(a, b)[/code] на "
"языке шейдеров Godot."

msgid ""
"Returns the arc-tangent of the parameters. Translates to [code]atan(a, b)[/"
"code] in the Godot Shader Language."
msgstr ""
"Возвращает арктангенс параметров. Переводится в [code]atan(a, b)[/code] на "
"языке шейдеров Godot."

msgid ""
"Generates a step function by comparing [code]b[/code](x) to [code]a[/code]"
"(edge). Returns 0.0 if [code]x[/code] is smaller than [code]edge[/code] and "
"otherwise 1.0. Translates to [code]step(a, b)[/code] in the Godot Shader "
"Language."
msgstr ""
"Генерирует ступенчатую функцию, сравнивая [code]b[/code](x) с [code]a[/code]"
"(edge). Возвращает 0.0, если [code]x[/code] меньше, чем [code]edge[/code], и "
"1.0 в противном случае. Переводится в [code]step(a, b)[/code] на языке "
"шейдеров Godot."

msgid "A scalar float parameter to be used within the visual shader graph."
msgstr ""
"Скалярный параметр с плавающей точкой, который будет использоваться в графе "
"визуального шейдера."

msgid "Translated to [code]uniform float[/code] in the shader language."
msgstr "Переводится как [code]uniform float[/code] на языке шейдеров."

msgid ""
"A hint applied to the uniform, which controls the values it can take when set "
"through the Inspector."
msgstr ""
"Подсказка, применяемая к униформе, которая управляет значениями, которые она "
"может принимать при установке через Инспектор."

msgid ""
"Minimum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
"Минимальное значение для подсказок диапазона. Используется, если [member "
"hint] установлен на [constant HINT_RANGE] или [constant HINT_RANGE_STEP]."

msgid ""
"Maximum value for range hints. Used if [member hint] is set to [constant "
"HINT_RANGE] or [constant HINT_RANGE_STEP]."
msgstr ""
"Максимальное значение для подсказок диапазона. Используется, если [member "
"hint] установлен на [constant HINT_RANGE] или [constant HINT_RANGE_STEP]."

msgid ""
"Step (increment) value for the range hint with step. Used if [member hint] is "
"set to [constant HINT_RANGE_STEP]."
msgstr ""
"Значение шага (приращения) для подсказки диапазона с шагом. Используется, "
"если [member hint] установлен в [constant HINT_RANGE_STEP]."

msgid "No hint used."
msgstr "Нет подсказки."

msgid ""
"A range hint for scalar value, which limits possible input values between "
"[member min] and [member max]. Translated to [code]hint_range(min, max)[/"
"code] in shader code."
msgstr ""
"Подсказка диапазона для скалярного значения, которая ограничивает возможные "
"входные значения между [member min] и [member max]. Переводится как "
"[code]hint_range(min, max)[/code] в коде шейдера."

msgid ""
"A range hint for scalar value with step, which limits possible input values "
"between [member min] and [member max], with a step (increment) of [member "
"step]). Translated to [code]hint_range(min, max, step)[/code] in shader code."
msgstr ""
"Подсказка диапазона для скалярного значения с шагом, которая ограничивает "
"возможные входные значения между [member min] и [member max] с шагом "
"(приращением) [member step]). Переводится как [code]hint_range(min, max, step)"
"[/code] в коде шейдера."

msgid "Represents the size of the [enum Hint] enum."
msgstr "Представляет размер перечисления [enum Hint]."

msgid ""
"A frame other visual shader nodes can be attached to for better organization."
msgstr ""
"Рамка, к которой можно прикрепить другие узлы визуального шейдера для лучшей "
"организации."

msgid ""
"A rectangular frame that can be used to group visual shader nodes together to "
"improve organization.\n"
"Nodes attached to the frame will move with it when it is dragged and it can "
"automatically resize to enclose all attached nodes.\n"
"Its title, description and color can be customized."
msgstr ""
"Прямоугольная рамка, которую можно использовать для группировки узлов "
"визуального шейдера для улучшения организации.\n"
"Узлы, прикрепленные к рамке, будут перемещаться вместе с ней при ее "
"перетаскивании, и она может автоматически изменять размер, чтобы охватить все "
"прикрепленные узлы.\n"
"Ее заголовок, описание и цвет можно настроить."

msgid ""
"Adds a node to the list of nodes attached to the frame. Should not be called "
"directly, use the [method VisualShader.attach_node_to_frame] method instead."
msgstr ""
"Добавляет узел в список узлов, прикрепленных к фрейму. Не следует вызывать "
"напрямую, вместо этого используйте метод [method "
"VisualShader.attach_node_to_frame]."

msgid ""
"Removes a node from the list of nodes attached to the frame. Should not be "
"called directly, use the [method VisualShader.detach_node_from_frame] method "
"instead."
msgstr ""
"Удаляет узел из списка узлов, прикрепленных к фрейму. Не следует вызывать "
"напрямую, вместо этого используйте метод [method "
"VisualShader.detach_node_from_frame]."

msgid "The list of nodes attached to the frame."
msgstr "Список узлов, прикрепленных к фрейму."

msgid ""
"If [code]true[/code], the frame will automatically resize to enclose all "
"attached nodes."
msgstr ""
"Если [code]true[/code], рамка автоматически изменит размер, чтобы охватить "
"все прикрепленные узлы."

msgid ""
"If [code]true[/code], the frame will be tinted with the color specified in "
"[member tint_color]."
msgstr ""
"Если [code]true[/code], рамка будет окрашена в цвет, указанный в [member "
"tint_color]."

msgid "The title of the node."
msgstr "Название узла."

msgid "A Fresnel effect to be used within the visual shader graph."
msgstr ""
"Эффект Френеля, который будет использоваться в графе визуального шейдера."

msgid ""
"Returns falloff based on the dot product of surface normal and view direction "
"of camera (pass associated inputs to it)."
msgstr ""
"Возвращает падение на основе точечного произведения нормальной поверхности и "
"направления обзора камеры (пропустите соответствующие входы к ней)."

msgid ""
"A custom global visual shader graph expression written in Godot Shading "
"Language."
msgstr ""
"Пользовательское выражение графа глобального визуального шейдера, написанное "
"на языке шейдеров Godot."

msgid ""
"Custom Godot Shader Language expression, which is placed on top of the "
"generated shader. You can place various function definitions inside to call "
"later in [VisualShaderNodeExpression]s (which are injected in the main shader "
"functions). You can also declare varyings, uniforms and global constants."
msgstr ""
"Пользовательское выражение Godot Shader Language, которое размещается поверх "
"сгенерированного шейдера. Вы можете разместить различные определения функций "
"внутри для последующего вызова в [VisualShaderNodeExpression]s (которые "
"внедряются в основные функции шейдера). Вы также можете объявлять "
"variationings, uniforms и глобальные константы."

msgid ""
"Base class for a family of nodes with variable number of input and output "
"ports within the visual shader graph."
msgstr ""
"Базовый класс для семейства узлов с переменным числом входных и выходных "
"портов в графе визуального шейдера."

msgid "Currently, has no direct usage, use the derived classes instead."
msgstr ""
"В настоящее время не имеет прямого применения, вместо этого используйте "
"производные классы."

msgid ""
"Adds an input port with the specified [param type] (see [enum "
"VisualShaderNode.PortType]) and [param name]."
msgstr ""
"Добавляет входной порт с указанным [param type] (см. [enum "
"VisualShaderNode.PortType]) и [param name]."

msgid ""
"Adds an output port with the specified [param type] (see [enum "
"VisualShaderNode.PortType]) and [param name]."
msgstr ""
"Добавляет выходной порт с указанным [param type] (см. [enum "
"VisualShaderNode.PortType]) и [param name]."

msgid "Removes all previously specified input ports."
msgstr "Удаляет все ранее указанные входные порты."

msgid "Removes all previously specified output ports."
msgstr "Удаляет все ранее указанные выходные порты."

msgid ""
"Returns a free input port ID which can be used in [method add_input_port]."
msgstr ""
"Возвращает свободный идентификатор входного порта, который можно использовать "
"в [method add_input_port]."

msgid ""
"Returns a free output port ID which can be used in [method add_output_port]."
msgstr ""
"Возвращает идентификатор свободного выходного порта, который можно "
"использовать в [method add_output_port]."

msgid ""
"Returns the number of input ports in use. Alternative for [method "
"get_free_input_port_id]."
msgstr ""
"Возвращает количество используемых входных портов. Альтернатива для [method "
"get_free_input_port_id]."

msgid ""
"Returns a [String] description of the input ports as a colon-separated list "
"using the format [code]id,type,name;[/code] (see [method add_input_port])."
msgstr ""
"Возвращает [String] описание входных портов в виде списка, разделенного "
"двоеточиями, в формате [code]id,type,name;[/code] (см. [method "
"add_input_port])."

msgid ""
"Returns the number of output ports in use. Alternative for [method "
"get_free_output_port_id]."
msgstr ""
"Возвращает количество используемых выходных портов. Альтернатива для [method "
"get_free_output_port_id]."

msgid ""
"Returns a [String] description of the output ports as a colon-separated list "
"using the format [code]id,type,name;[/code] (see [method add_output_port])."
msgstr ""
"Возвращает [String] описание выходных портов в виде списка, разделенного "
"двоеточиями, в формате [code]id,type,name;[/code] (см. [method "
"add_output_port])."

msgid "Returns [code]true[/code] if the specified input port exists."
msgstr "Возвращает [code]true[/code], если указанный входной порт существует."

msgid "Returns [code]true[/code] if the specified output port exists."
msgstr "Возвращает [code]true[/code], если указанный входной порт существует."

msgid ""
"Returns [code]true[/code] if the specified port name does not override an "
"existed port name and is valid within the shader."
msgstr ""
"Возвращает [code]true[/code], если указанное имя порта не переопределяет "
"существующее имя порта и является допустимым в шейдере."

msgid "Removes the specified input port."
msgstr "Удаляет указанный входной порт."

msgid "Removes the specified output port."
msgstr "Удаляет указанный выходной порт."

msgid "Renames the specified input port."
msgstr "Переименовывает указанный входной порт."

msgid ""
"Sets the specified input port's type (see [enum VisualShaderNode.PortType])."
msgstr ""
"Устанавливает тип указанного входного порта (см. [enum "
"VisualShaderNode.PortType])."

msgid ""
"Defines all input ports using a [String] formatted as a colon-separated list: "
"[code]id,type,name;[/code] (see [method add_input_port])."
msgstr ""
"Определяет все входные порты с помощью [String], отформатированного как "
"список, разделенный двоеточиями: [code]id,type,name;[/code] (см. [method "
"add_input_port])."

msgid "Renames the specified output port."
msgstr "Переименовывает указанный выходной порт."

msgid ""
"Sets the specified output port's type (see [enum VisualShaderNode.PortType])."
msgstr ""
"Устанавливает тип указанного выходного порта (см. [enum "
"VisualShaderNode.PortType])."

msgid ""
"Defines all output ports using a [String] formatted as a colon-separated "
"list: [code]id,type,name;[/code] (see [method add_output_port])."
msgstr ""
"Определяет все выходные порты с помощью [String], отформатированной как "
"список, разделенный двоеточиями: [code]id,type,name;[/code] (см. [method "
"add_output_port])."

msgid ""
"Outputs a 3D vector based on the result of a floating-point comparison within "
"the visual shader graph."
msgstr ""
"Выводит трехмерный вектор на основе результата сравнения с плавающей точкой в "
"графе визуального шейдера."

msgid ""
"This visual shader node has six input ports:\n"
"- Port [b]1[/b] and [b]2[/b] provide the two floating-point numbers [code]a[/"
"code] and [code]b[/code] that will be compared.\n"
"- Port [b]3[/b] is the tolerance, which allows similar floating-point numbers "
"to be considered equal.\n"
"- Ports [b]4[/b], [b]5[/b], and [b]6[/b] are the possible outputs, returned "
"if [code]a == b[/code], [code]a > b[/code], or [code]a < b[/code] "
"respectively."
msgstr ""
"Этот узел визуального шейдера имеет шесть входных портов:\n"
"- Порт [b]1[/b] и [b]2[/b] предоставляют два числа с плавающей точкой "
"[code]a[/code] и [code]b[/code], которые будут сравниваться.\n"
"- Порт [b]3[/b] — это допуск, который позволяет считать одинаковые числа с "
"плавающей точкой равными.\n"
"- Порты [b]4[/b], [b]5[/b] и [b]6[/b] — это возможные выходы, возвращаемые, "
"если [code]a == b[/code], [code]a > b[/code] или [code]a < b[/code] "
"соответственно."

msgid "Represents the input shader parameter within the visual shader graph."
msgstr "Представляет входной параметр шейдера в графе визуального шейдера."

msgid ""
"Gives access to input variables (built-ins) available for the shader. See the "
"shading reference for the list of available built-ins for each shader type "
"(check [code]Tutorials[/code] section for link)."
msgstr ""
"Предоставляет доступ к входным переменным (встроенным), доступным для "
"шейдера. См. справочник по шейдингу для списка доступных встроенных функций "
"для каждого типа шейдера (проверьте раздел [code]Учебники[/code] для ссылки)."

msgid "Shading reference index"
msgstr "Индекс опорного затенения"

msgid ""
"Returns a translated name of the current constant in the Godot Shader "
"Language. E.g. [code]\"ALBEDO\"[/code] if the [member input_name] equal to "
"[code]\"albedo\"[/code]."
msgstr ""
"Возвращает переведенное имя текущей константы в Godot Shader Language. "
"Например, [code]\"ALBEDO\"[/code], если [member input_name] равен [code]"
"\"albedo\"[/code]."

msgid ""
"One of the several input constants in lower-case style like: \"vertex\" "
"([code]VERTEX[/code]) or \"point_size\" ([code]POINT_SIZE[/code])."
msgstr ""
"Одна из нескольких входных констант в нижнем регистре, например: «vertex» "
"([code]VERTEX[/code]) или «point_size» ([code]POINT_SIZE[/code])."

msgid "Emitted when input is changed via [member input_name]."
msgstr "Вызывается при изменении ввода через [member input_name]."

msgid "A scalar integer constant to be used within the visual shader graph."
msgstr ""
"Скалярная целочисленная константа, используемая в графе визуального шейдера."

msgid "Translated to [code skip-lint]int[/code] in the shader language."
msgstr "Переведено на [code skip-lint]int[/code] на языке шейдеров."

msgid "An integer constant which represents a state of this node."
msgstr "Целочисленная константа, представляющая состояние этого узла."

msgid "A scalar integer function to be used within the visual shader graph."
msgstr ""
"Скалярная целочисленная функция, используемая в графе визуального шейдера."

msgid ""
"Accept an integer scalar ([code]x[/code]) to the input port and transform it "
"according to [member function]."
msgstr ""
"Принять целочисленный скаляр ([code]x[/code]) на входной порт и преобразовать "
"его в соответствии с [member function]."

msgid ""
"Returns the result of bitwise [code]NOT[/code] operation on the integer. "
"Translates to [code]~a[/code] in the Godot Shader Language."
msgstr ""
"Возвращает результат побитовой операции [code]NOT[/code] над целым числом. "
"Переводится в [code]~a[/code] на языке шейдеров Godot."

msgid "An integer scalar operator to be used within the visual shader graph."
msgstr ""
"Целочисленный скалярный оператор, который будет использоваться в графе "
"визуального шейдера."

msgid ""
"Applies [member operator] to two integer inputs: [code]a[/code] and [code]b[/"
"code]."
msgstr ""
"Применяет [member operator] к двум целочисленным входам: [code]a[/code] и "
"[code]b[/code]."

msgid "Calculates the remainder of two numbers using [code]a % b[/code]."
msgstr "Вычисляет остаток двух чисел, используя [code]a % b[/code]."

msgid ""
"Returns the lesser of two numbers. Translates to [code]max(a, b)[/code] in "
"the Godot Shader Language."
msgstr ""
"Возвращает меньшее из двух чисел. Переводится в [code]max(a, b)[/code] на "
"языке шейдеров Godot."

msgid ""
"Returns the result of bitwise [code]AND[/code] operation on the integer. "
"Translates to [code]a & b[/code] in the Godot Shader Language."
msgstr ""
"Возвращает результат побитовой операции [code]AND[/code] над целым числом. "
"Переводится в [code]a & b[/code] на языке шейдеров Godot."

msgid ""
"Returns the result of bitwise [code]OR[/code] operation for two integers. "
"Translates to [code]a | b[/code] in the Godot Shader Language."
msgstr ""
"Возвращает результат побитовой операции [code]OR[/code] для двух целых чисел. "
"Переводится в [code]a | b[/code] на языке шейдеров Godot."

msgid ""
"Returns the result of bitwise [code]XOR[/code] operation for two integers. "
"Translates to [code]a ^ b[/code] in the Godot Shader Language."
msgstr ""
"Возвращает результат побитовой операции [code]XOR[/code] для двух целых "
"чисел. Переводится в [code]a ^ b[/code] на языке шейдеров Godot."

msgid ""
"Returns the result of bitwise left shift operation on the integer. Translates "
"to [code]a << b[/code] in the Godot Shader Language."
msgstr ""
"Возвращает результат побитовой операции сдвига влево целого числа. "
"Переводится в [code]a << b[/code] на языке шейдеров Godot."

msgid ""
"Returns the result of bitwise right shift operation on the integer. "
"Translates to [code]a >> b[/code] in the Godot Shader Language."
msgstr ""
"Возвращает результат побитовой операции сдвига вправо целого числа. "
"Переводится в [code]a >> b[/code] на языке шейдеров Godot."

msgid "A visual shader node for shader parameter (uniform) of type [int]."
msgstr "Узел визуального шейдера для параметра шейдера (uniform) типа [int]."

msgid ""
"A [VisualShaderNodeParameter] of type [int]. Offers additional customization "
"for range of accepted values."
msgstr ""
"[VisualShaderNodeParameter] типа [int]. Предлагает дополнительную настройку "
"для диапазона допустимых значений."

msgid ""
"Default value of this parameter, which will be used if not set externally. "
"[member default_value_enabled] must be enabled; defaults to [code]0[/code] "
"otherwise."
msgstr ""
"Значение этого параметра по умолчанию, которое будет использоваться, если не "
"задано извне. [member default_value_enabled] должен быть включен; в противном "
"случае по умолчанию используется [code]0[/code]."

msgid "If [code]true[/code], the node will have a custom default value."
msgstr ""
"Если [code]истина[/code], узел будет иметь пользовательское значение по "
"умолчанию."

msgid ""
"The names used for the enum select in the editor. [member hint] must be "
"[constant HINT_ENUM] for this to take effect."
msgstr ""
"Имена, используемые для перечисления, выбираются в редакторе. [member hint] "
"должна быть [constant HINT_ENUM], чтобы это вступило в силу."

msgid "Range hint of this node. Use it to customize valid parameter range."
msgstr ""
"Подсказка диапазона этого узла. Используйте ее для настройки допустимого "
"диапазона параметров."

msgid ""
"The maximum value this parameter can take. [member hint] must be either "
"[constant HINT_RANGE] or [constant HINT_RANGE_STEP] for this to take effect."
msgstr ""
"Максимальное значение, которое может принимать этот параметр. [member hint] "
"должен быть либо [constant HINT_RANGE], либо [constant HINT_RANGE_STEP], "
"чтобы это вступило в силу."

msgid ""
"The minimum value this parameter can take. [member hint] must be either "
"[constant HINT_RANGE] or [constant HINT_RANGE_STEP] for this to take effect."
msgstr ""
"Минимальное значение, которое может принимать этот параметр. [member hint] "
"должен быть либо [constant HINT_RANGE], либо [constant HINT_RANGE_STEP], "
"чтобы это вступило в силу."

msgid ""
"The step between parameter's values. Forces the parameter to be a multiple of "
"the given value. [member hint] must be [constant HINT_RANGE_STEP] for this to "
"take effect."
msgstr ""
"Шаг между значениями параметра. Заставляет параметр быть кратным заданному "
"значению. [member hint] должен быть [constant HINT_RANGE_STEP], чтобы это "
"вступило в силу."

msgid "The parameter will not constrain its value."
msgstr "Параметр не будет ограничивать свое значение."

msgid ""
"The parameter's value must be within the specified [member min]/[member max] "
"range."
msgstr ""
"Значение параметра должно находиться в указанном диапазоне [member min]/"
"[member max]."

msgid ""
"The parameter's value must be within the specified range, with the given "
"[member step] between values."
msgstr ""
"Значение параметра должно находиться в указанном диапазоне с заданным [member "
"step] между значениями."

msgid ""
"The parameter uses an enum to associate preset values to names in the editor."
msgstr ""
"Параметр использует перечисление для связывания предустановленных значений с "
"именами в редакторе."

msgid "A boolean comparison operator to be used within the visual shader graph."
msgstr ""
"Логический оператор сравнения, который будет использоваться в графе "
"визуального шейдера."

msgid ""
"Returns the boolean result of the comparison between [code]INF[/code] or "
"[code]NaN[/code] and a scalar parameter."
msgstr ""
"Возвращает логический результат сравнения между [code]INF[/code] или "
"[code]NaN[/code] и скалярным параметром."

msgid "The comparison function."
msgstr "Функция сравнения."

msgid "Comparison with [code]INF[/code] (Infinity)."
msgstr "Сравнение с [code]INF[/code] (Бесконечность)."

msgid ""
"Comparison with [code]NaN[/code] (Not a Number; indicates invalid numeric "
"results, such as division by zero)."
msgstr ""
"Сравнение с [code]NaN[/code] (не число; указывает на недопустимые числовые "
"результаты, такие как деление на ноль)."

msgid ""
"A visual shader node that returns the depth value of the DEPTH_TEXTURE node "
"in a linear space."
msgstr ""
"Узел визуального шейдера, который возвращает значение глубины узла "
"DEPTH_TEXTURE в линейном пространстве."

msgid "This node can be used in fragment shaders."
msgstr "Этот узел можно использовать во фрагментных шейдерах."

msgid "Linearly interpolates between two values within the visual shader graph."
msgstr ""
"Линейно интерполирует между двумя значениями в графе визуального шейдера."

msgid "Translates to [code]mix(a, b, weight)[/code] in the shader language."
msgstr "Переводится как [code]mix(a, b, weight)[/code] на языке шейдеров."

msgid ""
"The [code]a[/code] and [code]b[/code] ports use a 2D vector type. The "
"[code]weight[/code] port uses a scalar type."
msgstr ""
"Порты [code]a[/code] и [code]b[/code] используют тип 2D-вектора. Порт "
"[code]weight[/code] использует тип скаляра."

msgid ""
"The [code]a[/code] and [code]b[/code] ports use a 3D vector type. The "
"[code]weight[/code] port uses a scalar type."
msgstr ""
"Порты [code]a[/code] и [code]b[/code] используют тип 3D-вектора. Порт "
"[code]weight[/code] использует тип скаляра."

msgid ""
"The [code]a[/code] and [code]b[/code] ports use a 4D vector type. The "
"[code]weight[/code] port uses a scalar type."
msgstr ""
"Порты [code]a[/code] и [code]b[/code] используют векторный тип 4D. Порт "
"[code]weight[/code] использует скалярный тип."

msgid "Performs a fused multiply-add operation within the visual shader graph."
msgstr ""
"Выполняет объединенную операцию умножения-сложения в графе визуального "
"шейдера."

msgid "Uses three operands to compute [code](a * b + c)[/code] expression."
msgstr ""
"Использует три операнда для вычисления выражения [code](a * b + c)[/code]."

msgid "A floating-point scalar type."
msgstr "Скалярный тип с плавающей точкой."

msgid ""
"Calculates an outer product of two vectors within the visual shader graph."
msgstr ""
"Вычисляет внешнее произведение двух векторов в графе визуального шейдера."

msgid ""
"[code]OuterProduct[/code] treats the first parameter [code]c[/code] as a "
"column vector (matrix with one column) and the second parameter [code]r[/"
"code] as a row vector (matrix with one row) and does a linear algebraic "
"matrix multiply [code]c * r[/code], yielding a matrix whose number of rows is "
"the number of components in [code]c[/code] and whose number of columns is the "
"number of components in [code]r[/code]."
msgstr ""
"[code]OuterProduct[/code] обрабатывает первый параметр [code]c[/code] как "
"вектор-столбец (матрицу с одним столбцом), а второй параметр [code]r[/code] "
"как вектор-строку (матрицу с одной строкой) и выполняет линейное "
"алгебраическое умножение матриц [code]c * r[/code], в результате чего "
"получается матрица, количество строк которой равно количеству компонентов в "
"[code]c[/code], а количество столбцов равно количеству компонентов в [code]r[/"
"code]."

msgid "Represents the output shader parameters within the visual shader graph."
msgstr "Представляет выходные параметры шейдера в графе визуального шейдера."

msgid ""
"This visual shader node is present in all shader graphs in form of \"Output\" "
"block with multiple output value ports."
msgstr ""
"Этот узел визуального шейдера присутствует во всех шейдерных графах в виде "
"блока «Выход» с несколькими портами выходных значений."

msgid "A base type for the parameters within the visual shader graph."
msgstr "Базовый тип для параметров в графе визуального шейдера."

msgid ""
"A parameter represents a variable in the shader which is set externally, i.e. "
"from the [ShaderMaterial]. Parameters are exposed as properties in the "
"[ShaderMaterial] and can be assigned from the Inspector or from a script."
msgstr ""
"Параметр представляет собой переменную в шейдере, которая задается извне, т. "
"е. из [ShaderMaterial]. Параметры представлены как свойства в "
"[ShaderMaterial] и могут быть назначены из Инспектора или из скрипта."

msgid ""
"Name of the parameter, by which it can be accessed through the "
"[ShaderMaterial] properties."
msgstr ""
"Имя параметра, по которому к нему можно получить доступ через свойства "
"[ShaderMaterial]."

msgid "Defines the scope of the parameter."
msgstr "Определяет область действия параметра."

msgid "The parameter will be tied to the [ShaderMaterial] using this shader."
msgstr "Параметр будет привязан к [ShaderMaterial] с помощью этого шейдера."

msgid "The parameter will use a global value, defined in Project Settings."
msgstr ""
"Параметр будет использовать глобальное значение, определенное в настройках "
"проекта."

msgid ""
"The parameter will be tied to the node with attached [ShaderMaterial] using "
"this shader."
msgstr ""
"Параметр будет привязан к узлу с прикрепленным [ShaderMaterial] с помощью "
"этого шейдера."

msgid "Represents the size of the [enum Qualifier] enum."
msgstr "Представляет размер перечисления [enum Qualifier]."

msgid "A reference to an existing [VisualShaderNodeParameter]."
msgstr "Ссылка на существующий [VisualShaderNodeParameter]."

msgid ""
"Creating a reference to a [VisualShaderNodeParameter] allows you to reuse "
"this parameter in different shaders or shader stages easily."
msgstr ""
"Создание ссылки на [VisualShaderNodeParameter] позволяет легко повторно "
"использовать этот параметр в разных шейдерах или на разных этапах шейдера."

msgid "The name of the parameter which this reference points to."
msgstr "Имя параметра, на который указывает эта ссылка."

msgid "A visual shader node that accelerates particles."
msgstr "Узел визуального шейдера, ускоряющий частицы."

msgid ""
"Particle accelerator can be used in \"process\" step of particle shader. It "
"will accelerate the particles. Connect it to the Velocity output port."
msgstr ""
"Ускоритель частиц можно использовать на этапе \"process\" шейдера частиц. Он "
"ускорит частицы. Подключите его к выходному порту Velocity."

msgid "Defines in what manner the particles will be accelerated."
msgstr "Определяет, каким образом будут ускоряться частицы."

msgid "The particles will be accelerated based on their velocity."
msgstr "Частицы будут ускоряться в зависимости от их скорости."

msgid "The particles will be accelerated towards or away from the center."
msgstr "Частицы будут ускоряться по направлению к центру или от него."

msgid ""
"The particles will be accelerated tangentially to the radius vector from "
"center to their position."
msgstr ""
"Частицы будут ускоряться по касательной к радиус-вектору от центра к своему "
"местоположению."

msgid "Represents the size of the [enum Mode] enum."
msgstr "Представляет размер перечисления [enum Mode]."

msgid "A visual shader node that makes particles emitted in a box shape."
msgstr ""
"Узел визуального шейдера, создающий частицы, испускаемые в форме "
"прямоугольника."

msgid ""
"[VisualShaderNodeParticleEmitter] that makes the particles emitted in box "
"shape with the specified extents."
msgstr ""
"[VisualShaderNodeParticleEmitter], который создает частицы, испускаемые в "
"форме прямоугольника с указанными размерами."

msgid "A visual shader node that makes particles move in a cone shape."
msgstr ""
"Узел визуального шейдера, который заставляет частицы двигаться в форме конуса."

msgid ""
"This node can be used in \"start\" step of particle shader. It defines the "
"initial velocity of the particles, making them move in cone shape starting "
"from the center, with a given spread."
msgstr ""
"Этот узел может быть использован на этапе \"start\" шейдера частиц. Он "
"определяет начальную скорость частиц, заставляя их двигаться в форме конуса, "
"начиная с центра, с заданным разбросом."

msgid "A visual shader node that forces to emit a particle from a sub-emitter."
msgstr ""
"Узел визуального шейдера, который заставляет испускать частицу из суб-"
"эмиттера."

msgid ""
"This node internally calls [code]emit_subparticle[/code] shader method. It "
"will emit a particle from the configured sub-emitter and also allows to "
"customize how its emitted. Requires a sub-emitter assigned to the particles "
"node with this shader."
msgstr ""
"Этот узел внутренне вызывает метод шейдера [code]emit_subparticle[/code]. Он "
"испустит частицу из настроенного суб-передатчика и также позволяет настроить "
"способ ее испускания. Требуется суб-передатчика, назначенный узлу частиц с "
"этим шейдером."

msgid ""
"Flags used to override the properties defined in the sub-emitter's process "
"material."
msgstr ""
"Флаги, используемые для переопределения свойств, определенных в "
"технологическом материале суб-передатчика."

msgid "If enabled, the particle starts with the position defined by this node."
msgstr ""
"Если эта опция включена, частица начинает движение с позиции, определяемой "
"этим узлом."

msgid ""
"If enabled, the particle starts with the rotation and scale defined by this "
"node."
msgstr ""
"Если эта опция включена, частица запускается с вращением и масштабом, "
"определенными этим узлом."

msgid "If enabled,the particle starts with the velocity defined by this node."
msgstr ""
"Если эта опция включена, частица начинает движение со скоростью, определяемой "
"этим узлом."

msgid "If enabled, the particle starts with the color defined by this node."
msgstr ""
"Если эта опция включена, частица запускается с цветом, определенным этим "
"узлом."

msgid ""
"If enabled, the particle starts with the [code]CUSTOM[/code] data defined by "
"this node."
msgstr ""
"Если включено, частица запускается с данными [code]CUSTOM[/code], "
"определенными этим узлом."

msgid "A base class for particle emitters."
msgstr "Базовый класс для излучателей частиц."

msgid ""
"Particle emitter nodes can be used in \"start\" step of particle shaders and "
"they define the starting position of the particles. Connect them to the "
"Position output port."
msgstr ""
"Узлы-излучатели частиц могут использоваться на этапе \"старта\" шейдеров "
"частиц, и они определяют начальную позицию частиц. Подключите их к выходному "
"порту Position."

msgid ""
"If [code]true[/code], the result of this emitter is projected to 2D space. By "
"default it is [code]false[/code] and meant for use in 3D space."
msgstr ""
"Если [code]true[/code], результат этого эмиттера проецируется в 2D-"
"пространство. По умолчанию это [code]false[/code] и предназначено для "
"использования в 3D-пространстве."

msgid ""
"A visual shader node that makes particles emitted in a shape defined by a "
"[Mesh]."
msgstr ""
"Узел визуального шейдера, который создает частицы, испускаемые в форме, "
"определяемой [Mesh]."

msgid ""
"[VisualShaderNodeParticleEmitter] that makes the particles emitted in a shape "
"of the assigned [member mesh]. It will emit from the mesh's surfaces, either "
"all or only the specified one."
msgstr ""
"[VisualShaderNodeParticleEmitter], который заставляет частицы испускаться в "
"форме назначенной [member mesh]. Он будет испускаться из поверхностей сетки, "
"либо всех, либо только из указанной."

msgid "The [Mesh] that defines emission shape."
msgstr "[Mesh], определяющая форму излучения."

msgid ""
"Index of the surface that emits particles. [member use_all_surfaces] must be "
"[code]false[/code] for this to take effect."
msgstr ""
"Индекс поверхности, испускающей частицы. [member use_all_surfaces] должен "
"быть [code]false[/code], чтобы это вступило в силу."

msgid ""
"If [code]true[/code], the particles will emit from all surfaces of the mesh."
msgstr ""
"Если [code]true[/code], частицы будут испускаться со всех поверхностей сетки."

msgid ""
"A visual shader helper node for multiplying position and rotation of "
"particles."
msgstr ""
"Вспомогательный узел визуального шейдера для умножения положения и вращения "
"частиц."

msgid ""
"This node helps to multiply a position input vector by rotation using "
"specific axis. Intended to work with emitters."
msgstr ""
"Этот узел помогает умножить вектор входного положения на вращение с "
"использованием определенной оси. Предназначен для работы с излучателями."

msgid ""
"If [code]true[/code], the angle will be interpreted in degrees instead of "
"radians."
msgstr ""
"Если [code]true[/code], угол будет интерпретироваться в градусах, а не в "
"радианах."

msgid "Visual shader node that defines output values for particle emitting."
msgstr ""
"Узел визуального шейдера, который определяет выходные значения для испускания "
"частиц."

msgid ""
"This node defines how particles are emitted. It allows to customize e.g. "
"position and velocity. Available ports are different depending on which "
"function this node is inside (start, process, collision) and whether custom "
"data is enabled."
msgstr ""
"Этот узел определяет, как испускаются частицы. Он позволяет настраивать, "
"например, положение и скорость. Доступные порты различаются в зависимости от "
"того, в какой функции находится этот узел (запуск, процесс, столкновение) и "
"включены ли пользовательские данные."

msgid "Visual shader node for randomizing particle values."
msgstr "Узел визуального шейдера для рандомизации значений частиц."

msgid ""
"Randomness node will output pseudo-random values of the given type based on "
"the specified minimum and maximum values."
msgstr ""
"Узел случайности будет выводить псевдослучайные значения заданного типа на "
"основе указанных минимальных и максимальных значений."

msgid "A visual shader node that makes particles emitted in a ring shape."
msgstr "Узел визуального шейдера, создающий испускаемые частицы в форме кольца."

msgid ""
"[VisualShaderNodeParticleEmitter] that makes the particles emitted in ring "
"shape with the specified inner and outer radii and height."
msgstr ""
"[VisualShaderNodeParticleEmitter], который заставляет частицы испускаться в "
"форме кольца с заданными внутренним и внешним радиусами и высотой."

msgid "A visual shader node that makes particles emitted in a sphere shape."
msgstr ""
"Узел визуального шейдера, который создает испускаемые частицы в форме сферы."

msgid ""
"[VisualShaderNodeParticleEmitter] that makes the particles emitted in sphere "
"shape with the specified inner and outer radii."
msgstr ""
"[VisualShaderNodeParticleEmitter], который создает испускаемые частицы в "
"форме сферы с заданными внутренним и внешним радиусами."

msgid "A visual shader node representing proximity fade effect."
msgstr ""
"Узел визуального шейдера, представляющий эффект затухания при приближении."

msgid ""
"The proximity fade effect fades out each pixel based on its distance to "
"another object."
msgstr ""
"Эффект затухания сближения. Затухает каждый пиксель в зависимости от "
"расстояния до другого объекта."

msgid "A visual shader node that generates a pseudo-random scalar."
msgstr "Узел визуального шейдера, генерирующий псевдослучайный скаляр."

msgid ""
"Random range node will output a pseudo-random scalar value in the specified "
"range, based on the seed. The value is always the same for the given seed and "
"range, so you should provide a changing input, e.g. by using time."
msgstr ""
"Узел случайного диапазона выведет псевдослучайное скалярное значение в "
"указанном диапазоне на основе начального значения. Значение всегда одинаково "
"для заданного начального значения и диапазона, поэтому следует предоставить "
"изменяющийся вход, например, используя время."

msgid "A visual shader node for remap function."
msgstr "Узел визуального шейдера для функции переназначения."

msgid ""
"Remap will transform the input range into output range, e.g. you can change a "
"[code]0..1[/code] value to [code]-2..2[/code] etc. See [method "
"@GlobalScope.remap] for more details."
msgstr ""
"Remap преобразует входной диапазон в выходной диапазон, например, вы можете "
"изменить значение [code]0..1[/code] на [code]-2..2[/code] и т. д. Более "
"подробную информацию см. в [method @GlobalScope.remap]."

msgid ""
"The [code]value[/code] port uses a 2D vector type, while the [code]input min[/"
"code], [code]input max[/code], [code]output min[/code], and [code]output max[/"
"code] ports use a floating-point scalar type."
msgstr ""
"Порт [code]value[/code] использует тип 2D-вектора, тогда как порты "
"[code]input min[/code], [code]input max[/code], [code]output min[/code] и "
"[code]output max[/code] используют скалярный тип с плавающей точкой."

msgid ""
"The [code]value[/code] port uses a 3D vector type, while the [code]input min[/"
"code], [code]input max[/code], [code]output min[/code], and [code]output max[/"
"code] ports use a floating-point scalar type."
msgstr ""
"Порт [code]value[/code] использует тип 3D-вектора, тогда как порты "
"[code]input min[/code], [code]input max[/code], [code]output min[/code] и "
"[code]output max[/code] используют скалярный тип с плавающей точкой."

msgid ""
"The [code]value[/code] port uses a 4D vector type, while the [code]input min[/"
"code], [code]input max[/code], [code]output min[/code], and [code]output max[/"
"code] ports use a floating-point scalar type."
msgstr ""
"Порт [code]value[/code] использует векторный тип 4D, тогда как порты "
"[code]input min[/code], [code]input max[/code], [code]output min[/code] и "
"[code]output max[/code] используют скалярный тип с плавающей точкой."

msgid ""
"A node that allows rerouting a connection within the visual shader graph."
msgstr "Узел, позволяющий перенаправить соединение в графе визуального шейдера."

msgid ""
"Automatically adapts its port type to the type of the incoming connection and "
"ensures valid connections."
msgstr ""
"Автоматически адаптирует тип порта к типу входящего соединения и обеспечивает "
"допустимые соединения."

msgid "Returns the port type of the reroute node."
msgstr "Возвращает тип порта узла перенаправления."

msgid "Base class for resizable nodes in a visual shader graph."
msgstr ""
"Базовый класс для изменяемых по размеру узлов в графе визуального шейдера."

msgid ""
"Resizable nodes have a handle that allows the user to adjust their size as "
"needed."
msgstr ""
"Узлы с изменяемыми размерами имеют ручку, которая позволяет пользователю "
"изменять их размер по мере необходимости."

msgid "The size of the node in the visual shader graph."
msgstr "Размер узла в графе визуального шейдера."

msgid ""
"A visual shader node that modifies the rotation of the object using a "
"rotation matrix."
msgstr ""
"Узел визуального шейдера, который изменяет поворот объекта с помощью матрицы "
"поворота."

msgid ""
"RotationByAxis node will transform the vertices of a mesh with specified axis "
"and angle in radians. It can be used to rotate an object in an arbitrary axis."
msgstr ""
"Узел RotationByAxis преобразует вершины сетки с указанной осью и углом в "
"радианах. Его можно использовать для вращения объекта вокруг произвольной оси."

msgid ""
"A base node for nodes which samples 3D textures in the visual shader graph."
msgstr ""
"Базовый узел для узлов, которые выбирают 3D-текстуры в графе визуального "
"шейдера."

msgid "A virtual class, use the descendants instead."
msgstr "Виртуальный класс, вместо него используйте потомков."

msgid "An input source type."
msgstr "Тип источника входных данных."

msgid "Creates internal uniform and provides a way to assign it within node."
msgstr ""
"Создает внутреннюю униформу и предоставляет способ ее назначения внутри узла."

msgid "Use the uniform texture from sampler port."
msgstr "Используйте однородную текстуру из порта сэмплера."

msgid ""
"A visual shader node that unpacks the screen normal texture in World Space."
msgstr ""
"Узел визуального шейдера, который распаковывает текстуру нормали экрана в "
"мировом пространстве (World Space)."

msgid "The ScreenNormalWorldSpace node allows to create outline effects."
msgstr "Узел ScreenNormalWorldSpace позволяет создавать эффекты контура."

msgid ""
"A function to convert screen UV to an SDF (signed-distance field), to be used "
"within the visual shader graph."
msgstr ""
"Функция преобразования UV-цвета экрана в SDF (поле знакового расстояния) для "
"использования в графе визуального шейдера."

msgid ""
"Translates to [code]screen_uv_to_sdf(uv)[/code] in the shader language. If "
"the UV port isn't connected, [code]SCREEN_UV[/code] is used instead."
msgstr ""
"Переводится в [code]screen_uv_to_sdf(uv)[/code] на языке шейдеров. Если порт "
"UV не подключен, вместо него используется [code]SCREEN_UV[/code]."

msgid "SDF raymarching algorithm to be used within the visual shader graph."
msgstr ""
"Алгоритм SDF raymarching, который будет использоваться в графе визуального "
"шейдера."

msgid ""
"Casts a ray against the screen SDF (signed-distance field) and returns the "
"distance travelled."
msgstr ""
"Направляет луч на экранное поле SDF (знаковое поле расстояний) и возвращает "
"пройденное расстояние."

msgid ""
"A function to convert an SDF (signed-distance field) to screen UV, to be used "
"within the visual shader graph."
msgstr ""
"Функция для преобразования SDF (поле знакового расстояния) в экранную UV-"
"развертку для использования в графе визуального шейдера."

msgid ""
"Translates to [code]sdf_to_screen_uv(sdf_pos)[/code] in the shader language."
msgstr "Переводится в [code]sdf_to_screen_uv(sdf_pos)[/code] на языке шейдеров."

msgid "Calculates a SmoothStep function within the visual shader graph."
msgstr "Вычисляет функцию SmoothStep в графе визуального шейдера."

msgid ""
"Translates to [code]smoothstep(edge0, edge1, x)[/code] in the shader "
"language.\n"
"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge0[/code] "
"and [code]1.0[/code] if [code]x[/code] is larger than [code]edge1[/code]. "
"Otherwise, the return value is interpolated between [code]0.0[/code] and "
"[code]1.0[/code] using Hermite polynomials."
msgstr ""
"Переводится в [code]smoothstep(edge0, edge1, x)[/code] на языке шейдеров.\n"
"Возвращает [code]0.0[/code], если [code]x[/code] меньше, чем [code]edge0[/"
"code], и [code]1.0[/code], если [code]x[/code] больше, чем [code]edge1[/"
"code]. В противном случае возвращаемое значение интерполируется между "
"[code]0.0[/code] и [code]1.0[/code] с использованием полиномов Эрмита."

msgid ""
"The [code]x[/code] port uses a 2D vector type. The first two ports use a "
"floating-point scalar type."
msgstr ""
"Порт [code]x[/code] использует тип 2D-вектора. Первые два порта используют "
"скалярный тип с плавающей точкой."

msgid ""
"The [code]x[/code] port uses a 3D vector type. The first two ports use a "
"floating-point scalar type."
msgstr ""
"Порт [code]x[/code] использует тип 3D-вектора. Первые два порта используют "
"скалярный тип с плавающей точкой."

msgid "Calculates a Step function within the visual shader graph."
msgstr "Вычисляет функцию Step в графе визуального шейдера."

msgid ""
"Translates to [code]step(edge, x)[/code] in the shader language.\n"
"Returns [code]0.0[/code] if [code]x[/code] is smaller than [code]edge[/code] "
"and [code]1.0[/code] otherwise."
msgstr ""
"Переводится в [code]step(edge, x)[/code] на языке шейдера.\n"
"Возвращает [code]0.0[/code], если [code]x[/code] меньше, чем [code]edge[/"
"code], и [code]1.0[/code] в противном случае."

msgid ""
"The [code]x[/code] port uses a 2D vector type, while the [code]edge[/code] "
"port uses a floating-point scalar type."
msgstr ""
"Порт [code]x[/code] использует тип 2D-вектора, тогда как порт [code]edge[/"
"code] использует скалярный тип с плавающей точкой."

msgid ""
"The [code]x[/code] port uses a 3D vector type, while the [code]edge[/code] "
"port uses a floating-point scalar type."
msgstr ""
"Порт [code]x[/code] использует тип 3D-вектора, тогда как порт [code]edge[/"
"code] использует скалярный тип с плавающей точкой."

msgid "A selector function for use within the visual shader graph."
msgstr "Функция выбора для использования в графе визуального шейдера."

msgid ""
"Returns an associated value of the [member op_type] type if the provided "
"boolean value is [code]true[/code] or [code]false[/code]."
msgstr ""
"Возвращает связанное значение типа [member op_type], если предоставленное "
"логическое значение равно [code]true[/code] или [code]false[/code]."

msgid "A transform type."
msgstr "Тип преобразования."

msgid "Performs a 2D texture lookup within the visual shader graph."
msgstr "Выполняет поиск 2D-текстуры в графе визуального шейдера."

msgid ""
"Performs a lookup operation on the provided texture, with support for "
"multiple texture sources to choose from."
msgstr ""
"Выполняет операцию поиска по предоставленной текстуре с поддержкой выбора из "
"нескольких источников текстур."

msgid "Determines the source for the lookup."
msgstr "Определяет источник для поиска."

msgid "The source texture, if needed for the selected [member source]."
msgstr "Исходная текстура, если требуется для выбранного [member source]."

msgid ""
"Specifies the type of the texture if [member source] is set to [constant "
"SOURCE_TEXTURE]."
msgstr ""
"Указывает тип текстуры, если [member source] установлен в [constant "
"SOURCE_TEXTURE]."

msgid "Use the texture given as an argument for this function."
msgstr "Используйте текстуру, указанную в качестве аргумента для этой функции."

msgid "Use the current viewport's texture as the source."
msgstr "Использовать текстуру текущего окна просмотра в качестве источника."

msgid ""
"Use the texture from this shader's texture built-in (e.g. a texture of a "
"[Sprite2D])."
msgstr ""
"Используйте текстуру из встроенной текстуры этого шейдера (например, текстуру "
"[Sprite2D])."

msgid "Use the texture from this shader's normal map built-in."
msgstr "Используйте текстуру из встроенной карты нормалей этого шейдера."

msgid ""
"Use the depth texture captured during the depth prepass. Only available when "
"the depth prepass is used (i.e. in spatial shaders and in the forward_plus or "
"gl_compatibility renderers)."
msgstr ""
"Использовать текстуру глубины, захваченную во время предварительного прохода "
"глубины. Доступно только при использовании предварительного прохода глубины "
"(т. е. в пространственных шейдерах и в рендерах forward_plus или "
"gl_compatibility)."

msgid "Use the texture provided in the input port for this function."
msgstr ""
"Используйте текстуру, предоставленную во входном порту для этой функции."

msgid ""
"Use the normal buffer captured during the depth prepass. Only available when "
"the normal-roughness buffer is available (i.e. in spatial shaders and in the "
"forward_plus renderer)."
msgstr ""
"Использовать нормальный буфер, захваченный во время предварительного прохода "
"глубины. Доступно только при наличии буфера нормальной шероховатости (т. е. в "
"пространственных шейдерах и в рендерере forward_plus)."

msgid ""
"Use the roughness buffer captured during the depth prepass. Only available "
"when the normal-roughness buffer is available (i.e. in spatial shaders and in "
"the forward_plus renderer)."
msgstr ""
"Использовать буфер шероховатости, захваченный во время предварительного "
"прохода глубины. Доступно только при наличии буфера normal-roughness (т. е. в "
"пространственных (spatial) шейдерах и в рендерере forward_plus)."

msgid "A 2D texture uniform array to be used within the visual shader graph."
msgstr ""
"Равномерный массив двумерной текстуры, который будет использоваться в графе "
"визуального шейдера."

msgid ""
"Translated to [code]uniform sampler2DArray[/code] in the shader language."
msgstr "Переведено в [code]uniform sampler2DArray[/code] на языке шейдеров."

msgid ""
"A source texture array. Used if [member VisualShaderNodeSample3D.source] is "
"set to [constant VisualShaderNodeSample3D.SOURCE_TEXTURE]."
msgstr ""
"Массив исходной текстуры. Используется, если [member "
"VisualShaderNodeSample3D.source] установлен в [constant "
"VisualShaderNodeSample3D.SOURCE_TEXTURE]."

msgid ""
"A visual shader node for shader parameter (uniform) of type [Texture2DArray]."
msgstr ""
"Узел визуального шейдера для параметра шейдера (uniform) типа "
"[Texture2DArray]."

msgid ""
"This parameter allows to provide a collection of textures for the shader. You "
"can use [VisualShaderNodeTexture2DArray] to extract the textures from array."
msgstr ""
"Этот параметр позволяет предоставить коллекцию текстур для шейдера. Вы можете "
"использовать [VisualShaderNodeTexture2DArray] для извлечения текстур из "
"массива."

msgid "Provides a 2D texture parameter within the visual shader graph."
msgstr "Предоставляет параметр 2D-текстуры в графе визуального шейдера."

msgid "Translated to [code]uniform sampler2D[/code] in the shader language."
msgstr "Переведено в [code]uniform sampler2D[/code] на языке шейдеров."

msgid "Performs a 3D texture lookup within the visual shader graph."
msgstr "Выполняет поиск 3D-текстуры в графе визуального шейдера."

msgid ""
"A source texture. Used if [member VisualShaderNodeSample3D.source] is set to "
"[constant VisualShaderNodeSample3D.SOURCE_TEXTURE]."
msgstr ""
"Исходная текстура. Используется, если [member "
"VisualShaderNodeSample3D.source] установлен в [constant "
"VisualShaderNodeSample3D.SOURCE_TEXTURE]."

msgid "Provides a 3D texture parameter within the visual shader graph."
msgstr "Предоставляет параметр 3D-текстуры в графе визуального шейдера."

msgid "Translated to [code]uniform sampler3D[/code] in the shader language."
msgstr "Переведено в [code]uniform sampler3D[/code] на языке шейдеров."

msgid "Performs a uniform texture lookup within the visual shader graph."
msgstr "Выполняет равномерный поиск текстуры в графе визуального шейдера."

msgid ""
"Performs a lookup operation on the texture provided as a uniform for the "
"shader."
msgstr ""
"Выполняет операцию поиска по текстуре, предоставленной в качестве единой для "
"шейдера."

msgid "Sets the default color if no texture is assigned to the uniform."
msgstr "Устанавливает цвет по умолчанию, если униформе не назначена текстура."

msgid "Sets the texture filtering mode."
msgstr "Устанавливает режим фильтрации текстур."

msgid "Sets the texture repeating mode."
msgstr "Устанавливает режим повторения текстуры."

msgid ""
"Sets the texture source mode. Used for reading from the screen, depth, or "
"normal_roughness texture."
msgstr ""
"Устанавливает режим источника текстуры. Используется для чтения с экрана, "
"глубины или текстуры normal_roughness."

msgid ""
"Adds [code]hint_anisotropy[/code] as hint to the uniform declaration to use "
"for a flowmap."
msgstr ""
"Добавляет [code]hint_anisotropy[/code] в качестве подсказки к объявлению "
"uniform для использования в flowmap."

msgid "Defaults to fully opaque white color."
msgstr "По умолчанию используется полностью непрозрачный белый цвет."

msgid "Defaults to fully opaque black color."
msgstr "По умолчанию используется полностью непрозрачный черный цвет."

msgid "Defaults to fully transparent black color."
msgstr "По умолчанию используется полностью прозрачный черный цвет."

msgid "Represents the size of the [enum ColorDefault] enum."
msgstr "Представляет размер перечисления [enum ColorDefault]."

msgid ""
"Sample the texture using the filter determined by the node this shader is "
"attached to."
msgstr ""
"Выбрать текстуру, используя фильтр, определяемый узлом, к которому прикреплен "
"этот шейдер."

msgid ""
"The texture filter reads from the nearest pixel and blends between 2 mipmaps "
"(or uses the nearest mipmap if [member ProjectSettings.rendering/textures/"
"default_filters/use_nearest_mipmap_filter] is [code]true[/code]) based on the "
"angle between the surface and the camera view. This makes the texture look "
"pixelated from up close, and smooth from a distance. Anisotropic filtering "
"improves texture quality on surfaces that are almost in line with the camera, "
"but is slightly slower. The anisotropic filtering level can be changed by "
"adjusting [member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level].\n"
"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
"FILTER_NEAREST_MIPMAP] is usually more appropriate in this case."
msgstr ""
"Фильтр текстур считывает данные из ближайшего пикселя и смешивает две MIP-"
"карты (или использует ближайшее MIP-карту, если [member "
"ProjectSettings.rendering/textures/default_filters/use_nearest_mipmap_filter] "
"имеет значение [code]true[/code]) на основе угла между поверхностью и "
"изображением камеры. Это делает текстуру пикселизированной вблизи и гладкой "
"на расстоянии. Анизотропная фильтрация улучшает качество текстуры на "
"поверхностях, которые находятся почти на одной линии с камерой, но работает "
"немного медленнее. Уровень анизотропной фильтрации можно изменить, настроив "
"[member ProjectSettings.rendering/textures/default_filters/"
"anisotropic_filtering_level].\n"
"[b]Примечание:[/b] Этот текстурный фильтр редко бывает полезен в 2D-проектах. "
"[constant FILTER_NEAREST_MIPMAP] обычно более подходит в этом случае."

msgid ""
"The texture filter blends between the nearest 4 pixels and blends between 2 "
"mipmaps (or uses the nearest mipmap if [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] is [code]true[/code]) "
"based on the angle between the surface and the camera view. This makes the "
"texture look smooth from up close, and smooth from a distance. Anisotropic "
"filtering improves texture quality on surfaces that are almost in line with "
"the camera, but is slightly slower. The anisotropic filtering level can be "
"changed by adjusting [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level].\n"
"[b]Note:[/b] This texture filter is rarely useful in 2D projects. [constant "
"FILTER_LINEAR_MIPMAP] is usually more appropriate in this case."
msgstr ""
"Фильтр текстуры смешивает ближайшие 4 пикселя и смешивает 2 mip-карты (или "
"использует ближайшую mip-карту, если [member ProjectSettings.rendering/"
"textures/default_filters/use_nearest_mipmap_filter] имеет значение "
"[code]true[/code]) на основе угла между поверхностью и видом камеры. Это "
"делает текстуру гладкой вблизи и гладкой на расстоянии. Анизотропная "
"фильтрация улучшает качество текстуры на поверхностях, которые почти "
"совпадают с камерой, но немного медленнее. Уровень анизотропной фильтрации "
"можно изменить, настроив [member ProjectSettings.rendering/textures/"
"default_filters/anisotropic_filtering_level].\n"
"[b]Примечание:[/b] Этот фильтр текстуры редко полезен в 2D-проектах. "
"[constant FILTER_LINEAR_MIPMAP] обычно более подходит в этом случае."

msgid ""
"Sample the texture using the repeat mode determined by the node this shader "
"is attached to."
msgstr ""
"Выполняется выборка текстуры с использованием режима повторения, "
"определяемого узлом, к которому прикреплен этот шейдер."

msgid "Texture will repeat normally."
msgstr "Текстура будет повторяться нормально."

msgid "Texture will not repeat."
msgstr "Текстура не повторяется."

msgid "The texture source is not specified in the shader."
msgstr "Источник текстуры в шейдере не указан."

msgid ""
"The texture source is the screen texture which captures all opaque objects "
"drawn this frame."
msgstr ""
"Источником текстуры является текстура экрана, которая захватывает все "
"непрозрачные объекты, нарисованные в этом кадре."

msgid "The texture source is the depth texture from the depth prepass."
msgstr ""
"Источником текстуры является текстура глубины из предварительного прохода "
"глубины."

msgid ""
"The texture source is the normal-roughness buffer from the depth prepass."
msgstr ""
"Источником текстуры является буфер нормальной шероховатости (normal-"
"roughness) из предварительного прохода по глубине."

msgid "Represents the size of the [enum TextureSource] enum."
msgstr "Представляет размер перечисления [enum TextureSource]."

msgid ""
"Performs a uniform texture lookup with triplanar within the visual shader "
"graph."
msgstr ""
"Выполняет равномерный поиск текстуры с помощью трипланара в графе визуального "
"шейдера."

msgid ""
"Performs a lookup operation on the texture provided as a uniform for the "
"shader, with support for triplanar mapping."
msgstr ""
"Выполняет операцию поиска по текстуре, предоставленной в качестве однородной "
"для шейдера, с поддержкой трипланарного отображения."

msgid ""
"Performs an SDF (signed-distance field) texture lookup within the visual "
"shader graph."
msgstr ""
"Выполняет поиск текстуры SDF (поле знакового расстояния) в графе визуального "
"шейдера."

msgid "Translates to [code]texture_sdf(sdf_pos)[/code] in the shader language."
msgstr "Переводится в [code]texture_sdf(sdf_pos)[/code] на языке шейдеров."

msgid ""
"Performs an SDF (signed-distance field) normal texture lookup within the "
"visual shader graph."
msgstr ""
"Выполняет обычный поиск текстуры SDF (поле знакового расстояния) в графе "
"визуального шейдера."

msgid ""
"Translates to [code]texture_sdf_normal(sdf_pos)[/code] in the shader language."
msgstr ""
"Переводится в [code]texture_sdf_normal(sdf_pos)[/code] на языке шейдеров."

msgid ""
"Composes a [Transform3D] from four [Vector3]s within the visual shader graph."
msgstr ""
"Составляет [Transform3D] из четырех [Vector3]-ов в графе визуального шейдера."

msgid ""
"Creates a 4×4 transform matrix using four vectors of type [code]vec3[/code]. "
"Each vector is one row in the matrix and the last column is a [code]vec4(0, "
"0, 0, 1)[/code]."
msgstr ""
"Создает матрицу преобразования 4×4 с использованием четырех векторов типа "
"[code]vec3[/code]. Каждый вектор — это одна строка в матрице, а последний "
"столбец — это [code]vec4(0, 0, 0, 1)[/code]."

msgid "A [Transform3D] constant for use within the visual shader graph."
msgstr "Константа [Transform3D] для использования в графе визуального шейдера."

msgid "A constant [Transform3D], which can be used as an input node."
msgstr ""
"Константа [Transform3D], которую можно использовать в качестве входного узла."

msgid "A [Transform3D] constant which represents the state of this node."
msgstr "Константа [Transform3D], которая представляет состояние этого узла."

msgid ""
"Decomposes a [Transform3D] into four [Vector3]s within the visual shader "
"graph."
msgstr ""
"Разлагает [Transform3D] на четыре [Vector3]-ов в графе визуального шейдера."

msgid ""
"Takes a 4×4 transform matrix and decomposes it into four [code]vec3[/code] "
"values, one from each row of the matrix."
msgstr ""
"Берет матрицу преобразования 4×4 и разлагает ее на четыре значения "
"[code]vec3[/code], по одному из каждой строки матрицы."

msgid "Computes a [Transform3D] function within the visual shader graph."
msgstr "Вычисляет функцию [Transform3D] в графе визуального шейдера."

msgid "Computes an inverse or transpose function on the provided [Transform3D]."
msgstr ""
"Вычисляет обратную или транспонированную функцию для предоставленного "
"[Transform3D]."

msgid "The function to be computed."
msgstr "Функция, которую необходимо вычислить."

msgid "Perform the inverse operation on the [Transform3D] matrix."
msgstr "Выполнить обратную инверсивную операцию над матрицей [Transform3D]."

msgid "Perform the transpose operation on the [Transform3D] matrix."
msgstr "Выполнить операцию транспонирования матрицы [Transform3D]."

msgid "A [Transform3D] operator to be used within the visual shader graph."
msgstr ""
"Оператор [Transform3D], который будет использоваться в графе визуального "
"шейдера."

msgid "Applies [member operator] to two transform (4×4 matrices) inputs."
msgstr "Применяет [member operator] к двум входам преобразования (матрицы 4×4)."

msgid "The type of the operation to be performed on the transforms."
msgstr "Тип операции, которая будет выполнена над преобразованиями."

msgid "Multiplies transform [code]a[/code] by the transform [code]b[/code]."
msgstr ""
"Умножает преобразование [code]a[/code] на преобразование [code]b[/code]."

msgid "Multiplies transform [code]b[/code] by the transform [code]a[/code]."
msgstr ""
"Умножает преобразование [code]b[/code] на преобразование [code]a[/code]."

msgid ""
"Performs a component-wise multiplication of transform [code]a[/code] by the "
"transform [code]b[/code]."
msgstr ""
"Выполняет покомпонентное умножение преобразования [code]a[/code] на "
"преобразование [code]b[/code]."

msgid ""
"Performs a component-wise multiplication of transform [code]b[/code] by the "
"transform [code]a[/code]."
msgstr ""
"Выполняет покомпонентное умножение преобразования [code]b[/code] на "
"преобразование [code]a[/code]."

msgid "Adds two transforms."
msgstr "Добавляет два преобразования."

msgid ""
"Subtracts the transform [code]a[/code] from the transform [code]b[/code]."
msgstr ""
"Вычитает преобразование [code]a[/code] из преобразования [code]b[/code]."

msgid ""
"Subtracts the transform [code]b[/code] from the transform [code]a[/code]."
msgstr ""
"Вычитает преобразование [code]b[/code] из преобразования [code]a[/code]."

msgid "Divides the transform [code]a[/code] by the transform [code]b[/code]."
msgstr "Делит преобразование [code]a[/code] на преобразование [code]b[/code]."

msgid "Divides the transform [code]b[/code] by the transform [code]a[/code]."
msgstr "Делит преобразование [code]b[/code] на преобразование [code]a[/code]."

msgid "A [Transform3D] parameter for use within the visual shader graph."
msgstr "Параметр [Transform3D] для использования в графе визуального шейдера."

msgid "Translated to [code]uniform mat4[/code] in the shader language."
msgstr "Переведено в [code]uniform mat4[/code] на языке шейдеров."

msgid ""
"Multiplies a [Transform3D] and a [Vector3] within the visual shader graph."
msgstr "Умножает [Transform3D] и [Vector3] в графе визуального шейдера."

msgid ""
"A multiplication operation on a transform (4×4 matrix) and a vector, with "
"support for different multiplication operators."
msgstr ""
"Операция умножения преобразования (матрицы 4×4) и вектора с поддержкой "
"различных операторов умножения."

msgid "The multiplication type to be performed."
msgstr "Тип умножения, который необходимо выполнить."

msgid "Multiplies transform [code]a[/code] by the vector [code]b[/code]."
msgstr "Умножает преобразование [code]a[/code] на вектор [code]b[/code]."

msgid "Multiplies vector [code]b[/code] by the transform [code]a[/code]."
msgstr "Умножает вектор [code]b[/code] на преобразование [code]a[/code]."

msgid ""
"Multiplies transform [code]a[/code] by the vector [code]b[/code], skipping "
"the last row and column of the transform."
msgstr ""
"Умножает преобразование [code]a[/code] на вектор [code]b[/code], пропуская "
"последнюю строку и столбец преобразования."

msgid ""
"Multiplies vector [code]b[/code] by the transform [code]a[/code], skipping "
"the last row and column of the transform."
msgstr ""
"Умножает вектор [code]b[/code] на преобразование [code]a[/code], пропуская "
"последнюю строку и столбец преобразования."

msgid ""
"An unsigned scalar integer constant to be used within the visual shader graph."
msgstr ""
"Беззнаковая скалярная целочисленная константа, используемая в графе "
"визуального шейдера."

msgid "Translated to [code]uint[/code] in the shader language."
msgstr "Переводится на [code]uint[/code] на языке шейдеров."

msgid "An unsigned integer constant which represents a state of this node."
msgstr ""
"Беззнаковая целочисленная константа, представляющая состояние этого узла."

msgid ""
"An unsigned scalar integer function to be used within the visual shader graph."
msgstr ""
"Беззнаковая скалярная целочисленная функция, используемая в графе визуального "
"шейдера."

msgid ""
"Accept an unsigned integer scalar ([code]x[/code]) to the input port and "
"transform it according to [member function]."
msgstr ""
"Принять беззнаковый целочисленный скаляр ([code]x[/code]) на входной порт и "
"преобразовать его в соответствии с [member function]."

msgid ""
"An unsigned integer scalar operator to be used within the visual shader graph."
msgstr ""
"Беззнаковый целочисленный скалярный оператор, который будет использоваться в "
"графе визуального шейдера."

msgid ""
"Applies [member operator] to two unsigned integer inputs: [code]a[/code] and "
"[code]b[/code]."
msgstr ""
"Применяет [member operator] к двум целочисленным входным значениям без знака: "
"[code]a[/code] и [code]b[/code]."

msgid ""
"A visual shader node for shader parameter (uniform) of type unsigned [int]."
msgstr ""
"Узел визуального шейдера для параметра шейдера (uniform) типа unsigned [int]."

msgid ""
"A [VisualShaderNodeParameter] of type unsigned [int]. Offers additional "
"customization for range of accepted values."
msgstr ""
"[VisualShaderNodeParameter] типа unsigned (неподписанный) [int]. Предлагает "
"дополнительную настройку для диапазона допустимых значений."

msgid ""
"Contains functions to modify texture coordinates ([code]uv[/code]) to be used "
"within the visual shader graph."
msgstr ""
"Содержит функции для изменения координат текстуры ([code]uv[/code]), которые "
"будут использоваться в графе визуального шейдера."

msgid ""
"UV functions are similar to [Vector2] functions, but the input port of this "
"node uses the shader's UV value by default."
msgstr ""
"UV-функции аналогичны функциям [Vector2], но входной порт этого узла по "
"умолчанию использует UV-значение шейдера."

msgid "A function to be applied to the texture coordinates."
msgstr "Функция, применяемая к координатам текстуры."

msgid ""
"Translates [code]uv[/code] by using [code]scale[/code] and [code]offset[/"
"code] values using the following formula: [code]uv = uv + offset * scale[/"
"code]. [code]uv[/code] port is connected to [code]UV[/code] built-in by "
"default."
msgstr ""
"Переводит [code]uv[/code] с использованием значений [code]scale[/code] и "
"[code]offset[/code] по следующей формуле: [code]uv = uv + offset * scale[/"
"code]. Порт [code]uv[/code] по умолчанию подключен к встроенному [code]UV[/"
"code]."

msgid ""
"Scales [code]uv[/code] by using [code]scale[/code] and [code]pivot[/code] "
"values using the following formula: [code]uv = (uv - pivot) * scale + pivot[/"
"code]. [code]uv[/code] port is connected to [code]UV[/code] built-in by "
"default."
msgstr ""
"Масштабирует [code]uv[/code] с помощью значений [code]scale[/code] и "
"[code]pivot[/code] по следующей формуле: [code]uv = (uv - pivot) * scale + "
"pivot[/code]. Порт [code]uv[/code] по умолчанию подключен к встроенному "
"[code]UV[/code]."

msgid ""
"A visual shader node that modifies the texture UV using polar coordinates."
msgstr ""
"Узел визуального шейдера, который изменяет UV-текстуру с использованием "
"полярных координат."

msgid ""
"UV polar coord node will transform UV values into polar coordinates, with "
"specified scale, zoom strength and repeat parameters. It can be used to "
"create various swirl distortions."
msgstr ""
"Узел полярных координат UV преобразует значения UV в полярные координаты с "
"заданным масштабом, силой масштабирования и параметрами повторения. Его можно "
"использовать для создания различных искажений вихря."

msgid "A visual shader node that represents a \"varying\" shader value."
msgstr "Узел визуального шейдера, представляющий «переменное» значение шейдера."

msgid ""
"Varying values are shader variables that can be passed between shader "
"functions, e.g. from Vertex shader to Fragment shader."
msgstr ""
"Переменные значения — это переменные шейдера, которые могут передаваться "
"между функциями шейдера, например, из вершинного шейдера во фрагментный "
"шейдер."

msgid "Name of the variable. Must be unique."
msgstr "Имя переменной. Должно быть уникальным."

msgid "Type of the variable. Determines where the variable can be accessed."
msgstr "Тип переменной. Определяет, где можно получить доступ к переменной."

msgid "A visual shader node that gets a value of a varying."
msgstr "Узел визуального шейдера, который получает значение переменной."

msgid ""
"Outputs a value of a varying defined in the shader. You need to first create "
"a varying that can be used in the given function, e.g. varying getter in "
"Fragment shader requires a varying with mode set to [constant "
"VisualShader.VARYING_MODE_VERTEX_TO_FRAG_LIGHT]."
msgstr ""
"Выводит значение переменной, определенной в шейдере. Сначала необходимо "
"создать переменную, который можно использовать в данной функции, например, "
"переменная Getter в Fragment shader требует переменную с режимом, "
"установленным на [constant VisualShader.VARYING_MODE_VERTEX_TO_FRAG_LIGHT]."

msgid "A visual shader node that sets a value of a varying."
msgstr "Узел визуального шейдера, который задает значение переменной."

msgid ""
"Inputs a value to a varying defined in the shader. You need to first create a "
"varying that can be used in the given function, e.g. varying setter in "
"Fragment shader requires a varying with mode set to [constant "
"VisualShader.VARYING_MODE_FRAG_TO_LIGHT]."
msgstr ""
"Вводит значение в переменной, определенное в шейдере. Сначала необходимо "
"создать переменную, который можно использовать в данной функции, например, "
"переменную setter в Fragment shader требует переменную с режимом, "
"установленным на [constant VisualShader.VARYING_MODE_FRAG_TO_LIGHT]."

msgid "A [Vector2] constant to be used within the visual shader graph."
msgstr ""
"Константа [Vector2], которая будет использоваться в графе визуального шейдера."

msgid "A constant [Vector2], which can be used as an input node."
msgstr ""
"Константа [Vector2], которую можно использовать в качестве входного узла."

msgid "A [Vector2] constant which represents the state of this node."
msgstr "Константа [Vector2], которая представляет состояние этого узла."

msgid "A [Vector2] parameter to be used within the visual shader graph."
msgstr "Параметр [Vector2] для использования в графе визуального шейдера."

msgid "Translated to [code]uniform vec2[/code] in the shader language."
msgstr "Переведено в [code]uniform vec2[/code] на языке шейдеров."

msgid "A [Vector3] constant to be used within the visual shader graph."
msgstr ""
"Константа [Vector3], которая будет использоваться в графе визуального шейдера."

msgid "A constant [Vector3], which can be used as an input node."
msgstr ""
"Константа [Vector3], которую можно использовать в качестве входного узла."

msgid "A [Vector3] constant which represents the state of this node."
msgstr "Константа [Vector3], которая представляет состояние этого узла."

msgid "A [Vector3] parameter to be used within the visual shader graph."
msgstr ""
"Параметр [Vector3], который будет использоваться в графе визуального шейдера."

msgid "Translated to [code]uniform vec3[/code] in the shader language."
msgstr "Переведено в [code]uniform vec3[/code] на языке шейдеров."

msgid "A 4D vector constant to be used within the visual shader graph."
msgstr "Константа 4D-вектора, используемая в графе визуального шейдера."

msgid "A constant 4D vector, which can be used as an input node."
msgstr ""
"Постоянный 4D-вектор, который можно использовать в качестве входного узла."

msgid ""
"A 4D vector (represented as a [Quaternion]) constant which represents the "
"state of this node."
msgstr ""
"Константа 4D-вектора (представленная в виде [Quaternion]), которая "
"представляет состояние этого узла."

msgid "A 4D vector parameter to be used within the visual shader graph."
msgstr ""
"Параметр 4D-вектора, который будет использоваться в графе визуального шейдера."

msgid ""
"A base type for the nodes that perform vector operations within the visual "
"shader graph."
msgstr ""
"Базовый тип для узлов, выполняющих векторные операции в графе визуального "
"шейдера."

msgid ""
"This is an abstract class. See the derived types for descriptions of the "
"possible operations."
msgstr ""
"Это абстрактный класс. Смотрите производные типы для описания возможных "
"операций."

msgid "A vector type that this operation is performed on."
msgstr "Векторный тип, над которым выполняется эта операция."

msgid ""
"Composes a [Vector2], [Vector3] or 4D vector (represented as a [Quaternion]) "
"from scalars within the visual shader graph."
msgstr ""
"Составляет [Vector2], [Vector3] или 4D вектор (представленный как "
"[Quaternion]) из скаляров в графе визуального шейдера."

msgid ""
"Creates a [code]vec2[/code], [code]vec3[/code] or [code]vec4[/code] using "
"scalar values that can be provided from separate inputs."
msgstr ""
"Создает [code]vec2[/code], [code]vec3[/code] или [code]vec4[/code], используя "
"скалярные значения, которые могут быть предоставлены из отдельных входов."

msgid ""
"Decomposes a [Vector2], [Vector3] or 4D vector (represented as a "
"[Quaternion]) into scalars within the visual shader graph."
msgstr ""
"Разлагает вектор [Vector2], [Vector3] или 4D-вектор (представленный как "
"[Quaternion]) на скаляры в графе визуального шейдера."

msgid ""
"Takes a [code]vec2[/code], [code]vec3[/code] or [code]vec4[/code] and "
"decomposes it into scalar values that can be used as separate outputs."
msgstr ""
"Принимает [code]vec2[/code], [code]vec3[/code] или [code]vec4[/code] и "
"разлагает его на скалярные значения, которые можно использовать как отдельные "
"выходные данные."

msgid ""
"Returns the distance between two points. To be used within the visual shader "
"graph."
msgstr ""
"Возвращает расстояние между двумя точками. Для использования в графе "
"визуального шейдера."

msgid ""
"Calculates distance from point represented by vector [code]p0[/code] to "
"vector [code]p1[/code].\n"
"Translated to [code]distance(p0, p1)[/code] in the shader language."
msgstr ""
"Вычисляет расстояние от точки, представленной вектором [code]p0[/code] до "
"вектора [code]p1[/code].\n"
"Переводится как [code]distance(p0, p1)[/code] на языке шейдеров."

msgid "A vector function to be used within the visual shader graph."
msgstr "Векторная функция, используемая в графе визуального шейдера."

msgid "A visual shader node able to perform different functions using vectors."
msgstr ""
"Узел визуального шейдера, способный выполнять различные функции с "
"использованием векторов."

msgid "The function to be performed."
msgstr "Функция, которая должна быть выполнена."

msgid ""
"Normalizes the vector so that it has a length of [code]1[/code] but points in "
"the same direction."
msgstr ""
"Нормализует вектор так, чтобы он имел длину [code]1[/code], но указывал в том "
"же направлении."

msgid "Clamps the value between [code]0.0[/code] and [code]1.0[/code]."
msgstr "Фиксирует значение между [code]0.0[/code] и [code]1.0[/code]."

msgid "Returns the opposite value of the parameter."
msgstr "Возвращает значение, противоположное параметру."

msgid "Returns [code]1/vector[/code]."
msgstr "Возвращает [code]1/вектор[/code]."

msgid "Returns the absolute value of the parameter."
msgstr "Возвращает абсолютное значение параметра."

msgid "Returns the arc-cosine of the parameter."
msgstr "Возвращает арккосинус параметра."

msgid "Returns the inverse hyperbolic cosine of the parameter."
msgstr "Возвращает обратный гиперболический косинус параметра."

msgid "Returns the arc-sine of the parameter."
msgstr "Возвращает арксинус параметра."

msgid "Returns the inverse hyperbolic sine of the parameter."
msgstr "Возвращает обратный гиперболический синус параметра."

msgid "Returns the arc-tangent of the parameter."
msgstr "Возвращает арктангенс параметра."

msgid "Returns the inverse hyperbolic tangent of the parameter."
msgstr "Возвращает обратный гиперболический тангенс параметра."

msgid ""
"Finds the nearest integer that is greater than or equal to the parameter."
msgstr "Находит ближайшее целое, которое больше или равно параметра."

msgid "Returns the cosine of the parameter."
msgstr "Возвращает косинус параметра."

msgid "Returns the hyperbolic cosine of the parameter."
msgstr "Возвращает гиперболический косинус параметра."

msgid "Converts a quantity in radians to degrees."
msgstr "Переводит значение из радиан в градусы."

msgid "Base-e Exponential."
msgstr "Экспонента с основанием e."

msgid "Base-2 Exponential."
msgstr "Экспонента с основанием 2."

msgid "Finds the nearest integer less than or equal to the parameter."
msgstr "Находит ближайшее целое, меньшее или равное аргументу."

msgid "Computes the fractional part of the argument."
msgstr "Вычисляет дробную часть аргумента."

msgid "Returns the inverse of the square root of the parameter."
msgstr "Возвращает обратный квадратный корень из аргумента."

msgid "Natural logarithm."
msgstr "Натуральный логарифм."

msgid "Base-2 logarithm."
msgstr "Логарифм по основанию 2."

msgid "Converts a quantity in degrees to radians."
msgstr "Переводит значение из градусов в радианы."

msgid "Finds the nearest integer to the parameter."
msgstr "Находит ближайшее к параметру целое число."

msgid "Finds the nearest even integer to the parameter."
msgstr "Находит ближайшее чётное число к параметру."

msgid ""
"Extracts the sign of the parameter, i.e. returns [code]-1[/code] if the "
"parameter is negative, [code]1[/code] if it's positive and [code]0[/code] "
"otherwise."
msgstr ""
"Извлекает знак параметра, т.е. возвращает [code]-1[/code], если параметр "
"отрицательный, [code]1[/code], если он положительный, и [code]0[/code] в "
"противном случае."

msgid "Returns the sine of the parameter."
msgstr "Возвращает синус параметра."

msgid "Returns the hyperbolic sine of the parameter."
msgstr "Возвращает гиперболический синус параметра."

msgid "Returns the square root of the parameter."
msgstr "Возвращает квадратный корень из параметра."

msgid "Returns the tangent of the parameter."
msgstr "Возвращает тангенс параметра."

msgid "Returns the hyperbolic tangent of the parameter."
msgstr "Возвращает гиперболический тангенс параметра."

msgid ""
"Returns a value equal to the nearest integer to the parameter whose absolute "
"value is not larger than the absolute value of the parameter."
msgstr ""
"Возвращает значение, равное ближайшему целому числу к параметру, абсолютное "
"значение которого не больше абсолютного значения параметра."

msgid "Returns [code]1.0 - vector[/code]."
msgstr "Возвращает [code]1.0 - vector[/code]."

msgid "Returns the length of a [Vector3] within the visual shader graph."
msgstr "Возвращает длину [Vector3] в графе визуального шейдера."

msgid "Translated to [code]length(p0)[/code] in the shader language."
msgstr "Переводится как [code]length(p0)[/code] на языке шейдеров."

msgid "A vector operator to be used within the visual shader graph."
msgstr ""
"Векторный оператор, который будет использоваться в графе визуального шейдера."

msgid ""
"A visual shader node for use of vector operators. Operates on vector [code]a[/"
"code] and vector [code]b[/code]."
msgstr ""
"Визуальный шейдерный узел для использования векторных операторов. Работает с "
"вектором [code]a[/code] и вектором [code]b[/code]."

msgid "The operator to be used."
msgstr "Оператор, который будет использоваться."

msgid "Adds two vectors."
msgstr "Складывает два вектора."

msgid "Subtracts a vector from a vector."
msgstr "Вычитает из вектора вектор."

msgid "Multiplies two vectors."
msgstr "Перемножает два вектора."

msgid "Divides vector by vector."
msgstr "Делит вектор на вектор."

msgid "Returns the remainder of the two vectors."
msgstr "Возвращает остаток от двух векторов."

msgid ""
"Returns the value of the first parameter raised to the power of the second, "
"for each component of the vectors."
msgstr ""
"Возвращает значение первого параметра, возведенного в степень второго, для "
"каждого компонента векторов."

msgid "Returns the greater of two values, for each component of the vectors."
msgstr ""
"Возвращает наибольшее из двух значений, для каждого компонента векторов."

msgid "Returns the lesser of two values, for each component of the vectors."
msgstr ""
"Возвращает наименьшее из двух значений, для каждого компонента векторов."

msgid "Calculates the cross product of two vectors."
msgstr "Вычисляет векторное произведение двух векторов."

msgid "Returns the arc-tangent of the parameters."
msgstr "Возвращает арктангенс параметров."

msgid ""
"Returns the vector that points in the direction of reflection. [code]a[/code] "
"is incident vector and [code]b[/code] is the normal vector."
msgstr ""
"Возвращает вектор, указывающий направление отражения. [code]a[/code] — вектор "
"падения, а [code]b[/code] — вектор нормали."

msgid ""
"Vector step operator. Returns [code]0.0[/code] if [code]a[/code] is smaller "
"than [code]b[/code] and [code]1.0[/code] otherwise."
msgstr ""
"Оператор шага вектора. Возвращает [code]0.0[/code], если [code]a[/code] "
"меньше, чем [code]b[/code], и [code]1.0[/code] в противном случае."

msgid ""
"Returns the vector that points in the direction of refraction. For use within "
"the visual shader graph."
msgstr ""
"Возвращает вектор, указывающий направление преломления. Для использования в "
"графе визуального шейдера."

msgid ""
"Translated to [code]refract(I, N, eta)[/code] in the shader language, where "
"[code]I[/code] is the incident vector, [code]N[/code] is the normal vector "
"and [code]eta[/code] is the ratio of the indices of the refraction."
msgstr ""
"Переводится как [code]refract(I, N, eta)[/code] на языке шейдеров, где "
"[code]I[/code] — вектор падения, [code]N[/code] — вектор нормали, а "
"[code]eta[/code] — отношение показателей преломления."

msgid ""
"A visual shader node that calculates the position of the pixel in world space "
"using the depth texture."
msgstr ""
"Узел визуального шейдера, который вычисляет положение пикселя в мировом "
"пространстве, используя текстуру глубины."

msgid ""
"The WorldPositionFromDepth node reconstructs the depth position of the pixel "
"in world space. This can be used to obtain world space UVs for projection "
"mapping like Caustics."
msgstr ""
"Узел WorldPositionFromDepth реконструирует положение глубины пикселя в "
"мировом пространстве. Это можно использовать для получения UV мирового "
"пространства для проекционного отображения, например Caustics."

msgid "Real-time global illumination (GI) probe."
msgstr "Зонд глобального освещения (GI) в реальном времени."

msgid ""
"[VoxelGI]s are used to provide high-quality real-time indirect light and "
"reflections to scenes. They precompute the effect of objects that emit light "
"and the effect of static geometry to simulate the behavior of complex light "
"in real-time. [VoxelGI]s need to be baked before having a visible effect. "
"However, once baked, dynamic objects will receive light from them. "
"Furthermore, lights can be fully dynamic or baked.\n"
"[b]Note:[/b] [VoxelGI] is only supported in the Forward+ rendering method, "
"not Mobile or Compatibility.\n"
"[b]Procedural generation:[/b] [VoxelGI] can be baked in an exported project, "
"which makes it suitable for procedurally generated or user-built levels as "
"long as all the geometry is generated in advance. For games where geometry is "
"generated at any time during gameplay, SDFGI is more suitable (see [member "
"Environment.sdfgi_enabled]).\n"
"[b]Performance:[/b] [VoxelGI] is relatively demanding on the GPU and is not "
"suited to low-end hardware such as integrated graphics (consider [LightmapGI] "
"instead). To improve performance, adjust [member ProjectSettings.rendering/"
"global_illumination/voxel_gi/quality] and enable [member "
"ProjectSettings.rendering/global_illumination/gi/use_half_resolution] in the "
"Project Settings. To provide a fallback for low-end hardware, consider adding "
"an option to disable [VoxelGI] in your project's options menus. A [VoxelGI] "
"node can be disabled by hiding it.\n"
"[b]Note:[/b] Meshes should have sufficiently thick walls to avoid light leaks "
"(avoid one-sided walls). For interior levels, enclose your level geometry in "
"a sufficiently large box and bridge the loops to close the mesh. To further "
"prevent light leaks, you can also strategically place temporary "
"[MeshInstance3D] nodes with their [member GeometryInstance3D.gi_mode] set to "
"[constant GeometryInstance3D.GI_MODE_STATIC]. These temporary nodes can then "
"be hidden after baking the [VoxelGI] node."
msgstr ""
"[VoxelGI] используются для обеспечения высококачественного непрямого света и "
"отражений в реальном времени для сцен. Они предварительно вычисляют эффект "
"объектов, которые излучают свет, и эффект статической геометрии для имитации "
"поведения сложного света в реальном времени. [VoxelGI] необходимо запечь, "
"прежде чем они будут иметь видимый эффект. Однако после запекания "
"динамические объекты будут получать от них свет. Кроме того, источники света "
"могут быть полностью динамическими или запеченными.\n"
"[b]Примечание:[/b] [VoxelGI] поддерживается только в методе рендеринга "
"Forward+, а не в Mobile или Compatibility.\n"
"[b]Процедурная генерация:[/b] [VoxelGI] можно запечь в экспортированном "
"проекте, что делает его подходящим для процедурно сгенерированных или "
"созданных пользователем уровней, если вся геометрия сгенерирована заранее. "
"Для игр, где геометрия генерируется в любой момент во время игрового "
"процесса, больше подходит SDFGI (см. [member Environment.sdfgi_enabled]).\n"
"[b]Производительность:[/b] [VoxelGI] относительно требователен к графическому "
"процессору и не подходит для аппаратного обеспечения низкого уровня, такого "
"как интегрированная графика (вместо этого рассмотрите [LightmapGI]). Чтобы "
"улучшить производительность, настройте [member ProjectSettings.rendering/"
"global_illumination/voxel_gi/quality] и включите [member "
"ProjectSettings.rendering/global_illumination/gi/use_half_resolution] в "
"настройках проекта. Чтобы обеспечить резерв для аппаратного обеспечения "
"низкого уровня, рассмотрите возможность добавления опции отключения [VoxelGI] "
"в меню параметров вашего проекта. Узел [VoxelGI] можно отключить, скрыв его.\n"
"[b]Примечание:[/b] Меши должны иметь достаточно толстые стенки, чтобы "
"избежать утечек света (избегайте односторонних стен). Для внутренних уровней "
"заключите геометрию уровня в достаточно большой ящик и соедините петли, чтобы "
"закрыть сетку. Чтобы еще больше предотвратить утечки света, вы также можете "
"стратегически разместить временные узлы [MeshInstance3D] с их [member "
"GeometryInstance3D.gi_mode], установленным на [constant "
"GeometryInstance3D.GI_MODE_STATIC]. Эти временные узлы затем можно скрыть "
"после запекания узла [VoxelGI]."

msgid "Using Voxel global illumination"
msgstr "Использование Voxel global illumination"

msgid ""
"Bakes the effect from all [GeometryInstance3D]s marked with [constant "
"GeometryInstance3D.GI_MODE_STATIC] and [Light3D]s marked with either "
"[constant Light3D.BAKE_STATIC] or [constant Light3D.BAKE_DYNAMIC]. If [param "
"create_visual_debug] is [code]true[/code], after baking the light, this will "
"generate a [MultiMesh] that has a cube representing each solid cell with each "
"cube colored to the cell's albedo color. This can be used to visualize the "
"[VoxelGI]'s data and debug any issues that may be occurring.\n"
"[b]Note:[/b] [method bake] works from the editor and in exported projects. "
"This makes it suitable for procedurally generated or user-built levels. "
"Baking a [VoxelGI] node generally takes from 5 to 20 seconds in most scenes. "
"Reducing [member subdiv] can speed up baking.\n"
"[b]Note:[/b] [GeometryInstance3D]s and [Light3D]s must be fully ready before "
"[method bake] is called. If you are procedurally creating those and some "
"meshes or lights are missing from your baked [VoxelGI], use "
"[code]call_deferred(\"bake\")[/code] instead of calling [method bake] "
"directly."
msgstr ""
"Запекает эффект из всех [GeometryInstance3D], отмеченных [constant "
"GeometryInstance3D.GI_MODE_STATIC], и [Light3D], отмеченных либо [constant "
"Light3D.BAKE_STATIC], либо [constant Light3D.BAKE_DYNAMIC]. Если [param "
"create_visual_debug] имеет значение [code]true[/code], после запекания света "
"будет сгенерирована [MultiMesh], в которой есть куб, представляющий каждую "
"сплошную ячейку, причем каждый куб окрашен в цвет альбедо ячейки. Это можно "
"использовать для визуализации данных [VoxelGI] и отладки любых проблем, "
"которые могут возникнуть.\n"
"[b]Примечание:[/b] [method bake] работает из редактора и в экспортированных "
"проектах. Это делает его подходящим для процедурно сгенерированных или "
"созданных пользователем уровней. Запекание узла [VoxelGI] обычно занимает от "
"5 до 20 секунд в большинстве сцен. Уменьшение [member subdiv] может ускорить "
"запекание.\n"
"[b]Примечание:[/b] [GeometryInstance3D] и [Light3D] должны быть полностью "
"готовы до вызова [method bake]. Если вы создаете их процедурно и в вашем "
"запеченном [VoxelGI] отсутствуют некоторые сетки или источники света, "
"используйте [code]call_deferred(\"bake\")[/code] вместо прямого вызова "
"[method bake]."

msgid "Calls [method bake] with [code]create_visual_debug[/code] enabled."
msgstr ""
"Вызывает метод [method bake] с включенным [code]create_visual_debug[/code]."

msgid ""
"The [CameraAttributes] resource that specifies exposure levels to bake at. "
"Auto-exposure and non exposure properties will be ignored. Exposure settings "
"should be used to reduce the dynamic range present when baking. If exposure "
"is too high, the [VoxelGI] will have banding artifacts or may have over-"
"exposure artifacts."
msgstr ""
"Ресурс [CameraAttributes], который определяет уровни экспозиции для "
"запекания. Свойства автоматической экспозиции и отсутствия экспозиции будут "
"игнорироваться. Настройки экспозиции следует использовать для уменьшения "
"динамического диапазона, присутствующего при запекании. Если экспозиция "
"слишком высокая, [VoxelGI] будет иметь артефакты полос или может иметь "
"артефакты переэкспонирования."

msgid "The [VoxelGIData] resource that holds the data for this [VoxelGI]."
msgstr "Ресурс [VoxelGIData], содержащий данные для этого [VoxelGI]."

msgid ""
"The size of the area covered by the [VoxelGI]. If you make the size larger "
"without increasing the subdivisions with [member subdiv], the size of each "
"cell will increase and result in lower detailed lighting.\n"
"[b]Note:[/b] Size is clamped to 1.0 unit or more on each axis."
msgstr ""
"Размер области, охватываемой [VoxelGI]. Если вы увеличите размер, не "
"увеличивая подразделения с помощью [member subdiv], размер каждой ячейки "
"увеличится, что приведет к снижению детализации освещения.\n"
"[b]Примечание:[/b] Размер ограничен 1,0 единицей или более по каждой оси."

msgid ""
"Number of times to subdivide the grid that the [VoxelGI] operates on. A "
"higher number results in finer detail and thus higher visual quality, while "
"lower numbers result in better performance."
msgstr ""
"Количество раз, когда нужно разделить сетку, над которой работает [VoxelGI]. "
"Большее число приводит к более мелкой детализации и, следовательно, к более "
"высокому визуальному качеству, тогда как меньшее число приводит к лучшей "
"производительности."

msgid ""
"Use 64 subdivisions. This is the lowest quality setting, but the fastest. Use "
"it if you can, but especially use it on lower-end hardware."
msgstr ""
"Используйте 64 подразделений. Это самая низкая настройка качества, но самая "
"быстрая. Используйте ее, если можете, но особенно используйте ее на слабом "
"оборудовании."

msgid "Use 128 subdivisions. This is the default quality setting."
msgstr "Использовать 128 подразделений. Это настройка качества по умолчанию."

msgid "Use 256 subdivisions."
msgstr "Использовать 256 делений."

msgid ""
"Use 512 subdivisions. This is the highest quality setting, but the slowest. "
"On lower-end hardware, this could cause the GPU to stall."
msgstr ""
"Использовать 512 подразбиений. Это настройка наивысшего качества, но "
"медленная. На слабом оборудовании это может привести к остановке GPU."

msgid "Represents the size of the [enum Subdiv] enum."
msgstr "Представляет размер перечисления [enum Subdiv]."

msgid ""
"Contains baked voxel global illumination data for use in a [VoxelGI] node."
msgstr ""
"Содержит запеченные данные глобального освещения вокселей для использования в "
"узле [VoxelGI]."

msgid ""
"[VoxelGIData] contains baked voxel global illumination for use in a [VoxelGI] "
"node. [VoxelGIData] also offers several properties to adjust the final "
"appearance of the global illumination. These properties can be adjusted at "
"run-time without having to bake the [VoxelGI] node again.\n"
"[b]Note:[/b] To prevent text-based scene files ([code].tscn[/code]) from "
"growing too much and becoming slow to load and save, always save "
"[VoxelGIData] to an external binary resource file ([code].res[/code]) instead "
"of embedding it within the scene. This can be done by clicking the dropdown "
"arrow next to the [VoxelGIData] resource, choosing [b]Edit[/b], clicking the "
"floppy disk icon at the top of the Inspector then choosing [b]Save As...[/b]."
msgstr ""
"[VoxelGIData] содержит запеченное глобальное освещение вокселей для "
"использования в узле [VoxelGI]. [VoxelGIData] также предлагает несколько "
"свойств для настройки окончательного вида глобального освещения. Эти свойства "
"можно настроить во время выполнения без повторного запекания узла [VoxelGI].\n"
"[b]Примечание:[/b] Чтобы предотвратить слишком большой рост текстовых файлов "
"сцен ([code].tscn[/code]) и замедление загрузки и сохранения, всегда "
"сохраняйте [VoxelGIData] во внешнем двоичном файле ресурсов ([code].res[/"
"code]) вместо того, чтобы встраивать его в сцену. Это можно сделать, щелкнув "
"стрелку раскрывающегося списка рядом с ресурсом [VoxelGIData], выбрав "
"[b]Изменить[/b], щелкнув значок дискеты в верхней части Инспектора, а затем "
"выбрав [b]Сохранить как...[/b]."

msgid ""
"Returns the bounds of the baked voxel data as an [AABB], which should match "
"[member VoxelGI.size] after being baked (which only contains the size as a "
"[Vector3]).\n"
"[b]Note:[/b] If the size was modified without baking the VoxelGI data, then "
"the value of [method get_bounds] and [member VoxelGI.size] will not match."
msgstr ""
"Возвращает границы запеченных данных вокселя как [AABB], которые должны "
"соответствовать [member VoxelGI.size] после запекания (который содержит "
"только размер как [Vector3]).\n"
"[b]Примечание:[/b] Если размер был изменен без запекания данных VoxelGI, то "
"значение [method get_bounds] и [member VoxelGI.size] не будут совпадать."

msgid ""
"The normal bias to use for indirect lighting and reflections. Higher values "
"reduce self-reflections visible in non-rough materials, at the cost of more "
"visible light leaking and flatter-looking indirect lighting. To prioritize "
"hiding self-reflections over lighting quality, set [member bias] to "
"[code]0.0[/code] and [member normal_bias] to a value between [code]1.0[/code] "
"and [code]2.0[/code]."
msgstr ""
"Нормальное смещение для использования при непрямом освещении и отражениях. "
"Более высокие значения уменьшают самоотражения, видимые в негрубых "
"материалах, за счет более заметной утечки света и более плоского непрямого "
"освещения. Чтобы отдать приоритет скрытию самоотражения над качеством "
"освещения, установите [member bias] на [code]0.0[/code] и [member "
"normal_bias] на значение между [code]1.0[/code] и [code]2.0[/code]."

msgid ""
"The dynamic range to use ([code]1.0[/code] represents a low dynamic range "
"scene brightness). Higher values can be used to provide brighter indirect "
"lighting, at the cost of more visible color banding in dark areas (both in "
"indirect lighting and reflections). To avoid color banding, it's recommended "
"to use the lowest value that does not result in visible light clipping."
msgstr ""
"Динамический диапазон для использования ([code]1.0[/code] представляет собой "
"низкую динамическую яркость сцены). Более высокие значения могут "
"использоваться для обеспечения более яркого непрямого освещения за счет более "
"заметных цветных полос в темных областях (как при непрямом освещении, так и "
"при отражениях). Чтобы избежать цветных полос, рекомендуется использовать "
"наименьшее значение, которое не приводит к отсечению видимого света."

msgid ""
"The energy of the indirect lighting and reflections produced by the [VoxelGI] "
"node. Higher values result in brighter indirect lighting. If indirect "
"lighting looks too flat, try decreasing [member propagation] while increasing "
"[member energy] at the same time. See also [member use_two_bounces] which "
"influences the indirect lighting's effective brightness."
msgstr ""
"Энергия непрямого освещения и отражений, создаваемых узлом [VoxelGI]. Более "
"высокие значения приводят к более яркому непрямому освещению. Если непрямое "
"освещение выглядит слишком плоским, попробуйте уменьшить [member propagation] "
"и одновременно увеличить [member energy]. См. также [member use_two_bounces], "
"который влияет на эффективную яркость непрямого освещения."

msgid ""
"If [code]true[/code], [Environment] lighting is ignored by the [VoxelGI] "
"node. If [code]false[/code], [Environment] lighting is taken into account by "
"the [VoxelGI] node. [Environment] lighting updates in real-time, which means "
"it can be changed without having to bake the [VoxelGI] node again."
msgstr ""
"Если [code]true[/code], освещение [Environment] игнорируется узлом [VoxelGI]. "
"Если [code]false[/code], освещение [Environment] учитывается узлом [VoxelGI]. "
"Освещение [Environment] обновляется в режиме реального времени, что означает, "
"что его можно изменить без повторного запекания узла [VoxelGI]."

msgid ""
"The normal bias to use for indirect lighting and reflections. Higher values "
"reduce self-reflections visible in non-rough materials, at the cost of more "
"visible light leaking and flatter-looking indirect lighting. See also [member "
"bias]. To prioritize hiding self-reflections over lighting quality, set "
"[member bias] to [code]0.0[/code] and [member normal_bias] to a value between "
"[code]1.0[/code] and [code]2.0[/code]."
msgstr ""
"Нормальное смещение для использования при непрямом освещении и отражениях. "
"Более высокие значения уменьшают самоотражения, видимые в негрубых "
"материалах, за счет более заметной утечки света и более плоского непрямого "
"освещения. См. также [member bias]. Чтобы отдать приоритет скрытию "
"самоотражения над качеством освещения, установите [member bias] на [code]0.0[/"
"code] и [member normal_bias] на значение между [code]1.0[/code] и [code]2.0[/"
"code]."

msgid ""
"The multiplier to use when light bounces off a surface. Higher values result "
"in brighter indirect lighting. If indirect lighting looks too flat, try "
"decreasing [member propagation] while increasing [member energy] at the same "
"time. See also [member use_two_bounces] which influences the indirect "
"lighting's effective brightness."
msgstr ""
"Множитель, используемый при отражении света от поверхности. Более высокие "
"значения приводят к более яркому непрямому освещению. Если непрямое освещение "
"выглядит слишком плоским, попробуйте уменьшить [member propagation] и "
"одновременно увеличить [member energy]. См. также [member use_two_bounces], "
"который влияет на эффективную яркость непрямого освещения."

msgid ""
"If [code]true[/code], performs two bounces of indirect lighting instead of "
"one. This makes indirect lighting look more natural and brighter at a small "
"performance cost. The second bounce is also visible in reflections. If the "
"scene appears too bright after enabling [member use_two_bounces], adjust "
"[member propagation] and [member energy]."
msgstr ""
"Если [code]true[/code], выполняет два отражения непрямого освещения вместо "
"одного. Это делает непрямое освещение более естественным и ярким при "
"небольших затратах производительности. Второе отражение также видно в "
"отражениях. Если сцена выглядит слишком яркой после включения [member "
"use_two_bounces], отрегулируйте [member propagation] и [member energy]."

msgid "A vertical scrollbar that goes from top (min) to bottom (max)."
msgstr "Вертикальная полоса прокрутки, идущая сверху (мин.) вниз (макс.)."

msgid ""
"A vertical scrollbar, typically used to navigate through content that extends "
"beyond the visible height of a control. It is a [Range]-based control and "
"goes from top (min) to bottom (max). Note that this direction is the opposite "
"of [VSlider]'s."
msgstr ""
"Вертикальная полоса прокрутки, обычно используемая для навигации по "
"содержимому, выходящему за пределы видимой высоты элемента управления. Это "
"элемент управления на основе [Range], который идет сверху (min) вниз (max). "
"Обратите внимание, что это направление противоположно направлению [VSlider]."

msgid "A vertical line used for separating other controls."
msgstr ""
"Вертикальная линия, используемая для разделения других элементов управления."

msgid ""
"A vertical separator used for separating other controls that are arranged "
"[b]horizontally[/b]. [VSeparator] is purely visual and normally drawn as a "
"[StyleBoxLine]."
msgstr ""
"Вертикальный разделитель, используемый для разделения других элементов "
"управления, расположенных [b]горизонтально[/b]. [VSeparator] является чисто "
"визуальным и обычно отображается как [StyleBoxLine]."

msgid "A vertical slider that goes from bottom (min) to top (max)."
msgstr "Вертикальный ползунок, перемещающийся снизу (мин) вверх (макс)."

msgid ""
"A vertical slider, used to adjust a value by moving a grabber along a "
"vertical axis. It is a [Range]-based control and goes from bottom (min) to "
"top (max). Note that this direction is the opposite of [VScrollBar]'s."
msgstr ""
"Вертикальный ползунок, используемый для регулировки значения путем "
"перемещения захвата вдоль вертикальной оси. Это элемент управления на основе "
"[Range] и идет снизу (мин.) вверх (макс.). Обратите внимание, что это "
"направление противоположно направлению [VScrollBar]."

msgid ""
"A container that splits two child controls vertically and provides a grabber "
"for adjusting the split ratio."
msgstr ""
"Контейнер, который разделяет два дочерних элемента управления по вертикали и "
"предоставляет возможность захвата для регулировки соотношения разделения."

msgid ""
"A container that accepts only two child controls, then arranges them "
"vertically and creates a divisor between them. The divisor can be dragged "
"around to change the size relation between the child controls."
msgstr ""
"Контейнер, который принимает только два дочерних элемента управления, затем "
"размещает их вертикально и создает между ними разделитель. Разделитель можно "
"перетаскивать, чтобы изменить соотношение размеров дочерних элементов "
"управления."

msgid ""
"Holds an [Object]. If the object is [RefCounted], it doesn't update the "
"reference count."
msgstr ""
"Содержит [Object]. Если объект имеет значение [RefCounted], он не обновляет "
"счетчик ссылок."

msgid ""
"A weakref can hold a [RefCounted] without contributing to the reference "
"counter. A weakref can be created from an [Object] using [method "
"@GlobalScope.weakref]. If this object is not a reference, weakref still "
"works, however, it does not have any effect on the object. Weakrefs are "
"useful in cases where multiple classes have variables that refer to each "
"other. Without weakrefs, using these classes could lead to memory leaks, "
"since both references keep each other from being released. Making part of the "
"variables a weakref can prevent this cyclic dependency, and allows the "
"references to be released."
msgstr ""
"Weakref может содержать [RefCounted], не внося вклад в счетчик ссылок. "
"Weakref может быть создана из [Object] с помощью [method "
"@GlobalScope.weakref]. Если этот объект не является ссылкой, weakref все "
"равно работает, однако она не оказывает никакого влияния на объект. Weakref "
"полезны в случаях, когда несколько классов имеют переменные, ссылающиеся друг "
"на друга. Без weakref использование этих классов может привести к утечкам "
"памяти, поскольку обе ссылки не дают друг другу освободиться. Превращение "
"части переменных в weakref может предотвратить эту циклическую зависимость и "
"позволяет освободить ссылки."

msgid ""
"Returns the [Object] this weakref is referring to. Returns [code]null[/code] "
"if that object no longer exists."
msgstr ""
"Возвращает [Object], на который ссылается этот weakref. Возвращает "
"[code]null[/code], если этот объект больше не существует."

msgid "Closes this data channel, notifying the other peer."
msgstr "Закрывает этот канал данных, уведомляя другого однорангового узла."

msgid ""
"Returns the number of bytes currently queued to be sent over this channel."
msgstr ""
"Возвращает количество байтов, находящихся в очереди на отправку по этому "
"каналу."

msgid ""
"Returns the ID assigned to this channel during creation (or auto-assigned "
"during negotiation).\n"
"If the channel is not negotiated out-of-band the ID will only be available "
"after the connection is established (will return [code]65535[/code] until "
"then)."
msgstr ""
"Возвращает ID, назначенный этому каналу во время создания (или автоматически "
"назначенный во время согласования).\n"
"Если канал не согласован вне диапазона, ID будет доступен только после "
"установления соединения (до этого момента будет возвращать [code]65535[/"
"code])."

msgid "Returns the label assigned to this channel during creation."
msgstr "Возвращает метку (label), назначенную данному каналу при создании."

msgid ""
"Returns the [code]maxPacketLifeTime[/code] value assigned to this channel "
"during creation.\n"
"Will be [code]65535[/code] if not specified."
msgstr ""
"Возвращает значение [code]maxPacketLifeTime[/code], назначенное этому каналу "
"при создании.\n"
"Будет [code]65535[/code], если не указано."

msgid ""
"Returns the [code]maxRetransmits[/code] value assigned to this channel during "
"creation.\n"
"Will be [code]65535[/code] if not specified."
msgstr ""
"Возвращает значение [code]maxRetransmits[/code], назначенное этому каналу при "
"создании.\n"
"Будет [code]65535[/code], если не указано."

msgid ""
"Returns the sub-protocol assigned to this channel during creation. An empty "
"string if not specified."
msgstr ""
"Возвращает подпротокол, назначенный этому каналу во время создания. Пустая "
"строка, если не указано."

msgid "Returns the current state of this channel."
msgstr "Возвращает текущее состояние этого канала."

msgid ""
"Returns [code]true[/code] if this channel was created with out-of-band "
"configuration."
msgstr ""
"Возвращает [code]true[/code], если этот канал был создан с использованием "
"внеполосной конфигурации."

msgid ""
"Returns [code]true[/code] if this channel was created with ordering enabled "
"(default)."
msgstr ""
"Возвращает [code]true[/code], если этот канал был создан с включенным "
"упорядочиванием (по умолчанию)."

msgid "Reserved, but not used for now."
msgstr "Зарезервировано, в данный момент не используется."

msgid ""
"Returns [code]true[/code] if the last received packet was transferred as "
"text. See [member write_mode]."
msgstr ""
"Возвращает [code]true[/code], если последний полученный пакет был передан как "
"текст. См. [member write_mode]."

msgid ""
"The transfer mode to use when sending outgoing packet. Either text or binary."
msgstr ""
"Режим передачи, используемый при отправке исходящего пакета. Текстовый или "
"двоичный."

msgid ""
"Tells the channel to send data over this channel as text. An external peer "
"(non-Godot) would receive this as a string."
msgstr ""
"Сообщает каналу отправлять данные по этому каналу как текст. Внешний пир (не "
"Godot) получит это как строку."

msgid ""
"Tells the channel to send data over this channel as binary. An external peer "
"(non-Godot) would receive this as array buffer or blob."
msgstr ""
"Сообщает каналу отправлять данные по этому каналу в двоичном виде. Внешний "
"пир (не Godot) получит это как массив буфера или blob."

msgid "The channel was created, but it's still trying to connect."
msgstr "Канал создан, но он все еще пытается подключиться."

msgid "The channel is currently open, and data can flow over it."
msgstr "В настоящее время канал открыт, и по нему могут передаваться данные."

msgid ""
"The channel is being closed, no new messages will be accepted, but those "
"already in queue will be flushed."
msgstr ""
"Канал закрывается, новые сообщения приниматься не будут, но те, которые уже "
"находятся в очереди, будут очищены."

msgid "The channel was closed, or connection failed."
msgstr "Канал был закрыт или соединение не удалось."

msgid ""
"A simple interface to create a peer-to-peer mesh network composed of "
"[WebRTCPeerConnection] that is compatible with the [MultiplayerAPI]."
msgstr ""
"Простой интерфейс для создания одноранговой ячеистой сети, состоящей из "
"[WebRTCPeerConnection], совместимой с [MultiplayerAPI]."

msgid ""
"This class constructs a full mesh of [WebRTCPeerConnection] (one connection "
"for each peer) that can be used as a [member "
"MultiplayerAPI.multiplayer_peer].\n"
"You can add each [WebRTCPeerConnection] via [method add_peer] or remove them "
"via [method remove_peer]. Peers must be added in [constant "
"WebRTCPeerConnection.STATE_NEW] state to allow it to create the appropriate "
"channels. This class will not create offers nor set descriptions, it will "
"only poll them, and notify connections and disconnections.\n"
"When creating the peer via [method create_client] or [method create_server] "
"the [method MultiplayerPeer.is_server_relay_supported] method will return "
"[code]true[/code] enabling peer exchange and packet relaying when supported "
"by the [MultiplayerAPI] implementation.\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"Этот класс создает полную сетку [WebRTCPeerConnection] (одно соединение для "
"каждого пира), которую можно использовать как [member "
"MultiplayerAPI.multiplayer_peer].\n"
"Вы можете добавить каждый [WebRTCPeerConnection] с помощью [method add_peer] "
"или удалить их с помощью [method remove_peer]. Пиры должны быть добавлены в "
"[constant WebRTCPeerConnection.STATE_NEW] состоянии, чтобы позволить ему "
"создавать соответствующие каналы. Этот класс не будет создавать предложения "
"или задавать описания, он будет только опрашивать их и уведомлять о "
"подключениях и отключениях.\n"
"При создании пира с помощью [method create_client] или [method create_server] "
"метод [method MultiplayerPeer.is_server_relay_supported] вернет [code]true[/"
"code], что позволит обмениваться пирами и ретранслировать пакеты, если "
"поддерживается реализацией [MultiplayerAPI]. \n"
"[b]Примечание:[/b] При экспорте в Android убедитесь, что в настройках "
"экспорта Android включено разрешение [code]INTERNET[/code] перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid ""
"Add a new peer to the mesh with the given [param peer_id]. The "
"[WebRTCPeerConnection] must be in state [constant "
"WebRTCPeerConnection.STATE_NEW].\n"
"Three channels will be created for reliable, unreliable, and ordered "
"transport. The value of [param unreliable_lifetime] will be passed to the "
"[code]\"maxPacketLifetime\"[/code] option when creating unreliable and "
"ordered channels (see [method WebRTCPeerConnection.create_data_channel])."
msgstr ""
"Добавьте нового пира в сетку с заданным [param peer_id]. "
"[WebRTCPeerConnection] должен находиться в состоянии [constant "
"WebRTCPeerConnection.STATE_NEW].\n"
"Будут созданы три канала для надежного, ненадежного и упорядоченного "
"транспорта. Значение [param unreliable_lifetime] будет передано в параметр "
"[code]\"maxPacketLifetime\"[/code] при создании ненадежных и упорядоченных "
"каналов (см. [method WebRTCPeerConnection.create_data_channel])."

msgid ""
"Initialize the multiplayer peer as a client with the given [param peer_id] "
"(must be between 2 and 2147483647). In this mode, you should only call "
"[method add_peer] once and with [param peer_id] of [code]1[/code]. This mode "
"enables [method MultiplayerPeer.is_server_relay_supported], allowing the "
"upper [MultiplayerAPI] layer to perform peer exchange and packet relaying.\n"
"You can optionally specify a [param channels_config] array of [enum "
"MultiplayerPeer.TransferMode] which will be used to create extra channels "
"(WebRTC only supports one transfer mode per channel)."
msgstr ""
"Инициализируйте многопользовательский одноранговый узел как клиент с заданным "
"[param peer_id] (должен быть между 2 и 2147483647). В этом режиме вам следует "
"вызывать [method add_peer] только один раз и с [param peer_id] из [code]1[/"
"code]. Этот режим включает [method "
"MultiplayerPeer.is_server_relay_supported], позволяя верхнему слою "
"[MultiplayerAPI] выполнять обмен одноранговыми узлами и ретрансляцию "
"пакетов.\n"
"Вы можете дополнительно указать массив [param channels_config] [enum "
"MultiplayerPeer.TransferMode], который будет использоваться для создания "
"дополнительных каналов (WebRTC поддерживает только один режим передачи на "
"канал)."

msgid ""
"Initialize the multiplayer peer as a mesh (i.e. all peers connect to each "
"other) with the given [param peer_id] (must be between 1 and 2147483647)."
msgstr ""
"Инициализируйте многопользовательский узел как сетку (т. е. все узлы "
"подключаются друг к другу) с заданным [param peer_id] (должен быть в "
"диапазоне от 1 до 2147483647)."

msgid ""
"Initialize the multiplayer peer as a server (with unique ID of [code]1[/"
"code]). This mode enables [method MultiplayerPeer.is_server_relay_supported], "
"allowing the upper [MultiplayerAPI] layer to perform peer exchange and packet "
"relaying.\n"
"You can optionally specify a [param channels_config] array of [enum "
"MultiplayerPeer.TransferMode] which will be used to create extra channels "
"(WebRTC only supports one transfer mode per channel)."
msgstr ""
"Инициализируйте многопользовательский одноранговый узел как сервер (с "
"уникальным идентификатором [code]1[/code]). Этот режим включает [method "
"MultiplayerPeer.is_server_relay_supported], позволяя верхнему слою "
"[MultiplayerAPI] выполнять обмен одноранговыми узлами и ретрансляцию "
"пакетов.\n"
"Вы можете дополнительно указать массив [param channels_config] [enum "
"MultiplayerPeer.TransferMode], который будет использоваться для создания "
"дополнительных каналов (WebRTC поддерживает только один режим передачи на "
"канал)."

msgid ""
"Returns a dictionary representation of the peer with given [param peer_id] "
"with three keys. [code]\"connection\"[/code] containing the "
"[WebRTCPeerConnection] to this peer, [code]\"channels\"[/code] an array of "
"three [WebRTCDataChannel], and [code]\"connected\"[/code] a boolean "
"representing if the peer connection is currently connected (all three "
"channels are open)."
msgstr ""
"Возвращает словарное представление однорангового узла с заданным [param "
"peer_id] с тремя ключами. [code]\"connection\"[/code] содержит "
"[WebRTCPeerConnection] к этому одноранговому узлу, [code]\"channels\"[/code] "
"— массив из трех [WebRTCDataChannel] и [code]\"connected\"[/code] — "
"логическое значение, указывающее, подключено ли в данный момент одноранговое "
"соединение (все три канала открыты)."

msgid ""
"Returns a dictionary which keys are the peer ids and values the peer "
"representation as in [method get_peer]."
msgstr ""
"Возвращает словарь, ключами которого являются идентификаторы одноранговых "
"узлов, а значениями — представление одноранговых узлов, как в [method "
"get_peer]."

msgid ""
"Returns [code]true[/code] if the given [param peer_id] is in the peers map "
"(it might not be connected though)."
msgstr ""
"Возвращает [code]true[/code], если указанный [param peer_id] находится в "
"карте пиров (хотя он может быть не подключен)."

msgid ""
"Remove the peer with given [param peer_id] from the mesh. If the peer was "
"connected, and [signal MultiplayerPeer.peer_connected] was emitted for it, "
"then [signal MultiplayerPeer.peer_disconnected] will be emitted."
msgstr ""
"Удалить пир с заданным [param peer_id] из сетки. Если пир был подключен и для "
"него был отправлен [signal MultiplayerPeer.peer_connected], то будет "
"отправлен [signal MultiplayerPeer.peer_disconnected]."

msgid "Interface to a WebRTC peer connection."
msgstr "Интерфейс для однорангового пир соединения WebRTC."

msgid ""
"A WebRTC connection between the local computer and a remote peer. Provides an "
"interface to connect, maintain and monitor the connection.\n"
"Setting up a WebRTC connection between two peers may not seem a trivial task, "
"but it can be broken down into 3 main steps:\n"
"- The peer that wants to initiate the connection ([code]A[/code] from now on) "
"creates an offer and send it to the other peer ([code]B[/code] from now on).\n"
"- [code]B[/code] receives the offer, generate and answer, and sends it to "
"[code]A[/code]).\n"
"- [code]A[/code] and [code]B[/code] then generates and exchange ICE "
"candidates with each other.\n"
"After these steps, the connection should become connected. Keep on reading or "
"look into the tutorial for more information."
msgstr ""
"WebRTC-соединение между локальным компьютером и удаленным пиром. "
"Предоставляет интерфейс для подключения, поддержки и мониторинга соединения.\n"
"Настройка WebRTC-соединения между двумя пирами может показаться нетривиальной "
"задачей, но ее можно разбить на 3 основных шага:\n"
"- Пир, который хочет инициировать соединение (далее [code]A[/code]), создает "
"предложение и отправляет его другому пиру (далее [code]B[/code]).\n"
"- [code]B[/code] получает предложение, генерирует и отвечает, а затем "
"отправляет его [code]A[/code]).\n"
"- [code]A[/code] и [code]B[/code] затем генерируют и обмениваются ICE-"
"кандидатами друг с другом.\n"
"После этих шагов соединение должно стать подключенным. Продолжайте читать или "
"загляните в руководство для получения дополнительной информации."

msgid ""
"Add an ice candidate generated by a remote peer (and received over the "
"signaling server). See [signal ice_candidate_created]."
msgstr ""
"Добавьте кандидата ice, сгенерированного удаленным пиром (и полученного через "
"сервер сигнализации). См. [signal ice_candidate_created]."

msgid ""
"Close the peer connection and all data channels associated with it.\n"
"[b]Note:[/b] You cannot reuse this object for a new connection unless you "
"call [method initialize]."
msgstr ""
"Закройте одноранговое соединение и все каналы данных, связанные с ним.\n"
"[b]Примечание:[/b] Вы не сможете повторно использовать этот объект для нового "
"соединения, если не вызовете [method initialize]."

msgid ""
"Returns a new [WebRTCDataChannel] (or [code]null[/code] on failure) with "
"given [param label] and optionally configured via the [param options] "
"dictionary. This method can only be called when the connection is in state "
"[constant STATE_NEW].\n"
"There are two ways to create a working data channel: either call [method "
"create_data_channel] on only one of the peer and listen to [signal "
"data_channel_received] on the other, or call [method create_data_channel] on "
"both peers, with the same values, and the [code]\"negotiated\"[/code] option "
"set to [code]true[/code].\n"
"Valid [param options] are:\n"
"[codeblock]\n"
"{\n"
"\t\"negotiated\": true, # When set to true (default off), means the channel "
"is negotiated out of band. \"id\" must be set too. \"data_channel_received\" "
"will not be called.\n"
"\t\"id\": 1, # When \"negotiated\" is true this value must also be set to the "
"same value on both peer.\n"
"\n"
"\t# Only one of maxRetransmits and maxPacketLifeTime can be specified, not "
"both. They make the channel unreliable (but also better at real time).\n"
"\t\"maxRetransmits\": 1, # Specify the maximum number of attempt the peer "
"will make to retransmits packets if they are not acknowledged.\n"
"\t\"maxPacketLifeTime\": 100, # Specify the maximum amount of time before "
"giving up retransmitions of unacknowledged packets (in milliseconds).\n"
"\t\"ordered\": true, # When in unreliable mode (i.e. either "
"\"maxRetransmits\" or \"maxPacketLifetime\" is set), \"ordered\" (true by "
"default) specify if packet ordering is to be enforced.\n"
"\n"
"\t\"protocol\": \"my-custom-protocol\", # A custom sub-protocol string for "
"this channel.\n"
"}\n"
"[/codeblock]\n"
"[b]Note:[/b] You must keep a reference to channels created this way, or it "
"will be closed."
msgstr ""
"Возвращает новый [WebRTCDataChannel] (или [code]null[/code] при неудаче) с "
"заданной [param label] и опционально настроенным через словарь [param "
"options]. Этот метод может быть вызван только тогда, когда соединение "
"находится в состоянии [constant STATE_NEW].\n"
"Существует два способа создания рабочего канала данных: либо вызвать [method "
"create_data_channel] только на одном из одноранговых узлов и прослушивать "
"[signal data_channel_received] на другом, либо вызвать [method "
"create_data_channel] на обоих одноранговых узлах с одинаковыми значениями и "
"параметром [code]\"negotiated\"[/code], установленным на [code]true[/code]. \n"
"Допустимые [param options]:\n"
"[codeblock]\n"
"{\n"
"\t\"negotiated\": true, # Если установлено значение true (по умолчанию "
"отключено), это означает, что канал согласовывается вне диапазона. Также "
"необходимо задать «id». «data_channel_received» не будет вызываться.\n"
"\t\"id\": 1, # Если «negotiated» имеет значение true, это значение также "
"должно быть установлено на одно и то же значение на обоих одноранговых "
"узлах.\n"
"\n"
"\t# Можно указать только один из maxRetransmits и maxPacketLifeTime, но не "
"оба. Они делают канал ненадежным (но также лучше в реальном времени).\n"
"\t\"maxRetransmits\": 1, # Укажите максимальное количество попыток, которые "
"одноранговый узел предпримет для повторной передачи пакетов, если они не "
"подтверждены.\n"
"\t\"maxPacketLifeTime\": 100, # Укажите максимальный промежуток времени до "
"прекращения повторной передачи неподтвержденных пакетов (в миллисекундах).\n"
"\t\"ordered\": true, # В ненадежном режиме (т. е. установлено либо "
"«maxRetransmits», либо «maxPacketLifetime») «ordered» (по умолчанию true) "
"указывает, следует ли принудительно применять упорядочивание пакетов.\n"
"\n"
"\t\"protocol\": \"my-custom-protocol\", # Пользовательская строка под-"
"протокола для этого канала.\n"
"}\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Вы должны сохранить ссылку на каналы, созданные таким "
"образом, иначе они будут закрыты."

msgid ""
"Creates a new SDP offer to start a WebRTC connection with a remote peer. At "
"least one [WebRTCDataChannel] must have been created before calling this "
"method.\n"
"If this functions returns [constant OK], [signal session_description_created] "
"will be called when the session is ready to be sent."
msgstr ""
"Создает новое предложение SDP для запуска соединения WebRTC с удаленным "
"пиром. Перед вызовом этого метода должен быть создан хотя бы один "
"[WebRTCDataChannel]. \n"
"Если эта функция возвращает [constant OK], [signal "
"session_description_created] будет вызван, когда сеанс будет готов к отправке."

msgid "Returns the connection state."
msgstr "Возвращает состояние соединения."

msgid ""
"Returns the ICE [enum GatheringState] of the connection. This lets you "
"detect, for example, when collection of ICE candidates has finished."
msgstr ""
"Возвращает ICE [enum GatheringState] соединения. Это позволяет определить, "
"например, когда сбор кандидатов ICE завершен."

msgid ""
"Returns the signaling state on the local end of the connection while "
"connecting or reconnecting to another peer."
msgstr ""
"Возвращает состояние сигнализации на локальном конце соединения при "
"подключении или повторном подключении к другому одноранговому узлу."

msgid ""
"Re-initialize this peer connection, closing any previously active connection, "
"and going back to state [constant STATE_NEW]. A dictionary of [param "
"configuration] options can be passed to configure the peer connection.\n"
"Valid [param configuration] options are:\n"
"[codeblock]\n"
"{\n"
"\t\"iceServers\": [\n"
"\t\t{\n"
"\t\t\t\"urls\": [ \"stun:stun.example.com:3478\" ], # One or more STUN "
"servers.\n"
"\t\t},\n"
"\t\t{\n"
"\t\t\t\"urls\": [ \"turn:turn.example.com:3478\" ], # One or more TURN "
"servers.\n"
"\t\t\t\"username\": \"a_username\", # Optional username for the TURN server.\n"
"\t\t\t\"credential\": \"a_password\", # Optional password for the TURN "
"server.\n"
"\t\t}\n"
"\t]\n"
"}\n"
"[/codeblock]"
msgstr ""
"Повторно инициализируйте это одноранговое соединение, закрыв все ранее "
"активные соединения и вернувшись в состояние [constant STATE_NEW]. Для "
"настройки однорангового соединения можно передать словарь параметров [param "
"configuration]. \n"
"Допустимые параметры [param configuration]:\n"
"[codeblock]\n"
"{\n"
"\t\"iceServers\": [\n"
"\t\t{\n"
"\t\t\t\"urls\": [ \"stun:stun.example.com:3478\" ], # Один или несколько STUN-"
"серверов.\n"
"\t\t},\n"
"\t\t{\n"
"\t\t\t\"urls\": [ \"turn:turn.example.com:3478\" ], # Один или несколько STUN-"
"серверов.\n"
"\t\t\t\"username\": \"a_username\", # Необязательное имя пользователя для "
"сервера TURN.\n"
"\t\t\t\"credential\": \"a_password\", # Необязательное имя пользователя для "
"сервера TURN.\n"
"\t\t}\n"
"\t]\n"
"}\n"
"[/codeblock]"

msgid ""
"Call this method frequently (e.g. in [method Node._process] or [method "
"Node._physics_process]) to properly receive signals."
msgstr ""
"Чаще вызывайте этот метод (например, в [method Node._process] или [method "
"Node._physics_process]) для правильного приема сигналов."

msgid ""
"Sets the [param extension_class] as the default "
"[WebRTCPeerConnectionExtension] returned when creating a new "
"[WebRTCPeerConnection]."
msgstr ""
"Устанавливает [param extension_class] в качестве "
"[WebRTCPeerConnectionExtension] по умолчанию, возвращаемого при создании "
"нового [WebRTCPeerConnection]."

msgid ""
"Sets the SDP description of the local peer. This should be called in response "
"to [signal session_description_created].\n"
"After calling this function the peer will start emitting [signal "
"ice_candidate_created] (unless an [enum Error] different from [constant OK] "
"is returned)."
msgstr ""
"Устанавливает описание SDP локального однорангового узла. Это должно быть "
"вызвано в ответ на [signal session_description_created].\n"
"После вызова этой функции одноранговый узел начнет выдавать [signal "
"ice_candidate_created] (если только не будет возвращено [enum Error], "
"отличное от [constant OK])."

msgid ""
"Sets the SDP description of the remote peer. This should be called with the "
"values generated by a remote peer and received over the signaling server.\n"
"If [param type] is [code]\"offer\"[/code] the peer will emit [signal "
"session_description_created] with the appropriate answer.\n"
"If [param type] is [code]\"answer\"[/code] the peer will start emitting "
"[signal ice_candidate_created]."
msgstr ""
"Устанавливает описание SDP удаленного пира. Это должно быть вызвано со "
"значениями, сгенерированными удаленным пиром и полученными через сервер "
"сигнализации.\n"
"Если [param type] — [code]\"offer\"[/code], то пир выдаст [signal "
"session_description_created] с соответствующим ответом.\n"
"Если [param type] — [code]\"answer\"[/code], то пир начнет выдавать [signal "
"ice_candidate_created]."

msgid ""
"Emitted when a new in-band channel is received, i.e. when the channel was "
"created with [code]negotiated: false[/code] (default).\n"
"The object will be an instance of [WebRTCDataChannel]. You must keep a "
"reference of it or it will be closed automatically. See [method "
"create_data_channel]."
msgstr ""
"Выдается при получении нового внутриполосного канала, т. е. когда канал был "
"создан с [code]negotiated: false[/code] (по умолчанию).\n"
"Объект будет экземпляром [WebRTCDataChannel]. Вы должны сохранить ссылку на "
"него, иначе он будет автоматически закрыт. См. [method create_data_channel]."

msgid ""
"Emitted when a new ICE candidate has been created. The three parameters are "
"meant to be passed to the remote peer over the signaling server."
msgstr ""
"Выдается при создании нового кандидата ICE. Три параметра предназначены для "
"передачи удаленному пиру через сигнальный сервер."

msgid ""
"Emitted after a successful call to [method create_offer] or [method "
"set_remote_description] (when it generates an answer). The parameters are "
"meant to be passed to [method set_local_description] on this object, and sent "
"to the remote peer over the signaling server."
msgstr ""
"Выдается после успешного вызова [method create_offer] или [method "
"set_remote_description] (когда он генерирует ответ). Параметры должны быть "
"переданы [method set_local_description] на этом объекте и отправлены "
"удаленному пиру через сервер сигнализации."

msgid ""
"The connection is new, data channels and an offer can be created in this "
"state."
msgstr ""
"Новое соединение , каналы передачи данных и предложение могут быть созданы в "
"этом состоянии."

msgid ""
"The peer is connecting, ICE is in progress, none of the transports has failed."
msgstr ""
"Узел подключается, ICE выполняется, ни один из транспортов не дал сбоев."

msgid "The peer is connected, all ICE transports are connected."
msgstr "Узел подключен, все транспорты ICE подключены."

msgid "At least one ICE transport is disconnected."
msgstr "По крайней мере один транспорт ICE отключен."

msgid "One or more of the ICE transports failed."
msgstr "Один или несколько транспортов ICE вышли из строя."

msgid ""
"The peer connection is closed (after calling [method close] for example)."
msgstr ""
"Соединение с одноранговым узлом закрыто (например, после вызова [method "
"close])."

msgid "The peer connection was just created and hasn't done any networking yet."
msgstr ""
"Соединение между одноранговыми узлами было только что создано и еще не "
"выполняло никаких сетевых операций."

msgid ""
"The ICE agent is in the process of gathering candidates for the connection."
msgstr "Агент ICE находится в процессе сбора кандидатов на подключение."

msgid ""
"The ICE agent has finished gathering candidates. If something happens that "
"requires collecting new candidates, such as a new interface being added or "
"the addition of a new ICE server, the state will revert to gathering to "
"gather those candidates."
msgstr ""
"Агент ICE завершил сбор кандидатов. Если произойдет что-то, требующее сбора "
"новых кандидатов, например, добавление нового интерфейса или добавление "
"нового сервера ICE, состояние вернется к сбору, чтобы собрать этих кандидатов."

msgid ""
"There is no ongoing exchange of offer and answer underway. This may mean that "
"the [WebRTCPeerConnection] is new ([constant STATE_NEW]) or that negotiation "
"is complete and a connection has been established ([constant "
"STATE_CONNECTED])."
msgstr ""
"Не происходит никакого текущего обмена предложением и ответом. Это может "
"означать, что [WebRTCPeerConnection] является новым ([constant STATE_NEW]) "
"или что переговоры завершены и соединение установлено ([constant "
"STATE_CONNECTED])."

msgid ""
"The local peer has called [method set_local_description], passing in SDP "
"representing an offer (usually created by calling [method create_offer]), and "
"the offer has been applied successfully."
msgstr ""
"Локальный узел вызвал [method set_local_description], передав SDP, "
"представляющий предложение (обычно созданное путем вызова [method "
"create_offer]), и предложение было успешно применено."

msgid ""
"The remote peer has created an offer and used the signaling server to deliver "
"it to the local peer, which has set the offer as the remote description by "
"calling [method set_remote_description]."
msgstr ""
"Удаленный узел создал предложение и использовал сервер сигнализации для его "
"доставки локальному узлу, который установил предложение в качестве удаленного "
"описания, вызвав [method set_remote_description]."

msgid ""
"The offer sent by the remote peer has been applied and an answer has been "
"created and applied by calling [method set_local_description]. This "
"provisional answer describes the supported media formats and so forth, but "
"may not have a complete set of ICE candidates included. Further candidates "
"will be delivered separately later."
msgstr ""
"Предложение, отправленное удаленным пиром, было применено, и ответ был создан "
"и применен путем вызова [method set_local_description]. Этот предварительный "
"ответ описывает поддерживаемые форматы медиа и т. д., но может не включать "
"полный набор кандидатов ICE. Дополнительные кандидаты будут доставлены "
"отдельно позже."

msgid ""
"A provisional answer has been received and successfully applied in response "
"to an offer previously sent and established by calling [method "
"set_local_description]."
msgstr ""
"Предварительный ответ был получен и успешно применен в ответ на предложение, "
"ранее отправленное и установленное путем вызова [method "
"set_local_description]."

msgid "The [WebRTCPeerConnection] has been closed."
msgstr "[WebRTC PeerConnection] было закрыто."

msgid "Base class for WebSocket server and client."
msgstr "Базовый класс для сервера и клиента WebSocket."

msgid ""
"Base class for WebSocket server and client, allowing them to be used as "
"multiplayer peer for the [MultiplayerAPI].\n"
"[b]Note:[/b] When exporting to Android, make sure to enable the "
"[code]INTERNET[/code] permission in the Android export preset before "
"exporting the project or using one-click deploy. Otherwise, network "
"communication of any kind will be blocked by Android."
msgstr ""
"Базовый класс для сервера и клиента WebSocket, позволяющий использовать их в "
"качестве многопользовательского однорангового узла для [MultiplayerAPI].\n"
"[b]Примечание:[/b] При экспорте в Android обязательно включите разрешение "
"[code]INTERNET[/code] в предустановке экспорта Android перед экспортом "
"проекта или использованием развертывания в один клик. В противном случае "
"сетевое взаимодействие любого рода будет заблокировано Android."

msgid ""
"Starts a new multiplayer client connecting to the given [param url]. TLS "
"certificates will be verified against the hostname when connecting using the "
"[code]wss://[/code] protocol. You can pass the optional [param "
"tls_client_options] parameter to customize the trusted certification "
"authorities, or disable the common name verification. See [method "
"TLSOptions.client] and [method TLSOptions.client_unsafe].\n"
"[b]Note:[/b] It is recommended to specify the scheme part of the URL, i.e. "
"the [param url] should start with either [code]ws://[/code] or [code]wss://[/"
"code]."
msgstr ""
"Запускает новый многопользовательский клиент, подключающийся к указанному "
"[param url]. Сертификаты TLS будут проверены по имени хоста при подключении с "
"использованием протокола [code]wss://[/code]. Вы можете передать "
"необязательный параметр [param tls_client_options], чтобы настроить "
"доверенные центры сертификации, или отключить проверку общего имени. См. "
"[method TLSOptions.client] и [method TLSOptions.client_unsafe].\n"
"[b]Примечание:[/b] Рекомендуется указывать часть схемы URL, т. е. [param url] "
"должен начинаться либо с [code]ws://[/code], либо с [code]wss://[/code]."

msgid ""
"Starts a new multiplayer server listening on the given [param port]. You can "
"optionally specify a [param bind_address], and provide valid [param "
"tls_server_options] to use TLS. See [method TLSOptions.server]."
msgstr ""
"Запускает новый многопользовательский сервер, прослушивающий указанный [param "
"port]. Вы можете дополнительно указать [param bind_address] и предоставить "
"допустимые [param tls_server_options] для использования TLS. См. [method "
"TLSOptions.server]."

msgid "Returns the [WebSocketPeer] associated to the given [param peer_id]."
msgstr "Возвращает [WebSocketPeer], связанный с указанным [param peer_id]."

msgid "Returns the IP address of the given peer."
msgstr "Возвращает IP-адрес указанного однорангового узла."

msgid "Returns the remote port of the given peer."
msgstr "Возвращает удаленный порт указанного однорангового узла."

msgid ""
"The extra headers to use during handshake. See [member "
"WebSocketPeer.handshake_headers] for more details."
msgstr ""
"Дополнительные заголовки для использования во время рукопожатия. См. [member "
"WebSocketPeer.handshake_headers] для получения более подробной информации."

msgid ""
"The maximum time each peer can stay in a connecting state before being "
"dropped."
msgstr ""
"Максимальное время, в течение которого каждый узел может оставаться в "
"состоянии подключения, прежде чем соединение будет отключено."

msgid ""
"The inbound buffer size for connected peers. See [member "
"WebSocketPeer.inbound_buffer_size] for more details."
msgstr ""
"Размер входящего буфера для подключенных пиров. См. [member "
"WebSocketPeer.inbound_buffer_size] для получения более подробной информации."

msgid ""
"The maximum number of queued packets for connected peers. See [member "
"WebSocketPeer.max_queued_packets] for more details."
msgstr ""
"Максимальное количество пакетов в очереди для подключенных пиров. См. [member "
"WebSocketPeer.max_queued_packets] для получения более подробной информации."

msgid ""
"The outbound buffer size for connected peers. See [member "
"WebSocketPeer.outbound_buffer_size] for more details."
msgstr ""
"Размер исходящего буфера для подключенных пиров. См. [member "
"WebSocketPeer.outbound_buffer_size] для получения более подробной информации."

msgid ""
"The supported WebSocket sub-protocols. See [member "
"WebSocketPeer.supported_protocols] for more details."
msgstr ""
"Поддерживаемые подпротоколы WebSocket. Подробнее см. [member "
"WebSocketPeer.supported_protocols]."

msgid "A WebSocket connection."
msgstr "Соединение WebSocket."

msgid ""
"This class represents WebSocket connection, and can be used as a WebSocket "
"client (RFC 6455-compliant) or as a remote peer of a WebSocket server.\n"
"You can send WebSocket binary frames using [method PacketPeer.put_packet], "
"and WebSocket text frames using [method send] (prefer text frames when "
"interacting with text-based API). You can check the frame type of the last "
"packet via [method was_string_packet].\n"
"To start a WebSocket client, first call [method connect_to_url], then "
"regularly call [method poll] (e.g. during [Node] process). You can query the "
"socket state via [method get_ready_state], get the number of pending packets "
"using [method PacketPeer.get_available_packet_count], and retrieve them via "
"[method PacketPeer.get_packet].\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"\n"
"var socket = WebSocketPeer.new()\n"
"\n"
"func _ready():\n"
"\tsocket.connect_to_url(\"wss://example.com\")\n"
"\n"
"func _process(delta):\n"
"\tsocket.poll()\n"
"\tvar state = socket.get_ready_state()\n"
"\tif state == WebSocketPeer.STATE_OPEN:\n"
"\t\twhile socket.get_available_packet_count():\n"
"\t\t\tprint(\"Packet: \", socket.get_packet())\n"
"\telif state == WebSocketPeer.STATE_CLOSING:\n"
"\t\t# Keep polling to achieve proper close.\n"
"\t\tpass\n"
"\telif state == WebSocketPeer.STATE_CLOSED:\n"
"\t\tvar code = socket.get_close_code()\n"
"\t\tvar reason = socket.get_close_reason()\n"
"\t\tprint(\"WebSocket closed with code: %d, reason %s. Clean: %s\" % [code, "
"reason, code != -1])\n"
"\t\tset_process(false) # Stop processing.\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"To use the peer as part of a WebSocket server refer to [method accept_stream] "
"and the online tutorial."
msgstr ""
"Этот класс представляет соединение WebSocket и может использоваться как "
"клиент WebSocket (соответствует RFC 6455) или как удаленный узел сервера "
"WebSocket.\n"
"Вы можете отправлять двоичные кадры WebSocket с помощью [method "
"PacketPeer.put_packet], а текстовые кадры WebSocket с помощью [method send] "
"(предпочтительнее текстовые кадры при взаимодействии с текстовым API). Вы "
"можете проверить тип кадра последнего пакета с помощью [method "
"was_string_packet].\n"
"Чтобы запустить клиент WebSocket, сначала вызовите [method connect_to_url], "
"затем регулярно вызывайте [method poll] (например, во время процесса [Node]). "
"Вы можете запросить состояние сокета с помощью [method get_ready_state], "
"получить количество ожидающих пакетов с помощью [method "
"PacketPeer.get_available_packet_count] и извлечь их с помощью [method "
"PacketPeer.get_packet].\n"
"[codeblocks]\n"
"[gdscript]\n"
"extends Node\n"
"\n"
"var socket = WebSocketPeer.new()\n"
"\n"
"func _ready():\n"
"\tsocket.connect_to_url(\"wss://example.com\")\n"
"\n"
"func _process(delta):\n"
"\tsocket.poll()\n"
"\tvar state = socket.get_ready_state()\n"
"\tif state == WebSocketPeer.STATE_OPEN:\n"
"\t\twhile socket.get_available_packet_count():\n"
"\t\t\tprint(\"Packet: \", socket.get_packet())\n"
"\telif state == WebSocketPeer.STATE_CLOSING:\n"
"\t\t# Продолжайте опросы, чтобы добиться надлежащего закрытия.\n"
"\t\tpass\n"
"\telif state == WebSocketPeer.STATE_CLOSED:\n"
"\t\tvar code = socket.get_close_code()\n"
"\t\tvar reason = socket.get_close_reason()\n"
"\t\tprint(\"WebSocket закрыт с кодом: %d, reason %s. Clean: %s\" % [code, "
"reason, code != -1])\n"
"\t\tset_process(false) # Остановить обработку.\n"
"[/gdscript]\n"
"[/codeblocks]\n"
"Чтобы использовать одноранговый узел как часть сервера WebSocket, обратитесь "
"к [method accept_stream] и онлайн-руководству."

msgid ""
"Accepts a peer connection performing the HTTP handshake as a WebSocket "
"server. The [param stream] must be a valid TCP stream retrieved via [method "
"TCPServer.take_connection], or a TLS stream accepted via [method "
"StreamPeerTLS.accept_stream].\n"
"[b]Note:[/b] Not supported in Web exports due to browsers' restrictions."
msgstr ""
"Принимает одноранговое соединение, выполняющее HTTP-рукопожатие как сервер "
"WebSocket. [param stream] должен быть допустимым потоком TCP, полученным "
"через [method TCPServer.take_connection], или потоком TLS, принятым через "
"[method StreamPeerTLS.accept_stream].\n"
"[b]Примечание:[/b] Не поддерживается в веб-экспорте из-за ограничений "
"браузеров."

msgid ""
"Closes this WebSocket connection. [param code] is the status code for the "
"closure (see RFC 6455 section 7.4 for a list of valid status codes). [param "
"reason] is the human readable reason for closing the connection (can be any "
"UTF-8 string that's smaller than 123 bytes). If [param code] is negative, the "
"connection will be closed immediately without notifying the remote peer.\n"
"[b]Note:[/b] To achieve a clean close, you will need to keep polling until "
"[constant STATE_CLOSED] is reached.\n"
"[b]Note:[/b] The Web export might not support all status codes. Please refer "
"to browser-specific documentation for more details."
msgstr ""
"Закрывает это соединение WebSocket. [param code] — код состояния для закрытия "
"(см. RFC 6455 раздел 7.4 для списка допустимых кодов состояния). [param "
"reason] — понятная человеку причина закрытия соединения (может быть любой "
"строкой UTF-8 длиной менее 123 байт). Если [param code] отрицательный, "
"соединение будет немедленно закрыто без уведомления удаленного однорангового "
"узла.\n"
"[b]Примечание:[/b] Чтобы добиться чистого закрытия, вам нужно будет "
"продолжать опрос, пока не будет достигнуто [constant STATE_CLOSED].\n"
"[b]Примечание:[/b] Веб-экспорт может не поддерживать все коды состояния. "
"Более подробную информацию см. в документации по браузеру."

msgid ""
"Connects to the given URL. TLS certificates will be verified against the "
"hostname when connecting using the [code]wss://[/code] protocol. You can pass "
"the optional [param tls_client_options] parameter to customize the trusted "
"certification authorities, or disable the common name verification. See "
"[method TLSOptions.client] and [method TLSOptions.client_unsafe].\n"
"[b]Note:[/b] This method is non-blocking, and will return [constant OK] "
"before the connection is established as long as the provided parameters are "
"valid and the peer is not in an invalid state (e.g. already connected). "
"Regularly call [method poll] (e.g. during [Node] process) and check the "
"result of [method get_ready_state] to know whether the connection succeeds or "
"fails.\n"
"[b]Note:[/b] To avoid mixed content warnings or errors in Web, you may have "
"to use a [param url] that starts with [code]wss://[/code] (secure) instead of "
"[code]ws://[/code]. When doing so, make sure to use the fully qualified "
"domain name that matches the one defined in the server's TLS certificate. Do "
"not connect directly via the IP address for [code]wss://[/code] connections, "
"as it won't match with the TLS certificate."
msgstr ""
"Подключается к указанному URL. Сертификаты TLS будут проверены по имени хоста "
"при подключении с использованием протокола [code]wss://[/code]. Вы можете "
"передать необязательный параметр [param tls_client_options], чтобы настроить "
"доверенные центры сертификации, или отключить проверку общего имени. См. "
"[method TLSOptions.client] и [method TLSOptions.client_unsafe].\n"
"[b]Примечание:[/b] Этот метод не блокируется и вернет [constant OK] до "
"установки соединения, если предоставленные параметры действительны, а "
"одноранговый узел не находится в недопустимом состоянии (например, уже "
"подключен). Регулярно вызывайте [method poll] (например, во время процесса "
"[Node]) и проверяйте результат [method get_ready_state], чтобы узнать, "
"успешно ли установлено соединение или нет.\n"
"[b]Примечание:[/b] Чтобы избежать предупреждений о смешанном контенте или "
"ошибок в Интернете, вам, возможно, придется использовать [param url], который "
"начинается с [code]wss://[/code] (безопасный) вместо [code]ws://[/code]. При "
"этом обязательно используйте полное доменное имя, которое соответствует "
"указанному в сертификате TLS сервера. Не подключайтесь напрямую через IP-"
"адрес для соединений [code]wss://[/code], так как он не будет соответствовать "
"сертификату TLS."

msgid ""
"Returns the received WebSocket close frame status code, or [code]-1[/code] "
"when the connection was not cleanly closed. Only call this method when "
"[method get_ready_state] returns [constant STATE_CLOSED]."
msgstr ""
"Возвращает полученный код статуса закрытия кадра WebSocket или [code]-1[/"
"code], если соединение не было закрыто чисто. Вызывайте этот метод только "
"тогда, когда [method get_ready_state] возвращает [constant STATE_CLOSED]."

msgid ""
"Returns the received WebSocket close frame status reason string. Only call "
"this method when [method get_ready_state] returns [constant STATE_CLOSED]."
msgstr ""
"Возвращает полученную строку причины статуса закрытия фрейма WebSocket. "
"Вызывайте этот метод только тогда, когда [method get_ready_state] возвращает "
"[constant STATE_CLOSED]."

msgid ""
"Returns the IP address of the connected peer.\n"
"[b]Note:[/b] Not available in the Web export."
msgstr ""
"Возвращает IP-адрес подключенного однорангового узла.\n"
"[b]Примечание:[/b] Недоступно в веб-экспорте."

msgid ""
"Returns the remote port of the connected peer.\n"
"[b]Note:[/b] Not available in the Web export."
msgstr ""
"Возвращает удаленный порт подключенного однорангового узла.\n"
"[b]Примечание:[/b] Недоступно в веб-экспорте."

msgid ""
"Returns the current amount of data in the outbound websocket buffer. [b]Note:"
"[/b] Web exports use WebSocket.bufferedAmount, while other platforms use an "
"internal buffer."
msgstr ""
"Возвращает текущий объем данных в исходящем буфере веб-сокета. [b]Примечание:"
"[/b] Веб-экспорт использует WebSocket.bufferedAmount, тогда как другие "
"платформы используют внутренний буфер."

msgid "Returns the ready state of the connection."
msgstr "Возвращает состояние готовности соединения."

msgid ""
"Returns the URL requested by this peer. The URL is derived from the "
"[code]url[/code] passed to [method connect_to_url] or from the HTTP headers "
"when acting as server (i.e. when using [method accept_stream])."
msgstr ""
"Возвращает URL, запрошенный этим пиром. URL выводится из [code]url[/code], "
"переданного в [method connect_to_url], или из заголовков HTTP при работе в "
"качестве сервера (т. е. при использовании [method accept_stream])."

msgid ""
"Returns the selected WebSocket sub-protocol for this connection or an empty "
"string if the sub-protocol has not been selected yet."
msgstr ""
"Возвращает выбранный подпротокол WebSocket для данного соединения или пустую "
"строку, если подпротокол еще не выбран."

msgid ""
"Updates the connection state and receive incoming packets. Call this function "
"regularly to keep it in a clean state."
msgstr ""
"Обновляет состояние соединения и получает входящие пакеты. Регулярно "
"вызывайте эту функцию, чтобы поддерживать ее в чистом состоянии."

msgid ""
"Sends the given [param message] using the desired [param write_mode]. When "
"sending a [String], prefer using [method send_text]."
msgstr ""
"Отправляет указанный [param message], используя желаемый [param write_mode]. "
"При отправке [String] предпочтительнее использовать [method send_text]."

msgid ""
"Sends the given [param message] using WebSocket text mode. Prefer this method "
"over [method PacketPeer.put_packet] when interacting with third-party text-"
"based API (e.g. when using [JSON] formatted messages)."
msgstr ""
"Отправляет указанный [param message] с использованием текстового режима "
"WebSocket. Предпочитайте этот метод [method PacketPeer.put_packet] при "
"взаимодействии со сторонним текстовым API (например, при использовании "
"сообщений в формате [JSON])."

msgid ""
"Disable Nagle's algorithm on the underlying TCP socket (default). See [method "
"StreamPeerTCP.set_no_delay] for more information.\n"
"[b]Note:[/b] Not available in the Web export."
msgstr ""
"Отключить алгоритм Нейгла на базовом сокете TCP (по умолчанию). Для получения "
"дополнительной информации см. [method StreamPeerTCP.set_no_delay].\n"
"[b]Примечание:[/b] Недоступно в веб-экспорте."

msgid ""
"Returns [code]true[/code] if the last received packet was sent as a text "
"payload. See [enum WriteMode]."
msgstr ""
"Возвращает [code]true[/code], если последний полученный пакет был отправлен "
"как текстовая полезная нагрузка. См. [enum WriteMode]."

msgid ""
"The extra HTTP headers to be sent during the WebSocket handshake.\n"
"[b]Note:[/b] Not supported in Web exports due to browsers' restrictions."
msgstr ""
"Дополнительные заголовки HTTP, которые будут отправлены во время рукопожатия "
"WebSocket.\n"
"[b]Примечание:[/b] Не поддерживается в веб-экспорте из-за ограничений "
"браузеров."

msgid ""
"The interval (in seconds) at which the peer will automatically send WebSocket "
"\"ping\" control frames. When set to [code]0[/code], no \"ping\" control "
"frames will be sent.\n"
"[b]Note:[/b] Has no effect in Web exports due to browser restrictions."
msgstr ""
"Интервал (в секундах), с которым одноранговый узел будет автоматически "
"отправлять кадры управления WebSocket \"ping\". Если установлено значение "
"[code]0[/code], кадры управления \"ping\" отправляться не будут.\n"
"[b]Примечание:[/b] Не влияет на экспорт веб-контента из-за ограничений "
"браузера."

msgid ""
"The size of the input buffer in bytes (roughly the maximum amount of memory "
"that will be allocated for the inbound packets)."
msgstr ""
"Размер входного буфера в байтах (примерно максимальный объем памяти, который "
"будет выделен для входящих пакетов)."

msgid ""
"The maximum amount of packets that will be allowed in the queues (both "
"inbound and outbound)."
msgstr ""
"Максимальное количество пакетов, которые будут разрешены в очередях (как "
"входящих, так и исходящих)."

msgid ""
"The size of the input buffer in bytes (roughly the maximum amount of memory "
"that will be allocated for the outbound packets)."
msgstr ""
"Размер входного буфера в байтах (примерно максимальный объем памяти, который "
"будет выделен для исходящих пакетов)."

msgid "The WebSocket sub-protocols allowed during the WebSocket handshake."
msgstr ""
"Подпротоколы WebSocket, разрешенные во время установления связи WebSocket."

msgid ""
"Specifies that WebSockets messages should be transferred as text payload "
"(only valid UTF-8 is allowed)."
msgstr ""
"Указывает, что сообщения WebSockets должны передаваться в виде текстовой "
"полезной нагрузки (разрешена только допустимая кодировка UTF-8)."

msgid ""
"Specifies that WebSockets messages should be transferred as binary payload "
"(any byte combination is allowed)."
msgstr ""
"Указывает, что сообщения WebSockets должны передаваться как двоичные данные "
"(допускается любая комбинация байтов)."

msgid "Socket has been created. The connection is not yet open."
msgstr "Сокет создан. Соединение еще не открыто."

msgid "The connection is open and ready to communicate."
msgstr "Соединение открыто и готово к коммуникации."

msgid ""
"The connection is in the process of closing. This means a close request has "
"been sent to the remote peer but confirmation has not been received."
msgstr ""
"Соединение находится в процессе закрытия. Это означает, что удаленному пиру "
"был отправлен запрос на закрытие, но подтверждение не получено."

msgid "The connection is closed or couldn't be opened."
msgstr "Соединение закрыто или не может быть открыто."

msgid "XR interface using WebXR."
msgstr "Интерфейс XR с использованием WebXR."

msgid ""
"WebXR is an open standard that allows creating VR and AR applications that "
"run in the web browser.\n"
"As such, this interface is only available when running in Web exports.\n"
"WebXR supports a wide range of devices, from the very capable (like Valve "
"Index, HTC Vive, Oculus Rift and Quest) down to the much less capable (like "
"Google Cardboard, Oculus Go, GearVR, or plain smartphones).\n"
"Since WebXR is based on JavaScript, it makes extensive use of callbacks, "
"which means that [WebXRInterface] is forced to use signals, where other XR "
"interfaces would instead use functions that return a result immediately. This "
"makes [WebXRInterface] quite a bit more complicated to initialize than other "
"XR interfaces.\n"
"Here's the minimum code required to start an immersive VR session:\n"
"[codeblock]\n"
"extends Node3D\n"
"\n"
"var webxr_interface\n"
"var vr_supported = false\n"
"\n"
"func _ready():\n"
"\t# We assume this node has a button as a child.\n"
"\t# This button is for the user to consent to entering immersive VR mode.\n"
"\t$Button.pressed.connect(self._on_button_pressed)\n"
"\n"
"\twebxr_interface = XRServer.find_interface(\"WebXR\")\n"
"\tif webxr_interface:\n"
"\t\t# WebXR uses a lot of asynchronous callbacks, so we connect to various\n"
"\t\t# signals in order to receive them.\n"
"\t\twebxr_interface.session_supported.connect(self._webxr_session_supported)\n"
"\t\twebxr_interface.session_started.connect(self._webxr_session_started)\n"
"\t\twebxr_interface.session_ended.connect(self._webxr_session_ended)\n"
"\t\twebxr_interface.session_failed.connect(self._webxr_session_failed)\n"
"\n"
"\t\t# This returns immediately - our _webxr_session_supported() method\n"
"\t\t# (which we connected to the \"session_supported\" signal above) will\n"
"\t\t# be called sometime later to let us know if it's supported or not.\n"
"\t\twebxr_interface.is_session_supported(\"immersive-vr\")\n"
"\n"
"func _webxr_session_supported(session_mode, supported):\n"
"\tif session_mode == 'immersive-vr':\n"
"\t\tvr_supported = supported\n"
"\n"
"func _on_button_pressed():\n"
"\tif not vr_supported:\n"
"\t\tOS.alert(\"Your browser doesn't support VR\")\n"
"\t\treturn\n"
"\n"
"\t# We want an immersive VR session, as opposed to AR ('immersive-ar') or a\n"
"\t# simple 3DoF viewer ('viewer').\n"
"\twebxr_interface.session_mode = 'immersive-vr'\n"
"\t# 'bounded-floor' is room scale, 'local-floor' is a standing or sitting\n"
"\t# experience (it puts you 1.6m above the ground if you have 3DoF headset),\n"
"\t# whereas as 'local' puts you down at the XROrigin.\n"
"\t# This list means it'll first try to request 'bounded-floor', then\n"
"\t# fallback on 'local-floor' and ultimately 'local', if nothing else is\n"
"\t# supported.\n"
"\twebxr_interface.requested_reference_space_types = 'bounded-floor, local-"
"floor, local'\n"
"\t# In order to use 'local-floor' or 'bounded-floor' we must also\n"
"\t# mark the features as required or optional. By including 'hand-tracking'\n"
"\t# as an optional feature, it will be enabled if supported.\n"
"\twebxr_interface.required_features = 'local-floor'\n"
"\twebxr_interface.optional_features = 'bounded-floor, hand-tracking'\n"
"\n"
"\t# This will return false if we're unable to even request the session,\n"
"\t# however, it can still fail asynchronously later in the process, so we\n"
"\t# only know if it's really succeeded or failed when our\n"
"\t# _webxr_session_started() or _webxr_session_failed() methods are called.\n"
"\tif not webxr_interface.initialize():\n"
"\t\tOS.alert(\"Failed to initialize\")\n"
"\t\treturn\n"
"\n"
"func _webxr_session_started():\n"
"\t$Button.visible = false\n"
"\t# This tells Godot to start rendering to the headset.\n"
"\tget_viewport().use_xr = true\n"
"\t# This will be the reference space type you ultimately got, out of the\n"
"\t# types that you requested above. This is useful if you want the game to\n"
"\t# work a little differently in 'bounded-floor' versus 'local-floor'.\n"
"\tprint(\"Reference space type: \", webxr_interface.reference_space_type)\n"
"\t# This will be the list of features that were successfully enabled\n"
"\t# (except on browsers that don't support this property).\n"
"\tprint(\"Enabled features: \", webxr_interface.enabled_features)\n"
"\n"
"func _webxr_session_ended():\n"
"\t$Button.visible = true\n"
"\t# If the user exits immersive mode, then we tell Godot to render to the "
"web\n"
"\t# page again.\n"
"\tget_viewport().use_xr = false\n"
"\n"
"func _webxr_session_failed(message):\n"
"\tOS.alert(\"Failed to initialize: \" + message)\n"
"[/codeblock]\n"
"There are a couple ways to handle \"controller\" input:\n"
"- Using [XRController3D] nodes and their [signal "
"XRController3D.button_pressed] and [signal XRController3D.button_released] "
"signals. This is how controllers are typically handled in XR apps in Godot, "
"however, this will only work with advanced VR controllers like the Oculus "
"Touch or Index controllers, for example.\n"
"- Using the [signal select], [signal squeeze] and related signals. This "
"method will work for both advanced VR controllers, and non-traditional input "
"sources like a tap on the screen, a spoken voice command or a button press on "
"the device itself.\n"
"You can use both methods to allow your game or app to support a wider or "
"narrower set of devices and input methods, or to allow more advanced "
"interactions with more advanced devices."
msgstr ""
"WebXR — это открытый стандарт, позволяющий создавать приложения VR и AR, "
"работающие в веб-браузере.\n"
"Таким образом, этот интерфейс доступен только при работе в веб-экспорте.\n"
"WebXR поддерживает широкий спектр устройств, от очень мощных (например, Valve "
"Index, HTC Vive, Oculus Rift и Quest) до гораздо менее мощных (например, "
"Google Cardboard, Oculus Go, GearVR или простые смартфоны).\n"
"Поскольку WebXR основан на JavaScript, он широко использует обратные вызовы, "
"что означает, что [WebXRInterface] вынужден использовать сигналы, тогда как "
"другие интерфейсы XR вместо этого использовали бы функции, которые возвращают "
"результат немедленно. Это делает [WebXRInterface] намного более сложным для "
"инициализации, чем другие интерфейсы XR.\n"
"Вот минимальный код, необходимый для запуска сеанса погружения в VR:\n"
"[codeblock]\n"
"extends Node3D\n"
"\n"
"var webxr_interface\n"
"var vr_supported = false\n"
"\n"
"func _ready():\n"
"\t# Мы предполагаем, что этот узел имеет кнопку в качестве дочернего "
"элемента.\n"
"\t# Эта кнопка позволяет пользователю дать согласие на вход в режим "
"погружения в виртуальную реальность.\n"
"\t$Button.pressed.connect(self._on_button_pressed)\n"
"\n"
"\twebxr_interface = XRServer.find_interface(\"WebXR\")\n"
"\tif webxr_interface:\n"
"\t\t# WebXR использует много асинхронных обратных вызовов, поэтому мы "
"подключаемся к различным\n"
"\t\t# сигналам для их приема.\n"
"\t\twebxr_interface.session_supported.connect(self._webxr_session_supported)\n"
"\t\twebxr_interface.session_started.connect(self._webxr_session_started)\n"
"\t\twebxr_interface.session_ended.connect(self._webxr_session_ended)\n"
"\t\twebxr_interface.session_failed.connect(self._webxr_session_failed)\n"
"\n"
"\t\t# Это возвращает немедленно - наш метод _webxr_session_supported()\n"
"\t\t# (который мы подключили к сигналу \"session_supported\" выше) будет\n"
"\t\t# вызван позже, чтобы сообщить нам, поддерживается он или нет.\n"
"\t\twebxr_interface.is_session_supported(\"immersive-vr\")\n"
"\n"
"func _webxr_session_supported(session_mode, supported):\n"
"\tif session_mode == 'immersive-vr':\n"
"\t\tvr_supported = supported\n"
"\n"
"func _on_button_pressed():\n"
"\tif not vr_supported:\n"
"\t\tOS.alert(\"Ваш браузер не поддерживает VR\")\n"
"\t\treturn\n"
"\n"
"\t# Мы хотим сеанс погружения в виртуальную реальность, а не в дополненную "
"реальность ('immersive-ar') или\n"
"\t# простое средство просмотра 3DoF ('viewer').\n"
"\twebxr_interface.session_mode = 'immersive-vr'\n"
"\t# «bounded-floor» — масштаб комнаты, «local-floor» — опыт стоя\n"
"\t# или сидя (при наличии гарнитуры 3DoF вы оказываетесь на высоте 1,6 м над "
"землей),\n"
"\t# в то время как «local» помещает вас в XROrigin.\n"
"\t# Этот список означает, что сначала будет предпринята попытка запросить "
"«bounded-floor»,\n"
"\t# затем будет выполнен возврат к «local-floor» и, в конечном итоге, "
"«local», если ничего другого\n"
"\t# не поддерживается.\n"
"\twebxr_interface.requested_reference_space_types = 'bounded-floor, local-"
"floor, local'\n"
"\t# Чтобы использовать 'local-floor' или 'bounded-floor', мы также должны\n"
"\t# пометить функции как обязательные или необязательные. Включив 'hand-"
"tracking'\n"
"\t# как необязательную функцию, она будет включена, если поддерживается.\n"
"\twebxr_interface.required_features = 'local-floor'\n"
"\twebxr_interface.optional_features = 'bounded-floor, hand-tracking'\n"
"\n"
"\t# Это вернет false, если мы даже не сможем запросить сеанс,\n"
"\t# однако, он все еще может асинхронно завершиться неудачей позже в "
"процессе, поэтому мы\n"
"\t# узнаем, действительно ли он был успешным или неудачным, только когда "
"вызываются наши\n"
"\t# методы _webxr_session_started() или _webxr_session_failed().\n"
"\tif not webxr_interface.initialize():\n"
"\t\tOS.alert(\"Не удалось инициализировать\")\n"
"\t\treturn\n"
"\n"
"func _webxr_session_started():\n"
"\t$Button.visible = false\n"
"\t# Это дает команду Godot начать рендеринг на гарнитуре.\n"
"\tget_viewport().use_xr = true\n"
"\t# Это будет тип опорного пространства, который вы в конечном итоге получили "
"из\n"
"\t# типов, которые вы запросили выше. Это полезно, если вы хотите, чтобы "
"игра\n"
"\t# работала немного по-разному в 'bounded-floor' и 'local-floor'.\n"
"\tprint(\"Тип референса пространства: \", "
"webxr_interface.reference_space_type)\n"
"\t# Это будет список функций, которые были успешно включены\n"
"\t# (за исключением браузеров, которые не поддерживают это свойство).\n"
"\tprint(\"Включенные функции: \", webxr_interface.enabled_features)\n"
"\n"
"func _webxr_session_ended():\n"
"\t$Button.visible = true\n"
"\t# Если пользователь выходит из режима погружения, мы говорим Godot снова\n"
"\t# отобразить веб-страницу.\n"
"\tget_viewport().use_xr = false\n"
"\n"
"func _webxr_session_failed(message):\n"
"\tOS.alert(\"Не удалось инициализировать: \" + message)\n"
"[/codeblock]\n"
"Есть несколько способов обработки ввода «контроллера»:\n"
"- Использование узлов [XRController3D] и их сигналов [signal "
"XRController3D.button_pressed] и [signal XRController3D.button_released]. Так "
"обычно обрабатываются контроллеры в приложениях XR в Godot, однако это будет "
"работать только с продвинутыми контроллерами VR, такими как контроллеры "
"Oculus Touch или Index, например.\n"
"- Использование сигналов [signal select], [signal squeeze] и связанных с ними "
"сигналов. Этот метод будет работать как для продвинутых контроллеров VR, так "
"и для нетрадиционных источников ввода, таких как нажатие на экран, голосовая "
"команда или нажатие кнопки на самом устройстве.\n"
"Вы можете использовать оба метода, чтобы разрешить вашей игре или приложению "
"поддерживать более широкий или узкий набор устройств и методов ввода или "
"разрешить более продвинутое взаимодействие с более продвинутыми устройствами."

msgid "How to make a VR game for WebXR with Godot 4"
msgstr "Как создать VR-игру для WebXR с Godot 4"

msgid ""
"Returns display refresh rates supported by the current HMD. Only returned if "
"this feature is supported by the web browser and after the interface has been "
"initialized."
msgstr ""
"Возвращает частоту обновления дисплея, поддерживаемую текущим HMD. "
"Возвращается только в том случае, если эта функция поддерживается веб-"
"браузером и после инициализации интерфейса."

msgid ""
"Returns the display refresh rate for the current HMD. Not supported on all "
"HMDs and browsers. It may not report an accurate value until after using "
"[method set_display_refresh_rate]."
msgstr ""
"Возвращает частоту обновления дисплея для текущего HMD. Поддерживается не "
"всеми HMD и браузерами. Может не сообщать точное значение до использования "
"[method set_display_refresh_rate]."

msgid ""
"Returns the target ray mode for the given [param input_source_id].\n"
"This can help interpret the input coming from that input source. See "
"[url=https://developer.mozilla.org/en-US/docs/Web/API/XRInputSource/"
"targetRayMode]XRInputSource.targetRayMode[/url] for more information."
msgstr ""
"Возвращает режим целевого луча для заданного [param input_source_id].\n"
"Это может помочь интерпретировать ввод, поступающий из этого источника ввода. "
"Для получения дополнительной информации см. [url=https://"
"developer.mozilla.org/en-US/docs/Web/API/XRInputSource/"
"targetRayMode]XRInputSource.targetRayMode[/url]."

msgid ""
"Gets an [XRControllerTracker] for the given [param input_source_id].\n"
"In the context of WebXR, an input source can be an advanced VR controller "
"like the Oculus Touch or Index controllers, or even a tap on the screen, a "
"spoken voice command or a button press on the device itself. When a non-"
"traditional input source is used, interpret the position and orientation of "
"the [XRPositionalTracker] as a ray pointing at the object the user wishes to "
"interact with.\n"
"Use this method to get information about the input source that triggered one "
"of these signals:\n"
"- [signal selectstart]\n"
"- [signal select]\n"
"- [signal selectend]\n"
"- [signal squeezestart]\n"
"- [signal squeeze]\n"
"- [signal squeezestart]"
msgstr ""
"Получает [XRControllerTracker] для заданного [param input_source_id].\n"
"В контексте WebXR источником ввода может быть усовершенствованный контроллер "
"VR, такой как контроллеры Oculus Touch или Index, или даже нажатие на экран, "
"произнесенная голосовая команда или нажатие кнопки на самом устройстве. При "
"использовании нетрадиционного источника ввода интерпретируйте положение и "
"ориентацию [XRPositionalTracker] как луч, указывающий на объект, с которым "
"пользователь хочет взаимодействовать.\n"
"Используйте этот метод, чтобы получить информацию об источнике ввода, который "
"вызвал один из этих сигналов:\n"
"- [signal selectstart]\n"
"- [signal select]\n"
"- [signal selectend]\n"
"- [signal squeezestart]\n"
"- [signal squeeze]\n"
"- [signal squeezestart]"

msgid ""
"Returns [code]true[/code] if there is an active input source with the given "
"[param input_source_id]."
msgstr ""
"Возвращает [code]true[/code], если есть активный источник ввода с указанным "
"[param input_source_id]."

msgid ""
"Checks if the given [param session_mode] is supported by the user's browser.\n"
"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
"API/XRSessionMode]WebXR's XRSessionMode[/url], including: [code]\"immersive-"
"vr\"[/code], [code]\"immersive-ar\"[/code], and [code]\"inline\"[/code].\n"
"This method returns nothing, instead it emits the [signal session_supported] "
"signal with the result."
msgstr ""
"Проверяет, поддерживается ли заданный [param session_mode] браузером "
"пользователя.\n"
"Возможные значения берутся из [url=https://developer.mozilla.org/en-US/docs/"
"Web/API/XRSessionMode]WebXR's XRSessionMode[/url], включая: [code]\"immersive-"
"vr\"[/code], [code]\"immersive-ar\"[/code] и [code]\"inline\"[/code].\n"
"Этот метод ничего не возвращает, вместо этого он выдает сигнал [signal "
"session_supported] с результатом."

msgid ""
"Sets the display refresh rate for the current HMD. Not supported on all HMDs "
"and browsers. It won't take effect right away until after [signal "
"display_refresh_rate_changed] is emitted."
msgstr ""
"Устанавливает частоту обновления дисплея для текущего HMD. Поддерживается не "
"всеми HMD и браузерами. Вступит в силу не сразу, пока не будет выдан [signal "
"display_refresh_rate_changed]."

msgid ""
"A comma-separated list of features that were successfully enabled by [method "
"XRInterface.initialize] when setting up the WebXR session.\n"
"This may include features requested by setting [member required_features] and "
"[member optional_features], and will only be available after [signal "
"session_started] has been emitted.\n"
"[b]Note:[/b] This may not be support by all web browsers, in which case it "
"will be an empty string."
msgstr ""
"Разделенный запятыми список функций, которые были успешно включены [method "
"XRInterface.initialize] при настройке сеанса WebXR.\n"
"Сюда могут входить функции, запрошенные путем установки [member "
"required_features] и [member Optional_features], и будут доступны только "
"после отправки [signal session_started].\n"
"[b]Примечание:[/b] Это может не поддерживаться всеми веб-браузерами, в этом "
"случае это будет пустая строка."

msgid ""
"A comma-seperated list of optional features used by [method "
"XRInterface.initialize] when setting up the WebXR session.\n"
"If a user's browser or device doesn't support one of the given features, "
"initialization will continue, but you won't be able to use the requested "
"feature.\n"
"This doesn't have any effect on the interface when already initialized.\n"
"See the MDN documentation on [url=https://developer.mozilla.org/en-US/docs/"
"Web/API/XRSystem/requestSession#session_features]WebXR's session features[/"
"url] for a list of possible values."
msgstr ""
"Список дополнительных функций, разделённых запятыми, используемых [method "
"XRInterface.initialize] при настройке сеанса WebXR.\n"
"Если браузер или устройство пользователя не поддерживает одну из указанных "
"функций, инициализация будет продолжена, но запрошенная функция будет "
"недоступна.\n"
"Это никак не повлияет на интерфейс, если он уже инициализирован.\n"
"Список возможных значений см. в документации MDN о [url=https://"
"developer.mozilla.org/en-US/docs/Web/API/XRSystem/"
"requestSession#session_features]функциях сеанса WebXR[/url]."

msgid ""
"The reference space type (from the list of requested types set in the [member "
"requested_reference_space_types] property), that was ultimately used by "
"[method XRInterface.initialize] when setting up the WebXR session.\n"
"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
"use a particular reference space type, it must be listed in either [member "
"required_features] or [member optional_features]."
msgstr ""
"Тип пространства ссылок (из списка запрошенных типов, установленных в "
"свойстве [member asked_reference_space_types]), который в конечном итоге "
"использовался [method XRInterface.initialize] при настройке сеанса WebXR. \n"
"Возможные значения берутся из [url=https://developer.mozilla.org/en-US/docs/"
"Web/API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. Если вы "
"хотите использовать определенный тип пространства ссылок, он должен быть "
"указан либо в [member required_features], либо в [member Optional_features]."

msgid ""
"A comma-seperated list of reference space types used by [method "
"XRInterface.initialize] when setting up the WebXR session.\n"
"The reference space types are requested in order, and the first one supported "
"by the user's device or browser will be used. The [member "
"reference_space_type] property contains the reference space type that was "
"ultimately selected.\n"
"This doesn't have any effect on the interface when already initialized.\n"
"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
"API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. If you want to "
"use a particular reference space type, it must be listed in either [member "
"required_features] or [member optional_features]."
msgstr ""
"Список типов ссылочных пространств, разделённых запятыми, используемых "
"методом [method XRInterface.initialize] при настройке сеанса WebXR.\n"
"Типы ссылочных пространств запрашиваются по порядку, и будет использоваться "
"первый тип, поддерживаемый устройством или браузером пользователя. Свойство "
"[member reference_space_type] содержит выбранный тип ссылочного "
"пространства.\n"
"Это не влияет на интерфейс, если он уже инициализирован.\n"
"Возможные значения берутся из [url=https://developer.mozilla.org/en-US/docs/"
"Web/API/XRReferenceSpaceType]WebXR's XRReferenceSpaceType[/url]. Если вы "
"хотите использовать определённый тип ссылочного пространства, он должен быть "
"указан либо в [member required_features], либо в [member optional_features]."

msgid ""
"A comma-seperated list of required features used by [method "
"XRInterface.initialize] when setting up the WebXR session.\n"
"If a user's browser or device doesn't support one of the given features, "
"initialization will fail and [signal session_failed] will be emitted.\n"
"This doesn't have any effect on the interface when already initialized.\n"
"See the MDN documentation on [url=https://developer.mozilla.org/en-US/docs/"
"Web/API/XRSystem/requestSession#session_features]WebXR's session features[/"
"url] for a list of possible values."
msgstr ""
"Разделённый запятыми список обязательных функций, используемых [method "
"XRInterface.initialize] при настройке сеанса WebXR.\n"
"Если браузер или устройство пользователя не поддерживает одну из указанных "
"функций, инициализация завершится ошибкой и будет выдан сигнал [signal "
"session_failed].\n"
"Это никак не повлияет на интерфейс, если он уже инициализирован.\n"
"Список возможных значений см. в документации MDN о [url=https://"
"developer.mozilla.org/en-US/docs/Web/API/XRSystem/"
"requestSession#session_features]функциях сеанса WebXR[/url]."

msgid ""
"The session mode used by [method XRInterface.initialize] when setting up the "
"WebXR session.\n"
"This doesn't have any effect on the interface when already initialized.\n"
"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
"API/XRSessionMode]WebXR's XRSessionMode[/url], including: [code]\"immersive-"
"vr\"[/code], [code]\"immersive-ar\"[/code], and [code]\"inline\"[/code]."
msgstr ""
"Режим сеанса, используемый [method XRInterface.initialize] при настройке "
"сеанса WebXR.\n"
"Это не оказывает никакого влияния на интерфейс, если он уже инициализирован.\n"
"Возможные значения берутся из [url=https://developer.mozilla.org/en-US/docs/"
"Web/API/XRSessionMode]WebXR's XRSessionMode[/url], включая: [code]\"immersive-"
"vr\"[/code], [code]\"immersive-ar\"[/code] и [code]\"inline\"[/code]."

msgid ""
"Indicates if the WebXR session's imagery is visible to the user.\n"
"Possible values come from [url=https://developer.mozilla.org/en-US/docs/Web/"
"API/XRVisibilityState]WebXR's XRVisibilityState[/url], including [code]"
"\"hidden\"[/code], [code]\"visible\"[/code], and [code]\"visible-blurred\"[/"
"code]."
msgstr ""
"Указывает, видны ли пользователю изображения сеанса WebXR.\n"
"Возможные значения берутся из [url=https://developer.mozilla.org/en-US/docs/"
"Web/API/XRVisibilityState]WebXR XRVisibilityState[/url], включая [code]"
"\"hidden\"[/code], [code]\"visible\"[/code] и [code]\"visible-blurred\"[/"
"code]."

msgid "Emitted after the display's refresh rate has changed."
msgstr "Возникает после изменения частоты обновления дисплея."

msgid ""
"Emitted to indicate that the reference space has been reset or reconfigured.\n"
"When (or whether) this is emitted depends on the user's browser or device, "
"but may include when the user has changed the dimensions of their play space "
"(which you may be able to access via [method XRInterface.get_play_area]) or "
"pressed/held a button to recenter their position.\n"
"See [url=https://developer.mozilla.org/en-US/docs/Web/API/XRReferenceSpace/"
"reset_event]WebXR's XRReferenceSpace reset event[/url] for more information."
msgstr ""
"Вызывается для указания на то, что ссылочное пространство было сброшено или "
"перенастроено.\n"
"Когда (и будет ли) это срабатывать, зависит от браузера или устройства "
"пользователя, но может включать в себя, когда пользователь изменил размеры "
"своего игрового пространства (к которому вы можете получить доступ через "
"[method XRInterface.get_play_area]) или нажал/удержал кнопку для "
"рецентрирования своего положения.\n"
"См. [url=https://developer.mozilla.org/en-US/docs/Web/API/XRReferenceSpace/"
"reset_event]WebXR's XRReferenceSpace событие сброса[/url] для получения "
"дополнительной информации."

msgid ""
"Emitted after one of the input sources has finished its \"primary action\".\n"
"Use [method get_input_source_tracker] and [method "
"get_input_source_target_ray_mode] to get more information about the input "
"source."
msgstr ""
"Выдается после того, как один из источников ввода завершил свое «основное "
"действие».\n"
"Используйте [method get_input_source_tracker] и [method "
"get_input_source_target_ray_mode], чтобы получить больше информации об "
"источнике ввода."

msgid ""
"Emitted when one of the input sources has finished its \"primary action\".\n"
"Use [method get_input_source_tracker] and [method "
"get_input_source_target_ray_mode] to get more information about the input "
"source."
msgstr ""
"Выдается, когда один из источников ввода завершил свое «основное действие».\n"
"Используйте [method get_input_source_tracker] и [method "
"get_input_source_target_ray_mode], чтобы получить больше информации об "
"источнике ввода."

msgid ""
"Emitted when one of the input source has started its \"primary action\".\n"
"Use [method get_input_source_tracker] and [method "
"get_input_source_target_ray_mode] to get more information about the input "
"source."
msgstr ""
"Выдается, когда один из источников ввода начал свое «основное действие». \n"
"Используйте [method get_input_source_tracker] и [method "
"get_input_source_target_ray_mode], чтобы получить больше информации об "
"источнике ввода."

msgid ""
"Emitted when the user ends the WebXR session (which can be done using UI from "
"the browser or device).\n"
"At this point, you should do [code]get_viewport().use_xr = false[/code] to "
"instruct Godot to resume rendering to the screen."
msgstr ""
"Вызывается, когда пользователь завершает сеанс WebXR (что можно сделать с "
"помощью пользовательского интерфейса из браузера или устройства).\n"
"В этот момент вам следует выполнить [code]get_viewport().use_xr = false[/"
"code], чтобы указать Godot возобновить рендеринг на экране."

msgid ""
"Emitted by [method XRInterface.initialize] if the session fails to start.\n"
"[param message] may optionally contain an error message from WebXR, or an "
"empty string if no message is available."
msgstr ""
"Выдается [method XRInterface.initialize], если сеанс не запускается.\n"
"[param message] может содержать сообщение об ошибке от WebXR или пустую "
"строку, если сообщение отсутствует."

msgid ""
"Emitted by [method XRInterface.initialize] if the session is successfully "
"started.\n"
"At this point, it's safe to do [code]get_viewport().use_xr = true[/code] to "
"instruct Godot to start rendering to the XR device."
msgstr ""
"Выдается [method XRInterface.initialize], если сеанс успешно запущен.\n"
"На этом этапе можно безопасно выполнить [code]get_viewport().use_xr = true[/"
"code], чтобы указать Godot начать рендеринг на устройстве XR."

msgid ""
"Emitted by [method is_session_supported] to indicate if the given [param "
"session_mode] is supported or not."
msgstr ""
"Создается [method is_session_supported] для указания того, поддерживается ли "
"заданный [param session_mode] или нет."

msgid ""
"Emitted after one of the input sources has finished its \"primary squeeze "
"action\".\n"
"Use [method get_input_source_tracker] and [method "
"get_input_source_target_ray_mode] to get more information about the input "
"source."
msgstr ""
"Выдается после того, как один из источников ввода завершил свое «основное "
"действие сжатия». \n"
"Используйте [method get_input_source_tracker] и [method "
"get_input_source_target_ray_mode], чтобы получить больше информации об "
"источнике ввода."

msgid ""
"Emitted when one of the input sources has finished its \"primary squeeze "
"action\".\n"
"Use [method get_input_source_tracker] and [method "
"get_input_source_target_ray_mode] to get more information about the input "
"source."
msgstr ""
"Выдается, когда один из источников ввода завершил свое «основное действие "
"сжатия».\n"
"Используйте [method get_input_source_tracker] и [method "
"get_input_source_target_ray_mode], чтобы получить больше информации об "
"источнике ввода."

msgid ""
"Emitted when one of the input sources has started its \"primary squeeze "
"action\".\n"
"Use [method get_input_source_tracker] and [method "
"get_input_source_target_ray_mode] to get more information about the input "
"source."
msgstr ""
"Выдается, когда один из источников ввода начал свое «основное действие "
"сжатия».\n"
"Используйте [method get_input_source_tracker] и [method "
"get_input_source_target_ray_mode], чтобы получить больше информации об "
"источнике ввода."

msgid "Emitted when [member visibility_state] has changed."
msgstr "Вызывается при изменении [member visible_state]."

msgid "We don't know the target ray mode."
msgstr "Мы не знаем целевой режим луча."

msgid ""
"Target ray originates at the viewer's eyes and points in the direction they "
"are looking."
msgstr ""
"Луч цели исходит из глаз наблюдателя и указывает в направлении его взгляда."

msgid "Target ray from a handheld pointer, most likely a VR touch controller."
msgstr ""
"Направляет луч от портативной указки, скорее всего, сенсорного контроллера "
"виртуальной реальности."

msgid "Target ray from touch screen, mouse or other tactile input device."
msgstr ""
"Направляет луч с сенсорного экрана, мыши или другого тактильного устройства "
"ввода."

msgid "Base class for all windows, dialogs, and popups."
msgstr "Базовый класс для всех окон, диалоговых окон и всплывающих окон."

msgid ""
"A node that creates a window. The window can either be a native system window "
"or embedded inside another [Window] (see [member "
"Viewport.gui_embed_subwindows]).\n"
"At runtime, [Window]s will not close automatically when requested. You need "
"to handle it manually using the [signal close_requested] signal (this applies "
"both to pressing the close button and clicking outside of a popup)."
msgstr ""
"Узел, создающий окно. Окно может быть как собственным системным окном, так и "
"встроенным в другое [Window] (см. [member Viewport.gui_embed_subwindows]).\n"
"Во время выполнения [Window] не будут автоматически закрываться при запросе. "
"Вам нужно обработать это вручную с помощью сигнала [signal close_requested] "
"(это применимо как к нажатию кнопки закрытия, так и к щелчку за пределами "
"всплывающего окна)."

msgid ""
"Virtual method to be implemented by the user. Overrides the value returned by "
"[method get_contents_minimum_size]."
msgstr ""
"Виртуальный метод, реализуемый пользователем. Переопределяет значение, "
"возвращаемое [method get_contents_minimum_size]."

msgid ""
"Creates a local override for a theme [Color] with the specified [param name]. "
"Local overrides always take precedence when fetching theme items for the "
"control. An override can be removed with [method "
"remove_theme_color_override].\n"
"See also [method get_theme_color] and [method "
"Control.add_theme_color_override] for more details."
msgstr ""
"Создает локальное переопределение для темы [Color] с указанным [param name]. "
"Локальные переопределения всегда имеют приоритет при извлечении элементов "
"темы для элемента управления. Переопределение можно удалить с помощью [method "
"remove_theme_color_override].\n"
"См. также [method get_theme_color] и [method "
"Control.add_theme_color_override] для получения дополнительных сведений."

msgid ""
"Creates a local override for a theme [StyleBox] with the specified [param "
"name]. Local overrides always take precedence when fetching theme items for "
"the control. An override can be removed with [method "
"remove_theme_stylebox_override].\n"
"See also [method get_theme_stylebox] and [method "
"Control.add_theme_stylebox_override] for more details."
msgstr ""
"Создает локальное переопределение для темы [StyleBox] с указанным [param "
"name]. Локальные переопределения всегда имеют приоритет при извлечении "
"элементов темы для элемента управления. Переопределение можно удалить с "
"помощью [method remove_theme_stylebox_override].\n"
"См. также [method get_theme_stylebox] и [method "
"Control.add_theme_stylebox_override] для получения дополнительных сведений."

msgid "Returns whether the window is being drawn to the screen."
msgstr "Возвращает, отображается ли окно на экране."

msgid ""
"Requests an update of the [Window] size to fit underlying [Control] nodes."
msgstr ""
"Запрашивает обновление размера [Window] для соответствия базовым узлам "
"[Control]."

msgid ""
"Returns the combined minimum size from the child [Control] nodes of the "
"window. Use [method child_controls_changed] to update it when child nodes "
"have changed.\n"
"The value returned by this method can be overridden with [method "
"_get_contents_minimum_size]."
msgstr ""
"Возвращает объединенный минимальный размер из дочерних узлов [Control] окна. "
"Используйте [method child_controls_changed], чтобы обновить его при изменении "
"дочерних узлов.\n"
"Значение, возвращаемое этим методом, можно переопределить с помощью [method "
"_get_contents_minimum_size]."

msgid "Returns [code]true[/code] if the [param flag] is set."
msgstr "Возвращает [code]true[/code], если установлен [param flag]."

msgid "Returns the focused window."
msgstr "Возвращает фокусированное окно."

msgid "Returns layout direction and text writing direction."
msgstr "Возвращает направление макета и направление написания текста."

msgid ""
"Returns the window's position including its border.\n"
"[b]Note:[/b] If [member visible] is [code]false[/code], this method returns "
"the same value as [member position]."
msgstr ""
"Возвращает позицию окна, включая его границу.\n"
"[b]Примечание:[/b] Если [member visible] равно [code]false[/code], этот метод "
"возвращает то же значение, что и [member position]."

msgid ""
"Returns the window's size including its border.\n"
"[b]Note:[/b] If [member visible] is [code]false[/code], this method returns "
"the same value as [member size]."
msgstr ""
"Возвращает размер окна, включая его границу.\n"
"[b]Примечание:[/b] Если [member visible] равно [code]false[/code], этот метод "
"возвращает то же значение, что и [member size]."

msgid ""
"Returns a [Color] from the first matching [Theme] in the tree if that [Theme] "
"has a color item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for more details."
msgstr ""
"Возвращает [Color] из первой соответствующей [Theme] в дереве, если эта "
"[Theme] имеет элемент цвета с указанными [param name] и [param theme_type].\n"
"Подробнее см. [method Control.get_theme_color]."

msgid ""
"Returns a constant from the first matching [Theme] in the tree if that "
"[Theme] has a constant item with the specified [param name] and [param "
"theme_type].\n"
"See [method Control.get_theme_color] for more details."
msgstr ""
"Возвращает константу из первой совпадающей [Theme] в дереве, если эта [Theme] "
"имеет константный элемент с указанными [param name] и [param theme_type].\n"
"Подробнее см. [method Control.get_theme_color]."

msgid ""
"Returns the default base scale value from the first matching [Theme] in the "
"tree if that [Theme] has a valid [member Theme.default_base_scale] value.\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает базовое значение масштаба по умолчанию из первой соответствующей "
"[Theme] в дереве, если эта [Theme] имеет допустимое значение [member "
"Theme.default_base_scale].\n"
"Подробнее см. в [method Control.get_theme_color]."

msgid ""
"Returns the default font from the first matching [Theme] in the tree if that "
"[Theme] has a valid [member Theme.default_font] value.\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает значение по умолчанию для font из первого подходящего [Theme] в "
"дереве, если [Theme] имеет допустимое значение [member Theme.default].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Returns the default font size value from the first matching [Theme] in the "
"tree if that [Theme] has a valid [member Theme.default_font_size] value.\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает значение по умолчанию для font size из первого подходящего [Theme] "
"в дереве, если [Theme] имеет допустимое значение [member "
"Theme.default_font_size].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Returns a [Font] from the first matching [Theme] in the tree if that [Theme] "
"has a font item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает [Font] из первого подходящего [Theme] в дереве, если в [Theme] "
"есть элемент font с указанными [param name] и [param theme_type].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Returns a font size from the first matching [Theme] in the tree if that "
"[Theme] has a font size item with the specified [param name] and [param "
"theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает font size из первого подходящего [Theme] в дереве, если в [Theme] "
"есть элемент font size с указанными [param name] и [param theme_type].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Returns an icon from the first matching [Theme] in the tree if that [Theme] "
"has an icon item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает icon из первого подходящего [Theme] в дереве, если в [Theme] есть "
"элемент icon с указанными [param name] и [param theme_type].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Returns a [StyleBox] from the first matching [Theme] in the tree if that "
"[Theme] has a stylebox item with the specified [param name] and [param "
"theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает [StyleBox] из первого подходящего [Theme] в дереве, если в [Theme] "
"есть элемент stylebox с указанными [param name] и [param theme_type].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid "Returns the ID of the window."
msgstr "Возвращает ID окна."

msgid "Causes the window to grab focus, allowing it to receive user input."
msgstr ""
"Заставляет окно захватывать фокус, позволяя ему получать пользовательский "
"ввод."

msgid "Returns [code]true[/code] if the window is focused."
msgstr "Возвращает [code]true[/code], если окно находится в фокусе."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a color item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующий [Theme], в "
"котором есть элемент color с указанными [param name] и [param theme_type].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a constant item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующий [Theme], в "
"котором есть элемент constant с указанными [param name] и [param "
"theme_type].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a font item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующий [Theme], в "
"котором есть элемент font с указанными [param name] и [param theme_type].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a font size item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующий [Theme], в "
"котором есть элемент font size с указанными [param name] и [param "
"theme_type].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"an icon item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующий [Theme], в "
"котором есть элемент icon с указанными [param name] и [param theme_type].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Returns [code]true[/code] if there is a matching [Theme] in the tree that has "
"a stylebox item with the specified [param name] and [param theme_type].\n"
"See [method Control.get_theme_color] for details."
msgstr ""
"Возвращает [code]true[/code], если в дереве есть соответствующий [Theme], в "
"котором есть элемент stylebox с указанными [param name] и [param "
"theme_type].\n"
"Подробности смотрите в [method Control.get_theme_color]."

msgid ""
"Hides the window. This is not the same as minimized state. Hidden window "
"can't be interacted with and needs to be made visible with [method show]."
msgstr ""
"Скрывает окно. Это не то же самое, что свернутое состояние. Со скрытым окном "
"нельзя взаимодействовать, и его нужно сделать видимым с помощью [method show]."

msgid ""
"Returns [code]true[/code] if the window is currently embedded in another "
"window."
msgstr ""
"Возвращает [code]true[/code], если окно в данный момент встроено в другое "
"окно."

msgid "Returns [code]true[/code] if the layout is right-to-left."
msgstr "Возвращает [code]true[/code], если макет расположения справа налево."

msgid ""
"Returns [code]true[/code] if the window can be maximized (the maximize button "
"is enabled)."
msgstr ""
"Возвращает [code]true[/code], если окно можно развернуть (кнопка развернуть "
"включена)."

msgid ""
"Returns [code]true[/code] if font oversampling is enabled. See [method "
"set_use_font_oversampling]."
msgstr ""
"Возвращает [code]true[/code], если включена передискретизация шрифта. См. "
"[method set_use_font_oversampling]."

msgid ""
"Centers a native window on the current screen and an embedded window on its "
"embedder [Viewport]."
msgstr ""
"Центрирует собственное окно на текущем экране, а встроенное окно — на его "
"встроенном [Viewport]."

msgid "Use [method Window.grab_focus] instead."
msgstr "Вместо этого используйте [method Window.grab_focus]."

msgid ""
"Shows the [Window] and makes it transient (see [member transient]). If [param "
"rect] is provided, it will be set as the [Window]'s size. Fails if called on "
"the main window.\n"
"If [member ProjectSettings.display/window/subwindows/embed_subwindows] is "
"[code]true[/code] (single-window mode), [param rect]'s coordinates are global "
"and relative to the main window's top-left corner (excluding window "
"decorations). If [param rect]'s position coordinates are negative, the window "
"will be located outside the main window and may not be visible as a result.\n"
"If [member ProjectSettings.display/window/subwindows/embed_subwindows] is "
"[code]false[/code] (multi-window mode), [param rect]'s coordinates are global "
"and relative to the top-left corner of the leftmost screen. If [param rect]'s "
"position coordinates are negative, the window will be placed at the top-left "
"corner of the screen.\n"
"[b]Note:[/b] [param rect] must be in global coordinates if specified."
msgstr ""
"Показывает [Window] и делает его переходным (см. [member transient]). Если "
"указан [param rect], он будет установлен как размер [Window]. Не удается, "
"если вызывается в главном окне.\n"
"Если [member ProjectSettings.display/window/subwindows/embed_subwindows] "
"равен [code]true[/code] (режим одного окна), координаты [param rect] являются "
"глобальными и относятся к верхнему левому углу главного окна (исключая "
"оформление окна). Если координаты позиции [param rect] отрицательные, окно "
"будет расположено за пределами главного окна и в результате может быть "
"невидимым.\n"
"Если [member ProjectSettings.display/window/subwindows/embed_subwindows] "
"равен [code]false[/code] (режим нескольких окон), координаты [param rect] "
"являются глобальными и относятся к верхнему левому углу самого левого экрана. "
"Если координаты позиции [param rect] отрицательные, окно будет размещено в "
"верхнем левом углу экрана.\n"
"[b]Примечание:[/b] [param rect] должен быть в глобальных координатах, если "
"указан."

msgid ""
"Popups the [Window] at the center of the current screen, with optionally "
"given minimum size. If the [Window] is embedded, it will be centered in the "
"parent [Viewport] instead.\n"
"[b]Note:[/b] Calling it with the default value of [param minsize] is "
"equivalent to calling it with [member size]."
msgstr ""
"Всплывает [Window] в центре текущего экрана с опционально заданным "
"минимальным размером. Если [Window] встроено, оно будет центрировано в "
"родительском [Viewport].\n"
"[b]Примечание:[/b] Вызов его со значением по умолчанию [param minsize] "
"эквивалентен вызову его с [member size]."

msgid ""
"Popups the [Window] centered inside its parent [Window]. [param "
"fallback_ratio] determines the maximum size of the [Window], in relation to "
"its parent.\n"
"[b]Note:[/b] Calling it with the default value of [param minsize] is "
"equivalent to calling it with [member size]."
msgstr ""
"Всплывает [Window], центрированное внутри его родительского [Window]. [param "
"fallback_ratio] определяет максимальный размер [Window] по отношению к его "
"родительскому элементу.\n"
"[b]Примечание:[/b] Вызов его со значением по умолчанию [param minsize] "
"эквивалентен вызову его с [member size]."

msgid ""
"If [Window] is embedded, popups the [Window] centered inside its embedder and "
"sets its size as a [param ratio] of embedder's size.\n"
"If [Window] is a native window, popups the [Window] centered inside the "
"screen of its parent [Window] and sets its size as a [param ratio] of the "
"screen size."
msgstr ""
"Если [Window] встроено, всплывает [Window] по центру внутри своего "
"встраиваемого устройства и устанавливает его размер как [param ratio] размера "
"встраиваемого устройства.\n"
"Если [Window] является собственным окном, всплывает [Window] по центру внутри "
"экрана его родительского [Window] и устанавливает его размер как [param "
"ratio] размера экрана."

msgid ""
"Attempts to parent this dialog to the last exclusive window relative to "
"[param from_node], and then calls [method Window.popup] on it. The dialog "
"must have no current parent, otherwise the method fails.\n"
"See also [method set_unparent_when_invisible] and [method "
"Node.get_last_exclusive_window]."
msgstr ""
"Пытается сделать этот диалог родительским для последнего эксклюзивного окна "
"относительно [param from_node], а затем вызывает [method Window.popup] для "
"него. Диалог не должен иметь текущего родителя, в противном случае метод не "
"выполняется.\n"
"См. также [method set_unparent_when_invisible] и [method "
"Node.get_last_exclusive_window]."

msgid ""
"Attempts to parent this dialog to the last exclusive window relative to "
"[param from_node], and then calls [method Window.popup_centered] on it. The "
"dialog must have no current parent, otherwise the method fails.\n"
"See also [method set_unparent_when_invisible] and [method "
"Node.get_last_exclusive_window]."
msgstr ""
"Пытается сделать этот диалог родительским для последнего эксклюзивного окна "
"относительно [param from_node], а затем вызывает [method "
"Window.popup_centered] для него. Диалог не должен иметь текущего родителя, в "
"противном случае метод не выполняется.\n"
"См. также [method set_unparent_when_invisible] и [method "
"Node.get_last_exclusive_window]."

msgid ""
"Attempts to parent this dialog to the last exclusive window relative to "
"[param from_node], and then calls [method Window.popup_centered_clamped] on "
"it. The dialog must have no current parent, otherwise the method fails.\n"
"See also [method set_unparent_when_invisible] and [method "
"Node.get_last_exclusive_window]."
msgstr ""
"Пытается сделать этот диалог родительским для последнего эксклюзивного окна "
"относительно [param from_node], а затем вызывает [method "
"Window.popup_centered_clamped] для него. Диалог не должен иметь текущего "
"родителя, в противном случае метод не выполняется.\n"
"См. также [method set_unparent_when_invisible] и [method "
"Node.get_last_exclusive_window]."

msgid ""
"Attempts to parent this dialog to the last exclusive window relative to "
"[param from_node], and then calls [method Window.popup_centered_ratio] on it. "
"The dialog must have no current parent, otherwise the method fails.\n"
"See also [method set_unparent_when_invisible] and [method "
"Node.get_last_exclusive_window]."
msgstr ""
"Пытается сделать этот диалог родительским для последнего эксклюзивного окна "
"относительно [param from_node], а затем вызывает [method "
"Window.popup_centered_ratio] для него. Диалог не должен иметь текущего "
"родителя, в противном случае метод не выполняется.\n"
"См. также [method set_unparent_when_invisible] и [method "
"Node.get_last_exclusive_window]."

msgid ""
"Attempts to parent this dialog to the last exclusive window relative to "
"[param from_node], and then calls [method Window.popup_on_parent] on it. The "
"dialog must have no current parent, otherwise the method fails.\n"
"See also [method set_unparent_when_invisible] and [method "
"Node.get_last_exclusive_window]."
msgstr ""
"Пытается сделать этот диалог родительским для последнего эксклюзивного окна "
"относительно [param from_node], а затем вызывает [method "
"Window.popup_on_parent] для него. Диалог не должен иметь текущего родителя, в "
"противном случае метод не выполняется.\n"
"См. также [method set_unparent_when_invisible] и [method "
"Node.get_last_exclusive_window]."

msgid ""
"Popups the [Window] with a position shifted by parent [Window]'s position. If "
"the [Window] is embedded, has the same effect as [method popup]."
msgstr ""
"Всплывает [Window] с позицией, смещенной на позицию родительского [Window]. "
"Если [Window] встроено, имеет тот же эффект, что и [method popup]."

msgid ""
"Tells the OS that the [Window] needs an attention. This makes the window "
"stand out in some way depending on the system, e.g. it might blink on the "
"task bar."
msgstr ""
"Сообщает ОС, что [Window] требует внимания. Это выделяет окно каким-либо "
"образом в зависимости от системы, например, оно может мигать на панели задач."

msgid ""
"Resets the size to the minimum size, which is the max of [member min_size] "
"and (if [member wrap_controls] is enabled) [method "
"get_contents_minimum_size]. This is equivalent to calling "
"[code]set_size(Vector2i())[/code] (or any size below the minimum)."
msgstr ""
"Сбрасывает размер до минимального размера, который является максимальным из "
"[member min_size] и (если включен [member wrap_controls]) [method "
"get_contents_minimum_size]. Это эквивалентно вызову [code]set_size(Vector2i())"
"[/code] (или любого размера ниже минимального)."

msgid "Sets a specified window flag."
msgstr "Устанавливает указанный флаг окна."

msgid ""
"If [param active] is [code]true[/code], enables system's native IME (Input "
"Method Editor)."
msgstr ""
"Если [param active] равен [code]true[/code], включается собственный системный "
"IME (редактор метода ввода)."

msgid "Moves IME to the given position."
msgstr "Перемещает IME в указанную позицию."

msgid ""
"Sets layout direction and text writing direction. Right-to-left layouts are "
"necessary for certain languages (e.g. Arabic and Hebrew)."
msgstr ""
"Устанавливает направление макета и направление написания текста. Для "
"некоторых языков (например, арабского и иврита) необходимы макеты справа "
"налево."

msgid ""
"If [param unparent] is [code]true[/code], the window is automatically "
"unparented when going invisible.\n"
"[b]Note:[/b] Make sure to keep a reference to the node, otherwise it will be "
"orphaned. You also need to manually call [method Node.queue_free] to free the "
"window if it's not parented."
msgstr ""
"Если [param unparent] равен [code]true[/code], окно автоматически теряет "
"родительский статус при переходе в невидимое состояние.\n"
"[b]Примечание:[/b] Обязательно сохраните ссылку на узел, иначе он станет "
"осиротевшим. Вам также нужно вручную вызвать [method Node.queue_free], чтобы "
"освободить окно, если оно не является родительским."

msgid ""
"Enables font oversampling. This makes fonts look better when they are scaled "
"up."
msgstr ""
"Включает избыточную выборку шрифтов. Это позволяет шрифтам выглядеть лучше "
"при увеличении масштаба."

msgid ""
"Makes the [Window] appear. This enables interactions with the [Window] and "
"doesn't change any of its property other than visibility (unlike e.g. [method "
"popup])."
msgstr ""
"Заставляет [Window] появиться. Это позволяет взаимодействовать с [Window] и "
"не изменяет никаких его свойств, кроме видимости (в отличие, например, от "
"[method popup])."

msgid ""
"Starts an interactive drag operation on the window, using the current mouse "
"position. Call this method when handling a mouse button being pressed to "
"simulate a pressed event on the window's title bar. Using this method allows "
"the window to participate in space switching, tiling, and other system "
"features."
msgstr ""
"Запускает интерактивную операцию перетаскивания в окне, используя текущую "
"позицию мыши. Вызывайте этот метод при обработке нажатия кнопки мыши для "
"имитации события нажатия в заголовке окна. Использование этого метода "
"позволяет окну участвовать в переключении пространства, мозаичном размещении "
"и других системных функциях."

msgid ""
"Starts an interactive resize operation on the window, using the current mouse "
"position. Call this method when handling a mouse button being pressed to "
"simulate a pressed event on the window's edge."
msgstr ""
"Запускает интерактивную операцию изменения размера окна, используя текущую "
"позицию мыши. Вызывайте этот метод при обработке нажатия кнопки мыши для "
"имитации события нажатия на краю окна."

msgid ""
"If [code]true[/code], the window will be on top of all other windows. Does "
"not work if [member transient] is enabled."
msgstr ""
"Если [code]true[/code], окно будет поверх всех других окон. Не работает, если "
"включен [member transient]."

msgid "If [code]true[/code], the window will have no borders."
msgstr "Если [code]true[/code], окно не будет иметь границ."

msgid ""
"Specifies how the content's aspect behaves when the [Window] is resized. The "
"base aspect is determined by [member content_scale_size]."
msgstr ""
"Указывает, как ведет себя аспект содержимого при изменении размера [Window]. "
"Базовый аспект определяется [member content_scale_size]."

msgid ""
"Specifies the base scale of [Window]'s content when its [member size] is "
"equal to [member content_scale_size]. See also [method "
"Viewport.get_stretch_transform]."
msgstr ""
"Указывает базовый масштаб содержимого [Window], когда его [member size] равен "
"[member content_scale_size]. См. также [method "
"Viewport.get_stretch_transform]."

msgid "Specifies how the content is scaled when the [Window] is resized."
msgstr ""
"Указывает, как масштабируется содержимое при изменении размера [Window]."

msgid ""
"Base size of the content (i.e. nodes that are drawn inside the window). If "
"non-zero, [Window]'s content will be scaled when the window is resized to a "
"different size."
msgstr ""
"Базовый размер содержимого (т. е. узлов, которые рисуются внутри окна). Если "
"не равно нулю, содержимое [Window] будет масштабироваться при изменении "
"размера окна до другого размера."

msgid ""
"The policy to use to determine the final scale factor for 2D elements. This "
"affects how [member content_scale_factor] is applied, in addition to the "
"automatic scale factor determined by [member content_scale_size]."
msgstr ""
"Политика, используемая для определения окончательного масштабного "
"коэффициента для 2D-элементов. Это влияет на то, как применяется [member "
"content_scale_factor], в дополнение к автоматическому масштабному "
"коэффициенту, определяемому [member content_scale_size]."

msgid "The screen the window is currently on."
msgstr "Экран, на котором в данный момент находится окно."

msgid ""
"If [code]true[/code], the [Window] is excluded from screenshots taken by "
"[method DisplayServer.screen_get_image], [method "
"DisplayServer.screen_get_image_rect], and [method "
"DisplayServer.screen_get_pixel].\n"
"[b]Note:[/b] This property is implemented on macOS and Windows.\n"
"[b]Note:[/b] Enabling this setting will prevent standard screenshot methods "
"from capturing a window image, but does [b]NOT[/b] guarantee that other apps "
"won't be able to capture an image. It should not be used as a DRM or security "
"measure."
msgstr ""
"Если [code]true[/code], [Window] исключается из снимков экрана, сделанных с "
"помощью [method DisplayServer.screen_get_image], [method "
"DisplayServer.screen_get_image_rect] и [method "
"DisplayServer.screen_get_pixel].\n"
"[b]Примечание:[/b] Это свойство реализовано в macOS и Windows.\n"
"[b]Примечание:[/b] Включение этого параметра предотвратит захват изображения "
"окна стандартными методами создания снимков экрана, но [b]НЕ[/b] гарантирует, "
"что другие приложения не смогут сделать снимок. Это не следует использовать в "
"качестве DRM или меры безопасности."

msgid ""
"If [code]true[/code], the [Window] will be in exclusive mode. Exclusive "
"windows are always on top of their parent and will block all input going to "
"the parent [Window].\n"
"Needs [member transient] enabled to work."
msgstr ""
"Если [code]true[/code], [Window] будет в монопольном режиме. Монопольный "
"режим всегда находится поверх родительского окна и блокирует весь ввод, "
"идущий в родительское [Window].\n"
"Для работы необходимо включить [member transient]."

msgid ""
"If [code]true[/code], the [Window] contents is expanded to the full size of "
"the window, window title bar is transparent.\n"
"[b]Note:[/b] This property is implemented only on macOS.\n"
"[b]Note:[/b] This property only works with native windows."
msgstr ""
"Если [code]true[/code], содержимое [Window] расширяется до полного размера "
"окна, строка заголовка окна становится прозрачной.\n"
"[b]Примечание:[/b] Это свойство реализовано только в macOS.\n"
"[b] Примечание:[/b] Это свойство работает только в Windows."

msgid ""
"If [code]true[/code], native window will be used regardless of parent "
"viewport and project settings."
msgstr ""
"Если [code]true[/code], будет использоваться собственное окно независимо от "
"родительского окна просмотра и настроек проекта."

msgid "Specifies the initial type of position for the [Window]."
msgstr "Указывает начальный тип положения для [Window]."

msgid ""
"If [code]true[/code], the [Window] width is expanded to keep the title bar "
"text fully visible."
msgstr ""
"Если [code]true[/code], ширина [Window] увеличивается, чтобы текст заголовка "
"был полностью виден."

msgid ""
"If non-zero, the [Window] can't be resized to be bigger than this size.\n"
"[b]Note:[/b] This property will be ignored if the value is lower than [member "
"min_size]."
msgstr ""
"Если не равно нулю, [Window] не может быть изменено, чтобы стать больше этого "
"размера.\n"
"[b]Примечание:[/b] Это свойство будет игнорироваться, если значение меньше, "
"чем [member min_size]."

msgid ""
"If [code]true[/code], the [Window]'s maximize button is disabled.\n"
"[b]Note:[/b] If both minimize and maximize buttons are disabled, buttons are "
"fully hidden, and only close button is visible.\n"
"[b]Note:[/b] This property is implemented only on macOS and Windows."
msgstr ""
"Если [code]true[/code], кнопка разворачивания [Window] отключена.\n"
"[b]Примечание:[/b] Если отключены обе кнопки — сворачивания и разворачивания, "
"— кнопки полностью скрыты, и видна только кнопка закрытия.\n"
"[b]Примечание:[/b] Это свойство реализовано только в macOS и Windows."

msgid ""
"If non-zero, the [Window] can't be resized to be smaller than this size.\n"
"[b]Note:[/b] This property will be ignored in favor of [method "
"get_contents_minimum_size] if [member wrap_controls] is enabled and if its "
"size is bigger."
msgstr ""
"Если не равно нулю, [Window] нельзя изменить, чтобы он стал меньше этого "
"размера.\n"
"[b]Примечание:[/b] Это свойство будет игнорироваться в пользу [method "
"get_contents_minimum_size], если [member wrap_controls] включен и его размер "
"больше."

msgid ""
"If [code]true[/code], the [Window]'s minimize button is disabled.\n"
"[b]Note:[/b] If both minimize and maximize buttons are disabled, buttons are "
"fully hidden, and only close button is visible.\n"
"[b]Note:[/b] This property is implemented only on macOS and Windows."
msgstr ""
"Если [code]true[/code], кнопка сворачивания [Window] отключена.\n"
"[b]Примечание:[/b] Если отключены обе кнопки сворачивания и разворачивания, "
"кнопки полностью скрыты, и видна только кнопка закрытия.\n"
"[b]Примечание:[/b] Это свойство реализовано только в macOS и Windows."

msgid ""
"Set's the window's current mode.\n"
"[b]Note:[/b] Fullscreen mode is not exclusive full screen on Windows and "
"Linux.\n"
"[b]Note:[/b] This method only works with native windows, i.e. the main window "
"and [Window]-derived nodes when [member Viewport.gui_embed_subwindows] is "
"disabled in the main viewport."
msgstr ""
"Устанавливает текущий режим окна.\n"
"[b]Примечание:[/b] Полноэкранный режим не является исключительным "
"полноэкранным режимом в Windows и Linux.\n"
"[b]Примечание:[/b] Этот метод работает только с собственными окнами, т. е. "
"главным окном и производными от [Window] узлами, когда [member "
"Viewport.gui_embed_subwindows] отключен в главном окне просмотра."

msgid ""
"If [code]true[/code], all mouse events will be passed to the underlying "
"window of the same application. See also [member mouse_passthrough_polygon].\n"
"[b]Note:[/b] This property is implemented on Linux (X11), macOS and Windows.\n"
"[b]Note:[/b] This property only works with native windows."
msgstr ""
"Если [code]true[/code], все события, связанные с мышью, будут передаваться в "
"основное окно того же приложения. Смотрите также [member "
"mouse_passthrough_polygon].\n"
"[b]Примечание:[/b] Это свойство реализовано в Linux (X11), macOS и Windows.\n"
"[b] Примечание:[/b] Это свойство работает только в операционной системе "
"Windows."

msgid ""
"Sets a polygonal region of the window which accepts mouse events. Mouse "
"events outside the region will be passed through.\n"
"Passing an empty array will disable passthrough support (all mouse events "
"will be intercepted by the window, which is the default behavior).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Set region, using Path2D node.\n"
"$Window.mouse_passthrough_polygon = $Path2D.curve.get_baked_points()\n"
"\n"
"# Set region, using Polygon2D node.\n"
"$Window.mouse_passthrough_polygon = $Polygon2D.polygon\n"
"\n"
"# Reset region to default.\n"
"$Window.mouse_passthrough_polygon = []\n"
"[/gdscript]\n"
"[csharp]\n"
"// Set region, using Path2D node.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = "
"GetNode<Path2D>(\"Path2D\").Curve.GetBakedPoints();\n"
"\n"
"// Set region, using Polygon2D node.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = "
"GetNode<Polygon2D>(\"Polygon2D\").Polygon;\n"
"\n"
"// Reset region to default.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = [];\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Note:[/b] This property is ignored if [member mouse_passthrough] is set to "
"[code]true[/code].\n"
"[b]Note:[/b] On Windows, the portion of a window that lies outside the region "
"is not drawn, while on Linux (X11) and macOS it is.\n"
"[b]Note:[/b] This property is implemented on Linux (X11), macOS and Windows."
msgstr ""
"Устанавливает многоугольную область окна, которая принимает события мыши. "
"События мыши за пределами области будут пропущены.\n"
"Передача пустого массива отключит поддержку сквозной передачи (все события "
"мыши будут перехвачены окном, что является поведением по умолчанию).\n"
"[codeblocks]\n"
"[gdscript]\n"
"# Задайте регион, используя узел Path2D.\n"
"$Window.mouse_passthrough_polygon = $Path2D.curve.get_baked_points()\n"
"\n"
"# Установить регион, используя узел Polygon2D.\n"
"$Window.mouse_passthrough_polygon = $Polygon2D.polygon\n"
"\n"
"# сбросить регион по умолчанию.\n"
"$Window.mouse_passthrough_polygon = []\n"
"[/gdscript]\n"
"[csharp]\n"
"// Задайте регион, используя узел Path2D.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = "
"GetNode<Path2D>(\"Path2D\").Curve.GetBakedPoints();\n"
"\n"
"// Установить регион, используя узел Polygon2D.\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = "
"GetNode<Polygon2D>(\"Polygon2D\").Polygon;\n"
"\n"
"// сбросить регион по умолчанию\n"
"GetNode<Window>(\"Window\").MousePassthroughPolygon = [];\n"
"[/csharp]\n"
"[/codeblocks]\n"
"[b]Примечание:[/b] Это свойство игнорируется, если [member mouse_passthrough] "
"установлен в [code]true[/code].\n"
"[b]Примечание:[/b] В Windows часть окна, которая находится за пределами "
"области, не отрисовывается, тогда как в Linux (X11) и macOS — "
"отрисовывается.\n"
"[b]Примечание:[/b] Это свойство реализовано в Linux (X11), macOS и Windows."

msgid ""
"If [code]true[/code], the [Window] will be considered a popup. Popups are sub-"
"windows that don't show as separate windows in system's window manager's "
"window list and will send close request when anything is clicked outside of "
"them (unless [member exclusive] is enabled)."
msgstr ""
"Если [code]true[/code], [Window] будет считаться всплывающим. Всплывающие "
"окна — это подокна, которые не отображаются как отдельные окна в списке окон "
"системного менеджера окон и будут отправлять запрос на закрытие при щелчке по "
"чему-либо за их пределами (если не включено [member exclusive])."

msgid ""
"If [code]true[/code], the [Window] will signal to the window manager that it "
"is supposed to be an implementation-defined \"popup\" (usually a floating, "
"borderless, untileable and immovable child window)."
msgstr ""
"Если [code]true[/code], [Window] будет сигнализировать оконному менеджеру, "
"что оно должно быть «всплывающим» окном, определяемым реализацией (обычно "
"плавающим, безрамочным, неразворачиваемым и неподвижным дочерним окном)."

msgid ""
"The window's position in pixels.\n"
"If [member ProjectSettings.display/window/subwindows/embed_subwindows] is "
"[code]false[/code], the position is in absolute screen coordinates. This "
"typically applies to editor plugins. If the setting is [code]true[/code], the "
"window's position is in the coordinates of its parent [Viewport].\n"
"[b]Note:[/b] This property only works if [member initial_position] is set to "
"[constant WINDOW_INITIAL_POSITION_ABSOLUTE]."
msgstr ""
"Положение окна в пикселях.\n"
"Если [member ProjectSettings.display/window/subwindows/embed_subwindows] "
"равно [code]false[/code], положение указывается в абсолютных координатах "
"экрана. Обычно это относится к плагинам редактора. Если параметр равен "
"[code]true[/code], положение окна указывается в координатах его родительского "
"[Viewport].\n"
"[b]Примечание:[/b] Это свойство работает, только если [member "
"initial_position] равно [constant WINDOW_INITIAL_POSITION_ABSOLUTE]."

msgid ""
"If [code]true[/code], the [Window] will override the OS window style to "
"display sharp corners.\n"
"[b]Note:[/b] This property is implemented only on Windows (11).\n"
"[b]Note:[/b] This property only works with native windows."
msgstr ""
"Если [code]true[/code], [Window] переопределит стиль окна ОС для отображения "
"острых углов.\n"
"[b]Примечание:[/b] Это свойство реализовано только в Windows (11).\n"
"[b]Примечание:[/b] Это свойство работает только с нативными окнами."

msgid "The window's size in pixels."
msgstr "Размер окна в пикселях."

msgid ""
"The name of a theme type variation used by this [Window] to look up its own "
"theme items. See [member Control.theme_type_variation] for more details."
msgstr ""
"Имя вариации типа темы, используемой этим [Window] для поиска собственных "
"элементов темы. См. [member Control.theme_type_variation] для получения более "
"подробной информации."

msgid ""
"The window's title. If the [Window] is native, title styles set in [Theme] "
"will have no effect."
msgstr ""
"Заголовок окна. Если [Window] является собственным, стили заголовка, заданные "
"в [Theme], не будут иметь никакого эффекта."

msgid ""
"If [code]true[/code], the [Window] is transient, i.e. it's considered a child "
"of another [Window]. The transient window will be destroyed with its "
"transient parent and will return focus to their parent when closed. The "
"transient window is displayed on top of a non-exclusive full-screen parent "
"window. Transient windows can't enter full-screen mode.\n"
"Note that behavior might be different depending on the platform."
msgstr ""
"Если [code]true[/code], [Window] является переходным, т. е. оно считается "
"дочерним элементом другого [Window]. Переходное окно будет уничтожено вместе "
"со своим переходным родителем и вернет фокус родителю при закрытии. "
"Переходное окно отображается поверх неисключительного полноэкранного "
"родительского окна. Переходные окна не могут переходить в полноэкранный "
"режим.\n"
"Обратите внимание, что поведение может отличаться в зависимости от платформы."

msgid ""
"If [code]true[/code], and the [Window] is [member transient], this window "
"will (at the time of becoming visible) become transient to the currently "
"focused window instead of the immediate parent window in the hierarchy. Note "
"that the transient parent is assigned at the time this window becomes "
"visible, so changing it afterwards has no effect until re-shown."
msgstr ""
"Если [code]true[/code], а [Window] — [member transient], это окно (в момент, "
"когда становится видимым) станет переходным к текущему окну, находящемуся в "
"фокусе, а не к непосредственному родительскому окну в иерархии. Обратите "
"внимание, что переходный родитель назначается в момент, когда это окно "
"становится видимым, поэтому его последующее изменение не оказывает никакого "
"эффекта, пока не будет показано снова."

msgid ""
"If [code]true[/code], the [Window]'s background can be transparent. This is "
"best used with embedded windows.\n"
"[b]Note:[/b] Transparency support is implemented on Linux, macOS and Windows, "
"but availability might vary depending on GPU driver, display manager, and "
"compositor capabilities.\n"
"[b]Note:[/b] This property has no effect if [member ProjectSettings.display/"
"window/per_pixel_transparency/allowed] is set to [code]false[/code]."
msgstr ""
"Если [code]true[/code], фон [Window] может быть прозрачным. Лучше всего "
"использовать это со встроенными окнами.\n"
"[b]Примечание:[/b] Поддержка прозрачности реализована в Linux, macOS и "
"Windows, но доступность может зависеть от драйвера графического процессора, "
"диспетчера отображения и возможностей композитора.\n"
"[b]Примечание:[/b] Это свойство не имеет эффекта, если [member "
"ProjectSettings.display/window/per_pixel_transparency/allowed] установлено в "
"[code]false[/code]."

msgid ""
"If [code]true[/code], the [Window] can't be focused nor interacted with. It "
"can still be visible."
msgstr ""
"Если [code]true[/code], [Window] не может быть сфокусирован и с ним нельзя "
"взаимодействовать. Он все еще может быть видимым."

msgid "If [code]true[/code], the window can't be resized."
msgstr "Если [code]true[/code], размер окна изменить нельзя."

msgid "If [code]true[/code], the window is visible."
msgstr "Если [code]true[/code], окно видимо."

msgid ""
"If [code]true[/code], the window's size will automatically update when a "
"child node is added or removed, ignoring [member min_size] if the new size is "
"bigger.\n"
"If [code]false[/code], you need to call [method child_controls_changed] "
"manually."
msgstr ""
"Если [code]true[/code], размер окна будет автоматически обновляться при "
"добавлении или удалении дочернего узла, игнорируя [member min_size], если "
"новый размер больше.\n"
"Если [code]false[/code], то вам необходимо вручную вызвать [method "
"child_controls_changed]."

msgid ""
"Emitted right after [method popup] call, before the [Window] appears or does "
"anything."
msgstr ""
"Вызывается сразу после вызова [method popup], до того, как появится [Window] "
"или произойдет что-либо еще."

msgid ""
"Emitted when the [Window]'s close button is pressed or when [member "
"popup_window] is enabled and user clicks outside the window.\n"
"This signal can be used to handle window closing, e.g. by connecting it to "
"[method hide]."
msgstr ""
"Выдается при нажатии кнопки закрытия [Window], или когда [member "
"popup_window] включен и пользователь щелкает за пределами окна.\n"
"Этот сигнал можно использовать для обработки закрытия окна, например, "
"подключив его к [method hide]."

msgid ""
"Emitted when the [Window]'s DPI changes as a result of OS-level changes (e.g. "
"moving the window from a Retina display to a lower resolution one).\n"
"[b]Note:[/b] Only implemented on macOS and Linux (Wayland)."
msgstr ""
"Выдается, когда DPI [Window] изменяется в результате изменений на уровне ОС "
"(например, перемещение окна с дисплея Retina на дисплей с более низким "
"разрешением).\n"
"[b]Примечание:[/b] Реализовано только в macOS и Linux (Wayland)."

msgid ""
"Emitted when files are dragged from the OS file manager and dropped in the "
"game window. The argument is a list of file paths.\n"
"[codeblock]\n"
"func _ready():\n"
"\tget_window().files_dropped.connect(on_files_dropped)\n"
"\n"
"func on_files_dropped(files):\n"
"\tprint(files)\n"
"[/codeblock]\n"
"[b]Note:[/b] This signal only works with native windows, i.e. the main window "
"and [Window]-derived nodes when [member Viewport.gui_embed_subwindows] is "
"disabled in the main viewport."
msgstr ""
"Выдается при перетаскивании файлов из файлового менеджера ОС в окно игры. "
"Аргумент — список путей к файлам.\n"
"[codeblock]\n"
"func _ready():\n"
"\tget_window().files_dropped.connect(on_files_dropped)\n"
"\n"
"func on_files_dropped(files):\n"
"\tprint(files)\n"
"[/codeblock]\n"
"[b]Примечание:[/b] Этот сигнал работает только с собственными окнами, т. е. "
"главным окном и производными от [Window] узла, и когда [member "
"Viewport.gui_embed_subwindows] отключен в главном окне просмотра."

msgid "Emitted when the [Window] gains focus."
msgstr "Вызывается, когда [Window] получает фокус."

msgid "Emitted when the [Window] loses its focus."
msgstr "Возникает, когда [Window] теряет фокус."

msgid ""
"Emitted when a go back request is sent (e.g. pressing the \"Back\" button on "
"Android), right after [constant Node.NOTIFICATION_WM_GO_BACK_REQUEST]."
msgstr ""
"Вызывается при отправке запроса на возврат (например, при нажатии кнопки "
"\"Назад\" на Android), сразу после [constant "
"Node.NOTIFICATION_WM_GO_BACK_REQUEST]."

msgid ""
"Emitted when the mouse cursor enters the [Window]'s visible area, that is not "
"occluded behind other [Control]s or windows, provided its [member "
"Viewport.gui_disable_input] is [code]false[/code] and regardless if it's "
"currently focused or not."
msgstr ""
"Вызывается, когда курсор мыши попадает в видимую область [Window], которая не "
"перекрыта другими [Control] или окнами, при условии, что его [member "
"Viewport.gui_disable_input] имеет значение [code]false[/code] и независимо от "
"того, находится ли он в данный момент в фокусе или нет."

msgid ""
"Emitted when the mouse cursor leaves the [Window]'s visible area, that is not "
"occluded behind other [Control]s or windows, provided its [member "
"Viewport.gui_disable_input] is [code]false[/code] and regardless if it's "
"currently focused or not."
msgstr ""
"Вызывается, когда курсор мыши покидает видимую область [Window], которая не "
"перекрыта другими [Control] или окнами, при условии, что его [member "
"Viewport.gui_disable_input] имеет значение [code]false[/code] и независимо от "
"того, находится ли он в данный момент в фокусе или нет."

msgid "Emitted when window title bar text is changed."
msgstr "Выдается при изменении текста заголовка окна."

msgid ""
"Emitted when window title bar decorations are changed, e.g. macOS window "
"enter/exit full screen mode, or extend-to-title flag is changed."
msgstr ""
"Генерируется при изменении оформления заголовка окна, например, при входе/"
"выходе окна macOS из полноэкранного режима или при изменении флага расширения "
"до заголовка."

msgid "Emitted when [Window] is made visible or disappears."
msgstr "Выдается, когда [Window] становится видимым или исчезает."

msgid ""
"Emitted when the [Window] is currently focused and receives any input, "
"passing the received event as an argument. The event's position, if present, "
"is in the embedder's coordinate system."
msgstr ""
"Генерируется, когда [Window] в данный момент сфокусировано и принимает какие-"
"либо входные данные, передавая полученное событие в качестве аргумента. "
"Положение события, если оно присутствует, находится в системе координат "
"внедренца."

msgid ""
"Emitted when [Window]'s visibility changes, right before [signal "
"visibility_changed]."
msgstr ""
"Испускается при изменении видимости [Window], непосредственно перед [signal "
"visibility_changed]."

msgid ""
"Sent when the node needs to refresh its theme items. This happens in one of "
"the following cases:\n"
"- The [member theme] property is changed on this node or any of its "
"ancestors.\n"
"- The [member theme_type_variation] property is changed on this node.\n"
"- The node enters the scene tree.\n"
"[b]Note:[/b] As an optimization, this notification won't be sent from changes "
"that occur while this node is outside of the scene tree. Instead, all of the "
"theme item updates can be applied at once when the node enters the scene tree."
msgstr ""
"Отправляется, когда узлу необходимо обновить элементы своей темы. Это "
"происходит в одном из следующих случаев:\n"
"- Свойство [member theme] изменено на этом узле или любом из его предков.\n"
"- Свойство [member theme_type_variation] изменено на этом узле.\n"
"- Узел входит в дерево сцен.\n"
"[b]Примечание:[/b] В качестве оптимизации это уведомление не будет отправлено "
"из-за изменений, которые происходят, когда этот узел находится за пределами "
"дерева сцен. Вместо этого все обновления элементов темы могут быть применены "
"сразу, когда узел входит в дерево сцены."

msgid ""
"A single window full screen mode. This mode has less overhead, but only one "
"window can be open on a given screen at a time (opening a child window or "
"application switching will trigger a full screen transition).\n"
"Full screen window covers the entire display area of a screen and has no "
"border or decorations. The display's video mode is not changed.\n"
"[b]Note:[/b] This mode might not work with screen recording software.\n"
"[b]On Android:[/b] This enables immersive mode.\n"
"[b]On Windows:[/b] Depending on video driver, full screen transition might "
"cause screens to go black for a moment.\n"
"[b]On macOS:[/b] A new desktop is used to display the running project. "
"Exclusive full screen mode prevents Dock and Menu from showing up when the "
"mouse pointer is hovering the edge of the screen.\n"
"[b]On Linux (X11):[/b] Exclusive full screen mode bypasses compositor.\n"
"[b]On Linux (Wayland):[/b] Equivalent to [constant MODE_FULLSCREEN].\n"
"[b]Note:[/b] Regardless of the platform, enabling full screen will change the "
"window size to match the monitor's size. Therefore, make sure your project "
"supports [url=$DOCS_URL/tutorials/rendering/"
"multiple_resolutions.html]multiple resolutions[/url] when enabling full "
"screen mode."
msgstr ""
"Однооконный полноэкранный режим. Этот режим менее нагружает систему, но на "
"данном экране одновременно может быть открыто только одно окно (открытие "
"дочернего окна или переключение приложений запускает полноэкранный переход).\n"
"Полноэкранное окно занимает всю область экрана без рамки или декоративных "
"элементов. Видеорежим дисплея не изменяется.\n"
"[b]Примечание:[/b] Этот режим может не работать с программами для записи "
"экрана.\n"
"[b]На Android:[/b] Это включает режим погружения.\n"
"[b]На Windows:[/b] В зависимости от видеодрайвера, полноэкранный переход "
"может привести к кратковременному потемнению экрана.\n"
"[b]На macOS:[/b] Для отображения запущенного проекта используется новый "
"рабочий стол. Эксклюзивный полноэкранный режим предотвращает отображение Dock "
"и меню при наведении указателя мыши на край экрана.\n"
"[b]На Linux (X11):[/b] Эксклюзивный полноэкранный режим обходит "
"композитора. \n"
"[b]В Linux (Wayland):[/b] Эквивалентно [constant MODE_FULLSCREEN].\n"
"[b]Примечание:[/b] Независимо от платформы, включение полноэкранного режима "
"изменит размер окна в соответствии с размером монитора. Поэтому убедитесь, "
"что ваш проект поддерживает [url=$DOCS_URL/tutorials/rendering/"
"multiple_resolutions.html]множественные разрешения[/url] при включении "
"полноэкранного режима."

msgid ""
"The window can't be resized by dragging its resize grip. It's still possible "
"to resize the window using [member size]. This flag is ignored for full "
"screen windows. Set with [member unresizable]."
msgstr ""
"Размер окна нельзя изменить, перетаскивая его ручку изменения размера. По-"
"прежнему можно изменить размер окна, используя [member size]. Этот флаг "
"игнорируется для полноэкранных окон. Устанавливается с помощью [member "
"unresizable]."

msgid ""
"The window do not have native title bar and other decorations. This flag is "
"ignored for full-screen windows. Set with [member borderless]."
msgstr ""
"Окно не имеет встроенной строки заголовка и другого декора. Этот флаг "
"игнорируется для полноэкранных окон. Устанавливается с помощью [member "
"borderless]."

msgid ""
"The window is floating on top of all other windows. This flag is ignored for "
"full-screen windows. Set with [member always_on_top]."
msgstr ""
"Окно плавает поверх всех остальных окон. Этот флаг игнорируется для "
"полноэкранных окон. Устанавливается с помощью [member always_on_top]."

msgid ""
"The window background can be transparent. Set with [member transparent].\n"
"[b]Note:[/b] This flag has no effect if either [member "
"ProjectSettings.display/window/per_pixel_transparency/allowed], or the "
"window's [member Viewport.transparent_bg] is set to [code]false[/code]."
msgstr ""
"Фон окна может быть прозрачным. Задается с помощью [member transparent].\n"
"[b]Примечание:[/b] Этот флаг не действует, если [member "
"ProjectSettings.display/window/per_pixel_transparency/allowed], либо для окна "
"[member Viewport.transparent_bg] установлено значение [code]false[/code]."

msgid ""
"The window can't be focused. No-focus window will ignore all input, except "
"mouse clicks. Set with [member unfocusable]."
msgstr ""
"Окно не может быть сфокусировано. Окно без фокуса будет игнорировать все "
"вводимые данные, кроме щелчков мыши. Задано с помощью [member unfocusable]."

msgid ""
"Window is part of menu or [OptionButton] dropdown. This flag can't be changed "
"when the window is visible. An active popup window will exclusively receive "
"all input, without stealing focus from its parent. Popup windows are "
"automatically closed when uses click outside it, or when an application is "
"switched. Popup window must have transient parent set (see [member "
"transient]).\n"
"[b]Note:[/b] This flag has no effect in embedded windows (unless said window "
"is a [Popup])."
msgstr ""
"Window является частью выпадающего списка меню или кнопки выбора "
"[OptionButton]. Этот флаг нельзя изменить, когда окно видно. Активное "
"всплывающее окно будет получать все вводимые данные единолично, не отвлекая "
"внимание от своего родительского элемента. Всплывающие окна автоматически "
"закрываются, когда пользователь нажимает за их пределами или когда приложение "
"переключается. У всплывающего окна должен быть установлен временный "
"родительский набор (см. [member transient]).\n"
"[b]Примечание:[/b] Этот флаг не действует во встроенных окнах (если только "
"указанное окно не является всплывающим [Popup])."

msgid ""
"Window content is expanded to the full size of the window. Unlike borderless "
"window, the frame is left intact and can be used to resize the window, title "
"bar is transparent, but have minimize/maximize/close buttons. Set with "
"[member extend_to_title].\n"
"[b]Note:[/b] This flag is implemented only on macOS.\n"
"[b]Note:[/b] This flag has no effect in embedded windows."
msgstr ""
"Содержимое окна расширяется до полного размера окна. В отличие от окна без "
"полей, рамка остается нетронутой и может использоваться для изменения размера "
"окна, строка заголовка прозрачна, но имеет кнопки сворачивания/максимизации/"
"закрытия. Устанавливается с помощью [member extend_to_title].\n"
"[b]Примечание:[/b] Этот флаг реализован только в macOS.\n"
"[b] Примечание:[/b] Этот флаг не действует во встроенной Windows."

msgid ""
"All mouse events are passed to the underlying window of the same "
"application.\n"
"[b]Note:[/b] This flag has no effect in embedded windows."
msgstr ""
"Все события мыши передаются в базовое окно того же приложения.\n"
"[b]Примечание:[/b] Этот флаг не действует во встроенных окнах."

msgid ""
"Window style is overridden, forcing sharp corners.\n"
"[b]Note:[/b] This flag has no effect in embedded windows.\n"
"[b]Note:[/b] This flag is implemented only on Windows (11)."
msgstr ""
"Стиль окна переопределен, что приводит к появлению острых углов.\n"
"[b]Примечание:[/b] Этот флаг не действует во встроенных окнах.\n"
"[b]Примечание:[/b] Этот флаг реализован только в Windows (11)."

msgid ""
"Windows is excluded from screenshots taken by [method "
"DisplayServer.screen_get_image], [method "
"DisplayServer.screen_get_image_rect], and [method "
"DisplayServer.screen_get_pixel].\n"
"[b]Note:[/b] This flag has no effect in embedded windows.\n"
"[b]Note:[/b] This flag is implemented on macOS and Windows (10, 20H1).\n"
"[b]Note:[/b] Setting this flag will prevent standard screenshot methods from "
"capturing a window image, but does [b]NOT[/b] guarantee that other apps won't "
"be able to capture an image. It should not be used as a DRM or security "
"measure."
msgstr ""
"Окно Windows не учитывается при создании снимков экрана с помощью [method "
"DisplayServer.screen_get_image], [method DisplayServer.screen_get_image_rect] "
"и [method DisplayServer.screen_get_pixel].\n"
"[b]Примечание:[/b] Этот флаг не действует во встроенных окнах.\n"
"[b]Примечание:[/b] Этот флаг реализован в macOS и Windows (10, 20H1).\n"
"[b]Примечание:[/b] Установка этого флага предотвратит захват изображения окна "
"стандартными методами, но [b]НЕ[/b] гарантирует, что другие приложения не "
"смогут сделать снимок. Его не следует использовать в качестве DRM-защиты или "
"меры безопасности."

msgid "Max value of the [enum Flags]."
msgstr "Максимальное значение [enum Flags]."

msgid "The content will not be scaled to match the [Window]'s size."
msgstr ""
"Содержимое не будет масштабироваться в соответствии с размером [Window]."

msgid ""
"The content will be rendered at the target size. This is more performance-"
"expensive than [constant CONTENT_SCALE_MODE_VIEWPORT], but provides better "
"results."
msgstr ""
"Содержимое будет отображаться в целевом размере. Это более затратно по "
"производительности, чем [constant CONTENT_SCALE_MODE_VIEWPORT], но "
"обеспечивает лучшие результаты."

msgid ""
"The content will be rendered at the base size and then scaled to the target "
"size. More performant than [constant CONTENT_SCALE_MODE_CANVAS_ITEMS], but "
"results in pixelated image."
msgstr ""
"Содержимое будет отображено в базовом размере, а затем масштабировано до "
"целевого размера. Более производительно, чем [constant "
"CONTENT_SCALE_MODE_CANVAS_ITEMS], но приводит к пикселизации изображения."

msgid ""
"The aspect will be ignored. Scaling will simply stretch the content to fit "
"the target size."
msgstr ""
"Аспект будет проигнорирован. Масштабирование просто растянет содержимое в "
"соответствии с целевым размером."

msgid ""
"The content's aspect will be preserved. If the target size has different "
"aspect from the base one, the image will be centered and black bars will "
"appear on left and right sides."
msgstr ""
"Формат содержимого будет сохранен. Если целевой размер отличается от "
"базового, изображение будет отцентрировано, а с левой и правой сторон "
"появятся черные полосы."

msgid ""
"The content can be expanded vertically. Scaling horizontally will result in "
"keeping the width ratio and then black bars on left and right sides."
msgstr ""
"Содержимое можно развернуть по вертикали. Масштабирование по горизонтали "
"приведет к сохранению соотношения ширины, а затем черных полос с левой и "
"правой сторон."

msgid ""
"The content can be expanded horizontally. Scaling vertically will result in "
"keeping the height ratio and then black bars on top and bottom sides."
msgstr ""
"Содержимое можно развернуть по горизонтали. Масштабирование по вертикали "
"приведет к сохранению соотношения высот, а затем черных полос сверху и снизу."

msgid ""
"The content's aspect will be preserved. If the target size has different "
"aspect from the base one, the content will stay in the top-left corner and "
"add an extra visible area in the stretched space."
msgstr ""
"Формат содержимого будет сохранен. Если целевой размер отличается от "
"базового, содержимое останется в верхнем левом углу и добавит дополнительную "
"видимую область в растянутом пространстве."

msgid ""
"The content will be stretched according to a fractional factor. This fills "
"all the space available in the window, but allows \"pixel wobble\" to occur "
"due to uneven pixel scaling."
msgstr ""
"Содержимое будет растянуто в соответствии с дробным коэффициентом. Это "
"заполняет все доступное пространство в окне, но допускает \"колебание "
"пикселя\" из-за неравномерного масштабирования пикселей."

msgid ""
"The content will be stretched only according to an integer factor, preserving "
"sharp pixels. This may leave a black background visible on the window's edges "
"depending on the window size."
msgstr ""
"Содержимое будет растянуто только в соответствии с целым коэффициентом, "
"сохраняя четкие пиксели. В зависимости от размера окна по краям окна может "
"быть виден черный фон."

msgid ""
"Automatic layout direction, determined from the parent window layout "
"direction."
msgstr ""
"Автоматическое направление компоновки, определяемое по направлению компоновки "
"родительского окна."

msgid "Automatic layout direction, determined from the current locale."
msgstr ""
"Автоматическое направление макета, определяемое на основе текущей локали."

msgid "Automatic layout direction, determined from the system locale."
msgstr ""
"Автоматическое направление макета, определяемое на основе локали системы."

msgid "Initial window position is determined by [member position]."
msgstr "Начальное положение окна определяется [member position]."

msgid "Initial window position is the center of the primary screen."
msgstr "Начальное положение окна — центр основного экрана."

msgid "Initial window position is the center of the main window screen."
msgstr "Начальное положение окна — центр экрана главного окна."

msgid "Initial window position is the center of [member current_screen] screen."
msgstr "Начальная позиция окна - это центр экрана [member current_screen]."

msgid ""
"Initial window position is the center of the screen containing the mouse "
"pointer."
msgstr ""
"Начальным положением окна является центр экрана, на котором находится "
"указатель мыши."

msgid ""
"Initial window position is the center of the screen containing the window "
"with the keyboard focus."
msgstr ""
"Начальное положение окна - это центр экрана, содержащий окно с фокусом "
"клавиатуры."

msgid "The color of the title's text."
msgstr "Цвет текста заголовка."

msgid "The color of the title's text outline."
msgstr "Цвет контура текста заголовка."

msgid ""
"Horizontal position offset of the close button, relative to the end of the "
"title bar, towards the beginning of the title bar."
msgstr ""
"Горизонтальное смещение положения кнопки закрытия относительно конца строки "
"заголовка в сторону начала строки заголовка."

msgid ""
"Vertical position offset of the close button, relative to the bottom of the "
"title bar, towards the top of the title bar."
msgstr ""
"Смещение вертикального положения кнопки закрытия относительно нижней части "
"строки заголовка по направлению к верхней части строки заголовка."

msgid ""
"Defines the outside margin at which the window border can be grabbed with "
"mouse and resized."
msgstr ""
"Определяет внешнее поле, за которое можно захватить границу окна мышью и "
"изменить ее размер."

msgid "Height of the title bar."
msgstr "Высота строки заголовка."

msgid "The size of the title outline."
msgstr "Размер контура заголовка."

msgid "The font used to draw the title."
msgstr "Шрифт, используемый для заголовка."

msgid "The size of the title font."
msgstr "Размер шрифта заголовка."

msgid "The icon for the close button."
msgstr "Значок кнопки закрытия."

msgid "The icon for the close button when it's being pressed."
msgstr "Значок кнопки закрытия при нажатии."

msgid ""
"The background style used when the [Window] is embedded. Note that this is "
"drawn only under the window's content, excluding the title. For proper "
"borders and title bar style, you can use [code]expand_margin_*[/code] "
"properties of [StyleBoxFlat].\n"
"[b]Note:[/b] The content background will not be visible unless [member "
"transparent] is enabled."
msgstr ""
"Стиль фона, используемый при внедрении [Window]. Обратите внимание, что он "
"рисуется только под содержимым окна, за исключением заголовка. Для правильных "
"границ и стиля заголовка можно использовать свойства [code]expand_margin_*[/"
"code] [StyleBoxFlat].\n"
"[b]Примечание:[/b] Фон содержимого не будет виден, если не включен параметр "
"[member transparent]."

msgid "The background style used when the [Window] is embedded and unfocused."
msgstr "Стиль фона, используемый, когда [Window] встроено и не сфокусировано."

msgid ""
"A singleton that allocates some [Thread]s on startup, used to offload tasks "
"to these threads."
msgstr ""
"Синглтон, который выделяет некоторые [Thread] при запуске, используемый для "
"разгрузки задач в эти потоки."

msgid ""
"The [WorkerThreadPool] singleton allocates a set of [Thread]s (called worker "
"threads) on project startup and provides methods for offloading tasks to "
"them. This can be used for simple multithreading without having to create "
"[Thread]s.\n"
"Tasks hold the [Callable] to be run by the threads. [WorkerThreadPool] can be "
"used to create regular tasks, which will be taken by one worker thread, or "
"group tasks, which can be distributed between multiple worker threads. Group "
"tasks execute the [Callable] multiple times, which makes them useful for "
"iterating over a lot of elements, such as the enemies in an arena.\n"
"Here's a sample on how to offload an expensive function to worker threads:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var enemies = [] # An array to be filled with enemies.\n"
"\n"
"func process_enemy_ai(enemy_index):\n"
"\tvar processed_enemy = enemies[enemy_index]\n"
"\t# Expensive logic...\n"
"\n"
"func _process(delta):\n"
"\tvar task_id = WorkerThreadPool.add_group_task(process_enemy_ai, "
"enemies.size())\n"
"\t# Other code...\n"
"\tWorkerThreadPool.wait_for_group_task_completion(task_id)\n"
"\t# Other code that depends on the enemy AI already being processed.\n"
"[/gdscript]\n"
"[csharp]\n"
"private List<Node> _enemies = new List<Node>(); // A list to be filled with "
"enemies.\n"
"\n"
"private void ProcessEnemyAI(int enemyIndex)\n"
"{\n"
"\tNode processedEnemy = _enemies[enemyIndex];\n"
"\t// Expensive logic here.\n"
"}\n"
"\n"
"public override void _Process(double delta)\n"
"{\n"
"\tlong taskId = "
"WorkerThreadPool.AddGroupTask(Callable.From<int>(ProcessEnemyAI), "
"_enemies.Count);\n"
"\t// Other code...\n"
"\tWorkerThreadPool.WaitForGroupTaskCompletion(taskId);\n"
"\t// Other code that depends on the enemy AI already being processed.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"The above code relies on the number of elements in the [code]enemies[/code] "
"array remaining constant during the multithreaded part.\n"
"[b]Note:[/b] Using this singleton could affect performance negatively if the "
"task being distributed between threads is not computationally expensive."
msgstr ""
"Синглтон [WorkerThreadPool] выделяет набор [Thread] (называемых рабочими "
"потоками) при запуске проекта и предоставляет методы для выгрузки задач в "
"них. Это можно использовать для простой многопоточности без необходимости "
"создания [Thread].\n"
"Задачи содержат [Callable] для запуска потоками. [WorkerThreadPool] можно "
"использовать для создания обычных задач, которые будут приниматься одним "
"рабочим потоком, или групповых задач, которые могут быть распределены между "
"несколькими рабочими потоками. Групповые задачи выполняют [Callable] "
"несколько раз, что делает их полезными для итерации по множеству элементов, "
"таких как враги на арене.\n"
"Вот пример того, как выгрузить дорогостоящую функцию в рабочие потоки:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var enemies = [] # Массив, который нужно заполнить врагами.\n"
"\n"
"func process_enemy_ai(enemy_index):\n"
"\tvar processed_enemy = enemies[enemy_index]\n"
"\t# Дорогая логика...\n"
"\n"
"func _process(delta):\n"
"\tvar task_id = WorkerThreadPool.add_group_task(process_enemy_ai, "
"enemies.size())\n"
"\t# Другой код...\n"
"\tWorkerThreadPool.wait_for_group_task_completion(task_id)\n"
"\t# Другой код, зависящий от уже обрабатываемого ИИ врага.\n"
"[/gdscript]\n"
"[csharp]\n"
"private List<Node> _enemies = new List<Node>(); // Массив, который нужно "
"заполнить врагами.\n"
"\n"
"private void ProcessEnemyAI(int enemyIndex)\n"
"{\n"
"\tNode processedEnemy = _enemies[enemyIndex];\n"
"\t// Дорогая логика...\n"
"}\n"
"\n"
"public override void _Process(double delta)\n"
"{\n"
"\tlong taskId = "
"WorkerThreadPool.AddGroupTask(Callable.From<int>(ProcessEnemyAI), "
"_enemies.Count);\n"
"\t// Другой код...\n"
"\tWorkerThreadPool.WaitForGroupTaskCompletion(taskId);\n"
"\t// Другой код, зависящий от уже обрабатываемого ИИ врага.\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]\n"
"Приведенный выше код полагается на то, что количество элементов в массиве "
"[code]enemies[/code] остается постоянным во время многопоточной части.\n"
"[b]Примечание:[/b] Использование этого синглтона может отрицательно повлиять "
"на производительность, если задача, распределяемая между потоками, не "
"является вычислительно затратной."

msgid ""
"Adds [param action] as a group task to be executed by the worker threads. The "
"[Callable] will be called a number of times based on [param elements], with "
"the first thread calling it with the value [code]0[/code] as a parameter, and "
"each consecutive execution incrementing this value by 1 until it reaches "
"[code]element - 1[/code].\n"
"The number of threads the task is distributed to is defined by [param "
"tasks_needed], where the default value [code]-1[/code] means it is "
"distributed to all worker threads. [param high_priority] determines if the "
"task has a high priority or a low priority (default). You can optionally "
"provide a [param description] to help with debugging.\n"
"Returns a group task ID that can be used by other methods.\n"
"[b]Warning:[/b] Every task must be waited for completion using [method "
"wait_for_task_completion] or [method wait_for_group_task_completion] at some "
"point so that any allocated resources inside the task can be cleaned up."
msgstr ""
"Добавляет [param action] в качестве групповой задачи для выполнения рабочими "
"потоками. [Callable] будет вызываться несколько раз на основе [param "
"elements], при этом первый поток вызывает его со значением [code]0[/code] в "
"качестве параметра, а каждое последующее выполнение увеличивает это значение "
"на 1, пока не достигнет [code]element - 1[/code].\n"
"Количество потоков, на которые распределяется задача, определяется [param "
"tasks_needed], где значение по умолчанию [code]-1[/code] означает, что она "
"распределяется на все рабочие потоки. [param high_priority] определяет, имеет "
"ли задача высокий или низкий приоритет (по умолчанию). Вы можете "
"дополнительно указать [param description] для помощи в отладке.\n"
"Возвращает идентификатор групповой задачи, который может использоваться "
"другими методами.\n"
"[b]Предупреждение:[/b] В какой-то момент необходимо дождаться завершения "
"каждой задачи с помощью [method wait_for_task_completion] или [method "
"wait_for_group_task_completion], чтобы можно было освободить все выделенные "
"внутри задачи ресурсы."

msgid ""
"Adds [param action] as a task to be executed by a worker thread. [param "
"high_priority] determines if the task has a high priority or a low priority "
"(default). You can optionally provide a [param description] to help with "
"debugging.\n"
"Returns a task ID that can be used by other methods.\n"
"[b]Warning:[/b] Every task must be waited for completion using [method "
"wait_for_task_completion] or [method wait_for_group_task_completion] at some "
"point so that any allocated resources inside the task can be cleaned up."
msgstr ""
"Добавляет [param action] в качестве задачи для выполнения рабочим потоком. "
"[param high_priority] определяет, имеет ли задача высокий или низкий "
"приоритет (по умолчанию). При желании вы можете указать [param description] "
"для помощи в отладке.\n"
"Возвращает идентификатор задачи, который может использоваться другими "
"методами.\n"
"[b]Предупреждение:[/b] Каждая задача должна быть дожидаться завершения с "
"помощью [method wait_for_task_completion] или [method "
"wait_for_group_task_completion] в какой-то момент, чтобы можно было очистить "
"любые выделенные ресурсы внутри задачи."

msgid ""
"Returns the task group ID of the current thread calling this method, or "
"[code]-1[/code] if invalid or the current thread is not part of a task group."
msgstr ""
"Возвращает ID идентификатор группы задач текущего потока, вызывающего этот "
"метод, или [code]-1[/code], если недопустимо или текущий поток не является "
"частью группы задач."

msgid ""
"Returns the task ID of the current thread calling this method, or [code]-1[/"
"code] if the task is a group task, invalid or the current thread is not part "
"of the thread pool (e.g. the main thread).\n"
"Can be used by a task to get its own task ID, or to determine whether the "
"current code is running inside the worker thread pool.\n"
"[b]Note:[/b] Group tasks have their own IDs, so this method will return "
"[code]-1[/code] for group tasks."
msgstr ""
"Возвращает ID идентификатор задачи текущего потока, вызывающего этот метод, "
"или [code]-1[/code], если задача является групповой задачей, недопустимой или "
"текущий поток не является частью пула потоков (например, основного потока).\n"
"Может использоваться задачей для получения собственного идентификатора задачи "
"или для определения того, выполняется ли текущий код внутри пула рабочих "
"потоков.\n"
"[b]Примечание:[/b] Групповые задачи имеют собственные ID идентификаторы, "
"поэтому этот метод вернет [code]-1[/code] для групповых задач."

msgid ""
"Returns how many times the [Callable] of the group task with the given ID has "
"already been executed by the worker threads.\n"
"[b]Note:[/b] If a thread has started executing the [Callable] but is yet to "
"finish, it won't be counted."
msgstr ""
"Возвращает, сколько раз [Callable] групповой задачи с указанным "
"идентификатором уже был выполнен рабочими потоками.\n"
"[b]Примечание:[/b] Если поток начал выполнение [Callable], но еще не завершил "
"его, он не будет засчитан."

msgid ""
"Returns [code]true[/code] if the group task with the given ID is completed.\n"
"[b]Note:[/b] You should only call this method between adding the group task "
"and awaiting its completion."
msgstr ""
"Возвращает [code]true[/code], если групповая задача с указанным "
"идентификатором завершена.\n"
"[b]Примечание:[/b] Вызвать этот метод следует только между добавлением "
"групповой задачи и ожиданием ее завершения."

msgid ""
"Returns [code]true[/code] if the task with the given ID is completed.\n"
"[b]Note:[/b] You should only call this method between adding the task and "
"awaiting its completion."
msgstr ""
"Возвращает [code]true[/code], если задача с указанным идентификатором "
"завершена.\n"
"[b]Примечание:[/b] Вызвать этот метод следует только между добавлением задачи "
"и ожиданием ее завершения."

msgid ""
"Pauses the thread that calls this method until the group task with the given "
"ID is completed."
msgstr ""
"Приостанавливает поток, вызывающий этот метод, до тех пор, пока не будет "
"завершена групповая задача с указанным идентификатором."

msgid ""
"Pauses the thread that calls this method until the task with the given ID is "
"completed.\n"
"Returns [constant @GlobalScope.OK] if the task could be successfully "
"awaited.\n"
"Returns [constant @GlobalScope.ERR_INVALID_PARAMETER] if a task with the "
"passed ID does not exist (maybe because it was already awaited and disposed "
"of).\n"
"Returns [constant @GlobalScope.ERR_BUSY] if the call is made from another "
"running task and, due to task scheduling, there's potential for deadlocking "
"(e.g., the task to await may be at a lower level in the call stack and "
"therefore can't progress). This is an advanced situation that should only "
"matter when some tasks depend on others (in the current implementation, the "
"tricky case is a task trying to wait on an older one)."
msgstr ""
"Приостанавливает поток, вызывающий этот метод, до тех пор, пока задача с "
"указанным идентификатором не будет завершена.\n"
"Возвращает [constant @GlobalScope.OK], если задача может быть успешно "
"ожидана.\n"
"Возвращает [constant @GlobalScope.ERR_INVALID_PARAMETER], если задача с "
"переданным идентификатором не существует (возможно, потому что она уже была "
"ожидаема и удалена).\n"
"Возвращает [constant @GlobalScope.ERR_BUSY], если вызов выполняется из другой "
"запущенной задачи и из-за планирования задач существует вероятность "
"взаимоблокировки (например, задача для ожидания может находиться на более "
"низком уровне в стеке вызовов и, следовательно, не может выполняться). Это "
"сложная ситуация, которая должна иметь значение только тогда, когда некоторые "
"задачи зависят от других (в текущей реализации сложный случай — это задача, "
"пытающаяся ждать более старую)."

msgid ""
"A resource that holds all components of a 2D world, such as a canvas and a "
"physics space."
msgstr ""
"Ресурс, содержащий все компоненты двухмерного мира, такие как холст (canvas) "
"и физическое пространство."

msgid ""
"Class that has everything pertaining to a 2D world: A physics space, a "
"canvas, and a sound space. 2D nodes register their resources into the current "
"2D world."
msgstr ""
"Класс, в котором есть все, что относится к 2D-миру: физическое пространство, "
"холст и звуковое пространство. 2D-узлы регистрируют свои ресурсы в текущем 2D-"
"мире."

msgid ""
"The [RID] of this world's canvas resource. Used by the [RenderingServer] for "
"2D drawing."
msgstr ""
"[RID] ресурса холста этого мира. Используется [RenderingServer] для 2D-"
"рисования."

msgid ""
"Direct access to the world's physics 2D space state. Used for querying "
"current and potential collisions. When using multi-threaded physics, access "
"is limited to [method Node._physics_process] in the main thread."
msgstr ""
"Прямой доступ к физическому 2D-пространству мира. Используется для запроса "
"текущих и потенциальных столкновений. При использовании многопоточной физики "
"доступ ограничен [method Node._physics_process] в основном потоке."

msgid ""
"The [RID] of this world's navigation map. Used by the [NavigationServer2D]."
msgstr ""
"[RID] навигационной карты этого мира. Используется [NavigationServer2D]."

msgid ""
"The [RID] of this world's physics space resource. Used by the "
"[PhysicsServer2D] for 2D physics, treating it as both a space and an area."
msgstr ""
"[RID] ресурса физического пространства этого мира. Используется "
"[PhysicsServer2D] для 2D-физики, рассматривая его и как пространство, и как "
"область."

msgid ""
"A resource that holds all components of a 3D world, such as a visual scenario "
"and a physics space."
msgstr ""
"Ресурс, содержащий все компоненты трехмерного мира, такие как визуальный "
"сценарий и физическое пространство."

msgid ""
"Class that has everything pertaining to a world: A physics space, a visual "
"scenario, and a sound space. 3D nodes register their resources into the "
"current 3D world."
msgstr ""
"Класс, в котором есть все, что относится к миру: физическое пространство, "
"визуальный сценарий и звуковое пространство. 3D-узлы регистрируют свои "
"ресурсы в текущем 3D-мире."

msgid ""
"The default [CameraAttributes] resource to use if none set on the [Camera3D]."
msgstr ""
"Ресурс [CameraAttributes] по умолчанию, который следует использовать, если "
"для [Camera3D] ничего не установлено."

msgid ""
"Direct access to the world's physics 3D space state. Used for querying "
"current and potential collisions. When using multi-threaded physics, access "
"is limited to [method Node._physics_process] in the main thread."
msgstr ""
"Прямой доступ к состоянию трехмерного пространства физики мира. Используется "
"для запроса текущих и потенциальных столкновений. При использовании "
"многопоточной физики доступ ограничен [method Node._physics_process] в "
"основном потоке."

msgid "The World3D's [Environment]."
msgstr "[Environment] этого World3D."

msgid ""
"The World3D's fallback environment will be used if [member environment] fails "
"or is missing."
msgstr ""
"Резервная среда World3D будет использоваться в случае сбоя или отсутствия "
"[member environment]."

msgid ""
"The [RID] of this world's navigation map. Used by the [NavigationServer3D]."
msgstr ""
"[RID] навигационной карты этого мира. Используется [NavigationServer3D]."

msgid "The World3D's visual scenario."
msgstr "Визуальный сценарий World3D."

msgid "The World3D's physics space."
msgstr "Физическое пространство World3D."

msgid "A 2D world boundary (half-plane) shape used for physics collision."
msgstr ""
"Форма границы двумерного мира (полуплоскость), используемая для физического "
"столкновения."

msgid ""
"A 2D world boundary shape, intended for use in physics. "
"[WorldBoundaryShape2D] works like an infinite straight line that forces all "
"physics bodies to stay above it. The line's normal determines which direction "
"is considered as \"above\" and in the editor, the smaller line over it "
"represents this direction. It can for example be used for endless flat floors."
msgstr ""
"Двумерная форма границы мира, предназначенная для использования в физике. "
"[WorldBoundaryShape2D] работает как бесконечная прямая линия, которая "
"заставляет все физические тела оставаться над ней. Нормаль линии определяет, "
"какое направление считается «выше», и в редакторе меньшая линия над ней "
"представляет это направление. Например, ее можно использовать для бесконечных "
"плоских полов."

msgid ""
"The distance from the origin to the line, expressed in terms of [member "
"normal] (according to its direction and magnitude). Actual absolute distance "
"from the origin to the line can be calculated as [code]abs(distance) / "
"normal.length()[/code].\n"
"In the scalar equation of the line [code]ax + by = d[/code], this is [code]d[/"
"code], while the [code](a, b)[/code] coordinates are represented by the "
"[member normal] property."
msgstr ""
"Расстояние от начала координат до прямой, выраженное через [member normal] (в "
"соответствии с его направлением и величиной). Фактическое абсолютное "
"расстояние от начала координат до прямой можно рассчитать как "
"[code]abs(distance) / normal.length()[/code].\n"
"В скалярном уравнении прямой [code]ax + by = d[/code] это [code]d[/code], "
"тогда как координаты [code](a, b)[/code] представлены свойством [member "
"normal]."

msgid ""
"The line's normal, typically a unit vector. Its direction indicates the non-"
"colliding half-plane. Can be of any length but zero. Defaults to [constant "
"Vector2.UP]."
msgstr ""
"Нормаль линии, обычно единичный вектор. Его направление указывает не "
"сталкивающуюся полуплоскость. Может быть любой длины, кроме нуля. По "
"умолчанию [constant Vector2.UP]."

msgid "A 3D world boundary (half-space) shape used for physics collision."
msgstr ""
"Форма границы трехмерного мира (полупространства), используемая для "
"физических столкновений."

msgid ""
"A 3D world boundary shape, intended for use in physics. "
"[WorldBoundaryShape3D] works like an infinite plane that forces all physics "
"bodies to stay above it. The [member plane]'s normal determines which "
"direction is considered as \"above\" and in the editor, the line over the "
"plane represents this direction. It can for example be used for endless flat "
"floors.\n"
"[b]Note:[/b] When the physics engine is set to [b]Jolt Physics[/b] in the "
"project settings ([member ProjectSettings.physics/3d/physics_engine]), "
"[WorldBoundaryShape3D] has a finite size (centered at the shape's origin). It "
"can be adjusted by changing [member ProjectSettings.physics/jolt_physics_3d/"
"limits/world_boundary_shape_size]."
msgstr ""
"Трехмерная форма границы мира, предназначенная для использования в физике. "
"[WorldBoundaryShape3D] работает как бесконечная плоскость, которая заставляет "
"все физические тела оставаться над ней. Нормаль [member plane] определяет, "
"какое направление считается «выше», и в редакторе линия над плоскостью "
"представляет это направление. Например, ее можно использовать для бесконечных "
"плоских полов.\n"
"[b]Примечание:[/b] Когда физический движок установлен на [b]Jolt Physics[/b] "
"в настройках проекта ([member ProjectSettings.physics/3d/physics_engine]), "
"[WorldBoundaryShape3D] имеет конечный размер (центрированный в начале формы). "
"Его можно настроить, изменив [member ProjectSettings.physics/jolt_physics_3d/"
"limits/world_boundary_shape_size]."

msgid "The [Plane] used by the [WorldBoundaryShape3D] for collision."
msgstr "[Plane], используемая [WorldBoundaryShape3D] для столкновения."

msgid ""
"Default environment properties for the entire scene (post-processing effects, "
"lighting and background settings)."
msgstr ""
"Свойства среды по умолчанию для всей сцены (эффекты постобработки, настройки "
"освещения и фона)."

msgid ""
"The [WorldEnvironment] node is used to configure the default [Environment] "
"for the scene.\n"
"The parameters defined in the [WorldEnvironment] can be overridden by an "
"[Environment] node set on the current [Camera3D]. Additionally, only one "
"[WorldEnvironment] may be instantiated in a given scene at a time.\n"
"The [WorldEnvironment] allows the user to specify default lighting parameters "
"(e.g. ambient lighting), various post-processing effects (e.g. SSAO, DOF, "
"Tonemapping), and how to draw the background (e.g. solid color, skybox). "
"Usually, these are added in order to improve the realism/color balance of the "
"scene."
msgstr ""
"Узел [WorldEnvironment] используется для настройки [Environment] по умолчанию "
"для сцены.\n"
"Параметры, определенные в [WorldEnvironment], могут быть переопределены узлом "
"[Environment], установленным на текущем [Camera3D]. Кроме того, в данной "
"сцене одновременно может быть создан только один [WorldEnvironment].\n"
"[WorldEnvironment] позволяет пользователю указывать параметры освещения по "
"умолчанию (например, окружающее освещение), различные эффекты постобработки "
"(например, SSAO, DOF, Tonemapping) и способ рисования фона (например, "
"сплошной цвет, skybox). Обычно они добавляются для улучшения реализма/"
"цветового баланса сцены."

msgid "The default [Compositor] resource to use if none set on the [Camera3D]."
msgstr ""
"Ресурс [Compositor] по умолчанию, который следует использовать, если в "
"[Camera3D] ничего не установлено."

msgid ""
"The [Environment] resource used by this [WorldEnvironment], defining the "
"default properties."
msgstr ""
"Ресурс [Environment], используемый этим [WorldEnvironment], определяющий "
"свойства по умолчанию."

msgid "An X509 certificate (e.g. for TLS)."
msgstr "Сертификат X509 (например, для TLS)."

msgid ""
"The X509Certificate class represents an X509 certificate. Certificates can be "
"loaded and saved like any other [Resource].\n"
"They can be used as the server certificate in [method "
"StreamPeerTLS.accept_stream] (along with the proper [CryptoKey]), and to "
"specify the only certificate that should be accepted when connecting to a TLS "
"server via [method StreamPeerTLS.connect_to_stream]."
msgstr ""
"Класс X509Certificate представляет сертификат X509. Сертификаты можно "
"загружать и сохранять, как и любой другой [Resource].\n"
"Их можно использовать в качестве сертификата сервера в [method "
"StreamPeerTLS.accept_stream] (вместе с соответствующим [CryptoKey]) и для "
"указания единственного сертификата, который следует принимать при подключении "
"к серверу TLS через [method StreamPeerTLS.connect_to_stream]."

msgid "Loads a certificate from [param path] (\"*.crt\" file)."
msgstr "Загружает сертификат из [param path] (файл «*.crt»)."

msgid "Loads a certificate from the given [param string]."
msgstr "Загружает сертификат из указанной [param string]."

msgid ""
"Saves a certificate to the given [param path] (should be a \"*.crt\" file)."
msgstr ""
"Сохраняет сертификат по указанному [param path] (должен быть файл \"*.crt\")."

msgid ""
"Returns a string representation of the certificate, or an empty string if the "
"certificate is invalid."
msgstr ""
"Возвращает строковое представление сертификата или пустую строку, если "
"сертификат недействителен."

msgid "Provides a low-level interface for creating parsers for XML files."
msgstr ""
"Предоставляет низкоуровневый интерфейс для создания парсеров XML-файлов."

msgid ""
"Provides a low-level interface for creating parsers for [url=https://"
"en.wikipedia.org/wiki/XML]XML[/url] files. This class can serve as base to "
"make custom XML parsers.\n"
"To parse XML, you must open a file with the [method open] method or a buffer "
"with the [method open_buffer] method. Then, the [method read] method must be "
"called to parse the next nodes. Most of the methods take into consideration "
"the currently parsed node.\n"
"Here is an example of using [XMLParser] to parse an SVG file (which is based "
"on XML), printing each element and its attributes as a dictionary:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var parser = XMLParser.new()\n"
"parser.open(\"path/to/file.svg\")\n"
"while parser.read() != ERR_FILE_EOF:\n"
"\tif parser.get_node_type() == XMLParser.NODE_ELEMENT:\n"
"\t\tvar node_name = parser.get_node_name()\n"
"\t\tvar attributes_dict = {}\n"
"\t\tfor idx in range(parser.get_attribute_count()):\n"
"\t\t\tattributes_dict[parser.get_attribute_name(idx)] = "
"parser.get_attribute_value(idx)\n"
"\t\tprint(\"The \", node_name, \" element has the following attributes: \", "
"attributes_dict)\n"
"[/gdscript]\n"
"[csharp]\n"
"var parser = new XmlParser();\n"
"parser.Open(\"path/to/file.svg\");\n"
"while (parser.Read() != Error.FileEof)\n"
"{\n"
"\tif (parser.GetNodeType() == XmlParser.NodeType.Element)\n"
"\t{\n"
"\t\tvar nodeName = parser.GetNodeName();\n"
"\t\tvar attributesDict = new Godot.Collections.Dictionary();\n"
"\t\tfor (int idx = 0; idx < parser.GetAttributeCount(); idx++)\n"
"\t\t{\n"
"\t\t\tattributesDict[parser.GetAttributeName(idx)] = "
"parser.GetAttributeValue(idx);\n"
"\t\t}\n"
"\t\tGD.Print($\"The {nodeName} element has the following attributes: "
"{attributesDict}\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"
msgstr ""
"Предоставляет низкоуровневый интерфейс для создания парсеров для файлов "
"[url=https://en.wikipedia.org/wiki/XML]XML[/url]. Этот класс может служить "
"основой для создания пользовательских парсеров XML.\n"
"Для парсинга XML необходимо открыть файл с помощью метода [method open] или "
"буфер с помощью метода [method open_buffer]. Затем необходимо вызвать метод "
"[method read] для парсинга следующих узлов. Большинство методов учитывают "
"текущий парсерируемый узел.\n"
"Вот пример использования [XMLParser] для парсинга файла SVG (который основан "
"на XML), выводя каждый элемент и его атрибуты в виде словаря:\n"
"[codeblocks]\n"
"[gdscript]\n"
"var parser = XMLParser.new()\n"
"parser.open(\"path/to/file.svg\")\n"
"while parser.read() != ERR_FILE_EOF:\n"
"\tif parser.get_node_type() == XMLParser.NODE_ELEMENT:\n"
"\t\tvar node_name = parser.get_node_name()\n"
"\t\tvar attributes_dict = {}\n"
"\t\tfor idx in range(parser.get_attribute_count()):\n"
"\t\t\tattributes_dict[parser.get_attribute_name(idx)] = "
"parser.get_attribute_value(idx)\n"
"\t\tprint(\"Элемент \", node_name, \" имеет следующие атрибуты: \", "
"attributes_dict)\n"
"[/gdscript]\n"
"[csharp]\n"
"var parser = new XmlParser();\n"
"parser.Open(\"path/to/file.svg\");\n"
"while (parser.Read() != Error.FileEof)\n"
"{\n"
"\tif (parser.GetNodeType() == XmlParser.NodeType.Element)\n"
"\t{\n"
"\t\tvar nodeName = parser.GetNodeName();\n"
"\t\tvar attributesDict = new Godot.Collections.Dictionary();\n"
"\t\tfor (int idx = 0; idx < parser.GetAttributeCount(); idx++)\n"
"\t\t{\n"
"\t\t\tattributesDict[parser.GetAttributeName(idx)] = "
"parser.GetAttributeValue(idx);\n"
"\t\t}\n"
"\t\tGD.Print($\"Элемент {nodeName} имеет следующие атрибуты: {attributesDict}"
"\");\n"
"\t}\n"
"}\n"
"[/csharp]\n"
"[/codeblocks]"

msgid ""
"Returns the number of attributes in the currently parsed element.\n"
"[b]Note:[/b] If this method is used while the currently parsed node is not "
"[constant NODE_ELEMENT] or [constant NODE_ELEMENT_END], this count will not "
"be updated and will still reflect the last element."
msgstr ""
"Возвращает количество атрибутов в текущем анализируемом элементе.\n"
"[b]Примечание:[/b] Если этот метод используется, когда текущий анализируемый "
"узел не является [constant NODE_ELEMENT] или [constant NODE_ELEMENT_END], это "
"количество не будет обновлено и по-прежнему будет отражать последний элемент."

msgid ""
"Returns the name of an attribute of the currently parsed element, specified "
"by the [param idx] index."
msgstr ""
"Возвращает имя атрибута текущего анализируемого элемента, заданного индексом "
"[param idx]."

msgid ""
"Returns the value of an attribute of the currently parsed element, specified "
"by the [param idx] index."
msgstr ""
"Возвращает значение атрибута текущего анализируемого элемента, указанного "
"индексом [param idx]."

msgid "Returns the current line in the parsed file, counting from 0."
msgstr "Возвращает текущую строку в проанализированном файле, начиная с 0."

msgid ""
"Returns the value of an attribute of the currently parsed element, specified "
"by its [param name]. This method will raise an error if the element has no "
"such attribute."
msgstr ""
"Возвращает значение атрибута текущего анализируемого элемента, указанного его "
"[param name]. Этот метод вызовет ошибку, если элемент не имеет такого "
"атрибута."

msgid ""
"Returns the value of an attribute of the currently parsed element, specified "
"by its [param name]. This method will return an empty string if the element "
"has no such attribute."
msgstr ""
"Возвращает значение атрибута текущего анализируемого элемента, указанного его "
"[param name]. Этот метод вернет пустую строку, если элемент не имеет такого "
"атрибута."

msgid ""
"Returns the contents of a text node. This method will raise an error if the "
"current parsed node is of any other type."
msgstr ""
"Возвращает содержимое текстового узла. Этот метод вызовет ошибку, если "
"текущий проанализированный узел имеет любой другой тип."

msgid ""
"Returns the name of a node. This method will raise an error if the currently "
"parsed node is a text node.\n"
"[b]Note:[/b] The content of a [constant NODE_CDATA] node and the comment "
"string of a [constant NODE_COMMENT] node are also considered names."
msgstr ""
"Возвращает имя узла. Этот метод вызовет ошибку, если текущий анализируемый "
"узел является текстовым узлом.\n"
"[b]Примечание:[/b] Содержимое узла [constant NODE_CDATA] и строка комментария "
"узла [constant NODE_COMMENT] также считаются именами."

msgid ""
"Returns the byte offset of the currently parsed node since the beginning of "
"the file or buffer. This is usually equivalent to the number of characters "
"before the read position."
msgstr ""
"Возвращает смещение байта текущего анализируемого узла с начала файла или "
"буфера. Обычно это эквивалентно количеству символов до позиции чтения."

msgid ""
"Returns the type of the current node. Compare with [enum NodeType] constants."
msgstr "Возвращает тип текущего узла. Сравните с константами [enum NodeType]."

msgid ""
"Returns [code]true[/code] if the currently parsed element has an attribute "
"with the [param name]."
msgstr ""
"Возвращает [code]true[/code], если текущий анализируемый элемент имеет "
"атрибут с [param name]."

msgid ""
"Returns [code]true[/code] if the currently parsed element is empty, e.g. "
"[code]<element />[/code]."
msgstr ""
"Возвращает [code]true[/code], если текущий обработанный элемент пуст, "
"например [code]<element />[/code]."

msgid ""
"Opens an XML [param file] for parsing. This method returns an error code."
msgstr ""
"Открывает XML [param file] для разбора. Этот метод возвращает код ошибки."

msgid ""
"Opens an XML raw [param buffer] for parsing. This method returns an error "
"code."
msgstr ""
"Открывает XML raw [param buffer] для разбора. Этот метод возвращает код "
"ошибки."

msgid "Parses the next node in the file. This method returns an error code."
msgstr "Анализирует следующий узел в файле. Этот метод возвращает код ошибки."

msgid ""
"Moves the buffer cursor to a certain offset (since the beginning) and reads "
"the next node there. This method returns an error code."
msgstr ""
"Перемещает курсор буфера на определенное смещение (от начала) и считывает "
"следующий узел там. Этот метод возвращает код ошибки."

msgid ""
"Skips the current section. If the currently parsed node contains more inner "
"nodes, they will be ignored and the cursor will go to the closing of the "
"current element."
msgstr ""
"Пропускает текущий раздел. Если текущий анализируемый узел содержит больше "
"внутренних узлов, они будут проигнорированы, а курсор перейдет к закрытию "
"текущего элемента."

msgid "There's no node (no file or buffer opened)."
msgstr "Нет узла (файл или буфер не открыты)."

msgid "An element node type, also known as a tag, e.g. [code]<title>[/code]."
msgstr ""
"Тип узла элемента, также известный как тег, например, [code]<title>[/code]."

msgid "An end of element node type, e.g. [code]</title>[/code]."
msgstr "Конец типа узла элемента, например [code]</title>[/code]."

msgid ""
"A text node type, i.e. text that is not inside an element. This includes "
"whitespace."
msgstr ""
"Тип текстового узла, т.е. текст, который не находится внутри элемента. Сюда "
"входят пробелы."

msgid "A comment node type, e.g. [code]<!--A comment-->[/code]."
msgstr "Тип узла комментария, например, [code]<!--A comment-->[/code]."

msgid ""
"A node type for CDATA (Character Data) sections, e.g. [code]<![CDATA[CDATA "
"section]]>[/code]."
msgstr ""
"Тип узла для разделов CDATA (символьные данные), например, [code]<!"
"[CDATA[CDATA section]]>[/code]."

msgid "An unknown node type."
msgstr "Неизвестный тип узла."

msgid "An anchor point in AR space."
msgstr "Точка привязки в пространстве дополненной реальности."

msgid ""
"The [XRAnchor3D] point is an [XRNode3D] that maps a real world location "
"identified by the AR platform to a position within the game world. For "
"example, as long as plane detection in ARKit is on, ARKit will identify and "
"update the position of planes (tables, floors, etc.) and create anchors for "
"them.\n"
"This node is mapped to one of the anchors through its unique ID. When you "
"receive a signal that a new anchor is available, you should add this node to "
"your scene for that anchor. You can predefine nodes and set the ID; the nodes "
"will simply remain on [code](0, 0, 0)[/code] until a plane is recognized.\n"
"Keep in mind that, as long as plane detection is enabled, the size, placing "
"and orientation of an anchor will be updated as the detection logic learns "
"more about the real world out there especially if only part of the surface is "
"in view."
msgstr ""
"Точка [XRAnchor3D] — это [XRNode3D], которая сопоставляет местоположение в "
"реальном мире, определенное платформой дополненной реальности, с позицией в "
"игровом мире. Например, пока в ARKit включено обнаружение плоскостей, ARKit "
"будет определять и обновлять положение плоскостей (столов, полов и т. д.) и "
"создавать для них якоря.\n"
"Этот узел сопоставляется с одним из якорей посредством его уникального "
"идентификатора. Когда вы получаете сигнал о том, что доступен новый якорь, "
"вам следует добавить этот узел в сцену для этого якоря. Вы можете заранее "
"определить узлы и задать идентификатор; узлы просто останутся на [code](0, 0, "
"0)[/code] до тех пор, пока не будет распознана плоскость.\n"
"Помните, что пока включено обнаружение плоскости, размер, размещение и "
"ориентация якоря будут обновляться по мере того, как логика обнаружения "
"узнает больше о реальном мире, особенно если в поле зрения находится только "
"часть поверхности."

msgid "XR documentation index"
msgstr "Индекс документации XR"

msgid "Returns a plane aligned with our anchor; handy for intersection testing."
msgstr ""
"Возвращает плоскость, выровненную с нашей точкой привязки; удобно для "
"проверки пересечения."

msgid ""
"Returns the estimated size of the plane that was detected. Say when the "
"anchor relates to a table in the real world, this is the estimated size of "
"the surface of that table."
msgstr ""
"Возвращает предполагаемый размер обнаруженной плоскости. Скажем, когда якорь "
"относится к столу в реальном мире, это предполагаемый размер поверхности "
"этого стола."

msgid "A node for driving body meshes from [XRBodyTracker] data."
msgstr "Узел для управления сетками тел на основе данных [XRBodyTracker]."

msgid ""
"This node uses body tracking data from an [XRBodyTracker] to pose the "
"skeleton of a body mesh.\n"
"Positioning of the body is performed by creating an [XRNode3D] ancestor of "
"the body mesh driven by the same [XRBodyTracker].\n"
"The body tracking position-data is scaled by [member Skeleton3D.motion_scale] "
"when applied to the skeleton, which can be used to adjust the tracked body to "
"match the scale of the body model."
msgstr ""
"Этот узел использует данные отслеживания тела из [XRBodyTracker] для "
"позиционирования скелета сетки тела.\n"
"Позиционирование тела выполняется путем создания предка [XRNode3D] сетки "
"тела, управляемой тем же [XRBodyTracker].\n"
"Данные о положении отслеживания тела масштабируются [member "
"Skeleton3D.motion_scale] при применении к скелету, что может использоваться "
"для настройки отслеживаемого тела в соответствии с масштабом модели тела."

msgid ""
"The name of the [XRBodyTracker] registered with [XRServer] to obtain the body "
"tracking data from."
msgstr ""
"Имя [XRBodyTracker], зарегистрированное на [XRServer], для получения данных "
"отслеживания тела."

msgid "Specifies the body parts to update."
msgstr "Указывает части тела для обновления."

msgid "Specifies the type of updates to perform on the bones."
msgstr "Указывает тип обновлений, которые следует выполнять для костей."

msgid "The skeleton's upper body joints are updated."
msgstr "Обновить суставы верхней части тела скелета."

msgid "The skeleton's lower body joints are updated."
msgstr "Обновить суставы нижней части тела скелета."

msgid "The skeleton's hand joints are updated."
msgstr "Обновить суставы рук скелета."

msgid ""
"The skeleton's bones are fully updated (both position and rotation) to match "
"the tracked bones."
msgstr ""
"Кости скелета полностью обновлены (как положение, так и поворот) для "
"соответствия отслеживаемым костям."

msgid ""
"The skeleton's bones are only rotated to align with the tracked bones, "
"preserving bone length."
msgstr ""
"Кости скелета поворачиваются только для того, чтобы выровняться с "
"отслеживаемыми костями, сохраняя длину костей."

msgid "Represents the size of the [enum BoneUpdate] enum."
msgstr "Представляет размер перечисления [enum BoneUpdate]."

msgid "A tracked body in XR."
msgstr "Гусеничное тело в XR."

msgid ""
"A body tracking system will create an instance of this object and add it to "
"the [XRServer]. This tracking system will then obtain skeleton data, convert "
"it to the Godot Humanoid skeleton and store this data on the [XRBodyTracker] "
"object.\n"
"Use [XRBodyModifier3D] to animate a body mesh using body tracking data."
msgstr ""
"Система отслеживания тела создаст экземпляр этого объекта и добавит его в "
"[XRServer]. Затем эта система отслеживания получит данные скелета, "
"преобразует их в скелет гуманоида Godot и сохранит эти данные в объекте "
"[XRBodyTracker]. \n"
"Используйте [XRBodyModifier3D] для анимации сетки тела с использованием "
"данных отслеживания тела."

msgid ""
"Returns flags about the validity of the tracking data for the given body "
"joint."
msgstr ""
"Возвращает флаги о достоверности данных отслеживания для указанного сустава "
"тела."

msgid "Returns the transform for the given body joint."
msgstr "Возвращает преобразование для заданного сочленения тела."

msgid ""
"Sets flags about the validity of the tracking data for the given body joint."
msgstr ""
"Устанавливает флаги о достоверности данных отслеживания для данного сустава "
"тела."

msgid "Sets the transform for the given body joint."
msgstr "Устанавливает преобразование для заданного сочленения тела."

msgid "The type of body tracking data captured."
msgstr "Тип собираемых данных отслеживания тела."

msgid "If [code]true[/code], the body tracking data is valid."
msgstr "Если [code]true[/code], данные отслеживания тела действительны."

msgid "Upper body tracking supported."
msgstr "Поддерживается отслеживание верхней части тела."

msgid "Lower body tracking supported."
msgstr "Поддерживается отслеживание нижней части тела."

msgid "Hand tracking supported."
msgstr "Поддерживается отслеживание рук."

msgid "Root joint."
msgstr "Корневой сустав."

msgid "Hips joint."
msgstr "Тазобедренный сустав."

msgid "Spine joint."
msgstr "Позвоночник."

msgid "Chest joint."
msgstr "Грудной сустав."

msgid "Upper chest joint."
msgstr "Верхний грудной сустав."

msgid "Neck joint."
msgstr "Шейный сустав."

msgid "Head joint."
msgstr "Головной сустав."

msgid "Head tip joint."
msgstr "Сустав кончика головы."

msgid "Left shoulder joint."
msgstr "Левый плечевой сустав."

msgid "Left upper arm joint."
msgstr "Левый верхний сустав руки."

msgid "Left lower arm joint."
msgstr "Левый нижний сустав руки."

msgid "Right shoulder joint."
msgstr "Правый плечевой сустав."

msgid "Right upper arm joint."
msgstr "Правый верхний сустав руки."

msgid "Right lower arm joint."
msgstr "Правый нижний сустав руки."

msgid "Left upper leg joint."
msgstr "Левый верхний сустав ноги."

msgid "Left lower leg joint."
msgstr "Сустав левой голени."

msgid "Left foot joint."
msgstr "Сустав левой стопы."

msgid "Left toes joint."
msgstr "Сустав большого пальца левой ноги."

msgid "Right upper leg joint."
msgstr "Правый верхний сустав ноги."

msgid "Right lower leg joint."
msgstr "Правый голеностопный сустав."

msgid "Right foot joint."
msgstr "Сустав правой стопы."

msgid "Right toes joint."
msgstr "Сустав большого пальца правой ноги."

msgid "Left hand joint."
msgstr "Сустав левой руки."

msgid "Left palm joint."
msgstr "Левый ладонный сустав."

msgid "Left wrist joint."
msgstr "Левый лучезапястный сустав."

msgid "Left thumb metacarpal joint."
msgstr "Пястно-запястный сустав большого пальца левой руки."

msgid "Left thumb phalanx proximal joint."
msgstr "Проксимальный сустав фаланги большого пальца левой руки."

msgid "Left thumb phalanx distal joint."
msgstr "Дистальный сустав фаланги большого пальца левой руки."

msgid "Left thumb tip joint."
msgstr "Сустав большого пальца левой руки."

msgid "Left index finger metacarpal joint."
msgstr "Пястно-запястный сустав указательного пальца левой руки."

msgid "Left index finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги указательного пальца левой руки."

msgid "Left index finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги указательного пальца левой руки."

msgid "Left index finger phalanx distal joint."
msgstr "Дистальный сустав фаланги указательного пальца левой руки."

msgid "Left index finger tip joint."
msgstr "Кончик сустава указательного пальца левой руки."

msgid "Left middle finger metacarpal joint."
msgstr "Пястный сустав среднего пальца левой руки."

msgid "Left middle finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги среднего пальца левой руки."

msgid "Left middle finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги среднего пальца левой руки."

msgid "Left middle finger phalanx distal joint."
msgstr "Дистальный сустав фаланги среднего пальца левой руки."

msgid "Left middle finger tip joint."
msgstr "Кончик сустава среднего пальца левой руки."

msgid "Left ring finger metacarpal joint."
msgstr "Пястный сустав безымянного пальца левой руки."

msgid "Left ring finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги безымянного пальца левой руки."

msgid "Left ring finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги безымянного пальца левой руки."

msgid "Left ring finger phalanx distal joint."
msgstr "Дистальный сустав фаланги безымянного пальца левой руки."

msgid "Left ring finger tip joint."
msgstr "Кончик безымянного пальца левой руки."

msgid "Left pinky finger metacarpal joint."
msgstr "Пястно-запястный сустав мизинца левой руки."

msgid "Left pinky finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги мизинца левой руки."

msgid "Left pinky finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги мизинца левой руки."

msgid "Left pinky finger phalanx distal joint."
msgstr "Дистальный сустав фаланги мизинца левой руки."

msgid "Left pinky finger tip joint."
msgstr "Сустав кончика мизинца левой руки."

msgid "Right hand joint."
msgstr "Сустав правой руки."

msgid "Right palm joint."
msgstr "Правый ладонный сустав."

msgid "Right wrist joint."
msgstr "Правый лучезапястный сустав."

msgid "Right thumb metacarpal joint."
msgstr "Пястно-запястный сустав большого пальца правой руки."

msgid "Right thumb phalanx proximal joint."
msgstr "Проксимальный сустав фаланги большого пальца правой руки."

msgid "Right thumb phalanx distal joint."
msgstr "Дистальный сустав фаланги большого пальца правой руки."

msgid "Right thumb tip joint."
msgstr "Кончик большого пальца правой руки."

msgid "Right index finger metacarpal joint."
msgstr "Пястно-запястный сустав указательного пальца правой руки."

msgid "Right index finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги указательного пальца правой руки."

msgid "Right index finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги указательного пальца правой руки."

msgid "Right index finger phalanx distal joint."
msgstr "Дистальный сустав фаланги указательного пальца правой руки."

msgid "Right index finger tip joint."
msgstr "Кончик сустава указательного пальца правой руки."

msgid "Right middle finger metacarpal joint."
msgstr "Пястный сустав среднего пальца правой руки."

msgid "Right middle finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги среднего пальца правой руки."

msgid "Right middle finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги среднего пальца правой руки."

msgid "Right middle finger phalanx distal joint."
msgstr "Дистальный сустав фаланги среднего пальца правой руки."

msgid "Right middle finger tip joint."
msgstr "Кончик сустава среднего пальца правой руки."

msgid "Right ring finger metacarpal joint."
msgstr "Пястно-запястный сустав безымянного пальца правой руки."

msgid "Right ring finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги безымянного пальца правой руки."

msgid "Right ring finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги безымянного пальца правой руки."

msgid "Right ring finger phalanx distal joint."
msgstr "Дистальный сустав фаланги безымянного пальца правой руки."

msgid "Right ring finger tip joint."
msgstr "Кончик безымянного пальца правой руки."

msgid "Right pinky finger metacarpal joint."
msgstr "Пястно-запястный сустав мизинца правой руки."

msgid "Right pinky finger phalanx proximal joint."
msgstr "Проксимальный сустав фаланги мизинца правой руки."

msgid "Right pinky finger phalanx intermediate joint."
msgstr "Промежуточный сустав фаланги мизинца правой руки."

msgid "Right pinky finger phalanx distal joint."
msgstr "Дистальный сустав фаланги мизинца правой руки."

msgid "Right pinky finger tip joint."
msgstr "Сустав кончика мизинца правой руки."

msgid "Lower chest joint."
msgstr "Нижний грудной сустав."

msgid "Left scapula joint."
msgstr "Левый лопаточный сустав."

msgid "Left wrist twist joint."
msgstr "Поворотный сустав левого запястья."

msgid "Right scapula joint."
msgstr "Правый лопаточный сустав."

msgid "Right wrist twist joint."
msgstr "Поворотный сустав правого запястья."

msgid "Left foot twist joint."
msgstr "Поворотный сустав левой стопы."

msgid "Left heel joint."
msgstr "Левый пяточный сустав."

msgid "Left middle foot joint."
msgstr "Левый средний сустав стопы."

msgid "Right foot twist joint."
msgstr "Поворотный сустав правой стопы."

msgid "Right heel joint."
msgstr "Правый пяточный сустав."

msgid "Right middle foot joint."
msgstr "Правый средний сустав стопы."

msgid "Represents the size of the [enum Joint] enum."
msgstr "Представляет размер перечисления [enum Joint]."

msgid "The joint's orientation data is valid."
msgstr "Данные об ориентации соединения верны."

msgid ""
"The joint's orientation is actively tracked. May not be set if tracking has "
"been temporarily lost."
msgstr ""
"Ориентация сустава активно отслеживается. Не может быть установлена, если "
"отслеживание временно потеряно."

msgid "The joint's position data is valid."
msgstr "Данные о положении сустава верны."

msgid ""
"The joint's position is actively tracked. May not be set if tracking has been "
"temporarily lost."
msgstr ""
"Положение сустава активно отслеживается. Не может быть установлено, если "
"отслеживание временно потеряно."

msgid ""
"A camera node with a few overrules for AR/VR applied, such as location "
"tracking."
msgstr ""
"Узел камеры с несколькими дополнительными правилами для дополненной и "
"виртуальной (AR/VR) реальности, такими как отслеживание местоположения."

msgid ""
"This is a helper 3D node for our camera. Note that, if stereoscopic rendering "
"is applicable (VR-HMD), most of the camera properties are ignored, as the HMD "
"information overrides them. The only properties that can be trusted are the "
"near and far planes.\n"
"The position and orientation of this node is automatically updated by the XR "
"Server to represent the location of the HMD if such tracking is available and "
"can thus be used by game logic. Note that, in contrast to the XR Controller, "
"the render thread has access to the most up-to-date tracking data of the HMD "
"and the location of the XRCamera3D can lag a few milliseconds behind what is "
"used for rendering as a result."
msgstr ""
"Это вспомогательный 3D-узел для нашей камеры. Обратите внимание, что если "
"применим стереоскопический рендеринг (VR-HMD), большинство свойств камеры "
"игнорируются, поскольку информация HMD переопределяет их. Единственными "
"свойствами, которым можно доверять, являются ближняя и дальняя плоскости.\n"
"Положение и ориентация этого узла автоматически обновляются Сервером XR для "
"представления местоположения HMD, если такое отслеживание доступно, и, таким "
"образом, могут использоваться игровой логикой. Обратите внимание, что, в "
"отличие от контроллера XR, поток рендеринга имеет доступ к самым последним "
"данным отслеживания HMD, и в результате местоположение XRCamera3D может "
"отставать на несколько миллисекунд от того, что используется для рендеринга."

msgid "A 3D node representing a spatially-tracked controller."
msgstr ""
"Трехмерный узел, представляющий собой пространственно отслеживаемый "
"контроллер."

msgid ""
"This is a helper 3D node that is linked to the tracking of controllers. It "
"also offers several handy passthroughs to the state of buttons and such on "
"the controllers.\n"
"Controllers are linked by their ID. You can create controller nodes before "
"the controllers are available. If your game always uses two controllers (one "
"for each hand), you can predefine the controllers with ID 1 and 2; they will "
"become active as soon as the controllers are identified. If you expect "
"additional controllers to be used, you should react to the signals and add "
"XRController3D nodes to your scene.\n"
"The position of the controller node is automatically updated by the "
"[XRServer]. This makes this node ideal to add child nodes to visualize the "
"controller.\n"
"The current [XRInterface] defines the names of inputs. In the case of OpenXR, "
"these are the names of actions in the current action set from the OpenXR "
"action map."
msgstr ""
"Это вспомогательный 3D-узел, связанный с отслеживанием контроллеров. Он также "
"предлагает несколько удобных проходов к состоянию кнопок и т. п. на "
"контроллерах.\n"
"Контроллеры связаны по их ID идентификатору. Вы можете создать узлы "
"контроллеров до того, как контроллеры станут доступны. Если в вашей игре "
"всегда используются два контроллера (по одному для каждой руки), вы можете "
"заранее определить контроллеры с идентификаторами 1 и 2; они станут "
"активными, как только контроллеры будут идентифицированы. Если вы ожидаете "
"использования дополнительных контроллеров, вы должны отреагировать на сигналы "
"и добавить узлы XRController3D в вашу сцену.\n"
"Положение узла контроллера автоматически обновляется [XRServer]. Это делает "
"этот узел идеальным для добавления дочерних узлов для визуализации "
"контроллера.\n"
"Текущий [XRInterface] определяет имена входов. В случае OpenXR это имена "
"действий в текущем наборе действий из карты действий OpenXR."

msgid ""
"Returns a numeric value for the input with the given [param name]. This is "
"used for triggers and grip sensors.\n"
"[b]Note:[/b] The current [XRInterface] defines the [param name] for each "
"input. In the case of OpenXR, these are the names of actions in the current "
"action set."
msgstr ""
"Возвращает числовое значение для входа с заданным [param name]. Используется "
"для триггеров и датчиков захвата.\n"
"[b]Примечание:[/b] Текущий [XRInterface] определяет [param name] для каждого "
"входа. В случае OpenXR это имена действий в текущем наборе действий."

msgid ""
"Returns a [Variant] for the input with the given [param name]. This works for "
"any input type, the variant will be typed according to the actions "
"configuration.\n"
"[b]Note:[/b] The current [XRInterface] defines the [param name] for each "
"input. In the case of OpenXR, these are the names of actions in the current "
"action set."
msgstr ""
"Возвращает [Variant] для ввода с заданным [param name]. Это работает для "
"любого типа ввода, вариант будет типизирован в соответствии с конфигурацией "
"действий.\n"
"[b]Примечание:[/b] Текущий [XRInterface] определяет [param name] для каждого "
"ввода. В случае OpenXR это имена действий в текущем наборе действий."

msgid "Returns the hand holding this controller, if known."
msgstr "Возвращает руку, держащую этот контроллер, если она известна."

msgid ""
"Returns a [Vector2] for the input with the given [param name]. This is used "
"for thumbsticks and thumbpads found on many controllers.\n"
"[b]Note:[/b] The current [XRInterface] defines the [param name] for each "
"input. In the case of OpenXR, these are the names of actions in the current "
"action set."
msgstr ""
"Возвращает [Vector2] для ввода с заданным [param name]. Используется для "
"thumbsticks и thumbpads, имеющихся на многих контроллерах.\n"
"[b]Примечание:[/b] Текущий [XRInterface] определяет [param name] для каждого "
"ввода. В случае OpenXR это имена действий в текущем наборе действий."

msgid ""
"Returns [code]true[/code] if the button with the given [param name] is "
"pressed.\n"
"[b]Note:[/b] The current [XRInterface] defines the [param name] for each "
"input. In the case of OpenXR, these are the names of actions in the current "
"action set."
msgstr ""
"Возвращает [code]true[/code], если нажата кнопка с заданным [param name].\n"
"[b]Примечание:[/b] Текущий [XRInterface] определяет [param name] для каждого "
"входа. В случае OpenXR это имена действий в текущем наборе действий."

msgid "Emitted when a button on this controller is pressed."
msgstr "Издается при нажатии кнопки на этом контроллере."

msgid "Emitted when a button on this controller is released."
msgstr "Издается при отпускании кнопки на этом контроллере."

msgid ""
"Emitted when a trigger or similar input on this controller changes value."
msgstr ""
"Генерируется, когда триггер или аналогичный вход на этом контроллере изменяют "
"значение."

msgid "Emitted when a thumbstick or thumbpad on this controller is moved."
msgstr ""
"Издается при перемещении мини-джойстика или панели большого пальца на этом "
"контроллере."

msgid "Emitted when the interaction profile on this controller is changed."
msgstr "Выдается при изменении профиля взаимодействия на этом контроллере."

msgid "A tracked controller."
msgstr "Гусеничный контроллер."

msgid ""
"An instance of this object represents a controller that is tracked.\n"
"As controllers are turned on and the [XRInterface] detects them, instances of "
"this object are automatically added to this list of active tracking objects "
"accessible through the [XRServer].\n"
"The [XRController3D] consumes objects of this type and should be used in your "
"project."
msgstr ""
"Экземпляр этого объекта представляет отслеживаемый контроллер.\n"
"Поскольку контроллеры включены и [XRInterface] обнаруживает их, экземпляры "
"этого объекта автоматически добавляются в этот список активных объектов "
"отслеживания, доступных через [XRServer].\n"
"[XRController3D] потребляет объекты этого типа и должен использоваться в "
"вашем проекте."

msgid "A node for driving standard face meshes from [XRFaceTracker] weights."
msgstr ""
"Узел для управления стандартными сетками граней на основе весов "
"[XRFaceTracker]."

msgid ""
"This node applies weights from an [XRFaceTracker] to a mesh with supporting "
"face blend shapes.\n"
"The [url=https://docs.vrcft.io/docs/tutorial-avatars/tutorial-avatars-extras/"
"unified-blendshapes]Unified Expressions[/url] blend shapes are supported, as "
"well as ARKit and SRanipal blend shapes.\n"
"The node attempts to identify blend shapes based on name matching. Blend "
"shapes should match the names listed in the [url=https://docs.vrcft.io/docs/"
"tutorial-avatars/tutorial-avatars-extras/compatibility/overview]Unified "
"Expressions Compatibility[/url] chart."
msgstr ""
"Этот узел применяет массы из [XRFaceTracker] к сетке с поддерживающими "
"формами смешивания граней.\n"
"[url=https://docs.vrcft.io/docs/tutorial-avatars/tutorial-avatars-extras/"
"unified-blendshapes]Unified Expressions[/url] поддерживает формы смешивания, "
"а также формы смешивания ARKit и SRanipal.\n"
"Узел пытается идентифицировать смешанные формы на основе сопоставления имён. "
"Смешение форм должно соответствовать именам, указанным в таблице [url=https://"
"docs.vrcft.io/docs/tutorial-avatars/tutorial-avatars-extras/compatibility/"
"overview]Unified Expressions Compatibility[/url]."

msgid "The [XRFaceTracker] path."
msgstr "Путь [XRFaceTracker]."

msgid "The [NodePath] of the face [MeshInstance3D]."
msgstr "[NodePath] грани [MeshInstance3D]."

msgid "A tracked face."
msgstr "Отслеживаемое лицо."

msgid ""
"An instance of this object represents a tracked face and its corresponding "
"blend shapes. The blend shapes come from the [url=https://docs.vrcft.io/docs/"
"tutorial-avatars/tutorial-avatars-extras/unified-blendshapes]Unified "
"Expressions[/url] standard, and contain extended details and visuals for each "
"blend shape. Additionally the [url=https://docs.vrcft.io/docs/tutorial-"
"avatars/tutorial-avatars-extras/compatibility/overview]Tracking Standard "
"Comparison[/url] page documents the relationship between Unified Expressions "
"and other standards.\n"
"As face trackers are turned on they are registered with the [XRServer]."
msgstr ""
"Экземпляр этого объекта представляет отслеживаемое лицо и соответствующие ему "
"формы смешивания. Формы смешивания берутся из стандарта [url=https://"
"docs.vrcft.io/docs/tutorial-avatars/tutorial-avatars-extras/unified-"
"blendshapes]Unified Expressions[/url] и содержат расширенные сведения и "
"визуальные элементы для каждой формы смешивания. Кроме того, страница "
"[url=https://docs.vrcft.io/docs/tutorial-avatars/tutorial-avatars-extras/"
"compatibility/overview]Сравнение стандартов отслеживания[/url] документирует "
"связь между унифицированными выражениями и другими стандартами.\n"
"По мере включения трекеров лиц они регистрируются на [XRServer]."

msgid "Returns the requested face blend shape weight."
msgstr "Возвращает запрошенный вес формы смешивания граней."

msgid "Sets a face blend shape weight."
msgstr "Устанавливает вес формы смешивания лица."

msgid ""
"The array of face blend shape weights with indices corresponding to the [enum "
"BlendShapeEntry] enum."
msgstr ""
"Массив весов форм смешивания граней с индексами, соответствующими "
"перечислению [enum BlendShapeEntry]."

msgid "Right eye looks outwards."
msgstr "Правый глаз смотрит наружу."

msgid "Right eye looks inwards."
msgstr "Правый глаз смотрит внутрь."

msgid "Right eye looks upwards."
msgstr "Правый глаз смотрит вверх."

msgid "Right eye looks downwards."
msgstr "Правый глаз смотрит вниз."

msgid "Left eye looks outwards."
msgstr "Левый глаз смотрит наружу."

msgid "Left eye looks inwards."
msgstr "Левый глаз смотрит внутрь."

msgid "Left eye looks upwards."
msgstr "Левый глаз смотрит вверх."

msgid "Left eye looks downwards."
msgstr "Левый глаз смотрит вниз."

msgid "Closes the right eyelid."
msgstr "Закрывает правое веко."

msgid "Closes the left eyelid."
msgstr "Закрывает левое веко."

msgid "Squeezes the right eye socket muscles."
msgstr "Сжимает мышцы правой глазницы."

msgid "Squeezes the left eye socket muscles."
msgstr "Сжимает мышцы левой глазницы."

msgid "Right eyelid widens beyond relaxed."
msgstr "Правое веко расширяется сверх расслабленного состояния."

msgid "Left eyelid widens beyond relaxed."
msgstr "Левое веко расширяется сверх расслабленного состояния."

msgid "Dilates the right eye pupil."
msgstr "Расширяет зрачок правого глаза."

msgid "Dilates the left eye pupil."
msgstr "Расширяет зрачок левого глаза."

msgid "Constricts the right eye pupil."
msgstr "Сужает зрачок правого глаза."

msgid "Constricts the left eye pupil."
msgstr "Сужает зрачок левого глаза."

msgid "Right eyebrow pinches in."
msgstr "Правая бровь приподнята."

msgid "Left eyebrow pinches in."
msgstr "Левая бровь приподнята."

msgid "Outer right eyebrow pulls down."
msgstr "Внешняя часть правой брови опущена."

msgid "Outer left eyebrow pulls down."
msgstr "Внешняя часть левой брови опущена."

msgid "Inner right eyebrow pulls up."
msgstr "Внутренняя часть правой брови приподнята."

msgid "Inner left eyebrow pulls up."
msgstr "Внутренняя часть левой брови приподнята."

msgid "Outer right eyebrow pulls up."
msgstr "Внешняя часть правой брови приподнята."

msgid "Outer left eyebrow pulls up."
msgstr "Внешняя часть левой брови приподнята."

msgid "Right side face sneers."
msgstr "Правая сторона лица усмехается."

msgid "Left side face sneers."
msgstr "Левая сторона лица усмехается."

msgid "Right side nose canal dilates."
msgstr "Правый носовой канал расширяется."

msgid "Left side nose canal dilates."
msgstr "Левый носовой канал расширяется."

msgid "Right side nose canal constricts."
msgstr "Сужение правого носового канала."

msgid "Left side nose canal constricts."
msgstr "Сужение носового канала с левой стороны."

msgid "Raises the right side cheek."
msgstr "Поднимает правую щеку."

msgid "Raises the left side cheek."
msgstr "Поднимает левую щеку."

msgid "Puffs the right side cheek."
msgstr "Раздувает правую щеку."

msgid "Puffs the left side cheek."
msgstr "Раздувает левую щеку."

msgid "Sucks in the right side cheek."
msgstr "Втягивает правую щеку."

msgid "Sucks in the left side cheek."
msgstr "Втягивает левую щеку."

msgid "Opens jawbone."
msgstr "Открывает челюсть."

msgid "Closes the mouth."
msgstr "Закрывает рот."

msgid "Pushes jawbone right."
msgstr "Смещает челюстную кость вправо."

msgid "Pushes jawbone left."
msgstr "Смещает челюстную кость влево."

msgid "Pushes jawbone forward."
msgstr "Выдвигает челюстную кость вперед."

msgid "Pushes jawbone backward."
msgstr "Отодвигает челюстную кость назад."

msgid "Flexes jaw muscles."
msgstr "Напрягает мышцы челюсти."

msgid "Raises the jawbone."
msgstr "Поднимает челюстную кость."

msgid "Upper right lip part tucks in the mouth."
msgstr "Верхняя правая часть губы приподнята."

msgid "Upper left lip part tucks in the mouth."
msgstr "Верхняя левая часть губы приподнята."

msgid "Lower right lip part tucks in the mouth."
msgstr "Нижняя правая часть губы втянута в рот."

msgid "Lower left lip part tucks in the mouth."
msgstr "Нижняя левая часть губы заправлена в рот."

msgid "Right lip corner folds into the mouth."
msgstr "Уголок правой губы загибается внутрь рта."

msgid "Left lip corner folds into the mouth."
msgstr "Уголок левой губы загибается внутрь рта."

msgid "Upper right lip part pushes into a funnel."
msgstr "Верхняя правая часть губы выпячивается в виде воронки."

msgid "Upper left lip part pushes into a funnel."
msgstr "Верхняя левая часть губы выпячивается в виде воронки."

msgid "Lower right lip part pushes into a funnel."
msgstr "Нижняя правая часть губы выпячивается в воронку."

msgid "Lower left lip part pushes into a funnel."
msgstr "Нижняя левая часть губы выпячивается в виде воронки."

msgid "Upper right lip part pushes outwards."
msgstr "Верхняя правая часть губы выпячивается наружу."

msgid "Upper left lip part pushes outwards."
msgstr "Верхняя левая часть губы выпячивается наружу."

msgid "Lower right lip part pushes outwards."
msgstr "Нижняя правая часть губы выпячивается наружу."

msgid "Lower left lip part pushes outwards."
msgstr "Нижняя левая часть губы выпячивается наружу."

msgid "Upper right part of the lip pulls up."
msgstr "Верхняя правая часть губы подтянута вверх."

msgid "Upper left part of the lip pulls up."
msgstr "Верхняя левая часть губы подтянута вверх."

msgid "Lower right part of the lip pulls up."
msgstr "Нижняя правая часть губы подтянута вверх."

msgid "Lower left part of the lip pulls up."
msgstr "Нижняя левая часть губы подтянута вверх."

msgid "Upper right lip part pushes in the cheek."
msgstr "Верхняя правая часть губы вдавливается в щеку."

msgid "Upper left lip part pushes in the cheek."
msgstr "Верхняя левая часть губы вдавливается в щеку."

msgid "Moves upper lip right."
msgstr "Двигает верхнюю губу вправо."

msgid "Moves upper lip left."
msgstr "Двигает верхнюю губу влево."

msgid "Moves lower lip right."
msgstr "Двигает нижнюю губу вправо."

msgid "Moves lower lip left."
msgstr "Двигает нижнюю губу влево."

msgid "Right lip corner pulls diagonally up and out."
msgstr "Уголок правой губы оттягивается по диагонали вверх и наружу."

msgid "Left lip corner pulls diagonally up and out."
msgstr "Уголок левой губы оттягивается по диагонали вверх и наружу."

msgid "Right corner lip slants up."
msgstr "Правый уголок губы приподнят."

msgid "Left corner lip slants up."
msgstr "Левый уголок губы приподнят."

msgid "Right corner lip pulls down."
msgstr "Правый уголок губы оттягивается вниз."

msgid "Left corner lip pulls down."
msgstr "Левый уголок губы оттягивается вниз."

msgid "Mouth corner lip pulls out and down."
msgstr "Уголок рта оттягивается вперед и вниз."

msgid "Right lip corner is pushed backwards."
msgstr "Правый уголок губы оттянут назад."

msgid "Left lip corner is pushed backwards."
msgstr "Левый уголок губы оттянут назад."

msgid "Raises and slightly pushes out the upper mouth."
msgstr "Поднимает и слегка выдвигает верхнюю часть рта."

msgid "Raises and slightly pushes out the lower mouth."
msgstr "Поднимает и слегка выдвигает нижнюю часть рта."

msgid "Right side lips press and flatten together vertically."
msgstr "Правые губы сожмите и сведите вместе по вертикали."

msgid "Left side lips press and flatten together vertically."
msgstr "Губы левой стороны сожмите и сведите вместе по вертикали."

msgid "Right side lips squeeze together horizontally."
msgstr "Правые губы сжаты горизонтально."

msgid "Left side lips squeeze together horizontally."
msgstr "Губы левой стороны сжаты горизонтально."

msgid "Tongue visibly sticks out of the mouth."
msgstr "Язык заметно высовывается изо рта."

msgid "Tongue points upwards."
msgstr "Язык направлен вверх."

msgid "Tongue points downwards."
msgstr "Язык направлен вниз."

msgid "Tongue points right."
msgstr "Язык направлен вправо."

msgid "Tongue points left."
msgstr "Кончики языка слева."

msgid "Sides of the tongue funnel, creating a roll."
msgstr "Бока языка выгибаются, образуя рулет."

msgid "Tongue arches up then down inside the mouth."
msgstr "Язык выгибается вверх, а затем вниз во рту."

msgid "Tongue arches down then up inside the mouth."
msgstr "Язык выгибается вниз, а затем вверх во рту."

msgid "Tongue squishes together and thickens."
msgstr "Язык сжимается и утолщается."

msgid "Tongue flattens and thins out."
msgstr "Язык становится плоским и истонченным."

msgid "Tongue tip rotates clockwise, with the rest following gradually."
msgstr ""
"Кончик языка вращается по часовой стрелке, а остальная часть языка постепенно "
"следует за ним."

msgid "Tongue tip rotates counter-clockwise, with the rest following gradually."
msgstr ""
"Кончик языка вращается против часовой стрелки, а остальная часть языка "
"постепенно следует за ним."

msgid "Inner mouth throat closes."
msgstr "Внутренняя часть рта закрывается."

msgid "The Adam's apple visibly swallows."
msgstr "Кадык заметно проглатывается."

msgid "Right side neck visibly flexes."
msgstr "Правая сторона шеи заметно сгибается."

msgid "Left side neck visibly flexes."
msgstr "Левая сторона шеи заметно изгибается."

msgid "Closes both eye lids."
msgstr "Закрывает оба века."

msgid "Widens both eye lids."
msgstr "Расширяет оба века."

msgid "Squints both eye lids."
msgstr "Щурит оба века."

msgid "Dilates both pupils."
msgstr "Расширяет оба зрачка."

msgid "Constricts both pupils."
msgstr "Сужает оба зрачка."

msgid "Pulls the right eyebrow down and in."
msgstr "Тянет правую бровь вниз и внутрь."

msgid "Pulls the left eyebrow down and in."
msgstr "Тянет левую бровь вниз и внутрь."

msgid "Pulls both eyebrows down and in."
msgstr "Тянет обе брови вниз и внутрь."

msgid "Right brow appears worried."
msgstr "Правая бровь выглядит обеспокоенной."

msgid "Left brow appears worried."
msgstr "Левая бровь выглядит обеспокоенной."

msgid "Both brows appear worried."
msgstr "Обе брови выглядят обеспокоенными."

msgid "Entire face sneers."
msgstr "Все лицо усмехается."

msgid "Both nose canals dilate."
msgstr "Оба носовых канала расширяются."

msgid "Both nose canals constrict."
msgstr "Оба носовых канала сужаются."

msgid "Puffs both cheeks."
msgstr "Надувает обе щеки."

msgid "Sucks in both cheeks."
msgstr "Сосет обе щеки."

msgid "Raises both cheeks."
msgstr "Поднимает обе щеки."

msgid "Tucks in the upper lips."
msgstr "Подтягивает верхнюю губу."

msgid "Tucks in the lower lips."
msgstr "Подтягивает нижнюю губу."

msgid "Tucks in both lips."
msgstr "Поджимает обе губы."

msgid "Funnels in the upper lips."
msgstr "Воронки в верхней губе."

msgid "Funnels in the lower lips."
msgstr "Воронки на нижней губе."

msgid "Funnels in both lips."
msgstr "Воронки на обеих губах."

msgid "Upper lip part pushes outwards."
msgstr "Верхняя часть губы выпячивается наружу."

msgid "Lower lip part pushes outwards."
msgstr "Нижняя часть губы выпячивается наружу."

msgid "Lips push outwards."
msgstr "Губы выпячиваются наружу."

msgid "Raises the upper lips."
msgstr "Поднимает верхнюю губу."

msgid "Lowers the lower lips."
msgstr "Опускает нижнюю губу."

msgid "Mouth opens, revealing teeth."
msgstr "Рот открывается, обнажая зубы."

msgid "Moves mouth right."
msgstr "Двигает ртом вправо."

msgid "Moves mouth left."
msgstr "Двигает ртом влево."

msgid "Right side of the mouth smiles."
msgstr "Улыбка правой стороной рта."

msgid "Left side of the mouth smiles."
msgstr "Улыбка левой стороной рта."

msgid "Mouth expresses a smile."
msgstr "Рот выражает улыбку."

msgid "Right side of the mouth expresses sadness."
msgstr "Правая сторона рта выражает грусть."

msgid "Left side of the mouth expresses sadness."
msgstr "Левая сторона рта выражает грусть."

msgid "Mouth expresses sadness."
msgstr "Рот выражает грусть."

msgid "Mouth stretches."
msgstr "Рот растягивается."

msgid "Lip corners dimple."
msgstr "Ямочки в уголках губ."

msgid "Mouth tightens."
msgstr "Рот напрягается."

msgid "Mouth presses together."
msgstr "Губы сжаты."

msgid "Represents the size of the [enum BlendShapeEntry] enum."
msgstr "Представляет размер перечисления [enum BlendShapeEntry]."

msgid "A node for driving hand meshes from [XRHandTracker] data."
msgstr "Узел для управления ручными сетками на основе данных [XRHandTracker]."

msgid ""
"This node uses hand tracking data from an [XRHandTracker] to pose the "
"skeleton of a hand mesh.\n"
"Positioning of hands is performed by creating an [XRNode3D] ancestor of the "
"hand mesh driven by the same [XRHandTracker].\n"
"The hand tracking position-data is scaled by [member Skeleton3D.motion_scale] "
"when applied to the skeleton, which can be used to adjust the tracked hand to "
"match the scale of the hand model."
msgstr ""
"Этот узел использует данные отслеживания руки из [XRHandTracker] для "
"позиционирования скелета сетки руки.\n"
"Позиционирование рук выполняется путем создания предка [XRNode3D] сетки руки, "
"управляемого тем же [XRHandTracker].\n"
"Данные о положении отслеживания руки масштабируются [member "
"Skeleton3D.motion_scale] при применении к скелету, что может использоваться "
"для настройки отслеживаемой руки в соответствии с масштабом модели руки."

msgid ""
"The name of the [XRHandTracker] registered with [XRServer] to obtain the hand "
"tracking data from."
msgstr ""
"Имя [XRHandTracker], зарегистрированное на [XRServer], для получения данных "
"отслеживания рук."

msgid "A tracked hand in XR."
msgstr "Отслеживаемая рука в XR."

msgid ""
"A hand tracking system will create an instance of this object and add it to "
"the [XRServer]. This tracking system will then obtain skeleton data, convert "
"it to the Godot Humanoid hand skeleton and store this data on the "
"[XRHandTracker] object.\n"
"Use [XRHandModifier3D] to animate a hand mesh using hand tracking data."
msgstr ""
"Система отслеживания рук создаст экземпляр этого объекта и добавит его в "
"[XRServer]. Затем эта система отслеживания получит данные скелета, "
"преобразует их в скелет руки гуманоида Godot и сохранит эти данные в объекте "
"[XRHandTracker]. \n"
"Используйте [XRHandModifier3D] для анимации сетки руки с использованием "
"данных отслеживания рук."

msgid "Returns the angular velocity for the given hand joint."
msgstr "Возвращает угловую скорость для заданного сустава руки."

msgid ""
"Returns flags about the validity of the tracking data for the given hand "
"joint."
msgstr ""
"Возвращает флаги о достоверности данных отслеживания для указанного сустава "
"руки."

msgid "Returns the linear velocity for the given hand joint."
msgstr "Возвращает линейную скорость для заданного сустава руки."

msgid "Returns the radius of the given hand joint."
msgstr "Возвращает радиус указанного сустава руки."

msgid "Returns the transform for the given hand joint."
msgstr "Возвращает преобразование для заданного сустава руки."

msgid "Sets the angular velocity for the given hand joint."
msgstr "Устанавливает угловую скорость для данного сустава руки."

msgid ""
"Sets flags about the validity of the tracking data for the given hand joint."
msgstr ""
"Устанавливает флаги о достоверности данных отслеживания для данного сустава "
"руки."

msgid "Sets the linear velocity for the given hand joint."
msgstr "Устанавливает линейную скорость для данного сустава руки."

msgid "Sets the radius of the given hand joint."
msgstr "Устанавливает радиус указанного сустава руки."

msgid "Sets the transform for the given hand joint."
msgstr "Устанавливает преобразование для указанного сустава руки."

msgid "The source of the hand tracking data."
msgstr "Источник данных отслеживания рук."

msgid "If [code]true[/code], the hand tracking data is valid."
msgstr "Если [code]true[/code], данные отслеживания руки действительны."

msgid "The source of hand tracking data is unknown."
msgstr "Источник данных отслеживания рук неизвестен."

msgid ""
"The source of hand tracking data is unobstructed, meaning that an accurate "
"method of hand tracking is used. These include optical hand tracking, data "
"gloves, etc."
msgstr ""
"Источник данных отслеживания рук не имеет препятствий, что означает, что "
"используется точный метод отслеживания рук. К ним относятся оптическое "
"отслеживание рук, перчатки с данными и т. д."

msgid ""
"The source of hand tracking data is a controller, meaning that joint "
"positions are inferred from controller inputs."
msgstr ""
"Источником данных отслеживания рук является контроллер, то есть положения "
"суставов определяются на основе входных данных контроллера."

msgid ""
"No hand tracking data is tracked, this either means the hand is obscured, the "
"controller is turned off, or tracking is not supported for the current input "
"type."
msgstr ""
"Данные отслеживания руки не отслеживаются. Это означает, что рука закрыта, "
"контроллер выключен или отслеживание не поддерживается для текущего типа "
"ввода."

msgid "Represents the size of the [enum HandTrackingSource] enum."
msgstr "Представляет размер перечисления [enum HandTrackingSource]."

msgid "Thumb phalanx proximal joint."
msgstr "Проксимальный сустав фаланги большого пальца."

msgid "Thumb phalanx distal joint."
msgstr "Дистальный сустав фаланги большого пальца."

msgid "Represents the size of the [enum HandJoint] enum."
msgstr "Представляет размер перечисления [enum HandJoint]."

msgid "The hand joint's orientation data is valid."
msgstr "Данные об ориентации сустава кисти достоверны."

msgid ""
"The hand joint's orientation is actively tracked. May not be set if tracking "
"has been temporarily lost."
msgstr ""
"Ориентация сустава руки активно отслеживается. Не может быть установлена, "
"если отслеживание временно потеряно."

msgid "The hand joint's position data is valid."
msgstr "Данные о положении сустава кисти достоверны."

msgid ""
"The hand joint's position is actively tracked. May not be set if tracking has "
"been temporarily lost."
msgstr ""
"Положение сустава руки активно отслеживается. Не может быть установлено, если "
"отслеживание временно потеряно."

msgid "The hand joint's linear velocity data is valid."
msgstr "Данные о линейной скорости сустава кисти достоверны."

msgid "The hand joint's angular velocity data is valid."
msgstr "Данные об угловой скорости сустава кисти достоверны."

msgid "Base class for an XR interface implementation."
msgstr "Базовый класс для реализации интерфейса XR."

msgid ""
"This class needs to be implemented to make an AR or VR platform available to "
"Godot and these should be implemented as C++ modules or GDExtension modules. "
"Part of the interface is exposed to GDScript so you can detect, enable and "
"configure an AR or VR platform.\n"
"Interfaces should be written in such a way that simply enabling them will "
"give us a working setup. You can query the available interfaces through "
"[XRServer]."
msgstr ""
"Этот класс необходимо реализовать, чтобы сделать платформу AR или VR "
"доступной для Godot, и они должны быть реализованы как модули C++ или модули "
"GDExtension. Часть интерфейса открыта для GDScript, чтобы вы могли "
"обнаружить, включить и настроить платформу AR или VR.\n"
"Интерфейсы должны быть написаны таким образом, чтобы простое включение давало "
"нам рабочую настройку. Вы можете запросить доступные интерфейсы через "
"[XRServer]."

msgid ""
"If this is an AR interface that requires displaying a camera feed as the "
"background, this method returns the feed ID in the [CameraServer] for this "
"interface."
msgstr ""
"Если это интерфейс дополненной реальности, требующий отображения потока "
"камеры в качестве фона, этот метод возвращает идентификатор потока в "
"[CameraServer] для этого интерфейса."

msgid ""
"Returns a combination of [enum Capabilities] flags providing information "
"about the capabilities of this interface."
msgstr ""
"Возвращает комбинацию флагов [enum Capabilities], предоставляющих информацию "
"о возможностях этого интерфейса."

msgid ""
"Returns the name of this interface ([code]\"OpenXR\"[/code], [code]"
"\"OpenVR\"[/code], [code]\"OpenHMD\"[/code], [code]\"ARKit\"[/code], etc.)."
msgstr ""
"Возвращает имя этого интерфейса ([code]\"OpenXR\"[/code], [code]\"OpenVR\"[/"
"code], [code]\"OpenHMD\"[/code], [code]\"ARKit\"[/code] и т. д.)."

msgid ""
"Returns an array of vectors that represent the physical play area mapped to "
"the virtual space around the [XROrigin3D] point. The points form a convex "
"polygon that can be used to react to or visualize the play area. This returns "
"an empty array if this feature is not supported or if the information is not "
"yet available."
msgstr ""
"Возвращает массив векторов, представляющих физическую игровую зону, "
"сопоставленную с виртуальным пространством вокруг точки [XROrigin3D]. Точки "
"образуют выпуклый многоугольник, который можно использовать для реагирования "
"на игровую зону или ее визуализации. Это возвращает пустой массив, если эта "
"функция не поддерживается или если информация еще недоступна."

msgid "Returns the projection matrix for a view/eye."
msgstr "Возвращает матрицу проекции для вида/глаза."

msgid ""
"Returns the resolution at which we should render our intermediate results "
"before things like lens distortion are applied by the VR platform."
msgstr ""
"Возвращает разрешение, с которым следует визуализировать промежуточные "
"результаты, прежде чем VR-платформа применит такие эффекты, как искажение "
"объектива."

msgid ""
"Returns the an array of supported environment blend modes, see [enum "
"XRInterface.EnvironmentBlendMode]."
msgstr ""
"Возвращает массив поддерживаемых режимов смешивания сред, см. [enum "
"XRInterface.EnvironmentBlendMode]."

msgid ""
"Returns a [Dictionary] with extra system info. Interfaces are expected to "
"return [code]XRRuntimeName[/code] and [code]XRRuntimeVersion[/code] providing "
"info about the used XR runtime. Additional entries may be provided specific "
"to an interface.\n"
"[b]Note:[/b]This information may only be available after [method initialize] "
"was successfully called."
msgstr ""
"Возвращает [Dictionary] с дополнительной системной информацией. Интерфейсы "
"должны возвращать [code]XRRuntimeName[/code] и [code]XRRuntimeVersion[/code], "
"предоставляя информацию об используемой среде выполнения XR. Дополнительные "
"записи могут быть предоставлены для конкретного интерфейса.\n"
"[b]Примечание:[/b]Эта информация может быть доступна только после успешного "
"вызова [method initialize]."

msgid ""
"If supported, returns the status of our tracking. This will allow you to "
"provide feedback to the user whether there are issues with positional "
"tracking."
msgstr ""
"Если поддерживается, возвращает статус нашего отслеживания. Это позволит вам "
"предоставить пользователю обратную связь, если есть проблемы с позиционным "
"отслеживанием."

msgid ""
"Returns the transform for a view/eye.\n"
"[param view] is the view/eye index.\n"
"[param cam_transform] is the transform that maps device coordinates to scene "
"coordinates, typically the [member Node3D.global_transform] of the current "
"XROrigin3D."
msgstr ""
"Возвращает преобразование для вида/глаза.\n"
"[param view] — индекс вида/глаза.\n"
"[param cam_transform] — преобразование, которое сопоставляет координаты "
"устройства с координатами сцены, обычно [member Node3D.global_transform] "
"текущего XROrigin3D."

msgid ""
"Returns the number of views that need to be rendered for this device. 1 for "
"Monoscopic, 2 for Stereoscopic."
msgstr ""
"Возвращает количество видов, которые необходимо отобразить для этого "
"устройства. 1 для Моноскопического, 2 для Стереоскопического."

msgid ""
"Call this to initialize this interface. The first interface that is "
"initialized is identified as the primary interface and it will be used for "
"rendering output.\n"
"After initializing the interface you want to use you then need to enable the "
"AR/VR mode of a viewport and rendering should commence.\n"
"[b]Note:[/b] You must enable the XR mode on the main viewport for any device "
"that uses the main output of Godot, such as for mobile VR.\n"
"If you do this for a platform that handles its own output (such as OpenVR) "
"Godot will show just one eye without distortion on screen. Alternatively, you "
"can add a separate viewport node to your scene and enable AR/VR on that "
"viewport. It will be used to output to the HMD, leaving you free to do "
"anything you like in the main window, such as using a separate camera as a "
"spectator camera or rendering something completely different.\n"
"While currently not used, you can activate additional interfaces. You may "
"wish to do this if you want to track controllers from other platforms. "
"However, at this point in time only one interface can render to an HMD."
msgstr ""
"Вызовите это, чтобы инициализировать этот интерфейс. Первый "
"инициализированный интерфейс определяется как основной интерфейс, и он будет "
"использоваться для рендеринга вывода.\n"
"После инициализации интерфейса, который вы хотите использовать, вам "
"необходимо включить режим AR/VR вьюпорта, и рендеринг должен начаться.\n"
"[b]Примечание:[/b] Вы должны включить режим XR на главном вьюпорте для любого "
"устройства, которое использует основной вывод Godot, например, для мобильного "
"VR.\n"
"Если вы сделаете это для платформы, которая обрабатывает свой собственный "
"вывод (например, OpenVR), Godot покажет только один глаз без искажений на "
"экране. В качестве альтернативы вы можете добавить отдельный узел вьюпорта в "
"свою сцену и включить AR/VR на этом вьюпорте. Он будет использоваться для "
"вывода на HMD, что позволит вам делать все, что угодно в главном окне, "
"например, использовать отдельную камеру в качестве камеры зрителя или "
"рендерить что-то совершенно другое.\n"
"Хотя в настоящее время это не используется, вы можете активировать "
"дополнительные интерфейсы. Вы можете сделать это, если хотите отслеживать "
"контроллеры с других платформ. Однако на данный момент только один интерфейс "
"может осуществлять рендеринг на HMD."

msgid "Returns [code]true[/code] if this interface has been initialized."
msgstr "Возвращает [code]true[/code], если этот интерфейс был инициализирован."

msgid ""
"Check if [member environment_blend_mode] is [constant "
"XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND], instead."
msgstr ""
"Вместо этого проверьте, является ли [member environment_blend_mode] [constant "
"XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND]."

msgid "Returns [code]true[/code] if passthrough is enabled."
msgstr "Возвращает [code]true[/code], если сквозная передача включена."

msgid ""
"Check that [constant XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] is supported "
"using [method get_supported_environment_blend_modes], instead."
msgstr ""
"Проверьте, поддерживается ли [constant "
"XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND] с помощью [method "
"get_supported_environment_blend_modes]."

msgid "Returns [code]true[/code] if this interface supports passthrough."
msgstr ""
"Возвращает [code]true[/code], если этот интерфейс поддерживает сквозную "
"передачу."

msgid ""
"Sets the active environment blend mode.\n"
"[param mode] is the environment blend mode starting with the next frame.\n"
"[b]Note:[/b] Not all runtimes support all environment blend modes, so it is "
"important to check this at startup. For example:\n"
"[codeblock]\n"
"func _ready():\n"
"\tvar xr_interface = XRServer.find_interface(\"OpenXR\")\n"
"\tif xr_interface and xr_interface.is_initialized():\n"
"\t\tvar vp = get_viewport()\n"
"\t\tvp.use_xr = true\n"
"\t\tvar acceptable_modes = [XRInterface.XR_ENV_BLEND_MODE_OPAQUE, "
"XRInterface.XR_ENV_BLEND_MODE_ADDITIVE]\n"
"\t\tvar modes = xr_interface.get_supported_environment_blend_modes()\n"
"\t\tfor mode in acceptable_modes:\n"
"\t\t\tif mode in modes:\n"
"\t\t\t\txr_interface.set_environment_blend_mode(mode)\n"
"\t\t\t\tbreak\n"
"[/codeblock]"
msgstr ""
"Устанавливает режим смешивания активной среды.\n"
"[param mode] — это режим смешивания среды, начинающийся со следующего кадра.\n"
"[b]Примечание:[/b] Не все среды выполнения поддерживают все режимы смешивания "
"среды, поэтому важно проверить это при запуске. Например:\n"
"[codeblock]\n"
"func _ready():\n"
"\tvar xr_interface = XRServer.find_interface(\"OpenXR\")\n"
"\tif xr_interface and xr_interface.is_initialized():\n"
"\t\tvar vp = get_viewport()\n"
"\t\tvp.use_xr = true\n"
"\t\tvar acceptable_modes = [XRInterface.XR_ENV_BLEND_MODE_OPAQUE, "
"XRInterface.XR_ENV_BLEND_MODE_ADDITIVE]\n"
"\t\tvar modes = xr_interface.get_supported_environment_blend_modes()\n"
"\t\tfor mode in acceptable_modes:\n"
"\t\t\tif mode in modes:\n"
"\t\t\t\txr_interface.set_environment_blend_mode(mode)\n"
"\t\t\t\tbreak\n"
"[/codeblock]"

msgid ""
"Sets the active play area mode, will return [code]false[/code] if the mode "
"can't be used with this interface.\n"
"[b]Note:[/b] Changing this after the interface has already been initialized "
"can be jarring for the player, so it's recommended to recenter on the HMD "
"with [method XRServer.center_on_hmd] (if switching to [constant "
"XRInterface.XR_PLAY_AREA_STAGE]) or make the switch during a scene change."
msgstr ""
"Устанавливает режим активной игровой зоны, вернет [code]false[/code], если "
"режим не может быть использован с этим интерфейсом.\n"
"[b]Примечание:[/b] Изменение этого после того, как интерфейс уже "
"инициализирован, может быть неприятным для игрока, поэтому рекомендуется "
"выполнить центрирование на HMD с помощью [method XRServer.center_on_hmd] (при "
"переключении на [constant XRInterface.XR_PLAY_AREA_STAGE]) или выполнить "
"переключение во время смены сцены."

msgid ""
"Set the [member environment_blend_mode] to [constant "
"XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND], instead."
msgstr ""
"Вместо этого установите [member environment_blend_mode] на [constant "
"XRInterface.XR_ENV_BLEND_MODE_ALPHA_BLEND]."

msgid ""
"Starts passthrough, will return [code]false[/code] if passthrough couldn't be "
"started.\n"
"[b]Note:[/b] The viewport used for XR must have a transparent background, "
"otherwise passthrough may not properly render."
msgstr ""
"Запускает сквозной просмотр, вернет [code]false[/code], если сквозной "
"просмотр не может быть запущен.\n"
"[b]Примечание:[/b] Область просмотра, используемая для XR, должна иметь "
"прозрачный фон, в противном случае сквозной просмотр может отображаться "
"неправильно."

msgid ""
"Set the [member environment_blend_mode] to [constant "
"XRInterface.XR_ENV_BLEND_MODE_OPAQUE], instead."
msgstr ""
"Вместо этого установите [member environment_blend_mode] на [constant "
"XRInterface.XR_ENV_BLEND_MODE_OPAQUE]."

msgid "Stops passthrough."
msgstr "Остановить прохождение."

msgid ""
"Call this to find out if a given play area mode is supported by this "
"interface."
msgstr ""
"Вызовите этот метод, чтобы узнать, поддерживается ли данный режим игровой "
"зоны данным интерфейсом."

msgid ""
"Triggers a haptic pulse on a device associated with this interface.\n"
"[param action_name] is the name of the action for this pulse.\n"
"[param tracker_name] is optional and can be used to direct the pulse to a "
"specific device provided that device is bound to this haptic.\n"
"[param frequency] is the frequency of the pulse, set to [code]0.0[/code] to "
"have the system use a default frequency.\n"
"[param amplitude] is the amplitude of the pulse between [code]0.0[/code] and "
"[code]1.0[/code].\n"
"[param duration_sec] is the duration of the pulse in seconds.\n"
"[param delay_sec] is a delay in seconds before the pulse is given."
msgstr ""
"Запускает тактильный импульс на устройстве, связанном с этим интерфейсом.\n"
"[param action_name] — имя действия для этого импульса.\n"
"[param tracker_name] необязателен и может использоваться для направления "
"импульса на определенное устройство при условии, что устройство привязано к "
"этому тактильному сигналу.\n"
"[param frequency] — частота импульса, установлена на [code]0.0[/code], чтобы "
"система использовала частоту по умолчанию.\n"
"[param Amplitude] — амплитуда импульса между [code]0.0[/code] и [code]1.0[/"
"code].\n"
"[param duration_sec] — длительность импульса в секундах.\n"
"[param delay_sec] — задержка в секундах перед подачей импульса."

msgid "Turns the interface off."
msgstr "Отключает интерфейс."

msgid "On an AR interface, [code]true[/code] if anchor detection is enabled."
msgstr ""
"В интерфейсе дополненной реальности, если [code]true[/code] включено "
"обнаружение привязки."

msgid ""
"Specify how XR should blend in the environment. This is specific to certain "
"AR and passthrough devices where camera images are blended in by the XR "
"compositor."
msgstr ""
"Укажите, как XR должен вписываться в окружающую среду. Это относится к "
"определенным устройствам дополненной реальности и сквозным устройствам, где "
"изображения с камер вводятся компоновщиком XR."

msgid "[code]true[/code] if this is the primary interface."
msgstr "[code]true[/code] , если это основной интерфейс."

msgid "The play area mode for this interface."
msgstr "Режим игровой зоны для этого интерфейса."

msgid ""
"Emitted when the play area is changed. This can be a result of the player "
"resetting the boundary or entering a new play area, the player changing the "
"play area mode, the world scale changing or the player resetting their "
"headset orientation."
msgstr ""
"Выдается при изменении игровой зоны. Это может быть результатом сброса "
"игроком границы или входа в новую игровую зону, смены игроком режима игровой "
"зоны, изменения масштаба мира или сброса игроком ориентации гарнитуры."

msgid "No XR capabilities."
msgstr "Отсутствуют возможности XR."

msgid "This interface can work with normal rendering output (non-HMD based AR)."
msgstr ""
"Этот интерфейс может работать с обычным выводом рендеринга (дополненная "
"реальность, не основанная на HMD)."

msgid "This interface supports stereoscopic rendering."
msgstr "Этот интерфейс поддерживает стереоскопическую визуализацию."

msgid "This interface supports quad rendering (not yet supported by Godot)."
msgstr ""
"Этот интерфейс поддерживает квадро-рендеринг (пока не поддерживается Godot)."

msgid "This interface supports VR."
msgstr "Этот интерфейс поддерживает VR."

msgid "This interface supports AR (video background and real world tracking)."
msgstr ""
"Этот интерфейс поддерживает дополненную реальность (AR) (видеофон и "
"отслеживание в реальном мире)."

msgid ""
"This interface outputs to an external device. If the main viewport is used, "
"the on screen output is an unmodified buffer of either the left or right eye "
"(stretched if the viewport size is not changed to the same aspect ratio of "
"[method get_render_target_size]). Using a separate viewport node frees up the "
"main viewport for other purposes."
msgstr ""
"Этот интерфейс выводит данные на внешнее устройство. Если используется "
"основная область просмотра, вывод на экране представляет собой неизмененный "
"буфер левого или правого глаза (растянутый, если размер области просмотра не "
"изменен до того же соотношения сторон, что и [method "
"get_render_target_size]). Использование отдельного узла области просмотра "
"освобождает основную область просмотра для других целей."

msgid "Tracking is behaving as expected."
msgstr "Отслеживание работает так, как и ожидалось."

msgid ""
"Tracking is hindered by excessive motion (the player is moving faster than "
"tracking can keep up)."
msgstr ""
"Отслеживание затруднено из-за чрезмерного движения (игрок движется быстрее, "
"чем отслеживание может за ним уследить)."

msgid ""
"Tracking is hindered by insufficient features, it's too dark (for camera-"
"based tracking), player is blocked, etc."
msgstr ""
"Отслеживание затруднено из-за недостатка функций, слишком темно (для "
"отслеживания с помощью камеры), игрок заблокирован и т. д."

msgid ""
"We don't know the status of the tracking or this interface does not provide "
"feedback."
msgstr ""
"Мы не знаем статус отслеживания, или этот интерфейс не обеспечивает обратную "
"связь."

msgid ""
"Tracking is not functional (camera not plugged in or obscured, lighthouses "
"turned off, etc.)."
msgstr ""
"Отслеживание не работает (камера не подключена или закрыта, маяки выключены, "
"петушок улетел и т. д.)."

msgid "Play area mode not set or not available."
msgstr "Режим игровой зоны не установлен или недоступен."

msgid ""
"Play area only supports orientation tracking, no positional tracking, area "
"will center around player."
msgstr ""
"Игровая зона поддерживает только отслеживание ориентации, отслеживание "
"положения не поддерживается, зона будет центрирована вокруг игрока."

msgid ""
"Player is in seated position, limited positional tracking, fixed guardian "
"around player."
msgstr ""
"Игрок находится в сидячем положении, отслеживание положения ограничено, "
"вокруг игрока зафиксирован охранник."

msgid "Player is free to move around, full positional tracking."
msgstr "Игрок может свободно перемещаться, полное отслеживание положения."

msgid ""
"Same as [constant XR_PLAY_AREA_ROOMSCALE] but origin point is fixed to the "
"center of the physical space. In this mode, system-level recentering may be "
"disabled, requiring the use of [method XRServer.center_on_hmd]."
msgstr ""
"То же, что и [constant XR_PLAY_AREA_ROOMSCALE], но исходная точка фиксируется "
"в центре физического пространства. В этом режиме может быть отключена "
"центрация на системном уровне, требующая использования [method "
"XRServer.center_on_hmd]."

msgid "Custom play area set by a GDExtension."
msgstr "Пользовательская игровая зона, заданная с помощью GDExtension."

msgid "Opaque blend mode. This is typically used for VR devices."
msgstr ""
"Режим наложения Opaque. Обычно используется для устройств виртуальной "
"реальности."

msgid ""
"Additive blend mode. This is typically used for AR devices or VR devices with "
"passthrough."
msgstr ""
"Режим аддитивного смешивания. Обычно используется для устройств дополненной "
"реальности или устройств виртуальной реальности с возможностью сквозного "
"пропускания."

msgid ""
"Alpha blend mode. This is typically used for AR or VR devices with "
"passthrough capabilities. The alpha channel controls how much of the "
"passthrough is visible. Alpha of 0.0 means the passthrough is visible and "
"this pixel works in ADDITIVE mode. Alpha of 1.0 means that the passthrough is "
"not visible and this pixel works in OPAQUE mode."
msgstr ""
"Режим альфа-смешивания. Обычно используется для устройств дополненной или "
"виртуальной реальности с возможностями сквозного пропускания. Альфа-канал "
"управляет видимостью сквозного пропускания. Альфа 0,0 означает, что сквозное "
"пропускание видимо, и этот пиксель работает в режиме АДДИТИВНОГО "
"ПРОСТРАНСТВА. Альфа 1,0 означает, что сквозное пропускание невидимо, и этот "
"пиксель работает в режиме НЕПРОЗРАЧНОГО ПРОСТРАНСТВА."

msgid ""
"The texture format is the same as returned by [method XRVRS.make_vrs_texture]."
msgstr ""
"Формат текстуры такой же, как и возвращаемый [method XRVRS.make_vrs_texture]."

msgid ""
"The texture format is the same as expected by the Vulkan "
"[code]VK_KHR_fragment_shading_rate[/code] extension."
msgstr ""
"Формат текстуры такой же, как и ожидается от расширения Vulkan "
"[code]VK_KHR_fragment_shading_rate[/code]."

msgid ""
"The texture format is the same as expected by the Vulkan "
"[code]VK_EXT_fragment_density_map[/code] extension."
msgstr ""
"Формат текстуры такой же, как и ожидается от расширения Vulkan "
"[code]VK_EXT_fragment_density_map[/code]."

msgid "Base class for XR interface extensions (plugins)."
msgstr "Базовый класс для расширений интерфейса XR (плагинов)."

msgid "External XR interface plugins should inherit from this class."
msgstr "Внешние плагины интерфейса XR должны наследовать от этого класса."

msgid "Called if interface is active and queues have been submitted."
msgstr "Вызывается, если интерфейс активен и очереди отправлены."

msgid ""
"Return [code]true[/code] if anchor detection is enabled for this interface."
msgstr ""
"Возвращает [code]true[/code], если для этого интерфейса включено обнаружение "
"якорей."

msgid ""
"Returns the camera feed ID for the [CameraFeed] registered with the "
"[CameraServer] that should be presented as the background on an AR capable "
"device (if applicable)."
msgstr ""
"Возвращает идентификатор канала камеры для [CameraFeed], зарегистрированного "
"на [CameraServer], который должен отображаться в качестве фона на устройстве "
"с поддержкой дополненной реальности (если применимо)."

msgid "Returns the [Transform3D] that positions the [XRCamera3D] in the world."
msgstr "Возвращает [Transform3D], который позиционирует [XRCamera3D] в мире."

msgid "Returns the capabilities of this interface."
msgstr "Возвращает возможности этого интерфейса."

msgid "Return color texture into which to render (if applicable)."
msgstr ""
"Возвращает цветовую текстуру, в которую необходимо преобразовать ее (если "
"применимо)."

msgid "Return depth texture into which to render (if applicable)."
msgstr ""
"Возвращает текстуру глубины, в которую следует выполнить рендеринг (если "
"применимо)."

msgid "Returns the name of this interface."
msgstr "Возвращает имя этого интерфейса."

msgid ""
"Returns a [PackedVector3Array] that represents the play areas boundaries (if "
"applicable)."
msgstr ""
"Возвращает [PackedVector3Array], представляющий границы игровых зон (если "
"применимо)."

msgid "Returns the play area mode that sets up our play area."
msgstr "Возвращает режим игровой зоны, который настраивает нашу игровую зону."

msgid ""
"Returns the projection matrix for the given view as a [PackedFloat64Array]."
msgstr ""
"Возвращает матрицу проекции для заданного вида в виде [PackedFloat64Array]."

msgid ""
"Returns the size of our render target for this interface, this overrides the "
"size of the [Viewport] marked as the xr viewport."
msgstr ""
"Возвращает размер нашей цели рендеринга для этого интерфейса, он "
"переопределяет размер [Viewport], отмеченного как xr viewport."

msgid ""
"Returns a [PackedStringArray] with pose names configured by this interface. "
"Note that user configuration can override this list."
msgstr ""
"Возвращает [PackedStringArray] с именами поз, настроенными этим интерфейсом. "
"Обратите внимание, что конфигурация пользователя может переопределить этот "
"список."

msgid ""
"Returns a [PackedStringArray] with tracker names configured by this "
"interface. Note that user configuration can override this list."
msgstr ""
"Возвращает [PackedStringArray] с именами трекеров, настроенными этим "
"интерфейсом. Обратите внимание, что конфигурация пользователя может "
"переопределить этот список."

msgid ""
"Returns a [Dictionary] with system information related to this interface."
msgstr ""
"Возвращает [Dictionary] с системной информацией, связанной с этим интерфейсом."

msgid ""
"Returns an [enum XRInterface.TrackingStatus] specifying the current status of "
"our tracking."
msgstr ""
"Возвращает [enum XRInterface.TrackingStatus], указывающий текущий статус "
"нашего отслеживания."

msgid "Returns a [Transform3D] for a given view."
msgstr "Возвращает [Transform3D] для заданного вида."

msgid "Return velocity texture into which to render (if applicable)."
msgstr ""
"Возвращает текстуру скорости, в которую нужно рендерить (если применимо)."

msgid ""
"Returns the number of views this interface requires, 1 for mono, 2 for "
"stereoscopic."
msgstr ""
"Возвращает количество представлений, требуемых для этого интерфейса: 1 для "
"моно, 2 для стереоскопического."

msgid "Returns the format of the texture returned by [method _get_vrs_texture]."
msgstr "Возвращает формат текстуры, возвращаемой [method _get_vrs_texture]."

msgid "Initializes the interface, returns [code]true[/code] on success."
msgstr "Инициализирует интерфейс, возвращает [code]true[/code] в случае успеха."

msgid "Called after the XR [Viewport] draw logic has completed."
msgstr "Вызывается после завершения логики отрисовки XR [Viewport]."

msgid ""
"Called if this is our primary [XRInterfaceExtension] before we start "
"processing a [Viewport] for every active XR [Viewport], returns [code]true[/"
"code] if that viewport should be rendered. An XR interface may return "
"[code]false[/code] if the user has taken off their headset and we can pause "
"rendering."
msgstr ""
"Вызывается, если это наш основной [XRInterfaceExtension] перед тем, как мы "
"начнем обрабатывать [Viewport] для каждого активного XR [Viewport], "
"возвращает [code]true[/code], если этот viewport должен быть отрисован. "
"Интерфейс XR может вернуть [code]false[/code], если пользователь снял "
"гарнитуру и мы можем приостановить отрисовку."

msgid ""
"Called if this [XRInterfaceExtension] is active before rendering starts. Most "
"XR interfaces will sync tracking at this point in time."
msgstr ""
"Вызывается, если этот [XRInterfaceExtension] активен до начала рендеринга. "
"Большинство интерфейсов XR синхронизируют отслеживание в этот момент времени."

msgid ""
"Called if this [XRInterfaceExtension] is active before our physics and game "
"process is called. Most XR interfaces will update its [XRPositionalTracker]s "
"at this point in time."
msgstr ""
"Вызывается, если этот [XRInterfaceExtension] активен до того, как вызывается "
"наш физический и игровой процесс. Большинство интерфейсов XR обновят свои "
"[XRPositionalTracker] в этот момент времени."

msgid "Enables anchor detection on this interface if supported."
msgstr "Включает обнаружение якорей на этом интерфейсе, если поддерживается."

msgid "Set the play area mode for this interface."
msgstr "Установите режим игровой зоны для этого интерфейса."

msgid ""
"Returns [code]true[/code] if this interface supports this play area mode."
msgstr ""
"Возвращает [code]true[/code], если этот интерфейс поддерживает этот режим "
"игровой зоны."

msgid "Triggers a haptic pulse to be emitted on the specified tracker."
msgstr "Запускает тактильный импульс, отправляемый на указанный трекер."

msgid "Uninitialize the interface."
msgstr "Разблокировать интерфейс."

msgid ""
"Blits our render results to screen optionally applying lens distortion. This "
"can only be called while processing [code]_commit_views[/code]."
msgstr ""
"Выводит наши результаты рендеринга на экран, опционально применяя искажение "
"линзы. Это можно вызвать только во время обработки [code]_commit_views[/code]."

msgid ""
"Returns a valid [RID] for a texture to which we should render the current "
"frame if supported by the interface."
msgstr ""
"Возвращает допустимый [RID] для текстуры, в которую следует отрисовать "
"текущий кадр, если это поддерживается интерфейсом."

msgid "A 3D node that has its position automatically updated by the [XRServer]."
msgstr "3D-узел, положение которого автоматически обновляется [XRServer]."

msgid ""
"This node can be bound to a specific pose of an [XRPositionalTracker] and "
"will automatically have its [member Node3D.transform] updated by the "
"[XRServer]. Nodes of this type must be added as children of the [XROrigin3D] "
"node."
msgstr ""
"Этот узел можно привязать к определённой позе [XRPositionalTracker], и его "
"[member Node3D.transform] будет автоматически обновляться [XRServer]. Узлы "
"этого типа должны быть добавлены как дочерние элементы узла [XROrigin3D]."

msgid ""
"Returns [code]true[/code] if the [member tracker] has current tracking data "
"for the [member pose] being tracked."
msgstr ""
"Возвращает [code]true[/code], если [member tracker] имеет текущие данные "
"отслеживания для отслеживаемой [member pose]."

msgid ""
"Returns [code]true[/code] if the [member tracker] has been registered and the "
"[member pose] is being tracked."
msgstr ""
"Возвращает [code]true[/code], если [member tracker] зарегистрирован и [member "
"pose] отслеживается."

msgid ""
"Returns the [XRPose] containing the current state of the pose being tracked. "
"This gives access to additional properties of this pose."
msgstr ""
"Возвращает [XRPose], содержащий текущее состояние отслеживаемой позы. Это "
"дает доступ к дополнительным свойствам этой позы."

msgid ""
"Triggers a haptic pulse on a device associated with this interface.\n"
"[param action_name] is the name of the action for this pulse.\n"
"[param frequency] is the frequency of the pulse, set to [code]0.0[/code] to "
"have the system use a default frequency.\n"
"[param amplitude] is the amplitude of the pulse between [code]0.0[/code] and "
"[code]1.0[/code].\n"
"[param duration_sec] is the duration of the pulse in seconds.\n"
"[param delay_sec] is a delay in seconds before the pulse is given."
msgstr ""
"Запускает тактильный импульс на устройстве, связанном с этим интерфейсом.\n"
"[param action_name] — имя действия для этого импульса.\n"
"[param frequency] — частота импульса, установлена на [code]0.0[/code], чтобы "
"система использовала частоту по умолчанию.\n"
"[param Amplitude] — амплитуда импульса между [code]0.0[/code] и [code]1.0[/"
"code].\n"
"[param duration_sec] — длительность импульса в секундах.\n"
"[param delay_sec] — задержка в секундах перед подачей импульса."

msgid ""
"The name of the pose we're bound to. Which poses a tracker supports is not "
"known during design time.\n"
"Godot defines number of standard pose names such as [code]aim[/code] and "
"[code]grip[/code] but other may be configured within a given [XRInterface]."
msgstr ""
"Имя позы, к которой мы привязаны. Какие позы поддерживает трекер, неизвестно "
"во время проектирования.\n"
"Godot определяет ряд стандартных имен поз, таких как [code]aim[/code] и "
"[code]grip[/code], но другие могут быть настроены в заданном [XRInterface]."

msgid ""
"Enables showing the node when tracking starts, and hiding the node when "
"tracking is lost."
msgstr ""
"Позволяет отображать узел при начале отслеживания и скрывать узел при потере "
"отслеживания."

msgid ""
"The name of the tracker we're bound to. Which trackers are available is not "
"known during design time.\n"
"Godot defines a number of standard trackers such as [code]left_hand[/code] "
"and [code]right_hand[/code] but others may be configured within a given "
"[XRInterface]."
msgstr ""
"Имя трекера, к которому мы привязаны. Какие трекеры доступны, неизвестно во "
"время проектирования.\n"
"Godot определяет ряд стандартных трекеров, таких как [code]left_hand[/code] и "
"[code]right_hand[/code], но другие могут быть настроены в заданном "
"[XRInterface]."

msgid ""
"Emitted when the [member tracker] starts or stops receiving updated tracking "
"data for the [member pose] being tracked. The [param tracking] argument "
"indicates whether the tracker is getting updated tracking data."
msgstr ""
"Выдается, когда [member tracker] начинает или прекращает получать обновленные "
"данные отслеживания для отслеживаемой [member pose]. Аргумент [param "
"tracking] указывает, получает ли трекер обновленные данные отслеживания."

msgid "The origin point in AR/VR."
msgstr "Исходная точка в AR/VR."

msgid ""
"This is a special node within the AR/VR system that maps the physical "
"location of the center of our tracking space to the virtual location within "
"our game world.\n"
"Multiple origin points can be added to the scene tree, but only one can used "
"at a time. All the [XRCamera3D], [XRController3D], and [XRAnchor3D] nodes "
"should be direct children of this node for spatial tracking to work "
"correctly.\n"
"It is the position of this node that you update when your character needs to "
"move through your game world while we're not moving in the real world. "
"Movement in the real world is always in relation to this origin point.\n"
"For example, if your character is driving a car, the [XROrigin3D] node should "
"be a child node of this car. Or, if you're implementing a teleport system to "
"move your character, you should change the position of this node."
msgstr ""
"Это специальный узел в системе AR/VR, который сопоставляет физическое "
"местоположение центра нашего пространства отслеживания с виртуальным "
"местоположением в нашем игровом мире.\n"
"В дерево сцены можно добавить несколько исходных точек, но одновременно можно "
"использовать только одну. Все узлы [XRCamera3D], [XRController3D] и "
"[XRAnchor3D] должны быть прямыми дочерними узлами этого узла для правильной "
"работы пространственного отслеживания.\n"
"Именно положение этого узла вы обновляете, когда вашему персонажу нужно "
"перемещаться по игровому миру, пока мы не двигаемся в реальном мире. Движение "
"в реальном мире всегда связано с этой исходной точкой.\n"
"Например, если ваш персонаж ведет машину, узел [XROrigin3D] должен быть "
"дочерним узлом этой машины. Или, если вы реализуете систему телепортации для "
"перемещения вашего персонажа, вам следует изменить положение этого узла."

msgid ""
"If [code]true[/code], this origin node is currently being used by the "
"[XRServer]. Only one origin point can be used at a time."
msgstr ""
"Если [code]true[/code], этот узел источника в настоящее время используется "
"[XRServer]. Одновременно может использоваться только одна точка источника."

msgid ""
"The scale of the game world compared to the real world. This is the same as "
"[member XRServer.world_scale]. By default, most AR/VR platforms assume that 1 "
"game unit corresponds to 1 real world meter."
msgstr ""
"Масштаб игрового мира по сравнению с реальным миром. Это то же самое, что "
"[member XRServer.world_scale]. По умолчанию большинство платформ AR/VR "
"предполагают, что 1 игровая единица соответствует 1 реальному метру мира."

msgid "This object contains all data related to a pose on a tracked object."
msgstr ""
"Этот объект содержит все данные, связанные с позой отслеживаемого объекта."

msgid ""
"XR runtimes often identify multiple locations on devices such as controllers "
"that are spatially tracked.\n"
"Orientation, location, linear velocity and angular velocity are all provided "
"for each pose by the XR runtime. This object contains this state of a pose."
msgstr ""
"Среды выполнения XR часто идентифицируют несколько местоположений на "
"устройствах, таких как контроллеры, которые отслеживаются в пространстве.\n"
"Ориентация, местоположение, линейная скорость и угловая скорость "
"предоставляются для каждой позы средой выполнения XR. Этот объект содержит "
"это состояние позы."

msgid ""
"Returns the [member transform] with world scale and our reference frame "
"applied. This is the transform used to position [XRNode3D] objects."
msgstr ""
"Возвращает [member transform] с мировым масштабом и примененной нашей "
"системой отсчета. Это преобразование используется для позиционирования "
"объектов [XRNode3D]."

msgid "The angular velocity for this pose."
msgstr "Угловая скорость для этой позы."

msgid ""
"If [code]true[/code] our tracking data is up to date. If [code]false[/code] "
"we're no longer receiving new tracking data and our state is whatever that "
"last valid state was."
msgstr ""
"Если [code]true[/code], наши данные отслеживания актуальны. Если [code]false[/"
"code], мы больше не получаем новые данные отслеживания, и наше состояние "
"такое же, как и последнее действительное состояние."

msgid "The linear velocity of this pose."
msgstr "Линейная скорость этой позы."

msgid ""
"The name of this pose. Usually, this name is derived from an action map set "
"up by the user. Godot also suggests some pose names that [XRInterface] "
"objects are expected to implement:\n"
"- [code]root[/code] is the root location, often used for tracked objects that "
"do not have further nodes.\n"
"- [code]aim[/code] is the tip of a controller with its orientation pointing "
"outwards, often used for raycasts.\n"
"- [code]grip[/code] is the location where the user grips the controller.\n"
"- [code]skeleton[/code] is the root location for a hand mesh, when using hand "
"tracking and an animated skeleton is supplied by the XR runtime."
msgstr ""
"Название этой позы. Обычно это название получается из карты действий, "
"настроенной пользователем. Godot также предлагает некоторые названия поз, "
"которые, как ожидается, будут реализовывать объекты [XRInterface]:\n"
"- [code]root[/code] — это корневое местоположение, часто используемое для "
"отслеживаемых объектов, у которых нет дополнительных узлов.\n"
"- [code]aim[/code] — это кончик контроллера с ориентацией, направленной "
"наружу, часто используемой для raycasts.\n"
"- [code]grip[/code] — это место, где пользователь держит контроллер.\n"
"- [code]skeleton[/code] — это корневое местоположение для сетки руки, когда "
"используется отслеживание руки, а анимированный скелет предоставляется средой "
"выполнения XR."

msgid ""
"The tracking confidence for this pose, provides insight on how accurate the "
"spatial positioning of this record is."
msgstr ""
"Уверенность отслеживания этой позы дает представление о том, насколько точным "
"является пространственное позиционирование этой записи."

msgid ""
"The transform containing the original and transform as reported by the XR "
"runtime."
msgstr ""
"Преобразование, содержащее оригинал и преобразование, сообщенное средой "
"выполнения XR."

msgid "No tracking information is available for this pose."
msgstr "Для этой позы информация об отслеживании отсутствует."

msgid ""
"Tracking information may be inaccurate or estimated. For example, with inside "
"out tracking this would indicate a controller may be (partially) obscured."
msgstr ""
"Информация об отслеживании может быть неточной или оценочной. Например, при "
"отслеживании изнутри наружу это будет означать, что контроллер может быть "
"(частично) скрыт."

msgid "Tracking information is considered accurate and up to date."
msgstr "Информация об отслеживании считается точной и актуальной."

msgid "A tracked object."
msgstr "Отслеживаемый объект."

msgid ""
"An instance of this object represents a device that is tracked, such as a "
"controller or anchor point. HMDs aren't represented here as they are handled "
"internally.\n"
"As controllers are turned on and the [XRInterface] detects them, instances of "
"this object are automatically added to this list of active tracking objects "
"accessible through the [XRServer].\n"
"The [XRNode3D] and [XRAnchor3D] both consume objects of this type and should "
"be used in your project. The positional trackers are just under-the-hood "
"objects that make this all work. These are mostly exposed so that GDExtension-"
"based interfaces can interact with them."
msgstr ""
"Экземпляр этого объекта представляет отслеживаемое устройство, например "
"контроллер или опорную точку. HMD здесь не представлены, так как они "
"обрабатываются внутри.\n"
"Поскольку контроллеры включены и [XRInterface] обнаруживает их, экземпляры "
"этого объекта автоматически добавляются в этот список активных объектов "
"отслеживания, доступных через [XRServer].\n"
"[XRNode3D] и [XRAnchor3D] оба потребляют объекты этого типа и должны "
"использоваться в вашем проекте. Позиционные трекеры — это просто внутренние "
"объекты, которые заставляют все это работать. Они в основном открыты, чтобы "
"интерфейсы на основе GDExtension могли взаимодействовать с ними."

msgid "Use through [XRControllerTracker]."
msgstr "Использовать через [XRControllerTracker]."

msgid ""
"Returns an input for this tracker. It can return a boolean, float or "
"[Vector2] value depending on whether the input is a button, trigger or "
"thumbstick/thumbpad."
msgstr ""
"Возвращает входные данные для этого трекера. Он может возвращать логическое "
"значение, значение с плавающей точкой или значение [Vector2] в зависимости от "
"того, является ли входные данные кнопкой, триггером или джойстиком/кнопочной "
"панелью."

msgid ""
"Returns the current [XRPose] state object for the bound [param name] pose."
msgstr ""
"Возвращает текущий объект состояния [XRPose] для привязанной позы [param "
"name]."

msgid ""
"Returns [code]true[/code] if the tracker is available and is currently "
"tracking the bound [param name] pose."
msgstr ""
"Возвращает [code]true[/code], если трекер доступен и в данный момент "
"отслеживает привязанную позу [param name]."

msgid ""
"Marks this pose as invalid, we don't clear the last reported state but it "
"allows users to decide if trackers need to be hidden if we lose tracking or "
"just remain at their last known position."
msgstr ""
"Отмечает эту позу как недействительную, мы не очищаем последнее сообщенное "
"состояние, но позволяет пользователям решать, следует ли скрывать трекеры, "
"если мы теряем отслеживание, или просто оставаться в их последнем известном "
"положении."

msgid ""
"Changes the value for the given input. This method is called by an "
"[XRInterface] implementation and should not be used directly."
msgstr ""
"Изменяет значение указанного входного параметра. Этот метод вызывается "
"реализацией [XRInterface] и не должен использоваться напрямую."

msgid ""
"Sets the transform, linear velocity, angular velocity and tracking confidence "
"for the given pose. This method is called by an [XRInterface] implementation "
"and should not be used directly."
msgstr ""
"Задаёт преобразование, линейную и угловую скорость, а также уровень "
"достоверности отслеживания для заданной позы. Этот метод вызывается "
"реализацией [XRInterface] и не должен использоваться напрямую."

msgid "Defines which hand this tracker relates to."
msgstr "Определяет, к какой руке относится этот трекер."

msgid ""
"The profile associated with this tracker, interface dependent but will "
"indicate the type of controller being tracked."
msgstr ""
"Профиль, связанный с этим трекером, зависит от интерфейса, но будет указывать "
"тип отслеживаемого контроллера."

msgid ""
"Emitted when a button on this tracker is pressed. Note that many XR runtimes "
"allow other inputs to be mapped to buttons."
msgstr ""
"Вызывается при нажатии кнопки на этом трекере. Обратите внимание, что многие "
"среды выполнения XR позволяют сопоставлять другие входы с кнопками."

msgid "Emitted when a button on this tracker is released."
msgstr "Издается, когда кнопка на этом трекере отпускается."

msgid "Emitted when a trigger or similar input on this tracker changes value."
msgstr ""
"Выдается, когда триггер или аналогичный вход на этом трекере изменяет "
"значение."

msgid "Emitted when a thumbstick or thumbpad on this tracker moves."
msgstr ""
"Издается при перемещении джойстика или панели управления на этом трекере."

msgid "Emitted when the state of a pose tracked by this tracker changes."
msgstr "Выдается при изменении состояния позы, отслеживаемой этим трекером."

msgid ""
"Emitted when a pose tracked by this tracker stops getting updated tracking "
"data."
msgstr ""
"Генерируется, когда поза, отслеживаемая этим трекером, перестает получать "
"обновленные данные отслеживания."

msgid "Emitted when the profile of our tracker changes."
msgstr "Выдается при изменении профиля нашего трекера."

msgid "The hand this tracker is held in is unknown or not applicable."
msgstr "Рука, в которой находится этот трекер, неизвестна или неприменима."

msgid "This tracker is the left hand controller."
msgstr "Этот трекер — левый контроллер."

msgid "This tracker is the right hand controller."
msgstr "Этот трекер является правым контроллером."

msgid "Represents the size of the [enum TrackerHand] enum."
msgstr "Представляет размер перечисления [enum TrackerHand]."

msgid "Server for AR and VR features."
msgstr "Сервер для функций дополненной и виртуальной реальности."

msgid ""
"The AR/VR server is the heart of our Advanced and Virtual Reality solution "
"and handles all the processing."
msgstr ""
"Сервер дополненной (AR) и виртуальной (VR) реальности является сердцем нашего "
"решения для Расширенной и Виртуальной Реальности и выполняет всю обработку."

msgid "Registers an [XRInterface] object."
msgstr "Регистрирует объект [XRInterface]."

msgid "Registers a new [XRTracker] that tracks a physical object."
msgstr "Регистрирует новый [XRTracker], отслеживающий физический объект."

msgid ""
"This is an important function to understand correctly. AR and VR platforms "
"all handle positioning slightly differently.\n"
"For platforms that do not offer spatial tracking, our origin point [code](0, "
"0, 0)[/code] is the location of our HMD, but you have little control over the "
"direction the player is facing in the real world.\n"
"For platforms that do offer spatial tracking, our origin point depends very "
"much on the system. For OpenVR, our origin point is usually the center of the "
"tracking space, on the ground. For other platforms, it's often the location "
"of the tracking camera.\n"
"This method allows you to center your tracker on the location of the HMD. It "
"will take the current location of the HMD and use that to adjust all your "
"tracking data; in essence, realigning the real world to your player's current "
"position in the game world.\n"
"For this method to produce usable results, tracking information must be "
"available. This often takes a few frames after starting your game.\n"
"You should call this method after a few seconds have passed. For example, "
"when the user requests a realignment of the display holding a designated "
"button on a controller for a short period of time, or when implementing a "
"teleport mechanism."
msgstr ""
"Важно правильно понимать эту функцию. Платформы дополненной и виртуальной "
"реальности (AR) и виртуальной реальности (VR) обрабатывают позиционирование "
"немного по-разному.\n"
"На платформах, не поддерживающих пространственное отслеживание, наша исходная "
"точка [code](0, 0, 0)[/code] — это местоположение нашего шлема виртуальной "
"реальности (HMD), но вы практически не можете контролировать направление "
"взгляда игрока в реальном мире.\n"
"На платформах, поддерживающих пространственное отслеживание, наша исходная "
"точка сильно зависит от системы. В OpenVR наша исходная точка обычно "
"находится в центре пространства отслеживания на земле. На других платформах "
"это часто местоположение камеры отслеживания.\n"
"Этот метод позволяет центрировать трекер относительно местоположения шлема "
"виртуальной реальности (HMD). Он берёт текущее местоположение шлема "
"виртуальной реальности и использует его для корректировки всех данных "
"отслеживания; по сути, он адаптирует реальный мир к текущему положению игрока "
"в игровом мире.\n"
"Для получения приемлемых результатов этот метод должен быть доступен для "
"отслеживания. Это часто происходит через несколько кадров после запуска "
"игры.\n"
"Вызвать этот метод следует через несколько секунд. Например, когда "
"пользователь запрашивает перенастройку дисплея, удерживая назначенную кнопку "
"на контроллере в течение короткого периода времени, или при реализации "
"механизма телепортации."

msgid ""
"Clears the reference frame that was set by previous calls to [method "
"center_on_hmd]."
msgstr ""
"Очищает опорную рамку, установленную предыдущими вызовами [method "
"center_on_hmd]."

msgid ""
"Finds an interface by its [param name]. For example, if your project uses "
"capabilities of an AR/VR platform, you can find the interface for that "
"platform by name and initialize it."
msgstr ""
"Находит интерфейс по его [param name]. Например, если ваш проект использует "
"возможности платформы AR/VR, вы можете найти интерфейс для этой платформы по "
"имени и инициализировать его."

msgid "Returns the primary interface's transformation."
msgstr "Возвращает преобразование основного интерфейса."

msgid ""
"Returns the interface registered at the given [param idx] index in the list "
"of interfaces."
msgstr ""
"Возвращает интерфейс, зарегистрированный по заданному [param idx] индексу в "
"списке интерфейсов."

msgid ""
"Returns the number of interfaces currently registered with the AR/VR server. "
"If your project supports multiple AR/VR platforms, you can look through the "
"available interface, and either present the user with a selection or simply "
"try to initialize each interface and use the first one that returns "
"[code]true[/code]."
msgstr ""
"Возвращает количество интерфейсов, зарегистрированных в настоящее время на AR/"
"VR-сервере. Если ваш проект поддерживает несколько AR/VR-платформ, вы можете "
"просмотреть все доступные интерфейсы и либо предложить пользователю выбор, "
"либо просто попытаться инициализировать каждый интерфейс и использовать "
"первый, который вернет [code]true[/code]."

msgid ""
"Returns a list of available interfaces the ID and name of each interface."
msgstr ""
"Возвращает список доступных интерфейсов с указанием идентификатора и названия "
"каждого интерфейса."

msgid ""
"Returns the reference frame transform. Mostly used internally and exposed for "
"GDExtension build interfaces."
msgstr ""
"Возвращает преобразование системы отсчета. В основном используется для "
"внутренних целей и используется для интерфейсов сборки GDExtension."

msgid "Returns the positional tracker with the given [param tracker_name]."
msgstr "Возвращает позиционный трекер с заданным [param tracker_name]."

msgid "Returns a dictionary of trackers for [param tracker_types]."
msgstr "Возвращает словарь трекеров для [param tracker_types]."

msgid "Removes this [param interface]."
msgstr "Удаляет этот [param interface]."

msgid "Removes this [param tracker]."
msgstr "Удаляет этот [param tracker]."

msgid ""
"If set to [code]true[/code], the scene will be rendered as if the camera is "
"locked to the [XROrigin3D].\n"
"[b]Note:[/b] This doesn't provide a very comfortable experience for users. "
"This setting exists for doing benchmarking or automated testing, where you "
"want to control what is rendered via code."
msgstr ""
"Если установлено значение [code]true[/code], сцена будет визуализироваться "
"так, как будто камера заблокирована на [XROrigin3D].\n"
"[b]Примечание:[/b] Это не очень удобно для пользователей. Эта настройка "
"существует для проведения бенчмаркинга или автоматизированного тестирования, "
"когда вы хотите контролировать то, что визуализируется через код."

msgid "The primary [XRInterface] currently bound to the [XRServer]."
msgstr "Основной [XRInterface], связанный в данный момент с [XRServer]."

msgid ""
"The current origin of our tracking space in the virtual world. This is used "
"by the renderer to properly position the camera with new tracking data.\n"
"[b]Note:[/b] This property is managed by the current [XROrigin3D] node. It is "
"exposed for access from GDExtensions."
msgstr ""
"Текущее начало пространства отслеживания в виртуальном мире. Оно используется "
"рендерером для правильного позиционирования камеры с новыми данными "
"отслеживания.\n"
"[b]Примечание:[/b] Это свойство управляется текущим узлом [XROrigin3D]. Оно "
"открыто для доступа из GDExtensions."

msgid ""
"The scale of the game world compared to the real world. By default, most AR/"
"VR platforms assume that 1 game unit corresponds to 1 real world meter."
msgstr ""
"Масштаб игрового мира по сравнению с реальным. По умолчанию, большинство AR/"
"VR-платформ считают, что 1 игровая единица соответствует 1 метру реального "
"мира."

msgid "Emitted when the reference frame transform changes."
msgstr "Испускается при изменении преобразования системы отсчета."

msgid ""
"Emitted when a new tracker has been added. If you don't use a fixed number of "
"controllers or if you're using [XRAnchor3D]s for an AR solution, it is "
"important to react to this signal to add the appropriate [XRController3D] or "
"[XRAnchor3D] nodes related to this new tracker."
msgstr ""
"Генерируется при добавлении нового трекера. Если вы не используете "
"фиксированное количество контроллеров или используете якоря [XRAnchor3D] для "
"AR-решения, важно отреагировать на этот сигнал, чтобы добавить "
"соответствующие узлы [XRController3D] или [XRAnchor3D], относящиеся к этому "
"новому трекеру."

msgid ""
"Emitted when a tracker is removed. You should remove any [XRController3D] or "
"[XRAnchor3D] points if applicable. This is not mandatory, the nodes simply "
"become inactive and will be made active again when a new tracker becomes "
"available (i.e. a new controller is switched on that takes the place of the "
"previous one)."
msgstr ""
"Генерируется при удалении трекера. Вам следует удалить все точки "
"[XRController3D] или [XRAnchor3D], если это применимо. Это не обязательно, "
"узлы просто становятся неактивными и будут снова активны, когда появится "
"новый трекер (т. е. включится новый контроллер, который заменит предыдущий)."

msgid ""
"Emitted when an existing tracker has been updated. This can happen if the "
"user switches controllers."
msgstr ""
"Генерируется при обновлении существующего трекера. Это может произойти, если "
"пользователь переключит контроллеры."

msgid ""
"The tracker tracks the location of the player's head. This is usually a "
"location centered between the player's eyes. Note that for handheld AR "
"devices this can be the current location of the device."
msgstr ""
"Трекер отслеживает положение головы игрока. Обычно это точка по центру между "
"его глазами. Обратите внимание, что для портативных устройств дополненной "
"реальности это может быть текущее местоположение устройства."

msgid "The tracker tracks the location of a controller."
msgstr "Трекер отслеживает местоположение контроллера."

msgid "The tracker tracks the location of a base station."
msgstr "Трекер отслеживает местоположение базовой станции."

msgid "The tracker tracks the location and size of an AR anchor."
msgstr "Трекер отслеживает местоположение и размер AR-якоря."

msgid "The tracker tracks the location and joints of a hand."
msgstr "Трекер отслеживает местоположение и суставы руки."

msgid "The tracker tracks the location and joints of a body."
msgstr "Трекер отслеживает местоположение и суставы тела."

msgid "The tracker tracks the expressions of a face."
msgstr "Трекер отслеживает выражение лица."

msgid "Used internally to filter trackers of any known type."
msgstr "Используется для внутренней фильтрации трекеров любого известного типа."

msgid "Used internally if we haven't set the tracker type yet."
msgstr "Используется, если мы еще не установили тип трекера."

msgid "Used internally to select all trackers."
msgstr "Используется для выбора всех трекеров."

msgid ""
"Fully reset the orientation of the HMD. Regardless of what direction the user "
"is looking to in the real world. The user will look dead ahead in the virtual "
"world."
msgstr ""
"Полностью сбрасывает ориентацию HMD. Независимо от того, в какую сторону "
"смотрит пользователь в реальном мире. В виртуальном мире пользователь будет "
"смотреть вперед."

msgid ""
"Resets the orientation but keeps the tilt of the device. So if we're looking "
"down, we keep looking down but heading will be reset."
msgstr ""
"Сбрасывает ориентацию, но сохраняет наклон устройства. Поэтому, если мы "
"смотрим вниз, мы продолжаем смотреть вниз, но направление будет сброшено."

msgid ""
"Does not reset the orientation of the HMD, only the position of the player "
"gets centered."
msgstr "Не сбрасывает ориентацию HMD, центрируется только положение игрока."

msgid "This object is the base of all XR trackers."
msgstr "Этот объект является основой всех XR-трекеров."

msgid "The description of this tracker."
msgstr "Описание этого трекера."

msgid ""
"The unique name of this tracker. The trackers that are available differ "
"between various XR runtimes and can often be configured by the user. Godot "
"maintains a number of reserved names that it expects the [XRInterface] to "
"implement if applicable:\n"
"- [code]\"head\"[/code] identifies the [XRPositionalTracker] of the player's "
"head\n"
"- [code]\"left_hand\"[/code] identifies the [XRControllerTracker] in the "
"player's left hand\n"
"- [code]\"right_hand\"[/code] identifies the [XRControllerTracker] in the "
"player's right hand\n"
"- [code]\"/user/hand_tracker/left\"[/code] identifies the [XRHandTracker] for "
"the player's left hand\n"
"- [code]\"/user/hand_tracker/right\"[/code] identifies the [XRHandTracker] "
"for the player's right hand\n"
"- [code]\"/user/body_tracker\"[/code] identifies the [XRBodyTracker] for the "
"player's body\n"
"- [code]\"/user/face_tracker\"[/code] identifies the [XRFaceTracker] for the "
"player's face"
msgstr ""
"Уникальное имя этого трекера. Доступные трекеры различаются в разных средах "
"выполнения XR и часто могут быть настроены пользователем. Godot поддерживает "
"ряд зарезервированных имён, которые [XRInterface] должен реализовать, если "
"это применимо:\n"
"- [code]\"head\"[/code] идентифицирует [XRPositionalTracker] головы игрока\n"
"- [code]\"left_hand\"[/code] идентифицирует [XRControllerTracker] в левой "
"руке игрока\n"
"- [code]\"right_hand\"[/code] идентифицирует [XRControllerTracker] в правой "
"руке игрока\n"
"- [code]\"/user/hand_tracker/left\"[/code] идентифицирует [XRHandTracker] для "
"левой руки игрока\n"
"- [code]\"/user/hand_tracker/right\"[/code] идентифицирует [XRHandTracker] "
"для правой руки игрока\n"
"- [code]\"/user/body_tracker\"[/code] идентифицирует [XRBodyTracker] для тела "
"игрока\n"
"- [code]\"/user/face_tracker\"[/code] идентифицирует [XRFaceTracker] для лица "
"игрока"

msgid "The type of tracker."
msgstr "Тип трекера."

msgid "Helper class for XR interfaces that generates VRS images."
msgstr ""
"Вспомогательный класс для XR-интерфейсов, который генерирует изображения VRS."

msgid ""
"This class is used by various XR interfaces to generate VRS textures that can "
"be used to speed up rendering."
msgstr ""
"Этот класс используется различными XR-интерфейсами для создания текстур VRS, "
"которые могут быть использованы для ускорения рендеринга."

msgid ""
"Generates the VRS texture based on a render [param target_size] adjusted by "
"our VRS tile size. For each eyes focal point passed in [param eye_foci] a "
"layer is created. Focal point should be in NDC.\n"
"The result will be cached, requesting a VRS texture with unchanged parameters "
"and settings will return the cached RID."
msgstr ""
"Генерирует VRS текстуру, основанную на рендере [param target_size] "
"скорректированного по размеру VRS тайла. Для каждой точки фокусировки глаза, "
"переданной в параметре [param eye_foci], создается слой. Фокусная точна "
"должна находиться в NDC.\n"
"Результат будет кэширован, при запросе текстуры VRS с неизмененными "
"параметрами и настройками будет возвращен кэшированный RID."

msgid ""
"The minimum radius around the focal point where full quality is guaranteed if "
"VRS is used as a percentage of screen size."
msgstr ""
"Минимальный радиус вокруг фокусной точки, при котором гарантируется полное "
"качество изображения, если использовать VRS в процентах от размера экрана."

msgid "The render region that the VRS texture will be scaled to when generated."
msgstr ""
"Область рендеринга, к которой будет масштабирована текстура VRS при генерации."

msgid ""
"The strength used to calculate the VRS density map. The greater this value, "
"the more noticeable VRS is."
msgstr ""
"Сила, используемая для расчета карты плотности VRS. Чем больше это значение, "
"тем заметнее VRS."

msgid "Allows the creation of ZIP files."
msgstr "Позволяет создавать ZIP-файлы."

msgid ""
"This class implements a writer that allows storing the multiple blobs in a "
"ZIP archive. See also [ZIPReader] and [PCKPacker].\n"
"[codeblock]\n"
"# Create a ZIP archive with a single file at its root.\n"
"func write_zip_file():\n"
"\tvar writer = ZIPPacker.new()\n"
"\tvar err = writer.open(\"user://archive.zip\")\n"
"\tif err != OK:\n"
"\t\treturn err\n"
"\twriter.start_file(\"hello.txt\")\n"
"\twriter.write_file(\"Hello World\".to_utf8_buffer())\n"
"\twriter.close_file()\n"
"\n"
"\twriter.close()\n"
"\treturn OK\n"
"[/codeblock]"
msgstr ""
"Этот класс реализует модуль записи, который позволяет хранить несколько "
"больших двоичных объектов в ZIP-архиве. Смотрите также [ZIPReader] и "
"[PCKPacker].\n"
"[codeblock]\n"
"# Создайте ZIP-архив с одним файлом в корне.\n"
"func write_zip_file():\n"
"\tvar writer = ZIPPacker.new()\n"
"\tvar err = writer.open(\"user://archive.zip\")\n"
"\tif err != OK:\n"
"\t\treturn err\n"
"\twriter.start_file(\"hello.txt\")\n"
"\twriter.write_file(\"Hello World\".to_utf8_buffer())\n"
"\twriter.close_file()\n"
"\n"
"\twriter.close()\n"
"\treturn OK\n"
"[/codeblock]"

msgid "Closes the underlying resources used by this instance."
msgstr "Закрывает основные ресурсы, используемые этим экземпляром."

msgid ""
"Stops writing to a file within the archive.\n"
"It will fail if there is no open file."
msgstr ""
"Прекращает запись в файл внутри архива.\n"
"Это приведет к сбою, если нет открытого файла."

msgid ""
"Opens a zip file for writing at the given path using the specified write "
"mode.\n"
"This must be called before everything else."
msgstr ""
"Открывает zip-файл для записи по указанному пути, используя указанный режим "
"записи.\n"
"Должен вызываться прежде всего остального."

msgid ""
"Starts writing to a file within the archive. Only one file can be written at "
"the same time.\n"
"Must be called after [method open]."
msgstr ""
"Начинает запись в файл внутри архива. Одновременно может быть записан только "
"один файл.\n"
"Должен вызываться после [method open]."

msgid ""
"Write the given [param data] to the file.\n"
"Needs to be called after [method start_file]."
msgstr ""
"Записать полученный [param data] в файл.\n"
"Должен вызываться после [method start_file]."

msgid ""
"The compression level used when [method start_file] is called. Use [enum "
"ZIPPacker.CompressionLevel] as a reference."
msgstr ""
"Уровень сжатия, используемый при вызове [method start_file]. Используйте "
"[enum ZIPPacker.CompressionLevel] в качестве значений."

msgid "Create a new zip archive at the given path."
msgstr "Создать новый zip-архив по указанному пути."

msgid ""
"Append a new zip archive to the end of the already existing file at the given "
"path."
msgstr ""
"Добавить новый zip-архив в конец существующего файла по указанному пути."

msgid "Add new files to the existing zip archive at the given path."
msgstr "Добавить новые файлы в существующий zip-архив по указанному пути."

msgid ""
"Start a file with the default Deflate compression level ([code]6[/code]). "
"This is a good compromise between speed and file size."
msgstr ""
"Запустите файл с уровнем сжатия Deflate по умолчанию ([code]6[/code]). Это "
"хороший компромисс между скоростью и размером файла."

msgid ""
"Start a file with no compression. This is also known as the \"Store\" "
"compression mode and is the fastest method of packing files inside a ZIP "
"archive. Consider using this mode for files that are already compressed (such "
"as JPEG, PNG, MP3, or Ogg Vorbis files)."
msgstr ""
"Запустите файл без сжатия. Это также известно как режим сжатия \"Store\" и "
"является самым быстрым методом упаковки файлов в архив ZIP. Рассмотрите "
"возможность использования этого режима для уже сжатых файлов (например, "
"файлов JPEG, PNG, MP3 или Ogg Vorbis)."

msgid ""
"Start a file with the fastest Deflate compression level ([code]1[/code]). "
"This is fast to compress, but results in larger file sizes than [constant "
"COMPRESSION_DEFAULT]. Decompression speed is generally unaffected by the "
"chosen compression level."
msgstr ""
"Запустите файл с самым быстрым уровнем сжатия Deflate ([code]1[/code]). Это "
"обеспечивает быстрое сжатие, но приводит к увеличению размера файла по "
"сравнению с [constant COMPRESSION_DEFAULT]. Скорость распаковки обычно не "
"зависит от выбранного уровня сжатия."

msgid ""
"Start a file with the best Deflate compression level ([code]9[/code]). This "
"is slow to compress, but results in smaller file sizes than [constant "
"COMPRESSION_DEFAULT]. Decompression speed is generally unaffected by the "
"chosen compression level."
msgstr ""
"Создайте файл с оптимальным уровнем сжатия Deflate ([code]9[/code]). Этот "
"вариант сжатия медленнее, но размер файла меньше, чем у [constant "
"COMPRESSION_DEFAULT]. Скорость распаковки, как правило, не зависит от "
"выбранного уровня сжатия."

msgid "Allows reading the content of a ZIP file."
msgstr "Позволяет читать содержимое ZIP-файла."

msgid ""
"This class implements a reader that can extract the content of individual "
"files inside a ZIP archive. See also [ZIPPacker].\n"
"[codeblock]\n"
"# Read a single file from a ZIP archive.\n"
"func read_zip_file():\n"
"\tvar reader = ZIPReader.new()\n"
"\tvar err = reader.open(\"user://archive.zip\")\n"
"\tif err != OK:\n"
"\t\treturn PackedByteArray()\n"
"\tvar res = reader.read_file(\"hello.txt\")\n"
"\treader.close()\n"
"\treturn res\n"
"\n"
"# Extract all files from a ZIP archive, preserving the directories within.\n"
"# This acts like the \"Extract all\" functionality from most archive "
"managers.\n"
"func extract_all_from_zip():\n"
"\tvar reader = ZIPReader.new()\n"
"\treader.open(\"res://archive.zip\")\n"
"\n"
"\t# Destination directory for the extracted files (this folder must exist "
"before extraction).\n"
"\t# Not all ZIP archives put everything in a single root folder,\n"
"\t# which means several files/folders may be created in `root_dir` after "
"extraction.\n"
"\tvar root_dir = DirAccess.open(\"user://\")\n"
"\n"
"\tvar files = reader.get_files()\n"
"\tfor file_path in files:\n"
"\t\t# If the current entry is a directory.\n"
"\t\tif file_path.ends_with(\"/\"):\n"
"\t\t\troot_dir.make_dir_recursive(file_path)\n"
"\t\t\tcontinue\n"
"\n"
"\t\t# Write file contents, creating folders automatically when needed.\n"
"\t\t# Not all ZIP archives are strictly ordered, so we need to do this in "
"case\n"
"\t\t# the file entry comes before the folder entry.\n"
"\t\troot_dir.make_dir_recursive(root_dir.get_current_dir().path_join(file_path).get_base_dir())\n"
"\t\tvar file = "
"FileAccess.open(root_dir.get_current_dir().path_join(file_path), "
"FileAccess.WRITE)\n"
"\t\tvar buffer = reader.read_file(file_path)\n"
"\t\tfile.store_buffer(buffer)\n"
"[/codeblock]"
msgstr ""
"Этот класс реализует считываниеь, с помощью которого можно извлекать "
"содержимое отдельных файлов внутри архива ZIP. См. также [ZIPPacker].\n"
"[codeblock]\n"
"# Прочитать один файл из ZIP-архива.\n"
"func read_zip_file():\n"
"\tvar reader = ZIPReader.new()\n"
"\tvar err = reader.open(\"user://archive.zip\")\n"
"\tif err != OK:\n"
"\t\treturn PackedByteArray()\n"
"\tvar res = reader.read_file(\"hello.txt\")\n"
"\treader.close()\n"
"\treturn res\n"
"\n"
"# Извлеките все файлы из ZIP-архива, сохранив каталоги внутри.\n"
"# Это похоже на функцию «Извлечь все» в большинстве менеджеров архивов.\n"
"func extract_all_from_zip():\n"
"\tvar reader = ZIPReader.new()\n"
"\treader.open(\"res://archive.zip\")\n"
"\n"
"\t# Каталог назначения для извлеченных файлов (эта папка должна существовать "
"до извлечения).\n"
"\t# Не все ZIP-архивы помещают все в одну корневую папку,\n"
"\t# это означает, что после извлечения в `root_dir` может быть создано "
"несколько файлов/папок.\n"
"\tvar root_dir = DirAccess.open(\"user://\")\n"
"\n"
"\tvar files = reader.get_files()\n"
"\tfor file_path in files:\n"
"\t\t# If the current entry is a directory.\n"
"\t\tif file_path.ends_with(\"/\"):\n"
"\t\t\troot_dir.make_dir_recursive(file_path)\n"
"\t\t\tcontinue\n"
"\n"
"\t\t# Записывайте содержимое файлов, автоматически создавая папки при "
"необходимости.\n"
"\t\t# Не все ZIP-архивы строго упорядочены, поэтому нам нужно сделать это на "
"всякий случай.\n"
"\t\t# запись файла предшествует записи папки.\n"
"\t\troot_dir.make_dir_recursive(root_dir.get_current_dir().path_join(file_path).get_base_dir())\n"
"\t\tvar file = "
"FileAccess.open(root_dir.get_current_dir().path_join(file_path), "
"FileAccess.WRITE)\n"
"\t\tvar buffer = reader.read_file(file_path)\n"
"\t\tfile.store_buffer(buffer)\n"
"[/codeblock]"

msgid ""
"Returns [code]true[/code] if the file exists in the loaded zip archive.\n"
"Must be called after [method open]."
msgstr ""
"Возвращает [code]true[/code], если файл содержится в загруженном zip архиве.\n"
"Должен быть вызван после [method open]."

msgid ""
"Returns the compression level of the file in the loaded zip archive. Returns "
"[code]-1[/code] if the file doesn't exist or any other error occurs. Must be "
"called after [method open]."
msgstr ""
"Возвращает уровень сжатия файла в загруженном zip-архиве. Возвращает "
"[code]-1[/code], если файл не существует или произошла какая-либо другая "
"ошибка. Необходимо вызывать после [method open]."

msgid ""
"Returns the list of names of all files in the loaded archive.\n"
"Must be called after [method open]."
msgstr ""
"Возвращает список всех имён файлов в загруженном архиве.\n"
"Должен быть вызван после [method open]."

msgid ""
"Opens the zip archive at the given [param path] and reads its file index."
msgstr ""
"Открывает zip-архив по переданному [param path] и читает его индекс файла."

msgid ""
"Loads the whole content of a file in the loaded zip archive into memory and "
"returns it.\n"
"Must be called after [method open]."
msgstr ""
"Загружает все содержимое файла из загруженного zip-архива в память и "
"возвращает его.\n"
"Должен вызываться после [method open]."
